@ecopages/radiant-ui 0.1.0-beta.7 → 0.1.0-beta.8

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 (264) hide show
  1. package/README.md +1 -1
  2. package/dist/components/ui/alert/alert.css +88 -50
  3. package/dist/components/ui/alert/alert.d.ts +43 -5
  4. package/dist/components/ui/alert/alert.script.d.ts +51 -4
  5. package/dist/components/ui/alert/index.d.ts +2 -2
  6. package/dist/components/ui/alert/index.js +1 -1
  7. package/dist/components/ui/alert/index.js.map +4 -4
  8. package/dist/components/ui/autocomplete/autocomplete.css +4 -4
  9. package/dist/components/ui/autocomplete/autocomplete.d.ts +15 -5
  10. package/dist/components/ui/autocomplete/autocomplete.script.d.ts +9 -0
  11. package/dist/components/ui/autocomplete/index.js +1 -1
  12. package/dist/components/ui/autocomplete/index.js.map +4 -4
  13. package/dist/components/ui/avatar/avatar.d.ts +15 -1
  14. package/dist/components/ui/avatar/index.js +1 -1
  15. package/dist/components/ui/avatar/index.js.map +4 -4
  16. package/dist/components/ui/breadcrumb/breadcrumb.d.ts +32 -6
  17. package/dist/components/ui/breadcrumb/index.js +1 -1
  18. package/dist/components/ui/breadcrumb/index.js.map +4 -4
  19. package/dist/{styles/components → components/ui/button}/button.css +45 -31
  20. package/dist/components/ui/button/button.d.ts +21 -4
  21. package/dist/components/ui/button-group/button-group.d.ts +7 -1
  22. package/dist/components/ui/button-group/index.js +1 -1
  23. package/dist/components/ui/button-group/index.js.map +4 -4
  24. package/dist/components/ui/calendar/calendar.css +7 -7
  25. package/dist/components/ui/calendar/calendar.d.ts +3 -2
  26. package/dist/components/ui/calendar/calendar.script.d.ts +39 -1
  27. package/dist/components/ui/calendar/index.js +1 -1
  28. package/dist/components/ui/calendar/index.js.map +4 -4
  29. package/dist/components/ui/carousel/carousel.d.ts +32 -6
  30. package/dist/components/ui/carousel/carousel.script.d.ts +44 -0
  31. package/dist/components/ui/carousel/index.js +1 -1
  32. package/dist/components/ui/carousel/index.js.map +4 -4
  33. package/dist/components/ui/checkbox/checkbox.css +1 -1
  34. package/dist/components/ui/checkbox/checkbox.d.ts +3 -2
  35. package/dist/components/ui/checkbox/checkbox.script.d.ts +4 -0
  36. package/dist/components/ui/checkbox/index.js +1 -1
  37. package/dist/components/ui/checkbox/index.js.map +4 -4
  38. package/dist/components/ui/chip/chip.d.ts +8 -0
  39. package/dist/components/ui/chip/index.js +1 -1
  40. package/dist/components/ui/chip/index.js.map +4 -4
  41. package/dist/components/ui/chip-list/chip-list.d.ts +10 -2
  42. package/dist/components/ui/chip-list/index.js +1 -1
  43. package/dist/components/ui/chip-list/index.js.map +4 -4
  44. package/dist/components/ui/combobox/combobox.css +39 -1
  45. package/dist/components/ui/combobox/combobox.d.ts +15 -5
  46. package/dist/components/ui/combobox/combobox.script.d.ts +13 -1
  47. package/dist/components/ui/combobox/index.js +1 -1
  48. package/dist/components/ui/combobox/index.js.map +4 -4
  49. package/dist/components/ui/cycle-toggle/cycle-toggle.css +15 -0
  50. package/dist/components/ui/cycle-toggle/cycle-toggle.d.ts +29 -0
  51. package/dist/components/ui/cycle-toggle/cycle-toggle.script.d.ts +61 -0
  52. package/dist/components/ui/cycle-toggle/index.d.ts +5 -0
  53. package/dist/components/ui/cycle-toggle/index.js +2 -0
  54. package/dist/components/ui/cycle-toggle/index.js.map +7 -0
  55. package/dist/components/ui/cycle-toggle/theme-preference-icons.d.ts +12 -0
  56. package/dist/components/ui/date-field/date-field.css +37 -0
  57. package/dist/components/ui/date-field/date-field.d.ts +22 -3
  58. package/dist/components/ui/date-field/date-field.script.d.ts +29 -5
  59. package/dist/components/ui/date-field/index.d.ts +1 -1
  60. package/dist/components/ui/date-field/index.js +1 -1
  61. package/dist/components/ui/date-field/index.js.map +4 -4
  62. package/dist/components/ui/date-range-picker/date-range-picker.css +37 -0
  63. package/dist/components/ui/date-range-picker/date-range-picker.d.ts +37 -4
  64. package/dist/components/ui/date-range-picker/date-range-picker.script.d.ts +31 -5
  65. package/dist/components/ui/date-range-picker/index.d.ts +1 -1
  66. package/dist/components/ui/date-range-picker/index.js +1 -1
  67. package/dist/components/ui/date-range-picker/index.js.map +4 -4
  68. package/dist/components/ui/dialog/dialog.css +1 -1
  69. package/dist/components/ui/dialog/dialog.d.ts +30 -5
  70. package/dist/components/ui/dialog/dialog.script.d.ts +3 -0
  71. package/dist/components/ui/dialog/index.js +1 -1
  72. package/dist/components/ui/dialog/index.js.map +4 -4
  73. package/dist/components/ui/disclosure/disclosure-group.css +1 -1
  74. package/dist/components/ui/disclosure/disclosure-group.script.d.ts +6 -0
  75. package/dist/components/ui/disclosure/disclosure.d.ts +26 -7
  76. package/dist/components/ui/disclosure/disclosure.script.d.ts +5 -0
  77. package/dist/components/ui/disclosure/index.js +1 -1
  78. package/dist/components/ui/disclosure/index.js.map +4 -4
  79. package/dist/components/ui/feed/feed.d.ts +37 -7
  80. package/dist/components/ui/feed/index.js +1 -1
  81. package/dist/components/ui/feed/index.js.map +4 -4
  82. package/dist/components/ui/field/field-description.d.ts +5 -1
  83. package/dist/components/ui/field/field-error.d.ts +5 -0
  84. package/dist/components/ui/field/field.d.ts +8 -1
  85. package/dist/components/ui/field/field.script.d.ts +35 -0
  86. package/dist/components/ui/field/index.js +1 -1
  87. package/dist/components/ui/field/index.js.map +4 -4
  88. package/dist/components/ui/form/control-protocol.d.ts +6 -0
  89. package/dist/components/ui/form/form.d.ts +2 -1
  90. package/dist/components/ui/form/form.script.d.ts +16 -1
  91. package/dist/components/ui/form/index.d.ts +1 -1
  92. package/dist/components/ui/form/index.js +1 -1
  93. package/dist/components/ui/form/index.js.map +4 -4
  94. package/dist/components/ui/grid/grid.d.ts +12 -2
  95. package/dist/components/ui/grid/grid.script.d.ts +14 -0
  96. package/dist/components/ui/grid/index.js +1 -1
  97. package/dist/components/ui/grid/index.js.map +4 -4
  98. package/dist/components/ui/heading/heading.d.ts +26 -4
  99. package/dist/components/ui/heading/index.js +1 -1
  100. package/dist/components/ui/heading/index.js.map +4 -4
  101. package/dist/components/ui/headline/headline.d.ts +9 -1
  102. package/dist/components/ui/headline/index.js +1 -1
  103. package/dist/components/ui/headline/index.js.map +4 -4
  104. package/dist/components/ui/input/index.d.ts +1 -1
  105. package/dist/components/ui/input/index.js +1 -1
  106. package/dist/components/ui/input/index.js.map +4 -4
  107. package/dist/components/ui/input/input.css +2 -7
  108. package/dist/components/ui/input/input.d.ts +7 -2
  109. package/dist/components/ui/label/index.js +1 -1
  110. package/dist/components/ui/label/index.js.map +4 -4
  111. package/dist/components/ui/label/label.d.ts +8 -1
  112. package/dist/components/ui/listbox/index.js +1 -1
  113. package/dist/components/ui/listbox/index.js.map +4 -4
  114. package/dist/components/ui/listbox/listbox.css +2 -5
  115. package/dist/components/ui/listbox/listbox.d.ts +7 -3
  116. package/dist/components/ui/listbox/listbox.script.d.ts +14 -1
  117. package/dist/components/ui/menu-button/index.d.ts +1 -1
  118. package/dist/components/ui/menu-button/index.js +1 -1
  119. package/dist/components/ui/menu-button/index.js.map +4 -4
  120. package/dist/components/ui/menu-button/menu-button.css +2 -2
  121. package/dist/components/ui/menu-button/menu-button.d.ts +27 -5
  122. package/dist/components/ui/menu-button/menu-button.script.d.ts +8 -3
  123. package/dist/components/ui/menubar/index.js +1 -1
  124. package/dist/components/ui/menubar/index.js.map +4 -4
  125. package/dist/components/ui/menubar/menubar.css +4 -4
  126. package/dist/components/ui/menubar/menubar.d.ts +14 -2
  127. package/dist/components/ui/menubar/menubar.script.d.ts +10 -1
  128. package/dist/components/ui/meter/index.js +1 -1
  129. package/dist/components/ui/meter/index.js.map +4 -4
  130. package/dist/components/ui/meter/meter.css +1 -1
  131. package/dist/components/ui/meter/meter.d.ts +7 -2
  132. package/dist/components/ui/meter/meter.script.d.ts +21 -0
  133. package/dist/components/ui/navigation-menu/index.js +1 -1
  134. package/dist/components/ui/navigation-menu/index.js.map +4 -4
  135. package/dist/components/ui/navigation-menu/navigation-menu.css +2 -2
  136. package/dist/components/ui/navigation-menu/navigation-menu.d.ts +3 -2
  137. package/dist/components/ui/navigation-menu/navigation-menu.script.d.ts +4 -0
  138. package/dist/components/ui/number-field/index.d.ts +1 -1
  139. package/dist/components/ui/number-field/index.js +1 -1
  140. package/dist/components/ui/number-field/index.js.map +4 -4
  141. package/dist/components/ui/number-field/number-field.css +18 -3
  142. package/dist/components/ui/number-field/number-field.d.ts +36 -8
  143. package/dist/components/ui/number-field/number-field.script.d.ts +28 -1
  144. package/dist/components/ui/popover/index.js +1 -1
  145. package/dist/components/ui/popover/index.js.map +4 -4
  146. package/dist/components/ui/popover/popover.d.ts +5 -4
  147. package/dist/components/ui/popover/popover.script.d.ts +4 -0
  148. package/dist/components/ui/radio-group/index.d.ts +1 -1
  149. package/dist/components/ui/radio-group/index.js +1 -1
  150. package/dist/components/ui/radio-group/index.js.map +4 -4
  151. package/dist/components/ui/radio-group/radio-group.d.ts +29 -4
  152. package/dist/components/ui/radio-group/radio-group.script.d.ts +14 -9
  153. package/dist/components/ui/select/index.js +1 -1
  154. package/dist/components/ui/select/index.js.map +4 -4
  155. package/dist/components/ui/select/select.css +48 -6
  156. package/dist/components/ui/select/select.d.ts +29 -8
  157. package/dist/components/ui/select/select.script.d.ts +7 -0
  158. package/dist/components/ui/sidebar/index.js +1 -1
  159. package/dist/components/ui/sidebar/index.js.map +4 -4
  160. package/dist/components/ui/sidebar/sidebar-trigger.script.d.ts +4 -0
  161. package/dist/components/ui/sidebar/sidebar.css +41 -24
  162. package/dist/components/ui/sidebar/sidebar.d.ts +68 -14
  163. package/dist/components/ui/sidebar/sidebar.docs.css +5 -2
  164. package/dist/components/ui/sidebar/sidebar.script.d.ts +9 -0
  165. package/dist/components/ui/slider/index.js +1 -1
  166. package/dist/components/ui/slider/index.js.map +4 -4
  167. package/dist/components/ui/slider/slider.d.ts +2 -1
  168. package/dist/components/ui/slider/slider.script.d.ts +29 -1
  169. package/dist/components/ui/switch/index.js +1 -1
  170. package/dist/components/ui/switch/index.js.map +4 -4
  171. package/dist/components/ui/switch/switch.css +3 -3
  172. package/dist/components/ui/switch/switch.d.ts +11 -2
  173. package/dist/components/ui/switch/switch.script.d.ts +5 -0
  174. package/dist/components/ui/tabs/index.js +1 -1
  175. package/dist/components/ui/tabs/index.js.map +4 -4
  176. package/dist/components/ui/tabs/tabs.css +9 -10
  177. package/dist/components/ui/tabs/tabs.d.ts +30 -9
  178. package/dist/components/ui/tag-group/index.js +1 -1
  179. package/dist/components/ui/tag-group/index.js.map +4 -4
  180. package/dist/components/ui/tag-group/tag-group.css +2 -11
  181. package/dist/components/ui/tag-group/tag-group.d.ts +18 -5
  182. package/dist/components/ui/tag-group/tag-group.script.d.ts +9 -2
  183. package/dist/components/ui/textarea/index.d.ts +1 -1
  184. package/dist/components/ui/textarea/index.js +1 -1
  185. package/dist/components/ui/textarea/index.js.map +4 -4
  186. package/dist/components/ui/textarea/textarea.d.ts +7 -2
  187. package/dist/components/ui/toast/index.d.ts +1 -1
  188. package/dist/components/ui/toast/index.js +1 -1
  189. package/dist/components/ui/toast/index.js.map +4 -4
  190. package/dist/components/ui/toast/stack-layout.d.ts +18 -0
  191. package/dist/components/ui/toast/toast-context.d.ts +10 -0
  192. package/dist/components/ui/toast/toast.css +30 -9
  193. package/dist/components/ui/toast/toast.d.ts +12 -2
  194. package/dist/components/ui/toast/toast.script.d.ts +60 -4
  195. package/dist/components/ui/toast/toaster.script.d.ts +71 -2
  196. package/dist/components/ui/toc/index.js +1 -1
  197. package/dist/components/ui/toc/index.js.map +4 -4
  198. package/dist/components/ui/toc/toc.css +3 -0
  199. package/dist/components/ui/toc/toc.d.ts +2 -1
  200. package/dist/components/ui/toc/toc.script.d.ts +15 -0
  201. package/dist/components/ui/toolbar/index.js +1 -1
  202. package/dist/components/ui/toolbar/index.js.map +4 -4
  203. package/dist/components/ui/toolbar/toolbar.d.ts +3 -2
  204. package/dist/components/ui/toolbar/toolbar.script.d.ts +8 -0
  205. package/dist/components/ui/tooltip/index.js +1 -1
  206. package/dist/components/ui/tooltip/index.js.map +4 -4
  207. package/dist/components/ui/tooltip/tooltip.d.ts +3 -2
  208. package/dist/components/ui/tooltip/tooltip.script.d.ts +3 -0
  209. package/dist/components/ui/tree/index.js +1 -1
  210. package/dist/components/ui/tree/index.js.map +4 -4
  211. package/dist/components/ui/tree/tree.d.ts +12 -2
  212. package/dist/components/ui/tree/tree.script.d.ts +18 -1
  213. package/dist/components/ui/treegrid/index.js +1 -1
  214. package/dist/components/ui/treegrid/index.js.map +4 -4
  215. package/dist/components/ui/treegrid/treegrid.d.ts +15 -2
  216. package/dist/components/ui/treegrid/treegrid.script.d.ts +22 -1
  217. package/dist/components/ui/window-splitter/index.js +1 -1
  218. package/dist/components/ui/window-splitter/index.js.map +4 -4
  219. package/dist/components/ui/window-splitter/window-splitter.css +1 -1
  220. package/dist/components/ui/window-splitter/window-splitter.d.ts +3 -2
  221. package/dist/components/ui/window-splitter/window-splitter.script.d.ts +22 -0
  222. package/dist/index.d.ts +1 -0
  223. package/dist/index.js +1 -1
  224. package/dist/index.js.map +4 -4
  225. package/dist/lib/cycle-value.d.ts +8 -0
  226. package/dist/lib/intl-number/range.d.ts +8 -0
  227. package/dist/styles/radiant-ui-core.css +110 -341
  228. package/dist/styles/radiant-ui.css +413 -377
  229. package/dist/styles/styles.css +839 -2731
  230. package/dist/styles/tailwind.css +626 -530
  231. package/dist/styles/tokens/colors/aurora.css +2 -2
  232. package/dist/styles/tokens/colors/basalt.css +2 -1
  233. package/dist/styles/tokens/colors/glacier.css +2 -1
  234. package/dist/styles/tokens/presets/colors/aurora.css +42 -14
  235. package/dist/styles/tokens/presets/colors/basalt.css +28 -0
  236. package/dist/styles/tokens/presets/colors/ember.css +28 -0
  237. package/dist/styles/tokens/presets/colors/glacier.css +28 -0
  238. package/dist/styles/tokens/semantic.css +22 -2
  239. package/dist/styles/tokens/spacing/compact.css +12 -12
  240. package/package.json +21 -8
  241. package/dist/components/ui/dialog/dialog-registry.test.d.ts +0 -1
  242. package/dist/components/ui/field/field-ssr-hydration.test.d.ts +0 -1
  243. package/dist/components/ui/form/form-field.test.d.ts +0 -4
  244. package/dist/components/ui/form/form-store.test.d.ts +0 -1
  245. package/dist/components/ui/shared/collection-navigation.test.d.ts +0 -1
  246. package/dist/components/ui/shared/floating-position.test.d.ts +0 -1
  247. package/dist/components/ui/shared/listbox-popover-behavior.test.d.ts +0 -1
  248. package/dist/components/ui/shared/popover-controller.test.d.ts +0 -1
  249. package/dist/components/ui/shared/portal.test.d.ts +0 -1
  250. package/dist/components/ui/sidebar/sidebar.ssr.test.d.ts +0 -2
  251. package/dist/components/ui/sidebar/sidebar.test.d.ts +0 -1
  252. package/dist/components/ui/toast/toast.test.d.ts +0 -2
  253. package/dist/components/ui/toc/toc-helpers.test.d.ts +0 -1
  254. package/dist/components/ui/toc/toc.ssr.test.d.ts +0 -1
  255. package/dist/components/ui/toc/toc.test.d.ts +0 -1
  256. package/dist/lib/intl-date/parts.test.d.ts +0 -1
  257. package/dist/lib/intl-date/segments.test.d.ts +0 -1
  258. package/dist/lib/intl-date/selection.test.d.ts +0 -1
  259. package/dist/lib/mask/date-mask.test.d.ts +0 -1
  260. package/dist/lib/mask/input-mask.test.d.ts +0 -1
  261. package/dist/lib/radiant-view.d.ts +0 -43
  262. package/dist/lib/text-filter.test.d.ts +0 -1
  263. package/dist/styles/tokens/presets/radius.css +0 -45
  264. package/dist/styles/tokens/presets/spacing.css +0 -57
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../../../src/components/ui/toast/toast.script.tsx", "../../../../src/components/ui/toast/toast-context.ts", "../../../../src/components/ui/toast/toast-state.ts", "../../../../src/components/ui/toast/toaster.script.tsx", "../../../../src/components/ui/toast/toast.tsx", "../../../../src/lib/radiant-view.ts", "../../../../src/components/ui/toast/toast-api.ts"],
4
- "sourcesContent": ["let _initProto, _initClass, _init_toastId, _init_extra_toastId, _init_title, _init_extra_title, _init_description, _init_extra_description, _init_variant, _init_extra_variant, _init_duration, _init_extra_duration, _init_dismissible, _init_extra_dismissible, _init_closeButton, _init_extra_closeButton, _init_actionLabel, _init_extra_actionLabel, _init_position, _init_extra_position, _init_markedDelete, _init_extra_markedDelete, _init_toastTarget, _init_extra_toastTarget;\nfunction _applyDecs(e, t, n, r, o, i) { var a, c, u, s, f, l, p, d = Symbol.metadata || Symbol.for(\"Symbol.metadata\"), m = Object.defineProperty, h = Object.create, y = [h(null), h(null)], v = t.length; function g(t, n, r) { return function (o, i) { n && (i = o, o = e); for (var a = 0; a < t.length; a++) i = t[a].apply(o, r ? [i] : []); return r ? i : o; }; } function b(e, t, n, r) { if (\"function\" != typeof e && (r || void 0 !== e)) throw new TypeError(t + \" must \" + (n || \"be\") + \" a function\" + (r ? \"\" : \" or undefined\")); return e; } function applyDec(e, t, n, r, o, i, u, s, f, l, p) { function d(e) { if (!p(e)) throw new TypeError(\"Attempted to access private element on non-instance\"); } var h = [].concat(t[0]), v = t[3], w = !u, D = 1 === o, S = 3 === o, j = 4 === o, E = 2 === o; function I(t, n, r) { return function (o, i) { return n && (i = o, o = e), r && r(o), P[t].call(o, i); }; } if (!w) { var P = {}, k = [], F = S ? \"get\" : j || D ? \"set\" : \"value\"; if (f ? (l || D ? P = { get: _setFunctionName(function () { return v(this); }, r, \"get\"), set: function (e) { t[4](this, e); } } : P[F] = v, l || _setFunctionName(P[F], r, E ? \"\" : F)) : l || (P = Object.getOwnPropertyDescriptor(e, r)), !l && !f) { if ((c = y[+s][r]) && 7 !== (c ^ o)) throw Error(\"Decorating two elements with the same name (\" + P[F].name + \") is not supported yet\"); y[+s][r] = o < 3 ? 1 : o; } } for (var N = e, O = h.length - 1; O >= 0; O -= n ? 2 : 1) { var T = b(h[O], \"A decorator\", \"be\", !0), z = n ? h[O - 1] : void 0, A = {}, H = { kind: [\"field\", \"accessor\", \"method\", \"getter\", \"setter\", \"class\"][o], name: r, metadata: a, addInitializer: function (e, t) { if (e.v) throw new TypeError(\"attempted to call addInitializer after decoration was finished\"); b(t, \"An initializer\", \"be\", !0), i.push(t); }.bind(null, A) }; if (w) c = T.call(z, N, H), A.v = 1, b(c, \"class decorators\", \"return\") && (N = c);else if (H.static = s, H.private = f, c = H.access = { has: f ? p.bind() : function (e) { return r in e; } }, j || (c.get = f ? E ? function (e) { return d(e), P.value; } : I(\"get\", 0, d) : function (e) { return e[r]; }), E || S || (c.set = f ? I(\"set\", 0, d) : function (e, t) { e[r] = t; }), N = T.call(z, D ? { get: P.get, set: P.set } : P[F], H), A.v = 1, D) { if (\"object\" == typeof N && N) (c = b(N.get, \"accessor.get\")) && (P.get = c), (c = b(N.set, \"accessor.set\")) && (P.set = c), (c = b(N.init, \"accessor.init\")) && k.unshift(c);else if (void 0 !== N) throw new TypeError(\"accessor decorators must return an object with get, set, or init properties or undefined\"); } else b(N, (l ? \"field\" : \"method\") + \" decorators\", \"return\") && (l ? k.unshift(N) : P[F] = N); } return o < 2 && u.push(g(k, s, 1), g(i, s, 0)), l || w || (f ? D ? u.splice(-1, 0, I(\"get\", s), I(\"set\", s)) : u.push(E ? P[F] : b.call.bind(P[F])) : m(e, r, P)), N; } function w(e) { return m(e, d, { configurable: !0, enumerable: !0, value: a }); } return void 0 !== i && (a = i[d]), a = h(null == a ? null : a), f = [], l = function (e) { e && f.push(g(e)); }, p = function (t, r) { for (var i = 0; i < n.length; i++) { var a = n[i], c = a[1], l = 7 & c; if ((8 & c) == t && !l == r) { var p = a[2], d = !!a[3], m = 16 & c; applyDec(t ? e : e.prototype, a, m, d ? \"#\" + p : _toPropertyKey(p), l, l < 2 ? [] : t ? s = s || [] : u = u || [], f, !!t, d, r, t && d ? function (t) { return _checkInRHS(t) === e; } : o); } } }, p(8, 0), p(0, 0), p(8, 1), p(0, 1), l(u), l(s), c = f, v || w(e), { e: c, get c() { var n = []; return v && [w(e = applyDec(e, [t], r, e.name, 5, n)), g(n, 1)]; } }; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nfunction _setFunctionName(e, t, n) { \"symbol\" == typeof t && (t = (t = t.description) ? \"[\" + t + \"]\" : \"\"); try { Object.defineProperty(e, \"name\", { configurable: !0, value: n ? n + \" \" + t : t }); } catch (e) {} return e; }\nfunction _checkInRHS(e) { if (Object(e) !== e) throw TypeError(\"right-hand side of 'in' should be an object, got \" + (null !== e ? typeof e : \"null\")); return e; }\nimport { jsx, jsxs } from \"@ecopages/jsx/jsx-runtime\";\nimport { RadiantElement, bound, customElement, onEvent, onUpdated, prop, query } from \"@ecopages/radiant\";\nimport { DEFAULT_TOAST_POSITION, TOAST_EXIT_MS, TOAST_LIFETIME, TOAST_SWIPE_THRESHOLD, splitToastPosition } from \"./toast-context\";\nimport { toastState } from \"./toast-state\";\nlet _RuiToast;\nclass RuiToast extends RadiantElement {\n static {\n ({\n e: [_init_toastId, _init_extra_toastId, _init_title, _init_extra_title, _init_description, _init_extra_description, _init_variant, _init_extra_variant, _init_duration, _init_extra_duration, _init_dismissible, _init_extra_dismissible, _init_closeButton, _init_extra_closeButton, _init_actionLabel, _init_extra_actionLabel, _init_position, _init_extra_position, _init_markedDelete, _init_extra_markedDelete, _init_toastTarget, _init_extra_toastTarget, _initProto],\n c: [_RuiToast, _initClass]\n } = _applyDecs(this, [customElement(\"rui-toast\")], [[prop({\n type: String,\n reflect: true,\n defaultValue: \"\"\n }), 0, \"toastId\"], [prop({\n type: String,\n defaultValue: \"\"\n }), 0, \"title\"], [prop({\n type: String,\n defaultValue: \"\"\n }), 0, \"description\"], [prop({\n type: String,\n reflect: true,\n defaultValue: \"default\"\n }), 0, \"variant\"], [prop({\n type: Number,\n defaultValue: TOAST_LIFETIME\n }), 0, \"duration\"], [prop({\n type: Boolean,\n defaultValue: true\n }), 0, \"dismissible\"], [prop({\n type: Boolean,\n defaultValue: false\n }), 0, \"closeButton\"], [prop({\n type: String,\n defaultValue: \"\"\n }), 0, \"actionLabel\"], [prop({\n type: String,\n defaultValue: DEFAULT_TOAST_POSITION\n }), 0, \"position\"], [prop({\n type: Boolean,\n defaultValue: false\n }), 0, \"markedDelete\"], [query({\n ref: \"toast\"\n }), 0, \"toastTarget\"], [onUpdated([\"title\", \"description\", \"variant\", \"actionLabel\", \"closeButton\"]), 2, \"onContentUpdated\"], [onUpdated(\"position\"), 2, \"onPositionUpdated\"], [onUpdated(\"duration\"), 2, \"onDurationUpdated\"], [onUpdated(\"markedDelete\"), 2, \"onMarkedDeleteUpdated\"], [bound, 2, \"onPointerDown\"], [bound, 2, \"onPointerMove\"], [bound, 2, \"onPointerUp\"], [onEvent({\n selector: \"[data-toast-close]\",\n type: \"click\"\n }), 2, \"onCloseClick\"], [onEvent({\n selector: \"[data-toast-action]\",\n type: \"click\"\n }), 2, \"onActionClick\"]], 0, void 0, RadiantElement));\n }\n toastId = (_initProto(this), _init_toastId(this));\n title = (_init_extra_toastId(this), _init_title(this));\n description = (_init_extra_title(this), _init_description(this));\n variant = (_init_extra_description(this), _init_variant(this));\n duration = (_init_extra_variant(this), _init_duration(this));\n dismissible = (_init_extra_duration(this), _init_dismissible(this));\n closeButton = (_init_extra_dismissible(this), _init_closeButton(this));\n actionLabel = (_init_extra_closeButton(this), _init_actionLabel(this));\n position = (_init_extra_actionLabel(this), _init_position(this));\n markedDelete = (_init_extra_position(this), _init_markedDelete(this));\n toastTarget = (_init_extra_markedDelete(this), _init_toastTarget(this));\n mounted = (_init_extra_toastTarget(this), false);\n removed = false;\n swiping = false;\n swipeOut = false;\n swipeAxis = null;\n swipeOutDirection = null;\n held = false;\n timerReady = false;\n timeoutId = null;\n pointerStart = null;\n dragStartTime = null;\n exitTimer = null;\n /**\n * Wire pointer listeners, then announce mount after paint so enter CSS can run.\n * On reconnect, re-announce without restarting the enter sequence.\n */\n connectedCallback() {\n super.connectedCallback();\n const isReconnect = this.mounted;\n this.addEventListener(\"pointerdown\", this.onPointerDown);\n this.addEventListener(\"pointermove\", this.onPointerMove);\n this.addEventListener(\"pointerup\", this.onPointerUp);\n this.addEventListener(\"pointercancel\", this.onPointerUp);\n if (isReconnect) {\n this.syncDomState();\n this.dispatchEvent(new CustomEvent(\"rui-toast-mounted\", {\n bubbles: true\n }));\n return;\n }\n this.timerReady = false;\n requestAnimationFrame(() => {\n requestAnimationFrame(() => {\n if (!this.isConnected) return;\n this.mounted = true;\n this.timerReady = true;\n this.syncDomState();\n this.dispatchEvent(new CustomEvent(\"rui-toast-mounted\", {\n bubbles: true\n }));\n });\n });\n this.syncDomState();\n }\n /**\n * Clear timers on unmount. Only purge shared state when this instance was exiting \u2014\n * overflow toasts are intentionally unmounted while still queued.\n */\n disconnectedCallback() {\n this.clearTimer();\n if (this.exitTimer) {\n clearTimeout(this.exitTimer);\n this.exitTimer = null;\n }\n const id = this.resolvedId;\n if (id !== \"\" && this.removed) {\n toastState.remove(id);\n }\n this.held = false;\n this.timerReady = false;\n this.removeEventListener(\"pointerdown\", this.onPointerDown);\n this.removeEventListener(\"pointermove\", this.onPointerMove);\n this.removeEventListener(\"pointerup\", this.onPointerUp);\n this.removeEventListener(\"pointercancel\", this.onPointerUp);\n super.disconnectedCallback();\n }\n onContentUpdated() {\n this.requestUpdate();\n }\n onPositionUpdated() {\n this.syncDomState();\n }\n /**\n * Hold or release auto-dismiss (toaster-controlled on stack hover).\n * Leaving hover resets lifetime to a full `duration` (does not resume leftover time).\n * A no-op `setPaused(false)` still starts the timer on first paint if it never ran.\n */\n setPaused(paused) {\n if (this.held === paused) {\n if (!paused && this.timerReady && this.mounted && !this.removed && !this.timeoutId) {\n this.startTimer();\n }\n return;\n }\n this.held = paused;\n if (!this.timerReady || !this.mounted || this.removed) return;\n if (paused || document.hidden) {\n this.clearTimer();\n } else {\n this.startTimer();\n }\n }\n onDurationUpdated() {\n if (!this.timerReady || !this.mounted || this.removed || this.held) return;\n this.startTimer();\n }\n onMarkedDeleteUpdated() {\n if (this.markedDelete && !this.removed) {\n this.beginRemove();\n }\n }\n get resolvedId() {\n const raw = this.toastId;\n if (raw == null || raw === \"\") return \"\";\n const asNumber = Number(raw);\n return Number.isFinite(asNumber) && String(asNumber) === raw ? asNumber : raw;\n }\n clearTimer() {\n if (this.timeoutId) clearTimeout(this.timeoutId);\n this.timeoutId = null;\n }\n /** Start a fresh full-duration countdown (never resumes leftover time). */\n startTimer() {\n if (this.held || this.removed || document.hidden) return;\n if (this.duration === Number.POSITIVE_INFINITY || this.variant === \"loading\") return;\n if (this.duration <= 0) {\n this.beginRemove();\n return;\n }\n this.clearTimer();\n this.timeoutId = setTimeout(() => this.beginRemove(), this.duration);\n }\n beginRemove() {\n if (this.removed) return;\n this.removed = true;\n this.clearTimer();\n this.syncDomState();\n if (!this.markedDelete) {\n toastState.dismiss(this.resolvedId);\n }\n this.exitTimer = setTimeout(() => {\n this.exitTimer = null;\n toastState.remove(this.resolvedId);\n }, TOAST_EXIT_MS);\n }\n onPointerDown(event) {\n if (!this.dismissible || this.variant === \"loading\") return;\n if (event.button !== 0) return;\n const target = event.target;\n if (target?.closest(\"[data-toast-close], [data-toast-action], button, a\")) return;\n this.dragStartTime = Date.now();\n this.pointerStart = {\n x: event.clientX,\n y: event.clientY\n };\n this.swipeAxis = null;\n this.setPointerCapture(event.pointerId);\n }\n onPointerMove(event) {\n if (!this.pointerStart) return;\n const {\n y,\n x\n } = splitToastPosition(this.position);\n const deltaX = event.clientX - this.pointerStart.x;\n const deltaY = event.clientY - this.pointerStart.y;\n if (!this.swiping) {\n if (Math.abs(deltaX) < 8 && Math.abs(deltaY) < 8) return;\n this.swiping = true;\n this.syncDomState();\n }\n if (!this.swipeAxis) {\n this.swipeAxis = Math.abs(deltaX) > Math.abs(deltaY) ? \"x\" : \"y\";\n }\n const swipeAmountX = this.swipeAxis === \"x\" ? deltaX : 0;\n const swipeAmountY = this.swipeAxis === \"y\" ? deltaY : 0;\n if (this.swipeAxis === \"y\") {\n const towardExit = y === \"bottom\" ? swipeAmountY > 0 : swipeAmountY < 0;\n if (!towardExit && Math.abs(swipeAmountY) < TOAST_SWIPE_THRESHOLD) {\n this.style.setProperty(\"--swipe-amount-x\", \"0px\");\n this.style.setProperty(\"--swipe-amount-y\", \"0px\");\n return;\n }\n }\n if (this.swipeAxis === \"x\") {\n const towardExit = x === \"start\" ? swipeAmountX < 0 : swipeAmountX > 0;\n if (x !== \"center\" && !towardExit && Math.abs(swipeAmountX) < TOAST_SWIPE_THRESHOLD) {\n this.style.setProperty(\"--swipe-amount-x\", \"0px\");\n this.style.setProperty(\"--swipe-amount-y\", \"0px\");\n return;\n }\n }\n this.style.setProperty(\"--swipe-amount-x\", `${swipeAmountX}px`);\n this.style.setProperty(\"--swipe-amount-y\", `${swipeAmountY}px`);\n }\n onPointerUp(event) {\n if (!this.pointerStart) return;\n try {\n this.releasePointerCapture(event.pointerId);\n } catch {}\n const wasSwiping = this.swiping;\n this.swiping = false;\n if (!wasSwiping) {\n this.pointerStart = null;\n this.dragStartTime = null;\n this.swipeAxis = null;\n return;\n }\n const swipeAmountX = Number.parseFloat(this.style.getPropertyValue(\"--swipe-amount-x\") || \"0\");\n const swipeAmountY = Number.parseFloat(this.style.getPropertyValue(\"--swipe-amount-y\") || \"0\");\n const swipeAmount = this.swipeAxis === \"x\" ? swipeAmountX : swipeAmountY;\n const swipeTime = this.dragStartTime ? Date.now() - this.dragStartTime : 0;\n const velocity = Math.abs(swipeAmount) / Math.max(swipeTime, 1);\n const shouldDismiss = Math.abs(swipeAmount) >= TOAST_SWIPE_THRESHOLD || velocity > 0.11;\n if (shouldDismiss && this.dismissible) {\n const {\n y,\n x\n } = splitToastPosition(this.position);\n if (this.swipeAxis === \"x\") {\n this.swipeOutDirection = swipeAmountX < 0 ? \"left\" : \"right\";\n if (x === \"start\") this.swipeOutDirection = \"left\";\n if (x === \"end\") this.swipeOutDirection = \"right\";\n } else {\n this.swipeOutDirection = y === \"bottom\" ? \"down\" : \"up\";\n }\n this.swipeOut = true;\n this.syncDomState();\n this.beginRemove();\n } else {\n this.style.setProperty(\"--swipe-amount-x\", \"0px\");\n this.style.setProperty(\"--swipe-amount-y\", \"0px\");\n this.swipeAxis = null;\n this.syncDomState();\n }\n this.pointerStart = null;\n this.dragStartTime = null;\n }\n onCloseClick(event) {\n event.stopPropagation();\n if (!this.dismissible) return;\n this.beginRemove();\n }\n onActionClick(event) {\n event.stopPropagation();\n const record = toastState.getSnapshot().find(toast => toast.id === this.resolvedId);\n record?.action?.onClick(event);\n if (this.dismissible) this.beginRemove();\n }\n syncDomState() {\n const {\n y,\n x\n } = splitToastPosition(this.position);\n this.setAttribute(\"role\", \"listitem\");\n this.dataset.mounted = String(this.mounted);\n this.dataset.removed = String(this.removed);\n this.dataset.swiping = String(this.swiping);\n this.dataset.swipeOut = String(this.swipeOut);\n this.dataset.dismissible = String(this.dismissible);\n this.dataset.yPosition = y;\n this.dataset.xPosition = x;\n this.dataset.variant = this.variant ?? \"default\";\n if (this.swipeOutDirection) this.dataset.swipeDirection = this.swipeOutDirection;else delete this.dataset.swipeDirection;\n }\n iconForVariant() {\n switch (this.variant) {\n case \"success\":\n return \"\\u2713\";\n case \"error\":\n return \"\\u2715\";\n case \"warning\":\n return \"!\";\n case \"info\":\n return \"i\";\n default:\n return \"\";\n }\n }\n render() {\n const variant = this.variant ?? \"default\";\n const icon = this.iconForVariant();\n const showIcon = variant !== \"default\";\n return /* @__PURE__ */jsxs(\"div\", {\n ref: \"toast\",\n class: `rui-toast rui-toast--${variant}`,\n role: \"status\",\n \"aria-live\": \"off\",\n \"data-ref\": \"toast\",\n children: [this.closeButton && variant !== \"loading\" ? /* @__PURE__ */jsx(\"button\", {\n type: \"button\",\n class: \"rui-toast__close\",\n \"data-toast-close\": true,\n \"aria-label\": \"Close toast\",\n children: \"\\xD7\"\n }) : null, showIcon ? /* @__PURE__ */jsx(\"span\", {\n class: \"rui-toast__icon\",\n \"data-icon\": true,\n \"aria-hidden\": \"true\",\n children: variant === \"loading\" ? /* @__PURE__ */jsx(\"span\", {\n class: \"rui-toast__loader\"\n }) : icon\n }) : null, /* @__PURE__ */jsxs(\"div\", {\n class: \"rui-toast__content\",\n children: [/* @__PURE__ */jsx(\"div\", {\n class: \"rui-toast__title\",\n \"data-title\": true,\n children: this.$.title\n }), this.description ? /* @__PURE__ */jsx(\"div\", {\n class: \"rui-toast__description\",\n \"data-description\": true,\n children: this.$.description\n }) : null]\n }), this.actionLabel ? /* @__PURE__ */jsx(\"button\", {\n type: \"button\",\n class: \"rui-toast__action rui-button rui-button--outline rui-button--sm\",\n \"data-toast-action\": true,\n children: this.$.actionLabel\n }) : null]\n });\n }\n static {\n _initClass();\n }\n}\nexport { _RuiToast as RuiToast };", "export const RUI_TOAST_SHOW_EVENT = \"rui-toast-show\";\nexport const RUI_TOAST_DISMISS_EVENT = \"rui-toast-dismiss\";\nexport const TOAST_LIFETIME = 4e3;\nexport const TOAST_WIDTH = 356;\nexport const TOAST_GAP = 14;\nexport const TOAST_VIEWPORT_OFFSET = 24;\nexport const TOAST_VISIBLE_AMOUNT = 3;\nexport const TOAST_SWIPE_THRESHOLD = 45;\nexport const TOAST_EXIT_MS = 200;\nexport const DEFAULT_TOAST_POSITION = \"bottom-end\";\nexport function splitToastPosition(position) {\n const [y, x] = position.split(\"-\");\n return {\n y,\n x\n };\n}", "let toastCounter = 1;\nfunction nextId() {\n return toastCounter++;\n}\nfunction resolveMessage(message, value) {\n return typeof message === \"function\" ? message(value) : message;\n}\nclass ToastState {\n subscribers = [];\n toasts = [];\n subscribe = subscriber => {\n this.subscribers.push(subscriber);\n subscriber(this.toasts);\n return () => {\n const index = this.subscribers.indexOf(subscriber);\n if (index >= 0) this.subscribers.splice(index, 1);\n };\n };\n getSnapshot = () => this.toasts;\n publish() {\n const snapshot = this.toasts;\n for (const subscriber of this.subscribers) {\n subscriber(snapshot);\n }\n }\n create = (title, options = {}) => {\n const id = options.id ?? nextId();\n const dismissible = options.dismissible ?? true;\n const existingIndex = this.toasts.findIndex(toast => toast.id === id);\n const next = {\n id,\n title,\n description: options.description,\n variant: options.variant ?? \"default\",\n duration: options.duration,\n action: options.action,\n dismissible,\n closeButton: options.closeButton,\n position: options.position,\n delete: false\n };\n if (existingIndex >= 0) {\n this.toasts = this.toasts.map(toast => toast.id === id ? {\n ...toast,\n ...next,\n delete: false\n } : toast);\n } else {\n this.toasts = [next, ...this.toasts];\n }\n this.publish();\n return id;\n };\n dismiss = id => {\n if (id == null) {\n if (this.toasts.length === 0) return;\n this.toasts = this.toasts.map(toast => ({\n ...toast,\n delete: true\n }));\n } else {\n const target = this.toasts.find(toast => toast.id === id);\n if (!target || target.delete) return;\n this.toasts = this.toasts.map(toast => toast.id === id ? {\n ...toast,\n delete: true\n } : toast);\n }\n this.publish();\n };\n remove = id => {\n this.toasts = this.toasts.filter(toast => toast.id !== id);\n this.publish();\n };\n /** Drop every toast from the store (tests, Storybook resets). */\n clear = () => {\n if (this.toasts.length === 0) return;\n this.toasts = [];\n this.publish();\n };\n message = (title, options) => this.create(title, options);\n success = (title, options) => this.create(title, {\n ...options,\n variant: \"success\"\n });\n error = (title, options) => this.create(title, {\n ...options,\n variant: \"error\"\n });\n info = (title, options) => this.create(title, {\n ...options,\n variant: \"info\"\n });\n warning = (title, options) => this.create(title, {\n ...options,\n variant: \"warning\"\n });\n loading = (title, options) => this.create(title, {\n ...options,\n variant: \"loading\",\n duration: options?.duration ?? Number.POSITIVE_INFINITY\n });\n promise = (promise, messages) => {\n const id = this.loading(messages.loading, {\n duration: Number.POSITIVE_INFINITY,\n action: messages.action,\n closeButton: messages.closeButton,\n position: messages.position,\n description: typeof messages.description === \"string\" ? messages.description : void 0\n });\n const pending = typeof promise === \"function\" ? promise() : promise;\n pending.then(data => {\n const description = typeof messages.description === \"function\" ? messages.description(data) : messages.description;\n this.create(resolveMessage(messages.success, data), {\n id,\n variant: \"success\",\n description,\n duration: messages.duration,\n action: messages.action,\n closeButton: messages.closeButton,\n position: messages.position\n });\n }).catch(error => {\n const description = typeof messages.description === \"function\" ? messages.description(error) : messages.description;\n this.create(resolveMessage(messages.error, error), {\n id,\n variant: \"error\",\n description,\n duration: messages.duration,\n action: messages.action,\n closeButton: messages.closeButton,\n position: messages.position\n });\n });\n return id;\n };\n}\nexport const toastState = new ToastState();", "let _initProto, _initClass, _init_position, _init_extra_position, _init_duration, _init_extra_duration, _init_visibleToasts, _init_extra_visibleToasts, _init_closeButton, _init_extra_closeButton, _init_expand, _init_extra_expand, _init_gap, _init_extra_gap, _init_offset, _init_extra_offset, _init_toasts, _init_extra_toasts;\nfunction _applyDecs(e, t, n, r, o, i) { var a, c, u, s, f, l, p, d = Symbol.metadata || Symbol.for(\"Symbol.metadata\"), m = Object.defineProperty, h = Object.create, y = [h(null), h(null)], v = t.length; function g(t, n, r) { return function (o, i) { n && (i = o, o = e); for (var a = 0; a < t.length; a++) i = t[a].apply(o, r ? [i] : []); return r ? i : o; }; } function b(e, t, n, r) { if (\"function\" != typeof e && (r || void 0 !== e)) throw new TypeError(t + \" must \" + (n || \"be\") + \" a function\" + (r ? \"\" : \" or undefined\")); return e; } function applyDec(e, t, n, r, o, i, u, s, f, l, p) { function d(e) { if (!p(e)) throw new TypeError(\"Attempted to access private element on non-instance\"); } var h = [].concat(t[0]), v = t[3], w = !u, D = 1 === o, S = 3 === o, j = 4 === o, E = 2 === o; function I(t, n, r) { return function (o, i) { return n && (i = o, o = e), r && r(o), P[t].call(o, i); }; } if (!w) { var P = {}, k = [], F = S ? \"get\" : j || D ? \"set\" : \"value\"; if (f ? (l || D ? P = { get: _setFunctionName(function () { return v(this); }, r, \"get\"), set: function (e) { t[4](this, e); } } : P[F] = v, l || _setFunctionName(P[F], r, E ? \"\" : F)) : l || (P = Object.getOwnPropertyDescriptor(e, r)), !l && !f) { if ((c = y[+s][r]) && 7 !== (c ^ o)) throw Error(\"Decorating two elements with the same name (\" + P[F].name + \") is not supported yet\"); y[+s][r] = o < 3 ? 1 : o; } } for (var N = e, O = h.length - 1; O >= 0; O -= n ? 2 : 1) { var T = b(h[O], \"A decorator\", \"be\", !0), z = n ? h[O - 1] : void 0, A = {}, H = { kind: [\"field\", \"accessor\", \"method\", \"getter\", \"setter\", \"class\"][o], name: r, metadata: a, addInitializer: function (e, t) { if (e.v) throw new TypeError(\"attempted to call addInitializer after decoration was finished\"); b(t, \"An initializer\", \"be\", !0), i.push(t); }.bind(null, A) }; if (w) c = T.call(z, N, H), A.v = 1, b(c, \"class decorators\", \"return\") && (N = c);else if (H.static = s, H.private = f, c = H.access = { has: f ? p.bind() : function (e) { return r in e; } }, j || (c.get = f ? E ? function (e) { return d(e), P.value; } : I(\"get\", 0, d) : function (e) { return e[r]; }), E || S || (c.set = f ? I(\"set\", 0, d) : function (e, t) { e[r] = t; }), N = T.call(z, D ? { get: P.get, set: P.set } : P[F], H), A.v = 1, D) { if (\"object\" == typeof N && N) (c = b(N.get, \"accessor.get\")) && (P.get = c), (c = b(N.set, \"accessor.set\")) && (P.set = c), (c = b(N.init, \"accessor.init\")) && k.unshift(c);else if (void 0 !== N) throw new TypeError(\"accessor decorators must return an object with get, set, or init properties or undefined\"); } else b(N, (l ? \"field\" : \"method\") + \" decorators\", \"return\") && (l ? k.unshift(N) : P[F] = N); } return o < 2 && u.push(g(k, s, 1), g(i, s, 0)), l || w || (f ? D ? u.splice(-1, 0, I(\"get\", s), I(\"set\", s)) : u.push(E ? P[F] : b.call.bind(P[F])) : m(e, r, P)), N; } function w(e) { return m(e, d, { configurable: !0, enumerable: !0, value: a }); } return void 0 !== i && (a = i[d]), a = h(null == a ? null : a), f = [], l = function (e) { e && f.push(g(e)); }, p = function (t, r) { for (var i = 0; i < n.length; i++) { var a = n[i], c = a[1], l = 7 & c; if ((8 & c) == t && !l == r) { var p = a[2], d = !!a[3], m = 16 & c; applyDec(t ? e : e.prototype, a, m, d ? \"#\" + p : _toPropertyKey(p), l, l < 2 ? [] : t ? s = s || [] : u = u || [], f, !!t, d, r, t && d ? function (t) { return _checkInRHS(t) === e; } : o); } } }, p(8, 0), p(0, 0), p(8, 1), p(0, 1), l(u), l(s), c = f, v || w(e), { e: c, get c() { var n = []; return v && [w(e = applyDec(e, [t], r, e.name, 5, n)), g(n, 1)]; } }; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nfunction _setFunctionName(e, t, n) { \"symbol\" == typeof t && (t = (t = t.description) ? \"[\" + t + \"]\" : \"\"); try { Object.defineProperty(e, \"name\", { configurable: !0, value: n ? n + \" \" + t : t }); } catch (e) {} return e; }\nfunction _checkInRHS(e) { if (Object(e) !== e) throw TypeError(\"right-hand side of 'in' should be an object, got \" + (null !== e ? typeof e : \"null\")); return e; }\nimport { jsx } from \"@ecopages/jsx/jsx-runtime\";\nimport { RadiantElement, bound, customElement, onEvent, onUpdated, prop, state } from \"@ecopages/radiant\";\nimport { DEFAULT_TOAST_POSITION, RUI_TOAST_DISMISS_EVENT, RUI_TOAST_SHOW_EVENT, TOAST_GAP, TOAST_LIFETIME, TOAST_VIEWPORT_OFFSET, TOAST_VISIBLE_AMOUNT, TOAST_WIDTH, splitToastPosition } from \"./toast-context\";\nimport { toastState } from \"./toast-state\";\nimport \"./toast.script\";\nfunction isInsideToaster(node, root) {\n return node instanceof Node && root.contains(node);\n}\nlet _RuiToaster;\nclass RuiToaster extends RadiantElement {\n static {\n ({\n e: [_init_position, _init_extra_position, _init_duration, _init_extra_duration, _init_visibleToasts, _init_extra_visibleToasts, _init_closeButton, _init_extra_closeButton, _init_expand, _init_extra_expand, _init_gap, _init_extra_gap, _init_offset, _init_extra_offset, _init_toasts, _init_extra_toasts, _initProto],\n c: [_RuiToaster, _initClass]\n } = _applyDecs(this, [customElement(\"rui-toaster\")], [[prop({\n type: String,\n reflect: true,\n defaultValue: DEFAULT_TOAST_POSITION\n }), 0, \"position\"], [prop({\n type: Number,\n defaultValue: TOAST_LIFETIME\n }), 0, \"duration\"], [prop({\n type: Number,\n defaultValue: TOAST_VISIBLE_AMOUNT\n }), 0, \"visibleToasts\"], [prop({\n type: Boolean,\n defaultValue: false\n }), 0, \"closeButton\"], [prop({\n type: Boolean,\n defaultValue: false\n }), 0, \"expand\"], [prop({\n type: Number,\n defaultValue: TOAST_GAP\n }), 0, \"gap\"], [prop({\n type: Number,\n defaultValue: TOAST_VIEWPORT_OFFSET\n }), 0, \"offset\"], [state, 0, \"toasts\"], [onUpdated([\"position\", \"duration\", \"visibleToasts\", \"closeButton\", \"expand\", \"gap\", \"offset\"]), 2, \"onConfigUpdated\"], [onEvent({\n document: true,\n type: RUI_TOAST_SHOW_EVENT\n }), 2, \"onDocumentShow\"], [onEvent({\n document: true,\n type: RUI_TOAST_DISMISS_EVENT\n }), 2, \"onDocumentDismiss\"], [onEvent({\n selector: \"rui-toast\",\n type: \"rui-toast-mounted\"\n }), 2, \"onToastMounted\"], [bound, 2, \"onPointerOver\"], [bound, 2, \"onPointerOut\"], [bound, 2, \"onPointerDown\"], [bound, 2, \"onPointerUp\"]], 0, void 0, RadiantElement));\n }\n position = (_initProto(this), _init_position(this));\n duration = (_init_extra_position(this), _init_duration(this));\n visibleToasts = (_init_extra_duration(this), _init_visibleToasts(this));\n closeButton = (_init_extra_visibleToasts(this), _init_closeButton(this));\n expand = (_init_extra_closeButton(this), _init_expand(this));\n gap = (_init_extra_expand(this), _init_gap(this));\n offset = (_init_extra_gap(this), _init_offset(this));\n toasts = (_init_extra_offset(this), _init_toasts(this, []));\n expanded = (_init_extra_toasts(this), false);\n interacting = false;\n unsubscribe = null;\n visibilityHandler = null;\n heights = /* @__PURE__ */new Map();\n observers = /* @__PURE__ */new Map();\n layoutFrame = null;\n connectedCallback() {\n super.connectedCallback();\n this.syncHostPosition();\n this.unsubscribe = toastState.subscribe(toasts => {\n this.toasts = toasts;\n if (toasts.length === 0) {\n this.resetLayoutState();\n }\n this.scheduleLayoutSync();\n });\n this.visibilityHandler = () => this.syncPauseState();\n document.addEventListener(\"visibilitychange\", this.visibilityHandler);\n }\n disconnectedCallback() {\n this.unsubscribe?.();\n this.unsubscribe = null;\n if (this.visibilityHandler) {\n document.removeEventListener(\"visibilitychange\", this.visibilityHandler);\n this.visibilityHandler = null;\n }\n document.removeEventListener(\"pointerup\", this.onPointerUp);\n document.removeEventListener(\"pointercancel\", this.onPointerUp);\n if (this.layoutFrame != null) cancelAnimationFrame(this.layoutFrame);\n this.resetLayoutState();\n super.disconnectedCallback();\n }\n onConfigUpdated() {\n this.syncHostPosition();\n this.scheduleLayoutSync();\n }\n onDocumentShow(event) {\n const detail = event.detail;\n if (!detail?.title) return;\n toastState.create(detail.title, {\n id: detail.id,\n description: detail.description,\n variant: detail.variant,\n duration: detail.duration,\n action: detail.action,\n dismissible: detail.dismissible,\n closeButton: detail.closeButton,\n position: detail.position\n });\n }\n onDocumentDismiss(event) {\n const detail = event.detail;\n toastState.dismiss(detail?.id);\n }\n onToastMounted() {\n this.observeToasts();\n this.syncPauseState();\n }\n filteredToasts() {\n const forPosition = this.toasts.filter(toast => (toast.position ?? this.position) === this.position);\n const active = [];\n const exiting = [];\n for (const toast of forPosition) {\n if (toast.delete) exiting.push(toast);else active.push(toast);\n }\n return [...active.slice(0, this.visibleToasts), ...exiting];\n }\n syncHostPosition() {\n const {\n y,\n x\n } = splitToastPosition(this.position);\n this.dataset.yPosition = y;\n this.dataset.xPosition = x;\n this.style.setProperty(\"--width\", `${TOAST_WIDTH}px`);\n this.style.setProperty(\"--gap\", `${this.gap}px`);\n this.style.setProperty(\"--viewport-offset\", `${this.offset}px`);\n }\n isStackExpanded() {\n return this.expanded || this.expand;\n }\n isPaused() {\n return this.isStackExpanded() || this.interacting || document.hidden;\n }\n resetLayoutState() {\n for (const observer of this.observers.values()) observer.disconnect();\n this.observers.clear();\n this.heights.clear();\n this.expanded = false;\n this.interacting = false;\n const list = this.querySelector(\".rui-toaster\");\n if (list) {\n list.style.height = \"0px\";\n list.dataset.expanded = \"false\";\n }\n this.dataset.expanded = \"false\";\n }\n syncPauseState() {\n const paused = this.isPaused();\n for (const el of this.querySelectorAll(\"rui-toast\")) {\n el.setPaused(paused);\n }\n this.patchStackLayout();\n }\n /**\n * Measure + layout on the next frame. Re-reads `:hover` because emptying the\n * stack under the cursor can skip `pointerout`, leaving hold/expand stale.\n */\n scheduleLayoutSync() {\n if (this.layoutFrame != null) cancelAnimationFrame(this.layoutFrame);\n this.layoutFrame = requestAnimationFrame(() => {\n this.layoutFrame = null;\n if (this.toasts.length > 0 && !this.interacting) {\n const list = this.querySelector(\".rui-toaster\");\n const hovered = Boolean(list?.matches(\":hover\") || this.matches(\":hover\"));\n this.expanded = hovered;\n }\n this.observeToasts();\n this.syncPauseState();\n });\n }\n measureToast(el) {\n const prevHeight = el.style.height;\n const prevOverflow = el.style.overflow;\n el.style.height = \"auto\";\n el.style.overflow = \"visible\";\n const inner = el.querySelector(\".rui-toast\");\n const height = Math.round(inner instanceof HTMLElement ? inner.offsetHeight : el.offsetHeight) || 64;\n el.style.height = prevHeight;\n el.style.overflow = prevOverflow;\n return height;\n }\n observeToasts() {\n const list = this.querySelector(\".rui-toaster\");\n if (!list) return;\n const els = [...list.querySelectorAll(\"rui-toast\")];\n const seen = /* @__PURE__ */new Set();\n for (const el of els) {\n const id = el.toastId;\n if (!id) continue;\n seen.add(id);\n const target = el.querySelector(\".rui-toast\") ?? el;\n if (!this.observers.has(id)) {\n const observer = new ResizeObserver(() => {\n const height = this.measureToast(el);\n if (this.heights.get(id) === height) return;\n this.heights.set(id, height);\n this.patchStackLayout();\n });\n observer.observe(target);\n this.observers.set(id, observer);\n }\n this.heights.set(id, this.measureToast(el));\n }\n for (const [id, observer] of [...this.observers]) {\n if (seen.has(id)) continue;\n observer.disconnect();\n this.observers.delete(id);\n this.heights.delete(id);\n }\n }\n patchStackLayout() {\n const list = this.querySelector(\".rui-toaster\");\n if (!list) return;\n const expanded = this.isStackExpanded();\n const {\n y\n } = splitToastPosition(this.position);\n const lift = y === \"bottom\" ? -1 : 1;\n this.dataset.expanded = String(expanded);\n list.dataset.expanded = String(expanded);\n const els = [...list.querySelectorAll(\"rui-toast\")].filter(el => el.dataset.mounted === \"true\" && el.dataset.removed !== \"true\");\n if (els.length === 0) {\n list.style.height = \"0px\";\n return;\n }\n const heights = els.map(el => {\n const measured = this.heights.get(el.toastId) ?? this.measureToast(el);\n this.heights.set(el.toastId, measured);\n return measured;\n });\n const frontHeight = heights[0] ?? 64;\n let accumulated = 0;\n for (let index = 0; index < els.length; index += 1) {\n const el = els[index];\n if (!el) continue;\n const height = heights[index] ?? 64;\n const isFront = index === 0;\n el.dataset.index = String(index);\n el.dataset.front = String(isFront);\n el.dataset.expanded = String(expanded);\n el.style.setProperty(\"--z-index\", String(els.length - index));\n if (expanded) {\n el.style.setProperty(\"--y\", `translateY(${lift * accumulated}px)`);\n el.style.height = `${height}px`;\n el.style.overflow = \"visible\";\n accumulated += height + this.gap;\n } else if (isFront) {\n el.style.setProperty(\"--y\", \"translateY(0px)\");\n el.style.height = `${height}px`;\n el.style.overflow = \"visible\";\n } else {\n const scale = Math.max(0.7, 1 - index * 0.05);\n el.style.setProperty(\"--y\", `translateY(${lift * index * this.gap}px) scale(${scale})`);\n el.style.height = `${frontHeight}px`;\n el.style.overflow = \"hidden\";\n }\n }\n const stackHeight = expanded ? Math.max(0, accumulated > 0 ? accumulated - this.gap : frontHeight) : frontHeight + Math.max(0, els.length - 1) * this.gap;\n list.style.height = `${stackHeight}px`;\n }\n onPointerOver(event) {\n if (isInsideToaster(event.relatedTarget, this)) return;\n this.expanded = true;\n this.syncPauseState();\n }\n onPointerOut(event) {\n if (isInsideToaster(event.relatedTarget, this)) return;\n if (this.interacting) return;\n this.expanded = false;\n this.syncPauseState();\n }\n onPointerDown() {\n this.interacting = true;\n this.expanded = true;\n this.syncPauseState();\n document.addEventListener(\"pointerup\", this.onPointerUp, {\n once: true\n });\n document.addEventListener(\"pointercancel\", this.onPointerUp, {\n once: true\n });\n }\n onPointerUp() {\n if (!this.interacting) return;\n this.interacting = false;\n const hovered = this.matches(\":hover\") || this.querySelector(\"rui-toast:hover\");\n if (!hovered) this.expanded = false;\n this.syncPauseState();\n }\n render() {\n const filtered = this.filteredToasts();\n return /* @__PURE__ */jsx(\"section\", {\n class: \"rui-toaster-region\",\n \"aria-label\": \"Notifications\",\n \"aria-live\": \"polite\",\n \"aria-relevant\": \"additions text\",\n \"aria-atomic\": \"false\",\n tabIndex: -1,\n children: /* @__PURE__ */jsx(\"ol\", {\n class: \"rui-toaster\",\n \"data-rui-toaster\": true,\n \"on:pointerover\": this.onPointerOver,\n \"on:pointerout\": this.onPointerOut,\n \"on:pointerdown\": this.onPointerDown,\n children: filtered.map(toast => {\n const duration = toast.duration ?? (toast.variant === \"loading\" ? Number.POSITIVE_INFINITY : this.duration);\n return /* @__PURE__ */jsx(\"rui-toast\", {\n \"prop:toastId\": String(toast.id),\n \"prop:title\": toast.title,\n \"prop:description\": toast.description ?? \"\",\n \"prop:variant\": toast.variant,\n \"prop:duration\": duration,\n \"prop:dismissible\": toast.dismissible,\n \"prop:closeButton\": toast.closeButton ?? this.closeButton,\n \"prop:actionLabel\": toast.action?.label ?? \"\",\n \"prop:position\": toast.position ?? this.position,\n \"prop:markedDelete\": Boolean(toast.delete)\n }, String(toast.id));\n })\n })\n });\n }\n static {\n _initClass();\n }\n}\nexport { _RuiToaster as RuiToaster };", "import { jsx } from \"@ecopages/jsx/jsx-runtime\";\nimport { defineRadiantView } from \"@/lib/radiant-view\";\nimport { RuiToast as RuiToastElement } from \"./toast.script\";\nimport { RuiToaster as RuiToasterElement } from \"./toaster.script\";\nexport const RuiToast = defineRadiantView(RuiToastElement, ({\n toastId,\n title,\n description,\n variant,\n duration,\n dismissible,\n closeButton,\n actionLabel,\n position,\n markedDelete,\n ...props\n}) => /* @__PURE__ */jsx(\"rui-toast\", {\n ...props,\n \"prop:toastId\": toastId != null ? String(toastId) : void 0,\n \"prop:title\": title,\n \"prop:description\": description,\n \"prop:variant\": variant,\n \"prop:duration\": duration,\n \"prop:dismissible\": dismissible,\n \"prop:closeButton\": closeButton,\n \"prop:actionLabel\": actionLabel,\n \"prop:position\": position,\n \"prop:markedDelete\": markedDelete\n}), {\n stylesheets: [\"./toast.css\"]\n});\nexport const RuiToaster = defineRadiantView(RuiToasterElement, ({\n children,\n position,\n duration,\n visibleToasts,\n closeButton,\n expand,\n gap,\n offset,\n ...props\n}) => /* @__PURE__ */jsx(\"rui-toaster\", {\n ...props,\n \"prop:position\": position,\n \"prop:duration\": duration,\n \"prop:visibleToasts\": visibleToasts,\n \"prop:closeButton\": closeButton,\n \"prop:expand\": expand,\n \"prop:gap\": gap,\n \"prop:offset\": offset,\n children\n}), {\n stylesheets: [\"./toast.css\"]\n});", "const RADIANT_VIEW_ELEMENT = /* @__PURE__ */Symbol.for(\"@ecopages/storybook-radiant.viewElement\");\nconst RADIANT_SCRIPT_MODULE = /* @__PURE__ */Symbol.for(\"@ecopages/storybook-radiant.scriptModule\");\nconst RADIANT_SCRIPT_EXPORT = /* @__PURE__ */Symbol.for(\"@ecopages/storybook-radiant.scriptExport\");\nconst RADIANT_VIEW_MODULE = /* @__PURE__ */Symbol.for(\"@ecopages/storybook-radiant.viewModule\");\nfunction linkViewToElement(view, element) {\n view[RADIANT_VIEW_ELEMENT] = element;\n const ssrModule = element[RADIANT_SCRIPT_MODULE];\n if (ssrModule) {\n view[RADIANT_SCRIPT_MODULE] = ssrModule;\n view[RADIANT_SCRIPT_EXPORT] = element[RADIANT_SCRIPT_EXPORT] ?? element.name;\n }\n}\nexport function defineRadiantView(element, render, _options) {\n const view = args => render(args);\n linkViewToElement(view, element);\n return view;\n}\nexport function attachRadiantStylesheets(target, _stylesheets, moduleUrl) {\n const view = target;\n view[RADIANT_VIEW_MODULE] = moduleUrl;\n return target;\n}\nexport function syncRadiantViewMetadata(view) {\n const element = view[RADIANT_VIEW_ELEMENT];\n if (element) {\n linkViewToElement(view, element);\n }\n}", "import { RUI_TOAST_DISMISS_EVENT, RUI_TOAST_SHOW_EVENT } from \"./toast-context\";\nimport { toastState } from \"./toast-state\";\nexport const toast = Object.assign((title, options) => toastState.create(title, options), {\n message: (title, options) => toastState.message(title, options),\n success: (title, options) => toastState.success(title, options),\n error: (title, options) => toastState.error(title, options),\n info: (title, options) => toastState.info(title, options),\n warning: (title, options) => toastState.warning(title, options),\n loading: (title, options) => toastState.loading(title, options),\n promise: (promise, messages) => toastState.promise(promise, messages),\n dismiss: id => toastState.dismiss(id),\n clear: () => toastState.clear()\n});\nexport function showToast(detail) {\n document.dispatchEvent(new CustomEvent(RUI_TOAST_SHOW_EVENT, {\n detail,\n bubbles: true,\n composed: true\n }));\n}\nexport function dismissToast(id) {\n const detail = id == null ? {} : {\n id\n };\n document.dispatchEvent(new CustomEvent(RUI_TOAST_DISMISS_EVENT, {\n detail,\n bubbles: true,\n composed: true\n }));\n}"],
5
- "mappings": "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",
6
- "names": ["jsx", "jsxs", "RadiantElement", "bound", "customElement", "onEvent", "onUpdated", "prop", "query", "RUI_TOAST_SHOW_EVENT", "RUI_TOAST_DISMISS_EVENT", "TOAST_LIFETIME", "TOAST_WIDTH", "TOAST_GAP", "TOAST_VIEWPORT_OFFSET", "TOAST_VISIBLE_AMOUNT", "TOAST_SWIPE_THRESHOLD", "TOAST_EXIT_MS", "DEFAULT_TOAST_POSITION", "splitToastPosition", "position", "y", "x", "toastCounter", "nextId", "resolveMessage", "message", "value", "ToastState", "subscriber", "index", "snapshot", "title", "options", "id", "dismissible", "existingIndex", "toast", "next", "target", "promise", "messages", "data", "description", "error", "toastState", "_initProto", "_initClass", "_init_toastId", "_init_extra_toastId", "_init_title", "_init_extra_title", "_init_description", "_init_extra_description", "_init_variant", "_init_extra_variant", "_init_duration", "_init_extra_duration", "_init_dismissible", "_init_extra_dismissible", "_init_closeButton", "_init_extra_closeButton", "_init_actionLabel", "_init_extra_actionLabel", "_init_position", "_init_extra_position", "_init_markedDelete", "_init_extra_markedDelete", "_init_toastTarget", "_init_extra_toastTarget", "_applyDecs", "e", "n", "r", "o", "i", "a", "c", "u", "s", "f", "l", "p", "d", "m", "h", "y", "v", "g", "t", "b", "applyDec", "w", "S", "j", "E", "I", "P", "k", "F", "_setFunctionName", "N", "O", "T", "z", "A", "H", "_toPropertyKey", "_checkInRHS", "_toPrimitive", "_RuiToast", "RuiToast", "RadiantElement", "customElement", "prop", "DEFAULT_TOAST_POSITION", "query", "onUpdated", "bound", "onEvent", "isReconnect", "id", "toastState", "paused", "raw", "asNumber", "event", "x", "splitToastPosition", "deltaX", "deltaY", "swipeAmountX", "swipeAmountY", "towardExit", "wasSwiping", "swipeAmount", "swipeTime", "velocity", "toast", "variant", "icon", "showIcon", "jsxs", "jsx", "jsx", "RadiantElement", "bound", "customElement", "onEvent", "onUpdated", "prop", "state", "_initProto", "_initClass", "_init_position", "_init_extra_position", "_init_duration", "_init_extra_duration", "_init_visibleToasts", "_init_extra_visibleToasts", "_init_closeButton", "_init_extra_closeButton", "_init_expand", "_init_extra_expand", "_init_gap", "_init_extra_gap", "_init_offset", "_init_extra_offset", "_init_toasts", "_init_extra_toasts", "_applyDecs", "e", "n", "r", "o", "i", "a", "c", "u", "s", "f", "l", "p", "d", "m", "h", "y", "v", "g", "t", "b", "applyDec", "w", "S", "j", "E", "I", "P", "k", "F", "_setFunctionName", "N", "O", "T", "z", "A", "H", "_toPropertyKey", "_checkInRHS", "_toPrimitive", "isInsideToaster", "node", "root", "_RuiToaster", "RuiToaster", "RadiantElement", "customElement", "prop", "DEFAULT_TOAST_POSITION", "state", "onUpdated", "onEvent", "RUI_TOAST_SHOW_EVENT", "RUI_TOAST_DISMISS_EVENT", "bound", "toastState", "toasts", "event", "detail", "forPosition", "toast", "active", "exiting", "x", "splitToastPosition", "observer", "list", "paused", "el", "hovered", "prevHeight", "prevOverflow", "inner", "height", "els", "seen", "id", "target", "expanded", "lift", "heights", "measured", "frontHeight", "accumulated", "index", "isFront", "scale", "stackHeight", "filtered", "jsx", "duration", "jsx", "RADIANT_VIEW_ELEMENT", "RADIANT_SCRIPT_MODULE", "RADIANT_SCRIPT_EXPORT", "linkViewToElement", "view", "element", "RADIANT_VIEW_ELEMENT", "ssrModule", "RADIANT_SCRIPT_MODULE", "RADIANT_SCRIPT_EXPORT", "defineRadiantView", "render", "_options", "args", "RuiToast", "defineRadiantView", "_RuiToast", "toastId", "title", "description", "variant", "duration", "dismissible", "closeButton", "actionLabel", "position", "markedDelete", "props", "jsx", "RuiToaster", "_RuiToaster", "children", "visibleToasts", "expand", "gap", "offset", "toast", "title", "options", "toastState", "promise", "messages", "id", "showToast", "detail", "RUI_TOAST_SHOW_EVENT", "dismissToast", "RUI_TOAST_DISMISS_EVENT"]
3
+ "sources": ["../../../../src/components/ui/toast/toast.script.tsx", "../../../../src/components/ui/toast/toast-context.ts", "../../../../src/components/ui/toast/toast-state.ts", "../../../../src/components/ui/toast/toaster.script.tsx", "../../../../src/components/ui/toast/stack-layout.ts", "../../../../src/components/ui/toast/toast.tsx", "../../../../src/components/ui/toast/toast-api.ts"],
4
+ "sourcesContent": ["let _initProto, _initClass, _init_toastId, _init_extra_toastId, _init_title, _init_extra_title, _init_description, _init_extra_description, _init_variant, _init_extra_variant, _init_duration, _init_extra_duration, _init_dismissible, _init_extra_dismissible, _init_closeButton, _init_extra_closeButton, _init_actionLabel, _init_extra_actionLabel, _init_position, _init_extra_position, _init_markedDelete, _init_extra_markedDelete, _init_toastTarget, _init_extra_toastTarget;\nfunction _applyDecs(e, t, n, r, o, i) { var a, c, u, s, f, l, p, d = Symbol.metadata || Symbol.for(\"Symbol.metadata\"), m = Object.defineProperty, h = Object.create, y = [h(null), h(null)], v = t.length; function g(t, n, r) { return function (o, i) { n && (i = o, o = e); for (var a = 0; a < t.length; a++) i = t[a].apply(o, r ? [i] : []); return r ? i : o; }; } function b(e, t, n, r) { if (\"function\" != typeof e && (r || void 0 !== e)) throw new TypeError(t + \" must \" + (n || \"be\") + \" a function\" + (r ? \"\" : \" or undefined\")); return e; } function applyDec(e, t, n, r, o, i, u, s, f, l, p) { function d(e) { if (!p(e)) throw new TypeError(\"Attempted to access private element on non-instance\"); } var h = [].concat(t[0]), v = t[3], w = !u, D = 1 === o, S = 3 === o, j = 4 === o, E = 2 === o; function I(t, n, r) { return function (o, i) { return n && (i = o, o = e), r && r(o), P[t].call(o, i); }; } if (!w) { var P = {}, k = [], F = S ? \"get\" : j || D ? \"set\" : \"value\"; if (f ? (l || D ? P = { get: _setFunctionName(function () { return v(this); }, r, \"get\"), set: function (e) { t[4](this, e); } } : P[F] = v, l || _setFunctionName(P[F], r, E ? \"\" : F)) : l || (P = Object.getOwnPropertyDescriptor(e, r)), !l && !f) { if ((c = y[+s][r]) && 7 !== (c ^ o)) throw Error(\"Decorating two elements with the same name (\" + P[F].name + \") is not supported yet\"); y[+s][r] = o < 3 ? 1 : o; } } for (var N = e, O = h.length - 1; O >= 0; O -= n ? 2 : 1) { var T = b(h[O], \"A decorator\", \"be\", !0), z = n ? h[O - 1] : void 0, A = {}, H = { kind: [\"field\", \"accessor\", \"method\", \"getter\", \"setter\", \"class\"][o], name: r, metadata: a, addInitializer: function (e, t) { if (e.v) throw new TypeError(\"attempted to call addInitializer after decoration was finished\"); b(t, \"An initializer\", \"be\", !0), i.push(t); }.bind(null, A) }; if (w) c = T.call(z, N, H), A.v = 1, b(c, \"class decorators\", \"return\") && (N = c);else if (H.static = s, H.private = f, c = H.access = { has: f ? p.bind() : function (e) { return r in e; } }, j || (c.get = f ? E ? function (e) { return d(e), P.value; } : I(\"get\", 0, d) : function (e) { return e[r]; }), E || S || (c.set = f ? I(\"set\", 0, d) : function (e, t) { e[r] = t; }), N = T.call(z, D ? { get: P.get, set: P.set } : P[F], H), A.v = 1, D) { if (\"object\" == typeof N && N) (c = b(N.get, \"accessor.get\")) && (P.get = c), (c = b(N.set, \"accessor.set\")) && (P.set = c), (c = b(N.init, \"accessor.init\")) && k.unshift(c);else if (void 0 !== N) throw new TypeError(\"accessor decorators must return an object with get, set, or init properties or undefined\"); } else b(N, (l ? \"field\" : \"method\") + \" decorators\", \"return\") && (l ? k.unshift(N) : P[F] = N); } return o < 2 && u.push(g(k, s, 1), g(i, s, 0)), l || w || (f ? D ? u.splice(-1, 0, I(\"get\", s), I(\"set\", s)) : u.push(E ? P[F] : b.call.bind(P[F])) : m(e, r, P)), N; } function w(e) { return m(e, d, { configurable: !0, enumerable: !0, value: a }); } return void 0 !== i && (a = i[d]), a = h(null == a ? null : a), f = [], l = function (e) { e && f.push(g(e)); }, p = function (t, r) { for (var i = 0; i < n.length; i++) { var a = n[i], c = a[1], l = 7 & c; if ((8 & c) == t && !l == r) { var p = a[2], d = !!a[3], m = 16 & c; applyDec(t ? e : e.prototype, a, m, d ? \"#\" + p : _toPropertyKey(p), l, l < 2 ? [] : t ? s = s || [] : u = u || [], f, !!t, d, r, t && d ? function (t) { return _checkInRHS(t) === e; } : o); } } }, p(8, 0), p(0, 0), p(8, 1), p(0, 1), l(u), l(s), c = f, v || w(e), { e: c, get c() { var n = []; return v && [w(e = applyDec(e, [t], r, e.name, 5, n)), g(n, 1)]; } }; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nfunction _setFunctionName(e, t, n) { \"symbol\" == typeof t && (t = (t = t.description) ? \"[\" + t + \"]\" : \"\"); try { Object.defineProperty(e, \"name\", { configurable: !0, value: n ? n + \" \" + t : t }); } catch (e) {} return e; }\nfunction _checkInRHS(e) { if (Object(e) !== e) throw TypeError(\"right-hand side of 'in' should be an object, got \" + (null !== e ? typeof e : \"null\")); return e; }\nimport { jsx, jsxs } from \"@ecopages/jsx/jsx-runtime\";\nimport { RadiantElement, bound, customElement, onEvent, onUpdated, prop, query } from \"@ecopages/radiant\";\nimport { DEFAULT_TOAST_POSITION, TOAST_EXIT_MS, TOAST_LIFETIME, TOAST_SWIPE_THRESHOLD, splitToastPosition } from \"./toast-context\";\nimport { toastState } from \"./toast-state\";\nconst toastDeadlines = /* @__PURE__ */new Map();\nconst toastRemainingMs = /* @__PURE__ */new Map();\nfunction deadlineKey(id) {\n return String(id);\n}\nfunction clearToastDeadline(id) {\n if (id === \"\") return;\n const key = deadlineKey(id);\n toastDeadlines.delete(key);\n toastRemainingMs.delete(key);\n}\nexport function resetToastDeadlines() {\n toastDeadlines.clear();\n toastRemainingMs.clear();\n}\nfunction freezeToastDeadline(id) {\n if (id === \"\") return;\n const key = deadlineKey(id);\n const deadline = toastDeadlines.get(key);\n if (deadline == null) return;\n toastRemainingMs.set(key, Math.max(0, deadline - Date.now()));\n toastDeadlines.delete(key);\n}\nlet _RuiToast;\nclass RuiToast extends RadiantElement {\n static {\n ({\n e: [_init_toastId, _init_extra_toastId, _init_title, _init_extra_title, _init_description, _init_extra_description, _init_variant, _init_extra_variant, _init_duration, _init_extra_duration, _init_dismissible, _init_extra_dismissible, _init_closeButton, _init_extra_closeButton, _init_actionLabel, _init_extra_actionLabel, _init_position, _init_extra_position, _init_markedDelete, _init_extra_markedDelete, _init_toastTarget, _init_extra_toastTarget, _initProto],\n c: [_RuiToast, _initClass]\n } = _applyDecs(this, [customElement(\"rui-toast\")], [[prop({\n type: String,\n reflect: true,\n defaultValue: \"\"\n }), 0, \"toastId\"], [prop({\n type: String,\n defaultValue: \"\"\n }), 0, \"title\"], [prop({\n type: String,\n defaultValue: \"\"\n }), 0, \"description\"], [prop({\n type: String,\n reflect: true,\n defaultValue: \"default\"\n }), 0, \"variant\"], [prop({\n type: Number,\n defaultValue: TOAST_LIFETIME\n }), 0, \"duration\"], [prop({\n type: Boolean,\n defaultValue: true\n }), 0, \"dismissible\"], [prop({\n type: Boolean,\n defaultValue: false\n }), 0, \"closeButton\"], [prop({\n type: String,\n defaultValue: \"\"\n }), 0, \"actionLabel\"], [prop({\n type: String,\n defaultValue: DEFAULT_TOAST_POSITION\n }), 0, \"position\"], [prop({\n type: Boolean,\n defaultValue: false\n }), 0, \"markedDelete\"], [query({\n ref: \"toast\"\n }), 0, \"toastTarget\"], [onUpdated([\"title\", \"description\", \"variant\", \"actionLabel\", \"closeButton\"]), 2, \"onContentUpdated\"], [onUpdated(\"position\"), 2, \"onPositionUpdated\"], [onUpdated(\"duration\"), 2, \"onDurationUpdated\"], [onUpdated(\"markedDelete\"), 2, \"onMarkedDeleteUpdated\"], [bound, 2, \"onPointerDown\"], [bound, 2, \"onPointerMove\"], [bound, 2, \"onPointerUp\"], [onEvent({\n selector: \"[data-toast-close]\",\n type: \"click\"\n }), 2, \"onCloseClick\"], [onEvent({\n selector: \"[data-toast-action]\",\n type: \"click\"\n }), 2, \"onActionClick\"]], 0, void 0, RadiantElement));\n }\n toastId = (_initProto(this), _init_toastId(this));\n title = (_init_extra_toastId(this), _init_title(this));\n description = (_init_extra_title(this), _init_description(this));\n variant = (_init_extra_description(this), _init_variant(this));\n duration = (_init_extra_variant(this), _init_duration(this));\n dismissible = (_init_extra_duration(this), _init_dismissible(this));\n closeButton = (_init_extra_dismissible(this), _init_closeButton(this));\n actionLabel = (_init_extra_closeButton(this), _init_actionLabel(this));\n position = (_init_extra_actionLabel(this), _init_position(this));\n markedDelete = (_init_extra_position(this), _init_markedDelete(this));\n toastTarget = (_init_extra_markedDelete(this), _init_toastTarget(this));\n mounted = (_init_extra_toastTarget(this), false);\n removed = false;\n swiping = false;\n swipeOut = false;\n swipeAxis = null;\n swipeOutDirection = null;\n held = false;\n timerReady = false;\n timeoutId = null;\n pointerStart = null;\n dragStartTime = null;\n exitTimer = null;\n /**\n * Wire pointer listeners, then announce mount after paint so enter CSS can run.\n *\n * @remarks\n * `mounted` stays true across disconnect so list remounts skip the enter\n * animation (avoids an opacity flicker when siblings update). Timer state is\n * still reset on disconnect and restarted on reconnect / first paint.\n */\n connectedCallback() {\n super.connectedCallback();\n const isReconnect = this.mounted;\n this.addEventListener(\"pointerdown\", this.onPointerDown);\n this.addEventListener(\"pointermove\", this.onPointerMove);\n this.addEventListener(\"pointerup\", this.onPointerUp);\n this.addEventListener(\"pointercancel\", this.onPointerUp);\n if (isReconnect) {\n this.timerReady = true;\n this.syncDomState();\n this.dispatchEvent(new CustomEvent(\"rui-toast-mounted\", {\n bubbles: true\n }));\n if (!this.held && !this.removed) {\n this.startTimer();\n }\n return;\n }\n this.timerReady = false;\n requestAnimationFrame(() => {\n requestAnimationFrame(() => {\n if (!this.isConnected) return;\n this.mounted = true;\n this.timerReady = true;\n this.syncDomState();\n this.dispatchEvent(new CustomEvent(\"rui-toast-mounted\", {\n bubbles: true\n }));\n if (!this.held && !this.removed) {\n this.startTimer();\n }\n });\n });\n this.syncDomState();\n }\n /**\n * Clear timers on unmount. Only purge shared state when this instance was exiting \u2014\n * overflow toasts are intentionally unmounted while still queued.\n */\n disconnectedCallback() {\n this.clearTimer();\n if (this.exitTimer) {\n clearTimeout(this.exitTimer);\n this.exitTimer = null;\n }\n const id = this.resolvedId;\n if (id !== \"\" && this.removed) {\n toastState.remove(id);\n }\n this.held = false;\n this.timerReady = false;\n this.removeEventListener(\"pointerdown\", this.onPointerDown);\n this.removeEventListener(\"pointermove\", this.onPointerMove);\n this.removeEventListener(\"pointerup\", this.onPointerUp);\n this.removeEventListener(\"pointercancel\", this.onPointerUp);\n super.disconnectedCallback();\n }\n onContentUpdated() {\n this.requestUpdate();\n }\n onPositionUpdated() {\n this.syncDomState();\n }\n /**\n * Hold or release auto-dismiss (toaster-controlled on stack hover).\n *\n * @remarks\n * Pause freezes leftover ms so wall-clock time during hover does not consume\n * the lifetime. Resume rebuilds the deadline from that remainder.\n */\n setPaused(paused) {\n if (this.held === paused) {\n if (!paused && this.timerReady && this.mounted && !this.removed && !this.timeoutId) {\n this.startTimer();\n }\n return;\n }\n this.held = paused;\n if (!this.timerReady || !this.mounted || this.removed) return;\n if (paused || document.hidden) {\n freezeToastDeadline(this.resolvedId);\n this.clearTimer();\n } else {\n this.startTimer();\n }\n }\n onDurationUpdated() {\n if (!this.timerReady || !this.mounted || this.removed || this.held) return;\n clearToastDeadline(this.resolvedId);\n this.startTimer();\n }\n onMarkedDeleteUpdated() {\n if (this.markedDelete && !this.removed) {\n this.beginRemove();\n }\n }\n get resolvedId() {\n const raw = this.toastId;\n if (raw == null || raw === \"\") return \"\";\n const asNumber = Number(raw);\n return Number.isFinite(asNumber) && String(asNumber) === raw ? asNumber : raw;\n }\n clearTimer() {\n if (this.timeoutId) clearTimeout(this.timeoutId);\n this.timeoutId = null;\n }\n /**\n * Countdown to the toast's dismiss deadline.\n *\n * @remarks\n * Deadlines live in a module map keyed by toast id so list remounts (sibling\n * dismiss / re-render) resume leftover time instead of restarting `duration`.\n * Hover pause stores remaining ms separately and rebuilds the deadline on resume.\n */\n startTimer() {\n if (this.held || this.removed || document.hidden) return;\n if (this.duration === Number.POSITIVE_INFINITY || this.variant === \"loading\") return;\n if (this.duration <= 0) {\n this.beginRemove();\n return;\n }\n const id = this.resolvedId;\n const key = deadlineKey(id);\n const now = Date.now();\n let remaining = toastRemainingMs.get(key);\n toastRemainingMs.delete(key);\n if (remaining == null) {\n const deadline = toastDeadlines.get(key);\n remaining = deadline != null ? deadline - now : this.duration;\n }\n if (remaining <= 0) {\n clearToastDeadline(id);\n this.beginRemove();\n return;\n }\n toastDeadlines.set(key, now + remaining);\n this.clearTimer();\n this.timeoutId = setTimeout(() => {\n clearToastDeadline(id);\n this.beginRemove();\n }, remaining);\n }\n beginRemove() {\n if (this.removed) return;\n this.removed = true;\n this.clearTimer();\n clearToastDeadline(this.resolvedId);\n this.syncDomState();\n if (!this.markedDelete) {\n toastState.dismiss(this.resolvedId);\n }\n this.exitTimer = setTimeout(() => {\n this.exitTimer = null;\n toastState.remove(this.resolvedId);\n }, TOAST_EXIT_MS);\n }\n onPointerDown(event) {\n if (!this.dismissible || this.variant === \"loading\") return;\n if (event.button !== 0) return;\n const target = event.target;\n if (target?.closest(\"[data-toast-close], [data-toast-action], button, a\")) return;\n this.dragStartTime = Date.now();\n this.pointerStart = {\n x: event.clientX,\n y: event.clientY\n };\n this.swipeAxis = null;\n this.setPointerCapture(event.pointerId);\n }\n onPointerMove(event) {\n if (!this.pointerStart) return;\n const {\n y,\n x\n } = splitToastPosition(this.position);\n const deltaX = event.clientX - this.pointerStart.x;\n const deltaY = event.clientY - this.pointerStart.y;\n if (!this.swiping) {\n if (Math.abs(deltaX) < 8 && Math.abs(deltaY) < 8) return;\n this.swiping = true;\n this.syncDomState();\n }\n if (!this.swipeAxis) {\n this.swipeAxis = Math.abs(deltaX) > Math.abs(deltaY) ? \"x\" : \"y\";\n }\n const swipeAmountX = this.swipeAxis === \"x\" ? deltaX : 0;\n const swipeAmountY = this.swipeAxis === \"y\" ? deltaY : 0;\n if (this.swipeAxis === \"y\") {\n const towardExit = y === \"bottom\" ? swipeAmountY > 0 : swipeAmountY < 0;\n if (!towardExit && Math.abs(swipeAmountY) < TOAST_SWIPE_THRESHOLD) {\n this.style.setProperty(\"--swipe-amount-x\", \"0px\");\n this.style.setProperty(\"--swipe-amount-y\", \"0px\");\n return;\n }\n }\n if (this.swipeAxis === \"x\") {\n const towardExit = x === \"start\" ? swipeAmountX < 0 : swipeAmountX > 0;\n if (x !== \"center\" && !towardExit && Math.abs(swipeAmountX) < TOAST_SWIPE_THRESHOLD) {\n this.style.setProperty(\"--swipe-amount-x\", \"0px\");\n this.style.setProperty(\"--swipe-amount-y\", \"0px\");\n return;\n }\n }\n this.style.setProperty(\"--swipe-amount-x\", `${swipeAmountX}px`);\n this.style.setProperty(\"--swipe-amount-y\", `${swipeAmountY}px`);\n }\n onPointerUp(event) {\n if (!this.pointerStart) return;\n try {\n this.releasePointerCapture(event.pointerId);\n } catch {}\n const wasSwiping = this.swiping;\n this.swiping = false;\n if (!wasSwiping) {\n this.pointerStart = null;\n this.dragStartTime = null;\n this.swipeAxis = null;\n return;\n }\n const swipeAmountX = Number.parseFloat(this.style.getPropertyValue(\"--swipe-amount-x\") || \"0\");\n const swipeAmountY = Number.parseFloat(this.style.getPropertyValue(\"--swipe-amount-y\") || \"0\");\n const swipeAmount = this.swipeAxis === \"x\" ? swipeAmountX : swipeAmountY;\n const swipeTime = this.dragStartTime ? Date.now() - this.dragStartTime : 0;\n const velocity = Math.abs(swipeAmount) / Math.max(swipeTime, 1);\n const shouldDismiss = Math.abs(swipeAmount) >= TOAST_SWIPE_THRESHOLD || velocity > 0.11;\n if (shouldDismiss && this.dismissible) {\n const {\n y,\n x\n } = splitToastPosition(this.position);\n if (this.swipeAxis === \"x\") {\n this.swipeOutDirection = swipeAmountX < 0 ? \"left\" : \"right\";\n if (x === \"start\") this.swipeOutDirection = \"left\";\n if (x === \"end\") this.swipeOutDirection = \"right\";\n } else {\n this.swipeOutDirection = y === \"bottom\" ? \"down\" : \"up\";\n }\n this.swipeOut = true;\n this.syncDomState();\n this.beginRemove();\n } else {\n this.style.setProperty(\"--swipe-amount-x\", \"0px\");\n this.style.setProperty(\"--swipe-amount-y\", \"0px\");\n this.swipeAxis = null;\n this.syncDomState();\n }\n this.pointerStart = null;\n this.dragStartTime = null;\n }\n onCloseClick(event) {\n event.stopPropagation();\n if (!this.dismissible) return;\n this.beginRemove();\n }\n onActionClick(event) {\n event.stopPropagation();\n const record = toastState.getSnapshot().find(toast => toast.id === this.resolvedId);\n record?.action?.onClick(event);\n if (this.dismissible) this.beginRemove();\n }\n syncDomState() {\n const {\n y,\n x\n } = splitToastPosition(this.position);\n this.setAttribute(\"role\", \"listitem\");\n this.dataset.mounted = String(this.mounted);\n this.dataset.removed = String(this.removed);\n this.dataset.swiping = String(this.swiping);\n this.dataset.swipeOut = String(this.swipeOut);\n this.dataset.dismissible = String(this.dismissible);\n this.dataset.yPosition = y;\n this.dataset.xPosition = x;\n this.dataset.variant = this.variant ?? \"default\";\n if (this.swipeOutDirection) this.dataset.swipeDirection = this.swipeOutDirection;else delete this.dataset.swipeDirection;\n }\n iconForVariant() {\n switch (this.variant) {\n case \"success\":\n return \"\\u2713\";\n case \"error\":\n return \"\\u2715\";\n case \"warning\":\n return \"!\";\n case \"info\":\n return \"i\";\n default:\n return \"\";\n }\n }\n render() {\n const variant = this.variant ?? \"default\";\n const icon = this.iconForVariant();\n const showIcon = variant !== \"default\";\n return /* @__PURE__ */jsxs(\"div\", {\n ref: \"toast\",\n class: `rui-toast rui-toast--${variant}`,\n role: \"status\",\n \"aria-live\": \"off\",\n \"data-ref\": \"toast\",\n children: [this.closeButton && variant !== \"loading\" ? /* @__PURE__ */jsx(\"button\", {\n type: \"button\",\n class: \"rui-toast__close\",\n \"data-toast-close\": true,\n \"aria-label\": \"Close toast\",\n children: \"\\xD7\"\n }) : null, showIcon ? /* @__PURE__ */jsx(\"span\", {\n class: \"rui-toast__icon\",\n \"data-icon\": true,\n \"aria-hidden\": \"true\",\n children: variant === \"loading\" ? /* @__PURE__ */jsx(\"span\", {\n class: \"rui-toast__loader\"\n }) : icon\n }) : null, /* @__PURE__ */jsxs(\"div\", {\n class: \"rui-toast__content\",\n children: [/* @__PURE__ */jsx(\"div\", {\n class: \"rui-toast__title\",\n \"data-title\": true,\n children: this.$.title\n }), this.description ? /* @__PURE__ */jsx(\"div\", {\n class: \"rui-toast__description\",\n \"data-description\": true,\n children: this.$.description\n }) : null]\n }), this.actionLabel ? /* @__PURE__ */jsx(\"button\", {\n type: \"button\",\n class: \"rui-toast__action rui-button rui-button--outline rui-button--sm\",\n \"data-toast-action\": true,\n children: this.$.actionLabel\n }) : null]\n });\n }\n static {\n _initClass();\n }\n}\nexport { _RuiToast as RuiToast };", "export const RUI_TOAST_SHOW_EVENT = \"rui-toast-show\";\nexport const RUI_TOAST_DISMISS_EVENT = \"rui-toast-dismiss\";\nexport const TOAST_POSITIONS = [\"top-start\", \"top-center\", \"top-end\", \"bottom-start\", \"bottom-center\", \"bottom-end\"];\nexport const TOAST_LIFETIME = 4e3;\nexport const TOAST_WIDTH = 356;\nexport const TOAST_GAP = 14;\nexport const TOAST_VIEWPORT_OFFSET = 24;\nexport const TOAST_VISIBLE_AMOUNT = 3;\nexport const TOAST_COLLAPSED_PEEK = 3;\nexport const TOAST_SWIPE_THRESHOLD = 45;\nexport const TOAST_EXIT_MS = 200;\nexport const DEFAULT_TOAST_POSITION = \"bottom-end\";\nexport function splitToastPosition(position) {\n const [y, x] = position.split(\"-\");\n return {\n y,\n x\n };\n}", "let toastCounter = 1;\nfunction nextId() {\n return toastCounter++;\n}\nfunction resolveMessage(message, value) {\n return typeof message === \"function\" ? message(value) : message;\n}\nclass ToastState {\n subscribers = [];\n toasts = [];\n subscribe = subscriber => {\n this.subscribers.push(subscriber);\n subscriber(this.toasts);\n return () => {\n const index = this.subscribers.indexOf(subscriber);\n if (index >= 0) this.subscribers.splice(index, 1);\n };\n };\n getSnapshot = () => this.toasts;\n publish() {\n const snapshot = this.toasts;\n for (const subscriber of this.subscribers) {\n subscriber(snapshot);\n }\n }\n create = (title, options = {}) => {\n const id = options.id ?? nextId();\n const dismissible = options.dismissible ?? true;\n const existingIndex = this.toasts.findIndex(toast => toast.id === id);\n const next = {\n id,\n title,\n description: options.description,\n variant: options.variant ?? \"default\",\n duration: options.duration,\n action: options.action,\n dismissible,\n closeButton: options.closeButton,\n position: options.position,\n delete: false\n };\n if (existingIndex >= 0) {\n this.toasts = this.toasts.map(toast => toast.id === id ? {\n ...toast,\n ...next,\n delete: false\n } : toast);\n } else {\n this.toasts = [next, ...this.toasts];\n }\n this.publish();\n return id;\n };\n dismiss = id => {\n if (id == null) {\n if (this.toasts.length === 0) return;\n this.toasts = this.toasts.map(toast => ({\n ...toast,\n delete: true\n }));\n } else {\n const target = this.toasts.find(toast => toast.id === id);\n if (!target || target.delete) return;\n this.toasts = this.toasts.map(toast => toast.id === id ? {\n ...toast,\n delete: true\n } : toast);\n }\n this.publish();\n };\n remove = id => {\n this.toasts = this.toasts.filter(toast => toast.id !== id);\n this.publish();\n };\n /** Drop every toast from the store (tests, Storybook resets). */\n clear = () => {\n if (this.toasts.length === 0) return;\n this.toasts = [];\n this.publish();\n };\n message = (title, options) => this.create(title, options);\n success = (title, options) => this.create(title, {\n ...options,\n variant: \"success\"\n });\n error = (title, options) => this.create(title, {\n ...options,\n variant: \"error\"\n });\n info = (title, options) => this.create(title, {\n ...options,\n variant: \"info\"\n });\n warning = (title, options) => this.create(title, {\n ...options,\n variant: \"warning\"\n });\n loading = (title, options) => this.create(title, {\n ...options,\n variant: \"loading\",\n duration: options?.duration ?? Number.POSITIVE_INFINITY\n });\n promise = (promise, messages) => {\n const id = this.loading(messages.loading, {\n duration: Number.POSITIVE_INFINITY,\n action: messages.action,\n closeButton: messages.closeButton,\n position: messages.position,\n description: typeof messages.description === \"string\" ? messages.description : void 0\n });\n const pending = typeof promise === \"function\" ? promise() : promise;\n pending.then(data => {\n const description = typeof messages.description === \"function\" ? messages.description(data) : messages.description;\n this.create(resolveMessage(messages.success, data), {\n id,\n variant: \"success\",\n description,\n duration: messages.duration,\n action: messages.action,\n closeButton: messages.closeButton,\n position: messages.position\n });\n }).catch(error => {\n const description = typeof messages.description === \"function\" ? messages.description(error) : messages.description;\n this.create(resolveMessage(messages.error, error), {\n id,\n variant: \"error\",\n description,\n duration: messages.duration,\n action: messages.action,\n closeButton: messages.closeButton,\n position: messages.position\n });\n });\n return id;\n };\n}\nexport const toastState = new ToastState();", "let _initProto, _initClass, _init_position, _init_extra_position, _init_duration, _init_extra_duration, _init_visibleToasts, _init_extra_visibleToasts, _init_closeButton, _init_extra_closeButton, _init_expand, _init_extra_expand, _init_gap, _init_extra_gap, _init_offset, _init_extra_offset, _init_container, _init_extra_container, _init_toasts, _init_extra_toasts;\nfunction _applyDecs(e, t, n, r, o, i) { var a, c, u, s, f, l, p, d = Symbol.metadata || Symbol.for(\"Symbol.metadata\"), m = Object.defineProperty, h = Object.create, y = [h(null), h(null)], v = t.length; function g(t, n, r) { return function (o, i) { n && (i = o, o = e); for (var a = 0; a < t.length; a++) i = t[a].apply(o, r ? [i] : []); return r ? i : o; }; } function b(e, t, n, r) { if (\"function\" != typeof e && (r || void 0 !== e)) throw new TypeError(t + \" must \" + (n || \"be\") + \" a function\" + (r ? \"\" : \" or undefined\")); return e; } function applyDec(e, t, n, r, o, i, u, s, f, l, p) { function d(e) { if (!p(e)) throw new TypeError(\"Attempted to access private element on non-instance\"); } var h = [].concat(t[0]), v = t[3], w = !u, D = 1 === o, S = 3 === o, j = 4 === o, E = 2 === o; function I(t, n, r) { return function (o, i) { return n && (i = o, o = e), r && r(o), P[t].call(o, i); }; } if (!w) { var P = {}, k = [], F = S ? \"get\" : j || D ? \"set\" : \"value\"; if (f ? (l || D ? P = { get: _setFunctionName(function () { return v(this); }, r, \"get\"), set: function (e) { t[4](this, e); } } : P[F] = v, l || _setFunctionName(P[F], r, E ? \"\" : F)) : l || (P = Object.getOwnPropertyDescriptor(e, r)), !l && !f) { if ((c = y[+s][r]) && 7 !== (c ^ o)) throw Error(\"Decorating two elements with the same name (\" + P[F].name + \") is not supported yet\"); y[+s][r] = o < 3 ? 1 : o; } } for (var N = e, O = h.length - 1; O >= 0; O -= n ? 2 : 1) { var T = b(h[O], \"A decorator\", \"be\", !0), z = n ? h[O - 1] : void 0, A = {}, H = { kind: [\"field\", \"accessor\", \"method\", \"getter\", \"setter\", \"class\"][o], name: r, metadata: a, addInitializer: function (e, t) { if (e.v) throw new TypeError(\"attempted to call addInitializer after decoration was finished\"); b(t, \"An initializer\", \"be\", !0), i.push(t); }.bind(null, A) }; if (w) c = T.call(z, N, H), A.v = 1, b(c, \"class decorators\", \"return\") && (N = c);else if (H.static = s, H.private = f, c = H.access = { has: f ? p.bind() : function (e) { return r in e; } }, j || (c.get = f ? E ? function (e) { return d(e), P.value; } : I(\"get\", 0, d) : function (e) { return e[r]; }), E || S || (c.set = f ? I(\"set\", 0, d) : function (e, t) { e[r] = t; }), N = T.call(z, D ? { get: P.get, set: P.set } : P[F], H), A.v = 1, D) { if (\"object\" == typeof N && N) (c = b(N.get, \"accessor.get\")) && (P.get = c), (c = b(N.set, \"accessor.set\")) && (P.set = c), (c = b(N.init, \"accessor.init\")) && k.unshift(c);else if (void 0 !== N) throw new TypeError(\"accessor decorators must return an object with get, set, or init properties or undefined\"); } else b(N, (l ? \"field\" : \"method\") + \" decorators\", \"return\") && (l ? k.unshift(N) : P[F] = N); } return o < 2 && u.push(g(k, s, 1), g(i, s, 0)), l || w || (f ? D ? u.splice(-1, 0, I(\"get\", s), I(\"set\", s)) : u.push(E ? P[F] : b.call.bind(P[F])) : m(e, r, P)), N; } function w(e) { return m(e, d, { configurable: !0, enumerable: !0, value: a }); } return void 0 !== i && (a = i[d]), a = h(null == a ? null : a), f = [], l = function (e) { e && f.push(g(e)); }, p = function (t, r) { for (var i = 0; i < n.length; i++) { var a = n[i], c = a[1], l = 7 & c; if ((8 & c) == t && !l == r) { var p = a[2], d = !!a[3], m = 16 & c; applyDec(t ? e : e.prototype, a, m, d ? \"#\" + p : _toPropertyKey(p), l, l < 2 ? [] : t ? s = s || [] : u = u || [], f, !!t, d, r, t && d ? function (t) { return _checkInRHS(t) === e; } : o); } } }, p(8, 0), p(0, 0), p(8, 1), p(0, 1), l(u), l(s), c = f, v || w(e), { e: c, get c() { var n = []; return v && [w(e = applyDec(e, [t], r, e.name, 5, n)), g(n, 1)]; } }; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nfunction _setFunctionName(e, t, n) { \"symbol\" == typeof t && (t = (t = t.description) ? \"[\" + t + \"]\" : \"\"); try { Object.defineProperty(e, \"name\", { configurable: !0, value: n ? n + \" \" + t : t }); } catch (e) {} return e; }\nfunction _checkInRHS(e) { if (Object(e) !== e) throw TypeError(\"right-hand side of 'in' should be an object, got \" + (null !== e ? typeof e : \"null\")); return e; }\nimport { jsx } from \"@ecopages/jsx/jsx-runtime\";\nimport { RadiantElement, bound, customElement, onEvent, onUpdated, prop, state } from \"@ecopages/radiant\";\nimport { DEFAULT_TOAST_POSITION, RUI_TOAST_DISMISS_EVENT, RUI_TOAST_SHOW_EVENT, TOAST_COLLAPSED_PEEK, TOAST_GAP, TOAST_LIFETIME, TOAST_VIEWPORT_OFFSET, TOAST_VISIBLE_AMOUNT, TOAST_WIDTH, splitToastPosition } from \"./toast-context\";\nimport { collapsedStackHeight, expandedStackHeight, expandedToastOffset } from \"./stack-layout\";\nimport { toastState } from \"./toast-state\";\nimport \"./toast.script\";\nfunction isInsideToaster(node, root) {\n return node instanceof Node && root.contains(node);\n}\nlet _RuiToaster;\nclass RuiToaster extends RadiantElement {\n static {\n ({\n e: [_init_position, _init_extra_position, _init_duration, _init_extra_duration, _init_visibleToasts, _init_extra_visibleToasts, _init_closeButton, _init_extra_closeButton, _init_expand, _init_extra_expand, _init_gap, _init_extra_gap, _init_offset, _init_extra_offset, _init_container, _init_extra_container, _init_toasts, _init_extra_toasts, _initProto],\n c: [_RuiToaster, _initClass]\n } = _applyDecs(this, [customElement(\"rui-toaster\")], [[prop({\n type: String,\n reflect: true,\n defaultValue: DEFAULT_TOAST_POSITION\n }), 0, \"position\"], [prop({\n type: Number,\n defaultValue: TOAST_LIFETIME\n }), 0, \"duration\"], [prop({\n type: Number,\n defaultValue: TOAST_VISIBLE_AMOUNT\n }), 0, \"visibleToasts\"], [prop({\n type: Boolean,\n defaultValue: false\n }), 0, \"closeButton\"], [prop({\n type: Boolean,\n defaultValue: false\n }), 0, \"expand\"], [prop({\n type: Number,\n defaultValue: TOAST_GAP\n }), 0, \"gap\"], [prop({\n type: Number,\n defaultValue: TOAST_VIEWPORT_OFFSET\n }), 0, \"offset\"], [prop({\n type: String,\n reflect: true,\n defaultValue: \"\"\n }), 0, \"container\"], [state, 0, \"toasts\"], [onUpdated([\"position\", \"duration\", \"visibleToasts\", \"closeButton\", \"expand\", \"gap\", \"offset\", \"container\"]), 2, \"onConfigUpdated\"], [onEvent({\n document: true,\n type: RUI_TOAST_SHOW_EVENT\n }), 2, \"onDocumentShow\"], [onEvent({\n document: true,\n type: RUI_TOAST_DISMISS_EVENT\n }), 2, \"onDocumentDismiss\"], [onEvent({\n selector: \"rui-toast\",\n type: \"rui-toast-mounted\"\n }), 2, \"onToastMounted\"], [bound, 2, \"onPointerOver\"], [bound, 2, \"onPointerOut\"], [bound, 2, \"onPointerDown\"], [bound, 2, \"onPointerUp\"]], 0, void 0, RadiantElement));\n }\n position = (_initProto(this), _init_position(this));\n duration = (_init_extra_position(this), _init_duration(this));\n visibleToasts = (_init_extra_duration(this), _init_visibleToasts(this));\n closeButton = (_init_extra_visibleToasts(this), _init_closeButton(this));\n expand = (_init_extra_closeButton(this), _init_expand(this));\n gap = (_init_extra_expand(this), _init_gap(this));\n offset = (_init_extra_gap(this), _init_offset(this));\n container = (_init_extra_offset(this), _init_container(this));\n toasts = (_init_extra_container(this), _init_toasts(this, []));\n expanded = (_init_extra_toasts(this), false);\n interacting = false;\n unsubscribe = null;\n visibilityHandler = null;\n heights = /* @__PURE__ */new Map();\n observers = /* @__PURE__ */new Map();\n layoutFrame = null;\n /** Prevents ResizeObserver re-entry while temporarily unclipping hosts to measure. */\n measuring = false;\n connectedCallback() {\n super.connectedCallback();\n this.syncHostPosition();\n this.syncContainer();\n this.unsubscribe = toastState.subscribe(toasts => {\n this.toasts = toasts;\n if (toasts.length === 0) {\n this.resetLayoutState();\n }\n this.scheduleLayoutSync();\n });\n this.visibilityHandler = () => this.syncPauseState();\n document.addEventListener(\"visibilitychange\", this.visibilityHandler);\n }\n disconnectedCallback() {\n this.unsubscribe?.();\n this.unsubscribe = null;\n if (this.visibilityHandler) {\n document.removeEventListener(\"visibilitychange\", this.visibilityHandler);\n this.visibilityHandler = null;\n }\n document.removeEventListener(\"pointerup\", this.onPointerUp);\n document.removeEventListener(\"pointercancel\", this.onPointerUp);\n if (this.layoutFrame != null) cancelAnimationFrame(this.layoutFrame);\n this.resetLayoutState();\n super.disconnectedCallback();\n }\n onConfigUpdated() {\n this.syncHostPosition();\n this.syncContainer();\n this.scheduleLayoutSync();\n }\n onDocumentShow(event) {\n const detail = event.detail;\n if (!detail?.title) return;\n toastState.create(detail.title, {\n id: detail.id,\n description: detail.description,\n variant: detail.variant,\n duration: detail.duration,\n action: detail.action,\n dismissible: detail.dismissible,\n closeButton: detail.closeButton,\n position: detail.position\n });\n }\n onDocumentDismiss(event) {\n const detail = event.detail;\n toastState.dismiss(detail?.id);\n }\n onToastMounted() {\n this.scheduleLayoutSync();\n }\n filteredToasts() {\n const forPosition = this.toasts.filter(toast => (toast.position ?? this.position) === this.position);\n const active = [];\n const exiting = [];\n for (const toast of forPosition) {\n if (toast.delete) exiting.push(toast);else active.push(toast);\n }\n return [...active.slice(0, this.visibleToasts), ...exiting];\n }\n syncHostPosition() {\n const {\n y,\n x\n } = splitToastPosition(this.position);\n this.dataset.yPosition = y;\n this.dataset.xPosition = x;\n this.style.setProperty(\"--width\", `${TOAST_WIDTH}px`);\n this.style.setProperty(\"--gap\", `${this.gap}px`);\n this.style.setProperty(\"--viewport-offset\", `${this.offset}px`);\n }\n /**\n * Bind the toaster to a positioning root when `container` is set.\n *\n * @remarks\n * Prefers an ancestor match so nested demos do not reparent. Only appends\n * into a query-selected root when the toaster is not already inside it.\n * Contained mode uses absolute positioning; default mode restores viewport fixed.\n */\n syncContainer() {\n const selector = this.container.trim();\n if (!selector) {\n this.removeAttribute(\"data-contained\");\n this.style.position = \"\";\n return;\n }\n const target = this.closest(selector) ?? document.querySelector(selector);\n if (!target) {\n this.removeAttribute(\"data-contained\");\n this.style.position = \"\";\n return;\n }\n if (getComputedStyle(target).position === \"static\") {\n target.style.position = \"relative\";\n }\n if (!target.contains(this)) {\n target.appendChild(this);\n }\n this.dataset.contained = \"true\";\n this.style.position = \"absolute\";\n }\n isStackExpanded() {\n return this.expanded || this.expand;\n }\n /**\n * @remarks\n * Pause only while the pointer is interacting / hovering, or the tab is\n * hidden. The `expand` prop is visual-only \u2014 it must not freeze lifetimes.\n */\n isPaused() {\n return this.expanded || this.interacting || document.hidden;\n }\n resetLayoutState() {\n for (const observer of this.observers.values()) observer.disconnect();\n this.observers.clear();\n this.heights.clear();\n this.expanded = false;\n this.interacting = false;\n const list = this.querySelector(\".rui-toaster\");\n if (list) {\n list.style.height = \"0px\";\n list.dataset.expanded = \"false\";\n }\n this.dataset.expanded = \"false\";\n }\n syncPauseState() {\n const paused = this.isPaused();\n for (const el of this.querySelectorAll(\"rui-toast\")) {\n el.setPaused(paused);\n }\n this.patchStackLayout();\n }\n /**\n * Measure + layout on the next frame. Re-reads `:hover` because emptying the\n * stack under the cursor can skip `pointerout`, leaving hold/expand stale.\n */\n scheduleLayoutSync() {\n if (this.layoutFrame != null) cancelAnimationFrame(this.layoutFrame);\n this.layoutFrame = requestAnimationFrame(() => {\n this.layoutFrame = null;\n if (this.toasts.length > 0 && !this.interacting) {\n const list = this.querySelector(\".rui-toaster\");\n const hovered = Boolean(list?.matches(\":hover\") || this.matches(\":hover\"));\n this.expanded = hovered;\n }\n this.observeToasts();\n this.syncPauseState();\n });\n }\n /**\n * Natural content height for stack math.\n *\n * @remarks\n * Uses the inner `.rui-toast` `offsetHeight` (layout size, transform-independent).\n * Host height/overflow are temporarily cleared because collapsed behind toasts are\n * clipped to the front height \u2014 leaving that in place can under-measure in some engines.\n */\n measureToast(el) {\n this.measuring = true;\n const prevHeight = el.style.height;\n const prevOverflow = el.style.overflow;\n el.style.height = \"auto\";\n el.style.overflow = \"visible\";\n const inner = el.querySelector(\".rui-toast\");\n const height = Math.round(inner instanceof HTMLElement ? inner.offsetHeight : el.offsetHeight) || 64;\n el.style.height = prevHeight;\n el.style.overflow = prevOverflow;\n this.measuring = false;\n return height;\n }\n observeToasts() {\n const list = this.querySelector(\".rui-toaster\");\n if (!list) return;\n const els = [...list.querySelectorAll(\"rui-toast\")];\n const seen = /* @__PURE__ */new Set();\n for (const el of els) {\n const id = el.toastId;\n if (!id) continue;\n seen.add(id);\n const target = el.querySelector(\".rui-toast\") ?? el;\n if (!this.observers.has(id)) {\n const observer = new ResizeObserver(() => {\n if (this.measuring) return;\n const height = this.measureToast(el);\n if (this.heights.get(id) === height) return;\n this.heights.set(id, height);\n this.patchStackLayout();\n });\n observer.observe(target);\n this.observers.set(id, observer);\n }\n this.heights.set(id, this.measureToast(el));\n }\n for (const [id, observer] of [...this.observers]) {\n if (seen.has(id)) continue;\n observer.disconnect();\n this.observers.delete(id);\n this.heights.delete(id);\n }\n }\n /**\n * @remarks\n * Expanded offsets use each toast's natural height (Sonner formula):\n * `sum(heights before) + index * gap`. Collapsed mode peeks at most\n * {@link TOAST_COLLAPSED_PEEK} toasts with scale; overflow stays\n * mounted but hidden until hover expands the stack.\n * Heights are always remeasured \u2014 clipped collapsed hosts make caches stale.\n */\n patchStackLayout() {\n const list = this.querySelector(\".rui-toaster\");\n if (!list) return;\n const expanded = this.isStackExpanded();\n const {\n y\n } = splitToastPosition(this.position);\n const lift = y === \"bottom\" ? -1 : 1;\n const peekLimit = Math.min(TOAST_COLLAPSED_PEEK, Math.max(1, this.visibleToasts));\n this.dataset.expanded = String(expanded);\n list.dataset.expanded = String(expanded);\n this.style.setProperty(\"--lift\", String(lift));\n list.style.setProperty(\"--gap\", `${this.gap}px`);\n const els = [...list.querySelectorAll(\"rui-toast\")].filter(el => el.dataset.mounted === \"true\" && el.dataset.removed !== \"true\");\n if (els.length === 0) {\n list.style.height = \"0px\";\n return;\n }\n const heights = els.map(el => {\n const measured = this.measureToast(el);\n this.heights.set(el.toastId, measured);\n return measured;\n });\n const frontHeight = heights[0] ?? 64;\n this.style.setProperty(\"--front-toast-height\", `${frontHeight}px`);\n for (let index = 0; index < els.length; index += 1) {\n const el = els[index];\n if (!el) continue;\n const height = heights[index] ?? 64;\n const isFront = index === 0;\n const offset = expandedToastOffset(index, heights, this.gap);\n const inCollapsedPeek = index < peekLimit;\n el.dataset.index = String(index);\n el.dataset.front = String(isFront);\n el.dataset.expanded = String(expanded);\n el.dataset.visible = String(expanded || inCollapsedPeek);\n el.style.setProperty(\"--z-index\", String(els.length - index));\n el.style.setProperty(\"--index\", String(index));\n el.style.setProperty(\"--offset\", `${offset}px`);\n el.style.setProperty(\"--initial-height\", `${height}px`);\n el.style.setProperty(\"--gap\", `${this.gap}px`);\n if (expanded) {\n el.style.setProperty(\"--y\", `translateY(${lift * offset}px)`);\n el.style.height = `${height}px`;\n el.style.overflow = \"visible\";\n } else if (!inCollapsedPeek) {\n el.style.setProperty(\"--y\", `translateY(${lift * (peekLimit - 1) * this.gap}px) scale(0.7)`);\n el.style.height = `${frontHeight}px`;\n el.style.overflow = \"hidden\";\n } else if (isFront) {\n el.style.setProperty(\"--y\", \"translateY(0px)\");\n el.style.height = `${height}px`;\n el.style.overflow = \"visible\";\n } else {\n const scale = Math.max(0.7, 1 - index * 0.05);\n el.style.setProperty(\"--y\", `translateY(${lift * index * this.gap}px) scale(${scale})`);\n el.style.height = `${frontHeight}px`;\n el.style.overflow = \"hidden\";\n }\n }\n const collapsedPeekCount = Math.min(peekLimit, els.length);\n list.style.height = `${expanded ? expandedStackHeight(heights, this.gap) : collapsedStackHeight(frontHeight, collapsedPeekCount, this.gap)}px`;\n }\n onPointerOver(event) {\n if (isInsideToaster(event.relatedTarget, this)) return;\n this.expanded = true;\n this.syncPauseState();\n }\n onPointerOut(event) {\n if (isInsideToaster(event.relatedTarget, this)) return;\n if (this.interacting) return;\n this.expanded = false;\n this.syncPauseState();\n }\n onPointerDown() {\n this.interacting = true;\n this.expanded = true;\n this.syncPauseState();\n document.addEventListener(\"pointerup\", this.onPointerUp, {\n once: true\n });\n document.addEventListener(\"pointercancel\", this.onPointerUp, {\n once: true\n });\n }\n onPointerUp() {\n if (!this.interacting) return;\n this.interacting = false;\n const list = this.querySelector(\".rui-toaster\");\n const hovered = Boolean(list?.matches(\":hover\") || this.querySelector(\"rui-toast:hover\"));\n if (!hovered) this.expanded = false;\n this.syncPauseState();\n }\n render() {\n const filtered = this.filteredToasts();\n return /* @__PURE__ */jsx(\"section\", {\n class: \"rui-toaster-region\",\n \"aria-label\": \"Notifications\",\n \"aria-live\": \"polite\",\n \"aria-relevant\": \"additions text\",\n \"aria-atomic\": \"false\",\n tabIndex: -1,\n children: /* @__PURE__ */jsx(\"ol\", {\n class: \"rui-toaster\",\n \"data-rui-toaster\": true,\n \"on:pointerover\": this.onPointerOver,\n \"on:pointerout\": this.onPointerOut,\n \"on:pointerdown\": this.onPointerDown,\n children: filtered.map(toast => {\n const duration = toast.duration ?? (toast.variant === \"loading\" ? Number.POSITIVE_INFINITY : this.duration);\n return /* @__PURE__ */jsx(\"rui-toast\", {\n \"prop:toastId\": String(toast.id),\n \"prop:title\": toast.title,\n \"prop:description\": toast.description ?? \"\",\n \"prop:variant\": toast.variant,\n \"prop:duration\": duration,\n \"prop:dismissible\": toast.dismissible,\n \"prop:closeButton\": toast.closeButton ?? this.closeButton,\n \"prop:actionLabel\": toast.action?.label ?? \"\",\n \"prop:position\": toast.position ?? this.position,\n \"prop:markedDelete\": Boolean(toast.delete)\n }, String(toast.id));\n })\n })\n });\n }\n static {\n _initClass();\n }\n}\nexport { _RuiToaster as RuiToaster };", "export function expandedToastOffset(index, heights, gap) {\n let heightBefore = 0;\n for (let i = 0; i < index; i += 1) {\n heightBefore += heights[i] ?? 0;\n }\n return heightBefore + index * gap;\n}\nexport function expandedStackHeight(heights, gap) {\n if (heights.length === 0) return 0;\n const totalHeights = heights.reduce((sum, height) => sum + height, 0);\n return totalHeights + Math.max(0, heights.length - 1) * gap;\n}\nexport function collapsedStackHeight(frontHeight, peekCount, gap) {\n if (peekCount <= 0) return 0;\n return frontHeight + Math.max(0, peekCount - 1) * gap;\n}", "import { jsx } from \"@ecopages/jsx/jsx-runtime\";\nimport \"./toast.script\";\nimport \"./toaster.script\";\nexport function RuiToast({\n toastId,\n title,\n description,\n variant,\n duration,\n dismissible,\n closeButton,\n actionLabel,\n position,\n markedDelete,\n ...props\n}) {\n return /* @__PURE__ */jsx(\"rui-toast\", {\n ...props,\n \"prop:toastId\": toastId != null ? String(toastId) : void 0,\n \"prop:title\": title,\n \"prop:description\": description,\n \"prop:variant\": variant,\n \"prop:duration\": duration,\n \"prop:dismissible\": dismissible,\n \"prop:closeButton\": closeButton,\n \"prop:actionLabel\": actionLabel,\n \"prop:position\": position,\n \"prop:markedDelete\": markedDelete\n });\n}\nexport function RuiToaster({\n children,\n position,\n duration,\n visibleToasts,\n closeButton,\n expand,\n gap,\n offset,\n container,\n ...props\n}) {\n return /* @__PURE__ */jsx(\"rui-toaster\", {\n ...props,\n \"prop:position\": position,\n \"prop:duration\": duration,\n \"prop:visibleToasts\": visibleToasts,\n \"prop:closeButton\": closeButton,\n \"prop:expand\": expand,\n \"prop:gap\": gap,\n \"prop:offset\": offset,\n \"prop:container\": container,\n children\n });\n}", "import { RUI_TOAST_DISMISS_EVENT, RUI_TOAST_SHOW_EVENT } from \"./toast-context\";\nimport { toastState } from \"./toast-state\";\nexport const toast = Object.assign((title, options) => toastState.create(title, options), {\n message: (title, options) => toastState.message(title, options),\n success: (title, options) => toastState.success(title, options),\n error: (title, options) => toastState.error(title, options),\n info: (title, options) => toastState.info(title, options),\n warning: (title, options) => toastState.warning(title, options),\n loading: (title, options) => toastState.loading(title, options),\n promise: (promise, messages) => toastState.promise(promise, messages),\n dismiss: id => toastState.dismiss(id),\n clear: () => toastState.clear()\n});\nexport function showToast(detail) {\n document.dispatchEvent(new CustomEvent(RUI_TOAST_SHOW_EVENT, {\n detail,\n bubbles: true,\n composed: true\n }));\n}\nexport function dismissToast(id) {\n const detail = id == null ? {} : {\n id\n };\n document.dispatchEvent(new CustomEvent(RUI_TOAST_DISMISS_EVENT, {\n detail,\n bubbles: true,\n composed: true\n }));\n}"],
5
+ "mappings": "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",
6
+ "names": ["jsx", "jsxs", "RadiantElement", "bound", "customElement", "onEvent", "onUpdated", "prop", "query", "RUI_TOAST_SHOW_EVENT", "RUI_TOAST_DISMISS_EVENT", "TOAST_POSITIONS", "TOAST_LIFETIME", "TOAST_WIDTH", "TOAST_GAP", "TOAST_VIEWPORT_OFFSET", "TOAST_VISIBLE_AMOUNT", "TOAST_COLLAPSED_PEEK", "TOAST_SWIPE_THRESHOLD", "TOAST_EXIT_MS", "DEFAULT_TOAST_POSITION", "splitToastPosition", "position", "y", "x", "toastCounter", "nextId", "resolveMessage", "message", "value", "ToastState", "subscriber", "index", "snapshot", "title", "options", "id", "dismissible", "existingIndex", "toast", "next", "target", "promise", "messages", "data", "description", "error", "toastState", "_initProto", "_initClass", "_init_toastId", "_init_extra_toastId", "_init_title", "_init_extra_title", "_init_description", "_init_extra_description", "_init_variant", "_init_extra_variant", "_init_duration", "_init_extra_duration", "_init_dismissible", "_init_extra_dismissible", "_init_closeButton", "_init_extra_closeButton", "_init_actionLabel", "_init_extra_actionLabel", "_init_position", "_init_extra_position", "_init_markedDelete", "_init_extra_markedDelete", "_init_toastTarget", "_init_extra_toastTarget", "_applyDecs", "e", "n", "r", "i", "a", "c", "u", "s", "f", "l", "p", "d", "m", "h", "y", "v", "g", "t", "o", "b", "applyDec", "w", "S", "j", "E", "I", "P", "k", "F", "_setFunctionName", "N", "O", "T", "z", "A", "H", "_toPropertyKey", "_checkInRHS", "_toPrimitive", "toastDeadlines", "toastRemainingMs", "deadlineKey", "id", "clearToastDeadline", "key", "freezeToastDeadline", "id", "key", "deadlineKey", "deadline", "toastDeadlines", "toastRemainingMs", "_RuiToast", "RuiToast", "RadiantElement", "_init_toastId", "_init_extra_toastId", "_init_title", "_init_extra_title", "_init_description", "_init_extra_description", "_init_variant", "_init_extra_variant", "_init_duration", "_init_extra_duration", "_init_dismissible", "_init_extra_dismissible", "_init_closeButton", "_init_extra_closeButton", "_init_actionLabel", "_init_extra_actionLabel", "_init_position", "_init_extra_position", "_init_markedDelete", "_init_extra_markedDelete", "_init_toastTarget", "_init_extra_toastTarget", "_initProto", "_initClass", "_applyDecs", "customElement", "prop", "DEFAULT_TOAST_POSITION", "query", "onUpdated", "bound", "onEvent", "isReconnect", "toastState", "paused", "clearToastDeadline", "raw", "asNumber", "now", "remaining", "event", "y", "x", "splitToastPosition", "deltaX", "deltaY", "swipeAmountX", "swipeAmountY", "towardExit", "wasSwiping", "swipeAmount", "swipeTime", "velocity", "toast", "variant", "icon", "showIcon", "jsxs", "jsx", "jsx", "RadiantElement", "bound", "customElement", "onEvent", "onUpdated", "prop", "state", "expandedToastOffset", "index", "heights", "gap", "heightBefore", "i", "expandedStackHeight", "sum", "height", "collapsedStackHeight", "frontHeight", "peekCount", "_initProto", "_initClass", "_init_position", "_init_extra_position", "_init_duration", "_init_extra_duration", "_init_visibleToasts", "_init_extra_visibleToasts", "_init_closeButton", "_init_extra_closeButton", "_init_expand", "_init_extra_expand", "_init_gap", "_init_extra_gap", "_init_offset", "_init_extra_offset", "_init_container", "_init_extra_container", "_init_toasts", "_init_extra_toasts", "_applyDecs", "e", "n", "r", "i", "a", "c", "u", "s", "f", "l", "p", "d", "m", "h", "y", "v", "g", "t", "o", "b", "applyDec", "w", "S", "j", "E", "I", "P", "k", "F", "_setFunctionName", "N", "O", "T", "z", "A", "H", "_toPropertyKey", "_checkInRHS", "_toPrimitive", "isInsideToaster", "node", "root", "_RuiToaster", "RuiToaster", "RadiantElement", "customElement", "prop", "DEFAULT_TOAST_POSITION", "state", "onUpdated", "onEvent", "RUI_TOAST_SHOW_EVENT", "RUI_TOAST_DISMISS_EVENT", "bound", "toastState", "toasts", "event", "detail", "forPosition", "toast", "active", "exiting", "x", "splitToastPosition", "selector", "target", "observer", "list", "paused", "el", "hovered", "prevHeight", "prevOverflow", "inner", "height", "els", "seen", "id", "expanded", "lift", "peekLimit", "heights", "measured", "frontHeight", "index", "isFront", "offset", "expandedToastOffset", "inCollapsedPeek", "scale", "collapsedPeekCount", "expandedStackHeight", "collapsedStackHeight", "filtered", "jsx", "duration", "jsx", "RuiToast", "toastId", "title", "description", "variant", "duration", "dismissible", "closeButton", "actionLabel", "position", "markedDelete", "props", "jsx", "RuiToaster", "children", "visibleToasts", "expand", "gap", "offset", "container", "toast", "title", "options", "toastState", "promise", "messages", "id", "showToast", "detail", "RUI_TOAST_SHOW_EVENT", "dismissToast", "RUI_TOAST_DISMISS_EVENT"]
7
7
  }
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Expanded-stack Y offset for toast at `index` (0 = front).
3
+ *
4
+ * @remarks
5
+ * Matches Sonner: sum of natural heights before this toast, plus `index * gap`.
6
+ * Using a uniform `index * gap` alone breaks when toast heights differ.
7
+ */
8
+ export declare function expandedToastOffset(index: number, heights: readonly number[], gap: number): number;
9
+ /** Total stack height when expanded: all toast heights + gaps between them. */
10
+ export declare function expandedStackHeight(heights: readonly number[], gap: number): number;
11
+ /**
12
+ * Collapsed peek stack height: front toast + gap peek per visible stacked toast.
13
+ *
14
+ * @remarks
15
+ * `peekCount` is how many toasts are visually revealed (including the front),
16
+ * not the full mounted count — overflow stays hidden until expand.
17
+ */
18
+ export declare function collapsedStackHeight(frontHeight: number, peekCount: number, gap: number): number;
@@ -2,6 +2,8 @@ export declare const RUI_TOAST_SHOW_EVENT = "rui-toast-show";
2
2
  export declare const RUI_TOAST_DISMISS_EVENT = "rui-toast-dismiss";
