@haiilo/catalyst 1.3.1 → 2.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.
- package/dist/catalyst/catalyst.css +1 -1
- package/dist/catalyst/catalyst.esm.js +1 -1
- package/dist/catalyst/catalyst.esm.js.map +1 -1
- package/dist/catalyst/index.cdn.js +10 -6
- package/dist/catalyst/index.esm.js +9 -1
- package/dist/catalyst/index.esm.js.map +1 -1
- package/dist/catalyst/p-167f01e8.entry.js +2 -0
- package/dist/catalyst/p-167f01e8.entry.js.map +1 -0
- package/dist/catalyst/p-5865f232.js +2 -0
- package/dist/catalyst/p-5865f232.js.map +1 -0
- package/dist/catalyst/scss/_variables.scss +1 -1
- package/dist/catalyst/scss/core/_form.scss +8 -0
- package/dist/catalyst/scss/core/_nav.scss +3 -3
- package/dist/catalyst/scss/core/_notification.scss +48 -0
- package/dist/catalyst/scss/index.scss +2 -1
- package/dist/catalyst/scss/utils/_typography.scss +4 -0
- package/dist/cjs/cat-alert_22.cjs.entry.js +351 -290
- package/dist/cjs/cat-alert_22.cjs.entry.js.map +1 -1
- package/dist/cjs/cat-icon-registry-2a54df3d.js +417 -0
- package/dist/cjs/cat-icon-registry-2a54df3d.js.map +1 -0
- package/dist/cjs/catalyst.cjs.js +1 -1
- package/dist/cjs/index.cjs.js +528 -4
- package/dist/cjs/index.cjs.js.map +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/collection-manifest.json +2 -2
- package/dist/collection/components/cat-button/cat-button.css +21 -63
- package/dist/collection/components/cat-button/cat-button.js +21 -4
- package/dist/collection/components/cat-button/cat-button.js.map +1 -1
- package/dist/collection/components/cat-card/cat-card.css +5 -4
- package/dist/collection/components/cat-checkbox/cat-checkbox.css +1 -4
- package/dist/collection/components/cat-checkbox/cat-checkbox.js +1 -1
- package/dist/collection/components/cat-checkbox/cat-checkbox.js.map +1 -1
- package/dist/collection/components/{cat-menu/cat-menu.css → cat-dropdown/cat-dropdown.css} +20 -0
- package/dist/collection/components/{cat-menu/cat-menu.js → cat-dropdown/cat-dropdown.js} +102 -87
- package/dist/collection/components/cat-dropdown/cat-dropdown.js.map +1 -0
- package/dist/collection/components/cat-i18n/cat-i18n-registry.js +13 -38
- package/dist/collection/components/cat-i18n/cat-i18n-registry.js.map +1 -1
- package/dist/collection/components/cat-icon/cat-icon-registry.js +1 -0
- package/dist/collection/components/cat-icon/cat-icon-registry.js.map +1 -1
- package/dist/collection/components/cat-input/cat-input.css +1 -4
- package/dist/collection/components/cat-input/cat-input.js +4 -5
- package/dist/collection/components/cat-input/cat-input.js.map +1 -1
- package/dist/collection/components/cat-notification/cat-notification.js +61 -89
- package/dist/collection/components/cat-notification/cat-notification.js.map +1 -1
- package/dist/collection/components/cat-pagination/cat-pagination.css +106 -0
- package/dist/collection/components/cat-pagination/cat-pagination.js +302 -0
- package/dist/collection/components/cat-pagination/cat-pagination.js.map +1 -0
- package/dist/collection/components/cat-radio/cat-radio.css +1 -4
- package/dist/collection/components/cat-radio/cat-radio.js +1 -1
- package/dist/collection/components/cat-radio/cat-radio.js.map +1 -1
- package/dist/collection/components/cat-select/cat-select.css +1 -4
- package/dist/collection/components/cat-select/cat-select.js +8 -9
- package/dist/collection/components/cat-select/cat-select.js.map +1 -1
- package/dist/collection/components/cat-select-demo/cat-select-demo.js +1 -1
- package/dist/collection/components/cat-select-demo/cat-select-demo.js.map +1 -1
- package/dist/collection/components/cat-tabs/cat-tabs.css +2 -2
- package/dist/collection/components/cat-tabs/cat-tabs.js +2 -2
- package/dist/collection/components/cat-tabs/cat-tabs.js.map +1 -1
- package/dist/collection/components/cat-textarea/cat-textarea.css +1 -4
- package/dist/collection/components/cat-textarea/cat-textarea.js +1 -1
- package/dist/collection/components/cat-textarea/cat-textarea.js.map +1 -1
- package/dist/collection/components/cat-toggle/cat-toggle.css +1 -4
- package/dist/collection/components/cat-toggle/cat-toggle.js +1 -1
- package/dist/collection/components/cat-toggle/cat-toggle.js.map +1 -1
- package/dist/collection/index.cdn.js +10 -6
- package/dist/collection/index.js +3 -3
- package/dist/collection/index.js.map +1 -1
- package/dist/collection/scss/_variables.scss +1 -1
- package/dist/collection/scss/core/_form.scss +8 -0
- package/dist/collection/scss/core/_nav.scss +3 -3
- package/dist/collection/scss/core/_notification.scss +48 -0
- package/dist/collection/scss/index.scss +2 -1
- package/dist/collection/scss/utils/_typography.scss +4 -0
- package/dist/components/cat-button2.js +6 -5
- package/dist/components/cat-button2.js.map +1 -1
- package/dist/components/cat-card.js +1 -1
- package/dist/components/cat-card.js.map +1 -1
- package/dist/components/cat-checkbox2.js +2 -2
- package/dist/components/cat-checkbox2.js.map +1 -1
- package/dist/components/{cat-menu.d.ts → cat-dropdown.d.ts} +4 -4
- package/dist/components/cat-dropdown.js +8 -0
- package/dist/components/cat-dropdown.js.map +1 -0
- package/dist/components/cat-dropdown2.js +195 -0
- package/dist/components/cat-dropdown2.js.map +1 -0
- package/dist/components/cat-i18n-registry.js +14 -39
- package/dist/components/cat-i18n-registry.js.map +1 -1
- package/dist/components/cat-icon2.js +2 -1
- package/dist/components/cat-icon2.js.map +1 -1
- package/dist/components/cat-input.js +5 -6
- package/dist/components/cat-input.js.map +1 -1
- package/dist/components/{cat-toast-demo.d.ts → cat-pagination.d.ts} +4 -4
- package/dist/components/cat-pagination.js +150 -0
- package/dist/components/cat-pagination.js.map +1 -0
- package/dist/components/cat-radio.js +2 -2
- package/dist/components/cat-radio.js.map +1 -1
- package/dist/components/cat-select-demo.js +6 -6
- package/dist/components/cat-select-demo.js.map +1 -1
- package/dist/components/cat-select2.js +7 -8
- package/dist/components/cat-select2.js.map +1 -1
- package/dist/components/cat-tabs.js +3 -3
- package/dist/components/cat-tabs.js.map +1 -1
- package/dist/components/cat-textarea.js +2 -2
- package/dist/components/cat-textarea.js.map +1 -1
- package/dist/components/cat-toggle.js +2 -2
- package/dist/components/cat-toggle.js.map +1 -1
- package/dist/components/index.d.ts +2 -2
- package/dist/components/index.js +531 -4
- package/dist/components/index.js.map +1 -1
- package/dist/esm/cat-alert_22.entry.js +348 -287
- package/dist/esm/cat-alert_22.entry.js.map +1 -1
- package/dist/esm/cat-icon-registry-d537b18b.js +409 -0
- package/dist/esm/cat-icon-registry-d537b18b.js.map +1 -0
- package/dist/esm/catalyst.js +1 -1
- package/dist/esm/index.js +527 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/types/components/cat-button/cat-button.d.ts +4 -0
- package/dist/types/components/{cat-menu/cat-menu.d.ts → cat-dropdown/cat-dropdown.d.ts} +19 -12
- package/dist/types/components/cat-i18n/cat-i18n-registry.d.ts +4 -6
- package/dist/types/components/cat-icon/cat-icon-registry.d.ts +1 -0
- package/dist/types/components/cat-input/cat-input.d.ts +0 -1
- package/dist/types/components/cat-notification/cat-notification.d.ts +21 -48
- package/dist/types/components/cat-pagination/cat-pagination.d.ts +56 -0
- package/dist/types/components/cat-select/cat-select.d.ts +0 -1
- package/dist/types/components.d.ts +145 -57
- package/dist/types/index.d.ts +4 -4
- package/package.json +3 -3
- package/dist/catalyst/p-10b0d7a2.js +0 -10
- package/dist/catalyst/p-10b0d7a2.js.map +0 -1
- package/dist/catalyst/p-b561dcd4.entry.js +0 -2
- package/dist/catalyst/p-b561dcd4.entry.js.map +0 -1
- package/dist/catalyst/scss/core/_toast.scss +0 -87
- package/dist/cjs/cat-notification-bcb9fb86.js +0 -990
- package/dist/cjs/cat-notification-bcb9fb86.js.map +0 -1
- package/dist/collection/components/cat-menu/cat-menu.js.map +0 -1
- package/dist/collection/components/cat-toast-demo/cat-toast-demo.css +0 -3
- package/dist/collection/components/cat-toast-demo/cat-toast-demo.js +0 -62
- package/dist/collection/components/cat-toast-demo/cat-toast-demo.js.map +0 -1
- package/dist/collection/scss/core/_toast.scss +0 -87
- package/dist/components/cat-menu.js +0 -8
- package/dist/components/cat-menu.js.map +0 -1
- package/dist/components/cat-menu2.js +0 -176
- package/dist/components/cat-menu2.js.map +0 -1
- package/dist/components/cat-toast-demo.js +0 -647
- package/dist/components/cat-toast-demo.js.map +0 -1
- package/dist/esm/cat-notification-8bcf6fa2.js +0 -985
- package/dist/esm/cat-notification-8bcf6fa2.js.map +0 -1
- package/dist/types/components/cat-toast-demo/cat-toast-demo.d.ts +0 -9
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { r as registerInstance, h, H as Host, g as getElement, c as createEvent } from './index-c2a28ebb.js';
|
|
2
|
-
import { l as loglevel,
|
|
3
|
-
import {
|
|
2
|
+
import { l as loglevel, e as CatIconRegistry, b as catI18nRegistry } from './cat-icon-registry-d537b18b.js';
|
|
3
|
+
import { c as createFocusTrap, t as tabbable, f as firstTabbable } from './first-tabbable-4a00de61.js';
|
|
4
4
|
|
|
5
5
|
function setAttributeDefault(host, attr, value) {
|
|
6
6
|
if (!host.hostElement.hasAttribute(attr) && value != null) {
|
|
@@ -289,7 +289,7 @@ function createEmptyStyleRule(query) {
|
|
|
289
289
|
}
|
|
290
290
|
}
|
|
291
291
|
|
|
292
|
-
const catButtonCss = ":host{display:inline-block;max-width:100%;vertical-align:middle;-webkit-user-select:none;-ms-user-select:none;user-select:none;}:host([hidden]){display:none}.cat-button{position:relative;font:inherit;display:flex;align-items:center;justify-content:center;border:none;border-radius:var(--cat-border-radius-m, 0.25rem);text-decoration:none;width:100%;box-sizing:border-box;cursor:pointer;transition:color 0.13s linear, border-color 0.13s linear, background-color 0.13s linear, box-shadow 0.13s linear}.cat-button:focus-visible{outline:2px solid rgb(var(--cat-border-color-focus, 0, 113, 255));outline-offset:1px}.cat-button-content{word-wrap:break-word;word-break:break-word}.cat-button-ellipsed .cat-button-content{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.cat-button-disabled{cursor:not-allowed;opacity:var(--cat-opacity-disabled, 0.65)}.cat-button-round{border-radius:10rem}.cat-button-loading{cursor:default}.cat-button-loading cat-spinner{position:absolute}.cat-button-loading>*:not(cat-spinner){visibility:hidden}.cat-button-filled{background-color:rgb(var(--bg));color:rgb(var(--fill));font-weight:600;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:greyscale}.cat-button-filled.cat-button-disabled{--bg:235, 236, 240;--fill:var(--cat-font-color-muted, 105, 118, 135)}.cat-button-outlined{background-color:white;box-shadow:inset 0 0 0 1px rgba(var(--base), 0.2);color:rgb(var(--text))}.cat-button-outlined.cat-button-disabled{--base:var(--cat-font-color-muted, 105, 118, 135);--text:var(--cat-font-color-muted, 105, 118, 135)}.cat-button-outlined:hover:not(.cat-button-disabled):not(.cat-button-loading){background-color:rgba(var(--base), 0.05)}.cat-button-outlined.cat-button-active:not(.cat-button-disabled):not(.cat-button-loading){background-color:rgba(var(--base), 0.1)}.cat-button-outlined:active:not(.cat-button-disabled):not(.cat-button-loading){background-color:rgba(var(--base), 0.1)}.cat-button-text{background-color:transparent;color:rgb(var(--text));text-decoration:var(--cat-link-button-decoration, none)}.cat-button-text.cat-button-disabled{--text:var(--cat-font-color-muted, 105, 118, 135)}.cat-button-text:hover:not(.cat-button-disabled):not(.cat-button-loading){text-decoration:var(--cat-link-button-decoration-hover, none);background-color:rgba(var(--base), 0.05)}.cat-button-text.cat-button-active:not(.cat-button-disabled):not(.cat-button-loading){text-decoration:var(--cat-link-button-decoration-hover, none);background-color:rgba(var(--base), 0.1)}.cat-button-primary{--bg:var(--cat-primary-bg, 0, 129, 148);--fill:var(--cat-primary-fill, 255, 255, 255);--text:var(--cat-primary-text, 0, 129, 148);--base:var(--cat-primary-text, 0, 129, 148)}.cat-button-primary:hover:not(.cat-button-disabled):not(.cat-button-loading){--bg:var(--cat-primary-bg-hover, 1, 115, 132);--fill:var(--cat-primary-fill-hover, 255, 255, 255);--text:var(--cat-primary-text-hover, 1, 115, 132)}.cat-button-primary.cat-button-active:not(.cat-button-disabled):not(.cat-button-loading),.cat-button-primary:active:not(.cat-button-disabled):not(.cat-button-loading){--bg:var(--cat-primary-bg-active, 2, 99, 113);--fill:var(--cat-primary-fill-active, 255, 255, 255);--text:var(--cat-primary-text-active, 2, 99, 113)}.cat-button-secondary{--bg:var(--cat-secondary-bg, 105, 118, 135);--fill:var(--cat-secondary-fill, 255, 255, 255);--text:var(--cat-secondary-text, 0, 0, 0);--base:var(--cat-secondary-bg, 105, 118, 135)}.cat-button-secondary:hover:not(.cat-button-disabled):not(.cat-button-loading){--bg:var(--cat-secondary-bg-hover, 105, 118, 135);--fill:var(--cat-secondary-fill-hover, 255, 255, 255);--text:var(--cat-secondary-text-hover, 0, 0, 0)}.cat-button-secondary.cat-button-active:not(.cat-button-disabled):not(.cat-button-loading),.cat-button-secondary:active:not(.cat-button-disabled):not(.cat-button-loading){--bg:var(--cat-secondary-bg-active, 105, 118, 135);--fill:var(--cat-secondary-fill-active, 255, 255, 255);--text:var(--cat-secondary-text-active, 0, 0, 0)}.cat-button-success{--bg:var(--cat-success-bg-, 0, 132, 88);--fill:var(--cat-success-fill, 255, 255, 255);--text:var(--cat-success-text, 0, 132, 88);--base:var(--cat-success-text, 0, 132, 88)}.cat-button-success:hover:not(.cat-button-disabled):not(.cat-button-loading){--bg:var(--cat-success-bg-hover, 0, 117, 78);--fill:var(--cat-success-fill-hover, 255, 255, 255);--text:var(--cat-success-text-hover, 0, 117, 78)}.cat-button-success.cat-button-active:not(.cat-button-disabled):not(.cat-button-loading),.cat-button-success:active:not(.cat-button-disabled):not(.cat-button-loading){--bg:var(--cat-success-bg-active, 0, 105, 70);--fill:var(--cat-success-fill-active, 255, 255, 255);--text:var(--cat-success-text-active, 0, 105, 70)}.cat-button-warning{--bg:var(--cat-warning-bg, 255, 206, 128);--fill:var(--cat-warning-fill, 0, 0, 0);--text:var(--cat-warning-text, 159, 97, 0);--base:var(--cat-warning-text, 159, 97, 0)}.cat-button-warning:hover:not(.cat-button-disabled):not(.cat-button-loading){--bg:var(--cat-warning-bg-hover, 255, 214, 148);--fill:var(--cat-warning-fill-hover, 0, 0, 0);--text:var(--cat-warning-text-hover, 159, 97, 0)}.cat-button-warning.cat-button-active:not(.cat-button-disabled):not(.cat-button-loading),.cat-button-warning:active:not(.cat-button-disabled):not(.cat-button-loading){--bg:var(--cat-warning-bg-active, 255, 222, 168);--fill:var(--cat-warning-fill-active, 0, 0, 0);--text:var(--cat-warning-text-active, 159, 97, 0)}.cat-button-danger{--bg:var(--cat-danger-bg, 217, 52, 13);--fill:var(--cat-danger-fill, 255, 255, 255);--text:var(--cat-danger-text, 217, 52, 13);--base:var(--cat-danger-text, 217, 52, 13)}.cat-button-danger:hover:not(.cat-button-disabled):not(.cat-button-loading){--bg:var(--cat-danger-bg-hover, 194, 46, 11);--fill:var(--cat-danger-fill-hover, 255, 255, 255);--text:var(--cat-danger-text-hover, 194, 46, 11)}.cat-button-danger.cat-button-active:not(.cat-button-disabled):not(.cat-button-loading),.cat-button-danger:active:not(.cat-button-disabled):not(.cat-button-loading){--bg:var(--cat-danger-bg-active, 174, 42, 10);--fill:var(--cat-danger-fill-active, 255, 255, 255);--text:var(--cat-danger-text-active, 174, 42, 10)}:host(.cat-button-pull:not([size])){margin:-0.625rem -0.75rem}:host(.cat-button-pull-h:not([size])){margin-left:-0.75rem;margin-right:-0.75rem}:host(.cat-button-pull-v:not([size])){margin-top:-0.625rem;margin-bottom:-0.625rem}:host(.cat-button-pull-t:not([size])){margin-top:-0.625rem}:host(.cat-button-pull-l:not([size])){margin-left:-0.75rem}:host(.cat-button-pull-b:not([size])){margin-bottom:-0.625rem}:host(.cat-button-pull-r:not([size])){margin-right:-0.75rem}.cat-button-xs{min-width:1.5rem;padding:0.25rem 0.25rem;font-size:0.875rem;line-height:1rem}.cat-button-xs .cat-button-prefix{margin-right:0.25rem}.cat-button-xs .cat-button-suffix{margin-left:0.25rem}.cat-button-xs.cat-button-icon{width:1.5rem;padding-left:0;padding-right:0}:host-context(nav) .cat-button-xs{padding-left:1.25rem;padding-right:1.25rem}:host(.cat-button-pull[size=xs]){margin:-0.25rem -0.25rem}:host(.cat-button-pull-h[size=xs]){margin-left:-0.25rem;margin-right:-0.25rem}:host(.cat-button-pull-v[size=xs]){margin-top:-0.25rem;margin-bottom:-0.25rem}:host(.cat-button-pull-t[size=xs]){margin-top:-0.25rem}:host(.cat-button-pull-l[size=xs]){margin-left:-0.25rem}:host(.cat-button-pull-b[size=xs]){margin-bottom:-0.25rem}:host(.cat-button-pull-r[size=xs]){margin-right:-0.25rem}.cat-button-s{min-width:2rem;padding:0.375rem 0.5rem;font-size:0.9375rem;line-height:1.25rem}.cat-button-s .cat-button-prefix{margin-right:0.25rem}.cat-button-s .cat-button-suffix{margin-left:0.25rem}.cat-button-s cat-icon{margin-top:-0.125rem;margin-bottom:-0.125rem}.cat-button-s.cat-button-icon{width:2rem;padding-left:0;padding-right:0}:host-context(nav) .cat-button-s{padding-left:1.25rem;padding-right:1.25rem}:host(.cat-button-pull[size=s]){margin:-0.375rem -0.5rem}:host(.cat-button-pull-h[size=s]){margin-left:-0.5rem;margin-right:-0.5rem}:host(.cat-button-pull-v[size=s]){margin-top:-0.375rem;margin-bottom:-0.375rem}:host(.cat-button-pull-t[size=s]){margin-top:-0.375rem}:host(.cat-button-pull-l[size=s]){margin-left:-0.5rem}:host(.cat-button-pull-b[size=s]){margin-bottom:-0.375rem}:host(.cat-button-pull-r[size=s]){margin-right:-0.5rem}.cat-button-m{min-width:2.5rem;padding:0.625rem 0.75rem;font-size:0.9375rem;line-height:1.25rem}.cat-button-m .cat-button-prefix{margin-right:0.25rem}.cat-button-m .cat-button-suffix{margin-left:0.25rem}.cat-button-m cat-icon{margin-top:-0.125rem;margin-bottom:-0.125rem}.cat-button-m.cat-button-icon{width:2.5rem;padding-left:0;padding-right:0}:host-context(nav) .cat-button-m{padding-left:1.25rem;padding-right:1.25rem}:host(.cat-button-pull[size=m]){margin:-0.625rem -0.75rem}:host(.cat-button-pull-h[size=m]){margin-left:-0.75rem;margin-right:-0.75rem}:host(.cat-button-pull-v[size=m]){margin-top:-0.625rem;margin-bottom:-0.625rem}:host(.cat-button-pull-t[size=m]){margin-top:-0.625rem}:host(.cat-button-pull-l[size=m]){margin-left:-0.75rem}:host(.cat-button-pull-b[size=m]){margin-bottom:-0.625rem}:host(.cat-button-pull-r[size=m]){margin-right:-0.75rem}.cat-button-l{min-width:3rem;padding:0.875rem 1rem;font-size:0.9375rem;line-height:1.25rem}.cat-button-l .cat-button-prefix{margin-right:0.25rem}.cat-button-l .cat-button-suffix{margin-left:0.25rem}.cat-button-l cat-icon{margin-top:-0.125rem;margin-bottom:-0.125rem}.cat-button-l.cat-button-icon{width:3rem;padding-left:0;padding-right:0}:host-context(nav) .cat-button-l{padding-left:1.25rem;padding-right:1.25rem}:host(.cat-button-pull[size=l]){margin:-0.875rem -1rem}:host(.cat-button-pull-h[size=l]){margin-left:-1rem;margin-right:-1rem}:host(.cat-button-pull-v[size=l]){margin-top:-0.875rem;margin-bottom:-0.875rem}:host(.cat-button-pull-t[size=l]){margin-top:-0.875rem}:host(.cat-button-pull-l[size=l]){margin-left:-1rem}:host(.cat-button-pull-b[size=l]){margin-bottom:-0.875rem}:host(.cat-button-pull-r[size=l]){margin-right:-1rem}.cat-button-xl{min-width:3.5rem;padding:1rem 1.25rem;font-size:1.125rem;line-height:1.5rem}.cat-button-xl .cat-button-prefix{margin-right:0.25rem}.cat-button-xl .cat-button-suffix{margin-left:0.25rem}.cat-button-xl.cat-button-icon{width:3.5rem;padding-left:0;padding-right:0}:host-context(nav) .cat-button-xl{padding-left:1.25rem;padding-right:1.25rem}:host(.cat-button-pull[size=xl]){margin:-1rem -1.25rem}:host(.cat-button-pull-h[size=xl]){margin-left:-1.25rem;margin-right:-1.25rem}:host(.cat-button-pull-v[size=xl]){margin-top:-1rem;margin-bottom:-1rem}:host(.cat-button-pull-t[size=xl]){margin-top:-1rem}:host(.cat-button-pull-l[size=xl]){margin-left:-1.25rem}:host(.cat-button-pull-b[size=xl]){margin-bottom:-1rem}:host(.cat-button-pull-r[size=xl]){margin-right:-1.25rem}:host-context(cat-tabs) .cat-button{background-color:transparent !important}:host-context(nav){width:100%}:host-context(nav) .cat-button{box-shadow:none;border-radius:0;justify-content:left}:host-context(nav) .cat-button:focus-visible{outline-offset:-2px}:host(.cat-text-left) .cat-button{justify-content:left}:host(.cat-text-right) .cat-button{justify-content:right}";
|
|
292
|
+
const catButtonCss = ":host{display:inline-block;max-width:100%;vertical-align:middle;-webkit-user-select:none;-ms-user-select:none;user-select:none;}:host([hidden]){display:none}.cat-button{position:relative;font:inherit;display:flex;align-items:center;justify-content:center;border:none;border-radius:var(--cat-border-radius-m, 0.25rem);text-decoration:none;width:100%;box-sizing:border-box;cursor:pointer;transition:color 0.13s linear, border-color 0.13s linear, background-color 0.13s linear, box-shadow 0.13s linear}.cat-button:focus-visible{outline:2px solid rgb(var(--cat-border-color-focus, 0, 113, 255));outline-offset:1px}.cat-button-content{word-wrap:break-word;word-break:break-word}.cat-button-ellipsed .cat-button-content{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.cat-button-disabled{cursor:not-allowed;opacity:var(--cat-opacity-disabled, 0.65)}.cat-button-round{border-radius:10rem}.cat-button-loading{cursor:default}.cat-button-loading cat-spinner{position:absolute}.cat-button-loading>*:not(cat-spinner){visibility:hidden}.cat-button-filled{background-color:rgb(var(--bg));color:rgb(var(--fill));font-weight:600;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:greyscale}.cat-button-filled.cat-button-disabled{--bg:235, 236, 240;--fill:var(--cat-font-color-muted, 105, 118, 135)}.cat-button-outlined{background-color:white;box-shadow:inset 0 0 0 1px rgba(var(--base), 0.2);color:rgb(var(--text))}.cat-button-outlined.cat-button-disabled{--base:var(--cat-font-color-muted, 105, 118, 135);--text:var(--cat-font-color-muted, 105, 118, 135)}.cat-button-outlined:hover:not(.cat-button-disabled):not(.cat-button-loading){background-color:rgba(var(--base), 0.05)}.cat-button-outlined.cat-button-active:not(.cat-button-disabled):not(.cat-button-loading){background-color:rgba(var(--base), 0.1)}.cat-button-outlined:active:not(.cat-button-disabled):not(.cat-button-loading){background-color:rgba(var(--base), 0.1)}.cat-button-text{background-color:transparent;color:rgb(var(--text));text-decoration:var(--cat-link-button-decoration, none)}.cat-button-text.cat-button-disabled{--text:var(--cat-font-color-muted, 105, 118, 135)}.cat-button-text:hover:not(.cat-button-disabled):not(.cat-button-loading){text-decoration:var(--cat-link-button-decoration-hover, none);background-color:rgba(var(--base), 0.05)}.cat-button-text.cat-button-active:not(.cat-button-disabled):not(.cat-button-loading){text-decoration:var(--cat-link-button-decoration-hover, none);background-color:rgba(var(--base), 0.1)}.cat-button-primary{--bg:var(--cat-primary-bg, 0, 129, 148);--fill:var(--cat-primary-fill, 255, 255, 255);--text:var(--cat-primary-text, 0, 129, 148);--base:var(--cat-primary-text, 0, 129, 148)}.cat-button-primary:hover:not(.cat-button-disabled):not(.cat-button-loading){--bg:var(--cat-primary-bg-hover, 1, 115, 132);--fill:var(--cat-primary-fill-hover, 255, 255, 255);--text:var(--cat-primary-text-hover, 1, 115, 132)}.cat-button-primary.cat-button-active:not(.cat-button-disabled):not(.cat-button-loading),.cat-button-primary:active:not(.cat-button-disabled):not(.cat-button-loading){--bg:var(--cat-primary-bg-active, 2, 99, 113);--fill:var(--cat-primary-fill-active, 255, 255, 255);--text:var(--cat-primary-text-active, 2, 99, 113)}.cat-button-secondary{--bg:var(--cat-secondary-bg, 105, 118, 135);--fill:var(--cat-secondary-fill, 255, 255, 255);--text:var(--cat-secondary-text, 0, 0, 0);--base:var(--cat-secondary-bg, 105, 118, 135)}.cat-button-secondary:hover:not(.cat-button-disabled):not(.cat-button-loading){--bg:var(--cat-secondary-bg-hover, 105, 118, 135);--fill:var(--cat-secondary-fill-hover, 255, 255, 255);--text:var(--cat-secondary-text-hover, 0, 0, 0)}.cat-button-secondary.cat-button-active:not(.cat-button-disabled):not(.cat-button-loading),.cat-button-secondary:active:not(.cat-button-disabled):not(.cat-button-loading){--bg:var(--cat-secondary-bg-active, 105, 118, 135);--fill:var(--cat-secondary-fill-active, 255, 255, 255);--text:var(--cat-secondary-text-active, 0, 0, 0)}.cat-button-success{--bg:var(--cat-success-bg-, 0, 132, 88);--fill:var(--cat-success-fill, 255, 255, 255);--text:var(--cat-success-text, 0, 132, 88);--base:var(--cat-success-text, 0, 132, 88)}.cat-button-success:hover:not(.cat-button-disabled):not(.cat-button-loading){--bg:var(--cat-success-bg-hover, 0, 117, 78);--fill:var(--cat-success-fill-hover, 255, 255, 255);--text:var(--cat-success-text-hover, 0, 117, 78)}.cat-button-success.cat-button-active:not(.cat-button-disabled):not(.cat-button-loading),.cat-button-success:active:not(.cat-button-disabled):not(.cat-button-loading){--bg:var(--cat-success-bg-active, 0, 105, 70);--fill:var(--cat-success-fill-active, 255, 255, 255);--text:var(--cat-success-text-active, 0, 105, 70)}.cat-button-warning{--bg:var(--cat-warning-bg, 255, 206, 128);--fill:var(--cat-warning-fill, 0, 0, 0);--text:var(--cat-warning-text, 159, 97, 0);--base:var(--cat-warning-text, 159, 97, 0)}.cat-button-warning:hover:not(.cat-button-disabled):not(.cat-button-loading){--bg:var(--cat-warning-bg-hover, 255, 214, 148);--fill:var(--cat-warning-fill-hover, 0, 0, 0);--text:var(--cat-warning-text-hover, 159, 97, 0)}.cat-button-warning.cat-button-active:not(.cat-button-disabled):not(.cat-button-loading),.cat-button-warning:active:not(.cat-button-disabled):not(.cat-button-loading){--bg:var(--cat-warning-bg-active, 255, 222, 168);--fill:var(--cat-warning-fill-active, 0, 0, 0);--text:var(--cat-warning-text-active, 159, 97, 0)}.cat-button-danger{--bg:var(--cat-danger-bg, 217, 52, 13);--fill:var(--cat-danger-fill, 255, 255, 255);--text:var(--cat-danger-text, 217, 52, 13);--base:var(--cat-danger-text, 217, 52, 13)}.cat-button-danger:hover:not(.cat-button-disabled):not(.cat-button-loading){--bg:var(--cat-danger-bg-hover, 194, 46, 11);--fill:var(--cat-danger-fill-hover, 255, 255, 255);--text:var(--cat-danger-text-hover, 194, 46, 11)}.cat-button-danger.cat-button-active:not(.cat-button-disabled):not(.cat-button-loading),.cat-button-danger:active:not(.cat-button-disabled):not(.cat-button-loading){--bg:var(--cat-danger-bg-active, 174, 42, 10);--fill:var(--cat-danger-fill-active, 255, 255, 255);--text:var(--cat-danger-text-active, 174, 42, 10)}:host(.cat-button-pull:not([size])){margin:-0.625rem -0.75rem}:host(.cat-button-pull-h:not([size])){margin-left:-0.75rem;margin-right:-0.75rem}:host(.cat-button-pull-v:not([size])){margin-top:-0.625rem;margin-bottom:-0.625rem}:host(.cat-button-pull-t:not([size])){margin-top:-0.625rem}:host(.cat-button-pull-l:not([size])){margin-left:-0.75rem}:host(.cat-button-pull-b:not([size])){margin-bottom:-0.625rem}:host(.cat-button-pull-r:not([size])){margin-right:-0.75rem}.cat-button-xs{min-width:1.5rem;padding:0.25rem 0.25rem;font-size:0.875rem;line-height:1rem;gap:0.25rem}.cat-button-xs.cat-button-icon{width:1.5rem;padding-left:0;padding-right:0}:host(.cat-button-pull[size=xs]){margin:-0.25rem -0.25rem}:host(.cat-button-pull-h[size=xs]){margin-left:-0.25rem;margin-right:-0.25rem}:host(.cat-button-pull-v[size=xs]){margin-top:-0.25rem;margin-bottom:-0.25rem}:host(.cat-button-pull-t[size=xs]){margin-top:-0.25rem}:host(.cat-button-pull-l[size=xs]){margin-left:-0.25rem}:host(.cat-button-pull-b[size=xs]){margin-bottom:-0.25rem}:host(.cat-button-pull-r[size=xs]){margin-right:-0.25rem}.cat-button-s{min-width:2rem;padding:0.375rem 0.5rem;font-size:0.9375rem;line-height:1.25rem;gap:0.25rem}.cat-button-s cat-icon{margin-top:-0.125rem;margin-bottom:-0.125rem}.cat-button-s.cat-button-icon{width:2rem;padding-left:0;padding-right:0}:host(.cat-button-pull[size=s]){margin:-0.375rem -0.5rem}:host(.cat-button-pull-h[size=s]){margin-left:-0.5rem;margin-right:-0.5rem}:host(.cat-button-pull-v[size=s]){margin-top:-0.375rem;margin-bottom:-0.375rem}:host(.cat-button-pull-t[size=s]){margin-top:-0.375rem}:host(.cat-button-pull-l[size=s]){margin-left:-0.5rem}:host(.cat-button-pull-b[size=s]){margin-bottom:-0.375rem}:host(.cat-button-pull-r[size=s]){margin-right:-0.5rem}.cat-button-m{min-width:2.5rem;padding:0.625rem 0.75rem;font-size:0.9375rem;line-height:1.25rem;gap:0.25rem}.cat-button-m cat-icon{margin-top:-0.125rem;margin-bottom:-0.125rem}.cat-button-m.cat-button-icon{width:2.5rem;padding-left:0;padding-right:0}:host(.cat-button-pull[size=m]){margin:-0.625rem -0.75rem}:host(.cat-button-pull-h[size=m]){margin-left:-0.75rem;margin-right:-0.75rem}:host(.cat-button-pull-v[size=m]){margin-top:-0.625rem;margin-bottom:-0.625rem}:host(.cat-button-pull-t[size=m]){margin-top:-0.625rem}:host(.cat-button-pull-l[size=m]){margin-left:-0.75rem}:host(.cat-button-pull-b[size=m]){margin-bottom:-0.625rem}:host(.cat-button-pull-r[size=m]){margin-right:-0.75rem}.cat-button-l{min-width:3rem;padding:0.875rem 1rem;font-size:0.9375rem;line-height:1.25rem;gap:0.25rem}.cat-button-l cat-icon{margin-top:-0.125rem;margin-bottom:-0.125rem}.cat-button-l.cat-button-icon{width:3rem;padding-left:0;padding-right:0}:host(.cat-button-pull[size=l]){margin:-0.875rem -1rem}:host(.cat-button-pull-h[size=l]){margin-left:-1rem;margin-right:-1rem}:host(.cat-button-pull-v[size=l]){margin-top:-0.875rem;margin-bottom:-0.875rem}:host(.cat-button-pull-t[size=l]){margin-top:-0.875rem}:host(.cat-button-pull-l[size=l]){margin-left:-1rem}:host(.cat-button-pull-b[size=l]){margin-bottom:-0.875rem}:host(.cat-button-pull-r[size=l]){margin-right:-1rem}.cat-button-xl{min-width:3.5rem;padding:1rem 1.25rem;font-size:1.125rem;line-height:1.5rem;gap:0.25rem}.cat-button-xl.cat-button-icon{width:3.5rem;padding-left:0;padding-right:0}:host(.cat-button-pull[size=xl]){margin:-1rem -1.25rem}:host(.cat-button-pull-h[size=xl]){margin-left:-1.25rem;margin-right:-1.25rem}:host(.cat-button-pull-v[size=xl]){margin-top:-1rem;margin-bottom:-1rem}:host(.cat-button-pull-t[size=xl]){margin-top:-1rem}:host(.cat-button-pull-l[size=xl]){margin-left:-1.25rem}:host(.cat-button-pull-b[size=xl]){margin-bottom:-1rem}:host(.cat-button-pull-r[size=xl]){margin-right:-1.25rem}:host(.cat-tab-active:not(:hover)){--cat-primary-text:transparent}:host(.cat-text-left) .cat-button{justify-content:left}:host(.cat-text-right) .cat-button{justify-content:right}:host(.cat-nav-item){width:100%}:host(.cat-nav-item) .cat-button{box-shadow:none;border-radius:0;justify-content:left;padding-left:1.25rem;padding-right:1.25rem;gap:0.5rem}:host(.cat-nav-item) .cat-button:focus-visible{outline-offset:-2px}";
|
|
293
293
|
|
|
294
294
|
const CatButton = class {
|
|
295
295
|
constructor(hostRef) {
|
|
@@ -391,7 +391,7 @@ const CatButton = class {
|
|
|
391
391
|
render() {
|
|
392
392
|
var _a;
|
|
393
393
|
if (this.url) {
|
|
394
|
-
return (h("a", { ref: el => (this.button = el), href: this.disabled ? undefined : this.url, target: this.urlTarget, "aria-disabled": this.disabled ? 'true' : null, "aria-label": this.a11yLabel, id: this.buttonId, part: "button", class: {
|
|
394
|
+
return (h("a", { ref: el => (this.button = el), href: this.disabled ? undefined : this.url, target: this.urlTarget, "aria-disabled": this.disabled ? 'true' : null, "aria-label": this.a11yLabel, "aria-current": this.a11yCurrent, id: this.buttonId, part: "button", class: {
|
|
395
395
|
'cat-button': true,
|
|
396
396
|
'cat-button-icon': this.isIconButton,
|
|
397
397
|
'cat-button-round': this.round,
|
|
@@ -404,7 +404,7 @@ const CatButton = class {
|
|
|
404
404
|
}, onClick: this.onClick.bind(this), onFocus: this.onFocus.bind(this), onBlur: this.onBlur.bind(this) }, this.content));
|
|
405
405
|
}
|
|
406
406
|
else {
|
|
407
|
-
return (h("button", { ref: el => (this.button = el), type: this.submit ? 'submit' : 'button', name: this.name, value: this.value, disabled: this.disabled, "aria-disabled": this.disabled ? 'true' : null, "aria-label": this.a11yLabel, id: this.buttonId, part: "button", class: {
|
|
407
|
+
return (h("button", { ref: el => (this.button = el), type: this.submit ? 'submit' : 'button', name: this.name, value: this.value, disabled: this.disabled, "aria-disabled": this.disabled ? 'true' : null, "aria-label": this.a11yLabel, "aria-current": this.a11yCurrent, id: this.buttonId, part: "button", class: {
|
|
408
408
|
'cat-button': true,
|
|
409
409
|
'cat-button-active': this.active,
|
|
410
410
|
'cat-button-icon': this.isIconButton,
|
|
@@ -445,9 +445,9 @@ const CatButton = class {
|
|
|
445
445
|
}
|
|
446
446
|
get content() {
|
|
447
447
|
return [
|
|
448
|
-
this.hasPrefixIcon ?
|
|
448
|
+
this.hasPrefixIcon ? h("cat-icon", { icon: this.icon, size: this.iconSize, part: "prefix" }) : null,
|
|
449
449
|
this.isIconButton ? (h("cat-icon", { icon: this.icon, size: this.iconSize })) : (h("span", { class: "cat-button-content", part: "content" }, h("slot", null))),
|
|
450
|
-
this.hasSuffixIcon ?
|
|
450
|
+
this.hasSuffixIcon ? h("cat-icon", { icon: this.icon, size: this.iconSize, part: "suffix" }) : null,
|
|
451
451
|
this.loading ? h("cat-spinner", { size: this.spinnerSize }) : null
|
|
452
452
|
];
|
|
453
453
|
}
|
|
@@ -466,7 +466,7 @@ const CatButton = class {
|
|
|
466
466
|
};
|
|
467
467
|
CatButton.style = catButtonCss;
|
|
468
468
|
|
|
469
|
-
const catCardCss = ":host{display:block;margin-bottom:1rem;border-radius:var(--cat-border-radius-l, 0.5rem);background-color:white;padding:1.25rem}:host([hidden]){display:none}::slotted(
|
|
469
|
+
const catCardCss = ":host{display:block;margin-bottom:1rem;border-radius:var(--cat-border-radius-l, 0.5rem);background-color:white;padding:1.25rem}:host([hidden]){display:none}::slotted(:last-child){margin-bottom:0 !important}::slotted(nav),::slotted(nav:last-child){margin:-0.75rem -1.25rem !important}::slotted(.cat-card-pull){margin:-1.25rem !important;width:calc(100% + 2.5rem) !important;height:calc(100% + 2.5rem) !important}::slotted(.cat-card-pull-h){margin-left:-1.25rem !important;margin-right:-1.25rem !important;width:calc(100% + 2.5rem) !important}::slotted(.cat-card-pull-v){margin-top:-1.25rem !important;margin-bottom:-1.25rem !important;height:calc(100% + 2.5rem) !important}::slotted(.cat-card-pull-t){margin-top:-1.25rem !important}::slotted(.cat-card-pull-l){margin-left:-1.25rem !important}::slotted(.cat-card-pull-r){margin-right:-1.25rem !important}::slotted(.cat-card-pull-b){margin-bottom:-1.25rem !important}";
|
|
470
470
|
|
|
471
471
|
const CatCard = class {
|
|
472
472
|
constructor(hostRef) {
|
|
@@ -493,7 +493,7 @@ const CatFormHint = props => {
|
|
|
493
493
|
]));
|
|
494
494
|
};
|
|
495
495
|
|
|
496
|
-
const catCheckboxCss = ".hint-section{display:flex;gap:0.5rem;flex-direction:column}.hint-section .input-hint,.hint-section ::slotted([slot=hint]){font-size:0.875rem;line-height:1rem;font-weight:var(--cat-font-weight-body, 400);margin:0 !important}:host
|
|
496
|
+
const catCheckboxCss = ".hint-section{display:flex;gap:0.5rem;flex-direction:column;color:rgb(var(--cat-hint-color, inherit))}.hint-section .input-hint,.hint-section ::slotted([slot=hint]){font-size:0.875rem;line-height:1rem;font-weight:var(--cat-font-weight-body, 400);margin:0 !important}:host{display:flex;flex-direction:column;gap:0.5rem;margin-bottom:1rem}:host([hidden]){display:none}label{flex:0 1 auto;display:flex;gap:0.5rem;font-size:0.9375rem;line-height:1.25rem;font-weight:var(--cat-font-weight-body, 400);-webkit-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;position:relative}.label-left{flex-direction:row-reverse}.label-left input{right:1px;left:unset}input{position:absolute;width:1.25rem;height:1.25rem;margin:0;opacity:0;cursor:inherit;left:1px;top:0.5px}.box{flex:0 0 auto;display:flex;position:relative;height:1.25rem;width:1.25rem;background-color:white;border:1px solid rgb(var(--cat-border-color-dark, 215, 219, 224));border-radius:var(--cat-border-radius-s, 0.125rem);transition:background-color 0.13s ease, border-color 0.13s ease;pointer-events:none}.box svg{fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:16px;stroke-dashoffset:16px;transition:all 0.13s ease;width:50%;position:absolute;top:50%;left:50%;transform:translate(-50%, -50%) scale(0.99)}:checked+.box{background-color:rgb(var(--cat-primary-bg, 0, 129, 148));border-color:rgb(var(--cat-primary-bg, 0, 129, 148));stroke:rgb(var(--cat-primary-fill, 255, 255, 255))}:checked+.box .check{stroke-dashoffset:0}:indeterminate+.box{background-color:rgb(var(--cat-primary-bg, 0, 129, 148));border-color:rgb(var(--cat-primary-bg, 0, 129, 148));stroke:rgb(var(--cat-primary-fill, 255, 255, 255))}:indeterminate+.box .dash{stroke-dashoffset:0}:focus-visible+.box{outline:2px solid rgb(var(--cat-border-color-focus, 0, 113, 255));outline-offset:1px}.is-disabled .box{background-color:#f2f4f7;border-color:rgb(var(--cat-border-color-dark, 215, 219, 224));stroke:rgb(var(--cat-font-color-muted, 105, 118, 135))}:host(.cat-error) .box{border:1px solid rgb(var(--cat-danger-bg, 217, 52, 13))}:host(.cat-error) :checked+.box,:host(.cat-error) :indeterminate+.box{background-color:rgb(var(--cat-danger-bg, 217, 52, 13));border-color:rgb(var(--cat-danger-bg, 217, 52, 13));stroke:rgb(var(--cat-danger-fill, 255, 255, 255))}.label{flex:1 1 auto;min-width:0}.is-hidden .label{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border:0 !important}.is-disabled{cursor:not-allowed;color:rgb(var(--cat-font-color-muted, 105, 118, 135))}";
|
|
497
497
|
|
|
498
498
|
let nextUniqueId$8 = 0;
|
|
499
499
|
const CatCheckbox = class {
|
|
@@ -541,7 +541,7 @@ const CatCheckbox = class {
|
|
|
541
541
|
componentWillRender() {
|
|
542
542
|
this.hasSlottedLabel = !!this.hostElement.querySelector('[slot="label"]');
|
|
543
543
|
if (!this.label && !this.hasSlottedLabel) {
|
|
544
|
-
loglevel.
|
|
544
|
+
loglevel.warn('[A11y] Missing ARIA label on checkbox', this);
|
|
545
545
|
}
|
|
546
546
|
}
|
|
547
547
|
/**
|
|
@@ -577,131 +577,6 @@ const CatCheckbox = class {
|
|
|
577
577
|
};
|
|
578
578
|
CatCheckbox.style = catCheckboxCss;
|
|
579
579
|
|
|
580
|
-
const catIconCss = ":host{display:inline-flex;vertical-align:middle;-webkit-user-select:none;-ms-user-select:none;user-select:none;}:host([hidden]){display:none}span{display:inline-flex}svg{fill:currentColor;stroke:none;transform-origin:center center;height:1em;width:calc(var(--cat-icon-ratio, 1) * 1em)}.icon-xs svg{font-size:0.75rem}.icon-s svg{font-size:1rem}.icon-m svg{font-size:1.25rem}.icon-l svg{font-size:1.5rem}.icon-xl svg{font-size:1.75rem}";
|
|
581
|
-
|
|
582
|
-
const CatIcon = class {
|
|
583
|
-
constructor(hostRef) {
|
|
584
|
-
registerInstance(this, hostRef);
|
|
585
|
-
this.iconRegistry = CatIconRegistry.getInstance();
|
|
586
|
-
/**
|
|
587
|
-
* The name of the icon.
|
|
588
|
-
*/
|
|
589
|
-
this.icon = '';
|
|
590
|
-
/**
|
|
591
|
-
* The size of the icon.
|
|
592
|
-
*/
|
|
593
|
-
this.size = 'm';
|
|
594
|
-
}
|
|
595
|
-
render() {
|
|
596
|
-
return (h("span", { innerHTML: this.iconRegistry.getIcon(this.icon), "aria-label": this.a11yLabel, "aria-hidden": this.a11yLabel ? null : 'true', part: "icon", class: {
|
|
597
|
-
icon: true,
|
|
598
|
-
[`icon-${this.size}`]: this.size !== 'inline'
|
|
599
|
-
} }));
|
|
600
|
-
}
|
|
601
|
-
};
|
|
602
|
-
CatIcon.style = catIconCss;
|
|
603
|
-
|
|
604
|
-
const catInputCss = ".hint-section{display:flex;gap:0.5rem;flex-direction:column}.hint-section .input-hint,.hint-section ::slotted([slot=hint]){font-size:0.875rem;line-height:1rem;font-weight:var(--cat-font-weight-body, 400);margin:0 !important}:host-context(.cat-error) .hint-section{color:rgb(var(--cat-danger-text, 217, 52, 13))}:host{display:flex;flex-direction:column;gap:0.5rem;font-size:0.9375rem;line-height:1.25rem;font-weight:var(--cat-font-weight-body, 400);margin-bottom:1rem}:host([hidden]){display:none}.input-wrapper{display:flex;align-items:stretch;gap:0.75rem;padding:0 0.75rem;height:2.5rem;overflow:hidden;background:white;border-radius:var(--cat-border-radius-m, 0.25rem);box-shadow:0 0 0 1px rgb(var(--cat-border-color-dark, 215, 219, 224));transition:box-shadow 0.13s linear}.input-wrapper.input-round{border-radius:10rem}.input-wrapper.input-disabled{background:#f2f4f7;cursor:not-allowed;color:rgb(var(--cat-font-color-muted, 105, 118, 135))}.input-wrapper:not(.input-disabled):hover{box-shadow:0 0 0 2px rgb(var(--cat-border-color-dark, 215, 219, 224))}.input-wrapper:not(.input-disabled):focus-within{outline:2px solid rgb(var(--cat-border-color-focus, 0, 113, 255))}:host(.cat-error) .input-wrapper{box-shadow:0 0 0 1px rgb(var(--cat-danger-bg, 217, 52, 13))}:host(.cat-error) .input-wrapper:not(.input-disabled):hover{box-shadow:0 0 0 2px rgb(var(--cat-danger-bg, 217, 52, 13))}label{align-self:flex-start}label.hidden{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border:0 !important}.input-optional{margin-left:0.25rem;font-size:0.75rem;line-height:1rem;font-weight:var(--cat-font-weight-body, 400);color:rgb(var(--cat-font-color-muted, 105, 118, 135))}.text-prefix,.text-suffix{display:inline-flex;align-items:center;-webkit-user-select:none;-ms-user-select:none;user-select:none;}.text-prefix{border-right:1px solid rgb(var(--cat-border-color-dark, 215, 219, 224));padding-right:0.75rem}.text-suffix{border-left:1px solid rgb(var(--cat-border-color-dark, 215, 219, 224));padding-left:0.75rem}.icon-prefix,.icon-suffix{align-self:center}.input-inner-wrapper{display:flex;align-items:center;position:relative;flex:1 1 auto}input{font:inherit;margin:0;padding:0;width:100%;min-width:0;border:none;outline:none;background:none}.input-disabled input{cursor:not-allowed;color:rgb(var(--cat-font-color-muted, 105, 118, 135))}input.has-clearable{padding-right:1.5rem}input::placeholder{color:rgb(var(--cat-font-color-muted, 105, 118, 135))}.clearable{position:absolute;top:calc(50% - 1rem);right:-0.5rem}";
|
|
605
|
-
|
|
606
|
-
let nextUniqueId$7 = 0;
|
|
607
|
-
const CatInput = class {
|
|
608
|
-
constructor(hostRef) {
|
|
609
|
-
registerInstance(this, hostRef);
|
|
610
|
-
this.catChange = createEvent(this, "catChange", 7);
|
|
611
|
-
this.catFocus = createEvent(this, "catFocus", 7);
|
|
612
|
-
this.catBlur = createEvent(this, "catBlur", 7);
|
|
613
|
-
this.i18n = CatI18nRegistry.getInstance();
|
|
614
|
-
this.id = `cat-input-${nextUniqueId$7++}`;
|
|
615
|
-
this.hasSlottedLabel = false;
|
|
616
|
-
/**
|
|
617
|
-
* Whether the input should show a clear button.
|
|
618
|
-
*/
|
|
619
|
-
this.clearable = false;
|
|
620
|
-
/**
|
|
621
|
-
* Whether the input is disabled.
|
|
622
|
-
*/
|
|
623
|
-
this.disabled = false;
|
|
624
|
-
/**
|
|
625
|
-
* Display the icon on the right.
|
|
626
|
-
*/
|
|
627
|
-
this.iconRight = false;
|
|
628
|
-
/**
|
|
629
|
-
* The label for the input.
|
|
630
|
-
*/
|
|
631
|
-
this.label = '';
|
|
632
|
-
/**
|
|
633
|
-
* Visually hide the label, but still show it to assistive technologies like screen readers.
|
|
634
|
-
*/
|
|
635
|
-
this.labelHidden = false;
|
|
636
|
-
/**
|
|
637
|
-
* The name of the form control. Submitted with the form as part of a name/value pair.
|
|
638
|
-
*/
|
|
639
|
-
this.name = '';
|
|
640
|
-
/**
|
|
641
|
-
* The value is not editable.
|
|
642
|
-
*/
|
|
643
|
-
this.readonly = false;
|
|
644
|
-
/**
|
|
645
|
-
* A value is required or must be check for the form to be submittable.
|
|
646
|
-
*/
|
|
647
|
-
this.required = false;
|
|
648
|
-
/**
|
|
649
|
-
* Use round input edges.
|
|
650
|
-
*/
|
|
651
|
-
this.round = false;
|
|
652
|
-
/**
|
|
653
|
-
* Type of form control.
|
|
654
|
-
*/
|
|
655
|
-
this.type = 'text';
|
|
656
|
-
}
|
|
657
|
-
componentWillRender() {
|
|
658
|
-
this.hasSlottedLabel = !!this.hostElement.querySelector('[slot="label"]');
|
|
659
|
-
if (!this.label && !this.hasSlottedLabel) {
|
|
660
|
-
loglevel.error('[A11y] Missing ARIA label on input', this);
|
|
661
|
-
}
|
|
662
|
-
}
|
|
663
|
-
/**
|
|
664
|
-
* Sets focus on the input. Use this method instead of `input.focus()`.
|
|
665
|
-
*
|
|
666
|
-
* @param options An optional object providing options to control aspects of
|
|
667
|
-
* the focusing process.
|
|
668
|
-
*/
|
|
669
|
-
async setFocus(options) {
|
|
670
|
-
this.input.focus(options);
|
|
671
|
-
}
|
|
672
|
-
/**
|
|
673
|
-
* Clear the input.
|
|
674
|
-
*/
|
|
675
|
-
async clear() {
|
|
676
|
-
this.value = '';
|
|
677
|
-
}
|
|
678
|
-
render() {
|
|
679
|
-
return (h(Host, null, (this.hasSlottedLabel || this.label) && (h("label", { htmlFor: this.id, class: { hidden: this.labelHidden } }, h("span", { part: "label" }, (this.hasSlottedLabel && h("slot", { name: "label" })) || this.label, !this.required && (h("span", { class: "input-optional", "aria-hidden": "true" }, "(", this.i18n.t('input.optional'), ")"))))), h("div", { class: {
|
|
680
|
-
'input-wrapper': true,
|
|
681
|
-
'input-round': this.round,
|
|
682
|
-
'input-disabled': this.disabled
|
|
683
|
-
}, onClick: () => this.input.focus() }, this.textPrefix && (h("span", { class: "text-prefix", part: "prefix" }, this.textPrefix)), this.icon && !this.iconRight && h("cat-icon", { icon: this.icon, class: "icon-prefix", size: "l" }), h("div", { class: "input-inner-wrapper" }, h("input", { ref: el => (this.input = el), id: this.id, class: {
|
|
684
|
-
'has-clearable': this.clearable && !this.disabled
|
|
685
|
-
}, autocomplete: this.autoComplete, disabled: this.disabled, max: this.max, maxlength: this.maxLength, min: this.min, minlength: this.minLength, name: this.name, placeholder: this.placeholder, readonly: this.readonly, required: this.required, type: this.type, value: this.value, onInput: this.onInput.bind(this), onFocus: this.onFocus.bind(this), onBlur: this.onBlur.bind(this) }), this.clearable && !this.disabled && this.value && (h("cat-button", { class: "clearable", icon: "cross-circle-outlined", "icon-only": "true", size: "s", variant: "text", "a11y-label": this.i18n.t('input.clear'), onClick: this.clear.bind(this) }))), this.icon && this.iconRight && h("cat-icon", { icon: this.icon, class: "icon-suffix", size: "l" }), this.textSuffix && (h("span", { class: "text-suffix", part: "suffix" }, this.textSuffix))), this.hintSection));
|
|
686
|
-
}
|
|
687
|
-
get hintSection() {
|
|
688
|
-
const hasSlottedHint = !!this.hostElement.querySelector('[slot="hint"]');
|
|
689
|
-
return ((this.hint || hasSlottedHint) && (h(CatFormHint, { hint: this.hint, slottedHint: hasSlottedHint && h("slot", { name: "hint" }) })));
|
|
690
|
-
}
|
|
691
|
-
onInput(event) {
|
|
692
|
-
this.value = this.input.value;
|
|
693
|
-
this.catChange.emit(event);
|
|
694
|
-
}
|
|
695
|
-
onFocus(event) {
|
|
696
|
-
this.catFocus.emit(event);
|
|
697
|
-
}
|
|
698
|
-
onBlur(event) {
|
|
699
|
-
this.catBlur.emit(event);
|
|
700
|
-
}
|
|
701
|
-
get hostElement() { return getElement(this); }
|
|
702
|
-
};
|
|
703
|
-
CatInput.style = catInputCss;
|
|
704
|
-
|
|
705
580
|
function getSide(placement) {
|
|
706
581
|
return placement.split('-')[0];
|
|
707
582
|
}
|
|
@@ -1818,50 +1693,107 @@ const computePosition = (reference, floating, options) => computePosition$1(refe
|
|
|
1818
1693
|
...options
|
|
1819
1694
|
});
|
|
1820
1695
|
|
|
1821
|
-
|
|
1696
|
+
/**
|
|
1697
|
+
* Auto-generated file. Do not edit directly.
|
|
1698
|
+
*/
|
|
1699
|
+
const timeTransitionS = 125;
|
|
1822
1700
|
|
|
1823
|
-
|
|
1824
|
-
|
|
1701
|
+
const catDropdownCss = ":host{display:contents}:host([hidden]){display:none}::slotted(nav){padding-top:0.5rem;padding-bottom:0.5rem;min-width:8rem;max-width:16rem}.content{position:absolute;background:white;display:none;-webkit-overflow-scrolling:touch;min-height:2rem;max-height:calc(100vh - 48px);box-shadow:0 1px 4px 0 rgba(16, 29, 48, 0.2);border-radius:var(--cat-border-radius-m, 0.25rem);z-index:100;opacity:0;transition:transform 0.13s cubic-bezier(0.3, 0, 0.8, 0.15), opacity 0.13s cubic-bezier(0.3, 0, 0.8, 0.15)}.content[data-placement^=top]{transform:translateY(1rem)}.content[data-placement^=left]{transform:translateX(1rem)}.content[data-placement^=right]{transform:translateX(-1rem)}.content[data-placement^=bottom]{transform:translateY(-1rem)}.content.show{opacity:1;transform:translateX(0);transform:translateY(0);transition:transform 0.5s cubic-bezier(0.05, 0.7, 0.1, 1), opacity 0.5s cubic-bezier(0.05, 0.7, 0.1, 1)}.content.overflow-auto{overflow:auto}";
|
|
1702
|
+
|
|
1703
|
+
let nextUniqueId$7 = 0;
|
|
1704
|
+
const CatDropdown = class {
|
|
1825
1705
|
constructor(hostRef) {
|
|
1826
1706
|
registerInstance(this, hostRef);
|
|
1827
1707
|
this.catOpen = createEvent(this, "catOpen", 7);
|
|
1828
1708
|
this.catClose = createEvent(this, "catClose", 7);
|
|
1829
|
-
this.id = nextUniqueId$
|
|
1709
|
+
this.id = nextUniqueId$7++;
|
|
1710
|
+
this.isOpen = false;
|
|
1830
1711
|
/**
|
|
1831
|
-
* The placement of the
|
|
1712
|
+
* The placement of the dropdown.
|
|
1832
1713
|
*/
|
|
1833
1714
|
this.placement = 'bottom-start';
|
|
1834
1715
|
/**
|
|
1835
|
-
* Do not close the
|
|
1716
|
+
* Do not close the dropdown on outside clicks.
|
|
1836
1717
|
*/
|
|
1837
1718
|
this.noAutoClose = false;
|
|
1838
1719
|
/**
|
|
1839
|
-
* Allow overflow when
|
|
1720
|
+
* Allow overflow when dropdown is open.
|
|
1840
1721
|
*/
|
|
1841
1722
|
this.overflow = false;
|
|
1842
1723
|
}
|
|
1843
1724
|
clickHandler(event) {
|
|
1725
|
+
// we need to delay the initialization of the trigger until first,
|
|
1726
|
+
// interaction because the element might still be hidden (and thus not
|
|
1727
|
+
// tabbable) if contained in another Stencil web component
|
|
1844
1728
|
if (!this.trigger) {
|
|
1845
1729
|
this.initTrigger();
|
|
1846
|
-
this.
|
|
1730
|
+
this.toggle();
|
|
1847
1731
|
}
|
|
1848
|
-
// hide
|
|
1849
|
-
if (!this.noAutoClose &&
|
|
1732
|
+
// hide dropdown on button click
|
|
1733
|
+
if (!this.noAutoClose && event.composedPath().includes(this.content)) {
|
|
1850
1734
|
this.close();
|
|
1851
1735
|
}
|
|
1852
1736
|
}
|
|
1853
1737
|
/**
|
|
1854
|
-
*
|
|
1738
|
+
* Toggles the dropdown.
|
|
1739
|
+
*/
|
|
1740
|
+
async toggle() {
|
|
1741
|
+
this.isOpen ? this.close() : this.open();
|
|
1742
|
+
}
|
|
1743
|
+
/**
|
|
1744
|
+
* Opens the dropdown.
|
|
1745
|
+
*/
|
|
1746
|
+
async open() {
|
|
1747
|
+
if (this.isOpen === null) {
|
|
1748
|
+
return; // busy
|
|
1749
|
+
}
|
|
1750
|
+
this.isOpen = null;
|
|
1751
|
+
this.content.style.display = 'block';
|
|
1752
|
+
// give CSS transition time to apply
|
|
1753
|
+
setTimeout(() => {
|
|
1754
|
+
var _a;
|
|
1755
|
+
this.isOpen = true;
|
|
1756
|
+
this.content.classList.add('show');
|
|
1757
|
+
(_a = this.trigger) === null || _a === void 0 ? void 0 : _a.setAttribute('aria-expanded', 'true');
|
|
1758
|
+
this.catOpen.emit();
|
|
1759
|
+
this.trap = this.trap
|
|
1760
|
+
? this.trap.updateContainerElements(this.content)
|
|
1761
|
+
: createFocusTrap(this.content, {
|
|
1762
|
+
tabbableOptions: {
|
|
1763
|
+
getShadowRoot: true
|
|
1764
|
+
},
|
|
1765
|
+
allowOutsideClick: true,
|
|
1766
|
+
clickOutsideDeactivates: event => !this.noAutoClose &&
|
|
1767
|
+
!event.composedPath().includes(this.content) &&
|
|
1768
|
+
(!this.trigger || !event.composedPath().includes(this.trigger)),
|
|
1769
|
+
onPostDeactivate: () => this.close()
|
|
1770
|
+
});
|
|
1771
|
+
this.trap.activate();
|
|
1772
|
+
});
|
|
1773
|
+
}
|
|
1774
|
+
/**
|
|
1775
|
+
* Closes the dropdown.
|
|
1855
1776
|
*/
|
|
1856
1777
|
async close() {
|
|
1857
|
-
|
|
1858
|
-
|
|
1859
|
-
|
|
1778
|
+
if (this.isOpen === null) {
|
|
1779
|
+
return; // busy
|
|
1780
|
+
}
|
|
1781
|
+
this.isOpen = null;
|
|
1782
|
+
this.content.classList.remove('show');
|
|
1783
|
+
// give CSS transition time to apply
|
|
1784
|
+
setTimeout(() => {
|
|
1785
|
+
var _a, _b;
|
|
1786
|
+
this.isOpen = false;
|
|
1787
|
+
this.content.classList.remove('show');
|
|
1788
|
+
this.content.style.display = '';
|
|
1789
|
+
(_a = this.trigger) === null || _a === void 0 ? void 0 : _a.setAttribute('aria-expanded', 'false');
|
|
1790
|
+
(_b = this.trap) === null || _b === void 0 ? void 0 : _b.deactivate();
|
|
1791
|
+
this.catClose.emit();
|
|
1792
|
+
}, timeTransitionS);
|
|
1860
1793
|
}
|
|
1861
1794
|
componentDidLoad() {
|
|
1862
|
-
this.initTrigger();
|
|
1863
1795
|
this.keyListener = event => {
|
|
1864
|
-
if (this.
|
|
1796
|
+
if (this.isOpen && ['ArrowDown', 'ArrowUp'].includes(event.key)) {
|
|
1865
1797
|
const targetElements = tabbable(this.content, { includeContainer: false, getShadowRoot: true });
|
|
1866
1798
|
const activeElement = firstTabbable(document.activeElement);
|
|
1867
1799
|
const activeIdx = activeElement ? targetElements.indexOf(activeElement) : -1;
|
|
@@ -1879,93 +1811,277 @@ const CatMenu = class {
|
|
|
1879
1811
|
}
|
|
1880
1812
|
}
|
|
1881
1813
|
render() {
|
|
1882
|
-
return (h(Host, null, h("slot", { name: "trigger", ref: el => (this.triggerSlot = el) }), h("div", { class: { content: true, 'overflow-auto': !this.overflow }, ref: el => (this.content = el) }, h("slot", { name: "content" }))));
|
|
1814
|
+
return (h(Host, null, h("slot", { name: "trigger", ref: el => (this.triggerSlot = el) }), h("div", { id: this.contentId, class: { content: true, 'overflow-auto': !this.overflow }, ref: el => (this.content = el) }, h("slot", { name: "content" }))));
|
|
1883
1815
|
}
|
|
1884
1816
|
get contentId() {
|
|
1885
|
-
return `cat-
|
|
1817
|
+
return `cat-dropdown-${this.id}`;
|
|
1886
1818
|
}
|
|
1887
1819
|
initTrigger() {
|
|
1888
|
-
var _a, _b, _c, _d, _e;
|
|
1889
1820
|
this.trigger = this.findTrigger();
|
|
1890
|
-
|
|
1891
|
-
|
|
1892
|
-
|
|
1893
|
-
|
|
1894
|
-
|
|
1895
|
-
(_e = this.trigger) === null || _e === void 0 ? void 0 : _e.addEventListener('click', () => {
|
|
1896
|
-
var _a;
|
|
1897
|
-
((_a = this.trap) === null || _a === void 0 ? void 0 : _a.active) ? this.close() : this.show();
|
|
1898
|
-
});
|
|
1899
|
-
autoUpdate(this.trigger, this.content, () => this.update());
|
|
1900
|
-
}
|
|
1901
|
-
}
|
|
1902
|
-
show() {
|
|
1903
|
-
var _a;
|
|
1904
|
-
if (this.content) {
|
|
1905
|
-
this.content.style.display = 'block';
|
|
1906
|
-
(_a = this.trigger) === null || _a === void 0 ? void 0 : _a.setAttribute('aria-expanded', 'true');
|
|
1907
|
-
this.catOpen.emit();
|
|
1908
|
-
this.trap = this.trap
|
|
1909
|
-
? this.trap.updateContainerElements(this.content)
|
|
1910
|
-
: createFocusTrap(this.content, {
|
|
1911
|
-
tabbableOptions: {
|
|
1912
|
-
getShadowRoot: true
|
|
1913
|
-
},
|
|
1914
|
-
allowOutsideClick: true,
|
|
1915
|
-
clickOutsideDeactivates: event => !this.noAutoClose &&
|
|
1916
|
-
(!this.content || !event.composedPath().includes(this.content)) &&
|
|
1917
|
-
(!this.trigger || !event.composedPath().includes(this.trigger)),
|
|
1918
|
-
onPostDeactivate: () => this.close()
|
|
1919
|
-
});
|
|
1920
|
-
this.trap.activate();
|
|
1921
|
-
}
|
|
1922
|
-
}
|
|
1923
|
-
hide() {
|
|
1924
|
-
var _a;
|
|
1925
|
-
if (this.content) {
|
|
1926
|
-
this.content.style.display = '';
|
|
1927
|
-
(_a = this.trigger) === null || _a === void 0 ? void 0 : _a.setAttribute('aria-expanded', 'false');
|
|
1928
|
-
this.catClose.emit();
|
|
1929
|
-
}
|
|
1930
|
-
}
|
|
1931
|
-
update() {
|
|
1932
|
-
if (this.trigger && this.content) {
|
|
1933
|
-
computePosition(this.trigger, this.content, {
|
|
1934
|
-
placement: this.placement,
|
|
1935
|
-
middleware: [offset(CatMenu.OFFSET), flip()]
|
|
1936
|
-
}).then(({ x, y }) => {
|
|
1937
|
-
if (this.content) {
|
|
1938
|
-
Object.assign(this.content.style, {
|
|
1939
|
-
left: `${x}px`,
|
|
1940
|
-
top: `${y}px`
|
|
1941
|
-
});
|
|
1942
|
-
}
|
|
1943
|
-
});
|
|
1944
|
-
}
|
|
1821
|
+
this.trigger.setAttribute('aria-haspopup', 'true');
|
|
1822
|
+
this.trigger.setAttribute('aria-expanded', 'false');
|
|
1823
|
+
this.trigger.setAttribute('aria-controls', this.contentId);
|
|
1824
|
+
this.trigger.addEventListener('click', () => this.toggle());
|
|
1825
|
+
autoUpdate(this.trigger, this.content, () => this.update());
|
|
1945
1826
|
}
|
|
1946
1827
|
findTrigger() {
|
|
1947
|
-
var _a, _b;
|
|
1828
|
+
var _a, _b, _c;
|
|
1948
1829
|
let trigger;
|
|
1949
|
-
const elems = ((_a = this.triggerSlot) === null || _a === void 0 ? void 0 : _a.assignedElements()) || [];
|
|
1830
|
+
const elems = ((_b = (_a = this.triggerSlot) === null || _a === void 0 ? void 0 : _a.assignedElements) === null || _b === void 0 ? void 0 : _b.call(_a)) || [];
|
|
1950
1831
|
while (!trigger && elems.length) {
|
|
1951
1832
|
const elem = elems.shift();
|
|
1952
1833
|
trigger = (elem === null || elem === void 0 ? void 0 : elem.hasAttribute('data-trigger'))
|
|
1953
1834
|
? elem
|
|
1954
|
-
: (
|
|
1835
|
+
: (_c = elem === null || elem === void 0 ? void 0 : elem.querySelector('[data-trigger]')) !== null && _c !== void 0 ? _c : undefined;
|
|
1955
1836
|
}
|
|
1956
1837
|
if (!trigger) {
|
|
1957
1838
|
trigger = firstTabbable(this.triggerSlot);
|
|
1958
1839
|
}
|
|
1959
1840
|
if (!trigger) {
|
|
1960
|
-
|
|
1841
|
+
throw new Error('Cannot find tabbable element. Use [data-trigger] to set the trigger.');
|
|
1961
1842
|
}
|
|
1962
1843
|
return trigger;
|
|
1963
1844
|
}
|
|
1845
|
+
update() {
|
|
1846
|
+
if (this.trigger) {
|
|
1847
|
+
computePosition(this.trigger, this.content, {
|
|
1848
|
+
placement: this.placement,
|
|
1849
|
+
middleware: [offset(CatDropdown.OFFSET), flip()]
|
|
1850
|
+
}).then(({ x, y, placement }) => {
|
|
1851
|
+
this.content.dataset.placement = placement;
|
|
1852
|
+
Object.assign(this.content.style, {
|
|
1853
|
+
left: `${x}px`,
|
|
1854
|
+
top: `${y}px`
|
|
1855
|
+
});
|
|
1856
|
+
});
|
|
1857
|
+
}
|
|
1858
|
+
}
|
|
1859
|
+
};
|
|
1860
|
+
CatDropdown.OFFSET = 4;
|
|
1861
|
+
CatDropdown.style = catDropdownCss;
|
|
1862
|
+
|
|
1863
|
+
const catIconCss = ":host{display:inline-flex;vertical-align:middle;-webkit-user-select:none;-ms-user-select:none;user-select:none;}:host([hidden]){display:none}span{display:inline-flex}svg{fill:currentColor;stroke:none;transform-origin:center center;height:1em;width:calc(var(--cat-icon-ratio, 1) * 1em)}.icon-xs svg{font-size:0.75rem}.icon-s svg{font-size:1rem}.icon-m svg{font-size:1.25rem}.icon-l svg{font-size:1.5rem}.icon-xl svg{font-size:1.75rem}";
|
|
1864
|
+
|
|
1865
|
+
const CatIcon = class {
|
|
1866
|
+
constructor(hostRef) {
|
|
1867
|
+
registerInstance(this, hostRef);
|
|
1868
|
+
this.iconRegistry = CatIconRegistry.getInstance();
|
|
1869
|
+
/**
|
|
1870
|
+
* The name of the icon.
|
|
1871
|
+
*/
|
|
1872
|
+
this.icon = '';
|
|
1873
|
+
/**
|
|
1874
|
+
* The size of the icon.
|
|
1875
|
+
*/
|
|
1876
|
+
this.size = 'm';
|
|
1877
|
+
}
|
|
1878
|
+
render() {
|
|
1879
|
+
return (h("span", { innerHTML: this.iconRegistry.getIcon(this.icon), "aria-label": this.a11yLabel, "aria-hidden": this.a11yLabel ? null : 'true', part: "icon", class: {
|
|
1880
|
+
icon: true,
|
|
1881
|
+
[`icon-${this.size}`]: this.size !== 'inline'
|
|
1882
|
+
} }));
|
|
1883
|
+
}
|
|
1884
|
+
};
|
|
1885
|
+
CatIcon.style = catIconCss;
|
|
1886
|
+
|
|
1887
|
+
const catInputCss = ".hint-section{display:flex;gap:0.5rem;flex-direction:column;color:rgb(var(--cat-hint-color, inherit))}.hint-section .input-hint,.hint-section ::slotted([slot=hint]){font-size:0.875rem;line-height:1rem;font-weight:var(--cat-font-weight-body, 400);margin:0 !important}:host{display:flex;flex-direction:column;gap:0.5rem;font-size:0.9375rem;line-height:1.25rem;font-weight:var(--cat-font-weight-body, 400);margin-bottom:1rem}:host([hidden]){display:none}.input-wrapper{display:flex;align-items:stretch;gap:0.75rem;padding:0 0.75rem;height:2.5rem;overflow:hidden;background:white;border-radius:var(--cat-border-radius-m, 0.25rem);box-shadow:0 0 0 1px rgb(var(--cat-border-color-dark, 215, 219, 224));transition:box-shadow 0.13s linear}.input-wrapper.input-round{border-radius:10rem}.input-wrapper.input-disabled{background:#f2f4f7;cursor:not-allowed;color:rgb(var(--cat-font-color-muted, 105, 118, 135))}.input-wrapper:not(.input-disabled):hover{box-shadow:0 0 0 2px rgb(var(--cat-border-color-dark, 215, 219, 224))}.input-wrapper:not(.input-disabled):focus-within{outline:2px solid rgb(var(--cat-border-color-focus, 0, 113, 255))}:host(.cat-error) .input-wrapper{box-shadow:0 0 0 1px rgb(var(--cat-danger-bg, 217, 52, 13))}:host(.cat-error) .input-wrapper:not(.input-disabled):hover{box-shadow:0 0 0 2px rgb(var(--cat-danger-bg, 217, 52, 13))}label{align-self:flex-start}label.hidden{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border:0 !important}.input-optional{margin-left:0.25rem;font-size:0.75rem;line-height:1rem;font-weight:var(--cat-font-weight-body, 400);color:rgb(var(--cat-font-color-muted, 105, 118, 135))}.text-prefix,.text-suffix{display:inline-flex;align-items:center;-webkit-user-select:none;-ms-user-select:none;user-select:none;}.text-prefix{border-right:1px solid rgb(var(--cat-border-color-dark, 215, 219, 224));padding-right:0.75rem}.text-suffix{border-left:1px solid rgb(var(--cat-border-color-dark, 215, 219, 224));padding-left:0.75rem}.icon-prefix,.icon-suffix{align-self:center}.input-inner-wrapper{display:flex;align-items:center;position:relative;flex:1 1 auto}input{font:inherit;margin:0;padding:0;width:100%;min-width:0;border:none;outline:none;background:none}.input-disabled input{cursor:not-allowed;color:rgb(var(--cat-font-color-muted, 105, 118, 135))}input.has-clearable{padding-right:1.5rem}input::placeholder{color:rgb(var(--cat-font-color-muted, 105, 118, 135))}.clearable{position:absolute;top:calc(50% - 1rem);right:-0.5rem}";
|
|
1888
|
+
|
|
1889
|
+
let nextUniqueId$6 = 0;
|
|
1890
|
+
const CatInput = class {
|
|
1891
|
+
constructor(hostRef) {
|
|
1892
|
+
registerInstance(this, hostRef);
|
|
1893
|
+
this.catChange = createEvent(this, "catChange", 7);
|
|
1894
|
+
this.catFocus = createEvent(this, "catFocus", 7);
|
|
1895
|
+
this.catBlur = createEvent(this, "catBlur", 7);
|
|
1896
|
+
this.id = `cat-input-${nextUniqueId$6++}`;
|
|
1897
|
+
this.hasSlottedLabel = false;
|
|
1898
|
+
/**
|
|
1899
|
+
* Whether the input should show a clear button.
|
|
1900
|
+
*/
|
|
1901
|
+
this.clearable = false;
|
|
1902
|
+
/**
|
|
1903
|
+
* Whether the input is disabled.
|
|
1904
|
+
*/
|
|
1905
|
+
this.disabled = false;
|
|
1906
|
+
/**
|
|
1907
|
+
* Display the icon on the right.
|
|
1908
|
+
*/
|
|
1909
|
+
this.iconRight = false;
|
|
1910
|
+
/**
|
|
1911
|
+
* The label for the input.
|
|
1912
|
+
*/
|
|
1913
|
+
this.label = '';
|
|
1914
|
+
/**
|
|
1915
|
+
* Visually hide the label, but still show it to assistive technologies like screen readers.
|
|
1916
|
+
*/
|
|
1917
|
+
this.labelHidden = false;
|
|
1918
|
+
/**
|
|
1919
|
+
* The name of the form control. Submitted with the form as part of a name/value pair.
|
|
1920
|
+
*/
|
|
1921
|
+
this.name = '';
|
|
1922
|
+
/**
|
|
1923
|
+
* The value is not editable.
|
|
1924
|
+
*/
|
|
1925
|
+
this.readonly = false;
|
|
1926
|
+
/**
|
|
1927
|
+
* A value is required or must be check for the form to be submittable.
|
|
1928
|
+
*/
|
|
1929
|
+
this.required = false;
|
|
1930
|
+
/**
|
|
1931
|
+
* Use round input edges.
|
|
1932
|
+
*/
|
|
1933
|
+
this.round = false;
|
|
1934
|
+
/**
|
|
1935
|
+
* Type of form control.
|
|
1936
|
+
*/
|
|
1937
|
+
this.type = 'text';
|
|
1938
|
+
}
|
|
1939
|
+
componentWillRender() {
|
|
1940
|
+
this.hasSlottedLabel = !!this.hostElement.querySelector('[slot="label"]');
|
|
1941
|
+
if (!this.label && !this.hasSlottedLabel) {
|
|
1942
|
+
loglevel.warn('[A11y] Missing ARIA label on input', this);
|
|
1943
|
+
}
|
|
1944
|
+
}
|
|
1945
|
+
/**
|
|
1946
|
+
* Sets focus on the input. Use this method instead of `input.focus()`.
|
|
1947
|
+
*
|
|
1948
|
+
* @param options An optional object providing options to control aspects of
|
|
1949
|
+
* the focusing process.
|
|
1950
|
+
*/
|
|
1951
|
+
async setFocus(options) {
|
|
1952
|
+
this.input.focus(options);
|
|
1953
|
+
}
|
|
1954
|
+
/**
|
|
1955
|
+
* Clear the input.
|
|
1956
|
+
*/
|
|
1957
|
+
async clear() {
|
|
1958
|
+
this.value = '';
|
|
1959
|
+
}
|
|
1960
|
+
render() {
|
|
1961
|
+
return (h(Host, null, (this.hasSlottedLabel || this.label) && (h("label", { htmlFor: this.id, class: { hidden: this.labelHidden } }, h("span", { part: "label" }, (this.hasSlottedLabel && h("slot", { name: "label" })) || this.label, !this.required && (h("span", { class: "input-optional", "aria-hidden": "true" }, "(", catI18nRegistry.t('input.optional'), ")"))))), h("div", { class: {
|
|
1962
|
+
'input-wrapper': true,
|
|
1963
|
+
'input-round': this.round,
|
|
1964
|
+
'input-disabled': this.disabled
|
|
1965
|
+
}, onClick: () => this.input.focus() }, this.textPrefix && (h("span", { class: "text-prefix", part: "prefix" }, this.textPrefix)), this.icon && !this.iconRight && h("cat-icon", { icon: this.icon, class: "icon-prefix", size: "l" }), h("div", { class: "input-inner-wrapper" }, h("input", { ref: el => (this.input = el), id: this.id, class: {
|
|
1966
|
+
'has-clearable': this.clearable && !this.disabled
|
|
1967
|
+
}, autocomplete: this.autoComplete, disabled: this.disabled, max: this.max, maxlength: this.maxLength, min: this.min, minlength: this.minLength, name: this.name, placeholder: this.placeholder, readonly: this.readonly, required: this.required, type: this.type, value: this.value, onInput: this.onInput.bind(this), onFocus: this.onFocus.bind(this), onBlur: this.onBlur.bind(this) }), this.clearable && !this.disabled && this.value && (h("cat-button", { class: "clearable", icon: "cross-circle-outlined", "icon-only": "true", size: "s", variant: "text", "a11y-label": catI18nRegistry.t('input.clear'), onClick: this.clear.bind(this) }))), this.icon && this.iconRight && h("cat-icon", { icon: this.icon, class: "icon-suffix", size: "l" }), this.textSuffix && (h("span", { class: "text-suffix", part: "suffix" }, this.textSuffix))), this.hintSection));
|
|
1968
|
+
}
|
|
1969
|
+
get hintSection() {
|
|
1970
|
+
const hasSlottedHint = !!this.hostElement.querySelector('[slot="hint"]');
|
|
1971
|
+
return ((this.hint || hasSlottedHint) && (h(CatFormHint, { hint: this.hint, slottedHint: hasSlottedHint && h("slot", { name: "hint" }) })));
|
|
1972
|
+
}
|
|
1973
|
+
onInput(event) {
|
|
1974
|
+
this.value = this.input.value;
|
|
1975
|
+
this.catChange.emit(event);
|
|
1976
|
+
}
|
|
1977
|
+
onFocus(event) {
|
|
1978
|
+
this.catFocus.emit(event);
|
|
1979
|
+
}
|
|
1980
|
+
onBlur(event) {
|
|
1981
|
+
this.catBlur.emit(event);
|
|
1982
|
+
}
|
|
1983
|
+
get hostElement() { return getElement(this); }
|
|
1984
|
+
};
|
|
1985
|
+
CatInput.style = catInputCss;
|
|
1986
|
+
|
|
1987
|
+
const catPaginationCss = ":host{display:inline-block}:host([hidden]){display:none}ol{display:flex;flex-wrap:wrap;list-style:none;margin:0;padding:0}li{display:inline-flex;justify-content:center}li.dots{-webkit-user-select:none;-ms-user-select:none;user-select:none;}:host([variant=outlined]) ol{gap:0.75rem}.cat-pagination-xs li.dots,.cat-pagination-xs li.text{height:1.5rem;line-height:1.5rem;font-size:0.875rem}.cat-pagination-xs li.dots{width:1.5rem}:host([variant=outlined]) .cat-pagination-xs{gap:0.375rem}.cat-pagination-s li.dots,.cat-pagination-s li.text{height:2rem;line-height:2rem;font-size:0.9375rem}.cat-pagination-s li.dots{width:2rem}:host([variant=outlined]) .cat-pagination-s{gap:0.5rem}.cat-pagination-m li.dots,.cat-pagination-m li.text{height:2.5rem;line-height:2.5rem;font-size:0.9375rem}.cat-pagination-m li.dots{width:2.5rem}:host([variant=outlined]) .cat-pagination-m{gap:0.625rem}.cat-pagination-l li.dots,.cat-pagination-l li.text{height:3rem;line-height:3rem;font-size:0.9375rem}.cat-pagination-l li.dots{width:3rem}:host([variant=outlined]) .cat-pagination-l{gap:0.75rem}.cat-pagination-xl li.dots,.cat-pagination-xl li.text{height:3.5rem;line-height:3.5rem;font-size:1.125rem}.cat-pagination-xl li.dots{width:3.5rem}:host([variant=outlined]) .cat-pagination-xl{gap:0.875rem}";
|
|
1988
|
+
|
|
1989
|
+
const CatPagination = class {
|
|
1990
|
+
constructor(hostRef) {
|
|
1991
|
+
registerInstance(this, hostRef);
|
|
1992
|
+
/**
|
|
1993
|
+
* The current page.
|
|
1994
|
+
*/
|
|
1995
|
+
this.page = 1;
|
|
1996
|
+
/**
|
|
1997
|
+
* The total number of pages.
|
|
1998
|
+
*/
|
|
1999
|
+
this.pageCount = 1;
|
|
2000
|
+
/**
|
|
2001
|
+
* The number of pages to be shown around the current page.
|
|
2002
|
+
*/
|
|
2003
|
+
this.activePadding = 1;
|
|
2004
|
+
/**
|
|
2005
|
+
* The number of pages to be shown at the edges.
|
|
2006
|
+
*/
|
|
2007
|
+
this.sidePadding = 1;
|
|
2008
|
+
/**
|
|
2009
|
+
* The size of the buttons.
|
|
2010
|
+
*/
|
|
2011
|
+
this.size = 'm';
|
|
2012
|
+
/**
|
|
2013
|
+
* The rendering style of the buttons.
|
|
2014
|
+
*/
|
|
2015
|
+
this.variant = 'text';
|
|
2016
|
+
/**
|
|
2017
|
+
* Use round button edges.
|
|
2018
|
+
*/
|
|
2019
|
+
this.round = false;
|
|
2020
|
+
/**
|
|
2021
|
+
* Use compact pagination mode.
|
|
2022
|
+
*/
|
|
2023
|
+
this.compact = false;
|
|
2024
|
+
/**
|
|
2025
|
+
* The icon of the "previous" button.
|
|
2026
|
+
*/
|
|
2027
|
+
this.iconPrev = 'chevron-left-outlined';
|
|
2028
|
+
/**
|
|
2029
|
+
* The icon of the "next" button.
|
|
2030
|
+
*/
|
|
2031
|
+
this.iconNext = 'chevron-right-outlined';
|
|
2032
|
+
}
|
|
2033
|
+
render() {
|
|
2034
|
+
return (h("nav", { role: "navigation" }, h("ol", { class: {
|
|
2035
|
+
[`cat-pagination-${this.size}`]: Boolean(this.size)
|
|
2036
|
+
} }, h("li", null, h("cat-button", { variant: this.variant, size: this.size, round: this.round, disabled: this.isFirst, a11yLabel: catI18nRegistry.t('pagination.prev'), icon: this.iconPrev, iconOnly: true, onClick: () => (this.page = this.page - 1) })), this.content, h("li", null, h("cat-button", { variant: this.variant, size: this.size, round: this.round, disabled: this.isLast, a11yLabel: catI18nRegistry.t('pagination.next'), icon: this.iconNext, iconOnly: true, onClick: () => (this.page = this.page + 1) })))));
|
|
2037
|
+
}
|
|
2038
|
+
get isFirst() {
|
|
2039
|
+
return this.page === 0;
|
|
2040
|
+
}
|
|
2041
|
+
get isLast() {
|
|
2042
|
+
return this.page === this.pageCount - 1;
|
|
2043
|
+
}
|
|
2044
|
+
get pages() {
|
|
2045
|
+
if (!this.sidePadding && !this.activePadding) {
|
|
2046
|
+
return [this.page];
|
|
2047
|
+
}
|
|
2048
|
+
const result = new Set();
|
|
2049
|
+
const minPage = this.page <= this.sidePadding + this.activePadding + 1;
|
|
2050
|
+
const minActivepage = minPage ? this.sidePadding + 2 * this.activePadding + 2 : this.sidePadding;
|
|
2051
|
+
const maxPage = this.page >= this.pageCount - this.sidePadding - this.activePadding - 2;
|
|
2052
|
+
const maxActivepage = maxPage
|
|
2053
|
+
? this.pageCount - this.sidePadding - 2 * this.activePadding - 2
|
|
2054
|
+
: this.pageCount - this.sidePadding;
|
|
2055
|
+
this.addSeq(result, 0, minActivepage);
|
|
2056
|
+
if (!minPage && !maxPage) {
|
|
2057
|
+
this.addSeq(result, this.page - this.activePadding, this.page + this.activePadding + 1);
|
|
2058
|
+
}
|
|
2059
|
+
this.addSeq(result, maxActivepage, this.pageCount);
|
|
2060
|
+
return [...result];
|
|
2061
|
+
}
|
|
2062
|
+
addSeq(set, start, end) {
|
|
2063
|
+
const _start = this.clamp(start, 0, this.pageCount);
|
|
2064
|
+
const _end = this.clamp(end, 0, this.pageCount);
|
|
2065
|
+
Array(_end - _start)
|
|
2066
|
+
.fill(0)
|
|
2067
|
+
.forEach((_, i) => set.add(_start + i));
|
|
2068
|
+
}
|
|
2069
|
+
clamp(num, min, max) {
|
|
2070
|
+
return Math.min(Math.max(num, min), max);
|
|
2071
|
+
}
|
|
2072
|
+
get content() {
|
|
2073
|
+
if (this.compact) {
|
|
2074
|
+
return (h("li", { class: "text" }, this.page + 1, "/", this.pageCount));
|
|
2075
|
+
}
|
|
2076
|
+
return this.pages.map((page, i) => [
|
|
2077
|
+
i > 0 && this.pages[i - 1] !== page - 1 ? h("li", { class: "dots" }, "\u2026") : null,
|
|
2078
|
+
h("li", null, h("cat-button", { variant: this.variant, size: this.size, round: this.round, color: this.page === page ? 'primary' : undefined, active: this.page === page, a11yLabel: catI18nRegistry.t('pagination.page', { page: page + 1 }), a11yCurrent: this.page === page || undefined, onClick: () => (this.page = page) }, page + 1))
|
|
2079
|
+
]);
|
|
2080
|
+
}
|
|
1964
2081
|
};
|
|
1965
|
-
|
|
1966
|
-
CatMenu.style = catMenuCss;
|
|
2082
|
+
CatPagination.style = catPaginationCss;
|
|
1967
2083
|
|
|
1968
|
-
const catRadioCss = ".hint-section{display:flex;gap:0.5rem;flex-direction:column}.hint-section .input-hint,.hint-section ::slotted([slot=hint]){font-size:0.875rem;line-height:1rem;font-weight:var(--cat-font-weight-body, 400);margin:0 !important}:host
|
|
2084
|
+
const catRadioCss = ".hint-section{display:flex;gap:0.5rem;flex-direction:column;color:rgb(var(--cat-hint-color, inherit))}.hint-section .input-hint,.hint-section ::slotted([slot=hint]){font-size:0.875rem;line-height:1rem;font-weight:var(--cat-font-weight-body, 400);margin:0 !important}:host{display:flex;flex-direction:column;gap:0.5rem;margin-bottom:1rem}:host([hidden]){display:none}label{display:flex;gap:0.5rem;font-size:0.9375rem;line-height:1.25rem;font-weight:var(--cat-font-weight-body, 400);cursor:pointer}.label-left{flex-direction:row-reverse}.radio{display:flex;position:relative;align-self:flex-start}.circle{position:absolute;width:0.75rem;height:0.75rem;background-color:rgb(var(--cat-primary-bg, 0, 129, 148));border-radius:10rem;top:calc(50% - 0.375rem);left:calc(50% - 0.375rem);visibility:hidden;pointer-events:none}input{margin:0;width:1.25rem;height:1.25rem;appearance:none;background-color:white;border:1px solid rgb(var(--cat-border-color-dark, 215, 219, 224));border-radius:10rem;cursor:inherit}input:checked{border-color:rgb(var(--cat-primary-bg, 0, 129, 148))}input:checked+.circle{visibility:visible}input:focus-visible{outline:2px solid rgb(var(--cat-border-color-focus, 0, 113, 255));outline-offset:1px}:host(.cat-error) input{border-color:rgb(var(--cat-danger-bg, 217, 52, 13))}:host(.cat-error) .circle{background-color:rgb(var(--cat-danger-bg, 217, 52, 13))}.label{flex:1 1 auto}.is-hidden .label{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border:0 !important}.is-disabled{cursor:not-allowed;color:rgb(var(--cat-font-color-muted, 105, 118, 135))}.is-disabled input{background-color:#f2f4f7}.is-disabled input:checked{border-color:rgb(var(--cat-border-color-dark, 215, 219, 224))}.is-disabled .circle{background-color:rgb(var(--cat-border-color-dark, 215, 219, 224))}";
|
|
1969
2085
|
|
|
1970
2086
|
let nextUniqueId$5 = 0;
|
|
1971
2087
|
const CatRadio = class {
|
|
@@ -2004,7 +2120,7 @@ const CatRadio = class {
|
|
|
2004
2120
|
componentWillRender() {
|
|
2005
2121
|
this.hasSlottedLabel = !!this.hostElement.querySelector('[slot="label"]');
|
|
2006
2122
|
if (!this.label && !this.hasSlottedLabel) {
|
|
2007
|
-
loglevel.
|
|
2123
|
+
loglevel.warn('[A11y] Missing ARIA label on radio', this);
|
|
2008
2124
|
}
|
|
2009
2125
|
}
|
|
2010
2126
|
/**
|
|
@@ -3969,7 +4085,7 @@ var autosizeInput = function (element, options) {
|
|
|
3969
4085
|
}
|
|
3970
4086
|
};
|
|
3971
4087
|
|
|
3972
|
-
const catSelectCss = ".hint-section{display:flex;gap:0.5rem;flex-direction:column}.hint-section .input-hint,.hint-section ::slotted([slot=hint]){font-size:0.875rem;line-height:1rem;font-weight:var(--cat-font-weight-body, 400);margin:0 !important}:host
|
|
4088
|
+
const catSelectCss = ".hint-section{display:flex;gap:0.5rem;flex-direction:column;color:rgb(var(--cat-hint-color, inherit))}.hint-section .input-hint,.hint-section ::slotted([slot=hint]){font-size:0.875rem;line-height:1rem;font-weight:var(--cat-font-weight-body, 400);margin:0 !important}:host{display:flex;flex-direction:column;gap:0.5rem;line-height:1.25rem;position:relative;margin-bottom:1rem}:host([hidden]){display:none}label{align-self:flex-start}label.hidden{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border:0 !important}.input-optional{margin-left:0.25rem;font-size:0.75rem;line-height:1rem;font-weight:var(--cat-font-weight-body, 400);color:rgb(var(--cat-font-color-muted, 105, 118, 135))}.select-wrapper{display:flex;align-items:flex-start;background:white;border-radius:var(--cat-border-radius-m, 0.25rem);box-shadow:0 0 0 1px rgb(var(--cat-border-color-dark, 215, 219, 224));transition:box-shadow 0.13s linear;padding:0.25rem}.select-wrapper:not(.select-disabled):hover{box-shadow:0 0 0 2px rgb(var(--cat-border-color-dark, 215, 219, 224))}.select-wrapper:not(.select-disabled):focus-within{outline:2px solid rgb(var(--cat-border-color-focus, 0, 113, 255))}:host(.cat-error) .select-wrapper{box-shadow:0 0 0 1px rgb(var(--cat-danger-bg, 217, 52, 13))}:host(.cat-error) .select-wrapper:not(.input-disabled):hover{box-shadow:0 0 0 2px rgb(var(--cat-danger-bg, 217, 52, 13))}.select-disabled{background:#f2f4f7;cursor:not-allowed;color:rgb(var(--cat-font-color-muted, 105, 118, 135));pointer-events:none}.select-wrapper-inner{display:flex;flex:1 1 auto;flex-wrap:wrap;align-items:center;gap:0.25rem;min-width:0}.select-wrapper-inner>cat-avatar{padding-left:0.25rem}.select-wrapper-inner cat-avatar{--cat-avatar-size:1.25rem}.select-input{font:inherit;background:none;border:none;outline:none;padding:0.375rem 0.5rem;flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.select-disabled .select-input{cursor:inherit}.select-pills{display:contents}.pill{display:inline-flex;align-items:center;gap:0.5rem;padding:0.25rem 0.5rem;background:#f2f4f7;border-radius:var(--cat-border-radius-s, 0.125rem);white-space:nowrap;min-width:0}.pill>span{overflow:hidden;text-overflow:ellipsis;flex:1 1 0%}.pill>cat-button{margin-right:-0.25rem;margin-left:-0.25rem}.select-btn{transition:transform 0.13s linear}.select-btn::part(button){outline:none}cat-spinner{padding:0.375rem}.select-btn-open{transform:rotate(180deg)}.select-dropdown{position:absolute;right:0;background:white;display:none;overflow:auto;box-shadow:0 1px 4px 0 rgba(16, 29, 48, 0.2);border-radius:var(--cat-border-radius-m, 0.25rem);z-index:100}.select-options-wrapper{max-height:16rem;width:100%}.select-empty{margin:1rem 0;padding:0 1.25rem}.select-options{list-style-type:none;margin:0;padding:0.5rem 0}.select-options cat-checkbox,.select-options .select-option-single{margin:0;padding:0.5rem 1rem}.select-option-inner{display:flex;gap:0.5rem;--cat-avatar-size:1.25rem}.select-option-text{flex:1 1 0%;min-width:0}.select-option-single{cursor:pointer}.select-input-transparent-caret{caret-color:transparent}.select-option-empty,.select-option-loading{padding:0.5rem 1rem}.select-option:hover{background-color:rgba(var(--cat-secondary-bg, 105, 118, 135), 0.05)}.select-option-active{outline:2px solid rgb(var(--cat-border-color-focus, 0, 113, 255));outline-offset:-2px}.select-option-label{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-wrap:break-word;word-break:break-word}.select-option-description{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:rgb(var(--cat-font-color-muted, 105, 118, 135))}";
|
|
3973
4089
|
|
|
3974
4090
|
const INIT_STATE = {
|
|
3975
4091
|
term: '',
|
|
@@ -3989,7 +4105,6 @@ const CatSelect = class {
|
|
|
3989
4105
|
this.catClose = createEvent(this, "catClose", 7);
|
|
3990
4106
|
this.catChange = createEvent(this, "catChange", 7);
|
|
3991
4107
|
this.catBlur = createEvent(this, "catBlur", 7);
|
|
3992
|
-
this.i18n = CatI18nRegistry.getInstance();
|
|
3993
4108
|
this.id = `cat-input-${nextUniqueId$4++}`;
|
|
3994
4109
|
this.term$ = new Subject();
|
|
3995
4110
|
this.more$ = new Subject();
|
|
@@ -4088,7 +4203,7 @@ const CatSelect = class {
|
|
|
4088
4203
|
componentWillRender() {
|
|
4089
4204
|
this.hasSlottedLabel = !!this.hostElement.querySelector('[slot="label"]');
|
|
4090
4205
|
if (!this.label && !this.hasSlottedLabel) {
|
|
4091
|
-
loglevel.
|
|
4206
|
+
loglevel.warn('[A11y] Missing ARIA label on select', this);
|
|
4092
4207
|
}
|
|
4093
4208
|
}
|
|
4094
4209
|
onBlur(event) {
|
|
@@ -4221,17 +4336,17 @@ const CatSelect = class {
|
|
|
4221
4336
|
});
|
|
4222
4337
|
}
|
|
4223
4338
|
render() {
|
|
4224
|
-
return (h(Host, null, (this.hasSlottedLabel || this.label) && (h("label", { htmlFor: this.id, class: { hidden: this.labelHidden } }, h("span", { part: "label" }, (this.hasSlottedLabel && h("slot", { name: "label" })) || this.label, !this.required && (h("span", { class: "input-optional", "aria-hidden": "true" }, "(",
|
|
4339
|
+
return (h(Host, null, (this.hasSlottedLabel || this.label) && (h("label", { htmlFor: this.id, class: { hidden: this.labelHidden } }, h("span", { part: "label" }, (this.hasSlottedLabel && h("slot", { name: "label" })) || this.label, !this.required && (h("span", { class: "input-optional", "aria-hidden": "true" }, "(", catI18nRegistry.t('input.optional'), ")"))))), h("div", { class: { 'select-wrapper': true, 'select-disabled': this.disabled }, ref: el => (this.trigger = el), id: this.id, role: "combobox", "aria-expanded": this.state.isOpen || this.isPillboxActive(), "aria-controls": this.isPillboxActive() ? `select-pillbox-${this.id}` : `select-listbox-${this.id}`, "aria-required": this.required, "aria-activedescendant": this.activeDescendant, onClick: e => this.onClick(e) }, h("div", { class: "select-wrapper-inner" }, this.multiple && this.state.selection.length ? (h("div", { id: `select-pillbox-${this.id}`, role: "listbox", "aria-orientation": "horizontal", class: "select-pills" }, this.state.selection.map((item, i) => (h("span", { class: {
|
|
4225
4340
|
pill: true,
|
|
4226
4341
|
'select-no-open': true,
|
|
4227
4342
|
'select-option-active': this.state.activeSelectionIndex === i
|
|
4228
|
-
}, role: "option", "aria-selected": "true", id: `select-${this.id}-selection-${i}` }, item.render.avatar ? (h("cat-avatar", { label: item.render.label, round: item.render.avatar.round, src: item.render.avatar.src, initials: '' })) : null, h("span", null, item.render.label), !this.disabled && (h("cat-button", { size: "xs", variant: "text", icon: "16-cross", iconOnly: true, a11yLabel:
|
|
4343
|
+
}, role: "option", "aria-selected": "true", id: `select-${this.id}-selection-${i}` }, item.render.avatar ? (h("cat-avatar", { label: item.render.label, round: item.render.avatar.round, src: item.render.avatar.src, initials: '' })) : null, h("span", null, item.render.label), !this.disabled && (h("cat-button", { size: "xs", variant: "text", icon: "16-cross", iconOnly: true, a11yLabel: catI18nRegistry.t('select.deselect'), onClick: () => this.deselect(item.item.id), tabIndex: -1 }))))))) : this.state.selection.length && this.state.selection[0].render.avatar ? (h("cat-avatar", { label: this.state.selection[0].render.label, round: this.state.selection[0].render.avatar.round, src: this.state.selection[0].render.avatar.src, initials: '' })) : null, h("input", { class: "select-input", ref: el => (this.input = el), "aria-controls": this.isPillboxActive() ? `select-pillbox-${this.id}` : `select-listbox-${this.id}`, "aria-activedescendant": this.activeDescendant, onInput: () => this.onInput(), value: !this.multiple ? this.state.term : undefined, placeholder: this.placeholder, disabled: this.disabled || this.state.isResolving })), this.state.isResolving && h("cat-spinner", null), (this.state.selection.length || this.state.term.length) &&
|
|
4229
4344
|
!this.disabled &&
|
|
4230
4345
|
!this.state.isResolving &&
|
|
4231
|
-
this.clearable ? (h("cat-button", { id: `select-clear-btn-${this.id}`, iconOnly: true, icon: "cross-circle-outlined", variant: "text", size: "s", a11yLabel:
|
|
4346
|
+
this.clearable ? (h("cat-button", { id: `select-clear-btn-${this.id}`, iconOnly: true, icon: "cross-circle-outlined", variant: "text", size: "s", a11yLabel: catI18nRegistry.t('input.clear'), onClick: () => this.clear() })) : null, !this.state.isResolving && (h("cat-button", { iconOnly: true, icon: "chevron-down-outlined", class: { 'select-btn': true, 'select-btn-open': this.state.isOpen }, variant: "text", size: "s", a11yLabel: this.state.isOpen ? catI18nRegistry.t('select.close') : catI18nRegistry.t('select.open'), "aria-controls": `select-listbox-${this.id}`, "aria-expanded": this.state.isOpen, tabIndex: -1, disabled: this.disabled || this.state.isResolving }))), this.hintSection, h("div", { class: "select-dropdown", ref: el => (this.dropdown = el), style: { display: this.state.isOpen ? 'block' : undefined } }, this.state.isOpen && (h("cat-scrollable", { class: "select-options-wrapper", scrolledBuffer: 56, noOverflowX: true, noOverscroll: true, noScrolledInit: true, onScrolledBottom: () => this.more$.next() }, h("ul", { class: "select-options", role: "listbox", "aria-multiselectable": this.multiple, "aria-setsize": this.state.totalElements, id: `select-listbox-${this.id}` }, this.optionsList, this.state.isLoading
|
|
4232
4347
|
? Array.from(Array(CatSelect.SKELETON_COUNT)).map(() => (h("li", { class: "select-option-loading" }, h("cat-skeleton", { variant: "body", lines: 1 }), h("cat-skeleton", { variant: "body", lines: 1 }))))
|
|
4233
4348
|
: !this.state.options.length &&
|
|
4234
|
-
!this.tags && h("li", { class: "select-option-empty" },
|
|
4349
|
+
!this.tags && h("li", { class: "select-option-empty" }, catI18nRegistry.t('select.empty'))))))));
|
|
4235
4350
|
}
|
|
4236
4351
|
get optionsList() {
|
|
4237
4352
|
return this.state.options.map((item, i) => {
|
|
@@ -4656,7 +4771,7 @@ const CatSelectTest = class {
|
|
|
4656
4771
|
(_f = this.singleSelectTagging) === null || _f === void 0 ? void 0 : _f.connect(this.countryConnector);
|
|
4657
4772
|
}
|
|
4658
4773
|
render() {
|
|
4659
|
-
return (h(Host, { style: { display: 'flex', flexDirection: 'column' } }, h("cat-select", { label: "Multiple Select", hint: "This is a hint!", ref: el => (this.multipleSelect = el), value: ['1'], placeholder: "Hello World", onCatChange: () => { var _a; return console.log((_a = this.multipleSelect) === null || _a === void 0 ? void 0 : _a.value); }, onCatBlur: e => console.log('Multiple blur', e), multiple: true, clearable: true }, h("span", { slot: "hint" }, "Searching for \"no\" -", '>', " no options are returned!")), h("cat-select", { label: "Multiple with img", ref: el => (this.multipleSelectAvatar = el), value: ['1'], placeholder: "Hello World", multiple: true, clearable: true }), h("cat-select", { label: "Multiple with tagging support", hint: "This is a hint!", ref: el => (this.multipleSelectTagging = el), value: { ids: ['1'], tags: ['Test', 'Albania', 'Algeria'] }, placeholder: "Select country", onCatChange: () => { var _a; return console.log((_a = this.multipleSelectTagging) === null || _a === void 0 ? void 0 : _a.value); }, multiple: true, tags: true, clearable: true }), h("cat-select", { label: "Single Select", hint: "This is a hint!", ref: el => (this.singleSelect = el), placeholder: "Search for a country or capital", onCatBlur: e => console.log('Single blur', e), clearable: true }), h("cat-select", { label: "Single with img", ref: el => (this.singleSelectAvatar = el), value: '1', onCatChange: () => { var _a; return console.log((_a = this.singleSelectAvatar) === null || _a === void 0 ? void 0 : _a.value); }, placeholder: "Search for a country or capital", clearable: true }), h("cat-
|
|
4774
|
+
return (h(Host, { style: { display: 'flex', flexDirection: 'column' } }, h("cat-select", { label: "Multiple Select", hint: "This is a hint!", ref: el => (this.multipleSelect = el), value: ['1'], placeholder: "Hello World", onCatChange: () => { var _a; return console.log((_a = this.multipleSelect) === null || _a === void 0 ? void 0 : _a.value); }, onCatBlur: e => console.log('Multiple blur', e), multiple: true, clearable: true }, h("span", { slot: "hint" }, "Searching for \"no\" -", '>', " no options are returned!")), h("cat-select", { label: "Multiple with img", ref: el => (this.multipleSelectAvatar = el), value: ['1'], placeholder: "Hello World", multiple: true, clearable: true }), h("cat-select", { label: "Multiple with tagging support", hint: "This is a hint!", ref: el => (this.multipleSelectTagging = el), value: { ids: ['1'], tags: ['Test', 'Albania', 'Algeria'] }, placeholder: "Select country", onCatChange: () => { var _a; return console.log((_a = this.multipleSelectTagging) === null || _a === void 0 ? void 0 : _a.value); }, multiple: true, tags: true, clearable: true }), h("cat-select", { label: "Single Select", hint: "This is a hint!", ref: el => (this.singleSelect = el), placeholder: "Search for a country or capital", onCatBlur: e => console.log('Single blur', e), clearable: true }), h("cat-select", { label: "Single with img", ref: el => (this.singleSelectAvatar = el), value: '1', onCatChange: () => { var _a; return console.log((_a = this.singleSelectAvatar) === null || _a === void 0 ? void 0 : _a.value); }, placeholder: "Search for a country or capital", clearable: true }), h("cat-dropdown", { overflow: true, noAutoClose: true }, h("cat-button", { slot: "trigger", style: { width: '50%' } }, "Open select"), h("div", { slot: "content", style: { width: '400px' } }, h("cat-select", { label: "Single with tagging support", ref: el => (this.singleSelectTagging = el), value: { id: '', tag: 'Albania' }, placeholder: "Search for a country or capital", onCatChange: () => { var _a; return console.log('Single', (_a = this.singleSelectTagging) === null || _a === void 0 ? void 0 : _a.value); }, tagHint: "new country", tags: true, clearable: true, style: { width: '90%' } })))));
|
|
4660
4775
|
}
|
|
4661
4776
|
get countryConnector() {
|
|
4662
4777
|
return {
|
|
@@ -6012,7 +6127,7 @@ const CatTab = class {
|
|
|
6012
6127
|
};
|
|
6013
6128
|
CatTab.style = catTabCss;
|
|
6014
6129
|
|
|
6015
|
-
const catTabsCss = ":host{display:flex;flex-direction:row;box-shadow:inset 0 -1px 0 0 rgb(var(--cat-border-color-dark, 215, 219, 224))}:host([hidden]){display:none}:host([tabs-align=center]){justify-content:center}:host([tabs-align=right]){justify-content:end}:host([tabs-align=justify]) cat-button{flex:1 0 auto}.tab{padding:0.5rem 0}.tab.tab-active{box-shadow:inset 0 -3px 0 0 rgb(var(--cat-primary-bg, 0, 129, 148))}";
|
|
6130
|
+
const catTabsCss = ":host{display:flex;flex-direction:row;box-shadow:inset 0 -1px 0 0 rgb(var(--cat-border-color-dark, 215, 219, 224))}:host([hidden]){display:none}:host([tabs-align=center]){justify-content:center}:host([tabs-align=right]){justify-content:end}:host([tabs-align=justify]) cat-button{flex:1 0 auto}.cat-tab{padding:0.5rem 0}.cat-tab.cat-tab-active{box-shadow:inset 0 -3px 0 0 rgb(var(--cat-primary-bg, 0, 129, 148))}";
|
|
6016
6131
|
|
|
6017
6132
|
const CatTabs = class {
|
|
6018
6133
|
constructor(hostRef) {
|
|
@@ -6066,8 +6181,8 @@ const CatTabs = class {
|
|
|
6066
6181
|
render() {
|
|
6067
6182
|
return (h(Host, null, this.tabs.map((tab) => {
|
|
6068
6183
|
return (h("cat-button", { ref: el => el && this.updateButtonsRef(el), buttonId: tab.id, role: "tab", part: "tab", class: {
|
|
6069
|
-
tab: true,
|
|
6070
|
-
'tab-active': Boolean(this.activeTabId && tab.id === this.activeTabId)
|
|
6184
|
+
'cat-tab': true,
|
|
6185
|
+
'cat-tab-active': Boolean(this.activeTabId && tab.id === this.activeTabId)
|
|
6071
6186
|
}, active: Boolean(this.activeTabId && tab.id === this.activeTabId), color: this.activeTabId && tab.id === this.activeTabId ? 'primary' : 'secondary', variant: "text", icon: tab.icon, iconOnly: tab.iconOnly, iconRight: tab.iconRight, url: tab.url, disabled: tab.deactivated, urlTarget: tab.urlTarget, onCatClick: () => (this.activeTabId = tab.id) }, tab.label));
|
|
6072
6187
|
})));
|
|
6073
6188
|
}
|
|
@@ -6092,7 +6207,7 @@ CatTabs.style = catTabsCss;
|
|
|
6092
6207
|
|
|
6093
6208
|
var e,t,n="function"==typeof Map?new Map:(e=[],t=[],{has:function(t){return e.indexOf(t)>-1},get:function(n){return t[e.indexOf(n)]},set:function(n,o){-1===e.indexOf(n)&&(e.push(n),t.push(o));},delete:function(n){var o=e.indexOf(n);o>-1&&(e.splice(o,1),t.splice(o,1));}}),o=function(e){return new Event(e,{bubbles:!0})};try{new Event("test");}catch(e){o=function(e){var t=document.createEvent("Event");return t.initEvent(e,!0,!1),t};}function r(e){var t=n.get(e);t&&t.destroy();}function i(e){var t=n.get(e);t&&t.update();}var l=null;"undefined"==typeof window||"function"!=typeof window.getComputedStyle?((l=function(e){return e}).destroy=function(e){return e},l.update=function(e){return e}):((l=function(e,t){return e&&Array.prototype.forEach.call(e.length?e:[e],function(e){return function(e){if(e&&e.nodeName&&"TEXTAREA"===e.nodeName&&!n.has(e)){var t,r=null,i=null,l=null,d=function(){e.clientWidth!==i&&c();},a=function(t){window.removeEventListener("resize",d,!1),e.removeEventListener("input",c,!1),e.removeEventListener("keyup",c,!1),e.removeEventListener("autosize:destroy",a,!1),e.removeEventListener("autosize:update",c,!1),Object.keys(t).forEach(function(n){e.style[n]=t[n];}),n.delete(e);}.bind(e,{height:e.style.height,resize:e.style.resize,overflowY:e.style.overflowY,overflowX:e.style.overflowX,wordWrap:e.style.wordWrap});e.addEventListener("autosize:destroy",a,!1),"onpropertychange"in e&&"oninput"in e&&e.addEventListener("keyup",c,!1),window.addEventListener("resize",d,!1),e.addEventListener("input",c,!1),e.addEventListener("autosize:update",c,!1),e.style.overflowX="hidden",e.style.wordWrap="break-word",n.set(e,{destroy:a,update:c}),"vertical"===(t=window.getComputedStyle(e,null)).resize?e.style.resize="none":"both"===t.resize&&(e.style.resize="horizontal"),r="content-box"===t.boxSizing?-(parseFloat(t.paddingTop)+parseFloat(t.paddingBottom)):parseFloat(t.borderTopWidth)+parseFloat(t.borderBottomWidth),isNaN(r)&&(r=0),c();}function u(t){var n=e.style.width;e.style.width="0px",e.style.width=n,e.style.overflowY=t;}function s(){if(0!==e.scrollHeight){var t=function(e){for(var t=[];e&&e.parentNode&&e.parentNode instanceof Element;)e.parentNode.scrollTop&&t.push({node:e.parentNode,scrollTop:e.parentNode.scrollTop}),e=e.parentNode;return t}(e),n=document.documentElement&&document.documentElement.scrollTop;e.style.height="",e.style.height=e.scrollHeight+r+"px",i=e.clientWidth,t.forEach(function(e){e.node.scrollTop=e.scrollTop;}),n&&(document.documentElement.scrollTop=n);}}function c(){s();var t=Math.round(parseFloat(e.style.height)),n=window.getComputedStyle(e,null),r="content-box"===n.boxSizing?Math.round(parseFloat(n.height)):e.offsetHeight;if(r<t?"hidden"===n.overflowY&&(u("scroll"),s(),r="content-box"===n.boxSizing?Math.round(parseFloat(window.getComputedStyle(e,null).height)):e.offsetHeight):"hidden"!==n.overflowY&&(u("hidden"),s(),r="content-box"===n.boxSizing?Math.round(parseFloat(window.getComputedStyle(e,null).height)):e.offsetHeight),l!==r){l=r;var i=o("autosize:resized");try{e.dispatchEvent(i);}catch(e){}}}}(e)}),e}).destroy=function(e){return e&&Array.prototype.forEach.call(e.length?e:[e],r),e},l.update=function(e){return e&&Array.prototype.forEach.call(e.length?e:[e],i),e});var d=l;
|
|
6094
6209
|
|
|
6095
|
-
const catTextareaCss = ".hint-section{display:flex;gap:0.5rem;flex-direction:column}.hint-section .input-hint,.hint-section ::slotted([slot=hint]){font-size:0.875rem;line-height:1rem;font-weight:var(--cat-font-weight-body, 400);margin:0 !important}:host
|
|
6210
|
+
const catTextareaCss = ".hint-section{display:flex;gap:0.5rem;flex-direction:column;color:rgb(var(--cat-hint-color, inherit))}.hint-section .input-hint,.hint-section ::slotted([slot=hint]){font-size:0.875rem;line-height:1rem;font-weight:var(--cat-font-weight-body, 400);margin:0 !important}:host{display:flex;flex-direction:column;gap:0.5rem;font-size:0.9375rem;line-height:1.25rem;font-weight:var(--cat-font-weight-body, 400);margin-bottom:1rem}:host([hidden]){display:none}label{align-self:flex-start}label.hidden{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border:0 !important}.input-optional{margin-left:0.25rem;font-size:0.75rem;line-height:1rem;font-weight:var(--cat-font-weight-body, 400);color:rgb(var(--cat-font-color-muted, 105, 118, 135))}textarea{margin:0;padding:0.625rem 0.75rem;min-height:2.5rem;font:inherit;background:white;border-radius:var(--cat-border-radius-m, 0.25rem);border:none;box-shadow:0 0 0 1px rgb(var(--cat-border-color-dark, 215, 219, 224));transition:box-shadow 0.13s linear}textarea:disabled{background:#f2f4f7;cursor:not-allowed;color:rgb(var(--cat-font-color-muted, 105, 118, 135));resize:none}textarea:hover:not(:disabled){box-shadow:0 0 0 2px rgb(var(--cat-border-color-dark, 215, 219, 224))}textarea:focus{outline:2px solid rgb(var(--cat-border-color-focus, 0, 113, 255))}textarea::placeholder{color:rgb(var(--cat-font-color-muted, 105, 118, 135))}";
|
|
6096
6211
|
|
|
6097
6212
|
let nextUniqueId$2 = 0;
|
|
6098
6213
|
const CatTextarea = class {
|
|
@@ -6135,7 +6250,7 @@ const CatTextarea = class {
|
|
|
6135
6250
|
componentWillRender() {
|
|
6136
6251
|
this.hasSlottedLabel = !!this.hostElement.querySelector('[slot="label"]');
|
|
6137
6252
|
if (!this.label && !this.hasSlottedLabel) {
|
|
6138
|
-
loglevel.
|
|
6253
|
+
loglevel.warn('[A11y] Missing ARIA label on textarea', this);
|
|
6139
6254
|
}
|
|
6140
6255
|
}
|
|
6141
6256
|
componentDidLoad() {
|
|
@@ -6171,61 +6286,7 @@ const CatTextarea = class {
|
|
|
6171
6286
|
};
|
|
6172
6287
|
CatTextarea.style = catTextareaCss;
|
|
6173
6288
|
|
|
6174
|
-
const
|
|
6175
|
-
|
|
6176
|
-
const CatToastDemo = class {
|
|
6177
|
-
constructor(hostRef) {
|
|
6178
|
-
registerInstance(this, hostRef);
|
|
6179
|
-
}
|
|
6180
|
-
render() {
|
|
6181
|
-
return h("cat-button", { onClick: this.onClick.bind(this) }, "Show Notifications");
|
|
6182
|
-
}
|
|
6183
|
-
onClick() {
|
|
6184
|
-
const infoOptions = {
|
|
6185
|
-
position: 'top-left',
|
|
6186
|
-
type: 'info'
|
|
6187
|
-
};
|
|
6188
|
-
const errorOptions = {
|
|
6189
|
-
position: 'top-center',
|
|
6190
|
-
type: 'error'
|
|
6191
|
-
};
|
|
6192
|
-
const errorOptions2 = {
|
|
6193
|
-
position: 'bottom-left',
|
|
6194
|
-
type: 'error'
|
|
6195
|
-
};
|
|
6196
|
-
const successOptions3 = {
|
|
6197
|
-
position: 'bottom-right',
|
|
6198
|
-
type: 'success'
|
|
6199
|
-
};
|
|
6200
|
-
const template = document.createElement('template');
|
|
6201
|
-
template.innerHTML = `<div style="padding: 7px 30px 7px 10px">Custom HTML Node Content</div>`;
|
|
6202
|
-
const successOptions4 = {
|
|
6203
|
-
position: 'bottom-right',
|
|
6204
|
-
type: 'success',
|
|
6205
|
-
content: template.content.firstChild
|
|
6206
|
-
};
|
|
6207
|
-
const primaryOptions = {
|
|
6208
|
-
position: 'bottom-right',
|
|
6209
|
-
type: 'primary'
|
|
6210
|
-
};
|
|
6211
|
-
const secondaryOptions = {
|
|
6212
|
-
position: 'bottom-right',
|
|
6213
|
-
type: 'secondary'
|
|
6214
|
-
};
|
|
6215
|
-
NotificationsService.secondary('Secondary Click', 'secondary info', secondaryOptions);
|
|
6216
|
-
NotificationsService.primary('primary Click', 'secondary info', primaryOptions);
|
|
6217
|
-
NotificationsService.error('Default Click');
|
|
6218
|
-
NotificationsService.error('Long default title, long default title, long default title, long default title');
|
|
6219
|
-
NotificationsService.info('Info Click', 'Info message', infoOptions);
|
|
6220
|
-
NotificationsService.success('', ' ', successOptions4);
|
|
6221
|
-
NotificationsService.error('Error Title', ' ', errorOptions);
|
|
6222
|
-
NotificationsService.error('Error 2 Title', 'Very long message, Very long message, Very long message, Very long message, Very long message, Very long message, Very long message, Very long message, Very long message, Very long message,Very long message, Very long message, Very long message, Very long message, Very long message, ', errorOptions2);
|
|
6223
|
-
NotificationsService.success('Success Title - very long title without message', ' ', successOptions3);
|
|
6224
|
-
}
|
|
6225
|
-
};
|
|
6226
|
-
CatToastDemo.style = catToastDemoCss;
|
|
6227
|
-
|
|
6228
|
-
const catToggleCss = ".hint-section{display:flex;gap:0.5rem;flex-direction:column}.hint-section .input-hint,.hint-section ::slotted([slot=hint]){font-size:0.875rem;line-height:1rem;font-weight:var(--cat-font-weight-body, 400);margin:0 !important}:host-context(.cat-error) .hint-section{color:rgb(var(--cat-danger-text, 217, 52, 13))}:host{display:flex;flex-direction:column;gap:0.5rem;margin-bottom:1rem}:host([hidden]){display:none}label{flex:0 1 auto;display:flex;gap:0.5rem;font-size:0.9375rem;line-height:1.25rem;font-weight:var(--cat-font-weight-body, 400);-webkit-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer}.label-left{flex-direction:row-reverse}input{position:absolute;margin:0;width:2rem;height:1.25rem;opacity:0;cursor:inherit}.toggle{flex:0 0 auto;display:flex;align-items:center;justify-content:center;position:relative;width:2rem;height:1.25rem;border-radius:10rem;background-color:rgb(var(--cat-border-color-dark, 215, 219, 224));transition:background-color 0.13s ease;pointer-events:none}:checked+.toggle{background-color:rgb(var(--cat-primary-bg, 0, 129, 148))}:focus-visible+.toggle{outline:2px solid rgb(var(--cat-border-color-focus, 0, 113, 255));outline-offset:1px}.toggle::after{content:\"\";position:absolute;width:1rem;height:1rem;background:#fff;border-radius:10rem;transform:translateX(calc(2px - 0.5rem));transition:transform 0.13s linear;box-shadow:0 1px 4px 0 rgba(16, 29, 48, 0.2)}:checked+.toggle::after{transform:translateX(calc(-2px + 0.5rem));background:rgb(var(--cat-primary-fill, 255, 255, 255))}.is-disabled .toggle{background-color:rgb(var(--cat-border-color-dark, 215, 219, 224))}:host(.cat-error) .toggle{background-color:rgba(var(--cat-danger-bg, 217, 52, 13), 0.2)}:host(.cat-error) :checked+.toggle{background-color:rgb(var(--cat-danger-bg, 217, 52, 13))}:host(.cat-error) :checked+.toggle::after{background:rgb(var(--cat-danger-fill, 255, 255, 255))}.label{flex:1 1 auto}.is-hidden .label{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border:0 !important}.is-disabled{cursor:not-allowed;color:rgb(var(--cat-font-color-muted, 105, 118, 135))}";
|
|
6289
|
+
const catToggleCss = ".hint-section{display:flex;gap:0.5rem;flex-direction:column;color:rgb(var(--cat-hint-color, inherit))}.hint-section .input-hint,.hint-section ::slotted([slot=hint]){font-size:0.875rem;line-height:1rem;font-weight:var(--cat-font-weight-body, 400);margin:0 !important}:host{display:flex;flex-direction:column;gap:0.5rem;margin-bottom:1rem}:host([hidden]){display:none}label{flex:0 1 auto;display:flex;gap:0.5rem;font-size:0.9375rem;line-height:1.25rem;font-weight:var(--cat-font-weight-body, 400);-webkit-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer}.label-left{flex-direction:row-reverse}input{position:absolute;margin:0;width:2rem;height:1.25rem;opacity:0;cursor:inherit}.toggle{flex:0 0 auto;display:flex;align-items:center;justify-content:center;position:relative;width:2rem;height:1.25rem;border-radius:10rem;background-color:rgb(var(--cat-border-color-dark, 215, 219, 224));transition:background-color 0.13s ease;pointer-events:none}:checked+.toggle{background-color:rgb(var(--cat-primary-bg, 0, 129, 148))}:focus-visible+.toggle{outline:2px solid rgb(var(--cat-border-color-focus, 0, 113, 255));outline-offset:1px}.toggle::after{content:\"\";position:absolute;width:1rem;height:1rem;background:#fff;border-radius:10rem;transform:translateX(calc(2px - 0.5rem));transition:transform 0.13s linear;box-shadow:0 1px 4px 0 rgba(16, 29, 48, 0.2)}:checked+.toggle::after{transform:translateX(calc(-2px + 0.5rem));background:rgb(var(--cat-primary-fill, 255, 255, 255))}.is-disabled .toggle{background-color:rgb(var(--cat-border-color-dark, 215, 219, 224))}:host(.cat-error) .toggle{background-color:rgba(var(--cat-danger-bg, 217, 52, 13), 0.2)}:host(.cat-error) :checked+.toggle{background-color:rgb(var(--cat-danger-bg, 217, 52, 13))}:host(.cat-error) :checked+.toggle::after{background:rgb(var(--cat-danger-fill, 255, 255, 255))}.label{flex:1 1 auto}.is-hidden .label{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border:0 !important}.is-disabled{cursor:not-allowed;color:rgb(var(--cat-font-color-muted, 105, 118, 135))}";
|
|
6229
6290
|
|
|
6230
6291
|
let nextUniqueId$1 = 0;
|
|
6231
6292
|
const CatToggle = class {
|
|
@@ -6264,7 +6325,7 @@ const CatToggle = class {
|
|
|
6264
6325
|
componentWillRender() {
|
|
6265
6326
|
this.hasSlottedLabel = !!this.hostElement.querySelector('[slot="label"]');
|
|
6266
6327
|
if (!this.label && !this.hasSlottedLabel) {
|
|
6267
|
-
loglevel.
|
|
6328
|
+
loglevel.warn('[A11y] Missing ARIA label on toggle', this);
|
|
6268
6329
|
}
|
|
6269
6330
|
}
|
|
6270
6331
|
/**
|
|
@@ -6440,6 +6501,6 @@ const CatTooltip = class {
|
|
|
6440
6501
|
CatTooltip.OFFSET = 4;
|
|
6441
6502
|
CatTooltip.style = catTooltipCss;
|
|
6442
6503
|
|
|
6443
|
-
export { CatAlert as cat_alert, CatAvatar as cat_avatar, CatBadge as cat_badge, CatButton as cat_button, CatCard as cat_card, CatCheckbox as cat_checkbox, CatIcon as cat_icon, CatInput as cat_input,
|
|
6504
|
+
export { CatAlert as cat_alert, CatAvatar as cat_avatar, CatBadge as cat_badge, CatButton as cat_button, CatCard as cat_card, CatCheckbox as cat_checkbox, CatDropdown as cat_dropdown, CatIcon as cat_icon, CatInput as cat_input, CatPagination as cat_pagination, CatRadio as cat_radio, CatRadioGroup as cat_radio_group, CatScrollable as cat_scrollable, CatSelect as cat_select, CatSelectTest as cat_select_demo, CatSkeleton as cat_skeleton, CatSpinner as cat_spinner, CatTab as cat_tab, CatTabs as cat_tabs, CatTextarea as cat_textarea, CatToggle as cat_toggle, CatTooltip as cat_tooltip };
|
|
6444
6505
|
|
|
6445
6506
|
//# sourceMappingURL=cat-alert_22.entry.js.map
|