create-pixi-vn 2.0.9 → 2.0.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (144) hide show
  1. package/package.json +1 -1
  2. package/template-react-vite-muijoy/.vscode/launch.json +9 -2
  3. package/template-react-vite-muijoy/.vscode/tasks.json +20 -4
  4. package/template-react-vite-muijoy/package-lock.json +100 -81
  5. package/template-react-vite-muijoy/package.json +3 -2
  6. package/template-react-vite-muijoy/src/components/loading.tsx +5 -44
  7. package/template-react-vite-muijoy/src/components/menus/settings/about.tsx +1 -1
  8. package/template-react-vite-muijoy/src/components/quick-tools.tsx +1 -1
  9. package/template-react-vite-muijoy/src/components/screens/narration/narration-cards.tsx +2 -3
  10. package/template-react-vite-muijoy/src/lib/query/narration-query.ts +5 -1
  11. package/template-react-vite-muijoy/src/lib/utils/assets-utility.ts +1 -1
  12. package/template-react-vite-muijoy-ink/.vscode/extensions.json +1 -2
  13. package/template-react-vite-muijoy-ink/.vscode/launch.json +9 -2
  14. package/template-react-vite-muijoy-ink/.vscode/settings.json +1 -6
  15. package/template-react-vite-muijoy-ink/.vscode/tasks.json +20 -4
  16. package/template-react-vite-muijoy-ink/_gitignore +0 -1
  17. package/template-react-vite-muijoy-ink/package-lock.json +104 -311
  18. package/template-react-vite-muijoy-ink/package.json +4 -5
  19. package/template-react-vite-muijoy-ink/src/App.tsx +25 -25
  20. package/template-react-vite-muijoy-ink/src/assets/index.ts +4 -2
  21. package/template-react-vite-muijoy-ink/src/assets/ink-manifest.gen.json +1 -4
  22. package/template-react-vite-muijoy-ink/src/components/loading.tsx +5 -44
  23. package/template-react-vite-muijoy-ink/src/components/menus/settings/about.tsx +1 -1
  24. package/template-react-vite-muijoy-ink/src/components/quick-tools.tsx +1 -1
  25. package/template-react-vite-muijoy-ink/src/components/screens/narration/narration-cards.tsx +2 -3
  26. package/template-react-vite-muijoy-ink/src/content/labels/second.label.ts +1207 -0
  27. package/template-react-vite-muijoy-ink/src/content/labels/start.label.ts +566 -0
  28. package/template-react-vite-muijoy-ink/src/lib/i18n.ts +1 -22
  29. package/template-react-vite-muijoy-ink/src/lib/query/narration-query.ts +5 -1
  30. package/template-react-vite-muijoy-ink/src/lib/utils/assets-utility.ts +1 -1
  31. package/template-react-vite-muijoy-ink/src/pixi-vn-keys.gen.d.ts +0 -2
  32. package/template-react-vite-muijoy-ink/src/routes/__root.tsx +0 -4
  33. package/template-react-vite-muijoy-ink/vite.config.ts +0 -6
  34. package/template-react-vite-muijoy-ink-tauri/.assetpack.ts +0 -9
  35. package/template-react-vite-muijoy-ink-tauri/.vscode/extensions.json +1 -5
  36. package/template-react-vite-muijoy-ink-tauri/.vscode/launch.json +6 -10
  37. package/template-react-vite-muijoy-ink-tauri/.vscode/settings.json +1 -6
  38. package/template-react-vite-muijoy-ink-tauri/.vscode/tasks.json +17 -48
  39. package/template-react-vite-muijoy-ink-tauri/README.md +3 -3
  40. package/template-react-vite-muijoy-ink-tauri/_gitignore +0 -11
  41. package/template-react-vite-muijoy-ink-tauri/package-lock.json +100 -557
  42. package/template-react-vite-muijoy-ink-tauri/package.json +5 -15
  43. package/template-react-vite-muijoy-ink-tauri/src/App.tsx +25 -25
  44. package/template-react-vite-muijoy-ink-tauri/src/assets/index.ts +4 -2
  45. package/template-react-vite-muijoy-ink-tauri/src/assets/ink-manifest.gen.json +1 -4
  46. package/template-react-vite-muijoy-ink-tauri/src/components/loading.tsx +5 -44
  47. package/template-react-vite-muijoy-ink-tauri/src/components/menus/main-menu.tsx +1 -16
  48. package/template-react-vite-muijoy-ink-tauri/src/components/menus/settings/about.tsx +1 -1
  49. package/template-react-vite-muijoy-ink-tauri/src/components/menus/settings/quick-menus.tsx +1 -17
  50. package/template-react-vite-muijoy-ink-tauri/src/components/menus/settings/system-controls.tsx +1 -11
  51. package/template-react-vite-muijoy-ink-tauri/src/components/quick-tools.tsx +1 -1
  52. package/template-react-vite-muijoy-ink-tauri/src/components/screens/narration/narration-cards.tsx +2 -3
  53. package/template-react-vite-muijoy-ink-tauri/src/content/labels/second.label.ts +1207 -0
  54. package/template-react-vite-muijoy-ink-tauri/src/content/labels/start.label.ts +566 -0
  55. package/template-react-vite-muijoy-ink-tauri/src/lib/i18n.ts +1 -22
  56. package/template-react-vite-muijoy-ink-tauri/src/lib/query/narration-query.ts +5 -1
  57. package/template-react-vite-muijoy-ink-tauri/src/lib/query/settings-query.ts +1 -7
  58. package/template-react-vite-muijoy-ink-tauri/src/lib/utils/assets-utility.ts +1 -1
  59. package/template-react-vite-muijoy-ink-tauri/src/pixi-vn-keys.gen.d.ts +0 -2
  60. package/template-react-vite-muijoy-ink-tauri/src/routes/__root.tsx +0 -4
  61. package/template-react-vite-muijoy-ink-tauri/vite.config.ts +0 -30
  62. package/template-react-vite-muijoy-tauri/.assetpack.ts +0 -9
  63. package/template-react-vite-muijoy-tauri/.vscode/extensions.json +1 -4
  64. package/template-react-vite-muijoy-tauri/.vscode/launch.json +6 -10
  65. package/template-react-vite-muijoy-tauri/.vscode/tasks.json +17 -48
  66. package/template-react-vite-muijoy-tauri/README.md +3 -3
  67. package/template-react-vite-muijoy-tauri/_gitignore +0 -10
  68. package/template-react-vite-muijoy-tauri/package-lock.json +100 -331
  69. package/template-react-vite-muijoy-tauri/package.json +4 -12
  70. package/template-react-vite-muijoy-tauri/src/components/loading.tsx +5 -44
  71. package/template-react-vite-muijoy-tauri/src/components/menus/main-menu.tsx +1 -16
  72. package/template-react-vite-muijoy-tauri/src/components/menus/settings/about.tsx +1 -1
  73. package/template-react-vite-muijoy-tauri/src/components/menus/settings/quick-menus.tsx +1 -17
  74. package/template-react-vite-muijoy-tauri/src/components/menus/settings/system-controls.tsx +1 -11
  75. package/template-react-vite-muijoy-tauri/src/components/quick-tools.tsx +1 -1
  76. package/template-react-vite-muijoy-tauri/src/components/screens/narration/narration-cards.tsx +2 -3
  77. package/template-react-vite-muijoy-tauri/src/lib/query/narration-query.ts +5 -1
  78. package/template-react-vite-muijoy-tauri/src/lib/query/settings-query.ts +1 -7
  79. package/template-react-vite-muijoy-tauri/src/lib/utils/assets-utility.ts +1 -1
  80. package/template-react-vite-muijoy-tauri/vite.config.ts +0 -24
  81. package/template-react-vite-muijoy-ink/ink/second_part.ink +0 -571
  82. package/template-react-vite-muijoy-ink/ink/start.ink +0 -214
  83. package/template-react-vite-muijoy-ink/src/content/ink/hashtag-commands.ts +0 -38
  84. package/template-react-vite-muijoy-ink/src/content/ink/text-replaces.ts +0 -19
  85. package/template-react-vite-muijoy-ink/src/lib/hooks/ink-hooks.tsx +0 -12
  86. package/template-react-vite-muijoy-ink-tauri/_github/workflows/desktop.yml +0 -188
  87. package/template-react-vite-muijoy-ink-tauri/_github/workflows/mobile.yml +0 -270
  88. package/template-react-vite-muijoy-ink-tauri/ink/second_part.ink +0 -571
  89. package/template-react-vite-muijoy-ink-tauri/ink/start.ink +0 -214
  90. package/template-react-vite-muijoy-ink-tauri/src/content/ink/hashtag-commands.ts +0 -55
  91. package/template-react-vite-muijoy-ink-tauri/src/content/ink/text-replaces.ts +0 -19
  92. package/template-react-vite-muijoy-ink-tauri/src/lib/hooks/ink-hooks.tsx +0 -12
  93. package/template-react-vite-muijoy-ink-tauri/src/lib/hooks/quit-hooks.ts +0 -24
  94. package/template-react-vite-muijoy-ink-tauri/src/lib/steam.ts +0 -143
  95. package/template-react-vite-muijoy-ink-tauri/src-tauri/Cargo.toml +0 -50
  96. package/template-react-vite-muijoy-ink-tauri/src-tauri/build.rs +0 -46
  97. package/template-react-vite-muijoy-ink-tauri/src-tauri/capabilities/default.json +0 -21
  98. package/template-react-vite-muijoy-ink-tauri/src-tauri/icons/128x128.png +0 -0
  99. package/template-react-vite-muijoy-ink-tauri/src-tauri/icons/128x128@2x.png +0 -0
  100. package/template-react-vite-muijoy-ink-tauri/src-tauri/icons/32x32.png +0 -0
  101. package/template-react-vite-muijoy-ink-tauri/src-tauri/icons/Square107x107Logo.png +0 -0
  102. package/template-react-vite-muijoy-ink-tauri/src-tauri/icons/Square142x142Logo.png +0 -0
  103. package/template-react-vite-muijoy-ink-tauri/src-tauri/icons/Square150x150Logo.png +0 -0
  104. package/template-react-vite-muijoy-ink-tauri/src-tauri/icons/Square284x284Logo.png +0 -0
  105. package/template-react-vite-muijoy-ink-tauri/src-tauri/icons/Square30x30Logo.png +0 -0
  106. package/template-react-vite-muijoy-ink-tauri/src-tauri/icons/Square310x310Logo.png +0 -0
  107. package/template-react-vite-muijoy-ink-tauri/src-tauri/icons/Square44x44Logo.png +0 -0
  108. package/template-react-vite-muijoy-ink-tauri/src-tauri/icons/Square71x71Logo.png +0 -0
  109. package/template-react-vite-muijoy-ink-tauri/src-tauri/icons/Square89x89Logo.png +0 -0
  110. package/template-react-vite-muijoy-ink-tauri/src-tauri/icons/StoreLogo.png +0 -0
  111. package/template-react-vite-muijoy-ink-tauri/src-tauri/icons/icon.icns +0 -0
  112. package/template-react-vite-muijoy-ink-tauri/src-tauri/icons/icon.ico +0 -0
  113. package/template-react-vite-muijoy-ink-tauri/src-tauri/icons/icon.png +0 -0
  114. package/template-react-vite-muijoy-ink-tauri/src-tauri/src/lib.rs +0 -64
  115. package/template-react-vite-muijoy-ink-tauri/src-tauri/src/main.rs +0 -6
  116. package/template-react-vite-muijoy-ink-tauri/src-tauri/src/steam.rs +0 -238
  117. package/template-react-vite-muijoy-ink-tauri/src-tauri/tauri.conf.json +0 -50
  118. package/template-react-vite-muijoy-tauri/_github/workflows/desktop.yml +0 -188
  119. package/template-react-vite-muijoy-tauri/_github/workflows/mobile.yml +0 -270
  120. package/template-react-vite-muijoy-tauri/src/lib/hooks/quit-hooks.ts +0 -24
  121. package/template-react-vite-muijoy-tauri/src/lib/steam.ts +0 -143
  122. package/template-react-vite-muijoy-tauri/src-tauri/Cargo.toml +0 -50
  123. package/template-react-vite-muijoy-tauri/src-tauri/build.rs +0 -46
  124. package/template-react-vite-muijoy-tauri/src-tauri/capabilities/default.json +0 -21
  125. package/template-react-vite-muijoy-tauri/src-tauri/icons/128x128.png +0 -0
  126. package/template-react-vite-muijoy-tauri/src-tauri/icons/128x128@2x.png +0 -0
  127. package/template-react-vite-muijoy-tauri/src-tauri/icons/32x32.png +0 -0
  128. package/template-react-vite-muijoy-tauri/src-tauri/icons/Square107x107Logo.png +0 -0
  129. package/template-react-vite-muijoy-tauri/src-tauri/icons/Square142x142Logo.png +0 -0
  130. package/template-react-vite-muijoy-tauri/src-tauri/icons/Square150x150Logo.png +0 -0
  131. package/template-react-vite-muijoy-tauri/src-tauri/icons/Square284x284Logo.png +0 -0
  132. package/template-react-vite-muijoy-tauri/src-tauri/icons/Square30x30Logo.png +0 -0
  133. package/template-react-vite-muijoy-tauri/src-tauri/icons/Square310x310Logo.png +0 -0
  134. package/template-react-vite-muijoy-tauri/src-tauri/icons/Square44x44Logo.png +0 -0
  135. package/template-react-vite-muijoy-tauri/src-tauri/icons/Square71x71Logo.png +0 -0
  136. package/template-react-vite-muijoy-tauri/src-tauri/icons/Square89x89Logo.png +0 -0
  137. package/template-react-vite-muijoy-tauri/src-tauri/icons/StoreLogo.png +0 -0
  138. package/template-react-vite-muijoy-tauri/src-tauri/icons/icon.icns +0 -0
  139. package/template-react-vite-muijoy-tauri/src-tauri/icons/icon.ico +0 -0
  140. package/template-react-vite-muijoy-tauri/src-tauri/icons/icon.png +0 -0
  141. package/template-react-vite-muijoy-tauri/src-tauri/src/lib.rs +0 -64
  142. package/template-react-vite-muijoy-tauri/src-tauri/src/main.rs +0 -6
  143. package/template-react-vite-muijoy-tauri/src-tauri/src/steam.rs +0 -238
  144. package/template-react-vite-muijoy-tauri/src-tauri/tauri.conf.json +0 -50
