@akcelik/strct 1.13.0 → 1.14.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.
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { inject, DOCUMENT, signal, computed, Injectable, input, isDevMode, ViewEncapsulation, ChangeDetectionStrategy, Component, ElementRef, NgZone, afterNextRender, Directive, model, output, booleanAttribute, HostListener, contentChildren, effect, ApplicationRef, EnvironmentInjector, createComponent, forwardRef, DestroyRef, contentChild, viewChild, viewChildren, untracked, TemplateRef, Renderer2, Pipe } from '@angular/core';
2
+ import { inject, DOCUMENT, signal, computed, Injectable, input, isDevMode, ViewEncapsulation, ChangeDetectionStrategy, Component, ElementRef, NgZone, afterNextRender, Directive, model, output, booleanAttribute, HostListener, contentChildren, effect, ApplicationRef, EnvironmentInjector, createComponent, forwardRef, DestroyRef, contentChild, untracked, viewChild, viewChildren, TemplateRef, Renderer2, Pipe } from '@angular/core';
3
3
  import { DomSanitizer } from '@angular/platform-browser';
4
4
  import { NgTemplateOutlet, DOCUMENT as DOCUMENT$1 } from '@angular/common';
5
5
  import { RouterLink, RouterLinkActive } from '@angular/router';
@@ -3744,10 +3744,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImpo
3744
3744
  `, host: { class: 'strct-submenu-host' }, styles: [".strct-submenu{position:relative}.strct-submenu__trigger{display:flex;align-items:center;gap:8px;padding:7px 8px 7px 10px;border-radius:5px;cursor:default;font-size:13px;color:var(--t1)}.strct-submenu__trigger:hover{background:var(--bg-3)}.strct-submenu__trigger:focus-visible{outline:none;background:var(--bg-3)}.strct-submenu__icon{color:var(--t2);flex-shrink:0}.strct-submenu__icon-spacer{width:14px;flex-shrink:0}.strct-submenu__label{flex:1;display:inline-flex;align-items:center;gap:8px}.strct-submenu__arrow{color:var(--t3)}.strct-submenu__panel{position:absolute;top:-5px;left:100%;z-index:1;min-width:170px;margin-inline-start:2px;padding:4px;background:var(--bg-1);border:1px solid var(--b2);border-radius:7px;box-shadow:var(--shh);animation:strct-submenu-in .1s ease}.strct-submenu__panel--flip{left:auto;right:100%;margin-inline-start:0;margin-inline-end:2px}@keyframes strct-submenu-in{0%{opacity:0;transform:translate(-4px)}}\n"] }]
3745
3745
  }], propDecorators: { label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", required: false }] }], icon: [{ type: i0.Input, args: [{ isSignal: true, alias: "icon", required: false }] }] } });
3746
3746
 
3747
- /** A single wizard step. `label` names it in the step header. */
3747
+ /** A single wizard step. `label` names it in the step header / rail. */
3748
3748
  class StrctStep {
3749
3749
  /** Label text. */
3750
3750
  label = input.required(...(ngDevMode ? [{ debugName: "label" }] : /* istanbul ignore next */ []));
3751
+ /** Rail sublabel (vertical mode; shown while the step is active). */
3752
+ description = input('', ...(ngDevMode ? [{ debugName: "description" }] : /* istanbul ignore next */ []));
3751
3753
  /** When false, the wizard's Next / Finish is disabled on this step. */
3752
3754
  canAdvance = input(true, { ...(ngDevMode ? { debugName: "canAdvance" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
3753
3755
  _active = signal(false, ...(ngDevMode ? [{ debugName: "_active" }] : /* istanbul ignore next */ []));
@@ -3757,7 +3759,7 @@ class StrctStep {
3757
3759
  this._active.set(value);
3758
3760
  }
3759
3761
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: StrctStep, deps: [], target: i0.ɵɵFactoryTarget.Component });
3760
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.16", type: StrctStep, isStandalone: true, selector: "strct-step", inputs: { label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: true, transformFunction: null }, canAdvance: { classPropertyName: "canAdvance", publicName: "canAdvance", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "hidden": "!active()" }, classAttribute: "strct-step" }, ngImport: i0, template: `@if (active()) {
3762
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.16", type: StrctStep, isStandalone: true, selector: "strct-step", inputs: { label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: true, transformFunction: null }, description: { classPropertyName: "description", publicName: "description", isSignal: true, isRequired: false, transformFunction: null }, canAdvance: { classPropertyName: "canAdvance", publicName: "canAdvance", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "hidden": "!active()" }, classAttribute: "strct-step" }, ngImport: i0, template: `@if (active()) {
3761
3763
  <ng-content />
3762
3764
  }`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
3763
3765
  }
@@ -3771,16 +3773,57 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImpo
3771
3773
  }`,
3772
3774
  host: { class: 'strct-step', '[hidden]': '!active()' },
3773
3775
  }]
