create-pixi-vn 2.0.14 → 2.1.0

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 (1266) hide show
  1. package/dist/index.mjs +1 -1
  2. package/package.json +1 -1
  3. package/template-nqtr-react-vite-muijoy/.assetpack.ts +18 -0
  4. package/template-nqtr-react-vite-muijoy/.vscode/extensions.json +8 -9
  5. package/template-nqtr-react-vite-muijoy/.vscode/launch.json +29 -15
  6. package/template-nqtr-react-vite-muijoy/.vscode/settings.json +58 -63
  7. package/template-nqtr-react-vite-muijoy/.vscode/tasks.json +106 -0
  8. package/template-nqtr-react-vite-muijoy/README.md +2 -113
  9. package/template-nqtr-react-vite-muijoy/_gitignore +2 -1
  10. package/template-nqtr-react-vite-muijoy/biome.json +70 -0
  11. package/template-nqtr-react-vite-muijoy/components.json +25 -0
  12. package/template-nqtr-react-vite-muijoy/index.html +3 -2
  13. package/template-nqtr-react-vite-muijoy/package-lock.json +18181 -0
  14. package/template-nqtr-react-vite-muijoy/package.json +60 -43
  15. package/template-nqtr-react-vite-muijoy/public/apple-touch-icon-180x180.png +0 -0
  16. package/template-nqtr-react-vite-muijoy/public/favicon.ico +0 -0
  17. package/template-nqtr-react-vite-muijoy/public/icon.png +0 -0
  18. package/template-nqtr-react-vite-muijoy/public/maskable-icon-512x512.png +0 -0
  19. package/template-nqtr-react-vite-muijoy/public/pwa-192x192.png +0 -0
  20. package/template-nqtr-react-vite-muijoy/public/pwa-512x512.png +0 -0
  21. package/template-nqtr-react-vite-muijoy/public/pwa-64x64.png +0 -0
  22. package/template-nqtr-react-vite-muijoy/pwa-assets.config.js +6 -0
  23. package/template-nqtr-react-vite-muijoy/src/App.tsx +25 -77
  24. package/template-nqtr-react-vite-muijoy/src/assets/index.ts +222 -0
  25. package/template-nqtr-react-vite-muijoy/src/assets/ink-manifest.gen.json +1 -0
  26. package/template-nqtr-react-vite-muijoy/src/assets/manifest.gen.json +8 -0
  27. package/template-nqtr-react-vite-muijoy/src/components/dev-devtools.tsx +25 -0
  28. package/template-nqtr-react-vite-muijoy/src/components/loading.tsx +31 -0
  29. package/template-nqtr-react-vite-muijoy/src/components/menus/choice-menus.tsx +47 -0
  30. package/template-nqtr-react-vite-muijoy/src/components/menus/main-menu.tsx +289 -0
  31. package/template-nqtr-react-vite-muijoy/src/components/menus/memo-menu.tsx +163 -0
  32. package/template-nqtr-react-vite-muijoy/src/components/menus/save-menu/index.tsx +94 -0
  33. package/template-nqtr-react-vite-muijoy/src/components/menus/save-menu/save-forms.tsx +27 -0
  34. package/template-nqtr-react-vite-muijoy/src/components/menus/save-menu/save-slots.tsx +122 -0
  35. package/template-nqtr-react-vite-muijoy/src/components/menus/settings/about.tsx +33 -0
  36. package/template-nqtr-react-vite-muijoy/src/components/menus/settings/dialogues-controls.tsx +105 -0
  37. package/template-nqtr-react-vite-muijoy/src/components/menus/settings/index.tsx +222 -0
  38. package/template-nqtr-react-vite-muijoy/src/components/menus/settings/menus/controls.tsx +115 -0
  39. package/template-nqtr-react-vite-muijoy/src/components/menus/settings/menus/history.tsx +164 -0
  40. package/template-nqtr-react-vite-muijoy/src/components/menus/settings/menus/save-load.tsx +66 -0
  41. package/template-nqtr-react-vite-muijoy/src/components/menus/settings/quick-menus.tsx +126 -0
  42. package/template-nqtr-react-vite-muijoy/src/components/menus/settings/sound-controls.tsx +114 -0
  43. package/template-nqtr-react-vite-muijoy/src/components/menus/settings/system-controls.tsx +225 -0
  44. package/template-nqtr-react-vite-muijoy/src/components/modals/error-allerts.tsx +42 -0
  45. package/template-nqtr-react-vite-muijoy/src/components/modals/input-request-dialogues.tsx +82 -0
  46. package/template-nqtr-react-vite-muijoy/src/components/modals/quick-actions-wheel.tsx +264 -0
  47. package/template-nqtr-react-vite-muijoy/src/components/providers/alert-dialog-provider.tsx +137 -0
  48. package/template-nqtr-react-vite-muijoy/src/components/providers/root-provider.tsx +37 -0
  49. package/template-nqtr-react-vite-muijoy/src/components/providers/theme-provider.tsx +71 -0
  50. package/template-nqtr-react-vite-muijoy/src/components/quick-tools.tsx +159 -0
  51. package/template-nqtr-react-vite-muijoy/src/components/screens/map.tsx +87 -0
  52. package/template-nqtr-react-vite-muijoy/src/components/screens/narration/click-overlay.tsx +15 -0
  53. package/template-nqtr-react-vite-muijoy/src/components/screens/narration/index.tsx +33 -0
  54. package/template-nqtr-react-vite-muijoy/src/components/screens/narration/narration-cards.tsx +156 -0
  55. package/template-nqtr-react-vite-muijoy/src/components/screens/navigation/activity-buttons.tsx +135 -0
  56. package/template-nqtr-react-vite-muijoy/src/components/screens/navigation/index.tsx +30 -0
  57. package/template-nqtr-react-vite-muijoy/src/components/screens/navigation/quick-activities.tsx +24 -0
  58. package/template-nqtr-react-vite-muijoy/src/components/screens/navigation/quick-rooms.tsx +122 -0
  59. package/template-nqtr-react-vite-muijoy/src/components/screens/navigation/time.tsx +54 -0
  60. package/template-nqtr-react-vite-muijoy/src/components/screens/navigation/tools.tsx +102 -0
  61. package/template-nqtr-react-vite-muijoy/src/components/ui/alert-dialog.tsx +160 -0
  62. package/template-nqtr-react-vite-muijoy/src/components/ui/aspect-ratio.tsx +22 -0
  63. package/template-nqtr-react-vite-muijoy/src/components/ui/avatar.tsx +91 -0
  64. package/template-nqtr-react-vite-muijoy/src/components/ui/breadcrumb.tsx +103 -0
  65. package/template-nqtr-react-vite-muijoy/src/components/ui/button-group.tsx +78 -0
  66. package/template-nqtr-react-vite-muijoy/src/components/ui/button.tsx +57 -0
  67. package/template-nqtr-react-vite-muijoy/src/components/ui/card.tsx +91 -0
  68. package/template-nqtr-react-vite-muijoy/src/components/ui/carousel.tsx +235 -0
  69. package/template-nqtr-react-vite-muijoy/src/components/ui/dialog.tsx +148 -0
  70. package/template-nqtr-react-vite-muijoy/src/components/ui/drawer.tsx +120 -0
  71. package/template-nqtr-react-vite-muijoy/src/components/ui/field.tsx +229 -0
  72. package/template-nqtr-react-vite-muijoy/src/components/ui/fullscreen-dialog.tsx +70 -0
  73. package/template-nqtr-react-vite-muijoy/src/components/ui/image.tsx +20 -0
  74. package/template-nqtr-react-vite-muijoy/src/components/ui/input-group.tsx +145 -0
  75. package/template-nqtr-react-vite-muijoy/src/components/ui/input.tsx +20 -0
  76. package/template-nqtr-react-vite-muijoy/src/components/ui/item.tsx +191 -0
  77. package/template-nqtr-react-vite-muijoy/src/components/ui/kbd.tsx +26 -0
  78. package/template-nqtr-react-vite-muijoy/src/components/ui/label.tsx +18 -0
  79. package/template-nqtr-react-vite-muijoy/src/components/ui/pagination.tsx +118 -0
  80. package/template-nqtr-react-vite-muijoy/src/components/ui/radio-group.tsx +38 -0
  81. package/template-nqtr-react-vite-muijoy/src/components/ui/resizable.tsx +40 -0
  82. package/template-nqtr-react-vite-muijoy/src/components/ui/scroll-area.tsx +51 -0
  83. package/template-nqtr-react-vite-muijoy/src/components/ui/select.tsx +190 -0
  84. package/template-nqtr-react-vite-muijoy/src/components/ui/separator.tsx +21 -0
  85. package/template-nqtr-react-vite-muijoy/src/components/ui/skeleton.tsx +13 -0
  86. package/template-nqtr-react-vite-muijoy/src/components/ui/slider.tsx +52 -0
  87. package/template-nqtr-react-vite-muijoy/src/components/ui/sonner.tsx +43 -0
  88. package/template-nqtr-react-vite-muijoy/src/components/ui/spinner.tsx +16 -0
  89. package/template-nqtr-react-vite-muijoy/src/components/ui/switch.tsx +32 -0
  90. package/template-nqtr-react-vite-muijoy/src/components/ui/textarea.tsx +18 -0
  91. package/template-nqtr-react-vite-muijoy/src/components/ui/toggle.tsx +43 -0
  92. package/template-nqtr-react-vite-muijoy/src/components/ui/tooltip.tsx +54 -0
  93. package/template-nqtr-react-vite-muijoy/src/constants.ts +17 -0
  94. package/template-nqtr-react-vite-muijoy/src/content/activities.tsx +77 -0
  95. package/template-nqtr-react-vite-muijoy/src/content/characters.ts +15 -0
  96. package/template-nqtr-react-vite-muijoy/src/content/index.ts +4 -0
  97. package/template-nqtr-react-vite-muijoy/src/content/labels/sleep.label.ts +60 -0
  98. package/template-nqtr-react-vite-muijoy/src/content/labels/start.label.ts +12 -0
  99. package/template-nqtr-react-vite-muijoy/src/content/labels/various.label.ts +151 -0
  100. package/template-nqtr-react-vite-muijoy/src/content/locations.tsx +59 -0
  101. package/template-nqtr-react-vite-muijoy/src/content/maps.tsx +26 -0
  102. package/template-nqtr-react-vite-muijoy/src/content/quests/alice.quest.tsx +54 -0
  103. package/template-nqtr-react-vite-muijoy/src/content/rooms.tsx +80 -0
  104. package/template-nqtr-react-vite-muijoy/src/content/routine.tsx +86 -0
  105. package/template-nqtr-react-vite-muijoy/src/content/time-data.ts +35 -0
  106. package/template-nqtr-react-vite-muijoy/src/lib/hooks/hotkeys-hooks.ts +530 -0
  107. package/template-nqtr-react-vite-muijoy/src/lib/hooks/image-hooks.ts +15 -0
  108. package/template-nqtr-react-vite-muijoy/src/lib/hooks/language-settings-hooks.ts +61 -0
  109. package/template-nqtr-react-vite-muijoy/src/lib/hooks/minigame-hooks.ts +55 -0
  110. package/template-nqtr-react-vite-muijoy/src/lib/hooks/narration-hooks.ts +255 -0
  111. package/template-nqtr-react-vite-muijoy/src/lib/hooks/navigation-hooks.ts +112 -0
  112. package/template-nqtr-react-vite-muijoy/src/lib/hooks/network-hooks.ts +34 -0
  113. package/template-nqtr-react-vite-muijoy/src/lib/hooks/nqtr-hooks.ts +121 -0
  114. package/template-nqtr-react-vite-muijoy/src/lib/hooks/pause-game-hooks.ts +53 -0
  115. package/template-nqtr-react-vite-muijoy/src/lib/hooks/props-hooks.ts +30 -0
  116. package/template-nqtr-react-vite-muijoy/src/lib/hooks/quick-tools-hooks.ts +80 -0
  117. package/template-nqtr-react-vite-muijoy/src/lib/hooks/save-hooks.tsx +203 -0
  118. package/template-nqtr-react-vite-muijoy/src/lib/i18n.ts +59 -0
  119. package/template-nqtr-react-vite-muijoy/src/lib/query/activity-query.ts +24 -0
  120. package/template-nqtr-react-vite-muijoy/src/lib/query/map-query.ts +78 -0
  121. package/template-nqtr-react-vite-muijoy/src/lib/query/narration-query.ts +182 -0
  122. package/template-nqtr-react-vite-muijoy/src/lib/query/quest-query.ts +73 -0
  123. package/template-nqtr-react-vite-muijoy/src/lib/query/room-query.ts +104 -0
  124. package/template-nqtr-react-vite-muijoy/src/lib/query/save-query.ts +18 -0
  125. package/template-nqtr-react-vite-muijoy/src/lib/query/settings-query.ts +10 -0
  126. package/template-nqtr-react-vite-muijoy/src/lib/query/time-query.ts +23 -0
  127. package/template-nqtr-react-vite-muijoy/src/lib/stores/alert-dialog-store.ts +13 -0
  128. package/template-nqtr-react-vite-muijoy/src/lib/stores/auto-settings-store.ts +44 -0
  129. package/template-nqtr-react-vite-muijoy/src/lib/stores/channel-sound-stores.ts +64 -0
  130. package/template-nqtr-react-vite-muijoy/src/lib/stores/game-status-store.ts +19 -0
  131. package/template-nqtr-react-vite-muijoy/src/lib/stores/interface-settings-store.ts +49 -0
  132. package/template-nqtr-react-vite-muijoy/src/lib/stores/master-sound-storage.ts +68 -0
  133. package/template-nqtr-react-vite-muijoy/src/lib/stores/memo-store.ts +24 -0
  134. package/template-nqtr-react-vite-muijoy/src/lib/stores/quick-actions-wheel-store.ts +17 -0
  135. package/template-nqtr-react-vite-muijoy/src/lib/stores/save-menu-pagination-store.ts +24 -0
  136. package/template-nqtr-react-vite-muijoy/src/lib/stores/search-param-store.ts +20 -0
  137. package/template-nqtr-react-vite-muijoy/src/lib/stores/skip-settings-store.ts +26 -0
  138. package/template-nqtr-react-vite-muijoy/src/lib/stores/text-display-settings-store.ts +81 -0
  139. package/template-nqtr-react-vite-muijoy/src/lib/utils/assets-utility.ts +39 -0
  140. package/template-nqtr-react-vite-muijoy/src/lib/utils/db-utility.ts +204 -0
  141. package/template-nqtr-react-vite-muijoy/src/lib/utils/save-utility.ts +152 -0
  142. package/template-nqtr-react-vite-muijoy/src/lib/utils/scroll-utils.ts +24 -0
  143. package/template-nqtr-react-vite-muijoy/src/lib/utils/ui-utility.ts +13 -0
  144. package/template-nqtr-react-vite-muijoy/src/lib/utils.ts +6 -0
  145. package/template-nqtr-react-vite-muijoy/src/locales/en.json +159 -0
  146. package/template-nqtr-react-vite-muijoy/src/main.tsx +23 -27
  147. package/template-nqtr-react-vite-muijoy/src/models/Character.ts +1 -1
  148. package/template-nqtr-react-vite-muijoy/src/models/GameSaveData.ts +1 -1
  149. package/template-nqtr-react-vite-muijoy/src/models/TimeSlotsImage.ts +3 -1
  150. package/template-nqtr-react-vite-muijoy/src/models/nqtr/Activity.ts +10 -10
  151. package/template-nqtr-react-vite-muijoy/src/models/nqtr/Commitment.ts +16 -12
  152. package/template-nqtr-react-vite-muijoy/src/models/nqtr/Location.ts +9 -9
  153. package/template-nqtr-react-vite-muijoy/src/models/nqtr/Map.ts +12 -6
  154. package/template-nqtr-react-vite-muijoy/src/models/nqtr/Quest.ts +7 -2
  155. package/template-nqtr-react-vite-muijoy/src/models/nqtr/Room.ts +12 -10
  156. package/template-nqtr-react-vite-muijoy/src/models/nqtr/Stage.ts +9 -3
  157. package/template-nqtr-react-vite-muijoy/src/models/nqtr/ui-elements.ts +4 -4
  158. package/template-nqtr-react-vite-muijoy/src/nqtr.d.ts +2 -2
  159. package/template-nqtr-react-vite-muijoy/src/nqtr.keys.gen.ts +54 -0
  160. package/template-nqtr-react-vite-muijoy/src/pixi-vn.d.ts +122 -128
  161. package/template-nqtr-react-vite-muijoy/src/pixi-vn.keys.gen.ts +86 -0
  162. package/template-nqtr-react-vite-muijoy/src/routeTree.gen.ts +150 -0
  163. package/template-nqtr-react-vite-muijoy/src/router.tsx +27 -0
  164. package/template-nqtr-react-vite-muijoy/src/routes/__root.tsx +66 -0
  165. package/template-nqtr-react-vite-muijoy/src/routes/game/map.tsx +6 -0
  166. package/template-nqtr-react-vite-muijoy/src/routes/game/narration.tsx +21 -0
  167. package/template-nqtr-react-vite-muijoy/src/routes/game/navigation.tsx +15 -0
  168. package/template-nqtr-react-vite-muijoy/src/routes/game.tsx +22 -0
  169. package/template-nqtr-react-vite-muijoy/src/routes/index.tsx +6 -0
  170. package/template-nqtr-react-vite-muijoy/src/styles.css +155 -0
  171. package/template-nqtr-react-vite-muijoy/tsconfig.app.json +32 -0
  172. package/template-nqtr-react-vite-muijoy/tsconfig.json +8 -23
  173. package/template-nqtr-react-vite-muijoy/tsconfig.node.json +20 -3
  174. package/template-nqtr-react-vite-muijoy/vite.config.ts +118 -14
  175. package/template-nqtr-react-vite-muijoy-ink/.assetpack.ts +18 -0
  176. package/template-nqtr-react-vite-muijoy-ink/.vscode/extensions.json +9 -10
  177. package/template-nqtr-react-vite-muijoy-ink/.vscode/launch.json +29 -15
  178. package/template-nqtr-react-vite-muijoy-ink/.vscode/settings.json +63 -68
  179. package/template-nqtr-react-vite-muijoy-ink/.vscode/tasks.json +106 -0
  180. package/template-nqtr-react-vite-muijoy-ink/README.md +2 -150
  181. package/template-nqtr-react-vite-muijoy-ink/_gitignore +3 -1
  182. package/template-nqtr-react-vite-muijoy-ink/biome.json +70 -0
  183. package/template-nqtr-react-vite-muijoy-ink/components.json +25 -0
  184. package/template-nqtr-react-vite-muijoy-ink/index.html +3 -2
  185. package/template-nqtr-react-vite-muijoy-ink/ink/start.ink +7 -0
  186. package/template-nqtr-react-vite-muijoy-ink/ink/various_actions.ink +68 -0
  187. package/template-nqtr-react-vite-muijoy-ink/package-lock.json +18220 -0
  188. package/template-nqtr-react-vite-muijoy-ink/package.json +62 -44
  189. package/template-nqtr-react-vite-muijoy-ink/public/apple-touch-icon-180x180.png +0 -0
  190. package/template-nqtr-react-vite-muijoy-ink/public/favicon.ico +0 -0
  191. package/template-nqtr-react-vite-muijoy-ink/public/icon.png +0 -0
  192. package/template-nqtr-react-vite-muijoy-ink/public/maskable-icon-512x512.png +0 -0
  193. package/template-nqtr-react-vite-muijoy-ink/public/pwa-192x192.png +0 -0
  194. package/template-nqtr-react-vite-muijoy-ink/public/pwa-512x512.png +0 -0
  195. package/template-nqtr-react-vite-muijoy-ink/public/pwa-64x64.png +0 -0
  196. package/template-nqtr-react-vite-muijoy-ink/pwa-assets.config.js +6 -0
  197. package/template-nqtr-react-vite-muijoy-ink/src/App.tsx +17 -70
  198. package/template-nqtr-react-vite-muijoy-ink/src/assets/index.ts +222 -0
  199. package/template-nqtr-react-vite-muijoy-ink/src/assets/ink-manifest.gen.json +4 -0
  200. package/template-nqtr-react-vite-muijoy-ink/src/assets/manifest.gen.json +8 -0
  201. package/template-nqtr-react-vite-muijoy-ink/src/components/dev-devtools.tsx +25 -0
  202. package/template-nqtr-react-vite-muijoy-ink/src/components/loading.tsx +31 -0
  203. package/template-nqtr-react-vite-muijoy-ink/src/components/menus/choice-menus.tsx +47 -0
  204. package/template-nqtr-react-vite-muijoy-ink/src/components/menus/main-menu.tsx +289 -0
  205. package/template-nqtr-react-vite-muijoy-ink/src/components/menus/memo-menu.tsx +163 -0
  206. package/template-nqtr-react-vite-muijoy-ink/src/components/menus/save-menu/index.tsx +94 -0
  207. package/template-nqtr-react-vite-muijoy-ink/src/components/menus/save-menu/save-forms.tsx +27 -0
  208. package/template-nqtr-react-vite-muijoy-ink/src/components/menus/save-menu/save-slots.tsx +122 -0
  209. package/template-nqtr-react-vite-muijoy-ink/src/components/menus/settings/about.tsx +33 -0
  210. package/template-nqtr-react-vite-muijoy-ink/src/components/menus/settings/dialogues-controls.tsx +105 -0
  211. package/template-nqtr-react-vite-muijoy-ink/src/components/menus/settings/index.tsx +222 -0
  212. package/template-nqtr-react-vite-muijoy-ink/src/components/menus/settings/menus/controls.tsx +115 -0
  213. package/template-nqtr-react-vite-muijoy-ink/src/components/menus/settings/menus/history.tsx +164 -0
  214. package/template-nqtr-react-vite-muijoy-ink/src/components/menus/settings/menus/save-load.tsx +66 -0
  215. package/template-nqtr-react-vite-muijoy-ink/src/components/menus/settings/quick-menus.tsx +126 -0
  216. package/template-nqtr-react-vite-muijoy-ink/src/components/menus/settings/sound-controls.tsx +114 -0
  217. package/template-nqtr-react-vite-muijoy-ink/src/components/menus/settings/system-controls.tsx +225 -0
  218. package/template-nqtr-react-vite-muijoy-ink/src/components/modals/error-allerts.tsx +42 -0
  219. package/template-nqtr-react-vite-muijoy-ink/src/components/modals/input-request-dialogues.tsx +82 -0
  220. package/template-nqtr-react-vite-muijoy-ink/src/components/modals/quick-actions-wheel.tsx +264 -0
  221. package/template-nqtr-react-vite-muijoy-ink/src/components/providers/alert-dialog-provider.tsx +137 -0
  222. package/template-nqtr-react-vite-muijoy-ink/src/components/providers/root-provider.tsx +37 -0
  223. package/template-nqtr-react-vite-muijoy-ink/src/components/providers/theme-provider.tsx +71 -0
  224. package/template-nqtr-react-vite-muijoy-ink/src/components/quick-tools.tsx +159 -0
  225. package/template-nqtr-react-vite-muijoy-ink/src/components/screens/map.tsx +87 -0
  226. package/template-nqtr-react-vite-muijoy-ink/src/components/screens/narration/click-overlay.tsx +15 -0
  227. package/template-nqtr-react-vite-muijoy-ink/src/components/screens/narration/index.tsx +33 -0
  228. package/template-nqtr-react-vite-muijoy-ink/src/components/screens/narration/narration-cards.tsx +156 -0
  229. package/template-nqtr-react-vite-muijoy-ink/src/components/screens/navigation/activity-buttons.tsx +135 -0
  230. package/template-nqtr-react-vite-muijoy-ink/src/components/screens/navigation/index.tsx +30 -0
  231. package/template-nqtr-react-vite-muijoy-ink/src/components/screens/navigation/quick-activities.tsx +24 -0
  232. package/template-nqtr-react-vite-muijoy-ink/src/components/screens/navigation/quick-rooms.tsx +122 -0
  233. package/template-nqtr-react-vite-muijoy-ink/src/components/screens/navigation/time.tsx +54 -0
  234. package/template-nqtr-react-vite-muijoy-ink/src/components/screens/navigation/tools.tsx +102 -0
  235. package/template-nqtr-react-vite-muijoy-ink/src/components/ui/alert-dialog.tsx +160 -0
  236. package/template-nqtr-react-vite-muijoy-ink/src/components/ui/aspect-ratio.tsx +22 -0
  237. package/template-nqtr-react-vite-muijoy-ink/src/components/ui/avatar.tsx +91 -0
  238. package/template-nqtr-react-vite-muijoy-ink/src/components/ui/breadcrumb.tsx +103 -0
  239. package/template-nqtr-react-vite-muijoy-ink/src/components/ui/button-group.tsx +78 -0
  240. package/template-nqtr-react-vite-muijoy-ink/src/components/ui/button.tsx +57 -0
  241. package/template-nqtr-react-vite-muijoy-ink/src/components/ui/card.tsx +91 -0
  242. package/template-nqtr-react-vite-muijoy-ink/src/components/ui/carousel.tsx +235 -0
  243. package/template-nqtr-react-vite-muijoy-ink/src/components/ui/dialog.tsx +148 -0
  244. package/template-nqtr-react-vite-muijoy-ink/src/components/ui/drawer.tsx +120 -0
  245. package/template-nqtr-react-vite-muijoy-ink/src/components/ui/field.tsx +229 -0
  246. package/template-nqtr-react-vite-muijoy-ink/src/components/ui/fullscreen-dialog.tsx +70 -0
  247. package/template-nqtr-react-vite-muijoy-ink/src/components/ui/image.tsx +20 -0
  248. package/template-nqtr-react-vite-muijoy-ink/src/components/ui/input-group.tsx +145 -0
  249. package/template-nqtr-react-vite-muijoy-ink/src/components/ui/input.tsx +20 -0
  250. package/template-nqtr-react-vite-muijoy-ink/src/components/ui/item.tsx +191 -0
  251. package/template-nqtr-react-vite-muijoy-ink/src/components/ui/kbd.tsx +26 -0
  252. package/template-nqtr-react-vite-muijoy-ink/src/components/ui/label.tsx +18 -0
  253. package/template-nqtr-react-vite-muijoy-ink/src/components/ui/pagination.tsx +118 -0
  254. package/template-nqtr-react-vite-muijoy-ink/src/components/ui/radio-group.tsx +38 -0
  255. package/template-nqtr-react-vite-muijoy-ink/src/components/ui/resizable.tsx +40 -0
  256. package/template-nqtr-react-vite-muijoy-ink/src/components/ui/scroll-area.tsx +51 -0
  257. package/template-nqtr-react-vite-muijoy-ink/src/components/ui/select.tsx +190 -0
  258. package/template-nqtr-react-vite-muijoy-ink/src/components/ui/separator.tsx +21 -0
  259. package/template-nqtr-react-vite-muijoy-ink/src/components/ui/skeleton.tsx +13 -0
  260. package/template-nqtr-react-vite-muijoy-ink/src/components/ui/slider.tsx +52 -0
  261. package/template-nqtr-react-vite-muijoy-ink/src/components/ui/sonner.tsx +43 -0
  262. package/template-nqtr-react-vite-muijoy-ink/src/components/ui/spinner.tsx +16 -0
  263. package/template-nqtr-react-vite-muijoy-ink/src/components/ui/switch.tsx +32 -0
  264. package/template-nqtr-react-vite-muijoy-ink/src/components/ui/textarea.tsx +18 -0
  265. package/template-nqtr-react-vite-muijoy-ink/src/components/ui/toggle.tsx +43 -0
  266. package/template-nqtr-react-vite-muijoy-ink/src/components/ui/tooltip.tsx +54 -0
  267. package/template-nqtr-react-vite-muijoy-ink/src/constants.ts +17 -0
  268. package/template-nqtr-react-vite-muijoy-ink/src/content/activities.tsx +77 -0
  269. package/template-nqtr-react-vite-muijoy-ink/src/content/characters.ts +15 -0
  270. package/template-nqtr-react-vite-muijoy-ink/src/content/index.ts +4 -0
  271. package/template-nqtr-react-vite-muijoy-ink/src/content/ink/hashtag-commands.ts +50 -0
  272. package/template-nqtr-react-vite-muijoy-ink/src/content/ink/text-replaces.ts +19 -0
  273. package/template-nqtr-react-vite-muijoy-ink/src/content/labels/sleep.label.ts +60 -0
  274. package/template-nqtr-react-vite-muijoy-ink/src/content/locations.tsx +59 -0
  275. package/template-nqtr-react-vite-muijoy-ink/src/content/maps.tsx +26 -0
  276. package/template-nqtr-react-vite-muijoy-ink/src/content/quests/alice.quest.tsx +54 -0
  277. package/template-nqtr-react-vite-muijoy-ink/src/content/rooms.tsx +80 -0
  278. package/template-nqtr-react-vite-muijoy-ink/src/content/routine.tsx +86 -0
  279. package/template-nqtr-react-vite-muijoy-ink/src/content/time-data.ts +35 -0
  280. package/template-nqtr-react-vite-muijoy-ink/src/lib/hooks/hotkeys-hooks.ts +530 -0
  281. package/template-nqtr-react-vite-muijoy-ink/src/lib/hooks/image-hooks.ts +15 -0
  282. package/template-nqtr-react-vite-muijoy-ink/src/lib/hooks/ink-hooks.tsx +12 -0
  283. package/template-nqtr-react-vite-muijoy-ink/src/lib/hooks/language-settings-hooks.ts +61 -0
  284. package/template-nqtr-react-vite-muijoy-ink/src/lib/hooks/minigame-hooks.ts +55 -0
  285. package/template-nqtr-react-vite-muijoy-ink/src/lib/hooks/narration-hooks.ts +255 -0
  286. package/template-nqtr-react-vite-muijoy-ink/src/lib/hooks/navigation-hooks.ts +112 -0
  287. package/template-nqtr-react-vite-muijoy-ink/src/lib/hooks/network-hooks.ts +34 -0
  288. package/template-nqtr-react-vite-muijoy-ink/src/lib/hooks/nqtr-hooks.ts +121 -0
  289. package/template-nqtr-react-vite-muijoy-ink/src/lib/hooks/pause-game-hooks.ts +53 -0
  290. package/template-nqtr-react-vite-muijoy-ink/src/lib/hooks/props-hooks.ts +30 -0
  291. package/template-nqtr-react-vite-muijoy-ink/src/lib/hooks/quick-tools-hooks.ts +80 -0
  292. package/template-nqtr-react-vite-muijoy-ink/src/lib/hooks/save-hooks.tsx +203 -0
  293. package/template-nqtr-react-vite-muijoy-ink/src/lib/i18n.ts +80 -0
  294. package/template-nqtr-react-vite-muijoy-ink/src/lib/query/activity-query.ts +24 -0
  295. package/template-nqtr-react-vite-muijoy-ink/src/lib/query/map-query.ts +78 -0
  296. package/template-nqtr-react-vite-muijoy-ink/src/lib/query/narration-query.ts +182 -0
  297. package/template-nqtr-react-vite-muijoy-ink/src/lib/query/quest-query.ts +73 -0
  298. package/template-nqtr-react-vite-muijoy-ink/src/lib/query/room-query.ts +104 -0
  299. package/template-nqtr-react-vite-muijoy-ink/src/lib/query/save-query.ts +18 -0
  300. package/template-nqtr-react-vite-muijoy-ink/src/lib/query/settings-query.ts +10 -0
  301. package/template-nqtr-react-vite-muijoy-ink/src/lib/query/time-query.ts +23 -0
  302. package/template-nqtr-react-vite-muijoy-ink/src/lib/stores/alert-dialog-store.ts +13 -0
  303. package/template-nqtr-react-vite-muijoy-ink/src/lib/stores/auto-settings-store.ts +44 -0
  304. package/template-nqtr-react-vite-muijoy-ink/src/lib/stores/channel-sound-stores.ts +64 -0
  305. package/template-nqtr-react-vite-muijoy-ink/src/lib/stores/game-status-store.ts +19 -0
  306. package/template-nqtr-react-vite-muijoy-ink/src/lib/stores/interface-settings-store.ts +49 -0
  307. package/template-nqtr-react-vite-muijoy-ink/src/lib/stores/master-sound-storage.ts +68 -0
  308. package/template-nqtr-react-vite-muijoy-ink/src/lib/stores/memo-store.ts +24 -0
  309. package/template-nqtr-react-vite-muijoy-ink/src/lib/stores/quick-actions-wheel-store.ts +17 -0
  310. package/template-nqtr-react-vite-muijoy-ink/src/lib/stores/save-menu-pagination-store.ts +24 -0
  311. package/template-nqtr-react-vite-muijoy-ink/src/lib/stores/search-param-store.ts +20 -0
  312. package/template-nqtr-react-vite-muijoy-ink/src/lib/stores/skip-settings-store.ts +26 -0
  313. package/template-nqtr-react-vite-muijoy-ink/src/lib/stores/text-display-settings-store.ts +81 -0
  314. package/template-nqtr-react-vite-muijoy-ink/src/lib/utils/assets-utility.ts +39 -0
  315. package/template-nqtr-react-vite-muijoy-ink/src/lib/utils/db-utility.ts +204 -0
  316. package/template-nqtr-react-vite-muijoy-ink/src/lib/utils/save-utility.ts +152 -0
  317. package/template-nqtr-react-vite-muijoy-ink/src/lib/utils/scroll-utils.ts +24 -0
  318. package/template-nqtr-react-vite-muijoy-ink/src/lib/utils/ui-utility.ts +13 -0
  319. package/template-nqtr-react-vite-muijoy-ink/src/lib/utils.ts +6 -0
  320. package/template-nqtr-react-vite-muijoy-ink/src/locales/en.json +159 -0
  321. package/template-nqtr-react-vite-muijoy-ink/src/main.tsx +23 -30
  322. package/template-nqtr-react-vite-muijoy-ink/src/models/Character.ts +1 -1
  323. package/template-nqtr-react-vite-muijoy-ink/src/models/GameSaveData.ts +1 -1
  324. package/template-nqtr-react-vite-muijoy-ink/src/models/TimeSlotsImage.ts +3 -1
  325. package/template-nqtr-react-vite-muijoy-ink/src/models/nqtr/Activity.ts +10 -10
  326. package/template-nqtr-react-vite-muijoy-ink/src/models/nqtr/Commitment.ts +16 -12
  327. package/template-nqtr-react-vite-muijoy-ink/src/models/nqtr/Location.ts +9 -9
  328. package/template-nqtr-react-vite-muijoy-ink/src/models/nqtr/Map.ts +12 -6
  329. package/template-nqtr-react-vite-muijoy-ink/src/models/nqtr/Quest.ts +7 -2
  330. package/template-nqtr-react-vite-muijoy-ink/src/models/nqtr/Room.ts +12 -10
  331. package/template-nqtr-react-vite-muijoy-ink/src/models/nqtr/Stage.ts +9 -3
  332. package/template-nqtr-react-vite-muijoy-ink/src/models/nqtr/ui-elements.ts +4 -4
  333. package/template-nqtr-react-vite-muijoy-ink/src/nqtr.d.ts +2 -2
  334. package/template-nqtr-react-vite-muijoy-ink/src/nqtr.keys.gen.ts +54 -0
  335. package/template-nqtr-react-vite-muijoy-ink/src/pixi-vn.d.ts +122 -128
  336. package/template-nqtr-react-vite-muijoy-ink/src/pixi-vn.keys.gen.ts +93 -0
  337. package/template-nqtr-react-vite-muijoy-ink/src/routeTree.gen.ts +150 -0
  338. package/template-nqtr-react-vite-muijoy-ink/src/router.tsx +27 -0
  339. package/template-nqtr-react-vite-muijoy-ink/src/routes/__root.tsx +70 -0
  340. package/template-nqtr-react-vite-muijoy-ink/src/routes/game/map.tsx +6 -0
  341. package/template-nqtr-react-vite-muijoy-ink/src/routes/game/narration.tsx +21 -0
  342. package/template-nqtr-react-vite-muijoy-ink/src/routes/game/navigation.tsx +15 -0
  343. package/template-nqtr-react-vite-muijoy-ink/src/routes/game.tsx +22 -0
  344. package/template-nqtr-react-vite-muijoy-ink/src/routes/index.tsx +6 -0
  345. package/template-nqtr-react-vite-muijoy-ink/src/styles.css +155 -0
  346. package/template-nqtr-react-vite-muijoy-ink/tsconfig.app.json +32 -0
  347. package/template-nqtr-react-vite-muijoy-ink/tsconfig.json +8 -23
  348. package/template-nqtr-react-vite-muijoy-ink/tsconfig.node.json +20 -3
  349. package/template-nqtr-react-vite-muijoy-ink/vite.config.ts +123 -16
  350. package/template-nqtr-react-vite-muijoy-ink-tauri/.assetpack.ts +27 -0
  351. package/template-nqtr-react-vite-muijoy-ink-tauri/.vscode/extensions.json +12 -13
  352. package/template-nqtr-react-vite-muijoy-ink-tauri/.vscode/launch.json +40 -43
  353. package/template-nqtr-react-vite-muijoy-ink-tauri/.vscode/settings.json +63 -68
  354. package/template-nqtr-react-vite-muijoy-ink-tauri/.vscode/tasks.json +150 -26
  355. package/template-nqtr-react-vite-muijoy-ink-tauri/README.md +2 -203
  356. package/template-nqtr-react-vite-muijoy-ink-tauri/_github/workflows/desktop.yml +188 -0
  357. package/template-nqtr-react-vite-muijoy-ink-tauri/_github/workflows/mobile.yml +270 -0
  358. package/template-nqtr-react-vite-muijoy-ink-tauri/_gitignore +13 -2
  359. package/template-nqtr-react-vite-muijoy-ink-tauri/biome.json +70 -0
  360. package/template-nqtr-react-vite-muijoy-ink-tauri/components.json +25 -0
  361. package/template-nqtr-react-vite-muijoy-ink-tauri/index.html +3 -2
  362. package/template-nqtr-react-vite-muijoy-ink-tauri/ink/start.ink +7 -0
  363. package/template-nqtr-react-vite-muijoy-ink-tauri/ink/various_actions.ink +68 -0
  364. package/template-nqtr-react-vite-muijoy-ink-tauri/package-lock.json +18470 -0
  365. package/template-nqtr-react-vite-muijoy-ink-tauri/package.json +104 -81
  366. package/template-nqtr-react-vite-muijoy-ink-tauri/public/apple-touch-icon-180x180.png +0 -0
  367. package/template-nqtr-react-vite-muijoy-ink-tauri/public/favicon.ico +0 -0
  368. package/template-nqtr-react-vite-muijoy-ink-tauri/public/icon.png +0 -0
  369. package/template-nqtr-react-vite-muijoy-ink-tauri/public/maskable-icon-512x512.png +0 -0
  370. package/template-nqtr-react-vite-muijoy-ink-tauri/public/pwa-192x192.png +0 -0
  371. package/template-nqtr-react-vite-muijoy-ink-tauri/public/pwa-512x512.png +0 -0
  372. package/template-nqtr-react-vite-muijoy-ink-tauri/public/pwa-64x64.png +0 -0
  373. package/template-nqtr-react-vite-muijoy-ink-tauri/pwa-assets.config.js +6 -0
  374. package/template-nqtr-react-vite-muijoy-ink-tauri/src/App.tsx +17 -70
  375. package/template-nqtr-react-vite-muijoy-ink-tauri/src/assets/index.ts +222 -0
  376. package/template-nqtr-react-vite-muijoy-ink-tauri/src/assets/ink-manifest.gen.json +4 -0
  377. package/template-nqtr-react-vite-muijoy-ink-tauri/src/assets/manifest.gen.json +8 -0
  378. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/dev-devtools.tsx +25 -0
  379. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/loading.tsx +31 -0
  380. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/menus/choice-menus.tsx +47 -0
  381. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/menus/main-menu.tsx +304 -0
  382. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/menus/memo-menu.tsx +163 -0
  383. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/menus/save-menu/index.tsx +94 -0
  384. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/menus/save-menu/save-forms.tsx +27 -0
  385. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/menus/save-menu/save-slots.tsx +122 -0
  386. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/menus/settings/about.tsx +33 -0
  387. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/menus/settings/dialogues-controls.tsx +105 -0
  388. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/menus/settings/index.tsx +222 -0
  389. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/menus/settings/menus/controls.tsx +115 -0
  390. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/menus/settings/menus/history.tsx +164 -0
  391. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/menus/settings/menus/save-load.tsx +66 -0
  392. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/menus/settings/quick-menus.tsx +142 -0
  393. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/menus/settings/sound-controls.tsx +114 -0
  394. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/menus/settings/system-controls.tsx +235 -0
  395. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/modals/error-allerts.tsx +42 -0
  396. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/modals/input-request-dialogues.tsx +82 -0
  397. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/modals/quick-actions-wheel.tsx +264 -0
  398. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/providers/alert-dialog-provider.tsx +137 -0
  399. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/providers/root-provider.tsx +37 -0
  400. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/providers/theme-provider.tsx +71 -0
  401. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/quick-tools.tsx +159 -0
  402. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/screens/map.tsx +87 -0
  403. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/screens/narration/click-overlay.tsx +15 -0
  404. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/screens/narration/index.tsx +33 -0
  405. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/screens/narration/narration-cards.tsx +156 -0
  406. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/screens/navigation/activity-buttons.tsx +135 -0
  407. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/screens/navigation/index.tsx +30 -0
  408. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/screens/navigation/quick-activities.tsx +24 -0
  409. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/screens/navigation/quick-rooms.tsx +122 -0
  410. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/screens/navigation/time.tsx +54 -0
  411. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/screens/navigation/tools.tsx +102 -0
  412. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/ui/alert-dialog.tsx +160 -0
  413. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/ui/aspect-ratio.tsx +22 -0
  414. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/ui/avatar.tsx +91 -0
  415. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/ui/breadcrumb.tsx +103 -0
  416. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/ui/button-group.tsx +78 -0
  417. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/ui/button.tsx +57 -0
  418. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/ui/card.tsx +91 -0
  419. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/ui/carousel.tsx +235 -0
  420. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/ui/dialog.tsx +148 -0
  421. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/ui/drawer.tsx +120 -0
  422. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/ui/field.tsx +229 -0
  423. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/ui/fullscreen-dialog.tsx +70 -0
  424. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/ui/image.tsx +20 -0
  425. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/ui/input-group.tsx +145 -0
  426. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/ui/input.tsx +20 -0
  427. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/ui/item.tsx +191 -0
  428. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/ui/kbd.tsx +26 -0
  429. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/ui/label.tsx +18 -0
  430. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/ui/pagination.tsx +118 -0
  431. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/ui/radio-group.tsx +38 -0
  432. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/ui/resizable.tsx +40 -0
  433. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/ui/scroll-area.tsx +51 -0
  434. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/ui/select.tsx +190 -0
  435. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/ui/separator.tsx +21 -0
  436. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/ui/skeleton.tsx +13 -0
  437. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/ui/slider.tsx +52 -0
  438. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/ui/sonner.tsx +43 -0
  439. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/ui/spinner.tsx +16 -0
  440. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/ui/switch.tsx +32 -0
  441. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/ui/textarea.tsx +18 -0
  442. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/ui/toggle.tsx +43 -0
  443. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/ui/tooltip.tsx +54 -0
  444. package/template-nqtr-react-vite-muijoy-ink-tauri/src/constants.ts +17 -0
  445. package/template-nqtr-react-vite-muijoy-ink-tauri/src/content/activities.tsx +77 -0
  446. package/template-nqtr-react-vite-muijoy-ink-tauri/src/content/characters.ts +15 -0
  447. package/template-nqtr-react-vite-muijoy-ink-tauri/src/content/index.ts +4 -0
  448. package/template-nqtr-react-vite-muijoy-ink-tauri/src/content/ink/hashtag-commands.ts +50 -0
  449. package/template-nqtr-react-vite-muijoy-ink-tauri/src/content/ink/text-replaces.ts +19 -0
  450. package/template-nqtr-react-vite-muijoy-ink-tauri/src/content/labels/sleep.label.ts +60 -0
  451. package/template-nqtr-react-vite-muijoy-ink-tauri/src/content/labels/sleepNapLabels.ts +60 -0
  452. package/template-nqtr-react-vite-muijoy-ink-tauri/src/content/locations.tsx +59 -0
  453. package/template-nqtr-react-vite-muijoy-ink-tauri/src/content/maps.tsx +26 -0
  454. package/template-nqtr-react-vite-muijoy-ink-tauri/src/content/quests/alice.quest.tsx +54 -0
  455. package/template-nqtr-react-vite-muijoy-ink-tauri/src/content/rooms.tsx +80 -0
  456. package/template-nqtr-react-vite-muijoy-ink-tauri/src/content/routine.tsx +86 -0
  457. package/template-nqtr-react-vite-muijoy-ink-tauri/src/content/time-data.ts +35 -0
  458. package/template-nqtr-react-vite-muijoy-ink-tauri/src/lib/hooks/hotkeys-hooks.ts +530 -0
  459. package/template-nqtr-react-vite-muijoy-ink-tauri/src/lib/hooks/image-hooks.ts +15 -0
  460. package/template-nqtr-react-vite-muijoy-ink-tauri/src/lib/hooks/ink-hooks.tsx +12 -0
  461. package/template-nqtr-react-vite-muijoy-ink-tauri/src/lib/hooks/language-settings-hooks.ts +61 -0
  462. package/template-nqtr-react-vite-muijoy-ink-tauri/src/lib/hooks/minigame-hooks.ts +55 -0
  463. package/template-nqtr-react-vite-muijoy-ink-tauri/src/lib/hooks/narration-hooks.ts +255 -0
  464. package/template-nqtr-react-vite-muijoy-ink-tauri/src/lib/hooks/navigation-hooks.ts +112 -0
  465. package/template-nqtr-react-vite-muijoy-ink-tauri/src/lib/hooks/network-hooks.ts +34 -0
  466. package/template-nqtr-react-vite-muijoy-ink-tauri/src/lib/hooks/nqtr-hooks.ts +121 -0
  467. package/template-nqtr-react-vite-muijoy-ink-tauri/src/lib/hooks/pause-game-hooks.ts +53 -0
  468. package/template-nqtr-react-vite-muijoy-ink-tauri/src/lib/hooks/props-hooks.ts +30 -0
  469. package/template-nqtr-react-vite-muijoy-ink-tauri/src/lib/hooks/quick-tools-hooks.ts +80 -0
  470. package/template-nqtr-react-vite-muijoy-ink-tauri/src/lib/hooks/quit-hooks.ts +24 -0
  471. package/template-nqtr-react-vite-muijoy-ink-tauri/src/lib/hooks/save-hooks.tsx +203 -0
  472. package/template-nqtr-react-vite-muijoy-ink-tauri/src/lib/i18n.ts +80 -0
  473. package/template-nqtr-react-vite-muijoy-ink-tauri/src/lib/query/activity-query.ts +24 -0
  474. package/template-nqtr-react-vite-muijoy-ink-tauri/src/lib/query/map-query.ts +78 -0
  475. package/template-nqtr-react-vite-muijoy-ink-tauri/src/lib/query/narration-query.ts +182 -0
  476. package/template-nqtr-react-vite-muijoy-ink-tauri/src/lib/query/quest-query.ts +73 -0
  477. package/template-nqtr-react-vite-muijoy-ink-tauri/src/lib/query/room-query.ts +104 -0
  478. package/template-nqtr-react-vite-muijoy-ink-tauri/src/lib/query/save-query.ts +18 -0
  479. package/template-nqtr-react-vite-muijoy-ink-tauri/src/lib/query/settings-query.ts +16 -0
  480. package/template-nqtr-react-vite-muijoy-ink-tauri/src/lib/query/time-query.ts +23 -0
  481. package/template-nqtr-react-vite-muijoy-ink-tauri/src/lib/steam.ts +143 -0
  482. package/template-nqtr-react-vite-muijoy-ink-tauri/src/lib/stores/alert-dialog-store.ts +13 -0
  483. package/template-nqtr-react-vite-muijoy-ink-tauri/src/lib/stores/auto-settings-store.ts +44 -0
  484. package/template-nqtr-react-vite-muijoy-ink-tauri/src/lib/stores/channel-sound-stores.ts +64 -0
  485. package/template-nqtr-react-vite-muijoy-ink-tauri/src/lib/stores/game-status-store.ts +19 -0
  486. package/template-nqtr-react-vite-muijoy-ink-tauri/src/lib/stores/interface-settings-store.ts +49 -0
  487. package/template-nqtr-react-vite-muijoy-ink-tauri/src/lib/stores/master-sound-storage.ts +68 -0
  488. package/template-nqtr-react-vite-muijoy-ink-tauri/src/lib/stores/memo-store.ts +24 -0
  489. package/template-nqtr-react-vite-muijoy-ink-tauri/src/lib/stores/quick-actions-wheel-store.ts +17 -0
  490. package/template-nqtr-react-vite-muijoy-ink-tauri/src/lib/stores/save-menu-pagination-store.ts +24 -0
  491. package/template-nqtr-react-vite-muijoy-ink-tauri/src/lib/stores/search-param-store.ts +20 -0
  492. package/template-nqtr-react-vite-muijoy-ink-tauri/src/lib/stores/skip-settings-store.ts +26 -0
  493. package/template-nqtr-react-vite-muijoy-ink-tauri/src/lib/stores/text-display-settings-store.ts +81 -0
  494. package/template-nqtr-react-vite-muijoy-ink-tauri/src/lib/utils/assets-utility.ts +39 -0
  495. package/template-nqtr-react-vite-muijoy-ink-tauri/src/lib/utils/db-utility.ts +204 -0
  496. package/template-nqtr-react-vite-muijoy-ink-tauri/src/lib/utils/save-utility.ts +152 -0
  497. package/template-nqtr-react-vite-muijoy-ink-tauri/src/lib/utils/scroll-utils.ts +24 -0
  498. package/template-nqtr-react-vite-muijoy-ink-tauri/src/lib/utils/ui-utility.ts +13 -0
  499. package/template-nqtr-react-vite-muijoy-ink-tauri/src/lib/utils.ts +6 -0
  500. package/template-nqtr-react-vite-muijoy-ink-tauri/src/locales/en.json +159 -0
  501. package/template-nqtr-react-vite-muijoy-ink-tauri/src/main.tsx +23 -30
  502. package/template-nqtr-react-vite-muijoy-ink-tauri/src/models/Character.ts +1 -1
  503. package/template-nqtr-react-vite-muijoy-ink-tauri/src/models/GameSaveData.ts +1 -1
  504. package/template-nqtr-react-vite-muijoy-ink-tauri/src/models/TimeSlotsImage.ts +3 -1
  505. package/template-nqtr-react-vite-muijoy-ink-tauri/src/models/nqtr/Activity.ts +10 -10
  506. package/template-nqtr-react-vite-muijoy-ink-tauri/src/models/nqtr/Commitment.ts +16 -12
  507. package/template-nqtr-react-vite-muijoy-ink-tauri/src/models/nqtr/Location.ts +9 -9
  508. package/template-nqtr-react-vite-muijoy-ink-tauri/src/models/nqtr/Map.ts +12 -6
  509. package/template-nqtr-react-vite-muijoy-ink-tauri/src/models/nqtr/Quest.ts +7 -2
  510. package/template-nqtr-react-vite-muijoy-ink-tauri/src/models/nqtr/Room.ts +12 -10
  511. package/template-nqtr-react-vite-muijoy-ink-tauri/src/models/nqtr/Stage.ts +9 -3
  512. package/template-nqtr-react-vite-muijoy-ink-tauri/src/models/nqtr/ui-elements.ts +4 -4
  513. package/template-nqtr-react-vite-muijoy-ink-tauri/src/nqtr.d.ts +2 -2
  514. package/template-nqtr-react-vite-muijoy-ink-tauri/src/nqtr.keys.gen.ts +54 -0
  515. package/template-nqtr-react-vite-muijoy-ink-tauri/src/pixi-vn.d.ts +122 -128
  516. package/template-nqtr-react-vite-muijoy-ink-tauri/src/pixi-vn.keys.gen.ts +93 -0
  517. package/template-nqtr-react-vite-muijoy-ink-tauri/src/routeTree.gen.ts +150 -0
  518. package/template-nqtr-react-vite-muijoy-ink-tauri/src/router.tsx +27 -0
  519. package/template-nqtr-react-vite-muijoy-ink-tauri/src/routes/__root.tsx +70 -0
  520. package/template-nqtr-react-vite-muijoy-ink-tauri/src/routes/game/map.tsx +6 -0
  521. package/template-nqtr-react-vite-muijoy-ink-tauri/src/routes/game/narration.tsx +21 -0
  522. package/template-nqtr-react-vite-muijoy-ink-tauri/src/routes/game/navigation.tsx +15 -0
  523. package/template-nqtr-react-vite-muijoy-ink-tauri/src/routes/game.tsx +22 -0
  524. package/template-nqtr-react-vite-muijoy-ink-tauri/src/routes/index.tsx +6 -0
  525. package/template-nqtr-react-vite-muijoy-ink-tauri/src/styles.css +155 -0
  526. package/template-nqtr-react-vite-muijoy-ink-tauri/src-tauri/Cargo.toml +25 -0
  527. package/template-nqtr-react-vite-muijoy-ink-tauri/src-tauri/build.rs +43 -0
  528. package/template-nqtr-react-vite-muijoy-ink-tauri/src-tauri/capabilities/default.json +11 -1
  529. package/template-nqtr-react-vite-muijoy-ink-tauri/src-tauri/src/lib.rs +57 -7
  530. package/template-nqtr-react-vite-muijoy-ink-tauri/src-tauri/src/steam.rs +238 -0
  531. package/template-nqtr-react-vite-muijoy-ink-tauri/src-tauri/tauri.conf.json +18 -5
  532. package/template-nqtr-react-vite-muijoy-ink-tauri/tsconfig.app.json +32 -0
  533. package/template-nqtr-react-vite-muijoy-ink-tauri/tsconfig.json +8 -23
  534. package/template-nqtr-react-vite-muijoy-ink-tauri/tsconfig.node.json +20 -3
  535. package/template-nqtr-react-vite-muijoy-ink-tauri/vite.config.ts +124 -17
  536. package/template-nqtr-react-vite-muijoy-tauri/.assetpack.ts +27 -0
  537. package/template-nqtr-react-vite-muijoy-tauri/.vscode/extensions.json +11 -12
  538. package/template-nqtr-react-vite-muijoy-tauri/.vscode/launch.json +40 -43
  539. package/template-nqtr-react-vite-muijoy-tauri/.vscode/settings.json +58 -63
  540. package/template-nqtr-react-vite-muijoy-tauri/.vscode/tasks.json +150 -26
  541. package/template-nqtr-react-vite-muijoy-tauri/README.md +2 -166
  542. package/template-nqtr-react-vite-muijoy-tauri/_github/workflows/desktop.yml +188 -0
  543. package/template-nqtr-react-vite-muijoy-tauri/_github/workflows/mobile.yml +270 -0
  544. package/template-nqtr-react-vite-muijoy-tauri/_gitignore +12 -2
  545. package/template-nqtr-react-vite-muijoy-tauri/biome.json +70 -0
  546. package/template-nqtr-react-vite-muijoy-tauri/components.json +25 -0
  547. package/template-nqtr-react-vite-muijoy-tauri/index.html +3 -2
  548. package/template-nqtr-react-vite-muijoy-tauri/package-lock.json +18431 -0
  549. package/template-nqtr-react-vite-muijoy-tauri/package.json +66 -44
  550. package/template-nqtr-react-vite-muijoy-tauri/public/apple-touch-icon-180x180.png +0 -0
  551. package/template-nqtr-react-vite-muijoy-tauri/public/favicon.ico +0 -0
  552. package/template-nqtr-react-vite-muijoy-tauri/public/icon.png +0 -0
  553. package/template-nqtr-react-vite-muijoy-tauri/public/maskable-icon-512x512.png +0 -0
  554. package/template-nqtr-react-vite-muijoy-tauri/public/pwa-192x192.png +0 -0
  555. package/template-nqtr-react-vite-muijoy-tauri/public/pwa-512x512.png +0 -0
  556. package/template-nqtr-react-vite-muijoy-tauri/public/pwa-64x64.png +0 -0
  557. package/template-nqtr-react-vite-muijoy-tauri/pwa-assets.config.js +6 -0
  558. package/template-nqtr-react-vite-muijoy-tauri/src/App.tsx +25 -77
  559. package/template-nqtr-react-vite-muijoy-tauri/src/assets/index.ts +222 -0
  560. package/template-nqtr-react-vite-muijoy-tauri/src/assets/ink-manifest.gen.json +1 -0
  561. package/template-nqtr-react-vite-muijoy-tauri/src/assets/manifest.gen.json +8 -0
  562. package/template-nqtr-react-vite-muijoy-tauri/src/components/dev-devtools.tsx +25 -0
  563. package/template-nqtr-react-vite-muijoy-tauri/src/components/loading.tsx +31 -0
  564. package/template-nqtr-react-vite-muijoy-tauri/src/components/menus/choice-menus.tsx +47 -0
  565. package/template-nqtr-react-vite-muijoy-tauri/src/components/menus/main-menu.tsx +304 -0
  566. package/template-nqtr-react-vite-muijoy-tauri/src/components/menus/memo-menu.tsx +163 -0
  567. package/template-nqtr-react-vite-muijoy-tauri/src/components/menus/save-menu/index.tsx +94 -0
  568. package/template-nqtr-react-vite-muijoy-tauri/src/components/menus/save-menu/save-forms.tsx +27 -0
  569. package/template-nqtr-react-vite-muijoy-tauri/src/components/menus/save-menu/save-slots.tsx +122 -0
  570. package/template-nqtr-react-vite-muijoy-tauri/src/components/menus/settings/about.tsx +33 -0
  571. package/template-nqtr-react-vite-muijoy-tauri/src/components/menus/settings/dialogues-controls.tsx +105 -0
  572. package/template-nqtr-react-vite-muijoy-tauri/src/components/menus/settings/index.tsx +222 -0
  573. package/template-nqtr-react-vite-muijoy-tauri/src/components/menus/settings/menus/controls.tsx +115 -0
  574. package/template-nqtr-react-vite-muijoy-tauri/src/components/menus/settings/menus/history.tsx +164 -0
  575. package/template-nqtr-react-vite-muijoy-tauri/src/components/menus/settings/menus/save-load.tsx +66 -0
  576. package/template-nqtr-react-vite-muijoy-tauri/src/components/menus/settings/quick-menus.tsx +142 -0
  577. package/template-nqtr-react-vite-muijoy-tauri/src/components/menus/settings/sound-controls.tsx +114 -0
  578. package/template-nqtr-react-vite-muijoy-tauri/src/components/menus/settings/system-controls.tsx +235 -0
  579. package/template-nqtr-react-vite-muijoy-tauri/src/components/modals/error-allerts.tsx +42 -0
  580. package/template-nqtr-react-vite-muijoy-tauri/src/components/modals/input-request-dialogues.tsx +82 -0
  581. package/template-nqtr-react-vite-muijoy-tauri/src/components/modals/quick-actions-wheel.tsx +264 -0
  582. package/template-nqtr-react-vite-muijoy-tauri/src/components/providers/alert-dialog-provider.tsx +137 -0
  583. package/template-nqtr-react-vite-muijoy-tauri/src/components/providers/root-provider.tsx +37 -0
  584. package/template-nqtr-react-vite-muijoy-tauri/src/components/providers/theme-provider.tsx +71 -0
  585. package/template-nqtr-react-vite-muijoy-tauri/src/components/quick-tools.tsx +159 -0
  586. package/template-nqtr-react-vite-muijoy-tauri/src/components/screens/map.tsx +87 -0
  587. package/template-nqtr-react-vite-muijoy-tauri/src/components/screens/narration/click-overlay.tsx +15 -0
  588. package/template-nqtr-react-vite-muijoy-tauri/src/components/screens/narration/index.tsx +33 -0
  589. package/template-nqtr-react-vite-muijoy-tauri/src/components/screens/narration/narration-cards.tsx +156 -0
  590. package/template-nqtr-react-vite-muijoy-tauri/src/components/screens/navigation/activity-buttons.tsx +135 -0
  591. package/template-nqtr-react-vite-muijoy-tauri/src/components/screens/navigation/index.tsx +30 -0
  592. package/template-nqtr-react-vite-muijoy-tauri/src/components/screens/navigation/quick-activities.tsx +24 -0
  593. package/template-nqtr-react-vite-muijoy-tauri/src/components/screens/navigation/quick-rooms.tsx +122 -0
  594. package/template-nqtr-react-vite-muijoy-tauri/src/components/screens/navigation/time.tsx +54 -0
  595. package/template-nqtr-react-vite-muijoy-tauri/src/components/screens/navigation/tools.tsx +102 -0
  596. package/template-nqtr-react-vite-muijoy-tauri/src/components/ui/alert-dialog.tsx +160 -0
  597. package/template-nqtr-react-vite-muijoy-tauri/src/components/ui/aspect-ratio.tsx +22 -0
  598. package/template-nqtr-react-vite-muijoy-tauri/src/components/ui/avatar.tsx +91 -0
  599. package/template-nqtr-react-vite-muijoy-tauri/src/components/ui/breadcrumb.tsx +103 -0
  600. package/template-nqtr-react-vite-muijoy-tauri/src/components/ui/button-group.tsx +78 -0
  601. package/template-nqtr-react-vite-muijoy-tauri/src/components/ui/button.tsx +57 -0
  602. package/template-nqtr-react-vite-muijoy-tauri/src/components/ui/card.tsx +91 -0
  603. package/template-nqtr-react-vite-muijoy-tauri/src/components/ui/carousel.tsx +235 -0
  604. package/template-nqtr-react-vite-muijoy-tauri/src/components/ui/dialog.tsx +148 -0
  605. package/template-nqtr-react-vite-muijoy-tauri/src/components/ui/drawer.tsx +120 -0
  606. package/template-nqtr-react-vite-muijoy-tauri/src/components/ui/field.tsx +229 -0
  607. package/template-nqtr-react-vite-muijoy-tauri/src/components/ui/fullscreen-dialog.tsx +70 -0
  608. package/template-nqtr-react-vite-muijoy-tauri/src/components/ui/image.tsx +20 -0
  609. package/template-nqtr-react-vite-muijoy-tauri/src/components/ui/input-group.tsx +145 -0
  610. package/template-nqtr-react-vite-muijoy-tauri/src/components/ui/input.tsx +20 -0
  611. package/template-nqtr-react-vite-muijoy-tauri/src/components/ui/item.tsx +191 -0
  612. package/template-nqtr-react-vite-muijoy-tauri/src/components/ui/kbd.tsx +26 -0
  613. package/template-nqtr-react-vite-muijoy-tauri/src/components/ui/label.tsx +18 -0
  614. package/template-nqtr-react-vite-muijoy-tauri/src/components/ui/pagination.tsx +118 -0
  615. package/template-nqtr-react-vite-muijoy-tauri/src/components/ui/radio-group.tsx +38 -0
  616. package/template-nqtr-react-vite-muijoy-tauri/src/components/ui/resizable.tsx +40 -0
  617. package/template-nqtr-react-vite-muijoy-tauri/src/components/ui/scroll-area.tsx +51 -0
  618. package/template-nqtr-react-vite-muijoy-tauri/src/components/ui/select.tsx +190 -0
  619. package/template-nqtr-react-vite-muijoy-tauri/src/components/ui/separator.tsx +21 -0
  620. package/template-nqtr-react-vite-muijoy-tauri/src/components/ui/skeleton.tsx +13 -0
  621. package/template-nqtr-react-vite-muijoy-tauri/src/components/ui/slider.tsx +52 -0
  622. package/template-nqtr-react-vite-muijoy-tauri/src/components/ui/sonner.tsx +43 -0
  623. package/template-nqtr-react-vite-muijoy-tauri/src/components/ui/spinner.tsx +16 -0
  624. package/template-nqtr-react-vite-muijoy-tauri/src/components/ui/switch.tsx +32 -0
  625. package/template-nqtr-react-vite-muijoy-tauri/src/components/ui/textarea.tsx +18 -0
  626. package/template-nqtr-react-vite-muijoy-tauri/src/components/ui/toggle.tsx +43 -0
  627. package/template-nqtr-react-vite-muijoy-tauri/src/components/ui/tooltip.tsx +54 -0
  628. package/template-nqtr-react-vite-muijoy-tauri/src/constants.ts +17 -0
  629. package/template-nqtr-react-vite-muijoy-tauri/src/content/activities.tsx +77 -0
  630. package/template-nqtr-react-vite-muijoy-tauri/src/content/characters.ts +15 -0
  631. package/template-nqtr-react-vite-muijoy-tauri/src/content/index.ts +4 -0
  632. package/template-nqtr-react-vite-muijoy-tauri/src/content/labels/sleep.label.ts +60 -0
  633. package/template-nqtr-react-vite-muijoy-tauri/src/content/labels/sleepNapLabels.ts +60 -0
  634. package/template-nqtr-react-vite-muijoy-tauri/src/content/labels/start.label.ts +12 -0
  635. package/template-nqtr-react-vite-muijoy-tauri/src/content/labels/various.label.ts +151 -0
  636. package/template-nqtr-react-vite-muijoy-tauri/src/content/labels/variousActionsLabels.ts +151 -0
  637. package/template-nqtr-react-vite-muijoy-tauri/src/content/locations.tsx +59 -0
  638. package/template-nqtr-react-vite-muijoy-tauri/src/content/maps.tsx +26 -0
  639. package/template-nqtr-react-vite-muijoy-tauri/src/content/quests/alice.quest.tsx +54 -0
  640. package/template-nqtr-react-vite-muijoy-tauri/src/content/rooms.tsx +80 -0
  641. package/template-nqtr-react-vite-muijoy-tauri/src/content/routine.tsx +86 -0
  642. package/template-nqtr-react-vite-muijoy-tauri/src/content/time-data.ts +35 -0
  643. package/template-nqtr-react-vite-muijoy-tauri/src/lib/hooks/hotkeys-hooks.ts +530 -0
  644. package/template-nqtr-react-vite-muijoy-tauri/src/lib/hooks/image-hooks.ts +15 -0
  645. package/template-nqtr-react-vite-muijoy-tauri/src/lib/hooks/language-settings-hooks.ts +61 -0
  646. package/template-nqtr-react-vite-muijoy-tauri/src/lib/hooks/minigame-hooks.ts +55 -0
  647. package/template-nqtr-react-vite-muijoy-tauri/src/lib/hooks/narration-hooks.ts +255 -0
  648. package/template-nqtr-react-vite-muijoy-tauri/src/lib/hooks/navigation-hooks.ts +112 -0
  649. package/template-nqtr-react-vite-muijoy-tauri/src/lib/hooks/network-hooks.ts +34 -0
  650. package/template-nqtr-react-vite-muijoy-tauri/src/lib/hooks/nqtr-hooks.ts +121 -0
  651. package/template-nqtr-react-vite-muijoy-tauri/src/lib/hooks/pause-game-hooks.ts +53 -0
  652. package/template-nqtr-react-vite-muijoy-tauri/src/lib/hooks/props-hooks.ts +30 -0
  653. package/template-nqtr-react-vite-muijoy-tauri/src/lib/hooks/quick-tools-hooks.ts +80 -0
  654. package/template-nqtr-react-vite-muijoy-tauri/src/lib/hooks/quit-hooks.ts +24 -0
  655. package/template-nqtr-react-vite-muijoy-tauri/src/lib/hooks/save-hooks.tsx +203 -0
  656. package/template-nqtr-react-vite-muijoy-tauri/src/lib/i18n.ts +59 -0
  657. package/template-nqtr-react-vite-muijoy-tauri/src/lib/query/activity-query.ts +24 -0
  658. package/template-nqtr-react-vite-muijoy-tauri/src/lib/query/map-query.ts +78 -0
  659. package/template-nqtr-react-vite-muijoy-tauri/src/lib/query/narration-query.ts +182 -0
  660. package/template-nqtr-react-vite-muijoy-tauri/src/lib/query/quest-query.ts +73 -0
  661. package/template-nqtr-react-vite-muijoy-tauri/src/lib/query/room-query.ts +104 -0
  662. package/template-nqtr-react-vite-muijoy-tauri/src/lib/query/save-query.ts +18 -0
  663. package/template-nqtr-react-vite-muijoy-tauri/src/lib/query/settings-query.ts +16 -0
  664. package/template-nqtr-react-vite-muijoy-tauri/src/lib/query/time-query.ts +23 -0
  665. package/template-nqtr-react-vite-muijoy-tauri/src/lib/steam.ts +143 -0
  666. package/template-nqtr-react-vite-muijoy-tauri/src/lib/stores/alert-dialog-store.ts +13 -0
  667. package/template-nqtr-react-vite-muijoy-tauri/src/lib/stores/auto-settings-store.ts +44 -0
  668. package/template-nqtr-react-vite-muijoy-tauri/src/lib/stores/channel-sound-stores.ts +64 -0
  669. package/template-nqtr-react-vite-muijoy-tauri/src/lib/stores/game-status-store.ts +19 -0
  670. package/template-nqtr-react-vite-muijoy-tauri/src/lib/stores/interface-settings-store.ts +49 -0
  671. package/template-nqtr-react-vite-muijoy-tauri/src/lib/stores/master-sound-storage.ts +68 -0
  672. package/template-nqtr-react-vite-muijoy-tauri/src/lib/stores/memo-store.ts +24 -0
  673. package/template-nqtr-react-vite-muijoy-tauri/src/lib/stores/quick-actions-wheel-store.ts +17 -0
  674. package/template-nqtr-react-vite-muijoy-tauri/src/lib/stores/save-menu-pagination-store.ts +24 -0
  675. package/template-nqtr-react-vite-muijoy-tauri/src/lib/stores/search-param-store.ts +20 -0
  676. package/template-nqtr-react-vite-muijoy-tauri/src/lib/stores/skip-settings-store.ts +26 -0
  677. package/template-nqtr-react-vite-muijoy-tauri/src/lib/stores/text-display-settings-store.ts +81 -0
  678. package/template-nqtr-react-vite-muijoy-tauri/src/lib/utils/assets-utility.ts +39 -0
  679. package/template-nqtr-react-vite-muijoy-tauri/src/lib/utils/db-utility.ts +204 -0
  680. package/template-nqtr-react-vite-muijoy-tauri/src/lib/utils/image-utility.ts +13 -0
  681. package/template-nqtr-react-vite-muijoy-tauri/src/lib/utils/save-utility.ts +152 -0
  682. package/template-nqtr-react-vite-muijoy-tauri/src/lib/utils/scroll-utils.ts +24 -0
  683. package/template-nqtr-react-vite-muijoy-tauri/src/lib/utils/ui-utility.ts +13 -0
  684. package/template-nqtr-react-vite-muijoy-tauri/src/lib/utils.ts +6 -0
  685. package/template-nqtr-react-vite-muijoy-tauri/src/locales/en.json +159 -0
  686. package/template-nqtr-react-vite-muijoy-tauri/src/main.tsx +23 -27
  687. package/template-nqtr-react-vite-muijoy-tauri/src/models/Character.ts +1 -1
  688. package/template-nqtr-react-vite-muijoy-tauri/src/models/GameSaveData.ts +1 -1
  689. package/template-nqtr-react-vite-muijoy-tauri/src/models/TimeSlotsImage.ts +3 -1
  690. package/template-nqtr-react-vite-muijoy-tauri/src/models/nqtr/Activity.ts +10 -10
  691. package/template-nqtr-react-vite-muijoy-tauri/src/models/nqtr/Commitment.ts +16 -12
  692. package/template-nqtr-react-vite-muijoy-tauri/src/models/nqtr/Location.ts +9 -9
  693. package/template-nqtr-react-vite-muijoy-tauri/src/models/nqtr/Map.ts +12 -6
  694. package/template-nqtr-react-vite-muijoy-tauri/src/models/nqtr/Quest.ts +7 -2
  695. package/template-nqtr-react-vite-muijoy-tauri/src/models/nqtr/Room.ts +12 -10
  696. package/template-nqtr-react-vite-muijoy-tauri/src/models/nqtr/Stage.ts +9 -3
  697. package/template-nqtr-react-vite-muijoy-tauri/src/models/nqtr/ui-elements.ts +4 -4
  698. package/template-nqtr-react-vite-muijoy-tauri/src/nqtr.d.ts +2 -2
  699. package/template-nqtr-react-vite-muijoy-tauri/src/nqtr.keys.gen.ts +54 -0
  700. package/template-nqtr-react-vite-muijoy-tauri/src/pixi-vn.d.ts +122 -128
  701. package/template-nqtr-react-vite-muijoy-tauri/src/pixi-vn.keys.gen.ts +86 -0
  702. package/template-nqtr-react-vite-muijoy-tauri/src/routeTree.gen.ts +150 -0
  703. package/template-nqtr-react-vite-muijoy-tauri/src/router.tsx +27 -0
  704. package/template-nqtr-react-vite-muijoy-tauri/src/routes/__root.tsx +66 -0
  705. package/template-nqtr-react-vite-muijoy-tauri/src/routes/game/map.tsx +6 -0
  706. package/template-nqtr-react-vite-muijoy-tauri/src/routes/game/narration.tsx +21 -0
  707. package/template-nqtr-react-vite-muijoy-tauri/src/routes/game/navigation.tsx +15 -0
  708. package/template-nqtr-react-vite-muijoy-tauri/src/routes/game.tsx +22 -0
  709. package/template-nqtr-react-vite-muijoy-tauri/src/routes/index.tsx +6 -0
  710. package/template-nqtr-react-vite-muijoy-tauri/src/styles.css +155 -0
  711. package/template-nqtr-react-vite-muijoy-tauri/src-tauri/Cargo.toml +25 -0
  712. package/template-nqtr-react-vite-muijoy-tauri/src-tauri/build.rs +43 -0
  713. package/template-nqtr-react-vite-muijoy-tauri/src-tauri/capabilities/default.json +11 -1
  714. package/template-nqtr-react-vite-muijoy-tauri/src-tauri/src/lib.rs +57 -7
  715. package/template-nqtr-react-vite-muijoy-tauri/src-tauri/src/steam.rs +238 -0
  716. package/template-nqtr-react-vite-muijoy-tauri/src-tauri/tauri.conf.json +18 -5
  717. package/template-nqtr-react-vite-muijoy-tauri/tsconfig.app.json +32 -0
  718. package/template-nqtr-react-vite-muijoy-tauri/tsconfig.json +8 -23
  719. package/template-nqtr-react-vite-muijoy-tauri/tsconfig.node.json +20 -3
  720. package/template-nqtr-react-vite-muijoy-tauri/vite.config.ts +119 -15
  721. package/template-react-vite-muijoy/package-lock.json +16 -12
  722. package/template-react-vite-muijoy/package.json +2 -2
  723. package/template-react-vite-muijoy/src/components/loading.tsx +11 -1
  724. package/template-react-vite-muijoy/src/components/menus/choice-menus.tsx +4 -0
  725. package/template-react-vite-muijoy/src/components/menus/main-menu.tsx +1 -6
  726. package/template-react-vite-muijoy/src/components/menus/save-menu/save-slots.tsx +4 -4
  727. package/template-react-vite-muijoy/src/components/menus/settings/index.tsx +3 -1
  728. package/template-react-vite-muijoy/src/components/menus/settings/menus/history.tsx +9 -2
  729. package/template-react-vite-muijoy/src/components/modals/input-request-dialogues.tsx +1 -1
  730. package/template-react-vite-muijoy/src/components/modals/quick-actions-wheel.tsx +3 -1
  731. package/template-react-vite-muijoy/src/components/providers/alert-dialog-provider.tsx +3 -0
  732. package/template-react-vite-muijoy/src/components/quick-tools.tsx +1 -1
  733. package/template-react-vite-muijoy/src/components/screens/narration/narration-cards.tsx +43 -20
  734. package/template-react-vite-muijoy/src/lib/hooks/hotkeys-hooks.ts +111 -10
  735. package/template-react-vite-muijoy/src/lib/hooks/narration-hooks.ts +7 -1
  736. package/template-react-vite-muijoy/src/lib/query/narration-query.ts +32 -2
  737. package/template-react-vite-muijoy/src/lib/stores/alert-dialog-store.ts +13 -0
  738. package/template-react-vite-muijoy/src/lib/stores/text-display-settings-store.ts +20 -1
  739. package/template-react-vite-muijoy/src/locales/en.json +2 -0
  740. package/template-react-vite-muijoy/src/pixi-vn.keys.gen.ts +76 -3
  741. package/template-react-vite-muijoy/src/routes/__root.tsx +3 -4
  742. package/template-react-vite-muijoy/vite.config.ts +10 -0
  743. package/template-react-vite-muijoy-ink/ink/start.ink +1 -1
  744. package/template-react-vite-muijoy-ink/package-lock.json +24 -20
  745. package/template-react-vite-muijoy-ink/package.json +3 -3
  746. package/template-react-vite-muijoy-ink/src/components/loading.tsx +11 -1
  747. package/template-react-vite-muijoy-ink/src/components/menus/choice-menus.tsx +4 -0
  748. package/template-react-vite-muijoy-ink/src/components/menus/main-menu.tsx +1 -6
  749. package/template-react-vite-muijoy-ink/src/components/menus/save-menu/save-slots.tsx +4 -4
  750. package/template-react-vite-muijoy-ink/src/components/menus/settings/index.tsx +3 -1
  751. package/template-react-vite-muijoy-ink/src/components/menus/settings/menus/history.tsx +9 -2
  752. package/template-react-vite-muijoy-ink/src/components/modals/input-request-dialogues.tsx +1 -1
  753. package/template-react-vite-muijoy-ink/src/components/modals/quick-actions-wheel.tsx +3 -1
  754. package/template-react-vite-muijoy-ink/src/components/providers/alert-dialog-provider.tsx +3 -0
  755. package/template-react-vite-muijoy-ink/src/components/quick-tools.tsx +1 -1
  756. package/template-react-vite-muijoy-ink/src/components/screens/narration/narration-cards.tsx +43 -20
  757. package/template-react-vite-muijoy-ink/src/content/ink/hashtag-commands.ts +5 -3
  758. package/template-react-vite-muijoy-ink/src/content/ink/text-replaces.ts +1 -1
  759. package/template-react-vite-muijoy-ink/src/lib/hooks/hotkeys-hooks.ts +111 -10
  760. package/template-react-vite-muijoy-ink/src/lib/hooks/narration-hooks.ts +7 -1
  761. package/template-react-vite-muijoy-ink/src/lib/query/narration-query.ts +32 -2
  762. package/template-react-vite-muijoy-ink/src/lib/stores/alert-dialog-store.ts +13 -0
  763. package/template-react-vite-muijoy-ink/src/lib/stores/text-display-settings-store.ts +20 -1
  764. package/template-react-vite-muijoy-ink/src/locales/en.json +2 -0
  765. package/template-react-vite-muijoy-ink/src/pixi-vn.keys.gen.ts +73 -0
  766. package/template-react-vite-muijoy-ink/src/routes/__root.tsx +3 -4
  767. package/template-react-vite-muijoy-ink/vite.config.ts +10 -0
  768. package/template-react-vite-muijoy-ink-tauri/ink/start.ink +1 -1
  769. package/template-react-vite-muijoy-ink-tauri/package-lock.json +24 -20
  770. package/template-react-vite-muijoy-ink-tauri/package.json +3 -3
  771. package/template-react-vite-muijoy-ink-tauri/src/components/loading.tsx +11 -1
  772. package/template-react-vite-muijoy-ink-tauri/src/components/menus/choice-menus.tsx +4 -0
  773. package/template-react-vite-muijoy-ink-tauri/src/components/menus/main-menu.tsx +1 -6
  774. package/template-react-vite-muijoy-ink-tauri/src/components/menus/save-menu/save-slots.tsx +4 -4
  775. package/template-react-vite-muijoy-ink-tauri/src/components/menus/settings/index.tsx +3 -1
  776. package/template-react-vite-muijoy-ink-tauri/src/components/menus/settings/menus/history.tsx +9 -2
  777. package/template-react-vite-muijoy-ink-tauri/src/components/modals/input-request-dialogues.tsx +1 -1
  778. package/template-react-vite-muijoy-ink-tauri/src/components/modals/quick-actions-wheel.tsx +3 -1
  779. package/template-react-vite-muijoy-ink-tauri/src/components/providers/alert-dialog-provider.tsx +3 -0
  780. package/template-react-vite-muijoy-ink-tauri/src/components/quick-tools.tsx +1 -1
  781. package/template-react-vite-muijoy-ink-tauri/src/components/screens/narration/narration-cards.tsx +43 -20
  782. package/template-react-vite-muijoy-ink-tauri/src/content/ink/hashtag-commands.ts +5 -3
  783. package/template-react-vite-muijoy-ink-tauri/src/content/ink/text-replaces.ts +1 -1
  784. package/template-react-vite-muijoy-ink-tauri/src/lib/hooks/hotkeys-hooks.ts +111 -10
  785. package/template-react-vite-muijoy-ink-tauri/src/lib/hooks/narration-hooks.ts +7 -1
  786. package/template-react-vite-muijoy-ink-tauri/src/lib/query/narration-query.ts +32 -2
  787. package/template-react-vite-muijoy-ink-tauri/src/lib/stores/alert-dialog-store.ts +13 -0
  788. package/template-react-vite-muijoy-ink-tauri/src/lib/stores/text-display-settings-store.ts +20 -1
  789. package/template-react-vite-muijoy-ink-tauri/src/locales/en.json +2 -0
  790. package/template-react-vite-muijoy-ink-tauri/src/pixi-vn.keys.gen.ts +73 -0
  791. package/template-react-vite-muijoy-ink-tauri/src/routes/__root.tsx +3 -4
  792. package/template-react-vite-muijoy-ink-tauri/vite.config.ts +10 -0
  793. package/template-react-vite-muijoy-tauri/package-lock.json +16 -12
  794. package/template-react-vite-muijoy-tauri/package.json +2 -2
  795. package/template-react-vite-muijoy-tauri/src/components/loading.tsx +11 -1
  796. package/template-react-vite-muijoy-tauri/src/components/menus/choice-menus.tsx +4 -0
  797. package/template-react-vite-muijoy-tauri/src/components/menus/main-menu.tsx +1 -6
  798. package/template-react-vite-muijoy-tauri/src/components/menus/save-menu/save-slots.tsx +4 -4
  799. package/template-react-vite-muijoy-tauri/src/components/menus/settings/index.tsx +3 -1
  800. package/template-react-vite-muijoy-tauri/src/components/menus/settings/menus/history.tsx +9 -2
  801. package/template-react-vite-muijoy-tauri/src/components/modals/input-request-dialogues.tsx +1 -1
  802. package/template-react-vite-muijoy-tauri/src/components/modals/quick-actions-wheel.tsx +3 -1
  803. package/template-react-vite-muijoy-tauri/src/components/providers/alert-dialog-provider.tsx +3 -0
  804. package/template-react-vite-muijoy-tauri/src/components/quick-tools.tsx +1 -1
  805. package/template-react-vite-muijoy-tauri/src/components/screens/narration/narration-cards.tsx +43 -20
  806. package/template-react-vite-muijoy-tauri/src/lib/hooks/hotkeys-hooks.ts +111 -10
  807. package/template-react-vite-muijoy-tauri/src/lib/hooks/narration-hooks.ts +7 -1
  808. package/template-react-vite-muijoy-tauri/src/lib/query/narration-query.ts +32 -2
  809. package/template-react-vite-muijoy-tauri/src/lib/stores/alert-dialog-store.ts +13 -0
  810. package/template-react-vite-muijoy-tauri/src/lib/stores/text-display-settings-store.ts +20 -1
  811. package/template-react-vite-muijoy-tauri/src/locales/en.json +2 -0
  812. package/template-react-vite-muijoy-tauri/src/pixi-vn.keys.gen.ts +76 -3
  813. package/template-react-vite-muijoy-tauri/src/routes/__root.tsx +3 -4
  814. package/template-react-vite-muijoy-tauri/vite.config.ts +10 -0
  815. package/template-nqtr-react-vite-muijoy/.eslintrc.cjs +0 -18
  816. package/template-nqtr-react-vite-muijoy/public/apple-touch-icon.png +0 -0
  817. package/template-nqtr-react-vite-muijoy/public/mask-icon.svg +0 -890
  818. package/template-nqtr-react-vite-muijoy/public/service-worker.js +0 -60
  819. package/template-nqtr-react-vite-muijoy/src/App.css +0 -45
  820. package/template-nqtr-react-vite-muijoy/src/AppRoutes.tsx +0 -77
  821. package/template-nqtr-react-vite-muijoy/src/Home.tsx +0 -48
  822. package/template-nqtr-react-vite-muijoy/src/assets/manifest.ts +0 -220
  823. package/template-nqtr-react-vite-muijoy/src/components/AnimatedDots.tsx +0 -45
  824. package/template-nqtr-react-vite-muijoy/src/components/ChoiceButton.tsx +0 -15
  825. package/template-nqtr-react-vite-muijoy/src/components/GameSaveSlot.tsx +0 -140
  826. package/template-nqtr-react-vite-muijoy/src/components/MenuButton.tsx +0 -37
  827. package/template-nqtr-react-vite-muijoy/src/components/ModalConfirmation.tsx +0 -61
  828. package/template-nqtr-react-vite-muijoy/src/components/ModalDialog.tsx +0 -68
  829. package/template-nqtr-react-vite-muijoy/src/components/NextButton.tsx +0 -53
  830. package/template-nqtr-react-vite-muijoy/src/components/NqtrRoundIconButton.tsx +0 -73
  831. package/template-nqtr-react-vite-muijoy/src/components/ReturnMainMenuButton.tsx +0 -69
  832. package/template-nqtr-react-vite-muijoy/src/components/RoundIconButton.tsx +0 -35
  833. package/template-nqtr-react-vite-muijoy/src/components/SettingButton.tsx +0 -52
  834. package/template-nqtr-react-vite-muijoy/src/components/SliderResizer.tsx +0 -51
  835. package/template-nqtr-react-vite-muijoy/src/components/SoundChannelControl.tsx +0 -45
  836. package/template-nqtr-react-vite-muijoy/src/components/StackOverflow.tsx.tsx +0 -45
  837. package/template-nqtr-react-vite-muijoy/src/components/TextMenuButton.tsx +0 -48
  838. package/template-nqtr-react-vite-muijoy/src/components/TypographyShadow.tsx +0 -19
  839. package/template-nqtr-react-vite-muijoy/src/components/VisibilityButton.tsx +0 -46
  840. package/template-nqtr-react-vite-muijoy/src/constans.ts +0 -28
  841. package/template-nqtr-react-vite-muijoy/src/hooks/motion-hooks.ts +0 -17
  842. package/template-nqtr-react-vite-muijoy/src/hooks/useClosePageDetector.ts +0 -32
  843. package/template-nqtr-react-vite-muijoy/src/hooks/useDebouncedEffect.ts +0 -33
  844. package/template-nqtr-react-vite-muijoy/src/hooks/useGameProps.ts +0 -29
  845. package/template-nqtr-react-vite-muijoy/src/hooks/useInterval.ts +0 -44
  846. package/template-nqtr-react-vite-muijoy/src/hooks/useKeyDetector.ts +0 -19
  847. package/template-nqtr-react-vite-muijoy/src/hooks/useKeyboardDetector.ts +0 -57
  848. package/template-nqtr-react-vite-muijoy/src/hooks/useMinigame.ts +0 -55
  849. package/template-nqtr-react-vite-muijoy/src/hooks/useMyNavigate.ts +0 -19
  850. package/template-nqtr-react-vite-muijoy/src/hooks/useNQTRDetector.tsx +0 -44
  851. package/template-nqtr-react-vite-muijoy/src/hooks/useNarrationFunctions.ts +0 -78
  852. package/template-nqtr-react-vite-muijoy/src/hooks/useNetworkDetector.ts +0 -18
  853. package/template-nqtr-react-vite-muijoy/src/hooks/useQueryInterface.ts +0 -141
  854. package/template-nqtr-react-vite-muijoy/src/hooks/useQueryIsFullModeScreen.ts +0 -10
  855. package/template-nqtr-react-vite-muijoy/src/hooks/useQueryLastSave.ts +0 -11
  856. package/template-nqtr-react-vite-muijoy/src/hooks/useQueryNQTR.ts +0 -217
  857. package/template-nqtr-react-vite-muijoy/src/hooks/useQuerySaves.ts +0 -11
  858. package/template-nqtr-react-vite-muijoy/src/hooks/useSkipAutoDetector.ts +0 -52
  859. package/template-nqtr-react-vite-muijoy/src/hooks/useTimeTracker.ts +0 -48
  860. package/template-nqtr-react-vite-muijoy/src/hooks/useWheelActions.ts +0 -101
  861. package/template-nqtr-react-vite-muijoy/src/i18n.ts +0 -55
  862. package/template-nqtr-react-vite-muijoy/src/index.css +0 -19
  863. package/template-nqtr-react-vite-muijoy/src/labels/index.ts +0 -4
  864. package/template-nqtr-react-vite-muijoy/src/labels/sleepNapLabels.ts +0 -46
  865. package/template-nqtr-react-vite-muijoy/src/labels/startLabel.ts +0 -15
  866. package/template-nqtr-react-vite-muijoy/src/labels/variousActionsLabelKeys.ts +0 -5
  867. package/template-nqtr-react-vite-muijoy/src/labels/variousActionsLabels.ts +0 -141
  868. package/template-nqtr-react-vite-muijoy/src/locales/strings_en.json +0 -98
  869. package/template-nqtr-react-vite-muijoy/src/providers/RootProvider.tsx +0 -20
  870. package/template-nqtr-react-vite-muijoy/src/providers/ThemeProvider.tsx +0 -170
  871. package/template-nqtr-react-vite-muijoy/src/screens/ChoiceMenu.tsx +0 -76
  872. package/template-nqtr-react-vite-muijoy/src/screens/GameSaveScreen.tsx +0 -128
  873. package/template-nqtr-react-vite-muijoy/src/screens/HistoryScreen.tsx +0 -142
  874. package/template-nqtr-react-vite-muijoy/src/screens/LoadingScreen.tsx +0 -24
  875. package/template-nqtr-react-vite-muijoy/src/screens/MainMenu.tsx +0 -111
  876. package/template-nqtr-react-vite-muijoy/src/screens/NarrationScreen.tsx +0 -247
  877. package/template-nqtr-react-vite-muijoy/src/screens/OfflineScreen.tsx +0 -38
  878. package/template-nqtr-react-vite-muijoy/src/screens/QuickTools.tsx +0 -124
  879. package/template-nqtr-react-vite-muijoy/src/screens/Settings.tsx +0 -118
  880. package/template-nqtr-react-vite-muijoy/src/screens/modals/SaveLoadAlert.tsx +0 -106
  881. package/template-nqtr-react-vite-muijoy/src/screens/modals/TextInput.tsx +0 -74
  882. package/template-nqtr-react-vite-muijoy/src/screens/nqtr/MapScreen.tsx +0 -126
  883. package/template-nqtr-react-vite-muijoy/src/screens/nqtr/MemoScreen.tsx +0 -194
  884. package/template-nqtr-react-vite-muijoy/src/screens/nqtr/NqtrQuickTools.tsx +0 -99
  885. package/template-nqtr-react-vite-muijoy/src/screens/nqtr/QuickActivities.tsx +0 -48
  886. package/template-nqtr-react-vite-muijoy/src/screens/nqtr/QuickRooms.tsx +0 -97
  887. package/template-nqtr-react-vite-muijoy/src/screens/nqtr/TimeScreen.tsx +0 -96
  888. package/template-nqtr-react-vite-muijoy/src/screens/settings/AutoSettingToggle.tsx +0 -24
  889. package/template-nqtr-react-vite-muijoy/src/screens/settings/DialoguesSettings.tsx +0 -90
  890. package/template-nqtr-react-vite-muijoy/src/screens/settings/DownloadFileToTranslateSettingButton.tsx +0 -32
  891. package/template-nqtr-react-vite-muijoy/src/screens/settings/FullScreenSettings.tsx +0 -46
  892. package/template-nqtr-react-vite-muijoy/src/screens/settings/HideInterfaceSettingToggle.tsx +0 -34
  893. package/template-nqtr-react-vite-muijoy/src/screens/settings/OpenHistorySettingButton.tsx +0 -40
  894. package/template-nqtr-react-vite-muijoy/src/screens/settings/SaveLoadSettingButtons.tsx +0 -114
  895. package/template-nqtr-react-vite-muijoy/src/screens/settings/SkipSettingToggle.tsx +0 -34
  896. package/template-nqtr-react-vite-muijoy/src/screens/settings/SoundSettings.tsx +0 -51
  897. package/template-nqtr-react-vite-muijoy/src/screens/settings/ThemeSettings.tsx +0 -112
  898. package/template-nqtr-react-vite-muijoy/src/stores/createChannelSoundStore.ts +0 -47
  899. package/template-nqtr-react-vite-muijoy/src/stores/useAutoInfoStore.ts +0 -33
  900. package/template-nqtr-react-vite-muijoy/src/stores/useDialogueCardStore.ts +0 -36
  901. package/template-nqtr-react-vite-muijoy/src/stores/useGameSaveScreenStore.ts +0 -112
  902. package/template-nqtr-react-vite-muijoy/src/stores/useHistoryScreenStore.ts +0 -23
  903. package/template-nqtr-react-vite-muijoy/src/stores/useInterfaceStore.ts +0 -28
  904. package/template-nqtr-react-vite-muijoy/src/stores/useMasterSoundStore.ts +0 -38
  905. package/template-nqtr-react-vite-muijoy/src/stores/useMemoScreenStore.ts +0 -23
  906. package/template-nqtr-react-vite-muijoy/src/stores/useNetworkStore.ts +0 -20
  907. package/template-nqtr-react-vite-muijoy/src/stores/useNqtrScreenStore.ts +0 -12
  908. package/template-nqtr-react-vite-muijoy/src/stores/useSettingsScreenStore.ts +0 -23
  909. package/template-nqtr-react-vite-muijoy/src/stores/useSkipStore.ts +0 -27
  910. package/template-nqtr-react-vite-muijoy/src/stores/useStepStore.ts +0 -32
  911. package/template-nqtr-react-vite-muijoy/src/stores/useTypewriterStore.ts +0 -41
  912. package/template-nqtr-react-vite-muijoy/src/utils/assets-utility.ts +0 -33
  913. package/template-nqtr-react-vite-muijoy/src/utils/image-utility.ts +0 -13
  914. package/template-nqtr-react-vite-muijoy/src/utils/indexedDB-utility.ts +0 -196
  915. package/template-nqtr-react-vite-muijoy/src/utils/nqtr-utility.ts +0 -22
  916. package/template-nqtr-react-vite-muijoy/src/utils/save-utility.ts +0 -140
  917. package/template-nqtr-react-vite-muijoy/src/values/activities.tsx +0 -106
  918. package/template-nqtr-react-vite-muijoy/src/values/characters.ts +0 -15
  919. package/template-nqtr-react-vite-muijoy/src/values/index.ts +0 -6
  920. package/template-nqtr-react-vite-muijoy/src/values/locations.tsx +0 -60
  921. package/template-nqtr-react-vite-muijoy/src/values/maps.tsx +0 -26
  922. package/template-nqtr-react-vite-muijoy/src/values/quests/aliceQuest.tsx +0 -78
  923. package/template-nqtr-react-vite-muijoy/src/values/quests/index.ts +0 -1
  924. package/template-nqtr-react-vite-muijoy/src/values/rooms.tsx +0 -79
  925. package/template-nqtr-react-vite-muijoy/src/values/routine.tsx +0 -87
  926. package/template-nqtr-react-vite-muijoy-ink/.eslintrc.cjs +0 -18
  927. package/template-nqtr-react-vite-muijoy-ink/public/apple-touch-icon.png +0 -0
  928. package/template-nqtr-react-vite-muijoy-ink/public/mask-icon.svg +0 -890
  929. package/template-nqtr-react-vite-muijoy-ink/public/service-worker.js +0 -60
  930. package/template-nqtr-react-vite-muijoy-ink/src/App.css +0 -45
  931. package/template-nqtr-react-vite-muijoy-ink/src/AppRoutes.tsx +0 -77
  932. package/template-nqtr-react-vite-muijoy-ink/src/Home.tsx +0 -50
  933. package/template-nqtr-react-vite-muijoy-ink/src/assets/manifest.ts +0 -220
  934. package/template-nqtr-react-vite-muijoy-ink/src/components/AnimatedDots.tsx +0 -45
  935. package/template-nqtr-react-vite-muijoy-ink/src/components/ChoiceButton.tsx +0 -15
  936. package/template-nqtr-react-vite-muijoy-ink/src/components/GameSaveSlot.tsx +0 -140
  937. package/template-nqtr-react-vite-muijoy-ink/src/components/MenuButton.tsx +0 -37
  938. package/template-nqtr-react-vite-muijoy-ink/src/components/ModalConfirmation.tsx +0 -61
  939. package/template-nqtr-react-vite-muijoy-ink/src/components/ModalDialog.tsx +0 -68
  940. package/template-nqtr-react-vite-muijoy-ink/src/components/NextButton.tsx +0 -53
  941. package/template-nqtr-react-vite-muijoy-ink/src/components/NqtrRoundIconButton.tsx +0 -73
  942. package/template-nqtr-react-vite-muijoy-ink/src/components/ReturnMainMenuButton.tsx +0 -69
  943. package/template-nqtr-react-vite-muijoy-ink/src/components/RoundIconButton.tsx +0 -35
  944. package/template-nqtr-react-vite-muijoy-ink/src/components/SettingButton.tsx +0 -52
  945. package/template-nqtr-react-vite-muijoy-ink/src/components/SliderResizer.tsx +0 -51
  946. package/template-nqtr-react-vite-muijoy-ink/src/components/SoundChannelControl.tsx +0 -45
  947. package/template-nqtr-react-vite-muijoy-ink/src/components/StackOverflow.tsx.tsx +0 -45
  948. package/template-nqtr-react-vite-muijoy-ink/src/components/TextMenuButton.tsx +0 -48
  949. package/template-nqtr-react-vite-muijoy-ink/src/components/TypographyShadow.tsx +0 -19
  950. package/template-nqtr-react-vite-muijoy-ink/src/components/VisibilityButton.tsx +0 -46
  951. package/template-nqtr-react-vite-muijoy-ink/src/constans.ts +0 -28
  952. package/template-nqtr-react-vite-muijoy-ink/src/hooks/motion-hooks.ts +0 -17
  953. package/template-nqtr-react-vite-muijoy-ink/src/hooks/useClosePageDetector.ts +0 -32
  954. package/template-nqtr-react-vite-muijoy-ink/src/hooks/useDebouncedEffect.ts +0 -33
  955. package/template-nqtr-react-vite-muijoy-ink/src/hooks/useGameProps.ts +0 -29
  956. package/template-nqtr-react-vite-muijoy-ink/src/hooks/useInkInitialization.tsx +0 -12
  957. package/template-nqtr-react-vite-muijoy-ink/src/hooks/useInterval.ts +0 -44
  958. package/template-nqtr-react-vite-muijoy-ink/src/hooks/useKeyDetector.ts +0 -19
  959. package/template-nqtr-react-vite-muijoy-ink/src/hooks/useKeyboardDetector.ts +0 -57
  960. package/template-nqtr-react-vite-muijoy-ink/src/hooks/useMinigame.ts +0 -55
  961. package/template-nqtr-react-vite-muijoy-ink/src/hooks/useMyNavigate.ts +0 -19
  962. package/template-nqtr-react-vite-muijoy-ink/src/hooks/useNQTRDetector.tsx +0 -44
  963. package/template-nqtr-react-vite-muijoy-ink/src/hooks/useNarrationFunctions.ts +0 -78
  964. package/template-nqtr-react-vite-muijoy-ink/src/hooks/useNetworkDetector.ts +0 -18
  965. package/template-nqtr-react-vite-muijoy-ink/src/hooks/useQueryInterface.ts +0 -141
  966. package/template-nqtr-react-vite-muijoy-ink/src/hooks/useQueryIsFullModeScreen.ts +0 -10
  967. package/template-nqtr-react-vite-muijoy-ink/src/hooks/useQueryLastSave.ts +0 -11
  968. package/template-nqtr-react-vite-muijoy-ink/src/hooks/useQueryNQTR.ts +0 -217
  969. package/template-nqtr-react-vite-muijoy-ink/src/hooks/useQuerySaves.ts +0 -11
  970. package/template-nqtr-react-vite-muijoy-ink/src/hooks/useSkipAutoDetector.ts +0 -52
  971. package/template-nqtr-react-vite-muijoy-ink/src/hooks/useTimeTracker.ts +0 -48
  972. package/template-nqtr-react-vite-muijoy-ink/src/hooks/useWheelActions.ts +0 -101
  973. package/template-nqtr-react-vite-muijoy-ink/src/i18n.ts +0 -83
  974. package/template-nqtr-react-vite-muijoy-ink/src/index.css +0 -19
  975. package/template-nqtr-react-vite-muijoy-ink/src/ink/start.ink +0 -7
  976. package/template-nqtr-react-vite-muijoy-ink/src/ink/variousActionsLabels.ink +0 -68
  977. package/template-nqtr-react-vite-muijoy-ink/src/ink.d.ts +0 -4
  978. package/template-nqtr-react-vite-muijoy-ink/src/labels/index.ts +0 -2
  979. package/template-nqtr-react-vite-muijoy-ink/src/labels/sleepNapLabels.ts +0 -46
  980. package/template-nqtr-react-vite-muijoy-ink/src/labels/variousActionsLabelKeys.ts +0 -5
  981. package/template-nqtr-react-vite-muijoy-ink/src/locales/strings_en.json +0 -98
  982. package/template-nqtr-react-vite-muijoy-ink/src/providers/RootProvider.tsx +0 -20
  983. package/template-nqtr-react-vite-muijoy-ink/src/providers/ThemeProvider.tsx +0 -170
  984. package/template-nqtr-react-vite-muijoy-ink/src/screens/ChoiceMenu.tsx +0 -76
  985. package/template-nqtr-react-vite-muijoy-ink/src/screens/GameSaveScreen.tsx +0 -128
  986. package/template-nqtr-react-vite-muijoy-ink/src/screens/HistoryScreen.tsx +0 -142
  987. package/template-nqtr-react-vite-muijoy-ink/src/screens/LoadingScreen.tsx +0 -24
  988. package/template-nqtr-react-vite-muijoy-ink/src/screens/MainMenu.tsx +0 -110
  989. package/template-nqtr-react-vite-muijoy-ink/src/screens/NarrationScreen.tsx +0 -247
  990. package/template-nqtr-react-vite-muijoy-ink/src/screens/OfflineScreen.tsx +0 -38
  991. package/template-nqtr-react-vite-muijoy-ink/src/screens/QuickTools.tsx +0 -124
  992. package/template-nqtr-react-vite-muijoy-ink/src/screens/Settings.tsx +0 -118
  993. package/template-nqtr-react-vite-muijoy-ink/src/screens/modals/SaveLoadAlert.tsx +0 -106
  994. package/template-nqtr-react-vite-muijoy-ink/src/screens/modals/TextInput.tsx +0 -74
  995. package/template-nqtr-react-vite-muijoy-ink/src/screens/nqtr/MapScreen.tsx +0 -126
  996. package/template-nqtr-react-vite-muijoy-ink/src/screens/nqtr/MemoScreen.tsx +0 -194
  997. package/template-nqtr-react-vite-muijoy-ink/src/screens/nqtr/NqtrQuickTools.tsx +0 -99
  998. package/template-nqtr-react-vite-muijoy-ink/src/screens/nqtr/QuickActivities.tsx +0 -48
  999. package/template-nqtr-react-vite-muijoy-ink/src/screens/nqtr/QuickRooms.tsx +0 -97
  1000. package/template-nqtr-react-vite-muijoy-ink/src/screens/nqtr/TimeScreen.tsx +0 -96
  1001. package/template-nqtr-react-vite-muijoy-ink/src/screens/settings/AutoSettingToggle.tsx +0 -24
  1002. package/template-nqtr-react-vite-muijoy-ink/src/screens/settings/DialoguesSettings.tsx +0 -90
  1003. package/template-nqtr-react-vite-muijoy-ink/src/screens/settings/DownloadFileToTranslateSettingButton.tsx +0 -32
  1004. package/template-nqtr-react-vite-muijoy-ink/src/screens/settings/FullScreenSettings.tsx +0 -46
  1005. package/template-nqtr-react-vite-muijoy-ink/src/screens/settings/HideInterfaceSettingToggle.tsx +0 -34
  1006. package/template-nqtr-react-vite-muijoy-ink/src/screens/settings/OpenHistorySettingButton.tsx +0 -40
  1007. package/template-nqtr-react-vite-muijoy-ink/src/screens/settings/SaveLoadSettingButtons.tsx +0 -114
  1008. package/template-nqtr-react-vite-muijoy-ink/src/screens/settings/SkipSettingToggle.tsx +0 -34
  1009. package/template-nqtr-react-vite-muijoy-ink/src/screens/settings/SoundSettings.tsx +0 -51
  1010. package/template-nqtr-react-vite-muijoy-ink/src/screens/settings/ThemeSettings.tsx +0 -112
  1011. package/template-nqtr-react-vite-muijoy-ink/src/stores/createChannelSoundStore.ts +0 -47
  1012. package/template-nqtr-react-vite-muijoy-ink/src/stores/useAutoInfoStore.ts +0 -33
  1013. package/template-nqtr-react-vite-muijoy-ink/src/stores/useDialogueCardStore.ts +0 -36
  1014. package/template-nqtr-react-vite-muijoy-ink/src/stores/useGameSaveScreenStore.ts +0 -112
  1015. package/template-nqtr-react-vite-muijoy-ink/src/stores/useHistoryScreenStore.ts +0 -23
  1016. package/template-nqtr-react-vite-muijoy-ink/src/stores/useInterfaceStore.ts +0 -28
  1017. package/template-nqtr-react-vite-muijoy-ink/src/stores/useMasterSoundStore.ts +0 -38
  1018. package/template-nqtr-react-vite-muijoy-ink/src/stores/useMemoScreenStore.ts +0 -23
  1019. package/template-nqtr-react-vite-muijoy-ink/src/stores/useNetworkStore.ts +0 -20
  1020. package/template-nqtr-react-vite-muijoy-ink/src/stores/useNqtrScreenStore.ts +0 -12
  1021. package/template-nqtr-react-vite-muijoy-ink/src/stores/useSettingsScreenStore.ts +0 -23
  1022. package/template-nqtr-react-vite-muijoy-ink/src/stores/useSkipStore.ts +0 -27
  1023. package/template-nqtr-react-vite-muijoy-ink/src/stores/useStepStore.ts +0 -32
  1024. package/template-nqtr-react-vite-muijoy-ink/src/stores/useTypewriterStore.ts +0 -41
  1025. package/template-nqtr-react-vite-muijoy-ink/src/utils/assets-utility.ts +0 -33
  1026. package/template-nqtr-react-vite-muijoy-ink/src/utils/image-utility.ts +0 -13
  1027. package/template-nqtr-react-vite-muijoy-ink/src/utils/indexedDB-utility.ts +0 -196
  1028. package/template-nqtr-react-vite-muijoy-ink/src/utils/ink-utility.ts +0 -53
  1029. package/template-nqtr-react-vite-muijoy-ink/src/utils/nqtr-utility.ts +0 -22
  1030. package/template-nqtr-react-vite-muijoy-ink/src/utils/save-utility.ts +0 -140
  1031. package/template-nqtr-react-vite-muijoy-ink/src/values/activities.tsx +0 -106
  1032. package/template-nqtr-react-vite-muijoy-ink/src/values/characters.ts +0 -15
  1033. package/template-nqtr-react-vite-muijoy-ink/src/values/index.ts +0 -6
  1034. package/template-nqtr-react-vite-muijoy-ink/src/values/locations.tsx +0 -60
  1035. package/template-nqtr-react-vite-muijoy-ink/src/values/maps.tsx +0 -26
  1036. package/template-nqtr-react-vite-muijoy-ink/src/values/quests/aliceQuest.tsx +0 -78
  1037. package/template-nqtr-react-vite-muijoy-ink/src/values/quests/index.ts +0 -1
  1038. package/template-nqtr-react-vite-muijoy-ink/src/values/rooms.tsx +0 -79
  1039. package/template-nqtr-react-vite-muijoy-ink/src/values/routine.tsx +0 -86
  1040. package/template-nqtr-react-vite-muijoy-ink-tauri/.eslintrc.cjs +0 -18
  1041. package/template-nqtr-react-vite-muijoy-ink-tauri/_github/workflows/tauri.yml +0 -86
  1042. package/template-nqtr-react-vite-muijoy-ink-tauri/public/apple-touch-icon.png +0 -0
  1043. package/template-nqtr-react-vite-muijoy-ink-tauri/public/mask-icon.svg +0 -890
  1044. package/template-nqtr-react-vite-muijoy-ink-tauri/public/service-worker.js +0 -60
  1045. package/template-nqtr-react-vite-muijoy-ink-tauri/src/App.css +0 -45
  1046. package/template-nqtr-react-vite-muijoy-ink-tauri/src/AppRoutes.tsx +0 -77
  1047. package/template-nqtr-react-vite-muijoy-ink-tauri/src/Home.tsx +0 -50
  1048. package/template-nqtr-react-vite-muijoy-ink-tauri/src/assets/manifest.ts +0 -220
  1049. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/AnimatedDots.tsx +0 -45
  1050. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/ChoiceButton.tsx +0 -15
  1051. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/GameSaveSlot.tsx +0 -140
  1052. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/MenuButton.tsx +0 -37
  1053. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/ModalConfirmation.tsx +0 -61
  1054. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/ModalDialog.tsx +0 -68
  1055. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/NextButton.tsx +0 -53
  1056. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/NqtrRoundIconButton.tsx +0 -73
  1057. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/ReturnMainMenuButton.tsx +0 -69
  1058. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/RoundIconButton.tsx +0 -35
  1059. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/SettingButton.tsx +0 -52
  1060. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/SliderResizer.tsx +0 -51
  1061. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/SoundChannelControl.tsx +0 -45
  1062. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/StackOverflow.tsx.tsx +0 -45
  1063. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/TextMenuButton.tsx +0 -48
  1064. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/TypographyShadow.tsx +0 -19
  1065. package/template-nqtr-react-vite-muijoy-ink-tauri/src/components/VisibilityButton.tsx +0 -46
  1066. package/template-nqtr-react-vite-muijoy-ink-tauri/src/constans.ts +0 -28
  1067. package/template-nqtr-react-vite-muijoy-ink-tauri/src/hooks/motion-hooks.ts +0 -17
  1068. package/template-nqtr-react-vite-muijoy-ink-tauri/src/hooks/useClosePageDetector.ts +0 -32
  1069. package/template-nqtr-react-vite-muijoy-ink-tauri/src/hooks/useDebouncedEffect.ts +0 -33
  1070. package/template-nqtr-react-vite-muijoy-ink-tauri/src/hooks/useGameProps.ts +0 -29
  1071. package/template-nqtr-react-vite-muijoy-ink-tauri/src/hooks/useInkInitialization.tsx +0 -12
  1072. package/template-nqtr-react-vite-muijoy-ink-tauri/src/hooks/useInterval.ts +0 -44
  1073. package/template-nqtr-react-vite-muijoy-ink-tauri/src/hooks/useKeyDetector.ts +0 -19
  1074. package/template-nqtr-react-vite-muijoy-ink-tauri/src/hooks/useKeyboardDetector.ts +0 -57
  1075. package/template-nqtr-react-vite-muijoy-ink-tauri/src/hooks/useMinigame.ts +0 -55
  1076. package/template-nqtr-react-vite-muijoy-ink-tauri/src/hooks/useMyNavigate.ts +0 -19
  1077. package/template-nqtr-react-vite-muijoy-ink-tauri/src/hooks/useNQTRDetector.tsx +0 -44
  1078. package/template-nqtr-react-vite-muijoy-ink-tauri/src/hooks/useNarrationFunctions.ts +0 -78
  1079. package/template-nqtr-react-vite-muijoy-ink-tauri/src/hooks/useNetworkDetector.ts +0 -18
  1080. package/template-nqtr-react-vite-muijoy-ink-tauri/src/hooks/useQueryInterface.ts +0 -141
  1081. package/template-nqtr-react-vite-muijoy-ink-tauri/src/hooks/useQueryIsFullModeScreen.ts +0 -16
  1082. package/template-nqtr-react-vite-muijoy-ink-tauri/src/hooks/useQueryLastSave.ts +0 -11
  1083. package/template-nqtr-react-vite-muijoy-ink-tauri/src/hooks/useQueryNQTR.ts +0 -217
  1084. package/template-nqtr-react-vite-muijoy-ink-tauri/src/hooks/useQuerySaves.ts +0 -11
  1085. package/template-nqtr-react-vite-muijoy-ink-tauri/src/hooks/useSkipAutoDetector.ts +0 -52
  1086. package/template-nqtr-react-vite-muijoy-ink-tauri/src/hooks/useTimeTracker.ts +0 -48
  1087. package/template-nqtr-react-vite-muijoy-ink-tauri/src/hooks/useWheelActions.ts +0 -101
  1088. package/template-nqtr-react-vite-muijoy-ink-tauri/src/i18n.ts +0 -83
  1089. package/template-nqtr-react-vite-muijoy-ink-tauri/src/index.css +0 -19
  1090. package/template-nqtr-react-vite-muijoy-ink-tauri/src/ink/start.ink +0 -7
  1091. package/template-nqtr-react-vite-muijoy-ink-tauri/src/ink/variousActionsLabels.ink +0 -68
  1092. package/template-nqtr-react-vite-muijoy-ink-tauri/src/ink.d.ts +0 -4
  1093. package/template-nqtr-react-vite-muijoy-ink-tauri/src/labels/index.ts +0 -2
  1094. package/template-nqtr-react-vite-muijoy-ink-tauri/src/labels/sleepNapLabels.ts +0 -46
  1095. package/template-nqtr-react-vite-muijoy-ink-tauri/src/labels/variousActionsLabelKeys.ts +0 -5
  1096. package/template-nqtr-react-vite-muijoy-ink-tauri/src/locales/strings_en.json +0 -99
  1097. package/template-nqtr-react-vite-muijoy-ink-tauri/src/providers/RootProvider.tsx +0 -20
  1098. package/template-nqtr-react-vite-muijoy-ink-tauri/src/providers/ThemeProvider.tsx +0 -170
  1099. package/template-nqtr-react-vite-muijoy-ink-tauri/src/screens/ChoiceMenu.tsx +0 -76
  1100. package/template-nqtr-react-vite-muijoy-ink-tauri/src/screens/GameSaveScreen.tsx +0 -128
  1101. package/template-nqtr-react-vite-muijoy-ink-tauri/src/screens/HistoryScreen.tsx +0 -142
  1102. package/template-nqtr-react-vite-muijoy-ink-tauri/src/screens/LoadingScreen.tsx +0 -24
  1103. package/template-nqtr-react-vite-muijoy-ink-tauri/src/screens/MainMenu.tsx +0 -115
  1104. package/template-nqtr-react-vite-muijoy-ink-tauri/src/screens/NarrationScreen.tsx +0 -247
  1105. package/template-nqtr-react-vite-muijoy-ink-tauri/src/screens/OfflineScreen.tsx +0 -38
  1106. package/template-nqtr-react-vite-muijoy-ink-tauri/src/screens/QuickTools.tsx +0 -124
  1107. package/template-nqtr-react-vite-muijoy-ink-tauri/src/screens/Settings.tsx +0 -118
  1108. package/template-nqtr-react-vite-muijoy-ink-tauri/src/screens/modals/SaveLoadAlert.tsx +0 -106
  1109. package/template-nqtr-react-vite-muijoy-ink-tauri/src/screens/modals/TextInput.tsx +0 -74
  1110. package/template-nqtr-react-vite-muijoy-ink-tauri/src/screens/nqtr/MapScreen.tsx +0 -126
  1111. package/template-nqtr-react-vite-muijoy-ink-tauri/src/screens/nqtr/MemoScreen.tsx +0 -194
  1112. package/template-nqtr-react-vite-muijoy-ink-tauri/src/screens/nqtr/NqtrQuickTools.tsx +0 -99
  1113. package/template-nqtr-react-vite-muijoy-ink-tauri/src/screens/nqtr/QuickActivities.tsx +0 -48
  1114. package/template-nqtr-react-vite-muijoy-ink-tauri/src/screens/nqtr/QuickRooms.tsx +0 -97
  1115. package/template-nqtr-react-vite-muijoy-ink-tauri/src/screens/nqtr/TimeScreen.tsx +0 -96
  1116. package/template-nqtr-react-vite-muijoy-ink-tauri/src/screens/settings/AutoSettingToggle.tsx +0 -24
  1117. package/template-nqtr-react-vite-muijoy-ink-tauri/src/screens/settings/DialoguesSettings.tsx +0 -90
  1118. package/template-nqtr-react-vite-muijoy-ink-tauri/src/screens/settings/DownloadFileToTranslateSettingButton.tsx +0 -32
  1119. package/template-nqtr-react-vite-muijoy-ink-tauri/src/screens/settings/FullScreenSettings.tsx +0 -55
  1120. package/template-nqtr-react-vite-muijoy-ink-tauri/src/screens/settings/HideInterfaceSettingToggle.tsx +0 -34
  1121. package/template-nqtr-react-vite-muijoy-ink-tauri/src/screens/settings/OpenHistorySettingButton.tsx +0 -40
  1122. package/template-nqtr-react-vite-muijoy-ink-tauri/src/screens/settings/SaveLoadSettingButtons.tsx +0 -114
  1123. package/template-nqtr-react-vite-muijoy-ink-tauri/src/screens/settings/SkipSettingToggle.tsx +0 -34
  1124. package/template-nqtr-react-vite-muijoy-ink-tauri/src/screens/settings/SoundSettings.tsx +0 -51
  1125. package/template-nqtr-react-vite-muijoy-ink-tauri/src/screens/settings/ThemeSettings.tsx +0 -112
  1126. package/template-nqtr-react-vite-muijoy-ink-tauri/src/stores/createChannelSoundStore.ts +0 -47
  1127. package/template-nqtr-react-vite-muijoy-ink-tauri/src/stores/useAutoInfoStore.ts +0 -33
  1128. package/template-nqtr-react-vite-muijoy-ink-tauri/src/stores/useDialogueCardStore.ts +0 -36
  1129. package/template-nqtr-react-vite-muijoy-ink-tauri/src/stores/useGameSaveScreenStore.ts +0 -112
  1130. package/template-nqtr-react-vite-muijoy-ink-tauri/src/stores/useHistoryScreenStore.ts +0 -23
  1131. package/template-nqtr-react-vite-muijoy-ink-tauri/src/stores/useInterfaceStore.ts +0 -28
  1132. package/template-nqtr-react-vite-muijoy-ink-tauri/src/stores/useMasterSoundStore.ts +0 -38
  1133. package/template-nqtr-react-vite-muijoy-ink-tauri/src/stores/useMemoScreenStore.ts +0 -23
  1134. package/template-nqtr-react-vite-muijoy-ink-tauri/src/stores/useNetworkStore.ts +0 -20
  1135. package/template-nqtr-react-vite-muijoy-ink-tauri/src/stores/useNqtrScreenStore.ts +0 -12
  1136. package/template-nqtr-react-vite-muijoy-ink-tauri/src/stores/useSettingsScreenStore.ts +0 -23
  1137. package/template-nqtr-react-vite-muijoy-ink-tauri/src/stores/useSkipStore.ts +0 -27
  1138. package/template-nqtr-react-vite-muijoy-ink-tauri/src/stores/useStepStore.ts +0 -32
  1139. package/template-nqtr-react-vite-muijoy-ink-tauri/src/stores/useTypewriterStore.ts +0 -41
  1140. package/template-nqtr-react-vite-muijoy-ink-tauri/src/utils/assets-utility.ts +0 -33
  1141. package/template-nqtr-react-vite-muijoy-ink-tauri/src/utils/image-utility.ts +0 -13
  1142. package/template-nqtr-react-vite-muijoy-ink-tauri/src/utils/indexedDB-utility.ts +0 -196
  1143. package/template-nqtr-react-vite-muijoy-ink-tauri/src/utils/ink-utility.ts +0 -53
  1144. package/template-nqtr-react-vite-muijoy-ink-tauri/src/utils/nqtr-utility.ts +0 -22
  1145. package/template-nqtr-react-vite-muijoy-ink-tauri/src/utils/save-utility.ts +0 -140
  1146. package/template-nqtr-react-vite-muijoy-ink-tauri/src/values/activities.tsx +0 -106
  1147. package/template-nqtr-react-vite-muijoy-ink-tauri/src/values/characters.ts +0 -15
  1148. package/template-nqtr-react-vite-muijoy-ink-tauri/src/values/index.ts +0 -6
  1149. package/template-nqtr-react-vite-muijoy-ink-tauri/src/values/locations.tsx +0 -60
  1150. package/template-nqtr-react-vite-muijoy-ink-tauri/src/values/maps.tsx +0 -26
  1151. package/template-nqtr-react-vite-muijoy-ink-tauri/src/values/quests/aliceQuest.tsx +0 -78
  1152. package/template-nqtr-react-vite-muijoy-ink-tauri/src/values/quests/index.ts +0 -1
  1153. package/template-nqtr-react-vite-muijoy-ink-tauri/src/values/rooms.tsx +0 -79
  1154. package/template-nqtr-react-vite-muijoy-ink-tauri/src/values/routine.tsx +0 -86
  1155. package/template-nqtr-react-vite-muijoy-tauri/.eslintrc.cjs +0 -18
  1156. package/template-nqtr-react-vite-muijoy-tauri/_github/workflows/tauri.yml +0 -86
  1157. package/template-nqtr-react-vite-muijoy-tauri/public/apple-touch-icon.png +0 -0
  1158. package/template-nqtr-react-vite-muijoy-tauri/public/mask-icon.svg +0 -890
  1159. package/template-nqtr-react-vite-muijoy-tauri/public/service-worker.js +0 -60
  1160. package/template-nqtr-react-vite-muijoy-tauri/src/App.css +0 -45
  1161. package/template-nqtr-react-vite-muijoy-tauri/src/AppRoutes.tsx +0 -77
  1162. package/template-nqtr-react-vite-muijoy-tauri/src/Home.tsx +0 -48
  1163. package/template-nqtr-react-vite-muijoy-tauri/src/assets/manifest.ts +0 -220
  1164. package/template-nqtr-react-vite-muijoy-tauri/src/components/AnimatedDots.tsx +0 -45
  1165. package/template-nqtr-react-vite-muijoy-tauri/src/components/ChoiceButton.tsx +0 -15
  1166. package/template-nqtr-react-vite-muijoy-tauri/src/components/GameSaveSlot.tsx +0 -140
  1167. package/template-nqtr-react-vite-muijoy-tauri/src/components/MenuButton.tsx +0 -37
  1168. package/template-nqtr-react-vite-muijoy-tauri/src/components/ModalConfirmation.tsx +0 -61
  1169. package/template-nqtr-react-vite-muijoy-tauri/src/components/ModalDialog.tsx +0 -68
  1170. package/template-nqtr-react-vite-muijoy-tauri/src/components/NextButton.tsx +0 -53
  1171. package/template-nqtr-react-vite-muijoy-tauri/src/components/NqtrRoundIconButton.tsx +0 -73
  1172. package/template-nqtr-react-vite-muijoy-tauri/src/components/ReturnMainMenuButton.tsx +0 -69
  1173. package/template-nqtr-react-vite-muijoy-tauri/src/components/RoundIconButton.tsx +0 -35
  1174. package/template-nqtr-react-vite-muijoy-tauri/src/components/SettingButton.tsx +0 -52
  1175. package/template-nqtr-react-vite-muijoy-tauri/src/components/SliderResizer.tsx +0 -51
  1176. package/template-nqtr-react-vite-muijoy-tauri/src/components/SoundChannelControl.tsx +0 -45
  1177. package/template-nqtr-react-vite-muijoy-tauri/src/components/StackOverflow.tsx.tsx +0 -45
  1178. package/template-nqtr-react-vite-muijoy-tauri/src/components/TextMenuButton.tsx +0 -48
  1179. package/template-nqtr-react-vite-muijoy-tauri/src/components/TypographyShadow.tsx +0 -19
  1180. package/template-nqtr-react-vite-muijoy-tauri/src/components/VisibilityButton.tsx +0 -46
  1181. package/template-nqtr-react-vite-muijoy-tauri/src/constans.ts +0 -28
  1182. package/template-nqtr-react-vite-muijoy-tauri/src/hooks/motion-hooks.ts +0 -17
  1183. package/template-nqtr-react-vite-muijoy-tauri/src/hooks/useClosePageDetector.ts +0 -32
  1184. package/template-nqtr-react-vite-muijoy-tauri/src/hooks/useDebouncedEffect.ts +0 -33
  1185. package/template-nqtr-react-vite-muijoy-tauri/src/hooks/useGameProps.ts +0 -29
  1186. package/template-nqtr-react-vite-muijoy-tauri/src/hooks/useInterval.ts +0 -44
  1187. package/template-nqtr-react-vite-muijoy-tauri/src/hooks/useKeyDetector.ts +0 -19
  1188. package/template-nqtr-react-vite-muijoy-tauri/src/hooks/useKeyboardDetector.ts +0 -57
  1189. package/template-nqtr-react-vite-muijoy-tauri/src/hooks/useMinigame.ts +0 -55
  1190. package/template-nqtr-react-vite-muijoy-tauri/src/hooks/useMyNavigate.ts +0 -19
  1191. package/template-nqtr-react-vite-muijoy-tauri/src/hooks/useNQTRDetector.tsx +0 -44
  1192. package/template-nqtr-react-vite-muijoy-tauri/src/hooks/useNarrationFunctions.ts +0 -78
  1193. package/template-nqtr-react-vite-muijoy-tauri/src/hooks/useNetworkDetector.ts +0 -18
  1194. package/template-nqtr-react-vite-muijoy-tauri/src/hooks/useQueryInterface.ts +0 -141
  1195. package/template-nqtr-react-vite-muijoy-tauri/src/hooks/useQueryIsFullModeScreen.ts +0 -16
  1196. package/template-nqtr-react-vite-muijoy-tauri/src/hooks/useQueryLastSave.ts +0 -11
  1197. package/template-nqtr-react-vite-muijoy-tauri/src/hooks/useQueryNQTR.ts +0 -217
  1198. package/template-nqtr-react-vite-muijoy-tauri/src/hooks/useQuerySaves.ts +0 -11
  1199. package/template-nqtr-react-vite-muijoy-tauri/src/hooks/useSkipAutoDetector.ts +0 -52
  1200. package/template-nqtr-react-vite-muijoy-tauri/src/hooks/useTimeTracker.ts +0 -48
  1201. package/template-nqtr-react-vite-muijoy-tauri/src/hooks/useWheelActions.ts +0 -101
  1202. package/template-nqtr-react-vite-muijoy-tauri/src/i18n.ts +0 -55
  1203. package/template-nqtr-react-vite-muijoy-tauri/src/index.css +0 -19
  1204. package/template-nqtr-react-vite-muijoy-tauri/src/labels/index.ts +0 -4
  1205. package/template-nqtr-react-vite-muijoy-tauri/src/labels/sleepNapLabels.ts +0 -46
  1206. package/template-nqtr-react-vite-muijoy-tauri/src/labels/startLabel.ts +0 -15
  1207. package/template-nqtr-react-vite-muijoy-tauri/src/labels/variousActionsLabelKeys.ts +0 -5
  1208. package/template-nqtr-react-vite-muijoy-tauri/src/labels/variousActionsLabels.ts +0 -141
  1209. package/template-nqtr-react-vite-muijoy-tauri/src/locales/strings_en.json +0 -99
  1210. package/template-nqtr-react-vite-muijoy-tauri/src/providers/RootProvider.tsx +0 -20
  1211. package/template-nqtr-react-vite-muijoy-tauri/src/providers/ThemeProvider.tsx +0 -170
  1212. package/template-nqtr-react-vite-muijoy-tauri/src/screens/ChoiceMenu.tsx +0 -76
  1213. package/template-nqtr-react-vite-muijoy-tauri/src/screens/GameSaveScreen.tsx +0 -128
  1214. package/template-nqtr-react-vite-muijoy-tauri/src/screens/HistoryScreen.tsx +0 -142
  1215. package/template-nqtr-react-vite-muijoy-tauri/src/screens/LoadingScreen.tsx +0 -24
  1216. package/template-nqtr-react-vite-muijoy-tauri/src/screens/MainMenu.tsx +0 -116
  1217. package/template-nqtr-react-vite-muijoy-tauri/src/screens/NarrationScreen.tsx +0 -247
  1218. package/template-nqtr-react-vite-muijoy-tauri/src/screens/OfflineScreen.tsx +0 -38
  1219. package/template-nqtr-react-vite-muijoy-tauri/src/screens/QuickTools.tsx +0 -124
  1220. package/template-nqtr-react-vite-muijoy-tauri/src/screens/Settings.tsx +0 -118
  1221. package/template-nqtr-react-vite-muijoy-tauri/src/screens/modals/SaveLoadAlert.tsx +0 -106
  1222. package/template-nqtr-react-vite-muijoy-tauri/src/screens/modals/TextInput.tsx +0 -74
  1223. package/template-nqtr-react-vite-muijoy-tauri/src/screens/nqtr/MapScreen.tsx +0 -126
  1224. package/template-nqtr-react-vite-muijoy-tauri/src/screens/nqtr/MemoScreen.tsx +0 -194
  1225. package/template-nqtr-react-vite-muijoy-tauri/src/screens/nqtr/NqtrQuickTools.tsx +0 -99
  1226. package/template-nqtr-react-vite-muijoy-tauri/src/screens/nqtr/QuickActivities.tsx +0 -48
  1227. package/template-nqtr-react-vite-muijoy-tauri/src/screens/nqtr/QuickRooms.tsx +0 -97
  1228. package/template-nqtr-react-vite-muijoy-tauri/src/screens/nqtr/TimeScreen.tsx +0 -96
  1229. package/template-nqtr-react-vite-muijoy-tauri/src/screens/settings/AutoSettingToggle.tsx +0 -24
  1230. package/template-nqtr-react-vite-muijoy-tauri/src/screens/settings/DialoguesSettings.tsx +0 -90
  1231. package/template-nqtr-react-vite-muijoy-tauri/src/screens/settings/DownloadFileToTranslateSettingButton.tsx +0 -32
  1232. package/template-nqtr-react-vite-muijoy-tauri/src/screens/settings/FullScreenSettings.tsx +0 -55
  1233. package/template-nqtr-react-vite-muijoy-tauri/src/screens/settings/HideInterfaceSettingToggle.tsx +0 -34
  1234. package/template-nqtr-react-vite-muijoy-tauri/src/screens/settings/OpenHistorySettingButton.tsx +0 -40
  1235. package/template-nqtr-react-vite-muijoy-tauri/src/screens/settings/SaveLoadSettingButtons.tsx +0 -114
  1236. package/template-nqtr-react-vite-muijoy-tauri/src/screens/settings/SkipSettingToggle.tsx +0 -34
  1237. package/template-nqtr-react-vite-muijoy-tauri/src/screens/settings/SoundSettings.tsx +0 -51
  1238. package/template-nqtr-react-vite-muijoy-tauri/src/screens/settings/ThemeSettings.tsx +0 -112
  1239. package/template-nqtr-react-vite-muijoy-tauri/src/stores/createChannelSoundStore.ts +0 -47
  1240. package/template-nqtr-react-vite-muijoy-tauri/src/stores/useAutoInfoStore.ts +0 -33
  1241. package/template-nqtr-react-vite-muijoy-tauri/src/stores/useDialogueCardStore.ts +0 -36
  1242. package/template-nqtr-react-vite-muijoy-tauri/src/stores/useGameSaveScreenStore.ts +0 -112
  1243. package/template-nqtr-react-vite-muijoy-tauri/src/stores/useHistoryScreenStore.ts +0 -23
  1244. package/template-nqtr-react-vite-muijoy-tauri/src/stores/useInterfaceStore.ts +0 -28
  1245. package/template-nqtr-react-vite-muijoy-tauri/src/stores/useMasterSoundStore.ts +0 -38
  1246. package/template-nqtr-react-vite-muijoy-tauri/src/stores/useMemoScreenStore.ts +0 -23
  1247. package/template-nqtr-react-vite-muijoy-tauri/src/stores/useNetworkStore.ts +0 -20
  1248. package/template-nqtr-react-vite-muijoy-tauri/src/stores/useNqtrScreenStore.ts +0 -12
  1249. package/template-nqtr-react-vite-muijoy-tauri/src/stores/useSettingsScreenStore.ts +0 -23
  1250. package/template-nqtr-react-vite-muijoy-tauri/src/stores/useSkipStore.ts +0 -27
  1251. package/template-nqtr-react-vite-muijoy-tauri/src/stores/useStepStore.ts +0 -32
  1252. package/template-nqtr-react-vite-muijoy-tauri/src/stores/useTypewriterStore.ts +0 -41
  1253. package/template-nqtr-react-vite-muijoy-tauri/src/utils/assets-utility.ts +0 -33
  1254. package/template-nqtr-react-vite-muijoy-tauri/src/utils/image-utility.ts +0 -13
  1255. package/template-nqtr-react-vite-muijoy-tauri/src/utils/indexedDB-utility.ts +0 -196
  1256. package/template-nqtr-react-vite-muijoy-tauri/src/utils/nqtr-utility.ts +0 -22
  1257. package/template-nqtr-react-vite-muijoy-tauri/src/utils/save-utility.ts +0 -140
  1258. package/template-nqtr-react-vite-muijoy-tauri/src/values/activities.tsx +0 -106
  1259. package/template-nqtr-react-vite-muijoy-tauri/src/values/characters.ts +0 -15
  1260. package/template-nqtr-react-vite-muijoy-tauri/src/values/index.ts +0 -6
  1261. package/template-nqtr-react-vite-muijoy-tauri/src/values/locations.tsx +0 -60
  1262. package/template-nqtr-react-vite-muijoy-tauri/src/values/maps.tsx +0 -26
  1263. package/template-nqtr-react-vite-muijoy-tauri/src/values/quests/aliceQuest.tsx +0 -78
  1264. package/template-nqtr-react-vite-muijoy-tauri/src/values/quests/index.ts +0 -1
  1265. package/template-nqtr-react-vite-muijoy-tauri/src/values/rooms.tsx +0 -79
  1266. package/template-nqtr-react-vite-muijoy-tauri/src/values/routine.tsx +0 -87
