@design.estate/dees-catalog 9.5.0 → 9.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist_bundle/bundle.js +1307 -1448
- package/dist_bundle/bundle.js.map +1 -1
- package/dist_ts_web/00_commitinfo_data.js +1 -1
- package/dist_ts_web/elements/00group-layout/dees-stepper/dees-stepper.d.ts +21 -2
- package/dist_ts_web/elements/00group-layout/dees-stepper/dees-stepper.demo.d.ts +4 -0
- package/dist_ts_web/elements/00group-layout/dees-stepper/dees-stepper.demo.js +218 -193
- package/dist_ts_web/elements/00group-layout/dees-stepper/dees-stepper.js +288 -403
- package/dist_ts_web/elements/00group-layout/dees-stepper/styles.d.ts +1 -0
- package/dist_ts_web/elements/00group-layout/dees-stepper/styles.js +41 -0
- package/package.json +1 -1
- package/readme.md +31 -1
- package/ts_web/00_commitinfo_data.ts +1 -1
- package/ts_web/elements/00group-layout/dees-stepper/dees-stepper.demo.ts +142 -200
- package/ts_web/elements/00group-layout/dees-stepper/dees-stepper.ts +216 -400
- package/ts_web/elements/00group-layout/dees-stepper/styles.ts +41 -0
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { css } from '@design.estate/dees-element';
|
|
2
|
+
|
|
3
|
+
export const stepperStyles = css`
|
|
4
|
+
:host { display: block; position: relative; width: 100%; height: 100%; min-height: 440px; min-width: 0; font-family: var(--dees-font-family); color: var(--dees-color-text-primary); }
|
|
5
|
+
:host([overlay]) { position: static; width: 0; height: 0; min-height: 0; }
|
|
6
|
+
.stepperContainer { position: absolute; inset: 0; width: 100%; height: 100%; overflow: hidden; overflow-anchor: none; box-sizing: border-box; container: stepper-surface / inline-size; }
|
|
7
|
+
.stepperContainer.overlay { position: fixed; width: 100%; height: 100dvh; max-width: none; max-height: none; border: 0; padding: 0; margin: 0; color: inherit; background: transparent; }
|
|
8
|
+
.stepperContainer::backdrop { background: var(--dees-color-scrim); }
|
|
9
|
+
dees-tile.step { position: relative; width: min(var(--dees-stepper-width, 520px), calc(100% - 40px)); max-height: calc(100% - 48px); min-height: min(280px, calc(100% - 48px)); margin: 0 auto 20px; pointer-events: none; opacity: .25; transition: opacity 240ms var(--dees-ease-standard); }
|
|
10
|
+
dees-tile.step::part(outer) { border-color: var(--dees-color-border-subtle); }
|
|
11
|
+
dees-tile.step.selected { pointer-events: auto; opacity: 1; }
|
|
12
|
+
dees-tile.step.selected::part(outer) { border-color: var(--dees-color-border-default); box-shadow: var(--dees-shadow-md); }
|
|
13
|
+
dees-tile.step.hiddenStep { opacity: 0; }
|
|
14
|
+
dees-tile.step:last-child { margin-bottom: 100dvh; }
|
|
15
|
+
.step-header { display: flex; align-items: center; gap: 16px; padding: 16px 24px; min-height: 48px; box-sizing: border-box; }
|
|
16
|
+
.step-rail { display: flex; flex: 1; gap: 5px; list-style: none; margin: 0; padding: 0; min-width: 0; }
|
|
17
|
+
.step-marker { flex: 1; height: 4px; border-radius: 2px; background: var(--dees-color-fill-secondary); }
|
|
18
|
+
.step-marker.complete { background: var(--dees-color-text-secondary); }
|
|
19
|
+
.step-marker.current { background: var(--dees-color-accent-primary); }
|
|
20
|
+
.step-counter { flex: none; font-size: 12px; font-weight: 500; font-variant-numeric: tabular-nums; color: var(--dees-color-text-secondary); }
|
|
21
|
+
.step-body { padding: 24px; }
|
|
22
|
+
.heading-row { display: flex; align-items: flex-start; gap: 16px; }
|
|
23
|
+
.title { margin: 0; font-size: 20px; line-height: 1.3; font-weight: 600; letter-spacing: -.025em; overflow-wrap: anywhere; outline: none; }
|
|
24
|
+
.description { margin: 8px 0 0; font-size: 13px; line-height: 1.55; color: var(--dees-color-text-secondary); }
|
|
25
|
+
.content { margin-top: 24px; font-size: 13px; line-height: 1.55; overflow-wrap: anywhere; }
|
|
26
|
+
.content:empty { display: none; }
|
|
27
|
+
.progressStep { margin: 20px -8px 0; }
|
|
28
|
+
.step-error { display: flex; align-items: flex-start; gap: 8px; padding: 12px; margin-top: 16px; border-radius: var(--dees-radius-md); background: var(--dees-color-badge-error-bg); color: var(--dees-color-text-error); font-size: 12px; line-height: 1.5; overflow-wrap: anywhere; }
|
|
29
|
+
.step-error dees-icon { flex: none; margin-top: 1px; }
|
|
30
|
+
.step-footer { padding: 12px 24px; }
|
|
31
|
+
.step-hint { flex: 0 0 120px; padding-top: 4px; margin-left: auto; color: var(--dees-color-text-secondary); font-size: 11px; line-height: 1.4; text-align: right; transition: opacity 160ms var(--dees-ease-standard), visibility 160ms; }
|
|
32
|
+
.step-hint[aria-hidden='true'] { opacity: 0; visibility: hidden; pointer-events: none; }
|
|
33
|
+
.bottomButtons { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
|
|
34
|
+
.back-action { margin-right: auto; }
|
|
35
|
+
.footer-spacer { margin-right: auto; }
|
|
36
|
+
.empty { display: grid; place-content: center; height: 100%; text-align: center; color: var(--dees-color-text-secondary); font-size: 13px; }
|
|
37
|
+
.predestroy .step.selected { animation: stepper-exit 160ms var(--dees-ease-standard) forwards; }
|
|
38
|
+
@keyframes stepper-exit { to { opacity: 0; transform: translateY(10px); } }
|
|
39
|
+
@media (prefers-reduced-motion: reduce) { dees-tile.step, .step-hint { transition: none; } .predestroy .step.selected { animation: none; } }
|
|
40
|
+
@container stepper-surface (max-width: 540px) { dees-tile.step { width: calc(100% - 24px); max-height: calc(100% - 24px); } .step-header { padding: 12px 20px; } .step-body { padding: 20px; } .step-footer { padding: 12px 20px; } .step-hint { flex-basis: 84px; } }
|
|
41
|
+
`;
|