@prolibu-suite/cobalt-core 0.11.1 → 0.11.2
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 +113 -34
- package/dist/cjs/co-button.cjs.entry.js +1 -1
- package/dist/cjs/co-chip_2.cjs.entry.js +1 -1
- package/dist/cjs/co-document-editor.cjs.entry.js +1 -1
- package/dist/cjs/co-modal.cjs.entry.js +27 -1
- package/dist/cjs/co-overlay.cjs.entry.js +205 -34
- package/dist/cjs/co-rich-text-editor.cjs.entry.js +2 -2
- package/dist/cjs/co-rich-text-viewer.cjs.entry.js +1 -1
- package/dist/cjs/cobalt.cjs.js +1 -1
- package/dist/cjs/{index-oMHzCXm6.js → index-BbSD1Eyw.js} +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/{pagination-DV43TRj9.js → pagination-S2sSAgdl.js} +26 -2
- package/dist/cobalt/cobalt.esm.js +1 -1
- package/dist/cobalt/{p-d6e7c258.entry.js → p-02ff847e.entry.js} +1 -1
- package/dist/cobalt/{p-87e62e2b.entry.js → p-12914c0a.entry.js} +1 -1
- package/dist/cobalt/p-38eb2615.entry.js +1 -0
- package/dist/cobalt/{p-47eca182.entry.js → p-6c7e423c.entry.js} +1 -1
- package/dist/cobalt/p-93063876.entry.js +1 -0
- package/dist/cobalt/{p-RVQJEYxa.js → p-Ch-Tygdb.js} +1 -1
- package/dist/cobalt/p-DGLDAl09.js +1 -0
- package/dist/cobalt/{p-3b6efb79.entry.js → p-bb7bbe70.entry.js} +1 -1
- package/dist/cobalt/p-efd3e0de.entry.js +1 -0
- 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-button/co-button.css +15 -0
- package/dist/collection/components/co-checkbox-group/co-checkbox-group.js +1 -1
- package/dist/collection/components/co-chip/co-chip.css +16 -11
- package/dist/collection/components/co-color-area/co-color-area.js +2 -2
- package/dist/collection/components/co-color-slider/co-color-slider.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-document-editor/co-document-editor.js +5 -5
- package/dist/collection/components/co-modal/co-modal.js +68 -1
- package/dist/collection/components/co-overlay/co-overlay.css +7 -0
- package/dist/collection/components/co-overlay/co-overlay.js +130 -26
- package/dist/collection/components/co-overlay/focusTrap.js +111 -3
- package/dist/collection/components/co-popover/co-popover.js +1 -1
- 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/collection/components/co-tree-item/co-tree-item.js +2 -2
- package/dist/components/co-autocomplete.js +1 -1
- package/dist/components/co-button.js +1 -1
- package/dist/components/co-chip.js +1 -1
- package/dist/components/co-column-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-data-table.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-document-editor.js +1 -1
- package/dist/components/co-drawer.js +1 -1
- package/dist/components/co-modal.js +1 -1
- package/dist/components/co-overlay.js +1 -1
- package/dist/components/co-rich-text-editor.js +1 -1
- package/dist/components/co-rich-text-viewer.js +1 -1
- package/dist/components/{p-BVdCvEza.js → p-BI_VaFsx.js} +1 -1
- package/dist/components/{p-Du8EpQb-.js → p-C_6szR7t.js} +1 -1
- package/dist/components/{p-RVQJEYxa.js → p-Ch-Tygdb.js} +1 -1
- package/dist/components/{p-zJ3pjFzW.js → p-DB8DGMc-.js} +1 -1
- package/dist/components/p-DGLDAl09.js +1 -0
- package/dist/components/{p-Hi57w2_2.js → p-DhPxNA2f.js} +1 -1
- package/dist/components/p-wUXcJGdy.js +1 -0
- package/dist/esm/co-button.entry.js +1 -1
- package/dist/esm/co-chip_2.entry.js +1 -1
- package/dist/esm/co-document-editor.entry.js +1 -1
- package/dist/esm/co-modal.entry.js +28 -2
- package/dist/esm/co-overlay.entry.js +205 -34
- package/dist/esm/co-rich-text-editor.entry.js +2 -2
- package/dist/esm/co-rich-text-viewer.entry.js +1 -1
- package/dist/esm/cobalt.js +1 -1
- package/dist/esm/{index-Cpo8HTwr.js → index-CgyOJePd.js} +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/{pagination-D9OfZUnY.js → pagination-BzrIQtrk.js} +26 -2
- package/dist/types/components/co-modal/co-modal.d.ts +23 -0
- package/dist/types/components/co-overlay/co-overlay.d.ts +29 -1
- package/dist/types/components/co-overlay/focusTrap.d.ts +24 -3
- package/dist/types/components.d.ts +21 -2
- package/package.json +4 -4
- package/dist/cobalt/p-1a5bec8c.entry.js +0 -1
- package/dist/cobalt/p-67a024dd.entry.js +0 -1
- package/dist/cobalt/p-B1JT7us1.js +0 -1
- package/dist/cobalt/p-c4c997f3.entry.js +0 -1
- package/dist/components/p-B1JT7us1.js +0 -1
- package/dist/components/p-nrwDl_gx.js +0 -1
|
@@ -35656,11 +35656,35 @@ const PrintImage = Image.extend({
|
|
|
35656
35656
|
const view = parent(props);
|
|
35657
35657
|
const container = view.dom;
|
|
35658
35658
|
syncImageModeToContainer(container, props.node);
|
|
35659
|
+
let current = props.node;
|
|
35660
|
+
/**
|
|
35661
|
+
* QA 2026-09-24 (bug 13): el node view de resize arma el `<img>` UNA vez y su `update` no
|
|
35662
|
+
* vuelve a mirar los attrs. La barra inserta la imagen como data-URI y, al resolver la
|
|
35663
|
+
* subida, hace `setNodeMarkup` con `{ src, dataFileId }`: el documento quedaba con la URL
|
|
35664
|
+
* pero el `<img>` visible seguía con el data-URI de varios MB. `dataFileId` no es un attr
|
|
35665
|
+
* renderizado, así que también se lleva a mano (desde el montaje, no solo al cambiar).
|
|
35666
|
+
*/
|
|
35667
|
+
const syncImg = (node) => {
|
|
35668
|
+
const img = container.querySelector('img');
|
|
35669
|
+
if (!img)
|
|
35670
|
+
return;
|
|
35671
|
+
if (node.attrs.src && img.getAttribute('src') !== node.attrs.src)
|
|
35672
|
+
img.setAttribute('src', node.attrs.src);
|
|
35673
|
+
if (node.attrs.dataFileId)
|
|
35674
|
+
img.setAttribute('data-file-id', String(node.attrs.dataFileId));
|
|
35675
|
+
else
|
|
35676
|
+
img.removeAttribute('data-file-id');
|
|
35677
|
+
};
|
|
35678
|
+
syncImg(props.node);
|
|
35659
35679
|
const update = view.update?.bind(view);
|
|
35660
35680
|
view.update = (node, decorations, inner) => {
|
|
35661
|
-
const ok = update ? update(node, decorations, inner) : node.type ===
|
|
35662
|
-
if (ok)
|
|
35681
|
+
const ok = update ? update(node, decorations, inner) : node.type === current.type;
|
|
35682
|
+
if (ok) {
|
|
35663
35683
|
syncImageModeToContainer(container, node);
|
|
35684
|
+
if (node.attrs.src !== current.attrs.src || node.attrs.dataFileId !== current.attrs.dataFileId)
|
|
35685
|
+
syncImg(node);
|
|
35686
|
+
current = node;
|
|
35687
|
+
}
|
|
35664
35688
|
return ok;
|
|
35665
35689
|
};
|
|
35666
35690
|
return view;
|
|
@@ -23,6 +23,7 @@ import { EventEmitter } from '../../stencil-public-runtime';
|
|
|
23
23
|
* @part footer - Footer de acciones (slot `footer`).
|
|
24
24
|
*/
|
|
25
25
|
export declare class CoModal {
|
|
26
|
+
el: HTMLElement;
|
|
26
27
|
/** Whether the modal is visible */
|
|
27
28
|
open: boolean;
|
|
28
29
|
/** Modal title */
|
|
@@ -111,6 +112,19 @@ export declare class CoModal {
|
|
|
111
112
|
* mismo nombre taparía `HTMLElement.draggable` con dos semánticas encimadas.
|
|
112
113
|
*/
|
|
113
114
|
movable: boolean;
|
|
115
|
+
/**
|
|
116
|
+
* Opt-in: trampa de foco accesible (QA 2026-09-24, «Generar contrato»). Con
|
|
117
|
+
* `true`, al abrir el foco ENTRA al modal (el primer `[autofocus]`; si no
|
|
118
|
+
* hay, el primer control), Tab / Shift+Tab ciclan adentro y al cerrar vuelve
|
|
119
|
+
* a donde estaba. El recorrido es compuesto: ve el contenido proyectado por
|
|
120
|
+
* los slots y el `<button>` interno de cada co-button. Default false → los
|
|
121
|
+
* consumidores actuales no cambian.
|
|
122
|
+
*
|
|
123
|
+
* La trampa es de `<co-overlay>`, así que sin overlay (`inline` o
|
|
124
|
+
* `backdrop="none"`) NO aplica: esos modos son paneles no bloqueantes y la
|
|
125
|
+
* página de atrás sigue operable.
|
|
126
|
+
*/
|
|
127
|
+
trapFocus: boolean;
|
|
114
128
|
/** Verdadero cuando NO corresponde montar `<co-overlay>` — ver doc de
|
|
115
129
|
* `backdrop` e `inline` arriba: ambas comparten el mismo mecanismo porque
|
|
116
130
|
* co-overlay es la única superficie dueña del scrim Y del top layer. */
|
|
@@ -134,6 +148,15 @@ export declare class CoModal {
|
|
|
134
148
|
* eso se monta condicionado a `usesOverlay` — ver `render()`. */
|
|
135
149
|
private stopPropagation;
|
|
136
150
|
handleKeydown(e: KeyboardEvent): void;
|
|
151
|
+
/**
|
|
152
|
+
* Re-promueve el modal al TOPE del top layer (QA 2026-09-24, «Generar
|
|
153
|
+
* contrato»): un drawer que se abre DESPUÉS del modal (cambio de URL,
|
|
154
|
+
* historial) pinta encima, porque en el top layer gana el último promovido.
|
|
155
|
+
* Delega en su `<co-overlay>`: sin cerrar el modal, sin eventos (`coClose` /
|
|
156
|
+
* `coAfterClose` / `coAfterOpen`), sin soltar el scroll lock y sin re-animar
|
|
157
|
+
* la entrada. No-op sin overlay (`inline`, `backdrop="none"`) o cerrado.
|
|
158
|
+
*/
|
|
159
|
+
bringToFront(): Promise<void>;
|
|
137
160
|
private handleTransitionEnd;
|
|
138
161
|
/** Gesto en curso: pinta el cursor `grabbing` (única razón para re-render). */
|
|
139
162
|
dragging: boolean;
|
|
@@ -18,6 +18,11 @@ export declare class CoOverlay {
|
|
|
18
18
|
* previously-focused element, moves focus into the overlay, cycles Tab /
|
|
19
19
|
* Shift+Tab within the slotted content, and restores focus on close.
|
|
20
20
|
* Default false → existing consumers are unchanged.
|
|
21
|
+
*
|
|
22
|
+
* The walk is COMPOSED (shadow roots + assigned slots): it reaches the
|
|
23
|
+
* consumer's content projected through a host's slots and the inner control
|
|
24
|
+
* of every co-* (a co-button's `<button>`). With several traps open, only the
|
|
25
|
+
* most recent one handles Tab.
|
|
21
26
|
*/
|
|
22
27
|
trapFocus: boolean;
|
|
23
28
|
/**
|
|
@@ -37,9 +42,28 @@ export declare class CoOverlay {
|
|
|
37
42
|
private overlayEl?;
|
|
38
43
|
/** Element focused before the trap engaged, restored on close. */
|
|
39
44
|
private returnFocusEl?;
|
|
45
|
+
/** Identidad de esta instancia en `trapStack`. */
|
|
46
|
+
private readonly trapId;
|
|
47
|
+
/** Whether THIS instance is currently in `trapStack` (prevents double push). */
|
|
48
|
+
private trapping;
|
|
40
49
|
onOpenChange(isOpen: boolean): void;
|
|
50
|
+
onTrapFocusChange(): void;
|
|
41
51
|
componentDidLoad(): void;
|
|
42
52
|
disconnectedCallback(): void;
|
|
53
|
+
/**
|
|
54
|
+
* Re-promueve el scrim al TOPE del top layer (QA 2026-09-24, «Generar
|
|
55
|
+
* contrato»): un drawer abierto DESPUÉS de un modal pintaba encima, porque en
|
|
56
|
+
* el top layer gana el último promovido y no hay z-index que lo corrija.
|
|
57
|
+
* `hidePopover()` + `showPopover()` lo vuelven a meter último.
|
|
58
|
+
*
|
|
59
|
+
* No es un cierre: no emite `coClose` / `coAfterClose` / `coAfterOpen`, no
|
|
60
|
+
* toca `open` ni el scroll lock, y no re-anima la entrada (la clase
|
|
61
|
+
* `co-overlay--refront` anula la transición durante el re-show y se retira en
|
|
62
|
+
* el frame siguiente). Tampoco mueve el foco: si el re-show dispara los
|
|
63
|
+
* «popover focusing steps» (un `[autofocus]` adentro), se devuelve a donde
|
|
64
|
+
* estaba. No-op cerrado, sin Popover API o fuera del top layer.
|
|
65
|
+
*/
|
|
66
|
+
bringToFront(): Promise<void>;
|
|
43
67
|
private acquireLock;
|
|
44
68
|
private releaseLock;
|
|
45
69
|
/**
|
|
@@ -52,7 +76,11 @@ export declare class CoOverlay {
|
|
|
52
76
|
* reconciliation are untouched. No-ops gracefully where unsupported.
|
|
53
77
|
*/
|
|
54
78
|
private syncPopover;
|
|
55
|
-
/**
|
|
79
|
+
/** La trampa está activa exactamente mientras el overlay está abierto con `trapFocus`. */
|
|
80
|
+
private syncTrap;
|
|
81
|
+
private engageTrap;
|
|
82
|
+
private releaseTrap;
|
|
83
|
+
/** Record the current focus and move it into the overlay (only while trapping). */
|
|
56
84
|
private captureAndFocus;
|
|
57
85
|
/** Restore focus to the element that had it before the trap engaged. */
|
|
58
86
|
private restoreFocus;
|
|
@@ -13,8 +13,29 @@ export declare const FOCUSABLE_SELECTOR: string;
|
|
|
13
13
|
*/
|
|
14
14
|
export declare function resolveTabIndex(count: number, activeIndex: number, shiftKey: boolean): number;
|
|
15
15
|
/**
|
|
16
|
-
* Collect the tabbable elements
|
|
17
|
-
*
|
|
18
|
-
*
|
|
16
|
+
* Collect the tabbable elements in the overlay's light DOM, skipping hidden /
|
|
17
|
+
* aria-hidden ones.
|
|
18
|
+
*
|
|
19
|
+
* Kept for compatibility only — co-overlay no longer uses it: it cannot see past
|
|
20
|
+
* a shadow root, and co-overlay lives INSIDE co-modal's shadow, so its light DOM
|
|
21
|
+
* is the modal frame (the ✕) and never the consumer's slotted content nor the
|
|
22
|
+
* inner `<button>` of a co-button. Use `getComposedFocusables`.
|
|
19
23
|
*/
|
|
20
24
|
export declare function getFocusableElements(root: ParentNode): HTMLElement[];
|
|
25
|
+
/**
|
|
26
|
+
* Paradas de Tab dentro de `root` en el árbol COMPUESTO (shadowRoots + slots
|
|
27
|
+
* asignados), con las mismas exclusiones que `getFocusableElements`.
|
|
28
|
+
*/
|
|
29
|
+
export declare function getComposedFocusables(root: Element): HTMLElement[];
|
|
30
|
+
/**
|
|
31
|
+
* Dónde cae el foco al abrir la trampa: el primer `[autofocus]` del recorrido
|
|
32
|
+
* compuesto —si es un host con shadow (`<co-input autofocus>`), su primer
|
|
33
|
+
* enfocable compuesto—; si no hay, la primera parada de Tab. `null` = nada
|
|
34
|
+
* enfocable (el llamador cae al contenedor).
|
|
35
|
+
*/
|
|
36
|
+
export declare function resolveInitialFocus(root: Element): HTMLElement | null;
|
|
37
|
+
/**
|
|
38
|
+
* Con dos trampas abiertas (un confirm sobre un modal, un modal anidado) las dos
|
|
39
|
+
* escuchan el keydown de document: solo la capa MÁS RECIENTE maneja Tab.
|
|
40
|
+
*/
|
|
41
|
+
export declare function isTopTrap(stack: readonly string[], id: string): boolean;
|
|
@@ -3750,6 +3750,10 @@ export namespace Components {
|
|
|
3750
3750
|
* @default 'default'
|
|
3751
3751
|
*/
|
|
3752
3752
|
"backdrop": 'default' | 'none';
|
|
3753
|
+
/**
|
|
3754
|
+
* Re-promueve el modal al TOPE del top layer (QA 2026-09-24, «Generar contrato»): un drawer que se abre DESPUÉS del modal (cambio de URL, historial) pinta encima, porque en el top layer gana el último promovido. Delega en su `<co-overlay>`: sin cerrar el modal, sin eventos (`coClose` / `coAfterClose` / `coAfterOpen`), sin soltar el scroll lock y sin re-animar la entrada. No-op sin overlay (`inline`, `backdrop="none"`) o cerrado.
|
|
3755
|
+
*/
|
|
3756
|
+
"bringToFront": () => Promise<void>;
|
|
3753
3757
|
/**
|
|
3754
3758
|
* Show close (X) button in header
|
|
3755
3759
|
* @default true
|
|
@@ -3804,6 +3808,11 @@ export namespace Components {
|
|
|
3804
3808
|
* @default 'md'
|
|
3805
3809
|
*/
|
|
3806
3810
|
"size": 'xs' | 'sm' | 'md' | 'lg' | 'full';
|
|
3811
|
+
/**
|
|
3812
|
+
* Opt-in: trampa de foco accesible (QA 2026-09-24, «Generar contrato»). Con `true`, al abrir el foco ENTRA al modal (el primer `[autofocus]`; si no hay, el primer control), Tab / Shift+Tab ciclan adentro y al cerrar vuelve a donde estaba. El recorrido es compuesto: ve el contenido proyectado por los slots y el `<button>` interno de cada co-button. Default false → los consumidores actuales no cambian. La trampa es de `<co-overlay>`, así que sin overlay (`inline` o `backdrop="none"`) NO aplica: esos modos son paneles no bloqueantes y la página de atrás sigue operable.
|
|
3813
|
+
* @default false
|
|
3814
|
+
*/
|
|
3815
|
+
"trapFocus": boolean;
|
|
3807
3816
|
}
|
|
3808
3817
|
/**
|
|
3809
3818
|
* Horizontal toolbar container. Place any content inside the default slot.
|
|
@@ -4076,6 +4085,10 @@ export namespace Components {
|
|
|
4076
4085
|
* Wrapper Vue: `CoOverlay` de `@prolibu-suite/cobalt-vue`.
|
|
4077
4086
|
*/
|
|
4078
4087
|
interface CoOverlay {
|
|
4088
|
+
/**
|
|
4089
|
+
* Re-promueve el scrim al TOPE del top layer (QA 2026-09-24, «Generar contrato»): un drawer abierto DESPUÉS de un modal pintaba encima, porque en el top layer gana el último promovido y no hay z-index que lo corrija. `hidePopover()` + `showPopover()` lo vuelven a meter último. No es un cierre: no emite `coClose` / `coAfterClose` / `coAfterOpen`, no toca `open` ni el scroll lock, y no re-anima la entrada (la clase `co-overlay--refront` anula la transición durante el re-show y se retira en el frame siguiente). Tampoco mueve el foco: si el re-show dispara los «popover focusing steps» (un `[autofocus]` adentro), se devuelve a donde estaba. No-op cerrado, sin Popover API o fuera del top layer.
|
|
4090
|
+
*/
|
|
4091
|
+
"bringToFront": () => Promise<void>;
|
|
4079
4092
|
/**
|
|
4080
4093
|
* Opt-in: emit `coClose` when Escape is pressed while open. Default false → existing consumers are unchanged.
|
|
4081
4094
|
* @default false
|
|
@@ -4087,7 +4100,7 @@ export namespace Components {
|
|
|
4087
4100
|
*/
|
|
4088
4101
|
"open": boolean;
|
|
4089
4102
|
/**
|
|
4090
|
-
* Opt-in accessible focus trap. When true, opening the overlay records the previously-focused element, moves focus into the overlay, cycles Tab / Shift+Tab within the slotted content, and restores focus on close. Default false → existing consumers are unchanged.
|
|
4103
|
+
* Opt-in accessible focus trap. When true, opening the overlay records the previously-focused element, moves focus into the overlay, cycles Tab / Shift+Tab within the slotted content, and restores focus on close. Default false → existing consumers are unchanged. The walk is COMPOSED (shadow roots + assigned slots): it reaches the consumer's content projected through a host's slots and the inner control of every co-* (a co-button's `<button>`). With several traps open, only the most recent one handles Tab.
|
|
4091
4104
|
* @default false
|
|
4092
4105
|
*/
|
|
4093
4106
|
"trapFocus": boolean;
|
|
@@ -13330,6 +13343,11 @@ declare namespace LocalJSX {
|
|
|
13330
13343
|
* @default 'md'
|
|
13331
13344
|
*/
|
|
13332
13345
|
"size"?: 'xs' | 'sm' | 'md' | 'lg' | 'full';
|
|
13346
|
+
/**
|
|
13347
|
+
* Opt-in: trampa de foco accesible (QA 2026-09-24, «Generar contrato»). Con `true`, al abrir el foco ENTRA al modal (el primer `[autofocus]`; si no hay, el primer control), Tab / Shift+Tab ciclan adentro y al cerrar vuelve a donde estaba. El recorrido es compuesto: ve el contenido proyectado por los slots y el `<button>` interno de cada co-button. Default false → los consumidores actuales no cambian. La trampa es de `<co-overlay>`, así que sin overlay (`inline` o `backdrop="none"`) NO aplica: esos modos son paneles no bloqueantes y la página de atrás sigue operable.
|
|
13348
|
+
* @default false
|
|
13349
|
+
*/
|
|
13350
|
+
"trapFocus"?: boolean;
|
|
13333
13351
|
}
|
|
13334
13352
|
/**
|
|
13335
13353
|
* Horizontal toolbar container. Place any content inside the default slot.
|
|
@@ -13645,7 +13663,7 @@ declare namespace LocalJSX {
|
|
|
13645
13663
|
*/
|
|
13646
13664
|
"open"?: boolean;
|
|
13647
13665
|
/**
|
|
13648
|
-
* Opt-in accessible focus trap. When true, opening the overlay records the previously-focused element, moves focus into the overlay, cycles Tab / Shift+Tab within the slotted content, and restores focus on close. Default false → existing consumers are unchanged.
|
|
13666
|
+
* Opt-in accessible focus trap. When true, opening the overlay records the previously-focused element, moves focus into the overlay, cycles Tab / Shift+Tab within the slotted content, and restores focus on close. Default false → existing consumers are unchanged. The walk is COMPOSED (shadow roots + assigned slots): it reaches the consumer's content projected through a host's slots and the inner control of every co-* (a co-button's `<button>`). With several traps open, only the most recent one handles Tab.
|
|
13649
13667
|
* @default false
|
|
13650
13668
|
*/
|
|
13651
13669
|
"trapFocus"?: boolean;
|
|
@@ -16706,6 +16724,7 @@ declare namespace LocalJSX {
|
|
|
16706
16724
|
"backdrop": 'default' | 'none';
|
|
16707
16725
|
"inline": boolean;
|
|
16708
16726
|
"movable": boolean;
|
|
16727
|
+
"trapFocus": boolean;
|
|
16709
16728
|
}
|
|
16710
16729
|
interface CoNavbarAttributes {
|
|
16711
16730
|
"variant": 'default' | 'filled' | 'bordered' | 'dark';
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@prolibu-suite/cobalt-core",
|
|
3
|
-
"version": "0.11.
|
|
3
|
+
"version": "0.11.2",
|
|
4
4
|
"description": "Cobalt Design System — Framework-agnostic Web Components built with Stencil",
|
|
5
5
|
"main": "dist/index.cjs.js",
|
|
6
6
|
"module": "dist/index.js",
|
|
@@ -50,10 +50,10 @@
|
|
|
50
50
|
"@phosphor-icons/core": "^2.1.1",
|
|
51
51
|
"dompurify": "^3.2.6",
|
|
52
52
|
"overlayscrollbars": "^2.16.0",
|
|
53
|
-
"@prolibu-suite/cobalt-rich-text": "0.2.0",
|
|
54
|
-
"@prolibu-suite/cobalt-tokens": "0.6.0",
|
|
55
53
|
"@prolibu-suite/cobalt-calendar-utils": "0.1.1",
|
|
56
|
-
"@prolibu-suite/cobalt-
|
|
54
|
+
"@prolibu-suite/cobalt-rich-text": "0.2.1",
|
|
55
|
+
"@prolibu-suite/cobalt-date-utils": "0.1.2",
|
|
56
|
+
"@prolibu-suite/cobalt-tokens": "0.6.0"
|
|
57
57
|
},
|
|
58
58
|
"devDependencies": {
|
|
59
59
|
"@stencil/core": "^4.43.4",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as o,c as i,h as t,a as r}from"./p-DJkaRtbb.js";import{h as e}from"./p-Ba_v-MzM.js";import{i as s}from"./p-DqyWGweA.js";import"./p-ox7HzCZn.js";const a=class{constructor(t){o(this,t),this.coRemove=i(this,"coRemove",7),this.coClick=i(this,"coClick",7),this.shape="rounded",this.size="large",this.iconMode="none",this.variant="filled",this.color="default",this.iconWeight="regular",this.removable=!1,this.dot=!1,this.clickable=!1,this.disabled=!1,this.selected=!1,this.handleClick=()=>{this.disabled||this.clickable&&this.coClick.emit()},this.handleRemove=o=>{o.stopPropagation(),this.disabled||this.coRemove.emit()}}render(){const o="left"===this.iconMode||"both"===this.iconMode,i="both"===this.iconMode&&!this.removable,r="large"===this.size?16:10,e="large"===this.size?16:10,s="filter"===this.variant?13:r,a=o||!!this.iconLeft||this.dot,c=i||!!this.iconRight||this.removable||!!this.trailingIcon;let n;return n=a&&c?"both":a?"left":c?"right":"none",t(this.clickable?"button":"div",{key:"a0fef13e5a67b2d8c1ac96576d1f75f5187c70cb",class:{"co-chip":!0,[`co-chip--${this.shape}`]:!0,[`co-chip--${this.size}`]:!0,[`co-chip--icon-${n}`]:!0,[`co-chip--${this.variant}`]:!0,[`co-chip--${this.color}`]:"default"!==this.color,"co-chip--clickable":this.clickable,"co-chip--disabled":this.disabled,"co-chip--selected":this.selected},part:"chip",type:this.clickable?"button":void 0,disabled:this.clickable?this.disabled:void 0,onClick:this.handleClick},this.dot&&t("span",{key:"cac1c98fa890bae489af9b3efb4fb3ec0a06d1ca",class:"co-chip__dot",part:"dot",style:this.dotColor?{color:this.dotColor}:void 0},t("co-icon",{key:"545dba15817d7375447a0adb1d472b2accf7b878",name:"circle",size:r,weight:"fill"})),this.iconLeft&&!o&&t("span",{key:"a54ecde8516125b1670716ebd8555d3ac6ca24be",class:"co-chip__icon-left",part:"icon-left"},t("co-icon",{key:"0e3174abeb9761a8a2abca7bbd9ebec0bd3e9dea",name:this.iconLeft,size:r,weight:this.iconWeight})),o&&t("span",{key:"cf7a72c01e63140bc22bde8d87841cbb79bb4f4a",class:"co-chip__icon-left",part:"icon-left"},t("slot",{key:"f2398a1b9bb41f1f2dc039303ec0a6b8c8ccfada",name:"icon-left"})),t("span",{key:"de70419bb5a522cd5425096f6da19752736d14b8",class:"co-chip__label"},t("slot",{key:"6bf611ee5235e60514eb2b3f37040183f7e0032c"},this.label),null!=this.valueLabel&&""!==this.valueLabel&&t("span",{key:"bc36276493cd3ff26ce131c85094125b27791028",class:"co-chip__value",part:"value"},`: ${this.valueLabel}`)),this.iconRight&&!i&&!this.removable&&t("span",{key:"8d20d206a23ed7109c5cc40b2beb278fd0e89614",class:"co-chip__icon-right",part:"icon-right"},t("co-icon",{key:"28cdb555b65fefcf3e3471aea46fe4ec0d2aad18",name:this.iconRight,size:r,weight:this.iconWeight})),i&&t("span",{key:"009206c164ae5d378481e8512fe8e63c921bb57e",class:"co-chip__icon-right",part:"icon-right"},t("slot",{key:"8397bf2f3add45386d34b61964fe6ea5ecb05f70",name:"icon-right"})),this.removable&&t("span",{key:"bb95705bdb89959b8bc64a5d692d54dcc2387e0b",class:"co-chip__remove",part:"remove",role:"button",tabIndex:this.disabled?-1:0,onClick:this.handleRemove,"aria-label":"Remove"},t("co-icon",{key:"a616ebe4d69c08be3bb908e7da1dcdd15a4c257a",name:"x-circle",size:e,weight:"fill"})),this.trailingIcon&&t("span",{key:"3302ddb23482eaeff3a4ba2de38282f423768b2c",class:"co-chip__trailing",part:"trailing"},t("co-icon",{key:"34a716149f174722d7b7a5549821a80ee7cdad63",name:this.trailingIcon,size:s,weight:this.iconWeight})))}};function c(o){let i=o;if("string"==typeof o)try{i=JSON.parse(o)}catch(o){return[]}return Array.isArray(i)?i:[]}function n(o,i,t){const r=[];if(t.forEach(((o,i)=>{o.disabled||r.push(i)})),0===r.length)return-1;const e=r.indexOf(o);return-1===e?1===i?r[0]:r[r.length-1]:r[(e+i+r.length)%r.length]}function l(o,i,t){return i>0?{hasMore:o<i,remaining:Math.max(0,i-o)}:{hasMore:t,remaining:0}}a.style=":host{display:inline-flex;max-width:var(--co-chip-max-width, none)}.co-chip{display:inline-flex;align-items:center;justify-content:center;font-family:var(--co-font-family-primary);font-weight:400;line-height:1;letter-spacing:var(--co-font-letter-spacing-body);white-space:nowrap;box-sizing:border-box;-webkit-font-smoothing:antialiased;max-width:100%;overflow:hidden;border:1px solid transparent;transition:background var(--co-motion-duration-fast) var(--co-motion-ease-out), border-color var(--co-motion-duration-fast) var(--co-motion-ease-out), opacity var(--co-motion-duration-fast) var(--co-motion-ease-out), box-shadow var(--co-motion-duration-fast) var(--co-motion-ease-out);cursor:default;margin:0;padding:0}button.co-chip{cursor:pointer;outline:none}button.co-chip:focus-visible{box-shadow:0 0 0 2px var(--co-semantic-border-focus-ring)}.co-chip__label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.co-chip__value{color:var(--co-chip-value-color, var(--co-color-gray-500, #888888))}.co-chip--filled{background:var(--co-chip-bg, var(--co-semantic-surface-muted));color:var(--co-chip-color, var(--co-semantic-text-default));border-color:var(--co-chip-border, transparent)}.co-chip--filled.co-chip--clickable:hover:not(.co-chip--disabled){background:var(--co-color-opacity-negro-8, rgba(0, 0, 0, 0.08))}.co-chip--filled.co-chip--clickable:active:not(.co-chip--disabled){opacity:0.85}.co-chip--filled.co-chip--primary{background:var(--co-semantic-surface-primary);color:var(--co-semantic-on-primary)}.co-chip--filled.co-chip--primary.co-chip--clickable:hover:not(.co-chip--disabled){background:var(--co-semantic-surface-primary);opacity:0.85}.co-chip--filled.co-chip--success{background:var(--co-semantic-status-success);color:#fff}.co-chip--filled.co-chip--error{background:var(--co-semantic-status-error);color:#fff}.co-chip--filled.co-chip--warning{background:var(--co-color-status-review);color:#fff}.co-chip--filled.co-chip--info{background:var(--co-semantic-status-info);color:#fff}.co-chip--filled.co-chip--pending{background:var(--co-color-status-pending);color:#fff}.co-chip--filled.co-chip--progress{background:var(--co-color-status-progress);color:#fff}.co-chip--filled.co-chip--review{background:var(--co-color-status-review);color:#fff}.co-chip--filled.co-chip--submitted{background:var(--co-color-status-submitted);color:#fff}.co-chip--outlined{background:transparent;color:var(--co-semantic-text-default);border-color:var(--co-semantic-border-default)}.co-chip--outlined.co-chip--clickable:hover:not(.co-chip--disabled){background:var(--co-semantic-surface-hover)}.co-chip--outlined.co-chip--clickable:active:not(.co-chip--disabled){background:var(--co-semantic-surface-muted)}.co-chip--outlined.co-chip--primary{color:var(--co-semantic-surface-primary);border-color:var(--co-semantic-surface-primary)}.co-chip--outlined.co-chip--success{color:var(--co-semantic-status-success);border-color:var(--co-semantic-status-success)}.co-chip--outlined.co-chip--error{color:var(--co-semantic-status-error);border-color:var(--co-semantic-status-error)}.co-chip--outlined.co-chip--warning{color:var(--co-color-status-review);border-color:var(--co-color-status-review)}.co-chip--outlined.co-chip--info{color:var(--co-semantic-status-info);border-color:var(--co-semantic-status-info)}.co-chip--filled.co-chip--selected{box-shadow:inset 0 0 0 1px rgba(255, 255, 255, 0.3)}.co-chip--outlined.co-chip--selected{background:var(--co-semantic-surface-muted);border-width:2px}.co-chip--disabled{opacity:0.4;cursor:not-allowed;pointer-events:none}button.co-chip--disabled{pointer-events:auto;}.co-chip--large{font-size:var(--co-font-size-12)}.co-chip--large.co-chip--icon-none{padding:var(--co-spacing-sm) var(--co-spacing-sm2);gap:0}.co-chip--large.co-chip--icon-left{padding:var(--co-spacing-xs) var(--co-spacing-sm2) var(--co-spacing-xs) var(--co-spacing-sm);gap:var(--co-spacing-sm)}.co-chip--large.co-chip--icon-right{padding:var(--co-spacing-xs) var(--co-spacing-xs) var(--co-spacing-xs) var(--co-spacing-sm2);gap:var(--co-spacing-sm)}.co-chip--large.co-chip--icon-both{padding:var(--co-spacing-xs);gap:var(--co-spacing-sm)}.co-chip--small{font-size:var(--co-font-size-10)}.co-chip--small.co-chip--icon-none{padding:var(--co-spacing-xs) var(--co-spacing-sm);gap:0}.co-chip--small.co-chip--icon-left{padding:var(--co-spacing-xs) var(--co-spacing-sm) var(--co-spacing-xs) var(--co-spacing-xs);gap:var(--co-spacing-xs)}.co-chip--small.co-chip--icon-right{padding:var(--co-spacing-xs) var(--co-spacing-xs) var(--co-spacing-xs) var(--co-spacing-sm);gap:var(--co-spacing-xs)}.co-chip--small.co-chip--icon-both{padding:var(--co-spacing-xs);gap:var(--co-spacing-xs)}.co-chip--rounded{border-radius:var(--co-border-radius-full)}.co-chip--square{border-radius:var(--co-spacing-sm)}.co-chip__icon-left,.co-chip__icon-right,.co-chip__dot,.co-chip__trailing{display:inline-flex;flex-shrink:0;align-items:center}.co-chip__trailing{color:var(--co-chip-trailing-color, currentColor)}.co-chip--large .co-chip__icon-left,.co-chip--large .co-chip__icon-right,.co-chip--large .co-chip__dot{width:16px;height:16px}.co-chip--small .co-chip__icon-left,.co-chip--small .co-chip__icon-right,.co-chip--small .co-chip__dot{width:10px;height:10px}.co-chip__remove{display:inline-flex;flex-shrink:0;align-items:center;cursor:pointer;opacity:1;transition:opacity var(--co-motion-duration-fast) var(--co-motion-ease-out);border:none;background:transparent;padding:0;color:inherit}.co-chip__remove:hover{opacity:0.7}.co-chip--large .co-chip__remove{width:16px;height:16px}.co-chip--small .co-chip__remove{width:10px;height:10px}::slotted(*){display:inline-flex;width:100%;height:100%}.co-chip.co-chip--filter{height:34px;padding:0 12px;gap:7px;font-size:13.5px;border-radius:var(--co-border-radius-full);background:var(--co-color-base-blanco, #fff);color:var(--co-color-base-negro, #1f1c1b);border-color:transparent;box-shadow:inset 0 0 0 1px var(--co-color-opacity-negro-16, rgba(0, 0, 0, 0.16))}.co-chip--filter .co-chip__icon-left{color:var(--co-color-gray-500, #888888)}.co-chip--filter .co-chip__trailing{color:var(--co-color-gray-400, #a0a0a0)}.co-chip--filter.co-chip--clickable:hover:not(.co-chip--disabled){box-shadow:inset 0 0 0 1px var(--co-color-opacity-negro-25, rgba(0, 0, 0, 0.25))}.co-chip--filter.co-chip--clickable:active:not(.co-chip--disabled){background:var(--co-color-gray-100, #f6f6f6)}.co-chip--filter.co-chip--selected{background:var(--co-color-gray-100, #f6f6f6)}";const d=34,p=class{constructor(t){o(this,t),this.coSearch=i(this,"coSearch",1),this.coChange=i(this,"coChange",1),this.coLoadMore=i(this,"coLoadMore",1),this.coClearSelection=i(this,"coClearSelection",1),this.coRemoveItem=i(this,"coRemoveItem",1),this.coReorder=i(this,"coReorder",1),this.coPinToggle=i(this,"coPinToggle",1),this.coListReorder=i(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 i,t;if("Enter"===o.key){const r=(null===(i=o.composedPath)||void 0===i?void 0:i.call(o)[0])||o.target;if(r instanceof HTMLElement&&(null===(t=r.closest)||void 0===t?void 0:t.call(r,"button:not(.co-option-list__option), co-list-footer")))return}this.processKey(o.key)&&o.preventDefault()},this.onSearchInput=o=>{const i=o.target.value,t=!!this.term&&!i;this.term=i,this.activeIndex=-1,this.lastFillLen=-1,t&&this.takeSnapshot(),this.debounceTimer&&clearTimeout(this.debounceTimer),this.debounceTimer=setTimeout((()=>this.coSearch.emit(i)),this.searchDebounce)},this.onPtrMove=o=>{const i=this.ptrDrag;if(!i)return;if(!i.started){if(Math.abs(o.clientY-i.startY)<3)return;i.started=!0,this.dragKey=i.id,this.previewOrder=i.originOrder,this.el.style.userSelect="none",this.sortSnapshot.has(i.id)||this.applyPreview([...i.originOrder])}o.preventDefault();const t=this.previewOrder.length;i.desiredTop=Math.max(i.blockTop,Math.min(i.blockTop+(t-1)*i.pitch,o.clientY-i.grabDY)),this.positionLifted();const r=this.previewOrder.indexOf(i.id),e=Math.max(0,Math.min(t-1,Math.round((i.desiredTop-i.blockTop)/i.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 i=o=>{o.stopPropagation(),o.preventDefault()};if(window.addEventListener("click",i,!0),setTimeout((()=>window.removeEventListener("click",i,!0)),0),this.settleLifted(o),this.previewOrder.length&&this.previewOrder.join(" ")!==o.originOrder.join(" ")){const i=new Map(this.displaySnapshot.map((o=>[o._id,o])));this.coReorder.emit({value:this.previewOrder,item:i.get(o.id)})}this.previewOrder=[]},this.onPtrKey=o=>{var i;if("Escape"!==o.key||!this.ptrDrag)return;o.stopPropagation(),o.preventDefault();const t=this.ptrDrag;if(this.removePtrListeners(),this.ptrDrag=void 0,t.started){if(this.displaySnapshot!==t.originDisplay){this.pendingFlip={tops:this.captureRowTops(),movedId:t.id,spring:!0};const o=null===(i=this.el.shadowRoot)||void 0===i?void 0:i.querySelector(`.co-option-list__option[data-id="${CSS.escape(t.id)}"]`);o&&(o.style.transition="none",o.style.transform=""),this.displaySnapshot=t.originDisplay,this.sortSnapshot=t.originSort,this.dragKey="",this.el.style.userSelect=""}else this.settleLifted(t);this.previewOrder=[]}},this.handleRowDragEnd=()=>{this.resetDragState()},this.handleRowDragLeave=(o,i)=>{this.overKey!==i||o.currentTarget.contains(o.relatedTarget)||(this.overKey="")},this.disarmDrag=()=>{this.armedKey&&!this.dragKey&&(this.armedKey="")},this.onNativeScroll=o=>{const i=o.target;this.scrollTop=i.scrollTop,this.maybeLoadMore(i.scrollTop,i.clientHeight,i.scrollHeight)}}get parsedItems(){return c(this.items)}get selectedIds(){return function(o){if(!o)return[];try{const i=JSON.parse(o);return Array.isArray(i)?i:[o]}catch(i){return[o]}}(this.value)}get orderedItems(){return this.selectedFirst?function(o,i,t,r){var e;if(0===i.size)return o;const s=new Map(o.map((o=>[o._id,o]))),a=[];if(r)for(const t of o)i.has(t._id)&&a.push(t);else{const o=new Map(t.map((o=>[o._id,o])));for(const t of i){const i=null!==(e=s.get(t))&&void 0!==e?e:o.get(t);i&&a.push(i)}}const c=o.filter((o=>!i.has(o._id)));return[...a,...c]}(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=n(-1,1,this.orderedItems))}componentDidRender(){this.optionsEl&&!this.osInstance&&(this.osInstance=s(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=n(-1,1,this.orderedItems):this.activeIndex>=this.orderedItems.length&&(this.activeIndex=-1);const o=Math.max(0,this.orderedItems.length*d-272);this.scrollTop>this.orderedItems.length*d&&(this.scrollTop=o)}onValueChange(){var o;if(!this.selectedFirst)return;const i=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=i?this.orderedItems.findIndex((o=>o._id===i)):-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,i;for(let t=0;t<20;t++){if(null===(o=this.searchInputEl)||void 0===o||o.focus(),this.searchInputEl&&(null===(i=this.el.shadowRoot)||void 0===i?void 0:i.activeElement)===this.searchInputEl)return;await new Promise((o=>requestAnimationFrame((()=>o()))))}}async scrollToSelected(){var o,i,t,r;const e=function(o,i){const t=new Set(i);return o.findIndex((o=>t.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!==(i=null===(o=this.osInstance)||void 0===o?void 0:o.elements().viewport)&&void 0!==i?i:this.optionsEl;if(s&&s.clientHeight>0){if(this.virtual){const o=e*d;let i=s.scrollTop;o<i?i=o:o+d>i+s.clientHeight&&(i=o+d-s.clientHeight),this.scrollTop=i,s.scrollTop=i}else null===(r=null===(t=this.el.shadowRoot)||void 0===t?void 0:t.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 i of c(this.selectedItems))o.set(i._id,i);for(const i of this.parsedItems)o.has(i._id)||o.set(i._id,i);this.displaySnapshot=this.selectedIds.map((i=>o.get(i))).filter(Boolean)}processKey(o){const i=this.orderedItems;switch(o){case"ArrowDown":return this.activeIndex=n(this.activeIndex,1,i),this.scrollActiveIntoView(),!0;case"ArrowUp":return this.activeIndex=n(this.activeIndex,-1,i),this.scrollActiveIntoView(),!0;case"Enter":{if(this.loading)return!0;const o=i[this.activeIndex];return!(!o||o.disabled||(this.pick(o),0))}default:return!1}}deselectItem(o){if(this.multiple){const i=this.selectedIds.filter((i=>i!==o._id));this.coChange.emit({value:i,item:o})}else this.coChange.emit({value:null,item:o})}pick(o){if(this.multiple){const i=this.selectedIds,t=i.indexOf(o._id)>=0?i.filter((i=>i!==o._id)):[...i,o._id];this.coChange.emit({value:t,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,i){this.armedKey===i?(this.dragKey=i,o.dataTransfer&&(o.dataTransfer.effectAllowed="move",o.dataTransfer.setData("text/plain",i))):o.preventDefault()}handleRowDragOver(o,i){if(!this.dragKey||this.dragKey===i)return;o.preventDefault(),o.dataTransfer&&(o.dataTransfer.dropEffect="move"),this.overKey=i;const t=this.dragOrderIds();this.dropAfter=t.indexOf(this.dragKey)<t.indexOf(i)}applyPreview(o){this.pendingFlip={tops:this.captureRowTops(),movedId:this.dragKey,spring:!1};const i=new Map(this.orderedItems.map((o=>[o._id,o])));for(const o of this.displaySnapshot)i.has(o._id)||i.set(o._id,o);this.sortSnapshot=new Set(o),this.displaySnapshot=o.map((o=>i.get(o))).filter(Boolean),this.previewOrder=o}startPointerDrag(o,i){var t;if(0!==o.button||this.ptrDrag)return;const r=function(o,i){const t=new Set(i);return o.filter((o=>t.has(o._id))).map((o=>o._id))}(this.orderedItems,this.selectedIds);if(!r.includes(i))return;const e=o.currentTarget.closest(".co-option-list__option");if(!e)return;o.preventDefault(),o.stopPropagation();const s=e.getBoundingClientRect(),a=null===(t=this.el.shadowRoot)||void 0===t?void 0:t.querySelectorAll(".co-option-list__option[data-id]"),c=null==a?void 0:a[0],n=a&&a.length>=2?a[1].getBoundingClientRect().top-a[0].getBoundingClientRect().top:s.height||d,l=c?this.orderedItems.findIndex((o=>o._id===c.dataset.id)):0,p=c?c.getBoundingClientRect().top-Math.max(0,l)*n:s.top;this.ptrDrag={id:i,grabDY:o.clientY-s.top,blockTop:p,pitch:n,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 i=this.ptrDrag;if(!i||!i.started)return;const t=null===(o=this.el.shadowRoot)||void 0===o?void 0:o.querySelector(`.co-option-list__option[data-id="${CSS.escape(i.id)}"]`);if(!t)return;const r=this.previewOrder.indexOf(i.id);if(-1===r)return;const e=i.blockTop+r*i.pitch;t.style.transition="none",t.style.transform=`translateY(${i.desiredTop-e}px) scale(1.02)`}settleLifted(o){var i;const t=null===(i=this.el.shadowRoot)||void 0===i?void 0:i.querySelector(`.co-option-list__option[data-id="${CSS.escape(o.id)}"]`),r=()=>{this.dragKey="",this.el.style.userSelect=""};t?(t.style.transition="transform var(--co-motion-duration-base) var(--co-motion-ease-spring)",t.style.transform="",t.addEventListener("transitionend",(()=>{t.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,i){o.preventDefault(),o.stopPropagation();const t=this.dragKey,r=this.dragOrderIds();if(this.resetDragState(),t===i||!r.includes(t)||!r.includes(i))return;const e=new Map(this.orderedItems.map((o=>[o._id,o]))),s=function(o,i,t,r){return r(i)||r(t)?o:function(o,i,t){if(i===t)return o;const r=o.indexOf(i),e=o.indexOf(t);if(-1===r||-1===e)return o;const s=[...o];return s.splice(e,0,s.splice(r,1)[0]),s}(o,i,t)}(r,t,i,(o=>{var i;return!!(null===(i=e.get(o))||void 0===i?void 0:i.pinned)}));s!==r&&this.coListReorder.emit({value:s,item:e.get(t)})}captureRowTops(){var o;const i=new Map;return null===(o=this.el.shadowRoot)||void 0===o||o.querySelectorAll(".co-option-list__option[data-id]").forEach((o=>i.set(o.dataset.id,o.getBoundingClientRect().top))),i}runFlip(){var o,i,t;if(!this.pendingFlip)return;const{tops:r,movedId:e,spring:s}=this.pendingFlip;this.pendingFlip=void 0;const a=Array.from(null!==(i=null===(o=this.el.shadowRoot)||void 0===o?void 0:o.querySelectorAll(".co-option-list__option[data-id]"))&&void 0!==i?i:[]),c=(null===(t=this.ptrDrag)||void 0===t?void 0:t.started)?this.ptrDrag.id:null;for(const o of a)o.dataset.id!==c&&(o.style.transition="none",o.style.transform="");const n=[];for(const o of a){const i=o.dataset.id;if(i===c)continue;const t=r.get(i);if(void 0===t)continue;const a=t-o.getBoundingClientRect().top;a&&n.push({row:o,delta:a,spring:s&&i===e})}for(const{row:o,delta:i}of n)o.style.transform=`translateY(${i}px)`;for(const o of a){if(o.dataset.id===c)continue;const i=n.find((i=>i.row===o));i?(o.style.transition="transform var(--co-motion-duration-base) "+(i.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,i,t){if(this.loading)return;const{hasMore:r}=l(this.parsedItems.length,this.total,this.hasMore);r&&o+i>=t-40&&this.coLoadMore.emit()}fillViewport(){var o,i;const t=this.parsedItems.length;if(this.loading||0===t||t===this.lastFillLen)return;const{hasMore:r}=l(t,this.total,this.hasMore);if(!r)return;const e=null!==(i=null===(o=this.osInstance)||void 0===o?void 0:o.elements().viewport)&&void 0!==i?i:this.optionsEl;e&&0!==e.clientHeight&&e.scrollHeight-e.clientHeight<=40&&(this.lastFillLen=t,this.coLoadMore.emit())}scrollActiveIntoView(){requestAnimationFrame((()=>{var o,i;null===(i=null===(o=this.el.shadowRoot)||void 0===o?void 0:o.getElementById(`co-optlist-${this.activeIndex}`))||void 0===i||i.scrollIntoView({block:"nearest"})}))}renderLeading(o){return o.image||o.avatar?t("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?t("span",{class:"co-option-list__dot",style:{backgroundColor:o.color}}):o.icon&&o.iconTint?t("span",{class:"co-option-list__icon-tile",part:"icon-tile",style:{"--co-option-list-icon-tint":o.iconTint}},t("co-icon",{name:o.icon,size:14})):o.icon?t("co-icon",{name:o.icon,size:16,class:"co-option-list__icon"}):null}renderLabelText(o){const i=this.effectiveHighlightTerm,r=i?e(o,i):null;return r?r.map((o=>o.match?t("span",{class:"co-option-list__match"},o.text):o.text)):o}renderBadge(o){const i=t("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?t("co-tooltip",{class:"co-option-list__badge-tip",content:o.tooltip},i):i}renderRow(o,i,r){const e=r.includes(o._id),s=!this.listDragActive&&this.reorderable&&this.selectedFirst&&e&&!this.term,a=this.listDragActive&&!o.pinned&&!this.term;return t("div",{class:{"co-option-list__option":!0,"co-option-list__option--selected":e,"co-option-list__option--active":i===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-${i}`,"data-id":o._id,role:"option","aria-selected":e?"true":"false","aria-disabled":o.disabled?"true":"false",draggable:a&&this.armedKey===o._id,onClick:()=>!o.disabled&&this.pick(o),onMouseEnter:()=>{this.activeIndex=i},onDragStart:a?i=>this.handleRowDragStart(i,o._id):void 0,onDragOver:a?i=>this.handleRowDragOver(i,o._id):void 0,onDrop:a?i=>this.handleRowDrop(i,o._id):void 0,onDragEnd:a?this.handleRowDragEnd:void 0,onDragLeave:a?i=>this.handleRowDragLeave(i,o._id):void 0},(s||a)&&t("span",{class:"co-option-list__drag-handle",part:"drag-handle",title:"Drag to reorder",onMouseDown:a?()=>this.armedKey=o._id:void 0,onPointerDown:s?i=>this.startPointerDrag(i,o._id):void 0,onClick:o=>o.stopPropagation()},t("co-icon",{name:"dots-six-vertical",size:16})),this.renderLeading(o),t("div",{class:"co-option-list__text"},t("span",{class:"co-option-list__title"},t("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&&t("span",{class:"co-option-list__suffix"},"- ",o.suffix),o.badge&&this.renderBadge(o.badge)),o.description&&t("span",{class:"co-option-list__desc"},o.description)),o.suffix&&"end"===this.suffixAlign&&t("span",{class:"co-option-list__suffix co-option-list__suffix--end"},o.suffix),this.pinnable&&t("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:i=>{i.stopPropagation(),this.coPinToggle.emit({item:o})}},t("co-icon",{name:"push-pin",size:16,weight:o.pinned?"fill":"regular"})),e&&this.removableItems&&this.multiple&&t("button",{class:"co-option-list__row-action",type:"button",tabIndex:-1,"aria-label":`Remove ${o.label}`,onClick:i=>{i.stopPropagation(),this.coRemoveItem.emit(o._id)}},t("co-icon",{name:"x-circle",size:16,weight:"fill"})),e&&!this.removableItems&&"deselect"===this.selectedAffordance&&t("button",{class:"co-option-list__row-action",type:"button",tabIndex:-1,"aria-label":`Deselect ${o.label}`,onClick:i=>{i.stopPropagation(),this.deselectItem(o)}},t("co-icon",{name:"x-circle",size:16,weight:"fill"})),e&&!this.removableItems&&"check"===this.selectedAffordance&&t("co-icon",{name:"check",size:16,class:"co-option-list__check"}))}renderVirtual(o,i){const{totalHeight:r,startIdx:e,endIdx:s,offsetY:a}=function(o,i){const t=i*d,r=Math.max(0,Math.floor(o/d)-3);return{totalHeight:t,startIdx:r,endIdx:Math.min(i,r+8+6),offsetY:r*d}}(this.scrollTop,o.length);return t("div",{class:"co-option-list__spacer",style:{height:`${r}px`,position:"relative"}},t("div",{style:{position:"absolute",top:`${a}px`,left:"0",right:"0"}},o.slice(e,s).map(((o,t)=>this.renderRow(o,e+t,i)))))}render(){const o=this.orderedItems,i=this.selectedIds,{hasMore:r,remaining:e}=l(this.parsedItems.length,this.total,this.hasMore),s=!!this.clearOptionLabel&&i.length>0;return t("div",{key:"ca480a23b7127ff745ee57002a71dea707e32e95",class:"co-option-list",onKeyDown:this.onRootKeyDown},this.searchable&&t("div",{key:"de6a96f09450c05c9194933f3e5f732e158437c7",class:"co-option-list__search",part:"search"},t("co-icon",{key:"f99a19e0a194d6a0bcce6d40a736197593af8fdf",name:"magnifying-glass",size:16}),t("input",{key:"26fabd78b4660523e25b40bc8e92740df2677244",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"})),t("slot",{key:"05dc7fb2d632ba58b3b960e9355b1e48a71df32c",name:"header"}),t("div",{key:"b3edc8acf06c7f433da9584249be73d25c5f1fee",class:"co-option-list__options",part:"options",role:"listbox","aria-multiselectable":this.multiple?"true":"false",ref:o=>this.optionsEl=o,onScroll:this.onNativeScroll},t("div",{key:"8abe9a20998f35332ee320512a433d8fb8196875",class:"co-option-list__inner"},s&&t("button",{key:"9b420f4a08d94c7588657ec73102253dc3aace29",class:"co-option-list__clear-row",type:"button",onClick:()=>this.coClearSelection.emit()},t("co-icon",{key:"5e0d86b76f5b85ee41a4534284c4e05fec4f2df1",name:"x-circle",size:14}),t("span",{key:"ff554cd331978bbe2e6aaef44b590a9de66c67d5"},this.clearOptionLabel)),this.loading&&0===o.length&&t("div",{key:"1db10de6bf8b6cda7b7ca13f5969400ab420a3e7",class:"co-option-list__loading"},t("co-loader",{key:"d724879c38f755067e544503c233c740f932f46e",size:"sm"})),!this.loading&&0===o.length&&t("div",{key:"95f42f0028e6f7a1641bc45f6a294fe2ded5a29f",class:"co-option-list__empty"},t("co-icon",{key:"1bed6dbd8c0c4e0722f6c28c2867331bba4e3879",name:"magnifying-glass",size:20}),t("span",{key:"7f2d01d6eed6e91ab14ace418f52167713963976"},this.emptyMessage)),o.length>0&&this.virtual?this.renderVirtual(o,i):function(o){const i=[];let t,r=0;for(const e of o)e.group&&e.group!==t&&i.push({kind:"header",label:e.group}),t=e.group,i.push({kind:"item",item:e,index:r}),r++;return i}(o).map((o=>"header"===o.kind?t("div",{class:"co-option-list__group",role:"presentation"},o.label):this.renderRow(o.item,o.index,i))),this.loading&&o.length>0&&t("div",{key:"9fb95c0193357bf50eabc21dae3f8ca0bb2b3a9f",class:"co-option-list__loading-more"},t("co-loader",{key:"dddf472d61b1c14f281212b02538bd576dce09d1",size:"sm"})),!this.loading&&r&&e>0&&t("div",{key:"6d4f16d14d67b137fe37b67fe1590d209b51b800",class:"co-option-list__more"},e," more results"))),t("slot",{key:"9091482eaf2228e93b3eeb893e804d5fcd8c3d44",name:"footer"}))}get el(){return r(this)}static get watchers(){return{items:[{onItemsChange:0}],value:[{onValueChange:0}]}}};p.style=".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:var(--co-option-list-search-height, 32px);box-sizing:border-box;margin:var(--co-option-list-search-margin, var(--co-spacing-md, 12px) var(--co-spacing-md, 12px) 0);padding:var(--co-option-list-search-padding, 0 var(--co-spacing-sm2, 8px) 0 var(--co-spacing-xs, 4px));border:var(--co-option-list-search-border, 1px solid var(--co-semantic-border-subtle, rgba(31, 28, 27, 0.08)));border-radius:var(--co-option-list-search-radius, var(--co-border-radius-xs, 8px));background:var(--co-option-list-search-bg, transparent);color:var(--co-semantic-text-muted, #888888)}.co-option-list__search:focus-within{border-color:var(--co-option-list-search-border-focus, var(--co-semantic-border-focus, rgba(31, 28, 27, 0.25)));background:var(--co-option-list-search-bg-focus, var(--co-option-list-search-bg, transparent))}.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);caret-color:var(--co-option-list-search-caret, auto)}.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-option-list-options-padding, var(--co-spacing-md, 12px))}.co-option-list__inner{display:flex;flex-direction:column;gap:var(--co-option-list-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-option-list-item-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-option-list-item-radius, var(--co-border-radius-xs, 8px));background:var(--co-option-list-item-bg, transparent);box-shadow:var(--co-option-list-item-ring, none);cursor:pointer;font-size:var(--co-option-list-item-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-option-list-active-bg, var(--co-semantic-surface-hover, rgba(31, 28, 27, 0.04)));box-shadow:var(--co-option-list-active-ring, none)}.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__icon-tile{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:var(--co-option-list-icon-tile-size, 22px);height:var(--co-option-list-icon-tile-size, 22px);margin:0 var(--co-spacing-xxs, 2px);border-radius:var(--co-option-list-icon-tile-radius, var(--co-border-radius-xxs, 4px));background:color-mix(in srgb, var(--co-option-list-icon-tint) var(--co-option-list-icon-tile-mix, 12%), transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--co-option-list-icon-tint) var(--co-option-list-icon-tile-ring-mix, 0%), transparent);color:var(--co-option-list-icon-tint)}.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:var(--co-option-list-label-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-option-list-group-padding-top, var(--co-spacing-sm2, 8px)) var(--co-spacing-xs, 4px) var(--co-option-list-group-padding-bottom, var(--co-spacing-xs, 4px));font-family:var(--co-option-list-group-font-family, var(--co-font-family-mono, 'Geist Mono', 'SFMono-Regular', Consolas, 'Liberation Mono', monospace));font-size:var(--co-option-list-group-font-size, var(--co-font-size-10, 10px));font-weight:var(--co-option-list-group-font-weight, 400);text-transform:var(--co-option-list-group-text-transform, uppercase);letter-spacing:var(--co-option-list-group-letter-spacing, var(--co-font-letter-spacing-overline, 0.08em));line-height:1.1;color:var(--co-option-list-group-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}";export{a as co_chip,p as co_option_list}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as o,c as a,h as t}from"./p-DJkaRtbb.js";import{a as i}from"./p-Ch1jfwZ2.js";import{s as r}from"./p-CBX_oabB.js";function e(o,a,t){const i=Math.min(a,0),r=Math.max(t,0);return Math.min(Math.max(o,i),r)}const s=["button","a[href]","input","select","textarea",'[role="button"]','[role="checkbox"]','[role="radio"]','[role="switch"]','[role="combobox"]','[role="option"]','[role="menuitem"]','[role="slider"]','[role="tab"]','[role="separator"]',"[data-no-drag]"].join(", "),n=class{constructor(t){o(this,t),this.coClose=a(this,"coClose",7),this.coAfterClose=a(this,"coAfterClose",3),this.coAfterOpen=a(this,"coAfterOpen",3),this.open=!1,this.heading="",this.closable=!0,this.closeOnOverlay=!0,this.closeOnEscape=!1,this.size="md",this.noDividers=!1,this.headerDivider=!0,this.appearance="default",this.backdrop="default",this.inline=!1,this.movable=!1,this.hasFooter=!1,this.handleFooterSlotChange=o=>{this.hasFooter=r(o)},this.handleOverlayClick=()=>{this.closeOnOverlay&&this.coClose.emit()},this.handleCloseClick=()=>{this.coClose.emit()},this.stopPropagation=o=>{o.stopPropagation()},this.handleTransitionEnd=o=>{if(o.target!==this.modalEl)return;const a=i(o.propertyName,this.open,"transform");"after-open"===a?this.coAfterOpen.emit():"after-close"===a&&this.coAfterClose.emit()},this.dragging=!1,this.committedOffset={x:0,y:0},this.liveOffset={x:0,y:0},this.handleDragDown=o=>{var a;if(!this.movable||this.dragging||0!==o.button)return;if(function(o,a){const t="function"==typeof o.composedPath?o.composedPath():[o.target];for(const o of t){if(a&&o===a)return!1;if(o&&"function"==typeof o.matches&&o.matches(s))return!0}return!1}(o,this.headerEl))return;const t=null===(a=this.modalEl)||void 0===a?void 0:a.getBoundingClientRect();t&&(o.preventDefault(),this.dragging=!0,this.dragPointerId=o.pointerId,this.dragStart={x:o.clientX,y:o.clientY},this.dragRect={left:t.left-this.committedOffset.x,top:t.top-this.committedOffset.y,width:t.width,height:t.height},this.dragViewport={width:window.innerWidth,height:window.innerHeight},this.capturePointer(o),window.addEventListener("blur",this.handleWindowBlur))},this.handleDragMove=o=>{if(!this.isActiveDragPointer(o))return;if(!this.dragStart||!this.dragRect||!this.dragViewport)return;const a={x:(t=this.committedOffset).x+(r={x:o.clientX,y:o.clientY}).x-(i=this.dragStart).x,y:t.y+r.y-i.y};var t,i,r;this.writeOffset(function(o,a,t,i=48){const r=Math.min(i,a.width),s=Math.min(i,a.height);return{x:e(o.x,r-a.left-a.width,t.width-r-a.left),y:e(o.y,-a.top,t.height-s-a.top)}}(a,this.dragRect,this.dragViewport))},this.handleDragUp=o=>{this.isActiveDragPointer(o)&&(this.committedOffset=this.liveOffset,this.releasePointer(o),this.endDrag())},this.handleDragCancel=o=>{this.isActiveDragPointer(o)&&(this.releasePointer(o),this.writeOffset(this.committedOffset),this.endDrag())},this.handleWindowBlur=()=>{this.dragging&&(this.writeOffset(this.committedOffset),this.endDrag())}}get usesOverlay(){return"none"!==this.backdrop&&!this.inline}handleKeydown(o){this.open&&this.closeOnEscape&&"Escape"===o.key&&this.coClose.emit()}resetPositionOnOpen(o){this.endDrag(),o&&(this.committedOffset={x:0,y:0},this.writeOffset({x:0,y:0}))}disconnectedCallback(){window.removeEventListener("blur",this.handleWindowBlur)}endDrag(){window.removeEventListener("blur",this.handleWindowBlur),this.dragging=!1,this.dragPointerId=void 0,this.dragStart=void 0,this.dragRect=void 0,this.dragViewport=void 0}isActiveDragPointer(o){return this.dragging&&o.pointerId==this.dragPointerId}capturePointer(o){const a=this.headerEl;if(a&&"function"==typeof a.setPointerCapture&&null!=o.pointerId)try{a.setPointerCapture(o.pointerId)}catch(o){}}releasePointer(o){const a=this.headerEl;if(a&&"function"==typeof a.releasePointerCapture&&null!=o.pointerId)try{a.releasePointerCapture(o.pointerId)}catch(o){}}writeOffset(o){this.liveOffset=o;const a=this.modalEl;a&&(0===o.x&&0===o.y?a.style.removeProperty("--co-modal-translate"):a.style.setProperty("--co-modal-translate",`${o.x}px ${o.y}px`))}render(){const o="panel"!==this.appearance&&"dialog"!==this.appearance,a=o?20:18,i=t("div",{class:{"co-modal__frame":!0,"co-sq-elevation-fallback":o,"co-modal__frame--standalone":!this.usesOverlay}},t("div",{class:{"co-modal":!0,"co-sq-clip":o,"co-sq-elevation":o,"co-modal--open":this.open,"co-modal--xs":"xs"===this.size,"co-modal--sm":"sm"===this.size,"co-modal--lg":"lg"===this.size,"co-modal--full":"full"===this.size,"co-modal--no-dividers":this.noDividers,"co-modal--no-header-divider":!this.headerDivider,"co-modal--panel":"panel"===this.appearance,"co-modal--dialog":"dialog"===this.appearance,"co-modal--movable":this.movable},part:"modal",ref:o=>this.modalEl=o,role:"dialog","aria-modal":"true","aria-labelledby":this.heading?"modal-heading":void 0,onClick:this.usesOverlay?this.stopPropagation:void 0,onTransitionEnd:this.handleTransitionEnd},t("div",{class:{"co-modal__header":!0,"co-modal__header--movable":this.movable,"co-modal__header--dragging":this.dragging},part:"header",ref:o=>this.headerEl=o,onPointerDown:this.movable?this.handleDragDown:void 0,onPointerMove:this.movable?this.handleDragMove:void 0,onPointerUp:this.movable?this.handleDragUp:void 0,onPointerCancel:this.movable?this.handleDragCancel:void 0},t("slot",{name:"header-leading"}),t("div",{class:"co-modal__header-text",part:"header-text"},t("h2",{class:"co-modal__heading",part:"heading",id:"modal-heading"},this.heading),this.description&&t("p",{class:"co-modal__description",part:"description"},this.description)),t("slot",{name:"header-actions"}),this.closable&&t("button",{class:"co-modal__close",type:"button","aria-label":"Close",onClick:this.handleCloseClick},t("co-icon",{name:"x",size:a}))),!this.noDividers&&t("div",{class:"co-modal__body",part:"body"},t("slot",null)),t("div",{class:{"co-modal__footer":!0,"co-modal__footer--empty":!this.hasFooter},part:"footer"},t("slot",{name:"footer",onSlotchange:this.handleFooterSlotChange}))));return this.usesOverlay?t("co-overlay",{open:this.open,onCoClose:this.handleOverlayClick},i):i}static get watchers(){return{open:[{resetPositionOnOpen:0}]}}};n.style='.co-sq-elevation{border-radius:var(--co-sq-r);corner-shape:squircle;box-shadow:var(--co-sq-shadow)}.co-sq-clip{overflow:hidden;border-radius:var(--co-sq-r);corner-shape:squircle}@supports not (corner-shape: squircle){.co-sq-elevation{box-shadow:none}.co-sq-elevation-fallback{filter:var(--co-sq-drop-shadow)}.co-sq-clip{border-radius:0;--co-sq-tl:url("data:image/svg+xml,<svg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 100 100%27 preserveAspectRatio=%27none%27><path d=%27M100 0L97.5 0L95 0L92.5 0L90 0L87.5 0.01L85 0.01L82.5 0.02L80 0.04L77.5 0.06L75 0.1L72.5 0.14L70 0.2L67.5 0.28L65 0.38L62.5 0.5L60 0.65L57.5 0.83L55 1.04L52.5 1.3L50 1.6L47.5 1.96L45 2.37L42.5 2.85L40 3.41L37.5 4.05L35 4.8L32.5 5.65L30 6.63L27.5 7.77L25 9.07L22.5 10.58L20 12.34L17.5 14.41L15 16.85L12.5 19.79L10 23.42L7.5 28.06L5 34.37L2.5 44.29L0 100L100 100Z%27 fill=%27%23fff%27/></svg>");--co-sq-tr:url("data:image/svg+xml,<svg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 100 100%27 preserveAspectRatio=%27none%27><path d=%27M0 0L2.5 0L5 0L7.5 0L10 0L12.5 0.01L15 0.01L17.5 0.02L20 0.04L22.5 0.06L25 0.1L27.5 0.14L30 0.2L32.5 0.28L35 0.38L37.5 0.5L40 0.65L42.5 0.83L45 1.04L47.5 1.3L50 1.6L52.5 1.96L55 2.37L57.5 2.85L60 3.41L62.5 4.05L65 4.8L67.5 5.65L70 6.63L72.5 7.77L75 9.07L77.5 10.58L80 12.34L82.5 14.41L85 16.85L87.5 19.79L90 23.42L92.5 28.06L95 34.37L97.5 44.29L100 100L0 100Z%27 fill=%27%23fff%27/></svg>");--co-sq-bl:url("data:image/svg+xml,<svg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 100 100%27 preserveAspectRatio=%27none%27><path d=%27M0 0L2.5 55.71L5 65.63L7.5 71.94L10 76.58L12.5 80.21L15 83.15L17.5 85.59L20 87.66L22.5 89.42L25 90.93L27.5 92.23L30 93.37L32.5 94.35L35 95.2L37.5 95.95L40 96.59L42.5 97.15L45 97.63L47.5 98.04L50 98.4L52.5 98.7L55 98.96L57.5 99.17L60 99.35L62.5 99.5L65 99.62L67.5 99.72L70 99.8L72.5 99.86L75 99.9L77.5 99.94L80 99.96L82.5 99.98L85 99.99L87.5 99.99L90 100L92.5 100L95 100L97.5 100L100 100L100 0Z%27 fill=%27%23fff%27/></svg>");--co-sq-br:url("data:image/svg+xml,<svg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 100 100%27 preserveAspectRatio=%27none%27><path d=%27M100 0L97.5 55.71L95 65.63L92.5 71.94L90 76.58L87.5 80.21L85 83.15L82.5 85.59L80 87.66L77.5 89.42L75 90.93L72.5 92.23L70 93.37L67.5 94.35L65 95.2L62.5 95.95L60 96.59L57.5 97.15L55 97.63L52.5 98.04L50 98.4L47.5 98.7L45 98.96L42.5 99.17L40 99.35L37.5 99.5L35 99.62L32.5 99.72L30 99.8L27.5 99.86L25 99.9L22.5 99.94L20 99.96L17.5 99.98L15 99.99L12.5 99.99L10 100L7.5 100L5 100L2.5 100L0 100L0 0Z%27 fill=%27%23fff%27/></svg>");-webkit-mask:var(--co-sq-tl) top left / var(--co-sq-r) var(--co-sq-r) no-repeat, var(--co-sq-tr) top right / var(--co-sq-r) var(--co-sq-r) no-repeat, var(--co-sq-bl) bottom left / var(--co-sq-r) var(--co-sq-r) no-repeat, var(--co-sq-br) bottom right / var(--co-sq-r) var(--co-sq-r) no-repeat, linear-gradient(#fff 0 0) center / 100% calc(100% - 2 * var(--co-sq-r) + 2px) no-repeat, linear-gradient(#fff 0 0) center / calc(100% - 2 * var(--co-sq-r) + 2px) 100% no-repeat;mask:var(--co-sq-tl) top left / var(--co-sq-r) var(--co-sq-r) no-repeat, var(--co-sq-tr) top right / var(--co-sq-r) var(--co-sq-r) no-repeat, var(--co-sq-bl) bottom left / var(--co-sq-r) var(--co-sq-r) no-repeat, var(--co-sq-br) bottom right / var(--co-sq-r) var(--co-sq-r) no-repeat, linear-gradient(#fff 0 0) center / 100% calc(100% - 2 * var(--co-sq-r) + 2px) no-repeat, linear-gradient(#fff 0 0) center / calc(100% - 2 * var(--co-sq-r) + 2px) 100% no-repeat}}:host{display:contents;--co-overlay-blur:8px;--co-overlay-bg:rgba(31, 28, 27, 0.35)}.co-modal__frame{display:flex;contain:layout;--co-sq-drop-shadow:drop-shadow(0 1px 2px rgba(31, 28, 27, 0.06)) drop-shadow(0 14px 34px rgba(31, 28, 27, 0.16))}.co-modal{display:flex;flex-direction:column;background:var(--co-semantic-surface-secondary);--co-modal-r:var(--co-border-radius-xl);--co-sq-r:var(--co-modal-r);--co-sq-shadow:0 1px 4px rgba(31, 28, 27, 0.06), 0 14px 68px rgba(31, 28, 27, 0.16);max-width:540px;width:90vw;max-height:80vh;font-family:var(--co-font-family-primary);transform:scale(0.96);opacity:0;transition:transform var(--co-motion-duration-fast) var(--co-motion-ease-in), opacity var(--co-motion-duration-fast) var(--co-motion-ease-in)}.co-modal--sm{max-width:400px}.co-modal--lg{max-width:680px}.co-modal--full{max-width:min(1400px, 95vw);width:95vw;height:92vh;max-height:92vh}.co-modal--full .co-modal__body{flex:1;min-height:0;padding:0;overflow:hidden}.co-modal--open{transform:scale(1);opacity:1;transition:transform var(--co-motion-duration-base) var(--co-motion-ease-out), opacity var(--co-motion-duration-base) var(--co-motion-ease-out)}.co-modal__header{display:flex;align-items:flex-start;gap:var(--co-spacing-md);padding:var(--co-spacing-xl) var(--co-spacing-xl) var(--co-spacing-md)}.co-modal__header-text{display:flex;flex-direction:column;gap:var(--co-spacing-sm);flex:1}.co-modal__heading{margin:0;font-size:var(--co-font-size-20);font-weight:700;color:var(--co-semantic-text-default);line-height:1.3}.co-modal__description{margin:0;font-size:var(--co-font-size-14);color:var(--co-semantic-text-secondary);line-height:1.5}.co-modal__close{display:flex;align-items:center;justify-content:center;padding:var(--co-spacing-xs);margin:0;border:none;background:transparent;cursor:pointer;color:var(--co-semantic-text-muted);border-radius:var(--co-border-radius-sm);flex-shrink:0;transition:background var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-modal__close:hover{background:var(--co-semantic-surface-hover)}.co-modal__body{padding:var(--co-spacing-lg) var(--co-spacing-xl);overflow-y:auto;overscroll-behavior:contain;font-size:var(--co-font-size-14);color:var(--co-semantic-text-secondary);line-height:1.6;border-top:1px solid var(--co-semantic-border-default)}.co-modal__body:empty{display:none}.co-modal__footer{display:flex;justify-content:flex-end;gap:var(--co-spacing-md);padding:var(--co-spacing-lg) var(--co-spacing-xl) var(--co-spacing-xl);border-top:1px solid var(--co-semantic-border-default);--co-button-radius:var(--co-border-radius-xs)}.co-modal__footer--empty{display:none}.co-modal--no-dividers .co-modal__footer{border-top:none}.co-modal--no-header-divider .co-modal__body{border-top:none;padding-top:0}.co-modal--xs{width:var(--co-modal-width, 369px);max-width:var(--co-modal-width, 369px)}.co-modal--panel{border-radius:var(--co-border-radius-sm);border:1px solid var(--co-semantic-border-subtle);box-shadow:var(--co-shadow-lg)}.co-modal--panel .co-modal__header{padding:16px 20px 16px 24px;align-items:center;border-bottom:1px solid var(--co-semantic-border-subtle)}.co-modal--panel .co-modal__heading{font-size:var(--co-font-size-20);font-weight:500;line-height:1.25;letter-spacing:var(--co-font-letter-spacing-body)}.co-modal--panel .co-modal__close{width:32px;height:32px;padding:0;border-radius:var(--co-border-radius-full);color:var(--co-semantic-text-default)}.co-modal--panel .co-modal__body{padding:24px;border-top:none}.co-modal--panel .co-modal__footer{padding:12px 24px;gap:12px;border-top:1px solid var(--co-semantic-border-subtle)}.co-modal__frame--standalone{position:fixed;inset:0;z-index:var(--co-modal-z-index, 1000);display:flex;align-items:center;justify-content:center;pointer-events:none}.co-modal__frame--standalone .co-modal--open{pointer-events:auto}.co-modal__frame--standalone .co-modal:not(.co-modal--open){visibility:hidden;transition:transform var(--co-motion-duration-fast) var(--co-motion-ease-in), opacity var(--co-motion-duration-fast) var(--co-motion-ease-in), visibility 0s linear var(--co-motion-duration-fast)}.co-modal--dialog{border-radius:var(--co-border-radius-lg)}.co-modal--dialog .co-modal__header{padding:var(--co-spacing-3xl) var(--co-spacing-3xl) 0;align-items:flex-start;gap:var(--co-spacing-lg)}.co-modal--dialog .co-modal__header-text{gap:var(--co-spacing-lg)}.co-modal--dialog .co-modal__heading{font-size:var(--co-font-size-22);font-weight:500;line-height:1.25;letter-spacing:var(--co-font-letter-spacing-body)}.co-modal--dialog .co-modal__description{font-size:var(--co-font-size-16);line-height:1.5;letter-spacing:var(--co-font-letter-spacing-body)}.co-modal--dialog .co-modal__close{width:32px;height:32px;padding:0;margin:-3px -6px 0 0;border-radius:var(--co-border-radius-full);color:var(--co-semantic-text-default)}.co-modal--dialog .co-modal__body{padding:var(--co-spacing-lg) var(--co-spacing-3xl) var(--co-spacing-3xl);border-top:none;font-size:var(--co-font-size-16);line-height:1.5;letter-spacing:var(--co-font-letter-spacing-body)}.co-modal--dialog.co-modal--full .co-modal__body{padding:0}.co-modal--dialog .co-modal__footer{padding:var(--co-spacing-lg) var(--co-spacing-2xl);gap:var(--co-spacing-md);border-top-color:var(--co-semantic-border-subtle);--co-button-radius:var(--co-border-radius-sm)}.co-modal--movable{translate:var(--co-modal-translate, none)}.co-modal__header--movable{cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none}.co-modal__header--movable .co-modal__close{cursor:pointer}.co-modal__header--dragging{cursor:grabbing}';export{n as co_modal}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{i as t,w as e,g as a,s,r as n,a as o,b as r,C as i,c as l,d as u,F as E,e as g,f as T,h as m,I as d,j as S,L as _,k as I,l as c,M as x,m as P,P as p,n as A,o as f,p as L,q as F,S as N,t as h,u as C,T as k,V as y,v as O,x as b,y as H,z as M,A as R,B as z,D as B,E as G,G as j,H as Y,J as v,K as U,N as V,O as $,Q as w,R as D,U as J,W as K,X as W,Y as X,Z,_ as q}from"./p-RVQJEYxa.js";import{C as Q,T as tt,t as et}from"./p-CRxTFT_z.js";function at(t,e){return r(t,{includeUiExtensions:!1,features:e})}var st=Object.freeze({__proto__:null,COLOR_PALETTE:Q,CalloutNode:i,CobaltTaskItem:l,CobaltTaskList:u,FIELD_SYNC_META:E,FontFamilyExtension:g,FontSizeExtension:T,FontWeightExtension:m,IMAGE_LAYOUT_MODES:d,IndentExtension:S,LetterSpacingExtension:_,LineHeightExtension:I,ListStyleExtension:c,MentionNode:x,MergeField:P,PAGE_GAP_PX:p,PAGE_SIZES:A,PAGINATION_META:f,PRESETS:L,Pagination:F,SANITIZE_CONFIGS:N,SIGNATURE_TOKEN_STYLE:h,SignatureSlot:C,TABLE_CONTEXT_ITEMS:tt,TRAILING_BREAK_CLASS:k,VariableNode:y,applyImageLayoutMode:O,collectFields:b,computePageBreaks:H,createEditor:M,defaultToolbarForPreset:R,getExtensions:r,getImageLayoutMode:z,getPrintExtensions:B,headerImageWidth:G,htmlToJson:function(e,a="task",r){if(t(a))return n(e,a,r);const i=s(e??"",a,r);return o(i,at(a,r))},isPrintPreset:t,jsonToHtml:function(n,o="task",r){if(t(o))return n?e(n,o,r):"";if(function(t){if(!t)return!0;const e=t.content;return!Array.isArray(e)||0===e.length||e.every((t=>"paragraph"===t?.type&&(!t.content||0===t.content.length)))}(n))return"";const i=a(n,at(o,r));return s(i,o,r)},jsonToText:function(t){if(!t)return"";const e=new Set(["paragraph","heading","blockquote","listItem","bulletList","orderedList","codeBlock","horizontalRule"]),a=[],s=t=>{t&&("text"!==t.type||"string"!=typeof t.text?"variable"!==t.type?"mention"!==t.type?"mergeField"!==t.type?"signatureSlot"!==t.type?"hardBreak"!==t.type?(Array.isArray(t.content)&&t.content.forEach(s),e.has(t.type)&&a.push("\n")):a.push("\n"):a.push(`⟦sig:${t.attrs?.slot??1}⟧`):a.push(t.attrs?.value||`[[${t.attrs?.name??""}]]`):a.push(`@${t.attrs?.label??""}`):a.push(`{{${t.attrs?.name??""}}}`):a.push(t.text))};return s(t),a.join("").replace(/\n{3,}/g,"\n\n").trim()},layoutBox:j,maxLengthForPreset:Y,nextFreeSlot:v,normalizePrintHtml:U,pageContentHeight:V,parseFieldToken:$,readPrintHtml:n,resolvePageSize:w,sanitize:s,sanitizeFieldName:D,serializePrintHtml:J,setFieldValuesInHtml:K,signatureBoxStyle:W,signatureSlotHtml:X,signatureToken:Z,stripBandOffsets:q,toolbarItems:et,writePrintHtml:e});export{st as R}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as t,c as i,h as e,a as o}from"./p-DJkaRtbb.js";import{a as n}from"./p-Ch1jfwZ2.js";const s=["a[href]","area[href]","button:not([disabled])",'input:not([disabled]):not([type="hidden"])',"select:not([disabled])","textarea:not([disabled])","iframe","audio[controls]","video[controls]",'[contenteditable]:not([contenteditable="false"])','[tabindex]:not([tabindex="-1"])'].join(",");function r(t){return Array.from(t.querySelectorAll(s)).filter((t=>!t.hasAttribute("disabled")&&"true"!==t.getAttribute("aria-hidden")&&(null!==t.offsetParent||t.getClientRects().length>0)))}let a=0,h="";const c=class{constructor(e){t(this,e),this.coClose=i(this,"coClose",7),this.coAfterClose=i(this,"coAfterClose",3),this.coAfterOpen=i(this,"coAfterOpen",3),this.open=!1,this.trapFocus=!1,this.closeOnEscape=!1,this.hasLock=!1,this.pressDownTarget=null,this.pressUpTarget=null,this.handlePointerDown=t=>{var i;this.pressDownTarget=null!==(i=t.composedPath()[0])&&void 0!==i?i:null,this.pressUpTarget=null},this.handlePointerUp=t=>{var i;this.pressUpTarget=null!==(i=t.composedPath()[0])&&void 0!==i?i:null},this.handleClick=t=>{var i;const e=null!==(i=t.composedPath()[0])&&void 0!==i?i:null,o=e===this.overlayEl&&function(t,i,e){return null!==t&&t===i&&i===e}(this.pressDownTarget,this.pressUpTarget,e);this.pressDownTarget=null,this.pressUpTarget=null,o&&this.coClose.emit()},this.handleTransitionEnd=t=>{if(t.target!==this.overlayEl)return;const i=n(t.propertyName,this.open,"opacity");"after-open"===i?this.coAfterOpen.emit():"after-close"===i&&this.coAfterClose.emit()}}onOpenChange(t){t?this.acquireLock():this.releaseLock(),this.syncPopover(),this.trapFocus&&(t?this.captureAndFocus():this.restoreFocus())}componentDidLoad(){this.open&&this.acquireLock(),this.syncPopover(),this.open&&this.trapFocus&&this.captureAndFocus()}disconnectedCallback(){this.releaseLock(),this.trapFocus&&this.restoreFocus()}acquireLock(){this.hasLock||(this.hasLock=!0,"undefined"!=typeof document&&(0===a&&(h=document.body.style.overflow,document.body.style.overflow="hidden"),a++))}releaseLock(){this.hasLock&&(this.hasLock=!1,"undefined"!=typeof document&&0!==a&&(a--,0===a&&(document.body.style.overflow=h)))}syncPopover(){const t=this.overlayEl;if(t&&"function"==typeof t.showPopover)try{const i=t.matches(":popover-open");this.open&&!i?t.showPopover():!this.open&&i&&t.hidePopover()}catch(t){}}captureAndFocus(){var t;"undefined"!=typeof document&&(this.returnFocusEl=document.activeElement),t=()=>{var t;if(!this.open)return;const i=r(this.el);i.length>0?i[0].focus():null===(t=this.overlayEl)||void 0===t||t.focus()},"function"==typeof requestAnimationFrame?requestAnimationFrame(t):t()}restoreFocus(){const t=this.returnFocusEl;this.returnFocusEl=null,t&&"function"==typeof t.focus&&t.focus()}deepActiveElement(){if("undefined"==typeof document)return null;let t=document.activeElement;for(;t&&t.shadowRoot&&t.shadowRoot.activeElement;)t=t.shadowRoot.activeElement;return t}handleKeydown(t){this.open&&(this.closeOnEscape&&"Escape"===t.key?this.coClose.emit():this.trapFocus&&"Tab"===t.key&&this.trapTab(t))}trapTab(t){var i;const e=r(this.el);if(0===e.length)return t.preventDefault(),void(null===(i=this.overlayEl)||void 0===i||i.focus());const o=e.indexOf(this.deepActiveElement()),n=function(t,i,e){return t<=0?-1:e?i<=0?t-1:i-1:-1===i||i>=t-1?0:i+1}(e.length,o,t.shiftKey);n<0||(t.preventDefault(),e[n].focus())}render(){return e("div",{key:"1edc956747aa0c79bcc7863fd3530c4f64fd6746",class:{"co-overlay":!0,"co-overlay--open":this.open},part:"overlay",popover:"manual",tabindex:this.trapFocus?-1:void 0,ref:t=>this.overlayEl=t,onPointerDown:this.handlePointerDown,onPointerUp:this.handlePointerUp,onClick:this.handleClick,onTransitionEnd:this.handleTransitionEnd},e("slot",{key:"b17930138f924657b21511b95bd152e90a53a04a"}))}get el(){return o(this)}static get watchers(){return{open:[{onOpenChange:0}]}}};c.style=":host{display:contents}.co-overlay{position:fixed;inset:0;z-index:1000;margin:0;border:0;padding:0;width:auto;height:auto;max-width:none;max-height:none;overflow:visible;display:flex;align-items:center;justify-content:center;background:var(--co-overlay-bg, rgba(0, 0, 0, 0.4));-webkit-backdrop-filter:blur(var(--co-overlay-blur, 2px));backdrop-filter:blur(var(--co-overlay-blur, 2px));opacity:0;pointer-events:none;transition:opacity var(--co-motion-duration-fast) var(--co-motion-ease-in)}.co-overlay--open{opacity:1;pointer-events:auto;transition:opacity var(--co-motion-duration-base) var(--co-motion-ease-out)}";export{c as co_overlay}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{i as t,w as e,g as a,s,r as n,a as o,b as r,C as i,c as l,d as u,F as E,e as g,f as T,h as m,I as d,j as S,L as _,k as I,l as c,M as x,m as P,P as p,n as A,o as f,p as L,q as F,S as N,t as h,u as C,T as k,V as y,v as O,x as b,y as H,z as M,A as R,B as z,D as B,E as G,G as j,H as Y,J as v,K as U,N as V,O as $,Q as w,R as D,U as J,W as K,X as W,Y as X,Z,_ as q}from"./p-RVQJEYxa.js";import{C as Q,T as tt,t as et}from"./p-CRxTFT_z.js";function at(t,e){return r(t,{includeUiExtensions:!1,features:e})}var st=Object.freeze({__proto__:null,COLOR_PALETTE:Q,CalloutNode:i,CobaltTaskItem:l,CobaltTaskList:u,FIELD_SYNC_META:E,FontFamilyExtension:g,FontSizeExtension:T,FontWeightExtension:m,IMAGE_LAYOUT_MODES:d,IndentExtension:S,LetterSpacingExtension:_,LineHeightExtension:I,ListStyleExtension:c,MentionNode:x,MergeField:P,PAGE_GAP_PX:p,PAGE_SIZES:A,PAGINATION_META:f,PRESETS:L,Pagination:F,SANITIZE_CONFIGS:N,SIGNATURE_TOKEN_STYLE:h,SignatureSlot:C,TABLE_CONTEXT_ITEMS:tt,TRAILING_BREAK_CLASS:k,VariableNode:y,applyImageLayoutMode:O,collectFields:b,computePageBreaks:H,createEditor:M,defaultToolbarForPreset:R,getExtensions:r,getImageLayoutMode:z,getPrintExtensions:B,headerImageWidth:G,htmlToJson:function(e,a="task",r){if(t(a))return n(e,a,r);const i=s(e??"",a,r);return o(i,at(a,r))},isPrintPreset:t,jsonToHtml:function(n,o="task",r){if(t(o))return n?e(n,o,r):"";if(function(t){if(!t)return!0;const e=t.content;return!Array.isArray(e)||0===e.length||e.every((t=>"paragraph"===t?.type&&(!t.content||0===t.content.length)))}(n))return"";const i=a(n,at(o,r));return s(i,o,r)},jsonToText:function(t){if(!t)return"";const e=new Set(["paragraph","heading","blockquote","listItem","bulletList","orderedList","codeBlock","horizontalRule"]),a=[],s=t=>{t&&("text"!==t.type||"string"!=typeof t.text?"variable"!==t.type?"mention"!==t.type?"mergeField"!==t.type?"signatureSlot"!==t.type?"hardBreak"!==t.type?(Array.isArray(t.content)&&t.content.forEach(s),e.has(t.type)&&a.push("\n")):a.push("\n"):a.push(`⟦sig:${t.attrs?.slot??1}⟧`):a.push(t.attrs?.value||`[[${t.attrs?.name??""}]]`):a.push(`@${t.attrs?.label??""}`):a.push(`{{${t.attrs?.name??""}}}`):a.push(t.text))};return s(t),a.join("").replace(/\n{3,}/g,"\n\n").trim()},layoutBox:j,maxLengthForPreset:Y,nextFreeSlot:v,normalizePrintHtml:U,pageContentHeight:V,parseFieldToken:$,readPrintHtml:n,resolvePageSize:w,sanitize:s,sanitizeFieldName:D,serializePrintHtml:J,setFieldValuesInHtml:K,signatureBoxStyle:W,signatureSlotHtml:X,signatureToken:Z,stripBandOffsets:q,toolbarItems:et,writePrintHtml:e});export{st as R}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{t,p as e,H as n,c as o,h as i}from"./index.js";function s(t,e,n){return t!==n?null:e?"after-open":"after-close"}const a=["a[href]","area[href]","button:not([disabled])",'input:not([disabled]):not([type="hidden"])',"select:not([disabled])","textarea:not([disabled])","iframe","audio[controls]","video[controls]",'[contenteditable]:not([contenteditable="false"])','[tabindex]:not([tabindex="-1"])'].join(",");function r(t){return Array.from(t.querySelectorAll(a)).filter((t=>!t.hasAttribute("disabled")&&"true"!==t.getAttribute("aria-hidden")&&(null!==t.offsetParent||t.getClientRects().length>0)))}let c=0,h="";const l=e(class extends n{constructor(t){super(),!1!==t&&this.__registerHost(),this.__attachShadow(),this.coClose=o(this,"coClose",7),this.coAfterClose=o(this,"coAfterClose",3),this.coAfterOpen=o(this,"coAfterOpen",3),this.open=!1,this.trapFocus=!1,this.closeOnEscape=!1,this.hasLock=!1,this.pressDownTarget=null,this.pressUpTarget=null,this.handlePointerDown=t=>{var e;this.pressDownTarget=null!==(e=t.composedPath()[0])&&void 0!==e?e:null,this.pressUpTarget=null},this.handlePointerUp=t=>{var e;this.pressUpTarget=null!==(e=t.composedPath()[0])&&void 0!==e?e:null},this.handleClick=t=>{var e;const n=null!==(e=t.composedPath()[0])&&void 0!==e?e:null,o=n===this.overlayEl&&function(t,e,n){return null!==t&&t===e&&e===n}(this.pressDownTarget,this.pressUpTarget,n);this.pressDownTarget=null,this.pressUpTarget=null,o&&this.coClose.emit()},this.handleTransitionEnd=t=>{if(t.target!==this.overlayEl)return;const e=s(t.propertyName,this.open,"opacity");"after-open"===e?this.coAfterOpen.emit():"after-close"===e&&this.coAfterClose.emit()}}onOpenChange(t){t?this.acquireLock():this.releaseLock(),this.syncPopover(),this.trapFocus&&(t?this.captureAndFocus():this.restoreFocus())}componentDidLoad(){this.open&&this.acquireLock(),this.syncPopover(),this.open&&this.trapFocus&&this.captureAndFocus()}disconnectedCallback(){this.releaseLock(),this.trapFocus&&this.restoreFocus()}acquireLock(){this.hasLock||(this.hasLock=!0,"undefined"!=typeof document&&(0===c&&(h=document.body.style.overflow,document.body.style.overflow="hidden"),c++))}releaseLock(){this.hasLock&&(this.hasLock=!1,"undefined"!=typeof document&&0!==c&&(c--,0===c&&(document.body.style.overflow=h)))}syncPopover(){const t=this.overlayEl;if(t&&"function"==typeof t.showPopover)try{const e=t.matches(":popover-open");this.open&&!e?t.showPopover():!this.open&&e&&t.hidePopover()}catch(t){}}captureAndFocus(){var t;"undefined"!=typeof document&&(this.returnFocusEl=document.activeElement),t=()=>{var t;if(!this.open)return;const e=r(this.el);e.length>0?e[0].focus():null===(t=this.overlayEl)||void 0===t||t.focus()},"function"==typeof requestAnimationFrame?requestAnimationFrame(t):t()}restoreFocus(){const t=this.returnFocusEl;this.returnFocusEl=null,t&&"function"==typeof t.focus&&t.focus()}deepActiveElement(){if("undefined"==typeof document)return null;let t=document.activeElement;for(;t&&t.shadowRoot&&t.shadowRoot.activeElement;)t=t.shadowRoot.activeElement;return t}handleKeydown(t){this.open&&(this.closeOnEscape&&"Escape"===t.key?this.coClose.emit():this.trapFocus&&"Tab"===t.key&&this.trapTab(t))}trapTab(t){var e;const n=r(this.el);if(0===n.length)return t.preventDefault(),void(null===(e=this.overlayEl)||void 0===e||e.focus());const o=n.indexOf(this.deepActiveElement()),i=function(t,e,n){return t<=0?-1:n?e<=0?t-1:e-1:-1===e||e>=t-1?0:e+1}(n.length,o,t.shiftKey);i<0||(t.preventDefault(),n[i].focus())}render(){return i("div",{key:"1edc956747aa0c79bcc7863fd3530c4f64fd6746",class:{"co-overlay":!0,"co-overlay--open":this.open},part:"overlay",popover:"manual",tabindex:this.trapFocus?-1:void 0,ref:t=>this.overlayEl=t,onPointerDown:this.handlePointerDown,onPointerUp:this.handlePointerUp,onClick:this.handleClick,onTransitionEnd:this.handleTransitionEnd},i("slot",{key:"b17930138f924657b21511b95bd152e90a53a04a"}))}get el(){return this}static get watchers(){return{open:[{onOpenChange:0}]}}static get style(){return":host{display:contents}.co-overlay{position:fixed;inset:0;z-index:1000;margin:0;border:0;padding:0;width:auto;height:auto;max-width:none;max-height:none;overflow:visible;display:flex;align-items:center;justify-content:center;background:var(--co-overlay-bg, rgba(0, 0, 0, 0.4));-webkit-backdrop-filter:blur(var(--co-overlay-blur, 2px));backdrop-filter:blur(var(--co-overlay-blur, 2px));opacity:0;pointer-events:none;transition:opacity var(--co-motion-duration-fast) var(--co-motion-ease-in)}.co-overlay--open{opacity:1;pointer-events:auto;transition:opacity var(--co-motion-duration-base) var(--co-motion-ease-out)}"}},[257,"co-overlay",{open:[1540],trapFocus:[516,"trap-focus"],closeOnEscape:[516,"close-on-escape"]},[[4,"keydown","handleKeydown"]],{open:[{onOpenChange:0}]}]);function d(){"undefined"!=typeof customElements&&["co-overlay"].forEach((e=>{"co-overlay"===e&&(customElements.get(t(e))||customElements.define(t(e),l))}))}d();export{l as C,s as a,d}
|