3774
- }], propDecorators: { label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", required: true }] }], canAdvance: [{ type: i0.Input, args: [{ isSignal: true, alias: "canAdvance", required: false }] }] } });
3775
- /** Multi-step flow with a numbered header and Back / Next / Finish controls. */
3776
+ }], propDecorators: { label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", required: true }] }], description: [{ type: i0.Input, args: [{ isSignal: true, alias: "description", required: false }] }], canAdvance: [{ type: i0.Input, args: [{ isSignal: true, alias: "canAdvance", required: false }] }] } });
3777
+ /** Marks the live-summary column projected beside a vertical wizard. */
3778
+ class StrctWizardAside {
3779
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: StrctWizardAside, deps: [], target: i0.ɵɵFactoryTarget.Directive });
3780
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.16", type: StrctWizardAside, isStandalone: true, selector: "[strctWizardAside]", ngImport: i0 });
3781
+ }
3782
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: StrctWizardAside, decorators: [{
3783
+ type: Directive,
3784
+ args: [{ selector: '[strctWizardAside]' }]
3785
+ }] });
3786
+ /**
3787
+ * Multi-step flow with Back / Next / Finish controls.
3788
+ *
3789
+ * Default: a numbered horizontal header. With `vertical`, steps become a left
3790
+ * rail — dashed-ring states (idle ⊙ / active ●⊙ / done ✓), a progress bar
3791
+ * with an “n/N” counter, and click-back navigation to visited steps — plus an
3792
+ * optional right column projected via `strctWizardAside` (live summaries).
3793
+ * The rail never flips horizontal: under ~720px of component width it
3794
+ * collapses to a compact vertical ring column (container query).
3795
+ *
3796
+ * <strct-wizard vertical title="Create virtual machine">
3797
+ * <strct-step label="Identity" description="Name, environment">…</strct-step>
3798
+ * …
3799
+ * <aside strctWizardAside>…live summary…</aside>
3800
+ * </strct-wizard>
3801
+ */
3776
3802
  class StrctWizard {
3777
3803
  steps = contentChildren(StrctStep, ...(ngDevMode ? [{ debugName: "steps" }] : /* istanbul ignore next */ []));
3804
+ asideDef = contentChild(StrctWizardAside, ...(ngDevMode ? [{ debugName: "asideDef" }] : /* istanbul ignore next */ []));
3778
3805
  current = model(0, ...(ngDevMode ? [{ debugName: "current" }] : /* istanbul ignore next */ []));
3806
+ /**
3807
+ * Vertical mode: steps become a left rail with dashed-ring states, a
3808
+ * progress bar and click-back navigation; `strctWizardAside` projects a
3809
+ * right column. The rail collapses to a compact vertical ring column under
3810
+ * ~720px of component width — it never flips horizontal.
3811
+ */
3812
+ vertical = input(false, { ...(ngDevMode ? { debugName: "vertical" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
3813
+ /** Rail heading shown above the progress bar (vertical mode). */
3814
+ title = input('', ...(ngDevMode ? [{ debugName: "title" }] : /* istanbul ignore next */ []));
3779
3815
  /** Label for the final-step button (default "Finish"). */
3780
3816
  finishLabel = input('Finish', ...(ngDevMode ? [{ debugName: "finishLabel" }] : /* istanbul ignore next */ []));
3781
- /** Labels for the Back / Next buttons (localizable). */
3817
+ /** Labels for the Back / Next / Cancel buttons (localizable). */
3782
3818
  backLabel = input('Back', ...(ngDevMode ? [{ debugName: "backLabel" }] : /* istanbul ignore next */ []));
3783
3819
  nextLabel = input('Next', ...(ngDevMode ? [{ debugName: "nextLabel" }] : /* istanbul ignore next */ []));
3820
+ cancelLabel = input('Cancel', ...(ngDevMode ? [{ debugName: "cancelLabel" }] : /* istanbul ignore next */ []));
3821
+ /** Busy label while `submitting` (localizable). */
3822
+ submittingLabel = input('Submitting…', ...(ngDevMode ? [{ debugName: "submittingLabel" }] : /* istanbul ignore next */ []));
3823
+ /** Counter suffix in the rail: "2/5 {progressLabel}". */
3824
+ progressLabel = input('completed', ...(ngDevMode ? [{ debugName: "progressLabel" }] : /* istanbul ignore next */ []));
3825
+ /** Accessible name of the vertical step rail. */
3826
+ stepsLabel = input('Steps', ...(ngDevMode ? [{ debugName: "stepsLabel" }] : /* istanbul ignore next */ []));
3784
3827
  /** Disable Finish and show a busy label while an async submit is in flight. */
3785
3828
  submitting = input(false, { ...(ngDevMode ? { debugName: "submitting" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
3786
3829
  /** Show a Cancel button on the left. */
@@ -3789,8 +3832,11 @@ class StrctWizard {
3789
3832
  finished = output();
3790
3833
  /** Emitted when the user clicks Cancel. */
3791
3834
  cancelled = output();
3792
- /** Emits the new step index after a Back / Next move. */
3835
+ /** Emits the new step index after a Back / Next / rail move. */
3793
3836
  stepChange = output();
3837
+ /** Furthest step reached — drives the progress bar and rail clickability. */
3838
+ maxVisited = signal(0, ...(ngDevMode ? [{ debugName: "maxVisited" }] : /* istanbul ignore next */ []));
3839
+ progressPct = computed(() => this.steps().length ? (this.maxVisited() / this.steps().length) * 100 : 0, ...(ngDevMode ? [{ debugName: "progressPct" }] : /* istanbul ignore next */ []));
3794
3840
  isLast = computed(() => this.current() >= this.steps().length - 1, ...(ngDevMode ? [{ debugName: "isLast" }] : /* istanbul ignore next */ []));
3795
3841
  /** Whether the current step permits advancing (its `canAdvance`). */
3796
3842
  canAdvance = computed(() => this.steps()[this.current()]?.canAdvance() ?? true, ...(ngDevMode ? [{ debugName: "canAdvance" }] : /* istanbul ignore next */ []));
@@ -3798,6 +3844,10 @@ class StrctWizard {
3798
3844
  effect(() => {
3799
3845
  const idx = this.current();
3800
3846
  this.steps().forEach((step, i) => step.setActive(i === idx));
3847
+ untracked(() => {
3848
+ if (idx > this.maxVisited())
3849
+ this.maxVisited.set(idx);
3850
+ });
3801
3851
  });
3802
3852
  }
3803
3853
  next() {
@@ -3812,103 +3862,216 @@ class StrctWizard {
3812
3862
  this.stepChange.emit(this.current());
3813
3863
  }
3814
3864
  }
3865
+ /** Jump to a visited step (rail click). Forward moves still go through Next. */
3866
+ goTo(index) {
3867
+ if (index === this.current() || index < 0 || index > this.maxVisited())
3868
+ return;
3869
+ this.current.set(index);
3870
+ this.stepChange.emit(index);
3871
+ }
3815
3872
  finish() {
3816
3873
  if (this.canAdvance() && !this.submitting())
3817
3874
  this.finished.emit();
3818
3875
  }
3819
3876
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: StrctWizard, deps: [], target: i0.ɵɵFactoryTarget.Component });
3820
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.16", type: StrctWizard, isStandalone: true, selector: "strct-wizard", inputs: { current: { classPropertyName: "current", publicName: "current", isSignal: true, isRequired: false, transformFunction: null }, finishLabel: { classPropertyName: "finishLabel", publicName: "finishLabel", isSignal: true, isRequired: false, transformFunction: null }, backLabel: { classPropertyName: "backLabel", publicName: "backLabel", isSignal: true, isRequired: false, transformFunction: null }, nextLabel: { classPropertyName: "nextLabel", publicName: "nextLabel", isSignal: true, isRequired: false, transformFunction: null }, submitting: { classPropertyName: "submitting", publicName: "submitting", isSignal: true, isRequired: false, transformFunction: null }, cancelable: { classPropertyName: "cancelable", publicName: "cancelable", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { current: "currentChange", finished: "finished", cancelled: "cancelled", stepChange: "stepChange" }, host: { classAttribute: "strct-wiz" }, queries: [{ propertyName: "steps", predicate: StrctStep, isSignal: true }], ngImport: i0, template: `
3821
- <div class="strct-wiz__steps">
3822
- @for (step of steps(); track step; let i = $index; let last = $last) {
3823
- <div
3824
- class="strct-wiz__step"
3825
- [class.strct-wiz__step--active]="i === current()"
3826
- [class.strct-wiz__step--done]="i < current()"
3827
- >
3828
- <span class="strct-wiz__dot">{{ i + 1 }}</span>
3829
- <span class="strct-wiz__label">{{ step.label() }}</span>
3877
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.16", type: StrctWizard, isStandalone: true, selector: "strct-wizard", inputs: { current: { classPropertyName: "current", publicName: "current", isSignal: true, isRequired: false, transformFunction: null }, vertical: { classPropertyName: "vertical", publicName: "vertical", isSignal: true, isRequired: false, transformFunction: null }, title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, finishLabel: { classPropertyName: "finishLabel", publicName: "finishLabel", isSignal: true, isRequired: false, transformFunction: null }, backLabel: { classPropertyName: "backLabel", publicName: "backLabel", isSignal: true, isRequired: false, transformFunction: null }, nextLabel: { classPropertyName: "nextLabel", publicName: "nextLabel", isSignal: true, isRequired: false, transformFunction: null }, cancelLabel: { classPropertyName: "cancelLabel", publicName: "cancelLabel", isSignal: true, isRequired: false, transformFunction: null }, submittingLabel: { classPropertyName: "submittingLabel", publicName: "submittingLabel", isSignal: true, isRequired: false, transformFunction: null }, progressLabel: { classPropertyName: "progressLabel", publicName: "progressLabel", isSignal: true, isRequired: false, transformFunction: null }, stepsLabel: { classPropertyName: "stepsLabel", publicName: "stepsLabel", isSignal: true, isRequired: false, transformFunction: null }, submitting: { classPropertyName: "submitting", publicName: "submitting", isSignal: true, isRequired: false, transformFunction: null }, cancelable: { classPropertyName: "cancelable", publicName: "cancelable", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { current: "currentChange", finished: "finished", cancelled: "cancelled", stepChange: "stepChange" }, host: { properties: { "class.strct-wiz--vertical": "vertical()" }, classAttribute: "strct-wiz" }, queries: [{ propertyName: "steps", predicate: StrctStep, isSignal: true }, { propertyName: "asideDef", first: true, predicate: StrctWizardAside, descendants: true, isSignal: true }], ngImport: i0, template: `
3878
+ <div
3879
+ class="strct-wiz__layout"
3880
+ [class.strct-wiz__layout--v]="vertical()"
3881
+ [class.strct-wiz__layout--aside]="vertical() && asideDef()"
3882
+ >
3883
+ @if (vertical()) {
3884
+ <nav class="strct-wiz__rail" [attr.aria-label]="stepsLabel()">
3885
+ @if (title()) {
3886
+ <div class="strct-wiz__vtitle">{{ title() }}</div>
3887
+ }
3888
+ <div class="strct-wiz__pbar" aria-hidden="true">
3889
+ <i [style.width.%]="progressPct()"></i>
3890
+ </div>
3891
+ <div class="strct-wiz__pcount">
3892
+ {{ maxVisited() }}/{{ steps().length }} {{ progressLabel() }}
3893
+ </div>
3894
+ <div class="strct-wiz__vsteps">
3895
+ @for (step of steps(); track step; let i = $index) {
3896
+ <button
3897
+ type="button"
3898
+ class="strct-wiz__vstep"
3899
+ [class.strct-wiz__vstep--done]="i < maxVisited() && i !== current()"
3900
+ [class.strct-wiz__vstep--active]="i === current()"
3901
+ [disabled]="i > maxVisited() || null"
3902
+ [attr.aria-current]="i === current() ? 'step' : null"
3903
+ [attr.title]="step.label()"
3904
+ (click)="goTo(i)"
3905
+ >
3906
+ <span class="strct-wiz__ring" aria-hidden="true"></span>
3907
+ <span class="strct-wiz__vmeta">
3908
+ <span class="strct-wiz__vlabel">{{ step.label() }}</span>
3909
+ @if (step.description()) {
3910
+ <span class="strct-wiz__vdesc">{{ step.description() }}</span>
3911
+ }
3912
+ </span>
3913
+ </button>
3914
+ }
3915
+ </div>
3916
+ </nav>
3917
+ } @else {
3918
+ <div class="strct-wiz__steps">
3919
+ @for (step of steps(); track step; let i = $index; let last = $last) {
3920
+ <div
3921
+ class="strct-wiz__step"
3922
+ [class.strct-wiz__step--active]="i === current()"
3923
+ [class.strct-wiz__step--done]="i < current()"
3924
+ >
3925
+ <span class="strct-wiz__dot">{{ i + 1 }}</span>
3926
+ <span class="strct-wiz__label">{{ step.label() }}</span>
3927
+ </div>
3928
+ @if (!last) {
3929
+ <span class="strct-wiz__sep"></span>
3930
+ }
3931
+ }
3830
3932
  </div>
3831
- @if (!last) {
3832
- <span class="strct-wiz__sep"></span>
3833
- }
3834
3933
  }
3835
- </div>
3836
3934
 
3837
- <div class="strct-wiz__content"><ng-content /></div>
3935
+ <div class="strct-wiz__main">
3936
+ <div class="strct-wiz__content"><ng-content /></div>
3838
3937
 
3839
- <div class="strct-wiz__foot">
3840
- @if (cancelable()) {
3841
- <button strct-button variant="flat" class="strct-wiz__cancel" (click)="cancelled.emit()">
3842
- Cancel
3843
- </button>
3844
- }
3845
- <button strct-button variant="flat" [disabled]="current() === 0" (click)="back()">
3846
- {{ backLabel() }}
3847
- </button>
3848
- @if (isLast()) {
3849
- <button
3850
- strct-button
3851
- variant="primary"
3852
- [disabled]="submitting() || !canAdvance()"
3853
- (click)="finish()"
3854
- >
3855
- {{ submitting() ? 'Submitting…' : finishLabel() }}
3856
- </button>
3857
- } @else {
3858
- <button strct-button variant="primary" [disabled]="!canAdvance()" (click)="next()">
3859
- {{ nextLabel() }}
3860
- </button>
3861
- }
3938
+ <div class="strct-wiz__foot">
3939
+ @if (cancelable()) {
3940
+ <button
3941
+ strct-button
3942
+ variant="flat"
3943
+ class="strct-wiz__cancel"
3944
+ (click)="cancelled.emit()"
3945
+ >
3946
+ {{ cancelLabel() }}
3947
+ </button>
3948
+ }
3949
+ <button strct-button variant="flat" [disabled]="current() === 0" (click)="back()">
3950
+ {{ backLabel() }}
3951
+ </button>
3952
+ @if (isLast()) {
3953
+ <button
3954
+ strct-button
3955
+ variant="primary"
3956
+ [disabled]="submitting() || !canAdvance()"
3957
+ (click)="finish()"
3958
+ >
3959
+ {{ submitting() ? submittingLabel() : finishLabel() }}
3960
+ </button>
3961
+ } @else {
3962
+ <button strct-button variant="primary" [disabled]="!canAdvance()" (click)="next()">
3963
+ {{ nextLabel() }}
3964
+ </button>
3965
+ }
3966
+ </div>
3967
+ </div>
3968
+
3969
+ <aside class="strct-wiz__aside">
3970
+ <ng-content select="[strctWizardAside]" />
3971
+ </aside>
3862
3972
  </div>
3863
- `, isInline: true, styles: [".strct-wiz{display:block}.strct-wiz__steps{display:flex;align-items:center;gap:6px}.strct-wiz__step{display:flex;align-items:center;gap:8px}.strct-wiz__dot{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;font-size:12px;font-weight:600;color:var(--t2);background:var(--bg-3);border:1px solid var(--b2)}.strct-wiz__label{font-size:12px;color:var(--t2)}.strct-wiz__step--active .strct-wiz__dot{background:var(--acc-m);color:var(--acc);border-color:var(--acc)}.strct-wiz__step--active .strct-wiz__label{color:var(--t1);font-weight:600}.strct-wiz__step--done .strct-wiz__dot{background:var(--acc-m);color:var(--acc);border-color:var(--acc30)}.strct-wiz__sep{flex:1;height:1px;background:var(--b2);min-width:18px}.strct-wiz__content{margin:18px 0;padding:16px;min-height:80px;background:var(--bg-1);border:1px solid var(--b2);border-radius:8px;color:var(--t2);font-size:13px}.strct-wiz__foot{display:flex;justify-content:flex-end;gap:8px}.strct-wiz__cancel{margin-inline-end:auto}\n"], dependencies: [{ kind: "component", type: StrctButton, selector: "button[strct-button], a[strct-button]", inputs: ["variant", "size", "solid", "block", "iconOnly"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
3973
+ `, isInline: true, styles: [".strct-wiz{display:block}.strct-wiz__steps{display:flex;align-items:center;gap:6px}.strct-wiz__step{display:flex;align-items:center;gap:8px}.strct-wiz__dot{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;font-size:12px;font-weight:600;color:var(--t2);background:var(--bg-3);border:1px solid var(--b2)}.strct-wiz__label{font-size:12px;color:var(--t2)}.strct-wiz__step--active .strct-wiz__dot{background:var(--acc-m);color:var(--acc);border-color:var(--acc)}.strct-wiz__step--active .strct-wiz__label{color:var(--t1);font-weight:600}.strct-wiz__step--done .strct-wiz__dot{background:var(--acc-m);color:var(--acc);border-color:var(--acc30)}.strct-wiz__sep{flex:1;height:1px;background:var(--b2);min-width:18px}.strct-wiz__content{margin:18px 0;padding:16px;min-height:80px;background:var(--bg-1);border:1px solid var(--b2);border-radius:8px;color:var(--t2);font-size:13px}.strct-wiz__foot{display:flex;justify-content:flex-end;gap:8px}.strct-wiz__cancel{margin-inline-end:auto}.strct-wiz__aside{display:none}.strct-wiz--vertical{container-type:inline-size}.strct-wiz__layout--v{display:grid;grid-template-columns:232px minmax(0,1fr);border:1px solid var(--b2);border-radius:12px;background:var(--bg-1);overflow:hidden}.strct-wiz__layout--v.strct-wiz__layout--aside{grid-template-columns:232px minmax(0,1fr) 280px}.strct-wiz__layout--v .strct-wiz__aside{display:block;background:var(--bg-2);border-inline-start:1px solid var(--b1);overflow-y:auto}.strct-wiz__layout--v .strct-wiz__main{display:flex;flex-direction:column;min-width:0}.strct-wiz__layout--v .strct-wiz__content{flex:1;margin:0;padding:20px 24px;border:0;border-radius:0;background:transparent;overflow-y:auto}.strct-wiz__layout--v .strct-wiz__foot{padding:13px 24px;border-top:1px solid var(--b1)}.strct-wiz__rail{display:flex;flex-direction:column;padding:20px 18px 16px;background:var(--bg-2);border-inline-end:1px solid var(--b1);min-width:0}.strct-wiz__vtitle{font-size:15px;font-weight:600;letter-spacing:-.2px;line-height:1.3;margin-bottom:12px}.strct-wiz__pbar{height:4px;border-radius:99px;background:var(--bg-a);overflow:hidden;flex:none}.strct-wiz__pbar i{display:block;height:100%;border-radius:99px;background:var(--acc);transition:width .4s cubic-bezier(.4,0,.2,1)}.strct-wiz__pcount{font-family:var(--mono);font-size:10.5px;letter-spacing:.4px;color:var(--t3);margin:7px 0 16px;font-variant-numeric:tabular-nums}.strct-wiz__vsteps{display:flex;flex-direction:column}.strct-wiz__vstep{display:grid;grid-template-columns:22px 1fr;gap:11px;align-items:start;width:100%;padding:8px 0;border:0;background:none;text-align:start;font:inherit;color:inherit;cursor:pointer}.strct-wiz__vstep:disabled{cursor:default;opacity:.55}.strct-wiz__ring{width:20px;height:20px;margin-top:1px;border-radius:50%;border:2px dashed var(--b3);display:grid;place-items:center;transition:border-color .2s,background .2s}.strct-wiz__vlabel{display:block;font-size:13px;color:var(--t2);transition:color .15s}.strct-wiz__vdesc{display:block;font-size:11px;color:var(--t3);margin-top:1px;opacity:0;height:0;overflow:hidden;transition:opacity .25s}.strct-wiz__vstep--done .strct-wiz__ring{border:0;background:var(--success)}.strct-wiz__vstep--done .strct-wiz__ring:after{content:\"\";width:8px;height:4px;border-left:2px solid var(--inv);border-bottom:2px solid var(--inv);transform:rotate(-45deg) translate(1px,-1px)}.strct-wiz__vstep--done .strct-wiz__vlabel{color:var(--t1)}.strct-wiz__vstep--active .strct-wiz__ring{border-style:solid;border-color:var(--acc);box-shadow:0 0 0 3px var(--acc18)}.strct-wiz__vstep--active .strct-wiz__ring:after{content:\"\";width:7px;height:7px;border-radius:50%;background:var(--acc)}.strct-wiz__vstep--active .strct-wiz__vlabel{color:var(--t1);font-weight:600}.strct-wiz__vstep--active .strct-wiz__vdesc{opacity:1;height:auto}@container (max-width: 800px){.strct-wiz__layout--v.strct-wiz__layout--aside{grid-template-columns:232px minmax(0,1fr)}.strct-wiz__layout--v .strct-wiz__aside{display:none}}@container (max-width: 720px){.strct-wiz__layout--v,.strct-wiz__layout--v.strct-wiz__layout--aside{grid-template-columns:56px minmax(0,1fr)}.strct-wiz__rail{padding:18px 0 12px;align-items:center}.strct-wiz__vtitle,.strct-wiz__pbar,.strct-wiz__pcount,.strct-wiz__vmeta{display:none}.strct-wiz__vsteps{gap:3px;align-items:center}.strct-wiz__vstep{grid-template-columns:22px;justify-items:center;position:relative;padding:7px 0}.strct-wiz__vstep:not(:last-child):after{content:\"\";position:absolute;left:50%;top:30px;height:10px;width:1.5px;background:var(--b3)}.strct-wiz__vstep--done:not(:last-child):after{background:var(--success);opacity:.6}.strct-wiz__layout--v .strct-wiz__content{padding:16px 18px}.strct-wiz__layout--v .strct-wiz__foot{padding:12px 18px}}@media(prefers-reduced-motion:reduce){.strct-wiz__pbar i,.strct-wiz__ring,.strct-wiz__vlabel,.strct-wiz__vdesc{transition:none}}\n"], dependencies: [{ kind: "component", type: StrctButton, selector: "button[strct-button], a[strct-button]", inputs: ["variant", "size", "solid", "block", "iconOnly"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
3864
3974
  }
3865
3975
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: StrctWizard, decorators: [{
3866
3976
  type: Component,
3867
3977
  args: [{ selector: 'strct-wizard', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [StrctButton], template: `
3868
- <div class="strct-wiz__steps">
3869
- @for (step of steps(); track step; let i = $index; let last = $last) {
3870
- <div
3871
- class="strct-wiz__step"
3872
- [class.strct-wiz__step--active]="i === current()"
3873
- [class.strct-wiz__step--done]="i < current()"
3874
- >
3875
- <span class="strct-wiz__dot">{{ i + 1 }}</span>
3876
- <span class="strct-wiz__label">{{ step.label() }}</span>
3978
+ <div
3979
+ class="strct-wiz__layout"
3980
+ [class.strct-wiz__layout--v]="vertical()"
3981
+ [class.strct-wiz__layout--aside]="vertical() && asideDef()"
3982
+ >
3983
+ @if (vertical()) {
3984
+ <nav class="strct-wiz__rail" [attr.aria-label]="stepsLabel()">
3985
+ @if (title()) {
3986
+ <div class="strct-wiz__vtitle">{{ title() }}</div>
3987
+ }
3988
+ <div class="strct-wiz__pbar" aria-hidden="true">
3989
+ <i [style.width.%]="progressPct()"></i>
3990
+ </div>
3991
+ <div class="strct-wiz__pcount">
3992
+ {{ maxVisited() }}/{{ steps().length }} {{ progressLabel() }}
3993
+ </div>
3994
+ <div class="strct-wiz__vsteps">
3995
+ @for (step of steps(); track step; let i = $index) {
3996
+ <button
3997
+ type="button"
3998
+ class="strct-wiz__vstep"
3999
+ [class.strct-wiz__vstep--done]="i < maxVisited() && i !== current()"
4000
+ [class.strct-wiz__vstep--active]="i === current()"
4001
+ [disabled]="i > maxVisited() || null"
4002
+ [attr.aria-current]="i === current() ? 'step' : null"
4003
+ [attr.title]="step.label()"
4004
+ (click)="goTo(i)"
4005
+ >
4006
+ <span class="strct-wiz__ring" aria-hidden="true"></span>
4007
+ <span class="strct-wiz__vmeta">
4008
+ <span class="strct-wiz__vlabel">{{ step.label() }}</span>
4009
+ @if (step.description()) {
4010
+ <span class="strct-wiz__vdesc">{{ step.description() }}</span>
4011
+ }
4012
+ </span>
4013
+ </button>
4014
+ }
4015
+ </div>
4016
+ </nav>
4017
+ } @else {
4018
+ <div class="strct-wiz__steps">
4019
+ @for (step of steps(); track step; let i = $index; let last = $last) {
4020
+ <div
4021
+ class="strct-wiz__step"
4022
+ [class.strct-wiz__step--active]="i === current()"
4023
+ [class.strct-wiz__step--done]="i < current()"
4024
+ >
4025
+ <span class="strct-wiz__dot">{{ i + 1 }}</span>
4026
+ <span class="strct-wiz__label">{{ step.label() }}</span>
4027
+ </div>
4028
+ @if (!last) {
4029
+ <span class="strct-wiz__sep"></span>
4030
+ }
4031
+ }
3877
4032
  </div>
3878
- @if (!last) {
3879
- <span class="strct-wiz__sep"></span>
3880
- }
3881
4033
  }
3882
- </div>
3883
4034
 
3884
- <div class="strct-wiz__content"><ng-content /></div>
4035
+ <div class="strct-wiz__main">
4036
+ <div class="strct-wiz__content"><ng-content /></div>
3885
4037
 
3886
- <div class="strct-wiz__foot">
3887
- @if (cancelable()) {
3888
- <button strct-button variant="flat" class="strct-wiz__cancel" (click)="cancelled.emit()">
3889
- Cancel
3890
- </button>
3891
- }
3892
- <button strct-button variant="flat" [disabled]="current() === 0" (click)="back()">
3893
- {{ backLabel() }}
3894
- </button>
3895
- @if (isLast()) {
3896
- <button
3897
- strct-button
3898
- variant="primary"
3899
- [disabled]="submitting() || !canAdvance()"
3900
- (click)="finish()"
3901
- >
3902
- {{ submitting() ? 'Submitting…' : finishLabel() }}
3903
- </button>
3904
- } @else {
3905
- <button strct-button variant="primary" [disabled]="!canAdvance()" (click)="next()">
3906
- {{ nextLabel() }}
3907
- </button>
3908
- }
4038
+ <div class="strct-wiz__foot">
4039
+ @if (cancelable()) {
4040
+ <button
4041
+ strct-button
4042
+ variant="flat"
4043
+ class="strct-wiz__cancel"
4044
+ (click)="cancelled.emit()"
4045
+ >
4046
+ {{ cancelLabel() }}
4047
+ </button>
4048
+ }
4049
+ <button strct-button variant="flat" [disabled]="current() === 0" (click)="back()">
4050
+ {{ backLabel() }}
4051
+ </button>
4052
+ @if (isLast()) {
4053
+ <button
4054
+ strct-button
4055
+ variant="primary"
4056
+ [disabled]="submitting() || !canAdvance()"
4057
+ (click)="finish()"
4058
+ >
4059
+ {{ submitting() ? submittingLabel() : finishLabel() }}
4060
+ </button>
4061
+ } @else {
4062
+ <button strct-button variant="primary" [disabled]="!canAdvance()" (click)="next()">
4063
+ {{ nextLabel() }}
4064
+ </button>
4065
+ }
4066
+ </div>
4067
+ </div>
4068
+
4069
+ <aside class="strct-wiz__aside">
4070
+ <ng-content select="[strctWizardAside]" />
4071
+ </aside>
3909
4072
  </div>
3910
- `, host: { class: 'strct-wiz' }, styles: [".strct-wiz{display:block}.strct-wiz__steps{display:flex;align-items:center;gap:6px}.strct-wiz__step{display:flex;align-items:center;gap:8px}.strct-wiz__dot{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;font-size:12px;font-weight:600;color:var(--t2);background:var(--bg-3);border:1px solid var(--b2)}.strct-wiz__label{font-size:12px;color:var(--t2)}.strct-wiz__step--active .strct-wiz__dot{background:var(--acc-m);color:var(--acc);border-color:var(--acc)}.strct-wiz__step--active .strct-wiz__label{color:var(--t1);font-weight:600}.strct-wiz__step--done .strct-wiz__dot{background:var(--acc-m);color:var(--acc);border-color:var(--acc30)}.strct-wiz__sep{flex:1;height:1px;background:var(--b2);min-width:18px}.strct-wiz__content{margin:18px 0;padding:16px;min-height:80px;background:var(--bg-1);border:1px solid var(--b2);border-radius:8px;color:var(--t2);font-size:13px}.strct-wiz__foot{display:flex;justify-content:flex-end;gap:8px}.strct-wiz__cancel{margin-inline-end:auto}\n"] }]
3911
- }], ctorParameters: () => [], propDecorators: { steps: [{ type: i0.ContentChildren, args: [i0.forwardRef(() => StrctStep), { isSignal: true }] }], current: [{ type: i0.Input, args: [{ isSignal: true, alias: "current", required: false }] }, { type: i0.Output, args: ["currentChange"] }], finishLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "finishLabel", required: false }] }], backLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "backLabel", required: false }] }], nextLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "nextLabel", required: false }] }], submitting: [{ type: i0.Input, args: [{ isSignal: true, alias: "submitting", required: false }] }], cancelable: [{ type: i0.Input, args: [{ isSignal: true, alias: "cancelable", required: false }] }], finished: [{ type: i0.Output, args: ["finished"] }], cancelled: [{ type: i0.Output, args: ["cancelled"] }], stepChange: [{ type: i0.Output, args: ["stepChange"] }] } });
4073
+ `, host: { class: 'strct-wiz', '[class.strct-wiz--vertical]': 'vertical()' }, styles: [".strct-wiz{display:block}.strct-wiz__steps{display:flex;align-items:center;gap:6px}.strct-wiz__step{display:flex;align-items:center;gap:8px}.strct-wiz__dot{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;font-size:12px;font-weight:600;color:var(--t2);background:var(--bg-3);border:1px solid var(--b2)}.strct-wiz__label{font-size:12px;color:var(--t2)}.strct-wiz__step--active .strct-wiz__dot{background:var(--acc-m);color:var(--acc);border-color:var(--acc)}.strct-wiz__step--active .strct-wiz__label{color:var(--t1);font-weight:600}.strct-wiz__step--done .strct-wiz__dot{background:var(--acc-m);color:var(--acc);border-color:var(--acc30)}.strct-wiz__sep{flex:1;height:1px;background:var(--b2);min-width:18px}.strct-wiz__content{margin:18px 0;padding:16px;min-height:80px;background:var(--bg-1);border:1px solid var(--b2);border-radius:8px;color:var(--t2);font-size:13px}.strct-wiz__foot{display:flex;justify-content:flex-end;gap:8px}.strct-wiz__cancel{margin-inline-end:auto}.strct-wiz__aside{display:none}.strct-wiz--vertical{container-type:inline-size}.strct-wiz__layout--v{display:grid;grid-template-columns:232px minmax(0,1fr);border:1px solid var(--b2);border-radius:12px;background:var(--bg-1);overflow:hidden}.strct-wiz__layout--v.strct-wiz__layout--aside{grid-template-columns:232px minmax(0,1fr) 280px}.strct-wiz__layout--v .strct-wiz__aside{display:block;background:var(--bg-2);border-inline-start:1px solid var(--b1);overflow-y:auto}.strct-wiz__layout--v .strct-wiz__main{display:flex;flex-direction:column;min-width:0}.strct-wiz__layout--v .strct-wiz__content{flex:1;margin:0;padding:20px 24px;border:0;border-radius:0;background:transparent;overflow-y:auto}.strct-wiz__layout--v .strct-wiz__foot{padding:13px 24px;border-top:1px solid var(--b1)}.strct-wiz__rail{display:flex;flex-direction:column;padding:20px 18px 16px;background:var(--bg-2);border-inline-end:1px solid var(--b1);min-width:0}.strct-wiz__vtitle{font-size:15px;font-weight:600;letter-spacing:-.2px;line-height:1.3;margin-bottom:12px}.strct-wiz__pbar{height:4px;border-radius:99px;background:var(--bg-a);overflow:hidden;flex:none}.strct-wiz__pbar i{display:block;height:100%;border-radius:99px;background:var(--acc);transition:width .4s cubic-bezier(.4,0,.2,1)}.strct-wiz__pcount{font-family:var(--mono);font-size:10.5px;letter-spacing:.4px;color:var(--t3);margin:7px 0 16px;font-variant-numeric:tabular-nums}.strct-wiz__vsteps{display:flex;flex-direction:column}.strct-wiz__vstep{display:grid;grid-template-columns:22px 1fr;gap:11px;align-items:start;width:100%;padding:8px 0;border:0;background:none;text-align:start;font:inherit;color:inherit;cursor:pointer}.strct-wiz__vstep:disabled{cursor:default;opacity:.55}.strct-wiz__ring{width:20px;height:20px;margin-top:1px;border-radius:50%;border:2px dashed var(--b3);display:grid;place-items:center;transition:border-color .2s,background .2s}.strct-wiz__vlabel{display:block;font-size:13px;color:var(--t2);transition:color .15s}.strct-wiz__vdesc{display:block;font-size:11px;color:var(--t3);margin-top:1px;opacity:0;height:0;overflow:hidden;transition:opacity .25s}.strct-wiz__vstep--done .strct-wiz__ring{border:0;background:var(--success)}.strct-wiz__vstep--done .strct-wiz__ring:after{content:\"\";width:8px;height:4px;border-left:2px solid var(--inv);border-bottom:2px solid var(--inv);transform:rotate(-45deg) translate(1px,-1px)}.strct-wiz__vstep--done .strct-wiz__vlabel{color:var(--t1)}.strct-wiz__vstep--active .strct-wiz__ring{border-style:solid;border-color:var(--acc);box-shadow:0 0 0 3px var(--acc18)}.strct-wiz__vstep--active .strct-wiz__ring:after{content:\"\";width:7px;height:7px;border-radius:50%;background:var(--acc)}.strct-wiz__vstep--active .strct-wiz__vlabel{color:var(--t1);font-weight:600}.strct-wiz__vstep--active .strct-wiz__vdesc{opacity:1;height:auto}@container (max-width: 800px){.strct-wiz__layout--v.strct-wiz__layout--aside{grid-template-columns:232px minmax(0,1fr)}.strct-wiz__layout--v .strct-wiz__aside{display:none}}@container (max-width: 720px){.strct-wiz__layout--v,.strct-wiz__layout--v.strct-wiz__layout--aside{grid-template-columns:56px minmax(0,1fr)}.strct-wiz__rail{padding:18px 0 12px;align-items:center}.strct-wiz__vtitle,.strct-wiz__pbar,.strct-wiz__pcount,.strct-wiz__vmeta{display:none}.strct-wiz__vsteps{gap:3px;align-items:center}.strct-wiz__vstep{grid-template-columns:22px;justify-items:center;position:relative;padding:7px 0}.strct-wiz__vstep:not(:last-child):after{content:\"\";position:absolute;left:50%;top:30px;height:10px;width:1.5px;background:var(--b3)}.strct-wiz__vstep--done:not(:last-child):after{background:var(--success);opacity:.6}.strct-wiz__layout--v .strct-wiz__content{padding:16px 18px}.strct-wiz__layout--v .strct-wiz__foot{padding:12px 18px}}@media(prefers-reduced-motion:reduce){.strct-wiz__pbar i,.strct-wiz__ring,.strct-wiz__vlabel,.strct-wiz__vdesc{transition:none}}\n"] }]
4074
+ }], ctorParameters: () => [], propDecorators: { steps: [{ type: i0.ContentChildren, args: [i0.forwardRef(() => StrctStep), { isSignal: true }] }], asideDef: [{ type: i0.ContentChild, args: [i0.forwardRef(() => StrctWizardAside), { isSignal: true }] }], current: [{ type: i0.Input, args: [{ isSignal: true, alias: "current", required: false }] }, { type: i0.Output, args: ["currentChange"] }], vertical: [{ type: i0.Input, args: [{ isSignal: true, alias: "vertical", required: false }] }], title: [{ type: i0.Input, args: [{ isSignal: true, alias: "title", required: false }] }], finishLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "finishLabel", required: false }] }], backLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "backLabel", required: false }] }], nextLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "nextLabel", required: false }] }], cancelLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "cancelLabel", required: false }] }], submittingLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "submittingLabel", required: false }] }], progressLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "progressLabel", required: false }] }], stepsLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "stepsLabel", required: false }] }], submitting: [{ type: i0.Input, args: [{ isSignal: true, alias: "submitting", required: false }] }], cancelable: [{ type: i0.Input, args: [{ isSignal: true, alias: "cancelable", required: false }] }], finished: [{ type: i0.Output, args: ["finished"] }], cancelled: [{ type: i0.Output, args: ["cancelled"] }], stepChange: [{ type: i0.Output, args: ["stepChange"] }] } });
3912
4075
 
3913
4076
  /**
3914
4077
  * Separator rule. Horizontal by default; pass `vertical` for an inline rule.
@@ -15653,5 +15816,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImpo
15653
15816
  * Generated bundle index. Do not edit.
15654
15817
  */
15655
15818
 
15656
- export { STRCT_ICONS, STRCT_ICON_GROUPS, STRCT_ICON_NAMES, STRCT_MASKS, STRCT_PALETTES, STRCT_RAW_ICONS, STRCT_TIME_RANGE_PRESETS, StrctAccordion, StrctAccordionPanel, StrctAlert, StrctAnnouncer, StrctAvatar, StrctBadge, StrctBreadcrumb, StrctBreadcrumbItem, StrctButton, StrctButtonGroup, StrctBytesPipe, StrctCard, StrctCardBlock, StrctCardFooter, StrctCardHeader, StrctCascadeHost, StrctCascadeNode, StrctCascadeSelect, StrctCellDef, StrctCellStatus, StrctChart, StrctCheckbox, StrctChips, StrctCode, StrctColorPicker, StrctCombobox, StrctCommandPalette, StrctContextMenu, StrctContextMenuTrigger, StrctCopy, StrctDatagrid, StrctDatagridActionBar, StrctDatepicker, StrctDesc, StrctDescriptionList, StrctDiff, StrctDivider, StrctDonut, StrctDrawer, StrctDrawerFooter, StrctDropdown, StrctDropdownDivider, StrctDropdownItem, StrctDropdownTrigger, StrctDurationPipe, StrctEmptyState, StrctField, StrctFile, StrctFilterBar, StrctFlow, StrctFooter, StrctGauge, StrctHeader, StrctHero, StrctHotkeysHelp, StrctHotkeysService, StrctIcon, StrctInput, StrctInputMask, StrctInputOtp, StrctKbd, StrctKnob, StrctLogViewer, StrctLogin, StrctMenuPanel, StrctMenuService, StrctMenubar, StrctMetricTile, StrctModal, StrctNav, StrctNavItem, StrctOverlay, StrctPageHeader, StrctPageHeaderActions, StrctPageHeaderCrumbs, StrctPagination, StrctPassword, StrctProgress, StrctRadio, StrctRadioGroup, StrctRail, StrctRange, StrctRatePipe, StrctRating, StrctReorder, StrctReorderItem, StrctRowDetailDef, StrctSearchbox, StrctSectionMenu, StrctSegmented, StrctShell, StrctShellService, StrctSiPipe, StrctSignpost, StrctSkeleton, StrctSparkline, StrctSpeedDial, StrctSpinner, StrctSplitButton, StrctSplitter, StrctStack, StrctStackItem, StrctStep, StrctSubmenu, StrctTab, StrctTable, StrctTabs, StrctTag, StrctThemeService, StrctThemeSwitcher, StrctTimeRangePicker, StrctTimeline, StrctTimelineItem, StrctToastOutlet, StrctToastService, StrctToggle, StrctTooltip, StrctTour, StrctTransfer, StrctTree, StrctTreeNode, StrctVerticalNav, StrctWatermark, StrctWizard, parseAnsi, registerStrctIcon, strctComputeDiff, strctFormatBytes, strctFormatDuration, strctFormatRate, strctFormatSi, strctValidationIcon, strctValidationTone };
15819
+ export { STRCT_ICONS, STRCT_ICON_GROUPS, STRCT_ICON_NAMES, STRCT_MASKS, STRCT_PALETTES, STRCT_RAW_ICONS, STRCT_TIME_RANGE_PRESETS, StrctAccordion, StrctAccordionPanel, StrctAlert, StrctAnnouncer, StrctAvatar, StrctBadge, StrctBreadcrumb, StrctBreadcrumbItem, StrctButton, StrctButtonGroup, StrctBytesPipe, StrctCard, StrctCardBlock, StrctCardFooter, StrctCardHeader, StrctCascadeHost, StrctCascadeNode, StrctCascadeSelect, StrctCellDef, StrctCellStatus, StrctChart, StrctCheckbox, StrctChips, StrctCode, StrctColorPicker, StrctCombobox, StrctCommandPalette, StrctContextMenu, StrctContextMenuTrigger, StrctCopy, StrctDatagrid, StrctDatagridActionBar, StrctDatepicker, StrctDesc, StrctDescriptionList, StrctDiff, StrctDivider, StrctDonut, StrctDrawer, StrctDrawerFooter, StrctDropdown, StrctDropdownDivider, StrctDropdownItem, StrctDropdownTrigger, StrctDurationPipe, StrctEmptyState, StrctField, StrctFile, StrctFilterBar, StrctFlow, StrctFooter, StrctGauge, StrctHeader, StrctHero, StrctHotkeysHelp, StrctHotkeysService, StrctIcon, StrctInput, StrctInputMask, StrctInputOtp, StrctKbd, StrctKnob, StrctLogViewer, StrctLogin, StrctMenuPanel, StrctMenuService, StrctMenubar, StrctMetricTile, StrctModal, StrctNav, StrctNavItem, StrctOverlay, StrctPageHeader, StrctPageHeaderActions, StrctPageHeaderCrumbs, StrctPagination, StrctPassword, StrctProgress, StrctRadio, StrctRadioGroup, StrctRail, StrctRange, StrctRatePipe, StrctRating, StrctReorder, StrctReorderItem, StrctRowDetailDef, StrctSearchbox, StrctSectionMenu, StrctSegmented, StrctShell, StrctShellService, StrctSiPipe, StrctSignpost, StrctSkeleton, StrctSparkline, StrctSpeedDial, StrctSpinner, StrctSplitButton, StrctSplitter, StrctStack, StrctStackItem, StrctStep, StrctSubmenu, StrctTab, StrctTable, StrctTabs, StrctTag, StrctThemeService, StrctThemeSwitcher, StrctTimeRangePicker, StrctTimeline, StrctTimelineItem, StrctToastOutlet, StrctToastService, StrctToggle, StrctTooltip, StrctTour, StrctTransfer, StrctTree, StrctTreeNode, StrctVerticalNav, StrctWatermark, StrctWizard, StrctWizardAside, parseAnsi, registerStrctIcon, strctComputeDiff, strctFormatBytes, strctFormatDuration, strctFormatRate, strctFormatSi, strctValidationIcon, strctValidationTone };
15657
15820
  //# sourceMappingURL=akcelik-strct.mjs.map