@getflip/swirl-components 0.95.1 → 0.95.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/components.json +1 -1
- package/dist/cjs/swirl-action-list_3.cjs.entry.js +10 -20
- package/dist/cjs/swirl-app-layout_7.cjs.entry.js +20 -9
- package/dist/cjs/swirl-autocomplete.cjs.entry.js +10 -2
- package/dist/cjs/swirl-option-list_2.cjs.entry.js +5 -3
- package/dist/cjs/swirl-select.cjs.entry.js +4 -2
- package/dist/collection/components/swirl-action-list/swirl-action-list.js +10 -20
- package/dist/collection/components/swirl-autocomplete/swirl-autocomplete.js +10 -2
- package/dist/collection/components/swirl-option-list/swirl-option-list.js +5 -3
- package/dist/collection/components/swirl-resource-list/swirl-resource-list.js +20 -9
- package/dist/collection/components/swirl-resource-list/swirl-resource-list.spec.js +8 -9
- package/dist/collection/components/swirl-select/swirl-select.js +4 -2
- package/dist/components/swirl-action-list2.js +10 -20
- package/dist/components/swirl-autocomplete.js +10 -2
- package/dist/components/swirl-option-list2.js +5 -3
- package/dist/components/swirl-resource-list2.js +20 -9
- package/dist/components/swirl-select.js +4 -2
- package/dist/esm/swirl-action-list_3.entry.js +10 -20
- package/dist/esm/swirl-app-layout_7.entry.js +20 -9
- package/dist/esm/swirl-autocomplete.entry.js +10 -2
- package/dist/esm/swirl-option-list_2.entry.js +5 -3
- package/dist/esm/swirl-select.entry.js +4 -2
- package/dist/swirl-components/{p-89898ac6.entry.js → p-057b650a.entry.js} +1 -1
- package/dist/swirl-components/p-0e6c2f2b.entry.js +1 -0
- package/dist/swirl-components/p-59408f77.entry.js +1 -0
- package/dist/swirl-components/p-6f07c958.entry.js +1 -0
- package/dist/swirl-components/{p-1d1edae3.entry.js → p-8a00faee.entry.js} +1 -1
- package/dist/swirl-components/swirl-components.esm.js +1 -1
- package/dist/types/components/swirl-action-list/swirl-action-list.d.ts +1 -6
- package/dist/types/components/swirl-select/swirl-select.d.ts +2 -0
- package/package.json +1 -1
- package/dist/swirl-components/p-0067f11b.entry.js +0 -1
- package/dist/swirl-components/p-56fa872b.entry.js +0 -1
- package/dist/swirl-components/p-bf258885.entry.js +0 -1
|
@@ -18,35 +18,25 @@ const SwirlActionList = class {
|
|
|
18
18
|
}
|
|
19
19
|
};
|
|
20
20
|
}
|
|
21
|
-
|
|
22
|
-
this.
|
|
23
|
-
this.observeSlotChanges();
|
|
24
|
-
}
|
|
25
|
-
disconnectedCallback() {
|
|
26
|
-
this.observer?.disconnect();
|
|
27
|
-
}
|
|
28
|
-
observeSlotChanges() {
|
|
29
|
-
this.observer = new MutationObserver(() => {
|
|
30
|
-
this.updateItems();
|
|
31
|
-
});
|
|
32
|
-
this.observer.observe(this.el, { childList: true });
|
|
33
|
-
}
|
|
34
|
-
updateItems() {
|
|
35
|
-
this.items = querySelectorAllDeep(this.el, '[role="menuitem"]');
|
|
21
|
+
getItems() {
|
|
22
|
+
return querySelectorAllDeep(this.el, '[role="menuitem"]');
|
|
36
23
|
}
|
|
37
24
|
focusNextItem() {
|
|
25
|
+
const items = this.getItems();
|
|
38
26
|
const activeItemIndex = this.getActiveItemIndex();
|
|
39
|
-
const newIndex = (activeItemIndex + 1) %
|
|
40
|
-
|
|
27
|
+
const newIndex = (activeItemIndex + 1) % items.length;
|
|
28
|
+
items[newIndex].focus();
|
|
41
29
|
}
|
|
42
30
|
focusPreviousItem() {
|
|
31
|
+
const items = this.getItems();
|
|
43
32
|
const activeItemIndex = this.getActiveItemIndex();
|
|
44
|
-
const newIndex = activeItemIndex === 0 ?
|
|
45
|
-
|
|
33
|
+
const newIndex = activeItemIndex === 0 ? items.length - 1 : activeItemIndex - 1;
|
|
34
|
+
items[newIndex]?.focus();
|
|
46
35
|
}
|
|
47
36
|
getActiveItemIndex() {
|
|
37
|
+
const items = this.getItems();
|
|
48
38
|
const activeElement = getActiveElement();
|
|
49
|
-
return
|
|
39
|
+
return items.findIndex((item) => item === activeElement ||
|
|
50
40
|
item === activeElement?.querySelector('[role="menuitem"]'));
|
|
51
41
|
}
|
|
52
42
|
render() {
|
|
@@ -311,7 +311,7 @@ const SwirlResourceList = class {
|
|
|
311
311
|
this.draggingStartIndex = undefined;
|
|
312
312
|
};
|
|
313
313
|
this.onKeyDown = (event) => {
|
|
314
|
-
if (event.
|
|
314
|
+
if (event.code === "ArrowDown") {
|
|
315
315
|
event.preventDefault();
|
|
316
316
|
if (!Boolean(this.dragging)) {
|
|
317
317
|
this.focusItemAtIndex((this.focusedIndex + 1) % this.items.length);
|
|
@@ -320,7 +320,7 @@ const SwirlResourceList = class {
|
|
|
320
320
|
this.moveDraggedItemDown();
|
|
321
321
|
}
|
|
322
322
|
}
|
|
323
|
-
else if (event.
|
|
323
|
+
else if (event.code === "ArrowUp") {
|
|
324
324
|
event.preventDefault();
|
|
325
325
|
if (!Boolean(this.dragging)) {
|
|
326
326
|
const prevIndex = this.focusedIndex === 0
|
|
@@ -332,7 +332,7 @@ const SwirlResourceList = class {
|
|
|
332
332
|
this.moveDraggedItemUp();
|
|
333
333
|
}
|
|
334
334
|
}
|
|
335
|
-
else if (event.
|
|
335
|
+
else if (event.code === "Space" || event.code === "Enter") {
|
|
336
336
|
const target = event.composedPath()[0];
|
|
337
337
|
if (Boolean(this.dragging) &&
|
|
338
338
|
!target?.classList.contains("resource-list-item__drag-handle")) {
|
|
@@ -340,11 +340,11 @@ const SwirlResourceList = class {
|
|
|
340
340
|
this.stopDrag(this.dragging);
|
|
341
341
|
}
|
|
342
342
|
}
|
|
343
|
-
else if (event.
|
|
343
|
+
else if (event.code === "Home") {
|
|
344
344
|
event.preventDefault();
|
|
345
345
|
this.focusItemAtIndex(0);
|
|
346
346
|
}
|
|
347
|
-
else if (event.
|
|
347
|
+
else if (event.code === "End") {
|
|
348
348
|
event.preventDefault();
|
|
349
349
|
this.focusItemAtIndex(this.items.length - 1);
|
|
350
350
|
}
|
|
@@ -372,7 +372,11 @@ const SwirlResourceList = class {
|
|
|
372
372
|
this.setItemAllowDragState();
|
|
373
373
|
this.setupDragDrop();
|
|
374
374
|
});
|
|
375
|
-
this.observer.observe(this.el, {
|
|
375
|
+
this.observer.observe(this.el, {
|
|
376
|
+
childList: true,
|
|
377
|
+
characterData: true,
|
|
378
|
+
subtree: true,
|
|
379
|
+
});
|
|
376
380
|
}
|
|
377
381
|
watchAllowDrag() {
|
|
378
382
|
this.setItemAllowDragState();
|
|
@@ -387,9 +391,12 @@ const SwirlResourceList = class {
|
|
|
387
391
|
return this.items.map((i) => i).findIndex((i) => i === item);
|
|
388
392
|
}
|
|
389
393
|
removeItemsFromTabOrder() {
|
|
390
|
-
this.items.forEach((item) =>
|
|
391
|
-
?.querySelector(".resource-list-item__content, .resource-list-file-item")
|
|
392
|
-
?.
|
|
394
|
+
this.items.forEach((item) => {
|
|
395
|
+
const focusableEl = item?.querySelector(".resource-list-item__content, .resource-list-file-item");
|
|
396
|
+
const dragHandle = item?.querySelector(".resource-list-item__drag-handle");
|
|
397
|
+
focusableEl?.setAttribute("tabIndex", "-1");
|
|
398
|
+
dragHandle?.setAttribute("tabIndex", "-1");
|
|
399
|
+
});
|
|
393
400
|
}
|
|
394
401
|
setItemAllowDragState() {
|
|
395
402
|
if (this.allowDrag) {
|
|
@@ -430,6 +437,10 @@ const SwirlResourceList = class {
|
|
|
430
437
|
return;
|
|
431
438
|
}
|
|
432
439
|
const interactiveElement = item.querySelector(".resource-list-item__content, .resource-list-file-item");
|
|
440
|
+
const dragHandle = item.querySelector(".resource-list-item__drag-handle");
|
|
441
|
+
if (Boolean(dragHandle)) {
|
|
442
|
+
dragHandle.setAttribute("tabIndex", "0");
|
|
443
|
+
}
|
|
433
444
|
if (!Boolean(interactiveElement)) {
|
|
434
445
|
return;
|
|
435
446
|
}
|
|
@@ -37,8 +37,16 @@ const SwirlAutocomplete = class {
|
|
|
37
37
|
!this.value.some((item) => item.id === suggestion.id)),
|
|
38
38
|
];
|
|
39
39
|
this.valueChange.emit(this.value);
|
|
40
|
-
this.inputEl.
|
|
41
|
-
|
|
40
|
+
this.inputEl.value = "";
|
|
41
|
+
const input = this.inputEl.querySelector("input");
|
|
42
|
+
if (Boolean(input)) {
|
|
43
|
+
input.value = "";
|
|
44
|
+
queueMicrotask(() => {
|
|
45
|
+
input.focus();
|
|
46
|
+
this.close();
|
|
47
|
+
});
|
|
48
|
+
this.updateSuggestions(input.value);
|
|
49
|
+
}
|
|
42
50
|
}
|
|
43
51
|
else {
|
|
44
52
|
if (Boolean(event.detail[0])) {
|
|
@@ -301,9 +301,11 @@ const SwirlOptionList = class {
|
|
|
301
301
|
this.focusItem(newIndex);
|
|
302
302
|
}
|
|
303
303
|
getActiveItemIndex() {
|
|
304
|
-
return this.
|
|
305
|
-
|
|
306
|
-
|
|
304
|
+
return Boolean(this.focusedItem)
|
|
305
|
+
? this.items
|
|
306
|
+
.map((item) => item.querySelector('[role="option"]'))
|
|
307
|
+
.findIndex((item) => item === this.focusedItem)
|
|
308
|
+
: 0;
|
|
307
309
|
}
|
|
308
310
|
getItemIndex(item) {
|
|
309
311
|
return this.items.map((i) => i).findIndex((i) => i === item);
|
|
@@ -28,9 +28,11 @@ const SwirlSelect = class {
|
|
|
28
28
|
this.onOpen = (event) => {
|
|
29
29
|
this.placement = event.detail.position?.placement;
|
|
30
30
|
this.open = true;
|
|
31
|
+
this.optionList.querySelector('[tabIndex="0"]')?.focus();
|
|
31
32
|
};
|
|
32
33
|
this.onClose = () => {
|
|
33
34
|
this.open = false;
|
|
35
|
+
this.input.focus();
|
|
34
36
|
};
|
|
35
37
|
this.onKeyDown = (event) => {
|
|
36
38
|
if (event.code === "Space" || event.code === "Enter") {
|
|
@@ -83,11 +85,11 @@ const SwirlSelect = class {
|
|
|
83
85
|
"select--inline": this.inline,
|
|
84
86
|
"select--multi": this.multiSelect,
|
|
85
87
|
});
|
|
86
|
-
return (h(Host, { onKeyDown: this.onKeyDown }, h("div", { class: className }, h("swirl-popover-trigger", { popover: this.popover, setAriaAttributes: false }, h("input", { "aria-describedby": this.swirlAriaDescribedby, "aria-disabled": this.disabled ? "true" : undefined, "aria-invalid": ariaInvalid, class: "select__input", disabled: this.disabled, readOnly: true, type: "text", value: label })), h("span", { class: "select__multi-select-values" }, this.value
|
|
88
|
+
return (h(Host, { onKeyDown: this.onKeyDown }, h("div", { class: className }, h("swirl-popover-trigger", { popover: this.popover, setAriaAttributes: false }, h("input", { "aria-describedby": this.swirlAriaDescribedby, "aria-disabled": this.disabled ? "true" : undefined, "aria-invalid": ariaInvalid, class: "select__input", disabled: this.disabled, readOnly: true, ref: (el) => (this.input = el), type: "text", value: label })), h("span", { class: "select__multi-select-values" }, this.value
|
|
87
89
|
?.map((value) => this.options.find((option) => option.value === value))
|
|
88
90
|
?.map((option) => (h("swirl-tag", { "aria-hidden": "true", label: option?.label,
|
|
89
91
|
// eslint-disable-next-line react/jsx-no-bind
|
|
90
|
-
onRemove: () => this.unselectOption(option?.value), removable: !this.disabled && this.allowDeselect })))), h("span", { class: "select__indicator" }, this.open ? (h("swirl-icon-expand-less", null)) : (h("swirl-icon-expand-more", null))), h("swirl-popover", { animation: "scale-in-y", class: "select__popover", id: `select-options-${this.selectId}`, label: this.label, offset: [0, offset], onPopoverClose: this.onClose, onPopoverOpen: this.onOpen, ref: (el) => (this.popover = el), useContainerWidth: "swirl-form-control" }, h("swirl-option-list", { allowDeselect: this.allowDeselect, onValueChange: this.select, multiSelect: this.multiSelect, value: this.value }, h("slot", { onSlotchange: this.onSlotChange }))))));
|
|
92
|
+
onRemove: () => this.unselectOption(option?.value), removable: !this.disabled && this.allowDeselect })))), h("span", { class: "select__indicator" }, this.open ? (h("swirl-icon-expand-less", null)) : (h("swirl-icon-expand-more", null))), h("swirl-popover", { animation: "scale-in-y", class: "select__popover", id: `select-options-${this.selectId}`, label: this.label, offset: [0, offset], onPopoverClose: this.onClose, onPopoverOpen: this.onOpen, ref: (el) => (this.popover = el), useContainerWidth: "swirl-form-control" }, h("swirl-option-list", { allowDeselect: this.allowDeselect, onValueChange: this.select, multiSelect: this.multiSelect, ref: (el) => (this.optionList = el), value: this.value }, h("slot", { onSlotchange: this.onSlotChange }))))));
|
|
91
93
|
}
|
|
92
94
|
get el() { return getElement(this); }
|
|
93
95
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as t,c as i,h as s,H as o,g as e}from"./p-3fca9a05.js";import{c as a,q as n}from"./p-646e00de.js";import{S as h}from"./p-1486d7ea.js";import{c as r}from"./p-b7898321.js";const l=class{constructor(s){t(this,s),this.itemDrop=i(this,"itemDrop",7),this.valueChange=i(this,"valueChange",7),this.onClick=t=>{t.preventDefault();const i=t.target,s=i?.closest("swirl-option-list-item"),o=t.composedPath()[0],e=Boolean(a(o,'[role="option"]'));Boolean(s)&&e?this.selectItem(this.items.findIndex((t=>t.value===s.value))):t.preventDefault()},this.onKeyDown=t=>{if("ArrowDown"===t.code)t.preventDefault(),Boolean(this.dragging)?this.moveDraggedItemDown():this.focusNextItem();else if("ArrowUp"===t.code)t.preventDefault(),Boolean(this.dragging)?this.moveDraggedItemUp():this.focusPreviousItem();else if("Space"===t.code||"Enter"===t.code){if(!t.target.classList.contains("option-list-item__drag-handle")&&Boolean(this.dragging))return t.preventDefault(),void this.stopDrag(this.dragging);const i=t.composedPath()[0];if(!Boolean(a(i,'[role="option"]')))return;t.preventDefault(),Boolean(this.dragging)?this.stopDrag(this.dragging):this.selectFocusedItem()}else"Home"===t.code?(t.preventDefault(),this.focusItem(0)):"End"===t.code?(t.preventDefault(),this.focusItem(this.items.length-1)):"KeyA"===t.code&&(t.metaKey||t.ctrlKey)&&this.multiSelect?(t.preventDefault(),this.selectAllItems()):"Tab"===t.code&&Boolean(this.dragging)&&t.preventDefault()},this.toggleDrag=t=>{const i=t.detail;Boolean(this.dragging)?this.stopDrag(i):this.startDrag(i)},this.startDrag=t=>{this.dragging=t,this.draggingStartIndex=this.getItemIndex(this.dragging),t.setAttribute("dragging","true");const i=this.getItemIndex(this.dragging);this.focusItem(i),this.assistiveText=this.assistiveTextItemGrabbed},this.stopDrag=t=>{this.dragging=void 0,t.removeAttribute("dragging");const i=this.getActiveItemIndex();this.assistiveText=`${this.assistiveTextItemMoved} ${i+1}`,this.itemDrop.emit({item:t,oldIndex:this.draggingStartIndex,newIndex:i}),this.draggingStartIndex=void 0,this.focusItem(i)},this.allowDeselect=!0,this.allowDrag=void 0,this.assistiveTextItemGrabbed="Item grabbed. Use arrow keys to move item up or down. Use spacebar to save position.",this.assistiveTextItemMoving="Current position:",this.assistiveTextItemMoved="Item moved. New position:",this.disabled=void 0,this.label=void 0,this.optionListId=void 0,this.multiSelect=void 0,this.value=[],this.assistiveText=void 0}componentDidLoad(){this.updateItems(),this.observeSlotChanges(),this.setItemAllowDragState(),this.setItemDisabledState(),this.setItemContext(),this.syncItemsWithValue(),this.setupDragDrop()}componentDidRender(){this.setupDragDrop()}disconnectedCallback(){this.observer?.disconnect(),this.sortable?.destroy()}watchAllowDrag(){this.setItemAllowDragState(),this.setupDragDrop()}watchDisabled(){this.setItemDisabledState()}watchMultiSelect(){this.setItemContext()}watchValue(){this.syncItemsWithValue()}observeSlotChanges(){this.observer=new MutationObserver((()=>{this.updateItems(),this.setItemAllowDragState(),this.setItemDisabledState(),this.setItemContext(),this.syncItemsWithValue()})),this.observer.observe(this.listboxEl,{childList:!0})}updateItems(){this.items=n(this.el,"swirl-option-list-item"),this.items.forEach((t=>t.querySelector('[role="option"]')?.removeAttribute("tabIndex")));const t=this.items[0]?.querySelector('[role="option"]');Boolean(t)&&t.setAttribute("tabIndex","0")}setItemDisabledState(){this.disabled&&this.items.forEach((t=>t.disabled=!0))}setItemContext(){this.multiSelect?this.items.forEach((t=>t.context="multi-select")):(this.items.forEach((t=>t.context="single-select")),this.value.length>1&&this.updateValue([this.value[0]]))}setupDragDrop(){Boolean(this.sortable)&&this.sortable.destroy(),this.allowDrag&&(this.sortable=h.create(this.listboxEl,{animation:150,draggable:"swirl-option-list-item",handle:".option-list-item__drag-handle",onEnd:t=>{this.itemDrop.emit({item:t.item,oldIndex:t.oldIndex,newIndex:t.newIndex})}}))}setItemAllowDragState(){if(this.allowDrag&&!this.multiSelect)return void console.error("[SwirlOptionList] Drag can only be allowed for multi select lists.");const t=n(this.el,"swirl-option-list-section");this.allowDrag&&t.length>0?console.error("[SwirlOptionList] Drag can only be allowed for lists without sections."):this.items.forEach(this.allowDrag?t=>{t.setAttribute("allow-drag","true"),t.addEventListener("toggleDrag",this.toggleDrag)}:t=>{t.removeAttribute("allow-drag"),t.removeEventListener("toggleDrag",this.toggleDrag)})}selectItem(t){if(this.disabled)return;const i=this.items[t];if(i.disabled)return;const s=this.value.includes(i.value);s&&!this.allowDeselect||(this.multiSelect||(this.value=[]),this.updateValue(s?this.value.filter((t=>t!==i.value)):[...this.value,i.value]),this.focusItem(t))}updateValue(t){this.value=t,this.valueChange.emit(this.value)}selectFocusedItem(){this.disabled||-1===this.getActiveItemIndex()||this.selectItem(this.getActiveItemIndex())}selectAllItems(){if(this.disabled)return;const t=this.items.every((t=>this.value.includes(t.value)));this.updateValue(t?[]:this.items.map((t=>t.value)))}syncItemsWithValue(){this.items?.forEach((t=>t.selected=this.value.includes(t.value)))}focusItem(t){if(this.disabled)return;this.items.forEach((t=>t.querySelector('[role="option"]').removeAttribute("tabIndex")));const i=this.items[t]?.querySelector('[role="option"]');Boolean(i)&&(i.setAttribute("tabIndex","0"),i.focus(),this.focusedItem=i)}focusNextItem(){if(this.disabled)return;const t=this.getActiveItemIndex(),i=Math.min(t+1,this.items.length-1);this.focusItem(i)}focusPreviousItem(){const t=this.getActiveItemIndex(),i=Math.max(t-1,0);this.focusItem(i)}getActiveItemIndex(){return this.items.map((t=>t.querySelector('[role="option"]'))).findIndex((t=>t===this.focusedItem))}getItemIndex(t){return this.items.map((t=>t)).findIndex((i=>i===t))}moveDraggedItemDown(){const t=this.dragging.nextElementSibling;Boolean(t)&&(t.after(this.dragging),this.updateItems(),this.listboxEl.focus(),this.assistiveText=`${this.assistiveTextItemMoving} ${this.getActiveItemIndex()+1}`)}moveDraggedItemUp(){const t=this.dragging.previousElementSibling;Boolean(t)&&(t.before(this.dragging),this.updateItems(),this.listboxEl.focus(),this.assistiveText=`${this.assistiveTextItemMoving} ${this.getItemIndex(this.dragging)+1}`)}render(){const t=this.multiSelect?"true":void 0,i=Boolean(this.dragging)?0:void 0;return s(o,null,s("swirl-visually-hidden",{role:"alert"},this.assistiveText),s("div",{"aria-label":this.label,"aria-multiselectable":t,class:"option-list",id:this.optionListId,onClick:this.onClick,onKeyDown:this.onKeyDown,ref:t=>this.listboxEl=t,role:"listbox",tabIndex:i},s("slot",null)))}get el(){return e(this)}static get watchers(){return{allowDrag:["watchAllowDrag"],disabled:["watchDisabled"],multiSelect:["watchMultiSelect"],value:["watchValue"]}}};l.style=".sc-swirl-option-list-h{display:block}.sc-swirl-option-list-h *.sc-swirl-option-list{box-sizing:border-box}";const c=class{constructor(s){t(this,s),this.remove=i(this,"remove",7),this.onRemove=t=>{this.remove?.emit(t)},this.intent="default",this.label=void 0,this.removable=void 0,this.removalButtonLabel="Remove"}render(){const t=r("tag",`tag--intent-${this.intent}`);return s(o,null,s("span",{class:t,part:"tag"},s("span",{class:"tag__label"},this.label),this.removable&&s("button",{"aria-label":this.removalButtonLabel,class:"tag__removal-button",onClick:this.onRemove,tabIndex:"true"===this.el.ariaHidden?-1:void 0,type:"button"},s("swirl-icon-close",{size:16}))))}get el(){return e(this)}};c.style=":host{display:inline-flex;max-width:100%}:host *{box-sizing:border-box}.tag{display:inline-flex;max-width:100%;padding:var(--s-space-2) var(--s-space-8);align-items:center;border-radius:var(--s-border-radius-s);color:var(--s-text-default);background-color:var(--s-surface-neutral-subdued);font-size:var(--s-font-size-sm);font-weight:var(--s-font-weight-medium);line-height:var(--s-line-height-sm);white-space:nowrap;gap:var(--s-space-4)}.tag--intent-info{color:var(--s-text-info);background-color:var(--s-surface-info-subdued)}.tag--intent-info .tag__removal-button{color:var(--icon-info)}.tag--intent-critical{color:var(--s-text-critical);background-color:var(--s-surface-critical-subdued)}.tag--intent-critical .tag__removal-button{color:var(--icon-critical)}.tag--intent-warning{color:var(--s-text-warning);background-color:var(--s-surface-warning-subdued)}.tag--intent-warning .tag__removal-button{color:var(--icon-warning)}.tag--intent-success{color:var(--s-text-success);background-color:var(--s-surface-success-subdued)}.tag--intent-success .tag__removal-button{color:var(--icon-success)}.tag__label{overflow:hidden;min-width:0;white-space:nowrap;text-overflow:ellipsis}.tag__removal-button{display:inline-flex;margin-right:calc(-1 * var(--s-space-4));padding:0;border:none;color:var(--s-icon-strong);background-color:transparent;cursor:pointer}.tag__removal-button:focus:not(:focus-visible){outline:none}.tag__removal-button:focus-visible{outline-color:var(--s-focus-default)}";export{l as swirl_option_list,c as swirl_tag}
|
|
1
|
+
import{r as t,c as i,h as s,H as o,g as e}from"./p-3fca9a05.js";import{c as a,q as n}from"./p-646e00de.js";import{S as h}from"./p-1486d7ea.js";import{c as r}from"./p-b7898321.js";const l=class{constructor(s){t(this,s),this.itemDrop=i(this,"itemDrop",7),this.valueChange=i(this,"valueChange",7),this.onClick=t=>{t.preventDefault();const i=t.target,s=i?.closest("swirl-option-list-item"),o=t.composedPath()[0],e=Boolean(a(o,'[role="option"]'));Boolean(s)&&e?this.selectItem(this.items.findIndex((t=>t.value===s.value))):t.preventDefault()},this.onKeyDown=t=>{if("ArrowDown"===t.code)t.preventDefault(),Boolean(this.dragging)?this.moveDraggedItemDown():this.focusNextItem();else if("ArrowUp"===t.code)t.preventDefault(),Boolean(this.dragging)?this.moveDraggedItemUp():this.focusPreviousItem();else if("Space"===t.code||"Enter"===t.code){if(!t.target.classList.contains("option-list-item__drag-handle")&&Boolean(this.dragging))return t.preventDefault(),void this.stopDrag(this.dragging);const i=t.composedPath()[0];if(!Boolean(a(i,'[role="option"]')))return;t.preventDefault(),Boolean(this.dragging)?this.stopDrag(this.dragging):this.selectFocusedItem()}else"Home"===t.code?(t.preventDefault(),this.focusItem(0)):"End"===t.code?(t.preventDefault(),this.focusItem(this.items.length-1)):"KeyA"===t.code&&(t.metaKey||t.ctrlKey)&&this.multiSelect?(t.preventDefault(),this.selectAllItems()):"Tab"===t.code&&Boolean(this.dragging)&&t.preventDefault()},this.toggleDrag=t=>{const i=t.detail;Boolean(this.dragging)?this.stopDrag(i):this.startDrag(i)},this.startDrag=t=>{this.dragging=t,this.draggingStartIndex=this.getItemIndex(this.dragging),t.setAttribute("dragging","true");const i=this.getItemIndex(this.dragging);this.focusItem(i),this.assistiveText=this.assistiveTextItemGrabbed},this.stopDrag=t=>{this.dragging=void 0,t.removeAttribute("dragging");const i=this.getActiveItemIndex();this.assistiveText=`${this.assistiveTextItemMoved} ${i+1}`,this.itemDrop.emit({item:t,oldIndex:this.draggingStartIndex,newIndex:i}),this.draggingStartIndex=void 0,this.focusItem(i)},this.allowDeselect=!0,this.allowDrag=void 0,this.assistiveTextItemGrabbed="Item grabbed. Use arrow keys to move item up or down. Use spacebar to save position.",this.assistiveTextItemMoving="Current position:",this.assistiveTextItemMoved="Item moved. New position:",this.disabled=void 0,this.label=void 0,this.optionListId=void 0,this.multiSelect=void 0,this.value=[],this.assistiveText=void 0}componentDidLoad(){this.updateItems(),this.observeSlotChanges(),this.setItemAllowDragState(),this.setItemDisabledState(),this.setItemContext(),this.syncItemsWithValue(),this.setupDragDrop()}componentDidRender(){this.setupDragDrop()}disconnectedCallback(){this.observer?.disconnect(),this.sortable?.destroy()}watchAllowDrag(){this.setItemAllowDragState(),this.setupDragDrop()}watchDisabled(){this.setItemDisabledState()}watchMultiSelect(){this.setItemContext()}watchValue(){this.syncItemsWithValue()}observeSlotChanges(){this.observer=new MutationObserver((()=>{this.updateItems(),this.setItemAllowDragState(),this.setItemDisabledState(),this.setItemContext(),this.syncItemsWithValue()})),this.observer.observe(this.listboxEl,{childList:!0})}updateItems(){this.items=n(this.el,"swirl-option-list-item"),this.items.forEach((t=>t.querySelector('[role="option"]')?.removeAttribute("tabIndex")));const t=this.items[0]?.querySelector('[role="option"]');Boolean(t)&&t.setAttribute("tabIndex","0")}setItemDisabledState(){this.disabled&&this.items.forEach((t=>t.disabled=!0))}setItemContext(){this.multiSelect?this.items.forEach((t=>t.context="multi-select")):(this.items.forEach((t=>t.context="single-select")),this.value.length>1&&this.updateValue([this.value[0]]))}setupDragDrop(){Boolean(this.sortable)&&this.sortable.destroy(),this.allowDrag&&(this.sortable=h.create(this.listboxEl,{animation:150,draggable:"swirl-option-list-item",handle:".option-list-item__drag-handle",onEnd:t=>{this.itemDrop.emit({item:t.item,oldIndex:t.oldIndex,newIndex:t.newIndex})}}))}setItemAllowDragState(){if(this.allowDrag&&!this.multiSelect)return void console.error("[SwirlOptionList] Drag can only be allowed for multi select lists.");const t=n(this.el,"swirl-option-list-section");this.allowDrag&&t.length>0?console.error("[SwirlOptionList] Drag can only be allowed for lists without sections."):this.items.forEach(this.allowDrag?t=>{t.setAttribute("allow-drag","true"),t.addEventListener("toggleDrag",this.toggleDrag)}:t=>{t.removeAttribute("allow-drag"),t.removeEventListener("toggleDrag",this.toggleDrag)})}selectItem(t){if(this.disabled)return;const i=this.items[t];if(i.disabled)return;const s=this.value.includes(i.value);s&&!this.allowDeselect||(this.multiSelect||(this.value=[]),this.updateValue(s?this.value.filter((t=>t!==i.value)):[...this.value,i.value]),this.focusItem(t))}updateValue(t){this.value=t,this.valueChange.emit(this.value)}selectFocusedItem(){this.disabled||-1===this.getActiveItemIndex()||this.selectItem(this.getActiveItemIndex())}selectAllItems(){if(this.disabled)return;const t=this.items.every((t=>this.value.includes(t.value)));this.updateValue(t?[]:this.items.map((t=>t.value)))}syncItemsWithValue(){this.items?.forEach((t=>t.selected=this.value.includes(t.value)))}focusItem(t){if(this.disabled)return;this.items.forEach((t=>t.querySelector('[role="option"]').removeAttribute("tabIndex")));const i=this.items[t]?.querySelector('[role="option"]');Boolean(i)&&(i.setAttribute("tabIndex","0"),i.focus(),this.focusedItem=i)}focusNextItem(){if(this.disabled)return;const t=this.getActiveItemIndex(),i=Math.min(t+1,this.items.length-1);this.focusItem(i)}focusPreviousItem(){const t=this.getActiveItemIndex(),i=Math.max(t-1,0);this.focusItem(i)}getActiveItemIndex(){return Boolean(this.focusedItem)?this.items.map((t=>t.querySelector('[role="option"]'))).findIndex((t=>t===this.focusedItem)):0}getItemIndex(t){return this.items.map((t=>t)).findIndex((i=>i===t))}moveDraggedItemDown(){const t=this.dragging.nextElementSibling;Boolean(t)&&(t.after(this.dragging),this.updateItems(),this.listboxEl.focus(),this.assistiveText=`${this.assistiveTextItemMoving} ${this.getActiveItemIndex()+1}`)}moveDraggedItemUp(){const t=this.dragging.previousElementSibling;Boolean(t)&&(t.before(this.dragging),this.updateItems(),this.listboxEl.focus(),this.assistiveText=`${this.assistiveTextItemMoving} ${this.getItemIndex(this.dragging)+1}`)}render(){const t=this.multiSelect?"true":void 0,i=Boolean(this.dragging)?0:void 0;return s(o,null,s("swirl-visually-hidden",{role:"alert"},this.assistiveText),s("div",{"aria-label":this.label,"aria-multiselectable":t,class:"option-list",id:this.optionListId,onClick:this.onClick,onKeyDown:this.onKeyDown,ref:t=>this.listboxEl=t,role:"listbox",tabIndex:i},s("slot",null)))}get el(){return e(this)}static get watchers(){return{allowDrag:["watchAllowDrag"],disabled:["watchDisabled"],multiSelect:["watchMultiSelect"],value:["watchValue"]}}};l.style=".sc-swirl-option-list-h{display:block}.sc-swirl-option-list-h *.sc-swirl-option-list{box-sizing:border-box}";const c=class{constructor(s){t(this,s),this.remove=i(this,"remove",7),this.onRemove=t=>{this.remove?.emit(t)},this.intent="default",this.label=void 0,this.removable=void 0,this.removalButtonLabel="Remove"}render(){const t=r("tag",`tag--intent-${this.intent}`);return s(o,null,s("span",{class:t,part:"tag"},s("span",{class:"tag__label"},this.label),this.removable&&s("button",{"aria-label":this.removalButtonLabel,class:"tag__removal-button",onClick:this.onRemove,tabIndex:"true"===this.el.ariaHidden?-1:void 0,type:"button"},s("swirl-icon-close",{size:16}))))}get el(){return e(this)}};c.style=":host{display:inline-flex;max-width:100%}:host *{box-sizing:border-box}.tag{display:inline-flex;max-width:100%;padding:var(--s-space-2) var(--s-space-8);align-items:center;border-radius:var(--s-border-radius-s);color:var(--s-text-default);background-color:var(--s-surface-neutral-subdued);font-size:var(--s-font-size-sm);font-weight:var(--s-font-weight-medium);line-height:var(--s-line-height-sm);white-space:nowrap;gap:var(--s-space-4)}.tag--intent-info{color:var(--s-text-info);background-color:var(--s-surface-info-subdued)}.tag--intent-info .tag__removal-button{color:var(--icon-info)}.tag--intent-critical{color:var(--s-text-critical);background-color:var(--s-surface-critical-subdued)}.tag--intent-critical .tag__removal-button{color:var(--icon-critical)}.tag--intent-warning{color:var(--s-text-warning);background-color:var(--s-surface-warning-subdued)}.tag--intent-warning .tag__removal-button{color:var(--icon-warning)}.tag--intent-success{color:var(--s-text-success);background-color:var(--s-surface-success-subdued)}.tag--intent-success .tag__removal-button{color:var(--icon-success)}.tag__label{overflow:hidden;min-width:0;white-space:nowrap;text-overflow:ellipsis}.tag__removal-button{display:inline-flex;margin-right:calc(-1 * var(--s-space-4));padding:0;border:none;color:var(--s-icon-strong);background-color:transparent;cursor:pointer}.tag__removal-button:focus:not(:focus-visible){outline:none}.tag__removal-button:focus-visible{outline-color:var(--s-focus-default)}";export{l as swirl_option_list,c as swirl_tag}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as t,c as i,h as s,H as e,g as o}from"./p-3fca9a05.js";import{a,c as h,o as l}from"./p-ecb8b7f5.js";import{c as n}from"./p-b7898321.js";import{d as r}from"./p-646e00de.js";const c=class{constructor(s){t(this,s),this.valueChange=i(this,"valueChange",7),this.onChange=t=>{t.stopPropagation(),this.updateTerm(t)},this.updateTerm=r((async t=>{this.updateSuggestions(t.detail),this.open(),this.multiSelect||Boolean(t.detail)&&""!==t.detail||(this.value=void 0,this.valueChange.emit(this.value))}),250,!1),this.onSelect=async t=>{if(t.stopPropagation(),this.multiSelect){const i=t.detail,s=this.suggestions.filter((t=>!i.includes(t.id))).map((t=>t.id));this.value=[...this.value.filter((t=>!s.includes(t.id))),...this.suggestions.filter((t=>i.includes(t.id)&&!this.value.some((i=>i.id===t.id))))],this.valueChange.emit(this.value),this.inputEl.value="";const e=this.inputEl.querySelector("input");Boolean(e)&&(e.value="",queueMicrotask((()=>{e.focus(),this.close()})),this.updateSuggestions(e.value))}else if(Boolean(t.detail[0])){const i=t.detail[0],s=this.suggestions.find((t=>t.id===i));if(!Boolean(s))return;this.value=s,this.valueChange.emit(this.value),queueMicrotask((()=>{this.inputEl.querySelector("input")?.focus(),this.close()}))}},this.onRemoveValue=t=>{Array.isArray(this.value)&&(this.value=this.value.filter((i=>i.id!==t)),this.valueChange.emit(this.value))},this.onFocusOut=t=>{const i=t.relatedTarget;Boolean(i)&&!this.el.contains(i)&&this.close()},this.onFocus=()=>{this.updateSuggestions(),this.open()},this.onKeyDown=t=>{"Escape"===t.code&&(t.preventDefault(),t.stopPropagation(),this.inputEl.querySelector("input").focus(),this.close())},this.onInputKeyDown=t=>{"ArrowDown"===t.code&&(t.preventDefault(),this.listboxEl.querySelector('[role="listbox"]')?.querySelector('[tabIndex="0"]')?.focus())},this.autoSelect=void 0,this.clearable=!0,this.clearButtonLabel="Clear input",this.disabled=void 0,this.generateSuggestions=async()=>[],this.inline=void 0,this.invalid=void 0,this.maxLength=void 0,this.menuLabel="Suggestions",this.mode=void 0,this.multiSelect=void 0,this.placeholder=void 0,this.required=void 0,this.spellCheck=void 0,this.swirlAriaDescribedby=void 0,this.value=void 0,this.active=!1,this.loading=!1,this.position=void 0,this.suggestions=[]}componentWillLoad(){const t=document.querySelectorAll("swirl-datepicker").length;this.id=`autocomplete-${t}`,this.handleInitialValue()}onWindowClick(t){this.el.contains(t.target)||this.close()}watchMultiSelect(){this.handleInitialValue()}async close(){if(!this.active)return;this.disableAutoUpdate&&this.disableAutoUpdate();const t=this.inputEl.querySelector("input");Boolean(t)&&(t.value=this.multiSelect?"":this.value?.label||""),this.active=!1}async open(){this.active||(this.active=!0,requestAnimationFrame((async()=>{await this.reposition(),this.disableAutoUpdate&&this.disableAutoUpdate(),this.disableAutoUpdate=a(this.inputEl,this.listboxContainerEl,this.reposition.bind(this),{animationFrame:!0}),this.listboxContainerEl.scrollTop=0,this.updateSuggestions(this.inputEl.querySelector("input").value)})))}async reposition(){Boolean(this.listboxContainerEl)&&(this.position=await h(this.inputEl,this.listboxContainerEl,{middleware:[l({crossAxis:-16,mainAxis:16})],placement:"bottom-start",strategy:"fixed"}))}async updateSuggestions(t){this.loading=!0,this.suggestions=[],this.suggestions=await this.generateSuggestions(t),this.loading=!1}handleInitialValue(){this.multiSelect&&!Array.isArray(this.value)&&(this.value=[]),!this.multiSelect&&Array.isArray(this.value)&&(this.value=void 0)}render(){const t=`${this.id}-suggestions`,i=this.clearable&&!this.multiSelect,o=this.multiSelect?this.value.map((t=>t.id)):Boolean(this.value)?[this.value.id]:[],a=this.multiSelect?void 0:this.value?.label||"",h=n("autocomplete",{"autocomplete--inactive":!this.active});return s(e,null,s("div",{class:h,onKeyDown:this.onKeyDown},this.multiSelect&&Array.isArray(this.value)&&this.value.length>0&&s("div",{class:"autocomplete__multi-select-tags"},s("swirl-stack",{orientation:"horizontal",spacing:"8",wrap:!0},this.value.map((t=>s("swirl-tag",{key:t.id,label:t.label,onRemove:()=>this.onRemoveValue(t.id),removable:!this.disabled}))))),s("swirl-text-input",{autoSelect:this.autoSelect,class:"autocomplete__input",clearable:i,clearButtonLabel:this.clearButtonLabel,disabled:this.disabled,disableDynamicWidth:!0,id:this.id,inline:this.inline,invalid:this.invalid,onInputFocus:this.onFocus,onKeyDown:this.onInputKeyDown,onValueChange:this.onChange,maxLength:this.maxLength,mode:this.mode,placeholder:this.placeholder,ref:t=>this.inputEl=t,required:this.required,spellCheck:this.spellCheck,swirlAriaAutocomplete:"list",swirlAriaControls:t,swirlAriaDescribedby:this.swirlAriaDescribedby,swirlAriaExpanded:String(this.active),swirlRole:"combobox",value:a}),s("div",{class:"autocomplete__listbox-container",onFocusout:this.onFocusOut,ref:t=>this.listboxContainerEl=t,style:{top:Boolean(this.position)?`${this.position?.y}px`:"",left:Boolean(this.position)?`${this.position?.x}px`:"",width:`${this.inputEl?.getBoundingClientRect().width+32}px`}},this.loading&&s("div",{class:"autocomplete__spinner"},s("swirl-spinner",null)),this.suggestions.length>0&&s("swirl-option-list",{allowDeselect:!0===this.multiSelect,label:this.menuLabel,multiSelect:this.multiSelect,onValueChange:this.onSelect,optionListId:t,ref:t=>this.listboxEl=t,value:o},this.suggestions.map((t=>s("swirl-option-list-item",{selected:Array.isArray(this.value)?this.value.some((i=>i.id===t.id)):this.value?.id===t.id,key:t.id,disabled:t.disabled,label:t.label,value:t.id})))))))}get el(){return o(this)}static get watchers(){return{multiSelect:["watchMultiSelect"]}}};c.style=".sc-swirl-autocomplete-h{display:block}.sc-swirl-autocomplete-h *.sc-swirl-autocomplete{box-sizing:border-box}.autocomplete--inactive.sc-swirl-autocomplete .autocomplete__listbox-container.sc-swirl-autocomplete{display:none}.autocomplete__listbox-container.sc-swirl-autocomplete{position:fixed;z-index:var(--s-z-40);overflow-x:hidden;overflow-y:auto;max-height:18rem;padding-top:var(--s-space-8);padding-bottom:var(--s-space-8);border-radius:var(--s-border-radius-sm);background-color:var(--s-surface-overlay-default);animation:autocomplete-enter 0.1s;box-shadow:var(--s-shadow-level-1)}.autocomplete__listbox-container.sc-swirl-autocomplete:empty{display:none}.autocomplete__spinner.sc-swirl-autocomplete{display:flex;padding:var(--s-space-16);justify-content:center;align-items:center}.autocomplete__multi-select-tags.sc-swirl-autocomplete{margin-top:var(--swirl-autocomplete-tags-margin-top);margin-bottom:var(--s-space-4)}@keyframes autocomplete-enter{from{opacity:0}to{opacity:1}}";export{c as swirl_autocomplete}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as s,c as e,h as t,H as i,g as l}from"./p-3fca9a05.js";import{c as r}from"./p-b7898321.js";import{q as c}from"./p-646e00de.js";const o=class{constructor(t){s(this,t),this.valueChange=e(this,"valueChange",7),this.select=s=>{this.value=s.detail,this.valueChange.emit(this.value),this.multiSelect||this.popover.close()},this.unselectOption=s=>{this.allowDeselect&&(this.value=this.value.filter((e=>e!==s)),this.valueChange.emit(this.value))},this.onSlotChange=()=>{this.updateOptions()},this.onOpen=s=>{this.placement=s.detail.position?.placement,this.open=!0,this.optionList.querySelector('[tabIndex="0"]')?.focus()},this.onClose=()=>{this.open=!1,this.input.focus()},this.onKeyDown=s=>{"Space"!==s.code&&"Enter"!==s.code||(s.preventDefault(),this.popover.open(this.el))},this.allowDeselect=!0,this.disabled=void 0,this.inline=void 0,this.invalid=void 0,this.label=void 0,this.multiSelect=void 0,this.required=void 0,this.selectId=Math.round(1e6*Math.random()).toString(),this.swirlAriaDescribedby=void 0,this.value=void 0,this.options=[],this.open=void 0,this.placement=void 0}componentWillLoad(){queueMicrotask((()=>{this.updateOptions()}))}onWindowFocusIn(s){s.target===this.el.querySelector("input")&&s.stopImmediatePropagation()}updateOptions(){this.options=c(this.el,"swirl-option-list-item")}render(){const s=Boolean(this.value)?this.value?.map((s=>this.options.find((e=>e.value===s))?.label)).join(", "):"",e=!0===this.invalid||!1===this.invalid?String(this.invalid):void 0,l=this.el.closest("swirl-form-control"),c=l?.inline||"outside"===l?.labelPosition?-12:-16,o=r("select",`select--placement-${this.placement}`,{"select--disabled":this.disabled,"select--inline":this.inline,"select--multi":this.multiSelect});return t(i,{onKeyDown:this.onKeyDown},t("div",{class:o},t("swirl-popover-trigger",{popover:this.popover,setAriaAttributes:!1},t("input",{"aria-describedby":this.swirlAriaDescribedby,"aria-disabled":this.disabled?"true":void 0,"aria-invalid":e,class:"select__input",disabled:this.disabled,readOnly:!0,ref:s=>this.input=s,type:"text",value:s})),t("span",{class:"select__multi-select-values"},this.value?.map((s=>this.options.find((e=>e.value===s))))?.map((s=>t("swirl-tag",{"aria-hidden":"true",label:s?.label,onRemove:()=>this.unselectOption(s?.value),removable:!this.disabled&&this.allowDeselect})))),t("span",{class:"select__indicator"},t(this.open?"swirl-icon-expand-less":"swirl-icon-expand-more",null)),t("swirl-popover",{animation:"scale-in-y",class:"select__popover",id:`select-options-${this.selectId}`,label:this.label,offset:[0,c],onPopoverClose:this.onClose,onPopoverOpen:this.onOpen,ref:s=>this.popover=s,useContainerWidth:"swirl-form-control"},t("swirl-option-list",{allowDeselect:this.allowDeselect,onValueChange:this.select,multiSelect:this.multiSelect,ref:s=>this.optionList=s,value:this.value},t("slot",{onSlotchange:this.onSlotChange})))))}get el(){return l(this)}};o.style=".sc-swirl-select-h{display:block;width:100%}.sc-swirl-select-h *.sc-swirl-select{box-sizing:border-box}.select.sc-swirl-select{position:relative;display:flex;width:100%}.select.sc-swirl-select .sc-swirl-select::part(popover__content){margin-top:var(--s-space-16)}.select--placement-top-start.sc-swirl-select .sc-swirl-select::part(popover__content){margin-top:-2.25rem}.select--multi.sc-swirl-select .select__input.sc-swirl-select{position:absolute;width:100%;height:100%;pointer-events:none;opacity:0}.select--multi.sc-swirl-select .select__multi-select-values.sc-swirl-select{display:flex}.select--disabled.sc-swirl-select .select__input.sc-swirl-select{color:var(--s-text-disabled)}.select--disabled.sc-swirl-select .select__indicator.sc-swirl-select{color:var(--s-icon-disabled)}.select--inline.sc-swirl-select .select__indicator.sc-swirl-select{transform:translateY(-50%)}.select__input.sc-swirl-select{display:block;overflow:hidden;width:100%;height:1.25rem;margin:0;padding:0;padding-right:calc(1.5rem + var(--s-space-8));border:none;background-color:transparent;font:inherit;line-height:var(--s-line-height-base);text-align:left;white-space:nowrap;text-overflow:ellipsis;cursor:default}.select__input.sc-swirl-select:focus{outline:none}@media (min-width: 992px) and (max-width: 1439px) and (hover: hover),(min-width: 1440px){.select__input.sc-swirl-select{font-size:var(--s-font-size-sm);line-height:var(--s-line-height-sm)}}.select__multi-select-values.sc-swirl-select{display:none;overflow:hidden;width:100%;min-height:1.25rem;padding-right:calc(1.5rem + var(--s-space-8));flex-wrap:wrap;gap:var(--s-space-8)}.select__multi-select-values.sc-swirl-select .sc-swirl-select::part(tag){height:1.25rem;padding:0 var(--s-space-4)}.select__indicator.sc-swirl-select{position:absolute;top:50%;right:0;display:inline-flex;color:var(--s-icon-default);transform:translateY(calc(-50% - var(--s-space-8)))}";export{o as swirl_select}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as i,h as t,H as s,g as e}from"./p-3fca9a05.js";import{q as a,a as o,g as r}from"./p-646e00de.js";import{c as n}from"./p-b7898321.js";const l=class{constructor(t){i(this,t),this.onKeyDown=i=>{"ArrowDown"===i.code||"ArrowRight"===i.code?(i.preventDefault(),this.focusNextItem()):"ArrowUp"!==i.code&&"ArrowLeft"!==i.code||(i.preventDefault(),this.focusPreviousItem())}}getItems(){return a(this.el,'[role="menuitem"]')}focusNextItem(){const i=this.getItems();i[(this.getActiveItemIndex()+1)%i.length].focus()}focusPreviousItem(){const i=this.getItems(),t=this.getActiveItemIndex(),s=0===t?i.length-1:t-1;i[s]?.focus()}getActiveItemIndex(){const i=this.getItems(),t=o();return i.findIndex((i=>i===t||i===t?.querySelector('[role="menuitem"]')))}render(){return t(s,null,t("div",{"aria-orientation":"vertical",class:"action-list",onKeyDown:this.onKeyDown,role:"menu"},t("slot",null)))}get el(){return e(this)}};l.style=":host{display:block;width:100%}:host *{box-sizing:border-box}.action-list{background-color:var(--s-surface-overlay-default)}";const c=class{constructor(t){i(this,t),this.desktopMediaQuery=r(),this.desktopMediaQueryHandler=i=>{this.forceIconProps(i.matches)},this.badge=void 0,this.disabled=void 0,this.description=void 0,this.icon=void 0,this.intent="default",this.label=void 0,this.size="m",this.swirlAriaExpanded=void 0,this.swirlAriaHaspopup=void 0,this.suffix=void 0}componentDidLoad(){this.forceIconProps(this.desktopMediaQuery.matches),this.desktopMediaQuery.onchange=this.desktopMediaQueryHandler}componentDidRender(){this.forceIconProps(this.desktopMediaQuery.matches)}disconnectedCallback(){this.desktopMediaQuery.removeEventListener?.("change",this.desktopMediaQueryHandler)}forceIconProps(i){const t=this.iconEl?.children[0],s=this.suffixEl?.children[0];t?.setAttribute("size",i?"20":"24"),s?.setAttribute("size",i?"20":"24")}render(){const i=Boolean(this.badge),e=Boolean(this.suffix)&&!this.disabled,a=n("action-list-item",`action-list-item--intent-${this.intent}`,`action-list-item--size-${this.size}`);return t(s,null,t("button",{"aria-expanded":this.swirlAriaExpanded,"aria-haspopup":this.swirlAriaHaspopup,class:a,disabled:this.disabled,part:"action-list-item",role:"menuitem",tabIndex:-1,type:"button"},this.icon&&t("span",{class:"action-list-item__icon",innerHTML:this.icon,ref:i=>this.iconEl=i}),t("span",{class:"action-list-item__label-container"},t("span",{class:"action-list-item__label"},this.label),this.description&&t("span",{class:"action-list-item__description"},this.description)),i&&t("span",{class:"action-list-item__badge",innerHTML:this.badge}),e&&t("span",{class:"action-list-item__suffix",innerHTML:this.suffix,ref:i=>this.suffixEl=i})))}};c.style=":host{display:block}:host *{box-sizing:border-box}.action-list-item{display:inline-flex;width:100%;min-width:15rem;margin:0;padding:var(--s-space-12) var(--s-space-16);justify-content:flex-start;align-items:center;border:none;color:var(--s-text-default);background-color:var(--s-surface-overlay-default);font:inherit;line-height:var(--s-line-height-base);text-align:left;cursor:pointer;gap:var(--s-space-12)}.action-list-item:hover{background-color:var(--s-surface-overlay-hovered)}.action-list-item:focus{outline:none}.action-list-item:focus-visible{background-color:var(--s-surface-overlay-hovered)}.action-list-item:active{background-color:var(--s-surface-overlay-pressed)}.action-list-item:disabled{background-color:var(--s-surface-overlay-default);cursor:default}.action-list-item:disabled .action-list-item__label,.action-list-item:disabled .action-list-item__description{color:var(--s-text-disabled)}.action-list-item:disabled .action-list-item__icon{color:var(--s-icon-disabled)}@media (min-width: 992px) and (max-width: 1439px) and (hover: hover),(min-width: 1440px){.action-list-item{padding:var(--s-space-8) var(--s-space-12);font-size:var(--s-font-size-sm);line-height:var(--s-line-height-sm);gap:var(--s-space-8)}}.action-list-item--size-l{padding:var(--s-space-16)}.action-list-item--intent-critical ::part(icon){color:var(--s-icon-critical)}.action-list-item--intent-critical:not(:disabled) .action-list-item__label{color:var(--s-text-critical)}.action-list-item--intent-critical:not(:disabled) .action-list-item__icon{color:var(--s-icon-critical)}.action-list-item__icon{display:inline-flex;flex-shrink:0;color:var(--s-icon-default)}.action-list-item__label-container{display:inline-flex;min-width:0;flex-grow:1;flex-shrink:1;align-items:flex-start;flex-direction:column}.action-list-item__label{overflow:hidden;max-width:100%;font-weight:var(--s-font-weight-medium);white-space:nowrap;text-overflow:ellipsis}.action-list-item__description{color:var(--s-text-subdued)}.action-list-item__badge{overflow:hidden;min-width:4rem;padding-left:var(--s-space-8);flex-shrink:3;color:var(--s-text-subdued);font-weight:var(--s-font-weight-medium);text-align:right;white-space:nowrap;text-overflow:ellipsis}.action-list-item__suffix{display:inline-flex;flex-shrink:0;color:var(--s-icon-highlight)}";const d=class{constructor(t){i(this,t),this.orientation="horizontal",this.spacing="8"}render(){const i="horizontal"===this.orientation?{paddingTop:`var(--s-space-${this.spacing})`,paddingBottom:`var(--s-space-${this.spacing})`}:{paddingRight:`var(--s-space-${this.spacing})`,paddingLeft:`var(--s-space-${this.spacing})`},e=n("separator",`separator--orientation-${this.orientation}`);return t(s,{"aria-orientation":this.orientation,class:e,role:"separator",style:i},t("span",{class:"separator__line"}))}};d.style=":host{display:flex;width:100%;align-items:center}:host *{box-sizing:border-box}:host(.separator--orientation-vertical){display:inline-flex;width:auto}:host(.separator--orientation-vertical) .separator__line{display:block;width:var(--s-border-width-default);height:100%;min-height:1.125rem;background-color:var(--s-border-default)}.separator__line{display:block;width:100%;height:var(--s-border-width-default);background-color:var(--s-border-default)}";export{l as swirl_action_list,c as swirl_action_list_item,d as swirl_separator}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as i,c as t,h as e,H as a,g as o,F as s}from"./p-3fca9a05.js";import{c as r}from"./p-b7898321.js";import{i as l,g as n}from"./p-646e00de.js";import{S as p}from"./p-1486d7ea.js";const d=class{constructor(e){i(this,e),this.ctaClick=t(this,"ctaClick",7),this.mobileViewChange=t(this,"mobileViewChange",7),this.navigationBackButtonClick=t(this,"navigationBackButtonClick",7),this.sidebarToggle=t(this,"sidebarToggle",7),this.onBackToNavigationViewButtonClick=()=>{this.changeMobileView("navigation")},this.onCtaClick=i=>{this.ctaClick.emit(i)},this.onNavigationBackButtonClick=i=>{this.navigationBackButtonClick.emit(i)},this.onSidebarCloseButtonClick=()=>{this.hideSidebar()},this.appName=void 0,this.backToNavigationViewButtonLabel="Back to navigation",this.ctaIcon=void 0,this.ctaLabel=void 0,this.navigationBackButtonLabel="Go back",this.navigationLabel=void 0,this.showNavigationBackButton=void 0,this.sidebarCloseButtonLabel="Close sidebar",this.sidebarHeading=void 0,this.transitionStyle="slides",this.hasNavigation=void 0,this.hasSidebar=void 0,this.mobileView="navigation",this.sidebarActive=void 0,this.sidebarClosing=void 0,this.transitioningFrom=void 0,this.transitioningTo=void 0}componentWillLoad(){this.mutationObserver=new MutationObserver((()=>{this.updateNavigationStatus(),this.updateSidebarStatus()})),this.mutationObserver.observe(this.el,{childList:!0}),queueMicrotask((()=>{this.updateSidebarStatus(),this.updateNavigationStatus(),this.checkMobileView()}))}disconnectedCallback(){this.mutationObserver?.disconnect()}watchMobileView(){this.checkMobileView()}async showSidebar(){!this.sidebarActive&&this.hasSidebar&&(this.sidebarActive=!0,this.changeMobileView("sidebar"),this.sidebarToggle.emit(!0))}async hideSidebar(){if(!this.sidebarActive||!this.hasSidebar)return;Boolean(this.sidebarClosingTimeout)&&clearTimeout(this.sidebarClosingTimeout),this.sidebarClosing=!0;const i=l()?0:300;this.sidebarClosingTimeout=setTimeout((()=>{this.sidebarActive=!1,this.sidebarClosing=!1,this.changeMobileView("body"),this.sidebarToggle.emit(!1)}),i)}async toggleSidebar(){this.hasSidebar&&(this.sidebarActive?this.hideSidebar():this.showSidebar())}async changeMobileView(i,t=!0){if(this.mobileView===i||"navigation"===i&&!this.hasNavigation||"sidebar"===i&&!this.hasSidebar)return;if(!l()||!t)return this.mobileView=i,void this.mobileViewChange.emit(this.mobileView);Boolean(this.transitionTimeout)&&clearTimeout(this.transitionTimeout),this.transitioningFrom=this.mobileView,this.transitioningTo=i;let e=0;"slides"===this.transitionStyle?e=400:"dialog"===this.transitionStyle&&(e=300),this.transitionTimeout=setTimeout((()=>{this.mobileView=i,this.transitioningFrom=void 0,this.transitioningTo=void 0,this.mobileViewChange.emit(this.mobileView)}),e)}checkMobileView(){if("navigation"===this.mobileView&&!this.hasNavigation||"sidebar"===this.mobileView&&!this.hasSidebar)return void(this.mobileView="body");const i="sidebar"===this.mobileView||this.sidebarActive;i!==this.sidebarActive&&(i?this.showSidebar():this.hideSidebar())}updateNavigationStatus(){this.hasNavigation=Boolean(this.el.querySelector('[slot="navigation"]'))}updateSidebarStatus(){this.hasSidebar=Boolean(this.el.querySelector('[slot="sidebar"]'))}render(){const i=("body"===this.mobileView||this.transitioningTo)&&this.hasNavigation,t=Boolean(this.el.querySelector('[slot="app-bar-controls"]')),o=r("app-layout",`app-layout--mobile-view-${this.mobileView}`,`app-layout--transitioning-from-${this.transitioningFrom}`,`app-layout--transitioning-to-${this.transitioningTo}`,`app-layout--transition-style-${this.transitionStyle}`,{"app-layout--has-app-bar-controls":t,"app-layout--has-navigation":this.hasNavigation,"app-layout--has-sidebar":this.hasSidebar,"app-layout--sidebar-active":"sidebar"===this.mobileView||this.sidebarActive,"app-layout--sidebar-closing":this.sidebarClosing});return e(a,null,e("section",{"aria-labelledby":"app-name",class:o,role:"document",tabIndex:0},e("div",{class:"app-layout__grid"},e("header",{class:"app-layout__header"},e("span",{class:"app-layout__navigation-mobile-menu-button"},e("slot",{name:"navigation-mobile-menu-button"})),this.showNavigationBackButton&&e("span",{class:"app-layout__navigation-back-button"},e("swirl-button",{hideLabel:!0,icon:"<swirl-icon-arrow-back></swirl-icon-arrow-back>",label:this.navigationBackButtonLabel,onClick:this.onNavigationBackButtonClick})),e("swirl-heading",{as:"h1",class:"app-layout__app-name",headingId:"app-name",level:3,text:this.appName}),this.hasNavigation&&e("span",{class:"app-layout__navigation-controls"},e("slot",{name:"navigation-controls"}))),e("nav",{"aria-label":this.navigationLabel,class:"app-layout__navigation"},e("slot",{name:"navigation"})),e("section",{"aria-labelledby":"app-name",class:"app-layout__body"},e("header",{class:"app-layout__app-bar"},e("span",{class:"app-layout__app-bar-mobile-menu-button"},e("slot",{name:"app-bar-mobile-menu-button"})),i&&e("span",{class:"app-layout__back-to-navigation-button"},e("swirl-button",{hideLabel:!0,icon:"dialog"===this.transitionStyle?"<swirl-icon-close></swirl-icon-close>":"<swirl-icon-arrow-back></swirl-icon-arrow-back>",label:this.backToNavigationViewButtonLabel,onClick:this.onBackToNavigationViewButtonClick})),e("div",{class:"app-layout__app-bar-content"},e("slot",{name:"app-bar"})),e("div",{class:"app-layout__app-bar-controls"},e("slot",{name:"app-bar-controls"}))),e("div",{class:"app-layout__banner"},e("slot",{name:"banner"})),e("div",{class:"app-layout__content"},e("slot",{name:"content"}))),e("aside",{class:"app-layout__sidebar"},e("header",{class:"app-layout__sidebar-header"},e("swirl-button",{class:"app-layout__sidebar-close-button",hideLabel:!0,icon:"<swirl-icon-close></swirl-icon-close>",label:this.sidebarCloseButtonLabel,onClick:this.onSidebarCloseButtonClick}),e("swirl-heading",{as:"h3",class:"app-layout__sidebar-heading",headingId:"sidebar-heading",level:3,text:this.sidebarHeading})),e("div",{class:"app-layout__sidebar-content"},e("slot",{name:"sidebar"}))),this.ctaLabel&&e("span",{class:"app-layout__floating-cta"},e("swirl-button",{hideLabel:Boolean(this.ctaIcon),icon:this.ctaIcon,intent:"primary",label:this.ctaLabel,onClick:this.onCtaClick,variant:"floating"})))))}get el(){return o(this)}static get watchers(){return{mobileView:["watchMobileView"]}}};d.style=':host{position:relative;z-index:1;display:flex;width:100%;height:100%}:host *{box-sizing:border-box}.app-layout{display:flex;overflow:hidden;width:100%;height:100%;margin-right:auto;margin-left:auto}.app-layout__grid{position:relative;display:grid;width:100%;height:100%;grid-template-columns:100%;grid-template-rows:3.5625rem 1fr;grid-template-areas:"body"\n "body"}.app-layout:not(.app-layout--has-navigation) .app-layout__header,.app-layout:not(.app-layout--has-navigation) .app-layout__navigation{display:none}.app-layout:not(.app-layout--has-sidebar) .app-layout__sidebar{display:none}@media (max-width: 767px){.app-layout:not(.app-layout--mobile-view-body) .app-layout__body{display:none}}@media (max-width: 767px){.app-layout:not(.app-layout--mobile-view-sidebar) .app-layout__sidebar{display:none}}.app-layout--has-navigation .app-layout__grid{grid-template-columns:100%;grid-template-areas:"header"\n "navigation"}@media (min-width: 768px){.app-layout--has-navigation .app-layout__grid{grid-template-columns:min(50%, 25rem) 1fr;grid-template-areas:"header body"\n "navigation body"}}@media (min-width: 768px){.app-layout--has-navigation .app-layout__app-bar-mobile-menu-button{display:none}}@media (min-width: 768px){.app-layout--has-sidebar.app-layout--sidebar-active .app-layout__grid{grid-template-columns:1fr min(50%, 25rem);grid-template-areas:"body sidebar"\n "body sidebar"}}.app-layout--has-sidebar .app-layout__grid{grid-template-columns:100%;grid-template-areas:"body"\n "body"}@media (min-width: 1440px){.app-layout--has-navigation.app-layout--has-sidebar.app-layout--sidebar-active .app-layout__grid{animation:app-layout-sidebar-slide-in 0.3s;grid-template-columns:25rem 1fr 25rem;grid-template-areas:"header body sidebar"\n "navigation body sidebar"}}@media (min-width: 1440px){.app-layout--has-navigation.app-layout--has-sidebar.app-layout--sidebar-closing .app-layout__grid{animation:app-layout-sidebar-slide-out 0.3s}}@media (min-width: 768px){.app-layout--has-navigation.app-layout--has-sidebar .app-layout__grid{grid-template-columns:min(50%, 25rem) 1fr;grid-template-areas:"header body"\n "navigation body"}}@media (min-width: 992px){.app-layout--has-navigation.app-layout--has-sidebar .app-layout__grid{grid-template-columns:25rem 1fr;grid-template-areas:"header body"\n "navigation body"}}@media (min-width: 768px) and (max-width: 1439px){.app-layout--has-navigation.app-layout--has-sidebar .app-layout__sidebar{position:absolute;top:0;right:0;bottom:0;width:min(40%, 25rem);border-left:var(--s-border-width-default) solid var(--s-border-default);box-shadow:var(--s-shadow-level-3)}}@media (max-width: 767px){.app-layout--mobile-view-navigation .app-layout__grid{grid-template-areas:"header"\n "navigation"}.app-layout--mobile-view-navigation .app-layout__body,.app-layout--mobile-view-navigation .app-layout__sidebar{display:none}}@media (max-width: 767px){.app-layout--mobile-view-body .app-layout__grid{grid-template-areas:"body"\n "body"}.app-layout--mobile-view-body .app-layout__header,.app-layout--mobile-view-body .app-layout__navigation,.app-layout--mobile-view-body .app-layout__sidebar{display:none}}@media (max-width: 767px){.app-layout--mobile-view-sidebar .app-layout__grid{grid-template-areas:"sidebar"\n "sidebar"}.app-layout--mobile-view-sidebar .app-layout__header,.app-layout--mobile-view-sidebar .app-layout__navigation,.app-layout--mobile-view-sidebar .app-layout__body{display:none}}.app-layout--has-sidebar:not(.app-layout--sidebar-active) .app-layout__sidebar{display:none}@media (min-width: 768px){.app-layout--sidebar-closing .app-layout__sidebar{animation:app-layout-sidebar-overlay-slide-out 0.3s}}@media (min-width: 1440px){.app-layout--sidebar-closing .app-layout__sidebar{animation:none}}.app-layout--has-app-bar-controls .app-layout__app-bar-controls{display:block}.app-layout__header{z-index:1;display:flex;min-width:0;padding-top:var(--s-space-12);padding-right:var(--s-space-16);padding-bottom:var(--s-space-12);padding-left:var(--s-space-16);align-items:center;border-bottom:var(--s-border-width-default) solid var(--s-border-default);background-color:var(--s-background-default);grid-area:header;will-change:transform;gap:var(--s-space-8)}@media (min-width: 768px){.app-layout__header{border-right:var(--s-border-width-default) solid var(--s-border-default)}}.app-layout__app-name{min-width:0}.app-layout__app-name .heading{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.app-layout__app-bar-mobile-menu-button,.app-layout__navigation-mobile-menu-button{flex-shrink:0}@media (min-width: 992px){.app-layout__app-bar-mobile-menu-button,.app-layout__navigation-mobile-menu-button{display:none}}.app-layout__navigation-back-button{margin-left:calc(-1 * var(--s-space-4))}.app-layout__floating-cta{position:absolute;z-index:4;right:var(--s-space-16);bottom:var(--s-space-16)}.app-layout__navigation-controls{flex-shrink:0}.app-layout__navigation{z-index:1;overflow-y:auto;border-right:var(--s-border-width-default) solid var(--s-border-default);background-color:var(--s-background-default);grid-area:navigation;will-change:transform}.app-layout__body{z-index:2;display:grid;width:100%;height:100%;grid-area:body;grid-template-rows:minmax(3.5rem, auto) auto 1fr;grid-template-areas:"app-bar"\n "banner"\n "content";will-change:transform}.app-layout__app-bar{display:flex;min-width:0;align-items:center;border-bottom:var(--s-border-width-default) solid var(--s-border-default);background-color:var(--s-background-default);grid-area:app-bar;gap:var(--s-space-8);--swirl-tab-bar-border-width:0;--swirl-tab-bar-height:3.5rem}.app-layout__back-to-navigation-button{margin-left:calc(-1 * var(--s-space-4))}@media (min-width: 768px){.app-layout__back-to-navigation-button{display:none}}.app-layout__banner{grid-area:banner}.app-layout__app-bar-content{min-width:0;flex-grow:1}.app-layout__app-bar-controls{display:none;padding-right:var(--s-space-16)}.app-layout__content{overflow:auto;background-color:var(--s-background-default);grid-area:content}.app-layout__sidebar{z-index:3;display:grid;width:100%;height:100%;border-left:var(--s-border-width-default) solid var(--s-border-default);will-change:transform;grid-area:sidebar;grid-template-rows:3.5625rem 1fr;grid-template-areas:"sidebar-header"\n "sidebar-content"}@media (min-width: 768px){.app-layout__sidebar{animation:app-layout-slide-in 0.3s}}@media (min-width: 1440px){.app-layout__sidebar{width:25rem;animation:none}}.app-layout__sidebar-header{display:flex;min-width:0;padding-top:var(--s-space-12);padding-right:var(--s-space-16);padding-bottom:var(--s-space-12);padding-left:var(--s-space-16);align-items:center;border-bottom:var(--s-border-width-default) solid var(--s-border-default);background-color:var(--s-background-default);grid-area:sidebar-header;gap:var(--s-space-8)}@media (min-width: 992px){.app-layout__sidebar-header{padding-left:var(--s-space-16)}}.app-layout__sidebar-heading{min-width:0;flex-grow:1}.app-layout__sidebar-heading .heading{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.app-layout__sidebar-close-button{margin-left:calc(-1 * var(--s-space-4))}.app-layout__sidebar-content{overflow-y:auto;background-color:var(--s-background-default);grid-area:sidebar-content}@media (max-width: 767px){.app-layout:not(.app-layout--transition-none).app-layout--transitioning-to-body.app-layout--transitioning-from-navigation:not(.app-layout--mobile-view-body) .app-layout__grid,.app-layout:not(.app-layout--transition-none).app-layout--transitioning-to-navigation.app-layout--transitioning-from-body:not(.app-layout--mobile-view-navigation) .app-layout__grid{grid-template-columns:100%;grid-template-areas:"header"\n "navigation"}.app-layout:not(.app-layout--transition-none).app-layout--transitioning-to-body.app-layout--transitioning-from-navigation:not(.app-layout--mobile-view-body) .app-layout__body,.app-layout:not(.app-layout--transition-none).app-layout--transitioning-to-navigation.app-layout--transitioning-from-body:not(.app-layout--mobile-view-navigation) .app-layout__body{position:absolute;top:0;left:0;display:grid;width:100%;transform:translate3d(100%, 0, 0)}}@media (max-width: 767px){.app-layout:not(.app-layout--transition-none).app-layout--transitioning-to-navigation.app-layout--transitioning-from-body:not(.app-layout--mobile-view-navigation) .app-layout__header{display:flex}.app-layout:not(.app-layout--transition-none).app-layout--transitioning-to-navigation.app-layout--transitioning-from-body:not(.app-layout--mobile-view-navigation) .app-layout__navigation{display:block}}@media (max-width: 991px){.app-layout:not(.app-layout--transition-none).app-layout--transitioning-to-sidebar.app-layout--transitioning-from-body:not(.app-layout--mobile-view-sidebar) .app-layout__grid,.app-layout:not(.app-layout--transition-none).app-layout--transitioning-to-body.app-layout--transitioning-from-sidebar:not(.app-layout--mobile-view-body) .app-layout__grid{grid-template-columns:100%;grid-template-areas:"body"\n "body"}.app-layout:not(.app-layout--transition-none).app-layout--transitioning-to-sidebar.app-layout--transitioning-from-body:not(.app-layout--mobile-view-sidebar) .app-layout__sidebar,.app-layout:not(.app-layout--transition-none).app-layout--transitioning-to-body.app-layout--transitioning-from-sidebar:not(.app-layout--mobile-view-body) .app-layout__sidebar{position:absolute;top:0;left:0;display:grid;border-left:var(--s-border-width-default) solid var(--s-border-default)}}@media (max-width: 991px){.app-layout:not(.app-layout--transition-none).app-layout--transitioning-to-body.app-layout--transitioning-from-sidebar:not(.app-layout--mobile-view-body) .app-layout__body{display:grid}.app-layout:not(.app-layout--transition-none).app-layout--transitioning-to-body.app-layout--transitioning-from-sidebar:not(.app-layout--mobile-view-body) .app-layout__sidebar{display:grid}}@media (max-width: 767px){.app-layout--transition-style-slides.app-layout--transitioning-to-body.app-layout--transitioning-from-navigation:not(.app-layout--mobile-view-body) .app-layout__header,.app-layout--transition-style-slides.app-layout--transitioning-to-body.app-layout--transitioning-from-navigation:not(.app-layout--mobile-view-body) .app-layout__navigation,.app-layout--transition-style-slides.app-layout--transitioning-to-navigation.app-layout--transitioning-from-body:not(.app-layout--mobile-view-navigation) .app-layout__header,.app-layout--transition-style-slides.app-layout--transitioning-to-navigation.app-layout--transitioning-from-body:not(.app-layout--mobile-view-navigation) .app-layout__navigation{animation:app-layout-slide-out 0.4s}.app-layout--transition-style-slides.app-layout--transitioning-to-body.app-layout--transitioning-from-navigation:not(.app-layout--mobile-view-body) .app-layout__body,.app-layout--transition-style-slides.app-layout--transitioning-to-navigation.app-layout--transitioning-from-body:not(.app-layout--mobile-view-navigation) .app-layout__body{animation:app-layout-slide-in 0.4s}.app-layout--transition-style-slides.app-layout--transitioning-to-body.app-layout--transitioning-from-navigation:not(.app-layout--mobile-view-body) .app-layout__body:after,.app-layout--transition-style-slides.app-layout--transitioning-to-navigation.app-layout--transitioning-from-body:not(.app-layout--mobile-view-navigation) .app-layout__body:after{position:absolute;top:0;right:100%;bottom:0;display:block;width:100%;background-color:rgba(0, 0, 0, 0.3);content:"";animation:app-layout-fade-in 0.4s}}@media (max-width: 767px){.app-layout--transition-style-slides.app-layout--transitioning-to-navigation.app-layout--transitioning-from-body:not(.app-layout--mobile-view-navigation) .app-layout__header{animation-direction:reverse}.app-layout--transition-style-slides.app-layout--transitioning-to-navigation.app-layout--transitioning-from-body:not(.app-layout--mobile-view-navigation) .app-layout__navigation{animation-direction:reverse}.app-layout--transition-style-slides.app-layout--transitioning-to-navigation.app-layout--transitioning-from-body:not(.app-layout--mobile-view-navigation) .app-layout__body{animation-direction:reverse}.app-layout--transition-style-slides.app-layout--transitioning-to-navigation.app-layout--transitioning-from-body:not(.app-layout--mobile-view-navigation) .app-layout__body:after{animation-direction:reverse}}@media (max-width: 991px){.app-layout--transition-style-slides.app-layout--transitioning-to-sidebar.app-layout--transitioning-from-body:not(.app-layout--mobile-view-sidebar) .app-layout__body,.app-layout--transition-style-slides.app-layout--transitioning-to-body.app-layout--transitioning-from-sidebar:not(.app-layout--mobile-view-body) .app-layout__body{animation:app-layout-slide-out 0.4s}.app-layout--transition-style-slides.app-layout--transitioning-to-sidebar.app-layout--transitioning-from-body:not(.app-layout--mobile-view-sidebar) .app-layout__sidebar,.app-layout--transition-style-slides.app-layout--transitioning-to-body.app-layout--transitioning-from-sidebar:not(.app-layout--mobile-view-body) .app-layout__sidebar{animation:app-layout-slide-in 0.4s}.app-layout--transition-style-slides.app-layout--transitioning-to-sidebar.app-layout--transitioning-from-body:not(.app-layout--mobile-view-sidebar) .app-layout__sidebar:after,.app-layout--transition-style-slides.app-layout--transitioning-to-body.app-layout--transitioning-from-sidebar:not(.app-layout--mobile-view-body) .app-layout__sidebar:after{position:absolute;top:0;right:100%;bottom:0;display:block;width:100%;background-color:rgba(0, 0, 0, 0.3);content:"";animation:app-layout-fade-in 0.4s}}@media (max-width: 991px){.app-layout--transition-style-slides.app-layout--transitioning-to-body.app-layout--transitioning-from-sidebar:not(.app-layout--mobile-view-body) .app-layout__body{animation-direction:reverse}.app-layout--transition-style-slides.app-layout--transitioning-to-body.app-layout--transitioning-from-sidebar:not(.app-layout--mobile-view-body) .app-layout__sidebar{animation-direction:reverse}.app-layout--transition-style-slides.app-layout--transitioning-to-body.app-layout--transitioning-from-sidebar:not(.app-layout--mobile-view-body) .app-layout__sidebar:after{animation-direction:reverse}}@media (max-width: 767px){.app-layout--transition-style-dialog.app-layout--transitioning-to-body.app-layout--transitioning-from-navigation:not(.app-layout--mobile-view-body) .app-layout__body,.app-layout--transition-style-dialog.app-layout--transitioning-to-navigation.app-layout--transitioning-from-body:not(.app-layout--mobile-view-navigation) .app-layout__body{animation:app-layout-scale-in 0.3s}}@media (max-width: 767px){.app-layout--transition-style-dialog.app-layout--transitioning-to-navigation.app-layout--transitioning-from-body:not(.app-layout--mobile-view-navigation) .app-layout__header{animation-direction:reverse}.app-layout--transition-style-dialog.app-layout--transitioning-to-navigation.app-layout--transitioning-from-body:not(.app-layout--mobile-view-navigation) .app-layout__navigation{animation-direction:reverse}.app-layout--transition-style-dialog.app-layout--transitioning-to-navigation.app-layout--transitioning-from-body:not(.app-layout--mobile-view-navigation) .app-layout__body{animation-direction:reverse}}@media (max-width: 991px){.app-layout--transition-style-dialog.app-layout--transitioning-to-sidebar.app-layout--transitioning-from-body:not(.app-layout--mobile-view-sidebar) .app-layout__sidebar,.app-layout--transition-style-dialog.app-layout--transitioning-to-body.app-layout--transitioning-from-sidebar:not(.app-layout--mobile-view-body) .app-layout__sidebar{animation:app-layout-scale-in 0.3s}}@media (max-width: 991px){.app-layout--transition-style-dialog.app-layout--transitioning-to-body.app-layout--transitioning-from-sidebar:not(.app-layout--mobile-view-body) .app-layout__body{animation-direction:reverse}.app-layout--transition-style-dialog.app-layout--transitioning-to-body.app-layout--transitioning-from-sidebar:not(.app-layout--mobile-view-body) .app-layout__sidebar{animation-direction:reverse}}@keyframes app-layout-sidebar-overlay-slide-out{0%{transform:translate3d(0, 0, 0)}100%{transform:translate3d(100%, 0, 0)}}@keyframes app-layout-slide-in{0%{transform:translate3d(100%, 0, 0)}100%{transform:translate3d(0, 0, 0)}}@keyframes app-layout-slide-out{0%{transform:translate3d(0, 0, 0)}100%{transform:translate3d(-20%, 0, 0)}}@keyframes app-layout-fade-in{0%{opacity:0}100%{opacity:1}}@keyframes app-layout-scale-in{from{transform:scale(0);box-shadow:0 0 0 100rem rgba(0, 0, 0, 0)}to{transform:scale(1);box-shadow:0 0 0 100rem rgba(0, 0, 0, 0.25)}}@keyframes app-layout-sidebar-slide-in{from{overflow:hidden;grid-template-columns:25rem 1fr 0}to{overflow:hidden;grid-template-columns:25rem 1fr 25rem}}@keyframes app-layout-sidebar-slide-out{from{overflow:hidden;grid-template-columns:25rem 1fr 25rem}to{overflow:hidden;grid-template-columns:25rem 1fr 0}}';const c=class{constructor(t){i(this,t),this.bordered=void 0,this.centerBlock=void 0,this.centerInline=void 0,this.cover=void 0,this.maxWidth=void 0,this.overflow="visible",this.padding="0",this.paddingBlockEnd=void 0,this.paddingBlockStart=void 0,this.paddingInlineEnd=void 0,this.paddingInlineStart=void 0}render(){const i={alignItems:this.centerBlock?"center":void 0,display:this.centerBlock||this.centerInline?"flex":void 0,height:this.cover?"100%":void 0,justifyContent:this.centerInline?"center":void 0,overflow:this.overflow,padding:`var(--s-space-${this.padding})`,paddingBlockEnd:Boolean(this.paddingBlockEnd)?`var(--s-space-${this.paddingBlockEnd})`:void 0,paddingBlockStart:Boolean(this.paddingBlockStart)?`var(--s-space-${this.paddingBlockStart})`:void 0,paddingInlineEnd:Boolean(this.paddingInlineEnd)?`var(--s-space-${this.paddingInlineEnd})`:void 0,paddingInlineStart:Boolean(this.paddingInlineStart)?`var(--s-space-${this.paddingInlineStart})`:void 0,position:Boolean(this.overflow)?"relative":"",maxWidth:this.maxWidth,width:this.cover?"100%":void 0},t=r("box",{"box--bordered":this.bordered,"box--cover":this.cover});return e(a,{class:t,style:i},e("slot",null))}};c.style=":host{display:block;width:100%}:host(.box--bordered){border:var(--s-border-width-default) solid var(--s-border-default)}:host(.box--cover){width:100%;height:100%}:host *{box-sizing:border-box}";const u=class{constructor(t){i(this,t),this.heading=void 0,this.illustration=void 0}render(){return e(a,null,e("div",{class:"empty-state"},this.illustration&&e("img",{alt:"",class:"empty-state__illustration",src:this.illustration}),e("div",{class:"empty-state__body"},this.heading&&e("swirl-heading",{align:"center",as:"p",level:4,text:this.heading}),e("div",{class:"empty-state__content"},e("swirl-text",{align:"center",color:"subdued"},e("slot",null))))))}};u.style=":host{display:block}:host *{box-sizing:border-box}.empty-state{display:flex;max-width:28rem;align-items:center;flex-direction:column;gap:var(--s-space-16)}.empty-state__illustration{max-width:16rem}.empty-state__body{display:flex;align-items:center;flex-direction:column;gap:var(--s-space-8)}";const h=class{constructor(t){i(this,t),this.size=24}render(){const i=20===this.size?24:this.size,t=r("swirl-icon",`swirl-icon--size-${this.size}`);return e("svg",{class:t,fill:"none",height:this.size,part:"icon",viewBox:`0 0 ${i} ${i}`,width:this.size,xmlns:"http://www.w3.org/2000/svg"},16===this.size&&e(s,null,e("path",{d:"M3.99999 1.33334C3.26666 1.33334 2.67332 1.93334 2.67332 2.66668L2.66666 13.3333C2.66666 14.0667 3.25999 14.6667 3.99332 14.6667H12C12.7333 14.6667 13.3333 14.0667 13.3333 13.3333V5.88668C13.3333 5.53334 13.1933 5.19334 12.94 4.94668L9.71999 1.72668C9.47332 1.47334 9.13332 1.33334 8.77999 1.33334H3.99999ZM8.66666 5.33334V2.33334L12.3333 6.00001H9.33332C8.96666 6.00001 8.66666 5.70001 8.66666 5.33334Z",fill:"currentColor"})),(20===this.size||24===this.size)&&e(s,null,e("path",{d:"M6 2C4.9 2 4.01 2.9 4.01 4L4 20C4 21.1 4.89 22 5.99 22H18C19.1 22 20 21.1 20 20V8.83C20 8.3 19.79 7.79 19.41 7.42L14.58 2.59C14.21 2.21 13.7 2 13.17 2H6ZM13 8V3.5L18.5 9H14C13.45 9 13 8.55 13 8Z",fill:"currentColor"})),28===this.size&&e(s,null,e("path",{d:"M6.99999 2.33334C5.71666 2.33334 4.67832 3.38334 4.67832 4.66668L4.66666 23.3333C4.66666 24.6167 5.70499 25.6667 6.98832 25.6667H21C22.2833 25.6667 23.3333 24.6167 23.3333 23.3333V10.3017C23.3333 9.68334 23.0883 9.08834 22.645 8.65668L17.01 3.02168C16.5783 2.57834 15.9833 2.33334 15.365 2.33334H6.99999ZM15.1667 9.33334V4.08334L21.5833 10.5H16.3333C15.6917 10.5 15.1667 9.97501 15.1667 9.33334Z",fill:"currentColor"})))}};h.style=":host{display:inline-flex}";const m=class{constructor(t){i(this,t),this.size=24}render(){const i=20===this.size?24:this.size,t=r("swirl-icon",`swirl-icon--size-${this.size}`);return e("svg",{class:t,fill:"none",height:this.size,part:"icon",viewBox:`0 0 ${i} ${i}`,width:this.size,xmlns:"http://www.w3.org/2000/svg"},16===this.size&&e(s,null,e("path",{d:"M13.3333 3.99996H8.00001L7.06001 3.05996C6.80668 2.80663 6.46668 2.66663 6.11334 2.66663H2.66668C1.93334 2.66663 1.34001 3.26663 1.34001 3.99996L1.33334 12C1.33334 12.7333 1.93334 13.3333 2.66668 13.3333H13.3333C14.0667 13.3333 14.6667 12.7333 14.6667 12V5.33329C14.6667 4.59996 14.0667 3.99996 13.3333 3.99996ZM10 5.99996C10.7333 5.99996 11.3333 6.59996 11.3333 7.33329C11.3333 8.06663 10.7333 8.66663 10 8.66663C9.26668 8.66663 8.66668 8.06663 8.66668 7.33329C8.66668 6.59996 9.26668 5.99996 10 5.99996ZM12.6667 11.3333H7.33334V10.6666C7.33334 9.77996 9.11334 9.33329 10 9.33329C10.8867 9.33329 12.6667 9.77996 12.6667 10.6666V11.3333Z",fill:"currentColor"})),(20===this.size||24===this.size)&&e(s,null,e("path",{d:"M20 6H12L10.59 4.59C10.21 4.21 9.7 4 9.17 4H4C2.9 4 2.01 4.9 2.01 6L2 18C2 19.1 2.9 20 4 20H20C21.1 20 22 19.1 22 18V8C22 6.9 21.1 6 20 6ZM15 9C16.1 9 17 9.9 17 11C17 12.1 16.1 13 15 13C13.9 13 13 12.1 13 11C13 9.9 13.9 9 15 9ZM19 17H11V16C11 14.67 13.67 14 15 14C16.33 14 19 14.67 19 16V17Z",fill:"currentColor"})),28===this.size&&e(s,null,e("path",{d:"M23.3333 6.99996H14L12.355 5.35496C11.9117 4.91163 11.3167 4.66663 10.6983 4.66663H4.66668C3.38334 4.66663 2.34501 5.71663 2.34501 6.99996L2.33334 21C2.33334 22.2833 3.38334 23.3333 4.66668 23.3333H23.3333C24.6167 23.3333 25.6667 22.2833 25.6667 21V9.33329C25.6667 8.04996 24.6167 6.99996 23.3333 6.99996ZM17.5 10.5C18.7833 10.5 19.8333 11.55 19.8333 12.8333C19.8333 14.1166 18.7833 15.1666 17.5 15.1666C16.2167 15.1666 15.1667 14.1166 15.1667 12.8333C15.1667 11.55 16.2167 10.5 17.5 10.5ZM22.1667 19.8333H12.8333V18.6666C12.8333 17.115 15.9483 16.3333 17.5 16.3333C19.0517 16.3333 22.1667 17.115 22.1667 18.6666V19.8333Z",fill:"currentColor"})))}};m.style=":host{display:inline-flex}";const b=class{constructor(e){i(this,e),this.itemDrop=t(this,"itemDrop",7),this.focusedIndex=0,this.toggleDrag=i=>{const t=i.detail;Boolean(this.dragging)?this.stopDrag(t):this.startDrag(t)},this.startDrag=i=>{this.dragging=i,this.draggingStartIndex=this.getItemIndex(this.dragging),i.setAttribute("dragging","true");const t=this.getItemIndex(this.dragging);this.focusItemAtIndex(t),this.assistiveText=this.assistiveTextItemGrabbed},this.stopDrag=i=>{const t=this.getItemIndex(this.dragging);this.dragging=void 0,i.removeAttribute("dragging"),this.assistiveText=`${this.assistiveTextItemMoved} ${t+1}`,this.itemDrop.emit({item:i,oldIndex:this.draggingStartIndex,newIndex:t}),this.draggingStartIndex=void 0},this.onKeyDown=i=>{if("ArrowDown"===i.key)i.preventDefault(),Boolean(this.dragging)?this.moveDraggedItemDown():this.focusItemAtIndex((this.focusedIndex+1)%this.items.length);else if("ArrowUp"===i.key)i.preventDefault(),Boolean(this.dragging)?this.moveDraggedItemUp():this.focusItemAtIndex(0===this.focusedIndex?this.items.length-1:this.focusedIndex-1);else if("Space"===i.key||"Enter"===i.key){const t=i.composedPath()[0];Boolean(this.dragging)&&!t?.classList.contains("resource-list-item__drag-handle")&&(i.preventDefault(),this.stopDrag(this.dragging))}else"Home"===i.key?(i.preventDefault(),this.focusItemAtIndex(0)):"End"===i.key&&(i.preventDefault(),this.focusItemAtIndex(this.items.length-1))},this.allowDrag=void 0,this.assistiveTextItemGrabbed="Item grabbed. Use arrow keys to move item up or down. Use spacebar to save position.",this.assistiveTextItemMoving="Current position:",this.assistiveTextItemMoved="Item moved. New position:",this.label=void 0,this.assistiveText=void 0}componentDidLoad(){this.observeSlotChanges(),this.collectItems(),this.setItemAllowDragState(),this.setupDragDrop()}disconnectedCallback(){this.sortable?.destroy(),this.observer?.disconnect()}observeSlotChanges(){this.observer=new MutationObserver((()=>{this.collectItems(),this.setItemAllowDragState(),this.setupDragDrop()})),this.observer.observe(this.el,{childList:!0})}watchAllowDrag(){this.setItemAllowDragState(),this.setupDragDrop()}collectItems(){this.items=Array.from(this.el.querySelectorAll("swirl-resource-list-item, swirl-resource-list-file-item")).filter((i=>i.isConnected)),this.removeItemsFromTabOrder(),this.enableItemFocus(this.items[this.focusedIndex])}getItemIndex(i){return this.items.map((i=>i)).findIndex((t=>t===i))}removeItemsFromTabOrder(){this.items.forEach((i=>i?.querySelector(".resource-list-item__content, .resource-list-file-item")?.setAttribute("tabIndex","-1")))}setItemAllowDragState(){this.items.forEach(this.allowDrag?i=>{i.setAttribute("allow-drag","true"),i.addEventListener("toggleDrag",this.toggleDrag)}:i=>{i.removeAttribute("allow-drag"),i.removeEventListener("toggleDrag",this.toggleDrag)})}setupDragDrop(){Boolean(this.sortable)&&this.sortable.destroy(),this.allowDrag&&(this.sortable=p.create(this.gridEl,{animation:150,draggable:"swirl-resource-list-item",handle:".resource-list-item__drag-handle",onEnd:i=>{this.itemDrop.emit({item:i.item,oldIndex:i.oldDraggableIndex,newIndex:i.newDraggableIndex})}}))}enableItemFocus(i,t){if(!Boolean(i))return;const e=i.querySelector(".resource-list-item__content, .resource-list-file-item");Boolean(e)&&(e.setAttribute("tabIndex","0"),t&&e.focus())}focusItemAtIndex(i){this.removeItemsFromTabOrder();const t=this.items[i];Boolean(t)&&t.isConnected&&(this.enableItemFocus(t,!0),this.focusedIndex=i)}moveDraggedItemDown(){const i=this.dragging.nextElementSibling;Boolean(i)&&(i.after(this.dragging),this.collectItems(),this.focusItemAtIndex(this.getItemIndex(this.dragging)),this.assistiveText=`${this.assistiveTextItemMoving} ${this.getItemIndex(this.dragging)+1}`)}moveDraggedItemUp(){const i=this.dragging.previousElementSibling;Boolean(i)&&(i.before(this.dragging),this.collectItems(),this.focusItemAtIndex(this.getItemIndex(this.dragging)),this.assistiveText=`${this.assistiveTextItemMoving} ${this.getItemIndex(this.dragging)+1}`)}render(){return e(a,{onKeyDown:this.onKeyDown},e("swirl-visually-hidden",{role:"alert"},this.assistiveText),e("swirl-stack",{"aria-label":this.label,class:"resource-list",ref:i=>this.gridEl=i,role:"grid"},e("slot",null)))}get el(){return o(this)}static get watchers(){return{allowDrag:["watchAllowDrag"]}}};var y;b.style=".sc-swirl-resource-list-h{display:block;width:100%}.sc-swirl-resource-list-h *.sc-swirl-resource-list{box-sizing:border-box}";var g=new Uint8Array(16);function v(){if(!y&&!(y="undefined"!=typeof crypto&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto)||"undefined"!=typeof msCrypto&&"function"==typeof msCrypto.getRandomValues&&msCrypto.getRandomValues.bind(msCrypto)))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return y(g)}const _=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;for(var w=[],f=0;f<256;++f)w.push((f+256).toString(16).substr(1));function x(i,t,e){var a=(i=i||{}).random||(i.rng||v)();if(a[6]=15&a[6]|64,a[8]=63&a[8]|128,t){e=e||0;for(var o=0;o<16;++o)t[e+o]=a[o];return t}return function(i){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,e=(w[i[t+0]]+w[i[t+1]]+w[i[t+2]]+w[i[t+3]]+"-"+w[i[t+4]]+w[i[t+5]]+"-"+w[i[t+6]]+w[i[t+7]]+"-"+w[i[t+8]]+w[i[t+9]]+"-"+w[i[t+10]]+w[i[t+11]]+w[i[t+12]]+w[i[t+13]]+w[i[t+14]]+w[i[t+15]]).toLowerCase();if(!function(i){return"string"==typeof i&&_.test(i)}(e))throw TypeError("Stringified UUID is invalid");return e}(a)}const k=class{constructor(e){i(this,e),this.toggleDrag=t(this,"toggleDrag",7),this.valueChange=t(this,"valueChange",7),this.desktopMediaQuery=n(),this.id=x(),this.desktopMediaQueryHandler=i=>{this.forceIconProps(i.matches),this.updateIconSize(i.matches)},this.onClick=()=>{this.selectable&&(this.checked=!this.checked,this.valueChange.emit(this.checked))},this.onMenuTriggerClick=i=>{this.disabled&&!Boolean(this.href)&&i.stopPropagation()},this.onDragHandleKeyDown=i=>{"Space"!==i.code&&"Enter"!==i.code||(i.preventDefault(),this.toggleDrag.emit(this.el))},this.active=void 0,this.allowDrag=void 0,this.checked=!1,this.description=void 0,this.disabled=void 0,this.dragging=void 0,this.dragHandleDescription="Press spacebar to toggle grab",this.dragHandleLabel="Move item",this.hideDivider=void 0,this.href=void 0,this.interactive=!0,this.label=void 0,this.labelWeight="medium",this.menuTriggerId=void 0,this.menuTriggerLabel="Options",this.meta=void 0,this.selectable=void 0,this.value=void 0,this.hasMedia=!1,this.iconSize=24}async componentWillLoad(){this.updateMediaState()}componentDidLoad(){this.forceIconProps(this.desktopMediaQuery.matches),this.updateIconSize(this.desktopMediaQuery.matches),this.desktopMediaQuery.onchange=this.desktopMediaQueryHandler,Boolean(this.menuTriggerId)&&console.warn('[Swirl] The "menu-trigger-id" prop of swirl-resource-list-item is deprecated and will be removed with the next major release. Please use the "control" slot to add a menu button instead. https://swirl-storybook.flip-app.dev/?path=/docs/components-swirlresourcelistitem--docs')}disconnectedCallback(){this.desktopMediaQuery.removeEventListener?.("change",this.desktopMediaQueryHandler)}forceIconProps(i){const t=this.iconEl?.children[0];t?.setAttribute("size",i?"20":"24")}updateIconSize(i){this.iconSize=i?20:24}updateMediaState(){const i=this.el.querySelector('[slot="media"]'),t=Boolean(i);t!==this.hasMedia&&(this.hasMedia=t)}render(){const i=this.interactive||this.selectable?Boolean(this.href)&&!this.selectable?"a":"button":"div",t=this.disabled&&!Boolean(this.href),o=Boolean(this.el.querySelector("[slot='badges']")),s=Boolean(this.menuTriggerId)||this.el.querySelector("[slot='control']"),l=this.interactive&&Boolean(this.href)?this.href:void 0,n=Boolean(this.meta)||o,p=Boolean(this.menuTriggerId)&&!Boolean(this.meta)&&!this.selectable,d=(Boolean(this.meta)||o)&&!this.selectable,c=this.selectable?String(this.checked):void 0,u=this.interactive&&this.selectable?"checkbox":void 0,h=r("resource-list-item",`resource-list-item--label-weight-${this.labelWeight}`,{"resource-list-item--active":this.active,"resource-list-item--checked":this.checked,"resource-list-item--disabled":this.disabled,"resource-list-item--draggable":this.allowDrag,"resource-list-item--dragging":this.dragging,"resource-list-item--has-menu":s,"resource-list-item--hide-divider":this.hideDivider,"resource-list-item--interactive":this.interactive||this.selectable,"resource-list-item--selectable":this.selectable,"resource-list-item--show-control-on-focus":n,"resource-list-item--show-meta":d});return e(a,{role:"row"},e("div",{class:h,role:"gridcell"},e(i,{"aria-checked":c,"aria-disabled":t?"true":void 0,"aria-labelledby":this.id,class:"resource-list-item__content",href:l,disabled:t,onClick:this.onClick,part:"resource-list-item__content",role:u,tabIndex:0},this.hasMedia&&e("span",{class:"resource-list-item__media"},e("slot",{name:"media"})),e("span",{class:"resource-list-item__label-container"},e("span",{class:"resource-list-item__label",id:this.id,innerHTML:this.label}),this.description&&e("span",{class:"resource-list-item__description"},this.description)),d&&e("span",{class:"resource-list-item__meta"},e("span",{class:"resource-list-item__meta-text"},this.meta),e("span",{class:"resource-list-item__badges"},e("slot",{name:"badges"})))),this.selectable&&e("span",{"aria-hidden":"true",class:"resource-list-item__checkbox"},e("span",{class:"resource-list-item__checkbox-icon"},this.checked&&e("swirl-icon-check-strong",null))),e("span",{class:"resource-list-item__control"},e("slot",{name:"control"})),p&&e("swirl-popover-trigger",{popover:this.menuTriggerId},e("swirl-button",{"aria-disabled":t?"true":void 0,class:"resource-list-item__menu-trigger",disabled:t,hideLabel:!0,icon:"<swirl-icon-more-horizontal></swirl-icon-more-horizontal>",intent:"primary",label:this.menuTriggerLabel,onClick:this.onMenuTriggerClick}))),this.allowDrag&&e("button",{"aria-describedby":this.dragHandleDescription,"aria-label":`${this.dragHandleLabel} "${this.label}"`,class:"resource-list-item__drag-handle",onKeyDown:this.onDragHandleKeyDown,type:"button"},e("swirl-icon-drag-handle",{size:this.iconSize})))}get el(){return o(this)}};k.style='.sc-swirl-resource-list-item-h{position:relative;display:block;width:100%}.sc-swirl-resource-list-item-h *.sc-swirl-resource-list-item{box-sizing:border-box}.resource-list-item.sc-swirl-resource-list-item{position:relative;width:100%}.resource-list-item.sc-swirl-resource-list-item:not(.resource-list-item--show-meta){display:flex;align-items:center}.resource-list-item.sc-swirl-resource-list-item:not(.resource-list-item--show-meta) .resource-list-item__control.sc-swirl-resource-list-item{position:relative;top:auto;right:auto;transform:none}.resource-list-item--interactive.sc-swirl-resource-list-item:hover{--swirl-ghost-button-background-default:var(--s-background-hovered)}.resource-list-item--interactive.sc-swirl-resource-list-item .resource-list-item__content.sc-swirl-resource-list-item{cursor:pointer}.resource-list-item--interactive.sc-swirl-resource-list-item .resource-list-item__content.sc-swirl-resource-list-item:disabled{cursor:default}.resource-list-item--interactive.sc-swirl-resource-list-item .resource-list-item__content.sc-swirl-resource-list-item:hover:not(:disabled),.resource-list-item--interactive.sc-swirl-resource-list-item .resource-list-item__content.sc-swirl-resource-list-item:focus:not(:disabled){background-color:var(--swirl-resource-list-item-background-hovered)}.resource-list-item--interactive.sc-swirl-resource-list-item .resource-list-item__content.sc-swirl-resource-list-item:hover:not(:disabled) .resource-list-item__media.sc-swirl-resource-list-item,.resource-list-item--interactive.sc-swirl-resource-list-item .resource-list-item__content.sc-swirl-resource-list-item:hover:not(:disabled) .resource-list-item__meta.sc-swirl-resource-list-item,.resource-list-item--interactive.sc-swirl-resource-list-item .resource-list-item__content.sc-swirl-resource-list-item:focus:not(:disabled) .resource-list-item__media.sc-swirl-resource-list-item,.resource-list-item--interactive.sc-swirl-resource-list-item .resource-list-item__content.sc-swirl-resource-list-item:focus:not(:disabled) .resource-list-item__meta.sc-swirl-resource-list-item{--swirl-avatar-background-color:var(--s-surface-raised-hovered);--swirl-avatar-group-border-color:var(--s-background-hovered);--swirl-badge-border-color:var(--s-background-hovered)}.resource-list-item--interactive.sc-swirl-resource-list-item .resource-list-item__content.sc-swirl-resource-list-item:active:not(:disabled){background-color:var(--swirl-resource-list-item-background-pressed)}.resource-list-item--interactive.sc-swirl-resource-list-item .resource-list-item__content.sc-swirl-resource-list-item:active:not(:disabled) .resource-list-item__media.sc-swirl-resource-list-item,.resource-list-item--interactive.sc-swirl-resource-list-item .resource-list-item__content.sc-swirl-resource-list-item:active:not(:disabled) .resource-list-item__meta.sc-swirl-resource-list-item{--swirl-avatar-group-border-color:var(--s-background-pressed);--swirl-badge-border-color:var(--s-background-pressed)}.resource-list-item--active.sc-swirl-resource-list-item .resource-list-item__content.sc-swirl-resource-list-item{--swirl-badge-border-color:var(\n --swirl-resource-list-item-background-hovered\n );background-color:var(--swirl-resource-list-item-background-hovered)}.resource-list-item--checked.sc-swirl-resource-list-item .resource-list-item__checkbox.sc-swirl-resource-list-item{border-color:var(--s-icon-highlight);color:var(--s-text-on-status);background-color:var(--s-icon-highlight)}@media (min-width: 768px){.resource-list-item--selectable.sc-swirl-resource-list-item .resource-list-item__content.sc-swirl-resource-list-item{padding-left:calc(var(--s-space-16) + 1.5rem + var(--s-space-12))}}.resource-list-item--selectable.sc-swirl-resource-list-item .resource-list-item__label-container.sc-swirl-resource-list-item{padding-right:calc(var(--s-space-16) + 1.5rem + var(--s-space-12))}@media (min-width: 768px){.resource-list-item--selectable.sc-swirl-resource-list-item .resource-list-item__label-container.sc-swirl-resource-list-item{padding-right:var(--s-space-16)}}.resource-list-item--hide-divider.sc-swirl-resource-list-item .resource-list-item__label-container.sc-swirl-resource-list-item:after{display:none}.resource-list-item--label-weight-medium.sc-swirl-resource-list-item{font-weight:var(--s-font-weight-medium)}.resource-list-item--show-control-on-focus.sc-swirl-resource-list-item:hover,.resource-list-item--show-control-on-focus.sc-swirl-resource-list-item:focus,.resource-list-item--show-control-on-focus.sc-swirl-resource-list-item:focus-within{--swirl-flat-button-background-default:var(--s-background-default);--swirl-flat-button-background-disabled:var(--s-background-disabled);--swirl-flat-button-background-hovered:var(--s-background-hovered);--swirl-flat-button-background-pressed:var(--s-background-pressed)}.resource-list-item--show-control-on-focus.sc-swirl-resource-list-item:hover .resource-list-item__control.sc-swirl-resource-list-item,.resource-list-item--show-control-on-focus.sc-swirl-resource-list-item:focus .resource-list-item__control.sc-swirl-resource-list-item,.resource-list-item--show-control-on-focus.sc-swirl-resource-list-item:focus-within .resource-list-item__control.sc-swirl-resource-list-item{pointer-events:auto;opacity:1}.resource-list-item--show-control-on-focus.sc-swirl-resource-list-item:hover .resource-list-item__meta.sc-swirl-resource-list-item,.resource-list-item--show-control-on-focus.sc-swirl-resource-list-item:focus .resource-list-item__meta.sc-swirl-resource-list-item,.resource-list-item--show-control-on-focus.sc-swirl-resource-list-item:focus-within .resource-list-item__meta.sc-swirl-resource-list-item{pointer-events:none;opacity:0}.resource-list-item--show-control-on-focus.sc-swirl-resource-list-item .resource-list-item__control.sc-swirl-resource-list-item{pointer-events:none;opacity:0}.resource-list-item--draggable.sc-swirl-resource-list-item .resource-list-item__content.sc-swirl-resource-list-item{padding-left:calc(var(--s-space-16) * 2 + 1.5rem)}@media (min-width: 992px) and (max-width: 1439px) and (hover: hover),(min-width: 1440px){.resource-list-item--draggable.sc-swirl-resource-list-item .resource-list-item__content.sc-swirl-resource-list-item{padding-left:calc(var(--s-space-16) * 2 + 1rem)}}.resource-list-item--dragging.sc-swirl-resource-list-item{z-index:1;border-radius:var(--s-border-radius-s);background-color:var(--s-surface-overlay-pressed);box-shadow:0 0.0625rem 0.125rem rgba(25, 26, 28, 0.08),\n 0 0.25rem 2rem rgba(25, 26, 28, 0.16)}.resource-list-item--dragging.sc-swirl-resource-list-item:hover:not(.resource-list-item--disabled){background-color:var(--s-surface-overlay-pressed)}.resource-list-item--disabled.resource-list-item--checked.sc-swirl-resource-list-item .resource-list-item__checkbox.sc-swirl-resource-list-item{border-color:var(--s-icon-disabled);background-color:var(--s-icon-disabled)}.resource-list-item--disabled.sc-swirl-resource-list-item .resource-list-item__checkbox.sc-swirl-resource-list-item{border-color:var(--s-icon-disabled);background-color:transparent}.resource-list-item--disabled.sc-swirl-resource-list-item .resource-list-item__checkbox-icon.sc-swirl-resource-list-item{color:var(--s-text-on-status)}.resource-list-item__content.sc-swirl-resource-list-item{--swirl-avatar-group-border-color:var(--s-background-default);--swirl-badge-border-color:var(--s-background-default);display:flex;width:100%;min-width:0;margin:0;padding-top:var(--s-space-12);padding-right:0;padding-bottom:var(--s-space-12);padding-left:var(--s-space-16);align-items:center;border:none;color:var(--s-text-default);background-color:var(--swirl-resource-list-item-background-default);font:inherit;line-height:var(--s-line-height-base);text-align:left;text-decoration:none;gap:var(--s-space-12)}.resource-list-item__content.sc-swirl-resource-list-item:focus{outline:none}.resource-list-item__content.sc-swirl-resource-list-item:focus-visible{background-color:var(--s-background-hovered)}.resource-list-item__content.sc-swirl-resource-list-item:focus-visible .resource-list-item__media.sc-swirl-resource-list-item{--swirl-avatar-group-border-color:var(--s-background-hovered);--swirl-badge-border-color:var(--s-background-hovered)}.resource-list-item__content.sc-swirl-resource-list-item:disabled{color:var(--s-text-disabled);cursor:default}.resource-list-item__content.sc-swirl-resource-list-item:disabled .resource-list-item__description.sc-swirl-resource-list-item{color:var(--s-text-disabled)}@media (min-width: 992px) and (max-width: 1439px) and (hover: hover),(min-width: 1440px){.resource-list-item__content.sc-swirl-resource-list-item{padding:var(--s-space-12);font-size:var(--s-font-size-sm);line-height:var(--s-line-height-sm)}}.resource-list-item__media.sc-swirl-resource-list-item{display:inline-flex}.resource-list-item__label-container.sc-swirl-resource-list-item{position:relative;display:flex;min-width:0;min-height:2.875rem;padding-right:var(--s-space-16);flex-grow:1;justify-content:center;flex-direction:column}.resource-list-item__label-container.sc-swirl-resource-list-item:after{position:absolute;right:0;bottom:calc(-1 * var(--s-space-12));left:0;height:0.0625rem;background-color:var(--s-border-default);content:""}.resource-list-item__label.sc-swirl-resource-list-item{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.resource-list-item__label.sc-swirl-resource-list-item b.sc-swirl-resource-list-item,.resource-list-item__label.sc-swirl-resource-list-item strong.sc-swirl-resource-list-item{font-weight:var(--s-font-weight-semibold)}.resource-list-item__description.sc-swirl-resource-list-item{overflow:hidden;margin-top:var(--s-space-2);color:var(--s-text-subdued);font-size:var(--s-font-size-sm);line-height:var(--s-line-height-sm);white-space:nowrap;text-overflow:ellipsis}.resource-list-item__menu-trigger.sc-swirl-resource-list-item{position:absolute;top:50%;right:var(--s-space-16);transform:translateY(-50%)}.resource-list-item__control.sc-swirl-resource-list-item{position:absolute;top:50%;right:var(--s-space-16);transform:translateY(-50%)}.resource-list-item__checkbox.sc-swirl-resource-list-item{position:absolute;top:50%;right:var(--s-space-16);display:flex;width:1.125rem;height:1.125rem;justify-content:center;align-items:center;border:0.125rem solid var(--s-icon-default);border-radius:var(--s-border-radius-s);transform:translateY(-50%);pointer-events:none}@media (min-width: 768px){.resource-list-item__checkbox.sc-swirl-resource-list-item{right:auto;left:calc(var(--s-space-16) - var(--s-space-2))}}.resource-list-item__checkbox-icon.sc-swirl-resource-list-item{display:inline-flex;width:1.0625rem;height:1.0625rem}.resource-list-item__checkbox-icon.sc-swirl-resource-list-item>*.sc-swirl-resource-list-item::part(icon){width:1.0625rem;height:1.0625rem}.resource-list-item__meta.sc-swirl-resource-list-item{display:flex;align-items:flex-end;color:var(--s-text-subdued);font-size:var(--s-font-size-sm);flex-direction:column;align-self:flex-start}.resource-list-item__drag-handle.sc-swirl-resource-list-item{position:absolute;z-index:1;top:50%;left:var(--s-space-4);display:inline-flex;margin:0;padding:0;padding:var(--s-space-8);flex-shrink:0;border:none;color:var(--s-icon-default);background-color:transparent;cursor:grab;transform:translateY(-50%)}.resource-list-item__drag-handle.sc-swirl-resource-list-item:active{cursor:grabbing}.resource-list-item__drag-handle.sc-swirl-resource-list-item:focus:not(:focus-visible){outline:none}.resource-list-item__drag-handle.sc-swirl-resource-list-item:focus-visible{outline-color:var(--s-focus-default)}';export{d as swirl_app_layout,c as swirl_box,u as swirl_empty_state,h as swirl_icon_file,m as swirl_icon_folder_shared,b as swirl_resource_list,k as swirl_resource_list_item}
|
|
1
|
+
import{r as i,c as t,h as e,H as a,g as o,F as s}from"./p-3fca9a05.js";import{c as r}from"./p-b7898321.js";import{i as l,g as n}from"./p-646e00de.js";import{S as p}from"./p-1486d7ea.js";const d=class{constructor(e){i(this,e),this.ctaClick=t(this,"ctaClick",7),this.mobileViewChange=t(this,"mobileViewChange",7),this.navigationBackButtonClick=t(this,"navigationBackButtonClick",7),this.sidebarToggle=t(this,"sidebarToggle",7),this.onBackToNavigationViewButtonClick=()=>{this.changeMobileView("navigation")},this.onCtaClick=i=>{this.ctaClick.emit(i)},this.onNavigationBackButtonClick=i=>{this.navigationBackButtonClick.emit(i)},this.onSidebarCloseButtonClick=()=>{this.hideSidebar()},this.appName=void 0,this.backToNavigationViewButtonLabel="Back to navigation",this.ctaIcon=void 0,this.ctaLabel=void 0,this.navigationBackButtonLabel="Go back",this.navigationLabel=void 0,this.showNavigationBackButton=void 0,this.sidebarCloseButtonLabel="Close sidebar",this.sidebarHeading=void 0,this.transitionStyle="slides",this.hasNavigation=void 0,this.hasSidebar=void 0,this.mobileView="navigation",this.sidebarActive=void 0,this.sidebarClosing=void 0,this.transitioningFrom=void 0,this.transitioningTo=void 0}componentWillLoad(){this.mutationObserver=new MutationObserver((()=>{this.updateNavigationStatus(),this.updateSidebarStatus()})),this.mutationObserver.observe(this.el,{childList:!0}),queueMicrotask((()=>{this.updateSidebarStatus(),this.updateNavigationStatus(),this.checkMobileView()}))}disconnectedCallback(){this.mutationObserver?.disconnect()}watchMobileView(){this.checkMobileView()}async showSidebar(){!this.sidebarActive&&this.hasSidebar&&(this.sidebarActive=!0,this.changeMobileView("sidebar"),this.sidebarToggle.emit(!0))}async hideSidebar(){if(!this.sidebarActive||!this.hasSidebar)return;Boolean(this.sidebarClosingTimeout)&&clearTimeout(this.sidebarClosingTimeout),this.sidebarClosing=!0;const i=l()?0:300;this.sidebarClosingTimeout=setTimeout((()=>{this.sidebarActive=!1,this.sidebarClosing=!1,this.changeMobileView("body"),this.sidebarToggle.emit(!1)}),i)}async toggleSidebar(){this.hasSidebar&&(this.sidebarActive?this.hideSidebar():this.showSidebar())}async changeMobileView(i,t=!0){if(this.mobileView===i||"navigation"===i&&!this.hasNavigation||"sidebar"===i&&!this.hasSidebar)return;if(!l()||!t)return this.mobileView=i,void this.mobileViewChange.emit(this.mobileView);Boolean(this.transitionTimeout)&&clearTimeout(this.transitionTimeout),this.transitioningFrom=this.mobileView,this.transitioningTo=i;let e=0;"slides"===this.transitionStyle?e=400:"dialog"===this.transitionStyle&&(e=300),this.transitionTimeout=setTimeout((()=>{this.mobileView=i,this.transitioningFrom=void 0,this.transitioningTo=void 0,this.mobileViewChange.emit(this.mobileView)}),e)}checkMobileView(){if("navigation"===this.mobileView&&!this.hasNavigation||"sidebar"===this.mobileView&&!this.hasSidebar)return void(this.mobileView="body");const i="sidebar"===this.mobileView||this.sidebarActive;i!==this.sidebarActive&&(i?this.showSidebar():this.hideSidebar())}updateNavigationStatus(){this.hasNavigation=Boolean(this.el.querySelector('[slot="navigation"]'))}updateSidebarStatus(){this.hasSidebar=Boolean(this.el.querySelector('[slot="sidebar"]'))}render(){const i=("body"===this.mobileView||this.transitioningTo)&&this.hasNavigation,t=Boolean(this.el.querySelector('[slot="app-bar-controls"]')),o=r("app-layout",`app-layout--mobile-view-${this.mobileView}`,`app-layout--transitioning-from-${this.transitioningFrom}`,`app-layout--transitioning-to-${this.transitioningTo}`,`app-layout--transition-style-${this.transitionStyle}`,{"app-layout--has-app-bar-controls":t,"app-layout--has-navigation":this.hasNavigation,"app-layout--has-sidebar":this.hasSidebar,"app-layout--sidebar-active":"sidebar"===this.mobileView||this.sidebarActive,"app-layout--sidebar-closing":this.sidebarClosing});return e(a,null,e("section",{"aria-labelledby":"app-name",class:o,role:"document",tabIndex:0},e("div",{class:"app-layout__grid"},e("header",{class:"app-layout__header"},e("span",{class:"app-layout__navigation-mobile-menu-button"},e("slot",{name:"navigation-mobile-menu-button"})),this.showNavigationBackButton&&e("span",{class:"app-layout__navigation-back-button"},e("swirl-button",{hideLabel:!0,icon:"<swirl-icon-arrow-back></swirl-icon-arrow-back>",label:this.navigationBackButtonLabel,onClick:this.onNavigationBackButtonClick})),e("swirl-heading",{as:"h1",class:"app-layout__app-name",headingId:"app-name",level:3,text:this.appName}),this.hasNavigation&&e("span",{class:"app-layout__navigation-controls"},e("slot",{name:"navigation-controls"}))),e("nav",{"aria-label":this.navigationLabel,class:"app-layout__navigation"},e("slot",{name:"navigation"})),e("section",{"aria-labelledby":"app-name",class:"app-layout__body"},e("header",{class:"app-layout__app-bar"},e("span",{class:"app-layout__app-bar-mobile-menu-button"},e("slot",{name:"app-bar-mobile-menu-button"})),i&&e("span",{class:"app-layout__back-to-navigation-button"},e("swirl-button",{hideLabel:!0,icon:"dialog"===this.transitionStyle?"<swirl-icon-close></swirl-icon-close>":"<swirl-icon-arrow-back></swirl-icon-arrow-back>",label:this.backToNavigationViewButtonLabel,onClick:this.onBackToNavigationViewButtonClick})),e("div",{class:"app-layout__app-bar-content"},e("slot",{name:"app-bar"})),e("div",{class:"app-layout__app-bar-controls"},e("slot",{name:"app-bar-controls"}))),e("div",{class:"app-layout__banner"},e("slot",{name:"banner"})),e("div",{class:"app-layout__content"},e("slot",{name:"content"}))),e("aside",{class:"app-layout__sidebar"},e("header",{class:"app-layout__sidebar-header"},e("swirl-button",{class:"app-layout__sidebar-close-button",hideLabel:!0,icon:"<swirl-icon-close></swirl-icon-close>",label:this.sidebarCloseButtonLabel,onClick:this.onSidebarCloseButtonClick}),e("swirl-heading",{as:"h3",class:"app-layout__sidebar-heading",headingId:"sidebar-heading",level:3,text:this.sidebarHeading})),e("div",{class:"app-layout__sidebar-content"},e("slot",{name:"sidebar"}))),this.ctaLabel&&e("span",{class:"app-layout__floating-cta"},e("swirl-button",{hideLabel:Boolean(this.ctaIcon),icon:this.ctaIcon,intent:"primary",label:this.ctaLabel,onClick:this.onCtaClick,variant:"floating"})))))}get el(){return o(this)}static get watchers(){return{mobileView:["watchMobileView"]}}};d.style=':host{position:relative;z-index:1;display:flex;width:100%;height:100%}:host *{box-sizing:border-box}.app-layout{display:flex;overflow:hidden;width:100%;height:100%;margin-right:auto;margin-left:auto}.app-layout__grid{position:relative;display:grid;width:100%;height:100%;grid-template-columns:100%;grid-template-rows:3.5625rem 1fr;grid-template-areas:"body"\n "body"}.app-layout:not(.app-layout--has-navigation) .app-layout__header,.app-layout:not(.app-layout--has-navigation) .app-layout__navigation{display:none}.app-layout:not(.app-layout--has-sidebar) .app-layout__sidebar{display:none}@media (max-width: 767px){.app-layout:not(.app-layout--mobile-view-body) .app-layout__body{display:none}}@media (max-width: 767px){.app-layout:not(.app-layout--mobile-view-sidebar) .app-layout__sidebar{display:none}}.app-layout--has-navigation .app-layout__grid{grid-template-columns:100%;grid-template-areas:"header"\n "navigation"}@media (min-width: 768px){.app-layout--has-navigation .app-layout__grid{grid-template-columns:min(50%, 25rem) 1fr;grid-template-areas:"header body"\n "navigation body"}}@media (min-width: 768px){.app-layout--has-navigation .app-layout__app-bar-mobile-menu-button{display:none}}@media (min-width: 768px){.app-layout--has-sidebar.app-layout--sidebar-active .app-layout__grid{grid-template-columns:1fr min(50%, 25rem);grid-template-areas:"body sidebar"\n "body sidebar"}}.app-layout--has-sidebar .app-layout__grid{grid-template-columns:100%;grid-template-areas:"body"\n "body"}@media (min-width: 1440px){.app-layout--has-navigation.app-layout--has-sidebar.app-layout--sidebar-active .app-layout__grid{animation:app-layout-sidebar-slide-in 0.3s;grid-template-columns:25rem 1fr 25rem;grid-template-areas:"header body sidebar"\n "navigation body sidebar"}}@media (min-width: 1440px){.app-layout--has-navigation.app-layout--has-sidebar.app-layout--sidebar-closing .app-layout__grid{animation:app-layout-sidebar-slide-out 0.3s}}@media (min-width: 768px){.app-layout--has-navigation.app-layout--has-sidebar .app-layout__grid{grid-template-columns:min(50%, 25rem) 1fr;grid-template-areas:"header body"\n "navigation body"}}@media (min-width: 992px){.app-layout--has-navigation.app-layout--has-sidebar .app-layout__grid{grid-template-columns:25rem 1fr;grid-template-areas:"header body"\n "navigation body"}}@media (min-width: 768px) and (max-width: 1439px){.app-layout--has-navigation.app-layout--has-sidebar .app-layout__sidebar{position:absolute;top:0;right:0;bottom:0;width:min(40%, 25rem);border-left:var(--s-border-width-default) solid var(--s-border-default);box-shadow:var(--s-shadow-level-3)}}@media (max-width: 767px){.app-layout--mobile-view-navigation .app-layout__grid{grid-template-areas:"header"\n "navigation"}.app-layout--mobile-view-navigation .app-layout__body,.app-layout--mobile-view-navigation .app-layout__sidebar{display:none}}@media (max-width: 767px){.app-layout--mobile-view-body .app-layout__grid{grid-template-areas:"body"\n "body"}.app-layout--mobile-view-body .app-layout__header,.app-layout--mobile-view-body .app-layout__navigation,.app-layout--mobile-view-body .app-layout__sidebar{display:none}}@media (max-width: 767px){.app-layout--mobile-view-sidebar .app-layout__grid{grid-template-areas:"sidebar"\n "sidebar"}.app-layout--mobile-view-sidebar .app-layout__header,.app-layout--mobile-view-sidebar .app-layout__navigation,.app-layout--mobile-view-sidebar .app-layout__body{display:none}}.app-layout--has-sidebar:not(.app-layout--sidebar-active) .app-layout__sidebar{display:none}@media (min-width: 768px){.app-layout--sidebar-closing .app-layout__sidebar{animation:app-layout-sidebar-overlay-slide-out 0.3s}}@media (min-width: 1440px){.app-layout--sidebar-closing .app-layout__sidebar{animation:none}}.app-layout--has-app-bar-controls .app-layout__app-bar-controls{display:block}.app-layout__header{z-index:1;display:flex;min-width:0;padding-top:var(--s-space-12);padding-right:var(--s-space-16);padding-bottom:var(--s-space-12);padding-left:var(--s-space-16);align-items:center;border-bottom:var(--s-border-width-default) solid var(--s-border-default);background-color:var(--s-background-default);grid-area:header;will-change:transform;gap:var(--s-space-8)}@media (min-width: 768px){.app-layout__header{border-right:var(--s-border-width-default) solid var(--s-border-default)}}.app-layout__app-name{min-width:0}.app-layout__app-name .heading{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.app-layout__app-bar-mobile-menu-button,.app-layout__navigation-mobile-menu-button{flex-shrink:0}@media (min-width: 992px){.app-layout__app-bar-mobile-menu-button,.app-layout__navigation-mobile-menu-button{display:none}}.app-layout__navigation-back-button{margin-left:calc(-1 * var(--s-space-4))}.app-layout__floating-cta{position:absolute;z-index:4;right:var(--s-space-16);bottom:var(--s-space-16)}.app-layout__navigation-controls{flex-shrink:0}.app-layout__navigation{z-index:1;overflow-y:auto;border-right:var(--s-border-width-default) solid var(--s-border-default);background-color:var(--s-background-default);grid-area:navigation;will-change:transform}.app-layout__body{z-index:2;display:grid;width:100%;height:100%;grid-area:body;grid-template-rows:minmax(3.5rem, auto) auto 1fr;grid-template-areas:"app-bar"\n "banner"\n "content";will-change:transform}.app-layout__app-bar{display:flex;min-width:0;align-items:center;border-bottom:var(--s-border-width-default) solid var(--s-border-default);background-color:var(--s-background-default);grid-area:app-bar;gap:var(--s-space-8);--swirl-tab-bar-border-width:0;--swirl-tab-bar-height:3.5rem}.app-layout__back-to-navigation-button{margin-left:calc(-1 * var(--s-space-4))}@media (min-width: 768px){.app-layout__back-to-navigation-button{display:none}}.app-layout__banner{grid-area:banner}.app-layout__app-bar-content{min-width:0;flex-grow:1}.app-layout__app-bar-controls{display:none;padding-right:var(--s-space-16)}.app-layout__content{overflow:auto;background-color:var(--s-background-default);grid-area:content}.app-layout__sidebar{z-index:3;display:grid;width:100%;height:100%;border-left:var(--s-border-width-default) solid var(--s-border-default);will-change:transform;grid-area:sidebar;grid-template-rows:3.5625rem 1fr;grid-template-areas:"sidebar-header"\n "sidebar-content"}@media (min-width: 768px){.app-layout__sidebar{animation:app-layout-slide-in 0.3s}}@media (min-width: 1440px){.app-layout__sidebar{width:25rem;animation:none}}.app-layout__sidebar-header{display:flex;min-width:0;padding-top:var(--s-space-12);padding-right:var(--s-space-16);padding-bottom:var(--s-space-12);padding-left:var(--s-space-16);align-items:center;border-bottom:var(--s-border-width-default) solid var(--s-border-default);background-color:var(--s-background-default);grid-area:sidebar-header;gap:var(--s-space-8)}@media (min-width: 992px){.app-layout__sidebar-header{padding-left:var(--s-space-16)}}.app-layout__sidebar-heading{min-width:0;flex-grow:1}.app-layout__sidebar-heading .heading{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.app-layout__sidebar-close-button{margin-left:calc(-1 * var(--s-space-4))}.app-layout__sidebar-content{overflow-y:auto;background-color:var(--s-background-default);grid-area:sidebar-content}@media (max-width: 767px){.app-layout:not(.app-layout--transition-none).app-layout--transitioning-to-body.app-layout--transitioning-from-navigation:not(.app-layout--mobile-view-body) .app-layout__grid,.app-layout:not(.app-layout--transition-none).app-layout--transitioning-to-navigation.app-layout--transitioning-from-body:not(.app-layout--mobile-view-navigation) .app-layout__grid{grid-template-columns:100%;grid-template-areas:"header"\n "navigation"}.app-layout:not(.app-layout--transition-none).app-layout--transitioning-to-body.app-layout--transitioning-from-navigation:not(.app-layout--mobile-view-body) .app-layout__body,.app-layout:not(.app-layout--transition-none).app-layout--transitioning-to-navigation.app-layout--transitioning-from-body:not(.app-layout--mobile-view-navigation) .app-layout__body{position:absolute;top:0;left:0;display:grid;width:100%;transform:translate3d(100%, 0, 0)}}@media (max-width: 767px){.app-layout:not(.app-layout--transition-none).app-layout--transitioning-to-navigation.app-layout--transitioning-from-body:not(.app-layout--mobile-view-navigation) .app-layout__header{display:flex}.app-layout:not(.app-layout--transition-none).app-layout--transitioning-to-navigation.app-layout--transitioning-from-body:not(.app-layout--mobile-view-navigation) .app-layout__navigation{display:block}}@media (max-width: 991px){.app-layout:not(.app-layout--transition-none).app-layout--transitioning-to-sidebar.app-layout--transitioning-from-body:not(.app-layout--mobile-view-sidebar) .app-layout__grid,.app-layout:not(.app-layout--transition-none).app-layout--transitioning-to-body.app-layout--transitioning-from-sidebar:not(.app-layout--mobile-view-body) .app-layout__grid{grid-template-columns:100%;grid-template-areas:"body"\n "body"}.app-layout:not(.app-layout--transition-none).app-layout--transitioning-to-sidebar.app-layout--transitioning-from-body:not(.app-layout--mobile-view-sidebar) .app-layout__sidebar,.app-layout:not(.app-layout--transition-none).app-layout--transitioning-to-body.app-layout--transitioning-from-sidebar:not(.app-layout--mobile-view-body) .app-layout__sidebar{position:absolute;top:0;left:0;display:grid;border-left:var(--s-border-width-default) solid var(--s-border-default)}}@media (max-width: 991px){.app-layout:not(.app-layout--transition-none).app-layout--transitioning-to-body.app-layout--transitioning-from-sidebar:not(.app-layout--mobile-view-body) .app-layout__body{display:grid}.app-layout:not(.app-layout--transition-none).app-layout--transitioning-to-body.app-layout--transitioning-from-sidebar:not(.app-layout--mobile-view-body) .app-layout__sidebar{display:grid}}@media (max-width: 767px){.app-layout--transition-style-slides.app-layout--transitioning-to-body.app-layout--transitioning-from-navigation:not(.app-layout--mobile-view-body) .app-layout__header,.app-layout--transition-style-slides.app-layout--transitioning-to-body.app-layout--transitioning-from-navigation:not(.app-layout--mobile-view-body) .app-layout__navigation,.app-layout--transition-style-slides.app-layout--transitioning-to-navigation.app-layout--transitioning-from-body:not(.app-layout--mobile-view-navigation) .app-layout__header,.app-layout--transition-style-slides.app-layout--transitioning-to-navigation.app-layout--transitioning-from-body:not(.app-layout--mobile-view-navigation) .app-layout__navigation{animation:app-layout-slide-out 0.4s}.app-layout--transition-style-slides.app-layout--transitioning-to-body.app-layout--transitioning-from-navigation:not(.app-layout--mobile-view-body) .app-layout__body,.app-layout--transition-style-slides.app-layout--transitioning-to-navigation.app-layout--transitioning-from-body:not(.app-layout--mobile-view-navigation) .app-layout__body{animation:app-layout-slide-in 0.4s}.app-layout--transition-style-slides.app-layout--transitioning-to-body.app-layout--transitioning-from-navigation:not(.app-layout--mobile-view-body) .app-layout__body:after,.app-layout--transition-style-slides.app-layout--transitioning-to-navigation.app-layout--transitioning-from-body:not(.app-layout--mobile-view-navigation) .app-layout__body:after{position:absolute;top:0;right:100%;bottom:0;display:block;width:100%;background-color:rgba(0, 0, 0, 0.3);content:"";animation:app-layout-fade-in 0.4s}}@media (max-width: 767px){.app-layout--transition-style-slides.app-layout--transitioning-to-navigation.app-layout--transitioning-from-body:not(.app-layout--mobile-view-navigation) .app-layout__header{animation-direction:reverse}.app-layout--transition-style-slides.app-layout--transitioning-to-navigation.app-layout--transitioning-from-body:not(.app-layout--mobile-view-navigation) .app-layout__navigation{animation-direction:reverse}.app-layout--transition-style-slides.app-layout--transitioning-to-navigation.app-layout--transitioning-from-body:not(.app-layout--mobile-view-navigation) .app-layout__body{animation-direction:reverse}.app-layout--transition-style-slides.app-layout--transitioning-to-navigation.app-layout--transitioning-from-body:not(.app-layout--mobile-view-navigation) .app-layout__body:after{animation-direction:reverse}}@media (max-width: 991px){.app-layout--transition-style-slides.app-layout--transitioning-to-sidebar.app-layout--transitioning-from-body:not(.app-layout--mobile-view-sidebar) .app-layout__body,.app-layout--transition-style-slides.app-layout--transitioning-to-body.app-layout--transitioning-from-sidebar:not(.app-layout--mobile-view-body) .app-layout__body{animation:app-layout-slide-out 0.4s}.app-layout--transition-style-slides.app-layout--transitioning-to-sidebar.app-layout--transitioning-from-body:not(.app-layout--mobile-view-sidebar) .app-layout__sidebar,.app-layout--transition-style-slides.app-layout--transitioning-to-body.app-layout--transitioning-from-sidebar:not(.app-layout--mobile-view-body) .app-layout__sidebar{animation:app-layout-slide-in 0.4s}.app-layout--transition-style-slides.app-layout--transitioning-to-sidebar.app-layout--transitioning-from-body:not(.app-layout--mobile-view-sidebar) .app-layout__sidebar:after,.app-layout--transition-style-slides.app-layout--transitioning-to-body.app-layout--transitioning-from-sidebar:not(.app-layout--mobile-view-body) .app-layout__sidebar:after{position:absolute;top:0;right:100%;bottom:0;display:block;width:100%;background-color:rgba(0, 0, 0, 0.3);content:"";animation:app-layout-fade-in 0.4s}}@media (max-width: 991px){.app-layout--transition-style-slides.app-layout--transitioning-to-body.app-layout--transitioning-from-sidebar:not(.app-layout--mobile-view-body) .app-layout__body{animation-direction:reverse}.app-layout--transition-style-slides.app-layout--transitioning-to-body.app-layout--transitioning-from-sidebar:not(.app-layout--mobile-view-body) .app-layout__sidebar{animation-direction:reverse}.app-layout--transition-style-slides.app-layout--transitioning-to-body.app-layout--transitioning-from-sidebar:not(.app-layout--mobile-view-body) .app-layout__sidebar:after{animation-direction:reverse}}@media (max-width: 767px){.app-layout--transition-style-dialog.app-layout--transitioning-to-body.app-layout--transitioning-from-navigation:not(.app-layout--mobile-view-body) .app-layout__body,.app-layout--transition-style-dialog.app-layout--transitioning-to-navigation.app-layout--transitioning-from-body:not(.app-layout--mobile-view-navigation) .app-layout__body{animation:app-layout-scale-in 0.3s}}@media (max-width: 767px){.app-layout--transition-style-dialog.app-layout--transitioning-to-navigation.app-layout--transitioning-from-body:not(.app-layout--mobile-view-navigation) .app-layout__header{animation-direction:reverse}.app-layout--transition-style-dialog.app-layout--transitioning-to-navigation.app-layout--transitioning-from-body:not(.app-layout--mobile-view-navigation) .app-layout__navigation{animation-direction:reverse}.app-layout--transition-style-dialog.app-layout--transitioning-to-navigation.app-layout--transitioning-from-body:not(.app-layout--mobile-view-navigation) .app-layout__body{animation-direction:reverse}}@media (max-width: 991px){.app-layout--transition-style-dialog.app-layout--transitioning-to-sidebar.app-layout--transitioning-from-body:not(.app-layout--mobile-view-sidebar) .app-layout__sidebar,.app-layout--transition-style-dialog.app-layout--transitioning-to-body.app-layout--transitioning-from-sidebar:not(.app-layout--mobile-view-body) .app-layout__sidebar{animation:app-layout-scale-in 0.3s}}@media (max-width: 991px){.app-layout--transition-style-dialog.app-layout--transitioning-to-body.app-layout--transitioning-from-sidebar:not(.app-layout--mobile-view-body) .app-layout__body{animation-direction:reverse}.app-layout--transition-style-dialog.app-layout--transitioning-to-body.app-layout--transitioning-from-sidebar:not(.app-layout--mobile-view-body) .app-layout__sidebar{animation-direction:reverse}}@keyframes app-layout-sidebar-overlay-slide-out{0%{transform:translate3d(0, 0, 0)}100%{transform:translate3d(100%, 0, 0)}}@keyframes app-layout-slide-in{0%{transform:translate3d(100%, 0, 0)}100%{transform:translate3d(0, 0, 0)}}@keyframes app-layout-slide-out{0%{transform:translate3d(0, 0, 0)}100%{transform:translate3d(-20%, 0, 0)}}@keyframes app-layout-fade-in{0%{opacity:0}100%{opacity:1}}@keyframes app-layout-scale-in{from{transform:scale(0);box-shadow:0 0 0 100rem rgba(0, 0, 0, 0)}to{transform:scale(1);box-shadow:0 0 0 100rem rgba(0, 0, 0, 0.25)}}@keyframes app-layout-sidebar-slide-in{from{overflow:hidden;grid-template-columns:25rem 1fr 0}to{overflow:hidden;grid-template-columns:25rem 1fr 25rem}}@keyframes app-layout-sidebar-slide-out{from{overflow:hidden;grid-template-columns:25rem 1fr 25rem}to{overflow:hidden;grid-template-columns:25rem 1fr 0}}';const c=class{constructor(t){i(this,t),this.bordered=void 0,this.centerBlock=void 0,this.centerInline=void 0,this.cover=void 0,this.maxWidth=void 0,this.overflow="visible",this.padding="0",this.paddingBlockEnd=void 0,this.paddingBlockStart=void 0,this.paddingInlineEnd=void 0,this.paddingInlineStart=void 0}render(){const i={alignItems:this.centerBlock?"center":void 0,display:this.centerBlock||this.centerInline?"flex":void 0,height:this.cover?"100%":void 0,justifyContent:this.centerInline?"center":void 0,overflow:this.overflow,padding:`var(--s-space-${this.padding})`,paddingBlockEnd:Boolean(this.paddingBlockEnd)?`var(--s-space-${this.paddingBlockEnd})`:void 0,paddingBlockStart:Boolean(this.paddingBlockStart)?`var(--s-space-${this.paddingBlockStart})`:void 0,paddingInlineEnd:Boolean(this.paddingInlineEnd)?`var(--s-space-${this.paddingInlineEnd})`:void 0,paddingInlineStart:Boolean(this.paddingInlineStart)?`var(--s-space-${this.paddingInlineStart})`:void 0,position:Boolean(this.overflow)?"relative":"",maxWidth:this.maxWidth,width:this.cover?"100%":void 0},t=r("box",{"box--bordered":this.bordered,"box--cover":this.cover});return e(a,{class:t,style:i},e("slot",null))}};c.style=":host{display:block;width:100%}:host(.box--bordered){border:var(--s-border-width-default) solid var(--s-border-default)}:host(.box--cover){width:100%;height:100%}:host *{box-sizing:border-box}";const u=class{constructor(t){i(this,t),this.heading=void 0,this.illustration=void 0}render(){return e(a,null,e("div",{class:"empty-state"},this.illustration&&e("img",{alt:"",class:"empty-state__illustration",src:this.illustration}),e("div",{class:"empty-state__body"},this.heading&&e("swirl-heading",{align:"center",as:"p",level:4,text:this.heading}),e("div",{class:"empty-state__content"},e("swirl-text",{align:"center",color:"subdued"},e("slot",null))))))}};u.style=":host{display:block}:host *{box-sizing:border-box}.empty-state{display:flex;max-width:28rem;align-items:center;flex-direction:column;gap:var(--s-space-16)}.empty-state__illustration{max-width:16rem}.empty-state__body{display:flex;align-items:center;flex-direction:column;gap:var(--s-space-8)}";const h=class{constructor(t){i(this,t),this.size=24}render(){const i=20===this.size?24:this.size,t=r("swirl-icon",`swirl-icon--size-${this.size}`);return e("svg",{class:t,fill:"none",height:this.size,part:"icon",viewBox:`0 0 ${i} ${i}`,width:this.size,xmlns:"http://www.w3.org/2000/svg"},16===this.size&&e(s,null,e("path",{d:"M3.99999 1.33334C3.26666 1.33334 2.67332 1.93334 2.67332 2.66668L2.66666 13.3333C2.66666 14.0667 3.25999 14.6667 3.99332 14.6667H12C12.7333 14.6667 13.3333 14.0667 13.3333 13.3333V5.88668C13.3333 5.53334 13.1933 5.19334 12.94 4.94668L9.71999 1.72668C9.47332 1.47334 9.13332 1.33334 8.77999 1.33334H3.99999ZM8.66666 5.33334V2.33334L12.3333 6.00001H9.33332C8.96666 6.00001 8.66666 5.70001 8.66666 5.33334Z",fill:"currentColor"})),(20===this.size||24===this.size)&&e(s,null,e("path",{d:"M6 2C4.9 2 4.01 2.9 4.01 4L4 20C4 21.1 4.89 22 5.99 22H18C19.1 22 20 21.1 20 20V8.83C20 8.3 19.79 7.79 19.41 7.42L14.58 2.59C14.21 2.21 13.7 2 13.17 2H6ZM13 8V3.5L18.5 9H14C13.45 9 13 8.55 13 8Z",fill:"currentColor"})),28===this.size&&e(s,null,e("path",{d:"M6.99999 2.33334C5.71666 2.33334 4.67832 3.38334 4.67832 4.66668L4.66666 23.3333C4.66666 24.6167 5.70499 25.6667 6.98832 25.6667H21C22.2833 25.6667 23.3333 24.6167 23.3333 23.3333V10.3017C23.3333 9.68334 23.0883 9.08834 22.645 8.65668L17.01 3.02168C16.5783 2.57834 15.9833 2.33334 15.365 2.33334H6.99999ZM15.1667 9.33334V4.08334L21.5833 10.5H16.3333C15.6917 10.5 15.1667 9.97501 15.1667 9.33334Z",fill:"currentColor"})))}};h.style=":host{display:inline-flex}";const m=class{constructor(t){i(this,t),this.size=24}render(){const i=20===this.size?24:this.size,t=r("swirl-icon",`swirl-icon--size-${this.size}`);return e("svg",{class:t,fill:"none",height:this.size,part:"icon",viewBox:`0 0 ${i} ${i}`,width:this.size,xmlns:"http://www.w3.org/2000/svg"},16===this.size&&e(s,null,e("path",{d:"M13.3333 3.99996H8.00001L7.06001 3.05996C6.80668 2.80663 6.46668 2.66663 6.11334 2.66663H2.66668C1.93334 2.66663 1.34001 3.26663 1.34001 3.99996L1.33334 12C1.33334 12.7333 1.93334 13.3333 2.66668 13.3333H13.3333C14.0667 13.3333 14.6667 12.7333 14.6667 12V5.33329C14.6667 4.59996 14.0667 3.99996 13.3333 3.99996ZM10 5.99996C10.7333 5.99996 11.3333 6.59996 11.3333 7.33329C11.3333 8.06663 10.7333 8.66663 10 8.66663C9.26668 8.66663 8.66668 8.06663 8.66668 7.33329C8.66668 6.59996 9.26668 5.99996 10 5.99996ZM12.6667 11.3333H7.33334V10.6666C7.33334 9.77996 9.11334 9.33329 10 9.33329C10.8867 9.33329 12.6667 9.77996 12.6667 10.6666V11.3333Z",fill:"currentColor"})),(20===this.size||24===this.size)&&e(s,null,e("path",{d:"M20 6H12L10.59 4.59C10.21 4.21 9.7 4 9.17 4H4C2.9 4 2.01 4.9 2.01 6L2 18C2 19.1 2.9 20 4 20H20C21.1 20 22 19.1 22 18V8C22 6.9 21.1 6 20 6ZM15 9C16.1 9 17 9.9 17 11C17 12.1 16.1 13 15 13C13.9 13 13 12.1 13 11C13 9.9 13.9 9 15 9ZM19 17H11V16C11 14.67 13.67 14 15 14C16.33 14 19 14.67 19 16V17Z",fill:"currentColor"})),28===this.size&&e(s,null,e("path",{d:"M23.3333 6.99996H14L12.355 5.35496C11.9117 4.91163 11.3167 4.66663 10.6983 4.66663H4.66668C3.38334 4.66663 2.34501 5.71663 2.34501 6.99996L2.33334 21C2.33334 22.2833 3.38334 23.3333 4.66668 23.3333H23.3333C24.6167 23.3333 25.6667 22.2833 25.6667 21V9.33329C25.6667 8.04996 24.6167 6.99996 23.3333 6.99996ZM17.5 10.5C18.7833 10.5 19.8333 11.55 19.8333 12.8333C19.8333 14.1166 18.7833 15.1666 17.5 15.1666C16.2167 15.1666 15.1667 14.1166 15.1667 12.8333C15.1667 11.55 16.2167 10.5 17.5 10.5ZM22.1667 19.8333H12.8333V18.6666C12.8333 17.115 15.9483 16.3333 17.5 16.3333C19.0517 16.3333 22.1667 17.115 22.1667 18.6666V19.8333Z",fill:"currentColor"})))}};m.style=":host{display:inline-flex}";const b=class{constructor(e){i(this,e),this.itemDrop=t(this,"itemDrop",7),this.focusedIndex=0,this.toggleDrag=i=>{const t=i.detail;Boolean(this.dragging)?this.stopDrag(t):this.startDrag(t)},this.startDrag=i=>{this.dragging=i,this.draggingStartIndex=this.getItemIndex(this.dragging),i.setAttribute("dragging","true");const t=this.getItemIndex(this.dragging);this.focusItemAtIndex(t),this.assistiveText=this.assistiveTextItemGrabbed},this.stopDrag=i=>{const t=this.getItemIndex(this.dragging);this.dragging=void 0,i.removeAttribute("dragging"),this.assistiveText=`${this.assistiveTextItemMoved} ${t+1}`,this.itemDrop.emit({item:i,oldIndex:this.draggingStartIndex,newIndex:t}),this.draggingStartIndex=void 0},this.onKeyDown=i=>{if("ArrowDown"===i.code)i.preventDefault(),Boolean(this.dragging)?this.moveDraggedItemDown():this.focusItemAtIndex((this.focusedIndex+1)%this.items.length);else if("ArrowUp"===i.code)i.preventDefault(),Boolean(this.dragging)?this.moveDraggedItemUp():this.focusItemAtIndex(0===this.focusedIndex?this.items.length-1:this.focusedIndex-1);else if("Space"===i.code||"Enter"===i.code){const t=i.composedPath()[0];Boolean(this.dragging)&&!t?.classList.contains("resource-list-item__drag-handle")&&(i.preventDefault(),this.stopDrag(this.dragging))}else"Home"===i.code?(i.preventDefault(),this.focusItemAtIndex(0)):"End"===i.code&&(i.preventDefault(),this.focusItemAtIndex(this.items.length-1))},this.allowDrag=void 0,this.assistiveTextItemGrabbed="Item grabbed. Use arrow keys to move item up or down. Use spacebar to save position.",this.assistiveTextItemMoving="Current position:",this.assistiveTextItemMoved="Item moved. New position:",this.label=void 0,this.assistiveText=void 0}componentDidLoad(){this.observeSlotChanges(),this.collectItems(),this.setItemAllowDragState(),this.setupDragDrop()}disconnectedCallback(){this.sortable?.destroy(),this.observer?.disconnect()}observeSlotChanges(){this.observer=new MutationObserver((()=>{this.collectItems(),this.setItemAllowDragState(),this.setupDragDrop()})),this.observer.observe(this.el,{childList:!0,characterData:!0,subtree:!0})}watchAllowDrag(){this.setItemAllowDragState(),this.setupDragDrop()}collectItems(){this.items=Array.from(this.el.querySelectorAll("swirl-resource-list-item, swirl-resource-list-file-item")).filter((i=>i.isConnected)),this.removeItemsFromTabOrder(),this.enableItemFocus(this.items[this.focusedIndex])}getItemIndex(i){return this.items.map((i=>i)).findIndex((t=>t===i))}removeItemsFromTabOrder(){this.items.forEach((i=>{const t=i?.querySelector(".resource-list-item__content, .resource-list-file-item"),e=i?.querySelector(".resource-list-item__drag-handle");t?.setAttribute("tabIndex","-1"),e?.setAttribute("tabIndex","-1")}))}setItemAllowDragState(){this.items.forEach(this.allowDrag?i=>{i.setAttribute("allow-drag","true"),i.addEventListener("toggleDrag",this.toggleDrag)}:i=>{i.removeAttribute("allow-drag"),i.removeEventListener("toggleDrag",this.toggleDrag)})}setupDragDrop(){Boolean(this.sortable)&&this.sortable.destroy(),this.allowDrag&&(this.sortable=p.create(this.gridEl,{animation:150,draggable:"swirl-resource-list-item",handle:".resource-list-item__drag-handle",onEnd:i=>{this.itemDrop.emit({item:i.item,oldIndex:i.oldDraggableIndex,newIndex:i.newDraggableIndex})}}))}enableItemFocus(i,t){if(!Boolean(i))return;const e=i.querySelector(".resource-list-item__content, .resource-list-file-item"),a=i.querySelector(".resource-list-item__drag-handle");Boolean(a)&&a.setAttribute("tabIndex","0"),Boolean(e)&&(e.setAttribute("tabIndex","0"),t&&e.focus())}focusItemAtIndex(i){this.removeItemsFromTabOrder();const t=this.items[i];Boolean(t)&&t.isConnected&&(this.enableItemFocus(t,!0),this.focusedIndex=i)}moveDraggedItemDown(){const i=this.dragging.nextElementSibling;Boolean(i)&&(i.after(this.dragging),this.collectItems(),this.focusItemAtIndex(this.getItemIndex(this.dragging)),this.assistiveText=`${this.assistiveTextItemMoving} ${this.getItemIndex(this.dragging)+1}`)}moveDraggedItemUp(){const i=this.dragging.previousElementSibling;Boolean(i)&&(i.before(this.dragging),this.collectItems(),this.focusItemAtIndex(this.getItemIndex(this.dragging)),this.assistiveText=`${this.assistiveTextItemMoving} ${this.getItemIndex(this.dragging)+1}`)}render(){return e(a,{onKeyDown:this.onKeyDown},e("swirl-visually-hidden",{role:"alert"},this.assistiveText),e("swirl-stack",{"aria-label":this.label,class:"resource-list",ref:i=>this.gridEl=i,role:"grid"},e("slot",null)))}get el(){return o(this)}static get watchers(){return{allowDrag:["watchAllowDrag"]}}};var y;b.style=".sc-swirl-resource-list-h{display:block;width:100%}.sc-swirl-resource-list-h *.sc-swirl-resource-list{box-sizing:border-box}";var g=new Uint8Array(16);function v(){if(!y&&!(y="undefined"!=typeof crypto&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto)||"undefined"!=typeof msCrypto&&"function"==typeof msCrypto.getRandomValues&&msCrypto.getRandomValues.bind(msCrypto)))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return y(g)}const _=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;for(var w=[],f=0;f<256;++f)w.push((f+256).toString(16).substr(1));function x(i,t,e){var a=(i=i||{}).random||(i.rng||v)();if(a[6]=15&a[6]|64,a[8]=63&a[8]|128,t){e=e||0;for(var o=0;o<16;++o)t[e+o]=a[o];return t}return function(i){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,e=(w[i[t+0]]+w[i[t+1]]+w[i[t+2]]+w[i[t+3]]+"-"+w[i[t+4]]+w[i[t+5]]+"-"+w[i[t+6]]+w[i[t+7]]+"-"+w[i[t+8]]+w[i[t+9]]+"-"+w[i[t+10]]+w[i[t+11]]+w[i[t+12]]+w[i[t+13]]+w[i[t+14]]+w[i[t+15]]).toLowerCase();if(!function(i){return"string"==typeof i&&_.test(i)}(e))throw TypeError("Stringified UUID is invalid");return e}(a)}const k=class{constructor(e){i(this,e),this.toggleDrag=t(this,"toggleDrag",7),this.valueChange=t(this,"valueChange",7),this.desktopMediaQuery=n(),this.id=x(),this.desktopMediaQueryHandler=i=>{this.forceIconProps(i.matches),this.updateIconSize(i.matches)},this.onClick=()=>{this.selectable&&(this.checked=!this.checked,this.valueChange.emit(this.checked))},this.onMenuTriggerClick=i=>{this.disabled&&!Boolean(this.href)&&i.stopPropagation()},this.onDragHandleKeyDown=i=>{"Space"!==i.code&&"Enter"!==i.code||(i.preventDefault(),this.toggleDrag.emit(this.el))},this.active=void 0,this.allowDrag=void 0,this.checked=!1,this.description=void 0,this.disabled=void 0,this.dragging=void 0,this.dragHandleDescription="Press spacebar to toggle grab",this.dragHandleLabel="Move item",this.hideDivider=void 0,this.href=void 0,this.interactive=!0,this.label=void 0,this.labelWeight="medium",this.menuTriggerId=void 0,this.menuTriggerLabel="Options",this.meta=void 0,this.selectable=void 0,this.value=void 0,this.hasMedia=!1,this.iconSize=24}async componentWillLoad(){this.updateMediaState()}componentDidLoad(){this.forceIconProps(this.desktopMediaQuery.matches),this.updateIconSize(this.desktopMediaQuery.matches),this.desktopMediaQuery.onchange=this.desktopMediaQueryHandler,Boolean(this.menuTriggerId)&&console.warn('[Swirl] The "menu-trigger-id" prop of swirl-resource-list-item is deprecated and will be removed with the next major release. Please use the "control" slot to add a menu button instead. https://swirl-storybook.flip-app.dev/?path=/docs/components-swirlresourcelistitem--docs')}disconnectedCallback(){this.desktopMediaQuery.removeEventListener?.("change",this.desktopMediaQueryHandler)}forceIconProps(i){const t=this.iconEl?.children[0];t?.setAttribute("size",i?"20":"24")}updateIconSize(i){this.iconSize=i?20:24}updateMediaState(){const i=this.el.querySelector('[slot="media"]'),t=Boolean(i);t!==this.hasMedia&&(this.hasMedia=t)}render(){const i=this.interactive||this.selectable?Boolean(this.href)&&!this.selectable?"a":"button":"div",t=this.disabled&&!Boolean(this.href),o=Boolean(this.el.querySelector("[slot='badges']")),s=Boolean(this.menuTriggerId)||this.el.querySelector("[slot='control']"),l=this.interactive&&Boolean(this.href)?this.href:void 0,n=Boolean(this.meta)||o,p=Boolean(this.menuTriggerId)&&!Boolean(this.meta)&&!this.selectable,d=(Boolean(this.meta)||o)&&!this.selectable,c=this.selectable?String(this.checked):void 0,u=this.interactive&&this.selectable?"checkbox":void 0,h=r("resource-list-item",`resource-list-item--label-weight-${this.labelWeight}`,{"resource-list-item--active":this.active,"resource-list-item--checked":this.checked,"resource-list-item--disabled":this.disabled,"resource-list-item--draggable":this.allowDrag,"resource-list-item--dragging":this.dragging,"resource-list-item--has-menu":s,"resource-list-item--hide-divider":this.hideDivider,"resource-list-item--interactive":this.interactive||this.selectable,"resource-list-item--selectable":this.selectable,"resource-list-item--show-control-on-focus":n,"resource-list-item--show-meta":d});return e(a,{role:"row"},e("div",{class:h,role:"gridcell"},e(i,{"aria-checked":c,"aria-disabled":t?"true":void 0,"aria-labelledby":this.id,class:"resource-list-item__content",href:l,disabled:t,onClick:this.onClick,part:"resource-list-item__content",role:u,tabIndex:0},this.hasMedia&&e("span",{class:"resource-list-item__media"},e("slot",{name:"media"})),e("span",{class:"resource-list-item__label-container"},e("span",{class:"resource-list-item__label",id:this.id,innerHTML:this.label}),this.description&&e("span",{class:"resource-list-item__description"},this.description)),d&&e("span",{class:"resource-list-item__meta"},e("span",{class:"resource-list-item__meta-text"},this.meta),e("span",{class:"resource-list-item__badges"},e("slot",{name:"badges"})))),this.selectable&&e("span",{"aria-hidden":"true",class:"resource-list-item__checkbox"},e("span",{class:"resource-list-item__checkbox-icon"},this.checked&&e("swirl-icon-check-strong",null))),e("span",{class:"resource-list-item__control"},e("slot",{name:"control"})),p&&e("swirl-popover-trigger",{popover:this.menuTriggerId},e("swirl-button",{"aria-disabled":t?"true":void 0,class:"resource-list-item__menu-trigger",disabled:t,hideLabel:!0,icon:"<swirl-icon-more-horizontal></swirl-icon-more-horizontal>",intent:"primary",label:this.menuTriggerLabel,onClick:this.onMenuTriggerClick}))),this.allowDrag&&e("button",{"aria-describedby":this.dragHandleDescription,"aria-label":`${this.dragHandleLabel} "${this.label}"`,class:"resource-list-item__drag-handle",onKeyDown:this.onDragHandleKeyDown,type:"button"},e("swirl-icon-drag-handle",{size:this.iconSize})))}get el(){return o(this)}};k.style='.sc-swirl-resource-list-item-h{position:relative;display:block;width:100%}.sc-swirl-resource-list-item-h *.sc-swirl-resource-list-item{box-sizing:border-box}.resource-list-item.sc-swirl-resource-list-item{position:relative;width:100%}.resource-list-item.sc-swirl-resource-list-item:not(.resource-list-item--show-meta){display:flex;align-items:center}.resource-list-item.sc-swirl-resource-list-item:not(.resource-list-item--show-meta) .resource-list-item__control.sc-swirl-resource-list-item{position:relative;top:auto;right:auto;transform:none}.resource-list-item--interactive.sc-swirl-resource-list-item:hover{--swirl-ghost-button-background-default:var(--s-background-hovered)}.resource-list-item--interactive.sc-swirl-resource-list-item .resource-list-item__content.sc-swirl-resource-list-item{cursor:pointer}.resource-list-item--interactive.sc-swirl-resource-list-item .resource-list-item__content.sc-swirl-resource-list-item:disabled{cursor:default}.resource-list-item--interactive.sc-swirl-resource-list-item .resource-list-item__content.sc-swirl-resource-list-item:hover:not(:disabled),.resource-list-item--interactive.sc-swirl-resource-list-item .resource-list-item__content.sc-swirl-resource-list-item:focus:not(:disabled){background-color:var(--swirl-resource-list-item-background-hovered)}.resource-list-item--interactive.sc-swirl-resource-list-item .resource-list-item__content.sc-swirl-resource-list-item:hover:not(:disabled) .resource-list-item__media.sc-swirl-resource-list-item,.resource-list-item--interactive.sc-swirl-resource-list-item .resource-list-item__content.sc-swirl-resource-list-item:hover:not(:disabled) .resource-list-item__meta.sc-swirl-resource-list-item,.resource-list-item--interactive.sc-swirl-resource-list-item .resource-list-item__content.sc-swirl-resource-list-item:focus:not(:disabled) .resource-list-item__media.sc-swirl-resource-list-item,.resource-list-item--interactive.sc-swirl-resource-list-item .resource-list-item__content.sc-swirl-resource-list-item:focus:not(:disabled) .resource-list-item__meta.sc-swirl-resource-list-item{--swirl-avatar-background-color:var(--s-surface-raised-hovered);--swirl-avatar-group-border-color:var(--s-background-hovered);--swirl-badge-border-color:var(--s-background-hovered)}.resource-list-item--interactive.sc-swirl-resource-list-item .resource-list-item__content.sc-swirl-resource-list-item:active:not(:disabled){background-color:var(--swirl-resource-list-item-background-pressed)}.resource-list-item--interactive.sc-swirl-resource-list-item .resource-list-item__content.sc-swirl-resource-list-item:active:not(:disabled) .resource-list-item__media.sc-swirl-resource-list-item,.resource-list-item--interactive.sc-swirl-resource-list-item .resource-list-item__content.sc-swirl-resource-list-item:active:not(:disabled) .resource-list-item__meta.sc-swirl-resource-list-item{--swirl-avatar-group-border-color:var(--s-background-pressed);--swirl-badge-border-color:var(--s-background-pressed)}.resource-list-item--active.sc-swirl-resource-list-item .resource-list-item__content.sc-swirl-resource-list-item{--swirl-badge-border-color:var(\n --swirl-resource-list-item-background-hovered\n );background-color:var(--swirl-resource-list-item-background-hovered)}.resource-list-item--checked.sc-swirl-resource-list-item .resource-list-item__checkbox.sc-swirl-resource-list-item{border-color:var(--s-icon-highlight);color:var(--s-text-on-status);background-color:var(--s-icon-highlight)}@media (min-width: 768px){.resource-list-item--selectable.sc-swirl-resource-list-item .resource-list-item__content.sc-swirl-resource-list-item{padding-left:calc(var(--s-space-16) + 1.5rem + var(--s-space-12))}}.resource-list-item--selectable.sc-swirl-resource-list-item .resource-list-item__label-container.sc-swirl-resource-list-item{padding-right:calc(var(--s-space-16) + 1.5rem + var(--s-space-12))}@media (min-width: 768px){.resource-list-item--selectable.sc-swirl-resource-list-item .resource-list-item__label-container.sc-swirl-resource-list-item{padding-right:var(--s-space-16)}}.resource-list-item--hide-divider.sc-swirl-resource-list-item .resource-list-item__label-container.sc-swirl-resource-list-item:after{display:none}.resource-list-item--label-weight-medium.sc-swirl-resource-list-item{font-weight:var(--s-font-weight-medium)}.resource-list-item--show-control-on-focus.sc-swirl-resource-list-item:hover,.resource-list-item--show-control-on-focus.sc-swirl-resource-list-item:focus,.resource-list-item--show-control-on-focus.sc-swirl-resource-list-item:focus-within{--swirl-flat-button-background-default:var(--s-background-default);--swirl-flat-button-background-disabled:var(--s-background-disabled);--swirl-flat-button-background-hovered:var(--s-background-hovered);--swirl-flat-button-background-pressed:var(--s-background-pressed)}.resource-list-item--show-control-on-focus.sc-swirl-resource-list-item:hover .resource-list-item__control.sc-swirl-resource-list-item,.resource-list-item--show-control-on-focus.sc-swirl-resource-list-item:focus .resource-list-item__control.sc-swirl-resource-list-item,.resource-list-item--show-control-on-focus.sc-swirl-resource-list-item:focus-within .resource-list-item__control.sc-swirl-resource-list-item{pointer-events:auto;opacity:1}.resource-list-item--show-control-on-focus.sc-swirl-resource-list-item:hover .resource-list-item__meta.sc-swirl-resource-list-item,.resource-list-item--show-control-on-focus.sc-swirl-resource-list-item:focus .resource-list-item__meta.sc-swirl-resource-list-item,.resource-list-item--show-control-on-focus.sc-swirl-resource-list-item:focus-within .resource-list-item__meta.sc-swirl-resource-list-item{pointer-events:none;opacity:0}.resource-list-item--show-control-on-focus.sc-swirl-resource-list-item .resource-list-item__control.sc-swirl-resource-list-item{pointer-events:none;opacity:0}.resource-list-item--draggable.sc-swirl-resource-list-item .resource-list-item__content.sc-swirl-resource-list-item{padding-left:calc(var(--s-space-16) * 2 + 1.5rem)}@media (min-width: 992px) and (max-width: 1439px) and (hover: hover),(min-width: 1440px){.resource-list-item--draggable.sc-swirl-resource-list-item .resource-list-item__content.sc-swirl-resource-list-item{padding-left:calc(var(--s-space-16) * 2 + 1rem)}}.resource-list-item--dragging.sc-swirl-resource-list-item{z-index:1;border-radius:var(--s-border-radius-s);background-color:var(--s-surface-overlay-pressed);box-shadow:0 0.0625rem 0.125rem rgba(25, 26, 28, 0.08),\n 0 0.25rem 2rem rgba(25, 26, 28, 0.16)}.resource-list-item--dragging.sc-swirl-resource-list-item:hover:not(.resource-list-item--disabled){background-color:var(--s-surface-overlay-pressed)}.resource-list-item--disabled.resource-list-item--checked.sc-swirl-resource-list-item .resource-list-item__checkbox.sc-swirl-resource-list-item{border-color:var(--s-icon-disabled);background-color:var(--s-icon-disabled)}.resource-list-item--disabled.sc-swirl-resource-list-item .resource-list-item__checkbox.sc-swirl-resource-list-item{border-color:var(--s-icon-disabled);background-color:transparent}.resource-list-item--disabled.sc-swirl-resource-list-item .resource-list-item__checkbox-icon.sc-swirl-resource-list-item{color:var(--s-text-on-status)}.resource-list-item__content.sc-swirl-resource-list-item{--swirl-avatar-group-border-color:var(--s-background-default);--swirl-badge-border-color:var(--s-background-default);display:flex;width:100%;min-width:0;margin:0;padding-top:var(--s-space-12);padding-right:0;padding-bottom:var(--s-space-12);padding-left:var(--s-space-16);align-items:center;border:none;color:var(--s-text-default);background-color:var(--swirl-resource-list-item-background-default);font:inherit;line-height:var(--s-line-height-base);text-align:left;text-decoration:none;gap:var(--s-space-12)}.resource-list-item__content.sc-swirl-resource-list-item:focus{outline:none}.resource-list-item__content.sc-swirl-resource-list-item:focus-visible{background-color:var(--s-background-hovered)}.resource-list-item__content.sc-swirl-resource-list-item:focus-visible .resource-list-item__media.sc-swirl-resource-list-item{--swirl-avatar-group-border-color:var(--s-background-hovered);--swirl-badge-border-color:var(--s-background-hovered)}.resource-list-item__content.sc-swirl-resource-list-item:disabled{color:var(--s-text-disabled);cursor:default}.resource-list-item__content.sc-swirl-resource-list-item:disabled .resource-list-item__description.sc-swirl-resource-list-item{color:var(--s-text-disabled)}@media (min-width: 992px) and (max-width: 1439px) and (hover: hover),(min-width: 1440px){.resource-list-item__content.sc-swirl-resource-list-item{padding:var(--s-space-12);font-size:var(--s-font-size-sm);line-height:var(--s-line-height-sm)}}.resource-list-item__media.sc-swirl-resource-list-item{display:inline-flex}.resource-list-item__label-container.sc-swirl-resource-list-item{position:relative;display:flex;min-width:0;min-height:2.875rem;padding-right:var(--s-space-16);flex-grow:1;justify-content:center;flex-direction:column}.resource-list-item__label-container.sc-swirl-resource-list-item:after{position:absolute;right:0;bottom:calc(-1 * var(--s-space-12));left:0;height:0.0625rem;background-color:var(--s-border-default);content:""}.resource-list-item__label.sc-swirl-resource-list-item{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.resource-list-item__label.sc-swirl-resource-list-item b.sc-swirl-resource-list-item,.resource-list-item__label.sc-swirl-resource-list-item strong.sc-swirl-resource-list-item{font-weight:var(--s-font-weight-semibold)}.resource-list-item__description.sc-swirl-resource-list-item{overflow:hidden;margin-top:var(--s-space-2);color:var(--s-text-subdued);font-size:var(--s-font-size-sm);line-height:var(--s-line-height-sm);white-space:nowrap;text-overflow:ellipsis}.resource-list-item__menu-trigger.sc-swirl-resource-list-item{position:absolute;top:50%;right:var(--s-space-16);transform:translateY(-50%)}.resource-list-item__control.sc-swirl-resource-list-item{position:absolute;top:50%;right:var(--s-space-16);transform:translateY(-50%)}.resource-list-item__checkbox.sc-swirl-resource-list-item{position:absolute;top:50%;right:var(--s-space-16);display:flex;width:1.125rem;height:1.125rem;justify-content:center;align-items:center;border:0.125rem solid var(--s-icon-default);border-radius:var(--s-border-radius-s);transform:translateY(-50%);pointer-events:none}@media (min-width: 768px){.resource-list-item__checkbox.sc-swirl-resource-list-item{right:auto;left:calc(var(--s-space-16) - var(--s-space-2))}}.resource-list-item__checkbox-icon.sc-swirl-resource-list-item{display:inline-flex;width:1.0625rem;height:1.0625rem}.resource-list-item__checkbox-icon.sc-swirl-resource-list-item>*.sc-swirl-resource-list-item::part(icon){width:1.0625rem;height:1.0625rem}.resource-list-item__meta.sc-swirl-resource-list-item{display:flex;align-items:flex-end;color:var(--s-text-subdued);font-size:var(--s-font-size-sm);flex-direction:column;align-self:flex-start}.resource-list-item__drag-handle.sc-swirl-resource-list-item{position:absolute;z-index:1;top:50%;left:var(--s-space-4);display:inline-flex;margin:0;padding:0;padding:var(--s-space-8);flex-shrink:0;border:none;color:var(--s-icon-default);background-color:transparent;cursor:grab;transform:translateY(-50%)}.resource-list-item__drag-handle.sc-swirl-resource-list-item:active{cursor:grabbing}.resource-list-item__drag-handle.sc-swirl-resource-list-item:focus:not(:focus-visible){outline:none}.resource-list-item__drag-handle.sc-swirl-resource-list-item:focus-visible{outline-color:var(--s-focus-default)}';export{d as swirl_app_layout,c as swirl_box,u as swirl_empty_state,h as swirl_icon_file,m as swirl_icon_folder_shared,b as swirl_resource_list,k as swirl_resource_list_item}
|