@caperjs/core 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (600) hide show
  1. package/LICENSE +22 -0
  2. package/README.md +62 -0
  3. package/cli/add.mjs +197 -0
  4. package/cli/audio/cc.mjs +128 -0
  5. package/cli/audio/index.mjs +42 -0
  6. package/cli/audio/utils.mjs +56 -0
  7. package/cli/create-caper.mjs +8 -0
  8. package/cli/create.mjs +351 -0
  9. package/cli/install-peerdeps.mjs +57 -0
  10. package/cli/update.mjs +9 -0
  11. package/cli/utils.mjs +81 -0
  12. package/cli/vite.mjs +55 -0
  13. package/cli/voiceover/generateVoiceoverCSV.mjs +158 -0
  14. package/cli/voiceover/index.mjs +1 -0
  15. package/cli.mjs +157 -0
  16. package/client.d.ts +7 -0
  17. package/config/assetpack.mjs +212 -0
  18. package/config/tsconfig.base.json +28 -0
  19. package/config/vite.mjs +2464 -0
  20. package/extras/css/accessibility.css +9 -0
  21. package/extras/css/fullscreen.css +28 -0
  22. package/extras/css/loader.css +67 -0
  23. package/extras/llms.txt +1602 -0
  24. package/lib/CaptionsPlugin-Dc8fIrjy.js +277 -0
  25. package/lib/CaptionsPlugin-Dc8fIrjy.js.map +1 -0
  26. package/lib/DataAdapter-BY2114sp.js +84 -0
  27. package/lib/DataAdapter-BY2114sp.js.map +1 -0
  28. package/lib/DebugRenderer-BJMLILqI.js +1385 -0
  29. package/lib/DebugRenderer-BJMLILqI.js.map +1 -0
  30. package/lib/DevToolsPlugin-wQ5rOkn0.js +31 -0
  31. package/lib/DevToolsPlugin-wQ5rOkn0.js.map +1 -0
  32. package/lib/GSAPPlugin-DHhSZKv8.js +350 -0
  33. package/lib/GSAPPlugin-DHhSZKv8.js.map +1 -0
  34. package/lib/LayoutPlugin-B-DF9SYM.js +1271 -0
  35. package/lib/LayoutPlugin-B-DF9SYM.js.map +1 -0
  36. package/lib/SpinePlugin-Dz_3dljz.js +6077 -0
  37. package/lib/SpinePlugin-Dz_3dljz.js.map +1 -0
  38. package/lib/StatsPlugin-Cg82JMBD.js +70 -0
  39. package/lib/StatsPlugin-Cg82JMBD.js.map +1 -0
  40. package/lib/VoiceOverPlugin-BR3ImT8C.js +114 -0
  41. package/lib/VoiceOverPlugin-BR3ImT8C.js.map +1 -0
  42. package/lib/caper.mjs +1233 -0
  43. package/lib/caper.mjs.map +1 -0
  44. package/lib/core/Application.d.ts +268 -0
  45. package/lib/core/Application.d.ts.map +1 -0
  46. package/lib/core/config.d.ts +39 -0
  47. package/lib/core/config.d.ts.map +1 -0
  48. package/lib/core/create.d.ts +41 -0
  49. package/lib/core/create.d.ts.map +1 -0
  50. package/lib/core/globals.d.ts +51 -0
  51. package/lib/core/globals.d.ts.map +1 -0
  52. package/lib/core/index.d.ts +7 -0
  53. package/lib/core/index.d.ts.map +1 -0
  54. package/lib/core/interfaces/IApplication.d.ts +566 -0
  55. package/lib/core/interfaces/IApplication.d.ts.map +1 -0
  56. package/lib/core/interfaces/IApplicationOptions.d.ts +65 -0
  57. package/lib/core/interfaces/IApplicationOptions.d.ts.map +1 -0
  58. package/lib/core/interfaces/ICoreFunctions.d.ts +49 -0
  59. package/lib/core/interfaces/ICoreFunctions.d.ts.map +1 -0
  60. package/lib/core/interfaces/ICoreSignals.d.ts +57 -0
  61. package/lib/core/interfaces/ICoreSignals.d.ts.map +1 -0
  62. package/lib/core/interfaces/IStorageCapability.d.ts +20 -0
  63. package/lib/core/interfaces/IStorageCapability.d.ts.map +1 -0
  64. package/lib/core/interfaces/IStorageCapability.test.d.ts +2 -0
  65. package/lib/core/interfaces/IStorageCapability.test.d.ts.map +1 -0
  66. package/lib/core/interfaces/index.d.ts +7 -0
  67. package/lib/core/interfaces/index.d.ts.map +1 -0
  68. package/lib/core/registries.d.ts +8 -0
  69. package/lib/core/registries.d.ts.map +1 -0
  70. package/lib/core/types.d.ts +12 -0
  71. package/lib/core/types.d.ts.map +1 -0
  72. package/lib/display/AnimatedSprite.d.ts +40 -0
  73. package/lib/display/AnimatedSprite.d.ts.map +1 -0
  74. package/lib/display/Camera.d.ts +102 -0
  75. package/lib/display/Camera.d.ts.map +1 -0
  76. package/lib/display/Container.d.ts +115 -0
  77. package/lib/display/Container.d.ts.map +1 -0
  78. package/lib/display/Entity.d.ts +46 -0
  79. package/lib/display/Entity.d.ts.map +1 -0
  80. package/lib/display/ParticleContainer.d.ts +58 -0
  81. package/lib/display/ParticleContainer.d.ts.map +1 -0
  82. package/lib/display/Scene.d.ts +250 -0
  83. package/lib/display/Scene.d.ts.map +1 -0
  84. package/lib/display/SceneTransition.d.ts +41 -0
  85. package/lib/display/SceneTransition.d.ts.map +1 -0
  86. package/lib/display/SpineAnimation.d.ts +76 -0
  87. package/lib/display/SpineAnimation.d.ts.map +1 -0
  88. package/lib/display/Svg.d.ts +5 -0
  89. package/lib/display/Svg.d.ts.map +1 -0
  90. package/lib/display/index.d.ts +10 -0
  91. package/lib/display/index.d.ts.map +1 -0
  92. package/lib/env.d.ts +6 -0
  93. package/lib/hello.d.ts +2 -0
  94. package/lib/hello.d.ts.map +1 -0
  95. package/lib/index.d.ts +15 -0
  96. package/lib/index.d.ts.map +1 -0
  97. package/lib/mixins/animated.d.ts +53 -0
  98. package/lib/mixins/animated.d.ts.map +1 -0
  99. package/lib/mixins/factory/Factory.d.ts +8 -0
  100. package/lib/mixins/factory/Factory.d.ts.map +1 -0
  101. package/lib/mixins/factory/const.d.ts +67 -0
  102. package/lib/mixins/factory/const.d.ts.map +1 -0
  103. package/lib/mixins/factory/index.d.ts +8 -0
  104. package/lib/mixins/factory/index.d.ts.map +1 -0
  105. package/lib/mixins/factory/methods.d.ts +3 -0
  106. package/lib/mixins/factory/methods.d.ts.map +1 -0
  107. package/lib/mixins/factory/props.d.ts +160 -0
  108. package/lib/mixins/factory/props.d.ts.map +1 -0
  109. package/lib/mixins/factory/registry.d.ts +27 -0
  110. package/lib/mixins/factory/registry.d.ts.map +1 -0
  111. package/lib/mixins/factory/registry.test.d.ts +2 -0
  112. package/lib/mixins/factory/registry.test.d.ts.map +1 -0
  113. package/lib/mixins/factory/schema.d.ts +71 -0
  114. package/lib/mixins/factory/schema.d.ts.map +1 -0
  115. package/lib/mixins/factory/ui-registry.d.ts +20 -0
  116. package/lib/mixins/factory/ui-registry.d.ts.map +1 -0
  117. package/lib/mixins/factory/utils.d.ts +11 -0
  118. package/lib/mixins/factory/utils.d.ts.map +1 -0
  119. package/lib/mixins/focus.d.ts +15 -0
  120. package/lib/mixins/focus.d.ts.map +1 -0
  121. package/lib/mixins/index.d.ts +6 -0
  122. package/lib/mixins/index.d.ts.map +1 -0
  123. package/lib/mixins/interaction.d.ts +20 -0
  124. package/lib/mixins/interaction.d.ts.map +1 -0
  125. package/lib/mixins/signals.d.ts +15 -0
  126. package/lib/mixins/signals.d.ts.map +1 -0
  127. package/lib/plugins/AssetsPlugin.d.ts +79 -0
  128. package/lib/plugins/AssetsPlugin.d.ts.map +1 -0
  129. package/lib/plugins/DataAdapter.d.ts +95 -0
  130. package/lib/plugins/DataAdapter.d.ts.map +1 -0
  131. package/lib/plugins/DevToolsPlugin.d.ts +97 -0
  132. package/lib/plugins/DevToolsPlugin.d.ts.map +1 -0
  133. package/lib/plugins/FullScreenPlugin.d.ts +240 -0
  134. package/lib/plugins/FullScreenPlugin.d.ts.map +1 -0
  135. package/lib/plugins/GSAPPlugin.d.ts +634 -0
  136. package/lib/plugins/GSAPPlugin.d.ts.map +1 -0
  137. package/lib/plugins/KeyboardPlugin.d.ts +53 -0
  138. package/lib/plugins/KeyboardPlugin.d.ts.map +1 -0
  139. package/lib/plugins/LayoutPlugin.d.ts +100 -0
  140. package/lib/plugins/LayoutPlugin.d.ts.map +1 -0
  141. package/lib/plugins/LookupPlugin.d.ts +223 -0
  142. package/lib/plugins/LookupPlugin.d.ts.map +1 -0
  143. package/lib/plugins/Plugin.d.ts +132 -0
  144. package/lib/plugins/Plugin.d.ts.map +1 -0
  145. package/lib/plugins/Plugin.test.d.ts +2 -0
  146. package/lib/plugins/Plugin.test.d.ts.map +1 -0
  147. package/lib/plugins/PopupManagerPlugin.d.ts +108 -0
  148. package/lib/plugins/PopupManagerPlugin.d.ts.map +1 -0
  149. package/lib/plugins/ResizerPlugin.d.ts +62 -0
  150. package/lib/plugins/ResizerPlugin.d.ts.map +1 -0
  151. package/lib/plugins/SceneManagerPlugin.d.ts +122 -0
  152. package/lib/plugins/SceneManagerPlugin.d.ts.map +1 -0
  153. package/lib/plugins/StatsPlugin.d.ts +8 -0
  154. package/lib/plugins/StatsPlugin.d.ts.map +1 -0
  155. package/lib/plugins/TimerPlugin.d.ts +401 -0
  156. package/lib/plugins/TimerPlugin.d.ts.map +1 -0
  157. package/lib/plugins/WebEventsPlugin.d.ts +60 -0
  158. package/lib/plugins/WebEventsPlugin.d.ts.map +1 -0
  159. package/lib/plugins/actions/ActionsPlugin.d.ts +39 -0
  160. package/lib/plugins/actions/ActionsPlugin.d.ts.map +1 -0
  161. package/lib/plugins/actions/constants.d.ts +52 -0
  162. package/lib/plugins/actions/constants.d.ts.map +1 -0
  163. package/lib/plugins/actions/index.d.ts +5 -0
  164. package/lib/plugins/actions/index.d.ts.map +1 -0
  165. package/lib/plugins/actions/methods.d.ts +11 -0
  166. package/lib/plugins/actions/methods.d.ts.map +1 -0
  167. package/lib/plugins/actions/types.d.ts +25 -0
  168. package/lib/plugins/actions/types.d.ts.map +1 -0
  169. package/lib/plugins/audio/AudioChannel.d.ts +46 -0
  170. package/lib/plugins/audio/AudioChannel.d.ts.map +1 -0
  171. package/lib/plugins/audio/AudioChannel.test.d.ts +2 -0
  172. package/lib/plugins/audio/AudioChannel.test.d.ts.map +1 -0
  173. package/lib/plugins/audio/AudioInstance.d.ts +79 -0
  174. package/lib/plugins/audio/AudioInstance.d.ts.map +1 -0
  175. package/lib/plugins/audio/AudioManagerPlugin.d.ts +323 -0
  176. package/lib/plugins/audio/AudioManagerPlugin.d.ts.map +1 -0
  177. package/lib/plugins/audio/VoiceOverPlugin.d.ts +69 -0
  178. package/lib/plugins/audio/VoiceOverPlugin.d.ts.map +1 -0
  179. package/lib/plugins/audio/index.d.ts +4 -0
  180. package/lib/plugins/audio/index.d.ts.map +1 -0
  181. package/lib/plugins/breakpoints/BreakpointPlugin.d.ts +109 -0
  182. package/lib/plugins/breakpoints/BreakpointPlugin.d.ts.map +1 -0
  183. package/lib/plugins/breakpoints/BreakpointPlugin.test.d.ts +2 -0
  184. package/lib/plugins/breakpoints/BreakpointPlugin.test.d.ts.map +1 -0
  185. package/lib/plugins/breakpoints/evaluate.d.ts +53 -0
  186. package/lib/plugins/breakpoints/evaluate.d.ts.map +1 -0
  187. package/lib/plugins/breakpoints/evaluate.test.d.ts +2 -0
  188. package/lib/plugins/breakpoints/evaluate.test.d.ts.map +1 -0
  189. package/lib/plugins/breakpoints/index.d.ts +4 -0
  190. package/lib/plugins/breakpoints/index.d.ts.map +1 -0
  191. package/lib/plugins/breakpoints/methods.d.ts +23 -0
  192. package/lib/plugins/breakpoints/methods.d.ts.map +1 -0
  193. package/lib/plugins/breakpoints/types.d.ts +70 -0
  194. package/lib/plugins/breakpoints/types.d.ts.map +1 -0
  195. package/lib/plugins/captions/CaptionsPlugin.d.ts +150 -0
  196. package/lib/plugins/captions/CaptionsPlugin.d.ts.map +1 -0
  197. package/lib/plugins/captions/CaptionsRenderer.d.ts +37 -0
  198. package/lib/plugins/captions/CaptionsRenderer.d.ts.map +1 -0
  199. package/lib/plugins/captions/index.d.ts +3 -0
  200. package/lib/plugins/captions/index.d.ts.map +1 -0
  201. package/lib/plugins/defaults.d.ts +4 -0
  202. package/lib/plugins/defaults.d.ts.map +1 -0
  203. package/lib/plugins/focus/FocusManagerPlugin.d.ts +148 -0
  204. package/lib/plugins/focus/FocusManagerPlugin.d.ts.map +1 -0
  205. package/lib/plugins/focus/FocusOutliner.d.ts +32 -0
  206. package/lib/plugins/focus/FocusOutliner.d.ts.map +1 -0
  207. package/lib/plugins/focus/index.d.ts +3 -0
  208. package/lib/plugins/focus/index.d.ts.map +1 -0
  209. package/lib/plugins/i18nPlugin.d.ts +128 -0
  210. package/lib/plugins/i18nPlugin.d.ts.map +1 -0
  211. package/lib/plugins/index.d.ts +18 -0
  212. package/lib/plugins/index.d.ts.map +1 -0
  213. package/lib/plugins/input/AbstractControls.d.ts +8 -0
  214. package/lib/plugins/input/AbstractControls.d.ts.map +1 -0
  215. package/lib/plugins/input/Controls.d.ts +16 -0
  216. package/lib/plugins/input/Controls.d.ts.map +1 -0
  217. package/lib/plugins/input/InputPlugin.d.ts +52 -0
  218. package/lib/plugins/input/InputPlugin.d.ts.map +1 -0
  219. package/lib/plugins/input/constants.d.ts +8 -0
  220. package/lib/plugins/input/constants.d.ts.map +1 -0
  221. package/lib/plugins/input/index.d.ts +10 -0
  222. package/lib/plugins/input/index.d.ts.map +1 -0
  223. package/lib/plugins/input/interfaces.d.ts +30 -0
  224. package/lib/plugins/input/interfaces.d.ts.map +1 -0
  225. package/lib/plugins/input/keyboard/KeyboardContols.d.ts +28 -0
  226. package/lib/plugins/input/keyboard/KeyboardContols.d.ts.map +1 -0
  227. package/lib/plugins/input/keyboard/index.d.ts +3 -0
  228. package/lib/plugins/input/keyboard/index.d.ts.map +1 -0
  229. package/lib/plugins/input/keyboard/interfaces.d.ts +18 -0
  230. package/lib/plugins/input/keyboard/interfaces.d.ts.map +1 -0
  231. package/lib/plugins/input/methods.d.ts +4 -0
  232. package/lib/plugins/input/methods.d.ts.map +1 -0
  233. package/lib/plugins/input/touch/TouchControls.d.ts +35 -0
  234. package/lib/plugins/input/touch/TouchControls.d.ts.map +1 -0
  235. package/lib/plugins/input/touch/constants.d.ts +14 -0
  236. package/lib/plugins/input/touch/constants.d.ts.map +1 -0
  237. package/lib/plugins/input/touch/index.d.ts +4 -0
  238. package/lib/plugins/input/touch/index.d.ts.map +1 -0
  239. package/lib/plugins/input/touch/interfaces.d.ts +15 -0
  240. package/lib/plugins/input/touch/interfaces.d.ts.map +1 -0
  241. package/lib/plugins/input/types.d.ts +32 -0
  242. package/lib/plugins/input/types.d.ts.map +1 -0
  243. package/lib/plugins/input/utils.d.ts +23 -0
  244. package/lib/plugins/input/utils.d.ts.map +1 -0
  245. package/lib/plugins/spine/SpinePlugin.d.ts +6 -0
  246. package/lib/plugins/spine/SpinePlugin.d.ts.map +1 -0
  247. package/lib/plugins/spine/pixi-spine/BatchableSpineSlot.d.ts +31 -0
  248. package/lib/plugins/spine/pixi-spine/BatchableSpineSlot.d.ts.map +1 -0
  249. package/lib/plugins/spine/pixi-spine/Spine.d.ts +211 -0
  250. package/lib/plugins/spine/pixi-spine/Spine.d.ts.map +1 -0
  251. package/lib/plugins/spine/pixi-spine/SpineDebugRenderer.d.ts +81 -0
  252. package/lib/plugins/spine/pixi-spine/SpineDebugRenderer.d.ts.map +1 -0
  253. package/lib/plugins/spine/pixi-spine/SpinePipe.d.ts +21 -0
  254. package/lib/plugins/spine/pixi-spine/SpinePipe.d.ts.map +1 -0
  255. package/lib/plugins/spine/pixi-spine/SpineTexture.d.ts +16 -0
  256. package/lib/plugins/spine/pixi-spine/SpineTexture.d.ts.map +1 -0
  257. package/lib/plugins/spine/pixi-spine/assets/atlasLoader.d.ts +10 -0
  258. package/lib/plugins/spine/pixi-spine/assets/atlasLoader.d.ts.map +1 -0
  259. package/lib/plugins/spine/pixi-spine/assets/skeletonLoader.d.ts +6 -0
  260. package/lib/plugins/spine/pixi-spine/assets/skeletonLoader.d.ts.map +1 -0
  261. package/lib/plugins/spine/pixi-spine/darktint/DarkTintBatchGeometry.d.ts +5 -0
  262. package/lib/plugins/spine/pixi-spine/darktint/DarkTintBatchGeometry.d.ts.map +1 -0
  263. package/lib/plugins/spine/pixi-spine/darktint/DarkTintBatcher.d.ts +22 -0
  264. package/lib/plugins/spine/pixi-spine/darktint/DarkTintBatcher.d.ts.map +1 -0
  265. package/lib/plugins/spine/pixi-spine/darktint/DarkTintShader.d.ts +5 -0
  266. package/lib/plugins/spine/pixi-spine/darktint/DarkTintShader.d.ts.map +1 -0
  267. package/lib/plugins/spine/pixi-spine/darktint/darkTintBit.d.ts +51 -0
  268. package/lib/plugins/spine/pixi-spine/darktint/darkTintBit.d.ts.map +1 -0
  269. package/lib/plugins/spine/pixi-spine/index.d.ts +9 -0
  270. package/lib/plugins/spine/pixi-spine/index.d.ts.map +1 -0
  271. package/lib/plugins/spine/pixi-spine/require-shim.d.ts +34 -0
  272. package/lib/plugins/spine/pixi-spine/require-shim.d.ts.map +1 -0
  273. package/lib/registries-CYCaYKZI.js +6885 -0
  274. package/lib/registries-CYCaYKZI.js.map +1 -0
  275. package/lib/signals/Signal.d.ts +16 -0
  276. package/lib/signals/Signal.d.ts.map +1 -0
  277. package/lib/signals/Signal.test.d.ts +2 -0
  278. package/lib/signals/Signal.test.d.ts.map +1 -0
  279. package/lib/signals/index.d.ts +3 -0
  280. package/lib/signals/index.d.ts.map +1 -0
  281. package/lib/store/Store.d.ts +56 -0
  282. package/lib/store/Store.d.ts.map +1 -0
  283. package/lib/store/Store.test.d.ts +2 -0
  284. package/lib/store/Store.test.d.ts.map +1 -0
  285. package/lib/store/index.d.ts +2 -0
  286. package/lib/store/index.d.ts.map +1 -0
  287. package/lib/types/framework.d.ts +46 -0
  288. package/lib/types/gsap.d.ts +23 -0
  289. package/lib/ui/Button.d.ts +162 -0
  290. package/lib/ui/Button.d.ts.map +1 -0
  291. package/lib/ui/FlexContainer.d.ts +109 -0
  292. package/lib/ui/FlexContainer.d.ts.map +1 -0
  293. package/lib/ui/Input.d.ts +384 -0
  294. package/lib/ui/Input.d.ts.map +1 -0
  295. package/lib/ui/Joystick.d.ts +61 -0
  296. package/lib/ui/Joystick.d.ts.map +1 -0
  297. package/lib/ui/Popup.d.ts +109 -0
  298. package/lib/ui/Popup.d.ts.map +1 -0
  299. package/lib/ui/Toast.d.ts +131 -0
  300. package/lib/ui/Toast.d.ts.map +1 -0
  301. package/lib/ui/Toaster.d.ts +188 -0
  302. package/lib/ui/Toaster.d.ts.map +1 -0
  303. package/lib/ui/UICanvas.d.ts +155 -0
  304. package/lib/ui/UICanvas.d.ts.map +1 -0
  305. package/lib/ui/index.d.ts +9 -0
  306. package/lib/ui/index.d.ts.map +1 -0
  307. package/lib/utils/array.d.ts +11 -0
  308. package/lib/utils/array.d.ts.map +1 -0
  309. package/lib/utils/bind.d.ts +21 -0
  310. package/lib/utils/bind.d.ts.map +1 -0
  311. package/lib/utils/canvas.d.ts +2 -0
  312. package/lib/utils/canvas.d.ts.map +1 -0
  313. package/lib/utils/color.d.ts +66 -0
  314. package/lib/utils/color.d.ts.map +1 -0
  315. package/lib/utils/console/Logger.d.ts +15 -0
  316. package/lib/utils/console/Logger.d.ts.map +1 -0
  317. package/lib/utils/console/index.d.ts +2 -0
  318. package/lib/utils/console/index.d.ts.map +1 -0
  319. package/lib/utils/debug.d.ts +34 -0
  320. package/lib/utils/debug.d.ts.map +1 -0
  321. package/lib/utils/define.d.ts +100 -0
  322. package/lib/utils/define.d.ts.map +1 -0
  323. package/lib/utils/env.d.ts +4 -0
  324. package/lib/utils/env.d.ts.map +1 -0
  325. package/lib/utils/events.d.ts +12 -0
  326. package/lib/utils/events.d.ts.map +1 -0
  327. package/lib/utils/framework.d.ts +12 -0
  328. package/lib/utils/framework.d.ts.map +1 -0
  329. package/lib/utils/index.d.ts +28 -0
  330. package/lib/utils/index.d.ts.map +1 -0
  331. package/lib/utils/map.d.ts +31 -0
  332. package/lib/utils/map.d.ts.map +1 -0
  333. package/lib/utils/math.d.ts +15 -0
  334. package/lib/utils/math.d.ts.map +1 -0
  335. package/lib/utils/misc.d.ts +13 -0
  336. package/lib/utils/misc.d.ts.map +1 -0
  337. package/lib/utils/number.d.ts +2 -0
  338. package/lib/utils/number.d.ts.map +1 -0
  339. package/lib/utils/object.d.ts +21 -0
  340. package/lib/utils/object.d.ts.map +1 -0
  341. package/lib/utils/padding.d.ts +4 -0
  342. package/lib/utils/padding.d.ts.map +1 -0
  343. package/lib/utils/pixi.d.ts +42 -0
  344. package/lib/utils/pixi.d.ts.map +1 -0
  345. package/lib/utils/platform.d.ts +20 -0
  346. package/lib/utils/platform.d.ts.map +1 -0
  347. package/lib/utils/point.d.ts +66 -0
  348. package/lib/utils/point.d.ts.map +1 -0
  349. package/lib/utils/promise/Queue.d.ts +60 -0
  350. package/lib/utils/promise/Queue.d.ts.map +1 -0
  351. package/lib/utils/promise/functions.d.ts +14 -0
  352. package/lib/utils/promise/functions.d.ts.map +1 -0
  353. package/lib/utils/promise/index.d.ts +3 -0
  354. package/lib/utils/promise/index.d.ts.map +1 -0
  355. package/lib/utils/random.d.ts +42 -0
  356. package/lib/utils/random.d.ts.map +1 -0
  357. package/lib/utils/rect.d.ts +26 -0
  358. package/lib/utils/rect.d.ts.map +1 -0
  359. package/lib/utils/set.d.ts +15 -0
  360. package/lib/utils/set.d.ts.map +1 -0
  361. package/lib/utils/string.d.ts +3 -0
  362. package/lib/utils/string.d.ts.map +1 -0
  363. package/lib/utils/text.d.ts +3 -0
  364. package/lib/utils/text.d.ts.map +1 -0
  365. package/lib/utils/typefilters.d.ts +4 -0
  366. package/lib/utils/typefilters.d.ts.map +1 -0
  367. package/lib/utils/types.d.ts +209 -0
  368. package/lib/utils/types.d.ts.map +1 -0
  369. package/lib/utils/vite.d.ts +25 -0
  370. package/lib/utils/vite.d.ts.map +1 -0
  371. package/lib/utils/web.d.ts +3 -0
  372. package/lib/utils/web.d.ts.map +1 -0
  373. package/lib/version.d.ts +3 -0
  374. package/lib/version.d.ts.map +1 -0
  375. package/lib/webgl-check.d.ts +2 -0
  376. package/lib/webgl-check.d.ts.map +1 -0
  377. package/package.json +138 -0
  378. package/src/core/Application.ts +1091 -0
  379. package/src/core/config.ts +168 -0
  380. package/src/core/create.ts +186 -0
  381. package/src/core/globals.ts +299 -0
  382. package/src/core/index.ts +6 -0
  383. package/src/core/interfaces/IApplication.ts +628 -0
  384. package/src/core/interfaces/IApplicationOptions.ts +81 -0
  385. package/src/core/interfaces/ICoreFunctions.ts +86 -0
  386. package/src/core/interfaces/ICoreSignals.ts +77 -0
  387. package/src/core/interfaces/IStorageCapability.test.ts +27 -0
  388. package/src/core/interfaces/IStorageCapability.ts +26 -0
  389. package/src/core/interfaces/index.ts +6 -0
  390. package/src/core/registries.ts +7 -0
  391. package/src/core/types.ts +13 -0
  392. package/src/display/AnimatedSprite.ts +227 -0
  393. package/src/display/Camera.ts +371 -0
  394. package/src/display/Container.ts +240 -0
  395. package/src/display/Entity.ts +50 -0
  396. package/src/display/ParticleContainer.ts +107 -0
  397. package/src/display/Scene.ts +305 -0
  398. package/src/display/SceneTransition.ts +108 -0
  399. package/src/display/SpineAnimation.ts +170 -0
  400. package/src/display/Svg.ts +9 -0
  401. package/src/display/index.ts +11 -0
  402. package/src/env.d.ts +6 -0
  403. package/src/hello.ts +20 -0
  404. package/src/index.ts +17 -0
  405. package/src/mixins/animated.ts +340 -0
  406. package/src/mixins/factory/Factory.ts +24 -0
  407. package/src/mixins/factory/const.ts +363 -0
  408. package/src/mixins/factory/index.ts +7 -0
  409. package/src/mixins/factory/methods.ts +21 -0
  410. package/src/mixins/factory/props.ts +207 -0
  411. package/src/mixins/factory/registry.test.ts +83 -0
  412. package/src/mixins/factory/registry.ts +61 -0
  413. package/src/mixins/factory/schema.ts +153 -0
  414. package/src/mixins/factory/ui-registry.ts +54 -0
  415. package/src/mixins/factory/utils.ts +130 -0
  416. package/src/mixins/focus.ts +124 -0
  417. package/src/mixins/index.ts +5 -0
  418. package/src/mixins/interaction.ts +74 -0
  419. package/src/mixins/signals.ts +49 -0
  420. package/src/plugins/AssetsPlugin.ts +407 -0
  421. package/src/plugins/DataAdapter.ts +259 -0
  422. package/src/plugins/DevToolsPlugin.ts +103 -0
  423. package/src/plugins/FullScreenPlugin.ts +359 -0
  424. package/src/plugins/GSAPPlugin.ts +811 -0
  425. package/src/plugins/KeyboardPlugin.ts +160 -0
  426. package/src/plugins/LayoutPlugin.ts +127 -0
  427. package/src/plugins/LookupPlugin.ts +308 -0
  428. package/src/plugins/Plugin.test.ts +73 -0
  429. package/src/plugins/Plugin.ts +200 -0
  430. package/src/plugins/PopupManagerPlugin.ts +263 -0
  431. package/src/plugins/ResizerPlugin.ts +220 -0
  432. package/src/plugins/SceneManagerPlugin.ts +669 -0
  433. package/src/plugins/StatsPlugin.ts +24 -0
  434. package/src/plugins/TimerPlugin.ts +841 -0
  435. package/src/plugins/WebEventsPlugin.ts +132 -0
  436. package/src/plugins/actions/ActionsPlugin.ts +113 -0
  437. package/src/plugins/actions/constants.ts +45 -0
  438. package/src/plugins/actions/index.ts +4 -0
  439. package/src/plugins/actions/methods.ts +28 -0
  440. package/src/plugins/actions/types.ts +47 -0
  441. package/src/plugins/audio/AudioChannel.test.ts +101 -0
  442. package/src/plugins/audio/AudioChannel.ts +164 -0
  443. package/src/plugins/audio/AudioInstance.ts +228 -0
  444. package/src/plugins/audio/AudioManagerPlugin.ts +903 -0
  445. package/src/plugins/audio/VoiceOverPlugin.ts +354 -0
  446. package/src/plugins/audio/index.ts +3 -0
  447. package/src/plugins/breakpoints/BreakpointPlugin.test.ts +228 -0
  448. package/src/plugins/breakpoints/BreakpointPlugin.ts +293 -0
  449. package/src/plugins/breakpoints/evaluate.test.ts +239 -0
  450. package/src/plugins/breakpoints/evaluate.ts +201 -0
  451. package/src/plugins/breakpoints/index.ts +3 -0
  452. package/src/plugins/breakpoints/methods.ts +22 -0
  453. package/src/plugins/breakpoints/types.ts +86 -0
  454. package/src/plugins/captions/CaptionsPlugin.ts +468 -0
  455. package/src/plugins/captions/CaptionsRenderer.ts +184 -0
  456. package/src/plugins/captions/font/Sans.fnt +116 -0
  457. package/src/plugins/captions/font/Sans.png +0 -0
  458. package/src/plugins/captions/index.ts +2 -0
  459. package/src/plugins/defaults.ts +95 -0
  460. package/src/plugins/focus/FocusManagerPlugin.ts +773 -0
  461. package/src/plugins/focus/FocusOutliner.ts +111 -0
  462. package/src/plugins/focus/index.ts +2 -0
  463. package/src/plugins/i18nPlugin.ts +284 -0
  464. package/src/plugins/index.ts +17 -0
  465. package/src/plugins/input/AbstractControls.ts +15 -0
  466. package/src/plugins/input/Controls.ts +55 -0
  467. package/src/plugins/input/InputPlugin.ts +168 -0
  468. package/src/plugins/input/constants.ts +12 -0
  469. package/src/plugins/input/index.ts +9 -0
  470. package/src/plugins/input/interfaces.ts +37 -0
  471. package/src/plugins/input/keyboard/KeyboardContols.ts +182 -0
  472. package/src/plugins/input/keyboard/index.ts +2 -0
  473. package/src/plugins/input/keyboard/interfaces.ts +21 -0
  474. package/src/plugins/input/methods.ts +9 -0
  475. package/src/plugins/input/touch/TouchControls.ts +237 -0
  476. package/src/plugins/input/touch/constants.ts +34 -0
  477. package/src/plugins/input/touch/index.ts +3 -0
  478. package/src/plugins/input/touch/interfaces.ts +15 -0
  479. package/src/plugins/input/types.ts +41 -0
  480. package/src/plugins/input/utils.ts +10 -0
  481. package/src/plugins/spine/SpinePlugin.ts +14 -0
  482. package/src/plugins/spine/pixi-spine/BatchableSpineSlot.ts +138 -0
  483. package/src/plugins/spine/pixi-spine/Spine.ts +897 -0
  484. package/src/plugins/spine/pixi-spine/SpineDebugRenderer.ts +615 -0
  485. package/src/plugins/spine/pixi-spine/SpinePipe.ts +197 -0
  486. package/src/plugins/spine/pixi-spine/SpineTexture.ts +143 -0
  487. package/src/plugins/spine/pixi-spine/assets/atlasLoader.ts +156 -0
  488. package/src/plugins/spine/pixi-spine/assets/skeletonLoader.ts +80 -0
  489. package/src/plugins/spine/pixi-spine/darktint/DarkTintBatchGeometry.ts +92 -0
  490. package/src/plugins/spine/pixi-spine/darktint/DarkTintBatcher.ts +186 -0
  491. package/src/plugins/spine/pixi-spine/darktint/DarkTintShader.ts +74 -0
  492. package/src/plugins/spine/pixi-spine/darktint/darkTintBit.ts +77 -0
  493. package/src/plugins/spine/pixi-spine/index.ts +43 -0
  494. package/src/plugins/spine/pixi-spine/require-shim.ts +43 -0
  495. package/src/signals/Signal.test.ts +54 -0
  496. package/src/signals/Signal.ts +68 -0
  497. package/src/signals/index.ts +10 -0
  498. package/src/store/Store.test.ts +146 -0
  499. package/src/store/Store.ts +192 -0
  500. package/src/store/index.ts +1 -0
  501. package/src/types/framework.d.ts +47 -0
  502. package/src/types/gsap.d.ts +26 -0
  503. package/src/ui/Button.ts +454 -0
  504. package/src/ui/FlexContainer.ts +526 -0
  505. package/src/ui/Input.ts +1274 -0
  506. package/src/ui/Joystick.ts +288 -0
  507. package/src/ui/Popup.ts +242 -0
  508. package/src/ui/Toast.ts +399 -0
  509. package/src/ui/Toaster.ts +409 -0
  510. package/src/ui/UICanvas.ts +812 -0
  511. package/src/ui/index.ts +8 -0
  512. package/src/utils/array.ts +24 -0
  513. package/src/utils/bind.ts +79 -0
  514. package/src/utils/canvas.ts +26 -0
  515. package/src/utils/color.ts +126 -0
  516. package/src/utils/console/Logger.ts +86 -0
  517. package/src/utils/console/index.ts +1 -0
  518. package/src/utils/debug.ts +69 -0
  519. package/src/utils/define.ts +120 -0
  520. package/src/utils/env.ts +3 -0
  521. package/src/utils/events.ts +10 -0
  522. package/src/utils/framework.ts +45 -0
  523. package/src/utils/index.ts +27 -0
  524. package/src/utils/map.ts +59 -0
  525. package/src/utils/math.ts +19 -0
  526. package/src/utils/misc.ts +45 -0
  527. package/src/utils/number.ts +3 -0
  528. package/src/utils/object.ts +43 -0
  529. package/src/utils/padding.ts +43 -0
  530. package/src/utils/pixi.ts +116 -0
  531. package/src/utils/platform.ts +33 -0
  532. package/src/utils/point.ts +123 -0
  533. package/src/utils/promise/Queue.ts +125 -0
  534. package/src/utils/promise/functions.ts +16 -0
  535. package/src/utils/promise/index.ts +2 -0
  536. package/src/utils/random.ts +69 -0
  537. package/src/utils/rect.ts +50 -0
  538. package/src/utils/set.ts +32 -0
  539. package/src/utils/string.ts +9 -0
  540. package/src/utils/text.ts +30 -0
  541. package/src/utils/typefilters.ts +29 -0
  542. package/src/utils/types.ts +426 -0
  543. package/src/utils/vite.ts +41 -0
  544. package/src/utils/web.ts +7 -0
  545. package/src/version.ts +3 -0
  546. package/src/webgl-check.ts +12 -0
  547. package/templates/app/default/.eslintrc.json +21 -0
  548. package/templates/app/default/.meta.json +4 -0
  549. package/templates/app/default/.nvmrc +1 -0
  550. package/templates/app/default/.prettierrc.json +7 -0
  551. package/templates/app/default/README.md +8 -0
  552. package/templates/app/default/assets/audio{m}/music/Cheerful Annoyance.ogg +0 -0
  553. package/templates/app/default/assets/audio{m}/music/Drumming Sticks.ogg +0 -0
  554. package/templates/app/default/assets/audio{m}/music/Game Over.ogg +0 -0
  555. package/templates/app/default/assets/audio{m}/music/Mishief Stroll.ogg +0 -0
  556. package/templates/app/default/assets/audio{m}/music/Night at the Beach.ogg +0 -0
  557. package/templates/app/default/assets/audio{m}/sfx/click.ogg +0 -0
  558. package/templates/app/default/assets/audio{m}/sfx/hover.ogg +0 -0
  559. package/templates/app/default/assets/required{m}/caper.png +0 -0
  560. package/templates/app/default/assets/required{m}/fonts{fix}/SpaceGrotesk-Bold{family=Space Grotesk}{wf}.ttf +0 -0
  561. package/templates/app/default/assets/required{m}/fonts{fix}/SpaceGrotesk-Medium{family=Space Grotesk}{wf}.ttf +0 -0
  562. package/templates/app/default/assets/required{m}/fonts{fix}/SpaceGrotesk-Regular{family=Space Grotesk}{wf}.ttf +0 -0
  563. package/templates/app/default/assets/required{m}/fonts{fix}/Syncopate-Bold{family=Syncopate}{wf}.ttf +0 -0
  564. package/templates/app/default/assets/required{m}/ui{tps}/btn/blue.png +0 -0
  565. package/templates/app/default/assets/required{m}/ui{tps}/btn/green.png +0 -0
  566. package/templates/app/default/assets/required{m}/ui{tps}/btn/grey.png +0 -0
  567. package/templates/app/default/assets/required{m}/ui{tps}/btn/orange.png +0 -0
  568. package/templates/app/default/assets/required{m}/ui{tps}/btn/purple.png +0 -0
  569. package/templates/app/default/assets/required{m}/ui{tps}/btn/red.png +0 -0
  570. package/templates/app/default/assets/required{m}/ui{tps}/btn/yellow.png +0 -0
  571. package/templates/app/default/assets/required{m}/ui{tps}/btn_a/down.png +0 -0
  572. package/templates/app/default/assets/required{m}/ui{tps}/btn_a/over.png +0 -0
  573. package/templates/app/default/assets/required{m}/ui{tps}/btn_a/up.png +0 -0
  574. package/templates/app/default/assets/required{m}/ui{tps}/btn_b/down.png +0 -0
  575. package/templates/app/default/assets/required{m}/ui{tps}/btn_b/over.png +0 -0
  576. package/templates/app/default/assets/required{m}/ui{tps}/btn_b/up.png +0 -0
  577. package/templates/app/default/assets/required{m}/ui{tps}/joystick/base.png +0 -0
  578. package/templates/app/default/assets/required{m}/ui{tps}/joystick/handle.png +0 -0
  579. package/templates/app/default/assets/required{m}/wordmark.svg +1 -0
  580. package/templates/app/default/assets/spine{m}/spineboy-pro.png +0 -0
  581. package/templates/app/default/assets/spine{m}/spineboy-pro.skel +0 -0
  582. package/templates/app/default/assets/spine{m}/spineboy-pro{fix}.atlas +94 -0
  583. package/templates/app/default/caper.config.ts +60 -0
  584. package/templates/app/default/index.html +23 -0
  585. package/templates/app/default/package.template.json +17 -0
  586. package/templates/app/default/public/favicon.ico +0 -0
  587. package/templates/app/default/src/__APPLICATION_NAME__.ts +3 -0
  588. package/templates/app/default/src/main.ts +9 -0
  589. package/templates/app/default/src/scenes/Base.ts +39 -0
  590. package/templates/app/default/src/scenes/Game.ts +34 -0
  591. package/templates/app/default/src/scenes/Splash.ts +70 -0
  592. package/templates/app/default/src/scenes/Start.ts +90 -0
  593. package/templates/app/default/src/utils/Constants.ts +3 -0
  594. package/templates/app/default/tsconfig.json +1 -0
  595. package/templates/plugin/package.template.json +33 -0
  596. package/templates/plugin/src/Plugin.template.ts +24 -0
  597. package/templates/plugin/src/index.template.ts +3 -0
  598. package/templates/plugin/tsconfig.template.json +43 -0
  599. package/templates/plugin/vite-env.template.d.ts +16 -0
  600. package/templates/plugin/vite.config.template.ts +19 -0
