@editora/ui-core 0.1.19 → 0.1.20

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 (299) hide show
  1. package/dist/{ElementBase-1b301e7f.js → ElementBase-EV6mVBUV.js} +1 -1
  2. package/dist/{ElementBase-909688f3.mjs → ElementBase-YlTLMsGk.mjs} +3 -3
  3. package/dist/accordion.cjs.js +3 -3
  4. package/dist/accordion.esm.js +39 -62
  5. package/dist/alert-dialog.cjs.js +19 -19
  6. package/dist/alert-dialog.esm.js +69 -87
  7. package/dist/alert.cjs.js +1 -1
  8. package/dist/alert.esm.js +4 -7
  9. package/dist/anchor.cjs.js +2 -2
  10. package/dist/anchor.esm.js +3 -3
  11. package/dist/animated-beam.cjs.js +83 -83
  12. package/dist/animated-beam.esm.js +250 -277
  13. package/dist/animated-list.cjs.js +4 -4
  14. package/dist/animated-list.esm.js +47 -61
  15. package/dist/animated-text.cjs.js +2 -2
  16. package/dist/animated-text.esm.js +13 -24
  17. package/dist/app-header.cjs.js +3 -3
  18. package/dist/app-header.esm.js +11 -13
  19. package/dist/aspect-ratio.cjs.js +1 -1
  20. package/dist/aspect-ratio.esm.js +4 -7
  21. package/dist/avatar.cjs.js +1 -1
  22. package/dist/avatar.esm.js +7 -13
  23. package/dist/badge.cjs.js +1 -1
  24. package/dist/badge.esm.js +4 -7
  25. package/dist/block-controls.cjs.js +2 -2
  26. package/dist/block-controls.esm.js +19 -35
  27. package/dist/box.cjs.js +1 -1
  28. package/dist/box.esm.js +8 -15
  29. package/dist/breadcrumb.cjs.js +2 -2
  30. package/dist/breadcrumb.esm.js +20 -37
  31. package/dist/button.cjs.js +1 -521
  32. package/dist/button.esm.js +2 -671
  33. package/dist/{calendar-2c11b824.mjs → calendar-DLY4acgn.mjs} +293 -342
  34. package/dist/{calendar-a8735e40.js → calendar-Dkof-FTK.js} +25 -25
  35. package/dist/calendar.cjs.js +1 -1
  36. package/dist/calendar.esm.js +8 -9
  37. package/dist/card.cjs.js +4 -4
  38. package/dist/card.esm.js +13 -19
  39. package/dist/chart.cjs.js +64 -64
  40. package/dist/chart.esm.js +223 -254
  41. package/dist/checkbox.cjs.js +1 -1
  42. package/dist/checkbox.esm.js +2 -3
  43. package/dist/collapsible.cjs.js +1 -1
  44. package/dist/collapsible.esm.js +5 -9
  45. package/dist/{collection-a1aac0c6.mjs → collection-C7URGjEI.mjs} +8 -14
  46. package/dist/collection.cjs.js +1 -1
  47. package/dist/collection.esm.js +4 -7
  48. package/dist/color-picker.cjs.js +9 -9
  49. package/dist/color-picker.esm.js +189 -252
  50. package/dist/combobox.cjs.js +13 -13
  51. package/dist/combobox.esm.js +93 -126
  52. package/dist/command-palette.cjs.js +3 -3
  53. package/dist/command-palette.esm.js +19 -30
  54. package/dist/command.cjs.js +4 -4
  55. package/dist/command.esm.js +41 -53
  56. package/dist/components/ui-orbiter.d.ts.map +1 -1
  57. package/dist/components/ui-skeleton.d.ts.map +1 -1
  58. package/dist/components/ui-split-button.d.ts +1 -0
  59. package/dist/components/ui-split-button.d.ts.map +1 -1
  60. package/dist/components/ui-time-picker.d.ts.map +1 -1
  61. package/dist/container.cjs.js +2 -2
  62. package/dist/container.esm.js +2 -3
  63. package/dist/context-menu.cjs.js +8 -8
  64. package/dist/context-menu.esm.js +157 -219
  65. package/dist/control-group.cjs.js +1 -1
  66. package/dist/control-group.esm.js +2 -3
  67. package/dist/data-table.cjs.js +4 -4
  68. package/dist/data-table.esm.js +299 -381
  69. package/dist/date-field.cjs.js +3 -3
  70. package/dist/date-field.esm.js +68 -80
  71. package/dist/date-picker.cjs.js +9 -9
  72. package/dist/date-picker.esm.js +69 -97
  73. package/dist/date-range-picker.cjs.js +3 -3
  74. package/dist/date-range-picker.esm.js +32 -56
  75. package/dist/date-range-time-picker.cjs.js +9 -9
  76. package/dist/date-range-time-picker.esm.js +111 -140
  77. package/dist/date-time-picker.cjs.js +4 -4
  78. package/dist/date-time-picker.esm.js +112 -144
  79. package/dist/date-time-utils-Dmost5Ee.js +1 -0
  80. package/dist/date-time-utils-y1N2gvG2.mjs +268 -0
  81. package/dist/description.cjs.js +1 -1
  82. package/dist/description.esm.js +3 -5
  83. package/dist/dialog.cjs.js +12 -12
  84. package/dist/dialog.esm.js +44 -63
  85. package/dist/direction-provider.cjs.js +1 -1
  86. package/dist/direction-provider.esm.js +2 -3
  87. package/dist/{dismissable-layer-9c7e6b58.mjs → dismissable-layer-BmPIoK80.mjs} +29 -33
  88. package/dist/dismissable-layer-DNfrKA20.js +1 -0
  89. package/dist/dismissable-layer.cjs.js +2 -2
  90. package/dist/dismissable-layer.esm.js +4 -6
  91. package/dist/dock.cjs.js +5 -5
  92. package/dist/dock.esm.js +134 -155
  93. package/dist/drawer.cjs.js +2 -2
  94. package/dist/drawer.esm.js +18 -35
  95. package/dist/dropdown.cjs.js +2 -2
  96. package/dist/dropdown.esm.js +119 -149
  97. package/dist/dropzone.cjs.js +1 -1
  98. package/dist/dropzone.esm.js +0 -1
  99. package/dist/empty-state.cjs.js +1 -1
  100. package/dist/empty-state.esm.js +1 -1
  101. package/dist/field-error.cjs.js +1 -1
  102. package/dist/field-error.esm.js +3 -5
  103. package/dist/field.cjs.js +5 -5
  104. package/dist/field.esm.js +27 -34
  105. package/dist/fieldset.cjs.js +4 -4
  106. package/dist/fieldset.esm.js +19 -24
  107. package/dist/file-upload.cjs.js +4 -4
  108. package/dist/file-upload.esm.js +69 -93
  109. package/dist/flex.cjs.js +1 -1
  110. package/dist/flex.esm.js +5 -9
  111. package/dist/floating-toolbar.cjs.js +4 -4
  112. package/dist/floating-toolbar.esm.js +60 -85
  113. package/dist/focus-scope-Bwug2gDv.js +1 -0
  114. package/dist/{focus-scope-103833ee.mjs → focus-scope-CmEsG5UZ.mjs} +39 -48
  115. package/dist/focus-scope.cjs.js +2 -2
  116. package/dist/focus-scope.esm.js +15 -20
  117. package/dist/form.cjs.js +2 -2
  118. package/dist/form.esm.js +26 -53
  119. package/dist/gantt.cjs.js +43 -43
  120. package/dist/gantt.esm.js +295 -322
  121. package/dist/grid.cjs.js +1 -1
  122. package/dist/grid.esm.js +5 -9
  123. package/dist/hover-card.cjs.js +4 -4
  124. package/dist/hover-card.esm.js +22 -28
  125. package/dist/icon-cloud.cjs.js +7 -7
  126. package/dist/icon-cloud.esm.js +48 -62
  127. package/dist/icon.cjs.js +1 -1
  128. package/dist/icon.esm.js +2 -4
  129. package/dist/index.cjs.js +1 -1
  130. package/dist/index.esm.js +378 -390
  131. package/dist/inline-edit.cjs.js +11 -11
  132. package/dist/inline-edit.esm.js +32 -36
  133. package/dist/input.cjs.js +17 -17
  134. package/dist/input.esm.js +50 -63
  135. package/dist/label.cjs.js +2 -2
  136. package/dist/label.esm.js +8 -17
  137. package/dist/layout.cjs.js +2 -2
  138. package/dist/layout.esm.js +20 -26
  139. package/dist/listbox-B6QgECax.js +46 -0
  140. package/dist/listbox-DJamVeFj.mjs +200 -0
  141. package/dist/listbox.cjs.js +1 -1
  142. package/dist/listbox.esm.js +2 -4
  143. package/dist/marquee.cjs.js +5 -5
  144. package/dist/marquee.esm.js +33 -50
  145. package/dist/masonry-grid.cjs.js +1 -1
  146. package/dist/masonry-grid.esm.js +5 -9
  147. package/dist/menu.cjs.js +3 -3
  148. package/dist/menu.esm.js +106 -126
  149. package/dist/menubar.cjs.js +5 -5
  150. package/dist/menubar.esm.js +118 -164
  151. package/dist/meter.cjs.js +2 -2
  152. package/dist/meter.esm.js +4 -4
  153. package/dist/multi-select.cjs.js +4 -4
  154. package/dist/multi-select.esm.js +120 -140
  155. package/dist/navigation-menu.cjs.js +4 -4
  156. package/dist/navigation-menu.esm.js +44 -55
  157. package/dist/number-field.cjs.js +2 -2
  158. package/dist/number-field.esm.js +73 -98
  159. package/dist/number-ticker.cjs.js +3 -3
  160. package/dist/number-ticker.esm.js +22 -43
  161. package/dist/odometer.cjs.js +1 -1
  162. package/dist/odometer.esm.js +5 -9
  163. package/dist/orbiter.cjs.js +13 -13
  164. package/dist/orbiter.esm.js +79 -90
  165. package/dist/{overlayManager-5bbd4dc3.mjs → overlayManager-BJjU1VA8.mjs} +4 -5
  166. package/dist/{overlayManager-0eda4e08.js → overlayManager-CSy3fJmJ.js} +1 -1
  167. package/dist/pagination.cjs.js +2 -2
  168. package/dist/pagination.esm.js +14 -18
  169. package/dist/{panel-group-a376cc5e.mjs → panel-group-8sVNnGxg.mjs} +24 -46
  170. package/dist/panel-group-CaD0_KQf.js +36 -0
  171. package/dist/panel-group.cjs.js +1 -1
  172. package/dist/panel-group.esm.js +2 -5
  173. package/dist/panel.cjs.js +4 -4
  174. package/dist/panel.esm.js +8 -10
  175. package/dist/password-field.cjs.js +9 -9
  176. package/dist/password-field.esm.js +62 -82
  177. package/dist/pin-input.cjs.js +3 -3
  178. package/dist/pin-input.esm.js +33 -39
  179. package/dist/placement-grid.cjs.js +4 -4
  180. package/dist/placement-grid.esm.js +108 -131
  181. package/dist/plugin-panel.cjs.js +7 -7
  182. package/dist/plugin-panel.esm.js +13 -15
  183. package/dist/popover.cjs.js +2 -2
  184. package/dist/popover.esm.js +21 -31
  185. package/dist/portal-DgpQ3Jo1.js +1 -0
  186. package/dist/{portal-fe73e5cc.mjs → portal-bR42gHvG.mjs} +43 -48
  187. package/dist/portal.cjs.js +2 -2
  188. package/dist/portal.esm.js +10 -19
  189. package/dist/{positioner-e9770c66.mjs → positioner-D0VGxtYU.mjs} +189 -209
  190. package/dist/positioner-D_fqyx_j.js +1 -0
  191. package/dist/positioner.cjs.js +2 -2
  192. package/dist/positioner.esm.js +11 -18
  193. package/dist/presence.cjs.js +1 -1
  194. package/dist/presence.esm.js +7 -13
  195. package/dist/progress.cjs.js +1 -1
  196. package/dist/progress.esm.js +5 -9
  197. package/dist/quick-actions.cjs.js +6 -6
  198. package/dist/quick-actions.esm.js +52 -62
  199. package/dist/radio-group.cjs.js +13 -13
  200. package/dist/radio-group.esm.js +39 -51
  201. package/dist/radio.cjs.js +1 -1
  202. package/dist/radio.esm.js +5 -9
  203. package/dist/rating.cjs.js +1 -1
  204. package/dist/rating.esm.js +12 -23
  205. package/dist/{roving-focus-group-4350c9a7.mjs → roving-focus-group-Dbm1Jko_.mjs} +3 -6
  206. package/dist/roving-focus-group.cjs.js +1 -1
  207. package/dist/roving-focus-group.esm.js +3 -5
  208. package/dist/runtime-CTaOSmBj.js +1 -0
  209. package/dist/{runtime-161f68a2.mjs → runtime-D1gFh1fS.mjs} +338 -366
  210. package/dist/runtime.cjs.js +1 -1
  211. package/dist/runtime.esm.js +6 -6
  212. package/dist/scroll-area.cjs.js +3 -3
  213. package/dist/scroll-area.esm.js +38 -46
  214. package/dist/{scroll-lock-31da444f.mjs → scroll-lock-LfqXXqsu.mjs} +5 -9
  215. package/dist/section.cjs.js +1 -1
  216. package/dist/section.esm.js +1 -1
  217. package/dist/select.cjs.js +7 -7
  218. package/dist/select.esm.js +67 -97
  219. package/dist/selection-popup.cjs.js +1 -1
  220. package/dist/selection-popup.esm.js +8 -15
  221. package/dist/separator.cjs.js +1 -1
  222. package/dist/separator.esm.js +1 -1
  223. package/dist/sidebar.cjs.js +18 -18
  224. package/dist/sidebar.esm.js +117 -139
  225. package/dist/skeleton.cjs.js +11 -11
  226. package/dist/skeleton.esm.js +27 -24
  227. package/dist/slider.cjs.js +1 -1
  228. package/dist/slider.esm.js +6 -11
  229. package/dist/slot.cjs.js +4 -4
  230. package/dist/slot.esm.js +16 -19
  231. package/dist/sortable.cjs.js +45 -45
  232. package/dist/sortable.esm.js +421 -524
  233. package/dist/spinning-text.cjs.js +12 -12
  234. package/dist/spinning-text.esm.js +80 -92
  235. package/dist/split-button.cjs.js +4 -4
  236. package/dist/split-button.esm.js +77 -62
  237. package/dist/splitter.cjs.js +1 -1
  238. package/dist/splitter.esm.js +1 -1
  239. package/dist/stepper.cjs.js +8 -8
  240. package/dist/stepper.esm.js +32 -52
  241. package/dist/switch.cjs.js +7 -7
  242. package/dist/switch.esm.js +23 -31
  243. package/dist/table.cjs.js +2 -2
  244. package/dist/table.esm.js +46 -56
  245. package/dist/tabs.cjs.js +3 -3
  246. package/dist/tabs.esm.js +35 -55
  247. package/dist/tags-input.cjs.js +4 -4
  248. package/dist/tags-input.esm.js +45 -62
  249. package/dist/textarea.cjs.js +6 -6
  250. package/dist/textarea.esm.js +32 -41
  251. package/dist/time-field.cjs.js +4 -4
  252. package/dist/time-field.esm.js +70 -84
  253. package/dist/time-picker.cjs.js +22 -22
  254. package/dist/time-picker.esm.js +88 -110
  255. package/dist/timeline.cjs.js +1 -1
  256. package/dist/timeline.esm.js +3 -5
  257. package/dist/toast.cjs.js +2 -2
  258. package/dist/toast.esm.js +33 -47
  259. package/dist/toggle-group.cjs.js +6 -6
  260. package/dist/toggle-group.esm.js +85 -105
  261. package/dist/toggle.cjs.js +1 -1
  262. package/dist/toggle.esm.js +3 -5
  263. package/dist/toolbar.cjs.js +1 -1
  264. package/dist/toolbar.esm.js +13 -24
  265. package/dist/tooltip.cjs.js +2 -2
  266. package/dist/tooltip.esm.js +31 -42
  267. package/dist/transfer-list.cjs.js +19 -19
  268. package/dist/transfer-list.esm.js +98 -111
  269. package/dist/{tree-dcd74a4a.mjs → tree-B3kE8ESs.mjs} +55 -62
  270. package/dist/tree-Dx_kv_ih.js +39 -0
  271. package/dist/tree-item.cjs.js +2 -2
  272. package/dist/tree-item.esm.js +2 -3
  273. package/dist/tree.cjs.js +1 -1
  274. package/dist/tree.esm.js +2 -5
  275. package/dist/ui-button-Q0GNNWKC.mjs +665 -0
  276. package/dist/ui-button-rXQOS9QJ.js +521 -0
  277. package/dist/{icon-9e9da03b.js → ui-icon-BzVNC_lr.js} +4 -4
  278. package/dist/{icon-e2a85cc1.mjs → ui-icon-YI6lyuqU.mjs} +58 -65
  279. package/dist/visually-hidden.cjs.js +1 -1
  280. package/dist/visually-hidden.esm.js +1 -1
  281. package/dist/wizard.cjs.js +14 -14
  282. package/dist/wizard.esm.js +85 -105
  283. package/package.json +2 -2
  284. package/dist/date-time-utils-66480de4.js +0 -1
  285. package/dist/date-time-utils-a2c7af25.mjs +0 -307
  286. package/dist/dismissable-layer-193e3bed.js +0 -1
  287. package/dist/focus-scope-2b12b4e7.js +0 -1
  288. package/dist/listbox-308789a0.mjs +0 -210
  289. package/dist/listbox-ef2f708e.js +0 -46
  290. package/dist/panel-group-40254cdd.js +0 -36
  291. package/dist/portal-c69756c0.js +0 -1
  292. package/dist/positioner-33529bb8.js +0 -1
  293. package/dist/runtime-3f13807b.js +0 -1
  294. package/dist/tree-0a7a8d05.js +0 -39
  295. /package/dist/{collection-a2969ad2.js → collection-qv8A8rq4.js} +0 -0
  296. /package/dist/{menu-item-styles-27fdbac4.mjs → menu-item-styles-CZiPwPwl.mjs} +0 -0
  297. /package/dist/{menu-item-styles-83ad1e22.js → menu-item-styles-CbNUEwP2.js} +0 -0
  298. /package/dist/{roving-focus-group-5c059bf9.js → roving-focus-group-BdJ_4Njm.js} +0 -0
  299. /package/dist/{scroll-lock-d7b0df21.js → scroll-lock-BX6e3Ced.js} +0 -0
