@easemate/web-kit 0.2.0 → 0.3.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 (437) hide show
  1. package/build/decorators.cjs +921 -0
  2. package/build/decorators.cjs.map +1 -0
  3. package/build/decorators.d.cts +123 -0
  4. package/build/decorators.d.ts +123 -0
  5. package/build/decorators.js +889 -0
  6. package/build/decorators.js.map +1 -0
  7. package/build/elements.cjs +27604 -0
  8. package/build/elements.cjs.map +1 -0
  9. package/build/elements.d.cts +373 -0
  10. package/build/elements.d.ts +373 -0
  11. package/build/elements.js +27528 -0
  12. package/build/elements.js.map +1 -0
  13. package/build/{elements/monitor/index.d.ts → index-31iOHBv0.d.cts} +26 -5
  14. package/build/{elements/monitor/index.d.cts → index-31iOHBv0.d.ts} +26 -5
  15. package/build/{elements/panel/index.d.cts → index-NzGpn7ai.d.cts} +6 -3
  16. package/build/{elements/panel/index.d.ts → index-NzGpn7ai.d.ts} +6 -3
  17. package/build/{elements/state/index.d.ts → index-qZoNKsHn.d.cts} +46 -5
  18. package/build/{elements/state/index.d.cts → index-qZoNKsHn.d.ts} +46 -5
  19. package/build/index.cjs +38651 -38
  20. package/build/index.cjs.map +1 -0
  21. package/build/index.d.cts +85 -6
  22. package/build/index.d.ts +85 -6
  23. package/build/index.js +38535 -12
  24. package/build/index.js.map +1 -0
  25. package/build/init-B7gNNyTd.d.ts +235 -0
  26. package/build/init-DwVGVxkx.d.cts +235 -0
  27. package/build/jsx.cjs +31 -0
  28. package/build/jsx.cjs.map +1 -0
  29. package/build/jsx.d.cts +317 -0
  30. package/build/jsx.d.ts +317 -0
  31. package/build/jsx.js +6 -0
  32. package/build/jsx.js.map +1 -0
  33. package/build/outside-click-rZ3Di_WX.d.cts +16 -0
  34. package/build/outside-click-rZ3Di_WX.d.ts +16 -0
  35. package/build/react.cjs +37827 -0
  36. package/build/react.cjs.map +1 -0
  37. package/build/react.d.cts +356 -0
  38. package/build/react.d.ts +356 -0
  39. package/build/react.js +37802 -0
  40. package/build/react.js.map +1 -0
  41. package/build/register.cjs +35832 -36
  42. package/build/register.cjs.map +1 -0
  43. package/build/register.d.cts +4 -33
  44. package/build/register.d.ts +4 -33
  45. package/build/register.js +35831 -35
  46. package/build/register.js.map +1 -0
  47. package/build/register.server.cjs +19 -0
  48. package/build/register.server.cjs.map +1 -0
  49. package/build/register.server.d.cts +2 -0
  50. package/build/register.server.d.ts +2 -0
  51. package/build/register.server.js +1 -0
  52. package/build/register.server.js.map +1 -0
  53. package/build/registry-9GX9KTG1.d.cts +264 -0
  54. package/build/registry-9GX9KTG1.d.ts +264 -0
  55. package/build/template-helpers-CguLXtLD.d.cts +10 -0
  56. package/build/template-helpers-CguLXtLD.d.ts +10 -0
  57. package/build/theme.cjs +746 -0
  58. package/build/theme.cjs.map +1 -0
  59. package/build/{theme/index.d.cts → theme.d.cts} +41 -21
  60. package/build/{theme/index.d.ts → theme.d.ts} +41 -21
  61. package/build/theme.js +692 -0
  62. package/build/theme.js.map +1 -0
  63. package/build/utils.cjs +205 -0
  64. package/build/utils.cjs.map +1 -0
  65. package/build/utils.d.cts +26 -0
  66. package/build/utils.d.ts +26 -0
  67. package/build/utils.js +167 -0
  68. package/build/utils.js.map +1 -0
  69. package/package.json +47 -33
  70. package/build/components/code/index.cjs +0 -152
  71. package/build/components/code/index.d.cts +0 -11
  72. package/build/components/code/index.d.ts +0 -11
  73. package/build/components/code/index.js +0 -148
  74. package/build/components/code/utils/highlight-api.cjs +0 -18
  75. package/build/components/code/utils/highlight-api.d.cts +0 -7
  76. package/build/components/code/utils/highlight-api.d.ts +0 -7
  77. package/build/components/code/utils/highlight-api.js +0 -14
  78. package/build/components/code/utils/syntax-grammars.cjs +0 -62
  79. package/build/components/code/utils/syntax-grammars.d.cts +0 -7
  80. package/build/components/code/utils/syntax-grammars.d.ts +0 -7
  81. package/build/components/code/utils/syntax-grammars.js +0 -59
  82. package/build/components/code/utils/syntax-highlighter-theme.cjs +0 -27
  83. package/build/components/code/utils/syntax-highlighter-theme.d.cts +0 -3
  84. package/build/components/code/utils/syntax-highlighter-theme.d.ts +0 -3
  85. package/build/components/code/utils/syntax-highlighter-theme.js +0 -23
  86. package/build/components/code/utils/syntax-highlighter-types.cjs +0 -2
  87. package/build/components/code/utils/syntax-highlighter-types.d.cts +0 -12
  88. package/build/components/code/utils/syntax-highlighter-types.d.ts +0 -12
  89. package/build/components/code/utils/syntax-highlighter-types.js +0 -1
  90. package/build/components/code/utils/syntax-tokenizer.cjs +0 -63
  91. package/build/components/code/utils/syntax-tokenizer.d.cts +0 -3
  92. package/build/components/code/utils/syntax-tokenizer.d.ts +0 -3
  93. package/build/components/code/utils/syntax-tokenizer.js +0 -58
  94. package/build/components/curve/bezier-conversion.cjs +0 -23
  95. package/build/components/curve/bezier-conversion.d.cts +0 -2
  96. package/build/components/curve/bezier-conversion.d.ts +0 -2
  97. package/build/components/curve/bezier-conversion.js +0 -19
  98. package/build/components/curve/canvas-controls.cjs +0 -300
  99. package/build/components/curve/canvas-controls.d.cts +0 -12
  100. package/build/components/curve/canvas-controls.d.ts +0 -12
  101. package/build/components/curve/canvas-controls.js +0 -296
  102. package/build/components/curve/canvas.cjs +0 -1208
  103. package/build/components/curve/canvas.d.cts +0 -24
  104. package/build/components/curve/canvas.d.ts +0 -24
  105. package/build/components/curve/canvas.js +0 -1204
  106. package/build/components/curve/constants.cjs +0 -203
  107. package/build/components/curve/constants.d.cts +0 -23
  108. package/build/components/curve/constants.d.ts +0 -23
  109. package/build/components/curve/constants.js +0 -200
  110. package/build/components/curve/controls.cjs +0 -942
  111. package/build/components/curve/controls.d.cts +0 -37
  112. package/build/components/curve/controls.d.ts +0 -37
  113. package/build/components/curve/controls.js +0 -938
  114. package/build/components/curve/index.cjs +0 -335
  115. package/build/components/curve/index.d.cts +0 -31
  116. package/build/components/curve/index.d.ts +0 -31
  117. package/build/components/curve/index.js +0 -330
  118. package/build/components/curve/output.cjs +0 -141
  119. package/build/components/curve/output.d.cts +0 -19
  120. package/build/components/curve/output.d.ts +0 -19
  121. package/build/components/curve/output.js +0 -137
  122. package/build/components/curve/styles.cjs +0 -493
  123. package/build/components/curve/styles.d.cts +0 -6
  124. package/build/components/curve/styles.d.ts +0 -6
  125. package/build/components/curve/styles.js +0 -490
  126. package/build/components/curve/svg-renderer.cjs +0 -185
  127. package/build/components/curve/svg-renderer.d.cts +0 -9
  128. package/build/components/curve/svg-renderer.d.ts +0 -9
  129. package/build/components/curve/svg-renderer.js +0 -175
  130. package/build/components/curve/toolbar.cjs +0 -368
  131. package/build/components/curve/toolbar.d.cts +0 -26
  132. package/build/components/curve/toolbar.d.ts +0 -26
  133. package/build/components/curve/toolbar.js +0 -364
  134. package/build/components/curve/types.cjs +0 -10
  135. package/build/components/curve/types.d.cts +0 -33
  136. package/build/components/curve/types.d.ts +0 -33
  137. package/build/components/curve/types.js +0 -7
  138. package/build/components/curve/utils.cjs +0 -541
  139. package/build/components/curve/utils.d.cts +0 -33
  140. package/build/components/curve/utils.d.ts +0 -33
  141. package/build/components/curve/utils.js +0 -521
  142. package/build/components/index.cjs +0 -18
  143. package/build/components/index.d.cts +0 -2
  144. package/build/components/index.d.ts +0 -2
  145. package/build/components/index.js +0 -2
  146. package/build/decorators/Component.cjs +0 -127
  147. package/build/decorators/Component.d.cts +0 -28
  148. package/build/decorators/Component.d.ts +0 -28
  149. package/build/decorators/Component.js +0 -123
  150. package/build/decorators/Listen.cjs +0 -154
  151. package/build/decorators/Listen.d.cts +0 -18
  152. package/build/decorators/Listen.d.ts +0 -18
  153. package/build/decorators/Listen.js +0 -151
  154. package/build/decorators/OutsideClick.cjs +0 -64
  155. package/build/decorators/OutsideClick.d.cts +0 -16
  156. package/build/decorators/OutsideClick.d.ts +0 -16
  157. package/build/decorators/OutsideClick.js +0 -59
  158. package/build/decorators/Prop.cjs +0 -273
  159. package/build/decorators/Prop.d.cts +0 -22
  160. package/build/decorators/Prop.d.ts +0 -22
  161. package/build/decorators/Prop.js +0 -270
  162. package/build/decorators/Query.cjs +0 -79
  163. package/build/decorators/Query.d.cts +0 -27
  164. package/build/decorators/Query.d.ts +0 -27
  165. package/build/decorators/Query.js +0 -76
  166. package/build/decorators/Watch.cjs +0 -52
  167. package/build/decorators/Watch.d.cts +0 -11
  168. package/build/decorators/Watch.d.ts +0 -11
  169. package/build/decorators/Watch.js +0 -49
  170. package/build/decorators/index.cjs +0 -15
  171. package/build/decorators/index.d.cts +0 -6
  172. package/build/decorators/index.d.ts +0 -6
  173. package/build/decorators/index.js +0 -6
  174. package/build/elements/button/index.cjs +0 -214
  175. package/build/elements/button/index.d.cts +0 -11
  176. package/build/elements/button/index.d.ts +0 -11
  177. package/build/elements/button/index.js +0 -210
  178. package/build/elements/checkbox/index.cjs +0 -316
  179. package/build/elements/checkbox/index.d.cts +0 -14
  180. package/build/elements/checkbox/index.d.ts +0 -14
  181. package/build/elements/checkbox/index.js +0 -312
  182. package/build/elements/color/index.cjs +0 -154
  183. package/build/elements/color/index.d.cts +0 -18
  184. package/build/elements/color/index.d.ts +0 -18
  185. package/build/elements/color/index.js +0 -150
  186. package/build/elements/color/picker.cjs +0 -544
  187. package/build/elements/color/picker.d.cts +0 -37
  188. package/build/elements/color/picker.d.ts +0 -37
  189. package/build/elements/color/picker.js +0 -540
  190. package/build/elements/color/utils.cjs +0 -235
  191. package/build/elements/color/utils.d.cts +0 -37
  192. package/build/elements/color/utils.d.ts +0 -37
  193. package/build/elements/color/utils.js +0 -218
  194. package/build/elements/dropdown/index.cjs +0 -875
  195. package/build/elements/dropdown/index.d.cts +0 -30
  196. package/build/elements/dropdown/index.d.ts +0 -30
  197. package/build/elements/dropdown/index.js +0 -871
  198. package/build/elements/field/index.cjs +0 -82
  199. package/build/elements/field/index.d.cts +0 -4
  200. package/build/elements/field/index.d.ts +0 -4
  201. package/build/elements/field/index.js +0 -78
  202. package/build/elements/icons/animation/chevron.cjs +0 -57
  203. package/build/elements/icons/animation/chevron.d.cts +0 -10
  204. package/build/elements/icons/animation/chevron.d.ts +0 -10
  205. package/build/elements/icons/animation/chevron.js +0 -53
  206. package/build/elements/icons/animation/clear.cjs +0 -74
  207. package/build/elements/icons/animation/clear.d.cts +0 -3
  208. package/build/elements/icons/animation/clear.d.ts +0 -3
  209. package/build/elements/icons/animation/clear.js +0 -70
  210. package/build/elements/icons/animation/grid.cjs +0 -77
  211. package/build/elements/icons/animation/grid.d.cts +0 -8
  212. package/build/elements/icons/animation/grid.d.ts +0 -8
  213. package/build/elements/icons/animation/grid.js +0 -73
  214. package/build/elements/icons/animation/loading.cjs +0 -68
  215. package/build/elements/icons/animation/loading.d.cts +0 -3
  216. package/build/elements/icons/animation/loading.d.ts +0 -3
  217. package/build/elements/icons/animation/loading.js +0 -64
  218. package/build/elements/icons/animation/snap.cjs +0 -133
  219. package/build/elements/icons/animation/snap.d.cts +0 -8
  220. package/build/elements/icons/animation/snap.d.ts +0 -8
  221. package/build/elements/icons/animation/snap.js +0 -129
  222. package/build/elements/icons/index.cjs +0 -40
  223. package/build/elements/icons/index.d.cts +0 -24
  224. package/build/elements/icons/index.d.ts +0 -24
  225. package/build/elements/icons/index.js +0 -24
  226. package/build/elements/icons/interface/anchor-add.cjs +0 -35
  227. package/build/elements/icons/interface/anchor-add.d.cts +0 -3
  228. package/build/elements/icons/interface/anchor-add.d.ts +0 -3
  229. package/build/elements/icons/interface/anchor-add.js +0 -31
  230. package/build/elements/icons/interface/anchor-remove.cjs +0 -34
  231. package/build/elements/icons/interface/anchor-remove.d.cts +0 -3
  232. package/build/elements/icons/interface/anchor-remove.d.ts +0 -3
  233. package/build/elements/icons/interface/anchor-remove.js +0 -30
  234. package/build/elements/icons/interface/arrow-up.cjs +0 -30
  235. package/build/elements/icons/interface/arrow-up.d.cts +0 -3
  236. package/build/elements/icons/interface/arrow-up.d.ts +0 -3
  237. package/build/elements/icons/interface/arrow-up.js +0 -26
  238. package/build/elements/icons/interface/arrows-vertical.cjs +0 -30
  239. package/build/elements/icons/interface/arrows-vertical.d.cts +0 -3
  240. package/build/elements/icons/interface/arrows-vertical.d.ts +0 -3
  241. package/build/elements/icons/interface/arrows-vertical.js +0 -26
  242. package/build/elements/icons/interface/bezier-angle.cjs +0 -33
  243. package/build/elements/icons/interface/bezier-angle.d.cts +0 -3
  244. package/build/elements/icons/interface/bezier-angle.d.ts +0 -3
  245. package/build/elements/icons/interface/bezier-angle.js +0 -29
  246. package/build/elements/icons/interface/bezier-distribute.cjs +0 -34
  247. package/build/elements/icons/interface/bezier-distribute.d.cts +0 -3
  248. package/build/elements/icons/interface/bezier-distribute.d.ts +0 -3
  249. package/build/elements/icons/interface/bezier-distribute.js +0 -30
  250. package/build/elements/icons/interface/bezier-length.cjs +0 -31
  251. package/build/elements/icons/interface/bezier-length.d.cts +0 -3
  252. package/build/elements/icons/interface/bezier-length.d.ts +0 -3
  253. package/build/elements/icons/interface/bezier-length.js +0 -27
  254. package/build/elements/icons/interface/bezier-mirror.cjs +0 -31
  255. package/build/elements/icons/interface/bezier-mirror.d.cts +0 -3
  256. package/build/elements/icons/interface/bezier-mirror.d.ts +0 -3
  257. package/build/elements/icons/interface/bezier-mirror.js +0 -27
  258. package/build/elements/icons/interface/bezier.cjs +0 -26
  259. package/build/elements/icons/interface/bezier.d.cts +0 -3
  260. package/build/elements/icons/interface/bezier.d.ts +0 -3
  261. package/build/elements/icons/interface/bezier.js +0 -22
  262. package/build/elements/icons/interface/check.cjs +0 -30
  263. package/build/elements/icons/interface/check.d.cts +0 -3
  264. package/build/elements/icons/interface/check.d.ts +0 -3
  265. package/build/elements/icons/interface/check.js +0 -26
  266. package/build/elements/icons/interface/circle-arrow-left.cjs +0 -30
  267. package/build/elements/icons/interface/circle-arrow-left.d.cts +0 -3
  268. package/build/elements/icons/interface/circle-arrow-left.d.ts +0 -3
  269. package/build/elements/icons/interface/circle-arrow-left.js +0 -26
  270. package/build/elements/icons/interface/circle-arrow-right.cjs +0 -30
  271. package/build/elements/icons/interface/circle-arrow-right.d.cts +0 -3
  272. package/build/elements/icons/interface/circle-arrow-right.d.ts +0 -3
  273. package/build/elements/icons/interface/circle-arrow-right.js +0 -26
  274. package/build/elements/icons/interface/code.cjs +0 -30
  275. package/build/elements/icons/interface/code.d.cts +0 -3
  276. package/build/elements/icons/interface/code.d.ts +0 -3
  277. package/build/elements/icons/interface/code.js +0 -26
  278. package/build/elements/icons/interface/dots.cjs +0 -32
  279. package/build/elements/icons/interface/dots.d.cts +0 -3
  280. package/build/elements/icons/interface/dots.d.ts +0 -3
  281. package/build/elements/icons/interface/dots.js +0 -28
  282. package/build/elements/icons/interface/mention.cjs +0 -30
  283. package/build/elements/icons/interface/mention.d.cts +0 -3
  284. package/build/elements/icons/interface/mention.d.ts +0 -3
  285. package/build/elements/icons/interface/mention.js +0 -26
  286. package/build/elements/icons/interface/minus.cjs +0 -30
  287. package/build/elements/icons/interface/minus.d.cts +0 -3
  288. package/build/elements/icons/interface/minus.d.ts +0 -3
  289. package/build/elements/icons/interface/minus.js +0 -26
  290. package/build/elements/icons/interface/picker.cjs +0 -34
  291. package/build/elements/icons/interface/picker.d.cts +0 -3
  292. package/build/elements/icons/interface/picker.d.ts +0 -3
  293. package/build/elements/icons/interface/picker.js +0 -30
  294. package/build/elements/icons/interface/plus.cjs +0 -30
  295. package/build/elements/icons/interface/plus.d.cts +0 -3
  296. package/build/elements/icons/interface/plus.d.ts +0 -3
  297. package/build/elements/icons/interface/plus.js +0 -26
  298. package/build/elements/icons/interface/settings.cjs +0 -30
  299. package/build/elements/icons/interface/settings.d.cts +0 -3
  300. package/build/elements/icons/interface/settings.d.ts +0 -3
  301. package/build/elements/icons/interface/settings.js +0 -26
  302. package/build/elements/index.cjs +0 -65
  303. package/build/elements/index.d.cts +0 -23
  304. package/build/elements/index.d.ts +0 -23
  305. package/build/elements/index.js +0 -23
  306. package/build/elements/input/index.cjs +0 -273
  307. package/build/elements/input/index.d.cts +0 -17
  308. package/build/elements/input/index.d.ts +0 -17
  309. package/build/elements/input/index.js +0 -269
  310. package/build/elements/logo/index.cjs +0 -732
  311. package/build/elements/logo/index.d.cts +0 -17
  312. package/build/elements/logo/index.d.ts +0 -17
  313. package/build/elements/logo/index.js +0 -728
  314. package/build/elements/monitor/fps.cjs +0 -432
  315. package/build/elements/monitor/fps.d.cts +0 -21
  316. package/build/elements/monitor/fps.d.ts +0 -21
  317. package/build/elements/monitor/fps.js +0 -428
  318. package/build/elements/monitor/index.cjs +0 -670
  319. package/build/elements/monitor/index.js +0 -666
  320. package/build/elements/number/index.cjs +0 -173
  321. package/build/elements/number/index.d.cts +0 -19
  322. package/build/elements/number/index.d.ts +0 -19
  323. package/build/elements/number/index.js +0 -169
  324. package/build/elements/origin/index.cjs +0 -169
  325. package/build/elements/origin/index.d.cts +0 -12
  326. package/build/elements/origin/index.d.ts +0 -12
  327. package/build/elements/origin/index.js +0 -165
  328. package/build/elements/panel/index.cjs +0 -496
  329. package/build/elements/panel/index.js +0 -492
  330. package/build/elements/popover/index.cjs +0 -209
  331. package/build/elements/popover/index.d.cts +0 -19
  332. package/build/elements/popover/index.d.ts +0 -19
  333. package/build/elements/popover/index.js +0 -205
  334. package/build/elements/radio/index.cjs +0 -301
  335. package/build/elements/radio/index.d.cts +0 -13
  336. package/build/elements/radio/index.d.ts +0 -13
  337. package/build/elements/radio/index.js +0 -283
  338. package/build/elements/radio/input.cjs +0 -329
  339. package/build/elements/radio/input.d.cts +0 -15
  340. package/build/elements/radio/input.d.ts +0 -15
  341. package/build/elements/radio/input.js +0 -325
  342. package/build/elements/radio/option.cjs +0 -15
  343. package/build/elements/radio/option.d.cts +0 -3
  344. package/build/elements/radio/option.d.ts +0 -3
  345. package/build/elements/radio/option.js +0 -11
  346. package/build/elements/shared.cjs +0 -66
  347. package/build/elements/shared.d.cts +0 -40
  348. package/build/elements/shared.d.ts +0 -40
  349. package/build/elements/shared.js +0 -59
  350. package/build/elements/slider/index.cjs +0 -232
  351. package/build/elements/slider/index.d.cts +0 -20
  352. package/build/elements/slider/index.d.ts +0 -20
  353. package/build/elements/slider/index.js +0 -228
  354. package/build/elements/state/index.cjs +0 -274
  355. package/build/elements/state/index.js +0 -270
  356. package/build/elements/toggle/index.cjs +0 -151
  357. package/build/elements/toggle/index.d.cts +0 -9
  358. package/build/elements/toggle/index.d.ts +0 -9
  359. package/build/elements/toggle/index.js +0 -147
  360. package/build/elements/tooltip/index.cjs +0 -187
  361. package/build/elements/tooltip/index.d.cts +0 -17
  362. package/build/elements/tooltip/index.d.ts +0 -17
  363. package/build/elements/tooltip/index.js +0 -183
  364. package/build/init.cjs +0 -325
  365. package/build/init.d.cts +0 -157
  366. package/build/init.d.ts +0 -157
  367. package/build/init.js +0 -289
  368. package/build/internal/component-loaders.cjs +0 -208
  369. package/build/internal/component-loaders.d.cts +0 -52
  370. package/build/internal/component-loaders.d.ts +0 -52
  371. package/build/internal/component-loaders.js +0 -169
  372. package/build/internal/fonts.cjs +0 -128
  373. package/build/internal/fonts.d.cts +0 -32
  374. package/build/internal/fonts.d.ts +0 -32
  375. package/build/internal/fonts.js +0 -123
  376. package/build/internal/lazy-load.cjs +0 -89
  377. package/build/internal/lazy-load.d.cts +0 -32
  378. package/build/internal/lazy-load.d.ts +0 -32
  379. package/build/internal/lazy-load.js +0 -86
  380. package/build/internal/style-inject.cjs +0 -236
  381. package/build/internal/style-inject.d.cts +0 -44
  382. package/build/internal/style-inject.d.ts +0 -44
  383. package/build/internal/style-inject.js +0 -226
  384. package/build/react/events.cjs +0 -25
  385. package/build/react/events.d.cts +0 -39
  386. package/build/react/events.d.ts +0 -39
  387. package/build/react/events.js +0 -22
  388. package/build/react/index.cjs +0 -19
  389. package/build/react/index.d.cts +0 -13
  390. package/build/react/index.d.ts +0 -13
  391. package/build/react/index.js +0 -12
  392. package/build/react/provider.cjs +0 -134
  393. package/build/react/provider.d.cts +0 -81
  394. package/build/react/provider.d.ts +0 -81
  395. package/build/react/provider.js +0 -98
  396. package/build/react/types.cjs +0 -8
  397. package/build/react/types.d.cts +0 -55
  398. package/build/react/types.d.ts +0 -55
  399. package/build/react/types.js +0 -7
  400. package/build/react/use-ease-state.cjs +0 -129
  401. package/build/react/use-ease-state.d.cts +0 -95
  402. package/build/react/use-ease-state.d.ts +0 -95
  403. package/build/react/use-ease-state.js +0 -126
  404. package/build/react/use-web-kit.cjs +0 -150
  405. package/build/react/use-web-kit.d.cts +0 -80
  406. package/build/react/use-web-kit.d.ts +0 -80
  407. package/build/react/use-web-kit.js +0 -114
  408. package/build/theme/index.cjs +0 -452
  409. package/build/theme/index.js +0 -423
  410. package/build/theme/presets.cjs +0 -54
  411. package/build/theme/presets.d.cts +0 -19
  412. package/build/theme/presets.d.ts +0 -19
  413. package/build/theme/presets.js +0 -51
  414. package/build/theme/registry.cjs +0 -204
  415. package/build/theme/registry.d.cts +0 -99
  416. package/build/theme/registry.d.ts +0 -99
  417. package/build/theme/registry.js +0 -194
  418. package/build/theme/tokens.cjs +0 -148
  419. package/build/theme/tokens.d.cts +0 -163
  420. package/build/theme/tokens.d.ts +0 -163
  421. package/build/theme/tokens.js +0 -145
  422. package/build/utils/dismiss-controller.cjs +0 -77
  423. package/build/utils/dismiss-controller.d.cts +0 -14
  424. package/build/utils/dismiss-controller.d.ts +0 -14
  425. package/build/utils/dismiss-controller.js +0 -73
  426. package/build/utils/index.cjs +0 -18
  427. package/build/utils/index.d.cts +0 -3
  428. package/build/utils/index.d.ts +0 -3
  429. package/build/utils/index.js +0 -3
  430. package/build/utils/outside-click.cjs +0 -82
  431. package/build/utils/outside-click.d.cts +0 -18
  432. package/build/utils/outside-click.d.ts +0 -18
  433. package/build/utils/outside-click.js +0 -74
  434. package/build/utils/template-helpers.cjs +0 -39
  435. package/build/utils/template-helpers.d.cts +0 -13
  436. package/build/utils/template-helpers.d.ts +0 -13
  437. package/build/utils/template-helpers.js +0 -28