@@ -0,0 +1,530 @@
1
+ import { useAlertDialog } from "@/components/providers/alert-dialog-provider";
2
+ import { INTERFACE_DATA_USE_QUERY_KEY } from "@/constants";
3
+ import { useNarrationFunctions } from "@/lib/hooks/narration-hooks";
4
+ import { useSetSearchParamState } from "@/lib/hooks/navigation-hooks";
5
+ import useTimeTracker from "@/lib/hooks/nqtr-hooks";
6
+ import { useGameProps } from "@/lib/hooks/props-hooks";
7
+ import { CURRENT_MAP_USE_QUERY_KEY } from "@/lib/query/map-query";
8
+ import { useQueryCanGoNext, useQueryInputValue } from "@/lib/query/narration-query";
9
+ import { CURRENT_ROOM_ID_USE_QUERY_KEY } from "@/lib/query/room-query";
10
+ import {
11
+ LAST_SAVE_USE_QUERY_KEY,
12
+ SAVES_USE_QUERY_KEY,
13
+ useQueryLastSave,
14
+ } from "@/lib/query/save-query";
15
+ import { AlertDialogState } from "@/lib/stores/alert-dialog-store";
16
+ import { QuickActionsWheelState } from "@/lib/stores/quick-actions-wheel-store";
17
+ import { SearchParams } from "@/lib/stores/search-param-store";
18
+ import { SkipSettings } from "@/lib/stores/skip-settings-store";
19
+ import { TextDisplaySettings } from "@/lib/stores/text-display-settings-store";
20
+ import { loadSave, saveGameToIndexDB } from "@/lib/utils/save-utility";
21
+ import { navigator, type RoomIdType } from "@drincs/nqtr";
22
+ import { narration } from "@drincs/pixi-vn";
23
+ import type { RegisterableHotkey } from "@tanstack/hotkeys";
24
+ import { useHotkeys } from "@tanstack/react-hotkeys";
25
+ import { useQueryClient } from "@tanstack/react-query";
26
+ import { useLocation, useNavigate } from "@tanstack/react-router";
27
+ import { useSelector } from "@tanstack/react-store";
28
+ import { useCallback, useMemo, useRef } from "react";
29
+ import { useTranslation } from "react-i18next";
30
+ import { toast } from "sonner";
31
+
32
+ function useMenuDialogState() {
33
+ const searchParams = useSelector(SearchParams.store, (state) => state);
34
+ const alertDialogCount = useSelector(AlertDialogState.store, (state) => state.count);
35
+ const { data: { isRequired } = {} } = useQueryInputValue<string | number>();
36
+
37
+ /** true when the settings menu (or any sub-page) is open */
38
+ const isSettingsOpen = useMemo(
39
+ () => Object.values(searchParams).some((v) => v !== undefined),
40
+ [searchParams],
41
+ );
42
+
43
+ /** true when an alert confirmation dialog or the input-request dialog is blocking interaction */
44
+ const isAlertOrInputOpen = alertDialogCount > 0 || !!isRequired;
45
+
46
+ /** true when any menu or dialog that should disable hotkeys is open */
47
+ const isAnyMenuOrDialogOpen = isSettingsOpen || isAlertOrInputOpen;
48
+
49
+ return { isAnyMenuOrDialogOpen, isSettingsOpen, isAlertOrInputOpen };
50
+ }
51
+
52
+ /**
53
+ * useSaveHotkeys
54
+ *
55
+ * Hook that registers hotkeys for quick saving and loading the most
56
+ * recent save.
57
+ *
58
+ * Chosen hotkeys (common in games and web apps):
59
+ * - `F5`: quick save
60
+ * - `F9`: quick load (loads the most recent save)
61
+ * - `Ctrl+S`: alternative quick save (for keyboards without function keys)
62
+ * - `Ctrl+L`: alternative quick load
63
+ *
64
+ * This hook accepts no parameters and returns `null` because it is used
65
+ * only for side effects (registering hotkeys).
66
+ */
67
+ export function useSaveHotkeys(): null {
68
+ const queryClient = useQueryClient();
69
+ const { t } = useTranslation(["ui"]);
70
+ const location = useLocation();
71
+ const { data: lastSave = null } = useQueryLastSave();
72
+ const { openAlertDialog } = useAlertDialog();
73
+ const gameProps = useGameProps();
74
+ const { isSettingsOpen } = useMenuDialogState();
75
+
76
+ const quickSave = useCallback(() => {
77
+ if (location.pathname === "/") {
78
+ console.log("Can't save on home page");
79
+ return;
80
+ }
81
+ const savePromise = saveGameToIndexDB().then((save) => {
82
+ queryClient.setQueryData([SAVES_USE_QUERY_KEY, save.id], save);
83
+ queryClient.setQueryData([LAST_SAVE_USE_QUERY_KEY], save);
84
+ });
85
+ toast.promise(savePromise, {
86
+ loading: t("saving"),
87
+ success: t("success_save"),
88
+ error: t("fail_save"),
89
+ });
90
+ }, [location.pathname, queryClient, t]);
91
+
92
+ const quickLoad = useCallback(() => {
93
+ if (!lastSave) {
94
+ console.log("No save to load");
95
+ return;
96
+ }
97
+ openAlertDialog({
98
+ head: t("load"),
99
+ content: t("you_sure_to_load_save", {
100
+ name: lastSave.name || `${t("save_slot")} ${lastSave.id}`,
101
+ }),
102
+ onConfirm: () =>
103
+ loadSave(lastSave)
104
+ .then(() => {
105
+ gameProps.invalidateInterfaceData();
106
+ toast.success(t("success_load"));
107
+ return true;
108
+ })
109
+ .catch((e) => {
110
+ toast.error(t("fail_load"));
111
+ console.error(e);
112
+ return false;
113
+ }),
114
+ });
115
+ }, [lastSave, openAlertDialog, t, gameProps]);
116
+
117
+ useHotkeys([
118
+ {
119
+ hotkey: "F5",
120
+ callback: quickSave,
121
+ options: {
122
+ enabled: !isSettingsOpen,
123
+ meta: {
124
+ name: t("quick_save"),
125
+ description: t("quick_save_hotkey_description"),
126
+ },
127
+ },
128
+ },
129
+ {
130
+ hotkey: "Control+S",
131
+ callback: quickSave,
132
+ options: {
133
+ enabled: !isSettingsOpen,
134
+ meta: {
135
+ name: t("quick_save"),
136
+ description: t("quick_save_hotkey_alternative_description"),
137
+ },
138
+ },
139
+ },
140
+ {
141
+ hotkey: "F9",
142
+ callback: quickLoad,
143
+ options: {
144
+ enabled: !isSettingsOpen,
145
+ meta: {
146
+ name: t("load_last_save"),
147
+ description: t("quick_load_hotkey_description"),
148
+ },
149
+ },
150
+ },
151
+ {
152
+ hotkey: "Control+L",
153
+ callback: quickLoad,
154
+ options: {
155
+ enabled: !isSettingsOpen,
156
+ meta: {
157
+ name: t("load_last_save"),
158
+ description: t("quick_load_hotkey_alternative_description"),
159
+ },
160
+ },
161
+ },
162
+ ]);
163
+
164
+ return null;
165
+ }
166
+
167
+ export function useSettingsHotkeys(): null {
168
+ const { t } = useTranslation(["ui"]);
169
+ const setSettingsOpen = useSetSearchParamState<boolean>("settings");
170
+ const setSettingsTab = useSetSearchParamState<string>("settings_tab");
171
+ const { isAnyMenuOrDialogOpen } = useMenuDialogState();
172
+
173
+ const openControlsPage = useCallback(() => {
174
+ setSettingsOpen(true);
175
+ setSettingsTab("menus/controls");
176
+ }, [setSettingsOpen, setSettingsTab]);
177
+
178
+ useHotkeys([
179
+ {
180
+ hotkey: "Escape",
181
+ callback: () => setSettingsOpen((prev) => !prev),
182
+ options: {
183
+ meta: {
184
+ name: t("settings"),
185
+ description: t("settings_toggle_hotkey_description"),
186
+ },
187
+ },
188
+ },
189
+ {
190
+ hotkey: "K",
191
+ callback: openControlsPage,
192
+ options: {
193
+ enabled: !isAnyMenuOrDialogOpen,
194
+ meta: {
195
+ name: t("hotkeys_menu"),
196
+ description: t("hotkeys_menu_shortcut_description"),
197
+ },
198
+ },
199
+ },
200
+ ]);
201
+
202
+ return null;
203
+ }
204
+
205
+ export function useGameHotkeys(): null {
206
+ const setSettingsOpen = useSetSearchParamState<boolean>("settings");
207
+ const setSettingsTab = useSetSearchParamState<string>("settings_tab");
208
+ const setHistory = useSetSearchParamState<boolean>("history");
209
+ const setOpenMemo = useSetSearchParamState<boolean>("memo");
210
+ const { t } = useTranslation(["ui"]);
211
+ const { isAnyMenuOrDialogOpen } = useMenuDialogState();
212
+
213
+ const openHistoryPage = useCallback(() => {
214
+ setHistory(undefined);
215
+ setSettingsOpen(true);
216
+ setSettingsTab("menus/history");
217
+ }, [setHistory, setSettingsOpen, setSettingsTab]);
218
+
219
+ const toggleQuickActionsWheel = useCallback(() => {
220
+ const isOpen = QuickActionsWheelState.store.state.open;
221
+ if (isOpen) {
222
+ QuickActionsWheelState.setOpen(false);
223
+ } else {
224
+ QuickActionsWheelState.setOpen(true);
225
+ }
226
+ }, []);
227
+
228
+ const toggleMemo = useCallback(() => {
229
+ setOpenMemo((prev) => !prev || undefined);
230
+ }, [setOpenMemo]);
231
+
232
+ useHotkeys([
233
+ {
234
+ hotkey: "H",
235
+ callback: openHistoryPage,
236
+ options: {
237
+ enabled: !isAnyMenuOrDialogOpen,
238
+ meta: {
239
+ name: t("history"),
240
+ description: t("history_hotkey_description"),
241
+ },
242
+ },
243
+ },
244
+ {
245
+ hotkey: "Tab",
246
+ callback: toggleQuickActionsWheel,
247
+ options: {
248
+ enabled: !isAnyMenuOrDialogOpen,
249
+ meta: {
250
+ name: t("quick_actions"),
251
+ description: t("quick_actions_open_description"),
252
+ },
253
+ },
254
+ },
255
+ {
256
+ hotkey: "Q",
257
+ callback: toggleMemo,
258
+ options: {
259
+ enabled: !isAnyMenuOrDialogOpen,
260
+ meta: { name: t("memo"), description: t("open_memo_hotkey_description") },
261
+ },
262
+ },
263
+ ]);
264
+
265
+ return null;
266
+ }
267
+
268
+ export function useChoiceMenuHotkeys(menuLength: number) {
269
+ const { t } = useTranslation(["ui"]);
270
+ const menuRef = useRef<HTMLDivElement>(null);
271
+
272
+ function getMenuItems(): HTMLButtonElement[] {
273
+ if (!menuRef.current) return [];
274
+ return Array.from(
275
+ menuRef.current.querySelectorAll<HTMLButtonElement>(
276
+ "button[role='menuitem']:not(:disabled)",
277
+ ),
278
+ );
279
+ }
280
+
281
+ function focusMenuItem(direction: "up" | "down") {
282
+ const items = getMenuItems();
283
+ if (!items.length) return;
284
+ const active = document.activeElement as HTMLElement;
285
+ const currentIndex = items.indexOf(active as HTMLButtonElement);
286
+ let next: number;
287
+ if (direction === "down") {
288
+ next = currentIndex < items.length - 1 ? currentIndex + 1 : 0;
289
+ } else {
290
+ next = currentIndex > 0 ? currentIndex - 1 : items.length - 1;
291
+ }
292
+ items[next].focus();
293
+ }
294
+
295
+ useHotkeys([
296
+ {
297
+ hotkey: "ArrowDown",
298
+ callback: () => focusMenuItem("down"),
299
+ options: {
300
+ enabled: menuLength > 0,
301
+ preventDefault: true,
302
+ meta: {
303
+ name: t("choice_navigation"),
304
+ description: t("choice_navigation_description"),
305
+ },
306
+ },
307
+ },
308
+ {
309
+ hotkey: "ArrowUp",
310
+ callback: () => focusMenuItem("up"),
311
+ options: {
312
+ enabled: menuLength > 0,
313
+ preventDefault: true,
314
+ meta: {
315
+ name: t("choice_navigation"),
316
+ description: t("choice_navigation_description"),
317
+ },
318
+ },
319
+ },
320
+ ]);
321
+
322
+ return { menuRef };
323
+ }
324
+
325
+ export function useNarrationHotkeys(): null {
326
+ const { t } = useTranslation(["ui"]);
327
+ const { goNext } = useNarrationFunctions();
328
+ const typewriterInProgress = useSelector(
329
+ TextDisplaySettings.store,
330
+ (state) => state.inProgress,
331
+ );
332
+ const { isAnyMenuOrDialogOpen } = useMenuDialogState();
333
+ const { data: canGoNext } = useQueryCanGoNext();
334
+
335
+ const onSkipKeyDown = useCallback(() => SkipSettings.setEnabled(true), []);
336
+ const onSkipKeyUp = useCallback(() => {
337
+ SkipSettings.setEnabled(false);
338
+ if (typewriterInProgress && !narration.dialogGlue) {
339
+ TextDisplaySettings.complete();
340
+ return;
341
+ }
342
+ goNext();
343
+ }, [goNext, typewriterInProgress]);
344
+
345
+ useHotkeys([
346
+ {
347
+ hotkey: "Enter",
348
+ callback: onSkipKeyDown,
349
+ options: {
350
+ enabled: !isAnyMenuOrDialogOpen && canGoNext,
351
+ meta: {
352
+ name: t("skip"),
353
+ description: t("skip_hold_description"),
354
+ },
355
+ },
356
+ },
357
+ {
358
+ hotkey: "Space",
359
+ callback: onSkipKeyDown,
360
+ options: {
361
+ enabled: !isAnyMenuOrDialogOpen && canGoNext,
362
+ meta: {
363
+ name: t("skip"),
364
+ description: t("skip_hold_space_description"),
365
+ },
366
+ },
367
+ },
368
+ {
369
+ hotkey: "Enter",
370
+ callback: onSkipKeyUp,
371
+ options: {
372
+ eventType: "keyup",
373
+ conflictBehavior: "allow",
374
+ enabled: !isAnyMenuOrDialogOpen && canGoNext,
375
+ meta: {
376
+ name: t("next"),
377
+ description: t("skip_release_description"),
378
+ },
379
+ },
380
+ },
381
+ {
382
+ hotkey: "Space",
383
+ callback: onSkipKeyUp,
384
+ options: {
385
+ eventType: "keyup",
386
+ conflictBehavior: "allow",
387
+ enabled: !isAnyMenuOrDialogOpen && canGoNext,
388
+ meta: {
389
+ name: t("next"),
390
+ description: t("skip_release_space_description"),
391
+ },
392
+ },
393
+ },
394
+ ]);
395
+
396
+ return null;
397
+ }
398
+
399
+ export function useNavigationHotkeys(): null {
400
+ const { t } = useTranslation(["ui"]);
401
+ const navigate = useNavigate();
402
+ const queryClient = useQueryClient();
403
+ const { isAnyMenuOrDialogOpen } = useMenuDialogState();
404
+ const { wait } = useTimeTracker();
405
+ const openMap = useCallback(() => {
406
+ queryClient.invalidateQueries({
407
+ queryKey: [INTERFACE_DATA_USE_QUERY_KEY, CURRENT_MAP_USE_QUERY_KEY],
408
+ });
409
+ navigate({ to: "/game/map" });
410
+ }, [navigate, queryClient]);
411
+
412
+ useHotkeys([
413
+ {
414
+ hotkey: "M",
415
+ callback: openMap,
416
+ options: {
417
+ enabled: !isAnyMenuOrDialogOpen,
418
+ meta: { name: t("map"), description: t("open_map_hotkey_description") },
419
+ },
420
+ },
421
+ {
422
+ hotkey: "W",
423
+ callback: () => wait(1),
424
+ options: {
425
+ enabled: !isAnyMenuOrDialogOpen,
426
+ meta: { name: t("wait"), description: t("wait_hotkey_description") },
427
+ },
428
+ },
429
+ ]);
430
+
431
+ return null;
432
+ }
433
+
434
+ export function useRoomHotkey(
435
+ roomId: string,
436
+ index: number,
437
+ disabled: boolean | undefined,
438
+ selected: boolean,
439
+ ) {
440
+ const { t } = useTranslation(["ui"]);
441
+ const queryClient = useQueryClient();
442
+ const { isAnyMenuOrDialogOpen } = useMenuDialogState();
443
+ const n = index + 1;
444
+
445
+ const navigateHere = useCallback(() => {
446
+ if (!disabled && !selected) {
447
+ navigator.currentRoom = roomId as RoomIdType;
448
+ queryClient.setQueryData(
449
+ [INTERFACE_DATA_USE_QUERY_KEY, CURRENT_ROOM_ID_USE_QUERY_KEY],
450
+ roomId,
451
+ );
452
+ }
453
+ }, [disabled, selected, roomId, queryClient]);
454
+
455
+ useHotkeys(
456
+ n <= 9
457
+ ? [
458
+ {
459
+ hotkey: String(n) as RegisterableHotkey,
460
+ callback: navigateHere,
461
+ options: {
462
+ enabled: !isAnyMenuOrDialogOpen,
463
+ meta: {
464
+ name: t("room_hotkey"),
465
+ description: t("navigate_room_hotkey_description"),
466
+ },
467
+ },
468
+ },
469
+ ]
470
+ : [],
471
+ );
472
+
473
+ return { navigateHere };
474
+ }
475
+
476
+ export function useActivitiesHotkey() {
477
+ const { t } = useTranslation(["ui"]);
478
+ const containerRef = useRef<HTMLDivElement>(null);
479
+ const { isAnyMenuOrDialogOpen } = useMenuDialogState();
480
+
481
+ function getMenuItems(): HTMLButtonElement[] {
482
+ if (!containerRef.current) return [];
483
+ return Array.from(
484
+ containerRef.current.querySelectorAll<HTMLButtonElement>(
485
+ "button[role='menuitem']:not(:disabled)",
486
+ ),
487
+ );
488
+ }
489
+
490
+ function focusMenuItem(direction: "up" | "down") {
491
+ const items = getMenuItems();
492
+ if (!items.length) return;
493
+ const currentIndex = items.indexOf(document.activeElement as HTMLButtonElement);
494
+ let next: number;
495
+ if (direction === "down") {
496
+ next = currentIndex < items.length - 1 ? currentIndex + 1 : 0;
497
+ } else {
498
+ next = currentIndex > 0 ? currentIndex - 1 : items.length - 1;
499
+ }
500
+ items[next].focus();
501
+ }
502
+
503
+ const meta = {
504
+ name: t("activity_hotkey"),
505
+ description: t("select_run_activity_hotkey_description"),
506
+ };
507
+
508
+ useHotkeys([
509
+ {
510
+ hotkey: "ArrowDown",
511
+ callback: () => focusMenuItem("down"),
512
+ options: {
513
+ enabled: !isAnyMenuOrDialogOpen,
514
+ meta,
515
+ preventDefault: true,
516
+ },
517
+ },
518
+ {
519
+ hotkey: "ArrowUp",
520
+ callback: () => focusMenuItem("up"),
521
+ options: {
522
+ enabled: !isAnyMenuOrDialogOpen,
523
+ meta,
524
+ preventDefault: true,
525
+ },
526
+ },
527
+ ]);
528
+
529
+ return { containerRef };
530
+ }
@@ -0,0 +1,15 @@
1
+ import { getPixiJSAsset } from "@/lib/utils/assets-utility";
2
+ import TimeSlotsImage from "@/models/TimeSlotsImage";
3
+ import { useMemo } from "react";
4
+
5
+ export function useImageSrc(src?: string | TimeSlotsImage | null): string | undefined {
6
+ return useMemo(() => {
7
+ if (!src) {
8
+ return undefined;
9
+ }
10
+ if (src instanceof TimeSlotsImage) {
11
+ src = src.src;
12
+ }
13
+ return getPixiJSAsset(src);
14
+ }, [src]);
15
+ }
@@ -0,0 +1,61 @@
1
+ import { useCallback, useMemo } from "react";
2
+ import { useTranslation } from "react-i18next";
3
+
4
+ function getLanguageDisplayName(lng: string): string {
5
+ try {
6
+ const name = new Intl.DisplayNames([lng], { type: "language" }).of(lng);
7
+ if (name) return name.charAt(0).toUpperCase() + name.slice(1);
8
+ return lng;
9
+ } catch {
10
+ return lng;
11
+ }
12
+ }
13
+
14
+ export function useLanguageSettings() {
15
+ const {
16
+ i18n: {
17
+ options: { fallbackLng, supportedLngs = [] },
18
+ language,
19
+ changeLanguage,
20
+ },
21
+ } = useTranslation(["ui"]);
22
+
23
+ const selectedLang = useMemo(() => {
24
+ if (Array.isArray(supportedLngs) && supportedLngs.includes(language)) {
25
+ return language;
26
+ }
27
+ if (typeof fallbackLng === "string") {
28
+ return fallbackLng;
29
+ }
30
+ return language;
31
+ }, [language, supportedLngs, fallbackLng]);
32
+
33
+ const displayLabel = useMemo(() => {
34
+ return getLanguageDisplayName(selectedLang);
35
+ }, [selectedLang]);
36
+
37
+ const handleChange = useCallback(
38
+ (value: string | null) => {
39
+ if (!value) return;
40
+ changeLanguage(value);
41
+ },
42
+ [changeLanguage],
43
+ );
44
+
45
+ const languageOptions = useMemo(() => {
46
+ if (supportedLngs === false) return [];
47
+ return supportedLngs
48
+ .filter((option) => option !== "cimode")
49
+ .map((lng) => ({
50
+ value: lng,
51
+ label: getLanguageDisplayName(lng),
52
+ }));
53
+ }, [supportedLngs]);
54
+
55
+ return {
56
+ selectedLang,
57
+ displayLabel,
58
+ handleChange,
59
+ languageOptions,
60
+ };
61
+ }
@@ -0,0 +1,55 @@
1
+ import { CANVAS_MINIGAME_LAYER_NAME } from "@/constants";
2
+ import { canvas, type Layer } from "@drincs/pixi-vn";
3
+ import { Container } from "@drincs/pixi-vn/pixi.js";
4
+ import { useEffect, useRef } from "react";
5
+
6
+ export function useMinigame(
7
+ game: (layer: Layer) => void,
8
+ props?: {
9
+ onStart?: () => Promise<void>;
10
+ onExit?: (layer: Layer) => void;
11
+ },
12
+ ) {
13
+ const loading = useRef(false);
14
+
15
+ // Keep latest callbacks in refs to avoid effect restarts
16
+ const startRef = useRef<() => Promise<void>>(props?.onStart ?? (async () => {}));
17
+ const exitRef = useRef<(layer: Layer) => void>(props?.onExit);
18
+
19
+ // Update refs when props change, without changing effect identity
20
+ useEffect(() => {
21
+ startRef.current = props?.onStart ?? (async () => {});
22
+ }, [props?.onStart]);
23
+
24
+ useEffect(() => {
25
+ exitRef.current = props?.onExit;
26
+ }, [props?.onExit]);
27
+
28
+ useEffect(() => {
29
+ // Create the layer and start the game once
30
+ loading.current = true;
31
+ const layer = canvas.addLayer(CANVAS_MINIGAME_LAYER_NAME, new Container());
32
+ if (!layer) {
33
+ console.error("Failed to create UI layer for minigame");
34
+ return;
35
+ }
36
+
37
+ let cancelled = false;
38
+
39
+ startRef.current().then(() => {
40
+ if (cancelled) return;
41
+ loading.current = false;
42
+ game(layer);
43
+ });
44
+
45
+ return () => {
46
+ cancelled = true;
47
+ canvas.removeLayer(CANVAS_MINIGAME_LAYER_NAME);
48
+ if (exitRef.current) {
49
+ exitRef.current(layer);
50
+ }
51
+ };
52
+ }, [game]);
53
+
54
+ return { loading };
55
+ }