@haiilo/catalyst 7.1.0 → 8.0.1

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/dist/catalyst/catalyst.css +3 -31
  2. package/dist/catalyst/catalyst.esm.js +1 -1
  3. package/dist/catalyst/index.esm.js +1 -1
  4. package/dist/catalyst/index.esm.js.map +1 -1
  5. package/dist/catalyst/{p-44042184.entry.js → p-8a447e2d.entry.js} +4 -4
  6. package/dist/catalyst/p-8a447e2d.entry.js.map +1 -0
  7. package/dist/catalyst/scss/core/_base.scss +1 -1
  8. package/dist/catalyst/scss/core/_typography.scss +2 -0
  9. package/dist/catalyst/scss/index.scss +3 -1
  10. package/dist/catalyst/scss/utils/_typography.mixins.scss +1 -2
  11. package/dist/cjs/cat-alert_26.cjs.entry.js +1 -1
  12. package/dist/cjs/cat-alert_26.cjs.entry.js.map +1 -1
  13. package/dist/cjs/index.cjs.js +30 -8
  14. package/dist/cjs/index.cjs.js.map +1 -1
  15. package/dist/collection/components/cat-datepicker-inline/cat-datepicker-inline.css +0 -2
  16. package/dist/collection/components/cat-input/cat-input.css +2 -1
  17. package/dist/collection/components/cat-select/connectors.js +28 -8
  18. package/dist/collection/components/cat-select/connectors.js.map +1 -1
  19. package/dist/collection/index.js +1 -1
  20. package/dist/collection/index.js.map +1 -1
  21. package/dist/collection/scss/core/_base.scss +1 -1
  22. package/dist/collection/scss/core/_typography.scss +2 -0
  23. package/dist/collection/scss/index.scss +3 -1
  24. package/dist/collection/scss/utils/_typography.mixins.scss +1 -2
  25. package/dist/components/cat-datepicker-inline.js +1 -1
  26. package/dist/components/cat-datepicker-inline.js.map +1 -1
  27. package/dist/components/cat-dropdown2.js.map +1 -1
  28. package/dist/components/index.js +29 -9
  29. package/dist/components/index.js.map +1 -1
  30. package/dist/esm/cat-alert_26.entry.js +1 -1
  31. package/dist/esm/cat-alert_26.entry.js.map +1 -1
  32. package/dist/esm/index.js +29 -9
  33. package/dist/esm/index.js.map +1 -1
  34. package/dist/types/components/cat-select/connectors.d.ts +24 -1
  35. package/dist/types/index.d.ts +1 -1
  36. package/package.json +2 -2
  37. package/dist/catalyst/p-44042184.entry.js.map +0 -1
@@ -363,27 +363,6 @@
363
363
  position: absolute;
364
364
  }
365
365
 
