@design.estate/dees-catalog 3.71.1 → 3.72.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist_bundle/bundle.js +113 -26
- package/dist_ts_web/00_commitinfo_data.js +1 -1
- package/dist_ts_web/elements/00group-layout/dees-stepper/dees-stepper.d.ts +37 -0
- package/dist_ts_web/elements/00group-layout/dees-stepper/dees-stepper.js +131 -28
- package/dist_watch/bundle.js +111 -24
- package/dist_watch/bundle.js.map +2 -2
- package/package.json +1 -1
- package/ts_web/00_commitinfo_data.ts +1 -1
- package/ts_web/elements/00group-layout/dees-stepper/dees-stepper.ts +125 -27
package/dist_watch/bundle.js
CHANGED
|
@@ -192573,7 +192573,7 @@ var stepperDemo = /* @__PURE__ */ __name(() => b2`
|
|
|
192573
192573
|
init_dist_ts30();
|
|
192574
192574
|
init_dist_ts29();
|
|
192575
192575
|
init_theme();
|
|
192576
|
-
var _activeFormValid_dec, _activeForm_dec, _stepperZIndex_dec, _overlay_dec, _selectedStep_dec, _steps_dec, _a81, _DeesStepper_decorators, _init82, _steps, _selectedStep, _overlay, _stepperZIndex, _activeForm, _activeFormValid;
|
|
192576
|
+
var _activeFormValid_dec, _activeForm_dec, _stepperZIndex_dec, _cancelable_dec, _overlay_dec, _selectedStep_dec, _steps_dec, _a81, _DeesStepper_decorators, _init82, _steps, _selectedStep, _overlay, _cancelable, _stepperZIndex, _activeForm, _activeFormValid;
|
|
192577
192577
|
_DeesStepper_decorators = [customElement("dees-stepper")];
|
|
192578
192578
|
var _DeesStepper = class _DeesStepper extends (_a81 = DeesElement, _steps_dec = [n5({
|
|
192579
192579
|
type: Array
|
|
@@ -192582,31 +192582,43 @@ var _DeesStepper = class _DeesStepper extends (_a81 = DeesElement, _steps_dec =
|
|
|
192582
192582
|
})], _overlay_dec = [n5({
|
|
192583
192583
|
type: Boolean,
|
|
192584
192584
|
reflect: true
|
|
192585
|
+
})], _cancelable_dec = [n5({
|
|
192586
|
+
type: Boolean,
|
|
192587
|
+
reflect: true
|
|
192585
192588
|
})], _stepperZIndex_dec = [n5({ type: Number, attribute: false })], _activeForm_dec = [n5({ type: Object, attribute: false })], _activeFormValid_dec = [n5({ type: Boolean, attribute: false })], _a81) {
|
|
192586
192589
|
constructor() {
|
|
192587
192590
|
super();
|
|
192588
192591
|
__privateAdd(this, _steps, __runInitializers(_init82, 8, this, [])), __runInitializers(_init82, 11, this);
|
|
192589
192592
|
__privateAdd(this, _selectedStep, __runInitializers(_init82, 12, this)), __runInitializers(_init82, 15, this);
|
|
192590
192593
|
__privateAdd(this, _overlay, __runInitializers(_init82, 16, this, false)), __runInitializers(_init82, 19, this);
|
|
192591
|
-
__privateAdd(this,
|
|
192592
|
-
__privateAdd(this,
|
|
192593
|
-
__privateAdd(this,
|
|
192594
|
+
__privateAdd(this, _cancelable, __runInitializers(_init82, 20, this, true)), __runInitializers(_init82, 23, this);
|
|
192595
|
+
__privateAdd(this, _stepperZIndex, __runInitializers(_init82, 24, this, 1e3)), __runInitializers(_init82, 27, this);
|
|
192596
|
+
__privateAdd(this, _activeForm, __runInitializers(_init82, 28, this, null)), __runInitializers(_init82, 31, this);
|
|
192597
|
+
__privateAdd(this, _activeFormValid, __runInitializers(_init82, 32, this, true)), __runInitializers(_init82, 35, this);
|
|
192594
192598
|
__publicField(this, "activeFormSubscription");
|
|
192595
192599
|
__publicField(this, "windowLayer");
|
|
192596
192600
|
__publicField(this, "getIndexOfStep", /* @__PURE__ */ __name((stepArg) => {
|
|
192597
192601
|
return this.steps.findIndex((stepArg2) => stepArg === stepArg2);
|
|
192598
192602
|
}, "getIndexOfStep"));
|
|
192599
192603
|
__publicField(this, "scroller");
|
|
192604
|
+
/**
|
|
192605
|
+
* Currently-open confirmation modal (if any). Prevents double-stacking when
|
|
192606
|
+
* the user clicks the backdrop or the Cancel button while a confirm modal
|
|
192607
|
+
* is already visible. The reference may become stale (point to a destroyed
|
|
192608
|
+
* modal) if the user dismisses the confirm modal by clicking its own
|
|
192609
|
+
* backdrop — so handleCancelRequest() uses isConnected to detect that.
|
|
192610
|
+
*/
|
|
192611
|
+
__publicField(this, "cancelConfirmModal");
|
|
192600
192612
|
}
|
|
192601
192613
|
static async createAndShow(optionsArg) {
|
|
192602
192614
|
const body3 = document.body;
|
|
192603
192615
|
const stepper = new _DeesStepper();
|
|
192604
192616
|
stepper.steps = optionsArg.steps;
|
|
192605
192617
|
stepper.overlay = true;
|
|
192618
|
+
if (optionsArg.cancelable !== void 0) {
|
|
192619
|
+
stepper.cancelable = optionsArg.cancelable;
|
|
192620
|
+
}
|
|
192606
192621
|
stepper.windowLayer = await DeesWindowLayer.createAndShow({ blur: true });
|
|
192607
|
-
stepper.windowLayer.addEventListener("click", async () => {
|
|
192608
|
-
await stepper.destroy();
|
|
192609
|
-
});
|
|
192610
192622
|
body3.append(stepper.windowLayer);
|
|
192611
192623
|
body3.append(stepper);
|
|
192612
192624
|
stepper.stepperZIndex = zIndexRegistry.getNextZIndex();
|
|
@@ -192618,6 +192630,7 @@ var _DeesStepper = class _DeesStepper extends (_a81 = DeesElement, _steps_dec =
|
|
|
192618
192630
|
<div
|
|
192619
192631
|
class="stepperContainer ${this.overlay ? "overlay" : ""}"
|
|
192620
192632
|
style=${this.overlay ? `z-index: ${this.stepperZIndex};` : ""}
|
|
192633
|
+
@click=${this.handleOutsideClick}
|
|
192621
192634
|
>
|
|
192622
192635
|
${this.steps.map((stepArg, stepIndex) => {
|
|
192623
192636
|
const isSelected = stepArg === this.selectedStep;
|
|
@@ -192638,19 +192651,23 @@ var _DeesStepper = class _DeesStepper extends (_a81 = DeesElement, _steps_dec =
|
|
|
192638
192651
|
<div class="title">${stepArg.title}</div>
|
|
192639
192652
|
<div class="content">${stepArg.content}</div>
|
|
192640
192653
|
</div>
|
|
192641
|
-
|
|
192642
|
-
|
|
192643
|
-
|
|
192654
|
+
<div slot="footer" class="bottomButtons">
|
|
192655
|
+
${isSelected && this.activeForm !== null && !this.activeFormValid ? b2`<div class="stepHint">Complete form to continue</div>` : ""}
|
|
192656
|
+
${this.cancelable ? b2`<div
|
|
192657
|
+
class="bottomButton"
|
|
192658
|
+
@click=${() => this.handleCancelRequest()}
|
|
192659
|
+
>Cancel</div>` : ""}
|
|
192660
|
+
${stepArg.menuOptions?.map((actionArg, actionIndex) => {
|
|
192644
192661
|
const isPrimary = actionIndex === stepArg.menuOptions.length - 1;
|
|
192645
192662
|
const isDisabled = isPrimary && this.activeForm !== null && !this.activeFormValid;
|
|
192646
192663
|
return b2`
|
|
192647
|
-
|
|
192648
|
-
|
|
192649
|
-
|
|
192650
|
-
|
|
192651
|
-
|
|
192652
|
-
})}
|
|
192653
|
-
|
|
192664
|
+
<div
|
|
192665
|
+
class="bottomButton ${isPrimary ? "primary" : ""} ${isDisabled ? "disabled" : ""}"
|
|
192666
|
+
@click=${() => this.handleMenuOptionClick(actionArg, isPrimary)}
|
|
192667
|
+
>${actionArg.name}</div>
|
|
192668
|
+
`;
|
|
192669
|
+
}) ?? ""}
|
|
192670
|
+
</div>
|
|
192654
192671
|
</dees-tile>`;
|
|
192655
192672
|
})}
|
|
192656
192673
|
</div>
|
|
@@ -192792,11 +192809,72 @@ var _DeesStepper = class _DeesStepper extends (_a81 = DeesElement, _steps_dec =
|
|
|
192792
192809
|
}
|
|
192793
192810
|
await optionArg.action(this);
|
|
192794
192811
|
}
|
|
192812
|
+
/**
|
|
192813
|
+
* Click handler on .stepperContainer. Mirrors dees-modal.handleOutsideClick:
|
|
192814
|
+
* when the user clicks the empty backdrop area (target === stepperContainer,
|
|
192815
|
+
* not any descendant tile), trigger the cancel confirmation flow. Clicks
|
|
192816
|
+
* that originate inside a step tile have a different event.target and are
|
|
192817
|
+
* ignored here.
|
|
192818
|
+
*/
|
|
192819
|
+
handleOutsideClick(eventArg) {
|
|
192820
|
+
if (!this.overlay) return;
|
|
192821
|
+
if (!this.cancelable) return;
|
|
192822
|
+
eventArg.stopPropagation();
|
|
192823
|
+
const stepperContainer = this.shadowRoot.querySelector(".stepperContainer");
|
|
192824
|
+
if (eventArg.target === stepperContainer) {
|
|
192825
|
+
this.handleCancelRequest();
|
|
192826
|
+
}
|
|
192827
|
+
}
|
|
192828
|
+
/**
|
|
192829
|
+
* Shown by both the backdrop click and the Cancel button in the footer.
|
|
192830
|
+
* Presents a dees-modal asking the user to confirm cancellation. If they
|
|
192831
|
+
* confirm, the stepper and window layer are destroyed; otherwise the
|
|
192832
|
+
* confirm modal is dismissed and the stepper stays open.
|
|
192833
|
+
*
|
|
192834
|
+
* The isConnected check on the cached reference handles the case where the
|
|
192835
|
+
* user dismissed the previous confirm modal by clicking ITS OWN backdrop —
|
|
192836
|
+
* dees-modal.handleOutsideClick calls destroy() directly, bypassing our
|
|
192837
|
+
* action callbacks, so our cached reference would be stale without this
|
|
192838
|
+
* fallback check.
|
|
192839
|
+
*/
|
|
192840
|
+
async handleCancelRequest() {
|
|
192841
|
+
if (!this.cancelable) return;
|
|
192842
|
+
if (this.cancelConfirmModal && this.cancelConfirmModal.isConnected) return;
|
|
192843
|
+
this.cancelConfirmModal = void 0;
|
|
192844
|
+
this.cancelConfirmModal = await DeesModal.createAndShow({
|
|
192845
|
+
heading: "Cancel setup?",
|
|
192846
|
+
width: "small",
|
|
192847
|
+
content: b2`
|
|
192848
|
+
<p style="margin: 0;">
|
|
192849
|
+
Are you sure you want to cancel? Any progress on the current step will be lost.
|
|
192850
|
+
</p>
|
|
192851
|
+
`,
|
|
192852
|
+
menuOptions: [
|
|
192853
|
+
{
|
|
192854
|
+
name: "Continue setup",
|
|
192855
|
+
action: /* @__PURE__ */ __name(async (modal) => {
|
|
192856
|
+
this.cancelConfirmModal = void 0;
|
|
192857
|
+
await modal.destroy();
|
|
192858
|
+
}, "action")
|
|
192859
|
+
},
|
|
192860
|
+
{
|
|
192861
|
+
name: "Yes, cancel",
|
|
192862
|
+
action: /* @__PURE__ */ __name(async (modal) => {
|
|
192863
|
+
this.cancelConfirmModal = void 0;
|
|
192864
|
+
modal.destroy();
|
|
192865
|
+
const domtools19 = await this.domtoolsPromise;
|
|
192866
|
+
await domtools19.convenience.smartdelay.delayFor(100);
|
|
192867
|
+
await this.destroy();
|
|
192868
|
+
}, "action")
|
|
192869
|
+
}
|
|
192870
|
+
]
|
|
192871
|
+
});
|
|
192872
|
+
}
|
|
192795
192873
|
async destroy() {
|
|
192796
192874
|
const domtools19 = await this.domtoolsPromise;
|
|
192797
192875
|
const container = this.shadowRoot.querySelector(".stepperContainer");
|
|
192798
192876
|
container?.classList.add("predestroy");
|
|
192799
|
-
await domtools19.convenience.smartdelay.delayFor(
|
|
192877
|
+
await domtools19.convenience.smartdelay.delayFor(250);
|
|
192800
192878
|
if (this.parentElement) {
|
|
192801
192879
|
this.parentElement.removeChild(this);
|
|
192802
192880
|
}
|
|
@@ -192813,12 +192891,14 @@ _init82 = __decoratorStart(_a81);
|
|
|
192813
192891
|
_steps = new WeakMap();
|
|
192814
192892
|
_selectedStep = new WeakMap();
|
|
192815
192893
|
_overlay = new WeakMap();
|
|
192894
|
+
_cancelable = new WeakMap();
|
|
192816
192895
|
_stepperZIndex = new WeakMap();
|
|
192817
192896
|
_activeForm = new WeakMap();
|
|
192818
192897
|
_activeFormValid = new WeakMap();
|
|
192819
192898
|
__decorateElement(_init82, 4, "steps", _steps_dec, _DeesStepper, _steps);
|
|
192820
192899
|
__decorateElement(_init82, 4, "selectedStep", _selectedStep_dec, _DeesStepper, _selectedStep);
|
|
192821
192900
|
__decorateElement(_init82, 4, "overlay", _overlay_dec, _DeesStepper, _overlay);
|
|
192901
|
+
__decorateElement(_init82, 4, "cancelable", _cancelable_dec, _DeesStepper, _cancelable);
|
|
192822
192902
|
__decorateElement(_init82, 4, "stepperZIndex", _stepperZIndex_dec, _DeesStepper, _stepperZIndex);
|
|
192823
192903
|
__decorateElement(_init82, 4, "activeForm", _activeForm_dec, _DeesStepper, _activeForm);
|
|
192824
192904
|
__decorateElement(_init82, 4, "activeFormValid", _activeFormValid_dec, _DeesStepper, _activeFormValid);
|
|
@@ -192869,9 +192949,14 @@ __publicField(_DeesStepper, "styles", [
|
|
|
192869
192949
|
height: 100vh;
|
|
192870
192950
|
}
|
|
192871
192951
|
|
|
192872
|
-
.
|
|
192873
|
-
|
|
192874
|
-
|
|
192952
|
+
/* Exit animation — reverse of the entry. Tiles slide DOWN + fade out,
|
|
192953
|
+
mirroring the .entrance slide-up. The transition override is needed
|
|
192954
|
+
because dees-tile.step has its own 0.7s transition for step selection
|
|
192955
|
+
which would otherwise make the exit sluggish. */
|
|
192956
|
+
.stepperContainer.predestroy dees-tile.step {
|
|
192957
|
+
transform: translateY(16px);
|
|
192958
|
+
filter: opacity(0);
|
|
192959
|
+
transition: transform 0.25s, filter 0.2s;
|
|
192875
192960
|
}
|
|
192876
192961
|
|
|
192877
192962
|
dees-tile.step {
|
|
@@ -193009,15 +193094,17 @@ __publicField(_DeesStepper, "styles", [
|
|
|
193009
193094
|
transition: all 0.15s ease;
|
|
193010
193095
|
background: transparent;
|
|
193011
193096
|
border: none;
|
|
193012
|
-
border-left: 1px solid var(--dees-color-border-subtle);
|
|
193013
193097
|
color: var(--dees-color-text-muted);
|
|
193014
193098
|
white-space: nowrap;
|
|
193015
193099
|
display: flex;
|
|
193016
193100
|
align-items: center;
|
|
193017
193101
|
}
|
|
193018
193102
|
|
|
193019
|
-
|
|
193020
|
-
|
|
193103
|
+
/* Border-left separator on every button EXCEPT the first one.
|
|
193104
|
+
Uses general sibling so the stepHint (if rendered on the left) does
|
|
193105
|
+
not shift which button counts as "first" and create a phantom border. */
|
|
193106
|
+
.bottomButtons .bottomButton ~ .bottomButton {
|
|
193107
|
+
border-left: 1px solid var(--dees-color-border-subtle);
|
|
193021
193108
|
}
|
|
193022
193109
|
|
|
193023
193110
|
.bottomButtons .bottomButton:hover {
|