@@ -11,12 +11,7 @@
11
11
  "build": "tsc -b && vite build",
12
12
  "build:fast": "vite build",
13
13
  "prebuild": "npm run icon",
14
- "icon": "pwa-assets-generator && tauri icon public/icon.png",
15
- "tauri": "tauri",
16
- "tauri:dev": "tauri dev",
17
- "tauri:build": "tauri build",
18
- "tauri:android:dev": "tauri android dev",
19
- "tauri:ios:dev": "tauri ios dev",
14
+ "icon": "pwa-assets-generator",
20
15
  "lint": "biome lint",
21
16
  "check": "biome check",
22
17
  "format": "biome format --write",
@@ -25,9 +20,9 @@
25
20
  "dependencies": {
26
21
  "@base-ui/react": "^1.5.0",
27
22
  "@drincs/pixi-vn": "^1.8.13",
28
- "@drincs/pixi-vn-ink": "^1.0.5",
29
23
  "@drincs/pixi-vn-spine": "^0.2.1",
30
24
  "@tailwindcss/vite": "^4.3.0",
25
+ "@tanstack/hotkeys": "^0.8.0",
31
26
  "@tanstack/react-devtools": "^0.10.5",
32
27
  "@tanstack/react-hotkeys": "^0.10.0",
33
28
  "@tanstack/react-hotkeys-devtools": "^0.7.0",
@@ -40,8 +35,6 @@
40
35
  "@tanstack/react-store": "latest",
41
36
  "@tanstack/router-plugin": "latest",
42
37
  "@tanstack/store": "latest",
43
- "@tauri-apps/api": "^2",
44
- "@tauri-apps/plugin-opener": "^2",
45
38
  "@unpic/react": "^1.0.2",
46
39
  "class-variance-authority": "^0.7.1",
47
40
  "clsx": "^2.1.1",
@@ -68,16 +61,13 @@
68
61
  "tailwind-merge": "^3.6.0",
69
62
  "tailwindcss": "^4.3.0",
70
63
  "tw-animate-css": "^1.4.0",
71
- "vaul": "^1.1.2",
72
- "zod": "^4.4.3"
64
+ "vaul": "^1.1.2"
73
65
  },
