@number10/jsx-phaser 5.0.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 (689) hide show
  1. package/LICENSE +667 -0
  2. package/README.md +44 -0
  3. package/dist/_virtual/_commonjsHelpers.cjs +7 -0
  4. package/dist/_virtual/_commonjsHelpers.cjs.map +1 -0
  5. package/dist/_virtual/_commonjsHelpers.js +7 -0
  6. package/dist/_virtual/_commonjsHelpers.js.map +1 -0
  7. package/dist/_virtual/index.cjs +7 -0
  8. package/dist/_virtual/index.cjs.map +1 -0
  9. package/dist/_virtual/index.js +8 -0
  10. package/dist/_virtual/index.js.map +1 -0
  11. package/dist/animation/index.d.ts +7 -0
  12. package/dist/animation/index.d.ts.map +1 -0
  13. package/dist/camera/index.d.ts +5 -0
  14. package/dist/camera/index.d.ts.map +1 -0
  15. package/dist/camera/use-camera-fx.cjs +49 -0
  16. package/dist/camera/use-camera-fx.cjs.map +1 -0
  17. package/dist/camera/use-camera-fx.d.ts +25 -0
  18. package/dist/camera/use-camera-fx.d.ts.map +1 -0
  19. package/dist/camera/use-camera-fx.js +49 -0
  20. package/dist/camera/use-camera-fx.js.map +1 -0
  21. package/dist/clip/index.cjs +8 -0
  22. package/dist/clip/index.cjs.map +1 -0
  23. package/dist/clip/index.d.ts +3 -0
  24. package/dist/clip/index.d.ts.map +1 -0
  25. package/dist/clip/index.js +9 -0
  26. package/dist/clip/index.js.map +1 -0
  27. package/dist/clip/stencil-clip-depth.cjs +24 -0
  28. package/dist/clip/stencil-clip-depth.cjs.map +1 -0
  29. package/dist/clip/stencil-clip-depth.d.ts +10 -0
  30. package/dist/clip/stencil-clip-depth.d.ts.map +1 -0
  31. package/dist/clip/stencil-clip-depth.js +24 -0
  32. package/dist/clip/stencil-clip-depth.js.map +1 -0
  33. package/dist/clip/stencil-clip-extension.cjs +113 -0
  34. package/dist/clip/stencil-clip-extension.cjs.map +1 -0
  35. package/dist/clip/stencil-clip-extension.d.ts +18 -0
  36. package/dist/clip/stencil-clip-extension.d.ts.map +1 -0
  37. package/dist/clip/stencil-clip-extension.js +96 -0
  38. package/dist/clip/stencil-clip-extension.js.map +1 -0
  39. package/dist/clip/stencil-clip-fbo-bridge.cjs +46 -0
  40. package/dist/clip/stencil-clip-fbo-bridge.cjs.map +1 -0
  41. package/dist/clip/stencil-clip-fbo-bridge.d.ts +7 -0
  42. package/dist/clip/stencil-clip-fbo-bridge.d.ts.map +1 -0
  43. package/dist/clip/stencil-clip-fbo-bridge.js +46 -0
  44. package/dist/clip/stencil-clip-fbo-bridge.js.map +1 -0
  45. package/dist/clip/stencil-clip-renderer.cjs +300 -0
  46. package/dist/clip/stencil-clip-renderer.cjs.map +1 -0
  47. package/dist/clip/stencil-clip-renderer.d.ts +7 -0
  48. package/dist/clip/stencil-clip-renderer.d.ts.map +1 -0
  49. package/dist/clip/stencil-clip-renderer.js +300 -0
  50. package/dist/clip/stencil-clip-renderer.js.map +1 -0
  51. package/dist/clip/stencil-clip-state.cjs +84 -0
  52. package/dist/clip/stencil-clip-state.cjs.map +1 -0
  53. package/dist/clip/stencil-clip-state.d.ts +28 -0
  54. package/dist/clip/stencil-clip-state.d.ts.map +1 -0
  55. package/dist/clip/stencil-clip-state.js +84 -0
  56. package/dist/clip/stencil-clip-state.js.map +1 -0
  57. package/dist/clip/stencil-clip-types.d.ts +67 -0
  58. package/dist/clip/stencil-clip-types.d.ts.map +1 -0
  59. package/dist/clip/stencil-clip.cjs +138 -0
  60. package/dist/clip/stencil-clip.cjs.map +1 -0
  61. package/dist/clip/stencil-clip.d.ts +53 -0
  62. package/dist/clip/stencil-clip.d.ts.map +1 -0
  63. package/dist/clip/stencil-clip.js +122 -0
  64. package/dist/clip/stencil-clip.js.map +1 -0
  65. package/dist/colors/use-color-mode.cjs +28 -0
  66. package/dist/colors/use-color-mode.cjs.map +1 -0
  67. package/dist/colors/use-color-mode.d.ts +22 -0
  68. package/dist/colors/use-color-mode.d.ts.map +1 -0
  69. package/dist/colors/use-color-mode.js +28 -0
  70. package/dist/colors/use-color-mode.js.map +1 -0
  71. package/dist/colors/use-colors.cjs +45 -0
  72. package/dist/colors/use-colors.cjs.map +1 -0
  73. package/dist/colors/use-colors.d.ts +36 -0
  74. package/dist/colors/use-colors.d.ts.map +1 -0
  75. package/dist/colors/use-colors.js +45 -0
  76. package/dist/colors/use-colors.js.map +1 -0
  77. package/dist/components/DebugPanel.cjs +88 -0
  78. package/dist/components/DebugPanel.cjs.map +1 -0
  79. package/dist/components/DebugPanel.d.ts +45 -0
  80. package/dist/components/DebugPanel.d.ts.map +1 -0
  81. package/dist/components/DebugPanel.js +71 -0
  82. package/dist/components/DebugPanel.js.map +1 -0
  83. package/dist/components/appliers/applyBackground.cjs +89 -0
  84. package/dist/components/appliers/applyBackground.cjs.map +1 -0
  85. package/dist/components/appliers/applyBackground.d.ts +18 -0
  86. package/dist/components/appliers/applyBackground.d.ts.map +1 -0
  87. package/dist/components/appliers/applyBackground.js +89 -0
  88. package/dist/components/appliers/applyBackground.js.map +1 -0
  89. package/dist/components/appliers/applyGestures.cjs +85 -0
  90. package/dist/components/appliers/applyGestures.cjs.map +1 -0
  91. package/dist/components/appliers/applyGestures.d.ts +12 -0
  92. package/dist/components/appliers/applyGestures.d.ts.map +1 -0
  93. package/dist/components/appliers/applyGestures.js +68 -0
  94. package/dist/components/appliers/applyGestures.js.map +1 -0
  95. package/dist/components/appliers/applyGraphics.cjs +21 -0
  96. package/dist/components/appliers/applyGraphics.cjs.map +1 -0
  97. package/dist/components/appliers/applyGraphics.d.ts +13 -0
  98. package/dist/components/appliers/applyGraphics.d.ts.map +1 -0
  99. package/dist/components/appliers/applyGraphics.js +21 -0
  100. package/dist/components/appliers/applyGraphics.js.map +1 -0
  101. package/dist/components/appliers/applyGraphicsLayout.cjs +18 -0
  102. package/dist/components/appliers/applyGraphicsLayout.cjs.map +1 -0
  103. package/dist/components/appliers/applyGraphicsLayout.d.ts +13 -0
  104. package/dist/components/appliers/applyGraphicsLayout.d.ts.map +1 -0
  105. package/dist/components/appliers/applyGraphicsLayout.js +18 -0
  106. package/dist/components/appliers/applyGraphicsLayout.js.map +1 -0
  107. package/dist/components/appliers/applyImage.cjs +92 -0
  108. package/dist/components/appliers/applyImage.cjs.map +1 -0
  109. package/dist/components/appliers/applyImage.d.ts +47 -0
  110. package/dist/components/appliers/applyImage.d.ts.map +1 -0
  111. package/dist/components/appliers/applyImage.js +92 -0
  112. package/dist/components/appliers/applyImage.js.map +1 -0
  113. package/dist/components/appliers/applyImageLayout.cjs +18 -0
  114. package/dist/components/appliers/applyImageLayout.cjs.map +1 -0
  115. package/dist/components/appliers/applyImageLayout.d.ts +18 -0
  116. package/dist/components/appliers/applyImageLayout.d.ts.map +1 -0
  117. package/dist/components/appliers/applyImageLayout.js +18 -0
  118. package/dist/components/appliers/applyImageLayout.js.map +1 -0
  119. package/dist/components/appliers/applyLayout.cjs +108 -0
  120. package/dist/components/appliers/applyLayout.cjs.map +1 -0
  121. package/dist/components/appliers/applyLayout.d.ts +19 -0
  122. package/dist/components/appliers/applyLayout.d.ts.map +1 -0
  123. package/dist/components/appliers/applyLayout.js +91 -0
  124. package/dist/components/appliers/applyLayout.js.map +1 -0
  125. package/dist/components/appliers/applyNineSlice.cjs +37 -0
  126. package/dist/components/appliers/applyNineSlice.cjs.map +1 -0
  127. package/dist/components/appliers/applyNineSlice.d.ts +14 -0
  128. package/dist/components/appliers/applyNineSlice.d.ts.map +1 -0
  129. package/dist/components/appliers/applyNineSlice.js +37 -0
  130. package/dist/components/appliers/applyNineSlice.js.map +1 -0
  131. package/dist/components/appliers/applyNineSliceLayout.cjs +18 -0
  132. package/dist/components/appliers/applyNineSliceLayout.cjs.map +1 -0
  133. package/dist/components/appliers/applyNineSliceLayout.d.ts +18 -0
  134. package/dist/components/appliers/applyNineSliceLayout.d.ts.map +1 -0
  135. package/dist/components/appliers/applyNineSliceLayout.js +18 -0
  136. package/dist/components/appliers/applyNineSliceLayout.js.map +1 -0
  137. package/dist/components/appliers/applyParticles.cjs +46 -0
  138. package/dist/components/appliers/applyParticles.cjs.map +1 -0
  139. package/dist/components/appliers/applyParticles.d.ts +7 -0
  140. package/dist/components/appliers/applyParticles.d.ts.map +1 -0
  141. package/dist/components/appliers/applyParticles.js +46 -0
  142. package/dist/components/appliers/applyParticles.js.map +1 -0
  143. package/dist/components/appliers/applyParticlesLayout.cjs +7 -0
  144. package/dist/components/appliers/applyParticlesLayout.cjs.map +1 -0
  145. package/dist/components/appliers/applyParticlesLayout.d.ts +11 -0
  146. package/dist/components/appliers/applyParticlesLayout.d.ts.map +1 -0
  147. package/dist/components/appliers/applyParticlesLayout.js +7 -0
  148. package/dist/components/appliers/applyParticlesLayout.js.map +1 -0
  149. package/dist/components/appliers/applyPhaser.cjs +40 -0
  150. package/dist/components/appliers/applyPhaser.cjs.map +1 -0
  151. package/dist/components/appliers/applyPhaser.d.ts +24 -0
  152. package/dist/components/appliers/applyPhaser.d.ts.map +1 -0
  153. package/dist/components/appliers/applyPhaser.js +40 -0
  154. package/dist/components/appliers/applyPhaser.js.map +1 -0
  155. package/dist/components/appliers/applySprite.cjs +124 -0
  156. package/dist/components/appliers/applySprite.cjs.map +1 -0
  157. package/dist/components/appliers/applySprite.d.ts +13 -0
  158. package/dist/components/appliers/applySprite.d.ts.map +1 -0
  159. package/dist/components/appliers/applySprite.js +124 -0
  160. package/dist/components/appliers/applySprite.js.map +1 -0
  161. package/dist/components/appliers/applySpriteLayout.cjs +7 -0
  162. package/dist/components/appliers/applySpriteLayout.cjs.map +1 -0
  163. package/dist/components/appliers/applySpriteLayout.d.ts +17 -0
  164. package/dist/components/appliers/applySpriteLayout.d.ts.map +1 -0
  165. package/dist/components/appliers/applySpriteLayout.js +7 -0
  166. package/dist/components/appliers/applySpriteLayout.js.map +1 -0
  167. package/dist/components/appliers/applyText.cjs +142 -0
  168. package/dist/components/appliers/applyText.cjs.map +1 -0
  169. package/dist/components/appliers/applyText.d.ts +32 -0
  170. package/dist/components/appliers/applyText.d.ts.map +1 -0
  171. package/dist/components/appliers/applyText.js +142 -0
  172. package/dist/components/appliers/applyText.js.map +1 -0
  173. package/dist/components/appliers/applyTextLayout.cjs +16 -0
  174. package/dist/components/appliers/applyTextLayout.cjs.map +1 -0
  175. package/dist/components/appliers/applyTextLayout.d.ts +18 -0
  176. package/dist/components/appliers/applyTextLayout.d.ts.map +1 -0
  177. package/dist/components/appliers/applyTextLayout.js +16 -0
  178. package/dist/components/appliers/applyTextLayout.js.map +1 -0
  179. package/dist/components/appliers/applyTooltip.cjs +247 -0
  180. package/dist/components/appliers/applyTooltip.cjs.map +1 -0
  181. package/dist/components/appliers/applyTooltip.d.ts +16 -0
  182. package/dist/components/appliers/applyTooltip.d.ts.map +1 -0
  183. package/dist/components/appliers/applyTooltip.js +247 -0
  184. package/dist/components/appliers/applyTooltip.js.map +1 -0
  185. package/dist/components/appliers/applyTransform.cjs +61 -0
  186. package/dist/components/appliers/applyTransform.cjs.map +1 -0
  187. package/dist/components/appliers/applyTransform.d.ts +24 -0
  188. package/dist/components/appliers/applyTransform.d.ts.map +1 -0
  189. package/dist/components/appliers/applyTransform.js +61 -0
  190. package/dist/components/appliers/applyTransform.js.map +1 -0
  191. package/dist/components/backgroundImage.cjs +411 -0
  192. package/dist/components/backgroundImage.cjs.map +1 -0
  193. package/dist/components/backgroundImage.d.ts +14 -0
  194. package/dist/components/backgroundImage.d.ts.map +1 -0
  195. package/dist/components/backgroundImage.js +411 -0
  196. package/dist/components/backgroundImage.js.map +1 -0
  197. package/dist/components/creators/createBackground.cjs +18 -0
  198. package/dist/components/creators/createBackground.cjs.map +1 -0
  199. package/dist/components/creators/createBackground.d.ts +20 -0
  200. package/dist/components/creators/createBackground.d.ts.map +1 -0
  201. package/dist/components/creators/createBackground.js +18 -0
  202. package/dist/components/creators/createBackground.js.map +1 -0
  203. package/dist/components/creators/createGestures.cjs +51 -0
  204. package/dist/components/creators/createGestures.cjs.map +1 -0
  205. package/dist/components/creators/createGestures.d.ts +11 -0
  206. package/dist/components/creators/createGestures.d.ts.map +1 -0
  207. package/dist/components/creators/createGestures.js +34 -0
  208. package/dist/components/creators/createGestures.js.map +1 -0
  209. package/dist/components/creators/createGraphicsLayout.cjs +24 -0
  210. package/dist/components/creators/createGraphicsLayout.cjs.map +1 -0
  211. package/dist/components/creators/createGraphicsLayout.d.ts +12 -0
  212. package/dist/components/creators/createGraphicsLayout.d.ts.map +1 -0
  213. package/dist/components/creators/createGraphicsLayout.js +24 -0
  214. package/dist/components/creators/createGraphicsLayout.js.map +1 -0
  215. package/dist/components/creators/createImageLayout.cjs +16 -0
  216. package/dist/components/creators/createImageLayout.cjs.map +1 -0
  217. package/dist/components/creators/createImageLayout.d.ts +17 -0
  218. package/dist/components/creators/createImageLayout.d.ts.map +1 -0
  219. package/dist/components/creators/createImageLayout.js +16 -0
  220. package/dist/components/creators/createImageLayout.js.map +1 -0
  221. package/dist/components/creators/createLayout.cjs +61 -0
  222. package/dist/components/creators/createLayout.cjs.map +1 -0
  223. package/dist/components/creators/createLayout.d.ts +15 -0
  224. package/dist/components/creators/createLayout.d.ts.map +1 -0
  225. package/dist/components/creators/createLayout.js +61 -0
  226. package/dist/components/creators/createLayout.js.map +1 -0
  227. package/dist/components/creators/createNineSliceLayout.cjs +16 -0
  228. package/dist/components/creators/createNineSliceLayout.cjs.map +1 -0
  229. package/dist/components/creators/createNineSliceLayout.d.ts +17 -0
  230. package/dist/components/creators/createNineSliceLayout.d.ts.map +1 -0
  231. package/dist/components/creators/createNineSliceLayout.js +16 -0
  232. package/dist/components/creators/createNineSliceLayout.js.map +1 -0
  233. package/dist/components/creators/createParticlesLayout.cjs +8 -0
  234. package/dist/components/creators/createParticlesLayout.cjs.map +1 -0
  235. package/dist/components/creators/createParticlesLayout.d.ts +14 -0
  236. package/dist/components/creators/createParticlesLayout.d.ts.map +1 -0
  237. package/dist/components/creators/createParticlesLayout.js +8 -0
  238. package/dist/components/creators/createParticlesLayout.js.map +1 -0
  239. package/dist/components/creators/createPhaser.cjs +36 -0
  240. package/dist/components/creators/createPhaser.cjs.map +1 -0
  241. package/dist/components/creators/createPhaser.d.ts +14 -0
  242. package/dist/components/creators/createPhaser.d.ts.map +1 -0
  243. package/dist/components/creators/createPhaser.js +36 -0
  244. package/dist/components/creators/createPhaser.js.map +1 -0
  245. package/dist/components/creators/createSpriteLayout.cjs +10 -0
  246. package/dist/components/creators/createSpriteLayout.cjs.map +1 -0
  247. package/dist/components/creators/createSpriteLayout.d.ts +18 -0
  248. package/dist/components/creators/createSpriteLayout.d.ts.map +1 -0
  249. package/dist/components/creators/createSpriteLayout.js +10 -0
  250. package/dist/components/creators/createSpriteLayout.js.map +1 -0
  251. package/dist/components/creators/createTextLayout.cjs +16 -0
  252. package/dist/components/creators/createTextLayout.cjs.map +1 -0
  253. package/dist/components/creators/createTextLayout.d.ts +17 -0
  254. package/dist/components/creators/createTextLayout.d.ts.map +1 -0
  255. package/dist/components/creators/createTextLayout.js +16 -0
  256. package/dist/components/creators/createTextLayout.js.map +1 -0
  257. package/dist/components/creators/createTransform.cjs +83 -0
  258. package/dist/components/creators/createTransform.cjs.map +1 -0
  259. package/dist/components/creators/createTransform.d.ts +26 -0
  260. package/dist/components/creators/createTransform.d.ts.map +1 -0
  261. package/dist/components/creators/createTransform.js +83 -0
  262. package/dist/components/creators/createTransform.js.map +1 -0
  263. package/dist/components/custom/Graphics.cjs +13 -0
  264. package/dist/components/custom/Graphics.cjs.map +1 -0
  265. package/dist/components/custom/Graphics.d.ts +50 -0
  266. package/dist/components/custom/Graphics.d.ts.map +1 -0
  267. package/dist/components/custom/Graphics.js +13 -0
  268. package/dist/components/custom/Graphics.js.map +1 -0
  269. package/dist/components/custom/NineSlice.cjs +13 -0
  270. package/dist/components/custom/NineSlice.cjs.map +1 -0
  271. package/dist/components/custom/NineSlice.d.ts +87 -0
  272. package/dist/components/custom/NineSlice.d.ts.map +1 -0
  273. package/dist/components/custom/NineSlice.js +13 -0
  274. package/dist/components/custom/NineSlice.js.map +1 -0
  275. package/dist/components/custom/Particles.cjs +8 -0
  276. package/dist/components/custom/Particles.cjs.map +1 -0
  277. package/dist/components/custom/Particles.d.ts +28 -0
  278. package/dist/components/custom/Particles.d.ts.map +1 -0
  279. package/dist/components/custom/Particles.js +8 -0
  280. package/dist/components/custom/Particles.js.map +1 -0
  281. package/dist/components/custom/RefOriginView.cjs +67 -0
  282. package/dist/components/custom/RefOriginView.cjs.map +1 -0
  283. package/dist/components/custom/RefOriginView.d.ts +49 -0
  284. package/dist/components/custom/RefOriginView.d.ts.map +1 -0
  285. package/dist/components/custom/RefOriginView.js +67 -0
  286. package/dist/components/custom/RefOriginView.js.map +1 -0
  287. package/dist/components/custom/Sprite.cjs +13 -0
  288. package/dist/components/custom/Sprite.cjs.map +1 -0
  289. package/dist/components/custom/Sprite.d.ts +79 -0
  290. package/dist/components/custom/Sprite.d.ts.map +1 -0
  291. package/dist/components/custom/Sprite.js +13 -0
  292. package/dist/components/custom/Sprite.js.map +1 -0
  293. package/dist/components/custom/TileSprite.cjs +13 -0
  294. package/dist/components/custom/TileSprite.cjs.map +1 -0
  295. package/dist/components/custom/TileSprite.d.ts +65 -0
  296. package/dist/components/custom/TileSprite.d.ts.map +1 -0
  297. package/dist/components/custom/TileSprite.js +13 -0
  298. package/dist/components/custom/TileSprite.js.map +1 -0
  299. package/dist/components/custom/index.d.ts +15 -0
  300. package/dist/components/custom/index.d.ts.map +1 -0
  301. package/dist/components/index.cjs +33 -0
  302. package/dist/components/index.cjs.map +1 -0
  303. package/dist/components/index.d.ts +11 -0
  304. package/dist/components/index.d.ts.map +1 -0
  305. package/dist/components/index.js +33 -0
  306. package/dist/components/index.js.map +1 -0
  307. package/dist/components/internal/SceneWrapper.cjs +10 -0
  308. package/dist/components/internal/SceneWrapper.cjs.map +1 -0
  309. package/dist/components/internal/SceneWrapper.d.ts +20 -0
  310. package/dist/components/internal/SceneWrapper.d.ts.map +1 -0
  311. package/dist/components/internal/SceneWrapper.js +10 -0
  312. package/dist/components/internal/SceneWrapper.js.map +1 -0
  313. package/dist/components/primitives/graphics.cjs +29 -0
  314. package/dist/components/primitives/graphics.cjs.map +1 -0
  315. package/dist/components/primitives/graphics.d.ts +146 -0
  316. package/dist/components/primitives/graphics.d.ts.map +1 -0
  317. package/dist/components/primitives/graphics.js +29 -0
  318. package/dist/components/primitives/graphics.js.map +1 -0
  319. package/dist/components/primitives/image.cjs +110 -0
  320. package/dist/components/primitives/image.cjs.map +1 -0
  321. package/dist/components/primitives/image.d.ts +170 -0
  322. package/dist/components/primitives/image.d.ts.map +1 -0
  323. package/dist/components/primitives/image.js +110 -0
  324. package/dist/components/primitives/image.js.map +1 -0
  325. package/dist/components/primitives/nineslice.cjs +42 -0
  326. package/dist/components/primitives/nineslice.cjs.map +1 -0
  327. package/dist/components/primitives/nineslice.d.ts +271 -0
  328. package/dist/components/primitives/nineslice.d.ts.map +1 -0
  329. package/dist/components/primitives/nineslice.js +42 -0
  330. package/dist/components/primitives/nineslice.js.map +1 -0
  331. package/dist/components/primitives/particles.cjs +77 -0
  332. package/dist/components/primitives/particles.cjs.map +1 -0
  333. package/dist/components/primitives/particles.d.ts +47 -0
  334. package/dist/components/primitives/particles.d.ts.map +1 -0
  335. package/dist/components/primitives/particles.js +77 -0
  336. package/dist/components/primitives/particles.js.map +1 -0
  337. package/dist/components/primitives/sprite.cjs +100 -0
  338. package/dist/components/primitives/sprite.cjs.map +1 -0
  339. package/dist/components/primitives/sprite.d.ts +147 -0
  340. package/dist/components/primitives/sprite.d.ts.map +1 -0
  341. package/dist/components/primitives/sprite.js +100 -0
  342. package/dist/components/primitives/sprite.js.map +1 -0
  343. package/dist/components/primitives/text.cjs +73 -0
  344. package/dist/components/primitives/text.cjs.map +1 -0
  345. package/dist/components/primitives/text.d.ts +155 -0
  346. package/dist/components/primitives/text.d.ts.map +1 -0
  347. package/dist/components/primitives/text.js +73 -0
  348. package/dist/components/primitives/text.js.map +1 -0
  349. package/dist/components/primitives/tilesprite.cjs +77 -0
  350. package/dist/components/primitives/tilesprite.cjs.map +1 -0
  351. package/dist/components/primitives/tilesprite.d.ts +157 -0
  352. package/dist/components/primitives/tilesprite.d.ts.map +1 -0
  353. package/dist/components/primitives/tilesprite.js +77 -0
  354. package/dist/components/primitives/tilesprite.js.map +1 -0
  355. package/dist/components/primitives/vectorDraw.cjs +73 -0
  356. package/dist/components/primitives/vectorDraw.cjs.map +1 -0
  357. package/dist/components/primitives/vectorDraw.d.ts +4 -0
  358. package/dist/components/primitives/vectorDraw.d.ts.map +1 -0
  359. package/dist/components/primitives/vectorDraw.js +73 -0
  360. package/dist/components/primitives/vectorDraw.js.map +1 -0
  361. package/dist/components/primitives/view.cjs +105 -0
  362. package/dist/components/primitives/view.cjs.map +1 -0
  363. package/dist/components/primitives/view.d.ts +23 -0
  364. package/dist/components/primitives/view.d.ts.map +1 -0
  365. package/dist/components/primitives/view.js +105 -0
  366. package/dist/components/primitives/view.js.map +1 -0
  367. package/dist/core-props.d.ts +105 -0
  368. package/dist/core-props.d.ts.map +1 -0
  369. package/dist/core-types.d.ts +71 -0
  370. package/dist/core-types.d.ts.map +1 -0
  371. package/dist/design-tokens/resolve-theme-tokens.cjs +27 -0
  372. package/dist/design-tokens/resolve-theme-tokens.cjs.map +1 -0
  373. package/dist/design-tokens/resolve-theme-tokens.d.ts +9 -0
  374. package/dist/design-tokens/resolve-theme-tokens.d.ts.map +1 -0
  375. package/dist/design-tokens/resolve-theme-tokens.js +27 -0
  376. package/dist/design-tokens/resolve-theme-tokens.js.map +1 -0
  377. package/dist/design-tokens/use-theme-tokens.cjs +26 -0
  378. package/dist/design-tokens/use-theme-tokens.cjs.map +1 -0
  379. package/dist/design-tokens/use-theme-tokens.d.ts +28 -0
  380. package/dist/design-tokens/use-theme-tokens.d.ts.map +1 -0
  381. package/dist/design-tokens/use-theme-tokens.js +26 -0
  382. package/dist/design-tokens/use-theme-tokens.js.map +1 -0
  383. package/dist/effects/index.d.ts +2 -0
  384. package/dist/effects/index.d.ts.map +1 -0
  385. package/dist/effects/phaser-effects-bridge.cjs +48 -0
  386. package/dist/effects/phaser-effects-bridge.cjs.map +1 -0
  387. package/dist/effects/phaser-effects-bridge.d.ts +2 -0
  388. package/dist/effects/phaser-effects-bridge.d.ts.map +1 -0
  389. package/dist/effects/phaser-effects-bridge.js +30 -0
  390. package/dist/effects/phaser-effects-bridge.js.map +1 -0
  391. package/dist/effects/use-effect.cjs +155 -0
  392. package/dist/effects/use-effect.cjs.map +1 -0
  393. package/dist/effects/use-effect.d.ts +30 -0
  394. package/dist/effects/use-effect.d.ts.map +1 -0
  395. package/dist/effects/use-effect.js +155 -0
  396. package/dist/effects/use-effect.js.map +1 -0
  397. package/dist/fx/convenience-hooks/index.d.ts +7 -0
  398. package/dist/fx/convenience-hooks/index.d.ts.map +1 -0
  399. package/dist/fx/convenience-hooks/use-blur.cjs +18 -0
  400. package/dist/fx/convenience-hooks/use-blur.cjs.map +1 -0
  401. package/dist/fx/convenience-hooks/use-blur.d.ts +21 -0
  402. package/dist/fx/convenience-hooks/use-blur.d.ts.map +1 -0
  403. package/dist/fx/convenience-hooks/use-blur.js +18 -0
  404. package/dist/fx/convenience-hooks/use-blur.js.map +1 -0
  405. package/dist/fx/convenience-hooks/use-glow.cjs +18 -0
  406. package/dist/fx/convenience-hooks/use-glow.cjs.map +1 -0
  407. package/dist/fx/convenience-hooks/use-glow.d.ts +21 -0
  408. package/dist/fx/convenience-hooks/use-glow.d.ts.map +1 -0
  409. package/dist/fx/convenience-hooks/use-glow.js +18 -0
  410. package/dist/fx/convenience-hooks/use-glow.js.map +1 -0
  411. package/dist/fx/convenience-hooks/use-shadow.cjs +18 -0
  412. package/dist/fx/convenience-hooks/use-shadow.cjs.map +1 -0
  413. package/dist/fx/convenience-hooks/use-shadow.d.ts +21 -0
  414. package/dist/fx/convenience-hooks/use-shadow.d.ts.map +1 -0
  415. package/dist/fx/convenience-hooks/use-shadow.js +18 -0
  416. package/dist/fx/convenience-hooks/use-shadow.js.map +1 -0
  417. package/dist/fx/fx-creators/blur.cjs +20 -0
  418. package/dist/fx/fx-creators/blur.cjs.map +1 -0
  419. package/dist/fx/fx-creators/blur.d.ts +37 -0
  420. package/dist/fx/fx-creators/blur.d.ts.map +1 -0
  421. package/dist/fx/fx-creators/blur.js +20 -0
  422. package/dist/fx/fx-creators/blur.js.map +1 -0
  423. package/dist/fx/fx-creators/color-matrix.cjs +47 -0
  424. package/dist/fx/fx-creators/color-matrix.cjs.map +1 -0
  425. package/dist/fx/fx-creators/color-matrix.d.ts +31 -0
  426. package/dist/fx/fx-creators/color-matrix.d.ts.map +1 -0
  427. package/dist/fx/fx-creators/color-matrix.js +47 -0
  428. package/dist/fx/fx-creators/color-matrix.js.map +1 -0
  429. package/dist/fx/fx-creators/glow.cjs +27 -0
  430. package/dist/fx/fx-creators/glow.cjs.map +1 -0
  431. package/dist/fx/fx-creators/glow.d.ts +36 -0
  432. package/dist/fx/fx-creators/glow.d.ts.map +1 -0
  433. package/dist/fx/fx-creators/glow.js +27 -0
  434. package/dist/fx/fx-creators/glow.js.map +1 -0
  435. package/dist/fx/fx-creators/index.d.ts +10 -0
  436. package/dist/fx/fx-creators/index.d.ts.map +1 -0
  437. package/dist/fx/fx-creators/pixelate.cjs +20 -0
  438. package/dist/fx/fx-creators/pixelate.cjs.map +1 -0
  439. package/dist/fx/fx-creators/pixelate.d.ts +24 -0
  440. package/dist/fx/fx-creators/pixelate.d.ts.map +1 -0
  441. package/dist/fx/fx-creators/pixelate.js +20 -0
  442. package/dist/fx/fx-creators/pixelate.js.map +1 -0
  443. package/dist/fx/fx-creators/shadow.cjs +28 -0
  444. package/dist/fx/fx-creators/shadow.cjs.map +1 -0
  445. package/dist/fx/fx-creators/shadow.d.ts +43 -0
  446. package/dist/fx/fx-creators/shadow.d.ts.map +1 -0
  447. package/dist/fx/fx-creators/shadow.js +28 -0
  448. package/dist/fx/fx-creators/shadow.js.map +1 -0
  449. package/dist/fx/fx-creators/vignette.cjs +20 -0
  450. package/dist/fx/fx-creators/vignette.cjs.map +1 -0
  451. package/dist/fx/fx-creators/vignette.d.ts +33 -0
  452. package/dist/fx/fx-creators/vignette.d.ts.map +1 -0
  453. package/dist/fx/fx-creators/vignette.js +20 -0
  454. package/dist/fx/fx-creators/vignette.js.map +1 -0
  455. package/dist/fx/fx-registry.cjs +43 -0
  456. package/dist/fx/fx-registry.cjs.map +1 -0
  457. package/dist/fx/fx-registry.d.ts +59 -0
  458. package/dist/fx/fx-registry.d.ts.map +1 -0
  459. package/dist/fx/fx-registry.js +43 -0
  460. package/dist/fx/fx-registry.js.map +1 -0
  461. package/dist/fx/index.d.ts +51 -0
  462. package/dist/fx/index.d.ts.map +1 -0
  463. package/dist/fx/use-fx.cjs +54 -0
  464. package/dist/fx/use-fx.cjs.map +1 -0
  465. package/dist/fx/use-fx.d.ts +53 -0
  466. package/dist/fx/use-fx.d.ts.map +1 -0
  467. package/dist/fx/use-fx.js +54 -0
  468. package/dist/fx/use-fx.js.map +1 -0
  469. package/dist/gestures/gesture-manager.cjs +773 -0
  470. package/dist/gestures/gesture-manager.cjs.map +1 -0
  471. package/dist/gestures/gesture-manager.d.ts +158 -0
  472. package/dist/gestures/gesture-manager.d.ts.map +1 -0
  473. package/dist/gestures/gesture-manager.js +773 -0
  474. package/dist/gestures/gesture-manager.js.map +1 -0
  475. package/dist/gestures/gesture-types.cjs +9 -0
  476. package/dist/gestures/gesture-types.cjs.map +1 -0
  477. package/dist/gestures/gesture-types.d.ts +232 -0
  478. package/dist/gestures/gesture-types.d.ts.map +1 -0
  479. package/dist/gestures/gesture-types.js +9 -0
  480. package/dist/gestures/gesture-types.js.map +1 -0
  481. package/dist/hooks.cjs +193 -0
  482. package/dist/hooks.cjs.map +1 -0
  483. package/dist/hooks.d.ts +151 -0
  484. package/dist/hooks.d.ts.map +1 -0
  485. package/dist/hooks.js +146 -0
  486. package/dist/hooks.js.map +1 -0
  487. package/dist/host.cjs +85 -0
  488. package/dist/host.cjs.map +1 -0
  489. package/dist/host.d.ts +78 -0
  490. package/dist/host.d.ts.map +1 -0
  491. package/dist/host.js +85 -0
  492. package/dist/host.js.map +1 -0
  493. package/dist/index.cjs +614 -0
  494. package/dist/index.cjs.map +1 -0
  495. package/dist/index.d.ts +61 -0
  496. package/dist/index.d.ts.map +1 -0
  497. package/dist/index.js +273 -0
  498. package/dist/index.js.map +1 -0
  499. package/dist/jsx-dev-runtime.cjs +20 -0
  500. package/dist/jsx-dev-runtime.cjs.map +1 -0
  501. package/dist/jsx-dev-runtime.d.ts +8 -0
  502. package/dist/jsx-dev-runtime.d.ts.map +1 -0
  503. package/dist/jsx-dev-runtime.js +8 -0
  504. package/dist/jsx-dev-runtime.js.map +1 -0
  505. package/dist/jsx-runtime.cjs +16 -0
  506. package/dist/jsx-runtime.cjs.map +1 -0
  507. package/dist/jsx-runtime.d.ts +9 -0
  508. package/dist/jsx-runtime.d.ts.map +1 -0
  509. package/dist/jsx-runtime.js +7 -0
  510. package/dist/jsx-runtime.js.map +1 -0
  511. package/dist/jsx-types.d.ts +40 -0
  512. package/dist/jsx-types.d.ts.map +1 -0
  513. package/dist/layout/appliers/background-applier.cjs +40 -0
  514. package/dist/layout/appliers/background-applier.cjs.map +1 -0
  515. package/dist/layout/appliers/background-applier.d.ts +16 -0
  516. package/dist/layout/appliers/background-applier.d.ts.map +1 -0
  517. package/dist/layout/appliers/background-applier.js +40 -0
  518. package/dist/layout/appliers/background-applier.js.map +1 -0
  519. package/dist/layout/index.d.ts +5 -0
  520. package/dist/layout/index.d.ts.map +1 -0
  521. package/dist/layout/layout-engine-test-utils.d.ts +24 -0
  522. package/dist/layout/layout-engine-test-utils.d.ts.map +1 -0
  523. package/dist/layout/phaser-layout-bridge.cjs +41 -0
  524. package/dist/layout/phaser-layout-bridge.cjs.map +1 -0
  525. package/dist/layout/phaser-layout-bridge.d.ts +9 -0
  526. package/dist/layout/phaser-layout-bridge.d.ts.map +1 -0
  527. package/dist/layout/phaser-layout-bridge.js +40 -0
  528. package/dist/layout/phaser-layout-bridge.js.map +1 -0
  529. package/dist/layout/types.d.ts +14 -0
  530. package/dist/layout/types.d.ts.map +1 -0
  531. package/dist/node_modules/.pnpm/fast-deep-equal@3.1.3/node_modules/fast-deep-equal/index.cjs +39 -0
  532. package/dist/node_modules/.pnpm/fast-deep-equal@3.1.3/node_modules/fast-deep-equal/index.cjs.map +1 -0
  533. package/dist/node_modules/.pnpm/fast-deep-equal@3.1.3/node_modules/fast-deep-equal/index.js +39 -0
  534. package/dist/node_modules/.pnpm/fast-deep-equal@3.1.3/node_modules/fast-deep-equal/index.js.map +1 -0
  535. package/dist/particles/emit-zone.cjs +205 -0
  536. package/dist/particles/emit-zone.cjs.map +1 -0
  537. package/dist/particles/emit-zone.d.ts +88 -0
  538. package/dist/particles/emit-zone.d.ts.map +1 -0
  539. package/dist/particles/emit-zone.js +205 -0
  540. package/dist/particles/emit-zone.js.map +1 -0
  541. package/dist/particles/index.d.ts +8 -0
  542. package/dist/particles/index.d.ts.map +1 -0
  543. package/dist/particles/particle-types.d.ts +25 -0
  544. package/dist/particles/particle-types.d.ts.map +1 -0
  545. package/dist/particles/preset-registry.cjs +57 -0
  546. package/dist/particles/preset-registry.cjs.map +1 -0
  547. package/dist/particles/preset-registry.d.ts +49 -0
  548. package/dist/particles/preset-registry.d.ts.map +1 -0
  549. package/dist/particles/preset-registry.js +57 -0
  550. package/dist/particles/preset-registry.js.map +1 -0
  551. package/dist/particles/use-particles.cjs +67 -0
  552. package/dist/particles/use-particles.cjs.map +1 -0
  553. package/dist/particles/use-particles.d.ts +19 -0
  554. package/dist/particles/use-particles.d.ts.map +1 -0
  555. package/dist/particles/use-particles.js +67 -0
  556. package/dist/particles/use-particles.js.map +1 -0
  557. package/dist/particles/utils.cjs +82 -0
  558. package/dist/particles/utils.cjs.map +1 -0
  559. package/dist/particles/utils.d.ts +10 -0
  560. package/dist/particles/utils.d.ts.map +1 -0
  561. package/dist/particles/utils.js +82 -0
  562. package/dist/particles/utils.js.map +1 -0
  563. package/dist/phaser-bridges.cjs +148 -0
  564. package/dist/phaser-bridges.cjs.map +1 -0
  565. package/dist/phaser-bridges.d.ts +78 -0
  566. package/dist/phaser-bridges.d.ts.map +1 -0
  567. package/dist/phaser-bridges.js +131 -0
  568. package/dist/phaser-bridges.js.map +1 -0
  569. package/dist/phaser-host-adapter.cjs +148 -0
  570. package/dist/phaser-host-adapter.cjs.map +1 -0
  571. package/dist/phaser-host-adapter.d.ts +30 -0
  572. package/dist/phaser-host-adapter.d.ts.map +1 -0
  573. package/dist/phaser-host-adapter.js +148 -0
  574. package/dist/phaser-host-adapter.js.map +1 -0
  575. package/dist/phaser-runtime-types.d.ts +89 -0
  576. package/dist/phaser-runtime-types.d.ts.map +1 -0
  577. package/dist/phaser-surface-adapter.cjs +488 -0
  578. package/dist/phaser-surface-adapter.cjs.map +1 -0
  579. package/dist/phaser-surface-adapter.d.ts +74 -0
  580. package/dist/phaser-surface-adapter.d.ts.map +1 -0
  581. package/dist/phaser-surface-adapter.js +471 -0
  582. package/dist/phaser-surface-adapter.js.map +1 -0
  583. package/dist/phaser-vdom-runtime.cjs +63 -0
  584. package/dist/phaser-vdom-runtime.cjs.map +1 -0
  585. package/dist/phaser-vdom-runtime.d.ts +2 -0
  586. package/dist/phaser-vdom-runtime.d.ts.map +1 -0
  587. package/dist/phaser-vdom-runtime.js +63 -0
  588. package/dist/phaser-vdom-runtime.js.map +1 -0
  589. package/dist/plugin.cjs +182 -0
  590. package/dist/plugin.cjs.map +1 -0
  591. package/dist/plugin.d.ts +161 -0
  592. package/dist/plugin.d.ts.map +1 -0
  593. package/dist/plugin.js +165 -0
  594. package/dist/plugin.js.map +1 -0
  595. package/dist/render-context.cjs +106 -0
  596. package/dist/render-context.cjs.map +1 -0
  597. package/dist/render-context.d.ts +66 -0
  598. package/dist/render-context.d.ts.map +1 -0
  599. package/dist/render-context.js +106 -0
  600. package/dist/render-context.js.map +1 -0
  601. package/dist/scene-backgrounds.cjs +285 -0
  602. package/dist/scene-backgrounds.cjs.map +1 -0
  603. package/dist/scene-backgrounds.d.ts +69 -0
  604. package/dist/scene-backgrounds.d.ts.map +1 -0
  605. package/dist/scene-backgrounds.js +268 -0
  606. package/dist/scene-backgrounds.js.map +1 -0
  607. package/dist/theme-base.d.ts +133 -0
  608. package/dist/theme-base.d.ts.map +1 -0
  609. package/dist/theme-custom.d.ts +13 -0
  610. package/dist/theme-custom.d.ts.map +1 -0
  611. package/dist/theme-defaults.cjs +29 -0
  612. package/dist/theme-defaults.cjs.map +1 -0
  613. package/dist/theme-defaults.d.ts +1 -0
  614. package/dist/theme-defaults.d.ts.map +1 -0
  615. package/dist/theme-defaults.js +28 -0
  616. package/dist/theme-defaults.js.map +1 -0
  617. package/dist/theme.cjs +34 -0
  618. package/dist/theme.cjs.map +1 -0
  619. package/dist/theme.d.ts +36 -0
  620. package/dist/theme.d.ts.map +1 -0
  621. package/dist/theme.js +32 -0
  622. package/dist/theme.js.map +1 -0
  623. package/dist/tooltip/tooltip-types.d.ts +6 -0
  624. package/dist/tooltip/tooltip-types.d.ts.map +1 -0
  625. package/dist/types.d.ts +22 -0
  626. package/dist/types.d.ts.map +1 -0
  627. package/dist/utils/KeyboardInputManager.cjs +112 -0
  628. package/dist/utils/KeyboardInputManager.cjs.map +1 -0
  629. package/dist/utils/KeyboardInputManager.d.ts +48 -0
  630. package/dist/utils/KeyboardInputManager.d.ts.map +1 -0
  631. package/dist/utils/KeyboardInputManager.js +112 -0
  632. package/dist/utils/KeyboardInputManager.js.map +1 -0
  633. package/dist/utils/dom-input-manager.cjs +253 -0
  634. package/dist/utils/dom-input-manager.cjs.map +1 -0
  635. package/dist/utils/dom-input-manager.d.ts +113 -0
  636. package/dist/utils/dom-input-manager.d.ts.map +1 -0
  637. package/dist/utils/dom-input-manager.js +253 -0
  638. package/dist/utils/dom-input-manager.js.map +1 -0
  639. package/dist/utils/fast-deep-equal.cjs +7 -0
  640. package/dist/utils/fast-deep-equal.cjs.map +1 -0
  641. package/dist/utils/fast-deep-equal.d.ts +4 -0
  642. package/dist/utils/fast-deep-equal.d.ts.map +1 -0
  643. package/dist/utils/fast-deep-equal.js +7 -0
  644. package/dist/utils/fast-deep-equal.js.map +1 -0
  645. package/dist/utils/image-subtexture-registry.cjs +98 -0
  646. package/dist/utils/image-subtexture-registry.cjs.map +1 -0
  647. package/dist/utils/image-subtexture-registry.d.ts +17 -0
  648. package/dist/utils/image-subtexture-registry.d.ts.map +1 -0
  649. package/dist/utils/image-subtexture-registry.js +98 -0
  650. package/dist/utils/image-subtexture-registry.js.map +1 -0
  651. package/dist/utils/phaser-guards.cjs +15 -0
  652. package/dist/utils/phaser-guards.cjs.map +1 -0
  653. package/dist/utils/phaser-guards.d.ts +7 -0
  654. package/dist/utils/phaser-guards.d.ts.map +1 -0
  655. package/dist/utils/phaser-guards.js +15 -0
  656. package/dist/utils/phaser-guards.js.map +1 -0
  657. package/dist/utils/svg-texture.cjs +48 -0
  658. package/dist/utils/svg-texture.cjs.map +1 -0
  659. package/dist/utils/svg-texture.d.ts +34 -0
  660. package/dist/utils/svg-texture.d.ts.map +1 -0
  661. package/dist/utils/svg-texture.js +48 -0
  662. package/dist/utils/svg-texture.js.map +1 -0
  663. package/dist/utils/texture-registry.cjs +117 -0
  664. package/dist/utils/texture-registry.cjs.map +1 -0
  665. package/dist/utils/texture-registry.d.ts +53 -0
  666. package/dist/utils/texture-registry.d.ts.map +1 -0
  667. package/dist/utils/texture-registry.js +117 -0
  668. package/dist/utils/texture-registry.js.map +1 -0
  669. package/dist/vdom-host-types.d.ts +12 -0
  670. package/dist/vdom-host-types.d.ts.map +1 -0
  671. package/dist/vdom-registry.d.ts +27 -0
  672. package/dist/vdom-registry.d.ts.map +1 -0
  673. package/dist/vdom-utils.d.ts +16 -0
  674. package/dist/vdom-utils.d.ts.map +1 -0
  675. package/dist/vdom.cjs +36 -0
  676. package/dist/vdom.cjs.map +1 -0
  677. package/dist/vdom.d.ts +23 -0
  678. package/dist/vdom.d.ts.map +1 -0
  679. package/dist/vdom.js +36 -0
  680. package/dist/vdom.js.map +1 -0
  681. package/dist/vector/PhaserVectorDrawContext.cjs +97 -0
  682. package/dist/vector/PhaserVectorDrawContext.cjs.map +1 -0
  683. package/dist/vector/PhaserVectorDrawContext.d.ts +27 -0
  684. package/dist/vector/PhaserVectorDrawContext.d.ts.map +1 -0
  685. package/dist/vector/PhaserVectorDrawContext.js +97 -0
  686. package/dist/vector/PhaserVectorDrawContext.js.map +1 -0
  687. package/dist/vector/index.d.ts +2 -0
  688. package/dist/vector/index.d.ts.map +1 -0
  689. package/package.json +96 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createSpriteLayout.cjs","sources":["../../../src/components/creators/createSpriteLayout.ts"],"sourcesContent":["/**\n * Layout creator for Sprite components\n */\nimport type * as Phaser from 'phaser'\nimport type { LayoutSize } from '../../layout/index'\nimport type { SpriteBaseProps } from '../primitives/sprite'\n\n/**\n * Creates layout infrastructure for a Sprite component\n * Attaches layout props and size provider\n * Sprites are always headless (minimal size)\n * @param sprite - Phaser Sprite object\n * @param props - Sprite props including layout\n */\nexport function createSpriteLayout(\n sprite: Phaser.GameObjects.Sprite & {\n __layoutProps?: SpriteBaseProps\n __getLayoutSize?: () => LayoutSize\n },\n props: Partial<SpriteBaseProps>\n): void {\n // Attach layout props for layout calculations\n sprite.__layoutProps = props as SpriteBaseProps\n\n // Attach size provider\n // Sprites are always headless - return minimal size (0.01x0.01)\n // This allows them to participate in alignment but not affect layout dimensions\n sprite.__getLayoutSize = () => {\n return { width: 0.01, height: 0.01 }\n }\n}\n"],"names":[],"mappings":";;AAcO,SAAS,mBACd,QAIA,OACM;AAEN,SAAO,gBAAgB;AAKvB,SAAO,kBAAkB,MAAM;AAC7B,WAAO,EAAE,OAAO,MAAM,QAAQ,KAAA;AAAA,EAChC;AACF;;"}
@@ -0,0 +1,18 @@
1
+ import { LayoutSize } from '../../layout/index';
2
+ import { SpriteBaseProps } from '../primitives/sprite';
3
+ /**
4
+ * Layout creator for Sprite components
5
+ */
6
+ import type * as Phaser from 'phaser';
7
+ /**
8
+ * Creates layout infrastructure for a Sprite component
9
+ * Attaches layout props and size provider
10
+ * Sprites are always headless (minimal size)
11
+ * @param sprite - Phaser Sprite object
12
+ * @param props - Sprite props including layout
13
+ */
14
+ export declare function createSpriteLayout(sprite: Phaser.GameObjects.Sprite & {
15
+ __layoutProps?: SpriteBaseProps;
16
+ __getLayoutSize?: () => LayoutSize;
17
+ }, props: Partial<SpriteBaseProps>): void;
18
+ //# sourceMappingURL=createSpriteLayout.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createSpriteLayout.d.ts","sourceRoot":"","sources":["../../../src/components/creators/createSpriteLayout.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,KAAK,MAAM,MAAM,QAAQ,CAAA;AACrC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AACpD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAE3D;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,MAAM,CAAC,WAAW,CAAC,MAAM,GAAG;IAClC,aAAa,CAAC,EAAE,eAAe,CAAA;IAC/B,eAAe,CAAC,EAAE,MAAM,UAAU,CAAA;CACnC,EACD,KAAK,EAAE,OAAO,CAAC,eAAe,CAAC,GAC9B,IAAI,CAUN"}
@@ -0,0 +1,10 @@
1
+ function createSpriteLayout(sprite, props) {
2
+ sprite.__layoutProps = props;
3
+ sprite.__getLayoutSize = () => {
4
+ return { width: 0.01, height: 0.01 };
5
+ };
6
+ }
7
+ export {
8
+ createSpriteLayout
9
+ };
10
+ //# sourceMappingURL=createSpriteLayout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createSpriteLayout.js","sources":["../../../src/components/creators/createSpriteLayout.ts"],"sourcesContent":["/**\n * Layout creator for Sprite components\n */\nimport type * as Phaser from 'phaser'\nimport type { LayoutSize } from '../../layout/index'\nimport type { SpriteBaseProps } from '../primitives/sprite'\n\n/**\n * Creates layout infrastructure for a Sprite component\n * Attaches layout props and size provider\n * Sprites are always headless (minimal size)\n * @param sprite - Phaser Sprite object\n * @param props - Sprite props including layout\n */\nexport function createSpriteLayout(\n sprite: Phaser.GameObjects.Sprite & {\n __layoutProps?: SpriteBaseProps\n __getLayoutSize?: () => LayoutSize\n },\n props: Partial<SpriteBaseProps>\n): void {\n // Attach layout props for layout calculations\n sprite.__layoutProps = props as SpriteBaseProps\n\n // Attach size provider\n // Sprites are always headless - return minimal size (0.01x0.01)\n // This allows them to participate in alignment but not affect layout dimensions\n sprite.__getLayoutSize = () => {\n return { width: 0.01, height: 0.01 }\n }\n}\n"],"names":[],"mappings":"AAcO,SAAS,mBACd,QAIA,OACM;AAEN,SAAO,gBAAgB;AAKvB,SAAO,kBAAkB,MAAM;AAC7B,WAAO,EAAE,OAAO,MAAM,QAAQ,KAAA;AAAA,EAChC;AACF;"}
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ function createTextLayout(text, props) {
4
+ text.__layoutProps = props;
5
+ text.__getLayoutSize = () => {
6
+ if (text.__layoutProps?.headless) {
7
+ return { width: 0.01, height: 0.01 };
8
+ }
9
+ return {
10
+ width: text.width,
11
+ height: text.height
12
+ };
13
+ };
14
+ }
15
+ exports.createTextLayout = createTextLayout;
16
+ //# sourceMappingURL=createTextLayout.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createTextLayout.cjs","sources":["../../../src/components/creators/createTextLayout.ts"],"sourcesContent":["/**\n * Layout creator for text components\n */\nimport type * as Phaser from 'phaser'\nimport type { LayoutSize } from '../../layout/index'\nimport type { TextBaseProps } from '../primitives/text'\n\n/**\n * Creates layout infrastructure for a text component\n * Attaches layout props and dynamic size provider\n * @param text - Phaser text object\n * @param props - Text props including layout\n */\nexport function createTextLayout(\n text: Phaser.GameObjects.Text & {\n __layoutProps?: TextBaseProps\n __getLayoutSize?: () => LayoutSize\n },\n props: Partial<TextBaseProps>\n): void {\n // Attach layout props for layout calculations\n text.__layoutProps = props as TextBaseProps\n\n // Attach dynamic size provider\n // Headless text returns minimal size 1x1 (participates in alignment, not spacing)\n // Note: 0x0 causes issues with Phaser internals or layout optimizations\n // Layout-aware text returns actual dimensions (rotation ignored for layout)\n text.__getLayoutSize = () => {\n if (text.__layoutProps?.headless) {\n return { width: 0.01, height: 0.01 }\n }\n return {\n width: text.width,\n height: text.height,\n }\n }\n}\n"],"names":[],"mappings":";;AAaO,SAAS,iBACd,MAIA,OACM;AAEN,OAAK,gBAAgB;AAMrB,OAAK,kBAAkB,MAAM;AAC3B,QAAI,KAAK,eAAe,UAAU;AAChC,aAAO,EAAE,OAAO,MAAM,QAAQ,KAAA;AAAA,IAChC;AACA,WAAO;AAAA,MACL,OAAO,KAAK;AAAA,MACZ,QAAQ,KAAK;AAAA,IAAA;AAAA,EAEjB;AACF;;"}
@@ -0,0 +1,17 @@
1
+ import { LayoutSize } from '../../layout/index';
2
+ import { TextBaseProps } from '../primitives/text';
3
+ /**
4
+ * Layout creator for text components
5
+ */
6
+ import type * as Phaser from 'phaser';
7
+ /**
8
+ * Creates layout infrastructure for a text component
9
+ * Attaches layout props and dynamic size provider
10
+ * @param text - Phaser text object
11
+ * @param props - Text props including layout
12
+ */
13
+ export declare function createTextLayout(text: Phaser.GameObjects.Text & {
14
+ __layoutProps?: TextBaseProps;
15
+ __getLayoutSize?: () => LayoutSize;
16
+ }, props: Partial<TextBaseProps>): void;
17
+ //# sourceMappingURL=createTextLayout.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createTextLayout.d.ts","sourceRoot":"","sources":["../../../src/components/creators/createTextLayout.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,KAAK,MAAM,MAAM,QAAQ,CAAA;AACrC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AACpD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAEvD;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,MAAM,CAAC,WAAW,CAAC,IAAI,GAAG;IAC9B,aAAa,CAAC,EAAE,aAAa,CAAA;IAC7B,eAAe,CAAC,EAAE,MAAM,UAAU,CAAA;CACnC,EACD,KAAK,EAAE,OAAO,CAAC,aAAa,CAAC,GAC5B,IAAI,CAiBN"}
@@ -0,0 +1,16 @@
1
+ function createTextLayout(text, props) {
2
+ text.__layoutProps = props;
3
+ text.__getLayoutSize = () => {
4
+ if (text.__layoutProps?.headless) {
5
+ return { width: 0.01, height: 0.01 };
6
+ }
7
+ return {
8
+ width: text.width,
9
+ height: text.height
10
+ };
11
+ };
12
+ }
13
+ export {
14
+ createTextLayout
15
+ };
16
+ //# sourceMappingURL=createTextLayout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createTextLayout.js","sources":["../../../src/components/creators/createTextLayout.ts"],"sourcesContent":["/**\n * Layout creator for text components\n */\nimport type * as Phaser from 'phaser'\nimport type { LayoutSize } from '../../layout/index'\nimport type { TextBaseProps } from '../primitives/text'\n\n/**\n * Creates layout infrastructure for a text component\n * Attaches layout props and dynamic size provider\n * @param text - Phaser text object\n * @param props - Text props including layout\n */\nexport function createTextLayout(\n text: Phaser.GameObjects.Text & {\n __layoutProps?: TextBaseProps\n __getLayoutSize?: () => LayoutSize\n },\n props: Partial<TextBaseProps>\n): void {\n // Attach layout props for layout calculations\n text.__layoutProps = props as TextBaseProps\n\n // Attach dynamic size provider\n // Headless text returns minimal size 1x1 (participates in alignment, not spacing)\n // Note: 0x0 causes issues with Phaser internals or layout optimizations\n // Layout-aware text returns actual dimensions (rotation ignored for layout)\n text.__getLayoutSize = () => {\n if (text.__layoutProps?.headless) {\n return { width: 0.01, height: 0.01 }\n }\n return {\n width: text.width,\n height: text.height,\n }\n }\n}\n"],"names":[],"mappings":"AAaO,SAAS,iBACd,MAIA,OACM;AAEN,OAAK,gBAAgB;AAMrB,OAAK,kBAAkB,MAAM;AAC3B,QAAI,KAAK,eAAe,UAAU;AAChC,aAAO,EAAE,OAAO,MAAM,QAAQ,KAAA;AAAA,IAChC;AACA,WAAO;AAAA,MACL,OAAO,KAAK;AAAA,MACZ,QAAQ,KAAK;AAAA,IAAA;AAAA,EAEjB;AACF;"}
@@ -0,0 +1,83 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxCore = require("@number10/jsx-core");
4
+ const signalsCore = require("@preact/signals-core");
5
+ function resolveAnimatableNumber(v) {
6
+ if (v === void 0) return void 0;
7
+ return jsxCore.isAnimatedSignal(v) ? v.value : v;
8
+ }
9
+ function createTransform(node, props) {
10
+ if (props.x !== void 0) {
11
+ const x = props.x;
12
+ if (jsxCore.isAnimatedSignal(x)) {
13
+ node.x = x.value;
14
+ const cleanup = signalsCore.effect(() => {
15
+ node.x = x.value;
16
+ });
17
+ if (!node.__signalEffects) node.__signalEffects = /* @__PURE__ */ new Map();
18
+ node.__signalEffects.set("x", cleanup);
19
+ }
20
+ }
21
+ if (props.y !== void 0) {
22
+ const y = props.y;
23
+ if (jsxCore.isAnimatedSignal(y)) {
24
+ node.y = y.value;
25
+ const cleanup = signalsCore.effect(() => {
26
+ node.y = y.value;
27
+ });
28
+ if (!node.__signalEffects) node.__signalEffects = /* @__PURE__ */ new Map();
29
+ node.__signalEffects.set("y", cleanup);
30
+ }
31
+ }
32
+ if (props.scale !== void 0) {
33
+ const scale = props.scale;
34
+ if (jsxCore.isAnimatedSignal(scale)) {
35
+ node.setScale(scale.value, scale.value);
36
+ const cleanup = signalsCore.effect(() => {
37
+ node.setScale(scale.value, scale.value);
38
+ });
39
+ if (!node.__signalEffects) node.__signalEffects = /* @__PURE__ */ new Map();
40
+ node.__signalEffects.set("scale", cleanup);
41
+ } else {
42
+ node.setScale(scale, scale);
43
+ }
44
+ } else if (props.scaleX !== void 0 || props.scaleY !== void 0) {
45
+ const sx = props.scaleX;
46
+ const sy = props.scaleY;
47
+ if (jsxCore.isAnimatedSignal(sx)) {
48
+ node.setScale(sx.value, sy ?? 1);
49
+ const cleanup = signalsCore.effect(() => {
50
+ node.setScale(sx.value, sy ?? 1);
51
+ });
52
+ if (!node.__signalEffects) node.__signalEffects = /* @__PURE__ */ new Map();
53
+ node.__signalEffects.set("scaleX", cleanup);
54
+ } else if (jsxCore.isAnimatedSignal(sy)) {
55
+ node.setScale(sx ?? 1, sy.value);
56
+ const cleanup = signalsCore.effect(() => {
57
+ node.setScale(sx ?? 1, sy.value);
58
+ });
59
+ if (!node.__signalEffects) node.__signalEffects = /* @__PURE__ */ new Map();
60
+ node.__signalEffects.set("scaleY", cleanup);
61
+ } else {
62
+ node.setScale(sx ?? 1, sy ?? 1);
63
+ }
64
+ }
65
+ if (props.rotation !== void 0) {
66
+ const rotation = props.rotation;
67
+ if (jsxCore.isAnimatedSignal(rotation)) {
68
+ node.setRotation(rotation.value);
69
+ const cleanup = signalsCore.effect(() => {
70
+ node.setRotation(rotation.value);
71
+ });
72
+ if (!node.__signalEffects) {
73
+ node.__signalEffects = /* @__PURE__ */ new Map();
74
+ }
75
+ node.__signalEffects.set("rotation", cleanup);
76
+ } else {
77
+ node.setRotation(rotation);
78
+ }
79
+ }
80
+ }
81
+ exports.createTransform = createTransform;
82
+ exports.resolveAnimatableNumber = resolveAnimatableNumber;
83
+ //# sourceMappingURL=createTransform.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createTransform.cjs","sources":["../../../src/components/creators/createTransform.ts"],"sourcesContent":["/**\n * Shared property creators for component initialization\n * These functions avoid code duplication when creating nodes with initial properties\n *\n * Supports AnimatedSignal values — subscribes to signal changes on creation,\n * same as the patcher does via applyTransformProps.\n */\nimport { isAnimatedSignal } from '@number10/jsx-core'\nimport { effect } from '@preact/signals-core'\nimport type { Animatable, TransformProps } from '../../core-props'\n\ninterface SignalEffectNode {\n __signalEffects?: Map<string, () => void>\n}\n\n/**\n * Resolve an Animatable value to a plain number or undefined.\n * If the value is an AnimatedSignal, returns its current .value,\n * otherwise returns the raw number.\n * @param v - Animatable number value\n * @returns Resolved number or undefined\n */\nexport function resolveAnimatableNumber(v: Animatable<number> | undefined): number | undefined {\n if (v === undefined) return undefined\n return isAnimatedSignal(v) ? v.value : v\n}\n\n/**\n * Apply transform properties during node creation (geometric transformations only).\n * Handles both plain numbers and AnimatedSignal values.\n * @param node - Node with transform capabilities\n * @param props - Initial props\n */\nexport function createTransform<\n T extends {\n x: number\n y: number\n setScale: (x: number, y: number) => void\n setRotation: (rotation: number) => void\n } & SignalEffectNode,\n>(node: T, props: Partial<TransformProps>): void {\n // Position x — supports AnimatedSignal\n if (props.x !== undefined) {\n const x = props.x\n if (isAnimatedSignal(x)) {\n node.x = x.value\n const cleanup = effect(() => {\n node.x = x.value\n })\n if (!node.__signalEffects) node.__signalEffects = new Map()\n node.__signalEffects.set('x', cleanup)\n }\n }\n // Position y — supports AnimatedSignal\n if (props.y !== undefined) {\n const y = props.y\n if (isAnimatedSignal(y)) {\n node.y = y.value\n const cleanup = effect(() => {\n node.y = y.value\n })\n if (!node.__signalEffects) node.__signalEffects = new Map()\n node.__signalEffects.set('y', cleanup)\n }\n }\n // Unified scale — supports AnimatedSignal\n if (props.scale !== undefined) {\n const scale = props.scale\n if (isAnimatedSignal(scale)) {\n node.setScale(scale.value, scale.value)\n const cleanup = effect(() => {\n node.setScale(scale.value, scale.value)\n })\n if (!node.__signalEffects) node.__signalEffects = new Map()\n node.__signalEffects.set('scale', cleanup)\n } else {\n node.setScale(scale as number, scale as number)\n }\n } else if (props.scaleX !== undefined || props.scaleY !== undefined) {\n const sx = props.scaleX\n const sy = props.scaleY\n if (isAnimatedSignal(sx)) {\n node.setScale(sx.value, (sy as number | undefined) ?? 1)\n const cleanup = effect(() => {\n node.setScale(sx.value, (sy as number | undefined) ?? 1)\n })\n if (!node.__signalEffects) node.__signalEffects = new Map()\n node.__signalEffects.set('scaleX', cleanup)\n } else if (isAnimatedSignal(sy)) {\n node.setScale((sx as number | undefined) ?? 1, sy.value)\n const cleanup = effect(() => {\n node.setScale((sx as number | undefined) ?? 1, sy.value)\n })\n if (!node.__signalEffects) node.__signalEffects = new Map()\n node.__signalEffects.set('scaleY', cleanup)\n } else {\n node.setScale((sx as number | undefined) ?? 1, (sy as number | undefined) ?? 1)\n }\n }\n if (props.rotation !== undefined) {\n const rotation = props.rotation\n if (isAnimatedSignal(rotation)) {\n // Apply initial value and subscribe to future changes\n node.setRotation(rotation.value)\n const cleanup = effect(() => {\n node.setRotation(rotation.value)\n })\n if (!node.__signalEffects) {\n node.__signalEffects = new Map()\n }\n node.__signalEffects.set('rotation', cleanup)\n } else {\n node.setRotation(rotation as number)\n }\n }\n}\n"],"names":["isAnimatedSignal","effect"],"mappings":";;;;AAsBO,SAAS,wBAAwB,GAAuD;AAC7F,MAAI,MAAM,OAAW,QAAO;AAC5B,SAAOA,QAAAA,iBAAiB,CAAC,IAAI,EAAE,QAAQ;AACzC;AAQO,SAAS,gBAOd,MAAS,OAAsC;AAE/C,MAAI,MAAM,MAAM,QAAW;AACzB,UAAM,IAAI,MAAM;AAChB,QAAIA,QAAAA,iBAAiB,CAAC,GAAG;AACvB,WAAK,IAAI,EAAE;AACX,YAAM,UAAUC,YAAAA,OAAO,MAAM;AAC3B,aAAK,IAAI,EAAE;AAAA,MACb,CAAC;AACD,UAAI,CAAC,KAAK,gBAAiB,MAAK,sCAAsB,IAAA;AACtD,WAAK,gBAAgB,IAAI,KAAK,OAAO;AAAA,IACvC;AAAA,EACF;AAEA,MAAI,MAAM,MAAM,QAAW;AACzB,UAAM,IAAI,MAAM;AAChB,QAAID,QAAAA,iBAAiB,CAAC,GAAG;AACvB,WAAK,IAAI,EAAE;AACX,YAAM,UAAUC,YAAAA,OAAO,MAAM;AAC3B,aAAK,IAAI,EAAE;AAAA,MACb,CAAC;AACD,UAAI,CAAC,KAAK,gBAAiB,MAAK,sCAAsB,IAAA;AACtD,WAAK,gBAAgB,IAAI,KAAK,OAAO;AAAA,IACvC;AAAA,EACF;AAEA,MAAI,MAAM,UAAU,QAAW;AAC7B,UAAM,QAAQ,MAAM;AACpB,QAAID,QAAAA,iBAAiB,KAAK,GAAG;AAC3B,WAAK,SAAS,MAAM,OAAO,MAAM,KAAK;AACtC,YAAM,UAAUC,YAAAA,OAAO,MAAM;AAC3B,aAAK,SAAS,MAAM,OAAO,MAAM,KAAK;AAAA,MACxC,CAAC;AACD,UAAI,CAAC,KAAK,gBAAiB,MAAK,sCAAsB,IAAA;AACtD,WAAK,gBAAgB,IAAI,SAAS,OAAO;AAAA,IAC3C,OAAO;AACL,WAAK,SAAS,OAAiB,KAAe;AAAA,IAChD;AAAA,EACF,WAAW,MAAM,WAAW,UAAa,MAAM,WAAW,QAAW;AACnE,UAAM,KAAK,MAAM;AACjB,UAAM,KAAK,MAAM;AACjB,QAAID,QAAAA,iBAAiB,EAAE,GAAG;AACxB,WAAK,SAAS,GAAG,OAAQ,MAA6B,CAAC;AACvD,YAAM,UAAUC,YAAAA,OAAO,MAAM;AAC3B,aAAK,SAAS,GAAG,OAAQ,MAA6B,CAAC;AAAA,MACzD,CAAC;AACD,UAAI,CAAC,KAAK,gBAAiB,MAAK,sCAAsB,IAAA;AACtD,WAAK,gBAAgB,IAAI,UAAU,OAAO;AAAA,IAC5C,WAAWD,yBAAiB,EAAE,GAAG;AAC/B,WAAK,SAAU,MAA6B,GAAG,GAAG,KAAK;AACvD,YAAM,UAAUC,YAAAA,OAAO,MAAM;AAC3B,aAAK,SAAU,MAA6B,GAAG,GAAG,KAAK;AAAA,MACzD,CAAC;AACD,UAAI,CAAC,KAAK,gBAAiB,MAAK,sCAAsB,IAAA;AACtD,WAAK,gBAAgB,IAAI,UAAU,OAAO;AAAA,IAC5C,OAAO;AACL,WAAK,SAAU,MAA6B,GAAI,MAA6B,CAAC;AAAA,IAChF;AAAA,EACF;AACA,MAAI,MAAM,aAAa,QAAW;AAChC,UAAM,WAAW,MAAM;AACvB,QAAID,QAAAA,iBAAiB,QAAQ,GAAG;AAE9B,WAAK,YAAY,SAAS,KAAK;AAC/B,YAAM,UAAUC,YAAAA,OAAO,MAAM;AAC3B,aAAK,YAAY,SAAS,KAAK;AAAA,MACjC,CAAC;AACD,UAAI,CAAC,KAAK,iBAAiB;AACzB,aAAK,sCAAsB,IAAA;AAAA,MAC7B;AACA,WAAK,gBAAgB,IAAI,YAAY,OAAO;AAAA,IAC9C,OAAO;AACL,WAAK,YAAY,QAAkB;AAAA,IACrC;AAAA,EACF;AACF;;;"}
@@ -0,0 +1,26 @@
1
+ import { Animatable, TransformProps } from '../../core-props';
2
+ interface SignalEffectNode {
3
+ __signalEffects?: Map<string, () => void>;
4
+ }
5
+ /**
6
+ * Resolve an Animatable value to a plain number or undefined.
7
+ * If the value is an AnimatedSignal, returns its current .value,
8
+ * otherwise returns the raw number.
9
+ * @param v - Animatable number value
10
+ * @returns Resolved number or undefined
11
+ */
12
+ export declare function resolveAnimatableNumber(v: Animatable<number> | undefined): number | undefined;
13
+ /**
14
+ * Apply transform properties during node creation (geometric transformations only).
15
+ * Handles both plain numbers and AnimatedSignal values.
16
+ * @param node - Node with transform capabilities
17
+ * @param props - Initial props
18
+ */
19
+ export declare function createTransform<T extends {
20
+ x: number;
21
+ y: number;
22
+ setScale: (x: number, y: number) => void;
23
+ setRotation: (rotation: number) => void;
24
+ } & SignalEffectNode>(node: T, props: Partial<TransformProps>): void;
25
+ export {};
26
+ //# sourceMappingURL=createTransform.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createTransform.d.ts","sourceRoot":"","sources":["../../../src/components/creators/createTransform.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAElE,UAAU,gBAAgB;IACxB,eAAe,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,IAAI,CAAC,CAAA;CAC1C;AAED;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CAAC,CAAC,EAAE,UAAU,CAAC,MAAM,CAAC,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAG7F;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAC7B,CAAC,SAAS;IACR,CAAC,EAAE,MAAM,CAAA;IACT,CAAC,EAAE,MAAM,CAAA;IACT,QAAQ,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;IACxC,WAAW,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAA;CACxC,GAAG,gBAAgB,EACpB,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,cAAc,CAAC,GAAG,IAAI,CA2E/C"}
@@ -0,0 +1,83 @@
1
+ import { isAnimatedSignal } from "@number10/jsx-core";
2
+ import { effect } from "@preact/signals-core";
3
+ function resolveAnimatableNumber(v) {
4
+ if (v === void 0) return void 0;
5
+ return isAnimatedSignal(v) ? v.value : v;
6
+ }
7
+ function createTransform(node, props) {
8
+ if (props.x !== void 0) {
9
+ const x = props.x;
10
+ if (isAnimatedSignal(x)) {
11
+ node.x = x.value;
12
+ const cleanup = effect(() => {
13
+ node.x = x.value;
14
+ });
15
+ if (!node.__signalEffects) node.__signalEffects = /* @__PURE__ */ new Map();
16
+ node.__signalEffects.set("x", cleanup);
17
+ }
18
+ }
19
+ if (props.y !== void 0) {
20
+ const y = props.y;
21
+ if (isAnimatedSignal(y)) {
22
+ node.y = y.value;
23
+ const cleanup = effect(() => {
24
+ node.y = y.value;
25
+ });
26
+ if (!node.__signalEffects) node.__signalEffects = /* @__PURE__ */ new Map();
27
+ node.__signalEffects.set("y", cleanup);
28
+ }
29
+ }
30
+ if (props.scale !== void 0) {
31
+ const scale = props.scale;
32
+ if (isAnimatedSignal(scale)) {
33
+ node.setScale(scale.value, scale.value);
34
+ const cleanup = effect(() => {
35
+ node.setScale(scale.value, scale.value);
36
+ });
37
+ if (!node.__signalEffects) node.__signalEffects = /* @__PURE__ */ new Map();
38
+ node.__signalEffects.set("scale", cleanup);
39
+ } else {
40
+ node.setScale(scale, scale);
41
+ }
42
+ } else if (props.scaleX !== void 0 || props.scaleY !== void 0) {
43
+ const sx = props.scaleX;
44
+ const sy = props.scaleY;
45
+ if (isAnimatedSignal(sx)) {
46
+ node.setScale(sx.value, sy ?? 1);
47
+ const cleanup = effect(() => {
48
+ node.setScale(sx.value, sy ?? 1);
49
+ });
50
+ if (!node.__signalEffects) node.__signalEffects = /* @__PURE__ */ new Map();
51
+ node.__signalEffects.set("scaleX", cleanup);
52
+ } else if (isAnimatedSignal(sy)) {
53
+ node.setScale(sx ?? 1, sy.value);
54
+ const cleanup = effect(() => {
55
+ node.setScale(sx ?? 1, sy.value);
56
+ });
57
+ if (!node.__signalEffects) node.__signalEffects = /* @__PURE__ */ new Map();
58
+ node.__signalEffects.set("scaleY", cleanup);
59
+ } else {
60
+ node.setScale(sx ?? 1, sy ?? 1);
61
+ }
62
+ }
63
+ if (props.rotation !== void 0) {
64
+ const rotation = props.rotation;
65
+ if (isAnimatedSignal(rotation)) {
66
+ node.setRotation(rotation.value);
67
+ const cleanup = effect(() => {
68
+ node.setRotation(rotation.value);
69
+ });
70
+ if (!node.__signalEffects) {
71
+ node.__signalEffects = /* @__PURE__ */ new Map();
72
+ }
73
+ node.__signalEffects.set("rotation", cleanup);
74
+ } else {
75
+ node.setRotation(rotation);
76
+ }
77
+ }
78
+ }
79
+ export {
80
+ createTransform,
81
+ resolveAnimatableNumber
82
+ };
83
+ //# sourceMappingURL=createTransform.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createTransform.js","sources":["../../../src/components/creators/createTransform.ts"],"sourcesContent":["/**\n * Shared property creators for component initialization\n * These functions avoid code duplication when creating nodes with initial properties\n *\n * Supports AnimatedSignal values — subscribes to signal changes on creation,\n * same as the patcher does via applyTransformProps.\n */\nimport { isAnimatedSignal } from '@number10/jsx-core'\nimport { effect } from '@preact/signals-core'\nimport type { Animatable, TransformProps } from '../../core-props'\n\ninterface SignalEffectNode {\n __signalEffects?: Map<string, () => void>\n}\n\n/**\n * Resolve an Animatable value to a plain number or undefined.\n * If the value is an AnimatedSignal, returns its current .value,\n * otherwise returns the raw number.\n * @param v - Animatable number value\n * @returns Resolved number or undefined\n */\nexport function resolveAnimatableNumber(v: Animatable<number> | undefined): number | undefined {\n if (v === undefined) return undefined\n return isAnimatedSignal(v) ? v.value : v\n}\n\n/**\n * Apply transform properties during node creation (geometric transformations only).\n * Handles both plain numbers and AnimatedSignal values.\n * @param node - Node with transform capabilities\n * @param props - Initial props\n */\nexport function createTransform<\n T extends {\n x: number\n y: number\n setScale: (x: number, y: number) => void\n setRotation: (rotation: number) => void\n } & SignalEffectNode,\n>(node: T, props: Partial<TransformProps>): void {\n // Position x — supports AnimatedSignal\n if (props.x !== undefined) {\n const x = props.x\n if (isAnimatedSignal(x)) {\n node.x = x.value\n const cleanup = effect(() => {\n node.x = x.value\n })\n if (!node.__signalEffects) node.__signalEffects = new Map()\n node.__signalEffects.set('x', cleanup)\n }\n }\n // Position y — supports AnimatedSignal\n if (props.y !== undefined) {\n const y = props.y\n if (isAnimatedSignal(y)) {\n node.y = y.value\n const cleanup = effect(() => {\n node.y = y.value\n })\n if (!node.__signalEffects) node.__signalEffects = new Map()\n node.__signalEffects.set('y', cleanup)\n }\n }\n // Unified scale — supports AnimatedSignal\n if (props.scale !== undefined) {\n const scale = props.scale\n if (isAnimatedSignal(scale)) {\n node.setScale(scale.value, scale.value)\n const cleanup = effect(() => {\n node.setScale(scale.value, scale.value)\n })\n if (!node.__signalEffects) node.__signalEffects = new Map()\n node.__signalEffects.set('scale', cleanup)\n } else {\n node.setScale(scale as number, scale as number)\n }\n } else if (props.scaleX !== undefined || props.scaleY !== undefined) {\n const sx = props.scaleX\n const sy = props.scaleY\n if (isAnimatedSignal(sx)) {\n node.setScale(sx.value, (sy as number | undefined) ?? 1)\n const cleanup = effect(() => {\n node.setScale(sx.value, (sy as number | undefined) ?? 1)\n })\n if (!node.__signalEffects) node.__signalEffects = new Map()\n node.__signalEffects.set('scaleX', cleanup)\n } else if (isAnimatedSignal(sy)) {\n node.setScale((sx as number | undefined) ?? 1, sy.value)\n const cleanup = effect(() => {\n node.setScale((sx as number | undefined) ?? 1, sy.value)\n })\n if (!node.__signalEffects) node.__signalEffects = new Map()\n node.__signalEffects.set('scaleY', cleanup)\n } else {\n node.setScale((sx as number | undefined) ?? 1, (sy as number | undefined) ?? 1)\n }\n }\n if (props.rotation !== undefined) {\n const rotation = props.rotation\n if (isAnimatedSignal(rotation)) {\n // Apply initial value and subscribe to future changes\n node.setRotation(rotation.value)\n const cleanup = effect(() => {\n node.setRotation(rotation.value)\n })\n if (!node.__signalEffects) {\n node.__signalEffects = new Map()\n }\n node.__signalEffects.set('rotation', cleanup)\n } else {\n node.setRotation(rotation as number)\n }\n }\n}\n"],"names":[],"mappings":";;AAsBO,SAAS,wBAAwB,GAAuD;AAC7F,MAAI,MAAM,OAAW,QAAO;AAC5B,SAAO,iBAAiB,CAAC,IAAI,EAAE,QAAQ;AACzC;AAQO,SAAS,gBAOd,MAAS,OAAsC;AAE/C,MAAI,MAAM,MAAM,QAAW;AACzB,UAAM,IAAI,MAAM;AAChB,QAAI,iBAAiB,CAAC,GAAG;AACvB,WAAK,IAAI,EAAE;AACX,YAAM,UAAU,OAAO,MAAM;AAC3B,aAAK,IAAI,EAAE;AAAA,MACb,CAAC;AACD,UAAI,CAAC,KAAK,gBAAiB,MAAK,sCAAsB,IAAA;AACtD,WAAK,gBAAgB,IAAI,KAAK,OAAO;AAAA,IACvC;AAAA,EACF;AAEA,MAAI,MAAM,MAAM,QAAW;AACzB,UAAM,IAAI,MAAM;AAChB,QAAI,iBAAiB,CAAC,GAAG;AACvB,WAAK,IAAI,EAAE;AACX,YAAM,UAAU,OAAO,MAAM;AAC3B,aAAK,IAAI,EAAE;AAAA,MACb,CAAC;AACD,UAAI,CAAC,KAAK,gBAAiB,MAAK,sCAAsB,IAAA;AACtD,WAAK,gBAAgB,IAAI,KAAK,OAAO;AAAA,IACvC;AAAA,EACF;AAEA,MAAI,MAAM,UAAU,QAAW;AAC7B,UAAM,QAAQ,MAAM;AACpB,QAAI,iBAAiB,KAAK,GAAG;AAC3B,WAAK,SAAS,MAAM,OAAO,MAAM,KAAK;AACtC,YAAM,UAAU,OAAO,MAAM;AAC3B,aAAK,SAAS,MAAM,OAAO,MAAM,KAAK;AAAA,MACxC,CAAC;AACD,UAAI,CAAC,KAAK,gBAAiB,MAAK,sCAAsB,IAAA;AACtD,WAAK,gBAAgB,IAAI,SAAS,OAAO;AAAA,IAC3C,OAAO;AACL,WAAK,SAAS,OAAiB,KAAe;AAAA,IAChD;AAAA,EACF,WAAW,MAAM,WAAW,UAAa,MAAM,WAAW,QAAW;AACnE,UAAM,KAAK,MAAM;AACjB,UAAM,KAAK,MAAM;AACjB,QAAI,iBAAiB,EAAE,GAAG;AACxB,WAAK,SAAS,GAAG,OAAQ,MAA6B,CAAC;AACvD,YAAM,UAAU,OAAO,MAAM;AAC3B,aAAK,SAAS,GAAG,OAAQ,MAA6B,CAAC;AAAA,MACzD,CAAC;AACD,UAAI,CAAC,KAAK,gBAAiB,MAAK,sCAAsB,IAAA;AACtD,WAAK,gBAAgB,IAAI,UAAU,OAAO;AAAA,IAC5C,WAAW,iBAAiB,EAAE,GAAG;AAC/B,WAAK,SAAU,MAA6B,GAAG,GAAG,KAAK;AACvD,YAAM,UAAU,OAAO,MAAM;AAC3B,aAAK,SAAU,MAA6B,GAAG,GAAG,KAAK;AAAA,MACzD,CAAC;AACD,UAAI,CAAC,KAAK,gBAAiB,MAAK,sCAAsB,IAAA;AACtD,WAAK,gBAAgB,IAAI,UAAU,OAAO;AAAA,IAC5C,OAAO;AACL,WAAK,SAAU,MAA6B,GAAI,MAA6B,CAAC;AAAA,IAChF;AAAA,EACF;AACA,MAAI,MAAM,aAAa,QAAW;AAChC,UAAM,WAAW,MAAM;AACvB,QAAI,iBAAiB,QAAQ,GAAG;AAE9B,WAAK,YAAY,SAAS,KAAK;AAC/B,YAAM,UAAU,OAAO,MAAM;AAC3B,aAAK,YAAY,SAAS,KAAK;AAAA,MACjC,CAAC;AACD,UAAI,CAAC,KAAK,iBAAiB;AACzB,aAAK,sCAAsB,IAAA;AAAA,MAC7B;AACA,WAAK,gBAAgB,IAAI,YAAY,OAAO;AAAA,IAC9C,OAAO;AACL,WAAK,YAAY,QAAkB;AAAA,IACrC;AAAA,EACF;AACF;"}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("@number10/jsx-core/jsx-runtime");
4
+ require("../../hooks.cjs");
5
+ const theme = require("../../theme.cjs");
6
+ const jsxCore = require("@number10/jsx-core");
7
+ function Graphics(props) {
8
+ const localTheme = jsxCore.useTheme();
9
+ const { props: themed, nestedTheme } = theme.getThemedProps("Graphics", localTheme, props);
10
+ return /* @__PURE__ */ jsxRuntime.jsx("graphics", { ...themed, theme: nestedTheme });
11
+ }
12
+ exports.Graphics = Graphics;
13
+ //# sourceMappingURL=Graphics.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Graphics.cjs","sources":["../../../src/components/custom/Graphics.tsx"],"sourcesContent":["/** @jsxImportSource ../.. */\n/**\n * Graphics component wrapper - strict type-safe wrapper around primitive graphics\n * This component is the public API for Graphics, with controlled prop interface\n */\nimport type * as Phaser from 'phaser'\nimport type { LayoutProps, PhaserProps, TransformProps } from '../../core-props'\nimport { useTheme } from '../../hooks'\nimport { getThemedProps } from '../../theme'\nimport type { ChildrenType, PropsDefaultExtension } from '../../types'\nimport type { VNodeLike } from '../../vdom'\n\n/**\n * Props for Graphics component\n * Explicitly defined to ensure type safety in JSX usage\n */\nexport interface GraphicsProps\n extends\n TransformProps,\n PhaserProps,\n Omit<LayoutProps, 'direction' | 'justifyContent' | 'alignItems' | 'gap' | 'flexWrap'>,\n PropsDefaultExtension<Phaser.GameObjects.Graphics> {\n /**\n * Drawing callback - receives Graphics instance for custom drawing\n * Called on mount and when dependencies change\n * @param graphics - Phaser Graphics instance\n * @param props - Current props (for accessing dynamic values)\n */\n onDraw?: (graphics: Phaser.GameObjects.Graphics, props: GraphicsProps) => void\n\n /**\n * If true, graphics is cleared before onDraw is called\n * Default: true (usually what you want)\n */\n autoClear?: boolean\n\n /**\n * Dependencies array - if any value changes, onDraw is re-executed\n * Similar to React useEffect dependencies\n */\n dependencies?: unknown[]\n\n /** Children are not supported for Graphics component */\n children?: ChildrenType\n}\n\n/**\n * Graphics component\n * Renders custom vector shapes via imperative drawing API\n *\n * @example\n * ```tsx\n * <Graphics\n * onDraw={(g) => {\n * g.fillStyle(0xff0000, 1)\n * g.fillCircle(50, 50, 50)\n * }}\n * />\n * ```\n */\nexport function Graphics(props: GraphicsProps): VNodeLike {\n const localTheme = useTheme()\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const { props: themed, nestedTheme } = getThemedProps('Graphics', localTheme, props as any)\n\n // Cast to any to bypass type checking - the props are correct at runtime\n return <graphics {...themed} theme={nestedTheme} />\n}\n"],"names":["useTheme","getThemedProps","jsx"],"mappings":";;;;;;AA4DO,SAAS,SAAS,OAAiC;AACxD,QAAM,aAAaA,QAAAA,SAAA;AAEnB,QAAM,EAAE,OAAO,QAAQ,YAAA,IAAgBC,MAAAA,eAAe,YAAY,YAAY,KAAY;AAG1F,SAAOC,2BAAAA,IAAC,YAAA,EAAU,GAAG,QAAQ,OAAO,aAAa;AACnD;;"}
@@ -0,0 +1,50 @@
1
+ import { LayoutProps, PhaserProps, TransformProps } from '../../core-props';
2
+ import { ChildrenType, PropsDefaultExtension } from '../../types';
3
+ import { VNodeLike } from '../../vdom';
4
+ /** @jsxImportSource ../.. */
5
+ /**
6
+ * Graphics component wrapper - strict type-safe wrapper around primitive graphics
7
+ * This component is the public API for Graphics, with controlled prop interface
8
+ */
9
+ import type * as Phaser from 'phaser';
10
+ /**
11
+ * Props for Graphics component
12
+ * Explicitly defined to ensure type safety in JSX usage
13
+ */
14
+ export interface GraphicsProps extends TransformProps, PhaserProps, Omit<LayoutProps, 'direction' | 'justifyContent' | 'alignItems' | 'gap' | 'flexWrap'>, PropsDefaultExtension<Phaser.GameObjects.Graphics> {
15
+ /**
16
+ * Drawing callback - receives Graphics instance for custom drawing
17
+ * Called on mount and when dependencies change
18
+ * @param graphics - Phaser Graphics instance
19
+ * @param props - Current props (for accessing dynamic values)
20
+ */
21
+ onDraw?: (graphics: Phaser.GameObjects.Graphics, props: GraphicsProps) => void;
22
+ /**
23
+ * If true, graphics is cleared before onDraw is called
24
+ * Default: true (usually what you want)
25
+ */
26
+ autoClear?: boolean;
27
+ /**
28
+ * Dependencies array - if any value changes, onDraw is re-executed
29
+ * Similar to React useEffect dependencies
30
+ */
31
+ dependencies?: unknown[];
32
+ /** Children are not supported for Graphics component */
33
+ children?: ChildrenType;
34
+ }
35
+ /**
36
+ * Graphics component
37
+ * Renders custom vector shapes via imperative drawing API
38
+ *
39
+ * @example
40
+ * ```tsx
41
+ * <Graphics
42
+ * onDraw={(g) => {
43
+ * g.fillStyle(0xff0000, 1)
44
+ * g.fillCircle(50, 50, 50)
45
+ * }}
46
+ * />
47
+ * ```
48
+ */
49
+ export declare function Graphics(props: GraphicsProps): VNodeLike;
50
+ //# sourceMappingURL=Graphics.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Graphics.d.ts","sourceRoot":"","sources":["../../../src/components/custom/Graphics.tsx"],"names":[],"mappings":"AAAA,6BAA6B;AAC7B;;;GAGG;AACH,OAAO,KAAK,KAAK,MAAM,MAAM,QAAQ,CAAA;AACrC,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAGhF,OAAO,KAAK,EAAE,YAAY,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAA;AACtE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAE3C;;;GAGG;AACH,MAAM,WAAW,aACf,SACE,cAAc,EACd,WAAW,EACX,IAAI,CAAC,WAAW,EAAE,WAAW,GAAG,gBAAgB,GAAG,YAAY,GAAG,KAAK,GAAG,UAAU,CAAC,EACrF,qBAAqB,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC;IACpD;;;;;OAKG;IACH,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC,WAAW,CAAC,QAAQ,EAAE,KAAK,EAAE,aAAa,KAAK,IAAI,CAAA;IAE9E;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAA;IAEnB;;;OAGG;IACH,YAAY,CAAC,EAAE,OAAO,EAAE,CAAA;IAExB,wDAAwD;IACxD,QAAQ,CAAC,EAAE,YAAY,CAAA;CACxB;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,aAAa,GAAG,SAAS,CAOxD"}
@@ -0,0 +1,13 @@
1
+ import { jsx } from "@number10/jsx-core/jsx-runtime";
2
+ import "../../hooks.js";
3
+ import { getThemedProps } from "../../theme.js";
4
+ import { useTheme } from "@number10/jsx-core";
5
+ function Graphics(props) {
6
+ const localTheme = useTheme();
7
+ const { props: themed, nestedTheme } = getThemedProps("Graphics", localTheme, props);
8
+ return /* @__PURE__ */ jsx("graphics", { ...themed, theme: nestedTheme });
9
+ }
10
+ export {
11
+ Graphics
12
+ };
13
+ //# sourceMappingURL=Graphics.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Graphics.js","sources":["../../../src/components/custom/Graphics.tsx"],"sourcesContent":["/** @jsxImportSource ../.. */\n/**\n * Graphics component wrapper - strict type-safe wrapper around primitive graphics\n * This component is the public API for Graphics, with controlled prop interface\n */\nimport type * as Phaser from 'phaser'\nimport type { LayoutProps, PhaserProps, TransformProps } from '../../core-props'\nimport { useTheme } from '../../hooks'\nimport { getThemedProps } from '../../theme'\nimport type { ChildrenType, PropsDefaultExtension } from '../../types'\nimport type { VNodeLike } from '../../vdom'\n\n/**\n * Props for Graphics component\n * Explicitly defined to ensure type safety in JSX usage\n */\nexport interface GraphicsProps\n extends\n TransformProps,\n PhaserProps,\n Omit<LayoutProps, 'direction' | 'justifyContent' | 'alignItems' | 'gap' | 'flexWrap'>,\n PropsDefaultExtension<Phaser.GameObjects.Graphics> {\n /**\n * Drawing callback - receives Graphics instance for custom drawing\n * Called on mount and when dependencies change\n * @param graphics - Phaser Graphics instance\n * @param props - Current props (for accessing dynamic values)\n */\n onDraw?: (graphics: Phaser.GameObjects.Graphics, props: GraphicsProps) => void\n\n /**\n * If true, graphics is cleared before onDraw is called\n * Default: true (usually what you want)\n */\n autoClear?: boolean\n\n /**\n * Dependencies array - if any value changes, onDraw is re-executed\n * Similar to React useEffect dependencies\n */\n dependencies?: unknown[]\n\n /** Children are not supported for Graphics component */\n children?: ChildrenType\n}\n\n/**\n * Graphics component\n * Renders custom vector shapes via imperative drawing API\n *\n * @example\n * ```tsx\n * <Graphics\n * onDraw={(g) => {\n * g.fillStyle(0xff0000, 1)\n * g.fillCircle(50, 50, 50)\n * }}\n * />\n * ```\n */\nexport function Graphics(props: GraphicsProps): VNodeLike {\n const localTheme = useTheme()\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const { props: themed, nestedTheme } = getThemedProps('Graphics', localTheme, props as any)\n\n // Cast to any to bypass type checking - the props are correct at runtime\n return <graphics {...themed} theme={nestedTheme} />\n}\n"],"names":[],"mappings":";;;;AA4DO,SAAS,SAAS,OAAiC;AACxD,QAAM,aAAa,SAAA;AAEnB,QAAM,EAAE,OAAO,QAAQ,YAAA,IAAgB,eAAe,YAAY,YAAY,KAAY;AAG1F,SAAO,oBAAC,YAAA,EAAU,GAAG,QAAQ,OAAO,aAAa;AACnD;"}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("@number10/jsx-core/jsx-runtime");
4
+ require("../../hooks.cjs");
5
+ const theme = require("../../theme.cjs");
6
+ const jsxCore = require("@number10/jsx-core");
7
+ function NineSlice(props) {
8
+ const localTheme = jsxCore.useTheme();
9
+ const { props: themed, nestedTheme } = theme.getThemedProps("NineSlice", localTheme, props);
10
+ return /* @__PURE__ */ jsxRuntime.jsx("nineslice", { ...themed, theme: nestedTheme });
11
+ }
12
+ exports.NineSlice = NineSlice;
13
+ //# sourceMappingURL=NineSlice.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NineSlice.cjs","sources":["../../../src/components/custom/NineSlice.tsx"],"sourcesContent":["/** @jsxImportSource ../.. */\n/**\n * NineSlice component wrapper - strict type-safe wrapper around primitive nineslice\n * This component is the public API for NineSlice, with controlled prop interface\n */\nimport type * as Phaser from 'phaser'\nimport type { LayoutProps, PhaserProps, TransformProps } from '../../core-props'\nimport { useTheme } from '../../hooks'\nimport { getThemedProps } from '../../theme'\nimport type { ChildrenType, PropsDefaultExtension } from '../../types'\nimport type { VNodeLike } from '../../vdom'\n\n/**\n * Props for NineSlice component\n * Explicitly defined to ensure type safety in JSX usage\n */\nexport interface NineSliceProps\n extends\n Omit<TransformProps, 'scaleX' | 'scaleY' | 'scale'>,\n PhaserProps,\n Omit<LayoutProps, 'direction' | 'justifyContent' | 'alignItems' | 'gap' | 'flexWrap'>,\n PropsDefaultExtension<Phaser.GameObjects.NineSlice> {\n /** Texture key (loaded via Phaser's texture manager) */\n texture: string\n\n /** Optional frame from texture atlas */\n frame?: string | number\n\n /** Tint color applied to NineSlice (0xRRGGBB) */\n tint?: number | undefined\n\n /**\n * Width of the left slice (in pixels of source texture)\n * Defines the non-stretching left border/corner area\n */\n leftWidth: number\n\n /**\n * Width of the right slice (in pixels of source texture)\n * Defines the non-stretching right border/corner area\n */\n rightWidth: number\n\n /**\n * Height of the top slice (in pixels of source texture)\n * Optional - omit for 3-slice mode (horizontal only)\n */\n topHeight?: number\n\n /**\n * Height of the bottom slice (in pixels of source texture)\n * Optional - omit for 3-slice mode (horizontal only)\n */\n bottomHeight?: number\n\n /** Children are not supported for NineSlice component */\n children?: ChildrenType\n}\n\n/**\n * NineSlice component\n * Displays scalable 9-slice textures with preserved corners\n *\n * @example\n * ```tsx\n * // Basic 9-slice panel\n * <NineSlice\n * texture=\"ui\"\n * frame=\"panel\"\n * width={300}\n * height={200}\n * leftWidth={20}\n * rightWidth={20}\n * topHeight={20}\n * bottomHeight={20}\n * />\n *\n * // 3-slice horizontal bar (no vertical slicing)\n * <NineSlice\n * texture=\"ui\"\n * frame=\"bar\"\n * width={400}\n * height={60}\n * leftWidth={15}\n * rightWidth={15}\n * />\n *\n * // Tinted panel\n * <NineSlice\n * texture=\"ui\"\n * frame=\"button\"\n * width={250}\n * height={100}\n * leftWidth={14}\n * rightWidth={14}\n * topHeight={14}\n * bottomHeight={14}\n * tint={0xff6600}\n * />\n * ```\n */\nexport function NineSlice(props: NineSliceProps): VNodeLike {\n const localTheme = useTheme()\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const { props: themed, nestedTheme } = getThemedProps('NineSlice', localTheme, props as any)\n\n // Cast to any to bypass type checking - the props are correct at runtime\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return <nineslice {...(themed as any)} theme={nestedTheme} />\n}\n"],"names":["useTheme","getThemedProps","jsx"],"mappings":";;;;;;AAqGO,SAAS,UAAU,OAAkC;AAC1D,QAAM,aAAaA,QAAAA,SAAA;AAEnB,QAAM,EAAE,OAAO,QAAQ,YAAA,IAAgBC,MAAAA,eAAe,aAAa,YAAY,KAAY;AAI3F,SAAOC,2BAAAA,IAAC,aAAA,EAAW,GAAI,QAAgB,OAAO,aAAa;AAC7D;;"}
@@ -0,0 +1,87 @@
1
+ import { LayoutProps, PhaserProps, TransformProps } from '../../core-props';
2
+ import { ChildrenType, PropsDefaultExtension } from '../../types';
3
+ import { VNodeLike } from '../../vdom';
4
+ /** @jsxImportSource ../.. */
5
+ /**
6
+ * NineSlice component wrapper - strict type-safe wrapper around primitive nineslice
7
+ * This component is the public API for NineSlice, with controlled prop interface
8
+ */
9
+ import type * as Phaser from 'phaser';
10
+ /**
11
+ * Props for NineSlice component
12
+ * Explicitly defined to ensure type safety in JSX usage
13
+ */
14
+ export interface NineSliceProps extends Omit<TransformProps, 'scaleX' | 'scaleY' | 'scale'>, PhaserProps, Omit<LayoutProps, 'direction' | 'justifyContent' | 'alignItems' | 'gap' | 'flexWrap'>, PropsDefaultExtension<Phaser.GameObjects.NineSlice> {
15
+ /** Texture key (loaded via Phaser's texture manager) */
16
+ texture: string;
17
+ /** Optional frame from texture atlas */
18
+ frame?: string | number;
19
+ /** Tint color applied to NineSlice (0xRRGGBB) */
20
+ tint?: number | undefined;
21
+ /**
22
+ * Width of the left slice (in pixels of source texture)
23
+ * Defines the non-stretching left border/corner area
24
+ */
25
+ leftWidth: number;
26
+ /**
27
+ * Width of the right slice (in pixels of source texture)
28
+ * Defines the non-stretching right border/corner area
29
+ */
30
+ rightWidth: number;
31
+ /**
32
+ * Height of the top slice (in pixels of source texture)
33
+ * Optional - omit for 3-slice mode (horizontal only)
34
+ */
35
+ topHeight?: number;
36
+ /**
37
+ * Height of the bottom slice (in pixels of source texture)
38
+ * Optional - omit for 3-slice mode (horizontal only)
39
+ */
40
+ bottomHeight?: number;
41
+ /** Children are not supported for NineSlice component */
42
+ children?: ChildrenType;
43
+ }
44
+ /**
45
+ * NineSlice component
46
+ * Displays scalable 9-slice textures with preserved corners
47
+ *
48
+ * @example
49
+ * ```tsx
50
+ * // Basic 9-slice panel
51
+ * <NineSlice
52
+ * texture="ui"
53
+ * frame="panel"
54
+ * width={300}
55
+ * height={200}
56
+ * leftWidth={20}
57
+ * rightWidth={20}
58
+ * topHeight={20}
59
+ * bottomHeight={20}
60
+ * />
61
+ *
62
+ * // 3-slice horizontal bar (no vertical slicing)
63
+ * <NineSlice
64
+ * texture="ui"
65
+ * frame="bar"
66
+ * width={400}
67
+ * height={60}
68
+ * leftWidth={15}
69
+ * rightWidth={15}
70
+ * />
71
+ *
72
+ * // Tinted panel
73
+ * <NineSlice
74
+ * texture="ui"
75
+ * frame="button"
76
+ * width={250}
77
+ * height={100}
78
+ * leftWidth={14}
79
+ * rightWidth={14}
80
+ * topHeight={14}
81
+ * bottomHeight={14}
82
+ * tint={0xff6600}
83
+ * />
84
+ * ```
85
+ */
86
+ export declare function NineSlice(props: NineSliceProps): VNodeLike;
87
+ //# sourceMappingURL=NineSlice.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NineSlice.d.ts","sourceRoot":"","sources":["../../../src/components/custom/NineSlice.tsx"],"names":[],"mappings":"AAAA,6BAA6B;AAC7B;;;GAGG;AACH,OAAO,KAAK,KAAK,MAAM,MAAM,QAAQ,CAAA;AACrC,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAGhF,OAAO,KAAK,EAAE,YAAY,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAA;AACtE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAE3C;;;GAGG;AACH,MAAM,WAAW,cACf,SACE,IAAI,CAAC,cAAc,EAAE,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAC,EACnD,WAAW,EACX,IAAI,CAAC,WAAW,EAAE,WAAW,GAAG,gBAAgB,GAAG,YAAY,GAAG,KAAK,GAAG,UAAU,CAAC,EACrF,qBAAqB,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC;IACrD,wDAAwD;IACxD,OAAO,EAAE,MAAM,CAAA;IAEf,wCAAwC;IACxC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IAEvB,iDAAiD;IACjD,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAEzB;;;OAGG;IACH,SAAS,EAAE,MAAM,CAAA;IAEjB;;;OAGG;IACH,UAAU,EAAE,MAAM,CAAA;IAElB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;IAElB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAA;IAErB,yDAAyD;IACzD,QAAQ,CAAC,EAAE,YAAY,CAAA;CACxB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,cAAc,GAAG,SAAS,CAQ1D"}
@@ -0,0 +1,13 @@
1
+ import { jsx } from "@number10/jsx-core/jsx-runtime";
2
+ import "../../hooks.js";
3
+ import { getThemedProps } from "../../theme.js";
4
+ import { useTheme } from "@number10/jsx-core";
5
+ function NineSlice(props) {
6
+ const localTheme = useTheme();
7
+ const { props: themed, nestedTheme } = getThemedProps("NineSlice", localTheme, props);
8
+ return /* @__PURE__ */ jsx("nineslice", { ...themed, theme: nestedTheme });
9
+ }
10
+ export {
11
+ NineSlice
12
+ };
13
+ //# sourceMappingURL=NineSlice.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NineSlice.js","sources":["../../../src/components/custom/NineSlice.tsx"],"sourcesContent":["/** @jsxImportSource ../.. */\n/**\n * NineSlice component wrapper - strict type-safe wrapper around primitive nineslice\n * This component is the public API for NineSlice, with controlled prop interface\n */\nimport type * as Phaser from 'phaser'\nimport type { LayoutProps, PhaserProps, TransformProps } from '../../core-props'\nimport { useTheme } from '../../hooks'\nimport { getThemedProps } from '../../theme'\nimport type { ChildrenType, PropsDefaultExtension } from '../../types'\nimport type { VNodeLike } from '../../vdom'\n\n/**\n * Props for NineSlice component\n * Explicitly defined to ensure type safety in JSX usage\n */\nexport interface NineSliceProps\n extends\n Omit<TransformProps, 'scaleX' | 'scaleY' | 'scale'>,\n PhaserProps,\n Omit<LayoutProps, 'direction' | 'justifyContent' | 'alignItems' | 'gap' | 'flexWrap'>,\n PropsDefaultExtension<Phaser.GameObjects.NineSlice> {\n /** Texture key (loaded via Phaser's texture manager) */\n texture: string\n\n /** Optional frame from texture atlas */\n frame?: string | number\n\n /** Tint color applied to NineSlice (0xRRGGBB) */\n tint?: number | undefined\n\n /**\n * Width of the left slice (in pixels of source texture)\n * Defines the non-stretching left border/corner area\n */\n leftWidth: number\n\n /**\n * Width of the right slice (in pixels of source texture)\n * Defines the non-stretching right border/corner area\n */\n rightWidth: number\n\n /**\n * Height of the top slice (in pixels of source texture)\n * Optional - omit for 3-slice mode (horizontal only)\n */\n topHeight?: number\n\n /**\n * Height of the bottom slice (in pixels of source texture)\n * Optional - omit for 3-slice mode (horizontal only)\n */\n bottomHeight?: number\n\n /** Children are not supported for NineSlice component */\n children?: ChildrenType\n}\n\n/**\n * NineSlice component\n * Displays scalable 9-slice textures with preserved corners\n *\n * @example\n * ```tsx\n * // Basic 9-slice panel\n * <NineSlice\n * texture=\"ui\"\n * frame=\"panel\"\n * width={300}\n * height={200}\n * leftWidth={20}\n * rightWidth={20}\n * topHeight={20}\n * bottomHeight={20}\n * />\n *\n * // 3-slice horizontal bar (no vertical slicing)\n * <NineSlice\n * texture=\"ui\"\n * frame=\"bar\"\n * width={400}\n * height={60}\n * leftWidth={15}\n * rightWidth={15}\n * />\n *\n * // Tinted panel\n * <NineSlice\n * texture=\"ui\"\n * frame=\"button\"\n * width={250}\n * height={100}\n * leftWidth={14}\n * rightWidth={14}\n * topHeight={14}\n * bottomHeight={14}\n * tint={0xff6600}\n * />\n * ```\n */\nexport function NineSlice(props: NineSliceProps): VNodeLike {\n const localTheme = useTheme()\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const { props: themed, nestedTheme } = getThemedProps('NineSlice', localTheme, props as any)\n\n // Cast to any to bypass type checking - the props are correct at runtime\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return <nineslice {...(themed as any)} theme={nestedTheme} />\n}\n"],"names":[],"mappings":";;;;AAqGO,SAAS,UAAU,OAAkC;AAC1D,QAAM,aAAa,SAAA;AAEnB,QAAM,EAAE,OAAO,QAAQ,YAAA,IAAgB,eAAe,aAAa,YAAY,KAAY;AAI3F,SAAO,oBAAC,aAAA,EAAW,GAAI,QAAgB,OAAO,aAAa;AAC7D;"}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("@number10/jsx-core/jsx-runtime");
4
+ function Particles(props) {
5
+ return /* @__PURE__ */ jsxRuntime.jsx("particles", { ...props });
6
+ }
7
+ exports.Particles = Particles;
8
+ //# sourceMappingURL=Particles.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Particles.cjs","sources":["../../../src/components/custom/Particles.tsx"],"sourcesContent":["/** @jsxImportSource ../.. */\n/**\n * Particles component wrapper - typed wrapper around primitive particles\n */\nimport type { LayoutProps, PhaserProps, TransformProps } from '../../core-props'\nimport type { ParticleDeathZoneConfig, ParticleZoneConfig } from '../../particles/emit-zone'\nimport type { ParticlesHandle } from '../../particles/particle-types'\nimport type { ParticleEmitterConfig, ParticlePresetName } from '../../particles/preset-registry'\nimport type { PropsDefaultExtension } from '../../types'\nimport type { VNodeLike } from '../../vdom'\n\nexport interface ParticlesProps\n extends\n TransformProps,\n PhaserProps,\n Omit<LayoutProps, 'direction' | 'justifyContent' | 'alignItems' | 'gap' | 'flexWrap'>,\n PropsDefaultExtension<ParticlesHandle> {\n texture: string\n frame?: string | number\n preset?: ParticlePresetName\n config?: ParticleEmitterConfig\n /** Where particles are born */\n emitZone?: ParticleZoneConfig\n /**\n * Where particles are born.\n * @deprecated Use emitZone.\n */\n zone?: ParticleZoneConfig\n /** Where particles are removed */\n deathZones?: ParticleDeathZoneConfig | ParticleDeathZoneConfig[] | undefined\n /**\n * Where particles are removed.\n * @deprecated Use deathZones.\n */\n excludeZones?: ParticleDeathZoneConfig | ParticleDeathZoneConfig[] | undefined\n}\n\nexport function Particles(props: ParticlesProps): VNodeLike {\n return <particles {...props} />\n}\n"],"names":["jsx"],"mappings":";;;AAqCO,SAAS,UAAU,OAAkC;AAC1D,SAAOA,+BAAC,aAAA,EAAW,GAAG,MAAA,CAAO;AAC/B;;"}