@@ -1,23 +1,23 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const fe=require("./ElementBase-1b301e7f.js"),ie=3200,ne=0,oe=0,se=3,re=4,de=.18,me=3,D="#8b5cf6",q="#f59e0b",ge="rgba(148, 163, 184, 0.34)",Q=2,xe=new Set(["none","sm","md","lg","full"]),ue=new Set(["brand","neutral","info","success","warning","danger"]),ye=new Set(["calm","smooth","snappy","surge","pulse","heartbeat"]),Y=new Set(["auto","straight","soft","arc"]),X=new Set(["forward","reverse"]),_e=new Set(["none","glow","pulse","ring","shake"]),K=["node-id","column","row","size","from","to","curve","direction","reverse","duration","delay","tone","color-start","color-end","beam-factor","trail-width","beam-width","id"],b={xxs:{nodeSize:36,hubSize:50,columnGap:72,rowGap:28,padding:12,minHeight:160,radius:16},xs:{nodeSize:46,hubSize:62,columnGap:88,rowGap:36,padding:16,minHeight:190,radius:18},sm:{nodeSize:56,hubSize:74,columnGap:108,rowGap:48,padding:20,minHeight:220,radius:22},md:{nodeSize:84,hubSize:116,columnGap:156,rowGap:72,padding:32,minHeight:320,radius:28},lg:{nodeSize:98,hubSize:132,columnGap:188,rowGap:88,padding:40,minHeight:400,radius:34}},v={calm:{durationScale:1.18,glowOpacity:.26,glowBlur:9,beamFactor:.15,pattern:"progress"},smooth:{durationScale:1,glowOpacity:.34,glowBlur:11,beamFactor:de,pattern:"progress"},snappy:{durationScale:.82,glowOpacity:.38,glowBlur:10,beamFactor:.2,pattern:"progress"},surge:{durationScale:.68,glowOpacity:.44,glowBlur:13,beamFactor:.24,pattern:"progress"},pulse:{durationScale:.92,glowOpacity:.42,glowBlur:14,beamFactor:.22,pattern:"pulse"},heartbeat:{durationScale:.86,glowOpacity:.48,glowBlur:15,beamFactor:.18,pattern:"heartbeat"}},E={brand:{start:D,end:q},neutral:{start:"#64748b",end:"#cbd5e1"},info:{start:"#38bdf8",end:"#6366f1"},success:{start:"#22c55e",end:"#14b8a6"},warning:{start:"#f59e0b",end:"#f97316"},danger:{start:"#ef4444",end:"#f97316"}},ve=`
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const ge=require("./ElementBase-EV6mVBUV.js"),ie=3200,ne=0,oe=0,se=3,re=4,de=.18,me=3,D="#8b5cf6",q="#f59e0b",fe="rgba(148, 163, 184, 0.34)",Q=2,xe=new Set(["none","sm","md","lg","full"]),ue=new Set(["brand","neutral","info","success","warning","danger"]),ye=new Set(["calm","smooth","snappy","surge","pulse","heartbeat"]),Y=new Set(["auto","straight","soft","arc"]),X=new Set(["forward","reverse"]),_e=new Set(["none","glow","pulse","ring","shake"]),K=["node-id","column","row","size","from","to","curve","direction","reverse","duration","delay","tone","color-start","color-end","beam-factor","trail-width","beam-width","id"],c={xxs:{nodeSize:36,hubSize:50,columnGap:72,rowGap:28,padding:12,minHeight:160,radius:16},xs:{nodeSize:46,hubSize:62,columnGap:88,rowGap:36,padding:16,minHeight:190,radius:18},sm:{nodeSize:56,hubSize:74,columnGap:108,rowGap:48,padding:20,minHeight:220,radius:22},md:{nodeSize:84,hubSize:116,columnGap:156,rowGap:72,padding:32,minHeight:320,radius:28},lg:{nodeSize:98,hubSize:132,columnGap:188,rowGap:88,padding:40,minHeight:400,radius:34}},v={calm:{durationScale:1.18,glowOpacity:.26,glowBlur:9,beamFactor:.15,pattern:"progress"},smooth:{durationScale:1,glowOpacity:.34,glowBlur:11,beamFactor:de,pattern:"progress"},snappy:{durationScale:.82,glowOpacity:.38,glowBlur:10,beamFactor:.2,pattern:"progress"},surge:{durationScale:.68,glowOpacity:.44,glowBlur:13,beamFactor:.24,pattern:"progress"},pulse:{durationScale:.92,glowOpacity:.42,glowBlur:14,beamFactor:.22,pattern:"pulse"},heartbeat:{durationScale:.86,glowOpacity:.48,glowBlur:15,beamFactor:.18,pattern:"heartbeat"}},E={brand:{start:D,end:q},neutral:{start:"#64748b",end:"#cbd5e1"},info:{start:"#38bdf8",end:"#6366f1"},success:{start:"#22c55e",end:"#14b8a6"},warning:{start:"#f59e0b",end:"#f97316"},danger:{start:"#ef4444",end:"#f97316"}},ve=`
2
2
  :host {
3
3
  --ui-animated-beam-required-width: 0px;
4
4
  --ui-animated-beam-duration: ${ie}ms;
5
5
  --ui-animated-beam-delay: ${ne}ms;
6
6
  --ui-animated-beam-stagger: ${oe}ms;
7
- --ui-animated-beam-padding: ${b.md.padding}px;
8
- --ui-animated-beam-column-gap: ${b.md.columnGap}px;
9
- --ui-animated-beam-row-gap: ${b.md.rowGap}px;
10
- --ui-animated-beam-node-size: ${b.md.nodeSize}px;
11
- --ui-animated-beam-hub-size: ${b.md.hubSize}px;
12
- --ui-animated-beam-min-height: ${b.md.minHeight}px;
7
+ --ui-animated-beam-padding: ${c.md.padding}px;
8
+ --ui-animated-beam-column-gap: ${c.md.columnGap}px;
9
+ --ui-animated-beam-row-gap: ${c.md.rowGap}px;
10
+ --ui-animated-beam-node-size: ${c.md.nodeSize}px;
11
+ --ui-animated-beam-hub-size: ${c.md.hubSize}px;
12
+ --ui-animated-beam-min-height: ${c.md.minHeight}px;
13
13
  --ui-animated-beam-columns: ${me};
14
- --ui-animated-beam-radius: ${b.md.radius}px;
14
+ --ui-animated-beam-radius: ${c.md.radius}px;
15
15
  --ui-animated-beam-trail-width: ${se}px;
16
16
  --ui-animated-beam-beam-width: ${re}px;
17
17
  --ui-animated-beam-beam-factor: ${de};
18
18
  --ui-animated-beam-accent: ${D};
19
19
  --ui-animated-beam-accent-end: ${q};
20
- --ui-animated-beam-path-color: ${ge};
20
+ --ui-animated-beam-path-color: ${fe};
21
21
  --ui-animated-beam-bg: transparent;
22
22
  --ui-animated-beam-color: var(--ui-color-text, #0f172a);
23
23
  --ui-animated-beam-border-color:
@@ -56,57 +56,57 @@
56
56
 
57
57
  :host([size="xxs"]),
58
58
  :host([size="0"]) {
59
- --ui-animated-beam-padding: ${b.xxs.padding}px;
60
- --ui-animated-beam-column-gap: ${b.xxs.columnGap}px;
61
- --ui-animated-beam-row-gap: ${b.xxs.rowGap}px;
62
- --ui-animated-beam-node-size: ${b.xxs.nodeSize}px;
63
- --ui-animated-beam-hub-size: ${b.xxs.hubSize}px;
64
- --ui-animated-beam-min-height: ${b.xxs.minHeight}px;
65
- --ui-animated-beam-radius: ${b.xxs.radius}px;
59
+ --ui-animated-beam-padding: ${c.xxs.padding}px;
60
+ --ui-animated-beam-column-gap: ${c.xxs.columnGap}px;
61
+ --ui-animated-beam-row-gap: ${c.xxs.rowGap}px;
62
+ --ui-animated-beam-node-size: ${c.xxs.nodeSize}px;
63
+ --ui-animated-beam-hub-size: ${c.xxs.hubSize}px;
64
+ --ui-animated-beam-min-height: ${c.xxs.minHeight}px;
65
+ --ui-animated-beam-radius: ${c.xxs.radius}px;
66
66
  }
67
67
 
68
68
  :host([size="xs"]) {
69
- --ui-animated-beam-padding: ${b.xs.padding}px;
70
- --ui-animated-beam-column-gap: ${b.xs.columnGap}px;
71
- --ui-animated-beam-row-gap: ${b.xs.rowGap}px;
72
- --ui-animated-beam-node-size: ${b.xs.nodeSize}px;
73
- --ui-animated-beam-hub-size: ${b.xs.hubSize}px;
74
- --ui-animated-beam-min-height: ${b.xs.minHeight}px;
75
- --ui-animated-beam-radius: ${b.xs.radius}px;
69
+ --ui-animated-beam-padding: ${c.xs.padding}px;
70
+ --ui-animated-beam-column-gap: ${c.xs.columnGap}px;
71
+ --ui-animated-beam-row-gap: ${c.xs.rowGap}px;
72
+ --ui-animated-beam-node-size: ${c.xs.nodeSize}px;
73
+ --ui-animated-beam-hub-size: ${c.xs.hubSize}px;
74
+ --ui-animated-beam-min-height: ${c.xs.minHeight}px;
75
+ --ui-animated-beam-radius: ${c.xs.radius}px;
76
76
  }
77
77
 
78
78
  :host([size="sm"]),
79
79
  :host([size="1"]) {
80
- --ui-animated-beam-padding: ${b.sm.padding}px;
81
- --ui-animated-beam-column-gap: ${b.sm.columnGap}px;
82
- --ui-animated-beam-row-gap: ${b.sm.rowGap}px;
83
- --ui-animated-beam-node-size: ${b.sm.nodeSize}px;
84
- --ui-animated-beam-hub-size: ${b.sm.hubSize}px;
85
- --ui-animated-beam-min-height: ${b.sm.minHeight}px;
86
- --ui-animated-beam-radius: ${b.sm.radius}px;
80
+ --ui-animated-beam-padding: ${c.sm.padding}px;
81
+ --ui-animated-beam-column-gap: ${c.sm.columnGap}px;
82
+ --ui-animated-beam-row-gap: ${c.sm.rowGap}px;
83
+ --ui-animated-beam-node-size: ${c.sm.nodeSize}px;
84
+ --ui-animated-beam-hub-size: ${c.sm.hubSize}px;
85
+ --ui-animated-beam-min-height: ${c.sm.minHeight}px;
86
+ --ui-animated-beam-radius: ${c.sm.radius}px;
87
87
  }
88
88
 
89
89
  :host(:not([size])),
90
90
  :host([size="md"]),
91
91
  :host([size="2"]) {
92
- --ui-animated-beam-padding: ${b.md.padding}px;
93
- --ui-animated-beam-column-gap: ${b.md.columnGap}px;
94
- --ui-animated-beam-row-gap: ${b.md.rowGap}px;
95
- --ui-animated-beam-node-size: ${b.md.nodeSize}px;
96
- --ui-animated-beam-hub-size: ${b.md.hubSize}px;
97
- --ui-animated-beam-min-height: ${b.md.minHeight}px;
98
- --ui-animated-beam-radius: ${b.md.radius}px;
92
+ --ui-animated-beam-padding: ${c.md.padding}px;
93
+ --ui-animated-beam-column-gap: ${c.md.columnGap}px;
94
+ --ui-animated-beam-row-gap: ${c.md.rowGap}px;
95
+ --ui-animated-beam-node-size: ${c.md.nodeSize}px;
96
+ --ui-animated-beam-hub-size: ${c.md.hubSize}px;
97
+ --ui-animated-beam-min-height: ${c.md.minHeight}px;
98
+ --ui-animated-beam-radius: ${c.md.radius}px;
99
99
  }
100
100
 
101
101
  :host([size="lg"]),
102
102
  :host([size="3"]) {
103
- --ui-animated-beam-padding: ${b.lg.padding}px;
104
- --ui-animated-beam-column-gap: ${b.lg.columnGap}px;
105
- --ui-animated-beam-row-gap: ${b.lg.rowGap}px;
106
- --ui-animated-beam-node-size: ${b.lg.nodeSize}px;
107
- --ui-animated-beam-hub-size: ${b.lg.hubSize}px;
108
- --ui-animated-beam-min-height: ${b.lg.minHeight}px;
109
- --ui-animated-beam-radius: ${b.lg.radius}px;
103
+ --ui-animated-beam-padding: ${c.lg.padding}px;
104
+ --ui-animated-beam-column-gap: ${c.lg.columnGap}px;
105
+ --ui-animated-beam-row-gap: ${c.lg.rowGap}px;
106
+ --ui-animated-beam-node-size: ${c.lg.nodeSize}px;
107
+ --ui-animated-beam-hub-size: ${c.lg.hubSize}px;
108
+ --ui-animated-beam-min-height: ${c.lg.minHeight}px;
109
+ --ui-animated-beam-radius: ${c.lg.radius}px;
110
110
  }
111
111
 
112
112
  :host([tone="neutral"]) {
@@ -507,7 +507,7 @@
507
507
  --ui-animated-beam-path-color: CanvasText;
508
508
  }
509
509
  }
510
- `;class ce extends fe.ElementBase{constructor(){super(...arguments),this._nodeSlot=null,this._hubSlot=null,this._connectionSlot=null,this._surfaceEl=null,this._canvasEl=null,this._svgEl=null,this._defsEl=null,this._pathsEl=null,this._animationStyleEl=null,this._nodes=[],this._connections=[],this._nodeEffectAnimations=new Map,this._lastLayoutMetrics=null,this._resizeObserver=null,this._mutationObserver=null,this._mediaQuery=null,this._observedResizeElements=new Set,this._uid=`ui-animated-beam-${Math.random().toString(36).slice(2,10)}`,this._boundSlotChange=this._handleSlotChange.bind(this),this._boundReducedMotionChange=this._handleReducedMotionChange.bind(this),this._boundResize=this._handleResize.bind(this),this._refreshScheduled=!1}static get observedAttributes(){return["animation","variant","tone","size","radius","elevation","columns","rows","padding","column-gap","row-gap","min-height","node-size","hub-size","duration","delay","stagger","trail-width","beam-width","beam-factor","path","glow","node-effect","auto-fit","paused","repeat","direction","reverse","color-start","color-end","trail-color","curve"]}connectedCallback(){super.connectedCallback(),this._bindReducedMotionWatcher(),this._ensureResizeObserver(),this._ensureMutationObserver()}disconnectedCallback(){var e,t,s,o;this._clearNodeEffectAnimations(),this._disconnectResizeObserver(),this._disconnectMutationObserver(),(t=(e=this._mediaQuery)==null?void 0:e.removeEventListener)==null||t.call(e,"change",this._boundReducedMotionChange),(o=(s=this._mediaQuery)==null?void 0:s.removeListener)==null||o.call(s,this._boundReducedMotionChange),this._mediaQuery=null,super.disconnectedCallback()}attributeChangedCallback(e,t,s){if(!(t===s||!this.isConnected)){if(e==="paused"){this._syncState();return}this._syncRuntimeStyles(),this._refreshScene()}}play(){this.hasAttribute("paused")&&this.removeAttribute("paused"),this._syncState()}pause(){this.hasAttribute("paused")||this.setAttribute("paused",""),this._syncState()}refresh(){this._clearNodeEffectAnimations(),this._syncRuntimeStyles(),this._syncNodes(),this._syncConnections(),this._layoutNodes(),this._renderConnections(),this._syncObservedResizeElements(),this._syncState()}render(){var e,t,s;this.setContent(`
510
+ `;class ce extends ge.ElementBase{constructor(){super(...arguments),this._nodeSlot=null,this._hubSlot=null,this._connectionSlot=null,this._surfaceEl=null,this._canvasEl=null,this._svgEl=null,this._defsEl=null,this._pathsEl=null,this._animationStyleEl=null,this._nodes=[],this._connections=[],this._nodeEffectAnimations=new Map,this._lastLayoutMetrics=null,this._resizeObserver=null,this._mutationObserver=null,this._mediaQuery=null,this._observedResizeElements=new Set,this._uid=`ui-animated-beam-${Math.random().toString(36).slice(2,10)}`,this._boundSlotChange=this._handleSlotChange.bind(this),this._boundReducedMotionChange=this._handleReducedMotionChange.bind(this),this._boundResize=this._handleResize.bind(this),this._refreshScheduled=!1}static get observedAttributes(){return["animation","variant","tone","size","radius","elevation","columns","rows","padding","column-gap","row-gap","min-height","node-size","hub-size","duration","delay","stagger","trail-width","beam-width","beam-factor","path","glow","node-effect","auto-fit","paused","repeat","direction","reverse","color-start","color-end","trail-color","curve"]}connectedCallback(){super.connectedCallback(),this._bindReducedMotionWatcher(),this._ensureResizeObserver(),this._ensureMutationObserver()}disconnectedCallback(){this._clearNodeEffectAnimations(),this._disconnectResizeObserver(),this._disconnectMutationObserver(),this._mediaQuery?.removeEventListener?.("change",this._boundReducedMotionChange),this._mediaQuery?.removeListener?.(this._boundReducedMotionChange),this._mediaQuery=null,super.disconnectedCallback()}attributeChangedCallback(e,t,r){if(!(t===r||!this.isConnected)){if(e==="paused"){this._syncState();return}this._syncRuntimeStyles(),this._refreshScene()}}play(){this.hasAttribute("paused")&&this.removeAttribute("paused"),this._syncState()}pause(){this.hasAttribute("paused")||this.setAttribute("paused",""),this._syncState()}refresh(){this._clearNodeEffectAnimations(),this._syncRuntimeStyles(),this._syncNodes(),this._syncConnections(),this._layoutNodes(),this._renderConnections(),this._syncObservedResizeElements(),this._syncState()}render(){this.setContent(`
511
511
  <style>${ve}</style>
512
512
  <style data-ui-animated-beam-animations></style>
513
513
  <div class="root" part="root">
@@ -525,23 +525,23 @@
525
525
  </div>
526
526
  </div>
527
527
  </div>
528
- `),this._surfaceEl=this.root.querySelector(".surface"),this._canvasEl=this.root.querySelector(".canvas"),this._svgEl=this.root.querySelector(".svg"),this._defsEl=this.root.querySelector("defs"),this._pathsEl=this.root.querySelector(".paths"),this._animationStyleEl=this.root.querySelector("style[data-ui-animated-beam-animations]"),this._nodeSlot=this.root.querySelector("slot:not([name])"),this._hubSlot=this.root.querySelector('slot[name="hub"]'),this._connectionSlot=this.root.querySelector('slot[name="connections"]'),(e=this._nodeSlot)==null||e.addEventListener("slotchange",this._boundSlotChange),(t=this._hubSlot)==null||t.addEventListener("slotchange",this._boundSlotChange),(s=this._connectionSlot)==null||s.addEventListener("slotchange",this._boundSlotChange),this._syncRuntimeStyles(),this.refresh()}shouldRenderOnAttributeChange(){return!1}_handleSlotChange(){this._refreshScene()}_handleReducedMotionChange(){this._syncState()}_handleResize(){this._refreshScene()}_refreshScene(){this._refreshScheduled||(this._refreshScheduled=!0,queueMicrotask(()=>{this._refreshScheduled=!1,this.isConnected&&this.refresh()}))}_bindReducedMotionWatcher(){var e,t,s,o;typeof window>"u"||typeof window.matchMedia!="function"||this._mediaQuery||(this._mediaQuery=window.matchMedia("(prefers-reduced-motion: reduce)"),(t=(e=this._mediaQuery).addEventListener)==null||t.call(e,"change",this._boundReducedMotionChange),(o=(s=this._mediaQuery).addListener)==null||o.call(s,this._boundReducedMotionChange))}_prefersReducedMotion(){var e;return!!((e=this._mediaQuery)!=null&&e.matches)}_ensureResizeObserver(){this._resizeObserver||typeof ResizeObserver>"u"||(this._resizeObserver=new ResizeObserver(this._boundResize),this._syncObservedResizeElements())}_disconnectResizeObserver(){this._resizeObserver&&(this._resizeObserver.disconnect(),this._resizeObserver=null,this._observedResizeElements.clear())}_syncObservedResizeElements(){if(!this._resizeObserver)return;const e=new Set;this._canvasEl&&e.add(this._canvasEl),e.add(this);for(const t of this._nodes)e.add(t.el);for(const t of this._observedResizeElements)e.has(t)||this._resizeObserver.unobserve(t);for(const t of e)this._observedResizeElements.has(t)||this._resizeObserver.observe(t);this._observedResizeElements=e}_ensureMutationObserver(){this._mutationObserver||typeof MutationObserver>"u"||(this._mutationObserver=new MutationObserver(e=>{for(const t of e){if(t.type==="childList"){this._refreshScene();return}if(t.type==="attributes"&&t.target instanceof HTMLElement&&K.includes(t.attributeName||"")){this._refreshScene();return}}}),this._mutationObserver.observe(this,{childList:!0,subtree:!0,attributes:!0,attributeFilter:K}))}_disconnectMutationObserver(){var e;(e=this._mutationObserver)==null||e.disconnect(),this._mutationObserver=null}_syncRuntimeStyles(){const e=this._sizePreset(),t=this._motionPreset();this.style.setProperty("--ui-animated-beam-required-width",`${this._autoFit()?0:this._requiredWidthPx(e)}px`),this.style.setProperty("--ui-animated-beam-duration",`${this._durationMs()*t.durationScale}ms`),this.style.setProperty("--ui-animated-beam-delay",`${this._delayMs()}ms`),this.style.setProperty("--ui-animated-beam-stagger",`${this._staggerMs()}ms`),this.style.setProperty("--ui-animated-beam-columns",String(this._columns())),this.style.setProperty("--ui-animated-beam-padding",`${this._paddingPx(e)}px`),this.style.setProperty("--ui-animated-beam-column-gap",`${this._columnGapPx(e)}px`),this.style.setProperty("--ui-animated-beam-row-gap",`${this._rowGapPx(e)}px`),this.style.setProperty("--ui-animated-beam-node-size",`${this._nodeSizePx(e)}px`),this.style.setProperty("--ui-animated-beam-hub-size",`${this._hubSizePx(e)}px`),this.style.setProperty("--ui-animated-beam-min-height",`${this._minHeightPx(e)}px`),this.style.setProperty("--ui-animated-beam-trail-width",`${this._trailWidthPx()}px`),this.style.setProperty("--ui-animated-beam-beam-width",`${this._beamWidthPx()}px`),this.style.setProperty("--ui-animated-beam-beam-factor",String(this._beamFactor(t))),this.style.setProperty("--ui-animated-beam-glow-opacity",String(t.glowOpacity)),this.style.setProperty("--ui-animated-beam-glow-blur",`${t.glowBlur}px`);const s=this.getAttribute("radius");if(s&&!xe.has(s.trim())){const i=he(s);i?this.style.setProperty("--ui-animated-beam-radius",i):this.style.removeProperty("--ui-animated-beam-radius")}else this.style.removeProperty("--ui-animated-beam-radius");const o=this.getAttribute("color-start"),n=this.getAttribute("color-end");o?this.style.setProperty("--ui-animated-beam-accent",o):this.style.removeProperty("--ui-animated-beam-accent"),n?this.style.setProperty("--ui-animated-beam-accent-end",n):this.style.removeProperty("--ui-animated-beam-accent-end");const r=this.getAttribute("trail-color");r?this.style.setProperty("--ui-animated-beam-path-color",r):this.style.removeProperty("--ui-animated-beam-path-color")}_nodesFromSlot(){return this._nodeSlot?this._nodeSlot.assignedElements({flatten:!0}).filter(e=>e instanceof HTMLElement):[]}_hubsFromSlot(){return this._hubSlot?this._hubSlot.assignedElements({flatten:!0}).filter(e=>e instanceof HTMLElement):[]}_connectionsFromSlot(){return this._connectionSlot?this._connectionSlot.assignedElements({flatten:!0}).filter(e=>e instanceof HTMLElement):[]}_syncNodes(){const e=this._sizePreset(),t=this._columns(),s=this._declaredRows(),o=this._nodesFromSlot(),n=this._hubsFromSlot(),r=new Set([...o,...n]);for(const p of this._nodes)r.has(p.el)||Pe(p.el);const i=[];o.forEach((p,h)=>{i.push(this._buildNodeRecord(p,"node",h,t,s,e))}),n.forEach((p,h)=>{i.push(this._buildNodeRecord(p,"hub",h,t,s,e))}),this._nodes=i,this.setAttribute("data-node-count",String(o.length)),this.setAttribute("data-hub-count",String(n.length))}_buildNodeRecord(e,t,s,o,n,r){const i=t==="hub"?"data-ui-animated-beam-hub":"data-ui-animated-beam-node";e.hasAttribute(i)||e.setAttribute(i,""),e.hasAttribute("data-ui-animated-beam-managed")||e.setAttribute("data-ui-animated-beam-managed",""),e.hasAttribute("data-ui-animated-beam-node-id-owned")||e.removeAttribute("data-ui-animated-beam-node-id-owned"),t==="hub"&&e.getAttribute("slot")!=="hub"&&e.setAttribute("slot","hub");const p=this._nodeIdForElement(e,t,s),h=n?Math.max(1,Math.ceil(n/2)):t==="hub"?2:s+1,d=O(L(e.getAttribute("row"),h),1,Math.max(n||h,h)),m=t==="hub"?Math.ceil(o/2):O(s+1,1,o),c=O(L(e.getAttribute("column"),m),1,o),f=t==="hub"?r.hubSize:r.nodeSize,g=P(e.getAttribute("size"),f);return{el:e,nodeId:p,kind:t,column:c,row:d,sizePx:g,centerX:0,centerY:0,radiusPx:g/2}}_nodeIdForElement(e,t,s){const o=e.getAttribute("node-id")||e.id;if(o)return o;const n=`${t}-${s+1}`;return e.setAttribute("node-id",n),e.setAttribute("data-ui-animated-beam-node-id-owned",""),n}_syncConnections(){const e=this._motionPreset(),t=this._connectionsFromSlot(),s=new Set(t);for(const i of this._connections)s.has(i.el)||ke(i.el);const o=this._tone(),n=[],r=new Map;t.forEach((i,p)=>{i.getAttribute("slot")!=="connections"&&i.setAttribute("slot","connections"),i.hasAttribute("data-ui-animated-beam-connection")||i.setAttribute("data-ui-animated-beam-connection",""),i.hasAttribute("data-ui-animated-beam-managed")||i.setAttribute("data-ui-animated-beam-managed","");const h=i.getAttribute("from"),d=i.getAttribute("to");if(!h||!d)return;const m=Ce(i.getAttribute("tone")),c=F(i.getAttribute("duration"),this._durationMs()),f=i.getAttribute("delay"),g=r.get(h)||0;r.set(h,g+1),n.push({el:i,from:h,to:d,index:p,curve:this._curveForConnection(i),reverse:this._directionForConnection(i)==="reverse",tone:m,durationMs:c*e.durationScale,hasExplicitDelay:f!=null&&f.trim()!=="",localDelayMs:F(f,0),delayMs:0,siblingIndex:g,beamFactor:_(ae(i.getAttribute("beam-factor"),this._beamFactor(e)),.06,.48),trailWidthPx:P(i.getAttribute("trail-width"),this._trailWidthPx()),beamWidthPx:P(i.getAttribute("beam-width"),this._beamWidthPx()),colorStart:i.getAttribute("color-start")||E[m||o].start,colorEnd:i.getAttribute("color-end")||E[m||o].end})}),this._connections=n,this.setAttribute("data-connection-count",String(this._connections.length))}_curveForConnection(e){const t=e.getAttribute("curve");if(t&&Y.has(t))return t;const s=this.getAttribute("curve");return s&&Y.has(s)?s:"auto"}_directionForConnection(e){const t=e.getAttribute("direction");if(t&&X.has(t))return t;if(e.hasAttribute("reverse"))return"reverse";const s=this.getAttribute("direction");return s&&X.has(s)?s:this.hasAttribute("reverse")?"reverse":"forward"}_layoutNodes(){if(!this._canvasEl||!this._svgEl)return;const e=this._layoutMetrics();this._lastLayoutMetrics=e;const t=this._resolvedRowCount(),s=e.columns>1?(e.width-e.padding*2-e.columnGap*(e.columns-1))/e.columns:e.width-e.padding*2,o=t>1?(e.height-e.padding*2-e.rowGap*(t-1))/t:e.height-e.padding*2;for(const n of this._nodes){const r=n.sizePx*e.scale,i=e.padding+s*(n.column-.5)+e.columnGap*(n.column-1),p=e.padding+o*(n.row-.5)+e.rowGap*(n.row-1);n.centerX=i,n.centerY=p,n.radiusPx=r/2,n.el.style.left=`${i}px`,n.el.style.top=`${p}px`,n.el.style.inlineSize=`${r}px`,n.el.style.blockSize=`${r}px`,n.el.style.zIndex=n.kind==="hub"?"2":"1",n.el.style.setProperty("--ui-animated-beam-render-size",`${r}px`)}this._svgEl.setAttribute("viewBox",`0 0 ${e.width} ${e.height}`),this._canvasEl.style.minHeight=`${e.height}px`,this.setAttribute("data-row-count",String(t)),this.setAttribute("data-column-count",String(e.columns))}_renderConnections(){if(!this._defsEl||!this._pathsEl||!this._animationStyleEl)return;const e=this._lastLayoutMetrics||this._layoutMetrics(),t=_(e.scale,.72,1),s=this._nodeEffect(),o=this._motionPreset(),n=new Map(this._nodes.map(y=>[y.nodeId,y])),r=[],i=[],p=[];this._connections.forEach(y=>{const u=n.get(y.from),w=n.get(y.to);if(!u||!w)return;const x=we(u,w,y.curve);r.push({connection:y,geometry:x,travelDistance:x.length})});const h=Se(r,this._delayMs(),this._staggerMs()),d=Math.max(1,...r.map(y=>(h.get(y.connection)??this._delayMs())+y.connection.durationMs)),m=s==="none"?0:J(d),c=this._repeat()?"infinite":"1",f=[],g=new Map;r.forEach(y=>{const w=(h.get(y.connection)??this._delayMs())+y.connection.durationMs,x=be(y.connection);g.set(x,Math.max(g.get(x)??0,w))});const $=Math.max(d,...Array.from(g.values(),y=>y+m));r.forEach(y=>{const{connection:u,geometry:w,travelDistance:x}=y,z=u.reverse?$e(w):w,k=`${this._uid}-gradient-${u.index}`,A=Math.max(1,u.trailWidthPx*t),M=Math.max(1.5,u.beamWidthPx*t),C=A.toFixed(2),T=M.toFixed(2),R=Math.max(M*2,M+4*t),H=R.toFixed(2),N=z.start,G=z.end,I=0,U=_(x*u.beamFactor,M*6,x*.72);u.delayMs=h.get(u)??this._delayMs();const V=`${this._uid}-glow-${u.index}`,j=`${this._uid}-core-${u.index}`;f.push(Z(V,$,u.delayMs,u.durationMs,"var(--ui-animated-beam-glow-opacity)",o.pattern,x,R,R*1.18,U)),f.push(Z(j,$,u.delayMs,u.durationMs,"var(--ui-animated-beam-core-opacity)",o.pattern,x,M,M*1.22,U)),i.push(`
528
+ `),this._surfaceEl=this.root.querySelector(".surface"),this._canvasEl=this.root.querySelector(".canvas"),this._svgEl=this.root.querySelector(".svg"),this._defsEl=this.root.querySelector("defs"),this._pathsEl=this.root.querySelector(".paths"),this._animationStyleEl=this.root.querySelector("style[data-ui-animated-beam-animations]"),this._nodeSlot=this.root.querySelector("slot:not([name])"),this._hubSlot=this.root.querySelector('slot[name="hub"]'),this._connectionSlot=this.root.querySelector('slot[name="connections"]'),this._nodeSlot?.addEventListener("slotchange",this._boundSlotChange),this._hubSlot?.addEventListener("slotchange",this._boundSlotChange),this._connectionSlot?.addEventListener("slotchange",this._boundSlotChange),this._syncRuntimeStyles(),this.refresh()}shouldRenderOnAttributeChange(){return!1}_handleSlotChange(){this._refreshScene()}_handleReducedMotionChange(){this._syncState()}_handleResize(){this._refreshScene()}_refreshScene(){this._refreshScheduled||(this._refreshScheduled=!0,queueMicrotask(()=>{this._refreshScheduled=!1,this.isConnected&&this.refresh()}))}_bindReducedMotionWatcher(){typeof window>"u"||typeof window.matchMedia!="function"||this._mediaQuery||(this._mediaQuery=window.matchMedia("(prefers-reduced-motion: reduce)"),this._mediaQuery.addEventListener?.("change",this._boundReducedMotionChange),this._mediaQuery.addListener?.(this._boundReducedMotionChange))}_prefersReducedMotion(){return!!this._mediaQuery?.matches}_ensureResizeObserver(){this._resizeObserver||typeof ResizeObserver>"u"||(this._resizeObserver=new ResizeObserver(this._boundResize),this._syncObservedResizeElements())}_disconnectResizeObserver(){this._resizeObserver&&(this._resizeObserver.disconnect(),this._resizeObserver=null,this._observedResizeElements.clear())}_syncObservedResizeElements(){if(!this._resizeObserver)return;const e=new Set;this._canvasEl&&e.add(this._canvasEl),e.add(this);for(const t of this._nodes)e.add(t.el);for(const t of this._observedResizeElements)e.has(t)||this._resizeObserver.unobserve(t);for(const t of e)this._observedResizeElements.has(t)||this._resizeObserver.observe(t);this._observedResizeElements=e}_ensureMutationObserver(){this._mutationObserver||typeof MutationObserver>"u"||(this._mutationObserver=new MutationObserver(e=>{for(const t of e){if(t.type==="childList"){this._refreshScene();return}if(t.type==="attributes"&&t.target instanceof HTMLElement&&K.includes(t.attributeName||"")){this._refreshScene();return}}}),this._mutationObserver.observe(this,{childList:!0,subtree:!0,attributes:!0,attributeFilter:K}))}_disconnectMutationObserver(){this._mutationObserver?.disconnect(),this._mutationObserver=null}_syncRuntimeStyles(){const e=this._sizePreset(),t=this._motionPreset();this.style.setProperty("--ui-animated-beam-required-width",`${this._autoFit()?0:this._requiredWidthPx(e)}px`),this.style.setProperty("--ui-animated-beam-duration",`${this._durationMs()*t.durationScale}ms`),this.style.setProperty("--ui-animated-beam-delay",`${this._delayMs()}ms`),this.style.setProperty("--ui-animated-beam-stagger",`${this._staggerMs()}ms`),this.style.setProperty("--ui-animated-beam-columns",String(this._columns())),this.style.setProperty("--ui-animated-beam-padding",`${this._paddingPx(e)}px`),this.style.setProperty("--ui-animated-beam-column-gap",`${this._columnGapPx(e)}px`),this.style.setProperty("--ui-animated-beam-row-gap",`${this._rowGapPx(e)}px`),this.style.setProperty("--ui-animated-beam-node-size",`${this._nodeSizePx(e)}px`),this.style.setProperty("--ui-animated-beam-hub-size",`${this._hubSizePx(e)}px`),this.style.setProperty("--ui-animated-beam-min-height",`${this._minHeightPx(e)}px`),this.style.setProperty("--ui-animated-beam-trail-width",`${this._trailWidthPx()}px`),this.style.setProperty("--ui-animated-beam-beam-width",`${this._beamWidthPx()}px`),this.style.setProperty("--ui-animated-beam-beam-factor",String(this._beamFactor(t))),this.style.setProperty("--ui-animated-beam-glow-opacity",String(t.glowOpacity)),this.style.setProperty("--ui-animated-beam-glow-blur",`${t.glowBlur}px`);const r=this.getAttribute("radius");if(r&&!xe.has(r.trim())){const i=he(r);i?this.style.setProperty("--ui-animated-beam-radius",i):this.style.removeProperty("--ui-animated-beam-radius")}else this.style.removeProperty("--ui-animated-beam-radius");const o=this.getAttribute("color-start"),n=this.getAttribute("color-end");o?this.style.setProperty("--ui-animated-beam-accent",o):this.style.removeProperty("--ui-animated-beam-accent"),n?this.style.setProperty("--ui-animated-beam-accent-end",n):this.style.removeProperty("--ui-animated-beam-accent-end");const s=this.getAttribute("trail-color");s?this.style.setProperty("--ui-animated-beam-path-color",s):this.style.removeProperty("--ui-animated-beam-path-color")}_nodesFromSlot(){return this._nodeSlot?this._nodeSlot.assignedElements({flatten:!0}).filter(e=>e instanceof HTMLElement):[]}_hubsFromSlot(){return this._hubSlot?this._hubSlot.assignedElements({flatten:!0}).filter(e=>e instanceof HTMLElement):[]}_connectionsFromSlot(){return this._connectionSlot?this._connectionSlot.assignedElements({flatten:!0}).filter(e=>e instanceof HTMLElement):[]}_syncNodes(){const e=this._sizePreset(),t=this._columns(),r=this._declaredRows(),o=this._nodesFromSlot(),n=this._hubsFromSlot(),s=new Set([...o,...n]);for(const p of this._nodes)s.has(p.el)||Pe(p.el);const i=[];o.forEach((p,l)=>{i.push(this._buildNodeRecord(p,"node",l,t,r,e))}),n.forEach((p,l)=>{i.push(this._buildNodeRecord(p,"hub",l,t,r,e))}),this._nodes=i,this.setAttribute("data-node-count",String(o.length)),this.setAttribute("data-hub-count",String(n.length))}_buildNodeRecord(e,t,r,o,n,s){const i=t==="hub"?"data-ui-animated-beam-hub":"data-ui-animated-beam-node";e.hasAttribute(i)||e.setAttribute(i,""),e.hasAttribute("data-ui-animated-beam-managed")||e.setAttribute("data-ui-animated-beam-managed",""),e.hasAttribute("data-ui-animated-beam-node-id-owned")||e.removeAttribute("data-ui-animated-beam-node-id-owned"),t==="hub"&&e.getAttribute("slot")!=="hub"&&e.setAttribute("slot","hub");const p=this._nodeIdForElement(e,t,r),l=n?Math.max(1,Math.ceil(n/2)):t==="hub"?2:r+1,d=O(L(e.getAttribute("row"),l),1,Math.max(n||l,l)),u=t==="hub"?Math.ceil(o/2):O(r+1,1,o),h=O(L(e.getAttribute("column"),u),1,o),f=t==="hub"?s.hubSize:s.nodeSize,g=P(e.getAttribute("size"),f);return{el:e,nodeId:p,kind:t,column:h,row:d,sizePx:g,centerX:0,centerY:0,radiusPx:g/2}}_nodeIdForElement(e,t,r){const o=e.getAttribute("node-id")||e.id;if(o)return o;const n=`${t}-${r+1}`;return e.setAttribute("node-id",n),e.setAttribute("data-ui-animated-beam-node-id-owned",""),n}_syncConnections(){const e=this._motionPreset(),t=this._connectionsFromSlot(),r=new Set(t);for(const i of this._connections)r.has(i.el)||ke(i.el);const o=this._tone(),n=[],s=new Map;t.forEach((i,p)=>{i.getAttribute("slot")!=="connections"&&i.setAttribute("slot","connections"),i.hasAttribute("data-ui-animated-beam-connection")||i.setAttribute("data-ui-animated-beam-connection",""),i.hasAttribute("data-ui-animated-beam-managed")||i.setAttribute("data-ui-animated-beam-managed","");const l=i.getAttribute("from"),d=i.getAttribute("to");if(!l||!d)return;const u=Ce(i.getAttribute("tone")),h=F(i.getAttribute("duration"),this._durationMs()),f=i.getAttribute("delay"),g=s.get(l)||0;s.set(l,g+1),n.push({el:i,from:l,to:d,index:p,curve:this._curveForConnection(i),reverse:this._directionForConnection(i)==="reverse",tone:u,durationMs:h*e.durationScale,hasExplicitDelay:f!=null&&f.trim()!=="",localDelayMs:F(f,0),delayMs:0,siblingIndex:g,beamFactor:_(ae(i.getAttribute("beam-factor"),this._beamFactor(e)),.06,.48),trailWidthPx:P(i.getAttribute("trail-width"),this._trailWidthPx()),beamWidthPx:P(i.getAttribute("beam-width"),this._beamWidthPx()),colorStart:i.getAttribute("color-start")||E[u||o].start,colorEnd:i.getAttribute("color-end")||E[u||o].end})}),this._connections=n,this.setAttribute("data-connection-count",String(this._connections.length))}_curveForConnection(e){const t=e.getAttribute("curve");if(t&&Y.has(t))return t;const r=this.getAttribute("curve");return r&&Y.has(r)?r:"auto"}_directionForConnection(e){const t=e.getAttribute("direction");if(t&&X.has(t))return t;if(e.hasAttribute("reverse"))return"reverse";const r=this.getAttribute("direction");return r&&X.has(r)?r:this.hasAttribute("reverse")?"reverse":"forward"}_layoutNodes(){if(!this._canvasEl||!this._svgEl)return;const e=this._layoutMetrics();this._lastLayoutMetrics=e;const t=this._resolvedRowCount(),r=e.columns>1?(e.width-e.padding*2-e.columnGap*(e.columns-1))/e.columns:e.width-e.padding*2,o=t>1?(e.height-e.padding*2-e.rowGap*(t-1))/t:e.height-e.padding*2;for(const n of this._nodes){const s=n.sizePx*e.scale,i=e.padding+r*(n.column-.5)+e.columnGap*(n.column-1),p=e.padding+o*(n.row-.5)+e.rowGap*(n.row-1);n.centerX=i,n.centerY=p,n.radiusPx=s/2,n.el.style.left=`${i}px`,n.el.style.top=`${p}px`,n.el.style.inlineSize=`${s}px`,n.el.style.blockSize=`${s}px`,n.el.style.zIndex=n.kind==="hub"?"2":"1",n.el.style.setProperty("--ui-animated-beam-render-size",`${s}px`)}this._svgEl.setAttribute("viewBox",`0 0 ${e.width} ${e.height}`),this._canvasEl.style.minHeight=`${e.height}px`,this.setAttribute("data-row-count",String(t)),this.setAttribute("data-column-count",String(e.columns))}_renderConnections(){if(!this._defsEl||!this._pathsEl||!this._animationStyleEl)return;const e=this._lastLayoutMetrics||this._layoutMetrics(),t=_(e.scale,.72,1),r=this._nodeEffect(),o=this._motionPreset(),n=new Map(this._nodes.map(y=>[y.nodeId,y])),s=[],i=[],p=[];this._connections.forEach(y=>{const m=n.get(y.from),w=n.get(y.to);if(!m||!w)return;const x=we(m,w,y.curve);s.push({connection:y,geometry:x,travelDistance:x.length})});const l=Se(s,this._delayMs(),this._staggerMs()),d=Math.max(1,...s.map(y=>(l.get(y.connection)??this._delayMs())+y.connection.durationMs)),u=r==="none"?0:J(d),h=this._repeat()?"infinite":"1",f=[],g=new Map;s.forEach(y=>{const w=(l.get(y.connection)??this._delayMs())+y.connection.durationMs,x=be(y.connection);g.set(x,Math.max(g.get(x)??0,w))});const $=Math.max(d,...Array.from(g.values(),y=>y+u));s.forEach(y=>{const{connection:m,geometry:w,travelDistance:x}=y,z=m.reverse?$e(w):w,k=`${this._uid}-gradient-${m.index}`,A=Math.max(1,m.trailWidthPx*t),M=Math.max(1.5,m.beamWidthPx*t),C=A.toFixed(2),T=M.toFixed(2),R=Math.max(M*2,M+4*t),H=R.toFixed(2),N=z.start,G=z.end,I=0,U=_(x*m.beamFactor,M*6,x*.72);m.delayMs=l.get(m)??this._delayMs();const V=`${this._uid}-glow-${m.index}`,j=`${this._uid}-core-${m.index}`;f.push(Z(V,$,m.delayMs,m.durationMs,"var(--ui-animated-beam-glow-opacity)",o.pattern,x,R,R*1.18,U)),f.push(Z(j,$,m.delayMs,m.durationMs,"var(--ui-animated-beam-core-opacity)",o.pattern,x,M,M*1.22,U)),i.push(`
529
529
  <linearGradient id="${k}" gradientUnits="userSpaceOnUse" x1="${N.x}" y1="${N.y}" x2="${G.x}" y2="${G.y}">
530
- <stop offset="0%" stop-color="${B(u.colorStart||D)}"></stop>
531
- <stop offset="100%" stop-color="${B(u.colorEnd||q)}"></stop>
530
+ <stop offset="0%" stop-color="${B(m.colorStart||D)}"></stop>
531
+ <stop offset="100%" stop-color="${B(m.colorEnd||q)}"></stop>
532
532
  </linearGradient>
533
533
  `),p.push(`
534
534
  <g
535
535
  class="connection"
536
536
  part="connection"
537
- data-from="${B(u.from)}"
538
- data-to="${B(u.to)}"
537
+ data-from="${B(m.from)}"
538
+ data-to="${B(m.to)}"
539
539
  style="
540
540
  --ui-animated-beam-travel-distance:${x};
541
- --ui-animated-beam-connection-duration:${u.durationMs}ms;
542
- --ui-animated-beam-connection-delay:${u.delayMs}ms;
541
+ --ui-animated-beam-connection-duration:${m.durationMs}ms;
542
+ --ui-animated-beam-connection-delay:${m.delayMs}ms;
543
543
  --ui-animated-beam-cycle-duration:${$}ms;
544
- --ui-animated-beam-iteration-count:${c};
544
+ --ui-animated-beam-iteration-count:${h};
545
545
  --ui-animated-beam-progress-offset:${I};
546
546
  "
547
547
  >
@@ -568,85 +568,85 @@
568
568
  style="animation-name:${j};"
569
569
  ></path>
570
570
  </g>
571
- `)}),this._applyNodeEffectStyles(s,g,$,c,f),this._defsEl.innerHTML=i.join(""),this._pathsEl.innerHTML=p.join(""),this._animationStyleEl.textContent=f.join(`
572
- `),this.setAttribute("data-path-visible",this._pathVisible()?"true":"false")}_applyNodeEffectStyles(e,t,s,o,n){const r=J(s);this._nodes.forEach((i,p)=>{var m;const h=t.get(i.nodeId);if(e==="none"||h==null){(m=this._nodeEffectAnimations.get(i.el))==null||m.cancel(),this._nodeEffectAnimations.delete(i.el),le(i.el);return}const d=`${this._uid}-node-effect-${p}`;n.push(Ae(d,s,h,r,e)),i.el.style.setProperty("--ui-animated-beam-node-effect-name",d),i.el.style.setProperty("--ui-animated-beam-node-effect-cycle",`${s}ms`),i.el.style.setProperty("--ui-animated-beam-node-effect-iterations",o),this._startNodeEffectAnimation(i.el,e,s,h,r,o)})}_syncState(){const e=this.hasAttribute("paused")||this._prefersReducedMotion();this.setAttribute("data-state",e?"paused":"running"),this.setAttribute("data-reduced-motion",this._prefersReducedMotion()?"true":"false"),this.setAttribute("data-path-visible",this._pathVisible()?"true":"false"),this._syncNodeEffectAnimationState(e)}_startNodeEffectAnimation(e,t,s,o,n,r){var f;if(typeof e.animate!="function"||this._prefersReducedMotion()||t==="none")return;(f=this._nodeEffectAnimations.get(e))==null||f.cancel();const i=Math.max(s,1),p=_(o/i,0,1),h=_((o+n*.35)/i,p,1),d=_((o+n*.72)/i,h,1),m=_((o+n)/i,d,1),c=e.animate(Me(t,p,h,d,m),{duration:s,iterations:r==="infinite"?1/0:1,fill:"both",easing:"linear",delay:0});(this.hasAttribute("paused")||this._prefersReducedMotion())&&c.pause(),this._nodeEffectAnimations.set(e,c)}_syncNodeEffectAnimationState(e){this._nodeEffectAnimations.forEach(t=>{e?t.pause():t.play()})}_clearNodeEffectAnimations(){this._nodeEffectAnimations.forEach(e=>e.cancel()),this._nodeEffectAnimations.clear()}_layoutMetrics(){var C;const e=this._sizePreset(),t=this._columns(),s=this._resolvedRowCount(),o=this._paddingPx(e),n=this._columnGapPx(e),r=this._rowGapPx(e),i=this._nodeSizePx(e),p=this._hubSizePx(e),h=this._minHeightPx(e),d=Math.max(i,Math.round(p*.86)),m=o*2+t*d+Math.max(0,t-1)*n,c=(C=this._canvasEl)==null?void 0:C.getBoundingClientRect(),f=(c==null?void 0:c.width)||this.clientWidth||0,g=this._autoFit()&&f>0&&m>0?_(f/m,.2,1):1,$=o*g,y=n*g,u=r*g,w=i*g,x=p*g,z=h*g,k=Math.max(z,$*2+s*Math.max(w,Math.round(x*.86))+Math.max(0,s-1)*u),A=this._autoFit()&&f>0?f:Math.max(f,m),M=Math.max((c==null?void 0:c.height)||this.clientHeight||0,k);return{width:A,height:M,scale:g,padding:$,columns:t,rows:s,columnGap:y,rowGap:u,nodeSize:w,hubSize:x}}_resolvedRowCount(){const e=this._declaredRows(),t=this._nodes.reduce((s,o)=>Math.max(s,o.row),1);return Math.max(1,e||t)}_declaredRows(){const e=L(this.getAttribute("rows"),NaN);return Number.isFinite(e)?O(e,1,12):null}_columns(){return O(L(this.getAttribute("columns"),me),1,6)}_paddingPx(e){return P(this.getAttribute("padding"),e.padding)}_columnGapPx(e){return P(this.getAttribute("column-gap"),e.columnGap)}_rowGapPx(e){return P(this.getAttribute("row-gap"),e.rowGap)}_nodeSizePx(e){return P(this.getAttribute("node-size"),e.nodeSize)}_hubSizePx(e){return P(this.getAttribute("hub-size"),e.hubSize)}_minHeightPx(e){return P(this.getAttribute("min-height"),e.minHeight)}_requiredWidthPx(e){const t=this._columns(),s=this._paddingPx(e),o=this._columnGapPx(e),n=this._nodeSizePx(e),r=this._hubSizePx(e),i=Math.max(n,Math.round(r*.86));return s*2+t*i+Math.max(0,t-1)*o}_autoFit(){const e=this.getAttribute("auto-fit");return e==null?!1:W(e,!0)}_trailWidthPx(){return P(this.getAttribute("trail-width"),se)}_beamWidthPx(){return P(this.getAttribute("beam-width"),re)}_durationMs(){return F(this.getAttribute("duration"),ie)}_delayMs(){return F(this.getAttribute("delay"),ne)}_staggerMs(){return F(this.getAttribute("stagger"),oe)}_beamFactor(e){return _(ae(this.getAttribute("beam-factor"),e.beamFactor),.06,.48)}_sizePreset(){const e=this.getAttribute("size");return e==="xxs"||e==="0"?b.xxs:e==="xs"?b.xs:e==="sm"||e==="1"?b.sm:e==="lg"||e==="3"?b.lg:b.md}_motionPreset(){const e=this.getAttribute("animation");return e&&ye.has(e)?v[e]:v.smooth}_tone(){const e=this.getAttribute("tone");return e&&ue.has(e)?e:"brand"}_pathVisible(){const e=this.getAttribute("path");return e==null?!0:W(e,!0)}_repeat(){const e=this.getAttribute("repeat");return e==null?!0:W(e,!0)}_nodeEffect(){const e=this.getAttribute("node-effect");return e&&_e.has(e)?e:"none"}}function we(a,e,t){const s={x:a.centerX,y:a.centerY},o={x:e.centerX,y:e.centerY},n=Math.atan2(o.y-s.y,o.x-s.x),r=te(s,n,Math.max(0,a.radiusPx-Q)),i=te(o,n+Math.PI,Math.max(0,e.radiusPx-Q)),p=i.x-r.x,h=i.y-r.y,d=Math.abs(p),m=Math.abs(h);if(t==="straight"||t==="auto"&&m<Math.max(8,Math.min(a.radiusPx,e.radiusPx)*.28))return{kind:"line",start:r,end:i,d:`M ${l(r.x)} ${l(r.y)} L ${l(i.x)} ${l(i.y)}`,length:pe(r,i)};const c=t==="arc"?.56:t==="soft"?.34:m>d*.45?.48:.4;if(d>=m){const y=Math.max(d*c,44),u={x:r.x+Math.sign(p||1)*y,y:r.y},w={x:i.x-Math.sign(p||1)*y,y:i.y};return{kind:"cubic",start:r,end:i,c1:u,c2:w,d:`M ${l(r.x)} ${l(r.y)} C ${l(u.x)} ${l(u.y)} ${l(w.x)} ${l(w.y)} ${l(i.x)} ${l(i.y)}`,length:ee(r,u,w,i)}}const f=Math.max(m*c,44),g={x:r.x,y:r.y+Math.sign(h||1)*f},$={x:i.x,y:i.y-Math.sign(h||1)*f};return{kind:"cubic",start:r,end:i,c1:g,c2:$,d:`M ${l(r.x)} ${l(r.y)} C ${l(g.x)} ${l(g.y)} ${l($.x)} ${l($.y)} ${l(i.x)} ${l(i.y)}`,length:ee(r,g,$,i)}}function $e(a){if(a.kind==="line")return{kind:"line",start:a.end,end:a.start,d:`M ${l(a.end.x)} ${l(a.end.y)} L ${l(a.start.x)} ${l(a.start.y)}`,length:a.length};const e=a.c2,t=a.c1;return{kind:"cubic",start:a.end,end:a.start,c1:e,c2:t,d:`M ${l(a.end.x)} ${l(a.end.y)} C ${l(e.x)} ${l(e.y)} ${l(t.x)} ${l(t.y)} ${l(a.start.x)} ${l(a.start.y)}`,length:a.length}}function Se(a,e,t){const s=new Map,o=new Map,n=new Map,r=new Set,i=new Set;for(const d of a){const m=be(d.connection),c=s.get(m);c?c.push(d):s.set(m,[d])}const p=d=>{const m=o.get(d);if(m!=null)return m;if(r.has(d))return e;r.add(d);const c=s.get(d);let f=e;return c!=null&&c.length&&(f=c.reduce((g,$)=>{const y=h($.connection);return Math.max(g,y+$.connection.durationMs)},e)),r.delete(d),o.set(d,f),f},h=d=>{const m=n.get(d);if(m!=null)return m;if(i.has(d))return e;i.add(d);const c=p(ze(d)),f=d.hasExplicitDelay?0:d.siblingIndex*t,g=c+f+d.localDelayMs;return i.delete(d),n.set(d,g),g};for(const d of a)n.set(d.connection,h(d.connection));return n}function Z(a,e,t,s,o,n,r,i,p,h){const d=Math.max(e,1),m=_(t/d*100,0,100),c=_((t+s)/d*100,m,100),f=_(m+Math.max(s/d*100*.02,.01),m,c),g=S(m),$=S(f),y=S(c),u=l(i),w=l(p),x=l(r),z=l(h);if(n==="pulse"){const k=_(m+(c-m)*.42,f,c),A=_(m+(c-m)*.82,k,c),M=S(k),C=S(A);return`
571
+ `)}),this._applyNodeEffectStyles(r,g,$,h,f),this._defsEl.innerHTML=i.join(""),this._pathsEl.innerHTML=p.join(""),this._animationStyleEl.textContent=f.join(`
572
+ `),this.setAttribute("data-path-visible",this._pathVisible()?"true":"false")}_applyNodeEffectStyles(e,t,r,o,n){const s=J(r);this._nodes.forEach((i,p)=>{const l=t.get(i.nodeId);if(e==="none"||l==null){this._nodeEffectAnimations.get(i.el)?.cancel(),this._nodeEffectAnimations.delete(i.el),le(i.el);return}const d=`${this._uid}-node-effect-${p}`;n.push(Ae(d,r,l,s,e)),i.el.style.setProperty("--ui-animated-beam-node-effect-name",d),i.el.style.setProperty("--ui-animated-beam-node-effect-cycle",`${r}ms`),i.el.style.setProperty("--ui-animated-beam-node-effect-iterations",o),this._startNodeEffectAnimation(i.el,e,r,l,s,o)})}_syncState(){const e=this.hasAttribute("paused")||this._prefersReducedMotion();this.setAttribute("data-state",e?"paused":"running"),this.setAttribute("data-reduced-motion",this._prefersReducedMotion()?"true":"false"),this.setAttribute("data-path-visible",this._pathVisible()?"true":"false"),this._syncNodeEffectAnimationState(e)}_startNodeEffectAnimation(e,t,r,o,n,s){if(typeof e.animate!="function"||this._prefersReducedMotion()||t==="none")return;this._nodeEffectAnimations.get(e)?.cancel();const i=Math.max(r,1),p=_(o/i,0,1),l=_((o+n*.35)/i,p,1),d=_((o+n*.72)/i,l,1),u=_((o+n)/i,d,1),h=e.animate(Me(t,p,l,d,u),{duration:r,iterations:s==="infinite"?1/0:1,fill:"both",easing:"linear",delay:0});(this.hasAttribute("paused")||this._prefersReducedMotion())&&h.pause(),this._nodeEffectAnimations.set(e,h)}_syncNodeEffectAnimationState(e){this._nodeEffectAnimations.forEach(t=>{e?t.pause():t.play()})}_clearNodeEffectAnimations(){this._nodeEffectAnimations.forEach(e=>e.cancel()),this._nodeEffectAnimations.clear()}_layoutMetrics(){const e=this._sizePreset(),t=this._columns(),r=this._resolvedRowCount(),o=this._paddingPx(e),n=this._columnGapPx(e),s=this._rowGapPx(e),i=this._nodeSizePx(e),p=this._hubSizePx(e),l=this._minHeightPx(e),d=Math.max(i,Math.round(p*.86)),u=o*2+t*d+Math.max(0,t-1)*n,h=this._canvasEl?.getBoundingClientRect(),f=h?.width||this.clientWidth||0,g=this._autoFit()&&f>0&&u>0?_(f/u,.2,1):1,$=o*g,y=n*g,m=s*g,w=i*g,x=p*g,z=l*g,k=Math.max(z,$*2+r*Math.max(w,Math.round(x*.86))+Math.max(0,r-1)*m),A=this._autoFit()&&f>0?f:Math.max(f,u),M=Math.max(h?.height||this.clientHeight||0,k);return{width:A,height:M,scale:g,padding:$,columns:t,rows:r,columnGap:y,rowGap:m,nodeSize:w,hubSize:x}}_resolvedRowCount(){const e=this._declaredRows(),t=this._nodes.reduce((r,o)=>Math.max(r,o.row),1);return Math.max(1,e||t)}_declaredRows(){const e=L(this.getAttribute("rows"),NaN);return Number.isFinite(e)?O(e,1,12):null}_columns(){return O(L(this.getAttribute("columns"),me),1,6)}_paddingPx(e){return P(this.getAttribute("padding"),e.padding)}_columnGapPx(e){return P(this.getAttribute("column-gap"),e.columnGap)}_rowGapPx(e){return P(this.getAttribute("row-gap"),e.rowGap)}_nodeSizePx(e){return P(this.getAttribute("node-size"),e.nodeSize)}_hubSizePx(e){return P(this.getAttribute("hub-size"),e.hubSize)}_minHeightPx(e){return P(this.getAttribute("min-height"),e.minHeight)}_requiredWidthPx(e){const t=this._columns(),r=this._paddingPx(e),o=this._columnGapPx(e),n=this._nodeSizePx(e),s=this._hubSizePx(e),i=Math.max(n,Math.round(s*.86));return r*2+t*i+Math.max(0,t-1)*o}_autoFit(){const e=this.getAttribute("auto-fit");return e==null?!1:W(e,!0)}_trailWidthPx(){return P(this.getAttribute("trail-width"),se)}_beamWidthPx(){return P(this.getAttribute("beam-width"),re)}_durationMs(){return F(this.getAttribute("duration"),ie)}_delayMs(){return F(this.getAttribute("delay"),ne)}_staggerMs(){return F(this.getAttribute("stagger"),oe)}_beamFactor(e){return _(ae(this.getAttribute("beam-factor"),e.beamFactor),.06,.48)}_sizePreset(){const e=this.getAttribute("size");return e==="xxs"||e==="0"?c.xxs:e==="xs"?c.xs:e==="sm"||e==="1"?c.sm:e==="lg"||e==="3"?c.lg:c.md}_motionPreset(){const e=this.getAttribute("animation");return e&&ye.has(e)?v[e]:v.smooth}_tone(){const e=this.getAttribute("tone");return e&&ue.has(e)?e:"brand"}_pathVisible(){const e=this.getAttribute("path");return e==null?!0:W(e,!0)}_repeat(){const e=this.getAttribute("repeat");return e==null?!0:W(e,!0)}_nodeEffect(){const e=this.getAttribute("node-effect");return e&&_e.has(e)?e:"none"}}function we(a,e,t){const r={x:a.centerX,y:a.centerY},o={x:e.centerX,y:e.centerY},n=Math.atan2(o.y-r.y,o.x-r.x),s=te(r,n,Math.max(0,a.radiusPx-Q)),i=te(o,n+Math.PI,Math.max(0,e.radiusPx-Q)),p=i.x-s.x,l=i.y-s.y,d=Math.abs(p),u=Math.abs(l);if(t==="straight"||t==="auto"&&u<Math.max(8,Math.min(a.radiusPx,e.radiusPx)*.28))return{kind:"line",start:s,end:i,d:`M ${b(s.x)} ${b(s.y)} L ${b(i.x)} ${b(i.y)}`,length:pe(s,i)};const h=t==="arc"?.56:t==="soft"?.34:u>d*.45?.48:.4;if(d>=u){const y=Math.max(d*h,44),m={x:s.x+Math.sign(p||1)*y,y:s.y},w={x:i.x-Math.sign(p||1)*y,y:i.y};return{kind:"cubic",start:s,end:i,c1:m,c2:w,d:`M ${b(s.x)} ${b(s.y)} C ${b(m.x)} ${b(m.y)} ${b(w.x)} ${b(w.y)} ${b(i.x)} ${b(i.y)}`,length:ee(s,m,w,i)}}const f=Math.max(u*h,44),g={x:s.x,y:s.y+Math.sign(l||1)*f},$={x:i.x,y:i.y-Math.sign(l||1)*f};return{kind:"cubic",start:s,end:i,c1:g,c2:$,d:`M ${b(s.x)} ${b(s.y)} C ${b(g.x)} ${b(g.y)} ${b($.x)} ${b($.y)} ${b(i.x)} ${b(i.y)}`,length:ee(s,g,$,i)}}function $e(a){if(a.kind==="line")return{kind:"line",start:a.end,end:a.start,d:`M ${b(a.end.x)} ${b(a.end.y)} L ${b(a.start.x)} ${b(a.start.y)}`,length:a.length};const e=a.c2,t=a.c1;return{kind:"cubic",start:a.end,end:a.start,c1:e,c2:t,d:`M ${b(a.end.x)} ${b(a.end.y)} C ${b(e.x)} ${b(e.y)} ${b(t.x)} ${b(t.y)} ${b(a.start.x)} ${b(a.start.y)}`,length:a.length}}function Se(a,e,t){const r=new Map,o=new Map,n=new Map,s=new Set,i=new Set;for(const d of a){const u=be(d.connection),h=r.get(u);h?h.push(d):r.set(u,[d])}const p=d=>{const u=o.get(d);if(u!=null)return u;if(s.has(d))return e;s.add(d);const h=r.get(d);let f=e;return h?.length&&(f=h.reduce((g,$)=>{const y=l($.connection);return Math.max(g,y+$.connection.durationMs)},e)),s.delete(d),o.set(d,f),f},l=d=>{const u=n.get(d);if(u!=null)return u;if(i.has(d))return e;i.add(d);const h=p(ze(d)),f=d.hasExplicitDelay?0:d.siblingIndex*t,g=h+f+d.localDelayMs;return i.delete(d),n.set(d,g),g};for(const d of a)n.set(d.connection,l(d.connection));return n}function Z(a,e,t,r,o,n,s,i,p,l){const d=Math.max(e,1),u=_(t/d*100,0,100),h=_((t+r)/d*100,u,100),f=_(u+Math.max(r/d*100*.02,.01),u,h),g=S(u),$=S(f),y=S(h),m=b(i),w=b(p),x=b(s),z=b(l);if(n==="pulse"){const k=_(u+(h-u)*.42,f,h),A=_(u+(h-u)*.82,k,h),M=S(k),C=S(A);return`
573
573
  @keyframes ${a} {
574
574
  0%, ${g}% {
575
575
  opacity: 0;
576
576
  stroke-dasharray: ${z} ${x};
577
577
  stroke-dashoffset: 0;
578
- stroke-width: ${u};
578
+ stroke-width: ${m};
579
579
  }
580
580
  ${$}% {
581
581
  opacity: calc(${o} * 0.72);
582
582
  stroke-dasharray: ${z} ${x};
583
583
  stroke-dashoffset: 0;
584
- stroke-width: ${u};
584
+ stroke-width: ${m};
585
585
  }
586
586
  ${M}% {
587
587
  opacity: ${o};
588
588
  stroke-dasharray: ${z} ${x};
589
- stroke-dashoffset: ${l(-r*.44)};
589
+ stroke-dashoffset: ${b(-s*.44)};
590
590
  stroke-width: ${w};
591
591
  }
592
592
  ${C}% {
593
593
  opacity: calc(${o} * 0.68);
594
594
  stroke-dasharray: ${z} ${x};
595
- stroke-dashoffset: ${l(-r*.84)};
596
- stroke-width: ${u};
595
+ stroke-dashoffset: ${b(-s*.84)};
596
+ stroke-width: ${m};
597
597
  }
598
598
  ${y}%,
599
599
  100% {
600
600
  opacity: 0;
601
601
  stroke-dasharray: ${z} ${x};
602
- stroke-dashoffset: ${l(-r)};
603
- stroke-width: ${u};
602
+ stroke-dashoffset: ${b(-s)};
603
+ stroke-width: ${m};
604
604
  }
605
605
  }
606
- `}if(n==="heartbeat"){const k=_(h*.72,i*4.5,r*.42),A=l(k),M=_(m+(c-m)*.24,f,c),C=_(m+(c-m)*.34,M,c),T=_(m+(c-m)*.48,C,c),R=_(m+(c-m)*.82,T,c),H=S(M),N=S(C),G=S(T),I=S(R);return`
606
+ `}if(n==="heartbeat"){const k=_(l*.72,i*4.5,s*.42),A=b(k),M=_(u+(h-u)*.24,f,h),C=_(u+(h-u)*.34,M,h),T=_(u+(h-u)*.48,C,h),R=_(u+(h-u)*.82,T,h),H=S(M),N=S(C),G=S(T),I=S(R);return`
607
607
  @keyframes ${a} {
608
608
  0%, ${g}% {
609
609
  opacity: 0;
610
610
  stroke-dasharray: ${A} ${x};
611
611
  stroke-dashoffset: 0;
612
- stroke-width: ${u};
612
+ stroke-width: ${m};
613
613
  }
614
614
  ${$}% {
615
615
  opacity: calc(${o} * 0.7);
616
616
  stroke-dasharray: ${A} ${x};
617
617
  stroke-dashoffset: 0;
618
- stroke-width: ${u};
618
+ stroke-width: ${m};
619
619
  }
620
620
  ${H}% {
621
621
  opacity: calc(${o} * 0.88);
622
622
  stroke-dasharray: ${A} ${x};
623
- stroke-dashoffset: ${l(-r*.24)};
624
- stroke-width: ${l(i*1.08)};
623
+ stroke-dashoffset: ${b(-s*.24)};
624
+ stroke-width: ${b(i*1.08)};
625
625
  }
626
626
  ${N}% {
627
627
  opacity: calc(${o} * 0.5);
628
628
  stroke-dasharray: ${A} ${x};
629
- stroke-dashoffset: ${l(-r*.34)};
630
- stroke-width: ${u};
629
+ stroke-dashoffset: ${b(-s*.34)};
630
+ stroke-width: ${m};
631
631
  }
632
632
  ${G}% {
633
633
  opacity: ${o};
634
634
  stroke-dasharray: ${A} ${x};
635
- stroke-dashoffset: ${l(-r*.5)};
635
+ stroke-dashoffset: ${b(-s*.5)};
636
636
  stroke-width: ${w};
637
637
  }
638
638
  ${I}% {
639
639
  opacity: calc(${o} * 0.7);
640
640
  stroke-dasharray: ${A} ${x};
641
- stroke-dashoffset: ${l(-r*.84)};
642
- stroke-width: ${u};
641
+ stroke-dashoffset: ${b(-s*.84)};
642
+ stroke-width: ${m};
643
643
  }
644
644
  ${y}%,
645
645
  100% {
646
646
  opacity: 0;
647
647
  stroke-dasharray: ${A} ${x};
648
- stroke-dashoffset: ${l(-r)};
649
- stroke-width: ${u};
648
+ stroke-dashoffset: ${b(-s)};
649
+ stroke-width: ${m};
650
650
  }
651
651
  }
652
652
  `}return`
@@ -654,20 +654,20 @@
654
654
  0%, ${g}% {
655
655
  opacity: 0;
656
656
  stroke-dasharray: 0 ${x};
657
- stroke-width: ${u};
657
+ stroke-width: ${m};
658
658
  }
659
659
  ${$}% {
660
660
  opacity: ${o};
661
661
  stroke-dasharray: 0 ${x};
662
- stroke-width: ${u};
662
+ stroke-width: ${m};
663
663
  }
664
664
  ${y}%, 100% {
665
665
  opacity: ${o};
666
666
  stroke-dasharray: ${x} 0;
667
- stroke-width: ${u};
667
+ stroke-width: ${m};
668
668
  }
669
669
  }