74
66
  "devDependencies": {
75
67
  "@assetpack/core": "^1.7.0",
76
68
  "@biomejs/biome": "latest",
77
69
  "@tailwindcss/typography": "^0.5.19",
78
70
  "@tanstack/devtools-vite": "latest",
79
- "@tauri-apps/cli": "^2",
80
- "@tauri-apps/plugin-process": "^2.3.1",
81
71
  "@types/node": "^25.9.1",
82
72
  "@types/react": "^19.2.15",
83
73
  "@types/react-dom": "^19.2.3",
@@ -85,8 +75,8 @@
85
75
  "@vitejs/plugin-react": "^6.0.2",
86
76
  "globals": "^17.6.0",
87
77
  "typescript": "~6.0.3",
88
- "vite": "^8.0.14",
89
- "vite-plugin-checker": "^0.14.1",
78
+ "vite": "^8.0.16",
79
+ "vite-plugin-checker": "0.14.1",
90
80
  "vite-plugin-pwa": "^1.3.0"
91
81
  },
92
82
  "keywords": [
@@ -1,25 +1,25 @@
1
- import { routeTree } from "@/routeTree.gen";
2
- import { QueryClient, QueryClientProvider } from "@tanstack/react-query";
3
- import { createRouter, RouterProvider } from "@tanstack/react-router";
4
-
5
- const queryClient = new QueryClient();
6
- const router = createRouter({
7
- routeTree,
8
- defaultPreload: "intent",
9
- scrollRestoration: true,
10
- context: { queryClient },
11
- });
12
-
13
- declare module "@tanstack/react-router" {
14
- interface Register {
15
- router: typeof router;
16
- }
17
- }
18
-
19
- export default function App() {
20
- return (
21
- <QueryClientProvider client={queryClient}>
22
- <RouterProvider router={router} />
23
- </QueryClientProvider>
24
- );
25
- }
1
+ import { routeTree } from "@/routeTree.gen";
2
+ import { QueryClient, QueryClientProvider } from "@tanstack/react-query";
3
+ import { createRouter, RouterProvider } from "@tanstack/react-router";
4
+
5
+ const queryClient = new QueryClient();
6
+ const router = createRouter({
7
+ routeTree,
8
+ defaultPreload: "intent",
9
+ scrollRestoration: true,
10
+ context: { queryClient },
11
+ });
12
+
13
+ declare module "@tanstack/react-router" {
14
+ interface Register {
15
+ router: typeof router;
16
+ }
17
+ }
18
+
19
+ export default function App() {
20
+ return (
21
+ <QueryClientProvider client={queryClient}>
22
+ <RouterProvider router={router} />
23
+ </QueryClientProvider>
24
+ );
25
+ }
@@ -1,5 +1,7 @@
1
1
  import generatedManifestJson from "@/assets/manifest.gen.json";
2
2
  import { AUDIO_BUNDLE_NAME } from "@/constants";
3
+ import { secondPart } from "@/content/labels/second.label";
4
+ import { startLabel } from "@/content/labels/start.label";
3
5
  import type { FileRouteTypes } from "@/routeTree.gen";
4
6
  import type { AssetsManifest } from "@drincs/pixi-vn";
5
7
 
@@ -35,7 +37,7 @@ export const manifest: AssetsManifest = {
35
37
  },
36
38
  // labels
37
39
  {
38
- name: "start",
40
+ name: startLabel.id,
39
41
  assets: [
40
42
  {
41
43
  alias: "bg01-hallway",
@@ -44,7 +46,7 @@ export const manifest: AssetsManifest = {
44
46
  ],
45
47
  },
46
48
  {
47
- name: "second_part",
49
+ name: secondPart.id,
48
50
  assets: [
49
51
  {
50
52
  alias: "bg02-dorm",
@@ -1,4 +1 @@
1
- [
2
- "/ink-json/second_part.gen.json",
3
- "/ink-json/start.gen.json"
4
- ]
1
+ []
@@ -1,5 +1,4 @@
1
1
  import { Spinner } from "@/components/ui/spinner";
2
- import { motion } from "motion/react";
3
2
 
4
3
  export function PendingComponent() {
5
4
  return (
@@ -12,49 +11,11 @@ export function PendingComponent() {
12
11
  }
13
12
 
14
13
  export function AnimatedDots() {
15
- const dots = [
16
- { id: "dot-1", char: "." },
17
- { id: "dot-2", char: "." },
18
- { id: "dot-3", char: "." },
19
- ]; // I caratteri da animare
20
-
21
14
  return (
22
- <motion.span
23
- style={{ display: "flex", pointerEvents: "none", userSelect: "none" }}
24
- transition={{
25
- staggerChildren: 0.2,
26
- }}
27
- initial="closed"
28
- animate="open"
29
- >
30
- {dots.map((dot) => (
31
- <motion.span
32
- key={dot.id}
33
- initial={{ y: 0 }}
34
- variants={{
35
- open: {
36
- y: 5,
37
- transition: {
38
- repeat: Infinity,
39
- duration: 0.5,
40
- ease: "easeInOut",
41
- repeatType: "reverse",
42
- },
43
- },
44
- closed: {
45
- y: 0,
46
- transition: {
47
- repeat: Infinity,
48
- duration: 0.5,
49
- ease: "easeInOut",
50
- repeatType: "reverse",
51
- },
52
- },
53
- }}
54
- >
55
- {dot.char}
56
- </motion.span>
57
- ))}
58
- </motion.span>
15
+ <span className="flex pointer-events-none select-none">
16
+ <span className="animate-bounce [animation-delay:0s]">.</span>
17
+ <span className="animate-bounce [animation-delay:0.2s]">.</span>
18
+ <span className="animate-bounce [animation-delay:0.4s]">.</span>
19
+ </span>
59
20
  );
60
21
  }
@@ -10,7 +10,6 @@ import {
10
10
  } from "@/constants";
11
11
  import { useSetSearchParamState } from "@/lib/hooks/navigation-hooks";
12
12
  import { useGameProps } from "@/lib/hooks/props-hooks";
13
- import { useQuit } from "@/lib/hooks/quit-hooks";
14
13
  import { useQueryLastSave } from "@/lib/query/save-query";
15
14
  import { InterfaceSettings } from "@/lib/stores/interface-settings-store";
16
15
  import { cn } from "@/lib/utils";
@@ -18,7 +17,7 @@ import { loadSave } from "@/lib/utils/save-utility";
18
17
  import { canvas, Game, ImageSprite } from "@drincs/pixi-vn";
19
18
  import { useHotkeys } from "@tanstack/react-hotkeys";
20
19
  import { useQueryClient } from "@tanstack/react-query";
21
- import { AlertCircle, CirclePlay, LogOut, Play, Save, Settings } from "lucide-react";
20
+ import { AlertCircle, CirclePlay, Play, Save, Settings } from "lucide-react";
22
21
  import { useCallback, useEffect, useRef, useState } from "react";
23
22
  import { useTranslation } from "react-i18next";
24
23
  import { toast } from "sonner";
@@ -34,7 +33,6 @@ export function MainMenu() {
34
33
  const setSettingsTab = useSetSearchParamState<string>("settings_tab");
35
34
  const [loading, setLoading] = useState(false);
36
35
  const menuRef = useRef<HTMLDivElement>(null);
37
- const { quit, canQuit } = useQuit();
38
36
 
39
37
  /** Returns all enabled menuitem buttons inside the menu container. */
40
38
  function getMenuItems(): HTMLButtonElement[] {
@@ -188,19 +186,6 @@ export function MainMenu() {
188
186
  {t("settings")}
189
187
  </Button>
190
188
 
191
- {canQuit && (
192
- <Button
193
- role="menuitem"
194
- onClick={quit}
195
- disabled={loading}
196
- variant="outline"
197
- className={menuButtonClass}
198
- >
199
- <LogOut className="size-4" />
200
- {t("quit")}
201
- </Button>
202
- )}
203
-
204
189
  {loading ? (
205
190
  <div
206
191
  className="flex items-center justify-end pt-1 text-muted-foreground"
@@ -19,7 +19,7 @@ export function About() {
19
19
  <span className="font-medium text-muted-foreground">
20
20
  {t("powered_by")}{" "}
21
21
  <a
22
- href="https://pixi-vn.web.app"
22
+ href="https://pixi-vn.com"
23
23
  target="_blank"
24
24
  rel="noopener noreferrer"
25
25
  className="underline hover:text-foreground"
@@ -3,10 +3,9 @@ import { Button } from "@/components/ui/button";
3
3
  import { Kbd, KbdGroup } from "@/components/ui/kbd";
4
4
  import { Separator } from "@/components/ui/separator";
5
5
  import { useSetSearchParamState } from "@/lib/hooks/navigation-hooks";
6
- import { useQuit } from "@/lib/hooks/quit-hooks";
7
6
  import { Game } from "@drincs/pixi-vn";
8
7
  import { useLocation, useNavigate } from "@tanstack/react-router";
9
- import { Gamepad2Icon, HistoryIcon, LogOutIcon, PowerIcon, SaveIcon } from "lucide-react";
8
+ import { Gamepad2Icon, HistoryIcon, LogOutIcon, SaveIcon } from "lucide-react";
10
9
  import { useTranslation } from "react-i18next";
11
10
 
12
11
  export function QuickMenus() {
@@ -22,7 +21,6 @@ export function QuickMenus() {
22
21
  </div>
23
22
  {isInGame && <Separator />}
24
23
  {isInGame && <ReturnMainMenuButton />}
25
- <QuitButton />
26
24
  </div>
27
25
  );
28
26
  }
@@ -103,20 +101,6 @@ export function OpenHistorySettingButton() {
103
101
  );
104
102
  }
105
103
 
106
- export function QuitButton() {
107
- const { t } = useTranslation(["ui"]);
108
- const { quit, canQuit } = useQuit();
109
-
110
- if (!canQuit) return null;
111
-
112
- return (
113
- <Button variant="destructive" onClick={quit}>
114
- <PowerIcon />
115
- {t("quit")}
116
- </Button>
117
- );
118
- }
119
-
120
104
  export function SaveLoadMenuButton() {
121
105
  const { t } = useTranslation(["ui"]);
122
106
  const setSettingsOpen = useSetSearchParamState<boolean>("settings");
@@ -20,8 +20,6 @@ import {
20
20
  import { TextDisplaySettings } from "@/lib/stores/text-display-settings-store";
21
21
  import { useQueryClient } from "@tanstack/react-query";
22
22
  import { useSelector } from "@tanstack/react-store";
23
- import type * as app from "@tauri-apps/api";
24
- import { getCurrentWindow } from "@tauri-apps/api/window";
25
23
  import {
26
24
  DownloadIcon,
27
25
  FullscreenIcon,
@@ -33,12 +31,6 @@ import {
33
31
  import { useState } from "react";
34
32
  import { useTranslation } from "react-i18next";
35
33
 
36
- declare global {
37
- interface Window {
38
- __TAURI__: typeof app;
39
- }
40
- }
41
-
42
34
  export function SystemControls() {
43
35
  return (
44
36
  <div className="flex flex-col gap-4">
@@ -162,9 +154,7 @@ export function FullScreenSettings() {
162
154
  onClick={() => {
163
155
  setLoading(true);
164
156
  let promise: Promise<void>;
165
- if (window.__TAURI__) {
166
- promise = getCurrentWindow().setFullscreen(!isFullScreenMode);
167
- } else if (isFullScreenMode) {
157
+ if (isFullScreenMode) {
168
158
  promise = document.exitFullscreen();
169
159
  } else {
170
160
  promise = document.documentElement.requestFullscreen();
@@ -27,7 +27,7 @@ export function QuickTools() {
27
27
  const autoEnabled = useSelector(AutoSettings.store, (state) => state.enabled);
28
28
  const queryClient = useQueryClient();
29
29
  const { data: lastSave = null } = useQueryLastSave();
30
- const { data: canGoBack = null } = useQueryCanGoBack();
30
+ const { data: canGoBack = false } = useQueryCanGoBack();
31
31
  const nextStepLoading = useSelector(GameStatus.store, (state) => state.loading);
32
32
  const { goBack } = useNarrationFunctions();
33
33
  const { openAlertDialog } = useAlertDialog();
@@ -1,6 +1,5 @@
1
1
  import { AnimatedDots } from "@/components/loading";
2
2
  import { QuickTools } from "@/components/quick-tools";
3
- import { AspectRatio } from "@/components/ui/aspect-ratio";
4
3
  import { Card, CardContent } from "@/components/ui/card";
5
4
  import { Image } from "@/components/ui/image";
6
5
  import { ResizableHandle, ResizablePanel, ResizablePanelGroup } from "@/components/ui/resizable";
@@ -127,8 +126,8 @@ export function Text({ paragraphRef }: { paragraphRef: RefObject<HTMLDivElement
127
126
 
128
127
  export function CharacterIcon({ alt, icon }: { icon: string; alt: string }) {
129
128
  return (
130
- <AspectRatio ratio={16 / 9}>
129
+ <div className="h-full w-full">
131
130
  <Image src={icon} layout="fullWidth" alt={alt} className="h-full w-full object-cover" />
132
- </AspectRatio>
131
+ </div>
133
132
  );
134
133
  }