@prolibu-suite/cobalt-core 0.10.2 → 0.10.4
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/custom-elements.json +44 -22
- package/dist/cjs/co-chip_2.cjs.entry.js +21 -2
- package/dist/cjs/co-number-field.cjs.entry.js +25 -4
- package/dist/cjs/co-overlay.cjs.entry.js +34 -3
- package/dist/cjs/co-popover.cjs.entry.js +16 -2
- package/dist/cjs/cobalt.cjs.js +1 -1
- package/dist/cjs/index-MDAnKsze.js +4 -4
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cobalt/cobalt.esm.js +1 -1
- package/dist/cobalt/p-07416e31.entry.js +1 -0
- package/dist/cobalt/p-1d3a79af.entry.js +1 -0
- package/dist/cobalt/p-8e05b979.entry.js +1 -0
- package/dist/cobalt/{p-410bee4d.entry.js → p-b0762fd8.entry.js} +1 -1
- package/dist/collection/components/co-autocomplete/co-autocomplete.js +1 -1
- package/dist/collection/components/co-avatar-group/co-avatar-group.js +1 -1
- package/dist/collection/components/co-checkbox-group/co-checkbox-group.js +1 -1
- package/dist/collection/components/co-combobox/co-combobox.js +1 -1
- package/dist/collection/components/co-command-search/co-command-search.js +1 -1
- package/dist/collection/components/co-data-table/co-data-table.js +1 -1
- package/dist/collection/components/co-date-range-picker/co-date-range-picker.js +2 -2
- package/dist/collection/components/co-number-field/co-number-field.js +25 -4
- package/dist/collection/components/co-option-list/co-option-list.js +39 -3
- package/dist/collection/components/co-overlay/backdropDismiss.js +12 -0
- package/dist/collection/components/co-overlay/co-overlay.js +22 -3
- package/dist/collection/components/co-popover/co-popover.js +17 -3
- package/dist/collection/components/co-radio-group/co-radio-group.js +1 -1
- package/dist/collection/components/co-ref-field/co-ref-field.js +4 -4
- package/dist/collection/components/co-segmented-bar/co-segmented-bar.js +1 -1
- package/dist/collection/components/co-select/co-select.js +1 -1
- package/dist/collection/components/co-sidebar-nav/co-sidebar-nav.js +1 -1
- package/dist/collection/components/co-toast/co-toast.js +2 -2
- package/dist/collection/components/co-transfer-list/co-transfer-list.js +1 -1
- package/dist/components/co-autocomplete.js +1 -1
- package/dist/components/co-color-picker.js +1 -1
- package/dist/components/co-combobox.js +1 -1
- package/dist/components/co-command-search.js +1 -1
- package/dist/components/co-date-picker.js +1 -1
- package/dist/components/co-date-range-picker.js +1 -1
- package/dist/components/co-date-range.js +1 -1
- package/dist/components/co-date-time-picker.js +1 -1
- package/dist/components/co-drawer.js +1 -1
- package/dist/components/co-menu-item.js +1 -1
- package/dist/components/co-menu.js +1 -1
- package/dist/components/co-modal.js +1 -1
- package/dist/components/co-number-field.js +1 -1
- package/dist/components/co-option-list.js +1 -1
- package/dist/components/co-overlay.js +1 -1
- package/dist/components/co-popover.js +1 -1
- package/dist/components/co-ref-field.js +1 -1
- package/dist/components/co-select.js +1 -1
- package/dist/components/{p-DrTRB8Ev.js → p-B56LX2SH.js} +1 -1
- package/dist/components/p-BJh68Jqe.js +1 -0
- package/dist/components/{p-DRP8D9ro.js → p-D9T7zKeL.js} +1 -1
- package/dist/components/p-Dh8ffSjK.js +1 -0
- package/dist/components/{p-DxtNejr2.js → p-P4HlMBlL.js} +1 -1
- package/dist/esm/co-chip_2.entry.js +21 -2
- package/dist/esm/co-number-field.entry.js +25 -4
- package/dist/esm/co-overlay.entry.js +34 -3
- package/dist/esm/co-popover.entry.js +16 -2
- package/dist/esm/cobalt.js +1 -1
- package/dist/esm/index-DH5lfRNj.js +4 -4
- package/dist/esm/loader.js +1 -1
- package/dist/types/components/co-number-field/co-number-field.d.ts +7 -0
- package/dist/types/components/co-option-list/co-option-list.d.ts +7 -0
- package/dist/types/components/co-overlay/backdropDismiss.d.ts +10 -0
- package/dist/types/components/co-overlay/co-overlay.d.ts +4 -0
- package/dist/types/components/co-popover/co-popover.d.ts +2 -0
- package/dist/types/components.d.ts +4 -3
- package/package.json +4 -4
- package/dist/cobalt/p-2a30c143.entry.js +0 -1
- package/dist/cobalt/p-39dc4ec8.entry.js +0 -1
- package/dist/cobalt/p-be34e447.entry.js +0 -1
- package/dist/components/p-CBTGN490.js +0 -1
- package/dist/components/p-D7Lhxz7L.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as o,p as a,H as e,c as r,h as s}from"./index.js";import{d as t,a as c}from"./p-CBTGN490.js";import{s as i}from"./p-CBX_oabB.js";import{d}from"./p-DNJAIVfI.js";const n=a(class extends e{constructor(o){super(),!1!==o&&this.__registerHost(),this.__attachShadow(),this.coClose=r(this,"coClose",7),this.coAfterClose=r(this,"coAfterClose",3),this.coAfterOpen=r(this,"coAfterOpen",3),this.open=!1,this.heading="",this.closable=!0,this.closeOnOverlay=!0,this.closeOnEscape=!1,this.size="md",this.noDividers=!1,this.headerDivider=!0,this.hasFooter=!1,this.handleFooterSlotChange=o=>{this.hasFooter=i(o)},this.handleOverlayClick=()=>{this.closeOnOverlay&&this.coClose.emit()},this.handleCloseClick=()=>{this.coClose.emit()},this.stopPropagation=o=>{o.stopPropagation()},this.handleTransitionEnd=o=>{if(o.target!==this.modalEl)return;const a=c(o.propertyName,this.open,"transform");"after-open"===a?this.coAfterOpen.emit():"after-close"===a&&this.coAfterClose.emit()}}handleKeydown(o){this.open&&this.closeOnEscape&&"Escape"===o.key&&this.coClose.emit()}render(){return s("co-overlay",{key:"9b796364a697af4d4a0ede50e5dd5516ccaa299f",open:this.open,onCoClose:this.handleOverlayClick},s("div",{key:"bea863aedb405cdc492277add25e2c08ea7ef258",class:"co-modal__frame co-sq-elevation-fallback"},s("div",{key:"05f9e86f7a813243913f60c6a042fb93ed65a463",class:{"co-modal":!0,"co-sq-clip":!0,"co-sq-elevation":!0,"co-modal--open":this.open,"co-modal--sm":"sm"===this.size,"co-modal--lg":"lg"===this.size,"co-modal--full":"full"===this.size,"co-modal--no-dividers":this.noDividers,"co-modal--no-header-divider":!this.headerDivider},part:"modal",ref:o=>this.modalEl=o,role:"dialog","aria-modal":"true","aria-labelledby":this.heading?"modal-heading":void 0,onClick:this.stopPropagation,onTransitionEnd:this.handleTransitionEnd},s("div",{key:"8ecd9f7f4413339e484710e2abef1c21fc7f25d0",class:"co-modal__header",part:"header"},s("slot",{key:"09df61b3aac8a26e0eb85a6a6aa48f9a7f547dbf",name:"header-leading"}),s("div",{key:"8e9a55561a1b5615f77eb3eb96284ddc68eddbc3",class:"co-modal__header-text",part:"header-text"},s("h2",{key:"65c083247543448d9f527592cd8614a4c713cf4c",class:"co-modal__heading",part:"heading",id:"modal-heading"},this.heading),this.description&&s("p",{key:"c871aa6549cf56265a02048ca18f736d92d1a482",class:"co-modal__description",part:"description"},this.description)),s("slot",{key:"106a5be71c8c03736313c1084c61d3b836ebb495",name:"header-actions"}),this.closable&&s("button",{key:"a0df67cd09e5f414c58f9f67f6a92c58b9f4773b",class:"co-modal__close",type:"button","aria-label":"Close",onClick:this.handleCloseClick},s("co-icon",{key:"e766981fff30de0c79599756dde74c5981d5c9fd",name:"x",size:20}))),!this.noDividers&&s("div",{key:"355e455c19cbc4a0783c0e0c2689265e6f599484",class:"co-modal__body",part:"body"},s("slot",{key:"fa6d3310464ff33de17618561182736bc6cef0e5"})),s("div",{key:"43b89751fac3fd1b707a284d260e91dd7d7ea8a6",class:{"co-modal__footer":!0,"co-modal__footer--empty":!this.hasFooter},part:"footer"},s("slot",{key:"e9821b0712a6903c923f9bb50393e4b85545c211",name:"footer",onSlotchange:this.handleFooterSlotChange})))))}static get style(){return'.co-sq-elevation{border-radius:var(--co-sq-r);corner-shape:squircle;box-shadow:var(--co-sq-shadow)}.co-sq-clip{overflow:hidden;border-radius:var(--co-sq-r);corner-shape:squircle}@supports not (corner-shape: squircle){.co-sq-elevation{box-shadow:none}.co-sq-elevation-fallback{filter:var(--co-sq-drop-shadow)}.co-sq-clip{border-radius:0;--co-sq-tl:url("data:image/svg+xml,<svg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 100 100%27 preserveAspectRatio=%27none%27><path d=%27M100 0L97.5 0L95 0L92.5 0L90 0L87.5 0.01L85 0.01L82.5 0.02L80 0.04L77.5 0.06L75 0.1L72.5 0.14L70 0.2L67.5 0.28L65 0.38L62.5 0.5L60 0.65L57.5 0.83L55 1.04L52.5 1.3L50 1.6L47.5 1.96L45 2.37L42.5 2.85L40 3.41L37.5 4.05L35 4.8L32.5 5.65L30 6.63L27.5 7.77L25 9.07L22.5 10.58L20 12.34L17.5 14.41L15 16.85L12.5 19.79L10 23.42L7.5 28.06L5 34.37L2.5 44.29L0 100L100 100Z%27 fill=%27%23fff%27/></svg>");--co-sq-tr:url("data:image/svg+xml,<svg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 100 100%27 preserveAspectRatio=%27none%27><path d=%27M0 0L2.5 0L5 0L7.5 0L10 0L12.5 0.01L15 0.01L17.5 0.02L20 0.04L22.5 0.06L25 0.1L27.5 0.14L30 0.2L32.5 0.28L35 0.38L37.5 0.5L40 0.65L42.5 0.83L45 1.04L47.5 1.3L50 1.6L52.5 1.96L55 2.37L57.5 2.85L60 3.41L62.5 4.05L65 4.8L67.5 5.65L70 6.63L72.5 7.77L75 9.07L77.5 10.58L80 12.34L82.5 14.41L85 16.85L87.5 19.79L90 23.42L92.5 28.06L95 34.37L97.5 44.29L100 100L0 100Z%27 fill=%27%23fff%27/></svg>");--co-sq-bl:url("data:image/svg+xml,<svg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 100 100%27 preserveAspectRatio=%27none%27><path d=%27M0 0L2.5 55.71L5 65.63L7.5 71.94L10 76.58L12.5 80.21L15 83.15L17.5 85.59L20 87.66L22.5 89.42L25 90.93L27.5 92.23L30 93.37L32.5 94.35L35 95.2L37.5 95.95L40 96.59L42.5 97.15L45 97.63L47.5 98.04L50 98.4L52.5 98.7L55 98.96L57.5 99.17L60 99.35L62.5 99.5L65 99.62L67.5 99.72L70 99.8L72.5 99.86L75 99.9L77.5 99.94L80 99.96L82.5 99.98L85 99.99L87.5 99.99L90 100L92.5 100L95 100L97.5 100L100 100L100 0Z%27 fill=%27%23fff%27/></svg>");--co-sq-br:url("data:image/svg+xml,<svg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 100 100%27 preserveAspectRatio=%27none%27><path d=%27M100 0L97.5 55.71L95 65.63L92.5 71.94L90 76.58L87.5 80.21L85 83.15L82.5 85.59L80 87.66L77.5 89.42L75 90.93L72.5 92.23L70 93.37L67.5 94.35L65 95.2L62.5 95.95L60 96.59L57.5 97.15L55 97.63L52.5 98.04L50 98.4L47.5 98.7L45 98.96L42.5 99.17L40 99.35L37.5 99.5L35 99.62L32.5 99.72L30 99.8L27.5 99.86L25 99.9L22.5 99.94L20 99.96L17.5 99.98L15 99.99L12.5 99.99L10 100L7.5 100L5 100L2.5 100L0 100L0 0Z%27 fill=%27%23fff%27/></svg>");-webkit-mask:var(--co-sq-tl) top left / var(--co-sq-r) var(--co-sq-r) no-repeat, var(--co-sq-tr) top right / var(--co-sq-r) var(--co-sq-r) no-repeat, var(--co-sq-bl) bottom left / var(--co-sq-r) var(--co-sq-r) no-repeat, var(--co-sq-br) bottom right / var(--co-sq-r) var(--co-sq-r) no-repeat, linear-gradient(#fff 0 0) center / 100% calc(100% - 2 * var(--co-sq-r) + 2px) no-repeat, linear-gradient(#fff 0 0) center / calc(100% - 2 * var(--co-sq-r) + 2px) 100% no-repeat;mask:var(--co-sq-tl) top left / var(--co-sq-r) var(--co-sq-r) no-repeat, var(--co-sq-tr) top right / var(--co-sq-r) var(--co-sq-r) no-repeat, var(--co-sq-bl) bottom left / var(--co-sq-r) var(--co-sq-r) no-repeat, var(--co-sq-br) bottom right / var(--co-sq-r) var(--co-sq-r) no-repeat, linear-gradient(#fff 0 0) center / 100% calc(100% - 2 * var(--co-sq-r) + 2px) no-repeat, linear-gradient(#fff 0 0) center / calc(100% - 2 * var(--co-sq-r) + 2px) 100% no-repeat}}:host{display:contents;--co-overlay-blur:8px;--co-overlay-bg:rgba(31, 28, 27, 0.35)}.co-modal__frame{display:flex;contain:layout;--co-sq-drop-shadow:drop-shadow(0 1px 2px rgba(31, 28, 27, 0.06)) drop-shadow(0 14px 34px rgba(31, 28, 27, 0.16))}.co-modal{display:flex;flex-direction:column;background:var(--co-semantic-surface-secondary);--co-modal-r:var(--co-border-radius-xl);--co-sq-r:var(--co-modal-r);--co-sq-shadow:0 1px 4px rgba(31, 28, 27, 0.06), 0 14px 68px rgba(31, 28, 27, 0.16);max-width:540px;width:90vw;max-height:80vh;font-family:var(--co-font-family-primary);transform:scale(0.96);opacity:0;transition:transform var(--co-motion-duration-fast) var(--co-motion-ease-in), opacity var(--co-motion-duration-fast) var(--co-motion-ease-in)}.co-modal--sm{max-width:400px}.co-modal--lg{max-width:680px}.co-modal--full{max-width:min(1400px, 95vw);width:95vw;height:92vh;max-height:92vh}.co-modal--full .co-modal__body{flex:1;min-height:0;padding:0;overflow:hidden}.co-modal--open{transform:scale(1);opacity:1;transition:transform var(--co-motion-duration-base) var(--co-motion-ease-out), opacity var(--co-motion-duration-base) var(--co-motion-ease-out)}.co-modal__header{display:flex;align-items:flex-start;gap:var(--co-spacing-md);padding:var(--co-spacing-xl) var(--co-spacing-xl) var(--co-spacing-md)}.co-modal__header-text{display:flex;flex-direction:column;gap:var(--co-spacing-sm);flex:1}.co-modal__heading{margin:0;font-size:var(--co-font-size-20);font-weight:700;color:var(--co-semantic-text-default);line-height:1.3}.co-modal__description{margin:0;font-size:var(--co-font-size-14);color:var(--co-semantic-text-secondary);line-height:1.5}.co-modal__close{display:flex;align-items:center;justify-content:center;padding:var(--co-spacing-xs);margin:0;border:none;background:transparent;cursor:pointer;color:var(--co-semantic-text-muted);border-radius:var(--co-border-radius-sm);flex-shrink:0;transition:background var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-modal__close:hover{background:var(--co-semantic-surface-hover)}.co-modal__body{padding:var(--co-spacing-lg) var(--co-spacing-xl);overflow-y:auto;overscroll-behavior:contain;font-size:var(--co-font-size-14);color:var(--co-semantic-text-secondary);line-height:1.6;border-top:1px solid var(--co-semantic-border-default)}.co-modal__body:empty{display:none}.co-modal__footer{display:flex;justify-content:flex-end;gap:var(--co-spacing-md);padding:var(--co-spacing-lg) var(--co-spacing-xl) var(--co-spacing-xl);border-top:1px solid var(--co-semantic-border-default);--co-button-radius:var(--co-border-radius-xs)}.co-modal__footer--empty{display:none}.co-modal--no-dividers .co-modal__footer{border-top:none}.co-modal--no-header-divider .co-modal__body{border-top:none;padding-top:0}'}},[257,"co-modal",{open:[1540],heading:[1],description:[1],closable:[4],closeOnOverlay:[4,"close-on-overlay"],closeOnEscape:[4,"close-on-escape"],size:[513],noDividers:[516,"no-dividers"],headerDivider:[4,"header-divider"],hasFooter:[32]},[[4,"keydown","handleKeydown"]]]);function l(){"undefined"!=typeof customElements&&["co-modal","co-icon","co-overlay"].forEach((a=>{switch(a){case"co-modal":customElements.get(o(a))||customElements.define(o(a),n);break;case"co-icon":customElements.get(o(a))||d();break;case"co-overlay":customElements.get(o(a))||t()}}))}l();const L=n,f=l;export{L as CoModal,f as defineCustomElement}
|
|
1
|
+
import{t as o,p as a,H as e,c as r,h as s}from"./index.js";import{d as t,a as c}from"./p-BJh68Jqe.js";import{s as i}from"./p-CBX_oabB.js";import{d}from"./p-DNJAIVfI.js";const n=a(class extends e{constructor(o){super(),!1!==o&&this.__registerHost(),this.__attachShadow(),this.coClose=r(this,"coClose",7),this.coAfterClose=r(this,"coAfterClose",3),this.coAfterOpen=r(this,"coAfterOpen",3),this.open=!1,this.heading="",this.closable=!0,this.closeOnOverlay=!0,this.closeOnEscape=!1,this.size="md",this.noDividers=!1,this.headerDivider=!0,this.hasFooter=!1,this.handleFooterSlotChange=o=>{this.hasFooter=i(o)},this.handleOverlayClick=()=>{this.closeOnOverlay&&this.coClose.emit()},this.handleCloseClick=()=>{this.coClose.emit()},this.stopPropagation=o=>{o.stopPropagation()},this.handleTransitionEnd=o=>{if(o.target!==this.modalEl)return;const a=c(o.propertyName,this.open,"transform");"after-open"===a?this.coAfterOpen.emit():"after-close"===a&&this.coAfterClose.emit()}}handleKeydown(o){this.open&&this.closeOnEscape&&"Escape"===o.key&&this.coClose.emit()}render(){return s("co-overlay",{key:"9b796364a697af4d4a0ede50e5dd5516ccaa299f",open:this.open,onCoClose:this.handleOverlayClick},s("div",{key:"bea863aedb405cdc492277add25e2c08ea7ef258",class:"co-modal__frame co-sq-elevation-fallback"},s("div",{key:"05f9e86f7a813243913f60c6a042fb93ed65a463",class:{"co-modal":!0,"co-sq-clip":!0,"co-sq-elevation":!0,"co-modal--open":this.open,"co-modal--sm":"sm"===this.size,"co-modal--lg":"lg"===this.size,"co-modal--full":"full"===this.size,"co-modal--no-dividers":this.noDividers,"co-modal--no-header-divider":!this.headerDivider},part:"modal",ref:o=>this.modalEl=o,role:"dialog","aria-modal":"true","aria-labelledby":this.heading?"modal-heading":void 0,onClick:this.stopPropagation,onTransitionEnd:this.handleTransitionEnd},s("div",{key:"8ecd9f7f4413339e484710e2abef1c21fc7f25d0",class:"co-modal__header",part:"header"},s("slot",{key:"09df61b3aac8a26e0eb85a6a6aa48f9a7f547dbf",name:"header-leading"}),s("div",{key:"8e9a55561a1b5615f77eb3eb96284ddc68eddbc3",class:"co-modal__header-text",part:"header-text"},s("h2",{key:"65c083247543448d9f527592cd8614a4c713cf4c",class:"co-modal__heading",part:"heading",id:"modal-heading"},this.heading),this.description&&s("p",{key:"c871aa6549cf56265a02048ca18f736d92d1a482",class:"co-modal__description",part:"description"},this.description)),s("slot",{key:"106a5be71c8c03736313c1084c61d3b836ebb495",name:"header-actions"}),this.closable&&s("button",{key:"a0df67cd09e5f414c58f9f67f6a92c58b9f4773b",class:"co-modal__close",type:"button","aria-label":"Close",onClick:this.handleCloseClick},s("co-icon",{key:"e766981fff30de0c79599756dde74c5981d5c9fd",name:"x",size:20}))),!this.noDividers&&s("div",{key:"355e455c19cbc4a0783c0e0c2689265e6f599484",class:"co-modal__body",part:"body"},s("slot",{key:"fa6d3310464ff33de17618561182736bc6cef0e5"})),s("div",{key:"43b89751fac3fd1b707a284d260e91dd7d7ea8a6",class:{"co-modal__footer":!0,"co-modal__footer--empty":!this.hasFooter},part:"footer"},s("slot",{key:"e9821b0712a6903c923f9bb50393e4b85545c211",name:"footer",onSlotchange:this.handleFooterSlotChange})))))}static get style(){return'.co-sq-elevation{border-radius:var(--co-sq-r);corner-shape:squircle;box-shadow:var(--co-sq-shadow)}.co-sq-clip{overflow:hidden;border-radius:var(--co-sq-r);corner-shape:squircle}@supports not (corner-shape: squircle){.co-sq-elevation{box-shadow:none}.co-sq-elevation-fallback{filter:var(--co-sq-drop-shadow)}.co-sq-clip{border-radius:0;--co-sq-tl:url("data:image/svg+xml,<svg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 100 100%27 preserveAspectRatio=%27none%27><path d=%27M100 0L97.5 0L95 0L92.5 0L90 0L87.5 0.01L85 0.01L82.5 0.02L80 0.04L77.5 0.06L75 0.1L72.5 0.14L70 0.2L67.5 0.28L65 0.38L62.5 0.5L60 0.65L57.5 0.83L55 1.04L52.5 1.3L50 1.6L47.5 1.96L45 2.37L42.5 2.85L40 3.41L37.5 4.05L35 4.8L32.5 5.65L30 6.63L27.5 7.77L25 9.07L22.5 10.58L20 12.34L17.5 14.41L15 16.85L12.5 19.79L10 23.42L7.5 28.06L5 34.37L2.5 44.29L0 100L100 100Z%27 fill=%27%23fff%27/></svg>");--co-sq-tr:url("data:image/svg+xml,<svg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 100 100%27 preserveAspectRatio=%27none%27><path d=%27M0 0L2.5 0L5 0L7.5 0L10 0L12.5 0.01L15 0.01L17.5 0.02L20 0.04L22.5 0.06L25 0.1L27.5 0.14L30 0.2L32.5 0.28L35 0.38L37.5 0.5L40 0.65L42.5 0.83L45 1.04L47.5 1.3L50 1.6L52.5 1.96L55 2.37L57.5 2.85L60 3.41L62.5 4.05L65 4.8L67.5 5.65L70 6.63L72.5 7.77L75 9.07L77.5 10.58L80 12.34L82.5 14.41L85 16.85L87.5 19.79L90 23.42L92.5 28.06L95 34.37L97.5 44.29L100 100L0 100Z%27 fill=%27%23fff%27/></svg>");--co-sq-bl:url("data:image/svg+xml,<svg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 100 100%27 preserveAspectRatio=%27none%27><path d=%27M0 0L2.5 55.71L5 65.63L7.5 71.94L10 76.58L12.5 80.21L15 83.15L17.5 85.59L20 87.66L22.5 89.42L25 90.93L27.5 92.23L30 93.37L32.5 94.35L35 95.2L37.5 95.95L40 96.59L42.5 97.15L45 97.63L47.5 98.04L50 98.4L52.5 98.7L55 98.96L57.5 99.17L60 99.35L62.5 99.5L65 99.62L67.5 99.72L70 99.8L72.5 99.86L75 99.9L77.5 99.94L80 99.96L82.5 99.98L85 99.99L87.5 99.99L90 100L92.5 100L95 100L97.5 100L100 100L100 0Z%27 fill=%27%23fff%27/></svg>");--co-sq-br:url("data:image/svg+xml,<svg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 100 100%27 preserveAspectRatio=%27none%27><path d=%27M100 0L97.5 55.71L95 65.63L92.5 71.94L90 76.58L87.5 80.21L85 83.15L82.5 85.59L80 87.66L77.5 89.42L75 90.93L72.5 92.23L70 93.37L67.5 94.35L65 95.2L62.5 95.95L60 96.59L57.5 97.15L55 97.63L52.5 98.04L50 98.4L47.5 98.7L45 98.96L42.5 99.17L40 99.35L37.5 99.5L35 99.62L32.5 99.72L30 99.8L27.5 99.86L25 99.9L22.5 99.94L20 99.96L17.5 99.98L15 99.99L12.5 99.99L10 100L7.5 100L5 100L2.5 100L0 100L0 0Z%27 fill=%27%23fff%27/></svg>");-webkit-mask:var(--co-sq-tl) top left / var(--co-sq-r) var(--co-sq-r) no-repeat, var(--co-sq-tr) top right / var(--co-sq-r) var(--co-sq-r) no-repeat, var(--co-sq-bl) bottom left / var(--co-sq-r) var(--co-sq-r) no-repeat, var(--co-sq-br) bottom right / var(--co-sq-r) var(--co-sq-r) no-repeat, linear-gradient(#fff 0 0) center / 100% calc(100% - 2 * var(--co-sq-r) + 2px) no-repeat, linear-gradient(#fff 0 0) center / calc(100% - 2 * var(--co-sq-r) + 2px) 100% no-repeat;mask:var(--co-sq-tl) top left / var(--co-sq-r) var(--co-sq-r) no-repeat, var(--co-sq-tr) top right / var(--co-sq-r) var(--co-sq-r) no-repeat, var(--co-sq-bl) bottom left / var(--co-sq-r) var(--co-sq-r) no-repeat, var(--co-sq-br) bottom right / var(--co-sq-r) var(--co-sq-r) no-repeat, linear-gradient(#fff 0 0) center / 100% calc(100% - 2 * var(--co-sq-r) + 2px) no-repeat, linear-gradient(#fff 0 0) center / calc(100% - 2 * var(--co-sq-r) + 2px) 100% no-repeat}}:host{display:contents;--co-overlay-blur:8px;--co-overlay-bg:rgba(31, 28, 27, 0.35)}.co-modal__frame{display:flex;contain:layout;--co-sq-drop-shadow:drop-shadow(0 1px 2px rgba(31, 28, 27, 0.06)) drop-shadow(0 14px 34px rgba(31, 28, 27, 0.16))}.co-modal{display:flex;flex-direction:column;background:var(--co-semantic-surface-secondary);--co-modal-r:var(--co-border-radius-xl);--co-sq-r:var(--co-modal-r);--co-sq-shadow:0 1px 4px rgba(31, 28, 27, 0.06), 0 14px 68px rgba(31, 28, 27, 0.16);max-width:540px;width:90vw;max-height:80vh;font-family:var(--co-font-family-primary);transform:scale(0.96);opacity:0;transition:transform var(--co-motion-duration-fast) var(--co-motion-ease-in), opacity var(--co-motion-duration-fast) var(--co-motion-ease-in)}.co-modal--sm{max-width:400px}.co-modal--lg{max-width:680px}.co-modal--full{max-width:min(1400px, 95vw);width:95vw;height:92vh;max-height:92vh}.co-modal--full .co-modal__body{flex:1;min-height:0;padding:0;overflow:hidden}.co-modal--open{transform:scale(1);opacity:1;transition:transform var(--co-motion-duration-base) var(--co-motion-ease-out), opacity var(--co-motion-duration-base) var(--co-motion-ease-out)}.co-modal__header{display:flex;align-items:flex-start;gap:var(--co-spacing-md);padding:var(--co-spacing-xl) var(--co-spacing-xl) var(--co-spacing-md)}.co-modal__header-text{display:flex;flex-direction:column;gap:var(--co-spacing-sm);flex:1}.co-modal__heading{margin:0;font-size:var(--co-font-size-20);font-weight:700;color:var(--co-semantic-text-default);line-height:1.3}.co-modal__description{margin:0;font-size:var(--co-font-size-14);color:var(--co-semantic-text-secondary);line-height:1.5}.co-modal__close{display:flex;align-items:center;justify-content:center;padding:var(--co-spacing-xs);margin:0;border:none;background:transparent;cursor:pointer;color:var(--co-semantic-text-muted);border-radius:var(--co-border-radius-sm);flex-shrink:0;transition:background var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-modal__close:hover{background:var(--co-semantic-surface-hover)}.co-modal__body{padding:var(--co-spacing-lg) var(--co-spacing-xl);overflow-y:auto;overscroll-behavior:contain;font-size:var(--co-font-size-14);color:var(--co-semantic-text-secondary);line-height:1.6;border-top:1px solid var(--co-semantic-border-default)}.co-modal__body:empty{display:none}.co-modal__footer{display:flex;justify-content:flex-end;gap:var(--co-spacing-md);padding:var(--co-spacing-lg) var(--co-spacing-xl) var(--co-spacing-xl);border-top:1px solid var(--co-semantic-border-default);--co-button-radius:var(--co-border-radius-xs)}.co-modal__footer--empty{display:none}.co-modal--no-dividers .co-modal__footer{border-top:none}.co-modal--no-header-divider .co-modal__body{border-top:none;padding-top:0}'}},[257,"co-modal",{open:[1540],heading:[1],description:[1],closable:[4],closeOnOverlay:[4,"close-on-overlay"],closeOnEscape:[4,"close-on-escape"],size:[513],noDividers:[516,"no-dividers"],headerDivider:[4,"header-divider"],hasFooter:[32]},[[4,"keydown","handleKeydown"]]]);function l(){"undefined"!=typeof customElements&&["co-modal","co-icon","co-overlay"].forEach((a=>{switch(a){case"co-modal":customElements.get(o(a))||customElements.define(o(a),n);break;case"co-icon":customElements.get(o(a))||d();break;case"co-overlay":customElements.get(o(a))||t()}}))}l();const L=n,f=l;export{L as CoModal,f as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as e,p as t,H as i,c as r,h as o}from"./index.js";import{R as n}from"./p-CWneqh4n.js";import{d as s}from"./p-DNJAIVfI.js";const c=(e,t)=>({integer:e.slice(0,15),decimals:t.slice(0,8)});function a(e,t=!1){const i=(null!=e?e:"")+"",r=t&&/^\s*-/.test(i),o=i.replace(/[^\d.]/g,""),[n,...s]=o.split("."),{integer:a,decimals:l}=c(n,s.join("")),d=s.length?`${a}.${l}`:a;return d?r?"-"+d:d:r?"-":""}function l(e){if(!e)return"";const t=e.startsWith("-"),i=t?e.slice(1):e,r=i.indexOf("."),o=r>=0?i.slice(0,r):i,n=r>=0?i.slice(r):"";let s="";for(let e=0;e<o.length;e++)e>0&&(o.length-e)%3==0&&(s+=","),s+=o[e];return`${t?"-":""}${s}${n}`}const d=/[^0-9.,-]/g,u=/[0-9.-]/,h=e=>{let t=0;for(const i of e)u.test(i)&&t++;return t},f=(e,t)=>{if(t<=0)return 0;let i=0;for(let r=0;r<e.length;r++)if(u.test(e[r])&&(i++,i===t))return r+1;return e.length},b=t(class extends i{constructor(e){super(),!1!==e&&this.__registerHost(),this.__attachShadow(),this.coChange=r(this,"coChange",7),this.coClear=r(this,"coClear",7),this.required=!1,this.layout="vertical",this.status="default",this.value=0,this.step=1,this.disabled=!1,this.placeholder="0",this.size="md",this.clearable=!1,this.hideControls=!1,this.focused=!1,this.handleDecrement=()=>{this.canDecrement&&(this.emitValue(this.current-this.step),this.syncInputText())},this.handleIncrement=()=>{this.canIncrement&&(this.emitValue(this.current+this.step),this.syncInputText())},this.handleInput=e=>{var t;const i=e.target;if(this.isAmount)return void this.handleAmountInput(i);let r=i.value;const o=r.replace(d,"");if(o!==r){const e=(null!==(t=i.selectionStart)&&void 0!==t?t:r.length)-(r.length-o.length);i.value=o;const n=e<0?0:e;i.setSelectionRange(n,n),r=o}if(""===r)return void(this.clearable&&(this.value=null,this.coChange.emit(null)));if("-"===r)return;const n=parseFloat(r);isNaN(n)||this.emitValue(this.fromDisplay(n))},this.handlePaste=e=>{var t,i,r,o;if(!this.isAmount)return;e.preventDefault();const n=e.target,s=null!==(i=null===(t=e.clipboardData)||void 0===t?void 0:t.getData("text"))&&void 0!==i?i:"";let d=function(e){const t=((null!=e?e:"")+"").replace(/[^\d.,]/g,"");if(!t)return"";const i=t.lastIndexOf("."),r=t.lastIndexOf(",");let o=-1;if(i>=0&&r>=0)o=Math.max(i,r);else if(i>=0||r>=0){const e=i>=0?".":",",r=t.split(e);2===r.length&&3!==r[1].length&&(o=t.lastIndexOf(e))}const{integer:n,decimals:s}=c((o>=0?t.slice(0,o):t).replace(/[.,]/g,""),o>=0?t.slice(o+1).replace(/[.,]/g,""):"");return n||s?s?`${n||"0"}.${s}`:n:""}(s);d&&this.allowNegative&&/^\s*-/.test(s)&&(d="-"+d);const u=null!==(r=n.selectionStart)&&void 0!==r?r:n.value.length,b=null!==(o=n.selectionEnd)&&void 0!==o?o:u,m=a(n.value.slice(0,u),this.allowNegative),p=a(n.value.slice(b)),_=a(m+d+p,this.allowNegative),g=l(_);n.value=g;const v=f(g,h(m+d));if(n.setSelectionRange(v,v),""===_||"-"===_)return void(""===_&&this.clearable&&(this.value=null,this.coChange.emit(null)));const x=parseFloat(_);isNaN(x)||this.emitValue(x)},this.handleClear=()=>{var e;this.value=null,this.syncInputText(),this.coClear.emit(),this.coChange.emit(null),null===(e=this.inputEl)||void 0===e||e.focus()},this.handleBlur=()=>{this.focused=!1,this.isEmpty||this.emitValue(this.value),this.syncInputText()},this.handleFocus=()=>{this.focused=!0},this.handleKeyDown=e=>{"ArrowUp"===e.key?(e.preventDefault(),this.handleIncrement()):"ArrowDown"===e.key&&(e.preventDefault(),this.handleDecrement())}}onValueChange(){this.inputEl&&!this.focused&&this.inputEl.value!==this.displayValue&&(this.inputEl.value=this.displayValue)}get isEmpty(){return null==this.value||Number.isNaN(this.value)}get current(){var e;return this.isEmpty?null!==(e=this.min)&&void 0!==e?e:0:this.value}get statusIcon(){return{error:"warning-circle",success:"check-circle",warning:"warning",info:"info"}[this.status]||null}get canDecrement(){return!this.disabled&&(void 0===this.min||this.current>this.min)}get canIncrement(){return!this.disabled&&(void 0===this.max||this.current<this.max)}clamp(e){return void 0!==this.min&&e<this.min?this.min:void 0!==this.max&&e>this.max?this.max:e}get scaled(){return"rate"===this.format||"percent"===this.format}get isAmount(){return"amount"===this.format}get allowNegative(){return void 0===this.min||this.min<0}get displayValue(){if(this.isEmpty)return"";const e=this.toDisplay(this.value)+"";return this.isAmount?l(e):e}toDisplay(e){return this.scaled?Number((100*e).toFixed(6)):e}fromDisplay(e){return this.scaled?e/100:e}emitValue(e){const t=this.clamp(e);this.value=t,this.coChange.emit(t)}handleAmountInput(e){var t;const i=e.value,r=null!==(t=e.selectionStart)&&void 0!==t?t:i.length,o=h(i.slice(0,r)),n=a(i,this.allowNegative),s=l(n);if(e.value!==s){e.value=s;const t=f(s,o);e.setSelectionRange(t,t)}if(""===n)return void(this.clearable&&(this.value=null,this.coChange.emit(null)));if("-"===n)return;const c=parseFloat(n);isNaN(c)||this.emitValue(c)}syncInputText(){this.inputEl&&this.inputEl.value!==this.displayValue&&(this.inputEl.value=this.displayValue)}get affixText(){return void 0!==this.suffix?this.suffix||null:this.scaled&&!this.isEmpty?"%":null}render(){return o("div",{key:"1bcd7e60596bc28f5159f86a026d69d0d053f038",class:{"co-number-field":!0,"co-number-field--disabled":this.disabled,"co-number-field--focused":this.focused,["co-number-field--"+this.size]:!0,["co-number-field--"+this.status]:"default"!==this.status}},(this.label||this.secondaryLabel)&&o("div",{key:"aca2d9958374940304e05495ae05e74d627154c7",class:"co-number-field__labels"},this.label&&o("label",{key:"8cf05675830ad181005430526785984acc793d0b",class:"co-number-field__label"},this.label,o(n,{key:"36aed2cf48890cf79506416d0c45f272ed329664",required:this.required})),this.secondaryLabel&&o("span",{key:"636111436e1e3fff8d74fb4b9412c2192c93495a",class:"co-number-field__secondary-label"},this.secondaryLabel)),o("div",{key:"6cbbb87a304cd9e415aafda276daede8dbe0b6a7",class:"co-number-field__row",part:"row"},!this.hideControls&&o("button",{key:"e11dfc41ee97b3287908877aa74f732a4cbe31fe",class:"co-number-field__btn co-number-field__btn--minus",type:"button",tabIndex:-1,disabled:!this.canDecrement,onClick:this.handleDecrement,"aria-label":"Decrease"},o("co-icon",{key:"3f369b4d8293e9e987d18ba58fa1f010bd538016",name:"minus",size:16})),o("input",{key:"8144b563cd4ae46774adbf224c45fa59378da4c7",ref:e=>this.inputEl=e,class:"co-number-field__input",type:"text",inputMode:"decimal",value:this.focused&&this.inputEl?this.inputEl.value:this.displayValue,placeholder:this.placeholder,disabled:this.disabled,onInput:this.handleInput,onPaste:this.handlePaste,onFocus:this.handleFocus,onBlur:this.handleBlur,onKeyDown:this.handleKeyDown,part:"input"}),this.affixText&&o("span",{key:"56e8b3a225f2332f9c3974ec195b63b3681d5b09",class:"co-number-field__affix","aria-hidden":"true"},this.affixText),this.clearable&&!this.isEmpty&&!this.disabled&&o("button",{key:"ea8325f7097c5b0b87bd51554163d44bdfe379ff",class:"co-number-field__clear",type:"button",tabIndex:-1,onClick:this.handleClear,"aria-label":"Clear"},o("co-icon",{key:"c72d4e3a039752fbcf7cf4594421d24bc2f0570a",name:"x-circle",size:16,weight:"fill"})),o("slot",{key:"2a3dc1b5a3e22ade3db02389178dd4ae3b1d3295",name:"suffix"}),!this.hideControls&&o("button",{key:"3b9bf39d86c7aacb212576dc4cf4af548b56fbed",class:"co-number-field__btn co-number-field__btn--plus",type:"button",tabIndex:-1,disabled:!this.canIncrement,onClick:this.handleIncrement,"aria-label":"Increase"},o("co-icon",{key:"1655aaca9e66b51c0d97fc128c132326d3c740ad",name:"plus",size:16}))),this.helperText&&o("div",{key:"397b37569cabdf68072d870b5e5781f7d39da8fe",class:"co-number-field__helper co-number-field__helper--"+this.status},this.statusIcon&&o("co-icon",{key:"b574fddca9813af3e208ea3e9258480a992fd4f2",name:this.statusIcon,size:14,weight:"fill",class:"co-number-field__helper-icon"}),o("span",{key:"d17a39a82108f12100dee523d7754b50f147bb63",class:"co-number-field__helper-text"},this.helperText)))}get el(){return this}static get watchers(){return{value:[{onValueChange:0}]}}static get style(){return":host{display:block;font-family:var(--co-font-family-primary);font-size:var(--co-font-size-14);letter-spacing:var(--co-font-letter-spacing-body);line-height:1}.co-number-field{display:flex;flex-direction:column;gap:var(--co-spacing-sm2)}.co-number-field__labels{display:flex;align-items:center;justify-content:space-between;padding:0 var(--co-spacing-xs);gap:var(--co-spacing-sm2)}.co-number-field__label{color:var(--co-semantic-text-secondary);font-size:var(--co-font-size-14);font-weight:400;line-height:1;white-space:nowrap;cursor:default}.co-number-field__secondary-label{color:var(--co-semantic-text-muted);font-size:var(--co-font-size-14);font-weight:400;line-height:1;white-space:nowrap;text-align:right}.co-number-field--disabled .co-number-field__label,.co-number-field--disabled .co-number-field__secondary-label{color:var(--co-semantic-text-disabled)}.co-number-field__row{display:flex;align-items:center;gap:0;background:var(--co-semantic-surface-page);border:1px solid var(--co-semantic-border-field);border-radius:var(--co-border-radius-xs);min-height:40px;overflow:hidden;box-sizing:border-box;transition:border-color var(--co-motion-duration-fast) var(--co-motion-ease-out), box-shadow var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-number-field--s .co-number-field__row{min-height:28px}.co-number-field--s .co-number-field__btn{width:28px}.co-number-field--sm .co-number-field__row{min-height:32px}.co-number-field--sm .co-number-field__btn{width:32px}.co-number-field--lg .co-number-field__row{min-height:48px}.co-number-field--lg .co-number-field__btn{width:48px}.co-number-field--focused .co-number-field__row{border-color:var(--co-semantic-border-focus);box-shadow:0 0 0 2px var(--co-semantic-border-focus-ring)}.co-number-field--disabled .co-number-field__row{background:var(--co-semantic-surface-disabled);border-color:transparent}.co-number-field--error .co-number-field__row{border-color:var(--co-semantic-status-error)}.co-number-field--success .co-number-field__row{border-color:var(--co-semantic-status-success)}.co-number-field--warning .co-number-field__row{border-color:var(--co-color-status-review)}.co-number-field--info .co-number-field__row{border-color:var(--co-semantic-status-info)}.co-number-field__btn{display:flex;align-items:center;justify-content:center;width:40px;align-self:stretch;flex-shrink:0;border:none;background:transparent;color:var(--co-semantic-text-default);cursor:pointer;padding:0;transition:background var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-number-field__btn:hover:not(:disabled){background:var(--co-semantic-surface-hover)}.co-number-field__btn:active:not(:disabled){background:var(--co-semantic-surface-muted)}.co-number-field__btn:disabled{color:var(--co-semantic-text-disabled);cursor:not-allowed}.co-number-field__btn--minus{border-right:1px solid var(--co-semantic-border-subtle)}.co-number-field__btn--plus{border-left:1px solid var(--co-semantic-border-subtle)}.co-number-field__clear{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:24px;height:100%;padding:0;border:none;background:transparent;color:var(--co-semantic-text-muted);cursor:pointer;transition:color var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-number-field__clear:hover{color:var(--co-semantic-text-default)}.co-number-field__input{flex:1;min-width:0;border:none;background:transparent;text-align:center;color:var(--co-semantic-text-default);font-family:inherit;font-size:inherit;font-weight:400;line-height:1;padding:var(--co-spacing-sm2) var(--co-spacing-sm2);outline:none;-moz-appearance:textfield}.co-number-field__input::placeholder{color:var(--co-semantic-text-muted)}.co-number-field__affix{flex-shrink:0;padding-right:var(--co-spacing-sm2);color:var(--co-semantic-text-muted);font-size:inherit;font-weight:400;line-height:1;pointer-events:none;user-select:none}::slotted([slot='suffix']){flex-shrink:0;margin-right:var(--co-spacing-xxs)}:host([hide-controls]) .co-number-field__input{text-align:right;padding-left:var(--co-spacing-md);padding-right:var(--co-spacing-md)}:host([hide-controls]) .co-number-field__affix{padding-right:var(--co-spacing-md);font-size:var(--co-font-size-12)}.co-number-field__input::-webkit-outer-spin-button,.co-number-field__input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.co-number-field--disabled .co-number-field__input{color:var(--co-semantic-text-disabled);cursor:not-allowed}.co-number-field__helper{display:flex;align-items:center;gap:var(--co-spacing-xs);padding:0 var(--co-spacing-xs)}.co-number-field__helper-icon{flex-shrink:0;display:flex;align-items:center}.co-number-field__helper-text{color:var(--co-semantic-text-muted);font-size:var(--co-font-size-14);font-weight:400;line-height:1}.co-number-field__helper--error .co-number-field__helper-icon,.co-number-field__helper--error .co-number-field__helper-text{color:var(--co-semantic-status-error)}.co-number-field__helper--success .co-number-field__helper-icon,.co-number-field__helper--success .co-number-field__helper-text{color:var(--co-semantic-status-success)}.co-number-field__helper--warning .co-number-field__helper-icon,.co-number-field__helper--warning .co-number-field__helper-text{color:var(--co-color-status-review)}.co-number-field__helper--info .co-number-field__helper-icon,.co-number-field__helper--info .co-number-field__helper-text{color:var(--co-semantic-status-info)}:host([layout='horizontal']) .co-number-field{display:grid;grid-template-columns:var(--co-field-label-width, max-content) 1fr;align-items:start;column-gap:var(--co-spacing-md);row-gap:var(--co-spacing-sm2)}:host([layout='horizontal']) .co-number-field__labels{grid-column:1;grid-row:1;padding-top:var(--co-spacing-sm2);min-width:0}:host([layout='horizontal']) .co-number-field__label{white-space:normal}:host([layout='horizontal']) .co-number-field>:not(.co-number-field__labels){grid-column:2;min-width:0}.co-field-required{margin-left:2px;color:var(--co-color-status-error)}.co-field-required__caption{margin-left:4px;color:var(--co-semantic-text-muted);font-size:var(--co-font-size-12);font-weight:400}.co-field-required__caption::before{content:var(--co-field-required-text, ' (required)')}"}},[257,"co-number-field",{label:[1],required:[4],secondaryLabel:[1,"secondary-label"],helperText:[1,"helper-text"],layout:[513],status:[1],value:[1538],min:[2],max:[2],step:[2],disabled:[4],placeholder:[1],size:[513],clearable:[4],format:[513],hideControls:[516,"hide-controls"],suffix:[1],focused:[32]},void 0,{value:[{onValueChange:0}]}]);function m(){"undefined"!=typeof customElements&&["co-number-field","co-icon"].forEach((t=>{switch(t){case"co-number-field":customElements.get(e(t))||customElements.define(e(t),b);break;case"co-icon":customElements.get(e(t))||s()}}))}m();const p=b,_=m;export{p as CoNumberField,_ as defineCustomElement}
|
|
1
|
+
import{t as e,p as t,H as i,c as r,h as o}from"./index.js";import{R as n}from"./p-CWneqh4n.js";import{d as s}from"./p-DNJAIVfI.js";const c=(e,t)=>({integer:e.slice(0,15),decimals:t.slice(0,8)});function a(e,t=!1){const i=(null!=e?e:"")+"",r=t&&/^\s*-/.test(i),o=i.replace(/[^\d.]/g,""),[n,...s]=o.split("."),{integer:a,decimals:l}=c(n,s.join("")),d=s.length?`${a}.${l}`:a;return d?r?"-"+d:d:r?"-":""}function l(e){if(!e)return"";const t=e.startsWith("-"),i=t?e.slice(1):e,r=i.indexOf("."),o=r>=0?i.slice(0,r):i,n=r>=0?i.slice(r):"";let s="";for(let e=0;e<o.length;e++)e>0&&(o.length-e)%3==0&&(s+=","),s+=o[e];return`${t?"-":""}${s}${n}`}const d=/[^0-9.,-]/g,u=/[0-9.-]/,f=e=>{let t=0;for(const i of e)u.test(i)&&t++;return t},h=(e,t)=>{if(t<=0)return 0;let i=0;for(let r=0;r<e.length;r++)if(u.test(e[r])&&(i++,i===t))return r+1;return e.length},b=t(class extends i{constructor(e){super(),!1!==e&&this.__registerHost(),this.__attachShadow(),this.coChange=r(this,"coChange",7),this.coClear=r(this,"coClear",7),this.required=!1,this.layout="vertical",this.status="default",this.value=0,this.step=1,this.disabled=!1,this.placeholder="0",this.size="md",this.clearable=!1,this.hideControls=!1,this.focused=!1,this.emptiedByUser=!1,this.handleDecrement=()=>{this.canDecrement&&(this.emitValue(this.current-this.step),this.syncInputText())},this.handleIncrement=()=>{this.canIncrement&&(this.emitValue(this.current+this.step),this.syncInputText())},this.handleInput=e=>{var t;const i=e.target;if(this.isAmount)return void this.handleAmountInput(i);let r=i.value;const o=r.replace(d,"");if(o!==r){const e=(null!==(t=i.selectionStart)&&void 0!==t?t:r.length)-(r.length-o.length);i.value=o;const n=e<0?0:e;i.setSelectionRange(n,n),r=o}if(""===r)return void(this.clearable?(this.value=null,this.coChange.emit(null)):this.emptiedByUser=!0);if("-"===r)return;const n=parseFloat(r);isNaN(n)||this.emitValue(this.fromDisplay(n))},this.handlePaste=e=>{var t,i,r,o;if(!this.isAmount)return;e.preventDefault();const n=e.target,s=null!==(i=null===(t=e.clipboardData)||void 0===t?void 0:t.getData("text"))&&void 0!==i?i:"";let d=function(e){const t=((null!=e?e:"")+"").replace(/[^\d.,]/g,"");if(!t)return"";const i=t.lastIndexOf("."),r=t.lastIndexOf(",");let o=-1;if(i>=0&&r>=0)o=Math.max(i,r);else if(i>=0||r>=0){const e=i>=0?".":",",r=t.split(e);2===r.length&&3!==r[1].length&&(o=t.lastIndexOf(e))}const{integer:n,decimals:s}=c((o>=0?t.slice(0,o):t).replace(/[.,]/g,""),o>=0?t.slice(o+1).replace(/[.,]/g,""):"");return n||s?s?`${n||"0"}.${s}`:n:""}(s);d&&this.allowNegative&&/^\s*-/.test(s)&&(d="-"+d);const u=null!==(r=n.selectionStart)&&void 0!==r?r:n.value.length,b=null!==(o=n.selectionEnd)&&void 0!==o?o:u,m=a(n.value.slice(0,u),this.allowNegative),p=a(n.value.slice(b)),_=a(m+d+p,this.allowNegative),g=l(_);n.value=g;const v=h(g,f(m+d));if(n.setSelectionRange(v,v),""===_||"-"===_)return void(""===_&&this.clearable?(this.value=null,this.coChange.emit(null)):""===_&&(this.emptiedByUser=!0));const x=parseFloat(_);isNaN(x)||this.emitValue(x)},this.handleClear=()=>{var e;this.value=null,this.syncInputText(),this.coClear.emit(),this.coChange.emit(null),null===(e=this.inputEl)||void 0===e||e.focus()},this.handleBlur=()=>{var e;this.focused=!1,this.emptiedByUser?this.emitValue(null!==(e=this.min)&&void 0!==e?e:0):this.isEmpty||this.emitValue(this.value),this.syncInputText()},this.handleFocus=()=>{this.focused=!0},this.handleKeyDown=e=>{"ArrowUp"===e.key?(e.preventDefault(),this.handleIncrement()):"ArrowDown"===e.key&&(e.preventDefault(),this.handleDecrement())}}onValueChange(){this.inputEl&&!this.focused&&this.inputEl.value!==this.displayValue&&(this.inputEl.value=this.displayValue)}get isEmpty(){return null==this.value||Number.isNaN(this.value)}get current(){var e;return this.isEmpty?null!==(e=this.min)&&void 0!==e?e:0:this.value}get statusIcon(){return{error:"warning-circle",success:"check-circle",warning:"warning",info:"info"}[this.status]||null}get canDecrement(){return!this.disabled&&(void 0===this.min||this.current>this.min)}get canIncrement(){return!this.disabled&&(void 0===this.max||this.current<this.max)}clamp(e){return void 0!==this.min&&e<this.min?this.min:void 0!==this.max&&e>this.max?this.max:e}get scaled(){return"rate"===this.format||"percent"===this.format}get isAmount(){return"amount"===this.format}get allowNegative(){return void 0===this.min||this.min<0}get displayValue(){if(this.isEmpty)return"";const e=this.toDisplay(this.value)+"";return this.isAmount?l(e):e}toDisplay(e){return this.scaled?Number((100*e).toFixed(6)):e}fromDisplay(e){return this.scaled?e/100:e}emitValue(e){this.emptiedByUser=!1;const t=this.clamp(e);this.value=t,this.coChange.emit(t)}handleAmountInput(e){var t;const i=e.value,r=null!==(t=e.selectionStart)&&void 0!==t?t:i.length,o=f(i.slice(0,r)),n=a(i,this.allowNegative),s=l(n);if(e.value!==s){e.value=s;const t=h(s,o);e.setSelectionRange(t,t)}if(""===n)return void(this.clearable?(this.value=null,this.coChange.emit(null)):this.emptiedByUser=!0);if("-"===n)return;const c=parseFloat(n);isNaN(c)||this.emitValue(c)}syncInputText(){this.inputEl&&this.inputEl.value!==this.displayValue&&(this.inputEl.value=this.displayValue)}get affixText(){return void 0!==this.suffix?this.suffix||null:this.scaled&&!this.isEmpty?"%":null}render(){return o("div",{key:"de7f3ae049ac5afcdf7d8a711c566b947fa7e151",class:{"co-number-field":!0,"co-number-field--disabled":this.disabled,"co-number-field--focused":this.focused,["co-number-field--"+this.size]:!0,["co-number-field--"+this.status]:"default"!==this.status}},(this.label||this.secondaryLabel)&&o("div",{key:"3a6c96b2987f0502334a23048f8693745589e965",class:"co-number-field__labels"},this.label&&o("label",{key:"7e0c9c08e93f10f6e18143d038ea8810a0f156b8",class:"co-number-field__label"},this.label,o(n,{key:"88b110f3d59908c27d182533100220ff8a65bb66",required:this.required})),this.secondaryLabel&&o("span",{key:"5dd9219f995fc59ce557c8ba2b5dfea2d7cb56ef",class:"co-number-field__secondary-label"},this.secondaryLabel)),o("div",{key:"e2079dd9e28daf904057106167cd368de906daba",class:"co-number-field__row",part:"row"},!this.hideControls&&o("button",{key:"7ff22639f594e7a008f02962ed7782b84654b78e",class:"co-number-field__btn co-number-field__btn--minus",type:"button",tabIndex:-1,disabled:!this.canDecrement,onClick:this.handleDecrement,"aria-label":"Decrease"},o("co-icon",{key:"61aafdc7c083ea39b9b65b87d267df63b91cb8d4",name:"minus",size:16})),o("input",{key:"e088482da6c9fe1e02abe5bcae2611f157be83ed",ref:e=>this.inputEl=e,class:"co-number-field__input",type:"text",inputMode:"decimal",value:this.focused&&this.inputEl?this.inputEl.value:this.displayValue,placeholder:this.placeholder,disabled:this.disabled,onInput:this.handleInput,onPaste:this.handlePaste,onFocus:this.handleFocus,onBlur:this.handleBlur,onKeyDown:this.handleKeyDown,part:"input"}),this.affixText&&o("span",{key:"2a7bc2f465844ccb9db7017c1b3782625e784c05",class:"co-number-field__affix","aria-hidden":"true"},this.affixText),this.clearable&&!this.isEmpty&&!this.disabled&&o("button",{key:"06e40ddc080297db49823f17eeeaba313f68fafd",class:"co-number-field__clear",type:"button",tabIndex:-1,onClick:this.handleClear,"aria-label":"Clear"},o("co-icon",{key:"f69d2f6bf5cb4cd6731d55f873fd03d21eb0f42e",name:"x-circle",size:16,weight:"fill"})),o("slot",{key:"d16df6468bf0f514ce183e36d555b5e8f97ff969",name:"suffix"}),!this.hideControls&&o("button",{key:"523f5cbda86bbe3b69d08aedc9eb678d6b218cb7",class:"co-number-field__btn co-number-field__btn--plus",type:"button",tabIndex:-1,disabled:!this.canIncrement,onClick:this.handleIncrement,"aria-label":"Increase"},o("co-icon",{key:"7f546fa2885ebecc3f16129bdc815a1cea57f53f",name:"plus",size:16}))),this.helperText&&o("div",{key:"e807bbe38823ee148e227baaac1feafd85f93c49",class:"co-number-field__helper co-number-field__helper--"+this.status},this.statusIcon&&o("co-icon",{key:"e8bc48908cb9e53952e0bffeb898d0a4b0d2fef3",name:this.statusIcon,size:14,weight:"fill",class:"co-number-field__helper-icon"}),o("span",{key:"c00dc9f3bd966988f6a2546a360ede337de383e4",class:"co-number-field__helper-text"},this.helperText)))}get el(){return this}static get watchers(){return{value:[{onValueChange:0}]}}static get style(){return":host{display:block;font-family:var(--co-font-family-primary);font-size:var(--co-font-size-14);letter-spacing:var(--co-font-letter-spacing-body);line-height:1}.co-number-field{display:flex;flex-direction:column;gap:var(--co-spacing-sm2)}.co-number-field__labels{display:flex;align-items:center;justify-content:space-between;padding:0 var(--co-spacing-xs);gap:var(--co-spacing-sm2)}.co-number-field__label{color:var(--co-semantic-text-secondary);font-size:var(--co-font-size-14);font-weight:400;line-height:1;white-space:nowrap;cursor:default}.co-number-field__secondary-label{color:var(--co-semantic-text-muted);font-size:var(--co-font-size-14);font-weight:400;line-height:1;white-space:nowrap;text-align:right}.co-number-field--disabled .co-number-field__label,.co-number-field--disabled .co-number-field__secondary-label{color:var(--co-semantic-text-disabled)}.co-number-field__row{display:flex;align-items:center;gap:0;background:var(--co-semantic-surface-page);border:1px solid var(--co-semantic-border-field);border-radius:var(--co-border-radius-xs);min-height:40px;overflow:hidden;box-sizing:border-box;transition:border-color var(--co-motion-duration-fast) var(--co-motion-ease-out), box-shadow var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-number-field--s .co-number-field__row{min-height:28px}.co-number-field--s .co-number-field__btn{width:28px}.co-number-field--sm .co-number-field__row{min-height:32px}.co-number-field--sm .co-number-field__btn{width:32px}.co-number-field--lg .co-number-field__row{min-height:48px}.co-number-field--lg .co-number-field__btn{width:48px}.co-number-field--focused .co-number-field__row{border-color:var(--co-semantic-border-focus);box-shadow:0 0 0 2px var(--co-semantic-border-focus-ring)}.co-number-field--disabled .co-number-field__row{background:var(--co-semantic-surface-disabled);border-color:transparent}.co-number-field--error .co-number-field__row{border-color:var(--co-semantic-status-error)}.co-number-field--success .co-number-field__row{border-color:var(--co-semantic-status-success)}.co-number-field--warning .co-number-field__row{border-color:var(--co-color-status-review)}.co-number-field--info .co-number-field__row{border-color:var(--co-semantic-status-info)}.co-number-field__btn{display:flex;align-items:center;justify-content:center;width:40px;align-self:stretch;flex-shrink:0;border:none;background:transparent;color:var(--co-semantic-text-default);cursor:pointer;padding:0;transition:background var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-number-field__btn:hover:not(:disabled){background:var(--co-semantic-surface-hover)}.co-number-field__btn:active:not(:disabled){background:var(--co-semantic-surface-muted)}.co-number-field__btn:disabled{color:var(--co-semantic-text-disabled);cursor:not-allowed}.co-number-field__btn--minus{border-right:1px solid var(--co-semantic-border-subtle)}.co-number-field__btn--plus{border-left:1px solid var(--co-semantic-border-subtle)}.co-number-field__clear{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:24px;height:100%;padding:0;border:none;background:transparent;color:var(--co-semantic-text-muted);cursor:pointer;transition:color var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-number-field__clear:hover{color:var(--co-semantic-text-default)}.co-number-field__input{flex:1;min-width:0;border:none;background:transparent;text-align:center;color:var(--co-semantic-text-default);font-family:inherit;font-size:inherit;font-weight:400;line-height:1;padding:var(--co-spacing-sm2) var(--co-spacing-sm2);outline:none;-moz-appearance:textfield}.co-number-field__input::placeholder{color:var(--co-semantic-text-muted)}.co-number-field__affix{flex-shrink:0;padding-right:var(--co-spacing-sm2);color:var(--co-semantic-text-muted);font-size:inherit;font-weight:400;line-height:1;pointer-events:none;user-select:none}::slotted([slot='suffix']){flex-shrink:0;margin-right:var(--co-spacing-xxs)}:host([hide-controls]) .co-number-field__input{text-align:right;padding-left:var(--co-spacing-md);padding-right:var(--co-spacing-md)}:host([hide-controls]) .co-number-field__affix{padding-right:var(--co-spacing-md);font-size:var(--co-font-size-12)}.co-number-field__input::-webkit-outer-spin-button,.co-number-field__input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.co-number-field--disabled .co-number-field__input{color:var(--co-semantic-text-disabled);cursor:not-allowed}.co-number-field__helper{display:flex;align-items:center;gap:var(--co-spacing-xs);padding:0 var(--co-spacing-xs)}.co-number-field__helper-icon{flex-shrink:0;display:flex;align-items:center}.co-number-field__helper-text{color:var(--co-semantic-text-muted);font-size:var(--co-font-size-14);font-weight:400;line-height:1}.co-number-field__helper--error .co-number-field__helper-icon,.co-number-field__helper--error .co-number-field__helper-text{color:var(--co-semantic-status-error)}.co-number-field__helper--success .co-number-field__helper-icon,.co-number-field__helper--success .co-number-field__helper-text{color:var(--co-semantic-status-success)}.co-number-field__helper--warning .co-number-field__helper-icon,.co-number-field__helper--warning .co-number-field__helper-text{color:var(--co-color-status-review)}.co-number-field__helper--info .co-number-field__helper-icon,.co-number-field__helper--info .co-number-field__helper-text{color:var(--co-semantic-status-info)}:host([layout='horizontal']) .co-number-field{display:grid;grid-template-columns:var(--co-field-label-width, max-content) 1fr;align-items:start;column-gap:var(--co-spacing-md);row-gap:var(--co-spacing-sm2)}:host([layout='horizontal']) .co-number-field__labels{grid-column:1;grid-row:1;padding-top:var(--co-spacing-sm2);min-width:0}:host([layout='horizontal']) .co-number-field__label{white-space:normal}:host([layout='horizontal']) .co-number-field>:not(.co-number-field__labels){grid-column:2;min-width:0}.co-field-required{margin-left:2px;color:var(--co-color-status-error)}.co-field-required__caption{margin-left:4px;color:var(--co-semantic-text-muted);font-size:var(--co-font-size-12);font-weight:400}.co-field-required__caption::before{content:var(--co-field-required-text, ' (required)')}"}},[257,"co-number-field",{label:[1],required:[4],secondaryLabel:[1,"secondary-label"],helperText:[1,"helper-text"],layout:[513],status:[1],value:[1538],min:[2],max:[2],step:[2],disabled:[4],placeholder:[1],size:[513],clearable:[4],format:[513],hideControls:[516,"hide-controls"],suffix:[1],focused:[32]},void 0,{value:[{onValueChange:0}]}]);function m(){"undefined"!=typeof customElements&&["co-number-field","co-icon"].forEach((t=>{switch(t){case"co-number-field":customElements.get(e(t))||customElements.define(e(t),b);break;case"co-icon":customElements.get(e(t))||s()}}))}m();const p=b,_=m;export{p as CoNumberField,_ as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{C as o,d as s}from"./p-
|
|
1
|
+
import{C as o,d as s}from"./p-Dh8ffSjK.js";const f=o,p=s;export{f as CoOptionList,p as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{C as o,d as s}from"./p-
|
|
1
|
+
import{C as o,d as s}from"./p-BJh68Jqe.js";const p=o,r=s;export{p as CoOverlay,r as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{C as o,d as
|
|
1
|
+
import{C as o,d as s}from"./p-D9T7zKeL.js";const p=o,r=s;export{p as CoPopover,r as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{p as e,H as i,c as t,h as o,t as r}from"./index.js";import{R as s}from"./p-CWneqh4n.js";import{F as a}from"./p-C4U2tbRp.js";import{i as c}from"./p-BRbgGqLw.js";import{d as l}from"./p-Dcg4krSX.js";import{d as n}from"./p-DNJAIVfI.js";import{d}from"./p-BH184F0X.js";import{d as f}from"./p-D7Lhxz7L.js";import{d as h}from"./p-DRP8D9ro.js";import{d as p}from"./p-Bsh0JMGf.js";const g=e(class e extends i{constructor(e){super(),!1!==e&&this.__registerHost(),this.__attachShadow(),this.coChange=t(this,"coChange",7),this.coClear=t(this,"coClear",7),this.coSearch=t(this,"coSearch",7),this.coLoadMore=t(this,"coLoadMore",7),this.coOpen=t(this,"coOpen",3),this.coClose=t(this,"coClose",3),this.coRemove=t(this,"coRemove",7),this.coFooterPrimary=t(this,"coFooterPrimary",7),this.coFooterSecondary=t(this,"coFooterSecondary",7),this.coPinToggle=t(this,"coPinToggle",7),this.coListReorder=t(this,"coListReorder",7),this.coEditSelected=t(this,"coEditSelected",7),this.required=!1,this.placeholder="Select…",this.disabled=!1,this.clearable=!0,this.editable=!1,this.editLabel="Edit",this.multiple=!1,this.status="default",this.layout="vertical",this.size="md",this.variant="default",this.value="",this.options="[]",this.selectedDisplay="[]",this.loading=!1,this.total=0,this.searchable=!0,this.searchPlaceholder="Search…",this.searchDebounce=350,this.emptyMessage="No results found",this.showFooter=!1,this.footerPrimaryLabel="Ok",this.footerSecondaryLabel="New",this.maxChips=0,this.panelTheme="auto",this.colorMode="dot",this.triggerBadgeIcon="",this.triggerBadgeLabel="",this.inheritedLabel="",this.inheritedBadgeLabel="",this.avatarShape="circle",this.pinnable=!1,this.listReorderable=!1,this.inheritedTruncated=!1,this.isOpen=!1,this.overflowCount=0,this.lastChipsKey="\0",this.pendingFocus=!1,this.hasPanelSlot=!1,this.handlePopoverOpen=()=>{this.isOpen=!0},this.handlePopoverClose=()=>{this.isOpen=!1},this.measureInherited=()=>{const e=this.inheritedEl,i=!!e&&e.scrollWidth>e.clientWidth+1;i!==this.inheritedTruncated&&(this.inheritedTruncated=i)},this.setInheritedEl=e=>{var i,t;const o=e||void 0;o!==this.inheritedEl&&(this.inheritedEl&&(null===(i=this.inheritedResizeObserver)||void 0===i||i.unobserve(this.inheritedEl)),this.inheritedEl=o,o?null===(t=this.inheritedResizeObserver)||void 0===t||t.observe(o):this.inheritedTruncated&&(this.inheritedTruncated=!1))},this.handleTriggerClick=e=>{this.disabled&&e.stopPropagation()},this.handleTriggerKeyDown=e=>{this.disabled||e.target===this.triggerEl&&("Enter"===e.key||" "===e.key?(e.preventDefault(),this.isOpen=!this.isOpen):"ArrowDown"!==e.key||this.isOpen||(e.preventDefault(),this.isOpen=!0))},this.handleListChange=e=>{if(!this.multiple&&null===e.value)return this.value="",this.coClear.emit(),void(this.isOpen=!1);this.handleOptionClick(e.item)},this.handleOptionClick=e=>{if(this.multiple){const i=this.parsedValue;let t;t=i.indexOf(e._id)>=0?i.filter((i=>i!==e._id)):[...i,e._id],this.value=JSON.stringify(t),this.coChange.emit({value:t,item:e})}else this.value=e._id,this.coChange.emit({value:e._id,item:e}),this.isOpen=!1},this.handleReorder=e=>{this.value=JSON.stringify(e.value),this.coChange.emit({value:e.value,item:e.item})},this.handleClear=e=>{e.stopPropagation(),this.value=this.multiple?"[]":"",this.coClear.emit()},this.handleEditClick=e=>{e.stopPropagation();const i=this.effectiveDisplayItems[0];i&&this.coEditSelected.emit(i._id)},this.handleRemoveChip=(e,i)=>{var t;i.stopPropagation();const o=null!==(t=this.effectiveDisplayItems.find((i=>i._id===e)))&&void 0!==t?t:{_id:e,label:e},r=this.parsedValue.filter((i=>i!==e));this.value=JSON.stringify(r),this.coRemove.emit(e),this.coChange.emit({value:r,item:o})},this.handleFooterPrimary=()=>{this.coFooterPrimary.emit(),this.isOpen=!1},this.handleFooterSecondary=()=>{this.coFooterSecondary.emit()}}get normalizedSize(){return"default"===this.size?"md":this.size}get parsedOptions(){try{const e="string"==typeof this.options?JSON.parse(this.options):this.options;return Array.isArray(e)?e:[]}catch(e){return[]}}get parsedSelectedDisplay(){try{const e="string"==typeof this.selectedDisplay?JSON.parse(this.selectedDisplay):this.selectedDisplay;return Array.isArray(e)?e:[]}catch(e){return[]}}get effectiveDisplayItems(){const e=this.parsedValue;if(0===e.length)return[];const i=new Map;for(const e of this.parsedSelectedDisplay)i.set(e._id,e);for(const e of this.parsedOptions)i.has(e._id)||i.set(e._id,{_id:e._id,label:e.label,description:e.description,color:e.color,avatar:e.avatar,image:e.image});return e.map((e=>i.get(e))).filter(Boolean)}get parsedValue(){if(!this.value)return[];try{const e=JSON.parse(this.value);return Array.isArray(e)?e:[this.value]}catch(e){return this.value?[this.value]:[]}}connectedCallback(){this.resizeObserver=new ResizeObserver((()=>this.calcOverflow())),this.inheritedResizeObserver=new ResizeObserver((()=>this.measureInherited())),this.inheritedEl&&this.inheritedResizeObserver.observe(this.inheritedEl)}componentDidRender(){var e,i,t,o;this.chipsEl!==this.observedChipsEl&&(null===(e=this.resizeObserver)||void 0===e||e.disconnect(),this.chipsEl&&(null===(i=this.resizeObserver)||void 0===i||i.observe(this.chipsEl)),this.observedChipsEl=this.chipsEl);const r=null===(t=this.chipsEl)||void 0===t?void 0:t.querySelectorAll(".co-ref-field__chip"),s=r?Array.from(r,(e=>e.textContent)).join(""):"";s!==this.lastChipsKey&&(this.lastChipsKey=s,this.calcOverflow()),this.pendingFocus&&(null===(o=this.optionListEl)||void 0===o?void 0:o.isConnected)&&(this.pendingFocus=!1,this.optionListEl.focusSearch())}disconnectedCallback(){var e,i;null===(e=this.resizeObserver)||void 0===e||e.disconnect(),null===(i=this.inheritedResizeObserver)||void 0===i||i.disconnect()}calcOverflow(){if(!this.multiple||this.maxChips>0||!this.chipsEl)return void(0!==this.overflowCount&&(this.overflowCount=0));const e=Array.from(this.chipsEl.querySelectorAll(".co-ref-field__chip"));if(0===e.length)return void(0!==this.overflowCount&&(this.overflowCount=0));const i=this.chipsEl.getBoundingClientRect().right;let t=0;for(let o=e.length-1;o>=0&&e[o].getBoundingClientRect().right>i+1;o--)t++;t!==this.overflowCount&&(this.overflowCount=t)}onOpenChange(e){e?(this.hasPanelSlot=!!this.el.querySelector(':scope > [slot="panel"]'),this.coOpen.emit(),this.pendingFocus=!0):(this.coClose.emit(),this.restoreTriggerFocus())}onInheritedLabelChange(){requestAnimationFrame(this.measureInherited)}restoreTriggerFocus(){var e;const i=document.activeElement;(i===this.el||this.el.contains(i))&&(null===(e=this.triggerEl)||void 0===e||e.focus())}async selectOption(e){this.handleOptionClick(e)}async closePanel(){this.isOpen=!1}async openPanel(){this.disabled||(this.isOpen=!0)}renderTrigger(){const i=this.effectiveDisplayItems,t=i.length>0;return o("div",{class:{"co-ref-field__trigger":!0,"co-ref-field--open":this.isOpen,"co-ref-field--disabled":this.disabled,["co-ref-field--"+this.normalizedSize]:!0,["co-ref-field--"+this.status]:"default"!==this.status,"co-ref-field--flat":"flat"===this.variant},role:"combobox","aria-expanded":this.isOpen?"true":"false","aria-haspopup":"listbox","aria-label":this.label||void 0,"aria-disabled":this.disabled?"true":void 0,"aria-controls":this.isOpen?e.LIST_ID:void 0,tabIndex:this.disabled?-1:0,ref:e=>this.triggerEl=e,onClick:this.handleTriggerClick,onKeyDown:this.handleTriggerKeyDown},this.iconLeft&&o("span",{class:"co-ref-field__icon"},o("co-icon",{name:this.iconLeft,size:16})),o("div",{class:"co-ref-field__value"},!t&&this.inheritedLabel&&o("co-tooltip",{block:!0,class:"co-ref-field__inherited-tip",content:this.inheritedLabel,placement:"top",disabled:!this.inheritedTruncated},o("span",{class:"co-ref-field__inherited",part:"trigger-inherited",ref:this.setInheritedEl},this.inheritedLabel)),!t&&!this.inheritedLabel&&o("span",{class:"co-ref-field__placeholder",part:"trigger-placeholder"},this.placeholder),t&&!this.multiple&&this.renderSingleValue(i[0]),t&&this.multiple&&this.renderMultipleValue(i)),!t&&this.inheritedLabel&&this.inheritedBadgeLabel&&o("span",{class:"co-ref-field__inherited-badge",part:"trigger-inherited-badge"},this.inheritedBadgeLabel),t&&this.triggerBadgeIcon&&o("span",{class:"co-ref-field__trigger-badge",part:"trigger-badge",role:"img",title:this.triggerBadgeLabel||void 0,"aria-label":this.triggerBadgeLabel||void 0},o("co-icon",{name:this.triggerBadgeIcon,size:11,weight:"fill"})),t&&!this.multiple&&this.editable&&!this.disabled&&o("button",{class:"co-ref-field__edit",part:"trigger-edit",tabIndex:-1,onClick:this.handleEditClick,type:"button",title:this.editLabel||void 0,"aria-label":this.editLabel||void 0},o("co-icon",{name:"pencil-simple",size:14})),t&&this.clearable&&!this.disabled&&o("button",{class:"co-ref-field__clear",part:"trigger-clear",tabIndex:-1,onClick:this.handleClear,type:"button"},o("co-icon",{name:"x",size:14})),o("span",{class:"co-ref-field__caret",part:"trigger-chevron"},o("co-icon",{name:"caret-up-down",size:16})))}renderItemAvatar(e){return e.image||e.avatar?o("co-avatar",{class:"co-ref-field__avatar",type:e.image?"image":"text",src:e.image,text:e.avatar,color:e.color,size:"xxs",shape:this.avatarShape}):e.color?o("span",{class:"co-ref-field__color-dot",style:{backgroundColor:e.color}}):null}renderSingleValue(e){return o("div",{class:"co-ref-field__selected"},this.renderItemAvatar(e),o("span",{class:"co-ref-field__selected-label",part:"trigger-text"},e.label))}renderMultipleValue(e){const i=this.maxChips>0,t=Math.min(this.overflowCount,Math.max(0,e.length-1)),r=i?e.slice(0,this.maxChips):e,s=i?e.length-this.maxChips:t,l=e.length-(i?0:t);return o("div",{class:"co-ref-field__chips-row"},o("div",{class:"co-ref-field__chips",ref:e=>this.chipsEl=e},r.map(((e,t)=>{const r="fill"===this.colorMode&&!!e.color&&!(e.image||e.avatar);return o(a,{key:e._id,baseClass:"co-ref-field__chip",label:e.label,modifiers:{"co-ref-field__chip--avatar":!(!e.image&&!e.avatar),"co-ref-field__chip--fill":r,"co-ref-field__chip--fill-light":r&&c(e.color),"co-ref-field__chip--clipped":!i&&t>=l,["co-ref-field__chip--"+this.normalizedSize]:!0},style:r?{backgroundColor:e.color}:void 0,onRemove:i=>this.handleRemoveChip(e._id,i)},e.image||e.avatar?this.renderItemAvatar(e):e.color&&!r?o("span",{class:"co-ref-field__chip-dot",style:{backgroundColor:e.color}}):null)}))),s>0&&o("span",{class:"co-ref-field__chip-overflow"},"+",s))}renderFooter(e){return this.showFooter?o("div",{class:"co-ref-field__footer",slot:e?"footer":void 0},this.footerSecondaryLabel&&o("button",{class:"co-ref-field__footer-btn co-ref-field__footer-btn--secondary",type:"button",onClick:this.handleFooterSecondary},o("co-icon",{name:"plus",size:16}),o("span",null,this.footerSecondaryLabel)),o("button",{class:"co-ref-field__footer-btn co-ref-field__footer-btn--primary",type:"button",onClick:this.handleFooterPrimary},o("co-icon",{name:"check",size:16}),o("span",null,this.footerPrimaryLabel))):null}renderPanel(){const i={"co-ref-field__panel":!0,"co-ref-field__panel--dark":"dark"===this.panelTheme,"co-ref-field__panel--light":"light"===this.panelTheme},t=this.panelWidth?{width:this.panelWidth}:void 0;return this.hasPanelSlot?o("div",{class:Object.assign(Object.assign({},i),{"co-ref-field__panel--custom":!0}),id:e.LIST_ID,style:t},o("slot",{name:"panel"}),this.renderFooter(!1)):o("div",{class:i,style:t},o("co-option-list",{id:e.LIST_ID,ref:e=>this.optionListEl=e,items:"string"==typeof this.options?this.options:JSON.stringify(this.options),value:this.value,selectedItems:"string"==typeof this.selectedDisplay?this.selectedDisplay:JSON.stringify(this.selectedDisplay),multiple:this.multiple,selectedFirst:this.multiple,reorderable:this.multiple,pinnable:this.pinnable,listReorderable:this.listReorderable,selectedAffordance:"deselect",searchable:this.searchable,searchPlaceholder:this.searchPlaceholder,searchDebounce:this.searchDebounce,loading:this.loading,total:this.total,emptyMessage:this.emptyMessage,avatarShape:this.avatarShape,onCoSearch:e=>this.coSearch.emit(e.detail),onCoChange:e=>this.handleListChange(e.detail),onCoReorder:e=>this.handleReorder(e.detail),onCoPinToggle:e=>this.coPinToggle.emit(e.detail),onCoListReorder:e=>this.coListReorder.emit(e.detail),onCoLoadMore:()=>this.coLoadMore.emit()},o("slot",{name:"panel-footer",slot:"footer"}),this.renderFooter(!0)))}render(){return o("div",{key:"fa7de667cc9002d1a4a042b0d200524cbcb89b78",class:"co-ref-field"},(this.label||this.secondaryLabel)&&o("div",{key:"a6ddd5b71364e4f5bdf63b04faa09bfc0a32f6bc",class:"co-ref-field__labels"},this.label&&o("label",{key:"766f803c8be77f72e52e4d3cdd7b6d7a363a146a",class:"co-ref-field__label"},this.labelIcon&&o("co-icon",{key:"a8b6c7f189af4b9f37de8c3cc96cb489fd9183e4",class:"co-ref-field__label-icon",name:this.labelIcon,size:16}),this.label,o(s,{key:"643edcb040ef9a91040e8d52f628bc0af06c36ba",required:this.required})),this.secondaryLabel&&o("span",{key:"7a107c578e003760423acc6d450f2a42a0868375",class:"co-ref-field__secondary-label"},this.secondaryLabel)),o("co-popover",{key:"9938ca629c5927156ea137adfefd1d927104312b",open:this.isOpen,placement:"bottom-start",matchWidth:!this.panelWidth,offset:4,onCoOpen:this.handlePopoverOpen,onCoClose:this.handlePopoverClose},o("div",{key:"7618ea5fb13e4944596fd728cf934b5c28bd29ab",slot:"trigger"},this.renderTrigger()),this.isOpen&&this.renderPanel()),this.helperText&&o("div",{key:"1dd9fc7659e8f8791bb4b785407b0e89b32107c8",class:"co-ref-field__helper co-ref-field__helper--"+this.status},"default"!==this.status&&o("co-icon",{key:"399674b95ebcc91581f1f1cea54451f8ee33d9da",name:"error"===this.status?"warning-circle":"success"===this.status?"check-circle":"info",size:14}),o("span",{key:"640adc4e5cd4cd742a171cac1319b75489cb7ef8"},this.helperText)))}get el(){return this}static get watchers(){return{isOpen:[{onOpenChange:0}],inheritedLabel:[{onInheritedLabelChange:0}]}}static get style(){return":host{display:block;font-family:var(--co-font-family-primary);font-size:var(--co-font-size-14);letter-spacing:var(--co-font-letter-spacing-body);line-height:1;position:relative}.co-ref-field{display:flex;flex-direction:column;gap:var(--co-spacing-sm2)}.co-ref-field__labels{display:flex;align-items:center;justify-content:space-between;padding:0 var(--co-spacing-xs);gap:var(--co-spacing-sm2)}.co-ref-field__label{display:inline-flex;align-items:center;color:var(--co-ref-field-label-color, var(--co-semantic-text-secondary));font-family:var(--co-ref-field-label-font-family, var(--co-font-family-primary));font-size:var(--co-ref-field-label-font-size, var(--co-font-size-14));font-weight:var(--co-ref-field-label-font-weight, 400);line-height:1;white-space:nowrap;cursor:default;text-transform:var(--co-ref-field-label-text-transform, none);letter-spacing:var(--co-ref-field-label-letter-spacing, var(--co-font-letter-spacing-body))}.co-ref-field__secondary-label{color:var(--co-semantic-text-muted);font-family:var(--co-font-family-mono);font-size:var(--co-font-size-12);font-weight:400;line-height:1;white-space:nowrap;text-align:right}.co-ref-field__trigger{display:flex;align-items:center;gap:var(--co-spacing-sm2);padding:var(--co-spacing-sm2) var(--co-spacing-md);background:var(--co-ref-field-trigger-bg, var(--co-semantic-surface-page));border:1px solid var(--co-ref-field-trigger-border-color, var(--co-semantic-border-field));border-radius:var(--co-border-radius-xs);min-height:40px;box-sizing:border-box;cursor:pointer;transition:border-color var(--co-motion-duration-fast) var(--co-motion-ease-out), box-shadow var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-ref-field--flat{background:transparent;border-color:transparent}.co-ref-field--s{min-height:28px;padding:var(--co-spacing-xxs) var(--co-spacing-sm);font-size:var(--co-font-size-12)}.co-ref-field--sm{min-height:32px;padding:var(--co-spacing-xs) var(--co-spacing-sm);font-size:var(--co-font-size-12)}.co-ref-field--lg{min-height:48px;padding:var(--co-spacing-sm) var(--co-spacing-lg);font-size:var(--co-font-size-16)}.co-ref-field--open{border-color:var(--co-semantic-border-focus);box-shadow:0 0 0 2px var(--co-semantic-border-focus-ring)}.co-ref-field__trigger:focus-visible{outline:none;border-color:var(--co-semantic-border-focus);box-shadow:0 0 0 2px var(--co-semantic-border-focus-ring)}.co-ref-field--disabled{background:var(--co-semantic-surface-disabled);border-color:transparent;cursor:not-allowed}.co-ref-field--error{border-color:var(--co-semantic-status-error)}.co-ref-field--success{border-color:var(--co-semantic-status-success)}.co-ref-field--warning{border-color:var(--co-color-status-review)}.co-ref-field--s .co-ref-field__selected{--co-avatar-size:20px}.co-ref-field--sm .co-ref-field__selected{--co-avatar-size:22px}.co-ref-field--md .co-ref-field__selected{--co-avatar-size:22px}.co-ref-field--lg .co-ref-field__selected{--co-avatar-size:28px}.co-ref-field__icon{flex-shrink:0;color:var(--co-semantic-text-muted);display:flex;align-items:center}.co-ref-field__label-icon{flex-shrink:0;margin-right:var(--co-spacing-xs);color:var(--co-semantic-text-secondary)}.co-ref-field__value{flex:1;min-width:0;display:flex;align-items:center}.co-ref-field__placeholder{color:var(--co-semantic-text-muted);font-size:inherit;font-weight:400;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.co-ref-field__inherited-tip{min-width:0;max-width:100%}.co-ref-field__inherited{display:block;color:var(--co-semantic-text-secondary);font-size:inherit;font-weight:400;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.co-ref-field__inherited-badge{flex-shrink:0;display:inline-flex;align-items:center;box-sizing:border-box;height:22px;padding:0 var(--co-spacing-sm2);border:1px solid var(--co-ref-field-inherited-badge-border, var(--co-semantic-border-default));border-radius:var(--co-border-radius-full);color:var(--co-ref-field-inherited-badge-color, var(--co-semantic-text-secondary));font-size:var(--co-font-size-12);font-weight:400;line-height:1;white-space:nowrap}.co-ref-field__caret{flex-shrink:0;color:var(--co-semantic-text-muted);display:flex;align-items:center}.co-ref-field__trigger-badge{flex-shrink:0;display:grid;place-items:center;width:18px;height:18px;border-radius:var(--co-border-radius-xxs);background:var(--co-ref-field-trigger-badge-bg, rgba(0, 0, 0, 0.22));color:var(--co-semantic-text-default)}.co-ref-field__clear{flex-shrink:0;display:flex;align-items:center;padding:0;margin:0;border:none;background:transparent;cursor:pointer;color:var(--co-semantic-text-muted);transition:color var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-ref-field__clear:hover{color:var(--co-semantic-text-default)}.co-ref-field__edit{flex-shrink:0;display:flex;align-items:center;padding:0;margin:0;border:none;background:transparent;cursor:pointer;color:var(--co-semantic-text-muted);transition:color var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-ref-field__edit:hover{color:var(--co-semantic-text-default)}.co-ref-field__selected{display:flex;align-items:center;gap:var(--co-spacing-sm);min-width:0}.co-ref-field__color-dot{width:10px;height:10px;min-width:10px;border-radius:var(--co-border-radius-full);flex-shrink:0}.co-ref-field__avatar{flex-shrink:0}.co-ref-field__selected-label{color:var(--co-semantic-text-default);font-size:inherit;font-weight:400;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.co-ref-field__chips-row{flex:1;min-width:0;display:flex;align-items:center;gap:var(--co-spacing-xs)}.co-ref-field__chips{flex:1;min-width:0;display:flex;flex-wrap:nowrap;overflow:hidden;gap:var(--co-spacing-xs);align-items:center}.co-ref-field__chip{display:inline-flex;align-items:center;gap:var(--co-spacing-sm);padding:0 var(--co-spacing-sm2);background:var(--co-color-gray-100);border-radius:var(--co-border-radius-full);line-height:1;max-width:min(160px, 100%);flex-shrink:0}.co-ref-field__chip--avatar{padding-left:var(--co-spacing-xxs)}.co-ref-field__chip--s{min-height:20px;--co-avatar-size:20px;font-size:var(--co-font-size-12)}.co-ref-field__chip--sm{min-height:22px;--co-avatar-size:22px;font-size:var(--co-font-size-12)}.co-ref-field__chip--md{min-height:22px;--co-avatar-size:22px;font-size:var(--co-font-size-14)}.co-ref-field__chip--lg{min-height:28px;--co-avatar-size:28px;font-size:var(--co-font-size-14)}.co-ref-field__chip--clipped{visibility:hidden}.co-ref-field__chip-dot{width:8px;height:8px;min-width:8px;border-radius:var(--co-border-radius-full);flex-shrink:0}.co-ref-field__chip--fill{color:var(--co-color-base-blanco);border-radius:var(--co-spacing-sm)}.co-ref-field__chip--fill-light{color:var(--co-color-base-negro)}.co-ref-field__chip--fill .co-ref-field__chip-label,.co-ref-field__chip--fill .co-ref-field__chip-remove{color:inherit}.co-ref-field__chip--fill .co-ref-field__chip-remove{opacity:0.72}.co-ref-field__chip--fill .co-ref-field__chip-remove:hover{color:inherit;opacity:1}.co-ref-field__chip-label{color:var(--co-semantic-text-default);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.co-ref-field__chip-remove{display:flex;align-items:center;padding:0;margin:0;border:none;background:transparent;cursor:pointer;color:var(--co-color-gray-500);transition:color var(--co-motion-duration-fast) var(--co-motion-ease-out);flex-shrink:0}.co-ref-field__chip-remove:hover{color:var(--co-semantic-text-default)}.co-ref-field__chip-overflow{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;padding:var(--co-spacing-xs) var(--co-spacing-sm);background:var(--co-color-opacity-negro-8);border-radius:var(--co-border-radius-full);font-size:var(--co-font-size-12);font-weight:600;color:var(--co-semantic-text-secondary);line-height:1}.co-ref-field__panel{display:flex;flex-direction:column;border-radius:var(--co-border-radius-sm, 12px);overflow:hidden}.co-ref-field__panel--dark{--co-semantic-surface-page:#0A0A0A;--co-semantic-surface-primary:#0A0A0A;--co-semantic-surface-hover:rgba(255, 255, 255, 0.08);--co-semantic-surface-muted:rgba(255, 255, 255, 0.12);--co-semantic-text-default:#ffffff;--co-semantic-text-secondary:rgba(255, 255, 255, 0.8);--co-semantic-text-muted:rgba(255, 255, 255, 0.5);--co-semantic-border-subtle:rgba(255, 255, 255, 0.12);--co-semantic-border-default:rgba(255, 255, 255, 0.16);background:#0A0A0A;color:#ffffff}.co-ref-field__panel--light{--co-semantic-surface-page:#ffffff;--co-semantic-surface-primary:#ffffff;--co-semantic-surface-hover:var(--co-color-gray-100, #f5f5f5);--co-semantic-surface-muted:var(--co-color-gray-200, #e5e5e5);--co-semantic-text-default:var(--co-color-gray-700, #1F1C1B);--co-semantic-text-secondary:rgba(0, 0, 0, 0.6);--co-semantic-text-muted:rgba(0, 0, 0, 0.45);--co-semantic-border-subtle:var(--co-color-gray-200, #e5e5e5);--co-semantic-border-default:var(--co-color-gray-300, #d4d4d4);background:#ffffff;color:var(--co-color-gray-700, #1F1C1B)}.co-ref-field__footer{display:flex;gap:var(--co-spacing-sm2);border-top:1px solid var(--co-semantic-border-subtle);padding:var(--co-spacing-sm2)}.co-ref-field__footer-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:var(--co-spacing-sm);padding:var(--co-spacing-sm2) var(--co-spacing-md);border-radius:var(--co-border-radius-xs);font-family:var(--co-font-family-primary);font-size:var(--co-font-size-12, 12px);font-weight:500;line-height:1;letter-spacing:var(--co-font-letter-spacing-body);white-space:nowrap;cursor:pointer;transition:opacity var(--co-motion-duration-fast) var(--co-motion-ease-out);box-sizing:border-box;min-height:32px}.co-ref-field__footer-btn:hover{opacity:0.85}.co-ref-field__footer-btn--secondary{background:transparent;color:var(--co-semantic-text-default);border:1px solid var(--co-semantic-border-default)}.co-ref-field__footer-btn--primary{background:var(--co-semantic-surface-primary);color:var(--co-semantic-on-primary);border:none}.co-ref-field__helper{display:flex;align-items:center;gap:var(--co-spacing-xs);padding:0 var(--co-spacing-xs);font-size:var(--co-font-size-14);font-weight:400;color:var(--co-semantic-text-muted)}.co-ref-field__helper--error{color:var(--co-semantic-status-error)}.co-ref-field__helper--success{color:var(--co-semantic-status-success)}.co-ref-field__helper--warning{color:var(--co-color-status-review)}:host([layout='horizontal']) .co-ref-field{display:grid;grid-template-columns:var(--co-field-label-width, max-content) 1fr;align-items:start;column-gap:var(--co-spacing-md);row-gap:var(--co-spacing-sm2)}:host([layout='horizontal']) .co-ref-field__labels{grid-column:1;grid-row:1;padding-top:var(--co-spacing-sm2);min-width:0}:host([layout='horizontal']) .co-ref-field__label{white-space:normal}:host([layout='horizontal']) .co-ref-field>:not(.co-ref-field__labels){grid-column:2;min-width:0}.co-field-required{margin-left:2px;color:var(--co-color-status-error)}.co-field-required__caption{margin-left:4px;color:var(--co-semantic-text-muted);font-size:var(--co-font-size-12);font-weight:400}.co-field-required__caption::before{content:var(--co-field-required-text, ' (required)')}"}},[257,"co-ref-field",{label:[1],required:[4],secondaryLabel:[1,"secondary-label"],labelIcon:[513,"label-icon"],placeholder:[1],disabled:[4],clearable:[4],editable:[4],editLabel:[1,"edit-label"],multiple:[4],status:[1],helperText:[1,"helper-text"],iconLeft:[1,"icon-left"],layout:[513],size:[513],variant:[513],value:[1025],options:[1],selectedDisplay:[1,"selected-display"],loading:[4],total:[2],searchable:[4],searchPlaceholder:[1,"search-placeholder"],searchDebounce:[2,"search-debounce"],emptyMessage:[1,"empty-message"],showFooter:[4,"show-footer"],footerPrimaryLabel:[1,"footer-primary-label"],footerSecondaryLabel:[1,"footer-secondary-label"],maxChips:[2,"max-chips"],panelTheme:[1,"panel-theme"],colorMode:[1,"color-mode"],triggerBadgeIcon:[1,"trigger-badge-icon"],triggerBadgeLabel:[1,"trigger-badge-label"],inheritedLabel:[1,"inherited-label"],inheritedBadgeLabel:[1,"inherited-badge-label"],panelWidth:[1,"panel-width"],avatarShape:[1,"avatar-shape"],pinnable:[4],listReorderable:[4,"list-reorderable"],inheritedTruncated:[32],isOpen:[32],overflowCount:[32],selectOption:[64],closePanel:[64],openPanel:[64]},void 0,{isOpen:[{onOpenChange:0}],inheritedLabel:[{onInheritedLabelChange:0}]}]);function m(){"undefined"!=typeof customElements&&["co-ref-field","co-avatar","co-icon","co-loader","co-option-list","co-popover","co-tooltip"].forEach((e=>{switch(e){case"co-ref-field":customElements.get(r(e))||customElements.define(r(e),g);break;case"co-avatar":customElements.get(r(e))||l();break;case"co-icon":customElements.get(r(e))||n();break;case"co-loader":customElements.get(r(e))||d();break;case"co-option-list":customElements.get(r(e))||f();break;case"co-popover":customElements.get(r(e))||h();break;case"co-tooltip":customElements.get(r(e))||p()}}))}g.LIST_ID="co-ref-field-list",m();const b=g,v=m;export{b as CoRefField,v as defineCustomElement}
|
|
1
|
+
import{p as e,H as i,c as t,h as o,t as r}from"./index.js";import{R as s}from"./p-CWneqh4n.js";import{F as a}from"./p-C4U2tbRp.js";import{i as c}from"./p-BRbgGqLw.js";import{d as l}from"./p-Dcg4krSX.js";import{d as n}from"./p-DNJAIVfI.js";import{d}from"./p-BH184F0X.js";import{d as f}from"./p-Dh8ffSjK.js";import{d as h}from"./p-D9T7zKeL.js";import{d as p}from"./p-Bsh0JMGf.js";const g=e(class e extends i{constructor(e){super(),!1!==e&&this.__registerHost(),this.__attachShadow(),this.coChange=t(this,"coChange",7),this.coClear=t(this,"coClear",7),this.coSearch=t(this,"coSearch",7),this.coLoadMore=t(this,"coLoadMore",7),this.coOpen=t(this,"coOpen",3),this.coClose=t(this,"coClose",3),this.coRemove=t(this,"coRemove",7),this.coFooterPrimary=t(this,"coFooterPrimary",7),this.coFooterSecondary=t(this,"coFooterSecondary",7),this.coPinToggle=t(this,"coPinToggle",7),this.coListReorder=t(this,"coListReorder",7),this.coEditSelected=t(this,"coEditSelected",7),this.required=!1,this.placeholder="Select…",this.disabled=!1,this.clearable=!0,this.editable=!1,this.editLabel="Edit",this.multiple=!1,this.status="default",this.layout="vertical",this.size="md",this.variant="default",this.value="",this.options="[]",this.selectedDisplay="[]",this.loading=!1,this.total=0,this.searchable=!0,this.searchPlaceholder="Search…",this.searchDebounce=350,this.emptyMessage="No results found",this.showFooter=!1,this.footerPrimaryLabel="Ok",this.footerSecondaryLabel="New",this.maxChips=0,this.panelTheme="auto",this.colorMode="dot",this.triggerBadgeIcon="",this.triggerBadgeLabel="",this.inheritedLabel="",this.inheritedBadgeLabel="",this.avatarShape="circle",this.pinnable=!1,this.listReorderable=!1,this.inheritedTruncated=!1,this.isOpen=!1,this.overflowCount=0,this.lastChipsKey="\0",this.pendingFocus=!1,this.hasPanelSlot=!1,this.handlePopoverOpen=()=>{this.isOpen=!0},this.handlePopoverClose=()=>{this.isOpen=!1},this.measureInherited=()=>{const e=this.inheritedEl,i=!!e&&e.scrollWidth>e.clientWidth+1;i!==this.inheritedTruncated&&(this.inheritedTruncated=i)},this.setInheritedEl=e=>{var i,t;const o=e||void 0;o!==this.inheritedEl&&(this.inheritedEl&&(null===(i=this.inheritedResizeObserver)||void 0===i||i.unobserve(this.inheritedEl)),this.inheritedEl=o,o?null===(t=this.inheritedResizeObserver)||void 0===t||t.observe(o):this.inheritedTruncated&&(this.inheritedTruncated=!1))},this.handleTriggerClick=e=>{this.disabled&&e.stopPropagation()},this.handleTriggerKeyDown=e=>{this.disabled||e.target===this.triggerEl&&("Enter"===e.key||" "===e.key?(e.preventDefault(),this.isOpen=!this.isOpen):"ArrowDown"!==e.key||this.isOpen||(e.preventDefault(),this.isOpen=!0))},this.handleListChange=e=>{if(!this.multiple&&null===e.value)return this.value="",this.coClear.emit(),void(this.isOpen=!1);this.handleOptionClick(e.item)},this.handleOptionClick=e=>{if(this.multiple){const i=this.parsedValue;let t;t=i.indexOf(e._id)>=0?i.filter((i=>i!==e._id)):[...i,e._id],this.value=JSON.stringify(t),this.coChange.emit({value:t,item:e})}else this.value=e._id,this.coChange.emit({value:e._id,item:e}),this.isOpen=!1},this.handleReorder=e=>{this.value=JSON.stringify(e.value),this.coChange.emit({value:e.value,item:e.item})},this.handleClear=e=>{e.stopPropagation(),this.value=this.multiple?"[]":"",this.coClear.emit()},this.handleEditClick=e=>{e.stopPropagation();const i=this.effectiveDisplayItems[0];i&&this.coEditSelected.emit(i._id)},this.handleRemoveChip=(e,i)=>{var t;i.stopPropagation();const o=null!==(t=this.effectiveDisplayItems.find((i=>i._id===e)))&&void 0!==t?t:{_id:e,label:e},r=this.parsedValue.filter((i=>i!==e));this.value=JSON.stringify(r),this.coRemove.emit(e),this.coChange.emit({value:r,item:o})},this.handleFooterPrimary=()=>{this.coFooterPrimary.emit(),this.isOpen=!1},this.handleFooterSecondary=()=>{this.coFooterSecondary.emit()}}get normalizedSize(){return"default"===this.size?"md":this.size}get parsedOptions(){try{const e="string"==typeof this.options?JSON.parse(this.options):this.options;return Array.isArray(e)?e:[]}catch(e){return[]}}get parsedSelectedDisplay(){try{const e="string"==typeof this.selectedDisplay?JSON.parse(this.selectedDisplay):this.selectedDisplay;return Array.isArray(e)?e:[]}catch(e){return[]}}get effectiveDisplayItems(){const e=this.parsedValue;if(0===e.length)return[];const i=new Map;for(const e of this.parsedSelectedDisplay)i.set(e._id,e);for(const e of this.parsedOptions)i.has(e._id)||i.set(e._id,{_id:e._id,label:e.label,description:e.description,color:e.color,avatar:e.avatar,image:e.image});return e.map((e=>i.get(e))).filter(Boolean)}get parsedValue(){if(!this.value)return[];try{const e=JSON.parse(this.value);return Array.isArray(e)?e:[this.value]}catch(e){return this.value?[this.value]:[]}}connectedCallback(){this.resizeObserver=new ResizeObserver((()=>this.calcOverflow())),this.inheritedResizeObserver=new ResizeObserver((()=>this.measureInherited())),this.inheritedEl&&this.inheritedResizeObserver.observe(this.inheritedEl)}componentDidRender(){var e,i,t,o;this.chipsEl!==this.observedChipsEl&&(null===(e=this.resizeObserver)||void 0===e||e.disconnect(),this.chipsEl&&(null===(i=this.resizeObserver)||void 0===i||i.observe(this.chipsEl)),this.observedChipsEl=this.chipsEl);const r=null===(t=this.chipsEl)||void 0===t?void 0:t.querySelectorAll(".co-ref-field__chip"),s=r?Array.from(r,(e=>e.textContent)).join(""):"";s!==this.lastChipsKey&&(this.lastChipsKey=s,this.calcOverflow()),this.pendingFocus&&(null===(o=this.optionListEl)||void 0===o?void 0:o.isConnected)&&(this.pendingFocus=!1,this.optionListEl.focusSearch())}disconnectedCallback(){var e,i;null===(e=this.resizeObserver)||void 0===e||e.disconnect(),null===(i=this.inheritedResizeObserver)||void 0===i||i.disconnect()}calcOverflow(){if(!this.multiple||this.maxChips>0||!this.chipsEl)return void(0!==this.overflowCount&&(this.overflowCount=0));const e=Array.from(this.chipsEl.querySelectorAll(".co-ref-field__chip"));if(0===e.length)return void(0!==this.overflowCount&&(this.overflowCount=0));const i=this.chipsEl.getBoundingClientRect().right;let t=0;for(let o=e.length-1;o>=0&&e[o].getBoundingClientRect().right>i+1;o--)t++;t!==this.overflowCount&&(this.overflowCount=t)}onOpenChange(e){e?(this.hasPanelSlot=!!this.el.querySelector(':scope > [slot="panel"]'),this.coOpen.emit(),this.pendingFocus=!0):(this.coClose.emit(),this.restoreTriggerFocus())}onInheritedLabelChange(){requestAnimationFrame(this.measureInherited)}restoreTriggerFocus(){var e;const i=document.activeElement;(i===this.el||this.el.contains(i))&&(null===(e=this.triggerEl)||void 0===e||e.focus())}async selectOption(e){this.handleOptionClick(e)}async closePanel(){this.isOpen=!1}async openPanel(){this.disabled||(this.isOpen=!0)}renderTrigger(){const i=this.effectiveDisplayItems,t=i.length>0;return o("div",{class:{"co-ref-field__trigger":!0,"co-ref-field--open":this.isOpen,"co-ref-field--disabled":this.disabled,["co-ref-field--"+this.normalizedSize]:!0,["co-ref-field--"+this.status]:"default"!==this.status,"co-ref-field--flat":"flat"===this.variant},role:"combobox","aria-expanded":this.isOpen?"true":"false","aria-haspopup":"listbox","aria-label":this.label||void 0,"aria-disabled":this.disabled?"true":void 0,"aria-controls":this.isOpen?e.LIST_ID:void 0,tabIndex:this.disabled?-1:0,ref:e=>this.triggerEl=e,onClick:this.handleTriggerClick,onKeyDown:this.handleTriggerKeyDown},this.iconLeft&&o("span",{class:"co-ref-field__icon"},o("co-icon",{name:this.iconLeft,size:16})),o("div",{class:"co-ref-field__value"},!t&&this.inheritedLabel&&o("co-tooltip",{block:!0,class:"co-ref-field__inherited-tip",content:this.inheritedLabel,placement:"top",disabled:!this.inheritedTruncated},o("span",{class:"co-ref-field__inherited",part:"trigger-inherited",ref:this.setInheritedEl},this.inheritedLabel)),!t&&!this.inheritedLabel&&o("span",{class:"co-ref-field__placeholder",part:"trigger-placeholder"},this.placeholder),t&&!this.multiple&&this.renderSingleValue(i[0]),t&&this.multiple&&this.renderMultipleValue(i)),!t&&this.inheritedLabel&&this.inheritedBadgeLabel&&o("span",{class:"co-ref-field__inherited-badge",part:"trigger-inherited-badge"},this.inheritedBadgeLabel),t&&this.triggerBadgeIcon&&o("span",{class:"co-ref-field__trigger-badge",part:"trigger-badge",role:"img",title:this.triggerBadgeLabel||void 0,"aria-label":this.triggerBadgeLabel||void 0},o("co-icon",{name:this.triggerBadgeIcon,size:11,weight:"fill"})),t&&!this.multiple&&this.editable&&!this.disabled&&o("button",{class:"co-ref-field__edit",part:"trigger-edit",tabIndex:-1,onClick:this.handleEditClick,type:"button",title:this.editLabel||void 0,"aria-label":this.editLabel||void 0},o("co-icon",{name:"pencil-simple",size:14})),t&&this.clearable&&!this.disabled&&o("button",{class:"co-ref-field__clear",part:"trigger-clear",tabIndex:-1,onClick:this.handleClear,type:"button"},o("co-icon",{name:"x",size:14})),o("span",{class:"co-ref-field__caret",part:"trigger-chevron"},o("co-icon",{name:"caret-up-down",size:16})))}renderItemAvatar(e){return e.image||e.avatar?o("co-avatar",{class:"co-ref-field__avatar",type:e.image?"image":"text",src:e.image,text:e.avatar,color:e.color,size:"xxs",shape:this.avatarShape}):e.color?o("span",{class:"co-ref-field__color-dot",style:{backgroundColor:e.color}}):null}renderSingleValue(e){return o("div",{class:"co-ref-field__selected"},this.renderItemAvatar(e),o("span",{class:"co-ref-field__selected-label",part:"trigger-text"},e.label))}renderMultipleValue(e){const i=this.maxChips>0,t=Math.min(this.overflowCount,Math.max(0,e.length-1)),r=i?e.slice(0,this.maxChips):e,s=i?e.length-this.maxChips:t,l=e.length-(i?0:t);return o("div",{class:"co-ref-field__chips-row"},o("div",{class:"co-ref-field__chips",ref:e=>this.chipsEl=e},r.map(((e,t)=>{const r="fill"===this.colorMode&&!!e.color&&!(e.image||e.avatar);return o(a,{key:e._id,baseClass:"co-ref-field__chip",label:e.label,modifiers:{"co-ref-field__chip--avatar":!(!e.image&&!e.avatar),"co-ref-field__chip--fill":r,"co-ref-field__chip--fill-light":r&&c(e.color),"co-ref-field__chip--clipped":!i&&t>=l,["co-ref-field__chip--"+this.normalizedSize]:!0},style:r?{backgroundColor:e.color}:void 0,onRemove:i=>this.handleRemoveChip(e._id,i)},e.image||e.avatar?this.renderItemAvatar(e):e.color&&!r?o("span",{class:"co-ref-field__chip-dot",style:{backgroundColor:e.color}}):null)}))),s>0&&o("span",{class:"co-ref-field__chip-overflow"},"+",s))}renderFooter(e){return this.showFooter?o("div",{class:"co-ref-field__footer",slot:e?"footer":void 0},this.footerSecondaryLabel&&o("button",{class:"co-ref-field__footer-btn co-ref-field__footer-btn--secondary",type:"button",onClick:this.handleFooterSecondary},o("co-icon",{name:"plus",size:16}),o("span",null,this.footerSecondaryLabel)),o("button",{class:"co-ref-field__footer-btn co-ref-field__footer-btn--primary",type:"button",onClick:this.handleFooterPrimary},o("co-icon",{name:"check",size:16}),o("span",null,this.footerPrimaryLabel))):null}renderPanel(){const i={"co-ref-field__panel":!0,"co-ref-field__panel--dark":"dark"===this.panelTheme,"co-ref-field__panel--light":"light"===this.panelTheme},t=this.panelWidth?{width:this.panelWidth}:void 0;return this.hasPanelSlot?o("div",{class:Object.assign(Object.assign({},i),{"co-ref-field__panel--custom":!0}),id:e.LIST_ID,style:t},o("slot",{name:"panel"}),this.renderFooter(!1)):o("div",{class:i,style:t},o("co-option-list",{id:e.LIST_ID,ref:e=>this.optionListEl=e,items:"string"==typeof this.options?this.options:JSON.stringify(this.options),value:this.value,selectedItems:"string"==typeof this.selectedDisplay?this.selectedDisplay:JSON.stringify(this.selectedDisplay),multiple:this.multiple,selectedFirst:this.multiple,reorderable:this.multiple,pinnable:this.pinnable,listReorderable:this.listReorderable,selectedAffordance:"deselect",searchable:this.searchable,searchPlaceholder:this.searchPlaceholder,searchDebounce:this.searchDebounce,loading:this.loading,total:this.total,emptyMessage:this.emptyMessage,avatarShape:this.avatarShape,onCoSearch:e=>this.coSearch.emit(e.detail),onCoChange:e=>this.handleListChange(e.detail),onCoReorder:e=>this.handleReorder(e.detail),onCoPinToggle:e=>this.coPinToggle.emit(e.detail),onCoListReorder:e=>this.coListReorder.emit(e.detail),onCoLoadMore:()=>this.coLoadMore.emit()},o("slot",{name:"panel-footer",slot:"footer"}),this.renderFooter(!0)))}render(){return o("div",{key:"fa7de667cc9002d1a4a042b0d200524cbcb89b78",class:"co-ref-field"},(this.label||this.secondaryLabel)&&o("div",{key:"a6ddd5b71364e4f5bdf63b04faa09bfc0a32f6bc",class:"co-ref-field__labels"},this.label&&o("label",{key:"766f803c8be77f72e52e4d3cdd7b6d7a363a146a",class:"co-ref-field__label"},this.labelIcon&&o("co-icon",{key:"a8b6c7f189af4b9f37de8c3cc96cb489fd9183e4",class:"co-ref-field__label-icon",name:this.labelIcon,size:16}),this.label,o(s,{key:"643edcb040ef9a91040e8d52f628bc0af06c36ba",required:this.required})),this.secondaryLabel&&o("span",{key:"7a107c578e003760423acc6d450f2a42a0868375",class:"co-ref-field__secondary-label"},this.secondaryLabel)),o("co-popover",{key:"9938ca629c5927156ea137adfefd1d927104312b",open:this.isOpen,placement:"bottom-start",matchWidth:!this.panelWidth,offset:4,onCoOpen:this.handlePopoverOpen,onCoClose:this.handlePopoverClose},o("div",{key:"7618ea5fb13e4944596fd728cf934b5c28bd29ab",slot:"trigger"},this.renderTrigger()),this.isOpen&&this.renderPanel()),this.helperText&&o("div",{key:"1dd9fc7659e8f8791bb4b785407b0e89b32107c8",class:"co-ref-field__helper co-ref-field__helper--"+this.status},"default"!==this.status&&o("co-icon",{key:"399674b95ebcc91581f1f1cea54451f8ee33d9da",name:"error"===this.status?"warning-circle":"success"===this.status?"check-circle":"info",size:14}),o("span",{key:"640adc4e5cd4cd742a171cac1319b75489cb7ef8"},this.helperText)))}get el(){return this}static get watchers(){return{isOpen:[{onOpenChange:0}],inheritedLabel:[{onInheritedLabelChange:0}]}}static get style(){return":host{display:block;font-family:var(--co-font-family-primary);font-size:var(--co-font-size-14);letter-spacing:var(--co-font-letter-spacing-body);line-height:1;position:relative}.co-ref-field{display:flex;flex-direction:column;gap:var(--co-spacing-sm2)}.co-ref-field__labels{display:flex;align-items:center;justify-content:space-between;padding:0 var(--co-spacing-xs);gap:var(--co-spacing-sm2)}.co-ref-field__label{display:inline-flex;align-items:center;color:var(--co-ref-field-label-color, var(--co-semantic-text-secondary));font-family:var(--co-ref-field-label-font-family, var(--co-font-family-primary));font-size:var(--co-ref-field-label-font-size, var(--co-font-size-14));font-weight:var(--co-ref-field-label-font-weight, 400);line-height:1;white-space:nowrap;cursor:default;text-transform:var(--co-ref-field-label-text-transform, none);letter-spacing:var(--co-ref-field-label-letter-spacing, var(--co-font-letter-spacing-body))}.co-ref-field__secondary-label{color:var(--co-semantic-text-muted);font-family:var(--co-font-family-mono);font-size:var(--co-font-size-12);font-weight:400;line-height:1;white-space:nowrap;text-align:right}.co-ref-field__trigger{display:flex;align-items:center;gap:var(--co-spacing-sm2);padding:var(--co-spacing-sm2) var(--co-spacing-md);background:var(--co-ref-field-trigger-bg, var(--co-semantic-surface-page));border:1px solid var(--co-ref-field-trigger-border-color, var(--co-semantic-border-field));border-radius:var(--co-border-radius-xs);min-height:40px;box-sizing:border-box;cursor:pointer;transition:border-color var(--co-motion-duration-fast) var(--co-motion-ease-out), box-shadow var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-ref-field--flat{background:transparent;border-color:transparent}.co-ref-field--s{min-height:28px;padding:var(--co-spacing-xxs) var(--co-spacing-sm);font-size:var(--co-font-size-12)}.co-ref-field--sm{min-height:32px;padding:var(--co-spacing-xs) var(--co-spacing-sm);font-size:var(--co-font-size-12)}.co-ref-field--lg{min-height:48px;padding:var(--co-spacing-sm) var(--co-spacing-lg);font-size:var(--co-font-size-16)}.co-ref-field--open{border-color:var(--co-semantic-border-focus);box-shadow:0 0 0 2px var(--co-semantic-border-focus-ring)}.co-ref-field__trigger:focus-visible{outline:none;border-color:var(--co-semantic-border-focus);box-shadow:0 0 0 2px var(--co-semantic-border-focus-ring)}.co-ref-field--disabled{background:var(--co-semantic-surface-disabled);border-color:transparent;cursor:not-allowed}.co-ref-field--error{border-color:var(--co-semantic-status-error)}.co-ref-field--success{border-color:var(--co-semantic-status-success)}.co-ref-field--warning{border-color:var(--co-color-status-review)}.co-ref-field--s .co-ref-field__selected{--co-avatar-size:20px}.co-ref-field--sm .co-ref-field__selected{--co-avatar-size:22px}.co-ref-field--md .co-ref-field__selected{--co-avatar-size:22px}.co-ref-field--lg .co-ref-field__selected{--co-avatar-size:28px}.co-ref-field__icon{flex-shrink:0;color:var(--co-semantic-text-muted);display:flex;align-items:center}.co-ref-field__label-icon{flex-shrink:0;margin-right:var(--co-spacing-xs);color:var(--co-semantic-text-secondary)}.co-ref-field__value{flex:1;min-width:0;display:flex;align-items:center}.co-ref-field__placeholder{color:var(--co-semantic-text-muted);font-size:inherit;font-weight:400;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.co-ref-field__inherited-tip{min-width:0;max-width:100%}.co-ref-field__inherited{display:block;color:var(--co-semantic-text-secondary);font-size:inherit;font-weight:400;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.co-ref-field__inherited-badge{flex-shrink:0;display:inline-flex;align-items:center;box-sizing:border-box;height:22px;padding:0 var(--co-spacing-sm2);border:1px solid var(--co-ref-field-inherited-badge-border, var(--co-semantic-border-default));border-radius:var(--co-border-radius-full);color:var(--co-ref-field-inherited-badge-color, var(--co-semantic-text-secondary));font-size:var(--co-font-size-12);font-weight:400;line-height:1;white-space:nowrap}.co-ref-field__caret{flex-shrink:0;color:var(--co-semantic-text-muted);display:flex;align-items:center}.co-ref-field__trigger-badge{flex-shrink:0;display:grid;place-items:center;width:18px;height:18px;border-radius:var(--co-border-radius-xxs);background:var(--co-ref-field-trigger-badge-bg, rgba(0, 0, 0, 0.22));color:var(--co-semantic-text-default)}.co-ref-field__clear{flex-shrink:0;display:flex;align-items:center;padding:0;margin:0;border:none;background:transparent;cursor:pointer;color:var(--co-semantic-text-muted);transition:color var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-ref-field__clear:hover{color:var(--co-semantic-text-default)}.co-ref-field__edit{flex-shrink:0;display:flex;align-items:center;padding:0;margin:0;border:none;background:transparent;cursor:pointer;color:var(--co-semantic-text-muted);transition:color var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-ref-field__edit:hover{color:var(--co-semantic-text-default)}.co-ref-field__selected{display:flex;align-items:center;gap:var(--co-spacing-sm);min-width:0}.co-ref-field__color-dot{width:10px;height:10px;min-width:10px;border-radius:var(--co-border-radius-full);flex-shrink:0}.co-ref-field__avatar{flex-shrink:0}.co-ref-field__selected-label{color:var(--co-semantic-text-default);font-size:inherit;font-weight:400;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.co-ref-field__chips-row{flex:1;min-width:0;display:flex;align-items:center;gap:var(--co-spacing-xs)}.co-ref-field__chips{flex:1;min-width:0;display:flex;flex-wrap:nowrap;overflow:hidden;gap:var(--co-spacing-xs);align-items:center}.co-ref-field__chip{display:inline-flex;align-items:center;gap:var(--co-spacing-sm);padding:0 var(--co-spacing-sm2);background:var(--co-color-gray-100);border-radius:var(--co-border-radius-full);line-height:1;max-width:min(160px, 100%);flex-shrink:0}.co-ref-field__chip--avatar{padding-left:var(--co-spacing-xxs)}.co-ref-field__chip--s{min-height:20px;--co-avatar-size:20px;font-size:var(--co-font-size-12)}.co-ref-field__chip--sm{min-height:22px;--co-avatar-size:22px;font-size:var(--co-font-size-12)}.co-ref-field__chip--md{min-height:22px;--co-avatar-size:22px;font-size:var(--co-font-size-14)}.co-ref-field__chip--lg{min-height:28px;--co-avatar-size:28px;font-size:var(--co-font-size-14)}.co-ref-field__chip--clipped{visibility:hidden}.co-ref-field__chip-dot{width:8px;height:8px;min-width:8px;border-radius:var(--co-border-radius-full);flex-shrink:0}.co-ref-field__chip--fill{color:var(--co-color-base-blanco);border-radius:var(--co-spacing-sm)}.co-ref-field__chip--fill-light{color:var(--co-color-base-negro)}.co-ref-field__chip--fill .co-ref-field__chip-label,.co-ref-field__chip--fill .co-ref-field__chip-remove{color:inherit}.co-ref-field__chip--fill .co-ref-field__chip-remove{opacity:0.72}.co-ref-field__chip--fill .co-ref-field__chip-remove:hover{color:inherit;opacity:1}.co-ref-field__chip-label{color:var(--co-semantic-text-default);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.co-ref-field__chip-remove{display:flex;align-items:center;padding:0;margin:0;border:none;background:transparent;cursor:pointer;color:var(--co-color-gray-500);transition:color var(--co-motion-duration-fast) var(--co-motion-ease-out);flex-shrink:0}.co-ref-field__chip-remove:hover{color:var(--co-semantic-text-default)}.co-ref-field__chip-overflow{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;padding:var(--co-spacing-xs) var(--co-spacing-sm);background:var(--co-color-opacity-negro-8);border-radius:var(--co-border-radius-full);font-size:var(--co-font-size-12);font-weight:600;color:var(--co-semantic-text-secondary);line-height:1}.co-ref-field__panel{display:flex;flex-direction:column;border-radius:var(--co-border-radius-sm, 12px);overflow:hidden}.co-ref-field__panel--dark{--co-semantic-surface-page:#0A0A0A;--co-semantic-surface-primary:#0A0A0A;--co-semantic-surface-hover:rgba(255, 255, 255, 0.08);--co-semantic-surface-muted:rgba(255, 255, 255, 0.12);--co-semantic-text-default:#ffffff;--co-semantic-text-secondary:rgba(255, 255, 255, 0.8);--co-semantic-text-muted:rgba(255, 255, 255, 0.5);--co-semantic-border-subtle:rgba(255, 255, 255, 0.12);--co-semantic-border-default:rgba(255, 255, 255, 0.16);background:#0A0A0A;color:#ffffff}.co-ref-field__panel--light{--co-semantic-surface-page:#ffffff;--co-semantic-surface-primary:#ffffff;--co-semantic-surface-hover:var(--co-color-gray-100, #f5f5f5);--co-semantic-surface-muted:var(--co-color-gray-200, #e5e5e5);--co-semantic-text-default:var(--co-color-gray-700, #1F1C1B);--co-semantic-text-secondary:rgba(0, 0, 0, 0.6);--co-semantic-text-muted:rgba(0, 0, 0, 0.45);--co-semantic-border-subtle:var(--co-color-gray-200, #e5e5e5);--co-semantic-border-default:var(--co-color-gray-300, #d4d4d4);background:#ffffff;color:var(--co-color-gray-700, #1F1C1B)}.co-ref-field__footer{display:flex;gap:var(--co-spacing-sm2);border-top:1px solid var(--co-semantic-border-subtle);padding:var(--co-spacing-sm2)}.co-ref-field__footer-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:var(--co-spacing-sm);padding:var(--co-spacing-sm2) var(--co-spacing-md);border-radius:var(--co-border-radius-xs);font-family:var(--co-font-family-primary);font-size:var(--co-font-size-12, 12px);font-weight:500;line-height:1;letter-spacing:var(--co-font-letter-spacing-body);white-space:nowrap;cursor:pointer;transition:opacity var(--co-motion-duration-fast) var(--co-motion-ease-out);box-sizing:border-box;min-height:32px}.co-ref-field__footer-btn:hover{opacity:0.85}.co-ref-field__footer-btn--secondary{background:transparent;color:var(--co-semantic-text-default);border:1px solid var(--co-semantic-border-default)}.co-ref-field__footer-btn--primary{background:var(--co-semantic-surface-primary);color:var(--co-semantic-on-primary);border:none}.co-ref-field__helper{display:flex;align-items:center;gap:var(--co-spacing-xs);padding:0 var(--co-spacing-xs);font-size:var(--co-font-size-14);font-weight:400;color:var(--co-semantic-text-muted)}.co-ref-field__helper--error{color:var(--co-semantic-status-error)}.co-ref-field__helper--success{color:var(--co-semantic-status-success)}.co-ref-field__helper--warning{color:var(--co-color-status-review)}:host([layout='horizontal']) .co-ref-field{display:grid;grid-template-columns:var(--co-field-label-width, max-content) 1fr;align-items:start;column-gap:var(--co-spacing-md);row-gap:var(--co-spacing-sm2)}:host([layout='horizontal']) .co-ref-field__labels{grid-column:1;grid-row:1;padding-top:var(--co-spacing-sm2);min-width:0}:host([layout='horizontal']) .co-ref-field__label{white-space:normal}:host([layout='horizontal']) .co-ref-field>:not(.co-ref-field__labels){grid-column:2;min-width:0}.co-field-required{margin-left:2px;color:var(--co-color-status-error)}.co-field-required__caption{margin-left:4px;color:var(--co-semantic-text-muted);font-size:var(--co-font-size-12);font-weight:400}.co-field-required__caption::before{content:var(--co-field-required-text, ' (required)')}"}},[257,"co-ref-field",{label:[1],required:[4],secondaryLabel:[1,"secondary-label"],labelIcon:[513,"label-icon"],placeholder:[1],disabled:[4],clearable:[4],editable:[4],editLabel:[1,"edit-label"],multiple:[4],status:[1],helperText:[1,"helper-text"],iconLeft:[1,"icon-left"],layout:[513],size:[513],variant:[513],value:[1025],options:[1],selectedDisplay:[1,"selected-display"],loading:[4],total:[2],searchable:[4],searchPlaceholder:[1,"search-placeholder"],searchDebounce:[2,"search-debounce"],emptyMessage:[1,"empty-message"],showFooter:[4,"show-footer"],footerPrimaryLabel:[1,"footer-primary-label"],footerSecondaryLabel:[1,"footer-secondary-label"],maxChips:[2,"max-chips"],panelTheme:[1,"panel-theme"],colorMode:[1,"color-mode"],triggerBadgeIcon:[1,"trigger-badge-icon"],triggerBadgeLabel:[1,"trigger-badge-label"],inheritedLabel:[1,"inherited-label"],inheritedBadgeLabel:[1,"inherited-badge-label"],panelWidth:[1,"panel-width"],avatarShape:[1,"avatar-shape"],pinnable:[4],listReorderable:[4,"list-reorderable"],inheritedTruncated:[32],isOpen:[32],overflowCount:[32],selectOption:[64],closePanel:[64],openPanel:[64]},void 0,{isOpen:[{onOpenChange:0}],inheritedLabel:[{onInheritedLabelChange:0}]}]);function m(){"undefined"!=typeof customElements&&["co-ref-field","co-avatar","co-icon","co-loader","co-option-list","co-popover","co-tooltip"].forEach((e=>{switch(e){case"co-ref-field":customElements.get(r(e))||customElements.define(r(e),g);break;case"co-avatar":customElements.get(r(e))||l();break;case"co-icon":customElements.get(r(e))||n();break;case"co-loader":customElements.get(r(e))||d();break;case"co-option-list":customElements.get(r(e))||f();break;case"co-popover":customElements.get(r(e))||h();break;case"co-tooltip":customElements.get(r(e))||p()}}))}g.LIST_ID="co-ref-field-list",m();const b=g,v=m;export{b as CoRefField,v as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{p as e,H as o,c as r,h as t,t as s}from"./index.js";import{R as a}from"./p-CWneqh4n.js";import{O as i}from"./p-ox7HzCZn.js";import{r as l,h as c}from"./p-Ba_v-MzM.js";import{d as n}from"./p-DNJAIVfI.js";import{d}from"./p-CT2enQ6h.js";import{d as h}from"./p-DRP8D9ro.js";const p=e(class e extends o{constructor(o){super(),!1!==o&&this.__registerHost(),this.__attachShadow(),this.coChange=r(this,"coChange",7),this.coClear=r(this,"coClear",7),this.coFooterPrimary=r(this,"coFooterPrimary",7),this.required=!1,this.placeholder="Select…",this.disabled=!1,this.clearable=!1,this.layout="vertical",this.status="default",this.options="[]",this.value="",this.multiple=!1,this.size="md",this.variant="default",this.searchable=!1,this.searchPlaceholder="Search…",this.emptyText="No results",this.showFooter=!1,this.footerPrimaryLabel="Ok",this.isOpen=!1,this.scrollTop=0,this.searchText="",this.sortSnapshot=new Set,this.activeIndex=-1,this.pendingActiveScroll=!1,this.activeScrollFrames=0,this.lastParsedOptions=[],this.lastRankSearch="",this.lastRanked=[],this.handleSearchInput=e=>{this.searchText=e.target.value,this.scrollTop=0,this.activeIndex=this.filteredOptions.length?0:-1},this.handleTriggerClick=e=>{this.disabled&&e.stopPropagation()},this.handleTriggerKeyDown=e=>{this.disabled||e.target===this.triggerEl&&(this.handleNavKeyDown(e)||("Enter"===e.key||" "===e.key?(e.preventDefault(),this.isOpen?this.isOpen=!1:this.openPanel()):"ArrowDown"!==e.key||this.isOpen||(e.preventDefault(),this.openPanel())))},this.handleNavKeyDown=e=>{if(this.disabled||!this.isOpen)return!1;const o=this.filteredOptions.length,r=o-1,t=this.activeIndex>=0?this.activeIndex:-1;switch(e.key){case"ArrowDown":o&&this.setActiveIndex(t>=r?0:t+1);break;case"ArrowUp":o&&this.setActiveIndex(t<=0?r:t-1);break;case"Home":o&&this.setActiveIndex(0);break;case"End":o&&this.setActiveIndex(r);break;case" ":if(e.target===this.searchInputEl)return!1;this.activateActiveOption();break;case"Enter":this.activateActiveOption();break;default:return!1}return e.preventDefault(),!0},this.flushActiveScroll=()=>{var o,r,t,s,a;if(!this.pendingActiveScroll)return;if(!this.isOpen)return void(this.pendingActiveScroll=!1);const i=this.scrollTop||0,l=null!==(r=null===(o=this.osInstance)||void 0===o?void 0:o.elements().viewport)&&void 0!==r?r:this.optionsContainerEl;return l&&(l.scrollTop=i,Math.abs(l.scrollTop-i)<=1)?(this.pendingActiveScroll=!1,this.activeScrollFrames=0,void(null===(a=null===(s=null===(t=this.el.shadowRoot)||void 0===t?void 0:t.getElementById(this.optionId(this.activeIndex)))||void 0===s?void 0:s.scrollIntoView)||void 0===a||a.call(s,{block:"nearest"}))):++this.activeScrollFrames>e.ACTIVE_SCROLL_MAX_FRAMES?(this.pendingActiveScroll=!1,void(this.activeScrollFrames=0)):void requestAnimationFrame(this.flushActiveScroll)},this.handlePopoverOpen=()=>{this.isOpen||(this.sortSnapshot=new Set(this.selectedValues),this.isOpen=!0)},this.handlePopoverClose=()=>{this.isOpen=!1},this.handleClear=e=>{e.stopPropagation(),this.value=this.multiple?"[]":"",this.coClear.emit(),this.coChange.emit(this.multiple?[]:"")},this.handleFooterPrimary=()=>{this.coFooterPrimary.emit(),this.isOpen=!1},this.handleOptionClick=e=>{if(this.multiple){const o=[...this.selectedValues],r=o.indexOf(e);r>=0?o.splice(r,1):o.push(e),this.value=JSON.stringify(o),this.coChange.emit(o)}else this.value=e,this.isOpen=!1,this.coChange.emit(e)}}get parsedOptions(){const e=this.options;if(e===this.lastOptionsRaw)return this.lastParsedOptions;let o=e;if("string"==typeof o)try{o=JSON.parse(o)}catch(e){o=[]}const r=Array.isArray(o)?o.map((e=>"string"==typeof e?{label:e,value:e}:e)):[];return this.lastOptionsRaw=e,this.lastParsedOptions=r,r}get filteredOptions(){const e=this.parsedOptions;let o;return this.searchable&&this.searchText.trim()?e===this.lastRankInput&&this.searchText===this.lastRankSearch?o=this.lastRanked:(o=l(e,this.searchText,(e=>e.label)),this.lastRankInput=e,this.lastRankSearch=this.searchText,this.lastRanked=o):o=e,this.multiple&&0!==this.sortSnapshot.size?[...o.filter((e=>this.sortSnapshot.has(e.value))),...o.filter((e=>!this.sortSnapshot.has(e.value)))]:o}get selectedValues(){if(this.multiple){if("string"==typeof this.value)try{return JSON.parse(this.value)}catch(e){return this.value?[this.value]:[]}return this.value}return"string"==typeof this.value&&this.value?[this.value]:[]}get hasValue(){return this.selectedValues.length>0}get selectedOption(){if(this.multiple)return;const e=this.selectedValues[0];return e?this.parsedOptions.find((o=>o.value===e)):void 0}get displayText(){const e=this.selectedValues;if(0===e.length)return"";if(!this.multiple){const o=this.parsedOptions.find((o=>o.value===e[0]));return o?o.label:e[0]}return e.map((e=>{const o=this.parsedOptions.find((o=>o.value===e));return o?o.label:e})).join(", ")}get statusIcon(){return{error:"warning-circle",success:"check-circle",warning:"warning",info:"info"}[this.status]||null}optionId(e){return"co-select-option-"+e}resetActiveIndex(){const e=this.filteredOptions;if(0===e.length)return void(this.activeIndex=-1);const o=this.selectedValues,r=o.length?e.findIndex((e=>o.includes(e.value))):-1;this.activeIndex=r>=0?r:0,this.scrollActiveIntoView()}onOpenChange(e){e?(this.scrollTop=0,this.resetActiveIndex(),this.searchable&&this.focusSearchWhenVisible()):(this.searchText="",this.activeIndex=-1,this.restoreTriggerFocus())}openPanel(){this.sortSnapshot=new Set(this.selectedValues),this.isOpen=!0}setActiveIndex(e){this.activeIndex=e,this.scrollActiveIntoView()}activateActiveOption(){const e=this.filteredOptions[this.activeIndex];e&&!e.disabled&&this.handleOptionClick(e.value)}scrollActiveIntoView(){const{ITEM_HEIGHT:o,VIEWPORT_ITEMS:r}=e,t=this.activeIndex;if(!(t>=0))return;const s=t*o,a=o*r,i=this.scrollTop||0;s<i?this.scrollTop=s:s+o>i+a&&(this.scrollTop=s+o-a),this.pendingActiveScroll=!0,this.activeScrollFrames=0}focusSearchWhenVisible(e=0){var o,r;this.isOpen&&this.searchable&&(null===(o=this.searchInputEl)||void 0===o||o.focus(),this.searchInputEl&&(null===(r=this.el.shadowRoot)||void 0===r?void 0:r.activeElement)===this.searchInputEl||e>=20||requestAnimationFrame((()=>this.focusSearchWhenVisible(e+1))))}restoreTriggerFocus(){var e;const o=document.activeElement;(o===this.el||this.el.contains(o))&&(null===(e=this.triggerEl)||void 0===e||e.focus())}syncOverlayScrollbars(){const e=this.isOpen&&!!this.optionsContainerEl;e&&!this.osInstance?this.osInstance=i(this.optionsContainerEl,{scrollbars:{theme:"os-theme-co",autoHide:"leave",autoHideDelay:300}},{scroll:e=>{this.scrollTop=e.elements().viewport.scrollTop}}):!e&&this.osInstance&&(this.osInstance.destroy(),this.osInstance=void 0)}componentDidRender(){this.syncOverlayScrollbars(),this.flushActiveScroll()}componentWillLoad(){this.searchText=this.searchText||""}disconnectedCallback(){var e;null===(e=this.osInstance)||void 0===e||e.destroy(),this.osInstance=void 0,this.pendingActiveScroll=!1,this.activeScrollFrames=0}renderLabel(e){const o=this.searchable&&this.searchText?c(e,this.searchText):null;return o?o.map((e=>e.match?t("span",{class:"co-select__match"},e.text):e.text)):e}getVirtualSlice(o){const{ITEM_HEIGHT:r,VIEWPORT_ITEMS:t,OVERSCAN:s}=e,a=o.length,i=a*r,l=Math.max(0,Math.floor(this.scrollTop/r)-s);return{totalHeight:i,startIdx:l,endIdx:Math.min(a,l+t+2*s),offsetY:l*r}}render(){var o;const r=this.selectedValues,s=this.filteredOptions,i=this.isOpen&&this.activeIndex>=0&&this.activeIndex<s.length?this.optionId(this.activeIndex):void 0;return t("div",{key:"902da0519e9fe96401f5339a3b46a66c94efd3de",class:{"co-select":!0,"co-select--open":this.isOpen,"co-select--disabled":this.disabled,["co-select--"+this.size]:!0,["co-select--"+this.status]:"default"!==this.status,"co-select--flat":"flat"===this.variant}},(this.label||this.secondaryLabel)&&t("div",{key:"3faf027e94d30728d7715ebca758eb0d9cb41bc9",class:"co-select__labels"},this.label&&t("label",{key:"a7267986158eae66be547356482df079e3670d44",class:"co-select__label"},this.label,t(a,{key:"5eaca0cfade91041b33edd07e648b1e22cb875f3",required:this.required})),this.secondaryLabel&&t("span",{key:"3561fb5297dde4c128e9c888cdd00546c5e1b4c3",class:"co-select__secondary-label"},this.secondaryLabel)),t("co-popover",{key:"63fc16eefafcb8ef870aba457be9e00f5dce6f32",open:this.isOpen,placement:"bottom-start",matchWidth:!0,offset:4,onCoOpen:this.handlePopoverOpen,onCoClose:this.handlePopoverClose},t("div",{key:"6056ec2a5d85df9d8361f4b78f12eec6e2fe7749",slot:"trigger",class:"co-select__trigger",role:"combobox","aria-expanded":this.isOpen?"true":"false","aria-haspopup":"listbox","aria-label":this.label||this.ariaLabelText||void 0,"aria-disabled":this.disabled?"true":void 0,"aria-controls":e.LISTBOX_ID,"aria-activedescendant":i,tabIndex:this.disabled?-1:0,ref:e=>this.triggerEl=e,onClick:this.handleTriggerClick,onKeyDown:this.handleTriggerKeyDown},this.iconLeft&&t("co-icon",{key:"8877e366eba45e073a3481e7b86408763e103f6c",name:this.iconLeft,size:16,class:"co-select__icon"}),(null===(o=this.selectedOption)||void 0===o?void 0:o.image)&&t("img",{key:"4f964e48dafff76a9fe04ed381b1f11113e351d6",class:"co-select__flag",src:this.selectedOption.image,alt:""}),this.multiple&&this.hasValue?t("div",{class:"co-select__chips"},this.selectedValues.map((e=>{const o=this.parsedOptions.find((o=>o.value===e));return t("span",{class:"co-select__chip",key:e},t("span",{class:"co-select__chip-label"},o?o.label:e),t("button",{class:"co-select__chip-remove",type:"button",tabIndex:-1,"aria-label":"Remove",onClick:o=>{o.stopPropagation(),this.handleOptionClick(e)}},t("co-icon",{name:"x",size:12})))}))):t("span",{class:{"co-select__text":!0,"co-select__text--placeholder":!this.hasValue}},this.hasValue?this.displayText:this.placeholder),this.clearable&&this.hasValue&&!this.disabled&&t("button",{key:"55a94e3d877ec0c50ae4ce544774c6e4330b5f5e",class:"co-select__clear",type:"button",tabIndex:-1,onClick:this.handleClear,"aria-label":"Clear"},t("co-icon",{key:"b452121827aa8b2f341396b3376e82728bee5276",name:"x-circle",size:16,weight:"fill"})),t("co-icon",{key:"0ebc5a451bcb3f2f95a63ab600157e27cb445a9b",name:this.isOpen?"caret-up":"caret-down",size:16,class:"co-select__caret"})),t("div",{key:"92b18226a02de73cbd245ab6827c3f5593aa08fc",class:"co-select__dropdown"},this.isOpen&&this.searchable&&t("div",{key:"68aec7a4ced328a00a1185078edbbfe4820d6582",class:"co-select__search"},t("co-icon",{key:"1aa322cf22d4824bf6d2012b6dfc4e856360502a",name:"magnifying-glass",size:16,class:"co-select__search-icon"}),t("input",{key:"62ec52d3369334f83709bc5219d5b3ca040c3ccb",class:"co-select__search-input",type:"text",placeholder:this.searchPlaceholder,value:this.searchText,"aria-controls":e.LISTBOX_ID,"aria-activedescendant":i,onInput:this.handleSearchInput,onKeyDown:this.handleNavKeyDown,ref:e=>this.searchInputEl=e})),this.isOpen&&this.searchable&&0===s.length&&t("div",{key:"86613208aa94d79b6aa503a6ed53c010cc1ba1f9",class:"co-select__empty"},this.emptyText),t("div",{key:"a6b1f09abfbfb0171094079c3da7ac89764eb00f",class:"co-select__options",id:e.LISTBOX_ID,role:"listbox","aria-multiselectable":this.multiple?"true":void 0,ref:e=>this.optionsContainerEl=e},this.isOpen&&(()=>{const{totalHeight:e,startIdx:o,endIdx:a,offsetY:i}=this.getVirtualSlice(s);return t("div",{role:"presentation",class:"co-select__virtual-spacer",style:{height:e+"px",position:"relative"}},t("div",{role:"presentation",style:{position:"absolute",top:i+"px",left:"0",right:"0"}},s.slice(o,a).map(((e,a)=>{const i=o+a,l=r.includes(e.value),c=!!e.disabled;return t("div",{id:this.optionId(i),role:"option","aria-selected":l?"true":"false","aria-disabled":c?"true":void 0,"aria-setsize":s.length,"aria-posinset":i+1,class:{"co-select__option":!0,"co-select__option--selected":l,"co-select__option--disabled":c,"co-select__option--active":i===this.activeIndex},onClick:()=>!c&&this.handleOptionClick(e.value)},e.image?t("img",{class:"co-select__option-flag",src:e.image,alt:"",loading:"lazy"}):e.icon?t("co-icon",{name:e.icon,size:20,class:"co-select__option-icon"}):null,t("span",{class:"co-select__option-label"},this.renderLabel(e.label)),l&&t("co-icon",{name:"check",size:16,class:"co-select__option-check"}))}))))})()),this.isOpen&&this.showFooter&&t("co-list-footer",{key:"5f5d60d846092aed435e292a4652ad7016cb6aee",class:"co-select__footer",primaryLabel:this.footerPrimaryLabel,primaryIcon:"check",onCoPrimary:this.handleFooterPrimary}))),this.helperText&&t("div",{key:"72ebb3366ee45eaccce69f534611804f8f1dbc1c",class:"co-select__helper co-select__helper--"+this.status},this.statusIcon&&t("co-icon",{key:"2f2ad274cf521c3bd9f21d66d0fa9b7c87f7ba71",name:this.statusIcon,size:14,class:"co-select__helper-icon"}),t("span",{key:"3e1ef4abb47a61d173e1942f5798caff97c2347e",class:"co-select__helper-text"},this.helperText)))}get el(){return this}static get watchers(){return{isOpen:[{onOpenChange:0}]}}static get style(){return'.os-size-observer,.os-size-observer-listener{scroll-behavior:auto !important;direction:inherit;pointer-events:none;overflow:hidden;visibility:hidden;box-sizing:border-box}.os-size-observer,.os-size-observer-listener,.os-size-observer-listener-item,.os-size-observer-listener-item-final{writing-mode:horizontal-tb;position:absolute;left:0;top:0}.os-size-observer{z-index:-1;contain:strict;display:flex;flex-direction:row;flex-wrap:nowrap;padding:inherit;border:inherit;box-sizing:inherit;margin:-133px;top:0;right:0;bottom:0;left:0;transform:scale(0.1)}.os-size-observer::before{content:"";flex:none;box-sizing:inherit;padding:10px;width:10px;height:10px}.os-size-observer-appear{animation:os-size-observer-appear-animation 1ms forwards}.os-size-observer-listener{box-sizing:border-box;position:relative;flex:auto;padding:inherit;border:inherit;margin:-133px;transform:scale(calc(1 / 0.1))}.os-size-observer-listener.ltr{margin-right:-266px;margin-left:0}.os-size-observer-listener.rtl{margin-left:-266px;margin-right:0}.os-size-observer-listener:empty::before{content:"";width:100%;height:100%}.os-size-observer-listener:empty::before,.os-size-observer-listener>.os-size-observer-listener-item{display:block;position:relative;padding:inherit;border:inherit;box-sizing:content-box;flex:auto}.os-size-observer-listener-scroll{box-sizing:border-box;display:flex}.os-size-observer-listener-item{right:0;bottom:0;overflow:hidden;direction:ltr;flex:none}.os-size-observer-listener-item-final{transition:none}@keyframes os-size-observer-appear-animation{from{cursor:auto}to{cursor:none}}.os-trinsic-observer{flex:none;box-sizing:border-box;position:relative;max-width:0px;max-height:1px;padding:0;margin:0;border:none;overflow:hidden;z-index:-1;height:0;top:calc(100% + 1px);contain:strict}.os-trinsic-observer:not(:empty){height:calc(100% + 1px);top:-1px}.os-trinsic-observer:not(:empty)>.os-size-observer{width:1000%;height:1000%;min-height:1px;min-width:1px}html[data-overlayscrollbars-body]{overflow:hidden}html[data-overlayscrollbars-body],html[data-overlayscrollbars-body]>body{width:100%;height:100%;margin:0}html[data-overlayscrollbars-body]>body{overflow:visible;margin:0}[data-overlayscrollbars]{position:relative}[data-overlayscrollbars~=host],[data-overlayscrollbars-padding]{display:flex;align-items:stretch !important;flex-direction:row !important;flex-wrap:nowrap !important;scroll-behavior:auto !important}[data-overlayscrollbars-padding],[data-overlayscrollbars-viewport]:not([data-overlayscrollbars]){box-sizing:inherit;position:relative;flex:auto;height:auto;width:100%;min-width:0;padding:0;margin:0;border:none;z-index:0}[data-overlayscrollbars-viewport]:not([data-overlayscrollbars]){--os-vaw:0;--os-vah:0;outline:none}[data-overlayscrollbars-viewport]:not([data-overlayscrollbars]):focus{outline:none}[data-overlayscrollbars-viewport][data-overlayscrollbars-viewport~=arrange]::before{content:"";position:absolute;pointer-events:none;z-index:-1;min-width:1px;min-height:1px;width:var(--os-vaw);height:var(--os-vah)}[data-overlayscrollbars~=host],[data-overlayscrollbars-padding]{overflow:hidden !important}[data-overlayscrollbars~=host][data-overlayscrollbars~=noClipping],[data-overlayscrollbars-padding~=noClipping]{overflow:visible !important}[data-overlayscrollbars-viewport]{--os-viewport-overflow-x:hidden;--os-viewport-overflow-y:hidden;overflow-x:var(--os-viewport-overflow-x);overflow-y:var(--os-viewport-overflow-y)}[data-overlayscrollbars-viewport~=overflowXVisible]{--os-viewport-overflow-x:visible}[data-overlayscrollbars-viewport~=overflowXHidden]{--os-viewport-overflow-x:hidden}[data-overlayscrollbars-viewport~=overflowXScroll]{--os-viewport-overflow-x:scroll}[data-overlayscrollbars-viewport~=overflowYVisible]{--os-viewport-overflow-y:visible}[data-overlayscrollbars-viewport~=overflowYHidden]{--os-viewport-overflow-y:hidden}[data-overlayscrollbars-viewport~=overflowYScroll]{--os-viewport-overflow-y:scroll}[data-overlayscrollbars-viewport~=overflowImportant]{overflow-x:var(--os-viewport-overflow-x) !important;overflow-y:var(--os-viewport-overflow-y) !important}[data-overlayscrollbars-viewport~=noContent]:not(#osFakeId){font-size:0 !important;line-height:0 !important}[data-overlayscrollbars-viewport~=noContent]:not(#osFakeId)::before,[data-overlayscrollbars-viewport~=noContent]:not(#osFakeId)::after,[data-overlayscrollbars-viewport~=noContent]:not(#osFakeId)>*:not(#osFakeId){display:none !important;position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border-width:0 !important}[data-overlayscrollbars-viewport~=measuring],[data-overlayscrollbars-viewport~=scrolling]{scroll-behavior:auto !important;scroll-snap-type:none !important}[data-overlayscrollbars-viewport~=measuring][data-overlayscrollbars-viewport~=overflowXVisible]{overflow-x:hidden !important}[data-overlayscrollbars-viewport~=measuring][data-overlayscrollbars-viewport~=overflowYVisible]{overflow-y:hidden !important}[data-overlayscrollbars-content]{box-sizing:inherit}[data-overlayscrollbars-contents]:not(#osFakeId):not([data-overlayscrollbars-padding]):not([data-overlayscrollbars-viewport]):not([data-overlayscrollbars-content]){display:contents}[data-overlayscrollbars-grid],[data-overlayscrollbars-grid] [data-overlayscrollbars-padding]{display:grid;grid-template:1fr/1fr}[data-overlayscrollbars-grid]>[data-overlayscrollbars-padding],[data-overlayscrollbars-grid]>[data-overlayscrollbars-viewport],[data-overlayscrollbars-grid]>[data-overlayscrollbars-padding]>[data-overlayscrollbars-viewport]{height:auto !important;width:auto !important}@property --os-scroll-percent{syntax:"<number>";inherits:true;initial-value:0}@property --os-viewport-percent{syntax:"<number>";inherits:true;initial-value:0}.os-scrollbar{--os-viewport-percent:0;--os-scroll-percent:0;--os-scroll-direction:0;--os-scroll-percent-directional:calc( var(--os-scroll-percent) - (var(--os-scroll-percent) + (1 - var(--os-scroll-percent)) * -1) * var(--os-scroll-direction) )}.os-scrollbar{contain:size layout;contain:size layout style;transition:opacity 0.15s, visibility 0.15s, top 0.15s, right 0.15s, bottom 0.15s, left 0.15s;pointer-events:none;position:absolute;opacity:0;visibility:hidden}body>.os-scrollbar{position:fixed;z-index:99999}.os-scrollbar-transitionless{transition:none !important}.os-scrollbar-track{position:relative;padding:0 !important;border:none !important}.os-scrollbar-handle{position:absolute}.os-scrollbar-track,.os-scrollbar-handle{pointer-events:none;width:100%;height:100%}.os-scrollbar.os-scrollbar-track-interactive .os-scrollbar-track,.os-scrollbar.os-scrollbar-handle-interactive .os-scrollbar-handle{pointer-events:auto;touch-action:none}.os-scrollbar-horizontal{bottom:0;left:0}.os-scrollbar-vertical{top:0;right:0}.os-scrollbar-rtl.os-scrollbar-horizontal{right:0}.os-scrollbar-rtl.os-scrollbar-vertical{right:auto;left:0}.os-scrollbar-visible{opacity:1;visibility:visible}.os-scrollbar-auto-hide.os-scrollbar-auto-hide-hidden{opacity:0;visibility:hidden}.os-scrollbar-interaction.os-scrollbar-visible{opacity:1;visibility:visible}.os-scrollbar-unusable,.os-scrollbar-unusable *,.os-scrollbar-wheel,.os-scrollbar-wheel *{pointer-events:none !important}.os-scrollbar-unusable .os-scrollbar-handle{opacity:0 !important;transition:none !important}.os-scrollbar-horizontal .os-scrollbar-handle{bottom:0;left:calc(var(--os-scroll-percent-directional) * 100%);transform:translateX(calc(var(--os-scroll-percent-directional) * -100%));width:calc(var(--os-viewport-percent) * 100%)}.os-scrollbar-vertical .os-scrollbar-handle{right:0;top:calc(var(--os-scroll-percent-directional) * 100%);transform:translateY(calc(var(--os-scroll-percent-directional) * -100%));height:calc(var(--os-viewport-percent) * 100%)}@supports (container-type: size){.os-scrollbar-track{container-type:size}.os-scrollbar-horizontal .os-scrollbar-handle{left:auto;transform:translateX(calc(var(--os-scroll-percent-directional) * 100cqw + var(--os-scroll-percent-directional) * -100%))}.os-scrollbar-vertical .os-scrollbar-handle{top:auto;transform:translateY(calc(var(--os-scroll-percent-directional) * 100cqh + var(--os-scroll-percent-directional) * -100%))}.os-scrollbar-rtl.os-scrollbar-horizontal .os-scrollbar-handle{right:auto;left:0}}.os-scrollbar-rtl.os-scrollbar-vertical .os-scrollbar-handle{right:auto;left:0}.os-scrollbar.os-scrollbar-horizontal.os-scrollbar-cornerless,.os-scrollbar.os-scrollbar-horizontal.os-scrollbar-cornerless.os-scrollbar-rtl{left:0;right:0}.os-scrollbar.os-scrollbar-vertical.os-scrollbar-cornerless,.os-scrollbar.os-scrollbar-vertical.os-scrollbar-cornerless.os-scrollbar-rtl{top:0;bottom:0}@media print{.os-scrollbar{display:none}}.os-scrollbar{--os-size:0;--os-padding-perpendicular:0;--os-padding-axis:0;--os-track-border-radius:0;--os-track-bg:none;--os-track-bg-hover:none;--os-track-bg-active:none;--os-track-border:none;--os-track-border-hover:none;--os-track-border-active:none;--os-handle-border-radius:0;--os-handle-bg:none;--os-handle-bg-hover:none;--os-handle-bg-active:none;--os-handle-border:none;--os-handle-border-hover:none;--os-handle-border-active:none;--os-handle-min-size:33px;--os-handle-max-size:none;--os-handle-perpendicular-size:100%;--os-handle-perpendicular-size-hover:100%;--os-handle-perpendicular-size-active:100%;--os-handle-interactive-area-offset:0}.os-scrollbar-track{border:var(--os-track-border);border-radius:var(--os-track-border-radius);background:var(--os-track-bg);transition:opacity 0.15s, background-color 0.15s, border-color 0.15s}.os-scrollbar-track:hover{border:var(--os-track-border-hover);background:var(--os-track-bg-hover)}.os-scrollbar-track:active{border:var(--os-track-border-active);background:var(--os-track-bg-active)}.os-scrollbar-handle{border:var(--os-handle-border);border-radius:var(--os-handle-border-radius);background:var(--os-handle-bg)}.os-scrollbar-handle:hover{border:var(--os-handle-border-hover);background:var(--os-handle-bg-hover)}.os-scrollbar-handle:active{border:var(--os-handle-border-active);background:var(--os-handle-bg-active)}.os-scrollbar-track:before,.os-scrollbar-handle:before{content:"";position:absolute;left:0;right:0;top:0;bottom:0;display:block}.os-scrollbar-horizontal{padding:var(--os-padding-perpendicular) var(--os-padding-axis);right:var(--os-size);height:var(--os-size)}.os-scrollbar-horizontal.os-scrollbar-rtl{left:var(--os-size);right:0}.os-scrollbar-horizontal .os-scrollbar-track:before{top:calc(var(--os-padding-perpendicular) * -1);bottom:calc(var(--os-padding-perpendicular) * -1)}.os-scrollbar-horizontal .os-scrollbar-handle{min-width:var(--os-handle-min-size);max-width:var(--os-handle-max-size);height:var(--os-handle-perpendicular-size);transition:opacity 0.15s, background-color 0.15s, border-color 0.15s, height 0.15s}.os-scrollbar-horizontal .os-scrollbar-handle:before{top:calc((var(--os-padding-perpendicular) + var(--os-handle-interactive-area-offset)) * -1);bottom:calc(var(--os-padding-perpendicular) * -1)}.os-scrollbar-horizontal:hover .os-scrollbar-handle{height:var(--os-handle-perpendicular-size-hover)}.os-scrollbar-horizontal:active .os-scrollbar-handle{height:var(--os-handle-perpendicular-size-active)}.os-scrollbar-vertical{padding:var(--os-padding-axis) var(--os-padding-perpendicular);bottom:var(--os-size);width:var(--os-size)}.os-scrollbar-vertical .os-scrollbar-track:before{left:calc(var(--os-padding-perpendicular) * -1);right:calc(var(--os-padding-perpendicular) * -1)}.os-scrollbar-vertical .os-scrollbar-handle{min-height:var(--os-handle-min-size);max-height:var(--os-handle-max-size);width:var(--os-handle-perpendicular-size);transition:opacity 0.15s, background-color 0.15s, border-color 0.15s, width 0.15s}.os-scrollbar-vertical .os-scrollbar-handle:before{left:calc((var(--os-padding-perpendicular) + var(--os-handle-interactive-area-offset)) * -1);right:calc(var(--os-padding-perpendicular) * -1)}.os-scrollbar-vertical.os-scrollbar-rtl .os-scrollbar-handle:before{right:calc((var(--os-padding-perpendicular) + var(--os-handle-interactive-area-offset)) * -1);left:calc(var(--os-padding-perpendicular) * -1)}.os-scrollbar-vertical:hover .os-scrollbar-handle{width:var(--os-handle-perpendicular-size-hover)}.os-scrollbar-vertical:active .os-scrollbar-handle{width:var(--os-handle-perpendicular-size-active)}[data-overlayscrollbars-viewport~=measuring]>.os-scrollbar,.os-theme-none.os-scrollbar{display:none !important}.os-theme-dark,.os-theme-light{box-sizing:border-box;--os-size:10px;--os-padding-perpendicular:2px;--os-padding-axis:2px;--os-track-border-radius:10px;--os-handle-interactive-area-offset:4px;--os-handle-border-radius:10px}.os-theme-dark{--os-handle-bg:rgba(0, 0, 0, 0.44);--os-handle-bg-hover:rgba(0, 0, 0, 0.55);--os-handle-bg-active:rgba(0, 0, 0, 0.66)}.os-theme-light{--os-handle-bg:rgba(255, 255, 255, 0.44);--os-handle-bg-hover:rgba(255, 255, 255, 0.55);--os-handle-bg-active:rgba(255, 255, 255, 0.66)}[data-overlayscrollbars-initialize]:not([data-overlayscrollbars-viewport]),[data-overlayscrollbars-viewport~=scrollbarHidden],html[data-overlayscrollbars-viewport~=scrollbarHidden]>body{scrollbar-width:none !important}[data-overlayscrollbars-initialize]:not([data-overlayscrollbars-viewport])::-webkit-scrollbar,[data-overlayscrollbars-initialize]:not([data-overlayscrollbars-viewport])::-webkit-scrollbar-corner,[data-overlayscrollbars-viewport~=scrollbarHidden]::-webkit-scrollbar,[data-overlayscrollbars-viewport~=scrollbarHidden]::-webkit-scrollbar-corner,html[data-overlayscrollbars-viewport~=scrollbarHidden]>body::-webkit-scrollbar,html[data-overlayscrollbars-viewport~=scrollbarHidden]>body::-webkit-scrollbar-corner{-webkit-appearance:none !important;appearance:none !important;display:none !important;width:0 !important;height:0 !important}[data-overlayscrollbars-initialize]:not([data-overlayscrollbars]):not(html):not(body){overflow:auto}:host{display:block;font-family:var(--co-font-family-primary);font-size:var(--co-font-size-14);letter-spacing:var(--co-font-letter-spacing-body);line-height:1;position:relative}.co-select{display:flex;flex-direction:column;gap:var(--co-spacing-sm2);position:relative}.co-select__labels{display:flex;align-items:center;justify-content:space-between;padding:0 var(--co-spacing-xs);gap:var(--co-spacing-sm2)}.co-select__label{color:var(--co-semantic-text-secondary);font-size:var(--co-font-size-14);font-weight:400;line-height:1;white-space:nowrap;cursor:default}.co-select__secondary-label{color:var(--co-semantic-text-muted);font-size:var(--co-font-size-14);font-weight:400;line-height:1;white-space:nowrap;text-align:right}.co-select--disabled .co-select__label,.co-select--disabled .co-select__secondary-label{color:var(--co-semantic-text-disabled)}.co-select__trigger{display:flex;align-items:center;gap:var(--co-spacing-sm2);padding:var(--co-spacing-sm2) var(--co-spacing-md);background:var(--co-semantic-surface-page);border:1px solid var(--co-semantic-border-field);border-radius:var(--co-border-radius-xs);min-height:40px;box-sizing:border-box;cursor:pointer;transition:border-color var(--co-motion-duration-fast) var(--co-motion-ease-out), box-shadow var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-select--flat .co-select__trigger{background:transparent;border-color:transparent}.co-select__chips{flex:1;min-width:0;display:flex;flex-wrap:wrap;align-items:center;gap:var(--co-spacing-xs);padding:var(--co-spacing-xxs) 0}.co-select__chip{display:inline-flex;align-items:center;gap:var(--co-spacing-xs);padding:var(--co-spacing-xxs) var(--co-spacing-sm2);background:var(--co-color-gray-100);border-radius:var(--co-border-radius-full);font-size:var(--co-font-size-14);line-height:1;max-width:200px}.co-select__chip-label{color:var(--co-semantic-text-default);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.co-select__chip-remove{display:flex;align-items:center;padding:0;margin:0;border:none;background:transparent;cursor:pointer;color:var(--co-color-gray-500);transition:color var(--co-motion-duration-fast) var(--co-motion-ease-out);flex-shrink:0}.co-select__chip-remove:hover{color:var(--co-semantic-text-default)}.co-select--s .co-select__trigger{min-height:28px;padding:var(--co-spacing-xxs) var(--co-spacing-sm);font-size:var(--co-font-size-12)}.co-select--sm .co-select__trigger{min-height:32px;padding:var(--co-spacing-xs) var(--co-spacing-sm);font-size:var(--co-font-size-14)}.co-select--lg .co-select__trigger{min-height:48px;padding:var(--co-spacing-sm) var(--co-spacing-lg);font-size:var(--co-font-size-16)}.co-select--open .co-select__trigger{border-color:var(--co-semantic-border-focus);box-shadow:0 0 0 2px var(--co-semantic-border-focus-ring)}.co-select__trigger:focus-visible{outline:none;border-color:var(--co-semantic-border-focus);box-shadow:0 0 0 2px var(--co-semantic-border-focus-ring)}.co-select--disabled .co-select__trigger{background:var(--co-semantic-surface-disabled);border-color:transparent;box-shadow:none;cursor:not-allowed}.co-select--error .co-select__trigger{border-color:var(--co-semantic-status-error)}.co-select--success .co-select__trigger{border-color:var(--co-semantic-status-success)}.co-select--warning .co-select__trigger{border-color:var(--co-color-status-review)}.co-select--info .co-select__trigger{border-color:var(--co-semantic-status-info)}.co-select__flag,.co-select__option-flag{flex-shrink:0;width:20px;height:15px;object-fit:cover;border-radius:2px;box-shadow:0 0 0 1px var(--co-semantic-border-subtle)}.co-select__icon{flex-shrink:0;color:var(--co-semantic-text-muted);display:flex;align-items:center}.co-select__text{flex:1;min-width:0;color:var(--co-semantic-text-default);font-size:inherit;font-weight:400;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.co-select__text--placeholder{color:var(--co-semantic-text-muted)}.co-select--disabled .co-select__text{color:var(--co-semantic-text-disabled)}.co-select__clear{flex-shrink:0;display:flex;align-items:center;padding:0;margin:0;border:none;background:transparent;cursor:pointer;color:var(--co-semantic-text-muted);transition:color var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-select__clear:hover{color:var(--co-semantic-text-default)}.co-select__caret{flex-shrink:0;color:var(--co-semantic-text-muted);display:flex;align-items:center}.co-select__dropdown{padding:var(--co-spacing-sm2)}.co-select__search{display:flex;align-items:center;gap:var(--co-spacing-xs);padding:var(--co-spacing-xs) var(--co-spacing-sm2);margin-bottom:var(--co-spacing-sm2);border:1px solid var(--co-semantic-border-subtle);border-radius:var(--co-border-radius-xs);height:32px;box-sizing:border-box;color:var(--co-semantic-text-muted)}.co-select__search-input{flex:1;min-width:0;border:none;outline:none;background:transparent;font-family:inherit;font-size:var(--co-font-size-14, 14px);line-height:1;color:var(--co-semantic-text-default);padding:0;margin:0}.co-select__search-input::placeholder{color:var(--co-semantic-text-muted)}.co-select__match{font-weight:700;color:var(--co-semantic-text-default)}.co-select__empty{padding:var(--co-spacing-md);text-align:center;color:var(--co-semantic-text-muted);font-size:var(--co-font-size-14, 14px)}.co-select__options{max-height:calc(34px * 8);overflow-y:auto}.os-scrollbar.os-theme-co{--os-size:10px;--os-padding-perpendicular:2px;--os-padding-axis:2px;--os-track-bg:transparent;--os-handle-border-radius:var(--co-border-radius-full);--os-handle-bg:var(--co-color-opacity-negro-16);--os-handle-bg-hover:var(--co-color-opacity-negro-25);--os-handle-bg-active:var(--co-color-opacity-negro-50);--os-handle-min-size:24px}.co-select__option{display:flex;align-items:center;gap:var(--co-spacing-sm2);padding:var(--co-spacing-sm2) var(--co-spacing-md);border-radius:var(--co-border-radius-xs);cursor:pointer;transition:background var(--co-motion-duration-fast) var(--co-motion-ease-out);min-height:32px;box-sizing:border-box}.co-select__option:hover{background:var(--co-semantic-surface-hover)}.co-select__option--selected{background:var(--co-semantic-surface-muted)}.co-select__option--active{background:var(--co-semantic-surface-hover)}.co-select__option--disabled{opacity:0.4;cursor:not-allowed;pointer-events:none}.co-select__option-icon{flex-shrink:0;color:var(--co-semantic-text-muted)}.co-select__option-label{flex:1;color:var(--co-semantic-text-default);font-size:var(--co-font-size-14);font-weight:400;line-height:1}.co-select__option-check{flex-shrink:0;color:var(--co-semantic-text-default)}.co-select__helper{display:flex;align-items:center;gap:var(--co-spacing-xs);padding:0 var(--co-spacing-xs)}.co-select__helper-icon{flex-shrink:0;display:flex;align-items:center}.co-select__helper-text{color:var(--co-semantic-text-muted);font-size:var(--co-font-size-14);font-weight:400;line-height:1}.co-select__helper--error .co-select__helper-icon,.co-select__helper--error .co-select__helper-text{color:var(--co-semantic-status-error)}.co-select__helper--success .co-select__helper-icon,.co-select__helper--success .co-select__helper-text{color:var(--co-semantic-status-success)}.co-select__helper--warning .co-select__helper-icon,.co-select__helper--warning .co-select__helper-text{color:var(--co-color-status-review)}.co-select__helper--info .co-select__helper-icon,.co-select__helper--info .co-select__helper-text{color:var(--co-semantic-status-info)}:host([layout=\'horizontal\']) .co-select{display:grid;grid-template-columns:var(--co-field-label-width, max-content) 1fr;align-items:start;column-gap:var(--co-spacing-md);row-gap:var(--co-spacing-sm2)}:host([layout=\'horizontal\']) .co-select__labels{grid-column:1;grid-row:1;padding-top:var(--co-spacing-sm2);min-width:0}:host([layout=\'horizontal\']) .co-select__label{white-space:normal}:host([layout=\'horizontal\']) .co-select>:not(.co-select__labels){grid-column:2;min-width:0}.co-field-required{margin-left:2px;color:var(--co-color-status-error)}.co-field-required__caption{margin-left:4px;color:var(--co-semantic-text-muted);font-size:var(--co-font-size-12);font-weight:400}.co-field-required__caption::before{content:var(--co-field-required-text, \' (required)\')}'}},[1,"co-select",{label:[1],ariaLabelText:[1,"aria-label-text"],required:[4],secondaryLabel:[1,"secondary-label"],placeholder:[1],disabled:[4],iconLeft:[1,"icon-left"],clearable:[4],helperText:[1,"helper-text"],layout:[513],status:[1],options:[1],value:[1025],multiple:[4],size:[513],variant:[513],searchable:[516],searchPlaceholder:[1,"search-placeholder"],emptyText:[1,"empty-text"],showFooter:[4,"show-footer"],footerPrimaryLabel:[1,"footer-primary-label"],isOpen:[32],scrollTop:[32],searchText:[32],sortSnapshot:[32],activeIndex:[32]},void 0,{isOpen:[{onOpenChange:0}]}]);function b(){"undefined"!=typeof customElements&&["co-select","co-icon","co-list-footer","co-popover"].forEach((e=>{switch(e){case"co-select":customElements.get(s(e))||customElements.define(s(e),p);break;case"co-icon":customElements.get(s(e))||n();break;case"co-list-footer":customElements.get(s(e))||d();break;case"co-popover":customElements.get(s(e))||h()}}))}p.ITEM_HEIGHT=34,p.VIEWPORT_ITEMS=8,p.OVERSCAN=3,p.LISTBOX_ID="co-select-listbox",p.ACTIVE_SCROLL_MAX_FRAMES=48,b();const v=p,g=b;export{v as CoSelect,g as defineCustomElement}
|
|
1
|
+
import{p as e,H as o,c as r,h as t,t as s}from"./index.js";import{R as a}from"./p-CWneqh4n.js";import{O as i}from"./p-ox7HzCZn.js";import{r as l,h as c}from"./p-Ba_v-MzM.js";import{d as n}from"./p-DNJAIVfI.js";import{d}from"./p-CT2enQ6h.js";import{d as h}from"./p-D9T7zKeL.js";const p=e(class e extends o{constructor(o){super(),!1!==o&&this.__registerHost(),this.__attachShadow(),this.coChange=r(this,"coChange",7),this.coClear=r(this,"coClear",7),this.coFooterPrimary=r(this,"coFooterPrimary",7),this.required=!1,this.placeholder="Select…",this.disabled=!1,this.clearable=!1,this.layout="vertical",this.status="default",this.options="[]",this.value="",this.multiple=!1,this.size="md",this.variant="default",this.searchable=!1,this.searchPlaceholder="Search…",this.emptyText="No results",this.showFooter=!1,this.footerPrimaryLabel="Ok",this.isOpen=!1,this.scrollTop=0,this.searchText="",this.sortSnapshot=new Set,this.activeIndex=-1,this.pendingActiveScroll=!1,this.activeScrollFrames=0,this.lastParsedOptions=[],this.lastRankSearch="",this.lastRanked=[],this.handleSearchInput=e=>{this.searchText=e.target.value,this.scrollTop=0,this.activeIndex=this.filteredOptions.length?0:-1},this.handleTriggerClick=e=>{this.disabled&&e.stopPropagation()},this.handleTriggerKeyDown=e=>{this.disabled||e.target===this.triggerEl&&(this.handleNavKeyDown(e)||("Enter"===e.key||" "===e.key?(e.preventDefault(),this.isOpen?this.isOpen=!1:this.openPanel()):"ArrowDown"!==e.key||this.isOpen||(e.preventDefault(),this.openPanel())))},this.handleNavKeyDown=e=>{if(this.disabled||!this.isOpen)return!1;const o=this.filteredOptions.length,r=o-1,t=this.activeIndex>=0?this.activeIndex:-1;switch(e.key){case"ArrowDown":o&&this.setActiveIndex(t>=r?0:t+1);break;case"ArrowUp":o&&this.setActiveIndex(t<=0?r:t-1);break;case"Home":o&&this.setActiveIndex(0);break;case"End":o&&this.setActiveIndex(r);break;case" ":if(e.target===this.searchInputEl)return!1;this.activateActiveOption();break;case"Enter":this.activateActiveOption();break;default:return!1}return e.preventDefault(),!0},this.flushActiveScroll=()=>{var o,r,t,s,a;if(!this.pendingActiveScroll)return;if(!this.isOpen)return void(this.pendingActiveScroll=!1);const i=this.scrollTop||0,l=null!==(r=null===(o=this.osInstance)||void 0===o?void 0:o.elements().viewport)&&void 0!==r?r:this.optionsContainerEl;return l&&(l.scrollTop=i,Math.abs(l.scrollTop-i)<=1)?(this.pendingActiveScroll=!1,this.activeScrollFrames=0,void(null===(a=null===(s=null===(t=this.el.shadowRoot)||void 0===t?void 0:t.getElementById(this.optionId(this.activeIndex)))||void 0===s?void 0:s.scrollIntoView)||void 0===a||a.call(s,{block:"nearest"}))):++this.activeScrollFrames>e.ACTIVE_SCROLL_MAX_FRAMES?(this.pendingActiveScroll=!1,void(this.activeScrollFrames=0)):void requestAnimationFrame(this.flushActiveScroll)},this.handlePopoverOpen=()=>{this.isOpen||(this.sortSnapshot=new Set(this.selectedValues),this.isOpen=!0)},this.handlePopoverClose=()=>{this.isOpen=!1},this.handleClear=e=>{e.stopPropagation(),this.value=this.multiple?"[]":"",this.coClear.emit(),this.coChange.emit(this.multiple?[]:"")},this.handleFooterPrimary=()=>{this.coFooterPrimary.emit(),this.isOpen=!1},this.handleOptionClick=e=>{if(this.multiple){const o=[...this.selectedValues],r=o.indexOf(e);r>=0?o.splice(r,1):o.push(e),this.value=JSON.stringify(o),this.coChange.emit(o)}else this.value=e,this.isOpen=!1,this.coChange.emit(e)}}get parsedOptions(){const e=this.options;if(e===this.lastOptionsRaw)return this.lastParsedOptions;let o=e;if("string"==typeof o)try{o=JSON.parse(o)}catch(e){o=[]}const r=Array.isArray(o)?o.map((e=>"string"==typeof e?{label:e,value:e}:e)):[];return this.lastOptionsRaw=e,this.lastParsedOptions=r,r}get filteredOptions(){const e=this.parsedOptions;let o;return this.searchable&&this.searchText.trim()?e===this.lastRankInput&&this.searchText===this.lastRankSearch?o=this.lastRanked:(o=l(e,this.searchText,(e=>e.label)),this.lastRankInput=e,this.lastRankSearch=this.searchText,this.lastRanked=o):o=e,this.multiple&&0!==this.sortSnapshot.size?[...o.filter((e=>this.sortSnapshot.has(e.value))),...o.filter((e=>!this.sortSnapshot.has(e.value)))]:o}get selectedValues(){if(this.multiple){if("string"==typeof this.value)try{return JSON.parse(this.value)}catch(e){return this.value?[this.value]:[]}return this.value}return"string"==typeof this.value&&this.value?[this.value]:[]}get hasValue(){return this.selectedValues.length>0}get selectedOption(){if(this.multiple)return;const e=this.selectedValues[0];return e?this.parsedOptions.find((o=>o.value===e)):void 0}get displayText(){const e=this.selectedValues;if(0===e.length)return"";if(!this.multiple){const o=this.parsedOptions.find((o=>o.value===e[0]));return o?o.label:e[0]}return e.map((e=>{const o=this.parsedOptions.find((o=>o.value===e));return o?o.label:e})).join(", ")}get statusIcon(){return{error:"warning-circle",success:"check-circle",warning:"warning",info:"info"}[this.status]||null}optionId(e){return"co-select-option-"+e}resetActiveIndex(){const e=this.filteredOptions;if(0===e.length)return void(this.activeIndex=-1);const o=this.selectedValues,r=o.length?e.findIndex((e=>o.includes(e.value))):-1;this.activeIndex=r>=0?r:0,this.scrollActiveIntoView()}onOpenChange(e){e?(this.scrollTop=0,this.resetActiveIndex(),this.searchable&&this.focusSearchWhenVisible()):(this.searchText="",this.activeIndex=-1,this.restoreTriggerFocus())}openPanel(){this.sortSnapshot=new Set(this.selectedValues),this.isOpen=!0}setActiveIndex(e){this.activeIndex=e,this.scrollActiveIntoView()}activateActiveOption(){const e=this.filteredOptions[this.activeIndex];e&&!e.disabled&&this.handleOptionClick(e.value)}scrollActiveIntoView(){const{ITEM_HEIGHT:o,VIEWPORT_ITEMS:r}=e,t=this.activeIndex;if(!(t>=0))return;const s=t*o,a=o*r,i=this.scrollTop||0;s<i?this.scrollTop=s:s+o>i+a&&(this.scrollTop=s+o-a),this.pendingActiveScroll=!0,this.activeScrollFrames=0}focusSearchWhenVisible(e=0){var o,r;this.isOpen&&this.searchable&&(null===(o=this.searchInputEl)||void 0===o||o.focus(),this.searchInputEl&&(null===(r=this.el.shadowRoot)||void 0===r?void 0:r.activeElement)===this.searchInputEl||e>=20||requestAnimationFrame((()=>this.focusSearchWhenVisible(e+1))))}restoreTriggerFocus(){var e;const o=document.activeElement;(o===this.el||this.el.contains(o))&&(null===(e=this.triggerEl)||void 0===e||e.focus())}syncOverlayScrollbars(){const e=this.isOpen&&!!this.optionsContainerEl;e&&!this.osInstance?this.osInstance=i(this.optionsContainerEl,{scrollbars:{theme:"os-theme-co",autoHide:"leave",autoHideDelay:300}},{scroll:e=>{this.scrollTop=e.elements().viewport.scrollTop}}):!e&&this.osInstance&&(this.osInstance.destroy(),this.osInstance=void 0)}componentDidRender(){this.syncOverlayScrollbars(),this.flushActiveScroll()}componentWillLoad(){this.searchText=this.searchText||""}disconnectedCallback(){var e;null===(e=this.osInstance)||void 0===e||e.destroy(),this.osInstance=void 0,this.pendingActiveScroll=!1,this.activeScrollFrames=0}renderLabel(e){const o=this.searchable&&this.searchText?c(e,this.searchText):null;return o?o.map((e=>e.match?t("span",{class:"co-select__match"},e.text):e.text)):e}getVirtualSlice(o){const{ITEM_HEIGHT:r,VIEWPORT_ITEMS:t,OVERSCAN:s}=e,a=o.length,i=a*r,l=Math.max(0,Math.floor(this.scrollTop/r)-s);return{totalHeight:i,startIdx:l,endIdx:Math.min(a,l+t+2*s),offsetY:l*r}}render(){var o;const r=this.selectedValues,s=this.filteredOptions,i=this.isOpen&&this.activeIndex>=0&&this.activeIndex<s.length?this.optionId(this.activeIndex):void 0;return t("div",{key:"902da0519e9fe96401f5339a3b46a66c94efd3de",class:{"co-select":!0,"co-select--open":this.isOpen,"co-select--disabled":this.disabled,["co-select--"+this.size]:!0,["co-select--"+this.status]:"default"!==this.status,"co-select--flat":"flat"===this.variant}},(this.label||this.secondaryLabel)&&t("div",{key:"3faf027e94d30728d7715ebca758eb0d9cb41bc9",class:"co-select__labels"},this.label&&t("label",{key:"a7267986158eae66be547356482df079e3670d44",class:"co-select__label"},this.label,t(a,{key:"5eaca0cfade91041b33edd07e648b1e22cb875f3",required:this.required})),this.secondaryLabel&&t("span",{key:"3561fb5297dde4c128e9c888cdd00546c5e1b4c3",class:"co-select__secondary-label"},this.secondaryLabel)),t("co-popover",{key:"63fc16eefafcb8ef870aba457be9e00f5dce6f32",open:this.isOpen,placement:"bottom-start",matchWidth:!0,offset:4,onCoOpen:this.handlePopoverOpen,onCoClose:this.handlePopoverClose},t("div",{key:"6056ec2a5d85df9d8361f4b78f12eec6e2fe7749",slot:"trigger",class:"co-select__trigger",role:"combobox","aria-expanded":this.isOpen?"true":"false","aria-haspopup":"listbox","aria-label":this.label||this.ariaLabelText||void 0,"aria-disabled":this.disabled?"true":void 0,"aria-controls":e.LISTBOX_ID,"aria-activedescendant":i,tabIndex:this.disabled?-1:0,ref:e=>this.triggerEl=e,onClick:this.handleTriggerClick,onKeyDown:this.handleTriggerKeyDown},this.iconLeft&&t("co-icon",{key:"8877e366eba45e073a3481e7b86408763e103f6c",name:this.iconLeft,size:16,class:"co-select__icon"}),(null===(o=this.selectedOption)||void 0===o?void 0:o.image)&&t("img",{key:"4f964e48dafff76a9fe04ed381b1f11113e351d6",class:"co-select__flag",src:this.selectedOption.image,alt:""}),this.multiple&&this.hasValue?t("div",{class:"co-select__chips"},this.selectedValues.map((e=>{const o=this.parsedOptions.find((o=>o.value===e));return t("span",{class:"co-select__chip",key:e},t("span",{class:"co-select__chip-label"},o?o.label:e),t("button",{class:"co-select__chip-remove",type:"button",tabIndex:-1,"aria-label":"Remove",onClick:o=>{o.stopPropagation(),this.handleOptionClick(e)}},t("co-icon",{name:"x",size:12})))}))):t("span",{class:{"co-select__text":!0,"co-select__text--placeholder":!this.hasValue}},this.hasValue?this.displayText:this.placeholder),this.clearable&&this.hasValue&&!this.disabled&&t("button",{key:"55a94e3d877ec0c50ae4ce544774c6e4330b5f5e",class:"co-select__clear",type:"button",tabIndex:-1,onClick:this.handleClear,"aria-label":"Clear"},t("co-icon",{key:"b452121827aa8b2f341396b3376e82728bee5276",name:"x-circle",size:16,weight:"fill"})),t("co-icon",{key:"0ebc5a451bcb3f2f95a63ab600157e27cb445a9b",name:this.isOpen?"caret-up":"caret-down",size:16,class:"co-select__caret"})),t("div",{key:"92b18226a02de73cbd245ab6827c3f5593aa08fc",class:"co-select__dropdown"},this.isOpen&&this.searchable&&t("div",{key:"68aec7a4ced328a00a1185078edbbfe4820d6582",class:"co-select__search"},t("co-icon",{key:"1aa322cf22d4824bf6d2012b6dfc4e856360502a",name:"magnifying-glass",size:16,class:"co-select__search-icon"}),t("input",{key:"62ec52d3369334f83709bc5219d5b3ca040c3ccb",class:"co-select__search-input",type:"text",placeholder:this.searchPlaceholder,value:this.searchText,"aria-controls":e.LISTBOX_ID,"aria-activedescendant":i,onInput:this.handleSearchInput,onKeyDown:this.handleNavKeyDown,ref:e=>this.searchInputEl=e})),this.isOpen&&this.searchable&&0===s.length&&t("div",{key:"86613208aa94d79b6aa503a6ed53c010cc1ba1f9",class:"co-select__empty"},this.emptyText),t("div",{key:"a6b1f09abfbfb0171094079c3da7ac89764eb00f",class:"co-select__options",id:e.LISTBOX_ID,role:"listbox","aria-multiselectable":this.multiple?"true":void 0,ref:e=>this.optionsContainerEl=e},this.isOpen&&(()=>{const{totalHeight:e,startIdx:o,endIdx:a,offsetY:i}=this.getVirtualSlice(s);return t("div",{role:"presentation",class:"co-select__virtual-spacer",style:{height:e+"px",position:"relative"}},t("div",{role:"presentation",style:{position:"absolute",top:i+"px",left:"0",right:"0"}},s.slice(o,a).map(((e,a)=>{const i=o+a,l=r.includes(e.value),c=!!e.disabled;return t("div",{id:this.optionId(i),role:"option","aria-selected":l?"true":"false","aria-disabled":c?"true":void 0,"aria-setsize":s.length,"aria-posinset":i+1,class:{"co-select__option":!0,"co-select__option--selected":l,"co-select__option--disabled":c,"co-select__option--active":i===this.activeIndex},onClick:()=>!c&&this.handleOptionClick(e.value)},e.image?t("img",{class:"co-select__option-flag",src:e.image,alt:"",loading:"lazy"}):e.icon?t("co-icon",{name:e.icon,size:20,class:"co-select__option-icon"}):null,t("span",{class:"co-select__option-label"},this.renderLabel(e.label)),l&&t("co-icon",{name:"check",size:16,class:"co-select__option-check"}))}))))})()),this.isOpen&&this.showFooter&&t("co-list-footer",{key:"5f5d60d846092aed435e292a4652ad7016cb6aee",class:"co-select__footer",primaryLabel:this.footerPrimaryLabel,primaryIcon:"check",onCoPrimary:this.handleFooterPrimary}))),this.helperText&&t("div",{key:"72ebb3366ee45eaccce69f534611804f8f1dbc1c",class:"co-select__helper co-select__helper--"+this.status},this.statusIcon&&t("co-icon",{key:"2f2ad274cf521c3bd9f21d66d0fa9b7c87f7ba71",name:this.statusIcon,size:14,class:"co-select__helper-icon"}),t("span",{key:"3e1ef4abb47a61d173e1942f5798caff97c2347e",class:"co-select__helper-text"},this.helperText)))}get el(){return this}static get watchers(){return{isOpen:[{onOpenChange:0}]}}static get style(){return'.os-size-observer,.os-size-observer-listener{scroll-behavior:auto !important;direction:inherit;pointer-events:none;overflow:hidden;visibility:hidden;box-sizing:border-box}.os-size-observer,.os-size-observer-listener,.os-size-observer-listener-item,.os-size-observer-listener-item-final{writing-mode:horizontal-tb;position:absolute;left:0;top:0}.os-size-observer{z-index:-1;contain:strict;display:flex;flex-direction:row;flex-wrap:nowrap;padding:inherit;border:inherit;box-sizing:inherit;margin:-133px;top:0;right:0;bottom:0;left:0;transform:scale(0.1)}.os-size-observer::before{content:"";flex:none;box-sizing:inherit;padding:10px;width:10px;height:10px}.os-size-observer-appear{animation:os-size-observer-appear-animation 1ms forwards}.os-size-observer-listener{box-sizing:border-box;position:relative;flex:auto;padding:inherit;border:inherit;margin:-133px;transform:scale(calc(1 / 0.1))}.os-size-observer-listener.ltr{margin-right:-266px;margin-left:0}.os-size-observer-listener.rtl{margin-left:-266px;margin-right:0}.os-size-observer-listener:empty::before{content:"";width:100%;height:100%}.os-size-observer-listener:empty::before,.os-size-observer-listener>.os-size-observer-listener-item{display:block;position:relative;padding:inherit;border:inherit;box-sizing:content-box;flex:auto}.os-size-observer-listener-scroll{box-sizing:border-box;display:flex}.os-size-observer-listener-item{right:0;bottom:0;overflow:hidden;direction:ltr;flex:none}.os-size-observer-listener-item-final{transition:none}@keyframes os-size-observer-appear-animation{from{cursor:auto}to{cursor:none}}.os-trinsic-observer{flex:none;box-sizing:border-box;position:relative;max-width:0px;max-height:1px;padding:0;margin:0;border:none;overflow:hidden;z-index:-1;height:0;top:calc(100% + 1px);contain:strict}.os-trinsic-observer:not(:empty){height:calc(100% + 1px);top:-1px}.os-trinsic-observer:not(:empty)>.os-size-observer{width:1000%;height:1000%;min-height:1px;min-width:1px}html[data-overlayscrollbars-body]{overflow:hidden}html[data-overlayscrollbars-body],html[data-overlayscrollbars-body]>body{width:100%;height:100%;margin:0}html[data-overlayscrollbars-body]>body{overflow:visible;margin:0}[data-overlayscrollbars]{position:relative}[data-overlayscrollbars~=host],[data-overlayscrollbars-padding]{display:flex;align-items:stretch !important;flex-direction:row !important;flex-wrap:nowrap !important;scroll-behavior:auto !important}[data-overlayscrollbars-padding],[data-overlayscrollbars-viewport]:not([data-overlayscrollbars]){box-sizing:inherit;position:relative;flex:auto;height:auto;width:100%;min-width:0;padding:0;margin:0;border:none;z-index:0}[data-overlayscrollbars-viewport]:not([data-overlayscrollbars]){--os-vaw:0;--os-vah:0;outline:none}[data-overlayscrollbars-viewport]:not([data-overlayscrollbars]):focus{outline:none}[data-overlayscrollbars-viewport][data-overlayscrollbars-viewport~=arrange]::before{content:"";position:absolute;pointer-events:none;z-index:-1;min-width:1px;min-height:1px;width:var(--os-vaw);height:var(--os-vah)}[data-overlayscrollbars~=host],[data-overlayscrollbars-padding]{overflow:hidden !important}[data-overlayscrollbars~=host][data-overlayscrollbars~=noClipping],[data-overlayscrollbars-padding~=noClipping]{overflow:visible !important}[data-overlayscrollbars-viewport]{--os-viewport-overflow-x:hidden;--os-viewport-overflow-y:hidden;overflow-x:var(--os-viewport-overflow-x);overflow-y:var(--os-viewport-overflow-y)}[data-overlayscrollbars-viewport~=overflowXVisible]{--os-viewport-overflow-x:visible}[data-overlayscrollbars-viewport~=overflowXHidden]{--os-viewport-overflow-x:hidden}[data-overlayscrollbars-viewport~=overflowXScroll]{--os-viewport-overflow-x:scroll}[data-overlayscrollbars-viewport~=overflowYVisible]{--os-viewport-overflow-y:visible}[data-overlayscrollbars-viewport~=overflowYHidden]{--os-viewport-overflow-y:hidden}[data-overlayscrollbars-viewport~=overflowYScroll]{--os-viewport-overflow-y:scroll}[data-overlayscrollbars-viewport~=overflowImportant]{overflow-x:var(--os-viewport-overflow-x) !important;overflow-y:var(--os-viewport-overflow-y) !important}[data-overlayscrollbars-viewport~=noContent]:not(#osFakeId){font-size:0 !important;line-height:0 !important}[data-overlayscrollbars-viewport~=noContent]:not(#osFakeId)::before,[data-overlayscrollbars-viewport~=noContent]:not(#osFakeId)::after,[data-overlayscrollbars-viewport~=noContent]:not(#osFakeId)>*:not(#osFakeId){display:none !important;position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border-width:0 !important}[data-overlayscrollbars-viewport~=measuring],[data-overlayscrollbars-viewport~=scrolling]{scroll-behavior:auto !important;scroll-snap-type:none !important}[data-overlayscrollbars-viewport~=measuring][data-overlayscrollbars-viewport~=overflowXVisible]{overflow-x:hidden !important}[data-overlayscrollbars-viewport~=measuring][data-overlayscrollbars-viewport~=overflowYVisible]{overflow-y:hidden !important}[data-overlayscrollbars-content]{box-sizing:inherit}[data-overlayscrollbars-contents]:not(#osFakeId):not([data-overlayscrollbars-padding]):not([data-overlayscrollbars-viewport]):not([data-overlayscrollbars-content]){display:contents}[data-overlayscrollbars-grid],[data-overlayscrollbars-grid] [data-overlayscrollbars-padding]{display:grid;grid-template:1fr/1fr}[data-overlayscrollbars-grid]>[data-overlayscrollbars-padding],[data-overlayscrollbars-grid]>[data-overlayscrollbars-viewport],[data-overlayscrollbars-grid]>[data-overlayscrollbars-padding]>[data-overlayscrollbars-viewport]{height:auto !important;width:auto !important}@property --os-scroll-percent{syntax:"<number>";inherits:true;initial-value:0}@property --os-viewport-percent{syntax:"<number>";inherits:true;initial-value:0}.os-scrollbar{--os-viewport-percent:0;--os-scroll-percent:0;--os-scroll-direction:0;--os-scroll-percent-directional:calc( var(--os-scroll-percent) - (var(--os-scroll-percent) + (1 - var(--os-scroll-percent)) * -1) * var(--os-scroll-direction) )}.os-scrollbar{contain:size layout;contain:size layout style;transition:opacity 0.15s, visibility 0.15s, top 0.15s, right 0.15s, bottom 0.15s, left 0.15s;pointer-events:none;position:absolute;opacity:0;visibility:hidden}body>.os-scrollbar{position:fixed;z-index:99999}.os-scrollbar-transitionless{transition:none !important}.os-scrollbar-track{position:relative;padding:0 !important;border:none !important}.os-scrollbar-handle{position:absolute}.os-scrollbar-track,.os-scrollbar-handle{pointer-events:none;width:100%;height:100%}.os-scrollbar.os-scrollbar-track-interactive .os-scrollbar-track,.os-scrollbar.os-scrollbar-handle-interactive .os-scrollbar-handle{pointer-events:auto;touch-action:none}.os-scrollbar-horizontal{bottom:0;left:0}.os-scrollbar-vertical{top:0;right:0}.os-scrollbar-rtl.os-scrollbar-horizontal{right:0}.os-scrollbar-rtl.os-scrollbar-vertical{right:auto;left:0}.os-scrollbar-visible{opacity:1;visibility:visible}.os-scrollbar-auto-hide.os-scrollbar-auto-hide-hidden{opacity:0;visibility:hidden}.os-scrollbar-interaction.os-scrollbar-visible{opacity:1;visibility:visible}.os-scrollbar-unusable,.os-scrollbar-unusable *,.os-scrollbar-wheel,.os-scrollbar-wheel *{pointer-events:none !important}.os-scrollbar-unusable .os-scrollbar-handle{opacity:0 !important;transition:none !important}.os-scrollbar-horizontal .os-scrollbar-handle{bottom:0;left:calc(var(--os-scroll-percent-directional) * 100%);transform:translateX(calc(var(--os-scroll-percent-directional) * -100%));width:calc(var(--os-viewport-percent) * 100%)}.os-scrollbar-vertical .os-scrollbar-handle{right:0;top:calc(var(--os-scroll-percent-directional) * 100%);transform:translateY(calc(var(--os-scroll-percent-directional) * -100%));height:calc(var(--os-viewport-percent) * 100%)}@supports (container-type: size){.os-scrollbar-track{container-type:size}.os-scrollbar-horizontal .os-scrollbar-handle{left:auto;transform:translateX(calc(var(--os-scroll-percent-directional) * 100cqw + var(--os-scroll-percent-directional) * -100%))}.os-scrollbar-vertical .os-scrollbar-handle{top:auto;transform:translateY(calc(var(--os-scroll-percent-directional) * 100cqh + var(--os-scroll-percent-directional) * -100%))}.os-scrollbar-rtl.os-scrollbar-horizontal .os-scrollbar-handle{right:auto;left:0}}.os-scrollbar-rtl.os-scrollbar-vertical .os-scrollbar-handle{right:auto;left:0}.os-scrollbar.os-scrollbar-horizontal.os-scrollbar-cornerless,.os-scrollbar.os-scrollbar-horizontal.os-scrollbar-cornerless.os-scrollbar-rtl{left:0;right:0}.os-scrollbar.os-scrollbar-vertical.os-scrollbar-cornerless,.os-scrollbar.os-scrollbar-vertical.os-scrollbar-cornerless.os-scrollbar-rtl{top:0;bottom:0}@media print{.os-scrollbar{display:none}}.os-scrollbar{--os-size:0;--os-padding-perpendicular:0;--os-padding-axis:0;--os-track-border-radius:0;--os-track-bg:none;--os-track-bg-hover:none;--os-track-bg-active:none;--os-track-border:none;--os-track-border-hover:none;--os-track-border-active:none;--os-handle-border-radius:0;--os-handle-bg:none;--os-handle-bg-hover:none;--os-handle-bg-active:none;--os-handle-border:none;--os-handle-border-hover:none;--os-handle-border-active:none;--os-handle-min-size:33px;--os-handle-max-size:none;--os-handle-perpendicular-size:100%;--os-handle-perpendicular-size-hover:100%;--os-handle-perpendicular-size-active:100%;--os-handle-interactive-area-offset:0}.os-scrollbar-track{border:var(--os-track-border);border-radius:var(--os-track-border-radius);background:var(--os-track-bg);transition:opacity 0.15s, background-color 0.15s, border-color 0.15s}.os-scrollbar-track:hover{border:var(--os-track-border-hover);background:var(--os-track-bg-hover)}.os-scrollbar-track:active{border:var(--os-track-border-active);background:var(--os-track-bg-active)}.os-scrollbar-handle{border:var(--os-handle-border);border-radius:var(--os-handle-border-radius);background:var(--os-handle-bg)}.os-scrollbar-handle:hover{border:var(--os-handle-border-hover);background:var(--os-handle-bg-hover)}.os-scrollbar-handle:active{border:var(--os-handle-border-active);background:var(--os-handle-bg-active)}.os-scrollbar-track:before,.os-scrollbar-handle:before{content:"";position:absolute;left:0;right:0;top:0;bottom:0;display:block}.os-scrollbar-horizontal{padding:var(--os-padding-perpendicular) var(--os-padding-axis);right:var(--os-size);height:var(--os-size)}.os-scrollbar-horizontal.os-scrollbar-rtl{left:var(--os-size);right:0}.os-scrollbar-horizontal .os-scrollbar-track:before{top:calc(var(--os-padding-perpendicular) * -1);bottom:calc(var(--os-padding-perpendicular) * -1)}.os-scrollbar-horizontal .os-scrollbar-handle{min-width:var(--os-handle-min-size);max-width:var(--os-handle-max-size);height:var(--os-handle-perpendicular-size);transition:opacity 0.15s, background-color 0.15s, border-color 0.15s, height 0.15s}.os-scrollbar-horizontal .os-scrollbar-handle:before{top:calc((var(--os-padding-perpendicular) + var(--os-handle-interactive-area-offset)) * -1);bottom:calc(var(--os-padding-perpendicular) * -1)}.os-scrollbar-horizontal:hover .os-scrollbar-handle{height:var(--os-handle-perpendicular-size-hover)}.os-scrollbar-horizontal:active .os-scrollbar-handle{height:var(--os-handle-perpendicular-size-active)}.os-scrollbar-vertical{padding:var(--os-padding-axis) var(--os-padding-perpendicular);bottom:var(--os-size);width:var(--os-size)}.os-scrollbar-vertical .os-scrollbar-track:before{left:calc(var(--os-padding-perpendicular) * -1);right:calc(var(--os-padding-perpendicular) * -1)}.os-scrollbar-vertical .os-scrollbar-handle{min-height:var(--os-handle-min-size);max-height:var(--os-handle-max-size);width:var(--os-handle-perpendicular-size);transition:opacity 0.15s, background-color 0.15s, border-color 0.15s, width 0.15s}.os-scrollbar-vertical .os-scrollbar-handle:before{left:calc((var(--os-padding-perpendicular) + var(--os-handle-interactive-area-offset)) * -1);right:calc(var(--os-padding-perpendicular) * -1)}.os-scrollbar-vertical.os-scrollbar-rtl .os-scrollbar-handle:before{right:calc((var(--os-padding-perpendicular) + var(--os-handle-interactive-area-offset)) * -1);left:calc(var(--os-padding-perpendicular) * -1)}.os-scrollbar-vertical:hover .os-scrollbar-handle{width:var(--os-handle-perpendicular-size-hover)}.os-scrollbar-vertical:active .os-scrollbar-handle{width:var(--os-handle-perpendicular-size-active)}[data-overlayscrollbars-viewport~=measuring]>.os-scrollbar,.os-theme-none.os-scrollbar{display:none !important}.os-theme-dark,.os-theme-light{box-sizing:border-box;--os-size:10px;--os-padding-perpendicular:2px;--os-padding-axis:2px;--os-track-border-radius:10px;--os-handle-interactive-area-offset:4px;--os-handle-border-radius:10px}.os-theme-dark{--os-handle-bg:rgba(0, 0, 0, 0.44);--os-handle-bg-hover:rgba(0, 0, 0, 0.55);--os-handle-bg-active:rgba(0, 0, 0, 0.66)}.os-theme-light{--os-handle-bg:rgba(255, 255, 255, 0.44);--os-handle-bg-hover:rgba(255, 255, 255, 0.55);--os-handle-bg-active:rgba(255, 255, 255, 0.66)}[data-overlayscrollbars-initialize]:not([data-overlayscrollbars-viewport]),[data-overlayscrollbars-viewport~=scrollbarHidden],html[data-overlayscrollbars-viewport~=scrollbarHidden]>body{scrollbar-width:none !important}[data-overlayscrollbars-initialize]:not([data-overlayscrollbars-viewport])::-webkit-scrollbar,[data-overlayscrollbars-initialize]:not([data-overlayscrollbars-viewport])::-webkit-scrollbar-corner,[data-overlayscrollbars-viewport~=scrollbarHidden]::-webkit-scrollbar,[data-overlayscrollbars-viewport~=scrollbarHidden]::-webkit-scrollbar-corner,html[data-overlayscrollbars-viewport~=scrollbarHidden]>body::-webkit-scrollbar,html[data-overlayscrollbars-viewport~=scrollbarHidden]>body::-webkit-scrollbar-corner{-webkit-appearance:none !important;appearance:none !important;display:none !important;width:0 !important;height:0 !important}[data-overlayscrollbars-initialize]:not([data-overlayscrollbars]):not(html):not(body){overflow:auto}:host{display:block;font-family:var(--co-font-family-primary);font-size:var(--co-font-size-14);letter-spacing:var(--co-font-letter-spacing-body);line-height:1;position:relative}.co-select{display:flex;flex-direction:column;gap:var(--co-spacing-sm2);position:relative}.co-select__labels{display:flex;align-items:center;justify-content:space-between;padding:0 var(--co-spacing-xs);gap:var(--co-spacing-sm2)}.co-select__label{color:var(--co-semantic-text-secondary);font-size:var(--co-font-size-14);font-weight:400;line-height:1;white-space:nowrap;cursor:default}.co-select__secondary-label{color:var(--co-semantic-text-muted);font-size:var(--co-font-size-14);font-weight:400;line-height:1;white-space:nowrap;text-align:right}.co-select--disabled .co-select__label,.co-select--disabled .co-select__secondary-label{color:var(--co-semantic-text-disabled)}.co-select__trigger{display:flex;align-items:center;gap:var(--co-spacing-sm2);padding:var(--co-spacing-sm2) var(--co-spacing-md);background:var(--co-semantic-surface-page);border:1px solid var(--co-semantic-border-field);border-radius:var(--co-border-radius-xs);min-height:40px;box-sizing:border-box;cursor:pointer;transition:border-color var(--co-motion-duration-fast) var(--co-motion-ease-out), box-shadow var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-select--flat .co-select__trigger{background:transparent;border-color:transparent}.co-select__chips{flex:1;min-width:0;display:flex;flex-wrap:wrap;align-items:center;gap:var(--co-spacing-xs);padding:var(--co-spacing-xxs) 0}.co-select__chip{display:inline-flex;align-items:center;gap:var(--co-spacing-xs);padding:var(--co-spacing-xxs) var(--co-spacing-sm2);background:var(--co-color-gray-100);border-radius:var(--co-border-radius-full);font-size:var(--co-font-size-14);line-height:1;max-width:200px}.co-select__chip-label{color:var(--co-semantic-text-default);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.co-select__chip-remove{display:flex;align-items:center;padding:0;margin:0;border:none;background:transparent;cursor:pointer;color:var(--co-color-gray-500);transition:color var(--co-motion-duration-fast) var(--co-motion-ease-out);flex-shrink:0}.co-select__chip-remove:hover{color:var(--co-semantic-text-default)}.co-select--s .co-select__trigger{min-height:28px;padding:var(--co-spacing-xxs) var(--co-spacing-sm);font-size:var(--co-font-size-12)}.co-select--sm .co-select__trigger{min-height:32px;padding:var(--co-spacing-xs) var(--co-spacing-sm);font-size:var(--co-font-size-14)}.co-select--lg .co-select__trigger{min-height:48px;padding:var(--co-spacing-sm) var(--co-spacing-lg);font-size:var(--co-font-size-16)}.co-select--open .co-select__trigger{border-color:var(--co-semantic-border-focus);box-shadow:0 0 0 2px var(--co-semantic-border-focus-ring)}.co-select__trigger:focus-visible{outline:none;border-color:var(--co-semantic-border-focus);box-shadow:0 0 0 2px var(--co-semantic-border-focus-ring)}.co-select--disabled .co-select__trigger{background:var(--co-semantic-surface-disabled);border-color:transparent;box-shadow:none;cursor:not-allowed}.co-select--error .co-select__trigger{border-color:var(--co-semantic-status-error)}.co-select--success .co-select__trigger{border-color:var(--co-semantic-status-success)}.co-select--warning .co-select__trigger{border-color:var(--co-color-status-review)}.co-select--info .co-select__trigger{border-color:var(--co-semantic-status-info)}.co-select__flag,.co-select__option-flag{flex-shrink:0;width:20px;height:15px;object-fit:cover;border-radius:2px;box-shadow:0 0 0 1px var(--co-semantic-border-subtle)}.co-select__icon{flex-shrink:0;color:var(--co-semantic-text-muted);display:flex;align-items:center}.co-select__text{flex:1;min-width:0;color:var(--co-semantic-text-default);font-size:inherit;font-weight:400;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.co-select__text--placeholder{color:var(--co-semantic-text-muted)}.co-select--disabled .co-select__text{color:var(--co-semantic-text-disabled)}.co-select__clear{flex-shrink:0;display:flex;align-items:center;padding:0;margin:0;border:none;background:transparent;cursor:pointer;color:var(--co-semantic-text-muted);transition:color var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-select__clear:hover{color:var(--co-semantic-text-default)}.co-select__caret{flex-shrink:0;color:var(--co-semantic-text-muted);display:flex;align-items:center}.co-select__dropdown{padding:var(--co-spacing-sm2)}.co-select__search{display:flex;align-items:center;gap:var(--co-spacing-xs);padding:var(--co-spacing-xs) var(--co-spacing-sm2);margin-bottom:var(--co-spacing-sm2);border:1px solid var(--co-semantic-border-subtle);border-radius:var(--co-border-radius-xs);height:32px;box-sizing:border-box;color:var(--co-semantic-text-muted)}.co-select__search-input{flex:1;min-width:0;border:none;outline:none;background:transparent;font-family:inherit;font-size:var(--co-font-size-14, 14px);line-height:1;color:var(--co-semantic-text-default);padding:0;margin:0}.co-select__search-input::placeholder{color:var(--co-semantic-text-muted)}.co-select__match{font-weight:700;color:var(--co-semantic-text-default)}.co-select__empty{padding:var(--co-spacing-md);text-align:center;color:var(--co-semantic-text-muted);font-size:var(--co-font-size-14, 14px)}.co-select__options{max-height:calc(34px * 8);overflow-y:auto}.os-scrollbar.os-theme-co{--os-size:10px;--os-padding-perpendicular:2px;--os-padding-axis:2px;--os-track-bg:transparent;--os-handle-border-radius:var(--co-border-radius-full);--os-handle-bg:var(--co-color-opacity-negro-16);--os-handle-bg-hover:var(--co-color-opacity-negro-25);--os-handle-bg-active:var(--co-color-opacity-negro-50);--os-handle-min-size:24px}.co-select__option{display:flex;align-items:center;gap:var(--co-spacing-sm2);padding:var(--co-spacing-sm2) var(--co-spacing-md);border-radius:var(--co-border-radius-xs);cursor:pointer;transition:background var(--co-motion-duration-fast) var(--co-motion-ease-out);min-height:32px;box-sizing:border-box}.co-select__option:hover{background:var(--co-semantic-surface-hover)}.co-select__option--selected{background:var(--co-semantic-surface-muted)}.co-select__option--active{background:var(--co-semantic-surface-hover)}.co-select__option--disabled{opacity:0.4;cursor:not-allowed;pointer-events:none}.co-select__option-icon{flex-shrink:0;color:var(--co-semantic-text-muted)}.co-select__option-label{flex:1;color:var(--co-semantic-text-default);font-size:var(--co-font-size-14);font-weight:400;line-height:1}.co-select__option-check{flex-shrink:0;color:var(--co-semantic-text-default)}.co-select__helper{display:flex;align-items:center;gap:var(--co-spacing-xs);padding:0 var(--co-spacing-xs)}.co-select__helper-icon{flex-shrink:0;display:flex;align-items:center}.co-select__helper-text{color:var(--co-semantic-text-muted);font-size:var(--co-font-size-14);font-weight:400;line-height:1}.co-select__helper--error .co-select__helper-icon,.co-select__helper--error .co-select__helper-text{color:var(--co-semantic-status-error)}.co-select__helper--success .co-select__helper-icon,.co-select__helper--success .co-select__helper-text{color:var(--co-semantic-status-success)}.co-select__helper--warning .co-select__helper-icon,.co-select__helper--warning .co-select__helper-text{color:var(--co-color-status-review)}.co-select__helper--info .co-select__helper-icon,.co-select__helper--info .co-select__helper-text{color:var(--co-semantic-status-info)}:host([layout=\'horizontal\']) .co-select{display:grid;grid-template-columns:var(--co-field-label-width, max-content) 1fr;align-items:start;column-gap:var(--co-spacing-md);row-gap:var(--co-spacing-sm2)}:host([layout=\'horizontal\']) .co-select__labels{grid-column:1;grid-row:1;padding-top:var(--co-spacing-sm2);min-width:0}:host([layout=\'horizontal\']) .co-select__label{white-space:normal}:host([layout=\'horizontal\']) .co-select>:not(.co-select__labels){grid-column:2;min-width:0}.co-field-required{margin-left:2px;color:var(--co-color-status-error)}.co-field-required__caption{margin-left:4px;color:var(--co-semantic-text-muted);font-size:var(--co-font-size-12);font-weight:400}.co-field-required__caption::before{content:var(--co-field-required-text, \' (required)\')}'}},[1,"co-select",{label:[1],ariaLabelText:[1,"aria-label-text"],required:[4],secondaryLabel:[1,"secondary-label"],placeholder:[1],disabled:[4],iconLeft:[1,"icon-left"],clearable:[4],helperText:[1,"helper-text"],layout:[513],status:[1],options:[1],value:[1025],multiple:[4],size:[513],variant:[513],searchable:[516],searchPlaceholder:[1,"search-placeholder"],emptyText:[1,"empty-text"],showFooter:[4,"show-footer"],footerPrimaryLabel:[1,"footer-primary-label"],isOpen:[32],scrollTop:[32],searchText:[32],sortSnapshot:[32],activeIndex:[32]},void 0,{isOpen:[{onOpenChange:0}]}]);function b(){"undefined"!=typeof customElements&&["co-select","co-icon","co-list-footer","co-popover"].forEach((e=>{switch(e){case"co-select":customElements.get(s(e))||customElements.define(s(e),p);break;case"co-icon":customElements.get(s(e))||n();break;case"co-list-footer":customElements.get(s(e))||d();break;case"co-popover":customElements.get(s(e))||h()}}))}p.ITEM_HEIGHT=34,p.VIEWPORT_ITEMS=8,p.OVERSCAN=3,p.LISTBOX_ID="co-select-listbox",p.ACTIVE_SCROLL_MAX_FRAMES=48,b();const v=p,g=b;export{v as CoSelect,g as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as e,p as t,H as a,c as r,h as i}from"./index.js";import{R as o}from"./p-CWneqh4n.js";import{g as s}from"./p-jYd9gu_c.js";import{d as c}from"./p-CWCYYQrF.js";import{d as n}from"./p-NNxjElcX.js";import{d as l}from"./p-DxtNejr2.js";import{d}from"./p-DNJAIVfI.js";import{d as h}from"./p-BH184F0X.js";import{d as p}from"./p-CBTGN490.js";import{d as g}from"./p-DRP8D9ro.js";import{i as m,l as u,p as f,d as b,t as _,a as k,s as v,b as y,j as x}from"./p-e5KibEs8.js";const w=t(class extends a{constructor(e){super(),!1!==e&&this.__registerHost(),this.__attachShadow(),this.coRangeStartChange=r(this,"coRangeStartChange",7),this.coRangeEndChange=r(this,"coRangeEndChange",7),this.coRangeChange=r(this,"coRangeChange",7),this.coApply=r(this,"coApply",7),this.coCancel=r(this,"coCancel",7),this.coClear=r(this,"coClear",7),this.coOpen=r(this,"coOpen",3),this.coClose=r(this,"coClose",3),this.value="",this.locale="es-CO",this.displayFormat="d MMM yyyy",this.firstDayOfWeek=1,this.presets=!0,this.allowSameDay=!0,this.clearable=!0,this.applyOnSelect=!1,this.disabled=!1,this.readonly=!1,this.invalid=!1,this.required=!1,this.layout="vertical",this.size="md",this.variant="default",this.placement="bottom-start",this.open=!1,this.mobileBreakpoint=600,this.draftFrom=null,this.draftTo=null,this.isMobile=!1,this.mqlHandler=e=>{this.isMobile=e.matches},this.onPopoverOpen=()=>{this.open||(this.open=!0,this.coOpen.emit()),this.syncDraftFromValue()},this.onPopoverClose=()=>{this.open&&(this.open=!1,this.coClose.emit()),this.syncDraftFromValue()},this.onRootKeyDown=e=>{"Escape"===e.key&&this.open&&(e.stopPropagation(),this.handleCancel())},this.onCalendarRange=e=>{this.updateDraft(e.detail.start,e.detail.end)},this.onFromChange=e=>{this.updateDraft(e.detail,this.draftTo)},this.onToChange=e=>{this.updateDraft(this.draftFrom,e.detail)},this.openSheet=()=>{this.disabled||this.open||(this.syncDraftFromValue(),this.open=!0,this.coOpen.emit())},this.handleApply=()=>{this.canApply&&(this.value=JSON.stringify({from:this.draftFrom,to:this.draftTo}),this.coApply.emit({from:this.draftFrom,to:this.draftTo}),this.open=!1)},this.handleCancel=()=>{this.coCancel.emit(),this.syncDraftFromValue(),this.open=!1},this.handleClear=()=>{this.value="",this.draftFrom=null,this.draftTo=null,this.coClear.emit(),this.coRangeChange.emit({from:null,to:null}),this.open=!1}}componentWillLoad(){const e=this.parseValue();this.draftFrom=e.from,this.draftTo=e.to}connectedCallback(){this.mql=window.matchMedia(`(max-width: ${this.mobileBreakpoint}px)`),this.isMobile=this.mql.matches,this.mql.addEventListener("change",this.mqlHandler)}disconnectedCallback(){var e;null===(e=this.mql)||void 0===e||e.removeEventListener("change",this.mqlHandler)}onValueChange(){const e=this.parseValue();this.draftFrom=e.from,this.draftTo=e.to}parseValue(){if(!this.value)return{from:null,to:null};try{const e=JSON.parse(this.value);return{from:m(e.from)?e.from:null,to:m(e.to)?e.to:null}}catch(e){return{from:null,to:null}}}get committed(){return this.parseValue()}inclusiveDays(e,t){const a=u(f(t)).getTime()-u(f(e)).getTime();return Math.round(a/864e5)+1}get canApply(){const e=this.draftFrom,t=this.draftTo;if(!e||!t)return!1;if(b(e,t)>0)return!1;if(!this.allowSameDay&&0===b(e,t))return!1;const a=this.inclusiveDays(e,t);return!(this.minRangeDays&&a<this.minRangeDays||this.maxRangeDays&&a>this.maxRangeDays)}syncDraftFromValue(){const e=this.parseValue();this.draftFrom=e.from,this.draftTo=e.to}updateDraft(e,t){const a=this.draftFrom,r=this.draftTo;this.draftFrom=e,this.draftTo=t,e!==a&&this.coRangeStartChange.emit(e),t!==r&&this.coRangeEndChange.emit(t),this.coRangeChange.emit({from:e,to:t}),this.applyOnSelect&&this.canApply&&this.scheduleApply()}scheduleApply(){clearTimeout(this.applyTimer),this.applyTimer=setTimeout((()=>{this.canApply&&this.handleApply()}),250)}applyPreset(e){const t=_();let a=null,r=null;switch(e){case"today":a=t,r=t;break;case"yesterday":a=y(t,-1),r=a;break;case"last7Days":r=t,a=y(t,-6);break;case"last14Days":r=t,a=y(t,-13);break;case"last30Days":r=t,a=y(t,-29);break;case"last90Days":r=t,a=y(t,-89);break;case"thisWeek":a=function(e,t){const a=f(e);if(!a)return e;const r=u(a).getDay();return y(e,-(r-t+7)%7)}(t,this.firstDayOfWeek),r=y(a,6);break;case"thisMonth":a=v(t),r=C(t);break;case"lastMonth":{const e=k(t,-1);a=v(e),r=C(e);break}case"thisYear":{const e=f(t).year;a=`${e}-01-01`,r=`${e}-12-31`;break}case"lastYear":{const e=f(t).year-1;a=`${e}-01-01`,r=`${e}-12-31`;break}case"custom":a=null,r=null}this.updateDraft(a,r)}get hasCommitted(){const e=this.committed;return!(!e.from&&!e.to)}triggerText(e){const t=this.committed,a=t.from?x(t.from,this.displayFormat,this.locale):null,r=t.to?x(t.to,this.displayFormat,this.locale):null;return a&&r?`${a} → ${r}`:a?`${a} → …`:r?`… → ${r}`:this.placeholder||e.setDate}presetItems(e){const t=function(e){if(Array.isArray(e))return e;if("string"==typeof e&&e.trim()){const t=e.trim();try{const e=JSON.parse(t);if(Array.isArray(e))return e.map(String)}catch(e){}return t.split(",").map((e=>e.trim())).filter(Boolean)}return[]}(this.presetIds);return(t.length?t:["today","yesterday","last7Days","last30Days","thisWeek","thisMonth","lastMonth","custom"]).map((t=>{var a;return{id:t,label:null!==(a=e[t])&&void 0!==a?a:t}}))}renderTriggerChildren(e,t){var a;return[i("co-icon",{name:"calendar",size:16,class:"co-date-range-picker__icon"}),i("span",{class:{"co-date-range-picker__trigger-text":!0,"co-date-range-picker__trigger-text--placeholder":!this.hasCommitted}},this.triggerText(e)),t&&i("button",{class:"co-date-range-picker__clear",type:"button",tabIndex:-1,onMouseDown:e=>e.preventDefault(),onClick:e=>{e.stopPropagation(),this.handleClear()},"aria-label":null!==(a=this.clearLabel)&&void 0!==a?a:e.clear},i("co-icon",{name:"x-circle",size:16,weight:"fill"})),i("co-icon",{name:"caret-down",size:14,class:"co-date-range-picker__caret"})]}renderPanel(e,t){var a,r,o,s,c,n;return i("div",{class:"co-date-range-picker__panel"},i("div",{class:"co-date-range-picker__fields"},i("co-date-field",{class:"co-date-range-picker__field",label:null!==(a=this.fromLabel)&&void 0!==a?a:e.from,value:this.draftFrom,min:this.min,max:null!==(r=this.draftTo)&&void 0!==r?r:this.max,locale:this.locale,displayFormat:this.displayFormat,clearable:!1,onCoChange:this.onFromChange}),i("co-date-field",{class:"co-date-range-picker__field",label:null!==(o=this.toLabel)&&void 0!==o?o:e.to,value:this.draftTo,min:null!==(s=this.draftFrom)&&void 0!==s?s:this.min,max:this.max,locale:this.locale,displayFormat:this.displayFormat,clearable:!1,onCoChange:this.onToChange})),i("div",{class:{"co-date-range-picker__body":!0,"co-date-range-picker__body--touch":t}},this.presets&&i("div",{class:"co-date-range-picker__presets"},this.presetItems(e).map((e=>i("button",{key:e.id,type:"button",class:"co-date-range-picker__preset",onClick:()=>this.applyPreset(e.id)},e.label)))),i("co-calendar",{mode:"range","data-touch":t?"":void 0,rangeStart:this.draftFrom,rangeEnd:this.draftTo,min:this.min,max:this.max,locale:this.locale,firstDayOfWeek:this.firstDayOfWeek,onCoRangeSelect:this.onCalendarRange})),i("div",{class:"co-date-range-picker__footer"},i("button",{type:"button",class:"co-date-range-picker__btn co-date-range-picker__btn--ghost",onClick:this.handleCancel},null!==(c=this.cancelLabel)&&void 0!==c?c:e.cancel),i("button",{type:"button",class:"co-date-range-picker__btn co-date-range-picker__btn--primary",disabled:!this.canApply,onClick:this.handleApply},null!==(n=this.applyLabel)&&void 0!==n?n:e.apply)))}renderHelper(e,t){return t?i("div",{class:{"co-date-range-picker__helper":!0,"co-date-range-picker__helper--error":e},part:"helper"},e&&i("co-icon",{name:"warning-circle",size:14}),i("span",null,t)):null}render(){const e=s(this.locale),t=this.invalid,a=t?this.errorMessage:this.helperText,r=this.clearable&&this.hasCommitted&&!this.disabled&&!this.readonly,c={"co-date-range-picker__trigger":!0,"co-date-range-picker__trigger--open":this.open,"co-date-range-picker__trigger--disabled":this.disabled,"co-date-range-picker__trigger--flat":"flat"===this.variant};return this.isMobile?i("div",{class:{"co-date-range-picker":!0,"co-date-range-picker--invalid":t,[`co-date-range-picker--${this.size}`]:!0},onKeyDown:this.onRootKeyDown},this.label&&i("label",{class:"co-date-range-picker__label",part:"label"},this.label,i(o,{required:this.required})),i("div",{class:c,part:"trigger",role:"button",tabIndex:this.disabled?-1:0,"aria-haspopup":"dialog","aria-expanded":this.open?"true":"false",onClick:this.openSheet},this.renderTriggerChildren(e,r)),i("co-drawer",{position:"bottom",open:this.open,heading:e.selectDate,onCoClose:this.handleCancel},this.renderPanel(e,!0)),this.renderHelper(t,a)):i("div",{class:{"co-date-range-picker":!0,"co-date-range-picker--invalid":t,[`co-date-range-picker--${this.size}`]:!0},onKeyDown:this.onRootKeyDown},this.label&&i("label",{class:"co-date-range-picker__label",part:"label"},this.label,i(o,{required:this.required})),i("co-popover",{open:this.open,placement:this.placement,offset:4,closeOnEscape:!1,onCoOpen:this.onPopoverOpen,onCoClose:this.onPopoverClose},i("div",{slot:"trigger",class:c,part:"trigger",role:"button",tabIndex:this.disabled?-1:0,"aria-haspopup":"dialog","aria-expanded":this.open?"true":"false"},this.renderTriggerChildren(e,r)),this.open&&this.renderPanel(e,!1)),this.renderHelper(t,a))}get el(){return this}static get watchers(){return{value:[{onValueChange:0}]}}static get style(){return":host{display:block;font-family:var(--co-font-family-primary);font-size:var(--co-font-size-14)}.co-date-range-picker{display:flex;flex-direction:column;gap:var(--co-spacing-sm2)}.co-date-range-picker__label{font-size:var(--co-font-size-14);font-weight:400;color:var(--co-semantic-text-secondary);line-height:1;padding:0 var(--co-spacing-xs)}.co-date-range-picker co-popover{display:block;width:100%}.co-date-range-picker--s .co-date-range-picker__trigger{min-height:28px;padding:0 var(--co-spacing-sm)}.co-date-range-picker--sm .co-date-range-picker__trigger{min-height:32px;padding:0 var(--co-spacing-sm)}.co-date-range-picker--lg .co-date-range-picker__trigger{min-height:48px;padding:0 var(--co-spacing-lg)}.co-date-range-picker__trigger{display:inline-flex;align-items:center;gap:var(--co-spacing-sm2);width:100%;min-height:40px;padding:0 var(--co-spacing-md);background:var(--co-semantic-surface-page);border:1px solid var(--co-semantic-border-field);border-radius:var(--co-border-radius-xs);cursor:pointer;color:var(--co-semantic-text-default);box-sizing:border-box;transition:border-color var(--co-motion-duration-fast) var(--co-motion-ease-out), box-shadow var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-date-range-picker__trigger--flat{background:transparent;border-color:transparent}.co-date-range-picker__trigger--open{border-color:var(--co-semantic-border-focus);box-shadow:0 0 0 2px var(--co-semantic-border-focus-ring)}.co-date-range-picker__trigger--disabled{opacity:0.5;cursor:not-allowed}.co-date-range-picker--invalid .co-date-range-picker__trigger{border-color:var(--co-semantic-status-error)}.co-date-range-picker__icon,.co-date-range-picker__caret{color:var(--co-semantic-text-muted);flex-shrink:0}.co-date-range-picker__trigger-text{flex:1;min-width:0;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.co-date-range-picker__trigger-text--placeholder{color:var(--co-semantic-text-muted)}.co-date-range-picker__clear{background:none;border:0;padding:0;cursor:pointer;color:var(--co-semantic-text-muted);display:inline-flex;align-items:center;flex-shrink:0}.co-date-range-picker__clear:hover{color:var(--co-semantic-text-default)}.co-date-range-picker__panel{display:flex;flex-direction:column;gap:var(--co-spacing-md);padding:var(--co-spacing-md);min-width:280px}.co-date-range-picker__fields{display:grid;grid-template-columns:1fr 1fr;gap:var(--co-spacing-sm)}.co-date-range-picker__body{display:flex;gap:var(--co-spacing-md);align-items:flex-start}.co-date-range-picker__body:not(.co-date-range-picker__body--touch) co-calendar{flex:1;min-width:0;--co-calendar-width:100%;--co-calendar-col:minmax(var(--co-calendar-day-size), 1fr);--co-calendar-day-width:100%}.co-date-range-picker__body--touch{flex-direction:column;align-items:stretch}.co-date-range-picker__body--touch .co-date-range-picker__presets{flex-direction:row;flex-wrap:wrap;min-width:0;border-right:0;padding-right:0;border-bottom:1px solid var(--co-semantic-border-subtle);padding-bottom:var(--co-spacing-sm)}.co-date-range-picker__body--touch co-calendar{align-self:center}.co-date-range-picker__presets{display:flex;flex-direction:column;gap:var(--co-spacing-xxs);min-width:120px;border-right:1px solid var(--co-semantic-border-subtle);padding-right:var(--co-spacing-md)}.co-date-range-picker__preset{text-align:left;background:none;border:0;padding:var(--co-spacing-xs) var(--co-spacing-sm);border-radius:var(--co-border-radius-xs);font-size:var(--co-font-size-14);font-family:inherit;color:var(--co-semantic-text-default);cursor:pointer;transition:background var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-date-range-picker__preset:hover{background:var(--co-semantic-surface-hover)}.co-date-range-picker__footer{display:flex;justify-content:flex-end;gap:var(--co-spacing-sm);padding-top:var(--co-spacing-sm);border-top:1px solid var(--co-semantic-border-subtle)}.co-date-range-picker__btn{padding:var(--co-spacing-xs) var(--co-spacing-md);border-radius:var(--co-border-radius-xs);font-size:var(--co-font-size-14);font-family:inherit;font-weight:500;cursor:pointer;border:0}.co-date-range-picker__btn--ghost{background:transparent;color:var(--co-semantic-text-default)}.co-date-range-picker__btn--ghost:hover{background:var(--co-semantic-surface-hover)}.co-date-range-picker__btn--primary{background:var(--co-semantic-surface-primary);color:var(--co-semantic-on-primary)}.co-date-range-picker__btn--primary:hover:not(:disabled){opacity:0.88}.co-date-range-picker__btn--primary:disabled{opacity:0.5;cursor:not-allowed}.co-date-range-picker__helper{display:inline-flex;align-items:center;gap:var(--co-spacing-xs);font-size:var(--co-font-size-14);color:var(--co-semantic-text-muted);padding:0 var(--co-spacing-xs)}.co-date-range-picker__helper--error{color:var(--co-semantic-status-error)}:host([layout='horizontal']) .co-date-range-picker{display:grid;grid-template-columns:var(--co-field-label-width, max-content) 1fr;align-items:start;column-gap:var(--co-spacing-md);row-gap:var(--co-spacing-sm2)}:host([layout='horizontal']) .co-date-range-picker__label{grid-column:1;grid-row:1;padding-top:var(--co-spacing-sm2);min-width:0}:host([layout='horizontal']) .co-date-range-picker__label{white-space:normal}:host([layout='horizontal']) .co-date-range-picker>:not(.co-date-range-picker__label){grid-column:2;min-width:0}.co-field-required{margin-left:2px;color:var(--co-color-status-error)}.co-field-required__caption{margin-left:4px;color:var(--co-semantic-text-muted);font-size:var(--co-font-size-12);font-weight:400}.co-field-required__caption::before{content:var(--co-field-required-text, ' (required)')}"}},[1,"co-date-range-picker",{value:[1025],min:[1],max:[1],locale:[1],displayFormat:[1,"display-format"],firstDayOfWeek:[2,"first-day-of-week"],presets:[4],presetIds:[1,"preset-ids"],allowSameDay:[4,"allow-same-day"],minRangeDays:[2,"min-range-days"],maxRangeDays:[2,"max-range-days"],clearable:[4],applyOnSelect:[4,"apply-on-select"],disabled:[4],readonly:[4],invalid:[4],errorMessage:[1,"error-message"],helperText:[1,"helper-text"],label:[1],required:[4],placeholder:[1],layout:[513],size:[513],variant:[513],placement:[1],open:[1540],applyLabel:[1,"apply-label"],cancelLabel:[1,"cancel-label"],clearLabel:[1,"clear-label"],fromLabel:[1,"from-label"],toLabel:[1,"to-label"],mobileBreakpoint:[2,"mobile-breakpoint"],draftFrom:[32],draftTo:[32],isMobile:[32]},void 0,{value:[{onValueChange:0}]}]);function C(e){return y(v(k(e,1)),-1)}function z(){"undefined"!=typeof customElements&&["co-date-range-picker","co-calendar","co-date-field","co-drawer","co-icon","co-loader","co-overlay","co-popover"].forEach((t=>{switch(t){case"co-date-range-picker":customElements.get(e(t))||customElements.define(e(t),w);break;case"co-calendar":customElements.get(e(t))||c();break;case"co-date-field":customElements.get(e(t))||n();break;case"co-drawer":customElements.get(e(t))||l();break;case"co-icon":customElements.get(e(t))||d();break;case"co-loader":customElements.get(e(t))||h();break;case"co-overlay":customElements.get(e(t))||p();break;case"co-popover":customElements.get(e(t))||g()}}))}z();export{w as C,z as d}
|
|
1
|
+
import{t as e,p as t,H as a,c as r,h as i}from"./index.js";import{R as o}from"./p-CWneqh4n.js";import{g as s}from"./p-jYd9gu_c.js";import{d as c}from"./p-CWCYYQrF.js";import{d as n}from"./p-NNxjElcX.js";import{d as l}from"./p-P4HlMBlL.js";import{d}from"./p-DNJAIVfI.js";import{d as h}from"./p-BH184F0X.js";import{d as p}from"./p-BJh68Jqe.js";import{d as g}from"./p-D9T7zKeL.js";import{i as m,l as u,p as f,d as b,t as _,a as k,s as v,b as y,j as x}from"./p-e5KibEs8.js";const w=t(class extends a{constructor(e){super(),!1!==e&&this.__registerHost(),this.__attachShadow(),this.coRangeStartChange=r(this,"coRangeStartChange",7),this.coRangeEndChange=r(this,"coRangeEndChange",7),this.coRangeChange=r(this,"coRangeChange",7),this.coApply=r(this,"coApply",7),this.coCancel=r(this,"coCancel",7),this.coClear=r(this,"coClear",7),this.coOpen=r(this,"coOpen",3),this.coClose=r(this,"coClose",3),this.value="",this.locale="es-CO",this.displayFormat="d MMM yyyy",this.firstDayOfWeek=1,this.presets=!0,this.allowSameDay=!0,this.clearable=!0,this.applyOnSelect=!1,this.disabled=!1,this.readonly=!1,this.invalid=!1,this.required=!1,this.layout="vertical",this.size="md",this.variant="default",this.placement="bottom-start",this.open=!1,this.mobileBreakpoint=600,this.draftFrom=null,this.draftTo=null,this.isMobile=!1,this.mqlHandler=e=>{this.isMobile=e.matches},this.onPopoverOpen=()=>{this.open||(this.open=!0,this.coOpen.emit()),this.syncDraftFromValue()},this.onPopoverClose=()=>{this.open&&(this.open=!1,this.coClose.emit()),this.syncDraftFromValue()},this.onRootKeyDown=e=>{"Escape"===e.key&&this.open&&(e.stopPropagation(),this.handleCancel())},this.onCalendarRange=e=>{this.updateDraft(e.detail.start,e.detail.end)},this.onFromChange=e=>{this.updateDraft(e.detail,this.draftTo)},this.onToChange=e=>{this.updateDraft(this.draftFrom,e.detail)},this.openSheet=()=>{this.disabled||this.open||(this.syncDraftFromValue(),this.open=!0,this.coOpen.emit())},this.handleApply=()=>{this.canApply&&(this.value=JSON.stringify({from:this.draftFrom,to:this.draftTo}),this.coApply.emit({from:this.draftFrom,to:this.draftTo}),this.open=!1)},this.handleCancel=()=>{this.coCancel.emit(),this.syncDraftFromValue(),this.open=!1},this.handleClear=()=>{this.value="",this.draftFrom=null,this.draftTo=null,this.coClear.emit(),this.coRangeChange.emit({from:null,to:null}),this.open=!1}}componentWillLoad(){const e=this.parseValue();this.draftFrom=e.from,this.draftTo=e.to}connectedCallback(){this.mql=window.matchMedia(`(max-width: ${this.mobileBreakpoint}px)`),this.isMobile=this.mql.matches,this.mql.addEventListener("change",this.mqlHandler)}disconnectedCallback(){var e;null===(e=this.mql)||void 0===e||e.removeEventListener("change",this.mqlHandler)}onValueChange(){const e=this.parseValue();this.draftFrom=e.from,this.draftTo=e.to}parseValue(){if(!this.value)return{from:null,to:null};try{const e=JSON.parse(this.value);return{from:m(e.from)?e.from:null,to:m(e.to)?e.to:null}}catch(e){return{from:null,to:null}}}get committed(){return this.parseValue()}inclusiveDays(e,t){const a=u(f(t)).getTime()-u(f(e)).getTime();return Math.round(a/864e5)+1}get canApply(){const e=this.draftFrom,t=this.draftTo;if(!e||!t)return!1;if(b(e,t)>0)return!1;if(!this.allowSameDay&&0===b(e,t))return!1;const a=this.inclusiveDays(e,t);return!(this.minRangeDays&&a<this.minRangeDays||this.maxRangeDays&&a>this.maxRangeDays)}syncDraftFromValue(){const e=this.parseValue();this.draftFrom=e.from,this.draftTo=e.to}updateDraft(e,t){const a=this.draftFrom,r=this.draftTo;this.draftFrom=e,this.draftTo=t,e!==a&&this.coRangeStartChange.emit(e),t!==r&&this.coRangeEndChange.emit(t),this.coRangeChange.emit({from:e,to:t}),this.applyOnSelect&&this.canApply&&this.scheduleApply()}scheduleApply(){clearTimeout(this.applyTimer),this.applyTimer=setTimeout((()=>{this.canApply&&this.handleApply()}),250)}applyPreset(e){const t=_();let a=null,r=null;switch(e){case"today":a=t,r=t;break;case"yesterday":a=y(t,-1),r=a;break;case"last7Days":r=t,a=y(t,-6);break;case"last14Days":r=t,a=y(t,-13);break;case"last30Days":r=t,a=y(t,-29);break;case"last90Days":r=t,a=y(t,-89);break;case"thisWeek":a=function(e,t){const a=f(e);if(!a)return e;const r=u(a).getDay();return y(e,-(r-t+7)%7)}(t,this.firstDayOfWeek),r=y(a,6);break;case"thisMonth":a=v(t),r=C(t);break;case"lastMonth":{const e=k(t,-1);a=v(e),r=C(e);break}case"thisYear":{const e=f(t).year;a=`${e}-01-01`,r=`${e}-12-31`;break}case"lastYear":{const e=f(t).year-1;a=`${e}-01-01`,r=`${e}-12-31`;break}case"custom":a=null,r=null}this.updateDraft(a,r)}get hasCommitted(){const e=this.committed;return!(!e.from&&!e.to)}triggerText(e){const t=this.committed,a=t.from?x(t.from,this.displayFormat,this.locale):null,r=t.to?x(t.to,this.displayFormat,this.locale):null;return a&&r?`${a} → ${r}`:a?`${a} → …`:r?`… → ${r}`:this.placeholder||e.setDate}presetItems(e){const t=function(e){if(Array.isArray(e))return e;if("string"==typeof e&&e.trim()){const t=e.trim();try{const e=JSON.parse(t);if(Array.isArray(e))return e.map(String)}catch(e){}return t.split(",").map((e=>e.trim())).filter(Boolean)}return[]}(this.presetIds);return(t.length?t:["today","yesterday","last7Days","last30Days","thisWeek","thisMonth","lastMonth","custom"]).map((t=>{var a;return{id:t,label:null!==(a=e[t])&&void 0!==a?a:t}}))}renderTriggerChildren(e,t){var a;return[i("co-icon",{name:"calendar",size:16,class:"co-date-range-picker__icon"}),i("span",{class:{"co-date-range-picker__trigger-text":!0,"co-date-range-picker__trigger-text--placeholder":!this.hasCommitted}},this.triggerText(e)),t&&i("button",{class:"co-date-range-picker__clear",type:"button",tabIndex:-1,onMouseDown:e=>e.preventDefault(),onClick:e=>{e.stopPropagation(),this.handleClear()},"aria-label":null!==(a=this.clearLabel)&&void 0!==a?a:e.clear},i("co-icon",{name:"x-circle",size:16,weight:"fill"})),i("co-icon",{name:"caret-down",size:14,class:"co-date-range-picker__caret"})]}renderPanel(e,t){var a,r,o,s,c,n;return i("div",{class:"co-date-range-picker__panel"},i("div",{class:"co-date-range-picker__fields"},i("co-date-field",{class:"co-date-range-picker__field",label:null!==(a=this.fromLabel)&&void 0!==a?a:e.from,value:this.draftFrom,min:this.min,max:null!==(r=this.draftTo)&&void 0!==r?r:this.max,locale:this.locale,displayFormat:this.displayFormat,clearable:!1,onCoChange:this.onFromChange}),i("co-date-field",{class:"co-date-range-picker__field",label:null!==(o=this.toLabel)&&void 0!==o?o:e.to,value:this.draftTo,min:null!==(s=this.draftFrom)&&void 0!==s?s:this.min,max:this.max,locale:this.locale,displayFormat:this.displayFormat,clearable:!1,onCoChange:this.onToChange})),i("div",{class:{"co-date-range-picker__body":!0,"co-date-range-picker__body--touch":t}},this.presets&&i("div",{class:"co-date-range-picker__presets"},this.presetItems(e).map((e=>i("button",{key:e.id,type:"button",class:"co-date-range-picker__preset",onClick:()=>this.applyPreset(e.id)},e.label)))),i("co-calendar",{mode:"range","data-touch":t?"":void 0,rangeStart:this.draftFrom,rangeEnd:this.draftTo,min:this.min,max:this.max,locale:this.locale,firstDayOfWeek:this.firstDayOfWeek,onCoRangeSelect:this.onCalendarRange})),i("div",{class:"co-date-range-picker__footer"},i("button",{type:"button",class:"co-date-range-picker__btn co-date-range-picker__btn--ghost",onClick:this.handleCancel},null!==(c=this.cancelLabel)&&void 0!==c?c:e.cancel),i("button",{type:"button",class:"co-date-range-picker__btn co-date-range-picker__btn--primary",disabled:!this.canApply,onClick:this.handleApply},null!==(n=this.applyLabel)&&void 0!==n?n:e.apply)))}renderHelper(e,t){return t?i("div",{class:{"co-date-range-picker__helper":!0,"co-date-range-picker__helper--error":e},part:"helper"},e&&i("co-icon",{name:"warning-circle",size:14}),i("span",null,t)):null}render(){const e=s(this.locale),t=this.invalid,a=t?this.errorMessage:this.helperText,r=this.clearable&&this.hasCommitted&&!this.disabled&&!this.readonly,c={"co-date-range-picker__trigger":!0,"co-date-range-picker__trigger--open":this.open,"co-date-range-picker__trigger--disabled":this.disabled,"co-date-range-picker__trigger--flat":"flat"===this.variant};return this.isMobile?i("div",{class:{"co-date-range-picker":!0,"co-date-range-picker--invalid":t,[`co-date-range-picker--${this.size}`]:!0},onKeyDown:this.onRootKeyDown},this.label&&i("label",{class:"co-date-range-picker__label",part:"label"},this.label,i(o,{required:this.required})),i("div",{class:c,part:"trigger",role:"button",tabIndex:this.disabled?-1:0,"aria-haspopup":"dialog","aria-expanded":this.open?"true":"false",onClick:this.openSheet},this.renderTriggerChildren(e,r)),i("co-drawer",{position:"bottom",open:this.open,heading:e.selectDate,onCoClose:this.handleCancel},this.renderPanel(e,!0)),this.renderHelper(t,a)):i("div",{class:{"co-date-range-picker":!0,"co-date-range-picker--invalid":t,[`co-date-range-picker--${this.size}`]:!0},onKeyDown:this.onRootKeyDown},this.label&&i("label",{class:"co-date-range-picker__label",part:"label"},this.label,i(o,{required:this.required})),i("co-popover",{open:this.open,placement:this.placement,offset:4,closeOnEscape:!1,onCoOpen:this.onPopoverOpen,onCoClose:this.onPopoverClose},i("div",{slot:"trigger",class:c,part:"trigger",role:"button",tabIndex:this.disabled?-1:0,"aria-haspopup":"dialog","aria-expanded":this.open?"true":"false"},this.renderTriggerChildren(e,r)),this.open&&this.renderPanel(e,!1)),this.renderHelper(t,a))}get el(){return this}static get watchers(){return{value:[{onValueChange:0}]}}static get style(){return":host{display:block;font-family:var(--co-font-family-primary);font-size:var(--co-font-size-14)}.co-date-range-picker{display:flex;flex-direction:column;gap:var(--co-spacing-sm2)}.co-date-range-picker__label{font-size:var(--co-font-size-14);font-weight:400;color:var(--co-semantic-text-secondary);line-height:1;padding:0 var(--co-spacing-xs)}.co-date-range-picker co-popover{display:block;width:100%}.co-date-range-picker--s .co-date-range-picker__trigger{min-height:28px;padding:0 var(--co-spacing-sm)}.co-date-range-picker--sm .co-date-range-picker__trigger{min-height:32px;padding:0 var(--co-spacing-sm)}.co-date-range-picker--lg .co-date-range-picker__trigger{min-height:48px;padding:0 var(--co-spacing-lg)}.co-date-range-picker__trigger{display:inline-flex;align-items:center;gap:var(--co-spacing-sm2);width:100%;min-height:40px;padding:0 var(--co-spacing-md);background:var(--co-semantic-surface-page);border:1px solid var(--co-semantic-border-field);border-radius:var(--co-border-radius-xs);cursor:pointer;color:var(--co-semantic-text-default);box-sizing:border-box;transition:border-color var(--co-motion-duration-fast) var(--co-motion-ease-out), box-shadow var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-date-range-picker__trigger--flat{background:transparent;border-color:transparent}.co-date-range-picker__trigger--open{border-color:var(--co-semantic-border-focus);box-shadow:0 0 0 2px var(--co-semantic-border-focus-ring)}.co-date-range-picker__trigger--disabled{opacity:0.5;cursor:not-allowed}.co-date-range-picker--invalid .co-date-range-picker__trigger{border-color:var(--co-semantic-status-error)}.co-date-range-picker__icon,.co-date-range-picker__caret{color:var(--co-semantic-text-muted);flex-shrink:0}.co-date-range-picker__trigger-text{flex:1;min-width:0;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.co-date-range-picker__trigger-text--placeholder{color:var(--co-semantic-text-muted)}.co-date-range-picker__clear{background:none;border:0;padding:0;cursor:pointer;color:var(--co-semantic-text-muted);display:inline-flex;align-items:center;flex-shrink:0}.co-date-range-picker__clear:hover{color:var(--co-semantic-text-default)}.co-date-range-picker__panel{display:flex;flex-direction:column;gap:var(--co-spacing-md);padding:var(--co-spacing-md);min-width:280px}.co-date-range-picker__fields{display:grid;grid-template-columns:1fr 1fr;gap:var(--co-spacing-sm)}.co-date-range-picker__body{display:flex;gap:var(--co-spacing-md);align-items:flex-start}.co-date-range-picker__body:not(.co-date-range-picker__body--touch) co-calendar{flex:1;min-width:0;--co-calendar-width:100%;--co-calendar-col:minmax(var(--co-calendar-day-size), 1fr);--co-calendar-day-width:100%}.co-date-range-picker__body--touch{flex-direction:column;align-items:stretch}.co-date-range-picker__body--touch .co-date-range-picker__presets{flex-direction:row;flex-wrap:wrap;min-width:0;border-right:0;padding-right:0;border-bottom:1px solid var(--co-semantic-border-subtle);padding-bottom:var(--co-spacing-sm)}.co-date-range-picker__body--touch co-calendar{align-self:center}.co-date-range-picker__presets{display:flex;flex-direction:column;gap:var(--co-spacing-xxs);min-width:120px;border-right:1px solid var(--co-semantic-border-subtle);padding-right:var(--co-spacing-md)}.co-date-range-picker__preset{text-align:left;background:none;border:0;padding:var(--co-spacing-xs) var(--co-spacing-sm);border-radius:var(--co-border-radius-xs);font-size:var(--co-font-size-14);font-family:inherit;color:var(--co-semantic-text-default);cursor:pointer;transition:background var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-date-range-picker__preset:hover{background:var(--co-semantic-surface-hover)}.co-date-range-picker__footer{display:flex;justify-content:flex-end;gap:var(--co-spacing-sm);padding-top:var(--co-spacing-sm);border-top:1px solid var(--co-semantic-border-subtle)}.co-date-range-picker__btn{padding:var(--co-spacing-xs) var(--co-spacing-md);border-radius:var(--co-border-radius-xs);font-size:var(--co-font-size-14);font-family:inherit;font-weight:500;cursor:pointer;border:0}.co-date-range-picker__btn--ghost{background:transparent;color:var(--co-semantic-text-default)}.co-date-range-picker__btn--ghost:hover{background:var(--co-semantic-surface-hover)}.co-date-range-picker__btn--primary{background:var(--co-semantic-surface-primary);color:var(--co-semantic-on-primary)}.co-date-range-picker__btn--primary:hover:not(:disabled){opacity:0.88}.co-date-range-picker__btn--primary:disabled{opacity:0.5;cursor:not-allowed}.co-date-range-picker__helper{display:inline-flex;align-items:center;gap:var(--co-spacing-xs);font-size:var(--co-font-size-14);color:var(--co-semantic-text-muted);padding:0 var(--co-spacing-xs)}.co-date-range-picker__helper--error{color:var(--co-semantic-status-error)}:host([layout='horizontal']) .co-date-range-picker{display:grid;grid-template-columns:var(--co-field-label-width, max-content) 1fr;align-items:start;column-gap:var(--co-spacing-md);row-gap:var(--co-spacing-sm2)}:host([layout='horizontal']) .co-date-range-picker__label{grid-column:1;grid-row:1;padding-top:var(--co-spacing-sm2);min-width:0}:host([layout='horizontal']) .co-date-range-picker__label{white-space:normal}:host([layout='horizontal']) .co-date-range-picker>:not(.co-date-range-picker__label){grid-column:2;min-width:0}.co-field-required{margin-left:2px;color:var(--co-color-status-error)}.co-field-required__caption{margin-left:4px;color:var(--co-semantic-text-muted);font-size:var(--co-font-size-12);font-weight:400}.co-field-required__caption::before{content:var(--co-field-required-text, ' (required)')}"}},[1,"co-date-range-picker",{value:[1025],min:[1],max:[1],locale:[1],displayFormat:[1,"display-format"],firstDayOfWeek:[2,"first-day-of-week"],presets:[4],presetIds:[1,"preset-ids"],allowSameDay:[4,"allow-same-day"],minRangeDays:[2,"min-range-days"],maxRangeDays:[2,"max-range-days"],clearable:[4],applyOnSelect:[4,"apply-on-select"],disabled:[4],readonly:[4],invalid:[4],errorMessage:[1,"error-message"],helperText:[1,"helper-text"],label:[1],required:[4],placeholder:[1],layout:[513],size:[513],variant:[513],placement:[1],open:[1540],applyLabel:[1,"apply-label"],cancelLabel:[1,"cancel-label"],clearLabel:[1,"clear-label"],fromLabel:[1,"from-label"],toLabel:[1,"to-label"],mobileBreakpoint:[2,"mobile-breakpoint"],draftFrom:[32],draftTo:[32],isMobile:[32]},void 0,{value:[{onValueChange:0}]}]);function C(e){return y(v(k(e,1)),-1)}function z(){"undefined"!=typeof customElements&&["co-date-range-picker","co-calendar","co-date-field","co-drawer","co-icon","co-loader","co-overlay","co-popover"].forEach((t=>{switch(t){case"co-date-range-picker":customElements.get(e(t))||customElements.define(e(t),w);break;case"co-calendar":customElements.get(e(t))||c();break;case"co-date-field":customElements.get(e(t))||n();break;case"co-drawer":customElements.get(e(t))||l();break;case"co-icon":customElements.get(e(t))||d();break;case"co-loader":customElements.get(e(t))||h();break;case"co-overlay":customElements.get(e(t))||p();break;case"co-popover":customElements.get(e(t))||g()}}))}z();export{w as C,z as d}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{t,p as e,H as n,c as o,h as i}from"./index.js";function s(t,e,n){return t!==n?null:e?"after-open":"after-close"}const a=["a[href]","area[href]","button:not([disabled])",'input:not([disabled]):not([type="hidden"])',"select:not([disabled])","textarea:not([disabled])","iframe","audio[controls]","video[controls]",'[contenteditable]:not([contenteditable="false"])','[tabindex]:not([tabindex="-1"])'].join(",");function r(t){return Array.from(t.querySelectorAll(a)).filter((t=>!t.hasAttribute("disabled")&&"true"!==t.getAttribute("aria-hidden")&&(null!==t.offsetParent||t.getClientRects().length>0)))}let c=0,l="";const h=e(class extends n{constructor(t){super(),!1!==t&&this.__registerHost(),this.__attachShadow(),this.coClose=o(this,"coClose",7),this.coAfterClose=o(this,"coAfterClose",3),this.coAfterOpen=o(this,"coAfterOpen",3),this.open=!1,this.trapFocus=!1,this.closeOnEscape=!1,this.hasLock=!1,this.pressDownTarget=null,this.pressUpTarget=null,this.handlePointerDown=t=>{var e;this.pressDownTarget=null!==(e=t.composedPath()[0])&&void 0!==e?e:null,this.pressUpTarget=null},this.handlePointerUp=t=>{var e;this.pressUpTarget=null!==(e=t.composedPath()[0])&&void 0!==e?e:null},this.handleClick=t=>{var e;const n=(o=this.pressDownTarget,i=this.pressUpTarget,s=null!==(e=t.composedPath()[0])&&void 0!==e?e:null,null!==o&&o===i&&i===s);var o,i,s;this.pressDownTarget=null,this.pressUpTarget=null,n&&this.coClose.emit()},this.handleTransitionEnd=t=>{if(t.target!==this.overlayEl)return;const e=s(t.propertyName,this.open,"opacity");"after-open"===e?this.coAfterOpen.emit():"after-close"===e&&this.coAfterClose.emit()}}onOpenChange(t){t?this.acquireLock():this.releaseLock(),this.syncPopover(),this.trapFocus&&(t?this.captureAndFocus():this.restoreFocus())}componentDidLoad(){this.open&&this.acquireLock(),this.syncPopover(),this.open&&this.trapFocus&&this.captureAndFocus()}disconnectedCallback(){this.releaseLock(),this.trapFocus&&this.restoreFocus()}acquireLock(){this.hasLock||(this.hasLock=!0,"undefined"!=typeof document&&(0===c&&(l=document.body.style.overflow,document.body.style.overflow="hidden"),c++))}releaseLock(){this.hasLock&&(this.hasLock=!1,"undefined"!=typeof document&&0!==c&&(c--,0===c&&(document.body.style.overflow=l)))}syncPopover(){const t=this.overlayEl;if(t&&"function"==typeof t.showPopover)try{const e=t.matches(":popover-open");this.open&&!e?t.showPopover():!this.open&&e&&t.hidePopover()}catch(t){}}captureAndFocus(){var t;"undefined"!=typeof document&&(this.returnFocusEl=document.activeElement),t=()=>{var t;if(!this.open)return;const e=r(this.el);e.length>0?e[0].focus():null===(t=this.overlayEl)||void 0===t||t.focus()},"function"==typeof requestAnimationFrame?requestAnimationFrame(t):t()}restoreFocus(){const t=this.returnFocusEl;this.returnFocusEl=null,t&&"function"==typeof t.focus&&t.focus()}deepActiveElement(){if("undefined"==typeof document)return null;let t=document.activeElement;for(;t&&t.shadowRoot&&t.shadowRoot.activeElement;)t=t.shadowRoot.activeElement;return t}handleKeydown(t){this.open&&(this.closeOnEscape&&"Escape"===t.key?this.coClose.emit():this.trapFocus&&"Tab"===t.key&&this.trapTab(t))}trapTab(t){var e;const n=r(this.el);if(0===n.length)return t.preventDefault(),void(null===(e=this.overlayEl)||void 0===e||e.focus());const o=n.indexOf(this.deepActiveElement()),i=function(t,e,n){return t<=0?-1:n?e<=0?t-1:e-1:-1===e||e>=t-1?0:e+1}(n.length,o,t.shiftKey);i<0||(t.preventDefault(),n[i].focus())}render(){return i("div",{key:"74051ac6a35eff0b9c873bafe2141b0a9486f83e",class:{"co-overlay":!0,"co-overlay--open":this.open},part:"overlay",popover:"manual",tabindex:this.trapFocus?-1:void 0,ref:t=>this.overlayEl=t,onPointerDown:this.handlePointerDown,onPointerUp:this.handlePointerUp,onClick:this.handleClick,onTransitionEnd:this.handleTransitionEnd},i("slot",{key:"8ed7f244bfe88f3d38b9e1f6720b0a191529f6f1"}))}get el(){return this}static get watchers(){return{open:[{onOpenChange:0}]}}static get style(){return":host{display:contents}.co-overlay{position:fixed;inset:0;z-index:1000;margin:0;border:0;padding:0;width:auto;height:auto;max-width:none;max-height:none;overflow:visible;display:flex;align-items:center;justify-content:center;background:var(--co-overlay-bg, rgba(0, 0, 0, 0.4));-webkit-backdrop-filter:blur(var(--co-overlay-blur, 2px));backdrop-filter:blur(var(--co-overlay-blur, 2px));opacity:0;pointer-events:none;transition:opacity var(--co-motion-duration-fast) var(--co-motion-ease-in)}.co-overlay--open{opacity:1;pointer-events:auto;transition:opacity var(--co-motion-duration-base) var(--co-motion-ease-out)}"}},[257,"co-overlay",{open:[1540],trapFocus:[516,"trap-focus"],closeOnEscape:[516,"close-on-escape"]},[[4,"keydown","handleKeydown"]],{open:[{onOpenChange:0}]}]);function d(){"undefined"!=typeof customElements&&["co-overlay"].forEach((e=>{"co-overlay"===e&&(customElements.get(t(e))||customElements.define(t(e),h))}))}d();export{h as C,s as a,d}
|