@getflip/swirl-components 0.50.1 → 0.51.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/components.json +10 -1
  2. package/dist/cjs/swirl-date-input.cjs.entry.js +3 -2
  3. package/dist/cjs/swirl-pagination.cjs.entry.js +24 -8
  4. package/dist/cjs/swirl-search.cjs.entry.js +5 -1
  5. package/dist/cjs/swirl-toast.cjs.entry.js +2 -2
  6. package/dist/collection/assets/pdfjs/pdf.worker.min.js +1 -1
  7. package/dist/collection/components/swirl-date-input/swirl-date-input.js +3 -2
  8. package/dist/collection/components/swirl-pagination/swirl-pagination.css +7 -14
  9. package/dist/collection/components/swirl-pagination/swirl-pagination.js +23 -7
  10. package/dist/collection/components/swirl-search/swirl-search.js +19 -1
  11. package/dist/collection/components/swirl-search/swirl-search.stories.js +3 -0
  12. package/dist/collection/components/swirl-toast/swirl-toast.css +4 -0
  13. package/dist/collection/components/swirl-toast/swirl-toast.js +1 -1
  14. package/dist/components/assets/pdfjs/pdf.worker.min.js +1 -1
  15. package/dist/components/swirl-date-input.js +3 -2
  16. package/dist/components/swirl-pagination.js +24 -8
  17. package/dist/components/swirl-search.js +5 -1
  18. package/dist/components/swirl-toast2.js +2 -2
  19. package/dist/esm/swirl-date-input.entry.js +4 -3
  20. package/dist/esm/swirl-pagination.entry.js +24 -8
  21. package/dist/esm/swirl-search.entry.js +5 -1
  22. package/dist/esm/swirl-toast.entry.js +2 -2
  23. package/dist/swirl-components/p-41e9050c.entry.js +1 -0
  24. package/dist/swirl-components/p-77daca19.entry.js +1 -0
  25. package/dist/swirl-components/p-ae7a2dde.entry.js +1 -0
  26. package/dist/swirl-components/p-e5fa6ac6.entry.js +7 -0
  27. package/dist/swirl-components/swirl-components.esm.js +1 -1
  28. package/dist/types/components/swirl-date-input/swirl-date-input.d.ts +1 -0
  29. package/dist/types/components/swirl-pagination/swirl-pagination.d.ts +4 -1
  30. package/dist/types/components/swirl-search/swirl-search.d.ts +2 -0
  31. package/dist/types/components.d.ts +1 -0
  32. package/dist/types/utils.d.ts +1 -1
  33. package/package.json +1 -1
  34. package/dist/swirl-components/p-3955db23.entry.js +0 -7
  35. package/dist/swirl-components/p-da7879cd.entry.js +0 -1
  36. package/dist/swirl-components/p-dbe4ee1a.entry.js +0 -1
  37. package/dist/swirl-components/p-f50fcc4d.entry.js +0 -1
@@ -6317,7 +6317,7 @@ const SwirlDateInput$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElem
6317
6317
  this.iconSize = 24;
6318
6318
  }
6319
6319
  componentWillLoad() {
6320
- const index = document.querySelectorAll("swirl-date-input").length;
6320
+ const index = Array.from(document.querySelectorAll("swirl-date-input")).indexOf(this.el);
6321
6321
  this.id = `swirl-date-input-${index}`;
6322
6322
  }
6323
6323
  componentDidLoad() {
@@ -6363,8 +6363,9 @@ const SwirlDateInput$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElem
6363
6363
  const className = classnames("date-input", {
6364
6364
  "date-input--inline": this.inline,
6365
6365
  });
6366
- return (h(Host, null, h("div", { class: className }, h("input", { "aria-describedby": this.swirlAriaDescribedby, "aria-disabled": this.disabled ? "true" : undefined, "aria-invalid": ariaInvalid, autoFocus: this.autoFocus, class: "date-input__input", disabled: this.disabled, id: this.id, onClick: this.onClick, onFocus: this.onFocus, onInput: this.onInput, placeholder: this.placeholder, required: this.required, type: "text", value: displayValue }), h("button", { "aria-label": this.datePickerTriggerLabel, class: "date-input__date-picker-button", disabled: this.disabled, id: `${this.id}-trigger`, type: "button" }, h("swirl-icon-today", { size: this.iconSize }))), !this.disabled && (h("swirl-popover", { animation: "scale-in-y", label: this.datePickerLabel, placement: "bottom-end", popoverId: "popover", ref: (el) => (this.pickerPopover = el), trigger: `${this.id}-trigger` }, h("swirl-date-picker", { labels: this.labels, locale: this.locale, onValueChange: this.onPickDate, value: dateValue })))));
6366
+ return (h(Host, null, h("div", { class: className }, h("input", { "aria-describedby": this.swirlAriaDescribedby, "aria-disabled": this.disabled ? "true" : undefined, "aria-invalid": ariaInvalid, autoFocus: this.autoFocus, class: "date-input__input", disabled: this.disabled, id: this.id, onClick: this.onClick, onFocus: this.onFocus, onInput: this.onInput, placeholder: this.placeholder, required: this.required, type: "text", value: displayValue }), h("button", { "aria-label": this.datePickerTriggerLabel, class: "date-input__date-picker-button", disabled: this.disabled, id: `${this.id}-trigger`, type: "button" }, h("swirl-icon-today", { size: this.iconSize }))), !this.disabled && (h("swirl-popover", { animation: "scale-in-y", label: this.datePickerLabel, placement: "bottom-end", popoverId: `popover-${this.id}`, ref: (el) => (this.pickerPopover = el), trigger: `${this.id}-trigger` }, h("swirl-date-picker", { labels: this.labels, locale: this.locale, onValueChange: this.onPickDate, value: dateValue })))));
6367
6367
  }
6368
+ get el() { return this; }
6368
6369
  static get watchers() { return {
6369
6370
  "format": ["watchFormat"]
6370
6371
  }; }
@@ -1,12 +1,13 @@
1
1
  import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
2
2
  import { c as classnames } from './index2.js';
3
+ import { d as debounce } from './utils.js';
3
4
  import { d as defineCustomElement$6 } from './swirl-button2.js';
4
5
  import { d as defineCustomElement$5 } from './swirl-icon-expand-more2.js';
5
6
  import { d as defineCustomElement$4 } from './swirl-stack2.js';
6
7
  import { d as defineCustomElement$3 } from './swirl-text2.js';
7
8
  import { d as defineCustomElement$2 } from './swirl-visually-hidden2.js';
8
9
 