3
3
  export type ToastVariant = 'default' | 'info' | 'success' | 'warning' | 'error' | 'loading';
4
4
  export type ToastPosition = 'top-start' | 'top-center' | 'top-end' | 'bottom-start' | 'bottom-center' | 'bottom-end';
5
+ /** Supported viewport positions in display order. */
6
+ export declare const TOAST_POSITIONS: readonly ToastPosition[];
5
7
  export type ToastAction = {
6
8
  label: string;
7
9
  onClick: (event: MouseEvent) => void;
@@ -50,6 +52,14 @@ export declare const TOAST_WIDTH = 356;
50
52
  export declare const TOAST_GAP = 14;
51
53
  export declare const TOAST_VIEWPORT_OFFSET = 24;
52
54
  export declare const TOAST_VISIBLE_AMOUNT = 3;
55
+ /**
56
+ * Max toasts that peek in the collapsed stack.
57
+ *
58
+ * @remarks
59
+ * `visibleToasts` still caps how many are mounted. Collapsed UI only reveals
60
+ * this many behind the front toast; the rest stay hidden until hover expands.
61
+ */
62
+ export declare const TOAST_COLLAPSED_PEEK = 3;
53
63
  export declare const TOAST_SWIPE_THRESHOLD = 45;
54
64
  export declare const TOAST_EXIT_MS = 200;
55
65
  export declare const DEFAULT_TOAST_POSITION: ToastPosition;
@@ -11,6 +11,9 @@ rui-toaster {
11
11
  margin: 0;
12
12
  padding: 0;
13
13
  }
14
+ rui-toaster[data-contained='true'] {
15
+ position: absolute;
16
+ }
14
17
  rui-toaster[data-y-position='top'] {
15
18
  top: var(--viewport-offset, 24px);
16
19
  bottom: auto;
@@ -75,6 +78,10 @@ rui-toaster[data-y-position='top'] rui-toast:not([data-mounted='true']) {
75
78
  rui-toast[data-mounted='true'] {
76
79
  opacity: 1;
77
80
  }
81
+ rui-toast[data-mounted='true'][data-visible='false'] {
82
+ opacity: 0;
83
+ pointer-events: none;
84
+ }
78
85
  rui-toast[data-expanded='false'][data-front='false'] {
79
86
  pointer-events: none;
80
87
  }
@@ -84,6 +91,9 @@ rui-toast[data-swiping='true'] {
84
91
  }
85
92
  rui-toast[data-removed='true'][data-swipe-out='false'] {
86
93
  opacity: 0;
94
+ transition: transform 400ms ease,
95
+ opacity 200ms ease,
96
+ height 400ms ease;
87
97
  }
88
98
  rui-toaster[data-y-position='bottom'] rui-toast[data-removed='true'][data-swipe-out='false'] {
89
99
  --y: translateY(100%);
@@ -108,7 +118,7 @@ rui-toast[data-swipe-out='true'][data-swipe-direction='up'] {
108
118
  rui-toast[data-swipe-out='true'][data-swipe-direction='down'] {
109
119
  animation-name: rui-toast-swipe-out-down;
110
120
  }
111
- rui-toast[data-expanded='true']::after {
121
+ rui-toaster[data-y-position='bottom'] rui-toast[data-expanded='true']::after {
112
122
  content: '';
113
123
  position: absolute;
114
124
  left: 0;
@@ -116,6 +126,14 @@ rui-toast[data-expanded='true']::after {
116
126
  height: calc(var(--gap, 14px) + 1px);
117
127
  bottom: 100%;
118
128
  }
129
+ rui-toaster[data-y-position='top'] rui-toast[data-expanded='true']::after {
130
+ content: '';
131
+ position: absolute;
132
+ left: 0;
133
+ width: 100%;
134
+ height: calc(var(--gap, 14px) + 1px);
135
+ top: 100%;
136
+ }
119
137
  @layer components {
120
138
  .rui-toaster-region {
121
139
  display: contents;
@@ -141,13 +159,10 @@ rui-toast[data-expanded='true']::after {
141
159
  display: flex;
142
160
  width: 100%;
143
161
  align-items: center;
144
- gap: var(--spacing-2, var(--space-2));
162
+ gap: var(--spacing-inline, var(--space-inline));
145
163
  border-radius: var(--radius-container, var(--radius-container));
146
164
  border-style: var(--tw-border-style);
147
165
  border-width: 1px;
148
- @media (forced-colors: active) {
149
- background-image: none;
150
- }
151
166
  background-image: var(--sheen-image);
152
167
  @media (forced-colors: active) {
153
168
  background-image: none;
@@ -163,9 +178,12 @@ rui-toast[data-expanded='true']::after {
163
178
  color: var(--color-on-surface, var(--on-surface));
164
179
  }
165
180
  .rui-toast--info {
166
- border-color: var(--color-border, var(--border));
181
+ border-color: var(--color-info, var(--info));
182
+ @supports (color: color-mix(in lab, red, red)) {
183
+ border-color: color-mix(in oklab, var(--color-info, var(--info)) 40%, transparent);
184
+ }
167
185
  background-color: var(--color-surface, var(--surface));
168
- color: var(--color-on-surface, var(--on-surface));
186
+ color: var(--color-info, var(--info));
169
187
  }
170
188
  .rui-toast--success {
171
189
  border-color: var(--color-success, var(--success));
@@ -176,9 +194,12 @@ rui-toast[data-expanded='true']::after {
176
194
  color: var(--color-success, var(--success));
177
195
  }
178
196
  .rui-toast--warning {
179
- border-color: var(--color-border, var(--border));
197
+ border-color: var(--color-warning, var(--warning));
198
+ @supports (color: color-mix(in lab, red, red)) {
199
+ border-color: color-mix(in oklab, var(--color-warning, var(--warning)) 40%, transparent);
200
+ }
180
201
  background-color: var(--color-surface, var(--surface));
181
- color: var(--color-on-surface, var(--on-surface));
202
+ color: var(--color-warning, var(--warning));
182
203
  }
183
204
  .rui-toast--error {
184
205
  border-color: var(--color-error, var(--error));
@@ -1,11 +1,21 @@
1
1
  import type { JsxHtmlProps, JsxHtmlPropsWithChildren } from '@ecopages/jsx';
2
2
  import type { RuiToastProps } from './toast.script';
3
+ import './toast.script';
3
4
  import type { RuiToasterProps } from './toaster.script';
5
+ import './toaster.script';
4
6
  export type RuiToastViewProps = JsxHtmlProps<RuiToastProps & {
5
7
  slot?: string;
6
8
  }>;
7
- export declare const RuiToast: import("@/lib/radiant-view").RadiantViewComponent<RuiToastViewProps>;
9
+ /**
10
+ * JSX helper around `<rui-toast>`. Normally rendered by `<rui-toaster>`; author
11
+ * directly only for static/embedded toast chrome.
12
+ */
13
+ export declare function RuiToast({ toastId, title, description, variant, duration, dismissible, closeButton, actionLabel, position, markedDelete, ...props }: RuiToastViewProps): import("@ecopages/jsx").JsxRenderable;
8
14
  export type RuiToasterViewProps = JsxHtmlPropsWithChildren<RuiToasterProps & {
9
15
  slot?: string;
10
16
  }>;
11
- export declare const RuiToaster: import("@/lib/radiant-view").RadiantViewComponent<RuiToasterViewProps>;
17
+ /**
18
+ * JSX helper around `<rui-toaster>`. Mount once at the app root and drive with
19
+ * `toast()`. See `RuiToasterElement` for the full contract.
20
+ */
21
+ export declare function RuiToaster({ children, position, duration, visibleToasts, closeButton, expand, gap, offset, container, ...props }: RuiToasterViewProps): import("@ecopages/jsx").JsxRenderable;