@@ -0,0 +1,566 @@
1
+ import { AssetsManifest, Application as PIXIPApplication, Container as PIXIContainer, Point } from 'pixi.js';
2
+ import { ActionSignal, IAssetsPlugin, IAudioManagerPlugin, IBreakpointPlugin, IControls, IFocusManagerPlugin, Ii18nPlugin, IInputPlugin, IKeyboardPlugin, IPlugin, IPopupManagerPlugin, IResizerPlugin, ISceneManagerPlugin, IWebEventsPlugin } from '../../plugins';
3
+ import { IGSAPPlugin } from '../../plugins/GSAPPlugin';
4
+ import { Signal } from '../../signals';
5
+ import { IDataAdapter } from '../../plugins/DataAdapter';
6
+ import { IStore } from '../../store';
7
+ import { AppTypeOverrides, Eases, Size } from '../../utils';
8
+ import { AppConfig, PauseConfig } from '../types';
9
+ import { ICoreFunctions } from './ICoreFunctions';
10
+ import { ICoreSignals } from './ICoreSignals';
11
+ /**
12
+ * Represents the core application interface, extending PixiJS Application.
13
+ * It manages plugins, game state, actions, and provides access to various application subsystems.
14
+ *
15
+ * @template D - The type of the data schema used by the application's store.
16
+ * @template C - The type of the action context used for dispatching actions.
17
+ * @template A - The type of actions that can be dispatched in the application.
18
+ *
19
+ * @example
20
+ * ```typescript
21
+ * import { Application } from '@caperjs/framework';
22
+ *
23
+ * // Define your data schema, action context, and actions
24
+ * interface MyDataSchema {
25
+ * score: number;
26
+ * playerName: string;
27
+ * }
28
+ *
29
+ * interface MyActionContext {
30
+ * userId: string;
31
+ * }
32
+ *
33
+ * type MyActions = 'startGame' | 'endGame' | 'updateScore';
34
+ *
35
+ * // Create a new application instance
36
+ * const app = new Application<MyDataSchema, MyActionContext, MyActions>();
37
+ *
38
+ * async function main() {
39
+ * await app.initialize({
40
+ * // Application configuration
41
+ * appName: 'My Awesome Game',
42
+ * // ... other config options
43
+ * }, document.getElementById('game-container'));
44
+ *
45
+ * // Access application properties and methods
46
+ * console.log(app.appName); // 'My Awesome Game'
47
+ * app.scenes.load('mainMenu');
48
+ * app.action('startGame');
49
+ * }
50
+ *
51
+ * main();
52
+ * ```
53
+ */
54
+ export interface IApplication extends PIXIPApplication {
55
+ /**
56
+ * The application configuration object.
57
+ * Contains settings for various aspects of the application, including plugins, assets, and scenes.
58
+ * @readonly
59
+ * @example
60
+ * ```typescript
61
+ * console.log(app.config.appName); // 'My Awesome Game'
62
+ * if (app.config.showStats) {
63
+ * // Show performance stats
64
+ * }
65
+ * ```
66
+ */
67
+ readonly config: Partial<AppConfig>;
68
+ /**
69
+ * A top-level container for debug overlays, rendered above all other stage children.
70
+ * Lazily created on first access. Non-interactive and excluded from layout.
71
+ *
72
+ * Plugins and modules that draw screen-space debug (e.g. viewport bounds)
73
+ * should add their Graphics here rather than directly to the stage.
74
+ * Components drawing in local coordinates (FlexContainer, UICanvas) add
75
+ * debug Graphics to themselves instead — use the shared `createDebugGraphics()`
76
+ * and `DebugColors` utilities for consistent styling.
77
+ */
78
+ readonly debugContainer: PIXIContainer;
79
+ /**
80
+ * Environment variables available to the application.
81
+ * Typically sourced from `import.meta.env`.
82
+ * @readonly
83
+ * @example
84
+ * ```typescript
85
+ * const apiKey = app.env.API_KEY;
86
+ * if (app.env.NODE_ENV === 'development') {
87
+ * // Enable debug features
88
+ * }
89
+ * ```
90
+ */
91
+ readonly env: Record<string, string>;
92
+ /**
93
+ * The current size (width and height) of the application's view/canvas.
94
+ * Managed by the ResizerPlugin.
95
+ * @readonly
96
+ * @example
97
+ * ```typescript
98
+ * console.log(app.size.width, app.size.height);
99
+ * const aspectRatio = app.size.width / app.size.height;
100
+ * ```
101
+ */
102
+ readonly size: Size;
103
+ /**
104
+ * The center point (x, y) of the application's view/canvas.
105
+ * Automatically updated when the application resizes.
106
+ * @readonly
107
+ * @example
108
+ * ```typescript
109
+ * // Center a sprite on the screen
110
+ * mySprite.position.copyFrom(app.center);
111
+ * ```
112
+ */
113
+ readonly center: Point;
114
+ /**
115
+ * The asset manifest used by the application.
116
+ * Can be a URL to a manifest file, or an AssetsManifest object.
117
+ * @readonly
118
+ * @example
119
+ * ```typescript
120
+ * console.log(app.manifest); // Could be './assets.json' or an object
121
+ * ```
122
+ */
123
+ readonly manifest: AssetsManifest | string | undefined;
124
+ /**
125
+ * The AssetsPlugin instance for managing game assets.
126
+ * Provides methods for loading and accessing textures, sounds, fonts, etc.
127
+ * @readonly
128
+ * @example
129
+ * ```typescript
130
+ * const playerTexture = await app.assets.load('playerSprite');
131
+ * const backgroundMusic = app.assets.getSound('bgm');
132
+ * ```
133
+ */
134
+ readonly assets: IAssetsPlugin;
135
+ /**
136
+ * The SceneManagerPlugin instance for managing game scenes.
137
+ * Handles scene transitions, loading, and lifecycle.
138
+ * @readonly
139
+ * @example
140
+ * ```typescript
141
+ * app.scenes.load('level1');
142
+ * app.scenes.currentScene.pause();
143
+ * ```
144
+ */
145
+ readonly scenes: ISceneManagerPlugin;
146
+ /**
147
+ * The WebEventsPlugin instance for managing browser-related events.
148
+ * Handles events like window resize, visibility change, etc.
149
+ * @readonly
150
+ * @example
151
+ * ```typescript
152
+ * app.webEvents.onResize.connect((newSize) => {
153
+ * console.log('Resized to:', newSize.width, newSize.height);
154
+ * });
155
+ * ```
156
+ */
157
+ readonly webEvents: IWebEventsPlugin;
158
+ /**
159
+ * The KeyboardPlugin instance for managing keyboard input.
160
+ * @readonly
161
+ * @example
162
+ * ```typescript
163
+ * if (app.keyboard.isKeyDown('Space')) {
164
+ * // Player jumps
165
+ * }
166
+ * app.keyboard.onKeyDown.connect((keyEvent) => {
167
+ * if(keyEvent.key === 'Escape') app.scenes.load('pauseMenu');
168
+ * });
169
+ * ```
170
+ */
171
+ readonly keyboard: IKeyboardPlugin;
172
+ /**
173
+ * The FocusManagerPlugin instance for managing UI focus.
174
+ * @readonly
175
+ */
176
+ readonly focus: IFocusManagerPlugin;
177
+ /**
178
+ * The PopupManagerPlugin instance for managing pop-up dialogs or views.
179
+ * @readonly
180
+ * @example
181
+ * ```typescript
182
+ * app.popups.show('settingsPopup', { volume: 0.5 });
183
+ * ```
184
+ */
185
+ readonly popups: IPopupManagerPlugin;
186
+ /**
187
+ * The AudioManagerPlugin instance for managing game audio.
188
+ * Handles sound effects and background music.
189
+ * @readonly
190
+ * @example
191
+ * ```typescript
192
+ * app.audio.playSound('explosion');
193
+ * app.audio.setMusicVolume(0.7);
194
+ * ```
195
+ */
196
+ readonly audio: IAudioManagerPlugin;
197
+ /**
198
+ * The i18nPlugin instance for internationalization and localization.
199
+ * @readonly
200
+ * @example
201
+ * ```typescript
202
+ * const localizedGreeting = app.i18n.translate('GREETING_KEY');
203
+ * app.i18n.setLocale('fr-FR');
204
+ * ```
205
+ */
206
+ readonly i18n: Ii18nPlugin;
207
+ /**
208
+ * The ResizerPlugin instance for managing application resizing.
209
+ * @readonly
210
+ */
211
+ readonly resizer: IResizerPlugin;
212
+ /**
213
+ * The BreakpointPlugin instance for named responsive state derived from the
214
+ * renderer size.
215
+ * @readonly
216
+ */
217
+ readonly breakpoints: IBreakpointPlugin;
218
+ /**
219
+ * The InputPlugin instance for managing various input sources.
220
+ * This often consolidates controls from keyboard, mouse, gamepad, etc.
221
+ * @readonly
222
+ */
223
+ readonly input: IInputPlugin;
224
+ /**
225
+ * The Controls instance, typically accessed via the InputPlugin.
226
+ * Provides a higher-level abstraction for game controls and actions.
227
+ * @readonly
228
+ * @example
229
+ * ```typescript
230
+ * if (app.controls.isActionActive('jump')) {
231
+ * // Player jumps
232
+ * }
233
+ * ```
234
+ */
235
+ readonly controls: IControls;
236
+ /**
237
+ * The Store instance for managing application state.
238
+ * Uses a data schema and adapters for persistence.
239
+ * @readonly
240
+ * @example
241
+ * ```typescript
242
+ * const currentScore = app.store.getState().score;
243
+ * app.store.updateState({ score: currentScore + 10 });
244
+ * ```
245
+ */
246
+ readonly store: IStore;
247
+ /**
248
+ * The primary DataAdapter instance, usually for managing game data.
249
+ * @readonly
250
+ * @example
251
+ * ```typescript
252
+ * const playerData = await app.data.get('playerStats');
253
+ * await app.data.set('playerStats', { health: 100, mana: 50 });
254
+ * ```
255
+ */
256
+ readonly data: IDataAdapter;
257
+ /**
258
+ * The current context for dispatching actions.
259
+ * Allows passing additional contextual information when actions are triggered.
260
+ * @example
261
+ * ```typescript
262
+ * app.actionContext = { userId: 'user123', source: 'uiButton' };
263
+ * app.action('submitScore', { score: 1000 }); // Context will be included
264
+ * ```
265
+ */
266
+ actionContext: AppTypeOverrides['Contexts'];
267
+ /**
268
+ * A signal that emits when the application is paused.
269
+ * @example
270
+ * ```typescript
271
+ * app.onPause.connect(() => {
272
+ * console.log('Application paused');
273
+ * // Stop game-specific timers or animations not handled by app.pause()
274
+ * });
275
+ * ```
276
+ */
277
+ onPause: Signal<() => void>;
278
+ /**
279
+ * A signal that emits when the application is resumed from a paused state.
280
+ * @example
281
+ * ```typescript
282
+ * app.onResume.connect(() => {
283
+ * console.log('Application resumed');
284
+ * // Restart game-specific timers or animations
285
+ * });
286
+ * ```
287
+ */
288
+ onResume: Signal<() => void>;
289
+ /**
290
+ * Pauses the application.
291
+ * This can include pausing the ticker, animations, audio, and timers based on the `PauseConfig`.
292
+ * @param config - Optional configuration for what aspects of the application to pause.
293
+ * @example
294
+ * ```typescript
295
+ * // Pause everything
296
+ * app.pause();
297
+ *
298
+ * // Only pause audio and timers
299
+ * app.pause({ pauseAudio: true, pauseTimers: true });
300
+ * ```
301
+ */
302
+ pause(config?: PauseConfig): void;
303
+ /**
304
+ * Resumes the application from a paused state.
305
+ * Restores the state of ticker, animations, audio, and timers that were paused.
306
+ * @example
307
+ * ```typescript
308
+ * app.resume();
309
+ * ```
310
+ */
311
+ resume(): void;
312
+ /**
313
+ * Indicates whether the application is currently paused.
314
+ * @readonly
315
+ * @example
316
+ * ```typescript
317
+ * if (app.paused) {
318
+ * // Show pause menu
319
+ * }
320
+ * ```
321
+ */
322
+ readonly paused: boolean;
323
+ /**
324
+ * The name of the application.
325
+ * Defined in the application configuration.
326
+ * @readonly
327
+ * @example
328
+ * ```typescript
329
+ * document.title = app.appName;
330
+ * ```
331
+ */
332
+ readonly appName: string;
333
+ /**
334
+ * The version of the application.
335
+ * Typically injected at build time (e.g., via `__CAPER_APP_VERSION`).
336
+ * @readonly
337
+ * @example
338
+ * ```typescript
339
+ * console.log(`Running ${app.appName} v${app.appVersion}`);
340
+ * ```
341
+ */
342
+ readonly appVersion: string | number;
343
+ /**
344
+ * Access to core application signals.
345
+ * These are global signals for important application events.
346
+ * @readonly
347
+ * @example
348
+ * ```typescript
349
+ * app.signal.onLoadRequiredComplete.connectOnce(() => {
350
+ * console.log('Core assets loaded!');
351
+ * });
352
+ * ```
353
+ */
354
+ signal: ICoreSignals;
355
+ /**
356
+ * Access to core application functions.
357
+ * Provides a registry for globally accessible utility functions.
358
+ * @readonly
359
+ * @example
360
+ * ```typescript
361
+ * const utility = app.func.get('myUtility');
362
+ * if (utility) utility.doSomething();
363
+ * ```
364
+ */
365
+ func: ICoreFunctions;
366
+ /**
367
+ * Alias for `func`. Access to core application functions.
368
+ * @readonly
369
+ */
370
+ exec: ICoreFunctions;
371
+ /**
372
+ * Retrieves an ActionSignal for a specific action type.
373
+ * This allows subscribing to specific actions dispatched within the application.
374
+ * @param action - The action type to get the signal for.
375
+ * @returns An ActionSignal that can be connected to.
376
+ * @template TActionData - The type of data expected with the action.
377
+ * @example
378
+ * ```typescript
379
+ * // Assuming 'updateScore' is an action defined in 'MyActions'
380
+ * // And it carries a payload like { points: number }
381
+ * interface ScoreUpdateData { points: number; }
382
+ *
383
+ * app.actions<ScoreUpdateData>('updateScore').connect((data) => {
384
+ * console.log(`Score updated by ${data.points} points.`);
385
+ * // Update game state based on data.points
386
+ * });
387
+ * ```
388
+ */
389
+ actions<TActionData = any>(action: AppTypeOverrides['Actions']): ActionSignal<TActionData>;
390
+ /**
391
+ * Dispatches an action with optional data.
392
+ * This is an alias for `sendAction`.
393
+ * @param action - The action type to dispatch.
394
+ * @param data - Optional data to accompany the action.
395
+ * @template TActionData - The type of data being sent.
396
+ * @example
397
+ * ```typescript
398
+ * // Dispatch 'startGame' action
399
+ * app.action('startGame');
400
+ *
401
+ * // Dispatch 'updateScore' action with data
402
+ * app.action('updateScore', { points: 100 });
403
+ * ```
404
+ */
405
+ action<TActionData = any>(action: AppTypeOverrides['Actions'], data?: TActionData): void;
406
+ /**
407
+ * Dispatches an action with optional data.
408
+ * @param action - The action type to dispatch.
409
+ * @param data - Optional data to accompany the action.
410
+ * @template TActionData - The type of data being sent.
411
+ * @example
412
+ * ```typescript
413
+ * // Dispatch 'playerAction' with specific details
414
+ * app.sendAction('playerAction', { type: 'shoot', targetId: 'enemy123' });
415
+ * ```
416
+ */
417
+ sendAction<TActionData = any>(action: AppTypeOverrides['Actions'], data?: TActionData): void;
418
+ /**
419
+ * Checks if a specific action is currently considered active, usually based on input controls.
420
+ * @param action - The action type to check.
421
+ * @returns True if the action is active, false otherwise.
422
+ * @example
423
+ * ```typescript
424
+ * if (app.isActionActive('moveForward')) {
425
+ * player.move(1);
426
+ * }
427
+ * ```
428
+ */
429
+ isActionActive(action: AppTypeOverrides['Actions']): boolean;
430
+ /**
431
+ * The GSAPPlugin instance for managing animations.
432
+ * Provides access to GSAP functionality and animation contexts.
433
+ * @readonly
434
+ * @returns The GSAP plugin instance.
435
+ * @example
436
+ * ```typescript
437
+ * const timeline = app.animation.createTimeline();
438
+ * timeline.to(mySprite, { alpha: 0, duration: 1 });
439
+ * ```
440
+ */
441
+ readonly animation: IGSAPPlugin;
442
+ /**
443
+ * The global GSAP instance.
444
+ * Direct access to the `gsap` object for creating tweens and timelines.
445
+ * @readonly
446
+ * @returns The GSAP instance.
447
+ * @example
448
+ * ```typescript
449
+ * app.anim.to(mySprite.scale, { x: 1.5, y: 1.5, duration: 0.5, ease: 'power2.inOut' });
450
+ * ```
451
+ */
452
+ readonly anim: typeof gsap;
453
+ /**
454
+ * Adds one or more GSAP tweens or timelines to a specified animation context.
455
+ * This refers to the GSAPPlugin's custom animation context (a Set of tweens/timelines),
456
+ * NOT a `gsap.Context` instance. If no contextId is provided, animations are added
457
+ * to the plugin's global collection, allowing them to be managed (e.g., paused, resumed, killed) collectively.
458
+ * @param animation - A single GSAP tween/timeline or an array of them.
459
+ * @param contextId - Optional ID of the animation context. Defaults to the global context.
460
+ * @returns The animation(s) that were added.
461
+ * @example
462
+ * ```typescript
463
+ * const myTween = app.anim.to(myObject, { x: 100, duration: 1 });
464
+ * app.addAnimation(myTween, 'mySceneAnimationCollection');
465
+ *
466
+ * // Later, kill all animations in this context
467
+ * app.animation.killAll('mySceneAnimationCollection'); // Assuming killAll is the method to clear the custom context
468
+ * ```
469
+ */
470
+ addAnimation(animation: gsap.core.Tween | gsap.core.Timeline | (gsap.core.Tween | gsap.core.Timeline)[], contextId?: string): gsap.core.Tween | gsap.core.Timeline | (gsap.core.Tween | gsap.core.Timeline)[];
471
+ /**
472
+ * Returns the registered GSAP eases or their names.
473
+ * Useful for dynamically applying easing functions or listing available eases.
474
+ * @param namesOnly - If true, returns only the ease names as an array of strings. Otherwise, returns an object mapping names to Ease functions.
475
+ * @returns An object of registered eases (name: Ease function) or an array of ease names.
476
+ * @example
477
+ * ```typescript
478
+ * const availableEaseNames = app.eases(true); // ['power1.inOut', 'back.out', ...]
479
+ * console.log(availableEaseNames);
480
+ *
481
+ * const easeFunctions = app.eases();
482
+ * if (easeFunctions['power2.in']) {
483
+ * app.anim.to(mySprite, { y: 200, ease: easeFunctions['power2.in'] });
484
+ * }
485
+ * ```
486
+ */
487
+ eases(namesOnly?: boolean): Eases | string[];
488
+ /**
489
+ * Initializes the application with the given configuration and attaches it to an HTML element.
490
+ * This is the main entry point for starting the application.
491
+ * @param config - The application configuration object.
492
+ * @param el - The HTML element to append the application's canvas to. If not provided, an error will be thrown.
493
+ * @returns A promise that resolves with the initialized application instance.
494
+ * @example
495
+ * ```typescript
496
+ * const gameContainer = document.getElementById('game');
497
+ * if (gameContainer) {
498
+ * app.initialize({ appName: 'My Game' }, gameContainer)
499
+ * .then(initializedApp => {
500
+ * console.log(`${initializedApp.appName} initialized successfully!`);
501
+ * initializedApp.scenes.load('mainMenu');
502
+ * })
503
+ * .catch(error => console.error('Initialization failed:', error));
504
+ * } else {
505
+ * console.error('Game container element not found!');
506
+ * }
507
+ * ```
508
+ */
509
+ initialize(config: Partial<AppConfig>, el?: HTMLElement): Promise<AppTypeOverrides['App']>;
510
+ /**
511
+ * Runs any post-initialization setup tasks.
512
+ * This is called after the main `initialize` method has completed and core plugins are ready.
513
+ * It's a good place for plugins to finalize their setup or for the application to perform tasks
514
+ * that depend on a fully initialized environment.
515
+ * @returns A promise that resolves when post-initialization tasks are complete.
516
+ * User-overridable hook, run last by {@link _postInitialize} after all framework
517
+ * wiring. Safe to override WITHOUT calling `super` — framework post-init does not
518
+ * live here.
519
+ * @example
520
+ * ```typescript
521
+ * // Inside a custom Application class or after app.initialize resolves
522
+ * async function startMyGame() {
523
+ * await app.initialize(config, el);
524
+ * await app._postInitialize(); // Runs framework post-init + the user hook
525
+ * app.scenes.load('intro');
526
+ * }
527
+ * ```
528
+ */
529
+ postInitialize(): Promise<void>;
530
+ /**
531
+ * Framework post-initialization: runs every plugin's `postInitialize` and core
532
+ * wiring, then invokes the user-overridable {@link postInitialize} hook. Called by
533
+ * the runtime (`create()`); apps normally don't call this directly.
534
+ */
535
+ _postInitialize(): Promise<void>;
536
+ /**
537
+ * Retrieves a registered plugin by its name.
538
+ * @param name - The name/ID of the plugin to retrieve.
539
+ * @param debug - If true and the plugin is not found, an error will be logged. Defaults to false.
540
+ * @returns The plugin instance if found, otherwise undefined (or T if type assertion is used).
541
+ * @template T - The expected type of the plugin.
542
+ * @example
543
+ * ```typescript
544
+ * const myCustomPlugin = app.getPlugin<MyCustomPluginType>('myCustomPlugin');
545
+ * if (myCustomPlugin) {
546
+ * myCustomPlugin.doSomethingCool();
547
+ * }
548
+ *
549
+ * const nonExistentPlugin = app.getPlugin('nonExistent', true); // Will log an error
550
+ * ```
551
+ */
552
+ getPlugin<T extends IPlugin>(name: string, debug?: boolean): T;
553
+ /**
554
+ * Sets the main HTML container element for the application.
555
+ * This is typically the element where the PixiJS canvas is appended.
556
+ * @param container - The HTMLElement to be used as the application container.
557
+ * @example
558
+ * ```typescript
559
+ * const newGameContainer = document.createElement('div');
560
+ * document.body.appendChild(newGameContainer);
561
+ * app.setContainer(newGameContainer); // If app needs to change its parent container
562
+ * ```
563
+ */
564
+ setContainer(container: HTMLElement): void;
565
+ }
566
+ //# sourceMappingURL=IApplication.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IApplication.d.ts","sourceRoot":"","sources":["../../../src/core/interfaces/IApplication.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,65 @@
1
+ import { ActionMap, BreakpointsConfig, FocusManagerPluginOptions, i18nOptions, InputManagerOptions, LoadSceneMethod, ResizerPluginOptions, SplashOptions } from '../../plugins';
2
+ import { AppTypeOverrides, AssetLoadingOptions, LoggerMode, SceneImportList, SceneImportListItem } from '../../utils';
3
+ import { ApplicationOptions, TextDropShadow } from 'pixi.js';
4
+ import { IScene, ISceneTransition, SceneTransition } from '../../display';
5
+ import { TextStyle } from '../../mixins';
6
+ import { CaptionsOptions } from '../../plugins/captions';
7
+ import { GSAPPluginOptions } from '../../plugins/GSAPPlugin';
8
+ import { IDataAdapterOptions } from '../../plugins/DataAdapter';
9
+ import { PluginConfig } from '../config';
10
+ import { IApplication } from './IApplication';
11
+ export interface IApplicationOptions extends ApplicationOptions {
12
+ id: string;
13
+ application?: new (...args: any[]) => IApplication;
14
+ resizeToContainer: boolean;
15
+ container: HTMLElement;
16
+ logger: LoggerMode;
17
+ useStore: boolean;
18
+ useSpine: boolean;
19
+ useLayout: boolean;
20
+ useVoiceover: boolean;
21
+ /**
22
+ * Add `vite-plugin-wasm` to the Vite config. Only needed if your project
23
+ * imports a `.wasm` module directly (`import init from './foo.wasm'`) —
24
+ * runtime-fetched wasm (Rive's `locateFile`, pixi's KTX/basis transcoders)
25
+ * and Vite's native `?init` / `?url` imports work without it.
26
+ *
27
+ * Build-time only: read out of `caper.config.ts` by an AST parse before the
28
+ * Vite config is built, so it has no effect on the running Application and
29
+ * changing it requires a dev-server restart.
30
+ *
31
+ * @default false
32
+ */
33
+ useWasm?: boolean;
34
+ /**
35
+ * Enable the `window.Caper.automation[id]` facade for this app regardless of
36
+ * environment. Automation is also auto-enabled in dev or when
37
+ * `VITE_CAPER_AUTOMATION === 'true'`.
38
+ */
39
+ automation?: boolean;
40
+ defaultTextStyle: Partial<TextStyle>;
41
+ defaultDropShadow: TextDropShadow;
42
+ gsap: Partial<GSAPPluginOptions>;
43
+ data: Partial<IDataAdapterOptions>;
44
+ plugins: PluginConfig[];
45
+ assets: AssetLoadingOptions;
46
+ sceneImportList: SceneImportListItem<IScene>[];
47
+ scenes: SceneImportList<IScene>;
48
+ sceneGroupOrder: string[];
49
+ scenesLocation: string;
50
+ actions: Partial<ActionMap>;
51
+ input: Partial<InputManagerOptions>;
52
+ focus: Partial<FocusManagerPluginOptions>;
53
+ splash: Partial<SplashOptions>;
54
+ defaultScene: AppTypeOverrides['Scenes'];
55
+ sceneTransition: ISceneTransition | typeof SceneTransition;
56
+ defaultSceneLoadMethod: LoadSceneMethod;
57
+ showSceneDebugMenu: boolean;
58
+ useHash: boolean;
59
+ i18n: Partial<i18nOptions>;
60
+ resizer: Partial<ResizerPluginOptions>;
61
+ breakpoints: Partial<BreakpointsConfig>;
62
+ captions: Partial<CaptionsOptions>;
63
+ showStats: boolean;
64
+ }
65
+ //# sourceMappingURL=IApplicationOptions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IApplicationOptions.d.ts","sourceRoot":"","sources":["../../../src/core/interfaces/IApplicationOptions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,EACT,iBAAiB,EACjB,yBAAyB,EACzB,WAAW,EACX,mBAAmB,EACnB,eAAe,EACf,oBAAoB,EACpB,aAAa,EACd,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EACV,gBAAgB,EAChB,mBAAmB,EACnB,UAAU,EACV,eAAe,EACf,mBAAmB,EACpB,MAAM,aAAa,CAAC;AAErB,OAAO,KAAK,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAClE,OAAO,KAAK,EAAE,MAAM,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAC/E,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,MAAM,WAAW,mBAAoB,SAAQ,kBAAkB;IAC7D,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,CAAC,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,YAAY,CAAC;IACnD,iBAAiB,EAAE,OAAO,CAAC;IAC3B,SAAS,EAAE,WAAW,CAAC;IACvB,MAAM,EAAE,UAAU,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE,OAAO,CAAC;IACtB;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,gBAAgB,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IACrC,iBAAiB,EAAE,cAAc,CAAC;IAClC,IAAI,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAC;IACjC,IAAI,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACnC,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,MAAM,EAAE,mBAAmB,CAAC;IAC5B,eAAe,EAAE,mBAAmB,CAAC,MAAM,CAAC,EAAE,CAAC;IAC/C,MAAM,EAAE,eAAe,CAAC,MAAM,CAAC,CAAC;IAChC,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IAC5B,KAAK,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACpC,KAAK,EAAE,OAAO,CAAC,yBAAyB,CAAC,CAAC;IAC1C,MAAM,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;IAC/B,YAAY,EAAE,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IACzC,eAAe,EAAE,gBAAgB,GAAG,OAAO,eAAe,CAAC;IAC3D,sBAAsB,EAAE,eAAe,CAAC;IACxC,kBAAkB,EAAE,OAAO,CAAC;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;IAC3B,OAAO,EAAE,OAAO,CAAC,oBAAoB,CAAC,CAAC;IACvC,WAAW,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAC;IACxC,QAAQ,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC;IACnC,SAAS,EAAE,OAAO,CAAC;CACpB"}