670
- `}function ze(a){return a.reverse?a.to:a.from}function be(a){return a.reverse?a.from:a.to}function J(a){return _(a*.16,360,900)}function Ae(a,e,t,s,o){const n=Math.max(e,1),r=_(t/n*100,0,100),i=_((t+s*.35)/n*100,r,100),p=_((t+s*.72)/n*100,i,100),h=_((t+s)/n*100,p,100),d=S(r),m=S(i),c=S(p),f=S(h);if(o==="shake"){const u=_(r+(i-r)*.3,r,i),w=_(r+(i-r)*.65,u,i),x=S(u),z=S(w);return`
670
+ `}function ze(a){return a.reverse?a.to:a.from}function be(a){return a.reverse?a.from:a.to}function J(a){return _(a*.16,360,900)}function Ae(a,e,t,r,o){const n=Math.max(e,1),s=_(t/n*100,0,100),i=_((t+r*.35)/n*100,s,100),p=_((t+r*.72)/n*100,i,100),l=_((t+r)/n*100,p,100),d=S(s),u=S(i),h=S(p),f=S(l);if(o==="shake"){const m=_(s+(i-s)*.3,s,i),w=_(s+(i-s)*.65,m,i),x=S(m),z=S(w);return`
671
671
  @keyframes ${a} {
672
672
  0%, ${d}%, 100% {
673
673
  transform: translate(-50%, -50%) scale(1);
@@ -684,14 +684,14 @@
684
684
  ${z}% {
685
685
  transform: translate(calc(-50% + 2px), calc(-50% - 1px)) scale(1.03) rotate(2deg);
686
686
  }
687
- ${m}% {
687
+ ${u}% {
688
688
  transform: translate(-50%, -50%) scale(1.03);
689
689
  box-shadow:
690
690
  var(--ui-animated-beam-node-base-shadow),
691
691
  0 0 0 6px var(--ui-animated-beam-node-effect-ring),
692
692
  0 0 24px var(--ui-animated-beam-node-effect-glow);
693
693
  }
694
- ${c}%,
694
+ ${h}%,
695
695
  ${f}% {
696
696
  transform: translate(-50%, -50%) scale(1);
697
697
  box-shadow: var(--ui-animated-beam-node-base-shadow);
@@ -705,16 +705,16 @@
705
705
  box-shadow: var(--ui-animated-beam-node-base-shadow);
706
706
  border-color: color-mix(in srgb, var(--ui-animated-beam-accent) 12%, rgba(15, 23, 42, 0.1));
707
707
  }
708
- ${m}% {
708
+ ${u}% {
709
709
  transform: ${o==="pulse"?"translate(-50%, -50%) scale(1.08)":o==="ring"?"translate(-50%, -50%) scale(1.04)":"translate(-50%, -50%) scale(1.03)"};
710
710
  box-shadow: ${o==="ring"?"var(--ui-animated-beam-node-base-shadow), 0 0 0 7px var(--ui-animated-beam-node-effect-ring)":o==="pulse"?"var(--ui-animated-beam-node-base-shadow), 0 0 0 6px var(--ui-animated-beam-node-effect-ring), 0 0 20px var(--ui-animated-beam-node-effect-glow)":"var(--ui-animated-beam-node-base-shadow), 0 0 0 5px var(--ui-animated-beam-node-effect-ring), 0 0 28px var(--ui-animated-beam-node-effect-glow)"};
711
711
  border-color: ${o==="ring"?"color-mix(in srgb, var(--ui-animated-beam-accent-end) 34%, transparent)":"color-mix(in srgb, var(--ui-animated-beam-accent) 28%, transparent)"};
712
712
  }
713
- ${c}%,
713
+ ${h}%,
714
714
  ${f}% {
715
715
  transform: translate(-50%, -50%) scale(1);
716
716
  box-shadow: var(--ui-animated-beam-node-base-shadow);
717
717
  border-color: color-mix(in srgb, var(--ui-animated-beam-accent) 12%, rgba(15, 23, 42, 0.1));
718
718
  }
719
719
  }
720
- `}function Me(a,e=0,t=.1,s=.16,o=.2){const n={offset:0,transform:"translate(-50%, -50%) scale(1)",boxShadow:"var(--ui-animated-beam-node-base-shadow)",borderColor:"color-mix(in srgb, var(--ui-animated-beam-accent) 12%, rgba(15, 23, 42, 0.1))"};if(a==="shake"){const h=e+(t-e)*.3,d=e+(t-e)*.65;return[{...n,offset:0},{...n,offset:e},{offset:h,transform:"translate(calc(-50% - 2px), calc(-50% + 1px)) scale(1.02) rotate(-2deg)",boxShadow:"var(--ui-animated-beam-node-base-shadow), 0 0 0 5px var(--ui-animated-beam-node-effect-ring)",borderColor:"color-mix(in srgb, var(--ui-animated-beam-accent-end) 30%, transparent)"},{offset:d,transform:"translate(calc(-50% + 2px), calc(-50% - 1px)) scale(1.03) rotate(2deg)",boxShadow:"var(--ui-animated-beam-node-base-shadow), 0 0 0 5px var(--ui-animated-beam-node-effect-ring)",borderColor:"color-mix(in srgb, var(--ui-animated-beam-accent-end) 30%, transparent)"},{offset:t,transform:"translate(-50%, -50%) scale(1.03)",boxShadow:"var(--ui-animated-beam-node-base-shadow), 0 0 0 6px var(--ui-animated-beam-node-effect-ring), 0 0 24px var(--ui-animated-beam-node-effect-glow)",borderColor:"color-mix(in srgb, var(--ui-animated-beam-accent-end) 30%, transparent)"},{...n,offset:s},{...n,offset:o},{...n,offset:1}]}const r=a==="pulse"?"translate(-50%, -50%) scale(1.08)":a==="ring"?"translate(-50%, -50%) scale(1.04)":"translate(-50%, -50%) scale(1.03)",i=a==="ring"?"var(--ui-animated-beam-node-base-shadow), 0 0 0 7px var(--ui-animated-beam-node-effect-ring)":a==="pulse"?"var(--ui-animated-beam-node-base-shadow), 0 0 0 6px var(--ui-animated-beam-node-effect-ring), 0 0 20px var(--ui-animated-beam-node-effect-glow)":"var(--ui-animated-beam-node-base-shadow), 0 0 0 5px var(--ui-animated-beam-node-effect-ring), 0 0 28px var(--ui-animated-beam-node-effect-glow)",p=a==="ring"?"color-mix(in srgb, var(--ui-animated-beam-accent-end) 34%, transparent)":"color-mix(in srgb, var(--ui-animated-beam-accent) 28%, transparent)";return[{...n,offset:0},{...n,offset:e},{offset:t,transform:r,boxShadow:i,borderColor:p},{...n,offset:s},{...n,offset:o},{...n,offset:1}]}function ee(a,e,t,s){let o=0,n=a;const r=18;for(let i=1;i<=r;i+=1){const p=i/r,h=Ee(a,e,t,s,p);o+=pe(n,h),n=h}return o}function Ee(a,e,t,s,o){const n=1-o,r=n*n*n*a.x+3*n*n*o*e.x+3*n*o*o*t.x+o*o*o*s.x,i=n*n*n*a.y+3*n*n*o*e.y+3*n*o*o*t.y+o*o*o*s.y;return{x:r,y:i}}function te(a,e,t){return{x:a.x+Math.cos(e)*t,y:a.y+Math.sin(e)*t}}function Pe(a){a.removeAttribute("data-ui-animated-beam-managed"),a.removeAttribute("data-ui-animated-beam-node"),a.removeAttribute("data-ui-animated-beam-hub"),a.hasAttribute("data-ui-animated-beam-node-id-owned")&&(a.removeAttribute("node-id"),a.removeAttribute("data-ui-animated-beam-node-id-owned")),a.style.removeProperty("left"),a.style.removeProperty("top"),a.style.removeProperty("inline-size"),a.style.removeProperty("block-size"),a.style.removeProperty("z-index"),a.style.removeProperty("--ui-animated-beam-render-size"),le(a)}function ke(a){a.removeAttribute("data-ui-animated-beam-managed"),a.removeAttribute("data-ui-animated-beam-connection")}function le(a){a.style.removeProperty("--ui-animated-beam-node-effect-name"),a.style.removeProperty("--ui-animated-beam-node-effect-cycle"),a.style.removeProperty("--ui-animated-beam-node-effect-iterations")}function Ce(a){return a&&ue.has(a)?a:null}function he(a){return a?/^-?\d+(\.\d+)?$/.test(a.trim())?`${a.trim()}px`:a:null}function P(a,e){const t=he(a);if(!t)return e;const s=t.match(/-?\d+(\.\d+)?/);return s?Number.parseFloat(s[0]):e}function F(a,e){if(!a)return e;const t=a.trim();return t?/^-?\d+(\.\d+)?$/.test(t)?Number.parseFloat(t):t.endsWith("ms")?Number.parseFloat(t.slice(0,-2))||e:t.endsWith("s")?(Number.parseFloat(t.slice(0,-1))||e/1e3)*1e3:e:e}function W(a,e){if(a==null)return e;const t=a.trim().toLowerCase();return t?t==="false"||t==="0"||t==="off"||t==="no"?!1:t==="true"||t==="1"||t==="on"||t==="yes"?!0:e:!0}function L(a,e){if(a==null)return e;const t=Number.parseInt(a,10);return Number.isFinite(t)?t:e}function ae(a,e){if(a==null)return e;const t=Number.parseFloat(a);return Number.isFinite(t)?t:e}function O(a,e,t){return Math.min(t,Math.max(e,Math.round(a)))}function _(a,e,t){return Math.min(t,Math.max(e,a))}function pe(a,e){return Math.hypot(e.x-a.x,e.y-a.y)}function l(a){return a.toFixed(2)}function S(a){return a.toFixed(4).replace(/\.?0+$/,"")}function B(a){return a.split("&").join("&amp;").split('"').join("&quot;").split("<").join("&lt;").split(">").join("&gt;")}typeof customElements<"u"&&!customElements.get("ui-animated-beam")&&customElements.define("ui-animated-beam",ce);exports.UIAnimatedBeam=ce;
720
+ `}function Me(a,e=0,t=.1,r=.16,o=.2){const n={offset:0,transform:"translate(-50%, -50%) scale(1)",boxShadow:"var(--ui-animated-beam-node-base-shadow)",borderColor:"color-mix(in srgb, var(--ui-animated-beam-accent) 12%, rgba(15, 23, 42, 0.1))"};if(a==="shake"){const l=e+(t-e)*.3,d=e+(t-e)*.65;return[{...n,offset:0},{...n,offset:e},{offset:l,transform:"translate(calc(-50% - 2px), calc(-50% + 1px)) scale(1.02) rotate(-2deg)",boxShadow:"var(--ui-animated-beam-node-base-shadow), 0 0 0 5px var(--ui-animated-beam-node-effect-ring)",borderColor:"color-mix(in srgb, var(--ui-animated-beam-accent-end) 30%, transparent)"},{offset:d,transform:"translate(calc(-50% + 2px), calc(-50% - 1px)) scale(1.03) rotate(2deg)",boxShadow:"var(--ui-animated-beam-node-base-shadow), 0 0 0 5px var(--ui-animated-beam-node-effect-ring)",borderColor:"color-mix(in srgb, var(--ui-animated-beam-accent-end) 30%, transparent)"},{offset:t,transform:"translate(-50%, -50%) scale(1.03)",boxShadow:"var(--ui-animated-beam-node-base-shadow), 0 0 0 6px var(--ui-animated-beam-node-effect-ring), 0 0 24px var(--ui-animated-beam-node-effect-glow)",borderColor:"color-mix(in srgb, var(--ui-animated-beam-accent-end) 30%, transparent)"},{...n,offset:r},{...n,offset:o},{...n,offset:1}]}const s=a==="pulse"?"translate(-50%, -50%) scale(1.08)":a==="ring"?"translate(-50%, -50%) scale(1.04)":"translate(-50%, -50%) scale(1.03)",i=a==="ring"?"var(--ui-animated-beam-node-base-shadow), 0 0 0 7px var(--ui-animated-beam-node-effect-ring)":a==="pulse"?"var(--ui-animated-beam-node-base-shadow), 0 0 0 6px var(--ui-animated-beam-node-effect-ring), 0 0 20px var(--ui-animated-beam-node-effect-glow)":"var(--ui-animated-beam-node-base-shadow), 0 0 0 5px var(--ui-animated-beam-node-effect-ring), 0 0 28px var(--ui-animated-beam-node-effect-glow)",p=a==="ring"?"color-mix(in srgb, var(--ui-animated-beam-accent-end) 34%, transparent)":"color-mix(in srgb, var(--ui-animated-beam-accent) 28%, transparent)";return[{...n,offset:0},{...n,offset:e},{offset:t,transform:s,boxShadow:i,borderColor:p},{...n,offset:r},{...n,offset:o},{...n,offset:1}]}function ee(a,e,t,r){let o=0,n=a;const s=18;for(let i=1;i<=s;i+=1){const p=i/s,l=Ee(a,e,t,r,p);o+=pe(n,l),n=l}return o}function Ee(a,e,t,r,o){const n=1-o,s=n*n*n*a.x+3*n*n*o*e.x+3*n*o*o*t.x+o*o*o*r.x,i=n*n*n*a.y+3*n*n*o*e.y+3*n*o*o*t.y+o*o*o*r.y;return{x:s,y:i}}function te(a,e,t){return{x:a.x+Math.cos(e)*t,y:a.y+Math.sin(e)*t}}function Pe(a){a.removeAttribute("data-ui-animated-beam-managed"),a.removeAttribute("data-ui-animated-beam-node"),a.removeAttribute("data-ui-animated-beam-hub"),a.hasAttribute("data-ui-animated-beam-node-id-owned")&&(a.removeAttribute("node-id"),a.removeAttribute("data-ui-animated-beam-node-id-owned")),a.style.removeProperty("left"),a.style.removeProperty("top"),a.style.removeProperty("inline-size"),a.style.removeProperty("block-size"),a.style.removeProperty("z-index"),a.style.removeProperty("--ui-animated-beam-render-size"),le(a)}function ke(a){a.removeAttribute("data-ui-animated-beam-managed"),a.removeAttribute("data-ui-animated-beam-connection")}function le(a){a.style.removeProperty("--ui-animated-beam-node-effect-name"),a.style.removeProperty("--ui-animated-beam-node-effect-cycle"),a.style.removeProperty("--ui-animated-beam-node-effect-iterations")}function Ce(a){return a&&ue.has(a)?a:null}function he(a){return a?/^-?\d+(\.\d+)?$/.test(a.trim())?`${a.trim()}px`:a:null}function P(a,e){const t=he(a);if(!t)return e;const r=t.match(/-?\d+(\.\d+)?/);return r?Number.parseFloat(r[0]):e}function F(a,e){if(!a)return e;const t=a.trim();return t?/^-?\d+(\.\d+)?$/.test(t)?Number.parseFloat(t):t.endsWith("ms")?Number.parseFloat(t.slice(0,-2))||e:t.endsWith("s")?(Number.parseFloat(t.slice(0,-1))||e/1e3)*1e3:e:e}function W(a,e){if(a==null)return e;const t=a.trim().toLowerCase();return t?t==="false"||t==="0"||t==="off"||t==="no"?!1:t==="true"||t==="1"||t==="on"||t==="yes"?!0:e:!0}function L(a,e){if(a==null)return e;const t=Number.parseInt(a,10);return Number.isFinite(t)?t:e}function ae(a,e){if(a==null)return e;const t=Number.parseFloat(a);return Number.isFinite(t)?t:e}function O(a,e,t){return Math.min(t,Math.max(e,Math.round(a)))}function _(a,e,t){return Math.min(t,Math.max(e,a))}function pe(a,e){return Math.hypot(e.x-a.x,e.y-a.y)}function b(a){return a.toFixed(2)}function S(a){return a.toFixed(4).replace(/\.?0+$/,"")}function B(a){return a.split("&").join("&amp;").split('"').join("&quot;").split("<").join("&lt;").split(">").join("&gt;")}typeof customElements<"u"&&!customElements.get("ui-animated-beam")&&customElements.define("ui-animated-beam",ce);exports.UIAnimatedBeam=ce;