create-pixi-vn 1.9.3 → 1.9.5

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 (219) hide show
  1. package/README.md +6 -36
  2. package/dist/index.mjs +62 -62
  3. package/package.json +1 -1
  4. package/template-nqtr-react-vite-muijoy/package.json +3 -3
  5. package/template-nqtr-react-vite-muijoy/src/hooks/useGameProps.ts +3 -2
  6. package/template-nqtr-react-vite-muijoy/src/hooks/useNQTRDetector.tsx +6 -37
  7. package/template-nqtr-react-vite-muijoy/src/hooks/useNarrationFunctions.ts +6 -9
  8. package/template-nqtr-react-vite-muijoy/src/hooks/useQueryNQTR.ts +109 -32
  9. package/template-nqtr-react-vite-muijoy/src/hooks/useWheelActions.ts +2 -5
  10. package/template-nqtr-react-vite-muijoy/src/labels/index.ts +0 -1
  11. package/template-nqtr-react-vite-muijoy/src/labels/sleepNapLabels.ts +4 -21
  12. package/template-nqtr-react-vite-muijoy/src/labels/startLabel.ts +1 -1
  13. package/template-nqtr-react-vite-muijoy/src/labels/variousActionsLabels.ts +1 -1
  14. package/template-nqtr-react-vite-muijoy/src/models/nqtr/Activity.ts +26 -12
  15. package/template-nqtr-react-vite-muijoy/src/models/nqtr/Commitment.ts +23 -17
  16. package/template-nqtr-react-vite-muijoy/src/models/nqtr/Location.ts +5 -5
  17. package/template-nqtr-react-vite-muijoy/src/models/nqtr/Map.ts +5 -5
  18. package/template-nqtr-react-vite-muijoy/src/models/nqtr/Room.ts +18 -7
  19. package/template-nqtr-react-vite-muijoy/src/models/nqtr/ui-elements.ts +17 -0
  20. package/template-nqtr-react-vite-muijoy/src/nqtr.d.ts +10 -11
  21. package/template-nqtr-react-vite-muijoy/src/pixi-vn.d.ts +3 -2
  22. package/template-nqtr-react-vite-muijoy/src/screens/GameSaveScreen.tsx +3 -4
  23. package/template-nqtr-react-vite-muijoy/src/screens/modals/SaveLoadAlert.tsx +3 -2
  24. package/template-nqtr-react-vite-muijoy/src/screens/modals/TextInput.tsx +4 -4
  25. package/template-nqtr-react-vite-muijoy/src/screens/nqtr/MapScreen.tsx +37 -55
  26. package/template-nqtr-react-vite-muijoy/src/screens/nqtr/QuickActivities.tsx +4 -13
  27. package/template-nqtr-react-vite-muijoy/src/screens/nqtr/QuickRooms.tsx +2 -1
  28. package/template-nqtr-react-vite-muijoy/src/screens/nqtr/TimeScreen.tsx +3 -4
  29. package/template-nqtr-react-vite-muijoy/src/screens/settings/SaveLoadSettingButtons.tsx +3 -2
  30. package/template-nqtr-react-vite-muijoy/src/utils/image-utility.ts +7 -7
  31. package/template-nqtr-react-vite-muijoy/src/utils/nqtr-utility.ts +2 -5
  32. package/template-nqtr-react-vite-muijoy/src/values/activities.tsx +19 -18
  33. package/template-nqtr-react-vite-muijoy/src/values/locations.tsx +24 -14
  34. package/template-nqtr-react-vite-muijoy/src/values/quests/aliceQuest.tsx +8 -8
  35. package/template-nqtr-react-vite-muijoy/src/values/rooms.tsx +11 -6
  36. package/template-nqtr-react-vite-muijoy/src/values/routine.tsx +10 -13
  37. package/template-nqtr-react-vite-muijoy-ink/package.json +4 -4
  38. package/template-nqtr-react-vite-muijoy-ink/src/hooks/useGameProps.ts +3 -2
  39. package/template-nqtr-react-vite-muijoy-ink/src/hooks/useNQTRDetector.tsx +6 -37
  40. package/template-nqtr-react-vite-muijoy-ink/src/hooks/useNarrationFunctions.ts +6 -9
  41. package/template-nqtr-react-vite-muijoy-ink/src/hooks/useQueryNQTR.ts +109 -32
  42. package/template-nqtr-react-vite-muijoy-ink/src/hooks/useWheelActions.ts +2 -5
  43. package/template-nqtr-react-vite-muijoy-ink/src/ink/start.ink +7 -0
  44. package/template-nqtr-react-vite-muijoy-ink/src/ink/variousActionsLabels.ink +42 -1
  45. package/template-nqtr-react-vite-muijoy-ink/src/labels/index.ts +0 -3
  46. package/template-nqtr-react-vite-muijoy-ink/src/labels/sleepNapLabels.ts +4 -21
  47. package/template-nqtr-react-vite-muijoy-ink/src/models/nqtr/Activity.ts +26 -12
  48. package/template-nqtr-react-vite-muijoy-ink/src/models/nqtr/Commitment.ts +23 -17
  49. package/template-nqtr-react-vite-muijoy-ink/src/models/nqtr/Location.ts +5 -5
  50. package/template-nqtr-react-vite-muijoy-ink/src/models/nqtr/Map.ts +5 -5
  51. package/template-nqtr-react-vite-muijoy-ink/src/models/nqtr/Room.ts +18 -7
  52. package/template-nqtr-react-vite-muijoy-ink/src/models/nqtr/ui-elements.ts +17 -0
  53. package/template-nqtr-react-vite-muijoy-ink/src/nqtr.d.ts +10 -11
  54. package/template-nqtr-react-vite-muijoy-ink/src/pixi-vn.d.ts +3 -2
  55. package/template-nqtr-react-vite-muijoy-ink/src/screens/GameSaveScreen.tsx +3 -4
  56. package/template-nqtr-react-vite-muijoy-ink/src/screens/modals/SaveLoadAlert.tsx +3 -2
  57. package/template-nqtr-react-vite-muijoy-ink/src/screens/modals/TextInput.tsx +4 -4
  58. package/template-nqtr-react-vite-muijoy-ink/src/screens/nqtr/MapScreen.tsx +37 -55
  59. package/template-nqtr-react-vite-muijoy-ink/src/screens/nqtr/QuickActivities.tsx +4 -13
  60. package/template-nqtr-react-vite-muijoy-ink/src/screens/nqtr/QuickRooms.tsx +2 -1
  61. package/template-nqtr-react-vite-muijoy-ink/src/screens/nqtr/TimeScreen.tsx +3 -4
  62. package/template-nqtr-react-vite-muijoy-ink/src/screens/settings/SaveLoadSettingButtons.tsx +3 -2
  63. package/template-nqtr-react-vite-muijoy-ink/src/utils/image-utility.ts +7 -7
  64. package/template-nqtr-react-vite-muijoy-ink/src/utils/nqtr-utility.ts +2 -5
  65. package/template-nqtr-react-vite-muijoy-ink/src/values/activities.tsx +19 -18
  66. package/template-nqtr-react-vite-muijoy-ink/src/values/locations.tsx +24 -14
  67. package/template-nqtr-react-vite-muijoy-ink/src/values/quests/aliceQuest.tsx +9 -9
  68. package/template-nqtr-react-vite-muijoy-ink/src/values/rooms.tsx +11 -6
  69. package/template-nqtr-react-vite-muijoy-ink/src/values/routine.tsx +11 -15
  70. package/template-nqtr-react-vite-muijoy-ink-tauri/package.json +80 -80
  71. package/template-nqtr-react-vite-muijoy-ink-tauri/src/hooks/useGameProps.ts +3 -2
  72. package/template-nqtr-react-vite-muijoy-ink-tauri/src/hooks/useNQTRDetector.tsx +6 -37
  73. package/template-nqtr-react-vite-muijoy-ink-tauri/src/hooks/useNarrationFunctions.ts +6 -9
  74. package/template-nqtr-react-vite-muijoy-ink-tauri/src/hooks/useQueryNQTR.ts +109 -32
  75. package/template-nqtr-react-vite-muijoy-ink-tauri/src/hooks/useWheelActions.ts +2 -5
  76. package/template-nqtr-react-vite-muijoy-ink-tauri/src/ink/start.ink +7 -0
  77. package/template-nqtr-react-vite-muijoy-ink-tauri/src/ink/variousActionsLabels.ink +42 -1
  78. package/template-nqtr-react-vite-muijoy-ink-tauri/src/labels/index.ts +0 -3
  79. package/template-nqtr-react-vite-muijoy-ink-tauri/src/labels/sleepNapLabels.ts +4 -21
  80. package/template-nqtr-react-vite-muijoy-ink-tauri/src/models/nqtr/Activity.ts +26 -12
  81. package/template-nqtr-react-vite-muijoy-ink-tauri/src/models/nqtr/Commitment.ts +23 -17
  82. package/template-nqtr-react-vite-muijoy-ink-tauri/src/models/nqtr/Location.ts +5 -5
  83. package/template-nqtr-react-vite-muijoy-ink-tauri/src/models/nqtr/Map.ts +5 -5
  84. package/template-nqtr-react-vite-muijoy-ink-tauri/src/models/nqtr/Room.ts +18 -7
  85. package/template-nqtr-react-vite-muijoy-ink-tauri/src/models/nqtr/ui-elements.ts +17 -0
  86. package/template-nqtr-react-vite-muijoy-ink-tauri/src/nqtr.d.ts +10 -11
  87. package/template-nqtr-react-vite-muijoy-ink-tauri/src/pixi-vn.d.ts +3 -2
  88. package/template-nqtr-react-vite-muijoy-ink-tauri/src/screens/GameSaveScreen.tsx +3 -4
  89. package/template-nqtr-react-vite-muijoy-ink-tauri/src/screens/modals/SaveLoadAlert.tsx +3 -2
  90. package/template-nqtr-react-vite-muijoy-ink-tauri/src/screens/modals/TextInput.tsx +4 -4
  91. package/template-nqtr-react-vite-muijoy-ink-tauri/src/screens/nqtr/MapScreen.tsx +37 -55
  92. package/template-nqtr-react-vite-muijoy-ink-tauri/src/screens/nqtr/QuickActivities.tsx +4 -13
  93. package/template-nqtr-react-vite-muijoy-ink-tauri/src/screens/nqtr/QuickRooms.tsx +2 -1
  94. package/template-nqtr-react-vite-muijoy-ink-tauri/src/screens/nqtr/TimeScreen.tsx +3 -4
  95. package/template-nqtr-react-vite-muijoy-ink-tauri/src/screens/settings/SaveLoadSettingButtons.tsx +3 -2
  96. package/template-nqtr-react-vite-muijoy-ink-tauri/src/utils/image-utility.ts +7 -7
  97. package/template-nqtr-react-vite-muijoy-ink-tauri/src/utils/nqtr-utility.ts +2 -5
  98. package/template-nqtr-react-vite-muijoy-ink-tauri/src/values/activities.tsx +19 -18
  99. package/template-nqtr-react-vite-muijoy-ink-tauri/src/values/locations.tsx +24 -14
  100. package/template-nqtr-react-vite-muijoy-ink-tauri/src/values/quests/aliceQuest.tsx +9 -9
  101. package/template-nqtr-react-vite-muijoy-ink-tauri/src/values/rooms.tsx +11 -6
  102. package/template-nqtr-react-vite-muijoy-ink-tauri/src/values/routine.tsx +11 -15
  103. package/template-nqtr-react-vite-muijoy-tauri/package.json +3 -3
  104. package/template-nqtr-react-vite-muijoy-tauri/src/hooks/useGameProps.ts +3 -2
  105. package/template-nqtr-react-vite-muijoy-tauri/src/hooks/useNQTRDetector.tsx +6 -37
  106. package/template-nqtr-react-vite-muijoy-tauri/src/hooks/useNarrationFunctions.ts +6 -9
  107. package/template-nqtr-react-vite-muijoy-tauri/src/hooks/useQueryNQTR.ts +109 -32
  108. package/template-nqtr-react-vite-muijoy-tauri/src/hooks/useWheelActions.ts +2 -5
  109. package/template-nqtr-react-vite-muijoy-tauri/src/labels/index.ts +0 -1
  110. package/template-nqtr-react-vite-muijoy-tauri/src/labels/sleepNapLabels.ts +4 -21
  111. package/template-nqtr-react-vite-muijoy-tauri/src/labels/startLabel.ts +1 -1
  112. package/template-nqtr-react-vite-muijoy-tauri/src/labels/variousActionsLabels.ts +1 -1
  113. package/template-nqtr-react-vite-muijoy-tauri/src/models/nqtr/Activity.ts +26 -12
  114. package/template-nqtr-react-vite-muijoy-tauri/src/models/nqtr/Commitment.ts +23 -17
  115. package/template-nqtr-react-vite-muijoy-tauri/src/models/nqtr/Location.ts +5 -5
  116. package/template-nqtr-react-vite-muijoy-tauri/src/models/nqtr/Map.ts +5 -5
  117. package/template-nqtr-react-vite-muijoy-tauri/src/models/nqtr/Room.ts +18 -7
  118. package/template-nqtr-react-vite-muijoy-tauri/src/models/nqtr/ui-elements.ts +17 -0
  119. package/template-nqtr-react-vite-muijoy-tauri/src/nqtr.d.ts +10 -11
  120. package/template-nqtr-react-vite-muijoy-tauri/src/pixi-vn.d.ts +3 -2
  121. package/template-nqtr-react-vite-muijoy-tauri/src/screens/GameSaveScreen.tsx +3 -4
  122. package/template-nqtr-react-vite-muijoy-tauri/src/screens/modals/SaveLoadAlert.tsx +3 -2
  123. package/template-nqtr-react-vite-muijoy-tauri/src/screens/modals/TextInput.tsx +4 -4
  124. package/template-nqtr-react-vite-muijoy-tauri/src/screens/nqtr/MapScreen.tsx +37 -55
  125. package/template-nqtr-react-vite-muijoy-tauri/src/screens/nqtr/QuickActivities.tsx +4 -13
  126. package/template-nqtr-react-vite-muijoy-tauri/src/screens/nqtr/QuickRooms.tsx +2 -1
  127. package/template-nqtr-react-vite-muijoy-tauri/src/screens/nqtr/TimeScreen.tsx +3 -4
  128. package/template-nqtr-react-vite-muijoy-tauri/src/screens/settings/SaveLoadSettingButtons.tsx +3 -2
  129. package/template-nqtr-react-vite-muijoy-tauri/src/utils/image-utility.ts +7 -7
  130. package/template-nqtr-react-vite-muijoy-tauri/src/utils/nqtr-utility.ts +2 -5
  131. package/template-nqtr-react-vite-muijoy-tauri/src/values/activities.tsx +19 -18
  132. package/template-nqtr-react-vite-muijoy-tauri/src/values/locations.tsx +24 -14
  133. package/template-nqtr-react-vite-muijoy-tauri/src/values/quests/aliceQuest.tsx +8 -8
  134. package/template-nqtr-react-vite-muijoy-tauri/src/values/rooms.tsx +11 -6
  135. package/template-nqtr-react-vite-muijoy-tauri/src/values/routine.tsx +10 -13
  136. package/template-react-vite-muijoy/package.json +2 -2
  137. package/template-react-vite-muijoy/src/hooks/useGameProps.ts +3 -2
  138. package/template-react-vite-muijoy/src/hooks/useNarrationFunctions.ts +6 -9
  139. package/template-react-vite-muijoy/src/hooks/useWheelActions.ts +2 -5
  140. package/template-react-vite-muijoy/src/pixi-vn.d.ts +3 -2
  141. package/template-react-vite-muijoy/src/screens/GameSaveScreen.tsx +3 -4
  142. package/template-react-vite-muijoy/src/screens/modals/SaveLoadAlert.tsx +3 -2
  143. package/template-react-vite-muijoy/src/screens/modals/TextInput.tsx +4 -4
  144. package/template-react-vite-muijoy/src/screens/settings/SaveLoadSettingButtons.tsx +3 -2
  145. package/template-react-vite-muijoy-ink/package.json +73 -73
  146. package/template-react-vite-muijoy-ink/src/hooks/useGameProps.ts +3 -2
  147. package/template-react-vite-muijoy-ink/src/hooks/useNarrationFunctions.ts +6 -9
  148. package/template-react-vite-muijoy-ink/src/hooks/useWheelActions.ts +2 -5
  149. package/template-react-vite-muijoy-ink/src/pixi-vn.d.ts +3 -2
  150. package/template-react-vite-muijoy-ink/src/screens/GameSaveScreen.tsx +3 -4
  151. package/template-react-vite-muijoy-ink/src/screens/modals/SaveLoadAlert.tsx +3 -2
  152. package/template-react-vite-muijoy-ink/src/screens/modals/TextInput.tsx +4 -4
  153. package/template-react-vite-muijoy-ink/src/screens/settings/SaveLoadSettingButtons.tsx +3 -2
  154. package/template-react-vite-muijoy-ink-tauri/package.json +3 -3
  155. package/template-react-vite-muijoy-ink-tauri/src/hooks/useGameProps.ts +3 -2
  156. package/template-react-vite-muijoy-ink-tauri/src/hooks/useNarrationFunctions.ts +6 -9
  157. package/template-react-vite-muijoy-ink-tauri/src/hooks/useWheelActions.ts +2 -5
  158. package/template-react-vite-muijoy-ink-tauri/src/pixi-vn.d.ts +3 -2
  159. package/template-react-vite-muijoy-ink-tauri/src/screens/GameSaveScreen.tsx +3 -4
  160. package/template-react-vite-muijoy-ink-tauri/src/screens/modals/SaveLoadAlert.tsx +3 -2
  161. package/template-react-vite-muijoy-ink-tauri/src/screens/modals/TextInput.tsx +4 -4
  162. package/template-react-vite-muijoy-ink-tauri/src/screens/settings/SaveLoadSettingButtons.tsx +3 -2
  163. package/template-react-vite-muijoy-tauri/package.json +2 -2
  164. package/template-react-vite-muijoy-tauri/src/hooks/useGameProps.ts +3 -2
  165. package/template-react-vite-muijoy-tauri/src/hooks/useNarrationFunctions.ts +6 -9
  166. package/template-react-vite-muijoy-tauri/src/hooks/useWheelActions.ts +2 -5
  167. package/template-react-vite-muijoy-tauri/src/pixi-vn.d.ts +3 -2
  168. package/template-react-vite-muijoy-tauri/src/screens/GameSaveScreen.tsx +3 -4
  169. package/template-react-vite-muijoy-tauri/src/screens/modals/SaveLoadAlert.tsx +3 -2
  170. package/template-react-vite-muijoy-tauri/src/screens/modals/TextInput.tsx +4 -4
  171. package/template-react-vite-muijoy-tauri/src/screens/settings/SaveLoadSettingButtons.tsx +3 -2
  172. package/template-story-react-vite-muijoy/package.json +2 -2
  173. package/template-story-react-vite-muijoy/src/hooks/useGameProps.ts +3 -2
  174. package/template-story-react-vite-muijoy/src/hooks/useNarrationFunctions.ts +6 -9
  175. package/template-story-react-vite-muijoy/src/hooks/useWheelActions.ts +2 -5
  176. package/template-story-react-vite-muijoy/src/pixi-vn.d.ts +3 -2
  177. package/template-story-react-vite-muijoy/src/screens/GameSaveScreen.tsx +3 -4
  178. package/template-story-react-vite-muijoy/src/screens/modals/SaveLoadAlert.tsx +3 -2
  179. package/template-story-react-vite-muijoy/src/screens/modals/TextInput.tsx +4 -4
  180. package/template-story-react-vite-muijoy/src/screens/settings/SaveLoadSettingButtons.tsx +3 -2
  181. package/template-story-react-vite-muijoy-ink/package.json +73 -73
  182. package/template-story-react-vite-muijoy-ink/src/hooks/useGameProps.ts +3 -2
  183. package/template-story-react-vite-muijoy-ink/src/hooks/useNarrationFunctions.ts +6 -9
  184. package/template-story-react-vite-muijoy-ink/src/hooks/useWheelActions.ts +2 -5
  185. package/template-story-react-vite-muijoy-ink/src/pixi-vn.d.ts +3 -2
  186. package/template-story-react-vite-muijoy-ink/src/screens/GameSaveScreen.tsx +3 -4
  187. package/template-story-react-vite-muijoy-ink/src/screens/modals/SaveLoadAlert.tsx +3 -2
  188. package/template-story-react-vite-muijoy-ink/src/screens/modals/TextInput.tsx +4 -4
  189. package/template-story-react-vite-muijoy-ink/src/screens/settings/SaveLoadSettingButtons.tsx +3 -2
  190. package/template-story-react-vite-muijoy-ink-tauri/package.json +3 -3
  191. package/template-story-react-vite-muijoy-ink-tauri/src/hooks/useGameProps.ts +3 -2
  192. package/template-story-react-vite-muijoy-ink-tauri/src/hooks/useNarrationFunctions.ts +6 -9
  193. package/template-story-react-vite-muijoy-ink-tauri/src/hooks/useWheelActions.ts +2 -5
  194. package/template-story-react-vite-muijoy-ink-tauri/src/pixi-vn.d.ts +3 -2
  195. package/template-story-react-vite-muijoy-ink-tauri/src/screens/GameSaveScreen.tsx +3 -4
  196. package/template-story-react-vite-muijoy-ink-tauri/src/screens/modals/SaveLoadAlert.tsx +3 -2
  197. package/template-story-react-vite-muijoy-ink-tauri/src/screens/modals/TextInput.tsx +4 -4
  198. package/template-story-react-vite-muijoy-ink-tauri/src/screens/settings/SaveLoadSettingButtons.tsx +3 -2
  199. package/template-story-react-vite-muijoy-tauri/package.json +2 -2
  200. package/template-story-react-vite-muijoy-tauri/src/hooks/useGameProps.ts +3 -2
  201. package/template-story-react-vite-muijoy-tauri/src/hooks/useNarrationFunctions.ts +6 -9
  202. package/template-story-react-vite-muijoy-tauri/src/hooks/useWheelActions.ts +2 -5
  203. package/template-story-react-vite-muijoy-tauri/src/pixi-vn.d.ts +3 -2
  204. package/template-story-react-vite-muijoy-tauri/src/screens/GameSaveScreen.tsx +3 -4
  205. package/template-story-react-vite-muijoy-tauri/src/screens/modals/SaveLoadAlert.tsx +3 -2
  206. package/template-story-react-vite-muijoy-tauri/src/screens/modals/TextInput.tsx +4 -4
  207. package/template-story-react-vite-muijoy-tauri/src/screens/settings/SaveLoadSettingButtons.tsx +3 -2
  208. package/template-nqtr-react-vite-muijoy/src/labels/label-utility.ts +0 -23
  209. package/template-nqtr-react-vite-muijoy/src/models/MultiTypeSprite.ts +0 -11
  210. package/template-nqtr-react-vite-muijoy-ink/src/labels/label-utility.ts +0 -23
  211. package/template-nqtr-react-vite-muijoy-ink/src/labels/startLabel.ts +0 -15
  212. package/template-nqtr-react-vite-muijoy-ink/src/labels/variousActionsLabels.ts +0 -92
  213. package/template-nqtr-react-vite-muijoy-ink/src/models/MultiTypeSprite.ts +0 -11
  214. package/template-nqtr-react-vite-muijoy-ink-tauri/src/labels/label-utility.ts +0 -23
  215. package/template-nqtr-react-vite-muijoy-ink-tauri/src/labels/startLabel.ts +0 -15
  216. package/template-nqtr-react-vite-muijoy-ink-tauri/src/labels/variousActionsLabels.ts +0 -92
  217. package/template-nqtr-react-vite-muijoy-ink-tauri/src/models/MultiTypeSprite.ts +0 -11
  218. package/template-nqtr-react-vite-muijoy-tauri/src/labels/label-utility.ts +0 -23
  219. package/template-nqtr-react-vite-muijoy-tauri/src/models/MultiTypeSprite.ts +0 -11
