@number10/phaserjsx 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 (326) hide show
  1. package/LICENSE +667 -0
  2. package/README.md +238 -0
  3. package/dist/TransformOriginView-BYPbRH8N.cjs +17045 -0
  4. package/dist/TransformOriginView-BYPbRH8N.cjs.map +1 -0
  5. package/dist/TransformOriginView-CO-tJCmV.js +17046 -0
  6. package/dist/TransformOriginView-CO-tJCmV.js.map +1 -0
  7. package/dist/animation/animated-signal.d.ts +35 -0
  8. package/dist/animation/animated-signal.d.ts.map +1 -0
  9. package/dist/animation/index.d.ts +7 -0
  10. package/dist/animation/index.d.ts.map +1 -0
  11. package/dist/animation/spring-physics.d.ts +120 -0
  12. package/dist/animation/spring-physics.d.ts.map +1 -0
  13. package/dist/animation/useSpring.d.ts +54 -0
  14. package/dist/animation/useSpring.d.ts.map +1 -0
  15. package/dist/colors/color-presets.d.ts +89 -0
  16. package/dist/colors/color-presets.d.ts.map +1 -0
  17. package/dist/colors/color-theme-helpers.d.ts +65 -0
  18. package/dist/colors/color-theme-helpers.d.ts.map +1 -0
  19. package/dist/colors/color-types.d.ts +100 -0
  20. package/dist/colors/color-types.d.ts.map +1 -0
  21. package/dist/colors/color-utils.d.ts +171 -0
  22. package/dist/colors/color-utils.d.ts.map +1 -0
  23. package/dist/colors/index.d.ts +17 -0
  24. package/dist/colors/index.d.ts.map +1 -0
  25. package/dist/colors/preset-manager.d.ts +35 -0
  26. package/dist/colors/preset-manager.d.ts.map +1 -0
  27. package/dist/colors/use-color-mode.d.ts +22 -0
  28. package/dist/colors/use-color-mode.d.ts.map +1 -0
  29. package/dist/colors/use-colors.d.ts +40 -0
  30. package/dist/colors/use-colors.d.ts.map +1 -0
  31. package/dist/components/appliers/applyBackground.d.ts +13 -0
  32. package/dist/components/appliers/applyBackground.d.ts.map +1 -0
  33. package/dist/components/appliers/applyGestures.d.ts +12 -0
  34. package/dist/components/appliers/applyGestures.d.ts.map +1 -0
  35. package/dist/components/appliers/applyGraphics.d.ts +10 -0
  36. package/dist/components/appliers/applyGraphics.d.ts.map +1 -0
  37. package/dist/components/appliers/applyGraphicsLayout.d.ts +10 -0
  38. package/dist/components/appliers/applyGraphicsLayout.d.ts.map +1 -0
  39. package/dist/components/appliers/applyImage.d.ts +10 -0
  40. package/dist/components/appliers/applyImage.d.ts.map +1 -0
  41. package/dist/components/appliers/applyImageLayout.d.ts +15 -0
  42. package/dist/components/appliers/applyImageLayout.d.ts.map +1 -0
  43. package/dist/components/appliers/applyLayout.d.ts +15 -0
  44. package/dist/components/appliers/applyLayout.d.ts.map +1 -0
  45. package/dist/components/appliers/applyNineSlice.d.ts +11 -0
  46. package/dist/components/appliers/applyNineSlice.d.ts.map +1 -0
  47. package/dist/components/appliers/applyNineSliceLayout.d.ts +15 -0
  48. package/dist/components/appliers/applyNineSliceLayout.d.ts.map +1 -0
  49. package/dist/components/appliers/applyPhaser.d.ts +22 -0
  50. package/dist/components/appliers/applyPhaser.d.ts.map +1 -0
  51. package/dist/components/appliers/applySprite.d.ts +10 -0
  52. package/dist/components/appliers/applySprite.d.ts.map +1 -0
  53. package/dist/components/appliers/applySpriteLayout.d.ts +14 -0
  54. package/dist/components/appliers/applySpriteLayout.d.ts.map +1 -0
  55. package/dist/components/appliers/applyText.d.ts +25 -0
  56. package/dist/components/appliers/applyText.d.ts.map +1 -0
  57. package/dist/components/appliers/applyTextLayout.d.ts +15 -0
  58. package/dist/components/appliers/applyTextLayout.d.ts.map +1 -0
  59. package/dist/components/appliers/applyTooltip.d.ts +12 -0
  60. package/dist/components/appliers/applyTooltip.d.ts.map +1 -0
  61. package/dist/components/appliers/applyTransform.d.ts +21 -0
  62. package/dist/components/appliers/applyTransform.d.ts.map +1 -0
  63. package/dist/components/creators/createBackground.d.ts +15 -0
  64. package/dist/components/creators/createBackground.d.ts.map +1 -0
  65. package/dist/components/creators/createGestures.d.ts +11 -0
  66. package/dist/components/creators/createGestures.d.ts.map +1 -0
  67. package/dist/components/creators/createGraphicsLayout.d.ts +9 -0
  68. package/dist/components/creators/createGraphicsLayout.d.ts.map +1 -0
  69. package/dist/components/creators/createImageLayout.d.ts +14 -0
  70. package/dist/components/creators/createImageLayout.d.ts.map +1 -0
  71. package/dist/components/creators/createLayout.d.ts +15 -0
  72. package/dist/components/creators/createLayout.d.ts.map +1 -0
  73. package/dist/components/creators/createNineSliceLayout.d.ts +14 -0
  74. package/dist/components/creators/createNineSliceLayout.d.ts.map +1 -0
  75. package/dist/components/creators/createPhaser.d.ts +14 -0
  76. package/dist/components/creators/createPhaser.d.ts.map +1 -0
  77. package/dist/components/creators/createSpriteLayout.d.ts +15 -0
  78. package/dist/components/creators/createSpriteLayout.d.ts.map +1 -0
  79. package/dist/components/creators/createTextLayout.d.ts +14 -0
  80. package/dist/components/creators/createTextLayout.d.ts.map +1 -0
  81. package/dist/components/creators/createTransform.d.ts +11 -0
  82. package/dist/components/creators/createTransform.d.ts.map +1 -0
  83. package/dist/components/custom/Accordion.d.ts +34 -0
  84. package/dist/components/custom/Accordion.d.ts.map +1 -0
  85. package/dist/components/custom/AlertDialog.d.ts +63 -0
  86. package/dist/components/custom/AlertDialog.d.ts.map +1 -0
  87. package/dist/components/custom/Button.d.ts +44 -0
  88. package/dist/components/custom/Button.d.ts.map +1 -0
  89. package/dist/components/custom/CharText/CharText.d.ts +8 -0
  90. package/dist/components/custom/CharText/CharText.d.ts.map +1 -0
  91. package/dist/components/custom/CharText/index.d.ts +3 -0
  92. package/dist/components/custom/CharText/index.d.ts.map +1 -0
  93. package/dist/components/custom/CharText/types.d.ts +117 -0
  94. package/dist/components/custom/CharText/types.d.ts.map +1 -0
  95. package/dist/components/custom/CharText/utils.d.ts +34 -0
  96. package/dist/components/custom/CharText/utils.d.ts.map +1 -0
  97. package/dist/components/custom/CharTextInput.d.ts +62 -0
  98. package/dist/components/custom/CharTextInput.d.ts.map +1 -0
  99. package/dist/components/custom/Dialog.d.ts +60 -0
  100. package/dist/components/custom/Dialog.d.ts.map +1 -0
  101. package/dist/components/custom/Divider.d.ts +21 -0
  102. package/dist/components/custom/Divider.d.ts.map +1 -0
  103. package/dist/components/custom/Dropdown.d.ts +91 -0
  104. package/dist/components/custom/Dropdown.d.ts.map +1 -0
  105. package/dist/components/custom/Icon.d.ts +75 -0
  106. package/dist/components/custom/Icon.d.ts.map +1 -0
  107. package/dist/components/custom/Image.d.ts +50 -0
  108. package/dist/components/custom/Image.d.ts.map +1 -0
  109. package/dist/components/custom/Modal.d.ts +37 -0
  110. package/dist/components/custom/Modal.d.ts.map +1 -0
  111. package/dist/components/custom/NineSlice.d.ts +81 -0
  112. package/dist/components/custom/NineSlice.d.ts.map +1 -0
  113. package/dist/components/custom/NineSliceButton.d.ts +128 -0
  114. package/dist/components/custom/NineSliceButton.d.ts.map +1 -0
  115. package/dist/components/custom/Portal.d.ts +43 -0
  116. package/dist/components/custom/Portal.d.ts.map +1 -0
  117. package/dist/components/custom/Portal.test.d.ts +2 -0
  118. package/dist/components/custom/Portal.test.d.ts.map +1 -0
  119. package/dist/components/custom/RadioButton.d.ts +20 -0
  120. package/dist/components/custom/RadioButton.d.ts.map +1 -0
  121. package/dist/components/custom/RadioGroup.d.ts +33 -0
  122. package/dist/components/custom/RadioGroup.d.ts.map +1 -0
  123. package/dist/components/custom/RefOriginView.d.ts +45 -0
  124. package/dist/components/custom/RefOriginView.d.ts.map +1 -0
  125. package/dist/components/custom/ScrollSlider.d.ts +36 -0
  126. package/dist/components/custom/ScrollSlider.d.ts.map +1 -0
  127. package/dist/components/custom/ScrollView.d.ts +48 -0
  128. package/dist/components/custom/ScrollView.d.ts.map +1 -0
  129. package/dist/components/custom/Sidebar.d.ts +50 -0
  130. package/dist/components/custom/Sidebar.d.ts.map +1 -0
  131. package/dist/components/custom/Slider.d.ts +131 -0
  132. package/dist/components/custom/Slider.d.ts.map +1 -0
  133. package/dist/components/custom/Text.d.ts +26 -0
  134. package/dist/components/custom/Text.d.ts.map +1 -0
  135. package/dist/components/custom/Toggle.d.ts +51 -0
  136. package/dist/components/custom/Toggle.d.ts.map +1 -0
  137. package/dist/components/custom/TransformOriginView.d.ts +34 -0
  138. package/dist/components/custom/TransformOriginView.d.ts.map +1 -0
  139. package/dist/components/custom/View.d.ts +33 -0
  140. package/dist/components/custom/View.d.ts.map +1 -0
  141. package/dist/components/custom/WrapText.d.ts +60 -0
  142. package/dist/components/custom/WrapText.d.ts.map +1 -0
  143. package/dist/components/custom/index.cjs +32 -0
  144. package/dist/components/custom/index.cjs.map +1 -0
  145. package/dist/components/custom/index.d.ts +29 -0
  146. package/dist/components/custom/index.d.ts.map +1 -0
  147. package/dist/components/custom/index.js +32 -0
  148. package/dist/components/custom/index.js.map +1 -0
  149. package/dist/components/index.d.ts +28 -0
  150. package/dist/components/index.d.ts.map +1 -0
  151. package/dist/components/internal/SceneWrapper.d.ts +20 -0
  152. package/dist/components/internal/SceneWrapper.d.ts.map +1 -0
  153. package/dist/components/primitives/graphics.d.ts +40 -0
  154. package/dist/components/primitives/graphics.d.ts.map +1 -0
  155. package/dist/components/primitives/image.d.ts +45 -0
  156. package/dist/components/primitives/image.d.ts.map +1 -0
  157. package/dist/components/primitives/nineslice.d.ts +111 -0
  158. package/dist/components/primitives/nineslice.d.ts.map +1 -0
  159. package/dist/components/primitives/sprite.d.ts +58 -0
  160. package/dist/components/primitives/sprite.d.ts.map +1 -0
  161. package/dist/components/primitives/text.d.ts +26 -0
  162. package/dist/components/primitives/text.d.ts.map +1 -0
  163. package/dist/components/primitives/tilesprite.d.ts +47 -0
  164. package/dist/components/primitives/tilesprite.d.ts.map +1 -0
  165. package/dist/components/primitives/view.d.ts +23 -0
  166. package/dist/components/primitives/view.d.ts.map +1 -0
  167. package/dist/core-props.d.ts +605 -0
  168. package/dist/core-props.d.ts.map +1 -0
  169. package/dist/core-types.d.ts +59 -0
  170. package/dist/core-types.d.ts.map +1 -0
  171. package/dist/design-tokens/design-token-presets.d.ts +26 -0
  172. package/dist/design-tokens/design-token-presets.d.ts.map +1 -0
  173. package/dist/design-tokens/design-token-types.d.ts +109 -0
  174. package/dist/design-tokens/design-token-types.d.ts.map +1 -0
  175. package/dist/design-tokens/index.d.ts +8 -0
  176. package/dist/design-tokens/index.d.ts.map +1 -0
  177. package/dist/design-tokens/use-theme-tokens.d.ts +28 -0
  178. package/dist/design-tokens/use-theme-tokens.d.ts.map +1 -0
  179. package/dist/dev-config.d.ts +238 -0
  180. package/dist/dev-config.d.ts.map +1 -0
  181. package/dist/effects/effect-registry.d.ts +54 -0
  182. package/dist/effects/effect-registry.d.ts.map +1 -0
  183. package/dist/effects/index.d.ts +56 -0
  184. package/dist/effects/index.d.ts.map +1 -0
  185. package/dist/effects/use-effect.d.ts +172 -0
  186. package/dist/effects/use-effect.d.ts.map +1 -0
  187. package/dist/fx/convenience-hooks/index.d.ts +7 -0
  188. package/dist/fx/convenience-hooks/index.d.ts.map +1 -0
  189. package/dist/fx/convenience-hooks/use-blur.d.ts +21 -0
  190. package/dist/fx/convenience-hooks/use-blur.d.ts.map +1 -0
  191. package/dist/fx/convenience-hooks/use-glow.d.ts +21 -0
  192. package/dist/fx/convenience-hooks/use-glow.d.ts.map +1 -0
  193. package/dist/fx/convenience-hooks/use-shadow.d.ts +21 -0
  194. package/dist/fx/convenience-hooks/use-shadow.d.ts.map +1 -0
  195. package/dist/fx/fx-creators/blur.d.ts +37 -0
  196. package/dist/fx/fx-creators/blur.d.ts.map +1 -0
  197. package/dist/fx/fx-creators/color-matrix.d.ts +31 -0
  198. package/dist/fx/fx-creators/color-matrix.d.ts.map +1 -0
  199. package/dist/fx/fx-creators/glow.d.ts +36 -0
  200. package/dist/fx/fx-creators/glow.d.ts.map +1 -0
  201. package/dist/fx/fx-creators/index.d.ts +10 -0
  202. package/dist/fx/fx-creators/index.d.ts.map +1 -0
  203. package/dist/fx/fx-creators/pixelate.d.ts +24 -0
  204. package/dist/fx/fx-creators/pixelate.d.ts.map +1 -0
  205. package/dist/fx/fx-creators/shadow.d.ts +43 -0
  206. package/dist/fx/fx-creators/shadow.d.ts.map +1 -0
  207. package/dist/fx/fx-creators/vignette.d.ts +33 -0
  208. package/dist/fx/fx-creators/vignette.d.ts.map +1 -0
  209. package/dist/fx/fx-registry.d.ts +59 -0
  210. package/dist/fx/fx-registry.d.ts.map +1 -0
  211. package/dist/fx/index.d.ts +51 -0
  212. package/dist/fx/index.d.ts.map +1 -0
  213. package/dist/fx/use-fx.d.ts +53 -0
  214. package/dist/fx/use-fx.d.ts.map +1 -0
  215. package/dist/gestures/gesture-manager.d.ts +149 -0
  216. package/dist/gestures/gesture-manager.d.ts.map +1 -0
  217. package/dist/gestures/gesture-types.d.ts +229 -0
  218. package/dist/gestures/gesture-types.d.ts.map +1 -0
  219. package/dist/hooks-svg.d.ts +104 -0
  220. package/dist/hooks-svg.d.ts.map +1 -0
  221. package/dist/hooks.d.ts +135 -0
  222. package/dist/hooks.d.ts.map +1 -0
  223. package/dist/host.d.ts +74 -0
  224. package/dist/host.d.ts.map +1 -0
  225. package/dist/index.cjs +584 -0
  226. package/dist/index.cjs.map +1 -0
  227. package/dist/index.d.ts +34 -0
  228. package/dist/index.d.ts.map +1 -0
  229. package/dist/index.js +582 -0
  230. package/dist/index.js.map +1 -0
  231. package/dist/jsx-dev-runtime.cjs +10 -0
  232. package/dist/jsx-dev-runtime.cjs.map +1 -0
  233. package/dist/jsx-dev-runtime.d.ts +5 -0
  234. package/dist/jsx-dev-runtime.d.ts.map +1 -0
  235. package/dist/jsx-dev-runtime.js +11 -0
  236. package/dist/jsx-dev-runtime.js.map +1 -0
  237. package/dist/jsx-runtime.cjs +43 -0
  238. package/dist/jsx-runtime.cjs.map +1 -0
  239. package/dist/jsx-runtime.d.ts +25 -0
  240. package/dist/jsx-runtime.d.ts.map +1 -0
  241. package/dist/jsx-runtime.js +43 -0
  242. package/dist/jsx-runtime.js.map +1 -0
  243. package/dist/jsx-types.d.ts +33 -0
  244. package/dist/jsx-types.d.ts.map +1 -0
  245. package/dist/layout/appliers/background-applier.d.ts +16 -0
  246. package/dist/layout/appliers/background-applier.d.ts.map +1 -0
  247. package/dist/layout/appliers/container-applier.d.ts +9 -0
  248. package/dist/layout/appliers/container-applier.d.ts.map +1 -0
  249. package/dist/layout/appliers/position-applier.d.ts +8 -0
  250. package/dist/layout/appliers/position-applier.d.ts.map +1 -0
  251. package/dist/layout/index.d.ts +22 -0
  252. package/dist/layout/index.d.ts.map +1 -0
  253. package/dist/layout/layout-engine-test-utils.d.ts +19 -0
  254. package/dist/layout/layout-engine-test-utils.d.ts.map +1 -0
  255. package/dist/layout/layout-engine.d.ts +98 -0
  256. package/dist/layout/layout-engine.d.ts.map +1 -0
  257. package/dist/layout/strategies/base-strategy.d.ts +59 -0
  258. package/dist/layout/strategies/base-strategy.d.ts.map +1 -0
  259. package/dist/layout/strategies/column-layout.d.ts +38 -0
  260. package/dist/layout/strategies/column-layout.d.ts.map +1 -0
  261. package/dist/layout/strategies/row-layout.d.ts +38 -0
  262. package/dist/layout/strategies/row-layout.d.ts.map +1 -0
  263. package/dist/layout/strategies/stack-layout.d.ts +30 -0
  264. package/dist/layout/strategies/stack-layout.d.ts.map +1 -0
  265. package/dist/layout/types.d.ts +137 -0
  266. package/dist/layout/types.d.ts.map +1 -0
  267. package/dist/layout/utils/child-utils.d.ts +74 -0
  268. package/dist/layout/utils/child-utils.d.ts.map +1 -0
  269. package/dist/layout/utils/dimension-calculator.d.ts +59 -0
  270. package/dist/layout/utils/dimension-calculator.d.ts.map +1 -0
  271. package/dist/layout/utils/flex-distributor.d.ts +18 -0
  272. package/dist/layout/utils/flex-distributor.d.ts.map +1 -0
  273. package/dist/layout/utils/size-resolver.d.ts +84 -0
  274. package/dist/layout/utils/size-resolver.d.ts.map +1 -0
  275. package/dist/layout/utils/spacing-calculator.d.ts +27 -0
  276. package/dist/layout/utils/spacing-calculator.d.ts.map +1 -0
  277. package/dist/memo.d.ts +29 -0
  278. package/dist/memo.d.ts.map +1 -0
  279. package/dist/portal/index.d.ts +6 -0
  280. package/dist/portal/index.d.ts.map +1 -0
  281. package/dist/portal/portal-registry.d.ts +97 -0
  282. package/dist/portal/portal-registry.d.ts.map +1 -0
  283. package/dist/portal/portal-types.d.ts +20 -0
  284. package/dist/portal/portal-types.d.ts.map +1 -0
  285. package/dist/render-context.d.ts +118 -0
  286. package/dist/render-context.d.ts.map +1 -0
  287. package/dist/scripts/generate-icon-loaders.d.ts +2 -0
  288. package/dist/scripts/generate-icon-loaders.d.ts.map +1 -0
  289. package/dist/scripts/generate-icon-loaders.js +195 -0
  290. package/dist/scripts/generate-icon-types.d.ts +2 -0
  291. package/dist/scripts/generate-icon-types.d.ts.map +1 -0
  292. package/dist/scripts/generate-icon-types.js +124 -0
  293. package/dist/scripts/generate-icons.d.ts +37 -0
  294. package/dist/scripts/generate-icons.d.ts.map +1 -0
  295. package/dist/scripts/generate-icons.js +494 -0
  296. package/dist/scripts/icon-generator-config.d.ts +87 -0
  297. package/dist/scripts/icon-generator-config.d.ts.map +1 -0
  298. package/dist/scripts/icon-generator-config.js +6 -0
  299. package/dist/theme-base.d.ts +116 -0
  300. package/dist/theme-base.d.ts.map +1 -0
  301. package/dist/theme-custom.d.ts +262 -0
  302. package/dist/theme-custom.d.ts.map +1 -0
  303. package/dist/theme-defaults.d.ts +6 -0
  304. package/dist/theme-defaults.d.ts.map +1 -0
  305. package/dist/theme.d.ts +132 -0
  306. package/dist/theme.d.ts.map +1 -0
  307. package/dist/tooltip/tooltip-types.d.ts +57 -0
  308. package/dist/tooltip/tooltip-types.d.ts.map +1 -0
  309. package/dist/types.d.ts +34 -0
  310. package/dist/types.d.ts.map +1 -0
  311. package/dist/utils/KeyboardInputManager.d.ts +48 -0
  312. package/dist/utils/KeyboardInputManager.d.ts.map +1 -0
  313. package/dist/utils/dom-input-manager.d.ts +109 -0
  314. package/dist/utils/dom-input-manager.d.ts.map +1 -0
  315. package/dist/utils/svg-texture.d.ts +30 -0
  316. package/dist/utils/svg-texture.d.ts.map +1 -0
  317. package/dist/utils/texture-registry.d.ts +49 -0
  318. package/dist/utils/texture-registry.d.ts.map +1 -0
  319. package/dist/vdom.d.ts +60 -0
  320. package/dist/vdom.d.ts.map +1 -0
  321. package/dist/viewport-context.d.ts +39 -0
  322. package/dist/viewport-context.d.ts.map +1 -0
  323. package/dist/vite-plugin-icons.d.ts +29 -0
  324. package/dist/vite-plugin-icons.d.ts.map +1 -0
  325. package/dist/vite-plugin-icons.js +95 -0
  326. package/package.json +117 -0