366
- /*
367
- * 1. Remove animations when motion is reduced (opinionated).
368
- * 2. Remove fixed background attachments when motion is reduced (opinionated).
369
- * 3. Remove timed scrolling behaviors when motion is reduced (opinionated).
370
- * 4. Remove transitions when motion is reduced (opinionated).
371
- */
372
-
373
- @media (prefers-reduced-motion: reduce) {
374
- *,
375
- ::before,
376
- ::after {
377
- animation-delay: -1ms !important; /* 1 */
378
- animation-duration: 1ms !important; /* 1 */
379
- animation-iteration-count: 1 !important; /* 1 */
380
- background-attachment: initial !important; /* 2 */
381
- scroll-behavior: auto !important; /* 3 */
382
- transition-delay: 0s !important; /* 4 */
383
- transition-duration: 0s !important; /* 4 */
384
- }
385
- }
386
-
387
366
  /*!
388
367
  * Toastify js 1.12.0
389
368
  * https://github.com/apvarun/toastify-js
@@ -1320,7 +1299,6 @@ span.flatpickr-weekday {
1320
1299
  }
1321
1300
 
1322
1301
  .flatpickr-current-month {
1323
- font-family: var(--cat-font-family-head), system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, var(--cat-font-family-emoji, ""), "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
1324
1302
  font-size: 1.125rem;
1325
1303
  line-height: 1.5rem;
1326
1304
  font-weight: var(--cat-font-weight-head, 600);
@@ -1513,7 +1491,6 @@ span.flatpickr-weekday {
1513
1491
  .flatpickr-time .flatpickr-time-separator,
1514
1492
  .flatpickr-time .flatpickr-am-pm {
1515
1493
  margin: 0 0.25rem;
1516
- font-family: var(--cat-font-family-head), system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, var(--cat-font-family-emoji, ""), "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
1517
1494
  font-size: 1.125rem;
1518
1495
  line-height: 1.5rem;
1519
1496
  font-weight: 400;
@@ -1592,7 +1569,7 @@ body {
1592
1569
  font-size: 0.9375rem;
1593
1570
  line-height: 1.25rem;
1594
1571
  font-weight: var(--cat-font-weight-body, 400);
1595
- font-family: var(--cat-font-family-body, "Lato"), system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, var(--cat-font-family-emoji, ""), "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
1572
+ font-family: var(--cat-font-family-base, "Lato"), system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, var(--cat-font-family-emoji, ""), "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
1596
1573
  color: rgb(var(--cat-font-color-base, 0, 0, 0));
1597
1574
  }
1598
1575
 
@@ -1700,7 +1677,6 @@ nav .cat-nav-text > :last-child {
1700
1677
  margin-bottom: 0 !important;
1701
1678
  }
1702
1679
  nav .cat-nav-head {
1703
- font-family: var(--cat-font-family-head), system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, var(--cat-font-family-emoji, ""), "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
1704
1680
  font-size: 0.9375rem;
1705
1681
  line-height: 1.25rem;
1706
1682
  font-weight: var(--cat-font-weight-head, 600);
@@ -1773,7 +1749,6 @@ nav .cat-nav-head {
1773
1749
 
1774
1750
  :where(h1),
1775
1751
  .cat-h1 {
1776
- font-family: var(--cat-font-family-head), system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, var(--cat-font-family-emoji, ""), "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
1777
1752
  font-size: 1.75rem;
1778
1753
  line-height: 2rem;
1779
1754
  font-weight: var(--cat-font-weight-head, 600);
@@ -1782,7 +1757,6 @@ nav .cat-nav-head {
1782
1757
 
1783
1758
  :where(h2),
1784
1759
  .cat-h2 {
1785
- font-family: var(--cat-font-family-head), system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, var(--cat-font-family-emoji, ""), "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
1786
1760
  font-size: 1.5rem;
1787
1761
  line-height: 1.75rem;
1788
1762
  font-weight: var(--cat-font-weight-head, 600);
@@ -1791,7 +1765,6 @@ nav .cat-nav-head {
1791
1765
 
1792
1766
  :where(h3),
1793
1767
  .cat-h3 {
1794
- font-family: var(--cat-font-family-head), system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, var(--cat-font-family-emoji, ""), "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
1795
1768
  font-size: 1.25rem;
1796
1769
  line-height: 1.5rem;
1797
1770
  font-weight: var(--cat-font-weight-head, 600);
@@ -1800,7 +1773,6 @@ nav .cat-nav-head {
1800
1773
 
1801
1774
  :where(h4),
1802
1775
  .cat-h4 {
1803
- font-family: var(--cat-font-family-head), system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, var(--cat-font-family-emoji, ""), "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
1804
1776
  font-size: 1.125rem;
1805
1777
  line-height: 1.5rem;
1806
1778
  font-weight: var(--cat-font-weight-head, 600);
@@ -1809,7 +1781,6 @@ nav .cat-nav-head {
1809
1781
 
1810
1782
  :where(h5),
1811
1783
  .cat-h5 {
1812
- font-family: var(--cat-font-family-head), system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, var(--cat-font-family-emoji, ""), "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
1813
1784
  font-size: 0.9375rem;
1814
1785
  line-height: 1.25rem;
1815
1786
  font-weight: var(--cat-font-weight-head, 600);
@@ -1818,7 +1789,6 @@ nav .cat-nav-head {
1818
1789
 
1819
1790
  :where(h6),
1820
1791
  .cat-h6 {
1821
- font-family: var(--cat-font-family-head), system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, var(--cat-font-family-emoji, ""), "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
1822
1792
  font-size: 0.875rem;
1823
1793
  line-height: 1rem;
1824
1794
  font-weight: var(--cat-font-weight-head, 600);
@@ -2065,6 +2035,7 @@ code {
2065
2035
  .cat-article :where(h1, h2, h3),
2066
2036
  .cat-article :is(.cat-h1, .cat-h2, .cat-h3) {
2067
2037
  color: rgb(var(--cat-font-color-head));
2038
+ font-family: var(--cat-font-family-head), system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, var(--cat-font-family-emoji, ""), "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
2068
2039
  margin-bottom: calc(1rem * var(--cat-article-spacer, 1));
2069
2040
  }
2070
2041
  .cat-article :where(h1, h2, h3):has(+ h1, + h2, + h3, + h4, + h5, + h6, + .cat-h1, + .cat-h2, + .cat-h3, + .cat-h4, + .cat-h5, + .cat-h6),
@@ -2074,6 +2045,7 @@ code {
2074
2045
  .cat-article :where(h4, h5, h6),
2075
2046
  .cat-article :is(.cat-h4, .cat-h5, .cat-h6) {
2076
2047
  color: rgb(var(--cat-font-color-head));
2048
+ font-family: var(--cat-font-family-head), system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, var(--cat-font-family-emoji, ""), "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
2077
2049
  margin-bottom: calc(0.5rem * var(--cat-article-spacer, 1));
2078
2050
  }
2079
2051
  .cat-article :where(p, ol, ul, dl, blockquote, figure, pre, table, cat-alert, cat-card):not(:last-child) {
@@ -1,2 +1,2 @@
1
- import{p as e,b as a}from"./p-376b504c.js";export{s as setNonce}from"./p-376b504c.js";const t=()=>{const a=import.meta.url;const t={};if(a!==""){t.resourcesUrl=new URL(".",a).href}return e(t)};t().then((e=>a([["p-44042184",[[0,"cat-select-demo"],[1,"cat-datepicker",{requiredMarker:[1,"required-marker"],horizontal:[4],autoComplete:[1,"auto-complete"],clearable:[4],disabled:[4],hint:[1],icon:[1],iconRight:[4,"icon-right"],identifier:[1],label:[1],labelHidden:[4,"label-hidden"],max:[1],min:[1],mode:[1],name:[1],placeholder:[1],textPrefix:[1,"text-prefix"],textSuffix:[1,"text-suffix"],readonly:[4],required:[4],step:[2],value:[1025],errors:[4],errorUpdate:[8,"error-update"],nativeAttributes:[16],nativePickerAttributes:[16],doFocus:[64],doBlur:[64]},null,{value:["onValueChanged"],disabled:["onDisabledChanged"],readonly:["onDisabledChanged"],min:["onMinChanged"],max:["onMinChanged"]}],[1,"cat-pagination",{page:[1026],pageCount:[2,"page-count"],activePadding:[2,"active-padding"],sidePadding:[2,"side-padding"],size:[1],variant:[1],round:[4],compact:[4],iconPrev:[1,"icon-prev"],iconNext:[1,"icon-next"]}],[1,"cat-tabs",{activeTab:[1537,"active-tab"],tabsAlign:[1,"tabs-align"],tabs:[32],setActive:[64],setActiveIndex:[64]},[[0,"keydown","onKeydown"]],{activeTab:["onActiveTabChange"]}],[1,"cat-alert",{color:[513],icon:[1],noIcon:[4,"no-icon"]}],[1,"cat-textarea",{requiredMarker:[1,"required-marker"],horizontal:[4],disabled:[4],hint:[1],identifier:[1],label:[1],labelHidden:[4,"label-hidden"],maxLength:[2,"max-length"],minLength:[2,"min-length"],name:[1],placeholder:[1],readonly:[4],required:[4],rows:[2],value:[1025],errors:[4],errorUpdate:[8,"error-update"],nativeAttributes:[16],hasSlottedLabel:[32],hasSlottedHint:[32],errorMap:[32],doFocus:[64],doBlur:[64],clear:[64]},null,{errors:["onErrorsChanged"]}],[1,"cat-badge",{variant:[513],color:[513],size:[513],round:[516],pulse:[516]}],[1,"cat-button-group",{a11yLabel:[1,"a11y-label"]}],[1,"cat-card"],[1,"cat-datepicker-inline",{disabled:[4],max:[1],min:[1],mode:[1],readonly:[4],step:[2],value:[1025],nativePickerAttributes:[16]},null,{value:["onValueChanged"],disabled:["onDisabledChanged"],readonly:["onDisabledChanged"]}],[1,"cat-form-group",{requiredMarker:[1,"required-marker"],horizontal:[4],labelSize:[1,"label-size"]},null,{requiredMarker:["onRequiredMarkerChanged"],horizontal:["onHorizontalChanged"]}],[1,"cat-radio",{checked:[1028],disabled:[4],identifier:[1],label:[1],labelHidden:[4,"label-hidden"],name:[1],required:[4],value:[1],hint:[1],labelLeft:[4,"label-left"],nativeAttributes:[16],hasSlottedLabel:[32],hasSlottedHint:[32],doFocus:[64],doBlur:[64]}],[1,"cat-radio-group",{name:[1],value:[1025],disabled:[4],a11yLabel:[1,"a11y-label"],labelLeft:[4,"label-left"]},[[0,"keydown","onKeydown"],[0,"input","onInput"],[2,"focus","onFocus"],[2,"blur","onBlur"]],{name:["onNameChanged"],value:["onValueChanged"],disabled:["onDisabledChanged"],labelLeft:["onLabelLeftChanged"]}],[1,"cat-tab",{label:[513],icon:[513],iconOnly:[520,"icon-only"],iconRight:[516,"icon-right"],url:[513],urlTarget:[513,"url-target"],deactivated:[516],nativeAttributes:[16]},[[0,"click","onClick"]]],[1,"cat-toggle",{checked:[1028],disabled:[4],identifier:[1],label:[1],labelHidden:[4,"label-hidden"],name:[1],required:[4],value:[8],noValue:[8,"no-value"],resolvedValue:[1032,"resolved-value"],hint:[1],labelLeft:[4,"label-left"],nativeAttributes:[16],hasSlottedLabel:[32],hasSlottedHint:[32],doFocus:[64],doBlur:[64]}],[1,"cat-tooltip",{content:[1],disabled:[4],placement:[1],round:[4],size:[1],showDelay:[2,"show-delay"],hideDelay:[2,"hide-delay"],longTouchDuration:[2,"long-touch-duration"],hasSlottedContent:[32]},[[0,"keydown","handleKeyDown"]]],[1,"cat-select",{requiredMarker:[1,"required-marker"],horizontal:[4],multiple:[4],debounce:[2],placement:[1],value:[1025],disabled:[4],placeholder:[1],hint:[1],identifier:[1],label:[1],name:[1],labelHidden:[4,"label-hidden"],required:[4],clearable:[4],tags:[4],tagHint:[1,"tag-hint"],noItems:[1,"no-items"],errors:[4],errorUpdate:[8,"error-update"],nativeAttributes:[16],connector:[32],state:[32],hasSlottedLabel:[32],hasSlottedHint:[32],errorMap:[32],connect:[64]},[[0,"blur","onBlur"],[0,"keydown","onKeyDown"],[0,"keyup","onKeyUp"]],{connector:["onConnectorChanged"],value:["onValueChanged"],errors:["onErrorsChanged"],state:["onStateChanged"]}],[1,"cat-input",{requiredMarker:[1,"required-marker"],horizontal:[4],autoComplete:[1,"auto-complete"],clearable:[4],disabled:[4],hint:[1],icon:[1],iconRight:[4,"icon-right"],identifier:[1],label:[1],labelHidden:[4,"label-hidden"],max:[8],maxLength:[2,"max-length"],min:[8],minLength:[2,"min-length"],name:[1],placeholder:[1],textPrefix:[1,"text-prefix"],textSuffix:[1,"text-suffix"],readonly:[4],required:[4],round:[4],type:[1],value:[1025],errors:[4],errorUpdate:[8,"error-update"],nativeAttributes:[16],hasSlottedLabel:[32],hasSlottedHint:[32],errorMap:[32],doFocus:[64],doBlur:[64],clear:[64]},null,{errors:["onErrorsChanged"]}],[1,"cat-dropdown",{placement:[1],noAutoClose:[4,"no-auto-close"],overflow:[4],close:[64]},[[0,"catClick","clickHandler"]]],[1,"cat-avatar",{size:[1],round:[4],label:[1],initials:[1],src:[1],icon:[1],url:[1],urlTarget:[1,"url-target"],backgroundImage:[32]},null,{src:["onSrcChanged"]}],[1,"cat-checkbox",{checked:[1028],indeterminate:[1028],disabled:[4],identifier:[1],label:[1],labelHidden:[4,"label-hidden"],name:[1],required:[4],value:[8],noValue:[8,"no-value"],resolvedValue:[1032,"resolved-value"],hint:[1],labelLeft:[4,"label-left"],nativeAttributes:[16],hasSlottedLabel:[32],hasSlottedHint:[32],doFocus:[64],doBlur:[64]}],[1,"cat-scrollable",{noShadowX:[4,"no-shadow-x"],noShadowY:[4,"no-shadow-y"],noOverflowX:[4,"no-overflow-x"],noOverflowY:[4,"no-overflow-y"],noOverscroll:[4,"no-overscroll"],noScrolledInit:[4,"no-scrolled-init"],scrolledBuffer:[2,"scrolled-buffer"]}],[1,"cat-skeleton",{effect:[1],variant:[1],size:[1],lines:[2]}],[1,"cat-button",{variant:[1],color:[1],active:[4],size:[1],name:[1],value:[1],disabled:[4],loading:[4],submit:[4],noEllipsis:[4,"no-ellipsis"],round:[4],url:[1],urlTarget:[1,"url-target"],icon:[1],iconOnly:[8,"icon-only"],iconRight:[4,"icon-right"],buttonId:[1,"button-id"],a11yLabel:[1,"a11y-label"],a11yCurrent:[1,"a11y-current"],nativeAttributes:[16],nativeContentAttributes:[16],buttonGroupPosition:[1,"button-group-position"],_iconOnly:[32],doFocus:[64],doBlur:[64],doClick:[64]},[[0,"click","haltDisabledEvents"]],{iconOnly:["onIconOnlyChanged"]}],[1,"cat-spinner",{size:[1],a11yLabel:[1,"a11y-label"]}],[1,"cat-icon",{icon:[1],iconSrc:[1,"icon-src"],size:[1],a11yLabel:[1,"a11y-label"]}]]]],e)));
1
+ import{p as e,b as a}from"./p-376b504c.js";export{s as setNonce}from"./p-376b504c.js";const t=()=>{const a=import.meta.url;const t={};if(a!==""){t.resourcesUrl=new URL(".",a).href}return e(t)};t().then((e=>a([["p-8a447e2d",[[0,"cat-select-demo"],[1,"cat-datepicker",{requiredMarker:[1,"required-marker"],horizontal:[4],autoComplete:[1,"auto-complete"],clearable:[4],disabled:[4],hint:[1],icon:[1],iconRight:[4,"icon-right"],identifier:[1],label:[1],labelHidden:[4,"label-hidden"],max:[1],min:[1],mode:[1],name:[1],placeholder:[1],textPrefix:[1,"text-prefix"],textSuffix:[1,"text-suffix"],readonly:[4],required:[4],step:[2],value:[1025],errors:[4],errorUpdate:[8,"error-update"],nativeAttributes:[16],nativePickerAttributes:[16],doFocus:[64],doBlur:[64]},null,{value:["onValueChanged"],disabled:["onDisabledChanged"],readonly:["onDisabledChanged"],min:["onMinChanged"],max:["onMinChanged"]}],[1,"cat-pagination",{page:[1026],pageCount:[2,"page-count"],activePadding:[2,"active-padding"],sidePadding:[2,"side-padding"],size:[1],variant:[1],round:[4],compact:[4],iconPrev:[1,"icon-prev"],iconNext:[1,"icon-next"]}],[1,"cat-tabs",{activeTab:[1537,"active-tab"],tabsAlign:[1,"tabs-align"],tabs:[32],setActive:[64],setActiveIndex:[64]},[[0,"keydown","onKeydown"]],{activeTab:["onActiveTabChange"]}],[1,"cat-alert",{color:[513],icon:[1],noIcon:[4,"no-icon"]}],[1,"cat-textarea",{requiredMarker:[1,"required-marker"],horizontal:[4],disabled:[4],hint:[1],identifier:[1],label:[1],labelHidden:[4,"label-hidden"],maxLength:[2,"max-length"],minLength:[2,"min-length"],name:[1],placeholder:[1],readonly:[4],required:[4],rows:[2],value:[1025],errors:[4],errorUpdate:[8,"error-update"],nativeAttributes:[16],hasSlottedLabel:[32],hasSlottedHint:[32],errorMap:[32],doFocus:[64],doBlur:[64],clear:[64]},null,{errors:["onErrorsChanged"]}],[1,"cat-badge",{variant:[513],color:[513],size:[513],round:[516],pulse:[516]}],[1,"cat-button-group",{a11yLabel:[1,"a11y-label"]}],[1,"cat-card"],[1,"cat-datepicker-inline",{disabled:[4],max:[1],min:[1],mode:[1],readonly:[4],step:[2],value:[1025],nativePickerAttributes:[16]},null,{value:["onValueChanged"],disabled:["onDisabledChanged"],readonly:["onDisabledChanged"]}],[1,"cat-form-group",{requiredMarker:[1,"required-marker"],horizontal:[4],labelSize:[1,"label-size"]},null,{requiredMarker:["onRequiredMarkerChanged"],horizontal:["onHorizontalChanged"]}],[1,"cat-radio",{checked:[1028],disabled:[4],identifier:[1],label:[1],labelHidden:[4,"label-hidden"],name:[1],required:[4],value:[1],hint:[1],labelLeft:[4,"label-left"],nativeAttributes:[16],hasSlottedLabel:[32],hasSlottedHint:[32],doFocus:[64],doBlur:[64]}],[1,"cat-radio-group",{name:[1],value:[1025],disabled:[4],a11yLabel:[1,"a11y-label"],labelLeft:[4,"label-left"]},[[0,"keydown","onKeydown"],[0,"input","onInput"],[2,"focus","onFocus"],[2,"blur","onBlur"]],{name:["onNameChanged"],value:["onValueChanged"],disabled:["onDisabledChanged"],labelLeft:["onLabelLeftChanged"]}],[1,"cat-tab",{label:[513],icon:[513],iconOnly:[520,"icon-only"],iconRight:[516,"icon-right"],url:[513],urlTarget:[513,"url-target"],deactivated:[516],nativeAttributes:[16]},[[0,"click","onClick"]]],[1,"cat-toggle",{checked:[1028],disabled:[4],identifier:[1],label:[1],labelHidden:[4,"label-hidden"],name:[1],required:[4],value:[8],noValue:[8,"no-value"],resolvedValue:[1032,"resolved-value"],hint:[1],labelLeft:[4,"label-left"],nativeAttributes:[16],hasSlottedLabel:[32],hasSlottedHint:[32],doFocus:[64],doBlur:[64]}],[1,"cat-tooltip",{content:[1],disabled:[4],placement:[1],round:[4],size:[1],showDelay:[2,"show-delay"],hideDelay:[2,"hide-delay"],longTouchDuration:[2,"long-touch-duration"],hasSlottedContent:[32]},[[0,"keydown","handleKeyDown"]]],[1,"cat-select",{requiredMarker:[1,"required-marker"],horizontal:[4],multiple:[4],debounce:[2],placement:[1],value:[1025],disabled:[4],placeholder:[1],hint:[1],identifier:[1],label:[1],name:[1],labelHidden:[4,"label-hidden"],required:[4],clearable:[4],tags:[4],tagHint:[1,"tag-hint"],noItems:[1,"no-items"],errors:[4],errorUpdate:[8,"error-update"],nativeAttributes:[16],connector:[32],state:[32],hasSlottedLabel:[32],hasSlottedHint:[32],errorMap:[32],connect:[64]},[[0,"blur","onBlur"],[0,"keydown","onKeyDown"],[0,"keyup","onKeyUp"]],{connector:["onConnectorChanged"],value:["onValueChanged"],errors:["onErrorsChanged"],state:["onStateChanged"]}],[1,"cat-input",{requiredMarker:[1,"required-marker"],horizontal:[4],autoComplete:[1,"auto-complete"],clearable:[4],disabled:[4],hint:[1],icon:[1],iconRight:[4,"icon-right"],identifier:[1],label:[1],labelHidden:[4,"label-hidden"],max:[8],maxLength:[2,"max-length"],min:[8],minLength:[2,"min-length"],name:[1],placeholder:[1],textPrefix:[1,"text-prefix"],textSuffix:[1,"text-suffix"],readonly:[4],required:[4],round:[4],type:[1],value:[1025],errors:[4],errorUpdate:[8,"error-update"],nativeAttributes:[16],hasSlottedLabel:[32],hasSlottedHint:[32],errorMap:[32],doFocus:[64],doBlur:[64],clear:[64]},null,{errors:["onErrorsChanged"]}],[1,"cat-dropdown",{placement:[1],noAutoClose:[4,"no-auto-close"],overflow:[4],close:[64]},[[0,"catClick","clickHandler"]]],[1,"cat-avatar",{size:[1],round:[4],label:[1],initials:[1],src:[1],icon:[1],url:[1],urlTarget:[1,"url-target"],backgroundImage:[32]},null,{src:["onSrcChanged"]}],[1,"cat-checkbox",{checked:[1028],indeterminate:[1028],disabled:[4],identifier:[1],label:[1],labelHidden:[4,"label-hidden"],name:[1],required:[4],value:[8],noValue:[8,"no-value"],resolvedValue:[1032,"resolved-value"],hint:[1],labelLeft:[4,"label-left"],nativeAttributes:[16],hasSlottedLabel:[32],hasSlottedHint:[32],doFocus:[64],doBlur:[64]}],[1,"cat-scrollable",{noShadowX:[4,"no-shadow-x"],noShadowY:[4,"no-shadow-y"],noOverflowX:[4,"no-overflow-x"],noOverflowY:[4,"no-overflow-y"],noOverscroll:[4,"no-overscroll"],noScrolledInit:[4,"no-scrolled-init"],scrolledBuffer:[2,"scrolled-buffer"]}],[1,"cat-skeleton",{effect:[1],variant:[1],size:[1],lines:[2]}],[1,"cat-button",{variant:[1],color:[1],active:[4],size:[1],name:[1],value:[1],disabled:[4],loading:[4],submit:[4],noEllipsis:[4,"no-ellipsis"],round:[4],url:[1],urlTarget:[1,"url-target"],icon:[1],iconOnly:[8,"icon-only"],iconRight:[4,"icon-right"],buttonId:[1,"button-id"],a11yLabel:[1,"a11y-label"],a11yCurrent:[1,"a11y-current"],nativeAttributes:[16],nativeContentAttributes:[16],buttonGroupPosition:[1,"button-group-position"],_iconOnly:[32],doFocus:[64],doBlur:[64],doClick:[64]},[[0,"click","haltDisabledEvents"]],{iconOnly:["onIconOnlyChanged"]}],[1,"cat-spinner",{size:[1],a11yLabel:[1,"a11y-label"]}],[1,"cat-icon",{icon:[1],iconSrc:[1,"icon-src"],size:[1],a11yLabel:[1,"a11y-label"]}]]]],e)));
2
2
  //# sourceMappingURL=catalyst.esm.js.map
@@ -6,5 +6,5 @@ import{c as t,a as i,b as s,o}from"./p-85d057f0.js";export{C as CatI18nRegistry,
6
6
  *
7
7
  * Copyright (C) 2018 Varun A P
8
8
  */
