valtech-components 4.0.1029 → 4.0.1031
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/avatar/avatar.component.mjs +7 -9
- package/esm2022/lib/components/atoms/progress-bar/progress-bar.component.mjs +13 -12
- package/esm2022/lib/components/molecules/action-card/action-card.component.mjs +92 -36
- package/esm2022/lib/components/molecules/action-card/types.mjs +1 -1
- package/esm2022/lib/components/molecules/card/card.component.mjs +56 -28
- package/esm2022/lib/components/molecules/comment/comment.component.mjs +1 -1
- package/esm2022/lib/components/molecules/progress-status/progress-status.component.mjs +2 -2
- package/esm2022/lib/components/molecules/stats-card/stats-card.component.mjs +22 -10
- package/esm2022/lib/components/organisms/about-view/about-view.component.mjs +2 -2
- package/esm2022/lib/components/organisms/attachment-uploader/attachment-uploader.component.mjs +26 -5
- package/esm2022/lib/components/organisms/attachment-uploader/types.mjs +1 -1
- package/esm2022/lib/components/organisms/comment-section/comment-section.component.mjs +2 -2
- package/esm2022/lib/components/organisms/security-view/security-view.component.mjs +2 -2
- package/esm2022/lib/components/organisms/settings-hub/settings-hub.component.mjs +2 -2
- package/esm2022/lib/components/organisms/settings-hub/settings-sections.mjs +2 -11
- package/esm2022/lib/components/organisms/wizard/wizard-footer/wizard-footer.component.mjs +2 -2
- package/esm2022/lib/services/i18n/default-content.mjs +3 -1
- package/esm2022/lib/version.mjs +2 -2
- package/fesm2022/valtech-components.mjs +220 -111
- package/fesm2022/valtech-components.mjs.map +1 -1
- package/lib/components/atoms/avatar/avatar.component.d.ts +2 -2
- package/lib/components/atoms/progress-bar/progress-bar.component.d.ts +2 -1
- package/lib/components/molecules/action-card/action-card.component.d.ts +28 -7
- package/lib/components/molecules/action-card/types.d.ts +4 -1
- package/lib/components/molecules/card/card.component.d.ts +2 -2
- package/lib/components/molecules/stats-card/stats-card.component.d.ts +3 -1
- package/lib/components/organisms/attachment-uploader/attachment-uploader.component.d.ts +5 -2
- package/lib/components/organisms/attachment-uploader/types.d.ts +6 -0
- package/lib/components/organisms/settings-hub/settings-sections.d.ts +1 -1
- package/lib/version.d.ts +1 -1
- package/package.json +1 -1
|
@@ -8,7 +8,7 @@ export declare class AvatarComponent implements OnInit, OnChanges {
|
|
|
8
8
|
* that can be registered at app level via provideValtechPresets().
|
|
9
9
|
*
|
|
10
10
|
* @example
|
|
11
|
-
* <
|
|
11
|
+
* <vds-avatar preset="profile" [props]="{ image: 'url' }"></vds-avatar>
|
|
12
12
|
*/
|
|
13
13
|
preset?: string;
|
|
14
14
|
/**
|
|
@@ -32,5 +32,5 @@ export declare class AvatarComponent implements OnInit, OnChanges {
|
|
|
32
32
|
private resolveProps;
|
|
33
33
|
onClickHandler(): void;
|
|
34
34
|
static ɵfac: i0.ɵɵFactoryDeclaration<AvatarComponent, never>;
|
|
35
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<AvatarComponent, "val-avatar", never, { "preset": { "alias": "preset"; "required": false; }; "props": { "alias": "props"; "required": false; }; }, { "onClick": "onClick"; }, never, never, true, never>;
|
|
35
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AvatarComponent, "val-avatar, vds-avatar", never, { "preset": { "alias": "preset"; "required": false; }; "props": { "alias": "props"; "required": false; }; }, { "onClick": "onClick"; }, never, never, true, never>;
|
|
36
36
|
}
|
|
@@ -23,6 +23,7 @@ export declare class ProgressBarComponent implements OnInit, OnChanges {
|
|
|
23
23
|
* Resolved props after merging preset + explicit props.
|
|
24
24
|
*/
|
|
25
25
|
resolvedProps: ProgressBarMetadata;
|
|
26
|
+
get colorClass(): string;
|
|
26
27
|
ngOnInit(): void;
|
|
27
28
|
ngOnChanges(changes: SimpleChanges): void;
|
|
28
29
|
/**
|
|
@@ -31,5 +32,5 @@ export declare class ProgressBarComponent implements OnInit, OnChanges {
|
|
|
31
32
|
*/
|
|
32
33
|
private resolveProps;
|
|
33
34
|
static ɵfac: i0.ɵɵFactoryDeclaration<ProgressBarComponent, never>;
|
|
34
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<ProgressBarComponent, "val-progress-bar", never, { "preset": { "alias": "preset"; "required": false; }; "props": { "alias": "props"; "required": false; }; }, {}, never, never, true, never>;
|
|
35
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ProgressBarComponent, "val-progress-bar, vds-progress-bar", never, { "preset": { "alias": "preset"; "required": false; }; "props": { "alias": "props"; "required": false; }; }, {}, never, never, true, never>;
|
|
35
36
|
}
|
|
@@ -2,14 +2,14 @@ import { EventEmitter } from '@angular/core';
|
|
|
2
2
|
import { ActionCardMetadata, ActionCardClickEvent } from './types';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
/**
|
|
5
|
-
*
|
|
5
|
+
* vds-action-card
|
|
6
6
|
*
|
|
7
7
|
* A clickable card component with icon, title, description, and optional badge.
|
|
8
8
|
* Supports multiple icon formats: Ionicons, SVG paths, and image URLs.
|
|
9
9
|
*
|
|
10
10
|
* @example Basic usage with Ionicon
|
|
11
11
|
* ```html
|
|
12
|
-
* <
|
|
12
|
+
* <vds-action-card
|
|
13
13
|
* [props]="{
|
|
14
14
|
* icon: { ionicon: 'settings-outline' },
|
|
15
15
|
* title: 'Settings',
|
|
@@ -21,7 +21,7 @@ import * as i0 from "@angular/core";
|
|
|
21
21
|
*
|
|
22
22
|
* @example With routerLink navigation
|
|
23
23
|
* ```html
|
|
24
|
-
* <
|
|
24
|
+
* <vds-action-card
|
|
25
25
|
* [props]="{
|
|
26
26
|
* icon: { ionicon: 'person-outline', color: 'primary' },
|
|
27
27
|
* title: 'Profile',
|
|
@@ -34,7 +34,7 @@ import * as i0 from "@angular/core";
|
|
|
34
34
|
*
|
|
35
35
|
* @example With custom SVG icon
|
|
36
36
|
* ```html
|
|
37
|
-
* <
|
|
37
|
+
* <vds-action-card
|
|
38
38
|
* [props]="{
|
|
39
39
|
* icon: { svgPath: 'M12 2L2 7l10 5 10-5-10-5zM2 17l10 5 10-5M2 12l10 5 10-5' },
|
|
40
40
|
* title: 'Custom Feature',
|
|
@@ -49,6 +49,25 @@ export declare class ActionCardComponent {
|
|
|
49
49
|
private navigation;
|
|
50
50
|
/** Component configuration */
|
|
51
51
|
readonly props: import("@angular/core").InputSignal<Partial<ActionCardMetadata>>;
|
|
52
|
+
readonly title: import("@angular/core").InputSignal<string>;
|
|
53
|
+
readonly titleKey: import("@angular/core").InputSignal<string>;
|
|
54
|
+
readonly description: import("@angular/core").InputSignal<string>;
|
|
55
|
+
readonly descriptionKey: import("@angular/core").InputSignal<string>;
|
|
56
|
+
readonly i18nNamespace: import("@angular/core").InputSignal<string>;
|
|
57
|
+
readonly icon: import("@angular/core").InputSignal<import("./types").ActionCardIcon>;
|
|
58
|
+
readonly size: import("@angular/core").InputSignal<import("./types").ActionCardSize>;
|
|
59
|
+
readonly variant: import("@angular/core").InputSignal<import("./types").ActionCardVariant>;
|
|
60
|
+
readonly bordered: import("@angular/core").InputSignal<boolean>;
|
|
61
|
+
readonly borderColor: import("@angular/core").InputSignal<string | (string & Record<never, never>)>;
|
|
62
|
+
readonly backgroundColor: import("@angular/core").InputSignal<string | (string & Record<never, never>)>;
|
|
63
|
+
readonly shadowed: import("@angular/core").InputSignal<boolean>;
|
|
64
|
+
readonly disabled: import("@angular/core").InputSignal<boolean>;
|
|
65
|
+
readonly routerLink: import("@angular/core").InputSignal<string | any[]>;
|
|
66
|
+
readonly queryParams: import("@angular/core").InputSignal<Record<string, string | number | boolean>>;
|
|
67
|
+
readonly href: import("@angular/core").InputSignal<string>;
|
|
68
|
+
readonly badge: import("@angular/core").InputSignal<import("./types").ActionCardBadge>;
|
|
69
|
+
readonly showChevron: import("@angular/core").InputSignal<boolean>;
|
|
70
|
+
readonly token: import("@angular/core").InputSignal<string>;
|
|
52
71
|
/** Event emitted when card is clicked */
|
|
53
72
|
onClick: EventEmitter<ActionCardClickEvent>;
|
|
54
73
|
/** Merged configuration with defaults */
|
|
@@ -61,6 +80,7 @@ export declare class ActionCardComponent {
|
|
|
61
80
|
descriptionKey?: string;
|
|
62
81
|
i18nNamespace?: string;
|
|
63
82
|
size: import("./types").ActionCardSize;
|
|
83
|
+
variant?: import("./types").ActionCardVariant;
|
|
64
84
|
bordered: boolean;
|
|
65
85
|
borderColor?: string | (string & Record<never, never>);
|
|
66
86
|
backgroundColor?: string | (string & Record<never, never>);
|
|
@@ -72,12 +92,13 @@ export declare class ActionCardComponent {
|
|
|
72
92
|
badge?: import("./types").ActionCardBadge;
|
|
73
93
|
showChevron: boolean;
|
|
74
94
|
}>;
|
|
95
|
+
private assignIfDefined;
|
|
75
96
|
/** Get title with i18n support */
|
|
76
97
|
getTitle(): string;
|
|
77
98
|
/** Get description with i18n support */
|
|
78
99
|
getDescription(): string;
|
|
79
|
-
/** Resolve
|
|
80
|
-
private
|
|
100
|
+
/** Resolve a public role to VDS first, then keep Ionic as the compatibility fallback. */
|
|
101
|
+
private resolveRoleColor;
|
|
81
102
|
getBackgroundColor(): string | null;
|
|
82
103
|
getBorderColor(): string | null;
|
|
83
104
|
getIconColor(): string | null;
|
|
@@ -87,5 +108,5 @@ export declare class ActionCardComponent {
|
|
|
87
108
|
/** Handle card click */
|
|
88
109
|
handleClick(event: MouseEvent): void;
|
|
89
110
|
static ɵfac: i0.ɵɵFactoryDeclaration<ActionCardComponent, never>;
|
|
90
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<ActionCardComponent, "val-action-card", never, { "props": { "alias": "props"; "required": false; "isSignal": true; }; }, { "onClick": "onClick"; }, never, never, true, never>;
|
|
111
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ActionCardComponent, "val-action-card, vds-action-card", never, { "props": { "alias": "props"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "titleKey": { "alias": "titleKey"; "required": false; "isSignal": true; }; "description": { "alias": "description"; "required": false; "isSignal": true; }; "descriptionKey": { "alias": "descriptionKey"; "required": false; "isSignal": true; }; "i18nNamespace": { "alias": "i18nNamespace"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "bordered": { "alias": "bordered"; "required": false; "isSignal": true; }; "borderColor": { "alias": "borderColor"; "required": false; "isSignal": true; }; "backgroundColor": { "alias": "backgroundColor"; "required": false; "isSignal": true; }; "shadowed": { "alias": "shadowed"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "routerLink": { "alias": "routerLink"; "required": false; "isSignal": true; }; "queryParams": { "alias": "queryParams"; "required": false; "isSignal": true; }; "href": { "alias": "href"; "required": false; "isSignal": true; }; "badge": { "alias": "badge"; "required": false; "isSignal": true; }; "showChevron": { "alias": "showChevron"; "required": false; "isSignal": true; }; "token": { "alias": "token"; "required": false; "isSignal": true; }; }, { "onClick": "onClick"; }, never, never, true, never>;
|
|
91
112
|
}
|
|
@@ -3,6 +3,7 @@ import { Color } from '@ionic/core';
|
|
|
3
3
|
* Size options for action-card
|
|
4
4
|
*/
|
|
5
5
|
export type ActionCardSize = 'small' | 'medium' | 'large';
|
|
6
|
+
export type ActionCardVariant = 'default' | 'marker';
|
|
6
7
|
/**
|
|
7
8
|
* Badge configuration for action-card
|
|
8
9
|
*/
|
|
@@ -39,7 +40,7 @@ export interface ActionCardClickEvent {
|
|
|
39
40
|
navigated?: boolean;
|
|
40
41
|
}
|
|
41
42
|
/**
|
|
42
|
-
* Metadata for
|
|
43
|
+
* Metadata for vds-action-card component
|
|
43
44
|
*/
|
|
44
45
|
export interface ActionCardMetadata {
|
|
45
46
|
/** Unique token for identification */
|
|
@@ -58,6 +59,8 @@ export interface ActionCardMetadata {
|
|
|
58
59
|
i18nNamespace?: string;
|
|
59
60
|
/** Card size variant */
|
|
60
61
|
size?: ActionCardSize;
|
|
62
|
+
/** Visual variant */
|
|
63
|
+
variant?: ActionCardVariant;
|
|
61
64
|
/** Show border */
|
|
62
65
|
bordered?: boolean;
|
|
63
66
|
/** Border color */
|
|
@@ -9,7 +9,7 @@ export declare class CardComponent implements OnInit, OnChanges {
|
|
|
9
9
|
* (type, variant, padding, etc.) that can be registered at app level.
|
|
10
10
|
*
|
|
11
11
|
* @example
|
|
12
|
-
* <
|
|
12
|
+
* <vds-card preset="feature" [props]="{ title: 'My Card' }"></vds-card>
|
|
13
13
|
*/
|
|
14
14
|
preset?: string;
|
|
15
15
|
/**
|
|
@@ -46,5 +46,5 @@ export declare class CardComponent implements OnInit, OnChanges {
|
|
|
46
46
|
/** Activación por teclado con Space — previene el scroll de la página. */
|
|
47
47
|
onKeyActivate(event: Event, section: CardSection, token?: string): void;
|
|
48
48
|
static ɵfac: i0.ɵɵFactoryDeclaration<CardComponent, never>;
|
|
49
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<CardComponent, "val-card", never, { "preset": { "alias": "preset"; "required": false; }; "props": { "alias": "props"; "required": false; }; }, { "onClick": "onClick"; }, never, never, true, never>;
|
|
49
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<CardComponent, "val-card, vds-card", never, { "preset": { "alias": "preset"; "required": false; }; "props": { "alias": "props"; "required": false; }; }, { "onClick": "onClick"; }, never, never, true, never>;
|
|
50
50
|
}
|
|
@@ -12,9 +12,11 @@ export declare class StatsCardComponent implements OnInit, OnChanges {
|
|
|
12
12
|
ngOnChanges(changes: SimpleChanges): void;
|
|
13
13
|
private resolveProps;
|
|
14
14
|
getCardColor(): string;
|
|
15
|
+
getCardColorHover(): string;
|
|
16
|
+
getCardColorContrast(): string;
|
|
15
17
|
getBackgroundClass(): string;
|
|
16
18
|
getTrendClass(): string;
|
|
17
19
|
getTrendIcon(): string;
|
|
18
20
|
static ɵfac: i0.ɵɵFactoryDeclaration<StatsCardComponent, never>;
|
|
19
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<StatsCardComponent, "val-stats-card", never, { "preset": { "alias": "preset"; "required": false; }; "props": { "alias": "props"; "required": false; }; }, { "onClick": "onClick"; }, never, never, true, never>;
|
|
21
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<StatsCardComponent, "val-stats-card, vds-stats-card", never, { "preset": { "alias": "preset"; "required": false; }; "props": { "alias": "props"; "required": false; }; }, { "onClick": "onClick"; }, never, never, true, never>;
|
|
20
22
|
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { ElementRef, OnInit } from '@angular/core';
|
|
1
|
+
import { ElementRef, OnDestroy, OnInit } from '@angular/core';
|
|
2
2
|
import { I18nService } from '../../../services/i18n';
|
|
3
3
|
import { AttachmentItem, AttachmentUploaderMetadata } from './types';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
|
-
export declare class AttachmentUploaderComponent implements OnInit {
|
|
5
|
+
export declare class AttachmentUploaderComponent implements OnInit, OnDestroy {
|
|
6
6
|
cameraPicker: ElementRef<HTMLInputElement>;
|
|
7
7
|
cameraVideo: ElementRef<HTMLVideoElement>;
|
|
8
8
|
props: import("@angular/core").InputSignal<AttachmentUploaderMetadata>;
|
|
@@ -13,6 +13,7 @@ export declare class AttachmentUploaderComponent implements OnInit {
|
|
|
13
13
|
attachments: import("@angular/core").WritableSignal<AttachmentItem[]>;
|
|
14
14
|
showCameraOverlay: import("@angular/core").WritableSignal<boolean>;
|
|
15
15
|
private cameraStream;
|
|
16
|
+
private previewUrls;
|
|
16
17
|
maxFiles: import("@angular/core").Signal<number>;
|
|
17
18
|
accept: import("@angular/core").Signal<string>;
|
|
18
19
|
maxReached: import("@angular/core").Signal<boolean>;
|
|
@@ -20,12 +21,14 @@ export declare class AttachmentUploaderComponent implements OnInit {
|
|
|
20
21
|
isUploading: import("@angular/core").Signal<boolean>;
|
|
21
22
|
get readyUrls(): string[];
|
|
22
23
|
ngOnInit(): void;
|
|
24
|
+
ngOnDestroy(): void;
|
|
23
25
|
constructor();
|
|
24
26
|
openCamera(): Promise<void>;
|
|
25
27
|
capturePhoto(): void;
|
|
26
28
|
closeCamera(): void;
|
|
27
29
|
onFilesSelected(event: Event): Promise<void>;
|
|
28
30
|
private processFiles;
|
|
31
|
+
private createPreviewUrl;
|
|
29
32
|
private compressImage;
|
|
30
33
|
/**
|
|
31
34
|
* Genera y sube la miniatura de una imagen ya comprimida.
|
|
@@ -10,6 +10,12 @@ export interface AttachmentItem {
|
|
|
10
10
|
* diferencia entre 240KB y 15KB por fila. Ver `generateThumbnail`.
|
|
11
11
|
*/
|
|
12
12
|
thumbnailUrl?: string;
|
|
13
|
+
/**
|
|
14
|
+
* URL local efímera para previsualizar imágenes seleccionadas antes de que
|
|
15
|
+
* exista una URL remota. Se crea con `URL.createObjectURL` y el componente la
|
|
16
|
+
* libera al remover el adjunto o destruirse.
|
|
17
|
+
*/
|
|
18
|
+
previewUrl?: string;
|
|
13
19
|
error?: string;
|
|
14
20
|
isExternal?: boolean;
|
|
15
21
|
}
|
|
@@ -26,7 +26,7 @@ export interface SettingsSection {
|
|
|
26
26
|
shadowed?: boolean;
|
|
27
27
|
}
|
|
28
28
|
/**
|
|
29
|
-
* Catálogo default de secciones del HUB de settings (
|
|
29
|
+
* Catálogo default de secciones del HUB de settings (6 entradas). `logout` va
|
|
30
30
|
* incluida pero sin `routerLink` (la maneja un callback). Mismo set, mismos
|
|
31
31
|
* tokens/iconos/rutas que el builder original de showcase
|
|
32
32
|
* (`shared/settings-action-cards.ts`) que esta promoción reemplaza.
|
package/lib/version.d.ts
CHANGED