@ecopages/radiant-ui 0.1.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (254) hide show
  1. package/README.md +70 -0
  2. package/dist/components/ui/alert/alert.css +27 -0
  3. package/dist/components/ui/alert/alert.d.ts +4 -0
  4. package/dist/components/ui/alert/alert.script.d.ts +25 -0
  5. package/dist/components/ui/alert/index.d.ts +2 -0
  6. package/dist/components/ui/alert/index.js +2 -0
  7. package/dist/components/ui/alert/index.js.map +7 -0
  8. package/dist/components/ui/breadcrumb/breadcrumb.css +41 -0
  9. package/dist/components/ui/breadcrumb/breadcrumb.d.ts +59 -0
  10. package/dist/components/ui/breadcrumb/breadcrumb.script.d.ts +40 -0
  11. package/dist/components/ui/breadcrumb/index.d.ts +2 -0
  12. package/dist/components/ui/breadcrumb/index.js +2 -0
  13. package/dist/components/ui/breadcrumb/index.js.map +7 -0
  14. package/dist/components/ui/button/button.d.ts +37 -0
  15. package/dist/components/ui/button/index.d.ts +1 -0
  16. package/dist/components/ui/button/index.js +2 -0
  17. package/dist/components/ui/button/index.js.map +7 -0
  18. package/dist/components/ui/carousel/carousel.css +170 -0
  19. package/dist/components/ui/carousel/carousel.d.ts +39 -0
  20. package/dist/components/ui/carousel/carousel.script.d.ts +113 -0
  21. package/dist/components/ui/carousel/index.d.ts +2 -0
  22. package/dist/components/ui/carousel/index.js +2 -0
  23. package/dist/components/ui/carousel/index.js.map +7 -0
  24. package/dist/components/ui/checkbox/checkbox.css +55 -0
  25. package/dist/components/ui/checkbox/checkbox.d.ts +4 -0
  26. package/dist/components/ui/checkbox/checkbox.script.d.ts +58 -0
  27. package/dist/components/ui/checkbox/index.d.ts +2 -0
  28. package/dist/components/ui/checkbox/index.js +2 -0
  29. package/dist/components/ui/checkbox/index.js.map +7 -0
  30. package/dist/components/ui/combobox/combobox.css +65 -0
  31. package/dist/components/ui/combobox/combobox.d.ts +53 -0
  32. package/dist/components/ui/combobox/combobox.script.d.ts +89 -0
  33. package/dist/components/ui/combobox/index.d.ts +2 -0
  34. package/dist/components/ui/combobox/index.js +2 -0
  35. package/dist/components/ui/combobox/index.js.map +7 -0
  36. package/dist/components/ui/dialog/dialog-registry.d.ts +34 -0
  37. package/dist/components/ui/dialog/dialog-registry.test.d.ts +1 -0
  38. package/dist/components/ui/dialog/dialog-types.d.ts +55 -0
  39. package/dist/components/ui/dialog/dialog.css +53 -0
  40. package/dist/components/ui/dialog/dialog.d.ts +36 -0
  41. package/dist/components/ui/dialog/dialog.script.d.ts +61 -0
  42. package/dist/components/ui/dialog/index.d.ts +4 -0
  43. package/dist/components/ui/dialog/index.js +2 -0
  44. package/dist/components/ui/dialog/index.js.map +7 -0
  45. package/dist/components/ui/disclosure/disclosure-group.script.d.ts +31 -0
  46. package/dist/components/ui/disclosure/disclosure.css +105 -0
  47. package/dist/components/ui/disclosure/disclosure.d.ts +35 -0
  48. package/dist/components/ui/disclosure/disclosure.script.d.ts +38 -0
  49. package/dist/components/ui/disclosure/index.d.ts +3 -0
  50. package/dist/components/ui/disclosure/index.js +2 -0
  51. package/dist/components/ui/disclosure/index.js.map +7 -0
  52. package/dist/components/ui/feed/feed.css +14 -0
  53. package/dist/components/ui/feed/feed.d.ts +12 -0
  54. package/dist/components/ui/feed/feed.script.d.ts +22 -0
  55. package/dist/components/ui/feed/index.d.ts +2 -0
  56. package/dist/components/ui/feed/index.js +2 -0
  57. package/dist/components/ui/feed/index.js.map +7 -0
  58. package/dist/components/ui/field/field-context.d.ts +20 -0
  59. package/dist/components/ui/field/field-description.d.ts +8 -0
  60. package/dist/components/ui/field/field-error.d.ts +9 -0
  61. package/dist/components/ui/field/field-ssr-hydration.test.d.ts +1 -0
  62. package/dist/components/ui/field/field.css +26 -0
  63. package/dist/components/ui/field/field.d.ts +4 -0
  64. package/dist/components/ui/field/field.script.d.ts +68 -0
  65. package/dist/components/ui/field/index.d.ts +5 -0
  66. package/dist/components/ui/field/index.js +2 -0
  67. package/dist/components/ui/field/index.js.map +7 -0
  68. package/dist/components/ui/form/control-protocol.d.ts +19 -0
  69. package/dist/components/ui/form/form-context.d.ts +27 -0
  70. package/dist/components/ui/form/form-field.test.d.ts +3 -0
  71. package/dist/components/ui/form/form-store.d.ts +53 -0
  72. package/dist/components/ui/form/form-store.test.d.ts +1 -0
  73. package/dist/components/ui/form/form.css +12 -0
  74. package/dist/components/ui/form/form.d.ts +5 -0
  75. package/dist/components/ui/form/form.script.d.ts +67 -0
  76. package/dist/components/ui/form/index.d.ts +7 -0
  77. package/dist/components/ui/form/index.js +2 -0
  78. package/dist/components/ui/form/index.js.map +7 -0
  79. package/dist/components/ui/form/resolvers.d.ts +3 -0
  80. package/dist/components/ui/form/types.d.ts +72 -0
  81. package/dist/components/ui/grid/grid.css +47 -0
  82. package/dist/components/ui/grid/grid.d.ts +7 -0
  83. package/dist/components/ui/grid/grid.script.d.ts +26 -0
  84. package/dist/components/ui/grid/index.d.ts +2 -0
  85. package/dist/components/ui/grid/index.js +2 -0
  86. package/dist/components/ui/grid/index.js.map +7 -0
  87. package/dist/components/ui/input/index.d.ts +1 -0
  88. package/dist/components/ui/input/index.js +2 -0
  89. package/dist/components/ui/input/index.js.map +7 -0
  90. package/dist/components/ui/input/input.css +32 -0
  91. package/dist/components/ui/input/input.d.ts +23 -0
  92. package/dist/components/ui/label/index.d.ts +1 -0
  93. package/dist/components/ui/label/index.js +2 -0
  94. package/dist/components/ui/label/index.js.map +7 -0
  95. package/dist/components/ui/label/label.css +8 -0
  96. package/dist/components/ui/label/label.d.ts +9 -0
  97. package/dist/components/ui/listbox/index.d.ts +2 -0
  98. package/dist/components/ui/listbox/index.js +2 -0
  99. package/dist/components/ui/listbox/index.js.map +7 -0
  100. package/dist/components/ui/listbox/listbox.css +23 -0
  101. package/dist/components/ui/listbox/listbox.d.ts +12 -0
  102. package/dist/components/ui/listbox/listbox.script.d.ts +40 -0
  103. package/dist/components/ui/menu-button/index.d.ts +2 -0
  104. package/dist/components/ui/menu-button/index.js +2 -0
  105. package/dist/components/ui/menu-button/index.js.map +7 -0
  106. package/dist/components/ui/menu-button/menu-button.css +43 -0
  107. package/dist/components/ui/menu-button/menu-button.d.ts +13 -0
  108. package/dist/components/ui/menu-button/menu-button.script.d.ts +64 -0
  109. package/dist/components/ui/menubar/index.d.ts +2 -0
  110. package/dist/components/ui/menubar/index.js +2 -0
  111. package/dist/components/ui/menubar/index.js.map +7 -0
  112. package/dist/components/ui/menubar/menubar.css +45 -0
  113. package/dist/components/ui/menubar/menubar.d.ts +16 -0
  114. package/dist/components/ui/menubar/menubar.script.d.ts +52 -0
  115. package/dist/components/ui/meter/index.d.ts +2 -0
  116. package/dist/components/ui/meter/index.js +2 -0
  117. package/dist/components/ui/meter/index.js.map +7 -0
  118. package/dist/components/ui/meter/meter.css +17 -0
  119. package/dist/components/ui/meter/meter.d.ts +4 -0
  120. package/dist/components/ui/meter/meter.script.d.ts +33 -0
  121. package/dist/components/ui/navigation-menu/index.d.ts +2 -0
  122. package/dist/components/ui/navigation-menu/index.js +2 -0
  123. package/dist/components/ui/navigation-menu/index.js.map +7 -0
  124. package/dist/components/ui/navigation-menu/navigation-menu.css +90 -0
  125. package/dist/components/ui/navigation-menu/navigation-menu.d.ts +28 -0
  126. package/dist/components/ui/navigation-menu/navigation-menu.script.d.ts +49 -0
  127. package/dist/components/ui/radio-group/index.d.ts +2 -0
  128. package/dist/components/ui/radio-group/index.js +2 -0
  129. package/dist/components/ui/radio-group/index.js.map +7 -0
  130. package/dist/components/ui/radio-group/radio-group.css +44 -0
  131. package/dist/components/ui/radio-group/radio-group.d.ts +12 -0
  132. package/dist/components/ui/radio-group/radio-group.script.d.ts +52 -0
  133. package/dist/components/ui/sidebar/index.d.ts +3 -0
  134. package/dist/components/ui/sidebar/index.js +2 -0
  135. package/dist/components/ui/sidebar/index.js.map +7 -0
  136. package/dist/components/ui/sidebar/sidebar-trigger.script.d.ts +53 -0
  137. package/dist/components/ui/sidebar/sidebar.css +362 -0
  138. package/dist/components/ui/sidebar/sidebar.d.ts +141 -0
  139. package/dist/components/ui/sidebar/sidebar.script.d.ts +140 -0
  140. package/dist/components/ui/sidebar/sidebar.test.d.ts +1 -0
  141. package/dist/components/ui/slider/index.d.ts +2 -0
  142. package/dist/components/ui/slider/index.js +2 -0
  143. package/dist/components/ui/slider/index.js.map +7 -0
  144. package/dist/components/ui/slider/slider.css +51 -0
  145. package/dist/components/ui/slider/slider.d.ts +7 -0
  146. package/dist/components/ui/slider/slider.script.d.ts +102 -0
  147. package/dist/components/ui/spinbutton/index.d.ts +2 -0
  148. package/dist/components/ui/spinbutton/index.js +2 -0
  149. package/dist/components/ui/spinbutton/index.js.map +7 -0
  150. package/dist/components/ui/spinbutton/spinbutton.css +19 -0
  151. package/dist/components/ui/spinbutton/spinbutton.d.ts +4 -0
  152. package/dist/components/ui/spinbutton/spinbutton.script.d.ts +64 -0
  153. package/dist/components/ui/switch/index.d.ts +2 -0
  154. package/dist/components/ui/switch/index.js +2 -0
  155. package/dist/components/ui/switch/index.js.map +7 -0
  156. package/dist/components/ui/switch/switch.css +47 -0
  157. package/dist/components/ui/switch/switch.d.ts +4 -0
  158. package/dist/components/ui/switch/switch.script.d.ts +51 -0
  159. package/dist/components/ui/tabs/index.d.ts +2 -0
  160. package/dist/components/ui/tabs/index.js +2 -0
  161. package/dist/components/ui/tabs/index.js.map +7 -0
  162. package/dist/components/ui/tabs/tabs.css +28 -0
  163. package/dist/components/ui/tabs/tabs.d.ts +12 -0
  164. package/dist/components/ui/tabs/tabs.script.d.ts +54 -0
  165. package/dist/components/ui/textarea/index.d.ts +1 -0
  166. package/dist/components/ui/textarea/index.js +2 -0
  167. package/dist/components/ui/textarea/index.js.map +7 -0
  168. package/dist/components/ui/textarea/textarea.css +33 -0
  169. package/dist/components/ui/textarea/textarea.d.ts +23 -0
  170. package/dist/components/ui/toast/index.d.ts +5 -0
  171. package/dist/components/ui/toast/index.js +2 -0
  172. package/dist/components/ui/toast/index.js.map +7 -0
  173. package/dist/components/ui/toast/toast-api.d.ts +29 -0
  174. package/dist/components/ui/toast/toast-context.d.ts +59 -0
  175. package/dist/components/ui/toast/toast-state.d.ts +25 -0
  176. package/dist/components/ui/toast/toast.css +315 -0
  177. package/dist/components/ui/toast/toast.d.ts +8 -0
  178. package/dist/components/ui/toast/toast.script.d.ts +91 -0
  179. package/dist/components/ui/toast/toast.test.d.ts +2 -0
  180. package/dist/components/ui/toast/toaster.script.d.ts +79 -0
  181. package/dist/components/ui/toolbar/index.d.ts +2 -0
  182. package/dist/components/ui/toolbar/index.js +2 -0
  183. package/dist/components/ui/toolbar/index.js.map +7 -0
  184. package/dist/components/ui/toolbar/toolbar.css +16 -0
  185. package/dist/components/ui/toolbar/toolbar.d.ts +4 -0
  186. package/dist/components/ui/toolbar/toolbar.script.d.ts +30 -0
  187. package/dist/components/ui/tooltip/index.d.ts +2 -0
  188. package/dist/components/ui/tooltip/index.js +2 -0
  189. package/dist/components/ui/tooltip/index.js.map +7 -0
  190. package/dist/components/ui/tooltip/tooltip.css +25 -0
  191. package/dist/components/ui/tooltip/tooltip.d.ts +4 -0
  192. package/dist/components/ui/tooltip/tooltip.script.d.ts +70 -0
  193. package/dist/components/ui/tree/index.d.ts +2 -0
  194. package/dist/components/ui/tree/index.js +2 -0
  195. package/dist/components/ui/tree/index.js.map +7 -0
  196. package/dist/components/ui/tree/tree.css +54 -0
  197. package/dist/components/ui/tree/tree.d.ts +13 -0
  198. package/dist/components/ui/tree/tree.script.d.ts +45 -0
  199. package/dist/components/ui/treegrid/index.d.ts +2 -0
  200. package/dist/components/ui/treegrid/index.js +2 -0
  201. package/dist/components/ui/treegrid/index.js.map +7 -0
  202. package/dist/components/ui/treegrid/treegrid.css +77 -0
  203. package/dist/components/ui/treegrid/treegrid.d.ts +14 -0
  204. package/dist/components/ui/treegrid/treegrid.script.d.ts +49 -0
  205. package/dist/components/ui/window-splitter/index.d.ts +2 -0
  206. package/dist/components/ui/window-splitter/index.js +2 -0
  207. package/dist/components/ui/window-splitter/index.js.map +7 -0
  208. package/dist/components/ui/window-splitter/window-splitter.css +35 -0
  209. package/dist/components/ui/window-splitter/window-splitter.d.ts +8 -0
  210. package/dist/components/ui/window-splitter/window-splitter.script.d.ts +49 -0
  211. package/dist/index.d.ts +36 -0
  212. package/dist/index.js +2 -0
  213. package/dist/index.js.map +7 -0
  214. package/dist/lib/focusable-elements.d.ts +2 -0
  215. package/dist/lib/radiant-view.d.ts +17 -0
  216. package/dist/lib/roving-tabindex.d.ts +27 -0
  217. package/dist/styles/components/button.css +115 -0
  218. package/dist/styles/radiant-ui-core.css +7 -0
  219. package/dist/styles/radiant-ui.css +10 -0
  220. package/dist/styles/styles.css +36 -0
  221. package/dist/styles/tailwind.css +41 -0
  222. package/dist/styles/themes/aurora.css +19 -0
  223. package/dist/styles/themes/default-compact-soft.css +19 -0
  224. package/dist/styles/themes/default.css +2 -0
  225. package/dist/styles/themes/glacier.css +19 -0
  226. package/dist/styles/tokens/colors/aurora.css +73 -0
  227. package/dist/styles/tokens/colors/basalt.css +36 -0
  228. package/dist/styles/tokens/colors/glacier.css +45 -0
  229. package/dist/styles/tokens/colors/palettes.css +3 -0
  230. package/dist/styles/tokens/elevation/default.css +22 -0
  231. package/dist/styles/tokens/elevation/flat.css +22 -0
  232. package/dist/styles/tokens/motion/default.css +19 -0
  233. package/dist/styles/tokens/motion/snappy.css +19 -0
  234. package/dist/styles/tokens/presets/colors/aurora.css +126 -0
  235. package/dist/styles/tokens/presets/colors/basalt.css +126 -0
  236. package/dist/styles/tokens/presets/colors/ember.css +134 -0
  237. package/dist/styles/tokens/presets/colors/glacier.css +130 -0
  238. package/dist/styles/tokens/presets/colors/index.css +4 -0
  239. package/dist/styles/tokens/presets/radius.css +45 -0
  240. package/dist/styles/tokens/presets/spacing.css +57 -0
  241. package/dist/styles/tokens/radius/default.css +34 -0
  242. package/dist/styles/tokens/radius/edgy.css +35 -0
  243. package/dist/styles/tokens/radius/sharp.css +2 -0
  244. package/dist/styles/tokens/radius/soft.css +34 -0
  245. package/dist/styles/tokens/semantic.css +80 -0
  246. package/dist/styles/tokens/spacing/compact.css +23 -0
  247. package/dist/styles/tokens/spacing/default.css +23 -0
  248. package/dist/styles/tokens/spacing/scale-bridge.css +17 -0
  249. package/dist/styles/tokens/spacing/wide.css +23 -0
  250. package/dist/styles/tokens/system.css +36 -0
  251. package/dist/styles/tokens/typography/default.css +37 -0
  252. package/dist/styles/utilities/sheen.css +7 -0
  253. package/dist/types.d.ts +14 -0
  254. package/package.json +371 -0