9
- const swirlPaginationCss = ":host{display:block;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}:host *{box-sizing:border-box}.pagination{display:block;width:100%}.pagination--variant-simple .pagination__list{gap:0}.pagination__list{display:flex;margin:0;padding:0;justify-content:flex-start;align-items:center;line-height:var(--s-line-height-base);list-style:none}@media (min-width: 992px) and (max-width: 1439px) and (hover: hover),(min-width: 1440px){.pagination__list{font-size:var(--s-font-size-sm);line-height:var(--s-line-height-sm)}}.pagination__page-size-selection{display:flex;padding-right:var(--s-space-24);flex-shrink:0;align-items:center;color:var(--s-interactive-primary-default);white-space:nowrap;gap:var(--s-space-8)}.pagination__page-size-select-container{position:relative}.pagination__page-size-select{padding-right:calc(1rem + var(--s-space-4));border:none;color:var(--s-interactive-primary-default);background-color:transparent;font:inherit;font-weight:var(--s-font-weight-medium);line-height:var(--s-line-height-base);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none}.pagination__page-size-select:focus:not(:focus-visible){outline:none}.pagination__page-size-select:focus-visible{outline-color:var(--s-focus-default)}@media (min-width: 992px) and (max-width: 1439px) and (hover: hover),(min-width: 1440px){.pagination__page-size-select{font-size:var(--s-font-size-sm);line-height:var(--s-line-height-sm)}}.pagination__page-size-select-icon{position:absolute;top:50%;right:0;transform:translateY(-50%);pointer-events:none}.pagination__page-label{padding-right:var(--s-space-8);padding-left:var(--s-space-8)}.pagination__advanced-label{display:flex;align-items:center;white-space:nowrap;gap:var(--s-space-8)}.pagination__page-select-container{position:relative}.pagination__page-select{display:inline-flex;padding-top:var(--s-space-8);padding-right:var(--s-space-16);padding-bottom:var(--s-space-8);padding-left:var(--s-space-16);border:none;border-radius:var(--s-border-radius-sm);background-color:transparent;font:inherit;line-height:var(--s-line-height-base);text-align:center;cursor:pointer;box-shadow:inset 0 0 0 var(--s-border-width-default) var(--s-border-strong);-webkit-appearance:none;-moz-appearance:none;appearance:none}.pagination__page-select:focus:not(:focus-visible){outline:none}.pagination__page-select:focus-visible{outline-color:var(--s-focus-default)}@media (min-width: 992px) and (max-width: 1439px) and (hover: hover),(min-width: 1440px){.pagination__page-select{font-size:var(--s-font-size-sm);line-height:var(--s-line-height-sm)}}";
10
+ const swirlPaginationCss = ":host{display:block;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}:host *{box-sizing:border-box}.pagination{display:block;width:100%}.pagination--variant-simple .pagination__list{gap:0}.pagination__list{display:flex;margin:0;padding:0;justify-content:flex-start;align-items:center;line-height:var(--s-line-height-base);list-style:none}@media (min-width: 992px) and (max-width: 1439px) and (hover: hover),(min-width: 1440px){.pagination__list{font-size:var(--s-font-size-sm);line-height:var(--s-line-height-sm)}}.pagination__page-size-selection{display:flex;padding-right:var(--s-space-24);flex-shrink:0;align-items:center;color:var(--s-interactive-primary-default);white-space:nowrap;gap:var(--s-space-8)}.pagination__page-size-select-container{position:relative}.pagination__page-size-select{padding-right:calc(1rem + var(--s-space-4));border:none;color:var(--s-interactive-primary-default);background-color:transparent;font:inherit;font-weight:var(--s-font-weight-medium);line-height:var(--s-line-height-base);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none}.pagination__page-size-select:focus:not(:focus-visible){outline:none}.pagination__page-size-select:focus-visible{outline-color:var(--s-focus-default)}@media (min-width: 992px) and (max-width: 1439px) and (hover: hover),(min-width: 1440px){.pagination__page-size-select{font-size:var(--s-font-size-sm);line-height:var(--s-line-height-sm)}}.pagination__page-size-select-icon{position:absolute;top:50%;right:0;transform:translateY(-50%);pointer-events:none}.pagination__page-label{padding-right:var(--s-space-8);padding-left:var(--s-space-8)}.pagination__advanced-label{display:flex;align-items:center;white-space:nowrap;gap:var(--s-space-8)}.pagination__page-input{display:inline-flex;width:3rem;padding-top:var(--s-space-8);padding-right:var(--s-space-8);padding-bottom:var(--s-space-8);padding-left:var(--s-space-8);border:none;border-radius:var(--s-border-radius-sm);background-color:transparent;font:inherit;line-height:var(--s-line-height-base);text-align:center;box-shadow:inset 0 0 0 var(--s-border-width-default) var(--s-border-strong)}.pagination__page-input:focus:not(:focus-visible){outline:none}.pagination__page-input:focus-visible{outline-color:var(--s-focus-default)}@media (min-width: 992px) and (max-width: 1439px) and (hover: hover),(min-width: 1440px){.pagination__page-input{font-size:var(--s-font-size-sm);line-height:var(--s-line-height-sm)}}";
10
11
 
11
12
  const SwirlPagination$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
