@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,p as i,H as s,c as o,h as e}from"./index.js";import{c as n,g as h,f as a}from"./p-DFHRS9cJ.js";const c=[];function r(t){const i=c.indexOf(t);-1!==i&&c.splice(i,1)}function p(t){return c.length>0&&c[c.length-1]===t}const l=["top","bottom","left","right"].map((t=>`co-popover__panel--${t}`)),d=i(class extends s{constructor(t){super(),!1!==t&&this.__registerHost(),this.__attachShadow(),this.coOpen=o(this,"coOpen",3),this.coClose=o(this,"coClose",3),this.coPlacement=o(this,"coPlacement",3),this.open=!1,this.placement="bottom-start",this.matchWidth=!1,this.offset=4,this.closeOnClickOutside=!0,this.closeOnEscape=!0,this.flip=!0,this.closing=!1,this.scrollParents=[],this.cachedOffsetAncestor=null,this.offsetAncestorComputed=!1,this.docListenersBound=!1,this.finishClose=()=>{clearTimeout(this.closeFallbackTimer),this.open||(this.closing=!1,this.panelEl=void 0)},this.handlePanelTransitionEnd=t=>{!this.open&&this.closing&&t.target===this.panelEl&&"transform"===t.propertyName&&this.finishClose()},this.handleDocumentClickManual=t=>{this.open&&this.closeOnClickOutside&&p(this.el)&&(t.composedPath().includes(this.el)||(this.open=!1))},this.handleDocumentKeydownManual=t=>{this.open&&this.closeOnEscape&&p(this.el)&&"Escape"===t.key&&(t.stopPropagation(),this.open=!1)},this.updatePosition=()=>{if(!this.open||!this.triggerEl||!this.panelEl)return;const t=this.triggerEl.getBoundingClientRect(),i=DOMRect.fromRect({width:this.panelEl.offsetWidth,height:this.panelEl.offsetHeight}),{top:s,left:o,actualPlacement:e}=n(t,i,{placement:this.placement,offset:this.offset,flip:this.flip});let a=s,c=o;if(!this.panelEl.matches(":popover-open")&&(this.offsetAncestorComputed||(this.cachedOffsetAncestor=h(this.panelEl),this.offsetAncestorComputed=!0),this.cachedOffsetAncestor)){const t=this.cachedOffsetAncestor.getBoundingClientRect();a-=t.top,c-=t.left}const r={top:`${a}px`,left:`${c}px`};if(this.matchWidth&&(r.width=`${t.width}px`),this.panelEl){Object.assign(this.panelEl.style,r);const t=`co-popover__panel--${e.split("-")[0]}`;this.panelEl.classList.contains(t)||(this.panelEl.classList.remove(...l),this.panelEl.classList.add(t),this.coPlacement.emit({placement:e})),this.panelEl.classList.add("co-popover__panel--positioned")}},this.scheduleUpdate=()=>{this.rafId&&cancelAnimationFrame(this.rafId),this.rafId=requestAnimationFrame(this.updatePosition)},this.handleTriggerClick=()=>{this.open=!this.open}}componentDidLoad(){this.open&&this.onOpenChange(!0)}disconnectedCallback(){r(this.el),this.unbindDocListeners(),this.cleanupListeners(),clearTimeout(this.closeFallbackTimer),this.closing=!1}onOpenChange(t){var i;t?(this.closing=!1,clearTimeout(this.closeFallbackTimer),r(i=this.el),c.push(i),this.coOpen.emit(),this.bindDocListeners(),this.scheduleUpdate(),requestAnimationFrame((()=>{requestAnimationFrame((()=>{this.updatePosition()}))})),this.addScrollListeners()):(r(this.el),this.coClose.emit(),this.cleanupListeners(),this.unbindDocListeners(),this.cachedOffsetAncestor=null,this.offsetAncestorComputed=!1,this.closing=!0,clearTimeout(this.closeFallbackTimer),this.closeFallbackTimer=setTimeout((()=>this.finishClose()),400))}bindDocListeners(){this.docListenersBound||(document.addEventListener("click",this.handleDocumentClickManual,!0),document.addEventListener("keydown",this.handleDocumentKeydownManual,!0),this.docListenersBound=!0)}unbindDocListeners(){this.docListenersBound&&(document.removeEventListener("click",this.handleDocumentClickManual,!0),document.removeEventListener("keydown",this.handleDocumentKeydownManual,!0),this.docListenersBound=!1)}async toggle(){this.open=!this.open}async show(){this.open=!0}async hide(){this.open=!1}promotePanel(){const t=this.panelEl;if(t&&"function"==typeof t.showPopover)try{t.matches(":popover-open")||t.showPopover()}catch(t){}}addScrollListeners(){window.addEventListener("resize",this.scheduleUpdate,{passive:!0}),window.addEventListener("scroll",this.scheduleUpdate,{passive:!0,capture:!0}),this.scrollParents=a(this.el);for(const t of this.scrollParents)t.addEventListener("scroll",this.scheduleUpdate,{passive:!0})}cleanupListeners(){this.rafId&&(cancelAnimationFrame(this.rafId),this.rafId=void 0),window.removeEventListener("resize",this.scheduleUpdate),window.removeEventListener("scroll",this.scheduleUpdate,{capture:!0});for(const t of this.scrollParents)t.removeEventListener("scroll",this.scheduleUpdate);this.scrollParents=[]}render(){return e("div",{key:"
|
|
1
|
+
import{t,p as i,H as s,c as o,h as e}from"./index.js";import{c as n,g as h,f as a}from"./p-DFHRS9cJ.js";const c=[];function r(t){const i=c.indexOf(t);-1!==i&&c.splice(i,1)}function p(t){return c.length>0&&c[c.length-1]===t}const l=["top","bottom","left","right"].map((t=>`co-popover__panel--${t}`)),d=i(class extends s{constructor(t){super(),!1!==t&&this.__registerHost(),this.__attachShadow(),this.coOpen=o(this,"coOpen",3),this.coClose=o(this,"coClose",3),this.coPlacement=o(this,"coPlacement",3),this.open=!1,this.placement="bottom-start",this.matchWidth=!1,this.offset=4,this.closeOnClickOutside=!0,this.closeOnEscape=!0,this.flip=!0,this.closing=!1,this.scrollParents=[],this.cachedOffsetAncestor=null,this.offsetAncestorComputed=!1,this.docListenersBound=!1,this.finishClose=()=>{clearTimeout(this.closeFallbackTimer),this.open||(this.closing=!1,this.panelEl=void 0)},this.handlePanelTransitionEnd=t=>{!this.open&&this.closing&&t.target===this.panelEl&&"transform"===t.propertyName&&this.finishClose()},this.pressStartedInside=!1,this.handleDocumentPointerDownManual=t=>{this.pressStartedInside=t.composedPath().includes(this.el)},this.handleDocumentClickManual=t=>{const i=this.pressStartedInside;this.pressStartedInside=!1,this.open&&this.closeOnClickOutside&&(i||p(this.el)&&(t.composedPath().includes(this.el)||(this.open=!1)))},this.handleDocumentKeydownManual=t=>{this.open&&this.closeOnEscape&&p(this.el)&&"Escape"===t.key&&(t.stopPropagation(),this.open=!1)},this.updatePosition=()=>{if(!this.open||!this.triggerEl||!this.panelEl)return;const t=this.triggerEl.getBoundingClientRect(),i=DOMRect.fromRect({width:this.panelEl.offsetWidth,height:this.panelEl.offsetHeight}),{top:s,left:o,actualPlacement:e}=n(t,i,{placement:this.placement,offset:this.offset,flip:this.flip});let a=s,c=o;if(!this.panelEl.matches(":popover-open")&&(this.offsetAncestorComputed||(this.cachedOffsetAncestor=h(this.panelEl),this.offsetAncestorComputed=!0),this.cachedOffsetAncestor)){const t=this.cachedOffsetAncestor.getBoundingClientRect();a-=t.top,c-=t.left}const r={top:`${a}px`,left:`${c}px`};if(this.matchWidth&&(r.width=`${t.width}px`),this.panelEl){Object.assign(this.panelEl.style,r);const t=`co-popover__panel--${e.split("-")[0]}`;this.panelEl.classList.contains(t)||(this.panelEl.classList.remove(...l),this.panelEl.classList.add(t),this.coPlacement.emit({placement:e})),this.panelEl.classList.add("co-popover__panel--positioned")}},this.scheduleUpdate=()=>{this.rafId&&cancelAnimationFrame(this.rafId),this.rafId=requestAnimationFrame(this.updatePosition)},this.handleTriggerClick=()=>{this.open=!this.open}}componentDidLoad(){this.open&&this.onOpenChange(!0)}disconnectedCallback(){r(this.el),this.unbindDocListeners(),this.cleanupListeners(),clearTimeout(this.closeFallbackTimer),this.closing=!1}onOpenChange(t){var i;t?(this.closing=!1,clearTimeout(this.closeFallbackTimer),r(i=this.el),c.push(i),this.coOpen.emit(),this.bindDocListeners(),this.scheduleUpdate(),requestAnimationFrame((()=>{requestAnimationFrame((()=>{this.updatePosition()}))})),this.addScrollListeners()):(r(this.el),this.coClose.emit(),this.cleanupListeners(),this.unbindDocListeners(),this.cachedOffsetAncestor=null,this.offsetAncestorComputed=!1,this.closing=!0,clearTimeout(this.closeFallbackTimer),this.closeFallbackTimer=setTimeout((()=>this.finishClose()),400))}bindDocListeners(){this.docListenersBound||(document.addEventListener("pointerdown",this.handleDocumentPointerDownManual,!0),document.addEventListener("click",this.handleDocumentClickManual,!0),document.addEventListener("keydown",this.handleDocumentKeydownManual,!0),this.docListenersBound=!0)}unbindDocListeners(){this.docListenersBound&&(document.removeEventListener("pointerdown",this.handleDocumentPointerDownManual,!0),document.removeEventListener("click",this.handleDocumentClickManual,!0),document.removeEventListener("keydown",this.handleDocumentKeydownManual,!0),this.docListenersBound=!1,this.pressStartedInside=!1)}async toggle(){this.open=!this.open}async show(){this.open=!0}async hide(){this.open=!1}promotePanel(){const t=this.panelEl;if(t&&"function"==typeof t.showPopover)try{t.matches(":popover-open")||t.showPopover()}catch(t){}}addScrollListeners(){window.addEventListener("resize",this.scheduleUpdate,{passive:!0}),window.addEventListener("scroll",this.scheduleUpdate,{passive:!0,capture:!0}),this.scrollParents=a(this.el);for(const t of this.scrollParents)t.addEventListener("scroll",this.scheduleUpdate,{passive:!0})}cleanupListeners(){this.rafId&&(cancelAnimationFrame(this.rafId),this.rafId=void 0),window.removeEventListener("resize",this.scheduleUpdate),window.removeEventListener("scroll",this.scheduleUpdate,{capture:!0});for(const t of this.scrollParents)t.removeEventListener("scroll",this.scheduleUpdate);this.scrollParents=[]}render(){return e("div",{key:"f4f13f06a95f02735c615e896d367ca671270a68",class:"co-popover"},e("div",{key:"504af8cebb0f83e7f882f09096a5bfba37e2ac56",class:"co-popover__trigger",ref:t=>this.triggerEl=t,onClick:this.handleTriggerClick},e("slot",{key:"d5853c372f2bda3f5c57718b5869ca8919c1dfcc",name:"trigger"})),(this.open||this.closing)&&e("div",{key:"3b9c2aa2feaab08eb5f03d36cc25a464600da7fe",class:{"co-popover__panel":!0,"co-popover__panel--closing":this.closing},popover:"manual",onTransitionEnd:this.handlePanelTransitionEnd,ref:t=>{t&&t!==this.panelEl&&(this.panelEl=t,this.promotePanel(),this.scheduleUpdate())}},e("slot",{key:"81e2b8070b4912bab1654e957890c92244ca83b8"})))}get el(){return this}static get watchers(){return{open:[{onOpenChange:0}]}}static get style(){return":host{display:inline-block;position:relative}:host([match-width]){display:block;width:100%}.co-popover{display:block;width:100%}.co-popover__trigger{display:block;width:100%;cursor:pointer}.co-popover__panel{position:fixed;inset:auto;top:0;left:0;margin:0;padding:0;width:auto;height:auto;max-width:none;max-height:none;z-index:10000;visibility:hidden;opacity:0;transform:scale(0.97);background:var(--co-semantic-surface-page, #fff);border:1px solid var(--co-semantic-border-subtle);border-radius:var(--co-border-radius-sm, 12px);box-shadow:0 4px 16px rgba(31, 28, 27, 0.08);overflow:visible}.co-popover__panel--positioned{visibility:visible;opacity:1;transform:scale(1);transition:opacity var(--co-motion-duration-base) var(--co-motion-ease-out), transform var(--co-motion-duration-base) var(--co-motion-ease-out)}.co-popover__panel--closing{visibility:visible;opacity:0;transform:scale(0.99);pointer-events:none;transition:opacity var(--co-motion-duration-fast) var(--co-motion-ease-in), transform var(--co-motion-duration-fast) var(--co-motion-ease-in)}.co-popover__panel--bottom{transform-origin:top center}.co-popover__panel--top{transform-origin:bottom center}.co-popover__panel--right{transform-origin:center left}.co-popover__panel--left{transform-origin:center right}"}},[257,"co-popover",{open:[1540],placement:[1],matchWidth:[516,"match-width"],offset:[2],closeOnClickOutside:[4,"close-on-click-outside"],closeOnEscape:[4,"close-on-escape"],flip:[4],closing:[32],toggle:[64],show:[64],hide:[64]},void 0,{open:[{onOpenChange:0}]}]);function m(){"undefined"!=typeof customElements&&["co-popover"].forEach((i=>{"co-popover"===i&&(customElements.get(t(i))||customElements.define(t(i),d))}))}m();export{d as C,m as d}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{t as o,p as t,H as i,c as r,h as e}from"./index.js";import{h as s}from"./p-Ba_v-MzM.js";import{i as a}from"./p-DqyWGweA.js";import{d as n}from"./p-Dcg4krSX.js";import{d as l}from"./p-DNJAIVfI.js";import{d as c}from"./p-BH184F0X.js";import{d}from"./p-Bsh0JMGf.js";function h(o){let t=o;if("string"==typeof o)try{t=JSON.parse(o)}catch(o){return[]}return Array.isArray(t)?t:[]}function p(o,t,i){const r=[];if(i.forEach(((o,t)=>{o.disabled||r.push(t)})),0===r.length)return-1;const e=r.indexOf(o);return-1===e?1===t?r[0]:r[r.length-1]:r[(e+t+r.length)%r.length]}function v(o,t,i){return t>0?{hasMore:o<t,remaining:Math.max(0,t-o)}:{hasMore:i,remaining:0}}const b=34,f=t(class extends i{constructor(o){super(),!1!==o&&this.__registerHost(),this.__attachShadow(),this.coSearch=r(this,"coSearch",1),this.coChange=r(this,"coChange",1),this.coLoadMore=r(this,"coLoadMore",1),this.coClearSelection=r(this,"coClearSelection",1),this.coRemoveItem=r(this,"coRemoveItem",1),this.coReorder=r(this,"coReorder",1),this.coPinToggle=r(this,"coPinToggle",1),this.coListReorder=r(this,"coListReorder",1),this.items="[]",this.value="",this.selectedItems="[]",this.multiple=!1,this.selectedFirst=!1,this.selectedAffordance="check",this.removableItems=!1,this.reorderable=!1,this.pinnable=!1,this.listReorderable=!1,this.searchable=!1,this.searchPlaceholder="Search…",this.searchDebounce=350,this.initialTerm="",this.loading=!1,this.total=0,this.hasMore=!1,this.emptyMessage="No results found",this.clearOptionLabel="",this.virtual=!1,this.highlightMatches=!1,this.highlightTerm="",this.avatarShape="circle",this.suffixAlign="inline",this.autoHighlight=!1,this.term="",this.activeIndex=-1,this.scrollTop=0,this.armedKey="",this.dragKey="",this.overKey="",this.dropAfter=!1,this.lastFillLen=-1,this.sortSnapshot=new Set,this.displaySnapshot=[],this.previewOrder=[],this.onRootKeyDown=o=>{var t,r;if("Enter"===o.key){const e=(null===(t=o.composedPath)||void 0===t?void 0:t.call(o)[0])||o.target;if(e instanceof i&&(null===(r=e.closest)||void 0===r?void 0:r.call(e,"button:not(.co-option-list__option), co-list-footer")))return}this.processKey(o.key)&&o.preventDefault()},this.onSearchInput=o=>{const t=o.target.value,i=!!this.term&&!t;this.term=t,this.activeIndex=-1,this.lastFillLen=-1,i&&this.takeSnapshot(),this.debounceTimer&&clearTimeout(this.debounceTimer),this.debounceTimer=setTimeout((()=>this.coSearch.emit(t)),this.searchDebounce)},this.onPtrMove=o=>{const t=this.ptrDrag;if(!t)return;if(!t.started){if(Math.abs(o.clientY-t.startY)<3)return;t.started=!0,this.dragKey=t.id,this.previewOrder=t.originOrder,this.el.style.userSelect="none",this.sortSnapshot.has(t.id)||this.applyPreview([...t.originOrder])}o.preventDefault();const i=this.previewOrder.length;t.desiredTop=Math.max(t.blockTop,Math.min(t.blockTop+(i-1)*t.pitch,o.clientY-t.grabDY)),this.positionLifted();const r=this.previewOrder.indexOf(t.id),e=Math.max(0,Math.min(i-1,Math.round((t.desiredTop-t.blockTop)/t.pitch)));if(e!==r&&-1!==r){const o=[...this.previewOrder];o.splice(e,0,o.splice(r,1)[0]),this.applyPreview(o)}},this.onPtrUp=()=>{const o=this.ptrDrag;if(this.removePtrListeners(),this.ptrDrag=void 0,!o||!o.started)return;const t=o=>{o.stopPropagation(),o.preventDefault()};if(window.addEventListener("click",t,!0),setTimeout((()=>window.removeEventListener("click",t,!0)),0),this.settleLifted(o),this.previewOrder.length&&this.previewOrder.join(" ")!==o.originOrder.join(" ")){const t=new Map(this.displaySnapshot.map((o=>[o._id,o])));this.coReorder.emit({value:this.previewOrder,item:t.get(o.id)})}this.previewOrder=[]},this.onPtrKey=o=>{var t;if("Escape"!==o.key||!this.ptrDrag)return;o.stopPropagation(),o.preventDefault();const i=this.ptrDrag;if(this.removePtrListeners(),this.ptrDrag=void 0,i.started){if(this.displaySnapshot!==i.originDisplay){this.pendingFlip={tops:this.captureRowTops(),movedId:i.id,spring:!0};const o=null===(t=this.el.shadowRoot)||void 0===t?void 0:t.querySelector(`.co-option-list__option[data-id="${CSS.escape(i.id)}"]`);o&&(o.style.transition="none",o.style.transform=""),this.displaySnapshot=i.originDisplay,this.sortSnapshot=i.originSort,this.dragKey="",this.el.style.userSelect=""}else this.settleLifted(i);this.previewOrder=[]}},this.handleRowDragEnd=()=>{this.resetDragState()},this.handleRowDragLeave=(o,t)=>{this.overKey!==t||o.currentTarget.contains(o.relatedTarget)||(this.overKey="")},this.disarmDrag=()=>{this.armedKey&&!this.dragKey&&(this.armedKey="")},this.onNativeScroll=o=>{const t=o.target;this.scrollTop=t.scrollTop,this.maybeLoadMore(t.scrollTop,t.clientHeight,t.scrollHeight)}}get parsedItems(){return h(this.items)}get selectedIds(){return function(o){if(!o)return[];try{const t=JSON.parse(o);return Array.isArray(t)?t:[o]}catch(t){return[o]}}(this.value)}get orderedItems(){return this.selectedFirst?function(o,t,i,r){var e;if(0===t.size)return o;const s=new Map(o.map((o=>[o._id,o]))),a=[];if(r)for(const i of o)t.has(i._id)&&a.push(i);else{const o=new Map(i.map((o=>[o._id,o])));for(const i of t){const t=null!==(e=s.get(i))&&void 0!==e?e:o.get(i);t&&a.push(t)}}const n=o.filter((o=>!t.has(o._id)));return[...a,...n]}(this.parsedItems,this.sortSnapshot,this.displaySnapshot,!!this.term):this.parsedItems}get effectiveHighlightTerm(){return this.highlightMatches?this.searchable?this.term:this.highlightTerm:""}componentWillLoad(){this.term=this.initialTerm||"",this.takeSnapshot(),this.autoHighlight&&(this.activeIndex=p(-1,1,this.orderedItems))}componentDidRender(){this.optionsEl&&!this.osInstance&&(this.osInstance=a(this.optionsEl,(o=>{this.scrollTop=o.scrollTop,this.maybeLoadMore(o.scrollTop,o.clientHeight,o.scrollHeight)}))),this.fillViewport(),this.runFlip(),this.positionLifted()}connectedCallback(){window.addEventListener("mouseup",this.disarmDrag)}disconnectedCallback(){var o;this.debounceTimer&&clearTimeout(this.debounceTimer),null===(o=this.osInstance)||void 0===o||o.destroy(),this.osInstance=void 0,window.removeEventListener("mouseup",this.disarmDrag),this.removePtrListeners()}onItemsChange(){this.autoHighlight?this.activeIndex=p(-1,1,this.orderedItems):this.activeIndex>=this.orderedItems.length&&(this.activeIndex=-1);const o=Math.max(0,this.orderedItems.length*b-272);this.scrollTop>this.orderedItems.length*b&&(this.scrollTop=o)}onValueChange(){var o;if(!this.selectedFirst)return;const t=this.activeIndex>=0?null===(o=this.orderedItems[this.activeIndex])||void 0===o?void 0:o._id:void 0;this.pendingFlip={tops:this.captureRowTops(),movedId:"",spring:!1},this.takeSnapshot(),this.activeIndex=t?this.orderedItems.findIndex((o=>o._id===t)):-1}async clearSearch(){this.debounceTimer&&clearTimeout(this.debounceTimer);const o=!!this.term;this.term="",this.activeIndex=-1,this.lastFillLen=-1,this.searchInputEl&&(this.searchInputEl.value=""),o&&this.takeSnapshot(),this.coSearch.emit("")}async snapshotOrder(){this.takeSnapshot()}async focusSearch(){var o,t;for(let i=0;i<20;i++){if(null===(o=this.searchInputEl)||void 0===o||o.focus(),this.searchInputEl&&(null===(t=this.el.shadowRoot)||void 0===t?void 0:t.activeElement)===this.searchInputEl)return;await new Promise((o=>requestAnimationFrame((()=>o()))))}}async scrollToSelected(){var o,t,i,r;const e=function(o,t){const i=new Set(t);return o.findIndex((o=>i.has(o._id)&&!o.disabled))}(this.orderedItems,this.selectedIds);if(-1!==e){this.activeIndex=e;for(let s=0;s<20;s++){const s=null!==(t=null===(o=this.osInstance)||void 0===o?void 0:o.elements().viewport)&&void 0!==t?t:this.optionsEl;if(s&&s.clientHeight>0){if(this.virtual){const o=e*b;let t=s.scrollTop;o<t?t=o:o+b>t+s.clientHeight&&(t=o+b-s.clientHeight),this.scrollTop=t,s.scrollTop=t}else null===(r=null===(i=this.el.shadowRoot)||void 0===i?void 0:i.getElementById(`co-optlist-${e}`))||void 0===r||r.scrollIntoView({block:"nearest"});return}await new Promise((o=>requestAnimationFrame((()=>o()))))}}}async handleKey(o){return this.processKey(o.key)}takeSnapshot(){this.sortSnapshot=new Set(this.selectedIds);const o=new Map;for(const t of h(this.selectedItems))o.set(t._id,t);for(const t of this.parsedItems)o.has(t._id)||o.set(t._id,t);this.displaySnapshot=this.selectedIds.map((t=>o.get(t))).filter(Boolean)}processKey(o){const t=this.orderedItems;switch(o){case"ArrowDown":return this.activeIndex=p(this.activeIndex,1,t),this.scrollActiveIntoView(),!0;case"ArrowUp":return this.activeIndex=p(this.activeIndex,-1,t),this.scrollActiveIntoView(),!0;case"Enter":{if(this.loading)return!0;const o=t[this.activeIndex];return!(!o||o.disabled||(this.pick(o),0))}default:return!1}}deselectItem(o){if(this.multiple){const t=this.selectedIds.filter((t=>t!==o._id));this.coChange.emit({value:t,item:o})}else this.coChange.emit({value:null,item:o})}pick(o){if(this.multiple){const t=this.selectedIds,i=t.indexOf(o._id)>=0?t.filter((t=>t!==o._id)):[...t,o._id];this.coChange.emit({value:i,item:o})}else this.coChange.emit({value:o._id,item:o})}get listDragActive(){return this.listReorderable&&!(this.reorderable&&this.selectedFirst)}dragOrderIds(){return this.orderedItems.map((o=>o._id))}handleRowDragStart(o,t){this.armedKey===t?(this.dragKey=t,o.dataTransfer&&(o.dataTransfer.effectAllowed="move",o.dataTransfer.setData("text/plain",t))):o.preventDefault()}handleRowDragOver(o,t){if(!this.dragKey||this.dragKey===t)return;o.preventDefault(),o.dataTransfer&&(o.dataTransfer.dropEffect="move"),this.overKey=t;const i=this.dragOrderIds();this.dropAfter=i.indexOf(this.dragKey)<i.indexOf(t)}applyPreview(o){this.pendingFlip={tops:this.captureRowTops(),movedId:this.dragKey,spring:!1};const t=new Map(this.orderedItems.map((o=>[o._id,o])));for(const o of this.displaySnapshot)t.has(o._id)||t.set(o._id,o);this.sortSnapshot=new Set(o),this.displaySnapshot=o.map((o=>t.get(o))).filter(Boolean),this.previewOrder=o}startPointerDrag(o,t){var i;if(0!==o.button||this.ptrDrag)return;const r=function(o,t){const i=new Set(t);return o.filter((o=>i.has(o._id))).map((o=>o._id))}(this.orderedItems,this.selectedIds);if(!r.includes(t))return;const e=o.currentTarget.closest(".co-option-list__option");if(!e)return;o.preventDefault(),o.stopPropagation();const s=e.getBoundingClientRect(),a=null===(i=this.el.shadowRoot)||void 0===i?void 0:i.querySelectorAll(".co-option-list__option[data-id]"),n=null==a?void 0:a[0],l=a&&a.length>=2?a[1].getBoundingClientRect().top-a[0].getBoundingClientRect().top:s.height||b,c=n?this.orderedItems.findIndex((o=>o._id===n.dataset.id)):0,d=n?n.getBoundingClientRect().top-Math.max(0,c)*l:s.top;this.ptrDrag={id:t,grabDY:o.clientY-s.top,blockTop:d,pitch:l,originOrder:r,originDisplay:this.displaySnapshot,originSort:this.sortSnapshot,desiredTop:s.top,startY:o.clientY,started:!1},window.addEventListener("pointermove",this.onPtrMove),window.addEventListener("pointerup",this.onPtrUp),window.addEventListener("keydown",this.onPtrKey,!0)}positionLifted(){var o;const t=this.ptrDrag;if(!t||!t.started)return;const i=null===(o=this.el.shadowRoot)||void 0===o?void 0:o.querySelector(`.co-option-list__option[data-id="${CSS.escape(t.id)}"]`);if(!i)return;const r=this.previewOrder.indexOf(t.id);if(-1===r)return;const e=t.blockTop+r*t.pitch;i.style.transition="none",i.style.transform=`translateY(${t.desiredTop-e}px) scale(1.02)`}settleLifted(o){var t;const i=null===(t=this.el.shadowRoot)||void 0===t?void 0:t.querySelector(`.co-option-list__option[data-id="${CSS.escape(o.id)}"]`),r=()=>{this.dragKey="",this.el.style.userSelect=""};i?(i.style.transition="transform var(--co-motion-duration-base) var(--co-motion-ease-spring)",i.style.transform="",i.addEventListener("transitionend",(()=>{i.style.transition="",r()}),{once:!0})):r()}removePtrListeners(){window.removeEventListener("pointermove",this.onPtrMove),window.removeEventListener("pointerup",this.onPtrUp),window.removeEventListener("keydown",this.onPtrKey,!0)}handleRowDrop(o,t){o.preventDefault(),o.stopPropagation();const i=this.dragKey,r=this.dragOrderIds();if(this.resetDragState(),i===t||!r.includes(i)||!r.includes(t))return;const e=new Map(this.orderedItems.map((o=>[o._id,o]))),s=function(o,t,i,r){return r(t)||r(i)?o:function(o,t,i){if(t===i)return o;const r=o.indexOf(t),e=o.indexOf(i);if(-1===r||-1===e)return o;const s=[...o];return s.splice(e,0,s.splice(r,1)[0]),s}(o,t,i)}(r,i,t,(o=>{var t;return!!(null===(t=e.get(o))||void 0===t?void 0:t.pinned)}));s!==r&&this.coListReorder.emit({value:s,item:e.get(i)})}captureRowTops(){var o;const t=new Map;return null===(o=this.el.shadowRoot)||void 0===o||o.querySelectorAll(".co-option-list__option[data-id]").forEach((o=>t.set(o.dataset.id,o.getBoundingClientRect().top))),t}runFlip(){var o,t,i;if(!this.pendingFlip)return;const{tops:r,movedId:e,spring:s}=this.pendingFlip;this.pendingFlip=void 0;const a=Array.from(null!==(t=null===(o=this.el.shadowRoot)||void 0===o?void 0:o.querySelectorAll(".co-option-list__option[data-id]"))&&void 0!==t?t:[]),n=(null===(i=this.ptrDrag)||void 0===i?void 0:i.started)?this.ptrDrag.id:null;for(const o of a)o.dataset.id!==n&&(o.style.transition="none",o.style.transform="");const l=[];for(const o of a){const t=o.dataset.id;if(t===n)continue;const i=r.get(t);if(void 0===i)continue;const a=i-o.getBoundingClientRect().top;a&&l.push({row:o,delta:a,spring:s&&t===e})}for(const{row:o,delta:t}of l)o.style.transform=`translateY(${t}px)`;for(const o of a){if(o.dataset.id===n)continue;const t=l.find((t=>t.row===o));t?(o.style.transition="transform var(--co-motion-duration-base) "+(t.spring?"var(--co-motion-ease-spring)":"var(--co-motion-ease-out)"),o.style.transform="",o.addEventListener("transitionend",(()=>{o.style.transition=""}),{once:!0})):o.style.transition=""}}resetDragState(){this.armedKey="",this.dragKey="",this.overKey="",this.dropAfter=!1}maybeLoadMore(o,t,i){if(this.loading)return;const{hasMore:r}=v(this.parsedItems.length,this.total,this.hasMore);r&&o+t>=i-40&&this.coLoadMore.emit()}fillViewport(){var o,t;const i=this.parsedItems.length;if(this.loading||0===i||i===this.lastFillLen)return;const{hasMore:r}=v(i,this.total,this.hasMore);if(!r)return;const e=null!==(t=null===(o=this.osInstance)||void 0===o?void 0:o.elements().viewport)&&void 0!==t?t:this.optionsEl;e&&0!==e.clientHeight&&e.scrollHeight-e.clientHeight<=40&&(this.lastFillLen=i,this.coLoadMore.emit())}scrollActiveIntoView(){requestAnimationFrame((()=>{var o,t;null===(t=null===(o=this.el.shadowRoot)||void 0===o?void 0:o.getElementById(`co-optlist-${this.activeIndex}`))||void 0===t||t.scrollIntoView({block:"nearest"})}))}renderLeading(o){return o.image||o.avatar?e("co-avatar",{class:"co-option-list__avatar",type:o.image?"image":"text",src:o.image,text:o.avatar,color:o.color,size:"xxs",shape:this.avatarShape}):o.color?e("span",{class:"co-option-list__dot",style:{backgroundColor:o.color}}):o.icon?e("co-icon",{name:o.icon,size:16,class:"co-option-list__icon"}):null}renderLabelText(o){const t=this.effectiveHighlightTerm,i=t?s(o,t):null;return i?i.map((o=>o.match?e("span",{class:"co-option-list__match"},o.text):o.text)):o}renderBadge(o){const t=e("span",{class:"co-option-list__badge",style:o.color?{backgroundColor:o.color,color:"var(--co-color-base-blanco, #fff)"}:void 0},o.label);return o.tooltip?e("co-tooltip",{class:"co-option-list__badge-tip",content:o.tooltip},t):t}renderRow(o,t,i){const r=i.includes(o._id),s=!this.listDragActive&&this.reorderable&&this.selectedFirst&&r&&!this.term,a=this.listDragActive&&!o.pinned&&!this.term;return e("div",{class:{"co-option-list__option":!0,"co-option-list__option--selected":r,"co-option-list__option--active":t===this.activeIndex,"co-option-list__option--disabled":!!o.disabled,"co-option-list__option--dragging":this.listDragActive&&this.dragKey===o._id,"co-option-list__option--lifted":!this.listDragActive&&this.dragKey===o._id,"co-option-list__option--drop-before":this.listDragActive&&this.overKey===o._id&&!this.dropAfter,"co-option-list__option--drop-after":this.listDragActive&&this.overKey===o._id&&this.dropAfter},key:o._id,id:`co-optlist-${t}`,"data-id":o._id,role:"option","aria-selected":r?"true":"false","aria-disabled":o.disabled?"true":"false",draggable:a&&this.armedKey===o._id,onClick:()=>!o.disabled&&this.pick(o),onMouseEnter:()=>{this.activeIndex=t},onDragStart:a?t=>this.handleRowDragStart(t,o._id):void 0,onDragOver:a?t=>this.handleRowDragOver(t,o._id):void 0,onDrop:a?t=>this.handleRowDrop(t,o._id):void 0,onDragEnd:a?this.handleRowDragEnd:void 0,onDragLeave:a?t=>this.handleRowDragLeave(t,o._id):void 0},(s||a)&&e("span",{class:"co-option-list__drag-handle",part:"drag-handle",title:"Drag to reorder",onMouseDown:a?()=>this.armedKey=o._id:void 0,onPointerDown:s?t=>this.startPointerDrag(t,o._id):void 0,onClick:o=>o.stopPropagation()},e("co-icon",{name:"dots-six-vertical",size:16})),this.renderLeading(o),e("div",{class:"co-option-list__text"},e("span",{class:"co-option-list__title"},e("span",{class:"co-option-list__label",style:o.labelColor?{color:o.labelColor,fontWeight:"600"}:void 0},this.renderLabelText(o.label)),o.suffix&&"end"!==this.suffixAlign&&e("span",{class:"co-option-list__suffix"},"- ",o.suffix),o.badge&&this.renderBadge(o.badge)),o.description&&e("span",{class:"co-option-list__desc"},o.description)),o.suffix&&"end"===this.suffixAlign&&e("span",{class:"co-option-list__suffix co-option-list__suffix--end"},o.suffix),this.pinnable&&e("button",{class:{"co-option-list__pin":!0,"co-option-list__pin--active":!!o.pinned},type:"button",tabIndex:-1,"aria-label":o.pinned?`Unpin ${o.label}`:`Pin ${o.label}`,"aria-pressed":o.pinned?"true":"false",onClick:t=>{t.stopPropagation(),this.coPinToggle.emit({item:o})}},e("co-icon",{name:"push-pin",size:16,weight:o.pinned?"fill":"regular"})),r&&this.removableItems&&this.multiple&&e("button",{class:"co-option-list__row-action",type:"button",tabIndex:-1,"aria-label":`Remove ${o.label}`,onClick:t=>{t.stopPropagation(),this.coRemoveItem.emit(o._id)}},e("co-icon",{name:"x-circle",size:16,weight:"fill"})),r&&!this.removableItems&&"deselect"===this.selectedAffordance&&e("button",{class:"co-option-list__row-action",type:"button",tabIndex:-1,"aria-label":`Deselect ${o.label}`,onClick:t=>{t.stopPropagation(),this.deselectItem(o)}},e("co-icon",{name:"x-circle",size:16,weight:"fill"})),r&&!this.removableItems&&"check"===this.selectedAffordance&&e("co-icon",{name:"check",size:16,class:"co-option-list__check"}))}renderVirtual(o,t){const{totalHeight:i,startIdx:r,endIdx:s,offsetY:a}=function(o,t){const i=t*b,r=Math.max(0,Math.floor(o/b)-3);return{totalHeight:i,startIdx:r,endIdx:Math.min(t,r+8+6),offsetY:r*b}}(this.scrollTop,o.length);return e("div",{class:"co-option-list__spacer",style:{height:`${i}px`,position:"relative"}},e("div",{style:{position:"absolute",top:`${a}px`,left:"0",right:"0"}},o.slice(r,s).map(((o,i)=>this.renderRow(o,r+i,t)))))}render(){const o=this.orderedItems,t=this.selectedIds,{hasMore:i,remaining:r}=v(this.parsedItems.length,this.total,this.hasMore),s=!!this.clearOptionLabel&&t.length>0;return e("div",{key:"93ec2aeb43a8f03e918eb068f683efdc93ca4db5",class:"co-option-list",onKeyDown:this.onRootKeyDown},this.searchable&&e("div",{key:"617640a5909cbb82f37168f19978be213b0de9e0",class:"co-option-list__search",part:"search"},e("co-icon",{key:"5e4c73aa4cb53d71e37b628936cb699eee656056",name:"magnifying-glass",size:16}),e("input",{key:"f9497413b2b8d72899051ee0d02f34411936ae8c",class:"co-option-list__search-input",type:"text",placeholder:this.searchPlaceholder,value:this.term,onInput:this.onSearchInput,ref:o=>this.searchInputEl=o,role:"combobox","aria-expanded":"true","aria-autocomplete":"list"})),e("div",{key:"06403a47d664e34d9fa0381affdb32b6d3b8eb56",class:"co-option-list__options",part:"options",role:"listbox","aria-multiselectable":this.multiple?"true":"false",ref:o=>this.optionsEl=o,onScroll:this.onNativeScroll},e("div",{key:"aa17f1da0c46d9df52a0e3f1257ebf385c1ba945",class:"co-option-list__inner"},s&&e("button",{key:"e88eb444c5b94ebb800e4385515aa13542b2682f",class:"co-option-list__clear-row",type:"button",onClick:()=>this.coClearSelection.emit()},e("co-icon",{key:"f1e332a87ba9d83fd2a22150939b135766731dc6",name:"x-circle",size:14}),e("span",{key:"26dca00c81dd651982955562fc3747aae88ba536"},this.clearOptionLabel)),this.loading&&0===o.length&&e("div",{key:"147ffc9fefed3524bfdd08ebfa36fb2e89ff4bb1",class:"co-option-list__loading"},e("co-loader",{key:"d4be765a87c8222b5747749fce7787788a4b0aca",size:"sm"})),!this.loading&&0===o.length&&e("div",{key:"f20612fb93140fff5463e2992e9beec1ccb1fda9",class:"co-option-list__empty"},e("co-icon",{key:"aa68b5891aae21c513a069e920ddae0378d0a736",name:"magnifying-glass",size:20}),e("span",{key:"2fa339d51962a1898493ba78febcd90d3dbf9310"},this.emptyMessage)),o.length>0&&this.virtual?this.renderVirtual(o,t):function(o){const t=[];let i,r=0;for(const e of o)e.group&&e.group!==i&&t.push({kind:"header",label:e.group}),i=e.group,t.push({kind:"item",item:e,index:r}),r++;return t}(o).map((o=>"header"===o.kind?e("div",{class:"co-option-list__group",role:"presentation"},o.label):this.renderRow(o.item,o.index,t))),this.loading&&o.length>0&&e("div",{key:"147e9bd6f1456284cd223e067b08979efb2cfe2c",class:"co-option-list__loading-more"},e("co-loader",{key:"6e5b5181d803579ba3370a63849f0462a0685165",size:"sm"})),!this.loading&&i&&r>0&&e("div",{key:"b90b8fce9a427371e3a7de24feb6fce6765dafe1",class:"co-option-list__more"},r," more results"))),e("slot",{key:"33d6641dc16188f572c70528d54553313b4f4afb",name:"footer"}))}get el(){return this}static get watchers(){return{items:[{onItemsChange:0}],value:[{onValueChange: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, 'Geist', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif)}.co-option-list{display:flex;flex-direction:column;min-width:0}.co-option-list__search{display:flex;align-items:center;gap:var(--co-spacing-sm, 6px);height:32px;box-sizing:border-box;margin:var(--co-spacing-md, 12px) var(--co-spacing-md, 12px) 0;padding:0 var(--co-spacing-sm2, 8px) 0 var(--co-spacing-xs, 4px);border:1px solid var(--co-semantic-border-subtle, rgba(31, 28, 27, 0.08));border-radius:var(--co-border-radius-xs, 8px);color:var(--co-semantic-text-muted, #888888)}.co-option-list__search:focus-within{border-color:var(--co-semantic-border-focus, rgba(31, 28, 27, 0.25))}.co-option-list__search co-icon{flex-shrink:0;width:24px;display:flex;align-items:center;justify-content:center;opacity:0.7}.co-option-list__search-input{flex:1;min-width:0;border:0;outline:none;background:transparent;padding:0;font-family:var(--co-font-family-primary, 'Geist', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif);font-size:var(--co-font-size-14, 14px);font-weight:500;letter-spacing:var(--co-font-letter-spacing-body, -0.03em);line-height:1;color:var(--co-semantic-text-default, #1f1c1b)}.co-option-list__search-input::placeholder{color:var(--co-semantic-text-muted, #888888)}.co-option-list__options{max-height:var(--co-option-list-max-height, 280px);overflow-y:auto;overflow-x:hidden;padding:var(--co-spacing-md, 12px)}.co-option-list__inner{display:flex;flex-direction:column;gap:var(--co-spacing-xxs, 2px);min-width:0}.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, 9999px);--os-handle-bg:var(--co-color-opacity-negro-16, rgba(31, 28, 27, 0.16));--os-handle-bg-hover:var(--co-color-opacity-negro-25, rgba(31, 28, 27, 0.25));--os-handle-bg-active:var(--co-color-opacity-negro-50, rgba(31, 28, 27, 0.5));--os-handle-min-size:24px}.co-option-list__option{display:flex;align-items:center;gap:var(--co-spacing-sm2, 8px);min-width:0;min-height:var(--co-option-list-item-min-height, 32px);box-sizing:border-box;padding:var(--co-option-list-item-padding-y, var(--co-spacing-xs, 4px)) var(--co-spacing-sm2, 8px) var(--co-option-list-item-padding-y, var(--co-spacing-xs, 4px)) var(--co-spacing-xs, 4px);border-radius:var(--co-border-radius-xs, 8px);cursor:pointer;font-size:var(--co-font-size-14, 14px);letter-spacing:var(--co-font-letter-spacing-body, -0.03em);color:var(--co-semantic-text-default, #1f1c1b);transition:background var(--co-motion-duration-fast) var(--co-motion-ease-out), opacity var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-option-list__spacer .co-option-list__option{height:32px;margin-bottom:var(--co-spacing-xxs, 2px)}.co-option-list__option--active{background:var(--co-semantic-surface-hover, rgba(31, 28, 27, 0.04))}.co-option-list__option--selected{background:var(--co-semantic-surface-hover, rgba(31, 28, 27, 0.04))}.co-option-list__option--disabled{opacity:0.5;cursor:not-allowed}.co-option-list__avatar,.co-option-list__icon{flex-shrink:0}.co-option-list__icon{margin:0 var(--co-spacing-xs, 4px)}.co-option-list__dot{flex-shrink:0;width:10px;height:10px;margin:0 7px;border-radius:var(--co-border-radius-full, 9999px)}.co-option-list__text{display:flex;flex-direction:column;gap:var(--co-option-list-text-gap, var(--co-spacing-xxs, 2px));flex:1;min-width:0}.co-option-list__title{display:flex;align-items:center;gap:var(--co-spacing-xs, 4px);min-width:0}.co-option-list__label{font-weight:400;line-height:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.co-option-list__suffix{color:var(--co-semantic-text-secondary, #585858);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex-shrink:1}.co-option-list__suffix--end{flex-shrink:0;margin-left:auto;text-align:right;white-space:nowrap;font-size:var(--co-font-size-13, 13px);color:var(--co-semantic-text-default, #1f1c1b);font-variant-numeric:tabular-nums}.co-option-list__badge{flex-shrink:0;padding:0 var(--co-spacing-xs, 4px);border-radius:var(--co-border-radius-full, 9999px);background:var(--co-semantic-surface-hover, rgba(31, 28, 27, 0.04));color:var(--co-semantic-text-default, #1f1c1b);font-size:var(--co-font-size-10, 10px);font-weight:600;line-height:16px}.co-option-list__badge-tip{display:inline-flex;align-items:center;flex-shrink:0}.co-option-list__desc{font-size:var(--co-font-size-12, 12px);color:var(--co-semantic-text-muted, #888888);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.co-option-list__match{color:var(--co-color-primary-azul, #2563eb);font-weight:700}.co-option-list__check{flex-shrink:0;color:var(--co-semantic-text-default, #1f1c1b)}.co-option-list__row-action{flex-shrink:0;display:inline-flex;align-items:center;border:0;background:transparent;padding:0;cursor:pointer;color:var(--co-semantic-text-muted, #888888);transition:color var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-option-list__row-action:hover{color:var(--co-semantic-text-default, #1f1c1b)}.co-option-list__pin{flex-shrink:0;display:flex;align-items:center;justify-content:center;border:0;padding:var(--co-spacing-xxs, 2px);background:transparent;cursor:pointer;border-radius:var(--co-border-radius-xxs, 4px);color:var(--co-semantic-text-muted, #888888)}.co-option-list__pin:hover{color:var(--co-semantic-text-default, #1f1c1b)}.co-option-list__pin--active{color:var(--co-semantic-text-default, #1f1c1b)}.co-option-list__drag-handle{display:inline-flex;align-items:center;cursor:grab;color:var(--co-semantic-text-muted);margin-right:var(--co-spacing-xs);flex:0 0 auto}.co-option-list__drag-handle:active{cursor:grabbing}.co-option-list__drag-handle{touch-action:none}.co-option-list__option--dragging{opacity:0.5}.co-option-list__option--lifted{position:relative;z-index:2;background:var(--co-semantic-surface-page, #fff);box-shadow:var(--co-shadow-lg);cursor:grabbing}.co-option-list__option--drop-before{box-shadow:inset 0 2px 0 0 var(--co-semantic-border-focus)}.co-option-list__option--drop-after{box-shadow:inset 0 -2px 0 0 var(--co-semantic-border-focus)}.co-option-list__group{padding:var(--co-spacing-sm2, 8px) var(--co-spacing-xs, 4px) var(--co-spacing-xs, 4px);font-family:var(--co-font-family-mono, 'Geist Mono', 'SFMono-Regular', Consolas, 'Liberation Mono', monospace);font-size:var(--co-font-size-10, 10px);font-weight:400;text-transform:uppercase;letter-spacing:var(--co-font-letter-spacing-overline, 0.08em);line-height:1.1;color:var(--co-semantic-text-default, #1f1c1b)}.co-option-list__clear-row{display:flex;align-items:center;gap:var(--co-spacing-sm2, 8px);width:100%;min-height:32px;box-sizing:border-box;border:0;background:transparent;padding:var(--co-spacing-xs, 4px) var(--co-spacing-sm2, 8px);border-radius:var(--co-border-radius-xs, 8px);cursor:pointer;text-align:left;font-family:var(--co-font-family-primary, 'Geist', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif);font-size:var(--co-font-size-14, 14px);letter-spacing:var(--co-font-letter-spacing-body, -0.03em);color:var(--co-semantic-text-secondary, #585858)}.co-option-list__clear-row:hover{background:var(--co-semantic-surface-hover, rgba(31, 28, 27, 0.04))}.co-option-list__loading,.co-option-list__loading-more{display:flex;justify-content:center;padding:var(--co-spacing-sm, 6px)}.co-option-list__empty{display:flex;align-items:center;gap:var(--co-spacing-sm2, 8px);padding:var(--co-spacing-md, 12px) var(--co-spacing-xs, 4px);font-size:var(--co-font-size-14, 14px);color:var(--co-semantic-text-muted, #888888)}.co-option-list__more{padding:var(--co-spacing-xs, 4px) var(--co-spacing-sm, 6px);font-size:var(--co-font-size-12, 12px);color:var(--co-semantic-text-muted, #888888);text-align:center}.co-option-list__option:focus-visible,.co-option-list__clear-row:focus-visible{outline:2px solid var(--co-semantic-border-focus, rgba(31, 28, 27, 0.25));outline-offset:-2px}"}},[257,"co-option-list",{items:[1],value:[1],selectedItems:[1,"selected-items"],multiple:[4],selectedFirst:[4,"selected-first"],selectedAffordance:[1,"selected-affordance"],removableItems:[4,"removable-items"],reorderable:[4],pinnable:[4],listReorderable:[4,"list-reorderable"],searchable:[516],searchPlaceholder:[1,"search-placeholder"],searchDebounce:[2,"search-debounce"],initialTerm:[1,"initial-term"],loading:[4],total:[2],hasMore:[4,"has-more"],emptyMessage:[1,"empty-message"],clearOptionLabel:[1,"clear-option-label"],virtual:[516],highlightMatches:[4,"highlight-matches"],highlightTerm:[1,"highlight-term"],avatarShape:[1,"avatar-shape"],suffixAlign:[513,"suffix-align"],autoHighlight:[4,"auto-highlight"],term:[32],activeIndex:[32],scrollTop:[32],armedKey:[32],dragKey:[32],overKey:[32],dropAfter:[32],displaySnapshot:[32],clearSearch:[64],snapshotOrder:[64],focusSearch:[64],scrollToSelected:[64],handleKey:[64]},void 0,{items:[{onItemsChange:0}],value:[{onValueChange:0}]}]);function g(){"undefined"!=typeof customElements&&["co-option-list","co-avatar","co-icon","co-loader","co-tooltip"].forEach((t=>{switch(t){case"co-option-list":customElements.get(o(t))||customElements.define(o(t),f);break;case"co-avatar":customElements.get(o(t))||n();break;case"co-icon":customElements.get(o(t))||l();break;case"co-loader":customElements.get(o(t))||c();break;case"co-tooltip":customElements.get(o(t))||d()}}))}g();export{f as C,g as d}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as r,p as o,H as e,c as a,h as t}from"./index.js";import{d as s,a as c}from"./p-CBTGN490.js";import{s as i}from"./p-CBX_oabB.js";import{d as n}from"./p-DNJAIVfI.js";import{d}from"./p-BH184F0X.js";const l=o(class extends e{constructor(r){super(),!1!==r&&this.__registerHost(),this.__attachShadow(),this.coClose=a(this,"coClose",7),this.coOpen=a(this,"coOpen",7),this.coAfterOpen=a(this,"coAfterOpen",7),this.coAfterClose=a(this,"coAfterClose",7),this.open=!1,this.position="right",this.size="md",this.heading="",this.description="",this.icon="",this.closable=!0,this.closeOnOverlay=!0,this.closeOnEscape=!0,this.modeless=!1,this.loading=!1,this.hasFooter=!1,this.hasTabs=!1,this.hasHeaderSlot=!1,this.handleFooterSlotChange=r=>{this.hasFooter=i(r)},this.handleTabsSlotChange=r=>{this.hasTabs=i(r)},this.handleHeaderSlotChange=r=>{this.hasHeaderSlot=i(r)},this.handleOverlayClose=()=>{this.closeOnOverlay&&this.coClose.emit()},this.handleCloseClick=()=>{this.coClose.emit()},this.stopPropagation=r=>{r.stopPropagation()},this.handleTransitionEnd=r=>{if(r.target!==this.asideEl)return;const o=c(r.propertyName,this.open,"transform");"after-open"===o?this.coAfterOpen.emit():"after-close"===o&&this.coAfterClose.emit()},this.promoteModeless=r=>{r&&(this.asideEl=r);const o=this.asideEl;if(this.modeless&&o&&"function"==typeof o.showPopover)try{o.matches(":popover-open")||o.showPopover()}catch(r){}}}get labelledBy(){return this.hasHeaderSlot?"co-drawer-header-content":this.heading?"co-drawer-heading":void 0}onOpenChange(r,o){r&&!o&&this.coOpen.emit()}handleKey(r){this.open&&this.closeOnEscape&&"Escape"===r.key&&(this.modeless&&document.querySelector("co-drawer[open]:not([modeless]), co-modal[open]")||this.coClose.emit())}componentDidLoad(){this.promoteModeless()}render(){const r=t("aside",{class:{"co-drawer":!0,"co-sq-elevation":!0,"co-sq-elevation-fallback":!0,"co-drawer--open":this.open,"co-drawer--modeless":this.modeless,[`co-drawer--${this.position}`]:!0,[`co-drawer--${this.size}`]:!0},popover:this.modeless?"manual":void 0,ref:this.promoteModeless,part:"drawer",role:"dialog","aria-modal":this.modeless?"false":"true","aria-labelledby":this.labelledBy,onClick:this.stopPropagation,onTransitionEnd:this.handleTransitionEnd},t("div",{class:"co-drawer__card co-sq-clip",part:"card"},t("header",{class:"co-drawer__header",part:"header"},t("div",{class:"co-drawer__header-content",id:"co-drawer-header-content"},t("slot",{name:"header",onSlotchange:this.handleHeaderSlotChange},t("div",{class:"co-drawer__heading-row"},this.icon&&t("co-icon",{name:this.icon,size:20,class:"co-drawer__icon"}),t("h2",{class:"co-drawer__heading",id:"co-drawer-heading"},this.heading)),this.description&&t("p",{class:"co-drawer__description"},this.description))),this.closable&&t("button",{class:"co-drawer__close",type:"button","aria-label":"Close",onClick:this.handleCloseClick},t("co-icon",{name:"x",size:20}))),t("div",{class:{"co-drawer__tabs":!0,"co-drawer__tabs--empty":!this.hasTabs},part:"tabs"},t("slot",{name:"tabs",onSlotchange:this.handleTabsSlotChange})),t("div",{class:"co-drawer__body",part:"body"},t("slot",null),t("co-loader",{overlay:!0,visible:this.loading,part:"loader"})),t("footer",{class:{"co-drawer__footer":!0,"co-drawer__footer--empty":!this.hasFooter},part:"footer"},t("slot",{name:"footer",onSlotchange:this.handleFooterSlotChange}))));return this.modeless?r:t("co-overlay",{open:this.open,onCoClose:this.handleOverlayClose},r)}get el(){return this}static get watchers(){return{open:[{onOpenChange:0}]}}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-drawer{position:fixed;display:flex;flex-direction:column;font-family:var(--co-font-family-primary);transition:transform var(--co-motion-duration-slow) var(--co-motion-ease-in-out);will-change:transform;z-index:1;contain:layout;--co-drawer-r:var(--co-shell-r, var(--co-border-radius-md));--co-sq-r:var(--co-drawer-r);--co-sq-shadow:0 1px 4px rgba(31, 28, 27, 0.06), 0 10px 56px rgba(31, 28, 27, 0.12);--co-sq-drop-shadow:drop-shadow(0 1px 2px rgba(31, 28, 27, 0.06)) drop-shadow(0 10px 28px rgba(31, 28, 27, 0.12))}.co-drawer--right{top:0;right:0;margin:6px;height:100vh;height:-webkit-fill-available;transform:translateX(calc(100% + 12px))}.co-drawer--right.co-drawer--open{transform:translateX(0)}.co-drawer--left{top:0;left:0;margin:6px;height:100vh;height:-webkit-fill-available;transform:translateX(calc(-100% - 12px))}.co-drawer--left.co-drawer--open{transform:translateX(0)}.co-drawer--bottom{bottom:0;left:0;right:0;margin:6px;width:auto;transform:translateY(calc(100% + 12px))}.co-drawer--bottom.co-drawer--open{transform:translateY(0)}.co-drawer--right.co-drawer--sm,.co-drawer--left.co-drawer--sm{width:400px;max-width:100vw}.co-drawer--right.co-drawer--md,.co-drawer--left.co-drawer--md{width:520px;max-width:100vw}.co-drawer--right.co-drawer--lg,.co-drawer--left.co-drawer--lg{width:672px;max-width:100vw}.co-drawer--right.co-drawer--xl,.co-drawer--left.co-drawer--xl{width:960px;max-width:100vw}.co-drawer--right.co-drawer--full,.co-drawer--left.co-drawer--full{width:100vw}.co-drawer--bottom.co-drawer--sm{height:40vh}.co-drawer--bottom.co-drawer--md{height:60vh}.co-drawer--bottom.co-drawer--lg{height:80vh}.co-drawer--bottom.co-drawer--xl{height:95vh}.co-drawer--bottom.co-drawer--full{height:100vh}.co-drawer__card{flex:1;min-height:0;display:flex;flex-direction:column;background:var(--co-semantic-surface-page)}.co-drawer__header{display:flex;align-items:center;gap:var(--co-spacing-md);padding:var(--co-spacing-lg) var(--co-spacing-xl);border-bottom:1px solid var(--co-semantic-border-default);flex-shrink:0}.co-drawer__header-content{flex:1;min-width:0}.co-drawer__heading-row{display:flex;align-items:center;gap:var(--co-spacing-sm, 8px)}.co-drawer__icon{flex-shrink:0;color:var(--co-semantic-text-secondary)}.co-drawer__heading{margin:0;font-size:var(--co-font-size-18);font-weight:600;color:var(--co-semantic-text-default);line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.co-drawer__description{margin:var(--co-spacing-xs) 0 0;font-size:var(--co-font-size-13, 13px);font-weight:400;color:var(--co-semantic-text-muted);line-height:1.4}.co-drawer__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);transition:background var(--co-motion-duration-fast) var(--co-motion-ease-out);flex-shrink:0}.co-drawer__close:hover{background:var(--co-semantic-surface-hover)}.co-drawer__close:focus-visible{outline:2px solid var(--co-color-primary-azul);outline-offset:2px}.co-drawer__tabs{flex-shrink:0;border-bottom:1px solid var(--co-semantic-border-default)}.co-drawer__tabs--empty{display:none}.co-drawer__body{flex:1;overflow-y:auto;overscroll-behavior:contain;padding:var(--co-spacing-xl);position:relative}.co-drawer__body{scrollbar-width:thin;scrollbar-color:transparent transparent}.co-drawer__body:hover{scrollbar-color:var(--co-color-opacity-negro-16) transparent}.co-drawer__body::-webkit-scrollbar{width:6px}.co-drawer__body::-webkit-scrollbar-track{background:transparent}.co-drawer__body::-webkit-scrollbar-thumb{background:transparent;border-radius:9999px}.co-drawer__body:hover::-webkit-scrollbar-thumb{background:var(--co-color-opacity-negro-16)}.co-drawer__body:hover::-webkit-scrollbar-thumb:hover{background:var(--co-color-opacity-negro-25)}.co-drawer__body:hover::-webkit-scrollbar-thumb:active{background:var(--co-color-opacity-negro-50)}.co-drawer__footer{display:flex;justify-content:flex-end;align-items:center;gap:var(--co-spacing-md);padding:var(--co-spacing-lg) var(--co-spacing-xl);border-top:1px solid var(--co-semantic-border-default);flex-shrink:0}.co-drawer__footer--empty{display:none}@media (max-width: 600px){.co-drawer--right,.co-drawer--left{width:100vw !important}}.co-drawer--modeless{z-index:1000;border:0;padding:0;background:transparent}.co-drawer--modeless.co-drawer--right{left:auto;bottom:auto}.co-drawer--modeless.co-drawer--left{right:auto;bottom:auto}.co-drawer--modeless.co-drawer--bottom{top:auto}'}},[257,"co-drawer",{open:[1540],position:[513],size:[513],heading:[1],description:[1],icon:[1],closable:[4],closeOnOverlay:[4,"close-on-overlay"],closeOnEscape:[4,"close-on-escape"],modeless:[516],loading:[4],hasFooter:[32],hasTabs:[32],hasHeaderSlot:[32]},[[4,"keydown","handleKey"]],{open:[{onOpenChange:0}]}]);function h(){"undefined"!=typeof customElements&&["co-drawer","co-icon","co-loader","co-overlay"].forEach((o=>{switch(o){case"co-drawer":customElements.get(r(o))||customElements.define(r(o),l);break;case"co-icon":customElements.get(r(o))||n();break;case"co-loader":customElements.get(r(o))||d();break;case"co-overlay":customElements.get(r(o))||s()}}))}h();export{l as C,h as d}
|
|
1
|
+
import{t as r,p as o,H as e,c as a,h as t}from"./index.js";import{d as s,a as c}from"./p-BJh68Jqe.js";import{s as i}from"./p-CBX_oabB.js";import{d as n}from"./p-DNJAIVfI.js";import{d}from"./p-BH184F0X.js";const l=o(class extends e{constructor(r){super(),!1!==r&&this.__registerHost(),this.__attachShadow(),this.coClose=a(this,"coClose",7),this.coOpen=a(this,"coOpen",7),this.coAfterOpen=a(this,"coAfterOpen",7),this.coAfterClose=a(this,"coAfterClose",7),this.open=!1,this.position="right",this.size="md",this.heading="",this.description="",this.icon="",this.closable=!0,this.closeOnOverlay=!0,this.closeOnEscape=!0,this.modeless=!1,this.loading=!1,this.hasFooter=!1,this.hasTabs=!1,this.hasHeaderSlot=!1,this.handleFooterSlotChange=r=>{this.hasFooter=i(r)},this.handleTabsSlotChange=r=>{this.hasTabs=i(r)},this.handleHeaderSlotChange=r=>{this.hasHeaderSlot=i(r)},this.handleOverlayClose=()=>{this.closeOnOverlay&&this.coClose.emit()},this.handleCloseClick=()=>{this.coClose.emit()},this.stopPropagation=r=>{r.stopPropagation()},this.handleTransitionEnd=r=>{if(r.target!==this.asideEl)return;const o=c(r.propertyName,this.open,"transform");"after-open"===o?this.coAfterOpen.emit():"after-close"===o&&this.coAfterClose.emit()},this.promoteModeless=r=>{r&&(this.asideEl=r);const o=this.asideEl;if(this.modeless&&o&&"function"==typeof o.showPopover)try{o.matches(":popover-open")||o.showPopover()}catch(r){}}}get labelledBy(){return this.hasHeaderSlot?"co-drawer-header-content":this.heading?"co-drawer-heading":void 0}onOpenChange(r,o){r&&!o&&this.coOpen.emit()}handleKey(r){this.open&&this.closeOnEscape&&"Escape"===r.key&&(this.modeless&&document.querySelector("co-drawer[open]:not([modeless]), co-modal[open]")||this.coClose.emit())}componentDidLoad(){this.promoteModeless()}render(){const r=t("aside",{class:{"co-drawer":!0,"co-sq-elevation":!0,"co-sq-elevation-fallback":!0,"co-drawer--open":this.open,"co-drawer--modeless":this.modeless,[`co-drawer--${this.position}`]:!0,[`co-drawer--${this.size}`]:!0},popover:this.modeless?"manual":void 0,ref:this.promoteModeless,part:"drawer",role:"dialog","aria-modal":this.modeless?"false":"true","aria-labelledby":this.labelledBy,onClick:this.stopPropagation,onTransitionEnd:this.handleTransitionEnd},t("div",{class:"co-drawer__card co-sq-clip",part:"card"},t("header",{class:"co-drawer__header",part:"header"},t("div",{class:"co-drawer__header-content",id:"co-drawer-header-content"},t("slot",{name:"header",onSlotchange:this.handleHeaderSlotChange},t("div",{class:"co-drawer__heading-row"},this.icon&&t("co-icon",{name:this.icon,size:20,class:"co-drawer__icon"}),t("h2",{class:"co-drawer__heading",id:"co-drawer-heading"},this.heading)),this.description&&t("p",{class:"co-drawer__description"},this.description))),this.closable&&t("button",{class:"co-drawer__close",type:"button","aria-label":"Close",onClick:this.handleCloseClick},t("co-icon",{name:"x",size:20}))),t("div",{class:{"co-drawer__tabs":!0,"co-drawer__tabs--empty":!this.hasTabs},part:"tabs"},t("slot",{name:"tabs",onSlotchange:this.handleTabsSlotChange})),t("div",{class:"co-drawer__body",part:"body"},t("slot",null),t("co-loader",{overlay:!0,visible:this.loading,part:"loader"})),t("footer",{class:{"co-drawer__footer":!0,"co-drawer__footer--empty":!this.hasFooter},part:"footer"},t("slot",{name:"footer",onSlotchange:this.handleFooterSlotChange}))));return this.modeless?r:t("co-overlay",{open:this.open,onCoClose:this.handleOverlayClose},r)}get el(){return this}static get watchers(){return{open:[{onOpenChange:0}]}}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-drawer{position:fixed;display:flex;flex-direction:column;font-family:var(--co-font-family-primary);transition:transform var(--co-motion-duration-slow) var(--co-motion-ease-in-out);will-change:transform;z-index:1;contain:layout;--co-drawer-r:var(--co-shell-r, var(--co-border-radius-md));--co-sq-r:var(--co-drawer-r);--co-sq-shadow:0 1px 4px rgba(31, 28, 27, 0.06), 0 10px 56px rgba(31, 28, 27, 0.12);--co-sq-drop-shadow:drop-shadow(0 1px 2px rgba(31, 28, 27, 0.06)) drop-shadow(0 10px 28px rgba(31, 28, 27, 0.12))}.co-drawer--right{top:0;right:0;margin:6px;height:100vh;height:-webkit-fill-available;transform:translateX(calc(100% + 12px))}.co-drawer--right.co-drawer--open{transform:translateX(0)}.co-drawer--left{top:0;left:0;margin:6px;height:100vh;height:-webkit-fill-available;transform:translateX(calc(-100% - 12px))}.co-drawer--left.co-drawer--open{transform:translateX(0)}.co-drawer--bottom{bottom:0;left:0;right:0;margin:6px;width:auto;transform:translateY(calc(100% + 12px))}.co-drawer--bottom.co-drawer--open{transform:translateY(0)}.co-drawer--right.co-drawer--sm,.co-drawer--left.co-drawer--sm{width:400px;max-width:100vw}.co-drawer--right.co-drawer--md,.co-drawer--left.co-drawer--md{width:520px;max-width:100vw}.co-drawer--right.co-drawer--lg,.co-drawer--left.co-drawer--lg{width:672px;max-width:100vw}.co-drawer--right.co-drawer--xl,.co-drawer--left.co-drawer--xl{width:960px;max-width:100vw}.co-drawer--right.co-drawer--full,.co-drawer--left.co-drawer--full{width:100vw}.co-drawer--bottom.co-drawer--sm{height:40vh}.co-drawer--bottom.co-drawer--md{height:60vh}.co-drawer--bottom.co-drawer--lg{height:80vh}.co-drawer--bottom.co-drawer--xl{height:95vh}.co-drawer--bottom.co-drawer--full{height:100vh}.co-drawer__card{flex:1;min-height:0;display:flex;flex-direction:column;background:var(--co-semantic-surface-page)}.co-drawer__header{display:flex;align-items:center;gap:var(--co-spacing-md);padding:var(--co-spacing-lg) var(--co-spacing-xl);border-bottom:1px solid var(--co-semantic-border-default);flex-shrink:0}.co-drawer__header-content{flex:1;min-width:0}.co-drawer__heading-row{display:flex;align-items:center;gap:var(--co-spacing-sm, 8px)}.co-drawer__icon{flex-shrink:0;color:var(--co-semantic-text-secondary)}.co-drawer__heading{margin:0;font-size:var(--co-font-size-18);font-weight:600;color:var(--co-semantic-text-default);line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.co-drawer__description{margin:var(--co-spacing-xs) 0 0;font-size:var(--co-font-size-13, 13px);font-weight:400;color:var(--co-semantic-text-muted);line-height:1.4}.co-drawer__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);transition:background var(--co-motion-duration-fast) var(--co-motion-ease-out);flex-shrink:0}.co-drawer__close:hover{background:var(--co-semantic-surface-hover)}.co-drawer__close:focus-visible{outline:2px solid var(--co-color-primary-azul);outline-offset:2px}.co-drawer__tabs{flex-shrink:0;border-bottom:1px solid var(--co-semantic-border-default)}.co-drawer__tabs--empty{display:none}.co-drawer__body{flex:1;overflow-y:auto;overscroll-behavior:contain;padding:var(--co-spacing-xl);position:relative}.co-drawer__body{scrollbar-width:thin;scrollbar-color:transparent transparent}.co-drawer__body:hover{scrollbar-color:var(--co-color-opacity-negro-16) transparent}.co-drawer__body::-webkit-scrollbar{width:6px}.co-drawer__body::-webkit-scrollbar-track{background:transparent}.co-drawer__body::-webkit-scrollbar-thumb{background:transparent;border-radius:9999px}.co-drawer__body:hover::-webkit-scrollbar-thumb{background:var(--co-color-opacity-negro-16)}.co-drawer__body:hover::-webkit-scrollbar-thumb:hover{background:var(--co-color-opacity-negro-25)}.co-drawer__body:hover::-webkit-scrollbar-thumb:active{background:var(--co-color-opacity-negro-50)}.co-drawer__footer{display:flex;justify-content:flex-end;align-items:center;gap:var(--co-spacing-md);padding:var(--co-spacing-lg) var(--co-spacing-xl);border-top:1px solid var(--co-semantic-border-default);flex-shrink:0}.co-drawer__footer--empty{display:none}@media (max-width: 600px){.co-drawer--right,.co-drawer--left{width:100vw !important}}.co-drawer--modeless{z-index:1000;border:0;padding:0;background:transparent}.co-drawer--modeless.co-drawer--right{left:auto;bottom:auto}.co-drawer--modeless.co-drawer--left{right:auto;bottom:auto}.co-drawer--modeless.co-drawer--bottom{top:auto}'}},[257,"co-drawer",{open:[1540],position:[513],size:[513],heading:[1],description:[1],icon:[1],closable:[4],closeOnOverlay:[4,"close-on-overlay"],closeOnEscape:[4,"close-on-escape"],modeless:[516],loading:[4],hasFooter:[32],hasTabs:[32],hasHeaderSlot:[32]},[[4,"keydown","handleKey"]],{open:[{onOpenChange:0}]}]);function h(){"undefined"!=typeof customElements&&["co-drawer","co-icon","co-loader","co-overlay"].forEach((o=>{switch(o){case"co-drawer":customElements.get(r(o))||customElements.define(r(o),l);break;case"co-icon":customElements.get(r(o))||n();break;case"co-loader":customElements.get(r(o))||d();break;case"co-overlay":customElements.get(r(o))||s()}}))}h();export{l as C,h as d}
|
|
@@ -558,6 +558,25 @@ const CoOptionList = class {
|
|
|
558
558
|
}
|
|
559
559
|
// ── Métodos públicos ───────────────────────────────────────
|
|
560
560
|
/** Re-toma el snapshot selected-first. El host la llama al abrir su panel. */
|
|
561
|
+
/**
|
|
562
|
+
* Vacía el buscador (texto, término y cualquier coSearch en vuelo) y emite
|
|
563
|
+
* `coSearch('')`. Para hosts que reabren el panel (co-popover): el término
|
|
564
|
+
* vive ACÁ, así que sin esto la búsqueda anterior reaparecía con la lista del
|
|
565
|
+
* host ya sin filtrar.
|
|
566
|
+
*/
|
|
567
|
+
async clearSearch() {
|
|
568
|
+
if (this.debounceTimer)
|
|
569
|
+
clearTimeout(this.debounceTimer);
|
|
570
|
+
const hadTerm = !!this.term;
|
|
571
|
+
this.term = '';
|
|
572
|
+
this.activeIndex = -1;
|
|
573
|
+
this.lastFillLen = -1;
|
|
574
|
+
if (this.searchInputEl)
|
|
575
|
+
this.searchInputEl.value = '';
|
|
576
|
+
if (hadTerm)
|
|
577
|
+
this.takeSnapshot();
|
|
578
|
+
this.coSearch.emit('');
|
|
579
|
+
}
|
|
561
580
|
async snapshotOrder() {
|
|
562
581
|
this.takeSnapshot();
|
|
563
582
|
}
|
|
@@ -989,11 +1008,11 @@ const CoOptionList = class {
|
|
|
989
1008
|
const selectedIds = this.selectedIds;
|
|
990
1009
|
const { hasMore, remaining } = deriveMore(this.parsedItems.length, this.total, this.hasMore);
|
|
991
1010
|
const showClear = !!this.clearOptionLabel && selectedIds.length > 0;
|
|
992
|
-
return (h("div", { key: '
|
|
1011
|
+
return (h("div", { key: '93ec2aeb43a8f03e918eb068f683efdc93ca4db5', class: "co-option-list", onKeyDown: this.onRootKeyDown }, this.searchable && (h("div", { key: '617640a5909cbb82f37168f19978be213b0de9e0', class: "co-option-list__search", part: "search" }, h("co-icon", { key: '5e4c73aa4cb53d71e37b628936cb699eee656056', name: "magnifying-glass", size: 16 }), h("input", { key: 'f9497413b2b8d72899051ee0d02f34411936ae8c', class: "co-option-list__search-input", type: "text", placeholder: this.searchPlaceholder, value: this.term, onInput: this.onSearchInput, ref: (el) => (this.searchInputEl = el), role: "combobox", "aria-expanded": "true", "aria-autocomplete": "list" }))), h("div", { key: '06403a47d664e34d9fa0381affdb32b6d3b8eb56', class: "co-option-list__options", part: "options", role: "listbox", "aria-multiselectable": this.multiple ? 'true' : 'false', ref: (el) => (this.optionsEl = el), onScroll: this.onNativeScroll }, h("div", { key: 'aa17f1da0c46d9df52a0e3f1257ebf385c1ba945', class: "co-option-list__inner" }, showClear && (h("button", { key: 'e88eb444c5b94ebb800e4385515aa13542b2682f', class: "co-option-list__clear-row", type: "button", onClick: () => this.coClearSelection.emit() }, h("co-icon", { key: 'f1e332a87ba9d83fd2a22150939b135766731dc6', name: "x-circle", size: 14 }), h("span", { key: '26dca00c81dd651982955562fc3747aae88ba536' }, this.clearOptionLabel))), this.loading && items.length === 0 && (h("div", { key: '147ffc9fefed3524bfdd08ebfa36fb2e89ff4bb1', class: "co-option-list__loading" }, h("co-loader", { key: 'd4be765a87c8222b5747749fce7787788a4b0aca', size: "sm" }))), !this.loading && items.length === 0 && (h("div", { key: 'f20612fb93140fff5463e2992e9beec1ccb1fda9', class: "co-option-list__empty" }, h("co-icon", { key: 'aa68b5891aae21c513a069e920ddae0378d0a736', name: "magnifying-glass", size: 20 }), h("span", { key: '2fa339d51962a1898493ba78febcd90d3dbf9310' }, this.emptyMessage))), items.length > 0 && this.virtual
|
|
993
1012
|
? this.renderVirtual(items, selectedIds)
|
|
994
1013
|
: buildRows(items).map((row) => row.kind === 'header'
|
|
995
1014
|
? h("div", { class: "co-option-list__group", role: "presentation" }, row.label)
|
|
996
|
-
: this.renderRow(row.item, row.index, selectedIds)), this.loading && items.length > 0 && (h("div", { key: '
|
|
1015
|
+
: this.renderRow(row.item, row.index, selectedIds)), this.loading && items.length > 0 && (h("div", { key: '147e9bd6f1456284cd223e067b08979efb2cfe2c', class: "co-option-list__loading-more" }, h("co-loader", { key: '6e5b5181d803579ba3370a63849f0462a0685165', size: "sm" }))), !this.loading && hasMore && remaining > 0 && (h("div", { key: 'b90b8fce9a427371e3a7de24feb6fce6765dafe1', class: "co-option-list__more" }, remaining, " more results")))), h("slot", { key: '33d6641dc16188f572c70528d54553313b4f4afb', name: "footer" })));
|
|
997
1016
|
}
|
|
998
1017
|
get el() { return getElement(this); }
|
|
999
1018
|
static get watchers() { return {
|
|
@@ -154,6 +154,13 @@ const CoNumberField = class {
|
|
|
154
154
|
*/
|
|
155
155
|
this.hideControls = false;
|
|
156
156
|
this.focused = false;
|
|
157
|
+
/**
|
|
158
|
+
* El usuario VACIÓ un campo no-clearable (borró todo el texto). Sin clearable
|
|
159
|
+
* el vacío no se emite mientras se tipea (sigue editando), pero al salir
|
|
160
|
+
* commitea el piso (`min ?? 0`, handleBlur) — antes el blur repintaba el valor
|
|
161
|
+
* anterior y el borrado se perdía. Un campo que NACE vacío no levanta la marca.
|
|
162
|
+
*/
|
|
163
|
+
this.emptiedByUser = false;
|
|
157
164
|
// Stepping/clear son mutaciones PROGRAMÁTICAS: con el campo enfocado ni el
|
|
158
165
|
// @Watch (guard `focused`) ni el vdom (que copia el texto vivo) repintan, así
|
|
159
166
|
// que cada path escribe el input él mismo — si no, ArrowUp emite y persiste
|
|
@@ -195,6 +202,9 @@ const CoNumberField = class {
|
|
|
195
202
|
this.value = null;
|
|
196
203
|
this.coChange.emit(null);
|
|
197
204
|
}
|
|
205
|
+
else {
|
|
206
|
+
this.emptiedByUser = true;
|
|
207
|
+
}
|
|
198
208
|
return;
|
|
199
209
|
}
|
|
200
210
|
if (raw === '-')
|
|
@@ -236,6 +246,9 @@ const CoNumberField = class {
|
|
|
236
246
|
this.value = null;
|
|
237
247
|
this.coChange.emit(null);
|
|
238
248
|
}
|
|
249
|
+
else if (spliced === '') {
|
|
250
|
+
this.emptiedByUser = true;
|
|
251
|
+
}
|
|
239
252
|
return;
|
|
240
253
|
}
|
|
241
254
|
const num = parseFloat(spliced);
|
|
@@ -253,9 +266,13 @@ const CoNumberField = class {
|
|
|
253
266
|
(_a = this.inputEl) === null || _a === void 0 ? void 0 : _a.focus();
|
|
254
267
|
};
|
|
255
268
|
this.handleBlur = () => {
|
|
269
|
+
var _a;
|
|
256
270
|
this.focused = false;
|
|
271
|
+
// Vaciado a mano sin clearable: commitea el piso (ver emptiedByUser).
|
|
272
|
+
if (this.emptiedByUser)
|
|
273
|
+
this.emitValue((_a = this.min) !== null && _a !== void 0 ? _a : 0);
|
|
257
274
|
// Re-clamp on blur, but keep an empty field empty.
|
|
258
|
-
if (!this.isEmpty)
|
|
275
|
+
else if (!this.isEmpty)
|
|
259
276
|
this.emitValue(this.value);
|
|
260
277
|
// Repinta el texto canónico: si el clamp devolvió el MISMO valor que ya
|
|
261
278
|
// tenía el prop (tipear "-20" sobre 0 con min 0), el @Watch no dispara y el
|
|
@@ -354,6 +371,7 @@ const CoNumberField = class {
|
|
|
354
371
|
return this.scaled ? n / 100 : n;
|
|
355
372
|
}
|
|
356
373
|
emitValue(next) {
|
|
374
|
+
this.emptiedByUser = false;
|
|
357
375
|
const clamped = this.clamp(next);
|
|
358
376
|
this.value = clamped;
|
|
359
377
|
this.coChange.emit(clamped);
|
|
@@ -382,6 +400,9 @@ const CoNumberField = class {
|
|
|
382
400
|
this.value = null;
|
|
383
401
|
this.coChange.emit(null);
|
|
384
402
|
}
|
|
403
|
+
else {
|
|
404
|
+
this.emptiedByUser = true;
|
|
405
|
+
}
|
|
385
406
|
return;
|
|
386
407
|
}
|
|
387
408
|
if (cleaned === '-')
|
|
@@ -403,18 +424,18 @@ const CoNumberField = class {
|
|
|
403
424
|
return this.scaled && !this.isEmpty ? '%' : null;
|
|
404
425
|
}
|
|
405
426
|
render() {
|
|
406
|
-
return (h("div", { key: '
|
|
427
|
+
return (h("div", { key: 'de7f3ae049ac5afcdf7d8a711c566b947fa7e151', class: {
|
|
407
428
|
'co-number-field': true,
|
|
408
429
|
'co-number-field--disabled': this.disabled,
|
|
409
430
|
'co-number-field--focused': this.focused,
|
|
410
431
|
[`co-number-field--${this.size}`]: true,
|
|
411
432
|
[`co-number-field--${this.status}`]: this.status !== 'default',
|
|
412
|
-
} }, (this.label || this.secondaryLabel) && (h("div", { key: '
|
|
433
|
+
} }, (this.label || this.secondaryLabel) && (h("div", { key: '3a6c96b2987f0502334a23048f8693745589e965', class: "co-number-field__labels" }, this.label && h("label", { key: '7e0c9c08e93f10f6e18143d038ea8810a0f156b8', class: "co-number-field__label" }, this.label, h(RequiredMark, { key: '88b110f3d59908c27d182533100220ff8a65bb66', required: this.required })), this.secondaryLabel && h("span", { key: '5dd9219f995fc59ce557c8ba2b5dfea2d7cb56ef', class: "co-number-field__secondary-label" }, this.secondaryLabel))), h("div", { key: 'e2079dd9e28daf904057106167cd368de906daba', class: "co-number-field__row", part: "row" }, !this.hideControls && (h("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" }, h("co-icon", { key: '61aafdc7c083ea39b9b65b87d267df63b91cb8d4', name: "minus", size: 16 }))), h("input", { key: 'e088482da6c9fe1e02abe5bcae2611f157be83ed', ref: el => (this.inputEl = el), class: "co-number-field__input", type: "text", inputMode: "decimal",
|
|
413
434
|
// Mismo guard `focused` que el @Watch: mientras el usuario edita, su
|
|
414
435
|
// texto manda. Sin esto, el re-render que dispara emitValue repinta
|
|
415
436
|
// el input desde el NÚMERO y se come el texto en construcción
|
|
416
437
|
// ("34,640.00" pegado quedaba "34,640"; un "12." perdería el punto).
|
|
417
|
-
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 && (h("span", { key: '
|
|
438
|
+
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 && (h("span", { key: '2a7bc2f465844ccb9db7017c1b3782625e784c05', class: "co-number-field__affix", "aria-hidden": "true" }, this.affixText)), this.clearable && !this.isEmpty && !this.disabled && (h("button", { key: '06e40ddc080297db49823f17eeeaba313f68fafd', class: "co-number-field__clear", type: "button", tabIndex: -1, onClick: this.handleClear, "aria-label": "Clear" }, h("co-icon", { key: 'f69d2f6bf5cb4cd6731d55f873fd03d21eb0f42e', name: "x-circle", size: 16, weight: "fill" }))), h("slot", { key: 'd16df6468bf0f514ce183e36d555b5e8f97ff969', name: "suffix" }), !this.hideControls && (h("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" }, h("co-icon", { key: '7f546fa2885ebecc3f16129bdc815a1cea57f53f', name: "plus", size: 16 })))), this.helperText && (h("div", { key: 'e807bbe38823ee148e227baaac1feafd85f93c49', class: `co-number-field__helper co-number-field__helper--${this.status}` }, this.statusIcon && h("co-icon", { key: 'e8bc48908cb9e53952e0bffeb898d0a4b0d2fef3', name: this.statusIcon, size: 14, weight: "fill", class: "co-number-field__helper-icon" }), h("span", { key: 'c00dc9f3bd966988f6a2546a360ede337de383e4', class: "co-number-field__helper-text" }, this.helperText)))));
|
|
418
439
|
}
|
|
419
440
|
get el() { return getElement(this); }
|
|
420
441
|
static get watchers() { return {
|
|
@@ -1,6 +1,19 @@
|
|
|
1
1
|
import { r as registerInstance, c as createEvent, h, a as getElement } from './index-DH5lfRNj.js';
|
|
2
2
|
import { a as afterEventFor } from './overlayAfterClose-Ch1jfwZ2.js';
|
|
3
3
|
|
|
4
|
+
/**
|
|
5
|
+
* ¿Un `click` sobre el fondo del overlay es un gesto de cierre?
|
|
6
|
+
*
|
|
7
|
+
* El navegador despacha `click` al ANCESTRO COMÚN de donde empezó y donde
|
|
8
|
+
* terminó la pulsación: seleccionar texto dentro de un modal y soltar fuera
|
|
9
|
+
* producía un `click` en el fondo y cerraba el modal (con lo editado adentro).
|
|
10
|
+
* Solo cuenta si la pulsación entera —down, up y click— ocurrió sobre el MISMO
|
|
11
|
+
* elemento (`composedPath()[0]`, para ver a través de shadow roots).
|
|
12
|
+
*/
|
|
13
|
+
function isBackdropDismiss(downTarget, upTarget, clickTarget) {
|
|
14
|
+
return downTarget !== null && downTarget === upTarget && upTarget === clickTarget;
|
|
15
|
+
}
|
|
16
|
+
|
|
4
17
|
// focusTrap.ts
|
|
5
18
|
//
|
|
6
19
|
// Focus-trap helpers for co-overlay. The Tab-cycling decision is a PURE function
|
|
@@ -111,8 +124,26 @@ const CoOverlay = class {
|
|
|
111
124
|
this.closeOnEscape = false;
|
|
112
125
|
/** Whether THIS instance currently holds a scroll lock (prevents double-count). */
|
|
113
126
|
this.hasLock = false;
|
|
114
|
-
|
|
115
|
-
|
|
127
|
+
// Origen de la pulsación en curso (ver isBackdropDismiss): un drag que
|
|
128
|
+
// empieza dentro del contenido y suelta en el fondo NO es un cierre.
|
|
129
|
+
this.pressDownTarget = null;
|
|
130
|
+
this.pressUpTarget = null;
|
|
131
|
+
this.handlePointerDown = (e) => {
|
|
132
|
+
var _a;
|
|
133
|
+
this.pressDownTarget = (_a = e.composedPath()[0]) !== null && _a !== void 0 ? _a : null;
|
|
134
|
+
this.pressUpTarget = null;
|
|
135
|
+
};
|
|
136
|
+
this.handlePointerUp = (e) => {
|
|
137
|
+
var _a;
|
|
138
|
+
this.pressUpTarget = (_a = e.composedPath()[0]) !== null && _a !== void 0 ? _a : null;
|
|
139
|
+
};
|
|
140
|
+
this.handleClick = (e) => {
|
|
141
|
+
var _a;
|
|
142
|
+
const dismiss = isBackdropDismiss(this.pressDownTarget, this.pressUpTarget, (_a = e.composedPath()[0]) !== null && _a !== void 0 ? _a : null);
|
|
143
|
+
this.pressDownTarget = null;
|
|
144
|
+
this.pressUpTarget = null;
|
|
145
|
+
if (dismiss)
|
|
146
|
+
this.coClose.emit();
|
|
116
147
|
};
|
|
117
148
|
this.handleTransitionEnd = (e) => {
|
|
118
149
|
if (e.target !== this.overlayEl)
|
|
@@ -249,7 +280,7 @@ const CoOverlay = class {
|
|
|
249
280
|
focusables[nextIndex].focus();
|
|
250
281
|
}
|
|
251
282
|
render() {
|
|
252
|
-
return (h("div", { key: '
|
|
283
|
+
return (h("div", { key: '74051ac6a35eff0b9c873bafe2141b0a9486f83e', class: { 'co-overlay': true, 'co-overlay--open': this.open }, part: "overlay", popover: "manual", tabindex: this.trapFocus ? -1 : undefined, ref: (el) => (this.overlayEl = el), onPointerDown: this.handlePointerDown, onPointerUp: this.handlePointerUp, onClick: this.handleClick, onTransitionEnd: this.handleTransitionEnd }, h("slot", { key: '8ed7f244bfe88f3d38b9e1f6720b0a191529f6f1' })));
|
|
253
284
|
}
|
|
254
285
|
get el() { return getElement(this); }
|
|
255
286
|
static get watchers() { return {
|
|
@@ -90,10 +90,21 @@ const CoPopover = class {
|
|
|
90
90
|
// phase so we run before any inner-element listeners that might stop
|
|
91
91
|
// propagation, and bypassing Stencil's @Listen delegation quirks across
|
|
92
92
|
// nested shadow DOMs.
|
|
93
|
+
// La pulsación en curso EMPEZÓ dentro del popover: seleccionar texto en un
|
|
94
|
+
// input del panel y soltar afuera despacha el `click` al ancestro común (fuera)
|
|
95
|
+
// y cerraba el panel. Ese click no es un "click afuera".
|
|
96
|
+
this.pressStartedInside = false;
|
|
97
|
+
this.handleDocumentPointerDownManual = (e) => {
|
|
98
|
+
this.pressStartedInside = e.composedPath().includes(this.el);
|
|
99
|
+
};
|
|
93
100
|
this.handleDocumentClickManual = (e) => {
|
|
101
|
+
const startedInside = this.pressStartedInside;
|
|
102
|
+
this.pressStartedInside = false;
|
|
94
103
|
// Early-exit keeps closed instances silent.
|
|
95
104
|
if (!this.open || !this.closeOnClickOutside)
|
|
96
105
|
return;
|
|
106
|
+
if (startedInside)
|
|
107
|
+
return;
|
|
97
108
|
// Solo el tope de la pila reacciona al click afuera: con popovers
|
|
98
109
|
// anidados (dropdown dentro de un panel de filtro), el primer click
|
|
99
110
|
// afuera cierra solo el de más arriba; el padre queda intacto. Nota: si
|
|
@@ -261,6 +272,7 @@ const CoPopover = class {
|
|
|
261
272
|
bindDocListeners() {
|
|
262
273
|
if (this.docListenersBound)
|
|
263
274
|
return;
|
|
275
|
+
document.addEventListener('pointerdown', this.handleDocumentPointerDownManual, true);
|
|
264
276
|
document.addEventListener('click', this.handleDocumentClickManual, true);
|
|
265
277
|
document.addEventListener('keydown', this.handleDocumentKeydownManual, true);
|
|
266
278
|
this.docListenersBound = true;
|
|
@@ -268,9 +280,11 @@ const CoPopover = class {
|
|
|
268
280
|
unbindDocListeners() {
|
|
269
281
|
if (!this.docListenersBound)
|
|
270
282
|
return;
|
|
283
|
+
document.removeEventListener('pointerdown', this.handleDocumentPointerDownManual, true);
|
|
271
284
|
document.removeEventListener('click', this.handleDocumentClickManual, true);
|
|
272
285
|
document.removeEventListener('keydown', this.handleDocumentKeydownManual, true);
|
|
273
286
|
this.docListenersBound = false;
|
|
287
|
+
this.pressStartedInside = false;
|
|
274
288
|
}
|
|
275
289
|
// ── Public methods ─────────────────────────────────────────
|
|
276
290
|
async toggle() {
|
|
@@ -338,13 +352,13 @@ const CoPopover = class {
|
|
|
338
352
|
}
|
|
339
353
|
// ── Render ─────────────────────────────────────────────────
|
|
340
354
|
render() {
|
|
341
|
-
return (h("div", { key: '
|
|
355
|
+
return (h("div", { key: 'f4f13f06a95f02735c615e896d367ca671270a68', class: "co-popover" }, h("div", { key: '504af8cebb0f83e7f882f09096a5bfba37e2ac56', class: "co-popover__trigger", ref: (el) => (this.triggerEl = el), onClick: this.handleTriggerClick }, h("slot", { key: 'd5853c372f2bda3f5c57718b5869ca8919c1dfcc', name: "trigger" })), (this.open || this.closing) && (h("div", { key: '3b9c2aa2feaab08eb5f03d36cc25a464600da7fe', class: { 'co-popover__panel': true, 'co-popover__panel--closing': this.closing }, popover: "manual", onTransitionEnd: this.handlePanelTransitionEnd, ref: (el) => {
|
|
342
356
|
if (el && el !== this.panelEl) {
|
|
343
357
|
this.panelEl = el;
|
|
344
358
|
this.promotePanel();
|
|
345
359
|
this.scheduleUpdate();
|
|
346
360
|
}
|
|
347
|
-
} }, h("slot", { key: '
|
|
361
|
+
} }, h("slot", { key: '81e2b8070b4912bab1654e957890c92244ca83b8' })))));
|
|
348
362
|
}
|
|
349
363
|
get el() { return getElement(this); }
|
|
350
364
|
static get watchers() { return {
|