@jvsoft/utils 0.0.13-alpha.6 → 1.0.0-alpha.5
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/fesm2022/jvsoft-utils-src-functions.mjs +445 -188
- package/fesm2022/jvsoft-utils-src-functions.mjs.map +1 -1
- package/fesm2022/jvsoft-utils-src-pipes.mjs +24 -24
- package/fesm2022/jvsoft-utils-src-pipes.mjs.map +1 -1
- package/fesm2022/jvsoft-utils.mjs +469 -212
- package/fesm2022/jvsoft-utils.mjs.map +1 -1
- package/functions/base64.d.ts +63 -0
- package/functions/dev-log.d.ts +97 -0
- package/functions/mat-form-controls/autocomplete.d.ts +29 -32
- package/functions/objects-arrays.d.ts +13 -97
- package/functions/public-api.d.ts +1 -0
- package/package.json +9 -2
- package/src/functions/base64.d.ts +63 -0
- package/src/functions/dev-log.d.ts +97 -0
- package/src/functions/mat-form-controls/autocomplete.d.ts +29 -32
- package/src/functions/objects-arrays.d.ts +13 -97
- package/src/functions/public-api.d.ts +1 -0
|
@@ -1,26 +1,40 @@
|
|
|
1
1
|
import { AbstractControl } from '@angular/forms';
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
* Compatible con listas simples, objetos y campos múltiples.
|
|
5
|
-
*/
|
|
6
|
-
export declare function mostrarValorEnBusqueda(campos: any, idxSel: any): any;
|
|
7
|
-
/**
|
|
8
|
-
* Vincula un FormControl a datos locales para autocompletado.
|
|
9
|
-
*/
|
|
10
|
-
export declare function changeSelectData(objThis: any, { formControl, data, campoBuscar, variableResultado }: {
|
|
2
|
+
export declare function mostrarValorEnBusqueda(campos: any, idxSel: any): string;
|
|
3
|
+
export declare function changeSelectData(objThis: any, dataFiltro: {
|
|
11
4
|
formControl: AbstractControl;
|
|
12
5
|
data: any[];
|
|
13
6
|
campoBuscar: string | string[];
|
|
14
7
|
variableResultado: string;
|
|
15
8
|
}): void;
|
|
9
|
+
export declare function changeSelect(control: any, formControl: AbstractControl, tipo: any, campoBuscar: any, campoFiltro?: null): void;
|
|
10
|
+
export declare function changeSelectDataApi(objThis: any, dataFiltro: {
|
|
11
|
+
tipoReq: string;
|
|
12
|
+
campoId?: string;
|
|
13
|
+
minLength?: number;
|
|
14
|
+
dataExtra?: any;
|
|
15
|
+
dataExtraVariable?: any;
|
|
16
|
+
anonimo?: boolean;
|
|
17
|
+
queryService: any;
|
|
18
|
+
formControl: AbstractControl;
|
|
19
|
+
variableResultado?: string;
|
|
20
|
+
}): void;
|
|
21
|
+
export declare function changeSelectApi(control: any, queryService: any, formControl: AbstractControl, tipo: any, dataExtra?: {}, dataExtraVariable?: any[] | null, minLength?: number, anonimo?: boolean): void;
|
|
16
22
|
/**
|
|
17
|
-
*
|
|
23
|
+
* Comprueba si un valor es una Promesa
|
|
24
|
+
* @param valor - Valor a verificar
|
|
25
|
+
* @returns true si es una Promise
|
|
18
26
|
*/
|
|
19
|
-
export declare function
|
|
27
|
+
export declare function esPromise(valor: any): boolean;
|
|
20
28
|
/**
|
|
21
|
-
*
|
|
29
|
+
* Selecciona todo el texto de un input
|
|
30
|
+
* @param event - Evento del input
|
|
22
31
|
*/
|
|
23
|
-
|
|
32
|
+
export declare function seleccionarTextoInput(event: any): void;
|
|
33
|
+
/**
|
|
34
|
+
* Función genérica para vincular un FormControl con datos desde API o Promise.
|
|
35
|
+
* Preparada para migrar a signals en el futuro.
|
|
36
|
+
*/
|
|
37
|
+
export declare function changeSelectReformateado(config: {
|
|
24
38
|
objThis: any;
|
|
25
39
|
tipoReq: string;
|
|
26
40
|
formControl: AbstractControl;
|
|
@@ -28,24 +42,7 @@ interface ChangeSelectConfig {
|
|
|
28
42
|
campoId?: string;
|
|
29
43
|
minLength?: number;
|
|
30
44
|
dataExtra?: any;
|
|
31
|
-
dataExtraVariable?:
|
|
32
|
-
campo: string;
|
|
33
|
-
ctrlValue: AbstractControl;
|
|
34
|
-
}[];
|
|
45
|
+
dataExtraVariable?: any[];
|
|
35
46
|
anonimo?: boolean;
|
|
36
47
|
variableResultado?: string;
|
|
37
|
-
}
|
|
38
|
-
/**
|
|
39
|
-
* Función genérica para vincular un FormControl con datos desde API o Promise.
|
|
40
|
-
* Preparada para migrar a signals en el futuro.
|
|
41
|
-
*/
|
|
42
|
-
export declare function changeSelectReformateado(config: ChangeSelectConfig): void;
|
|
43
|
-
/**
|
|
44
|
-
* Alias para compatibilidad.
|
|
45
|
-
*/
|
|
46
|
-
export declare function changeSelectDataApi(objThis: any, dataFiltro: any): void;
|
|
47
|
-
/**
|
|
48
|
-
* Alias para compatibilidad.
|
|
49
|
-
*/
|
|
50
|
-
export declare function changeSelectApi(control: any, queryService: any, formControl: AbstractControl, tipo: any, dataExtra?: {}, dataExtraVariable?: any[] | null, minLength?: number, anonimo?: boolean): void;
|
|
51
|
-
export {};
|
|
48
|
+
}): void;
|
|
@@ -1,23 +1,8 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Realiza una fusión profunda entre dos objetos, sin modificar el original.
|
|
3
|
-
* Si el valor en target no es un objeto, lo reemplaza directamente.
|
|
4
|
-
*
|
|
5
|
-
* @param source - Objeto fuente que se clonará y fusionará.
|
|
6
|
-
* @param target - Objeto destino cuyos valores se fusionarán.
|
|
7
|
-
* @returns Un nuevo objeto con la fusión profunda.
|
|
8
|
-
*/
|
|
9
1
|
export declare function deepMerge(source: any, target: any): any;
|
|
10
|
-
/**
|
|
11
|
-
* Realiza una clonación profunda de un objeto, manejando funciones, fechas y arrays.
|
|
12
|
-
*
|
|
13
|
-
* @param obj - Objeto a clonar.
|
|
14
|
-
* @returns Una copia profunda del objeto.
|
|
15
|
-
*/
|
|
16
2
|
export declare function deepClone(obj: any): any;
|
|
17
3
|
/**
|
|
18
4
|
* Busca un elemento en un array o jerarquía de objetos según un campo y valor especificado.
|
|
19
5
|
*
|
|
20
|
-
* @param datosFn - Objeto con los parámetros de búsqueda: items, campo, valor y opcionalmente campoHijo.
|
|
21
6
|
* @returns El elemento encontrado o undefined si no existe.
|
|
22
7
|
*/
|
|
23
8
|
export declare function buscarPorCampo<T>(datosFn: {
|
|
@@ -26,91 +11,29 @@ export declare function buscarPorCampo<T>(datosFn: {
|
|
|
26
11
|
valor: any;
|
|
27
12
|
campoHijo?: string;
|
|
28
13
|
}): T | undefined;
|
|
29
|
-
/**
|
|
30
|
-
* Suma los valores de las propiedades especificadas de un objeto.
|
|
31
|
-
*
|
|
32
|
-
* @param item - Objeto con las propiedades a sumar.
|
|
33
|
-
* @param campos - Array de nombres de las propiedades a sumar.
|
|
34
|
-
* @returns La suma de los valores de las propiedades.
|
|
35
|
-
*/
|
|
36
14
|
export declare function sumarPropiedades(item: Record<string, any>, campos: string[]): number;
|
|
37
|
-
/**
|
|
38
|
-
* Verifica si el valor proporcionado es un número válido.
|
|
39
|
-
*
|
|
40
|
-
* @param value - Valor a verificar.
|
|
41
|
-
* @returns true si es un número, false en caso contrario.
|
|
42
|
-
*/
|
|
43
15
|
export declare function esNumero(value: any): boolean;
|
|
44
|
-
/**
|
|
45
|
-
* Suma los valores de las propiedades especificadas en un array de objetos.
|
|
46
|
-
*
|
|
47
|
-
* @param arrayObjetos - Array de objetos a procesar.
|
|
48
|
-
* @param campos - Array de nombres de las propiedades a sumar.
|
|
49
|
-
* @returns Objeto con la suma de cada propiedad.
|
|
50
|
-
*/
|
|
51
16
|
export declare function sumarObjetos(arrayObjetos: any[], campos: string[]): Record<string, number>;
|
|
52
|
-
/**
|
|
53
|
-
* Obtiene los valores únicos de un array.
|
|
54
|
-
*
|
|
55
|
-
* @param array - Array de valores.
|
|
56
|
-
* @returns Array con los valores únicos.
|
|
57
|
-
*/
|
|
58
17
|
export declare function getUniqueValues(array: any[]): any[];
|
|
59
|
-
/**
|
|
60
|
-
* Obtiene los objetos únicos de un array según una propiedad específica.
|
|
61
|
-
*
|
|
62
|
-
* @param objetos - Array de objetos.
|
|
63
|
-
* @param campo - Nombre de la propiedad para determinar unicidad.
|
|
64
|
-
* @returns Array de objetos únicos por la propiedad.
|
|
65
|
-
*/
|
|
66
18
|
export declare function getUniqueValuesByProperty<T>(objetos: T[], campo: string): T[];
|
|
67
|
-
/**
|
|
68
|
-
* Ordena un array de valores numéricos o alfabéticos.
|
|
69
|
-
*
|
|
70
|
-
* @param array - Array a ordenar.
|
|
71
|
-
* @param numeros - Si es true, ordena como números.
|
|
72
|
-
* @param sentido - 'ASC' para ascendente, 'DESC' para descendente.
|
|
73
|
-
* @returns Array ordenado.
|
|
74
|
-
*/
|
|
75
19
|
export declare function ordenarArray(array: any[], numeros?: boolean, sentido?: 'ASC' | 'DESC'): any[];
|
|
76
|
-
/**
|
|
77
|
-
* Ordena un array de objetos por una propiedad específica.
|
|
78
|
-
*
|
|
79
|
-
* @param objData - Array de objetos a ordenar.
|
|
80
|
-
* @param propiedad - Propiedad por la que se ordena.
|
|
81
|
-
* @param numeros - (Obsoleto) Si es true, ordena como números.
|
|
82
|
-
* @returns Array ordenado.
|
|
83
|
-
*/
|
|
84
20
|
export declare function ordenarPorPropiedad(objData: any, propiedad: string, /**@deprecated*/ numeros?: boolean): {
|
|
85
21
|
[x: string]: {};
|
|
86
22
|
}[];
|
|
87
|
-
/**
|
|
88
|
-
* Ordena un array de objetos por varias propiedades y direcciones.
|
|
89
|
-
*
|
|
90
|
-
* @param arr - Array de objetos a ordenar.
|
|
91
|
-
* @param options - Opciones con propiedades y direcciones de orden.
|
|
92
|
-
* @returns Array ordenado.
|
|
93
|
-
*/
|
|
94
23
|
export declare function ordenarPorPropiedades<T>(arr: T[], options: {
|
|
95
24
|
propiedades: (keyof T)[];
|
|
96
25
|
direcciones?: ('asc' | 'desc' | '')[];
|
|
97
26
|
}): T[];
|
|
98
|
-
/**
|
|
99
|
-
* Agrupa los elementos de un array según una clave o función de clave.
|
|
100
|
-
*
|
|
101
|
-
* @param array - Array de objetos a agrupar.
|
|
102
|
-
* @param key - Propiedad o función para agrupar.
|
|
103
|
-
* @returns Objeto con los grupos por clave.
|
|
104
|
-
*/
|
|
105
27
|
export declare function groupBy<T extends Record<string, any>, K extends keyof T>(array: T[], key: K | ((obj: T) => string)): Record<string, T[]>;
|
|
28
|
+
export declare function nestGroupsBy(arr: any, properties: any): any;
|
|
106
29
|
/**
|
|
107
|
-
*
|
|
30
|
+
* Obtiene un valor de un objeto usando una ruta de propiedad anidada.
|
|
108
31
|
*
|
|
109
|
-
* @param
|
|
110
|
-
* @param
|
|
111
|
-
* @returns
|
|
32
|
+
* @param obj - Objeto de entrada.
|
|
33
|
+
* @param path - Ruta en formato punto (ej: "cliente.orden").
|
|
34
|
+
* @returns El valor encontrado o undefined si no existe.
|
|
112
35
|
*/
|
|
113
|
-
export declare function
|
|
36
|
+
export declare function getValueByPath(obj: any, path: string): any;
|
|
114
37
|
/**
|
|
115
38
|
* Retorna el valor máximo del campo especificado (incluso anidado) en un arreglo de objetos.
|
|
116
39
|
*
|
|
@@ -128,20 +51,13 @@ export declare function obtenerUltimoOrden(data: any[], campo: string, increment
|
|
|
128
51
|
* @returns Nuevo array con las columnas eliminadas.
|
|
129
52
|
*/
|
|
130
53
|
export declare function eliminarColumnaPorIndex<T extends unknown[][]>(data: T, columnIndex: number | number[]): T;
|
|
131
|
-
/**
|
|
132
|
-
* Elimina elementos duplicados de un array de objetos según claves específicas.
|
|
133
|
-
*
|
|
134
|
-
* @param array - Array de objetos.
|
|
135
|
-
* @param claves - Claves para determinar unicidad. Si no se especifica, compara todo el objeto.
|
|
136
|
-
* @returns Array sin duplicados.
|
|
137
|
-
*/
|
|
138
54
|
export declare function eliminarDuplicados<T extends object>(array: T[], claves?: (keyof T)[]): T[];
|
|
55
|
+
export declare function eliminarElementos<T extends object>(origen: T[], elementosAEliminar: T[], claves?: (keyof T)[]): T[];
|
|
139
56
|
/**
|
|
140
|
-
*
|
|
141
|
-
*
|
|
142
|
-
* @param
|
|
143
|
-
* @param
|
|
144
|
-
* @
|
|
145
|
-
* @returns Array filtrado sin los elementos eliminados.
|
|
57
|
+
* Filtra datos localmente según un valor de búsqueda
|
|
58
|
+
* @param data - Array de datos a filtrar
|
|
59
|
+
* @param value - Valor de búsqueda
|
|
60
|
+
* @param campoBuscar - Campo(s) por el cual buscar
|
|
61
|
+
* @returns Array filtrado
|
|
146
62
|
*/
|
|
147
|
-
export declare function
|
|
63
|
+
export declare function filtrarDatosLocal(data: any[], value: any, campoBuscar: string | string[]): any[];
|