@esri/calcite-components 5.2.0-next.11 → 5.2.0-next.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cdn/{X5OTLCGH.js → 2CDB7YMV.js} +1 -1
- package/dist/cdn/{FB57TK7N.js → 2FMHWMNQ.js} +1 -1
- package/dist/cdn/{3CRONO2H.js → 2JZG6CW2.js} +1 -1
- package/dist/cdn/{JPUVW4BM.js → 2X4PAO3S.js} +1 -1
- package/dist/cdn/{2JMH7LPC.js → 2XK6LELA.js} +1 -1
- package/dist/cdn/{3EZDLGBO.js → 354DIEVA.js} +1 -1
- package/dist/cdn/{QJMREFZB.js → 44HM425L.js} +1 -1
- package/dist/cdn/{CN3GE6PT.js → 46HCGN3Z.js} +1 -1
- package/dist/cdn/{LFKTIMOZ.js → 4BURTKNO.js} +1 -1
- package/dist/cdn/{KJ3MMRFP.js → 4H7ZPEKZ.js} +1 -1
- package/dist/cdn/{JEOK7EMC.js → 52HQQX6Y.js} +1 -1
- package/dist/cdn/{GB7SQRWY.js → 5454RDUL.js} +1 -1
- package/dist/cdn/{BPA5EXVV.js → 5DZDAOWR.js} +1 -1
- package/dist/cdn/{WNRAC2WY.js → 5NGA4EVP.js} +1 -1
- package/dist/cdn/{RCFDK4P6.js → 5UROUYS3.js} +1 -1
- package/dist/cdn/{L2E2NR2H.js → 5VTZSLYJ.js} +1 -1
- package/dist/cdn/{WUHL2RF4.js → 5YB5FJYE.js} +1 -1
- package/dist/cdn/{RCRCHQMS.js → 6D5P5PBV.js} +1 -1
- package/dist/cdn/{K3U762E3.js → 6LVEPSJF.js} +1 -1
- package/dist/cdn/{TQQODXRZ.js → 6PYZSUH3.js} +1 -1
- package/dist/cdn/{D7RBRMCT.js → 6WLLLEN3.js} +1 -1
- package/dist/cdn/{JYNUT5O6.js → 6ZYLTGE3.js} +1 -1
- package/dist/cdn/{MCIO7E44.js → 75NCTK6L.js} +1 -1
- package/dist/cdn/{PFED4DAQ.js → 77PTOZSM.js} +1 -1
- package/dist/cdn/{5FLAJ7D2.js → 7CSWVJ5M.js} +1 -1
- package/dist/cdn/{LOTSIKHS.js → 7G4RBWYJ.js} +1 -1
- package/dist/cdn/{BEKZEU4I.js → 7ICPTQE4.js} +1 -1
- package/dist/cdn/{R6VINUVM.js → ABPNVHU5.js} +1 -1
- package/dist/cdn/{OQ2LTAWF.js → AELZW7AU.js} +1 -1
- package/dist/cdn/{KW3PLEX7.js → APMOQ4Y4.js} +1 -1
- package/dist/cdn/{R77ROGW2.js → AUR6YRDE.js} +1 -1
- package/dist/cdn/{KLDQUGLR.js → B4IGEBPK.js} +1 -1
- package/dist/cdn/{I5F3FJAY.js → BBBZ2WYF.js} +1 -1
- package/dist/cdn/{DZQK7XAU.js → BHTABSYE.js} +1 -1
- package/dist/cdn/{N5VSPAE3.js → BZ6TSXUG.js} +1 -1
- package/dist/cdn/{IBIH72UK.js → CAPBWUWG.js} +1 -1
- package/dist/cdn/{NGAWCOAE.js → CGFRDHBP.js} +1 -1
- package/dist/cdn/{NURKCAEJ.js → CJGWPL4U.js} +1 -1
- package/dist/cdn/{GI5F5GIL.js → CRGGJZWM.js} +1 -1
- package/dist/cdn/{QNSRPIAF.js → CRPOWZ37.js} +1 -1
- package/dist/cdn/{MTOH4QVT.js → CXU6VING.js} +1 -1
- package/dist/cdn/{LHTO7FY4.js → CZ7VYDWG.js} +1 -1
- package/dist/cdn/{CDIHWTXQ.js → D6LPYA46.js} +1 -1
- package/dist/cdn/{FUTBCFE5.js → E63GBURX.js} +1 -1
- package/dist/cdn/{MRZOIDQQ.js → E744VP2Z.js} +1 -1
- package/dist/cdn/{MYZS7KFS.js → EH3PTZ4U.js} +1 -1
- package/dist/cdn/{RAJYPSRB.js → ENRWHPIF.js} +1 -1
- package/dist/cdn/{TGKWY4TT.js → ESZT6RT5.js} +1 -1
- package/dist/cdn/{W43X4BGF.js → ET7646XY.js} +1 -1
- package/dist/cdn/{BI6OUBR4.js → EWZPL6OB.js} +1 -1
- package/dist/cdn/{QQMRGXT6.js → FAW4SQGE.js} +1 -1
- package/dist/cdn/{2XGJ3QNO.js → FTXGWUZO.js} +1 -1
- package/dist/cdn/{T3DTWGCK.js → GADJ2LXH.js} +1 -1
- package/dist/cdn/{4RQ5ZGOF.js → GQRIHYNB.js} +1 -1
- package/dist/cdn/{CJQSJSTS.js → H4T6A6SI.js} +1 -1
- package/dist/cdn/{ALEAEOVB.js → HAV72ZDA.js} +1 -1
- package/dist/cdn/{WMWUSGWO.js → HHXN2PES.js} +1 -1
- package/dist/cdn/{A7TDONQL.js → HSABUJJ2.js} +1 -1
- package/dist/cdn/{PTCA34C2.js → IC54UVU5.js} +1 -1
- package/dist/cdn/{WX3UVAG5.js → ICNDY3NT.js} +1 -1
- package/dist/cdn/{P42BO7EU.js → IGIOBUYM.js} +1 -1
- package/dist/cdn/{G6EVBNHW.js → ISOE5AOQ.js} +1 -1
- package/dist/cdn/{63DWPLOW.js → IXZ6PFE7.js} +1 -1
- package/dist/cdn/{TFQV64OA.js → J2VPKHPR.js} +1 -1
- package/dist/cdn/{JBKYBEOG.js → JBNMR7AO.js} +1 -1
- package/dist/cdn/{EAFCYLPB.js → JSJA6AQG.js} +1 -1
- package/dist/cdn/{3SETOU5V.js → K2LPDQCB.js} +1 -1
- package/dist/cdn/{UBV2M472.js → K44VSQNH.js} +1 -1
- package/dist/cdn/{6KINBEDD.js → KXOJANYH.js} +1 -1
- package/dist/cdn/{HBUYVYXR.js → KZIIO2XD.js} +1 -1
- package/dist/cdn/{CJD35UKW.js → L3FQNCSW.js} +1 -1
- package/dist/cdn/{WITBUCKH.js → LJNFFPCF.js} +1 -1
- package/dist/cdn/{EJEEDORY.js → LKRC2DI2.js} +1 -1
- package/dist/cdn/{FYDHPNCY.js → LMGYSP5H.js} +1 -1
- package/dist/cdn/{56KAPM6G.js → LNEHNLWI.js} +1 -1
- package/dist/cdn/LPCOIGOZ.js +2 -0
- package/dist/cdn/{IOUHSWD2.js → MCWGKKKK.js} +1 -1
- package/dist/cdn/{DA2XHTL4.js → MF2UVK2Y.js} +1 -1
- package/dist/cdn/{F6ACIE2U.js → MGECKJAN.js} +1 -1
- package/dist/cdn/{GDUTBFTC.js → ML7VRYLW.js} +1 -1
- package/dist/cdn/{MQ7UFMYF.js → N6U6CWDX.js} +1 -1
- package/dist/cdn/{B2PYAAJV.js → NBWS4C5W.js} +1 -1
- package/dist/cdn/{FKY6KVFI.js → NEQ464F7.js} +1 -1
- package/dist/cdn/{WRI4WTGJ.js → NQEA36ZD.js} +1 -1
- package/dist/cdn/{MCRV5ZIG.js → NR2DIL26.js} +1 -1
- package/dist/cdn/{MHXRVPMW.js → NTUCRCRT.js} +1 -1
- package/dist/cdn/{JSIAJ7SW.js → O6NLIZ6M.js} +1 -1
- package/dist/cdn/{5U7ZVAAZ.js → OPBHLBK2.js} +1 -1
- package/dist/cdn/{KHZYS5PW.js → OS4SFT2S.js} +1 -1
- package/dist/cdn/{GM26E4GK.js → P6DFWXKW.js} +1 -1
- package/dist/cdn/{BBQVPQKS.js → PBGLJ2NE.js} +1 -1
- package/dist/cdn/{QNAN26PB.js → PBNUGRZX.js} +1 -1
- package/dist/cdn/{5LXXJ62H.js → PHDTNRTM.js} +1 -1
- package/dist/cdn/{KQT4OVOQ.js → PQYZ3E6P.js} +1 -1
- package/dist/cdn/{5XL7IT2K.js → PZNSB5BM.js} +1 -1
- package/dist/cdn/{QLMVDHA2.js → QHJT7WEH.js} +1 -1
- package/dist/cdn/{HSGC6FUA.js → QXGCF46A.js} +1 -1
- package/dist/cdn/{GL7AHGSG.js → QYY75EOV.js} +1 -1
- package/dist/cdn/{FGJZEQ7S.js → RLDYC26K.js} +1 -1
- package/dist/cdn/{OBIIMTPH.js → RNZE3WNS.js} +1 -1
- package/dist/cdn/{ILDL4WCG.js → RSHGM7UO.js} +1 -1
- package/dist/cdn/{EC7ULGFR.js → RU5PXLVE.js} +1 -1
- package/dist/cdn/{NNQ7SFRC.js → RZAH33G6.js} +1 -1
- package/dist/cdn/{XGCFMOII.js → S67ATPSA.js} +1 -1
- package/dist/cdn/{VZRT26W2.js → SEFSZCQN.js} +1 -1
- package/dist/cdn/{ZSDOYVMG.js → SEQVM5PO.js} +1 -1
- package/dist/cdn/{I2BHXDYX.js → SHZ74755.js} +1 -1
- package/dist/cdn/{EWSBPNQJ.js → SIVTVAQT.js} +1 -1
- package/dist/cdn/{BYHIBMOX.js → SOJIVG6M.js} +1 -1
- package/dist/cdn/SR2CE22O.js +2 -0
- package/dist/cdn/{DPGSR54A.js → SYYE6RQW.js} +1 -1
- package/dist/cdn/{EJWFQHC3.js → TALQPJJZ.js} +1 -1
- package/dist/cdn/{W3GTJS5Q.js → TBJEABC5.js} +1 -1
- package/dist/cdn/{KNTY5HWG.js → TFYOAEH3.js} +1 -1
- package/dist/cdn/{PRMQOCUX.js → TWQ57IRJ.js} +1 -1
- package/dist/cdn/{TB4K2SOD.js → UASO6SDG.js} +1 -1
- package/dist/cdn/{OYT6TEB6.js → UJWPJWIO.js} +1 -1
- package/dist/cdn/{5CSHF46L.js → UPGBCUHE.js} +1 -1
- package/dist/cdn/{3KCJ5OBV.js → UUCBJ7TH.js} +1 -1
- package/dist/cdn/{BLRDFO6X.js → V5LP26I7.js} +1 -1
- package/dist/cdn/{ZAUUAVGQ.js → V63M76YG.js} +1 -1
- package/dist/cdn/{DQWH6U7F.js → V67BG7XH.js} +1 -1
- package/dist/cdn/{DEFKYCLD.js → VGNEUGPB.js} +1 -1
- package/dist/cdn/{6AKAPCTR.js → VUJAJ4W5.js} +1 -1
- package/dist/cdn/{RJYU6IPS.js → VVFKNSX5.js} +1 -1
- package/dist/cdn/{5LW3L2G4.js → VXFMTQI4.js} +1 -1
- package/dist/cdn/{V7AJFYEC.js → WAU5PXO6.js} +1 -1
- package/dist/cdn/{PGLPZTZP.js → WDNHEC7F.js} +1 -1
- package/dist/cdn/{LR455X6K.js → WDOIKEZ5.js} +1 -1
- package/dist/cdn/{IL4G7JFU.js → X4XNQCPA.js} +1 -1
- package/dist/cdn/{72B2PF6V.js → X6BHVUUT.js} +1 -1
- package/dist/cdn/{Z5ZJ5N7G.js → X7PZUV2N.js} +1 -1
- package/dist/cdn/{JQWOF5HF.js → X7RHHBQJ.js} +1 -1
- package/dist/cdn/{S7II3I5Q.js → YDKH5LGF.js} +1 -1
- package/dist/cdn/{5PGOKPKX.js → YE46XAUA.js} +1 -1
- package/dist/cdn/{LRZTFP3T.js → YSRFQCJ4.js} +1 -1
- package/dist/cdn/{2ELOLPNF.js → YUKSX2SW.js} +1 -1
- package/dist/cdn/{H5UDZR5O.js → ZC4SJHJN.js} +1 -1
- package/dist/cdn/{QESRDF5I.js → ZC7MQVIB.js} +1 -1
- package/dist/cdn/{S6U2KSPS.js → ZGTWRO3M.js} +1 -1
- package/dist/cdn/{JMT3PAOJ.js → ZLW3VJCO.js} +1 -1
- package/dist/cdn/{7LYEAGAV.js → ZRAZ7URS.js} +1 -1
- package/dist/cdn/{24X5JMHT.js → ZUAZBJFO.js} +1 -1
- package/dist/cdn/{6O3DEY2K.js → ZZ2IVCQ7.js} +1 -1
- package/dist/cdn/index.js +1 -1
- package/dist/chunks/runtime.js +3 -3
- package/dist/components/calcite-flow-item/customElement.js +8 -6
- package/dist/components/calcite-panel/customElement.js +38 -6
- package/dist/components/calcite-tile/customElement.d.ts +1 -1
- package/dist/docs/api.json +1 -1
- package/dist/docs/docs.json +1 -1
- package/dist/docs/vscode.html-custom-data.json +1 -1
- package/dist/docs/web-types.json +1 -1
- package/dist/loader.js +2 -2
- package/package.json +2 -2
- package/dist/cdn/N6TVPJ75.js +0 -2
- package/dist/cdn/NN7V77MF.js +0 -2
package/dist/chunks/runtime.js
CHANGED
|
@@ -61,9 +61,9 @@ function getConfig() {
|
|
|
61
61
|
}
|
|
62
62
|
return effectiveConfig;
|
|
63
63
|
}
|
|
64
|
-
const version = "5.2.0-next.
|
|
64
|
+
const version = "5.2.0-next.12";
|
|
65
65
|
const buildDate = "2026-06-30";
|
|
66
|
-
const revision = "
|
|
66
|
+
const revision = "d59578355";
|
|
67
67
|
function stampVersion() {
|
|
68
68
|
const config = getConfig();
|
|
69
69
|
if (config && config.version) {
|
|
@@ -86,7 +86,7 @@ if (!isServer) {
|
|
|
86
86
|
if (process.env.NODE_ENV !== "test") {
|
|
87
87
|
queueMicrotask(stampVersion);
|
|
88
88
|
}
|
|
89
|
-
const runtime = makeRuntime({ defaultAssetPath: "https://cdn.jsdelivr.net/npm/@esri/calcite-components@5.2.0-next.
|
|
89
|
+
const runtime = makeRuntime({ defaultAssetPath: "https://cdn.jsdelivr.net/npm/@esri/calcite-components@5.2.0-next.12/dist/cdn/", hydratedAttribute: "calcite-hydrated" });
|
|
90
90
|
const { customElement, getAssetPath, setAssetPath } = runtime;
|
|
91
91
|
export {
|
|
92
92
|
CSS_UTILITY as C,
|
|
@@ -7,7 +7,6 @@ import { createRef, ref } from "lit/directives/ref.js";
|
|
|
7
7
|
import { useDirection } from "@arcgis/lumina/controllers";
|
|
8
8
|
import { S as SLOTS$1 } from "../../chunks/resources8.js";
|
|
9
9
|
import { u as useT9n } from "../../chunks/useT9n.js";
|
|
10
|
-
import { u as useSetFocus } from "../../chunks/useSetFocus.js";
|
|
11
10
|
import { u as useInteractive } from "../../chunks/useInteractive.js";
|
|
12
11
|
const CSS = {
|
|
13
12
|
backButton: "back-button"
|
|
@@ -40,7 +39,6 @@ class FlowItem extends LitElement {
|
|
|
40
39
|
this.containerRef = createRef();
|
|
41
40
|
this.direction = useDirection();
|
|
42
41
|
this.messages = useT9n();
|
|
43
|
-
this.focusSetter = useSetFocus()(this);
|
|
44
42
|
this.interactiveContainer = useInteractive(this);
|
|
45
43
|
this.closable = false;
|
|
46
44
|
this.closed = false;
|
|
@@ -50,6 +48,7 @@ class FlowItem extends LitElement {
|
|
|
50
48
|
this.disabled = false;
|
|
51
49
|
this.iconFlipRtl = false;
|
|
52
50
|
this.loading = false;
|
|
51
|
+
this.focusTrapEnabled = false;
|
|
53
52
|
this.menuOpen = false;
|
|
54
53
|
this.overlayPositioning = "absolute";
|
|
55
54
|
this.scale = "m";
|
|
@@ -65,7 +64,7 @@ class FlowItem extends LitElement {
|
|
|
65
64
|
this.calciteInternalFlowItemChange = createEvent({ cancelable: false });
|
|
66
65
|
}
|
|
67
66
|
static {
|
|
68
|
-
this.properties = { beforeBack: [0, {}, { attribute: false }], beforeClose: [0, {}, { attribute: false }], closable: [7, {}, { reflect: true, type: Boolean }], closed: [7, {}, { reflect: true, type: Boolean }], collapseDirection: 1, collapsed: [7, {}, { reflect: true, type: Boolean }], collapsible: [7, {}, { reflect: true, type: Boolean }], description: 1, disabled: [7, {}, { reflect: true, type: Boolean }], heading: 1, headingLevel: [11, {}, { type: Number, reflect: true }], icon: [3, { type: String }, { reflect: true }], iconFlipRtl: [7, {}, { reflect: true, type: Boolean }], loading: [7, {}, { reflect: true, type: Boolean }], menuOpen: [7, {}, { reflect: true, type: Boolean }], messageOverrides: [0, {}, { attribute: false }], overlayPositioning: [3, {}, { reflect: true }], scale: [3, {}, { reflect: true }], selected: [7, {}, { reflect: true, type: Boolean }], showBackButton: [5, {}, { type: Boolean }], topLayerDisabled: [7, {}, { reflect: true, type: Boolean }] };
|
|
67
|
+
this.properties = { beforeBack: [0, {}, { attribute: false }], beforeClose: [0, {}, { attribute: false }], closable: [7, {}, { reflect: true, type: Boolean }], closed: [7, {}, { reflect: true, type: Boolean }], collapseDirection: 1, collapsed: [7, {}, { reflect: true, type: Boolean }], collapsible: [7, {}, { reflect: true, type: Boolean }], description: 1, disabled: [7, {}, { reflect: true, type: Boolean }], heading: 1, headingLevel: [11, {}, { type: Number, reflect: true }], icon: [3, { type: String }, { reflect: true }], iconFlipRtl: [7, {}, { reflect: true, type: Boolean }], loading: [7, {}, { reflect: true, type: Boolean }], focusTrapEnabled: [7, {}, { reflect: true, type: Boolean }], focusTrapOptions: [0, {}, { attribute: false }], menuOpen: [7, {}, { reflect: true, type: Boolean }], messageOverrides: [0, {}, { attribute: false }], overlayPositioning: [3, {}, { reflect: true }], scale: [3, {}, { reflect: true }], selected: [7, {}, { reflect: true, type: Boolean }], showBackButton: [5, {}, { type: Boolean }], topLayerDisabled: [7, {}, { reflect: true, type: Boolean }] };
|
|
69
68
|
}
|
|
70
69
|
static {
|
|
71
70
|
this.styles = styles;
|
|
@@ -74,7 +73,10 @@ class FlowItem extends LitElement {
|
|
|
74
73
|
await this.containerRef.value?.scrollContentTo(options);
|
|
75
74
|
}
|
|
76
75
|
async setFocus(options) {
|
|
77
|
-
return this.
|
|
76
|
+
return this.containerRef.value?.setFocus(options);
|
|
77
|
+
}
|
|
78
|
+
async updateFocusTrapElements(extraContainers) {
|
|
79
|
+
this.containerRef.value?.updateFocusTrapElements(extraContainers);
|
|
78
80
|
}
|
|
79
81
|
willUpdate(changes) {
|
|
80
82
|
if (changes.has("selected") && (this.hasUpdated || this.selected !== false)) {
|
|
@@ -122,8 +124,8 @@ class FlowItem extends LitElement {
|
|
|
122
124
|
return showBackButton ? keyed("flow-back-button", html`<calcite-action class=${safeClassMap(CSS.backButton)} .icon=${icon} @click=${backButtonClick} .scale=${this.scale} slot=${SLOTS.headerActionsStart} .text=${label} title=${label ?? nothing} ${ref(this.backButtonRef)}></calcite-action>`) : null;
|
|
123
125
|
}
|
|
124
126
|
render() {
|
|
125
|
-
const { collapsed, collapseDirection, collapsible, closable, closed, description, disabled, heading, headingLevel, loading, menuOpen, messageOverrides, overlayPositioning, beforeClose, icon, iconFlipRtl } = this;
|
|
126
|
-
return this.interactiveContainer({ disabled, children: html`<calcite-panel .beforeClose=${beforeClose} .closable=${closable} .closed=${closed} .collapsed=${collapsed} .collapseDirection=${collapseDirection} .collapsible=${collapsible} .description=${description} .disabled=${disabled} .heading=${heading} .headingLevel=${headingLevel} .icon=${icon} .iconFlipRtl=${iconFlipRtl} .loading=${loading} .menuOpen=${menuOpen} .messageOverrides=${messageOverrides} @calcitePanelClose=${this.handleInternalPanelClose} @calcitePanelScroll=${this.handleInternalPanelScroll} @calcitePanelToggle=${this.handleInternalPanelToggle} .overlayPositioning=${overlayPositioning} .scale=${this.scale} .topLayerDisabled=${this.topLayerDisabled} ${ref(this.containerRef)}>${this.renderBackButton()}<slot name=${SLOTS.actionBar} slot=${SLOTS$1.actionBar}></slot><slot name=${SLOTS.alerts} slot=${SLOTS$1.alerts}></slot><slot name=${SLOTS.headerActionsStart} slot=${SLOTS$1.headerActionsStart}></slot><slot name=${SLOTS.headerActionsEnd} slot=${SLOTS$1.headerActionsEnd}></slot><slot name=${SLOTS.description} slot=${SLOTS$1.description}></slot><slot name=${SLOTS.heading} slot=${SLOTS$1.heading}></slot><slot name=${SLOTS.headerContent} slot=${SLOTS$1.headerContent}></slot><slot name=${SLOTS.headerMenuActions} slot=${SLOTS$1.headerMenuActions}></slot><slot name=${SLOTS.fab} slot=${SLOTS$1.fab}></slot><slot name=${SLOTS.contentTop} slot=${SLOTS$1.contentTop}></slot><slot name=${SLOTS.contentBottom} slot=${SLOTS$1.contentBottom}></slot><slot name=${SLOTS.footerStart} slot=${SLOTS$1.footerStart}></slot><slot name=${SLOTS.footer} slot=${SLOTS$1.footer}></slot><slot name=${SLOTS.footerEnd} slot=${SLOTS$1.footerEnd}></slot><slot></slot></calcite-panel>` });
|
|
127
|
+
const { collapsed, collapseDirection, collapsible, closable, closed, description, disabled, heading, headingLevel, loading, menuOpen, messageOverrides, overlayPositioning, beforeClose, icon, iconFlipRtl, focusTrapEnabled, focusTrapOptions } = this;
|
|
128
|
+
return this.interactiveContainer({ disabled, children: html`<calcite-panel .beforeClose=${beforeClose} .closable=${closable} .closed=${closed} .collapsed=${collapsed} .collapseDirection=${collapseDirection} .collapsible=${collapsible} .description=${description} .disabled=${disabled} .focusTrapEnabled=${focusTrapEnabled} .focusTrapOptions=${focusTrapOptions} .heading=${heading} .headingLevel=${headingLevel} .icon=${icon} .iconFlipRtl=${iconFlipRtl} .loading=${loading} .menuOpen=${menuOpen} .messageOverrides=${messageOverrides} @calcitePanelClose=${this.handleInternalPanelClose} @calcitePanelScroll=${this.handleInternalPanelScroll} @calcitePanelToggle=${this.handleInternalPanelToggle} .overlayPositioning=${overlayPositioning} .scale=${this.scale} .topLayerDisabled=${this.topLayerDisabled} ${ref(this.containerRef)}>${this.renderBackButton()}<slot name=${SLOTS.actionBar} slot=${SLOTS$1.actionBar}></slot><slot name=${SLOTS.alerts} slot=${SLOTS$1.alerts}></slot><slot name=${SLOTS.headerActionsStart} slot=${SLOTS$1.headerActionsStart}></slot><slot name=${SLOTS.headerActionsEnd} slot=${SLOTS$1.headerActionsEnd}></slot><slot name=${SLOTS.description} slot=${SLOTS$1.description}></slot><slot name=${SLOTS.heading} slot=${SLOTS$1.heading}></slot><slot name=${SLOTS.headerContent} slot=${SLOTS$1.headerContent}></slot><slot name=${SLOTS.headerMenuActions} slot=${SLOTS$1.headerMenuActions}></slot><slot name=${SLOTS.fab} slot=${SLOTS$1.fab}></slot><slot name=${SLOTS.contentTop} slot=${SLOTS$1.contentTop}></slot><slot name=${SLOTS.contentBottom} slot=${SLOTS$1.contentBottom}></slot><slot name=${SLOTS.footerStart} slot=${SLOTS$1.footerStart}></slot><slot name=${SLOTS.footer} slot=${SLOTS$1.footer}></slot><slot name=${SLOTS.footerEnd} slot=${SLOTS$1.footerEnd}></slot><slot></slot></calcite-panel>` });
|
|
127
129
|
}
|
|
128
130
|
}
|
|
129
131
|
customElement("calcite-flow-item", FlowItem);
|
|
@@ -14,6 +14,7 @@ import { u as useT9n } from "../../chunks/useT9n.js";
|
|
|
14
14
|
import { u as useSetFocus } from "../../chunks/useSetFocus.js";
|
|
15
15
|
import { s as styles$1 } from "../../chunks/header.js";
|
|
16
16
|
import { u as useInteractive } from "../../chunks/useInteractive.js";
|
|
17
|
+
import { u as useFocusTrap } from "../../chunks/useFocusTrap.js";
|
|
17
18
|
import { C as CSS, S as SLOTS, I as ICONS, a as IDS } from "../../chunks/resources8.js";
|
|
18
19
|
const styles = css`:host([disabled]){cursor:default;-webkit-user-select:none;user-select:none;opacity:var(--calcite-opacity-disabled)}:host([disabled]) *,:host([disabled]) ::slotted(*){pointer-events:none}:host{position:relative;box-sizing:border-box;display:flex;block-size:100%;inline-size:100%;flex:1 1 auto;overflow:hidden;border-radius:var(--calcite-panel-corner-radius, var(--calcite-corner-radius-sharp))}slot[name=alerts]::slotted(calcite-alert){block-size:0}:host([disabled]) ::slotted([calcite-hydrated][disabled]),:host([disabled]) [calcite-hydrated][disabled]{opacity:1}.interaction-container{display:contents}:host([scale=s]){--calcite-internal-panel-default-space: var(--calcite-spacing-sm);--calcite-internal-panel-header-vertical-padding: var(--calcite-spacing-sm-plus)}:host([scale=s]) .header-content .heading{font-size:var(--calcite-font-size--1)}:host([scale=s]) .header-content .description{font-size:var(--calcite-font-size--2)}:host([scale=s]) .header-content .icon{margin-inline-end:var(--calcite-spacing-sm)}:host([scale=m]){--calcite-internal-panel-default-space: var(--calcite-spacing-md);--calcite-internal-panel-header-vertical-padding: var(--calcite-spacing-md-plus)}:host([scale=m]) .header-content .heading{font-size:var(--calcite-font-size-0)}:host([scale=m]) .header-content .description{font-size:var(--calcite-font-size--1)}:host([scale=m]) .header-content .icon{margin-inline-end:var(--calcite-spacing-md)}:host(:is([scale=s],[scale=m])){--calcite-internal-panel-action-spacing: var(--calcite-spacing-xxs)}:host([scale=l]){--calcite-internal-panel-action-spacing: var(--calcite-spacing-xs);--calcite-internal-panel-default-space: var(--calcite-spacing-lg);--calcite-internal-panel-header-vertical-padding: var(--calcite-spacing-xl)}:host([scale=l]) .header-content .heading{font-size:var(--calcite-font-size-1)}:host([scale=l]) .header-content .description{font-size:var(--calcite-font-size-0)}:host([scale=l]) .header-content .icon{margin-inline-end:var(--calcite-spacing-lg)}.content-top,.content-bottom{display:flex;align-items:flex-start;align-self:stretch;border-block-start:1px solid var(--calcite-panel-border-color, var(--calcite-color-border-3));background-color:var(--calcite-panel-background-color, var(--calcite-color-foreground-1))}.content-top{padding:var(--calcite-panel-content-top-space, var(--calcite-internal-panel-default-space))}.content-bottom{padding:var(--calcite-panel-content-bottom-space, var(--calcite-internal-panel-default-space))}.container{position:relative;margin:0;display:flex;inline-size:100%;flex:1 1 auto;flex-direction:column;align-items:stretch;overflow:hidden;background-color:var(--calcite-color-background);padding:0;font-size:var(--calcite-font-size-relative-base);color:var(--calcite-color-text-2);transition:max-block-size var(--calcite-animation-timing),inline-size var(--calcite-animation-timing);box-sizing:border-box;font-size:var(--calcite-font-size--1)}.container *{box-sizing:border-box}.header{z-index:var(--calcite-z-index-header);display:flex;flex-direction:column;background-color:var(--calcite-panel-header-background-color, var(--calcite-color-foreground-1));border-block-end:1px solid var(--calcite-panel-border-color, var(--calcite-panel-header-border-block-end, var(--calcite-color-border-3)))}.header-container{display:flex;inline-size:100%;flex-direction:row;align-items:stretch;justify-content:flex-start;flex:0 0 auto}.header-container--border-end{border-block-end:1px solid var(--calcite-panel-border-color, var(--calcite-color-border-3))}.action-bar-container{inline-size:100%}.action-bar-container ::slotted(calcite-action-bar){inline-size:100%}.header-content{display:flex;flex-direction:column;overflow:hidden;padding-inline:.75rem;padding-block:.875rem;margin-inline-end:auto;justify-content:center}.header-content .heading-text-content{flex:1 1 auto;overflow:hidden}.header-content .heading,.header-content .description{display:block;flex:none;overflow-wrap:break-word;padding:0;line-height:var(--calcite-font-line-height-relative-snug)}.header-content .heading{font-weight:var(--calcite-font-weight-medium);color:var(--calcite-panel-heading-text-color, var(--calcite-color-text-1))}.header-content .heading:only-child{margin-block-end:0px}.header-content .description{color:var(--calcite-panel-description-text-color, var(--calcite-color-text-2))}#close,#collapse,calcite-action-menu{--calcite-action-background-color: var(--calcite-panel-header-action-background-color);--calcite-action-background-color-hover: var(--calcite-panel-header-action-background-color-hover);--calcite-action-background-color-press: var(--calcite-panel-header-action-background-color-press);--calcite-action-text-color: var(--calcite-panel-header-action-text-color);--calcite-action-text-color-press: var(--calcite-panel-header-action-text-color-press)}.header-actions{display:flex;flex-direction:row;flex-wrap:nowrap;margin:auto;gap:var(--calcite-internal-panel-action-spacing)}.header-actions--start{margin-inline-start:var(--calcite-internal-panel-action-spacing)}.header-actions--end{margin-inline-end:var(--calcite-internal-panel-action-spacing)}.content-wrapper{position:relative;display:flex;block-size:100%;flex:1 1 auto;flex-direction:column;flex-wrap:nowrap;align-items:stretch;overflow:auto;color:var(--calcite-color-text-2);outline-color:transparent;padding:var(--calcite-panel-space, var(--calcite-panel-content-space, 0));background:var(--calcite-panel-background-color, var(--calcite-color-background))}.content-wrapper:focus-visible{outline:var(--calcite-border-width-md) solid var(--calcite-color-focus, var(--calcite-ui-focus-color, var(--calcite-color-brand)));outline-offset:calc(calc(-1 * var(--calcite-spacing-base)) * calc(1 - (2*clamp(0,var(--calcite-offset-invert-focus),1))))}.header-content{flex:1 1 auto;justify-content:center;padding-block:var(--calcite-internal-panel-header-vertical-padding);padding-inline:var(--calcite-internal-panel-default-space)}.header-content.header--slotted-content{padding:var(--calcite-panel-header-content-space, var(--calcite-internal-panel-header-vertical-padding) var(--calcite-internal-panel-default-space))}.header-content.header--non-slotted-content{align-items:center;flex-direction:row}.footer{margin-block-start:auto;display:flex;flex-direction:row;align-content:space-between;align-items:center;justify-content:center;font-size:var(--calcite-font-size-relative-sm);line-height:var(--calcite-font-line-height-relative-snug);border-block-start:1px solid var(--calcite-panel-border-color, var(--calcite-color-border-3));padding:var(--calcite-panel-footer-space, var(--calcite-panel-footer-padding, var(--calcite-internal-panel-default-space)));background-color:var(--calcite-panel-footer-background-color, var(--calcite-color-foreground-1))}.footer-content{display:flex;flex:1 1 0%;flex-direction:row;align-items:center;justify-content:center}.footer-start{display:flex;flex:1 1 0%;flex-direction:row;align-items:center;justify-content:flex-start;margin-inline-end:auto;gap:var(--calcite-internal-panel-default-space)}.footer-end{display:flex;flex:1 1 0%;flex-direction:row;align-items:center;justify-content:flex-end;margin-inline-start:auto;gap:var(--calcite-internal-panel-default-space)}.fab-container{position:sticky;inset-block-end:0px;z-index:var(--calcite-z-index-sticky);margin-block:0px;margin-inline:auto;display:block;padding:.5rem;inset-inline:0;inline-size:fit-content}calcite-icon{--calcite-icon-color: var(--calcite-panel-icon-color, var(--calcite-ui-icon-color, var(--calcite-color-text-1)))}:host([hidden]){display:none}[hidden]{display:none}`;
|
|
19
20
|
class Panel extends LitElement {
|
|
@@ -24,6 +25,18 @@ class Panel extends LitElement {
|
|
|
24
25
|
this.messages = useT9n();
|
|
25
26
|
this._closed = false;
|
|
26
27
|
this.focusSetter = useSetFocus()(this);
|
|
28
|
+
this.focusTrapController = useFocusTrap({
|
|
29
|
+
focusTrapOptions: {
|
|
30
|
+
allowOutsideClick: true,
|
|
31
|
+
escapeDeactivates: (event) => {
|
|
32
|
+
if (!event.defaultPrevented && this.closable) {
|
|
33
|
+
this.emitCloseEvent();
|
|
34
|
+
event.preventDefault();
|
|
35
|
+
}
|
|
36
|
+
return false;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
})(this);
|
|
27
40
|
this.interactiveContainer = useInteractive(this);
|
|
28
41
|
this.hasActionBar = false;
|
|
29
42
|
this.hasContentBottom = false;
|
|
@@ -46,6 +59,7 @@ class Panel extends LitElement {
|
|
|
46
59
|
this.disabled = false;
|
|
47
60
|
this.iconFlipRtl = false;
|
|
48
61
|
this.loading = false;
|
|
62
|
+
this.focusTrapEnabled = false;
|
|
49
63
|
this.menuOpen = false;
|
|
50
64
|
this.menuPlacement = defaultEndMenuPlacement;
|
|
51
65
|
this.overlayPositioning = "absolute";
|
|
@@ -60,7 +74,7 @@ class Panel extends LitElement {
|
|
|
60
74
|
this.listen("calcitePanelClose", this.panelCloseHandler);
|
|
61
75
|
}
|
|
62
76
|
static {
|
|
63
|
-
this.properties = { hasActionBar: [16, {}, { state: true }], hasContentBottom: [16, {}, { state: true }], hasContentTop: [16, {}, { state: true }], hasEndActions: [16, {}, { state: true }], hasFab: [16, {}, { state: true }], hasFooterContent: [16, {}, { state: true }], hasFooterEndContent: [16, {}, { state: true }], hasFooterStartContent: [16, {}, { state: true }], hasHeaderContent: [16, {}, { state: true }], hasHeaderDescription: [16, {}, { state: true }], hasHeaderHeading: [16, {}, { state: true }], hasMenuItems: [16, {}, { state: true }], hasStartActions: [16, {}, { state: true }], showHeaderContent: [16, {}, { state: true }], beforeClose: [0, {}, { attribute: false }], closable: [7, {}, { reflect: true, type: Boolean }], closed: [7, {}, { reflect: true, type: Boolean }], collapseDirection: 1, collapsed: [7, {}, { reflect: true, type: Boolean }], collapsible: [7, {}, { reflect: true, type: Boolean }], description: 1, disabled: [7, {}, { reflect: true, type: Boolean }], heading: 1, headingLevel: [11, {}, { type: Number, reflect: true }], icon: [3, { type: String }, { reflect: true }], iconFlipRtl: [7, {}, { reflect: true, type: Boolean }], loading: [7, {}, { reflect: true, type: Boolean }], menuFlipPlacements: [0, {}, { attribute: false }], menuOpen: [7, {}, { reflect: true, type: Boolean }], menuPlacement: [3, {}, { reflect: true }], messageOverrides: [0, {}, { attribute: false }], overlayPositioning: [3, {}, { reflect: true }], scale: [3, {}, { reflect: true }], topLayerDisabled: [7, {}, { reflect: true, type: Boolean }] };
|
|
77
|
+
this.properties = { hasActionBar: [16, {}, { state: true }], hasContentBottom: [16, {}, { state: true }], hasContentTop: [16, {}, { state: true }], hasEndActions: [16, {}, { state: true }], hasFab: [16, {}, { state: true }], hasFooterContent: [16, {}, { state: true }], hasFooterEndContent: [16, {}, { state: true }], hasFooterStartContent: [16, {}, { state: true }], hasHeaderContent: [16, {}, { state: true }], hasHeaderDescription: [16, {}, { state: true }], hasHeaderHeading: [16, {}, { state: true }], hasMenuItems: [16, {}, { state: true }], hasStartActions: [16, {}, { state: true }], showHeaderContent: [16, {}, { state: true }], beforeClose: [0, {}, { attribute: false }], closable: [7, {}, { reflect: true, type: Boolean }], closed: [7, {}, { reflect: true, type: Boolean }], collapseDirection: 1, collapsed: [7, {}, { reflect: true, type: Boolean }], collapsible: [7, {}, { reflect: true, type: Boolean }], description: 1, disabled: [7, {}, { reflect: true, type: Boolean }], heading: 1, headingLevel: [11, {}, { type: Number, reflect: true }], icon: [3, { type: String }, { reflect: true }], iconFlipRtl: [7, {}, { reflect: true, type: Boolean }], loading: [7, {}, { reflect: true, type: Boolean }], focusTrapEnabled: [7, {}, { reflect: true, type: Boolean }], focusTrapOptions: [0, {}, { attribute: false }], menuFlipPlacements: [0, {}, { attribute: false }], menuOpen: [7, {}, { reflect: true, type: Boolean }], menuPlacement: [3, {}, { reflect: true }], messageOverrides: [0, {}, { attribute: false }], overlayPositioning: [3, {}, { reflect: true }], scale: [3, {}, { reflect: true }], topLayerDisabled: [7, {}, { reflect: true, type: Boolean }] };
|
|
64
78
|
}
|
|
65
79
|
static {
|
|
66
80
|
this.styles = [styles$1, styles];
|
|
@@ -80,6 +94,10 @@ class Panel extends LitElement {
|
|
|
80
94
|
async setFocus(options) {
|
|
81
95
|
return this.focusSetter(() => this.containerRef.value, options);
|
|
82
96
|
}
|
|
97
|
+
async updateFocusTrapElements(extraContainers) {
|
|
98
|
+
this.focusTrapController.setExtraContainers(extraContainers);
|
|
99
|
+
this.focusTrapController.updateContainerElements();
|
|
100
|
+
}
|
|
83
101
|
willUpdate(changes) {
|
|
84
102
|
if (changes.has("collapsed") && this.hasUpdated) {
|
|
85
103
|
if (this.collapsed) {
|
|
@@ -89,10 +107,22 @@ class Panel extends LitElement {
|
|
|
89
107
|
}
|
|
90
108
|
}
|
|
91
109
|
}
|
|
110
|
+
updated(changes) {
|
|
111
|
+
if (changes.has("focusTrapEnabled") || changes.has("closable") || changes.has("closed")) {
|
|
112
|
+
if (!this.closed && this.closable && this.focusTrapEnabled) {
|
|
113
|
+
this.focusTrapController.activate();
|
|
114
|
+
} else {
|
|
115
|
+
this.focusTrapController.deactivate();
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
}
|
|
92
119
|
disconnectedCallback() {
|
|
93
120
|
super.disconnectedCallback();
|
|
94
121
|
this.resizeObserver?.disconnect();
|
|
95
122
|
}
|
|
123
|
+
focusTrapDisabledOverride() {
|
|
124
|
+
return !this.focusTrapEnabled || !this.closable || this.closed;
|
|
125
|
+
}
|
|
96
126
|
async setClosedState(value) {
|
|
97
127
|
if (this.beforeClose && value) {
|
|
98
128
|
try {
|
|
@@ -122,10 +152,11 @@ class Panel extends LitElement {
|
|
|
122
152
|
this.calcitePanelClose.emit();
|
|
123
153
|
}
|
|
124
154
|
panelKeyDownHandler(event) {
|
|
125
|
-
if (
|
|
126
|
-
|
|
127
|
-
this.emitCloseEvent();
|
|
155
|
+
if (event.key !== "Escape" || event.defaultPrevented || this.closed || !this.closable) {
|
|
156
|
+
return;
|
|
128
157
|
}
|
|
158
|
+
event.preventDefault();
|
|
159
|
+
this.emitCloseEvent();
|
|
129
160
|
}
|
|
130
161
|
panelCloseHandler(event) {
|
|
131
162
|
if (event.defaultPrevented || event.target !== this.el) {
|
|
@@ -255,8 +286,9 @@ class Panel extends LitElement {
|
|
|
255
286
|
return html`<div class=${safeClassMap(CSS.fabContainer)} .hidden=${!this.hasFab}><slot name=${SLOTS.fab} @slotchange=${this.handleFabSlotChange}></slot></div>`;
|
|
256
287
|
}
|
|
257
288
|
render() {
|
|
258
|
-
const { disabled, loading, closed } = this;
|
|
259
|
-
const
|
|
289
|
+
const { disabled, loading, closed, heading, description, focusTrapEnabled, closable } = this;
|
|
290
|
+
const hasDialogRole = focusTrapEnabled && closable;
|
|
291
|
+
const panelNode = html`<div .ariaBusy=${loading} .ariaDescription=${hasDialogRole && description ? description : void 0} .ariaLabel=${hasDialogRole && heading ? heading : void 0} .ariaLive=${hasDialogRole ? "polite" : void 0} class=${safeClassMap(CSS.container)} .hidden=${closed} .role=${hasDialogRole ? "dialog" : "article"} ${ref(this.containerRef)}>${this.renderHeaderNode()}${this.renderContent()}${this.renderContentBottom()}${this.renderFooterNode()}${keyed("alerts", html`<slot name=${SLOTS.alerts} @slotchange=${this.handleAlertsSlotChange}></slot>`)}</div>`;
|
|
260
292
|
return this.interactiveContainer({ disabled, children: html`${loading ? html`<calcite-scrim .loading=${loading}></calcite-scrim>` : null}${panelNode}` });
|
|
261
293
|
}
|
|
262
294
|
}
|
|
@@ -14,7 +14,7 @@ import type { HeadingLevel } from "../functional/Heading.js";
|
|
|
14
14
|
* @cssproperty [--calcite-tile-shadow] - Specifies the shadow around the component.
|
|
15
15
|
* @cssproperty [--calcite-tile-text-color] - Specifies the component's `description` and `icon` text color, but not the `heading` text color.
|
|
16
16
|
* @cssproperty [--calcite-tile-link-text-color] - Specifies the component's link text color.
|
|
17
|
-
* @slot [content-top] - A slot for adding non-actionable elements above the component's content.
|
|
17
|
+
* @slot [content-top] - A slot for adding non-actionable elements above the component's content.
|
|
18
18
|
* @slot [content-bottom] - A slot for adding non-actionable elements below the component's content.
|
|
19
19
|
*/
|
|
20
20
|
export abstract class Tile extends LitElement {
|