mirror of
https://github.com/emuplace/sudachi.emuplace.app.git
synced 2024-11-27 12:24:32 +01:00
Added v1.0.8, including Android
This commit is contained in:
parent
5cecf7a74b
commit
663c24b914
BIN
public/releases/app-mainline-release.apk
Normal file
BIN
public/releases/app-mainline-release.apk
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
33
src/App.module.css
Normal file
33
src/App.module.css
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
.root {
|
||||||
|
border-radius: var(--mantine-radius-md);
|
||||||
|
background-color: light-dark(var(--mantine-color-gray-0), var(--mantine-color-dark-6));
|
||||||
|
}
|
||||||
|
|
||||||
|
.item {
|
||||||
|
background-color: light-dark(var(--mantine-color-gray-0), var(--mantine-color-dark-6));
|
||||||
|
border: 1px solid transparent;
|
||||||
|
position: relative;
|
||||||
|
z-index: 0;
|
||||||
|
transition: transform 150ms ease;
|
||||||
|
|
||||||
|
&[data-active] {
|
||||||
|
transform: scale(1.03);
|
||||||
|
z-index: 1;
|
||||||
|
background-color: var(--mantine-color-body);
|
||||||
|
border-color: light-dark(var(--mantine-color-gray-2), var(--mantine-color-dark-4));
|
||||||
|
box-shadow: var(--mantine-shadow-md);
|
||||||
|
border-radius: var(--mantine-radius-md);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.chevron {
|
||||||
|
&[data-rotate] {
|
||||||
|
transform: rotate(-90deg);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.control:hover {
|
||||||
|
&[data-active] {
|
||||||
|
background-color: var(--mantine-color-body);
|
||||||
|
}
|
||||||
|
}
|
130
src/App.tsx
130
src/App.tsx
@ -12,49 +12,112 @@ import {
|
|||||||
} from '@tabler/icons-react';
|
} from '@tabler/icons-react';
|
||||||
import { useState } from "react";
|
import { useState } from "react";
|
||||||
import { theme } from "./theme";
|
import { theme } from "./theme";
|
||||||
|
import classes from './App.module.css';
|
||||||
|
|
||||||
export default function App() {
|
export default function App() {
|
||||||
const changes = [
|
const changes = [
|
||||||
{
|
{
|
||||||
text: 'Windows',
|
text: 'v1.0.8',
|
||||||
|
sha: '450b52f',
|
||||||
|
isLatest: true,
|
||||||
|
isUpcoming: false,
|
||||||
details: [
|
details: [
|
||||||
{
|
{
|
||||||
secondaryText: 'Fixed an issue in Super Bomberman R 2 that caused the game to not boot due to an error in the Friend service'
|
system: "Android",
|
||||||
|
items: [
|
||||||
|
{
|
||||||
|
primaryText: 'Improved memory accuracy and sizing',
|
||||||
|
secondaryText: null
|
||||||
|
}
|
||||||
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
secondaryText: 'Fixed an issue in Animal Well that caused the game to not boot due to the audio core revision number being too low'
|
system: "Windows",
|
||||||
},
|
items: [
|
||||||
|
{
|
||||||
|
primaryText: 'Improved memory accuracy and sizing',
|
||||||
|
secondaryText: null
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
text: 'v1.0.7',
|
||||||
|
sha: 'xxxxxxx',
|
||||||
|
isLatest: false,
|
||||||
|
isUpcoming: false,
|
||||||
|
details: [
|
||||||
{
|
{
|
||||||
secondaryText: 'Fixed an issue in Princess Peach: Showtime! that caused the game to run into a black screen',
|
system: 'Windows',
|
||||||
tertiaryText: 'Please be aware this fix is not complete and Princess Peach: Showtime! will still drop to 0fps occasionally'
|
items: [
|
||||||
},
|
{
|
||||||
{
|
primaryText: 'Fixed an issue in Super Bomberman R 2 that caused the game to not boot due to an error in the Friend service',
|
||||||
secondaryText: 'Fixed an issue in Paper Mario: The Thousand Year Door that caused the sewers to be black when using an AMD graphics card',
|
secondaryText: null
|
||||||
tertiaryText: 'Thank you to Ryujinx for the pointer towards LogicOp'
|
},
|
||||||
|
{
|
||||||
|
primaryText: 'Fixed an issue in Animal Well that caused the game to not boot due to the audio core revision number being too low',
|
||||||
|
secondaryText: null
|
||||||
|
},
|
||||||
|
{
|
||||||
|
primaryText: 'Fixed an issue in Princess Peach: Showtime! that caused the game to run into a black screen',
|
||||||
|
secondaryText: 'Please be aware this fix is not complete and Princess Peach: Showtime! will still drop to 0fps occasionally'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
primaryText: 'Fixed an issue in Paper Mario: The Thousand Year Door that caused the sewers to be black when using an AMD graphics card',
|
||||||
|
secondaryText: 'Thank you to Ryujinx for the pointer towards LogicOp'
|
||||||
|
}
|
||||||
|
]
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
|
||||||
const items = changes.map((item) => {
|
const items = changes.map((item) => {
|
||||||
const listItems = item.details.map((detail) => (
|
const listItems = item.details.map((detail, index) => {
|
||||||
<List.Item>
|
const detailItems = detail.items.map((item) => (
|
||||||
<Text>
|
<>
|
||||||
{detail.secondaryText}
|
<List.Item>
|
||||||
</Text>
|
<Text>{item.primaryText}</Text>
|
||||||
<Text c={'dimmed'} size="sm" hidden={detail.tertiaryText == '' || detail.tertiaryText == null}>
|
<Text c={'dimmed'} size="sm" hidden={item.secondaryText == '' || item.secondaryText == null}>
|
||||||
{detail.tertiaryText}
|
{item.secondaryText}
|
||||||
</Text>
|
</Text>
|
||||||
</List.Item>
|
</List.Item>
|
||||||
));
|
</>
|
||||||
|
));
|
||||||
|
|
||||||
|
return (
|
||||||
|
<>
|
||||||
|
<Title order={3}>
|
||||||
|
{detail.system}
|
||||||
|
</Title>
|
||||||
|
<List>
|
||||||
|
{detailItems}
|
||||||
|
</List>
|
||||||
|
<Space h={index === changes.length ? 0 : 'md'} />
|
||||||
|
</>
|
||||||
|
);
|
||||||
|
});
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Accordion.Item key={item.text} value={item.text}>
|
<Accordion.Item key={item.text} value={item.text}>
|
||||||
<Accordion.Control>{item.text}</Accordion.Control>
|
<Accordion.Control>
|
||||||
|
<Group justify='space-between' pr={'md'}>
|
||||||
|
<Group gap={'sm'}>
|
||||||
|
<Text>
|
||||||
|
{item.text}
|
||||||
|
</Text>
|
||||||
|
<Text c={'dimmed'}>
|
||||||
|
{`(${item.sha})`}
|
||||||
|
</Text>
|
||||||
|
</Group>
|
||||||
|
<Badge color={item.isLatest ? 'green' : item.isUpcoming ? 'violet' : 'red'}>
|
||||||
|
{item.isLatest ? 'Latest' : item.isUpcoming ? 'Upcoming' : 'Outdated'}
|
||||||
|
</Badge>
|
||||||
|
</Group>
|
||||||
|
</Accordion.Control>
|
||||||
<Accordion.Panel>
|
<Accordion.Panel>
|
||||||
<List>
|
{...listItems}
|
||||||
{listItems}
|
|
||||||
</List>
|
|
||||||
</Accordion.Panel>
|
</Accordion.Panel>
|
||||||
</Accordion.Item>
|
</Accordion.Item>
|
||||||
);
|
);
|
||||||
@ -80,7 +143,7 @@ export default function App() {
|
|||||||
</Text>
|
</Text>
|
||||||
<Flex align={'center'} justify={'center'}>
|
<Flex align={'center'} justify={'center'}>
|
||||||
<Group ta={'center'}>
|
<Group ta={'center'}>
|
||||||
<Button color="green" radius={'xl'} variant="filled" disabled>Android</Button>
|
<Button component="a" href="releases/app-mainline-release.apk" color="green" radius={'xl'} variant="filled">Android</Button>
|
||||||
<Menu opened={opened} onChange={setOpened}>
|
<Menu opened={opened} onChange={setOpened}>
|
||||||
<Menu.Target>
|
<Menu.Target>
|
||||||
<Button radius={'xl'} variant="filled" disabled>Apple</Button>
|
<Button radius={'xl'} variant="filled" disabled>Apple</Button>
|
||||||
@ -110,20 +173,15 @@ export default function App() {
|
|||||||
</Menu.Dropdown>
|
</Menu.Dropdown>
|
||||||
</Menu>
|
</Menu>
|
||||||
<Button color="orange" radius={'xl'} variant="filled" disabled>Linux</Button>
|
<Button color="orange" radius={'xl'} variant="filled" disabled>Linux</Button>
|
||||||
<Button color="blue" component="a" href="/releases/sudachi-windows-v1.0.7.7z" radius={'xl'} variant="filled">Windows</Button>
|
<Button color="blue" component="a" href="releases/sudachi-windows-v1.0.8.7z" radius={'xl'} variant="filled">Windows</Button>
|
||||||
<Button color="gray" component="a" href="/releases/latest.zip" radius={'xl'} variant="filled">Source Code</Button>
|
<Button color="gray" component="a" href="releases/latest.zip" radius={'xl'} variant="filled">Source Code</Button>
|
||||||
</Group>
|
</Group>
|
||||||
</Flex>
|
</Flex>
|
||||||
<Space h={'md'} />
|
<Space h={'md'} />
|
||||||
<Group gap={'md'} justify="space-between">
|
<Title order={2}>
|
||||||
<Title order={2}>
|
Changes
|
||||||
Changes
|
</Title>
|
||||||
</Title>
|
<Accordion classNames={classes} radius={'md'} variant="contained">
|
||||||
<Badge>
|
|
||||||
v1.0.7
|
|
||||||
</Badge>
|
|
||||||
</Group>
|
|
||||||
<Accordion radius={'md'} variant="contained">
|
|
||||||
{items}
|
{items}
|
||||||
</Accordion>
|
</Accordion>
|
||||||
<Text c={'red'}>
|
<Text c={'red'}>
|
||||||
|
Loading…
Reference in New Issue
Block a user