@haiilo/catalyst 10.28.2 → 10.30.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/catalyst/catalyst.css +3 -1
- package/dist/catalyst/catalyst.esm.js +1 -1
- package/dist/catalyst/catalyst.esm.js.map +1 -1
- package/dist/catalyst/index.esm.js +1 -1
- package/dist/catalyst/p-41a50f19.entry.js +10 -0
- package/dist/catalyst/p-41a50f19.entry.js.map +1 -0
- package/dist/catalyst/{p-e5aee21d.js → p-9500d6fb.js} +1 -1
- package/dist/catalyst/{p-e5aee21d.js.map → p-9500d6fb.js.map} +1 -1
- package/dist/catalyst/scss/core/_notification.scss +4 -1
- package/dist/catalyst/scss/utils/_elevation.mixins.scss +8 -2
- package/dist/cjs/cat-alert_30.cjs.entry.js +274 -180
- package/dist/cjs/cat-alert_30.cjs.entry.js.map +1 -1
- package/dist/cjs/catalyst.cjs.js +1 -1
- package/dist/cjs/index.cjs.js +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/{of-aaee31a6.js → of-958251e4.js} +1 -1
- package/dist/cjs/{of-aaee31a6.js.map → of-958251e4.js.map} +1 -1
- package/dist/collection/components/cat-button/cat-button.css +1 -1
- package/dist/collection/components/cat-date/cat-date.js +8 -7
- package/dist/collection/components/cat-date/cat-date.js.map +1 -1
- package/dist/collection/components/cat-date-inline/cat-date-inline.js +10 -8
- package/dist/collection/components/cat-date-inline/cat-date-inline.js.map +1 -1
- package/dist/collection/components/cat-date-inline/cat-date-locale.js +2 -4
- package/dist/collection/components/cat-date-inline/cat-date-locale.js.map +1 -1
- package/dist/collection/components/cat-datepicker/cat-datepicker.js +9 -8
- package/dist/collection/components/cat-datepicker/cat-datepicker.js.map +1 -1
- package/dist/collection/components/cat-dropdown/cat-dropdown.js +1 -1
- package/dist/collection/components/cat-input/cat-input.js +8 -4
- package/dist/collection/components/cat-input/cat-input.js.map +1 -1
- package/dist/collection/components/cat-select/cat-select.js +1 -1
- package/dist/collection/components/cat-textarea/cat-textarea.js +25 -3
- package/dist/collection/components/cat-textarea/cat-textarea.js.map +1 -1
- package/dist/collection/components/cat-time/cat-time.js +8 -7
- package/dist/collection/components/cat-time/cat-time.js.map +1 -1
- package/dist/collection/components/cat-tooltip/cat-tooltip.css +18 -9
- package/dist/collection/scss/core/_notification.scss +4 -1
- package/dist/collection/scss/utils/_elevation.mixins.scss +8 -2
- package/dist/components/cat-button2.js +1 -1
- package/dist/components/cat-button2.js.map +1 -1
- package/dist/components/cat-date-inline2.js +12 -12
- package/dist/components/cat-date-inline2.js.map +1 -1
- package/dist/components/cat-date.js +3 -3
- package/dist/components/cat-date.js.map +1 -1
- package/dist/components/cat-datepicker.js +4 -4
- package/dist/components/cat-datepicker.js.map +1 -1
- package/dist/components/cat-dropdown2.js +169 -118
- package/dist/components/cat-dropdown2.js.map +1 -1
- package/dist/components/cat-input2.js +7 -4
- package/dist/components/cat-input2.js.map +1 -1
- package/dist/components/cat-textarea.js +8 -3
- package/dist/components/cat-textarea.js.map +1 -1
- package/dist/components/cat-time.js +3 -3
- package/dist/components/cat-time.js.map +1 -1
- package/dist/components/cat-tooltip.js +1 -1
- package/dist/components/cat-tooltip.js.map +1 -1
- package/dist/components/floating-ui.dom.esm.js +67 -29
- package/dist/components/floating-ui.dom.esm.js.map +1 -1
- package/dist/components/loglevel.js.map +1 -1
- package/dist/esm/cat-alert_30.entry.js +274 -180
- package/dist/esm/cat-alert_30.entry.js.map +1 -1
- package/dist/esm/catalyst.js +1 -1
- package/dist/esm/index.js +2 -2
- package/dist/esm/loader.js +1 -1
- package/dist/esm/{of-acb1f3a9.js → of-e4ec2eb4.js} +1 -1
- package/dist/esm/{of-acb1f3a9.js.map → of-e4ec2eb4.js.map} +1 -1
- package/dist/types/components/cat-date/cat-date.d.ts +1 -1
- package/dist/types/components/cat-datepicker/cat-datepicker.d.ts +1 -1
- package/dist/types/components/cat-input/cat-input.d.ts +2 -0
- package/dist/types/components/cat-textarea/cat-textarea.d.ts +6 -0
- package/dist/types/components/cat-time/cat-time.d.ts +1 -1
- package/dist/types/components.d.ts +11 -3
- package/package.json +8 -8
- package/dist/catalyst/p-ee89e395.entry.js +0 -10
- package/dist/catalyst/p-ee89e395.entry.js.map +0 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { r as registerInstance, h, H as Host, g as getElement, c as createEvent } from './index-30afba72.js';
|
|
2
|
-
import { e as createErrorClass, O as Observable, f as errorContext, E as EMPTY_SUBSCRIPTION, S as Subscription, g as arrRemove, h as operate, i as createOperatorSubscriber, j as innerFrom, k as executeSchedule, l as isFunction, m as identity, n as from, p as popScheduler, q as isArrayLike, r as isScheduler, s as popNumber, t as noop, u as log, a as catI18nRegistry, c as commonjsGlobal$1, d as catIconRegistry, o as of } from './of-
|
|
2
|
+
import { e as createErrorClass, O as Observable, f as errorContext, E as EMPTY_SUBSCRIPTION, S as Subscription, g as arrRemove, h as operate, i as createOperatorSubscriber, j as innerFrom, k as executeSchedule, l as isFunction, m as identity, n as from, p as popScheduler, q as isArrayLike, r as isScheduler, s as popNumber, t as noop, u as log, a as catI18nRegistry, c as commonjsGlobal$1, d as catIconRegistry, o as of } from './of-e4ec2eb4.js';
|
|
3
3
|
|
|
4
4
|
const ObjectUnsubscribedError = createErrorClass((_super) => function ObjectUnsubscribedErrorImpl() {
|
|
5
5
|
_super(this);
|
|
@@ -1102,7 +1102,7 @@ function findClosest(selector, element) {
|
|
|
1102
1102
|
return nextElement ? findClosest(selector, nextElement) : null;
|
|
1103
1103
|
}
|
|
1104
1104
|
|
|
1105
|
-
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}:host([data-button-group=middle]),:host([data-button-group=last]){margin-left:-1px}.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 125ms linear, border-color 125ms linear, background-color 125ms linear, box-shadow 125ms linear}.cat-button:focus-visible{outline:2px solid rgb(var(--cat-border-color-focus, 0, 113, 255));outline-offset:1px}.cat-button-content{display:flex;flex-direction:column;min-width:0}.cat-button-empty .cat-button-content{display:none}.cat-button-content-inner{word-wrap:break-word;word-break:break-word}.cat-button-ellipsed .cat-button-content-inner{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.cat-button-disabled{cursor:not-allowed}.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-group-first{border-top-right-radius:0;border-bottom-right-radius:0}.cat-button-group-middle{border-radius:0}.cat-button-group-last{border-top-left-radius:0;border-bottom-left-radius:0}.cat-button-group:hover{z-index:1}.cat-button-group:focus-visible{z-index:2}.cat-button-filled{background-color:rgb(var(--bg));color:rgb(var(--fill));font-weight:var(--cat-font-weight-button, 600);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:greyscale}.cat-button-filled.cat-button-disabled{--bg:242, 244, 247;--fill:var(--cat-font-color-muted, 81, 92, 108)}.cat-button-outlined{background-color:white;box-shadow:inset 0 0 0 1px color-mix(in srgb, rgb(var(--base)) 20%, #fff);color:rgb(var(--text))}.cat-button-outlined.cat-button-disabled{--base:var(--cat-font-color-muted, 81, 92, 108);--text:var(--cat-font-color-muted, 81, 92, 108)}.cat-button-outlined:hover:not(.cat-button-disabled):not(.cat-button-loading){background-color:color-mix(in srgb, rgb(var(--base)) 10%, #fff)}.cat-button-outlined.cat-button-active:not(.cat-button-disabled):not(.cat-button-loading){background-color:color-mix(in srgb, rgb(var(--base)) 10%, #fff)}.cat-button-outlined:active:not(.cat-button-disabled):not(.cat-button-loading){background-color:color-mix(in srgb, rgb(var(--base)) 10%, #fff)}.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, 81, 92, 108)}.cat-button-text:hover:not(.cat-button-disabled):not(.cat-button-loading){background-color:rgba(var(--base), 0.1)}.cat-button-text.cat-button-active:not(.cat-button-disabled):not(.cat-button-loading){background-color:rgba(var(--base), 0.1)}.cat-button-link{background-color:transparent;color:rgb(var(--text))}.cat-button-link.cat-button-disabled{--text:var(--cat-font-color-muted, 81, 92, 108)}.cat-button-link:hover:not(.cat-button-disabled):not(.cat-button-loading){text-decoration:var(--cat-link-decoration-hover, underline)}.cat-button-link.cat-button-active:not(.cat-button-disabled):not(.cat-button-loading){text-decoration:var(--cat-link-decoration-hover, underline)}.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-info{--bg:var(--cat-info-bg, 0, 115, 230);--fill:var(--cat-info-fill, 255, 255, 255);--text:var(--cat-info-text, 0, 115, 230);--base:var(--cat-info-text, 0, 115, 230)}.cat-button-info:hover:not(.cat-button-disabled):not(.cat-button-loading){--bg:var(--cat-info-bg-hover, 0, 107, 227);--fill:var(--cat-info-fill-hover, 255, 255, 255);--text:var(--cat-info-text-hover, 0, 107, 227)}.cat-button-info.cat-button-active:not(.cat-button-disabled):not(.cat-button-loading),.cat-button-info:active:not(.cat-button-disabled):not(.cat-button-loading){--bg:var(--cat-info-bg-active, 0, 96, 223);--fill:var(--cat-info-fill-active, 255, 255, 255);--text:var(--cat-info-text-active, 0, 96, 223)}.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.1875rem 0.25rem;font-size:0.875rem;line-height:1.125rem;gap:0.25rem}.cat-button-xs.cat-button-icon{width:1.5rem;height:1.5rem;padding:0}:host(.cat-button-pull[size=xs]){margin:-0.1875rem -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.1875rem;margin-bottom:-0.1875rem}:host(.cat-button-pull-t[size=xs]){margin-top:-0.1875rem}:host(.cat-button-pull-l[size=xs]){margin-left:-0.25rem}:host(.cat-button-pull-b[size=xs]){margin-bottom:-0.1875rem}: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;height:2rem;padding: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;height:2.5rem;padding: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;height:3rem;padding: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;height:3.5rem;padding: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)::part(button){padding:1.125rem 0.75rem;--cat-secondary-bg:transparent;--cat-primary-text:transparent;--cat-danger-text:transparent}:host(.cat-tab)::part(content)::before{content:attr(data-text);content:attr(data-text)/\"\";height:0;visibility:hidden;overflow:hidden;user-select:none;pointer-events:none;font-weight:700}:host(.cat-text-left) .cat-button{justify-content:left;text-align:left}:host(.cat-text-right) .cat-button{justify-content:right;text-align:right}:host(.cat-nav-item){width:100%}:host(.cat-nav-item) .cat-button{box-shadow:none;justify-content:left;gap:0.5rem}:host(.cat-nav-item) .cat-button:focus-visible{outline-offset:-2px}:host(.cat-time-format) .cat-button{border-radius:0}:host(.cat-date-toggle) .cat-button,:host(.cat-time-toggle) .cat-button{margin-left:-1px;border-top-left-radius:0;border-bottom-left-radius:0}:host(.cat-date-item) .cat-button:hover,:host(.cat-date-toggle) .cat-button:hover,:host(.cat-time-format) .cat-button:hover,:host(.cat-time-toggle) .cat-button:hover{z-index:1}:host(.cat-date-item) .cat-button:focus-visible,:host(.cat-date-toggle) .cat-button:focus-visible,:host(.cat-time-format) .cat-button:focus-visible,:host(.cat-time-toggle) .cat-button:focus-visible{z-index:2}:host(.cat-date-item) .cat-button{padding:0;min-width:2rem;max-height:3rem;aspect-ratio:1}:host(.date-start:not(.date-end)) .cat-button{border-top-right-radius:0;border-bottom-right-radius:0}:host(.date-end:not(.date-start)) .cat-button{border-top-left-radius:0;border-bottom-left-radius:0}";
|
|
1105
|
+
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}:host([data-button-group=middle]),:host([data-button-group=last]){margin-left:-1px}.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 125ms linear, border-color 125ms linear, background-color 125ms linear, box-shadow 125ms linear}.cat-button:focus-visible{outline:2px solid rgb(var(--cat-border-color-focus, 0, 113, 255));outline-offset:1px}.cat-button-content{display:flex;flex-direction:column;min-width:0}.cat-button-empty .cat-button-content{display:none}.cat-button-content-inner{word-wrap:break-word;word-break:break-word}.cat-button-ellipsed .cat-button-content-inner{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.cat-button-disabled{cursor:not-allowed}.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-group-first{border-top-right-radius:0;border-bottom-right-radius:0}.cat-button-group-middle{border-radius:0}.cat-button-group-last{border-top-left-radius:0;border-bottom-left-radius:0}.cat-button-group:hover{z-index:1}.cat-button-group:focus-visible{z-index:2}.cat-button-filled{background-color:rgb(var(--bg));color:rgb(var(--fill));font-weight:var(--cat-font-weight-button, 600);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:greyscale}.cat-button-filled.cat-button-disabled{--bg:242, 244, 247;--fill:var(--cat-font-color-muted, 81, 92, 108)}.cat-button-outlined{background-color:white;box-shadow:inset 0 0 0 1px color-mix(in srgb, rgb(var(--base)) 20%, #fff);color:rgb(var(--text))}.cat-button-outlined.cat-button-disabled{--base:var(--cat-font-color-muted, 81, 92, 108);--text:var(--cat-font-color-muted, 81, 92, 108)}.cat-button-outlined:hover:not(.cat-button-disabled):not(.cat-button-loading){background-color:color-mix(in srgb, rgb(var(--base)) 10%, #fff)}.cat-button-outlined.cat-button-active:not(.cat-button-disabled):not(.cat-button-loading){background-color:color-mix(in srgb, rgb(var(--base)) 10%, #fff)}.cat-button-outlined:active:not(.cat-button-disabled):not(.cat-button-loading){background-color:color-mix(in srgb, rgb(var(--base)) 10%, #fff)}.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, 81, 92, 108)}.cat-button-text:hover:not(.cat-button-disabled):not(.cat-button-loading){background-color:rgba(var(--base), 0.1)}.cat-button-text.cat-button-active:not(.cat-button-disabled):not(.cat-button-loading){background-color:rgba(var(--base), 0.1)}.cat-button-link{background-color:transparent;color:rgb(var(--text))}.cat-button-link.cat-button-disabled{--text:var(--cat-font-color-muted, 81, 92, 108)}.cat-button-link:hover:not(.cat-button-disabled):not(.cat-button-loading){text-decoration:var(--cat-link-decoration-hover, underline)}.cat-button-link.cat-button-active:not(.cat-button-disabled):not(.cat-button-loading){text-decoration:var(--cat-link-decoration-hover, underline)}.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-info{--bg:var(--cat-info-bg, 0, 115, 230);--fill:var(--cat-info-fill, 255, 255, 255);--text:var(--cat-info-text, 0, 115, 230);--base:var(--cat-info-text, 0, 115, 230)}.cat-button-info:hover:not(.cat-button-disabled):not(.cat-button-loading){--bg:var(--cat-info-bg-hover, 0, 107, 227);--fill:var(--cat-info-fill-hover, 255, 255, 255);--text:var(--cat-info-text-hover, 0, 107, 227)}.cat-button-info.cat-button-active:not(.cat-button-disabled):not(.cat-button-loading),.cat-button-info:active:not(.cat-button-disabled):not(.cat-button-loading){--bg:var(--cat-info-bg-active, 0, 96, 223);--fill:var(--cat-info-fill-active, 255, 255, 255);--text:var(--cat-info-text-active, 0, 96, 223)}.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.1875rem 0.25rem;font-size:0.875rem;line-height:1.125rem;gap:0.25rem}.cat-button-xs.cat-button-icon{width:1.5rem;height:1.5rem;padding:0}:host(.cat-button-pull[size=xs]){margin:-0.1875rem -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.1875rem;margin-bottom:-0.1875rem}:host(.cat-button-pull-t[size=xs]){margin-top:-0.1875rem}:host(.cat-button-pull-l[size=xs]){margin-left:-0.25rem}:host(.cat-button-pull-b[size=xs]){margin-bottom:-0.1875rem}: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;height:2rem;padding: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;height:2.5rem;padding: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;height:3rem;padding: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.5rem}.cat-button-xl.cat-button-icon{width:3.5rem;height:3.5rem;padding: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)::part(button){padding:1.125rem 0.75rem;--cat-secondary-bg:transparent;--cat-primary-text:transparent;--cat-danger-text:transparent}:host(.cat-tab)::part(content)::before{content:attr(data-text);content:attr(data-text)/\"\";height:0;visibility:hidden;overflow:hidden;user-select:none;pointer-events:none;font-weight:700}:host(.cat-text-left) .cat-button{justify-content:left;text-align:left}:host(.cat-text-right) .cat-button{justify-content:right;text-align:right}:host(.cat-nav-item){width:100%}:host(.cat-nav-item) .cat-button{box-shadow:none;justify-content:left;gap:0.5rem}:host(.cat-nav-item) .cat-button:focus-visible{outline-offset:-2px}:host(.cat-time-format) .cat-button{border-radius:0}:host(.cat-date-toggle) .cat-button,:host(.cat-time-toggle) .cat-button{margin-left:-1px;border-top-left-radius:0;border-bottom-left-radius:0}:host(.cat-date-item) .cat-button:hover,:host(.cat-date-toggle) .cat-button:hover,:host(.cat-time-format) .cat-button:hover,:host(.cat-time-toggle) .cat-button:hover{z-index:1}:host(.cat-date-item) .cat-button:focus-visible,:host(.cat-date-toggle) .cat-button:focus-visible,:host(.cat-time-format) .cat-button:focus-visible,:host(.cat-time-toggle) .cat-button:focus-visible{z-index:2}:host(.cat-date-item) .cat-button{padding:0;min-width:2rem;max-height:3rem;aspect-ratio:1}:host(.date-start:not(.date-end)) .cat-button{border-top-right-radius:0;border-bottom-right-radius:0}:host(.date-end:not(.date-start)) .cat-button{border-top-left-radius:0;border-bottom-left-radius:0}";
|
|
1106
1106
|
const CatButtonStyle0 = catButtonCss;
|
|
1107
1107
|
|
|
1108
1108
|
const CatButton = class {
|
|
@@ -1430,14 +1430,12 @@ const CatCheckbox = class {
|
|
|
1430
1430
|
CatCheckbox.style = CatCheckboxStyle0;
|
|
1431
1431
|
|
|
1432
1432
|
function getDays(language, weekday = 'long') {
|
|
1433
|
-
const date = new Date();
|
|
1434
|
-
const firstDayOfWeek = (date.getUTCDate() - date.getUTCDay() + 7) % 7;
|
|
1435
1433
|
const format = new Intl.DateTimeFormat(language, { weekday }).format;
|
|
1436
|
-
return [...Array(7).keys()].map(day => format(new Date(
|
|
1434
|
+
return [...Array(7).keys()].map(day => format(new Date(2000, 4, 14 + day)));
|
|
1437
1435
|
}
|
|
1438
1436
|
function getMonths(language, month = 'long') {
|
|
1439
1437
|
const format = new Intl.DateTimeFormat(language, { month }).format;
|
|
1440
|
-
return [...Array(12).keys()].map(month => format(new Date(2000, month,
|
|
1438
|
+
return [...Array(12).keys()].map(month => format(new Date(2000, month, 15)));
|
|
1441
1439
|
}
|
|
1442
1440
|
function getWeekInfo(language) {
|
|
1443
1441
|
const locale = new Intl.Locale(language);
|
|
@@ -1544,7 +1542,7 @@ const CatDate = class {
|
|
|
1544
1542
|
this.inputFocused = false;
|
|
1545
1543
|
this.requiredMarker = 'optional';
|
|
1546
1544
|
this.horizontal = false;
|
|
1547
|
-
this.autoComplete =
|
|
1545
|
+
this.autoComplete = 'off';
|
|
1548
1546
|
this.clearable = false;
|
|
1549
1547
|
this.disabled = false;
|
|
1550
1548
|
this.hint = undefined;
|
|
@@ -1622,14 +1620,14 @@ const CatDate = class {
|
|
|
1622
1620
|
}
|
|
1623
1621
|
render() {
|
|
1624
1622
|
this.hostElement.tabIndex = Number(this.hostElement.getAttribute('tabindex')) || 0;
|
|
1625
|
-
return (h(Host, { key: '
|
|
1623
|
+
return (h(Host, { key: '9635d72c77b9f68f5d650a5ef9e1883672e4865f' }, h("cat-input", { key: '469f2bab5fd76cb6f09ee7b484cb222a154e3718', class: "cat-date-input", ref: el => (this.input = el), requiredMarker: this.requiredMarker, horizontal: this.horizontal, autoComplete: this.autoComplete, clearable: this.clearable, disabled: this.disabled, hint: this.hint, icon: this.icon, iconRight: this.iconRight, identifier: this.identifier, labelHidden: this.labelHidden, name: this.name, placeholder: this.placeholder, textPrefix: this.textPrefix, textSuffix: this.textSuffix, readonly: this.readonly, required: this.required, errors: this.errors, errorUpdate: this.errorUpdate, nativeAttributes: this.nativeAttributes, value: this.inputValue, onCatFocus: e => {
|
|
1626
1624
|
this.inputFocused = e.target === this.input;
|
|
1627
1625
|
e.stopPropagation();
|
|
1628
1626
|
this.catFocus.emit(e.detail);
|
|
1629
1627
|
}, onCatBlur: e => {
|
|
1630
1628
|
e.stopPropagation();
|
|
1631
1629
|
this.onInputBlur(e.detail);
|
|
1632
|
-
} }, h("span", { key: '
|
|
1630
|
+
} }, h("span", { key: '65e0c84bf675f0c76896f06452068acfb0326e2e', slot: "label" }, this.label, h("span", { key: '67f3e80eb70dd817b481ca7945edfc83d2451c78', class: "label-aria" }, " (", this.locale.formatStr, ")")), h("cat-dropdown", { key: 'a05ef8d20ade5dda5801e44142efdb3b532b76f7', slot: "addon", placement: this.placement, arrowNavigation: "none", noResize: true, onCatOpen: () => this.dateInline?.resetView() }, h("cat-button", { key: 'a4d464eead26162405655074e352e2024c04a201', slot: "trigger", icon: "$cat:datepicker-calendar", iconOnly: true, class: "cat-date-toggle", disabled: this.disabled, a11yLabel: this.getTriggerA11yLabel() }), h("div", { key: 'e9b8ac737e80392f98b933d4870309cb8843d166', slot: "content" }, h("cat-date-inline", { key: '541651169cd502dd166aa9443c6392118f3bd26a', ref: el => (this.dateInline = el), min: this.min, max: this.max, value: this.value, hint: true, weeks: true, noClear: true, onCatChange: this.onDateChange.bind(this) }))))));
|
|
1633
1631
|
}
|
|
1634
1632
|
getTriggerA11yLabel() {
|
|
1635
1633
|
const date = this.locale.fromLocalISO(this.value);
|
|
@@ -2468,14 +2466,16 @@ const CatDateInline = class {
|
|
|
2468
2466
|
}
|
|
2469
2467
|
}
|
|
2470
2468
|
navigate(direction, period) {
|
|
2471
|
-
|
|
2472
|
-
|
|
2473
|
-
|
|
2474
|
-
|
|
2475
|
-
|
|
2476
|
-
|
|
2477
|
-
|
|
2478
|
-
|
|
2469
|
+
const offset = direction === 'prev' ? -1 : 1;
|
|
2470
|
+
const targetYear = this.viewDate.getFullYear() + (period === 'year' ? offset : 0);
|
|
2471
|
+
const targetMonth = this.viewDate.getMonth() + (period === 'month' ? offset : 0);
|
|
2472
|
+
const date = new Date(this.viewDate);
|
|
2473
|
+
date.setFullYear(targetYear);
|
|
2474
|
+
date.setMonth(targetMonth);
|
|
2475
|
+
const minDate = new Date(targetYear, targetMonth, 1);
|
|
2476
|
+
const maxDay = new Date(targetYear, targetMonth + 1, 0).getDate();
|
|
2477
|
+
const maxDate = new Date(targetYear, targetMonth, maxDay);
|
|
2478
|
+
this.viewDate = clampDate(minDate, date, maxDate);
|
|
2479
2479
|
this.setAriaLive(this.getHeadline());
|
|
2480
2480
|
}
|
|
2481
2481
|
setAriaLive(text) {
|
|
@@ -6584,7 +6584,7 @@ function isOverflowElement(element) {
|
|
|
6584
6584
|
function isTableElement(element) {
|
|
6585
6585
|
return ['table', 'td', 'th'].includes(getNodeName(element));
|
|
6586
6586
|
}
|
|
6587
|
-
function isTopLayer
|
|
6587
|
+
function isTopLayer(element) {
|
|
6588
6588
|
return [':popover-open', ':modal'].some(selector => {
|
|
6589
6589
|
try {
|
|
6590
6590
|
return element.matches(selector);
|
|
@@ -6598,14 +6598,15 @@ function isContainingBlock(elementOrCss) {
|
|
|
6598
6598
|
const css = isElement(elementOrCss) ? getComputedStyle$1(elementOrCss) : elementOrCss;
|
|
6599
6599
|
|
|
6600
6600
|
// https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block
|
|
6601
|
-
|
|
6601
|
+
// https://drafts.csswg.org/css-transforms-2/#individual-transforms
|
|
6602
|
+
return ['transform', 'translate', 'scale', 'rotate', 'perspective'].some(value => css[value] ? css[value] !== 'none' : false) || (css.containerType ? css.containerType !== 'normal' : false) || !webkit && (css.backdropFilter ? css.backdropFilter !== 'none' : false) || !webkit && (css.filter ? css.filter !== 'none' : false) || ['transform', 'translate', 'scale', 'rotate', 'perspective', 'filter'].some(value => (css.willChange || '').includes(value)) || ['paint', 'layout', 'strict', 'content'].some(value => (css.contain || '').includes(value));
|
|
6602
6603
|
}
|
|
6603
6604
|
function getContainingBlock(element) {
|
|
6604
6605
|
let currentNode = getParentNode(element);
|
|
6605
6606
|
while (isHTMLElement(currentNode) && !isLastTraversableNode(currentNode)) {
|
|
6606
6607
|
if (isContainingBlock(currentNode)) {
|
|
6607
6608
|
return currentNode;
|
|
6608
|
-
} else if (isTopLayer
|
|
6609
|
+
} else if (isTopLayer(currentNode)) {
|
|
6609
6610
|
return null;
|
|
6610
6611
|
}
|
|
6611
6612
|
currentNode = getParentNode(currentNode);
|
|
@@ -6782,7 +6783,7 @@ function getBoundingClientRect(element, includeScale, isFixedStrategy, offsetPar
|
|
|
6782
6783
|
const win = getWindow(domElement);
|
|
6783
6784
|
const offsetWin = offsetParent && isElement(offsetParent) ? getWindow(offsetParent) : offsetParent;
|
|
6784
6785
|
let currentWin = win;
|
|
6785
|
-
let currentIFrame = currentWin
|
|
6786
|
+
let currentIFrame = getFrameElement(currentWin);
|
|
6786
6787
|
while (currentIFrame && offsetParent && offsetWin !== currentWin) {
|
|
6787
6788
|
const iframeScale = getScale(currentIFrame);
|
|
6788
6789
|
const iframeRect = currentIFrame.getBoundingClientRect();
|
|
@@ -6796,7 +6797,7 @@ function getBoundingClientRect(element, includeScale, isFixedStrategy, offsetPar
|
|
|
6796
6797
|
x += left;
|
|
6797
6798
|
y += top;
|
|
6798
6799
|
currentWin = getWindow(currentIFrame);
|
|
6799
|
-
currentIFrame = currentWin
|
|
6800
|
+
currentIFrame = getFrameElement(currentWin);
|
|
6800
6801
|
}
|
|
6801
6802
|
}
|
|
6802
6803
|
return rectToClientRect({
|
|
@@ -6807,15 +6808,29 @@ function getBoundingClientRect(element, includeScale, isFixedStrategy, offsetPar
|
|
|
6807
6808
|
});
|
|
6808
6809
|
}
|
|
6809
6810
|
|
|
6810
|
-
|
|
6811
|
-
|
|
6812
|
-
|
|
6813
|
-
|
|
6814
|
-
|
|
6815
|
-
|
|
6816
|
-
|
|
6817
|
-
|
|
6818
|
-
|
|
6811
|
+
// If <html> has a CSS width greater than the viewport, then this will be
|
|
6812
|
+
// incorrect for RTL.
|
|
6813
|
+
function getWindowScrollBarX(element, rect) {
|
|
6814
|
+
const leftScroll = getNodeScroll(element).scrollLeft;
|
|
6815
|
+
if (!rect) {
|
|
6816
|
+
return getBoundingClientRect(getDocumentElement(element)).left + leftScroll;
|
|
6817
|
+
}
|
|
6818
|
+
return rect.left + leftScroll;
|
|
6819
|
+
}
|
|
6820
|
+
|
|
6821
|
+
function getHTMLOffset(documentElement, scroll, ignoreScrollbarX) {
|
|
6822
|
+
if (ignoreScrollbarX === void 0) {
|
|
6823
|
+
ignoreScrollbarX = false;
|
|
6824
|
+
}
|
|
6825
|
+
const htmlRect = documentElement.getBoundingClientRect();
|
|
6826
|
+
const x = htmlRect.left + scroll.scrollLeft - (ignoreScrollbarX ? 0 :
|
|
6827
|
+
// RTL <body> scrollbar.
|
|
6828
|
+
getWindowScrollBarX(documentElement, htmlRect));
|
|
6829
|
+
const y = htmlRect.top + scroll.scrollTop;
|
|
6830
|
+
return {
|
|
6831
|
+
x,
|
|
6832
|
+
y
|
|
6833
|
+
};
|
|
6819
6834
|
}
|
|
6820
6835
|
|
|
6821
6836
|
function convertOffsetParentRelativeRectToViewportRelativeRect(_ref) {
|
|
@@ -6849,11 +6864,12 @@ function convertOffsetParentRelativeRectToViewportRelativeRect(_ref) {
|
|
|
6849
6864
|
offsets.y = offsetRect.y + offsetParent.clientTop;
|
|
6850
6865
|
}
|
|
6851
6866
|
}
|
|
6867
|
+
const htmlOffset = documentElement && !isOffsetParentAnElement && !isFixed ? getHTMLOffset(documentElement, scroll, true) : createCoords(0);
|
|
6852
6868
|
return {
|
|
6853
6869
|
width: rect.width * scale.x,
|
|
6854
6870
|
height: rect.height * scale.y,
|
|
6855
|
-
x: rect.x * scale.x - scroll.scrollLeft * scale.x + offsets.x,
|
|
6856
|
-
y: rect.y * scale.y - scroll.scrollTop * scale.y + offsets.y
|
|
6871
|
+
x: rect.x * scale.x - scroll.scrollLeft * scale.x + offsets.x + htmlOffset.x,
|
|
6872
|
+
y: rect.y * scale.y - scroll.scrollTop * scale.y + offsets.y + htmlOffset.y
|
|
6857
6873
|
};
|
|
6858
6874
|
}
|
|
6859
6875
|
|
|
@@ -6861,12 +6877,6 @@ function getClientRects(element) {
|
|
|
6861
6877
|
return Array.from(element.getClientRects());
|
|
6862
6878
|
}
|
|
6863
6879
|
|
|
6864
|
-
function getWindowScrollBarX(element) {
|
|
6865
|
-
// If <html> has a CSS width greater than the viewport, then this will be
|
|
6866
|
-
// incorrect for RTL.
|
|
6867
|
-
return getBoundingClientRect(getDocumentElement(element)).left + getNodeScroll(element).scrollLeft;
|
|
6868
|
-
}
|
|
6869
|
-
|
|
6870
6880
|
// Gets the entire size of the scrollable document area, even extending outside
|
|
6871
6881
|
// of the `<html>` and `<body>` rect bounds if horizontally scrollable.
|
|
6872
6882
|
function getDocumentRect(element) {
|
|
@@ -6941,9 +6951,10 @@ function getClientRectFromClippingAncestor(element, clippingAncestor, strategy)
|
|
|
6941
6951
|
} else {
|
|
6942
6952
|
const visualOffsets = getVisualOffsets(element);
|
|
6943
6953
|
rect = {
|
|
6944
|
-
...clippingAncestor,
|
|
6945
6954
|
x: clippingAncestor.x - visualOffsets.x,
|
|
6946
|
-
y: clippingAncestor.y - visualOffsets.y
|
|
6955
|
+
y: clippingAncestor.y - visualOffsets.y,
|
|
6956
|
+
width: clippingAncestor.width,
|
|
6957
|
+
height: clippingAncestor.height
|
|
6947
6958
|
};
|
|
6948
6959
|
}
|
|
6949
6960
|
return rectToClientRect(rect);
|
|
@@ -7048,11 +7059,14 @@ function getRectRelativeToOffsetParent(element, offsetParent, strategy) {
|
|
|
7048
7059
|
offsets.x = offsetRect.x + offsetParent.clientLeft;
|
|
7049
7060
|
offsets.y = offsetRect.y + offsetParent.clientTop;
|
|
7050
7061
|
} else if (documentElement) {
|
|
7062
|
+
// If the <body> scrollbar appears on the left (e.g. RTL systems). Use
|
|
7063
|
+
// Firefox with layout.scrollbar.side = 3 in about:config to test this.
|
|
7051
7064
|
offsets.x = getWindowScrollBarX(documentElement);
|
|
7052
7065
|
}
|
|
7053
7066
|
}
|
|
7054
|
-
const
|
|
7055
|
-
const
|
|
7067
|
+
const htmlOffset = documentElement && !isOffsetParentAnElement && !isFixed ? getHTMLOffset(documentElement, scroll) : createCoords(0);
|
|
7068
|
+
const x = rect.left + scroll.scrollLeft - offsets.x - htmlOffset.x;
|
|
7069
|
+
const y = rect.top + scroll.scrollTop - offsets.y - htmlOffset.y;
|
|
7056
7070
|
return {
|
|
7057
7071
|
x,
|
|
7058
7072
|
y,
|
|
@@ -7072,7 +7086,16 @@ function getTrueOffsetParent(element, polyfill) {
|
|
|
7072
7086
|
if (polyfill) {
|
|
7073
7087
|
return polyfill(element);
|
|
7074
7088
|
}
|
|
7075
|
-
|
|
7089
|
+
let rawOffsetParent = element.offsetParent;
|
|
7090
|
+
|
|
7091
|
+
// Firefox returns the <html> element as the offsetParent if it's non-static,
|
|
7092
|
+
// while Chrome and Safari return the <body> element. The <body> element must
|
|
7093
|
+
// be used to perform the correct calculations even if the <html> element is
|
|
7094
|
+
// non-static.
|
|
7095
|
+
if (getDocumentElement(element) === rawOffsetParent) {
|
|
7096
|
+
rawOffsetParent = rawOffsetParent.ownerDocument.body;
|
|
7097
|
+
}
|
|
7098
|
+
return rawOffsetParent;
|
|
7076
7099
|
}
|
|
7077
7100
|
|
|
7078
7101
|
// Gets the closest ancestor positioned element. Handles some edge cases,
|
|
@@ -7134,6 +7157,10 @@ const platform = {
|
|
|
7134
7157
|
isRTL
|
|
7135
7158
|
};
|
|
7136
7159
|
|
|
7160
|
+
function rectsAreEqual(a, b) {
|
|
7161
|
+
return a.x === b.x && a.y === b.y && a.width === b.width && a.height === b.height;
|
|
7162
|
+
}
|
|
7163
|
+
|
|
7137
7164
|
// https://samthor.au/2021/observing-dom/
|
|
7138
7165
|
function observeMove(element, onMove) {
|
|
7139
7166
|
let io = null;
|
|
@@ -7153,12 +7180,13 @@ function observeMove(element, onMove) {
|
|
|
7153
7180
|
threshold = 1;
|
|
7154
7181
|
}
|
|
7155
7182
|
cleanup();
|
|
7183
|
+
const elementRectForRootMargin = element.getBoundingClientRect();
|
|
7156
7184
|
const {
|
|
7157
7185
|
left,
|
|
7158
7186
|
top,
|
|
7159
7187
|
width,
|
|
7160
7188
|
height
|
|
7161
|
-
} =
|
|
7189
|
+
} = elementRectForRootMargin;
|
|
7162
7190
|
if (!skip) {
|
|
7163
7191
|
onMove();
|
|
7164
7192
|
}
|
|
@@ -7191,6 +7219,16 @@ function observeMove(element, onMove) {
|
|
|
7191
7219
|
refresh(false, ratio);
|
|
7192
7220
|
}
|
|
7193
7221
|
}
|
|
7222
|
+
if (ratio === 1 && !rectsAreEqual(elementRectForRootMargin, element.getBoundingClientRect())) {
|
|
7223
|
+
// It's possible that even though the ratio is reported as 1, the
|
|
7224
|
+
// element is not actually fully within the IntersectionObserver's root
|
|
7225
|
+
// area anymore. This can happen under performance constraints. This may
|
|
7226
|
+
// be a bug in the browser's IntersectionObserver implementation. To
|
|
7227
|
+
// work around this, we compare the element's bounding rect now with
|
|
7228
|
+
// what it was at the time we created the IntersectionObserver. If they
|
|
7229
|
+
// are not equal then the element moved, so we refresh.
|
|
7230
|
+
refresh();
|
|
7231
|
+
}
|
|
7194
7232
|
isFirstUpdate = false;
|
|
7195
7233
|
}
|
|
7196
7234
|
|
|
@@ -7268,7 +7306,7 @@ function autoUpdate(reference, floating, update, options) {
|
|
|
7268
7306
|
}
|
|
7269
7307
|
function frameLoop() {
|
|
7270
7308
|
const nextRefRect = getBoundingClientRect(reference);
|
|
7271
|
-
if (prevRefRect && (
|
|
7309
|
+
if (prevRefRect && !rectsAreEqual(prevRefRect, nextRefRect)) {
|
|
7272
7310
|
update();
|
|
7273
7311
|
}
|
|
7274
7312
|
prevRefRect = nextRefRect;
|
|
@@ -7392,7 +7430,7 @@ const CatDatepickerFlat = class {
|
|
|
7392
7430
|
this.hasSlottedHint = false;
|
|
7393
7431
|
this.requiredMarker = 'optional';
|
|
7394
7432
|
this.horizontal = false;
|
|
7395
|
-
this.autoComplete =
|
|
7433
|
+
this.autoComplete = 'off';
|
|
7396
7434
|
this.clearable = false;
|
|
7397
7435
|
this.disabled = false;
|
|
7398
7436
|
this.hint = undefined;
|
|
@@ -7480,7 +7518,7 @@ const CatDatepickerFlat = class {
|
|
|
7480
7518
|
}
|
|
7481
7519
|
render() {
|
|
7482
7520
|
return [
|
|
7483
|
-
h("cat-input", { key: '
|
|
7521
|
+
h("cat-input", { key: '472e33835c2ac42e3e648d7b4b80551bfad276bb', ref: el => (this._input = el), requiredMarker: this.requiredMarker, horizontal: this.horizontal, autoComplete: this.autoComplete, clearable: this.clearable, disabled: this.disabled, hint: this.hint, icon: this.icon, iconRight: this.iconRight, identifier: this.identifier, label: this.label, labelHidden: this.labelHidden, name: this.name, placeholder: this.placeholder, textPrefix: this.textPrefix, textSuffix: this.textSuffix, readonly: this.readonly, required: this.required, value: this.value, errors: this.errors, errorUpdate: this.errorUpdate, nativeAttributes: this.nativeAttributes, onCatChange: e => {
|
|
7484
7522
|
e.stopPropagation();
|
|
7485
7523
|
this.value = e.detail || undefined;
|
|
7486
7524
|
}, onCatFocus: e => {
|
|
@@ -7489,8 +7527,8 @@ const CatDatepickerFlat = class {
|
|
|
7489
7527
|
}, onCatBlur: e => {
|
|
7490
7528
|
e.stopPropagation();
|
|
7491
7529
|
this.catBlur.emit(e.detail);
|
|
7492
|
-
} }, this.hasSlottedLabel && (h("span", { key: '
|
|
7493
|
-
h("div", { key: '
|
|
7530
|
+
} }, this.hasSlottedLabel && (h("span", { key: '9e883cc02c66b78e8be8221a5632f37b016df965', slot: "label" }, h("slot", { key: '892603e7cb7e645e92503a30f2eb89dc5b2be9bc', name: "label" }))), this.hasSlottedHint && (h("span", { key: 'b5f4e4fad0aca02ab0d9c1a94d4f5e7582634490', slot: "hint" }, h("slot", { key: '4d9184fd37321b6b7709a25a3cee17057b5cfcb7', name: "hint" })))),
|
|
7531
|
+
h("div", { key: '8eccd0924e6dfcd2fdf2d71feba880ca84d44e87', ref: el => (this._calendarWrapper = el), class: "datepicker-wrapper" })
|
|
7494
7532
|
];
|
|
7495
7533
|
}
|
|
7496
7534
|
initDatepicker(input) {
|
|
@@ -7633,10 +7671,32 @@ CatDatepickerInline.style = CatDatepickerInlineStyle0;
|
|
|
7633
7671
|
const timeTransitionS = 125;
|
|
7634
7672
|
|
|
7635
7673
|
/*!
|
|
7636
|
-
* focus-trap 7.
|
|
7674
|
+
* focus-trap 7.6.4
|
|
7637
7675
|
* @license MIT, https://github.com/focus-trap/focus-trap/blob/master/LICENSE
|
|
7638
7676
|
*/
|
|
7639
7677
|
|
|
7678
|
+
function _arrayLikeToArray(r, a) {
|
|
7679
|
+
(null == a || a > r.length) && (a = r.length);
|
|
7680
|
+
for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];
|
|
7681
|
+
return n;
|
|
7682
|
+
}
|
|
7683
|
+
function _arrayWithoutHoles(r) {
|
|
7684
|
+
if (Array.isArray(r)) return _arrayLikeToArray(r);
|
|
7685
|
+
}
|
|
7686
|
+
function _defineProperty(e, r, t) {
|
|
7687
|
+
return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, {
|
|
7688
|
+
value: t,
|
|
7689
|
+
enumerable: true,
|
|
7690
|
+
configurable: true,
|
|
7691
|
+
writable: true
|
|
7692
|
+
}) : e[r] = t, e;
|
|
7693
|
+
}
|
|
7694
|
+
function _iterableToArray(r) {
|
|
7695
|
+
if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r);
|
|
7696
|
+
}
|
|
7697
|
+
function _nonIterableSpread() {
|
|
7698
|
+
throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
7699
|
+
}
|
|
7640
7700
|
function ownKeys(e, r) {
|
|
7641
7701
|
var t = Object.keys(e);
|
|
7642
7702
|
if (Object.getOwnPropertySymbols) {
|
|
@@ -7650,7 +7710,7 @@ function ownKeys(e, r) {
|
|
|
7650
7710
|
function _objectSpread2(e) {
|
|
7651
7711
|
for (var r = 1; r < arguments.length; r++) {
|
|
7652
7712
|
var t = null != arguments[r] ? arguments[r] : {};
|
|
7653
|
-
r % 2 ? ownKeys(Object(t),
|
|
7713
|
+
r % 2 ? ownKeys(Object(t), true).forEach(function (r) {
|
|
7654
7714
|
_defineProperty(e, r, t[r]);
|
|
7655
7715
|
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) {
|
|
7656
7716
|
Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));
|
|
@@ -7658,33 +7718,29 @@ function _objectSpread2(e) {
|
|
|
7658
7718
|
}
|
|
7659
7719
|
return e;
|
|
7660
7720
|
}
|
|
7661
|
-
function
|
|
7662
|
-
|
|
7663
|
-
|
|
7664
|
-
|
|
7665
|
-
|
|
7666
|
-
|
|
7667
|
-
|
|
7668
|
-
|
|
7669
|
-
|
|
7670
|
-
} else {
|
|
7671
|
-
obj[key] = value;
|
|
7672
|
-
}
|
|
7673
|
-
return obj;
|
|
7674
|
-
}
|
|
7675
|
-
function _toPrimitive(input, hint) {
|
|
7676
|
-
if (typeof input !== "object" || input === null) return input;
|
|
7677
|
-
var prim = input[Symbol.toPrimitive];
|
|
7678
|
-
if (prim !== undefined) {
|
|
7679
|
-
var res = prim.call(input, hint || "default");
|
|
7680
|
-
if (typeof res !== "object") return res;
|
|
7721
|
+
function _toConsumableArray(r) {
|
|
7722
|
+
return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread();
|
|
7723
|
+
}
|
|
7724
|
+
function _toPrimitive(t, r) {
|
|
7725
|
+
if ("object" != typeof t || !t) return t;
|
|
7726
|
+
var e = t[Symbol.toPrimitive];
|
|
7727
|
+
if (undefined !== e) {
|
|
7728
|
+
var i = e.call(t, r || "default");
|
|
7729
|
+
if ("object" != typeof i) return i;
|
|
7681
7730
|
throw new TypeError("@@toPrimitive must return a primitive value.");
|
|
7682
7731
|
}
|
|
7683
|
-
return (
|
|
7732
|
+
return ("string" === r ? String : Number)(t);
|
|
7684
7733
|
}
|
|
7685
|
-
function _toPropertyKey(
|
|
7686
|
-
var
|
|
7687
|
-
return
|
|
7734
|
+
function _toPropertyKey(t) {
|
|
7735
|
+
var i = _toPrimitive(t, "string");
|
|
7736
|
+
return "symbol" == typeof i ? i : i + "";
|
|
7737
|
+
}
|
|
7738
|
+
function _unsupportedIterableToArray(r, a) {
|
|
7739
|
+
if (r) {
|
|
7740
|
+
if ("string" == typeof r) return _arrayLikeToArray(r, a);
|
|
7741
|
+
var t = {}.toString.call(r).slice(8, -1);
|
|
7742
|
+
return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : undefined;
|
|
7743
|
+
}
|
|
7688
7744
|
}
|
|
7689
7745
|
|
|
7690
7746
|
var activeFocusTraps = {
|
|
@@ -7692,7 +7748,7 @@ var activeFocusTraps = {
|
|
|
7692
7748
|
if (trapStack.length > 0) {
|
|
7693
7749
|
var activeTrap = trapStack[trapStack.length - 1];
|
|
7694
7750
|
if (activeTrap !== trap) {
|
|
7695
|
-
activeTrap.
|
|
7751
|
+
activeTrap._setPausedState(true);
|
|
7696
7752
|
}
|
|
7697
7753
|
}
|
|
7698
7754
|
var trapIndex = trapStack.indexOf(trap);
|
|
@@ -7709,8 +7765,8 @@ var activeFocusTraps = {
|
|
|
7709
7765
|
if (trapIndex !== -1) {
|
|
7710
7766
|
trapStack.splice(trapIndex, 1);
|
|
7711
7767
|
}
|
|
7712
|
-
if (trapStack.length > 0) {
|
|
7713
|
-
trapStack[trapStack.length - 1].
|
|
7768
|
+
if (trapStack.length > 0 && !trapStack[trapStack.length - 1]._isManuallyPaused()) {
|
|
7769
|
+
trapStack[trapStack.length - 1]._setPausedState(false);
|
|
7714
7770
|
}
|
|
7715
7771
|
}
|
|
7716
7772
|
};
|
|
@@ -7718,10 +7774,10 @@ var isSelectableInput = function isSelectableInput(node) {
|
|
|
7718
7774
|
return node.tagName && node.tagName.toLowerCase() === 'input' && typeof node.select === 'function';
|
|
7719
7775
|
};
|
|
7720
7776
|
var isEscapeEvent = function isEscapeEvent(e) {
|
|
7721
|
-
return (e === null || e ===
|
|
7777
|
+
return (e === null || e === undefined ? undefined : e.key) === 'Escape' || (e === null || e === undefined ? undefined : e.key) === 'Esc' || (e === null || e === undefined ? undefined : e.keyCode) === 27;
|
|
7722
7778
|
};
|
|
7723
7779
|
var isTabEvent = function isTabEvent(e) {
|
|
7724
|
-
return (e === null || e ===
|
|
7780
|
+
return (e === null || e === undefined ? undefined : e.key) === 'Tab' || (e === null || e === undefined ? undefined : e.keyCode) === 9;
|
|
7725
7781
|
};
|
|
7726
7782
|
|
|
7727
7783
|
// checks for TAB by default
|
|
@@ -7737,22 +7793,6 @@ var delay = function delay(fn) {
|
|
|
7737
7793
|
return setTimeout(fn, 0);
|
|
7738
7794
|
};
|
|
7739
7795
|
|
|
7740
|
-
// Array.find/findIndex() are not supported on IE; this replicates enough
|
|
7741
|
-
// of Array.findIndex() for our needs
|
|
7742
|
-
var findIndex = function findIndex(arr, fn) {
|
|
7743
|
-
var idx = -1;
|
|
7744
|
-
arr.every(function (value, i) {
|
|
7745
|
-
if (fn(value)) {
|
|
7746
|
-
idx = i;
|
|
7747
|
-
return false; // break
|
|
7748
|
-
}
|
|
7749
|
-
|
|
7750
|
-
return true; // next
|
|
7751
|
-
});
|
|
7752
|
-
|
|
7753
|
-
return idx;
|
|
7754
|
-
};
|
|
7755
|
-
|
|
7756
7796
|
/**
|
|
7757
7797
|
* Get an option's value when it could be a plain value, or a handler that provides
|
|
7758
7798
|
* the value.
|
|
@@ -7764,7 +7804,7 @@ var valueOrHandler = function valueOrHandler(value) {
|
|
|
7764
7804
|
for (var _len = arguments.length, params = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
|
|
7765
7805
|
params[_key - 1] = arguments[_key];
|
|
7766
7806
|
}
|
|
7767
|
-
return typeof value === 'function' ? value.apply(
|
|
7807
|
+
return typeof value === 'function' ? value.apply(undefined, params) : value;
|
|
7768
7808
|
};
|
|
7769
7809
|
var getActualTarget = function getActualTarget(event) {
|
|
7770
7810
|
// NOTE: If the trap is _inside_ a shadow DOM, event.target will always be the
|
|
@@ -7783,8 +7823,8 @@ var internalTrapStack = [];
|
|
|
7783
7823
|
var createFocusTrap = function createFocusTrap(elements, userOptions) {
|
|
7784
7824
|
// SSR: a live trap shouldn't be created in this type of environment so this
|
|
7785
7825
|
// should be safe code to execute if the `document` option isn't specified
|
|
7786
|
-
var doc = (userOptions === null || userOptions ===
|
|
7787
|
-
var trapStack = (userOptions === null || userOptions ===
|
|
7826
|
+
var doc = (userOptions === null || userOptions === undefined ? undefined : userOptions.document) || document;
|
|
7827
|
+
var trapStack = (userOptions === null || userOptions === undefined ? undefined : userOptions.trapStack) || internalTrapStack;
|
|
7788
7828
|
var config = _objectSpread2({
|
|
7789
7829
|
returnFocusOnDeactivate: true,
|
|
7790
7830
|
escapeDeactivates: true,
|
|
@@ -7824,6 +7864,7 @@ var createFocusTrap = function createFocusTrap(elements, userOptions) {
|
|
|
7824
7864
|
mostRecentlyFocusedNode: null,
|
|
7825
7865
|
active: false,
|
|
7826
7866
|
paused: false,
|
|
7867
|
+
manuallyPaused: false,
|
|
7827
7868
|
// timer ID for when delayInitialFocus is true and initial focus in this trap
|
|
7828
7869
|
// has been delayed during activation
|
|
7829
7870
|
delayInitialFocusTimer: undefined,
|
|
@@ -7855,18 +7896,18 @@ var createFocusTrap = function createFocusTrap(elements, userOptions) {
|
|
|
7855
7896
|
* if the element isn't found.
|
|
7856
7897
|
*/
|
|
7857
7898
|
var findContainerIndex = function findContainerIndex(element, event) {
|
|
7858
|
-
var composedPath = typeof (event === null || event ===
|
|
7899
|
+
var composedPath = typeof (event === null || event === undefined ? undefined : event.composedPath) === 'function' ? event.composedPath() : undefined;
|
|
7859
7900
|
// NOTE: search `containerGroups` because it's possible a group contains no tabbable
|
|
7860
7901
|
// nodes, but still contains focusable nodes (e.g. if they all have `tabindex=-1`)
|
|
7861
7902
|
// and we still need to find the element in there
|
|
7862
7903
|
return state.containerGroups.findIndex(function (_ref) {
|
|
7863
7904
|
var container = _ref.container,
|
|
7864
7905
|
tabbableNodes = _ref.tabbableNodes;
|
|
7865
|
-
return container.contains(element) || (
|
|
7906
|
+
return container.contains(element) || (// fall back to explicit tabbable search which will take into consideration any
|
|
7866
7907
|
// web components if the `tabbableOptions.getShadowRoot` option was used for
|
|
7867
7908
|
// the trap, enabling shadow DOM support in tabbable (`Node.contains()` doesn't
|
|
7868
7909
|
// look inside web components even if open)
|
|
7869
|
-
composedPath === null || composedPath ===
|
|
7910
|
+
composedPath === null || composedPath === undefined ? undefined : composedPath.includes(container)) || tabbableNodes.find(function (node) {
|
|
7870
7911
|
return node === element;
|
|
7871
7912
|
});
|
|
7872
7913
|
});
|
|
@@ -7878,25 +7919,31 @@ var createFocusTrap = function createFocusTrap(elements, userOptions) {
|
|
|
7878
7919
|
* (if a node is explicitly NOT given), or a function that returns any of these
|
|
7879
7920
|
* values.
|
|
7880
7921
|
* @param {string} optionName
|
|
7881
|
-
* @
|
|
7882
|
-
*
|
|
7883
|
-
*
|
|
7884
|
-
*
|
|
7922
|
+
* @param {Object} options
|
|
7923
|
+
* @param {boolean} [options.hasFallback] True if the option could be a selector string
|
|
7924
|
+
* and the option allows for a fallback scenario in the case where the selector is
|
|
7925
|
+
* valid but does not match a node (i.e. the queried node doesn't exist in the DOM).
|
|
7926
|
+
* @param {Array} [options.params] Params to pass to the option if it's a function.
|
|
7927
|
+
* @returns {undefined | null | false | HTMLElement | SVGElement} Returns
|
|
7928
|
+
* `undefined` if the option is not specified; `null` if the option didn't resolve
|
|
7929
|
+
* to a node but `options.hasFallback=true`, `false` if the option resolved to `false`
|
|
7930
|
+
* (node explicitly not given); otherwise, the resolved DOM node.
|
|
7885
7931
|
* @throws {Error} If the option is set, not `false`, and is not, or does not
|
|
7886
|
-
* resolve to a node.
|
|
7932
|
+
* resolve to a node, unless the option is a selector string and `options.hasFallback=true`.
|
|
7887
7933
|
*/
|
|
7888
7934
|
var getNodeForOption = function getNodeForOption(optionName) {
|
|
7935
|
+
var _ref2 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
|
|
7936
|
+
_ref2$hasFallback = _ref2.hasFallback,
|
|
7937
|
+
hasFallback = _ref2$hasFallback === undefined ? false : _ref2$hasFallback,
|
|
7938
|
+
_ref2$params = _ref2.params,
|
|
7939
|
+
params = _ref2$params === undefined ? [] : _ref2$params;
|
|
7889
7940
|
var optionValue = config[optionName];
|
|
7890
7941
|
if (typeof optionValue === 'function') {
|
|
7891
|
-
|
|
7892
|
-
params[_key2 - 1] = arguments[_key2];
|
|
7893
|
-
}
|
|
7894
|
-
optionValue = optionValue.apply(void 0, params);
|
|
7942
|
+
optionValue = optionValue.apply(undefined, _toConsumableArray(params));
|
|
7895
7943
|
}
|
|
7896
7944
|
if (optionValue === true) {
|
|
7897
7945
|
optionValue = undefined; // use default value
|
|
7898
7946
|
}
|
|
7899
|
-
|
|
7900
7947
|
if (!optionValue) {
|
|
7901
7948
|
if (optionValue === undefined || optionValue === false) {
|
|
7902
7949
|
return optionValue;
|
|
@@ -7908,21 +7955,31 @@ var createFocusTrap = function createFocusTrap(elements, userOptions) {
|
|
|
7908
7955
|
var node = optionValue; // could be HTMLElement, SVGElement, or non-empty string at this point
|
|
7909
7956
|
|
|
7910
7957
|
if (typeof optionValue === 'string') {
|
|
7911
|
-
|
|
7958
|
+
try {
|
|
7959
|
+
node = doc.querySelector(optionValue); // resolve to node, or null if fails
|
|
7960
|
+
} catch (err) {
|
|
7961
|
+
throw new Error("`".concat(optionName, "` appears to be an invalid selector; error=\"").concat(err.message, "\""));
|
|
7962
|
+
}
|
|
7912
7963
|
if (!node) {
|
|
7913
|
-
|
|
7964
|
+
if (!hasFallback) {
|
|
7965
|
+
throw new Error("`".concat(optionName, "` as selector refers to no known node"));
|
|
7966
|
+
}
|
|
7967
|
+
// else, `node` MUST be `null` because that's what `Document.querySelector()` returns
|
|
7968
|
+
// if the selector is valid but doesn't match anything
|
|
7914
7969
|
}
|
|
7915
7970
|
}
|
|
7916
7971
|
return node;
|
|
7917
7972
|
};
|
|
7918
7973
|
var getInitialFocusNode = function getInitialFocusNode() {
|
|
7919
|
-
var node = getNodeForOption('initialFocus'
|
|
7974
|
+
var node = getNodeForOption('initialFocus', {
|
|
7975
|
+
hasFallback: true
|
|
7976
|
+
});
|
|
7920
7977
|
|
|
7921
7978
|
// false explicitly indicates we want no initialFocus at all
|
|
7922
7979
|
if (node === false) {
|
|
7923
7980
|
return false;
|
|
7924
7981
|
}
|
|
7925
|
-
if (node === undefined || !isFocusable(node, config.tabbableOptions)) {
|
|
7982
|
+
if (node === undefined || node && !isFocusable(node, config.tabbableOptions)) {
|
|
7926
7983
|
// option not specified nor focusable: use fallback options
|
|
7927
7984
|
if (findContainerIndex(doc.activeElement) >= 0) {
|
|
7928
7985
|
node = doc.activeElement;
|
|
@@ -7933,6 +7990,10 @@ var createFocusTrap = function createFocusTrap(elements, userOptions) {
|
|
|
7933
7990
|
// NOTE: `fallbackFocus` option function cannot return `false` (not supported)
|
|
7934
7991
|
node = firstTabbableNode || getNodeForOption('fallbackFocus');
|
|
7935
7992
|
}
|
|
7993
|
+
} else if (node === null) {
|
|
7994
|
+
// option is a VALID selector string that doesn't yield a node: use the `fallbackFocus`
|
|
7995
|
+
// option instead of the default behavior when the option isn't specified at all
|
|
7996
|
+
node = getNodeForOption('fallbackFocus');
|
|
7936
7997
|
}
|
|
7937
7998
|
if (!node) {
|
|
7938
7999
|
throw new Error('Your focus-trap needs to have at least one focusable element');
|
|
@@ -8042,25 +8103,25 @@ var createFocusTrap = function createFocusTrap(elements, userOptions) {
|
|
|
8042
8103
|
*
|
|
8043
8104
|
* @returns {HTMLElement} The element that currently has the focus
|
|
8044
8105
|
**/
|
|
8045
|
-
var
|
|
8106
|
+
var _getActiveElement = function getActiveElement(el) {
|
|
8046
8107
|
var activeElement = el.activeElement;
|
|
8047
8108
|
if (!activeElement) {
|
|
8048
8109
|
return;
|
|
8049
8110
|
}
|
|
8050
8111
|
if (activeElement.shadowRoot && activeElement.shadowRoot.activeElement !== null) {
|
|
8051
|
-
return
|
|
8112
|
+
return _getActiveElement(activeElement.shadowRoot);
|
|
8052
8113
|
}
|
|
8053
8114
|
return activeElement;
|
|
8054
8115
|
};
|
|
8055
|
-
var
|
|
8116
|
+
var _tryFocus = function tryFocus(node) {
|
|
8056
8117
|
if (node === false) {
|
|
8057
8118
|
return;
|
|
8058
8119
|
}
|
|
8059
|
-
if (node ===
|
|
8120
|
+
if (node === _getActiveElement(document)) {
|
|
8060
8121
|
return;
|
|
8061
8122
|
}
|
|
8062
8123
|
if (!node || !node.focus) {
|
|
8063
|
-
|
|
8124
|
+
_tryFocus(getInitialFocusNode());
|
|
8064
8125
|
return;
|
|
8065
8126
|
}
|
|
8066
8127
|
node.focus({
|
|
@@ -8073,7 +8134,9 @@ var createFocusTrap = function createFocusTrap(elements, userOptions) {
|
|
|
8073
8134
|
}
|
|
8074
8135
|
};
|
|
8075
8136
|
var getReturnFocusNode = function getReturnFocusNode(previousActiveElement) {
|
|
8076
|
-
var node = getNodeForOption('setReturnFocus',
|
|
8137
|
+
var node = getNodeForOption('setReturnFocus', {
|
|
8138
|
+
params: [previousActiveElement]
|
|
8139
|
+
});
|
|
8077
8140
|
return node ? node : node === false ? false : previousActiveElement;
|
|
8078
8141
|
};
|
|
8079
8142
|
|
|
@@ -8088,11 +8151,11 @@ var createFocusTrap = function createFocusTrap(elements, userOptions) {
|
|
|
8088
8151
|
* @returns {Node|undefined} The next node, or `undefined` if a next node couldn't be
|
|
8089
8152
|
* determined given the current state of the trap.
|
|
8090
8153
|
*/
|
|
8091
|
-
var findNextNavNode = function findNextNavNode(
|
|
8092
|
-
var target =
|
|
8093
|
-
event =
|
|
8094
|
-
|
|
8095
|
-
isBackward =
|
|
8154
|
+
var findNextNavNode = function findNextNavNode(_ref3) {
|
|
8155
|
+
var target = _ref3.target,
|
|
8156
|
+
event = _ref3.event,
|
|
8157
|
+
_ref3$isBackward = _ref3.isBackward,
|
|
8158
|
+
isBackward = _ref3$isBackward === undefined ? false : _ref3$isBackward;
|
|
8096
8159
|
target = target || getActualTarget(event);
|
|
8097
8160
|
updateTabbableNodes();
|
|
8098
8161
|
var destinationNode = null;
|
|
@@ -8116,8 +8179,8 @@ var createFocusTrap = function createFocusTrap(elements, userOptions) {
|
|
|
8116
8179
|
// REVERSE
|
|
8117
8180
|
|
|
8118
8181
|
// is the target the first tabbable node in a group?
|
|
8119
|
-
var startOfGroupIndex =
|
|
8120
|
-
var firstTabbableNode =
|
|
8182
|
+
var startOfGroupIndex = state.tabbableGroups.findIndex(function (_ref4) {
|
|
8183
|
+
var firstTabbableNode = _ref4.firstTabbableNode;
|
|
8121
8184
|
return target === firstTabbableNode;
|
|
8122
8185
|
});
|
|
8123
8186
|
if (startOfGroupIndex < 0 && (containerGroup.container === target || isFocusable(target, config.tabbableOptions) && !isTabbable(target, config.tabbableOptions) && !containerGroup.nextTabbableNode(target, false))) {
|
|
@@ -8145,8 +8208,8 @@ var createFocusTrap = function createFocusTrap(elements, userOptions) {
|
|
|
8145
8208
|
// FORWARD
|
|
8146
8209
|
|
|
8147
8210
|
// is the target the last tabbable node in a group?
|
|
8148
|
-
var lastOfGroupIndex =
|
|
8149
|
-
var lastTabbableNode =
|
|
8211
|
+
var lastOfGroupIndex = state.tabbableGroups.findIndex(function (_ref5) {
|
|
8212
|
+
var lastTabbableNode = _ref5.lastTabbableNode;
|
|
8150
8213
|
return target === lastTabbableNode;
|
|
8151
8214
|
});
|
|
8152
8215
|
if (lastOfGroupIndex < 0 && (containerGroup.container === target || isFocusable(target, config.tabbableOptions) && !isTabbable(target, config.tabbableOptions) && !containerGroup.nextTabbableNode(target))) {
|
|
@@ -8304,9 +8367,9 @@ var createFocusTrap = function createFocusTrap(elements, userOptions) {
|
|
|
8304
8367
|
});
|
|
8305
8368
|
}
|
|
8306
8369
|
if (nextNode) {
|
|
8307
|
-
|
|
8370
|
+
_tryFocus(nextNode);
|
|
8308
8371
|
} else {
|
|
8309
|
-
|
|
8372
|
+
_tryFocus(state.mostRecentlyFocusedNode || getInitialFocusNode());
|
|
8310
8373
|
}
|
|
8311
8374
|
}
|
|
8312
8375
|
state.recentNavEvent = undefined; // clear
|
|
@@ -8331,19 +8394,21 @@ var createFocusTrap = function createFocusTrap(elements, userOptions) {
|
|
|
8331
8394
|
// to where it normally would
|
|
8332
8395
|
event.preventDefault();
|
|
8333
8396
|
}
|
|
8334
|
-
|
|
8397
|
+
_tryFocus(destinationNode);
|
|
8335
8398
|
}
|
|
8336
8399
|
// else, let the browser take care of [shift+]tab and move the focus
|
|
8337
8400
|
};
|
|
8401
|
+
var checkTabKey = function checkTabKey(event) {
|
|
8402
|
+
if (config.isKeyForward(event) || config.isKeyBackward(event)) {
|
|
8403
|
+
checkKeyNav(event, config.isKeyBackward(event));
|
|
8404
|
+
}
|
|
8405
|
+
};
|
|
8338
8406
|
|
|
8339
|
-
|
|
8407
|
+
// we use a different event phase for the Escape key to allow canceling the event and checking for this in escapeDeactivates
|
|
8408
|
+
var checkEscapeKey = function checkEscapeKey(event) {
|
|
8340
8409
|
if (isEscapeEvent(event) && valueOrHandler(config.escapeDeactivates, event) !== false) {
|
|
8341
8410
|
event.preventDefault();
|
|
8342
8411
|
trap.deactivate();
|
|
8343
|
-
return;
|
|
8344
|
-
}
|
|
8345
|
-
if (config.isKeyForward(event) || config.isKeyBackward(event)) {
|
|
8346
|
-
checkKeyNav(event, config.isKeyBackward(event));
|
|
8347
8412
|
}
|
|
8348
8413
|
};
|
|
8349
8414
|
var checkClick = function checkClick(e) {
|
|
@@ -8376,8 +8441,8 @@ var createFocusTrap = function createFocusTrap(elements, userOptions) {
|
|
|
8376
8441
|
// Delay ensures that the focused element doesn't capture the event
|
|
8377
8442
|
// that caused the focus trap activation.
|
|
8378
8443
|
state.delayInitialFocusTimer = config.delayInitialFocus ? delay(function () {
|
|
8379
|
-
|
|
8380
|
-
}) :
|
|
8444
|
+
_tryFocus(getInitialFocusNode());
|
|
8445
|
+
}) : _tryFocus(getInitialFocusNode());
|
|
8381
8446
|
doc.addEventListener('focusin', checkFocusIn, true);
|
|
8382
8447
|
doc.addEventListener('mousedown', checkPointerDown, {
|
|
8383
8448
|
capture: true,
|
|
@@ -8391,10 +8456,11 @@ var createFocusTrap = function createFocusTrap(elements, userOptions) {
|
|
|
8391
8456
|
capture: true,
|
|
8392
8457
|
passive: false
|
|
8393
8458
|
});
|
|
8394
|
-
doc.addEventListener('keydown',
|
|
8459
|
+
doc.addEventListener('keydown', checkTabKey, {
|
|
8395
8460
|
capture: true,
|
|
8396
8461
|
passive: false
|
|
8397
8462
|
});
|
|
8463
|
+
doc.addEventListener('keydown', checkEscapeKey);
|
|
8398
8464
|
return trap;
|
|
8399
8465
|
};
|
|
8400
8466
|
var removeListeners = function removeListeners() {
|
|
@@ -8405,7 +8471,8 @@ var createFocusTrap = function createFocusTrap(elements, userOptions) {
|
|
|
8405
8471
|
doc.removeEventListener('mousedown', checkPointerDown, true);
|
|
8406
8472
|
doc.removeEventListener('touchstart', checkPointerDown, true);
|
|
8407
8473
|
doc.removeEventListener('click', checkClick, true);
|
|
8408
|
-
doc.removeEventListener('keydown',
|
|
8474
|
+
doc.removeEventListener('keydown', checkTabKey, true);
|
|
8475
|
+
doc.removeEventListener('keydown', checkEscapeKey);
|
|
8409
8476
|
return trap;
|
|
8410
8477
|
};
|
|
8411
8478
|
|
|
@@ -8424,7 +8491,7 @@ var createFocusTrap = function createFocusTrap(elements, userOptions) {
|
|
|
8424
8491
|
// If the currently focused is removed then browsers will move focus to the
|
|
8425
8492
|
// <body> element. If this happens, try to move focus back into the trap.
|
|
8426
8493
|
if (isFocusedNodeRemoved) {
|
|
8427
|
-
|
|
8494
|
+
_tryFocus(getInitialFocusNode());
|
|
8428
8495
|
}
|
|
8429
8496
|
};
|
|
8430
8497
|
|
|
@@ -8470,14 +8537,14 @@ var createFocusTrap = function createFocusTrap(elements, userOptions) {
|
|
|
8470
8537
|
state.active = true;
|
|
8471
8538
|
state.paused = false;
|
|
8472
8539
|
state.nodeFocusedBeforeActivation = doc.activeElement;
|
|
8473
|
-
onActivate === null || onActivate ===
|
|
8540
|
+
onActivate === null || onActivate === undefined || onActivate();
|
|
8474
8541
|
var finishActivation = function finishActivation() {
|
|
8475
8542
|
if (checkCanFocusTrap) {
|
|
8476
8543
|
updateTabbableNodes();
|
|
8477
8544
|
}
|
|
8478
8545
|
addListeners();
|
|
8479
8546
|
updateObservedNodes();
|
|
8480
|
-
onPostActivate === null || onPostActivate ===
|
|
8547
|
+
onPostActivate === null || onPostActivate === undefined || onPostActivate();
|
|
8481
8548
|
};
|
|
8482
8549
|
if (checkCanFocusTrap) {
|
|
8483
8550
|
checkCanFocusTrap(state.containers.concat()).then(finishActivation, finishActivation);
|
|
@@ -8506,13 +8573,13 @@ var createFocusTrap = function createFocusTrap(elements, userOptions) {
|
|
|
8506
8573
|
var onPostDeactivate = getOption(options, 'onPostDeactivate');
|
|
8507
8574
|
var checkCanReturnFocus = getOption(options, 'checkCanReturnFocus');
|
|
8508
8575
|
var returnFocus = getOption(options, 'returnFocus', 'returnFocusOnDeactivate');
|
|
8509
|
-
onDeactivate === null || onDeactivate ===
|
|
8576
|
+
onDeactivate === null || onDeactivate === undefined || onDeactivate();
|
|
8510
8577
|
var finishDeactivation = function finishDeactivation() {
|
|
8511
8578
|
delay(function () {
|
|
8512
8579
|
if (returnFocus) {
|
|
8513
|
-
|
|
8580
|
+
_tryFocus(getReturnFocusNode(state.nodeFocusedBeforeActivation));
|
|
8514
8581
|
}
|
|
8515
|
-
onPostDeactivate === null || onPostDeactivate ===
|
|
8582
|
+
onPostDeactivate === null || onPostDeactivate === undefined || onPostDeactivate();
|
|
8516
8583
|
});
|
|
8517
8584
|
};
|
|
8518
8585
|
if (returnFocus && checkCanReturnFocus) {
|
|
@@ -8523,31 +8590,21 @@ var createFocusTrap = function createFocusTrap(elements, userOptions) {
|
|
|
8523
8590
|
return this;
|
|
8524
8591
|
},
|
|
8525
8592
|
pause: function pause(pauseOptions) {
|
|
8526
|
-
if (
|
|
8593
|
+
if (!state.active) {
|
|
8527
8594
|
return this;
|
|
8528
8595
|
}
|
|
8529
|
-
|
|
8530
|
-
|
|
8531
|
-
state.paused = true;
|
|
8532
|
-
onPause === null || onPause === void 0 || onPause();
|
|
8533
|
-
removeListeners();
|
|
8534
|
-
updateObservedNodes();
|
|
8535
|
-
onPostPause === null || onPostPause === void 0 || onPostPause();
|
|
8536
|
-
return this;
|
|
8596
|
+
state.manuallyPaused = true;
|
|
8597
|
+
return this._setPausedState(true, pauseOptions);
|
|
8537
8598
|
},
|
|
8538
8599
|
unpause: function unpause(unpauseOptions) {
|
|
8539
|
-
if (!state.
|
|
8600
|
+
if (!state.active) {
|
|
8540
8601
|
return this;
|
|
8541
8602
|
}
|
|
8542
|
-
|
|
8543
|
-
|
|
8544
|
-
|
|
8545
|
-
|
|
8546
|
-
|
|
8547
|
-
addListeners();
|
|
8548
|
-
updateObservedNodes();
|
|
8549
|
-
onPostUnpause === null || onPostUnpause === void 0 || onPostUnpause();
|
|
8550
|
-
return this;
|
|
8603
|
+
state.manuallyPaused = false;
|
|
8604
|
+
if (trapStack[trapStack.length - 1] !== this) {
|
|
8605
|
+
return this;
|
|
8606
|
+
}
|
|
8607
|
+
return this._setPausedState(false, unpauseOptions);
|
|
8551
8608
|
},
|
|
8552
8609
|
updateContainerElements: function updateContainerElements(containerElements) {
|
|
8553
8610
|
var elementsAsArray = [].concat(containerElements).filter(Boolean);
|
|
@@ -8561,6 +8618,38 @@ var createFocusTrap = function createFocusTrap(elements, userOptions) {
|
|
|
8561
8618
|
return this;
|
|
8562
8619
|
}
|
|
8563
8620
|
};
|
|
8621
|
+
Object.defineProperties(trap, {
|
|
8622
|
+
_isManuallyPaused: {
|
|
8623
|
+
value: function value() {
|
|
8624
|
+
return state.manuallyPaused;
|
|
8625
|
+
}
|
|
8626
|
+
},
|
|
8627
|
+
_setPausedState: {
|
|
8628
|
+
value: function value(paused, options) {
|
|
8629
|
+
if (state.paused === paused) {
|
|
8630
|
+
return this;
|
|
8631
|
+
}
|
|
8632
|
+
state.paused = paused;
|
|
8633
|
+
if (paused) {
|
|
8634
|
+
var onPause = getOption(options, 'onPause');
|
|
8635
|
+
var onPostPause = getOption(options, 'onPostPause');
|
|
8636
|
+
onPause === null || onPause === undefined || onPause();
|
|
8637
|
+
removeListeners();
|
|
8638
|
+
updateObservedNodes();
|
|
8639
|
+
onPostPause === null || onPostPause === undefined || onPostPause();
|
|
8640
|
+
} else {
|
|
8641
|
+
var onUnpause = getOption(options, 'onUnpause');
|
|
8642
|
+
var onPostUnpause = getOption(options, 'onPostUnpause');
|
|
8643
|
+
onUnpause === null || onUnpause === undefined || onUnpause();
|
|
8644
|
+
updateTabbableNodes();
|
|
8645
|
+
addListeners();
|
|
8646
|
+
updateObservedNodes();
|
|
8647
|
+
onPostUnpause === null || onPostUnpause === undefined || onPostUnpause();
|
|
8648
|
+
}
|
|
8649
|
+
return this;
|
|
8650
|
+
}
|
|
8651
|
+
}
|
|
8652
|
+
});
|
|
8564
8653
|
|
|
8565
8654
|
// initialize container elements
|
|
8566
8655
|
trap.updateContainerElements(elements);
|
|
@@ -10407,6 +10496,7 @@ const CatInput = class {
|
|
|
10407
10496
|
this._id = `cat-input-${nextUniqueId$7++}`;
|
|
10408
10497
|
this.hasSlottedLabel = false;
|
|
10409
10498
|
this.hasSlottedHint = false;
|
|
10499
|
+
this.hasSlottedCounter = false;
|
|
10410
10500
|
this.isPasswordShown = false;
|
|
10411
10501
|
this.errorMap = undefined;
|
|
10412
10502
|
this.requiredMarker = 'optional';
|
|
@@ -10448,6 +10538,7 @@ const CatInput = class {
|
|
|
10448
10538
|
componentWillRender() {
|
|
10449
10539
|
this.hasSlottedLabel = !!this.hostElement.querySelector('[slot="label"]');
|
|
10450
10540
|
this.hasSlottedHint = !!this.hostElement.querySelector('[slot="hint"]');
|
|
10541
|
+
this.hasSlottedCounter = !!this.hostElement.querySelector('[slot="counter"]');
|
|
10451
10542
|
}
|
|
10452
10543
|
/**
|
|
10453
10544
|
* Programmatically move focus to the input. Use this method instead of
|
|
@@ -10500,19 +10591,19 @@ const CatInput = class {
|
|
|
10500
10591
|
}
|
|
10501
10592
|
render() {
|
|
10502
10593
|
this.hostElement.tabIndex = Number(this.hostElement.getAttribute('tabindex')) || 0;
|
|
10503
|
-
return (h("div", { key: '
|
|
10594
|
+
return (h("div", { key: '3d28dff29d5ced59f609ce9fcf6c2b2a14cfdda7', class: {
|
|
10504
10595
|
'input-field': true,
|
|
10505
10596
|
'input-horizontal': this.horizontal
|
|
10506
|
-
} }, h("div", { key: '
|
|
10597
|
+
} }, h("div", { key: '41399390b76c6a2e96dc3df48eede8ea2bcc4698', class: { 'label-container': true, hidden: this.labelHidden } }, (this.hasSlottedLabel || this.label) && (h("label", { key: '68bb767790072eb2728d680d448e1ee80e641013', htmlFor: this.id, part: "label" }, h("span", { key: '04c217ff1f227a1fb82b9a52b284bbd67f8d89dd', class: "label-wrapper" }, (this.hasSlottedLabel && h("slot", { key: '0c462827456af3b83935e569fac4fb45459c2edc', name: "label" })) || this.label, h("div", { key: '9415db27af950dc50efac0c60bdc47aa5efc8c97', class: "label-metadata" }, !this.required && (this.requiredMarker ?? 'optional').startsWith('optional') && (h("span", { key: 'fc45ea569ef7c9eec048bae75a8b5127beafcc09', class: "label-optional", "aria-hidden": "true" }, "(", catI18nRegistry.t('input.optional'), ")")), this.required && this.requiredMarker?.startsWith('required') && (h("span", { key: '20f36a7a3e2c042fa4f802ea3f71cb20f60188b3', class: "label-optional", "aria-hidden": "true" }, "(", catI18nRegistry.t('input.required'), ")")), (this.maxLength || this.hasSlottedCounter) && (h("div", { key: '58338cb0be0db04c6030e9f295428079ba2c7316', class: "label-character-count", "aria-hidden": "true" }, this.hasSlottedCounter ? (h("slot", { name: "counter" })) : (`${this.value?.length ?? 0}/${this.maxLength}`)))))))), h("div", { key: '5ed2b9c0c812c65d2e7d77d02f61cb88f33567e1', class: "input-container" }, h("div", { key: '9b73f259436d1f7d75f2efcaec3959759631f579', class: "input-outer-wrapper" }, h("div", { key: '04ba158193111283c31ea6e8d3d4e34e0dafe995', class: {
|
|
10507
10598
|
'input-wrapper': true,
|
|
10508
10599
|
'input-round': this.round,
|
|
10509
10600
|
'input-readonly': this.readonly,
|
|
10510
10601
|
'input-disabled': this.disabled,
|
|
10511
10602
|
'input-invalid': this.invalid
|
|
10512
|
-
}, onClick: () => this.input.focus() }, this.textPrefix && (h("span", { key: '
|
|
10603
|
+
}, onClick: () => this.input.focus() }, this.textPrefix && (h("span", { key: '6e834d91bca7660e24f7f917034db92a530d3901', class: "text-prefix", part: "prefix" }, this.textPrefix)), this.icon && !this.iconRight && (h("cat-icon", { key: '606625d78126b10f1efbdeec78d2339d9a66cf04', icon: this.icon, class: "icon-prefix", size: "l", onClick: () => this.doFocus() })), h("div", { key: '28776786dd55f04d60c985ed7891d85c0e4c1f7b', class: "input-inner-wrapper" }, h("input", { key: '7ee17b1603ed56cd4b98561c9a7f5426edfcb9e8', ...this.nativeAttributes, part: "input", ref: el => (this.input = el), id: this.id, class: {
|
|
10513
10604
|
'has-clearable': this.clearable && !this.disabled && !this.readonly && !!this.value,
|
|
10514
10605
|
'has-toggle-password': this.togglePassword && !this.disabled && !this.readonly && !!this.value
|
|
10515
|
-
}, 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.isPasswordShown ? 'text' : this.type, value: this.value, onInput: this.onInput.bind(this), onFocus: this.onFocus.bind(this), onBlur: this.onBlur.bind(this), "aria-invalid": this.invalid ? 'true' : undefined, "aria-describedby": this.hasHint ? this.id + '-hint' : undefined }), this.clearable && !this.disabled && !this.readonly && this.value && (h("cat-button", { key: '
|
|
10606
|
+
}, 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.isPasswordShown ? 'text' : this.type, value: this.value, onInput: this.onInput.bind(this), onFocus: this.onFocus.bind(this), onBlur: this.onBlur.bind(this), "aria-invalid": this.invalid ? 'true' : undefined, "aria-describedby": this.hasHint ? this.id + '-hint' : undefined }), this.clearable && !this.disabled && !this.readonly && this.value && (h("cat-button", { key: '5195866111feaf77f8ae6b9272443c7f2e6f6c9b', class: "clearable", icon: "$cat:input-close", "icon-only": "true", size: "s", variant: "text", "a11y-label": catI18nRegistry.t('input.clear'), onClick: this.clear.bind(this), "data-dropdown-no-close": true })), this.togglePassword && !this.disabled && !this.readonly && this.value && (h("cat-button", { key: 'ffbd5c49957d02e672d1da2710fb5a2698fe34a5', class: "toggle-password", icon: this.isPasswordShown ? '$cat:input-password-hide' : '$cat:input-password-show', "icon-only": "true", size: "s", variant: "text", "a11y-label": catI18nRegistry.t(this.isPasswordShown ? 'input.hidePassword' : 'input.showPassword'), onClick: this.doTogglePassword.bind(this) }))), this.loading && h("cat-spinner", { key: '19e83c45128e1110c4404fb266b97d9a0b23ea75', size: "m", class: "icon-loading" }), !this.invalid && this.icon && this.iconRight && (h("cat-icon", { key: '2363be86adba00d3748a2b4e72d968027e3cbc03', icon: this.icon, class: "icon-suffix", size: "l", onClick: () => this.doFocus() })), this.invalid && (h("cat-icon", { key: '158ae6c58f520b87023e534239550cd963c6c3f2', icon: "$cat:input-error", class: "icon-suffix cat-text-danger", size: "l" })), this.textSuffix && (h("span", { key: '8d0148452fe5b0184ed04fbaa7e84d805ef8648f', class: "text-suffix", part: "suffix" }, this.textSuffix))), h("slot", { key: 'cc46bb14d556c4144c28b8901e0aac7ff2c6908e', name: "addon" })), this.hasHint && (h(CatFormHint, { key: '0de0feb24f62246485c054bb83237d5610c89a21', id: this.id, hint: this.hint, slottedHint: this.hasSlottedHint && h("slot", { name: "hint" }), errorMap: this.errorMap })))));
|
|
10516
10607
|
}
|
|
10517
10608
|
get hasHint() {
|
|
10518
10609
|
return !!this.hint || !!this.hasSlottedHint || this.invalid;
|
|
@@ -13441,9 +13532,11 @@ const CatTextarea = class {
|
|
|
13441
13532
|
this._id = `cat-textarea-${nextUniqueId$2++}`;
|
|
13442
13533
|
this.hasSlottedLabel = false;
|
|
13443
13534
|
this.hasSlottedHint = false;
|
|
13535
|
+
this.hasSlottedCounter = false;
|
|
13444
13536
|
this.errorMap = undefined;
|
|
13445
13537
|
this.requiredMarker = 'optional';
|
|
13446
13538
|
this.horizontal = false;
|
|
13539
|
+
this.autoComplete = undefined;
|
|
13447
13540
|
this.disabled = false;
|
|
13448
13541
|
this.hint = undefined;
|
|
13449
13542
|
this.identifier = undefined;
|
|
@@ -13470,6 +13563,7 @@ const CatTextarea = class {
|
|
|
13470
13563
|
componentWillRender() {
|
|
13471
13564
|
this.hasSlottedLabel = !!this.hostElement.querySelector('[slot="label"]');
|
|
13472
13565
|
this.hasSlottedHint = !!this.hostElement.querySelector('[slot="hint"]');
|
|
13566
|
+
this.hasSlottedCounter = !!this.hostElement.querySelector('[slot="counter"]');
|
|
13473
13567
|
}
|
|
13474
13568
|
componentDidLoad() {
|
|
13475
13569
|
n(this.textarea);
|
|
@@ -13513,15 +13607,15 @@ const CatTextarea = class {
|
|
|
13513
13607
|
}
|
|
13514
13608
|
render() {
|
|
13515
13609
|
this.hostElement.tabIndex = Number(this.hostElement.getAttribute('tabindex')) || 0;
|
|
13516
|
-
return (h(Host, { key: '
|
|
13610
|
+
return (h(Host, { key: 'c4cab207b93c4c13de6cce9f1558b2d4fce925ef' }, h("div", { key: '179e2a2dfe8740447dc6ff9824e492ee02e4d47a', class: {
|
|
13517
13611
|
'textarea-field': true,
|
|
13518
13612
|
'textarea-horizontal': this.horizontal
|
|
13519
|
-
} }, h("div", { key: '
|
|
13613
|
+
} }, h("div", { key: '5ecc1e393465659830aba909126564e860143648', class: { 'label-container': true, hidden: this.labelHidden } }, (this.hasSlottedLabel || this.label) && (h("label", { key: '156179fd03e76824cf7ddf55d4570f717a5ec96f', htmlFor: this.id, part: "label" }, h("span", { key: '466b8ee054f2fa75c40b6d93dcaf6e308f499577', class: "label-wrapper" }, (this.hasSlottedLabel && h("slot", { key: 'ca380dd71b02626140596777c05baa1d5f2454f1', name: "label" })) || this.label, h("div", { key: '72a97643fbbfc3335ca46aed185228703ba15f1c', class: "label-metadata" }, !this.required && (this.requiredMarker ?? 'optional').startsWith('optional') && (h("span", { key: '2daf2d71efdadc2c840838e9f3b55aff31860c57', class: "label-optional", "aria-hidden": "true" }, "(", catI18nRegistry.t('input.optional'), ")")), this.required && this.requiredMarker?.startsWith('required') && (h("span", { key: '3d26ff6a20935bb3895df9a35ee3ed52bae4892d', class: "label-optional", "aria-hidden": "true" }, "(", catI18nRegistry.t('input.required'), ")")), (this.maxLength || this.hasSlottedCounter) && (h("div", { key: '9c2940f48e9ee33b48f0fdc800fb6c9b03e74cd3', class: "label-character-count", "aria-hidden": "true" }, this.hasSlottedCounter ? (h("slot", { name: "counter" })) : (`${this.value?.length ?? 0}/${this.maxLength}`)))))))), h("div", { key: 'fb1fc6a8626ae38042ee7d58e309cb8552177a5a', class: "textarea-container" }, h("div", { key: 'c2bc69007aa78f3f7473d7d00d5edd096e034d82', class: {
|
|
13520
13614
|
'textarea-wrapper': true,
|
|
13521
13615
|
'textarea-readonly': this.readonly,
|
|
13522
13616
|
'textarea-disabled': this.disabled,
|
|
13523
13617
|
'textarea-invalid': this.invalid
|
|
13524
|
-
} }, h("textarea", { key: '
|
|
13618
|
+
} }, h("textarea", { key: '33186afce9ab71467701ee679c7fd25ab15e48c0', ...this.nativeAttributes, part: "textarea", ref: el => (this.textarea = el), id: this.id, disabled: this.disabled, autocomplete: this.autoComplete, maxlength: this.maxLength, minlength: this.minLength, name: this.name, placeholder: this.placeholder, readonly: this.readonly, required: this.required, rows: this.rows, value: this.value, onInput: this.onInput.bind(this), onFocus: this.onFocus.bind(this), onBlur: this.onBlur.bind(this), "aria-invalid": this.invalid ? 'true' : undefined, "aria-describedby": this.hasHint ? this.id + '-hint' : undefined }), this.invalid && (h("cat-icon", { key: '19da7431db208bd34032cd22d4112b8c9b2c786f', icon: "$cat:input-error", class: "icon-suffix cat-text-danger", size: "l", onClick: () => this.textarea.focus() }))), this.hasHint && (h(CatFormHint, { key: '3f4bf8b4ac56e28ba482ef5e3883a17c3336f2b5', id: this.id, hint: this.hint, slottedHint: this.hasSlottedHint && h("slot", { name: "hint" }), errorMap: this.errorMap }))))));
|
|
13525
13619
|
}
|
|
13526
13620
|
get hasHint() {
|
|
13527
13621
|
return !!this.hint || !!this.hasSlottedHint || this.invalid;
|
|
@@ -13632,7 +13726,7 @@ const CatTime = class {
|
|
|
13632
13726
|
this.valueChangedBySelection = false;
|
|
13633
13727
|
this.requiredMarker = 'optional';
|
|
13634
13728
|
this.horizontal = false;
|
|
13635
|
-
this.autoComplete =
|
|
13729
|
+
this.autoComplete = 'off';
|
|
13636
13730
|
this.clearable = false;
|
|
13637
13731
|
this.disabled = false;
|
|
13638
13732
|
this.hint = undefined;
|
|
@@ -13758,14 +13852,14 @@ const CatTime = class {
|
|
|
13758
13852
|
}
|
|
13759
13853
|
render() {
|
|
13760
13854
|
this.hostElement.tabIndex = Number(this.hostElement.getAttribute('tabindex')) || 0;
|
|
13761
|
-
return (h(Host, { key: '
|
|
13855
|
+
return (h(Host, { key: '55ddaea80f34a762b7f3b97145f3fc23678764df' }, h("cat-input", { key: 'b9c72fafc50c6f123478f426d771ae25fa77d7d9', class: "cat-time-input", ref: el => (this.input = el), requiredMarker: this.requiredMarker, horizontal: this.horizontal, autoComplete: this.autoComplete, clearable: this.clearable, disabled: this.disabled, hint: this.hint, icon: this.icon, iconRight: this.iconRight, identifier: this.identifier, label: this.label, labelHidden: this.labelHidden, name: this.name, placeholder: this.placeholder, textPrefix: this.textPrefix, textSuffix: this.textSuffix, readonly: this.readonly, required: this.required, value: this.format(this.selectionTime, false), errors: this.errors, errorUpdate: this.errorUpdate, nativeAttributes: this.nativeAttributes, onCatFocus: e => this.catFocus.emit(e.detail), onCatBlur: e => this.onInputBlur(e.detail) }, h("span", { key: 'fff1bf4b55421e1d3d0a59c6526e2a1489531c73', slot: "label" }, this.hasSlottedLabel && h("slot", { key: '3bf7db213bf73ed33f47b78df88445654feef6f1', name: "label" }), !this.hasSlottedLabel && this.label, h("span", { key: 'cd3bc1b7be142e85106f03ab84f664279f129c02', class: "label-aria" }, " (HH:mm)")), h("div", { key: 'c56add3522077567621147d80a327c7acfa93110', slot: "addon", class: "cat-time-addon" }, this.locale.timeFormat === '12' && (h("cat-button", { key: 'e895941581bd1d6a67eb3f384d6cdf4cd6663ca2', class: "cat-time-format", disabled: this.disabled || this.readonly, onCatClick: () => this.toggleAm() }, this.isAm ? 'AM' : 'PM')), h("cat-dropdown", { key: 'b44d49f1d06c3a78342f60b873ad57d613fe38c5', slot: "addon", placement: this.placement }, h("cat-button", { key: '95789ba8b632e442a41059c60a8394efa61a6e54', slot: "trigger", class: "cat-time-toggle", disabled: this.disabled || this.readonly, icon: "$cat:timepicker-clock", iconOnly: true, a11yLabel: this.selectionTime ? `${this.locale.change}, ${this.format(this.selectionTime)}` : this.locale.choose }), h("nav", { key: 'fd16e5301bdde5fa3f3ac929380d9f8ca7cef75b', slot: "content", class: "cat-nav" }, h("ul", { key: '9107c10a9533ef4cef0c0718cba17e097a7d54bd' }, this.timeArray().map(time => {
|
|
13762
13856
|
const isoTime = formatIso(time);
|
|
13763
13857
|
const disabled = isBefore(time, this.min ?? null) || isAfter(time, this.max ?? null);
|
|
13764
13858
|
return (h("li", null, h("cat-button", { class: {
|
|
13765
13859
|
'cat-nav-item': true,
|
|
13766
13860
|
'time-disabled': disabled
|
|
13767
13861
|
}, disabled: disabled, active: isoTime === this.value, color: isoTime === this.value ? 'primary' : 'secondary', variant: isoTime === this.value ? 'filled' : 'outlined', onCatClick: () => this.select(time), "data-time": isoTime }, this.format(time))));
|
|
13768
|
-
}))))), this.hasSlottedHint && (h("span", { key: '
|
|
13862
|
+
}))))), this.hasSlottedHint && (h("span", { key: '55b0ac7a0d4aa7f743d23a3f0f8461b4f1e44781', slot: "hint" }, h("slot", { key: '8f05bb69ab686061bebad8cc6a1364e0bea5267a', name: "hint" }))))));
|
|
13769
13863
|
}
|
|
13770
13864
|
timeArray() {
|
|
13771
13865
|
const result = [];
|
|
@@ -13925,7 +14019,7 @@ CatToggle.style = CatToggleStyle0;
|
|
|
13925
14019
|
|
|
13926
14020
|
const isTouchDevice = 'ontouchstart' in window || navigator.maxTouchPoints > 0;
|
|
13927
14021
|
|
|
13928
|
-
const catTooltipCss = ":host{display:contents}:host([hidden]){display:none}.tooltip{--cat-font-color-head:var(--cat-font-color-tooltip, 255, 255, 255);--cat-font-color-body:var(--cat-font-color-tooltip, 255, 255, 255);position:fixed;width:max-content;top:0;left:0;box-sizing:border-box;
|
|
14022
|
+
const catTooltipCss = ":host{display:contents}:host([hidden]){display:none}.tooltip{--cat-font-color-head:var(--cat-font-color-tooltip, 255, 255, 255);--cat-font-color-body:var(--cat-font-color-tooltip, 255, 255, 255);position:fixed;width:max-content;top:0;left:0;box-sizing:border-box;background-color:rgb(var(--cat-bg-tooltip, 0, 0, 0));border-radius:var(--cat-border-radius-m, 0.25rem);color:rgb(var(--cat-font-color-tooltip, 255, 255, 255));transition:opacity 250ms linear, visibility 250ms linear;visibility:hidden;opacity:0;box-shadow:rgba(0, 0, 0, 0.08) 0 1px 8px 0;z-index:calc(var(--cat-z-index, 1000) + 200);max-width:min(100vw - 0.5rem, 20rem)}.tooltip-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}.tooltip-show{opacity:1;visibility:visible}.tooltip p{margin:0}.tooltip-round{border-radius:10rem}.tooltip-s{padding:0.25rem 0.375rem;font-size:0.75rem;line-height:1rem;font-weight:500}.tooltip-s.tooltip-round{padding-left:0.5rem;padding-right:0.5rem}.tooltip-m{padding:0.375rem 0.5rem;font-size:0.875rem;line-height:1.125rem;font-weight:500}.tooltip-m.tooltip-round{padding-left:0.75rem;padding-right:0.75rem}.tooltip-l{padding:0.5rem 0.75rem;font-size:0.9375rem;line-height:1.25rem;font-weight:500}.tooltip-l.tooltip-round{padding-left:1rem;padding-right:1rem}";
|
|
13929
14023
|
const CatTooltipStyle0 = catTooltipCss;
|
|
13930
14024
|
|
|
13931
14025
|
let nextUniqueId = 0;
|