valtech-components 4.0.990 → 4.0.992
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/organisms/survey-builder/survey-builder.component.mjs +12 -4
- package/esm2022/lib/components/organisms/survey-builder/types.mjs +1 -1
- package/esm2022/lib/services/errors/error-logging.interceptor.mjs +30 -5
- package/esm2022/lib/services/i18n/i18n.service.mjs +17 -4
- package/esm2022/lib/version.mjs +2 -2
- package/fesm2022/valtech-components.mjs +57 -11
- package/fesm2022/valtech-components.mjs.map +1 -1
- package/lib/components/atoms/rights-footer/rights-footer.component.d.ts +2 -2
- package/lib/components/molecules/cta-card/cta-card.component.d.ts +1 -1
- package/lib/components/molecules/features-list/features-list.component.d.ts +1 -1
- package/lib/components/molecules/load-more/load-more.component.d.ts +1 -1
- package/lib/components/molecules/metric-card/metric-card.component.d.ts +1 -1
- package/lib/components/molecules/operation-reference/operation-reference.component.d.ts +1 -1
- package/lib/components/organisms/account-view/account-view.component.d.ts +1 -1
- package/lib/components/organisms/article/article.component.d.ts +5 -5
- package/lib/components/organisms/auth-cta/auth-cta.component.d.ts +1 -1
- package/lib/components/organisms/notification-preferences-view/notification-preferences-view.component.d.ts +1 -1
- package/lib/components/organisms/organization-view/organization-view.component.d.ts +1 -1
- package/lib/components/organisms/survey-builder/survey-builder.component.d.ts +1 -0
- package/lib/components/organisms/survey-builder/types.d.ts +10 -0
- package/lib/services/errors/error-logging.interceptor.d.ts +9 -1
- package/lib/services/i18n/i18n.service.d.ts +14 -1
- package/lib/version.d.ts +1 -1
- package/package.json +1 -1
|
@@ -53,11 +53,11 @@ export declare class RightsFooterComponent {
|
|
|
53
53
|
/**
|
|
54
54
|
* Computed helper for align prop in template.
|
|
55
55
|
*/
|
|
56
|
-
propsAlign: import("@angular/core").Signal<"
|
|
56
|
+
propsAlign: import("@angular/core").Signal<"right" | "center" | "left">;
|
|
57
57
|
/**
|
|
58
58
|
* Computed helper for color prop in template.
|
|
59
59
|
*/
|
|
60
|
-
propsColor: import("@angular/core").Signal<"
|
|
60
|
+
propsColor: import("@angular/core").Signal<"light" | "dark" | "medium" | "primary" | "secondary" | "tertiary" | "success" | "warning" | "danger">;
|
|
61
61
|
/**
|
|
62
62
|
* Computed helper for withMargin prop in template.
|
|
63
63
|
*/
|
|
@@ -35,7 +35,7 @@ export declare class CtaCardComponent {
|
|
|
35
35
|
/** Emitted with the token of the clicked action button */
|
|
36
36
|
onAction: EventEmitter<string>;
|
|
37
37
|
/** Merged configuration with defaults */
|
|
38
|
-
config: import("@angular/core").Signal<CtaCardMetadata & Required<Pick<CtaCardMetadata, "
|
|
38
|
+
config: import("@angular/core").Signal<CtaCardMetadata & Required<Pick<CtaCardMetadata, "padding" | "borderRadius" | "bordered" | "shadowed" | "align">>>;
|
|
39
39
|
getBackground(): string;
|
|
40
40
|
getColor(): string | null;
|
|
41
41
|
static ɵfac: i0.ɵɵFactoryDeclaration<CtaCardComponent, never>;
|
|
@@ -42,7 +42,7 @@ export declare class FeaturesListComponent {
|
|
|
42
42
|
iconSize: number;
|
|
43
43
|
mode: "horizontal" | "vertical";
|
|
44
44
|
gap: "small" | "medium" | "large";
|
|
45
|
-
alignment: "
|
|
45
|
+
alignment: "start" | "center";
|
|
46
46
|
imageShape: "circle" | "square";
|
|
47
47
|
maxVisible: number;
|
|
48
48
|
showMoreLabel?: string;
|
|
@@ -26,7 +26,7 @@ export declare class LoadMoreComponent {
|
|
|
26
26
|
readonly color: import("@angular/core").Signal<string>;
|
|
27
27
|
readonly fill: import("@angular/core").Signal<string>;
|
|
28
28
|
readonly shape: import("@angular/core").Signal<string>;
|
|
29
|
-
readonly size: import("@angular/core").Signal<"small" | "
|
|
29
|
+
readonly size: import("@angular/core").Signal<"small" | "large" | "default">;
|
|
30
30
|
readonly threshold: import("@angular/core").Signal<string>;
|
|
31
31
|
readonly label: import("@angular/core").Signal<string>;
|
|
32
32
|
private readonly _pendingComplete;
|
|
@@ -28,7 +28,7 @@ export declare class MetricCardComponent {
|
|
|
28
28
|
/** Emitted with the token of the clicked action */
|
|
29
29
|
onAction: EventEmitter<string>;
|
|
30
30
|
/** Merged configuration with defaults */
|
|
31
|
-
config: import("@angular/core").Signal<MetricCardMetadata & Required<Pick<MetricCardMetadata, "
|
|
31
|
+
config: import("@angular/core").Signal<MetricCardMetadata & Required<Pick<MetricCardMetadata, "padding" | "borderRadius" | "bordered" | "shadowed">>>;
|
|
32
32
|
static ɵfac: i0.ɵɵFactoryDeclaration<MetricCardComponent, never>;
|
|
33
33
|
static ɵcmp: i0.ɵɵComponentDeclaration<MetricCardComponent, "val-metric-card", never, { "props": { "alias": "props"; "required": false; "isSignal": true; }; }, { "onAction": "onAction"; }, never, never, true, never>;
|
|
34
34
|
}
|
|
@@ -6,7 +6,7 @@ export declare class OperationReferenceComponent {
|
|
|
6
6
|
protected label: import("@angular/core").Signal<string>;
|
|
7
7
|
protected copiedLabel: import("@angular/core").Signal<string>;
|
|
8
8
|
protected copyAriaLabel: import("@angular/core").Signal<string>;
|
|
9
|
-
protected align: import("@angular/core").Signal<"
|
|
9
|
+
protected align: import("@angular/core").Signal<"start" | "end" | "center">;
|
|
10
10
|
protected copyValue(): void;
|
|
11
11
|
static ɵfac: i0.ɵɵFactoryDeclaration<OperationReferenceComponent, never>;
|
|
12
12
|
static ɵcmp: i0.ɵɵComponentDeclaration<OperationReferenceComponent, "val-operation-reference", never, { "props": { "alias": "props"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
@@ -34,7 +34,7 @@ export declare class AccountViewComponent {
|
|
|
34
34
|
* mergea con los defaults — `@Input` gana sobre route data.
|
|
35
35
|
*/
|
|
36
36
|
config?: AccountViewConfig;
|
|
37
|
-
readonly resolvedConfig: import("@angular/core").Signal<Required<Omit<AccountViewConfig, "
|
|
37
|
+
readonly resolvedConfig: import("@angular/core").Signal<Required<Omit<AccountViewConfig, "onOrgCreated" | "onOrgSwitched" | "onLoggedOut" | "onAccountDeleted">> & Pick<AccountViewConfig, "onOrgCreated" | "onOrgSwitched" | "onLoggedOut" | "onAccountDeleted">>;
|
|
38
38
|
/** Namespace i18n resuelto (capturado para llamadas no-reactivas). */
|
|
39
39
|
private get ns();
|
|
40
40
|
readonly createOrgOpen: import("@angular/core").WritableSignal<boolean>;
|
|
@@ -69,7 +69,7 @@ export declare class ArticleComponent implements OnInit, AfterViewInit {
|
|
|
69
69
|
linkConfig?: import("valtech-components").LinkProcessorConfig;
|
|
70
70
|
allowPartialBold?: boolean;
|
|
71
71
|
authorColor?: import("@ionic/core").Color;
|
|
72
|
-
alignment?: "
|
|
72
|
+
alignment?: "right" | "center" | "left";
|
|
73
73
|
showQuoteMark?: boolean;
|
|
74
74
|
};
|
|
75
75
|
getHighlightTextProps(element: ArticleElement): {
|
|
@@ -88,7 +88,7 @@ export declare class ArticleComponent implements OnInit, AfterViewInit {
|
|
|
88
88
|
getHighlightColor(element: ArticleElement): string;
|
|
89
89
|
getButtonProps(element: ArticleElement): {
|
|
90
90
|
actionType?: import("valtech-components").ActionType;
|
|
91
|
-
expand?: "
|
|
91
|
+
expand?: "block" | "full";
|
|
92
92
|
link?: string;
|
|
93
93
|
href?: string;
|
|
94
94
|
routerLink?: string | any[];
|
|
@@ -103,9 +103,9 @@ export declare class ArticleComponent implements OnInit, AfterViewInit {
|
|
|
103
103
|
contentInterpolation?: Record<string, string | number>;
|
|
104
104
|
icon?: import("valtech-components").IconMetada;
|
|
105
105
|
shape?: "round";
|
|
106
|
-
size?: "small" | "
|
|
107
|
-
fill?: "
|
|
108
|
-
type: "
|
|
106
|
+
size?: "small" | "large" | "default";
|
|
107
|
+
fill?: "solid" | "clear" | "outline" | "default" | "tint";
|
|
108
|
+
type: "submit" | "button" | "reset";
|
|
109
109
|
token?: string;
|
|
110
110
|
ariaLabel?: string;
|
|
111
111
|
ref?: any;
|
|
@@ -35,7 +35,7 @@ export declare class AuthCtaComponent {
|
|
|
35
35
|
onRegister: EventEmitter<void>;
|
|
36
36
|
constructor();
|
|
37
37
|
/** Merged configuration with defaults */
|
|
38
|
-
config: import("@angular/core").Signal<AuthCtaMetadata & Required<Pick<AuthCtaMetadata, "
|
|
38
|
+
config: import("@angular/core").Signal<AuthCtaMetadata & Required<Pick<AuthCtaMetadata, "padding" | "borderRadius" | "align">>>;
|
|
39
39
|
loginLabel: import("@angular/core").Signal<string>;
|
|
40
40
|
registerLabel: import("@angular/core").Signal<string>;
|
|
41
41
|
topLogoProps: import("@angular/core").Signal<{
|
|
@@ -90,7 +90,7 @@ export declare class NotificationPreferencesViewComponent implements OnInit, OnD
|
|
|
90
90
|
readonly busyLabel: import("@angular/core").Signal<string>;
|
|
91
91
|
readonly contextMessage: import("@angular/core").Signal<string>;
|
|
92
92
|
readonly alertVariant: import("@angular/core").Signal<"warning" | "danger" | "info">;
|
|
93
|
-
readonly alertIcon: import("@angular/core").Signal<"
|
|
93
|
+
readonly alertIcon: import("@angular/core").Signal<"close-circle-outline" | "alert-circle-outline">;
|
|
94
94
|
readonly toggleProps: import("@angular/core").Signal<ToggleInputMetadata>;
|
|
95
95
|
readonly retryButtonProps: import("@angular/core").Signal<Partial<ButtonMetadata>>;
|
|
96
96
|
readonly tokenPreview: import("@angular/core").Signal<string>;
|
|
@@ -53,7 +53,7 @@ export declare class OrganizationViewComponent {
|
|
|
53
53
|
* `resolvedConfig` mergea con los defaults — `@Input` gana sobre route data.
|
|
54
54
|
*/
|
|
55
55
|
config?: OrganizationViewConfig;
|
|
56
|
-
readonly resolvedConfig: import("@angular/core").Signal<Required<Omit<OrganizationViewConfig, "
|
|
56
|
+
readonly resolvedConfig: import("@angular/core").Signal<Required<Omit<OrganizationViewConfig, "onOrgEdited" | "onMemberInvited" | "onOwnershipTransferred" | "onLeftOrg" | "onOrgDeleted" | "onOrgCreated">> & Pick<OrganizationViewConfig, "onOrgEdited" | "onMemberInvited" | "onOwnershipTransferred" | "onLeftOrg" | "onOrgDeleted" | "onOrgCreated">>;
|
|
57
57
|
/** Namespace i18n resuelto (capturado para llamadas no-reactivas). */
|
|
58
58
|
private get ns();
|
|
59
59
|
readonly org: import("@angular/core").WritableSignal<Organization>;
|
|
@@ -66,6 +66,7 @@ export declare class SurveyBuilderComponent implements OnInit {
|
|
|
66
66
|
draftQuestion(field: EditableFieldDef): void;
|
|
67
67
|
applyQuestion(field: EditableFieldDef): void;
|
|
68
68
|
save(): Promise<void>;
|
|
69
|
+
private hydrate;
|
|
69
70
|
private rowFromField;
|
|
70
71
|
static ɵfac: i0.ɵɵFactoryDeclaration<SurveyBuilderComponent, never>;
|
|
71
72
|
static ɵcmp: i0.ɵɵComponentDeclaration<SurveyBuilderComponent, "val-survey-builder", never, { "props": { "alias": "props"; "required": false; }; }, { "saved": "saved"; "draft": "draft"; }, never, never, true, never>;
|
|
@@ -56,6 +56,16 @@ export interface SurveyBuilderMetadata {
|
|
|
56
56
|
* y emite `draft` sin tocar la red.
|
|
57
57
|
*/
|
|
58
58
|
persist?: boolean;
|
|
59
|
+
/**
|
|
60
|
+
* Siembra el builder con una encuesta que ya existe, sin ir a buscarla.
|
|
61
|
+
*
|
|
62
|
+
* Va de la mano de `persist: false`: la app que tiene endpoint propio ya
|
|
63
|
+
* recibió la encuesta en su listado, así que pedirla de nuevo por el endpoint
|
|
64
|
+
* genérico sería una lectura de más — y encima por una vía que exige
|
|
65
|
+
* `apps:manage`. Con `typeId` el builder carga Y guarda solo; con `initial`
|
|
66
|
+
* solo se llena.
|
|
67
|
+
*/
|
|
68
|
+
initial?: SurveyDraftEvent;
|
|
59
69
|
}
|
|
60
70
|
export interface SurveyBuilderSaveEvent {
|
|
61
71
|
typeConfig: RequestTypeConfig;
|
|
@@ -16,7 +16,15 @@ export declare const EXPECTED_NOT_FOUND: HttpContextToken<boolean>;
|
|
|
16
16
|
* Interceptor HTTP de observabilidad (Capa 1 del estándar de manejo de errores).
|
|
17
17
|
*
|
|
18
18
|
* Para CADA respuesta HTTP con error:
|
|
19
|
-
*
|
|
19
|
+
* 0. Si es un GET (idempotente) que falló con 502/503/504, reintenta hasta 2
|
|
20
|
+
* veces con un backoff corto (400ms/800ms) ANTES de pasar al resto del
|
|
21
|
+
* pipeline — el caso típico es un cold-start de Lambda en dev: 3-4
|
|
22
|
+
* requests en paralelo al bootstrap (auth/profile + runs + org/{id})
|
|
23
|
+
* pegan contra lambdas frías al mismo tiempo, todas 504, y ~2s después ya
|
|
24
|
+
* están tibias y funcionan. Detectado en Merotz dev 2026-08-17. Nunca
|
|
25
|
+
* reintenta POST/PUT/DELETE/PATCH (no son idempotentes) ni 4xx (error de
|
|
26
|
+
* negocio, reintentar no lo arregla).
|
|
27
|
+
* 1. Si sigue fallando tras los reintentos: normaliza el error con `interpretError`.
|
|
20
28
|
* 2. Loguea un evento estructurado a consola con el prefijo `[HTTP]`.
|
|
21
29
|
* 3. Reporta el error a Firebase Analytics (`source: 'http'`), si hay analytics.
|
|
22
30
|
*
|
|
@@ -128,7 +128,20 @@ export declare class I18nService {
|
|
|
128
128
|
*/
|
|
129
129
|
hasNamespace(namespace: string): boolean;
|
|
130
130
|
/**
|
|
131
|
-
* Carga idioma guardado en localStorage o
|
|
131
|
+
* Carga el idioma guardado en localStorage, o adivina desde el navegador.
|
|
132
|
+
*
|
|
133
|
+
* La detección de acá es PROVISIONAL y NO se persiste, a propósito. El
|
|
134
|
+
* constructor corre antes que el APP_INITIALIZER de `provideValtechI18n`,
|
|
135
|
+
* que es quien conoce la config real de la app. Cuando esto persistía el
|
|
136
|
+
* idioma detectado, el initializer leía esa misma clave un instante después,
|
|
137
|
+
* la tomaba por preferencia guardada del usuario y entraba por la rama
|
|
138
|
+
* `stored` — así que `detectBrowserLanguage: false` no tenía efecto en
|
|
139
|
+
* ninguna app del factory. Escribir acá fabricaba una preferencia que el
|
|
140
|
+
* usuario nunca expresó.
|
|
141
|
+
*
|
|
142
|
+
* Persistir es responsabilidad de `setLanguage()`, que se llama cuando la
|
|
143
|
+
* elección sí es del usuario (o cuando el initializer ya decidió con la
|
|
144
|
+
* config a la vista).
|
|
132
145
|
*/
|
|
133
146
|
private loadStoredLanguage;
|
|
134
147
|
/**
|
package/lib/version.d.ts
CHANGED