diff --git a/public/releases/app-mainline-release.apk b/public/releases/app-mainline-release.apk
new file mode 100644
index 0000000..e51d6e3
Binary files /dev/null and b/public/releases/app-mainline-release.apk differ
diff --git a/public/releases/latest.zip b/public/releases/latest.zip
index 1b9979a..03b07ed 100644
Binary files a/public/releases/latest.zip and b/public/releases/latest.zip differ
diff --git a/public/releases/sudachi-windows-v1.0.7.7z b/public/releases/sudachi-windows-v1.0.8.7z
similarity index 79%
rename from public/releases/sudachi-windows-v1.0.7.7z
rename to public/releases/sudachi-windows-v1.0.8.7z
index eae8101..4c0bb26 100644
Binary files a/public/releases/sudachi-windows-v1.0.7.7z and b/public/releases/sudachi-windows-v1.0.8.7z differ
diff --git a/src/App.module.css b/src/App.module.css
new file mode 100644
index 0000000..0bc45e7
--- /dev/null
+++ b/src/App.module.css
@@ -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);
+ }
+}
\ No newline at end of file
diff --git a/src/App.tsx b/src/App.tsx
index f0cd253..e6617a7 100644
--- a/src/App.tsx
+++ b/src/App.tsx
@@ -12,49 +12,112 @@ import {
} from '@tabler/icons-react';
import { useState } from "react";
import { theme } from "./theme";
+import classes from './App.module.css';
export default function App() {
const changes = [
{
- text: 'Windows',
+ text: 'v1.0.8',
+ sha: '450b52f',
+ isLatest: true,
+ isUpcoming: false,
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',
- tertiaryText: 'Please be aware this fix is not complete and Princess Peach: Showtime! will still drop to 0fps occasionally'
- },
- {
- secondaryText: 'Fixed an issue in Paper Mario: The Thousand Year Door that caused the sewers to be black when using an AMD graphics card',
- tertiaryText: 'Thank you to Ryujinx for the pointer towards LogicOp'
+ system: 'Windows',
+ 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: null
+ },
+ {
+ 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 listItems = item.details.map((detail) => (
-