@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.
- package/README.md +11 -5
- package/dist/build-audit.json +234 -44
- package/dist/checkbox.css +1 -0
- package/dist/checkbox.d.ts +2 -0
- package/dist/checkbox.js +1 -0
- package/dist/chunk-2BSBXDOT.js +1 -0
- package/dist/chunk-4LHIQROI.js +0 -0
- package/dist/chunk-5ENZVZGF.js +0 -0
- package/dist/chunk-6T677NSC.js +1 -0
- package/dist/chunk-7CEOCZ5L.js +0 -0
- package/dist/chunk-7DXFNK7C.js +1 -0
- package/dist/chunk-AL2ETLJV.js +1 -0
- package/dist/chunk-BN3PDE5G.js +0 -0
- package/dist/chunk-CNIIMGT3.js +0 -0
- package/dist/chunk-CSTCEBEK.js +1 -0
- package/dist/chunk-DRZM2AL3.js +0 -0
- package/dist/chunk-EOKNLCNS.js +1 -0
- package/dist/chunk-EPPETNK6.js +1 -0
- package/dist/chunk-EPPSBHZR.js +1 -0
- package/dist/chunk-EPZGLHPD.js +0 -0
- package/dist/chunk-FNX33PDD.js +0 -0
- package/dist/{chunk-NTFHNL7T.js → chunk-G6OW4OZM.js} +1 -1
- package/dist/chunk-GS67ZBLI.js +1 -0
- package/dist/chunk-HO6CYWED.js +0 -0
- package/dist/{chunk-6EHKOVZK.js → chunk-HVR2UDFX.js} +1 -1
- package/dist/chunk-IJ62ILKE.js +0 -0
- package/dist/chunk-IKYBFMHI.js +1 -0
- package/dist/chunk-IO22GWON.js +0 -0
- package/dist/chunk-KVOA55NE.js +0 -0
- package/dist/{chunk-MZBB5ROJ.js → chunk-LF2HELEZ.js} +1 -1
- package/dist/chunk-MYVLBALF.js +1 -0
- package/dist/{chunk-UEOCR2C3.js → chunk-OLDA73XG.js} +2 -2
- package/dist/chunk-RWBLICYX.js +0 -0
- package/dist/chunk-RYD6RHRX.js +0 -0
- package/dist/chunk-T45FJNEQ.js +1 -0
- package/dist/chunk-TZSX4OTV.js +1 -0
- package/dist/chunk-UN2SLVFG.js +1 -0
- package/dist/{chunk-GK3INPAZ.js → chunk-V2YPIC6Z.js} +1 -1
- package/dist/chunk-V4ZQLQ7L.js +0 -0
- package/dist/chunk-VAM3FPCS.js +0 -0
- package/dist/chunk-VJVFHL6P.js +0 -0
- package/dist/chunk-VSTKXZYY.js +0 -0
- package/dist/chunk-W3H7XTA7.js +1 -0
- package/dist/chunk-WG4US4JH.js +1 -0
- package/dist/chunk-WGSTNXAQ.js +0 -0
- package/dist/chunk-WJHCVECU.js +1 -0
- package/dist/chunk-XVMJG26X.js +1 -0
- package/dist/chunk-Y4AXWTAD.js +0 -0
- package/dist/chunk-YCLR3IE3.js +0 -0
- package/dist/chunk-YLFXSHKZ.js +0 -0
- package/dist/chunk-ZDGZGAYG.js +0 -0
- package/dist/columns2.css +1 -0
- package/dist/columns2.d.ts +2 -0
- package/dist/columns2.js +1 -0
- package/dist/columns3.css +1 -0
- package/dist/columns3.d.ts +2 -0
- package/dist/columns3.js +1 -0
- package/dist/columns4.css +1 -0
- package/dist/columns4.d.ts +2 -0
- package/dist/columns4.js +1 -0
- package/dist/command-palette.js +1 -1
- package/dist/component-motion.css +39 -0
- package/dist/component-motion.d.ts +45 -0
- package/dist/component-motion.js +1 -0
- package/dist/content.js +1 -1
- package/dist/core.css +8 -0
- package/dist/core.js +1 -1
- package/dist/data-motion.css +4 -0
- package/dist/data-motion.d.ts +23 -0
- package/dist/data-motion.js +1 -0
- package/dist/data.css +63 -0
- package/dist/data.d.ts +1 -0
- package/dist/data.js +1 -1
- package/dist/date-picker.css +5 -5
- package/dist/date-picker.js +1 -1
- package/dist/date-range-picker.css +5 -5
- package/dist/date-range-picker.js +1 -1
- package/dist/date-time-picker.css +5 -5
- package/dist/date-time-picker.js +1 -1
- package/dist/draft-components.json +77 -0
- package/dist/drawer.js +1 -1
- package/dist/essentials.css +8 -0
- package/dist/feedback.js +1 -1
- package/dist/form-field.css +1 -0
- package/dist/form-field.d.ts +2 -0
- package/dist/form-field.js +1 -0
- package/dist/form-layout/choice.d.ts +15 -0
- package/dist/form-layout/layout.d.ts +12 -0
- package/dist/form-layout/select.d.ts +3 -0
- package/dist/form-layout/shared.d.ts +21 -0
- package/dist/form-layout/table.d.ts +20 -0
- package/dist/form-layout/text.d.ts +3 -0
- package/dist/form-layout/types.d.ts +151 -0
- package/dist/form-layout.css +62 -0
- package/dist/form-layout.d.ts +12 -0
- package/dist/form-layout.js +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -1
- package/dist/inputs.css +83 -20
- package/dist/inputs.d.ts +8 -0
- package/dist/inputs.js +1 -1
- package/dist/layout.css +63 -0
- package/dist/layout.d.ts +3 -0
- package/dist/layout.js +1 -1
- package/dist/modal.js +1 -1
- package/dist/motion/action-feedback.d.ts +14 -0
- package/dist/motion/border-glow.d.ts +12 -0
- package/dist/motion/button.d.ts +11 -0
- package/dist/motion/component-settings.d.ts +51 -0
- package/dist/motion/controller.d.ts +33 -0
- package/dist/motion/effects.d.ts +30 -0
- package/dist/motion/feedback.d.ts +6 -0
- package/dist/motion/loading.d.ts +9 -0
- package/dist/motion/optional.d.ts +35 -0
- package/dist/motion/photo.d.ts +7 -0
- package/dist/motion/presence.d.ts +12 -0
- package/dist/motion/scene.d.ts +10 -0
- package/dist/motion/screen.d.ts +6 -0
- package/dist/motion/scroll-reveal.d.ts +13 -0
- package/dist/motion/settings-group.d.ts +14 -0
- package/dist/motion/stagger.d.ts +12 -0
- package/dist/motion/structure.d.ts +18 -0
- package/dist/motion/tabs.d.ts +19 -0
- package/dist/motion/tokens.d.ts +11 -0
- package/dist/motion/value.d.ts +21 -0
- package/dist/motion/view-transition.d.ts +14 -0
- package/dist/motion-enhancers.d.ts +12 -0
- package/dist/motion-enhancers.js +1 -0
- package/dist/motion-settings.d.ts +3 -0
- package/dist/motion-settings.js +1 -0
- package/dist/motion.css +1076 -0
- package/dist/motion.d.ts +20 -0
- package/dist/motion.js +1 -0
- package/dist/native/date-picker.js +1 -1
- package/dist/native/date-range-picker.js +1 -1
- package/dist/native/date-time-picker.js +1 -1
- package/dist/native/form-layout.js +1 -0
- package/dist/native/time-picker.js +1 -1
- package/dist/native-components/form-layout.d.ts +1 -0
- package/dist/native-motion-components.d.ts +3 -0
- package/dist/native-motion-content.d.ts +1 -0
- package/dist/native-motion-foundations.d.ts +3 -0
- package/dist/native-motion-layout.d.ts +3 -0
- package/dist/native-motion-pilot.d.ts +34 -0
- package/dist/native-motion.d.ts +71 -0
- package/dist/notification.js +1 -1
- package/dist/pagination.js +1 -1
- package/dist/radio-button.css +1 -0
- package/dist/radio-button.d.ts +2 -0
- package/dist/radio-button.js +1 -0
- package/dist/radio-group.css +1 -0
- package/dist/radio-group.d.ts +2 -0
- package/dist/radio-group.js +1 -0
- package/dist/select.css +1 -0
- package/dist/select.d.ts +2 -0
- package/dist/select.js +1 -0
- package/dist/sidebar.js +1 -1
- package/dist/sizes.json +416 -112
- package/dist/skeleton.css +8 -0
- package/dist/styles.css +1213 -20
- package/dist/switch.css +1 -0
- package/dist/switch.d.ts +2 -0
- package/dist/switch.js +1 -0
- package/dist/table.css +1 -0
- package/dist/table.d.ts +2 -0
- package/dist/table.js +1 -0
- package/dist/text-area.css +1 -0
- package/dist/text-area.d.ts +2 -0
- package/dist/text-area.js +1 -0
- package/dist/text-input.css +1 -0
- package/dist/text-input.d.ts +2 -0
- package/dist/text-input.js +1 -0
- package/dist/time-picker.css +5 -5
- package/dist/time-picker.js +1 -1
- package/dist/tree-view.js +1 -1
- package/dist/web-motion/chip-ripple.d.ts +6 -0
- package/dist/web-motion/choice-ripple.d.ts +6 -0
- package/dist/web-motion/content.d.ts +9 -0
- package/dist/web-motion/data-rows.d.ts +12 -0
- package/dist/web-motion/fields.d.ts +6 -0
- package/dist/web-motion/navigation.d.ts +6 -0
- package/dist/web-motion/notifications.d.ts +6 -0
- package/dist/web-motion/select-ripple.d.ts +6 -0
- package/dist/web-motion/statistic.d.ts +13 -0
- package/dist/web-motion/surfaces.d.ts +10 -0
- package/dist/web-motion/tree.d.ts +6 -0
- package/docs/FORM-LAYOUT-ESSENTIALS.md +122 -0
- package/docs/PUBLISHING.md +129 -25
- package/draft-components.json +77 -0
- package/edition.json +44 -7
- package/npm-shrinkwrap.json +2 -2
- package/package.json +102 -10
- package/scripts/build-motion-css.mjs +36 -0
- package/scripts/build-motion-styles.mjs +29 -0
- package/scripts/build.mjs +20 -8
- package/scripts/motion-entries.mjs +2 -0
- package/src/checkbox.ts +2 -0
- package/src/columns2.ts +2 -0
- package/src/columns3.ts +2 -0
- package/src/columns4.ts +2 -0
- package/src/component-motion.ts +101 -0
- package/src/data-motion.ts +60 -0
- package/src/data.ts +1 -0
- package/src/form-field.ts +2 -0
- package/src/form-layout/choice.ts +82 -0
- package/src/form-layout/layout.ts +40 -0
- package/src/form-layout/select.ts +97 -0
- package/src/form-layout/shared.ts +57 -0
- package/src/form-layout/table.ts +86 -0
- package/src/form-layout/text.ts +73 -0
- package/src/form-layout/types.ts +59 -0
- package/src/form-layout.ts +12 -0
- package/src/index.ts +2 -0
- package/src/inputs.ts +8 -0
- package/src/layout.ts +3 -0
- package/src/motion/action-feedback.ts +38 -0
- package/src/motion/border-glow.ts +41 -0
- package/src/motion/button.ts +56 -0
- package/src/motion/component-settings.ts +147 -0
- package/src/motion/controller.ts +191 -0
- package/src/motion/effects.ts +75 -0
- package/src/motion/feedback.ts +41 -0
- package/src/motion/loading.ts +40 -0
- package/src/motion/optional.ts +123 -0
- package/src/motion/photo.ts +19 -0
- package/src/motion/presence.ts +44 -0
- package/src/motion/scene.ts +103 -0
- package/src/motion/screen.ts +15 -0
- package/src/motion/scroll-reveal.ts +49 -0
- package/src/motion/settings-group.ts +28 -0
- package/src/motion/stagger.ts +26 -0
- package/src/motion/structure.ts +75 -0
- package/src/motion/tabs.ts +105 -0
- package/src/motion/tokens.ts +2 -0
- package/src/motion/value.ts +61 -0
- package/src/motion/view-transition.ts +57 -0
- package/src/motion-enhancers.ts +12 -0
- package/src/motion-settings.ts +3 -0
- package/src/motion.ts +20 -0
- package/src/native-components/form-layout.ts +21 -0
- package/src/native-motion-components.ts +76 -0
- package/src/native-motion-content.ts +10 -0
- package/src/native-motion-foundations.ts +56 -0
- package/src/native-motion-layout.ts +35 -0
- package/src/native-motion-pilot.ts +151 -0
- package/src/native-motion.ts +188 -0
- package/src/radio-button.ts +2 -0
- package/src/radio-group.ts +2 -0
- package/src/runtime/date-picker.js +21 -12
- package/src/runtime/date-range-picker.js +21 -12
- package/src/runtime/date-time-picker.js +21 -12
- package/src/runtime/time-picker.js +21 -12
- package/src/select.ts +2 -0
- package/src/switch.ts +2 -0
- package/src/table.ts +2 -0
- package/src/text-area.ts +2 -0
- package/src/text-input.ts +2 -0
- package/src/types.ts +0 -12
- package/src/web-motion/chip-ripple.ts +31 -0
- package/src/web-motion/choice-ripple.ts +30 -0
- package/src/web-motion/content.ts +74 -0
- package/src/web-motion/data-rows.ts +106 -0
- package/src/web-motion/fields.ts +52 -0
- package/src/web-motion/navigation.ts +62 -0
- package/src/web-motion/notifications.ts +67 -0
- package/src/web-motion/select-ripple.ts +23 -0
- package/src/web-motion/statistic.ts +23 -0
- package/src/web-motion/surfaces.ts +137 -0
- package/src/web-motion/tree.ts +44 -0
- package/styles/checkbox.css +1 -0
- package/styles/columns2.css +1 -0
- package/styles/columns3.css +1 -0
- package/styles/columns4.css +1 -0
- package/styles/component-motion.css +39 -0
- package/styles/data-motion.css +4 -0
- package/styles/date-picker.css +5 -5
- package/styles/date-range-picker.css +5 -5
- package/styles/date-time-picker.css +5 -5
- package/styles/form-field.css +1 -0
- package/styles/form-layout.css +62 -0
- package/styles/motion-optional.css +15 -0
- package/styles/motion-presets.css +92 -0
- package/styles/motion-tokens.css +6 -0
- package/styles/motion.css +125 -0
- package/styles/radio-button.css +1 -0
- package/styles/radio-group.css +1 -0
- package/styles/select.css +1 -0
- package/styles/skeleton.css +8 -0
- package/styles/switch.css +1 -0
- package/styles/table.css +1 -0
- package/styles/text-area.css +1 -0
- package/styles/text-input.css +1 -0
- package/styles/time-picker.css +5 -5
- package/test/component-motion-settings.test.mjs +35 -0
- package/test/content-overlay-motion.test.mjs +36 -0
- package/test/form-layout.test.mjs +28 -0
- package/test/isolation.test.mjs +2 -2
- package/test/motion.test.mjs +215 -0
- package/dist/chunk-2TCNAQC6.js +0 -1
- package/dist/chunk-CTLZIWMX.js +0 -1
- package/dist/chunk-MHHJZYXW.js +0 -1
- package/dist/chunk-XDYBNO4P.js +0 -1
- /package/dist/{chunk-H7ETPJVW.js → chunk-3PODK22R.js} +0 -0
- /package/dist/{chunk-SIU7DSOA.js → chunk-KBWB4OIF.js} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(()=>{var ie=Object.defineProperty;var re=(c,l)=>{for(var n in l)ie(c,n,{get:l[n],enumerable:!0})};function f(c,l="",n){let e=document.createElement(c);return e.className=l,n!==void 0&&(e.textContent=n),e}var ae=0;function F(){return"blu-field-"+ ++ae+"-"+Math.random().toString(36).slice(2,8)}function D(c,l,n){n===void 0||n===!1||n===""?c.removeAttribute(l):c.setAttribute(l,String(n))}function _(c,l,n=!1){let e=f(n?"fieldset":"div","blu-field"),o=f(n?"legend":"label","blu-field__label"),a=f("div","blu-field__body"),g=f("div","blu-field__help"),u=f("div","blu-field__error"),i=l.Id||F();g.id=i+"-help",u.id=i+"-error",u.setAttribute("aria-live","polite"),e.append(o,a,g,u),c.append(e);function h(t,r){var p;e.className="blu-field blu-field--"+(t.Size||"Medium").toLowerCase()+(t.ExtendedClass?" "+t.ExtendedClass:""),e.dataset.invalid=String(!!t.Error),e.dataset.disabled=String(!!t.Disabled),o.textContent=(t.Label||"")+(t.Required?" *":""),o.hidden=!t.Label,!n&&r[0]&&((p=r[0]).id||(p.id=i),o.setAttribute("for",r[0].id)),g.textContent=t.Description||"",g.hidden=!t.Description,u.textContent=t.Error||"",u.hidden=!t.Error;let m=[t.Description?g.id:"",t.Error?u.id:""].filter(Boolean).join(" ");for(let b of r)D(b,"aria-describedby",m),D(b,"aria-invalid",t.Error?"true":void 0),D(b,"aria-required",t.Required?"true":void 0)}return{root:e,label:o,body:a,description:g,error:u,id:i,paint:h}}function V(c,l){let n=new AbortController,e=!1,o=c.closest("form");return o==null||o.addEventListener("reset",a=>queueMicrotask(()=>{!e&&!a.defaultPrevented&&l()}),{signal:n.signal}),{signal:n.signal,check(){if(e)throw Error("Component is destroyed.")},destroy(){e||(e=!0,n.abort(),c.remove())}}}function H(c,l){c.name=l.Name||"",c.disabled=!!l.Disabled,c.required=!!l.Required,"readOnly"in c&&(c.readOnly=!!l.ReadOnly),c.setCustomValidity(l.Error||"")}function I(c,l,n,e){return Number.isFinite(c)?Math.max(n,Math.min(e,c)):l}function te(c){let l=new URL(c,document.baseURI);if(!["http:","https:"].includes(l.protocol))throw Error("Adornment images must use an HTTP(S) or relative URL.");return l.href}function U(c,l,n,e){let o={...l},a=!1,g=_(c,o),u=f("label","blu-choice"),i=f("input","blu-choice__input"),h=f("span","blu-choice__mark"),t=f("span"),r=f("span","blu-choice__state");i.type=e==="radio"?"radio":"checkbox",e==="switch"&&i.setAttribute("role","switch"),u.classList.add("blu-choice--"+e),h.setAttribute("aria-hidden","true"),r.setAttribute("aria-hidden","true"),u.append(i,h,t,r),g.body.append(u);let m=V(g.root,b);function p(d){m.check(),a&&e==="radio"&&!("Checked"in d)&&(o.Checked=i.checked),o={...o,...d},g.paint(o,[i]),g.label.hidden=!0,g.label.removeAttribute("for"),H(i,o),i.checked=!!o.Checked,i.indeterminate=e==="checkbox"&&!!o.Indeterminate,i.value=o.Value||"on",D(i,"aria-readonly",o.ReadOnly?"true":void 0),t.textContent=(o.Label||"")+(o.Required?" *":""),r.textContent=i.checked?o.OnText||"":o.OffText||"",a=!0}function b(){p({Checked:!!l.Checked,Indeterminate:!!l.Indeterminate})}return i.addEventListener("click",d=>{o.ReadOnly&&d.preventDefault()},{signal:m.signal}),i.addEventListener("keydown",d=>{o.ReadOnly&&["ArrowLeft","ArrowRight","ArrowUp","ArrowDown"," "].includes(d.key)&&d.preventDefault()},{signal:m.signal}),i.addEventListener("change",()=>{var d;o.Checked=i.checked,o.Indeterminate=!1,r.textContent=i.checked?o.OnText||"":o.OffText||"",(d=n.Change)==null||d.call(n,i.checked)},{signal:m.signal}),i.addEventListener("blur",()=>{var d;return(d=n.Blur)==null?void 0:d.call(n)},{signal:m.signal}),p({}),{element:g.root,control:i,update:p,reset:b,getValue:()=>i.checked,focus:()=>i.focus(),validate:()=>i.reportValidity(),destroy:m.destroy}}function J(c,l={},n={}){return U(c,l,n,"checkbox")}function z(c,l={},n={}){return U(c,l,n,"switch")}function G(c,l,n={}){return U(c,l,n,"radio")}function W(c,l,n={}){let e={...l},o=[],a=_(c,e,!0),g=e.Name||F(),u=V(a.root,h);function i(t){var p,b;u.check();let r=!o.length||!!t.Options&&(t.Options.length!==e.Options.length||t.Options.some((d,k)=>{let T=e.Options[k];return d.Value!==T.Value||d.Label!==T.Label||d.Description!==T.Description||d.Disabled!==T.Disabled})),m=(p=o.find(d=>d===document.activeElement))==null?void 0:p.value;if(e={...e,...t},new Set(e.Options.map(d=>d.Value)).size!==e.Options.length)throw Error("Radio option values must be unique.");a.body.className="blu-radio-group blu-radio-group--"+(e.Direction||"Vertical").toLowerCase(),r&&(a.body.replaceChildren(),o=e.Options.map((d,k)=>{let T=f("label","blu-choice blu-choice--radio"),w=f("input","blu-choice__input"),x=f("span","blu-choice__mark"),C=f("span");w.type="radio",w.id=a.id+"-"+k,w.value=d.Value,x.setAttribute("aria-hidden","true");let S=f("span","",d.Label);if(S.id=w.id+"-label",C.append(S),w.setAttribute("aria-labelledby",S.id),d.Description){let M=f("small","blu-choice__description",d.Description);M.id=w.id+"-description",C.append(M)}return T.append(w,x,C),a.body.append(T),w.onchange=()=>{var M;w.checked&&(e.Value=w.value,(M=n.Change)==null||M.call(n,w.value))},w.onclick=M=>{e.ReadOnly&&M.preventDefault()},w.onkeydown=M=>{e.ReadOnly&&["ArrowLeft","ArrowRight","ArrowUp","ArrowDown"," "].includes(M.key)&&M.preventDefault()},w.onblur=()=>{var M;return(M=n.Blur)==null?void 0:M.call(n)},w})),a.paint(e,o),o.forEach((d,k)=>{H(d,e),d.name=e.Name||g,d.disabled=!!e.Disabled||!!e.Options[k].Disabled,d.checked=d.value===e.Value,D(d,"aria-readonly",e.ReadOnly?"true":void 0),e.Options[k].Description&&D(d,"aria-describedby",[d.getAttribute("aria-describedby"),d.id+"-description"].filter(Boolean).join(" "))}),r&&m!==void 0&&((b=o.find(d=>d.value===m&&!d.disabled)||o.find(d=>d.checked&&!d.disabled)||o.find(d=>!d.disabled))==null||b.focus())}function h(){i({Value:l.Value||""})}return i({}),{element:a.root,update:i,reset:h,getValue:()=>{var t;return((t=o.find(r=>r.checked))==null?void 0:t.value)||""},focus:()=>{var t;return(t=o.find(r=>r.checked&&!r.disabled)||o.find(r=>!r.disabled))==null?void 0:t.focus()},validate:()=>o.filter(t=>!t.disabled).every(t=>t.reportValidity()),destroy:u.destroy}}function $(c,l={},n={}){let e={...l},o=!1,a=_(c,e),g=f("div","blu-text"),u=f("input","blu-text__input"),i=f("span","blu-text__adornment"),h=f("span","blu-text__adornment"),t=f("button","blu-text__action","\xD7"),r=f("button","blu-text__action","Show");t.type=r.type="button",t.setAttribute("aria-label","Clear "+(e.Label||"text")),g.append(i,u,h,t,r),a.body.append(g);let m=V(a.root,w),p=new WeakMap;function b(x,C){if(p.get(x)!==(C==null?void 0:C.Kind)&&x.replaceChildren(),x.removeAttribute("role"),x.removeAttribute("aria-label"),x.removeAttribute("aria-hidden"),x.hidden=!C,!C){p.delete(x);return}if(p.set(x,C.Kind),C.Kind==="Image"){let S=x.querySelector("img")||f("img"),M=te(C.Src);S.src!==M&&(S.src=M),S.alt=C.Alt,S.parentNode||x.append(S)}else if(C.Kind==="Action"){let S=x.querySelector("button")||f("button","blu-text__action");S.type="button",S.textContent=C.Text,S.setAttribute("aria-label",C.Label),S.disabled=!!e.Disabled||!!e.ReadOnly,S.onclick=()=>{var M;return(M=n.Action)==null?void 0:M.call(n,C.Key,u.value)},S.parentNode||x.append(S)}else x.textContent=C.Text,C.Kind==="Icon"&&(D(x,"role",C.Label?"img":void 0),D(x,"aria-label",C.Label),D(x,"aria-hidden",C.Label?void 0:"true"))}function d(){t.hidden=!e.Clearable||!u.value||!!e.ReadOnly,r.hidden=!e.RevealPassword||e.Type!=="password"}function k(x){m.check(),e={...e,...x},a.paint(e,[u]),H(u,e),u.type=e.Type==="password"&&o?"text":e.Type||"text",u.value!==(e.Value||"")&&(u.value=e.Value||""),u.placeholder=e.Placeholder||"",D(u,"maxlength",e.MaxLength===void 0?void 0:Math.max(0,Math.floor(e.MaxLength))),D(u,"autocomplete",e.Autocomplete),b(i,e.Leading),b(h,e.Trailing),t.disabled=r.disabled=!!e.Disabled,t.setAttribute("aria-label","Clear "+(e.Label||"text")),r.textContent=o?"Hide":"Show",r.setAttribute("aria-label",o?"Hide password":"Show password"),r.setAttribute("aria-pressed",String(o)),d()}function T(){var x;e.Value=u.value,d(),(x=n.Change)==null||x.call(n,u.value)}function w(){o=!1,k({Value:l.Value||""})}return u.addEventListener("input",T,{signal:m.signal}),u.addEventListener("blur",()=>{var x;return(x=n.Blur)==null?void 0:x.call(n)},{signal:m.signal}),t.addEventListener("click",()=>{u.value="",T(),u.focus()},{signal:m.signal}),r.addEventListener("click",()=>{o=!o,k({}),u.focus()},{signal:m.signal}),k({}),{element:a.root,control:u,update:k,reset:w,getValue:()=>u.value,focus:()=>u.focus(),validate:()=>u.reportValidity(),destroy:m.destroy}}function Z(c,l={},n={}){let e={...l},o=_(c,e),a=f("textarea","blu-textarea"),g=f("div","blu-field__count");g.id=o.id+"-count",o.body.append(a,g);let u=V(o.root,t);function i(){g.hidden=!e.ShowCount,g.textContent=a.value.length+(e.MaxLength===void 0?" characters":" / "+e.MaxLength),a.style.maxHeight=e.AutoGrow?I(e.MaxHeight,320,80,2e3)+"px":"",a.style.resize=e.AutoGrow?"none":"vertical",a.style.height="",e.AutoGrow&&(a.style.height=Math.min(a.scrollHeight+2,I(e.MaxHeight,320,80,2e3))+"px")}function h(p){u.check(),e={...e,...p},o.paint(e,[a]),H(a,e),a.rows=Math.floor(I(e.Rows,4,1,30)),a.placeholder=e.Placeholder||"",D(a,"maxlength",e.MaxLength===void 0?void 0:Math.max(0,Math.floor(e.MaxLength))),a.value!==(e.Value||"")&&(a.value=e.Value||""),e.ShowCount&&D(a,"aria-describedby",[a.getAttribute("aria-describedby"),g.id].filter(Boolean).join(" ")),i()}function t(){h({Value:l.Value||""})}a.addEventListener("input",()=>{var p;e.Value=a.value,i(),(p=n.Change)==null||p.call(n,a.value)},{signal:u.signal}),a.addEventListener("blur",()=>{var p;return(p=n.Blur)==null?void 0:p.call(n)},{signal:u.signal});let r=0,m=typeof ResizeObserver!="undefined"?new ResizeObserver(p=>{let b=p[0].contentRect.width;b!==r&&(r=b,i())}):void 0;return m==null||m.observe(o.root),h({}),{element:o.root,control:a,update:h,reset:t,getValue:()=>a.value,focus:()=>a.focus(),validate:()=>a.reportValidity(),destroy(){m==null||m.disconnect(),u.destroy()}}}function Q(c,l,n={}){let e={...l},o=!1,a=-1,g="",u=0,i=_(c,e),h=f("div","blu-select"),t=f("select","blu-select__native"),r=f("button","blu-select__trigger"),m=f("button","blu-text__action","\xD7"),p=f("div","blu-select__popup"),b=f("input","blu-select__search"),d=f("div","blu-select__list"),k=f("p","blu-field__help","No matching options");t.tabIndex=-1,t.setAttribute("aria-hidden","true"),t.dataset.enhanced="true",r.type=m.type="button",r.id=i.id,r.setAttribute("role","combobox"),r.setAttribute("aria-haspopup","listbox"),d.id=i.id+"-list",d.setAttribute("role","listbox"),r.setAttribute("aria-controls",d.id),b.type="search",b.placeholder="Search options",b.setAttribute("role","combobox"),b.setAttribute("aria-autocomplete","list"),b.setAttribute("aria-controls",d.id),p.hidden=!0,p.append(b,d,k),h.append(t,r,m,p),i.body.append(h);let T=typeof p.showPopover=="function";T&&p.setAttribute("popover","manual");let w=V(i.root,L),x=[];function C(){if(!o||!T)return;let s=r.getBoundingClientRect(),y=window.innerHeight-s.bottom-12,E=s.top-12,A=y<220&&E>y,O=Math.min(320,Math.max(100,A?E:y));p.style.cssText=`position:fixed;inset:auto;margin:0;left:${Math.max(8,Math.min(s.left,window.innerWidth-s.width-8))}px;width:${Math.min(s.width,window.innerWidth-16)}px;max-height:${O}px;${A?"bottom:"+(window.innerHeight-s.top+6):"top:"+(s.bottom+6)}px;`}function S(s){a=s,d.querySelectorAll("[role=option]").forEach(E=>{let A=Number(E.dataset.index)===a;E.dataset.active=String(A),A&&E.scrollIntoView({block:"nearest"})});let y=a<0?void 0:i.id+"-option-"+a;D(r,"aria-activedescendant",o?y:void 0),D(b,"aria-activedescendant",o?y:void 0)}function M(){var y,E;x=e.Options.map((A,O)=>O).filter(A=>e.Options[A].Label.toLocaleLowerCase().includes(b.value.toLocaleLowerCase())),d.replaceChildren();for(let A of x){let O=e.Options[A],R=f("div","blu-select__option",O.Label);R.id=i.id+"-option-"+A,R.setAttribute("role","option"),R.dataset.index=String(A),R.setAttribute("aria-selected",String(O.Value===t.value)),R.setAttribute("aria-disabled",String(!!O.Disabled)),O.Description&&R.append(f("small","blu-choice__description",O.Description)),R.onpointerdown=q=>q.preventDefault(),R.onclick=()=>{O.Disabled||P(A)},d.append(R)}k.hidden=!!x.length;let s=x.filter(A=>!e.Options[A].Disabled);S(s.includes(a)?a:(E=(y=s.find(A=>e.Options[A].Value===t.value))!=null?y:s[0])!=null?E:-1)}function v(s,y=!0){s&&(e.Disabled||e.ReadOnly)||(o=s,r.setAttribute("aria-expanded",String(o)),b.setAttribute("aria-expanded",String(o)),o?(p.hidden=!1,T&&!p.matches(":popover-open")&&p.showPopover(),b.value="",a=-1,M(),C(),e.Searchable&&b.focus()):(T&&p.matches(":popover-open")&&p.hidePopover(),p.hidden=!0,S(-1),y&&r.focus()))}function P(s){var y;e.Value=s<0?"":e.Options[s].Value,t.value=e.Value,B(),v(!1),(y=n.Change)==null||y.call(n,e.Value)}function B(){var s;r.textContent=((s=e.Options.find(y=>y.Value===t.value))==null?void 0:s.Label)||e.Placeholder||"Choose an option",r.dataset.placeholder=String(!t.value),m.hidden=!e.Clearable||!t.value||!!e.ReadOnly,t.validity.valid&&!e.Error&&(i.error.hidden=!0,i.error.textContent="",i.paint(e,[r]))}function N(s){if(w.check(),e={...e,...s},e.Options.some(E=>!E.Value)||new Set(e.Options.map(E=>E.Value)).size!==e.Options.length)throw Error("Select option values must be non-empty and unique.");H(t,e),i.paint(e,[r]),t.id=i.id+"-native";let y=f("option","",e.Placeholder||"Choose an option");y.value="",t.replaceChildren(y,...e.Options.map(E=>{let A=f("option","",E.Label);return A.value=E.Value,A.disabled=!!E.Disabled,A})),t.value=e.Options.some(E=>E.Value===e.Value)?e.Value:"",e.Value=t.value,r.disabled=m.disabled=!!e.Disabled,D(r,"aria-readonly",e.ReadOnly?"true":void 0),m.setAttribute("aria-label","Clear "+(e.Label||"selection")),b.setAttribute("aria-label","Search "+(e.Label||"options")),d.setAttribute("aria-label",e.Label||"Options"),b.hidden=!e.Searchable,e.Disabled||e.ReadOnly?v(!1,!1):o&&(M(),C()),r.setAttribute("aria-expanded",String(o)),B()}function j(s){var A;if(e.Disabled||e.ReadOnly)return;let y=x.filter(O=>!e.Options[O].Disabled),E=y.indexOf(a);if(s.key==="Escape"&&o)s.preventDefault(),v(!1);else if(s.key==="Tab")v(!1,!1);else if(["ArrowDown","ArrowUp","Home","End"].includes(s.key)){if(!o){s.preventDefault(),v(!0);return}s.preventDefault();let O=s.key==="Home"?0:s.key==="End"?y.length-1:Math.max(0,Math.min(y.length-1,E+(s.key==="ArrowDown"?1:-1)));S((A=y[O])!=null?A:-1)}else if(s.key==="Enter"||s.key===" "&&s.target!==b)s.preventDefault(),o?a>=0&&P(a):v(!0);else if(s.key.length===1&&!s.ctrlKey&&!s.metaKey&&s.target!==b){s.preventDefault(),o||v(!0),g=Date.now()-u>650?s.key:g+s.key,u=Date.now();let O=x.find(R=>!e.Options[R].Disabled&&e.Options[R].Label.toLocaleLowerCase().startsWith(g.toLocaleLowerCase()));O!==void 0&&S(O)}}function L(){N({Value:l.Value||""}),v(!1,!1)}return r.addEventListener("click",()=>v(!o),{signal:w.signal}),m.addEventListener("click",()=>P(-1),{signal:w.signal}),h.addEventListener("keydown",j,{signal:w.signal}),b.addEventListener("input",M,{signal:w.signal}),document.addEventListener("pointerdown",s=>{o&&!i.root.contains(s.target)&&v(!1,!1)},{signal:w.signal}),h.addEventListener("focusout",s=>{var y;h.contains(s.relatedTarget)||(v(!1,!1),(y=n.Blur)==null||y.call(n))},{signal:w.signal}),window.addEventListener("resize",C,{signal:w.signal}),window.addEventListener("scroll",C,{signal:w.signal,capture:!0}),t.addEventListener("invalid",s=>{s.preventDefault(),D(r,"aria-invalid","true"),i.error.textContent=t.validationMessage,i.error.hidden=!1,D(r,"aria-describedby",i.error.id),r.focus()},{signal:w.signal}),t.addEventListener("change",()=>{var s;e.Value=t.value,B(),(s=n.Change)==null||s.call(n,t.value)},{signal:w.signal}),N({}),{element:i.root,control:t,update:N,reset:L,getValue:()=>t.value,focus:()=>r.focus(),validate:()=>t.reportValidity(),destroy(){v(!1,!1),w.destroy()}}}function le(c){let l=[...c.Rows],n=c.SortKey;n&&c.Columns.some(g=>g.Key===n&&g.Sortable)&&l.sort((g,u)=>{let i=g[n],h=u[n];if(i==null||h==null)return i==null?h==null?0:1:-1;let t=typeof i=="number"&&typeof h=="number"?i-h:String(i).localeCompare(String(h),void 0,{numeric:!0,sensitivity:"base"});return c.SortDirection==="Descending"?-t:t});let e=c.PageSize?Math.floor(I(c.PageSize,10,1,1e4)):Math.max(1,l.length),o=Math.max(1,Math.ceil(l.length/e)),a=Math.floor(I(c.Page,1,1,o));return{rows:l.slice((a-1)*e,a*e),page:a,pages:o,total:l.length,start:l.length?(a-1)*e+1:0,end:Math.min(a*e,l.length)}}function X(c,l,n={}){let e={...l},o=!1,a=f("div","blu-table"),g=f("div","blu-table__scroll"),u=f("table"),i=f("caption"),h=f("thead"),t=f("tbody"),r=f("div","blu-table__footer"),m=f("span"),p=f("button","blu-table-button","Previous"),b=f("button","blu-table-button","Next"),d="";i.id=F(),g.tabIndex=0,g.setAttribute("role","region"),g.setAttribute("aria-labelledby",i.id),p.type=b.type="button",m.setAttribute("role","status"),r.append(m,p,b),u.append(i,h,t),g.append(u),a.append(g,r),c.append(a);function k(T){var M,v,P,B,N,j;if(o)throw Error("Component is destroyed.");if(e={...e,...T},!e.Columns.length)throw Error("Table needs at least one column.");if(new Set(e.Columns.map(L=>L.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),u.setAttribute("aria-busy",String(!!e.Loading)),i.textContent=e.Caption;let w=document.activeElement instanceof HTMLElement&&a.contains(document.activeElement)?document.activeElement.dataset.focusKey:void 0,x=document.activeElement===b?b:document.activeElement===p?p:void 0,C=JSON.stringify([e.Columns.map(L=>[L.Key,L.Header,!!L.Sortable,L.Align||"Left"]),!!((M=e.Actions)!=null&&M.length)]);if(C!==d){d=C,h.replaceChildren();let L=f("tr");h.append(L);for(let s of e.Columns){let y=f("th");if(y.scope="col",y.style.textAlign=(s.Align||"Left").toLowerCase(),s.Sortable){let E=f("button","blu-table__sort",s.Header);E.type="button",E.dataset.focusKey="sort-"+s.Key;let A=f("span");A.setAttribute("aria-hidden","true"),E.append(A),E.onclick=()=>{var R;let O=e.SortKey===s.Key&&e.SortDirection!=="Descending"?"Descending":"Ascending";k({SortKey:s.Key,SortDirection:O,Page:1}),(R=n.SortChanged)==null||R.call(n,s.Key,O)},y.append(E)}else y.textContent=s.Header;L.append(y)}if((v=e.Actions)!=null&&v.length){let s=f("th","","Actions");s.scope="col",L.append(s)}}e.Columns.forEach((L,s)=>{if(!L.Sortable)return;let y=h.rows[0].cells[s];y.setAttribute("aria-sort",e.SortKey===L.Key?(e.SortDirection||"Ascending").toLowerCase():"none"),y.querySelector("span").textContent=e.SortKey===L.Key?e.SortDirection==="Descending"?"\u2193":"\u2191":"\u2195"});let S=le(e);if(e.Page=S.page,t.replaceChildren(),e.Loading||!S.rows.length){let L=f("tr"),s=f("td","blu-table__empty",e.Loading?"Loading records\u2026":e.EmptyMessage||"No records yet.");s.colSpan=e.Columns.length+((P=e.Actions)!=null&&P.length?1:0),L.append(s),t.append(L)}else for(let[L,s]of S.rows.entries()){let y=f("tr");for(let E of e.Columns){let A=f("td");A.style.textAlign=(E.Align||"Left").toLowerCase(),A.textContent=E.Format?E.Format(s[E.Key],s):String((B=s[E.Key])!=null?B:"\u2014"),y.append(A)}if((N=e.Actions)!=null&&N.length){let E=f("td"),A=f("div","blu-table__actions");for(let O of e.Actions){let R=f("button","blu-table-button",O.Label);R.type="button",R.disabled=typeof O.Disabled=="function"?O.Disabled(s):!!O.Disabled,R.dataset.focusKey="row-"+String(e.RowKey?s[e.RowKey]:L)+"-"+O.Key,e.RowKey&&R.setAttribute("aria-label",O.Label+" "+String(s[e.RowKey])),R.onclick=()=>{var q;return(q=n.RowAction)==null?void 0:q.call(n,O.Key,s)},A.append(R)}E.append(A),y.append(E)}t.append(y)}m.textContent=e.Loading?"Loading records\u2026":`${S.start}\u2013${S.end} of ${S.total} records`,p.hidden=b.hidden=!e.PageSize,p.disabled=!!e.Loading||S.page<=1,b.disabled=!!e.Loading||S.page>=S.pages,p.onclick=()=>{var L;k({Page:S.page-1}),(L=n.PageChanged)==null||L.call(n,e.Page)},b.onclick=()=>{var L;k({Page:S.page+1}),(L=n.PageChanged)==null||L.call(n,e.Page)},w&&((j=Array.from(a.querySelectorAll("[data-focus-key]")).find(L=>L.dataset.focusKey===w))==null||j.focus()),!e.Loading&&e.PageSize&&(x===b&&b.disabled?(p.disabled?g:p).focus():x===p&&p.disabled&&(b.disabled?g:b).focus())}try{k({})}catch(T){throw a.remove(),T}return{element:a,update:k,getState:()=>({Page:e.Page||1,SortKey:e.SortKey,SortDirection:e.SortDirection||"Ascending"}),destroy(){o||(o=!0,a.remove())}}}var ee={};re(ee,{getAppearance:()=>de,mountAppearanceSelector:()=>ce,setAppearance:()=>se});(function(c){"use strict";if(c.BluUITheme&&c.BluUITheme.version==="1.0.0")return;var l="bluui:appearance:v1",n=c.matchMedia("(prefers-color-scheme: dark)"),e="System";function o(t){var r=String(t||"System").toLowerCase();if(r!=="system"&&r!=="light"&&r!=="dark")throw new Error("Mode must be Light, Dark or System.");return r.charAt(0).toUpperCase()+r.slice(1)}function a(){try{return o(c.localStorage.getItem(l))}catch(t){return"System"}}function g(){return{Mode:e,EffectiveMode:e==="System"?n.matches?"Dark":"Light":e}}function u(){var t=g(),r=document.documentElement;return r.setAttribute("data-bluui-mode",t.Mode.toLowerCase()),r.setAttribute("data-bluui-theme",t.EffectiveMode.toLowerCase()),document.querySelectorAll("[data-bluui-theme-select]").forEach(function(m){m.value=e}),c.dispatchEvent(new CustomEvent("bluui:themechange",{detail:t})),t}function i(t,r){if(e=o(t),r!==!1)try{c.localStorage.setItem(l,e)}catch(m){}return u()}function h(t){if(!t)return null;var r=t.querySelector("[data-bluui-theme-select]");if(r)return r.value=e,r;var m=document.createElement("label");m.className="blu-theme-control";var p=document.createElementNS("http://www.w3.org/2000/svg","svg");p.setAttribute("viewBox","0 0 24 24"),p.setAttribute("width","17"),p.setAttribute("height","17"),p.setAttribute("aria-hidden","true"),p.setAttribute("focusable","false");var b=document.createElementNS("http://www.w3.org/2000/svg","path");b.setAttribute("d","M12 3a9 9 0 1 0 0 18V3Z M12 3a9 9 0 0 1 0 18"),b.setAttribute("fill","none"),b.setAttribute("stroke","currentColor"),b.setAttribute("stroke-width","1.7"),p.appendChild(b);var d=document.createElement("select");return d.setAttribute("data-bluui-theme-select",""),d.setAttribute("aria-label","Appearance"),["System","Light","Dark"].forEach(function(k){var T=document.createElement("option");T.value=k,T.textContent=k,d.appendChild(T)}),d.value=e,d.addEventListener("change",function(){i(d.value)}),m.appendChild(p),m.appendChild(d),t.appendChild(m),d}c.BluUITheme={version:"1.0.0",setMode:i,getMode:g,mountSelector:h},e=a(),n.addEventListener?n.addEventListener("change",function(){e==="System"&&u()}):n.addListener(function(){e==="System"&&u()}),c.addEventListener("storage",function(t){(t.key===l||t.key===null)&&(e=a(),u())}),u()})(window);function Y(){if(typeof window=="undefined")throw new Error("Set appearance in the browser.");return window.BluUITheme}function se(c,l=!0){return Y().setMode(c,l)}function de(){return Y().getMode()}function ce(c){return Y().mountSelector(c)}function ue(c){let l=new Map,n=new WeakMap;function e(u){let i=l.get(u);i&&(i.instance.destroy(),l.delete(u),n.get(i.host)===u&&(n.delete(i.host),delete i.host.dataset.bluCommunityReady))}function o(u,i,h,t,r){var m;try{if(!r)throw Error("Owner key is required.");let p=document.getElementById(i);if(!p)throw Error("Community component host was not found.");let b=n.get(p);b&&b!==r&&e(b);let d=l.get(r);d&&(d.host!==p||d.kind!==u)&&e(r),u==="BluGridBasic"&&(h={...h},"RowsJson"in h&&(h.Rows=JSON.parse(h.RowsJson),delete h.RowsJson),"ColumnsJson"in h&&(h.Columns=JSON.parse(h.ColumnsJson),delete h.ColumnsJson));let k=l.get(r);if(k)return k.instance.update(h),"";let T=c[u];if(typeof T!="function")throw Error("Unknown Community component.");let w=T(p,h,t);return l.set(r,{host:p,kind:u,instance:w}),n.set(p,r),p.dataset.bluCommunityReady="true",""}catch(p){let b=p instanceof Error?p.message:String(p);return(m=t==null?void 0:t.Error)==null||m.call(t,b),b}}function a(u,i){let h={...u},t=h.HostId,r=h.OwnerKey;delete h.HostId,delete h.OwnerKey;try{return h.Columns=JSON.parse(h.ColumnsJson).map(m=>(m.Width===0&&delete m.Width,m.Header||delete m.Header,m)),delete h.ColumnsJson,o("BluGridBasic",t,h,{Ready:()=>i.EmitReady(r),RowClicked:m=>i.EmitRowClicked(JSON.stringify(m)),SelectionChanged:m=>i.EmitSelectionChanged(JSON.stringify(m)),Error:m=>i.EmitError(m)},r)}catch(m){let p=m instanceof Error?m.message:String(m);return i.EmitError(p),p}}let g={syncGrid:a,version:"0.2.0",sync:o,destroy:e,clearSelection:u=>{let i=l.get(u);return i!=null&&i.instance.clearSelection?(i.instance.clearSelection(),""):"Grid instance was not found."},...ee};return Object.assign(g,{register:u=>Object.assign(c,u)})}function ne(c){let l=window;l.BluUICommunity?l.BluUICommunity.register(c):l.BluUICommunity=ue(c)}var K=c=>(l,n,e)=>{let o=c(l,oe(n),e);return{...o,update:a=>o.update(oe(a))}},oe=c=>{let l={...c};for(let n of["Options","Rows","Columns","Actions","Leading","Trailing"])n+"Json"in l&&(l[n]=JSON.parse(String(l[n+"Json"]||(["Leading","Trailing"].includes(n)?"null":"[]"))),delete l[n+"Json"]);return l};ne({Checkbox:K(J),TextInput:K($),TextArea:K(Z),RadioButton:K(G),RadioGroup:K(W),Switch:K(z),Select:K(Q),Table:K(X)});})();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";(()=>{var C=typeof window=="undefined"?globalThis:window,Z="__bluuiCommunityModulesV1",ee=C[Z]||(C[Z]={families:Object.create(null)}),W=C.BluUICommunityRuntime&&!Object.isFrozen(C.BluUICommunityRuntime)?C.BluUICommunityRuntime:Object.assign({},C.BluUICommunityRuntime||{});C.BluUICommunityRuntime=W;function te(e,t){return ee.families[e]||(ee.families[e]=t())}function ne(e,t){return W[e]||(W[e]=t())}var _=te("advanced",()=>({instances:new Map,serial:0})),ye=()=>`blu-advanced-${++_.serial}`;function l(e,t,n){let r=document.createElement(e);return t&&(r.className=t),n!==void 0&&(r.textContent=String(n)),r}function c(e,t,n){return n==null?e.removeAttribute(t):e.setAttribute(t,String(n)),e}function O(e,t,n="blu-picker__button"){let r=l("button",n,e);return r.type="button",r.addEventListener("click",t),r}function s(e,t,...n){var r,i;if(!e.dead)try{Promise.resolve((i=(r=e.events)[t])==null?void 0:i.call(r,...n)).catch(a=>$(e,a))}catch(a){$(e,a)}}function $(e,t){if(e.dead)return;let n=(t==null?void 0:t.message)||String(t);e.notice.textContent=n,e.lastError!==n&&(e.lastError=n,s(e,"Error",n))}function ae(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 ge(e,t,n){let r=i=>{var m;let a=_.instances.get(i);!a||a.kind!==e||(a.dead=!0,(m=a.dispose)==null||m.call(a),a.root.remove(),a.notice.remove(),a.host._bluAdvancedOwner===i&&delete a.host._bluAdvancedOwner,_.instances.delete(i))};return ne(e,()=>({sync(i,a={},m={},b){let d=document.getElementById(i);if(!d)return e+" host was not found.";let D=b||i,p=_.instances.get(D);p&&(p.host!==d||p.kind!==e)&&(p.destroy(p.key),p=null);let h=_.instances.get(d._bluAdvancedOwner);if(h&&h!==p&&h.destroy(h.key),!p){p={key:D,host:d,kind:e,uid:ye(),options:a,events:m,dead:!1,destroy:r},p.root=l("div"),p.notice=c(l("div","blu-advanced-sr"),"role","status"),c(p.notice,"aria-atomic","true"),d.append(p.root,p.notice),_.instances.set(D,p),d._bluAdvancedOwner=D;try{t(p)}catch(y){throw r(D),y}}p.options=a,p.events=m;try{return n(p),d.dataset.bluRuntimeReady="true",""}catch(y){return $(p,y),y.message||String(y)}},destroy:r}))}var S=e=>String(e).padStart(2,"0");function j(e){return String(e.getFullYear()).padStart(4,"0")+"-"+S(e.getMonth()+1)+"-"+S(e.getDate())}function v(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]),j(n)===e?n:null}function V(e){let t=/^(\d{2}):(\d{2})$/.exec(String(e));return t&&+t[1]<24&&+t[2]<60?t[1]+":"+t[2]:null}function re(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]+"-"+S(+(t==="DD/MM/YYYY"?r[2]:r[1]))+"-"+S(+(t==="DD/MM/YYYY"?r[1]:r[2]))}return v(n)?n:null}function ie(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 be(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:S(n[3]?+n[1]%12+(n[3].toUpperCase()==="PM"?12:0):+n[1])+":"+n[2]}function I(e,t=24){if(!e)return"";let[n,r]=e.split(":").map(Number);return t===12?(n%12||12)+":"+S(r)+" "+(n<12?"AM":"PM"):S(n)+":"+S(r)}function oe(e,t){let n=v(e);return n.setDate(n.getDate()+t),j(n)}function ue(e,t){let n=v(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())),j(n)}function De(e,t){let n=v(e),r=v(t);return Math.round((r.getTime()-n.getTime())/864e5)}function G(e,t,n,r){return v(e)?t&&e<t?"Choose "+t+" or later.":n&&e>n?"Choose "+n+" or earlier.":r!=null&&r.has(e)?"This date is unavailable.":"":"Enter a real calendar date."}function ce(e,t,n={}){if(!e||!t)return"Choose both a start date and an end date.";let r=G(e,n.Min,n.Max,n.disabled)||G(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 i=De(e,t)+1;if(n.MinRangeDays&&i<n.MinRangeDays)return"Choose at least "+n.MinRangeDays+" days.";if(n.MaxRangeDays&&i>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 ve=["YYYY-MM-DD","MM/DD/YYYY","DD/MM/YYYY"],U=()=>j(new Date),E=e=>String(e||"").split("T")[0],q=e=>String(e||"").split("T")[1]||"";function k(e,t){let n=v(t);return n?new Intl.DateTimeFormat(e.locale,{dateStyle:"full"}).format(n):t}function z(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 i of e.fields)c(i.input,"aria-invalid",t&&n.includes(i)?"true":null);let r=!t;(e.valid!==r||e.validationMessage!==t)&&(e.valid=r,e.validationMessage=t,s(e,"ValidationChanged",r,t))}function K(e,t){return G(t,E(e.options.Min),E(e.options.Max),e.disabledDates)}function Me(e,t,n){if(!V(t))return"Enter a valid time.";let r=e.dateTime?n+"T"+t:t,i=e.options.Min,a=e.options.Max;return i&&r<i?"Choose "+i+" or later.":a&&r>a?"Choose "+a+" or earlier.":""}function pe(e,t,n,r){if(e.range)return!t&&!n&&!e.options.IsRequired?"":ce(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 i=K(e,t);if(i)return i}return e.hasTime?r?Me(e,r,t):"Choose a time.":""}function fe(e){e.timeOnly?e.fields[0].input.value=I(e.value,e.cycle):(e.fields[0].input.value=ie(e.range?e.start:E(e.value),e.format),e.range&&(e.fields[1].input.value=ie(e.end,e.format)),e.dateTime&&(e.fields[1].input.value=I(q(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 T(e,t=!0){var n;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:r}of e.fields)c(r,"aria-expanded","false");t&&((n=e.anchor)!=null&&n.isConnected)&&!e.anchor.disabled&&e.anchor.focus({preventScroll:!0}),s(e,"OpenChanged",!1)}}function N(e){if(!e.isOpen||e.dead)return;let t=e.anchor.getBoundingClientRect(),n=window.visualViewport,r=(n==null?void 0:n.offsetLeft)||0,i=(n==null?void 0:n.offsetTop)||0,a=(n==null?void 0:n.width)||document.documentElement.clientWidth,m=(n==null?void 0:n.height)||window.innerHeight,b=6,d=8;if(t.bottom<=i||t.top>=i+m||t.right<=r||t.left>=r+a){T(e,!1);return}let D=e.dialog,p=Math.min(e.timeOnly?300:344,a-d*2);D.dataset.compact=String(m<420),D.style.width=p+"px",D.style.maxHeight="none";let h=Math.max(0,i+m-d-t.bottom-b),y=Math.max(0,t.top-b-i-d),g=D.scrollHeight+2,M=g>h&&y>h,u=Math.max(0,m-d*2);D.style.maxHeight=u+"px",D.style.left=Math.max(r+d,Math.min(t.left,r+a-d-p))+"px";let f=M?t.top-b-g:t.bottom+b;D.style.top=Math.max(i+d,Math.min(f,i+m-d-Math.min(g,u)))+"px",D.dataset.placement=M?"top":"bottom"}function de(e){(e.timeOnly||e.dateTime&&e.anchor===e.fields[1].input?e.hours:e.calendar.querySelector('[data-date="'+e.focusDate+'"]')||e.monthSelect).focus()}function J(e,t,n,r,i=!1){let a=pe(e,t,n,r);if(z(e,a),a)return e.dialogError.textContent=a,!1;let m=document.activeElement===e.clearButton&&!t&&!n&&!r,b=e.timeOnly?r:e.dateTime?t?t+"T"+r:"":t,d=e.range?e.start!==t||e.end!==n:e.value!==b;return e.range?(e.start=t,e.end=n,e.options.StartDate=t,e.options.EndDate=n):(e.value=b,e.options.Value=b),e.inputSignature=JSON.stringify(e.range?[e.start,e.end]:[e.value]),fe(e),i||T(e),m&&e.fields[0].input.focus(),e.notice.textContent=e.range?t?k(e,t)+" to "+k(e,n):"Date range cleared":b?"Selected "+(e.timeOnly?I(b,e.cycle):k(e,t)+(e.hasTime?" at "+I(r,e.cycle):"")):"Selection cleared",d&&(e.range?s(e,"Change",t,n):s(e,"Change",b)),!0}function le(e,t=!1){if(e.options.IsDisabled||e.options.IsReadOnly)return;let n=e.timeOnly?"":re(e.fields[0].input.value,e.format),r=e.range?re(e.fields[1].input.value,e.format):"",i=e.hasTime?be(e.fields[e.timeOnly?0:1].input.value,e.cycle):"";if(n===null||r===null){z(e,"Enter a real date using "+e.format+".");return}if(i===null){z(e,e.cycle===12?"Enter a time such as 9:15 AM.":"Enter a time such as 14:30.");return}J(e,n,r,i,t)&&t&&(e.draftStart=n,e.draftEnd=r,e.draftTime=i,n&&(e.focusDate=n,e.month=n.slice(0,7)),A(e),Q(e),P(e),N(e))}function Se(e){let t=e.range||e.dateTime?2:1;e.fields=[];for(let n=0;n<t;n++){let r=l("div","blu-picker__field"),i=l("label"),a=l("input","blu-picker__input");a.type="text",a.id=e.uid+"-input-"+n,i.htmlFor=a.id,a.autocomplete="off",a.spellcheck=!1,c(a,"role","combobox"),c(a,"aria-haspopup","dialog"),c(a,"aria-expanded","false"),c(a,"aria-autocomplete","none"),c(a,"aria-controls",e.uid+"-dialog"),c(a,"aria-describedby",e.uid+"-hint "+e.uid+"-error "+e.uid+"-keyboard"),a.addEventListener("input",()=>{e.typedDirty=!0}),a.addEventListener("change",()=>le(e,e.isOpen)),a.addEventListener("pointerdown",d=>{d.pointerType==="mouse"&&(e.touchOpen=!1,a.inputMode="text"),(d.pointerType==="touch"||d.pointerType==="pen")&&e.manualInput!==a&&!e.options.IsDisabled&&!e.options.IsReadOnly&&(d.preventDefault(),e.touchOpen=!0,a.inputMode="none",B(e,a,!0))}),a.addEventListener("click",d=>{e.manualInput!==a&&(e.touchOpen?(d.preventDefault(),B(e,a,!0)):B(e,a,!1))}),a.addEventListener("blur",()=>{e.manualInput===a&&(e.manualInput=null)}),a.addEventListener("keydown",d=>{d.ctrlKey||d.metaKey||d.shiftKey||(d.key==="ArrowDown"&&(d.preventDefault(),B(e,a,!0)),d.key==="Enter"&&(d.preventDefault(),!e.isOpen&&!e.typedDirty?B(e,a,!0):le(e)),d.key==="Tab"&&T(e,!1))});let m=l("div","blu-picker__field-control"),b=c(l("span","blu-picker__field-icon"),"aria-hidden","true");b.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,b),r.append(i,m),e.fields.push({field:r,label:i,input:a}),e.fieldRow.append(r)}}function Y(e,t,n){let r=l("option","",n);return r.value=String(t),e.append(r),r}function F(e,t,n){let r=l("label","blu-picker__select-field"),i=l("span","",t),a=l("select","blu-picker__input");return a.id=e.uid+"-"+n,r.append(i,a),{wrap:r,select:a}}function H(e,t){var i;let n=E(e.options.Min)||"0001-01-01",r=E(e.options.Max)||"9999-12-31";t=t<n?n:t>r?r:t,v(t)&&(e.focusDate=t,e.month=t.slice(0,7),A(e),(i=e.calendar.querySelector('[data-date="'+t+'"]'))==null||i.focus())}function we(e,t,n){if(t.altKey||t.ctrlKey||t.metaKey)return;let r,i={ArrowLeft:-1,ArrowRight:1,ArrowUp:-7,ArrowDown:7};if(t.key in i)r=oe(n,i[t.key]);else if(t.key==="Home"||t.key==="End"){let a=(v(n).getDay()-e.firstDay+7)%7;r=oe(n,t.key==="Home"?-a:6-a)}else(t.key==="PageUp"||t.key==="PageDown")&&(r=ue(n,(t.key==="PageUp"?-1:1)*(t.shiftKey?12:1)));r&&(t.preventDefault(),H(e,r))}function me(e,t){var n;if(!K(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){J(e,t,"","");return}A(e),(n=e.calendar.querySelector('[data-date="'+t+'"]'))==null||n.focus(),P(e)}}function P(e){let t=e.range?e.draftStart?k(e,e.draftStart)+(e.draftEnd?" to "+k(e,e.draftEnd):" \u2014 choose an end date"):"Choose a start date":e.hasTime?(e.draftStart?k(e,e.draftStart)+" \xB7 ":"")+I(e.draftTime,e.cycle):"",n=r=>v(r)?new Intl.DateTimeFormat(e.locale,{month:"short",day:"numeric"}).format(v(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 "+I(e.draftTime,e.cycle):e.timeOnly?I(e.draftTime,e.cycle):"",e.selection.hidden=!t}function A(e){let t=v(e.month+"-01");if(!t)return;let n=t.getFullYear(),r=t.getMonth(),i=Number(E(e.options.Min).slice(0,4))||1,a=Number(E(e.options.Max).slice(0,4))||9999;e.monthSelect.value=String(r),e.yearInput.value=String(n),c(e.yearInput,"aria-invalid",null),e.yearInput.min=String(i),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 b=(t.getDay()-e.firstDay+7)%7,d=new Date(n,r+1,0).getDate();if(e.focusDate.startsWith(e.month)||(e.focusDate=e.month+"-01"),!e.dayCells){let h=l("tbody");e.dayCells=[];for(let y=0;y<6;y++){let g=l("tr");for(let M=0;M<7;M++){let u=l("td"),f=O("",()=>me(e,f.dataset.date),"blu-picker__day");f.addEventListener("keydown",w=>we(e,w,f.dataset.date)),f.addEventListener("focus",()=>{e.focusDate=f.dataset.date;for(let w of e.dayCells)w.button.tabIndex=w.button===f?0:-1}),u.append(f),g.append(u),e.dayCells.push({cell:u,button:f})}h.append(g)}e.calendar.append(h)}for(let h=0;h<e.dayCells.length;h++){let{cell:y,button:g}=e.dayCells[h],M=h-b+1,u=M>0&&M<=d;if(g.hidden=!u,!u){g.tabIndex=-1,delete g.dataset.date,c(y,"aria-selected",null);continue}let f=e.month+"-"+S(M),w=f===e.draftStart||e.range&&f===e.draftEnd,R=e.range&&e.draftStart&&e.draftEnd&&f>e.draftStart&&f<e.draftEnd,o=K(e,f),x=!!(w||R),L=e.range&&w?f===e.draftStart?e.draftEnd?", range starts here; "+k(e,e.draftStart)+" to "+k(e,e.draftEnd):", start date; choose an end date":", range ends here; "+k(e,e.draftStart)+" to "+k(e,e.draftEnd):"",X=k(e,f)+(x?", selected":"")+L+(o?", unavailable":"");g.dataset.date=f,g.tabIndex=f===e.focusDate?0:-1,g.textContent!==String(M)&&(g.textContent=String(M)),g.getAttribute("aria-label")!==X&&c(g,"aria-label",X),c(y,"aria-selected",String(x)),c(g,"aria-disabled",o?"true":null),c(g,"aria-current",f===U()?"date":null),g.dataset.selected=String(w),g.dataset.between=String(!!R)}for(let h=0;h<6;h++)e.dayCells[h*7].cell.parentElement.hidden=h*7-b+1>d;let D=E(e.options.Min),p=E(e.options.Max);e.prev.disabled=!!D&&e.month<=D.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=!!K(e,U())}function Q(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++)Y(e.hours,e.cycle===12?r+1:r,S(e.cycle===12?r+1:r));for(let r=0;r<60;r+=e.step)Y(e.minutes,r,S(r));n%e.step&&Y(e.minutes,n,S(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 B(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"),N(e),n&&de(e);return}e.draftStart=e.timeOnly?"":e.range?e.start:E(e.value),e.draftEnd=e.end||"",e.draftTime=e.timeOnly?e.value:q(e.value),e.hasTime&&!V(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=v(r)?r:v(e.draftStart)?e.draftStart:U();let i=E(e.options.Min),a=E(e.options.Max);e.timeOnly||(i&&e.focusDate<i&&(e.focusDate=i),a&&e.focusDate>a&&(e.focusDate=a)),e.month=e.focusDate.slice(0,7),e.dialogError.textContent="",A(e),Q(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)c(m,"aria-expanded","true");N(e),n&&e.isOpen&&de(e),s(e,"OpenChanged",!0)}function Ee(e){var g,M;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=l("div","blu-picker__fields"),e.error=c(l("div","blu-picker__error"),"role","alert"),e.error.id=e.uid+"-error",e.error.hidden=!0,e.hint=l("div","blu-picker__hint"),e.hint.id=e.uid+"-hint",e.actions=l("div","blu-picker__actions"),e.clearButton=O("Clear",()=>J(e,"","","")),e.actions.append(e.clearButton),e.root.append(e.fieldRow,e.hint,e.actions,e.error),Se(e);let t=l("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=l("div","blu-picker__dialog blu-picker__popup"),e.dialog.id=e.uid+"-dialog",e.dialog.hidden=!0,c(e.dialog,"role","dialog"),c(e.dialog,"aria-labelledby",e.uid+"-title"),c(e.dialog,"aria-modal","false"),e.dialog.showPopover&&c(e.dialog,"popover","manual"),e.root.append(e.dialog),e.title=l("h2","blu-advanced-sr"),e.title.id=e.uid+"-title",e.dialog.append(e.title),e.presets=l("div","blu-picker__presets"),e.dialog.append(e.presets),e.calendarArea=l("div","blu-picker__calendar-area"),e.calendarArea.hidden=e.timeOnly,e.dialog.append(e.calendarArea);let n=l("div","blu-picker__calendar-nav"),r=F(e,"Month","month");e.monthSelect=r.select;let i=l("label","blu-picker__select-field");i.append(l("span","","Year")),e.yearInput=l("input","blu-picker__input"),e.yearInput.type="number",e.yearInput.step="1",i.append(e.yearInput);let a=u=>{let f=ue(e.focusDate,u);H(e,f)};e.prev=O("\u2039",()=>a(-1)),c(e.prev,"aria-label","Previous month"),e.next=O("\u203A",()=>a(1)),c(e.next,"aria-label","Next month"),n.append(e.prev,r.wrap,i,e.next),e.calendarArea.append(n),e.monthSelect.addEventListener("change",()=>H(e,String(e.yearInput.value).padStart(4,"0")+"-"+S(+e.monthSelect.value+1)+"-01")),e.yearInput.addEventListener("change",()=>{let u=Number(e.yearInput.value);if(!Number.isInteger(u)||u<+e.yearInput.min||u>+e.yearInput.max){e.dialogError.textContent="Enter a year from "+e.yearInput.min+" to "+e.yearInput.max+".",c(e.yearInput,"aria-invalid","true");return}c(e.yearInput,"aria-invalid",null),e.dialogError.textContent="",H(e,String(u).padStart(4,"0")+"-"+S(+e.monthSelect.value+1)+"-01")}),e.caption=c(l("h3","blu-picker__caption blu-advanced-sr"),"aria-live","polite"),e.caption.id=e.uid+"-caption",e.calendarArea.append(e.caption),e.calendar=c(l("table","blu-picker__calendar"),"role","grid"),c(e.calendar,"aria-labelledby",e.caption.id),e.range&&c(e.calendar,"aria-multiselectable","true"),e.calendarArea.append(e.calendar),e.todayButton=O("Today",()=>{e.focusDate=U(),e.month=e.focusDate.slice(0,7),me(e,e.focusDate)}),e.calendarArea.append(l("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=l("div","blu-picker__time-area"),e.timeArea.hidden=!e.hasTime,e.dialog.append(e.timeArea);let m=F(e,"Hour","hour"),b=F(e,"Minute","minute"),d=F(e,"AM / PM","period");e.hours=m.select,e.minutes=b.select,e.period=d.select,e.periodField=d.wrap,Y(e.period,"AM","AM"),Y(e.period,"PM","PM"),e.timeArea.append(m.wrap,b.wrap,d.wrap);for(let u of[e.hours,e.minutes,e.period])u.addEventListener("change",()=>{let f=+e.hours.value;e.cycle===12&&(f=f%12+(e.period.value==="PM"?12:0)),e.draftTime=S(f)+":"+S(+e.minutes.value),e.dialogError.textContent="",P(e)});e.selection=c(l("div","blu-picker__selection"),"role","status"),c(e.selection,"aria-atomic","true"),e.selectionSpeech=l("span","blu-advanced-sr"),e.selectionVisual=c(l("span"),"aria-hidden","true"),e.selection.append(e.selectionSpeech,e.selectionVisual),e.dialogError=c(l("div","blu-picker__error"),"role","alert"),e.dialogError.id=e.uid+"-dialog-error",c(e.yearInput,"aria-describedby",e.dialogError.id),e.apply=O("Apply",()=>J(e,e.draftStart,e.draftEnd,e.draftTime),"blu-picker__button blu-picker__button--primary"),e.apply.hidden=!e.range&&!e.hasTime,e.typeButton=O("Type",()=>{let u=e.anchor;T(e,!1),e.manualInput=u,u.inputMode="text",u.focus({preventScroll:!0})}),c(e.typeButton,"aria-label","Type a date or time"),e.typeButton.hidden=!0;let D=l("div","blu-picker__popup-actions");D.append(e.typeButton,e.todayButton,O("Cancel",()=>T(e)),e.apply),e.dialog.append(e.selection,e.dialogError,D);let p=u=>{e.isOpen&&!e.root.contains(u.target)&&T(e,!1)},h=u=>{e.isOpen&&u.key==="Escape"&&!u.defaultPrevented&&(u.preventDefault(),u.stopPropagation(),T(e))},y=u=>{!e.isOpen||e.dialog.contains(u==null?void 0:u.target)||(cancelAnimationFrame(e.positionFrame),e.positionFrame=requestAnimationFrame(()=>N(e)))};document.addEventListener("pointerdown",p,!0),document.addEventListener("focusin",p),e.root.addEventListener("keydown",h),window.addEventListener("resize",y),document.addEventListener("scroll",y,!0),(g=window.visualViewport)==null||g.addEventListener("resize",y),(M=window.visualViewport)==null||M.addEventListener("scroll",y),window.ResizeObserver&&(e.popupObserver=new ResizeObserver(()=>y()),e.popupObserver.observe(e.fieldRow),e.popupObserver.observe(e.dialog)),e.dispose=()=>{var u,f,w;T(e,!1),cancelAnimationFrame(e.positionFrame),(u=e.popupObserver)==null||u.disconnect(),document.removeEventListener("pointerdown",p,!0),document.removeEventListener("focusin",p),e.root.removeEventListener("keydown",h),window.removeEventListener("resize",y),document.removeEventListener("scroll",y,!0),(f=window.visualViewport)==null||f.removeEventListener("resize",y),(w=window.visualViewport)==null||w.removeEventListener("scroll",y)}}function xe(e){var h,y,g,M,u,f,w,R;let t=JSON.stringify(e.options);if(e.renderSignature===t)return;let n=e.isOpen?document.activeElement:null,r=(h=n==null?void 0:n.dataset)==null?void 0:h.date,i=n==null?void 0: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=ve.includes(a.DateFormat)?a.DateFormat:"YYYY-MM-DD",e.cycle=Number(a.HourCycle)===12?12:24,e.step=Number((y=a.MinuteStep)!=null?y: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((g=a.FirstDayOfWeek)!=null?g:1),!Number.isInteger(e.firstDay)||e.firstDay<0||e.firstDay>6)throw Error("FirstDayOfWeek must be 0\u20136.");e.disabledDates=new Set(ae((M=a.DisabledDatesJson)!=null?M:a.DisabledDates,"DisabledDates").map(o=>typeof o=="string"?o:o.Date));for(let o of e.disabledDates)if(!v(o))throw Error("DisabledDates must contain ISO calendar dates.");for(let o of["Min","Max"])if(a[o]&&!(e.timeOnly?V(a[o]):v(E(a[o]))&&(!e.dateTime||V(q(a[o])))))throw Error(o+" 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 o of["MinRangeDays","MaxRangeDays"])if(a[o]!==void 0&&(!Number.isInteger(Number(a[o]))||Number(a[o])<0))throw Error(o+" 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||"")],b=JSON.stringify(m),d=b!==e.inputSignature;if(e.inputSignature=b,e.range?(e.start=m[0],e.end=m[1]):e.value=m[0],e.fields.forEach((o,x)=>{o.label.textContent=e.range?e.label+(x?" \u2014 end":" \u2014 start"):e.dateTime?e.label+(x?" \u2014 time":" \u2014 date"):e.label,o.input.disabled=!!a.IsDisabled,o.input.readOnly=!!a.IsReadOnly,o.input.required=!!a.IsRequired,o.input.placeholder=String(a.Placeholder||(e.timeOnly||e.dateTime&&x?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,d||e.previousFormat!==e.format||e.previousCycle!==e.cycle){fe(e);let o=m.some(Boolean);z(e,o?pe(e,e.timeOnly?"":e.range?e.start:E(e.value),e.end||"",e.timeOnly?e.value:q(e.value)):""),e.previousFormat=e.format,e.previousCycle=e.cycle}e.monthSelect.replaceChildren();for(let o=0;o<12;o++)Y(e.monthSelect,o,new Intl.DateTimeFormat(e.locale,{month:"long"}).format(new Date(2024,o,1)));(u=e.calendar.tHead)==null||u.remove();let D=l("thead"),p=l("tr");for(let o=0;o<7;o++){let x=new Date(2024,0,7+(o+e.firstDay)%7),L=l("th","",new Intl.DateTimeFormat(e.locale,{weekday:"short"}).format(x));L.scope="col",L.abbr=new Intl.DateTimeFormat(e.locale,{weekday:"long"}).format(x),p.append(L)}if(D.append(p),e.calendar.prepend(D),e.presets.replaceChildren(),e.presets.hidden=!e.range,e.range)for(let o of ae((f=a.PresetsJson)!=null?f:a.Presets,"Presets")){if(!o.Label||!v(o.StartDate)||!v(o.EndDate))throw Error("Presets need Label, StartDate and EndDate.");let x=O(o.Label,()=>{e.draftStart=o.StartDate,e.draftEnd=o.EndDate,e.rangeNext="start",e.focusDate=e.draftStart,e.month=e.focusDate.slice(0,7),e.dialogError.textContent="",A(e),P(e)});x.disabled=!!ce(o.StartDate,o.EndDate,{...a,disabled:e.disabledDates}),e.presets.append(x)}e.isOpen&&(a.IsDisabled||a.IsReadOnly||d?T(e):(A(e),Q(e),r?(w=e.calendar.querySelector('[data-date="'+r+'"]'))==null||w.focus():i&&((R=document.getElementById(i))==null||R.focus()),N(e))),e.renderSignature=t}var he=()=>ge("TimePicker",Ee,xe);he();})();
|
|
1
|
+
"use strict";(()=>{var C=typeof window=="undefined"?globalThis:window,Z="__bluuiCommunityModulesV1",ee=C[Z]||(C[Z]={families:Object.create(null)}),W=C.BluUICommunityRuntime&&!Object.isFrozen(C.BluUICommunityRuntime)?C.BluUICommunityRuntime:Object.assign({},C.BluUICommunityRuntime||{});C.BluUICommunityRuntime=W;function te(e,t){return ee.families[e]||(ee.families[e]=t())}function ne(e,t){return W[e]||(W[e]=t())}var _=te("advanced",()=>({instances:new Map,serial:0})),ge=()=>`blu-advanced-${++_.serial}`;function l(e,t,n){let r=document.createElement(e);return t&&(r.className=t),n!==void 0&&(r.textContent=String(n)),r}function c(e,t,n){return n==null?e.removeAttribute(t):e.setAttribute(t,String(n)),e}function O(e,t,n="blu-picker__button"){let r=l("button",n,e);return r.type="button",r.addEventListener("click",t),r}function Y(e,t,...n){var r,i;if(!e.dead)try{Promise.resolve((i=(r=e.events)[t])==null?void 0:i.call(r,...n)).catch(a=>$(e,a))}catch(a){$(e,a)}}function $(e,t){if(e.dead)return;let n=(t==null?void 0:t.message)||String(t);e.notice.textContent=n,e.lastError!==n&&(e.lastError=n,Y(e,"Error",n))}function ae(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 ye(e,t,n){let r=i=>{var m;let a=_.instances.get(i);!a||a.kind!==e||(a.dead=!0,(m=a.dispose)==null||m.call(a),a.root.remove(),a.notice.remove(),a.host._bluAdvancedOwner===i&&delete a.host._bluAdvancedOwner,_.instances.delete(i))};return ne(e,()=>({sync(i,a={},m={},b){let d=document.getElementById(i);if(!d)return e+" host was not found.";let D=b||i,p=_.instances.get(D);p&&(p.host!==d||p.kind!==e)&&(p.destroy(p.key),p=null);let h=_.instances.get(d._bluAdvancedOwner);if(h&&h!==p&&h.destroy(h.key),!p){p={key:D,host:d,kind:e,uid:ge(),options:a,events:m,dead:!1,destroy:r},p.root=l("div"),p.notice=c(l("div","blu-advanced-sr"),"role","status"),c(p.notice,"aria-atomic","true"),d.append(p.root,p.notice),_.instances.set(D,p),d._bluAdvancedOwner=D;try{t(p)}catch(g){throw r(D),g}}p.options=a,p.events=m;try{return n(p),d.dataset.bluRuntimeReady="true",""}catch(g){return $(p,g),g.message||String(g)}},destroy:r}))}var w=e=>String(e).padStart(2,"0");function j(e){return String(e.getFullYear()).padStart(4,"0")+"-"+w(e.getMonth()+1)+"-"+w(e.getDate())}function v(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]),j(n)===e?n:null}function V(e){let t=/^(\d{2}):(\d{2})$/.exec(String(e));return t&&+t[1]<24&&+t[2]<60?t[1]+":"+t[2]:null}function re(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]+"-"+w(+(t==="DD/MM/YYYY"?r[2]:r[1]))+"-"+w(+(t==="DD/MM/YYYY"?r[1]:r[2]))}return v(n)?n:null}function ie(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 be(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:w(n[3]?+n[1]%12+(n[3].toUpperCase()==="PM"?12:0):+n[1])+":"+n[2]}function I(e,t=24){if(!e)return"";let[n,r]=e.split(":").map(Number);return t===12?(n%12||12)+":"+w(r)+" "+(n<12?"AM":"PM"):w(n)+":"+w(r)}function oe(e,t){let n=v(e);return n.setDate(n.getDate()+t),j(n)}function ue(e,t){let n=v(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())),j(n)}function De(e,t){let n=v(e),r=v(t);return Math.round((r.getTime()-n.getTime())/864e5)}function G(e,t,n,r){return v(e)?t&&e<t?"Choose "+t+" or later.":n&&e>n?"Choose "+n+" or earlier.":r!=null&&r.has(e)?"This date is unavailable.":"":"Enter a real calendar date."}function ce(e,t,n={}){if(!e||!t)return"Choose both a start date and an end date.";let r=G(e,n.Min,n.Max,n.disabled)||G(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 i=De(e,t)+1;if(n.MinRangeDays&&i<n.MinRangeDays)return"Choose at least "+n.MinRangeDays+" days.";if(n.MaxRangeDays&&i>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 ve=["YYYY-MM-DD","MM/DD/YYYY","DD/MM/YYYY"],U=()=>j(new Date),E=e=>String(e||"").split("T")[0],q=e=>String(e||"").split("T")[1]||"";function k(e,t){let n=v(t);return n?new Intl.DateTimeFormat(e.locale,{dateStyle:"full"}).format(n):t}function z(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 i of e.fields)c(i.input,"aria-invalid",t&&n.includes(i)?"true":null);let r=!t;(e.valid!==r||e.validationMessage!==t)&&(e.valid=r,e.validationMessage=t,Y(e,"ValidationChanged",r,t))}function K(e,t){return G(t,E(e.options.Min),E(e.options.Max),e.disabledDates)}function Se(e,t,n){if(!V(t))return"Enter a valid time.";let r=e.dateTime?n+"T"+t:t,i=e.options.Min,a=e.options.Max;return i&&r<i?"Choose "+i+" or later.":a&&r>a?"Choose "+a+" or earlier.":""}function pe(e,t,n,r){if(e.range)return!t&&!n&&!e.options.IsRequired?"":ce(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 i=K(e,t);if(i)return i}return e.hasTime?r?Se(e,r,t):"Choose a time.":""}function fe(e){e.timeOnly?e.fields[0].input.value=I(e.value,e.cycle):(e.fields[0].input.value=ie(e.range?e.start:E(e.value),e.format),e.range&&(e.fields[1].input.value=ie(e.end,e.format)),e.dateTime&&(e.fields[1].input.value=I(q(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 T(e,t=!0){var n;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:r}of e.fields)c(r,"aria-expanded","false");t&&((n=e.anchor)!=null&&n.isConnected)&&!e.anchor.disabled&&e.anchor.focus({preventScroll:!0}),Y(e,"OpenChanged",!1)}}function N(e){if(!e.isOpen||e.dead)return;let t=e.anchor.getBoundingClientRect(),n=window.visualViewport,r=(n==null?void 0:n.offsetLeft)||0,i=(n==null?void 0:n.offsetTop)||0,a=(n==null?void 0:n.width)||document.documentElement.clientWidth,m=(n==null?void 0:n.height)||window.innerHeight,b=6,d=8;if(t.bottom<=i||t.top>=i+m||t.right<=r||t.left>=r+a){T(e,!1);return}let D=e.dialog,p=Math.min(e.timeOnly?300:344,a-d*2);D.dataset.compact=String(m<420),D.style.width=p+"px",D.style.maxHeight="none";let h=Math.max(0,i+m-d-t.bottom-b),g=Math.max(0,t.top-b-i-d),y=D.scrollHeight+2,S=y>h&&g>h,u=Math.max(0,m-d*2);D.style.maxHeight=u+"px";let f=e.fieldRow.getBoundingClientRect();D.style.left=Math.max(r+d,Math.min(f.left+(f.width-p)/2,r+a-d-p))+"px";let M=S?t.top-b-y:t.bottom+b;D.style.top=Math.max(i+d,Math.min(M,i+m-d-Math.min(y,u)))+"px",D.dataset.placement=S?"top":"bottom"}function de(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 J(e,t,n,r,i=!1){let a=pe(e,t,n,r);if(z(e,a),a)return e.dialogError.textContent=a,!1;let m=document.activeElement===e.clearButton&&!t&&!n&&!r,b=e.timeOnly?r:e.dateTime?t?t+"T"+r:"":t,d=e.range?e.start!==t||e.end!==n:e.value!==b;return e.range?(e.start=t,e.end=n,e.options.StartDate=t,e.options.EndDate=n):(e.value=b,e.options.Value=b),e.inputSignature=JSON.stringify(e.range?[e.start,e.end]:[e.value]),fe(e),i||T(e),m&&e.fields[0].input.focus({preventScroll:!0}),e.notice.textContent=e.range?t?k(e,t)+" to "+k(e,n):"Date range cleared":b?"Selected "+(e.timeOnly?I(b,e.cycle):k(e,t)+(e.hasTime?" at "+I(r,e.cycle):"")):"Selection cleared",d&&(e.range?Y(e,"Change",t,n):Y(e,"Change",b)),!0}function le(e,t=!1){if(e.options.IsDisabled||e.options.IsReadOnly)return;let n=e.timeOnly?"":re(e.fields[0].input.value,e.format),r=e.range?re(e.fields[1].input.value,e.format):"",i=e.hasTime?be(e.fields[e.timeOnly?0:1].input.value,e.cycle):"";if(n===null||r===null){z(e,"Enter a real date using "+e.format+".");return}if(i===null){z(e,e.cycle===12?"Enter a time such as 9:15 AM.":"Enter a time such as 14:30.");return}J(e,n,r,i,t)&&t&&(e.draftStart=n,e.draftEnd=r,e.draftTime=i,n&&(e.focusDate=n,e.month=n.slice(0,7)),A(e),Q(e),P(e),N(e))}function Me(e){let t=e.range||e.dateTime?2:1;e.fields=[];for(let n=0;n<t;n++){let r=l("div","blu-picker__field"),i=l("label"),a=l("input","blu-picker__input");a.type="text",a.id=e.uid+"-input-"+n,i.htmlFor=a.id,a.autocomplete="off",a.spellcheck=!1,c(a,"role","combobox"),c(a,"aria-haspopup","dialog"),c(a,"aria-expanded","false"),c(a,"aria-autocomplete","none"),c(a,"aria-controls",e.uid+"-dialog"),c(a,"aria-describedby",e.uid+"-hint "+e.uid+"-error "+e.uid+"-keyboard"),a.addEventListener("input",()=>{e.typedDirty=!0}),a.addEventListener("change",()=>le(e,e.isOpen)),a.addEventListener("pointerdown",d=>{d.pointerType==="mouse"&&(e.touchOpen=!1,a.inputMode="text"),(d.pointerType==="touch"||d.pointerType==="pen")&&e.manualInput!==a&&!e.options.IsDisabled&&!e.options.IsReadOnly&&(d.preventDefault(),e.touchOpen=!0,a.inputMode="none",B(e,a,!0))}),a.addEventListener("click",d=>{e.manualInput!==a&&(e.touchOpen?(d.preventDefault(),B(e,a,!0)):B(e,a,!1))}),a.addEventListener("blur",()=>{e.manualInput===a&&(e.manualInput=null)}),a.addEventListener("keydown",d=>{d.ctrlKey||d.metaKey||d.shiftKey||(d.key==="ArrowDown"&&(d.preventDefault(),B(e,a,!0)),d.key==="Enter"&&(d.preventDefault(),!e.isOpen&&!e.typedDirty?B(e,a,!0):le(e)),d.key==="Tab"&&T(e,!1))});let m=l("div","blu-picker__field-control"),b=c(l("span","blu-picker__field-icon"),"aria-hidden","true");b.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,b),r.append(i,m),e.fields.push({field:r,label:i,input:a}),e.fieldRow.append(r)}}function s(e,t,n){let r=l("option","",n);return r.value=String(t),e.append(r),r}function F(e,t,n){let r=l("label","blu-picker__select-field"),i=l("span","blu-picker__select-caption",t),a=l("select","blu-picker__input");return a.id=e.uid+"-"+n,r.append(i,a),{wrap:r,select:a}}function we(e){var n,r;if(e.button!==0)return;let t=(r=(n=e.target).closest)==null?void 0:r.call(n,"button");!t||t.disabled||(e.preventDefault(),t.focus({preventScroll:!0}))}function H(e,t){var i;let n=E(e.options.Min)||"0001-01-01",r=E(e.options.Max)||"9999-12-31";t=t<n?n:t>r?r:t,v(t)&&(e.focusDate=t,e.month=t.slice(0,7),A(e),(i=e.calendar.querySelector('[data-date="'+t+'"]'))==null||i.focus({preventScroll:!0}))}function Ee(e,t,n){if(t.altKey||t.ctrlKey||t.metaKey)return;let r,i={ArrowLeft:-1,ArrowRight:1,ArrowUp:-7,ArrowDown:7};if(t.key in i)r=oe(n,i[t.key]);else if(t.key==="Home"||t.key==="End"){let a=(v(n).getDay()-e.firstDay+7)%7;r=oe(n,t.key==="Home"?-a:6-a)}else(t.key==="PageUp"||t.key==="PageDown")&&(r=ue(n,(t.key==="PageUp"?-1:1)*(t.shiftKey?12:1)));r&&(t.preventDefault(),H(e,r))}function me(e,t){var n;if(!K(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){J(e,t,"","");return}A(e),(n=e.calendar.querySelector('[data-date="'+t+'"]'))==null||n.focus({preventScroll:!0}),P(e)}}function P(e){let t=e.range?e.draftStart?k(e,e.draftStart)+(e.draftEnd?" to "+k(e,e.draftEnd):" \u2014 choose an end date"):"Choose a start date":e.hasTime?(e.draftStart?k(e,e.draftStart)+" \xB7 ":"")+I(e.draftTime,e.cycle):"",n=r=>v(r)?new Intl.DateTimeFormat(e.locale,{month:"short",day:"numeric"}).format(v(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 "+I(e.draftTime,e.cycle):e.timeOnly?I(e.draftTime,e.cycle):"",e.selection.hidden=!t}function A(e){let t=v(e.month+"-01");if(!t)return;let n=t.getFullYear(),r=t.getMonth(),i=Number(E(e.options.Min).slice(0,4))||1,a=Number(E(e.options.Max).slice(0,4))||9999;e.monthSelect.value=String(r),e.yearInput.value=String(n),c(e.yearInput,"aria-invalid",null),e.yearInput.min=String(i),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 b=(t.getDay()-e.firstDay+7)%7,d=new Date(n,r+1,0).getDate();if(e.focusDate.startsWith(e.month)||(e.focusDate=e.month+"-01"),!e.dayCells){let h=l("tbody");e.dayCells=[];for(let g=0;g<6;g++){let y=l("tr");for(let S=0;S<7;S++){let u=l("td"),f=O("",()=>me(e,f.dataset.date),"blu-picker__day");f.addEventListener("keydown",M=>Ee(e,M,f.dataset.date)),f.addEventListener("focus",()=>{e.focusDate=f.dataset.date;for(let M of e.dayCells)M.button.tabIndex=M.button===f?0:-1}),u.append(f),y.append(u),e.dayCells.push({cell:u,button:f})}h.append(y)}e.calendar.append(h)}for(let h=0;h<e.dayCells.length;h++){let{cell:g,button:y}=e.dayCells[h],S=h-b+1,u=S>0&&S<=d;if(y.hidden=!u,!u){y.tabIndex=-1,delete y.dataset.date,c(g,"aria-selected",null);continue}let f=e.month+"-"+w(S),M=f===e.draftStart||e.range&&f===e.draftEnd,R=e.range&&e.draftStart&&e.draftEnd&&f>e.draftStart&&f<e.draftEnd,o=K(e,f),x=!!(M||R),L=e.range&&M?f===e.draftStart?e.draftEnd?", range starts here; "+k(e,e.draftStart)+" to "+k(e,e.draftEnd):", start date; choose an end date":", range ends here; "+k(e,e.draftStart)+" to "+k(e,e.draftEnd):"",X=k(e,f)+(x?", selected":"")+L+(o?", unavailable":"");y.dataset.date=f,y.tabIndex=f===e.focusDate?0:-1,y.textContent!==String(S)&&(y.textContent=String(S)),y.getAttribute("aria-label")!==X&&c(y,"aria-label",X),c(g,"aria-selected",String(x)),c(y,"aria-disabled",o?"true":null),c(y,"aria-current",f===U()?"date":null),y.dataset.selected=String(M),y.dataset.between=String(!!R)}for(let h=0;h<6;h++)e.dayCells[h*7].cell.parentElement.hidden=h*7-b+1>d;let D=E(e.options.Min),p=E(e.options.Max);e.prev.disabled=!!D&&e.month<=D.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=!!K(e,U())}function Q(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++)s(e.hours,e.cycle===12?r+1:r,w(e.cycle===12?r+1:r));for(let r=0;r<60;r+=e.step)s(e.minutes,r,w(r));n%e.step&&s(e.minutes,n,w(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 B(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"),N(e),n&&de(e);return}e.draftStart=e.timeOnly?"":e.range?e.start:E(e.value),e.draftEnd=e.end||"",e.draftTime=e.timeOnly?e.value:q(e.value),e.hasTime&&!V(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=v(r)?r:v(e.draftStart)?e.draftStart:U();let i=E(e.options.Min),a=E(e.options.Max);e.timeOnly||(i&&e.focusDate<i&&(e.focusDate=i),a&&e.focusDate>a&&(e.focusDate=a)),e.month=e.focusDate.slice(0,7),e.dialogError.textContent="",A(e),Q(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)c(m,"aria-expanded","true");N(e),n&&e.isOpen&&de(e),Y(e,"OpenChanged",!0)}function xe(e){var y,S;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=l("div","blu-picker__fields"),e.error=c(l("div","blu-picker__error"),"role","alert"),e.error.id=e.uid+"-error",e.error.hidden=!0,e.hint=l("div","blu-picker__hint"),e.hint.id=e.uid+"-hint",e.actions=l("div","blu-picker__actions"),e.clearButton=O("Clear",()=>J(e,"","","")),e.actions.append(e.clearButton),e.root.append(e.fieldRow,e.hint,e.actions,e.error),Me(e);let t=l("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=l("div","blu-picker__dialog blu-picker__popup"),e.dialog.id=e.uid+"-dialog",e.dialog.hidden=!0,c(e.dialog,"role","dialog"),c(e.dialog,"aria-labelledby",e.uid+"-title"),c(e.dialog,"aria-modal","false"),e.dialog.showPopover&&c(e.dialog,"popover","manual"),e.root.append(e.dialog),e.dialog.addEventListener("mousedown",we),e.title=l("h2","blu-advanced-sr"),e.title.id=e.uid+"-title",e.dialog.append(e.title),e.presets=l("div","blu-picker__presets"),e.dialog.append(e.presets),e.calendarArea=l("div","blu-picker__calendar-area"),e.calendarArea.hidden=e.timeOnly,e.dialog.append(e.calendarArea);let n=l("div","blu-picker__calendar-nav"),r=F(e,"Month","month");e.monthSelect=r.select;let i=l("label","blu-picker__select-field");i.append(l("span","blu-picker__select-caption","Year")),e.yearInput=l("input","blu-picker__input"),e.yearInput.type="number",e.yearInput.step="1",i.append(e.yearInput);let a=u=>{let f=ue(e.focusDate,u);H(e,f)};e.prev=O("\u2039",()=>a(-1)),c(e.prev,"aria-label","Previous month"),e.next=O("\u203A",()=>a(1)),c(e.next,"aria-label","Next month"),n.append(e.prev,r.wrap,i,e.next),e.calendarArea.append(n),e.monthSelect.addEventListener("change",()=>H(e,String(e.yearInput.value).padStart(4,"0")+"-"+w(+e.monthSelect.value+1)+"-01")),e.yearInput.addEventListener("change",()=>{let u=Number(e.yearInput.value);if(!Number.isInteger(u)||u<+e.yearInput.min||u>+e.yearInput.max){e.dialogError.textContent="Enter a year from "+e.yearInput.min+" to "+e.yearInput.max+".",c(e.yearInput,"aria-invalid","true");return}c(e.yearInput,"aria-invalid",null),e.dialogError.textContent="",H(e,String(u).padStart(4,"0")+"-"+w(+e.monthSelect.value+1)+"-01")}),e.caption=c(l("h3","blu-picker__caption blu-advanced-sr"),"aria-live","polite"),e.caption.id=e.uid+"-caption",e.calendarArea.append(e.caption),e.calendar=c(l("table","blu-picker__calendar"),"role","grid"),c(e.calendar,"aria-labelledby",e.caption.id),e.range&&c(e.calendar,"aria-multiselectable","true"),e.calendarArea.append(e.calendar),e.todayButton=O("Today",()=>{e.focusDate=U(),e.month=e.focusDate.slice(0,7),me(e,e.focusDate)}),e.calendarArea.append(l("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=l("div","blu-picker__time-area"),e.timeArea.hidden=!e.hasTime,e.dialog.append(e.timeArea);let m=F(e,"Hour","hour"),b=F(e,"Minute","minute"),d=F(e,"AM / PM","period");e.hours=m.select,e.minutes=b.select,e.period=d.select,e.periodField=d.wrap,s(e.period,"AM","AM"),s(e.period,"PM","PM"),e.timeArea.append(m.wrap,b.wrap,d.wrap);for(let u of[e.hours,e.minutes,e.period])u.addEventListener("change",()=>{let f=+e.hours.value;e.cycle===12&&(f=f%12+(e.period.value==="PM"?12:0)),e.draftTime=w(f)+":"+w(+e.minutes.value),e.dialogError.textContent="",P(e)});e.selection=c(l("div","blu-picker__selection"),"role","status"),c(e.selection,"aria-atomic","true"),e.selectionSpeech=l("span","blu-advanced-sr"),e.selectionVisual=c(l("span"),"aria-hidden","true"),e.selection.append(e.selectionSpeech,e.selectionVisual),e.dialogError=c(l("div","blu-picker__error"),"role","alert"),e.dialogError.id=e.uid+"-dialog-error",c(e.yearInput,"aria-describedby",e.dialogError.id),e.apply=O("Apply",()=>J(e,e.draftStart,e.draftEnd,e.draftTime),"blu-picker__button blu-picker__button--primary"),e.apply.hidden=!e.range&&!e.hasTime,e.typeButton=O("Type",()=>{let u=e.anchor;T(e,!1),e.manualInput=u,u.inputMode="text",u.focus({preventScroll:!0})}),c(e.typeButton,"aria-label","Type a date or time"),e.typeButton.hidden=!0;let D=l("div","blu-picker__popup-actions");D.append(e.typeButton,e.todayButton,O("Cancel",()=>T(e)),e.apply),e.dialog.append(e.selection,e.dialogError,D);let p=u=>{e.isOpen&&!e.root.contains(u.target)&&T(e,!1)},h=u=>{e.isOpen&&u.key==="Escape"&&!u.defaultPrevented&&(u.preventDefault(),u.stopPropagation(),T(e))},g=u=>{!e.isOpen||e.dialog.contains(u==null?void 0:u.target)||(cancelAnimationFrame(e.positionFrame),e.positionFrame=requestAnimationFrame(()=>N(e)))};document.addEventListener("pointerdown",p,!0),document.addEventListener("focusin",p),e.root.addEventListener("keydown",h),window.addEventListener("resize",g),document.addEventListener("scroll",g,!0),(y=window.visualViewport)==null||y.addEventListener("resize",g),(S=window.visualViewport)==null||S.addEventListener("scroll",g),window.ResizeObserver&&(e.popupObserver=new ResizeObserver(()=>g()),e.popupObserver.observe(e.fieldRow),e.popupObserver.observe(e.dialog)),e.dispose=()=>{var u,f,M;T(e,!1),cancelAnimationFrame(e.positionFrame),(u=e.popupObserver)==null||u.disconnect(),document.removeEventListener("pointerdown",p,!0),document.removeEventListener("focusin",p),e.root.removeEventListener("keydown",h),window.removeEventListener("resize",g),document.removeEventListener("scroll",g,!0),(f=window.visualViewport)==null||f.removeEventListener("resize",g),(M=window.visualViewport)==null||M.removeEventListener("scroll",g)}}function ke(e){var h,g,y,S,u,f,M,R;let t=JSON.stringify(e.options);if(e.renderSignature===t)return;let n=e.isOpen?document.activeElement:null,r=(h=n==null?void 0:n.dataset)==null?void 0:h.date,i=n==null?void 0: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=ve.includes(a.DateFormat)?a.DateFormat:"YYYY-MM-DD",e.cycle=Number(a.HourCycle)===12?12:24,e.step=Number((g=a.MinuteStep)!=null?g: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((y=a.FirstDayOfWeek)!=null?y:1),!Number.isInteger(e.firstDay)||e.firstDay<0||e.firstDay>6)throw Error("FirstDayOfWeek must be 0\u20136.");e.disabledDates=new Set(ae((S=a.DisabledDatesJson)!=null?S:a.DisabledDates,"DisabledDates").map(o=>typeof o=="string"?o:o.Date));for(let o of e.disabledDates)if(!v(o))throw Error("DisabledDates must contain ISO calendar dates.");for(let o of["Min","Max"])if(a[o]&&!(e.timeOnly?V(a[o]):v(E(a[o]))&&(!e.dateTime||V(q(a[o])))))throw Error(o+" 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 o of["MinRangeDays","MaxRangeDays"])if(a[o]!==void 0&&(!Number.isInteger(Number(a[o]))||Number(a[o])<0))throw Error(o+" 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||"")],b=JSON.stringify(m),d=b!==e.inputSignature;if(e.inputSignature=b,e.range?(e.start=m[0],e.end=m[1]):e.value=m[0],e.fields.forEach((o,x)=>{o.label.textContent=e.range?e.label+(x?" \u2014 end":" \u2014 start"):e.dateTime?e.label+(x?" \u2014 time":" \u2014 date"):e.label,o.input.disabled=!!a.IsDisabled,o.input.readOnly=!!a.IsReadOnly,o.input.required=!!a.IsRequired,o.input.placeholder=String(a.Placeholder||(e.timeOnly||e.dateTime&&x?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,d||e.previousFormat!==e.format||e.previousCycle!==e.cycle){fe(e);let o=m.some(Boolean);z(e,o?pe(e,e.timeOnly?"":e.range?e.start:E(e.value),e.end||"",e.timeOnly?e.value:q(e.value)):""),e.previousFormat=e.format,e.previousCycle=e.cycle}e.monthSelect.replaceChildren();for(let o=0;o<12;o++)s(e.monthSelect,o,new Intl.DateTimeFormat(e.locale,{month:"long"}).format(new Date(2024,o,1)));(u=e.calendar.tHead)==null||u.remove();let D=l("thead"),p=l("tr");for(let o=0;o<7;o++){let x=new Date(2024,0,7+(o+e.firstDay)%7),L=l("th","",new Intl.DateTimeFormat(e.locale,{weekday:"short"}).format(x));L.scope="col",L.abbr=new Intl.DateTimeFormat(e.locale,{weekday:"long"}).format(x),p.append(L)}if(D.append(p),e.calendar.prepend(D),e.presets.replaceChildren(),e.presets.hidden=!e.range,e.range)for(let o of ae((f=a.PresetsJson)!=null?f:a.Presets,"Presets")){if(!o.Label||!v(o.StartDate)||!v(o.EndDate))throw Error("Presets need Label, StartDate and EndDate.");let x=O(o.Label,()=>{e.draftStart=o.StartDate,e.draftEnd=o.EndDate,e.rangeNext="start",e.focusDate=e.draftStart,e.month=e.focusDate.slice(0,7),e.dialogError.textContent="",A(e),P(e)});x.disabled=!!ce(o.StartDate,o.EndDate,{...a,disabled:e.disabledDates}),e.presets.append(x)}e.isOpen&&(a.IsDisabled||a.IsReadOnly||d?T(e):(A(e),Q(e),r?(M=e.calendar.querySelector('[data-date="'+r+'"]'))==null||M.focus({preventScroll:!0}):i&&((R=document.getElementById(i))==null||R.focus({preventScroll:!0})),N(e))),e.renderSignature=t}var he=()=>ye("TimePicker",xe,ke);he();})();
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/** Private O11 pilot. Enhances stable native wrappers; never owns their children. */
|
|
2
|
+
import { type MotionEffect } from './motion/controller.js';
|
|
3
|
+
import { type ComponentMotionSettings } from './motion/component-settings.js';
|
|
4
|
+
export interface NativeMotionOptions {
|
|
5
|
+
EnableMotion?: boolean;
|
|
6
|
+
Preference?: 'System' | 'Reduced' | 'Off';
|
|
7
|
+
UseDefaultDuration?: boolean;
|
|
8
|
+
DurationMs?: number;
|
|
9
|
+
Easing?: ComponentMotionSettings['easing'];
|
|
10
|
+
Effect?: MotionEffect;
|
|
11
|
+
ReplayKey?: string;
|
|
12
|
+
ActivePanel?: string;
|
|
13
|
+
FocusFallbackId?: string;
|
|
14
|
+
}
|
|
15
|
+
type Kind = 'provider' | 'container' | 'button' | 'field' | 'modal' | 'workspace';
|
|
16
|
+
export declare function nativeMotionSettings(p: NativeMotionOptions): ComponentMotionSettings;
|
|
17
|
+
/** Multiple producer scripts share this registry, never overlapping body controllers. */
|
|
18
|
+
export declare function createNativeMotionRuntime(): {
|
|
19
|
+
version: string;
|
|
20
|
+
sync: (kind: Kind, hostId: string, p: NativeMotionOptions, ownerId?: string) => string;
|
|
21
|
+
destroy: (id: string) => void;
|
|
22
|
+
capture: (id: string) => void | undefined;
|
|
23
|
+
/** Read-only counts for lifecycle checks; does not expose application data. */
|
|
24
|
+
inspect: () => {
|
|
25
|
+
owners: number;
|
|
26
|
+
kinds: Kind[];
|
|
27
|
+
};
|
|
28
|
+
};
|
|
29
|
+
declare global {
|
|
30
|
+
interface Window {
|
|
31
|
+
BluUIMotionPilot?: ReturnType<typeof createNativeMotionRuntime>;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
export {};
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
/** Private, unpublished O11 1.2 integration. Enhances stable native wrappers; never owns their children. */
|
|
2
|
+
import { type MotionController, type MotionEffect } from './motion/controller.js';
|
|
3
|
+
import { type ComponentMotionSettings } from './motion/component-settings.js';
|
|
4
|
+
import { type MotionOrigin } from './motion/effects.js';
|
|
5
|
+
export interface NativeMotionOptions {
|
|
6
|
+
EnableMotion?: boolean;
|
|
7
|
+
Preference?: 'System' | 'Reduced' | 'Off';
|
|
8
|
+
UseDefaultDuration?: boolean;
|
|
9
|
+
DurationMs?: number;
|
|
10
|
+
Easing?: ComponentMotionSettings['easing'];
|
|
11
|
+
Effect?: MotionEffect;
|
|
12
|
+
Origin?: MotionOrigin;
|
|
13
|
+
Phase?: 'enter' | 'exit';
|
|
14
|
+
ReplayKey?: string;
|
|
15
|
+
ActivePanel?: string;
|
|
16
|
+
FocusFallbackId?: string;
|
|
17
|
+
Ripple?: boolean;
|
|
18
|
+
Value?: number;
|
|
19
|
+
Precision?: number;
|
|
20
|
+
Locale?: string;
|
|
21
|
+
IsVisible?: boolean;
|
|
22
|
+
IsActive?: boolean;
|
|
23
|
+
Paused?: boolean;
|
|
24
|
+
Once?: boolean;
|
|
25
|
+
Order?: string;
|
|
26
|
+
Columns?: number;
|
|
27
|
+
GapMs?: number;
|
|
28
|
+
LoopDurationMs?: number;
|
|
29
|
+
Decoration?: string;
|
|
30
|
+
RowKeysJson?: string;
|
|
31
|
+
RowsJson?: string;
|
|
32
|
+
ColumnsJson?: string;
|
|
33
|
+
RowKey?: string;
|
|
34
|
+
Page?: number;
|
|
35
|
+
PageSize?: number;
|
|
36
|
+
SortKey?: string;
|
|
37
|
+
SortDirection?: string;
|
|
38
|
+
Loading?: boolean;
|
|
39
|
+
Progress?: number;
|
|
40
|
+
Label?: string;
|
|
41
|
+
Variant?: string;
|
|
42
|
+
}
|
|
43
|
+
export type Kind = string;
|
|
44
|
+
export type Adapter = {
|
|
45
|
+
update(p: NativeMotionOptions): void;
|
|
46
|
+
capture?(): void;
|
|
47
|
+
destroy(): void;
|
|
48
|
+
};
|
|
49
|
+
export declare function nativeMotionSettings(p: NativeMotionOptions): ComponentMotionSettings;
|
|
50
|
+
/** Multiple producer scripts share this registry, never overlapping body controllers. */
|
|
51
|
+
export declare function createNativeMotionRuntime(): {
|
|
52
|
+
version: string;
|
|
53
|
+
sync: (kind: Kind, hostId: string, p: NativeMotionOptions, ownerId?: string) => string;
|
|
54
|
+
destroy: (id: string) => void;
|
|
55
|
+
register(kind: string, build: (root: HTMLElement, motion: MotionController) => Adapter): void;
|
|
56
|
+
play(id: string, targetId: string, effect?: MotionEffect, phase?: "enter" | "exit"): Promise<string>;
|
|
57
|
+
cancel(id: string, targetId: string): void;
|
|
58
|
+
setPreference(id: string, preference: NativeMotionOptions["Preference"]): string;
|
|
59
|
+
capture: (id: string) => void | undefined;
|
|
60
|
+
/** Read-only counts for lifecycle checks; does not expose application data. */
|
|
61
|
+
inspect: () => {
|
|
62
|
+
owners: number;
|
|
63
|
+
kinds: string[];
|
|
64
|
+
};
|
|
65
|
+
};
|
|
66
|
+
declare global {
|
|
67
|
+
interface Window {
|
|
68
|
+
BluUIMotion12?: ReturnType<typeof createNativeMotionRuntime>;
|
|
69
|
+
BluUIMotion12Plugins?: Array<(runtime: ReturnType<typeof createNativeMotionRuntime>) => void>;
|
|
70
|
+
}
|
|
71
|
+
}
|
package/dist/notification.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a,b,c,d}from"./chunk-
|
|
1
|
+
import"./chunk-VAM3FPCS.js";import{a,b,c,d}from"./chunk-OLDA73XG.js";import"./chunk-MEEQNPGM.js";import"./chunk-5TEIXA4R.js";import"./chunk-SDMH2EVD.js";export{a as createNotification,d as dismissNotification,b as showNotification,c as updateNotification};
|
package/dist/pagination.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a}from"./chunk-
|
|
1
|
+
import"./chunk-4LHIQROI.js";import{a}from"./chunk-G6OW4OZM.js";import"./chunk-MEEQNPGM.js";import"./chunk-5TEIXA4R.js";import"./chunk-SDMH2EVD.js";export{a as createPagination};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@import './form-layout.css';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import"./chunk-FNX33PDD.js";import{c as a}from"./chunk-TZSX4OTV.js";import"./chunk-EOKNLCNS.js";export{a as createRadioButton};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@import './form-layout.css';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import"./chunk-IO22GWON.js";import{d as a}from"./chunk-TZSX4OTV.js";import"./chunk-EOKNLCNS.js";export{a as createRadioGroup};
|
package/dist/select.css
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@import './form-layout.css';
|
package/dist/select.d.ts
ADDED
package/dist/select.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a}from"./chunk-MYVLBALF.js";import"./chunk-EOKNLCNS.js";export{a as createSelect};
|
package/dist/sidebar.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a}from"./chunk-
|
|
1
|
+
import"./chunk-7CEOCZ5L.js";import{a}from"./chunk-KBWB4OIF.js";import"./chunk-SDMH2EVD.js";export{a as createSidebar};
|