@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,131 @@
1
+ import { Graphics, Text } from 'pixi.js';
2
+ import { Container } from '../display/Container';
3
+ import { TextStyle } from '../mixins';
4
+ import { Signal } from '../signals';
5
+ import { Button } from './Button';
6
+ import { Toaster } from './Toaster';
7
+ /**
8
+ * Types of toasts that can be displayed, each with its own color indicator.
9
+ */
10
+ export type ToastType = 'info' | 'success' | 'warning' | 'error';
11
+ /**
12
+ * Position options for the close button within a toast.
13
+ */
14
+ export type CloseButtonPosition = 'top right' | 'top left';
15
+ /**
16
+ * Configuration interface for creating a Toast notification.
17
+ *
18
+ * @example
19
+ * ```typescript
20
+ * // Basic toast with default settings
21
+ * const config: ToastConfig = {
22
+ * message: "Operation successful!",
23
+ * type: "success"
24
+ * };
25
+ *
26
+ * // Custom styled toast with shadow and close button
27
+ * const config: ToastConfig = {
28
+ * message: "Custom notification",
29
+ * backgroundColor: 0x9b59b6,
30
+ * backgroundAlpha: 1,
31
+ * cornerRadius: 8,
32
+ * shadow: {
33
+ * color: 0x000000,
34
+ * alpha: 0.2,
35
+ * offset: { x: 4, y: 4 }
36
+ * },
37
+ * closeButton: {
38
+ * show: true,
39
+ * position: 'top right'
40
+ * }
41
+ * };
42
+ * ```
43
+ */
44
+ export interface ToastConfig {
45
+ /** Optional custom Toast class to use instead of the default */
46
+ class?: typeof Toast;
47
+ /** The message to display in the toast */
48
+ message: string;
49
+ /** Type of toast, determines the color indicator */
50
+ type?: ToastType;
51
+ /** Duration in milliseconds before auto-closing (if autoClose is true) */
52
+ duration?: number;
53
+ /** Custom text style options */
54
+ style?: TextStyle;
55
+ /** Width of the toast in pixels */
56
+ width?: number;
57
+ /** Height of the toast in pixels */
58
+ height?: number;
59
+ /** Background color in hex format */
60
+ backgroundColor?: number;
61
+ /** Background opacity (0-1) */
62
+ backgroundAlpha?: number;
63
+ /** Corner radius for rounded corners */
64
+ cornerRadius?: number;
65
+ /** Padding around the content */
66
+ padding?: number;
67
+ /** Whether the toast should automatically close after duration */
68
+ autoClose?: boolean;
69
+ /** Custom colors for each toast type's indicator */
70
+ textColors?: Record<ToastType, number>;
71
+ /** Horizontal text alignment */
72
+ textAlign?: 'left' | 'center' | 'right';
73
+ /** Vertical text alignment */
74
+ verticalAlign?: 'top' | 'middle' | 'bottom';
75
+ /** Width of the colored type indicator bar */
76
+ colorBarWidth?: number;
77
+ /** Shadow configuration for depth effect */
78
+ shadow?: {
79
+ /** Shadow color in hex format */
80
+ color?: number;
81
+ /** Shadow opacity (0-1) */
82
+ alpha?: number;
83
+ /** Shadow offset from the toast */
84
+ offset?: {
85
+ x: number;
86
+ y: number;
87
+ };
88
+ };
89
+ /** Close button configuration */
90
+ closeButton?: {
91
+ /** Whether to show the close button */
92
+ show?: boolean;
93
+ /** Position of the close button */
94
+ position?: CloseButtonPosition;
95
+ /** Custom button class to use */
96
+ class?: typeof Button;
97
+ /** Size of the close button */
98
+ size?: number;
99
+ /** Offset from the edges */
100
+ offset?: number;
101
+ };
102
+ }
103
+ export declare const defaultToastConfig: Partial<ToastConfig>;
104
+ declare const Toast_base: typeof Container & import('..').Constructor<import('..').ISignalContainer>;
105
+ export declare class Toast extends Toast_base {
106
+ readonly onToastClosed: Signal<() => void>;
107
+ protected background: Graphics;
108
+ protected shadow: Graphics;
109
+ protected textDisplay: Text;
110
+ protected closeButton?: Button;
111
+ protected config: ToastConfig;
112
+ protected timeline?: gsap.core.Timeline;
113
+ protected closeTimeout?: any;
114
+ protected isHiding: boolean;
115
+ protected view: Container;
116
+ private _toaster;
117
+ set toaster(value: Toaster);
118
+ get toaster(): Toaster;
119
+ set text(value: string);
120
+ constructor(config?: Partial<ToastConfig>);
121
+ protected initialize(): void;
122
+ protected addCloseButton(): void;
123
+ alignText(): void;
124
+ getShowAnimation(): gsap.core.Timeline;
125
+ getHideAnimation(): gsap.core.Timeline;
126
+ show(): Promise<Toast>;
127
+ hide(): Promise<Toast>;
128
+ destroy(): void;
129
+ }
130
+ export {};
131
+ //# sourceMappingURL=Toast.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Toast.d.ts","sourceRoot":"","sources":["../../src/ui/Toast.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,188 @@
1
+ import { Container } from '../display/Container';
2
+ import { Signal } from '../signals';
3
+ import { Toast, ToastConfig } from './Toast';
4
+ import { UICanvasEdge } from './UICanvas';
5
+ /**
6
+ * Configuration interface for the Toaster component, which manages toast notifications.
7
+ *
8
+ * @example
9
+ * ```typescript
10
+ * // Basic toaster in top-right corner
11
+ * const config: ToasterConfig = {
12
+ * position: 'top right',
13
+ * maxToasts: 3
14
+ * };
15
+ *
16
+ * // Custom toaster with specific spacing and offset
17
+ * const config: ToasterConfig = {
18
+ * position: 'bottom center',
19
+ * maxToasts: 5,
20
+ * spacing: 15,
21
+ * offset: { x: 20, y: 30 },
22
+ * stackDirection: 'up'
23
+ * };
24
+ * ```
25
+ */
26
+ export interface ToasterConfig {
27
+ /** Position of toasts relative to the screen edges */
28
+ position?: UICanvasEdge;
29
+ /** Maximum number of toasts to show at once */
30
+ maxToasts?: number;
31
+ /** Vertical spacing between toasts */
32
+ spacing?: number;
33
+ /** Distance from screen edges, can be a number for equal x/y or an object for different values */
34
+ offset?: {
35
+ x: number;
36
+ y: number;
37
+ } | number;
38
+ /** Direction in which new toasts should stack */
39
+ stackDirection?: 'up' | 'down';
40
+ animationSpeed: number;
41
+ }
42
+ declare const Toaster_base: typeof Container & import('..').Constructor<import('..').ISignalContainer>;
43
+ /**
44
+ * Toaster component that manages the display and positioning of toast notifications.
45
+ *
46
+ * @example
47
+ * ```typescript
48
+ * // Create a toaster
49
+ * const toaster = new Toaster({
50
+ * position: 'top right',
51
+ * maxToasts: 3
52
+ * });
53
+ *
54
+ * // Show a basic toast
55
+ * toaster.show({
56
+ * message: "Operation successful!",
57
+ * type: "success"
58
+ * });
59
+ *
60
+ * // Show a custom toast
61
+ * toaster.show({
62
+ * message: "Custom notification",
63
+ * backgroundColor: 0x9b59b6,
64
+ * shadow: {
65
+ * color: 0x000000,
66
+ * alpha: 0.2,
67
+ * offset: { x: 4, y: 4 }
68
+ * }
69
+ * });
70
+ *
71
+ * // Hide all toasts
72
+ * toaster.hideAll();
73
+ * ```
74
+ */
75
+ export declare class Toaster extends Toaster_base {
76
+ /** Emitted when a new toast is added */
77
+ readonly onToastAdded: Signal<(toast: Toast) => void>;
78
+ /** Emitted when a toast is removed */
79
+ readonly onToastRemoved: Signal<(toast: Toast) => void>;
80
+ /** Emitted when all toasts are removed */
81
+ readonly onAllToastsRemoved: Signal<() => void>;
82
+ config: ToasterConfig;
83
+ defaultToastConfig: Partial<ToastConfig>;
84
+ private toasts;
85
+ private container;
86
+ /**
87
+ * Get the current number of visible toasts
88
+ */
89
+ get size(): number;
90
+ get toastPosition(): UICanvasEdge;
91
+ get stackDirection(): 'up' | 'down';
92
+ get spacing(): number;
93
+ get offset(): {
94
+ x: number;
95
+ y: number;
96
+ } | number;
97
+ get maxToasts(): number;
98
+ get toastConfig(): Partial<ToastConfig>;
99
+ /**
100
+ * Create a new Toaster instance to manage toast notifications.
101
+ *
102
+ * @param config - Configuration for the Toaster's position, spacing, and behavior
103
+ * @param defaultToastConfig - Default configuration applied to all toasts shown by this Toaster
104
+ *
105
+ * @example
106
+ * ```typescript
107
+ * // Basic toaster with default settings
108
+ * const toaster = new Toaster();
109
+ *
110
+ * // Toaster with custom position and behavior
111
+ * const toaster = new Toaster({
112
+ * position: 'bottom center',
113
+ * maxToasts: 3,
114
+ * spacing: 15,
115
+ * offset: { x: 20, y: 30 },
116
+ * stackDirection: 'up'
117
+ * });
118
+ *
119
+ * // Toaster with custom defaults for all toasts
120
+ * const toaster = new Toaster(
121
+ * {
122
+ * position: 'top right',
123
+ * maxToasts: 5
124
+ * },
125
+ * {
126
+ * backgroundColor: 0x000000,
127
+ * backgroundAlpha: 0.8,
128
+ * cornerRadius: 8,
129
+ * shadow: {
130
+ * color: 0x000000,
131
+ * alpha: 0.2,
132
+ * offset: { x: 4, y: 4 }
133
+ * },
134
+ * closeButton: {
135
+ * show: true,
136
+ * position: 'top right'
137
+ * }
138
+ * }
139
+ * );
140
+ *
141
+ * // The defaultToastConfig will be applied to all toasts,
142
+ * // but can be overridden per toast:
143
+ * toaster.show({ message: "Uses default config" });
144
+ * toaster.show({
145
+ * message: "Custom config",
146
+ * backgroundColor: 0x9b59b6 // Overrides default
147
+ * });
148
+ * ```
149
+ */
150
+ constructor(config?: Partial<ToasterConfig>, defaultToastConfig?: Partial<ToastConfig>);
151
+ protected initialize(): void;
152
+ /**
153
+ * Display a new toast notification
154
+ * @param config Configuration for the toast to display
155
+ * @returns Promise that resolves with the created toast
156
+ */
157
+ show(config?: Partial<ToastConfig>, overrideDefaults?: boolean): Promise<Toast>;
158
+ /**
159
+ * Hide all currently visible toasts with animation
160
+ * @returns Promise that resolves when all toasts are hidden
161
+ */
162
+ hideAll(): Promise<void>;
163
+ /**
164
+ * Remove all toasts (alias for hideAll)
165
+ */
166
+ removeAll(): Promise<void>;
167
+ protected removeToast(toast: Toast): Promise<void>;
168
+ /**
169
+ * Update positions of all toasts
170
+ * @param animate Whether to animate the position changes
171
+ * @param skipLast Whether to skip positioning the last toast
172
+ */
173
+ positionToasts(animate?: boolean, skipLast?: boolean): void;
174
+ /**
175
+ * Position a single toast
176
+ * @param toast The toast to position
177
+ * @param index The index of the toast in the toasts array
178
+ * @param animate Whether to animate the position changes
179
+ */
180
+ protected positionToast(toast: Toast, index: number, animate?: boolean): void;
181
+ /**
182
+ * Handle window resize events
183
+ */
184
+ resize(): void;
185
+ destroy(): void;
186
+ }
187
+ export {};
188
+ //# sourceMappingURL=Toaster.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Toaster.d.ts","sourceRoot":"","sources":["../../src/ui/Toaster.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjD,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACpC,OAAO,EAAsB,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AACjE,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1C;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,WAAW,aAAa;IAC5B,sDAAsD;IACtD,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,+CAA+C;IAC/C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,sCAAsC;IACtC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,kGAAkG;IAClG,MAAM,CAAC,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,MAAM,CAAC;IAC3C,iDAAiD;IACjD,cAAc,CAAC,EAAE,IAAI,GAAG,MAAM,CAAC;IAE/B,cAAc,EAAE,MAAM,CAAC;CACxB;;AAWD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,qBAAa,OAAQ,SAAQ,YAAsB;IACjD,wCAAwC;IACxC,SAAgB,YAAY,iBAAsB,KAAK,KAAK,IAAI,EAAI;IACpE,sCAAsC;IACtC,SAAgB,cAAc,iBAAsB,KAAK,KAAK,IAAI,EAAI;IACtE,0CAA0C;IAC1C,SAAgB,kBAAkB,eAAoB,IAAI,EAAI;IAEvD,MAAM,EAAE,aAAa,CAAC;IACtB,kBAAkB,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;IAChD,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,SAAS,CAAY;IAE7B;;OAEG;IACH,IAAW,IAAI,IAAI,MAAM,CAExB;IAED,IAAI,aAAa,IAAI,YAAY,CAEhC;IAED,IAAI,cAAc,IAAI,IAAI,GAAG,MAAM,CAElC;IAED,IAAI,OAAO,IAAI,MAAM,CAEpB;IAED,IAAI,MAAM,IAAI;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,MAAM,CAE9C;IAED,IAAI,SAAS,IAAI,MAAM,CAEtB;IAED,IAAI,WAAW,IAAI,OAAO,CAAC,WAAW,CAAC,CAEtC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAkDG;gBACS,MAAM,GAAE,OAAO,CAAC,aAAa,CAAM,EAAE,kBAAkB,GAAE,OAAO,CAAC,WAAW,CAAM;IAQ9F,SAAS,CAAC,UAAU,IAAI,IAAI;IAI5B;;;;OAIG;IACU,IAAI,CACf,MAAM,GAAE,OAAO,CAAC,WAAW,CAA2B,EACtD,gBAAgB,GAAE,OAAe,GAChC,OAAO,CAAC,KAAK,CAAC;IAwDjB;;;OAGG;IACU,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAUrC;;OAEG;IACU,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;cAIvB,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC;IAsBxD;;;;OAIG;IACI,cAAc,CAAC,OAAO,GAAE,OAAc,EAAE,QAAQ,GAAE,OAAe,GAAG,IAAI;IAW/E;;;;;OAKG;IACH,SAAS,CAAC,aAAa,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,GAAE,OAAc,GAAG,IAAI;IAsEnF;;OAEG;IACI,MAAM,IAAI,IAAI;IAKd,OAAO,IAAI,IAAI;CAUvB"}
@@ -0,0 +1,155 @@
1
+ import { LayoutOptions } from '@pixi/layout';
2
+ import { ContainerChild, Graphics, RenderLayer, Container as PIXIContainer, Text } from 'pixi.js';
3
+ import { Container } from '../display';
4
+ import { AppTypeOverrides, Padding, PointLike, Size, SizeLike } from '../utils';
5
+ import { FlexContainer } from './FlexContainer';
6
+ export type UICanvasEdge = 'top right' | 'top left' | 'top center' | 'top' | 'bottom right' | 'bottom left' | 'bottom center' | 'bottom' | 'left top' | 'left bottom' | 'left center' | 'left' | 'right top' | 'right bottom' | 'right center' | 'right' | 'center';
7
+ export interface UICanvasChildSettings {
8
+ align: UICanvasEdge;
9
+ padding: Padding;
10
+ }
11
+ /** Anchor box handed to a binding's placement callback, in canvas-local space
12
+ * (origin = canvas top-left), derived from the anchor's computed layout so it
13
+ * never lags the render transform. */
14
+ export interface UICanvasBindRect {
15
+ left: number;
16
+ top: number;
17
+ width: number;
18
+ height: number;
19
+ }
20
+ /** Places a bound (free-floating) element from its anchor's rect. Both the
21
+ * rect and the element's `position` are in canvas-local space. */
22
+ export type UICanvasBindFn = (rect: UICanvasBindRect, child: PIXIContainer) => void;
23
+ export interface UICanvasChildProps {
24
+ align: UICanvasEdge;
25
+ padding: Partial<Padding> | PointLike;
26
+ }
27
+ export type UICanvasConfig = {
28
+ debug: boolean;
29
+ padding: Padding;
30
+ size: Size;
31
+ useAppSize: boolean;
32
+ layout?: Omit<LayoutOptions, 'target'> | null | boolean;
33
+ autoLayoutChildren?: boolean;
34
+ };
35
+ export declare const UICanvasConfigKeys: (keyof UICanvasConfig)[];
36
+ export type UICanvasProps = {
37
+ debug: boolean;
38
+ padding: Partial<Padding> | PointLike;
39
+ size?: SizeLike;
40
+ useAppSize?: boolean;
41
+ layout?: Omit<LayoutOptions, 'target'> | null | boolean;
42
+ autoLayoutChildren?: boolean;
43
+ };
44
+ declare const _UICanvas: (new () => import('..').IFactory<{
45
+ existing: <TEntity>(entity: TEntity, props?: Partial<import('..').ExistingProps>) => TEntity;
46
+ container: (props?: Partial<import('..').ContainerProps> | undefined) => Container;
47
+ particleContainer: (props?: Partial<import('..').ParticleContainerProps> | undefined) => import('..').ParticleContainer;
48
+ texture: typeof import('..').resolveTexture;
49
+ sprite: (props?: Partial<import('..').SpriteProps> | undefined) => import('pixi.js').Sprite;
50
+ tilingSprite: (props?: Partial<import('..').TilingSpriteProps> | undefined) => import('pixi.js').TilingSprite;
51
+ animatedSprite: (props?: Partial<import('..').AnimatedSpriteProps> | undefined) => import('..').AnimatedSprite;
52
+ graphics: (props?: Partial<import('..').GraphicsProps> | undefined) => Graphics;
53
+ svg(props: import('..').WithRequiredProps<import('..').SvgProps, "ctx">): import('..').Svg;
54
+ text: (props?: Partial<import('..').TextProps> | undefined) => Text;
55
+ htmlText: (props?: Partial<import('..').HTMLTextProps> | undefined) => import('pixi.js').HTMLText;
56
+ bitmapText: (props?: Partial<import('..').BitmapTextProps> | undefined) => import('pixi.js').BitmapText;
57
+ button: (props?: Partial<import('..').ButtonProps> | undefined) => import('./Button').Button;
58
+ flexContainer: (props?: Partial<import('..').FlexContainerProps> | undefined) => FlexContainer;
59
+ uiCanvas: (props?: Partial<import('..').UICanvasFactoryProps> | undefined) => UICanvas;
60
+ spine: (props?: Partial<import('..').SpineProps> | undefined) => import('..').Spine;
61
+ spineAnimation: <ANames extends string = string>(props?: Partial<import('..').SpineProps>) => import('..').SpineAnimation<ANames>;
62
+ toaster: (toasterConfig?: Partial<import('./Toaster').ToasterConfig>, defaultToastConfig?: Partial<import('./Toast').ToastConfig>) => import('./Toaster').Toaster;
63
+ entity: <K extends import('..').EntityId>(id: K, props?: import('..').EntityProps<K> & import('..').EntityFactoryProps) => import('..').EntityInstance<K>;
64
+ ui: <K extends import('..').UIId>(id: K, props?: import('..').UIProps<K> & import('..').EntityFactoryProps) => import('..').UIInstance<K>;
65
+ }>) & import('..').Constructor<import('..').ISignalContainer>;
66
+ export declare class UICanvas extends _UICanvas {
67
+ config: UICanvasConfig;
68
+ protected settingsMap: Map<PIXIContainer<ContainerChild>, UICanvasChildSettings>;
69
+ protected _childMap: Map<PIXIContainer<ContainerChild>, PIXIContainer<ContainerChild>>;
70
+ protected _debugGraphics: Graphics | null;
71
+ protected _debugLabel: Text | null;
72
+ protected _regionLabels: Text[];
73
+ private _disableAddChildError;
74
+ private _positionContainers;
75
+ private _bindings;
76
+ topRow: FlexContainer;
77
+ middleRow: FlexContainer;
78
+ bottomRow: FlexContainer;
79
+ constructor(config: Partial<UICanvasProps>);
80
+ private _updateLayout;
81
+ private _initializeLayout;
82
+ private _createPositionContainer;
83
+ protected _canvasChildren: PIXIContainer[];
84
+ get canvasChildren(): PIXIContainer[];
85
+ /**
86
+ * Get the application instance.
87
+ */
88
+ get app(): AppTypeOverrides['App'];
89
+ destroy(): void;
90
+ set size(value: SizeLike);
91
+ set padding(value: Partial<Padding> | PointLike);
92
+ private static isFlexContainer;
93
+ /**
94
+ * Removes all the children from the container
95
+ */
96
+ removeChildren: (beginIndex?: number, endIndex?: number) => PIXIContainer[];
97
+ /**
98
+ * Removes a child from the container at the specified index
99
+ */
100
+ removeChildAt: <U extends PIXIContainer | RenderLayer>(index: number) => U;
101
+ /**
102
+ * Adds a child to the container at the specified index
103
+ */
104
+ addChildAt: <U extends PIXIContainer | RenderLayer>(_child: U, _index: number) => U;
105
+ /**
106
+ * Sets the index of the child in the container
107
+ */
108
+ setChildIndex: <U extends PIXIContainer>(child: U, index: number) => void;
109
+ /**
110
+ * Gets the index of a child in the container
111
+ */
112
+ getChildIndex: <U extends PIXIContainer>(child: U) => number;
113
+ /**
114
+ * Gets the child at the specified index
115
+ */
116
+ getChildAt: <U extends PIXIContainer | RenderLayer>(index: number) => U;
117
+ addChild<U extends (ContainerChild | RenderLayer)[]>(...children: U): U[0];
118
+ /**
119
+ * Removes one or more children from the container
120
+ */
121
+ removeChild(..._children: (PIXIContainer | RenderLayer)[]): PIXIContainer;
122
+ resize(): void;
123
+ updateLayout(): void;
124
+ /**
125
+ * Bind a free-floating element to a UICanvas-managed anchor without adding it
126
+ * to the flex flow. The element is parented to the canvas as a `layout: false`
127
+ * child (so it never re-measures a region — it can't "shift everything left"),
128
+ * and `place` re-runs on every layout pass with the anchor's current box in
129
+ * canvas-local space. Use it for popovers, tooltips, and dropdowns anchored to
130
+ * laid-out chrome. Idempotent per child — binding the same child again replaces
131
+ * the previous binding.
132
+ *
133
+ * The bound element must NOT be a `@pixi/layout` node: re-enabling `.layout` on
134
+ * it (a layout-enabled direct child of the canvas joins the column flow and
135
+ * bottom-docks + reflows the canvas). Position its own subtree manually.
136
+ */
137
+ bindElement(child: PIXIContainer, anchor: PIXIContainer, place: UICanvasBindFn): void;
138
+ /** Remove a binding created by `bindElement` and detach the element. */
139
+ unbindElement(child: PIXIContainer): void;
140
+ private _updateBindings;
141
+ /** The anchor's box in canvas-local space, summed from the computed-layout
142
+ * offsets up to this canvas — deterministic and free of render-transform lag
143
+ * (the same source the debug overlay uses to draw regions). */
144
+ private _anchorRect;
145
+ addElement<U extends PIXIContainer = PIXIContainer>(child: PIXIContainer, settings?: Partial<UICanvasChildProps>): U;
146
+ removeElement(child: PIXIContainer): PIXIContainer;
147
+ private _childAdded;
148
+ private _childRemoved;
149
+ private _added;
150
+ get debug(): boolean;
151
+ set debug(value: boolean);
152
+ private drawDebug;
153
+ }
154
+ export {};
155
+ //# sourceMappingURL=UICanvas.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UICanvas.d.ts","sourceRoot":"","sources":["../../src/ui/UICanvas.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ export * from './Button';
2
+ export * from './FlexContainer';
3
+ export * from './Input';
4
+ export * from './Joystick';
5
+ export * from './Popup';
6
+ export * from './Toast';
7
+ export * from './Toaster';
8
+ export * from './UICanvas';
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ui/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC;AAChC,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Shuffle an array.
3
+ * @param array
4
+ */
5
+ export declare function shuffle<T>(array: T[]): void;
6
+ /**
7
+ * Get a random array element.
8
+ * @param array
9
+ */
10
+ export declare function getRandomElement<T>(array: T[]): T;
11
+ //# sourceMappingURL=array.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"array.d.ts","sourceRoot":"","sources":["../../src/utils/array.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,IAAI,CAS3C;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,CAAC,CAEjD"}
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Binds the provided methods to the provided instance.
3
+ * @param instance - The instance to which the methods should be bound.
4
+ * @param methodNames - The names of the methods to bind.
5
+ */
6
+ export declare function bindMethods(instance: unknown, ...methodNames: string[]): void;
7
+ /**
8
+ * Binds all methods of an instance to the instance.
9
+ * @param instance - The instance to which the methods should be bound.
10
+ * @param excludePrefixes - An array of prefixes to exclude from the method names.
11
+ * @param excludeMethodNames - An array of method names to exclude.
12
+ */
13
+ export declare function bindAllMethods(instance: any, excludePrefixes?: string[], excludeMethodNames?: string[]): void;
14
+ /**
15
+ * Checks if a method exists on an object and, if it does, invokes it with the provided arguments.
16
+ * @param obj - The object on which to check for the method.
17
+ * @param methodName - The name of the method to check for and invoke.
18
+ * @param methodArgs - The arguments to pass to the method.
19
+ */
20
+ export declare function checkAndInvokeMethod(obj: any, methodName: string, ...methodArgs: any[]): void;
21
+ //# sourceMappingURL=bind.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bind.d.ts","sourceRoot":"","sources":["../../src/utils/bind.ts"],"names":[],"mappings":"AAIA;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,WAAW,EAAE,MAAM,EAAE,QAOtE;AAwCD;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,GAAG,EAAE,eAAe,GAAE,MAAM,EAAO,EAAE,kBAAkB,GAAE,MAAM,EAAO,QAI9G;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,UAAU,EAAE,GAAG,EAAE,GAAG,IAAI,CAI7F"}
@@ -0,0 +1,2 @@
1
+ export declare function destroyCanvas(canvas: HTMLCanvasElement | OffscreenCanvas): void;
2
+ //# sourceMappingURL=canvas.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"canvas.d.ts","sourceRoot":"","sources":["../../src/utils/canvas.ts"],"names":[],"mappings":"AAAA,wBAAgB,aAAa,CAAC,MAAM,EAAE,iBAAiB,GAAG,eAAe,QAyBxE"}
@@ -0,0 +1,66 @@
1
+ export declare function toHex(color: number): string;
2
+ export declare function toRgb(hex: string): number;
3
+ export declare class Color {
4
+ static readonly WHITE: Color;
5
+ static readonly BLACK: Color;
6
+ static readonly GREY: Color;
7
+ static readonly RED: Color;
8
+ static readonly GREEN: Color;
9
+ static readonly BLUE: Color;
10
+ static readonly YELLOW: Color;
11
+ static readonly MAGENTA: Color;
12
+ static readonly CYAN: Color;
13
+ r: number;
14
+ g: number;
15
+ b: number;
16
+ /**
17
+ * A Color reresented by a red, green and blue component.
18
+ * @param r The red component of the Color OR the full Color in HEX.
19
+ * @param g The green component of the Color.
20
+ * @param b The blue component of the Color.
21
+ */
22
+ constructor(r?: number, g?: number, b?: number);
23
+ /**
24
+ * Creates a random Color.
25
+ * @returns The new Color.
26
+ */
27
+ static random(): Color;
28
+ /**
29
+ * Converts the rgb values passed in to hex.
30
+ * @param r The red component to convert.
31
+ * @param g The green component to convert.
32
+ * @param b The blue component to convert.
33
+ * @returns The hex value.
34
+ */
35
+ static rgbToHex(r: number, g: number, b: number): number;
36
+ static rgbToHexString(pNumber: number): string;
37
+ static rgbToFullHexString(r: number, g: number, b: number): string;
38
+ /**
39
+ * Creates a new Color that is linearly interpolated from pA to b .
40
+ * @param pA The start Color.
41
+ * @param b The end Color.
42
+ * @param pPerc The percentage on the path from pA to b .
43
+ * @returns The new Color.
44
+ */
45
+ static lerp(pA: Color, b: Color, pPerc: number): Color;
46
+ /**
47
+ * Creates a new hex Color that is linearly interpolated from pA to b .
48
+ * @param pA The first Color hex.
49
+ * @param b The second Color hex.
50
+ * @param pPerc The percentage along the path from pA to b .
51
+ * @returns The new hex Color.
52
+ */
53
+ static lerpHex(pA: number, b: number, pPerc: number): number;
54
+ /**
55
+ * Convert this Color to hex.
56
+ * @returns The Color in hex format.
57
+ */
58
+ toHex(): number;
59
+ toHexString(): string;
60
+ /**
61
+ * Converts the Color components to the 0...1 range.
62
+ * @returns The new Color.
63
+ */
64
+ toWebGL(): number[];
65
+ }
66
+ //# sourceMappingURL=color.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"color.d.ts","sourceRoot":"","sources":["../../src/utils/color.ts"],"names":[],"mappings":"AAAA,wBAAgB,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAE3C;AAGD,wBAAgB,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAEzC;AAED,qBAAa,KAAK;IAChB,gBAAuB,KAAK,EAAE,KAAK,CAA4B;IAC/D,gBAAuB,KAAK,EAAE,KAAK,CAAsB;IACzD,gBAAuB,IAAI,EAAE,KAAK,CAA4B;IAC9D,gBAAuB,GAAG,EAAE,KAAK,CAAwB;IACzD,gBAAuB,KAAK,EAAE,KAAK,CAAwB;IAC3D,gBAAuB,IAAI,EAAE,KAAK,CAAwB;IAC1D,gBAAuB,MAAM,EAAE,KAAK,CAA0B;IAC9D,gBAAuB,OAAO,EAAE,KAAK,CAA0B;IAC/D,gBAAuB,IAAI,EAAE,KAAK,CAA0B;IAErD,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IAEjB;;;;;OAKG;gBACS,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,MAAM;IAe9C;;;OAGG;WACW,MAAM,IAAI,KAAK;IAI7B;;;;;;OAMG;WACW,QAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM;WAKjD,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;WASvC,kBAAkB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM;IAQzE;;;;;;OAMG;WACW,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,GAAG,KAAK;IAI7D;;;;;;OAMG;WACW,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM;IAMnE;;;OAGG;IACI,KAAK,IAAI,MAAM;IAIf,WAAW,IAAI,MAAM;IAI5B;;;OAGG;IACI,OAAO,IAAI,MAAM,EAAE;CAG3B"}
@@ -0,0 +1,15 @@
1
+ export type LoggerMode = 'development' | 'default' | 'disabled';
2
+ export declare class Logger {
3
+ private static _instance;
4
+ private constructor();
5
+ private static _mode;
6
+ static get mode(): LoggerMode;
7
+ static set mode(mode: LoggerMode);
8
+ static initialize(mode?: LoggerMode): void;
9
+ static log(...args: any): void;
10
+ static warn(...args: any): void;
11
+ static error(...args: any): void;
12
+ static lifecycle(subject: string, phase?: 'init' | 'destroy', ...args: any[]): void;
13
+ static trace(type?: 'log' | 'warn' | 'error', ...args: any[]): void;
14
+ }
15
+ //# sourceMappingURL=Logger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Logger.d.ts","sourceRoot":"","sources":["../../../src/utils/console/Logger.ts"],"names":[],"mappings":"AAUA,MAAM,MAAM,UAAU,GAAG,aAAa,GAAG,SAAS,GAAG,UAAU,CAAC;AAEhE,qBAAa,MAAM;IACjB,OAAO,CAAC,MAAM,CAAC,SAAS,CAAuB;IAE/C,OAAO;IASP,OAAO,CAAC,MAAM,CAAC,KAAK,CAA0B;IAE9C,MAAM,KAAK,IAAI,IAAI,UAAU,CAE5B;IAED,MAAM,KAAK,IAAI,CAAC,IAAI,EAAE,UAAU,EAE/B;WAEa,UAAU,CAAC,IAAI,CAAC,EAAE,UAAU;WAO5B,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG;WAIhB,IAAI,CAAC,GAAG,IAAI,EAAE,GAAG;WAIjB,KAAK,CAAC,GAAG,IAAI,EAAE,GAAG;WAIlB,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,GAAE,MAAM,GAAG,SAAkB,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE;WAgB7E,KAAK,CAAC,IAAI,GAAE,KAAK,GAAG,MAAM,GAAG,OAAe,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE;CAgB3E"}
@@ -0,0 +1,2 @@
1
+ export * from './Logger';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/console/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC"}