12
13
  constructor() {
@@ -15,6 +16,9 @@ const SwirlPagination$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLEle
15
16
  this.__attachShadow();
16
17
  this.setPage = createEvent(this, "setPage", 7);
17
18
  this.setPageSize = createEvent(this, "setPageSize", 7);
19
+ this.onFocusPageInput = (event) => {
20
+ event.target.select();
21
+ };
18
22
  this.onFirstPageButtonClick = () => {
19
23
  if (this.page === 1) {
20
24
  return;
@@ -41,13 +45,28 @@ const SwirlPagination$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLEle
41
45
  }
42
46
  this.setPage.emit(nextPage);
43
47
  };
44
- this.onSelect = (event) => {
45
- const page = +event.target.value;
48
+ this.onPageInput = () => {
49
+ let page = +this.pageInput.value;
50
+ if (isNaN(page)) {
51
+ page = this.page;
52
+ this.pageInput.value = String(page);
53
+ }
54
+ else if (page > this.pages) {
55
+ page = this.pages;
56
+ this.pageInput.value = String(page);
57
+ }
58
+ else if (page < 1) {
59
+ page = 1;
60
+ this.pageInput.value = String(page);
61
+ }
46
62
  if (this.page === page) {
47
63
  return;
48
64
  }
49
- this.setPage.emit(page);
65
+ this.onPageUpdate(page);
50
66
  };
67
+ this.onPageUpdate = debounce((page) => {
68
+ this.setPage.emit(page);
69
+ }, 500);
51
70
  this.onPageSizeSelect = (event) => {
52
71
  const pageSize = +event.target.value;
53
72
  if (this.pageSize === pageSize) {
@@ -75,10 +94,7 @@ const SwirlPagination$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLEle
75
94
  const showDropDown = this.variant === "advanced";
76
95
  const ariaPageLabel = `${this.page} ${this.pageLabel} ${this.pages}`;
77
96
  const className = classnames("pagination", `pagination--variant-${this.variant}`);
78
- return (h(Host, null, h("nav", { "aria-label": this.label, class: className }, h("ul", { class: "pagination__list", part: "pagination__list" }, this.showPageSizeSelect && (h("li", { class: "pagination__list-item" }, h("label", { class: "pagination__page-size-selection" }, h("swirl-text", null, this.pageSizeSelectLabel), h("swirl-stack", { align: "center", class: "pagination__page-size-select-container", orientation: "horizontal" }, h("select", { class: "pagination__page-size-select", onChange: this.onPageSizeSelect }, this.pageSizeOptions.map((pageSizeOption) => (h("option", { key: pageSizeOption, selected: pageSizeOption === this.pageSize, value: pageSizeOption }, pageSizeOption)))), h("swirl-icon-expand-more", { "aria-hidden": "true", class: "pagination__page-size-select-icon", size: 16 }))))), h("li", { class: "pagination__list-item" }, h("swirl-button", { class: "pagination__first-page-button", disabled: this.page <= 1, hideLabel: true, icon: "<swirl-icon-double-arrow-left></swirl-icon-double-arrow-left>", intent: "primary", label: this.firstPageButtonLabel, onClick: this.onFirstPageButtonClick })), h("li", { class: "pagination__list-item" }, h("swirl-button", { class: "pagination__prev-button", disabled: this.page <= 1, hideLabel: true, icon: "<swirl-icon-chevron-left></swirl-icon-chevron-left>", intent: "primary", label: this.prevButtonLabel, onClick: this.onPrevButtonClick })), showPageLabel ? (h("li", { class: "pagination__list-item pagination__page-label" }, h("span", null, showDropDown ? (h("span", { "aria-current": "page", class: "pagination__advanced-label" }, h("span", { class: "pagination__page-select-container" }, h("select", { "aria-label": this.pageSelectLabel, class: "pagination__page-select", onChange: this.onSelect }, new Array(this.pages)
79
- .fill(undefined)
80
- .map((_, index) => index + 1)
81
- .map((page) => (h("option", { selected: this.page === page, value: String(page) }, page))))), h("span", { "aria-hidden": "true" }, this.pageLabel, " ", this.pages))) : (h("span", { "aria-current": "page" }, ariaPageLabel))))) : (h("li", { class: "pagination__list-item" }, h("swirl-visually-hidden", null, h("span", { "aria-current": "page" }, ariaPageLabel)))), h("li", { class: "pagination__list-item" }, h("swirl-button", { class: "pagination__next-button", disabled: this.page >= this.pages, hideLabel: true, icon: "<swirl-icon-chevron-right></swirl-icon-chevron-right>", iconPosition: "end", intent: "primary", label: this.nextButtonLabel, onClick: this.onNextButtonClick })), h("li", { class: "pagination__list-item" }, h("swirl-button", { class: "pagination__last-page-button", disabled: this.page >= this.pages, hideLabel: true, icon: "<swirl-icon-double-arrow-right></swirl-icon-double-arrow-right>", intent: "primary", label: this.lastPageButtonLabel, onClick: this.onLastPageButtonClick }))))));
97
+ return (h(Host, null, h("nav", { "aria-label": this.label, class: className }, h("ul", { class: "pagination__list", part: "pagination__list" }, this.showPageSizeSelect && (h("li", { class: "pagination__list-item" }, h("label", { class: "pagination__page-size-selection" }, h("swirl-text", null, this.pageSizeSelectLabel), h("swirl-stack", { align: "center", class: "pagination__page-size-select-container", orientation: "horizontal" }, h("select", { class: "pagination__page-size-select", onChange: this.onPageSizeSelect }, this.pageSizeOptions.map((pageSizeOption) => (h("option", { key: pageSizeOption, selected: pageSizeOption === this.pageSize, value: pageSizeOption }, pageSizeOption)))), h("swirl-icon-expand-more", { "aria-hidden": "true", class: "pagination__page-size-select-icon", size: 16 }))))), h("li", { class: "pagination__list-item" }, h("swirl-button", { class: "pagination__first-page-button", disabled: this.page <= 1, hideLabel: true, icon: "<swirl-icon-double-arrow-left></swirl-icon-double-arrow-left>", intent: "primary", label: this.firstPageButtonLabel, onClick: this.onFirstPageButtonClick })), h("li", { class: "pagination__list-item" }, h("swirl-button", { class: "pagination__prev-button", disabled: this.page <= 1, hideLabel: true, icon: "<swirl-icon-chevron-left></swirl-icon-chevron-left>", intent: "primary", label: this.prevButtonLabel, onClick: this.onPrevButtonClick })), showPageLabel ? (h("li", { class: "pagination__list-item pagination__page-label" }, h("span", null, showDropDown ? (h("span", { "aria-current": "page", class: "pagination__advanced-label" }, h("input", { "aria-label": this.pageSelectLabel, class: "pagination__page-input", onFocus: this.onFocusPageInput, onInput: this.onPageInput, ref: (el) => (this.pageInput = el), type: "text", value: this.page }), h("span", { "aria-hidden": "true" }, this.pageLabel, " ", this.pages))) : (h("span", { "aria-current": "page" }, ariaPageLabel))))) : (h("li", { class: "pagination__list-item" }, h("swirl-visually-hidden", null, h("span", { "aria-current": "page" }, ariaPageLabel)))), h("li", { class: "pagination__list-item" }, h("swirl-button", { class: "pagination__next-button", disabled: this.page >= this.pages, hideLabel: true, icon: "<swirl-icon-chevron-right></swirl-icon-chevron-right>", iconPosition: "end", intent: "primary", label: this.nextButtonLabel, onClick: this.onNextButtonClick })), h("li", { class: "pagination__list-item" }, h("swirl-button", { class: "pagination__last-page-button", disabled: this.page >= this.pages, hideLabel: true, icon: "<swirl-icon-double-arrow-right></swirl-icon-double-arrow-right>", intent: "primary", label: this.lastPageButtonLabel, onClick: this.onLastPageButtonClick }))))));
82
98
  }
83
99
  static get style() { return swirlPaginationCss; }
84
100
  }, [1, "swirl-pagination", {
@@ -12,6 +12,7 @@ const SwirlSearch$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
12
12
  this.__registerHost();
13
13
  this.inputBlur = createEvent(this, "inputBlur", 7);
14
14
  this.inputFocus = createEvent(this, "inputFocus", 7);
15
+ this.inputInput = createEvent(this, "inputInput", 7);
15
16
  this.valueChange = createEvent(this, "valueChange", 7);
16
17
  this.desktopMediaQuery = getDesktopMediaQuery();
17
18
  this.desktopMediaQueryHandler = (event) => {
@@ -31,6 +32,9 @@ const SwirlSearch$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
31
32
  this.onFocus = (event) => {
32
33
  this.inputFocus.emit(event);
33
34
  };
35
+ this.onInput = (event) => {
36
+ this.inputInput.emit(event.target.value);
37
+ };
34
38
  this.autoFocus = undefined;
35
39
  this.clearButtonLabel = "Clear search term";
36
40
  this.disabled = undefined;
@@ -67,7 +71,7 @@ const SwirlSearch$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
67
71
  const className = classnames("search", `search--variant-${this.variant}`, {
68
72
  "search--disabled": this.disabled,
69
73
  });
70
- return (h(Host, null, h("span", { class: className, ref: (el) => (this.iconEl = el) }, h("swirl-icon-search", { class: "search__icon" }), h("input", { "aria-disabled": this.disabled ? "true" : undefined, "aria-label": this.label, autoComplete: "off", autoFocus: this.autoFocus, class: "search__input", disabled: this.disabled, id: this.inputId, inputMode: "search", name: this.inputName, onBlur: this.onBlur, onChange: this.onChange, onFocus: this.onFocus, placeholder: this.placeholder, ref: (el) => (this.input = el), type: "search", value: this.value }), !this.disabled && (h("button", { "aria-label": this.clearButtonLabel, class: "search__clear-button", onClick: this.clear, type: "button" }, h("swirl-icon-cancel", null))))));
74
+ return (h(Host, null, h("span", { class: className, ref: (el) => (this.iconEl = el) }, h("swirl-icon-search", { class: "search__icon" }), h("input", { "aria-disabled": this.disabled ? "true" : undefined, "aria-label": this.label, autoComplete: "off", autoFocus: this.autoFocus, class: "search__input", disabled: this.disabled, id: this.inputId, inputMode: "search", name: this.inputName, onBlur: this.onBlur, onChange: this.onChange, onFocus: this.onFocus, onInput: this.onInput, placeholder: this.placeholder, ref: (el) => (this.input = el), type: "search", value: this.value }), !this.disabled && (h("button", { "aria-label": this.clearButtonLabel, class: "search__clear-button", onClick: this.clear, type: "button" }, h("swirl-icon-cancel", null))))));
71
75
  }
72
76
  static get style() { return swirlSearchCss; }
73
77
  }, [2, "swirl-search", {
@@ -3,7 +3,7 @@ import { c as classnames } from './index2.js';
3
3
  import { g as getDesktopMediaQuery } from './utils.js';
4
4
  import { d as defineCustomElement$1 } from './swirl-icon-close2.js';
5
5
 
6
- const swirlToastCss = ":host{display:flex}:host *{box-sizing:border-box}.toast{display:flex;width:100%;max-width:28rem;padding:var(--s-space-16);border-radius:var(--s-border-radius-sm);color:var(--s-text-on-status);background-color:var(--s-surface-neutral-default);box-shadow:var(--s-shadow-level-2)}.toast--intent-critical{background-color:var(--s-surface-critical-default)}.toast--intent-success{background-color:var(--s-surface-success-default)}.toast__icon{display:inline-flex;margin-top:calc(-1 * var(--s-space-2));margin-right:0.625rem;flex-shrink:0}.toast__icon ::part(icon){color:var(--s-icon-on-status)}@media (min-width: 992px) and (max-width: 1439px) and (hover: hover),(min-width: 1440px){.toast__icon{margin-top:0}}.toast__content{flex-grow:1;line-height:var(--s-line-height-base);text-align:left;align-self:flex-start}@media (min-width: 992px) and (max-width: 1439px) and (hover: hover),(min-width: 1440px){.toast__content{font-size:var(--s-font-size-sm);line-height:var(--s-line-height-sm)}}.toast__dismiss-button{display:inline-flex;min-width:1.5rem;height:1.5rem;margin-top:calc(-1 * var(--s-space-2));margin-left:var(--s-space-16);padding:0;flex-shrink:0;justify-content:center;align-items:center;border:none;color:var(--s-text-on-status);background-color:transparent;font:inherit;font-weight:var(--s-font-weight-semibold);cursor:pointer}.toast__dismiss-button ::part(icon){color:var(--s-icon-on-status)}";
6
+ const swirlToastCss = ":host{display:flex}:host *{box-sizing:border-box}.toast{display:flex;width:100%;max-width:28rem;padding:var(--s-space-16);border-radius:var(--s-border-radius-sm);color:var(--s-text-on-status);background-color:var(--s-surface-neutral-default);box-shadow:var(--s-shadow-level-2)}.toast--intent-critical{background-color:var(--s-surface-critical-default)}.toast--intent-success{background-color:var(--s-surface-success-default)}.toast__icon{display:inline-flex;margin-top:calc(-1 * var(--s-space-2));margin-right:0.625rem;flex-shrink:0}.toast__icon ::part(icon){color:var(--s-icon-on-status)}@media (min-width: 992px) and (max-width: 1439px) and (hover: hover),(min-width: 1440px){.toast__icon{margin-top:0}}.toast__content{flex-grow:1;line-height:var(--s-line-height-base);text-align:left;align-self:flex-start}@media (min-width: 992px) and (max-width: 1439px) and (hover: hover),(min-width: 1440px){.toast__content{font-size:var(--s-font-size-sm);line-height:var(--s-line-height-sm)}}.toast__content ::part(link){color:var(--text-default)}.toast__dismiss-button{display:inline-flex;min-width:1.5rem;height:1.5rem;margin-top:calc(-1 * var(--s-space-2));margin-left:var(--s-space-16);padding:0;flex-shrink:0;justify-content:center;align-items:center;border:none;color:var(--s-text-on-status);background-color:transparent;font:inherit;font-weight:var(--s-font-weight-semibold);cursor:pointer}.toast__dismiss-button ::part(icon){color:var(--s-icon-on-status)}";
7
7
 
8
8
  const SwirlToast = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
9
9
  constructor() {
@@ -64,7 +64,7 @@ const SwirlToast = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
64
64
  }
65
65
  render() {
66
66
  const className = classnames("toast", `toast--intent-${this.intent}`);
67
- return (h(Host, null, h("div", { class: className }, this.icon && (h("span", { class: "toast__icon", innerHTML: this.icon, part: "toast__icon", ref: (el) => (this.iconEl = el) })), h("span", { class: "toast__content", part: "toast__content" }, this.content), h("button", { "aria-label": this.dismissLabel || this.accessibleDismissLabel, class: "toast__dismiss-button", onClick: this.onDismiss, type: "button" }, this.dismissLabel, !Boolean(this.dismissLabel) && (h("swirl-icon-close", { ref: (el) => (this.dismissIconEl = el) }))))));
67
+ return (h(Host, null, h("div", { class: className }, this.icon && (h("span", { class: "toast__icon", innerHTML: this.icon, part: "toast__icon", ref: (el) => (this.iconEl = el) })), h("span", { class: "toast__content", innerHTML: this.content, part: "toast__content" }), h("button", { "aria-label": this.dismissLabel || this.accessibleDismissLabel, class: "toast__dismiss-button", onClick: this.onDismiss, type: "button" }, this.dismissLabel, !Boolean(this.dismissLabel) && (h("swirl-icon-close", { ref: (el) => (this.dismissIconEl = el) }))))));
68
68
  }
69
69
  static get watchers() { return {
70
70
  "duration": ["watchDuration"]
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, h, H as Host } from './index-0ff2c8e0.js';
1
+ import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-0ff2c8e0.js';
2
2
  import { a as createCommonjsModule, b as commonjsGlobal, c as classnames } from './index-d280dafb.js';
3
3
  import { g as getDesktopMediaQuery } from './utils-61f188cc.js';
4
4
 
@@ -6312,7 +6312,7 @@ const SwirlDateInput = class {
6312
6312
  this.iconSize = 24;
6313
6313
  }
6314
6314
  componentWillLoad() {
6315
- const index = document.querySelectorAll("swirl-date-input").length;
6315
+ const index = Array.from(document.querySelectorAll("swirl-date-input")).indexOf(this.el);
6316
6316
  this.id = `swirl-date-input-${index}`;
6317
6317
  }
6318
6318
  componentDidLoad() {
@@ -6358,8 +6358,9 @@ const SwirlDateInput = class {
6358
6358
  const className = classnames("date-input", {
6359
6359
  "date-input--inline": this.inline,
6360
6360
  });
6361
- return (h(Host, null, h("div", { class: className }, h("input", { "aria-describedby": this.swirlAriaDescribedby, "aria-disabled": this.disabled ? "true" : undefined, "aria-invalid": ariaInvalid, autoFocus: this.autoFocus, class: "date-input__input", disabled: this.disabled, id: this.id, onClick: this.onClick, onFocus: this.onFocus, onInput: this.onInput, placeholder: this.placeholder, required: this.required, type: "text", value: displayValue }), h("button", { "aria-label": this.datePickerTriggerLabel, class: "date-input__date-picker-button", disabled: this.disabled, id: `${this.id}-trigger`, type: "button" }, h("swirl-icon-today", { size: this.iconSize }))), !this.disabled && (h("swirl-popover", { animation: "scale-in-y", label: this.datePickerLabel, placement: "bottom-end", popoverId: "popover", ref: (el) => (this.pickerPopover = el), trigger: `${this.id}-trigger` }, h("swirl-date-picker", { labels: this.labels, locale: this.locale, onValueChange: this.onPickDate, value: dateValue })))));
6361
+ return (h(Host, null, h("div", { class: className }, h("input", { "aria-describedby": this.swirlAriaDescribedby, "aria-disabled": this.disabled ? "true" : undefined, "aria-invalid": ariaInvalid, autoFocus: this.autoFocus, class: "date-input__input", disabled: this.disabled, id: this.id, onClick: this.onClick, onFocus: this.onFocus, onInput: this.onInput, placeholder: this.placeholder, required: this.required, type: "text", value: displayValue }), h("button", { "aria-label": this.datePickerTriggerLabel, class: "date-input__date-picker-button", disabled: this.disabled, id: `${this.id}-trigger`, type: "button" }, h("swirl-icon-today", { size: this.iconSize }))), !this.disabled && (h("swirl-popover", { animation: "scale-in-y", label: this.datePickerLabel, placement: "bottom-end", popoverId: `popover-${this.id}`, ref: (el) => (this.pickerPopover = el), trigger: `${this.id}-trigger` }, h("swirl-date-picker", { labels: this.labels, locale: this.locale, onValueChange: this.onPickDate, value: dateValue })))));
6362
6362
  }
6363
+ get el() { return getElement(this); }
6363
6364
  static get watchers() { return {
6364
6365
  "format": ["watchFormat"]
6365
6366
  }; }
@@ -1,13 +1,17 @@
1
1
  import { r as registerInstance, c as createEvent, h, H as Host } from './index-0ff2c8e0.js';
2
2
  import { c as classnames } from './index-d280dafb.js';
3
+ import { d as debounce } from './utils-61f188cc.js';
3
4
 
4
- const swirlPaginationCss = ":host{display:block;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}:host *{box-sizing:border-box}.pagination{display:block;width:100%}.pagination--variant-simple .pagination__list{gap:0}.pagination__list{display:flex;margin:0;padding:0;justify-content:flex-start;align-items:center;line-height:var(--s-line-height-base);list-style:none}@media (min-width: 992px) and (max-width: 1439px) and (hover: hover),(min-width: 1440px){.pagination__list{font-size:var(--s-font-size-sm);line-height:var(--s-line-height-sm)}}.pagination__page-size-selection{display:flex;padding-right:var(--s-space-24);flex-shrink:0;align-items:center;color:var(--s-interactive-primary-default);white-space:nowrap;gap:var(--s-space-8)}.pagination__page-size-select-container{position:relative}.pagination__page-size-select{padding-right:calc(1rem + var(--s-space-4));border:none;color:var(--s-interactive-primary-default);background-color:transparent;font:inherit;font-weight:var(--s-font-weight-medium);line-height:var(--s-line-height-base);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none}.pagination__page-size-select:focus:not(:focus-visible){outline:none}.pagination__page-size-select:focus-visible{outline-color:var(--s-focus-default)}@media (min-width: 992px) and (max-width: 1439px) and (hover: hover),(min-width: 1440px){.pagination__page-size-select{font-size:var(--s-font-size-sm);line-height:var(--s-line-height-sm)}}.pagination__page-size-select-icon{position:absolute;top:50%;right:0;transform:translateY(-50%);pointer-events:none}.pagination__page-label{padding-right:var(--s-space-8);padding-left:var(--s-space-8)}.pagination__advanced-label{display:flex;align-items:center;white-space:nowrap;gap:var(--s-space-8)}.pagination__page-select-container{position:relative}.pagination__page-select{display:inline-flex;padding-top:var(--s-space-8);padding-right:var(--s-space-16);padding-bottom:var(--s-space-8);padding-left:var(--s-space-16);border:none;border-radius:var(--s-border-radius-sm);background-color:transparent;font:inherit;line-height:var(--s-line-height-base);text-align:center;cursor:pointer;box-shadow:inset 0 0 0 var(--s-border-width-default) var(--s-border-strong);-webkit-appearance:none;-moz-appearance:none;appearance:none}.pagination__page-select:focus:not(:focus-visible){outline:none}.pagination__page-select:focus-visible{outline-color:var(--s-focus-default)}@media (min-width: 992px) and (max-width: 1439px) and (hover: hover),(min-width: 1440px){.pagination__page-select{font-size:var(--s-font-size-sm);line-height:var(--s-line-height-sm)}}";
5
+ const swirlPaginationCss = ":host{display:block;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}:host *{box-sizing:border-box}.pagination{display:block;width:100%}.pagination--variant-simple .pagination__list{gap:0}.pagination__list{display:flex;margin:0;padding:0;justify-content:flex-start;align-items:center;line-height:var(--s-line-height-base);list-style:none}@media (min-width: 992px) and (max-width: 1439px) and (hover: hover),(min-width: 1440px){.pagination__list{font-size:var(--s-font-size-sm);line-height:var(--s-line-height-sm)}}.pagination__page-size-selection{display:flex;padding-right:var(--s-space-24);flex-shrink:0;align-items:center;color:var(--s-interactive-primary-default);white-space:nowrap;gap:var(--s-space-8)}.pagination__page-size-select-container{position:relative}.pagination__page-size-select{padding-right:calc(1rem + var(--s-space-4));border:none;color:var(--s-interactive-primary-default);background-color:transparent;font:inherit;font-weight:var(--s-font-weight-medium);line-height:var(--s-line-height-base);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none}.pagination__page-size-select:focus:not(:focus-visible){outline:none}.pagination__page-size-select:focus-visible{outline-color:var(--s-focus-default)}@media (min-width: 992px) and (max-width: 1439px) and (hover: hover),(min-width: 1440px){.pagination__page-size-select{font-size:var(--s-font-size-sm);line-height:var(--s-line-height-sm)}}.pagination__page-size-select-icon{position:absolute;top:50%;right:0;transform:translateY(-50%);pointer-events:none}.pagination__page-label{padding-right:var(--s-space-8);padding-left:var(--s-space-8)}.pagination__advanced-label{display:flex;align-items:center;white-space:nowrap;gap:var(--s-space-8)}.pagination__page-input{display:inline-flex;width:3rem;padding-top:var(--s-space-8);padding-right:var(--s-space-8);padding-bottom:var(--s-space-8);padding-left:var(--s-space-8);border:none;border-radius:var(--s-border-radius-sm);background-color:transparent;font:inherit;line-height:var(--s-line-height-base);text-align:center;box-shadow:inset 0 0 0 var(--s-border-width-default) var(--s-border-strong)}.pagination__page-input:focus:not(:focus-visible){outline:none}.pagination__page-input:focus-visible{outline-color:var(--s-focus-default)}@media (min-width: 992px) and (max-width: 1439px) and (hover: hover),(min-width: 1440px){.pagination__page-input{font-size:var(--s-font-size-sm);line-height:var(--s-line-height-sm)}}";
5
6
 
6
7
  const SwirlPagination = class {
7
8
  constructor(hostRef) {
8
9
  registerInstance(this, hostRef);
9
10
  this.setPage = createEvent(this, "setPage", 7);
10
11
  this.setPageSize = createEvent(this, "setPageSize", 7);
12
+ this.onFocusPageInput = (event) => {
13
+ event.target.select();
14
+ };
11
15
  this.onFirstPageButtonClick = () => {
12
16
  if (this.page === 1) {
13
17
  return;
@@ -34,13 +38,28 @@ const SwirlPagination = class {
34
38
  }
35
39
  this.setPage.emit(nextPage);
36
40
  };
37
- this.onSelect = (event) => {
38
- const page = +event.target.value;
41
+ this.onPageInput = () => {
42
+ let page = +this.pageInput.value;
43
+ if (isNaN(page)) {
44
+ page = this.page;
45
+ this.pageInput.value = String(page);
46
+ }
47
+ else if (page > this.pages) {
48
+ page = this.pages;
49
+ this.pageInput.value = String(page);
50
+ }
51
+ else if (page < 1) {
52
+ page = 1;
53
+ this.pageInput.value = String(page);
54
+ }
39
55
  if (this.page === page) {
40
56
  return;
41
57
  }
42
- this.setPage.emit(page);
58
+ this.onPageUpdate(page);
43
59
  };
60
+ this.onPageUpdate = debounce((page) => {
61
+ this.setPage.emit(page);
62
+ }, 500);
44
63
  this.onPageSizeSelect = (event) => {
45
64
  const pageSize = +event.target.value;
46
65
  if (this.pageSize === pageSize) {
@@ -68,10 +87,7 @@ const SwirlPagination = class {
68
87
  const showDropDown = this.variant === "advanced";
69
88
  const ariaPageLabel = `${this.page} ${this.pageLabel} ${this.pages}`;
70
89
  const className = classnames("pagination", `pagination--variant-${this.variant}`);
71
- return (h(Host, null, h("nav", { "aria-label": this.label, class: className }, h("ul", { class: "pagination__list", part: "pagination__list" }, this.showPageSizeSelect && (h("li", { class: "pagination__list-item" }, h("label", { class: "pagination__page-size-selection" }, h("swirl-text", null, this.pageSizeSelectLabel), h("swirl-stack", { align: "center", class: "pagination__page-size-select-container", orientation: "horizontal" }, h("select", { class: "pagination__page-size-select", onChange: this.onPageSizeSelect }, this.pageSizeOptions.map((pageSizeOption) => (h("option", { key: pageSizeOption, selected: pageSizeOption === this.pageSize, value: pageSizeOption }, pageSizeOption)))), h("swirl-icon-expand-more", { "aria-hidden": "true", class: "pagination__page-size-select-icon", size: 16 }))))), h("li", { class: "pagination__list-item" }, h("swirl-button", { class: "pagination__first-page-button", disabled: this.page <= 1, hideLabel: true, icon: "<swirl-icon-double-arrow-left></swirl-icon-double-arrow-left>", intent: "primary", label: this.firstPageButtonLabel, onClick: this.onFirstPageButtonClick })), h("li", { class: "pagination__list-item" }, h("swirl-button", { class: "pagination__prev-button", disabled: this.page <= 1, hideLabel: true, icon: "<swirl-icon-chevron-left></swirl-icon-chevron-left>", intent: "primary", label: this.prevButtonLabel, onClick: this.onPrevButtonClick })), showPageLabel ? (h("li", { class: "pagination__list-item pagination__page-label" }, h("span", null, showDropDown ? (h("span", { "aria-current": "page", class: "pagination__advanced-label" }, h("span", { class: "pagination__page-select-container" }, h("select", { "aria-label": this.pageSelectLabel, class: "pagination__page-select", onChange: this.onSelect }, new Array(this.pages)
72
- .fill(undefined)
73
- .map((_, index) => index + 1)
74
- .map((page) => (h("option", { selected: this.page === page, value: String(page) }, page))))), h("span", { "aria-hidden": "true" }, this.pageLabel, " ", this.pages))) : (h("span", { "aria-current": "page" }, ariaPageLabel))))) : (h("li", { class: "pagination__list-item" }, h("swirl-visually-hidden", null, h("span", { "aria-current": "page" }, ariaPageLabel)))), h("li", { class: "pagination__list-item" }, h("swirl-button", { class: "pagination__next-button", disabled: this.page >= this.pages, hideLabel: true, icon: "<swirl-icon-chevron-right></swirl-icon-chevron-right>", iconPosition: "end", intent: "primary", label: this.nextButtonLabel, onClick: this.onNextButtonClick })), h("li", { class: "pagination__list-item" }, h("swirl-button", { class: "pagination__last-page-button", disabled: this.page >= this.pages, hideLabel: true, icon: "<swirl-icon-double-arrow-right></swirl-icon-double-arrow-right>", intent: "primary", label: this.lastPageButtonLabel, onClick: this.onLastPageButtonClick }))))));
90
+ return (h(Host, null, h("nav", { "aria-label": this.label, class: className }, h("ul", { class: "pagination__list", part: "pagination__list" }, this.showPageSizeSelect && (h("li", { class: "pagination__list-item" }, h("label", { class: "pagination__page-size-selection" }, h("swirl-text", null, this.pageSizeSelectLabel), h("swirl-stack", { align: "center", class: "pagination__page-size-select-container", orientation: "horizontal" }, h("select", { class: "pagination__page-size-select", onChange: this.onPageSizeSelect }, this.pageSizeOptions.map((pageSizeOption) => (h("option", { key: pageSizeOption, selected: pageSizeOption === this.pageSize, value: pageSizeOption }, pageSizeOption)))), h("swirl-icon-expand-more", { "aria-hidden": "true", class: "pagination__page-size-select-icon", size: 16 }))))), h("li", { class: "pagination__list-item" }, h("swirl-button", { class: "pagination__first-page-button", disabled: this.page <= 1, hideLabel: true, icon: "<swirl-icon-double-arrow-left></swirl-icon-double-arrow-left>", intent: "primary", label: this.firstPageButtonLabel, onClick: this.onFirstPageButtonClick })), h("li", { class: "pagination__list-item" }, h("swirl-button", { class: "pagination__prev-button", disabled: this.page <= 1, hideLabel: true, icon: "<swirl-icon-chevron-left></swirl-icon-chevron-left>", intent: "primary", label: this.prevButtonLabel, onClick: this.onPrevButtonClick })), showPageLabel ? (h("li", { class: "pagination__list-item pagination__page-label" }, h("span", null, showDropDown ? (h("span", { "aria-current": "page", class: "pagination__advanced-label" }, h("input", { "aria-label": this.pageSelectLabel, class: "pagination__page-input", onFocus: this.onFocusPageInput, onInput: this.onPageInput, ref: (el) => (this.pageInput = el), type: "text", value: this.page }), h("span", { "aria-hidden": "true" }, this.pageLabel, " ", this.pages))) : (h("span", { "aria-current": "page" }, ariaPageLabel))))) : (h("li", { class: "pagination__list-item" }, h("swirl-visually-hidden", null, h("span", { "aria-current": "page" }, ariaPageLabel)))), h("li", { class: "pagination__list-item" }, h("swirl-button", { class: "pagination__next-button", disabled: this.page >= this.pages, hideLabel: true, icon: "<swirl-icon-chevron-right></swirl-icon-chevron-right>", iconPosition: "end", intent: "primary", label: this.nextButtonLabel, onClick: this.onNextButtonClick })), h("li", { class: "pagination__list-item" }, h("swirl-button", { class: "pagination__last-page-button", disabled: this.page >= this.pages, hideLabel: true, icon: "<swirl-icon-double-arrow-right></swirl-icon-double-arrow-right>", intent: "primary", label: this.lastPageButtonLabel, onClick: this.onLastPageButtonClick }))))));
75
91
  }
76
92
  };
77
93
  SwirlPagination.style = swirlPaginationCss;
@@ -9,6 +9,7 @@ const SwirlSearch = class {
9
9
  registerInstance(this, hostRef);
10
10
  this.inputBlur = createEvent(this, "inputBlur", 7);
11
11
  this.inputFocus = createEvent(this, "inputFocus", 7);
12
+ this.inputInput = createEvent(this, "inputInput", 7);
12
13
  this.valueChange = createEvent(this, "valueChange", 7);
13
14
  this.desktopMediaQuery = getDesktopMediaQuery();
14
15
  this.desktopMediaQueryHandler = (event) => {
@@ -28,6 +29,9 @@ const SwirlSearch = class {
28
29
  this.onFocus = (event) => {
29
30
  this.inputFocus.emit(event);
30
31
  };
32
+ this.onInput = (event) => {
33
+ this.inputInput.emit(event.target.value);
34
+ };
31
35
  this.autoFocus = undefined;
32
36
  this.clearButtonLabel = "Clear search term";
33
37
  this.disabled = undefined;
@@ -64,7 +68,7 @@ const SwirlSearch = class {
64
68
  const className = classnames("search", `search--variant-${this.variant}`, {
65
69
  "search--disabled": this.disabled,
66
70
  });
67
- return (h(Host, null, h("span", { class: className, ref: (el) => (this.iconEl = el) }, h("swirl-icon-search", { class: "search__icon" }), h("input", { "aria-disabled": this.disabled ? "true" : undefined, "aria-label": this.label, autoComplete: "off", autoFocus: this.autoFocus, class: "search__input", disabled: this.disabled, id: this.inputId, inputMode: "search", name: this.inputName, onBlur: this.onBlur, onChange: this.onChange, onFocus: this.onFocus, placeholder: this.placeholder, ref: (el) => (this.input = el), type: "search", value: this.value }), !this.disabled && (h("button", { "aria-label": this.clearButtonLabel, class: "search__clear-button", onClick: this.clear, type: "button" }, h("swirl-icon-cancel", null))))));
71
+ return (h(Host, null, h("span", { class: className, ref: (el) => (this.iconEl = el) }, h("swirl-icon-search", { class: "search__icon" }), h("input", { "aria-disabled": this.disabled ? "true" : undefined, "aria-label": this.label, autoComplete: "off", autoFocus: this.autoFocus, class: "search__input", disabled: this.disabled, id: this.inputId, inputMode: "search", name: this.inputName, onBlur: this.onBlur, onChange: this.onChange, onFocus: this.onFocus, onInput: this.onInput, placeholder: this.placeholder, ref: (el) => (this.input = el), type: "search", value: this.value }), !this.disabled && (h("button", { "aria-label": this.clearButtonLabel, class: "search__clear-button", onClick: this.clear, type: "button" }, h("swirl-icon-cancel", null))))));
68
72
  }
69
73
  };
70
74
  SwirlSearch.style = swirlSearchCss;
@@ -2,7 +2,7 @@ import { r as registerInstance, c as createEvent, h, H as Host } from './index-0
2
2
  import { c as classnames } from './index-d280dafb.js';
3
3
  import { g as getDesktopMediaQuery } from './utils-61f188cc.js';
4
4
 
5
- const swirlToastCss = ":host{display:flex}:host *{box-sizing:border-box}.toast{display:flex;width:100%;max-width:28rem;padding:var(--s-space-16);border-radius:var(--s-border-radius-sm);color:var(--s-text-on-status);background-color:var(--s-surface-neutral-default);box-shadow:var(--s-shadow-level-2)}.toast--intent-critical{background-color:var(--s-surface-critical-default)}.toast--intent-success{background-color:var(--s-surface-success-default)}.toast__icon{display:inline-flex;margin-top:calc(-1 * var(--s-space-2));margin-right:0.625rem;flex-shrink:0}.toast__icon ::part(icon){color:var(--s-icon-on-status)}@media (min-width: 992px) and (max-width: 1439px) and (hover: hover),(min-width: 1440px){.toast__icon{margin-top:0}}.toast__content{flex-grow:1;line-height:var(--s-line-height-base);text-align:left;align-self:flex-start}@media (min-width: 992px) and (max-width: 1439px) and (hover: hover),(min-width: 1440px){.toast__content{font-size:var(--s-font-size-sm);line-height:var(--s-line-height-sm)}}.toast__dismiss-button{display:inline-flex;min-width:1.5rem;height:1.5rem;margin-top:calc(-1 * var(--s-space-2));margin-left:var(--s-space-16);padding:0;flex-shrink:0;justify-content:center;align-items:center;border:none;color:var(--s-text-on-status);background-color:transparent;font:inherit;font-weight:var(--s-font-weight-semibold);cursor:pointer}.toast__dismiss-button ::part(icon){color:var(--s-icon-on-status)}";
5
+ const swirlToastCss = ":host{display:flex}:host *{box-sizing:border-box}.toast{display:flex;width:100%;max-width:28rem;padding:var(--s-space-16);border-radius:var(--s-border-radius-sm);color:var(--s-text-on-status);background-color:var(--s-surface-neutral-default);box-shadow:var(--s-shadow-level-2)}.toast--intent-critical{background-color:var(--s-surface-critical-default)}.toast--intent-success{background-color:var(--s-surface-success-default)}.toast__icon{display:inline-flex;margin-top:calc(-1 * var(--s-space-2));margin-right:0.625rem;flex-shrink:0}.toast__icon ::part(icon){color:var(--s-icon-on-status)}@media (min-width: 992px) and (max-width: 1439px) and (hover: hover),(min-width: 1440px){.toast__icon{margin-top:0}}.toast__content{flex-grow:1;line-height:var(--s-line-height-base);text-align:left;align-self:flex-start}@media (min-width: 992px) and (max-width: 1439px) and (hover: hover),(min-width: 1440px){.toast__content{font-size:var(--s-font-size-sm);line-height:var(--s-line-height-sm)}}.toast__content ::part(link){color:var(--text-default)}.toast__dismiss-button{display:inline-flex;min-width:1.5rem;height:1.5rem;margin-top:calc(-1 * var(--s-space-2));margin-left:var(--s-space-16);padding:0;flex-shrink:0;justify-content:center;align-items:center;border:none;color:var(--s-text-on-status);background-color:transparent;font:inherit;font-weight:var(--s-font-weight-semibold);cursor:pointer}.toast__dismiss-button ::part(icon){color:var(--s-icon-on-status)}";
6
6
 
7
7
  const SwirlToast = class {
8
8
  constructor(hostRef) {
@@ -61,7 +61,7 @@ const SwirlToast = class {
61
61
  }
62
62
  render() {
63
63
  const className = classnames("toast", `toast--intent-${this.intent}`);
64
- return (h(Host, null, h("div", { class: className }, this.icon && (h("span", { class: "toast__icon", innerHTML: this.icon, part: "toast__icon", ref: (el) => (this.iconEl = el) })), h("span", { class: "toast__content", part: "toast__content" }, this.content), h("button", { "aria-label": this.dismissLabel || this.accessibleDismissLabel, class: "toast__dismiss-button", onClick: this.onDismiss, type: "button" }, this.dismissLabel, !Boolean(this.dismissLabel) && (h("swirl-icon-close", { ref: (el) => (this.dismissIconEl = el) }))))));
64
+ return (h(Host, null, h("div", { class: className }, this.icon && (h("span", { class: "toast__icon", innerHTML: this.icon, part: "toast__icon", ref: (el) => (this.iconEl = el) })), h("span", { class: "toast__content", innerHTML: this.content, part: "toast__content" }), h("button", { "aria-label": this.dismissLabel || this.accessibleDismissLabel, class: "toast__dismiss-button", onClick: this.onDismiss, type: "button" }, this.dismissLabel, !Boolean(this.dismissLabel) && (h("swirl-icon-close", { ref: (el) => (this.dismissIconEl = el) }))))));
65
65
  }
66
66
  static get watchers() { return {
67
67
  "duration": ["watchDuration"]
@@ -0,0 +1 @@
1
+ import{r as i,c as t,h as a,H as s}from"./p-05c15d47.js";import{c as e}from"./p-b7898321.js";import{d as n}from"./p-438b3941.js";const o=class{constructor(a){i(this,a),this.setPage=t(this,"setPage",7),this.setPageSize=t(this,"setPageSize",7),this.onFocusPageInput=i=>{i.target.select()},this.onFirstPageButtonClick=()=>{1!==this.page&&this.setPage.emit(1)},this.onLastPageButtonClick=()=>{this.page!==this.pages&&this.setPage.emit(this.pages)},this.onPrevButtonClick=()=>{const i=Math.max(this.page-1,1);this.page!==i&&this.setPage.emit(i)},this.onNextButtonClick=()=>{const i=Math.min(this.page+1,this.pages);this.page!==i&&this.setPage.emit(i)},this.onPageInput=()=>{let i=+this.pageInput.value;isNaN(i)?(i=this.page,this.pageInput.value=String(i)):i>this.pages?(i=this.pages,this.pageInput.value=String(i)):i<1&&(i=1,this.pageInput.value=String(i)),this.page!==i&&this.onPageUpdate(i)},this.onPageUpdate=n((i=>{this.setPage.emit(i)}),500),this.onPageSizeSelect=i=>{const t=+i.target.value;this.pageSize!==t&&this.setPageSize.emit(t)},this.firstPageButtonLabel="First page",this.lastPageButtonLabel="Last page",this.label=void 0,this.nextButtonLabel="Next page",this.page=void 0,this.pageLabel="out of",this.pages=void 0,this.pageSelectLabel="Select a page",this.pageSize=10,this.pageSizeOptions=[10,25,50],this.pageSizeSelectLabel="Items per page:",this.prevButtonLabel="Previous page",this.showPageSizeSelect=void 0,this.variant="default"}render(){const i="simple"!==this.variant,t="advanced"===this.variant,n=`${this.page} ${this.pageLabel} ${this.pages}`,o=e("pagination",`pagination--variant-${this.variant}`);return a(s,null,a("nav",{"aria-label":this.label,class:o},a("ul",{class:"pagination__list",part:"pagination__list"},this.showPageSizeSelect&&a("li",{class:"pagination__list-item"},a("label",{class:"pagination__page-size-selection"},a("swirl-text",null,this.pageSizeSelectLabel),a("swirl-stack",{align:"center",class:"pagination__page-size-select-container",orientation:"horizontal"},a("select",{class:"pagination__page-size-select",onChange:this.onPageSizeSelect},this.pageSizeOptions.map((i=>a("option",{key:i,selected:i===this.pageSize,value:i},i)))),a("swirl-icon-expand-more",{"aria-hidden":"true",class:"pagination__page-size-select-icon",size:16})))),a("li",{class:"pagination__list-item"},a("swirl-button",{class:"pagination__first-page-button",disabled:this.page<=1,hideLabel:!0,icon:"<swirl-icon-double-arrow-left></swirl-icon-double-arrow-left>",intent:"primary",label:this.firstPageButtonLabel,onClick:this.onFirstPageButtonClick})),a("li",{class:"pagination__list-item"},a("swirl-button",{class:"pagination__prev-button",disabled:this.page<=1,hideLabel:!0,icon:"<swirl-icon-chevron-left></swirl-icon-chevron-left>",intent:"primary",label:this.prevButtonLabel,onClick:this.onPrevButtonClick})),i?a("li",{class:"pagination__list-item pagination__page-label"},a("span",null,t?a("span",{"aria-current":"page",class:"pagination__advanced-label"},a("input",{"aria-label":this.pageSelectLabel,class:"pagination__page-input",onFocus:this.onFocusPageInput,onInput:this.onPageInput,ref:i=>this.pageInput=i,type:"text",value:this.page}),a("span",{"aria-hidden":"true"},this.pageLabel," ",this.pages)):a("span",{"aria-current":"page"},n))):a("li",{class:"pagination__list-item"},a("swirl-visually-hidden",null,a("span",{"aria-current":"page"},n))),a("li",{class:"pagination__list-item"},a("swirl-button",{class:"pagination__next-button",disabled:this.page>=this.pages,hideLabel:!0,icon:"<swirl-icon-chevron-right></swirl-icon-chevron-right>",iconPosition:"end",intent:"primary",label:this.nextButtonLabel,onClick:this.onNextButtonClick})),a("li",{class:"pagination__list-item"},a("swirl-button",{class:"pagination__last-page-button",disabled:this.page>=this.pages,hideLabel:!0,icon:"<swirl-icon-double-arrow-right></swirl-icon-double-arrow-right>",intent:"primary",label:this.lastPageButtonLabel,onClick:this.onLastPageButtonClick})))))}};o.style=":host{display:block;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}:host *{box-sizing:border-box}.pagination{display:block;width:100%}.pagination--variant-simple .pagination__list{gap:0}.pagination__list{display:flex;margin:0;padding:0;justify-content:flex-start;align-items:center;line-height:var(--s-line-height-base);list-style:none}@media (min-width: 992px) and (max-width: 1439px) and (hover: hover),(min-width: 1440px){.pagination__list{font-size:var(--s-font-size-sm);line-height:var(--s-line-height-sm)}}.pagination__page-size-selection{display:flex;padding-right:var(--s-space-24);flex-shrink:0;align-items:center;color:var(--s-interactive-primary-default);white-space:nowrap;gap:var(--s-space-8)}.pagination__page-size-select-container{position:relative}.pagination__page-size-select{padding-right:calc(1rem + var(--s-space-4));border:none;color:var(--s-interactive-primary-default);background-color:transparent;font:inherit;font-weight:var(--s-font-weight-medium);line-height:var(--s-line-height-base);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none}.pagination__page-size-select:focus:not(:focus-visible){outline:none}.pagination__page-size-select:focus-visible{outline-color:var(--s-focus-default)}@media (min-width: 992px) and (max-width: 1439px) and (hover: hover),(min-width: 1440px){.pagination__page-size-select{font-size:var(--s-font-size-sm);line-height:var(--s-line-height-sm)}}.pagination__page-size-select-icon{position:absolute;top:50%;right:0;transform:translateY(-50%);pointer-events:none}.pagination__page-label{padding-right:var(--s-space-8);padding-left:var(--s-space-8)}.pagination__advanced-label{display:flex;align-items:center;white-space:nowrap;gap:var(--s-space-8)}.pagination__page-input{display:inline-flex;width:3rem;padding-top:var(--s-space-8);padding-right:var(--s-space-8);padding-bottom:var(--s-space-8);padding-left:var(--s-space-8);border:none;border-radius:var(--s-border-radius-sm);background-color:transparent;font:inherit;line-height:var(--s-line-height-base);text-align:center;box-shadow:inset 0 0 0 var(--s-border-width-default) var(--s-border-strong)}.pagination__page-input:focus:not(:focus-visible){outline:none}.pagination__page-input:focus-visible{outline-color:var(--s-focus-default)}@media (min-width: 992px) and (max-width: 1439px) and (hover: hover),(min-width: 1440px){.pagination__page-input{font-size:var(--s-font-size-sm);line-height:var(--s-line-height-sm)}}";export{o as swirl_pagination}
@@ -0,0 +1 @@
1
+ import{r as s,c as r,h as e,H as a}from"./p-05c15d47.js";import{c as i}from"./p-b7898321.js";import{g as t}from"./p-438b3941.js";const c=class{constructor(e){s(this,e),this.inputBlur=r(this,"inputBlur",7),this.inputFocus=r(this,"inputFocus",7),this.inputInput=r(this,"inputInput",7),this.valueChange=r(this,"valueChange",7),this.desktopMediaQuery=t(),this.desktopMediaQueryHandler=s=>{this.forceIconProps(s.matches)},this.clear=()=>{this.input.value="",this.input.focus(),this.valueChange.emit("")},this.onBlur=s=>{this.inputBlur.emit(s)},this.onChange=s=>{this.valueChange.emit(s.target.value)},this.onFocus=s=>{this.inputFocus.emit(s)},this.onInput=s=>{this.inputInput.emit(s.target.value)},this.autoFocus=void 0,this.clearButtonLabel="Clear search term",this.disabled=void 0,this.inputName=void 0,this.inputId=void 0,this.label=void 0,this.placeholder="Search …",this.value=void 0,this.variant="filled"}componentDidLoad(){var s,r;this.forceIconProps(this.desktopMediaQuery.matches),null===(r=(s=this.desktopMediaQuery).addEventListener)||void 0===r||r.call(s,"change",this.desktopMediaQueryHandler)}disconnectedCallback(){var s,r;null===(r=(s=this.desktopMediaQuery).removeEventListener)||void 0===r||r.call(s,"change",this.desktopMediaQueryHandler)}forceIconProps(s){if(!Boolean(this.iconEl))return;const r=this.iconEl.children[0];null==r||r.setAttribute("size",s?"20":"24")}onKeyDown(s){"KeyK"!==s.code&&"Slash"!==s.code||!s.ctrlKey&&!s.metaKey||this.input.focus()}render(){const s=i("search",`search--variant-${this.variant}`,{"search--disabled":this.disabled});return e(a,null,e("span",{class:s,ref:s=>this.iconEl=s},e("swirl-icon-search",{class:"search__icon"}),e("input",{"aria-disabled":this.disabled?"true":void 0,"aria-label":this.label,autoComplete:"off",autoFocus:this.autoFocus,class:"search__input",disabled:this.disabled,id:this.inputId,inputMode:"search",name:this.inputName,onBlur:this.onBlur,onChange:this.onChange,onFocus:this.onFocus,onInput:this.onInput,placeholder:this.placeholder,ref:s=>this.input=s,type:"search",value:this.value}),!this.disabled&&e("button",{"aria-label":this.clearButtonLabel,class:"search__clear-button",onClick:this.clear,type:"button"},e("swirl-icon-cancel",null))))}};c.style=".sc-swirl-search-h{display:flex;width:100%}.sc-swirl-search-h *.sc-swirl-search{box-sizing:border-box}.search.sc-swirl-search{position:relative;display:flex;width:100%}.search--variant-outline.sc-swirl-search .search__input.sc-swirl-search{background-color:transparent;box-shadow:inset 0 0 0 var(--s-border-width-default) var(--s-border-strong)}.search--disabled.sc-swirl-search .search__icon.sc-swirl-search{color:var(--s-icon-disabled)}.search--disabled.sc-swirl-search .search__input.sc-swirl-search{color:var(--s-text-disabled)}.search--disabled.sc-swirl-search .search__input.sc-swirl-search::-moz-placeholder{color:var(--s-text-disabled)}.search--disabled.sc-swirl-search .search__input.sc-swirl-search::placeholder{color:var(--s-text-disabled)}.search__icon.sc-swirl-search{position:absolute;top:50%;left:var(--s-space-12);display:inline-flex;color:var(--s-icon-default);transform:translateY(-50%)}.search__input.sc-swirl-search{width:100%;height:2.5rem;padding-top:var(--s-space-8);padding-right:calc(var(--s-space-12) + 1.5rem + var(--s-space-8));padding-bottom:var(--s-space-8);padding-left:calc(var(--s-space-12) + 1.5rem + var(--s-space-8));border:none;border-radius:var(--s-border-radius-base);color:var(--s-text-default);background-color:var(--s-surface-raised-default);font:inherit;line-height:var(--s-line-height-base);caret-color:var(--s-border-highlight)}.search__input.sc-swirl-search:focus:not(:focus-visible){outline:none}.search__input.sc-swirl-search:focus-visible{outline-color:var(--s-focus-default)}.search__input.sc-swirl-search::-moz-placeholder{color:var(--s-text-subdued)}.search__input.sc-swirl-search::placeholder{color:var(--s-text-subdued)}.search__input.sc-swirl-search::-webkit-search-decoration,.search__input.sc-swirl-search::-webkit-search-cancel-button,.search__input.sc-swirl-search::-webkit-search-results-button,.search__input.sc-swirl-search::-webkit-search-results-decoration{-webkit-appearance:none;appearance:none}.search__input.sc-swirl-search:not(:-moz-placeholder-shown)+.search__clear-button.sc-swirl-search{display:inline-flex}.search__input.sc-swirl-search:not(:placeholder-shown)+.search__clear-button.sc-swirl-search{display:inline-flex}@media (min-width: 992px) and (max-width: 1439px) and (hover: hover),(min-width: 1440px){.search__input.sc-swirl-search{height:2.25rem;padding-left:calc(var(--s-space-8) + 1.5rem + var(--s-space-8));font-size:var(--s-font-size-sm);line-height:var(--s-line-height-sm)}}.search__clear-button.sc-swirl-search{position:absolute;top:50%;right:var(--s-space-12);display:none;padding:0;border:none;color:var(--s-icon-default);background-color:transparent;cursor:pointer;transform:translateY(-50%)}";export{c as swirl_search}
@@ -0,0 +1 @@
1
+ import{r as t,c as s,h as i,H as o}from"./p-05c15d47.js";import{c as a}from"./p-b7898321.js";import{g as n}from"./p-438b3941.js";const r=class{constructor(i){t(this,i),this.dismiss=s(this,"dismiss",7),this.desktopMediaQuery=n(),this.desktopMediaQueryHandler=t=>{this.forceIconProps(t.matches)},this.onDismiss=()=>{this.dismiss.emit(this.toastId)},this.accessibleDismissLabel="Dismiss",this.content=void 0,this.dismissLabel=void 0,this.duration=void 0,this.icon=void 0,this.intent="default",this.toastId=void 0}watchDuration(){this.startTimer()}componentDidLoad(){var t,s;this.startTimer(),this.forceIconProps(this.desktopMediaQuery.matches),null===(s=(t=this.desktopMediaQuery).addEventListener)||void 0===s||s.call(t,"change",this.desktopMediaQueryHandler)}disconnectedCallback(){var t,s;null===(s=(t=this.desktopMediaQuery).removeEventListener)||void 0===s||s.call(t,"change",this.desktopMediaQueryHandler)}forceIconProps(t){var s;const i=null===(s=this.iconEl)||void 0===s?void 0:s.children[0],o=this.dismissIconEl;null==i||i.setAttribute("size",t?"20":"24"),null==o||o.setAttribute("size",t?"20":"24")}startTimer(){this.clearTimer(),void 0!==this.duration&&(this.timeout=setTimeout((()=>{this.dismiss.emit(this.toastId)}),this.duration))}clearTimer(){Boolean(this.timeout)&&(clearTimeout(this.timeout),this.timeout=void 0)}render(){const t=a("toast",`toast--intent-${this.intent}`);return i(o,null,i("div",{class:t},this.icon&&i("span",{class:"toast__icon",innerHTML:this.icon,part:"toast__icon",ref:t=>this.iconEl=t}),i("span",{class:"toast__content",innerHTML:this.content,part:"toast__content"}),i("button",{"aria-label":this.dismissLabel||this.accessibleDismissLabel,class:"toast__dismiss-button",onClick:this.onDismiss,type:"button"},this.dismissLabel,!Boolean(this.dismissLabel)&&i("swirl-icon-close",{ref:t=>this.dismissIconEl=t}))))}static get watchers(){return{duration:["watchDuration"]}}};r.style=":host{display:flex}:host *{box-sizing:border-box}.toast{display:flex;width:100%;max-width:28rem;padding:var(--s-space-16);border-radius:var(--s-border-radius-sm);color:var(--s-text-on-status);background-color:var(--s-surface-neutral-default);box-shadow:var(--s-shadow-level-2)}.toast--intent-critical{background-color:var(--s-surface-critical-default)}.toast--intent-success{background-color:var(--s-surface-success-default)}.toast__icon{display:inline-flex;margin-top:calc(-1 * var(--s-space-2));margin-right:0.625rem;flex-shrink:0}.toast__icon ::part(icon){color:var(--s-icon-on-status)}@media (min-width: 992px) and (max-width: 1439px) and (hover: hover),(min-width: 1440px){.toast__icon{margin-top:0}}.toast__content{flex-grow:1;line-height:var(--s-line-height-base);text-align:left;align-self:flex-start}@media (min-width: 992px) and (max-width: 1439px) and (hover: hover),(min-width: 1440px){.toast__content{font-size:var(--s-font-size-sm);line-height:var(--s-line-height-sm)}}.toast__content ::part(link){color:var(--text-default)}.toast__dismiss-button{display:inline-flex;min-width:1.5rem;height:1.5rem;margin-top:calc(-1 * var(--s-space-2));margin-left:var(--s-space-16);padding:0;flex-shrink:0;justify-content:center;align-items:center;border:none;color:var(--s-text-on-status);background-color:transparent;font:inherit;font-weight:var(--s-font-weight-semibold);cursor:pointer}.toast__dismiss-button ::part(icon){color:var(--s-icon-on-status)}";export{r as swirl_toast}