valtech-components 2.0.974 → 2.0.975

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.
Files changed (24) hide show
  1. package/esm2022/lib/components/organisms/settings-hub/settings-hub.component.mjs +152 -0
  2. package/esm2022/lib/components/organisms/settings-hub/settings-hub.i18n.mjs +57 -0
  3. package/esm2022/lib/components/organisms/settings-hub/settings-sections.mjs +137 -0
  4. package/esm2022/lib/components/organisms/settings-hub/settings.routes.mjs +59 -0
  5. package/esm2022/lib/components/organisms/settings-hub/types.mjs +2 -0
  6. package/esm2022/lib/version.mjs +2 -2
  7. package/esm2022/public-api.mjs +5 -1
  8. package/fesm2022/valtech-components.mjs +393 -2
  9. package/fesm2022/valtech-components.mjs.map +1 -1
  10. package/lib/components/atoms/rights-footer/rights-footer.component.d.ts +1 -1
  11. package/lib/components/atoms/text/text.component.d.ts +1 -1
  12. package/lib/components/atoms/user-avatar/user-avatar.component.d.ts +1 -1
  13. package/lib/components/molecules/features-list/features-list.component.d.ts +1 -1
  14. package/lib/components/organisms/article/article.component.d.ts +5 -5
  15. package/lib/components/organisms/landing-steps/landing-steps.component.d.ts +1 -1
  16. package/lib/components/organisms/settings-hub/settings-hub.component.d.ts +43 -0
  17. package/lib/components/organisms/settings-hub/settings-hub.i18n.d.ts +13 -0
  18. package/lib/components/organisms/settings-hub/settings-sections.d.ts +62 -0
  19. package/lib/components/organisms/settings-hub/settings.routes.d.ts +59 -0
  20. package/lib/components/organisms/settings-hub/types.d.ts +37 -0
  21. package/lib/components/organisms/share-profile-modal/share-profile-modal.component.d.ts +1 -1
  22. package/lib/version.d.ts +1 -1
  23. package/package.json +1 -1
  24. package/public-api.d.ts +4 -0