package/README.md CHANGED
@@ -2,6 +2,12 @@
2
2
 
3
3
  ![pixi-vn-cover](https://github.com/user-attachments/assets/28c41fe1-c539-4ebb-b7d4-8cb9f79e089e)
4
4
 
5
+ <p align="center">
6
+ <a href="https://npmjs.com/package/@drincs/pixi-vn"><img src="https://img.shields.io/npm/v/@drincs/pixi-vn.svg" alt="npm package"></a>
7
+ <a href="https://npmjs.com/package/@drincs/pixi-vn"><img src="https://img.shields.io/npm/dm/@drincs/pixi-vn" alt="npm downloads"></a>
8
+ <a href="https://discord.gg/E95FZWakzp"><img alt="Discord" src="https://img.shields.io/discord/1263071210011496501"></a>
9
+ </p>
10
+
5
11
  You can start using Pixi’VN by initializing a new project.
6
12
 
7
13
  ## Prerequisites
@@ -14,39 +20,3 @@ Before starting, you must have the following tools installed:
14
20
  * [Cursor](https://www.cursor.com/)
15
21
  * (Recommended) [Git](https://git-scm.com/)
16
22
  * Have a [GitHub account](https://github.com/)
17
-
18
- ## Project Initialization
19
-
20
- To initialize a new project, you can use the following command:
21
-
22
- ```bash
23
- # npm
24
- npm create pixi-vn@latest
25
-
26
- # yarn
27
- yarn create pixi-vn
28
-
29
- # pnpm
30
- pnpm create pixi-vn
31
-
32
- # bun
33
- bun create pixi-vn
34
-
35
- # bun
36
- deno init --npm pixi-vn
37
- ```
38
-
39
- The supported template presets are:
40
-
41
- **Visual Novel - React**:
42
-
43
- * **[Visual Novel - React - Typescript - Web page](https://github.com/DRincs-Productions/pixi-vn-react-template)**
44
- * **[Visual Novel - React - Typescript - Web page + Desktop + Mobile](https://github.com/DRincs-Productions/pixi-vn-react-template/tree/tauri)**
45
- * **[Visual Novel - React - Ink + Typescript - Web page](https://github.com/DRincs-Productions/pixi-vn-react-template/tree/ink)**
46
- * **[Visual Novel - React - Ink + Typescript - Web page + Desktop + Mobile](https://github.com/DRincs-Productions/pixi-vn-react-template/tree/ink-tauri)**
47
-
48
- ( More templates will be added in the future, see this [issue](https://github.com/DRincs-Productions/pixi-vn/issues/162) for more information )
49
-
50
- After the project is initialized, you can open the project directory with your text editor (VSCode is recommended) and start developing your visual novel.
51
-
52
- Into all templates there is a `README.md` file with more information about the project.
package/dist/index.mjs CHANGED
@@ -1,75 +1,75 @@
1
- import G,{stdin as He,stdout as Ie}from"node:process";import*as te from"node:readline";import Ci from"node:readline";import{ReadStream as Je}from"node:tty";import _ from"node:fs";import O from"node:path";import"node:util";import{execa as H}from"execa";import Ze from"which";import{fileURLToPath as Fi}from"node:url";function Qe(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var ue={exports:{}},Xe;function Mi(){if(Xe)return ue.exports;Xe=1;let e=process||{},i=e.argv||[],r=e.env||{},s=!(r.NO_COLOR||i.includes("--no-color"))&&(!!r.FORCE_COLOR||i.includes("--color")||e.platform==="win32"||(e.stdout||{}).isTTY&&r.TERM!=="dumb"||!!r.CI),o=(l,a,f=l)=>$=>{let b=""+$,h=b.indexOf(a,l.length);return~h?l+t(b,a,f,h)+a:l+b+a},t=(l,a,f,$)=>{let b="",h=0;do b+=l.substring(h,$)+f,h=$+a.length,$=l.indexOf(a,h);while(~$);return b+l.substring(h)},n=(l=s)=>{let a=l?o:()=>String;return{isColorSupported:l,reset:a("\x1B[0m","\x1B[0m"),bold:a("\x1B[1m","\x1B[22m","\x1B[22m\x1B[1m"),dim:a("\x1B[2m","\x1B[22m","\x1B[22m\x1B[2m"),italic:a("\x1B[3m","\x1B[23m"),underline:a("\x1B[4m","\x1B[24m"),inverse:a("\x1B[7m","\x1B[27m"),hidden:a("\x1B[8m","\x1B[28m"),strikethrough:a("\x1B[9m","\x1B[29m"),black:a("\x1B[30m","\x1B[39m"),red:a("\x1B[31m","\x1B[39m"),green:a("\x1B[32m","\x1B[39m"),yellow:a("\x1B[33m","\x1B[39m"),blue:a("\x1B[34m","\x1B[39m"),magenta:a("\x1B[35m","\x1B[39m"),cyan:a("\x1B[36m","\x1B[39m"),white:a("\x1B[37m","\x1B[39m"),gray:a("\x1B[90m","\x1B[39m"),bgBlack:a("\x1B[40m","\x1B[49m"),bgRed:a("\x1B[41m","\x1B[49m"),bgGreen:a("\x1B[42m","\x1B[49m"),bgYellow:a("\x1B[43m","\x1B[49m"),bgBlue:a("\x1B[44m","\x1B[49m"),bgMagenta:a("\x1B[45m","\x1B[49m"),bgCyan:a("\x1B[46m","\x1B[49m"),bgWhite:a("\x1B[47m","\x1B[49m"),blackBright:a("\x1B[90m","\x1B[39m"),redBright:a("\x1B[91m","\x1B[39m"),greenBright:a("\x1B[92m","\x1B[39m"),yellowBright:a("\x1B[93m","\x1B[39m"),blueBright:a("\x1B[94m","\x1B[39m"),magentaBright:a("\x1B[95m","\x1B[39m"),cyanBright:a("\x1B[96m","\x1B[39m"),whiteBright:a("\x1B[97m","\x1B[39m"),bgBlackBright:a("\x1B[100m","\x1B[49m"),bgRedBright:a("\x1B[101m","\x1B[49m"),bgGreenBright:a("\x1B[102m","\x1B[49m"),bgYellowBright:a("\x1B[103m","\x1B[49m"),bgBlueBright:a("\x1B[104m","\x1B[49m"),bgMagentaBright:a("\x1B[105m","\x1B[49m"),bgCyanBright:a("\x1B[106m","\x1B[49m"),bgWhiteBright:a("\x1B[107m","\x1B[49m")}};return ue.exports=n(),ue.exports.createColors=n,ue.exports}var Oi=Mi();const d=Qe(Oi);var ke,ei;function ji(){if(ei)return ke;ei=1;const e="\x1B",i=`${e}[`,r="\x07",s={to(n,l){return l?`${i}${l+1};${n+1}H`:`${i}${n+1}G`},move(n,l){let a="";return n<0?a+=`${i}${-n}D`:n>0&&(a+=`${i}${n}C`),l<0?a+=`${i}${-l}A`:l>0&&(a+=`${i}${l}B`),a},up:(n=1)=>`${i}${n}A`,down:(n=1)=>`${i}${n}B`,forward:(n=1)=>`${i}${n}C`,backward:(n=1)=>`${i}${n}D`,nextLine:(n=1)=>`${i}E`.repeat(n),prevLine:(n=1)=>`${i}F`.repeat(n),left:`${i}G`,hide:`${i}?25l`,show:`${i}?25h`,save:`${e}7`,restore:`${e}8`},o={up:(n=1)=>`${i}S`.repeat(n),down:(n=1)=>`${i}T`.repeat(n)},t={screen:`${i}2J`,up:(n=1)=>`${i}1J`.repeat(n),down:(n=1)=>`${i}J`.repeat(n),line:`${i}2K`,lineEnd:`${i}K`,lineStart:`${i}1K`,lines(n){let l="";for(let a=0;a<n;a++)l+=this.line+(a<n-1?s.up():"");return n&&(l+=s.left),l}};return ke={cursor:s,scroll:o,erase:t,beep:r},ke}var V=ji();function le(e,i,r){if(!r.some(n=>!n.disabled))return e;const s=e+i,o=Math.max(r.length-1,0),t=s<0?o:s>o?0:s;return r[t].disabled?le(t,i<0?-1:1,r):t}const Ti=e=>e===161||e===164||e===167||e===168||e===170||e===173||e===174||e>=176&&e<=180||e>=182&&e<=186||e>=188&&e<=191||e===198||e===208||e===215||e===216||e>=222&&e<=225||e===230||e>=232&&e<=234||e===236||e===237||e===240||e===242||e===243||e>=247&&e<=250||e===252||e===254||e===257||e===273||e===275||e===283||e===294||e===295||e===299||e>=305&&e<=307||e===312||e>=319&&e<=322||e===324||e>=328&&e<=331||e===333||e===338||e===339||e===358||e===359||e===363||e===462||e===464||e===466||e===468||e===470||e===472||e===474||e===476||e===593||e===609||e===708||e===711||e>=713&&e<=715||e===717||e===720||e>=728&&e<=731||e===733||e===735||e>=768&&e<=879||e>=913&&e<=929||e>=931&&e<=937||e>=945&&e<=961||e>=963&&e<=969||e===1025||e>=1040&&e<=1103||e===1105||e===8208||e>=8211&&e<=8214||e===8216||e===8217||e===8220||e===8221||e>=8224&&e<=8226||e>=8228&&e<=8231||e===8240||e===8242||e===8243||e===8245||e===8251||e===8254||e===8308||e===8319||e>=8321&&e<=8324||e===8364||e===8451||e===8453||e===8457||e===8467||e===8470||e===8481||e===8482||e===8486||e===8491||e===8531||e===8532||e>=8539&&e<=8542||e>=8544&&e<=8555||e>=8560&&e<=8569||e===8585||e>=8592&&e<=8601||e===8632||e===8633||e===8658||e===8660||e===8679||e===8704||e===8706||e===8707||e===8711||e===8712||e===8715||e===8719||e===8721||e===8725||e===8730||e>=8733&&e<=8736||e===8739||e===8741||e>=8743&&e<=8748||e===8750||e>=8756&&e<=8759||e===8764||e===8765||e===8776||e===8780||e===8786||e===8800||e===8801||e>=8804&&e<=8807||e===8810||e===8811||e===8814||e===8815||e===8834||e===8835||e===8838||e===8839||e===8853||e===8857||e===8869||e===8895||e===8978||e>=9312&&e<=9449||e>=9451&&e<=9547||e>=9552&&e<=9587||e>=9600&&e<=9615||e>=9618&&e<=9621||e===9632||e===9633||e>=9635&&e<=9641||e===9650||e===9651||e===9654||e===9655||e===9660||e===9661||e===9664||e===9665||e>=9670&&e<=9672||e===9675||e>=9678&&e<=9681||e>=9698&&e<=9701||e===9711||e===9733||e===9734||e===9737||e===9742||e===9743||e===9756||e===9758||e===9792||e===9794||e===9824||e===9825||e>=9827&&e<=9829||e>=9831&&e<=9834||e===9836||e===9837||e===9839||e===9886||e===9887||e===9919||e>=9926&&e<=9933||e>=9935&&e<=9939||e>=9941&&e<=9953||e===9955||e===9960||e===9961||e>=9963&&e<=9969||e===9972||e>=9974&&e<=9977||e===9979||e===9980||e===9982||e===9983||e===10045||e>=10102&&e<=10111||e>=11094&&e<=11097||e>=12872&&e<=12879||e>=57344&&e<=63743||e>=65024&&e<=65039||e===65533||e>=127232&&e<=127242||e>=127248&&e<=127277||e>=127280&&e<=127337||e>=127344&&e<=127373||e===127375||e===127376||e>=127387&&e<=127404||e>=917760&&e<=917999||e>=983040&&e<=1048573||e>=1048576&&e<=1114109,Ri=e=>e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510,Vi=e=>e>=4352&&e<=4447||e===8986||e===8987||e===9001||e===9002||e>=9193&&e<=9196||e===9200||e===9203||e===9725||e===9726||e===9748||e===9749||e>=9800&&e<=9811||e===9855||e===9875||e===9889||e===9898||e===9899||e===9917||e===9918||e===9924||e===9925||e===9934||e===9940||e===9962||e===9970||e===9971||e===9973||e===9978||e===9981||e===9989||e===9994||e===9995||e===10024||e===10060||e===10062||e>=10067&&e<=10069||e===10071||e>=10133&&e<=10135||e===10160||e===10175||e===11035||e===11036||e===11088||e===11093||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12771||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=19903||e>=19968&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=94176&&e<=94180||e===94192||e===94193||e>=94208&&e<=100343||e>=100352&&e<=101589||e>=101632&&e<=101640||e>=110576&&e<=110579||e>=110581&&e<=110587||e===110589||e===110590||e>=110592&&e<=110882||e===110898||e>=110928&&e<=110930||e===110933||e>=110948&&e<=110951||e>=110960&&e<=111355||e===126980||e===127183||e===127374||e>=127377&&e<=127386||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||e===127568||e===127569||e>=127584&&e<=127589||e>=127744&&e<=127776||e>=127789&&e<=127797||e>=127799&&e<=127868||e>=127870&&e<=127891||e>=127904&&e<=127946||e>=127951&&e<=127955||e>=127968&&e<=127984||e===127988||e>=127992&&e<=128062||e===128064||e>=128066&&e<=128252||e>=128255&&e<=128317||e>=128331&&e<=128334||e>=128336&&e<=128359||e===128378||e===128405||e===128406||e===128420||e>=128507&&e<=128591||e>=128640&&e<=128709||e===128716||e>=128720&&e<=128722||e>=128725&&e<=128727||e>=128732&&e<=128735||e===128747||e===128748||e>=128756&&e<=128764||e>=128992&&e<=129003||e===129008||e>=129292&&e<=129338||e>=129340&&e<=129349||e>=129351&&e<=129535||e>=129648&&e<=129660||e>=129664&&e<=129672||e>=129680&&e<=129725||e>=129727&&e<=129733||e>=129742&&e<=129755||e>=129760&&e<=129768||e>=129776&&e<=129784||e>=131072&&e<=196605||e>=196608&&e<=262141,Se=/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/y,ce=/[\x00-\x08\x0A-\x1F\x7F-\x9F]{1,1000}/y,pe=/\t{1,1000}/y,_e=new RegExp("[\\u{1F1E6}-\\u{1F1FF}]{2}|\\u{1F3F4}[\\u{E0061}-\\u{E007A}]{2}[\\u{E0030}-\\u{E0039}\\u{E0061}-\\u{E007A}]{1,3}\\u{E007F}|(?:\\p{Emoji}\\uFE0F\\u20E3?|\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}?|\\p{Emoji_Presentation})(?:\\u200D(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}?|\\p{Emoji_Presentation}|\\p{Emoji}\\uFE0F\\u20E3?))*","yu"),he=/(?:[\x20-\x7E\xA0-\xFF](?!\uFE0F)){1,1000}/y,Li=new RegExp("\\p{M}+","gu"),Ni={limit:1/0,ellipsis:""},ii=(e,i={},r={})=>{const s=i.limit??1/0,o=i.ellipsis??"",t=i?.ellipsisWidth??(o?ii(o,Ni,r).width:0),n=r.ansiWidth??0,l=r.controlWidth??0,a=r.tabWidth??8,f=r.ambiguousWidth??1,$=r.emojiWidth??2,b=r.fullWidthWidth??2,h=r.regularWidth??1,I=r.wideWidth??2;let c=0,u=0,m=e.length,v=0,w=!1,x=m,y=Math.max(0,s-t),S=0,k=0,p=0,g=0;e:for(;;){if(k>S||u>=m&&u>c){const F=e.slice(S,k)||e.slice(c,u);v=0;for(const E of F.replaceAll(Li,"")){const j=E.codePointAt(0)||0;if(Ri(j)?g=b:Vi(j)?g=I:f!==h&&Ti(j)?g=f:g=h,p+g>y&&(x=Math.min(x,Math.max(S,c)+v)),p+g>s){w=!0;break e}v+=E.length,p+=g}S=k=0}if(u>=m)break;if(he.lastIndex=u,he.test(e)){if(v=he.lastIndex-u,g=v*h,p+g>y&&(x=Math.min(x,u+Math.floor((y-p)/h))),p+g>s){w=!0;break}p+=g,S=c,k=u,u=c=he.lastIndex;continue}if(Se.lastIndex=u,Se.test(e)){if(p+n>y&&(x=Math.min(x,u)),p+n>s){w=!0;break}p+=n,S=c,k=u,u=c=Se.lastIndex;continue}if(ce.lastIndex=u,ce.test(e)){if(v=ce.lastIndex-u,g=v*l,p+g>y&&(x=Math.min(x,u+Math.floor((y-p)/l))),p+g>s){w=!0;break}p+=g,S=c,k=u,u=c=ce.lastIndex;continue}if(pe.lastIndex=u,pe.test(e)){if(v=pe.lastIndex-u,g=v*a,p+g>y&&(x=Math.min(x,u+Math.floor((y-p)/a))),p+g>s){w=!0;break}p+=g,S=c,k=u,u=c=pe.lastIndex;continue}if(_e.lastIndex=u,_e.test(e)){if(p+$>y&&(x=Math.min(x,u)),p+$>s){w=!0;break}p+=$,S=c,k=u,u=c=_e.lastIndex;continue}u+=1}return{width:w?y:p,index:w?x:m,truncated:w,ellipsed:w&&s>=t}},Di={limit:1/0,ellipsis:"",ellipsisWidth:0},re=(e,i={})=>ii(e,Di,i).width,me="\x1B",ri="\x9B",Bi=39,Ae="\x07",si="[",Ui="]",ni="m",Ce=`${Ui}8;;`,ai=new RegExp(`(?:\\${si}(?<code>\\d+)m|\\${Ce}(?<uri>.*)${Ae})`,"y"),Wi=e=>{if(e>=30&&e<=37||e>=90&&e<=97)return 39;if(e>=40&&e<=47||e>=100&&e<=107)return 49;if(e===1||e===2)return 22;if(e===3)return 23;if(e===4)return 24;if(e===7)return 27;if(e===8)return 28;if(e===9)return 29;if(e===0)return 0},oi=e=>`${me}${si}${e}${ni}`,ti=e=>`${me}${Ce}${e}${Ae}`,Pi=e=>e.map(i=>re(i)),Fe=(e,i,r)=>{const s=i[Symbol.iterator]();let o=!1,t=!1,n=e.at(-1),l=n===void 0?0:re(n),a=s.next(),f=s.next(),$=0;for(;!a.done;){const b=a.value,h=re(b);l+h<=r?e[e.length-1]+=b:(e.push(b),l=0),(b===me||b===ri)&&(o=!0,t=i.startsWith(Ce,$+1)),o?t?b===Ae&&(o=!1,t=!1):b===ni&&(o=!1):(l+=h,l===r&&!f.done&&(e.push(""),l=0)),a=f,f=s.next(),$+=b.length}n=e.at(-1),!l&&n!==void 0&&n.length>0&&e.length>1&&(e[e.length-2]+=e.pop())},Gi=e=>{const i=e.split(" ");let r=i.length;for(;r>0&&!(re(i[r-1])>0);)r--;return r===i.length?e:i.slice(0,r).join(" ")+i.slice(r).join("")},zi=(e,i,r={})=>{if(r.trim!==!1&&e.trim()==="")return"";let s="",o,t;const n=e.split(" "),l=Pi(n);let a=[""];for(const[c,u]of n.entries()){r.trim!==!1&&(a[a.length-1]=(a.at(-1)??"").trimStart());let m=re(a.at(-1)??"");if(c!==0&&(m>=i&&(r.wordWrap===!1||r.trim===!1)&&(a.push(""),m=0),(m>0||r.trim===!1)&&(a[a.length-1]+=" ",m++)),r.hard&&l[c]>i){const v=i-m,w=1+Math.floor((l[c]-v-1)/i);Math.floor((l[c]-1)/i)<w&&a.push(""),Fe(a,u,i);continue}if(m+l[c]>i&&m>0&&l[c]>0){if(r.wordWrap===!1&&m<i){Fe(a,u,i);continue}a.push("")}if(m+l[c]>i&&r.wordWrap===!1){Fe(a,u,i);continue}a[a.length-1]+=u}r.trim!==!1&&(a=a.map(c=>Gi(c)));const f=a.join(`
2
- `),$=f[Symbol.iterator]();let b=$.next(),h=$.next(),I=0;for(;!b.done;){const c=b.value,u=h.value;if(s+=c,c===me||c===ri){ai.lastIndex=I+1;const v=ai.exec(f)?.groups;if(v?.code!==void 0){const w=Number.parseFloat(v.code);o=w===Bi?void 0:w}else v?.uri!==void 0&&(t=v.uri.length===0?void 0:v.uri)}const m=o?Wi(o):void 0;u===`
3
- `?(t&&(s+=ti("")),o&&m&&(s+=oi(m))):c===`
4
- `&&(o&&m&&(s+=oi(o)),t&&(s+=ti(t))),I+=c.length,b=h,h=$.next()}return s};function Me(e,i,r){return String(e).normalize().replaceAll(`\r
1
+ import{styleText as m}from"node:util";import B,{stdin as Ye,stdout as Ee}from"node:process";import*as oe from"node:readline";import St from"node:readline";import{ReadStream as He}from"node:tty";import A from"node:fs";import j from"node:path";import{execa as H}from"execa";import Ze from"which";import{fileURLToPath as At}from"node:url";function _t(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Ie,Je;function Ft(){if(Je)return Ie;Je=1;const e="\x1B",t=`${e}[`,i="\x07",r={to(s,u){return u?`${t}${u+1};${s+1}H`:`${t}${s+1}G`},move(s,u){let c="";return s<0?c+=`${t}${-s}D`:s>0&&(c+=`${t}${s}C`),u<0?c+=`${t}${-u}A`:u>0&&(c+=`${t}${u}B`),c},up:(s=1)=>`${t}${s}A`,down:(s=1)=>`${t}${s}B`,forward:(s=1)=>`${t}${s}C`,backward:(s=1)=>`${t}${s}D`,nextLine:(s=1)=>`${t}E`.repeat(s),prevLine:(s=1)=>`${t}F`.repeat(s),left:`${t}G`,hide:`${t}?25l`,show:`${t}?25h`,save:`${e}7`,restore:`${e}8`},a={up:(s=1)=>`${t}S`.repeat(s),down:(s=1)=>`${t}T`.repeat(s)},n={screen:`${t}2J`,up:(s=1)=>`${t}1J`.repeat(s),down:(s=1)=>`${t}J`.repeat(s),line:`${t}2K`,lineEnd:`${t}K`,lineStart:`${t}1K`,lines(s){let u="";for(let c=0;c<s;c++)u+=this.line+(c<s-1?r.up():"");return s&&(u+=r.left),u}};return Ie={cursor:r,scroll:a,erase:n,beep:i},Ie}var R=Ft();function ue(e,t,i){if(!i.some(s=>!s.disabled))return e;const r=e+t,a=Math.max(i.length-1,0),n=r<0?a:r>a?0:r;return i[n].disabled?ue(n,t<0?-1:1,i):n}const Mt=e=>e===161||e===164||e===167||e===168||e===170||e===173||e===174||e>=176&&e<=180||e>=182&&e<=186||e>=188&&e<=191||e===198||e===208||e===215||e===216||e>=222&&e<=225||e===230||e>=232&&e<=234||e===236||e===237||e===240||e===242||e===243||e>=247&&e<=250||e===252||e===254||e===257||e===273||e===275||e===283||e===294||e===295||e===299||e>=305&&e<=307||e===312||e>=319&&e<=322||e===324||e>=328&&e<=331||e===333||e===338||e===339||e===358||e===359||e===363||e===462||e===464||e===466||e===468||e===470||e===472||e===474||e===476||e===593||e===609||e===708||e===711||e>=713&&e<=715||e===717||e===720||e>=728&&e<=731||e===733||e===735||e>=768&&e<=879||e>=913&&e<=929||e>=931&&e<=937||e>=945&&e<=961||e>=963&&e<=969||e===1025||e>=1040&&e<=1103||e===1105||e===8208||e>=8211&&e<=8214||e===8216||e===8217||e===8220||e===8221||e>=8224&&e<=8226||e>=8228&&e<=8231||e===8240||e===8242||e===8243||e===8245||e===8251||e===8254||e===8308||e===8319||e>=8321&&e<=8324||e===8364||e===8451||e===8453||e===8457||e===8467||e===8470||e===8481||e===8482||e===8486||e===8491||e===8531||e===8532||e>=8539&&e<=8542||e>=8544&&e<=8555||e>=8560&&e<=8569||e===8585||e>=8592&&e<=8601||e===8632||e===8633||e===8658||e===8660||e===8679||e===8704||e===8706||e===8707||e===8711||e===8712||e===8715||e===8719||e===8721||e===8725||e===8730||e>=8733&&e<=8736||e===8739||e===8741||e>=8743&&e<=8748||e===8750||e>=8756&&e<=8759||e===8764||e===8765||e===8776||e===8780||e===8786||e===8800||e===8801||e>=8804&&e<=8807||e===8810||e===8811||e===8814||e===8815||e===8834||e===8835||e===8838||e===8839||e===8853||e===8857||e===8869||e===8895||e===8978||e>=9312&&e<=9449||e>=9451&&e<=9547||e>=9552&&e<=9587||e>=9600&&e<=9615||e>=9618&&e<=9621||e===9632||e===9633||e>=9635&&e<=9641||e===9650||e===9651||e===9654||e===9655||e===9660||e===9661||e===9664||e===9665||e>=9670&&e<=9672||e===9675||e>=9678&&e<=9681||e>=9698&&e<=9701||e===9711||e===9733||e===9734||e===9737||e===9742||e===9743||e===9756||e===9758||e===9792||e===9794||e===9824||e===9825||e>=9827&&e<=9829||e>=9831&&e<=9834||e===9836||e===9837||e===9839||e===9886||e===9887||e===9919||e>=9926&&e<=9933||e>=9935&&e<=9939||e>=9941&&e<=9953||e===9955||e===9960||e===9961||e>=9963&&e<=9969||e===9972||e>=9974&&e<=9977||e===9979||e===9980||e===9982||e===9983||e===10045||e>=10102&&e<=10111||e>=11094&&e<=11097||e>=12872&&e<=12879||e>=57344&&e<=63743||e>=65024&&e<=65039||e===65533||e>=127232&&e<=127242||e>=127248&&e<=127277||e>=127280&&e<=127337||e>=127344&&e<=127373||e===127375||e===127376||e>=127387&&e<=127404||e>=917760&&e<=917999||e>=983040&&e<=1048573||e>=1048576&&e<=1114109,Ct=e=>e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510,jt=e=>e>=4352&&e<=4447||e===8986||e===8987||e===9001||e===9002||e>=9193&&e<=9196||e===9200||e===9203||e===9725||e===9726||e===9748||e===9749||e>=9800&&e<=9811||e===9855||e===9875||e===9889||e===9898||e===9899||e===9917||e===9918||e===9924||e===9925||e===9934||e===9940||e===9962||e===9970||e===9971||e===9973||e===9978||e===9981||e===9989||e===9994||e===9995||e===10024||e===10060||e===10062||e>=10067&&e<=10069||e===10071||e>=10133&&e<=10135||e===10160||e===10175||e===11035||e===11036||e===11088||e===11093||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12771||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=19903||e>=19968&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=94176&&e<=94180||e===94192||e===94193||e>=94208&&e<=100343||e>=100352&&e<=101589||e>=101632&&e<=101640||e>=110576&&e<=110579||e>=110581&&e<=110587||e===110589||e===110590||e>=110592&&e<=110882||e===110898||e>=110928&&e<=110930||e===110933||e>=110948&&e<=110951||e>=110960&&e<=111355||e===126980||e===127183||e===127374||e>=127377&&e<=127386||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||e===127568||e===127569||e>=127584&&e<=127589||e>=127744&&e<=127776||e>=127789&&e<=127797||e>=127799&&e<=127868||e>=127870&&e<=127891||e>=127904&&e<=127946||e>=127951&&e<=127955||e>=127968&&e<=127984||e===127988||e>=127992&&e<=128062||e===128064||e>=128066&&e<=128252||e>=128255&&e<=128317||e>=128331&&e<=128334||e>=128336&&e<=128359||e===128378||e===128405||e===128406||e===128420||e>=128507&&e<=128591||e>=128640&&e<=128709||e===128716||e>=128720&&e<=128722||e>=128725&&e<=128727||e>=128732&&e<=128735||e===128747||e===128748||e>=128756&&e<=128764||e>=128992&&e<=129003||e===129008||e>=129292&&e<=129338||e>=129340&&e<=129349||e>=129351&&e<=129535||e>=129648&&e<=129660||e>=129664&&e<=129672||e>=129680&&e<=129725||e>=129727&&e<=129733||e>=129742&&e<=129755||e>=129760&&e<=129768||e>=129776&&e<=129784||e>=131072&&e<=196605||e>=196608&&e<=262141,ke=/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/y,le=/[\x00-\x08\x0A-\x1F\x7F-\x9F]{1,1000}/y,ce=/\t{1,1000}/y,Se=new RegExp("[\\u{1F1E6}-\\u{1F1FF}]{2}|\\u{1F3F4}[\\u{E0061}-\\u{E007A}]{2}[\\u{E0030}-\\u{E0039}\\u{E0061}-\\u{E007A}]{1,3}\\u{E007F}|(?:\\p{Emoji}\\uFE0F\\u20E3?|\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}?|\\p{Emoji_Presentation})(?:\\u200D(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}?|\\p{Emoji_Presentation}|\\p{Emoji}\\uFE0F\\u20E3?))*","yu"),pe=/(?:[\x20-\x7E\xA0-\xFF](?!\uFE0F)){1,1000}/y,Tt=new RegExp("\\p{M}+","gu"),Ot={limit:1/0,ellipsis:""},Xe=(e,t={},i={})=>{const r=t.limit??1/0,a=t.ellipsis??"",n=t?.ellipsisWidth??(a?Xe(a,Ot,i).width:0),s=i.ansiWidth??0,u=i.controlWidth??0,c=i.tabWidth??8,h=i.ambiguousWidth??1,w=i.emojiWidth??2,$=i.fullWidthWidth??2,d=i.regularWidth??1,S=i.wideWidth??2;let l=0,o=0,f=e.length,v=0,I=!1,x=f,b=Math.max(0,r-n),E=0,y=0,p=0,g=0;e:for(;;){if(y>E||o>=f&&o>l){const C=e.slice(E,y)||e.slice(l,o);v=0;for(const k of C.replaceAll(Tt,"")){const O=k.codePointAt(0)||0;if(Ct(O)?g=$:jt(O)?g=S:h!==d&&Mt(O)?g=h:g=d,p+g>b&&(x=Math.min(x,Math.max(E,l)+v)),p+g>r){I=!0;break e}v+=k.length,p+=g}E=y=0}if(o>=f)break;if(pe.lastIndex=o,pe.test(e)){if(v=pe.lastIndex-o,g=v*d,p+g>b&&(x=Math.min(x,o+Math.floor((b-p)/d))),p+g>r){I=!0;break}p+=g,E=l,y=o,o=l=pe.lastIndex;continue}if(ke.lastIndex=o,ke.test(e)){if(p+s>b&&(x=Math.min(x,o)),p+s>r){I=!0;break}p+=s,E=l,y=o,o=l=ke.lastIndex;continue}if(le.lastIndex=o,le.test(e)){if(v=le.lastIndex-o,g=v*u,p+g>b&&(x=Math.min(x,o+Math.floor((b-p)/u))),p+g>r){I=!0;break}p+=g,E=l,y=o,o=l=le.lastIndex;continue}if(ce.lastIndex=o,ce.test(e)){if(v=ce.lastIndex-o,g=v*c,p+g>b&&(x=Math.min(x,o+Math.floor((b-p)/c))),p+g>r){I=!0;break}p+=g,E=l,y=o,o=l=ce.lastIndex;continue}if(Se.lastIndex=o,Se.test(e)){if(p+w>b&&(x=Math.min(x,o)),p+w>r){I=!0;break}p+=w,E=l,y=o,o=l=Se.lastIndex;continue}o+=1}return{width:I?b:p,index:I?x:f,truncated:I,ellipsed:I&&r>=n}},Rt={limit:1/0,ellipsis:"",ellipsisWidth:0},ie=(e,t={})=>Xe(e,Rt,t).width,fe="\x1B",Qe="\x9B",Vt=39,Ae="\x07",et="[",Lt="]",tt="m",_e=`${Lt}8;;`,it=new RegExp(`(?:\\${et}(?<code>\\d+)m|\\${_e}(?<uri>.*)${Ae})`,"y"),Nt=e=>{if(e>=30&&e<=37||e>=90&&e<=97)return 39;if(e>=40&&e<=47||e>=100&&e<=107)return 49;if(e===1||e===2)return 22;if(e===3)return 23;if(e===4)return 24;if(e===7)return 27;if(e===8)return 28;if(e===9)return 29;if(e===0)return 0},rt=e=>`${fe}${et}${e}${tt}`,st=e=>`${fe}${_e}${e}${Ae}`,Dt=e=>e.map(t=>ie(t)),Fe=(e,t,i)=>{const r=t[Symbol.iterator]();let a=!1,n=!1,s=e.at(-1),u=s===void 0?0:ie(s),c=r.next(),h=r.next(),w=0;for(;!c.done;){const $=c.value,d=ie($);u+d<=i?e[e.length-1]+=$:(e.push($),u=0),($===fe||$===Qe)&&(a=!0,n=t.startsWith(_e,w+1)),a?n?$===Ae&&(a=!1,n=!1):$===tt&&(a=!1):(u+=d,u===i&&!h.done&&(e.push(""),u=0)),c=h,h=r.next(),w+=$.length}s=e.at(-1),!u&&s!==void 0&&s.length>0&&e.length>1&&(e[e.length-2]+=e.pop())},Ut=e=>{const t=e.split(" ");let i=t.length;for(;i>0&&!(ie(t[i-1])>0);)i--;return i===t.length?e:t.slice(0,i).join(" ")+t.slice(i).join("")},Pt=(e,t,i={})=>{if(i.trim!==!1&&e.trim()==="")return"";let r="",a,n;const s=e.split(" "),u=Dt(s);let c=[""];for(const[l,o]of s.entries()){i.trim!==!1&&(c[c.length-1]=(c.at(-1)??"").trimStart());let f=ie(c.at(-1)??"");if(l!==0&&(f>=t&&(i.wordWrap===!1||i.trim===!1)&&(c.push(""),f=0),(f>0||i.trim===!1)&&(c[c.length-1]+=" ",f++)),i.hard&&u[l]>t){const v=t-f,I=1+Math.floor((u[l]-v-1)/t);Math.floor((u[l]-1)/t)<I&&c.push(""),Fe(c,o,t);continue}if(f+u[l]>t&&f>0&&u[l]>0){if(i.wordWrap===!1&&f<t){Fe(c,o,t);continue}c.push("")}if(f+u[l]>t&&i.wordWrap===!1){Fe(c,o,t);continue}c[c.length-1]+=o}i.trim!==!1&&(c=c.map(l=>Ut(l)));const h=c.join(`
2
+ `),w=h[Symbol.iterator]();let $=w.next(),d=w.next(),S=0;for(;!$.done;){const l=$.value,o=d.value;if(r+=l,l===fe||l===Qe){it.lastIndex=S+1;const v=it.exec(h)?.groups;if(v?.code!==void 0){const I=Number.parseFloat(v.code);a=I===Vt?void 0:I}else v?.uri!==void 0&&(n=v.uri.length===0?void 0:v.uri)}const f=a?Nt(a):void 0;o===`
3
+ `?(n&&(r+=st("")),a&&f&&(r+=rt(f))):l===`
4
+ `&&(a&&f&&(r+=rt(a)),n&&(r+=st(n))),S+=l.length,$=d,d=w.next()}return r};function Me(e,t,i){return String(e).normalize().replaceAll(`\r
5
5
  `,`
6
6
  `).split(`
7
- `).map(s=>zi(s,i,r)).join(`
8
- `)}const Ki=["up","down","left","right","space","enter","cancel"],z={actions:new Set(Ki),aliases:new Map([["k","up"],["j","down"],["h","left"],["l","right"],["","cancel"],["escape","cancel"]]),messages:{cancel:"Canceled",error:"Something went wrong"},withGuide:!0};function Oe(e,i){if(typeof e=="string")return z.aliases.get(e)===i;for(const r of e)if(r!==void 0&&Oe(r,i))return!0;return!1}function Yi(e,i){if(e===i)return;const r=e.split(`
9
- `),s=i.split(`
10
- `),o=Math.max(r.length,s.length),t=[];for(let n=0;n<o;n++)r[n]!==s[n]&&t.push(n);return{lines:t,numLinesBefore:r.length,numLinesAfter:s.length,numLines:o}}const qi=globalThis.process.platform.startsWith("win"),je=Symbol("clack:cancel");function N(e){return e===je}function fe(e,i){const r=e;r.isTTY&&r.setRawMode(i)}function Hi({input:e=He,output:i=Ie,overwrite:r=!0,hideCursor:s=!0}={}){const o=te.createInterface({input:e,output:i,prompt:"",tabSize:1});te.emitKeypressEvents(e,o),e instanceof Je&&e.isTTY&&e.setRawMode(!0);const t=(n,{name:l,sequence:a})=>{const f=String(n);if(Oe([f,l,a],"cancel")){s&&i.write(V.cursor.show),process.exit(0);return}if(!r)return;const $=l==="return"?0:-1,b=l==="return"?-1:0;te.moveCursor(i,$,b,()=>{te.clearLine(i,1,()=>{e.once("keypress",t)})})};return s&&i.write(V.cursor.hide),e.once("keypress",t),()=>{e.off("keypress",t),s&&i.write(V.cursor.show),e instanceof Je&&e.isTTY&&!qi&&e.setRawMode(!1),o.terminal=!1,o.close()}}const Te=e=>"columns"in e&&typeof e.columns=="number"?e.columns:80,ui=e=>"rows"in e&&typeof e.rows=="number"?e.rows:20;function Re(e,i,r,s=r){const o=Te(e??Ie);return Me(i,o-r.length,{hard:!0,trim:!1}).split(`
11
- `).map((t,n)=>`${n===0?s:r}${t}`).join(`
12
- `)}let Ve=class{input;output;_abortSignal;rl;opts;_render;_track=!1;_prevFrame="";_subscribers=new Map;_cursor=0;state="initial";error="";value;userInput="";constructor(i,r=!0){const{input:s=He,output:o=Ie,render:t,signal:n,...l}=i;this.opts=l,this.onKeypress=this.onKeypress.bind(this),this.close=this.close.bind(this),this.render=this.render.bind(this),this._render=t.bind(this),this._track=r,this._abortSignal=n,this.input=s,this.output=o}unsubscribe(){this._subscribers.clear()}setSubscriber(i,r){const s=this._subscribers.get(i)??[];s.push(r),this._subscribers.set(i,s)}on(i,r){this.setSubscriber(i,{cb:r})}once(i,r){this.setSubscriber(i,{cb:r,once:!0})}emit(i,...r){const s=this._subscribers.get(i)??[],o=[];for(const t of s)t.cb(...r),t.once&&o.push(()=>s.splice(s.indexOf(t),1));for(const t of o)t()}prompt(){return new Promise(i=>{if(this._abortSignal){if(this._abortSignal.aborted)return this.state="cancel",this.close(),i(je);this._abortSignal.addEventListener("abort",()=>{this.state="cancel",this.close()},{once:!0})}this.rl=Ci.createInterface({input:this.input,tabSize:2,prompt:"",escapeCodeTimeout:50,terminal:!0}),this.rl.prompt(),this.opts.initialUserInput!==void 0&&this._setUserInput(this.opts.initialUserInput,!0),this.input.on("keypress",this.onKeypress),fe(this.input,!0),this.output.on("resize",this.render),this.render(),this.once("submit",()=>{this.output.write(V.cursor.show),this.output.off("resize",this.render),fe(this.input,!1),i(this.value)}),this.once("cancel",()=>{this.output.write(V.cursor.show),this.output.off("resize",this.render),fe(this.input,!1),i(je)})})}_isActionKey(i,r){return i===" "}_setValue(i){this.value=i,this.emit("value",this.value)}_setUserInput(i,r){this.userInput=i??"",this.emit("userInput",this.userInput),r&&this._track&&this.rl&&(this.rl.write(this.userInput),this._cursor=this.rl.cursor)}_clearUserInput(){this.rl?.write(null,{ctrl:!0,name:"u"}),this._setUserInput("")}onKeypress(i,r){if(this._track&&r.name!=="return"&&(r.name&&this._isActionKey(i,r)&&this.rl?.write(null,{ctrl:!0,name:"h"}),this._cursor=this.rl?.cursor??0,this._setUserInput(this.rl?.line)),this.state==="error"&&(this.state="active"),r?.name&&(!this._track&&z.aliases.has(r.name)&&this.emit("cursor",z.aliases.get(r.name)),z.actions.has(r.name)&&this.emit("cursor",r.name)),i&&(i.toLowerCase()==="y"||i.toLowerCase()==="n")&&this.emit("confirm",i.toLowerCase()==="y"),this.emit("key",i?.toLowerCase(),r),r?.name==="return"){if(this.opts.validate){const s=this.opts.validate(this.value);s&&(this.error=s instanceof Error?s.message:s,this.state="error",this.rl?.write(this.userInput))}this.state!=="error"&&(this.state="submit")}Oe([i,r?.name,r?.sequence],"cancel")&&(this.state="cancel"),(this.state==="submit"||this.state==="cancel")&&this.emit("finalize"),this.render(),(this.state==="submit"||this.state==="cancel")&&this.close()}close(){this.input.unpipe(),this.input.removeListener("keypress",this.onKeypress),this.output.write(`
13
- `),fe(this.input,!1),this.rl?.close(),this.rl=void 0,this.emit(`${this.state}`,this.value),this.unsubscribe()}restoreCursor(){const i=Me(this._prevFrame,process.stdout.columns,{hard:!0,trim:!1}).split(`
14
- `).length-1;this.output.write(V.cursor.move(-999,i*-1))}render(){const i=Me(this._render(this)??"",process.stdout.columns,{hard:!0,trim:!1});if(i!==this._prevFrame){if(this.state==="initial")this.output.write(V.cursor.hide);else{const r=Yi(this._prevFrame,i),s=ui(this.output);if(this.restoreCursor(),r){const o=Math.max(0,r.numLinesAfter-s),t=Math.max(0,r.numLinesBefore-s);let n=r.lines.find(l=>l>=o);if(n===void 0){this._prevFrame=i;return}if(r.lines.length===1){this.output.write(V.cursor.move(0,n-t)),this.output.write(V.erase.lines(1));const l=i.split(`
15
- `);this.output.write(l[n]),this._prevFrame=i,this.output.write(V.cursor.move(0,l.length-n-1));return}else if(r.lines.length>1){if(o<t)n=o;else{const a=n-t;a>0&&this.output.write(V.cursor.move(0,a))}this.output.write(V.erase.down());const l=i.split(`
16
- `).slice(n);this.output.write(l.join(`
17
- `)),this._prevFrame=i;return}}this.output.write(V.erase.down())}this.output.write(i),this.state==="initial"&&(this.state="active"),this._prevFrame=i}}},Ji=class extends Ve{get cursor(){return this.value?0:1}get _value(){return this.cursor===0}constructor(i){super(i,!1),this.value=!!i.initialValue,this.on("userInput",()=>{this.value=this._value}),this.on("confirm",r=>{this.output.write(V.cursor.move(0,-1)),this.value=r,this.state="submit",this.close()}),this.on("cursor",()=>{this.value=!this.value})}};class Zi extends Ve{options;cursor=0;get _selectedValue(){return this.options[this.cursor]}changeValue(){this.value=this._selectedValue.value}constructor(i){super(i,!1),this.options=i.options;const r=this.options.findIndex(({value:o})=>o===i.initialValue),s=r===-1?0:r;this.cursor=this.options[s].disabled?le(s,1,this.options):s,this.changeValue(),this.on("cursor",o=>{switch(o){case"left":case"up":this.cursor=le(this.cursor,-1,this.options);break;case"down":case"right":this.cursor=le(this.cursor,1,this.options);break}this.changeValue()})}}let Qi=class extends Ve{get userInputWithCursor(){if(this.state==="submit")return this.userInput;const i=this.userInput;if(this.cursor>=i.length)return`${this.userInput}\u2588`;const r=i.slice(0,this.cursor),[s,...o]=i.slice(this.cursor);return`${r}${d.inverse(s)}${o.join("")}`}get cursor(){return this._cursor}constructor(i){super({...i,initialUserInput:i.initialUserInput??i.initialValue}),this.on("userInput",r=>{this._setValue(r)}),this.on("finalize",()=>{this.value||(this.value=i.defaultValue),this.value===void 0&&(this.value="")})}};function Xi(){return G.platform!=="win32"?G.env.TERM!=="linux":!!G.env.CI||!!G.env.WT_SESSION||!!G.env.TERMINUS_SUBLIME||G.env.ConEmuTask==="{cmd::Cmder}"||G.env.TERM_PROGRAM==="Terminus-Sublime"||G.env.TERM_PROGRAM==="vscode"||G.env.TERM==="xterm-256color"||G.env.TERM==="alacritty"||G.env.TERMINAL_EMULATOR==="JetBrains-JediTerm"}const Le=Xi(),er=()=>process.env.CI==="true",U=(e,i)=>Le?e:i,ir=U("\u25C6","*"),li=U("\u25A0","x"),ci=U("\u25B2","x"),Ne=U("\u25C7","o"),rr=U("\u250C","T"),C=U("\u2502","|"),X=U("\u2514","\u2014"),De=U("\u25CF",">"),de=U("\u25CB"," "),sr=U("\u25CF","\u2022"),nr=U("\u25C6","*"),ar=U("\u25B2","!"),or=U("\u25A0","x"),Be=e=>{switch(e){case"initial":case"active":return d.cyan(ir);case"cancel":return d.red(li);case"error":return d.yellow(ci);case"submit":return d.green(Ne)}},tr=e=>{switch(e){case"initial":case"active":return d.cyan(C);case"cancel":return d.red(C);case"error":return d.yellow(C);case"submit":return d.green(C)}},ur=e=>e===161||e===164||e===167||e===168||e===170||e===173||e===174||e>=176&&e<=180||e>=182&&e<=186||e>=188&&e<=191||e===198||e===208||e===215||e===216||e>=222&&e<=225||e===230||e>=232&&e<=234||e===236||e===237||e===240||e===242||e===243||e>=247&&e<=250||e===252||e===254||e===257||e===273||e===275||e===283||e===294||e===295||e===299||e>=305&&e<=307||e===312||e>=319&&e<=322||e===324||e>=328&&e<=331||e===333||e===338||e===339||e===358||e===359||e===363||e===462||e===464||e===466||e===468||e===470||e===472||e===474||e===476||e===593||e===609||e===708||e===711||e>=713&&e<=715||e===717||e===720||e>=728&&e<=731||e===733||e===735||e>=768&&e<=879||e>=913&&e<=929||e>=931&&e<=937||e>=945&&e<=961||e>=963&&e<=969||e===1025||e>=1040&&e<=1103||e===1105||e===8208||e>=8211&&e<=8214||e===8216||e===8217||e===8220||e===8221||e>=8224&&e<=8226||e>=8228&&e<=8231||e===8240||e===8242||e===8243||e===8245||e===8251||e===8254||e===8308||e===8319||e>=8321&&e<=8324||e===8364||e===8451||e===8453||e===8457||e===8467||e===8470||e===8481||e===8482||e===8486||e===8491||e===8531||e===8532||e>=8539&&e<=8542||e>=8544&&e<=8555||e>=8560&&e<=8569||e===8585||e>=8592&&e<=8601||e===8632||e===8633||e===8658||e===8660||e===8679||e===8704||e===8706||e===8707||e===8711||e===8712||e===8715||e===8719||e===8721||e===8725||e===8730||e>=8733&&e<=8736||e===8739||e===8741||e>=8743&&e<=8748||e===8750||e>=8756&&e<=8759||e===8764||e===8765||e===8776||e===8780||e===8786||e===8800||e===8801||e>=8804&&e<=8807||e===8810||e===8811||e===8814||e===8815||e===8834||e===8835||e===8838||e===8839||e===8853||e===8857||e===8869||e===8895||e===8978||e>=9312&&e<=9449||e>=9451&&e<=9547||e>=9552&&e<=9587||e>=9600&&e<=9615||e>=9618&&e<=9621||e===9632||e===9633||e>=9635&&e<=9641||e===9650||e===9651||e===9654||e===9655||e===9660||e===9661||e===9664||e===9665||e>=9670&&e<=9672||e===9675||e>=9678&&e<=9681||e>=9698&&e<=9701||e===9711||e===9733||e===9734||e===9737||e===9742||e===9743||e===9756||e===9758||e===9792||e===9794||e===9824||e===9825||e>=9827&&e<=9829||e>=9831&&e<=9834||e===9836||e===9837||e===9839||e===9886||e===9887||e===9919||e>=9926&&e<=9933||e>=9935&&e<=9939||e>=9941&&e<=9953||e===9955||e===9960||e===9961||e>=9963&&e<=9969||e===9972||e>=9974&&e<=9977||e===9979||e===9980||e===9982||e===9983||e===10045||e>=10102&&e<=10111||e>=11094&&e<=11097||e>=12872&&e<=12879||e>=57344&&e<=63743||e>=65024&&e<=65039||e===65533||e>=127232&&e<=127242||e>=127248&&e<=127277||e>=127280&&e<=127337||e>=127344&&e<=127373||e===127375||e===127376||e>=127387&&e<=127404||e>=917760&&e<=917999||e>=983040&&e<=1048573||e>=1048576&&e<=1114109,lr=e=>e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510,cr=e=>e>=4352&&e<=4447||e===8986||e===8987||e===9001||e===9002||e>=9193&&e<=9196||e===9200||e===9203||e===9725||e===9726||e===9748||e===9749||e>=9800&&e<=9811||e===9855||e===9875||e===9889||e===9898||e===9899||e===9917||e===9918||e===9924||e===9925||e===9934||e===9940||e===9962||e===9970||e===9971||e===9973||e===9978||e===9981||e===9989||e===9994||e===9995||e===10024||e===10060||e===10062||e>=10067&&e<=10069||e===10071||e>=10133&&e<=10135||e===10160||e===10175||e===11035||e===11036||e===11088||e===11093||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12771||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=19903||e>=19968&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=94176&&e<=94180||e===94192||e===94193||e>=94208&&e<=100343||e>=100352&&e<=101589||e>=101632&&e<=101640||e>=110576&&e<=110579||e>=110581&&e<=110587||e===110589||e===110590||e>=110592&&e<=110882||e===110898||e>=110928&&e<=110930||e===110933||e>=110948&&e<=110951||e>=110960&&e<=111355||e===126980||e===127183||e===127374||e>=127377&&e<=127386||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||e===127568||e===127569||e>=127584&&e<=127589||e>=127744&&e<=127776||e>=127789&&e<=127797||e>=127799&&e<=127868||e>=127870&&e<=127891||e>=127904&&e<=127946||e>=127951&&e<=127955||e>=127968&&e<=127984||e===127988||e>=127992&&e<=128062||e===128064||e>=128066&&e<=128252||e>=128255&&e<=128317||e>=128331&&e<=128334||e>=128336&&e<=128359||e===128378||e===128405||e===128406||e===128420||e>=128507&&e<=128591||e>=128640&&e<=128709||e===128716||e>=128720&&e<=128722||e>=128725&&e<=128727||e>=128732&&e<=128735||e===128747||e===128748||e>=128756&&e<=128764||e>=128992&&e<=129003||e===129008||e>=129292&&e<=129338||e>=129340&&e<=129349||e>=129351&&e<=129535||e>=129648&&e<=129660||e>=129664&&e<=129672||e>=129680&&e<=129725||e>=129727&&e<=129733||e>=129742&&e<=129755||e>=129760&&e<=129768||e>=129776&&e<=129784||e>=131072&&e<=196605||e>=196608&&e<=262141,Ue=/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/y,ge=/[\x00-\x08\x0A-\x1F\x7F-\x9F]{1,1000}/y,be=/\t{1,1000}/y,We=new RegExp("[\\u{1F1E6}-\\u{1F1FF}]{2}|\\u{1F3F4}[\\u{E0061}-\\u{E007A}]{2}[\\u{E0030}-\\u{E0039}\\u{E0061}-\\u{E007A}]{1,3}\\u{E007F}|(?:\\p{Emoji}\\uFE0F\\u20E3?|\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}?|\\p{Emoji_Presentation})(?:\\u200D(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}?|\\p{Emoji_Presentation}|\\p{Emoji}\\uFE0F\\u20E3?))*","yu"),ve=/(?:[\x20-\x7E\xA0-\xFF](?!\uFE0F)){1,1000}/y,pr=new RegExp("\\p{M}+","gu"),hr={limit:1/0,ellipsis:""},pi=(e,i={},r={})=>{const s=i.limit??1/0,o=i.ellipsis??"",t=i?.ellipsisWidth??(o?pi(o,hr,r).width:0),n=r.ansiWidth??0,l=r.controlWidth??0,a=r.tabWidth??8,f=r.ambiguousWidth??1,$=r.emojiWidth??2,b=r.fullWidthWidth??2,h=r.regularWidth??1,I=r.wideWidth??2;let c=0,u=0,m=e.length,v=0,w=!1,x=m,y=Math.max(0,s-t),S=0,k=0,p=0,g=0;e:for(;;){if(k>S||u>=m&&u>c){const F=e.slice(S,k)||e.slice(c,u);v=0;for(const E of F.replaceAll(pr,"")){const j=E.codePointAt(0)||0;if(lr(j)?g=b:cr(j)?g=I:f!==h&&ur(j)?g=f:g=h,p+g>y&&(x=Math.min(x,Math.max(S,c)+v)),p+g>s){w=!0;break e}v+=E.length,p+=g}S=k=0}if(u>=m)break;if(ve.lastIndex=u,ve.test(e)){if(v=ve.lastIndex-u,g=v*h,p+g>y&&(x=Math.min(x,u+Math.floor((y-p)/h))),p+g>s){w=!0;break}p+=g,S=c,k=u,u=c=ve.lastIndex;continue}if(Ue.lastIndex=u,Ue.test(e)){if(p+n>y&&(x=Math.min(x,u)),p+n>s){w=!0;break}p+=n,S=c,k=u,u=c=Ue.lastIndex;continue}if(ge.lastIndex=u,ge.test(e)){if(v=ge.lastIndex-u,g=v*l,p+g>y&&(x=Math.min(x,u+Math.floor((y-p)/l))),p+g>s){w=!0;break}p+=g,S=c,k=u,u=c=ge.lastIndex;continue}if(be.lastIndex=u,be.test(e)){if(v=be.lastIndex-u,g=v*a,p+g>y&&(x=Math.min(x,u+Math.floor((y-p)/a))),p+g>s){w=!0;break}p+=g,S=c,k=u,u=c=be.lastIndex;continue}if(We.lastIndex=u,We.test(e)){if(p+$>y&&(x=Math.min(x,u)),p+$>s){w=!0;break}p+=$,S=c,k=u,u=c=We.lastIndex;continue}u+=1}return{width:w?y:p,index:w?x:m,truncated:w,ellipsed:w&&s>=t}},mr={limit:1/0,ellipsis:"",ellipsisWidth:0},se=(e,i={})=>pi(e,mr,i).width,$e="\x1B",hi="\x9B",fr=39,Pe="\x07",mi="[",dr="]",fi="m",Ge=`${dr}8;;`,di=new RegExp(`(?:\\${mi}(?<code>\\d+)m|\\${Ge}(?<uri>.*)${Pe})`,"y"),gr=e=>{if(e>=30&&e<=37||e>=90&&e<=97)return 39;if(e>=40&&e<=47||e>=100&&e<=107)return 49;if(e===1||e===2)return 22;if(e===3)return 23;if(e===4)return 24;if(e===7)return 27;if(e===8)return 28;if(e===9)return 29;if(e===0)return 0},gi=e=>`${$e}${mi}${e}${fi}`,bi=e=>`${$e}${Ge}${e}${Pe}`,br=e=>e.map(i=>se(i)),ze=(e,i,r)=>{const s=i[Symbol.iterator]();let o=!1,t=!1,n=e.at(-1),l=n===void 0?0:se(n),a=s.next(),f=s.next(),$=0;for(;!a.done;){const b=a.value,h=se(b);l+h<=r?e[e.length-1]+=b:(e.push(b),l=0),(b===$e||b===hi)&&(o=!0,t=i.startsWith(Ge,$+1)),o?t?b===Pe&&(o=!1,t=!1):b===fi&&(o=!1):(l+=h,l===r&&!f.done&&(e.push(""),l=0)),a=f,f=s.next(),$+=b.length}n=e.at(-1),!l&&n!==void 0&&n.length>0&&e.length>1&&(e[e.length-2]+=e.pop())},vr=e=>{const i=e.split(" ");let r=i.length;for(;r>0&&!(se(i[r-1])>0);)r--;return r===i.length?e:i.slice(0,r).join(" ")+i.slice(r).join("")},$r=(e,i,r={})=>{if(r.trim!==!1&&e.trim()==="")return"";let s="",o,t;const n=e.split(" "),l=br(n);let a=[""];for(const[c,u]of n.entries()){r.trim!==!1&&(a[a.length-1]=(a.at(-1)??"").trimStart());let m=se(a.at(-1)??"");if(c!==0&&(m>=i&&(r.wordWrap===!1||r.trim===!1)&&(a.push(""),m=0),(m>0||r.trim===!1)&&(a[a.length-1]+=" ",m++)),r.hard&&l[c]>i){const v=i-m,w=1+Math.floor((l[c]-v-1)/i);Math.floor((l[c]-1)/i)<w&&a.push(""),ze(a,u,i);continue}if(m+l[c]>i&&m>0&&l[c]>0){if(r.wordWrap===!1&&m<i){ze(a,u,i);continue}a.push("")}if(m+l[c]>i&&r.wordWrap===!1){ze(a,u,i);continue}a[a.length-1]+=u}r.trim!==!1&&(a=a.map(c=>vr(c)));const f=a.join(`
18
- `),$=f[Symbol.iterator]();let b=$.next(),h=$.next(),I=0;for(;!b.done;){const c=b.value,u=h.value;if(s+=c,c===$e||c===hi){di.lastIndex=I+1;const v=di.exec(f)?.groups;if(v?.code!==void 0){const w=Number.parseFloat(v.code);o=w===fr?void 0:w}else v?.uri!==void 0&&(t=v.uri.length===0?void 0:v.uri)}const m=o?gr(o):void 0;u===`
19
- `?(t&&(s+=bi("")),o&&m&&(s+=gi(m))):c===`
20
- `&&(o&&m&&(s+=gi(o)),t&&(s+=bi(t))),I+=c.length,b=h,h=$.next()}return s};function Ke(e,i,r){return String(e).normalize().replaceAll(`\r
7
+ `).map(r=>Pt(r,t,i)).join(`
8
+ `)}const Wt=["up","down","left","right","space","enter","cancel"],z={actions:new Set(Wt),aliases:new Map([["k","up"],["j","down"],["h","left"],["l","right"],["","cancel"],["escape","cancel"]]),messages:{cancel:"Canceled",error:"Something went wrong"},withGuide:!0};function Ce(e,t){if(typeof e=="string")return z.aliases.get(e)===t;for(const i of e)if(i!==void 0&&Ce(i,t))return!0;return!1}function Gt(e,t){if(e===t)return;const i=e.split(`
9
+ `),r=t.split(`
10
+ `),a=Math.max(i.length,r.length),n=[];for(let s=0;s<a;s++)i[s]!==r[s]&&n.push(s);return{lines:n,numLinesBefore:i.length,numLinesAfter:r.length,numLines:a}}const Bt=globalThis.process.platform.startsWith("win"),je=Symbol("clack:cancel");function L(e){return e===je}function he(e,t){const i=e;i.isTTY&&i.setRawMode(t)}function zt({input:e=Ye,output:t=Ee,overwrite:i=!0,hideCursor:r=!0}={}){const a=oe.createInterface({input:e,output:t,prompt:"",tabSize:1});oe.emitKeypressEvents(e,a),e instanceof He&&e.isTTY&&e.setRawMode(!0);const n=(s,{name:u,sequence:c})=>{const h=String(s);if(Ce([h,u,c],"cancel")){r&&t.write(R.cursor.show),process.exit(0);return}if(!i)return;const w=u==="return"?0:-1,$=u==="return"?-1:0;oe.moveCursor(t,w,$,()=>{oe.clearLine(t,1,()=>{e.once("keypress",n)})})};return r&&t.write(R.cursor.hide),e.once("keypress",n),()=>{e.off("keypress",n),r&&t.write(R.cursor.show),e instanceof He&&e.isTTY&&!Bt&&e.setRawMode(!1),a.terminal=!1,a.close()}}const Te=e=>"columns"in e&&typeof e.columns=="number"?e.columns:80,nt=e=>"rows"in e&&typeof e.rows=="number"?e.rows:20;function Oe(e,t,i,r=i){const a=Te(e??Ee);return Me(t,a-i.length,{hard:!0,trim:!1}).split(`
11
+ `).map((n,s)=>`${s===0?r:i}${n}`).join(`
12
+ `)}class Re{input;output;_abortSignal;rl;opts;_render;_track=!1;_prevFrame="";_subscribers=new Map;_cursor=0;state="initial";error="";value;userInput="";constructor(t,i=!0){const{input:r=Ye,output:a=Ee,render:n,signal:s,...u}=t;this.opts=u,this.onKeypress=this.onKeypress.bind(this),this.close=this.close.bind(this),this.render=this.render.bind(this),this._render=n.bind(this),this._track=i,this._abortSignal=s,this.input=r,this.output=a}unsubscribe(){this._subscribers.clear()}setSubscriber(t,i){const r=this._subscribers.get(t)??[];r.push(i),this._subscribers.set(t,r)}on(t,i){this.setSubscriber(t,{cb:i})}once(t,i){this.setSubscriber(t,{cb:i,once:!0})}emit(t,...i){const r=this._subscribers.get(t)??[],a=[];for(const n of r)n.cb(...i),n.once&&a.push(()=>r.splice(r.indexOf(n),1));for(const n of a)n()}prompt(){return new Promise(t=>{if(this._abortSignal){if(this._abortSignal.aborted)return this.state="cancel",this.close(),t(je);this._abortSignal.addEventListener("abort",()=>{this.state="cancel",this.close()},{once:!0})}this.rl=St.createInterface({input:this.input,tabSize:2,prompt:"",escapeCodeTimeout:50,terminal:!0}),this.rl.prompt(),this.opts.initialUserInput!==void 0&&this._setUserInput(this.opts.initialUserInput,!0),this.input.on("keypress",this.onKeypress),he(this.input,!0),this.output.on("resize",this.render),this.render(),this.once("submit",()=>{this.output.write(R.cursor.show),this.output.off("resize",this.render),he(this.input,!1),t(this.value)}),this.once("cancel",()=>{this.output.write(R.cursor.show),this.output.off("resize",this.render),he(this.input,!1),t(je)})})}_isActionKey(t,i){return t===" "}_setValue(t){this.value=t,this.emit("value",this.value)}_setUserInput(t,i){this.userInput=t??"",this.emit("userInput",this.userInput),i&&this._track&&this.rl&&(this.rl.write(this.userInput),this._cursor=this.rl.cursor)}_clearUserInput(){this.rl?.write(null,{ctrl:!0,name:"u"}),this._setUserInput("")}onKeypress(t,i){if(this._track&&i.name!=="return"&&(i.name&&this._isActionKey(t,i)&&this.rl?.write(null,{ctrl:!0,name:"h"}),this._cursor=this.rl?.cursor??0,this._setUserInput(this.rl?.line)),this.state==="error"&&(this.state="active"),i?.name&&(!this._track&&z.aliases.has(i.name)&&this.emit("cursor",z.aliases.get(i.name)),z.actions.has(i.name)&&this.emit("cursor",i.name)),t&&(t.toLowerCase()==="y"||t.toLowerCase()==="n")&&this.emit("confirm",t.toLowerCase()==="y"),this.emit("key",t?.toLowerCase(),i),i?.name==="return"){if(this.opts.validate){const r=this.opts.validate(this.value);r&&(this.error=r instanceof Error?r.message:r,this.state="error",this.rl?.write(this.userInput))}this.state!=="error"&&(this.state="submit")}Ce([t,i?.name,i?.sequence],"cancel")&&(this.state="cancel"),(this.state==="submit"||this.state==="cancel")&&this.emit("finalize"),this.render(),(this.state==="submit"||this.state==="cancel")&&this.close()}close(){this.input.unpipe(),this.input.removeListener("keypress",this.onKeypress),this.output.write(`
13
+ `),he(this.input,!1),this.rl?.close(),this.rl=void 0,this.emit(`${this.state}`,this.value),this.unsubscribe()}restoreCursor(){const t=Me(this._prevFrame,process.stdout.columns,{hard:!0,trim:!1}).split(`
14
+ `).length-1;this.output.write(R.cursor.move(-999,t*-1))}render(){const t=Me(this._render(this)??"",process.stdout.columns,{hard:!0,trim:!1});if(t!==this._prevFrame){if(this.state==="initial")this.output.write(R.cursor.hide);else{const i=Gt(this._prevFrame,t),r=nt(this.output);if(this.restoreCursor(),i){const a=Math.max(0,i.numLinesAfter-r),n=Math.max(0,i.numLinesBefore-r);let s=i.lines.find(u=>u>=a);if(s===void 0){this._prevFrame=t;return}if(i.lines.length===1){this.output.write(R.cursor.move(0,s-n)),this.output.write(R.erase.lines(1));const u=t.split(`
15
+ `);this.output.write(u[s]),this._prevFrame=t,this.output.write(R.cursor.move(0,u.length-s-1));return}else if(i.lines.length>1){if(a<n)s=a;else{const c=s-n;c>0&&this.output.write(R.cursor.move(0,c))}this.output.write(R.erase.down());const u=t.split(`
16
+ `).slice(s);this.output.write(u.join(`
17
+ `)),this._prevFrame=t;return}}this.output.write(R.erase.down())}this.output.write(t),this.state==="initial"&&(this.state="active"),this._prevFrame=t}}}class Kt extends Re{get cursor(){return this.value?0:1}get _value(){return this.cursor===0}constructor(t){super(t,!1),this.value=!!t.initialValue,this.on("userInput",()=>{this.value=this._value}),this.on("confirm",i=>{this.output.write(R.cursor.move(0,-1)),this.value=i,this.state="submit",this.close()}),this.on("cursor",()=>{this.value=!this.value})}}class qt extends Re{options;cursor=0;get _selectedValue(){return this.options[this.cursor]}changeValue(){this.value=this._selectedValue.value}constructor(t){super(t,!1),this.options=t.options;const i=this.options.findIndex(({value:a})=>a===t.initialValue),r=i===-1?0:i;this.cursor=this.options[r].disabled?ue(r,1,this.options):r,this.changeValue(),this.on("cursor",a=>{switch(a){case"left":case"up":this.cursor=ue(this.cursor,-1,this.options);break;case"down":case"right":this.cursor=ue(this.cursor,1,this.options);break}this.changeValue()})}}class Yt extends Re{get userInputWithCursor(){if(this.state==="submit")return this.userInput;const t=this.userInput;if(this.cursor>=t.length)return`${this.userInput}\u2588`;const i=t.slice(0,this.cursor),[r,...a]=t.slice(this.cursor);return`${i}${m("inverse",r)}${a.join("")}`}get cursor(){return this._cursor}constructor(t){super({...t,initialUserInput:t.initialUserInput??t.initialValue}),this.on("userInput",i=>{this._setValue(i)}),this.on("finalize",()=>{this.value||(this.value=t.defaultValue),this.value===void 0&&(this.value="")})}}function Ht(){return B.platform!=="win32"?B.env.TERM!=="linux":!!B.env.CI||!!B.env.WT_SESSION||!!B.env.TERMINUS_SUBLIME||B.env.ConEmuTask==="{cmd::Cmder}"||B.env.TERM_PROGRAM==="Terminus-Sublime"||B.env.TERM_PROGRAM==="vscode"||B.env.TERM==="xterm-256color"||B.env.TERM==="alacritty"||B.env.TERMINAL_EMULATOR==="JetBrains-JediTerm"}const Ve=Ht(),Zt=()=>process.env.CI==="true",U=(e,t)=>Ve?e:t,Jt=U("\u25C6","*"),at=U("\u25A0","x"),ot=U("\u25B2","x"),Le=U("\u25C7","o"),Xt=U("\u250C","T"),F=U("\u2502","|"),Q=U("\u2514","\u2014"),Ne=U("\u25CF",">"),de=U("\u25CB"," "),Qt=U("\u25CF","\u2022"),ei=U("\u25C6","*"),ti=U("\u25B2","!"),ii=U("\u25A0","x"),De=e=>{switch(e){case"initial":case"active":return m("cyan",Jt);case"cancel":return m("red",at);case"error":return m("yellow",ot);case"submit":return m("green",Le)}},ri=e=>{switch(e){case"initial":case"active":return m("cyan",F);case"cancel":return m("red",F);case"error":return m("yellow",F);case"submit":return m("green",F)}},si=e=>e===161||e===164||e===167||e===168||e===170||e===173||e===174||e>=176&&e<=180||e>=182&&e<=186||e>=188&&e<=191||e===198||e===208||e===215||e===216||e>=222&&e<=225||e===230||e>=232&&e<=234||e===236||e===237||e===240||e===242||e===243||e>=247&&e<=250||e===252||e===254||e===257||e===273||e===275||e===283||e===294||e===295||e===299||e>=305&&e<=307||e===312||e>=319&&e<=322||e===324||e>=328&&e<=331||e===333||e===338||e===339||e===358||e===359||e===363||e===462||e===464||e===466||e===468||e===470||e===472||e===474||e===476||e===593||e===609||e===708||e===711||e>=713&&e<=715||e===717||e===720||e>=728&&e<=731||e===733||e===735||e>=768&&e<=879||e>=913&&e<=929||e>=931&&e<=937||e>=945&&e<=961||e>=963&&e<=969||e===1025||e>=1040&&e<=1103||e===1105||e===8208||e>=8211&&e<=8214||e===8216||e===8217||e===8220||e===8221||e>=8224&&e<=8226||e>=8228&&e<=8231||e===8240||e===8242||e===8243||e===8245||e===8251||e===8254||e===8308||e===8319||e>=8321&&e<=8324||e===8364||e===8451||e===8453||e===8457||e===8467||e===8470||e===8481||e===8482||e===8486||e===8491||e===8531||e===8532||e>=8539&&e<=8542||e>=8544&&e<=8555||e>=8560&&e<=8569||e===8585||e>=8592&&e<=8601||e===8632||e===8633||e===8658||e===8660||e===8679||e===8704||e===8706||e===8707||e===8711||e===8712||e===8715||e===8719||e===8721||e===8725||e===8730||e>=8733&&e<=8736||e===8739||e===8741||e>=8743&&e<=8748||e===8750||e>=8756&&e<=8759||e===8764||e===8765||e===8776||e===8780||e===8786||e===8800||e===8801||e>=8804&&e<=8807||e===8810||e===8811||e===8814||e===8815||e===8834||e===8835||e===8838||e===8839||e===8853||e===8857||e===8869||e===8895||e===8978||e>=9312&&e<=9449||e>=9451&&e<=9547||e>=9552&&e<=9587||e>=9600&&e<=9615||e>=9618&&e<=9621||e===9632||e===9633||e>=9635&&e<=9641||e===9650||e===9651||e===9654||e===9655||e===9660||e===9661||e===9664||e===9665||e>=9670&&e<=9672||e===9675||e>=9678&&e<=9681||e>=9698&&e<=9701||e===9711||e===9733||e===9734||e===9737||e===9742||e===9743||e===9756||e===9758||e===9792||e===9794||e===9824||e===9825||e>=9827&&e<=9829||e>=9831&&e<=9834||e===9836||e===9837||e===9839||e===9886||e===9887||e===9919||e>=9926&&e<=9933||e>=9935&&e<=9939||e>=9941&&e<=9953||e===9955||e===9960||e===9961||e>=9963&&e<=9969||e===9972||e>=9974&&e<=9977||e===9979||e===9980||e===9982||e===9983||e===10045||e>=10102&&e<=10111||e>=11094&&e<=11097||e>=12872&&e<=12879||e>=57344&&e<=63743||e>=65024&&e<=65039||e===65533||e>=127232&&e<=127242||e>=127248&&e<=127277||e>=127280&&e<=127337||e>=127344&&e<=127373||e===127375||e===127376||e>=127387&&e<=127404||e>=917760&&e<=917999||e>=983040&&e<=1048573||e>=1048576&&e<=1114109,ni=e=>e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510,ai=e=>e>=4352&&e<=4447||e===8986||e===8987||e===9001||e===9002||e>=9193&&e<=9196||e===9200||e===9203||e===9725||e===9726||e===9748||e===9749||e>=9800&&e<=9811||e===9855||e===9875||e===9889||e===9898||e===9899||e===9917||e===9918||e===9924||e===9925||e===9934||e===9940||e===9962||e===9970||e===9971||e===9973||e===9978||e===9981||e===9989||e===9994||e===9995||e===10024||e===10060||e===10062||e>=10067&&e<=10069||e===10071||e>=10133&&e<=10135||e===10160||e===10175||e===11035||e===11036||e===11088||e===11093||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12771||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=19903||e>=19968&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=94176&&e<=94180||e===94192||e===94193||e>=94208&&e<=100343||e>=100352&&e<=101589||e>=101632&&e<=101640||e>=110576&&e<=110579||e>=110581&&e<=110587||e===110589||e===110590||e>=110592&&e<=110882||e===110898||e>=110928&&e<=110930||e===110933||e>=110948&&e<=110951||e>=110960&&e<=111355||e===126980||e===127183||e===127374||e>=127377&&e<=127386||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||e===127568||e===127569||e>=127584&&e<=127589||e>=127744&&e<=127776||e>=127789&&e<=127797||e>=127799&&e<=127868||e>=127870&&e<=127891||e>=127904&&e<=127946||e>=127951&&e<=127955||e>=127968&&e<=127984||e===127988||e>=127992&&e<=128062||e===128064||e>=128066&&e<=128252||e>=128255&&e<=128317||e>=128331&&e<=128334||e>=128336&&e<=128359||e===128378||e===128405||e===128406||e===128420||e>=128507&&e<=128591||e>=128640&&e<=128709||e===128716||e>=128720&&e<=128722||e>=128725&&e<=128727||e>=128732&&e<=128735||e===128747||e===128748||e>=128756&&e<=128764||e>=128992&&e<=129003||e===129008||e>=129292&&e<=129338||e>=129340&&e<=129349||e>=129351&&e<=129535||e>=129648&&e<=129660||e>=129664&&e<=129672||e>=129680&&e<=129725||e>=129727&&e<=129733||e>=129742&&e<=129755||e>=129760&&e<=129768||e>=129776&&e<=129784||e>=131072&&e<=196605||e>=196608&&e<=262141,Ue=/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/y,me=/[\x00-\x08\x0A-\x1F\x7F-\x9F]{1,1000}/y,ge=/\t{1,1000}/y,Pe=new RegExp("[\\u{1F1E6}-\\u{1F1FF}]{2}|\\u{1F3F4}[\\u{E0061}-\\u{E007A}]{2}[\\u{E0030}-\\u{E0039}\\u{E0061}-\\u{E007A}]{1,3}\\u{E007F}|(?:\\p{Emoji}\\uFE0F\\u20E3?|\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}?|\\p{Emoji_Presentation})(?:\\u200D(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}?|\\p{Emoji_Presentation}|\\p{Emoji}\\uFE0F\\u20E3?))*","yu"),ve=/(?:[\x20-\x7E\xA0-\xFF](?!\uFE0F)){1,1000}/y,oi=new RegExp("\\p{M}+","gu"),ui={limit:1/0,ellipsis:""},ut=(e,t={},i={})=>{const r=t.limit??1/0,a=t.ellipsis??"",n=t?.ellipsisWidth??(a?ut(a,ui,i).width:0),s=i.ansiWidth??0,u=i.controlWidth??0,c=i.tabWidth??8,h=i.ambiguousWidth??1,w=i.emojiWidth??2,$=i.fullWidthWidth??2,d=i.regularWidth??1,S=i.wideWidth??2;let l=0,o=0,f=e.length,v=0,I=!1,x=f,b=Math.max(0,r-n),E=0,y=0,p=0,g=0;e:for(;;){if(y>E||o>=f&&o>l){const C=e.slice(E,y)||e.slice(l,o);v=0;for(const k of C.replaceAll(oi,"")){const O=k.codePointAt(0)||0;if(ni(O)?g=$:ai(O)?g=S:h!==d&&si(O)?g=h:g=d,p+g>b&&(x=Math.min(x,Math.max(E,l)+v)),p+g>r){I=!0;break e}v+=k.length,p+=g}E=y=0}if(o>=f)break;if(ve.lastIndex=o,ve.test(e)){if(v=ve.lastIndex-o,g=v*d,p+g>b&&(x=Math.min(x,o+Math.floor((b-p)/d))),p+g>r){I=!0;break}p+=g,E=l,y=o,o=l=ve.lastIndex;continue}if(Ue.lastIndex=o,Ue.test(e)){if(p+s>b&&(x=Math.min(x,o)),p+s>r){I=!0;break}p+=s,E=l,y=o,o=l=Ue.lastIndex;continue}if(me.lastIndex=o,me.test(e)){if(v=me.lastIndex-o,g=v*u,p+g>b&&(x=Math.min(x,o+Math.floor((b-p)/u))),p+g>r){I=!0;break}p+=g,E=l,y=o,o=l=me.lastIndex;continue}if(ge.lastIndex=o,ge.test(e)){if(v=ge.lastIndex-o,g=v*c,p+g>b&&(x=Math.min(x,o+Math.floor((b-p)/c))),p+g>r){I=!0;break}p+=g,E=l,y=o,o=l=ge.lastIndex;continue}if(Pe.lastIndex=o,Pe.test(e)){if(p+w>b&&(x=Math.min(x,o)),p+w>r){I=!0;break}p+=w,E=l,y=o,o=l=Pe.lastIndex;continue}o+=1}return{width:I?b:p,index:I?x:f,truncated:I,ellipsed:I&&r>=n}},li={limit:1/0,ellipsis:"",ellipsisWidth:0},re=(e,t={})=>ut(e,li,t).width,$e="\x1B",lt="\x9B",ci=39,We="\x07",ct="[",pi="]",pt="m",Ge=`${pi}8;;`,ft=new RegExp(`(?:\\${ct}(?<code>\\d+)m|\\${Ge}(?<uri>.*)${We})`,"y"),fi=e=>{if(e>=30&&e<=37||e>=90&&e<=97)return 39;if(e>=40&&e<=47||e>=100&&e<=107)return 49;if(e===1||e===2)return 22;if(e===3)return 23;if(e===4)return 24;if(e===7)return 27;if(e===8)return 28;if(e===9)return 29;if(e===0)return 0},ht=e=>`${$e}${ct}${e}${pt}`,dt=e=>`${$e}${Ge}${e}${We}`,hi=e=>e.map(t=>re(t)),Be=(e,t,i)=>{const r=t[Symbol.iterator]();let a=!1,n=!1,s=e.at(-1),u=s===void 0?0:re(s),c=r.next(),h=r.next(),w=0;for(;!c.done;){const $=c.value,d=re($);u+d<=i?e[e.length-1]+=$:(e.push($),u=0),($===$e||$===lt)&&(a=!0,n=t.startsWith(Ge,w+1)),a?n?$===We&&(a=!1,n=!1):$===pt&&(a=!1):(u+=d,u===i&&!h.done&&(e.push(""),u=0)),c=h,h=r.next(),w+=$.length}s=e.at(-1),!u&&s!==void 0&&s.length>0&&e.length>1&&(e[e.length-2]+=e.pop())},di=e=>{const t=e.split(" ");let i=t.length;for(;i>0&&!(re(t[i-1])>0);)i--;return i===t.length?e:t.slice(0,i).join(" ")+t.slice(i).join("")},mi=(e,t,i={})=>{if(i.trim!==!1&&e.trim()==="")return"";let r="",a,n;const s=e.split(" "),u=hi(s);let c=[""];for(const[l,o]of s.entries()){i.trim!==!1&&(c[c.length-1]=(c.at(-1)??"").trimStart());let f=re(c.at(-1)??"");if(l!==0&&(f>=t&&(i.wordWrap===!1||i.trim===!1)&&(c.push(""),f=0),(f>0||i.trim===!1)&&(c[c.length-1]+=" ",f++)),i.hard&&u[l]>t){const v=t-f,I=1+Math.floor((u[l]-v-1)/t);Math.floor((u[l]-1)/t)<I&&c.push(""),Be(c,o,t);continue}if(f+u[l]>t&&f>0&&u[l]>0){if(i.wordWrap===!1&&f<t){Be(c,o,t);continue}c.push("")}if(f+u[l]>t&&i.wordWrap===!1){Be(c,o,t);continue}c[c.length-1]+=o}i.trim!==!1&&(c=c.map(l=>di(l)));const h=c.join(`
18
+ `),w=h[Symbol.iterator]();let $=w.next(),d=w.next(),S=0;for(;!$.done;){const l=$.value,o=d.value;if(r+=l,l===$e||l===lt){ft.lastIndex=S+1;const v=ft.exec(h)?.groups;if(v?.code!==void 0){const I=Number.parseFloat(v.code);a=I===ci?void 0:I}else v?.uri!==void 0&&(n=v.uri.length===0?void 0:v.uri)}const f=a?fi(a):void 0;o===`
19
+ `?(n&&(r+=dt("")),a&&f&&(r+=ht(f))):l===`
20
+ `&&(a&&f&&(r+=ht(a)),n&&(r+=dt(n))),S+=l.length,$=d,d=w.next()}return r};function ze(e,t,i){return String(e).normalize().replaceAll(`\r
21
21
  `,`
22
22
  `).split(`
23
- `).map(s=>$r(s,i,r)).join(`
24
- `)}const wr=(e,i,r,s,o)=>{let t=i,n=0;for(let l=r;l<s;l++){const a=e[l];if(t=t-a.length,n++,t<=o)break}return{lineCount:t,removals:n}},xr=e=>{const{cursor:i,options:r,style:s}=e,o=e.output??process.stdout,t=Te(o),n=e.columnPadding??0,l=e.rowPadding??4,a=t-n,f=ui(o),$=d.dim("..."),b=e.maxItems??Number.POSITIVE_INFINITY,h=Math.max(f-l,0),I=Math.max(Math.min(b,h),5);let c=0;i>=I-3&&(c=Math.max(Math.min(i-I+3,r.length-I),0));let u=I<r.length&&c>0,m=I<r.length&&c+I<r.length;const v=Math.min(c+I,r.length),w=[];let x=0;u&&x++,m&&x++;const y=c+(u?1:0),S=v-(m?1:0);for(let p=y;p<S;p++){const g=Ke(s(r[p],p===i),a,{hard:!0,trim:!1}).split(`
25
- `);w.push(g),x+=g.length}if(x>h){let p=0,g=0,F=x;const E=i-y,j=(B,R)=>wr(w,F,B,R,h);u?({lineCount:F,removals:p}=j(0,E),F>h&&({lineCount:F,removals:g}=j(E+1,w.length))):({lineCount:F,removals:g}=j(E+1,w.length),F>h&&({lineCount:F,removals:p}=j(0,E))),p>0&&(u=!0,w.splice(0,p)),g>0&&(m=!0,w.splice(w.length-g,g))}const k=[];u&&k.push($);for(const p of w)for(const g of p)k.push(g);return m&&k.push($),k},vi=e=>{const i=e.active??"Yes",r=e.inactive??"No";return new Ji({active:i,inactive:r,signal:e.signal,input:e.input,output:e.output,initialValue:e.initialValue??!0,render(){const s=e.withGuide??z.withGuide,o=`${s?`${d.gray(C)}
26
- `:""}${Be(this.state)} ${e.message}
27
- `,t=this.value?i:r;switch(this.state){case"submit":{const n=s?`${d.gray(C)} `:"";return`${o}${n}${d.dim(t)}`}case"cancel":{const n=s?`${d.gray(C)} `:"";return`${o}${n}${d.strikethrough(d.dim(t))}${s?`
28
- ${d.gray(C)}`:""}`}default:{const n=s?`${d.cyan(C)} `:"",l=s?d.cyan(X):"";return`${o}${n}${this.value?`${d.green(De)} ${i}`:`${d.dim(de)} ${d.dim(i)}`}${e.vertical?s?`
29
- ${d.cyan(C)} `:`
30
- `:` ${d.dim("/")} `}${this.value?`${d.dim(de)} ${d.dim(r)}`:`${d.green(De)} ${r}`}
31
- ${l}
32
- `}}}}).prompt()},W={message:(e=[],{symbol:i=d.gray(C),secondarySymbol:r=d.gray(C),output:s=process.stdout,spacing:o=1,withGuide:t}={})=>{const n=[],l=t??z.withGuide,a=l?r:"",f=l?`${i} `:"",$=l?`${r} `:"";for(let h=0;h<o;h++)n.push(a);const b=Array.isArray(e)?e:e.split(`
33
- `);if(b.length>0){const[h,...I]=b;h.length>0?n.push(`${f}${h}`):n.push(l?i:"");for(const c of I)c.length>0?n.push(`${$}${c}`):n.push(l?r:"")}s.write(`${n.join(`
23
+ `).map(r=>mi(r,t,i)).join(`
24
+ `)}const gi=(e,t,i,r,a)=>{let n=t,s=0;for(let u=i;u<r;u++){const c=e[u];if(n=n-c.length,s++,n<=a)break}return{lineCount:n,removals:s}},vi=({cursor:e,options:t,style:i,output:r=process.stdout,maxItems:a=Number.POSITIVE_INFINITY,columnPadding:n=0,rowPadding:s=4})=>{const u=Te(r)-n,c=nt(r),h=m("dim","..."),w=Math.max(c-s,0),$=Math.max(Math.min(a,w),5);let d=0;e>=$-3&&(d=Math.max(Math.min(e-$+3,t.length-$),0));let S=$<t.length&&d>0,l=$<t.length&&d+$<t.length;const o=Math.min(d+$,t.length),f=[];let v=0;S&&v++,l&&v++;const I=d+(S?1:0),x=o-(l?1:0);for(let E=I;E<x;E++){const y=ze(i(t[E],E===e),u,{hard:!0,trim:!1}).split(`
25
+ `);f.push(y),v+=y.length}if(v>w){let E=0,y=0,p=v;const g=e-I,C=(k,O)=>gi(f,p,k,O,w);S?({lineCount:p,removals:E}=C(0,g),p>w&&({lineCount:p,removals:y}=C(g+1,f.length))):({lineCount:p,removals:y}=C(g+1,f.length),p>w&&({lineCount:p,removals:E}=C(0,g))),E>0&&(S=!0,f.splice(0,E)),y>0&&(l=!0,f.splice(f.length-y,y))}const b=[];S&&b.push(h);for(const E of f)for(const y of E)b.push(y);return l&&b.push(h),b},mt=e=>{const t=e.active??"Yes",i=e.inactive??"No";return new Kt({active:t,inactive:i,signal:e.signal,input:e.input,output:e.output,initialValue:e.initialValue??!0,render(){const r=e.withGuide??z.withGuide,a=`${r?`${m("gray",F)}
26
+ `:""}${De(this.state)} ${e.message}
27
+ `,n=this.value?t:i;switch(this.state){case"submit":{const s=r?`${m("gray",F)} `:"";return`${a}${s}${m("dim",n)}`}case"cancel":{const s=r?`${m("gray",F)} `:"";return`${a}${s}${m(["strikethrough","dim"],n)}${r?`
28
+ ${m("gray",F)}`:""}`}default:{const s=r?`${m("cyan",F)} `:"",u=r?m("cyan",Q):"";return`${a}${s}${this.value?`${m("green",Ne)} ${t}`:`${m("dim",de)} ${m("dim",t)}`}${e.vertical?r?`
29
+ ${m("cyan",F)} `:`
30
+ `:` ${m("dim","/")} `}${this.value?`${m("dim",de)} ${m("dim",i)}`:`${m("green",Ne)} ${i}`}
31
+ ${u}
32
+ `}}}}).prompt()},P={message:(e=[],{symbol:t=m("gray",F),secondarySymbol:i=m("gray",F),output:r=process.stdout,spacing:a=1,withGuide:n}={})=>{const s=[],u=n??z.withGuide,c=u?i:"",h=u?`${t} `:"",w=u?`${i} `:"";for(let d=0;d<a;d++)s.push(c);const $=Array.isArray(e)?e:e.split(`
33
+ `);if($.length>0){const[d,...S]=$;d.length>0?s.push(`${h}${d}`):s.push(u?t:"");for(const l of S)l.length>0?s.push(`${w}${l}`):s.push(u?i:"")}r.write(`${s.join(`
34
34
  `)}
35
- `)},info:(e,i)=>{W.message(e,{...i,symbol:d.blue(sr)})},success:(e,i)=>{W.message(e,{...i,symbol:d.green(nr)})},step:(e,i)=>{W.message(e,{...i,symbol:d.green(Ne)})},warn:(e,i)=>{W.message(e,{...i,symbol:d.yellow(ar)})},warning:(e,i)=>{W.warn(e,i)},error:(e,i)=>{W.message(e,{...i,symbol:d.red(or)})}},A=(e="",i)=>{process.stdout.write(`${d.gray(X)} ${d.red(e)}
35
+ `)},info:(e,t)=>{P.message(e,{...t,symbol:m("blue",Qt)})},success:(e,t)=>{P.message(e,{...t,symbol:m("green",ei)})},step:(e,t)=>{P.message(e,{...t,symbol:m("green",Le)})},warn:(e,t)=>{P.message(e,{...t,symbol:m("yellow",ti)})},warning:(e,t)=>{P.warn(e,t)},error:(e,t)=>{P.message(e,{...t,symbol:m("red",ii)})}},_=(e="",t)=>{const i=process.stdout,r=`${m("gray",Q)} `;i.write(`${r}${m("red",e)}
36
36
 
37
- `)},yr=(e="",i)=>{process.stdout.write(`${d.gray(rr)} ${e}
38
- `)},Er=(e="",i)=>{process.stdout.write(`${d.gray(C)}
39
- ${d.gray(X)} ${e}
37
+ `)},$i=(e="",t)=>{const i=process.stdout,r=`${m("gray",Xt)} `;i.write(`${r}${e}
38
+ `)},wi=(e="",t)=>{const i=process.stdout,r=`${m("gray",F)}
39
+ ${m("gray",Q)} `;i.write(`${r}${e}
40
40
 
41
- `)},Ir=d.magenta,kr=({indicator:e="dots",onCancel:i,output:r=process.stdout,cancelMessage:s,errorMessage:o,frames:t=Le?["\u25D2","\u25D0","\u25D3","\u25D1"]:["\u2022","o","O","0"],delay:n=Le?80:120,signal:l,...a}={})=>{const f=er();let $,b,h=!1,I=!1,c="",u,m=performance.now();const v=Te(r),w=a?.styleFrame??Ir,x=M=>{const P=M>1?o??z.messages.error:s??z.messages.cancel;I=M===1,h&&(R(P,M),I&&typeof i=="function"&&i())},y=()=>x(2),S=()=>x(1),k=()=>{process.on("uncaughtExceptionMonitor",y),process.on("unhandledRejection",y),process.on("SIGINT",S),process.on("SIGTERM",S),process.on("exit",x),l&&l.addEventListener("abort",S)},p=()=>{process.removeListener("uncaughtExceptionMonitor",y),process.removeListener("unhandledRejection",y),process.removeListener("SIGINT",S),process.removeListener("SIGTERM",S),process.removeListener("exit",x),l&&l.removeEventListener("abort",S)},g=()=>{if(u===void 0)return;f&&r.write(`
42
- `);const M=Ke(u,v,{hard:!0,trim:!1}).split(`
43
- `);M.length>1&&r.write(V.cursor.up(M.length-1)),r.write(V.cursor.to(0)),r.write(V.erase.down())},F=M=>M.replace(/\.+$/,""),E=M=>{const P=(performance.now()-M)/1e3,Y=Math.floor(P/60),q=Math.floor(P%60);return Y>0?`[${Y}m ${q}s]`:`[${q}s]`},j=a.withGuide??z.withGuide,B=(M="")=>{h=!0,$=Hi({output:r}),c=F(M),m=performance.now(),j&&r.write(`${d.gray(C)}
44
- `);let P=0,Y=0;k(),b=setInterval(()=>{if(f&&c===u)return;g(),u=c;const q=w(t[P]);let oe;if(f)oe=`${q} ${c}...`;else if(e==="timer")oe=`${q} ${c} ${E(m)}`;else{const Ai=".".repeat(Math.floor(Y)).slice(0,3);oe=`${q} ${c}${Ai}`}const _i=Ke(oe,v,{hard:!0,trim:!1});r.write(_i),P=P+1<t.length?P+1:0,Y=Y<4?Y+.125:0},n)},R=(M="",P=0,Y=!1)=>{if(!h)return;h=!1,clearInterval(b),g();const q=P===0?d.green(Ne):P===1?d.red(li):d.red(ci);c=M??c,Y||(e==="timer"?r.write(`${q} ${c} ${E(m)}
45
- `):r.write(`${q} ${c}
46
- `)),p(),$()};return{start:B,stop:(M="")=>R(M,0),message:(M="")=>{c=F(M??c)},cancel:(M="")=>R(M,1),error:(M="")=>R(M,2),clear:()=>R("",0,!0),get isCancelled(){return I}}},we=(e,i)=>e.includes(`
41
+ `)},bi=e=>m("magenta",e),yi=({indicator:e="dots",onCancel:t,output:i=process.stdout,cancelMessage:r,errorMessage:a,frames:n=Ve?["\u25D2","\u25D0","\u25D3","\u25D1"]:["\u2022","o","O","0"],delay:s=Ve?80:120,signal:u,...c}={})=>{const h=Zt();let w,$,d=!1,S=!1,l="",o,f=performance.now();const v=Te(i),I=c?.styleFrame??bi,x=M=>{const G=M>1?a??z.messages.error:r??z.messages.cancel;S=M===1,d&&(D(G,M),S&&typeof t=="function"&&t())},b=()=>x(2),E=()=>x(1),y=()=>{process.on("uncaughtExceptionMonitor",b),process.on("unhandledRejection",b),process.on("SIGINT",E),process.on("SIGTERM",E),process.on("exit",x),u&&u.addEventListener("abort",E)},p=()=>{process.removeListener("uncaughtExceptionMonitor",b),process.removeListener("unhandledRejection",b),process.removeListener("SIGINT",E),process.removeListener("SIGTERM",E),process.removeListener("exit",x),u&&u.removeEventListener("abort",E)},g=()=>{if(o===void 0)return;h&&i.write(`
42
+ `);const M=ze(o,v,{hard:!0,trim:!1}).split(`
43
+ `);M.length>1&&i.write(R.cursor.up(M.length-1)),i.write(R.cursor.to(0)),i.write(R.erase.down())},C=M=>M.replace(/\.+$/,""),k=M=>{const G=(performance.now()-M)/1e3,q=Math.floor(G/60),Y=Math.floor(G%60);return q>0?`[${q}m ${Y}s]`:`[${Y}s]`},O=c.withGuide??z.withGuide,W=(M="")=>{d=!0,w=zt({output:i}),l=C(M),f=performance.now(),O&&i.write(`${m("gray",F)}
44
+ `);let G=0,q=0;y(),$=setInterval(()=>{if(h&&l===o)return;g(),o=l;const Y=I(n[G]);let ae;if(h)ae=`${Y} ${l}...`;else if(e==="timer")ae=`${Y} ${l} ${k(f)}`;else{const kt=".".repeat(Math.floor(q)).slice(0,3);ae=`${Y} ${l}${kt}`}const It=ze(ae,v,{hard:!0,trim:!1});i.write(It),G=G+1<n.length?G+1:0,q=q<4?q+.125:0},s)},D=(M="",G=0,q=!1)=>{if(!d)return;d=!1,clearInterval($),g();const Y=G===0?m("green",Le):G===1?m("red",at):m("red",ot);l=M??l,q||(e==="timer"?i.write(`${Y} ${l} ${k(f)}
45
+ `):i.write(`${Y} ${l}
46
+ `)),p(),w()};return{start:W,stop:(M="")=>D(M,0),message:(M="")=>{l=C(M??l)},cancel:(M="")=>D(M,1),error:(M="")=>D(M,2),clear:()=>D("",0,!0),get isCancelled(){return S}}},we=(e,t)=>e.includes(`
47
47
  `)?e.split(`
48
- `).map(r=>i(r)).join(`
49
- `):i(e),J=e=>{const i=(r,s)=>{const o=r.label??String(r.value);switch(s){case"disabled":return`${d.gray(de)} ${we(o,d.gray)}${r.hint?` ${d.dim(`(${r.hint??"disabled"})`)}`:""}`;case"selected":return`${we(o,d.dim)}`;case"active":return`${d.green(De)} ${o}${r.hint?` ${d.dim(`(${r.hint})`)}`:""}`;case"cancelled":return`${we(o,t=>d.strikethrough(d.dim(t)))}`;default:return`${d.dim(de)} ${we(o,d.dim)}`}};return new Zi({options:e.options,signal:e.signal,input:e.input,output:e.output,initialValue:e.initialValue,render(){const r=e.withGuide??z.withGuide,s=`${Be(this.state)} `,o=`${tr(this.state)} `,t=Re(e.output,e.message,o,s),n=`${r?`${d.gray(C)}
50
- `:""}${t}
51
- `;switch(this.state){case"submit":{const l=r?`${d.gray(C)} `:"",a=Re(e.output,i(this.options[this.cursor],"selected"),l);return`${n}${a}`}case"cancel":{const l=r?`${d.gray(C)} `:"",a=Re(e.output,i(this.options[this.cursor],"cancelled"),l);return`${n}${a}${r?`
52
- ${d.gray(C)}`:""}`}default:{const l=r?`${d.cyan(C)} `:"",a=r?d.cyan(X):"",f=n.split(`
53
- `).length,$=r?2:1;return`${n}${l}${xr({output:e.output,cursor:this.cursor,options:this.options,maxItems:e.maxItems,columnPadding:l.length,rowPadding:f+$,style:(b,h)=>i(b,b.disabled?"disabled":h?"active":"inactive")}).join(`
54
- ${l}`)}
55
- ${a}
56
- `}}}}).prompt()};`${d.gray(C)}`;const xe=async(e,i)=>{for(const r of e){if(r.enabled===!1)continue;const s=kr(i);s.start(r.title);const o=await r.task(s.message);s.stop(o||r.title)}},ne=e=>new Qi({validate:e.validate,placeholder:e.placeholder,defaultValue:e.defaultValue,initialValue:e.initialValue,output:e.output,signal:e.signal,input:e.input,render(){const i=e?.withGuide??z.withGuide,r=`${`${i?`${d.gray(C)}
57
- `:""}${Be(this.state)} `}${e.message}
58
- `,s=e.placeholder?d.inverse(e.placeholder[0])+d.dim(e.placeholder.slice(1)):d.inverse(d.hidden("_")),o=this.userInput?this.userInputWithCursor:s,t=this.value??"";switch(this.state){case"error":{const n=this.error?` ${d.yellow(this.error)}`:"",l=i?`${d.yellow(C)} `:"",a=i?d.yellow(X):"";return`${r.trim()}
59
- ${l}${o}
60
- ${a}${n}
61
- `}case"submit":{const n=t?` ${d.dim(t)}`:"",l=i?d.gray(C):"";return`${r}${l}${n}`}case"cancel":{const n=t?` ${d.strikethrough(d.dim(t))}`:"",l=i?d.gray(C):"";return`${r}${l}${n}${t.trim()?`
62
- ${l}`:""}`}default:{const n=i?`${d.cyan(C)} `:"",l=i?d.cyan(X):"";return`${r}${n}${o}
63
- ${l}
64
- `}}}}).prompt();let Z=!0;const ee=typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{};let ae=0;if(ee.process&&ee.process.env&&ee.process.stdout){const{FORCE_COLOR:e,NODE_DISABLE_COLORS:i,NO_COLOR:r,TERM:s,COLORTERM:o}=ee.process.env;i||r||e==="0"?Z=!1:e==="1"||e==="2"||e==="3"?Z=!0:s==="dumb"?Z=!1:"CI"in ee.process.env&&["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE","DRONE"].some(t=>t in ee.process.env)?Z=!0:Z=process.stdout.isTTY,Z&&(process.platform==="win32"||o&&(o==="truecolor"||o==="24bit")?ae=3:s&&(s.endsWith("-256color")||s.endsWith("256"))?ae=2:ae=1)}let $i={enabled:Z,supportLevel:ae};function ye(e,i,r=1){const s=`\x1B[${e}m`,o=`\x1B[${i}m`,t=new RegExp(`\\x1b\\[${i}m`,"g");return n=>$i.enabled&&$i.supportLevel>=r?s+(""+n).replace(t,s)+o:""+n}const Sr=ye(31,39),Ee=ye(36,39),_r=ye(90,39),Ar=ye(91,39);var Ye,wi;function Cr(){if(wi)return Ye;wi=1;function e(s,o){var t=s;o.slice(0,-1).forEach(function(l){t=t[l]||{}});var n=o[o.length-1];return n in t}function i(s){return typeof s=="number"||/^0x[0-9a-f]+$/i.test(s)?!0:/^[-+]?(?:\d+(?:\.\d*)?|\.\d+)(e[-+]?\d+)?$/.test(s)}function r(s,o){return o==="constructor"&&typeof s[o]=="function"||o==="__proto__"}return Ye=function(s,o){o||(o={});var t={bools:{},strings:{},unknownFn:null};typeof o.unknown=="function"&&(t.unknownFn=o.unknown),typeof o.boolean=="boolean"&&o.boolean?t.allBools=!0:[].concat(o.boolean).filter(Boolean).forEach(function(p){t.bools[p]=!0});var n={};function l(p){return n[p].some(function(g){return t.bools[g]})}Object.keys(o.alias||{}).forEach(function(p){n[p]=[].concat(o.alias[p]),n[p].forEach(function(g){n[g]=[p].concat(n[p].filter(function(F){return g!==F}))})}),[].concat(o.string).filter(Boolean).forEach(function(p){t.strings[p]=!0,n[p]&&[].concat(n[p]).forEach(function(g){t.strings[g]=!0})});var a=o.default||{},f={_:[]};function $(p,g){return t.allBools&&/^--[^=]+$/.test(g)||t.strings[p]||t.bools[p]||n[p]}function b(p,g,F){for(var E=p,j=0;j<g.length-1;j++){var B=g[j];if(r(E,B))return;E[B]===void 0&&(E[B]={}),(E[B]===Object.prototype||E[B]===Number.prototype||E[B]===String.prototype)&&(E[B]={}),E[B]===Array.prototype&&(E[B]=[]),E=E[B]}var R=g[g.length-1];r(E,R)||((E===Object.prototype||E===Number.prototype||E===String.prototype)&&(E={}),E===Array.prototype&&(E=[]),E[R]===void 0||t.bools[R]||typeof E[R]=="boolean"?E[R]=F:Array.isArray(E[R])?E[R].push(F):E[R]=[E[R],F])}function h(p,g,F){if(!(F&&t.unknownFn&&!$(p,F)&&t.unknownFn(F)===!1)){var E=!t.strings[p]&&i(g)?Number(g):g;b(f,p.split("."),E),(n[p]||[]).forEach(function(j){b(f,j.split("."),E)})}}Object.keys(t.bools).forEach(function(p){h(p,a[p]===void 0?!1:a[p])});var I=[];s.indexOf("--")!==-1&&(I=s.slice(s.indexOf("--")+1),s=s.slice(0,s.indexOf("--")));for(var c=0;c<s.length;c++){var u=s[c],m,v;if(/^--.+=/.test(u)){var w=u.match(/^--([^=]+)=([\s\S]*)$/);m=w[1];var x=w[2];t.bools[m]&&(x=x!=="false"),h(m,x,u)}else if(/^--no-.+/.test(u))m=u.match(/^--no-(.+)/)[1],h(m,!1,u);else if(/^--.+/.test(u))m=u.match(/^--(.+)/)[1],v=s[c+1],v!==void 0&&!/^(-|--)[^-]/.test(v)&&!t.bools[m]&&!t.allBools&&(!n[m]||!l(m))?(h(m,v,u),c+=1):/^(true|false)$/.test(v)?(h(m,v==="true",u),c+=1):h(m,t.strings[m]?"":!0,u);else if(/^-[^-]+/.test(u)){for(var y=u.slice(1,-1).split(""),S=!1,k=0;k<y.length;k++){if(v=u.slice(k+2),v==="-"){h(y[k],v,u);continue}if(/[A-Za-z]/.test(y[k])&&v[0]==="="){h(y[k],v.slice(1),u),S=!0;break}if(/[A-Za-z]/.test(y[k])&&/-?\d+(\.\d*)?(e-?\d+)?$/.test(v)){h(y[k],v,u),S=!0;break}if(y[k+1]&&y[k+1].match(/\W/)){h(y[k],u.slice(k+2),u),S=!0;break}else h(y[k],t.strings[y[k]]?"":!0,u)}m=u.slice(-1)[0],!S&&m!=="-"&&(s[c+1]&&!/^(-|--)[^-]/.test(s[c+1])&&!t.bools[m]&&(!n[m]||!l(m))?(h(m,s[c+1],u),c+=1):s[c+1]&&/^(true|false)$/.test(s[c+1])?(h(m,s[c+1]==="true",u),c+=1):h(m,t.strings[m]?"":!0,u))}else if((!t.unknownFn||t.unknownFn(u)!==!1)&&f._.push(t.strings._||!i(u)?u:Number(u)),o.stopEarly){f._.push.apply(f._,s.slice(c+1));break}}return Object.keys(a).forEach(function(p){e(f,p.split("."))||(b(f,p.split("."),a[p]),(n[p]||[]).forEach(function(g){b(f,g.split("."),a[p])}))}),o["--"]?f["--"]=I.slice():I.forEach(function(p){f._.push(p)}),f},Ye}var Fr=Cr();const Mr=Qe(Fr);async function Or({rootFolder:e}){const i=O.join(e,".git");try{if(_.existsSync(i)){W.warn("Git repository already exists.");return}}catch(s){W.error(`Error checking git folder: ${s}`);return}const r=await J({message:"Do you want to initialize a git repository? (recommended)",options:[{value:!0,label:"Yes",hint:"You can use GitHub to track changes and collaborate with others."},{value:!1,label:"No",hint:"It is not recommended to skip this step."}],initialValue:!0});if(N(r)&&(A("Operation cancelled."),process.exit(0)),r){const s=await xe([{title:"Initializing git repository...",task:async o=>{const t=await H("git",["init","-b","main"],{cwd:e});o(t.stdout);const n=await H("git",["add","."],{cwd:e});return o(n.stdout),"Git repository initialized."}}]);N(s)&&(A("Operation cancelled."),process.exit(0)),W.message(`Now, you can use GitHub Desktop upload your project to GitHub.
65
- GitHub Desktop: https://github.com/apps/desktop`)}}var ie=(e=>(e.VisualStudioCode="vscode",e.Cursor="cursor",e.VSCodium="codium",e.Other="other",e))(ie||{});async function jr({rootFolder:e,fileToOpen:i}){const r=await J({message:"Which IDE do you want to use?",options:[{value:ie.VisualStudioCode,label:"Visual Studio Code"},{value:ie.Cursor,label:"Cursor"},{value:ie.VSCodium,label:"VSCodium"},{value:ie.Other,label:"Other"}],initialValue:ie.VisualStudioCode});if(N(r)&&(A("Operation cancelled."),process.exit(0)),r===void 0)return;let s,o;switch(r){case"vscode":o="Opening in Visual Studio Code...",s="code";break;case"cursor":o="Opening in Cursor...",s="cursor";break;case"codium":o="Opening in VSCodium...",s="codium";break;default:return}await xe([{title:o,task:async t=>{try{await Ze(s);const n=await H(s,[e]);t(n.stdout);const l=await H(s,[`${e}/README.md`]);if(t(l.stdout),i){const a=await H(s,[`${e}/${i}`]);t(a.stdout)}return`Opened project using ${r}`}catch{return`Could not open project using ${r}, since ${r} was not in your PATH`}}}])}var K=(e=>(e[e.VisualNovel=0]="VisualNovel",e[e.TextStory=1]="TextStory",e[e.PointAndClick=2]="PointAndClick",e[e.GameEngine=3]="GameEngine",e[e.Library=4]="Library",e))(K||{}),T=(e=>(e[e.Ink=0]="Ink",e[e.Renpy=1]="Renpy",e[e.Typescript=2]="Typescript",e))(T||{}),D=(e=>(e[e.React=0]="React",e[e.Vue=1]="Vue",e[e.Angular=2]="Angular",e))(D||{});const xi="My Game",yi="my-game",Q=[{type:K.VisualNovel,name:"Visual Novel",availableUI:[D.React],availableNarrativeLanguages:[T.Ink,T.Typescript],isMultidevice:!0},{type:K.TextStory,name:"Text-based Story",availableUI:[D.React],availableNarrativeLanguages:[T.Ink,T.Typescript],isMultidevice:!0},{type:K.PointAndClick,name:"Point & Click Adventure",availableUI:[D.React],availableNarrativeLanguages:[T.Ink,T.Typescript],isMultidevice:!0},{type:K.GameEngine,name:"Game Engine",availableUI:[],availableNarrativeLanguages:[],isMultidevice:!1},{type:K.Library,name:"Library",availableUI:[],availableNarrativeLanguages:[],isMultidevice:!1}];async function Tr({packageName:e}){const i=await J({message:"Select the type of game you want to create:",options:Q.map(f=>({label:f.name,value:f.type})),initialValue:Q[0].type});N(i)&&(A("Operation cancelled."),process.exit(0));const r=Q.find(f=>f.type===i)?.availableUI.map(f=>{let $="";switch(f){case D.React:$=Ee("React");break;case D.Vue:$=_r("Vue");break;case D.Angular:$=Sr("Angular");break}return{label:$,value:f}})||[];let s;r.length===1?(W.warning(`Only one UI framework available: ${r[0].label}. Using it by default.`),s=r[0].value):r.length>0?(s=await J({message:"Select the UI framework you want to use:",options:r,initialValue:Q.find(f=>f.type===i)?.availableUI[0]}),N(s)&&(A("Operation cancelled."),process.exit(0))):s=void 0;const o=Q.find(f=>f.type===i)?.availableNarrativeLanguages.map(f=>{let $="";switch(f){case T.Ink:$="Ink + Typescript";break;case T.Renpy:$=Ar("Renpy");break;case T.Typescript:$=Ee("Typescript");break}return{label:$,value:f}})||[];let t;o.length===1?(W.warning(`Only one narrative language available: ${o[0].label}. Using it by default.`),t=o[0].value):o.length>0?(t=await J({message:"Select the narrative language you want to use:",options:o,initialValue:Q.find(f=>f.type===i)?.availableNarrativeLanguages[0]}),N(t)&&(A("Operation cancelled."),process.exit(0))):t=void 0;const n=Q.find(f=>f.type===i)?.isMultidevice;let l=!1,a="";return n&&(l=await J({message:"Which devices is the project intended for?",options:[{label:"Web page",value:!1},{label:"Web page + Desktop + Mobile (Tauri)",value:!0}],initialValue:!1}),N(l)&&(A("Operation cancelled."),process.exit(0)),l?(a=await ne({message:"Project identifier:",initialValue:`com.${e}.app`,validate:f=>{if(!f)return"Identifier is required.";if(!/^[a-zA-Z0-9_.\-]+$/.test(f))return"Identifier can only contain letters, numbers, underscores, dots and dashes."}}),N(a)&&(A("Operation cancelled."),process.exit(0))):a=""),{gameType:i,UIFramework:s,narrativeLanguage:t,multidevice:l,identifier:a}}var L=(e=>(e.Delete="delete",e.Overwrite="overwrite",e.Skip="skip",e.Ask="ask",e.Cancel="cancel",e))(L||{});function Rr(e){const i=_.readdirSync(e);return i.length===0||i.length===1&&i[0]===".git"}function Ei(e,i,r){if(!_.existsSync(i))return;const s=_.statSync(i);if(s.isFile())(r===L.Overwrite||r===L.Delete)&&_.rmSync(i,{force:!0});else if(s.isDirectory()){const o=_.readdirSync(e);for(const t of o){const n=O.join(e,t),l=O.join(i,t);Ei(n,l,r)}}}function qe(e,i,r){if(_.statSync(e).isDirectory()){_.mkdirSync(i,{recursive:!0});for(const s of _.readdirSync(e)){const o=O.join(e,s),t=O.join(i,s);qe(o,t,r)}}else{if(r!==void 0&&_.existsSync(i)){if(r===L.Skip)return;(r===L.Overwrite||r===L.Delete)&&_.rmSync(i,{force:!0})}_.copyFileSync(e,i)}}function Vr(e){return/^(?:@[a-z\d\-*~][a-z\d\-*._~]*\/)?[a-z\d\-~][a-z\d\-._~]*$/.test(e)}function Ii(e){return e.trim().toLowerCase().replace(/\s+/g,"-").replace(/^[._]/,"").replace(/[^a-z\d\-~]+/g,"-")}async function Lr(){const e=await ne({message:"Project name:",defaultValue:xi,placeholder:xi,validate:n=>{if(!n)return"Project name cannot be empty"}});N(e)&&(A("Operation cancelled."),process.exit(0));const i=await ne({message:"Project description:",defaultValue:"A new game project",placeholder:"A new game project",validate:n=>{if(!n)return"Project description cannot be empty"}});N(i)&&(A("Operation cancelled."),process.exit(0));const r=await ne({message:"Package name:",defaultValue:Ii(yi),placeholder:Ii(yi),validate:n=>{if(!n)return"Package name cannot be empty";if(!Vr(n))return"Invalid package name. The name can only include URL-friendly characters."}});N(r)&&(A("Operation cancelled."),process.exit(0));const s=O.basename(O.resolve()),o=await ne({message:"Target directory:",defaultValue:r,placeholder:`${r} (If is equal to ".", the current directory (${s}) will be used)`});N(o)&&(A("Operation cancelled."),process.exit(0));let t;return _.existsSync(o)&&!Rr(o)?(t=await J({message:"Overwrite existing files?",options:[{hint:"Delete all existing files and create a new project",label:"Delete all",value:L.Delete},{hint:"Overwrite existing conflicting files",label:"Overwrite",value:L.Overwrite},{hint:"Skip existing conflicting files",label:"Skip",value:L.Skip},{hint:"Ask for each file",label:"Ask",value:L.Ask},{hint:"Cancel operation",label:"Cancel",value:L.Cancel}],initialValue:L.Overwrite}),(N(t)||t===L.Cancel)&&(A("Operation cancelled."),process.exit(0))):t=void 0,{projectName:e,foltderName:o,description:i,packageName:r,overwrite:t}}const ki={_gitignore:".gitignore"};async function Nr({rootFolder:e,overwrite:i,template:r,packageName:s,description:o,projectName:t,identifier:n}){const l=await xe([{title:`Creating project in ${e}...`,task:async()=>{_.existsSync(e)||_.mkdirSync(e,{recursive:!0});const a=O.resolve(Fi(import.meta.url),"../..",`${r}`),f=(I,c)=>{const u=O.join(e,ki[I]??I);c?_.writeFileSync(u,c):qe(O.join(a,I),u,i)},$=_.readdirSync(a).map(async I=>{const c=O.join(a,I),u=O.join(e,ki[I]??I);if(_.existsSync(u))switch(i){case L.Ask:if(_.statSync(u).isFile()){const m=await vi({message:`File ${u} already exists. Do you want to overwrite it?`,initialValue:!1});if(N(m)&&(A("Operation cancelled."),process.exit(0)),!m)return;_.rmSync(u,{force:!0})}else{const m=_.readdirSync(c);for(const v of m){const w=O.join(c,v),x=O.join(u,v);if(_.existsSync(x)){const y=await vi({message:`File ${x} already exists. Do you want to overwrite it?`,initialValue:!1});if(N(y)&&(A("Operation cancelled."),process.exit(0)),!y)continue;_.rmSync(x,{force:!0})}qe(w,x,i)}return}break;case L.Skip:return;case L.Overwrite:case L.Delete:Ei(c,u,i);break}switch(I){case"package.json":case"vite.config.ts":case"index.html":let m=_.readFileSync(c,"utf-8");m=m.replace(/my-app-package-name/g,s),m=m.replace(/my-app-description/g,o),m=m.replace(/my-app-project-name/g,t),f(I,m);break;case".git":case"package-lock.json":break;default:f(I)}});await Promise.all($);const b=O.join(e,"src-tauri");if(_.existsSync(b)){const I=_.readdirSync(b).map(async c=>{switch(c){case"Cargo.lock":case"Cargo.toml":case"tauri.conf.json":let u=_.readFileSync(O.join(b,c),"utf-8");u=u.replace(/my-app-package-name/g,s),u=u.replace(/my-app-description/g,o),u=u.replace(/my-app-project-name/g,t),u=u.replace(/com.my-app-project-name.app/g,n),f(O.join("src-tauri",c),u)}});await Promise.all(I)}const h=O.join(e,"_github");return _.existsSync(h)&&_.renameSync(h,O.join(e,".github")),"Project created"}}]);N(l)&&(A("Operation cancelled."),process.exit(0))}const Dr=process.cwd();async function Br(){let e,{description:i,overwrite:r,packageName:s,projectName:o,foltderName:t}=await Lr(),{UIFramework:n,gameType:l,narrativeLanguage:a,multidevice:f,identifier:$}=await Tr({packageName:s});const b=O.join(Dr,t);let h;switch(l){case K.VisualNovel:switch(n){case D.React:switch(a){case T.Typescript:f?h="template-react-vite-muijoy-tauri":h="template-react-vite-muijoy",e="src/labels/startLabel.ts";break;case T.Ink:f?h="template-react-vite-muijoy-ink-tauri":h="template-react-vite-muijoy-ink",e="src/ink/start.ink";break;case T.Renpy:A("Error: There are no templates for this narrative language"),process.exit(0);default:A("Error: Unknown narrative language"),process.exit(0)}break;case D.Vue:case D.Angular:A("Error: There are no templates for this game type and UI framework"),process.exit(0);default:A("Error: Unknown UI framework"),process.exit(0)}break;case K.TextStory:switch(n){case D.React:switch(a){case T.Typescript:f?h="template-story-react-vite-muijoy-tauri":h="template-story-react-vite-muijoy",e="src/labels/startLabel.ts";break;case T.Ink:f?h="template-story-react-vite-muijoy-ink-tauri":h="template-story-react-vite-muijoy-ink",e="src/ink/start.ink";break;case T.Renpy:A("Error: There are no templates for this narrative language"),process.exit(0);default:A("Error: Unknown narrative language"),process.exit(0)}break;case D.Vue:case D.Angular:A("Error: There are no templates for this game type and UI framework"),process.exit(0);default:A("Error: Unknown UI framework"),process.exit(0)}break;case K.PointAndClick:switch(n){case D.React:switch(a){case T.Typescript:f?h="template-nqtr-react-vite-muijoy-tauri":h="template-nqtr-react-vite-muijoy",e="src/labels/startLabel.ts";break;case T.Ink:f?h="template-nqtr-react-vite-muijoy-ink-tauri":h="template-nqtr-react-vite-muijoy-ink",e="src/ink/variousActionsLabels.ink";break;case T.Renpy:A("Error: There are no templates for this narrative language"),process.exit(0);default:A("Error: Unknown narrative language"),process.exit(0)}break;case D.Vue:case D.Angular:A("Error: There are no templates for this game type and UI framework"),process.exit(0);default:A("Error: Unknown UI framework"),process.exit(0)}break;case K.GameEngine:h="template-game-engine",e="src/index.ts";break;case K.Library:h="template-lib",e="src/index.ts";break;default:A("Error: Unknown game type"),process.exit(0)}return await Nr({rootFolder:b,template:h,packageName:s,description:i,projectName:o,overwrite:r,identifier:$}),{rootFolder:b,fileToOpen:e}}function Ur(){console.info(`
48
+ `).map(i=>t(i)).join(`
49
+ `):t(e),Z=e=>{const t=(i,r)=>{const a=i.label??String(i.value);switch(r){case"disabled":return`${m("gray",de)} ${we(a,n=>m("gray",n))}${i.hint?` ${m("dim",`(${i.hint??"disabled"})`)}`:""}`;case"selected":return`${we(a,n=>m("dim",n))}`;case"active":return`${m("green",Ne)} ${a}${i.hint?` ${m("dim",`(${i.hint})`)}`:""}`;case"cancelled":return`${we(a,n=>m(["strikethrough","dim"],n))}`;default:return`${m("dim",de)} ${we(a,n=>m("dim",n))}`}};return new qt({options:e.options,signal:e.signal,input:e.input,output:e.output,initialValue:e.initialValue,render(){const i=e.withGuide??z.withGuide,r=`${De(this.state)} `,a=`${ri(this.state)} `,n=Oe(e.output,e.message,a,r),s=`${i?`${m("gray",F)}
50
+ `:""}${n}
51
+ `;switch(this.state){case"submit":{const u=i?`${m("gray",F)} `:"",c=Oe(e.output,t(this.options[this.cursor],"selected"),u);return`${s}${c}`}case"cancel":{const u=i?`${m("gray",F)} `:"",c=Oe(e.output,t(this.options[this.cursor],"cancelled"),u);return`${s}${c}${i?`
52
+ ${m("gray",F)}`:""}`}default:{const u=i?`${m("cyan",F)} `:"",c=i?m("cyan",Q):"",h=s.split(`
53
+ `).length,w=i?2:1;return`${s}${u}${vi({output:e.output,cursor:this.cursor,options:this.options,maxItems:e.maxItems,columnPadding:u.length,rowPadding:h+w,style:($,d)=>t($,$.disabled?"disabled":d?"active":"inactive")}).join(`
54
+ ${u}`)}
55
+ ${c}
56
+ `}}}}).prompt()};`${m("gray",F)}`;const be=async(e,t)=>{for(const i of e){if(i.enabled===!1)continue;const r=yi(t);r.start(i.title);const a=await i.task(r.message);r.stop(a||i.title)}},se=e=>new Yt({validate:e.validate,placeholder:e.placeholder,defaultValue:e.defaultValue,initialValue:e.initialValue,output:e.output,signal:e.signal,input:e.input,render(){const t=e?.withGuide??z.withGuide,i=`${`${t?`${m("gray",F)}
57
+ `:""}${De(this.state)} `}${e.message}
58
+ `,r=e.placeholder?m("inverse",e.placeholder[0])+m("dim",e.placeholder.slice(1)):m(["inverse","hidden"],"_"),a=this.userInput?this.userInputWithCursor:r,n=this.value??"";switch(this.state){case"error":{const s=this.error?` ${m("yellow",this.error)}`:"",u=t?`${m("yellow",F)} `:"",c=t?m("yellow",Q):"";return`${i.trim()}
59
+ ${u}${a}
60
+ ${c}${s}
61
+ `}case"submit":{const s=n?` ${m("dim",n)}`:"",u=t?m("gray",F):"";return`${i}${u}${s}`}case"cancel":{const s=n?` ${m(["strikethrough","dim"],n)}`:"",u=t?m("gray",F):"";return`${i}${u}${s}${n.trim()?`
62
+ ${u}`:""}`}default:{const s=t?`${m("cyan",F)} `:"",u=t?m("cyan",Q):"";return`${i}${s}${a}
63
+ ${u}
64
+ `}}}}).prompt();let J=!0;const ee=typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{};let ne=0;if(ee.process&&ee.process.env&&ee.process.stdout){const{FORCE_COLOR:e,NODE_DISABLE_COLORS:t,NO_COLOR:i,TERM:r,COLORTERM:a}=ee.process.env;t||i||e==="0"?J=!1:e==="1"||e==="2"||e==="3"?J=!0:r==="dumb"?J=!1:"CI"in ee.process.env&&["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE","DRONE"].some(n=>n in ee.process.env)?J=!0:J=process.stdout.isTTY,J&&(process.platform==="win32"||a&&(a==="truecolor"||a==="24bit")?ne=3:r&&(r.endsWith("-256color")||r.endsWith("256"))?ne=2:ne=1)}let gt={enabled:J,supportLevel:ne};function ye(e,t,i=1){const r=`\x1B[${e}m`,a=`\x1B[${t}m`,n=new RegExp(`\\x1b\\[${t}m`,"g");return s=>gt.enabled&&gt.supportLevel>=i?r+(""+s).replace(n,r)+a:""+s}const xi=ye(31,39),xe=ye(36,39),Ei=ye(90,39),Ii=ye(91,39);var Ke,vt;function ki(){if(vt)return Ke;vt=1;function e(r,a){var n=r;a.slice(0,-1).forEach(function(u){n=n[u]||{}});var s=a[a.length-1];return s in n}function t(r){return typeof r=="number"||/^0x[0-9a-f]+$/i.test(r)?!0:/^[-+]?(?:\d+(?:\.\d*)?|\.\d+)(e[-+]?\d+)?$/.test(r)}function i(r,a){return a==="constructor"&&typeof r[a]=="function"||a==="__proto__"}return Ke=function(r,a){a||(a={});var n={bools:{},strings:{},unknownFn:null};typeof a.unknown=="function"&&(n.unknownFn=a.unknown),typeof a.boolean=="boolean"&&a.boolean?n.allBools=!0:[].concat(a.boolean).filter(Boolean).forEach(function(p){n.bools[p]=!0});var s={};function u(p){return s[p].some(function(g){return n.bools[g]})}Object.keys(a.alias||{}).forEach(function(p){s[p]=[].concat(a.alias[p]),s[p].forEach(function(g){s[g]=[p].concat(s[p].filter(function(C){return g!==C}))})}),[].concat(a.string).filter(Boolean).forEach(function(p){n.strings[p]=!0,s[p]&&[].concat(s[p]).forEach(function(g){n.strings[g]=!0})});var c=a.default||{},h={_:[]};function w(p,g){return n.allBools&&/^--[^=]+$/.test(g)||n.strings[p]||n.bools[p]||s[p]}function $(p,g,C){for(var k=p,O=0;O<g.length-1;O++){var W=g[O];if(i(k,W))return;k[W]===void 0&&(k[W]={}),(k[W]===Object.prototype||k[W]===Number.prototype||k[W]===String.prototype)&&(k[W]={}),k[W]===Array.prototype&&(k[W]=[]),k=k[W]}var D=g[g.length-1];i(k,D)||((k===Object.prototype||k===Number.prototype||k===String.prototype)&&(k={}),k===Array.prototype&&(k=[]),k[D]===void 0||n.bools[D]||typeof k[D]=="boolean"?k[D]=C:Array.isArray(k[D])?k[D].push(C):k[D]=[k[D],C])}function d(p,g,C){if(!(C&&n.unknownFn&&!w(p,C)&&n.unknownFn(C)===!1)){var k=!n.strings[p]&&t(g)?Number(g):g;$(h,p.split("."),k),(s[p]||[]).forEach(function(O){$(h,O.split("."),k)})}}Object.keys(n.bools).forEach(function(p){d(p,c[p]===void 0?!1:c[p])});var S=[];r.indexOf("--")!==-1&&(S=r.slice(r.indexOf("--")+1),r=r.slice(0,r.indexOf("--")));for(var l=0;l<r.length;l++){var o=r[l],f,v;if(/^--.+=/.test(o)){var I=o.match(/^--([^=]+)=([\s\S]*)$/);f=I[1];var x=I[2];n.bools[f]&&(x=x!=="false"),d(f,x,o)}else if(/^--no-.+/.test(o))f=o.match(/^--no-(.+)/)[1],d(f,!1,o);else if(/^--.+/.test(o))f=o.match(/^--(.+)/)[1],v=r[l+1],v!==void 0&&!/^(-|--)[^-]/.test(v)&&!n.bools[f]&&!n.allBools&&(!s[f]||!u(f))?(d(f,v,o),l+=1):/^(true|false)$/.test(v)?(d(f,v==="true",o),l+=1):d(f,n.strings[f]?"":!0,o);else if(/^-[^-]+/.test(o)){for(var b=o.slice(1,-1).split(""),E=!1,y=0;y<b.length;y++){if(v=o.slice(y+2),v==="-"){d(b[y],v,o);continue}if(/[A-Za-z]/.test(b[y])&&v[0]==="="){d(b[y],v.slice(1),o),E=!0;break}if(/[A-Za-z]/.test(b[y])&&/-?\d+(\.\d*)?(e-?\d+)?$/.test(v)){d(b[y],v,o),E=!0;break}if(b[y+1]&&b[y+1].match(/\W/)){d(b[y],o.slice(y+2),o),E=!0;break}else d(b[y],n.strings[b[y]]?"":!0,o)}f=o.slice(-1)[0],!E&&f!=="-"&&(r[l+1]&&!/^(-|--)[^-]/.test(r[l+1])&&!n.bools[f]&&(!s[f]||!u(f))?(d(f,r[l+1],o),l+=1):r[l+1]&&/^(true|false)$/.test(r[l+1])?(d(f,r[l+1]==="true",o),l+=1):d(f,n.strings[f]?"":!0,o))}else if((!n.unknownFn||n.unknownFn(o)!==!1)&&h._.push(n.strings._||!t(o)?o:Number(o)),a.stopEarly){h._.push.apply(h._,r.slice(l+1));break}}return Object.keys(c).forEach(function(p){e(h,p.split("."))||($(h,p.split("."),c[p]),(s[p]||[]).forEach(function(g){$(h,g.split("."),c[p])}))}),a["--"]?h["--"]=S.slice():S.forEach(function(p){h._.push(p)}),h},Ke}var Si=ki();const Ai=_t(Si);async function _i({rootFolder:e}){const t=j.join(e,".git");try{if(A.existsSync(t)){P.warn("Git repository already exists.");return}}catch(r){P.error(`Error checking git folder: ${r}`);return}const i=await Z({message:"Do you want to initialize a git repository? (recommended)",options:[{value:!0,label:"Yes",hint:"You can use GitHub to track changes and collaborate with others."},{value:!1,label:"No",hint:"It is not recommended to skip this step."}],initialValue:!0});if(L(i)&&(_("Operation cancelled."),process.exit(0)),i){const r=await be([{title:"Initializing git repository...",task:async a=>{const n=await H("git",["init","-b","main"],{cwd:e});a(n.stdout);const s=await H("git",["add","."],{cwd:e});return a(s.stdout),"Git repository initialized."}}]);L(r)&&(_("Operation cancelled."),process.exit(0)),P.message(`Now, you can use GitHub Desktop upload your project to GitHub.
65
+ GitHub Desktop: https://github.com/apps/desktop`)}}var te=(e=>(e.VisualStudioCode="vscode",e.Cursor="cursor",e.VSCodium="codium",e.Other="other",e))(te||{});async function Fi({rootFolder:e,fileToOpen:t}){const i=await Z({message:"Which IDE do you want to use?",options:[{value:te.VisualStudioCode,label:"Visual Studio Code"},{value:te.Cursor,label:"Cursor"},{value:te.VSCodium,label:"VSCodium"},{value:te.Other,label:"Other"}],initialValue:te.VisualStudioCode});if(L(i)&&(_("Operation cancelled."),process.exit(0)),i===void 0)return;let r,a;switch(i){case"vscode":a="Opening in Visual Studio Code...",r="code";break;case"cursor":a="Opening in Cursor...",r="cursor";break;case"codium":a="Opening in VSCodium...",r="codium";break;default:return}await be([{title:a,task:async n=>{try{await Ze(r);const s=await H(r,[e]);n(s.stdout);const u=await H(r,[`${e}/README.md`]);if(n(u.stdout),t){const c=await H(r,[`${e}/${t}`]);n(c.stdout)}return`Opened project using ${i}`}catch{return`Could not open project using ${i}, since ${i} was not in your PATH`}}}])}var K=(e=>(e[e.VisualNovel=0]="VisualNovel",e[e.TextStory=1]="TextStory",e[e.PointAndClick=2]="PointAndClick",e[e.GameEngine=3]="GameEngine",e[e.Library=4]="Library",e))(K||{}),T=(e=>(e[e.Ink=0]="Ink",e[e.Renpy=1]="Renpy",e[e.Typescript=2]="Typescript",e))(T||{}),N=(e=>(e[e.React=0]="React",e[e.Vue=1]="Vue",e[e.Angular=2]="Angular",e))(N||{});const $t="My Game",wt="my-game",X=[{type:K.VisualNovel,name:"Visual Novel",availableUI:[N.React],availableNarrativeLanguages:[T.Ink,T.Typescript],isMultidevice:!0},{type:K.TextStory,name:"Text-based Story",availableUI:[N.React],availableNarrativeLanguages:[T.Ink,T.Typescript],isMultidevice:!0},{type:K.PointAndClick,name:"Point & Click Adventure",availableUI:[N.React],availableNarrativeLanguages:[T.Ink,T.Typescript],isMultidevice:!0},{type:K.GameEngine,name:"Game Engine",availableUI:[],availableNarrativeLanguages:[],isMultidevice:!1},{type:K.Library,name:"Library",availableUI:[],availableNarrativeLanguages:[],isMultidevice:!1}];async function Mi({packageName:e}){const t=await Z({message:"Select the type of game you want to create:",options:X.map(h=>({label:h.name,value:h.type})),initialValue:X[0].type});L(t)&&(_("Operation cancelled."),process.exit(0));const i=X.find(h=>h.type===t)?.availableUI.map(h=>{let w="";switch(h){case N.React:w=xe("React");break;case N.Vue:w=Ei("Vue");break;case N.Angular:w=xi("Angular");break}return{label:w,value:h}})||[];let r;i.length===1?(P.warning(`Only one UI framework available: ${i[0].label}. Using it by default.`),r=i[0].value):i.length>0?(r=await Z({message:"Select the UI framework you want to use:",options:i,initialValue:X.find(h=>h.type===t)?.availableUI[0]}),L(r)&&(_("Operation cancelled."),process.exit(0))):r=void 0;const a=X.find(h=>h.type===t)?.availableNarrativeLanguages.map(h=>{let w="";switch(h){case T.Ink:w="Ink + Typescript";break;case T.Renpy:w=Ii("Renpy");break;case T.Typescript:w=xe("Typescript");break}return{label:w,value:h}})||[];let n;a.length===1?(P.warning(`Only one narrative language available: ${a[0].label}. Using it by default.`),n=a[0].value):a.length>0?(n=await Z({message:"Select the narrative language you want to use:",options:a,initialValue:X.find(h=>h.type===t)?.availableNarrativeLanguages[0]}),L(n)&&(_("Operation cancelled."),process.exit(0))):n=void 0;const s=X.find(h=>h.type===t)?.isMultidevice;let u=!1,c="";return s&&(u=await Z({message:"Which devices is the project intended for?",options:[{label:"Web page",value:!1},{label:"Web page + Desktop + Mobile (Tauri)",value:!0}],initialValue:!1}),L(u)&&(_("Operation cancelled."),process.exit(0)),u?(c=await se({message:"Project identifier:",initialValue:`com.${e}.app`,validate:h=>{if(!h)return"Identifier is required.";if(!/^[a-zA-Z0-9_.\-]+$/.test(h))return"Identifier can only contain letters, numbers, underscores, dots and dashes."}}),L(c)&&(_("Operation cancelled."),process.exit(0))):c=""),{gameType:t,UIFramework:r,narrativeLanguage:n,multidevice:u,identifier:c}}var V=(e=>(e.Delete="delete",e.Overwrite="overwrite",e.Skip="skip",e.Ask="ask",e.Cancel="cancel",e))(V||{});function Ci(e){const t=A.readdirSync(e);return t.length===0||t.length===1&&t[0]===".git"}function bt(e,t,i){if(!A.existsSync(t))return;const r=A.statSync(t);if(r.isFile())(i===V.Overwrite||i===V.Delete)&&A.rmSync(t,{force:!0});else if(r.isDirectory()){const a=A.readdirSync(e);for(const n of a){const s=j.join(e,n),u=j.join(t,n);bt(s,u,i)}}}function qe(e,t,i){if(A.statSync(e).isDirectory()){A.mkdirSync(t,{recursive:!0});for(const r of A.readdirSync(e)){const a=j.join(e,r),n=j.join(t,r);qe(a,n,i)}}else{if(i!==void 0&&A.existsSync(t)){if(i===V.Skip)return;(i===V.Overwrite||i===V.Delete)&&A.rmSync(t,{force:!0})}A.copyFileSync(e,t)}}function ji(e){return/^(?:@[a-z\d\-*~][a-z\d\-*._~]*\/)?[a-z\d\-~][a-z\d\-._~]*$/.test(e)}function yt(e){return e.trim().toLowerCase().replace(/\s+/g,"-").replace(/^[._]/,"").replace(/[^a-z\d\-~]+/g,"-")}async function Ti(){const e=await se({message:"Project name:",defaultValue:$t,placeholder:$t,validate:s=>{if(!s)return"Project name cannot be empty"}});L(e)&&(_("Operation cancelled."),process.exit(0));const t=await se({message:"Project description:",defaultValue:"A new game project",placeholder:"A new game project",validate:s=>{if(!s)return"Project description cannot be empty"}});L(t)&&(_("Operation cancelled."),process.exit(0));const i=await se({message:"Package name:",defaultValue:yt(wt),placeholder:yt(wt),validate:s=>{if(!s)return"Package name cannot be empty";if(!ji(s))return"Invalid package name. The name can only include URL-friendly characters."}});L(i)&&(_("Operation cancelled."),process.exit(0));const r=j.basename(j.resolve()),a=await se({message:"Target directory:",defaultValue:i,placeholder:`${i} (If is equal to ".", the current directory (${r}) will be used)`});L(a)&&(_("Operation cancelled."),process.exit(0));let n;return A.existsSync(a)&&!Ci(a)?(n=await Z({message:"Overwrite existing files?",options:[{hint:"Delete all existing files and create a new project",label:"Delete all",value:V.Delete},{hint:"Overwrite existing conflicting files",label:"Overwrite",value:V.Overwrite},{hint:"Skip existing conflicting files",label:"Skip",value:V.Skip},{hint:"Ask for each file",label:"Ask",value:V.Ask},{hint:"Cancel operation",label:"Cancel",value:V.Cancel}],initialValue:V.Overwrite}),(L(n)||n===V.Cancel)&&(_("Operation cancelled."),process.exit(0))):n=void 0,{projectName:e,foltderName:a,description:t,packageName:i,overwrite:n}}const xt={_gitignore:".gitignore"};async function Oi({rootFolder:e,overwrite:t,template:i,packageName:r,description:a,projectName:n,identifier:s}){const u=await be([{title:`Creating project in ${e}...`,task:async()=>{A.existsSync(e)||A.mkdirSync(e,{recursive:!0});const c=j.resolve(At(import.meta.url),"../..",`${i}`),h=(S,l)=>{const o=j.join(e,xt[S]??S);l?A.writeFileSync(o,l):qe(j.join(c,S),o,t)},w=A.readdirSync(c).map(async S=>{const l=j.join(c,S),o=j.join(e,xt[S]??S);if(A.existsSync(o))switch(t){case V.Ask:if(A.statSync(o).isFile()){const f=await mt({message:`File ${o} already exists. Do you want to overwrite it?`,initialValue:!1});if(L(f)&&(_("Operation cancelled."),process.exit(0)),!f)return;A.rmSync(o,{force:!0})}else{const f=A.readdirSync(l);for(const v of f){const I=j.join(l,v),x=j.join(o,v);if(A.existsSync(x)){const b=await mt({message:`File ${x} already exists. Do you want to overwrite it?`,initialValue:!1});if(L(b)&&(_("Operation cancelled."),process.exit(0)),!b)continue;A.rmSync(x,{force:!0})}qe(I,x,t)}return}break;case V.Skip:return;case V.Overwrite:case V.Delete:bt(l,o,t);break}switch(S){case"package.json":case"vite.config.ts":case"index.html":let f=A.readFileSync(l,"utf-8");f=f.replace(/my-app-package-name/g,r),f=f.replace(/my-app-description/g,a),f=f.replace(/my-app-project-name/g,n),h(S,f);break;case".git":case"package-lock.json":break;default:h(S)}});await Promise.all(w);const $=j.join(e,"src-tauri");if(A.existsSync($)){const S=A.readdirSync($).map(async l=>{switch(l){case"Cargo.lock":case"Cargo.toml":case"tauri.conf.json":let o=A.readFileSync(j.join($,l),"utf-8");o=o.replace(/my-app-package-name/g,r),o=o.replace(/my-app-description/g,a),o=o.replace(/my-app-project-name/g,n),o=o.replace(/com.my-app-project-name.app/g,s),h(j.join("src-tauri",l),o)}});await Promise.all(S)}const d=j.join(e,"_github");return A.existsSync(d)&&A.renameSync(d,j.join(e,".github")),"Project created"}}]);L(u)&&(_("Operation cancelled."),process.exit(0))}const Ri=process.cwd();async function Vi(){let e,{description:t,overwrite:i,packageName:r,projectName:a,foltderName:n}=await Ti(),{UIFramework:s,gameType:u,narrativeLanguage:c,multidevice:h,identifier:w}=await Mi({packageName:r});const $=j.join(Ri,n);let d;switch(u){case K.VisualNovel:switch(s){case N.React:switch(c){case T.Typescript:h?d="template-react-vite-muijoy-tauri":d="template-react-vite-muijoy",e="src/labels/startLabel.ts";break;case T.Ink:h?d="template-react-vite-muijoy-ink-tauri":d="template-react-vite-muijoy-ink",e="src/ink/start.ink";break;case T.Renpy:_("Error: There are no templates for this narrative language"),process.exit(0);default:_("Error: Unknown narrative language"),process.exit(0)}break;case N.Vue:case N.Angular:_("Error: There are no templates for this game type and UI framework"),process.exit(0);default:_("Error: Unknown UI framework"),process.exit(0)}break;case K.TextStory:switch(s){case N.React:switch(c){case T.Typescript:h?d="template-story-react-vite-muijoy-tauri":d="template-story-react-vite-muijoy",e="src/labels/startLabel.ts";break;case T.Ink:h?d="template-story-react-vite-muijoy-ink-tauri":d="template-story-react-vite-muijoy-ink",e="src/ink/start.ink";break;case T.Renpy:_("Error: There are no templates for this narrative language"),process.exit(0);default:_("Error: Unknown narrative language"),process.exit(0)}break;case N.Vue:case N.Angular:_("Error: There are no templates for this game type and UI framework"),process.exit(0);default:_("Error: Unknown UI framework"),process.exit(0)}break;case K.PointAndClick:switch(s){case N.React:switch(c){case T.Typescript:h?d="template-nqtr-react-vite-muijoy-tauri":d="template-nqtr-react-vite-muijoy",e="src/labels/startLabel.ts";break;case T.Ink:h?d="template-nqtr-react-vite-muijoy-ink-tauri":d="template-nqtr-react-vite-muijoy-ink",e="src/ink/variousActionsLabels.ink";break;case T.Renpy:_("Error: There are no templates for this narrative language"),process.exit(0);default:_("Error: Unknown narrative language"),process.exit(0)}break;case N.Vue:case N.Angular:_("Error: There are no templates for this game type and UI framework"),process.exit(0);default:_("Error: Unknown UI framework"),process.exit(0)}break;case K.GameEngine:d="template-game-engine",e="src/index.ts";break;case K.Library:d="template-lib",e="src/index.ts";break;default:_("Error: Unknown game type"),process.exit(0)}return await Oi({rootFolder:$,template:d,packageName:r,description:t,projectName:a,overwrite:i,identifier:w}),{rootFolder:$,fileToOpen:e}}function Li(){console.info(`
66
66
  \u2588\u2588\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2557\u2588\u2588\u2557 \u2588\u2588\u2557\u2588\u2588\u2557 \u2588\u2588\u2557 \u2588\u2588\u2557\u2588\u2588\u2588\u2557 \u2588\u2588\u2557
67
67
  \u2588\u2588\u2554\u2550\u2550\u2588\u2588\u2557\u2588\u2588\u2551\u255A\u2588\u2588\u2557\u2588\u2588\u2554\u255D\u2588\u2588\u2551 \u2588\u2588\u2551 \u2588\u2588\u2551\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2551
68
68
  \u2588\u2588\u2588\u2588\u2588\u2588\u2554\u255D\u2588\u2588\u2551 \u255A\u2588\u2588\u2588\u2554\u255D \u2588\u2588\u2551\u2588\u2588\u2588\u2588\u2588\u2557\u2588\u2588\u2551 \u2588\u2588\u2551\u2588\u2588\u2554\u2588\u2588\u2557 \u2588\u2588\u2551
69
69
  \u2588\u2588\u2554\u2550\u2550\u2550\u255D \u2588\u2588\u2551 \u2588\u2588\u2554\u2588\u2588\u2557 \u2588\u2588\u2551\u255A\u2550\u2550\u2550\u2550\u255D\u255A\u2588\u2588\u2557 \u2588\u2588\u2554\u255D\u2588\u2588\u2551\u255A\u2588\u2588\u2557\u2588\u2588\u2551
70
70
  \u2588\u2588\u2551 \u2588\u2588\u2551\u2588\u2588\u2554\u255D \u2588\u2588\u2557\u2588\u2588\u2551 \u255A\u2588\u2588\u2588\u2588\u2554\u255D \u2588\u2588\u2551 \u255A\u2588\u2588\u2588\u2588\u2551
71
71
  \u255A\u2550\u255D \u255A\u2550\u255D\u255A\u2550\u255D \u255A\u2550\u255D\u255A\u2550\u255D \u255A\u2550\u2550\u2550\u255D \u255A\u2550\u255D \u255A\u2550\u2550\u2550\u255D
72
- `)}function Wr(e){if(!e)return;const i=e.split(" ")[0].split("/");return{name:i[0],version:i[1]}}const Pr=Mr(process.argv.slice(2),{default:{help:!1},alias:{h:"help",t:"template"},string:["_"]}),Si=process.cwd(),Gr=`Usage: create-pixi-vn [OPTION]... [DIRECTORY]
72
+ `)}function Ni(e){if(!e)return;const t=e.split(" ")[0].split("/");return{name:t[0],version:t[1]}}const Di=Ai(process.argv.slice(2),{default:{help:!1},alias:{h:"help",t:"template"},string:["_"]}),Et=process.cwd(),Ui=`Usage: create-pixi-vn [OPTION]... [DIRECTORY]
73
73
 
74
74
  Create a new Pixi\u2019VN project.
75
75
  With no arguments, start the CLI in interactive mode.
@@ -78,7 +78,7 @@ Options:
78
78
  -t, --template NAME use a specific template
79
79
 
80
80
  Available templates:
81
- ${Ee("basic-visual-novel react")}`;async function zr(){try{if(Ur(),yr(`Welcome to ${Ee("Pixi\u2019VN")}! \u{1F3A8}\u2728`),Pr.help){console.log(Gr);return}const{rootFolder:e,fileToOpen:i}=await Br();await Or({rootFolder:e});const r=Wr(process.env.npm_config_user_agent),s=r?r.name:"npm",o=O.relative(Si,e);await jr({rootFolder:e,fileToOpen:i}),await xe([{title:"Installing dependencies...",task:async n=>{try{await Ze(s),s==="yarn"?await H("yarn",[],{cwd:e}):await H(s,["install"],{cwd:e})}catch{return`Could not use ${s} to install dependencies`}return"Dependencies installed."}}]),W.message("Refer to the README.md file for detailed information about the project.");let t="To run the game:";switch(e!==Si&&(t+=`
82
- cd ${o.includes(" ")?`"${o}"`:o}`),s){case"yarn":t+=`
83
- yarn dev`;break;default:t+=`
84
- ${s} run start`;break}W.message(t),Er("You're all set! \u{1F389} Now go build your game! \u{1F680}"),console.log()}catch(e){console.error(e)}}zr().catch(e=>{console.error(e)});
81
+ ${xe("basic-visual-novel react")}`;async function Pi(){try{if(Li(),$i(`Welcome to ${xe("Pixi\u2019VN")}! \u{1F3A8}\u2728`),Di.help){console.log(Ui);return}const{rootFolder:e,fileToOpen:t}=await Vi();await _i({rootFolder:e});const i=Ni(process.env.npm_config_user_agent),r=i?i.name:"npm",a=j.relative(Et,e);await Fi({rootFolder:e,fileToOpen:t}),await be([{title:"Installing dependencies...",task:async s=>{try{await Ze(r),r==="yarn"?await H("yarn",[],{cwd:e}):await H(r,["install"],{cwd:e})}catch{return`Could not use ${r} to install dependencies`}return"Dependencies installed."}}]),P.message("Refer to the README.md file for detailed information about the project.");let n="To run the game:";switch(e!==Et&&(n+=`
82
+ cd ${a.includes(" ")?`"${a}"`:a}`),r){case"yarn":n+=`
83
+ yarn dev`;break;default:n+=`
84
+ ${r} run start`;break}P.message(n),wi("You're all set! \u{1F389} Now go build your game! \u{1F680}"),console.log()}catch(e){console.error(e)}}Pi().catch(e=>{console.error(e)});
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "create-pixi-vn",
3
3
  "description": "Create a new Pixi’VN project",
4
- "version": "1.9.3",
4
+ "version": "1.9.5",
5
5
  "type": "module",
6
6
  "license": "GPL-3.0",
7
7
  "author": "DRincs-Productions",
@@ -12,9 +12,9 @@
12
12
  "preview": "vite preview"
13
13
  },
14
14
  "dependencies": {
15
- "@drincs/nqtr": "^0.7.1",
16
- "@drincs/pixi-vn": "^1.5.13",
17
- "@drincs/pixi-vn-spine": "^0.2.0",
15
+ "@drincs/nqtr": "^0.8.0",
16
+ "@drincs/pixi-vn": "^1.5.17",
17
+ "@drincs/pixi-vn-spine": "^0.2.1",
18
18
  "@emotion/react": "^11.14.0",
19
19
  "@emotion/styled": "^11.14.1",
20
20
  "@mui/icons-material": "^7.3.7",
@@ -19,8 +19,9 @@ export default function useGameProps(): StepLabelProps {
19
19
  t,
20
20
  uiTransition,
21
21
  notify: enqueueSnackbar,
22
- invalidateInterfaceData: () => {
23
- queryClient.invalidateQueries({ queryKey: [INTERFACE_DATA_USE_QUEY_KEY] });
22
+ invalidateInterfaceData: async (delay: number = 0) => {
23
+ if (delay > 0) await new Promise((resolve) => setTimeout(resolve, delay));
24
+ return await queryClient.invalidateQueries({ queryKey: [INTERFACE_DATA_USE_QUEY_KEY] });
24
25
  },
25
26
  sleep,
26
27
  wait,