9
- (function(i,s){if(t.exports){t.exports=s()}else{i.Toastify=s()}})(i,(function(t){var i=function(t){return new i.lib.init(t)},s="1.12.0";i.defaults={oldestFirst:true,text:"Toastify is awesome!",node:undefined,duration:3e3,selector:undefined,callback:function(){},destination:undefined,newWindow:false,close:false,gravity:"toastify-top",positionLeft:false,position:"",backgroundColor:"",avatar:"",className:"",stopOnFocus:true,onClick:function(){},offset:{x:0,y:0},escapeMarkup:true,ariaLive:"polite",style:{background:""}};i.lib=i.prototype={toastify:s,constructor:i,init:function(t){if(!t){t={}}this.options={};this.toastElement=null;this.options.text=t.text||i.defaults.text;this.options.node=t.node||i.defaults.node;this.options.duration=t.duration===0?0:t.duration||i.defaults.duration;this.options.selector=t.selector||i.defaults.selector;this.options.callback=t.callback||i.defaults.callback;this.options.destination=t.destination||i.defaults.destination;this.options.newWindow=t.newWindow||i.defaults.newWindow;this.options.close=t.close||i.defaults.close;this.options.gravity=t.gravity==="bottom"?"toastify-bottom":i.defaults.gravity;this.options.positionLeft=t.positionLeft||i.defaults.positionLeft;this.options.position=t.position||i.defaults.position;this.options.backgroundColor=t.backgroundColor||i.defaults.backgroundColor;this.options.avatar=t.avatar||i.defaults.avatar;this.options.className=t.className||i.defaults.className;this.options.stopOnFocus=t.stopOnFocus===undefined?i.defaults.stopOnFocus:t.stopOnFocus;this.options.onClick=t.onClick||i.defaults.onClick;this.options.offset=t.offset||i.defaults.offset;this.options.escapeMarkup=t.escapeMarkup!==undefined?t.escapeMarkup:i.defaults.escapeMarkup;this.options.ariaLive=t.ariaLive||i.defaults.ariaLive;this.options.style=t.style||i.defaults.style;if(t.backgroundColor){this.options.style.background=t.backgroundColor}return this},buildToast:function(){if(!this.options){throw"Toastify is not initialized"}var t=document.createElement("div");t.className="toastify on "+this.options.className;if(!!this.options.position){t.className+=" toastify-"+this.options.position}else{if(this.options.positionLeft===true){t.className+=" toastify-left";console.warn("Property `positionLeft` will be depreciated in further versions. Please use `position` instead.")}else{t.className+=" toastify-right"}}t.className+=" "+this.options.gravity;if(this.options.backgroundColor){console.warn('DEPRECATION NOTICE: "backgroundColor" is being deprecated. Please use the "style.background" property.')}for(var i in this.options.style){t.style[i]=this.options.style[i]}if(this.options.ariaLive){t.setAttribute("aria-live",this.options.ariaLive)}if(this.options.node&&this.options.node.nodeType===Node.ELEMENT_NODE){t.appendChild(this.options.node)}else{if(this.options.escapeMarkup){t.innerText=this.options.text}else{t.innerHTML=this.options.text}if(this.options.avatar!==""){var s=document.createElement("img");s.src=this.options.avatar;s.className="toastify-avatar";if(this.options.position=="left"||this.options.positionLeft===true){t.appendChild(s)}else{t.insertAdjacentElement("afterbegin",s)}}}if(this.options.close===true){var o=document.createElement("button");o.type="button";o.setAttribute("aria-label","Close");o.className="toast-close";o.innerHTML="&#10006;";o.addEventListener("click",function(t){t.stopPropagation();this.removeElement(this.toastElement);window.clearTimeout(this.toastElement.timeOutValue)}.bind(this));var n=window.innerWidth>0?window.innerWidth:screen.width;if((this.options.position=="left"||this.options.positionLeft===true)&&n>360){t.insertAdjacentElement("afterbegin",o)}else{t.appendChild(o)}}if(this.options.stopOnFocus&&this.options.duration>0){var a=this;t.addEventListener("mouseover",(function(i){window.clearTimeout(t.timeOutValue)}));t.addEventListener("mouseleave",(function(){t.timeOutValue=window.setTimeout((function(){a.removeElement(t)}),a.options.duration)}))}if(typeof this.options.destination!=="undefined"){t.addEventListener("click",function(t){t.stopPropagation();if(this.options.newWindow===true){window.open(this.options.destination,"_blank")}else{window.location=this.options.destination}}.bind(this))}if(typeof this.options.onClick==="function"&&typeof this.options.destination==="undefined"){t.addEventListener("click",function(t){t.stopPropagation();this.options.onClick()}.bind(this))}if(typeof this.options.offset==="object"){var r=e("x",this.options);var f=e("y",this.options);var c=this.options.position=="left"?r:"-"+r;var h=this.options.gravity=="toastify-top"?f:"-"+f;t.style.transform="translate("+c+","+h+")"}return t},showToast:function(){this.toastElement=this.buildToast();var t;if(typeof this.options.selector==="string"){t=document.getElementById(this.options.selector)}else if(this.options.selector instanceof HTMLElement||typeof ShadowRoot!=="undefined"&&this.options.selector instanceof ShadowRoot){t=this.options.selector}else{t=document.body}if(!t){throw"Root element is not defined"}var s=i.defaults.oldestFirst?t.firstChild:t.lastChild;t.insertBefore(this.toastElement,s);i.reposition();if(this.options.duration>0){this.toastElement.timeOutValue=window.setTimeout(function(){this.removeElement(this.toastElement)}.bind(this),this.options.duration)}return this},hideToast:function(){if(this.toastElement.timeOutValue){clearTimeout(this.toastElement.timeOutValue)}this.removeElement(this.toastElement)},removeElement:function(t){t.className=t.className.replace(" on","");window.setTimeout(function(){if(this.options.node&&this.options.node.parentNode){this.options.node.parentNode.removeChild(this.options.node)}if(t.parentNode){t.parentNode.removeChild(t)}this.options.callback.call(t);i.reposition()}.bind(this),400)}};i.reposition=function(){var t={top:15,bottom:15};var i={top:15,bottom:15};var s={top:15,bottom:15};var e=document.getElementsByClassName("toastify");var n;for(var a=0;a<e.length;a++){if(o(e[a],"toastify-top")===true){n="toastify-top"}else{n="toastify-bottom"}var r=e[a].offsetHeight;n=n.substr(9,n.length-1);var f=15;var c=window.innerWidth>0?window.innerWidth:screen.width;if(c<=360){e[a].style[n]=s[n]+"px";s[n]+=r+f}else{if(o(e[a],"toastify-left")===true){e[a].style[n]=t[n]+"px";t[n]+=r+f}else{e[a].style[n]=i[n]+"px";i[n]+=r+f}}}return this};function e(t,i){if(i.offset[t]){if(isNaN(i.offset[t])){return i.offset[t]}else{return i.offset[t]+"px"}}return"0px"}function o(t,i){if(!t||typeof i!=="string"){return false}else if(t.className&&t.className.trim().split(/\s+/gi).indexOf(i)>-1){return true}else{return false}}i.lib.init.prototype=i.lib;return i}))}));class a{constructor(){}static getInstance(){if(!a.instance){a.instance=new a}return a.instance}show(t,i){const s={};const e=this.getNode(t,s,i);const o=this.getOptions(e,s,i);const a=n(o);s.toast=a;a.showToast();return()=>a.hideToast()}getNode(t,i,e){const o=document.createElement("template");o.innerHTML=`<div class="cat-toastify-wrapper">\n ${e?.icon?`<cat-icon class="cat-toastify-icon" icon="${e.icon}" size="l"></cat-icon>`:""}\n <div class="cat-toastify-content">\n <div class="cat-toastify-inner"></div>\n ${e?.action?`<cat-button class="cat-toastify-action cat-button-pull" size="s" variant="text" color="primary">${e.action}</cat-button>`:""}\n </div>\n ${e?.autoClose===false?`<cat-button class="cat-toastify-close cat-button-pull" size="s" icon="$cat:notification-close" variant="text" icon-only="true" class="close" a11y-label="${s.t("notification.dismiss")}"></cat-button>`:""}\n </div>`;const n=o.content.firstElementChild;n.querySelector(".cat-toastify-close")?.addEventListener("click",(()=>i.toast?.hideToast()));n.querySelector(".cat-toastify-action")?.addEventListener("click",(()=>e?.onAction?.(i)));const a=n.querySelector(".cat-toastify-inner");if(a){if(typeof t!=="string"){a.replaceChildren(t)}else if(e?.escapeMarkup===false){a.innerHTML=t}else{a.innerText=t}}return n}getOptions(t,i,s){const[e,o]=s?.placement?.split("-")??["bottom","left"];const n=s?.duration??(s?.autoClose===false?-1:a.duration);return{gravity:e,position:o,node:t,duration:n,close:false,className:s?.mode==="light"?"cat-toastify":"cat-toastify cat-toastify-dark",stopOnFocus:true,onClick:()=>s?.onClick?.(i),callback:()=>s?.onDismiss?.(i),offset:{x:"1rem",y:"1rem"}}}}a.duration=3e3;const r=a.getInstance();function f(t){const i=t=>({id:t,name:t});return{resolve:s=>o(t.filter((t=>s.includes(t))).map(i)),retrieve:s=>o({content:t.filter((t=>t.toLowerCase().includes(s.toLowerCase()))).map(i),last:true,totalElements:t.length}),render:t=>({label:t.name})}}export{a as CatNotificationService,r as catNotificationService,f as stringArrayConnector};
9
+ (function(i,s){if(t.exports){t.exports=s()}else{i.Toastify=s()}})(i,(function(t){var i=function(t){return new i.lib.init(t)},s="1.12.0";i.defaults={oldestFirst:true,text:"Toastify is awesome!",node:undefined,duration:3e3,selector:undefined,callback:function(){},destination:undefined,newWindow:false,close:false,gravity:"toastify-top",positionLeft:false,position:"",backgroundColor:"",avatar:"",className:"",stopOnFocus:true,onClick:function(){},offset:{x:0,y:0},escapeMarkup:true,ariaLive:"polite",style:{background:""}};i.lib=i.prototype={toastify:s,constructor:i,init:function(t){if(!t){t={}}this.options={};this.toastElement=null;this.options.text=t.text||i.defaults.text;this.options.node=t.node||i.defaults.node;this.options.duration=t.duration===0?0:t.duration||i.defaults.duration;this.options.selector=t.selector||i.defaults.selector;this.options.callback=t.callback||i.defaults.callback;this.options.destination=t.destination||i.defaults.destination;this.options.newWindow=t.newWindow||i.defaults.newWindow;this.options.close=t.close||i.defaults.close;this.options.gravity=t.gravity==="bottom"?"toastify-bottom":i.defaults.gravity;this.options.positionLeft=t.positionLeft||i.defaults.positionLeft;this.options.position=t.position||i.defaults.position;this.options.backgroundColor=t.backgroundColor||i.defaults.backgroundColor;this.options.avatar=t.avatar||i.defaults.avatar;this.options.className=t.className||i.defaults.className;this.options.stopOnFocus=t.stopOnFocus===undefined?i.defaults.stopOnFocus:t.stopOnFocus;this.options.onClick=t.onClick||i.defaults.onClick;this.options.offset=t.offset||i.defaults.offset;this.options.escapeMarkup=t.escapeMarkup!==undefined?t.escapeMarkup:i.defaults.escapeMarkup;this.options.ariaLive=t.ariaLive||i.defaults.ariaLive;this.options.style=t.style||i.defaults.style;if(t.backgroundColor){this.options.style.background=t.backgroundColor}return this},buildToast:function(){if(!this.options){throw"Toastify is not initialized"}var t=document.createElement("div");t.className="toastify on "+this.options.className;if(!!this.options.position){t.className+=" toastify-"+this.options.position}else{if(this.options.positionLeft===true){t.className+=" toastify-left";console.warn("Property `positionLeft` will be depreciated in further versions. Please use `position` instead.")}else{t.className+=" toastify-right"}}t.className+=" "+this.options.gravity;if(this.options.backgroundColor){console.warn('DEPRECATION NOTICE: "backgroundColor" is being deprecated. Please use the "style.background" property.')}for(var i in this.options.style){t.style[i]=this.options.style[i]}if(this.options.ariaLive){t.setAttribute("aria-live",this.options.ariaLive)}if(this.options.node&&this.options.node.nodeType===Node.ELEMENT_NODE){t.appendChild(this.options.node)}else{if(this.options.escapeMarkup){t.innerText=this.options.text}else{t.innerHTML=this.options.text}if(this.options.avatar!==""){var s=document.createElement("img");s.src=this.options.avatar;s.className="toastify-avatar";if(this.options.position=="left"||this.options.positionLeft===true){t.appendChild(s)}else{t.insertAdjacentElement("afterbegin",s)}}}if(this.options.close===true){var o=document.createElement("button");o.type="button";o.setAttribute("aria-label","Close");o.className="toast-close";o.innerHTML="&#10006;";o.addEventListener("click",function(t){t.stopPropagation();this.removeElement(this.toastElement);window.clearTimeout(this.toastElement.timeOutValue)}.bind(this));var n=window.innerWidth>0?window.innerWidth:screen.width;if((this.options.position=="left"||this.options.positionLeft===true)&&n>360){t.insertAdjacentElement("afterbegin",o)}else{t.appendChild(o)}}if(this.options.stopOnFocus&&this.options.duration>0){var a=this;t.addEventListener("mouseover",(function(i){window.clearTimeout(t.timeOutValue)}));t.addEventListener("mouseleave",(function(){t.timeOutValue=window.setTimeout((function(){a.removeElement(t)}),a.options.duration)}))}if(typeof this.options.destination!=="undefined"){t.addEventListener("click",function(t){t.stopPropagation();if(this.options.newWindow===true){window.open(this.options.destination,"_blank")}else{window.location=this.options.destination}}.bind(this))}if(typeof this.options.onClick==="function"&&typeof this.options.destination==="undefined"){t.addEventListener("click",function(t){t.stopPropagation();this.options.onClick()}.bind(this))}if(typeof this.options.offset==="object"){var r=e("x",this.options);var f=e("y",this.options);var c=this.options.position=="left"?r:"-"+r;var l=this.options.gravity=="toastify-top"?f:"-"+f;t.style.transform="translate("+c+","+l+")"}return t},showToast:function(){this.toastElement=this.buildToast();var t;if(typeof this.options.selector==="string"){t=document.getElementById(this.options.selector)}else if(this.options.selector instanceof HTMLElement||typeof ShadowRoot!=="undefined"&&this.options.selector instanceof ShadowRoot){t=this.options.selector}else{t=document.body}if(!t){throw"Root element is not defined"}var s=i.defaults.oldestFirst?t.firstChild:t.lastChild;t.insertBefore(this.toastElement,s);i.reposition();if(this.options.duration>0){this.toastElement.timeOutValue=window.setTimeout(function(){this.removeElement(this.toastElement)}.bind(this),this.options.duration)}return this},hideToast:function(){if(this.toastElement.timeOutValue){clearTimeout(this.toastElement.timeOutValue)}this.removeElement(this.toastElement)},removeElement:function(t){t.className=t.className.replace(" on","");window.setTimeout(function(){if(this.options.node&&this.options.node.parentNode){this.options.node.parentNode.removeChild(this.options.node)}if(t.parentNode){t.parentNode.removeChild(t)}this.options.callback.call(t);i.reposition()}.bind(this),400)}};i.reposition=function(){var t={top:15,bottom:15};var i={top:15,bottom:15};var s={top:15,bottom:15};var e=document.getElementsByClassName("toastify");var n;for(var a=0;a<e.length;a++){if(o(e[a],"toastify-top")===true){n="toastify-top"}else{n="toastify-bottom"}var r=e[a].offsetHeight;n=n.substr(9,n.length-1);var f=15;var c=window.innerWidth>0?window.innerWidth:screen.width;if(c<=360){e[a].style[n]=s[n]+"px";s[n]+=r+f}else{if(o(e[a],"toastify-left")===true){e[a].style[n]=t[n]+"px";t[n]+=r+f}else{e[a].style[n]=i[n]+"px";i[n]+=r+f}}}return this};function e(t,i){if(i.offset[t]){if(isNaN(i.offset[t])){return i.offset[t]}else{return i.offset[t]+"px"}}return"0px"}function o(t,i){if(!t||typeof i!=="string"){return false}else if(t.className&&t.className.trim().split(/\s+/gi).indexOf(i)>-1){return true}else{return false}}i.lib.init.prototype=i.lib;return i}))}));class a{constructor(){}static getInstance(){if(!a.instance){a.instance=new a}return a.instance}show(t,i){const s={};const e=this.getNode(t,s,i);const o=this.getOptions(e,s,i);const a=n(o);s.toast=a;a.showToast();return()=>a.hideToast()}getNode(t,i,e){const o=document.createElement("template");o.innerHTML=`<div class="cat-toastify-wrapper">\n ${e?.icon?`<cat-icon class="cat-toastify-icon" icon="${e.icon}" size="l"></cat-icon>`:""}\n <div class="cat-toastify-content">\n <div class="cat-toastify-inner"></div>\n ${e?.action?`<cat-button class="cat-toastify-action cat-button-pull" size="s" variant="text" color="primary">${e.action}</cat-button>`:""}\n </div>\n ${e?.autoClose===false?`<cat-button class="cat-toastify-close cat-button-pull" size="s" icon="$cat:notification-close" variant="text" icon-only="true" class="close" a11y-label="${s.t("notification.dismiss")}"></cat-button>`:""}\n </div>`;const n=o.content.firstElementChild;n.querySelector(".cat-toastify-close")?.addEventListener("click",(()=>i.toast?.hideToast()));n.querySelector(".cat-toastify-action")?.addEventListener("click",(()=>e?.onAction?.(i)));const a=n.querySelector(".cat-toastify-inner");if(a){if(typeof t!=="string"){a.replaceChildren(t)}else if(e?.escapeMarkup===false){a.innerHTML=t}else{a.innerText=t}}return n}getOptions(t,i,s){const[e,o]=s?.placement?.split("-")??["bottom","left"];const n=s?.duration??(s?.autoClose===false?-1:a.duration);return{gravity:e,position:o,node:t,duration:n,close:false,className:s?.mode==="light"?"cat-toastify":"cat-toastify cat-toastify-dark",stopOnFocus:true,onClick:()=>s?.onClick?.(i),callback:()=>s?.onDismiss?.(i),offset:{x:"1rem",y:"1rem"}}}}a.duration=3e3;const r=a.getInstance();function f(t){return{resolve:i=>o(t.filter((({id:t})=>i.includes(t)))),retrieve:i=>o({content:t.filter((({id:t})=>t.toLowerCase().includes(i.toLowerCase()))),last:true,totalElements:t.length}),render:({label:t})=>({label:t})}}function c(t){const i=t.map((t=>({id:t,label:t})));return f(i)}function l(t){const i=Array.from(t).map((([t,i])=>({id:t,label:i})));return f(i)}export{a as CatNotificationService,r as catNotificationService,f as objectArrayConnector,c as stringArrayConnector,l as stringMapConnector};
10
10
  //# sourceMappingURL=index.esm.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["root","factory","module","exports","Toastify","this","global","options","lib","init","version","defaults","oldestFirst","text","node","undefined","duration","selector","callback","destination","newWindow","close","gravity","positionLeft","position","backgroundColor","avatar","className","stopOnFocus","onClick","offset","x","y","escapeMarkup","ariaLive","style","background","prototype","toastify","constructor","toastElement","buildToast","divElement","document","createElement","console","warn","property","setAttribute","nodeType","Node","ELEMENT_NODE","appendChild","innerText","innerHTML","avatarElement","src","insertAdjacentElement","closeElement","type","addEventListener","event","stopPropagation","removeElement","window","clearTimeout","timeOutValue","bind","width","innerWidth","screen","self","setTimeout","open","location","getAxisOffsetAValue","xOffset","yOffset","transform","showToast","rootElement","getElementById","HTMLElement","ShadowRoot","body","elementToInsert","firstChild","lastChild","insertBefore","reposition","hideToast","replace","parentNode","removeChild","call","topLeftOffsetSize","top","bottom","topRightOffsetSize","offsetSize","allToasts","getElementsByClassName","classUsed","i","length","containsClass","height","offsetHeight","substr","axis","isNaN","elem","yourClass","trim","split","indexOf","CatNotificationService","getInstance","instance","show","content","ref","toastContent","getNode","toastOptions","getOptions","toast","template","icon","action","autoClose","i18n","t","firstElementChild","querySelector","onAction","inner","replaceChildren","placement","mode","onDismiss","catNotificationService","stringArrayConnector","data","toItem","id","name","resolve","ids","of","filter","includes","map","retrieve","term","toLowerCase","last","totalElements","render","item","label"],"sources":["../node_modules/.pnpm/toastify-js@1.12.0/node_modules/toastify-js/src/toastify.js","src/components/cat-notification/cat-notification.tsx","src/components/cat-select/connectors.ts"],"sourcesContent":["/*!\n * Toastify js 1.12.0\n * https://github.com/apvarun/toastify-js\n * @license MIT licensed\n *\n * Copyright (C) 2018 Varun A P\n */\n(function(root, factory) {\n if (typeof module === \"object\" && module.exports) {\n module.exports = factory();\n } else {\n root.Toastify = factory();\n }\n})(this, function(global) {\n // Object initialization\n var Toastify = function(options) {\n // Returning a new init object\n return new Toastify.lib.init(options);\n },\n // Library version\n version = \"1.12.0\";\n\n // Set the default global options\n Toastify.defaults = {\n oldestFirst: true,\n text: \"Toastify is awesome!\",\n node: undefined,\n duration: 3000,\n selector: undefined,\n callback: function () {\n },\n destination: undefined,\n newWindow: false,\n close: false,\n gravity: \"toastify-top\",\n positionLeft: false,\n position: '',\n backgroundColor: '',\n avatar: \"\",\n className: \"\",\n stopOnFocus: true,\n onClick: function () {\n },\n offset: {x: 0, y: 0},\n escapeMarkup: true,\n ariaLive: 'polite',\n style: {background: ''}\n };\n\n // Defining the prototype of the object\n Toastify.lib = Toastify.prototype = {\n toastify: version,\n\n constructor: Toastify,\n\n // Initializing the object with required parameters\n init: function(options) {\n // Verifying and validating the input object\n if (!options) {\n options = {};\n }\n\n // Creating the options object\n this.options = {};\n\n this.toastElement = null;\n\n // Validating the options\n this.options.text = options.text || Toastify.defaults.text; // Display message\n this.options.node = options.node || Toastify.defaults.node; // Display content as node\n this.options.duration = options.duration === 0 ? 0 : options.duration || Toastify.defaults.duration; // Display duration\n this.options.selector = options.selector || Toastify.defaults.selector; // Parent selector\n this.options.callback = options.callback || Toastify.defaults.callback; // Callback after display\n this.options.destination = options.destination || Toastify.defaults.destination; // On-click destination\n this.options.newWindow = options.newWindow || Toastify.defaults.newWindow; // Open destination in new window\n this.options.close = options.close || Toastify.defaults.close; // Show toast close icon\n this.options.gravity = options.gravity === \"bottom\" ? \"toastify-bottom\" : Toastify.defaults.gravity; // toast position - top or bottom\n this.options.positionLeft = options.positionLeft || Toastify.defaults.positionLeft; // toast position - left or right\n this.options.position = options.position || Toastify.defaults.position; // toast position - left or right\n this.options.backgroundColor = options.backgroundColor || Toastify.defaults.backgroundColor; // toast background color\n this.options.avatar = options.avatar || Toastify.defaults.avatar; // img element src - url or a path\n this.options.className = options.className || Toastify.defaults.className; // additional class names for the toast\n this.options.stopOnFocus = options.stopOnFocus === undefined ? Toastify.defaults.stopOnFocus : options.stopOnFocus; // stop timeout on focus\n this.options.onClick = options.onClick || Toastify.defaults.onClick; // Callback after click\n this.options.offset = options.offset || Toastify.defaults.offset; // toast offset\n this.options.escapeMarkup = options.escapeMarkup !== undefined ? options.escapeMarkup : Toastify.defaults.escapeMarkup;\n this.options.ariaLive = options.ariaLive || Toastify.defaults.ariaLive;\n this.options.style = options.style || Toastify.defaults.style;\n if(options.backgroundColor) {\n this.options.style.background = options.backgroundColor;\n }\n\n // Returning the current object for chaining functions\n return this;\n },\n\n // Building the DOM element\n buildToast: function() {\n // Validating if the options are defined\n if (!this.options) {\n throw \"Toastify is not initialized\";\n }\n\n // Creating the DOM object\n var divElement = document.createElement(\"div\");\n divElement.className = \"toastify on \" + this.options.className;\n\n // Positioning toast to left or right or center\n if (!!this.options.position) {\n divElement.className += \" toastify-\" + this.options.position;\n } else {\n // To be depreciated in further versions\n if (this.options.positionLeft === true) {\n divElement.className += \" toastify-left\";\n console.warn('Property `positionLeft` will be depreciated in further versions. Please use `position` instead.')\n } else {\n // Default position\n divElement.className += \" toastify-right\";\n }\n }\n\n // Assigning gravity of element\n divElement.className += \" \" + this.options.gravity;\n\n if (this.options.backgroundColor) {\n // This is being deprecated in favor of using the style HTML DOM property\n console.warn('DEPRECATION NOTICE: \"backgroundColor\" is being deprecated. Please use the \"style.background\" property.');\n }\n\n // Loop through our style object and apply styles to divElement\n for (var property in this.options.style) {\n divElement.style[property] = this.options.style[property];\n }\n\n // Announce the toast to screen readers\n if (this.options.ariaLive) {\n divElement.setAttribute('aria-live', this.options.ariaLive)\n }\n\n // Adding the toast message/node\n if (this.options.node && this.options.node.nodeType === Node.ELEMENT_NODE) {\n // If we have a valid node, we insert it\n divElement.appendChild(this.options.node)\n } else {\n if (this.options.escapeMarkup) {\n divElement.innerText = this.options.text;\n } else {\n divElement.innerHTML = this.options.text;\n }\n\n if (this.options.avatar !== \"\") {\n var avatarElement = document.createElement(\"img\");\n avatarElement.src = this.options.avatar;\n\n avatarElement.className = \"toastify-avatar\";\n\n if (this.options.position == \"left\" || this.options.positionLeft === true) {\n // Adding close icon on the left of content\n divElement.appendChild(avatarElement);\n } else {\n // Adding close icon on the right of content\n divElement.insertAdjacentElement(\"afterbegin\", avatarElement);\n }\n }\n }\n\n // Adding a close icon to the toast\n if (this.options.close === true) {\n // Create a span for close element\n var closeElement = document.createElement(\"button\");\n closeElement.type = \"button\";\n closeElement.setAttribute(\"aria-label\", \"Close\");\n closeElement.className = \"toast-close\";\n closeElement.innerHTML = \"&#10006;\";\n\n // Triggering the removal of toast from DOM on close click\n closeElement.addEventListener(\n \"click\",\n function(event) {\n event.stopPropagation();\n this.removeElement(this.toastElement);\n window.clearTimeout(this.toastElement.timeOutValue);\n }.bind(this)\n );\n\n //Calculating screen width\n var width = window.innerWidth > 0 ? window.innerWidth : screen.width;\n\n // Adding the close icon to the toast element\n // Display on the right if screen width is less than or equal to 360px\n if ((this.options.position == \"left\" || this.options.positionLeft === true) && width > 360) {\n // Adding close icon on the left of content\n divElement.insertAdjacentElement(\"afterbegin\", closeElement);\n } else {\n // Adding close icon on the right of content\n divElement.appendChild(closeElement);\n }\n }\n\n // Clear timeout while toast is focused\n if (this.options.stopOnFocus && this.options.duration > 0) {\n var self = this;\n // stop countdown\n divElement.addEventListener(\n \"mouseover\",\n function(event) {\n window.clearTimeout(divElement.timeOutValue);\n }\n )\n // add back the timeout\n divElement.addEventListener(\n \"mouseleave\",\n function() {\n divElement.timeOutValue = window.setTimeout(\n function() {\n // Remove the toast from DOM\n self.removeElement(divElement);\n },\n self.options.duration\n )\n }\n )\n }\n\n // Adding an on-click destination path\n if (typeof this.options.destination !== \"undefined\") {\n divElement.addEventListener(\n \"click\",\n function(event) {\n event.stopPropagation();\n if (this.options.newWindow === true) {\n window.open(this.options.destination, \"_blank\");\n } else {\n window.location = this.options.destination;\n }\n }.bind(this)\n );\n }\n\n if (typeof this.options.onClick === \"function\" && typeof this.options.destination === \"undefined\") {\n divElement.addEventListener(\n \"click\",\n function(event) {\n event.stopPropagation();\n this.options.onClick();\n }.bind(this)\n );\n }\n\n // Adding offset\n if(typeof this.options.offset === \"object\") {\n\n var x = getAxisOffsetAValue(\"x\", this.options);\n var y = getAxisOffsetAValue(\"y\", this.options);\n\n var xOffset = this.options.position == \"left\" ? x : \"-\" + x;\n var yOffset = this.options.gravity == \"toastify-top\" ? y : \"-\" + y;\n\n divElement.style.transform = \"translate(\" + xOffset + \",\" + yOffset + \")\";\n\n }\n\n // Returning the generated element\n return divElement;\n },\n\n // Displaying the toast\n showToast: function() {\n // Creating the DOM object for the toast\n this.toastElement = this.buildToast();\n\n // Getting the root element to with the toast needs to be added\n var rootElement;\n if (typeof this.options.selector === \"string\") {\n rootElement = document.getElementById(this.options.selector);\n } else if (this.options.selector instanceof HTMLElement || (typeof ShadowRoot !== 'undefined' && this.options.selector instanceof ShadowRoot)) {\n rootElement = this.options.selector;\n } else {\n rootElement = document.body;\n }\n\n // Validating if root element is present in DOM\n if (!rootElement) {\n throw \"Root element is not defined\";\n }\n\n // Adding the DOM element\n var elementToInsert = Toastify.defaults.oldestFirst ? rootElement.firstChild : rootElement.lastChild;\n rootElement.insertBefore(this.toastElement, elementToInsert);\n\n // Repositioning the toasts in case multiple toasts are present\n Toastify.reposition();\n\n if (this.options.duration > 0) {\n this.toastElement.timeOutValue = window.setTimeout(\n function() {\n // Remove the toast from DOM\n this.removeElement(this.toastElement);\n }.bind(this),\n this.options.duration\n ); // Binding `this` for function invocation\n }\n\n // Supporting function chaining\n return this;\n },\n\n hideToast: function() {\n if (this.toastElement.timeOutValue) {\n clearTimeout(this.toastElement.timeOutValue);\n }\n this.removeElement(this.toastElement);\n },\n\n // Removing the element from the DOM\n removeElement: function(toastElement) {\n // Hiding the element\n // toastElement.classList.remove(\"on\");\n toastElement.className = toastElement.className.replace(\" on\", \"\");\n\n // Removing the element from DOM after transition end\n window.setTimeout(\n function() {\n // remove options node if any\n if (this.options.node && this.options.node.parentNode) {\n this.options.node.parentNode.removeChild(this.options.node);\n }\n\n // Remove the element from the DOM, only when the parent node was not removed before.\n if (toastElement.parentNode) {\n toastElement.parentNode.removeChild(toastElement);\n }\n\n // Calling the callback function\n this.options.callback.call(toastElement);\n\n // Repositioning the toasts again\n Toastify.reposition();\n }.bind(this),\n 400\n ); // Binding `this` for function invocation\n },\n };\n\n // Positioning the toasts on the DOM\n Toastify.reposition = function() {\n\n // Top margins with gravity\n var topLeftOffsetSize = {\n top: 15,\n bottom: 15,\n };\n var topRightOffsetSize = {\n top: 15,\n bottom: 15,\n };\n var offsetSize = {\n top: 15,\n bottom: 15,\n };\n\n // Get all toast messages on the DOM\n var allToasts = document.getElementsByClassName(\"toastify\");\n\n var classUsed;\n\n // Modifying the position of each toast element\n for (var i = 0; i < allToasts.length; i++) {\n // Getting the applied gravity\n if (containsClass(allToasts[i], \"toastify-top\") === true) {\n classUsed = \"toastify-top\";\n } else {\n classUsed = \"toastify-bottom\";\n }\n\n var height = allToasts[i].offsetHeight;\n classUsed = classUsed.substr(9, classUsed.length-1)\n // Spacing between toasts\n var offset = 15;\n\n var width = window.innerWidth > 0 ? window.innerWidth : screen.width;\n\n // Show toast in center if screen with less than or equal to 360px\n if (width <= 360) {\n // Setting the position\n allToasts[i].style[classUsed] = offsetSize[classUsed] + \"px\";\n\n offsetSize[classUsed] += height + offset;\n } else {\n if (containsClass(allToasts[i], \"toastify-left\") === true) {\n // Setting the position\n allToasts[i].style[classUsed] = topLeftOffsetSize[classUsed] + \"px\";\n\n topLeftOffsetSize[classUsed] += height + offset;\n } else {\n // Setting the position\n allToasts[i].style[classUsed] = topRightOffsetSize[classUsed] + \"px\";\n\n topRightOffsetSize[classUsed] += height + offset;\n }\n }\n }\n\n // Supporting function chaining\n return this;\n };\n\n // Helper function to get offset.\n function getAxisOffsetAValue(axis, options) {\n\n if(options.offset[axis]) {\n if(isNaN(options.offset[axis])) {\n return options.offset[axis];\n }\n else {\n return options.offset[axis] + 'px';\n }\n }\n\n return '0px';\n\n }\n\n function containsClass(elem, yourClass) {\n if (!elem || typeof yourClass !== \"string\") {\n return false;\n } else if (\n elem.className &&\n elem.className\n .trim()\n .split(/\\s+/gi)\n .indexOf(yourClass) > -1\n ) {\n return true;\n } else {\n return false;\n }\n }\n\n // Setting up the prototype for the init object\n Toastify.lib.init.prototype = Toastify.lib;\n\n // Returning the Toastify function to be assigned to the window object/module\n return Toastify;\n});\n","import Toastify, { Options } from 'toastify-js';\nimport { catI18nRegistry as i18n } from '../cat-i18n/cat-i18n-registry';\n\ninterface ToastRef {\n toast?: {\n showToast: () => void;\n hideToast: () => void;\n };\n}\n\nexport interface ToastOptions {\n /** The appearance mode of the notification. (Default: `dark`) */\n mode: 'dark' | 'light';\n /** An optional icon to appear in the notification. */\n icon: string;\n /** The placement of the notification on screen. (Default: `bottom-left`) */\n placement: 'top-left' | 'top-center' | 'top-right' | 'bottom-left' | 'bottom-center' | 'bottom-right';\n /** Enables auto-closing of the notification. (Default: `true`) */\n autoClose: boolean;\n /** The duration in ms for the notification to be visible on screen. (Default: `3000`) */\n duration: number;\n /** An optional label for an action button. */\n action: string;\n /** Enable markup escape and sanitise HTML input. (Default: true) */\n escapeMarkup: boolean;\n /** Callback executed when the action button is clicked. Receives a reference to the notification as first argument. */\n onAction: (toast: ToastRef) => void;\n /** Callback executed when the notification is clicked. Receives a reference to the notification as first argument. */\n onClick: (toast: ToastRef) => void;\n /** Callback executed when the notification is dismissed. Receives a reference to the notification as first argument. */\n onDismiss: (toast: ToastRef) => void;\n}\n\nexport class CatNotificationService {\n private static instance: CatNotificationService;\n private static duration = 3000;\n\n private constructor() {\n // hide constructor\n }\n\n static getInstance(): CatNotificationService {\n if (!CatNotificationService.instance) {\n CatNotificationService.instance = new CatNotificationService();\n }\n return CatNotificationService.instance;\n }\n\n show(content: string | Node, options?: Partial<ToastOptions>): () => void {\n const ref: ToastRef = {};\n const toastContent = this.getNode(content, ref, options);\n const toastOptions = this.getOptions(toastContent, ref, options);\n const toast = Toastify(toastOptions);\n ref.toast = toast;\n toast.showToast();\n return () => toast.hideToast();\n }\n\n private getNode(content: string | Node, ref: ToastRef, options?: Partial<ToastOptions>): HTMLElement {\n const template = document.createElement('template');\n template.innerHTML = `<div class=\"cat-toastify-wrapper\">\n ${options?.icon ? `<cat-icon class=\"cat-toastify-icon\" icon=\"${options.icon}\" size=\"l\"></cat-icon>` : ''}\n <div class=\"cat-toastify-content\">\n <div class=\"cat-toastify-inner\"></div>\n ${\n options?.action\n ? `<cat-button class=\"cat-toastify-action cat-button-pull\" size=\"s\" variant=\"text\" color=\"primary\">${options.action}</cat-button>`\n : ''\n }\n </div>\n ${\n options?.autoClose === false\n ? `<cat-button class=\"cat-toastify-close cat-button-pull\" size=\"s\" icon=\"$cat:notification-close\" variant=\"text\" icon-only=\"true\" class=\"close\" a11y-label=\"${i18n.t(\n 'notification.dismiss'\n )}\"></cat-button>`\n : ''\n }\n </div>`;\n\n const node = template.content.firstElementChild as HTMLElement;\n node.querySelector('.cat-toastify-close')?.addEventListener('click', () => ref.toast?.hideToast());\n node.querySelector('.cat-toastify-action')?.addEventListener('click', () => options?.onAction?.(ref));\n const inner = node.querySelector<HTMLDivElement>('.cat-toastify-inner');\n if (inner) {\n if (typeof content !== 'string') {\n inner.replaceChildren(content);\n } else if (options?.escapeMarkup === false) {\n inner.innerHTML = content;\n } else {\n inner.innerText = content;\n }\n }\n\n return node;\n }\n\n private getOptions(node: Node, ref: ToastRef, options?: Partial<ToastOptions>): Options {\n const [gravity, position] = (options?.placement?.split('-') ?? ['bottom', 'left']) as [\n Options['gravity'],\n Options['position']\n ];\n const duration = options?.duration ?? (options?.autoClose === false ? -1 : CatNotificationService.duration);\n return {\n gravity,\n position,\n node,\n duration,\n close: false,\n className: options?.mode === 'light' ? 'cat-toastify' : 'cat-toastify cat-toastify-dark',\n stopOnFocus: true,\n onClick: () => options?.onClick?.(ref),\n callback: () => options?.onDismiss?.(ref),\n offset: {\n x: '1rem',\n y: '1rem'\n }\n };\n }\n}\n\nexport const catNotificationService = CatNotificationService.getInstance();\n","import { of } from 'rxjs';\nimport { CatSelectConnector } from './cat-select';\n\n/**\n * Creates a connector that resolves local string array data.\n *\n * @param data the string array to connect to\n * @returns a connector that resolves local string array data\n */\nexport function stringArrayConnector(data: string[]): CatSelectConnector {\n const toItem = (id: string) => ({ id, name: id });\n return {\n resolve: ids => of(data.filter(id => ids.includes(id)).map(toItem)),\n retrieve: term =>\n of({\n content: data.filter(id => id.toLowerCase().includes(term.toLowerCase())).map(toItem),\n last: true,\n totalElements: data.length\n }),\n render: item => ({ label: item.name })\n };\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["root","factory","module","exports","Toastify","this","global","options","lib","init","version","defaults","oldestFirst","text","node","undefined","duration","selector","callback","destination","newWindow","close","gravity","positionLeft","position","backgroundColor","avatar","className","stopOnFocus","onClick","offset","x","y","escapeMarkup","ariaLive","style","background","prototype","toastify","constructor","toastElement","buildToast","divElement","document","createElement","console","warn","property","setAttribute","nodeType","Node","ELEMENT_NODE","appendChild","innerText","innerHTML","avatarElement","src","insertAdjacentElement","closeElement","type","addEventListener","event","stopPropagation","removeElement","window","clearTimeout","timeOutValue","bind","width","innerWidth","screen","self","setTimeout","open","location","getAxisOffsetAValue","xOffset","yOffset","transform","showToast","rootElement","getElementById","HTMLElement","ShadowRoot","body","elementToInsert","firstChild","lastChild","insertBefore","reposition","hideToast","replace","parentNode","removeChild","call","topLeftOffsetSize","top","bottom","topRightOffsetSize","offsetSize","allToasts","getElementsByClassName","classUsed","i","length","containsClass","height","offsetHeight","substr","axis","isNaN","elem","yourClass","trim","split","indexOf","CatNotificationService","getInstance","instance","show","content","ref","toastContent","getNode","toastOptions","getOptions","toast","template","icon","action","autoClose","i18n","t","firstElementChild","querySelector","onAction","inner","replaceChildren","placement","mode","onDismiss","catNotificationService","objectArrayConnector","data","resolve","ids","of","filter","id","includes","retrieve","term","toLowerCase","last","totalElements","render","label","stringArrayConnector","items","map","stringMapConnector","Array","from"],"sources":["../node_modules/.pnpm/toastify-js@1.12.0/node_modules/toastify-js/src/toastify.js","src/components/cat-notification/cat-notification.tsx","src/components/cat-select/connectors.ts"],"sourcesContent":["/*!\n * Toastify js 1.12.0\n * https://github.com/apvarun/toastify-js\n * @license MIT licensed\n *\n * Copyright (C) 2018 Varun A P\n */\n(function(root, factory) {\n if (typeof module === \"object\" && module.exports) {\n module.exports = factory();\n } else {\n root.Toastify = factory();\n }\n})(this, function(global) {\n // Object initialization\n var Toastify = function(options) {\n // Returning a new init object\n return new Toastify.lib.init(options);\n },\n // Library version\n version = \"1.12.0\";\n\n // Set the default global options\n Toastify.defaults = {\n oldestFirst: true,\n text: \"Toastify is awesome!\",\n node: undefined,\n duration: 3000,\n selector: undefined,\n callback: function () {\n },\n destination: undefined,\n newWindow: false,\n close: false,\n gravity: \"toastify-top\",\n positionLeft: false,\n position: '',\n backgroundColor: '',\n avatar: \"\",\n className: \"\",\n stopOnFocus: true,\n onClick: function () {\n },\n offset: {x: 0, y: 0},\n escapeMarkup: true,\n ariaLive: 'polite',\n style: {background: ''}\n };\n\n // Defining the prototype of the object\n Toastify.lib = Toastify.prototype = {\n toastify: version,\n\n constructor: Toastify,\n\n // Initializing the object with required parameters\n init: function(options) {\n // Verifying and validating the input object\n if (!options) {\n options = {};\n }\n\n // Creating the options object\n this.options = {};\n\n this.toastElement = null;\n\n // Validating the options\n this.options.text = options.text || Toastify.defaults.text; // Display message\n this.options.node = options.node || Toastify.defaults.node; // Display content as node\n this.options.duration = options.duration === 0 ? 0 : options.duration || Toastify.defaults.duration; // Display duration\n this.options.selector = options.selector || Toastify.defaults.selector; // Parent selector\n this.options.callback = options.callback || Toastify.defaults.callback; // Callback after display\n this.options.destination = options.destination || Toastify.defaults.destination; // On-click destination\n this.options.newWindow = options.newWindow || Toastify.defaults.newWindow; // Open destination in new window\n this.options.close = options.close || Toastify.defaults.close; // Show toast close icon\n this.options.gravity = options.gravity === \"bottom\" ? \"toastify-bottom\" : Toastify.defaults.gravity; // toast position - top or bottom\n this.options.positionLeft = options.positionLeft || Toastify.defaults.positionLeft; // toast position - left or right\n this.options.position = options.position || Toastify.defaults.position; // toast position - left or right\n this.options.backgroundColor = options.backgroundColor || Toastify.defaults.backgroundColor; // toast background color\n this.options.avatar = options.avatar || Toastify.defaults.avatar; // img element src - url or a path\n this.options.className = options.className || Toastify.defaults.className; // additional class names for the toast\n this.options.stopOnFocus = options.stopOnFocus === undefined ? Toastify.defaults.stopOnFocus : options.stopOnFocus; // stop timeout on focus\n this.options.onClick = options.onClick || Toastify.defaults.onClick; // Callback after click\n this.options.offset = options.offset || Toastify.defaults.offset; // toast offset\n this.options.escapeMarkup = options.escapeMarkup !== undefined ? options.escapeMarkup : Toastify.defaults.escapeMarkup;\n this.options.ariaLive = options.ariaLive || Toastify.defaults.ariaLive;\n this.options.style = options.style || Toastify.defaults.style;\n if(options.backgroundColor) {\n this.options.style.background = options.backgroundColor;\n }\n\n // Returning the current object for chaining functions\n return this;\n },\n\n // Building the DOM element\n buildToast: function() {\n // Validating if the options are defined\n if (!this.options) {\n throw \"Toastify is not initialized\";\n }\n\n // Creating the DOM object\n var divElement = document.createElement(\"div\");\n divElement.className = \"toastify on \" + this.options.className;\n\n // Positioning toast to left or right or center\n if (!!this.options.position) {\n divElement.className += \" toastify-\" + this.options.position;\n } else {\n // To be depreciated in further versions\n if (this.options.positionLeft === true) {\n divElement.className += \" toastify-left\";\n console.warn('Property `positionLeft` will be depreciated in further versions. Please use `position` instead.')\n } else {\n // Default position\n divElement.className += \" toastify-right\";\n }\n }\n\n // Assigning gravity of element\n divElement.className += \" \" + this.options.gravity;\n\n if (this.options.backgroundColor) {\n // This is being deprecated in favor of using the style HTML DOM property\n console.warn('DEPRECATION NOTICE: \"backgroundColor\" is being deprecated. Please use the \"style.background\" property.');\n }\n\n // Loop through our style object and apply styles to divElement\n for (var property in this.options.style) {\n divElement.style[property] = this.options.style[property];\n }\n\n // Announce the toast to screen readers\n if (this.options.ariaLive) {\n divElement.setAttribute('aria-live', this.options.ariaLive)\n }\n\n // Adding the toast message/node\n if (this.options.node && this.options.node.nodeType === Node.ELEMENT_NODE) {\n // If we have a valid node, we insert it\n divElement.appendChild(this.options.node)\n } else {\n if (this.options.escapeMarkup) {\n divElement.innerText = this.options.text;\n } else {\n divElement.innerHTML = this.options.text;\n }\n\n if (this.options.avatar !== \"\") {\n var avatarElement = document.createElement(\"img\");\n avatarElement.src = this.options.avatar;\n\n avatarElement.className = \"toastify-avatar\";\n\n if (this.options.position == \"left\" || this.options.positionLeft === true) {\n // Adding close icon on the left of content\n divElement.appendChild(avatarElement);\n } else {\n // Adding close icon on the right of content\n divElement.insertAdjacentElement(\"afterbegin\", avatarElement);\n }\n }\n }\n\n // Adding a close icon to the toast\n if (this.options.close === true) {\n // Create a span for close element\n var closeElement = document.createElement(\"button\");\n closeElement.type = \"button\";\n closeElement.setAttribute(\"aria-label\", \"Close\");\n closeElement.className = \"toast-close\";\n closeElement.innerHTML = \"&#10006;\";\n\n // Triggering the removal of toast from DOM on close click\n closeElement.addEventListener(\n \"click\",\n function(event) {\n event.stopPropagation();\n this.removeElement(this.toastElement);\n window.clearTimeout(this.toastElement.timeOutValue);\n }.bind(this)\n );\n\n //Calculating screen width\n var width = window.innerWidth > 0 ? window.innerWidth : screen.width;\n\n // Adding the close icon to the toast element\n // Display on the right if screen width is less than or equal to 360px\n if ((this.options.position == \"left\" || this.options.positionLeft === true) && width > 360) {\n // Adding close icon on the left of content\n divElement.insertAdjacentElement(\"afterbegin\", closeElement);\n } else {\n // Adding close icon on the right of content\n divElement.appendChild(closeElement);\n }\n }\n\n // Clear timeout while toast is focused\n if (this.options.stopOnFocus && this.options.duration > 0) {\n var self = this;\n // stop countdown\n divElement.addEventListener(\n \"mouseover\",\n function(event) {\n window.clearTimeout(divElement.timeOutValue);\n }\n )\n // add back the timeout\n divElement.addEventListener(\n \"mouseleave\",\n function() {\n divElement.timeOutValue = window.setTimeout(\n function() {\n // Remove the toast from DOM\n self.removeElement(divElement);\n },\n self.options.duration\n )\n }\n )\n }\n\n // Adding an on-click destination path\n if (typeof this.options.destination !== \"undefined\") {\n divElement.addEventListener(\n \"click\",\n function(event) {\n event.stopPropagation();\n if (this.options.newWindow === true) {\n window.open(this.options.destination, \"_blank\");\n } else {\n window.location = this.options.destination;\n }\n }.bind(this)\n );\n }\n\n if (typeof this.options.onClick === \"function\" && typeof this.options.destination === \"undefined\") {\n divElement.addEventListener(\n \"click\",\n function(event) {\n event.stopPropagation();\n this.options.onClick();\n }.bind(this)\n );\n }\n\n // Adding offset\n if(typeof this.options.offset === \"object\") {\n\n var x = getAxisOffsetAValue(\"x\", this.options);\n var y = getAxisOffsetAValue(\"y\", this.options);\n\n var xOffset = this.options.position == \"left\" ? x : \"-\" + x;\n var yOffset = this.options.gravity == \"toastify-top\" ? y : \"-\" + y;\n\n divElement.style.transform = \"translate(\" + xOffset + \",\" + yOffset + \")\";\n\n }\n\n // Returning the generated element\n return divElement;\n },\n\n // Displaying the toast\n showToast: function() {\n // Creating the DOM object for the toast\n this.toastElement = this.buildToast();\n\n // Getting the root element to with the toast needs to be added\n var rootElement;\n if (typeof this.options.selector === \"string\") {\n rootElement = document.getElementById(this.options.selector);\n } else if (this.options.selector instanceof HTMLElement || (typeof ShadowRoot !== 'undefined' && this.options.selector instanceof ShadowRoot)) {\n rootElement = this.options.selector;\n } else {\n rootElement = document.body;\n }\n\n // Validating if root element is present in DOM\n if (!rootElement) {\n throw \"Root element is not defined\";\n }\n\n // Adding the DOM element\n var elementToInsert = Toastify.defaults.oldestFirst ? rootElement.firstChild : rootElement.lastChild;\n rootElement.insertBefore(this.toastElement, elementToInsert);\n\n // Repositioning the toasts in case multiple toasts are present\n Toastify.reposition();\n\n if (this.options.duration > 0) {\n this.toastElement.timeOutValue = window.setTimeout(\n function() {\n // Remove the toast from DOM\n this.removeElement(this.toastElement);\n }.bind(this),\n this.options.duration\n ); // Binding `this` for function invocation\n }\n\n // Supporting function chaining\n return this;\n },\n\n hideToast: function() {\n if (this.toastElement.timeOutValue) {\n clearTimeout(this.toastElement.timeOutValue);\n }\n this.removeElement(this.toastElement);\n },\n\n // Removing the element from the DOM\n removeElement: function(toastElement) {\n // Hiding the element\n // toastElement.classList.remove(\"on\");\n toastElement.className = toastElement.className.replace(\" on\", \"\");\n\n // Removing the element from DOM after transition end\n window.setTimeout(\n function() {\n // remove options node if any\n if (this.options.node && this.options.node.parentNode) {\n this.options.node.parentNode.removeChild(this.options.node);\n }\n\n // Remove the element from the DOM, only when the parent node was not removed before.\n if (toastElement.parentNode) {\n toastElement.parentNode.removeChild(toastElement);\n }\n\n // Calling the callback function\n this.options.callback.call(toastElement);\n\n // Repositioning the toasts again\n Toastify.reposition();\n }.bind(this),\n 400\n ); // Binding `this` for function invocation\n },\n };\n\n // Positioning the toasts on the DOM\n Toastify.reposition = function() {\n\n // Top margins with gravity\n var topLeftOffsetSize = {\n top: 15,\n bottom: 15,\n };\n var topRightOffsetSize = {\n top: 15,\n bottom: 15,\n };\n var offsetSize = {\n top: 15,\n bottom: 15,\n };\n\n // Get all toast messages on the DOM\n var allToasts = document.getElementsByClassName(\"toastify\");\n\n var classUsed;\n\n // Modifying the position of each toast element\n for (var i = 0; i < allToasts.length; i++) {\n // Getting the applied gravity\n if (containsClass(allToasts[i], \"toastify-top\") === true) {\n classUsed = \"toastify-top\";\n } else {\n classUsed = \"toastify-bottom\";\n }\n\n var height = allToasts[i].offsetHeight;\n classUsed = classUsed.substr(9, classUsed.length-1)\n // Spacing between toasts\n var offset = 15;\n\n var width = window.innerWidth > 0 ? window.innerWidth : screen.width;\n\n // Show toast in center if screen with less than or equal to 360px\n if (width <= 360) {\n // Setting the position\n allToasts[i].style[classUsed] = offsetSize[classUsed] + \"px\";\n\n offsetSize[classUsed] += height + offset;\n } else {\n if (containsClass(allToasts[i], \"toastify-left\") === true) {\n // Setting the position\n allToasts[i].style[classUsed] = topLeftOffsetSize[classUsed] + \"px\";\n\n topLeftOffsetSize[classUsed] += height + offset;\n } else {\n // Setting the position\n allToasts[i].style[classUsed] = topRightOffsetSize[classUsed] + \"px\";\n\n topRightOffsetSize[classUsed] += height + offset;\n }\n }\n }\n\n // Supporting function chaining\n return this;\n };\n\n // Helper function to get offset.\n function getAxisOffsetAValue(axis, options) {\n\n if(options.offset[axis]) {\n if(isNaN(options.offset[axis])) {\n return options.offset[axis];\n }\n else {\n return options.offset[axis] + 'px';\n }\n }\n\n return '0px';\n\n }\n\n function containsClass(elem, yourClass) {\n if (!elem || typeof yourClass !== \"string\") {\n return false;\n } else if (\n elem.className &&\n elem.className\n .trim()\n .split(/\\s+/gi)\n .indexOf(yourClass) > -1\n ) {\n return true;\n } else {\n return false;\n }\n }\n\n // Setting up the prototype for the init object\n Toastify.lib.init.prototype = Toastify.lib;\n\n // Returning the Toastify function to be assigned to the window object/module\n return Toastify;\n});\n","import Toastify, { Options } from 'toastify-js';\nimport { catI18nRegistry as i18n } from '../cat-i18n/cat-i18n-registry';\n\ninterface ToastRef {\n toast?: {\n showToast: () => void;\n hideToast: () => void;\n };\n}\n\nexport interface ToastOptions {\n /** The appearance mode of the notification. (Default: `dark`) */\n mode: 'dark' | 'light';\n /** An optional icon to appear in the notification. */\n icon: string;\n /** The placement of the notification on screen. (Default: `bottom-left`) */\n placement: 'top-left' | 'top-center' | 'top-right' | 'bottom-left' | 'bottom-center' | 'bottom-right';\n /** Enables auto-closing of the notification. (Default: `true`) */\n autoClose: boolean;\n /** The duration in ms for the notification to be visible on screen. (Default: `3000`) */\n duration: number;\n /** An optional label for an action button. */\n action: string;\n /** Enable markup escape and sanitise HTML input. (Default: true) */\n escapeMarkup: boolean;\n /** Callback executed when the action button is clicked. Receives a reference to the notification as first argument. */\n onAction: (toast: ToastRef) => void;\n /** Callback executed when the notification is clicked. Receives a reference to the notification as first argument. */\n onClick: (toast: ToastRef) => void;\n /** Callback executed when the notification is dismissed. Receives a reference to the notification as first argument. */\n onDismiss: (toast: ToastRef) => void;\n}\n\nexport class CatNotificationService {\n private static instance: CatNotificationService;\n private static duration = 3000;\n\n private constructor() {\n // hide constructor\n }\n\n static getInstance(): CatNotificationService {\n if (!CatNotificationService.instance) {\n CatNotificationService.instance = new CatNotificationService();\n }\n return CatNotificationService.instance;\n }\n\n show(content: string | Node, options?: Partial<ToastOptions>): () => void {\n const ref: ToastRef = {};\n const toastContent = this.getNode(content, ref, options);\n const toastOptions = this.getOptions(toastContent, ref, options);\n const toast = Toastify(toastOptions);\n ref.toast = toast;\n toast.showToast();\n return () => toast.hideToast();\n }\n\n private getNode(content: string | Node, ref: ToastRef, options?: Partial<ToastOptions>): HTMLElement {\n const template = document.createElement('template');\n template.innerHTML = `<div class=\"cat-toastify-wrapper\">\n ${options?.icon ? `<cat-icon class=\"cat-toastify-icon\" icon=\"${options.icon}\" size=\"l\"></cat-icon>` : ''}\n <div class=\"cat-toastify-content\">\n <div class=\"cat-toastify-inner\"></div>\n ${\n options?.action\n ? `<cat-button class=\"cat-toastify-action cat-button-pull\" size=\"s\" variant=\"text\" color=\"primary\">${options.action}</cat-button>`\n : ''\n }\n </div>\n ${\n options?.autoClose === false\n ? `<cat-button class=\"cat-toastify-close cat-button-pull\" size=\"s\" icon=\"$cat:notification-close\" variant=\"text\" icon-only=\"true\" class=\"close\" a11y-label=\"${i18n.t(\n 'notification.dismiss'\n )}\"></cat-button>`\n : ''\n }\n </div>`;\n\n const node = template.content.firstElementChild as HTMLElement;\n node.querySelector('.cat-toastify-close')?.addEventListener('click', () => ref.toast?.hideToast());\n node.querySelector('.cat-toastify-action')?.addEventListener('click', () => options?.onAction?.(ref));\n const inner = node.querySelector<HTMLDivElement>('.cat-toastify-inner');\n if (inner) {\n if (typeof content !== 'string') {\n inner.replaceChildren(content);\n } else if (options?.escapeMarkup === false) {\n inner.innerHTML = content;\n } else {\n inner.innerText = content;\n }\n }\n\n return node;\n }\n\n private getOptions(node: Node, ref: ToastRef, options?: Partial<ToastOptions>): Options {\n const [gravity, position] = (options?.placement?.split('-') ?? ['bottom', 'left']) as [\n Options['gravity'],\n Options['position']\n ];\n const duration = options?.duration ?? (options?.autoClose === false ? -1 : CatNotificationService.duration);\n return {\n gravity,\n position,\n node,\n duration,\n close: false,\n className: options?.mode === 'light' ? 'cat-toastify' : 'cat-toastify cat-toastify-dark',\n stopOnFocus: true,\n onClick: () => options?.onClick?.(ref),\n callback: () => options?.onDismiss?.(ref),\n offset: {\n x: '1rem',\n y: '1rem'\n }\n };\n }\n}\n\nexport const catNotificationService = CatNotificationService.getInstance();\n","import { of } from 'rxjs';\nimport { CatSelectConnector } from './cat-select';\n\n/**\n * Creates a connector that resolves local object array data.\n *\n * @param data the object array to connect to\n * @returns a connector that resolves local object array data\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport function objectArrayConnector<T extends { id: string; label: string } = any>(data: T[]): CatSelectConnector<T> {\n return {\n resolve: ids => of(data.filter(({ id }) => ids.includes(id))),\n retrieve: term =>\n of({\n content: data.filter(({ id }) => id.toLowerCase().includes(term.toLowerCase())),\n last: true,\n totalElements: data.length\n }),\n render: ({ label }) => ({ label })\n };\n}\n\n/**\n * Creates a connector that resolves local string array data.\n *\n * @param data the string array to connect to\n * @returns a connector that resolves local string array data\n */\nexport function stringArrayConnector(data: string[]): CatSelectConnector<{ id: string; label: string }> {\n const items = data.map(id => ({ id, label: id }));\n return objectArrayConnector(items);\n}\n\n/**\n * Creates a connector that resolves local string map data.\n *\n * @param data the string map to connect to\n * @returns a connector that resolves local string map data\n */\nexport function stringMapConnector(data: Map<string, string>): CatSelectConnector<{ id: string; label: string }> {\n const items = Array.from(data).map(([id, label]) => ({ id, label }));\n return objectArrayConnector(items);\n}\n"],"mappings":"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"}