@@ -0,0 +1,152 @@
1
+ import { Component, computed, inject, Input } from '@angular/core';
2
+ import { ActivatedRoute, Router } from '@angular/router';
3
+ import { IonCol, IonGrid, IonRow } from '@ionic/angular/standalone';
4
+ import { ActionCardComponent } from '../../molecules/action-card/action-card.component';
5
+ import { DisplayComponent } from '../../atoms/display/display.component';
6
+ import { TitleComponent } from '../../atoms/title/title.component';
7
+ import { I18nService } from '../../../services/i18n';
8
+ import { NavigationService } from '../../../services/navigation/navigation.service';
9
+ import { buildSettingsCards } from './settings-sections';
10
+ import { SETTINGS_HUB_LABELS_I18N, SETTINGS_HUB_PAGE_I18N } from './settings-hub.i18n';
11
+ import * as i0 from "@angular/core";
12
+ const DEFAULT_LABELS_NS = 'Dashboard';
13
+ const DEFAULT_PAGE_NS = 'Settings.Preferences';
14
+ /**
15
+ * `val-settings-hub` — portada de la sección Settings (organism). Renderiza un
16
+ * header (título + descripción) + un grid de `val-action-card` que navega a las
17
+ * sub-vistas. Promovido desde `showcase` (`pages/settings/pages/preferences`)
18
+ * bajo el proceso de ADR-021.
19
+ *
20
+ * Las cards salen de `buildSettingsCards` sobre el catálogo default
21
+ * (`SETTINGS_SECTIONS_CATALOG`), filtrado/extendido/reordenado por la config.
22
+ *
23
+ * Navegación: cards con `routerLink` navegan vía `Router`; la card de logout
24
+ * (sin ruta) invoca `config.onLogout`. Cada click emite `config.onSectionClick`.
25
+ *
26
+ * NO renderiza ion-content — vive dentro de val-page-wrapper.
27
+ *
28
+ * Auto-registra sus dos sets de defaults i18n (labels + header) en sus
29
+ * respectivos namespaces si el consumer no los proveyó.
30
+ */
31
+ export class SettingsHubComponent {
32
+ get labelsNs() {
33
+ return this.resolvedConfig().i18nNamespace;
34
+ }
35
+ get pageNs() {
36
+ return this.resolvedConfig().pageI18nNamespace;
37
+ }
38
+ constructor() {
39
+ this.nav = inject(NavigationService);
40
+ this.i18n = inject(I18nService);
41
+ this.router = inject(Router);
42
+ this.route = inject(ActivatedRoute, { optional: true });
43
+ this.resolvedConfig = computed(() => {
44
+ const fromRoute = (this.route?.snapshot.data['settingsHubConfig'] ?? {});
45
+ const merged = { ...fromRoute, ...(this.config ?? {}) };
46
+ return {
47
+ ...merged,
48
+ i18nNamespace: merged.i18nNamespace ?? DEFAULT_LABELS_NS,
49
+ pageI18nNamespace: merged.pageI18nNamespace ?? DEFAULT_PAGE_NS,
50
+ };
51
+ });
52
+ this.pageTitle = computed(() => {
53
+ this.i18n.lang();
54
+ return this.i18n.t('pageTitle', this.pageNs);
55
+ });
56
+ this.pageDescription = computed(() => {
57
+ this.i18n.lang();
58
+ return this.i18n.t('pageDescription', this.pageNs);
59
+ });
60
+ /** Cards del HUB, resueltas desde la config. */
61
+ this.actionCards = computed(() => {
62
+ this.i18n.lang();
63
+ const cfg = this.resolvedConfig();
64
+ return buildSettingsCards(k => this.i18n.t(k, cfg.i18nNamespace), {
65
+ exclude: cfg.exclude,
66
+ include: cfg.include,
67
+ order: cfg.order,
68
+ includeLogout: cfg.includeLogout,
69
+ basePath: cfg.basePath,
70
+ });
71
+ });
72
+ // Auto-registro i18n — respeta override del consumer. Los namespaces pueden
73
+ // venir de @Input.config o del route data; los resolvemos acá.
74
+ const labelsNs = this.labelsNs;
75
+ if (!this.i18n.hasNamespace(labelsNs)) {
76
+ this.i18n.registerContent(labelsNs, SETTINGS_HUB_LABELS_I18N);
77
+ }
78
+ const pageNs = this.pageNs;
79
+ if (!this.i18n.hasNamespace(pageNs)) {
80
+ this.i18n.registerContent(pageNs, SETTINGS_HUB_PAGE_I18N);
81
+ }
82
+ this.nav.setBackHeader('pageTitle', pageNs, { withMenu: true });
83
+ }
84
+ onActionClick(action) {
85
+ const token = action.token;
86
+ this.resolvedConfig().onSectionClick?.(token ?? '');
87
+ if (token === 'action-logout') {
88
+ this.resolvedConfig().onLogout?.();
89
+ return;
90
+ }
91
+ if (action.routerLink) {
92
+ this.router.navigate(Array.isArray(action.routerLink) ? action.routerLink : [action.routerLink]);
93
+ }
94
+ }
95
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SettingsHubComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
96
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: SettingsHubComponent, isStandalone: true, selector: "val-settings-hub", inputs: { config: "config" }, ngImport: i0, template: `
97
+ <div class="page">
98
+ <header class="page-header">
99
+ <val-display [props]="{ size: 'small', color: 'dark', content: pageTitle() }" />
100
+ <val-title
101
+ [props]="{
102
+ size: 'large',
103
+ color: 'dark',
104
+ bold: false,
105
+ content: pageDescription(),
106
+ }"
107
+ />
108
+ </header>
109
+
110
+ <ion-grid class="cards-grid">
111
+ <ion-row>
112
+ @for (action of actionCards(); track action.token) {
113
+ <ion-col size="12" size-sm="6">
114
+ <val-action-card [props]="action" (onClick)="onActionClick(action)" />
115
+ </ion-col>
116
+ }
117
+ </ion-row>
118
+ </ion-grid>
119
+ </div>
120
+ `, isInline: true, styles: [".page{padding:16px 0;max-width:720px;margin:0 auto}.page-header{margin-bottom:16px}.cards-grid{margin:0 -4px;padding:0}.cards-grid ion-col{padding:4px}\n"], dependencies: [{ kind: "component", type: IonGrid, selector: "ion-grid", inputs: ["fixed"] }, { kind: "component", type: IonRow, selector: "ion-row" }, { kind: "component", type: IonCol, selector: "ion-col", inputs: ["offset", "offsetLg", "offsetMd", "offsetSm", "offsetXl", "offsetXs", "pull", "pullLg", "pullMd", "pullSm", "pullXl", "pullXs", "push", "pushLg", "pushMd", "pushSm", "pushXl", "pushXs", "size", "sizeLg", "sizeMd", "sizeSm", "sizeXl", "sizeXs"] }, { kind: "component", type: ActionCardComponent, selector: "val-action-card", inputs: ["props"], outputs: ["onClick"] }, { kind: "component", type: DisplayComponent, selector: "val-display", inputs: ["props"] }, { kind: "component", type: TitleComponent, selector: "val-title", inputs: ["props"] }] }); }
121
+ }
122
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SettingsHubComponent, decorators: [{
123
+ type: Component,
124
+ args: [{ selector: 'val-settings-hub', standalone: true, imports: [IonGrid, IonRow, IonCol, ActionCardComponent, DisplayComponent, TitleComponent], template: `
125
+ <div class="page">
126
+ <header class="page-header">
127
+ <val-display [props]="{ size: 'small', color: 'dark', content: pageTitle() }" />
128
+ <val-title
129
+ [props]="{
130
+ size: 'large',
131
+ color: 'dark',
132
+ bold: false,
133
+ content: pageDescription(),
134
+ }"
135
+ />
136
+ </header>
137
+
138
+ <ion-grid class="cards-grid">
139
+ <ion-row>
140
+ @for (action of actionCards(); track action.token) {
141
+ <ion-col size="12" size-sm="6">
142
+ <val-action-card [props]="action" (onClick)="onActionClick(action)" />
143
+ </ion-col>
144
+ }
145
+ </ion-row>
146
+ </ion-grid>
147
+ </div>
148
+ `, styles: [".page{padding:16px 0;max-width:720px;margin:0 auto}.page-header{margin-bottom:16px}.cards-grid{margin:0 -4px;padding:0}.cards-grid ion-col{padding:4px}\n"] }]
149
+ }], ctorParameters: () => [], propDecorators: { config: [{
150
+ type: Input
151
+ }] } });
152
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dGluZ3MtaHViLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9vcmdhbmlzbXMvc2V0dGluZ3MtaHViL3NldHRpbmdzLWh1Yi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRXBFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBRXhGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUVuRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDckQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saURBQWlELENBQUM7QUFHcEYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDekQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLHNCQUFzQixFQUFFLE1BQU0scUJBQXFCLENBQUM7O0FBRXZGLE1BQU0saUJBQWlCLEdBQUcsV0FBVyxDQUFDO0FBQ3RDLE1BQU0sZUFBZSxHQUFHLHNCQUFzQixDQUFDO0FBRS9DOzs7Ozs7Ozs7Ozs7Ozs7O0dBZ0JHO0FBa0RILE1BQU0sT0FBTyxvQkFBb0I7SUF5Qi9CLElBQVksUUFBUTtRQUNsQixPQUFPLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQyxhQUFhLENBQUM7SUFDN0MsQ0FBQztJQUNELElBQVksTUFBTTtRQUNoQixPQUFPLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQztJQUNqRCxDQUFDO0lBd0JEO1FBckRRLFFBQUcsR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUNoQyxTQUFJLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzNCLFdBQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDeEIsVUFBSyxHQUFHLE1BQU0sQ0FBQyxjQUFjLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQVNsRCxtQkFBYyxHQUFHLFFBQVEsQ0FFaEMsR0FBRyxFQUFFO1lBQ0wsTUFBTSxTQUFTLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLFFBQVEsQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxFQUFFLENBQXNCLENBQUM7WUFDOUYsTUFBTSxNQUFNLEdBQXNCLEVBQUUsR0FBRyxTQUFTLEVBQUUsR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQztZQUMzRSxPQUFPO2dCQUNMLEdBQUcsTUFBTTtnQkFDVCxhQUFhLEVBQUUsTUFBTSxDQUFDLGFBQWEsSUFBSSxpQkFBaUI7Z0JBQ3hELGlCQUFpQixFQUFFLE1BQU0sQ0FBQyxpQkFBaUIsSUFBSSxlQUFlO2FBQy9ELENBQUM7UUFDSixDQUFDLENBQUMsQ0FBQztRQVNNLGNBQVMsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1lBQ2pDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDakIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQy9DLENBQUMsQ0FBQyxDQUFDO1FBQ00sb0JBQWUsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1lBQ3ZDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDakIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxpQkFBaUIsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDckQsQ0FBQyxDQUFDLENBQUM7UUFFSCxnREFBZ0Q7UUFDdkMsZ0JBQVcsR0FBRyxRQUFRLENBQXVCLEdBQUcsRUFBRTtZQUN6RCxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ2pCLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUNsQyxPQUFPLGtCQUFrQixDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxhQUFhLENBQUMsRUFBRTtnQkFDaEUsT0FBTyxFQUFFLEdBQUcsQ0FBQyxPQUFPO2dCQUNwQixPQUFPLEVBQUUsR0FBRyxDQUFDLE9BQU87Z0JBQ3BCLEtBQUssRUFBRSxHQUFHLENBQUMsS0FBSztnQkFDaEIsYUFBYSxFQUFFLEdBQUcsQ0FBQyxhQUFhO2dCQUNoQyxRQUFRLEVBQUUsR0FBRyxDQUFDLFFBQVE7YUFDdkIsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7UUFHRCw0RUFBNEU7UUFDNUUsK0RBQStEO1FBQy9ELE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUM7UUFDL0IsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7WUFDdEMsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxFQUFFLHdCQUF3QixDQUFDLENBQUM7UUFDaEUsQ0FBQztRQUNELE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7UUFDM0IsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7WUFDcEMsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsTUFBTSxFQUFFLHNCQUFzQixDQUFDLENBQUM7UUFDNUQsQ0FBQztRQUVELElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLFdBQVcsRUFBRSxNQUFNLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUNsRSxDQUFDO0lBRUQsYUFBYSxDQUFDLE1BQTBCO1FBQ3RDLE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUM7UUFDM0IsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDLGNBQWMsRUFBRSxDQUFDLEtBQUssSUFBSSxFQUFFLENBQUMsQ0FBQztRQUNwRCxJQUFJLEtBQUssS0FBSyxlQUFlLEVBQUUsQ0FBQztZQUM5QixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQztZQUNuQyxPQUFPO1FBQ1QsQ0FBQztRQUNELElBQUksTUFBTSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ3RCLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO1FBQ25HLENBQUM7SUFDSCxDQUFDOytHQS9FVSxvQkFBb0I7bUdBQXBCLG9CQUFvQiwwR0E3Q3JCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F3QlQsbU9BekJTLE9BQU8sd0VBQUUsTUFBTSxvREFBRSxNQUFNLGtUQUFFLG1CQUFtQixxR0FBRSxnQkFBZ0IsMkVBQUUsY0FBYzs7NEZBOEM3RSxvQkFBb0I7a0JBakRoQyxTQUFTOytCQUNFLGtCQUFrQixjQUNoQixJQUFJLFdBQ1AsQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxtQkFBbUIsRUFBRSxnQkFBZ0IsRUFBRSxjQUFjLENBQUMsWUFDL0U7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXdCVDt3REFnQ1EsTUFBTTtzQkFBZCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBjb21wdXRlZCwgaW5qZWN0LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBJb25Db2wsIElvbkdyaWQsIElvblJvdyB9IGZyb20gJ0Bpb25pYy9hbmd1bGFyL3N0YW5kYWxvbmUnO1xuXG5pbXBvcnQgeyBBY3Rpb25DYXJkQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vbW9sZWN1bGVzL2FjdGlvbi1jYXJkL2FjdGlvbi1jYXJkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBY3Rpb25DYXJkTWV0YWRhdGEgfSBmcm9tICcuLi8uLi9tb2xlY3VsZXMvYWN0aW9uLWNhcmQvdHlwZXMnO1xuaW1wb3J0IHsgRGlzcGxheUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2F0b21zL2Rpc3BsYXkvZGlzcGxheS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGl0bGVDb21wb25lbnQgfSBmcm9tICcuLi8uLi9hdG9tcy90aXRsZS90aXRsZS5jb21wb25lbnQnO1xuXG5pbXBvcnQgeyBJMThuU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2kxOG4nO1xuaW1wb3J0IHsgTmF2aWdhdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9uYXZpZ2F0aW9uL25hdmlnYXRpb24uc2VydmljZSc7XG5cbmltcG9ydCB7IFNldHRpbmdzSHViQ29uZmlnIH0gZnJvbSAnLi90eXBlcyc7XG5pbXBvcnQgeyBidWlsZFNldHRpbmdzQ2FyZHMgfSBmcm9tICcuL3NldHRpbmdzLXNlY3Rpb25zJztcbmltcG9ydCB7IFNFVFRJTkdTX0hVQl9MQUJFTFNfSTE4TiwgU0VUVElOR1NfSFVCX1BBR0VfSTE4TiB9IGZyb20gJy4vc2V0dGluZ3MtaHViLmkxOG4nO1xuXG5jb25zdCBERUZBVUxUX0xBQkVMU19OUyA9ICdEYXNoYm9hcmQnO1xuY29uc3QgREVGQVVMVF9QQUdFX05TID0gJ1NldHRpbmdzLlByZWZlcmVuY2VzJztcblxuLyoqXG4gKiBgdmFsLXNldHRpbmdzLWh1YmAg4oCUIHBvcnRhZGEgZGUgbGEgc2VjY2nDs24gU2V0dGluZ3MgKG9yZ2FuaXNtKS4gUmVuZGVyaXphIHVuXG4gKiBoZWFkZXIgKHTDrXR1bG8gKyBkZXNjcmlwY2nDs24pICsgdW4gZ3JpZCBkZSBgdmFsLWFjdGlvbi1jYXJkYCBxdWUgbmF2ZWdhIGEgbGFzXG4gKiBzdWItdmlzdGFzLiBQcm9tb3ZpZG8gZGVzZGUgYHNob3djYXNlYCAoYHBhZ2VzL3NldHRpbmdzL3BhZ2VzL3ByZWZlcmVuY2VzYClcbiAqIGJham8gZWwgcHJvY2VzbyBkZSBBRFItMDIxLlxuICpcbiAqIExhcyBjYXJkcyBzYWxlbiBkZSBgYnVpbGRTZXR0aW5nc0NhcmRzYCBzb2JyZSBlbCBjYXTDoWxvZ28gZGVmYXVsdFxuICogKGBTRVRUSU5HU19TRUNUSU9OU19DQVRBTE9HYCksIGZpbHRyYWRvL2V4dGVuZGlkby9yZW9yZGVuYWRvIHBvciBsYSBjb25maWcuXG4gKlxuICogTmF2ZWdhY2nDs246IGNhcmRzIGNvbiBgcm91dGVyTGlua2AgbmF2ZWdhbiB2w61hIGBSb3V0ZXJgOyBsYSBjYXJkIGRlIGxvZ291dFxuICogKHNpbiBydXRhKSBpbnZvY2EgYGNvbmZpZy5vbkxvZ291dGAuIENhZGEgY2xpY2sgZW1pdGUgYGNvbmZpZy5vblNlY3Rpb25DbGlja2AuXG4gKlxuICogTk8gcmVuZGVyaXphIGlvbi1jb250ZW50IOKAlCB2aXZlIGRlbnRybyBkZSB2YWwtcGFnZS13cmFwcGVyLlxuICpcbiAqIEF1dG8tcmVnaXN0cmEgc3VzIGRvcyBzZXRzIGRlIGRlZmF1bHRzIGkxOG4gKGxhYmVscyArIGhlYWRlcikgZW4gc3VzXG4gKiByZXNwZWN0aXZvcyBuYW1lc3BhY2VzIHNpIGVsIGNvbnN1bWVyIG5vIGxvcyBwcm92ZXnDsy5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmFsLXNldHRpbmdzLWh1YicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtJb25HcmlkLCBJb25Sb3csIElvbkNvbCwgQWN0aW9uQ2FyZENvbXBvbmVudCwgRGlzcGxheUNvbXBvbmVudCwgVGl0bGVDb21wb25lbnRdLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxkaXYgY2xhc3M9XCJwYWdlXCI+XG4gICAgICA8aGVhZGVyIGNsYXNzPVwicGFnZS1oZWFkZXJcIj5cbiAgICAgICAgPHZhbC1kaXNwbGF5IFtwcm9wc109XCJ7IHNpemU6ICdzbWFsbCcsIGNvbG9yOiAnZGFyaycsIGNvbnRlbnQ6IHBhZ2VUaXRsZSgpIH1cIiAvPlxuICAgICAgICA8dmFsLXRpdGxlXG4gICAgICAgICAgW3Byb3BzXT1cIntcbiAgICAgICAgICAgIHNpemU6ICdsYXJnZScsXG4gICAgICAgICAgICBjb2xvcjogJ2RhcmsnLFxuICAgICAgICAgICAgYm9sZDogZmFsc2UsXG4gICAgICAgICAgICBjb250ZW50OiBwYWdlRGVzY3JpcHRpb24oKSxcbiAgICAgICAgICB9XCJcbiAgICAgICAgLz5cbiAgICAgIDwvaGVhZGVyPlxuXG4gICAgICA8aW9uLWdyaWQgY2xhc3M9XCJjYXJkcy1ncmlkXCI+XG4gICAgICAgIDxpb24tcm93PlxuICAgICAgICAgIEBmb3IgKGFjdGlvbiBvZiBhY3Rpb25DYXJkcygpOyB0cmFjayBhY3Rpb24udG9rZW4pIHtcbiAgICAgICAgICAgIDxpb24tY29sIHNpemU9XCIxMlwiIHNpemUtc209XCI2XCI+XG4gICAgICAgICAgICAgIDx2YWwtYWN0aW9uLWNhcmQgW3Byb3BzXT1cImFjdGlvblwiIChvbkNsaWNrKT1cIm9uQWN0aW9uQ2xpY2soYWN0aW9uKVwiIC8+XG4gICAgICAgICAgICA8L2lvbi1jb2w+XG4gICAgICAgICAgfVxuICAgICAgICA8L2lvbi1yb3c+XG4gICAgICA8L2lvbi1ncmlkPlxuICAgIDwvZGl2PlxuICBgLFxuICBzdHlsZXM6IFtcbiAgICBgXG4gICAgICAucGFnZSB7XG4gICAgICAgIHBhZGRpbmc6IDE2cHggMDtcbiAgICAgICAgbWF4LXdpZHRoOiA3MjBweDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICB9XG4gICAgICAucGFnZS1oZWFkZXIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuICAgICAgfVxuICAgICAgLmNhcmRzLWdyaWQge1xuICAgICAgICBtYXJnaW46IDAgLTRweDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cbiAgICAgIC5jYXJkcy1ncmlkIGlvbi1jb2wge1xuICAgICAgICBwYWRkaW5nOiA0cHg7XG4gICAgICB9XG4gICAgYCxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgU2V0dGluZ3NIdWJDb21wb25lbnQge1xuICBwcml2YXRlIG5hdiA9IGluamVjdChOYXZpZ2F0aW9uU2VydmljZSk7XG4gIHByaXZhdGUgaTE4biA9IGluamVjdChJMThuU2VydmljZSk7XG4gIHByaXZhdGUgcm91dGVyID0gaW5qZWN0KFJvdXRlcik7XG4gIHByaXZhdGUgcm91dGUgPSBpbmplY3QoQWN0aXZhdGVkUm91dGUsIHsgb3B0aW9uYWw6IHRydWUgfSk7XG5cbiAgLyoqXG4gICAqIENvbmZpZyB2w61hIEBJbnB1dCAob2JqZWN0LWZpcnN0KS4gU2kgbm8gc2UgcGFzYSwgY2FlIGFsIHJvdXRlIGRhdGFcbiAgICogYHNldHRpbmdzSHViQ29uZmlnYCAocG9ibGFkbyBwb3IgYHByb3ZpZGVWYWx0ZWNoU2V0dGluZ3NSb3V0ZXNgKS5cbiAgICogYHJlc29sdmVkQ29uZmlnYCBtZXJnZWEgY29uIGRlZmF1bHRzIOKAlCBASW5wdXQgZ2FuYSBzb2JyZSByb3V0ZSBkYXRhLlxuICAgKi9cbiAgQElucHV0KCkgY29uZmlnPzogU2V0dGluZ3NIdWJDb25maWc7XG5cbiAgcmVhZG9ubHkgcmVzb2x2ZWRDb25maWcgPSBjb21wdXRlZDxcbiAgICBSZXF1aXJlZDxQaWNrPFNldHRpbmdzSHViQ29uZmlnLCAnaTE4bk5hbWVzcGFjZScgfCAncGFnZUkxOG5OYW1lc3BhY2UnPj4gJiBTZXR0aW5nc0h1YkNvbmZpZ1xuICA+KCgpID0+IHtcbiAgICBjb25zdCBmcm9tUm91dGUgPSAodGhpcy5yb3V0ZT8uc25hcHNob3QuZGF0YVsnc2V0dGluZ3NIdWJDb25maWcnXSA/PyB7fSkgYXMgU2V0dGluZ3NIdWJDb25maWc7XG4gICAgY29uc3QgbWVyZ2VkOiBTZXR0aW5nc0h1YkNvbmZpZyA9IHsgLi4uZnJvbVJvdXRlLCAuLi4odGhpcy5jb25maWcgPz8ge30pIH07XG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLm1lcmdlZCxcbiAgICAgIGkxOG5OYW1lc3BhY2U6IG1lcmdlZC5pMThuTmFtZXNwYWNlID8/IERFRkFVTFRfTEFCRUxTX05TLFxuICAgICAgcGFnZUkxOG5OYW1lc3BhY2U6IG1lcmdlZC5wYWdlSTE4bk5hbWVzcGFjZSA/PyBERUZBVUxUX1BBR0VfTlMsXG4gICAgfTtcbiAgfSk7XG5cbiAgcHJpdmF0ZSBnZXQgbGFiZWxzTnMoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5yZXNvbHZlZENvbmZpZygpLmkxOG5OYW1lc3BhY2U7XG4gIH1cbiAgcHJpdmF0ZSBnZXQgcGFnZU5zKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMucmVzb2x2ZWRDb25maWcoKS5wYWdlSTE4bk5hbWVzcGFjZTtcbiAgfVxuXG4gIHJlYWRvbmx5IHBhZ2VUaXRsZSA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICB0aGlzLmkxOG4ubGFuZygpO1xuICAgIHJldHVybiB0aGlzLmkxOG4udCgncGFnZVRpdGxlJywgdGhpcy5wYWdlTnMpO1xuICB9KTtcbiAgcmVhZG9ubHkgcGFnZURlc2NyaXB0aW9uID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIHRoaXMuaTE4bi5sYW5nKCk7XG4gICAgcmV0dXJuIHRoaXMuaTE4bi50KCdwYWdlRGVzY3JpcHRpb24nLCB0aGlzLnBhZ2VOcyk7XG4gIH0pO1xuXG4gIC8qKiBDYXJkcyBkZWwgSFVCLCByZXN1ZWx0YXMgZGVzZGUgbGEgY29uZmlnLiAqL1xuICByZWFkb25seSBhY3Rpb25DYXJkcyA9IGNvbXB1dGVkPEFjdGlvbkNhcmRNZXRhZGF0YVtdPigoKSA9PiB7XG4gICAgdGhpcy5pMThuLmxhbmcoKTtcbiAgICBjb25zdCBjZmcgPSB0aGlzLnJlc29sdmVkQ29uZmlnKCk7XG4gICAgcmV0dXJuIGJ1aWxkU2V0dGluZ3NDYXJkcyhrID0+IHRoaXMuaTE4bi50KGssIGNmZy5pMThuTmFtZXNwYWNlKSwge1xuICAgICAgZXhjbHVkZTogY2ZnLmV4Y2x1ZGUsXG4gICAgICBpbmNsdWRlOiBjZmcuaW5jbHVkZSxcbiAgICAgIG9yZGVyOiBjZmcub3JkZXIsXG4gICAgICBpbmNsdWRlTG9nb3V0OiBjZmcuaW5jbHVkZUxvZ291dCxcbiAgICAgIGJhc2VQYXRoOiBjZmcuYmFzZVBhdGgsXG4gICAgfSk7XG4gIH0pO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIC8vIEF1dG8tcmVnaXN0cm8gaTE4biDigJQgcmVzcGV0YSBvdmVycmlkZSBkZWwgY29uc3VtZXIuIExvcyBuYW1lc3BhY2VzIHB1ZWRlblxuICAgIC8vIHZlbmlyIGRlIEBJbnB1dC5jb25maWcgbyBkZWwgcm91dGUgZGF0YTsgbG9zIHJlc29sdmVtb3MgYWPDoS5cbiAgICBjb25zdCBsYWJlbHNOcyA9IHRoaXMubGFiZWxzTnM7XG4gICAgaWYgKCF0aGlzLmkxOG4uaGFzTmFtZXNwYWNlKGxhYmVsc05zKSkge1xuICAgICAgdGhpcy5pMThuLnJlZ2lzdGVyQ29udGVudChsYWJlbHNOcywgU0VUVElOR1NfSFVCX0xBQkVMU19JMThOKTtcbiAgICB9XG4gICAgY29uc3QgcGFnZU5zID0gdGhpcy5wYWdlTnM7XG4gICAgaWYgKCF0aGlzLmkxOG4uaGFzTmFtZXNwYWNlKHBhZ2VOcykpIHtcbiAgICAgIHRoaXMuaTE4bi5yZWdpc3RlckNvbnRlbnQocGFnZU5zLCBTRVRUSU5HU19IVUJfUEFHRV9JMThOKTtcbiAgICB9XG5cbiAgICB0aGlzLm5hdi5zZXRCYWNrSGVhZGVyKCdwYWdlVGl0bGUnLCBwYWdlTnMsIHsgd2l0aE1lbnU6IHRydWUgfSk7XG4gIH1cblxuICBvbkFjdGlvbkNsaWNrKGFjdGlvbjogQWN0aW9uQ2FyZE1ldGFkYXRhKTogdm9pZCB7XG4gICAgY29uc3QgdG9rZW4gPSBhY3Rpb24udG9rZW47XG4gICAgdGhpcy5yZXNvbHZlZENvbmZpZygpLm9uU2VjdGlvbkNsaWNrPy4odG9rZW4gPz8gJycpO1xuICAgIGlmICh0b2tlbiA9PT0gJ2FjdGlvbi1sb2dvdXQnKSB7XG4gICAgICB0aGlzLnJlc29sdmVkQ29uZmlnKCkub25Mb2dvdXQ/LigpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBpZiAoYWN0aW9uLnJvdXRlckxpbmspIHtcbiAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKEFycmF5LmlzQXJyYXkoYWN0aW9uLnJvdXRlckxpbmspID8gYWN0aW9uLnJvdXRlckxpbmsgOiBbYWN0aW9uLnJvdXRlckxpbmtdKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,57 @@
1
+ /**
2
+ * Defaults i18n embebidos en `val-settings-hub`. Dos sets, uno por namespace
3
+ * (ver `SettingsHubConfig.i18nNamespace` / `.pageI18nNamespace`). Auto-registrados
4
+ * en el constructor SOLO si el namespace no existe (respeta override del consumer).
5
+ *
6
+ * `SETTINGS_HUB_LABELS_I18N` — labels de cada sección (namespace `Dashboard` por
7
+ * default). Mismo set que showcase mantiene en `src/i18n/index.ts` (queda como
8
+ * override). `SETTINGS_HUB_PAGE_I18N` — header del HUB (namespace
9
+ * `Settings.Preferences` por default), tomado de la page Preferencias original.
10
+ */
11
+ export const SETTINGS_HUB_LABELS_I18N = {
12
+ es: {
13
+ general: 'General',
14
+ generalDesc: 'Apariencia e idioma',
15
+ account: 'Cuenta',
16
+ accountDesc: 'Organizaciones y sesión',
17
+ editProfile: 'Editar perfil',
18
+ editProfileDesc: 'Actualiza tu información personal',
19
+ preferences: 'Preferencias',
20
+ preferencesDesc: 'Tema, idioma y otras opciones',
21
+ notifications: 'Notificaciones',
22
+ notificationsDesc: 'Configura tus preferencias',
23
+ security: 'Seguridad',
24
+ securityDesc: 'Gestiona contraseñas y MFA',
25
+ about: 'Acerca de',
26
+ aboutDesc: 'Versión, feedback y enlaces útiles',
27
+ logout: 'Cerrar sesión',
28
+ },
29
+ en: {
30
+ general: 'General',
31
+ generalDesc: 'Appearance and language',
32
+ account: 'Account',
33
+ accountDesc: 'Organizations and session',
34
+ editProfile: 'Edit profile',
35
+ editProfileDesc: 'Update your personal information',
36
+ preferences: 'Preferences',
37
+ preferencesDesc: 'Theme, language and other options',
38
+ notifications: 'Notifications',
39
+ notificationsDesc: 'Configure your preferences',
40
+ security: 'Security',
41
+ securityDesc: 'Manage passwords and MFA',
42
+ about: 'About',
43
+ aboutDesc: 'Version, feedback and useful links',
44
+ logout: 'Sign out',
45
+ },
46
+ };
47
+ export const SETTINGS_HUB_PAGE_I18N = {
48
+ es: {
49
+ pageTitle: 'Preferencias',
50
+ pageDescription: 'Ajusta tu cuenta y la app',
51
+ },
52
+ en: {
53
+ pageTitle: 'Preferences',
54
+ pageDescription: 'Tune your account and the app',
55
+ },
56
+ };
57
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dGluZ3MtaHViLmkxOG4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL3NldHRpbmdzLWh1Yi9zZXR0aW5ncy1odWIuaTE4bi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQTs7Ozs7Ozs7O0dBU0c7QUFDSCxNQUFNLENBQUMsTUFBTSx3QkFBd0IsR0FBcUI7SUFDeEQsRUFBRSxFQUFFO1FBQ0YsT0FBTyxFQUFFLFNBQVM7UUFDbEIsV0FBVyxFQUFFLHFCQUFxQjtRQUNsQyxPQUFPLEVBQUUsUUFBUTtRQUNqQixXQUFXLEVBQUUseUJBQXlCO1FBQ3RDLFdBQVcsRUFBRSxlQUFlO1FBQzVCLGVBQWUsRUFBRSxtQ0FBbUM7UUFDcEQsV0FBVyxFQUFFLGNBQWM7UUFDM0IsZUFBZSxFQUFFLCtCQUErQjtRQUNoRCxhQUFhLEVBQUUsZ0JBQWdCO1FBQy9CLGlCQUFpQixFQUFFLDRCQUE0QjtRQUMvQyxRQUFRLEVBQUUsV0FBVztRQUNyQixZQUFZLEVBQUUsNEJBQTRCO1FBQzFDLEtBQUssRUFBRSxXQUFXO1FBQ2xCLFNBQVMsRUFBRSxvQ0FBb0M7UUFDL0MsTUFBTSxFQUFFLGVBQWU7S0FDeEI7SUFDRCxFQUFFLEVBQUU7UUFDRixPQUFPLEVBQUUsU0FBUztRQUNsQixXQUFXLEVBQUUseUJBQXlCO1FBQ3RDLE9BQU8sRUFBRSxTQUFTO1FBQ2xCLFdBQVcsRUFBRSwyQkFBMkI7UUFDeEMsV0FBVyxFQUFFLGNBQWM7UUFDM0IsZUFBZSxFQUFFLGtDQUFrQztRQUNuRCxXQUFXLEVBQUUsYUFBYTtRQUMxQixlQUFlLEVBQUUsbUNBQW1DO1FBQ3BELGFBQWEsRUFBRSxlQUFlO1FBQzlCLGlCQUFpQixFQUFFLDRCQUE0QjtRQUMvQyxRQUFRLEVBQUUsVUFBVTtRQUNwQixZQUFZLEVBQUUsMEJBQTBCO1FBQ3hDLEtBQUssRUFBRSxPQUFPO1FBQ2QsU0FBUyxFQUFFLG9DQUFvQztRQUMvQyxNQUFNLEVBQUUsVUFBVTtLQUNuQjtDQUNGLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FBcUI7SUFDdEQsRUFBRSxFQUFFO1FBQ0YsU0FBUyxFQUFFLGNBQWM7UUFDekIsZUFBZSxFQUFFLDJCQUEyQjtLQUM3QztJQUNELEVBQUUsRUFBRTtRQUNGLFNBQVMsRUFBRSxhQUFhO1FBQ3hCLGVBQWUsRUFBRSwrQkFBK0I7S0FDakQ7Q0FDRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTGFuZ3VhZ2VzQ29udGVudCB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2kxOG4vdHlwZXMnO1xuXG4vKipcbiAqIERlZmF1bHRzIGkxOG4gZW1iZWJpZG9zIGVuIGB2YWwtc2V0dGluZ3MtaHViYC4gRG9zIHNldHMsIHVubyBwb3IgbmFtZXNwYWNlXG4gKiAodmVyIGBTZXR0aW5nc0h1YkNvbmZpZy5pMThuTmFtZXNwYWNlYCAvIGAucGFnZUkxOG5OYW1lc3BhY2VgKS4gQXV0by1yZWdpc3RyYWRvc1xuICogZW4gZWwgY29uc3RydWN0b3IgU09MTyBzaSBlbCBuYW1lc3BhY2Ugbm8gZXhpc3RlIChyZXNwZXRhIG92ZXJyaWRlIGRlbCBjb25zdW1lcikuXG4gKlxuICogYFNFVFRJTkdTX0hVQl9MQUJFTFNfSTE4TmAg4oCUIGxhYmVscyBkZSBjYWRhIHNlY2Npw7NuIChuYW1lc3BhY2UgYERhc2hib2FyZGAgcG9yXG4gKiBkZWZhdWx0KS4gTWlzbW8gc2V0IHF1ZSBzaG93Y2FzZSBtYW50aWVuZSBlbiBgc3JjL2kxOG4vaW5kZXgudHNgIChxdWVkYSBjb21vXG4gKiBvdmVycmlkZSkuIGBTRVRUSU5HU19IVUJfUEFHRV9JMThOYCDigJQgaGVhZGVyIGRlbCBIVUIgKG5hbWVzcGFjZVxuICogYFNldHRpbmdzLlByZWZlcmVuY2VzYCBwb3IgZGVmYXVsdCksIHRvbWFkbyBkZSBsYSBwYWdlIFByZWZlcmVuY2lhcyBvcmlnaW5hbC5cbiAqL1xuZXhwb3J0IGNvbnN0IFNFVFRJTkdTX0hVQl9MQUJFTFNfSTE4TjogTGFuZ3VhZ2VzQ29udGVudCA9IHtcbiAgZXM6IHtcbiAgICBnZW5lcmFsOiAnR2VuZXJhbCcsXG4gICAgZ2VuZXJhbERlc2M6ICdBcGFyaWVuY2lhIGUgaWRpb21hJyxcbiAgICBhY2NvdW50OiAnQ3VlbnRhJyxcbiAgICBhY2NvdW50RGVzYzogJ09yZ2FuaXphY2lvbmVzIHkgc2VzacOzbicsXG4gICAgZWRpdFByb2ZpbGU6ICdFZGl0YXIgcGVyZmlsJyxcbiAgICBlZGl0UHJvZmlsZURlc2M6ICdBY3R1YWxpemEgdHUgaW5mb3JtYWNpw7NuIHBlcnNvbmFsJyxcbiAgICBwcmVmZXJlbmNlczogJ1ByZWZlcmVuY2lhcycsXG4gICAgcHJlZmVyZW5jZXNEZXNjOiAnVGVtYSwgaWRpb21hIHkgb3RyYXMgb3BjaW9uZXMnLFxuICAgIG5vdGlmaWNhdGlvbnM6ICdOb3RpZmljYWNpb25lcycsXG4gICAgbm90aWZpY2F0aW9uc0Rlc2M6ICdDb25maWd1cmEgdHVzIHByZWZlcmVuY2lhcycsXG4gICAgc2VjdXJpdHk6ICdTZWd1cmlkYWQnLFxuICAgIHNlY3VyaXR5RGVzYzogJ0dlc3Rpb25hIGNvbnRyYXNlw7FhcyB5IE1GQScsXG4gICAgYWJvdXQ6ICdBY2VyY2EgZGUnLFxuICAgIGFib3V0RGVzYzogJ1ZlcnNpw7NuLCBmZWVkYmFjayB5IGVubGFjZXMgw7p0aWxlcycsXG4gICAgbG9nb3V0OiAnQ2VycmFyIHNlc2nDs24nLFxuICB9LFxuICBlbjoge1xuICAgIGdlbmVyYWw6ICdHZW5lcmFsJyxcbiAgICBnZW5lcmFsRGVzYzogJ0FwcGVhcmFuY2UgYW5kIGxhbmd1YWdlJyxcbiAgICBhY2NvdW50OiAnQWNjb3VudCcsXG4gICAgYWNjb3VudERlc2M6ICdPcmdhbml6YXRpb25zIGFuZCBzZXNzaW9uJyxcbiAgICBlZGl0UHJvZmlsZTogJ0VkaXQgcHJvZmlsZScsXG4gICAgZWRpdFByb2ZpbGVEZXNjOiAnVXBkYXRlIHlvdXIgcGVyc29uYWwgaW5mb3JtYXRpb24nLFxuICAgIHByZWZlcmVuY2VzOiAnUHJlZmVyZW5jZXMnLFxuICAgIHByZWZlcmVuY2VzRGVzYzogJ1RoZW1lLCBsYW5ndWFnZSBhbmQgb3RoZXIgb3B0aW9ucycsXG4gICAgbm90aWZpY2F0aW9uczogJ05vdGlmaWNhdGlvbnMnLFxuICAgIG5vdGlmaWNhdGlvbnNEZXNjOiAnQ29uZmlndXJlIHlvdXIgcHJlZmVyZW5jZXMnLFxuICAgIHNlY3VyaXR5OiAnU2VjdXJpdHknLFxuICAgIHNlY3VyaXR5RGVzYzogJ01hbmFnZSBwYXNzd29yZHMgYW5kIE1GQScsXG4gICAgYWJvdXQ6ICdBYm91dCcsXG4gICAgYWJvdXREZXNjOiAnVmVyc2lvbiwgZmVlZGJhY2sgYW5kIHVzZWZ1bCBsaW5rcycsXG4gICAgbG9nb3V0OiAnU2lnbiBvdXQnLFxuICB9LFxufTtcblxuZXhwb3J0IGNvbnN0IFNFVFRJTkdTX0hVQl9QQUdFX0kxOE46IExhbmd1YWdlc0NvbnRlbnQgPSB7XG4gIGVzOiB7XG4gICAgcGFnZVRpdGxlOiAnUHJlZmVyZW5jaWFzJyxcbiAgICBwYWdlRGVzY3JpcHRpb246ICdBanVzdGEgdHUgY3VlbnRhIHkgbGEgYXBwJyxcbiAgfSxcbiAgZW46IHtcbiAgICBwYWdlVGl0bGU6ICdQcmVmZXJlbmNlcycsXG4gICAgcGFnZURlc2NyaXB0aW9uOiAnVHVuZSB5b3VyIGFjY291bnQgYW5kIHRoZSBhcHAnLFxuICB9LFxufTtcbiJdfQ==
@@ -0,0 +1,137 @@
1
+ /**
2
+ * Catálogo default de secciones del HUB de settings (8 entradas). `logout` va
3
+ * incluida pero sin `routerLink` (la maneja un callback). Mismo set, mismos
4
+ * tokens/iconos/rutas que el builder original de showcase
5
+ * (`shared/settings-action-cards.ts`) que esta promoción reemplaza.
6
+ */
7
+ export const SETTINGS_SECTIONS_CATALOG = [
8
+ {
9
+ token: 'action-general',
10
+ titleKey: 'general',
11
+ descKey: 'generalDesc',
12
+ ionicon: 'options-outline',
13
+ routerLink: '/app/settings/general',
14
+ showChevron: true,
15
+ shadowed: true,
16
+ },
17
+ {
18
+ token: 'action-account',
19
+ titleKey: 'account',
20
+ descKey: 'accountDesc',
21
+ ionicon: 'business-outline',
22
+ routerLink: '/app/settings/account',
23
+ showChevron: true,
24
+ shadowed: true,
25
+ },
26
+ {
27
+ token: 'action-profile',
28
+ titleKey: 'editProfile',
29
+ descKey: 'editProfileDesc',
30
+ ionicon: 'person-outline',
31
+ routerLink: '/app/settings/profile',
32
+ showChevron: true,
33
+ shadowed: true,
34
+ },
35
+ {
36
+ token: 'action-preferences',
37
+ titleKey: 'preferences',
38
+ descKey: 'preferencesDesc',
39
+ ionicon: 'options-outline',
40
+ routerLink: '/app/settings/preferences',
41
+ showChevron: true,
42
+ shadowed: true,
43
+ },
44
+ {
45
+ token: 'action-notifications',
46
+ titleKey: 'notifications',
47
+ descKey: 'notificationsDesc',
48
+ ionicon: 'notifications-outline',
49
+ routerLink: '/app/settings/notifications',
50
+ showChevron: true,
51
+ shadowed: true,
52
+ },
53
+ {
54
+ token: 'action-security',
55
+ titleKey: 'security',
56
+ descKey: 'securityDesc',
57
+ ionicon: 'shield-checkmark-outline',
58
+ routerLink: '/app/settings/security',
59
+ showChevron: true,
60
+ shadowed: true,
61
+ },
62
+ {
63
+ token: 'action-about',
64
+ titleKey: 'about',
65
+ descKey: 'aboutDesc',
66
+ ionicon: 'information-circle-outline',
67
+ routerLink: '/app/about',
68
+ showChevron: true,
69
+ shadowed: true,
70
+ },
71
+ {
72
+ token: 'action-logout',
73
+ titleKey: 'logout',
74
+ ionicon: 'log-out-outline',
75
+ showChevron: false,
76
+ shadowed: true,
77
+ },
78
+ ];
79
+ const CATALOG_BASE = '/app/settings';
80
+ /**
81
+ * Construye el grid de cards de navegación del HUB de settings (versión
82
+ * promovida del `buildSettingsActionCards` de showcase). Usa el catálogo
83
+ * default + las `include` del consumer, filtra `exclude`, gatea logout por
84
+ * `includeLogout`, reordena por `order` y reescribe las rutas por `basePath`.
85
+ *
86
+ * El `t` resuelve los `titleKey`/`descKey` contra el namespace de labels
87
+ * (default del componente: `Dashboard`). `logout` NO tiene `routerLink` — el
88
+ * consumer maneja el flujo de cierre de sesión por token / callback.
89
+ */
90
+ export function buildSettingsCards(t, options = {}) {
91
+ const exclude = new Set(options.exclude ?? []);
92
+ const includeLogout = options.includeLogout ?? false;
93
+ const basePath = options.basePath;
94
+ const sections = [...SETTINGS_SECTIONS_CATALOG, ...(options.include ?? [])];
95
+ let resolved = sections.filter(s => {
96
+ if (exclude.has(s.token))
97
+ return false;
98
+ if (s.token === 'action-logout' && !includeLogout)
99
+ return false;
100
+ return true;
101
+ });
102
+ if (options.order && options.order.length > 0) {
103
+ const rank = new Map(options.order.map((token, i) => [token, i]));
104
+ resolved = [...resolved].sort((a, b) => {
105
+ const ra = rank.has(a.token) ? rank.get(a.token) : Number.MAX_SAFE_INTEGER;
106
+ const rb = rank.has(b.token) ? rank.get(b.token) : Number.MAX_SAFE_INTEGER;
107
+ return ra - rb;
108
+ });
109
+ }
110
+ return resolved.map(s => {
111
+ const card = {
112
+ token: s.token,
113
+ title: t(s.titleKey),
114
+ icon: {
115
+ ionicon: s.ionicon,
116
+ color: 'dark',
117
+ backgroundColor: 'light',
118
+ },
119
+ showChevron: s.showChevron ?? true,
120
+ shadowed: s.shadowed ?? true,
121
+ };
122
+ if (s.descKey)
123
+ card.description = t(s.descKey);
124
+ if (s.routerLink) {
125
+ card.routerLink = basePath ? rewriteBasePath(s.routerLink, basePath) : s.routerLink;
126
+ }
127
+ return card;
128
+ });
129
+ }
130
+ /** Reescribe el prefijo `/app/settings` de una ruta del catálogo por `basePath`. */
131
+ function rewriteBasePath(routerLink, basePath) {
132
+ if (routerLink.startsWith(CATALOG_BASE)) {
133
+ return basePath + routerLink.slice(CATALOG_BASE.length);
134
+ }
135
+ return routerLink;
136
+ }
137
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dGluZ3Mtc2VjdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL3NldHRpbmdzLWh1Yi9zZXR0aW5ncy1zZWN0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUE2QkE7Ozs7O0dBS0c7QUFDSCxNQUFNLENBQUMsTUFBTSx5QkFBeUIsR0FBc0I7SUFDMUQ7UUFDRSxLQUFLLEVBQUUsZ0JBQWdCO1FBQ3ZCLFFBQVEsRUFBRSxTQUFTO1FBQ25CLE9BQU8sRUFBRSxhQUFhO1FBQ3RCLE9BQU8sRUFBRSxpQkFBaUI7UUFDMUIsVUFBVSxFQUFFLHVCQUF1QjtRQUNuQyxXQUFXLEVBQUUsSUFBSTtRQUNqQixRQUFRLEVBQUUsSUFBSTtLQUNmO0lBQ0Q7UUFDRSxLQUFLLEVBQUUsZ0JBQWdCO1FBQ3ZCLFFBQVEsRUFBRSxTQUFTO1FBQ25CLE9BQU8sRUFBRSxhQUFhO1FBQ3RCLE9BQU8sRUFBRSxrQkFBa0I7UUFDM0IsVUFBVSxFQUFFLHVCQUF1QjtRQUNuQyxXQUFXLEVBQUUsSUFBSTtRQUNqQixRQUFRLEVBQUUsSUFBSTtLQUNmO0lBQ0Q7UUFDRSxLQUFLLEVBQUUsZ0JBQWdCO1FBQ3ZCLFFBQVEsRUFBRSxhQUFhO1FBQ3ZCLE9BQU8sRUFBRSxpQkFBaUI7UUFDMUIsT0FBTyxFQUFFLGdCQUFnQjtRQUN6QixVQUFVLEVBQUUsdUJBQXVCO1FBQ25DLFdBQVcsRUFBRSxJQUFJO1FBQ2pCLFFBQVEsRUFBRSxJQUFJO0tBQ2Y7SUFDRDtRQUNFLEtBQUssRUFBRSxvQkFBb0I7UUFDM0IsUUFBUSxFQUFFLGFBQWE7UUFDdkIsT0FBTyxFQUFFLGlCQUFpQjtRQUMxQixPQUFPLEVBQUUsaUJBQWlCO1FBQzFCLFVBQVUsRUFBRSwyQkFBMkI7UUFDdkMsV0FBVyxFQUFFLElBQUk7UUFDakIsUUFBUSxFQUFFLElBQUk7S0FDZjtJQUNEO1FBQ0UsS0FBSyxFQUFF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dXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFjdGlvbkNhcmRNZXRhZGF0YSB9IGZyb20gJy4uLy4uL21vbGVjdWxlcy9hY3Rpb24tY2FyZC90eXBlcyc7XG5cbi8qKlxuICogTW9kZWxvIGRlIHVuYSBzZWNjacOzbiBkZWwgSFVCIGRlIHNldHRpbmdzLiBDYWRhIHNlY2Npw7NuIHNlIHByb3llY3RhIGEgdW5cbiAqIGB2YWwtYWN0aW9uLWNhcmRgICh2w61hIGBidWlsZFNldHRpbmdzQ2FyZHNgKS4gRWwgY2F0w6Fsb2dvIGRlZmF1bHRcbiAqIChgU0VUVElOR1NfU0VDVElPTlNfQ0FUQUxPR2ApIGN1YnJlIGxhcyBzZWNjaW9uZXMgZXN0w6FuZGFyIGRlbCBmYWN0b3J5O1xuICogZWwgY29uc3VtZXIgcHVlZGUgZmlsdHJhciAoYGV4Y2x1ZGVgKSwgcmVvcmRlbmFyIChgb3JkZXJgKSwgcmVlc2NyaWJpciBsYXNcbiAqIHJ1dGFzIGJhc2UgKGBiYXNlUGF0aGApIG8gc3VtYXIgbGFzIHN1eWFzIChgaW5jbHVkZWApLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNldHRpbmdzU2VjdGlvbiB7XG4gIC8qKiBJZGVudGlmaWNhZG9yIGVzdGFibGUgZGUgbGEgc2VjY2nDs24gKGRpc3BhdGNoIGRlIGNsaWNrICsgZmlsdHJhZG8pLiAqL1xuICB0b2tlbjogc3RyaW5nO1xuICAvKiogaTE4biBrZXkgZGVsIHTDrXR1bG8gZGUgbGEgY2FyZCAocmVzdWVsdG8gY29udHJhIGVsIG5hbWVzcGFjZSBkZSBsYWJlbHMpLiAqL1xuICB0aXRsZUtleTogc3RyaW5nO1xuICAvKiogaTE4biBrZXkgZGUgbGEgZGVzY3JpcGNpw7NuIChvcGNpb25hbCDigJQgbG9nb3V0IG5vIGxhIHRpZW5lKS4gKi9cbiAgZGVzY0tleT86IHN0cmluZztcbiAgLyoqIElvbmljb24gZGUgbGEgY2FyZC4gKi9cbiAgaW9uaWNvbjogc3RyaW5nO1xuICAvKipcbiAgICogUnV0YSBkZSBuYXZlZ2FjacOzbi4gTGFzIHNlY2Npb25lcyBiYWpvIGAvYXBwL3NldHRpbmdzYCBzZSByZWVzY3JpYmVuIHNpIGVsXG4gICAqIGNvbnN1bWVyIHBhc2EgYGJhc2VQYXRoYC4gYGFjdGlvbi1sb2dvdXRgIG5vIHRpZW5lIHJ1dGEgKGNhbGxiYWNrKS5cbiAgICovXG4gIHJvdXRlckxpbms/OiBzdHJpbmc7XG4gIC8qKiBNdWVzdHJhIGVsIGNoZXZyb24gYSBsYSBkZXJlY2hhLiBEZWZhdWx0IGB0cnVlYC4gKi9cbiAgc2hvd0NoZXZyb24/OiBib29sZWFuO1xuICAvKiogQ2FyZCBjb24gc29tYnJhLiBEZWZhdWx0IGB0cnVlYC4gKi9cbiAgc2hhZG93ZWQ/OiBib29sZWFuO1xufVxuXG4vKipcbiAqIENhdMOhbG9nbyBkZWZhdWx0IGRlIHNlY2Npb25lcyBkZWwgSFVCIGRlIHNldHRpbmdzICg4IGVudHJhZGFzKS4gYGxvZ291dGAgdmFcbiAqIGluY2x1aWRhIHBlcm8gc2luIGByb3V0ZXJMaW5rYCAobGEgbWFuZWphIHVuIGNhbGxiYWNrKS4gTWlzbW8gc2V0LCBtaXNtb3NcbiAqIHRva2Vucy9pY29ub3MvcnV0YXMgcXVlIGVsIGJ1aWxkZXIgb3JpZ2luYWwgZGUgc2hvd2Nhc2VcbiAqIChgc2hhcmVkL3NldHRpbmdzLWFjdGlvbi1jYXJkcy50c2ApIHF1ZSBlc3RhIHByb21vY2nDs24gcmVlbXBsYXphLlxuICovXG5leHBvcnQgY29uc3QgU0VUVElOR1NfU0VDVElPTlNfQ0FUQUxPRzogU2V0dGluZ3NTZWN0aW9uW10gPSBbXG4gIHtcbiAgICB0b2tlbjogJ2FjdGlvbi1nZW5lcmFsJyxcbiAgICB0aXRsZUtleTogJ2dlbmVyYWwnLFxuICAgIGRlc2NLZXk6ICdnZW5lcmFsRGVzYycsXG4gICAgaW9uaWNvbjogJ29wdGlvbnMtb3V0bGluZScsXG4gICAgcm91dGVyTGluazogJy9hcHAvc2V0dGluZ3MvZ2VuZXJhbCcsXG4gICAgc2hvd0NoZXZyb246IHRydWUsXG4gICAgc2hhZG93ZWQ6IHRydWUsXG4gIH0sXG4gIHtcbiAgICB0b2tlbjogJ2FjdGlvbi1hY2NvdW50JyxcbiAgICB0aXRsZUtleTogJ2FjY291bnQnLFxuICAgIGRlc2NLZXk6ICdhY2NvdW50RGVzYycsXG4gICAgaW9uaWNvbjogJ2J1c2luZXNzLW91dGxpbmUnLFxuICAgIHJvdXRlckxpbms6ICcvYXBwL3NldHRpbmdzL2FjY291bnQnLFxuICAgIHNob3dDaGV2cm9uOiB0cnVlLFxuICAgIHNoYWRvd2VkOiB0cnVlLFxuICB9LFxuICB7XG4gICAgdG9rZW46ICdhY3Rpb24tcHJvZmlsZScsXG4gICAgdGl0bGVLZXk6ICdlZGl0UHJvZmlsZScsXG4gICAgZGVzY0tleTogJ2VkaXRQcm9maWxlRGVzYycsXG4gICAgaW9uaWNvbjogJ3BlcnNvbi1vdXRsaW5lJyxcbiAgICByb3V0ZXJMaW5rOiAnL2FwcC9zZXR0aW5ncy9wcm9maWxlJyxcbiAgICBzaG93Q2hldnJvbjogdHJ1ZSxcbiAgICBzaGFkb3dlZDogdHJ1ZSxcbiAgfSxcbiAge1xuICAgIHRva2VuOiAnYWN0aW9uLXByZWZlcmVuY2VzJyxcbiAgICB0aXRsZUtleTogJ3ByZWZlcmVuY2VzJyxcbiAgICBkZXNjS2V5OiAncHJlZmVyZW5jZXNEZXNjJyxcbiAgICBpb25pY29uOiAnb3B0aW9ucy1vdXRsaW5lJyxcbiAgICByb3V0ZXJMaW5rOiAnL2FwcC9zZXR0aW5ncy9wcmVmZXJlbmNlcycsXG4gICAgc2hvd0NoZXZyb246IHRydWUsXG4gICAgc2hhZG93ZWQ6IHRydWUsXG4gIH0sXG4gIHtcbiAgICB0b2tlbjogJ2FjdGlvbi1ub3RpZmljYXRpb25zJyxcbiAgICB0aXRsZUtleTogJ25vdGlmaWNhdGlvbnMnLFxuICAgIGRlc2NLZXk6ICdub3RpZmljYXRpb25zRGVzYycsXG4gICAgaW9uaWNvbjogJ25vdGlmaWNhdGlvbnMtb3V0bGluZScsXG4gICAgcm91dGVyTGluazogJy9hcHAvc2V0dGluZ3Mvbm90aWZpY2F0aW9ucycsXG4gICAgc2hvd0NoZXZyb246IHRydWUsXG4gICAgc2hhZG93ZWQ6IHRydWUsXG4gIH0sXG4gIHtcbiAgICB0b2tlbjogJ2FjdGlvbi1zZWN1cml0eScsXG4gICAgdGl0bGVLZXk6ICdzZWN1cml0eScsXG4gICAgZGVzY0tleTogJ3NlY3VyaXR5RGVzYycsXG4gICAgaW9uaWNvbjogJ3NoaWVsZC1jaGVja21hcmstb3V0bGluZScsXG4gICAgcm91dGVyTGluazogJy9hcHAvc2V0dGluZ3Mvc2VjdXJpdHknLFxuICAgIHNob3dDaGV2cm9uOiB0cnVlLFxuICAgIHNoYWRvd2VkOiB0cnVlLFxuICB9LFxuICB7XG4gICAgdG9rZW46ICdhY3Rpb24tYWJvdXQnLFxuICAgIHRpdGxlS2V5OiAnYWJvdXQnLFxuICAgIGRlc2NLZXk6ICdhYm91dERlc2MnLFxuICAgIGlvbmljb246ICdpbmZvcm1hdGlvbi1jaXJjbGUtb3V0bGluZScsXG4gICAgcm91dGVyTGluazogJy9hcHAvYWJvdXQnLFxuICAgIHNob3dDaGV2cm9uOiB0cnVlLFxuICAgIHNoYWRvd2VkOiB0cnVlLFxuICB9LFxuICB7XG4gICAgdG9rZW46ICdhY3Rpb24tbG9nb3V0JyxcbiAgICB0aXRsZUtleTogJ2xvZ291dCcsXG4gICAgaW9uaWNvbjogJ2xvZy1vdXQtb3V0bGluZScsXG4gICAgc2hvd0NoZXZyb246IGZhbHNlLFxuICAgIHNoYWRvd2VkOiB0cnVlLFxuICB9LFxuXTtcblxuLyoqIE9wY2lvbmVzIGRlbCBidWlsZGVyIGBidWlsZFNldHRpbmdzQ2FyZHNgLiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZXR0aW5nc0NhcmRzT3B0aW9ucyB7XG4gIC8qKiBPY3VsdGEgc2VjY2lvbmVzIHBvciB0b2tlbiAodMOtcGljYW1lbnRlIGxhIGVudHJhZGEgZGUgbGEgcMOhZ2luYSBhY3R1YWwpLiAqL1xuICBleGNsdWRlPzogc3RyaW5nW107XG4gIC8qKiBTZWNjaW9uZXMgZXh0cmEgYSBzdW1hciBhbCBjYXTDoWxvZ28gKGxhcyBkZSBsYSBhcHAgYcO6biBubyBwcm9tb3ZpZGFzKS4gKi9cbiAgaW5jbHVkZT86IFNldHRpbmdzU2VjdGlvbltdO1xuICAvKiogT3JkZW4gZXhwbMOtY2l0byBwb3IgdG9rZW4uIExhcyBubyBsaXN0YWRhcyBxdWVkYW4gYWwgZmluYWwsIGVuIHN1IG9yZGVuLiAqL1xuICBvcmRlcj86IHN0cmluZ1tdO1xuICAvKiogSW5jbHV5ZSBsYSBjYXJkIGRlIGxvZ291dCAoc2luIHJ1dGEpLiBEZWZhdWx0IGBmYWxzZWAuICovXG4gIGluY2x1ZGVMb2dvdXQ/OiBib29sZWFuO1xuICAvKipcbiAgICogUmVlc2NyaWJlIGVsIHByZWZpam8gYC9hcHAvc2V0dGluZ3NgIGRlIGxhcyBydXRhcyBkZWwgY2F0w6Fsb2dvLiBFai5cbiAgICogYGJhc2VQYXRoOiAnL2FwcC9jb25maWcnYCDihpIgYC9hcHAvY29uZmlnL2dlbmVyYWxgLiBTaSBzZSBvbWl0ZSwgbGFzIHJ1dGFzXG4gICAqIHF1ZWRhbiB0YWwgY3VhbCBlbCBjYXTDoWxvZ28uXG4gICAqL1xuICBiYXNlUGF0aD86IHN0cmluZztcbn1cblxuY29uc3QgQ0FUQUxPR19CQVNFID0gJy9hcHAvc2V0dGluZ3MnO1xuXG4vKipcbiAqIENvbnN0cnV5ZSBlbCBncmlkIGRlIGNhcmRzIGRlIG5hdmVnYWNpw7NuIGRlbCBIVUIgZGUgc2V0dGluZ3MgKHZlcnNpw7NuXG4gKiBwcm9tb3ZpZGEgZGVsIGBidWlsZFNldHRpbmdzQWN0aW9uQ2FyZHNgIGRlIHNob3djYXNlKS4gVXNhIGVsIGNhdMOhbG9nb1xuICogZGVmYXVsdCArIGxhcyBgaW5jbHVkZWAgZGVsIGNvbnN1bWVyLCBmaWx0cmEgYGV4Y2x1ZGVgLCBnYXRlYSBsb2dvdXQgcG9yXG4gKiBgaW5jbHVkZUxvZ291dGAsIHJlb3JkZW5hIHBvciBgb3JkZXJgIHkgcmVlc2NyaWJlIGxhcyBydXRhcyBwb3IgYGJhc2VQYXRoYC5cbiAqXG4gKiBFbCBgdGAgcmVzdWVsdmUgbG9zIGB0aXRsZUtleWAvYGRlc2NLZXlgIGNvbnRyYSBlbCBuYW1lc3BhY2UgZGUgbGFiZWxzXG4gKiAoZGVmYXVsdCBkZWwgY29tcG9uZW50ZTogYERhc2hib2FyZGApLiBgbG9nb3V0YCBOTyB0aWVuZSBgcm91dGVyTGlua2Ag4oCUIGVsXG4gKiBjb25zdW1lciBtYW5lamEgZWwgZmx1am8gZGUgY2llcnJlIGRlIHNlc2nDs24gcG9yIHRva2VuIC8gY2FsbGJhY2suXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBidWlsZFNldHRpbmdzQ2FyZHMoXG4gIHQ6IChrZXk6IHN0cmluZykgPT4gc3RyaW5nLFxuICBvcHRpb25zOiBTZXR0aW5nc0NhcmRzT3B0aW9ucyA9IHt9XG4pOiBBY3Rpb25DYXJkTWV0YWRhdGFbXSB7XG4gIGNvbnN0IGV4Y2x1ZGUgPSBuZXcgU2V0PHN0cmluZz4ob3B0aW9ucy5leGNsdWRlID8/IFtdKTtcbiAgY29uc3QgaW5jbHVkZUxvZ291dCA9IG9wdGlvbnMuaW5jbHVkZUxvZ291dCA/PyBmYWxzZTtcbiAgY29uc3QgYmFzZVBhdGggPSBvcHRpb25zLmJhc2VQYXRoO1xuXG4gIGNvbnN0IHNlY3Rpb25zOiBTZXR0aW5nc1NlY3Rpb25bXSA9IFsuLi5TRVRUSU5HU19TRUNUSU9OU19DQVRBTE9HLCAuLi4ob3B0aW9ucy5pbmNsdWRlID8/IFtdKV07XG5cbiAgbGV0IHJlc29sdmVkID0gc2VjdGlvbnMuZmlsdGVyKHMgPT4ge1xuICAgIGlmIChleGNsdWRlLmhhcyhzLnRva2VuKSkgcmV0dXJuIGZhbHNlO1xuICAgIGlmIChzLnRva2VuID09PSAnYWN0aW9uLWxvZ291dCcgJiYgIWluY2x1ZGVMb2dvdXQpIHJldHVybiBmYWxzZTtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfSk7XG5cbiAgaWYgKG9wdGlvbnMub3JkZXIgJiYgb3B0aW9ucy5vcmRlci5sZW5ndGggPiAwKSB7XG4gICAgY29uc3QgcmFuayA9IG5ldyBNYXAob3B0aW9ucy5vcmRlci5tYXAoKHRva2VuLCBpKSA9PiBbdG9rZW4sIGldKSk7XG4gICAgcmVzb2x2ZWQgPSBbLi4ucmVzb2x2ZWRdLnNvcnQoKGEsIGIpID0+IHtcbiAgICAgIGNvbnN0IHJhID0gcmFuay5oYXMoYS50b2tlbikgPyByYW5rLmdldChhLnRva2VuKSEgOiBOdW1iZXIuTUFYX1NBRkVfSU5URUdFUjtcbiAgICAgIGNvbnN0IHJiID0gcmFuay5oYXMoYi50b2tlbikgPyByYW5rLmdldChiLnRva2VuKSEgOiBOdW1iZXIuTUFYX1NBRkVfSU5URUdFUjtcbiAgICAgIHJldHVybiByYSAtIHJiO1xuICAgIH0pO1xuICB9XG5cbiAgcmV0dXJuIHJlc29sdmVkLm1hcChzID0+IHtcbiAgICBjb25zdCBjYXJkOiBBY3Rpb25DYXJkTWV0YWRhdGEgPSB7XG4gICAgICB0b2tlbjogcy50b2tlbixcbiAgICAgIHRpdGxlOiB0KHMudGl0bGVLZXkpLFxuICAgICAgaWNvbjoge1xuICAgICAgICBpb25pY29uOiBzLmlvbmljb24sXG4gICAgICAgIGNvbG9yOiAnZGFyaycsXG4gICAgICAgIGJhY2tncm91bmRDb2xvcjogJ2xpZ2h0JyxcbiAgICAgIH0sXG4gICAgICBzaG93Q2hldnJvbjogcy5zaG93Q2hldnJvbiA/PyB0cnVlLFxuICAgICAgc2hhZG93ZWQ6IHMuc2hhZG93ZWQgPz8gdHJ1ZSxcbiAgICB9O1xuICAgIGlmIChzLmRlc2NLZXkpIGNhcmQuZGVzY3JpcHRpb24gPSB0KHMuZGVzY0tleSk7XG4gICAgaWYgKHMucm91dGVyTGluaykge1xuICAgICAgY2FyZC5yb3V0ZXJMaW5rID0gYmFzZVBhdGggPyByZXdyaXRlQmFzZVBhdGgocy5yb3V0ZXJMaW5rLCBiYXNlUGF0aCkgOiBzLnJvdXRlckxpbms7XG4gICAgfVxuICAgIHJldHVybiBjYXJkO1xuICB9KTtcbn1cblxuLyoqIFJlZXNjcmliZSBlbCBwcmVmaWpvIGAvYXBwL3NldHRpbmdzYCBkZSB1bmEgcnV0YSBkZWwgY2F0w6Fsb2dvIHBvciBgYmFzZVBhdGhgLiAqL1xuZnVuY3Rpb24gcmV3cml0ZUJhc2VQYXRoKHJvdXRlckxpbms6IHN0cmluZywgYmFzZVBhdGg6IHN0cmluZyk6IHN0cmluZyB7XG4gIGlmIChyb3V0ZXJMaW5rLnN0YXJ0c1dpdGgoQ0FUQUxPR19CQVNFKSkge1xuICAgIHJldHVybiBiYXNlUGF0aCArIHJvdXRlckxpbmsuc2xpY2UoQ0FUQUxPR19CQVNFLmxlbmd0aCk7XG4gIH1cbiAgcmV0dXJuIHJvdXRlckxpbms7XG59XG4iXX0=
@@ -0,0 +1,59 @@
1
+ import { provideValtechProfileRoutes } from '../profile-view/profile.routes';
2
+ import { provideValtechPreferencesRoutes } from '../preferences-view/preferences.routes';
3
+ import { SettingsHubComponent } from './settings-hub.component';
4
+ /**
5
+ * Helper para montar el bloque completo de Settings en una app del factory: el
6
+ * HUB de navegación (`val-settings-hub`) en el index + las vistas promovidas
7
+ * (Perfil, Preferencias) + las rutas propias de la app (`extraRoutes`).
8
+ *
9
+ * Pensado para apps nuevas (greenfield) que adoptan el set entero. showcase NO
10
+ * lo usa hoy (preserva su `settings.routes.ts` por la semántica de sus muchas
11
+ * secciones no promovidas — ver guía de promoción), pero el provider debe
12
+ * existir y compilar para el resto de apps.
13
+ *
14
+ * @example
15
+ * ```ts
16
+ * // app.routes.ts
17
+ * import { provideValtechSettingsRoutes } from 'valtech-components';
18
+ *
19
+ * export const routes: Routes = [
20
+ * {
21
+ * path: 'app',
22
+ * children: [
23
+ * ...provideValtechSettingsRoutes({
24
+ * hubConfig: { onLogout: () => auth.logoutWithConfirmation() },
25
+ * extraRoutes: [
26
+ * { path: 'security', loadComponent: () => ... },
27
+ * ],
28
+ * }),
29
+ * ],
30
+ * },
31
+ * ];
32
+ * ```
33
+ */
34
+ export function provideValtechSettingsRoutes(opts) {
35
+ const basePath = opts?.basePath ?? 'settings';
36
+ const includeProfile = opts?.includeProfile ?? true;
37
+ const includePreferences = opts?.includePreferences ?? true;
38
+ return [
39
+ {
40
+ path: basePath,
41
+ children: [
42
+ {
43
+ path: '',
44
+ component: SettingsHubComponent,
45
+ data: { settingsHubConfig: opts?.hubConfig },
46
+ },
47
+ ...(includeProfile ? provideValtechProfileRoutes({ config: opts?.profileConfig }) : []),
48
+ ...(includePreferences
49
+ ? provideValtechPreferencesRoutes({
50
+ path: opts?.preferencesPath ?? 'preferences',
51
+ config: opts?.preferencesConfig,
52
+ })
53
+ : []),
54
+ ...(opts?.extraRoutes ?? []),
55
+ ],
56
+ },
57
+ ];
58
+ }
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dGluZ3Mucm91dGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL29yZ2FuaXNtcy9zZXR0aW5ncy1odWIvc2V0dGluZ3Mucm91dGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRTdFLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBR3pGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBNEJoRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0E2Qkc7QUFDSCxNQUFNLFVBQVUsNEJBQTRCLENBQUMsSUFBbUM7SUFDOUUsTUFBTSxRQUFRLEdBQUcsSUFBSSxFQUFFLFFBQVEsSUFBSSxVQUFVLENBQUM7SUFDOUMsTUFBTSxjQUFjLEdBQUcsSUFBSSxFQUFFLGNBQWMsSUFBSSxJQUFJLENBQUM7SUFDcEQsTUFBTSxrQkFBa0IsR0FBRyxJQUFJLEVBQUUsa0JBQWtCLElBQUksSUFBSSxDQUFDO0lBRTVELE9BQU87UUFDTDtZQUNFLElBQUksRUFBRSxRQUFRO1lBQ2QsUUFBUSxFQUFFO2dCQUNSO29CQUNFLElBQUksRUFBRSxFQUFFO29CQUNSLFNBQVMsRUFBRSxvQkFBb0I7b0JBQy9CLElBQUksRUFBRSxFQUFFLGlCQUFpQixFQUFFLElBQUksRUFBRSxTQUFTLEVBQUU7aUJBQzdDO2dCQUNELEdBQUcsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLDJCQUEyQixDQUFDLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxhQUFhLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7Z0JBQ3ZGLEdBQUcsQ0FBQyxrQkFBa0I7b0JBQ3BCLENBQUMsQ0FBQywrQkFBK0IsQ0FBQzt3QkFDOUIsSUFBSSxFQUFFLElBQUksRUFBRSxlQUFlLElBQUksYUFBYTt3QkFDNUMsTUFBTSxFQUFFLElBQUksRUFBRSxpQkFBaUI7cUJBQ2hDLENBQUM7b0JBQ0osQ0FBQyxDQUFDLEVBQUUsQ0FBQztnQkFDUCxHQUFHLENBQUMsSUFBSSxFQUFFLFdBQVcsSUFBSSxFQUFFLENBQUM7YUFDN0I7U0FDRjtLQUNGLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUm91dGVzIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcblxuaW1wb3J0IHsgcHJvdmlkZVZhbHRlY2hQcm9maWxlUm91dGVzIH0gZnJvbSAnLi4vcHJvZmlsZS12aWV3L3Byb2ZpbGUucm91dGVzJztcbmltcG9ydCB7IFByb2ZpbGVWaWV3Q29uZmlnIH0gZnJvbSAnLi4vcHJvZmlsZS12aWV3L3R5cGVzJztcbmltcG9ydCB7IHByb3ZpZGVWYWx0ZWNoUHJlZmVyZW5jZXNSb3V0ZXMgfSBmcm9tICcuLi9wcmVmZXJlbmNlcy12aWV3L3ByZWZlcmVuY2VzLnJvdXRlcyc7XG5pbXBvcnQgeyBQcmVmZXJlbmNlc1ZpZXdDb25maWcgfSBmcm9tICcuLi9wcmVmZXJlbmNlcy12aWV3L3R5cGVzJztcblxuaW1wb3J0IHsgU2V0dGluZ3NIdWJDb21wb25lbnQgfSBmcm9tICcuL3NldHRpbmdzLWh1Yi5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2V0dGluZ3NIdWJDb25maWcgfSBmcm9tICcuL3R5cGVzJztcblxuLyoqXG4gKiBPcGNpb25lcyBkZSBgcHJvdmlkZVZhbHRlY2hTZXR0aW5nc1JvdXRlc2AuIEFncnVwYSBlbCBIVUIgKGB2YWwtc2V0dGluZ3MtaHViYClcbiAqIGNvbiBsYXMgdmlzdGFzIHlhIHByb21vdmlkYXMgKFBlcmZpbCArIFByZWZlcmVuY2lhcykgYmFqbyB1biDDum5pY28gYHBhdGhgXG4gKiBiYXNlLCB5IGRlamEgYGV4dHJhUm91dGVzYCBwYXJhIGxhcyBzZWNjaW9uZXMgZGUgbGEgYXBwIGHDum4gbm8gcHJvbW92aWRhc1xuICogKHNlY3VyaXR5LCBhY2NvdW50LCBub3RpZmljYXRpb25zLCBvcmdhbml6YXRpb24sIOKApikuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVmFsdGVjaFNldHRpbmdzUm91dGVzT3B0aW9ucyB7XG4gIC8qKiBQYXRoIGJhc2UgZGVsIGJsb3F1ZSBkZSBzZXR0aW5ncy4gRGVmYXVsdCBgJ3NldHRpbmdzJ2AuICovXG4gIGJhc2VQYXRoPzogc3RyaW5nO1xuICAvKiogQ29uZmlnIGRlbCBIVUIgKHBhc2FkYSBwb3Igcm91dGUgZGF0YSBgc2V0dGluZ3NIdWJDb25maWdgKS4gKi9cbiAgaHViQ29uZmlnPzogU2V0dGluZ3NIdWJDb25maWc7XG4gIC8qKiBDb25maWcgZGUgbGEgdmlzdGEgUGVyZmlsIChwYXNzLXRocm91Z2ggYSBgcHJvdmlkZVZhbHRlY2hQcm9maWxlUm91dGVzYCkuICovXG4gIHByb2ZpbGVDb25maWc/OiBQcm9maWxlVmlld0NvbmZpZztcbiAgLyoqIENvbmZpZyBkZSBsYSB2aXN0YSBQcmVmZXJlbmNpYXMgKHBhc3MtdGhyb3VnaCBhIGBwcm92aWRlVmFsdGVjaFByZWZlcmVuY2VzUm91dGVzYCkuICovXG4gIHByZWZlcmVuY2VzQ29uZmlnPzogUHJlZmVyZW5jZXNWaWV3Q29uZmlnO1xuICAvKiogTW9udGEgbGEgcnV0YSBgcHJvZmlsZWAuIERlZmF1bHQgYHRydWVgLiAqL1xuICBpbmNsdWRlUHJvZmlsZT86IGJvb2xlYW47XG4gIC8qKiBNb250YSBsYSBydXRhIGRlIHByZWZlcmVuY2lhcy4gRGVmYXVsdCBgdHJ1ZWAuICovXG4gIGluY2x1ZGVQcmVmZXJlbmNlcz86IGJvb2xlYW47XG4gIC8qKiBQYXRoIGRlIGxhIHZpc3RhIFByZWZlcmVuY2lhcy4gRGVmYXVsdCBgJ3ByZWZlcmVuY2VzJ2AuICovXG4gIHByZWZlcmVuY2VzUGF0aD86IHN0cmluZztcbiAgLyoqIFJ1dGFzIGV4dHJhIGEgc3VtYXIgY29tbyBoaWphcyAoc2VjY2lvbmVzIGRlIGxhIGFwcCBubyBwcm9tb3ZpZGFzKS4gKi9cbiAgZXh0cmFSb3V0ZXM/OiBSb3V0ZXM7XG59XG5cbi8qKlxuICogSGVscGVyIHBhcmEgbW9udGFyIGVsIGJsb3F1ZSBjb21wbGV0byBkZSBTZXR0aW5ncyBlbiB1bmEgYXBwIGRlbCBmYWN0b3J5OiBlbFxuICogSFVCIGRlIG5hdmVnYWNpw7NuIChgdmFsLXNldHRpbmdzLWh1YmApIGVuIGVsIGluZGV4ICsgbGFzIHZpc3RhcyBwcm9tb3ZpZGFzXG4gKiAoUGVyZmlsLCBQcmVmZXJlbmNpYXMpICsgbGFzIHJ1dGFzIHByb3BpYXMgZGUgbGEgYXBwIChgZXh0cmFSb3V0ZXNgKS5cbiAqXG4gKiBQZW5zYWRvIHBhcmEgYXBwcyBudWV2YXMgKGdyZWVuZmllbGQpIHF1ZSBhZG9wdGFuIGVsIHNldCBlbnRlcm8uIHNob3djYXNlIE5PXG4gKiBsbyB1c2EgaG95IChwcmVzZXJ2YSBzdSBgc2V0dGluZ3Mucm91dGVzLnRzYCBwb3IgbGEgc2Vtw6FudGljYSBkZSBzdXMgbXVjaGFzXG4gKiBzZWNjaW9uZXMgbm8gcHJvbW92aWRhcyDigJQgdmVyIGd1w61hIGRlIHByb21vY2nDs24pLCBwZXJvIGVsIHByb3ZpZGVyIGRlYmVcbiAqIGV4aXN0aXIgeSBjb21waWxhciBwYXJhIGVsIHJlc3RvIGRlIGFwcHMuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzXG4gKiAvLyBhcHAucm91dGVzLnRzXG4gKiBpbXBvcnQgeyBwcm92aWRlVmFsdGVjaFNldHRpbmdzUm91dGVzIH0gZnJvbSAndmFsdGVjaC1jb21wb25lbnRzJztcbiAqXG4gKiBleHBvcnQgY29uc3Qgcm91dGVzOiBSb3V0ZXMgPSBbXG4gKiAgIHtcbiAqICAgICBwYXRoOiAnYXBwJyxcbiAqICAgICBjaGlsZHJlbjogW1xuICogICAgICAgLi4ucHJvdmlkZVZhbHRlY2hTZXR0aW5nc1JvdXRlcyh7XG4gKiAgICAgICAgIGh1YkNvbmZpZzogeyBvbkxvZ291dDogKCkgPT4gYXV0aC5sb2dvdXRXaXRoQ29uZmlybWF0aW9uKCkgfSxcbiAqICAgICAgICAgZXh0cmFSb3V0ZXM6IFtcbiAqICAgICAgICAgICB7IHBhdGg6ICdzZWN1cml0eScsIGxvYWRDb21wb25lbnQ6ICgpID0+IC4uLiB9LFxuICogICAgICAgICBdLFxuICogICAgICAgfSksXG4gKiAgICAgXSxcbiAqICAgfSxcbiAqIF07XG4gKiBgYGBcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHByb3ZpZGVWYWx0ZWNoU2V0dGluZ3NSb3V0ZXMob3B0cz86IFZhbHRlY2hTZXR0aW5nc1JvdXRlc09wdGlvbnMpOiBSb3V0ZXMge1xuICBjb25zdCBiYXNlUGF0aCA9IG9wdHM/LmJhc2VQYXRoID8/ICdzZXR0aW5ncyc7XG4gIGNvbnN0IGluY2x1ZGVQcm9maWxlID0gb3B0cz8uaW5jbHVkZVByb2ZpbGUgPz8gdHJ1ZTtcbiAgY29uc3QgaW5jbHVkZVByZWZlcmVuY2VzID0gb3B0cz8uaW5jbHVkZVByZWZlcmVuY2VzID8/IHRydWU7XG5cbiAgcmV0dXJuIFtcbiAgICB7XG4gICAgICBwYXRoOiBiYXNlUGF0aCxcbiAgICAgIGNoaWxkcmVuOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBwYXRoOiAnJyxcbiAgICAgICAgICBjb21wb25lbnQ6IFNldHRpbmdzSHViQ29tcG9uZW50LFxuICAgICAgICAgIGRhdGE6IHsgc2V0dGluZ3NIdWJDb25maWc6IG9wdHM/Lmh1YkNvbmZpZyB9LFxuICAgICAgICB9LFxuICAgICAgICAuLi4oaW5jbHVkZVByb2ZpbGUgPyBwcm92aWRlVmFsdGVjaFByb2ZpbGVSb3V0ZXMoeyBjb25maWc6IG9wdHM/LnByb2ZpbGVDb25maWcgfSkgOiBbXSksXG4gICAgICAgIC4uLihpbmNsdWRlUHJlZmVyZW5jZXNcbiAgICAgICAgICA/IHByb3ZpZGVWYWx0ZWNoUHJlZmVyZW5jZXNSb3V0ZXMoe1xuICAgICAgICAgICAgICBwYXRoOiBvcHRzPy5wcmVmZXJlbmNlc1BhdGggPz8gJ3ByZWZlcmVuY2VzJyxcbiAgICAgICAgICAgICAgY29uZmlnOiBvcHRzPy5wcmVmZXJlbmNlc0NvbmZpZyxcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgOiBbXSksXG4gICAgICAgIC4uLihvcHRzPy5leHRyYVJvdXRlcyA/PyBbXSksXG4gICAgICBdLFxuICAgIH0sXG4gIF07XG59XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL3NldHRpbmdzLWh1Yi90eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2V0dGluZ3NTZWN0aW9uIH0gZnJvbSAnLi9zZXR0aW5ncy1zZWN0aW9ucyc7XG5cbi8qKlxuICogQ29uZmlndXJhY2nDs24gYWNvdGFkYSBkZSBgdmFsLXNldHRpbmdzLWh1YmAgKG9iamVjdC1maXJzdCkuIEVsIEhVQiBlcyBsYVxuICogcG9ydGFkYSBkZSBsYSBzZWNjacOzbiBTZXR0aW5nczogdW4gaGVhZGVyICh0w610dWxvICsgZGVzY3JpcGNpw7NuKSArIHVuIGdyaWQgZGVcbiAqIGB2YWwtYWN0aW9uLWNhcmRgIHF1ZSBuYXZlZ2EgYSBsYXMgc3ViLXZpc3Rhcy5cbiAqXG4gKiBEb2JsZSBuYW1lc3BhY2UgaTE4bjpcbiAqICAtIGBpMThuTmFtZXNwYWNlYCAoZGVmYXVsdCBgJ0Rhc2hib2FyZCdgKSDigJQgbGFiZWxzIGRlIGNhZGEgc2VjY2nDs25cbiAqICAgIChgZ2VuZXJhbGAsIGBhY2NvdW50YCwg4oCmKS4gRXMgZWwgc2V0IHF1ZSBjb21wYXJ0ZW4gZGFzaGJvYXJkIC8gaHViLlxuICogIC0gYHBhZ2VJMThuTmFtZXNwYWNlYCAoZGVmYXVsdCBgJ1NldHRpbmdzLlByZWZlcmVuY2VzJ2ApIOKAlCBgcGFnZVRpdGxlYCAvXG4gKiAgICBgcGFnZURlc2NyaXB0aW9uYCBkZWwgaGVhZGVyIGRlbCBIVUIuXG4gKlxuICogRWwgY2F0w6Fsb2dvIGRlIHNlY2Npb25lcyBlcyBlbCBkZWZhdWx0IChgU0VUVElOR1NfU0VDVElPTlNfQ0FUQUxPR2ApOyBzZVxuICogZmlsdHJhIChgZXhjbHVkZWApLCByZW9yZGVuYSAoYG9yZGVyYCksIGV4dGllbmRlIChgaW5jbHVkZWApIG8gcmVlc2NyaWJlIHN1c1xuICogcnV0YXMgKGBiYXNlUGF0aGApLiBgaW5jbHVkZUxvZ291dGAgYWdyZWdhIGxhIGNhcmQgZGUgY2llcnJlIGRlIHNlc2nDs24gKHNpblxuICogcnV0YSkg4oCUIHN1IGNsaWNrIHNlIGRlbGVnYSBhIGBvbkxvZ291dGAuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2V0dGluZ3NIdWJDb25maWcge1xuICAvKiogT2N1bHRhIHNlY2Npb25lcyBwb3IgdG9rZW4gKGVqLiBsYSBwcm9waWEgZW50cmFkYSBkZWwgSFVCKS4gKi9cbiAgZXhjbHVkZT86IHN0cmluZ1tdO1xuICAvKiogU2VjY2lvbmVzIGV4dHJhIGEgc3VtYXIgYWwgY2F0w6Fsb2dvIChsYXMgZGUgbGEgYXBwIGHDum4gbm8gcHJvbW92aWRhcykuICovXG4gIGluY2x1ZGU/OiBTZXR0aW5nc1NlY3Rpb25bXTtcbiAgLyoqIE9yZGVuIGV4cGzDrWNpdG8gcG9yIHRva2VuLiBMYXMgbm8gbGlzdGFkYXMgcXVlZGFuIGFsIGZpbmFsLiAqL1xuICBvcmRlcj86IHN0cmluZ1tdO1xuICAvKiogSW5jbHV5ZSBsYSBjYXJkIGRlIGxvZ291dCAoc2luIHJ1dGEpLiBEZWZhdWx0IGBmYWxzZWAuICovXG4gIGluY2x1ZGVMb2dvdXQ/OiBib29sZWFuO1xuICAvKiogUmVlc2NyaWJlIGVsIHByZWZpam8gYC9hcHAvc2V0dGluZ3NgIGRlIGxhcyBydXRhcyBkZWwgY2F0w6Fsb2dvLiAqL1xuICBiYXNlUGF0aD86IHN0cmluZztcblxuICAvKiogTmFtZXNwYWNlIGkxOG4gZGUgbG9zIGxhYmVscyBkZSBzZWNjacOzbi4gRGVmYXVsdCBgJ0Rhc2hib2FyZCdgLiAqL1xuICBpMThuTmFtZXNwYWNlPzogc3RyaW5nO1xuICAvKiogTmFtZXNwYWNlIGkxOG4gZGVsIGhlYWRlciAocGFnZVRpdGxlL3BhZ2VEZXNjcmlwdGlvbikuIERlZmF1bHQgYCdTZXR0aW5ncy5QcmVmZXJlbmNlcydgLiAqL1xuICBwYWdlSTE4bk5hbWVzcGFjZT86IHN0cmluZztcblxuICAvKiogQ2FsbGJhY2sgYWwgY2xpY2sgZGUgbGEgY2FyZCBkZSBsb2dvdXQgKHNpbiBydXRhKS4gKi9cbiAgb25Mb2dvdXQ/OiAoKSA9PiB2b2lkO1xuICAvKiogQ2FsbGJhY2sgYWwgY2xpY2sgZGUgY3VhbHF1aWVyIGNhcmQsIGNvbiBzdSB0b2tlbi4gKi9cbiAgb25TZWN0aW9uQ2xpY2s/OiAodG9rZW46IHN0cmluZykgPT4gdm9pZDtcbn1cbiJdfQ==
@@ -2,5 +2,5 @@
2
2
  * Current version of valtech-components.
