@nanoporetech-digital/components 4.9.4 → 5.0.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/CHANGELOG.md +51 -0
- package/dist/cjs/drag-777bd8dd.js +74 -0
- package/dist/cjs/drag-777bd8dd.js.map +1 -0
- package/dist/cjs/{form-control-2e900f54.js → form-control-443e90bf.js} +2 -3
- package/dist/cjs/form-control-443e90bf.js.map +1 -0
- package/dist/cjs/index-71f899a7.js +10 -2
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/nano-components.cjs.js +1 -1
- package/dist/cjs/nano-global-nav-user-profile_3.cjs.entry.js +6 -6
- package/dist/cjs/nano-global-nav-user-profile_3.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-grid-item.cjs.entry.js +29 -0
- package/dist/cjs/nano-grid-item.cjs.entry.js.map +1 -0
- package/dist/cjs/nano-grid_2.cjs.entry.js +436 -0
- package/dist/cjs/nano-grid_2.cjs.entry.js.map +1 -0
- package/dist/cjs/nano-hero.cjs.entry.js +4 -10
- package/dist/cjs/nano-hero.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-icon-button_2.cjs.entry.js +40 -3
- package/dist/cjs/nano-icon-button_2.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-input.cjs.entry.js +2 -2
- package/dist/cjs/nano-input.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-range.cjs.entry.js +1 -1
- package/dist/cjs/nano-range.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-sortable.cjs.entry.js +654 -0
- package/dist/cjs/nano-sortable.cjs.entry.js.map +1 -0
- package/dist/cjs/nano-split-pane.cjs.entry.js +30 -45
- package/dist/cjs/nano-split-pane.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-tab-group.cjs.entry.js +39 -43
- package/dist/cjs/nano-tab-group.cjs.entry.js.map +1 -1
- package/dist/cjs/nano-tab.cjs.entry.js +3 -3
- package/dist/cjs/nano-tab.cjs.entry.js.map +1 -1
- package/dist/cjs/{nano-table-54a4ba34.js → nano-table-11052a34.js} +52 -172
- package/dist/cjs/nano-table-11052a34.js.map +1 -0
- package/dist/cjs/nano-table.cjs.entry.js +1 -1
- package/dist/cjs/{table.worker-20ed37a5.js → table.worker-83433a8b.js} +3 -3
- package/dist/cjs/table.worker-83433a8b.js.map +1 -0
- package/dist/cjs/{table.worker-f820b411.js → table.worker-bd51e29f.js} +1 -1
- package/dist/collection/collection-manifest.json +1 -0
- package/dist/collection/components/form-control/form-control.js +1 -2
- package/dist/collection/components/form-control/form-control.js.map +1 -1
- package/dist/collection/components/grid/grid-item.js +11 -136
- package/dist/collection/components/grid/grid-item.js.map +1 -1
- package/dist/collection/components/grid/grid.css +9 -242
- package/dist/collection/components/grid/grid.js +248 -240
- package/dist/collection/components/grid/grid.js.map +1 -1
- package/dist/collection/components/hero/hero.css +42 -89
- package/dist/collection/components/hero/hero.js +4 -11
- package/dist/collection/components/hero/hero.js.map +1 -1
- package/dist/collection/components/icon-button/icon-button.css +18 -4
- package/dist/collection/components/icon-button/icon-button.js +83 -4
- package/dist/collection/components/icon-button/icon-button.js.map +1 -1
- package/dist/collection/components/input/input.css +8 -9
- package/dist/collection/components/nav-item/nav-item.js +4 -4
- package/dist/collection/components/nav-item/nav-item.js.map +1 -1
- package/dist/collection/components/range/range.css +0 -3
- package/dist/collection/components/select/select.css +8 -9
- package/dist/collection/components/sortable/sortable.css +28 -0
- package/dist/collection/components/sortable/sortable.js +1181 -0
- package/dist/collection/components/sortable/sortable.js.map +1 -0
- package/dist/collection/components/split-pane/split-pane.js +29 -27
- package/dist/collection/components/split-pane/split-pane.js.map +1 -1
- package/dist/collection/components/table/table-interface.js.map +1 -1
- package/dist/collection/components/table/table.css +18 -38
- package/dist/collection/components/table/table.header.js +3 -86
- package/dist/collection/components/table/table.header.js.map +1 -1
- package/dist/collection/components/table/table.js +27 -108
- package/dist/collection/components/table/table.js.map +1 -1
- package/dist/collection/components/table/table.row.js +7 -7
- package/dist/collection/components/table/table.row.js.map +1 -1
- package/dist/collection/components/table/table.store.js +1 -1
- package/dist/collection/components/table/table.store.js.map +1 -1
- package/dist/collection/components/table/table.worker.js +3 -3
- package/dist/collection/components/table/table.worker.js.map +1 -1
- package/dist/collection/components/tabs/tab-group.css +9 -13
- package/dist/collection/components/tabs/tab-group.js +39 -43
- package/dist/collection/components/tabs/tab-group.js.map +1 -1
- package/dist/collection/components/tabs/tab.css +53 -14
- package/dist/collection/components/tabs/tab.js +8 -2
- package/dist/collection/components/tabs/tab.js.map +1 -1
- package/dist/collection/utils/constructible-style.js +129 -0
- package/dist/collection/utils/constructible-style.js.map +1 -0
- package/dist/collection/utils/drag.js +52 -4
- package/dist/collection/utils/drag.js.map +1 -1
- package/dist/components/drag.js +72 -0
- package/dist/components/drag.js.map +1 -0
- package/dist/components/form-control.js +1 -2
- package/dist/components/form-control.js.map +1 -1
- package/dist/components/grid.js +268 -183
- package/dist/components/grid.js.map +1 -1
- package/dist/components/icon-button.js +45 -5
- package/dist/components/icon-button.js.map +1 -1
- package/dist/components/index.d.ts +1 -0
- package/dist/components/index.js +1 -0
- package/dist/components/index.js.map +1 -1
- package/dist/components/input.js +1 -1
- package/dist/components/input.js.map +1 -1
- package/dist/components/nano-grid-item.js +33 -1
- package/dist/components/nano-grid-item.js.map +1 -1
- package/dist/components/nano-hero.js +6 -19
- package/dist/components/nano-hero.js.map +1 -1
- package/dist/components/nano-range.js +1 -1
- package/dist/components/nano-range.js.map +1 -1
- package/dist/components/nano-sortable.d.ts +11 -0
- package/dist/components/nano-sortable.js +692 -0
- package/dist/components/nano-sortable.js.map +1 -0
- package/dist/components/nano-split-pane.js +30 -45
- package/dist/components/nano-split-pane.js.map +1 -1
- package/dist/components/nano-tab-group.js +40 -44
- package/dist/components/nano-tab-group.js.map +1 -1
- package/dist/components/nano-tab.js +3 -3
- package/dist/components/nano-tab.js.map +1 -1
- package/dist/components/nav-item.js +4 -4
- package/dist/components/nav-item.js.map +1 -1
- package/dist/components/select.js +1 -1
- package/dist/components/select.js.map +1 -1
- package/dist/components/table.js +52 -173
- package/dist/components/table.js.map +1 -1
- package/dist/components/table.worker.js +1 -1
- package/dist/esm/drag-1723a4cc.js +72 -0
- package/dist/esm/drag-1723a4cc.js.map +1 -0
- package/dist/esm/{form-control-269ba84f.js → form-control-e8739b2e.js} +2 -3
- package/dist/esm/form-control-e8739b2e.js.map +1 -0
- package/dist/esm/index-dad5627b.js +10 -2
- package/dist/esm/loader.js +1 -1
- package/dist/esm/nano-components.js +1 -1
- package/dist/esm/nano-global-nav-user-profile_3.entry.js +6 -6
- package/dist/esm/nano-global-nav-user-profile_3.entry.js.map +1 -1
- package/dist/esm/nano-grid-item.entry.js +25 -0
- package/dist/esm/nano-grid-item.entry.js.map +1 -0
- package/dist/esm/nano-grid_2.entry.js +431 -0
- package/dist/esm/nano-grid_2.entry.js.map +1 -0
- package/dist/esm/nano-hero.entry.js +4 -10
- package/dist/esm/nano-hero.entry.js.map +1 -1
- package/dist/esm/nano-icon-button_2.entry.js +41 -4
- package/dist/esm/nano-icon-button_2.entry.js.map +1 -1
- package/dist/esm/nano-input.entry.js +2 -2
- package/dist/esm/nano-input.entry.js.map +1 -1
- package/dist/esm/nano-range.entry.js +1 -1
- package/dist/esm/nano-range.entry.js.map +1 -1
- package/dist/esm/nano-sortable.entry.js +650 -0
- package/dist/esm/nano-sortable.entry.js.map +1 -0
- package/dist/esm/nano-split-pane.entry.js +30 -45
- package/dist/esm/nano-split-pane.entry.js.map +1 -1
- package/dist/esm/nano-tab-group.entry.js +39 -43
- package/dist/esm/nano-tab-group.entry.js.map +1 -1
- package/dist/esm/nano-tab.entry.js +3 -3
- package/dist/esm/nano-tab.entry.js.map +1 -1
- package/dist/esm/{nano-table-929ac4d9.js → nano-table-ba637f26.js} +53 -173
- package/dist/esm/nano-table-ba637f26.js.map +1 -0
- package/dist/esm/nano-table.entry.js +1 -1
- package/dist/esm/{table.worker-2425382a.js → table.worker-1cae39c9.js} +3 -3
- package/dist/esm/table.worker-1cae39c9.js.map +1 -0
- package/dist/{nano-components/p-f820b411.js → esm/table.worker-bd51e29f.js} +1 -1
- package/dist/nano-components/nano-components.css +1 -1
- package/dist/nano-components/nano-components.esm.js +1 -1
- package/dist/nano-components/nano-components.esm.js.map +1 -1
- package/dist/nano-components/p-00cf8021.entry.js +5 -0
- package/dist/nano-components/p-00cf8021.entry.js.map +1 -0
- package/dist/nano-components/{p-906de5a2.entry.js → p-158c73b0.entry.js} +2 -2
- package/dist/nano-components/p-365c997a.js +5 -0
- package/dist/nano-components/p-553acf24.entry.js +5 -0
- package/dist/nano-components/p-553acf24.entry.js.map +1 -0
- package/dist/nano-components/p-6975f110.entry.js +5 -0
- package/dist/nano-components/p-6975f110.entry.js.map +1 -0
- package/dist/nano-components/p-71057181.js +5 -0
- package/dist/nano-components/p-71057181.js.map +1 -0
- package/dist/nano-components/p-842cf127.js +5 -0
- package/dist/nano-components/p-842cf127.js.map +1 -0
- package/dist/nano-components/p-ad6209ec.entry.js +5 -0
- package/dist/nano-components/p-ad6209ec.entry.js.map +1 -0
- package/dist/nano-components/p-b8e76fdf.entry.js +5 -0
- package/dist/nano-components/p-b8e76fdf.entry.js.map +1 -0
- package/dist/{esm/table.worker-f820b411.js → nano-components/p-bd51e29f.js} +1 -1
- package/dist/nano-components/p-bdef618c.entry.js +5 -0
- package/dist/nano-components/p-bdef618c.entry.js.map +1 -0
- package/dist/nano-components/p-d79c6862.entry.js +5 -0
- package/dist/nano-components/p-d79c6862.entry.js.map +1 -0
- package/dist/nano-components/p-deb0799c.entry.js +5 -0
- package/dist/nano-components/{p-6a3a29c6.entry.js.map → p-deb0799c.entry.js.map} +1 -1
- package/dist/nano-components/p-ebb98a9e.entry.js +5 -0
- package/dist/nano-components/p-ebb98a9e.entry.js.map +1 -0
- package/dist/nano-components/p-f60fe933.entry.js +5 -0
- package/dist/nano-components/p-f60fe933.entry.js.map +1 -0
- package/dist/nano-components/p-f7535f45.entry.js +5 -0
- package/dist/nano-components/p-f7535f45.entry.js.map +1 -0
- package/dist/nano-components/p-fc585ea2.js +5 -0
- package/dist/nano-components/p-fc585ea2.js.map +1 -0
- package/dist/types/components/grid/grid-item.d.ts +3 -11
- package/dist/types/components/grid/grid.d.ts +44 -68
- package/dist/types/components/hero/hero.d.ts +1 -3
- package/dist/types/components/icon-button/icon-button.d.ts +14 -0
- package/dist/types/components/sortable/sortable.d.ts +204 -0
- package/dist/types/components/table/table-interface.d.ts +2 -4
- package/dist/types/components/table/table.d.ts +5 -30
- package/dist/types/components/table/table.header.d.ts +0 -3
- package/dist/types/components/tabs/tab-group.d.ts +0 -1
- package/dist/types/components/tabs/tab.d.ts +6 -0
- package/dist/types/components.d.ts +333 -89
- package/dist/types/utils/constructible-style.d.ts +31 -0
- package/dist/types/utils/drag.d.ts +21 -1
- package/docs-json.json +743 -168
- package/docs-vscode.json +102 -26
- package/hydrate/index.js +1210 -552
- package/package.json +2 -2
- package/dist/cjs/form-control-2e900f54.js.map +0 -1
- package/dist/cjs/nano-grid_3.cjs.entry.js +0 -431
- package/dist/cjs/nano-grid_3.cjs.entry.js.map +0 -1
- package/dist/cjs/nano-table-54a4ba34.js.map +0 -1
- package/dist/cjs/table.worker-20ed37a5.js.map +0 -1
- package/dist/collection/components/grid/grid-item.css +0 -15
- package/dist/components/grid-item.js +0 -107
- package/dist/components/grid-item.js.map +0 -1
- package/dist/esm/form-control-269ba84f.js.map +0 -1
- package/dist/esm/nano-grid_3.entry.js +0 -425
- package/dist/esm/nano-grid_3.entry.js.map +0 -1
- package/dist/esm/nano-table-929ac4d9.js.map +0 -1
- package/dist/esm/table.worker-2425382a.js.map +0 -1
- package/dist/nano-components/p-068bdd89.entry.js +0 -5
- package/dist/nano-components/p-068bdd89.entry.js.map +0 -1
- package/dist/nano-components/p-107d4549.entry.js +0 -5
- package/dist/nano-components/p-107d4549.entry.js.map +0 -1
- package/dist/nano-components/p-239d343a.entry.js +0 -5
- package/dist/nano-components/p-239d343a.entry.js.map +0 -1
- package/dist/nano-components/p-4f260028.js +0 -5
- package/dist/nano-components/p-4f260028.js.map +0 -1
- package/dist/nano-components/p-5381c118.js +0 -5
- package/dist/nano-components/p-58b53239.entry.js +0 -5
- package/dist/nano-components/p-58b53239.entry.js.map +0 -1
- package/dist/nano-components/p-5ac74848.js +0 -5
- package/dist/nano-components/p-5ac74848.js.map +0 -1
- package/dist/nano-components/p-64b56ee6.entry.js +0 -5
- package/dist/nano-components/p-64b56ee6.entry.js.map +0 -1
- package/dist/nano-components/p-6a3a29c6.entry.js +0 -5
- package/dist/nano-components/p-a5a560e7.entry.js +0 -5
- package/dist/nano-components/p-a5a560e7.entry.js.map +0 -1
- package/dist/nano-components/p-a761ac89.entry.js +0 -5
- package/dist/nano-components/p-a761ac89.entry.js.map +0 -1
- package/dist/nano-components/p-d792f692.entry.js +0 -5
- package/dist/nano-components/p-d792f692.entry.js.map +0 -1
- /package/dist/nano-components/{p-5381c118.js.map → p-158c73b0.entry.js.map} +0 -0
- /package/dist/nano-components/{p-906de5a2.entry.js.map → p-365c997a.js.map} +0 -0
package/hydrate/index.js
CHANGED
@@ -5287,7 +5287,7 @@ const createTime = (e, t = "") => {
|
|
5287
5287
|
};
|
5288
5288
|
return (n.$attrs$ = null), (n.$key$ = null),
|
5289
5289
|
(n.$name$ = null), n;
|
5290
|
-
}, Host = {}, isHost = e => e && e.$tag$ === Host, vdomFnUtils = {
|
5290
|
+
}, Host = {}, isHost$1 = e => e && e.$tag$ === Host, vdomFnUtils = {
|
5291
5291
|
forEach: (e, t) => e.map(convertToPublic).forEach(t),
|
5292
5292
|
map: (e, t) => e.map(convertToPublic).map(t).map(convertToPrivate)
|
5293
5293
|
}, convertToPublic = e => ({
|
@@ -5691,7 +5691,7 @@ const createElm = (e, t, n, o) => {
|
|
5691
5691
|
}, isNodeLocatedInSlot = (e, t) => 1 === e.nodeType ? null === e.getAttribute("slot") && "" === t || e.getAttribute("slot") === t : e["s-sn"] === t || "" === t, callNodeRefs = e => {
|
5692
5692
|
(e.$attrs$ && e.$attrs$.ref && e.$attrs$.ref(null), e.$children$ && e.$children$.map(callNodeRefs));
|
5693
5693
|
}, renderVdom = (e, t) => {
|
5694
|
-
const n = e.$hostElement$, o = e.$cmpMeta$, s = e.$vnode$ || newVNode(null, null), r = isHost(t) ? t : h(null, null, t);
|
5694
|
+
const n = e.$hostElement$, o = e.$cmpMeta$, s = e.$vnode$ || newVNode(null, null), r = isHost$1(t) ? t : h(null, null, t);
|
5695
5695
|
if (hostTagName = n.tagName, BUILD.isDev ) ;
|
5696
5696
|
if (o.$attrsToReflect$ && (r.$attrs$ = r.$attrs$ || {}, o.$attrsToReflect$.map((([e, t]) => r.$attrs$[t] = n[e]))),
|
5697
5697
|
r.$tag$ = null, r.$flags$ |= 4, e.$vnode$ = r, r.$elm$ = s.$elm$ = n.shadowRoot || n,
|
@@ -19057,26 +19057,214 @@ class GlobalSearchResults {
|
|
19057
19057
|
}; }
|
19058
19058
|
}
|
19059
19059
|
|
19060
|
-
const gridCss = "/*!@:host*/.sc-nano-grid-h{box-sizing:border-box}/*!@*,\n*::before,\n*::after*/*.sc-nano-grid,*.sc-nano-grid::before,*.sc-nano-grid::after{box-sizing:border-box}/*!@[hidden]*/[hidden].sc-nano-grid{display:none !important}/*!@:host*/.sc-nano-grid-h{--grid-col-gap:var(--nano-spacing-medium, 16px);--grid-row-gap:var(--nano-spacing-medium, 16px);--current-grid-size:\"'grid size: sm'\";display:block;opacity:0;transition:0.2s ease opacity;max-width:100%}/*!@:host .grid*/.sc-nano-grid-h .grid.sc-nano-grid{display:grid;grid-gap:var(--grid-row-gap) var(--grid-col-gap);block-size:inherit;min-block-size:inherit}/*!@:host(.ready)*/.ready.sc-nano-grid-h{opacity:1}/*!@:host(.has-grid) .grid*/.has-grid.sc-nano-grid-h .grid.sc-nano-grid{display:grid}/*!@:host(.has-grid) .grid ::slotted(.nano-grid-col-start-1)*/.sc-nano-grid-h.has-grid .grid .sc-nano-grid-s>.nano-grid-col-start-1{grid-column-start:1 !important}/*!@:host(.has-grid) .grid ::slotted(.nano-grid-row-start-1)*/.sc-nano-grid-h.has-grid .grid .sc-nano-grid-s>.nano-grid-row-start-1{grid-row-start:1 !important}/*!@:host(.has-grid) .grid ::slotted(.nano-grid-col-span-1)*/.sc-nano-grid-h.has-grid .grid .sc-nano-grid-s>.nano-grid-col-span-1{grid-column-end:span 1 !important}/*!@:host(.has-grid) .grid ::slotted(.nano-grid-row-span-1)*/.sc-nano-grid-h.has-grid .grid .sc-nano-grid-s>.nano-grid-row-span-1{grid-row-end:span 1 !important}/*!@:host(.has-grid) .grid ::slotted(.nano-grid-col-start-2)*/.sc-nano-grid-h.has-grid .grid .sc-nano-grid-s>.nano-grid-col-start-2{grid-column-start:2 !important}/*!@:host(.has-grid) .grid ::slotted(.nano-grid-row-start-2)*/.sc-nano-grid-h.has-grid .grid .sc-nano-grid-s>.nano-grid-row-start-2{grid-row-start:2 !important}/*!@:host(.has-grid) .grid ::slotted(.nano-grid-col-span-2)*/.sc-nano-grid-h.has-grid .grid .sc-nano-grid-s>.nano-grid-col-span-2{grid-column-end:span 2 !important}/*!@:host(.has-grid) .grid ::slotted(.nano-grid-row-span-2)*/.sc-nano-grid-h.has-grid .grid .sc-nano-grid-s>.nano-grid-row-span-2{grid-row-end:span 2 !important}/*!@:host(.has-grid) .grid ::slotted(.nano-grid-col-start-3)*/.sc-nano-grid-h.has-grid .grid .sc-nano-grid-s>.nano-grid-col-start-3{grid-column-start:3 !important}/*!@:host(.has-grid) .grid ::slotted(.nano-grid-row-start-3)*/.sc-nano-grid-h.has-grid .grid .sc-nano-grid-s>.nano-grid-row-start-3{grid-row-start:3 !important}/*!@:host(.has-grid) .grid ::slotted(.nano-grid-col-span-3)*/.sc-nano-grid-h.has-grid .grid .sc-nano-grid-s>.nano-grid-col-span-3{grid-column-end:span 3 !important}/*!@:host(.has-grid) .grid ::slotted(.nano-grid-row-span-3)*/.sc-nano-grid-h.has-grid .grid .sc-nano-grid-s>.nano-grid-row-span-3{grid-row-end:span 3 !important}/*!@:host(.has-grid) .grid ::slotted(.nano-grid-col-start-4)*/.sc-nano-grid-h.has-grid .grid .sc-nano-grid-s>.nano-grid-col-start-4{grid-column-start:4 !important}/*!@:host(.has-grid) .grid ::slotted(.nano-grid-row-start-4)*/.sc-nano-grid-h.has-grid .grid .sc-nano-grid-s>.nano-grid-row-start-4{grid-row-start:4 !important}/*!@:host(.has-grid) .grid ::slotted(.nano-grid-col-span-4)*/.sc-nano-grid-h.has-grid .grid .sc-nano-grid-s>.nano-grid-col-span-4{grid-column-end:span 4 !important}/*!@:host(.has-grid) .grid ::slotted(.nano-grid-row-span-4)*/.sc-nano-grid-h.has-grid .grid .sc-nano-grid-s>.nano-grid-row-span-4{grid-row-end:span 4 !important}/*!@:host(.has-grid) .grid ::slotted(.nano-grid-col-start-5)*/.sc-nano-grid-h.has-grid .grid .sc-nano-grid-s>.nano-grid-col-start-5{grid-column-start:5 !important}/*!@:host(.has-grid) .grid ::slotted(.nano-grid-row-start-5)*/.sc-nano-grid-h.has-grid .grid .sc-nano-grid-s>.nano-grid-row-start-5{grid-row-start:5 !important}/*!@:host(.has-grid) .grid ::slotted(.nano-grid-col-span-5)*/.sc-nano-grid-h.has-grid .grid .sc-nano-grid-s>.nano-grid-col-span-5{grid-column-end:span 5 !important}/*!@:host(.has-grid) .grid ::slotted(.nano-grid-row-span-5)*/.sc-nano-grid-h.has-grid .grid .sc-nano-grid-s>.nano-grid-row-span-5{grid-row-end:span 5 !important}/*!@:host(.has-grid) .grid ::slotted(.nano-grid-col-start-6)*/.sc-nano-grid-h.has-grid .grid .sc-nano-grid-s>.nano-grid-col-start-6{grid-column-start:6 !important}/*!@:host(.has-grid) .grid ::slotted(.nano-grid-row-start-6)*/.sc-nano-grid-h.has-grid .grid .sc-nano-grid-s>.nano-grid-row-start-6{grid-row-start:6 !important}/*!@:host(.has-grid) .grid ::slotted(.nano-grid-col-span-6)*/.sc-nano-grid-h.has-grid .grid .sc-nano-grid-s>.nano-grid-col-span-6{grid-column-end:span 6 !important}/*!@:host(.has-grid) .grid ::slotted(.nano-grid-row-span-6)*/.sc-nano-grid-h.has-grid .grid .sc-nano-grid-s>.nano-grid-row-span-6{grid-row-end:span 6 !important}/*!@:host(.has-grid) .grid ::slotted(.nano-grid-col-start-7)*/.sc-nano-grid-h.has-grid .grid .sc-nano-grid-s>.nano-grid-col-start-7{grid-column-start:7 !important}/*!@:host(.has-grid) .grid ::slotted(.nano-grid-row-start-7)*/.sc-nano-grid-h.has-grid .grid .sc-nano-grid-s>.nano-grid-row-start-7{grid-row-start:7 !important}/*!@:host(.has-grid) .grid ::slotted(.nano-grid-col-span-7)*/.sc-nano-grid-h.has-grid .grid .sc-nano-grid-s>.nano-grid-col-span-7{grid-column-end:span 7 !important}/*!@:host(.has-grid) .grid ::slotted(.nano-grid-row-span-7)*/.sc-nano-grid-h.has-grid .grid .sc-nano-grid-s>.nano-grid-row-span-7{grid-row-end:span 7 !important}/*!@:host(.has-grid) .grid ::slotted(.nano-grid-col-start-8)*/.sc-nano-grid-h.has-grid .grid .sc-nano-grid-s>.nano-grid-col-start-8{grid-column-start:8 !important}/*!@:host(.has-grid) .grid ::slotted(.nano-grid-row-start-8)*/.sc-nano-grid-h.has-grid .grid .sc-nano-grid-s>.nano-grid-row-start-8{grid-row-start:8 !important}/*!@:host(.has-grid) .grid ::slotted(.nano-grid-col-span-8)*/.sc-nano-grid-h.has-grid .grid .sc-nano-grid-s>.nano-grid-col-span-8{grid-column-end:span 8 !important}/*!@:host(.has-grid) .grid ::slotted(.nano-grid-row-span-8)*/.sc-nano-grid-h.has-grid .grid .sc-nano-grid-s>.nano-grid-row-span-8{grid-row-end:span 8 !important}/*!@:host(.has-grid) .grid ::slotted(.nano-grid-col-start-9)*/.sc-nano-grid-h.has-grid .grid .sc-nano-grid-s>.nano-grid-col-start-9{grid-column-start:9 !important}/*!@:host(.has-grid) .grid ::slotted(.nano-grid-row-start-9)*/.sc-nano-grid-h.has-grid .grid .sc-nano-grid-s>.nano-grid-row-start-9{grid-row-start:9 !important}/*!@:host(.has-grid) .grid ::slotted(.nano-grid-col-span-9)*/.sc-nano-grid-h.has-grid .grid .sc-nano-grid-s>.nano-grid-col-span-9{grid-column-end:span 9 !important}/*!@:host(.has-grid) .grid ::slotted(.nano-grid-row-span-9)*/.sc-nano-grid-h.has-grid .grid .sc-nano-grid-s>.nano-grid-row-span-9{grid-row-end:span 9 !important}/*!@:host(.has-grid) .grid ::slotted(.nano-grid-col-start-10)*/.sc-nano-grid-h.has-grid .grid .sc-nano-grid-s>.nano-grid-col-start-10{grid-column-start:10 !important}/*!@:host(.has-grid) .grid ::slotted(.nano-grid-row-start-10)*/.sc-nano-grid-h.has-grid .grid .sc-nano-grid-s>.nano-grid-row-start-10{grid-row-start:10 !important}/*!@:host(.has-grid) .grid ::slotted(.nano-grid-col-span-10)*/.sc-nano-grid-h.has-grid .grid .sc-nano-grid-s>.nano-grid-col-span-10{grid-column-end:span 10 !important}/*!@:host(.has-grid) .grid ::slotted(.nano-grid-row-span-10)*/.sc-nano-grid-h.has-grid .grid .sc-nano-grid-s>.nano-grid-row-span-10{grid-row-end:span 10 !important}/*!@:host([content-panel]:not([content-panel=false])) .grid*/[content-panel].sc-nano-grid-h:not([content-panel=false]) .grid.sc-nano-grid{grid-template-rows:auto 1fr}/*!@:host([full-height]:not([full-height=false]))*/[full-height].sc-nano-grid-h:not([full-height=false]){block-size:100%}/*!@:host([full-height]:not([full-height=false])) .grid*/[full-height].sc-nano-grid-h:not([full-height=false]) .grid.sc-nano-grid{grid-template-rows:1fr}/*!@:host([show-helper]:not([show-helper=false])) .grid*/[show-helper].sc-nano-grid-h:not([show-helper=false]) .grid.sc-nano-grid{position:relative}/*!@:host([show-helper]:not([show-helper=false])) .grid::after*/[show-helper].sc-nano-grid-h:not([show-helper=false]) .grid.sc-nano-grid::after{content:\"\";position:absolute;inset:0;pointer-events:none;background-image:repeating-linear-gradient(to right, rgba(126, 195, 241, 0.25), rgba(126, 195, 241, 0.25) var(--col-width), transparent var(--col-width), transparent var(--repeat-width));background-size:calc(100% + var(--grid-col-gap)) 100%;z-index:100}/*!@:host([show-helper]:not([show-helper=false])) .grid::before*/[show-helper].sc-nano-grid-h:not([show-helper=false]) .grid.sc-nano-grid::before{content:var(--current-grid-size);font-size:30px;position:absolute;inline-size:100%;inset-inline-start:0;text-align:center;inset-block-start:50%;transform:translateY(-50%);color:rgba(0, 0, 0, 0.2);text-transform:uppercase;z-index:99;pointer-events:none}/*!@:host(.nano-grid-1)*/.nano-grid-1.sc-nano-grid-h{--current-grid-size:\"grid size: 1\";--col-width:calc(100% - var(--grid-col-gap));--repeat-width:calc(100% / 1)}/*!@:host(.nano-grid-1) .grid*/.nano-grid-1.sc-nano-grid-h .grid.sc-nano-grid{grid-template-columns:repeat(1, minmax(var(--col-width), 1fr))}/*!@:host(.nano-grid-2)*/.nano-grid-2.sc-nano-grid-h{--current-grid-size:\"grid size: 2\";--col-width:calc(50% - var(--grid-col-gap));--repeat-width:calc(100% / 2)}/*!@:host(.nano-grid-2) .grid*/.nano-grid-2.sc-nano-grid-h .grid.sc-nano-grid{grid-template-columns:repeat(2, minmax(var(--col-width), 1fr))}/*!@:host(.nano-grid-3)*/.nano-grid-3.sc-nano-grid-h{--current-grid-size:\"grid size: 3\";--col-width:calc(33.3333333333% - var(--grid-col-gap));--repeat-width:calc(100% / 3)}/*!@:host(.nano-grid-3) .grid*/.nano-grid-3.sc-nano-grid-h .grid.sc-nano-grid{grid-template-columns:repeat(3, minmax(var(--col-width), 1fr))}/*!@:host(.nano-grid-4)*/.nano-grid-4.sc-nano-grid-h{--current-grid-size:\"grid size: 4\";--col-width:calc(25% - var(--grid-col-gap));--repeat-width:calc(100% / 4)}/*!@:host(.nano-grid-4) .grid*/.nano-grid-4.sc-nano-grid-h .grid.sc-nano-grid{grid-template-columns:repeat(4, minmax(var(--col-width), 1fr))}/*!@:host(.nano-grid-5)*/.nano-grid-5.sc-nano-grid-h{--current-grid-size:\"grid size: 5\";--col-width:calc(20% - var(--grid-col-gap));--repeat-width:calc(100% / 5)}/*!@:host(.nano-grid-5) .grid*/.nano-grid-5.sc-nano-grid-h .grid.sc-nano-grid{grid-template-columns:repeat(5, minmax(var(--col-width), 1fr))}/*!@:host(.nano-grid-6)*/.nano-grid-6.sc-nano-grid-h{--current-grid-size:\"grid size: 6\";--col-width:calc(16.6666666667% - var(--grid-col-gap));--repeat-width:calc(100% / 6)}/*!@:host(.nano-grid-6) .grid*/.nano-grid-6.sc-nano-grid-h .grid.sc-nano-grid{grid-template-columns:repeat(6, minmax(var(--col-width), 1fr))}/*!@:host(.nano-grid-7)*/.nano-grid-7.sc-nano-grid-h{--current-grid-size:\"grid size: 7\";--col-width:calc(14.2857142857% - var(--grid-col-gap));--repeat-width:calc(100% / 7)}/*!@:host(.nano-grid-7) .grid*/.nano-grid-7.sc-nano-grid-h .grid.sc-nano-grid{grid-template-columns:repeat(7, minmax(var(--col-width), 1fr))}/*!@:host(.nano-grid-8)*/.nano-grid-8.sc-nano-grid-h{--current-grid-size:\"grid size: 8\";--col-width:calc(12.5% - var(--grid-col-gap));--repeat-width:calc(100% / 8)}/*!@:host(.nano-grid-8) .grid*/.nano-grid-8.sc-nano-grid-h .grid.sc-nano-grid{grid-template-columns:repeat(8, minmax(var(--col-width), 1fr))}/*!@:host(.nano-grid-9)*/.nano-grid-9.sc-nano-grid-h{--current-grid-size:\"grid size: 9\";--col-width:calc(11.1111111111% - var(--grid-col-gap));--repeat-width:calc(100% / 9)}/*!@:host(.nano-grid-9) .grid*/.nano-grid-9.sc-nano-grid-h .grid.sc-nano-grid{grid-template-columns:repeat(9, minmax(var(--col-width), 1fr))}/*!@:host(.nano-grid-10)*/.nano-grid-10.sc-nano-grid-h{--current-grid-size:\"grid size: 10\";--col-width:calc(10% - var(--grid-col-gap));--repeat-width:calc(100% / 10)}/*!@:host(.nano-grid-10) .grid*/.nano-grid-10.sc-nano-grid-h .grid.sc-nano-grid{grid-template-columns:repeat(10, minmax(var(--col-width), 1fr))}";
|
19060
|
+
// import type { VNode, HTMLStencilElement } from "@stencil/core";
|
19061
|
+
const supportsConstructibleStylesheets = (() => {
|
19062
|
+
try {
|
19063
|
+
return !!new CSSStyleSheet();
|
19064
|
+
}
|
19065
|
+
catch (e) {
|
19066
|
+
return false;
|
19067
|
+
}
|
19068
|
+
})();
|
19069
|
+
const cacheKeys = new WeakMap();
|
19070
|
+
/**
|
19071
|
+
* Dynamically create a constructible stylesheet which is applied to the component.
|
19072
|
+
* The stylesheet is then cached for future instances of the component.
|
19073
|
+
* @usage
|
19074
|
+
As a string:
|
19075
|
+
```
|
19076
|
+
@ConstructableStyle() style = `.bg { background: url('assets/${ this.mode }/bg.png'); }`;
|
19077
|
+
```
|
19078
|
+
As a function:
|
19079
|
+
```
|
19080
|
+
@ConstructableStyle() style = () => `.bg { background: url('assets/${ this.mode }/bg.png'); }`;
|
19081
|
+
```
|
19082
|
+
* @param opts - optional `cacheKeyProperty` - in case an instance of a component could produce different styles based on variables.
|
19083
|
+
* @returns `@ConstructableStyle` decorator
|
19084
|
+
*/
|
19085
|
+
function ConstructibleStyle(opts = {}) {
|
19086
|
+
return (target, propertyKey) => {
|
19087
|
+
if (!opts.cacheKeyProperty) {
|
19088
|
+
opts.cacheKeyProperty = propertyKey;
|
19089
|
+
}
|
19090
|
+
const { componentWillLoad, render, componentWillRender } = target;
|
19091
|
+
if (!componentWillLoad)
|
19092
|
+
console.warn(`ConstructibleStyle requires you to have a \`componentWillLoad\` lifecycle method in \`${target.constructor.name}\`. Failure to add this function may cause ConstructibleStyle to fail due to StencilJS build optimizations.`);
|
19093
|
+
if (supportsConstructibleStylesheets) {
|
19094
|
+
const addStylesheet = (instance) => {
|
19095
|
+
if (!instance[opts.cacheKeyProperty] ||
|
19096
|
+
(cacheKeys.get(instance) &&
|
19097
|
+
cacheKeys.get(instance) === instance[opts.cacheKeyProperty]))
|
19098
|
+
return;
|
19099
|
+
cacheKeys.set(instance, instance[opts.cacheKeyProperty]);
|
19100
|
+
const host = getElement(instance);
|
19101
|
+
const cssText = typeof instance[propertyKey] === 'function'
|
19102
|
+
? instance[propertyKey]()
|
19103
|
+
: instance[propertyKey];
|
19104
|
+
const root = (host.shadowRoot || document);
|
19105
|
+
root.adoptedStyleSheets = [
|
19106
|
+
...(root.adoptedStyleSheets || []),
|
19107
|
+
getOrCreateStylesheet(instance, target, cssText, opts),
|
19108
|
+
];
|
19109
|
+
};
|
19110
|
+
target.componentWillLoad = function () {
|
19111
|
+
const willLoadResult = componentWillLoad && componentWillLoad.call(this);
|
19112
|
+
addStylesheet(this);
|
19113
|
+
return willLoadResult;
|
19114
|
+
};
|
19115
|
+
target.componentWillRender = function () {
|
19116
|
+
const willRenderResult = componentWillRender && componentWillRender.call(this);
|
19117
|
+
addStylesheet(this);
|
19118
|
+
return willRenderResult;
|
19119
|
+
};
|
19120
|
+
}
|
19121
|
+
else {
|
19122
|
+
target.render = function () {
|
19123
|
+
const cssText = typeof this[propertyKey] === 'function'
|
19124
|
+
? this[propertyKey]()
|
19125
|
+
: this[propertyKey];
|
19126
|
+
let renderedNode = render.call(this);
|
19127
|
+
if (isHost(renderedNode)) {
|
19128
|
+
appendStyleToHost(renderedNode, target.constructor.name, cssText);
|
19129
|
+
}
|
19130
|
+
else {
|
19131
|
+
renderedNode = hAsync(Host, null, renderedNode);
|
19132
|
+
if (!('attachShadow' in HTMLElement.prototype)) {
|
19133
|
+
appendStyleToHost(renderedNode, target.constructor.name, cssText);
|
19134
|
+
}
|
19135
|
+
else {
|
19136
|
+
if (!target.__constructableStyle) {
|
19137
|
+
const style = document.createElement('style');
|
19138
|
+
style.setAttribute('type', 'text/css');
|
19139
|
+
style.setAttribute('constructible-style', target.constructor.name);
|
19140
|
+
style.innerHTML = cssText;
|
19141
|
+
target.__constructableStyle = style;
|
19142
|
+
document.head.appendChild(style);
|
19143
|
+
}
|
19144
|
+
}
|
19145
|
+
}
|
19146
|
+
return renderedNode;
|
19147
|
+
};
|
19148
|
+
}
|
19149
|
+
};
|
19150
|
+
}
|
19151
|
+
function appendStyleToHost(node, targetName, cssText) {
|
19152
|
+
(getHostChildren(node) || []).push(hAsync("style", { type: "text/css", "constructible-style": targetName }, cssText));
|
19153
|
+
}
|
19154
|
+
function getOrCreateStylesheet(instance, target, cssText, opts) {
|
19155
|
+
if (!target.__constructableStyle) {
|
19156
|
+
target.__constructableStyle = {};
|
19157
|
+
}
|
19158
|
+
const key = instance[opts.cacheKeyProperty];
|
19159
|
+
if (!target.__constructableStyle[key]) {
|
19160
|
+
target.__constructableStyle[key] = new CSSStyleSheet();
|
19161
|
+
target.__constructableStyle[key].replace(cssText);
|
19162
|
+
}
|
19163
|
+
return target.__constructableStyle[key];
|
19164
|
+
}
|
19165
|
+
function isHost(node) {
|
19166
|
+
for (const prop in node) {
|
19167
|
+
if (node.hasOwnProperty(prop)) {
|
19168
|
+
if (node[prop] === Host) {
|
19169
|
+
return true;
|
19170
|
+
}
|
19171
|
+
}
|
19172
|
+
}
|
19173
|
+
return false;
|
19174
|
+
}
|
19175
|
+
function getHostChildren(node) {
|
19176
|
+
for (const prop in node) {
|
19177
|
+
if (node.hasOwnProperty(prop)) {
|
19178
|
+
if (Array.isArray(node[prop])) {
|
19179
|
+
return node[prop];
|
19180
|
+
}
|
19181
|
+
}
|
19182
|
+
}
|
19183
|
+
}
|
19061
19184
|
|
19062
|
-
const
|
19185
|
+
const gridCss = "/*!@:host*/.sc-nano-grid-h{box-sizing:border-box}/*!@*,\n*::before,\n*::after*/*.sc-nano-grid,*.sc-nano-grid::before,*.sc-nano-grid::after{box-sizing:border-box}/*!@[hidden]*/[hidden].sc-nano-grid{display:none !important}/*!@:host*/.sc-nano-grid-h{--grid-col-gap:var(--nano-spacing-medium, 16px);--grid-row-gap:var(--nano-spacing-medium, 16px);--current-grid-size:\"grid size: s\";container-type:inline-size;display:block}/*!@:host .grid*/.sc-nano-grid-h .grid.sc-nano-grid{display:grid;gap:var(--grid-row-gap) var(--grid-col-gap);block-size:inherit;min-block-size:inherit}/*!@:host([show-helper]:not([show-helper=false]))*/[show-helper].sc-nano-grid-h:not([show-helper=false]){position:relative}/*!@:host([show-helper]:not([show-helper=false])) .grid--helper*/[show-helper].sc-nano-grid-h:not([show-helper=false]) .grid--helper.sc-nano-grid{position:absolute;inset:0;pointer-events:none}/*!@:host([show-helper]:not([show-helper=false])) .grid--helper::before*/[show-helper].sc-nano-grid-h:not([show-helper=false]) .grid--helper.sc-nano-grid::before{content:var(--current-grid-size);font-size:30px;position:absolute;inline-size:100%;inset-inline-start:0;text-align:center;inset-block-start:50%;transform:translateY(-50%);color:rgba(0, 0, 0, 0.2);text-transform:uppercase;z-index:99;pointer-events:none}/*!@:host([show-helper]:not([show-helper=false])) .grid__helper-item*/[show-helper].sc-nano-grid-h:not([show-helper=false]) .grid__helper-item.sc-nano-grid{display:none;background:rgba(126, 195, 241, 0.25)}";
|
19186
|
+
|
19187
|
+
var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
19188
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
19189
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
|
19190
|
+
r = Reflect.decorate(decorators, target, key, desc);
|
19191
|
+
else
|
19192
|
+
for (var i = decorators.length - 1; i >= 0; i--)
|
19193
|
+
if (d = decorators[i])
|
19194
|
+
r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
19195
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
19196
|
+
};
|
19197
|
+
var __metadata = (undefined && undefined.__metadata) || function (k, v) {
|
19198
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function")
|
19199
|
+
return Reflect.metadata(k, v);
|
19200
|
+
};
|
19063
19201
|
/**
|
19064
|
-
* A context-aware CSS grid implementation.
|
19065
|
-
*
|
19202
|
+
* A lightweight, context-aware CSS grid implementation.
|
19203
|
+
*
|
19204
|
+
* - Define multiple grids templates at different breakpoints
|
19205
|
+
* - Uses `@container` queries to select the correct grid depending on the current dimensions
|
19206
|
+
* - Use `grid-states="..."` on direct descendants for `column` / `row` - `start` / `end`
|
19207
|
+
* - SSR optimised
|
19208
|
+
|
19209
|
+
* @part grid - the main grid element.
|
19210
|
+
* Use this to set css such as `justify-items|content` / `align-items|content` / `place-content`
|
19211
|
+
* @part helper - a replica grid showed when `show-helper` is true
|
19212
|
+
*
|
19213
|
+
* @slot - default slot. Use this to place grid items. Use `grid-states="..."` attribute to opt-out of auto / sequential placement.
|
19066
19214
|
*/
|
19067
19215
|
class Grid {
|
19068
19216
|
constructor(hostRef) {
|
19069
19217
|
registerInstance(this, hostRef);
|
19070
|
-
this.
|
19071
|
-
this.
|
19072
|
-
|
19073
|
-
|
19074
|
-
|
19075
|
-
|
19076
|
-
|
19077
|
-
|
19078
|
-
|
19079
|
-
|
19218
|
+
this.grids = [];
|
19219
|
+
this.styles = () => {
|
19220
|
+
const css = /* css */ `
|
19221
|
+
${this.grids
|
19222
|
+
.map((bp) => /* css */ `
|
19223
|
+
@container (min-width: ${typeof bp.breakpoint === 'number'
|
19224
|
+
? bp.breakpoint + 1 + 'px'
|
19225
|
+
: bp.breakpoint}) {
|
19226
|
+
.grid {
|
19227
|
+
--current-grid-size: "grid size: ${bp.name}";
|
19228
|
+
${bp.template
|
19229
|
+
? `grid-template: ${bp.template};`
|
19230
|
+
: `grid-template-columns: repeat(${bp.cols}, 1fr);`}
|
19231
|
+
}
|
19232
|
+
${[...Array(bp.cols)]
|
19233
|
+
.map((_, i) => {
|
19234
|
+
const gItm = i + 1;
|
19235
|
+
return /* css */ `
|
19236
|
+
.grid > [grid-states~="${bp.name}-col-start-${gItm}"],
|
19237
|
+
::slotted([grid-states~="${bp.name}-col-start-${gItm}"]) {
|
19238
|
+
grid-column-start: ${gItm} !important;
|
19239
|
+
}
|
19240
|
+
.grid > [grid-states~="${bp.name}-row-start-${gItm}"],
|
19241
|
+
::slotted([grid-states~="${bp.name}-row-start-${gItm}"]) {
|
19242
|
+
grid-row-start: ${gItm} !important;
|
19243
|
+
}
|
19244
|
+
.grid > [grid-states~="${bp.name}-col-span-${gItm}"],
|
19245
|
+
::slotted([grid-states~="${bp.name}-col-span-${gItm}"]) {
|
19246
|
+
grid-column-end: span ${gItm} !important;
|
19247
|
+
}
|
19248
|
+
.grid > [grid-states~="${bp.name}-row-span-${gItm}"],
|
19249
|
+
::slotted([grid-states~="${bp.name}-row-span-${gItm}"]) {
|
19250
|
+
grid-row-end: span ${gItm} !important;
|
19251
|
+
}
|
19252
|
+
`;
|
19253
|
+
})
|
19254
|
+
.join('')}
|
19255
|
+
${this.showHelper &&
|
19256
|
+
/* css */ `
|
19257
|
+
.grid--helper :nth-child(-n+${bp.cols}) {
|
19258
|
+
display: block !important;
|
19259
|
+
}
|
19260
|
+
`}
|
19261
|
+
}
|
19262
|
+
`)
|
19263
|
+
.join('')}
|
19264
|
+
`;
|
19265
|
+
return css;
|
19266
|
+
};
|
19267
|
+
this.cacheKey = undefined;
|
19080
19268
|
this.sSize = 300;
|
19081
19269
|
this.mSize = 550;
|
19082
19270
|
this.lSize = 800;
|
@@ -19086,300 +19274,146 @@ class Grid {
|
|
19086
19274
|
this.lCols = undefined;
|
19087
19275
|
this.xlCols = undefined;
|
19088
19276
|
this.xxlCols = undefined;
|
19277
|
+
this.sTpl = undefined;
|
19278
|
+
this.mTpl = undefined;
|
19279
|
+
this.lTpl = undefined;
|
19280
|
+
this.xlTpl = undefined;
|
19281
|
+
this.xxlTpl = undefined;
|
19089
19282
|
this.showHelper = false;
|
19090
|
-
|
19091
|
-
|
19092
|
-
this.
|
19093
|
-
}
|
19094
|
-
propChanged() {
|
19095
|
-
this.applySizeClasses();
|
19096
|
-
}
|
19097
|
-
applySizeClasses() {
|
19098
|
-
const size = this.currentWidth;
|
19099
|
-
this.isSmall = false;
|
19100
|
-
this.isMedium = false;
|
19101
|
-
this.isLarge = false;
|
19102
|
-
this.isXL = false;
|
19103
|
-
this.isXXL = false;
|
19104
|
-
this.generalClasses = [];
|
19105
|
-
this.gridClass = null;
|
19106
|
-
this.isSizes = [null];
|
19107
|
-
this.isSmall = true;
|
19108
|
-
this.generalClasses.push('is-small');
|
19283
|
+
}
|
19284
|
+
constructSizeArray() {
|
19285
|
+
this.grids = [];
|
19109
19286
|
if (this.sCols)
|
19110
|
-
this.
|
19111
|
-
|
19112
|
-
|
19113
|
-
|
19114
|
-
|
19115
|
-
if (this.mCols)
|
19116
|
-
this.gridClass = `nano-grid-${this.mCols}`;
|
19117
|
-
this.isSizes.push({ size: 'm', active: true });
|
19118
|
-
}
|
19119
|
-
if (size > this.mSize) {
|
19120
|
-
this.isLarge = true;
|
19121
|
-
this.generalClasses.push('is-large');
|
19122
|
-
if (this.lCols)
|
19123
|
-
this.gridClass = `nano-grid-${this.lCols}`;
|
19124
|
-
this.isSizes.push({ size: 'l', active: true });
|
19125
|
-
}
|
19126
|
-
if (size > this.lSize) {
|
19127
|
-
this.isXL = true;
|
19128
|
-
this.generalClasses.push('is-xl');
|
19129
|
-
if (this.xlCols)
|
19130
|
-
this.gridClass = `nano-grid-${this.xlCols}`;
|
19131
|
-
this.isSizes.push({ size: 'xl', active: true });
|
19132
|
-
}
|
19133
|
-
if (size > this.xlSize) {
|
19134
|
-
this.isXXL = true;
|
19135
|
-
this.generalClasses.push('is-xxl');
|
19136
|
-
if (this.xxlCols)
|
19137
|
-
this.gridClass = `nano-grid-${this.xxlCols}`;
|
19138
|
-
this.isSizes.push({ size: 'xxl', active: true });
|
19139
|
-
}
|
19140
|
-
this.el.style.setProperty('--current-grid-size', `'grid size: ${this.isSizes.slice().pop().size}'`);
|
19141
|
-
this.applyChildrenClasses();
|
19142
|
-
setTimeout(() => (this.ready = true), 0);
|
19143
|
-
}
|
19144
|
-
stateChange() {
|
19145
|
-
this.nanoBpChange.emit(this.generalClasses);
|
19146
|
-
}
|
19147
|
-
applyChildrenClasses() {
|
19148
|
-
const gridItems = this.el.querySelectorAll('nano-grid-item');
|
19149
|
-
if (gridItems.length) {
|
19150
|
-
gridItems.forEach((gridItem) => {
|
19151
|
-
gridItem.changeBP(this.isSizes);
|
19287
|
+
this.grids.push({
|
19288
|
+
cols: this.sCols,
|
19289
|
+
breakpoint: 0,
|
19290
|
+
name: 's',
|
19291
|
+
template: this.sTpl,
|
19152
19292
|
});
|
19153
|
-
|
19154
|
-
|
19155
|
-
|
19156
|
-
|
19157
|
-
|
19158
|
-
|
19159
|
-
let classes;
|
19160
|
-
const ctx = this.el;
|
19161
|
-
// item states come in 4 possible flavours at every breakpoint. E.g.
|
19162
|
-
// xl-col-span-2
|
19163
|
-
// xl-col-start-2
|
19164
|
-
// xl-row-span-2
|
19165
|
-
// xl-row-start-2
|
19166
|
-
// loop through all grid items with states.
|
19167
|
-
[].map.call(ctx.children, (gItem) => {
|
19168
|
-
if (!gItem.hasAttribute('grid-states'))
|
19169
|
-
return;
|
19170
|
-
// gridItems.forEach(gItem => {
|
19171
|
-
// clear all previous grid state classnames
|
19172
|
-
classes = gItem.className
|
19173
|
-
.split(' ')
|
19174
|
-
.filter((c) => !c.startsWith('nano-grid-'));
|
19175
|
-
gItem.className = classes.join(' ').trim();
|
19176
|
-
// get all potential states this element can have
|
19177
|
-
const itemStates = gItem.getAttribute('grid-states').split(' ');
|
19178
|
-
// loop through all potential state options: col & row span & start
|
19179
|
-
STATEOPTS$1.forEach((stateOpt) => {
|
19180
|
-
// reset found flag
|
19181
|
-
found = false;
|
19182
|
-
// loop through all the current valid breakpoints / sizes backwards because
|
19183
|
-
// we only care about the item's state at the largest current breakpoint.
|
19184
|
-
this.isSizes
|
19185
|
-
.slice()
|
19186
|
-
.reverse()
|
19187
|
-
.forEach(function (size) {
|
19188
|
-
if (found || !size)
|
19189
|
-
return;
|
19190
|
-
found = itemStates.find((state) => state.indexOf(`${size.size}-${stateOpt}`) === 0);
|
19191
|
-
// found a state at this current size. apply class.
|
19192
|
-
if (found) {
|
19193
|
-
// clear previous grid state classname
|
19194
|
-
classes = gItem.className
|
19195
|
-
.split(' ')
|
19196
|
-
.filter((c) => !c.includes('nano-grid-${stateOpt}'));
|
19197
|
-
gItem.className = classes.join(' ').trim();
|
19198
|
-
stateArr = found.split('-');
|
19199
|
-
// remove the size of the state
|
19200
|
-
stateArr.shift();
|
19201
|
-
itemState = stateArr.join('-');
|
19202
|
-
// add new class
|
19203
|
-
gItem.classList.add(`nano-grid-${itemState}`);
|
19204
|
-
}
|
19205
|
-
});
|
19293
|
+
if (this.mCols)
|
19294
|
+
this.grids.push({
|
19295
|
+
cols: this.mCols,
|
19296
|
+
breakpoint: this.sSize,
|
19297
|
+
name: 'm',
|
19298
|
+
template: this.mTpl,
|
19206
19299
|
});
|
19207
|
-
|
19300
|
+
if (this.lSize)
|
19301
|
+
this.grids.push({
|
19302
|
+
cols: this.lCols,
|
19303
|
+
breakpoint: this.mSize,
|
19304
|
+
name: 'l',
|
19305
|
+
template: this.lTpl,
|
19306
|
+
});
|
19307
|
+
if (this.xlCols)
|
19308
|
+
this.grids.push({
|
19309
|
+
cols: this.xlCols,
|
19310
|
+
breakpoint: this.lSize,
|
19311
|
+
name: 'xl',
|
19312
|
+
template: this.xlTpl,
|
19313
|
+
});
|
19314
|
+
if (this.xxlCols)
|
19315
|
+
this.grids.push({
|
19316
|
+
cols: this.xxlCols,
|
19317
|
+
breakpoint: this.xlSize,
|
19318
|
+
name: 'xxl',
|
19319
|
+
template: this.xxlTpl,
|
19320
|
+
});
|
19321
|
+
this.cacheKey =
|
19322
|
+
this.grids
|
19323
|
+
.map((bp) => `${bp.cols}-${bp.breakpoint}-${bp.template || ''}`)
|
19324
|
+
.join('') +
|
19325
|
+
'-helper-' +
|
19326
|
+
this.showHelper;
|
19208
19327
|
}
|
19209
19328
|
componentWillLoad() {
|
19210
|
-
|
19211
|
-
[].map.call(ctx.children, (ele) => ele.classList.add('nano-griditem'));
|
19212
|
-
}
|
19213
|
-
componentDidLoad() {
|
19214
|
-
if (!window['ResizeObserver'])
|
19215
|
-
return;
|
19216
|
-
this.ro = new ResizeObserver((entries) => {
|
19217
|
-
for (const entry of entries) {
|
19218
|
-
if (!entry.contentRect.width)
|
19219
|
-
return;
|
19220
|
-
this.currentWidth = entry.contentRect.width;
|
19221
|
-
this.applySizeClasses();
|
19222
|
-
}
|
19223
|
-
});
|
19224
|
-
this.ro.observe(this.el);
|
19225
|
-
}
|
19226
|
-
disconnectedCallback() {
|
19227
|
-
if (this.ro)
|
19228
|
-
this.ro.disconnect();
|
19329
|
+
this.constructSizeArray();
|
19229
19330
|
}
|
19230
19331
|
render() {
|
19231
|
-
return (hAsync(Host, { class: {
|
19232
|
-
[this.generalClasses.join(' ')]: true,
|
19233
|
-
'has-grid': !!this.gridClass,
|
19234
|
-
ready: this.ready,
|
19235
|
-
[this.gridClass]: true,
|
19236
|
-
} }, hAsync("div", { class: {
|
19237
|
-
grid: true,
|
19238
|
-
} }, hAsync("slot", null))));
|
19332
|
+
return (hAsync(Host, null, hAsync("div", { part: "grid", class: "grid" }, hAsync("slot", null)), this.showHelper && (hAsync("div", { class: "grid grid--helper", part: "helper" }, [...Array(24)].map(() => (hAsync("div", { class: "grid__helper-item" })))))));
|
19239
19333
|
}
|
19240
|
-
get el() { return getElement(this); }
|
19241
19334
|
static get watchers() { return {
|
19242
|
-
"
|
19243
|
-
"
|
19244
|
-
"
|
19245
|
-
"
|
19246
|
-
"
|
19247
|
-
"
|
19248
|
-
"
|
19249
|
-
"
|
19250
|
-
"
|
19251
|
-
"
|
19252
|
-
"
|
19253
|
-
"
|
19254
|
-
"
|
19255
|
-
"
|
19335
|
+
"sTpl": ["constructSizeArray"],
|
19336
|
+
"mTpl": ["constructSizeArray"],
|
19337
|
+
"lTpl": ["constructSizeArray"],
|
19338
|
+
"xlTpl": ["constructSizeArray"],
|
19339
|
+
"xxlTpl": ["constructSizeArray"],
|
19340
|
+
"sSize": ["constructSizeArray"],
|
19341
|
+
"mSize": ["constructSizeArray"],
|
19342
|
+
"lSize": ["constructSizeArray"],
|
19343
|
+
"xlSize": ["constructSizeArray"],
|
19344
|
+
"sCols": ["constructSizeArray"],
|
19345
|
+
"mCols": ["constructSizeArray"],
|
19346
|
+
"lCols": ["constructSizeArray"],
|
19347
|
+
"xlCols": ["constructSizeArray"],
|
19348
|
+
"xxlCols": ["constructSizeArray"],
|
19349
|
+
"showHelper": ["constructSizeArray"]
|
19256
19350
|
}; }
|
19257
19351
|
static get style() { return gridCss; }
|
19258
19352
|
static get cmpMeta() { return {
|
19259
19353
|
"$flags$": 9,
|
19260
19354
|
"$tagName$": "nano-grid",
|
19261
19355
|
"$members$": {
|
19262
|
-
"sSize": [
|
19263
|
-
"mSize": [
|
19264
|
-
"lSize": [
|
19265
|
-
"xlSize": [
|
19356
|
+
"sSize": [8, "s-size"],
|
19357
|
+
"mSize": [8, "m-size"],
|
19358
|
+
"lSize": [8, "l-size"],
|
19359
|
+
"xlSize": [8, "xl-size"],
|
19266
19360
|
"sCols": [2, "s-cols"],
|
19267
19361
|
"mCols": [2, "m-cols"],
|
19268
19362
|
"lCols": [2, "l-cols"],
|
19269
19363
|
"xlCols": [2, "xl-cols"],
|
19270
19364
|
"xxlCols": [2, "xxl-cols"],
|
19365
|
+
"sTpl": [1, "s-tpl"],
|
19366
|
+
"mTpl": [1, "m-tpl"],
|
19367
|
+
"lTpl": [1, "l-tpl"],
|
19368
|
+
"xlTpl": [1, "xl-tpl"],
|
19369
|
+
"xxlTpl": [1, "xxl-tpl"],
|
19271
19370
|
"showHelper": [516, "show-helper"],
|
19272
|
-
"
|
19273
|
-
"fullHeight": [516, "full-height"],
|
19274
|
-
"ready": [32],
|
19275
|
-
"isSmall": [32],
|
19276
|
-
"isMedium": [32],
|
19277
|
-
"isLarge": [32],
|
19278
|
-
"isXL": [32],
|
19279
|
-
"isXXL": [32]
|
19371
|
+
"cacheKey": [32]
|
19280
19372
|
},
|
19281
19373
|
"$listeners$": undefined,
|
19282
19374
|
"$lazyBundleId$": "-",
|
19283
|
-
"$attrsToReflect$": [["showHelper", "show-helper"]
|
19375
|
+
"$attrsToReflect$": [["showHelper", "show-helper"]]
|
19284
19376
|
}; }
|
19285
19377
|
}
|
19378
|
+
__decorate([
|
19379
|
+
ConstructibleStyle({ cacheKeyProperty: 'cacheKey' }),
|
19380
|
+
__metadata("design:type", Object)
|
19381
|
+
], Grid.prototype, "styles", void 0);
|
19286
19382
|
|
19287
|
-
|
19288
|
-
|
19289
|
-
const STATEOPTS = ['col-span', 'col-start', 'row-span', 'row-start'];
|
19383
|
+
// import type { GridSizes } from '../../interface';
|
19384
|
+
// const STATEOPTS = ['col-span', 'col-start', 'row-span', 'row-start'];
|
19290
19385
|
/**
|
19386
|
+
* @deprecated - you can now use `grid-states="..."`
|
19387
|
+
* on any direct `nano-grid` descendent without limitation rendering `nano-grid-item` obsolete.
|
19388
|
+
*
|
19291
19389
|
* Grid items to be used with [grid](/story/nano-components-grid) elements
|
19292
19390
|
*/
|
19293
19391
|
class GridItem {
|
19294
19392
|
constructor(hostRef) {
|
19295
19393
|
registerInstance(this, hostRef);
|
19296
|
-
this.currGridSizes = [null];
|
19297
|
-
this.gridStates = '';
|
19298
|
-
}
|
19299
|
-
updateGridClasses() {
|
19300
|
-
this.applyChildrenClasses();
|
19301
19394
|
}
|
19302
19395
|
/**
|
19303
|
-
*
|
19304
|
-
*
|
19396
|
+
* How to position this item within it's parent grid at different break points. Examples:
|
19397
|
+
* xl-col-span-2
|
19398
|
+
* l-col-start-2
|
19399
|
+
* xxl-row-span-2
|
19400
|
+
* m-row-start-2
|
19305
19401
|
*/
|
19306
|
-
async changeBP(newGridSizes) {
|
19307
|
-
if (this.currGridSizes === newGridSizes)
|
19308
|
-
return;
|
19309
|
-
this.currGridSizes = newGridSizes;
|
19310
|
-
if (!this.gridStates.length)
|
19311
|
-
return;
|
19312
|
-
this.applyChildrenClasses();
|
19313
|
-
}
|
19314
|
-
applyChildrenClasses() {
|
19315
|
-
let stateArr = [''];
|
19316
|
-
let itemState = '';
|
19317
|
-
let found;
|
19318
|
-
let classes;
|
19319
|
-
// item states come in 4 possible flavours at every breakpoint. E.g.
|
19320
|
-
// xl-col-span-2
|
19321
|
-
// xl-col-start-2
|
19322
|
-
// xl-row-span-2
|
19323
|
-
// xl-row-start-2
|
19324
|
-
// clear all previous grid state classnames
|
19325
|
-
classes = this.el.className
|
19326
|
-
.split(' ')
|
19327
|
-
.filter((c) => !c.startsWith('nano-grid-'));
|
19328
|
-
this.el.className = classes.join(' ').trim();
|
19329
|
-
// get all potential states this element can have
|
19330
|
-
const itemStates = this.gridStates.split(' ');
|
19331
|
-
// loop through all potential state options: col & row span & start
|
19332
|
-
STATEOPTS.forEach((stateOpt) => {
|
19333
|
-
// reset found flag
|
19334
|
-
found = false;
|
19335
|
-
// loop through all the current valid breakpoints / sizes backwards because
|
19336
|
-
// we only care about the item's state at the largest current breakpoint.
|
19337
|
-
this.currGridSizes
|
19338
|
-
.slice()
|
19339
|
-
.reverse()
|
19340
|
-
.forEach((size) => {
|
19341
|
-
if (found || !size)
|
19342
|
-
return;
|
19343
|
-
found = itemStates.find((state) => state.indexOf(`${size.size}-${stateOpt}`) === 0);
|
19344
|
-
// found a state at this current size. apply class.
|
19345
|
-
if (found) {
|
19346
|
-
// clear previous grid state classname
|
19347
|
-
classes = this.el.className
|
19348
|
-
.split(' ')
|
19349
|
-
.filter((c) => !c.includes('nano-grid-${stateOpt}'));
|
19350
|
-
this.el.className = classes.join(' ').trim();
|
19351
|
-
stateArr = found.split('-');
|
19352
|
-
// remove the size of the state
|
19353
|
-
stateArr.shift();
|
19354
|
-
itemState = stateArr.join('-');
|
19355
|
-
// add new class
|
19356
|
-
this.el.classList.add(`nano-grid-${itemState}`);
|
19357
|
-
}
|
19358
|
-
});
|
19359
|
-
});
|
19360
|
-
}
|
19361
19402
|
render() {
|
19362
19403
|
return hAsync("slot", null);
|
19363
19404
|
}
|
19364
|
-
get
|
19365
|
-
static get watchers() { return {
|
19366
|
-
"gridStates": ["updateGridClasses"]
|
19367
|
-
}; }
|
19368
|
-
static get style() { return gridItemCss; }
|
19405
|
+
static get style() { return "/*!@:host*/.sc-nano-grid-item-h { display: inline-block; }"; }
|
19369
19406
|
static get cmpMeta() { return {
|
19370
19407
|
"$flags$": 9,
|
19371
19408
|
"$tagName$": "nano-grid-item",
|
19372
|
-
"$members$":
|
19373
|
-
"gridStates": [1, "grid-states"],
|
19374
|
-
"changeBP": [64]
|
19375
|
-
},
|
19409
|
+
"$members$": undefined,
|
19376
19410
|
"$listeners$": undefined,
|
19377
19411
|
"$lazyBundleId$": "-",
|
19378
19412
|
"$attrsToReflect$": []
|
19379
19413
|
}; }
|
19380
19414
|
}
|
19381
19415
|
|
19382
|
-
const heroCss = "/*!@:host*/.sc-nano-hero-h {\n box-sizing: border-box;\n}\n\n/*!@*,\n*::before,\n*::after*/*.sc-nano-hero, *.sc-nano-hero::before, *.sc-nano-hero::after {\n box-sizing: border-box;\n}\n/*!@[hidden]*/[hidden].sc-nano-hero {\n display: none !important;\n}\n\n/*!@:host*/.sc-nano-hero-h {\n \n display: block;\n --nano-loader-base: #4a4a4a;\n --nano-loader-tint: #7d7d7d;\n --theme-color: #fff;\n --theme-tint-color: #90c6e7;\n --scrim-color: 0 0 0;\n --scrim-direction: 90deg;\n --scrim-opacity-from: 0.25;\n --scrim-opacity-to: 0.7;\n --padding: 0;\n --quote-size: 1.3rem;\n color: var(--theme-color);\n}\n\n/*!@:host(.is-xl)*/.is-xl.sc-nano-hero-h {\n --quote-size: 3rem;\n}\n\n/*!@:host([theme=light])*/[theme=light].sc-nano-hero-h {\n --nano-loader-base: #fff;\n --nano-loader-tint: white;\n --theme-color: #4a4a4a;\n --scrim-color: 255 255 255;\n --scrim-opacity-from: 0.25;\n --scrim-opacity-to: 1;\n --scrim-direction: 270deg;\n color: var(--theme-color);\n}\n/*!@:host([theme=light]) .hero__primary-content*/[theme=light].sc-nano-hero-h .hero__primary-content.sc-nano-hero {\n --color: #4a4a4a;\n}\n\n/*!@.hero*/.hero.sc-nano-hero {\n position: relative;\n}\n/*!@.hero--rtl*/.hero--rtl.sc-nano-hero {\n --scrim-direction: 270deg;\n}\n/*!@.hero--secondary:not(.hero--iconbox)*/.hero--secondary.sc-nano-hero:not(.hero--iconbox) {\n --scrim-direction: 0deg;\n}\n/*!@.hero__bg-wrap*/.hero__bg-wrap.sc-nano-hero {\n overflow: hidden;\n}\n/*!@.hero__bg-slot*/.hero__bg-slot.sc-nano-hero {\n position: absolute;\n inset: 0;\n}\n/*!@.hero__ctas*/.hero__ctas.sc-nano-hero {\n display: flex;\n justify-content: flex-end;\n padding-block: 32px 0;\n padding-inline: 32px;\n -webkit-margin-after: -64px;\n margin-block-end: -64px;\n position: relative;\n z-index: 1;\n}\n@media (max-width: 52em) {\n /*!@.hero__ctas*/.hero__ctas.sc-nano-hero {\n display: none;\n }\n}\n@media (max-width: 58em) {\n /*!@.hero__ctas*/.hero__ctas.sc-nano-hero {\n -webkit-margin-after: -48px;\n margin-block-end: -48px;\n }\n}\n/*!@.hero__ctas ::slotted(a.button[slot=secondary-ctas])*/.hero__ctas .sc-nano-hero-s > a.button[slot=secondary-ctas] {\n padding-block: 0.25rem !important;\n padding-inline: 0.5rem !important;\n font-size: 0.875rem !important;\n margin-block: 0 !important;\n margin-inline: 0.25rem !important;\n}\n/*!@.hero__img*/.hero__img.sc-nano-hero {\n display: block;\n container-type: inline-size;\n --padding: inherit;\n}\n/*!@.hero__breadcrumbs*/.hero__breadcrumbs.sc-nano-hero {\n display: none;\n margin-block: 20px 0;\n margin-inline: 14px;\n line-height: 14px;\n}\n/*!@.hero--breadcrumb .hero__breadcrumbs*/.hero--breadcrumb.sc-nano-hero .hero__breadcrumbs.sc-nano-hero {\n display: block;\n}\n/*!@.is-xl .hero__breadcrumbs*/.is-xl.sc-nano-hero .hero__breadcrumbs.sc-nano-hero {\n margin-block: 0;\n margin-inline: 50px;\n max-inline-size: 50%;\n}\n@container (min-width: 800px) {\n .hero__breadcrumbs {\n margin-block: 0;\n margin-inline: 50px;\n max-inline-size: 50%;\n }\n}\n/*!@.is-xxl .hero__breadcrumbs*/.is-xxl.sc-nano-hero .hero__breadcrumbs.sc-nano-hero {\n margin-block: 0;\n margin-inline: 83px;\n}\n@container (min-width: 900px) {\n .hero__breadcrumbs {\n margin-block: 0;\n margin-inline: 83px;\n }\n}\n/*!@.hero__breadcrumbs ::slotted(*[slot=breadcrumb])*/.hero__breadcrumbs .sc-nano-hero-s > *[slot=breadcrumb] {\n font-size: 0.85rem;\n text-transform: uppercase;\n letter-spacing: 1.5px;\n font-weight: 600;\n font-stretch: 125%;\n display: inline-block;\n -webkit-margin-after: 16px;\n margin-block-end: 16px;\n position: relative;\n z-index: 2;\n}\n/*!@.hero--hasbg .hero__breadcrumbs ::slotted(*[slot=breadcrumb])*/.hero--hasbg .hero__breadcrumbs .sc-nano-hero-s > *[slot=breadcrumb] {\n text-shadow: 1px 1px rgba(0, 0, 0, 0.15);\n}\n/*!@.hero__breadcrumbs ::slotted(a[slot=breadcrumb])*/.hero__breadcrumbs .sc-nano-hero-s > a[slot=breadcrumb] {\n color: var(--theme-tint-color) !important;\n cursor: pointer;\n}\n/*!@.hero__breadcrumbs ::slotted(.slash[slot=breadcrumb])*/.hero__breadcrumbs .sc-nano-hero-s > .slash[slot=breadcrumb] {\n color: var(--theme-color);\n position: relative;\n margin-block: 0;\n margin-inline: 0.5rem;\n display: inline-block;\n}\n/*!@.hero__scrim*/.hero__scrim.sc-nano-hero {\n position: absolute;\n inset: 0;\n z-index: 0;\n background: linear-gradient(var(--scrim-direction), rgb(var(--scrim-color)/var(--scrim-opacity-from)) 0%, rgb(var(--scrim-color)/var(--scrim-opacity-to)) 100%);\n}\n/*!@.hero--scrim .hero__scrim*/.hero--scrim.sc-nano-hero .hero__scrim.sc-nano-hero {\n background: none;\n}\n/*!@.hero__content*/.hero__content.sc-nano-hero {\n max-inline-size: 1440px;\n display: block;\n --grid-row-gap: 0;\n margin-block: 0;\n margin-inline: auto;\n position: relative;\n}\n/*!@.hero__content.is-xl*/.hero__content.is-xl.sc-nano-hero {\n -webkit-margin-before: 50px;\n margin-block-start: 50px;\n max-inline-size: 1540px;\n}\n@container (min-width: 800px) {\n .hero__content {\n margin-block: 50px 0 !important;\n max-inline-size: 1540px !important;\n }\n}\n/*!@.hero__content.is-xxl*/.hero__content.is-xxl.sc-nano-hero {\n -webkit-margin-before: 83px;\n margin-block-start: 83px;\n max-inline-size: 1606px;\n}\n@container (min-width: 900px) {\n .hero__content {\n margin-block: 83px 0 !important;\n max-inline-size: 1606px !important;\n }\n}\n/*!@.hero__primary*/.hero__primary.sc-nano-hero {\n margin: 16px;\n}\n/*!@.hero--breadcrumb .hero__primary*/.hero--breadcrumb.sc-nano-hero .hero__primary.sc-nano-hero {\n margin-block: 0;\n margin-inline: 16px;\n}\n/*!@.hero--backbtn .hero__primary*/.hero--backbtn.sc-nano-hero .hero__primary.sc-nano-hero {\n -webkit-margin-start: 0;\n margin-inline-start: 0;\n}\n/*!@.hero__primary ::slotted(nano-icon-button[slot=back-btn])*/.hero__primary .sc-nano-hero-s > nano-icon-button[slot=back-btn] {\n font-size: 2rem;\n}\n/*!@.is-xl .hero__primary*/.is-xl.sc-nano-hero .hero__primary.sc-nano-hero {\n margin-block: 0 50px;\n margin-inline: 50px 0;\n}\n/*!@.is-xl .hero__primary ::slotted(nano-icon-button[slot=back-btn])*/.is-xl .hero__primary .sc-nano-hero-s > nano-icon-button[slot=back-btn] {\n margin-block: 0;\n margin-inline: -3rem 0;\n}\n@container (min-width: 800px) {\n .hero__primary {\n margin-block: 0 50px !important;\n margin-inline: 50px 0 !important;\n }\n .hero__primary.sc-nano-hero-s > nano-icon-button[slot=back-btn], \n .hero__primary .sc-nano-hero-s > nano-icon-button[slot=back-btn] {\n margin-block: 0 !important;\n margin-inline: -3rem 0 !important;\n }\n}\n/*!@.is-xxl .hero__primary*/.is-xxl.sc-nano-hero .hero__primary.sc-nano-hero {\n margin-block: 0 83px !important;\n margin-inline: 83px 0 !important;\n}\n@container (min-width: 900px) {\n .hero__primary {\n margin-block: 0 83px !important;\n margin-inline: 83px 0 !important;\n }\n}\n/*!@.hero__primary-content*/.hero__primary-content.sc-nano-hero {\n max-inline-size: 45rem;\n --color: #fff;\n display: flex;\n}\n/*!@.hero--backbtn .hero__primary-content > div*/.hero--backbtn.sc-nano-hero .hero__primary-content.sc-nano-hero > div.sc-nano-hero {\n padding-block: 10px 0;\n padding-inline: 0;\n}\n/*!@.hero__primary-content ::slotted(h1[slot=primary-content])*/.hero__primary-content .sc-nano-hero-s > h1[slot=primary-content] {\n line-height: 26px !important;\n margin-block: 0 18px !important;\n font-size: 2rem !important;\n}\n/*!@.is-xl .hero__primary-content ::slotted(h1[slot=primary-content])*/.is-xl .hero__primary-content .sc-nano-hero-s > h1[slot=primary-content] {\n line-height: 31px !important;\n -webkit-margin-after: 30px !important;\n margin-block-end: 30px !important;\n}\n/*!@.is-xl .hero__primary-content ::slotted(.button[slot=primary-content])*/.is-xl .hero__primary-content .sc-nano-hero-s > .button[slot=primary-content] {\n -webkit-margin-before: 20px !important;\n margin-block-start: 20px !important;\n}\n@container (min-width: 800px) {\n .hero__primary-content.sc-nano-hero-s > h1[slot=primary-content], \n@container (min-width: 800px) {\n .hero__primary-content .sc-nano-hero-s > h1[slot=primary-content] {\n line-height: 31px !important;\n -webkit-margin-after: 30px !important;\n margin-block-end: 30px !important;\n }\n .hero__primary-content.sc-nano-hero-s > .button[slot=primary-content], \n .hero__primary-content .sc-nano-hero-s > .button[slot=primary-content] {\n -webkit-margin-before: 20px !important;\n margin-block-start: 20px !important;\n }\n}\n/*!@.hero__secondary*/.hero__secondary.sc-nano-hero {\n display: none;\n block-size: 100%;\n padding-block: 0 20px;\n padding-inline: 14px;\n}\n/*!@.hero--secondary .hero__secondary*/.hero--secondary.sc-nano-hero .hero__secondary.sc-nano-hero {\n display: flex;\n align-items: center;\n}\n/*!@.is-xl .hero__secondary*/.is-xl.sc-nano-hero .hero__secondary.sc-nano-hero {\n padding-block: 0 50px;\n padding-inline: 50px;\n justify-content: flex-end;\n}\n@container (min-width: 800px) {\n .hero__secondary {\n padding-block: 0 50px;\n padding-inline: 50px;\n justify-content: flex-end;\n }\n}\n/*!@.is-xxl .hero__secondary*/.is-xxl.sc-nano-hero .hero__secondary.sc-nano-hero {\n padding-block: 0 83px;\n padding-inline: 83px;\n}\n@container (min-width: 900px) {\n .hero__secondary {\n padding-block: 0 83px;\n padding-inline: 83px;\n }\n}\n/*!@.hero__icon-box*/.hero__icon-box.sc-nano-hero {\n background: rgba(0, 0, 0, 0.7);\n padding: 24px;\n inline-size: 100%;\n -webkit-margin-after: auto;\n margin-block-end: auto;\n display: flex;\n flex-direction: column;\n color: white;\n}\n/*!@.is-xl .hero__icon-box*/.is-xl.sc-nano-hero .hero__icon-box.sc-nano-hero {\n max-inline-size: 410px;\n flex: 0 1 410px;\n}\n/*!@.hero__icon-box ::slotted([slot=icon-box-item])*/.hero__icon-box .sc-nano-hero-s > [slot=icon-box-item] {\n --nano-color-base: var(--theme-tint-color);\n --nano-icon-size: 32px;\n --nano-icon-margin-end: 20px;\n display: flex;\n align-items: center;\n font-size: 0.8125rem;\n -webkit-margin-after: 20px;\n margin-block-end: 20px;\n}\n/*!@.hero__icon-box ::slotted(.last[slot=icon-box-item])*/.hero__icon-box .sc-nano-hero-s > .last[slot=icon-box-item] {\n -webkit-margin-after: 0;\n margin-block-end: 0;\n}\n/*!@.hero__quote-content*/.hero__quote-content.sc-nano-hero {\n -webkit-margin-before: auto;\n margin-block-start: auto;\n text-align: center;\n inline-size: 100%;\n}\n/*!@.is-xl .hero__quote-content*/.is-xl.sc-nano-hero .hero__quote-content.sc-nano-hero {\n max-inline-size: 500px;\n flex: 0 1 500px;\n text-align: initial;\n}\n@container (min-width: 800px) {\n .hero__quote-content {\n max-inline-size: 500px;\n flex: 0 1 500px;\n text-align: initial;\n }\n}\n/*!@.hero__quote::before, .hero__quote::after*/.hero__quote.sc-nano-hero::before, .hero__quote.sc-nano-hero::after {\n content: '\"';\n font-size: var(--quote-size);\n font-weight: 700;\n font-style: italic;\n line-height: 0;\n color: #abb6b8;\n display: inline;\n position: relative;\n}\n/*!@.hero__quote ::slotted([slot=quote])*/.hero__quote .sc-nano-hero-s > [slot=quote] {\n font-size: var(--quote-size);\n font-weight: 300;\n font-style: italic;\n display: inline;\n}\n/*!@.hero__quote-author*/.hero__quote-author.sc-nano-hero {\n text-align: end;\n font-size: 1rem;\n opacity: 0.8;\n}\n/*!@.hero--sub .hero__content.is-xl*/.hero--sub.sc-nano-hero .hero__content.is-xl.sc-nano-hero {\n -webkit-margin-before: 40px;\n margin-block-start: 40px;\n}\n/*!@.hero--sub .hero__content.is-xl .hero__primary*/.hero--sub.sc-nano-hero .hero__content.is-xl.sc-nano-hero .hero__primary.sc-nano-hero {\n margin-block: 0 40px;\n margin-inline: 50px 0;\n}\n/*!@.hero--sub .hero__content.is-xl .hero__secondary*/.hero--sub.sc-nano-hero .hero__content.is-xl.sc-nano-hero .hero__secondary.sc-nano-hero {\n padding-block: 0 50px;\n padding-inline: 40px 50px;\n}\n/*!@.hero--sub .hero__content.is-xl ::slotted(.button[slot=primary-content])*/.hero--sub .hero__content.is-xl .sc-nano-hero-s > .button[slot=primary-content] {\n -webkit-margin-before: 8px !important;\n margin-block-start: 8px !important;\n}\n/*!@.hero--sub .hero__content.is-xl ::slotted(h1[slot=primary-content])*/.hero--sub .hero__content.is-xl .sc-nano-hero-s > h1[slot=primary-content] {\n -webkit-margin-after: 18px !important;\n margin-block-end: 18px !important;\n}\n/*!@.hero--sub .hero__content.is-xxl .hero__primary*/.hero--sub.sc-nano-hero .hero__content.is-xxl.sc-nano-hero .hero__primary.sc-nano-hero {\n margin-block: 0 40px;\n margin-inline: 83px 0;\n}\n/*!@.hero--sub .hero__content.is-xxl .hero__secondary*/.hero--sub.sc-nano-hero .hero__content.is-xxl.sc-nano-hero .hero__secondary.sc-nano-hero {\n padding-block: 0 83px;\n padding-inline: 40px 83px;\n}";
|
19416
|
+
const heroCss = "/*!@:host*/.sc-nano-hero-h {\n box-sizing: border-box;\n}\n\n/*!@*,\n*::before,\n*::after*/*.sc-nano-hero, *.sc-nano-hero::before, *.sc-nano-hero::after {\n box-sizing: border-box;\n}\n/*!@[hidden]*/[hidden].sc-nano-hero {\n display: none !important;\n}\n\n/*!@:host*/.sc-nano-hero-h {\n \n --nano-loader-base: #4a4a4a;\n --nano-loader-tint: #7d7d7d;\n --theme-color: #fff;\n --theme-tint-color: #90c6e7;\n --scrim-color: 0 0 0;\n --scrim-direction: 90deg;\n --scrim-opacity-from: 0.25;\n --scrim-opacity-to: 0.7;\n --padding: 0;\n --quote-size: 1.3rem;\n color: var(--theme-color);\n display: block;\n container-type: inline-size;\n}\n\n/*!@:host([theme=light])*/[theme=light].sc-nano-hero-h {\n --nano-loader-base: #fff;\n --nano-loader-tint: white;\n --theme-color: #4a4a4a;\n --scrim-color: 255 255 255;\n --scrim-opacity-from: 0.25;\n --scrim-opacity-to: 1;\n --scrim-direction: 270deg;\n color: var(--theme-color);\n}\n/*!@:host([theme=light]) .hero__primary-content*/[theme=light].sc-nano-hero-h .hero__primary-content.sc-nano-hero {\n --color: #4a4a4a;\n}\n\n/*!@.hero*/.hero.sc-nano-hero {\n position: relative;\n}\n@container (min-width: 800px) {\n .hero {\n --quote-size: 3rem;\n }\n}\n/*!@.hero--rtl*/.hero--rtl.sc-nano-hero {\n --scrim-direction: 270deg;\n}\n/*!@.hero--secondary:not(.hero--iconbox)*/.hero--secondary.sc-nano-hero:not(.hero--iconbox) {\n --scrim-direction: 0deg;\n}\n/*!@.hero__bg-wrap*/.hero__bg-wrap.sc-nano-hero {\n overflow: hidden;\n}\n/*!@.hero__bg-slot*/.hero__bg-slot.sc-nano-hero {\n position: absolute;\n inset: 0;\n}\n/*!@.hero__ctas*/.hero__ctas.sc-nano-hero {\n display: flex;\n justify-content: flex-end;\n padding-block: 32px 0;\n padding-inline: 32px;\n -webkit-margin-after: -64px;\n margin-block-end: -64px;\n position: relative;\n z-index: 1;\n}\n@media (max-width: 52em) {\n /*!@.hero__ctas*/.hero__ctas.sc-nano-hero {\n display: none;\n }\n}\n@media (max-width: 58em) {\n /*!@.hero__ctas*/.hero__ctas.sc-nano-hero {\n -webkit-margin-after: -48px;\n margin-block-end: -48px;\n }\n}\n/*!@.hero__ctas ::slotted(a.button[slot=secondary-ctas])*/.hero__ctas .sc-nano-hero-s > a.button[slot=secondary-ctas] {\n padding-block: 0.25rem !important;\n padding-inline: 0.5rem !important;\n font-size: 0.875rem !important;\n margin-block: 0 !important;\n margin-inline: 0.25rem !important;\n}\n/*!@.hero__img*/.hero__img.sc-nano-hero {\n display: block;\n --padding: inherit;\n}\n/*!@.hero__breadcrumbs*/.hero__breadcrumbs.sc-nano-hero {\n display: none;\n margin-block: 20px 0;\n margin-inline: 14px;\n line-height: 14px;\n}\n/*!@.hero--breadcrumb .hero__breadcrumbs*/.hero--breadcrumb.sc-nano-hero .hero__breadcrumbs.sc-nano-hero {\n display: block;\n}\n@container (min-width: 800px) {\n .hero__breadcrumbs {\n margin-block: 0;\n margin-inline: 50px;\n max-inline-size: 50%;\n }\n}\n@container (min-width: 900px) {\n .hero__breadcrumbs {\n margin-block: 0;\n margin-inline: 83px;\n }\n}\n/*!@.hero__breadcrumbs ::slotted(*[slot=breadcrumb])*/.hero__breadcrumbs .sc-nano-hero-s > *[slot=breadcrumb] {\n font-size: 0.85rem;\n text-transform: uppercase;\n letter-spacing: 1.5px;\n font-weight: 600;\n font-stretch: 125%;\n display: inline-block;\n -webkit-margin-after: 16px;\n margin-block-end: 16px;\n position: relative;\n z-index: 2;\n}\n/*!@.hero--hasbg .hero__breadcrumbs ::slotted(*[slot=breadcrumb])*/.hero--hasbg .hero__breadcrumbs .sc-nano-hero-s > *[slot=breadcrumb] {\n text-shadow: 1px 1px rgba(0, 0, 0, 0.15);\n}\n/*!@.hero__breadcrumbs ::slotted(a[slot=breadcrumb])*/.hero__breadcrumbs .sc-nano-hero-s > a[slot=breadcrumb] {\n color: var(--theme-tint-color) !important;\n cursor: pointer;\n}\n/*!@.hero__breadcrumbs ::slotted(.slash[slot=breadcrumb])*/.hero__breadcrumbs .sc-nano-hero-s > .slash[slot=breadcrumb] {\n color: var(--theme-color);\n position: relative;\n margin-block: 0;\n margin-inline: 0.5rem;\n display: inline-block;\n}\n/*!@.hero__scrim*/.hero__scrim.sc-nano-hero {\n position: absolute;\n inset: 0;\n z-index: 0;\n background: linear-gradient(var(--scrim-direction), rgb(var(--scrim-color)/var(--scrim-opacity-from)) 0%, rgb(var(--scrim-color)/var(--scrim-opacity-to)) 100%);\n}\n/*!@.hero--scrim .hero__scrim*/.hero--scrim.sc-nano-hero .hero__scrim.sc-nano-hero {\n background: none;\n}\n/*!@.hero__content*/.hero__content.sc-nano-hero {\n max-inline-size: 1440px;\n display: block;\n --grid-row-gap: 0;\n margin-block: 0;\n margin-inline: auto;\n position: relative;\n}\n@container (min-width: 800px) {\n .hero__content {\n margin-block: 50px 0 !important;\n max-inline-size: 1540px !important;\n }\n}\n@container (min-width: 900px) {\n .hero__content {\n margin-block: 83px 0 !important;\n max-inline-size: 1606px !important;\n }\n}\n/*!@.hero__primary*/.hero__primary.sc-nano-hero {\n margin: 16px;\n}\n/*!@.hero--breadcrumb .hero__primary*/.hero--breadcrumb.sc-nano-hero .hero__primary.sc-nano-hero {\n margin-block: 0;\n margin-inline: 16px;\n}\n/*!@.hero--backbtn .hero__primary*/.hero--backbtn.sc-nano-hero .hero__primary.sc-nano-hero {\n -webkit-margin-start: 0;\n margin-inline-start: 0;\n}\n/*!@.hero__primary ::slotted(nano-icon-button[slot=back-btn])*/.hero__primary .sc-nano-hero-s > nano-icon-button[slot=back-btn] {\n font-size: 2rem;\n}\n@container (min-width: 800px) {\n .hero__primary {\n margin-block: 0 50px !important;\n margin-inline: 50px 0 !important;\n }\n .hero__primary.sc-nano-hero-s > nano-icon-button[slot=back-btn], \n .hero__primary .sc-nano-hero-s > nano-icon-button[slot=back-btn] {\n margin-block: 0 !important;\n margin-inline: -3rem 0 !important;\n }\n}\n@container (min-width: 900px) {\n .hero__primary {\n margin-block: 0 83px !important;\n margin-inline: 83px 0 !important;\n }\n}\n/*!@.hero__primary-content*/.hero__primary-content.sc-nano-hero {\n max-inline-size: 45rem;\n --color: #fff;\n display: flex;\n}\n/*!@.hero--backbtn .hero__primary-content > div*/.hero--backbtn.sc-nano-hero .hero__primary-content.sc-nano-hero > div.sc-nano-hero {\n padding-block: 10px 0;\n padding-inline: 0;\n}\n/*!@.hero__primary-content ::slotted(h1[slot=primary-content])*/.hero__primary-content .sc-nano-hero-s > h1[slot=primary-content] {\n line-height: 26px !important;\n margin-block: 0 18px !important;\n font-size: 2rem !important;\n}\n@container (min-width: 800px) {\n .hero__primary-content.sc-nano-hero-s > h1[slot=primary-content], \n@container (min-width: 800px) {\n .hero__primary-content .sc-nano-hero-s > h1[slot=primary-content] {\n line-height: 31px !important;\n -webkit-margin-after: 30px !important;\n margin-block-end: 30px !important;\n }\n .hero__primary-content.sc-nano-hero-s > .button[slot=primary-content], \n .hero__primary-content .sc-nano-hero-s > .button[slot=primary-content] {\n -webkit-margin-before: 20px !important;\n margin-block-start: 20px !important;\n }\n}\n/*!@.hero__secondary*/.hero__secondary.sc-nano-hero {\n display: none;\n block-size: 100%;\n padding-block: 0 20px;\n padding-inline: 14px;\n}\n/*!@.hero--secondary .hero__secondary*/.hero--secondary.sc-nano-hero .hero__secondary.sc-nano-hero {\n display: flex;\n align-items: center;\n}\n@container (min-width: 800px) {\n .hero__secondary {\n padding-block: 0 50px;\n padding-inline: 50px;\n justify-content: flex-end;\n }\n}\n@container (min-width: 900px) {\n .hero__secondary {\n padding-block: 0 83px;\n padding-inline: 83px;\n }\n}\n/*!@.hero__icon-box*/.hero__icon-box.sc-nano-hero {\n background: rgba(0, 0, 0, 0.7);\n padding: 24px;\n inline-size: 100%;\n -webkit-margin-after: auto;\n margin-block-end: auto;\n display: flex;\n flex-direction: column;\n color: white;\n}\n@container (min-width: 800px) {\n .hero__icon-box {\n max-inline-size: 410px;\n flex: 0 1 410px;\n }\n}\n/*!@.hero__icon-box ::slotted([slot=icon-box-item])*/.hero__icon-box .sc-nano-hero-s > [slot=icon-box-item] {\n --nano-color-base: var(--theme-tint-color);\n --nano-icon-size: 32px;\n --nano-icon-margin-end: 20px;\n display: flex;\n align-items: center;\n font-size: 0.8125rem;\n -webkit-margin-after: 20px;\n margin-block-end: 20px;\n}\n/*!@.hero__icon-box ::slotted(.last[slot=icon-box-item])*/.hero__icon-box .sc-nano-hero-s > .last[slot=icon-box-item] {\n -webkit-margin-after: 0;\n margin-block-end: 0;\n}\n/*!@.hero__quote-content*/.hero__quote-content.sc-nano-hero {\n -webkit-margin-before: auto;\n margin-block-start: auto;\n text-align: center;\n inline-size: 100%;\n}\n@container (min-width: 800px) {\n .hero__quote-content {\n max-inline-size: 500px;\n flex: 0 1 500px;\n text-align: initial;\n }\n}\n/*!@.hero__quote::before, .hero__quote::after*/.hero__quote.sc-nano-hero::before, .hero__quote.sc-nano-hero::after {\n content: '\"';\n font-size: var(--quote-size);\n font-weight: 700;\n font-style: italic;\n line-height: 0;\n color: #abb6b8;\n display: inline;\n position: relative;\n}\n/*!@.hero__quote ::slotted([slot=quote])*/.hero__quote .sc-nano-hero-s > [slot=quote] {\n font-size: var(--quote-size);\n font-weight: 300;\n font-style: italic;\n display: inline;\n}\n/*!@.hero__quote-author*/.hero__quote-author.sc-nano-hero {\n text-align: end;\n font-size: 1rem;\n opacity: 0.8;\n}\n@container (min-width: 800px) {\n .hero--sub .hero__content {\n -webkit-margin-before: 40px;\n margin-block-start: 40px;\n }\n .hero--sub .hero__content .hero__primary {\n margin-block: 0 40px;\n margin-inline: 50px 0;\n }\n .hero--sub .hero__content .hero__secondary {\n padding-block: 0 50px;\n padding-inline: 40px 50px;\n }\n .hero--sub .hero__content.sc-nano-hero-s > .button[slot=primary-content], \n .hero--sub .hero__content .sc-nano-hero-s > .button[slot=primary-content] {\n -webkit-margin-before: 8px !important;\n margin-block-start: 8px !important;\n }\n .hero--sub .hero__content.sc-nano-hero-s > h1[slot=primary-content], \n .hero--sub .hero__content .sc-nano-hero-s > h1[slot=primary-content] {\n -webkit-margin-after: 18px !important;\n margin-block-end: 18px !important;\n }\n}\n@container (min-width: 900px) {\n .hero--sub .hero__content .hero__primary {\n margin-block: 0 40px;\n margin-inline: 83px 0;\n }\n .hero--sub .hero__content .hero__secondary {\n padding-block: 0 83px;\n padding-inline: 40px 83px;\n }\n}";
|
19383
19417
|
|
19384
19418
|
/**
|
19385
19419
|
* Hero components are designed to be used once per content page to add visual impact to the introductory section of a page.
|
@@ -19398,19 +19432,15 @@ const heroCss = "/*!@:host*/.sc-nano-hero-h {\n box-sizing: border-box;\n}\n\n/
|
|
19398
19432
|
class Hero {
|
19399
19433
|
constructor(hostRef) {
|
19400
19434
|
registerInstance(this, hostRef);
|
19401
|
-
this.handleGridChange = (e) => {
|
19402
|
-
this.gridSizes = e.detail;
|
19403
|
-
};
|
19404
19435
|
this.HeroContent = () => {
|
19405
19436
|
return [
|
19406
19437
|
!this.hasIconBox && this.hasCtas ? (hAsync("div", { class: "hero__ctas" }, hAsync("slot", { name: "secondary-ctas" }))) : (''),
|
19407
19438
|
hAsync("div", { class: "hero__scrim" }, hAsync("slot", { name: "scrim" })),
|
19408
|
-
hAsync("nano-grid", {
|
19439
|
+
hAsync("nano-grid", { class: "hero__content", xlCols: 2, xlSize: this.largeScreenBP }, hAsync("div", { "grid-states": "xl-col-span-2" }, hAsync("div", { class: "hero__breadcrumbs" }, hAsync("slot", { name: "breadcrumb" }))), hAsync("div", { "grid-states": this.hasSecondaryContent
|
19409
19440
|
? 'xl-col-span-1 xl-col-start-1 xl-row-start-2'
|
19410
|
-
: 'xl-col-span-2 xl-col-start-1 xl-row-start-2' }, hAsync("div", { class: "hero__primary" }, hAsync("div", { class: "hero__primary-content" }, hAsync("slot", { name: "back-btn" }), hAsync("div", null, hAsync("slot", { name: "primary-content" }))))), this.hasSecondaryContent && (hAsync("
|
19441
|
+
: 'xl-col-span-2 xl-col-start-1 xl-row-start-2' }, hAsync("div", { class: "hero__primary" }, hAsync("div", { class: "hero__primary-content" }, hAsync("slot", { name: "back-btn" }), hAsync("div", null, hAsync("slot", { name: "primary-content" }))))), this.hasSecondaryContent && (hAsync("div", { "grid-states": "xl-col-span-1 xl-col-start-2 xl-row-start-2" }, hAsync("div", { class: "hero__secondary" }, hAsync("slot", { name: "secondary-content" }), this.hasIconBox && (hAsync("div", { class: "hero__icon-box" }, hAsync("slot", { name: "icon-box" }), hAsync("slot", { name: "icon-box-item" }))), this.hasQuote && (hAsync("div", { class: "hero__quote-content" }, hAsync("span", { class: "hero__quote" }, hAsync("slot", { name: "quote" })), hAsync("div", { class: "hero__quote-author" }, hAsync("slot", { name: "quote-author" })))))))),
|
19411
19442
|
];
|
19412
19443
|
};
|
19413
|
-
this.gridSizes = [];
|
19414
19444
|
this.hasIconBox = undefined;
|
19415
19445
|
this.hasScrim = undefined;
|
19416
19446
|
this.hasSecondaryContent = undefined;
|
@@ -19482,9 +19512,7 @@ class Hero {
|
|
19482
19512
|
render() {
|
19483
19513
|
const rtl = this.host.dir === 'rtl' ||
|
19484
19514
|
this.host.ownerDocument.dir === 'rtl';
|
19485
|
-
return (hAsync(Host, { class: {
|
19486
|
-
[this.gridSizes.join(' ')]: true,
|
19487
|
-
} }, hAsync("div", { class: {
|
19515
|
+
return (hAsync(Host, null, hAsync("div", { class: {
|
19488
19516
|
hero: true,
|
19489
19517
|
'hero--light': this.theme === 'light',
|
19490
19518
|
'hero--secondary': this.hasSecondaryContent,
|
@@ -19515,7 +19543,6 @@ class Hero {
|
|
19515
19543
|
"largeScreenBP": [2, "large-screen-b-p"],
|
19516
19544
|
"theme": [1],
|
19517
19545
|
"level": [1],
|
19518
|
-
"gridSizes": [32],
|
19519
19546
|
"hasIconBox": [32],
|
19520
19547
|
"hasScrim": [32],
|
19521
19548
|
"hasSecondaryContent": [32],
|
@@ -19650,7 +19677,7 @@ class Icon {
|
|
19650
19677
|
}; }
|
19651
19678
|
}
|
19652
19679
|
|
19653
|
-
const iconButtonCss = "
|
19680
|
+
const iconButtonCss = "/*!@:host*/.sc-nano-icon-button-h{box-sizing:border-box}/*!@*,\n*::before,\n*::after*/*.sc-nano-icon-button,*.sc-nano-icon-button::before,*.sc-nano-icon-button::after{box-sizing:border-box}/*!@[hidden]*/[hidden].sc-nano-icon-button{display:none !important}/*!@:host*/.sc-nano-icon-button-h{--border-radius:var(--nano-border-radius-medium, 4px);--active-color:#005c75;--hover-color:#007495;--nano-color-base:var(--color, #687576);--background:transparent;--padding:var(--nano-spacing-small, 8px);--box-shadow:none;border-radius:var(--border-radius);display:inline-block}/*!@.icon-button*/.icon-button.sc-nano-icon-button{flex:0 0 auto;display:flex;align-items:center;border:none;border-radius:inherit;background:var(--background);font-size:inherit;color:var(--color);padding:var(--padding);cursor:pointer;-webkit-appearance:none;appearance:none;transition:box-shadow var(--nano-transition-fast, 0.1s) ease-in-out;box-shadow:var(--box-shadow)}/*!@.icon-button:hover:not(.icon-button--disabled), .icon-button:focus:not(.icon-button--disabled)*/.icon-button.sc-nano-icon-button:hover:not(.icon-button--disabled),.icon-button.sc-nano-icon-button:focus:not(.icon-button--disabled){color:var(--hover-color);--nano-color-base:var(--hover-color)}/*!@.icon-button:active:not(.icon-button--disabled)*/.icon-button.sc-nano-icon-button:active:not(.icon-button--disabled){color:var(--active-color);--nano-color-base:var(--active-color)}/*!@.icon-button:focus*/.icon-button.sc-nano-icon-button:focus{outline:none}/*!@.icon-button__label*/.icon-button__label.sc-nano-icon-button{clip:rect(1px, 1px, 1px, 1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);block-size:1px;inline-size:1px;margin:-1px;overflow:hidden;padding:0;position:absolute}/*!@.icon-button--disabled*/.icon-button--disabled.sc-nano-icon-button{opacity:0.5;cursor:not-allowed;pointer-events:none}/*!@.focus-visible.icon-button:focus*/.focus-visible.icon-button.sc-nano-icon-button:focus{box-shadow:var(--nano-control-focus-shadow, 0 0 0 0.1875rem var(--nano-control-focus-color, rgba(144, 198, 231, 0.8)))}";
|
19654
19681
|
|
19655
19682
|
/** Icons buttons are simple, icon-only buttons that can be used for actions and in toolbars.
|
19656
19683
|
*
|
@@ -19660,6 +19687,20 @@ const iconButtonCss = ".sc-nano-icon-button-h{box-sizing:border-box}*.sc-nano-ic
|
|
19660
19687
|
class IconButton {
|
19661
19688
|
constructor(hostRef) {
|
19662
19689
|
registerInstance(this, hostRef);
|
19690
|
+
this.handleClick = (ev) => {
|
19691
|
+
if (this.type === 'button')
|
19692
|
+
return;
|
19693
|
+
const formEl = this.findForm();
|
19694
|
+
if (formEl) {
|
19695
|
+
ev.preventDefault();
|
19696
|
+
const fakeButton = document.createElement('button');
|
19697
|
+
fakeButton.type = this.type;
|
19698
|
+
fakeButton.style.display = 'none';
|
19699
|
+
formEl.appendChild(fakeButton);
|
19700
|
+
fakeButton.click();
|
19701
|
+
fakeButton.remove();
|
19702
|
+
}
|
19703
|
+
};
|
19663
19704
|
this.iconName = undefined;
|
19664
19705
|
this.iconSrc = undefined;
|
19665
19706
|
this.type = 'button';
|
@@ -19669,12 +19710,34 @@ class IconButton {
|
|
19669
19710
|
this.showTooltip = false;
|
19670
19711
|
this.disabled = false;
|
19671
19712
|
this.href = undefined;
|
19713
|
+
this.rel = undefined;
|
19672
19714
|
this.target = undefined;
|
19715
|
+
this.form = undefined;
|
19673
19716
|
}
|
19674
19717
|
/** Sets focus on the internal button */
|
19675
19718
|
async setFocus() {
|
19676
19719
|
this.button.focus();
|
19677
19720
|
}
|
19721
|
+
/**
|
19722
|
+
* Finds the form element based on the provided `form` selector
|
19723
|
+
* or element reference provided.
|
19724
|
+
* @returns the found form element (if found)
|
19725
|
+
*/
|
19726
|
+
findForm() {
|
19727
|
+
const { form, host } = this;
|
19728
|
+
if (!form)
|
19729
|
+
return host.closest('form');
|
19730
|
+
if (form instanceof HTMLFormElement) {
|
19731
|
+
return form;
|
19732
|
+
}
|
19733
|
+
if (typeof form === 'string') {
|
19734
|
+
const el = document.getElementById(form);
|
19735
|
+
if (el instanceof HTMLFormElement) {
|
19736
|
+
return el;
|
19737
|
+
}
|
19738
|
+
}
|
19739
|
+
return null;
|
19740
|
+
}
|
19678
19741
|
componentDidLoad() {
|
19679
19742
|
focusVisible.observe(this.button);
|
19680
19743
|
}
|
@@ -19687,10 +19750,10 @@ class IconButton {
|
|
19687
19750
|
}
|
19688
19751
|
content() {
|
19689
19752
|
const TagType = this.href === undefined ? 'button' : 'a';
|
19690
|
-
return (hAsync(TagType, { part: "base", ref: (el) => (this.button = el), class: {
|
19753
|
+
return (hAsync(Host, { "aria-disabled": this.disabled ? 'true' : null }, hAsync(TagType, { onClick: this.handleClick, part: "base", ref: (el) => (this.button = el), class: {
|
19691
19754
|
'icon-button': true,
|
19692
19755
|
'icon-button--disabled': this.disabled,
|
19693
|
-
},
|
19756
|
+
}, name: this.name, value: this.value, href: this.href || undefined, target: this.href && this.target ? this.target : undefined, rel: this.rel || undefined, type: !this.href && this.type ? this.type : undefined }, hAsync("span", { class: "icon-button__label" }, this.label), hAsync("nano-icon", { name: this.iconName, src: this.iconSrc, "aria-hidden": "true", lazy: false, part: "icon" }))));
|
19694
19757
|
}
|
19695
19758
|
render() {
|
19696
19759
|
if (this.showTooltip) {
|
@@ -19698,9 +19761,10 @@ class IconButton {
|
|
19698
19761
|
}
|
19699
19762
|
return this.content();
|
19700
19763
|
}
|
19764
|
+
get host() { return getElement(this); }
|
19701
19765
|
static get style() { return iconButtonCss; }
|
19702
19766
|
static get cmpMeta() { return {
|
19703
|
-
"$flags$":
|
19767
|
+
"$flags$": 9,
|
19704
19768
|
"$tagName$": "nano-icon-button",
|
19705
19769
|
"$members$": {
|
19706
19770
|
"iconName": [1, "icon-name"],
|
@@ -19712,7 +19776,9 @@ class IconButton {
|
|
19712
19776
|
"showTooltip": [4, "show-tooltip"],
|
19713
19777
|
"disabled": [516],
|
19714
19778
|
"href": [1],
|
19779
|
+
"rel": [1],
|
19715
19780
|
"target": [1],
|
19781
|
+
"form": [1],
|
19716
19782
|
"setFocus": [64]
|
19717
19783
|
},
|
19718
19784
|
"$listeners$": undefined,
|
@@ -19912,8 +19978,7 @@ const renderLabel = ({ label, hasLabelSlot, controlId, labelId, floatLabel, plac
|
|
19912
19978
|
};
|
19913
19979
|
const FormControlWrap = (props, children) => {
|
19914
19980
|
const { rtl, floatLabel, label, moreId, helperEndId, type, hasHelperSlot, showInlineError, errorMessage, hasHelperEndSlot, } = props;
|
19915
|
-
|
19916
|
-
return (hAsync(MainTag, { states: "350w has-enough-width", class: {
|
19981
|
+
return (hAsync("div", { class: {
|
19917
19982
|
'has-label': label !== null && !floatLabel,
|
19918
19983
|
'has-float-label': label !== null && floatLabel,
|
19919
19984
|
'has-helper-end': hasHelperEndSlot,
|
@@ -19958,7 +20023,7 @@ const FormControl = (props, children) => {
|
|
19958
20023
|
endSlot)));
|
19959
20024
|
};
|
19960
20025
|
|
19961
|
-
const inputCss = ".sc-nano-input-h{box-sizing:border-box}*.sc-nano-input,*.sc-nano-input::before,*.sc-nano-input::after{box-sizing:border-box}[hidden].sc-nano-input{display:none !important}[disabled].sc-nano-input-h:not([disabled=false]){opacity:0.5}.form-ctrl.sc-nano-input{min-inline-size:100%;display:block}.form-ctrl.has-helper-end.sc-nano-input{display:flex;gap:1rem;opacity:0}.form-ctrl.has-helper-end.is-ready.sc-nano-input{opacity:1}.form-ctrl.has-helper-end.sc-nano-input .form-ctrl__wrapper.sc-nano-input{flex:1 1 100%}.form-ctrl.has-helper-end.sc-nano-input .form-ctrl__helper-end.sc-nano-input{display:none}.form-ctrl.has-helper-end.has-enough-width.sc-nano-input .form-ctrl__helper-end.sc-nano-input{display:block}.form-ctrl.has-helper-end.has-enough-width.sc-nano-input .form-ctrl__helper.sc-nano-input{display:none}.form-ctrl__wrapper.sc-nano-input{display:block}label.sc-nano-input,.form-ctrl__more.sc-nano-input,.form-ctrl__error.sc-nano-input,.form-ctrl__helper.sc-nano-input{display:block;inline-size:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}label.visually-hide.sc-nano-input,.form-ctrl__more.visually-hide.sc-nano-input,.form-ctrl__error.visually-hide.sc-nano-input,.form-ctrl__helper.visually-hide.sc-nano-input{clip:rect(1px, 1px, 1px, 1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);block-size:1px;inline-size:1px;margin:-1px;overflow:hidden;padding:0;position:absolute}.form-ctrl__float-label.sc-nano-input{padding-block:0;-webkit-padding-end:0;padding-inline-end:0;-webkit-padding-start:var(--padding-start);padding-inline-start:var(--padding-start);color:var(--label-color);position:absolute;font-size:1.15em;transform:translateY(-50%);transform-origin:top left;inset-block-start:50%;transition:all 0.125s ease-in;opacity:1}.has-focus.sc-nano-input-h .form-ctrl__float-label.sc-nano-input,.has-value.sc-nano-input-h .form-ctrl__float-label.sc-nano-input{transform:translateY(-110%);font-size:0.8em;opacity:0.7}.form-ctrl__float-label.sc-nano-input .form-ctrl__label-charcount.sc-nano-input{opacity:0;transition:opacity 0.125s ease-in}.has-focus.sc-nano-input-h .form-ctrl__float-label.sc-nano-input .form-ctrl__label-charcount.sc-nano-input,.has-value.sc-nano-input-h .form-ctrl__float-label.sc-nano-input .form-ctrl__label-charcount.sc-nano-input{opacity:1}.form-ctrl__textarea.sc-nano-input .form-ctrl__float-label.sc-nano-input{inset-block-start:50%}.has-focus.sc-nano-input-h .form-ctrl__textarea.sc-nano-input .form-ctrl__float-label.sc-nano-input{inset-block-start:0;transform:translateY(38%)}.has-value.sc-nano-input-h .form-ctrl__textarea.sc-nano-input .form-ctrl__float-label.sc-nano-input{inset-block-start:0;transform:translateY(38%)}.form-ctrl__label.sc-nano-input{color:var(--label-color);font-size:var(--label-font-size);-webkit-padding-after:var(--padding-bottom);padding-block-end:var(--padding-bottom);line-height:1;display:flex}.form-ctrl__label.sc-nano-input .form-ctrl__label-wrap.sc-nano-input{flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.form-ctrl__label.sc-nano-input .form-ctrl__label-placeholder.sc-nano-input{margin-block:unset;-webkit-margin-end:5px;margin-inline-end:5px;-webkit-margin-start:0;margin-inline-start:0;opacity:0;-webkit-appearance:none;appearance:none;transition:0.3s ease opacity;font-size:0.9em}.form-ctrl__label.sc-nano-input .form-ctrl__label-charcount.sc-nano-input{margin-block:unset;-webkit-margin-end:0;margin-inline-end:0;-webkit-margin-start:auto;margin-inline-start:auto;font-size:0.9em;opacity:0.5}.has-value.sc-nano-input-h .form-ctrl__label.sc-nano-input .form-ctrl__label-placeholder.sc-nano-input{opacity:0.5}.has-focus.sc-nano-input-h .form-ctrl__label.sc-nano-input{color:var(--label-color--focus)}.is-invalid.sc-nano-input-h:not([disabled]) .form-ctrl__label.sc-nano-input{color:var(--label-color--invalid)}.has-float-label.sc-nano-input .select__multi-input.sc-nano-input,.has-float-label.sc-nano-input .select__native-input.sc-nano-input,.has-float-label.sc-nano-input .input__native-ctrl.sc-nano-input{opacity:0;transition:opacity 0.125s ease-in}.has-focus.sc-nano-input-h .has-float-label.sc-nano-input .select__multi-input.sc-nano-input,.has-value.sc-nano-input-h .has-float-label.sc-nano-input .select__multi-input.sc-nano-input,.has-focus.sc-nano-input-h .has-float-label.sc-nano-input .select__native-input.sc-nano-input,.has-value.sc-nano-input-h .has-float-label.sc-nano-input .select__native-input.sc-nano-input,.has-focus.sc-nano-input-h .has-float-label.sc-nano-input .input__native-ctrl.sc-nano-input,.has-value.sc-nano-input-h .has-float-label.sc-nano-input .input__native-ctrl.sc-nano-input{opacity:1}.form-ctrl__more.sc-nano-input{block-size:1em;position:relative;margin-block:4px var(--padding-bottom);margin-inline:3px 0}.form-ctrl__helper.sc-nano-input,.form-ctrl__error.sc-nano-input{inset-block-start:0;inset-inline-start:0;position:absolute;font-size:var(--invalid-msg-font-size);line-height:1.2;transition:0.3s ease-out opacity}.form-ctrl__helper.sc-nano-input{font-style:italic;color:var(--help-msg-color)}[show-inline-error].sc-nano-input-h:not([show-inline-error=false]):not([disabled]).is-invalid .form-ctrl__helper.sc-nano-input{opacity:0}.form-ctrl__helper-end.sc-nano-input{flex:1 1 30%;min-inline-size:150px;font-size:var(--invalid-msg-font-size);color:var(--help-msg-color);font-style:italic}.form-ctrl__error.sc-nano-input{opacity:0;color:var(--invalid-msg-color);font-stretch:condensed}.is-invalid.sc-nano-input-h:not([disabled]) .form-ctrl__error.sc-nano-input{opacity:1}.form-ctrl__input.sc-nano-input{font-family:inherit;font-size:inherit;font-stretch:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;text-decoration:inherit;text-overflow:inherit;text-transform:inherit;text-align:inherit;white-space:inherit;color:inherit;border-radius:var(--input-border-radius);inline-size:100%;padding:0 !important;position:relative;flex:1 0 auto;display:flex;background:var(--input-bg-color);border:var(--input-border-style);border-width:var(--input-border-width);font-size:var(--input-font-size);-webkit-padding-start:calc(var(--input-border-hint-width) - var(--input-border-width)) !important;padding-inline-start:calc(var(--input-border-hint-width) - var(--input-border-width)) !important}.has-focus.sc-nano-input-h .form-ctrl__input.sc-nano-input{background:var(--input-bg-color--focus);border:var(--input-border-style--focus);border-width:var(--input-border-width);-webkit-padding-start:calc(var(--input-border-hint-width) - var(--input-border-width)) !important;padding-inline-start:calc(var(--input-border-hint-width) - var(--input-border-width)) !important}.is-invalid.sc-nano-input-h:not([disabled]) .form-ctrl__input.sc-nano-input{background:var(--input-bg-color--invalid);border:var(--input-border-style--invalid);border-width:var(--input-border-width);-webkit-border-start:var(--input-border-style--invalid-focus) var(--input-border-hint-width);border-inline-start:var(--input-border-style--invalid-focus) var(--input-border-hint-width);-webkit-padding-start:0 !important;padding-inline-start:0 !important}.is-invalid.has-focus.sc-nano-input-h:not([disabled]) .form-ctrl__input.sc-nano-input{background:var(--input-bg-color--invalid);border:var(--input-border-style--invalid-focus);border-width:var(--input-border-width);-webkit-border-start:var(--input-border-style--invalid-focus) var(--input-border-hint-width);border-inline-start:var(--input-border-style--invalid-focus) var(--input-border-hint-width);-webkit-padding-start:0 !important;padding-inline-start:0 !important}.form-ctrl__input-wrap.sc-nano-input{display:flex;align-items:stretch;flex:1;max-inline-size:100%}.form-ctrl__clear-btn.sc-nano-input,.form-ctrl__slot-end.sc-nano-input,.form-ctrl__slot-start.sc-nano-input,.form-ctrl__slot-value-end.sc-nano-input{--nano-icon-size:1.4em;margin-block:0;margin-inline:0;font-size:1em;border:0;outline:none;background-color:transparent;background-repeat:no-repeat;display:flex;align-items:stretch;inline-size:auto}.has-float-label.sc-nano-input .form-ctrl__slot-start.sc-nano-input{display:none}.form-ctrl__slot-start.sc-nano-input-s>*,.form-ctrl__slot-start .sc-nano-input-s>*,.form-ctrl__slot-end.sc-nano-input-s>*,.form-ctrl__slot-end .sc-nano-input-s>*,.form-ctrl__slot-value-end.sc-nano-input-s>*,.form-ctrl__slot-value-end .sc-nano-input-s>*,.form-ctrl__slot-value-end.sc-nano-input *.sc-nano-input{--nano-icon-size:1.4em;padding-inline:unset;-webkit-padding-start:var(--padding-start);padding-inline-start:var(--padding-start);-webkit-padding-end:var(--padding-end);padding-inline-end:var(--padding-end);font-size:1em;align-items:center;display:flex;block-size:100%;z-index:1}.sc-nano-input-h[disabled]:not([disabled=false]) .form-ctrl__slot-start.sc-nano-input-s>*,.sc-nano-input-h[disabled]:not([disabled=false]) .form-ctrl__slot-start .sc-nano-input-s>*,.sc-nano-input-h[disabled]:not([disabled=false]) .form-ctrl__slot-end.sc-nano-input-s>*,.sc-nano-input-h[disabled]:not([disabled=false]) .form-ctrl__slot-end .sc-nano-input-s>*,.sc-nano-input-h[disabled]:not([disabled=false]) .form-ctrl__slot-value-end.sc-nano-input-s>*,.sc-nano-input-h[disabled]:not([disabled=false]) .form-ctrl__slot-value-end .sc-nano-input-s>*,[disabled].sc-nano-input-h:not([disabled=false]) .form-ctrl__slot-value-end.sc-nano-input *.sc-nano-input{pointer-events:none}.form-ctrl__slot-value-end.sc-nano-input-s>*,.form-ctrl__slot-value-end .sc-nano-input-s>*,.form-ctrl__slot-value-end.sc-nano-input *.sc-nano-input{pointer-events:none}.form-ctrl__clear-btn.sc-nano-input{color:var(--clear-btn-color);padding:0;opacity:0;inline-size:0;-webkit-appearance:none;appearance:none;align-items:center;overflow:hidden}.is-invalid.sc-nano-input-h .form-ctrl__clear-btn.sc-nano-input{color:var(--clear-btn-color--invalid)}.has-value.sc-nano-input-h .form-ctrl__clear-btn.sc-nano-input{padding-block:0;padding-inline:var(--padding-start) var(--padding-end);opacity:1;inline-size:auto}.form-ctrl__clear-btn.sc-nano-input:hover{color:var(--clear-btn-color--hover)}.sc-nano-input-h{--placeholder-color:var(--nano-input-placeholder-color, initial);--placeholder-font-style:var(--nano-input-placeholder-style, initial);--placeholder-font-weight:var(--nano-input-placeholder-weight, initial);--placeholder-opacity:var(--nano-input-placeholder-opacity, 0.5);--padding-top:var(--nano-input-padding-top, var(--nano-input-padding, 8px));--padding-end:var(--nano-input-padding-end, var(--nano-input-padding, 8px));--padding-bottom:var(--nano-input-padding-bottom, var(--nano-input-padding, 6px));--padding-start:var(--nano-input-padding-start, var(--nano-input-padding, 8px));--color-invalid:var(--nano-color-danger-rgb, 239 65 53);--color--focus-rgb:var(\n --nano-color-base-rgb,\n var(--nano-color-primary-rgb, 0 116 149)\n );--input-font-size:var(--nano-input-font-size, 0.87em);--input-text-color:var(--nano-input-text-color, #4a4a4a);--input-border-width:var(--nano-input-border-width, 1px);--input-border-hint-width:3px;--input-border-color:var(--nano-input-border-color, #e4e6e8);--input-border-radius:var(--nano-input-border-radius, 0);--input-border-style:var(--nano-input-border-style, solid) var(--nano-input-border-color, #e4e6e8);--input-border-style--focus:var(--nano-input-border-style, solid) var(--nano-input-border-color--focus, #90c6e7);--input-border-style--invalid:var(--nano-input-border-style, solid) var(--nano-input-border-color--invalid, #e4e6e8);--input-border-style--invalid-focus:var(--nano-input-border-style, solid) var(--nano-input-border-color--invalid, #ef4135);--input-bg-color:var(--nano-input-background-color, #fff);--input-bg-color--focus:var(--input-bg-color);--input-bg-color--invalid:var(--nano-input-background-color, white);--invalid-msg-color:rgb(var(--color-invalid) / 100%);--invalid-msg-font-size:var(--nano-input-help-font-size, 0.75em);--help-msg-color:var(--nano-input-help-color, #616d6e);--clear-btn-color:var(--nano-clear-btn-color, rgba(0, 0, 0, 0.3));--clear-btn-color--hover:rgb(var(--color--focus-rgb) / 100%);--clear-btn-color--invalid:rgb(var(--color-invalid) / 100%);--label-color:var(--nano-input-label-color, \"currentcolor\");--label-color--focus:var(--label-color);--label-color--invalid:var(--nano-input-label-color-invalid, \"currentcolor\");--label-font-size:var(--nano-input-label-color, 1em);--multi-input-value-bg:var(--nano-input-tag-bg, 186 220 240);--multi-input-value-text-color:var(--nano-input-tag-color, #455556);--multi-input-value-border:var(--nano-input-tag-color, #badcf0);position:relative;inline-size:100%;padding:0 !important;color:currentcolor;display:block}.nano-color.sc-nano-input-h{color:var(--nano-color-base);--input-border-style--focus:var(--nano-input-border-style, solid) var(\n --nano-color-tint,\n var(--nano-color-primary-tint, #2689a5)\n )}.input__native-ctrl.sc-nano-input{font-family:inherit;font-size:inherit;font-stretch:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;text-decoration:inherit;text-overflow:inherit;text-transform:inherit;text-align:inherit;white-space:inherit;color:inherit;padding-block:0;padding-inline:var(--padding-start) var(--padding-end);border-radius:var(--input-border-radius);text-overflow:ellipsis;color:var(--input-text-color);display:inline-block;flex:1;inline-size:100%;max-inline-size:100%;max-block-size:100%;border:0;outline:none;background:transparent;-webkit-appearance:none;appearance:none;margin:0;box-sizing:border-box;resize:none;overflow:hidden;line-height:2.5em}.has-float-label.sc-nano-input .input__native-ctrl.sc-nano-input{line-height:2.1em;min-height:2.1em;-webkit-padding-before:1.4em;padding-block-start:1.4em}.input__native-ctrl.sc-nano-input::placeholder{color:var(--placeholder-color);font-family:inherit;font-style:var(--placeholder-font-style);font-weight:var(--placeholder-font-weight);opacity:var(--placeholder-opacity);line-height:inherit;min-height:initial}.input__native-ctrl.sc-nano-input::-moz-placeholder{line-height:2.8em;text-overflow:ellipsis}.input__native-ctrl.sc-nano-input:-webkit-autofill{background-color:transparent}.input__native-ctrl.sc-nano-input::-webkit-search-decoration,.input__native-ctrl.sc-nano-input::-webkit-search-cancel-button,.input__native-ctrl.sc-nano-input::-webkit-search-results-button,.input__native-ctrl.sc-nano-input::-webkit-search-results-decoration{-webkit-appearance:none;appearance:none}.input__native-ctrl.sc-nano-input:invalid{box-shadow:none}.input__native-ctrl.sc-nano-input::-ms-clear,.input__native-ctrl.sc-nano-input::-ms-reveal{display:none}.input__native-ctrl.input__resizable.sc-nano-input{resize:vertical;overflow:auto}.form-ctrl__textarea.sc-nano-input .input__native-ctrl.sc-nano-input{line-height:1.5em;padding-block:var(--padding-top) 0.25em;white-space:pre-wrap}.form-ctrl__textarea.sc-nano-input .input__native-ctrl.sc-nano-input::placeholder{line-height:1.5em}.has-float-label.sc-nano-input .form-ctrl__textarea.sc-nano-input .input__native-ctrl.sc-nano-input{-webkit-padding-before:1.75em;padding-block-start:1.75em}[readonly].sc-nano-input-h:not([readonly=false]) .input__native-ctrl.sc-nano-input{-webkit-user-select:none;user-select:none}";
|
20026
|
+
const inputCss = ".sc-nano-input-h {\n box-sizing: border-box;\n}\n\n*.sc-nano-input, *.sc-nano-input::before, *.sc-nano-input::after {\n box-sizing: border-box;\n}\n[hidden].sc-nano-input {\n display: none !important;\n}\n[disabled].sc-nano-input-h:not([disabled=false]) {\n opacity: 0.5;\n}\n\n.form-ctrl.sc-nano-input {\n container-type: inline-size;\n min-inline-size: 100%;\n display: block;\n}\n.form-ctrl.has-helper-end.sc-nano-input {\n display: flex;\n gap: 1rem;\n}\n.form-ctrl.has-helper-end.sc-nano-input .form-ctrl__wrapper.sc-nano-input {\n flex: 1 1 100%;\n}\n.form-ctrl.has-helper-end.sc-nano-input .form-ctrl__helper-end.sc-nano-input {\n display: none;\n}\n@container (min-width: 350px) {\n .form-ctrl.has-helper-end .form-ctrl__helper-end {\n display: block !important;\n }\n .form-ctrl.has-helper-end .form-ctrl__helper {\n display: none !important;\n }\n}\n\n.form-ctrl__wrapper.sc-nano-input {\n display: block;\n}\n\nlabel.sc-nano-input, .form-ctrl__more.sc-nano-input, .form-ctrl__error.sc-nano-input, .form-ctrl__helper.sc-nano-input {\n display: block;\n inline-size: 100%;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\nlabel.visually-hide.sc-nano-input, .form-ctrl__more.visually-hide.sc-nano-input, .form-ctrl__error.visually-hide.sc-nano-input, .form-ctrl__helper.visually-hide.sc-nano-input {\n clip: rect(1px, 1px, 1px, 1px);\n -webkit-clip-path: inset(50%);\n clip-path: inset(50%);\n block-size: 1px;\n inline-size: 1px;\n margin: -1px;\n overflow: hidden;\n padding: 0;\n position: absolute;\n}\n\n.form-ctrl__float-label.sc-nano-input {\n padding-block: 0;\n -webkit-padding-end: 0;\n padding-inline-end: 0;\n -webkit-padding-start: var(--padding-start);\n padding-inline-start: var(--padding-start);\n color: var(--label-color);\n position: absolute;\n font-size: 1.15em;\n transform: translateY(-50%);\n transform-origin: top left;\n inset-block-start: 50%;\n transition: all 0.125s ease-in;\n opacity: 1;\n}\n.has-focus.sc-nano-input-h .form-ctrl__float-label.sc-nano-input, .has-value.sc-nano-input-h .form-ctrl__float-label.sc-nano-input {\n transform: translateY(-110%);\n font-size: 0.8em;\n opacity: 0.7;\n}\n.form-ctrl__float-label.sc-nano-input .form-ctrl__label-charcount.sc-nano-input {\n opacity: 0;\n transition: opacity 0.125s ease-in;\n}\n.has-focus.sc-nano-input-h .form-ctrl__float-label.sc-nano-input .form-ctrl__label-charcount.sc-nano-input, .has-value.sc-nano-input-h .form-ctrl__float-label.sc-nano-input .form-ctrl__label-charcount.sc-nano-input {\n opacity: 1;\n}\n.form-ctrl__textarea.sc-nano-input .form-ctrl__float-label.sc-nano-input {\n inset-block-start: 50%;\n}\n.has-focus.sc-nano-input-h .form-ctrl__textarea.sc-nano-input .form-ctrl__float-label.sc-nano-input {\n inset-block-start: 0;\n transform: translateY(38%);\n}\n.has-value.sc-nano-input-h .form-ctrl__textarea.sc-nano-input .form-ctrl__float-label.sc-nano-input {\n inset-block-start: 0;\n transform: translateY(38%);\n}\n\n.form-ctrl__label.sc-nano-input {\n color: var(--label-color);\n font-size: var(--label-font-size);\n -webkit-padding-after: var(--padding-bottom);\n padding-block-end: var(--padding-bottom);\n line-height: 1;\n display: flex;\n}\n.form-ctrl__label.sc-nano-input .form-ctrl__label-wrap.sc-nano-input {\n flex: 1;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.form-ctrl__label.sc-nano-input .form-ctrl__label-placeholder.sc-nano-input {\n margin-block: unset;\n -webkit-margin-end: 5px;\n margin-inline-end: 5px;\n -webkit-margin-start: 0;\n margin-inline-start: 0;\n opacity: 0;\n -webkit-appearance: none;\n appearance: none;\n transition: 0.3s ease opacity;\n font-size: 0.9em;\n}\n.form-ctrl__label.sc-nano-input .form-ctrl__label-charcount.sc-nano-input {\n margin-block: unset;\n -webkit-margin-end: 0;\n margin-inline-end: 0;\n -webkit-margin-start: auto;\n margin-inline-start: auto;\n font-size: 0.9em;\n opacity: 0.5;\n}\n.has-value.sc-nano-input-h .form-ctrl__label.sc-nano-input .form-ctrl__label-placeholder.sc-nano-input {\n opacity: 0.5;\n}\n.has-focus.sc-nano-input-h .form-ctrl__label.sc-nano-input {\n color: var(--label-color--focus);\n}\n.is-invalid.sc-nano-input-h:not([disabled]) .form-ctrl__label.sc-nano-input {\n color: var(--label-color--invalid);\n}\n\n.has-float-label.sc-nano-input .select__multi-input.sc-nano-input, .has-float-label.sc-nano-input .select__native-input.sc-nano-input, .has-float-label.sc-nano-input .input__native-ctrl.sc-nano-input {\n opacity: 0;\n transition: opacity 0.125s ease-in;\n}\n.has-focus.sc-nano-input-h .has-float-label.sc-nano-input .select__multi-input.sc-nano-input, .has-value.sc-nano-input-h .has-float-label.sc-nano-input .select__multi-input.sc-nano-input, .has-focus.sc-nano-input-h .has-float-label.sc-nano-input .select__native-input.sc-nano-input, .has-value.sc-nano-input-h .has-float-label.sc-nano-input .select__native-input.sc-nano-input, .has-focus.sc-nano-input-h .has-float-label.sc-nano-input .input__native-ctrl.sc-nano-input, .has-value.sc-nano-input-h .has-float-label.sc-nano-input .input__native-ctrl.sc-nano-input {\n opacity: 1;\n}\n\n.form-ctrl__more.sc-nano-input {\n block-size: 1em;\n position: relative;\n margin-block: 4px var(--padding-bottom);\n margin-inline: 3px 0;\n}\n\n.form-ctrl__helper.sc-nano-input, .form-ctrl__error.sc-nano-input {\n inset-block-start: 0;\n inset-inline-start: 0;\n position: absolute;\n font-size: var(--invalid-msg-font-size);\n line-height: 1.2;\n transition: 0.3s ease-out opacity;\n}\n\n.form-ctrl__helper.sc-nano-input {\n font-style: italic;\n color: var(--help-msg-color);\n}\n[show-inline-error].sc-nano-input-h:not([show-inline-error=false]):not([disabled]).is-invalid .form-ctrl__helper.sc-nano-input {\n opacity: 0;\n}\n\n.form-ctrl__helper-end.sc-nano-input {\n flex: 1 1 30%;\n min-inline-size: 150px;\n font-size: var(--invalid-msg-font-size);\n color: var(--help-msg-color);\n font-style: italic;\n}\n\n.form-ctrl__error.sc-nano-input {\n opacity: 0;\n color: var(--invalid-msg-color);\n font-stretch: condensed;\n}\n.is-invalid.sc-nano-input-h:not([disabled]) .form-ctrl__error.sc-nano-input {\n opacity: 1;\n}\n\n.form-ctrl__input.sc-nano-input {\n font-family: inherit;\n font-size: inherit;\n font-stretch: inherit;\n font-style: inherit;\n font-weight: inherit;\n letter-spacing: inherit;\n text-decoration: inherit;\n text-overflow: inherit;\n text-transform: inherit;\n text-align: inherit;\n white-space: inherit;\n color: inherit;\n border-radius: var(--input-border-radius);\n inline-size: 100%;\n padding: 0 !important;\n position: relative;\n flex: 1 0 auto;\n display: flex;\n background: var(--input-bg-color);\n border: var(--input-border-style);\n border-width: var(--input-border-width);\n font-size: var(--input-font-size);\n -webkit-padding-start: calc(var(--input-border-hint-width) - var(--input-border-width)) !important;\n padding-inline-start: calc(var(--input-border-hint-width) - var(--input-border-width)) !important;\n}\n.has-focus.sc-nano-input-h .form-ctrl__input.sc-nano-input {\n background: var(--input-bg-color--focus);\n border: var(--input-border-style--focus);\n border-width: var(--input-border-width);\n -webkit-padding-start: calc(var(--input-border-hint-width) - var(--input-border-width)) !important;\n padding-inline-start: calc(var(--input-border-hint-width) - var(--input-border-width)) !important;\n}\n.is-invalid.sc-nano-input-h:not([disabled]) .form-ctrl__input.sc-nano-input {\n background: var(--input-bg-color--invalid);\n border: var(--input-border-style--invalid);\n border-width: var(--input-border-width);\n -webkit-border-start: var(--input-border-style--invalid-focus) var(--input-border-hint-width);\n border-inline-start: var(--input-border-style--invalid-focus) var(--input-border-hint-width);\n -webkit-padding-start: 0 !important;\n padding-inline-start: 0 !important;\n}\n.is-invalid.has-focus.sc-nano-input-h:not([disabled]) .form-ctrl__input.sc-nano-input {\n background: var(--input-bg-color--invalid);\n border: var(--input-border-style--invalid-focus);\n border-width: var(--input-border-width);\n -webkit-border-start: var(--input-border-style--invalid-focus) var(--input-border-hint-width);\n border-inline-start: var(--input-border-style--invalid-focus) var(--input-border-hint-width);\n -webkit-padding-start: 0 !important;\n padding-inline-start: 0 !important;\n}\n\n.form-ctrl__input-wrap.sc-nano-input {\n display: flex;\n align-items: stretch;\n flex: 1;\n max-inline-size: 100%;\n}\n\n.form-ctrl__clear-btn.sc-nano-input, .form-ctrl__slot-end.sc-nano-input, .form-ctrl__slot-start.sc-nano-input, .form-ctrl__slot-value-end.sc-nano-input {\n --nano-icon-size: 1.4em;\n margin-block: 0;\n margin-inline: 0;\n font-size: 1em;\n border: 0;\n outline: none;\n background-color: transparent;\n background-repeat: no-repeat;\n display: flex;\n align-items: stretch;\n inline-size: auto;\n}\n\n.has-float-label.sc-nano-input .form-ctrl__slot-start.sc-nano-input {\n display: none;\n}\n\n.form-ctrl__slot-start.sc-nano-input-s > *, .form-ctrl__slot-start .sc-nano-input-s > *, .form-ctrl__slot-end.sc-nano-input-s > *, .form-ctrl__slot-end .sc-nano-input-s > *, .form-ctrl__slot-value-end.sc-nano-input-s > *, .form-ctrl__slot-value-end .sc-nano-input-s > *, .form-ctrl__slot-value-end.sc-nano-input *.sc-nano-input {\n --nano-icon-size: 1.4em;\n padding-inline: unset;\n -webkit-padding-start: var(--padding-start);\n padding-inline-start: var(--padding-start);\n -webkit-padding-end: var(--padding-end);\n padding-inline-end: var(--padding-end);\n font-size: 1em;\n align-items: center;\n display: flex;\n block-size: 100%;\n z-index: 1;\n}\n.sc-nano-input-h[disabled]:not([disabled=false]) .form-ctrl__slot-start.sc-nano-input-s > *, .sc-nano-input-h[disabled]:not([disabled=false]) .form-ctrl__slot-start .sc-nano-input-s > *, .sc-nano-input-h[disabled]:not([disabled=false]) .form-ctrl__slot-end.sc-nano-input-s > *, .sc-nano-input-h[disabled]:not([disabled=false]) .form-ctrl__slot-end .sc-nano-input-s > *, .sc-nano-input-h[disabled]:not([disabled=false]) .form-ctrl__slot-value-end.sc-nano-input-s > *, .sc-nano-input-h[disabled]:not([disabled=false]) .form-ctrl__slot-value-end .sc-nano-input-s > *, [disabled].sc-nano-input-h:not([disabled=false]) .form-ctrl__slot-value-end.sc-nano-input *.sc-nano-input {\n pointer-events: none;\n}\n\n.form-ctrl__slot-value-end.sc-nano-input-s > *, .form-ctrl__slot-value-end .sc-nano-input-s > *, .form-ctrl__slot-value-end.sc-nano-input *.sc-nano-input {\n pointer-events: none;\n}\n\n.form-ctrl__clear-btn.sc-nano-input {\n color: var(--clear-btn-color);\n padding: 0;\n opacity: 0;\n inline-size: 0;\n -webkit-appearance: none;\n appearance: none;\n align-items: center;\n overflow: hidden;\n}\n.is-invalid.sc-nano-input-h .form-ctrl__clear-btn.sc-nano-input {\n color: var(--clear-btn-color--invalid);\n}\n.has-value.sc-nano-input-h .form-ctrl__clear-btn.sc-nano-input {\n padding-block: 0;\n padding-inline: var(--padding-start) var(--padding-end);\n opacity: 1;\n inline-size: auto;\n}\n.form-ctrl__clear-btn.sc-nano-input:hover {\n color: var(--clear-btn-color--hover);\n}\n\n.sc-nano-input-h {\n \n --placeholder-color: var(--nano-input-placeholder-color, initial);\n --placeholder-font-style: var(--nano-input-placeholder-style, initial);\n --placeholder-font-weight: var(--nano-input-placeholder-weight, initial);\n --placeholder-opacity: var(--nano-input-placeholder-opacity, 0.5);\n --padding-top: var(--nano-input-padding-top, var(--nano-input-padding, 8px));\n --padding-end: var(--nano-input-padding-end, var(--nano-input-padding, 8px));\n --padding-bottom: var(--nano-input-padding-bottom, var(--nano-input-padding, 6px));\n --padding-start: var(--nano-input-padding-start, var(--nano-input-padding, 8px));\n --color-invalid: var(--nano-color-danger-rgb, 239 65 53);\n --color--focus-rgb:\n var(\n --nano-color-base-rgb,\n var(--nano-color-primary-rgb, 0 116 149)\n );\n --input-font-size: var(--nano-input-font-size, 0.87em);\n --input-text-color: var(--nano-input-text-color, #4a4a4a);\n --input-border-width: var(--nano-input-border-width, 1px);\n --input-border-hint-width: 3px;\n --input-border-color: var(--nano-input-border-color, #e4e6e8);\n --input-border-radius: var(--nano-input-border-radius, 0);\n --input-border-style: var(--nano-input-border-style, solid) var(--nano-input-border-color, #e4e6e8);\n --input-border-style--focus: var(--nano-input-border-style, solid) var(--nano-input-border-color--focus, #90c6e7);\n --input-border-style--invalid: var(--nano-input-border-style, solid) var(--nano-input-border-color--invalid, #e4e6e8);\n --input-border-style--invalid-focus: var(--nano-input-border-style, solid) var(--nano-input-border-color--invalid, #ef4135);\n --input-bg-color: var(--nano-input-background-color, #fff);\n --input-bg-color--focus: var(--input-bg-color);\n --input-bg-color--invalid: var(--nano-input-background-color, white);\n --invalid-msg-color: rgb(var(--color-invalid) / 100%);\n --invalid-msg-font-size: var(--nano-input-help-font-size, 0.75em);\n --help-msg-color: var(--nano-input-help-color, #616d6e);\n --clear-btn-color: var(--nano-clear-btn-color, rgba(0, 0, 0, 0.3));\n --clear-btn-color--hover: rgb(var(--color--focus-rgb) / 100%);\n --clear-btn-color--invalid: rgb(var(--color-invalid) / 100%);\n --label-color: var(--nano-input-label-color, \"currentcolor\");\n --label-color--focus: var(--label-color);\n --label-color--invalid: var(--nano-input-label-color-invalid, \"currentcolor\");\n --label-font-size: var(--nano-input-label-color, 1em);\n --multi-input-value-bg: var(--nano-input-tag-bg, 186 220 240);\n --multi-input-value-text-color: var(--nano-input-tag-color, #455556);\n --multi-input-value-border: var(--nano-input-tag-color, #badcf0);\n position: relative;\n inline-size: 100%;\n padding: 0 !important;\n color: currentcolor;\n display: block;\n}\n\n.nano-color.sc-nano-input-h {\n color: var(--nano-color-base);\n --input-border-style--focus:\n var(--nano-input-border-style, solid) var(\n --nano-color-tint,\n var(--nano-color-primary-tint, #2689a5)\n );\n}\n\n.input__native-ctrl.sc-nano-input {\n font-family: inherit;\n font-size: inherit;\n font-stretch: inherit;\n font-style: inherit;\n font-weight: inherit;\n letter-spacing: inherit;\n text-decoration: inherit;\n text-overflow: inherit;\n text-transform: inherit;\n text-align: inherit;\n white-space: inherit;\n color: inherit;\n padding-block: 0;\n padding-inline: var(--padding-start) var(--padding-end);\n border-radius: var(--input-border-radius);\n text-overflow: ellipsis;\n color: var(--input-text-color);\n display: inline-block;\n flex: 1;\n inline-size: 100%;\n max-inline-size: 100%;\n max-block-size: 100%;\n border: 0;\n outline: none;\n background: transparent;\n -webkit-appearance: none;\n appearance: none;\n margin: 0;\n box-sizing: border-box;\n resize: none;\n overflow: hidden;\n line-height: 2.5em;\n \n}\n.has-float-label.sc-nano-input .input__native-ctrl.sc-nano-input {\n line-height: 2.1em;\n min-height: 2.1em;\n -webkit-padding-before: 1.4em;\n padding-block-start: 1.4em;\n}\n.input__native-ctrl.sc-nano-input::placeholder {\n color: var(--placeholder-color);\n font-family: inherit;\n font-style: var(--placeholder-font-style);\n font-weight: var(--placeholder-font-weight);\n opacity: var(--placeholder-opacity);\n line-height: inherit;\n min-height: initial;\n}\n.input__native-ctrl.sc-nano-input::-moz-placeholder {\n line-height: 2.8em;\n text-overflow: ellipsis;\n}\n.input__native-ctrl.sc-nano-input:-webkit-autofill {\n background-color: transparent;\n}\n.input__native-ctrl.sc-nano-input::-webkit-search-decoration, .input__native-ctrl.sc-nano-input::-webkit-search-cancel-button, .input__native-ctrl.sc-nano-input::-webkit-search-results-button, .input__native-ctrl.sc-nano-input::-webkit-search-results-decoration {\n -webkit-appearance: none;\n appearance: none;\n}\n.input__native-ctrl.sc-nano-input:invalid {\n box-shadow: none;\n}\n.input__native-ctrl.sc-nano-input::-ms-clear, .input__native-ctrl.sc-nano-input::-ms-reveal {\n display: none;\n}\n.input__native-ctrl.input__resizable.sc-nano-input {\n resize: vertical;\n overflow: auto;\n}\n.form-ctrl__textarea.sc-nano-input .input__native-ctrl.sc-nano-input {\n line-height: 1.5em;\n padding-block: var(--padding-top) 0.25em;\n white-space: pre-wrap;\n}\n.form-ctrl__textarea.sc-nano-input .input__native-ctrl.sc-nano-input::placeholder {\n line-height: 1.5em;\n}\n.has-float-label.sc-nano-input .form-ctrl__textarea.sc-nano-input .input__native-ctrl.sc-nano-input {\n -webkit-padding-before: 1.75em;\n padding-block-start: 1.75em;\n}\n[readonly].sc-nano-input-h:not([readonly=false]) .input__native-ctrl.sc-nano-input {\n -webkit-user-select: none;\n user-select: none;\n}";
|
19962
20027
|
|
19963
20028
|
let inputIds = 0;
|
19964
20029
|
/**
|
@@ -20957,18 +21022,18 @@ class NavItem {
|
|
20957
21022
|
}, 50);
|
20958
21023
|
}
|
20959
21024
|
else {
|
20960
|
-
/* the
|
21025
|
+
/* the secondary panel is not opening via hover,
|
20961
21026
|
scroll content into view, focus on it and add blur events */
|
20962
21027
|
if (!this.fromHover) {
|
20963
|
-
const
|
21028
|
+
const panelIO = new window.IntersectionObserver((data) => {
|
20964
21029
|
if (data[0].boundingClientRect.top < 0) {
|
20965
21030
|
this.secondaryDiv.scrollIntoView({
|
20966
21031
|
behavior: 'smooth',
|
20967
21032
|
});
|
20968
21033
|
}
|
20969
|
-
|
21034
|
+
panelIO.disconnect();
|
20970
21035
|
}, { threshold: 1 });
|
20971
|
-
|
21036
|
+
panelIO.observe(this.secondaryDiv);
|
20972
21037
|
this.secondaryDiv.focus({ preventScroll: true });
|
20973
21038
|
const focusableChild = getTabbableElements(this.secondaryDiv, true);
|
20974
21039
|
if (focusableChild[0])
|
@@ -21573,7 +21638,7 @@ function cyrb53(str, seed = 0) {
|
|
21573
21638
|
return 4294967296 * (2097151 & h2) + (h1 >>> 0);
|
21574
21639
|
}
|
21575
21640
|
|
21576
|
-
const rangeCss = ".sc-nano-range-h{box-sizing:border-box}*.sc-nano-range,*.sc-nano-range::before,*.sc-nano-range::after{box-sizing:border-box}[hidden].sc-nano-range{display:none !important}.sc-nano-range-h{--knob-handle-size:(var(--knob-size) * 2);--rgb-inactive:165 165 165;--knob-border-radius:50%;--knob-background:var(--nano-color-primary, #007495);--knob-box-shadow:0 2px 4px 0 rgb(0 0 0 / 30%);--knob-size:30px;--bar-height:8px;--bar-background:#e2e1e0;--bar-background-active:#a5a5a5;--bar-border-radius:4px;--height:42px;--pin-background:var(--nano-color-primary, #007495);--pin-color:var(--nano-color-primary-contrast, #fff);--focus-style:0 0 0 5px var(--nano-control-focus-color, rgba(144, 198, 231, 0.8))}.range-wrap.sc-nano-range{display:flex;position:relative;flex:3;align-items:center;-webkit-user-select:none;user-select:none}.range-wrap.sc-nano-range-s>ion-icon[slot],.range-wrap .sc-nano-range-s>ion-icon[slot]{font-size:1.5em}.range-wrap.sc-nano-range-s>[slot=start],.range-wrap .sc-nano-range-s>[slot=start]{margin-inline:0 14px;margin-block:0;font-size:0.9em}.range-wrap.sc-nano-range-s>[slot=end],.range-wrap .sc-nano-range-s>[slot=end]{margin-inline:14px 0;margin-block:0;font-size:0.9em}.range-slider.sc-nano-range{position:relative;flex:1;width:100%;height:var(--height);contain:size layout style;cursor:grab;touch-action:pan-y}.range-pressed.sc-nano-range-h .range-slider.sc-nano-range{cursor:grabbing}.range-bar.sc-nano-range{border-radius:var(--bar-border-radius);inset-block-start:calc((var(--height) - var(--bar-height)) / 2);inset-inline-start:0;position:absolute;width:100%;height:var(--bar-height);background:var(--bar-background);pointer-events:none}.range-snaps.sc-nano-range-h .range-bar.sc-nano-range{border-radius:var(--bar-border-radius) 0 0 var(--bar-border-radius)}.range-bar-active.sc-nano-range{inset-block-end:0;width:auto;background:var(--bar-background-active)}.range-
|
21641
|
+
const rangeCss = ".sc-nano-range-h{box-sizing:border-box}*.sc-nano-range,*.sc-nano-range::before,*.sc-nano-range::after{box-sizing:border-box}[hidden].sc-nano-range{display:none !important}.sc-nano-range-h{--knob-handle-size:(var(--knob-size) * 2);--rgb-inactive:165 165 165;--knob-border-radius:50%;--knob-background:var(--nano-color-primary, #007495);--knob-box-shadow:0 2px 4px 0 rgb(0 0 0 / 30%);--knob-size:30px;--bar-height:8px;--bar-background:#e2e1e0;--bar-background-active:#a5a5a5;--bar-border-radius:4px;--height:42px;--pin-background:var(--nano-color-primary, #007495);--pin-color:var(--nano-color-primary-contrast, #fff);--focus-style:0 0 0 5px var(--nano-control-focus-color, rgba(144, 198, 231, 0.8))}.range-wrap.sc-nano-range{display:flex;position:relative;flex:3;align-items:center;-webkit-user-select:none;user-select:none}.range-wrap.sc-nano-range-s>ion-icon[slot],.range-wrap .sc-nano-range-s>ion-icon[slot]{font-size:1.5em}.range-wrap.sc-nano-range-s>[slot=start],.range-wrap .sc-nano-range-s>[slot=start]{margin-inline:0 14px;margin-block:0;font-size:0.9em}.range-wrap.sc-nano-range-s>[slot=end],.range-wrap .sc-nano-range-s>[slot=end]{margin-inline:14px 0;margin-block:0;font-size:0.9em}.range-slider.sc-nano-range{position:relative;flex:1;width:100%;height:var(--height);contain:size layout style;cursor:grab;touch-action:pan-y}.range-pressed.sc-nano-range-h .range-slider.sc-nano-range{cursor:grabbing}.range-bar.sc-nano-range{border-radius:var(--bar-border-radius);inset-block-start:calc((var(--height) - var(--bar-height)) / 2);inset-inline-start:0;position:absolute;width:100%;height:var(--bar-height);background:var(--bar-background);pointer-events:none}.range-snaps.sc-nano-range-h .range-bar.sc-nano-range{border-radius:var(--bar-border-radius) 0 0 var(--bar-border-radius)}.range-bar-active.sc-nano-range{inset-block-end:0;width:auto;background:var(--bar-background-active)}.range-knob.sc-nano-range{border-radius:var(--knob-border-radius);inset-block-start:calc(50% - var(--knob-size) / 2);inset-inline-start:calc(50% - var(--knob-size) / 2);position:absolute;width:var(--knob-size);height:var(--knob-size);background:var(--knob-background);box-shadow:var(--knob-box-shadow);z-index:2;pointer-events:none;transform:scale(0.67);transition-duration:120ms;transition-property:transform, background-color, border;transition-timing-function:ease}.sc-nano-range-h:not(.range-has-pin) .range-knob-pressed.sc-nano-range .range-knob.sc-nano-range{transform:scale(1)}.range-knob-handle.sc-nano-range{inset-block-start:calc((var(--height) - var(--knob-handle-size)) / 2);inset-inline-start:0;-webkit-margin-start:calc(0px - var(--knob-handle-size) / 2);margin-inline-start:calc(0px - var(--knob-handle-size) / 2);position:absolute;width:calc(var(--knob-handle-size));height:calc(var(--knob-handle-size));text-align:center}.range-knob-handle.sc-nano-range:active,.range-knob-handle.sc-nano-range:focus{outline:none}.range-knob-handle.sc-nano-range:active .range-knob.sc-nano-range,.range-knob-handle.sc-nano-range:focus .range-knob.sc-nano-range{box-shadow:var(--knob-box-shadow), var(--focus-style)}.range-tick.sc-nano-range{position:absolute;inset-block-start:calc((var(--height) - var(--bar-height)) / 2);width:var(--bar-height);height:var(--bar-height);background:var(--bar-background-active);z-index:1;pointer-events:none}.range-tick.sc-nano-range:first-of-type{border-radius:var(--bar-border-radius) 0 0 var(--bar-border-radius)}.range-tick.sc-nano-range:last-of-type{border-radius:0 var(--bar-border-radius) var(--bar-border-radius) 0}.range-tick-active.sc-nano-range{background:transparent}.range-pin.sc-nano-range{transform:translate3d(0, 0, 0) scale(0.01);transform-origin:center top;padding:0.66em 0;border-radius:50%;text-align:center;box-sizing:border-box;display:inline-block;position:relative;min-width:2.33em;height:2.33em;transition:transform 120ms ease, background 120ms ease;background:var(--pin-background);color:var(--pin-color);font-size:0.75em}.range-pin.sc-nano-range::before{inset-block-start:0.25em;inset-inline-start:50%;-webkit-margin-start:-1.08em;margin-inline-start:-1.08em;border-radius:50% 50% 50% 0;position:absolute;width:2.16em;height:2.16em;transform:rotate(-45deg);transition:background 120ms ease;background:var(--pin-background);content:\"\";z-index:-1}.range-knob-pressed.sc-nano-range .range-pin.sc-nano-range{transform:translate3d(0, -50%, 0) scale(1);transform:translate3d(0, calc((100% - var(--bar-height)) * -1), 0) scale(1)}.range-disabled.sc-nano-range-h{pointer-events:none}.range-disabled.sc-nano-range-h .range-bar-active.sc-nano-range,.range-disabled.sc-nano-range-h .range-bar.sc-nano-range,.range-disabled.sc-nano-range-h .range-tick.sc-nano-range{background-color:rgb(var(--rgb-inactive)/50%)}.range-disabled.sc-nano-range-h .range-knob.sc-nano-range{transform:scale(0.55);outline:5px solid #fff;background-color:rgb(var(--rgb-inactive)/50%)}.nano-color.sc-nano-range-h .range-bar-active.sc-nano-range,.nano-color.sc-nano-range-h .range-knob.sc-nano-range,.nano-color.sc-nano-range-h .range-pin.sc-nano-range,.nano-color.sc-nano-range-h .range-pin.sc-nano-range::before,.nano-color.sc-nano-range-h .range-tick.sc-nano-range{background:var(--nano-color-base);color:var(--nano-color-contrast)}.nano-color.sc-nano-range-h .range-bar.sc-nano-range{background:rgb(var(--nano-color-base-rgb)/0.26)}.nano-color.sc-nano-range-h .range-knob-handle.sc-nano-range:active .range-knob.sc-nano-range,.nano-color.sc-nano-range-h .range-knob-handle.sc-nano-range:focus .range-knob.sc-nano-range{box-shadow:var(--knob-box-shadow), 0 0 0 5px rgb(var(--nano-color-tint-rgb)/0.56)}";
|
21577
21642
|
|
21578
21643
|
/**
|
21579
21644
|
* The Range slider lets users select from a range of values by moving
|
@@ -22380,7 +22445,7 @@ class ResizeObserve {
|
|
22380
22445
|
}; }
|
22381
22446
|
}
|
22382
22447
|
|
22383
|
-
const selectCss = ".sc-nano-select-h{box-sizing:border-box}*.sc-nano-select,*.sc-nano-select::before,*.sc-nano-select::after{box-sizing:border-box}[hidden].sc-nano-select{display:none !important}[disabled].sc-nano-select-h:not([disabled=false]){opacity:0.5}.form-ctrl.sc-nano-select{min-inline-size:100%;display:block}.form-ctrl.has-helper-end.sc-nano-select{display:flex;gap:1rem;opacity:0}.form-ctrl.has-helper-end.is-ready.sc-nano-select{opacity:1}.form-ctrl.has-helper-end.sc-nano-select .form-ctrl__wrapper.sc-nano-select{flex:1 1 100%}.form-ctrl.has-helper-end.sc-nano-select .form-ctrl__helper-end.sc-nano-select{display:none}.form-ctrl.has-helper-end.has-enough-width.sc-nano-select .form-ctrl__helper-end.sc-nano-select{display:block}.form-ctrl.has-helper-end.has-enough-width.sc-nano-select .form-ctrl__helper.sc-nano-select{display:none}.form-ctrl__wrapper.sc-nano-select{display:block}label.sc-nano-select,.form-ctrl__more.sc-nano-select,.form-ctrl__error.sc-nano-select,.form-ctrl__helper.sc-nano-select{display:block;inline-size:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}label.visually-hide.sc-nano-select,.form-ctrl__more.visually-hide.sc-nano-select,.form-ctrl__error.visually-hide.sc-nano-select,.form-ctrl__helper.visually-hide.sc-nano-select{clip:rect(1px, 1px, 1px, 1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);block-size:1px;inline-size:1px;margin:-1px;overflow:hidden;padding:0;position:absolute}.form-ctrl__float-label.sc-nano-select{padding-block:0;-webkit-padding-end:0;padding-inline-end:0;-webkit-padding-start:var(--padding-start);padding-inline-start:var(--padding-start);color:var(--label-color);position:absolute;font-size:1.15em;transform:translateY(-50%);transform-origin:top left;inset-block-start:50%;transition:all 0.125s ease-in;opacity:1}.has-focus.sc-nano-select-h .form-ctrl__float-label.sc-nano-select,.has-value.sc-nano-select-h .form-ctrl__float-label.sc-nano-select{transform:translateY(-110%);font-size:0.8em;opacity:0.7}.form-ctrl__float-label.sc-nano-select .form-ctrl__label-charcount.sc-nano-select{opacity:0;transition:opacity 0.125s ease-in}.has-focus.sc-nano-select-h .form-ctrl__float-label.sc-nano-select .form-ctrl__label-charcount.sc-nano-select,.has-value.sc-nano-select-h .form-ctrl__float-label.sc-nano-select .form-ctrl__label-charcount.sc-nano-select{opacity:1}.form-ctrl__textarea.sc-nano-select .form-ctrl__float-label.sc-nano-select{inset-block-start:50%}.has-focus.sc-nano-select-h .form-ctrl__textarea.sc-nano-select .form-ctrl__float-label.sc-nano-select{inset-block-start:0;transform:translateY(38%)}.has-value.sc-nano-select-h .form-ctrl__textarea.sc-nano-select .form-ctrl__float-label.sc-nano-select{inset-block-start:0;transform:translateY(38%)}.form-ctrl__label.sc-nano-select{color:var(--label-color);font-size:var(--label-font-size);-webkit-padding-after:var(--padding-bottom);padding-block-end:var(--padding-bottom);line-height:1;display:flex}.form-ctrl__label.sc-nano-select .form-ctrl__label-wrap.sc-nano-select{flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.form-ctrl__label.sc-nano-select .form-ctrl__label-placeholder.sc-nano-select{margin-block:unset;-webkit-margin-end:5px;margin-inline-end:5px;-webkit-margin-start:0;margin-inline-start:0;opacity:0;-webkit-appearance:none;appearance:none;transition:0.3s ease opacity;font-size:0.9em}.form-ctrl__label.sc-nano-select .form-ctrl__label-charcount.sc-nano-select{margin-block:unset;-webkit-margin-end:0;margin-inline-end:0;-webkit-margin-start:auto;margin-inline-start:auto;font-size:0.9em;opacity:0.5}.has-value.sc-nano-select-h .form-ctrl__label.sc-nano-select .form-ctrl__label-placeholder.sc-nano-select{opacity:0.5}.has-focus.sc-nano-select-h .form-ctrl__label.sc-nano-select{color:var(--label-color--focus)}.is-invalid.sc-nano-select-h:not([disabled]) .form-ctrl__label.sc-nano-select{color:var(--label-color--invalid)}.has-float-label.sc-nano-select .select__multi-input.sc-nano-select,.has-float-label.sc-nano-select .select__native-input.sc-nano-select,.has-float-label.sc-nano-select .input__native-ctrl.sc-nano-select{opacity:0;transition:opacity 0.125s ease-in}.has-focus.sc-nano-select-h .has-float-label.sc-nano-select .select__multi-input.sc-nano-select,.has-value.sc-nano-select-h .has-float-label.sc-nano-select .select__multi-input.sc-nano-select,.has-focus.sc-nano-select-h .has-float-label.sc-nano-select .select__native-input.sc-nano-select,.has-value.sc-nano-select-h .has-float-label.sc-nano-select .select__native-input.sc-nano-select,.has-focus.sc-nano-select-h .has-float-label.sc-nano-select .input__native-ctrl.sc-nano-select,.has-value.sc-nano-select-h .has-float-label.sc-nano-select .input__native-ctrl.sc-nano-select{opacity:1}.form-ctrl__more.sc-nano-select{block-size:1em;position:relative;margin-block:4px var(--padding-bottom);margin-inline:3px 0}.form-ctrl__helper.sc-nano-select,.form-ctrl__error.sc-nano-select{inset-block-start:0;inset-inline-start:0;position:absolute;font-size:var(--invalid-msg-font-size);line-height:1.2;transition:0.3s ease-out opacity}.form-ctrl__helper.sc-nano-select{font-style:italic;color:var(--help-msg-color)}[show-inline-error].sc-nano-select-h:not([show-inline-error=false]):not([disabled]).is-invalid .form-ctrl__helper.sc-nano-select{opacity:0}.form-ctrl__helper-end.sc-nano-select{flex:1 1 30%;min-inline-size:150px;font-size:var(--invalid-msg-font-size);color:var(--help-msg-color);font-style:italic}.form-ctrl__error.sc-nano-select{opacity:0;color:var(--invalid-msg-color);font-stretch:condensed}.is-invalid.sc-nano-select-h:not([disabled]) .form-ctrl__error.sc-nano-select{opacity:1}.form-ctrl__input.sc-nano-select{font-family:inherit;font-size:inherit;font-stretch:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;text-decoration:inherit;text-overflow:inherit;text-transform:inherit;text-align:inherit;white-space:inherit;color:inherit;border-radius:var(--input-border-radius);inline-size:100%;padding:0 !important;position:relative;flex:1 0 auto;display:flex;background:var(--input-bg-color);border:var(--input-border-style);border-width:var(--input-border-width);font-size:var(--input-font-size);-webkit-padding-start:calc(var(--input-border-hint-width) - var(--input-border-width)) !important;padding-inline-start:calc(var(--input-border-hint-width) - var(--input-border-width)) !important}.has-focus.sc-nano-select-h .form-ctrl__input.sc-nano-select{background:var(--input-bg-color--focus);border:var(--input-border-style--focus);border-width:var(--input-border-width);-webkit-padding-start:calc(var(--input-border-hint-width) - var(--input-border-width)) !important;padding-inline-start:calc(var(--input-border-hint-width) - var(--input-border-width)) !important}.is-invalid.sc-nano-select-h:not([disabled]) .form-ctrl__input.sc-nano-select{background:var(--input-bg-color--invalid);border:var(--input-border-style--invalid);border-width:var(--input-border-width);-webkit-border-start:var(--input-border-style--invalid-focus) var(--input-border-hint-width);border-inline-start:var(--input-border-style--invalid-focus) var(--input-border-hint-width);-webkit-padding-start:0 !important;padding-inline-start:0 !important}.is-invalid.has-focus.sc-nano-select-h:not([disabled]) .form-ctrl__input.sc-nano-select{background:var(--input-bg-color--invalid);border:var(--input-border-style--invalid-focus);border-width:var(--input-border-width);-webkit-border-start:var(--input-border-style--invalid-focus) var(--input-border-hint-width);border-inline-start:var(--input-border-style--invalid-focus) var(--input-border-hint-width);-webkit-padding-start:0 !important;padding-inline-start:0 !important}.form-ctrl__input-wrap.sc-nano-select{display:flex;align-items:stretch;flex:1;max-inline-size:100%}.form-ctrl__clear-btn.sc-nano-select,.form-ctrl__slot-end.sc-nano-select,.form-ctrl__slot-start.sc-nano-select,.form-ctrl__slot-value-end.sc-nano-select{--nano-icon-size:1.4em;margin-block:0;margin-inline:0;font-size:1em;border:0;outline:none;background-color:transparent;background-repeat:no-repeat;display:flex;align-items:stretch;inline-size:auto}.has-float-label.sc-nano-select .form-ctrl__slot-start.sc-nano-select{display:none}.form-ctrl__slot-start.sc-nano-select-s>*,.form-ctrl__slot-start .sc-nano-select-s>*,.form-ctrl__slot-end.sc-nano-select-s>*,.form-ctrl__slot-end .sc-nano-select-s>*,.form-ctrl__slot-value-end.sc-nano-select-s>*,.form-ctrl__slot-value-end .sc-nano-select-s>*,.form-ctrl__slot-value-end.sc-nano-select *.sc-nano-select{--nano-icon-size:1.4em;padding-inline:unset;-webkit-padding-start:var(--padding-start);padding-inline-start:var(--padding-start);-webkit-padding-end:var(--padding-end);padding-inline-end:var(--padding-end);font-size:1em;align-items:center;display:flex;block-size:100%;z-index:1}.sc-nano-select-h[disabled]:not([disabled=false]) .form-ctrl__slot-start.sc-nano-select-s>*,.sc-nano-select-h[disabled]:not([disabled=false]) .form-ctrl__slot-start .sc-nano-select-s>*,.sc-nano-select-h[disabled]:not([disabled=false]) .form-ctrl__slot-end.sc-nano-select-s>*,.sc-nano-select-h[disabled]:not([disabled=false]) .form-ctrl__slot-end .sc-nano-select-s>*,.sc-nano-select-h[disabled]:not([disabled=false]) .form-ctrl__slot-value-end.sc-nano-select-s>*,.sc-nano-select-h[disabled]:not([disabled=false]) .form-ctrl__slot-value-end .sc-nano-select-s>*,[disabled].sc-nano-select-h:not([disabled=false]) .form-ctrl__slot-value-end.sc-nano-select *.sc-nano-select{pointer-events:none}.form-ctrl__slot-value-end.sc-nano-select-s>*,.form-ctrl__slot-value-end .sc-nano-select-s>*,.form-ctrl__slot-value-end.sc-nano-select *.sc-nano-select{pointer-events:none}.form-ctrl__clear-btn.sc-nano-select{color:var(--clear-btn-color);padding:0;opacity:0;inline-size:0;-webkit-appearance:none;appearance:none;align-items:center;overflow:hidden}.is-invalid.sc-nano-select-h .form-ctrl__clear-btn.sc-nano-select{color:var(--clear-btn-color--invalid)}.has-value.sc-nano-select-h .form-ctrl__clear-btn.sc-nano-select{padding-block:0;padding-inline:var(--padding-start) var(--padding-end);opacity:1;inline-size:auto}.form-ctrl__clear-btn.sc-nano-select:hover{color:var(--clear-btn-color--hover)}.sc-nano-select-h{--placeholder-color:var(--nano-input-placeholder-color, initial);--placeholder-font-style:var(--nano-input-placeholder-style, initial);--placeholder-font-weight:var(--nano-input-placeholder-weight, initial);--placeholder-opacity:var(--nano-input-placeholder-opacity, 0.5);--padding-top:var(--nano-input-padding-top, var(--nano-input-padding, 8px));--padding-end:var(--nano-input-padding-end, var(--nano-input-padding, 8px));--padding-bottom:var(--nano-input-padding-bottom, var(--nano-input-padding, 6px));--padding-start:var(--nano-input-padding-start, var(--nano-input-padding, 8px));--color-invalid:var(--nano-color-danger-rgb, 239 65 53);--color--focus-rgb:var(\n --nano-color-base-rgb,\n var(--nano-color-primary-rgb, 0 116 149)\n );--input-font-size:var(--nano-input-font-size, 0.87em);--input-text-color:var(--nano-input-text-color, #4a4a4a);--input-border-width:var(--nano-input-border-width, 1px);--input-border-hint-width:3px;--input-border-color:var(--nano-input-border-color, #e4e6e8);--input-border-radius:var(--nano-input-border-radius, 0);--input-border-style:var(--nano-input-border-style, solid) var(--nano-input-border-color, #e4e6e8);--input-border-style--focus:var(--nano-input-border-style, solid) var(--nano-input-border-color--focus, #90c6e7);--input-border-style--invalid:var(--nano-input-border-style, solid) var(--nano-input-border-color--invalid, #e4e6e8);--input-border-style--invalid-focus:var(--nano-input-border-style, solid) var(--nano-input-border-color--invalid, #ef4135);--input-bg-color:var(--nano-input-background-color, #fff);--input-bg-color--focus:var(--input-bg-color);--input-bg-color--invalid:var(--nano-input-background-color, white);--invalid-msg-color:rgb(var(--color-invalid) / 100%);--invalid-msg-font-size:var(--nano-input-help-font-size, 0.75em);--help-msg-color:var(--nano-input-help-color, #616d6e);--clear-btn-color:var(--nano-clear-btn-color, rgba(0, 0, 0, 0.3));--clear-btn-color--hover:rgb(var(--color--focus-rgb) / 100%);--clear-btn-color--invalid:rgb(var(--color-invalid) / 100%);--label-color:var(--nano-input-label-color, \"currentcolor\");--label-color--focus:var(--label-color);--label-color--invalid:var(--nano-input-label-color-invalid, \"currentcolor\");--label-font-size:var(--nano-input-label-color, 1em);--multi-input-value-bg:var(--nano-input-tag-bg, 186 220 240);--multi-input-value-text-color:var(--nano-input-tag-color, #455556);--multi-input-value-border:var(--nano-input-tag-color, #badcf0);position:relative;width:100%;padding:0 !important;font-family:var(--nano-font-family, inherit);display:block}.nano-color.sc-nano-select-h{--input-border-style--focus:var(--nano-input-border-style, solid) var(\n --nano-color-tint,\n var(--nano-color-primary-tint, #2689a5)\n );--multi-input-value-bg:var(--nano-color-tint-rgb);--multi-input-value-border:var(--nano-color-shade);--multi-input-value-text-color:var(--nano-color-contrast);color:var(--nano-color-base)}nano-item.sc-nano-select-h:not(.item-label),nano-item:not(.item-label) .sc-nano-select-h{--padding-start:0}[disabled].sc-nano-select-h:not([disabled=false]) *.sc-nano-select{pointer-events:none !important}select.sc-nano-select{display:none}.select__native-input.sc-nano-select{font-family:inherit;font-size:inherit;font-stretch:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;text-decoration:inherit;text-overflow:inherit;text-transform:inherit;text-align:inherit;white-space:inherit;color:inherit;padding:unset;padding-inline:var(--padding-start) var(--padding-end);padding-block:0;border-radius:var(--input-border-radius);text-overflow:ellipsis;color:var(--input-text-color);display:inline-block;flex:1;width:100%;max-width:100%;max-height:100%;border:0;outline:none;background:transparent;-webkit-appearance:none;appearance:none;margin:0;box-sizing:border-box;resize:none;overflow:hidden;cursor:default;line-height:2.5em}.has-float-label.sc-nano-select .select__native-input.sc-nano-select{line-height:2.1em;min-height:2.1em;-webkit-padding-before:1.4em;padding-block-start:1.4em}.select__native-input.sc-nano-select::selection{background:transparent}.select__native-input.sc-nano-select::-moz-selection{background:transparent}.select__native-input.sc-nano-select::placeholder{color:var(--placeholder-color);font-family:inherit;font-style:var(--placeholder-font-style);font-weight:var(--placeholder-font-weight);opacity:var(--placeholder-opacity);line-height:inherit;min-height:initial}.select__native-input.sc-nano-select::-moz-placeholder{line-height:2.8em;text-overflow:ellipsis}.select__native-input.sc-nano-select:-webkit-autofill{background-color:transparent}.select__native-input.sc-nano-select::-webkit-search-decoration,.select__native-input.sc-nano-select::-webkit-search-cancel-button,.select__native-input.sc-nano-select::-webkit-search-results-button,.select__native-input.sc-nano-select::-webkit-search-results-decoration{-webkit-appearance:none;appearance:none}.select__native-input.sc-nano-select:invalid{box-shadow:none}.select__native-input.sc-nano-select::-ms-clear,.select__native-input.sc-nano-select::-ms-reveal{display:none}.select__native-input.resizable.sc-nano-select{resize:vertical;overflow:auto}.form-ctrl__textarea.sc-nano-select .select__native-input.sc-nano-select{line-height:1.5em;padding-block:var(--padding-top) var(--padding-bottom);white-space:pre-wrap}.form-ctrl__textarea.sc-nano-select .select__native-input.sc-nano-select::placeholder{line-height:1.5em}.has-float-label.textarea.sc-nano-select .select__native-input.sc-nano-select{-webkit-padding-before:1.8em;padding-block-start:1.8em}.masked.sc-nano-select-h .select__native-input.sc-nano-select{opacity:0;position:absolute;inset-inline-start:0;inset-block-start:0}.select__mask.sc-nano-select{font-family:inherit;font-size:inherit;font-stretch:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;text-decoration:inherit;text-overflow:inherit;text-transform:inherit;text-align:inherit;white-space:inherit;color:inherit;padding-inline:var(--padding-start) var(--padding-end);padding-block:0;border-radius:var(--input-border-radius);pointer-events:none;line-height:2.5em;min-height:2.5em}.select__multi-wrap.sc-nano-select{padding-block:0 var(--padding-bottom);padding-inline:0 0;display:flex;flex:1;flex-wrap:wrap;overflow:hidden;align-items:flex-start}.has-float-label.sc-nano-select-h .select__multi-wrap.sc-nano-select{-webkit-padding-before:1em;padding-block-start:1em}.select__multi-input.sc-nano-select{font-family:inherit;font-size:inherit;font-stretch:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;text-decoration:inherit;text-overflow:inherit;text-transform:inherit;text-align:inherit;white-space:inherit;color:inherit;padding-inline:var(--padding-start) var(--padding-end);padding-block:var(--padding-bottom) 0;min-width:50px;width:100%;max-height:100%;-webkit-appearance:none;appearance:none;border:0;outline:none;display:inline-block;background:transparent;flex:0;position:relative;box-sizing:border-box;line-height:calc(2.5em - var(--padding-bottom));height:calc(2.5em - var(--padding-bottom))}.select__multi-input.sc-nano-select:last-child{flex:1}.select__multi-value.sc-nano-select{margin-block:var(--padding-bottom) 0;margin-inline:var(--padding-start) -3px;background:rgb(var(--multi-input-value-bg)/80%);color:var(--multi-input-value-text-color);border:1px solid;border-color:var(--multi-input-value-border);padding:0.35em 0.5em;max-width:100%;display:flex;align-items:center;font-size:var(--input-font-size);letter-spacing:1px;max-height:calc(2.5em - 8px)}.select__multi-value.sc-nano-select span.sc-nano-select{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden;line-height:1}.select__multi-value-remove.sc-nano-select{background-position:center;-webkit-padding-start:0.5em;padding-inline-start:0.5em;margin:0;color:inherit;border:0;outline:none;background-color:transparent;background-repeat:no-repeat;-webkit-appearance:none;appearance:none;display:flex;align-items:center;inset-block-start:0;font-size:1em}.select__multi-value-remove.sc-nano-select nano-icon.sc-nano-select{--color:var(--multi-input-value-text-color)}.form-ctrl__float-label.sc-nano-select{width:calc(100% - (1em + var(--padding-start) * 2))}.has-focus.has-multiple.sc-nano-select-h .form-ctrl__float-label.sc-nano-select{transform:translateY(-110%);font-size:0.8em}.has-value.has-multiple.sc-nano-select-h .form-ctrl__float-label.sc-nano-select{transform:translateY(21%);inset-block-start:0}.has-focus.sc-nano-select-h select.sc-nano-select,.has-focus.sc-nano-select-h a.sc-nano-select,.has-focus.sc-nano-select-h button.sc-nano-select{pointer-events:auto}";
|
22448
|
+
const selectCss = ".sc-nano-select-h {\n box-sizing: border-box;\n}\n\n*.sc-nano-select, *.sc-nano-select::before, *.sc-nano-select::after {\n box-sizing: border-box;\n}\n[hidden].sc-nano-select {\n display: none !important;\n}\n[disabled].sc-nano-select-h:not([disabled=false]) {\n opacity: 0.5;\n}\n\n.form-ctrl.sc-nano-select {\n container-type: inline-size;\n min-inline-size: 100%;\n display: block;\n}\n.form-ctrl.has-helper-end.sc-nano-select {\n display: flex;\n gap: 1rem;\n}\n.form-ctrl.has-helper-end.sc-nano-select .form-ctrl__wrapper.sc-nano-select {\n flex: 1 1 100%;\n}\n.form-ctrl.has-helper-end.sc-nano-select .form-ctrl__helper-end.sc-nano-select {\n display: none;\n}\n@container (min-width: 350px) {\n .form-ctrl.has-helper-end .form-ctrl__helper-end {\n display: block !important;\n }\n .form-ctrl.has-helper-end .form-ctrl__helper {\n display: none !important;\n }\n}\n\n.form-ctrl__wrapper.sc-nano-select {\n display: block;\n}\n\nlabel.sc-nano-select, .form-ctrl__more.sc-nano-select, .form-ctrl__error.sc-nano-select, .form-ctrl__helper.sc-nano-select {\n display: block;\n inline-size: 100%;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\nlabel.visually-hide.sc-nano-select, .form-ctrl__more.visually-hide.sc-nano-select, .form-ctrl__error.visually-hide.sc-nano-select, .form-ctrl__helper.visually-hide.sc-nano-select {\n clip: rect(1px, 1px, 1px, 1px);\n -webkit-clip-path: inset(50%);\n clip-path: inset(50%);\n block-size: 1px;\n inline-size: 1px;\n margin: -1px;\n overflow: hidden;\n padding: 0;\n position: absolute;\n}\n\n.form-ctrl__float-label.sc-nano-select {\n padding-block: 0;\n -webkit-padding-end: 0;\n padding-inline-end: 0;\n -webkit-padding-start: var(--padding-start);\n padding-inline-start: var(--padding-start);\n color: var(--label-color);\n position: absolute;\n font-size: 1.15em;\n transform: translateY(-50%);\n transform-origin: top left;\n inset-block-start: 50%;\n transition: all 0.125s ease-in;\n opacity: 1;\n}\n.has-focus.sc-nano-select-h .form-ctrl__float-label.sc-nano-select, .has-value.sc-nano-select-h .form-ctrl__float-label.sc-nano-select {\n transform: translateY(-110%);\n font-size: 0.8em;\n opacity: 0.7;\n}\n.form-ctrl__float-label.sc-nano-select .form-ctrl__label-charcount.sc-nano-select {\n opacity: 0;\n transition: opacity 0.125s ease-in;\n}\n.has-focus.sc-nano-select-h .form-ctrl__float-label.sc-nano-select .form-ctrl__label-charcount.sc-nano-select, .has-value.sc-nano-select-h .form-ctrl__float-label.sc-nano-select .form-ctrl__label-charcount.sc-nano-select {\n opacity: 1;\n}\n.form-ctrl__textarea.sc-nano-select .form-ctrl__float-label.sc-nano-select {\n inset-block-start: 50%;\n}\n.has-focus.sc-nano-select-h .form-ctrl__textarea.sc-nano-select .form-ctrl__float-label.sc-nano-select {\n inset-block-start: 0;\n transform: translateY(38%);\n}\n.has-value.sc-nano-select-h .form-ctrl__textarea.sc-nano-select .form-ctrl__float-label.sc-nano-select {\n inset-block-start: 0;\n transform: translateY(38%);\n}\n\n.form-ctrl__label.sc-nano-select {\n color: var(--label-color);\n font-size: var(--label-font-size);\n -webkit-padding-after: var(--padding-bottom);\n padding-block-end: var(--padding-bottom);\n line-height: 1;\n display: flex;\n}\n.form-ctrl__label.sc-nano-select .form-ctrl__label-wrap.sc-nano-select {\n flex: 1;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.form-ctrl__label.sc-nano-select .form-ctrl__label-placeholder.sc-nano-select {\n margin-block: unset;\n -webkit-margin-end: 5px;\n margin-inline-end: 5px;\n -webkit-margin-start: 0;\n margin-inline-start: 0;\n opacity: 0;\n -webkit-appearance: none;\n appearance: none;\n transition: 0.3s ease opacity;\n font-size: 0.9em;\n}\n.form-ctrl__label.sc-nano-select .form-ctrl__label-charcount.sc-nano-select {\n margin-block: unset;\n -webkit-margin-end: 0;\n margin-inline-end: 0;\n -webkit-margin-start: auto;\n margin-inline-start: auto;\n font-size: 0.9em;\n opacity: 0.5;\n}\n.has-value.sc-nano-select-h .form-ctrl__label.sc-nano-select .form-ctrl__label-placeholder.sc-nano-select {\n opacity: 0.5;\n}\n.has-focus.sc-nano-select-h .form-ctrl__label.sc-nano-select {\n color: var(--label-color--focus);\n}\n.is-invalid.sc-nano-select-h:not([disabled]) .form-ctrl__label.sc-nano-select {\n color: var(--label-color--invalid);\n}\n\n.has-float-label.sc-nano-select .select__multi-input.sc-nano-select, .has-float-label.sc-nano-select .select__native-input.sc-nano-select, .has-float-label.sc-nano-select .input__native-ctrl.sc-nano-select {\n opacity: 0;\n transition: opacity 0.125s ease-in;\n}\n.has-focus.sc-nano-select-h .has-float-label.sc-nano-select .select__multi-input.sc-nano-select, .has-value.sc-nano-select-h .has-float-label.sc-nano-select .select__multi-input.sc-nano-select, .has-focus.sc-nano-select-h .has-float-label.sc-nano-select .select__native-input.sc-nano-select, .has-value.sc-nano-select-h .has-float-label.sc-nano-select .select__native-input.sc-nano-select, .has-focus.sc-nano-select-h .has-float-label.sc-nano-select .input__native-ctrl.sc-nano-select, .has-value.sc-nano-select-h .has-float-label.sc-nano-select .input__native-ctrl.sc-nano-select {\n opacity: 1;\n}\n\n.form-ctrl__more.sc-nano-select {\n block-size: 1em;\n position: relative;\n margin-block: 4px var(--padding-bottom);\n margin-inline: 3px 0;\n}\n\n.form-ctrl__helper.sc-nano-select, .form-ctrl__error.sc-nano-select {\n inset-block-start: 0;\n inset-inline-start: 0;\n position: absolute;\n font-size: var(--invalid-msg-font-size);\n line-height: 1.2;\n transition: 0.3s ease-out opacity;\n}\n\n.form-ctrl__helper.sc-nano-select {\n font-style: italic;\n color: var(--help-msg-color);\n}\n[show-inline-error].sc-nano-select-h:not([show-inline-error=false]):not([disabled]).is-invalid .form-ctrl__helper.sc-nano-select {\n opacity: 0;\n}\n\n.form-ctrl__helper-end.sc-nano-select {\n flex: 1 1 30%;\n min-inline-size: 150px;\n font-size: var(--invalid-msg-font-size);\n color: var(--help-msg-color);\n font-style: italic;\n}\n\n.form-ctrl__error.sc-nano-select {\n opacity: 0;\n color: var(--invalid-msg-color);\n font-stretch: condensed;\n}\n.is-invalid.sc-nano-select-h:not([disabled]) .form-ctrl__error.sc-nano-select {\n opacity: 1;\n}\n\n.form-ctrl__input.sc-nano-select {\n font-family: inherit;\n font-size: inherit;\n font-stretch: inherit;\n font-style: inherit;\n font-weight: inherit;\n letter-spacing: inherit;\n text-decoration: inherit;\n text-overflow: inherit;\n text-transform: inherit;\n text-align: inherit;\n white-space: inherit;\n color: inherit;\n border-radius: var(--input-border-radius);\n inline-size: 100%;\n padding: 0 !important;\n position: relative;\n flex: 1 0 auto;\n display: flex;\n background: var(--input-bg-color);\n border: var(--input-border-style);\n border-width: var(--input-border-width);\n font-size: var(--input-font-size);\n -webkit-padding-start: calc(var(--input-border-hint-width) - var(--input-border-width)) !important;\n padding-inline-start: calc(var(--input-border-hint-width) - var(--input-border-width)) !important;\n}\n.has-focus.sc-nano-select-h .form-ctrl__input.sc-nano-select {\n background: var(--input-bg-color--focus);\n border: var(--input-border-style--focus);\n border-width: var(--input-border-width);\n -webkit-padding-start: calc(var(--input-border-hint-width) - var(--input-border-width)) !important;\n padding-inline-start: calc(var(--input-border-hint-width) - var(--input-border-width)) !important;\n}\n.is-invalid.sc-nano-select-h:not([disabled]) .form-ctrl__input.sc-nano-select {\n background: var(--input-bg-color--invalid);\n border: var(--input-border-style--invalid);\n border-width: var(--input-border-width);\n -webkit-border-start: var(--input-border-style--invalid-focus) var(--input-border-hint-width);\n border-inline-start: var(--input-border-style--invalid-focus) var(--input-border-hint-width);\n -webkit-padding-start: 0 !important;\n padding-inline-start: 0 !important;\n}\n.is-invalid.has-focus.sc-nano-select-h:not([disabled]) .form-ctrl__input.sc-nano-select {\n background: var(--input-bg-color--invalid);\n border: var(--input-border-style--invalid-focus);\n border-width: var(--input-border-width);\n -webkit-border-start: var(--input-border-style--invalid-focus) var(--input-border-hint-width);\n border-inline-start: var(--input-border-style--invalid-focus) var(--input-border-hint-width);\n -webkit-padding-start: 0 !important;\n padding-inline-start: 0 !important;\n}\n\n.form-ctrl__input-wrap.sc-nano-select {\n display: flex;\n align-items: stretch;\n flex: 1;\n max-inline-size: 100%;\n}\n\n.form-ctrl__clear-btn.sc-nano-select, .form-ctrl__slot-end.sc-nano-select, .form-ctrl__slot-start.sc-nano-select, .form-ctrl__slot-value-end.sc-nano-select {\n --nano-icon-size: 1.4em;\n margin-block: 0;\n margin-inline: 0;\n font-size: 1em;\n border: 0;\n outline: none;\n background-color: transparent;\n background-repeat: no-repeat;\n display: flex;\n align-items: stretch;\n inline-size: auto;\n}\n\n.has-float-label.sc-nano-select .form-ctrl__slot-start.sc-nano-select {\n display: none;\n}\n\n.form-ctrl__slot-start.sc-nano-select-s > *, .form-ctrl__slot-start .sc-nano-select-s > *, .form-ctrl__slot-end.sc-nano-select-s > *, .form-ctrl__slot-end .sc-nano-select-s > *, .form-ctrl__slot-value-end.sc-nano-select-s > *, .form-ctrl__slot-value-end .sc-nano-select-s > *, .form-ctrl__slot-value-end.sc-nano-select *.sc-nano-select {\n --nano-icon-size: 1.4em;\n padding-inline: unset;\n -webkit-padding-start: var(--padding-start);\n padding-inline-start: var(--padding-start);\n -webkit-padding-end: var(--padding-end);\n padding-inline-end: var(--padding-end);\n font-size: 1em;\n align-items: center;\n display: flex;\n block-size: 100%;\n z-index: 1;\n}\n.sc-nano-select-h[disabled]:not([disabled=false]) .form-ctrl__slot-start.sc-nano-select-s > *, .sc-nano-select-h[disabled]:not([disabled=false]) .form-ctrl__slot-start .sc-nano-select-s > *, .sc-nano-select-h[disabled]:not([disabled=false]) .form-ctrl__slot-end.sc-nano-select-s > *, .sc-nano-select-h[disabled]:not([disabled=false]) .form-ctrl__slot-end .sc-nano-select-s > *, .sc-nano-select-h[disabled]:not([disabled=false]) .form-ctrl__slot-value-end.sc-nano-select-s > *, .sc-nano-select-h[disabled]:not([disabled=false]) .form-ctrl__slot-value-end .sc-nano-select-s > *, [disabled].sc-nano-select-h:not([disabled=false]) .form-ctrl__slot-value-end.sc-nano-select *.sc-nano-select {\n pointer-events: none;\n}\n\n.form-ctrl__slot-value-end.sc-nano-select-s > *, .form-ctrl__slot-value-end .sc-nano-select-s > *, .form-ctrl__slot-value-end.sc-nano-select *.sc-nano-select {\n pointer-events: none;\n}\n\n.form-ctrl__clear-btn.sc-nano-select {\n color: var(--clear-btn-color);\n padding: 0;\n opacity: 0;\n inline-size: 0;\n -webkit-appearance: none;\n appearance: none;\n align-items: center;\n overflow: hidden;\n}\n.is-invalid.sc-nano-select-h .form-ctrl__clear-btn.sc-nano-select {\n color: var(--clear-btn-color--invalid);\n}\n.has-value.sc-nano-select-h .form-ctrl__clear-btn.sc-nano-select {\n padding-block: 0;\n padding-inline: var(--padding-start) var(--padding-end);\n opacity: 1;\n inline-size: auto;\n}\n.form-ctrl__clear-btn.sc-nano-select:hover {\n color: var(--clear-btn-color--hover);\n}\n\n.sc-nano-select-h {\n \n --placeholder-color: var(--nano-input-placeholder-color, initial);\n --placeholder-font-style: var(--nano-input-placeholder-style, initial);\n --placeholder-font-weight: var(--nano-input-placeholder-weight, initial);\n --placeholder-opacity: var(--nano-input-placeholder-opacity, 0.5);\n --padding-top: var(--nano-input-padding-top, var(--nano-input-padding, 8px));\n --padding-end: var(--nano-input-padding-end, var(--nano-input-padding, 8px));\n --padding-bottom: var(--nano-input-padding-bottom, var(--nano-input-padding, 6px));\n --padding-start: var(--nano-input-padding-start, var(--nano-input-padding, 8px));\n --color-invalid: var(--nano-color-danger-rgb, 239 65 53);\n --color--focus-rgb:\n var(\n --nano-color-base-rgb,\n var(--nano-color-primary-rgb, 0 116 149)\n );\n --input-font-size: var(--nano-input-font-size, 0.87em);\n --input-text-color: var(--nano-input-text-color, #4a4a4a);\n --input-border-width: var(--nano-input-border-width, 1px);\n --input-border-hint-width: 3px;\n --input-border-color: var(--nano-input-border-color, #e4e6e8);\n --input-border-radius: var(--nano-input-border-radius, 0);\n --input-border-style: var(--nano-input-border-style, solid) var(--nano-input-border-color, #e4e6e8);\n --input-border-style--focus: var(--nano-input-border-style, solid) var(--nano-input-border-color--focus, #90c6e7);\n --input-border-style--invalid: var(--nano-input-border-style, solid) var(--nano-input-border-color--invalid, #e4e6e8);\n --input-border-style--invalid-focus: var(--nano-input-border-style, solid) var(--nano-input-border-color--invalid, #ef4135);\n --input-bg-color: var(--nano-input-background-color, #fff);\n --input-bg-color--focus: var(--input-bg-color);\n --input-bg-color--invalid: var(--nano-input-background-color, white);\n --invalid-msg-color: rgb(var(--color-invalid) / 100%);\n --invalid-msg-font-size: var(--nano-input-help-font-size, 0.75em);\n --help-msg-color: var(--nano-input-help-color, #616d6e);\n --clear-btn-color: var(--nano-clear-btn-color, rgba(0, 0, 0, 0.3));\n --clear-btn-color--hover: rgb(var(--color--focus-rgb) / 100%);\n --clear-btn-color--invalid: rgb(var(--color-invalid) / 100%);\n --label-color: var(--nano-input-label-color, \"currentcolor\");\n --label-color--focus: var(--label-color);\n --label-color--invalid: var(--nano-input-label-color-invalid, \"currentcolor\");\n --label-font-size: var(--nano-input-label-color, 1em);\n --multi-input-value-bg: var(--nano-input-tag-bg, 186 220 240);\n --multi-input-value-text-color: var(--nano-input-tag-color, #455556);\n --multi-input-value-border: var(--nano-input-tag-color, #badcf0);\n \n position: relative;\n width: 100%;\n padding: 0 !important;\n font-family: var(--nano-font-family, inherit);\n display: block;\n}\n\n.nano-color.sc-nano-select-h {\n --input-border-style--focus:\n var(--nano-input-border-style, solid) var(\n --nano-color-tint,\n var(--nano-color-primary-tint, #2689a5)\n );\n --multi-input-value-bg: var(--nano-color-tint-rgb);\n --multi-input-value-border: var(--nano-color-shade);\n --multi-input-value-text-color: var(--nano-color-contrast);\n color: var(--nano-color-base);\n}\n\nnano-item.sc-nano-select-h:not(.item-label), nano-item:not(.item-label) .sc-nano-select-h {\n --padding-start: 0;\n}\n\n[disabled].sc-nano-select-h:not([disabled=false]) *.sc-nano-select {\n pointer-events: none !important;\n}\n\nselect.sc-nano-select {\n display: none;\n}\n\n.select__native-input.sc-nano-select {\n font-family: inherit;\n font-size: inherit;\n font-stretch: inherit;\n font-style: inherit;\n font-weight: inherit;\n letter-spacing: inherit;\n text-decoration: inherit;\n text-overflow: inherit;\n text-transform: inherit;\n text-align: inherit;\n white-space: inherit;\n color: inherit;\n padding: unset;\n padding-inline: var(--padding-start) var(--padding-end);\n padding-block: 0;\n border-radius: var(--input-border-radius);\n text-overflow: ellipsis;\n color: var(--input-text-color);\n display: inline-block;\n flex: 1;\n width: 100%;\n max-width: 100%;\n max-height: 100%;\n border: 0;\n outline: none;\n background: transparent;\n -webkit-appearance: none;\n appearance: none;\n margin: 0;\n box-sizing: border-box;\n resize: none;\n overflow: hidden;\n cursor: default;\n line-height: 2.5em;\n \n \n}\n.has-float-label.sc-nano-select .select__native-input.sc-nano-select {\n line-height: 2.1em;\n min-height: 2.1em;\n -webkit-padding-before: 1.4em;\n padding-block-start: 1.4em;\n}\n.select__native-input.sc-nano-select::selection {\n background: transparent;\n}\n.select__native-input.sc-nano-select::-moz-selection {\n background: transparent;\n}\n.select__native-input.sc-nano-select::placeholder {\n color: var(--placeholder-color);\n font-family: inherit;\n font-style: var(--placeholder-font-style);\n font-weight: var(--placeholder-font-weight);\n opacity: var(--placeholder-opacity);\n line-height: inherit;\n min-height: initial;\n}\n.select__native-input.sc-nano-select::-moz-placeholder {\n line-height: 2.8em;\n text-overflow: ellipsis;\n}\n.select__native-input.sc-nano-select:-webkit-autofill {\n background-color: transparent;\n}\n.select__native-input.sc-nano-select::-webkit-search-decoration, .select__native-input.sc-nano-select::-webkit-search-cancel-button, .select__native-input.sc-nano-select::-webkit-search-results-button, .select__native-input.sc-nano-select::-webkit-search-results-decoration {\n -webkit-appearance: none;\n appearance: none;\n}\n.select__native-input.sc-nano-select:invalid {\n box-shadow: none;\n}\n.select__native-input.sc-nano-select::-ms-clear, .select__native-input.sc-nano-select::-ms-reveal {\n display: none;\n}\n.select__native-input.resizable.sc-nano-select {\n resize: vertical;\n overflow: auto;\n}\n.form-ctrl__textarea.sc-nano-select .select__native-input.sc-nano-select {\n line-height: 1.5em;\n padding-block: var(--padding-top) var(--padding-bottom);\n white-space: pre-wrap;\n}\n.form-ctrl__textarea.sc-nano-select .select__native-input.sc-nano-select::placeholder {\n line-height: 1.5em;\n}\n.has-float-label.textarea.sc-nano-select .select__native-input.sc-nano-select {\n -webkit-padding-before: 1.8em;\n padding-block-start: 1.8em;\n}\n.masked.sc-nano-select-h .select__native-input.sc-nano-select {\n opacity: 0;\n position: absolute;\n inset-inline-start: 0;\n inset-block-start: 0;\n}\n\n.select__mask.sc-nano-select {\n font-family: inherit;\n font-size: inherit;\n font-stretch: inherit;\n font-style: inherit;\n font-weight: inherit;\n letter-spacing: inherit;\n text-decoration: inherit;\n text-overflow: inherit;\n text-transform: inherit;\n text-align: inherit;\n white-space: inherit;\n color: inherit;\n padding-inline: var(--padding-start) var(--padding-end);\n padding-block: 0;\n border-radius: var(--input-border-radius);\n pointer-events: none;\n line-height: 2.5em;\n min-height: 2.5em;\n}\n\n.select__multi-wrap.sc-nano-select {\n padding-block: 0 var(--padding-bottom);\n padding-inline: 0 0;\n display: flex;\n flex: 1;\n flex-wrap: wrap;\n overflow: hidden;\n align-items: flex-start;\n}\n.has-float-label.sc-nano-select-h .select__multi-wrap.sc-nano-select {\n -webkit-padding-before: 1em;\n padding-block-start: 1em;\n}\n.select__multi-input.sc-nano-select {\n font-family: inherit;\n font-size: inherit;\n font-stretch: inherit;\n font-style: inherit;\n font-weight: inherit;\n letter-spacing: inherit;\n text-decoration: inherit;\n text-overflow: inherit;\n text-transform: inherit;\n text-align: inherit;\n white-space: inherit;\n color: inherit;\n padding-inline: var(--padding-start) var(--padding-end);\n padding-block: var(--padding-bottom) 0;\n min-width: 50px;\n width: 100%;\n max-height: 100%;\n -webkit-appearance: none;\n appearance: none;\n border: 0;\n outline: none;\n display: inline-block;\n background: transparent;\n flex: 0;\n position: relative;\n box-sizing: border-box;\n line-height: calc(2.5em - var(--padding-bottom));\n height: calc(2.5em - var(--padding-bottom));\n}\n.select__multi-input.sc-nano-select:last-child {\n flex: 1;\n}\n.select__multi-value.sc-nano-select {\n margin-block: var(--padding-bottom) 0;\n margin-inline: var(--padding-start) -3px;\n background: rgb(var(--multi-input-value-bg)/80%);\n color: var(--multi-input-value-text-color);\n border: 1px solid;\n border-color: var(--multi-input-value-border);\n padding: 0.35em 0.5em;\n max-width: 100%;\n display: flex;\n align-items: center;\n font-size: var(--input-font-size);\n letter-spacing: 1px;\n max-height: calc(2.5em - 8px);\n}\n.select__multi-value.sc-nano-select span.sc-nano-select {\n text-overflow: ellipsis;\n white-space: nowrap;\n max-width: 100%;\n overflow: hidden;\n line-height: 1;\n}\n.select__multi-value-remove.sc-nano-select {\n background-position: center;\n -webkit-padding-start: 0.5em;\n padding-inline-start: 0.5em;\n margin: 0;\n color: inherit;\n border: 0;\n outline: none;\n background-color: transparent;\n background-repeat: no-repeat;\n -webkit-appearance: none;\n appearance: none;\n display: flex;\n align-items: center;\n inset-block-start: 0;\n font-size: 1em;\n}\n.select__multi-value-remove.sc-nano-select nano-icon.sc-nano-select {\n --color: var(--multi-input-value-text-color);\n}\n\n.form-ctrl__float-label.sc-nano-select {\n width: calc(100% - (1em + var(--padding-start) * 2));\n}\n.has-focus.has-multiple.sc-nano-select-h .form-ctrl__float-label.sc-nano-select {\n transform: translateY(-110%);\n font-size: 0.8em;\n}\n.has-value.has-multiple.sc-nano-select-h .form-ctrl__float-label.sc-nano-select {\n transform: translateY(21%);\n inset-block-start: 0;\n}\n\n.has-focus.sc-nano-select-h select.sc-nano-select, .has-focus.sc-nano-select-h a.sc-nano-select, .has-focus.sc-nano-select-h button.sc-nano-select {\n pointer-events: auto;\n}";
|
22384
22449
|
|
22385
22450
|
let selectIds = 0;
|
22386
22451
|
/**
|
@@ -27365,6 +27430,733 @@ const waitForSlides = (host) => {
|
|
27365
27430
|
});
|
27366
27431
|
};
|
27367
27432
|
|
27433
|
+
/** Begins listening for dragging. */
|
27434
|
+
function drag(container, options) {
|
27435
|
+
const initialOffsets = {
|
27436
|
+
pageX: 0,
|
27437
|
+
pageY: 0,
|
27438
|
+
offsetX: 0,
|
27439
|
+
offsetY: 0,
|
27440
|
+
};
|
27441
|
+
function move(pointerEvent) {
|
27442
|
+
const dims = container.getBoundingClientRect();
|
27443
|
+
const defaultView = container.ownerDocument.defaultView;
|
27444
|
+
const offsetX = dims.left + defaultView.pageXOffset;
|
27445
|
+
const offsetY = dims.top + defaultView.pageYOffset;
|
27446
|
+
let x = 0;
|
27447
|
+
let y = 0;
|
27448
|
+
if (options.relative) {
|
27449
|
+
x =
|
27450
|
+
pointerEvent.pageX -
|
27451
|
+
initialOffsets.pageX -
|
27452
|
+
(offsetX - initialOffsets.offsetX);
|
27453
|
+
y =
|
27454
|
+
pointerEvent.pageY -
|
27455
|
+
initialOffsets.pageY -
|
27456
|
+
(offsetY - initialOffsets.offsetY);
|
27457
|
+
}
|
27458
|
+
else {
|
27459
|
+
x = pointerEvent.pageX - offsetX;
|
27460
|
+
y = pointerEvent.pageY - offsetY;
|
27461
|
+
}
|
27462
|
+
if (options === null || options === void 0 ? void 0 : options.onMove) {
|
27463
|
+
options.onMove(x, y);
|
27464
|
+
}
|
27465
|
+
}
|
27466
|
+
function stop() {
|
27467
|
+
document.removeEventListener('pointermove', move);
|
27468
|
+
document.removeEventListener('pointerup', stop);
|
27469
|
+
if (options === null || options === void 0 ? void 0 : options.onStop) {
|
27470
|
+
options.onStop();
|
27471
|
+
}
|
27472
|
+
}
|
27473
|
+
document.addEventListener('pointermove', move, { passive: true });
|
27474
|
+
document.addEventListener('pointerup', stop);
|
27475
|
+
if (!!!(options === null || options === void 0 ? void 0 : options.initialEvent))
|
27476
|
+
return;
|
27477
|
+
let initialEvent;
|
27478
|
+
if (options === null || options === void 0 ? void 0 : options.initialEvent['touches']) {
|
27479
|
+
initialEvent = {
|
27480
|
+
pageX: (options === null || options === void 0 ? void 0 : options.initialEvent).touches[0].pageX,
|
27481
|
+
pageY: (options === null || options === void 0 ? void 0 : options.initialEvent).touches[0].pageY,
|
27482
|
+
};
|
27483
|
+
}
|
27484
|
+
else {
|
27485
|
+
initialEvent = {
|
27486
|
+
pageX: (options === null || options === void 0 ? void 0 : options.initialEvent).pageX,
|
27487
|
+
pageY: (options === null || options === void 0 ? void 0 : options.initialEvent).pageY,
|
27488
|
+
};
|
27489
|
+
}
|
27490
|
+
const defaultView = container.ownerDocument.defaultView;
|
27491
|
+
const dims = container.getBoundingClientRect();
|
27492
|
+
initialOffsets.pageX = initialEvent.pageX;
|
27493
|
+
initialOffsets.pageY = initialEvent.pageY;
|
27494
|
+
initialOffsets.offsetX = dims.left + defaultView.pageXOffset;
|
27495
|
+
initialOffsets.offsetY = dims.top + defaultView.pageYOffset;
|
27496
|
+
// move(initialEvent);
|
27497
|
+
}
|
27498
|
+
|
27499
|
+
const sortableCss = "/*!@:host*/.sc-nano-sortable-h{box-sizing:border-box}/*!@*,\n*::before,\n*::after*/*.sc-nano-sortable,*.sc-nano-sortable::before,*.sc-nano-sortable::after{box-sizing:border-box}/*!@[hidden]*/[hidden].sc-nano-sortable{display:none !important}/*!@:host*/.sc-nano-sortable-h{position:relative;display:block}/*!@.sortable__live-region*/.sortable__live-region.sc-nano-sortable{clip:rect(1px, 1px, 1px, 1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);block-size:1px;inline-size:1px;margin:-1px;overflow:hidden;padding:0;position:absolute}";
|
27500
|
+
|
27501
|
+
// Orientation map to limit dragging to horizontal or vertical.
|
27502
|
+
const orientationMap = {
|
27503
|
+
horizontal: { x: 1, y: 0 },
|
27504
|
+
vertical: { x: 0, y: 1 },
|
27505
|
+
};
|
27506
|
+
let sortableIds = 0;
|
27507
|
+
/**
|
27508
|
+
* An accessible and flexible re-order / sort utility component.
|
27509
|
+
*
|
27510
|
+
*- Drag and drop via mouse, touch or keyboard
|
27511
|
+
*- Live announcements for screen readers
|
27512
|
+
*- Works with or without an explicit handle (although with is preferable)
|
27513
|
+
|
27514
|
+
* @part announcements - the a11y, live region. Visually hidden by default
|
27515
|
+
*
|
27516
|
+
* @slot - The default slot containing any items you might want to sort
|
27517
|
+
*/
|
27518
|
+
class Sortable {
|
27519
|
+
handleItemSelectorChange() {
|
27520
|
+
this.refreshKeyboardHandles();
|
27521
|
+
}
|
27522
|
+
handleHandleSelectorChange() {
|
27523
|
+
this.refreshKeyboardHandles();
|
27524
|
+
this.attachMutationObserver();
|
27525
|
+
}
|
27526
|
+
handleCreateKeyboardHandleChange() {
|
27527
|
+
this.refreshKeyboardHandles();
|
27528
|
+
}
|
27529
|
+
handleSortableHostElement(_newVal, oldVal) {
|
27530
|
+
if (oldVal)
|
27531
|
+
this.removeEventHandlers(oldVal);
|
27532
|
+
this.addEventHandlers();
|
27533
|
+
this.refreshKeyboardHandles();
|
27534
|
+
this.attachMutationObserver();
|
27535
|
+
if (this.sortableHostElement) {
|
27536
|
+
// sortable host must have position relative
|
27537
|
+
this.sortableHostElement.style.position = 'relative';
|
27538
|
+
}
|
27539
|
+
}
|
27540
|
+
/** If sortable elements change dynamically, use this method to add handle controls to new elements */
|
27541
|
+
async refreshKeyboardHandles() {
|
27542
|
+
var _a, _b, _c;
|
27543
|
+
if (this.handleSelector) {
|
27544
|
+
if ((_a = this.keyboardHandleMap) === null || _a === void 0 ? void 0 : _a.size) {
|
27545
|
+
this.keyboardHandleMap.clear();
|
27546
|
+
}
|
27547
|
+
this.sortableHost
|
27548
|
+
.querySelectorAll(this.handleSelector)
|
27549
|
+
.forEach((handle) => {
|
27550
|
+
if (!handle.getAttribute('aria-describedby'))
|
27551
|
+
handle.setAttribute('aria-describedby', this.sortableId);
|
27552
|
+
const sortEle = handle.closest(this.itemSelector);
|
27553
|
+
if (sortEle)
|
27554
|
+
this.keyboardHandleMap.set(handle, sortEle);
|
27555
|
+
});
|
27556
|
+
return;
|
27557
|
+
}
|
27558
|
+
if ((_b = this.keyboardHandleMap) === null || _b === void 0 ? void 0 : _b.size) {
|
27559
|
+
(_c = this.keyboardHandleMap) === null || _c === void 0 ? void 0 : _c.forEach((_ele, handle) => handle.remove());
|
27560
|
+
this.keyboardHandleMap.clear();
|
27561
|
+
}
|
27562
|
+
this.sortableHost
|
27563
|
+
.querySelectorAll(this.itemSelector)
|
27564
|
+
.forEach((ele, i) => {
|
27565
|
+
const handle = this.createKeyboardHandle(i, ele);
|
27566
|
+
if (!handle) {
|
27567
|
+
console.error('`createKeyboardHandle` *must* return the handle element it creates');
|
27568
|
+
return;
|
27569
|
+
}
|
27570
|
+
this.keyboardHandleMap.set(handle, ele);
|
27571
|
+
handle.setAttribute('aria-describedby', this.sortableId);
|
27572
|
+
});
|
27573
|
+
}
|
27574
|
+
/**
|
27575
|
+
* Get instance of sortable host.
|
27576
|
+
* By default it is `nano-sortable` which can be overridden by property `sortableHostElement`
|
27577
|
+
*/
|
27578
|
+
get sortableHost() {
|
27579
|
+
if (this.sortableHostElement)
|
27580
|
+
return this.sortableHostElement;
|
27581
|
+
return this.host;
|
27582
|
+
}
|
27583
|
+
/**
|
27584
|
+
* Queues aria messages which are then displayed in a 'live' region.
|
27585
|
+
* Messages are cleared after 10s
|
27586
|
+
* @param msg aria message to announce
|
27587
|
+
*/
|
27588
|
+
addAriaMsg(msg) {
|
27589
|
+
this.ariaTextList = [...this.ariaTextList, msg];
|
27590
|
+
setTimeout(() => {
|
27591
|
+
const mIdx = this.ariaTextList.indexOf(msg);
|
27592
|
+
this.ariaTextList.splice(mIdx, 1);
|
27593
|
+
this.ariaTextList = [...this.ariaTextList];
|
27594
|
+
}, 10000);
|
27595
|
+
}
|
27596
|
+
/**
|
27597
|
+
* Try to stop text highlight whilst dragging
|
27598
|
+
* @param userSelect
|
27599
|
+
*/
|
27600
|
+
updateUserSelectStyle(userSelect) {
|
27601
|
+
this.host.style.userSelect = userSelect;
|
27602
|
+
// @ts-ignore
|
27603
|
+
this.host.style.MozUserSelect = userSelect;
|
27604
|
+
// @ts-ignore
|
27605
|
+
this.host.style.msUserSelect = userSelect;
|
27606
|
+
this.host.style.webkitUserSelect = userSelect;
|
27607
|
+
}
|
27608
|
+
/**
|
27609
|
+
* Fast and simple hit test to check whether the center of a node intersects with the rectangle of any of the
|
27610
|
+
* given targets. Returns an array of matches.
|
27611
|
+
* @param node
|
27612
|
+
* @param targets
|
27613
|
+
* @returns all the items that currently intersect with the target node
|
27614
|
+
*/
|
27615
|
+
hitTest(node, targets) {
|
27616
|
+
const { left: l, top: t, width: w, height: h, } = node.getBoundingClientRect();
|
27617
|
+
const x = l + w / 2;
|
27618
|
+
const y = t + h / 2;
|
27619
|
+
return targets.filter((item) => {
|
27620
|
+
const { left, right, top, bottom } = item.getBoundingClientRect();
|
27621
|
+
return !(x < left || x > right || y < top || y > bottom);
|
27622
|
+
});
|
27623
|
+
}
|
27624
|
+
/**
|
27625
|
+
* Returns a boolean indicating whether the node is currently in an animation.
|
27626
|
+
* @param node
|
27627
|
+
* @returns whether a node is currently animating or not
|
27628
|
+
*/
|
27629
|
+
isAnimating(node) {
|
27630
|
+
return this.animatedElements.indexOf(node) !== -1;
|
27631
|
+
}
|
27632
|
+
/**
|
27633
|
+
* Triggers a CSS animation on a node with the given dx and dy. Used following dom updates to make it appear as
|
27634
|
+
* if nodes animate from their old to their new position in the dom. */
|
27635
|
+
animateNode(node, dx = 0, dy = 0) {
|
27636
|
+
if (!node.animate) {
|
27637
|
+
return;
|
27638
|
+
}
|
27639
|
+
// keep a stack of currently animating nodes to exclude as drag & drop targets.
|
27640
|
+
this.animatedElements.push(node);
|
27641
|
+
node.style.willChange = 'transform';
|
27642
|
+
// animate from dx/dy (old node position) to none (new node position)
|
27643
|
+
writeTask(() => {
|
27644
|
+
this.animationPromise = new Promise((resolve) => {
|
27645
|
+
node
|
27646
|
+
.animate([
|
27647
|
+
{ transform: `translate3d(${dx}px, ${dy}px, 0)` },
|
27648
|
+
{ transform: 'none' },
|
27649
|
+
], this.animationTiming)
|
27650
|
+
.addEventListener('finish', () => {
|
27651
|
+
const index = this.animatedElements.indexOf(node);
|
27652
|
+
node.style.willChange = '';
|
27653
|
+
if (index !== -1) {
|
27654
|
+
// splice out when done to unlock as a valid target
|
27655
|
+
this.animatedElements.splice(index, 1);
|
27656
|
+
}
|
27657
|
+
resolve();
|
27658
|
+
delete this.animationPromise;
|
27659
|
+
}, { once: true });
|
27660
|
+
});
|
27661
|
+
});
|
27662
|
+
}
|
27663
|
+
/**
|
27664
|
+
* Inserts node at target to update sibling sorting. If the node precedes the target, it is inserted after it;
|
27665
|
+
* If it follows the target, it is inserted before it. This ensures any node can be dragged from the very
|
27666
|
+
* beginning to the very end and vice versa. The animateNode function is called for all nodes that moved because
|
27667
|
+
* of this dom update */
|
27668
|
+
insertAtTarget(node, target) {
|
27669
|
+
if (!node || !target)
|
27670
|
+
return;
|
27671
|
+
let offsets = [];
|
27672
|
+
if (this.animationEnabled) {
|
27673
|
+
offsets = this.sortableNodes.map((item) => ({
|
27674
|
+
x: item.offsetLeft,
|
27675
|
+
y: item.offsetTop,
|
27676
|
+
}));
|
27677
|
+
}
|
27678
|
+
if (!node.isConnected || !target.isConnected)
|
27679
|
+
return;
|
27680
|
+
if (this.dropzoneNodes.indexOf(target) > -1) {
|
27681
|
+
target.append(node);
|
27682
|
+
}
|
27683
|
+
else {
|
27684
|
+
const nodeComparison = node.compareDocumentPosition(target);
|
27685
|
+
let position;
|
27686
|
+
if (nodeComparison & this.host.DOCUMENT_POSITION_FOLLOWING) {
|
27687
|
+
position =
|
27688
|
+
target.parentNode === node.parentNode ? 'afterend' : 'beforebegin';
|
27689
|
+
}
|
27690
|
+
if (nodeComparison & this.host.DOCUMENT_POSITION_PRECEDING) {
|
27691
|
+
position =
|
27692
|
+
target.parentNode === node.parentNode ? 'beforebegin' : 'afterend';
|
27693
|
+
}
|
27694
|
+
if (position)
|
27695
|
+
target.insertAdjacentElement(position, node);
|
27696
|
+
}
|
27697
|
+
if (this.animationEnabled) {
|
27698
|
+
this.sortableNodes.forEach((sortableNode, i) => {
|
27699
|
+
const { x, y } = offsets[i];
|
27700
|
+
const dx = x - sortableNode.offsetLeft;
|
27701
|
+
const dy = y - sortableNode.offsetTop;
|
27702
|
+
if (dx !== 0 || dy !== 0) {
|
27703
|
+
this.animateNode(sortableNode, dx, dy);
|
27704
|
+
}
|
27705
|
+
});
|
27706
|
+
}
|
27707
|
+
}
|
27708
|
+
reset() {
|
27709
|
+
if (this.draggedElementClone !== undefined &&
|
27710
|
+
this.draggedElementClone.parentNode !== null) {
|
27711
|
+
this.draggedElementClone.parentNode.removeChild(this.draggedElementClone);
|
27712
|
+
}
|
27713
|
+
if (this.draggedElement &&
|
27714
|
+
this.draggedElement.parentNode &&
|
27715
|
+
this.draggedElementOrigin) {
|
27716
|
+
this.draggedElement.classList.remove(this.placeholderClass);
|
27717
|
+
}
|
27718
|
+
if (this.dropzoneActiveClass && this.dropzoneNodes.length) {
|
27719
|
+
this.dropzoneNodes.forEach((dze) => dze.classList.remove(this.dropzoneActiveClass));
|
27720
|
+
}
|
27721
|
+
delete this.draggedElementClone;
|
27722
|
+
delete this.draggedElement;
|
27723
|
+
this.dropzoneNodes = [];
|
27724
|
+
this.sortableNodes = [];
|
27725
|
+
this.animatedElements = [];
|
27726
|
+
this.dragRequestPending = false;
|
27727
|
+
this.updateUserSelectStyle('');
|
27728
|
+
}
|
27729
|
+
/**
|
27730
|
+
* Clones a given node to visually drag around. The original node is left in the same flow as its siblings.
|
27731
|
+
* Clone styles are added onto the style object directly, since the ::slotted()
|
27732
|
+
* selector can't universally target nodes that may be nested an unknown amount of shadow dom levels deep
|
27733
|
+
* @param node html node to clone
|
27734
|
+
* @returns the cloned html node
|
27735
|
+
*/
|
27736
|
+
createClone(node) {
|
27737
|
+
const clone = node.cloneNode(true);
|
27738
|
+
if (node.id)
|
27739
|
+
clone.id = 'clone__' + clone.id;
|
27740
|
+
/**
|
27741
|
+
* Bugfix for table row sorting.
|
27742
|
+
* During dragging table rows shrink, so we manually set them width of original node.
|
27743
|
+
*/
|
27744
|
+
Array.from(clone.children).forEach((nodeChild, index) => {
|
27745
|
+
const clonedNodeChild = nodeChild;
|
27746
|
+
const originalNodeChild = node.children.item(index);
|
27747
|
+
if (originalNodeChild) {
|
27748
|
+
clonedNodeChild.style.width = `${originalNodeChild.offsetWidth}px`;
|
27749
|
+
}
|
27750
|
+
});
|
27751
|
+
const { offsetLeft: x, offsetTop: y, offsetWidth: w, offsetHeight: h, } = node;
|
27752
|
+
Object.assign(clone.style, {
|
27753
|
+
position: 'absolute',
|
27754
|
+
left: `calc(${x}px - var(--grab-offset-x, 0px))`,
|
27755
|
+
top: `calc(${y}px - var(--grab-offset-y, 0px))`,
|
27756
|
+
height: this.dragResize ? `${h}px` : undefined,
|
27757
|
+
width: this.dragResize ? `${w}px` : undefined,
|
27758
|
+
willChange: 'transform,opacity',
|
27759
|
+
});
|
27760
|
+
clone.classList.add(this.draggedClass);
|
27761
|
+
return node.parentNode.appendChild(clone);
|
27762
|
+
}
|
27763
|
+
/// Event handlers ///
|
27764
|
+
removeEventHandlers(ele) {
|
27765
|
+
ele = ele || this.sortableHost;
|
27766
|
+
ele.removeEventListener('mousedown', this.handleTrack);
|
27767
|
+
ele.removeEventListener('touchstart', this.handleTrack);
|
27768
|
+
ele.removeEventListener('keydown', this.handleKeydown);
|
27769
|
+
}
|
27770
|
+
addEventHandlers(ele) {
|
27771
|
+
ele = ele || this.sortableHost;
|
27772
|
+
ele.addEventListener('mousedown', this.handleTrack);
|
27773
|
+
ele.addEventListener('touchstart', this.handleTrack);
|
27774
|
+
ele.addEventListener('keydown', this.handleKeydown);
|
27775
|
+
}
|
27776
|
+
/**
|
27777
|
+
* Watch for any changes in grab-able handle elements.
|
27778
|
+
*/
|
27779
|
+
attachMutationObserver() {
|
27780
|
+
return;
|
27781
|
+
}
|
27782
|
+
handleKeydown(e) {
|
27783
|
+
const targetElement = e.target;
|
27784
|
+
let foundHandle;
|
27785
|
+
let sortEle;
|
27786
|
+
if (this.handleSelector) {
|
27787
|
+
foundHandle = targetElement.closest(this.handleSelector);
|
27788
|
+
sortEle = targetElement.closest(this.itemSelector);
|
27789
|
+
}
|
27790
|
+
else {
|
27791
|
+
sortEle = this.keyboardHandleMap.get(targetElement);
|
27792
|
+
foundHandle = targetElement;
|
27793
|
+
}
|
27794
|
+
// have we found a handle and matching sort element from the keydown element
|
27795
|
+
if (!foundHandle || !sortEle)
|
27796
|
+
return;
|
27797
|
+
const activateSort = (isActive) => {
|
27798
|
+
this.keyboardSortActive = isActive;
|
27799
|
+
this.draggedElement = isActive ? sortEle : undefined;
|
27800
|
+
sortEle.classList.toggle(this.draggedClass, isActive);
|
27801
|
+
foundHandle.classList.toggle(this.handleDraggedClass, isActive);
|
27802
|
+
if (isActive) {
|
27803
|
+
this.addAriaMsg(this.grabbedHelperText(sortEle));
|
27804
|
+
document.addEventListener('mousedown', () => activateSort(false), {
|
27805
|
+
once: true,
|
27806
|
+
});
|
27807
|
+
}
|
27808
|
+
else {
|
27809
|
+
this.addAriaMsg(this.droppedHelperText(sortEle));
|
27810
|
+
}
|
27811
|
+
};
|
27812
|
+
// start editing this element's order?
|
27813
|
+
if ([' ', 'Space', 'Enter'].includes(e.key)) {
|
27814
|
+
e.preventDefault();
|
27815
|
+
if (!this.keyboardSortActive) {
|
27816
|
+
// grabbed the element
|
27817
|
+
activateSort(true);
|
27818
|
+
this.sortableNodes =
|
27819
|
+
Array.from(this.sortableHost.querySelectorAll(this.itemSelector)) ||
|
27820
|
+
[];
|
27821
|
+
const nanoGrabbedEv = this.nanoGrabbed.emit({
|
27822
|
+
element: sortEle,
|
27823
|
+
index: this.sortableNodes.indexOf(sortEle),
|
27824
|
+
});
|
27825
|
+
if (nanoGrabbedEv.defaultPrevented) {
|
27826
|
+
activateSort(false);
|
27827
|
+
return;
|
27828
|
+
}
|
27829
|
+
}
|
27830
|
+
else {
|
27831
|
+
// dropped the element
|
27832
|
+
activateSort(false);
|
27833
|
+
this.nanoDropped.emit({ element: sortEle });
|
27834
|
+
}
|
27835
|
+
return;
|
27836
|
+
}
|
27837
|
+
if (!this.keyboardSortActive)
|
27838
|
+
return;
|
27839
|
+
// Tabbing away from this handle - deactivate
|
27840
|
+
if (['Escape', 'Tab'].includes(e.key))
|
27841
|
+
activateSort(false);
|
27842
|
+
let moveKeys = ['Home', 'End'];
|
27843
|
+
if (!this.orientation || this.orientation === 'horizontal')
|
27844
|
+
moveKeys = [...moveKeys, 'ArrowRight', 'ArrowLeft'];
|
27845
|
+
if (!this.orientation || this.orientation === 'vertical')
|
27846
|
+
moveKeys = [...moveKeys, 'ArrowUp', 'ArrowDown'];
|
27847
|
+
if (!moveKeys.includes(e.key))
|
27848
|
+
return;
|
27849
|
+
// move the element with the keyboard
|
27850
|
+
e.preventDefault();
|
27851
|
+
/** Collect all elements that have drag positions.
|
27852
|
+
* Both sortable elements and 'dropzones' (placeholders where items can always be placed) */
|
27853
|
+
this.sortableNodes =
|
27854
|
+
Array.from(this.sortableHost.querySelectorAll(this.itemSelector)) || [];
|
27855
|
+
this.dropzoneNodes =
|
27856
|
+
Array.from(this.sortableHost.querySelectorAll(this.dropzoneSelector)) ||
|
27857
|
+
[];
|
27858
|
+
const currIdx = this.sortableNodes.indexOf(this.draggedElement);
|
27859
|
+
let curDzIdx = -1;
|
27860
|
+
if (this.dropzoneNodes.length) {
|
27861
|
+
const curDropzone = this.draggedElement.closest(this.dropzoneSelector);
|
27862
|
+
curDzIdx = this.dropzoneNodes.indexOf(curDropzone);
|
27863
|
+
curDzIdx = curDzIdx > -1 ? curDzIdx : -1;
|
27864
|
+
}
|
27865
|
+
/** If we don't have a next / prev sortable element in our list, test to see if there's a dropzone instead */
|
27866
|
+
const prevEle = currIdx - 1 < 0 && curDzIdx > -1
|
27867
|
+
? this.dropzoneNodes[curDzIdx - 1]
|
27868
|
+
: this.sortableNodes[currIdx - 1];
|
27869
|
+
const nextEle = currIdx + 1 === this.sortableNodes.length && curDzIdx > -1
|
27870
|
+
? this.dropzoneNodes[curDzIdx + 1]
|
27871
|
+
: this.sortableNodes[currIdx + 1];
|
27872
|
+
if (e.key === 'Home') {
|
27873
|
+
this.insertAtTarget(this.draggedElement, this.sortableNodes[0]);
|
27874
|
+
}
|
27875
|
+
if (e.key === 'End') {
|
27876
|
+
this.insertAtTarget(this.draggedElement, this.sortableNodes[this.sortableNodes.length - 1]);
|
27877
|
+
}
|
27878
|
+
if (['ArrowRight', 'ArrowDown'].includes(e.key)) {
|
27879
|
+
this.insertAtTarget(this.draggedElement, nextEle);
|
27880
|
+
}
|
27881
|
+
if (['ArrowLeft', 'ArrowUp'].includes(e.key)) {
|
27882
|
+
this.insertAtTarget(this.draggedElement, prevEle);
|
27883
|
+
}
|
27884
|
+
this.finishOrder();
|
27885
|
+
this.draggedElement = sortEle;
|
27886
|
+
const focus = () => {
|
27887
|
+
requestAnimationFrame(() => {
|
27888
|
+
typeof foundHandle['setFocus'] === 'function'
|
27889
|
+
? foundHandle.setFocus()
|
27890
|
+
: foundHandle.focus();
|
27891
|
+
});
|
27892
|
+
};
|
27893
|
+
// replace focus to handle so we don't 'drop' the element
|
27894
|
+
if (this.animationPromise)
|
27895
|
+
this.animationPromise.then(() => focus());
|
27896
|
+
else
|
27897
|
+
focus();
|
27898
|
+
}
|
27899
|
+
/**
|
27900
|
+
* Tracks a pointer from touchstart/mousedown to touchend/mouseup. Note that the start state is fired following
|
27901
|
+
* the first actual move event following a touchstart/mousedown */
|
27902
|
+
handleTrack(e) {
|
27903
|
+
if (this.dragRequestPending || (e.button && e.button !== 1))
|
27904
|
+
return;
|
27905
|
+
clearTimeout(this.mouseDownTimer);
|
27906
|
+
this.mouseDownTimer = window === null || window === void 0 ? void 0 : window.setTimeout(() => {
|
27907
|
+
if (!this.trackStart(e))
|
27908
|
+
return;
|
27909
|
+
this.addAriaMsg(this.grabbedHelperText(this.draggedElement));
|
27910
|
+
drag(this.sortableHost, {
|
27911
|
+
initialEvent: e,
|
27912
|
+
relative: true,
|
27913
|
+
onMove: (x, y) => {
|
27914
|
+
this.trackMove(x, y);
|
27915
|
+
},
|
27916
|
+
onStop: () => {
|
27917
|
+
this.nanoDropped.emit({ element: this.draggedElement });
|
27918
|
+
const didStop = () => {
|
27919
|
+
this.addAriaMsg(this.droppedHelperText(this.draggedElement));
|
27920
|
+
requestAnimationFrame(() => this.finishOrder());
|
27921
|
+
};
|
27922
|
+
if (this.animationPromise) {
|
27923
|
+
this.animationPromise.then(() => didStop());
|
27924
|
+
}
|
27925
|
+
else
|
27926
|
+
didStop();
|
27927
|
+
},
|
27928
|
+
});
|
27929
|
+
}, 100);
|
27930
|
+
document.addEventListener('mouseup', () => clearTimeout(this.mouseDownTimer), { once: true });
|
27931
|
+
}
|
27932
|
+
/**
|
27933
|
+
* Initialized a drag and drop sequence if a child node was clicked that matches the itemSelector property.
|
27934
|
+
* OR If a handleSelector is defined, a node matching this selector must be clicked instead
|
27935
|
+
* @returns boolean - whether tracking for this event should continue or not
|
27936
|
+
*/
|
27937
|
+
trackStart(e) {
|
27938
|
+
const targetElement = e.target;
|
27939
|
+
let targetHandle;
|
27940
|
+
// If we have a handle set, return now if not being pressed
|
27941
|
+
if (this.handleSelector) {
|
27942
|
+
targetHandle = targetElement.closest(this.handleSelector);
|
27943
|
+
if (!targetHandle)
|
27944
|
+
return;
|
27945
|
+
targetHandle.classList.add(this.handleDraggedClass);
|
27946
|
+
}
|
27947
|
+
// Check that we've found the target element via itemSelector
|
27948
|
+
const node = targetElement.closest(this.itemSelector);
|
27949
|
+
if (!node)
|
27950
|
+
return false;
|
27951
|
+
this.sortableNodes =
|
27952
|
+
Array.from(this.sortableHost.querySelectorAll(this.itemSelector)) || [];
|
27953
|
+
const nanoGrabbedEv = this.nanoGrabbed.emit({
|
27954
|
+
element: node,
|
27955
|
+
index: this.sortableNodes.indexOf(node),
|
27956
|
+
});
|
27957
|
+
if (nanoGrabbedEv.defaultPrevented)
|
27958
|
+
return false;
|
27959
|
+
// Element found... start everything
|
27960
|
+
e.preventDefault();
|
27961
|
+
this.updateUserSelectStyle('none');
|
27962
|
+
this.dragRequestPending = true;
|
27963
|
+
this.draggedElement = node;
|
27964
|
+
this.dropzoneNodes =
|
27965
|
+
Array.from(this.sortableHost.querySelectorAll(this.dropzoneSelector)) ||
|
27966
|
+
[];
|
27967
|
+
this.draggedElementClone = this.createClone(node);
|
27968
|
+
this.draggedElementOrigin = node.nextSibling;
|
27969
|
+
this.animatedElements = [];
|
27970
|
+
this.draggedElement.classList.add(this.placeholderClass);
|
27971
|
+
return true;
|
27972
|
+
}
|
27973
|
+
/** Ends re-ordering */
|
27974
|
+
finishOrder() {
|
27975
|
+
if (!this.draggedElement)
|
27976
|
+
return;
|
27977
|
+
const updated = Array.from(this.sortableHost.querySelectorAll(this.itemSelector)).filter((ele) => ele !== this.draggedElementClone);
|
27978
|
+
const originalIndex = this.sortableNodes.indexOf(this.draggedElement);
|
27979
|
+
const targetIndex = updated.indexOf(this.draggedElement);
|
27980
|
+
if (this.handleSelector) {
|
27981
|
+
const targetHandle = this.draggedElement.querySelector(this.handleSelector);
|
27982
|
+
targetHandle.classList.remove(this.handleDraggedClass);
|
27983
|
+
}
|
27984
|
+
if (originalIndex !== targetIndex) {
|
27985
|
+
const orderChangeEv = this.nanoOrderChange.emit({
|
27986
|
+
element: this.draggedElement,
|
27987
|
+
originalIndex,
|
27988
|
+
targetIndex,
|
27989
|
+
});
|
27990
|
+
if (orderChangeEv.defaultPrevented) {
|
27991
|
+
/** Event was prevented, wait a moment to send element back to whence it came - gives a nicer visual queue */
|
27992
|
+
this.animationPromise = new Promise((resolve) => {
|
27993
|
+
setTimeout(() => {
|
27994
|
+
this.insertAtTarget(this.draggedElement, updated[originalIndex]);
|
27995
|
+
this.reset();
|
27996
|
+
this.dragRequestPending = false;
|
27997
|
+
resolve();
|
27998
|
+
}, 200);
|
27999
|
+
});
|
28000
|
+
return;
|
28001
|
+
}
|
28002
|
+
this.addAriaMsg(this.reorderHelperText(this.draggedElement, updated, targetIndex + 1));
|
28003
|
+
}
|
28004
|
+
this.reset();
|
28005
|
+
this.dragRequestPending = false;
|
28006
|
+
}
|
28007
|
+
/// Component lifecycle ///
|
28008
|
+
constructor(hostRef) {
|
28009
|
+
registerInstance(this, hostRef);
|
28010
|
+
this.nanoOrderChange = createEvent(this, "nanoOrderChange", 7);
|
28011
|
+
this.nanoGrabbed = createEvent(this, "nanoGrabbed", 7);
|
28012
|
+
this.nanoDropped = createEvent(this, "nanoDropped", 7);
|
28013
|
+
this.dragRequestPending = false;
|
28014
|
+
this.sortableNodes = [];
|
28015
|
+
this.dropzoneNodes = [];
|
28016
|
+
this.animatedElements = [];
|
28017
|
+
this.keyboardHandleMap = new Map();
|
28018
|
+
this.sortableId = `nano-sortable-${sortableIds++}`;
|
28019
|
+
/**
|
28020
|
+
* Moves the active node's clone to follow the pointer. The node that the clone intersects with (via hitTest) is
|
28021
|
+
* the insert point for updated sorting */
|
28022
|
+
this.trackMove = (x, y) => {
|
28023
|
+
if (!this.draggedElementClone) {
|
28024
|
+
return;
|
28025
|
+
}
|
28026
|
+
if (this.orientation) {
|
28027
|
+
x = x * orientationMap[this.orientation].x;
|
28028
|
+
y = y * orientationMap[this.orientation].y;
|
28029
|
+
}
|
28030
|
+
writeTask(() => {
|
28031
|
+
Object.assign(this.draggedElementClone.style, {
|
28032
|
+
transform: `translate3d(${x}px, ${y}px, 0)`,
|
28033
|
+
});
|
28034
|
+
});
|
28035
|
+
let target = this.hitTest(this.draggedElementClone, this.sortableNodes)[0];
|
28036
|
+
let activeDropzone;
|
28037
|
+
if (this.dropzoneSelector && this.dropzoneActiveClass) {
|
28038
|
+
readTask(() => {
|
28039
|
+
activeDropzone = this.draggedElement.closest(this.dropzoneSelector);
|
28040
|
+
writeTask(() => {
|
28041
|
+
this.dropzoneNodes
|
28042
|
+
.filter((dze) => dze !== activeDropzone)
|
28043
|
+
.forEach((dze) => dze.classList.remove(this.dropzoneActiveClass));
|
28044
|
+
activeDropzone.classList.add(this.dropzoneActiveClass);
|
28045
|
+
});
|
28046
|
+
});
|
28047
|
+
}
|
28048
|
+
// didn't find a target - let's test to see if we can use a drop-zone instead
|
28049
|
+
if (!target && this.dropzoneNodes.length) {
|
28050
|
+
target = this.hitTest(this.draggedElementClone, this.dropzoneNodes)[0];
|
28051
|
+
if (this.draggedElement.closest(this.dropzoneSelector) === target)
|
28052
|
+
return;
|
28053
|
+
}
|
28054
|
+
if (
|
28055
|
+
// if clone intersects with a valid target,
|
28056
|
+
target &&
|
28057
|
+
// other than its own origin,
|
28058
|
+
target !== this.draggedElement &&
|
28059
|
+
// and the target isn't currently animating, which causes false hit tests,
|
28060
|
+
!this.isAnimating(target)) {
|
28061
|
+
this.insertAtTarget(this.draggedElement, target);
|
28062
|
+
}
|
28063
|
+
};
|
28064
|
+
this.itemSelector = 'li';
|
28065
|
+
this.handleSelector = undefined;
|
28066
|
+
this.dropzoneSelector = undefined;
|
28067
|
+
this.helperText = 'Press "Space" or "Enter" to enable element reordering and use the arrow keys to reorder items.' +
|
28068
|
+
'Press "Escape" to cancel reordering. Alternatively, use your mouse to drag / reorder.';
|
28069
|
+
this.itemDescriptor = (el) => `"${el.textContent.trim()}"`;
|
28070
|
+
this.grabbedHelperText = (el) => `${this.itemDescriptor(el)} grabbed`;
|
28071
|
+
this.droppedHelperText = (el) => `${this.itemDescriptor(el)} dropped`;
|
28072
|
+
this.reorderHelperText = (el, elements, position) => `The list has been reordered, ${this.itemDescriptor(el)} is now item ${position} of ${elements.length}`;
|
28073
|
+
this.createKeyboardHandle = (_number, _element) => {
|
28074
|
+
const handleTpl = /* html */ `
|
28075
|
+
<nano-icon-button
|
28076
|
+
slot="end"
|
28077
|
+
icon-name="light/arrows"
|
28078
|
+
class="nano-sortable__keyboard-handle visually-hidden"
|
28079
|
+
label="Re-order this item"
|
28080
|
+
></nano-icon-button>`;
|
28081
|
+
const div = globalThis.document.createElement('div');
|
28082
|
+
div.innerHTML = handleTpl;
|
28083
|
+
const handle = div.children[0];
|
28084
|
+
_element.append(handle);
|
28085
|
+
return handle;
|
28086
|
+
};
|
28087
|
+
this.sortableHostElement = undefined;
|
28088
|
+
this.animationEnabled = true;
|
28089
|
+
this.draggedClass = 'nano-sortable__dragged';
|
28090
|
+
this.handleDraggedClass = 'nano-sortable__handle-dragged';
|
28091
|
+
this.placeholderClass = 'nano-sortable__placeholder';
|
28092
|
+
this.dropzoneActiveClass = '';
|
28093
|
+
this.animationTiming = { duration: 200, easing: 'ease-out' };
|
28094
|
+
this.orientation = undefined;
|
28095
|
+
this.dragResize = false;
|
28096
|
+
this.keyboardSortActive = false;
|
28097
|
+
this.ariaTextList = [];
|
28098
|
+
this.handleTrack = this.handleTrack.bind(this);
|
28099
|
+
this.handleKeydown = this.handleKeydown.bind(this);
|
28100
|
+
this.refreshKeyboardHandles = this.refreshKeyboardHandles.bind(this);
|
28101
|
+
this.refreshKeyboardHandles = debounce$2(this.refreshKeyboardHandles, 500);
|
28102
|
+
}
|
28103
|
+
connectedCallback() {
|
28104
|
+
this.addEventHandlers();
|
28105
|
+
this.refreshKeyboardHandles();
|
28106
|
+
this.attachMutationObserver();
|
28107
|
+
}
|
28108
|
+
disconnectedCallback() {
|
28109
|
+
var _a;
|
28110
|
+
this.removeEventHandlers();
|
28111
|
+
(_a = this.host.querySelector(`#${this.sortableId}`)) === null || _a === void 0 ? void 0 : _a.remove();
|
28112
|
+
if (this.mutationObserver) {
|
28113
|
+
this.mutationObserver.disconnect();
|
28114
|
+
this.mutationObserver = undefined;
|
28115
|
+
}
|
28116
|
+
}
|
28117
|
+
render() {
|
28118
|
+
return (hAsync(Host, null, hAsync("div", { class: "sortable__live-region", "aria-live": "polite", "aria-relevant": "additions", "aria-atomic": "true", role: "log", part: "announcements" }, this.ariaTextList.map((str) => (hAsync("div", null, str)))), hAsync("slot", null)));
|
28119
|
+
}
|
28120
|
+
get host() { return getElement(this); }
|
28121
|
+
static get watchers() { return {
|
28122
|
+
"itemSelector": ["handleItemSelectorChange"],
|
28123
|
+
"handleSelector": ["handleHandleSelectorChange"],
|
28124
|
+
"createKeyboardHandle": ["handleCreateKeyboardHandleChange"],
|
28125
|
+
"sortableHostElement": ["handleSortableHostElement"]
|
28126
|
+
}; }
|
28127
|
+
static get style() { return sortableCss; }
|
28128
|
+
static get cmpMeta() { return {
|
28129
|
+
"$flags$": 9,
|
28130
|
+
"$tagName$": "nano-sortable",
|
28131
|
+
"$members$": {
|
28132
|
+
"itemSelector": [1, "item-selector"],
|
28133
|
+
"handleSelector": [1, "handle-selector"],
|
28134
|
+
"dropzoneSelector": [1, "dropzone-selector"],
|
28135
|
+
"helperText": [1, "helper-text"],
|
28136
|
+
"itemDescriptor": [16],
|
28137
|
+
"grabbedHelperText": [16],
|
28138
|
+
"droppedHelperText": [16],
|
28139
|
+
"reorderHelperText": [16],
|
28140
|
+
"createKeyboardHandle": [16],
|
28141
|
+
"sortableHostElement": [16],
|
28142
|
+
"animationEnabled": [4, "animation-enabled"],
|
28143
|
+
"draggedClass": [1, "dragged-class"],
|
28144
|
+
"handleDraggedClass": [1, "handle-dragged-class"],
|
28145
|
+
"placeholderClass": [1, "placeholder-class"],
|
28146
|
+
"dropzoneActiveClass": [1, "dropzone-active-class"],
|
28147
|
+
"animationTiming": [8, "animation-timing"],
|
28148
|
+
"orientation": [1],
|
28149
|
+
"dragResize": [4, "drag-resize"],
|
28150
|
+
"keyboardSortActive": [32],
|
28151
|
+
"ariaTextList": [32],
|
28152
|
+
"refreshKeyboardHandles": [64]
|
28153
|
+
},
|
28154
|
+
"$listeners$": undefined,
|
28155
|
+
"$lazyBundleId$": "-",
|
28156
|
+
"$attrsToReflect$": []
|
28157
|
+
}; }
|
28158
|
+
}
|
28159
|
+
|
27368
28160
|
const spinnerCss = "/*!@:host*/.sc-nano-spinner-h{box-sizing:border-box}/*!@*,\n*::before,\n*::after*/*.sc-nano-spinner,*.sc-nano-spinner::before,*.sc-nano-spinner::after{box-sizing:border-box}/*!@[hidden]*/[hidden].sc-nano-spinner{display:none !important}/*!@:host*/.sc-nano-spinner-h{display:inline-block;--base-color-rgb:var(--nano-indicator-rgb, 84 140 175);--indicator-color:var(\n --nano-indicator-color,\n rgb(var(--base-color-rgb) / 100%)\n );--track-color:var(--nano-track-color, rgb(var(--base-color-rgb) / 20%));--overlay-color:var(--nano-layer-overlay-light, rgb(255 255 255 / 70%))}/*!@.spinner*/.spinner.sc-nano-spinner{display:flex;flex-direction:column;align-items:center;justify-content:center}/*!@:host([overlay]:not([overlay=false])) .spinner*/[overlay].sc-nano-spinner-h:not([overlay=false]) .spinner.sc-nano-spinner{position:absolute;inset:0}/*!@:host([overlay]:not([overlay=false])) .spinner .spinner__loader,\n:host([overlay]:not([overlay=false])) .spinner .spinner__text*/[overlay].sc-nano-spinner-h:not([overlay=false]) .spinner.sc-nano-spinner .spinner__loader.sc-nano-spinner,[overlay].sc-nano-spinner-h:not([overlay=false]) .spinner.sc-nano-spinner .spinner__text.sc-nano-spinner{z-index:1}/*!@.spinner__overlay*/.spinner__overlay.sc-nano-spinner{background:var(--overlay-color);position:absolute;inset:0;z-index:0;-webkit-backdrop-filter:blur(var(--nano-layer-overlay-blur, 3px));backdrop-filter:blur(var(--nano-layer-overlay-blur, 3px))}/*!@.spinner__loader*/.spinner__loader.sc-nano-spinner{font-size:var(--spinner-scale, 1em)}/*!@.spinner__spin*/.spinner__spin.sc-nano-spinner{display:block;margin:auto;inline-size:1em;block-size:1em;border-radius:50%;border:solid 0.1em var(--track-color);border-block-start-color:var(--indicator-color);border-inline-end-color:var(--indicator-color);border-inline-start-color:var(--indicator-color);animation:1s linear infinite spin}/*!@.spinner__dna*/.spinner__dna.sc-nano-spinner{font-size:0.2286em;display:flex}/*!@.spinner__dnatrack*/.spinner__dnatrack.sc-nano-spinner{position:relative;padding-block:0;padding-inline:0.625em;block-size:4.375em;inline-size:0.625em;overflow:hidden}/*!@.spinner__dnatrack::before*/.spinner__dnatrack.sc-nano-spinner::before{content:\"\";position:absolute;inset-block-start:1.875em;inset-inline-start:50%;transform:translateX(-50%) translateZ(0);inline-size:0.0625em;inline-size:max(.0625em, 1px);block-size:0.625em;background:var(--track-color);animation:flex 1.5s linear infinite;transform-origin:center center}/*!@.spinner__dnatrack--2::before*/.spinner__dnatrack--2.sc-nano-spinner::before{animation:flex 1.5s -1.3s linear infinite}/*!@.spinner__dnatrack--3::before*/.spinner__dnatrack--3.sc-nano-spinner::before{animation:flex 1.5s -1.1s linear infinite}/*!@.spinner__dnatrack--4::before*/.spinner__dnatrack--4.sc-nano-spinner::before{animation:flex 1.5s -0.9s linear infinite}/*!@.spinner__dnatrack--5::before*/.spinner__dnatrack--5.sc-nano-spinner::before{animation:flex 1.5s -0.75s linear infinite}/*!@.spinner__dnadot*/.spinner__dnadot.sc-nano-spinner{position:absolute;inline-size:0.5em;block-size:0.5em;border-radius:50%;background:var(--indicator-color);animation:rotate 1.5s linear infinite;transform-origin:center center;inset-inline-start:50%;transform:translateX(-50%) translateZ(0) translateY(0)}/*!@.spinner__dnadot--2*/.spinner__dnadot--2.sc-nano-spinner{animation:rotate 1.5s -0.75s linear infinite}/*!@.spinner__dnadot--3*/.spinner__dnadot--3.sc-nano-spinner{animation:rotate 1.5s -1.3s linear infinite}/*!@.spinner__dnadot--4*/.spinner__dnadot--4.sc-nano-spinner{animation:rotate 1.5s -0.55s linear infinite}/*!@.spinner__dnadot--5*/.spinner__dnadot--5.sc-nano-spinner{animation:rotate 1.5s -1.1s linear infinite}/*!@.spinner__dnadot--6*/.spinner__dnadot--6.sc-nano-spinner{animation:rotate 1.5s -0.35s linear infinite}/*!@.spinner__dnadot--7*/.spinner__dnadot--7.sc-nano-spinner{animation:rotate 1.5s -0.9s linear infinite}/*!@.spinner__dnadot--8*/.spinner__dnadot--8.sc-nano-spinner{animation:rotate 1.5s -0.15s linear infinite}/*!@.spinner__dnadot--9*/.spinner__dnadot--9.sc-nano-spinner{animation:rotate 1.5s -0.75s linear infinite}/*!@.spinner__dnadot--10*/.spinner__dnadot--10.sc-nano-spinner{animation:rotate 1.5s 0s linear infinite}/*!@.spinner__text*/.spinner__text.sc-nano-spinner{text-align:center;position:relative;-webkit-margin-before:0.5em;margin-block-start:0.5em}@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@keyframes rotate{0%,100%{transform:translateX(-50%) translateY(0) scale(1)}25%{transform:translateX(-50%) translateY(1.875em) scale(2)}50%{transform:translateX(-50%) translateY(3.75em) scale(1)}75%{transform:translateX(-50%) translateY(1.875em) scale(0.3)}}@keyframes flex{0%,100%{transform:translateX(-50%) scaleY(5)}25%{transform:translateX(-50%) scaleY(1)}50%{transform:translateX(-50%) scaleY(5)}75%{transform:translateX(-50%) scaleY(1)}}";
|
27369
28161
|
|
27370
28162
|
/**
|
@@ -27400,24 +28192,6 @@ class Spinner {
|
|
27400
28192
|
}; }
|
27401
28193
|
}
|
27402
28194
|
|
27403
|
-
function drag(container, onMove) {
|
27404
|
-
function move(pointerEvent) {
|
27405
|
-
const dims = container.getBoundingClientRect();
|
27406
|
-
const defaultView = container.ownerDocument.defaultView;
|
27407
|
-
const offsetX = dims.left + defaultView.pageXOffset;
|
27408
|
-
const offsetY = dims.top + defaultView.pageYOffset;
|
27409
|
-
const x = pointerEvent.pageX - offsetX;
|
27410
|
-
const y = pointerEvent.pageY - offsetY;
|
27411
|
-
onMove(x, y);
|
27412
|
-
}
|
27413
|
-
function stop() {
|
27414
|
-
document.removeEventListener('pointermove', move);
|
27415
|
-
document.removeEventListener('pointerup', stop);
|
27416
|
-
}
|
27417
|
-
document.addEventListener('pointermove', move, { passive: true });
|
27418
|
-
document.addEventListener('pointerup', stop);
|
27419
|
-
}
|
27420
|
-
|
27421
28195
|
const splitPaneCss = "/*!@:host*/.sc-nano-split-pane-h{box-sizing:border-box}/*!@*,\n*::before,\n*::after*/*.sc-nano-split-pane,*.sc-nano-split-pane::before,*.sc-nano-split-pane::after{box-sizing:border-box}/*!@[hidden]*/[hidden].sc-nano-split-pane{display:none !important}/*!@:host*/.sc-nano-split-pane-h{--divider-width:12px;--divider-hit-area:14px;--min:0%;--max:100%;--background-color:#e4e6e8;--content-color:#918b86;display:grid}/*!@.start,\n.end*/.start.sc-nano-split-pane,.end.sc-nano-split-pane{overflow:hidden}/*!@.divider*/.divider.sc-nano-split-pane{flex:0 0 var(--divider-width);display:flex;position:relative;align-items:center;justify-content:center;background-color:var(--background-color);color:var(--content-color);z-index:1;font-size:0.8rem}/*!@.divider:focus*/.divider.sc-nano-split-pane:focus{outline:none}/*!@:host(:not([disabled])) .divider:focus-visible*/.sc-nano-split-pane-h:not([disabled]) .divider.sc-nano-split-pane:focus-visible{background-color:var(--nano-control-focus-color, rgba(144, 198, 231, 0.8))}/*!@:host([disabled]) .divider*/[disabled].sc-nano-split-pane-h .divider.sc-nano-split-pane{cursor:not-allowed}/*!@:host(:not([vertical]):not([disabled])) .divider*/.sc-nano-split-pane-h:not([vertical]):not([disabled]) .divider.sc-nano-split-pane{cursor:col-resize}/*!@:host(:not([vertical])) .divider::after*/.sc-nano-split-pane-h:not([vertical]) .divider.sc-nano-split-pane::after{display:flex;content:\"\";position:absolute;block-size:100%;inset-inline-start:calc(var(--divider-hit-area) / -2 + var(--divider-width) / 2);inline-size:var(--divider-hit-area)}/*!@:host([vertical])*/[vertical].sc-nano-split-pane-h{flex-direction:column}/*!@:host([vertical]:not([disabled])) .divider*/[vertical].sc-nano-split-pane-h:not([disabled]) .divider.sc-nano-split-pane{cursor:row-resize}/*!@:host([vertical]) .divider::after*/[vertical].sc-nano-split-pane-h .divider.sc-nano-split-pane::after{content:\"\";position:absolute;inline-size:100%;inset-block-start:calc(var(--divider-hit-area) / -2 + var(--divider-width) / 2);block-size:var(--divider-hit-area)}";
|
27422
28196
|
|
27423
28197
|
/**
|
@@ -27457,33 +28231,35 @@ class SplitPane {
|
|
27457
28231
|
}
|
27458
28232
|
// Prevent text selection when dragging
|
27459
28233
|
e.preventDefault();
|
27460
|
-
drag(this.host,
|
27461
|
-
|
27462
|
-
|
27463
|
-
|
27464
|
-
|
27465
|
-
|
27466
|
-
|
27467
|
-
|
27468
|
-
|
27469
|
-
|
27470
|
-
|
27471
|
-
|
27472
|
-
|
27473
|
-
|
27474
|
-
|
27475
|
-
|
27476
|
-
|
27477
|
-
|
27478
|
-
|
27479
|
-
newPositionInPixels
|
27480
|
-
|
27481
|
-
|
27482
|
-
|
27483
|
-
|
27484
|
-
|
27485
|
-
|
27486
|
-
|
28234
|
+
drag(this.host, {
|
28235
|
+
onMove: (x, y) => {
|
28236
|
+
let newPositionInPixels = this.vertical ? y : x;
|
28237
|
+
this.nanoDragging.emit(newPositionInPixels);
|
28238
|
+
// Flip for end panels
|
28239
|
+
if (this.primary === 'end') {
|
28240
|
+
newPositionInPixels = this.size - newPositionInPixels;
|
28241
|
+
}
|
28242
|
+
// Check snap points
|
28243
|
+
if (this.snap) {
|
28244
|
+
const snaps = this.snap.split(' ');
|
28245
|
+
snaps.forEach((value) => {
|
28246
|
+
let snapPoint;
|
28247
|
+
if (value.endsWith('%')) {
|
28248
|
+
snapPoint = this.size * (parseFloat(value) / 100);
|
28249
|
+
}
|
28250
|
+
else {
|
28251
|
+
snapPoint = parseFloat(value);
|
28252
|
+
}
|
28253
|
+
if (newPositionInPixels >= snapPoint - this.snapThreshold &&
|
28254
|
+
newPositionInPixels <= snapPoint + this.snapThreshold) {
|
28255
|
+
newPositionInPixels = snapPoint;
|
28256
|
+
}
|
28257
|
+
});
|
28258
|
+
}
|
28259
|
+
this.shouldAnimate = false;
|
28260
|
+
this.position = clamp(this.pixelsToPercentage(newPositionInPixels), 0, 100);
|
28261
|
+
requestAnimationFrame(() => (this.shouldAnimate = true));
|
28262
|
+
},
|
27487
28263
|
});
|
27488
28264
|
};
|
27489
28265
|
this.handleKeyDown = (event) => {
|
@@ -28343,11 +29119,17 @@ class Sticker {
|
|
28343
29119
|
}; }
|
28344
29120
|
}
|
28345
29121
|
|
28346
|
-
const tabCss = "/*!@:host*/.sc-nano-tab-h{box-sizing:border-box}/*!@*,\n*::before,\n*::after*/*.sc-nano-tab,*.sc-nano-tab::before,*.sc-nano-tab::after{box-sizing:border-box}/*!@[hidden]*/[hidden].sc-nano-tab{display:none !important}/*!@:host*/.sc-nano-tab-h{--focus-shadow:var(--nano-control-focus-shadow, 0 0 0 0.1875rem var(--nano-control-focus-color, rgba(144, 198, 231, 0.8)));--padding:0.75rem
|
29122
|
+
const tabCss = "/*!@:host*/.sc-nano-tab-h{box-sizing:border-box}/*!@*,\n*::before,\n*::after*/*.sc-nano-tab,*.sc-nano-tab::before,*.sc-nano-tab::after{box-sizing:border-box}/*!@[hidden]*/[hidden].sc-nano-tab{display:none !important}/*!@:host*/.sc-nano-tab-h{--focus-shadow:var(--nano-control-focus-shadow, 0 0 0 0.1875rem var(--nano-control-focus-color, rgba(144, 198, 231, 0.8)));--padding-v:0.75rem;--padding-h:1rem;--bg-rgb:var(--nano-layer-bg-rgb, 255 255 255);--active-bg:rgb(var(--bg-rgb) / 100%);--inactive-bg:rgb(var(--bg-rgb) / 70%);--disabled-bg-rgb:var(--bg-rgb);--text-color:#007495;--disabled-text-color:#455556;--active-text-color:#0c5a71;--h-font-size:0.93em;--v-font-size:0.875em;--tab-spacing:0.5rem;--tab-divider-size:0;--tab-divider-color:#90c6e7;--tab-indicator-size:5px;--border-radius:inherit;display:inline-block;cursor:pointer;border-radius:var(--border-radius)}/*!@:host([direction=vertical])*/[direction=vertical].sc-nano-tab-h{--padding-v:1rem;--padding-h:1rem}/*!@:host([direction=vertical]) .nanotab*/[direction=vertical].sc-nano-tab-h .nanotab.sc-nano-tab{font-size:var(--v-font-size)}/*!@:host([direction=vertical]) .nanotab.nanotab--active*/[direction=vertical].sc-nano-tab-h .nanotab.nanotab--active.sc-nano-tab{font-weight:600;color:var(--active-text-color)}/*!@:host(.nano-sortable__dragged)*/.nano-sortable__dragged.sc-nano-tab-h{box-shadow:none}/*!@:host(.nano-sortable__dragged) .nanotab*/.nano-sortable__dragged.sc-nano-tab-h .nanotab.sc-nano-tab{box-shadow:var(--nano-layer-shadow-large, 0 2px 8px rgba(0, 0, 0, 0.2))}/*!@:host([direction=horizontal]) .nanotab*/[direction=horizontal].sc-nano-tab-h .nanotab.sc-nano-tab{font-size:var(--h-font-size);-webkit-margin-before:var(--tab-indicator-size);margin-block-start:var(--tab-indicator-size);-webkit-border-end:solid var(--tab-divider-size) var(--tab-divider-color);border-inline-end:solid var(--tab-divider-size) var(--tab-divider-color)}/*!@:host([direction=horizontal]) .nanotab.nanotab--active*/[direction=horizontal].sc-nano-tab-h .nanotab.nanotab--active.sc-nano-tab{-webkit-margin-before:0;margin-block-start:0;-webkit-border-before:solid var(--tab-indicator-size) var(--tab-indicator-color);border-block-start:solid var(--tab-indicator-size) var(--tab-indicator-color);background:var(--active-bg);color:var(--active-text-color)}/*!@.nanotab*/.nanotab.sc-nano-tab{font-family:inherit;font-size:inherit;font-stretch:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;text-decoration:inherit;text-overflow:inherit;text-transform:inherit;text-align:inherit;white-space:inherit;color:inherit;border-radius:var(--border-radius);-webkit-margin-end:var(--tab-spacing);margin-inline-end:var(--tab-spacing);padding-block:var(--padding-v);padding-inline:var(--padding-h);display:flex;block-size:100%;inline-size:auto;background:var(--inactive-bg);-webkit-user-select:none;user-select:none;overflow:visible;white-space:nowrap;align-items:center;position:relative}/*!@.nanotab ::slotted(*)*/.nanotab .sc-nano-tab-s>*{display:flex;align-items:center}/*!@.nanotab ::slotted(.nano-sortable__keyboard-handle)*/.nanotab .sc-nano-tab-s>.nano-sortable__keyboard-handle{position:absolute;inset-inline-end:-1em;background:var(--inactive-bg);z-index:1}/*!@:host(:last-of-type) .nanotab*/.sc-nano-tab-h:last-of-type .nanotab.sc-nano-tab{-webkit-margin-end:0;margin-inline-end:0}/*!@.nanotab--disabled*/.nanotab--disabled.sc-nano-tab{background:rgb(var(--disabled-bg-rgb)/100%);opacity:0.5;cursor:not-allowed;color:var(--disabled-text-color)}/*!@.nanotab--closable*/.nanotab--closable.sc-nano-tab{-webkit-padding-end:0;padding-inline-end:0}/*!@.nanotab__tab*/.nanotab__tab.sc-nano-tab{display:flex;border-radius:inherit}/*!@.nanotab__tab:hover:not(.tab--disabled)*/.nanotab__tab.sc-nano-tab:hover:not(.tab--disabled){text-shadow:0 0 0.01px var(--text-color)}/*!@.nanotab__tab:focus*/.nanotab__tab.sc-nano-tab:focus{outline:none;outline-style:none;box-shadow:none;border-color:transparent}/*!@.nanotab__tab::before*/.nanotab__tab.sc-nano-tab::before{content:\"\";position:absolute;inset:0;border-radius:inherit}/*!@.nanotab__tab:focus-visible:not(.nanotab--disabled)::before*/.nanotab__tab.sc-nano-tab:focus-visible:not(.nanotab--disabled)::before{box-shadow:var(--focus-shadow) inset}/*!@.nanotab--active .nanotab__tab:focus-visible:not(.nanotab--disabled)::before*/.nanotab--active.sc-nano-tab .nanotab__tab.sc-nano-tab:focus-visible:not(.nanotab--disabled)::before{box-shadow:var(--focus-shadow)}/*!@.nanotab__close-button*/.nanotab__close-button.sc-nano-tab{-webkit-margin-start:var(--nano-spacing-small, 8px);margin-inline-start:var(--nano-spacing-small, 8px);-webkit-margin-end:calc(var(--padding-h) / 2);margin-inline-end:calc(var(--padding-h) / 2);-webkit-appearance:none !important;appearance:none !important;--padding:var(--nano-spacing-xsmall, 4px) !important}";
|
28347
29123
|
|
28348
29124
|
let id$2 = 0;
|
28349
29125
|
/**
|
29126
|
+
* @slot start - start of the tab, content. Outside of the focusable element
|
29127
|
+
* @slot end - end of the tab, content. Outside of the focusable element
|
28350
29128
|
* @slot - The tab's label.
|
29129
|
+
*
|
29130
|
+
* @part base - the wrapper around the whole control
|
29131
|
+
* @part tab - the main tab control that controls the active state
|
29132
|
+
* @part close-btn - the close button of the tab (if `closable=true`)
|
28351
29133
|
*/
|
28352
29134
|
class Tab {
|
28353
29135
|
constructor(hostRef) {
|
@@ -28375,12 +29157,12 @@ class Tab {
|
|
28375
29157
|
this.tab.blur();
|
28376
29158
|
}
|
28377
29159
|
render() {
|
28378
|
-
return (hAsync(Host, { id: this.host.id || this.tabId }, hAsync("div", { part: "base",
|
29160
|
+
return (hAsync(Host, { id: this.host.id || this.tabId }, hAsync("div", { part: "base", class: {
|
28379
29161
|
nanotab: true,
|
28380
29162
|
'nanotab--active': this.active,
|
28381
29163
|
'nanotab--disabled': this.disabled,
|
28382
29164
|
'nanotab--closable': this.closable,
|
28383
|
-
}, role: "tab", "aria-disabled": this.disabled ? 'true' : 'false', "aria-selected": this.active ? 'true' : 'false', tabindex: this.disabled || !this.active ? '-1' : '0' }, hAsync("slot", null), this.closable && (hAsync("nano-icon-button", { label: "Close this tab", iconName: "light/times", class: "nanotab__close-button", onClick: this.handleCloseClick, onKeyDown: this.handleCloseKeydown,
|
29165
|
+
} }, hAsync("slot", { name: "start" }), hAsync("div", { part: "tab", ref: (el) => (this.tab = el), role: "tab", "aria-disabled": this.disabled ? 'true' : 'false', "aria-selected": this.active ? 'true' : 'false', tabindex: this.disabled || !this.active ? '-1' : '0', class: "nanotab__tab" }, hAsync("slot", null)), this.closable && !this.disabled && (hAsync("nano-icon-button", { label: "Close this tab", iconName: "light/times", class: "nanotab__close-button", onClick: this.handleCloseClick, onKeyDown: this.handleCloseKeydown, part: "close-btn" })), hAsync("slot", { name: "end" }))));
|
28384
29166
|
}
|
28385
29167
|
get host() { return getElement(this); }
|
28386
29168
|
static get style() { return tabCss; }
|
@@ -28401,7 +29183,7 @@ class Tab {
|
|
28401
29183
|
}; }
|
28402
29184
|
}
|
28403
29185
|
|
28404
|
-
const tabGroupCss = "/*!@:host*/.sc-nano-tab-group-h{box-sizing:border-box}/*!@*,\n*::before,\n*::after*/*.sc-nano-tab-group,*.sc-nano-tab-group::before,*.sc-nano-tab-group::after{box-sizing:border-box}/*!@[hidden]*/[hidden].sc-nano-tab-group{display:none !important}/*!@:host*/.sc-nano-tab-group-h{--indicator-transition:var(--nano-transition-fast, 0.3s);--indicator-color:#90c6e7;--indicator-track-color:#e4e6e8;--indicator-size:0;--border-radius:var(--nano-layer-border-radius, var(--nano-border-radius-medium, 4px));--background-rgb:var(--nano-layer-bg-rgb, 255 255 255);--scroll-btn-color:\"currentColor\";--content-padding:2rem 2.5rem;--content-bg:rgb(var(--background-rgb));--content-border-radius:var(--border-radius);--tabs-padding-start:2.5rem;--tabs-padding-end:2.5rem;--tabs-padding-top:0;--tabs-padding-bottom:0;--tabs-container-bg:\"transparent\";--tabs-bg-rgb:var(--background-rgb);--tab-border-radius:var(--border-radius);--tab-text-color:#007495;--shadow-opacity:0.1;--fade-transparency:0;display:block;position:relative;z-index:var(--nano-layer-index-raised, 5)}@media only screen and (max-width: 768px){/*!@:host*/.sc-nano-tab-group-h{--tabs-padding-start:1.5rem;--tabs-padding-end:1.5rem}}/*!@:host ::slotted(nano-tab)*/.sc-nano-tab-group-h .sc-nano-tab-group-s>nano-tab{--tab-indicator-color:var(--indicator-color);--bg-rgb:var(--tabs-bg-rgb);--border-radius:var(--tab-border-radius)}/*!@:host([placement=start])
|
29186
|
+
const tabGroupCss = "/*!@:host*/.sc-nano-tab-group-h{box-sizing:border-box}/*!@*,\n*::before,\n*::after*/*.sc-nano-tab-group,*.sc-nano-tab-group::before,*.sc-nano-tab-group::after{box-sizing:border-box}/*!@[hidden]*/[hidden].sc-nano-tab-group{display:none !important}/*!@:host*/.sc-nano-tab-group-h{--indicator-transition:var(--nano-transition-fast, 0.3s);--indicator-color:#90c6e7;--indicator-track-color:#e4e6e8;--indicator-size:0;--border-radius:var(--nano-layer-border-radius, var(--nano-border-radius-medium, 4px));--background-rgb:var(--nano-layer-bg-rgb, 255 255 255);--scroll-btn-color:\"currentColor\";--content-padding:2rem 2.5rem;--content-bg:rgb(var(--background-rgb));--content-border-radius:var(--border-radius);--tabs-padding-start:2.5rem;--tabs-padding-end:2.5rem;--tabs-padding-top:0;--tabs-padding-bottom:0;--tabs-container-bg:\"transparent\";--tabs-bg-rgb:var(--background-rgb);--tab-border-radius:var(--border-radius) var(--border-radius) 0 0;--tab-text-color:#007495;--shadow-opacity:0.1;--fade-transparency:0;display:block;position:relative;z-index:var(--nano-layer-index-raised, 5)}@media only screen and (max-width: 768px){/*!@:host*/.sc-nano-tab-group-h{--tabs-padding-start:1.5rem;--tabs-padding-end:1.5rem}}/*!@:host ::slotted(nano-tab)*/.sc-nano-tab-group-h .sc-nano-tab-group-s>nano-tab{--tab-indicator-color:var(--indicator-color);--bg-rgb:var(--tabs-bg-rgb);--border-radius:var(--tab-border-radius);--grab-offset-x:var(--tabs-padding-start)}/*!@:host([placement=start])*/[placement=start].sc-nano-tab-group-h{--content-border-radius:0 var(--border-radius) var(--border-radius) 0;--content-padding:1rem;--tab-border-radius:0;--tabs-padding-start:0;--tabs-padding-end:0;--tabs-padding-top:0;--tabs-padding-bottom:0;--tab-text-color:#455556;--indicator-color:#007495;--indicator-size:2px}/*!@:host(.nano-color)*/.nano-color.sc-nano-tab-group-h{--indicator-color:var(--nano-color-tint, var(--nano-color-primary-tint, #2689a5));--tab-text-color:rgb(var(--nano-color-base-rgb) / 70%)}/*!@:host(.nano-color) ::slotted(nano-tab)*/.sc-nano-tab-group-h.nano-color .sc-nano-tab-group-s>nano-tab{--active-text-color:var(--nano-color-shade, var(--nano-color-primary-shade, #00637f))}/*!@.nano-tab-group*/.nano-tab-group.sc-nano-tab-group{display:flex;border-radius:0;width:100%;flex:inherit}/*!@.nano-tab-group__tabs*/.nano-tab-group__tabs.sc-nano-tab-group{display:flex;position:relative;width:100%}/*!@.nano-tab-group__active-tab-indicator*/.nano-tab-group__active-tab-indicator.sc-nano-tab-group{position:absolute;transition:var(--indicator-transition) transform ease, var(--indicator-transition) width ease}/*!@.nano-tab-group__body*/.nano-tab-group__body.sc-nano-tab-group{background:var(--content-bg)}/*!@.nano-tab-group .nano-tab-group__nav-container*/.nano-tab-group.sc-nano-tab-group .nano-tab-group__nav-container.sc-nano-tab-group{position:relative;display:flex;background:var(--tabs-container-bg)}/*!@.nano-tab-group button*/.nano-tab-group.sc-nano-tab-group button.sc-nano-tab-group{-webkit-appearance:none;appearance:none;background-color:transparent}/*!@.nano-tab-group__scroll-button*/.nano-tab-group__scroll-button.sc-nano-tab-group{display:flex;align-items:center;justify-content:center;position:absolute;inset-block:0;border:unset;z-index:2;transition:var(--nano-transition-fast, 0.3s) ease opacity;opacity:0;color:var(--scroll-btn-color)}/*!@.nano-tab-group__scroll-button:focus*/.nano-tab-group__scroll-button.sc-nano-tab-group:focus{outline:none}/*!@.nano-tab-group__scroll-button.is-shown*/.nano-tab-group__scroll-button.is-shown.sc-nano-tab-group{opacity:1}/*!@.nano-tab-group__scroll-button:focus-visible*/.nano-tab-group__scroll-button.sc-nano-tab-group:focus-visible{box-shadow:var(--nano-control-focus-shadow, 0 0 0 0.1875rem var(--nano-control-focus-color, rgba(144, 198, 231, 0.8))) inset}/*!@.nano-tab-group__scroll-button--left*/.nano-tab-group__scroll-button--left.sc-nano-tab-group{inset-inline-start:0}/*!@.nano-tab-group__scroll-button--right*/.nano-tab-group__scroll-button--right.sc-nano-tab-group{inset-inline-end:0}/*!@.nano-tab-group__scroll-button nano-icon*/.nano-tab-group__scroll-button.sc-nano-tab-group nano-icon.sc-nano-tab-group{font-size:16px}/*!@.nano-tab-group--top*/.nano-tab-group--top.sc-nano-tab-group{flex-direction:column}/*!@.nano-tab-group--top .nano-tab-group__nav-container::after*/.nano-tab-group--top.sc-nano-tab-group .nano-tab-group__nav-container.sc-nano-tab-group::after{content:\"\";width:86%;box-shadow:0 10px 40px 10px rgb(0 0 0/var(--shadow-opacity));height:10px;position:absolute;inset-inline-start:7%;inset-block-end:-10px;border-radius:10px;z-index:-1}/*!@.nano-tab-group--top .nano-tab-group__nav*/.nano-tab-group--top.sc-nano-tab-group .nano-tab-group__nav.sc-nano-tab-group{scrollbar-width:none;-ms-overflow-style:none;padding-inline:var(--tabs-padding-start) var(--tabs-padding-end);padding-block:var(--tabs-padding-top) var(--tabs-padding-bottom);display:flex;overflow-x:auto;overflow-y:hidden;transition:var(--nano-transition-medium, 0.5s) ease;background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=\");-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-image:linear-gradient(to left, rgb(0 0 0/var(--fade-transparency)) 0, rgb(0 0 0/var(--fade-transparency)) var(--tabs-padding-start), black calc(var(--tabs-padding-start) * 2), black calc(100% - var(--tabs-padding-end) * 2), rgb(0 0 0/var(--fade-transparency)) calc(100% - var(--tabs-padding-end)), rgb(0 0 0/var(--fade-transparency)));mask-image:linear-gradient(to left, rgb(0 0 0/var(--fade-transparency)) 0, rgb(0 0 0/var(--fade-transparency)) var(--tabs-padding-start), black calc(var(--tabs-padding-start) * 2), black calc(100% - var(--tabs-padding-end) * 2), rgb(0 0 0/var(--fade-transparency)) calc(100% - var(--tabs-padding-end)), rgb(0 0 0/var(--fade-transparency)));-webkit-mask-size:calc(100% + var(--tabs-padding-end) * 4);mask-size:calc(100% + var(--tabs-padding-end) * 4);-webkit-mask-position:calc(var(--tabs-padding-end) * -2);mask-position:calc(var(--tabs-padding-end) * -2)}/*!@.nano-tab-group--top .nano-tab-group__nav::-webkit-scrollbar*/.nano-tab-group--top.sc-nano-tab-group .nano-tab-group__nav.sc-nano-tab-group::-webkit-scrollbar{inline-size:0;block-size:0}/*!@.nano-tab-group--top .nano-tab-group__nav::after*/.nano-tab-group--top.sc-nano-tab-group .nano-tab-group__nav.sc-nano-tab-group::after{content:\" \";padding-inline:0 var(--tabs-padding-end);padding-block:var(--tabs-padding-top) var(--tabs-padding-bottom);line-height:1;flex:0 0 auto}/*!@.nano-tab-group--top.nano-tab-group--has-scroll-controls-left .nano-tab-group__nav*/.nano-tab-group--top.nano-tab-group--has-scroll-controls-left.sc-nano-tab-group .nano-tab-group__nav.sc-nano-tab-group{-webkit-mask-position:0;mask-position:0;-webkit-mask-size:calc(100% + var(--tabs-padding-end) * 2);mask-size:calc(100% + var(--tabs-padding-end) * 2)}/*!@.nano-tab-group--top.nano-tab-group--has-scroll-controls-right .nano-tab-group__nav*/.nano-tab-group--top.nano-tab-group--has-scroll-controls-right.sc-nano-tab-group .nano-tab-group__nav.sc-nano-tab-group{-webkit-mask-position:calc(var(--tabs-padding-end) * -1);mask-position:calc(var(--tabs-padding-end) * -1);-webkit-mask-size:calc(100% + var(--tabs-padding-end));mask-size:calc(100% + var(--tabs-padding-end))}/*!@.nano-tab-group--top.nano-tab-group--has-scroll-controls-left.nano-tab-group--has-scroll-controls-right .nano-tab-group__nav*/.nano-tab-group--top.nano-tab-group--has-scroll-controls-left.nano-tab-group--has-scroll-controls-right.sc-nano-tab-group .nano-tab-group__nav.sc-nano-tab-group{-webkit-mask-size:100%;mask-size:100%;-webkit-mask-position:0;mask-position:0}/*!@.nano-tab-group--top .nano-tab-group__tabs*/.nano-tab-group--top.sc-nano-tab-group .nano-tab-group__tabs.sc-nano-tab-group{flex:1 1 auto;position:relative;flex-direction:row;text-align:center;color:var(--tab-text-color);width:auto}/*!@.nano-tab-group--top .nano-tab-group__active-tab-indicator*/.nano-tab-group--top.sc-nano-tab-group .nano-tab-group__active-tab-indicator.sc-nano-tab-group{inset-block-end:-2px;-webkit-border-after:solid var(--indicator-size) var(--indicator-color);border-block-end:solid var(--indicator-size) var(--indicator-color)}/*!@.nano-tab-group--top .nano-tab-group__body*/.nano-tab-group--top.sc-nano-tab-group .nano-tab-group__body.sc-nano-tab-group{order:2;background:var(--content-bg);position:relative;overflow:hidden;width:auto;display:flex;justify-content:center;padding:var(--content-padding);border-radius:var(--content-border-radius);flex:1 1 auto}/*!@.nano-tab-group--start*/.nano-tab-group--start.sc-nano-tab-group{flex-direction:row}/*!@.nano-tab-group--start .nano-tab-group__tabs*/.nano-tab-group--start.sc-nano-tab-group .nano-tab-group__tabs.sc-nano-tab-group{flex:0 0 auto;flex-direction:column;color:var(--tab-text-color);background:rgb(var(--tabs-bg-rgb));-webkit-border-start:solid var(--indicator-size) var(--indicator-track-color);border-inline-start:solid var(--indicator-size) var(--indicator-track-color);text-align:start}/*!@.nano-tab-group--start .nano-tab-group__active-tab-indicator*/.nano-tab-group--start.sc-nano-tab-group .nano-tab-group__active-tab-indicator.sc-nano-tab-group{inset-inline-start:-2px;-webkit-border-start:solid var(--indicator-size) var(--indicator-color);border-inline-start:solid var(--indicator-size) var(--indicator-color)}/*!@.nano-tab-group--start .nano-tab-group__body*/.nano-tab-group--start.sc-nano-tab-group .nano-tab-group__body.sc-nano-tab-group{flex:1 1 auto;order:2;padding:var(--content-padding);overflow:hidden;border-radius:var(--content-border-radius)}";
|
28405
29187
|
|
28406
29188
|
/**
|
28407
29189
|
* A traditional tab implementation. It nests `nano-tab` and `nano-tab-content` sub-components.
|
@@ -28448,6 +29230,9 @@ class TabGroup {
|
|
28448
29230
|
this.setActiveTab(tab);
|
28449
29231
|
};
|
28450
29232
|
this.handleKeyDown = (event) => {
|
29233
|
+
const activeEl = document.activeElement;
|
29234
|
+
if (!activeEl || activeEl.tagName.toLowerCase() !== 'nano-tab')
|
29235
|
+
return;
|
28451
29236
|
// Activate a tab
|
28452
29237
|
if (['Enter', ' '].includes(event.key)) {
|
28453
29238
|
const target = event.target;
|
@@ -28455,45 +29240,49 @@ class TabGroup {
|
|
28455
29240
|
if (tab) {
|
28456
29241
|
this.setActiveTab(tab);
|
28457
29242
|
event.preventDefault();
|
29243
|
+
event.stopPropagation();
|
28458
29244
|
}
|
28459
29245
|
}
|
28460
29246
|
// Move focus left or right
|
28461
|
-
if ([
|
29247
|
+
if (![
|
28462
29248
|
'ArrowLeft',
|
28463
29249
|
'ArrowRight',
|
28464
29250
|
'ArrowUp',
|
28465
29251
|
'ArrowDown',
|
28466
29252
|
'Home',
|
28467
29253
|
'End',
|
28468
|
-
].includes(event.key))
|
28469
|
-
|
28470
|
-
|
28471
|
-
|
28472
|
-
|
28473
|
-
|
28474
|
-
|
28475
|
-
|
28476
|
-
|
28477
|
-
|
28478
|
-
|
28479
|
-
|
28480
|
-
(!this.isRtl && event.key === 'ArrowLeft')) {
|
28481
|
-
index = Math.max(0, index - 1);
|
28482
|
-
}
|
28483
|
-
else if ((this.isRtl && event.key === 'ArrowLeft') ||
|
28484
|
-
(!this.isRtl && event.key === 'ArrowRight')) {
|
28485
|
-
index = Math.min(tabs.length - 1, index + 1);
|
28486
|
-
}
|
28487
|
-
tabs[index].setFocus();
|
28488
|
-
if (['top'].includes(this.placement)) {
|
28489
|
-
scrollIntoView(tabs[index], this.nav, 'horizontal', 'center');
|
28490
|
-
}
|
28491
|
-
// need to stop bubbling otherwise it will focus on parent tabs if nested
|
28492
|
-
event.stopPropagation();
|
28493
|
-
// stop the browser moving about
|
28494
|
-
event.preventDefault();
|
29254
|
+
].includes(event.key))
|
29255
|
+
return;
|
29256
|
+
const tabs = this.getAllActiveTabs;
|
29257
|
+
let index = tabs.indexOf(activeEl);
|
29258
|
+
if (event.key === 'Home')
|
29259
|
+
index = 0;
|
29260
|
+
if (event.key === 'End')
|
29261
|
+
index = tabs.length - 1;
|
29262
|
+
if (this.placement === 'top') {
|
29263
|
+
if ((this.isRtl && event.key === 'ArrowRight') ||
|
29264
|
+
(!this.isRtl && event.key === 'ArrowLeft')) {
|
29265
|
+
index = Math.max(0, index - 1);
|
28495
29266
|
}
|
29267
|
+
if ((this.isRtl && event.key === 'ArrowLeft') ||
|
29268
|
+
(!this.isRtl && event.key === 'ArrowRight')) {
|
29269
|
+
index = Math.min(tabs.length - 1, index + 1);
|
29270
|
+
}
|
29271
|
+
}
|
29272
|
+
if (this.placement === 'start') {
|
29273
|
+
if (event.key === 'ArrowUp')
|
29274
|
+
index = Math.max(0, index - 1);
|
29275
|
+
if (event.key === 'ArrowDown')
|
29276
|
+
index = Math.min(tabs.length - 1, index + 1);
|
29277
|
+
}
|
29278
|
+
tabs[index].setFocus();
|
29279
|
+
if (this.placement === 'top') {
|
29280
|
+
scrollIntoView(tabs[index], this.nav, 'horizontal', 'center');
|
28496
29281
|
}
|
29282
|
+
// need to stop bubbling otherwise it will focus on parent tabs if nested
|
29283
|
+
event.stopPropagation();
|
29284
|
+
// stop the browser moving about
|
29285
|
+
event.preventDefault();
|
28497
29286
|
};
|
28498
29287
|
this.handleTabScroll = () => {
|
28499
29288
|
if (!this.hasScrollControls) {
|
@@ -28784,11 +29573,6 @@ class TabGroup {
|
|
28784
29573
|
}
|
28785
29574
|
});
|
28786
29575
|
observer.observe(this.host);
|
28787
|
-
focusVisible.observe(this.tabGroup);
|
28788
|
-
if (this.leftBtn) {
|
28789
|
-
focusVisible.observe(this.leftBtn);
|
28790
|
-
focusVisible.observe(this.rightBtn);
|
28791
|
-
}
|
28792
29576
|
requestAnimationFrame(() => this.updateScrollControls());
|
28793
29577
|
if (!window['ResizeObserver'])
|
28794
29578
|
return;
|
@@ -28811,27 +29595,22 @@ class TabGroup {
|
|
28811
29595
|
}
|
28812
29596
|
}
|
28813
29597
|
disconnectedCallback() {
|
28814
|
-
focusVisible.unobserve(this.tabGroup);
|
28815
|
-
if (this.leftBtn) {
|
28816
|
-
focusVisible.unobserve(this.leftBtn);
|
28817
|
-
focusVisible.unobserve(this.rightBtn);
|
28818
|
-
}
|
28819
29598
|
if (this.resizeObserver)
|
28820
29599
|
this.resizeObserver.unobserve(this.nav);
|
28821
29600
|
}
|
28822
29601
|
render() {
|
28823
29602
|
this.isRtl = this.host.ownerDocument.dir === 'rtl';
|
28824
|
-
return (hAsync(Host, { class: Object.assign({}, createColorClasses(this.color)), dir: this.isRtl ? 'rtl' : null }, hAsync("div", { part: "base",
|
29603
|
+
return (hAsync(Host, { class: Object.assign({}, createColorClasses(this.color)), dir: this.isRtl ? 'rtl' : null }, hAsync("div", { part: "base", class: {
|
28825
29604
|
'nano-tab-group': true,
|
28826
29605
|
'nano-tab-group--top': this.placement === 'top',
|
28827
29606
|
'nano-tab-group--start': this.placement === 'start',
|
28828
29607
|
'nano-tab-group--has-scroll-controls': this.hasScrollControls,
|
28829
29608
|
'nano-tab-group--has-scroll-controls-left': !this.hideControlLeft,
|
28830
29609
|
'nano-tab-group--has-scroll-controls-right': !this.hideControlRight,
|
28831
|
-
}, onClick: this.handleClick, onKeyDown: this.handleKeyDown }, hAsync("div", { class: "nano-tab-group__nav-container", part: "nav" }, this.placement === 'top' && (hAsync("button", { class: {
|
29610
|
+
}, onClick: this.handleClick, onKeyDown: this.handleKeyDown }, hAsync("div", { class: "nano-tab-group__nav-container", part: "nav" }, this.placement === 'top' && (hAsync("button", { disabled: !this.hasScrollControls, class: {
|
28832
29611
|
'nano-tab-group__scroll-button': true,
|
28833
29612
|
'nano-tab-group__scroll-button--left': true,
|
28834
|
-
}, ref: (btn) => (this.leftBtn = btn), onClick: () => this.handleBtnClick(false) }, hAsync("nano-icon", { name: "light/chevron-left" }))), hAsync("div", { ref: (el) => (this.nav = el), class: "nano-tab-group__nav", onScroll: this.handleTabScroll }, hAsync("div", { ref: (el) => (this.tabs = el), part: "tabs", class: "nano-tab-group__tabs", role: "tablist" }, hAsync("div", { ref: (el) => (this.activeTabIndicator = el), part: "active-tab-indicator", class: "nano-tab-group__active-tab-indicator" }), hAsync("slot", { name: "tabs", onSlotchange: this.handleTabSlotChange }))), this.placement === 'top' && (hAsync("button", { class: {
|
29613
|
+
}, ref: (btn) => (this.leftBtn = btn), onClick: () => this.handleBtnClick(false) }, hAsync("nano-icon", { name: "light/chevron-left" }))), hAsync("div", { ref: (el) => (this.nav = el), class: "nano-tab-group__nav", onScroll: this.handleTabScroll }, hAsync("div", { ref: (el) => (this.tabs = el), part: "tabs", class: "nano-tab-group__tabs", role: "tablist" }, hAsync("div", { ref: (el) => (this.activeTabIndicator = el), part: "active-tab-indicator", class: "nano-tab-group__active-tab-indicator" }), hAsync("slot", { name: "tabs", onSlotchange: this.handleTabSlotChange }))), this.placement === 'top' && (hAsync("button", { disabled: !this.hasScrollControls, class: {
|
28835
29614
|
'nano-tab-group__scroll-button': true,
|
28836
29615
|
'nano-tab-group__scroll-button--right': true,
|
28837
29616
|
}, ref: (btn) => (this.rightBtn = btn), onClick: () => this.handleBtnClick(true) }, hAsync("nano-icon", { name: "light/chevron-right" })))), hAsync("slot", { name: "tab-content-header" }), hAsync("div", { part: "body", class: "nano-tab-group__body", onTouchStart: this.handleTouchStart, onTouchEnd: this.handleTouchEnd }, hAsync("slot", { onSlotchange: this.handleContentSlotChange })))));
|
@@ -28850,7 +29629,7 @@ class TabGroup {
|
|
28850
29629
|
"$flags$": 9,
|
28851
29630
|
"$tagName$": "nano-tab-group",
|
28852
29631
|
"$members$": {
|
28853
|
-
"placement": [
|
29632
|
+
"placement": [513],
|
28854
29633
|
"noScrollControls": [4, "no-scroll-controls"],
|
28855
29634
|
"color": [1],
|
28856
29635
|
"storeId": [1, "store-id"],
|
@@ -28864,7 +29643,7 @@ class TabGroup {
|
|
28864
29643
|
},
|
28865
29644
|
"$listeners$": [[0, "nanoTabClose", "handleTabClose"]],
|
28866
29645
|
"$lazyBundleId$": "-",
|
28867
|
-
"$attrsToReflect$": []
|
29646
|
+
"$attrsToReflect$": [["placement", "placement"]]
|
28868
29647
|
}; }
|
28869
29648
|
}
|
28870
29649
|
|
@@ -29706,12 +30485,12 @@ function sort(workerStore, rows, prop, order) {
|
|
29706
30485
|
return rows;
|
29707
30486
|
const col = workerStore.columns.find((c) => c.prop === prop);
|
29708
30487
|
// custom sort
|
29709
|
-
if (!!col.sortCompareFn && typeof col.sortCompareFn === 'function') {
|
30488
|
+
if (!!(col === null || col === void 0 ? void 0 : col.sortCompareFn) && typeof col.sortCompareFn === 'function') {
|
29710
30489
|
const sorted = rows.slice().sort(col.sortCompareFn(prop, order));
|
29711
30490
|
return sorted;
|
29712
30491
|
}
|
29713
30492
|
// text sort
|
29714
|
-
if (col.type === 'text' && typeof rows[0][prop] === 'string') {
|
30493
|
+
if ((col === null || col === void 0 ? void 0 : col.type) === 'text' && typeof rows[0][prop] === 'string') {
|
29715
30494
|
const sorted = rows.slice().sort((a, b) => {
|
29716
30495
|
if (!a[prop])
|
29717
30496
|
return 1;
|
@@ -29755,7 +30534,7 @@ function applyFiltersAndSort(workerStore, rows) {
|
|
29755
30534
|
}
|
29756
30535
|
function colsFromStore(safeColumns) {
|
29757
30536
|
return safeColumns.map((c) => {
|
29758
|
-
if (!!c.sortCompareFn) {
|
30537
|
+
if (!!(c === null || c === void 0 ? void 0 : c.sortCompareFn)) {
|
29759
30538
|
c.sortCompareFn = new Function('return ' + c.sortCompareFn)();
|
29760
30539
|
}
|
29761
30540
|
return c;
|
@@ -29772,7 +30551,7 @@ async function destroyWorkerStore(workerId) {
|
|
29772
30551
|
function colsToWorker(columns) {
|
29773
30552
|
const safeColumns = JSON.parse(JSON.stringify(columns));
|
29774
30553
|
columns.forEach((c) => {
|
29775
|
-
if (!!c.sortCompareFn) {
|
30554
|
+
if (!!(c === null || c === void 0 ? void 0 : c.sortCompareFn)) {
|
29776
30555
|
const safeCol = safeColumns.find((sc) => sc.prop === c.prop);
|
29777
30556
|
safeCol.sortCompareFn = c.sortCompareFn.toString();
|
29778
30557
|
}
|
@@ -30166,88 +30945,8 @@ function isInViewport(el, percentVisible = 100) {
|
|
30166
30945
|
Math.floor(100 - ((r.bottom - windowHeight) / r.height) * 100) <
|
30167
30946
|
percentVisible);
|
30168
30947
|
}
|
30169
|
-
|
30170
|
-
|
30171
|
-
* @param from - the index to move from
|
30172
|
-
* @param to - the index to move to
|
30173
|
-
* @param arr - the array to re-order
|
30174
|
-
* @returns - a new, re-orderd array
|
30175
|
-
*/
|
30176
|
-
function arrMove(from, to, arr) {
|
30177
|
-
const newArr = [...arr];
|
30178
|
-
const item = newArr.splice(from, 1)[0];
|
30179
|
-
newArr.splice(to, 0, item);
|
30180
|
-
return newArr;
|
30181
|
-
}
|
30182
|
-
|
30183
|
-
// TABLE HEADERS
|
30184
|
-
// (thead > tr > th, tfoot > tr > th)
|
30185
|
-
let draggingCol;
|
30186
|
-
let draggingColEle;
|
30187
|
-
let dragEnterEle;
|
30188
|
-
let draggingParent;
|
30189
|
-
const TableColHead = ({ column, headRenderer, onColumnSortClick, onColumnPinned, onColumnDrag, onColumnDrop, defaults, }) => {
|
30190
|
-
const store = fetchStores();
|
30191
|
-
// Drag to re-order columns handling
|
30192
|
-
function handleDragStart(e, column) {
|
30193
|
-
draggingCol = column;
|
30194
|
-
draggingColEle = dragEnterEle = e.target;
|
30195
|
-
draggingParent = draggingColEle.closest('.' + `${CSSNAMESPACE}__tr`);
|
30196
|
-
draggingParent.classList.add(`${CSSNAMESPACE}__dragging`);
|
30197
|
-
draggingColEle.classList.add(`${CSSNAMESPACE}__drag--start`);
|
30198
|
-
e.dataTransfer.effectAllowed = 'move';
|
30199
|
-
e.dataTransfer.setData('text/html', draggingColEle.innerHTML);
|
30200
|
-
onColumnDrag(column.prop, draggingColEle);
|
30201
|
-
}
|
30202
|
-
function handleDragEnd() {
|
30203
|
-
draggingParent.classList.remove(`${CSSNAMESPACE}__dragging`);
|
30204
|
-
draggingColEle.classList.remove(`${CSSNAMESPACE}__drag--start`);
|
30205
|
-
draggingParent
|
30206
|
-
.querySelectorAll(`.${CSSNAMESPACE}__drag-mask--active`)
|
30207
|
-
.forEach((el) => {
|
30208
|
-
el.classList.remove(`${CSSNAMESPACE}__drag-mask--active`);
|
30209
|
-
});
|
30210
|
-
draggingColEle = null;
|
30211
|
-
draggingCol = null;
|
30212
|
-
draggingParent = null;
|
30213
|
-
dragEnterEle = null;
|
30214
|
-
}
|
30215
|
-
function handleDragEnter(e) {
|
30216
|
-
if (dragEnterEle === e.target)
|
30217
|
-
return;
|
30218
|
-
e.preventDefault();
|
30219
|
-
e.stopImmediatePropagation();
|
30220
|
-
e.dataTransfer.dropEffect = 'move';
|
30221
|
-
draggingParent
|
30222
|
-
.querySelectorAll(`.${CSSNAMESPACE}__drag-mask--active`)
|
30223
|
-
.forEach((el) => {
|
30224
|
-
el.classList.remove(`${CSSNAMESPACE}__drag-mask--active`);
|
30225
|
-
});
|
30226
|
-
dragEnterEle = e.target;
|
30227
|
-
if (!dragEnterEle.classList.contains(`${CSSNAMESPACE}__drag-mask`)) {
|
30228
|
-
e.dataTransfer.dropEffect = 'none';
|
30229
|
-
return;
|
30230
|
-
}
|
30231
|
-
dragEnterEle.classList.add(`${CSSNAMESPACE}__drag-mask--active`);
|
30232
|
-
}
|
30233
|
-
function handleDrop(e) {
|
30234
|
-
e.stopPropagation();
|
30235
|
-
const { colName } = this.dataset;
|
30236
|
-
if (colName === draggingCol.prop)
|
30237
|
-
return;
|
30238
|
-
const cols = store.config.state.columns;
|
30239
|
-
let toIndex = cols.findIndex((col) => col.prop === colName);
|
30240
|
-
const fromIndex = cols.findIndex((col) => col === draggingCol);
|
30241
|
-
if (toIndex < fromIndex &&
|
30242
|
-
this.classList.contains(`${CSSNAMESPACE}__drag-mask--end`))
|
30243
|
-
toIndex++;
|
30244
|
-
if (toIndex > fromIndex &&
|
30245
|
-
this.classList.contains(`${CSSNAMESPACE}__drag-mask--start`))
|
30246
|
-
toIndex--;
|
30247
|
-
if (toIndex === fromIndex)
|
30248
|
-
return;
|
30249
|
-
onColumnDrop(draggingCol.prop, store.config.state.columns[toIndex].prop, draggingColEle);
|
30250
|
-
}
|
30948
|
+
|
30949
|
+
const TableColHead = ({ column, headRenderer, onColumnSortClick, onColumnPinned, defaults, }) => {
|
30251
30950
|
// Sort handling
|
30252
30951
|
function handleColumnSortClick(e) {
|
30253
30952
|
let order;
|
@@ -30267,10 +30966,6 @@ const TableColHead = ({ column, headRenderer, onColumnSortClick, onColumnPinned,
|
|
30267
30966
|
return ((!!defaults.sortable && column.sortable !== false) ||
|
30268
30967
|
(!defaults.sortable && column.sortable === true));
|
30269
30968
|
}
|
30270
|
-
function isDraggable() {
|
30271
|
-
return ((!!defaults.draggable && column.draggable !== false) ||
|
30272
|
-
(!defaults.draggable && column.draggable === true));
|
30273
|
-
}
|
30274
30969
|
let extraProps = {};
|
30275
30970
|
if (column.columnProperties) {
|
30276
30971
|
extraProps = column.columnProperties(column) || extraProps;
|
@@ -30293,37 +30988,23 @@ const TableColHead = ({ column, headRenderer, onColumnSortClick, onColumnPinned,
|
|
30293
30988
|
: 'none';
|
30294
30989
|
props = Object.assign(Object.assign({}, props), { 'aria-sort': sort });
|
30295
30990
|
}
|
30296
|
-
if (isDraggable()) {
|
30297
|
-
props = Object.assign(Object.assign({}, props), { draggable: true, onDragStart: (e) => handleDragStart(e, column), onDragOver: (e) => e.preventDefault(), onDragEnd: () => handleDragEnd() });
|
30298
|
-
}
|
30299
30991
|
return (hAsync("th", Object.assign({}, props, { ref: (th) => {
|
30300
30992
|
if (['end', 'start'].includes(column.pinned))
|
30301
30993
|
addHObserver(th, column.pinned, onColumnPinned);
|
30302
30994
|
if (['top', 'bottom'].includes(headRenderer.pinned))
|
30303
30995
|
addVObserver(th, headRenderer.pinned, onColumnPinned);
|
30304
|
-
}, key: column.prop }),
|
30305
|
-
|
30306
|
-
|
30307
|
-
|
30308
|
-
|
30309
|
-
|
30310
|
-
|
30311
|
-
|
30312
|
-
|
30313
|
-
|
30314
|
-
|
30315
|
-
|
30316
|
-
[`${CSSNAMESPACE}__order-btn`]: true,
|
30317
|
-
[`${CSSNAMESPACE}__cell-content`]: true,
|
30318
|
-
}, onClick: handleColumnSortClick },
|
30319
|
-
colheadFootRender(column),
|
30320
|
-
column.filter !== undefined && column.filter !== null && (hAsync("nano-icon", { name: "light/filter" })),
|
30321
|
-
!!column.order &&
|
30322
|
-
(column.order === 'desc' ? (hAsync("nano-icon", { name: "solid/long-arrow-down" })) : (hAsync("nano-icon", { name: "solid/long-arrow-up" }))),
|
30323
|
-
hAsync("div", { class: `${CSSNAMESPACE}__status-icons` },
|
30324
|
-
hAsync("nano-icon", { name: "light/chevron-down" })))) : (hAsync("div", { class: `${CSSNAMESPACE}__cell-content` },
|
30325
|
-
colheadFootRender(column),
|
30326
|
-
column.filter !== undefined && column.filter !== null && (hAsync("nano-icon", { name: "light/bars-filter" }))))));
|
30996
|
+
}, key: column.prop }), isSortable() ? (hAsync("button", { class: {
|
30997
|
+
[`${CSSNAMESPACE}__order-btn`]: true,
|
30998
|
+
[`${CSSNAMESPACE}__cell-content`]: true,
|
30999
|
+
}, onClick: handleColumnSortClick },
|
31000
|
+
colheadFootRender(column),
|
31001
|
+
column.filter !== undefined && column.filter !== null && (hAsync("nano-icon", { name: "light/filter" })),
|
31002
|
+
!!column.order &&
|
31003
|
+
(column.order === 'desc' ? (hAsync("nano-icon", { name: "solid/long-arrow-down" })) : (hAsync("nano-icon", { name: "solid/long-arrow-up" }))),
|
31004
|
+
hAsync("div", { class: `${CSSNAMESPACE}__status-icons` },
|
31005
|
+
hAsync("nano-icon", { name: "light/chevron-down" })))) : (hAsync("div", { class: `${CSSNAMESPACE}__cell-content` },
|
31006
|
+
colheadFootRender(column),
|
31007
|
+
column.filter !== undefined && column.filter !== null && (hAsync("nano-icon", { name: "light/bars-filter" }))))));
|
30327
31008
|
};
|
30328
31009
|
|
30329
31010
|
// TABLE CELL
|
@@ -30364,7 +31045,7 @@ const baseCellClasses = (colIndex, toString = false) => {
|
|
30364
31045
|
return classListToStr(classes);
|
30365
31046
|
return classes;
|
30366
31047
|
};
|
30367
|
-
const TableCell = ({ rowIndex, colIndex, nestedContent, }) => {
|
31048
|
+
const TableCell$1 = ({ rowIndex, colIndex, nestedContent, }) => {
|
30368
31049
|
const Content = () => nestedContent
|
30369
31050
|
? nestedContent()
|
30370
31051
|
: cellRender(rowIndex, colIndex) || (hAsync("span", { class: "placeholder" }, "\u00A0"));
|
@@ -30395,15 +31076,15 @@ const TableCell = ({ rowIndex, colIndex, nestedContent, }) => {
|
|
30395
31076
|
hAsync(Content, null))))) : (hAsync(ContentWrap, null))));
|
30396
31077
|
};
|
30397
31078
|
|
31079
|
+
const TableCell = ({ header, wrap }, children) => {
|
31080
|
+
const cell = (hAsync("div", { class: {
|
31081
|
+
[`${CSSNAMESPACE}__cell-content`]: true,
|
31082
|
+
[`${CSSNAMESPACE}__cell-content--wrap`]: wrap,
|
31083
|
+
} }, children));
|
31084
|
+
return header ? hAsync("th", { scope: "row" }, cell) : hAsync("td", null, cell);
|
31085
|
+
};
|
30398
31086
|
const TableRow = ({ rowRenderer, rowIndex, rowModel, onColumnPinned }, children, utils) => {
|
30399
31087
|
let extraProps = {};
|
30400
|
-
const TableCell = ({ header, wrap }, children) => {
|
30401
|
-
const cell = (hAsync("div", { class: {
|
30402
|
-
[`${CSSNAMESPACE}__cell-content`]: true,
|
30403
|
-
[`${CSSNAMESPACE}__cell-content--wrap`]: wrap,
|
30404
|
-
} }, children));
|
30405
|
-
return header ? hAsync("th", { scope: "row" }, cell) : hAsync("td", null, cell);
|
30406
|
-
};
|
30407
31088
|
if (!rowModel) {
|
30408
31089
|
const model = rowDataModel(rowIndex);
|
30409
31090
|
rowModel = model.rowModel;
|
@@ -30508,7 +31189,7 @@ const TableHeadFootRow = ({ rowRenderer, onColumnPinned }, children, utils) => {
|
|
30508
31189
|
return hAsync("tr", Object.assign({}, props), children);
|
30509
31190
|
};
|
30510
31191
|
|
30511
|
-
const tableCss = ":host{box-sizing:border-box}*,*::before,*::after{box-sizing:border-box}[hidden]{display:none !important}nano-table{display:block;width:100%;--max-col-width:clamp(200px, 500px, 50vw);--color:var(--nano-color-mediumgrey, #68767e);--font-size:0.87rem;--cell-line-height:1.5;--thead-font-size:0.95rem;--thead-color:#455560;--tfoot-color:#455560;--border-color:#dddbda;--border-style:thin solid var(--border-color);--border-tint-color:#0084a9;--border-tint-style:3px solid var(--border-tint-color);--cell-bg-rgb:var(--nano-color-white-rgb, 255 255 255);--head-bg-rgb:250 250 249;--foot-bg-rgb:var(--head-bg-rgb);--th-row-bg-rgb:var(--cell-bg-rgb);--ordered-bg-rgb:var(--nano-color-offwhite-rgb, 249 249 251);--td-padding-start:0.625rem;--td-padding-end:0.625rem;--td-padding-top:0.5rem;--td-padding-bottom:0.4125rem;--th-padding-start:0.625rem;--th-padding-end:0.625rem;--th-padding-top:0.875rem;--th-padding-bottom:0.6875rem;--td-padding-v:var(--td-padding-top) var(--td-padding-bottom);--td-padding-h:var(--td-padding-start) var(--td-padding-end);--th-padding-v:var(--th-padding-top) var(--th-padding-bottom);--th-padding-h:var(--th-padding-start) var(--th-padding-end);--foot-th-padding-v:var(--td-padding-top) var(--td-padding-bottom);--foot-th-padding-h:var(--td-padding-start) var(--td-padding-end);--head-th-padding-v:var(--th-padding-top) var(--th-padding-bottom);--head-th-padding-h:var(--th-padding-start) var(--th-padding-end);--bookend-col-padding:2rem}.nano-tbl{color:var(--color);text-align:start;width:100%;font-size:var(--font-size);border-spacing:0 0;border-collapse:separate;background:rgb(var(--cell-bg-rgb));-webkit-border-end:1px solid transparent;border-inline-end:1px solid transparent;-webkit-border-before:1px solid transparent;border-block-start:1px solid transparent;position:relative;z-index:1}.nano-tbl__wrap{display:table;min-width:100%}.nano-tbl__top-anchor{clip:rect(1px, 1px, 1px, 1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);block-size:1px;inline-size:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;position:relative}.nano-tbl__ordered{background-color:var(--ordered-bg);-webkit-border-start:var(--border-style);border-inline-start:var(--border-style);-webkit-border-end:var(--border-style);border-inline-end:var(--border-style)}.nano-
|
31192
|
+
const tableCss = ":host{box-sizing:border-box}*,*::before,*::after{box-sizing:border-box}[hidden]{display:none !important}nano-table{display:block;width:100%;--max-col-width:clamp(200px, 500px, 50vw);--color:var(--nano-color-mediumgrey, #68767e);--font-size:0.87rem;--cell-line-height:1.5;--thead-font-size:0.95rem;--thead-color:#455560;--tfoot-color:#455560;--border-color:#dddbda;--border-style:thin solid var(--border-color);--border-tint-color:#0084a9;--border-tint-style:3px solid var(--border-tint-color);--cell-bg-rgb:var(--nano-color-white-rgb, 255 255 255);--head-bg-rgb:250 250 249;--foot-bg-rgb:var(--head-bg-rgb);--th-row-bg-rgb:var(--cell-bg-rgb);--ordered-bg-rgb:var(--nano-color-offwhite-rgb, 249 249 251);--td-padding-start:0.625rem;--td-padding-end:0.625rem;--td-padding-top:0.5rem;--td-padding-bottom:0.4125rem;--th-padding-start:0.625rem;--th-padding-end:0.625rem;--th-padding-top:0.875rem;--th-padding-bottom:0.6875rem;--td-padding-v:var(--td-padding-top) var(--td-padding-bottom);--td-padding-h:var(--td-padding-start) var(--td-padding-end);--th-padding-v:var(--th-padding-top) var(--th-padding-bottom);--th-padding-h:var(--th-padding-start) var(--th-padding-end);--foot-th-padding-v:var(--td-padding-top) var(--td-padding-bottom);--foot-th-padding-h:var(--td-padding-start) var(--td-padding-end);--head-th-padding-v:var(--th-padding-top) var(--th-padding-bottom);--head-th-padding-h:var(--th-padding-start) var(--th-padding-end);--bookend-col-padding:2rem}.nano-tbl{color:var(--color);text-align:start;width:100%;font-size:var(--font-size);border-spacing:0 0;border-collapse:separate;background:rgb(var(--cell-bg-rgb));-webkit-border-end:1px solid transparent;border-inline-end:1px solid transparent;-webkit-border-before:1px solid transparent;border-block-start:1px solid transparent;position:relative;z-index:1}.nano-tbl__wrap{display:table;min-width:100%}.nano-tbl__top-anchor{clip:rect(1px, 1px, 1px, 1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);block-size:1px;inline-size:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;position:relative}.nano-tbl__ordered{background-color:var(--ordered-bg);-webkit-border-start:var(--border-style);border-inline-start:var(--border-style);-webkit-border-end:var(--border-style);border-inline-end:var(--border-style)}.nano-tbl__order-btn{padding:0;border:none;outline:none;font:inherit;background:none;-webkit-appearance:none;appearance:none;color:inherit;display:flex;gap:10px;align-items:center;width:100%}.nano-tbl__order-btn:focus-visible{outline:none;box-shadow:var(--nano-control-focus-shadow, 0 0 0 0.1875rem var(--nano-control-focus-color, rgba(144, 198, 231, 0.8))) inset}.nano-tbl__status-icons{margin-inline:auto 10px;display:flex;gap:10px}.nano-tbl__progress-bar{font-size:0.2rem;position:sticky;inset-block-start:0;inset-inline:0;z-index:10;transition:scale 0.25s;transform:scale(0);width:100%;height:0}.nano-tbl__progress-bar--show{transform:scale(1);height:auto}.nano-tbl__caption--hide{clip:rect(1px, 1px, 1px, 1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);block-size:1px;inline-size:1px;margin:-1px;overflow:hidden;padding:0;position:absolute}.nano-tbl__td,.nano-tbl__th{line-height:var(--cell-line-height);text-align:start;-webkit-border-before:var(--border-style);border-block-start:var(--border-style);max-width:var(--max-col-width);background-color:rgb(var(--cell-bg-rgb))}tbody:first-of-type tr:first-child .nano-tbl__td,tbody:first-of-type tr:first-child .nano-tbl__th{-webkit-border-before:none;border-block-start:none}tbody:last-of-type tr:last-child .nano-tbl__td,tbody:last-of-type tr:last-child .nano-tbl__th{-webkit-border-after:var(--border-style);border-block-end:var(--border-style)}.md .nano-tbl__td:first-child .nano-tbl__cell-content,.md .nano-tbl__th:first-child .nano-tbl__cell-content{-webkit-padding-start:var(--bookend-col-padding);padding-inline-start:var(--bookend-col-padding)}.md .nano-tbl__td:last-child .nano-tbl__cell-content,.md .nano-tbl__th:last-child .nano-tbl__cell-content{-webkit-padding-end:var(--bookend-col-padding);padding-inline-end:var(--bookend-col-padding)}@media (max-width: 768px){.nano-tbl__td:first-child .nano-tbl__cell-content,.nano-tbl__th:first-child .nano-tbl__cell-content{-webkit-padding-start:var(--td-padding-start) !important;padding-inline-start:var(--td-padding-start) !important}.nano-tbl__td:last-child .nano-tbl__cell-content,.nano-tbl__th:last-child .nano-tbl__cell-content{-webkit-padding-end:var(--td-padding-end) !important;padding-inline-end:var(--td-padding-end) !important}}thead .nano-tbl__td,thead .nano-tbl__th{color:var(--thead-color);font-weight:800;background:rgb(var(--head-bg-rgb)/90%);font-size:var(--thead-font-size);-webkit-border-before:none !important;border-block-start:none !important}thead .nano-tbl__td .nano-tbl__cell-content,thead .nano-tbl__th .nano-tbl__cell-content{padding-block:var(--head-th-padding-v);padding-inline:var(--head-th-padding-h)}thead .nano-tbl__td .nano-sortable__keyboard-handle,thead .nano-tbl__th .nano-sortable__keyboard-handle{position:absolute;inset-inline-end:5px;inset-block-start:50%;transform:translateY(-50%);background:white;z-index:10}tfoot .nano-tbl__td,tfoot .nano-tbl__th{color:var(--tfoot-color);font-weight:800;-webkit-border-before:none;border-block-start:none;background:rgb(var(--foot-bg-rgb)/90%);font-size:var(--thead-font-size)}tfoot .nano-tbl__td .nano-tbl__cell-content,tfoot .nano-tbl__th .nano-tbl__cell-content{padding-block:var(--foot-th-padding-v);padding-inline:var(--foot-th-padding-h)}.nano-tbl__td.nano-tbl__ordered,.nano-tbl__th.nano-tbl__ordered{background-color:rgb(var(--ordered-bg-rgb)/80%) !important}.nano-tbl__cell-content{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-block:var(--td-padding-v);padding-inline:var(--td-padding-h)}.nano-tbl__cell-content--no-result{padding-block:2rem}.nano-tbl__cell-content--wrap{white-space:normal;overflow:visible}.nano-tbl tbody{will-change:scroll-position;opacity:1;transition:0.1s ease opacity;transform:translateZ(0)}.nano-tbl tbody.nano-tbl__inactive{opacity:0}.nano-tbl tbody .nano-tbl__tr:has(~.nano-tbl__tr--placeholder){display:none}.nano-tbl tbody .nano-tbl__tr--placeholder~.nano-tbl__tr{display:none}.nano-tbl th[scope=row]{font-weight:800;margin:0}.nano-tbl__pin{position:sticky;transform:translateZ(0)}.nano-tbl__pin--start{inset-inline:-1px auto;transition:max-width 0.25s ease}.nano-tbl__pin--start::after{content:\"\";position:absolute;inset:0;box-shadow:5px 1px 4px 0 rgba(0, 0, 0, 0.2);opacity:0;z-index:-1}.nano-tbl__pinned--start .nano-tbl__pin--start{z-index:2;max-width:125px !important}.sm .nano-tbl__pinned--start .nano-tbl__pin--start{max-width:var(--max-col-width) !important}.nano-tbl__pinned--start .nano-tbl__pin--start::after{opacity:1}.nano-tbl__pin--end{}.nano-tbl__pin--start+.nano-tbl__pin--end{inset-inline:auto auto}.nano-tbl__pin--start+.nano-tbl__pin--end::after{display:none}.sm .nano-tbl__pin--end{inset-inline:auto -1px !important;max-width:min(50vw, 200px)}.sm .nano-tbl__pin--end::after{display:block !important;content:\"\";position:absolute;inset:0;box-shadow:-5px 1px 4px 0 rgba(0, 0, 0, 0.2);opacity:0;z-index:-1}.sm .nano-tbl__pinned--end .nano-tbl__pin--end::after{opacity:1}.nano-tbl__pin--top{inset-block:-1px auto}.nano-tbl__pinned--top .nano-tbl__pin--top{z-index:4 !important}.nano-tbl__pin--bottom{inset-block:auto -1px}.nano-tbl__pinned--bottom .nano-tbl__pin--bottom{z-index:5 !important}.nano-tbl__pinned--start .nano-tbl__pin--top.nano-tbl__pin--start{z-index:5 !important}.nano-tbl__pinned--top.nano-tbl__pinned--start .nano-tbl__pin--top.nano-tbl__pin--start{z-index:6 !important}.nano-tbl__pinned--end .nano-tbl__pin--top.nano-tbl__pin--end{z-index:5 !important}.nano-tbl__pinned--top.nano-tbl__pinned--end .nano-tbl__pin--top.nano-tbl__pin--end{z-index:6 !important}.nano-tbl__pinned--start .nano-tbl__pin--bottom.nano-tbl__pin--start{z-index:5 !important}.nano-tbl__pinned--bottom.nano-tbl__pinned--start .nano-tbl__pin--bottom.nano-tbl__pin--start{z-index:6 !important}.nano-tbl__pinned--end .nano-tbl__pin--bottom.nano-tbl__pin--end{z-index:5 !important}.nano-tbl__pinned--bottom.nano-tbl__pinned--end .nano-tbl__pin--bottom.nano-tbl__pin--end{z-index:6 !important}.nano-tbl thead tr:last-of-type td,.nano-tbl thead tr:last-of-type th{-webkit-border-after:var(--border-tint-style);border-block-end:var(--border-tint-style)}.nano-tbl tfoot tr:first-of-type td,.nano-tbl tfoot tr:first-of-type th{-webkit-border-before:none;border-block-start:none}.nano-tbl tfoot tr:last-of-type td,.nano-tbl tfoot tr:last-of-type th{-webkit-border-after:var(--border-tint-style);border-block-end:var(--border-tint-style)}.nano-tbl__pinned--bottom .nano-tbl tfoot tr.nano-tbl__pin--bottom:first-of-type td,.nano-tbl__pinned--bottom .nano-tbl tfoot tr.nano-tbl__pin--bottom:first-of-type th{-webkit-border-before:var(--border-tint-style) !important;border-block-start:var(--border-tint-style) !important}.nano-tbl__pinned--bottom .nano-tbl tfoot tr.nano-tbl__pin--bottom:last-of-type td,.nano-tbl__pinned--bottom .nano-tbl tfoot tr.nano-tbl__pin--bottom:last-of-type th{-webkit-border-after:none !important;border-block-end:none !important}.nano-tbl .unlimited-width{max-width:none}.nano-tbl__spinner{font-size:1.5rem;transition:scale 0.25s;scale:0;padding:0.5rem;position:absolute;inset-block-end:0;inset-inline-start:calc(50% - 0.75rem);z-index:0}.nano-tbl__spinner--show{scale:1;position:sticky}.nano-tbl nano-skeleton{line-height:var(--cell-line-height)}";
|
30512
31193
|
|
30513
31194
|
let id = 0;
|
30514
31195
|
/**
|
@@ -30519,7 +31200,6 @@ let id = 0;
|
|
30519
31200
|
*- Built-in column sort
|
30520
31201
|
*- Easily swap in API / async based search / filter & sort
|
30521
31202
|
*- Pin headers, footers, rows, columns
|
30522
|
-
*- Drag-&-Drop columns to re-order
|
30523
31203
|
*- Add custom rendering at every level
|
30524
31204
|
*- Add custom properties at every level
|
30525
31205
|
*
|
@@ -30533,8 +31213,6 @@ class Table {
|
|
30533
31213
|
this.nanoTblBlockRendered = createEvent(this, "nanoTblBlockRendered", 7);
|
30534
31214
|
this.nanoTblBeforeSort = createEvent(this, "nanoTblBeforeSort", 7);
|
30535
31215
|
this.nanoTblAfterSort = createEvent(this, "nanoTblAfterSort", 7);
|
30536
|
-
this.nanoTblColDrag = createEvent(this, "nanoTblColDrag", 7);
|
30537
|
-
this.nanoTblColDrop = createEvent(this, "nanoTblColDrop", 7);
|
30538
31216
|
this.nanoTblBeforeFilter = createEvent(this, "nanoTblBeforeFilter", 7);
|
30539
31217
|
this.nanoTblAfterFilter = createEvent(this, "nanoTblAfterFilter", 7);
|
30540
31218
|
this.nanoTblBeforeSearch = createEvent(this, "nanoTblBeforeSearch", 7);
|
@@ -30549,32 +31227,6 @@ class Table {
|
|
30549
31227
|
this.blockHeights = [];
|
30550
31228
|
this.unitHeight = 0;
|
30551
31229
|
this._isReady = false;
|
30552
|
-
/**
|
30553
|
-
* Fired when a column is dragged
|
30554
|
-
* @param column
|
30555
|
-
*/
|
30556
|
-
this.colDrag = (column) => {
|
30557
|
-
this.nanoTblColDrag.emit({ column });
|
30558
|
-
};
|
30559
|
-
/**
|
30560
|
-
* Fired when a column is dropped after being dragged
|
30561
|
-
* @param fromCol
|
30562
|
-
* @param toCol
|
30563
|
-
*/
|
30564
|
-
this.colDrop = (fromCol, toCol) => {
|
30565
|
-
const cols = this.store.config.state.columns;
|
30566
|
-
const toIndex = cols.findIndex((col) => col.prop === toCol);
|
30567
|
-
const fromIndex = cols.findIndex((col) => col.prop === fromCol);
|
30568
|
-
const dropEvent = this.nanoTblColDrop.emit({
|
30569
|
-
fromCol,
|
30570
|
-
toCol,
|
30571
|
-
fromIndex,
|
30572
|
-
toIndex,
|
30573
|
-
});
|
30574
|
-
if (dropEvent.defaultPrevented)
|
30575
|
-
return;
|
30576
|
-
this.columns = arrMove(fromIndex, toIndex, cols);
|
30577
|
-
};
|
30578
31230
|
/**
|
30579
31231
|
* Start a sort - can be cancelled by `preventDefault`
|
30580
31232
|
* @param order - column order
|
@@ -30626,12 +31278,18 @@ class Table {
|
|
30626
31278
|
this._loading = false;
|
30627
31279
|
}
|
30628
31280
|
};
|
31281
|
+
/**
|
31282
|
+
* On scroll, loop through all blocks' heights and cumulatively, add them together.
|
31283
|
+
* When we find that the scroll position is less than this cumulative block height -
|
31284
|
+
* stop loop - it's on the current active block.
|
31285
|
+
*/
|
30629
31286
|
this.scrollHandler = () => {
|
31287
|
+
// don't listen if this table isn't in the viewport
|
30630
31288
|
if (!this.store.general.state.isActive)
|
30631
31289
|
return;
|
30632
|
-
|
30633
|
-
|
30634
|
-
let cumulativeHeight =
|
31290
|
+
readTask(() => {
|
31291
|
+
this.cacheScrollPosition = this.scrollParent.scrollTop || window.scrollY;
|
31292
|
+
let cumulativeHeight = this.host.offsetTop;
|
30635
31293
|
let blockIndex = 0;
|
30636
31294
|
const blockLen = this.blocks.length;
|
30637
31295
|
while (blockIndex < blockLen &&
|
@@ -30683,7 +31341,6 @@ class Table {
|
|
30683
31341
|
this.customFilterFn = undefined;
|
30684
31342
|
this.customSortFn = undefined;
|
30685
31343
|
this.defaultSort = true;
|
30686
|
-
this.defaultColDraggable = false;
|
30687
31344
|
this.virtualTotalItems = 0;
|
30688
31345
|
this.blocks = [];
|
30689
31346
|
this.activeBlocks = [0, 1, 2];
|
@@ -30806,9 +31463,8 @@ class Table {
|
|
30806
31463
|
? document
|
30807
31464
|
: this._scrollParent).removeEventListener('scroll', this.scrollHandler);
|
30808
31465
|
}
|
30809
|
-
(ele === document.documentElement ? document : ele).addEventListener('scroll', this.scrollHandler
|
31466
|
+
(ele === document.documentElement ? document : ele).addEventListener('scroll', this.scrollHandler);
|
30810
31467
|
this._scrollParent = ele;
|
30811
|
-
this.setupActiveWatcher();
|
30812
31468
|
}
|
30813
31469
|
// used to fire `nanoTblBlockRendered` on block render change
|
30814
31470
|
get primaryBlockIndex() {
|
@@ -31086,9 +31742,9 @@ class Table {
|
|
31086
31742
|
const height = el.getBoundingClientRect().height;
|
31087
31743
|
// cache height to our block heights array
|
31088
31744
|
// for subsequent renders
|
31089
|
-
const
|
31090
|
-
if (
|
31091
|
-
this.blockHeights[
|
31745
|
+
const fBhIdx = this.blockHeights.findIndex((bh) => bh.blockIndex === blockIndex);
|
31746
|
+
if (fBhIdx > -1) {
|
31747
|
+
this.blockHeights[fBhIdx] = { height, blockIndex };
|
31092
31748
|
}
|
31093
31749
|
else
|
31094
31750
|
this.blockHeights.push({ height, blockIndex });
|
@@ -31105,7 +31761,7 @@ class Table {
|
|
31105
31761
|
/** Adds an IO. Makes sure our scroll listener is only active when
|
31106
31762
|
* the table is in viewport */
|
31107
31763
|
setupActiveWatcher() {
|
31108
|
-
if (!this.host || !this.scrollParent)
|
31764
|
+
if (!this.host || !this.scrollParent || !this.store)
|
31109
31765
|
return;
|
31110
31766
|
if (this.activeWatcherIo) {
|
31111
31767
|
this.activeWatcherIo.disconnect();
|
@@ -31116,21 +31772,25 @@ class Table {
|
|
31116
31772
|
this.store.general.state.isActive = true;
|
31117
31773
|
else
|
31118
31774
|
this.store.general.state.isActive = false;
|
31119
|
-
}, { root: this.scrollParent }));
|
31775
|
+
}, { root: this.scrollParent, threshold: 0 }));
|
31120
31776
|
io.observe(this.host);
|
31121
31777
|
}
|
31122
31778
|
// Component lifecycle
|
31123
31779
|
async componentWillLoad() {
|
31124
|
-
|
31780
|
+
// setup stores
|
31125
31781
|
this.store = await generateStore(this.host, this.columns, this.scrollParent, this.isReady);
|
31126
|
-
this.store.general.onChange('isActive', this.scrollHandler);
|
31127
31782
|
await this.handleRowsChange();
|
31128
|
-
this.
|
31783
|
+
this.store.general.onChange('isActive', this.scrollHandler);
|
31129
31784
|
this.store.data.onChange('rows', () => this.setBlocks());
|
31785
|
+
// setup dom and attach listeners
|
31786
|
+
this.processSlots();
|
31130
31787
|
this.setBlocks();
|
31788
|
+
this.scrollParent = findScrollParent(this.host);
|
31789
|
+
this.setupActiveWatcher();
|
31131
31790
|
}
|
31132
31791
|
connectedCallback() {
|
31133
31792
|
this.scrollParent = findScrollParent(this.host);
|
31793
|
+
this.setupActiveWatcher();
|
31134
31794
|
}
|
31135
31795
|
componentDidLoad() {
|
31136
31796
|
this.setInitialBlockDimension();
|
@@ -31155,31 +31815,29 @@ class Table {
|
|
31155
31815
|
}
|
31156
31816
|
render() {
|
31157
31817
|
this.blockElements = [];
|
31158
|
-
return (hAsync(Host, null, hAsync("div", { class: `${CSSNAMESPACE}__top-anchor`, ref: (a) => (this.topAnchorEle = a) }, "\u00A0"), hAsync("nano-resize-observe", {
|
31818
|
+
return (hAsync(Host, null, hAsync("div", { class: `${CSSNAMESPACE}__top-anchor`, ref: (a) => (this.topAnchorEle = a) }, "\u00A0"), hAsync("nano-resize-observe", { states: "576w sm, 768w md", class: "sm md", onNanoResizeStateChange: this.handleResizeChange }), hAsync("div", { class: `${CSSNAMESPACE}__wrap sm md`, ref: (div) => (this.tableWrapperEle = div), "aria-labelledby": 'table-caption-' + this.renderId, tabindex: this.type === 'grid' ? '0' : undefined }, hAsync("nano-progress-bar", { indeterminate: true, class: {
|
31159
31819
|
[`${CSSNAMESPACE}__progress-bar`]: true,
|
31160
31820
|
[`${CSSNAMESPACE}__progress-bar--show`]: this._loading,
|
31161
|
-
} }), hAsync("table", { role: this.type === 'grid' ? 'grid' : undefined, "aria-
|
31821
|
+
} }), hAsync("table", { role: this.type === 'grid' ? 'grid' : undefined, "aria-rowcount": this.store.data.state.rows.length, "aria-colcount": this.store.config.state.columns.length, class: `${CSSNAMESPACE}`, ref: (tbl) => (this.tableEle = tbl) }, hAsync("caption", { class: {
|
31162
31822
|
[`${CSSNAMESPACE}__caption`]: true,
|
31163
31823
|
[`${CSSNAMESPACE}__caption--hide`]: !this.showCaption,
|
31164
31824
|
}, id: 'table-caption-' + this.renderId }, hAsync("slot", { name: "caption" }, this.caption)), hAsync("thead", null, hAsync(TableHeadFootRow, { rowRenderer: this.headRender, onColumnPinned: this.handleColumnPinned }, this.store.config.state.columns.map((colModel) => [
|
31165
|
-
hAsync(TableColHead, { column: colModel, headRenderer: this.headRender, onColumnSortClick: this.sortStart, onColumnPinned: this.handleColumnPinned,
|
31825
|
+
hAsync(TableColHead, { column: colModel, headRenderer: this.headRender, onColumnSortClick: this.sortStart, onColumnPinned: this.handleColumnPinned, defaults: {
|
31166
31826
|
sortable: this.defaultSort,
|
31167
|
-
draggable: this.defaultColDraggable,
|
31168
31827
|
} }),
|
31169
|
-
]))), this._loading && !this.blocks.length && (hAsync("tbody", { class: `${CSSNAMESPACE}__active` }, [...Array(10).keys()].map((rowIndex) => (hAsync("tr", null, this.store.config.state.columns.map((_colModel, colIndex) => (hAsync(TableCell, { rowIndex: rowIndex, colIndex: colIndex, nestedContent: () => hAsync("nano-skeleton", null) })))))))), hAsync("tr", { hidden: !!this._loading || !!this.blocks.length }, hAsync("th", { class: `${CSSNAMESPACE}__th`, colSpan: this.store.config.state.columns.length }, hAsync("div", { class: "nano-tbl__cell-content nano-tbl__cell-content--no-result" }, hAsync("slot", { name: "no-results" }, "No results found")))), this.blocks.map((block, blockIndex) => (hAsync("tbody", { key: block.__uuid, id: `tbody-${this.renderId}-${blockIndex}`, ref: (tb) => {
|
31828
|
+
]))), this._loading && !this.blocks.length && (hAsync("tbody", { class: `${CSSNAMESPACE}__active` }, [...Array(10).keys()].map((rowIndex) => (hAsync("tr", null, this.store.config.state.columns.map((_colModel, colIndex) => (hAsync(TableCell$1, { rowIndex: rowIndex, colIndex: colIndex, nestedContent: () => hAsync("nano-skeleton", null) })))))))), hAsync("tr", { hidden: !!this._loading || !!this.blocks.length }, hAsync("th", { class: `${CSSNAMESPACE}__th`, colSpan: this.store.config.state.columns.length }, hAsync("div", { class: "nano-tbl__cell-content nano-tbl__cell-content--no-result" }, hAsync("slot", { name: "no-results" }, "No results found")))), this.blocks.map((block, blockIndex) => (hAsync("tbody", { key: block.__uuid, id: `tbody-${this.renderId}-${blockIndex}`, ref: (tb) => {
|
31170
31829
|
this.blockElements.push(tb);
|
31171
31830
|
}, class: {
|
31172
31831
|
[`${CSSNAMESPACE}__inactive`]: !this.activeBlocks.includes(blockIndex),
|
31173
31832
|
[`${CSSNAMESPACE}__active`]: this.activeBlocks.includes(blockIndex),
|
31174
31833
|
} }, this.activeBlocks.includes(blockIndex) ? (block.rows.map((row, i) => {
|
31175
31834
|
const rowIndex = blockIndex > 0 ? blockIndex * this.perBlock + i : i;
|
31176
|
-
return (hAsync(TableRow, { rowRenderer: this.rowRender, rowModel: row, rowIndex: rowIndex }, this.store.config.state.columns.map((_colModel, colIndex) => (hAsync(TableCell, { rowIndex: rowIndex, colIndex: colIndex })))));
|
31835
|
+
return (hAsync(TableRow, { rowRenderer: this.rowRender, rowModel: row, rowIndex: rowIndex }, this.store.config.state.columns.map((_colModel, colIndex) => (hAsync(TableCell$1, { rowIndex: rowIndex, colIndex: colIndex })))));
|
31177
31836
|
})) : (hAsync("tr", null, hAsync("td", { colSpan: this.store.config.state.columns.length, style: {
|
31178
31837
|
height: this.getBlockHeight(blockIndex) + 'px',
|
31179
31838
|
} })))))), this.showFooter && (hAsync("tfoot", null, hAsync(TableHeadFootRow, { rowRenderer: this.footRender, onColumnPinned: this.handleColumnPinned }, this.store.config.state.columns.map((colModel) => [
|
31180
31839
|
hAsync(TableColHead, { column: colModel, headRenderer: this.footRender, onColumnPinned: this.handleColumnPinned, onColumnSortClick: this.sortStart, defaults: {
|
31181
31840
|
sortable: this.defaultSort,
|
31182
|
-
draggable: this.defaultColDraggable,
|
31183
31841
|
} }),
|
31184
31842
|
]))))), !!this.blocks.length && (hAsync("nano-spinner", { type: "circle", class: {
|
31185
31843
|
[`${CSSNAMESPACE}__spinner`]: true,
|
@@ -31215,7 +31873,6 @@ class Table {
|
|
31215
31873
|
"customFilterFn": [16],
|
31216
31874
|
"customSortFn": [16],
|
31217
31875
|
"defaultSort": [4, "default-sort"],
|
31218
|
-
"defaultColDraggable": [4, "default-col-draggable"],
|
31219
31876
|
"virtualTotalItems": [2, "virtual-total-items"],
|
31220
31877
|
"internalLoading": [32],
|
31221
31878
|
"blocks": [32],
|
@@ -31473,6 +32130,7 @@ registerComponents([
|
|
31473
32130
|
Skeleton,
|
31474
32131
|
Slide$2,
|
31475
32132
|
Slides,
|
32133
|
+
Sortable,
|
31476
32134
|
Spinner,
|
31477
32135
|
SplitPane,
|
31478
32136
|
Sticker,
|