valtech-components 4.0.1023 → 4.0.1025
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/molecules/select-input/select-input.component.mjs +20 -5
- package/esm2022/lib/components/molecules/select-input-v2/select-input-v2.component.mjs +265 -0
- package/esm2022/lib/components/organisms/change-email-modal/change-email-modal.component.mjs +6 -8
- package/esm2022/lib/components/organisms/change-password-modal/change-password-modal.component.mjs +5 -4
- package/esm2022/lib/components/organisms/delete-account-modal/delete-account-modal.component.mjs +9 -28
- package/esm2022/lib/components/organisms/form/form.component.mjs +14 -4
- package/esm2022/lib/components/organisms/login-attempt-modal/login-attempt-modal.component.mjs +42 -59
- package/esm2022/lib/components/organisms/mfa-modal/mfa-modal.component.mjs +6 -8
- package/esm2022/lib/components/organisms/profile-modal/profile-modal.component.mjs +10 -33
- package/esm2022/lib/components/organisms/session-list-modal/session-list-modal.component.mjs +9 -34
- package/esm2022/lib/components/types.mjs +1 -1
- package/esm2022/lib/version.mjs +2 -2
- package/esm2022/public-api.mjs +2 -1
- package/fesm2022/valtech-components.mjs +354 -166
- package/fesm2022/valtech-components.mjs.map +1 -1
- package/lib/components/molecules/select-input/select-input.component.d.ts +1 -0
- package/lib/components/molecules/select-input-v2/select-input-v2.component.d.ts +33 -0
- package/lib/components/organisms/login-attempt-modal/login-attempt-modal.component.d.ts +6 -3
- package/lib/components/organisms/profile-modal/profile-modal.component.d.ts +1 -1
- package/lib/components/types.d.ts +8 -1
- package/lib/version.d.ts +1 -1
- package/package.json +1 -1
- package/public-api.d.ts +1 -0
|
@@ -46,6 +46,7 @@ export declare class SearchSelectorComponent implements OnInit, OnChanges {
|
|
|
46
46
|
*/
|
|
47
47
|
private resolveProps;
|
|
48
48
|
private setupComponent;
|
|
49
|
+
iconMask(src: string): string;
|
|
49
50
|
/**
|
|
50
51
|
* Busca un key en `_global` primero, luego en `Common`, finalmente cae al
|
|
51
52
|
* default hardcoded. Útil para textos cross-cutting (cancel/ok/close/etc.)
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { OnChanges, OnInit, SimpleChanges } from '@angular/core';
|
|
2
|
+
import { InputMetadata, InputOption } from '../../types';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export declare class SelectInputV2Component implements OnInit, OnChanges {
|
|
5
|
+
private static nextId;
|
|
6
|
+
private i18n;
|
|
7
|
+
private presets;
|
|
8
|
+
private host;
|
|
9
|
+
preset?: string;
|
|
10
|
+
props: Partial<InputMetadata>;
|
|
11
|
+
resolvedProps: InputMetadata;
|
|
12
|
+
isOpen: boolean;
|
|
13
|
+
listboxId: string;
|
|
14
|
+
constructor();
|
|
15
|
+
ngOnInit(): void;
|
|
16
|
+
ngOnChanges(changes: SimpleChanges): void;
|
|
17
|
+
handleDocumentClick(event: MouseEvent): void;
|
|
18
|
+
toggle(): void;
|
|
19
|
+
openAndFocus(event: Event, direction: 1 | -1): void;
|
|
20
|
+
focusNext(event: Event, direction: 1 | -1): void;
|
|
21
|
+
close(event?: Event): void;
|
|
22
|
+
select(option: InputOption): void;
|
|
23
|
+
selectedOption(): InputOption | undefined;
|
|
24
|
+
orderedOptions(): InputOption[];
|
|
25
|
+
isDisabled(): boolean;
|
|
26
|
+
ariaLabel(): string;
|
|
27
|
+
iconMask(src: string): string;
|
|
28
|
+
private resolveProps;
|
|
29
|
+
private setupComponent;
|
|
30
|
+
private focusNextOption;
|
|
31
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<SelectInputV2Component, never>;
|
|
32
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<SelectInputV2Component, "val-select-input-v2", never, { "preset": { "alias": "preset"; "required": false; }; "props": { "alias": "props"; "required": false; }; }, {}, never, never, true, never>;
|
|
33
|
+
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { ModalLayoutActionEvent } from '../../molecules/modal-layout/types';
|
|
1
2
|
import { ButtonMetadata } from '../../types';
|
|
2
3
|
import * as i0 from "@angular/core";
|
|
3
4
|
/**
|
|
@@ -50,9 +51,11 @@ export declare class LoginAttemptModalComponent {
|
|
|
50
51
|
/** "No fui yo" — ejecuta el bloqueo y pasa a estado done. */
|
|
51
52
|
confirmBlock(): Promise<void>;
|
|
52
53
|
close(): void;
|
|
53
|
-
|
|
54
|
-
get
|
|
55
|
-
get
|
|
54
|
+
handleAction(event: ModalLayoutActionEvent): void;
|
|
55
|
+
get actions(): ButtonMetadata[];
|
|
56
|
+
get mineBtn(): ButtonMetadata;
|
|
57
|
+
get blockBtn(): ButtonMetadata;
|
|
58
|
+
get closeBtn(): ButtonMetadata;
|
|
56
59
|
static ɵfac: i0.ɵɵFactoryDeclaration<LoginAttemptModalComponent, never>;
|
|
57
60
|
static ɵcmp: i0.ɵɵComponentDeclaration<LoginAttemptModalComponent, "val-login-attempt-modal", never, { "title": { "alias": "title"; "required": false; }; "body": { "alias": "body"; "required": false; }; "deviceLabel": { "alias": "deviceLabel"; "required": false; }; "metaLabel": { "alias": "metaLabel"; "required": false; }; "doneLabel": { "alias": "doneLabel"; "required": false; }; "mineLabel": { "alias": "mineLabel"; "required": false; }; "blockLabel": { "alias": "blockLabel"; "required": false; }; "closeLabel": { "alias": "closeLabel"; "required": false; }; "isMobile": { "alias": "isMobile"; "required": false; }; "onBlock": { "alias": "onBlock"; "required": false; }; "_modalRef": { "alias": "_modalRef"; "required": false; }; }, {}, never, never, true, never>;
|
|
58
61
|
}
|
|
@@ -5,7 +5,7 @@ import * as i0 from "@angular/core";
|
|
|
5
5
|
* perfil desde el avatar del header. Se abre vía `ModalService.open({ component })`
|
|
6
6
|
* (recibe `_modalRef` por componentProps) o lo despacha `HeaderActionsService`.
|
|
7
7
|
*
|
|
8
|
-
*
|
|
8
|
+
* Usa `val-modal-layout` como shell estándar de modales.
|
|
9
9
|
*/
|
|
10
10
|
export declare class ProfileModalComponent {
|
|
11
11
|
private readonly i18n;
|
|
@@ -86,11 +86,16 @@ export type InputOption = {
|
|
|
86
86
|
name: string;
|
|
87
87
|
/** Optional icon shown next to the option label */
|
|
88
88
|
icon?: {
|
|
89
|
-
name
|
|
89
|
+
/** Ionicon name. */
|
|
90
|
+
name?: string;
|
|
91
|
+
/** Image/SVG asset URL. Takes precedence over name when present. */
|
|
92
|
+
src?: string;
|
|
90
93
|
color?: string;
|
|
91
94
|
};
|
|
92
95
|
/** Whether the option is selected by default */
|
|
93
96
|
selected?: boolean;
|
|
97
|
+
/** Whether the option cannot be selected */
|
|
98
|
+
disabled?: boolean;
|
|
94
99
|
/** Display order */
|
|
95
100
|
order: number;
|
|
96
101
|
};
|
|
@@ -194,6 +199,8 @@ export type InputMetadata = {
|
|
|
194
199
|
okText?: string;
|
|
195
200
|
/** Interface del ion-select (default: 'popover'). 'modal' para listas largas. */
|
|
196
201
|
selectInterface?: 'popover' | 'modal' | 'action-sheet' | 'alert';
|
|
202
|
+
/** Select renderer variant. V2 supports rich option content such as SVG icons. */
|
|
203
|
+
selectVariant?: 'default' | 'v2';
|
|
197
204
|
/** Validate phone format and attach `phoneInvalid` when the value is malformed. */
|
|
198
205
|
validateFormat?: boolean;
|
|
199
206
|
/** Minimum national digits for PHONE fields. */
|
package/lib/version.d.ts
CHANGED
package/package.json
CHANGED
package/public-api.d.ts
CHANGED
|
@@ -122,6 +122,7 @@ export * from './lib/components/molecules/range-input/range-input.component';
|
|
|
122
122
|
export * from './lib/components/molecules/range-input/types';
|
|
123
123
|
export * from './lib/components/molecules/searchbar/searchbar.component';
|
|
124
124
|
export * from './lib/components/molecules/select-input/select-input.component';
|
|
125
|
+
export * from './lib/components/molecules/select-input-v2/select-input-v2.component';
|
|
125
126
|
export * from './lib/components/molecules/select-search/select-search.component';
|
|
126
127
|
export * from './lib/components/molecules/select-search/select-search-picker-modal.component';
|
|
127
128
|
export * from './lib/components/molecules/segment-control/segment-control.component';
|