3
3
  * This is automatically updated during the publish process.
4
4
  */
5
- export const VERSION = '2.0.974';
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvdmVyc2lvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0dBR0c7QUFDSCxNQUFNLENBQUMsTUFBTSxPQUFPLEdBQUcsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBDdXJyZW50IHZlcnNpb24gb2YgdmFsdGVjaC1jb21wb25lbnRzLlxuICogVGhpcyBpcyBhdXRvbWF0aWNhbGx5IHVwZGF0ZWQgZHVyaW5nIHRoZSBwdWJsaXNoIHByb2Nlc3MuXG4gKi9cbmV4cG9ydCBjb25zdCBWRVJTSU9OID0gJzIuMC45NzQnO1xuIl19
5
+ export const VERSION = '2.0.975';
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvdmVyc2lvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0dBR0c7QUFDSCxNQUFNLENBQUMsTUFBTSxPQUFPLEdBQUcsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBDdXJyZW50IHZlcnNpb24gb2YgdmFsdGVjaC1jb21wb25lbnRzLlxuICogVGhpcyBpcyBhdXRvbWF0aWNhbGx5IHVwZGF0ZWQgZHVyaW5nIHRoZSBwdWJsaXNoIHByb2Nlc3MuXG4gKi9cbmV4cG9ydCBjb25zdCBWRVJTSU9OID0gJzIuMC45NzUnO1xuIl19