package/dist/index.js ADDED
@@ -0,0 +1,582 @@
1
+ import { p as useRef, q as useEffect, r as useState, t as themeRegistry, s as useTheme, v as getPresetWithMode, w as alpha, x as defaultRadiusTokens, y as defaultSizeTokens, z as defaultSpacingTokens, E as createTextStyleTokens, F as registerBuiltins } from "./TransformOriginView-CO-tJCmV.js";
2
+ import { A, a, B, C, b, $, b9, K, V, X, Y, D, c, d, a0, aP, be, I, f, L, M, N, g, P, R, h, m, i, ba, S, k, l, n, bb, aO, aR, aQ, T, o, aS, W, b6, br, a1, bs, j, a3, a4, aK, a5, a6, a7, a8, a9, e, aa, ab, ac, ad, ae, af, ag, ah, ai, aj, bo, aI, ak, al, am, an, bj, bk, bz, aG, ax, bp, bt, bu, bq, ao, bv, U, aJ, b1, b2, bl, bf, aF, a$, b0, b7, bm, bn, aH, bw, aL, O, O as O2, aX, aY, aD, G, H, J, bg, bh, bx, aN, b5, by, aE, aA, ay, az, a2, bi, au, av, aZ, a_, Z, aT, aU, b3, b4, aM, b8, as, aq, _, u, ar, aw, aB, aC, at, bc, bd, aV, aW, Q, ap } from "./TransformOriginView-CO-tJCmV.js";
3
+ import { Fragment, jsx, jsxs } from "./jsx-runtime.js";
4
+ import { computed } from "@preact/signals-core";
5
+ function useFX(ref) {
6
+ const activeEffectsRef = useRef(/* @__PURE__ */ new Set());
7
+ useEffect(() => {
8
+ return () => {
9
+ activeEffectsRef.current.forEach((cleanup) => {
10
+ if (typeof cleanup === "function") {
11
+ cleanup();
12
+ } else if (cleanup?.destroy) {
13
+ cleanup.destroy();
14
+ }
15
+ });
16
+ activeEffectsRef.current.clear();
17
+ };
18
+ }, []);
19
+ const applyFX = (fxCreator, config, type = "post") => {
20
+ const obj = ref.current;
21
+ if (!obj) {
22
+ console.warn("[useFX] No object found in ref");
23
+ return;
24
+ }
25
+ const cleanupOrController = fxCreator(obj, config, type);
26
+ if (cleanupOrController) {
27
+ activeEffectsRef.current.add(cleanupOrController);
28
+ }
29
+ };
30
+ const clearFX = () => {
31
+ activeEffectsRef.current.forEach((cleanup) => {
32
+ if (typeof cleanup === "function") {
33
+ cleanup();
34
+ } else if (cleanup?.destroy) {
35
+ cleanup.destroy();
36
+ }
37
+ });
38
+ activeEffectsRef.current.clear();
39
+ const obj = ref.current;
40
+ if (obj && "postFX" in obj && obj.postFX) {
41
+ obj.postFX.clear();
42
+ }
43
+ if (obj && "preFX" in obj && obj.preFX) {
44
+ obj.preFX.clear();
45
+ }
46
+ };
47
+ return { applyFX, clearFX };
48
+ }
49
+ const createBlurFX = (obj, config, type = "post") => {
50
+ const { quality = 0, x = 2, y = 2, strength = 1, color = 16777215, steps = 4 } = config;
51
+ const pipeline = type === "post" ? obj.postFX : obj.preFX;
52
+ if (!pipeline) {
53
+ console.warn("[createBlurFX] FX pipeline not available on this GameObject");
54
+ return null;
55
+ }
56
+ const blur = pipeline.addBlur(quality, x, y, strength, color, steps);
57
+ return blur;
58
+ };
59
+ const createColorMatrixFX = (obj, config, type = "post") => {
60
+ const { effect = "grayscale", amount = 1 } = config;
61
+ const pipeline = type === "post" ? obj.postFX : obj.preFX;
62
+ if (!pipeline) {
63
+ console.warn("[createColorMatrixFX] FX pipeline not available on this GameObject");
64
+ return null;
65
+ }
66
+ const colorMatrix = pipeline.addColorMatrix();
67
+ switch (effect) {
68
+ case "grayscale":
69
+ colorMatrix.grayscale(amount);
70
+ break;
71
+ case "sepia":
72
+ colorMatrix.sepia();
73
+ break;
74
+ case "negative":
75
+ colorMatrix.negative();
76
+ break;
77
+ case "blackWhite":
78
+ colorMatrix.blackWhite();
79
+ break;
80
+ case "brown":
81
+ colorMatrix.brown();
82
+ break;
83
+ case "kodachrome":
84
+ colorMatrix.kodachrome();
85
+ break;
86
+ case "technicolor":
87
+ colorMatrix.technicolor();
88
+ break;
89
+ case "polaroid":
90
+ colorMatrix.polaroid();
91
+ break;
92
+ }
93
+ return colorMatrix;
94
+ };
95
+ const createGlowFX = (obj, config, type = "post") => {
96
+ const {
97
+ color = 16777215,
98
+ outerStrength = 4,
99
+ innerStrength = 0,
100
+ knockout = false,
101
+ quality = 0.1,
102
+ distance = 10
103
+ } = config;
104
+ const pipeline = type === "post" ? obj.postFX : obj.preFX;
105
+ if (!pipeline) {
106
+ console.warn("[createGlowFX] FX pipeline not available on this GameObject");
107
+ return null;
108
+ }
109
+ const glow = pipeline.addGlow(color, outerStrength, innerStrength, knockout, quality, distance);
110
+ return glow;
111
+ };
112
+ const createPixelateFX = (obj, config, type = "post") => {
113
+ const { amount = 1 } = config;
114
+ const pipeline = type === "post" ? obj.postFX : obj.preFX;
115
+ if (!pipeline) {
116
+ console.warn("[createPixelateFX] FX pipeline not available on this GameObject");
117
+ return null;
118
+ }
119
+ const pixelate = pipeline.addPixelate(amount);
120
+ return pixelate;
121
+ };
122
+ const createShadowFX = (obj, config, type = "post") => {
123
+ const {
124
+ x = 0,
125
+ y = 1,
126
+ decay = 0.05,
127
+ power = 1,
128
+ color = 0,
129
+ samples = 6,
130
+ intensity = 1
131
+ } = config;
132
+ const pipeline = type === "post" ? obj.postFX : obj.preFX;
133
+ if (!pipeline) {
134
+ console.warn("[createShadowFX] FX pipeline not available on this GameObject");
135
+ return null;
136
+ }
137
+ const shadow = pipeline.addShadow(x, y, decay, power, color, samples, intensity);
138
+ return shadow;
139
+ };
140
+ const createVignetteFX = (obj, config, type = "post") => {
141
+ const { strength = 0.5, radius = 0.5, x = 0.5, y = 0.5 } = config;
142
+ const pipeline = type === "post" ? obj.postFX : obj.preFX;
143
+ if (!pipeline) {
144
+ console.warn("[createVignetteFX] FX pipeline not available on this GameObject");
145
+ return null;
146
+ }
147
+ const vignette = pipeline.addVignette(x, y, radius, strength);
148
+ return vignette;
149
+ };
150
+ const FX_REGISTRY = {
151
+ shadow: createShadowFX,
152
+ glow: createGlowFX,
153
+ blur: createBlurFX,
154
+ pixelate: createPixelateFX,
155
+ vignette: createVignetteFX,
156
+ grayscale: (obj, config, type) => createColorMatrixFX(obj, { ...config, effect: "grayscale" }, type),
157
+ sepia: (obj, config, type) => createColorMatrixFX(obj, { ...config, effect: "sepia" }, type),
158
+ negative: (obj, config, type) => createColorMatrixFX(obj, { ...config, effect: "negative" }, type),
159
+ blackWhite: (obj, config, type) => createColorMatrixFX(obj, { ...config, effect: "blackWhite" }, type),
160
+ brown: (obj, config, type) => createColorMatrixFX(obj, { ...config, effect: "brown" }, type),
161
+ kodachrome: (obj, config, type) => createColorMatrixFX(obj, { ...config, effect: "kodachrome" }, type),
162
+ technicolor: (obj, config, type) => createColorMatrixFX(obj, { ...config, effect: "technicolor" }, type),
163
+ polaroid: (obj, config, type) => createColorMatrixFX(obj, { ...config, effect: "polaroid" }, type)
164
+ };
165
+ const DEFAULT_FX = "grayscale";
166
+ function resolveFX(fxOrName) {
167
+ if (typeof fxOrName === "function") {
168
+ return fxOrName;
169
+ }
170
+ return FX_REGISTRY[fxOrName] ?? null;
171
+ }
172
+ function applyFXByName(applyFXFn, fxName, config = {}) {
173
+ const creator = resolveFX(fxName);
174
+ if (creator) {
175
+ applyFXFn(creator, config);
176
+ } else {
177
+ console.warn(`[applyFXByName] FX "${fxName}" not found in registry`);
178
+ }
179
+ }
180
+ function useBlur(ref, config = {}) {
181
+ const { applyFX, clearFX } = useFX(ref);
182
+ useEffect(() => {
183
+ if (!ref.current) return;
184
+ clearFX();
185
+ applyFX(createBlurFX, config);
186
+ return () => clearFX();
187
+ }, [ref, config, applyFX, clearFX]);
188
+ return { clearFX };
189
+ }
190
+ function useGlow(ref, config = {}) {
191
+ const { applyFX, clearFX } = useFX(ref);
192
+ useEffect(() => {
193
+ if (!ref.current) return;
194
+ clearFX();
195
+ applyFX(createGlowFX, config);
196
+ return () => clearFX();
197
+ }, [ref, config, applyFX, clearFX]);
198
+ return { clearFX };
199
+ }
200
+ function useShadow(ref, config = {}) {
201
+ const { applyFX, clearFX } = useFX(ref);
202
+ useEffect(() => {
203
+ if (!ref.current) return;
204
+ clearFX();
205
+ applyFX(createShadowFX, config);
206
+ return () => clearFX();
207
+ }, [ref, config, applyFX, clearFX]);
208
+ return { clearFX };
209
+ }
210
+ function setMemoSafe(vnode, value) {
211
+ if (Object.isExtensible(vnode)) {
212
+ vnode.__memo = value;
213
+ return vnode;
214
+ }
215
+ return { ...vnode, __memo: value };
216
+ }
217
+ function noMemo(vnode) {
218
+ return setMemoSafe(vnode, false);
219
+ }
220
+ function memo(vnode) {
221
+ return setMemoSafe(vnode, true);
222
+ }
223
+ function useColorMode() {
224
+ const [colorMode, setColorModeState] = useState(themeRegistry.getColorMode());
225
+ useEffect(() => {
226
+ const unsubscribe = themeRegistry.subscribe(() => {
227
+ setColorModeState(themeRegistry.getColorMode());
228
+ });
229
+ return unsubscribe;
230
+ }, []);
231
+ const setColorMode = (mode) => {
232
+ themeRegistry.setColorMode(mode);
233
+ };
234
+ const toggleColorMode = () => {
235
+ const newMode = colorMode === "light" ? "dark" : "light";
236
+ setColorMode(newMode);
237
+ };
238
+ return {
239
+ colorMode,
240
+ setColorMode,
241
+ toggleColorMode
242
+ };
243
+ }
244
+ function useColors() {
245
+ const localTheme = useTheme();
246
+ const getInitialColors = () => {
247
+ if (localTheme?.__colorPreset) {
248
+ const preset = getPresetWithMode(
249
+ localTheme.__colorPreset.name,
250
+ localTheme.__colorPreset.mode ?? "light"
251
+ );
252
+ return preset.colors;
253
+ }
254
+ return themeRegistry.getColorTokens();
255
+ };
256
+ const [colors, setColors] = useState(getInitialColors());
257
+ const [, forceUpdate] = useState(0);
258
+ useEffect(() => {
259
+ const unsubscribe = themeRegistry.subscribe(() => {
260
+ if (localTheme?.__colorPreset) {
261
+ const currentMode = themeRegistry.getColorMode();
262
+ const preset = getPresetWithMode(
263
+ localTheme.__colorPreset.name,
264
+ currentMode
265
+ );
266
+ setColors(preset.colors);
267
+ } else {
268
+ setColors(themeRegistry.getColorTokens());
269
+ }
270
+ forceUpdate((n2) => n2 + 1);
271
+ });
272
+ return unsubscribe;
273
+ }, [localTheme]);
274
+ return colors;
275
+ }
276
+ function useThemeSubscription() {
277
+ const [, forceUpdate] = useState(0);
278
+ useEffect(() => {
279
+ const unsubscribe = themeRegistry.subscribe(() => {
280
+ forceUpdate((n2) => n2 + 1);
281
+ });
282
+ return unsubscribe;
283
+ }, []);
284
+ }
285
+ function colorsToTheme(colors, colorKey, options = {}) {
286
+ const { backgroundShade = "DEFAULT", borderShade = "dark", includeBorder = true } = options;
287
+ const result = {
288
+ backgroundColor: colors[colorKey][backgroundShade].toNumber()
289
+ };
290
+ if (includeBorder) {
291
+ result.borderColor = colors[colorKey][borderShade].toNumber();
292
+ }
293
+ return result;
294
+ }
295
+ function getTextColor(colors, shade = "DEFAULT", alphaValue) {
296
+ const color = colors.text[shade];
297
+ return alphaValue !== void 0 ? alpha(color.toNumber(), alphaValue) : color.toString();
298
+ }
299
+ function getBackgroundColor(colors, shade = "DEFAULT") {
300
+ return colors.background[shade].toNumber();
301
+ }
302
+ function getSurfaceColor(colors, shade = "DEFAULT") {
303
+ return colors.surface[shade].toNumber();
304
+ }
305
+ function getBorderColor(colors, shade = "DEFAULT") {
306
+ return colors.border[shade].toNumber();
307
+ }
308
+ themeRegistry.subscribe(() => {
309
+ updateColorTokensForMode();
310
+ });
311
+ function setColorPreset(presetName) {
312
+ const currentMode = themeRegistry.getColorMode();
313
+ const preset = getPresetWithMode(presetName, currentMode);
314
+ themeRegistry.setColorTokens(preset.colors);
315
+ themeRegistry.setCurrentPresetName(presetName);
316
+ }
317
+ function updateColorTokensForMode() {
318
+ const presetName = themeRegistry.getCurrentPresetName();
319
+ if (presetName) {
320
+ const currentMode = themeRegistry.getColorMode();
321
+ const preset = getPresetWithMode(presetName, currentMode);
322
+ themeRegistry.setColorTokens(preset.colors);
323
+ }
324
+ }
325
+ function getCurrentPreset() {
326
+ return themeRegistry.getCurrentPresetName();
327
+ }
328
+ function getAvailablePresets() {
329
+ return ["oceanBlue", "forestGreen", "midnight"];
330
+ }
331
+ function useThemeTokens() {
332
+ const localTheme = useTheme();
333
+ const getInitialTokens = () => {
334
+ if (localTheme?.__colorPreset) {
335
+ const preset = getPresetWithMode(
336
+ localTheme.__colorPreset.name,
337
+ localTheme.__colorPreset.mode ?? "light"
338
+ );
339
+ return {
340
+ colors: preset.colors,
341
+ textStyles: createTextStyleTokens(preset.colors.text.DEFAULT.toString()),
342
+ spacing: defaultSpacingTokens,
343
+ sizes: defaultSizeTokens,
344
+ radius: defaultRadiusTokens
345
+ };
346
+ }
347
+ const colors = themeRegistry.getColorTokens();
348
+ if (!colors) return void 0;
349
+ return {
350
+ colors,
351
+ textStyles: createTextStyleTokens(colors.text.DEFAULT.toString()),
352
+ spacing: defaultSpacingTokens,
353
+ sizes: defaultSizeTokens,
354
+ radius: defaultRadiusTokens
355
+ };
356
+ };
357
+ const [tokens, setTokens] = useState(getInitialTokens());
358
+ const [, forceUpdate] = useState(0);
359
+ useEffect(() => {
360
+ const unsubscribe = themeRegistry.subscribe(() => {
361
+ if (localTheme?.__colorPreset) {
362
+ const currentMode = themeRegistry.getColorMode();
363
+ const preset = getPresetWithMode(
364
+ localTheme.__colorPreset.name,
365
+ currentMode
366
+ );
367
+ setTokens({
368
+ colors: preset.colors,
369
+ textStyles: createTextStyleTokens(preset.colors.text.DEFAULT.toString()),
370
+ spacing: defaultSpacingTokens,
371
+ sizes: defaultSizeTokens,
372
+ radius: defaultRadiusTokens
373
+ });
374
+ } else {
375
+ const colors = themeRegistry.getColorTokens();
376
+ if (colors) {
377
+ setTokens({
378
+ colors,
379
+ textStyles: createTextStyleTokens(colors.text.DEFAULT.toString()),
380
+ spacing: defaultSpacingTokens,
381
+ sizes: defaultSizeTokens,
382
+ radius: defaultRadiusTokens
383
+ });
384
+ }
385
+ }
386
+ forceUpdate((n2) => n2 + 1);
387
+ });
388
+ return unsubscribe;
389
+ }, [localTheme]);
390
+ return tokens;
391
+ }
392
+ registerBuiltins();
393
+ export {
394
+ A as Accordion,
395
+ a as AlertDialog,
396
+ B as Button,
397
+ C as CharText,
398
+ b as CharTextInput,
399
+ $ as DEFAULT_EFFECT,
400
+ DEFAULT_FX,
401
+ b9 as DEFAULT_SPRING_CONFIG,
402
+ K as DOMInputElement,
403
+ V as DebugLogger,
404
+ X as DevConfig,
405
+ Y as DevPresets,
406
+ D as Dialog,
407
+ c as Divider,
408
+ d as Dropdown,
409
+ a0 as EFFECT_REGISTRY,
410
+ FX_REGISTRY,
411
+ Fragment,
412
+ aP as Graphics,
413
+ be as HexColor,
414
+ I as Icon,
415
+ f as Image,
416
+ L as KeyboardInputManager,
417
+ M as Modal,
418
+ N as NineSlice,
419
+ g as NineSliceButton,
420
+ P as Portal,
421
+ R as RadioButton,
422
+ h as RadioGroup,
423
+ m as RangeSlider,
424
+ i as RefOriginView,
425
+ ba as SPRING_PRESETS,
426
+ S as ScrollSlider,
427
+ k as ScrollView,
428
+ l as Sidebar,
429
+ n as Slider,
430
+ bb as SpringPhysics,
431
+ aO as Sprite,
432
+ aR as Text,
433
+ aQ as TileSprite,
434
+ T as Toggle,
435
+ o as TransformOriginView,
436
+ aS as View,
437
+ W as WrapText,
438
+ alpha,
439
+ b6 as animatedSignal,
440
+ br as applyDarkMode,
441
+ a1 as applyEffectByName,
442
+ applyFXByName,
443
+ bs as applyLightMode,
444
+ j as calculateSliderSize,
445
+ colorsToTheme,
446
+ computed,
447
+ createBlurFX,
448
+ a3 as createBounceEffect,
449
+ a4 as createBreatheEffect,
450
+ createColorMatrixFX,
451
+ aK as createElement,
452
+ a5 as createFadeEffect,
453
+ a6 as createFlashEffect,
454
+ a7 as createFlipInEffect,
455
+ a8 as createFlipOutEffect,
456
+ a9 as createFloatEffect,
457
+ createGlowFX,
458
+ e as createIconComponent,
459
+ aa as createJelloEffect,
460
+ ab as createNoneEffect,
461
+ createPixelateFX,
462
+ ac as createPressEffect,
463
+ ad as createPulseEffect,
464
+ createShadowFX,
465
+ ae as createShakeEffect,
466
+ af as createSlideInEffect,
467
+ ag as createSlideOutEffect,
468
+ ah as createSpinEffect,
469
+ ai as createSwingEffect,
470
+ aj as createTadaEffect,
471
+ bo as createTextStyle,
472
+ createTextStyleTokens,
473
+ aI as createTheme,
474
+ createVignetteFX,
475
+ ak as createWiggleEffect,
476
+ al as createWobbleEffect,
477
+ am as createZoomInEffect,
478
+ an as createZoomOutEffect,
479
+ bj as darken,
480
+ bk as darkenHex,
481
+ defaultRadiusTokens,
482
+ defaultSizeTokens,
483
+ defaultSpacingTokens,
484
+ bz as defaultTextStyleTokens,
485
+ aG as defaultTheme,
486
+ ax as disposeCtx,
487
+ bp as ensureContrast,
488
+ bt as forestGreenPreset,
489
+ bu as generateColorScale,
490
+ getAvailablePresets,
491
+ getBackgroundColor,
492
+ getBorderColor,
493
+ bq as getContrastRatio,
494
+ ao as getCurrent,
495
+ getCurrentPreset,
496
+ bv as getPreset,
497
+ getPresetWithMode,
498
+ U as getRenderContext,
499
+ getSurfaceColor,
500
+ getTextColor,
501
+ aJ as getThemedProps,
502
+ b1 as graphicsCreator,
503
+ b2 as graphicsPatcher,
504
+ bl as hex,
505
+ bf as hexToNumber,
506
+ aF as host,
507
+ a$ as imageCreator,
508
+ b0 as imagePatcher,
509
+ b7 as isAnimatedSignal,
510
+ jsx,
511
+ jsxs,
512
+ bm as lighten,
513
+ bn as lightenHex,
514
+ memo,
515
+ aH as mergeThemes,
516
+ bw as midnightPreset,
517
+ aL as mount,
518
+ O as mountComponent,
519
+ O2 as mountJSX,
520
+ aX as nineSliceCreator,
521
+ aY as nineSlicePatcher,
522
+ noMemo,
523
+ aD as nodeRegistry,
524
+ G as normalizeCornerRadius,
525
+ H as normalizeEdgeInsets,
526
+ J as normalizeGap,
527
+ bg as numberToHex,
528
+ bh as numberToRgb,
529
+ bx as oceanBluePreset,
530
+ aN as patchVNode,
531
+ b5 as portalRegistry,
532
+ by as presets,
533
+ aE as register,
534
+ registerBuiltins,
535
+ aA as releaseAllSVGTextures,
536
+ ay as releaseSVGTexture,
537
+ az as releaseSVGTextures,
538
+ a2 as resolveEffect,
539
+ resolveFX,
540
+ bi as rgbToNumber,
541
+ setColorPreset,
542
+ au as shallowEqual,
543
+ av as shouldComponentUpdate,
544
+ aZ as spriteCreator,
545
+ a_ as spritePatcher,
546
+ Z as svgToTexture,
547
+ aT as textCreator,
548
+ aU as textPatcher,
549
+ themeRegistry,
550
+ b3 as tileSpriteCreator,
551
+ b4 as tileSpritePatcher,
552
+ aM as unmount,
553
+ b8 as unwrapSignal,
554
+ useBlur,
555
+ as as useCallback,
556
+ useColorMode,
557
+ useColors,
558
+ useEffect,
559
+ useFX,
560
+ aq as useForceRedraw,
561
+ _ as useGameObjectEffect,
562
+ useGlow,
563
+ u as useIconPreload,
564
+ ar as useMemo,
565
+ aw as useRedraw,
566
+ useRef,
567
+ aB as useSVGTexture,
568
+ aC as useSVGTextures,
569
+ at as useScene,
570
+ useShadow,
571
+ bc as useSpring,
572
+ bd as useSprings,
573
+ useState,
574
+ useTheme,
575
+ useThemeSubscription,
576
+ useThemeTokens,
577
+ aV as viewCreator,
578
+ aW as viewPatcher,
579
+ Q as viewportRegistry,
580
+ ap as withHooks
581
+ };
582
+ //# sourceMappingURL=index.js.map