package/dist/index.js ADDED
@@ -0,0 +1,2 @@
1
+ import{RadiantElement as or,customElement as nr,prop as ar}from"@ecopages/radiant";var W=@nr("rui-alert")class extends or{@ar({type:String,reflect:!0,defaultValue:"info"})variant;render(){return React.createElement("div",{class:`rui-alert rui-alert--${this.variant??"info"}`,role:"alert"},React.createElement("slot",null))}};var sr=Symbol.for("@ecopages/storybook-radiant.viewElement"),Jt=Symbol.for("@ecopages/storybook-radiant.scriptModule"),Gt=Symbol.for("@ecopages/storybook-radiant.scriptExport");function lr(r,e){r[sr]=e;let t=e[Jt];t&&(r[Jt]=t,r[Gt]=e[Gt]??e.name)}function u(r,e){let t=(i=>e(i));return lr(t,r),t}import"./alert.css";var ur=u(W,({slot:r,variant:e,children:t})=>React.createElement("rui-alert",{slot:r,variant:e},t));import{RadiantElement as dr,customElement as pr,prop as zt}from"@ecopages/radiant";var J=@pr("rui-breadcrumb")class extends dr{@zt({type:String,defaultValue:"Breadcrumb"})label;@zt({type:String,defaultValue:"/"})separator;resolvedAriaLabel=this.$.label.map(e=>e||"Breadcrumb");separatorStyle=this.$.separator.map(e=>({"--rui-breadcrumb-separator":JSON.stringify(e||"/")}));render(){return React.createElement("nav",{class:"rui-breadcrumb","aria-label":this.resolvedAriaLabel,style:this.separatorStyle},React.createElement("slot",null))}};import"./breadcrumb.css";function O(...r){return r.filter(Boolean).join(" ")}var cr=u(J,({slot:r,label:e,separator:t,class:i,children:o})=>React.createElement("rui-breadcrumb",{slot:r,class:i,label:e,separator:t},o));function mr({children:r,class:e}){return React.createElement("ol",{class:O("rui-breadcrumb__list",e)},r)}function hr({children:r,class:e}){return React.createElement("li",{class:O("rui-breadcrumb__item",e)},r)}function br({href:r,children:e,class:t,"aria-label":i}){return React.createElement("a",{class:O("rui-breadcrumb__link",t),href:r,"aria-label":i},e)}function fr({children:r,class:e}){return React.createElement("span",{class:O("rui-breadcrumb__page",e),"aria-current":"page"},r)}function gr({children:r,class:e}){return React.createElement("li",{class:O("rui-breadcrumb__separator",e),role:"presentation","aria-hidden":"true"},r)}function vr({class:r,label:e="More"}){return React.createElement("span",{class:O("rui-breadcrumb__ellipsis",r),role:"presentation","aria-hidden":"true"},React.createElement("span",{"aria-hidden":"true"},"\u2026"),React.createElement("span",{class:"rui-breadcrumb__ellipsis-label"},e))}function yr(...r){return r.filter(Boolean).join(" ")}function Rr(r,e,t){if(r!==void 0)return r;if(e)return t}function at({variant:r="filled",size:e="md",type:t="button",disabled:i,pressed:o,defaultPressed:n=!1,toggle:a=!1,class:s,slot:l,children:c,"on:click":p,...d}){let m=h=>{if(a&&o===void 0){let f=h.currentTarget,Ne=f.getAttribute("aria-pressed")!=="true";f.setAttribute("aria-pressed",String(Ne))}p?.(h)};return React.createElement("button",{type:t,slot:l,class:yr("rui-button",`rui-button--${r}`,`rui-button--${e}`,s),disabled:i,"aria-pressed":Rr(o,a,n),"data-toggle":a&&o===void 0?"":void 0,"on:click":a||p?m:void 0,...d},c)}import{RadiantElement as xr,customElement as Tr,onEvent as x,onUpdated as st,prop as T}from"@ecopages/radiant";var Er=48,G=@Tr("rui-carousel")class extends xr{@T({type:String,defaultValue:"Carousel"})label;@T({type:Number,reflect:!0,defaultValue:0})index;@T({type:Boolean,reflect:!0,defaultValue:!1})autoplay;@T({type:Number,defaultValue:4e3})interval;@T({type:String,defaultValue:"none"})transition;@T({type:String,defaultValue:"toolbar",attribute:"controls-variant"})controlsVariant;@T({type:Boolean,defaultValue:!1})showIndicators;@T({type:Boolean,defaultValue:!1})showRotationControl;@T({type:Boolean,defaultValue:!0})loop;@T({type:Boolean,defaultValue:!0})wrap;@T({type:Number,defaultValue:0})slideCount;timer=null;paused=!1;userOverrideReducedMotion=!1;swipePointerId=null;swipeStartX=0;swipeStartY=0;connectedCallback(){super.connectedCallback(),queueMicrotask(()=>{this.autoplay&&this.prefersReducedMotion()&&(this.paused=!0),this.sync(),this.syncAutoplay(),this.syncIndicators(),this.syncAriaLive()})}disconnectedCallback(){this.stop(),super.disconnectedCallback()}@st(["index","transition","loop","wrap","controlsVariant"])onSlideStateUpdated(){this.sync(),this.syncIndicators(),this.syncAutoplay()}@st(["autoplay","showRotationControl","interval"])onAutoplayUpdated(){this.syncAutoplay(),this.syncRotationControl()}@st(["showIndicators"])onIndicatorsUpdated(){this.syncIndicators()}prefersReducedMotion(){return typeof window<"u"&&typeof window.matchMedia=="function"&&window.matchMedia("(prefers-reduced-motion: reduce)").matches}getCarouselId(){return this.id||"rui-carousel"}slidePanelId(e,t){let i=e.getAttribute("data-slide")??String(t),o=`${this.getCarouselId()}-panel-${i}`;return e.id=o,o}tabId(e){return`${this.getCarouselId()}-tab-${e}`}shouldShowRotationControl(){return this.autoplay||this.showRotationControl}syncSlideAccessibility(e,t){let i=e.length;e.forEach((o,n)=>{let a=n===t,s=`${n+1} of ${i}`;this.showIndicators?(this.slidePanelId(o,n),o.setAttribute("role","tabpanel"),o.setAttribute("aria-labelledby",this.tabId(n)),o.setAttribute("aria-label",s),o.removeAttribute("aria-roledescription")):(o.setAttribute("role","group"),o.setAttribute("aria-roledescription","slide"),o.setAttribute("aria-label",s),o.removeAttribute("aria-labelledby"),o.removeAttribute("tabindex")),this.transition==="none"?o.hidden=!a:o.hidden=!1,o.setAttribute("aria-hidden",String(!a)),o.setAttribute("data-active",a?"true":"false")})}getSlides(){return Array.from(this.querySelectorAll("[data-slide]"))}get shouldWrap(){return this.wrap&&this.loop}normalizeIndex(e,t){return t<=0?0:this.shouldWrap?(e%t+t)%t:Math.min(Math.max(e,0),t-1)}sync(){let e=this.getSlides();if(!e.length)return;let t=this.normalizeIndex(this.index,e.length);t!==this.index&&(this.index=t);let i=this.querySelector(".rui-carousel__track");i&&this.transition==="slide"&&i.style.setProperty("--rui-carousel-index",String(t)),this.syncSlideAccessibility(e,t),this.syncPrevNextDisabled(e.length,t)}syncPrevNextDisabled(e,t){let i=!this.shouldWrap&&e>0&&t<=0,o=!this.shouldWrap&&e>0&&t>=e-1;for(let n of this.querySelectorAll('[data-carousel-action="prev"]'))this.shouldWrap?n.removeAttribute("disabled"):n.disabled=i;for(let n of this.querySelectorAll('[data-carousel-action="next"]'))this.shouldWrap?n.removeAttribute("disabled"):n.disabled=o}syncIndicators(){let e=this.querySelector('[data-ref="indicators"]');if(!e)return;let t=this.getSlides(),i=this.normalizeIndex(this.index,t.length);Array.from(e.querySelectorAll("[data-carousel-indicator]")).length!==t.length&&e.replaceChildren(...t.map((a,s)=>{let l=document.createElement("button");return l.type="button",l.className="rui-carousel__indicator",l.id=this.tabId(s),l.setAttribute("role","tab"),l.setAttribute("data-carousel-indicator",String(s)),l.setAttribute("aria-controls",this.slidePanelId(a,s)),l.setAttribute("aria-label",`Slide ${s+1}`),l})),Array.from(e.querySelectorAll("[data-carousel-indicator]")).forEach((a,s)=>{let l=s===i,c=t[s];c&&(a.id=this.tabId(s),a.setAttribute("aria-controls",this.slidePanelId(c,s))),a.setAttribute("aria-selected",String(l)),a.tabIndex=l?0:-1})}syncRotationControl(){for(let e of this.querySelectorAll('[data-carousel-action="rotation"]')){let t=this.autoplay&&!this.paused;e.setAttribute("aria-pressed",String(t)),e.setAttribute("aria-label",t?"Pause rotation":"Start rotation")}}syncAriaLive(){let e=this.querySelector('[data-ref="viewport"]');if(!e)return;let t=this.autoplay&&!this.paused&&this.timer!==null;e.setAttribute("aria-live",t?"off":"polite"),e.setAttribute("aria-atomic","false")}canAutoplayRotate(){return!(!this.autoplay||this.paused||this.prefersReducedMotion()&&!this.userOverrideReducedMotion)}syncAutoplay(){this.canAutoplayRotate()?this.start():this.stop(),this.syncRotationControl(),this.syncAriaLive()}start(){let e=this.getSlides();if(!e.length)return;if(!this.shouldWrap&&this.index>=e.length-1){this.stop();return}this.stop();let t=Math.max(0,this.interval);this.timer=setInterval(()=>{let i=this.getSlides();if(i.length){if(!this.shouldWrap&&this.index>=i.length-1){this.stop(),this.syncAriaLive();return}this.goTo(this.index+1)}},t),this.syncAriaLive()}stop(){this.timer&&clearInterval(this.timer),this.timer=null,this.syncAriaLive()}goTo(e){let t=this.getSlides();t.length&&(this.index=this.normalizeIndex(e,t.length),this.sync(),this.syncIndicators())}userNavigate(e){this.paused=!0,this.stop(),this.goTo(this.index+e)}isSwipeExcludedTarget(e){return e instanceof Element?!!e.closest("button, a, input, textarea, select, [data-carousel-indicator], [data-carousel-action]"):!1}@x({selector:'[data-carousel-action="prev"]',type:"click"})prev(){this.userNavigate(-1)}@x({selector:'[data-carousel-action="next"]',type:"click"})next(){this.userNavigate(1)}@x({selector:'[data-carousel-action="rotation"]',type:"click"})toggleRotation(){this.autoplay?(this.paused=!this.paused,this.paused||(this.userOverrideReducedMotion=!0)):(this.autoplay=!0,this.paused=!1,this.userOverrideReducedMotion=!0),this.syncAutoplay()}@x({selector:"[data-carousel-indicator]",type:"click"})onIndicatorClick(e){let t=e.target.closest("[data-carousel-indicator]");if(!t)return;let i=Number(t.getAttribute("data-carousel-indicator"));Number.isFinite(i)&&(this.paused=!0,this.stop(),this.goTo(i),t.focus())}@x({selector:"[data-carousel-indicator]",type:"keydown"})onIndicatorKeydown(e){let t=this.getSlides();if(!t.length)return;let i=e.target.closest("[data-carousel-indicator]");if(!i)return;let o=Number(i.getAttribute("data-carousel-indicator"));if(!Number.isFinite(o))return;if(e.key==="ArrowRight")o=this.normalizeIndex(o+1,t.length);else if(e.key==="ArrowLeft")o=this.normalizeIndex(o-1,t.length);else if(e.key==="Home")o=0;else if(e.key==="End")o=t.length-1;else if(e.key===" "||e.key==="Enter"){e.preventDefault(),this.paused=!0,this.stop(),this.goTo(o);return}else return;e.preventDefault(),this.paused=!0,this.stop(),this.goTo(o),Array.from(this.querySelectorAll('[data-ref="indicators"] [data-carousel-indicator]'))[o]?.focus()}@x({ref:"root",type:"pointerenter"})onRootPointerEnter(e){this.autoplay&&e.pointerType==="mouse"&&this.stop()}@x({ref:"root",type:"pointerleave"})onRootPointerLeave(e){this.autoplay&&!this.paused&&e.pointerType==="mouse"&&this.syncAutoplay()}@x({ref:"root",type:"focusin"})onRootFocusIn(){this.autoplay&&this.stop()}@x({ref:"root",type:"focusout"})onRootFocusOut(e){let t=e.relatedTarget;t&&this.contains(t)||this.autoplay&&!this.paused&&this.syncAutoplay()}@x({ref:"viewport",type:"pointerdown"})onViewportPointerDown(e){e.button!==0||this.isSwipeExcludedTarget(e.target)||(this.swipePointerId=e.pointerId,this.swipeStartX=e.clientX,this.swipeStartY=e.clientY)}@x({ref:"viewport",type:"pointermove"})onViewportPointerMove(e){this.swipePointerId,e.pointerId}@x({ref:"viewport",type:"pointerup"})onViewportPointerUp(e){if(this.swipePointerId!==e.pointerId)return;let t=e.clientX-this.swipeStartX,i=e.clientY-this.swipeStartY;this.swipePointerId=null,!(Math.abs(t)<Er||Math.abs(t)<=Math.abs(i))&&(t<0?this.next():this.prev())}@x({ref:"viewport",type:"pointercancel"})onViewportPointerCancel(e){this.swipePointerId===e.pointerId&&(this.swipePointerId=null)}render(){let e=this.shouldShowRotationControl(),t=Math.max(this.getSlides().length,this.slideCount),i=this.normalizeIndex(this.index,t||1),o=!this.shouldWrap&&t>0&&i<=0,n=!this.shouldWrap&&t>0&&i>=t-1,a=this.autoplay&&!this.paused,s=a&&this.timer!==null?"off":"polite",l=this.controlsVariant==="overlay";queueMicrotask(()=>{this.sync(),this.syncIndicators(),this.syncRotationControl(),this.syncAriaLive()});let c=React.createElement("slot",{name:"prev"},React.createElement("button",{type:"button","data-carousel-action":"prev","data-ref":"prev",class:`rui-carousel__nav rui-button rui-button--outline rui-button--sm${l?" rui-carousel__nav--overlay":" rui-carousel__nav--toolbar"}`,"aria-label":"Previous slide",disabled:o},l?React.createElement("span",{class:"rui-carousel__nav-icon","aria-hidden":"true"},"\u2039"):React.createElement("span",{class:"rui-carousel__nav-label"},React.createElement("span",{class:"rui-carousel__nav-icon","aria-hidden":"true"},"\u2039"),"Previous"))),p=React.createElement("slot",{name:"next"},React.createElement("button",{type:"button","data-carousel-action":"next","data-ref":"next",class:`rui-carousel__nav rui-button rui-button--outline rui-button--sm${l?" rui-carousel__nav--overlay":" rui-carousel__nav--toolbar"}`,"aria-label":"Next slide",disabled:n},l?React.createElement("span",{class:"rui-carousel__nav-icon","aria-hidden":"true"},"\u203A"):React.createElement("span",{class:"rui-carousel__nav-label"},"Next",React.createElement("span",{class:"rui-carousel__nav-icon","aria-hidden":"true"},"\u203A")))),d=e?React.createElement("slot",{name:"rotation"},React.createElement("button",{type:"button","data-carousel-action":"rotation","data-ref":"rotation",class:`rui-carousel__rotation rui-button rui-button--ghost rui-button--sm${l?" rui-carousel__rotation--overlay":""}`,"aria-pressed":a,"aria-label":a?"Pause rotation":"Start rotation"},a?"Pause":"Play")):null,m=this.showIndicators?React.createElement("div",{class:`rui-carousel__indicators${l?" rui-carousel__indicators--overlay":""}`,"data-ref":"indicators",role:"tablist","aria-label":"Choose slide to display"}):null,h=React.createElement("div",{class:"rui-carousel__toolbar"},e?React.createElement("div",{class:"rui-carousel__toolbar-rotation"},d):null,React.createElement("div",{class:"rui-carousel__toolbar-side rui-carousel__toolbar-side--start"},c),React.createElement("div",{class:"rui-carousel__toolbar-center"},m),React.createElement("div",{class:"rui-carousel__toolbar-side rui-carousel__toolbar-side--end"},p)),f=l?React.createElement("div",{class:"rui-carousel__overlay-chrome"},e?React.createElement("div",{class:"rui-carousel__overlay-rotation"},d):null,React.createElement("div",{class:"rui-carousel__controls rui-carousel__controls--overlay"},c,p),m):null;return React.createElement("section",{class:`rui-carousel rui-carousel--${this.transition} rui-carousel--controls-${this.controlsVariant}`,"data-ref":"root","aria-roledescription":"carousel","aria-label":this.$.label},React.createElement("div",{class:"rui-carousel__stage"},React.createElement("div",{class:"rui-carousel__viewport","data-ref":"viewport","aria-live":s,"aria-atomic":!1},React.createElement("div",{class:"rui-carousel__track",style:this.transition==="slide"?{"--rui-carousel-index":String(this.index)}:void 0},React.createElement("slot",null)),f)),l?null:React.createElement("div",{class:"rui-carousel__footer"},h))}};import"./carousel.css";function Ue(...r){return r.filter(Boolean).join(" ")}function Kt({id:r,children:e,class:t}){return React.createElement("div",{class:Ue("rui-carousel__slide",t),"data-slide":r},e)}function Sr(){return React.createElement("span",{class:"rui-carousel__nav-label"},React.createElement("span",{class:"rui-carousel__nav-icon","aria-hidden":"true"},"\u2039"),"Previous")}function Pr(){return React.createElement("span",{class:"rui-carousel__nav-label"},"Next",React.createElement("span",{class:"rui-carousel__nav-icon","aria-hidden":"true"},"\u203A"))}function Mr({slot:r="prev",children:e,class:t,disabled:i,overlay:o}){return React.createElement("button",{slot:r,type:"button","data-carousel-action":"prev","data-ref":"prev",class:Ue("rui-carousel__nav rui-button rui-button--outline rui-button--sm",o?"rui-carousel__nav--overlay":"rui-carousel__nav--toolbar",t),"aria-label":"Previous slide",disabled:i},e??(o?React.createElement("span",{class:"rui-carousel__nav-icon","aria-hidden":"true"},"\u2039"):Sr()))}function Ar({slot:r="next",children:e,class:t,disabled:i,overlay:o}){return React.createElement("button",{slot:r,type:"button","data-carousel-action":"next","data-ref":"next",class:Ue("rui-carousel__nav rui-button rui-button--outline rui-button--sm",o?"rui-carousel__nav--overlay":"rui-carousel__nav--toolbar",t),"aria-label":"Next slide",disabled:i},e??(o?React.createElement("span",{class:"rui-carousel__nav-icon","aria-hidden":"true"},"\u203A"):Pr()))}function Lr({slot:r="rotation",children:e,class:t,overlay:i}){return React.createElement("button",{slot:r,type:"button","data-carousel-action":"rotation","data-ref":"rotation",class:Ue("rui-carousel__rotation rui-button rui-button--ghost rui-button--sm",i&&"rui-carousel__rotation--overlay",t),"aria-pressed":!1,"aria-label":"Start rotation"},e??"Play")}var wr=u(G,({slot:r,label:e,index:t,autoplay:i,interval:o,transition:n,controlsVariant:a,showIndicators:s,showRotationControl:l,loop:c,wrap:p,slides:d,children:m})=>{if(m!=null)return React.createElement("rui-carousel",{slot:r,label:e,index:t,autoplay:i,interval:o,transition:n,controlsVariant:a,showIndicators:s,showRotationControl:l,loop:c,wrap:p},m);let h=d??[];return React.createElement("rui-carousel",{slot:r,label:e,index:t,autoplay:i,interval:o,transition:n,controlsVariant:a,showIndicators:s,showRotationControl:l,loop:c,wrap:p,slideCount:h.length},h.map(f=>React.createElement(Kt,{id:f.id},f.children)))});import{RadiantElement as Cr,customElement as Dr,event as _r,onEvent as Ir,prop as z}from"@ecopages/radiant";var K=@Dr("rui-checkbox")class extends Cr{@z({type:Boolean,reflect:!0,defaultValue:!1})checked;@z({type:Boolean,reflect:!0,defaultValue:!1})indeterminate;@z({type:Boolean,reflect:!0,defaultValue:!1})disabled;@z({type:String,defaultValue:"on"})value;@z({type:String,defaultValue:""})name;@_r({name:"rui-change",bubbles:!0,composed:!0})changeEvent;nameAttr=this.$.name.map(e=>e||void 0);resolvedAriaChecked=this.$.indeterminate.map(e=>e?"mixed":void 0);@Ir({ref:"input",type:"change"})onInputChange(e){let t=e.target;this.indeterminate=!1,this.checked=t.checked,this.changeEvent.emit({checked:this.checked,indeterminate:!1})}render(){return React.createElement("label",{class:"rui-checkbox"},React.createElement("input",{type:"checkbox","data-ref":"input","data-rui-control":!0,"data-rui-control-type":"boolean",class:"rui-checkbox__input","prop:checked":this.$.checked,disabled:this.$.disabled,"prop:value":this.$.value,name:this.nameAttr,"prop:indeterminate":this.$.indeterminate,"aria-checked":this.resolvedAriaChecked}),React.createElement("span",{class:"rui-checkbox__control","aria-hidden":"true"}),React.createElement("span",{class:"rui-checkbox__label"},React.createElement("slot",null)))}};import"./checkbox.css";var Vr=u(K,({slot:r,checked:e,indeterminate:t,disabled:i,value:o,name:n,children:a})=>React.createElement("rui-checkbox",{slot:r,checked:e,indeterminate:t,disabled:i,value:o,name:n},a));import{RadiantElement as kr,customElement as Fr,event as Or,onEvent as L,onUpdated as Hr,prop as j}from"@ecopages/radiant";var X=@Fr("rui-combobox")class extends kr{@j({type:String,reflect:!0,defaultValue:""})value;@j({type:String,defaultValue:""})label;@j({type:String,defaultValue:""})placeholder;@j({type:Boolean,reflect:!0,defaultValue:!1})disabled;@j({type:Boolean,reflect:!0,defaultValue:!1})openOnFocus;@Or({name:"rui-change",bubbles:!0,composed:!0})changeEvent;open=!1;listboxHasVisualFocus=!1;activeIndex=-1;skipNextFocusOpen=!1;uid=Math.random().toString(36).slice(2,9);get listboxId(){return`rui-combobox-list-${this.uid}`}get inputId(){return`rui-combobox-input-${this.uid}`}getInput(){return this.querySelector("[data-combobox-input]")}getTrigger(){return this.querySelector("[data-combobox-trigger]")}getListbox(){return this.querySelector("[data-combobox-listbox]")}getOptions(){let e=this.getListbox();return e?Array.from(e.querySelectorAll("[data-combobox-option]")):[]}getVisibleOptions(){return this.getOptions().filter(e=>!e.hidden&&e.getAttribute("aria-disabled")!=="true")}getOptionLabel(e){return e.getAttribute("data-label")||e.textContent?.trim()||""}ensureOptionIds(){this.getOptions().forEach((e,t)=>{e.id||(e.id=`rui-combobox-option-${this.uid}-${t}`)})}getAccessibleName(){return this.findAssociatedLabel()?.textContent?.trim()||this.label||"Suggestions"}isComboboxInput(e){return e instanceof HTMLInputElement&&e.hasAttribute("data-combobox-input")}findAssociatedLabel(){let e=this.previousElementSibling;if(e instanceof HTMLLabelElement)return e;let t=this.parentElement;if(t){let i=t.querySelector("[data-rui-field-label], label.rui-label");if(i)return i}return null}syncLabel(){let e=this.getInput();if(!e||e.hasAttribute("data-rui-field-managed"))return;let t=this.findAssociatedLabel();if(t){t.id||(t.id=`rui-combobox-label-${this.uid}`),t.htmlFor||(t.htmlFor=this.inputId),e.setAttribute("aria-labelledby",t.id),e.removeAttribute("aria-label");return}if(this.label){e.setAttribute("aria-label",this.label),e.removeAttribute("aria-labelledby");return}e.removeAttribute("aria-label"),e.removeAttribute("aria-labelledby")}syncTrigger(){let e=this.getTrigger(),t=this.getListbox();!e||!t||(e.setAttribute("aria-expanded",String(this.open)),e.setAttribute("aria-controls",t.id||this.listboxId),e.tabIndex=-1,this.disabled&&(e.disabled=!0))}syncInput(){let e=this.getInput(),t=this.getListbox();!e||!t||(e.id||(e.id=this.inputId),t.id||(t.id=this.listboxId),e.setAttribute("role","combobox"),e.setAttribute("aria-haspopup","listbox"),e.setAttribute("aria-autocomplete","list"),e.setAttribute("aria-expanded",String(this.open)),e.setAttribute("aria-controls",this.listboxId),t.setAttribute("role","listbox"),t.setAttribute("aria-label",this.getAccessibleName()),this.placeholder&&!e.placeholder&&(e.placeholder=this.placeholder),this.disabled&&(e.disabled=!0),this.syncTrigger())}clearActiveOption(){this.activeIndex=-1,this.listboxHasVisualFocus=!1,this.getInput()?.removeAttribute("aria-activedescendant");for(let t of this.getOptions())t.removeAttribute("data-active"),t.removeAttribute("aria-selected")}setActiveOption(e){let t=this.getVisibleOptions();if(e<0||e>=t.length){this.clearActiveOption();return}this.activeIndex=e,this.listboxHasVisualFocus=!0;for(let n of this.getOptions())n.removeAttribute("data-active"),n.removeAttribute("aria-selected");let i=t[e],o=this.getInput();!i||!o||(i.id||(i.id=`rui-combobox-option-${this.uid}-${e}`),i.setAttribute("data-active","true"),i.setAttribute("aria-selected","true"),o.setAttribute("aria-activedescendant",i.id),i.scrollIntoView({block:"nearest"}))}setVisualFocusCombobox(){this.clearActiveOption()}setOpen(e,t={}){let i=t.activate??"none";this.open=e;let o=this.getInput(),n=this.getListbox();if(!(!o||!n)){if(o.setAttribute("aria-expanded",String(e)),n.hidden=!e,this.syncTrigger(),!e){this.clearActiveOption();return}if(this.ensureOptionIds(),i==="first"){let a=this.getVisibleOptions();this.setActiveOption(a.length?0:-1);return}if(i==="last"){let a=this.getVisibleOptions();this.setActiveOption(a.length?a.length-1:-1);return}this.clearActiveOption()}}filterOptions(e){let t=e.trim().toLowerCase();for(let i of this.getOptions()){let o=this.getOptionLabel(i).toLowerCase();i.hidden=t!==""&&!o.startsWith(t)}}select(e){if(e.getAttribute("aria-disabled")==="true")return;let t=e.getAttribute("data-value")||this.getOptionLabel(e),i=this.getOptionLabel(e)||t;this.value=t;let o=this.getInput();o&&(o.value=i),this.changeEvent.emit({value:t}),this.skipNextFocusOpen=!0,this.setOpen(!1),o?.focus()}syncFromValue(){let e=this.getInput();if(!e)return;let t=this.getOptions().find(o=>o.getAttribute("data-value")===this.value),i=t?this.getOptionLabel(t):this.value||"";e.value=i}initialize(){this.ensureOptionIds(),this.syncLabel(),this.syncInput(),this.syncFromValue(),this.setOpen(!1)}connectedCallback(){super.connectedCallback(),queueMicrotask(()=>this.initialize())}@Hr(["value","label","placeholder","disabled","openOnFocus"])onPropsUpdated(){this.syncLabel(),this.syncInput(),this.syncFromValue()}@L({ref:"root",type:"focusin"})onRootFocusIn(e){if(this.isComboboxInput(e.target)){if(this.skipNextFocusOpen){this.skipNextFocusOpen=!1;return}this.openOnFocus&&(this.filterOptions(this.getInput()?.value??""),this.setOpen(!0),this.setVisualFocusCombobox())}}@L({ref:"root",type:"input"})onRootInput(e){if(!this.isComboboxInput(e.target))return;let t=e.target;this.filterOptions(t.value),t.value.trim()!==""&&this.getVisibleOptions().length?this.setOpen(!0):t.value.trim()===""&&this.openOnFocus?this.setOpen(!0):(t.value.trim()===""||!this.getVisibleOptions().length)&&this.setOpen(!1),this.setVisualFocusCombobox()}@L({ref:"root",type:"keydown",options:{capture:!0}})onRootKeydown(e){this.isComboboxInput(e.target)&&this.handleInputKeydown(e)}moveActive(e){this.filterOptions(this.getInput()?.value??""),this.getVisibleOptions().length||this.filterOptions("");let t=this.getVisibleOptions();if(t.length){if(!this.open){this.setOpen(!0,{activate:e===1?"first":"last"});return}if(this.listboxHasVisualFocus){let i=e===1?this.activeIndex>=t.length-1?0:this.activeIndex+1:this.activeIndex<=0?t.length-1:this.activeIndex-1;this.setActiveOption(i);return}this.setActiveOption(e===1?0:t.length-1)}}handleInputKeydown(e){if(e.ctrlKey||e.shiftKey||e.metaKey)return;let t=e.altKey;if(e.key==="ArrowDown"){if(e.preventDefault(),e.stopPropagation(),t){this.open||(this.filterOptions(this.getInput()?.value??""),this.setOpen(!0));return}this.moveActive(1);return}if(e.key==="ArrowUp"){if(e.preventDefault(),e.stopPropagation(),t){this.open&&this.setOpen(!1);return}this.moveActive(-1);return}if(e.key==="Home"){let i=this.getInput();if(!i)return;e.preventDefault(),i.setSelectionRange(0,0),this.setVisualFocusCombobox();return}if(e.key==="End"){let i=this.getInput();if(!i)return;e.preventDefault();let o=i.value.length;i.setSelectionRange(o,o),this.setVisualFocusCombobox();return}if(e.key==="Escape"){if(e.preventDefault(),this.open){this.setOpen(!1);return}let i=this.getInput();i&&i.value&&(i.value="",this.value="",this.changeEvent.emit({value:""}),this.filterOptions(""));return}if(e.key==="Enter"){let i=this.getVisibleOptions();if(this.open&&this.listboxHasVisualFocus&&i[this.activeIndex]){e.preventDefault(),this.select(i[this.activeIndex]);return}this.open&&(e.preventDefault(),this.setOpen(!1));return}if(e.key==="Tab"&&this.open){let i=this.getVisibleOptions();if(this.listboxHasVisualFocus&&i[this.activeIndex]){this.select(i[this.activeIndex]);return}this.setOpen(!1)}}@L({selector:"[data-combobox-trigger]",type:"click"})onTriggerClick(e){e.preventDefault();let t=this.getInput();!t||t.disabled||(this.open?(this.skipNextFocusOpen=!0,this.setOpen(!1)):(this.filterOptions(t.value),this.setOpen(!0),this.setVisualFocusCombobox()),t.focus())}@L({selector:"[data-combobox-option]",type:"pointerover"})onOptionPointerOver(e){if(!this.open)return;let t=e.target.closest("[data-combobox-option]");if(!t||t.getAttribute("aria-disabled")==="true"||t.hidden)return;let o=this.getVisibleOptions().indexOf(t);o>=0&&this.setActiveOption(o)}@L({selector:"[data-combobox-option]",type:"mousedown"})onOptionMouseDown(e){e.preventDefault()}@L({selector:"[data-combobox-option]",type:"click"})onOptionClick(e){let t=e.target.closest("[data-combobox-option]");t&&this.select(t)}@L({ref:"root",type:"focusout"})onFocusOut(e){let t=e.relatedTarget;t instanceof Node&&this.contains(t)||this.setOpen(!1)}@L({document:!0,type:"click"})onDocumentClick(e){this.contains(e.target)||this.setOpen(!1)}render(){return React.createElement("div",{class:"rui-combobox","data-ref":"root"},React.createElement("slot",{name:"control"}),React.createElement("slot",{name:"listbox"}))}};import"./combobox.css";function Y(...r){return r.filter(Boolean).join(" ")}function jt({slot:r="control",children:e,class:t}){return React.createElement("div",{slot:r,class:Y("rui-combobox__control",t)},e)}function Xt({placeholder:r,disabled:e,class:t}){return React.createElement("input",{type:"text","data-combobox-input":!0,"data-rui-control":!0,"data-rui-control-type":"text",class:Y("rui-combobox__input",t),placeholder:r,disabled:e,autocomplete:"off"})}function Yt({children:r,class:e,"aria-label":t="Show suggestions",disabled:i}){return React.createElement("button",{type:"button","data-combobox-trigger":!0,class:Y("rui-combobox__trigger",e),"aria-label":t,disabled:i,tabIndex:-1},r??React.createElement("span",{"aria-hidden":"true"},"\u25BE"))}function Qt({slot:r="listbox",children:e,class:t}){return React.createElement("div",{slot:r,"data-combobox-listbox":!0,class:Y("rui-combobox__listbox",t),hidden:!0},e)}function Zt({value:r,label:e,children:t,class:i,disabled:o}){return React.createElement("div",{role:"option","data-combobox-option":!0,"data-value":r,"data-label":e,class:Y("rui-combobox__option",i),"aria-disabled":o?"true":void 0},t)}var Br=u(X,({slot:r,value:e,label:t,placeholder:i,disabled:o,openOnFocus:n,options:a,children:s})=>a!=null?React.createElement("rui-combobox",{slot:r,value:e,label:t,placeholder:i,disabled:o,openOnFocus:n},React.createElement(jt,null,React.createElement(Xt,{placeholder:i,disabled:o}),React.createElement(Yt,null)),React.createElement(Qt,null,a.map(l=>React.createElement(Zt,{value:l.value,label:typeof l.label=="string"?l.label:void 0},l.label)))):React.createElement("rui-combobox",{slot:r,value:e,label:t,placeholder:i,disabled:o,openOnFocus:n},s));import{RadiantElement as Nr,bound as Ur,customElement as $r,event as qr,onEvent as lt,onUpdated as Wr,prop as ut,query as dt}from"@ecopages/radiant";var Jr='a[href], button:not([disabled]), textarea:not([disabled]), input:not([disabled]), select:not([disabled]), [tabindex]:not([tabindex="-1"])',Q=@$r("rui-dialog")class extends Nr{@ut({type:Boolean,reflect:!0,defaultValue:!1})open;@ut({type:Boolean,reflect:!0,defaultValue:!1})alert;@ut({type:String,defaultValue:""})label;@dt({ref:"dialog"})dialogTarget;@dt({selector:"[data-dialog-title]"})titleTarget;@dt({selector:"[data-dialog-body]"})descriptionTarget;@qr({name:"rui-close",bubbles:!0,composed:!0})closeEvent;dialogHidden=this.$.open.map(e=>!e);resolvedRole=this.$.alert.map(e=>e?"alertdialog":"dialog");previouslyFocused=null;titleId=`rui-dialog-title-${Math.random().toString(36).slice(2,9)}`;descriptionId=`rui-dialog-desc-${Math.random().toString(36).slice(2,9)}`;connectedCallback(){super.connectedCallback(),queueMicrotask(()=>this.syncOpenState())}@Ur@Wr(["open","label"])syncOpenState(){this.dialogTarget&&(this.titleTarget?.textContent?.trim()?(this.titleTarget.id=this.titleId,this.dialogTarget.setAttribute("aria-labelledby",this.titleId),this.dialogTarget.removeAttribute("aria-label")):this.label&&(this.dialogTarget.setAttribute("aria-label",this.label),this.dialogTarget.removeAttribute("aria-labelledby")),this.descriptionTarget?(this.descriptionTarget.id=this.descriptionId,this.dialogTarget.setAttribute("aria-describedby",this.descriptionId)):this.dialogTarget.removeAttribute("aria-describedby"),this.open?(this.previouslyFocused=document.activeElement,queueMicrotask(()=>this.focusInitial())):(this.previouslyFocused?.focus?.(),this.previouslyFocused=null))}focusInitial(){(this.getFocusable()[0]??this.dialogTarget)?.focus()}getFocusable(){return Array.from(this.dialogTarget?.querySelectorAll(Jr)??[]).filter(e=>!e.hasAttribute("disabled")&&e.tabIndex!==-1)}dismiss(e){this.open&&(this.open=!1,this.closeEvent.emit({reason:e}))}@lt({document:!0,type:"keydown"})onDocumentKeydown(e){if(!this.open)return;if(e.key==="Escape"){e.preventDefault(),this.dismiss("escape");return}if(e.key!=="Tab")return;let t=this.getFocusable();if(!t.length){e.preventDefault(),this.dialogTarget.focus();return}let i=t[0],o=t[t.length-1],n=document.activeElement;e.shiftKey&&n===i?(e.preventDefault(),o.focus()):!e.shiftKey&&n===o&&(e.preventDefault(),i.focus())}@lt({ref:"backdrop",type:"click"})onBackdropClick(){this.dismiss("backdrop")}@lt({selector:"[data-dialog-close]",type:"click"})onCloseClick(){this.dismiss("dismiss")}render(){return React.createElement("div",{class:"rui-dialog",hidden:this.dialogHidden},React.createElement("div",{"data-ref":"backdrop",class:"rui-dialog__backdrop"}),React.createElement("div",{"data-ref":"dialog",class:"rui-dialog__surface",tabindex:-1,role:this.resolvedRole,"aria-modal":"true"},React.createElement("slot",{name:"close"}),React.createElement("slot",{name:"title"}),React.createElement("slot",null),React.createElement("slot",{name:"actions"})))}};import"./dialog.css";function $e(...r){return r.filter(Boolean).join(" ")}function ei({slot:r="title",children:e,class:t}){return React.createElement("div",{slot:r,"data-dialog-title":!0,"data-ref":"title",class:$e("rui-dialog__title",t)},e)}function ti({children:r,class:e}){return React.createElement("div",{"data-dialog-body":!0,"data-ref":"description",class:$e("rui-dialog__body",e)},r)}function ii({slot:r="actions",children:e,class:t}){return React.createElement("div",{slot:r,class:$e("rui-dialog__actions",t)},e)}function ri({slot:r="close",children:e,class:t,"aria-label":i="Close"}){return React.createElement("button",{slot:r,type:"button","data-dialog-close":!0,"data-ref":"close",class:$e("rui-dialog__close",t),"aria-label":i},e??"\xD7")}var Gr=u(Q,({slot:r,open:e,alert:t,label:i,id:o,title:n,actions:a,children:s})=>n!=null||a!=null?React.createElement("rui-dialog",{slot:r,id:o,open:e,alert:t,label:i},React.createElement(ri,null),n!=null?React.createElement(ei,null,n):null,s!=null?React.createElement(ti,null,s):null,a!=null?React.createElement(ii,null,a):null):React.createElement("rui-dialog",{slot:r,id:o,open:e,alert:t,label:i},s));var w="__rui-dialog-host",qe="rui-dialog-open",We="rui-dialog-close",Je="rui-dialog-toggle",pt="rui-dialog-action";function oi(r){return"id"in r&&r.id!=null&&r.id!==""}var Z=!1,Ge=null,ee=null,y=null;function mt(r){let e=r.trim();if(!e)return null;let t=document.getElementById(e);return t?.localName==="rui-dialog"?t:null}function zr(){let r=document.createElement("button");return r.slot="close",r.type="button",r.setAttribute("data-dialog-close",""),r.setAttribute("data-ref","close"),r.className="rui-dialog__close",r.setAttribute("aria-label","Close"),r.textContent="\xD7",r}function Kr(r){let e=document.createElement("div");return e.slot="title",e.setAttribute("data-dialog-title",""),e.setAttribute("data-ref","title"),e.className="rui-dialog__title",e.textContent=r,e}function jr(r){let e=document.createElement("div");e.setAttribute("data-dialog-body",""),e.setAttribute("data-ref","description"),e.className="rui-dialog__body";let t=document.createElement("p");return t.textContent=r,e.append(t),e}function Xr(r){let e=document.createElement("div");e.slot="actions",e.className="rui-dialog__actions";for(let t of r){let i=document.createElement("button");i.type="button",i.className=`rui-button rui-button--${t.variant??"filled"} rui-button--${t.size??"md"}`,i.setAttribute("data-dialog-action",t.value??""),t.closeOnClick===!1&&i.setAttribute("data-dialog-action-close","false"),i.textContent=t.label,e.append(i)}return e}function te(){ee?.remove(),ee=null}function Yr(r){te();let e=document.createElement("rui-dialog");return e.id=w,e.alert=!!r.alert,e.label=r.label??"",e.append(zr()),r.title&&e.append(Kr(r.title)),r.body&&e.append(jr(r.body)),r.actions?.length&&e.append(Xr(r.actions)),(Ge??document.body).appendChild(e),ee=e,e}function ni(r){if(!(!y||y===r))if(y===w)te();else{let e=mt(y);e&&(e.open=!1)}}function H(r){D();let e=mt(r);e&&(ni(r),e.open=!0,y=r)}function Qr(r){D(),ni(w);let e=Yr(r);e.open=!0,y=w}function ze(r){if(typeof r=="string"){H(r);return}if(oi(r)){H(r.id);return}Qr(r)}function B(r){D();let e=r??y;if(e){if(e===w)te();else{let t=mt(e);t&&(t.open=!1)}y===e&&(y=null)}}function ht(r){if(D(),y===r){B(r);return}H(r)}function ai(r){let e=r.detail;if(typeof e=="string"){ze(e);return}e&&typeof e=="object"&&ze(e)}function si(r){let e=r.detail;B(e?.id)}function li(r){let e=r.detail;e?.id&&ht(e.id)}function ui(r){let e=r.target;if(!e?.closest)return;let t=e.closest("[data-dialog-action]");if(t&&ee?.contains(t)){r.preventDefault();let a={value:t.getAttribute("data-dialog-action")||void 0||void 0};ee.dispatchEvent(new CustomEvent(pt,{detail:a,bubbles:!0,composed:!0})),t.getAttribute("data-dialog-action-close")!=="false"&&B(w);return}let i=e.closest("[data-dialog-open]");if(i){let n=i.getAttribute("data-dialog-open")?.trim();n&&(r.preventDefault(),H(n));return}let o=e.closest("[data-dialog-close]");if(o){if(o.closest("rui-dialog")?.hasAttribute("open"))return;r.preventDefault(),B()}}function di(r){let e=r.target?.closest?.("rui-dialog");if(!e)return;let t=e.id||null;t&&y===t&&(t===w&&te(),y=null)}function pi(r={}){return Z?(r.mount&&(Ge=r.mount),ct):(Z=!0,Ge=r.mount??document.body,document.addEventListener(qe,ai),document.addEventListener(We,si),document.addEventListener(Je,li),document.addEventListener("click",ui),document.addEventListener("rui-close",di),ct)}function D(){Z||pi()}function ct(){Z&&(document.removeEventListener(qe,ai),document.removeEventListener(We,si),document.removeEventListener(Je,li),document.removeEventListener("click",ui),document.removeEventListener("rui-close",di),te(),Ge=null,y=null,Z=!1)}function Zr(){return y}function eo(r){D(),ze(r)}function to(r){D(),B(r)}function io(r){D(),ht(r)}function ro(r){D();let e=r?.trim()||void 0;return{open:(i=>{if(e){H(e);return}if(i!=null){if(typeof i=="string"){H(i);return}ze(i)}}),close:i=>{B(i??e)},toggle:i=>{let o=i??e;o&&ht(o)},get openId(){return y}}}import{RadiantElement as oo,bound as no,customElement as ao,onEvent as so,onUpdated as lo,prop as bt}from"@ecopages/radiant";var _=@ao("rui-disclosure")class extends oo{@bt({type:Boolean,reflect:!0,defaultValue:!1})open;@bt({type:String,reflect:!0,defaultValue:""})value;@bt({type:Boolean,reflect:!0,defaultValue:!1})animated;panelId=`rui-disclosure-${Math.random().toString(36).slice(2,9)}`;connectedCallback(){super.connectedCallback(),queueMicrotask(()=>{this.syncAnimated(),this.syncExpanded()})}syncAnimated(){this.toggleAttribute("data-animated",this.animated)}@so({selector:"[data-disclosure-trigger]",type:"click"})onTriggerClick(e){e.preventDefault(),this.toggle()}toggle(){let e=!this.open;this.open=e,this.dispatchEvent(new CustomEvent("rui-disclosure-toggle",{bubbles:!0,composed:!0,detail:{value:this.value,open:e}}))}@no@lo(["open","animated"])syncExpanded(){this.syncAnimated();let e=this.querySelector("[data-disclosure-trigger]"),t=this.querySelector("[data-disclosure-panel]");if(!(!e||!t)){if(e.setAttribute("aria-expanded",String(this.open)),e.setAttribute("aria-controls",this.panelId),t.id=this.panelId,t.dataset.state=this.open?"open":"closed",this.animated){t.hidden=!1,t.setAttribute("aria-hidden",String(!this.open));return}t.hidden=!this.open,t.removeAttribute("aria-hidden")}}render(){return React.createElement("div",{class:"rui-disclosure"},React.createElement("slot",{name:"trigger"}),React.createElement("slot",null))}};import{RadiantElement as po,customElement as co,onEvent as ci,onUpdated as mo,prop as mi}from"@ecopages/radiant";function g(r,e){r.forEach((t,i)=>{t.tabIndex=i===e?0:-1})}function N(r,e){if(!r.length)return null;let t=Math.max(0,Math.min(r.length-1,e));return g(r,t),r[t]?.focus(),r[t]??null}function uo(r,e){return r==="Home"?"first":r==="End"?"last":e==="horizontal"?r==="ArrowRight"?"next":r==="ArrowLeft"?"prev":null:r==="ArrowDown"?"next":r==="ArrowUp"?"prev":null}function v(r){let{items:e,current:t,key:i,orientation:o="horizontal",wrap:n=!0}=r;if(!e.length||!t)return{handled:!1};let a=e.indexOf(t);if(a<0)return{handled:!1};let s=uo(i,o);if(!s)return{handled:!1};let l=a;s==="first"?l=0:s==="last"?l=e.length-1:s==="next"?l=n?(a+1)%e.length:Math.min(e.length-1,a+1):l=n?(a-1+e.length)%e.length:Math.max(0,a-1);let c=N(e,l);return c?{handled:!0,index:l,item:c}:{handled:!1}}var ie=@co("rui-disclosure-group")class extends po{@mi({type:Boolean,reflect:!0,defaultValue:!1})multiple;@mi({type:Boolean,reflect:!0,attribute:"animated",defaultValue:!1})animated;connectedCallback(){super.connectedCallback(),queueMicrotask(()=>{this.syncChildrenAnimated(),this.syncTriggers()})}getTriggers(){return Array.from(this.querySelectorAll("[data-disclosure-trigger]"))}getDisclosureForTrigger(e){return e.closest("rui-disclosure")}syncTriggers(){let e=this.getTriggers();if(!e.length)return;let t=Math.max(0,e.findIndex(i=>i.tabIndex===0||i===document.activeElement));g(e,t)}syncChildrenAnimated(){for(let e of this.querySelectorAll("rui-disclosure"))e.animated=this.animated}@mo("animated")onAnimatedUpdated(){this.syncChildrenAnimated()}@ci({selector:"rui-disclosure",type:"rui-disclosure-toggle"})onDisclosureToggle(e){if(this.multiple||!e.detail?.open)return;let i=e.target;if(i instanceof _)for(let o of this.querySelectorAll("rui-disclosure"))o!==i&&(o.open=!1)}@ci({selector:"[data-disclosure-trigger]",type:"keydown"})onTriggerKeydown(e){let t=this.getTriggers(),i=e.target.closest("[data-disclosure-trigger]");if(!i)return;if(e.key==="ArrowLeft"||e.key==="ArrowRight"){let n=this.getDisclosureForTrigger(i);if(!n)return;let a=e.key==="ArrowRight";if(n.open===a){e.preventDefault();return}if(e.preventDefault(),n.open=a,a&&!this.multiple)for(let s of this.querySelectorAll("rui-disclosure"))s!==n&&(s.open=!1);return}v({items:t,current:i,key:e.key,orientation:"vertical",wrap:!0}).handled&&e.preventDefault()}render(){return React.createElement("div",{class:"rui-disclosure-group","data-ref":"root"},React.createElement("slot",null))}};import"./disclosure-group.css";import"./disclosure.css";function ft(...r){return r.filter(Boolean).join(" ")}function hi({variant:r="chevron",class:e}){return React.createElement("span",{class:ft("rui-disclosure__icon",`rui-disclosure__icon--${r}`,e),"data-disclosure-icon":!0,"aria-hidden":"true"})}function bi({slot:r="trigger",children:e,class:t,disabled:i,icon:o,iconPosition:n="start"}){let s=o!==null?o??React.createElement(hi,null):null;return React.createElement("button",{slot:r,type:"button","data-disclosure-trigger":!0,class:ft("rui-disclosure__trigger",n==="end"&&"rui-disclosure__trigger--icon-end",t),disabled:i},n==="start"?s:null,React.createElement("span",{class:"rui-disclosure__label"},e),n==="end"?s:null)}function fi({children:r,class:e}){return React.createElement("div",{"data-disclosure-panel":!0,"data-ref":"panel",class:ft("rui-disclosure__panel",e)},React.createElement("div",{class:"rui-disclosure__panel-inner"},r))}var ho=u(_,({slot:r,open:e,value:t,animated:i,trigger:o,children:n})=>o!=null?React.createElement("rui-disclosure",{slot:r,open:e,value:t,animated:i},React.createElement(bi,null,o),n!=null?React.createElement(fi,null,n):null):React.createElement("rui-disclosure",{slot:r,open:e,value:t,animated:i},n)),bo=u(ie,({slot:r,multiple:e,animated:t,children:i})=>React.createElement("rui-disclosure-group",{slot:r,multiple:e,animated:t},i));import{RadiantElement as fo,customElement as go,prop as vo}from"@ecopages/radiant";var re=@go("rui-feed")class extends fo{@vo({type:String,defaultValue:""})label;resolvedAriaLabel=this.$.label.map(e=>e||void 0);render(){return React.createElement("div",{class:"rui-feed",role:"feed","aria-label":this.resolvedAriaLabel},React.createElement("slot",null))}};import"./feed.css";var yo=u(re,({slot:r,label:e,articles:t})=>React.createElement("rui-feed",{slot:r,label:e},t.map((i,o)=>React.createElement("article",{class:"rui-feed__article","aria-labelledby":`feed-${i.id}`,"aria-posinset":o+1,"aria-setsize":t.length},React.createElement("h3",{id:`feed-${i.id}`},i.title),i.children))));import{RadiantElement as So,customElement as Po,onEvent as Ye,onUpdated as Pt,prop as I,registerSsrPreparationCallback as Mo}from"@ecopages/radiant";import{consumeContext as Ao,onContextUpdate as Lo,provideContext as wo}from"@ecopages/radiant/context";var P="data-rui-control",gt="data-rui-field-managed",Ke="data-rui-field-label",je="data-rui-field-description",U="data-rui-field-error",vt="data-default-value",yt="data-default-values",Xe=new Set(["rui-combobox","rui-checkbox","rui-switch","rui-radio-group","rui-slider","rui-spinbutton","rui-listbox"]),vi=`[${P}], ${Array.from(Xe).join(", ")}, input, textarea`;function yi(r,e){let t=r,i=new Set,o=s=>{i.has(s)||(i.add(s),e(s))};if(typeof t.getSlotElements=="function")for(let s of t.getSlotElements())o(s);let n=r.querySelector(".rui-field")??r;for(let s of Array.from(n.children))o(s);for(let s of n.querySelectorAll("*"))o(s);for(let s of Array.from(r.children))o(s);let a=r.shadowRoot;if(a)for(let s of Array.from(a.children))o(s)}function Rt(r,e){let t=null;return yi(r,i=>{if(!(t||!(i instanceof HTMLElement))){if(i.matches(e)){t=i;return}t=i.querySelector(e)}}),t}function Ro(r){if(r.length===0)return null;if(r.length===1)return r[0];let e=document.activeElement;if(e instanceof HTMLElement){for(let o of r)if(o===e||o.contains(e))return o}let t=r.filter(o=>o.isConnected&&o.getClientRects().length>0&&!o.closest('[hidden],[aria-hidden="true"]')),i=t.length>0?t:r.filter(o=>o.isConnected);return i[i.length-1]??r[r.length-1]}function xo(r){let e=r.querySelector(".rui-field");return e instanceof HTMLElement?Array.from(e.querySelectorAll(vi)).filter(t=>r.contains(t)):[]}function oe(r){let e=Ro(xo(r));if(e)return e;let t=null;if(yi(r,o=>{if(t)return;let n=gi(o);n&&(t=n)}),t)return t;let i=r.querySelector(".rui-field")??r;return gi(i)}function gi(r){return r instanceof HTMLElement?r.matches(`[${P}]`)||Xe.has(r.localName)||r instanceof HTMLInputElement||r instanceof HTMLTextAreaElement?r:r.querySelector(vi):null}function xt(r){if(r instanceof HTMLInputElement)return r.type==="checkbox"?r.checked:r.type==="number"||r.type==="range"?r.value===""?"":Number(r.value):r.value;if(r instanceof HTMLTextAreaElement)return r.value;let e=Ri(r);if(e.localName==="rui-checkbox"||e.localName==="rui-switch"){let t=e.querySelector('input[type="checkbox"]');return t?t.checked:e.hasAttribute("checked")}if(e.localName==="rui-combobox"||e.localName==="rui-radio-group"||e.localName==="rui-listbox")return e.value??e.getAttribute("value")??"";if(e.localName==="rui-slider"||e.localName==="rui-spinbutton"){let t=e.value;if(typeof t=="number")return t;let i=e.getAttribute("value");return i==null||i===""?"":Number(i)}return e.getAttribute("value")??""}function Tt(r,e){if(r instanceof HTMLInputElement){if(r.type==="checkbox"){r.checked=!!e;let i=r.closest("rui-checkbox, rui-switch");i&&(e?i.setAttribute("checked",""):i.removeAttribute("checked"));return}r.value=e==null?"":String(e);return}if(r instanceof HTMLTextAreaElement){r.value=e==null?"":String(e);return}let t=Ri(r);if(t.localName==="rui-checkbox"||t.localName==="rui-switch"){e?t.setAttribute("checked",""):t.removeAttribute("checked");return}t.setAttribute("value",e==null?"":String(e))}function Ri(r){return r.hasAttribute(P)?r.closest(Array.from(Xe).join(","))??r:r}function xi(r){return Rt(r,`[${Ke}], label.rui-label`)}function Ti(r){return Rt(r,`[${je}]`)}function Ei(r){return Et(r)[0]??null}function Et(r){let e=r.querySelector(".rui-field");if(e instanceof HTMLElement){let o=Array.from(e.querySelectorAll(`[${U}]`)),n=o.filter(a=>a.getClientRects().length>0);if(n.length>0)return n;if(o.length>0)return o}let t=Array.from(r.querySelectorAll(`[${U}]`));if(t.length>0)return t;let i=Rt(r,`[${U}]`);return i?[i]:[]}function Si(r,e,t){t&&((e instanceof HTMLInputElement||e instanceof HTMLTextAreaElement)&&(e.name=t),r&&r!==e&&Xe.has(r.localName)&&r.setAttribute("name",t))}function Pi(r){if(r instanceof HTMLInputElement||r instanceof HTMLTextAreaElement||r.hasAttribute(P))return r;let e=r.querySelector(`[${P}]`);if(e)return e;if(r.localName==="rui-combobox")return r.querySelector("[data-combobox-input]")??r;if(r.localName==="rui-spinbutton")return r.querySelector("[data-spinbutton-input], input")??r;if(r.localName==="rui-slider")return r.querySelector('input[type="range"]')??r;if(r.localName==="rui-checkbox"||r.localName==="rui-switch")return r.querySelector("input")??r;if(r.localName==="rui-radio-group"){let t=r.querySelector('input[type="radio"]:checked'),i=r.querySelector('input[type="radio"]');return t??i??r}return r}import{createContext as To}from"@ecopages/radiant/context";var $=To(Symbol.for("rui-form-context"));import{createContext as Eo}from"@ecopages/radiant/context";var St=Eo(Symbol.for("rui-field-context"));function Co(r){if(!r)return;let{validate:e,...t}=r;return t}var ne=@Po("rui-field")class extends So{@I({type:String,reflect:!0,defaultValue:""})name;@I({type:Object})rules;@I({type:Object})defaultValue;@I({type:String,attribute:vt})defaultValueData;@I({type:Boolean,reflect:!0,defaultValue:!1})disabled;@I({type:String,defaultValue:""})error;@I({type:Boolean,reflect:!0,defaultValue:!1})invalid;@wo({context:St,initialValue:{name:"",controlId:"",descriptionId:"",errorId:"",error:void 0,invalid:!1,required:!1},hydrate:Object,serialize:e=>({...e,rules:Co(e.rules)})})fieldProvider;@Ao($)formContextProvider;uid=Math.random().toString(36).slice(2,9);resolveFieldName(){return(this.name||this.getAttribute("name")||"").trim()}unregister;unregisterPresentation;registeredWithForm=!1;constructor(){super(),Mo(this,()=>this.fieldProvider.setContext({rules:this.readFieldRules()}))}connectedCallback(){super.connectedCallback(),this.connectToForm(),queueMicrotask(()=>{this.connectToForm()})}disconnectedCallback(){this.unregister?.(),this.unregister=void 0,this.unregisterPresentation?.(),this.unregisterPresentation=void 0,this.registeredWithForm=!1,super.disconnectedCallback()}get currentFormContext(){return this.formContextProvider?.getContext()}parseJsonAttr(e){if(e)try{return JSON.parse(e)}catch{return}}readFieldRules(){let e=this.rules;return e&&typeof e=="object"&&!Array.isArray(e)&&Object.keys(e).length>0?e:this.fieldProvider.getContext()?.rules}readDefaultValue(){return this.defaultValue!==void 0?this.defaultValue:this.parseJsonAttr(this.defaultValueData??this.getAttribute(vt))}isRequired(){return!!this.readFieldRules()?.required}resolveErrorMessage(e){if(this.error)return this.error;let t=this.resolveFieldName();return t?(e??this.currentFormContext)?.fields[t]?.error:void 0}resolveInvalid(e){if(this.invalid||this.error)return!0;let t=this.resolveFieldName();return t?(e??this.currentFormContext)?.fields[t]?.invalid??!1:!1}connectToForm(){let e=this.resolveFieldName(),t=this.currentFormContext,i=t?.actions;if(!t?.ready||!i||!e){this.syncField();return}if(!this.registeredWithForm){this.registeredWithForm=!0,this.unregisterPresentation?.(),this.unregisterPresentation=i.subscribePresentation(o=>this.syncField(o)),this.unregister=i.register({name:e,rules:this.readFieldRules(),getRules:()=>this.readFieldRules(),defaultValue:this.readDefaultValue(),getValue:()=>{let o=oe(this);return o?xt(o):void 0},setValue:o=>{let n=oe(this);n&&Tt(n,o)}});return}i.updateFieldOptions(e,{rules:this.readFieldRules(),defaultValue:this.readDefaultValue()}),this.syncField()}@Lo({context:$,requestUpdate:!1})onFormContextChanged(e){if(!this.registeredWithForm){e.ready?this.connectToForm():this.syncField(e);return}this.syncField(e)}@Pt(["name"])onNameUpdated(){this.unregister?.(),this.unregister=void 0,this.unregisterPresentation?.(),this.unregisterPresentation=void 0,this.registeredWithForm=!1,this.connectToForm()}@Pt(["rules","defaultValue","defaultValueData"])onRulesUpdated(){this.connectToForm()}@Pt(["disabled","error","invalid"])onPresentationUpdated(){this.syncField()}@Ye({selector:"[data-rui-control], rui-combobox, rui-checkbox, rui-switch, rui-radio-group, rui-slider, rui-spinbutton, rui-listbox",type:"rui-change"})onControlChange(){let e=this.resolveFieldName();e&&this.currentFormContext?.actions.handleFieldChange(e)}@Ye({selector:"[data-rui-control], input, textarea",type:"input",options:{capture:!0}})onControlInput(){let e=this.resolveFieldName();e&&this.currentFormContext?.actions.handleFieldChange(e)}@Ye({selector:"[data-rui-control], input, textarea",type:"change",options:{capture:!0}})onControlNativeChange(){let e=this.resolveFieldName();e&&this.currentFormContext?.actions.handleFieldChange(e)}@Ye({selector:"[data-rui-control], input, textarea",type:"focusout"})onControlFocusOut(){let e=this.resolveFieldName();e&&this.currentFormContext?.actions.handleFieldBlur(e)}syncField(e){let t=oe(this),i=t?Pi(t):null,o=i?.id||`rui-field-control-${this.uid}`,n=`rui-field-desc-${this.uid}`,a=`rui-field-error-${this.uid}`,s=this.resolveErrorMessage(e),l=this.resolveInvalid(e),c=this.isRequired(),p=this.resolveFieldName();if(Si(t,i,p),i){i.id||(i.id=o),i.setAttribute(gt,""),i.setAttribute("aria-invalid",l?"true":"false"),this.isRequired()?i.setAttribute("aria-required","true"):i.removeAttribute("aria-required");let f=[],Ne=Ti(this);Ne&&(Ne.id=n,f.push(n));let Wt=Ei(this);Wt&&(Wt.id=a,s&&f.push(a)),f.length>0?i.setAttribute("aria-describedby",f.join(" ")):i.removeAttribute("aria-describedby"),this.disabled&&(i.setAttribute("aria-disabled","true"),(i instanceof HTMLInputElement||i instanceof HTMLTextAreaElement)&&(i.disabled=!0))}let d=xi(this);d&&i&&(d.htmlFor=i.id);for(let f of Et(this))f.textContent=s??"",s?(f.hidden=!1,f.removeAttribute("hidden")):f.hidden=!0;let m={name:p,controlId:i?.id??o,descriptionId:n,errorId:a,error:s,invalid:l,required:c},h=this.fieldProvider.getContext();h.name===m.name&&h.controlId===m.controlId&&h.descriptionId===m.descriptionId&&h.errorId===m.errorId&&h.error===m.error&&h.invalid===m.invalid&&h.required===m.required||this.fieldProvider.setContext(m)}render(){return React.createElement("div",{class:"rui-field"},React.createElement("slot",null))}};import"./field.css";var Do=u(ne,({name:r,rules:e,defaultValue:t,defaultValueData:i,disabled:o,error:n,invalid:a,children:s})=>React.createElement("rui-field",{name:r,"prop:rules":e,"prop:defaultValue":t,disabled:o,error:n,invalid:a,"attr:data-default-value":i??(t!==void 0?JSON.stringify(t):void 0)},s));import"./field.css";function _o({class:r,children:e}){return React.createElement("p",{[je]:"",class:["rui-field__description",r].filter(Boolean).join(" ")},e)}import"./field.css";function Io({class:r}){return React.createElement("p",{[U]:"",class:["rui-field__error",r].filter(Boolean).join(" "),role:"alert",hidden:!0})}import{RadiantElement as ko,customElement as Fo,event as Li,onEvent as At,onUpdated as wi,prop as le}from"@ecopages/radiant";import{provideContext as Oo}from"@ecopages/radiant/context";function ae(r,e){if(!(e===void 0||e===!1))return typeof e=="string"?e:typeof e=="object"&&e!==null&&"message"in e&&typeof e.message=="string"?e.message:r}function C(r){return typeof r=="object"&&r!==null&&"value"in r?r.value:r}async function Vo(r,e,t,i){if(!t)return;if(t.required&&(e==null||e===""||Array.isArray(e)&&e.length===0||e===!1))return ae("This field is required",t.required)??"This field is required";if(typeof e=="number"||typeof e=="string"&&e!==""&&!Number.isNaN(Number(e))){let n=typeof e=="number"?e:Number(e);if(t.min!==void 0&&n<C(t.min))return ae(`Minimum value is ${C(t.min)}`,t.min);if(t.max!==void 0&&n>C(t.max))return ae(`Maximum value is ${C(t.max)}`,t.max)}let o=e==null?"":String(e);if(t.minLength!==void 0&&o.length<C(t.minLength))return ae(`Minimum length is ${C(t.minLength)}`,t.minLength);if(t.maxLength!==void 0&&o.length>C(t.maxLength))return ae(`Maximum length is ${C(t.maxLength)}`,t.maxLength);if(t.pattern!==void 0&&!C(t.pattern).test(o)){let a=t.pattern;return typeof a=="object"&&"message"in a&&typeof a.message=="string"?a.message:"Invalid format"}if(t.validate){if(typeof t.validate=="function"){let n=await t.validate(e,i);return n===!0||n===void 0?void 0:n===!1?"Invalid value":String(n)}for(let n of Object.keys(t.validate)){let a=t.validate[n],s=await a(e,i);if(s!==!0&&s!==void 0)return s===!1?"Invalid value":String(s)}}}async function Mi(r,e,t){let i=t??Object.keys(e.fields),o={};for(let n of i){let a=e.fields[n]?.rules,s=await Vo(n,r[n],a,r);s&&(o[n]={type:"validation",message:s})}return Object.keys(o).length>0?{values:{},errors:o}:{values:r,errors:{}}}function Mt(){return(r,e,t)=>Mi(r,e,t.names)}function Ai(r){return typeof r=="function"?r:Mt()}var se=class{mode;reValidateMode;resolver;fields=new Map;listeners=new Set;revision=0;defaultValues;values;errors={};touched={};dirty={};isSubmitting=!1;isSubmitted=!1;constructor(e={}){this.mode=e.mode??"onSubmit",this.reValidateMode=e.reValidateMode??"onChange",this.resolver=Ai(e.resolver),this.defaultValues={...e.defaultValues??{}},this.values={...this.defaultValues,...e.values??{}}}updateOptions(e){e.mode!==void 0&&(this.mode=e.mode),e.reValidateMode!==void 0&&(this.reValidateMode=e.reValidateMode),e.resolver!==void 0&&(this.resolver=Ai(e.resolver)),e.defaultValues!==void 0&&(this.defaultValues={...e.defaultValues})}subscribe(e){return this.listeners.add(e),()=>this.listeners.delete(e)}notify(){this.revision+=1;for(let e of this.listeners)e()}getRevision(){return this.revision}getRegisteredFieldNames(){return Array.from(this.fields.keys())}register(e){let t=this.fields.get(e.name),i={...e,rules:e.rules??t?.rules,defaultValue:e.defaultValue??t?.defaultValue,getRules:e.getRules??t?.getRules};return this.fields.set(e.name,i),this.values[e.name]===void 0&&i.defaultValue!==void 0&&(this.values={...this.values,[e.name]:i.defaultValue}),i.setValue(this.values[e.name]),()=>{this.fields.get(e.name)===i&&(this.fields.delete(e.name),this.notify())}}updateFieldOptions(e,t){let i=this.fields.get(e);i&&(t.rules!==void 0&&(i.rules=t.rules),t.defaultValue!==void 0&&(i.defaultValue=t.defaultValue))}getValues(){let e={...this.values};for(let[t,i]of this.fields)e[t]=i.getValue();return e}setValue(e,t,i){this.values={...this.values,[e]:t},this.fields.get(String(e))?.setValue(t),i?.shouldDirty&&(this.dirty={...this.dirty,[e]:!0}),i?.shouldTouch&&(this.touched={...this.touched,[e]:!0}),this.notify()}markTouched(e){this.touched={...this.touched,[e]:!0},this.notify()}markDirty(e){this.dirty={...this.dirty,[e]:!0},this.notify()}clearErrors(e){if(e){let t={...this.errors};delete t[e],this.errors=t,this.notify();return}this.errors={},this.notify()}getFieldError(e){return this.errors[e]?.message}getState(){let e=this.getValues(),t=Object.keys(this.errors).length;return{values:e,errors:this.errors,touched:this.touched,dirty:this.dirty,isSubmitting:this.isSubmitting,isSubmitted:this.isSubmitted,isValid:t===0}}async validateField(e){let t=this.getValues(),o=(await this.resolver(t,{fields:this.buildResolverFields()},{names:[e]})).errors[e]?.message,n={...this.errors};return o?n[e]={type:"validation",message:o}:delete n[e],this.errors=n,this.notify(),!o}async validateAll(){let e=this.getValues(),t=await this.resolver(e,{fields:this.buildResolverFields()},{});return this.errors=t.errors,this.notify(),Object.keys(this.errors).length===0}shouldValidate(e,t){switch(this.isSubmitted?this.reValidateMode:this.mode){case"all":return!0;case"onChange":return t==="change";case"onBlur":return t==="blur";case"onTouched":return t==="blur"&&!!this.touched[e];case"onSubmit":return!1;default:return!1}}async handleFieldChange(e){let t=this.fields.get(e);if(!t)return;let i=t.getValue();this.values={...this.values,[e]:i},this.dirty={...this.dirty,[e]:!0},this.shouldValidate(e,"change")?await this.validateField(e):this.notify()}async handleFieldBlur(e){this.markTouched(e),this.shouldValidate(e,"blur")?await this.validateField(e):this.notify()}shouldDisplayFieldError(e){if(!this.errors[e]?.message)return!1;if(this.isSubmitted)return!0;switch(this.mode){case"all":return!!(this.dirty[e]||this.touched[e]);case"onChange":return!!this.dirty[e];case"onBlur":case"onTouched":return!!this.touched[e];default:return!1}}async handleSubmit(e,t){this.isSubmitting=!0,this.isSubmitted=!0;for(let o of this.fields.keys())this.touched={...this.touched,[o]:!0};this.notify();let i=await this.validateAll();if(this.isSubmitting=!1,this.notify(),i){await e(this.getValues());return}t?.(this.errors)}reset(e){let t=e??{...this.defaultValues,...this.collectFieldDefaults()};this.values={...t},this.errors={},this.touched={},this.dirty={},this.isSubmitted=!1,this.isSubmitting=!1;for(let i of this.fields.values())i.setValue(this.values[i.name]);this.notify()}collectFieldDefaults(){let e={};for(let[t,i]of this.fields)i.defaultValue!==void 0&&(e[t]=i.defaultValue);return e}buildResolverFields(){let e={};for(let[t,i]of this.fields){let o=i.getRules?.()??i.rules;e[t]={rules:o}}return e}};var Ci=()=>{},Ho={register:()=>Ci,updateFieldOptions:()=>{},handleFieldChange:()=>{},handleFieldBlur:()=>{},subscribePresentation:()=>Ci},ue=@Fo("rui-form")class extends ko{@Oo({context:$,initialValue:{ready:!1,revision:0,fields:{},actions:Ho}})formProvider;@Li({name:"rui-submit",bubbles:!0,composed:!0})submitEvent;@Li({name:"rui-invalid",bubbles:!0,composed:!0})invalidEvent;@le({type:Object,defaultValue:{}})defaultValues;@le({type:String,attribute:yt})defaultValuesData;@le({type:Object})resolver;@le({type:String,reflect:!0,defaultValue:"onSubmit"})mode;@le({type:String,reflect:!0,attribute:"revalidate-mode",defaultValue:"onChange"})reValidateMode;store;unsubscribeStore;nativeFormId=`rui-form-native-${Math.random().toString(36).slice(2,9)}`;lastPublishedRevision=-1;lastPublishedContext;presentationListeners=new Set;formActions={register:e=>{let i=this.ensureStore().register(e);return this.publishFormContext({force:!0}),()=>{i(),this.publishFormContext({force:!0})}},updateFieldOptions:(e,t)=>{this.ensureStore().updateFieldOptions(e,t)},handleFieldChange:e=>{this.ensureStore().handleFieldChange(e).then(()=>this.publishFormContext({force:!0}))},handleFieldBlur:e=>{this.ensureStore().handleFieldBlur(e).then(()=>this.publishFormContext({force:!0}))},subscribePresentation:e=>(this.presentationListeners.add(e),this.lastPublishedContext&&e(this.lastPublishedContext),()=>this.presentationListeners.delete(e))};connectedCallback(){super.connectedCallback(),this.ensureStore(),this.publishFormContext({force:!0}),queueMicrotask(()=>this.wireOrphanSubmitButtons())}queryNativeForm(){return this.getRef("form")??this.querySelector("form.rui-form")}wireOrphanSubmitButtons(){let e=this.queryNativeForm();if(e){e.id||(e.id=this.nativeFormId);for(let t of this.querySelectorAll("button[type=submit]"))e.contains(t)||t.setAttribute("form",e.id)}}runFormSubmit(){this.ensureStore().handleSubmit(t=>{this.submitEvent.emit({values:t})},t=>{this.invalidEvent.emit({errors:t})})}disconnectedCallback(){this.unsubscribeStore?.(),this.unsubscribeStore=void 0,super.disconnectedCallback()}resolveMode(){let e=this.getAttribute("mode");return e||(this.mode??"onSubmit")}resolveReValidateMode(){let e=this.getAttribute("revalidate-mode");return e||(this.reValidateMode??"onChange")}resolveDefaultValues(){if(this.defaultValues&&Object.keys(this.defaultValues).length>0)return this.defaultValues;let e=this.defaultValuesData??this.getAttribute(yt);if(!e)return this.defaultValues??{};try{let t=JSON.parse(e);return t&&typeof t=="object"&&!Array.isArray(t)?t:{}}catch{return this.defaultValues??{}}}ensureStore(){return this.store?this.store:(this.store=new se({defaultValues:this.resolveDefaultValues(),resolver:typeof this.resolver=="function"?this.resolver:void 0,mode:this.resolveMode(),reValidateMode:this.resolveReValidateMode()}),this.unsubscribeStore=this.store.subscribe(()=>this.publishFormContext()),this.store)}buildFieldPresentations(e){let t={};for(let i of e.getRegisteredFieldNames()){let o=e.getFieldError(i),n=e.shouldDisplayFieldError(i);t[i]={error:n?o:void 0,invalid:!!(n&&o)}}return t}publishFormContext(e){let t=this.store;if(!t)return;let i=t.getRevision();if(!e?.force&&i===this.lastPublishedRevision)return;this.lastPublishedRevision=i;let o={ready:!0,revision:i,fields:this.buildFieldPresentations(t),actions:this.formActions};this.lastPublishedContext=o,this.formProvider.setContext(o);for(let n of this.presentationListeners)n(o)}@wi(["defaultValues","defaultValuesData","mode","reValidateMode"])syncOptions(){this.ensureStore().updateOptions({defaultValues:this.resolveDefaultValues(),mode:this.resolveMode(),reValidateMode:this.resolveReValidateMode()})}@wi(["resolver"])syncResolver(){typeof this.resolver=="function"&&this.ensureStore().updateOptions({resolver:this.resolver})}@At({selector:"button[type=submit]",type:"click"})onSubmitButtonClick(e){e.preventDefault(),this.runFormSubmit()}@At({ref:"form",type:"submit"})onNativeSubmit(e){e.preventDefault(),this.runFormSubmit()}@At({ref:"form",type:"reset"})onNativeReset(){this.store?.reset()}render(){return React.createElement("form",{class:"rui-form","data-ref":"form",noValidate:!0},React.createElement("slot",null))}};import"./form.css";var Bo=u(ue,({defaultValues:r,defaultValuesData:e,resolver:t,mode:i,reValidateMode:o,children:n})=>React.createElement("rui-form",{mode:i,reValidateMode:o,"attr:revalidate-mode":o,"prop:defaultValues":r,"prop:resolver":t,"attr:data-default-values":e??(r!==void 0?JSON.stringify(r):void 0)},n));import{RadiantElement as No,customElement as Uo,onEvent as $o,prop as qo}from"@ecopages/radiant";var de=@Uo("rui-grid")class extends No{@qo({type:String,defaultValue:""})label;resolvedAriaLabel=this.$.label.map(e=>e||void 0);connectedCallback(){super.connectedCallback(),queueMicrotask(()=>{let e=Array.from(this.querySelectorAll('[role="gridcell"]'));g(e,0)})}getRows(){return Array.from(this.querySelectorAll('[role="row"]'))}@$o({selector:'[role="gridcell"]',type:"keydown"})onKeydown(e){let t=this.getRows(),i=e.target.closest('[role="gridcell"]');if(!i)return;let o=i.parentElement,n=t.indexOf(o),a=Array.from(o.querySelectorAll('[role="gridcell"]')),s=a.indexOf(i),l=n,c=s;switch(e.key){case"ArrowRight":c=Math.min(a.length-1,s+1);break;case"ArrowLeft":c=Math.max(0,s-1);break;case"ArrowDown":l=Math.min(t.length-1,n+1);break;case"ArrowUp":l=Math.max(0,n-1);break;case"Home":c=0;break;case"End":c=a.length-1;break;default:return}e.preventDefault();let p=t[l],d=Array.from(p.querySelectorAll('[role="gridcell"]')),m=d[Math.min(c,d.length-1)],h=Array.from(this.querySelectorAll('[role="gridcell"]'));g(h,h.indexOf(m)),m.focus()}render(){return React.createElement("div",{class:"rui-grid",role:"grid","aria-label":this.resolvedAriaLabel},React.createElement("slot",null))}};import"./grid.css";var Wo=u(de,({slot:r,label:e,rows:t})=>React.createElement("rui-grid",{slot:r,label:e},t.map(i=>React.createElement("div",{class:"rui-grid__row",role:"row"},i.map(o=>React.createElement("div",{class:"rui-grid__cell",role:"gridcell",tabindex:-1},o))))));import"./input.css";function Jo(...r){return r.filter(Boolean).join(" ")}function Go({value:r,type:e="text",placeholder:t,disabled:i,name:o,size:n="md",class:a,id:s,"aria-label":l,"on:input":c,"on:change":p,"on:blur":d,...m}){return React.createElement("input",{id:s,type:e,[P]:"","data-rui-control-type":"text",class:Jo("rui-input",`rui-input--${n}`,a),value:r,placeholder:t,disabled:i,name:o,"aria-label":l,"on:input":c,"on:change":p,"on:blur":d,...m})}import"./label.css";function zo({htmlFor:r,class:e,children:t}){return React.createElement("label",{[Ke]:"",class:["rui-label",e].filter(Boolean).join(" "),htmlFor:r},t)}import{RadiantElement as Ko,customElement as jo,event as Xo,onEvent as Di,onUpdated as Yo,prop as Lt}from"@ecopages/radiant";var pe=@jo("rui-listbox")class extends Ko{@Lt({type:String,reflect:!0,defaultValue:""})value;@Lt({type:String,defaultValue:""})label;@Lt({type:Boolean,reflect:!0,defaultValue:!1})disabled;@Xo({name:"rui-change",bubbles:!0,composed:!0})changeEvent;resolvedAriaLabel=this.$.label.map(e=>e||void 0);resolvedAriaDisabled=this.$.disabled.map(e=>e?"true":void 0);connectedCallback(){super.connectedCallback(),queueMicrotask(()=>this.sync())}@Yo(["value","disabled"])onPropsUpdated(){this.sync()}getOptions(){return Array.from(this.querySelectorAll('[role="option"]'))}sync(){let e=this.getOptions();for(let t of e){let i=t.getAttribute("data-value")===this.value;t.setAttribute("aria-selected",String(i)),t.tabIndex=i||!this.value&&t===e[0]?0:-1}}select(e){this.disabled||e.getAttribute("aria-disabled")==="true"||(this.value=e.getAttribute("data-value")||e.textContent?.trim()||"",this.sync(),this.changeEvent.emit({value:this.value}),e.focus())}@Di({selector:'[role="option"]',type:"click"})onOptionClick(e){let t=e.target.closest('[role="option"]');t&&this.contains(t)&&this.select(t)}@Di({selector:'[role="option"]',type:"keydown"})onOptionKeydown(e){let t=this.getOptions(),i=e.target.closest('[role="option"]');if(!i)return;if(e.key==="Enter"||e.key===" "){e.preventDefault(),this.select(i);return}let o=v({items:t,current:i,key:e.key,orientation:"vertical"});o.handled&&(e.preventDefault(),this.select(o.item))}render(){return React.createElement("div",{class:"rui-listbox",role:"listbox","data-rui-control":!0,"data-rui-control-type":"text","aria-label":this.resolvedAriaLabel,"aria-disabled":this.resolvedAriaDisabled},React.createElement("slot",null))}};import"./listbox.css";var Qo=u(pe,({slot:r,value:e,label:t,disabled:i,options:o})=>React.createElement("rui-listbox",{slot:r,value:e,label:t,disabled:i},o.map(n=>React.createElement("div",{class:"rui-listbox__option",role:"option","data-value":n.value,"aria-disabled":n.disabled?"true":void 0,tabindex:-1},n.label))));import{RadiantElement as Zo,bound as _i,customElement as en,event as Ii,onEvent as ce,onUpdated as tn,prop as Vi,query as ki}from"@ecopages/radiant";import{autoUpdate as rn,computePosition as on,flip as nn,offset as an,shift as sn}from"@floating-ui/dom";var me=@en("rui-menu-button")class extends Zo{@Vi({type:Boolean,reflect:!0,defaultValue:!1})open;@Vi({type:String,defaultValue:"bottom-start"})placement;@ki({ref:"trigger"})triggerTarget;@ki({ref:"menu"})menuTarget;@Ii({name:"rui-change",bubbles:!0,composed:!0})changeEvent;@Ii({name:"rui-close",bubbles:!0,composed:!0})closeEvent;cleanup=null;menuId=`rui-menu-${Math.random().toString(36).slice(2,9)}`;connectedCallback(){super.connectedCallback(),queueMicrotask(()=>this.syncOpenState())}disconnectedCallback(){this.teardownFloating(),super.disconnectedCallback()}getItems(){return Array.from(this.menuTarget?.querySelectorAll('[role="menuitem"]')??[]).filter(e=>e.getAttribute("aria-disabled")!=="true")}teardownFloating(){this.cleanup?.(),this.cleanup=null}@_i updatePosition(){!this.triggerTarget||!this.menuTarget||!this.open||on(this.triggerTarget,this.menuTarget,{placement:this.placement,middleware:[an(6),nn(),sn({padding:8})]}).then(({x:e,y:t})=>{Object.assign(this.menuTarget.style,{left:`${e}px`,top:`${t}px`})})}pendingFocus=null;@_i@tn(["open","placement"])syncOpenState(){if(!this.triggerTarget||!this.menuTarget)return;this.menuTarget.id=this.menuId,this.triggerTarget.setAttribute("aria-controls",this.menuId),this.triggerTarget.setAttribute("aria-haspopup","menu"),this.triggerTarget.setAttribute("aria-expanded",String(this.open)),this.menuTarget.hidden=!this.open,this.open?(this.teardownFloating(),this.cleanup=rn(this.triggerTarget,this.menuTarget,this.updatePosition),this.updatePosition()):this.teardownFloating();let e=this.pendingFocus;if(this.pendingFocus=null,!!e){if(e==="first"&&this.getItems()[0]?.focus(),e==="last"){let t=this.getItems();t[t.length-1]?.focus()}e==="trigger"&&this.triggerTarget?.focus()}}setOpen(e,t=null){let i=this.open;this.pendingFocus=t,this.open=e,i&&!e&&this.closeEvent.emit(),i===e&&this.syncOpenState()}@ce({document:!0,type:"click"})onDocumentClick(e){if(!this.open)return;let t=e.target;this.triggerTarget?.contains(t)||this.menuTarget?.contains(t)||this.setOpen(!1)}@ce({ref:"trigger",type:"click"})onTriggerClick(){this.setOpen(!this.open,this.open?null:"first")}@ce({ref:"trigger",type:"keydown"})onTriggerKeydown(e){switch(e.key){case"ArrowDown":case"Enter":case" ":e.preventDefault(),this.setOpen(!0,"first");break;case"ArrowUp":e.preventDefault(),this.setOpen(!0,"last");break;default:break}}@ce({ref:"menu",type:"keydown"})onMenuKeydown(e){let t=this.getItems(),i=document.activeElement,o=i?t.indexOf(i):-1;switch(e.key){case"ArrowDown":{e.preventDefault(),t[(o+1)%t.length]?.focus();break}case"ArrowUp":{e.preventDefault(),t[(o-1+t.length)%t.length]?.focus();break}case"Home":e.preventDefault(),t[0]?.focus();break;case"End":e.preventDefault(),t[t.length-1]?.focus();break;case"Escape":e.preventDefault(),this.setOpen(!1,"trigger");break;case"Tab":this.setOpen(!1);break;case"Enter":case" ":i&&t.includes(i)&&(e.preventDefault(),this.activateItem(i));break;default:break}}@ce({selector:'[role="menuitem"]',type:"click"})onItemClick(e){let t=e.target.closest('[role="menuitem"]');!t||!this.contains(t)||this.activateItem(t)}activateItem(e){let t=e.getAttribute("data-value")||e.textContent?.trim()||"";this.changeEvent.emit({value:t}),this.setOpen(!1,"trigger")}render(){return React.createElement("div",{class:"rui-menu-button"},React.createElement("button",{type:"button","data-ref":"trigger",class:"rui-button rui-button--primary rui-button--md rui-menu-button__trigger","aria-haspopup":"menu","aria-expanded":"false"},React.createElement("slot",{name:"trigger"}),React.createElement("span",{class:"rui-menu-button__chevron","aria-hidden":"true"})),React.createElement("div",{"data-ref":"menu",class:"rui-menu-button__menu",role:"menu",hidden:!0},React.createElement("slot",null)))}};import"./menu-button.css";var ln=u(me,({slot:r,open:e,placement:t,trigger:i,items:o})=>React.createElement("rui-menu-button",{slot:r,open:e,placement:t},React.createElement("span",{slot:"trigger"},i),o.map(n=>React.createElement("button",{type:"button",class:"rui-menu-button__item",role:"menuitem","data-value":n.value,"aria-disabled":n.disabled?"true":void 0,tabindex:-1},n.label))));import{RadiantElement as un,customElement as dn,event as pn,onEvent as he,prop as cn}from"@ecopages/radiant";var be=@dn("rui-menubar")class extends un{@cn({type:String,defaultValue:""})label;@pn({name:"rui-change",bubbles:!0,composed:!0})changeEvent;resolvedAriaLabel=this.$.label.map(e=>e||void 0);openRoot=null;getTopItems(){return Array.from(this.querySelectorAll('[data-ref="menubar"] > [data-ref="menubar-root"] > [role="menuitem"]'))}getMenuFor(e){return e.closest('[data-ref="menubar-root"]')?.querySelector(':scope > [role="menu"]')??null}getMenuItems(e){return Array.from(e.querySelectorAll(':scope > [role="menuitem"]')).filter(t=>t.getAttribute("aria-disabled")!=="true")}connectedCallback(){super.connectedCallback(),queueMicrotask(()=>g(this.getTopItems(),0))}closeOpenMenu(e=!1){if(!this.openRoot)return;let t=this.openRoot.querySelector(':scope > [role="menuitem"]'),i=this.openRoot.querySelector(':scope > [role="menu"]');t&&t.setAttribute("aria-expanded","false"),i&&(i.hidden=!0),this.openRoot=null,e&&t&&t.focus()}openMenu(e,t="first"){let i=e.closest('[data-ref="menubar-root"]'),o=this.getMenuFor(e);if(!(!i||!o)&&(this.openRoot&&this.openRoot!==i&&this.closeOpenMenu(),e.setAttribute("aria-expanded","true"),o.hidden=!1,this.openRoot=i,t==="first")){let n=this.getMenuItems(o);g(n,0),n[0]?.focus()}}@he({document:!0,type:"click"})onDocumentClick(e){this.openRoot&&(this.contains(e.target)||this.closeOpenMenu())}@he({selector:'[data-ref="menubar"] > [data-ref="menubar-root"] > [role="menuitem"]',type:"keydown"})onTopKeydown(e){let t=this.getTopItems(),i=e.target.closest('[role="menuitem"]');if(!i||!t.includes(i))return;if(e.key==="ArrowDown"||e.key==="Enter"||e.key===" "){this.getMenuFor(i)&&(e.preventDefault(),this.openMenu(i,"first"));return}if(e.key==="Escape"){e.preventDefault(),this.closeOpenMenu(!0);return}let o=v({items:t,current:i,key:e.key,orientation:"horizontal"});o.handled&&(e.preventDefault(),this.openRoot&&(this.getMenuFor(o.item)?this.openMenu(o.item,"first"):this.closeOpenMenu()))}@he({selector:'[data-ref="menubar"] > [data-ref="menubar-root"] > [role="menuitem"]',type:"click"})onTopClick(e){let t=e.target.closest('[role="menuitem"]');if(!t||!this.getTopItems().includes(t)||!this.getMenuFor(t))return;t.getAttribute("aria-expanded")==="true"?this.closeOpenMenu():this.openMenu(t,"first")}@he({selector:'[role="menu"] > [role="menuitem"]',type:"keydown"})onMenuKeydown(e){let t=e.target.closest('[role="menu"]'),i=e.target.closest('[role="menuitem"]');if(!t||!i||!this.contains(t))return;let o=this.getMenuItems(t);if(e.key==="Escape"){e.preventDefault(),this.closeOpenMenu(!0);return}if(e.key==="Enter"||e.key===" "){e.preventDefault(),this.activateItem(i);return}if(e.key==="ArrowLeft"||e.key==="ArrowRight"){let a=this.getTopItems(),s=t.parentElement?.querySelector(':scope > [role="menuitem"]');if(!s)return;e.preventDefault();let l=v({items:a,current:s,key:e.key,orientation:"horizontal"});l.handled&&this.getMenuFor(l.item)&&this.openMenu(l.item,"first");return}v({items:o,current:i,key:e.key,orientation:"vertical"}).handled&&e.preventDefault()}@he({selector:'[role="menu"] > [role="menuitem"]',type:"click"})onMenuItemClick(e){let t=e.target.closest('[role="menuitem"]');!t||!this.contains(t)||t.parentElement?.getAttribute("role")==="menu"&&this.activateItem(t)}activateItem(e){let t=e.getAttribute("data-value")||e.textContent?.trim()||"";this.changeEvent.emit({value:t}),this.closeOpenMenu(!0)}render(){return React.createElement("div",{class:"rui-menubar","data-ref":"menubar",role:"menubar","aria-label":this.resolvedAriaLabel},React.createElement("slot",null))}};import"./menubar.css";var mn=u(be,({slot:r,label:e,items:t})=>React.createElement("rui-menubar",{slot:r,label:e},t.map(i=>React.createElement("div",{class:"rui-menubar__root","data-ref":"menubar-root"},React.createElement("button",{type:"button",class:"rui-menubar__item",role:"menuitem",tabindex:-1,"aria-haspopup":i.items?.length?"true":void 0,"aria-expanded":i.items?.length?"false":void 0},i.label),i.items?.length?React.createElement("div",{class:"rui-menubar__menu",role:"menu",hidden:!0},i.items.map(o=>React.createElement("button",{type:"button",class:"rui-menubar__menu-item",role:"menuitem","data-value":o.id,tabindex:-1},o.label))):null))));import{RadiantElement as hn,customElement as bn,onUpdated as fn,prop as Qe,state as gn}from"@ecopages/radiant";var fe=@bn("rui-meter")class extends hn{@Qe({type:Number,reflect:!0,defaultValue:0})value;@Qe({type:Number,defaultValue:0})min;@Qe({type:Number,defaultValue:100})max;@Qe({type:String,defaultValue:""})label;@gn percent=0;resolvedAriaLabel=this.$.label.map(e=>e||void 0);@fn(["value","min","max"])onRangeUpdated(){this.percent=this.max===this.min?0:Math.round((this.value-this.min)/(this.max-this.min)*100)}render(){return React.createElement("div",{class:"rui-meter"},this.label?React.createElement("span",{class:"rui-meter__label"},this.$.label):null,React.createElement("meter",{class:"rui-meter__bar",min:this.$.min,max:this.$.max,value:this.$.value,"aria-label":this.resolvedAriaLabel},this.$.percent,"%"),React.createElement("span",{class:"rui-meter__value","aria-hidden":"true"},this.$.percent,"%"))}};import"./meter.css";var vn=u(fe,({slot:r,value:e,min:t,max:i,label:o})=>React.createElement("rui-meter",{slot:r,value:e,min:t,max:i,label:o}));import{RadiantElement as xn,customElement as Tn,onEvent as q,prop as En}from"@ecopages/radiant";var yn=["a[href]","button:not([disabled])","input:not([disabled])","select:not([disabled])","textarea:not([disabled])",'[tabindex]:not([tabindex="-1"])'].join(", ");function Rn(r){return r.getClientRects().length>0&&!r.closest("[hidden]")}function Ze(r){return Array.from(r.querySelectorAll(yn)).filter(Rn)}var ge=@Tn("rui-navigation-menu")class extends xn{@En({type:String,defaultValue:""})label;resolvedAriaLabel=this.$.label.map(e=>e||void 0);openValue=null;connectedCallback(){super.connectedCallback(),queueMicrotask(()=>{this.syncPanels(),this.syncBarRovingTabindex()})}getBarItems(){return Array.from(this.querySelectorAll("[data-navigation-item]"))}syncBarRovingTabindex(){let e=this.getBarItems(),t=Math.max(0,e.findIndex(i=>i.tabIndex===0||i===document.activeElement));g(e,t)}isBarTrigger(e){return e.hasAttribute("data-navigation-trigger")}getTriggers(){return Array.from(this.querySelectorAll("[data-navigation-trigger]"))}getPanel(e){return this.querySelector(`[data-navigation-panel][data-value="${e}"]`)}getTrigger(e){return this.querySelector(`[data-navigation-trigger][data-value="${e}"]`)}getPanels(){return Array.from(this.querySelectorAll("[data-navigation-panel]"))}focusPanelEntry(e){let t=this.getPanel(e);if(!t){this.getTrigger(e)?.focus();return}let i=Ze(t);if(i.length>0){i[0].focus();return}t.hasAttribute("tabindex")||(t.tabIndex=-1),t.focus()}syncPanels(){for(let e of this.getPanels()){let t=e.getAttribute("data-value")??"",i=this.openValue===t;e.hidden=!i,e.dataset.state=i?"open":"closed",e.setAttribute("aria-hidden",String(!i));let o=this.getTrigger(t);o&&(o.setAttribute("aria-expanded",String(i)),e.setAttribute("role","region"),e.setAttribute("aria-labelledby",o.id||`${t}-trigger`),o.id||(o.id=`${t}-trigger`))}for(let e of this.getTriggers()){let t=e.getAttribute("data-value")??"",i=this.openValue===t;e.setAttribute("aria-expanded",String(i)),this.getPanel(t)?e.setAttribute("aria-haspopup","true"):e.removeAttribute("aria-haspopup")}}closeMenu(e=!1){let t=this.openValue;t&&(this.openValue=null,this.syncPanels(),e&&this.getTrigger(t)?.focus())}openPanel(e,t=!0){if(this.openValue===e){this.closeMenu(!0);return}this.openValue=e,this.syncPanels(),queueMicrotask(()=>{t?this.focusPanelEntry(e):this.getTrigger(e)?.focus()})}getEventElement(e){let t=e.target;return t instanceof Element?t:t instanceof Text?t.parentElement:null}isWithinOpenPanel(e){if(!this.openValue)return!1;let t=this.getPanel(this.openValue);return t?e.composedPath().some(i=>i instanceof Node&&t.contains(i)):!1}@q({document:!0,type:"click"})onDocumentClick(e){if(!this.openValue||this.isWithinOpenPanel(e))return;let t=this.getEventElement(e);t&&this.contains(t)||this.closeMenu()}@q({document:!0,type:"keydown"})onDocumentKeydown(e){if(e.key!=="Escape"||!this.openValue)return;let t=document.activeElement;t&&!this.contains(t)||(e.preventDefault(),this.closeMenu(!0))}@q({ref:"root",type:"keydown"})onRootKeydown(e){e.key==="Escape"&&this.openValue&&(e.preventDefault(),this.closeMenu(!0))}@q({selector:"[data-navigation-trigger]",type:"click"})onTriggerClick(e){let t=e.target.closest("[data-navigation-trigger]"),i=t?.getAttribute("data-value");!t||!i||(e.preventDefault(),this.openPanel(i))}@q({selector:"[data-navigation-item]",type:"keydown"})onBarItemKeydown(e){let t=e.target.closest("[data-navigation-item]");if(!t)return;let i=this.getBarItems(),o=this.isBarTrigger(t),n=t.getAttribute("data-value");if(e.key==="Escape"){this.openValue&&(e.preventDefault(),this.closeMenu(!0));return}if(o&&n&&(e.key==="Enter"||e.key===" ")){e.preventDefault(),this.openPanel(n);return}if(o&&n&&e.key==="ArrowDown"){e.preventDefault(),this.openValue===n?this.focusPanelEntry(n):this.openPanel(n);return}let a=v({items:i,current:t,key:e.key,orientation:"horizontal",wrap:!1});if(!a.handled)return;e.preventDefault();let s=a.item,l=s.getAttribute("data-value"),c=this.isBarTrigger(s);this.openValue&&(c&&l?this.openPanel(l):this.closeMenu(!1))}@q({selector:"[data-navigation-panel]",type:"keydown"})onPanelKeydown(e){let t=e.target;if(!(t instanceof Element))return;let i=t.closest("[data-navigation-panel]");if(!i||i.hidden)return;let o=i.getAttribute("data-value");if(!o||this.openValue!==o)return;let n=document.activeElement instanceof HTMLElement?document.activeElement:null;if(!n||!i.contains(n))return;if(e.key==="Escape"){e.preventDefault(),this.closeMenu(!0);return}if(e.key==="ArrowUp"&&n===Ze(i)[0]){e.preventDefault(),this.getTrigger(o)?.focus();return}let a=Ze(i);!a.length||!v({items:a,current:n,key:e.key,orientation:"vertical",wrap:!1}).handled||e.preventDefault()}render(){return React.createElement("nav",{class:"rui-navigation-menu","data-ref":"root","aria-label":this.resolvedAriaLabel},React.createElement("div",{class:"rui-navigation-menu__bar"},React.createElement("slot",{name:"triggers"})),React.createElement("div",{class:"rui-navigation-menu__panels"},React.createElement("slot",{name:"panels"})))}};import"./navigation-menu.css";function Sn(...r){return r.filter(Boolean).join(" ")}var Pn=u(ge,({label:r,children:e,slot:t})=>React.createElement("rui-navigation-menu",{slot:t,label:r},e));function Mn({slot:r="triggers",value:e,children:t,variant:i="ghost",...o}){return React.createElement(at,{slot:r,variant:i,"data-navigation-item":!0,"data-navigation-trigger":!0,"data-value":e,...o},t)}function An({slot:r="triggers",href:e,children:t,class:i}){return React.createElement("a",{slot:r,href:e,"data-navigation-item":!0,class:Sn("rui-button","rui-button--ghost","rui-button--md",i)},t)}function Ln({slot:r="panels",value:e,children:t,class:i}){return React.createElement("div",{slot:r,class:i,"data-navigation-panel":!0,"data-value":e},t)}import{RadiantElement as wn,customElement as Cn,event as Dn,onEvent as _n,onUpdated as In,prop as et}from"@ecopages/radiant";var ve=@Cn("rui-radio-group")class extends wn{@et({type:String,reflect:!0,defaultValue:""})value;@et({type:String,defaultValue:""})name;@et({type:String,defaultValue:""})label;@et({type:Boolean,reflect:!0,defaultValue:!1})disabled;@Dn({name:"rui-change",bubbles:!0,composed:!0})changeEvent;resolvedAriaLabel=this.$.label.map(e=>e||void 0);resolvedAriaDisabled=this.$.disabled.map(e=>e?"true":void 0);connectedCallback(){super.connectedCallback(),this.syncRadios()}@In(["value","name","disabled"])syncRadios(){let e=this.querySelectorAll('input[type="radio"]'),t=this.name||this.getAttribute("name")||"rui-radio-group";for(let i of e)i.name=t,i.disabled=this.disabled||i.hasAttribute("data-disabled"),i.checked=this.value!==""&&i.value===this.value}@_n({selector:'input[type="radio"]',type:"change"})onRadioChange(e){let t=e.target;t.checked&&(this.value=t.value,this.changeEvent.emit({value:this.value}))}render(){return React.createElement("div",{class:"rui-radio-group",role:"radiogroup","data-rui-control":!0,"data-rui-control-type":"text","aria-label":this.resolvedAriaLabel,"aria-disabled":this.resolvedAriaDisabled},React.createElement("slot",null))}};import"./radio-group.css";var Vn=u(ve,({slot:r,value:e,name:t,label:i,disabled:o,options:n})=>React.createElement("rui-radio-group",{slot:r,value:e,name:t,label:i,disabled:o},n.map(a=>React.createElement("label",{class:"rui-radio"},React.createElement("input",{type:"radio",class:"rui-radio__input",value:a.value,disabled:a.disabled,"data-disabled":a.disabled?"":void 0}),React.createElement("span",{class:"rui-radio__control","aria-hidden":"true"}),React.createElement("span",{class:"rui-radio__label"},a.label)))));import{RadiantElement as kn,bound as ye,customElement as Fn,event as wt,onEvent as On,onUpdated as Fi,prop as E,query as tt,state as Hn}from"@ecopages/radiant";var Bn=256,Nn=48,Un=200,$n=480,qn=768,Wn="b",Oi=8,Hi=32;function Jn(r){return r.metaKey||r.ctrlKey}function Gn(){return typeof window<"u"&&typeof window.matchMedia=="function"}function it(r){return r==="left"||r==="right"}var Re=@Fn("rui-sidebar")class extends kn{@E({type:String,reflect:!0,defaultValue:"sidebar"})variant;@E({type:String,reflect:!0,defaultValue:"left"})side;@E({type:String,reflect:!0,defaultValue:"off"})collapsible;@E({type:Number,defaultValue:Bn})defaultWidth;@E({type:Number,reflect:!0,attribute:"width"})width;@E({type:Number,defaultValue:Un})minWidth;@E({type:Number,defaultValue:$n})maxWidth;@E({type:Boolean,defaultValue:!0})defaultOpen;@E({type:Boolean,attribute:"open"})open;@E({type:Number,defaultValue:qn})mobileBreakpoint;@E({type:String,defaultValue:"Sidebar"})label;@tt({ref:"root"})rootTarget;@tt({ref:"pane"})paneTarget;@tt({ref:"handle"})handleTarget;@tt({ref:"scrim"})scrimTarget;@wt({name:"rui-sidebar-toggle",bubbles:!0,composed:!0})toggleEvent;@wt({name:"rui-sidebar-resize",bubbles:!0,composed:!0})resizeEvent;@wt({name:"rui-sidebar-mobile-change",bubbles:!0,composed:!0})mobileChangeEvent;@Hn isMobile=!1;mediaQuery=null;mediaListener=e=>this.setMobile(e.matches);dragging=!1;dragStartCoord=0;dragStartSize=0;connectedCallback(){super.connectedCallback(),this.open===void 0&&(this.open=this.defaultOpen),this.ensureWidthInitialized(),this.setAttribute("role","complementary"),this.setAttribute("aria-label",this.label),this.syncHostAttributes(),queueMicrotask(()=>{this.open===void 0&&(this.open=this.defaultOpen),this.ensureWidthInitialized(),this.syncPaneWidthVar(),this.bindMobileMediaQuery()})}disconnectedCallback(){this.endDrag(),this.unbindMobileMediaQuery(),super.disconnectedCallback()}syncHostAttributes(){let e=this.isOpen()?"expanded":"collapsed";this.setAttribute("data-state",e),this.setAttribute("data-collapsible",this.collapsible),this.setAttribute("data-variant",this.variant),this.setAttribute("data-side",this.side),this.setAttribute("data-mobile",String(this.isMobile)),this.setAttribute("data-pane-width",String(this.paneWidth()))}isOpen(){return this.open!==!1}ensureWidthInitialized(){this.hasAttribute("width")||(this.width===void 0||this.width===0)&&(this.width=this.defaultWidth)}@Fi(["open","collapsible","variant","side","width","defaultWidth","defaultOpen","minWidth","maxWidth","isMobile"])onStateUpdated(){this.syncHostAttributes(),this.syncPaneWidthVar()}@Fi(["mobileBreakpoint"])onMobileBreakpointUpdated(){this.bindMobileMediaQuery()}unbindMobileMediaQuery(){this.mediaQuery?.removeEventListener("change",this.mediaListener),this.mediaQuery=null}bindMobileMediaQuery(){if(this.unbindMobileMediaQuery(),this.mobileBreakpoint<=0||!Gn()){this.setMobile(!1);return}this.mediaQuery=window.matchMedia(`(max-width: ${this.mobileBreakpoint-1}px)`),this.mediaQuery.addEventListener("change",this.mediaListener),this.setMobile(this.mediaQuery.matches)}setMobile(e){e!==this.isMobile&&(this.isMobile=e,this.mobileChangeEvent.emit({mobile:e}))}clampWidth(e){return Math.min(this.maxWidth,Math.max(this.minWidth,e))}paneWidth(){return this.isOpen()?this.width&&this.width>0?this.width:this.defaultWidth:this.isMobile?0:this.collapsible==="icon"?Nn:0}syncPaneWidthVar(e=this.paneWidth()){let t=this.rootTarget;t&&t.style.setProperty("--rui-sidebar-pane-width",`${e}px`),this.paneTarget&&(this.paneTarget.style.removeProperty("width"),this.paneTarget.style.removeProperty("height")),this.setAttribute("data-pane-width",String(e))}applyWidth(e,t){let i=this.clampWidth(e);this.width=i,this.syncPaneWidthVar(i),t&&this.resizeEvent.emit({width:i})}toggle(){this.setOpen(!this.isOpen())}setOpen(e){let t=this.isOpen();if(e===t){this.syncPaneWidthVar();return}this.open=e;let i=e?"expanded":"collapsed";this.setAttribute("data-state",i),this.syncPaneWidthVar(),this.toggleEvent.emit({open:e,state:i})}beginDrag(e){if(e.button!==0||this.collapsible!=="off")return;this.dragging=!0;let t=it(this.side);this.dragStartCoord=t?e.clientX:e.clientY,this.dragStartSize=this.paneWidth(),this.handleTarget?.setPointerCapture(e.pointerId),document.addEventListener("pointermove",this.onPointerMove),document.addEventListener("pointerup",this.onPointerUp),document.addEventListener("pointercancel",this.onPointerUp)}endDrag(){this.dragging&&(this.dragging=!1,document.removeEventListener("pointermove",this.onPointerMove),document.removeEventListener("pointerup",this.onPointerUp),document.removeEventListener("pointercancel",this.onPointerUp))}@ye onPointerMove(e){if(!this.dragging)return;let i=it(this.side)?e.clientX:e.clientY,o=this.side==="right"?this.dragStartCoord-i:i-this.dragStartCoord;this.applyWidth(this.dragStartSize+o,!0)}@ye onPointerUp(){this.endDrag()}@ye onHandlePointerDown(e){e.preventDefault(),this.beginDrag(e)}@ye onHandleKeydown(e){let t=e,i=this.paneWidth(),o=it(this.side),n=o?"ArrowLeft":"ArrowUp",a=o?"ArrowRight":"ArrowDown",s=i;if(t.key===n)s=i-(t.shiftKey?Hi:Oi);else if(t.key===a)s=i+(t.shiftKey?Hi:Oi);else if(t.key==="Home")s=this.minWidth;else if(t.key==="End")s=this.maxWidth;else return;e.preventDefault(),this.applyWidth(s,!0)}@ye onScrimClick(){this.isMobile&&this.setOpen(!1)}@On({document:!0,type:"keydown"})onHostKeydown(e){let t=e;if(t.key==="Escape"&&this.isMobile&&this.isOpen()){t.preventDefault(),this.setOpen(!1);return}Jn(t)&&t.key.toLowerCase()===Wn&&(t.preventDefault(),this.toggle())}render(){let e=it(this.side),t=this.isOpen(),i=t?"expanded":"collapsed",o=this.collapsible==="off"&&t&&!this.isMobile,n=`${this.paneWidth()}px`,a=t||!this.isMobile&&this.collapsible==="icon"?void 0:"";return React.createElement("div",{class:"rui-sidebar",style:{"--rui-sidebar-pane-width":n},"data-ref":"root","data-state":i,"data-collapsible":this.collapsible,"data-variant":this.variant,"data-side":this.side,"data-mobile":String(this.isMobile)},React.createElement("button",{"data-ref":"scrim",type:"button",class:"rui-sidebar__scrim",tabindex:-1,"aria-label":"Close sidebar",hidden:!this.isMobile||!t,"on:click":this.onScrimClick}),React.createElement("div",{"data-ref":"pane",class:"rui-sidebar__pane","data-side":this.side,"data-variant":this.variant,"aria-label":this.$.label,inert:a},React.createElement("slot",null)),o?React.createElement("div",{"data-ref":"handle",class:"rui-sidebar__handle",role:"separator",tabindex:0,"aria-orientation":e?"vertical":"horizontal","aria-valuenow":this.paneWidth(),"aria-valuemin":this.minWidth,"aria-valuemax":this.maxWidth,"aria-label":`${this.label} resize handle`,"on:pointerdown":this.onHandlePointerDown,"on:keydown":this.onHandleKeydown},React.createElement("span",{class:"rui-sidebar__handle-grip","aria-hidden":"true"})):null)}};import{RadiantElement as zn,bound as Kn,customElement as jn,onUpdated as Xn,prop as xe,query as Yn}from"@ecopages/radiant";var Te=@jn("rui-sidebar-trigger")class extends zn{@xe({type:String,defaultValue:""})controls;@xe({type:String,attribute:"button-label",defaultValue:"Toggle sidebar"})buttonLabel;@xe({type:String,reflect:!0,attribute:"data-placement",defaultValue:""})placement;@xe({type:String,defaultValue:"ghost"})variant;@xe({type:String,defaultValue:"md"})size;@Yn({ref:"button"})buttonTarget;sidebarListener=null;attachedSidebar=null;connectedCallback(){super.connectedCallback(),this.syncWithSidebar(),queueMicrotask(()=>this.syncWithSidebar())}disconnectedCallback(){this.detachFromSidebar(),super.disconnectedCallback()}@Xn(["controls","buttonLabel","placement"])onControlsUpdated(){this.detachFromSidebar(),this.syncWithSidebar(),this.applyState(this.attachedSidebar?this.readState(this.attachedSidebar):"expanded")}resolveSidebar(){let e=this.controls?.trim();if(e){let i=document.getElementById(e);if(i)return i}let t=this.closest("rui-sidebar");return t?.id?t:null}syncWithSidebar(){let e=this.resolveSidebar();if(e===this.attachedSidebar){e&&this.applyState(this.readState(e));return}this.detachFromSidebar(),e&&(this.attachedSidebar=e,this.sidebarListener=t=>{let i=t.detail;this.applyState(i.state)},e.addEventListener("rui-sidebar-toggle",this.sidebarListener),this.applyState(this.readState(e)))}detachFromSidebar(){this.attachedSidebar&&this.sidebarListener&&this.attachedSidebar.removeEventListener("rui-sidebar-toggle",this.sidebarListener),this.attachedSidebar=null,this.sidebarListener=null}readState(e){return e.getAttribute("data-state")??"expanded"}resolvedButtonLabel(){let e=this.getAttribute("data-button-label")?.trim();if(e)return e;let t=this.getAttribute("button-label")?.trim();return t||this.buttonLabel||"Toggle sidebar"}applyState(e){let t=this.buttonTarget;if(!t)return;let i=this.resolveSidebar(),o=this.resolvedButtonLabel();t.setAttribute("aria-expanded",String(e==="expanded")),t.setAttribute("data-sidebar-state",e),t.setAttribute("aria-label",o),i?.id?t.setAttribute("aria-controls",i.id):this.controls&&t.setAttribute("aria-controls",this.controls)}@Kn onClick(e){e.preventDefault();let t=this.resolveSidebar();t&&typeof t.toggle=="function"&&t.toggle()}placementClass(){return this.placement==="header"?"rui-sidebar__trigger--header":this.placement==="inset"?"rui-sidebar__trigger--inset":""}renderDefaultIcon(){let e=this.resolveSidebar(),t=e?this.readState(e):"expanded",i=this.placement==="header"||this.placement!=="inset"&&t==="expanded",o=this.placement==="inset"||this.placement!=="header"&&t==="collapsed";return React.createElement("span",{class:"rui-sidebar__trigger-icon","aria-hidden":"true"},i?React.createElement("svg",{class:"rui-sidebar__trigger-glyph rui-sidebar__trigger-glyph--collapse",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},React.createElement("path",{d:"M3 5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"}),React.createElement("path",{d:"M9 3v18"}),React.createElement("path",{d:"m14 15 3-3-3-3"})):null,o?React.createElement("svg",{class:"rui-sidebar__trigger-glyph rui-sidebar__trigger-glyph--expand",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},React.createElement("path",{d:"M3 5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"}),React.createElement("path",{d:"M9 3v18"}),React.createElement("path",{d:"m14 9-3 3 3 3"})):null)}render(){let e=this.resolveSidebar(),t=e?.id||this.controls||null,i=this.resolvedButtonLabel(),o=e?this.readState(e):"expanded";return React.createElement("button",{"data-ref":"button",type:"button",class:`rui-button rui-button--${this.variant} rui-button--${this.size} rui-sidebar__trigger ${this.placementClass()}`.trim(),"data-sidebar-state":o,"aria-expanded":String(o==="expanded"),"aria-controls":t||null,"aria-label":i,"on-native:click":this.onClick},React.createElement("slot",null,this.renderDefaultIcon()))}};import"./sidebar.css";function R(...r){return r.filter(Boolean).join(" ")}function Qn({layout:r="default",sidebar:e,children:t,class:i}){return React.createElement("div",{class:R("rui-sidebar-provider",i),"data-layout":r},e,t)}function Zn({children:r,class:e,"aria-label":t}){return React.createElement("div",{class:R("rui-sidebar__header",e),"aria-label":t},r)}function ea({children:r,class:e,"aria-label":t}){return React.createElement("div",{class:R("rui-sidebar__content",e),"aria-label":t},r)}function ta({children:r,class:e}){return React.createElement("div",{class:R("rui-sidebar__footer",e)},r)}function ia({class:r,"aria-label":e}){return React.createElement("hr",{role:"separator","aria-orientation":"horizontal","aria-label":e,class:R("rui-sidebar__separator",r)})}function ra({children:r,class:e,"aria-label":t}){return React.createElement("section",{class:R("rui-sidebar__group",e),"aria-label":t},r)}function Bi({children:r,class:e,id:t}){return React.createElement("h2",{id:t,class:R("rui-sidebar__group-label",e)},r)}function oa({children:r,class:e,"aria-label":t}){return React.createElement("button",{type:"button","aria-label":t,class:R("rui-sidebar__group-action",e)},r)}function na({label:r,action:e,class:t}){return React.createElement("div",{class:R("rui-sidebar__group-header",t)},React.createElement(Bi,null,r),e)}function aa({children:r,class:e,"aria-label":t}){return React.createElement("ul",{role:"list",class:R("rui-sidebar__menu",e),"aria-label":t},r)}function sa({children:r,class:e}){return React.createElement("li",{class:R("rui-sidebar__menu-item",e)},r)}function Ni({children:r,class:e,isActive:t,as:i,href:o,type:n="button",tooltip:a,disabled:s,onClick:l}){let c=R("rui-sidebar__menu-button",t&&"rui-sidebar__menu-button--active",e),p=a,d=typeof r=="string"?void 0:a;return i==="button"||!i&&!o?React.createElement("button",{type:n,class:c,"aria-current":t?"page":void 0,disabled:s,title:p,"aria-label":d,"on:click":l},r):React.createElement("a",{href:o,class:c,"aria-current":t?"page":void 0,title:p,"aria-label":d},r)}function la(r){let{class:e,...t}=r;return React.createElement(Ni,{class:R("rui-sidebar__menu-action",e),...t})}function ua({children:r,class:e,id:t}){return React.createElement("main",{id:t,class:R("rui-sidebar__inset",e)},r)}var da=u(Re,({slot:r,id:e,variant:t,side:i,collapsible:o,defaultOpen:n,open:a,defaultWidth:s,width:l,mobileBreakpoint:c,label:p,class:d,children:m})=>React.createElement("rui-sidebar",{slot:r,id:e,class:d,variant:t,side:i,collapsible:o,"prop:defaultOpen":n,"prop:open":a,"prop:defaultWidth":s,"prop:width":l,"prop:mobileBreakpoint":c,label:p},m)),pa=u(Te,({slot:r,controls:e,triggerLabel:t,placement:i,variant:o,size:n,class:a,children:s})=>React.createElement("rui-sidebar-trigger",{slot:r,class:a,"prop:controls":e,"prop:buttonLabel":t??"Toggle sidebar","attr:data-button-label":t??"Toggle sidebar","prop:placement":i,"attr:data-placement":i,variant:o,size:n},s));import{RadiantElement as ca,customElement as ma,event as ha,onEvent as M,onUpdated as Ui,prop as S,query as Ee}from"@ecopages/radiant";var Se=@ma("rui-slider")class extends ca{@S({type:String,defaultValue:"single"})variant;@S({type:Number,reflect:!0,defaultValue:50})value;@S({type:Number,reflect:!0,attribute:"range-min",defaultValue:25})rangeMin;@S({type:Number,reflect:!0,attribute:"range-max",defaultValue:75})rangeMax;@S({type:Number,defaultValue:0})min;@S({type:Number,defaultValue:100})max;@S({type:Number,defaultValue:1})step;@S({type:Number,defaultValue:0})minDistance;@S({type:Boolean,reflect:!0,defaultValue:!1})disabled;@S({type:String,defaultValue:""})label;@S({type:String,defaultValue:""})name;@ha({name:"rui-change",bubbles:!0,composed:!0})changeEvent;@Ee({ref:"input"})inputTarget;@Ee({ref:"value"})valueTarget;@Ee({ref:"rangeMinThumb"})rangeMinThumb;@Ee({ref:"rangeMaxThumb"})rangeMaxThumb;@Ee({ref:"rangeFill"})rangeFill;interacting=!1;activeThumb=null;pendingRange=null;resolvedDisabledTabindex=this.$.disabled.map(e=>e?-1:0);resolvedMinLabel=this.$.label.map(e=>e?`${e} minimum`:"Minimum value");resolvedMaxLabel=this.$.label.map(e=>e?`${e} maximum`:"Maximum value");resolvedName=this.$.name.map(e=>e||void 0);connectedCallback(){super.connectedCallback(),queueMicrotask(()=>{this.variant==="single"?this.syncInputFromValue():this.syncRangeUi()})}@Ui(["value","min","max","step","variant"])onSinglePropsUpdated(){this.variant!=="single"||this.interacting||this.syncInputFromValue()}@Ui(["rangeMin","rangeMax","min","max","step","minDistance","variant"])onRangePropsUpdated(){this.variant!=="range"||this.activeThumb||this.syncRangeUi()}clamp(e){let t=Math.round(e/this.step)*this.step;return Math.min(this.max,Math.max(this.min,t))}normalizeRange(e=this.rangeMin,t=this.rangeMax){let i=this.clamp(e),o=this.clamp(t);return i>o&&([i,o]=[o,i]),o-i<this.minDistance&&(this.activeThumb==="min"?i=this.clamp(o-this.minDistance):o=this.clamp(i+this.minDistance)),[i,o]}getActiveRange(){return this.normalizeRange(...this.pendingRange??[this.rangeMin,this.rangeMax])}percentFor(e){return this.max===this.min?0:(e-this.min)/(this.max-this.min)*100}valueFromPointer(e,t){let i=t.getBoundingClientRect(),o=Math.min(1,Math.max(0,(e-i.left)/i.width));return this.clamp(this.min+o*(this.max-this.min))}syncInputFromValue(){let e=this.inputTarget;if(!e)return;let t=String(this.value);e.value!==t&&(e.value=t),e.min=String(this.min),e.max=String(this.max),e.step=String(this.step),this.updateDisplayedValue(this.value)}updateDisplayedValue(e){this.valueTarget&&(this.valueTarget.textContent=String(e)),this.inputTarget&&this.inputTarget.setAttribute("aria-valuenow",String(e))}syncRangeUi(){let[e,t]=this.getActiveRange();this.activeThumb||(e!==this.rangeMin&&(this.rangeMin=e),t!==this.rangeMax&&(this.rangeMax=t)),this.paintRangeUi(e,t)}paintRangeUi(e,t){let i=this.percentFor(e),o=this.percentFor(t),n=this.querySelector(".rui-slider__range-track");n&&(n.style.setProperty("--rui-slider-min",`${i}%`),n.style.setProperty("--rui-slider-max",`${o}%`)),this.rangeMinThumb&&(this.rangeMinThumb.setAttribute("aria-valuemin",String(this.min)),this.rangeMinThumb.setAttribute("aria-valuemax",String(t)),this.rangeMinThumb.setAttribute("aria-valuenow",String(e))),this.rangeMaxThumb&&(this.rangeMaxThumb.setAttribute("aria-valuemin",String(e)),this.rangeMaxThumb.setAttribute("aria-valuemax",String(this.max)),this.rangeMaxThumb.setAttribute("aria-valuenow",String(t))),this.rangeFill&&(this.rangeFill.style.left=`${i}%`,this.rangeFill.style.width=`${o-i}%`),this.valueTarget&&(this.valueTarget.textContent=`${e} \u2013 ${t}`)}commitRange(e=!0){let[t,i]=this.getActiveRange(),o=t!==this.rangeMin||i!==this.rangeMax;this.pendingRange=null,this.rangeMin=t,this.rangeMax=i,this.paintRangeUi(t,i),e&&o&&this.changeEvent.emit({values:[t,i]})}setRangeValue(e,t){this.activeThumb=e;let[i,o]=this.pendingRange??[this.rangeMin,this.rangeMax],[n,a]=this.normalizeRange(e==="min"?t:i,e==="max"?t:o);this.pendingRange=[n,a],this.paintRangeUi(n,a)}commitSingleValue(e){let t=Number(e.value);this.updateDisplayedValue(t),t!==this.value&&(this.value=t,this.changeEvent.emit({value:t}))}@M({ref:"input",type:"pointerdown"})onPointerDown(e){e.button!==0||this.variant!=="single"||(this.interacting=!0)}@M({ref:"input",type:"pointerup"})onPointerUp(e){!this.interacting||this.variant!=="single"||(this.interacting=!1,this.commitSingleValue(e.target))}@M({ref:"input",type:"pointercancel"})onPointerCancel(e){!this.interacting||this.variant!=="single"||(this.interacting=!1,this.commitSingleValue(e.target))}@M({ref:"input",type:"input"})onInput(e){if(this.variant!=="single")return;let t=e.target,i=Number(t.value);if(this.updateDisplayedValue(i),this.interacting){this.changeEvent.emit({value:i});return}this.commitSingleValue(t)}@M({ref:"input",type:"change"})onChange(e){this.variant==="single"&&(this.interacting=!1,this.commitSingleValue(e.target))}@M({selector:"[data-thumb]",type:"pointerdown"})onThumbPointerDown(e){if(e.button!==0||this.variant!=="range"||this.disabled)return;let t=e.target.closest("[data-thumb]");if(!t)return;let i=t.getAttribute("data-thumb");this.activeThumb=i,this.pendingRange=[this.rangeMin,this.rangeMax],t.setPointerCapture(e.pointerId),e.preventDefault()}@M({selector:"[data-thumb]",type:"pointermove"})onThumbPointerMove(e){if(!this.activeThumb||this.variant!=="range")return;let t=this.querySelector(".rui-slider__range-track");t&&(this.setRangeValue(this.activeThumb,this.valueFromPointer(e.clientX,t)),this.pendingRange&&this.changeEvent.emit({values:this.pendingRange}))}@M({selector:"[data-thumb]",type:"pointerup"})onThumbPointerUp(){!this.activeThumb||this.variant!=="range"||(this.commitRange(),this.activeThumb=null)}@M({selector:"[data-thumb]",type:"pointercancel"})onThumbPointerCancel(){!this.activeThumb||this.variant!=="range"||(this.pendingRange=null,this.syncRangeUi(),this.activeThumb=null)}@M({selector:"[data-thumb]",type:"keydown"})onThumbKeydown(e){if(this.variant!=="range"||this.disabled)return;let t=e.target.closest("[data-thumb]");if(!t)return;let i=t.getAttribute("data-thumb"),o=i==="min"?this.rangeMin:this.rangeMax,n=o;switch(e.key){case"ArrowRight":case"ArrowUp":n=this.clamp(o+this.step);break;case"ArrowLeft":case"ArrowDown":n=this.clamp(o-this.step);break;case"Home":n=this.min;break;case"End":n=this.max;break;case"PageUp":n=this.clamp(o+this.step*10);break;case"PageDown":n=this.clamp(o-this.step*10);break;default:return}e.preventDefault(),this.setRangeValue(i,n),this.commitRange(!1),this.changeEvent.emit({values:[this.rangeMin,this.rangeMax]}),this.activeThumb=null}render(){return this.variant==="range"?React.createElement("div",{class:"rui-slider rui-slider--range"},this.label?React.createElement("span",{class:"rui-slider__label"},this.label):null,React.createElement("div",{class:"rui-slider__range"},React.createElement("div",{class:"rui-slider__range-track"},React.createElement("div",{class:"rui-slider__range-fill","data-ref":"rangeFill"}),React.createElement("button",{type:"button",class:"rui-slider__thumb","data-ref":"rangeMinThumb","data-thumb":"min",role:"slider",tabindex:this.resolvedDisabledTabindex,"aria-label":this.resolvedMinLabel,"aria-valuemin":this.min,"aria-valuemax":this.rangeMax,"aria-valuenow":this.rangeMin,disabled:this.$.disabled}),React.createElement("button",{type:"button",class:"rui-slider__thumb","data-ref":"rangeMaxThumb","data-thumb":"max",role:"slider",tabindex:this.resolvedDisabledTabindex,"aria-label":this.resolvedMaxLabel,"aria-valuemin":this.rangeMin,"aria-valuemax":this.max,"aria-valuenow":this.rangeMax,disabled:this.$.disabled}))),React.createElement("span",{class:"rui-slider__value","data-ref":"value","aria-hidden":"true"},this.rangeMin," \u2013 ",this.rangeMax)):React.createElement("label",{class:"rui-slider"},this.label?React.createElement("span",{class:"rui-slider__label"},this.label):null,React.createElement("input",{type:"range","data-ref":"input","data-rui-control":!0,"data-rui-control-type":"number",class:"rui-slider__input",disabled:this.$.disabled,name:this.resolvedName,"aria-valuemin":this.min,"aria-valuemax":this.max,"aria-valuenow":this.value}),React.createElement("span",{class:"rui-slider__value","data-ref":"value","aria-hidden":"true"},this.value))}};import"./slider.css";var ba=u(Se,({slot:r,variant:e,value:t,values:i,min:o,max:n,step:a,minDistance:s,disabled:l,label:c,name:p})=>React.createElement("rui-slider",{slot:r,variant:e,value:t,rangeMin:i?.[0],rangeMax:i?.[1],min:o,max:n,step:a,minDistance:s,disabled:l,label:c,name:p}));import{RadiantElement as fa,customElement as ga,event as va,onEvent as rt,onUpdated as ya,prop as V,state as $i}from"@ecopages/radiant";var Pe=@ga("rui-spinbutton")class extends fa{@V({type:Number,reflect:!0,defaultValue:0})value;@V({type:Number,defaultValue:0})min;@V({type:Number,defaultValue:100})max;@V({type:Number,defaultValue:1})step;@V({type:Boolean,reflect:!0,defaultValue:!1})disabled;@V({type:String,defaultValue:""})label;@V({type:String,defaultValue:""})name;@va({name:"rui-change",bubbles:!0,composed:!0})changeEvent;@$i decreaseDisabled=!1;@$i increaseDisabled=!1;nameAttr=this.$.name.map(e=>e||void 0);resolvedAriaLabel=this.$.label.map(e=>e||void 0);@ya(["disabled","value","min","max"])onRangeUpdated(){this.decreaseDisabled=this.isDecreaseDisabled(),this.increaseDisabled=this.isIncreaseDisabled(),queueMicrotask(()=>this.syncSlottedStepperControls())}syncSlottedStepperControls(){let e=this.isDecreaseDisabled(),t=this.isIncreaseDisabled();for(let i of this.querySelectorAll('[slot][data-spinbutton-action="decrease"]'))i.disabled=e;for(let i of this.querySelectorAll('[slot][data-spinbutton-action="increase"]'))i.disabled=t}isDecreaseDisabled(){return this.disabled||this.value<=this.min}isIncreaseDisabled(){return this.disabled||this.value>=this.max}clamp(e){let t=Math.round(e/this.step)*this.step;return Math.min(this.max,Math.max(this.min,t))}setValue(e){let t=this.clamp(e);t!==this.value&&(this.value=t,this.changeEvent.emit({value:t}))}@rt({selector:'[data-spinbutton-action="decrease"]',type:"click"})decrement(){this.isDecreaseDisabled()||this.setValue(this.value-this.step)}@rt({selector:'[data-spinbutton-action="increase"]',type:"click"})increment(){this.isIncreaseDisabled()||this.setValue(this.value+this.step)}@rt({ref:"input",type:"change"})onChange(e){let t=e.target,i=Number(t.value);this.setValue(Number.isFinite(i)?i:this.value),t.value=String(this.value)}@rt({ref:"input",type:"keydown"})onKeydown(e){this.disabled||(e.key==="ArrowUp"?(e.preventDefault(),this.increment()):e.key==="ArrowDown"?(e.preventDefault(),this.decrement()):e.key==="Home"?(e.preventDefault(),this.setValue(this.min)):e.key==="End"&&(e.preventDefault(),this.setValue(this.max)))}render(){return React.createElement("div",{class:"rui-spinbutton"},this.label?React.createElement("span",{class:"rui-spinbutton__label",id:`${this.id||"spin"}-label`},this.$.label):null,React.createElement("div",{class:"rui-spinbutton__control"},React.createElement("slot",{name:"decrease"},React.createElement("button",{type:"button",class:"rui-button rui-button--outline rui-button--sm","data-spinbutton-action":"decrease","aria-label":"Decrease",disabled:this.$.decreaseDisabled},"\u2212")),React.createElement("input",{type:"text",inputmode:"numeric","data-ref":"input","data-rui-control":!0,"data-rui-control-type":"number",class:"rui-spinbutton__input",role:"spinbutton","prop:value":this.$.value.map(String),disabled:this.$.disabled,name:this.nameAttr,"aria-valuemin":this.$.min,"aria-valuemax":this.$.max,"aria-valuenow":this.$.value,"aria-label":this.resolvedAriaLabel}),React.createElement("slot",{name:"increase"},React.createElement("button",{type:"button",class:"rui-button rui-button--outline rui-button--sm","data-spinbutton-action":"increase","aria-label":"Increase",disabled:this.$.increaseDisabled},"+"))))}};import"./spinbutton.css";var Ra=u(Pe,({slot:r,value:e,min:t,max:i,step:o,disabled:n,label:a,name:s,children:l})=>React.createElement("rui-spinbutton",{slot:r,value:e,min:t,max:i,step:o,disabled:n,label:a,name:s},l));import{RadiantElement as xa,customElement as Ta,event as Ea,onEvent as Sa,prop as Ct}from"@ecopages/radiant";var Me=@Ta("rui-switch")class extends xa{@Ct({type:Boolean,reflect:!0,defaultValue:!1})checked;@Ct({type:Boolean,reflect:!0,defaultValue:!1})disabled;@Ct({type:String,defaultValue:""})name;@Ea({name:"rui-change",bubbles:!0,composed:!0})changeEvent;nameAttr=this.$.name.map(e=>e||void 0);@Sa({ref:"input",type:"change"})onInputChange(e){let t=e.target;this.checked=t.checked,this.changeEvent.emit({checked:this.checked})}render(){return React.createElement("label",{class:"rui-switch"},React.createElement("input",{type:"checkbox",role:"switch","data-ref":"input","data-rui-control":!0,"data-rui-control-type":"boolean",class:"rui-switch__input","prop:checked":this.$.checked,disabled:this.$.disabled,name:this.nameAttr}),React.createElement("span",{class:"rui-switch__track","aria-hidden":"true"},React.createElement("span",{class:"rui-switch__thumb"})),React.createElement("span",{class:"rui-switch__label"},React.createElement("slot",null)))}};import"./switch.css";var Pa=u(Me,({slot:r,checked:e,disabled:t,name:i,children:o})=>React.createElement("rui-switch",{slot:r,checked:e,disabled:t,name:i},o));import{RadiantElement as Ma,customElement as Aa,event as La,onEvent as qi,onUpdated as wa,prop as Dt}from"@ecopages/radiant";var Ae=@Aa("rui-tabs")class extends Ma{@Dt({type:String,reflect:!0,defaultValue:""})value;@Dt({type:String,defaultValue:""})label;@Dt({type:Boolean,defaultValue:!0})automatic;@La({name:"rui-change",bubbles:!0,composed:!0})changeEvent;connectedCallback(){super.connectedCallback(),queueMicrotask(()=>{this.syncTablistLabel(),this.syncSelection(this.value||this.getTabs()[0]?.id||"")})}@wa(["value","label"])onPropsUpdated(){this.syncTablistLabel(),this.value&&this.syncSelection(this.value)}getTabs(){return Array.from(this.querySelectorAll('[role="tab"]'))}getPanels(){return Array.from(this.querySelectorAll('[role="tabpanel"]'))}syncTablistLabel(){let e=this.querySelector('[role="tablist"]');!e||!this.label||e.setAttribute("aria-label",this.label)}syncSelection(e){let t=this.getTabs(),i=this.getPanels();if(!t.length)return;let o=t.find(n=>n.id===e)??t[0];this.value=o.id;for(let n of t){let a=n===o;n.setAttribute("aria-selected",String(a)),n.tabIndex=a?0:-1}for(let n of i){let s=t.find(l=>l.getAttribute("aria-controls")===n.id)===o;n.hidden=!s,n.hasAttribute("tabindex")||(n.tabIndex=0)}}activateTab(e){!e||e.getAttribute("aria-disabled")==="true"||(this.syncSelection(e.id),this.changeEvent.emit({value:e.id}))}@qi({selector:'[role="tab"]',type:"click"})onTabClick(e){let t=e.target.closest('[role="tab"]');!t||!this.contains(t)||this.activateTab(t)}@qi({selector:'[role="tab"]',type:"keydown"})onTabKeydown(e){let t=this.getTabs(),i=e.target.closest('[role="tab"]');if(!i||!t.includes(i))return;if(e.key==="Enter"||e.key===" "){e.preventDefault(),this.activateTab(i);return}let o=v({items:t,current:i,key:e.key,orientation:"horizontal"});o.handled&&(e.preventDefault(),this.automatic&&this.activateTab(o.item))}};import"./tabs.css";var Ca=u(Ae,({slot:r,value:e,label:t,automatic:i,items:o})=>React.createElement("rui-tabs",{slot:r,value:e,label:t,automatic:i},React.createElement("div",{class:"rui-tabs__list",role:"tablist"},o.map(n=>React.createElement("button",{type:"button",class:"rui-tabs__tab",role:"tab",id:`tab-${n.id}`,"aria-controls":`panel-${n.id}`,"aria-selected":"false",tabindex:-1},n.label))),o.map(n=>React.createElement("div",{class:"rui-tabs__panel",role:"tabpanel",id:`panel-${n.id}`,"aria-labelledby":`tab-${n.id}`,tabindex:0,hidden:!0},n.children))));import"./textarea.css";function Da(...r){return r.filter(Boolean).join(" ")}function _a({value:r,placeholder:e,disabled:t,name:i,rows:o=3,size:n="md",class:a,id:s,"aria-label":l,"on:input":c,"on:change":p,"on:blur":d,...m}){return React.createElement("textarea",{id:s,[P]:"","data-rui-control-type":"text",class:Da("rui-textarea",`rui-textarea--${n}`,a),value:r,placeholder:e,disabled:t,rows:o,name:i,"aria-label":l,"on:input":c,"on:change":p,"on:blur":d,...m})}import{RadiantElement as ka,bound as Ht,customElement as Fa,onEvent as Ji,onUpdated as ot,prop as A,query as Oa}from"@ecopages/radiant";var Le="rui-toast-show",we="rui-toast-dismiss",Ce=4e3,_t=356,It=14,Vt=24,kt=3,De=45,Ft=200,_e="bottom-end";function k(r){let[e,t]=r.split("-");return{y:e,x:t}}var Ia=1;function Va(){return Ia++}function Wi(r,e){return typeof r=="function"?r(e):r}var Ot=class{subscribers=[];toasts=[];subscribe=e=>(this.subscribers.push(e),e(this.toasts),()=>{let t=this.subscribers.indexOf(e);t>=0&&this.subscribers.splice(t,1)});getSnapshot=()=>this.toasts;publish(){let e=this.toasts;for(let t of this.subscribers)t(e)}create=(e,t={})=>{let i=t.id??Va(),o=t.dismissible??!0,n=this.toasts.findIndex(s=>s.id===i),a={id:i,title:e,description:t.description,variant:t.variant??"default",duration:t.duration,action:t.action,dismissible:o,closeButton:t.closeButton,position:t.position,delete:!1};return n>=0?this.toasts=this.toasts.map(s=>s.id===i?{...s,...a,delete:!1}:s):this.toasts=[a,...this.toasts],this.publish(),i};dismiss=e=>{if(e==null){if(this.toasts.length===0)return;this.toasts=this.toasts.map(t=>({...t,delete:!0}))}else{let t=this.toasts.find(i=>i.id===e);if(!t||t.delete)return;this.toasts=this.toasts.map(i=>i.id===e?{...i,delete:!0}:i)}this.publish()};remove=e=>{this.toasts=this.toasts.filter(t=>t.id!==e),this.publish()};clear=()=>{this.toasts.length!==0&&(this.toasts=[],this.publish())};message=(e,t)=>this.create(e,t);success=(e,t)=>this.create(e,{...t,variant:"success"});error=(e,t)=>this.create(e,{...t,variant:"error"});info=(e,t)=>this.create(e,{...t,variant:"info"});warning=(e,t)=>this.create(e,{...t,variant:"warning"});loading=(e,t)=>this.create(e,{...t,variant:"loading",duration:t?.duration??Number.POSITIVE_INFINITY});promise=(e,t)=>{let i=this.loading(t.loading,{duration:Number.POSITIVE_INFINITY,action:t.action,closeButton:t.closeButton,position:t.position,description:typeof t.description=="string"?t.description:void 0});return(typeof e=="function"?e():e).then(n=>{let a=typeof t.description=="function"?t.description(n):t.description;this.create(Wi(t.success,n),{id:i,variant:"success",description:a,duration:t.duration,action:t.action,closeButton:t.closeButton,position:t.position})}).catch(n=>{let a=typeof t.description=="function"?t.description(n):t.description;this.create(Wi(t.error,n),{id:i,variant:"error",description:a,duration:t.duration,action:t.action,closeButton:t.closeButton,position:t.position})}),i}},b=new Ot;var Ie=@Fa("rui-toast")class extends ka{@A({type:String,reflect:!0,defaultValue:""})toastId;@A({type:String,defaultValue:""})title;@A({type:String,defaultValue:""})description;@A({type:String,reflect:!0,defaultValue:"default"})variant;@A({type:Number,defaultValue:4e3})duration;@A({type:Boolean,defaultValue:!0})dismissible;@A({type:Boolean,defaultValue:!1})closeButton;@A({type:String,defaultValue:""})actionLabel;@A({type:String,defaultValue:_e})position;@A({type:Boolean,defaultValue:!1})markedDelete;@Oa({ref:"toast"})toastTarget;mounted=!1;removed=!1;swiping=!1;swipeOut=!1;swipeAxis=null;swipeOutDirection=null;held=!1;timerReady=!1;timeoutId=null;pointerStart=null;dragStartTime=null;exitTimer=null;connectedCallback(){super.connectedCallback();let e=this.mounted;if(this.addEventListener("pointerdown",this.onPointerDown),this.addEventListener("pointermove",this.onPointerMove),this.addEventListener("pointerup",this.onPointerUp),this.addEventListener("pointercancel",this.onPointerUp),e){this.syncDomState(),this.dispatchEvent(new CustomEvent("rui-toast-mounted",{bubbles:!0}));return}this.timerReady=!1,requestAnimationFrame(()=>{requestAnimationFrame(()=>{this.isConnected&&(this.mounted=!0,this.timerReady=!0,this.syncDomState(),this.dispatchEvent(new CustomEvent("rui-toast-mounted",{bubbles:!0})))})}),this.syncDomState()}disconnectedCallback(){this.clearTimer(),this.exitTimer&&(clearTimeout(this.exitTimer),this.exitTimer=null);let e=this.resolvedId;e!==""&&this.removed&&b.remove(e),this.held=!1,this.timerReady=!1,this.removeEventListener("pointerdown",this.onPointerDown),this.removeEventListener("pointermove",this.onPointerMove),this.removeEventListener("pointerup",this.onPointerUp),this.removeEventListener("pointercancel",this.onPointerUp),super.disconnectedCallback()}@ot(["title","description","variant","actionLabel","closeButton"])onContentUpdated(){this.requestUpdate()}@ot("position")onPositionUpdated(){this.syncDomState()}setPaused(e){if(this.held===e){!e&&this.timerReady&&this.mounted&&!this.removed&&!this.timeoutId&&this.startTimer();return}this.held=e,!(!this.timerReady||!this.mounted||this.removed)&&(e||document.hidden?this.clearTimer():this.startTimer())}@ot("duration")onDurationUpdated(){!this.timerReady||!this.mounted||this.removed||this.held||this.startTimer()}@ot("markedDelete")onMarkedDeleteUpdated(){this.markedDelete&&!this.removed&&this.beginRemove()}get resolvedId(){let e=this.toastId;if(e==null||e==="")return"";let t=Number(e);return Number.isFinite(t)&&String(t)===e?t:e}clearTimer(){this.timeoutId&&clearTimeout(this.timeoutId),this.timeoutId=null}startTimer(){if(!(this.held||this.removed||document.hidden)&&!(this.duration===Number.POSITIVE_INFINITY||this.variant==="loading")){if(this.duration<=0){this.beginRemove();return}this.clearTimer(),this.timeoutId=setTimeout(()=>this.beginRemove(),this.duration)}}beginRemove(){this.removed||(this.removed=!0,this.clearTimer(),this.syncDomState(),this.markedDelete||b.dismiss(this.resolvedId),this.exitTimer=setTimeout(()=>{this.exitTimer=null,b.remove(this.resolvedId)},200))}@Ht onPointerDown(e){!this.dismissible||this.variant==="loading"||e.button!==0||e.target?.closest("[data-toast-close], [data-toast-action], button, a")||(this.dragStartTime=Date.now(),this.pointerStart={x:e.clientX,y:e.clientY},this.swipeAxis=null,this.setPointerCapture(e.pointerId))}@Ht onPointerMove(e){if(!this.pointerStart)return;let{y:t,x:i}=k(this.position),o=e.clientX-this.pointerStart.x,n=e.clientY-this.pointerStart.y;if(!this.swiping){if(Math.abs(o)<8&&Math.abs(n)<8)return;this.swiping=!0,this.syncDomState()}this.swipeAxis||(this.swipeAxis=Math.abs(o)>Math.abs(n)?"x":"y");let a=this.swipeAxis==="x"?o:0,s=this.swipeAxis==="y"?n:0;if(this.swipeAxis==="y"&&!(t==="bottom"?s>0:s<0)&&Math.abs(s)<45){this.style.setProperty("--swipe-amount-x","0px"),this.style.setProperty("--swipe-amount-y","0px");return}if(this.swipeAxis==="x"){let l=i==="start"?a<0:a>0;if(i!=="center"&&!l&&Math.abs(a)<45){this.style.setProperty("--swipe-amount-x","0px"),this.style.setProperty("--swipe-amount-y","0px");return}}this.style.setProperty("--swipe-amount-x",`${a}px`),this.style.setProperty("--swipe-amount-y",`${s}px`)}@Ht onPointerUp(e){if(!this.pointerStart)return;try{this.releasePointerCapture(e.pointerId)}catch{}let t=this.swiping;if(this.swiping=!1,!t){this.pointerStart=null,this.dragStartTime=null,this.swipeAxis=null;return}let i=Number.parseFloat(this.style.getPropertyValue("--swipe-amount-x")||"0"),o=Number.parseFloat(this.style.getPropertyValue("--swipe-amount-y")||"0"),n=this.swipeAxis==="x"?i:o,a=this.dragStartTime?Date.now()-this.dragStartTime:0,s=Math.abs(n)/Math.max(a,1);if((Math.abs(n)>=45||s>.11)&&this.dismissible){let{y:c,x:p}=k(this.position);this.swipeAxis==="x"?(this.swipeOutDirection=i<0?"left":"right",p==="start"&&(this.swipeOutDirection="left"),p==="end"&&(this.swipeOutDirection="right")):this.swipeOutDirection=c==="bottom"?"down":"up",this.swipeOut=!0,this.syncDomState(),this.beginRemove()}else this.style.setProperty("--swipe-amount-x","0px"),this.style.setProperty("--swipe-amount-y","0px"),this.swipeAxis=null,this.syncDomState();this.pointerStart=null,this.dragStartTime=null}@Ji({selector:"[data-toast-close]",type:"click"})onCloseClick(e){e.stopPropagation(),this.dismissible&&this.beginRemove()}@Ji({selector:"[data-toast-action]",type:"click"})onActionClick(e){e.stopPropagation(),b.getSnapshot().find(i=>i.id===this.resolvedId)?.action?.onClick(e),this.dismissible&&this.beginRemove()}syncDomState(){let{y:e,x:t}=k(this.position);this.setAttribute("role","listitem"),this.dataset.mounted=String(this.mounted),this.dataset.removed=String(this.removed),this.dataset.swiping=String(this.swiping),this.dataset.swipeOut=String(this.swipeOut),this.dataset.dismissible=String(this.dismissible),this.dataset.yPosition=e,this.dataset.xPosition=t,this.dataset.variant=this.variant??"default",this.swipeOutDirection?this.dataset.swipeDirection=this.swipeOutDirection:delete this.dataset.swipeDirection}iconForVariant(){switch(this.variant){case"success":return"\u2713";case"error":return"\u2715";case"warning":return"!";case"info":return"i";default:return""}}render(){let e=this.variant??"default",t=this.iconForVariant(),i=e!=="default";return React.createElement("div",{ref:"toast",class:`rui-toast rui-toast--${e}`,role:"status","aria-live":"off","data-ref":"toast"},this.closeButton&&e!=="loading"?React.createElement("button",{type:"button",class:"rui-toast__close","data-toast-close":!0,"aria-label":"Close toast"},"\xD7"):null,i?React.createElement("span",{class:"rui-toast__icon","data-icon":!0,"aria-hidden":"true"},e==="loading"?React.createElement("span",{class:"rui-toast__loader"}):t):null,React.createElement("div",{class:"rui-toast__content"},React.createElement("div",{class:"rui-toast__title","data-title":!0},this.$.title),this.description?React.createElement("div",{class:"rui-toast__description","data-description":!0},this.$.description):null),this.actionLabel?React.createElement("button",{type:"button",class:"rui-toast__action rui-button rui-button--outline rui-button--sm","data-toast-action":!0},this.$.actionLabel):null)}};import{RadiantElement as Ha,bound as nt,customElement as Ba,onEvent as Bt,onUpdated as Na,prop as F,state as Ua}from"@ecopages/radiant";function Gi(r,e){return r instanceof Node&&e.contains(r)}var Ve=@Ba("rui-toaster")class extends Ha{@F({type:String,reflect:!0,defaultValue:_e})position;@F({type:Number,defaultValue:4e3})duration;@F({type:Number,defaultValue:3})visibleToasts;@F({type:Boolean,defaultValue:!1})closeButton;@F({type:Boolean,defaultValue:!1})expand;@F({type:Number,defaultValue:14})gap;@F({type:Number,defaultValue:24})offset;@Ua toasts=[];expanded=!1;interacting=!1;unsubscribe=null;visibilityHandler=null;heights=new Map;observers=new Map;layoutFrame=null;connectedCallback(){super.connectedCallback(),this.syncHostPosition(),this.unsubscribe=b.subscribe(e=>{this.toasts=e,e.length===0&&this.resetLayoutState(),this.scheduleLayoutSync()}),this.visibilityHandler=()=>this.syncPauseState(),document.addEventListener("visibilitychange",this.visibilityHandler)}disconnectedCallback(){this.unsubscribe?.(),this.unsubscribe=null,this.visibilityHandler&&(document.removeEventListener("visibilitychange",this.visibilityHandler),this.visibilityHandler=null),document.removeEventListener("pointerup",this.onPointerUp),document.removeEventListener("pointercancel",this.onPointerUp),this.layoutFrame!=null&&cancelAnimationFrame(this.layoutFrame),this.resetLayoutState(),super.disconnectedCallback()}@Na(["position","duration","visibleToasts","closeButton","expand","gap","offset"])onConfigUpdated(){this.syncHostPosition(),this.scheduleLayoutSync()}@Bt({document:!0,type:Le})onDocumentShow(e){let t=e.detail;t?.title&&b.create(t.title,{id:t.id,description:t.description,variant:t.variant,duration:t.duration,action:t.action,dismissible:t.dismissible,closeButton:t.closeButton,position:t.position})}@Bt({document:!0,type:we})onDocumentDismiss(e){let t=e.detail;b.dismiss(t?.id)}@Bt({selector:"rui-toast",type:"rui-toast-mounted"})onToastMounted(){this.observeToasts(),this.syncPauseState()}filteredToasts(){let e=this.toasts.filter(o=>(o.position??this.position)===this.position),t=[],i=[];for(let o of e)o.delete?i.push(o):t.push(o);return[...t.slice(0,this.visibleToasts),...i]}syncHostPosition(){let{y:e,x:t}=k(this.position);this.dataset.yPosition=e,this.dataset.xPosition=t,this.style.setProperty("--width",`${356}px`),this.style.setProperty("--gap",`${this.gap}px`),this.style.setProperty("--viewport-offset",`${this.offset}px`)}isStackExpanded(){return this.expanded||this.expand}isPaused(){return this.isStackExpanded()||this.interacting||document.hidden}resetLayoutState(){for(let t of this.observers.values())t.disconnect();this.observers.clear(),this.heights.clear(),this.expanded=!1,this.interacting=!1;let e=this.querySelector(".rui-toaster");e&&(e.style.height="0px",e.dataset.expanded="false"),this.dataset.expanded="false"}syncPauseState(){let e=this.isPaused();for(let t of this.querySelectorAll("rui-toast"))t.setPaused(e);this.patchStackLayout()}scheduleLayoutSync(){this.layoutFrame!=null&&cancelAnimationFrame(this.layoutFrame),this.layoutFrame=requestAnimationFrame(()=>{if(this.layoutFrame=null,this.toasts.length>0&&!this.interacting){let t=!!(this.querySelector(".rui-toaster")?.matches(":hover")||this.matches(":hover"));this.expanded=t}this.observeToasts(),this.syncPauseState()})}measureToast(e){let t=e.style.height,i=e.style.overflow;e.style.height="auto",e.style.overflow="visible";let o=e.querySelector(".rui-toast"),n=Math.round(o instanceof HTMLElement?o.offsetHeight:e.offsetHeight)||64;return e.style.height=t,e.style.overflow=i,n}observeToasts(){let e=this.querySelector(".rui-toaster");if(!e)return;let t=[...e.querySelectorAll("rui-toast")],i=new Set;for(let o of t){let n=o.toastId;if(!n)continue;i.add(n);let a=o.querySelector(".rui-toast")??o;if(!this.observers.has(n)){let s=new ResizeObserver(()=>{let l=this.measureToast(o);this.heights.get(n)!==l&&(this.heights.set(n,l),this.patchStackLayout())});s.observe(a),this.observers.set(n,s)}this.heights.set(n,this.measureToast(o))}for(let[o,n]of[...this.observers])i.has(o)||(n.disconnect(),this.observers.delete(o),this.heights.delete(o))}patchStackLayout(){let e=this.querySelector(".rui-toaster");if(!e)return;let t=this.isStackExpanded(),{y:i}=k(this.position),o=i==="bottom"?-1:1;this.dataset.expanded=String(t),e.dataset.expanded=String(t);let n=[...e.querySelectorAll("rui-toast")].filter(p=>p.dataset.mounted==="true"&&p.dataset.removed!=="true");if(n.length===0){e.style.height="0px";return}let a=n.map(p=>{let d=this.heights.get(p.toastId)??this.measureToast(p);return this.heights.set(p.toastId,d),d}),s=a[0]??64,l=0;for(let p=0;p<n.length;p+=1){let d=n[p];if(!d)continue;let m=a[p]??64,h=p===0;if(d.dataset.index=String(p),d.dataset.front=String(h),d.dataset.expanded=String(t),d.style.setProperty("--z-index",String(n.length-p)),t)d.style.setProperty("--y",`translateY(${o*l}px)`),d.style.height=`${m}px`,d.style.overflow="visible",l+=m+this.gap;else if(h)d.style.setProperty("--y","translateY(0px)"),d.style.height=`${m}px`,d.style.overflow="visible";else{let f=Math.max(.7,1-p*.05);d.style.setProperty("--y",`translateY(${o*p*this.gap}px) scale(${f})`),d.style.height=`${s}px`,d.style.overflow="hidden"}}let c=t?Math.max(0,l>0?l-this.gap:s):s+Math.max(0,n.length-1)*this.gap;e.style.height=`${c}px`}@nt onPointerOver(e){Gi(e.relatedTarget,this)||(this.expanded=!0,this.syncPauseState())}@nt onPointerOut(e){Gi(e.relatedTarget,this)||this.interacting||(this.expanded=!1,this.syncPauseState())}@nt onPointerDown(){this.interacting=!0,this.expanded=!0,this.syncPauseState(),document.addEventListener("pointerup",this.onPointerUp,{once:!0}),document.addEventListener("pointercancel",this.onPointerUp,{once:!0})}@nt onPointerUp(){if(!this.interacting)return;this.interacting=!1,this.matches(":hover")||this.querySelector("rui-toast:hover")||(this.expanded=!1),this.syncPauseState()}render(){let e=this.filteredToasts();return React.createElement("section",{class:"rui-toaster-region","aria-label":"Notifications","aria-live":"polite","aria-relevant":"additions text","aria-atomic":"false",tabIndex:-1},React.createElement("ol",{class:"rui-toaster","data-rui-toaster":!0,"on:pointerover":this.onPointerOver,"on:pointerout":this.onPointerOut,"on:pointerdown":this.onPointerDown},e.map(t=>{let i=t.duration??(t.variant==="loading"?Number.POSITIVE_INFINITY:this.duration);return React.createElement("rui-toast",{key:String(t.id),"prop:toastId":String(t.id),"prop:title":t.title,"prop:description":t.description??"","prop:variant":t.variant,"prop:duration":i,"prop:dismissible":t.dismissible,"prop:closeButton":t.closeButton??this.closeButton,"prop:actionLabel":t.action?.label??"","prop:position":t.position??this.position,"prop:markedDelete":!!t.delete})})))}};import"./toast.css";var $a=u(Ie,({slot:r,toastId:e,title:t,description:i,variant:o,duration:n,dismissible:a,closeButton:s,actionLabel:l,position:c,markedDelete:p})=>React.createElement("rui-toast",{slot:r,"prop:toastId":e!=null?String(e):void 0,"prop:title":t,"prop:description":i,"prop:variant":o,"prop:duration":n,"prop:dismissible":a,"prop:closeButton":s,"prop:actionLabel":l,"prop:position":c,"prop:markedDelete":p})),qa=u(Ve,({slot:r,position:e,duration:t,visibleToasts:i,closeButton:o,expand:n,gap:a,offset:s,children:l})=>React.createElement("rui-toaster",{slot:r,"prop:position":e,"prop:duration":t,"prop:visibleToasts":i,"prop:closeButton":o,"prop:expand":n,"prop:gap":a,"prop:offset":s},l));var Wa=Object.assign((r,e)=>b.create(r,e),{message:(r,e)=>b.message(r,e),success:(r,e)=>b.success(r,e),error:(r,e)=>b.error(r,e),info:(r,e)=>b.info(r,e),warning:(r,e)=>b.warning(r,e),loading:(r,e)=>b.loading(r,e),promise:(r,e)=>b.promise(r,e),dismiss:r=>b.dismiss(r),clear:()=>b.clear()});function Ja(r){document.dispatchEvent(new CustomEvent(Le,{detail:r,bubbles:!0,composed:!0}))}function Ga(r){let e=r==null?{}:{id:r};document.dispatchEvent(new CustomEvent(we,{detail:e,bubbles:!0,composed:!0}))}import{RadiantElement as za,customElement as Ka,onEvent as zi,prop as Ki}from"@ecopages/radiant";var ke=@Ka("rui-toolbar")class extends za{@Ki({type:String,defaultValue:""})label;@Ki({type:Boolean,reflect:!0,defaultValue:!1})exclusiveToggles;resolvedAriaLabel=this.$.label.map(e=>e||void 0);getItems(){return Array.from(this.querySelectorAll('button, a[href], input, select, [tabindex]:not([tabindex="-1"])')).filter(e=>!e.hasAttribute("disabled"))}connectedCallback(){super.connectedCallback(),queueMicrotask(()=>g(this.getItems(),0))}@zi({type:"keydown",selector:"button, a[href], input, select, [tabindex]"})onKeydown(e){let t=this.getItems();v({items:t,current:e.target,key:e.key,orientation:"horizontal"}).handled&&e.preventDefault()}getToggleButtons(){return Array.from(this.querySelectorAll("button[data-toggle][aria-pressed]")).filter(e=>!e.disabled)}@zi({type:"click",selector:"button[data-toggle][aria-pressed]",options:{capture:!0}})onToggleButtonClick(e){let t=e.target.closest("button[data-toggle][aria-pressed]");if(!t||t.disabled)return;e.stopImmediatePropagation();let i=t.getAttribute("aria-pressed")==="true";if(this.exclusiveToggles){for(let o of this.getToggleButtons())o.setAttribute("aria-pressed","false");i||t.setAttribute("aria-pressed","true");return}t.setAttribute("aria-pressed",String(!i))}render(){return React.createElement("div",{class:"rui-toolbar",role:"toolbar","aria-label":this.resolvedAriaLabel},React.createElement("slot",null))}};import"./toolbar.css";var ja=u(ke,({slot:r,label:e,exclusiveToggles:t,children:i})=>React.createElement("rui-toolbar",{slot:r,label:e,exclusiveToggles:t},i));import{RadiantElement as Xa,bound as Nt,customElement as Ya,onEvent as Ut,onUpdated as Qa,prop as $t,query as Za}from"@ecopages/radiant";import{autoUpdate as es,computePosition as ts,flip as is,offset as rs,shift as os}from"@floating-ui/dom";var Fe=@Ya("rui-tooltip")class extends Xa{@$t({type:String,defaultValue:""})content;@$t({type:String,defaultValue:"top"})placement;@$t({type:Number,defaultValue:200})delay;@Za({ref:"tooltip"})tooltipTarget;open=!1;showTimer=null;hideTimer=null;cleanup=null;tooltipId=`rui-tooltip-${Math.random().toString(36).slice(2,9)}`;describedEl=null;connectedCallback(){super.connectedCallback(),this.addEventListener("pointerenter",this.onPointerEnter),this.addEventListener("pointerleave",this.onPointerLeave),queueMicrotask(()=>this.wireTrigger())}disconnectedCallback(){this.clearTimers(),this.teardownFloating(),this.removeEventListener("pointerenter",this.onPointerEnter),this.removeEventListener("pointerleave",this.onPointerLeave),this.describedEl?.removeAttribute("aria-describedby"),super.disconnectedCallback()}clearTimers(){this.showTimer&&clearTimeout(this.showTimer),this.hideTimer&&clearTimeout(this.hideTimer),this.showTimer=null,this.hideTimer=null}teardownFloating(){this.cleanup?.(),this.cleanup=null}getAnchor(){return this.querySelector('button, a[href], input, select, textarea, [tabindex]:not([tabindex="-1"])')??this}wireTrigger(){this.describedEl?.removeAttribute("aria-describedby"),this.describedEl=this.getAnchor(),this.describedEl.setAttribute("aria-describedby",this.tooltipId)}@Nt updatePosition(){if(!this.tooltipTarget||!this.open)return;let e=this.getAnchor();ts(e,this.tooltipTarget,{placement:this.placement,middleware:[rs(8),is(),os({padding:8})]}).then(({x:t,y:i})=>{Object.assign(this.tooltipTarget.style,{left:`${t}px`,top:`${i}px`})})}@Qa(["content","placement"])onDescribedPropsUpdated(){this.wireTrigger(),this.open&&this.updatePosition()}setOpen(e){if(this.clearTimers(),this.open=e,!!this.tooltipTarget)if(this.tooltipTarget.hidden=!e,e){this.teardownFloating();let t=this.getAnchor();this.cleanup=es(t,this.tooltipTarget,this.updatePosition),this.updatePosition()}else this.teardownFloating()}scheduleShow(){if(this.clearTimers(),this.delay<=0){this.setOpen(!0);return}this.showTimer=setTimeout(()=>this.setOpen(!0),this.delay)}scheduleHide(){this.clearTimers(),this.hideTimer=setTimeout(()=>this.setOpen(!1),80)}@Ut({document:!0,type:"keydown"})onDocumentKeydown(e){!this.open||e.key!=="Escape"||this.setOpen(!1)}@Ut({type:"focusin",selector:".rui-tooltip__trigger"})onFocusIn(){this.scheduleShow()}@Ut({type:"focusout",selector:".rui-tooltip__trigger"})onFocusOut(e){let t=e.relatedTarget;t&&this.contains(t)||this.scheduleHide()}@Nt onPointerEnter(){this.scheduleShow()}@Nt onPointerLeave(){this.scheduleHide()}render(){return React.createElement("span",{class:"rui-tooltip"},React.createElement("span",{class:"rui-tooltip__trigger"},React.createElement("slot",null)),React.createElement("span",{"data-ref":"tooltip",id:this.tooltipId,class:"rui-tooltip__content",role:"tooltip",hidden:!0},this.$.content))}};import"./tooltip.css";var ns=u(Fe,({slot:r,content:e,placement:t,delay:i,children:o})=>React.createElement("rui-tooltip",{slot:r,content:e,placement:t,delay:i},o));import{RadiantElement as as,customElement as ss,event as ls,onEvent as ji,onUpdated as us,prop as Xi}from"@ecopages/radiant";var Oe=@ss("rui-tree")class extends as{@Xi({type:String,defaultValue:""})label;@Xi({type:String,reflect:!0,defaultValue:""})value;@ls({name:"rui-change",bubbles:!0,composed:!0})changeEvent;resolvedAriaLabel=this.$.label.map(e=>e||void 0);getVisibleItems(){return Array.from(this.querySelectorAll('[role="treeitem"]')).filter(e=>{let t=e.parentElement;for(;t&&t!==this;){if(t.getAttribute("role")==="group"&&t.hidden)return!1;t=t.parentElement}return!0})}getParentItem(e){let t=e.closest('[role="group"]');if(!t)return null;let i=t.previousElementSibling;return i?.getAttribute("role")==="treeitem"?i:null}getSiblingItems(e){let t=this.getParentItem(e),i=t?t.nextElementSibling?.getAttribute("role")==="group"?t.nextElementSibling:null:this.querySelector('[role="tree"]')??this;return i?Array.from(i.querySelectorAll(':scope > li > [role="treeitem"], :scope > [role="treeitem"]')):[]}syncSelection(){let e=Array.from(this.querySelectorAll('[role="treeitem"]')),t=this.getVisibleItems(),i=0;e.forEach((o,n)=>{let a=o.getAttribute("data-value")||o.id||"",s=!!this.value&&a===this.value;if(o.setAttribute("aria-selected",String(s)),s){let l=t.indexOf(o);l>=0&&(i=l)}else!this.value&&n===0&&(i=0)}),g(t,i)}syncExpanded(){let e=Array.from(this.querySelectorAll('[role="treeitem"]'));for(let t of e){if(!t.hasAttribute("aria-expanded"))continue;let i=t.nextElementSibling;i?.getAttribute("role")==="group"&&(i.hidden=t.getAttribute("aria-expanded")==="false")}}connectedCallback(){super.connectedCallback(),queueMicrotask(()=>{this.syncExpanded(),this.syncSelection()})}@us("value")onValueUpdated(){this.syncSelection()}select(e){let t=e.getAttribute("data-value")||e.id||e.textContent?.trim()||"";this.value=t,this.syncSelection(),this.changeEvent.emit({value:t}),e.focus()}setExpanded(e,t){e.setAttribute("aria-expanded",String(t));let i=e.nextElementSibling;i?.getAttribute("role")==="group"&&(i.hidden=!t),this.syncSelection()}@ji({selector:'[role="treeitem"]',type:"click"})onClick(e){let t=e.target.closest('[role="treeitem"]');!t||!this.contains(t)||(t.hasAttribute("aria-expanded")&&this.setExpanded(t,t.getAttribute("aria-expanded")!=="true"),this.select(t))}@ji({selector:'[role="treeitem"]',type:"keydown"})onKeydown(e){let t=e.target.closest('[role="treeitem"]');if(t)switch(e.key){case"ArrowDown":case"ArrowUp":case"Home":case"End":{if(!v({items:this.getVisibleItems(),current:t,key:e.key,orientation:"vertical",wrap:!1}).handled)return;e.preventDefault();break}case"ArrowRight":{if(e.preventDefault(),t.getAttribute("aria-expanded")==="false"){this.setExpanded(t,!0);return}if(t.getAttribute("aria-expanded")==="true"){let i=this.getVisibleItems(),o=i.indexOf(t);i[o+1]&&N(i,o+1)}break}case"ArrowLeft":{if(e.preventDefault(),t.getAttribute("aria-expanded")==="true"){this.setExpanded(t,!1);return}let i=this.getParentItem(t);if(i){let o=this.getVisibleItems(),n=o.indexOf(i);n>=0&&N(o,n)}break}case"*":{e.preventDefault();for(let i of this.getSiblingItems(t))i.hasAttribute("aria-expanded")&&this.setExpanded(i,!0);break}case"Enter":{e.preventDefault(),t.hasAttribute("aria-expanded")&&this.setExpanded(t,t.getAttribute("aria-expanded")!=="true"),this.select(t);break}case" ":{e.preventDefault(),this.select(t);break}default:break}}render(){return React.createElement("ul",{class:"rui-tree",role:"tree","aria-label":this.resolvedAriaLabel,"aria-multiselectable":"false"},React.createElement("slot",null))}};import"./tree.css";var Yi=({nodes:r})=>React.createElement(React.Fragment,null,r.map(e=>React.createElement("li",{class:"rui-tree__item"},e.children?.length?React.createElement(React.Fragment,null,React.createElement("button",{type:"button",class:"rui-tree__node",role:"treeitem","data-value":e.id,"aria-expanded":e.expanded??!1,"aria-selected":"false",tabindex:-1},e.label),React.createElement("ul",{role:"group",hidden:!(e.expanded??!1)},React.createElement(Yi,{nodes:e.children}))):React.createElement("button",{type:"button",class:"rui-tree__node",role:"treeitem","data-value":e.id,"aria-selected":"false",tabindex:-1},e.label)))),ds=u(Oe,({slot:r,label:e,value:t,nodes:i})=>React.createElement("rui-tree",{slot:r,label:e,value:t},React.createElement(Yi,{nodes:i})));import{RadiantElement as ps,customElement as cs,event as ms,onEvent as Qi,onUpdated as hs,prop as Zi}from"@ecopages/radiant";var He=@cs("rui-treegrid")class extends ps{@Zi({type:String,defaultValue:""})label;@Zi({type:String,reflect:!0,defaultValue:""})value;@ms({name:"rui-change",bubbles:!0,composed:!0})changeEvent;resolvedAriaLabel=this.$.label.map(e=>e||void 0);getDataRows(){return Array.from(this.querySelectorAll('[role="row"][data-row-id]'))}getVisibleRows(){return this.getDataRows().filter(e=>{let t=e.parentElement;for(;t&&t!==this;){if(t.getAttribute("role")==="rowgroup"&&t.hidden)return!1;t=t.parentElement}return!0})}getRowCells(e){return Array.from(e.querySelectorAll(':scope > [role="gridcell"]'))}getVisibleCells(){return this.getVisibleRows().flatMap(e=>this.getRowCells(e))}getParentRow(e){let t=e.parentElement;if(!t||t.getAttribute("role")!=="rowgroup")return null;let i=t.previousElementSibling;return i?.getAttribute("role")==="row"?i:null}syncExpanded(){for(let e of this.getDataRows()){if(!e.hasAttribute("aria-expanded"))continue;let t=e.nextElementSibling;t?.getAttribute("role")==="rowgroup"&&(t.hidden=e.getAttribute("aria-expanded")==="false")}}syncSelection(){let e=this.getVisibleCells(),t=0;for(let i of this.getDataRows()){let o=i.getAttribute("data-row-id")??"",n=!!this.value&&o===this.value;for(let a of this.getRowCells(i))if(a.setAttribute("aria-selected",String(n)),n){let s=e.indexOf(a);s>=0&&(t=s)}}e.length>0&&g(e,t)}connectedCallback(){super.connectedCallback(),queueMicrotask(()=>{this.syncExpanded(),this.syncSelection()})}@hs("value")onValueUpdated(){this.syncSelection()}setExpanded(e,t){e.setAttribute("aria-expanded",String(t));let i=e.nextElementSibling;i?.getAttribute("role")==="rowgroup"&&(i.hidden=!t)}activateCell(e){let t=e.closest('[role="row"][data-row-id]');if(!t)return;let i=t.getAttribute("data-row-id")??"",o=this.getRowCells(t).indexOf(e);this.value=i,this.syncSelection(),this.changeEvent.emit({rowId:i,columnIndex:o}),e.focus()}focusCell(e,t){if(this.getVisibleRows().indexOf(e)<0)return;let n=this.getVisibleCells(),a=this.getRowCells(e),s=a[Math.min(Math.max(0,t),a.length-1)],l=n.indexOf(s);l>=0&&N(n,l)}@Qi({selector:'[role="gridcell"]',type:"click"})onCellClick(e){let t=e.target.closest('[role="gridcell"]');if(!t||!this.contains(t))return;let i=t.closest('[role="row"][data-row-id]');i&&this.getRowCells(i).indexOf(t)===0&&i.hasAttribute("aria-expanded")&&this.setExpanded(i,i.getAttribute("aria-expanded")!=="true"),this.activateCell(t)}@Qi({selector:'[role="gridcell"]',type:"keydown"})onCellKeydown(e){let t=e.target.closest('[role="gridcell"]'),i=t?.closest('[role="row"][data-row-id]');if(!t||!i)return;let o=this.getVisibleRows(),n=o.indexOf(i),a=this.getRowCells(i),s=a.indexOf(t),l=s===0,c=i.hasAttribute("aria-expanded"),p=i.getAttribute("aria-expanded")==="true";switch(e.key){case"ArrowRight":{if(e.preventDefault(),l&&c&&!p){this.setExpanded(i,!0),this.syncSelection();return}s<a.length-1&&this.focusCell(i,s+1);return}case"ArrowLeft":{if(e.preventDefault(),l&&c&&p){this.setExpanded(i,!1),this.syncSelection();return}if(s>0){this.focusCell(i,s-1);return}let d=this.getParentRow(i);d&&this.focusCell(d,0);return}case"ArrowDown":{e.preventDefault();let d=o[Math.min(o.length-1,n+1)];d&&d!==i&&this.focusCell(d,s);return}case"ArrowUp":{e.preventDefault();let d=o[Math.max(0,n-1)];d&&d!==i&&this.focusCell(d,s);return}case"Home":{e.preventDefault(),this.focusCell(i,0);return}case"End":{e.preventDefault(),this.focusCell(i,a.length-1);return}case"*":{e.preventDefault();for(let d of this.getDataRows())d.hasAttribute("aria-expanded")&&this.setExpanded(d,!0);this.syncSelection();return}case"Enter":{if(e.preventDefault(),l&&c){this.setExpanded(i,!p),this.syncSelection();return}this.activateCell(t);return}case" ":{e.preventDefault(),this.activateCell(t);return}default:return}}render(){return React.createElement("div",{class:"rui-treegrid",role:"treegrid","aria-label":this.resolvedAriaLabel},React.createElement("slot",null))}};import"./treegrid.css";var er=({rows:r})=>React.createElement(React.Fragment,null,r.map(e=>React.createElement(React.Fragment,null,React.createElement("div",{class:"rui-treegrid__row",role:"row","data-row-id":e.id,"aria-expanded":e.children?.length?e.expanded??!1:void 0},e.cells.map((t,i)=>React.createElement("div",{class:"rui-treegrid__cell",role:"gridcell",tabindex:-1,"data-col":i,"aria-selected":"false"},t))),e.children?.length?React.createElement("div",{class:"rui-treegrid__group",role:"rowgroup",hidden:!(e.expanded??!1)},React.createElement(er,{rows:e.children})):null))),bs=u(He,({slot:r,label:e,value:t,columns:i,rows:o})=>React.createElement("rui-treegrid",{slot:r,label:e,value:t},React.createElement("div",{class:"rui-treegrid__row rui-treegrid__row--header",role:"row"},i.map(n=>React.createElement("div",{class:"rui-treegrid__cell rui-treegrid__cell--header",role:"columnheader"},n))),React.createElement(er,{rows:o})));import{RadiantElement as fs,bound as tr,customElement as gs,event as vs,onEvent as ir,onUpdated as ys,prop as qt,query as rr}from"@ecopages/radiant";var Be=@gs("rui-window-splitter")class extends fs{@qt({type:Number,reflect:!0,defaultValue:50})value;@qt({type:String,defaultValue:"horizontal"})orientation;@qt({type:String,defaultValue:"Split view"})label;@rr({ref:"primary"})primaryTarget;@rr({ref:"separator"})separatorTarget;@vs({name:"rui-splitter-change",bubbles:!0,composed:!0})changeEvent;resolvedAriaOrientation=this.$.orientation.map(e=>e!=="vertical"?"vertical":"horizontal");dragging=!1;connectedCallback(){super.connectedCallback(),queueMicrotask(()=>this.applySize())}disconnectedCallback(){document.removeEventListener("pointermove",this.onPointerMove),document.removeEventListener("pointerup",this.onPointerUp),super.disconnectedCallback()}@ys(["value","orientation"])onPropsUpdated(){this.applySize()}applySize(){if(!this.primaryTarget)return;let e=`${Math.min(80,Math.max(20,this.value))}%`;this.orientation==="vertical"?(this.primaryTarget.style.height=e,this.primaryTarget.style.width=""):(this.primaryTarget.style.width=e,this.primaryTarget.style.height="")}@ir({ref:"separator",type:"keydown"})onKeydown(e){let t=e.shiftKey?10:2,i=this.orientation!=="vertical";i&&e.key==="ArrowLeft"||!i&&e.key==="ArrowUp"?(e.preventDefault(),this.updateValue(Math.max(20,this.value-t))):i&&e.key==="ArrowRight"||!i&&e.key==="ArrowDown"?(e.preventDefault(),this.updateValue(Math.min(80,this.value+t))):e.key==="Home"?(e.preventDefault(),this.updateValue(20)):e.key==="End"&&(e.preventDefault(),this.updateValue(80))}updateValue(e){e!==this.value&&(this.value=e,this.changeEvent.emit({value:e}))}@ir({ref:"separator",type:"pointerdown"})onPointerDown(e){this.dragging=!0,this.separatorTarget.setPointerCapture(e.pointerId),document.addEventListener("pointermove",this.onPointerMove),document.addEventListener("pointerup",this.onPointerUp)}@tr onPointerMove(e){if(!this.dragging)return;let t=this.getBoundingClientRect();this.orientation==="vertical"?this.updateValue(Math.min(80,Math.max(20,(e.clientY-t.top)/t.height*100))):this.updateValue(Math.min(80,Math.max(20,(e.clientX-t.left)/t.width*100)))}@tr onPointerUp(){this.dragging=!1,document.removeEventListener("pointermove",this.onPointerMove),document.removeEventListener("pointerup",this.onPointerUp)}render(){let e=this.orientation!=="vertical";return React.createElement("div",{class:`rui-window-splitter rui-window-splitter--${e?"horizontal":"vertical"}`},React.createElement("div",{"data-ref":"primary",class:"rui-window-splitter__pane"},React.createElement("slot",{name:"primary"})),React.createElement("div",{"data-ref":"separator",class:"rui-window-splitter__separator",role:"separator",tabindex:0,"aria-orientation":this.resolvedAriaOrientation,"aria-valuenow":this.$.value,"aria-valuemin":20,"aria-valuemax":80,"aria-label":this.$.label}),React.createElement("div",{class:"rui-window-splitter__pane"},React.createElement("slot",{name:"secondary"})))}};import"./window-splitter.css";var Rs=u(Be,({slot:r,value:e,orientation:t,label:i,primary:o,secondary:n})=>React.createElement("rui-window-splitter",{slot:r,value:e,orientation:t,label:i},React.createElement("div",{slot:"primary"},o),React.createElement("div",{slot:"secondary"},n)));export{_e as DEFAULT_TOAST_POSITION,se as FormStore,P as RUI_CONTROL_ATTR,pt as RUI_DIALOG_ACTION_EVENT,We as RUI_DIALOG_CLOSE_EVENT,w as RUI_DIALOG_HOST_ID,qe as RUI_DIALOG_OPEN_EVENT,Je as RUI_DIALOG_TOGGLE_EVENT,je as RUI_FIELD_DESCRIPTION_ATTR,U as RUI_FIELD_ERROR_ATTR,Ke as RUI_FIELD_LABEL_ATTR,gt as RUI_FIELD_MANAGED_ATTR,we as RUI_TOAST_DISMISS_EVENT,Le as RUI_TOAST_SHOW_EVENT,ur as RuiAlert,W as RuiAlertElement,cr as RuiBreadcrumb,J as RuiBreadcrumbElement,vr as RuiBreadcrumbEllipsis,hr as RuiBreadcrumbItem,br as RuiBreadcrumbLink,mr as RuiBreadcrumbList,fr as RuiBreadcrumbPage,gr as RuiBreadcrumbSeparator,at as RuiButton,wr as RuiCarousel,G as RuiCarouselElement,Ar as RuiCarouselNext,Mr as RuiCarouselPrev,Lr as RuiCarouselRotation,Kt as RuiCarouselSlide,Vr as RuiCheckbox,K as RuiCheckboxElement,Br as RuiCombobox,jt as RuiComboboxControl,X as RuiComboboxElement,Xt as RuiComboboxInput,Qt as RuiComboboxListbox,Zt as RuiComboboxOption,Yt as RuiComboboxTrigger,Gr as RuiDialog,ii as RuiDialogActions,ti as RuiDialogBody,ri as RuiDialogClose,Q as RuiDialogElement,ei as RuiDialogTitle,ho as RuiDisclosure,_ as RuiDisclosureElement,bo as RuiDisclosureGroup,ie as RuiDisclosureGroupElement,hi as RuiDisclosureIcon,fi as RuiDisclosurePanel,bi as RuiDisclosureTrigger,yo as RuiFeed,re as RuiFeedElement,Do as RuiField,_o as RuiFieldDescription,ne as RuiFieldElement,Io as RuiFieldError,Bo as RuiForm,ue as RuiFormElement,Wo as RuiGrid,de as RuiGridElement,Go as RuiInput,zo as RuiLabel,Qo as RuiListbox,pe as RuiListboxElement,ln as RuiMenuButton,me as RuiMenuButtonElement,mn as RuiMenubar,be as RuiMenubarElement,vn as RuiMeter,fe as RuiMeterElement,Pn as RuiNavigationMenu,ge as RuiNavigationMenuElement,An as RuiNavigationMenuLink,Ln as RuiNavigationMenuPanel,Mn as RuiNavigationMenuTrigger,Vn as RuiRadioGroup,ve as RuiRadioGroupElement,da as RuiSidebar,ea as RuiSidebarContent,Re as RuiSidebarElement,ta as RuiSidebarFooter,ra as RuiSidebarGroup,oa as RuiSidebarGroupAction,na as RuiSidebarGroupHeader,Bi as RuiSidebarGroupLabel,Zn as RuiSidebarHeader,ua as RuiSidebarInset,aa as RuiSidebarMenu,la as RuiSidebarMenuAction,Ni as RuiSidebarMenuButton,sa as RuiSidebarMenuItem,Qn as RuiSidebarProvider,ia as RuiSidebarSeparator,pa as RuiSidebarTrigger,Te as RuiSidebarTriggerElement,ba as RuiSlider,Se as RuiSliderElement,Ra as RuiSpinbutton,Pe as RuiSpinbuttonElement,Pa as RuiSwitch,Me as RuiSwitchElement,Ca as RuiTabs,Ae as RuiTabsElement,_a as RuiTextarea,$a as RuiToast,Ie as RuiToastElement,qa as RuiToaster,Ve as RuiToasterElement,ja as RuiToolbar,ke as RuiToolbarElement,ns as RuiTooltip,Fe as RuiTooltipElement,ds as RuiTree,Oe as RuiTreeElement,bs as RuiTreegrid,He as RuiTreegridElement,Rs as RuiWindowSplitter,Be as RuiWindowSplitterElement,Ft as TOAST_EXIT_MS,It as TOAST_GAP,Ce as TOAST_LIFETIME,De as TOAST_SWIPE_THRESHOLD,Vt as TOAST_VIEWPORT_OFFSET,kt as TOAST_VISIBLE_AMOUNT,_t as TOAST_WIDTH,to as closeDialog,ro as createDialogHandle,Mt as createRulesResolver,Ga as dismissToast,St as fieldContext,oe as findFieldControl,$ as formContext,Zr as getOpenDialogId,pi as installDialogs,eo as openDialog,xt as readControlValue,Mi as runRulesResolver,Ja as showToast,Wa as toast,io as toggleDialog,ct as uninstallDialogs,Tt as writeControlValue};
2
+ //# sourceMappingURL=index.js.map