@@ -0,0 +1,889 @@
1
+ // swc:/home/runner/work/web-kit/web-kit/packages/core/src/decorators/Component.ts
2
+ import { html, render } from "lit-html";
3
+ var styleCache = /* @__PURE__ */ new Map();
4
+ var normalizeTemplate = (template) => {
5
+ if (typeof template === "function") {
6
+ return template;
7
+ }
8
+ if (template && typeof template === "object" && "_$litTemplate$" in template) {
9
+ return function() {
10
+ return template;
11
+ };
12
+ }
13
+ return function() {
14
+ return null;
15
+ };
16
+ };
17
+ var fetchStyles = async (urls) => Promise.all(urls.map((url) => {
18
+ const cached = styleCache.get(url);
19
+ if (cached) {
20
+ return cached;
21
+ }
22
+ const request = fetch(url).then((response) => response.ok ? response.text() : "").catch(() => "");
23
+ styleCache.set(url, request);
24
+ return request;
25
+ }));
26
+ var Component = (options) => (Base, _context) => {
27
+ const { tag, template, styles = "", styleUrls = [], observedAttributes = [], shadowMode = "open", autoSlot = true } = options;
28
+ if (!tag) {
29
+ throw new Error('@Component requires a "tag" option.');
30
+ }
31
+ const templateFn = normalizeTemplate(template);
32
+ class Decorated extends Base {
33
+ static get observedAttributes() {
34
+ const parent = "observedAttributes" in Base && Array.isArray(Base.observedAttributes) ? Base.observedAttributes : [];
35
+ const own = Array.isArray(observedAttributes) ? observedAttributes : [];
36
+ return Array.from(/* @__PURE__ */ new Set([
37
+ ...parent,
38
+ ...own
39
+ ]));
40
+ }
41
+ #shadow;
42
+ #styles;
43
+ #styleUrls;
44
+ #renderScheduled;
45
+ constructor(...args) {
46
+ super(...args), this.#styles = styles, this.#styleUrls = [
47
+ ...styleUrls
48
+ ], this.#renderScheduled = false;
49
+ this.#shadow = this.attachShadow({
50
+ mode: shadowMode
51
+ });
52
+ this.renderRoot = this.#shadow;
53
+ }
54
+ get shadow() {
55
+ return this.renderRoot;
56
+ }
57
+ connectedCallback() {
58
+ Base.prototype.connectedCallback?.call(this);
59
+ void this.#loadStyles().finally(() => {
60
+ this.requestRender();
61
+ });
62
+ }
63
+ disconnectedCallback() {
64
+ Base.prototype.disconnectedCallback?.call(this);
65
+ this.#renderScheduled = false;
66
+ }
67
+ attributeChangedCallback(name, oldValue, newValue) {
68
+ Base.prototype.attributeChangedCallback?.call(this, name, oldValue, newValue);
69
+ if (oldValue !== newValue) {
70
+ this.onAttributeChange?.(name, oldValue, newValue);
71
+ }
72
+ }
73
+ requestRender() {
74
+ if (this.#renderScheduled) {
75
+ return;
76
+ }
77
+ this.#renderScheduled = true;
78
+ requestAnimationFrame(() => {
79
+ this.#renderScheduled = false;
80
+ this.#render();
81
+ });
82
+ }
83
+ async #loadStyles() {
84
+ if (!this.#styleUrls.length) {
85
+ return;
86
+ }
87
+ const fetched = await fetchStyles(this.#styleUrls);
88
+ const inlineStyles = this.#styles ? [
89
+ this.#styles
90
+ ] : [];
91
+ this.#styles = [
92
+ ...inlineStyles,
93
+ ...fetched.filter(Boolean)
94
+ ].join("\n");
95
+ }
96
+ #render() {
97
+ const root = this.#shadow;
98
+ let templateResult;
99
+ if (typeof this.render === "function") {
100
+ templateResult = this.render();
101
+ } else {
102
+ templateResult = templateFn.call(this, this);
103
+ }
104
+ const styleTemplate = this.#styles ? html`<style>${this.#styles}</style>` : null;
105
+ const slotTemplate = autoSlot ? html`<slot></slot>` : null;
106
+ const completeTemplate = html`
107
+ ${styleTemplate}
108
+ ${templateResult ?? null}
109
+ ${slotTemplate}
110
+ `;
111
+ const commit = () => {
112
+ render(completeTemplate, root);
113
+ this.afterRender?.();
114
+ };
115
+ if (typeof this.wrapRender === "function") {
116
+ const fragment = document.createDocumentFragment();
117
+ const tempDiv = document.createElement("div");
118
+ render(completeTemplate, tempDiv);
119
+ fragment.append(...tempDiv.childNodes);
120
+ this.wrapRender(commit, {
121
+ fragment,
122
+ root
123
+ });
124
+ return;
125
+ }
126
+ commit();
127
+ }
128
+ }
129
+ if (typeof customElements !== "undefined" && !customElements.get(tag)) {
130
+ customElements.define(tag, Decorated);
131
+ }
132
+ return Decorated;
133
+ };
134
+
135
+ // swc:/home/runner/work/web-kit/web-kit/packages/core/src/decorators/Listen.ts
136
+ var lifecycleHooks = {
137
+ connectedCallback: /* @__PURE__ */ new WeakMap(),
138
+ disconnectedCallback: /* @__PURE__ */ new WeakMap()
139
+ };
140
+ var cleanupRegistry = /* @__PURE__ */ new WeakMap();
141
+ var addLifecycleHook = (instance, hookName, handler) => {
142
+ const store = lifecycleHooks[hookName];
143
+ let callbacks = store.get(instance);
144
+ if (!callbacks) {
145
+ callbacks = /* @__PURE__ */ new Set();
146
+ store.set(instance, callbacks);
147
+ const original = instance[hookName];
148
+ instance[hookName] = function(...args) {
149
+ callbacks?.forEach((callback) => {
150
+ callback.apply(this);
151
+ });
152
+ if (typeof original === "function") {
153
+ return original.apply(this, args);
154
+ }
155
+ return void 0;
156
+ };
157
+ }
158
+ callbacks.add(handler);
159
+ };
160
+ var registerCleanup = (instance, cleanup) => {
161
+ let callbacks = cleanupRegistry.get(instance);
162
+ if (!callbacks) {
163
+ callbacks = /* @__PURE__ */ new Set();
164
+ cleanupRegistry.set(instance, callbacks);
165
+ addLifecycleHook(instance, "disconnectedCallback", function() {
166
+ const registered = cleanupRegistry.get(this);
167
+ registered?.forEach((fn) => {
168
+ try {
169
+ fn();
170
+ } catch (error) {
171
+ console.error("[Listen] cleanup failed", error);
172
+ }
173
+ });
174
+ cleanupRegistry.delete(this);
175
+ });
176
+ }
177
+ callbacks.add(cleanup);
178
+ };
179
+ var resolveTarget = (host, target) => {
180
+ if (typeof target === "function") {
181
+ return target(host) ?? null;
182
+ }
183
+ if (target instanceof EventTarget) {
184
+ return target;
185
+ }
186
+ switch (target) {
187
+ case "document":
188
+ return document;
189
+ case "window":
190
+ return window;
191
+ case "light":
192
+ return host;
193
+ default:
194
+ return host.renderRoot ?? host.shadowRoot ?? host;
195
+ }
196
+ };
197
+ var normalizeOptions = (selectorOrOptions) => {
198
+ if (typeof selectorOrOptions === "string") {
199
+ return {
200
+ selector: selectorOrOptions
201
+ };
202
+ }
203
+ return selectorOrOptions ?? {};
204
+ };
205
+ var buildOptions = (options) => {
206
+ return {
207
+ selector: options.selector ?? null,
208
+ target: options.target ?? "shadow",
209
+ prevent: options.prevent ?? false,
210
+ stop: options.stop ?? false,
211
+ stopImmediate: options.stopImmediate ?? false,
212
+ once: options.once ?? false,
213
+ passive: options.passive,
214
+ capture: options.capture ?? false,
215
+ when: options.when ?? null
216
+ };
217
+ };
218
+ function Listen(eventName, selectorOrOptions) {
219
+ if (!eventName) {
220
+ throw new Error("@Listen requires an event name.");
221
+ }
222
+ const listenConfig = buildOptions(normalizeOptions(selectorOrOptions));
223
+ return (originalMethod, context) => {
224
+ context.addInitializer(function() {
225
+ let attached = false;
226
+ const attach = () => {
227
+ if (attached) {
228
+ return;
229
+ }
230
+ const target = resolveTarget(this, listenConfig.target);
231
+ if (!target || typeof target.addEventListener !== "function") {
232
+ console.warn(`@Listen unable to resolve target for ${String(eventName)}`);
233
+ return;
234
+ }
235
+ const eventOptions = {
236
+ capture: listenConfig.capture,
237
+ once: listenConfig.once,
238
+ passive: listenConfig.passive !== void 0 ? listenConfig.passive : !listenConfig.prevent
239
+ };
240
+ const handler = (event) => {
241
+ const typedEvent = event;
242
+ if (listenConfig.prevent) {
243
+ typedEvent.preventDefault();
244
+ }
245
+ if (listenConfig.stopImmediate) {
246
+ typedEvent.stopImmediatePropagation();
247
+ } else if (listenConfig.stop) {
248
+ typedEvent.stopPropagation();
249
+ }
250
+ let matched = null;
251
+ if (listenConfig.selector) {
252
+ const path = typedEvent.composedPath();
253
+ matched = path.find((node) => node instanceof Element && node.matches(listenConfig.selector)) ?? null;
254
+ if (!matched) {
255
+ return;
256
+ }
257
+ }
258
+ if (listenConfig.when && !listenConfig.when(typedEvent, matched)) {
259
+ return;
260
+ }
261
+ if (listenConfig.selector) {
262
+ void originalMethod.call(this, typedEvent, matched);
263
+ } else {
264
+ const targetNode = typedEvent.target instanceof Element ? typedEvent.target : null;
265
+ void originalMethod.call(this, typedEvent, targetNode);
266
+ }
267
+ };
268
+ target.addEventListener(eventName, handler, eventOptions);
269
+ attached = true;
270
+ registerCleanup(this, () => {
271
+ target.removeEventListener(eventName, handler, eventOptions);
272
+ attached = false;
273
+ });
274
+ };
275
+ queueMicrotask(attach);
276
+ addLifecycleHook(this, "connectedCallback", attach);
277
+ });
278
+ };
279
+ }
280
+
281
+ // swc:/home/runner/work/web-kit/web-kit/packages/core/src/utils/dismiss-controller.ts
282
+ var DismissController = class {
283
+ #onDismiss;
284
+ #context;
285
+ #active;
286
+ constructor(options) {
287
+ this.#context = null;
288
+ this.#active = false;
289
+ this.#handlePointerDown = (event) => {
290
+ if (!this.#context) {
291
+ return;
292
+ }
293
+ const { owner, content, triggers } = this.#context;
294
+ const path = event.composedPath();
295
+ if (path.some((node) => node instanceof Element && node.hasAttribute("data-select-ignore"))) {
296
+ return;
297
+ }
298
+ if (path.includes(owner)) {
299
+ return;
300
+ }
301
+ if (content && path.includes(content)) {
302
+ return;
303
+ }
304
+ if (triggers.some((trigger) => path.includes(trigger))) {
305
+ return;
306
+ }
307
+ this.#onDismiss(event);
308
+ };
309
+ this.#handleKeyDown = (event) => {
310
+ if (event.key !== "Escape" || !this.#context) {
311
+ return;
312
+ }
313
+ event.preventDefault();
314
+ const active = document.activeElement;
315
+ if (!active) {
316
+ this.#onDismiss(event);
317
+ return;
318
+ }
319
+ const { owner, content, triggers } = this.#context;
320
+ const path = event.composedPath();
321
+ if (path.includes(owner) || owner.contains(active)) {
322
+ this.#onDismiss(event);
323
+ return;
324
+ }
325
+ if (content && (path.includes(content) || content.contains(active))) {
326
+ this.#onDismiss(event);
327
+ return;
328
+ }
329
+ if (triggers.some((trigger) => path.includes(trigger) || trigger.contains(active))) {
330
+ this.#onDismiss(event);
331
+ }
332
+ };
333
+ this.#onDismiss = options.onDismiss;
334
+ }
335
+ connect(context) {
336
+ this.#context = {
337
+ owner: context.owner,
338
+ content: context.content ?? null,
339
+ triggers: (context.triggers ?? []).filter((el) => el instanceof HTMLElement)
340
+ };
341
+ if (!this.#active) {
342
+ document.addEventListener("pointerdown", this.#handlePointerDown, true);
343
+ document.addEventListener("keydown", this.#handleKeyDown, true);
344
+ this.#active = true;
345
+ }
346
+ }
347
+ disconnect() {
348
+ if (!this.#active) {
349
+ return;
350
+ }
351
+ document.removeEventListener("pointerdown", this.#handlePointerDown, true);
352
+ document.removeEventListener("keydown", this.#handleKeyDown, true);
353
+ this.#active = false;
354
+ this.#context = null;
355
+ }
356
+ #handlePointerDown;
357
+ #handleKeyDown;
358
+ };
359
+
360
+ // src/utils/outside-click.ts
361
+ var registry = /* @__PURE__ */ new WeakMap();
362
+ var toDismissContext = (host, options) => {
363
+ if (options.disabled?.(host)) {
364
+ return null;
365
+ }
366
+ const resolved = options.resolve(host);
367
+ if (!resolved) {
368
+ return null;
369
+ }
370
+ const owner = resolved.owner ?? host ?? null;
371
+ if (!(owner instanceof HTMLElement)) {
372
+ return null;
373
+ }
374
+ const content = resolved.content && resolved.content instanceof HTMLElement ? resolved.content : null;
375
+ const triggers = resolved.triggers?.filter((element) => element instanceof HTMLElement) ?? [];
376
+ return {
377
+ owner,
378
+ content,
379
+ triggers
380
+ };
381
+ };
382
+ var createOutsideClickHandle = (host, onDismiss, options) => {
383
+ const controller = new DismissController({
384
+ onDismiss(event) {
385
+ if (options.disabled?.(host)) {
386
+ return;
387
+ }
388
+ onDismiss.call(host, event);
389
+ }
390
+ });
391
+ return {
392
+ update() {
393
+ const context = toDismissContext(host, options);
394
+ if (!context) {
395
+ controller.disconnect();
396
+ return;
397
+ }
398
+ controller.connect(context);
399
+ },
400
+ disconnect() {
401
+ controller.disconnect();
402
+ }
403
+ };
404
+ };
405
+ var registerOutsideClickHandle = (host, handle) => {
406
+ let handles = registry.get(host);
407
+ if (!handles) {
408
+ handles = /* @__PURE__ */ new Set();
409
+ registry.set(host, handles);
410
+ }
411
+ handles.add(handle);
412
+ };
413
+ var updateOutsideClickHandles = (host) => {
414
+ const handles = registry.get(host);
415
+ if (!handles) {
416
+ return;
417
+ }
418
+ handles.forEach((handle) => {
419
+ handle.update();
420
+ });
421
+ };
422
+ var disconnectOutsideClickHandles = (host) => {
423
+ const handles = registry.get(host);
424
+ if (!handles) {
425
+ return;
426
+ }
427
+ handles.forEach((handle) => {
428
+ handle.disconnect();
429
+ });
430
+ };
431
+
432
+ // swc:/home/runner/work/web-kit/web-kit/packages/core/src/decorators/OutsideClick.ts
433
+ var lifecycleApplied = /* @__PURE__ */ new WeakSet();
434
+ var wrapMethod = (host, name, hook, callHookFirst = false) => {
435
+ const original = host[name];
436
+ host[name] = function(...args) {
437
+ if (callHookFirst) {
438
+ hook.call(this);
439
+ }
440
+ let result;
441
+ if (typeof original === "function") {
442
+ result = original.apply(this, args);
443
+ }
444
+ if (!callHookFirst) {
445
+ hook.call(this);
446
+ }
447
+ return result;
448
+ };
449
+ };
450
+ var ensureLifecycle = (host) => {
451
+ if (lifecycleApplied.has(host)) {
452
+ return;
453
+ }
454
+ lifecycleApplied.add(host);
455
+ wrapMethod(host, "connectedCallback", function() {
456
+ updateOutsideClickHandles(this);
457
+ });
458
+ wrapMethod(host, "afterRender", function() {
459
+ updateOutsideClickHandles(this);
460
+ });
461
+ wrapMethod(host, "disconnectedCallback", function() {
462
+ disconnectOutsideClickHandles(this);
463
+ }, true);
464
+ };
465
+ function OutsideClick(options = {}) {
466
+ return (originalMethod, context) => {
467
+ context.addInitializer(function() {
468
+ ensureLifecycle(this);
469
+ const resolve = options.resolve ?? ((host) => {
470
+ return {
471
+ owner: options.owner?.(host),
472
+ content: options.content?.(host),
473
+ triggers: options.triggers?.(host)
474
+ };
475
+ });
476
+ const handle = createOutsideClickHandle(this, (event) => {
477
+ originalMethod.call(this, event);
478
+ }, {
479
+ resolve,
480
+ disabled: options.disabled
481
+ });
482
+ registerOutsideClickHandle(this, handle);
483
+ if (this.isConnected) {
484
+ updateOutsideClickHandles(this);
485
+ }
486
+ });
487
+ };
488
+ }
489
+
490
+ // swc:/home/runner/work/web-kit/web-kit/packages/core/src/decorators/Prop.ts
491
+ var renderQueue = /* @__PURE__ */ new WeakMap();
492
+ var cleanupRegistry2 = /* @__PURE__ */ new WeakMap();
493
+ var observerRegistry = /* @__PURE__ */ new WeakMap();
494
+ var internalMutations = /* @__PURE__ */ new WeakMap();
495
+ var scheduleRender = (instance) => {
496
+ if (typeof instance.requestRender === "function") {
497
+ instance.requestRender();
498
+ return;
499
+ }
500
+ if (typeof instance.render !== "function") {
501
+ return;
502
+ }
503
+ if (renderQueue.get(instance)) {
504
+ return;
505
+ }
506
+ renderQueue.set(instance, true);
507
+ requestAnimationFrame(() => {
508
+ renderQueue.delete(instance);
509
+ instance.render?.();
510
+ });
511
+ };
512
+ var toKebabCase = (value) => String(value).replace(/([a-z0-9])([A-Z])/g, "$1-$2").replace(/[_\s]+/g, "-").toLowerCase();
513
+ var registerCleanup2 = (instance, cleanup) => {
514
+ let callbacks = cleanupRegistry2.get(instance);
515
+ if (!callbacks) {
516
+ callbacks = /* @__PURE__ */ new Set();
517
+ cleanupRegistry2.set(instance, callbacks);
518
+ const original = instance.disconnectedCallback;
519
+ instance.disconnectedCallback = function(...args) {
520
+ const registered = cleanupRegistry2.get(this);
521
+ registered?.forEach((callback) => {
522
+ try {
523
+ callback();
524
+ } catch (error) {
525
+ console.error("[Prop] cleanup failed", error);
526
+ }
527
+ });
528
+ cleanupRegistry2.delete(this);
529
+ if (typeof original === "function") {
530
+ return original.apply(this, args);
531
+ }
532
+ return void 0;
533
+ };
534
+ }
535
+ callbacks.add(cleanup);
536
+ };
537
+ var markInternalMutation = (host, attribute) => {
538
+ let attributes = internalMutations.get(host);
539
+ if (!attributes) {
540
+ attributes = /* @__PURE__ */ new Set();
541
+ internalMutations.set(host, attributes);
542
+ }
543
+ attributes.add(attribute);
544
+ };
545
+ var isInternalMutation = (host, attribute) => {
546
+ const attributes = internalMutations.get(host);
547
+ if (!attributes) {
548
+ return false;
549
+ }
550
+ const hasAttribute = attributes.has(attribute);
551
+ if (hasAttribute) {
552
+ attributes.delete(attribute);
553
+ if (attributes.size === 0) {
554
+ internalMutations.delete(host);
555
+ }
556
+ }
557
+ return hasAttribute;
558
+ };
559
+ var observeAttribute = (host, attribute, handler) => {
560
+ let entry = observerRegistry.get(host);
561
+ if (!entry) {
562
+ const callbacks = /* @__PURE__ */ new Map();
563
+ const observer = new MutationObserver((records) => {
564
+ records.forEach((record) => {
565
+ const attributeName = record.attributeName;
566
+ if (!attributeName) {
567
+ return;
568
+ }
569
+ if (isInternalMutation(host, attributeName)) {
570
+ return;
571
+ }
572
+ const listeners2 = callbacks.get(attributeName);
573
+ if (!listeners2) {
574
+ return;
575
+ }
576
+ const currentValue = record.target.getAttribute(attributeName);
577
+ for (const listener of listeners2) {
578
+ listener(currentValue);
579
+ }
580
+ });
581
+ });
582
+ observer.observe(host, {
583
+ attributes: true
584
+ });
585
+ entry = {
586
+ observer,
587
+ callbacks
588
+ };
589
+ observerRegistry.set(host, entry);
590
+ registerCleanup2(host, () => {
591
+ observer.disconnect();
592
+ observerRegistry.delete(host);
593
+ });
594
+ }
595
+ let listeners = entry.callbacks.get(attribute);
596
+ if (!listeners) {
597
+ listeners = /* @__PURE__ */ new Set();
598
+ entry.callbacks.set(attribute, listeners);
599
+ }
600
+ listeners.add(handler);
601
+ };
602
+ var updateAttribute = (host, attribute, value) => {
603
+ markInternalMutation(host, attribute);
604
+ if (value === void 0 || value === null || value === false) {
605
+ host.removeAttribute(attribute);
606
+ return;
607
+ }
608
+ if (value === true) {
609
+ host.setAttribute(attribute, "");
610
+ return;
611
+ }
612
+ host.setAttribute(attribute, String(value));
613
+ };
614
+ var resolveType = (type) => {
615
+ if (!type) {
616
+ return null;
617
+ }
618
+ if (type === Boolean || type === "boolean") {
619
+ return "boolean";
620
+ }
621
+ if (type === Number || type === "number") {
622
+ return "number";
623
+ }
624
+ if (type === Object || type === Array || type === "json") {
625
+ return "json";
626
+ }
627
+ return "string";
628
+ };
629
+ var typeParsers = {
630
+ boolean(value) {
631
+ return value !== null;
632
+ },
633
+ number(value) {
634
+ if (value === null || value === "") {
635
+ return null;
636
+ }
637
+ const parsed = Number(value);
638
+ return Number.isNaN(parsed) ? null : parsed;
639
+ },
640
+ json(value) {
641
+ if (!value) {
642
+ return null;
643
+ }
644
+ try {
645
+ return JSON.parse(value);
646
+ } catch (error) {
647
+ console.warn("[Prop] failed to parse JSON attribute", error);
648
+ return null;
649
+ }
650
+ },
651
+ string(value) {
652
+ return value;
653
+ }
654
+ };
655
+ var typeFormatters = {
656
+ boolean(value) {
657
+ return value ? "" : null;
658
+ },
659
+ number(value) {
660
+ if (value === null || value === void 0 || value === "") {
661
+ return null;
662
+ }
663
+ return String(value);
664
+ },
665
+ json(value) {
666
+ if (value === null || value === void 0) {
667
+ return null;
668
+ }
669
+ try {
670
+ return JSON.stringify(value);
671
+ } catch {
672
+ return null;
673
+ }
674
+ },
675
+ string(value) {
676
+ if (value === null || value === void 0) {
677
+ return null;
678
+ }
679
+ return String(value);
680
+ }
681
+ };
682
+ var defaultCompare = (previous, next) => previous === next;
683
+ function Prop(options = {}) {
684
+ const { attribute, reflect = true, type, parse, format, defaultValue, compare = defaultCompare, onChange, onAttributeChange } = options;
685
+ const resolvedType = resolveType(type);
686
+ const parseValue = parse ? parse : function(value) {
687
+ if (!resolvedType) {
688
+ return value;
689
+ }
690
+ return typeParsers[resolvedType].call(this, value);
691
+ };
692
+ const formatValue = format ? format : function(value) {
693
+ if (!resolvedType) {
694
+ return value ?? null;
695
+ }
696
+ return typeFormatters[resolvedType].call(this, value);
697
+ };
698
+ return (accessor, context) => {
699
+ if (context.kind !== "accessor") {
700
+ throw new Error('@Prop requires the "accessor" keyword on the property.');
701
+ }
702
+ const attributeName = attribute ?? toKebabCase(context.name);
703
+ context.addInitializer(function() {
704
+ if (!reflect) {
705
+ return;
706
+ }
707
+ observeAttribute(this, attributeName, (rawValue) => {
708
+ if (isInternalMutation(this, attributeName)) {
709
+ return;
710
+ }
711
+ const parsed = parseValue.call(this, rawValue);
712
+ const previous = accessor.get.call(this);
713
+ if (compare(previous, parsed)) {
714
+ return;
715
+ }
716
+ accessor.set.call(this, parsed);
717
+ onAttributeChange?.call(this, parsed, previous);
718
+ scheduleRender(this);
719
+ });
720
+ });
721
+ return {
722
+ get() {
723
+ return accessor.get.call(this);
724
+ },
725
+ set(value) {
726
+ const previous = accessor.get.call(this);
727
+ if (compare(previous, value)) {
728
+ return;
729
+ }
730
+ accessor.set.call(this, value);
731
+ if (reflect) {
732
+ const formatted = formatValue.call(this, value);
733
+ updateAttribute(this, attributeName, formatted);
734
+ }
735
+ onChange?.call(this, value, previous);
736
+ scheduleRender(this);
737
+ },
738
+ init(initialValue) {
739
+ let value = initialValue;
740
+ if (this.hasAttribute(attributeName)) {
741
+ value = parseValue.call(this, this.getAttribute(attributeName));
742
+ } else if (value === void 0 && defaultValue !== void 0) {
743
+ value = typeof defaultValue === "function" ? defaultValue.call(this) : defaultValue;
744
+ }
745
+ if (reflect) {
746
+ const formatted = formatValue.call(this, value);
747
+ updateAttribute(this, attributeName, formatted);
748
+ }
749
+ return value;
750
+ }
751
+ };
752
+ };
753
+ }
754
+
755
+ // swc:/home/runner/work/web-kit/web-kit/packages/core/src/decorators/Query.ts
756
+ var defaultOptions = {
757
+ all: false,
758
+ closest: false,
759
+ from: "shadow",
760
+ fallback: null
761
+ };
762
+ var resolveFallback = (fallback, host) => {
763
+ if (typeof fallback === "function") {
764
+ return fallback(host);
765
+ }
766
+ return fallback;
767
+ };
768
+ var resolveRoot = (host, option) => {
769
+ switch (option) {
770
+ case "document":
771
+ return document;
772
+ case "light":
773
+ return host;
774
+ default:
775
+ return host.renderRoot ?? host.shadowRoot ?? host;
776
+ }
777
+ };
778
+ var resolveQuery = (host, selector, options) => {
779
+ if (options.closest) {
780
+ const result = host.closest(selector);
781
+ return result ?? resolveFallback(options.fallback, host) ?? null;
782
+ }
783
+ const root = resolveRoot(host, options.from);
784
+ if (!root) {
785
+ return options.all ? resolveFallback(options.fallback, host) ?? [] : resolveFallback(options.fallback, host) ?? null;
786
+ }
787
+ if (options.all) {
788
+ const elements = Array.from(root.querySelectorAll(selector));
789
+ return elements.length > 0 ? elements : resolveFallback(options.fallback, host) ?? [];
790
+ }
791
+ const match = root.querySelector(selector);
792
+ return match ?? resolveFallback(options.fallback, host) ?? null;
793
+ };
794
+ var createQueryDecorator = (selector, options) => {
795
+ return (_target, context) => {
796
+ if (context.kind === "accessor") {
797
+ const descriptor = {
798
+ get() {
799
+ return resolveQuery(this, selector, options);
800
+ },
801
+ set(_value) {
802
+ }
803
+ };
804
+ return descriptor;
805
+ }
806
+ context.addInitializer(function() {
807
+ Object.defineProperty(this, context.name, {
808
+ configurable: true,
809
+ enumerable: true,
810
+ get: () => resolveQuery(this, selector, options)
811
+ });
812
+ });
813
+ return;
814
+ };
815
+ };
816
+ function Query(selector, userOptions) {
817
+ if (!selector) {
818
+ throw new Error("@Query requires a selector.");
819
+ }
820
+ if (userOptions) {
821
+ const merged2 = {
822
+ ...defaultOptions,
823
+ ...userOptions
824
+ };
825
+ return createQueryDecorator(selector, merged2);
826
+ }
827
+ const merged = defaultOptions;
828
+ return createQueryDecorator(selector, merged);
829
+ }
830
+
831
+ // swc:/home/runner/work/web-kit/web-kit/packages/core/src/decorators/Watch.ts
832
+ var renderQueue2 = /* @__PURE__ */ new WeakMap();
833
+ var scheduleRender2 = (instance) => {
834
+ if (typeof instance.requestRender === "function") {
835
+ instance.requestRender();
836
+ return;
837
+ }
838
+ if (typeof instance.render !== "function") {
839
+ return;
840
+ }
841
+ if (renderQueue2.get(instance)) {
842
+ return;
843
+ }
844
+ renderQueue2.set(instance, true);
845
+ requestAnimationFrame(() => {
846
+ renderQueue2.set(instance, false);
847
+ instance.render?.();
848
+ });
849
+ };
850
+ var defaultCompare2 = (previous, next) => previous === next;
851
+ function Watch(options = {}) {
852
+ const { compare = defaultCompare2, onChange, transform } = options;
853
+ return (accessor, context) => {
854
+ if (context.kind !== "accessor") {
855
+ throw new Error('@Watch requires the "accessor" keyword on the property.');
856
+ }
857
+ return {
858
+ get() {
859
+ return accessor.get.call(this);
860
+ },
861
+ set(value) {
862
+ const previous = accessor.get.call(this);
863
+ if (compare(previous, value)) {
864
+ return;
865
+ }
866
+ accessor.set.call(this, value);
867
+ if (onChange) {
868
+ onChange.call(this, value, previous);
869
+ }
870
+ scheduleRender2(this);
871
+ },
872
+ init(initialValue) {
873
+ if (transform) {
874
+ return transform.call(this, initialValue);
875
+ }
876
+ return initialValue;
877
+ }
878
+ };
879
+ };
880
+ }
881
+ export {
882
+ Component,
883
+ Listen,
884
+ OutsideClick,
885
+ Prop,
886
+ Query,
887
+ Watch
888
+ };
889
+ //# sourceMappingURL=decorators.js.map