valtech-components 2.0.348 → 2.0.350
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/esm2022/lib/components/atoms/display/display.component.mjs +10 -3
- package/esm2022/lib/components/atoms/title/title.component.mjs +13 -3
- package/esm2022/lib/components/molecules/plain-code-box/plain-code-box.component.mjs +3 -3
- package/esm2022/lib/components/molecules/title-block/title-block.component.mjs +5 -1
- package/esm2022/lib/components/organisms/banner/banner.component.mjs +5 -1
- package/esm2022/lib/components/organisms/no-content/no-content.component.mjs +5 -1
- package/esm2022/lib/components/organisms/wizard/wizard.component.mjs +17 -4
- package/fesm2022/valtech-components.mjs +50 -8
- package/fesm2022/valtech-components.mjs.map +1 -1
- package/lib/components/atoms/display/display.component.d.ts +4 -2
- package/lib/components/atoms/title/title.component.d.ts +5 -2
- package/lib/components/organisms/article/article.component.d.ts +2 -2
- package/package.json +1 -1
- package/src/lib/components/styles/prism.scss +1 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { EventEmitter, Component, Input, Output, Injectable, inject, InjectionToken, Inject, Pipe, ChangeDetectionStrategy, ViewChild
|
|
2
|
+
import { EventEmitter, Component, Input, Output, Injectable, inject, InjectionToken, Inject, ChangeDetectorRef, Pipe, ChangeDetectionStrategy, ViewChild } from '@angular/core';
|
|
3
3
|
import { IonAvatar, IonCard, IonIcon, IonButton, IonSpinner, IonText, IonProgressBar, IonCardContent, IonCardHeader, IonCardTitle, IonCardSubtitle, IonCheckbox, IonButtons, IonTextarea, IonDatetime, IonDatetimeButton, IonModal, IonInput, IonSelect, IonSelectOption, IonLabel, IonRadioGroup, IonRadio, IonSearchbar, IonToolbar, IonTitle, IonMenuButton, IonFooter, IonHeader, IonList, IonListHeader, IonNote, IonItem, IonContent } from '@ionic/angular/standalone';
|
|
4
4
|
import * as i1 from '@angular/common';
|
|
5
5
|
import { CommonModule, NgStyle, AsyncPipe, NgFor, NgClass } from '@angular/common';
|
|
@@ -1579,10 +1579,17 @@ class DisplayComponent {
|
|
|
1579
1579
|
constructor() {
|
|
1580
1580
|
this.subscriptions = new Subscription();
|
|
1581
1581
|
this.langService = inject(LangService);
|
|
1582
|
+
this.cdr = inject(ChangeDetectorRef);
|
|
1582
1583
|
}
|
|
1583
1584
|
ngOnInit() {
|
|
1584
1585
|
this.initializeDisplayContent();
|
|
1585
1586
|
}
|
|
1587
|
+
ngOnChanges(changes) {
|
|
1588
|
+
if (changes['props']) {
|
|
1589
|
+
this.initializeDisplayContent();
|
|
1590
|
+
this.cdr.detectChanges();
|
|
1591
|
+
}
|
|
1592
|
+
}
|
|
1586
1593
|
ngOnDestroy() {
|
|
1587
1594
|
this.subscriptions.unsubscribe();
|
|
1588
1595
|
}
|
|
@@ -1603,7 +1610,7 @@ class DisplayComponent {
|
|
|
1603
1610
|
this.displayContent$ = of('');
|
|
1604
1611
|
}
|
|
1605
1612
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DisplayComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1606
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: DisplayComponent, isStandalone: true, selector: "val-display", inputs: { props: "props" }, ngImport: i0, template: `
|
|
1613
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: DisplayComponent, isStandalone: true, selector: "val-display", inputs: { props: "props" }, usesOnChanges: true, ngImport: i0, template: `
|
|
1607
1614
|
<ion-text [color]="props.color">
|
|
1608
1615
|
<p [class]="props.size">
|
|
1609
1616
|
{{ displayContent$ | async }}
|
|
@@ -2599,8 +2606,18 @@ function createTextProps(contentConfig, styleConfig = {}) {
|
|
|
2599
2606
|
class TitleComponent {
|
|
2600
2607
|
constructor() {
|
|
2601
2608
|
this.langService = inject(LangService);
|
|
2609
|
+
this.cdr = inject(ChangeDetectorRef);
|
|
2602
2610
|
}
|
|
2603
2611
|
ngOnInit() {
|
|
2612
|
+
this.updateContent();
|
|
2613
|
+
}
|
|
2614
|
+
ngOnChanges(changes) {
|
|
2615
|
+
if (changes['props']) {
|
|
2616
|
+
this.updateContent();
|
|
2617
|
+
this.cdr.detectChanges();
|
|
2618
|
+
}
|
|
2619
|
+
}
|
|
2620
|
+
updateContent() {
|
|
2604
2621
|
// Always convert to Observable for consistent template handling
|
|
2605
2622
|
if (shouldUseReactiveContent(this.props)) {
|
|
2606
2623
|
// Use reactive content with LangService
|
|
@@ -2614,7 +2631,7 @@ class TitleComponent {
|
|
|
2614
2631
|
}
|
|
2615
2632
|
}
|
|
2616
2633
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TitleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2617
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: TitleComponent, isStandalone: true, selector: "val-title", inputs: { props: "props" }, ngImport: i0, template: `
|
|
2634
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: TitleComponent, isStandalone: true, selector: "val-title", inputs: { props: "props" }, usesOnChanges: true, ngImport: i0, template: `
|
|
2618
2635
|
<ion-text [color]="props.color">
|
|
2619
2636
|
@if (!props.bold) {
|
|
2620
2637
|
<p [ngClass]="[props.size]" [class.thin]="props.thin">
|
|
@@ -4289,7 +4306,11 @@ class TitleBlockComponent {
|
|
|
4289
4306
|
ngOnInit() { }
|
|
4290
4307
|
ngOnChanges(changes) {
|
|
4291
4308
|
if (changes['props']) {
|
|
4309
|
+
// Forzar detección de cambios múltiple
|
|
4292
4310
|
this.cdr.detectChanges();
|
|
4311
|
+
setTimeout(() => {
|
|
4312
|
+
this.cdr.detectChanges();
|
|
4313
|
+
}, 0);
|
|
4293
4314
|
}
|
|
4294
4315
|
}
|
|
4295
4316
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TitleBlockComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
@@ -5831,7 +5852,7 @@ class PlainCodeBoxComponent {
|
|
|
5831
5852
|
<span [class]="line.type ? 'line-' + line.type : 'line-normal'">{{ line.text }}</span><br *ngIf="i < props.lines.length - 1">
|
|
5832
5853
|
</ng-container></code></pre>
|
|
5833
5854
|
</div>
|
|
5834
|
-
`, isInline: true, styles: [".code-box-container{position:relative;background-color:#282c34;border-radius:16px;overflow:hidden;box-shadow:0 4px 15px #0009;margin:16px 0}@media (prefers-color-scheme: light){.code-box-container{background-color:#fff;box-shadow:0 2px 4px #0000001a}}.copy-button{position:absolute;top:8px;right:8px;z-index:10;--padding-start: 2px;--padding-end: 2px;--padding-top: 2px;--padding-bottom: 2px;min-width:28px;min-height:28px;height:28px;width:28px;color:#61afef;background:#0006;border-radius:6px;box-shadow:0 1px 4px #0000000d;display:flex;align-items:center;justify-content:center;transition:background .2s ease,color .2s ease}.copy-button:hover{background:#00000080;color:#8cc4ff}.copy-button ion-icon{font-size:1.2em;margin:0}@media (prefers-color-scheme: light){.copy-button{color:var(--ion-color-primary, #007bff);background:#ffffffb3}.copy-button:hover{background:#ffffffe6;color:var(--ion-color-primary-tint, #3880ff)}}pre{margin:0;background-color:transparent;min-width:100%;min-height:100%;white-space:pre-wrap;word-break:normal;font-family:Roboto Mono,monospace;padding:0}code{font-family:Roboto Mono,monospace;font-size:.9em;line-height:1.6;display:block;white-space:inherit;word-break:inherit;color:#abb2bf}@media (prefers-color-scheme: light){code{color:#333}}code .line-normal{color:#abb2bf}@media (prefers-color-scheme: light){code .line-normal{color:#333}}code .line-command{color:#c678dd}@media (prefers-color-scheme: light){code .line-command{color:var(--ion-color-primary, #3880ff)}}code .line-error{color:#e06c75}@media (prefers-color-scheme: light){code .line-error{color:var(--ion-color-danger, #eb445a)}}code .line-success{color:#98c379}@media (prefers-color-scheme: light){code .line-success{color:var(--ion-color-success, #2dd36f)}}code .token.comment{color:#5c6370}code .token.selector,code .token.string{color:#98c379}code .token.punctuation{color:#abb2bf}code .token.operator{color:#c678dd}code .token.boolean,code .token.number{color:#d19a66}code .token.function{color:#61afef}code .token.keyword{color:#c678dd}code .token.class-name{color:#e6c07b}code .token.tag{color:#e06c75}code .token.attr-name{color:#d19a66}code .token.attr-value{color:#98c379}code .token.property{color:#56b6c2}code .token.variable{color:#e06c75}@media (max-width: 600px){.code-box-container{border-radius:16px}.copy-button{top:6px;right:6px;min-width:24px;min-height:24px;height:24px;width:24px}.copy-button ion-icon{font-size:1em}pre{padding:0}code{font-size:.8em;line-height:1.5}}@media (min-width: 601px) and (max-width: 1024px){code{font-size:.9em}}@media (min-width: 1025px){code{font-size:1em}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { kind: "component", type: IonButton, selector: "ion-button", inputs: ["buttonType", "color", "disabled", "download", "expand", "fill", "form", "href", "mode", "rel", "routerAnimation", "routerDirection", "shape", "size", "strong", "target", "type"] }] }); }
|
|
5855
|
+
`, isInline: true, styles: [".code-box-container{position:relative;background-color:#282c34;border-radius:16px;overflow:hidden;box-shadow:0 4px 15px #0009;margin:16px 0}@media (prefers-color-scheme: light){.code-box-container{background-color:#fff;box-shadow:0 2px 4px #0000001a}}.copy-button{position:absolute;top:8px;right:8px;z-index:10;--padding-start: 2px;--padding-end: 2px;--padding-top: 2px;--padding-bottom: 2px;min-width:28px;min-height:28px;height:28px;width:28px;color:#61afef;background:#0006;border-radius:6px;box-shadow:0 1px 4px #0000000d;display:flex;align-items:center;justify-content:center;transition:background .2s ease,color .2s ease}.copy-button:hover{background:#00000080;color:#8cc4ff}.copy-button ion-icon{font-size:1.2em;margin:0}@media (prefers-color-scheme: light){.copy-button{color:var(--ion-color-primary, #007bff);background:#ffffffb3}.copy-button:hover{background:#ffffffe6;color:var(--ion-color-primary-tint, #3880ff)}}pre{margin:0;background-color:transparent;min-width:100%;min-height:100%;white-space:pre-wrap;word-break:normal;font-family:Roboto Mono,monospace;padding:0}code{font-family:Roboto Mono,monospace;font-size:.9em;line-height:1.6;display:block;white-space:inherit;word-break:inherit;color:#abb2bf;padding:16px}@media (prefers-color-scheme: light){code{color:#333}}code .line-normal{color:#abb2bf}@media (prefers-color-scheme: light){code .line-normal{color:#333}}code .line-command{color:#c678dd}@media (prefers-color-scheme: light){code .line-command{color:var(--ion-color-primary, #3880ff)}}code .line-error{color:#e06c75}@media (prefers-color-scheme: light){code .line-error{color:var(--ion-color-danger, #eb445a)}}code .line-success{color:#98c379}@media (prefers-color-scheme: light){code .line-success{color:var(--ion-color-success, #2dd36f)}}code .token.comment{color:#5c6370}code .token.selector,code .token.string{color:#98c379}code .token.punctuation{color:#abb2bf}code .token.operator{color:#c678dd}code .token.boolean,code .token.number{color:#d19a66}code .token.function{color:#61afef}code .token.keyword{color:#c678dd}code .token.class-name{color:#e6c07b}code .token.tag{color:#e06c75}code .token.attr-name{color:#d19a66}code .token.attr-value{color:#98c379}code .token.property{color:#56b6c2}code .token.variable{color:#e06c75}@media (max-width: 600px){.code-box-container{border-radius:16px}.copy-button{top:6px;right:6px;min-width:24px;min-height:24px;height:24px;width:24px}.copy-button ion-icon{font-size:1em}pre{padding:0}code{font-size:.8em;line-height:1.5}}@media (min-width: 601px) and (max-width: 1024px){code{font-size:.9em}}@media (min-width: 1025px){code{font-size:1em}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { kind: "component", type: IonButton, selector: "ion-button", inputs: ["buttonType", "color", "disabled", "download", "expand", "fill", "form", "href", "mode", "rel", "routerAnimation", "routerDirection", "shape", "size", "strong", "target", "type"] }] }); }
|
|
5835
5856
|
}
|
|
5836
5857
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PlainCodeBoxComponent, decorators: [{
|
|
5837
5858
|
type: Component,
|
|
@@ -5845,7 +5866,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
5845
5866
|
<span [class]="line.type ? 'line-' + line.type : 'line-normal'">{{ line.text }}</span><br *ngIf="i < props.lines.length - 1">
|
|
5846
5867
|
</ng-container></code></pre>
|
|
5847
5868
|
</div>
|
|
5848
|
-
`, styles: [".code-box-container{position:relative;background-color:#282c34;border-radius:16px;overflow:hidden;box-shadow:0 4px 15px #0009;margin:16px 0}@media (prefers-color-scheme: light){.code-box-container{background-color:#fff;box-shadow:0 2px 4px #0000001a}}.copy-button{position:absolute;top:8px;right:8px;z-index:10;--padding-start: 2px;--padding-end: 2px;--padding-top: 2px;--padding-bottom: 2px;min-width:28px;min-height:28px;height:28px;width:28px;color:#61afef;background:#0006;border-radius:6px;box-shadow:0 1px 4px #0000000d;display:flex;align-items:center;justify-content:center;transition:background .2s ease,color .2s ease}.copy-button:hover{background:#00000080;color:#8cc4ff}.copy-button ion-icon{font-size:1.2em;margin:0}@media (prefers-color-scheme: light){.copy-button{color:var(--ion-color-primary, #007bff);background:#ffffffb3}.copy-button:hover{background:#ffffffe6;color:var(--ion-color-primary-tint, #3880ff)}}pre{margin:0;background-color:transparent;min-width:100%;min-height:100%;white-space:pre-wrap;word-break:normal;font-family:Roboto Mono,monospace;padding:0}code{font-family:Roboto Mono,monospace;font-size:.9em;line-height:1.6;display:block;white-space:inherit;word-break:inherit;color:#abb2bf}@media (prefers-color-scheme: light){code{color:#333}}code .line-normal{color:#abb2bf}@media (prefers-color-scheme: light){code .line-normal{color:#333}}code .line-command{color:#c678dd}@media (prefers-color-scheme: light){code .line-command{color:var(--ion-color-primary, #3880ff)}}code .line-error{color:#e06c75}@media (prefers-color-scheme: light){code .line-error{color:var(--ion-color-danger, #eb445a)}}code .line-success{color:#98c379}@media (prefers-color-scheme: light){code .line-success{color:var(--ion-color-success, #2dd36f)}}code .token.comment{color:#5c6370}code .token.selector,code .token.string{color:#98c379}code .token.punctuation{color:#abb2bf}code .token.operator{color:#c678dd}code .token.boolean,code .token.number{color:#d19a66}code .token.function{color:#61afef}code .token.keyword{color:#c678dd}code .token.class-name{color:#e6c07b}code .token.tag{color:#e06c75}code .token.attr-name{color:#d19a66}code .token.attr-value{color:#98c379}code .token.property{color:#56b6c2}code .token.variable{color:#e06c75}@media (max-width: 600px){.code-box-container{border-radius:16px}.copy-button{top:6px;right:6px;min-width:24px;min-height:24px;height:24px;width:24px}.copy-button ion-icon{font-size:1em}pre{padding:0}code{font-size:.8em;line-height:1.5}}@media (min-width: 601px) and (max-width: 1024px){code{font-size:.9em}}@media (min-width: 1025px){code{font-size:1em}}\n"] }]
|
|
5869
|
+
`, styles: [".code-box-container{position:relative;background-color:#282c34;border-radius:16px;overflow:hidden;box-shadow:0 4px 15px #0009;margin:16px 0}@media (prefers-color-scheme: light){.code-box-container{background-color:#fff;box-shadow:0 2px 4px #0000001a}}.copy-button{position:absolute;top:8px;right:8px;z-index:10;--padding-start: 2px;--padding-end: 2px;--padding-top: 2px;--padding-bottom: 2px;min-width:28px;min-height:28px;height:28px;width:28px;color:#61afef;background:#0006;border-radius:6px;box-shadow:0 1px 4px #0000000d;display:flex;align-items:center;justify-content:center;transition:background .2s ease,color .2s ease}.copy-button:hover{background:#00000080;color:#8cc4ff}.copy-button ion-icon{font-size:1.2em;margin:0}@media (prefers-color-scheme: light){.copy-button{color:var(--ion-color-primary, #007bff);background:#ffffffb3}.copy-button:hover{background:#ffffffe6;color:var(--ion-color-primary-tint, #3880ff)}}pre{margin:0;background-color:transparent;min-width:100%;min-height:100%;white-space:pre-wrap;word-break:normal;font-family:Roboto Mono,monospace;padding:0}code{font-family:Roboto Mono,monospace;font-size:.9em;line-height:1.6;display:block;white-space:inherit;word-break:inherit;color:#abb2bf;padding:16px}@media (prefers-color-scheme: light){code{color:#333}}code .line-normal{color:#abb2bf}@media (prefers-color-scheme: light){code .line-normal{color:#333}}code .line-command{color:#c678dd}@media (prefers-color-scheme: light){code .line-command{color:var(--ion-color-primary, #3880ff)}}code .line-error{color:#e06c75}@media (prefers-color-scheme: light){code .line-error{color:var(--ion-color-danger, #eb445a)}}code .line-success{color:#98c379}@media (prefers-color-scheme: light){code .line-success{color:var(--ion-color-success, #2dd36f)}}code .token.comment{color:#5c6370}code .token.selector,code .token.string{color:#98c379}code .token.punctuation{color:#abb2bf}code .token.operator{color:#c678dd}code .token.boolean,code .token.number{color:#d19a66}code .token.function{color:#61afef}code .token.keyword{color:#c678dd}code .token.class-name{color:#e6c07b}code .token.tag{color:#e06c75}code .token.attr-name{color:#d19a66}code .token.attr-value{color:#98c379}code .token.property{color:#56b6c2}code .token.variable{color:#e06c75}@media (max-width: 600px){.code-box-container{border-radius:16px}.copy-button{top:6px;right:6px;min-width:24px;min-height:24px;height:24px;width:24px}.copy-button ion-icon{font-size:1em}pre{padding:0}code{font-size:.8em;line-height:1.5}}@media (min-width: 601px) and (max-width: 1024px){code{font-size:.9em}}@media (min-width: 1025px){code{font-size:1em}}\n"] }]
|
|
5849
5870
|
}], ctorParameters: () => [], propDecorators: { props: [{
|
|
5850
5871
|
type: Input
|
|
5851
5872
|
}], codeBlock: [{
|
|
@@ -6492,7 +6513,11 @@ class BannerComponent {
|
|
|
6492
6513
|
ngOnInit() { }
|
|
6493
6514
|
ngOnChanges(changes) {
|
|
6494
6515
|
if (changes['props']) {
|
|
6516
|
+
// Forzar detección de cambios múltiple
|
|
6495
6517
|
this.cdr.detectChanges();
|
|
6518
|
+
setTimeout(() => {
|
|
6519
|
+
this.cdr.detectChanges();
|
|
6520
|
+
}, 0);
|
|
6496
6521
|
}
|
|
6497
6522
|
}
|
|
6498
6523
|
clickHandler(token) {
|
|
@@ -7691,7 +7716,11 @@ class NoContentComponent {
|
|
|
7691
7716
|
ngOnInit() { }
|
|
7692
7717
|
ngOnChanges(changes) {
|
|
7693
7718
|
if (changes['props']) {
|
|
7719
|
+
// Forzar detección de cambios múltiple para asegurar actualización
|
|
7694
7720
|
this.cdr.detectChanges();
|
|
7721
|
+
setTimeout(() => {
|
|
7722
|
+
this.cdr.detectChanges();
|
|
7723
|
+
}, 0);
|
|
7695
7724
|
}
|
|
7696
7725
|
}
|
|
7697
7726
|
onClickHandler(token) {
|
|
@@ -7864,7 +7893,16 @@ class WizardComponent {
|
|
|
7864
7893
|
if (this.props?.steps && this.props?.current) {
|
|
7865
7894
|
this.currentStep = this.props.steps[this.props.current];
|
|
7866
7895
|
// Forzar nueva referencia de objeto para asegurar detección de cambios
|
|
7867
|
-
|
|
7896
|
+
// Agregar timestamp para garantizar que es un objeto completamente nuevo
|
|
7897
|
+
this.currentStepTitles = this.currentStep?.titles
|
|
7898
|
+
? {
|
|
7899
|
+
...JSON.parse(JSON.stringify(this.currentStep.titles)),
|
|
7900
|
+
_timestamp: Date.now(), // Forzar nueva referencia
|
|
7901
|
+
_step: this.props.current, // Agregar identificador del paso
|
|
7902
|
+
}
|
|
7903
|
+
: null;
|
|
7904
|
+
// Forzar detección de cambios inmediatamente
|
|
7905
|
+
this.cdr.detectChanges();
|
|
7868
7906
|
}
|
|
7869
7907
|
}
|
|
7870
7908
|
working() {
|
|
@@ -7900,7 +7938,11 @@ class WizardComponent {
|
|
|
7900
7938
|
}
|
|
7901
7939
|
this.props.current = newStep;
|
|
7902
7940
|
this.updateCurrentStep();
|
|
7941
|
+
// Forzar múltiples ciclos de detección de cambios
|
|
7903
7942
|
this.cdr.detectChanges();
|
|
7943
|
+
setTimeout(() => {
|
|
7944
|
+
this.cdr.detectChanges();
|
|
7945
|
+
}, 0);
|
|
7904
7946
|
goToTop(this.wrapperId);
|
|
7905
7947
|
}
|
|
7906
7948
|
setError(error) {
|
|
@@ -7929,7 +7971,7 @@ class WizardComponent {
|
|
|
7929
7971
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: WizardComponent, isStandalone: true, selector: "val-wizard", inputs: { props: "props" }, outputs: { onClick: "onClick" }, usesOnChanges: true, ngImport: i0, template: `
|
|
7930
7972
|
<div [id]="wrapperId" class="wrapper">
|
|
7931
7973
|
<ng-container *ngIf="props.state !== 'ERROR'">
|
|
7932
|
-
<val-no-content [props]="currentStepTitles"></val-no-content>
|
|
7974
|
+
<val-no-content [props]="currentStepTitles" [attr.data-step]="props.current"></val-no-content>
|
|
7933
7975
|
<div class="step">
|
|
7934
7976
|
<div *ngIf="props.state === 'WORKING'">
|
|
7935
7977
|
<val-content-loader
|
|
@@ -7955,7 +7997,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
7955
7997
|
args: [{ selector: 'val-wizard', standalone: true, imports: [CommonModule, NoContentComponent, ContentLoaderComponent], template: `
|
|
7956
7998
|
<div [id]="wrapperId" class="wrapper">
|
|
7957
7999
|
<ng-container *ngIf="props.state !== 'ERROR'">
|
|
7958
|
-
<val-no-content [props]="currentStepTitles"></val-no-content>
|
|
8000
|
+
<val-no-content [props]="currentStepTitles" [attr.data-step]="props.current"></val-no-content>
|
|
7959
8001
|
<div class="step">
|
|
7960
8002
|
<div *ngIf="props.state === 'WORKING'">
|
|
7961
8003
|
<val-content-loader
|