@blukavantui/community 1.0.1 → 1.2.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 (304) hide show
  1. package/README.md +11 -5
  2. package/dist/build-audit.json +234 -44
  3. package/dist/checkbox.css +1 -0
  4. package/dist/checkbox.d.ts +2 -0
  5. package/dist/checkbox.js +1 -0
  6. package/dist/chunk-2BSBXDOT.js +1 -0
  7. package/dist/chunk-4LHIQROI.js +0 -0
  8. package/dist/chunk-5ENZVZGF.js +0 -0
  9. package/dist/chunk-6T677NSC.js +1 -0
  10. package/dist/chunk-7CEOCZ5L.js +0 -0
  11. package/dist/chunk-7DXFNK7C.js +1 -0
  12. package/dist/chunk-AL2ETLJV.js +1 -0
  13. package/dist/chunk-BN3PDE5G.js +0 -0
  14. package/dist/chunk-CNIIMGT3.js +0 -0
  15. package/dist/chunk-CSTCEBEK.js +1 -0
  16. package/dist/chunk-DRZM2AL3.js +0 -0
  17. package/dist/chunk-EOKNLCNS.js +1 -0
  18. package/dist/chunk-EPPETNK6.js +1 -0
  19. package/dist/chunk-EPPSBHZR.js +1 -0
  20. package/dist/chunk-EPZGLHPD.js +0 -0
  21. package/dist/chunk-FNX33PDD.js +0 -0
  22. package/dist/{chunk-NTFHNL7T.js → chunk-G6OW4OZM.js} +1 -1
  23. package/dist/chunk-GS67ZBLI.js +1 -0
  24. package/dist/chunk-HO6CYWED.js +0 -0
  25. package/dist/{chunk-6EHKOVZK.js → chunk-HVR2UDFX.js} +1 -1
  26. package/dist/chunk-IJ62ILKE.js +0 -0
  27. package/dist/chunk-IKYBFMHI.js +1 -0
  28. package/dist/chunk-IO22GWON.js +0 -0
  29. package/dist/chunk-KVOA55NE.js +0 -0
  30. package/dist/{chunk-MZBB5ROJ.js → chunk-LF2HELEZ.js} +1 -1
  31. package/dist/chunk-MYVLBALF.js +1 -0
  32. package/dist/{chunk-UEOCR2C3.js → chunk-OLDA73XG.js} +2 -2
  33. package/dist/chunk-RWBLICYX.js +0 -0
  34. package/dist/chunk-RYD6RHRX.js +0 -0
  35. package/dist/chunk-T45FJNEQ.js +1 -0
  36. package/dist/chunk-TZSX4OTV.js +1 -0
  37. package/dist/chunk-UN2SLVFG.js +1 -0
  38. package/dist/{chunk-GK3INPAZ.js → chunk-V2YPIC6Z.js} +1 -1
  39. package/dist/chunk-V4ZQLQ7L.js +0 -0
  40. package/dist/chunk-VAM3FPCS.js +0 -0
  41. package/dist/chunk-VJVFHL6P.js +0 -0
  42. package/dist/chunk-VSTKXZYY.js +0 -0
  43. package/dist/chunk-W3H7XTA7.js +1 -0
  44. package/dist/chunk-WG4US4JH.js +1 -0
  45. package/dist/chunk-WGSTNXAQ.js +0 -0
  46. package/dist/chunk-WJHCVECU.js +1 -0
  47. package/dist/chunk-XVMJG26X.js +1 -0
  48. package/dist/chunk-Y4AXWTAD.js +0 -0
  49. package/dist/chunk-YCLR3IE3.js +0 -0
  50. package/dist/chunk-YLFXSHKZ.js +0 -0
  51. package/dist/chunk-ZDGZGAYG.js +0 -0
  52. package/dist/columns2.css +1 -0
  53. package/dist/columns2.d.ts +2 -0
  54. package/dist/columns2.js +1 -0
  55. package/dist/columns3.css +1 -0
  56. package/dist/columns3.d.ts +2 -0
  57. package/dist/columns3.js +1 -0
  58. package/dist/columns4.css +1 -0
  59. package/dist/columns4.d.ts +2 -0
  60. package/dist/columns4.js +1 -0
  61. package/dist/command-palette.js +1 -1
  62. package/dist/component-motion.css +39 -0
  63. package/dist/component-motion.d.ts +45 -0
  64. package/dist/component-motion.js +1 -0
  65. package/dist/content.js +1 -1
  66. package/dist/core.css +8 -0
  67. package/dist/core.js +1 -1
  68. package/dist/data-motion.css +4 -0
  69. package/dist/data-motion.d.ts +23 -0
  70. package/dist/data-motion.js +1 -0
  71. package/dist/data.css +63 -0
  72. package/dist/data.d.ts +1 -0
  73. package/dist/data.js +1 -1
  74. package/dist/date-picker.css +5 -5
  75. package/dist/date-picker.js +1 -1
  76. package/dist/date-range-picker.css +5 -5
  77. package/dist/date-range-picker.js +1 -1
  78. package/dist/date-time-picker.css +5 -5
  79. package/dist/date-time-picker.js +1 -1
  80. package/dist/draft-components.json +77 -0
  81. package/dist/drawer.js +1 -1
  82. package/dist/essentials.css +8 -0
  83. package/dist/feedback.js +1 -1
  84. package/dist/form-field.css +1 -0
  85. package/dist/form-field.d.ts +2 -0
  86. package/dist/form-field.js +1 -0
  87. package/dist/form-layout/choice.d.ts +15 -0
  88. package/dist/form-layout/layout.d.ts +12 -0
  89. package/dist/form-layout/select.d.ts +3 -0
  90. package/dist/form-layout/shared.d.ts +21 -0
  91. package/dist/form-layout/table.d.ts +20 -0
  92. package/dist/form-layout/text.d.ts +3 -0
  93. package/dist/form-layout/types.d.ts +151 -0
  94. package/dist/form-layout.css +62 -0
  95. package/dist/form-layout.d.ts +12 -0
  96. package/dist/form-layout.js +1 -0
  97. package/dist/index.d.ts +1 -0
  98. package/dist/index.js +1 -1
  99. package/dist/inputs.css +83 -20
  100. package/dist/inputs.d.ts +8 -0
  101. package/dist/inputs.js +1 -1
  102. package/dist/layout.css +63 -0
  103. package/dist/layout.d.ts +3 -0
  104. package/dist/layout.js +1 -1
  105. package/dist/modal.js +1 -1
  106. package/dist/motion/action-feedback.d.ts +14 -0
  107. package/dist/motion/border-glow.d.ts +12 -0
  108. package/dist/motion/button.d.ts +11 -0
  109. package/dist/motion/component-settings.d.ts +51 -0
  110. package/dist/motion/controller.d.ts +33 -0
  111. package/dist/motion/effects.d.ts +30 -0
  112. package/dist/motion/feedback.d.ts +6 -0
  113. package/dist/motion/loading.d.ts +9 -0
  114. package/dist/motion/optional.d.ts +35 -0
  115. package/dist/motion/photo.d.ts +7 -0
  116. package/dist/motion/presence.d.ts +12 -0
  117. package/dist/motion/scene.d.ts +10 -0
  118. package/dist/motion/screen.d.ts +6 -0
  119. package/dist/motion/scroll-reveal.d.ts +13 -0
  120. package/dist/motion/settings-group.d.ts +14 -0
  121. package/dist/motion/stagger.d.ts +12 -0
  122. package/dist/motion/structure.d.ts +18 -0
  123. package/dist/motion/tabs.d.ts +19 -0
  124. package/dist/motion/tokens.d.ts +11 -0
  125. package/dist/motion/value.d.ts +21 -0
  126. package/dist/motion/view-transition.d.ts +14 -0
  127. package/dist/motion-enhancers.d.ts +12 -0
  128. package/dist/motion-enhancers.js +1 -0
  129. package/dist/motion-settings.d.ts +3 -0
  130. package/dist/motion-settings.js +1 -0
  131. package/dist/motion.css +1076 -0
  132. package/dist/motion.d.ts +20 -0
  133. package/dist/motion.js +1 -0
  134. package/dist/native/date-picker.js +1 -1
  135. package/dist/native/date-range-picker.js +1 -1
  136. package/dist/native/date-time-picker.js +1 -1
  137. package/dist/native/form-layout.js +1 -0
  138. package/dist/native/time-picker.js +1 -1
  139. package/dist/native-components/form-layout.d.ts +1 -0
  140. package/dist/native-motion-components.d.ts +3 -0
  141. package/dist/native-motion-content.d.ts +1 -0
  142. package/dist/native-motion-foundations.d.ts +3 -0
  143. package/dist/native-motion-layout.d.ts +3 -0
  144. package/dist/native-motion-pilot.d.ts +34 -0
  145. package/dist/native-motion.d.ts +71 -0
  146. package/dist/notification.js +1 -1
  147. package/dist/pagination.js +1 -1
  148. package/dist/radio-button.css +1 -0
  149. package/dist/radio-button.d.ts +2 -0
  150. package/dist/radio-button.js +1 -0
  151. package/dist/radio-group.css +1 -0
  152. package/dist/radio-group.d.ts +2 -0
  153. package/dist/radio-group.js +1 -0
  154. package/dist/select.css +1 -0
  155. package/dist/select.d.ts +2 -0
  156. package/dist/select.js +1 -0
  157. package/dist/sidebar.js +1 -1
  158. package/dist/sizes.json +416 -112
  159. package/dist/skeleton.css +8 -0
  160. package/dist/styles.css +1213 -20
  161. package/dist/switch.css +1 -0
  162. package/dist/switch.d.ts +2 -0
  163. package/dist/switch.js +1 -0
  164. package/dist/table.css +1 -0
  165. package/dist/table.d.ts +2 -0
  166. package/dist/table.js +1 -0
  167. package/dist/text-area.css +1 -0
  168. package/dist/text-area.d.ts +2 -0
  169. package/dist/text-area.js +1 -0
  170. package/dist/text-input.css +1 -0
  171. package/dist/text-input.d.ts +2 -0
  172. package/dist/text-input.js +1 -0
  173. package/dist/time-picker.css +5 -5
  174. package/dist/time-picker.js +1 -1
  175. package/dist/tree-view.js +1 -1
  176. package/dist/web-motion/chip-ripple.d.ts +6 -0
  177. package/dist/web-motion/choice-ripple.d.ts +6 -0
  178. package/dist/web-motion/content.d.ts +9 -0
  179. package/dist/web-motion/data-rows.d.ts +12 -0
  180. package/dist/web-motion/fields.d.ts +6 -0
  181. package/dist/web-motion/navigation.d.ts +6 -0
  182. package/dist/web-motion/notifications.d.ts +6 -0
  183. package/dist/web-motion/select-ripple.d.ts +6 -0
  184. package/dist/web-motion/statistic.d.ts +13 -0
  185. package/dist/web-motion/surfaces.d.ts +10 -0
  186. package/dist/web-motion/tree.d.ts +6 -0
  187. package/docs/FORM-LAYOUT-ESSENTIALS.md +122 -0
  188. package/docs/PUBLISHING.md +129 -25
  189. package/draft-components.json +77 -0
  190. package/edition.json +44 -7
  191. package/npm-shrinkwrap.json +2 -2
  192. package/package.json +102 -10
  193. package/scripts/build-motion-css.mjs +36 -0
  194. package/scripts/build-motion-styles.mjs +29 -0
  195. package/scripts/build.mjs +20 -8
  196. package/scripts/motion-entries.mjs +2 -0
  197. package/src/checkbox.ts +2 -0
  198. package/src/columns2.ts +2 -0
  199. package/src/columns3.ts +2 -0
  200. package/src/columns4.ts +2 -0
  201. package/src/component-motion.ts +101 -0
  202. package/src/data-motion.ts +60 -0
  203. package/src/data.ts +1 -0
  204. package/src/form-field.ts +2 -0
  205. package/src/form-layout/choice.ts +82 -0
  206. package/src/form-layout/layout.ts +40 -0
  207. package/src/form-layout/select.ts +97 -0
  208. package/src/form-layout/shared.ts +57 -0
  209. package/src/form-layout/table.ts +86 -0
  210. package/src/form-layout/text.ts +73 -0
  211. package/src/form-layout/types.ts +59 -0
  212. package/src/form-layout.ts +12 -0
  213. package/src/index.ts +2 -0
  214. package/src/inputs.ts +8 -0
  215. package/src/layout.ts +3 -0
  216. package/src/motion/action-feedback.ts +38 -0
  217. package/src/motion/border-glow.ts +41 -0
  218. package/src/motion/button.ts +56 -0
  219. package/src/motion/component-settings.ts +147 -0
  220. package/src/motion/controller.ts +191 -0
  221. package/src/motion/effects.ts +75 -0
  222. package/src/motion/feedback.ts +41 -0
  223. package/src/motion/loading.ts +40 -0
  224. package/src/motion/optional.ts +123 -0
  225. package/src/motion/photo.ts +19 -0
  226. package/src/motion/presence.ts +44 -0
  227. package/src/motion/scene.ts +103 -0
  228. package/src/motion/screen.ts +15 -0
  229. package/src/motion/scroll-reveal.ts +49 -0
  230. package/src/motion/settings-group.ts +28 -0
  231. package/src/motion/stagger.ts +26 -0
  232. package/src/motion/structure.ts +75 -0
  233. package/src/motion/tabs.ts +105 -0
  234. package/src/motion/tokens.ts +2 -0
  235. package/src/motion/value.ts +61 -0
  236. package/src/motion/view-transition.ts +57 -0
  237. package/src/motion-enhancers.ts +12 -0
  238. package/src/motion-settings.ts +3 -0
  239. package/src/motion.ts +20 -0
  240. package/src/native-components/form-layout.ts +21 -0
  241. package/src/native-motion-components.ts +76 -0
  242. package/src/native-motion-content.ts +10 -0
  243. package/src/native-motion-foundations.ts +56 -0
  244. package/src/native-motion-layout.ts +35 -0
  245. package/src/native-motion-pilot.ts +151 -0
  246. package/src/native-motion.ts +188 -0
  247. package/src/radio-button.ts +2 -0
  248. package/src/radio-group.ts +2 -0
  249. package/src/runtime/date-picker.js +21 -12
  250. package/src/runtime/date-range-picker.js +21 -12
  251. package/src/runtime/date-time-picker.js +21 -12
  252. package/src/runtime/time-picker.js +21 -12
  253. package/src/select.ts +2 -0
  254. package/src/switch.ts +2 -0
  255. package/src/table.ts +2 -0
  256. package/src/text-area.ts +2 -0
  257. package/src/text-input.ts +2 -0
  258. package/src/types.ts +0 -12
  259. package/src/web-motion/chip-ripple.ts +31 -0
  260. package/src/web-motion/choice-ripple.ts +30 -0
  261. package/src/web-motion/content.ts +74 -0
  262. package/src/web-motion/data-rows.ts +106 -0
  263. package/src/web-motion/fields.ts +52 -0
  264. package/src/web-motion/navigation.ts +62 -0
  265. package/src/web-motion/notifications.ts +67 -0
  266. package/src/web-motion/select-ripple.ts +23 -0
  267. package/src/web-motion/statistic.ts +23 -0
  268. package/src/web-motion/surfaces.ts +137 -0
  269. package/src/web-motion/tree.ts +44 -0
  270. package/styles/checkbox.css +1 -0
  271. package/styles/columns2.css +1 -0
  272. package/styles/columns3.css +1 -0
  273. package/styles/columns4.css +1 -0
  274. package/styles/component-motion.css +39 -0
  275. package/styles/data-motion.css +4 -0
  276. package/styles/date-picker.css +5 -5
  277. package/styles/date-range-picker.css +5 -5
  278. package/styles/date-time-picker.css +5 -5
  279. package/styles/form-field.css +1 -0
  280. package/styles/form-layout.css +62 -0
  281. package/styles/motion-optional.css +15 -0
  282. package/styles/motion-presets.css +92 -0
  283. package/styles/motion-tokens.css +6 -0
  284. package/styles/motion.css +125 -0
  285. package/styles/radio-button.css +1 -0
  286. package/styles/radio-group.css +1 -0
  287. package/styles/select.css +1 -0
  288. package/styles/skeleton.css +8 -0
  289. package/styles/switch.css +1 -0
  290. package/styles/table.css +1 -0
  291. package/styles/text-area.css +1 -0
  292. package/styles/text-input.css +1 -0
  293. package/styles/time-picker.css +5 -5
  294. package/test/component-motion-settings.test.mjs +35 -0
  295. package/test/content-overlay-motion.test.mjs +36 -0
  296. package/test/form-layout.test.mjs +28 -0
  297. package/test/isolation.test.mjs +2 -2
  298. package/test/motion.test.mjs +215 -0
  299. package/dist/chunk-2TCNAQC6.js +0 -1
  300. package/dist/chunk-CTLZIWMX.js +0 -1
  301. package/dist/chunk-MHHJZYXW.js +0 -1
  302. package/dist/chunk-XDYBNO4P.js +0 -1
  303. /package/dist/{chunk-H7ETPJVW.js → chunk-3PODK22R.js} +0 -0
  304. /package/dist/{chunk-SIU7DSOA.js → chunk-KBWB4OIF.js} +0 -0
@@ -0,0 +1 @@
1
+ import{a as X}from"./chunk-MEEQNPGM.js";import{c as G,d as Q}from"./chunk-5TEIXA4R.js";var O=G("advanced",()=>({instances:new Map,serial:0})),fe=()=>`blu-advanced-${++O.serial}`;function c(e,t,n){let r=document.createElement(e);return t&&(r.className=t),n!==void 0&&(r.textContent=String(n)),r}function u(e,t,n){return n==null?e.removeAttribute(t):e.setAttribute(t,String(n)),e}function x(e,t,n="blu-picker__button"){let r=c("button",n,e);return r.type="button",r.addEventListener("click",t),r}function I(e,t,...n){if(!e.dead)try{Promise.resolve(e.events[t]?.(...n)).catch(r=>K(e,r))}catch(r){K(e,r)}}function K(e,t){if(e.dead)return;let n=t?.message||String(t);e.notice.textContent=n,e.lastError!==n&&(e.lastError=n,I(e,"Error",n))}function Z(e,t){let n=typeof e=="string"?JSON.parse(e||"[]"):e||[];if(!Array.isArray(n))throw Error(t+" must be a list.");return n}function me(e,t,n){let r=o=>{let a=O.instances.get(o);!a||a.kind!==e||(a.dead=!0,a.dispose?.(),a.root.remove(),a.notice.remove(),a.host._bluAdvancedOwner===o&&delete a.host._bluAdvancedOwner,O.instances.delete(o))};return Q(e,()=>({sync(o,a={},m={},h){let l=document.getElementById(o);if(!l)return e+" host was not found.";let g=h||o,p=O.instances.get(g);p&&(p.host!==l||p.kind!==e)&&(p.destroy(p.key),p=null);let i=O.instances.get(l._bluAdvancedOwner);if(i&&i!==p&&i.destroy(i.key),!p){p={key:g,host:l,kind:e,uid:fe(),options:a,events:m,dead:!1,destroy:r},p.root=c("div"),p.notice=u(c("div","blu-advanced-sr"),"role","status"),u(p.notice,"aria-atomic","true"),l.append(p.root,p.notice),O.instances.set(g,p),l._bluAdvancedOwner=g;try{t(p)}catch(f){throw r(g),f}}p.options=a,p.events=m;try{return n(p),l.dataset.bluRuntimeReady="true",""}catch(f){return K(p,f),f.message||String(f)}},destroy:r}))}var v=e=>String(e).padStart(2,"0");function q(e){return String(e.getFullYear()).padStart(4,"0")+"-"+v(e.getMonth()+1)+"-"+v(e.getDate())}function b(e){let t=/^(\d{4})-(\d{2})-(\d{2})$/.exec(String(e));if(!t||+t[1]<1||+t[1]>9999)return null;let n=new Date(2e3,+t[2]-1,+t[3],12);return n.setFullYear(+t[1]),q(n)===e?n:null}function L(e){let t=/^(\d{2}):(\d{2})$/.exec(String(e));return t&&+t[1]<24&&+t[2]<60?t[1]+":"+t[2]:null}function ee(e,t="YYYY-MM-DD"){if(e=String(e).trim(),!e)return"";let n=e;if(t!=="YYYY-MM-DD"){let r=/^(\d{1,2})\/(\d{1,2})\/(\d{4})$/.exec(e);if(!r)return null;n=r[3]+"-"+v(+(t==="DD/MM/YYYY"?r[2]:r[1]))+"-"+v(+(t==="DD/MM/YYYY"?r[1]:r[2]))}return b(n)?n:null}function te(e,t="YYYY-MM-DD"){if(!e)return"";let n=e.split("-");return t==="MM/DD/YYYY"?n[1]+"/"+n[2]+"/"+n[0]:t==="DD/MM/YYYY"?n[2]+"/"+n[1]+"/"+n[0]:e}function he(e,t=24){if(e=String(e).trim(),!e)return"";let n=/^(\d{1,2}):(\d{2})(?:\s*(AM|PM))?$/i.exec(e);return!n||+n[2]>59||(t===12?!n[3]||+n[1]<1||+n[1]>12:n[3]||+n[1]>23)?null:v(n[3]?+n[1]%12+(n[3].toUpperCase()==="PM"?12:0):+n[1])+":"+n[2]}function T(e,t=24){if(!e)return"";let[n,r]=e.split(":").map(Number);return t===12?(n%12||12)+":"+v(r)+" "+(n<12?"AM":"PM"):v(n)+":"+v(r)}function ne(e,t){let n=b(e);return n.setDate(n.getDate()+t),q(n)}function ie(e,t){let n=b(e),r=n.getDate();return n.setDate(1),n.setMonth(n.getMonth()+t),n.setDate(Math.min(r,new Date(n.getFullYear(),n.getMonth()+1,0).getDate())),q(n)}function ge(e,t){let n=b(e),r=b(t);return Math.round((r.getTime()-n.getTime())/864e5)}function z(e,t,n,r){return b(e)?t&&e<t?"Choose "+t+" or later.":n&&e>n?"Choose "+n+" or earlier.":r?.has(e)?"This date is unavailable.":"":"Enter a real calendar date."}function oe(e,t,n={}){if(!e||!t)return"Choose both a start date and an end date.";let r=z(e,n.Min,n.Max,n.disabled)||z(t,n.Min,n.Max,n.disabled);if(r)return r;if(t<e)return"End date must be on or after start date.";let o=ge(e,t)+1;if(n.MinRangeDays&&o<n.MinRangeDays)return"Choose at least "+n.MinRangeDays+" days.";if(n.MaxRangeDays&&o>n.MaxRangeDays)return"Choose no more than "+n.MaxRangeDays+" days.";if(n.disabled){for(let a of n.disabled)if(a>=e&&a<=t)return"The range includes an unavailable date."}return""}var ye=["YYYY-MM-DD","MM/DD/YYYY","DD/MM/YYYY"],N=()=>q(new Date),S=e=>String(e||"").split("T")[0],F=e=>String(e||"").split("T")[1]||"";function w(e,t){let n=b(t);return n?new Intl.DateTimeFormat(e.locale,{dateStyle:"full"}).format(n):t}function B(e,t,n=e.fields){e.error.textContent=t,e.error.hidden=!t||e.isOpen,e.dialogError&&(e.dialogError.textContent=e.isOpen?t:"");for(let o of e.fields)u(o.input,"aria-invalid",t&&n.includes(o)?"true":null);let r=!t;(e.valid!==r||e.validationMessage!==t)&&(e.valid=r,e.validationMessage=t,I(e,"ValidationChanged",r,t))}function V(e,t){return z(t,S(e.options.Min),S(e.options.Max),e.disabledDates)}function be(e,t,n){if(!L(t))return"Enter a valid time.";let r=e.dateTime?n+"T"+t:t,o=e.options.Min,a=e.options.Max;return o&&r<o?"Choose "+o+" or later.":a&&r>a?"Choose "+a+" or earlier.":""}function de(e,t,n,r){if(e.range)return!t&&!n&&!e.options.IsRequired?"":oe(t,n,{...e.options,disabled:e.disabledDates});if(!t&&!r)return e.options.IsRequired?"A "+(e.timeOnly?"time":"date")+" is required.":"";if(!e.timeOnly){if(!t)return"Choose a date.";let o=V(e,t);if(o)return o}return e.hasTime?r?be(e,r,t):"Choose a time.":""}function le(e){e.timeOnly?e.fields[0].input.value=T(e.value,e.cycle):(e.fields[0].input.value=te(e.range?e.start:S(e.value),e.format),e.range&&(e.fields[1].input.value=te(e.end,e.format)),e.dateTime&&(e.fields[1].input.value=T(F(e.value),e.cycle)));let t=e.range?[e.start,e.end].filter(Boolean).join(" to "):e.value;e.typedDirty=!1,e.clearButton.hidden=e.options.ShowClear===!1||!t}function k(e,t=!0){if(e.isOpen){e.isOpen=!1,e.dialog.hidePopover&&e.dialog.matches(":popover-open")&&e.dialog.hidePopover(),e.dialog.hidden=!0,e.error.hidden=!e.validationMessage;for(let{input:n}of e.fields)u(n,"aria-expanded","false");t&&e.anchor?.isConnected&&!e.anchor.disabled&&e.anchor.focus({preventScroll:!0}),I(e,"OpenChanged",!1)}}function s(e){if(!e.isOpen||e.dead)return;let t=e.anchor.getBoundingClientRect(),n=window.visualViewport,r=n?.offsetLeft||0,o=n?.offsetTop||0,a=n?.width||document.documentElement.clientWidth,m=n?.height||window.innerHeight,h=6,l=8;if(t.bottom<=o||t.top>=o+m||t.right<=r||t.left>=r+a){k(e,!1);return}let g=e.dialog,p=Math.min(e.timeOnly?300:344,a-l*2);g.dataset.compact=String(m<420),g.style.width=p+"px",g.style.maxHeight="none";let i=Math.max(0,o+m-l-t.bottom-h),f=Math.max(0,t.top-h-o-l),d=g.scrollHeight+2,D=d>i&&f>i,E=Math.max(0,m-l*2);g.style.maxHeight=E+"px";let y=e.fieldRow.getBoundingClientRect();g.style.left=Math.max(r+l,Math.min(y.left+(y.width-p)/2,r+a-l-p))+"px";let M=D?t.top-h-d:t.bottom+h;g.style.top=Math.max(o+l,Math.min(M,o+m-l-Math.min(d,E)))+"px",g.dataset.placement=D?"top":"bottom"}function ae(e){(e.timeOnly||e.dateTime&&e.anchor===e.fields[1].input?e.hours:e.calendar.querySelector('[data-date="'+e.focusDate+'"]')||e.monthSelect).focus({preventScroll:!0})}function H(e,t,n,r,o=!1){let a=de(e,t,n,r);if(B(e,a),a)return e.dialogError.textContent=a,!1;let m=document.activeElement===e.clearButton&&!t&&!n&&!r,h=e.timeOnly?r:e.dateTime?t?t+"T"+r:"":t,l=e.range?e.start!==t||e.end!==n:e.value!==h;return e.range?(e.start=t,e.end=n,e.options.StartDate=t,e.options.EndDate=n):(e.value=h,e.options.Value=h),e.inputSignature=JSON.stringify(e.range?[e.start,e.end]:[e.value]),le(e),o||k(e),m&&e.fields[0].input.focus({preventScroll:!0}),e.notice.textContent=e.range?t?w(e,t)+" to "+w(e,n):"Date range cleared":h?"Selected "+(e.timeOnly?T(h,e.cycle):w(e,t)+(e.hasTime?" at "+T(r,e.cycle):"")):"Selection cleared",l&&(e.range?I(e,"Change",t,n):I(e,"Change",h)),!0}function re(e,t=!1){if(e.options.IsDisabled||e.options.IsReadOnly)return;let n=e.timeOnly?"":ee(e.fields[0].input.value,e.format),r=e.range?ee(e.fields[1].input.value,e.format):"",o=e.hasTime?he(e.fields[e.timeOnly?0:1].input.value,e.cycle):"";if(n===null||r===null){B(e,"Enter a real date using "+e.format+".");return}if(o===null){B(e,e.cycle===12?"Enter a time such as 9:15 AM.":"Enter a time such as 14:30.");return}H(e,n,r,o,t)&&t&&(e.draftStart=n,e.draftEnd=r,e.draftTime=o,n&&(e.focusDate=n,e.month=n.slice(0,7)),_(e),J(e),P(e),s(e))}function De(e){let t=e.range||e.dateTime?2:1;e.fields=[];for(let n=0;n<t;n++){let r=c("div","blu-picker__field"),o=c("label"),a=c("input","blu-picker__input");a.type="text",a.id=e.uid+"-input-"+n,o.htmlFor=a.id,a.autocomplete="off",a.spellcheck=!1,u(a,"role","combobox"),u(a,"aria-haspopup","dialog"),u(a,"aria-expanded","false"),u(a,"aria-autocomplete","none"),u(a,"aria-controls",e.uid+"-dialog"),u(a,"aria-describedby",e.uid+"-hint "+e.uid+"-error "+e.uid+"-keyboard"),a.addEventListener("input",()=>{e.typedDirty=!0}),a.addEventListener("change",()=>re(e,e.isOpen)),a.addEventListener("pointerdown",l=>{l.pointerType==="mouse"&&(e.touchOpen=!1,a.inputMode="text"),(l.pointerType==="touch"||l.pointerType==="pen")&&e.manualInput!==a&&!e.options.IsDisabled&&!e.options.IsReadOnly&&(l.preventDefault(),e.touchOpen=!0,a.inputMode="none",Y(e,a,!0))}),a.addEventListener("click",l=>{e.manualInput!==a&&(e.touchOpen?(l.preventDefault(),Y(e,a,!0)):Y(e,a,!1))}),a.addEventListener("blur",()=>{e.manualInput===a&&(e.manualInput=null)}),a.addEventListener("keydown",l=>{l.ctrlKey||l.metaKey||l.shiftKey||(l.key==="ArrowDown"&&(l.preventDefault(),Y(e,a,!0)),l.key==="Enter"&&(l.preventDefault(),!e.isOpen&&!e.typedDirty?Y(e,a,!0):re(e)),l.key==="Tab"&&k(e,!1))});let m=c("div","blu-picker__field-control"),h=u(c("span","blu-picker__field-icon"),"aria-hidden","true");h.innerHTML=e.timeOnly||e.dateTime&&n?'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.7"><circle cx="12" cy="12" r="8.5"/><path d="M12 7v5l3 2"/></svg>':'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.7"><rect x="4" y="5" width="16" height="16" rx="3"/><path d="M8 3v4m8-4v4M4 10h16m-11 4h2m3 0h2m-7 3h2"/></svg>',m.append(a,h),r.append(o,m),e.fields.push({field:r,label:o,input:a}),e.fieldRow.append(r)}}function C(e,t,n){let r=c("option","",n);return r.value=String(t),e.append(r),r}function A(e,t,n){let r=c("label","blu-picker__select-field"),o=c("span","blu-picker__select-caption",t),a=c("select","blu-picker__input");return a.id=e.uid+"-"+n,r.append(o,a),{wrap:r,select:a}}function ve(e){if(e.button!==0)return;let t=e.target.closest?.("button");!t||t.disabled||(e.preventDefault(),t.focus({preventScroll:!0}))}function R(e,t){let n=S(e.options.Min)||"0001-01-01",r=S(e.options.Max)||"9999-12-31";t=t<n?n:t>r?r:t,b(t)&&(e.focusDate=t,e.month=t.slice(0,7),_(e),e.calendar.querySelector('[data-date="'+t+'"]')?.focus({preventScroll:!0}))}function Se(e,t,n){if(t.altKey||t.ctrlKey||t.metaKey)return;let r,o={ArrowLeft:-1,ArrowRight:1,ArrowUp:-7,ArrowDown:7};if(t.key in o)r=ne(n,o[t.key]);else if(t.key==="Home"||t.key==="End"){let a=(b(n).getDay()-e.firstDay+7)%7;r=ne(n,t.key==="Home"?-a:6-a)}else(t.key==="PageUp"||t.key==="PageDown")&&(r=ie(n,(t.key==="PageUp"?-1:1)*(t.shiftKey?12:1)));r&&(t.preventDefault(),R(e,r))}function ce(e,t){if(!V(e,t)){if(e.dialogError.textContent="",e.focusDate=t,e.range?e.rangeNext==="start"?(e.draftStart=t,e.draftEnd="",e.rangeNext="end"):(t<e.draftStart?(e.draftEnd=e.draftStart,e.draftStart=t):e.draftEnd=t,e.rangeNext="start"):e.draftStart=t,!e.hasTime&&!e.range){H(e,t,"","");return}_(e),e.calendar.querySelector('[data-date="'+t+'"]')?.focus({preventScroll:!0}),P(e)}}function P(e){let t=e.range?e.draftStart?w(e,e.draftStart)+(e.draftEnd?" to "+w(e,e.draftEnd):" \u2014 choose an end date"):"Choose a start date":e.hasTime?(e.draftStart?w(e,e.draftStart)+" \xB7 ":"")+T(e.draftTime,e.cycle):"",n=r=>b(r)?new Intl.DateTimeFormat(e.locale,{month:"short",day:"numeric"}).format(b(r)):"";e.selectionSpeech.textContent=t,e.selectionVisual.textContent=e.range?e.draftStart?n(e.draftStart)+(e.draftEnd?" \u2013 "+n(e.draftEnd):" \u2014 choose end"):"Choose start date":e.dateTime?n(e.draftStart)+" \xB7 "+T(e.draftTime,e.cycle):e.timeOnly?T(e.draftTime,e.cycle):"",e.selection.hidden=!t}function _(e){let t=b(e.month+"-01");if(!t)return;let n=t.getFullYear(),r=t.getMonth(),o=Number(S(e.options.Min).slice(0,4))||1,a=Number(S(e.options.Max).slice(0,4))||9999;e.monthSelect.value=String(r),e.yearInput.value=String(n),u(e.yearInput,"aria-invalid",null),e.yearInput.min=String(o),e.yearInput.max=String(a);let m=new Intl.DateTimeFormat(e.locale,{month:"long",year:"numeric"}).format(t);e.caption.textContent!==m&&(e.caption.textContent=m);let h=(t.getDay()-e.firstDay+7)%7,l=new Date(n,r+1,0).getDate();if(e.focusDate.startsWith(e.month)||(e.focusDate=e.month+"-01"),!e.dayCells){let i=c("tbody");e.dayCells=[];for(let f=0;f<6;f++){let d=c("tr");for(let D=0;D<7;D++){let E=c("td"),y=x("",()=>ce(e,y.dataset.date),"blu-picker__day");y.addEventListener("keydown",M=>Se(e,M,y.dataset.date)),y.addEventListener("focus",()=>{e.focusDate=y.dataset.date;for(let M of e.dayCells)M.button.tabIndex=M.button===y?0:-1}),E.append(y),d.append(E),e.dayCells.push({cell:E,button:y})}i.append(d)}e.calendar.append(i)}for(let i=0;i<e.dayCells.length;i++){let{cell:f,button:d}=e.dayCells[i],D=i-h+1,E=D>0&&D<=l;if(d.hidden=!E,!E){d.tabIndex=-1,delete d.dataset.date,u(f,"aria-selected",null);continue}let y=e.month+"-"+v(D),M=y===e.draftStart||e.range&&y===e.draftEnd,U=e.range&&e.draftStart&&e.draftEnd&&y>e.draftStart&&y<e.draftEnd,W=V(e,y),$=!!(M||U),pe=e.range&&M?y===e.draftStart?e.draftEnd?", range starts here; "+w(e,e.draftStart)+" to "+w(e,e.draftEnd):", start date; choose an end date":", range ends here; "+w(e,e.draftStart)+" to "+w(e,e.draftEnd):"",j=w(e,y)+($?", selected":"")+pe+(W?", unavailable":"");d.dataset.date=y,d.tabIndex=y===e.focusDate?0:-1,d.textContent!==String(D)&&(d.textContent=String(D)),d.getAttribute("aria-label")!==j&&u(d,"aria-label",j),u(f,"aria-selected",String($)),u(d,"aria-disabled",W?"true":null),u(d,"aria-current",y===N()?"date":null),d.dataset.selected=String(M),d.dataset.between=String(!!U)}for(let i=0;i<6;i++)e.dayCells[i*7].cell.parentElement.hidden=i*7-h+1>l;let g=S(e.options.Min),p=S(e.options.Max);e.prev.disabled=!!g&&e.month<=g.slice(0,7)||n===1&&r===0,e.next.disabled=!!p&&e.month>=p.slice(0,7)||n===9999&&r===11,e.todayButton.hidden=e.timeOnly||e.options.ShowToday===!1,e.todayButton.disabled=!!V(e,N())}function J(e){if(!e.hasTime)return;let[t,n]=(e.draftTime||"09:00").split(":").map(Number);e.hours.replaceChildren(),e.minutes.replaceChildren();for(let r=0;r<(e.cycle===12?12:24);r++)C(e.hours,e.cycle===12?r+1:r,v(e.cycle===12?r+1:r));for(let r=0;r<60;r+=e.step)C(e.minutes,r,v(r));n%e.step&&C(e.minutes,n,v(n)+" (entered)"),e.hours.value=String(e.cycle===12?t%12||12:t),e.minutes.value=String(n),e.period.value=t<12?"AM":"PM",e.periodField.hidden=e.cycle!==12,P(e)}function Y(e,t=e.fields[0].input,n=!0){if(e.options.IsDisabled||e.options.IsReadOnly)return;if(e.anchor=t,e.manualInput=null,e.typeButton.hidden=!e.touchOpen,e.isOpen){e.range&&(e.rangeNext=t===e.fields[1].input&&e.draftStart?"end":"start"),s(e),n&&ae(e);return}e.draftStart=e.timeOnly?"":e.range?e.start:S(e.value),e.draftEnd=e.end||"",e.draftTime=e.timeOnly?e.value:F(e.value),e.hasTime&&!L(e.draftTime)&&(e.draftTime="09:00"),e.rangeNext="start",e.range&&t===e.fields[1].input&&e.draftStart&&(e.rangeNext="end");let r=e.range&&e.rangeNext==="end"?e.draftEnd:e.draftStart;e.focusDate=b(r)?r:b(e.draftStart)?e.draftStart:N();let o=S(e.options.Min),a=S(e.options.Max);e.timeOnly||(o&&e.focusDate<o&&(e.focusDate=o),a&&e.focusDate>a&&(e.focusDate=a)),e.month=e.focusDate.slice(0,7),e.dialogError.textContent="",_(e),J(e),P(e),e.isOpen=!0,e.dialog.hidden=!1,e.dialog.showPopover&&e.dialog.showPopover(),e.dialog.scrollTop=0;for(let{input:m}of e.fields)u(m,"aria-expanded","true");s(e),n&&e.isOpen&&ae(e),I(e,"OpenChanged",!0)}function we(e){e.range=e.kind==="DateRangePicker",e.timeOnly=e.kind==="TimePicker",e.dateTime=e.kind==="DateTimePicker",e.hasTime=e.timeOnly||e.dateTime,e.root.className="blu-picker",e.fieldRow=c("div","blu-picker__fields"),e.error=u(c("div","blu-picker__error"),"role","alert"),e.error.id=e.uid+"-error",e.error.hidden=!0,e.hint=c("div","blu-picker__hint"),e.hint.id=e.uid+"-hint",e.actions=c("div","blu-picker__actions"),e.clearButton=x("Clear",()=>H(e,"","","")),e.actions.append(e.clearButton),e.root.append(e.fieldRow,e.hint,e.actions,e.error),De(e);let t=c("span","blu-advanced-sr","Click the field or press Down Arrow to browse. Escape closes the popup.");t.id=e.uid+"-keyboard",e.root.append(t),e.dialog=c("div","blu-picker__dialog blu-picker__popup"),e.dialog.id=e.uid+"-dialog",e.dialog.hidden=!0,u(e.dialog,"role","dialog"),u(e.dialog,"aria-labelledby",e.uid+"-title"),u(e.dialog,"aria-modal","false"),e.dialog.showPopover&&u(e.dialog,"popover","manual"),e.root.append(e.dialog),e.dialog.addEventListener("mousedown",ve),e.title=c("h2","blu-advanced-sr"),e.title.id=e.uid+"-title",e.dialog.append(e.title),e.presets=c("div","blu-picker__presets"),e.dialog.append(e.presets),e.calendarArea=c("div","blu-picker__calendar-area"),e.calendarArea.hidden=e.timeOnly,e.dialog.append(e.calendarArea);let n=c("div","blu-picker__calendar-nav"),r=A(e,"Month","month");e.monthSelect=r.select;let o=c("label","blu-picker__select-field");o.append(c("span","blu-picker__select-caption","Year")),e.yearInput=c("input","blu-picker__input"),e.yearInput.type="number",e.yearInput.step="1",o.append(e.yearInput);let a=d=>{let D=ie(e.focusDate,d);R(e,D)};e.prev=x("\u2039",()=>a(-1)),u(e.prev,"aria-label","Previous month"),e.next=x("\u203A",()=>a(1)),u(e.next,"aria-label","Next month"),n.append(e.prev,r.wrap,o,e.next),e.calendarArea.append(n),e.monthSelect.addEventListener("change",()=>R(e,String(e.yearInput.value).padStart(4,"0")+"-"+v(+e.monthSelect.value+1)+"-01")),e.yearInput.addEventListener("change",()=>{let d=Number(e.yearInput.value);if(!Number.isInteger(d)||d<+e.yearInput.min||d>+e.yearInput.max){e.dialogError.textContent="Enter a year from "+e.yearInput.min+" to "+e.yearInput.max+".",u(e.yearInput,"aria-invalid","true");return}u(e.yearInput,"aria-invalid",null),e.dialogError.textContent="",R(e,String(d).padStart(4,"0")+"-"+v(+e.monthSelect.value+1)+"-01")}),e.caption=u(c("h3","blu-picker__caption blu-advanced-sr"),"aria-live","polite"),e.caption.id=e.uid+"-caption",e.calendarArea.append(e.caption),e.calendar=u(c("table","blu-picker__calendar"),"role","grid"),u(e.calendar,"aria-labelledby",e.caption.id),e.range&&u(e.calendar,"aria-multiselectable","true"),e.calendarArea.append(e.calendar),e.todayButton=x("Today",()=>{e.focusDate=N(),e.month=e.focusDate.slice(0,7),ce(e,e.focusDate)}),e.calendarArea.append(c("p","blu-advanced-sr","Arrow keys move by day or week. Home/End move within the week. Page Up/Down change month; hold Shift to change year.")),e.timeArea=c("div","blu-picker__time-area"),e.timeArea.hidden=!e.hasTime,e.dialog.append(e.timeArea);let m=A(e,"Hour","hour"),h=A(e,"Minute","minute"),l=A(e,"AM / PM","period");e.hours=m.select,e.minutes=h.select,e.period=l.select,e.periodField=l.wrap,C(e.period,"AM","AM"),C(e.period,"PM","PM"),e.timeArea.append(m.wrap,h.wrap,l.wrap);for(let d of[e.hours,e.minutes,e.period])d.addEventListener("change",()=>{let D=+e.hours.value;e.cycle===12&&(D=D%12+(e.period.value==="PM"?12:0)),e.draftTime=v(D)+":"+v(+e.minutes.value),e.dialogError.textContent="",P(e)});e.selection=u(c("div","blu-picker__selection"),"role","status"),u(e.selection,"aria-atomic","true"),e.selectionSpeech=c("span","blu-advanced-sr"),e.selectionVisual=u(c("span"),"aria-hidden","true"),e.selection.append(e.selectionSpeech,e.selectionVisual),e.dialogError=u(c("div","blu-picker__error"),"role","alert"),e.dialogError.id=e.uid+"-dialog-error",u(e.yearInput,"aria-describedby",e.dialogError.id),e.apply=x("Apply",()=>H(e,e.draftStart,e.draftEnd,e.draftTime),"blu-picker__button blu-picker__button--primary"),e.apply.hidden=!e.range&&!e.hasTime,e.typeButton=x("Type",()=>{let d=e.anchor;k(e,!1),e.manualInput=d,d.inputMode="text",d.focus({preventScroll:!0})}),u(e.typeButton,"aria-label","Type a date or time"),e.typeButton.hidden=!0;let g=c("div","blu-picker__popup-actions");g.append(e.typeButton,e.todayButton,x("Cancel",()=>k(e)),e.apply),e.dialog.append(e.selection,e.dialogError,g);let p=d=>{e.isOpen&&!e.root.contains(d.target)&&k(e,!1)},i=d=>{e.isOpen&&d.key==="Escape"&&!d.defaultPrevented&&(d.preventDefault(),d.stopPropagation(),k(e))},f=d=>{!e.isOpen||e.dialog.contains(d?.target)||(cancelAnimationFrame(e.positionFrame),e.positionFrame=requestAnimationFrame(()=>s(e)))};document.addEventListener("pointerdown",p,!0),document.addEventListener("focusin",p),e.root.addEventListener("keydown",i),window.addEventListener("resize",f),document.addEventListener("scroll",f,!0),window.visualViewport?.addEventListener("resize",f),window.visualViewport?.addEventListener("scroll",f),window.ResizeObserver&&(e.popupObserver=new ResizeObserver(()=>f()),e.popupObserver.observe(e.fieldRow),e.popupObserver.observe(e.dialog)),e.dispose=()=>{k(e,!1),cancelAnimationFrame(e.positionFrame),e.popupObserver?.disconnect(),document.removeEventListener("pointerdown",p,!0),document.removeEventListener("focusin",p),e.root.removeEventListener("keydown",i),window.removeEventListener("resize",f),document.removeEventListener("scroll",f,!0),window.visualViewport?.removeEventListener("resize",f),window.visualViewport?.removeEventListener("scroll",f)}}function Me(e){let t=JSON.stringify(e.options);if(e.renderSignature===t)return;let n=e.isOpen?document.activeElement:null,r=n?.dataset?.date,o=n?.id,a=e.options;if(e.label=String(a.Label||{DatePicker:"Date",TimePicker:"Time",DateTimePicker:"Date and time",DateRangePicker:"Date range"}[e.kind]),e.locale=String(a.Locale||"en-US"),new Intl.DateTimeFormat(e.locale),e.format=ye.includes(a.DateFormat)?a.DateFormat:"YYYY-MM-DD",e.cycle=Number(a.HourCycle)===12?12:24,e.step=Number(a.MinuteStep??15),!Number.isInteger(e.step)||e.step<1||e.step>60)throw Error("MinuteStep must be a whole number from 1 to 60.");if(e.firstDay=Number(a.FirstDayOfWeek??1),!Number.isInteger(e.firstDay)||e.firstDay<0||e.firstDay>6)throw Error("FirstDayOfWeek must be 0\u20136.");e.disabledDates=new Set(Z(a.DisabledDatesJson??a.DisabledDates,"DisabledDates").map(i=>typeof i=="string"?i:i.Date));for(let i of e.disabledDates)if(!b(i))throw Error("DisabledDates must contain ISO calendar dates.");for(let i of["Min","Max"])if(a[i]&&!(e.timeOnly?L(a[i]):b(S(a[i]))&&(!e.dateTime||L(F(a[i])))))throw Error(i+" must use the documented ISO value format.");if(a.Min&&a.Max&&a.Min>a.Max)throw Error("Min must be on or before Max.");for(let i of["MinRangeDays","MaxRangeDays"])if(a[i]!==void 0&&(!Number.isInteger(Number(a[i]))||Number(a[i])<0))throw Error(i+" must be a non-negative whole number.");if(a.MinRangeDays&&a.MaxRangeDays&&Number(a.MinRangeDays)>Number(a.MaxRangeDays))throw Error("MinRangeDays must not exceed MaxRangeDays.");let m=e.range?[String(a.StartDate||""),String(a.EndDate||"")]:[String(a.Value||"")],h=JSON.stringify(m),l=h!==e.inputSignature;if(e.inputSignature=h,e.range?(e.start=m[0],e.end=m[1]):e.value=m[0],e.fields.forEach((i,f)=>{i.label.textContent=e.range?e.label+(f?" \u2014 end":" \u2014 start"):e.dateTime?e.label+(f?" \u2014 time":" \u2014 date"):e.label,i.input.disabled=!!a.IsDisabled,i.input.readOnly=!!a.IsReadOnly,i.input.required=!!a.IsRequired,i.input.placeholder=String(a.Placeholder||(e.timeOnly||e.dateTime&&f?e.cycle===12?"9:00 AM":"09:00":e.format))}),e.hint.textContent=e.timeOnly?(e.cycle===12?"h:mm AM/PM":"HH:mm")+" \xB7 local time":e.format+(e.dateTime?" \xB7 "+(e.cycle===12?"h:mm AM/PM":"HH:mm")+" local time":""),e.title.textContent=e.label,e.clearButton.disabled=!!a.IsDisabled||!!a.IsReadOnly,l||e.previousFormat!==e.format||e.previousCycle!==e.cycle){le(e);let i=m.some(Boolean);B(e,i?de(e,e.timeOnly?"":e.range?e.start:S(e.value),e.end||"",e.timeOnly?e.value:F(e.value)):""),e.previousFormat=e.format,e.previousCycle=e.cycle}e.monthSelect.replaceChildren();for(let i=0;i<12;i++)C(e.monthSelect,i,new Intl.DateTimeFormat(e.locale,{month:"long"}).format(new Date(2024,i,1)));e.calendar.tHead?.remove();let g=c("thead"),p=c("tr");for(let i=0;i<7;i++){let f=new Date(2024,0,7+(i+e.firstDay)%7),d=c("th","",new Intl.DateTimeFormat(e.locale,{weekday:"short"}).format(f));d.scope="col",d.abbr=new Intl.DateTimeFormat(e.locale,{weekday:"long"}).format(f),p.append(d)}if(g.append(p),e.calendar.prepend(g),e.presets.replaceChildren(),e.presets.hidden=!e.range,e.range)for(let i of Z(a.PresetsJson??a.Presets,"Presets")){if(!i.Label||!b(i.StartDate)||!b(i.EndDate))throw Error("Presets need Label, StartDate and EndDate.");let f=x(i.Label,()=>{e.draftStart=i.StartDate,e.draftEnd=i.EndDate,e.rangeNext="start",e.focusDate=e.draftStart,e.month=e.focusDate.slice(0,7),e.dialogError.textContent="",_(e),P(e)});f.disabled=!!oe(i.StartDate,i.EndDate,{...a,disabled:e.disabledDates}),e.presets.append(f)}e.isOpen&&(a.IsDisabled||a.IsReadOnly||l?k(e):(_(e),J(e),r?e.calendar.querySelector('[data-date="'+r+'"]')?.focus({preventScroll:!0}):o&&document.getElementById(o)?.focus({preventScroll:!0}),s(e))),e.renderSignature=t}var ue=()=>me("TimePicker",we,Me);function Oe(e,t={},n={}){return ue(),X(e,"TimePicker",t,r=>({Change:o=>(r({Value:o}),n.Change?.(o)),ValidationChanged:(o,a)=>n.ValidationChanged?.(o,a),OpenChanged:o=>n.OpenChanged?.(o),Error:o=>n.Error?.(o)}),[],[])}export{Oe as a};
@@ -0,0 +1 @@
1
+ import{c as g}from"./chunk-CSTCEBEK.js";function M(o){if(!o||typeof o!="object"||Array.isArray(o))throw Error("Motion settings must be an object.");if(o.mode!==void 0&&!["inherit","reduced","off"].includes(o.mode))throw Error("Unknown component motion mode.");if(o.duration!==void 0&&(!Number.isFinite(o.duration)||o.duration<0||o.duration>2e3))throw Error("Motion duration must be between 0 and 2000 ms.");if(o.easing!==void 0&&!Object.hasOwn(g,o.easing))throw Error("Unknown motion easing.");return Object.fromEntries(Object.entries(o).filter(([s,m])=>["mode","duration","easing"].includes(s)&&m!==void 0))}function S(o,s,m={}){let i=M(m),d=!1,r=o.getAttribute("data-blu-motion"),f=["--blu-component-motion-duration","--blu-component-motion-ease"].map(n=>[n,o.style.getPropertyValue(n),o.style.getPropertyPriority(n)]);function t(){return s.mode==="off"||o.closest('.blu-motion-off,[data-blu-motion="off"]')?"off":s.mode==="reduced"||o.closest('[data-blu-motion="reduced"]')?"reduced":"full"}function c(){r==="off"||i.mode==="off"?o.setAttribute("data-blu-motion","off"):r==="reduced"||i.mode==="reduced"?o.setAttribute("data-blu-motion","reduced"):r===null?o.removeAttribute("data-blu-motion"):o.setAttribute("data-blu-motion",r);for(let[n,e,u]of f){let a=n.endsWith("duration")?i.duration===void 0?void 0:i.duration+"ms":i.easing?g[i.easing]:void 0;a!==void 0?o.style.setProperty(n,a):e?o.style.setProperty(n,e,u):o.style.removeProperty(n)}}function p(n={}){let e=n.duration===0?0:i.duration??n.duration??450;return{...n,duration:t()==="off"?0:t()==="reduced"?Math.min(e,200):e,easing:i.easing??n.easing,delay:t()==="full"?n.delay:0}}return c(),{mode:t,resolveOptions:p,get settings(){return{...i}},update(n){if(d)throw Error("Component motion is destroyed.");i=M(n),c()},destroy(){if(!d){d=!0,r===null?o.removeAttribute("data-blu-motion"):o.setAttribute("data-blu-motion",r);for(let[n,e,u]of f)e?o.style.setProperty(n,e,u):o.style.removeProperty(n)}}}}function h(o,s,m={}){let i=S(o,s,m),d=new Map,r=!1;function l(){for(let t of d.keys())s.cancel(t);d.clear();for(let t of o.getAnimations({subtree:!0}))typeof CSSTransition<"u"&&t instanceof CSSTransition&&t.cancel()}return{motion:{get mode(){return i.mode()},animate(t,c,p,n="instant"){if(r)return Promise.resolve("cancelled");if(i.mode()==="off"||i.mode()==="reduced"&&n==="instant")return s.cancel(t),Promise.resolve("finished");let e={};d.set(t,e);let u=i.mode()==="reduced"?c.map(a=>({opacity:a.opacity,offset:a.offset})):c;try{return s.animate(t,u,i.resolveOptions(p),n).finally(()=>{d.get(t)===e&&d.delete(t)})}catch(a){throw d.get(t)===e&&d.delete(t),a}},cancel(t){s.cancel(t),d.delete(t)}},update(t){if(r)throw Error("Component motion is destroyed.");let c=M(t);l(),i.update(c)},destroy(){r||(r=!0,l(),i.destroy())}}}function w(o,s,m={}){let i=!1,d=S(o,s,m),{mode:r,resolveOptions:l}=d,f=new Map;function t(){for(let e of f.keys())s.cancel(e);f.clear();for(let e of o.getAnimations({subtree:!0}))typeof CSSTransition<"u"&&e instanceof CSSTransition&&e.cancel()}function c(e,u){if(i)return Promise.resolve("cancelled");let a={};f.set(e,a);try{return u().finally(()=>{f.get(e)===a&&f.delete(e)})}catch(y){throw f.get(e)===a&&f.delete(e),y}}let p={get mode(){return r()},get preference(){return r()==="off"?"off":r()==="reduced"?"reduced":s.preference},setPreference(e){n({...d.settings,mode:e==="system"?"inherit":e})},resolveOptions:l,play(e,u,a){return c(e,()=>s.play(e,r()==="reduced"?"fade":u,l(a)))},animate(e,u,a,y="instant"){return c(e,()=>{if(r()==="off"||r()==="reduced"&&y==="instant")return s.cancel(e),Promise.resolve("finished");let b=r()==="reduced"?u.map(C=>({opacity:C.opacity,offset:C.offset})):u;return s.animate(e,b,l(a),y)})},tween(e,u,a,y,b){return c(e,()=>s.tween(e,u,a,y,{...l(b),...r()!=="full"?{duration:0}:{}}))},cancel(e){s.cancel(e),f.delete(e)},destroy(){i||(i=!0,t(),d.destroy())}};function n(e){if(i)throw Error("Component motion is destroyed.");let u=M(e);t(),d.update(u)}return{motion:p,update:n,destroy:()=>p.destroy()}}export{M as a,S as b,h as c,w as d};
File without changes
File without changes
@@ -1 +1 @@
1
- import{a as L}from"./chunk-MEEQNPGM.js";import{c as N,d as I}from"./chunk-5TEIXA4R.js";var l=N("common",()=>({instances:new Map,hosts:new Map,serial:0,overlays:[],inertState:new Map,oldOverflow:void 0}));function s(e,t,r){var n=document.createElement(e);return t&&(n.className=t),r!==void 0&&(n.textContent=r),n}function c(e,t,r){return e.setAttribute(t,String(r)),e}function z(e){for(;e.firstChild;)e.removeChild(e.firstChild)}function D(e,t,r){var n=s("button","blu-common-button"+(r?" blu-common-button--primary":""),e);return n.type="button",n.addEventListener("click",t),n}function w(e,t,r,n){if(e=e===void 0?t:Number(e),!Number.isInteger(e)||e<r||e>n)throw Error("Expected an integer between "+r+" and "+n+".");return e}function G(e,t){var r=typeof e=="string"?JSON.parse(e||"[]"):e||[];if(!Array.isArray(r)||r.length>t)throw Error("Expected a list with at most "+t+" items.");return r}function F(e,t){if(!(e.dead||e.host._bluCommonOwner!==e.key||!e.events[t])){var r=Array.prototype.slice.call(arguments,2);try{Promise.resolve(e.events[t].apply(null,r)).catch(function(n){t!=="Error"&&E(e,n.message||String(n))})}catch(n){t!=="Error"&&E(e,n.message||String(n))}}}function E(e,t){e.error||(e.error=c(s("p","blu-common-error"),"role","alert"),e.host.append(e.error)),e.error.textContent=t,e.error.hidden=!t,t&&t!==e.lastError&&F(e,"Error",t),e.lastError=t}function H(e,t,r,n,u){var o=document.getElementById(e);if(!o)return null;n=n||e;var d=l.instances.get(n);return d&&d.host!==o&&(A(n),d=null),o._bluCommonOwner&&o._bluCommonOwner!==n&&A(o._bluCommonOwner),d||(d={host:o,key:n,kind:u,uid:"blu-common-"+ ++l.serial,cleanup:[],events:{},options:{}},l.instances.set(n,d)),o._bluCommonOwner=n,d.options=t||{},d.events=r||{},c(o,"data-blu-ready","true"),d}function A(e){var t=l.instances.get(e);t&&(t.dead=!0,j(t),t.dispose&&t.dispose(),t.cleanup.forEach(function(r){r()}),t.host._bluCommonOwner===e&&(delete t.host._bluCommonOwner,t.host.removeAttribute("data-blu-ready"),t.preserve||z(t.host)),l.instances.delete(e))}function Q(e,t){return e.body||(e.body=s("div",t),e.host.append(e.body)),e.body}function V(){l.inertState.forEach(function(r,n){n.inert=r}),l.inertState.clear();var e=l.overlays[l.overlays.length-1];if(!e){l.oldOverflow!==void 0&&(document.body.style.overflow=l.oldOverflow),l.oldOverflow=void 0;return}l.oldOverflow===void 0&&(l.oldOverflow=document.body.style.overflow),document.body.style.overflow="hidden";for(var t=e.layer;t&&t.parentElement&&(Array.from(t.parentElement.children).forEach(function(r){r!==t&&r instanceof HTMLElement&&(l.inertState.set(r,r.inert),r.inert=!0)}),t=t.parentElement,t!==document.body););}function j(e){if(e.stopTracking&&e.stopTracking(),!!e.overlayOpen){e.overlayOpen=!1;var t=l.overlays[l.overlays.length-1]===e;if(l.overlays=l.overlays.filter(function(r){return r!==e}),document.removeEventListener("keydown",e.overlayKey,!0),document.removeEventListener("focusin",e.overlayFocus,!0),e.layer.hidePopover)try{e.layer.hidePopover()}catch{}e.layer.hidden=!0,V(),t&&e.returnFocus&&e.returnFocus.isConnected&&!e.returnFocus.closest("[inert],[hidden]")&&e.returnFocus.focus()}}function B(e){var t=e.options,r=w(t.TotalCount,0,0,2147483647),n=w(t.PageSize,10,1,2147483647),u=Math.max(1,Math.ceil(r/n)),o=Math.min(u,w(t.CurrentPage,1,1,2147483647)),d=G(t.PageSizesJson||"[10,25,50,100]",30).map(function(a){return w(a,10,1,2147483647)});d.indexOf(n)<0&&d.push(n),d=Array.from(new Set(d)).sort(function(a,f){return a-f});var i=Q(e,"blu-pagination"),m=i.contains(document.activeElement)?document.activeElement:null,g=m&&m.getAttribute("aria-label"),K=m&&m.textContent;z(i),c(i,"role","navigation"),c(i,"aria-label",t.AccessibleLabel||"Pagination"),e.range||(e.range=s("span","blu-pagination__range"),c(e.range,"role","status")),i.append(e.range),e.range.textContent=r?(o-1)*n+1+"\u2013"+Math.min(r,o*n)+" of "+r.toLocaleString():"0 records";var h=s("div","blu-pagination__pages");function S(a,f){e.options.IsDisabled||(e.options=Object.assign({},e.options,{CurrentPage:a,PageSize:f}),B(e),F(e,"PageChanged",a,f))}function C(a,f,q,x){var y=D(a,function(){S(f,n)});y.disabled=!!t.IsDisabled||q,x&&c(y,"aria-label",x),f===o&&!x&&c(y,"aria-current","page"),h.append(y)}if(C("\u2039",o-1,o===1,"Previous page"),t.IsCompact)h.append(s("span","blu-pagination__current",o+" / "+u));else{var b=new Set([1,u,o-1,o,o+1]);o<=3&&(b.add(2),b.add(3)),o>=u-2&&(b.add(u-1),b.add(u-2));var P=0;Array.from(b).filter(function(a){return a>=1&&a<=u}).sort(function(a,f){return a-f}).forEach(function(a){P&&a-P>1&&h.append(c(s("span","","\u2026"),"aria-hidden","true")),C(String(a),a,!1),P=a})}if(C("\u203A",o+1,o===u,"Next page"),i.append(h),t.ShowPageSize!==!1){var M=s("label","blu-pagination__size","Rows "),v=s("select");c(v,"aria-label","Rows per page"),d.forEach(function(a){var f=s("option","",String(a));f.value=a,v.append(f)}),v.value=n,v.disabled=!!t.IsDisabled,v.onchange=function(){S(1,Number(v.value))},M.append(v),i.append(M)}if(t.ShowQuickJump){var O=s("form","blu-pagination__jump"),p=s("input");p.type="number",p.min=1,p.max=u,p.value=o,p.disabled=!!t.IsDisabled,c(p,"aria-label","Go to page");var _=D("Go",function(){});_.type="submit",_.disabled=!!t.IsDisabled,O.onsubmit=function(a){a.preventDefault(),p.checkValidity()&&S(Math.min(u,Math.max(1,Number(p.value))),n)},O.append(p,_),i.append(O)}if(m){var R=Array.from(i.querySelectorAll("button,select,input")).find(function(a){return!a.disabled&&(g?a.getAttribute("aria-label")===g:a.textContent===K)}),T=R||i.querySelector("button[aria-current=page]:not(:disabled),button:not(:disabled),select:not(:disabled),input:not(:disabled)");T&&T.focus()}}function k(e,t,r){return{sync:function(n,u,o,d){var i=H(n,u,o,d,e);if(i)try{var m=r?JSON.stringify(i.options):null;return(!r||i.renderSignature!==m)&&(t(i),i.renderSignature=m),E(i,""),""}catch(g){return i.renderSignature=void 0,i.cascaderSignature=null,j(i),E(i,g.message||String(g)),g.message||String(g)}},destroy:A}}function J(){return I("Pagination",()=>k("Pagination",B,!1))}function ee(e,t,r={}){return J(),L(e,"Pagination",t,n=>({PageChanged:(u,o)=>(n({CurrentPage:u,PageSize:o}),r.PageChanged?.(u,o)),Error:u=>r.Error?.(u)}),[],[])}export{ee as a};
1
+ import{a as L}from"./chunk-MEEQNPGM.js";import{c as N,d as I}from"./chunk-5TEIXA4R.js";var l=N("common",()=>({instances:new Map,hosts:new Map,serial:0,overlays:[],inertState:new Map,oldOverflow:void 0}));function s(e,t,r){var n=document.createElement(e);return t&&(n.className=t),r!==void 0&&(n.textContent=r),n}function c(e,t,r){return e.setAttribute(t,String(r)),e}function z(e){for(;e.firstChild;)e.removeChild(e.firstChild)}function D(e,t,r){var n=s("button","blu-common-button"+(r?" blu-common-button--primary":""),e);return n.type="button",n.addEventListener("click",t),n}function w(e,t,r,n){if(e=e===void 0?t:Number(e),!Number.isInteger(e)||e<r||e>n)throw Error("Expected an integer between "+r+" and "+n+".");return e}function G(e,t){var r=typeof e=="string"?JSON.parse(e||"[]"):e||[];if(!Array.isArray(r)||r.length>t)throw Error("Expected a list with at most "+t+" items.");return r}function F(e,t){if(!(e.dead||e.host._bluCommonOwner!==e.key||!e.events[t])){var r=Array.prototype.slice.call(arguments,2);try{Promise.resolve(e.events[t].apply(null,r)).catch(function(n){t!=="Error"&&E(e,n.message||String(n))})}catch(n){t!=="Error"&&E(e,n.message||String(n))}}}function E(e,t){e.error||(e.error=c(s("p","blu-common-error"),"role","alert"),e.host.append(e.error)),e.error.textContent=t,e.error.hidden=!t,t&&t!==e.lastError&&F(e,"Error",t),e.lastError=t}function H(e,t,r,n,u){var o=document.getElementById(e);if(!o)return null;n=n||e;var d=l.instances.get(n);return d&&d.host!==o&&(M(n),d=null),o._bluCommonOwner&&o._bluCommonOwner!==n&&M(o._bluCommonOwner),d||(d={host:o,key:n,kind:u,uid:"blu-common-"+ ++l.serial,cleanup:[],events:{},options:{}},l.instances.set(n,d)),o._bluCommonOwner=n,d.options=t||{},d.events=r||{},c(o,"data-blu-ready","true"),d}function M(e){var t=l.instances.get(e);t&&(t.dead=!0,B(t),t.dispose&&t.dispose(),t.cleanup.forEach(function(r){r()}),t.host._bluCommonOwner===e&&(delete t.host._bluCommonOwner,t.host.removeAttribute("data-blu-ready"),t.preserve||z(t.host)),l.instances.delete(e))}function Q(e,t){return e.body||(e.body=s("div",t),e.host.append(e.body)),e.body}function V(){l.inertState.forEach(function(r,n){n.inert=r}),l.inertState.clear();var e=l.overlays[l.overlays.length-1];if(!e){l.oldOverflow!==void 0&&(document.body.style.overflow=l.oldOverflow),l.oldOverflow=void 0;return}l.oldOverflow===void 0&&(l.oldOverflow=document.body.style.overflow),document.body.style.overflow="hidden";for(var t=e.layer;t&&t.parentElement&&(Array.from(t.parentElement.children).forEach(function(r){r!==t&&r instanceof HTMLElement&&(l.inertState.set(r,r.inert),r.inert=!0)}),t=t.parentElement,t!==document.body););}function B(e){if(e.stopTracking&&e.stopTracking(),!!e.overlayOpen){e.overlayOpen=!1;var t=l.overlays[l.overlays.length-1]===e;if(l.overlays=l.overlays.filter(function(r){return r!==e}),document.removeEventListener("keydown",e.overlayKey,!0),document.removeEventListener("focusin",e.overlayFocus,!0),e.layer.hidePopover)try{e.layer.hidePopover()}catch{}e.layer.hidden=!0,V(),t&&e.returnFocus&&e.returnFocus.isConnected&&!e.returnFocus.closest("[inert],[hidden]")&&e.returnFocus.focus()}}function J(e){var t=e.options,r=w(t.TotalCount,0,0,2147483647),n=w(t.PageSize,10,1,2147483647),u=Math.max(1,Math.ceil(r/n)),o=Math.min(u,w(t.CurrentPage,1,1,2147483647)),d=G(t.PageSizesJson||"[10,25,50,100]",30).map(function(a){return w(a,10,1,2147483647)});d.indexOf(n)<0&&d.push(n),d=Array.from(new Set(d)).sort(function(a,f){return a-f});var i=Q(e,"blu-pagination"),m=i.contains(document.activeElement)?document.activeElement:null,g=m&&m.getAttribute("aria-label"),j=m&&m.textContent;z(i),c(i,"role","navigation"),c(i,"aria-label",t.AccessibleLabel||"Pagination"),e.range||(e.range=s("span","blu-pagination__range"),c(e.range,"role","status")),i.append(e.range),e.range.textContent=r?(o-1)*n+1+"\u2013"+Math.min(r,o*n)+" of "+r.toLocaleString():"0 records";var h=s("div","blu-pagination__pages");function S(a,f){e.options.IsDisabled||(e.options=Object.assign({},e.options,{CurrentPage:a,PageSize:f}),J(e),F(e,"PageChanged",a,f))}function C(a,f,q,A){var y=D(a,function(){S(f,n)});y.disabled=!!t.IsDisabled||q,A&&c(y,"aria-label",A),f===o&&!A&&c(y,"aria-current","page"),h.append(y)}if(C("\u2039",o-1,o===1,"Previous page"),t.IsCompact)h.append(s("span","blu-pagination__current",o+" / "+u));else{var b=new Set([1,u,o-1,o,o+1]);o<=3&&(b.add(2),b.add(3)),o>=u-2&&(b.add(u-1),b.add(u-2));var P=0;Array.from(b).filter(function(a){return a>=1&&a<=u}).sort(function(a,f){return a-f}).forEach(function(a){P&&a-P>1&&h.append(c(s("span","","\u2026"),"aria-hidden","true")),C(String(a),a,!1),P=a})}if(C("\u203A",o+1,o===u,"Next page"),i.append(h),t.ShowPageSize!==!1){var x=s("label","blu-pagination__size","Rows "),v=s("select");c(v,"aria-label","Rows per page"),d.forEach(function(a){var f=s("option","",String(a));f.value=a,v.append(f)}),v.value=n,v.disabled=!!t.IsDisabled,v.onchange=function(){S(1,Number(v.value))},x.append(v),i.append(x)}if(t.ShowQuickJump){var O=s("form","blu-pagination__jump"),p=s("input");p.type="number",p.min=1,p.max=u,p.value=o,p.disabled=!!t.IsDisabled,c(p,"aria-label","Go to page");var _=D("Go",function(){});_.type="submit",_.disabled=!!t.IsDisabled,O.onsubmit=function(a){a.preventDefault(),p.checkValidity()&&S(Math.min(u,Math.max(1,Number(p.value))),n)},O.append(p,_),i.append(O)}if(m){var R=Array.from(i.querySelectorAll("button,select,input")).find(function(a){return!a.disabled&&(g?a.getAttribute("aria-label")===g:a.textContent===j)}),T=R||i.querySelector("button[aria-current=page]:not(:disabled),button:not(:disabled),select:not(:disabled),input:not(:disabled)");T&&T.focus()}}function k(e,t,r){return{sync:function(n,u,o,d){var i=H(n,u,o,d,e);if(i)try{var m=r?JSON.stringify(i.options):null;return(!r||i.renderSignature!==m)&&(t(i),i.renderSignature=m),E(i,""),""}catch(g){return i.renderSignature=void 0,i.cascaderSignature=null,B(i),E(i,g.message||String(g)),g.message||String(g)}},destroy:M}}function K(){return I("Pagination",()=>k("Pagination",J,!1))}function ee(e,t,r={}){return K(),L(e,"Pagination",t,n=>({PageChanged:(u,o)=>(n({CurrentPage:u,PageSize:o}),r.PageChanged?.(u,o)),Error:u=>r.Error?.(u)}),[],[])}export{ee as a};
@@ -0,0 +1 @@
1
+ import{a as o}from"./chunk-EPPSBHZR.js";function a(p={}){let e=o(p),n=new Set;return{get settings(){return{...e}},configure(i={}){e=o(i);for(let t of n)t()},bind(i){let t={},d=!1,r=()=>i({...e,...t});return n.add(r),{setMotion(m={}){if(d)throw Error("Component motion is destroyed.");let s=o(m);s.mode==="inherit"&&delete s.mode,t=s,r()},destroy(){d=!0,n.delete(r)}}}}}export{a};
File without changes
@@ -1 +1 @@
1
- import{a as w}from"./chunk-MEEQNPGM.js";import{c as C,d as E}from"./chunk-5TEIXA4R.js";var i=C("common",()=>({instances:new Map,hosts:new Map,serial:0,overlays:[],inertState:new Map,oldOverflow:void 0}));function d(e,t,o){var r=document.createElement(e);return t&&(r.className=t),o!==void 0&&(r.textContent=o),r}function u(e,t,o){return e.setAttribute(t,String(o)),e}function M(e){for(;e.firstChild;)e.removeChild(e.firstChild)}function x(e,t,o,r,n){t.addEventListener(o,r,n),e.cleanup.push(function(){t.removeEventListener(o,r,n)})}function v(e,t,o){var r=d("button","blu-common-button"+(o?" blu-common-button--primary":""),e);return r.type="button",r.addEventListener("click",t),r}function O(e,t,o){if(e=e||o,t.indexOf(e)<0)throw Error("Expected one of: "+t.join(", ")+".");return e}function b(e,t){if(!(e.dead||e.host._bluCommonOwner!==e.key||!e.events[t])){var o=Array.prototype.slice.call(arguments,2);try{Promise.resolve(e.events[t].apply(null,o)).catch(function(r){t!=="Error"&&p(e,r.message||String(r))})}catch(r){t!=="Error"&&p(e,r.message||String(r))}}}function p(e,t){e.error||(e.error=u(d("p","blu-common-error"),"role","alert"),e.host.append(e.error)),e.error.textContent=t,e.error.hidden=!t,t&&t!==e.lastError&&b(e,"Error",t),e.lastError=t}function F(e,t,o,r,n){var a=document.getElementById(e);if(!a)return null;r=r||e;var l=i.instances.get(r);return l&&l.host!==a&&(h(r),l=null),a._bluCommonOwner&&a._bluCommonOwner!==r&&h(a._bluCommonOwner),l||(l={host:a,key:r,kind:n,uid:"blu-common-"+ ++i.serial,cleanup:[],events:{},options:{}},i.instances.set(r,l)),a._bluCommonOwner=r,l.options=t||{},l.events=o||{},u(a,"data-blu-ready","true"),l}function h(e){var t=i.instances.get(e);t&&(t.dead=!0,m(t),t.dispose&&t.dispose(),t.cleanup.forEach(function(o){o()}),t.host._bluCommonOwner===e&&(delete t.host._bluCommonOwner,t.host.removeAttribute("data-blu-ready"),t.preserve||M(t.host)),i.instances.delete(e))}function y(e){return Array.from(e.querySelectorAll('button,a[href],input,select,textarea,[tabindex]:not([tabindex="-1"])')).filter(function(t){return!t.disabled&&!t.closest("[hidden],[inert]")&&t.getClientRects().length})}function L(){i.inertState.forEach(function(o,r){r.inert=o}),i.inertState.clear();var e=i.overlays[i.overlays.length-1];if(!e){i.oldOverflow!==void 0&&(document.body.style.overflow=i.oldOverflow),i.oldOverflow=void 0;return}i.oldOverflow===void 0&&(i.oldOverflow=document.body.style.overflow),document.body.style.overflow="hidden";for(var t=e.layer;t&&t.parentElement&&(Array.from(t.parentElement.children).forEach(function(o){o!==t&&o instanceof HTMLElement&&(i.inertState.set(o,o.inert),o.inert=!0)}),t=t.parentElement,t!==document.body););}function I(e,t,o,r){if(!e.overlayOpen){if(e.overlayOpen=!0,e.layer=t,e.panel=o,e.returnFocus=document.activeElement,t.hidden=!1,u(t,"popover","manual"),t.showPopover)try{t.showPopover()}catch{}i.overlays.push(e),L(),o.tabIndex=-1,e.overlayKey=function(n){if(i.overlays[i.overlays.length-1]===e){if(n.key==="Escape")n.preventDefault(),n.stopImmediatePropagation(),r();else if(n.key==="Tab"){var a=y(o),l=a[0]||o,c=a[a.length-1]||o;n.shiftKey&&(document.activeElement===l||!o.contains(document.activeElement))?(n.preventDefault(),c.focus()):!n.shiftKey&&(document.activeElement===c||!o.contains(document.activeElement))&&(n.preventDefault(),l.focus())}}},e.overlayFocus=function(n){i.overlays[i.overlays.length-1]===e&&!o.contains(n.target)&&(y(o)[0]||o).focus()},document.addEventListener("keydown",e.overlayKey,!0),document.addEventListener("focusin",e.overlayFocus,!0),(y(o)[0]||o).focus()}}function m(e){if(e.stopTracking&&e.stopTracking(),!!e.overlayOpen){e.overlayOpen=!1;var t=i.overlays[i.overlays.length-1]===e;if(i.overlays=i.overlays.filter(function(o){return o!==e}),document.removeEventListener("keydown",e.overlayKey,!0),document.removeEventListener("focusin",e.overlayFocus,!0),e.layer.hidePopover)try{e.layer.hidePopover()}catch{}e.layer.hidden=!0,L(),t&&e.returnFocus&&e.returnFocus.isConnected&&!e.returnFocus.closest("[inert],[hidden]")&&e.returnFocus.focus()}}function _(e,t){return e.host.querySelector('[data-blu-slot="'+t+'"],.blu-common-slot--'+t.toLowerCase())}function T(e){var t=e.options,o=O(t.Size,["Small","Medium","Large"],"Medium"),r=O(t.Placement,["Left","Right","Bottom"],"Right");if(e.preserve=!0,!e.layer){var n=_(e,"Content"),a=_(e,"Footer");e.layer=e.host,e.layer.classList.add("blu-overlay"),e.layer.classList.add("blu-overlay--"+e.kind.toLowerCase()),e.panel=u(d("section","blu-overlay__panel"),"role","dialog"),u(e.panel,"aria-modal","true"),e.heading=d("h2"),e.heading.id=e.uid+"-title",e.description=d("p","blu-overlay__description"),e.description.id=e.uid+"-description",e.close=v("\xD7",function(){s(e,"CloseButton")}),u(e.close,"aria-label","Close dialog"),e.close.classList.add("blu-overlay__close");var l=d("header","blu-overlay__header");l.append(e.heading,e.description,e.close),e.content=n||d("div","blu-common-slot--content"),e.content.classList.add("blu-overlay__content"),e.footer=d("footer","blu-overlay__footer"),e.customFooter=a||d("div"),e.actions=d("div","blu-overlay__actions"),e.cancel=v("Cancel",function(){s(e,"Cancel")}),e.confirm=v("Confirm",function(){e.options.IsBusy||b(e,"Confirm",e.options.InstanceKey||"")},!0),e.actions.append(e.cancel,e.confirm),e.footer.append(e.customFooter,e.actions),e.panel.append(l,e.content,e.footer),e.layer.append(e.panel),x(e,e.layer,"click",function(c){c.target===e.layer&&e.options.CloseOnBackdrop!==!1&&s(e,"Backdrop")}),e.dispose=function(){n&&e.host.append(n),a&&e.host.append(a),e.panel.remove()}}u(e.layer,"data-size",o.toLowerCase()),u(e.layer,"data-placement",r.toLowerCase()),e.heading.textContent=t.Title||"Details",e.description.textContent=t.Description||"",e.description.hidden=!t.Description,u(e.panel,"aria-labelledby",e.heading.id),t.Description?u(e.panel,"aria-describedby",e.description.id):e.panel.removeAttribute("aria-describedby"),u(e.panel,"aria-busy",!!t.IsBusy),e.close.disabled=e.cancel.disabled=!1,e.confirm.disabled=!!t.IsBusy,e.cancel.textContent=t.CancelLabel||"Cancel",e.confirm.textContent=t.IsBusy?"Working\u2026":t.ConfirmLabel||"Confirm",e.footer.hidden=t.ShowFooter===!1,e.actions.hidden=t.ShowDefaultActions===!1,t.IsOpen?I(e,e.layer,e.panel,function(){e.options.CloseOnEscape!==!1&&s(e,"Escape")}):(m(e),e.layer.hidden=!0)}function s(e,t){e.options.IsOpen=!1,m(e),b(e,"OpenChanged",!1,t)}function B(e,t,o){return{sync:function(r,n,a,l){var c=F(r,n,a,l,e);if(c)try{var g=o?JSON.stringify(c.options):null;return(!o||c.renderSignature!==g)&&(t(c),c.renderSignature=g),p(c,""),""}catch(f){return c.renderSignature=void 0,c.cascaderSignature=null,m(c),p(c,f.message||String(f)),f.message||String(f)}},destroy:h}}function S(){return E("Modal",()=>B("Modal",T,!1))}function R(e,t,o={}){return S(),w(e,"Modal",t,r=>({OpenChanged:(n,a)=>(r({IsOpen:n}),o.OpenChanged?.(n,a)),Confirm:n=>o.Confirm?.(n),Error:n=>o.Error?.(n)}),[],["Content","Footer"])}export{R as a};
1
+ import{a as w}from"./chunk-MEEQNPGM.js";import{c as C,d as E}from"./chunk-5TEIXA4R.js";var i=C("common",()=>({instances:new Map,hosts:new Map,serial:0,overlays:[],inertState:new Map,oldOverflow:void 0}));function d(e,t,o){var n=document.createElement(e);return t&&(n.className=t),o!==void 0&&(n.textContent=o),n}function u(e,t,o){return e.setAttribute(t,String(o)),e}function M(e){for(;e.firstChild;)e.removeChild(e.firstChild)}function F(e,t,o,n,r){t.addEventListener(o,n,r),e.cleanup.push(function(){t.removeEventListener(o,n,r)})}function v(e,t,o){var n=d("button","blu-common-button"+(o?" blu-common-button--primary":""),e);return n.type="button",n.addEventListener("click",t),n}function O(e,t,o){if(e=e||o,t.indexOf(e)<0)throw Error("Expected one of: "+t.join(", ")+".");return e}function b(e,t){if(!(e.dead||e.host._bluCommonOwner!==e.key||!e.events[t])){var o=Array.prototype.slice.call(arguments,2);try{Promise.resolve(e.events[t].apply(null,o)).catch(function(n){t!=="Error"&&p(e,n.message||String(n))})}catch(n){t!=="Error"&&p(e,n.message||String(n))}}}function p(e,t){e.error||(e.error=u(d("p","blu-common-error"),"role","alert"),e.host.append(e.error)),e.error.textContent=t,e.error.hidden=!t,t&&t!==e.lastError&&b(e,"Error",t),e.lastError=t}function x(e,t,o,n,r){var a=document.getElementById(e);if(!a)return null;n=n||e;var l=i.instances.get(n);return l&&l.host!==a&&(h(n),l=null),a._bluCommonOwner&&a._bluCommonOwner!==n&&h(a._bluCommonOwner),l||(l={host:a,key:n,kind:r,uid:"blu-common-"+ ++i.serial,cleanup:[],events:{},options:{}},i.instances.set(n,l)),a._bluCommonOwner=n,l.options=t||{},l.events=o||{},u(a,"data-blu-ready","true"),l}function h(e){var t=i.instances.get(e);t&&(t.dead=!0,m(t),t.dispose&&t.dispose(),t.cleanup.forEach(function(o){o()}),t.host._bluCommonOwner===e&&(delete t.host._bluCommonOwner,t.host.removeAttribute("data-blu-ready"),t.preserve||M(t.host)),i.instances.delete(e))}function y(e){return Array.from(e.querySelectorAll('button,a[href],input,select,textarea,[tabindex]:not([tabindex="-1"])')).filter(function(t){return!t.disabled&&!t.closest("[hidden],[inert]")&&t.getClientRects().length})}function L(){i.inertState.forEach(function(o,n){n.inert=o}),i.inertState.clear();var e=i.overlays[i.overlays.length-1];if(!e){i.oldOverflow!==void 0&&(document.body.style.overflow=i.oldOverflow),i.oldOverflow=void 0;return}i.oldOverflow===void 0&&(i.oldOverflow=document.body.style.overflow),document.body.style.overflow="hidden";for(var t=e.layer;t&&t.parentElement&&(Array.from(t.parentElement.children).forEach(function(o){o!==t&&o instanceof HTMLElement&&(i.inertState.set(o,o.inert),o.inert=!0)}),t=t.parentElement,t!==document.body););}function I(e,t,o,n){if(!e.overlayOpen){if(e.overlayOpen=!0,e.layer=t,e.panel=o,e.returnFocus=document.activeElement,t.hidden=!1,u(t,"popover","manual"),t.showPopover)try{t.showPopover()}catch{}i.overlays.push(e),L(),o.tabIndex=-1,e.overlayKey=function(r){if(i.overlays[i.overlays.length-1]===e){if(r.key==="Escape")r.preventDefault(),r.stopImmediatePropagation(),n();else if(r.key==="Tab"){var a=y(o),l=a[0]||o,c=a[a.length-1]||o;r.shiftKey&&(document.activeElement===l||!o.contains(document.activeElement))?(r.preventDefault(),c.focus()):!r.shiftKey&&(document.activeElement===c||!o.contains(document.activeElement))&&(r.preventDefault(),l.focus())}}},e.overlayFocus=function(r){i.overlays[i.overlays.length-1]===e&&!o.contains(r.target)&&(y(o)[0]||o).focus()},document.addEventListener("keydown",e.overlayKey,!0),document.addEventListener("focusin",e.overlayFocus,!0),(y(o)[0]||o).focus()}}function m(e){if(e.stopTracking&&e.stopTracking(),!!e.overlayOpen){e.overlayOpen=!1;var t=i.overlays[i.overlays.length-1]===e;if(i.overlays=i.overlays.filter(function(o){return o!==e}),document.removeEventListener("keydown",e.overlayKey,!0),document.removeEventListener("focusin",e.overlayFocus,!0),e.layer.hidePopover)try{e.layer.hidePopover()}catch{}e.layer.hidden=!0,L(),t&&e.returnFocus&&e.returnFocus.isConnected&&!e.returnFocus.closest("[inert],[hidden]")&&e.returnFocus.focus()}}function _(e,t){return e.host.querySelector('[data-blu-slot="'+t+'"],.blu-common-slot--'+t.toLowerCase())}function T(e){var t=e.options,o=O(t.Size,["Small","Medium","Large"],"Medium"),n=O(t.Placement,["Left","Right","Bottom"],"Right");if(e.preserve=!0,!e.layer){var r=_(e,"Content"),a=_(e,"Footer");e.layer=e.host,e.layer.classList.add("blu-overlay"),e.layer.classList.add("blu-overlay--"+e.kind.toLowerCase()),e.panel=u(d("section","blu-overlay__panel"),"role","dialog"),u(e.panel,"aria-modal","true"),e.heading=d("h2"),e.heading.id=e.uid+"-title",e.description=d("p","blu-overlay__description"),e.description.id=e.uid+"-description",e.close=v("\xD7",function(){s(e,"CloseButton")}),u(e.close,"aria-label","Close dialog"),e.close.classList.add("blu-overlay__close");var l=d("header","blu-overlay__header");l.append(e.heading,e.description,e.close),e.content=r||d("div","blu-common-slot--content"),e.content.classList.add("blu-overlay__content"),e.footer=d("footer","blu-overlay__footer"),e.customFooter=a||d("div"),e.actions=d("div","blu-overlay__actions"),e.cancel=v("Cancel",function(){s(e,"Cancel")}),e.confirm=v("Confirm",function(){e.options.IsBusy||b(e,"Confirm",e.options.InstanceKey||"")},!0),e.actions.append(e.cancel,e.confirm),e.footer.append(e.customFooter,e.actions),e.panel.append(l,e.content,e.footer),e.layer.append(e.panel),F(e,e.layer,"click",function(c){c.target===e.layer&&e.options.CloseOnBackdrop!==!1&&s(e,"Backdrop")}),e.dispose=function(){r&&e.host.append(r),a&&e.host.append(a),e.panel.remove()}}u(e.layer,"data-size",o.toLowerCase()),u(e.layer,"data-placement",n.toLowerCase()),e.heading.textContent=t.Title||"Details",e.description.textContent=t.Description||"",e.description.hidden=!t.Description,u(e.panel,"aria-labelledby",e.heading.id),t.Description?u(e.panel,"aria-describedby",e.description.id):e.panel.removeAttribute("aria-describedby"),u(e.panel,"aria-busy",!!t.IsBusy),e.close.disabled=e.cancel.disabled=!1,e.confirm.disabled=!!t.IsBusy,e.cancel.textContent=t.CancelLabel||"Cancel",e.confirm.textContent=t.IsBusy?"Working\u2026":t.ConfirmLabel||"Confirm",e.footer.hidden=t.ShowFooter===!1,e.actions.hidden=t.ShowDefaultActions===!1,t.IsOpen?I(e,e.layer,e.panel,function(){e.options.CloseOnEscape!==!1&&s(e,"Escape")}):(m(e),e.layer.hidden=!0)}function s(e,t){e.options.IsOpen=!1,m(e),b(e,"OpenChanged",!1,t)}function B(e,t,o){return{sync:function(n,r,a,l){var c=x(n,r,a,l,e);if(c)try{var g=o?JSON.stringify(c.options):null;return(!o||c.renderSignature!==g)&&(t(c),c.renderSignature=g),p(c,""),""}catch(f){return c.renderSignature=void 0,c.cascaderSignature=null,m(c),p(c,f.message||String(f)),f.message||String(f)}},destroy:h}}function S(){return E("Modal",()=>B("Modal",T,!1))}function R(e,t,o={}){return S(),w(e,"Modal",t,n=>({OpenChanged:(r,a)=>(n({IsOpen:r}),o.OpenChanged?.(r,a)),Confirm:r=>o.Confirm?.(r),Error:r=>o.Error?.(r)}),[],["Content","Footer"])}export{R as a};
File without changes
@@ -0,0 +1 @@
1
+ import{a as g}from"./chunk-6T677NSC.js";function S(e){if(!Number.isFinite(e))throw new Error("Provide a finite value.");return e}var M=e=>Math.max(0,Math.min(100,S(e)));function O(e,c,i=0){let a=g(e,["transform","transform-origin"]),m=M(i),s=0,r=!1;return e.style.transformOrigin="left center",e.style.transform=`scaleX(${m/100})`,{async set(l,d={}){if(l=M(l),r)return"cancelled";let f=++s,u=e.ownerDocument.defaultView.getComputedStyle(e).transform;return c.cancel(e),m=l,e.style.transform=`scaleX(${m/100})`,await c.animate(e,[{transform:u},{transform:e.style.transform}],d),!r&&f===s?"finished":"cancelled"},destroy(){r=!0,++s,c.cancel(e),a()}}}function x(e,c,i=0){let a=e.getAttribute("pathLength"),m=g(e,["stroke-dasharray","stroke-dashoffset"]),s=0,r=!1,l=M(i);return e.setAttribute("pathLength","1"),e.style.strokeDasharray="1",e.style.strokeDashoffset=String(1-l/100),{async set(d,f={}){if(d=M(d),r)return"cancelled";let u=++s,o=e.ownerDocument.defaultView.getComputedStyle(e).strokeDashoffset;return c.cancel(e),e.style.strokeDashoffset=String(1-d/100),await c.animate(e,[{strokeDashoffset:o},{strokeDashoffset:e.style.strokeDashoffset}],f),!r&&u===s?"finished":"cancelled"},destroy(){r=!0,++s,c.cancel(e),m(),a===null?e.removeAttribute("pathLength"):e.setAttribute("pathLength",a)}}}function k(e,c,i){let a=S(i.value),m=0,s=!1,r=Array.from(e.childNodes),l=e.ownerDocument,d=l.createElement("span"),f=l.createElement("span");d.setAttribute("aria-hidden","true"),f.className="blu-motion-sr-only";let u=i.format||(o=>Math.round(o).toLocaleString());return d.textContent=f.textContent=u(a),e.replaceChildren(d,f),{async set(o,n={}){if(S(o),s)return"cancelled";let t=u(o),h=++m;return f.textContent=t,await c.tween(e,a,o,p=>{a=p,d.textContent=u(p)},n),s||h!==m?"cancelled":(a=o,d.textContent=t,"finished")},destroy(){s||(s=!0,++m,c.cancel(e),e.replaceChildren(...r))}}}var C=new WeakMap;function T(e,c){let i=e.ownerDocument.defaultView;if(!i||!e.isConnected)throw Error("Mount optional motion on a connected element.");let a=C.get(e);a||(a={count:0,restore:g(e,["position"])},C.set(e,a),i.getComputedStyle(e).position==="static"&&(e.style.position="relative")),a.count++;let m=!1,s=()=>{m||(m=!0,--a.count===0&&(a.restore(),C.delete(e)))},r=e.ownerDocument.createElement("span");return r.className=c,r.setAttribute("aria-hidden","true"),r.inert=!0,e.append(r),{overlay:r,restore:s,win:i}}var L=new WeakSet;function R(e,c,i={}){let{listen:a=!0,...m}=i;if(L.has(e))throw Error("This element already has ripple feedback.");let{overlay:s,restore:r}=T(e,"blu-motion-ripple");L.add(e);let l,d=!1,f=()=>{l&&(c.cancel(l),l.remove(),l=void 0)},u=n=>{if(d||!e.isConnected||e.matches(":disabled")||e.getAttribute("aria-disabled")==="true"||e.closest("[inert]")||(f(),c.mode!=="full"||e.closest('.blu-motion-off, [data-blu-motion="off"], [data-blu-motion="reduced"]')))return;let t=s.getBoundingClientRect(),h=s.clientWidth,p=s.clientHeight;if(!h||!p||!t.width||!t.height)return;let w=n?Math.min(h,Math.max(0,(n.clientX-t.left)*h/t.width)):h/2,b=n?Math.min(p,Math.max(0,(n.clientY-t.top)*p/t.height)):p/2,v=Math.hypot(Math.max(w,h-w),Math.max(b,p-b))*2,y=e.ownerDocument.createElement("span");y.className="blu-motion-ripple__wave",y.style.cssText=`width:${v}px;height:${v}px;left:${w-v/2}px;top:${b-v/2}px`,s.append(y),l=y,c.animate(y,[{transform:"scale(0)",opacity:.4},{transform:"scale(.8)",opacity:.25,offset:.65},{transform:"scale(1)",opacity:0}],{duration:1e3,easing:"ease-out",...m}).finally(()=>{y.remove(),l===y&&(l=void 0)})},o=n=>{n.defaultPrevented||u(n.detail?n:void 0)};return a&&e.addEventListener("click",o),{element:s,play:u,destroy(){d||(d=!0,e.removeEventListener("click",o),f(),s.remove(),r(),L.delete(e))}}}var D=new WeakSet;function $(e,c={}){let i=(t=1800)=>{if(!Number.isFinite(t)||t<1200||t>6e3)throw Error("Shimmer duration must be 1200\u20136000 ms.");return t},a=i(c.duration),m=c.paused??!1,s=!1,r=!1;if(D.has(e))throw Error("This element already has a shimmer.");let{overlay:l,restore:d,win:f}=T(e,"blu-motion-shimmer"),u=e.ownerDocument.createElement("span");u.className="blu-motion-shimmer__beam",l.append(u),D.add(e);let o=()=>{l.style.setProperty("--blu-shimmer-duration",a+"ms"),l.dataset.paused=String(m||!s||e.ownerDocument.hidden)},n=f.IntersectionObserver?new f.IntersectionObserver(t=>{s=t[0].isIntersecting,o()}):null;return n?n.observe(e):s=!0,e.ownerDocument.addEventListener("visibilitychange",o),o(),{element:l,update(t){if(r)throw Error("Shimmer is destroyed.");t.duration!==void 0&&(a=i(t.duration)),t.paused!==void 0&&(m=t.paused),o()},destroy(){r||(r=!0,n?.disconnect(),e.ownerDocument.removeEventListener("visibilitychange",o),l.remove(),d(),D.delete(e))}}}var E="http://www.w3.org/2000/svg";function P(e,c,i,a=!1){if(!e.isConnected||!e.ownerDocument.defaultView)throw Error("Mount icon motion on a connected element.");if(e.childNodes.length)throw Error("Icon motion requires an empty decorative slot.");if(!["chevron","plus-minus","menu-close","save-check"].includes(i))throw Error("Unknown motion icon.");let m=e.ownerDocument,s=m.defaultView,r=m.createElementNS(E,"svg");r.setAttribute("viewBox","0 0 24 24"),r.setAttribute("aria-hidden","true"),r.setAttribute("focusable","false"),r.classList.add("blu-motion-icon");let d=(i==="chevron"?["M6 9l6 6 6-6"]:i==="plus-minus"?["M5 12h14","M12 5v14"]:i==="menu-close"?["M4 6h16","M4 12h16","M4 18h16"]:["M4 3h13l3 3v15H4z M8 3v6h8V3 M8 21v-7h8v7","M5 12l4 4L19 6"]).map(n=>{let t=m.createElementNS(E,"path");return t.setAttribute("d",n),t.style.transformOrigin="12px 12px",r.append(t),t});e.append(r);let f=a,u=!1,o=(n,t)=>i==="chevron"?{transform:`rotate(${n?180:0}deg)`,opacity:"1"}:i==="plus-minus"?{transform:`rotate(${n&&t===1?90:0}deg)`,opacity:n&&t===1?"0":"1"}:i==="menu-close"?{transform:n?t===0?"rotate(45deg) translateY(6px)":t===2?"rotate(-45deg) translateY(-6px)":"scaleX(.5)":"none",opacity:n&&t===1?"0":"1"}:{transform:`scale(${n===(t===1)?1:.85})`,opacity:n===(t===1)?"1":"0"};return d.forEach((n,t)=>Object.assign(n.style,o(f,t))),{element:r,async setActive(n,t={}){return u?"cancelled":n===f?"finished":(f=n,(await Promise.all(d.map((p,w)=>{let b=s.getComputedStyle(p),v={transform:b.transform,opacity:b.opacity};c.cancel(p);let y=o(n,w);return Object.assign(p.style,y),c.animate(p,[v,y],{duration:450,easing:"ease-in-out",...t})}))).includes("cancelled")?"cancelled":"finished")},destroy(){u||(u=!0,d.forEach(n=>c.cancel(n)),r.remove())}}}function V(e,c,i="underline"){if(!["underline","border"].includes(i))throw Error("Unknown emphasis style.");let{overlay:a,restore:m,win:s}=T(e,"blu-motion-emphasis blu-motion-emphasis--"+i),r=a,l;if(i==="border"){let u=e.ownerDocument.createElementNS(E,"svg"),o=e.ownerDocument.createElementNS(E,"rect");o.setAttribute("pathLength","1"),o.setAttribute("vector-effect","non-scaling-stroke"),u.append(o),a.append(u),r=o;let n=()=>{let{width:t,height:h}=a.getBoundingClientRect();u.setAttribute("viewBox",`0 0 ${t} ${h}`),o.setAttribute("x","1"),o.setAttribute("y","1"),o.setAttribute("width",String(Math.max(0,t-2))),o.setAttribute("height",String(Math.max(0,h-2))),o.setAttribute("rx",s.getComputedStyle(e).borderTopLeftRadius)};l=new s.ResizeObserver(n),l.observe(e),n(),r.style.strokeDasharray="1",r.style.strokeDashoffset="1"}else r.style.transform="scaleX(0)";let d=!1,f=!1;return{element:a,async setActive(u,o={}){if(f)return"cancelled";if(d===u)return"finished";d=u;let n=s.getComputedStyle(r),t=i==="border"?"strokeDashoffset":"transform",h=n[t];c.cancel(r);let p=i==="border"?u?"0":"1":`scaleX(${u?1:0})`;return r.style[t]=p,c.animate(r,[{[t]:h},{[t]:p}],{duration:750,easing:"ease-in-out",...o})},destroy(){f||(f=!0,c.cancel(r),l?.disconnect(),a.remove(),m())}}}export{S as a,O as b,x as c,k as d,R as e,$ as f,P as g,V as h};
File without changes
File without changes
@@ -1 +1 @@
1
- import{c as L,d as O}from"./chunk-5TEIXA4R.js";import{c as k}from"./chunk-SDMH2EVD.js";var p=L("interactive",()=>({instances:new Map,nextId:0}));function u(e,t,o){var r=document.createElement(e);return t&&(r.className=t),o!==void 0&&(r.textContent=o),r}function c(e,t,o){return e.setAttribute(t,String(o)),e}function C(e){for(;e.firstChild;)e.removeChild(e.firstChild)}function P(e,t,o,r){var n=u("button","blu-control "+(o||""),e);return n.type="button",n.disabled=!!r,n.addEventListener("click",t),n}function T(e,t,o,r){var n=u("input","blu-input");return n.type=e,n.value=t===void 0?"":String(t),c(n,"aria-label",o),r&&n.addEventListener("change",function(){r(n.value)}),n}function F(e,t){var o=typeof e=="string"?JSON.parse(e||"[]"):e;if(!Array.isArray(o))throw new Error(t+" must be a JSON array.");return o}function M(e,t){var o=new Map;if(e.length>2e3)throw new Error(t+" supports up to 2,000 local items.");return e.forEach(function(r){if(!r||typeof r.Key!="string"||!r.Key.trim()||typeof r.Label!="string"||!r.Label.trim())throw new Error(t+": every item needs a Key and Label.");if(o.has(r.Key))throw new Error("Duplicate key: "+r.Key);o.set(r.Key,r)}),o}function h(e,t){if(!(e.disposed||!e.events[t])){var o=Array.prototype.slice.call(arguments,2);try{Promise.resolve(e.events[t].apply(null,o)).catch(function(r){t!=="Error"&&h(e,"Error",r.message||String(r))})}catch(r){t!=="Error"&&h(e,"Error",r.message||String(r))}}}function S(e,t){e.error.textContent=t,e.error.hidden=!t,t&&h(e,"Error",t)}function _(e,t){e.root=u("div",t),e.error=c(u("div","blu-component-error"),"role","alert"),e.error.hidden=!0,C(e.host),e.host.appendChild(e.root),e.host.appendChild(e.error)}function f(e,t,o,r,n){t.addEventListener(o,r,n),e.cleanup.push(function(){t.removeEventListener(o,r,n)})}function D(e,t,o,r,n){var i=n||e,d=document.getElementById(e);if(!d)throw new Error(t+" host was not found.");var a=p.instances.get(i);a&&(a.kind!==t||a.host!==d)&&v(i);var l=p.instances.get(i);return l||(l={host:d,id:e,key:i,uid:"blu-interactive-"+ ++p.nextId,kind:t,cleanup:[],options:{},events:r||{},disposed:!1},p.instances.set(i,l)),d._bluOwnerKey=i,l.events=r||l.events,l}function v(e){var t=p.instances.get(e);t&&(t.disposed=!0,t.dispose&&t.dispose(),t.cleanup.forEach(function(o){o()}),t.host._bluOwnerKey===t.key&&(C(t.host),delete t.host._bluOwnerKey),p.instances.delete(e))}function N(e,t){return Object.freeze({sync:function(o,r,n,i){var d=i||o,a=D(o,e,r,n,i);try{return t(a,r),""}catch(l){return v(d),a=D(o,e,r,n,i),_(a,"blu-interactive"),S(a,l.message),l.message}},destroy:function(o){var r=p.instances.get(o);r&&r.kind===e&&v(o)}})}function s(e,t){e.options.IsDisabled&&(t=!1),t!==e.open&&(e.open=t,e.lastOpen=t,t?(e.returnFocus=document.activeElement,e.dialog.showModal(),e.search.value="",y(e),e.search.focus()):(e.dialog.close(),e.returnFocus&&e.returnFocus.isConnected&&e.returnFocus.focus()),h(e,"OpenChanged",t))}function I(e,t){!t||t.IsDisabled||e.options.IsDisabled||(s(e,!1),h(e,"Command",t.Key))}function y(e){var t=e.search.value.trim().toLocaleLowerCase();e.results=e.items.filter(function(n){return(n.Label+" "+(n.Description||"")+" "+(n.Keywords||"")+" "+(n.Group||"")).toLocaleLowerCase().indexOf(t)>=0}).slice(0,100),C(e.list);var o="",r=[];e.results.forEach(function(n,i){if(n.Group&&n.Group!==o){o=n.Group;var d=u("li","blu-command__group",o);c(d,"role","presentation"),e.list.appendChild(d)}var a=u("li","blu-command__option");a.id=e.uid+"-command-"+i,c(a,"role","option"),c(a,"aria-disabled",!!n.IsDisabled),a.dataset.index=i;var l=u("span","blu-command__copy");l.appendChild(u("strong","",n.Label)),n.Description&&l.appendChild(u("small","",n.Description)),a.appendChild(l),n.Shortcut&&a.appendChild(u("kbd","",n.Shortcut)),a.addEventListener("click",function(){I(e,n)}),e.list.appendChild(a),n.IsDisabled||r.push(i)}),e.enabled=r,e.active=r.length?r[0]:-1,e.results.length||e.list.appendChild(c(u("li","blu-interactive__empty",e.options.EmptyText||"No commands found."),"role","presentation")),e.count.textContent=e.results.length+" commands",K(e)}function K(e){Array.from(e.list.querySelectorAll('[role="option"]')).forEach(function(o){c(o,"aria-selected",Number(o.dataset.index)===e.active)});var t=e.list.querySelector('[data-index="'+e.active+'"]');t?(c(e.search,"aria-activedescendant",t.id),t.scrollIntoView({block:"nearest"})):e.search.removeAttribute("aria-activedescendant")}function j(e,t){var o=F(t.CommandsJson,"Commands");if(M(o,"Commands"),e.items=o,e.options=t,!e.ready){_(e,"blu-command"),e.open=!1,e.trigger=P(t.TriggerLabel||"Open command palette",function(){s(e,!0)}),e.root.appendChild(e.trigger),e.dialog=u("dialog","blu-command__dialog"),c(e.dialog,"aria-label",t.AccessibleLabel||"Command palette"),e.search=T("search","","Search commands"),e.search.placeholder="Search commands, pages, and actions\u2026",c(e.search,"role","combobox"),c(e.search,"aria-autocomplete","list"),c(e.search,"aria-expanded",!0),c(e.search,"aria-controls",e.uid+"-commands"),e.dialog.appendChild(e.search),e.list=c(u("ul","blu-command__list"),"role","listbox"),e.list.id=e.uid+"-commands",c(e.list,"aria-label","Commands"),e.dialog.appendChild(e.list);var r=u("div","blu-command__footer");e.count=c(u("span"),"aria-live","polite"),r.appendChild(e.count),r.appendChild(u("span","","\u2191 \u2193 Navigate \u21B5 Select Esc Close")),r.appendChild(P("Close",function(){s(e,!1)},"blu-control--quiet")),e.dialog.appendChild(r),e.root.appendChild(e.dialog),f(e,e.search,"input",function(){y(e)}),f(e,e.dialog,"cancel",function(n){n.preventDefault(),s(e,!1)}),f(e,e.dialog,"keydown",function(n){if(n.key==="Tab"){var i=Array.from(e.dialog.querySelectorAll('button:not(:disabled),input:not(:disabled),select:not(:disabled),a[href],[tabindex="0"]')).filter(function(l){return l.getClientRects().length}),d=i[0],a=i[i.length-1];n.shiftKey&&document.activeElement===d?(n.preventDefault(),a.focus()):!n.shiftKey&&document.activeElement===a&&(n.preventDefault(),d.focus())}}),f(e,e.dialog,"click",function(n){if(n.target===e.dialog){var i=e.dialog.getBoundingClientRect();(n.clientX<i.left||n.clientX>i.right||n.clientY<i.top||n.clientY>i.bottom)&&s(e,!1)}}),f(e,e.search,"keydown",function(n){if(n.key==="Enter"){n.preventDefault(),I(e,e.results[e.active]);return}var i=e.enabled.indexOf(e.active);if(n.key==="ArrowDown")i=(i+1)%e.enabled.length;else if(n.key==="ArrowUp")i=(i-1+e.enabled.length)%e.enabled.length;else if(n.key==="Home")i=0;else if(n.key==="End")i=e.enabled.length-1;else return;n.preventDefault(),e.active=e.enabled[i]===void 0?-1:e.enabled[i],K(e)}),f(e,document,"keydown",function(n){!e.options.EnableShortcut||e.options.IsDisabled||!e.host.getClientRects().length||n.repeat||(n.ctrlKey||n.metaKey)&&n.key.toLowerCase()==="k"&&(n.preventDefault(),n.stopImmediatePropagation(),s(e,!e.open))},!0),e.dispose=function(){e.open&&(e.dialog.close(),e.returnFocus&&e.returnFocus.isConnected&&e.returnFocus.focus())},e.ready=!0}e.trigger.textContent=t.TriggerLabel||"Open command palette",e.trigger.hidden=t.ShowTrigger===!1,e.trigger.disabled=!!t.IsDisabled,c(e.dialog,"aria-label",t.AccessibleLabel||"Command palette"),y(e),t.IsDisabled?s(e,!1):t.IsOpen!==e.lastOpen&&s(e,!!t.IsOpen),S(e,"")}function R(){return O("CommandPalette",()=>N("CommandPalette",j))}function q(){if(typeof window>"u")throw new Error("Mount BluKavantUI in a browser, after the host is connected.");return window.BluUICommunityRuntime}function B(e,t,o,r,n,i){let d=k(e),a=d.id,l={...o},g=!1,b=q()[t],A=n(m=>{l={...l,...m}}),w=m=>{if(g)throw new Error("Component is destroyed.");l={...l,...m},i?.(d,l);let E=b.sync(d.id,r(l),A,a);if(E)throw new Error(E)};try{w({})}catch(m){throw b.destroy(a),d.remove(),m}return{element:d,update:w,destroy(){g||(g=!0,b.destroy(a),d.remove())}}}function Q(e,t,o={}){return R(),B(e,"CommandPalette",t,r=>{let{Commands:n,...i}=r;return{...i,CommandsJson:JSON.stringify(n)}},r=>({OpenChanged:n=>(r({IsOpen:n}),o.OpenChanged?.(n)),Command:n=>o.Command?.(n),Error:n=>o.Error?.(n)}))}export{Q as a};
1
+ import{c as L,d as O}from"./chunk-5TEIXA4R.js";import{c as k}from"./chunk-SDMH2EVD.js";var p=L("interactive",()=>({instances:new Map,nextId:0}));function u(e,t,o){var r=document.createElement(e);return t&&(r.className=t),o!==void 0&&(r.textContent=o),r}function c(e,t,o){return e.setAttribute(t,String(o)),e}function C(e){for(;e.firstChild;)e.removeChild(e.firstChild)}function P(e,t,o,r){var n=u("button","blu-control "+(o||""),e);return n.type="button",n.disabled=!!r,n.addEventListener("click",t),n}function T(e,t,o,r){var n=u("input","blu-input");return n.type=e,n.value=t===void 0?"":String(t),c(n,"aria-label",o),r&&n.addEventListener("change",function(){r(n.value)}),n}function F(e,t){var o=typeof e=="string"?JSON.parse(e||"[]"):e;if(!Array.isArray(o))throw new Error(t+" must be a JSON array.");return o}function M(e,t){var o=new Map;if(e.length>2e3)throw new Error(t+" supports up to 2,000 local items.");return e.forEach(function(r){if(!r||typeof r.Key!="string"||!r.Key.trim()||typeof r.Label!="string"||!r.Label.trim())throw new Error(t+": every item needs a Key and Label.");if(o.has(r.Key))throw new Error("Duplicate key: "+r.Key);o.set(r.Key,r)}),o}function h(e,t){if(!(e.disposed||!e.events[t])){var o=Array.prototype.slice.call(arguments,2);try{Promise.resolve(e.events[t].apply(null,o)).catch(function(r){t!=="Error"&&h(e,"Error",r.message||String(r))})}catch(r){t!=="Error"&&h(e,"Error",r.message||String(r))}}}function S(e,t){e.error.textContent=t,e.error.hidden=!t,t&&h(e,"Error",t)}function _(e,t){e.root=u("div",t),e.error=c(u("div","blu-component-error"),"role","alert"),e.error.hidden=!0,C(e.host),e.host.appendChild(e.root),e.host.appendChild(e.error)}function f(e,t,o,r,n){t.addEventListener(o,r,n),e.cleanup.push(function(){t.removeEventListener(o,r,n)})}function D(e,t,o,r,n){var i=n||e,d=document.getElementById(e);if(!d)throw new Error(t+" host was not found.");var a=p.instances.get(i);a&&(a.kind!==t||a.host!==d)&&v(i);var l=p.instances.get(i);return l||(l={host:d,id:e,key:i,uid:"blu-interactive-"+ ++p.nextId,kind:t,cleanup:[],options:{},events:r||{},disposed:!1},p.instances.set(i,l)),d._bluOwnerKey=i,l.events=r||l.events,l}function v(e){var t=p.instances.get(e);t&&(t.disposed=!0,t.dispose&&t.dispose(),t.cleanup.forEach(function(o){o()}),t.host._bluOwnerKey===t.key&&(C(t.host),delete t.host._bluOwnerKey),p.instances.delete(e))}function N(e,t){return Object.freeze({sync:function(o,r,n,i){var d=i||o,a=D(o,e,r,n,i);try{return t(a,r),""}catch(l){return v(d),a=D(o,e,r,n,i),_(a,"blu-interactive"),S(a,l.message),l.message}},destroy:function(o){var r=p.instances.get(o);r&&r.kind===e&&v(o)}})}function s(e,t){e.options.IsDisabled&&(t=!1),t!==e.open&&(e.open=t,e.lastOpen=t,t?(e.returnFocus=document.activeElement,e.dialog.showModal(),e.search.value="",y(e),e.search.focus()):(e.dialog.close(),e.returnFocus&&e.returnFocus.isConnected&&e.returnFocus.focus()),h(e,"OpenChanged",t))}function I(e,t){!t||t.IsDisabled||e.options.IsDisabled||(s(e,!1),h(e,"Command",t.Key))}function y(e){var t=e.search.value.trim().toLocaleLowerCase();e.results=e.items.filter(function(n){return(n.Label+" "+(n.Description||"")+" "+(n.Keywords||"")+" "+(n.Group||"")).toLocaleLowerCase().indexOf(t)>=0}).slice(0,100),C(e.list);var o="",r=[];e.results.forEach(function(n,i){if(n.Group&&n.Group!==o){o=n.Group;var d=u("li","blu-command__group",o);c(d,"role","presentation"),e.list.appendChild(d)}var a=u("li","blu-command__option");a.id=e.uid+"-command-"+i,c(a,"role","option"),c(a,"aria-disabled",!!n.IsDisabled),a.dataset.index=i;var l=u("span","blu-command__copy");l.appendChild(u("strong","",n.Label)),n.Description&&l.appendChild(u("small","",n.Description)),a.appendChild(l),n.Shortcut&&a.appendChild(u("kbd","",n.Shortcut)),a.addEventListener("click",function(){I(e,n)}),e.list.appendChild(a),n.IsDisabled||r.push(i)}),e.enabled=r,e.active=r.length?r[0]:-1,e.results.length||e.list.appendChild(c(u("li","blu-interactive__empty",e.options.EmptyText||"No commands found."),"role","presentation")),e.count.textContent=e.results.length+" commands",K(e)}function K(e){Array.from(e.list.querySelectorAll('[role="option"]')).forEach(function(o){c(o,"aria-selected",Number(o.dataset.index)===e.active)});var t=e.list.querySelector('[data-index="'+e.active+'"]');t?(c(e.search,"aria-activedescendant",t.id),t.scrollIntoView({block:"nearest"})):e.search.removeAttribute("aria-activedescendant")}function q(e,t){var o=F(t.CommandsJson,"Commands");if(M(o,"Commands"),e.items=o,e.options=t,!e.ready){_(e,"blu-command"),e.open=!1,e.trigger=P(t.TriggerLabel||"Open command palette",function(){s(e,!0)}),e.root.appendChild(e.trigger),e.dialog=u("dialog","blu-command__dialog"),c(e.dialog,"aria-label",t.AccessibleLabel||"Command palette"),e.search=T("search","","Search commands"),e.search.placeholder="Search commands, pages, and actions\u2026",c(e.search,"role","combobox"),c(e.search,"aria-autocomplete","list"),c(e.search,"aria-expanded",!0),c(e.search,"aria-controls",e.uid+"-commands"),e.dialog.appendChild(e.search),e.list=c(u("ul","blu-command__list"),"role","listbox"),e.list.id=e.uid+"-commands",c(e.list,"aria-label","Commands"),e.dialog.appendChild(e.list);var r=u("div","blu-command__footer");e.count=c(u("span"),"aria-live","polite"),r.appendChild(e.count),r.appendChild(u("span","","\u2191 \u2193 Navigate \u21B5 Select Esc Close")),r.appendChild(P("Close",function(){s(e,!1)},"blu-control--quiet")),e.dialog.appendChild(r),e.root.appendChild(e.dialog),f(e,e.search,"input",function(){y(e)}),f(e,e.dialog,"cancel",function(n){n.preventDefault(),s(e,!1)}),f(e,e.dialog,"keydown",function(n){if(n.key==="Tab"){var i=Array.from(e.dialog.querySelectorAll('button:not(:disabled),input:not(:disabled),select:not(:disabled),a[href],[tabindex="0"]')).filter(function(l){return l.getClientRects().length}),d=i[0],a=i[i.length-1];n.shiftKey&&document.activeElement===d?(n.preventDefault(),a.focus()):!n.shiftKey&&document.activeElement===a&&(n.preventDefault(),d.focus())}}),f(e,e.dialog,"click",function(n){if(n.target===e.dialog){var i=e.dialog.getBoundingClientRect();(n.clientX<i.left||n.clientX>i.right||n.clientY<i.top||n.clientY>i.bottom)&&s(e,!1)}}),f(e,e.search,"keydown",function(n){if(n.key==="Enter"){n.preventDefault(),I(e,e.results[e.active]);return}var i=e.enabled.indexOf(e.active);if(n.key==="ArrowDown")i=(i+1)%e.enabled.length;else if(n.key==="ArrowUp")i=(i-1+e.enabled.length)%e.enabled.length;else if(n.key==="Home")i=0;else if(n.key==="End")i=e.enabled.length-1;else return;n.preventDefault(),e.active=e.enabled[i]===void 0?-1:e.enabled[i],K(e)}),f(e,document,"keydown",function(n){!e.options.EnableShortcut||e.options.IsDisabled||!e.host.getClientRects().length||n.repeat||(n.ctrlKey||n.metaKey)&&n.key.toLowerCase()==="k"&&(n.preventDefault(),n.stopImmediatePropagation(),s(e,!e.open))},!0),e.dispose=function(){e.open&&(e.dialog.close(),e.returnFocus&&e.returnFocus.isConnected&&e.returnFocus.focus())},e.ready=!0}e.trigger.textContent=t.TriggerLabel||"Open command palette",e.trigger.hidden=t.ShowTrigger===!1,e.trigger.disabled=!!t.IsDisabled,c(e.dialog,"aria-label",t.AccessibleLabel||"Command palette"),y(e),t.IsDisabled?s(e,!1):t.IsOpen!==e.lastOpen&&s(e,!!t.IsOpen),S(e,"")}function R(){return O("CommandPalette",()=>N("CommandPalette",q))}function B(){if(typeof window>"u")throw new Error("Mount BluKavantUI in a browser, after the host is connected.");return window.BluUICommunityRuntime}function j(e,t,o,r,n,i){let d=k(e),a=d.id,l={...o},g=!1,b=B()[t],A=n(m=>{l={...l,...m}}),w=m=>{if(g)throw new Error("Component is destroyed.");l={...l,...m},i?.(d,l);let E=b.sync(d.id,r(l),A,a);if(E)throw new Error(E)};try{w({})}catch(m){throw b.destroy(a),d.remove(),m}return{element:d,update:w,destroy(){g||(g=!0,b.destroy(a),d.remove())}}}function Q(e,t,o={}){return R(),j(e,"CommandPalette",t,r=>{let{Commands:n,...i}=r;return{...i,CommandsJson:JSON.stringify(n)}},r=>({OpenChanged:n=>(r({IsOpen:n}),o.OpenChanged?.(n)),Command:n=>o.Command?.(n),Error:n=>o.Error?.(n)}))}export{Q as a};
@@ -0,0 +1 @@
1
+ import{a as u,c as v,d as H,e as R,f as T}from"./chunk-EOKNLCNS.js";function $(F,k,A={}){let t={...k},d=!1,b=-1,D="",C=0,r=H(F,t),w=u("div","blu-select"),o=u("select","blu-select__native"),l=u("button","blu-select__trigger"),g=u("button","blu-text__action","\xD7"),p=u("div","blu-select__popup"),s=u("input","blu-select__search"),h=u("div","blu-select__list"),M=u("p","blu-field__help","No matching options");o.tabIndex=-1,o.setAttribute("aria-hidden","true"),o.dataset.enhanced="true",l.type=g.type="button",l.id=r.id,l.setAttribute("role","combobox"),l.setAttribute("aria-haspopup","listbox"),h.id=r.id+"-list",h.setAttribute("role","listbox"),l.setAttribute("aria-controls",h.id),s.type="search",s.placeholder="Search options",s.setAttribute("role","combobox"),s.setAttribute("aria-autocomplete","list"),s.setAttribute("aria-controls",h.id),p.hidden=!0,p.append(s,h,M),w.append(o,l,g,p),r.body.append(w);let x=typeof p.showPopover=="function";x&&p.setAttribute("popover","manual");let c=R(r.root,P),m=[];function L(){if(!d||!x)return;let e=l.getBoundingClientRect(),i=window.innerHeight-e.bottom-12,a=e.top-12,n=i<220&&a>i,y=Math.min(320,Math.max(100,n?a:i));p.style.cssText=`position:fixed;inset:auto;margin:0;left:${Math.max(8,Math.min(e.left,window.innerWidth-e.width-8))}px;width:${Math.min(e.width,window.innerWidth-16)}px;max-height:${y}px;${n?"bottom:"+(window.innerHeight-e.top+6):"top:"+(e.bottom+6)}px;`}function O(e){b=e,h.querySelectorAll("[role=option]").forEach(a=>{let n=Number(a.dataset.index)===b;a.dataset.active=String(n),n&&a.scrollIntoView({block:"nearest"})});let i=b<0?void 0:r.id+"-option-"+b;v(l,"aria-activedescendant",d?i:void 0),v(s,"aria-activedescendant",d?i:void 0)}function E(){m=t.Options.map((i,a)=>a).filter(i=>t.Options[i].Label.toLocaleLowerCase().includes(s.value.toLocaleLowerCase())),h.replaceChildren();for(let i of m){let a=t.Options[i],n=u("div","blu-select__option",a.Label);n.id=r.id+"-option-"+i,n.setAttribute("role","option"),n.dataset.index=String(i),n.setAttribute("aria-selected",String(a.Value===o.value)),n.setAttribute("aria-disabled",String(!!a.Disabled)),a.Description&&n.append(u("small","blu-choice__description",a.Description)),n.onpointerdown=y=>y.preventDefault(),n.onclick=()=>{a.Disabled||S(i)},h.append(n)}M.hidden=!!m.length;let e=m.filter(i=>!t.Options[i].Disabled);O(e.includes(b)?b:e.find(i=>t.Options[i].Value===o.value)??e[0]??-1)}function f(e,i=!0){e&&(t.Disabled||t.ReadOnly)||(d=e,l.setAttribute("aria-expanded",String(d)),s.setAttribute("aria-expanded",String(d)),d?(p.hidden=!1,x&&!p.matches(":popover-open")&&p.showPopover(),s.value="",b=-1,E(),L(),t.Searchable&&s.focus()):(x&&p.matches(":popover-open")&&p.hidePopover(),p.hidden=!0,O(-1),i&&l.focus()))}function S(e){t.Value=e<0?"":t.Options[e].Value,o.value=t.Value,V(),f(!1),A.Change?.(t.Value)}function V(){l.textContent=t.Options.find(e=>e.Value===o.value)?.Label||t.Placeholder||"Choose an option",l.dataset.placeholder=String(!o.value),g.hidden=!t.Clearable||!o.value||!!t.ReadOnly,o.validity.valid&&!t.Error&&(r.error.hidden=!0,r.error.textContent="",r.paint(t,[l]))}function _(e){if(c.check(),t={...t,...e},t.Options.some(a=>!a.Value)||new Set(t.Options.map(a=>a.Value)).size!==t.Options.length)throw Error("Select option values must be non-empty and unique.");T(o,t),r.paint(t,[l]),o.id=r.id+"-native";let i=u("option","",t.Placeholder||"Choose an option");i.value="",o.replaceChildren(i,...t.Options.map(a=>{let n=u("option","",a.Label);return n.value=a.Value,n.disabled=!!a.Disabled,n})),o.value=t.Options.some(a=>a.Value===t.Value)?t.Value:"",t.Value=o.value,l.disabled=g.disabled=!!t.Disabled,v(l,"aria-readonly",t.ReadOnly?"true":void 0),g.setAttribute("aria-label","Clear "+(t.Label||"selection")),s.setAttribute("aria-label","Search "+(t.Label||"options")),h.setAttribute("aria-label",t.Label||"Options"),s.hidden=!t.Searchable,t.Disabled||t.ReadOnly?f(!1,!1):d&&(E(),L()),l.setAttribute("aria-expanded",String(d)),V()}function N(e){if(t.Disabled||t.ReadOnly)return;let i=m.filter(n=>!t.Options[n].Disabled),a=i.indexOf(b);if(e.key==="Escape"&&d)e.preventDefault(),f(!1);else if(e.key==="Tab")f(!1,!1);else if(["ArrowDown","ArrowUp","Home","End"].includes(e.key)){if(!d){e.preventDefault(),f(!0);return}e.preventDefault();let n=e.key==="Home"?0:e.key==="End"?i.length-1:Math.max(0,Math.min(i.length-1,a+(e.key==="ArrowDown"?1:-1)));O(i[n]??-1)}else if(e.key==="Enter"||e.key===" "&&e.target!==s)e.preventDefault(),d?b>=0&&S(b):f(!0);else if(e.key.length===1&&!e.ctrlKey&&!e.metaKey&&e.target!==s){e.preventDefault(),d||f(!0),D=Date.now()-C>650?e.key:D+e.key,C=Date.now();let n=m.find(y=>!t.Options[y].Disabled&&t.Options[y].Label.toLocaleLowerCase().startsWith(D.toLocaleLowerCase()));n!==void 0&&O(n)}}function P(){_({Value:k.Value||""}),f(!1,!1)}return l.addEventListener("click",()=>f(!d),{signal:c.signal}),g.addEventListener("click",()=>S(-1),{signal:c.signal}),w.addEventListener("keydown",N,{signal:c.signal}),s.addEventListener("input",E,{signal:c.signal}),document.addEventListener("pointerdown",e=>{d&&!r.root.contains(e.target)&&f(!1,!1)},{signal:c.signal}),w.addEventListener("focusout",e=>{w.contains(e.relatedTarget)||(f(!1,!1),A.Blur?.())},{signal:c.signal}),window.addEventListener("resize",L,{signal:c.signal}),window.addEventListener("scroll",L,{signal:c.signal,capture:!0}),o.addEventListener("invalid",e=>{e.preventDefault(),v(l,"aria-invalid","true"),r.error.textContent=o.validationMessage,r.error.hidden=!1,v(l,"aria-describedby",r.error.id),l.focus()},{signal:c.signal}),o.addEventListener("change",()=>{t.Value=o.value,V(),A.Change?.(o.value)},{signal:c.signal}),_({}),{element:r.root,control:o,update:_,reset:P,getValue:()=>o.value,focus:()=>l.focus(),validate:()=>o.reportValidity(),destroy(){f(!1,!1),c.destroy()}}}export{$ as a};
@@ -1,2 +1,2 @@
1
- import{a as K}from"./chunk-MEEQNPGM.js";import{c as T,d as x}from"./chunk-5TEIXA4R.js";var a=T("common",()=>({instances:new Map,hosts:new Map,serial:0,overlays:[],inertState:new Map,oldOverflow:void 0})),A="default primary secondary success processing warning error danger magenta red volcano orange gold lime green cyan blue geekblue purple".split(" ");function f(e,t,n){var o=document.createElement(e);return t&&(o.className=t),n!==void 0&&(o.textContent=n),o}function d(e,t,n){return e.setAttribute(t,String(n)),e}function D(e){for(;e.firstChild;)e.removeChild(e.firstChild)}function B(e,t,n,o,r){t.addEventListener(n,o,r),e.cleanup.push(function(){t.removeEventListener(n,o,r)})}function C(e,t,n){var o=f("button","blu-common-button"+(n?" blu-common-button--primary":""),e);return o.type="button",o.addEventListener("click",t),o}function S(e,t,n,o){if(e=e===void 0?t:Number(e),!Number.isInteger(e)||e<n||e>o)throw Error("Expected an integer between "+n+" and "+o+".");return e}function F(e,t,n){if(e=e||n,t.indexOf(e)<0)throw Error("Expected one of: "+t.join(", ")+".");return e}function L(e){if(e=String(e||"Default").toLowerCase(),A.indexOf(e)<0)throw Error("Unknown ComponentColor: "+e);return e}function P(e,t){t=L(t),e.style.setProperty("--blu-common-color","var(--bluui-color-"+t+"-text)"),e.style.setProperty("--blu-common-soft","var(--bluui-color-"+t+"-soft)"),e.style.setProperty("--blu-common-solid","var(--bluui-color-"+t+"-solid)")}function b(e,t){if(!(e.dead||e.host._bluCommonOwner!==e.key||!e.events[t])){var n=Array.prototype.slice.call(arguments,2);try{Promise.resolve(e.events[t].apply(null,n)).catch(function(o){t!=="Error"&&h(e,o.message||String(o))})}catch(o){t!=="Error"&&h(e,o.message||String(o))}}}function h(e,t){e.error||(e.error=d(f("p","blu-common-error"),"role","alert"),e.host.append(e.error)),e.error.textContent=t,e.error.hidden=!t,t&&t!==e.lastError&&b(e,"Error",t),e.lastError=t}function R(e,t,n,o,r){var i=document.getElementById(e);if(!i)return null;o=o||e;var u=a.instances.get(o);return u&&u.host!==i&&(v(o),u=null),i._bluCommonOwner&&i._bluCommonOwner!==o&&v(i._bluCommonOwner),u||(u={host:i,key:o,kind:r,uid:"blu-common-"+ ++a.serial,cleanup:[],events:{},options:{}},a.instances.set(o,u)),i._bluCommonOwner=o,u.options=t||{},u.events=n||{},d(i,"data-blu-ready","true"),u}function v(e){var t=a.instances.get(e);t&&(t.dead=!0,M(t),t.dispose&&t.dispose(),t.cleanup.forEach(function(n){n()}),t.host._bluCommonOwner===e&&(delete t.host._bluCommonOwner,t.host.removeAttribute("data-blu-ready"),t.preserve||D(t.host)),a.instances.delete(e))}function j(e,t){return e.body||(e.body=f("div",t),e.host.append(e.body)),e.body}function I(){a.inertState.forEach(function(n,o){o.inert=n}),a.inertState.clear();var e=a.overlays[a.overlays.length-1];if(!e){a.oldOverflow!==void 0&&(document.body.style.overflow=a.oldOverflow),a.oldOverflow=void 0;return}a.oldOverflow===void 0&&(a.oldOverflow=document.body.style.overflow),document.body.style.overflow="hidden";for(var t=e.layer;t&&t.parentElement&&(Array.from(t.parentElement.children).forEach(function(n){n!==t&&n instanceof HTMLElement&&(a.inertState.set(n,n.inert),n.inert=!0)}),t=t.parentElement,t!==document.body););}function M(e){if(e.stopTracking&&e.stopTracking(),!!e.overlayOpen){e.overlayOpen=!1;var t=a.overlays[a.overlays.length-1]===e;if(a.overlays=a.overlays.filter(function(n){return n!==e}),document.removeEventListener("keydown",e.overlayKey,!0),document.removeEventListener("focusin",e.overlayFocus,!0),e.layer.hidePopover)try{e.layer.hidePopover()}catch{}e.layer.hidden=!0,I(),t&&e.returnFocus&&e.returnFocus.isConnected&&!e.returnFocus.closest("[inert],[hidden]")&&e.returnFocus.focus()}}function H(e){var t=e.options,n=t.HostKey||"global",o=a.hosts.get(n);if(o&&o!==e)throw Error("Notification HostKey is already in use: "+n);var r=F(t.Placement,["TopRight","TopLeft","BottomRight","BottomLeft"],"TopRight");S(t.MaxVisible,4,1,10),e.notificationKey&&e.notificationKey!==n&&a.hosts.delete(e.notificationKey),a.hosts.set(n,e),e.notificationKey=n;var i=j(e,"blu-notifications");for(d(i,"data-placement",r),d(i,"aria-label",t.AccessibleLabel||"Notifications"),d(i,"role","region"),e.messages||(e.messages=new Map,e.announcers=["status","alert"].map(function(u){var c=[0,1].map(function(){var s=d(f("div","blu-notification__announcer"),"role",u);return d(s,"aria-atomic","true"),e.host.append(s),s});return{nodes:c,next:0,pending:new Map,timer:0}}),B(e,document,"visibilitychange",function(){e.messages.forEach(function(u){g(e,u)})}),e.dispose=function(){e.messages.forEach(function(u){clearTimeout(u.timer)}),e.announcers.forEach(function(u){clearTimeout(u.timer),u.pending.clear()}),a.hosts.get(e.notificationKey)===e&&a.hosts.delete(e.notificationKey)});e.messages.size>(t.MaxVisible||4);)m(e,e.messages.keys().next().value,"Limit")}function k(e,t,n,o){e.announcers.forEach(function(i){i.pending.delete(t)});var r=e.announcers[o?1:0];r.pending.set(t,n),r.nodes.forEach(function(i){i.textContent=""}),r.timer||(r.timer=setTimeout(function(){r.timer=0,e.dead||(r.nodes[r.next].textContent=Array.from(r.pending.values()).join(`
2
- `),r.next=1-r.next),r.pending.clear()},100))}function g(e,t){clearTimeout(t.timer),t.started&&(t.remaining-=Date.now()-t.started,t.started=0),t.duration&&!t.hover&&!t.focus&&!document.hidden&&(t.started=Date.now(),t.timer=setTimeout(function(){m(e,t.key,"Timeout")},Math.max(0,t.remaining)))}function m(e,t,n){var o=e.messages.get(t);if(o){clearTimeout(o.timer),e.announcers.forEach(function(u){u.pending.delete(t)});var r=o.element.contains(document.activeElement);if(e.messages.delete(t),o.element.remove(),r){var i=e.body.querySelector("button");i?i.focus():o.returnFocus&&o.returnFocus.isConnected&&o.returnFocus.focus()}b(e,"Dismissed",t,n)}}function O(e,t,n){var o=a.hosts.get(e||"global");if(!o)throw Error("Notification host is not mounted: "+(e||"global"));var r=typeof t=="string"?JSON.parse(t):t;if(!r||typeof r.Key!="string"||!r.Key.trim())throw Error("Notification requires a nonempty Key.");var i=L(r.Color),u=S(r.Duration,0,0,86400),c=o.messages.get(r.Key);if(n&&!c)throw Error("Notification key was not found: "+r.Key);c&&(clearTimeout(c.timer),c.element.remove(),o.messages.delete(r.Key));var s=f("article","blu-notification");P(s,i);var p=d(f("span","blu-notification__icon",i==="success"?"\u2713":i==="error"||i==="danger"||i==="warning"?"!":"i"),"aria-hidden","true"),y=f("div","blu-notification__copy");y.append(f("strong","",r.Title||"")),r.Description&&y.append(f("p","",r.Description));var l={key:r.Key,element:s,duration:u,remaining:u*1e3,returnFocus:c?c.returnFocus:document.activeElement},N=C("\xD7",function(){m(o,r.Key,"Close")});for(d(N,"aria-label","Dismiss "+(r.Title||"notification")),s.append(p,y,N),r.ActionLabel&&y.append(C(r.ActionLabel,function(){b(o,"Action",r.Key),m(o,r.Key,"Action")})),s.onmouseenter=function(){l.hover=!0,g(o,l)},s.onmouseleave=function(){l.hover=!1,g(o,l)},s.onfocusin=function(){l.focus=!0,g(o,l)},s.onfocusout=function(_){s.contains(_.relatedTarget)||(l.focus=!1,g(o,l))},o.messages.set(r.Key,l),o.body.append(s),k(o,r.Key,[r.Title,r.Description].filter(Boolean).join(". "),i==="error"||i==="danger"),g(o,l);o.messages.size>(o.options.MaxVisible||4);)m(o,o.messages.keys().next().value,"Limit");return r.Key}function U(e,t,n){return{sync:function(o,r,i,u){var c=R(o,r,i,u,e);if(c)try{var s=n?JSON.stringify(c.options):null;return(!n||c.renderSignature!==s)&&(t(c),c.renderSignature=s),h(c,""),""}catch(p){return c.renderSignature=void 0,c.cascaderSignature=null,M(c),h(c,p.message||String(p)),p.message||String(p)}},destroy:v}}function w(){return x("Notification",()=>{var e=U("Notification",H,!1);return e.show=function(t,n){return O(t,n,!1)},e.update=function(t,n){return O(t,n,!0)},e.dismiss=function(t,n){var o=a.hosts.get(t||"global");if(!o)throw Error("Notification host is not mounted.");n?m(o,n,"Programmatic"):Array.from(o.messages.keys()).forEach(function(r){m(o,r,"Programmatic")})},e})}function E(){return w(),window.BluUICommunityRuntime.Notification}function W(e,t,n={}){return w(),K(e,"Notification",t,o=>({Action:r=>n.Action?.(r),Dismissed:(r,i)=>n.Dismissed?.(r,i),Error:r=>n.Error?.(r)}),[],[])}function X(e,t="global"){return E().show(t,e)}function Y(e,t="global"){return E().update(t,e)}function Z(e="",t="global"){E().dismiss(t,e)}export{W as a,X as b,Y as c,Z as d};
1
+ import{a as K}from"./chunk-MEEQNPGM.js";import{c as T,d as x}from"./chunk-5TEIXA4R.js";var a=T("common",()=>({instances:new Map,hosts:new Map,serial:0,overlays:[],inertState:new Map,oldOverflow:void 0})),A="default primary secondary success processing warning error danger magenta red volcano orange gold lime green cyan blue geekblue purple".split(" ");function f(e,t,n){var o=document.createElement(e);return t&&(o.className=t),n!==void 0&&(o.textContent=n),o}function d(e,t,n){return e.setAttribute(t,String(n)),e}function D(e){for(;e.firstChild;)e.removeChild(e.firstChild)}function B(e,t,n,o,i){t.addEventListener(n,o,i),e.cleanup.push(function(){t.removeEventListener(n,o,i)})}function C(e,t,n){var o=f("button","blu-common-button"+(n?" blu-common-button--primary":""),e);return o.type="button",o.addEventListener("click",t),o}function S(e,t,n,o){if(e=e===void 0?t:Number(e),!Number.isInteger(e)||e<n||e>o)throw Error("Expected an integer between "+n+" and "+o+".");return e}function F(e,t,n){if(e=e||n,t.indexOf(e)<0)throw Error("Expected one of: "+t.join(", ")+".");return e}function L(e){if(e=String(e||"Default").toLowerCase(),A.indexOf(e)<0)throw Error("Unknown ComponentColor: "+e);return e}function P(e,t){t=L(t),e.style.setProperty("--blu-common-color","var(--bluui-color-"+t+"-text)"),e.style.setProperty("--blu-common-soft","var(--bluui-color-"+t+"-soft)"),e.style.setProperty("--blu-common-solid","var(--bluui-color-"+t+"-solid)")}function b(e,t){if(!(e.dead||e.host._bluCommonOwner!==e.key||!e.events[t])){var n=Array.prototype.slice.call(arguments,2);try{Promise.resolve(e.events[t].apply(null,n)).catch(function(o){t!=="Error"&&h(e,o.message||String(o))})}catch(o){t!=="Error"&&h(e,o.message||String(o))}}}function h(e,t){e.error||(e.error=d(f("p","blu-common-error"),"role","alert"),e.host.append(e.error)),e.error.textContent=t,e.error.hidden=!t,t&&t!==e.lastError&&b(e,"Error",t),e.lastError=t}function R(e,t,n,o,i){var r=document.getElementById(e);if(!r)return null;o=o||e;var u=a.instances.get(o);return u&&u.host!==r&&(v(o),u=null),r._bluCommonOwner&&r._bluCommonOwner!==o&&v(r._bluCommonOwner),u||(u={host:r,key:o,kind:i,uid:"blu-common-"+ ++a.serial,cleanup:[],events:{},options:{}},a.instances.set(o,u)),r._bluCommonOwner=o,u.options=t||{},u.events=n||{},d(r,"data-blu-ready","true"),u}function v(e){var t=a.instances.get(e);t&&(t.dead=!0,M(t),t.dispose&&t.dispose(),t.cleanup.forEach(function(n){n()}),t.host._bluCommonOwner===e&&(delete t.host._bluCommonOwner,t.host.removeAttribute("data-blu-ready"),t.preserve||D(t.host)),a.instances.delete(e))}function I(e,t){return e.body||(e.body=f("div",t),e.host.append(e.body)),e.body}function j(){a.inertState.forEach(function(n,o){o.inert=n}),a.inertState.clear();var e=a.overlays[a.overlays.length-1];if(!e){a.oldOverflow!==void 0&&(document.body.style.overflow=a.oldOverflow),a.oldOverflow=void 0;return}a.oldOverflow===void 0&&(a.oldOverflow=document.body.style.overflow),document.body.style.overflow="hidden";for(var t=e.layer;t&&t.parentElement&&(Array.from(t.parentElement.children).forEach(function(n){n!==t&&n instanceof HTMLElement&&(a.inertState.set(n,n.inert),n.inert=!0)}),t=t.parentElement,t!==document.body););}function M(e){if(e.stopTracking&&e.stopTracking(),!!e.overlayOpen){e.overlayOpen=!1;var t=a.overlays[a.overlays.length-1]===e;if(a.overlays=a.overlays.filter(function(n){return n!==e}),document.removeEventListener("keydown",e.overlayKey,!0),document.removeEventListener("focusin",e.overlayFocus,!0),e.layer.hidePopover)try{e.layer.hidePopover()}catch{}e.layer.hidden=!0,j(),t&&e.returnFocus&&e.returnFocus.isConnected&&!e.returnFocus.closest("[inert],[hidden]")&&e.returnFocus.focus()}}function H(e){var t=e.options,n=t.HostKey||"global",o=a.hosts.get(n);if(o&&o!==e)throw Error("Notification HostKey is already in use: "+n);var i=F(t.Placement,["TopRight","TopLeft","BottomRight","BottomLeft"],"TopRight");S(t.MaxVisible,4,1,10),e.notificationKey&&e.notificationKey!==n&&a.hosts.delete(e.notificationKey),a.hosts.set(n,e),e.notificationKey=n;var r=I(e,"blu-notifications");for(d(r,"data-placement",i),d(r,"aria-label",t.AccessibleLabel||"Notifications"),d(r,"role","region"),e.messages||(e.messages=new Map,e.announcers=["status","alert"].map(function(u){var c=[0,1].map(function(){var s=d(f("div","blu-notification__announcer"),"role",u);return d(s,"aria-atomic","true"),e.host.append(s),s});return{nodes:c,next:0,pending:new Map,timer:0}}),B(e,document,"visibilitychange",function(){e.messages.forEach(function(u){g(e,u)})}),e.dispose=function(){e.messages.forEach(function(u){clearTimeout(u.timer)}),e.announcers.forEach(function(u){clearTimeout(u.timer),u.pending.clear()}),a.hosts.get(e.notificationKey)===e&&a.hosts.delete(e.notificationKey)});e.messages.size>(t.MaxVisible||4);)m(e,e.messages.keys().next().value,"Limit")}function k(e,t,n,o){e.announcers.forEach(function(r){r.pending.delete(t)});var i=e.announcers[o?1:0];i.pending.set(t,n),i.nodes.forEach(function(r){r.textContent=""}),i.timer||(i.timer=setTimeout(function(){i.timer=0,e.dead||(i.nodes[i.next].textContent=Array.from(i.pending.values()).join(`
2
+ `),i.next=1-i.next),i.pending.clear()},100))}function g(e,t){clearTimeout(t.timer),t.started&&(t.remaining-=Date.now()-t.started,t.started=0),t.duration&&!t.hover&&!t.focus&&!document.hidden&&(t.started=Date.now(),t.timer=setTimeout(function(){m(e,t.key,"Timeout")},Math.max(0,t.remaining)))}function m(e,t,n){var o=e.messages.get(t);if(o){clearTimeout(o.timer),e.announcers.forEach(function(u){u.pending.delete(t)});var i=o.element.contains(document.activeElement);if(e.messages.delete(t),o.element.remove(),i){var r=e.body.querySelector("button");r?r.focus():o.returnFocus&&o.returnFocus.isConnected&&o.returnFocus.focus()}b(e,"Dismissed",t,n)}}function O(e,t,n){var o=a.hosts.get(e||"global");if(!o)throw Error("Notification host is not mounted: "+(e||"global"));var i=typeof t=="string"?JSON.parse(t):t;if(!i||typeof i.Key!="string"||!i.Key.trim())throw Error("Notification requires a nonempty Key.");var r=L(i.Color),u=S(i.Duration,0,0,86400),c=o.messages.get(i.Key);if(n&&!c)throw Error("Notification key was not found: "+i.Key);c&&(clearTimeout(c.timer),c.element.remove(),o.messages.delete(i.Key));var s=f("article","blu-notification");P(s,r);var p=d(f("span","blu-notification__icon",r==="success"?"\u2713":r==="error"||r==="danger"||r==="warning"?"!":"i"),"aria-hidden","true"),y=f("div","blu-notification__copy");y.append(f("strong","",i.Title||"")),i.Description&&y.append(f("p","",i.Description));var l={key:i.Key,element:s,duration:u,remaining:u*1e3,returnFocus:c?c.returnFocus:document.activeElement},N=C("\xD7",function(){m(o,i.Key,"Close")});for(d(N,"aria-label","Dismiss "+(i.Title||"notification")),s.append(p,y,N),i.ActionLabel&&y.append(C(i.ActionLabel,function(){b(o,"Action",i.Key),m(o,i.Key,"Action")})),s.onmouseenter=function(){l.hover=!0,g(o,l)},s.onmouseleave=function(){l.hover=!1,g(o,l)},s.onfocusin=function(){l.focus=!0,g(o,l)},s.onfocusout=function(_){s.contains(_.relatedTarget)||(l.focus=!1,g(o,l))},o.messages.set(i.Key,l),o.body.append(s),k(o,i.Key,[i.Title,i.Description].filter(Boolean).join(". "),r==="error"||r==="danger"),g(o,l);o.messages.size>(o.options.MaxVisible||4);)m(o,o.messages.keys().next().value,"Limit");return i.Key}function U(e,t,n){return{sync:function(o,i,r,u){var c=R(o,i,r,u,e);if(c)try{var s=n?JSON.stringify(c.options):null;return(!n||c.renderSignature!==s)&&(t(c),c.renderSignature=s),h(c,""),""}catch(p){return c.renderSignature=void 0,c.cascaderSignature=null,M(c),h(c,p.message||String(p)),p.message||String(p)}},destroy:v}}function w(){return x("Notification",()=>{var e=U("Notification",H,!1);return e.show=function(t,n){return O(t,n,!1)},e.update=function(t,n){return O(t,n,!0)},e.dismiss=function(t,n){var o=a.hosts.get(t||"global");if(!o)throw Error("Notification host is not mounted.");n?m(o,n,"Programmatic"):Array.from(o.messages.keys()).forEach(function(i){m(o,i,"Programmatic")})},e})}function E(){return w(),window.BluUICommunityRuntime.Notification}function W(e,t,n={}){return w(),K(e,"Notification",t,o=>({Action:i=>n.Action?.(i),Dismissed:(i,r)=>n.Dismissed?.(i,r),Error:i=>n.Error?.(i)}),[],[])}function X(e,t="global"){return E().show(t,e)}function Y(e,t="global"){return E().update(t,e)}function Z(e="",t="global"){E().dismiss(t,e)}export{W as a,X as b,Y as c,Z as d};
File without changes
File without changes
@@ -0,0 +1 @@
1
+ import{a as o,b as v,g as P}from"./chunk-EOKNLCNS.js";function M(g){let f=[...g.Rows],y=g.SortKey;y&&g.Columns.some(s=>s.Key===y&&s.Sortable)&&f.sort((s,C)=>{let u=s[y],b=C[y];if(u==null||b==null)return u==null?b==null?0:1:-1;let h=typeof u=="number"&&typeof b=="number"?u-b:String(u).localeCompare(String(b),void 0,{numeric:!0,sensitivity:"base"});return g.SortDirection==="Descending"?-h:h});let e=g.PageSize?Math.floor(P(g.PageSize,10,1,1e4)):Math.max(1,f.length),S=Math.max(1,Math.ceil(f.length/e)),a=Math.floor(P(g.Page,1,1,S));return{rows:f.slice((a-1)*e,a*e),page:a,pages:S,total:f.length,start:f.length?(a-1)*e+1:0,end:Math.min(a*e,f.length)}}function O(g,f,y={}){let e={...f},S=!1,a=o("div","blu-table"),s=o("div","blu-table__scroll"),C=o("table"),u=o("caption"),b=o("thead"),h=o("tbody"),L=o("div","blu-table__footer"),A=o("span"),l=o("button","blu-table-button","Previous"),d=o("button","blu-table-button","Next"),E="";u.id=v(),s.tabIndex=0,s.setAttribute("role","region"),s.setAttribute("aria-labelledby",u.id),l.type=d.type="button",A.setAttribute("role","status"),L.append(A,l,d),C.append(u,b,h),s.append(C),a.append(s,L),g.append(a);function K(x){if(S)throw Error("Component is destroyed.");if(e={...e,...x},!e.Columns.length)throw Error("Table needs at least one column.");if(new Set(e.Columns.map(n=>n.Key)).size!==e.Columns.length)throw Error("Table column keys must be unique.");a.className="blu-table"+(e.ExtendedClass?" "+e.ExtendedClass:""),a.dataset.density=e.Density||"Comfortable",a.dataset.striped=String(!!e.Striped),C.setAttribute("aria-busy",String(!!e.Loading)),u.textContent=e.Caption;let R=document.activeElement instanceof HTMLElement&&a.contains(document.activeElement)?document.activeElement.dataset.focusKey:void 0,D=document.activeElement===d?d:document.activeElement===l?l:void 0,T=JSON.stringify([e.Columns.map(n=>[n.Key,n.Header,!!n.Sortable,n.Align||"Left"]),!!e.Actions?.length]);if(T!==E){E=T,b.replaceChildren();let n=o("tr");b.append(n);for(let t of e.Columns){let i=o("th");if(i.scope="col",i.style.textAlign=(t.Align||"Left").toLowerCase(),t.Sortable){let r=o("button","blu-table__sort",t.Header);r.type="button",r.dataset.focusKey="sort-"+t.Key;let m=o("span");m.setAttribute("aria-hidden","true"),r.append(m),r.onclick=()=>{let p=e.SortKey===t.Key&&e.SortDirection!=="Descending"?"Descending":"Ascending";K({SortKey:t.Key,SortDirection:p,Page:1}),y.SortChanged?.(t.Key,p)},i.append(r)}else i.textContent=t.Header;n.append(i)}if(e.Actions?.length){let t=o("th","","Actions");t.scope="col",n.append(t)}}e.Columns.forEach((n,t)=>{if(!n.Sortable)return;let i=b.rows[0].cells[t];i.setAttribute("aria-sort",e.SortKey===n.Key?(e.SortDirection||"Ascending").toLowerCase():"none"),i.querySelector("span").textContent=e.SortKey===n.Key?e.SortDirection==="Descending"?"\u2193":"\u2191":"\u2195"});let c=M(e);if(e.Page=c.page,h.replaceChildren(),e.Loading||!c.rows.length){let n=o("tr"),t=o("td","blu-table__empty",e.Loading?"Loading records\u2026":e.EmptyMessage||"No records yet.");t.colSpan=e.Columns.length+(e.Actions?.length?1:0),n.append(t),h.append(n)}else for(let[n,t]of c.rows.entries()){let i=o("tr");for(let r of e.Columns){let m=o("td");m.style.textAlign=(r.Align||"Left").toLowerCase(),m.textContent=r.Format?r.Format(t[r.Key],t):String(t[r.Key]??"\u2014"),i.append(m)}if(e.Actions?.length){let r=o("td"),m=o("div","blu-table__actions");for(let p of e.Actions){let w=o("button","blu-table-button",p.Label);w.type="button",w.disabled=typeof p.Disabled=="function"?p.Disabled(t):!!p.Disabled,w.dataset.focusKey="row-"+String(e.RowKey?t[e.RowKey]:n)+"-"+p.Key,e.RowKey&&w.setAttribute("aria-label",p.Label+" "+String(t[e.RowKey])),w.onclick=()=>y.RowAction?.(p.Key,t),m.append(w)}r.append(m),i.append(r)}h.append(i)}A.textContent=e.Loading?"Loading records\u2026":`${c.start}\u2013${c.end} of ${c.total} records`,l.hidden=d.hidden=!e.PageSize,l.disabled=!!e.Loading||c.page<=1,d.disabled=!!e.Loading||c.page>=c.pages,l.onclick=()=>{K({Page:c.page-1}),y.PageChanged?.(e.Page)},d.onclick=()=>{K({Page:c.page+1}),y.PageChanged?.(e.Page)},R&&Array.from(a.querySelectorAll("[data-focus-key]")).find(n=>n.dataset.focusKey===R)?.focus(),!e.Loading&&e.PageSize&&(D===d&&d.disabled?(l.disabled?s:l).focus():D===l&&l.disabled&&(d.disabled?s:d).focus())}try{K({})}catch(x){throw a.remove(),x}return{element:a,update:K,getState:()=>({Page:e.Page||1,SortKey:e.SortKey,SortDirection:e.SortDirection||"Ascending"}),destroy(){S||(S=!0,a.remove())}}}export{M as a,O as b};
@@ -0,0 +1 @@
1
+ import{a as d,b as R,c as k,d as w,e as x,f as C}from"./chunk-EOKNLCNS.js";function E(u,l,c,i){let t={...l},s=!1,f=w(u,t),O=d("label","blu-choice"),n=d("input","blu-choice__input"),g=d("span","blu-choice__mark"),o=d("span"),h=d("span","blu-choice__state");n.type=i==="radio"?"radio":"checkbox",i==="switch"&&n.setAttribute("role","switch"),O.classList.add("blu-choice--"+i),g.setAttribute("aria-hidden","true"),h.setAttribute("aria-hidden","true"),O.append(n,g,o,h),f.body.append(O);let p=x(f.root,b);function e(a){p.check(),s&&i==="radio"&&!("Checked"in a)&&(t.Checked=n.checked),t={...t,...a},f.paint(t,[n]),f.label.hidden=!0,f.label.removeAttribute("for"),C(n,t),n.checked=!!t.Checked,n.indeterminate=i==="checkbox"&&!!t.Indeterminate,n.value=t.Value||"on",k(n,"aria-readonly",t.ReadOnly?"true":void 0),o.textContent=(t.Label||"")+(t.Required?" *":""),h.textContent=n.checked?t.OnText||"":t.OffText||"",s=!0}function b(){e({Checked:!!l.Checked,Indeterminate:!!l.Indeterminate})}return n.addEventListener("click",a=>{t.ReadOnly&&a.preventDefault()},{signal:p.signal}),n.addEventListener("keydown",a=>{t.ReadOnly&&["ArrowLeft","ArrowRight","ArrowUp","ArrowDown"," "].includes(a.key)&&a.preventDefault()},{signal:p.signal}),n.addEventListener("change",()=>{t.Checked=n.checked,t.Indeterminate=!1,h.textContent=n.checked?t.OnText||"":t.OffText||"",c.Change?.(n.checked)},{signal:p.signal}),n.addEventListener("blur",()=>c.Blur?.(),{signal:p.signal}),e({}),{element:f.root,control:n,update:e,reset:b,getValue:()=>n.checked,focus:()=>n.focus(),validate:()=>n.reportValidity(),destroy:p.destroy}}function A(u,l={},c={}){return E(u,l,c,"checkbox")}function V(u,l={},c={}){return E(u,l,c,"switch")}function T(u,l,c={}){return E(u,l,c,"radio")}function _(u,l,c={}){let i={...l},t=[],s=w(u,i,!0),f=i.Name||R(),O=x(s.root,g);function n(o){O.check();let h=!t.length||!!o.Options&&(o.Options.length!==i.Options.length||o.Options.some((e,b)=>{let a=i.Options[b];return e.Value!==a.Value||e.Label!==a.Label||e.Description!==a.Description||e.Disabled!==a.Disabled})),p=t.find(e=>e===document.activeElement)?.value;if(i={...i,...o},new Set(i.Options.map(e=>e.Value)).size!==i.Options.length)throw Error("Radio option values must be unique.");s.body.className="blu-radio-group blu-radio-group--"+(i.Direction||"Vertical").toLowerCase(),h&&(s.body.replaceChildren(),t=i.Options.map((e,b)=>{let a=d("label","blu-choice blu-choice--radio"),r=d("input","blu-choice__input"),L=d("span","blu-choice__mark"),y=d("span");r.type="radio",r.id=s.id+"-"+b,r.value=e.Value,L.setAttribute("aria-hidden","true");let v=d("span","",e.Label);if(v.id=r.id+"-label",y.append(v),r.setAttribute("aria-labelledby",v.id),e.Description){let m=d("small","blu-choice__description",e.Description);m.id=r.id+"-description",y.append(m)}return a.append(r,L,y),s.body.append(a),r.onchange=()=>{r.checked&&(i.Value=r.value,c.Change?.(r.value))},r.onclick=m=>{i.ReadOnly&&m.preventDefault()},r.onkeydown=m=>{i.ReadOnly&&["ArrowLeft","ArrowRight","ArrowUp","ArrowDown"," "].includes(m.key)&&m.preventDefault()},r.onblur=()=>c.Blur?.(),r})),s.paint(i,t),t.forEach((e,b)=>{C(e,i),e.name=i.Name||f,e.disabled=!!i.Disabled||!!i.Options[b].Disabled,e.checked=e.value===i.Value,k(e,"aria-readonly",i.ReadOnly?"true":void 0),i.Options[b].Description&&k(e,"aria-describedby",[e.getAttribute("aria-describedby"),e.id+"-description"].filter(Boolean).join(" "))}),h&&p!==void 0&&(t.find(e=>e.value===p&&!e.disabled)||t.find(e=>e.checked&&!e.disabled)||t.find(e=>!e.disabled))?.focus()}function g(){n({Value:l.Value||""})}return n({}),{element:s.root,update:n,reset:g,getValue:()=>t.find(o=>o.checked)?.value||"",focus:()=>(t.find(o=>o.checked&&!o.disabled)||t.find(o=>!o.disabled))?.focus(),validate:()=>t.filter(o=>!o.disabled).every(o=>o.reportValidity()),destroy:O.destroy}}export{A as a,V as b,T as c,_ as d};
@@ -0,0 +1 @@
1
+ import{a as c,d as b,g as C}from"./chunk-EOKNLCNS.js";function h(n,r={}){let i={...r},e=!1,t,o={},a=b(n,i),l=a.body,u=["id","aria-describedby","aria-invalid","aria-required"];function s(){if(t)for(let d of u){let p=o[d];p===null?t.removeAttribute(d):t.setAttribute(d,p)}}function m(d){if(e)throw Error("Component is destroyed.");i={...i,...d},i.Control!==t&&(s(),l.replaceChildren(),t=i.Control,t&&(o=Object.fromEntries(u.map(p=>[p,t.getAttribute(p)])),l.append(t))),a.paint(i,t?[t]:[]),t&&o["aria-describedby"]&&t.setAttribute("aria-describedby",[o["aria-describedby"],t.getAttribute("aria-describedby")].filter(Boolean).join(" "))}return m({}),{element:a.root,content:l,update:m,destroy(){e||(e=!0,s(),a.root.remove())}}}function f(n,r,i={}){let e={...i},t=!1,o=c("div","blu-columns"),a=Array.from({length:r},(u,s)=>{let m=c("div","blu-columns__column");return m.dataset.column=String(s+1),o.append(m),m});n.append(o);function l(u){if(t)throw Error("Component is destroyed.");e={...e,...u};let s={Equal:"minmax(0,1fr) minmax(0,1fr)",OneThirdTwoThirds:"minmax(0,1fr) minmax(0,2fr)",TwoThirdsOneThird:"minmax(0,2fr) minmax(0,1fr)",OneQuarterThreeQuarters:"minmax(0,1fr) minmax(0,3fr)",ThreeQuartersOneQuarter:"minmax(0,3fr) minmax(0,1fr)"};if(r===2&&e.Ratio&&!s[e.Ratio])throw Error("Unsupported two-column ratio.");if(r===3&&e.Ratio&&!["Equal","WideCenter"].includes(e.Ratio))throw Error("Unsupported three-column ratio.");if(r===4&&e.Ratio&&e.Ratio!=="Equal")throw Error("Four columns use equal widths.");o.className="blu-columns blu-columns--stack-"+(e.StackAt||"Medium").toLowerCase()+(e.EqualHeight?" blu-columns--equal-height":"")+(e.ExtendedClass?" "+e.ExtendedClass:""),o.style.setProperty("--blu-columns-tracks",r===2?s[e.Ratio||"Equal"]:r===3&&e.Ratio==="WideCenter"?"minmax(0,1fr) minmax(0,2fr) minmax(0,1fr)":`repeat(${r}, minmax(0, 1fr))`),o.style.setProperty("--blu-columns-gap",C(e.Gap,24,0,96)+"px"),o.style.alignItems=e.EqualHeight?"stretch":(e.Align||"Stretch").toLowerCase()}return l({}),{element:o,columns:a,update:l,destroy(){t||(t=!0,o.remove())}}}var E=(n,r={})=>f(n,2,r),y=(n,r={})=>f(n,3,r),g=(n,r={})=>f(n,4,r);export{h as a,E as b,y as c,g as d};
@@ -1 +1 @@
1
- import{a as E}from"./chunk-MEEQNPGM.js";import{c as w,d as C}from"./chunk-5TEIXA4R.js";var i=w("common",()=>({instances:new Map,hosts:new Map,serial:0,overlays:[],inertState:new Map,oldOverflow:void 0}));function d(e,t,r){var o=document.createElement(e);return t&&(o.className=t),r!==void 0&&(o.textContent=r),o}function u(e,t,r){return e.setAttribute(t,String(r)),e}function D(e){for(;e.firstChild;)e.removeChild(e.firstChild)}function x(e,t,r,o,n){t.addEventListener(r,o,n),e.cleanup.push(function(){t.removeEventListener(r,o,n)})}function v(e,t,r){var o=d("button","blu-common-button"+(r?" blu-common-button--primary":""),e);return o.type="button",o.addEventListener("click",t),o}function O(e,t,r){if(e=e||r,t.indexOf(e)<0)throw Error("Expected one of: "+t.join(", ")+".");return e}function b(e,t){if(!(e.dead||e.host._bluCommonOwner!==e.key||!e.events[t])){var r=Array.prototype.slice.call(arguments,2);try{Promise.resolve(e.events[t].apply(null,r)).catch(function(o){t!=="Error"&&p(e,o.message||String(o))})}catch(o){t!=="Error"&&p(e,o.message||String(o))}}}function p(e,t){e.error||(e.error=u(d("p","blu-common-error"),"role","alert"),e.host.append(e.error)),e.error.textContent=t,e.error.hidden=!t,t&&t!==e.lastError&&b(e,"Error",t),e.lastError=t}function F(e,t,r,o,n){var a=document.getElementById(e);if(!a)return null;o=o||e;var l=i.instances.get(o);return l&&l.host!==a&&(h(o),l=null),a._bluCommonOwner&&a._bluCommonOwner!==o&&h(a._bluCommonOwner),l||(l={host:a,key:o,kind:n,uid:"blu-common-"+ ++i.serial,cleanup:[],events:{},options:{}},i.instances.set(o,l)),a._bluCommonOwner=o,l.options=t||{},l.events=r||{},u(a,"data-blu-ready","true"),l}function h(e){var t=i.instances.get(e);t&&(t.dead=!0,m(t),t.dispose&&t.dispose(),t.cleanup.forEach(function(r){r()}),t.host._bluCommonOwner===e&&(delete t.host._bluCommonOwner,t.host.removeAttribute("data-blu-ready"),t.preserve||D(t.host)),i.instances.delete(e))}function y(e){return Array.from(e.querySelectorAll('button,a[href],input,select,textarea,[tabindex]:not([tabindex="-1"])')).filter(function(t){return!t.disabled&&!t.closest("[hidden],[inert]")&&t.getClientRects().length})}function L(){i.inertState.forEach(function(r,o){o.inert=r}),i.inertState.clear();var e=i.overlays[i.overlays.length-1];if(!e){i.oldOverflow!==void 0&&(document.body.style.overflow=i.oldOverflow),i.oldOverflow=void 0;return}i.oldOverflow===void 0&&(i.oldOverflow=document.body.style.overflow),document.body.style.overflow="hidden";for(var t=e.layer;t&&t.parentElement&&(Array.from(t.parentElement.children).forEach(function(r){r!==t&&r instanceof HTMLElement&&(i.inertState.set(r,r.inert),r.inert=!0)}),t=t.parentElement,t!==document.body););}function I(e,t,r,o){if(!e.overlayOpen){if(e.overlayOpen=!0,e.layer=t,e.panel=r,e.returnFocus=document.activeElement,t.hidden=!1,u(t,"popover","manual"),t.showPopover)try{t.showPopover()}catch{}i.overlays.push(e),L(),r.tabIndex=-1,e.overlayKey=function(n){if(i.overlays[i.overlays.length-1]===e){if(n.key==="Escape")n.preventDefault(),n.stopImmediatePropagation(),o();else if(n.key==="Tab"){var a=y(r),l=a[0]||r,c=a[a.length-1]||r;n.shiftKey&&(document.activeElement===l||!r.contains(document.activeElement))?(n.preventDefault(),c.focus()):!n.shiftKey&&(document.activeElement===c||!r.contains(document.activeElement))&&(n.preventDefault(),l.focus())}}},e.overlayFocus=function(n){i.overlays[i.overlays.length-1]===e&&!r.contains(n.target)&&(y(r)[0]||r).focus()},document.addEventListener("keydown",e.overlayKey,!0),document.addEventListener("focusin",e.overlayFocus,!0),(y(r)[0]||r).focus()}}function m(e){if(e.stopTracking&&e.stopTracking(),!!e.overlayOpen){e.overlayOpen=!1;var t=i.overlays[i.overlays.length-1]===e;if(i.overlays=i.overlays.filter(function(r){return r!==e}),document.removeEventListener("keydown",e.overlayKey,!0),document.removeEventListener("focusin",e.overlayFocus,!0),e.layer.hidePopover)try{e.layer.hidePopover()}catch{}e.layer.hidden=!0,L(),t&&e.returnFocus&&e.returnFocus.isConnected&&!e.returnFocus.closest("[inert],[hidden]")&&e.returnFocus.focus()}}function _(e,t){return e.host.querySelector('[data-blu-slot="'+t+'"],.blu-common-slot--'+t.toLowerCase())}function T(e){var t=e.options,r=O(t.Size,["Small","Medium","Large"],"Medium"),o=O(t.Placement,["Left","Right","Bottom"],"Right");if(e.preserve=!0,!e.layer){var n=_(e,"Content"),a=_(e,"Footer");e.layer=e.host,e.layer.classList.add("blu-overlay"),e.layer.classList.add("blu-overlay--"+e.kind.toLowerCase()),e.panel=u(d("section","blu-overlay__panel"),"role","dialog"),u(e.panel,"aria-modal","true"),e.heading=d("h2"),e.heading.id=e.uid+"-title",e.description=d("p","blu-overlay__description"),e.description.id=e.uid+"-description",e.close=v("\xD7",function(){s(e,"CloseButton")}),u(e.close,"aria-label","Close dialog"),e.close.classList.add("blu-overlay__close");var l=d("header","blu-overlay__header");l.append(e.heading,e.description,e.close),e.content=n||d("div","blu-common-slot--content"),e.content.classList.add("blu-overlay__content"),e.footer=d("footer","blu-overlay__footer"),e.customFooter=a||d("div"),e.actions=d("div","blu-overlay__actions"),e.cancel=v("Cancel",function(){s(e,"Cancel")}),e.confirm=v("Confirm",function(){e.options.IsBusy||b(e,"Confirm",e.options.InstanceKey||"")},!0),e.actions.append(e.cancel,e.confirm),e.footer.append(e.customFooter,e.actions),e.panel.append(l,e.content,e.footer),e.layer.append(e.panel),x(e,e.layer,"click",function(c){c.target===e.layer&&e.options.CloseOnBackdrop!==!1&&s(e,"Backdrop")}),e.dispose=function(){n&&e.host.append(n),a&&e.host.append(a),e.panel.remove()}}u(e.layer,"data-size",r.toLowerCase()),u(e.layer,"data-placement",o.toLowerCase()),e.heading.textContent=t.Title||"Details",e.description.textContent=t.Description||"",e.description.hidden=!t.Description,u(e.panel,"aria-labelledby",e.heading.id),t.Description?u(e.panel,"aria-describedby",e.description.id):e.panel.removeAttribute("aria-describedby"),u(e.panel,"aria-busy",!!t.IsBusy),e.close.disabled=e.cancel.disabled=!1,e.confirm.disabled=!!t.IsBusy,e.cancel.textContent=t.CancelLabel||"Cancel",e.confirm.textContent=t.IsBusy?"Working\u2026":t.ConfirmLabel||"Confirm",e.footer.hidden=t.ShowFooter===!1,e.actions.hidden=t.ShowDefaultActions===!1,t.IsOpen?I(e,e.layer,e.panel,function(){e.options.CloseOnEscape!==!1&&s(e,"Escape")}):(m(e),e.layer.hidden=!0)}function s(e,t){e.options.IsOpen=!1,m(e),b(e,"OpenChanged",!1,t)}function B(e,t,r){return{sync:function(o,n,a,l){var c=F(o,n,a,l,e);if(c)try{var g=r?JSON.stringify(c.options):null;return(!r||c.renderSignature!==g)&&(t(c),c.renderSignature=g),p(c,""),""}catch(f){return c.renderSignature=void 0,c.cascaderSignature=null,m(c),p(c,f.message||String(f)),f.message||String(f)}},destroy:h}}function S(){return C("Drawer",()=>B("Drawer",T,!1))}function R(e,t,r={}){return S(),E(e,"Drawer",t,o=>({OpenChanged:(n,a)=>(o({IsOpen:n}),r.OpenChanged?.(n,a)),Confirm:n=>r.Confirm?.(n),Error:n=>r.Error?.(n)}),[],["Content","Footer"])}export{R as a};
1
+ import{a as E}from"./chunk-MEEQNPGM.js";import{c as w,d as C}from"./chunk-5TEIXA4R.js";var i=w("common",()=>({instances:new Map,hosts:new Map,serial:0,overlays:[],inertState:new Map,oldOverflow:void 0}));function d(e,t,r){var o=document.createElement(e);return t&&(o.className=t),r!==void 0&&(o.textContent=r),o}function u(e,t,r){return e.setAttribute(t,String(r)),e}function D(e){for(;e.firstChild;)e.removeChild(e.firstChild)}function F(e,t,r,o,n){t.addEventListener(r,o,n),e.cleanup.push(function(){t.removeEventListener(r,o,n)})}function v(e,t,r){var o=d("button","blu-common-button"+(r?" blu-common-button--primary":""),e);return o.type="button",o.addEventListener("click",t),o}function O(e,t,r){if(e=e||r,t.indexOf(e)<0)throw Error("Expected one of: "+t.join(", ")+".");return e}function b(e,t){if(!(e.dead||e.host._bluCommonOwner!==e.key||!e.events[t])){var r=Array.prototype.slice.call(arguments,2);try{Promise.resolve(e.events[t].apply(null,r)).catch(function(o){t!=="Error"&&p(e,o.message||String(o))})}catch(o){t!=="Error"&&p(e,o.message||String(o))}}}function p(e,t){e.error||(e.error=u(d("p","blu-common-error"),"role","alert"),e.host.append(e.error)),e.error.textContent=t,e.error.hidden=!t,t&&t!==e.lastError&&b(e,"Error",t),e.lastError=t}function x(e,t,r,o,n){var a=document.getElementById(e);if(!a)return null;o=o||e;var l=i.instances.get(o);return l&&l.host!==a&&(h(o),l=null),a._bluCommonOwner&&a._bluCommonOwner!==o&&h(a._bluCommonOwner),l||(l={host:a,key:o,kind:n,uid:"blu-common-"+ ++i.serial,cleanup:[],events:{},options:{}},i.instances.set(o,l)),a._bluCommonOwner=o,l.options=t||{},l.events=r||{},u(a,"data-blu-ready","true"),l}function h(e){var t=i.instances.get(e);t&&(t.dead=!0,m(t),t.dispose&&t.dispose(),t.cleanup.forEach(function(r){r()}),t.host._bluCommonOwner===e&&(delete t.host._bluCommonOwner,t.host.removeAttribute("data-blu-ready"),t.preserve||D(t.host)),i.instances.delete(e))}function y(e){return Array.from(e.querySelectorAll('button,a[href],input,select,textarea,[tabindex]:not([tabindex="-1"])')).filter(function(t){return!t.disabled&&!t.closest("[hidden],[inert]")&&t.getClientRects().length})}function L(){i.inertState.forEach(function(r,o){o.inert=r}),i.inertState.clear();var e=i.overlays[i.overlays.length-1];if(!e){i.oldOverflow!==void 0&&(document.body.style.overflow=i.oldOverflow),i.oldOverflow=void 0;return}i.oldOverflow===void 0&&(i.oldOverflow=document.body.style.overflow),document.body.style.overflow="hidden";for(var t=e.layer;t&&t.parentElement&&(Array.from(t.parentElement.children).forEach(function(r){r!==t&&r instanceof HTMLElement&&(i.inertState.set(r,r.inert),r.inert=!0)}),t=t.parentElement,t!==document.body););}function I(e,t,r,o){if(!e.overlayOpen){if(e.overlayOpen=!0,e.layer=t,e.panel=r,e.returnFocus=document.activeElement,t.hidden=!1,u(t,"popover","manual"),t.showPopover)try{t.showPopover()}catch{}i.overlays.push(e),L(),r.tabIndex=-1,e.overlayKey=function(n){if(i.overlays[i.overlays.length-1]===e){if(n.key==="Escape")n.preventDefault(),n.stopImmediatePropagation(),o();else if(n.key==="Tab"){var a=y(r),l=a[0]||r,c=a[a.length-1]||r;n.shiftKey&&(document.activeElement===l||!r.contains(document.activeElement))?(n.preventDefault(),c.focus()):!n.shiftKey&&(document.activeElement===c||!r.contains(document.activeElement))&&(n.preventDefault(),l.focus())}}},e.overlayFocus=function(n){i.overlays[i.overlays.length-1]===e&&!r.contains(n.target)&&(y(r)[0]||r).focus()},document.addEventListener("keydown",e.overlayKey,!0),document.addEventListener("focusin",e.overlayFocus,!0),(y(r)[0]||r).focus()}}function m(e){if(e.stopTracking&&e.stopTracking(),!!e.overlayOpen){e.overlayOpen=!1;var t=i.overlays[i.overlays.length-1]===e;if(i.overlays=i.overlays.filter(function(r){return r!==e}),document.removeEventListener("keydown",e.overlayKey,!0),document.removeEventListener("focusin",e.overlayFocus,!0),e.layer.hidePopover)try{e.layer.hidePopover()}catch{}e.layer.hidden=!0,L(),t&&e.returnFocus&&e.returnFocus.isConnected&&!e.returnFocus.closest("[inert],[hidden]")&&e.returnFocus.focus()}}function _(e,t){return e.host.querySelector('[data-blu-slot="'+t+'"],.blu-common-slot--'+t.toLowerCase())}function T(e){var t=e.options,r=O(t.Size,["Small","Medium","Large"],"Medium"),o=O(t.Placement,["Left","Right","Bottom"],"Right");if(e.preserve=!0,!e.layer){var n=_(e,"Content"),a=_(e,"Footer");e.layer=e.host,e.layer.classList.add("blu-overlay"),e.layer.classList.add("blu-overlay--"+e.kind.toLowerCase()),e.panel=u(d("section","blu-overlay__panel"),"role","dialog"),u(e.panel,"aria-modal","true"),e.heading=d("h2"),e.heading.id=e.uid+"-title",e.description=d("p","blu-overlay__description"),e.description.id=e.uid+"-description",e.close=v("\xD7",function(){s(e,"CloseButton")}),u(e.close,"aria-label","Close dialog"),e.close.classList.add("blu-overlay__close");var l=d("header","blu-overlay__header");l.append(e.heading,e.description,e.close),e.content=n||d("div","blu-common-slot--content"),e.content.classList.add("blu-overlay__content"),e.footer=d("footer","blu-overlay__footer"),e.customFooter=a||d("div"),e.actions=d("div","blu-overlay__actions"),e.cancel=v("Cancel",function(){s(e,"Cancel")}),e.confirm=v("Confirm",function(){e.options.IsBusy||b(e,"Confirm",e.options.InstanceKey||"")},!0),e.actions.append(e.cancel,e.confirm),e.footer.append(e.customFooter,e.actions),e.panel.append(l,e.content,e.footer),e.layer.append(e.panel),F(e,e.layer,"click",function(c){c.target===e.layer&&e.options.CloseOnBackdrop!==!1&&s(e,"Backdrop")}),e.dispose=function(){n&&e.host.append(n),a&&e.host.append(a),e.panel.remove()}}u(e.layer,"data-size",r.toLowerCase()),u(e.layer,"data-placement",o.toLowerCase()),e.heading.textContent=t.Title||"Details",e.description.textContent=t.Description||"",e.description.hidden=!t.Description,u(e.panel,"aria-labelledby",e.heading.id),t.Description?u(e.panel,"aria-describedby",e.description.id):e.panel.removeAttribute("aria-describedby"),u(e.panel,"aria-busy",!!t.IsBusy),e.close.disabled=e.cancel.disabled=!1,e.confirm.disabled=!!t.IsBusy,e.cancel.textContent=t.CancelLabel||"Cancel",e.confirm.textContent=t.IsBusy?"Working\u2026":t.ConfirmLabel||"Confirm",e.footer.hidden=t.ShowFooter===!1,e.actions.hidden=t.ShowDefaultActions===!1,t.IsOpen?I(e,e.layer,e.panel,function(){e.options.CloseOnEscape!==!1&&s(e,"Escape")}):(m(e),e.layer.hidden=!0)}function s(e,t){e.options.IsOpen=!1,m(e),b(e,"OpenChanged",!1,t)}function B(e,t,r){return{sync:function(o,n,a,l){var c=x(o,n,a,l,e);if(c)try{var g=r?JSON.stringify(c.options):null;return(!r||c.renderSignature!==g)&&(t(c),c.renderSignature=g),p(c,""),""}catch(f){return c.renderSignature=void 0,c.cascaderSignature=null,m(c),p(c,f.message||String(f)),f.message||String(f)}},destroy:h}}function S(){return C("Drawer",()=>B("Drawer",T,!1))}function R(e,t,r={}){return S(),E(e,"Drawer",t,o=>({OpenChanged:(n,a)=>(o({IsOpen:n}),r.OpenChanged?.(n,a)),Confirm:n=>r.Confirm?.(n),Error:n=>r.Error?.(n)}),[],["Content","Footer"])}export{R as a};
File without changes
File without changes
File without changes
File without changes
@@ -0,0 +1 @@
1
+ import{a as X}from"./chunk-MEEQNPGM.js";import{c as G,d as Q}from"./chunk-5TEIXA4R.js";var O=G("advanced",()=>({instances:new Map,serial:0})),fe=()=>`blu-advanced-${++O.serial}`;function c(e,t,a){let r=document.createElement(e);return t&&(r.className=t),a!==void 0&&(r.textContent=String(a)),r}function u(e,t,a){return a==null?e.removeAttribute(t):e.setAttribute(t,String(a)),e}function x(e,t,a="blu-picker__button"){let r=c("button",a,e);return r.type="button",r.addEventListener("click",t),r}function I(e,t,...a){if(!e.dead)try{Promise.resolve(e.events[t]?.(...a)).catch(r=>K(e,r))}catch(r){K(e,r)}}function K(e,t){if(e.dead)return;let a=t?.message||String(t);e.notice.textContent=a,e.lastError!==a&&(e.lastError=a,I(e,"Error",a))}function Z(e,t){let a=typeof e=="string"?JSON.parse(e||"[]"):e||[];if(!Array.isArray(a))throw Error(t+" must be a list.");return a}function me(e,t,a){let r=o=>{let n=O.instances.get(o);!n||n.kind!==e||(n.dead=!0,n.dispose?.(),n.root.remove(),n.notice.remove(),n.host._bluAdvancedOwner===o&&delete n.host._bluAdvancedOwner,O.instances.delete(o))};return Q(e,()=>({sync(o,n={},m={},h){let l=document.getElementById(o);if(!l)return e+" host was not found.";let g=h||o,p=O.instances.get(g);p&&(p.host!==l||p.kind!==e)&&(p.destroy(p.key),p=null);let i=O.instances.get(l._bluAdvancedOwner);if(i&&i!==p&&i.destroy(i.key),!p){p={key:g,host:l,kind:e,uid:fe(),options:n,events:m,dead:!1,destroy:r},p.root=c("div"),p.notice=u(c("div","blu-advanced-sr"),"role","status"),u(p.notice,"aria-atomic","true"),l.append(p.root,p.notice),O.instances.set(g,p),l._bluAdvancedOwner=g;try{t(p)}catch(f){throw r(g),f}}p.options=n,p.events=m;try{return a(p),l.dataset.bluRuntimeReady="true",""}catch(f){return K(p,f),f.message||String(f)}},destroy:r}))}var v=e=>String(e).padStart(2,"0");function q(e){return String(e.getFullYear()).padStart(4,"0")+"-"+v(e.getMonth()+1)+"-"+v(e.getDate())}function b(e){let t=/^(\d{4})-(\d{2})-(\d{2})$/.exec(String(e));if(!t||+t[1]<1||+t[1]>9999)return null;let a=new Date(2e3,+t[2]-1,+t[3],12);return a.setFullYear(+t[1]),q(a)===e?a:null}function L(e){let t=/^(\d{2}):(\d{2})$/.exec(String(e));return t&&+t[1]<24&&+t[2]<60?t[1]+":"+t[2]:null}function ee(e,t="YYYY-MM-DD"){if(e=String(e).trim(),!e)return"";let a=e;if(t!=="YYYY-MM-DD"){let r=/^(\d{1,2})\/(\d{1,2})\/(\d{4})$/.exec(e);if(!r)return null;a=r[3]+"-"+v(+(t==="DD/MM/YYYY"?r[2]:r[1]))+"-"+v(+(t==="DD/MM/YYYY"?r[1]:r[2]))}return b(a)?a:null}function te(e,t="YYYY-MM-DD"){if(!e)return"";let a=e.split("-");return t==="MM/DD/YYYY"?a[1]+"/"+a[2]+"/"+a[0]:t==="DD/MM/YYYY"?a[2]+"/"+a[1]+"/"+a[0]:e}function he(e,t=24){if(e=String(e).trim(),!e)return"";let a=/^(\d{1,2}):(\d{2})(?:\s*(AM|PM))?$/i.exec(e);return!a||+a[2]>59||(t===12?!a[3]||+a[1]<1||+a[1]>12:a[3]||+a[1]>23)?null:v(a[3]?+a[1]%12+(a[3].toUpperCase()==="PM"?12:0):+a[1])+":"+a[2]}function T(e,t=24){if(!e)return"";let[a,r]=e.split(":").map(Number);return t===12?(a%12||12)+":"+v(r)+" "+(a<12?"AM":"PM"):v(a)+":"+v(r)}function ae(e,t){let a=b(e);return a.setDate(a.getDate()+t),q(a)}function ie(e,t){let a=b(e),r=a.getDate();return a.setDate(1),a.setMonth(a.getMonth()+t),a.setDate(Math.min(r,new Date(a.getFullYear(),a.getMonth()+1,0).getDate())),q(a)}function ge(e,t){let a=b(e),r=b(t);return Math.round((r.getTime()-a.getTime())/864e5)}function z(e,t,a,r){return b(e)?t&&e<t?"Choose "+t+" or later.":a&&e>a?"Choose "+a+" or earlier.":r?.has(e)?"This date is unavailable.":"":"Enter a real calendar date."}function oe(e,t,a={}){if(!e||!t)return"Choose both a start date and an end date.";let r=z(e,a.Min,a.Max,a.disabled)||z(t,a.Min,a.Max,a.disabled);if(r)return r;if(t<e)return"End date must be on or after start date.";let o=ge(e,t)+1;if(a.MinRangeDays&&o<a.MinRangeDays)return"Choose at least "+a.MinRangeDays+" days.";if(a.MaxRangeDays&&o>a.MaxRangeDays)return"Choose no more than "+a.MaxRangeDays+" days.";if(a.disabled){for(let n of a.disabled)if(n>=e&&n<=t)return"The range includes an unavailable date."}return""}var ye=["YYYY-MM-DD","MM/DD/YYYY","DD/MM/YYYY"],N=()=>q(new Date),S=e=>String(e||"").split("T")[0],F=e=>String(e||"").split("T")[1]||"";function w(e,t){let a=b(t);return a?new Intl.DateTimeFormat(e.locale,{dateStyle:"full"}).format(a):t}function B(e,t,a=e.fields){e.error.textContent=t,e.error.hidden=!t||e.isOpen,e.dialogError&&(e.dialogError.textContent=e.isOpen?t:"");for(let o of e.fields)u(o.input,"aria-invalid",t&&a.includes(o)?"true":null);let r=!t;(e.valid!==r||e.validationMessage!==t)&&(e.valid=r,e.validationMessage=t,I(e,"ValidationChanged",r,t))}function V(e,t){return z(t,S(e.options.Min),S(e.options.Max),e.disabledDates)}function be(e,t,a){if(!L(t))return"Enter a valid time.";let r=e.dateTime?a+"T"+t:t,o=e.options.Min,n=e.options.Max;return o&&r<o?"Choose "+o+" or later.":n&&r>n?"Choose "+n+" or earlier.":""}function de(e,t,a,r){if(e.range)return!t&&!a&&!e.options.IsRequired?"":oe(t,a,{...e.options,disabled:e.disabledDates});if(!t&&!r)return e.options.IsRequired?"A "+(e.timeOnly?"time":"date")+" is required.":"";if(!e.timeOnly){if(!t)return"Choose a date.";let o=V(e,t);if(o)return o}return e.hasTime?r?be(e,r,t):"Choose a time.":""}function le(e){e.timeOnly?e.fields[0].input.value=T(e.value,e.cycle):(e.fields[0].input.value=te(e.range?e.start:S(e.value),e.format),e.range&&(e.fields[1].input.value=te(e.end,e.format)),e.dateTime&&(e.fields[1].input.value=T(F(e.value),e.cycle)));let t=e.range?[e.start,e.end].filter(Boolean).join(" to "):e.value;e.typedDirty=!1,e.clearButton.hidden=e.options.ShowClear===!1||!t}function k(e,t=!0){if(e.isOpen){e.isOpen=!1,e.dialog.hidePopover&&e.dialog.matches(":popover-open")&&e.dialog.hidePopover(),e.dialog.hidden=!0,e.error.hidden=!e.validationMessage;for(let{input:a}of e.fields)u(a,"aria-expanded","false");t&&e.anchor?.isConnected&&!e.anchor.disabled&&e.anchor.focus({preventScroll:!0}),I(e,"OpenChanged",!1)}}function Y(e){if(!e.isOpen||e.dead)return;let t=e.anchor.getBoundingClientRect(),a=window.visualViewport,r=a?.offsetLeft||0,o=a?.offsetTop||0,n=a?.width||document.documentElement.clientWidth,m=a?.height||window.innerHeight,h=6,l=8;if(t.bottom<=o||t.top>=o+m||t.right<=r||t.left>=r+n){k(e,!1);return}let g=e.dialog,p=Math.min(e.timeOnly?300:344,n-l*2);g.dataset.compact=String(m<420),g.style.width=p+"px",g.style.maxHeight="none";let i=Math.max(0,o+m-l-t.bottom-h),f=Math.max(0,t.top-h-o-l),d=g.scrollHeight+2,D=d>i&&f>i,E=Math.max(0,m-l*2);g.style.maxHeight=E+"px";let y=e.fieldRow.getBoundingClientRect();g.style.left=Math.max(r+l,Math.min(y.left+(y.width-p)/2,r+n-l-p))+"px";let M=D?t.top-h-d:t.bottom+h;g.style.top=Math.max(o+l,Math.min(M,o+m-l-Math.min(d,E)))+"px",g.dataset.placement=D?"top":"bottom"}function ne(e){(e.timeOnly||e.dateTime&&e.anchor===e.fields[1].input?e.hours:e.calendar.querySelector('[data-date="'+e.focusDate+'"]')||e.monthSelect).focus({preventScroll:!0})}function H(e,t,a,r,o=!1){let n=de(e,t,a,r);if(B(e,n),n)return e.dialogError.textContent=n,!1;let m=document.activeElement===e.clearButton&&!t&&!a&&!r,h=e.timeOnly?r:e.dateTime?t?t+"T"+r:"":t,l=e.range?e.start!==t||e.end!==a:e.value!==h;return e.range?(e.start=t,e.end=a,e.options.StartDate=t,e.options.EndDate=a):(e.value=h,e.options.Value=h),e.inputSignature=JSON.stringify(e.range?[e.start,e.end]:[e.value]),le(e),o||k(e),m&&e.fields[0].input.focus({preventScroll:!0}),e.notice.textContent=e.range?t?w(e,t)+" to "+w(e,a):"Date range cleared":h?"Selected "+(e.timeOnly?T(h,e.cycle):w(e,t)+(e.hasTime?" at "+T(r,e.cycle):"")):"Selection cleared",l&&(e.range?I(e,"Change",t,a):I(e,"Change",h)),!0}function re(e,t=!1){if(e.options.IsDisabled||e.options.IsReadOnly)return;let a=e.timeOnly?"":ee(e.fields[0].input.value,e.format),r=e.range?ee(e.fields[1].input.value,e.format):"",o=e.hasTime?he(e.fields[e.timeOnly?0:1].input.value,e.cycle):"";if(a===null||r===null){B(e,"Enter a real date using "+e.format+".");return}if(o===null){B(e,e.cycle===12?"Enter a time such as 9:15 AM.":"Enter a time such as 14:30.");return}H(e,a,r,o,t)&&t&&(e.draftStart=a,e.draftEnd=r,e.draftTime=o,a&&(e.focusDate=a,e.month=a.slice(0,7)),_(e),J(e),s(e),Y(e))}function De(e){let t=e.range||e.dateTime?2:1;e.fields=[];for(let a=0;a<t;a++){let r=c("div","blu-picker__field"),o=c("label"),n=c("input","blu-picker__input");n.type="text",n.id=e.uid+"-input-"+a,o.htmlFor=n.id,n.autocomplete="off",n.spellcheck=!1,u(n,"role","combobox"),u(n,"aria-haspopup","dialog"),u(n,"aria-expanded","false"),u(n,"aria-autocomplete","none"),u(n,"aria-controls",e.uid+"-dialog"),u(n,"aria-describedby",e.uid+"-hint "+e.uid+"-error "+e.uid+"-keyboard"),n.addEventListener("input",()=>{e.typedDirty=!0}),n.addEventListener("change",()=>re(e,e.isOpen)),n.addEventListener("pointerdown",l=>{l.pointerType==="mouse"&&(e.touchOpen=!1,n.inputMode="text"),(l.pointerType==="touch"||l.pointerType==="pen")&&e.manualInput!==n&&!e.options.IsDisabled&&!e.options.IsReadOnly&&(l.preventDefault(),e.touchOpen=!0,n.inputMode="none",P(e,n,!0))}),n.addEventListener("click",l=>{e.manualInput!==n&&(e.touchOpen?(l.preventDefault(),P(e,n,!0)):P(e,n,!1))}),n.addEventListener("blur",()=>{e.manualInput===n&&(e.manualInput=null)}),n.addEventListener("keydown",l=>{l.ctrlKey||l.metaKey||l.shiftKey||(l.key==="ArrowDown"&&(l.preventDefault(),P(e,n,!0)),l.key==="Enter"&&(l.preventDefault(),!e.isOpen&&!e.typedDirty?P(e,n,!0):re(e)),l.key==="Tab"&&k(e,!1))});let m=c("div","blu-picker__field-control"),h=u(c("span","blu-picker__field-icon"),"aria-hidden","true");h.innerHTML=e.timeOnly||e.dateTime&&a?'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.7"><circle cx="12" cy="12" r="8.5"/><path d="M12 7v5l3 2"/></svg>':'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.7"><rect x="4" y="5" width="16" height="16" rx="3"/><path d="M8 3v4m8-4v4M4 10h16m-11 4h2m3 0h2m-7 3h2"/></svg>',m.append(n,h),r.append(o,m),e.fields.push({field:r,label:o,input:n}),e.fieldRow.append(r)}}function C(e,t,a){let r=c("option","",a);return r.value=String(t),e.append(r),r}function A(e,t,a){let r=c("label","blu-picker__select-field"),o=c("span","blu-picker__select-caption",t),n=c("select","blu-picker__input");return n.id=e.uid+"-"+a,r.append(o,n),{wrap:r,select:n}}function ve(e){if(e.button!==0)return;let t=e.target.closest?.("button");!t||t.disabled||(e.preventDefault(),t.focus({preventScroll:!0}))}function R(e,t){let a=S(e.options.Min)||"0001-01-01",r=S(e.options.Max)||"9999-12-31";t=t<a?a:t>r?r:t,b(t)&&(e.focusDate=t,e.month=t.slice(0,7),_(e),e.calendar.querySelector('[data-date="'+t+'"]')?.focus({preventScroll:!0}))}function Se(e,t,a){if(t.altKey||t.ctrlKey||t.metaKey)return;let r,o={ArrowLeft:-1,ArrowRight:1,ArrowUp:-7,ArrowDown:7};if(t.key in o)r=ae(a,o[t.key]);else if(t.key==="Home"||t.key==="End"){let n=(b(a).getDay()-e.firstDay+7)%7;r=ae(a,t.key==="Home"?-n:6-n)}else(t.key==="PageUp"||t.key==="PageDown")&&(r=ie(a,(t.key==="PageUp"?-1:1)*(t.shiftKey?12:1)));r&&(t.preventDefault(),R(e,r))}function ce(e,t){if(!V(e,t)){if(e.dialogError.textContent="",e.focusDate=t,e.range?e.rangeNext==="start"?(e.draftStart=t,e.draftEnd="",e.rangeNext="end"):(t<e.draftStart?(e.draftEnd=e.draftStart,e.draftStart=t):e.draftEnd=t,e.rangeNext="start"):e.draftStart=t,!e.hasTime&&!e.range){H(e,t,"","");return}_(e),e.calendar.querySelector('[data-date="'+t+'"]')?.focus({preventScroll:!0}),s(e)}}function s(e){let t=e.range?e.draftStart?w(e,e.draftStart)+(e.draftEnd?" to "+w(e,e.draftEnd):" \u2014 choose an end date"):"Choose a start date":e.hasTime?(e.draftStart?w(e,e.draftStart)+" \xB7 ":"")+T(e.draftTime,e.cycle):"",a=r=>b(r)?new Intl.DateTimeFormat(e.locale,{month:"short",day:"numeric"}).format(b(r)):"";e.selectionSpeech.textContent=t,e.selectionVisual.textContent=e.range?e.draftStart?a(e.draftStart)+(e.draftEnd?" \u2013 "+a(e.draftEnd):" \u2014 choose end"):"Choose start date":e.dateTime?a(e.draftStart)+" \xB7 "+T(e.draftTime,e.cycle):e.timeOnly?T(e.draftTime,e.cycle):"",e.selection.hidden=!t}function _(e){let t=b(e.month+"-01");if(!t)return;let a=t.getFullYear(),r=t.getMonth(),o=Number(S(e.options.Min).slice(0,4))||1,n=Number(S(e.options.Max).slice(0,4))||9999;e.monthSelect.value=String(r),e.yearInput.value=String(a),u(e.yearInput,"aria-invalid",null),e.yearInput.min=String(o),e.yearInput.max=String(n);let m=new Intl.DateTimeFormat(e.locale,{month:"long",year:"numeric"}).format(t);e.caption.textContent!==m&&(e.caption.textContent=m);let h=(t.getDay()-e.firstDay+7)%7,l=new Date(a,r+1,0).getDate();if(e.focusDate.startsWith(e.month)||(e.focusDate=e.month+"-01"),!e.dayCells){let i=c("tbody");e.dayCells=[];for(let f=0;f<6;f++){let d=c("tr");for(let D=0;D<7;D++){let E=c("td"),y=x("",()=>ce(e,y.dataset.date),"blu-picker__day");y.addEventListener("keydown",M=>Se(e,M,y.dataset.date)),y.addEventListener("focus",()=>{e.focusDate=y.dataset.date;for(let M of e.dayCells)M.button.tabIndex=M.button===y?0:-1}),E.append(y),d.append(E),e.dayCells.push({cell:E,button:y})}i.append(d)}e.calendar.append(i)}for(let i=0;i<e.dayCells.length;i++){let{cell:f,button:d}=e.dayCells[i],D=i-h+1,E=D>0&&D<=l;if(d.hidden=!E,!E){d.tabIndex=-1,delete d.dataset.date,u(f,"aria-selected",null);continue}let y=e.month+"-"+v(D),M=y===e.draftStart||e.range&&y===e.draftEnd,U=e.range&&e.draftStart&&e.draftEnd&&y>e.draftStart&&y<e.draftEnd,W=V(e,y),$=!!(M||U),pe=e.range&&M?y===e.draftStart?e.draftEnd?", range starts here; "+w(e,e.draftStart)+" to "+w(e,e.draftEnd):", start date; choose an end date":", range ends here; "+w(e,e.draftStart)+" to "+w(e,e.draftEnd):"",j=w(e,y)+($?", selected":"")+pe+(W?", unavailable":"");d.dataset.date=y,d.tabIndex=y===e.focusDate?0:-1,d.textContent!==String(D)&&(d.textContent=String(D)),d.getAttribute("aria-label")!==j&&u(d,"aria-label",j),u(f,"aria-selected",String($)),u(d,"aria-disabled",W?"true":null),u(d,"aria-current",y===N()?"date":null),d.dataset.selected=String(M),d.dataset.between=String(!!U)}for(let i=0;i<6;i++)e.dayCells[i*7].cell.parentElement.hidden=i*7-h+1>l;let g=S(e.options.Min),p=S(e.options.Max);e.prev.disabled=!!g&&e.month<=g.slice(0,7)||a===1&&r===0,e.next.disabled=!!p&&e.month>=p.slice(0,7)||a===9999&&r===11,e.todayButton.hidden=e.timeOnly||e.options.ShowToday===!1,e.todayButton.disabled=!!V(e,N())}function J(e){if(!e.hasTime)return;let[t,a]=(e.draftTime||"09:00").split(":").map(Number);e.hours.replaceChildren(),e.minutes.replaceChildren();for(let r=0;r<(e.cycle===12?12:24);r++)C(e.hours,e.cycle===12?r+1:r,v(e.cycle===12?r+1:r));for(let r=0;r<60;r+=e.step)C(e.minutes,r,v(r));a%e.step&&C(e.minutes,a,v(a)+" (entered)"),e.hours.value=String(e.cycle===12?t%12||12:t),e.minutes.value=String(a),e.period.value=t<12?"AM":"PM",e.periodField.hidden=e.cycle!==12,s(e)}function P(e,t=e.fields[0].input,a=!0){if(e.options.IsDisabled||e.options.IsReadOnly)return;if(e.anchor=t,e.manualInput=null,e.typeButton.hidden=!e.touchOpen,e.isOpen){e.range&&(e.rangeNext=t===e.fields[1].input&&e.draftStart?"end":"start"),Y(e),a&&ne(e);return}e.draftStart=e.timeOnly?"":e.range?e.start:S(e.value),e.draftEnd=e.end||"",e.draftTime=e.timeOnly?e.value:F(e.value),e.hasTime&&!L(e.draftTime)&&(e.draftTime="09:00"),e.rangeNext="start",e.range&&t===e.fields[1].input&&e.draftStart&&(e.rangeNext="end");let r=e.range&&e.rangeNext==="end"?e.draftEnd:e.draftStart;e.focusDate=b(r)?r:b(e.draftStart)?e.draftStart:N();let o=S(e.options.Min),n=S(e.options.Max);e.timeOnly||(o&&e.focusDate<o&&(e.focusDate=o),n&&e.focusDate>n&&(e.focusDate=n)),e.month=e.focusDate.slice(0,7),e.dialogError.textContent="",_(e),J(e),s(e),e.isOpen=!0,e.dialog.hidden=!1,e.dialog.showPopover&&e.dialog.showPopover(),e.dialog.scrollTop=0;for(let{input:m}of e.fields)u(m,"aria-expanded","true");Y(e),a&&e.isOpen&&ne(e),I(e,"OpenChanged",!0)}function we(e){e.range=e.kind==="DateRangePicker",e.timeOnly=e.kind==="TimePicker",e.dateTime=e.kind==="DateTimePicker",e.hasTime=e.timeOnly||e.dateTime,e.root.className="blu-picker",e.fieldRow=c("div","blu-picker__fields"),e.error=u(c("div","blu-picker__error"),"role","alert"),e.error.id=e.uid+"-error",e.error.hidden=!0,e.hint=c("div","blu-picker__hint"),e.hint.id=e.uid+"-hint",e.actions=c("div","blu-picker__actions"),e.clearButton=x("Clear",()=>H(e,"","","")),e.actions.append(e.clearButton),e.root.append(e.fieldRow,e.hint,e.actions,e.error),De(e);let t=c("span","blu-advanced-sr","Click the field or press Down Arrow to browse. Escape closes the popup.");t.id=e.uid+"-keyboard",e.root.append(t),e.dialog=c("div","blu-picker__dialog blu-picker__popup"),e.dialog.id=e.uid+"-dialog",e.dialog.hidden=!0,u(e.dialog,"role","dialog"),u(e.dialog,"aria-labelledby",e.uid+"-title"),u(e.dialog,"aria-modal","false"),e.dialog.showPopover&&u(e.dialog,"popover","manual"),e.root.append(e.dialog),e.dialog.addEventListener("mousedown",ve),e.title=c("h2","blu-advanced-sr"),e.title.id=e.uid+"-title",e.dialog.append(e.title),e.presets=c("div","blu-picker__presets"),e.dialog.append(e.presets),e.calendarArea=c("div","blu-picker__calendar-area"),e.calendarArea.hidden=e.timeOnly,e.dialog.append(e.calendarArea);let a=c("div","blu-picker__calendar-nav"),r=A(e,"Month","month");e.monthSelect=r.select;let o=c("label","blu-picker__select-field");o.append(c("span","blu-picker__select-caption","Year")),e.yearInput=c("input","blu-picker__input"),e.yearInput.type="number",e.yearInput.step="1",o.append(e.yearInput);let n=d=>{let D=ie(e.focusDate,d);R(e,D)};e.prev=x("\u2039",()=>n(-1)),u(e.prev,"aria-label","Previous month"),e.next=x("\u203A",()=>n(1)),u(e.next,"aria-label","Next month"),a.append(e.prev,r.wrap,o,e.next),e.calendarArea.append(a),e.monthSelect.addEventListener("change",()=>R(e,String(e.yearInput.value).padStart(4,"0")+"-"+v(+e.monthSelect.value+1)+"-01")),e.yearInput.addEventListener("change",()=>{let d=Number(e.yearInput.value);if(!Number.isInteger(d)||d<+e.yearInput.min||d>+e.yearInput.max){e.dialogError.textContent="Enter a year from "+e.yearInput.min+" to "+e.yearInput.max+".",u(e.yearInput,"aria-invalid","true");return}u(e.yearInput,"aria-invalid",null),e.dialogError.textContent="",R(e,String(d).padStart(4,"0")+"-"+v(+e.monthSelect.value+1)+"-01")}),e.caption=u(c("h3","blu-picker__caption blu-advanced-sr"),"aria-live","polite"),e.caption.id=e.uid+"-caption",e.calendarArea.append(e.caption),e.calendar=u(c("table","blu-picker__calendar"),"role","grid"),u(e.calendar,"aria-labelledby",e.caption.id),e.range&&u(e.calendar,"aria-multiselectable","true"),e.calendarArea.append(e.calendar),e.todayButton=x("Today",()=>{e.focusDate=N(),e.month=e.focusDate.slice(0,7),ce(e,e.focusDate)}),e.calendarArea.append(c("p","blu-advanced-sr","Arrow keys move by day or week. Home/End move within the week. Page Up/Down change month; hold Shift to change year.")),e.timeArea=c("div","blu-picker__time-area"),e.timeArea.hidden=!e.hasTime,e.dialog.append(e.timeArea);let m=A(e,"Hour","hour"),h=A(e,"Minute","minute"),l=A(e,"AM / PM","period");e.hours=m.select,e.minutes=h.select,e.period=l.select,e.periodField=l.wrap,C(e.period,"AM","AM"),C(e.period,"PM","PM"),e.timeArea.append(m.wrap,h.wrap,l.wrap);for(let d of[e.hours,e.minutes,e.period])d.addEventListener("change",()=>{let D=+e.hours.value;e.cycle===12&&(D=D%12+(e.period.value==="PM"?12:0)),e.draftTime=v(D)+":"+v(+e.minutes.value),e.dialogError.textContent="",s(e)});e.selection=u(c("div","blu-picker__selection"),"role","status"),u(e.selection,"aria-atomic","true"),e.selectionSpeech=c("span","blu-advanced-sr"),e.selectionVisual=u(c("span"),"aria-hidden","true"),e.selection.append(e.selectionSpeech,e.selectionVisual),e.dialogError=u(c("div","blu-picker__error"),"role","alert"),e.dialogError.id=e.uid+"-dialog-error",u(e.yearInput,"aria-describedby",e.dialogError.id),e.apply=x("Apply",()=>H(e,e.draftStart,e.draftEnd,e.draftTime),"blu-picker__button blu-picker__button--primary"),e.apply.hidden=!e.range&&!e.hasTime,e.typeButton=x("Type",()=>{let d=e.anchor;k(e,!1),e.manualInput=d,d.inputMode="text",d.focus({preventScroll:!0})}),u(e.typeButton,"aria-label","Type a date or time"),e.typeButton.hidden=!0;let g=c("div","blu-picker__popup-actions");g.append(e.typeButton,e.todayButton,x("Cancel",()=>k(e)),e.apply),e.dialog.append(e.selection,e.dialogError,g);let p=d=>{e.isOpen&&!e.root.contains(d.target)&&k(e,!1)},i=d=>{e.isOpen&&d.key==="Escape"&&!d.defaultPrevented&&(d.preventDefault(),d.stopPropagation(),k(e))},f=d=>{!e.isOpen||e.dialog.contains(d?.target)||(cancelAnimationFrame(e.positionFrame),e.positionFrame=requestAnimationFrame(()=>Y(e)))};document.addEventListener("pointerdown",p,!0),document.addEventListener("focusin",p),e.root.addEventListener("keydown",i),window.addEventListener("resize",f),document.addEventListener("scroll",f,!0),window.visualViewport?.addEventListener("resize",f),window.visualViewport?.addEventListener("scroll",f),window.ResizeObserver&&(e.popupObserver=new ResizeObserver(()=>f()),e.popupObserver.observe(e.fieldRow),e.popupObserver.observe(e.dialog)),e.dispose=()=>{k(e,!1),cancelAnimationFrame(e.positionFrame),e.popupObserver?.disconnect(),document.removeEventListener("pointerdown",p,!0),document.removeEventListener("focusin",p),e.root.removeEventListener("keydown",i),window.removeEventListener("resize",f),document.removeEventListener("scroll",f,!0),window.visualViewport?.removeEventListener("resize",f),window.visualViewport?.removeEventListener("scroll",f)}}function Me(e){let t=JSON.stringify(e.options);if(e.renderSignature===t)return;let a=e.isOpen?document.activeElement:null,r=a?.dataset?.date,o=a?.id,n=e.options;if(e.label=String(n.Label||{DatePicker:"Date",TimePicker:"Time",DateTimePicker:"Date and time",DateRangePicker:"Date range"}[e.kind]),e.locale=String(n.Locale||"en-US"),new Intl.DateTimeFormat(e.locale),e.format=ye.includes(n.DateFormat)?n.DateFormat:"YYYY-MM-DD",e.cycle=Number(n.HourCycle)===12?12:24,e.step=Number(n.MinuteStep??15),!Number.isInteger(e.step)||e.step<1||e.step>60)throw Error("MinuteStep must be a whole number from 1 to 60.");if(e.firstDay=Number(n.FirstDayOfWeek??1),!Number.isInteger(e.firstDay)||e.firstDay<0||e.firstDay>6)throw Error("FirstDayOfWeek must be 0\u20136.");e.disabledDates=new Set(Z(n.DisabledDatesJson??n.DisabledDates,"DisabledDates").map(i=>typeof i=="string"?i:i.Date));for(let i of e.disabledDates)if(!b(i))throw Error("DisabledDates must contain ISO calendar dates.");for(let i of["Min","Max"])if(n[i]&&!(e.timeOnly?L(n[i]):b(S(n[i]))&&(!e.dateTime||L(F(n[i])))))throw Error(i+" must use the documented ISO value format.");if(n.Min&&n.Max&&n.Min>n.Max)throw Error("Min must be on or before Max.");for(let i of["MinRangeDays","MaxRangeDays"])if(n[i]!==void 0&&(!Number.isInteger(Number(n[i]))||Number(n[i])<0))throw Error(i+" must be a non-negative whole number.");if(n.MinRangeDays&&n.MaxRangeDays&&Number(n.MinRangeDays)>Number(n.MaxRangeDays))throw Error("MinRangeDays must not exceed MaxRangeDays.");let m=e.range?[String(n.StartDate||""),String(n.EndDate||"")]:[String(n.Value||"")],h=JSON.stringify(m),l=h!==e.inputSignature;if(e.inputSignature=h,e.range?(e.start=m[0],e.end=m[1]):e.value=m[0],e.fields.forEach((i,f)=>{i.label.textContent=e.range?e.label+(f?" \u2014 end":" \u2014 start"):e.dateTime?e.label+(f?" \u2014 time":" \u2014 date"):e.label,i.input.disabled=!!n.IsDisabled,i.input.readOnly=!!n.IsReadOnly,i.input.required=!!n.IsRequired,i.input.placeholder=String(n.Placeholder||(e.timeOnly||e.dateTime&&f?e.cycle===12?"9:00 AM":"09:00":e.format))}),e.hint.textContent=e.timeOnly?(e.cycle===12?"h:mm AM/PM":"HH:mm")+" \xB7 local time":e.format+(e.dateTime?" \xB7 "+(e.cycle===12?"h:mm AM/PM":"HH:mm")+" local time":""),e.title.textContent=e.label,e.clearButton.disabled=!!n.IsDisabled||!!n.IsReadOnly,l||e.previousFormat!==e.format||e.previousCycle!==e.cycle){le(e);let i=m.some(Boolean);B(e,i?de(e,e.timeOnly?"":e.range?e.start:S(e.value),e.end||"",e.timeOnly?e.value:F(e.value)):""),e.previousFormat=e.format,e.previousCycle=e.cycle}e.monthSelect.replaceChildren();for(let i=0;i<12;i++)C(e.monthSelect,i,new Intl.DateTimeFormat(e.locale,{month:"long"}).format(new Date(2024,i,1)));e.calendar.tHead?.remove();let g=c("thead"),p=c("tr");for(let i=0;i<7;i++){let f=new Date(2024,0,7+(i+e.firstDay)%7),d=c("th","",new Intl.DateTimeFormat(e.locale,{weekday:"short"}).format(f));d.scope="col",d.abbr=new Intl.DateTimeFormat(e.locale,{weekday:"long"}).format(f),p.append(d)}if(g.append(p),e.calendar.prepend(g),e.presets.replaceChildren(),e.presets.hidden=!e.range,e.range)for(let i of Z(n.PresetsJson??n.Presets,"Presets")){if(!i.Label||!b(i.StartDate)||!b(i.EndDate))throw Error("Presets need Label, StartDate and EndDate.");let f=x(i.Label,()=>{e.draftStart=i.StartDate,e.draftEnd=i.EndDate,e.rangeNext="start",e.focusDate=e.draftStart,e.month=e.focusDate.slice(0,7),e.dialogError.textContent="",_(e),s(e)});f.disabled=!!oe(i.StartDate,i.EndDate,{...n,disabled:e.disabledDates}),e.presets.append(f)}e.isOpen&&(n.IsDisabled||n.IsReadOnly||l?k(e):(_(e),J(e),r?e.calendar.querySelector('[data-date="'+r+'"]')?.focus({preventScroll:!0}):o&&document.getElementById(o)?.focus({preventScroll:!0}),Y(e))),e.renderSignature=t}var ue=()=>me("DateTimePicker",we,Me);function Oe(e,t={},a={}){return ue(),X(e,"DateTimePicker",t,r=>({Change:o=>(r({Value:o}),a.Change?.(o)),ValidationChanged:(o,n)=>a.ValidationChanged?.(o,n),OpenChanged:o=>a.OpenChanged?.(o),Error:o=>a.Error?.(o)}),["DisabledDates"],[])}export{Oe as a};
@@ -0,0 +1 @@
1
+ function K(s,c,z){let g=!1,u=0,b=0,L=0,k=0,x=!1,l=new Set,h=new Map,j=s.style.position;getComputedStyle(s).position==="static"&&(s.style.position="relative");let f=document.createElement("div");f.className="blu-data-motion-exits",f.inert=!0,f.setAttribute("aria-hidden","true"),s.append(f);function w(){let e=z(),o=s.getBoundingClientRect();return x=e.length>80||new Set(e.map(r=>r.key)).size!==e.length,x?new Map:new Map(e.map(r=>{let a=r.element.getBoundingClientRect(),p=l.has(r.element)?getComputedStyle(r.element).translate.split(/\s+/).map(Number.parseFloat):[];return[r.key,{row:r,top:a.top-o.top-(p[1]||0),left:a.left-o.left-(p[0]||0),width:a.width,height:a.height,text:r.cells.map(i=>i.textContent||""),widths:r.cells.map(i=>i.getBoundingClientRect().width)}]}))}let d=w();function M(e,o,r,a=!1){l.add(e),c.animate(e,o,{duration:r,easing:"ease-in-out"},a?"fade":"instant").then(()=>{e.getAnimations().length||l.delete(e)})}function E(){for(let{element:e,timer:o}of h.values())clearTimeout(o),c.cancel(e),l.delete(e),e.remove();h.clear()}function T(){g||(u&&(cancelAnimationFrame(u),u=0,R()),d=w())}function R(){if(g)return;u=0;let e=w();if(e.size===d.size&&[...e].every(([i,n])=>{let t=d.get(i);return t&&t.row.element===n.row.element&&Math.abs(t.top-n.top)<1&&Math.abs(t.left-n.left)<1&&t.width===n.width&&t.height===n.height&&t.text.join("\0")===n.text.join("\0")}))return;let r=++L;clearTimeout(b),E();for(let i of l)c.cancel(i);if(l.clear(),x||performance.now()<k){d=e;return}let a=s.getBoundingClientRect(),p=e.size<=30&&d.size<=30;for(let[i,n]of e){let t=d.get(i),y=n.row.element;if(!t)M(y,[{opacity:0},{opacity:1}],450,!0);else{let m=t.top-n.top;p&&Math.abs(m)>1&&Math.abs(m)<a.height&&M(y,[{translate:`0 ${m}px`},{translate:"0 0"}],650),n.row.cells.forEach((v,A)=>{let F=t.row.cellKeys.indexOf(n.row.cellKeys[A]);if(F>=0&&t.text[F]!==n.text[A]){let H=getComputedStyle(v).backgroundColor;M(v,[{backgroundColor:H},{backgroundColor:"rgba(105, 88, 240, .18)",offset:.35},{backgroundColor:H}],1400)}})}}if(p&&c.mode!=="off")for(let[i,n]of d){if(e.has(i)||!n.width||n.top+n.height<0||n.top>a.height)continue;let t=document.createElement("div");t.className="blu-data-motion-exit",t.style.cssText=`left:${n.left}px;top:${n.top}px;width:${n.width}px;height:${n.height}px;grid-template-columns:${n.widths.map(m=>m+"px").join(" ")};`;for(let m of n.text){let v=document.createElement("span");v.textContent=m,t.append(v)}f.append(t);let y=()=>{h.get(i)?.element===t&&(clearTimeout(h.get(i).timer),c.cancel(t),l.delete(t),t.remove(),h.delete(i))};h.set(i,{element:t,timer:setTimeout(y,(c.resolveOptions?.({duration:450}).duration??450)+250)}),l.add(t),c.play(t,"fade",{phase:"exit",duration:450,easing:"ease-in-out"}).then(y)}d=e,b=window.setTimeout(()=>{!g&&L===r&&(d=w())},(c.resolveOptions?.({duration:650}).duration??650)+50)}function B(e){e.every(o=>f.contains(o.target)||o.target===f)||u||(u=requestAnimationFrame(R))}let $=new MutationObserver(B);$.observe(s,{subtree:!0,childList:!0,characterData:!0,attributes:!0,attributeFilter:["row-index","row-id","style"]}),s.addEventListener("click",T,!0);let C=new WeakMap;for(let e of[s,...s.querySelectorAll("*")])C.set(e,`${e.scrollLeft},${e.scrollTop}`);let S=e=>{let o=e.target;if(!(o instanceof Element))return;let r=`${o.scrollLeft},${o.scrollTop}`,a=C.get(o)||"0,0";if(C.set(o,r),a!==r){k=performance.now()+150,u&&cancelAnimationFrame(u),u=0,E();for(let p of l)c.cancel(p);l.clear(),d=w()}};return s.addEventListener("scroll",S,!0),{capture:T,destroy(){if(!g){g=!0,$.disconnect(),cancelAnimationFrame(u),clearTimeout(b),E();for(let e of l)c.cancel(e);l.clear(),s.removeEventListener("click",T,!0),s.removeEventListener("scroll",S,!0),f.remove(),s.style.position=j}}}}export{K as a};
File without changes
@@ -0,0 +1 @@
1
+ import{a as W,f as Y}from"./chunk-6T677NSC.js";function Q(e,r,i){let d=e.getAttribute("data-blu-surface-motion");e.setAttribute("data-blu-surface-motion",i);let M=i==="cascader"?".blu-cascader__popup":i==="tree-select"?".blu-tree-select__popup":i==="picker"?".blu-picker__popup":i==="select"?".blu-select__popup":i==="palette"?".blu-command__dialog":".blu-overlay",n=null,h=!1,b=!1,t=0,o=0,c=0,E=0,x=!1,a=null,m=[],L,T,s="",u="",y="",w="#18223066",p="none",H="1",F="1",R=[],g=e.ownerDocument.defaultView;function I(l){return i==="palette"?l.open:!l.hidden}function J(){return i!=="drawer"?i==="modal"?"scale":"slide-down":n?.dataset.placement==="left"?"slide-right":n?.dataset.placement==="bottom"?"slide-up":"slide-left"}function q(){if(!n||!I(n))return;let l=n.querySelector(".blu-overlay__panel")||n;L=n.getBoundingClientRect(),T=l.getBoundingClientRect();let f=g.getComputedStyle(n);if(s=f.font,u=f.backgroundColor,y=f.color,H=l===n?"1":f.opacity,F=g.getComputedStyle(l).opacity,i==="palette"){let A=g.getComputedStyle(n,"::backdrop");w=A.backgroundColor,p=A.backdropFilter}R=[n,...Array.from(n.querySelectorAll("*"))].map(A=>A.scrollTop)}function P(){g.cancelAnimationFrame(o),o=0}function V(){g.cancelAnimationFrame(E),E=0}function N(){++t,g.clearTimeout(c),c=0;for(let l of m)r.cancel(l);m=[],a?.remove(),a=null}function j(l,f){Object.assign(l.style,{position:"fixed",boxSizing:"border-box",inset:"auto",left:f.left+"px",top:f.top+"px",width:f.width+"px",height:f.height+"px",maxWidth:"none",maxHeight:"none",margin:"0",transform:"none"})}function K(l){if(l.ownerDocument.querySelector(".blu-overlay:not([hidden]):not([data-blu-exit-visual]), dialog[open]")||!L?.width||!L.height||!l.isConnected||l.querySelector("video,canvas,iframe"))return;let f=l.cloneNode(!0),A=[l,...Array.from(l.querySelectorAll("*"))],O=[f,...Array.from(f.querySelectorAll("*"))];O.forEach((v,_)=>{_&&v.hasAttribute("popover")&&(v.hidden=!0);for(let B of["id","name","autofocus","popover","aria-live","aria-labelledby","aria-describedby","aria-controls"])v.removeAttribute(B);if(v instanceof HTMLInputElement){let B=A[_];v.value=B.type==="password"?"":B.value,v.checked=B.checked}else(v instanceof HTMLTextAreaElement||v instanceof HTMLSelectElement)&&(v.value=A[_].value);v.style.pointerEvents="none"}),f.hidden=!1,f.inert=!0,f.setAttribute("aria-hidden","true");let D=l.parentElement;if(i==="modal"||i==="drawer")a=f,D.append(f);else{let v=l.ownerDocument.createElement("div");if(v.className=i==="palette"?"blu-command blu-motion-exit-surface":"blu-motion-exit-surface",v.style.cssText=`position:fixed;inset:0;width:100vw;height:100dvh;margin:0;padding:0;border:0;max-width:none;max-height:none;background:${i==="palette"?w:"transparent"};backdrop-filter:${i==="palette"?p:"none"};overflow:visible;pointer-events:none;`,i==="palette"){let _=l.ownerDocument.createElement("div");_.className=f.className,_.append(...Array.from(f.childNodes)),j(_,L),Object.assign(_.style,{background:u,color:y,font:s}),v.append(_)}else j(f,L),f.style.font=s,v.append(f);a=v,D.append(v)}if(a.dataset.bluExitVisual=i,a.inert=!0,a.setAttribute("aria-hidden","true"),a.style.pointerEvents="none",a.setAttribute("popover","manual"),a.showPopover)try{a.showPopover()}catch{a.removeAttribute("popover")}let C=a.querySelector(".blu-overlay__panel, .blu-command__dialog, .blu-select__popup, .blu-picker__popup")||a;T&&(i==="modal"||i==="drawer")&&j(C,T),C.style.opacity=F,O.forEach((v,_)=>{v.scrollTop=R[_]||0});let z=t,G=[r.animate(a,[{opacity:H},{opacity:0}],{phase:"exit",duration:450,easing:"ease-in-out"},"fade")];if(m=[a],i==="drawer"){let v=l.dataset.placement==="left"?"translateX(-18px)":l.dataset.placement==="bottom"?"translateY(18px)":"translateX(18px)";m.push(C),G.push(r.animate(C,[{transform:"none"},{transform:v}],{duration:450,easing:"ease-in-out"}))}c=g.setTimeout(()=>{!b&&z===t&&N()},(r.resolveOptions?.({duration:450}).duration??(r.mode==="full"?450:200))+250),Promise.all(G).finally(()=>{!b&&z===t&&N()})}let k=new ResizeObserver(()=>{h&&q()});function X(){if(b)return;let l=e.matches(M)?e:e.querySelector(M);if(n!==l&&(n&&k.unobserve(n),n=l,h=!1,n&&k.observe(n)),!n)return;let f=I(n);if(f===h)return;h=f,P(),V(),N();let A=n.querySelector(".blu-overlay__panel")||n;if(r.cancel(A),r.cancel(n),f){q();let O=t;if((i==="modal"||i==="drawer")&&!x){let z=e.ownerDocument.activeElement;E=g.requestAnimationFrame(()=>{E=g.requestAnimationFrame(()=>{E=0,!(b||!h||O!==t)&&(x=!0,A.contains(z)&&e.ownerDocument.activeElement===z&&A.focus({preventScroll:!0}))})})}let D=[r.play(A,J(),{duration:i==="drawer"?450:350,easing:"ease-out"})];A!==n&&D.push(r.play(n,"fade",{duration:280}));let C=()=>{b||!h||O!==t||(q(),o=g.requestAnimationFrame(C))};o=g.requestAnimationFrame(C),Promise.all(D).then(()=>{!b&&h&&O===t&&(P(),q())})}else r.mode!=="off"&&!e.closest('.blu-motion-off, [data-blu-motion="off"]')&&K(n)}let $=new MutationObserver(X);$.observe(e,{subtree:!0,childList:!0,attributes:!0,attributeFilter:["hidden","open"]});let S=()=>{h&&q()};return g.addEventListener("resize",S),g.addEventListener("scroll",S,!0),e.ownerDocument.addEventListener("pointerdown",S,!0),e.ownerDocument.addEventListener("keydown",S,!0),X(),{sync:X,capture:q,destroy(){if(!b&&(b=!0,P(),V(),$.disconnect(),k.disconnect(),N(),d===null?e.removeAttribute("data-blu-surface-motion"):e.setAttribute("data-blu-surface-motion",d),g.removeEventListener("resize",S),g.removeEventListener("scroll",S,!0),e.ownerDocument.removeEventListener("pointerdown",S,!0),e.ownerDocument.removeEventListener("keydown",S,!0),n)){r.cancel(n);let l=n.querySelector(".blu-overlay__panel");l&&r.cancel(l)}}}}function ee(e,r){let i=e.getAttribute("data-blu-component-motion");e.setAttribute("data-blu-component-motion","tree");let d=new Map,M=!1,n=new ResizeObserver(t=>{for(let o of t){let c=o.target,E=d.get(c);E&&(!c.hidden||c.style.display==="block")&&(E.height=c.getBoundingClientRect().height)}});function h(){if(!M){for(let[t,o]of d)e.contains(t)||(++o.revision,r.cancel(t),o.release(),n.unobserve(t),d.delete(t));for(let t of e.querySelectorAll(".blu-tree__group")){let o=d.get(t);if(!o){o={open:!t.hidden,height:t.getBoundingClientRect().height,revision:0,release(){}},d.set(t,o),n.observe(t);continue}let c=!t.hidden;if(o.open===c)continue;let E=o.height,x=++o.revision;if(o.open=c,r.cancel(t),o.release(),o.release=()=>{},t.parentElement?.closest("[hidden]"))continue;if(!(r.mode==="full"&&!t.closest(".blu-motion-off,[data-blu-motion=off],[data-blu-motion=reduced]"))){c&&r.play(t,"fade",{duration:350});continue}let m=W(t,["display","overflow","height"]),L=t.inert,T=t.getAttribute("aria-hidden");o.release=()=>{m(),t.inert=L,T===null?t.removeAttribute("aria-hidden"):t.setAttribute("aria-hidden",T)},c||(t.inert=!0,t.setAttribute("aria-hidden","true"),t.style.setProperty("display","block","important"));let s=c?t.scrollHeight:0;t.style.overflow="hidden",t.style.height=s+"px",r.animate(t,[{height:E+"px"},{height:s+"px"}],{duration:650,easing:"ease-in-out"}).then(()=>{!M&&o.revision===x&&(o.release(),o.release=()=>{},o.height=t.getBoundingClientRect().height)})}}}let b=new MutationObserver(h);return h(),b.observe(e,{subtree:!0,childList:!0,attributes:!0,attributeFilter:["hidden"]}),{destroy(){if(!M){M=!0,b.disconnect(),n.disconnect();for(let[t,o]of d)++o.revision,r.cancel(t),o.release();d.clear(),i===null?e.removeAttribute("data-blu-component-motion"):e.setAttribute("data-blu-component-motion",i)}}}}function ne(e,r){let i=e.getAttribute("data-blu-component-motion");e.setAttribute("data-blu-component-motion","notifications");let d=new Map,M=new Set,n=!1,h=0,b=0,t=e.ownerDocument.defaultView,o=s=>{let u=s.target.closest(".blu-notifications > .blu-notification");!u||!e.contains(u)||(s.type==="focusin"?u.onfocusin?.call(u,s):u.onfocusout?.call(u,s))},c=!("onfocusin"in e),E=!("onfocusout"in e);c&&e.addEventListener("focusin",o),E&&e.addEventListener("focusout",o);let x=()=>{for(let[s,u]of d)s.isConnected&&(u.rect=s.getBoundingClientRect(),u.opacity=t.getComputedStyle(s).opacity)},a=new ResizeObserver(x);function m(s,u){if(!u.rect.width||r.mode==="off"||e.closest(".blu-motion-off,[data-blu-motion=off]"))return;let y=s.cloneNode(!0);for(let p of[y,...y.querySelectorAll("*")])for(let H of["id","name","role","aria-live","aria-labelledby","aria-describedby","aria-controls","tabindex","autofocus"])p.removeAttribute(H);y.dataset.bluExitVisual="notification",y.inert=!0,y.setAttribute("aria-hidden","true");let w=u.rect;Object.assign(y.style,{position:"fixed",left:w.left+"px",top:w.top+"px",width:w.width+"px",height:w.height+"px",boxSizing:"border-box",margin:"0",zIndex:"1300",pointerEvents:"none",animation:"none",opacity:u.opacity}),e.append(y),M.add(y),r.animate(y,[{opacity:u.opacity},{opacity:0}],{phase:"exit",duration:450,easing:"ease-in-out"},"fade").then(()=>{y.remove(),M.delete(y)})}function L(){if(n)return;let s=Array.from(e.querySelectorAll(".blu-notifications > .blu-notification"));if(s.length===d.size&&s.every(p=>d.has(p)))return;let u=++b;t.cancelAnimationFrame(h);let y=[];for(let[p,H]of d)s.includes(p)||(r.cancel(p),a.unobserve(p),d.delete(p),m(p,H));for(let p of s){let H=d.get(p);r.cancel(p);let F=p.getBoundingClientRect();if(d.set(p,{rect:F,opacity:t.getComputedStyle(p).opacity}),a.observe(p),!H)y.push(r.play(p,"slide-up",{duration:450,easing:"ease-out"}));else{let R=H.rect.left-F.left,g=H.rect.top-F.top;(Math.abs(R)>.5||Math.abs(g)>.5||Number(H.opacity)<.99)&&y.push(r.animate(p,[{transform:`translate(${R}px,${g}px)`,opacity:H.opacity},{transform:"none",opacity:1}],{duration:450,easing:"ease-in-out"}))}}let w=()=>{n||u!==b||(x(),h=t.requestAnimationFrame(w))};h=t.requestAnimationFrame(w),Promise.all(y).then(()=>{!n&&u===b&&(t.cancelAnimationFrame(h),x())})}let T=new MutationObserver(L);return T.observe(e,{childList:!0,subtree:!0}),L(),t.addEventListener("resize",x),t.addEventListener("scroll",x,!0),{destroy(){if(!n){n=!0,++b,T.disconnect(),a.disconnect(),t.cancelAnimationFrame(h),t.removeEventListener("resize",x),t.removeEventListener("scroll",x,!0),c&&e.removeEventListener("focusin",o),E&&e.removeEventListener("focusout",o);for(let s of d.keys())r.cancel(s);d.clear();for(let s of M)r.cancel(s),s.remove();M.clear(),i===null?e.removeAttribute("data-blu-component-motion"):e.setAttribute("data-blu-component-motion",i)}}}}function ie(e,r){let i=e.getAttribute("data-blu-component-motion");e.setAttribute("data-blu-component-motion","field");let d=!1,M=0,n="",h="",b=e.getBoundingClientRect().height,t=new Map,o=e.style.overflow,c=null;function E(a=!1){if(d)return;for(let[w,p]of t)e.contains(w)||(p.destroy(),t.delete(w));for(let w of Array.from(e.querySelectorAll(".blu-text__action")))t.has(w)||t.set(w,Y(w,r));let m=e.querySelector(".blu-field__error"),L=m&&!m.hidden&&m.textContent||"",T=[e.textContent,L,e.querySelector("textarea")?.style.height].join("|");if(!a&&T===h)return;h=T;let s=e.getBoundingClientRect().height;r.cancel(e),e.style.overflow=o;let u=e.getBoundingClientRect().height,y=++M;!a&&b>0&&u>0&&Math.abs(b-u)>1&&(e.style.overflow="visible",r.animate(e,[{height:s===u?b+"px":s+"px"},{height:u+"px"}],{duration:280,easing:"ease-in-out"}).finally(()=>{!d&&y===M&&(e.style.overflow=o)})),b=u,!a&&L&&!n&&m&&(r.play(m,"fade",{duration:350}),c=e.querySelector(".blu-text, .blu-textarea, .blu-select__trigger, .blu-radio-group, .blu-choice"),c&&r.animate(c,[{transform:"translateX(0)"},{transform:"translateX(-3px)",offset:.22},{transform:"translateX(2px)",offset:.5},{transform:"translateX(-1px)",offset:.75},{transform:"translateX(0)"}],{duration:550,easing:"ease-in-out"})),!L&&c&&(r.cancel(c),c=null),!L&&m&&r.cancel(m),n=L}E(!0);let x=new MutationObserver(a=>{a.some(m=>m.type==="childList"||m.attributeName!=="style"||m.target.matches("textarea"))&&E()});return x.observe(e,{subtree:!0,childList:!0,attributes:!0,attributeFilter:["hidden","aria-invalid","data-invalid","disabled","style"]}),{sync:()=>E(),destroy(){if(d)return;d=!0,++M,x.disconnect(),r.cancel(e),e.style.overflow=o,c&&r.cancel(c);let a=e.querySelector(".blu-field__error");a&&r.cancel(a);for(let m of t.values())m.destroy();t.clear(),i===null?e.removeAttribute("data-blu-component-motion"):e.setAttribute("data-blu-component-motion",i)}}}export{Q as a,ee as b,ne as c,ie as d};