@jvsoft/utils 1.0.0-alpha.4 → 1.0.0-alpha.6

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 (49) hide show
  1. package/fesm2022/jvsoft-utils.mjs +224 -25
  2. package/fesm2022/jvsoft-utils.mjs.map +1 -1
  3. package/functions/base64.d.ts +87 -0
  4. package/functions/mat-form-controls/autocomplete.d.ts +27 -0
  5. package/functions/objects-arrays.d.ts +16 -0
  6. package/package.json +1 -13
  7. package/public-api.d.ts +3 -3
  8. package/fesm2022/jvsoft-utils-src-functions.mjs +0 -1508
  9. package/fesm2022/jvsoft-utils-src-functions.mjs.map +0 -1
  10. package/fesm2022/jvsoft-utils-src-interfaces.mjs +0 -6
  11. package/fesm2022/jvsoft-utils-src-interfaces.mjs.map +0 -1
  12. package/fesm2022/jvsoft-utils-src-pipes.mjs +0 -290
  13. package/fesm2022/jvsoft-utils-src-pipes.mjs.map +0 -1
  14. package/functions/index.d.ts +0 -1
  15. package/interfaces/index.d.ts +0 -1
  16. package/pipes/index.d.ts +0 -1
  17. package/src/functions/base64.d.ts +0 -2
  18. package/src/functions/browser.d.ts +0 -1
  19. package/src/functions/crypto-js.d.ts +0 -2
  20. package/src/functions/date.d.ts +0 -3
  21. package/src/functions/dev-log.d.ts +0 -97
  22. package/src/functions/email.d.ts +0 -2
  23. package/src/functions/file.d.ts +0 -10
  24. package/src/functions/forms.d.ts +0 -23
  25. package/src/functions/http-client.d.ts +0 -2
  26. package/src/functions/index.d.ts +0 -5
  27. package/src/functions/local-storage.d.ts +0 -29
  28. package/src/functions/mat-form-controls/autocomplete.d.ts +0 -21
  29. package/src/functions/mat-form-controls/index.d.ts +0 -2
  30. package/src/functions/number.d.ts +0 -2
  31. package/src/functions/object-transformation.d.ts +0 -2
  32. package/src/functions/objects-arrays.d.ts +0 -47
  33. package/src/functions/public-api.d.ts +0 -17
  34. package/src/functions/string.d.ts +0 -23
  35. package/src/functions/sweetalert.d.ts +0 -5
  36. package/src/functions/utiles.d.ts +0 -1
  37. package/src/interfaces/datos.d.ts +0 -4
  38. package/src/interfaces/index.d.ts +0 -5
  39. package/src/interfaces/public-api.d.ts +0 -1
  40. package/src/pipes/data-en-lista.pipe.d.ts +0 -8
  41. package/src/pipes/date-diff-string.pipe.d.ts +0 -17
  42. package/src/pipes/filtro.pipe.d.ts +0 -18
  43. package/src/pipes/form-control-is-required.pipe.d.ts +0 -9
  44. package/src/pipes/index.d.ts +0 -5
  45. package/src/pipes/json-parse.pipe.d.ts +0 -7
  46. package/src/pipes/no-sanitize.pipe.d.ts +0 -10
  47. package/src/pipes/public-api.d.ts +0 -8
  48. package/src/pipes/tipo-valor-funcion.pipe.d.ts +0 -9
  49. package/src/pipes/zero-fill.pipe.d.ts +0 -8
@@ -262,6 +262,30 @@ function eliminarElementos(origen, elementosAEliminar, claves) {
262
262
  return !clavesSet.has(key);
263
263
  });
264
264
  }
265
+ /**
266
+ * Filtra datos localmente según un valor de búsqueda
267
+ * @param data - Array de datos a filtrar
268
+ * @param value - Valor de búsqueda
269
+ * @param campoBuscar - Campo(s) por el cual buscar
270
+ * @returns Array filtrado
271
+ */
272
+ function filtrarDatosLocal(data, value, campoBuscar) {
273
+ if (!value)
274
+ return data;
275
+ const normalizar = (val) => val?.toString()?.toLowerCase() ?? '';
276
+ const esNum = !isNaN(Number(value));
277
+ return data.filter(item => {
278
+ const campos = Array.isArray(campoBuscar) ? campoBuscar : [campoBuscar];
279
+ return campos.some(campo => {
280
+ const campoVal = item[campo];
281
+ if (campoVal == null)
282
+ return false;
283
+ return esNum
284
+ ? campoVal.toString().includes(value.toString())
285
+ : normalizar(campoVal).includes(normalizar(value));
286
+ });
287
+ });
288
+ }
265
289
 
266
290
  function mostrarValorEnBusqueda(campos, idxSel) {
267
291
  const impDataMostrar = () => {
@@ -484,17 +508,192 @@ function changeSelectApi(control, queryService, formControl, tipo, dataExtra = {
484
508
  }
485
509
  });
486
510
  }
511
+ /**
512
+ * Comprueba si un valor es una Promesa
513
+ * @param valor - Valor a verificar
514
+ * @returns true si es una Promise
515
+ */
516
+ function esPromise(valor) {
517
+ return !!valor && typeof valor.then === 'function';
518
+ }
519
+ /**
520
+ * Selecciona todo el texto de un input
521
+ * @param event - Evento del input
522
+ */
523
+ function seleccionarTextoInput$1(event) {
524
+ event.target.select();
525
+ }
526
+ /**
527
+ * Función genérica para vincular un FormControl con datos desde API o Promise.
528
+ * Preparada para migrar a signals en el futuro.
529
+ */
530
+ function changeSelectReformateado(config) {
531
+ const { objThis, tipoReq, formControl, queryService, campoId, minLength = 3, dataExtra = {}, dataExtraVariable = [], anonimo = false, variableResultado = tipoReq, } = config;
532
+ formControl.valueChanges.pipe(debounceTime(500), tap(() => {
533
+ objThis.filtrados[variableResultado + 'tmp'] = isObservable(objThis.filtrados[variableResultado])
534
+ ? []
535
+ : objThis.filtrados[variableResultado] || [];
536
+ if (objThis.filtrados[variableResultado] !== objThis.filtrados[variableResultado + 'tmp']) {
537
+ objThis.filtrados[variableResultado] = [];
538
+ }
539
+ objThis.isLoading = true;
540
+ }), switchMap(value => {
541
+ if (campoId) {
542
+ const existe = objThis.filtrados[variableResultado + 'tmp']
543
+ .findIndex((item) => item[campoId] === value);
544
+ if (existe >= 0) {
545
+ return of({ [tipoReq]: objThis.filtrados[variableResultado + 'tmp'] });
546
+ }
547
+ }
548
+ if (!value || value.length < minLength) {
549
+ objThis.isLoading = false;
550
+ return of({ [tipoReq]: [] });
551
+ }
552
+ const extraVars = Object.fromEntries(dataExtraVariable.map((v) => [v.campo, v.ctrlValue.value]));
553
+ const query = queryService.getDataMethod('GET', tipoReq, { ...dataExtra, ...extraVars, txtBuscar: value }, anonimo);
554
+ if (esPromise(query)) {
555
+ return query
556
+ .then((data) => ({ [tipoReq]: data[tipoReq] ?? [] }))
557
+ .finally(() => { objThis.isLoading = false; });
558
+ }
559
+ return query.pipe(finalize(() => { objThis.isLoading = false; }));
560
+ })).subscribe((data) => {
561
+ objThis.filtrados[variableResultado] = data[tipoReq] ?? [];
562
+ });
563
+ }
487
564
 
488
565
  function seleccionarTextoInput(event) {
489
566
  event.target.select();
490
567
  }
491
568
 
569
+ /**
570
+ * Codifica un string a base64 (método legacy)
571
+ * @param val - String a codificar
572
+ * @returns String codificado en base64
573
+ * @deprecated Use encodeBase64String() en su lugar
574
+ */
492
575
  function b64Encode(val) {
493
576
  return Buffer.from(val, 'binary').toString('base64');
494
577
  }
578
+ /**
579
+ * Decodifica un string desde base64 (método legacy)
580
+ * @param val - String en base64 a decodificar
581
+ * @returns String decodificado
582
+ * @deprecated Use decodeBase64String() en su lugar
583
+ */
495
584
  function b64Decode(val) {
496
585
  return Buffer.from(val, 'base64').toString('binary');
497
586
  }
587
+ /**
588
+ * Codificar string a Base64 (UTF-8 seguro)
589
+ * @param str - String a codificar
590
+ * @returns String codificado en base64
591
+ *
592
+ * @example
593
+ * ```typescript
594
+ * const encoded = encodeBase64String('Hola Mundo ñ');
595
+ * // encoded: "SG9sYSBNdW5kbyDDsQ=="
596
+ * ```
597
+ */
598
+ function encodeBase64String(str) {
599
+ const encoder = new TextEncoder();
600
+ const bytes = encoder.encode(str);
601
+ let binary = '';
602
+ bytes.forEach(b => binary += String.fromCharCode(b));
603
+ return btoa(binary);
604
+ }
605
+ /**
606
+ * Decodificar Base64 a string (UTF-8 seguro)
607
+ * @param b64 - String en base64 a decodificar
608
+ * @returns String decodificado
609
+ *
610
+ * @example
611
+ * ```typescript
612
+ * const decoded = decodeBase64String('SG9sYSBNdW5kbyDDsQ==');
613
+ * // decoded: "Hola Mundo ñ"
614
+ * ```
615
+ */
616
+ function decodeBase64String(b64) {
617
+ const binary = atob(b64);
618
+ const bytes = new Uint8Array(binary.length);
619
+ for (let i = 0; i < binary.length; i++) {
620
+ bytes[i] = binary.charCodeAt(i);
621
+ }
622
+ const decoder = new TextDecoder();
623
+ return decoder.decode(bytes);
624
+ }
625
+ /**
626
+ * Codificar un objeto a base64 (UTF-8 seguro)
627
+ * @param obj - Objeto a codificar
628
+ * @returns String codificado en base64
629
+ *
630
+ * @example
631
+ * ```typescript
632
+ * const obj = { nombre: 'Juan', edad: 25 };
633
+ * const encoded = encodeBase64Object(obj);
634
+ * ```
635
+ */
636
+ function encodeBase64Object(obj) {
637
+ return encodeBase64String(JSON.stringify(obj));
638
+ }
639
+ /**
640
+ * Decodificar un base64 y obtener el objeto original
641
+ * @param b64 - String en base64 a decodificar
642
+ * @returns Objeto decodificado
643
+ *
644
+ * @example
645
+ * ```typescript
646
+ * const obj = decodeBase64Object<{ nombre: string, edad: number }>(encoded);
647
+ * // obj: { nombre: 'Juan', edad: 25 }
648
+ * ```
649
+ */
650
+ function decodeBase64Object(b64) {
651
+ return JSON.parse(decodeBase64String(b64));
652
+ }
653
+ /**
654
+ * Codificar archivo a Base64 (retorna solo el contenido, sin "data:...")
655
+ * @param file - Archivo o Blob a codificar
656
+ * @returns Promise con el string en base64
657
+ *
658
+ * @example
659
+ * ```typescript
660
+ * const file = event.target.files[0];
661
+ * const base64 = await encodeBase64File(file);
662
+ * // base64: "iVBORw0KGgoAAAANSUhEUgAA..."
663
+ * ```
664
+ */
665
+ function encodeBase64File(file) {
666
+ return new Promise((resolve, reject) => {
667
+ const reader = new FileReader();
668
+ reader.onload = () => {
669
+ const result = reader.result;
670
+ resolve(result.split(',')[1]); // quita el prefijo "data:...;base64,"
671
+ };
672
+ reader.onerror = reject;
673
+ reader.readAsDataURL(file);
674
+ });
675
+ }
676
+ /**
677
+ * Decodificar Base64 a Blob (para reconstruir archivos en Angular)
678
+ * @param b64 - String en base64
679
+ * @param mimeType - Tipo MIME del archivo (opcional)
680
+ * @returns Blob con el contenido decodificado
681
+ *
682
+ * @example
683
+ * ```typescript
684
+ * const blob = decodeBase64ToBlob(base64String, 'image/png');
685
+ * const url = URL.createObjectURL(blob);
686
+ * // Usar url para mostrar imagen o descargar
687
+ * ```
688
+ */
689
+ function decodeBase64ToBlob(b64, mimeType = 'application/octet-stream') {
690
+ const byteChars = atob(b64);
691
+ const byteNumbers = new Array(byteChars.length);
692
+ for (let i = 0; i < byteChars.length; i++) {
693
+ byteNumbers[i] = byteChars.charCodeAt(i);
694
+ }
695
+ return new Blob([new Uint8Array(byteNumbers)], { type: mimeType });
696
+ }
498
697
 
499
698
  function getBrowserName() {
500
699
  const agent = window.navigator.userAgent.toLowerCase();
@@ -1647,10 +1846,10 @@ class DataEnListaPipe {
1647
1846
  }
1648
1847
  return null;
1649
1848
  }
1650
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.16", ngImport: i0, type: DataEnListaPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
1651
- static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.2.16", ngImport: i0, type: DataEnListaPipe, isStandalone: true, name: "dataEnLista" });
1849
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DataEnListaPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
1850
+ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.2.14", ngImport: i0, type: DataEnListaPipe, isStandalone: true, name: "dataEnLista" });
1652
1851
  }
1653
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.16", ngImport: i0, type: DataEnListaPipe, decorators: [{
1852
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DataEnListaPipe, decorators: [{
1654
1853
  type: Pipe,
1655
1854
  args: [{
1656
1855
  name: 'dataEnLista',
@@ -1739,10 +1938,10 @@ class DateDiffStringPipe {
1739
1938
  seconds,
1740
1939
  };
1741
1940
  }
1742
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.16", ngImport: i0, type: DateDiffStringPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
1743
- static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.2.16", ngImport: i0, type: DateDiffStringPipe, isStandalone: true, name: "dateDiffString" });
1941
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DateDiffStringPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
1942
+ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.2.14", ngImport: i0, type: DateDiffStringPipe, isStandalone: true, name: "dateDiffString" });
1744
1943
  }
1745
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.16", ngImport: i0, type: DateDiffStringPipe, decorators: [{
1944
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DateDiffStringPipe, decorators: [{
1746
1945
  type: Pipe,
1747
1946
  args: [{
1748
1947
  name: 'dateDiffString',
@@ -1794,10 +1993,10 @@ class FiltroPipe {
1794
1993
  return false;
1795
1994
  });
1796
1995
  }
1797
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.16", ngImport: i0, type: FiltroPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
1798
- static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.2.16", ngImport: i0, type: FiltroPipe, isStandalone: true, name: "filtro" });
1996
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: FiltroPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
1997
+ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.2.14", ngImport: i0, type: FiltroPipe, isStandalone: true, name: "filtro" });
1799
1998
  }
1800
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.16", ngImport: i0, type: FiltroPipe, decorators: [{
1999
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: FiltroPipe, decorators: [{
1801
2000
  type: Pipe,
1802
2001
  args: [{
1803
2002
  name: 'filtro'
@@ -1811,10 +2010,10 @@ class FormControlIsRequiredPipe {
1811
2010
  }
1812
2011
  return formControl.hasValidator(Validators.required);
1813
2012
  }
1814
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.16", ngImport: i0, type: FormControlIsRequiredPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
1815
- static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.2.16", ngImport: i0, type: FormControlIsRequiredPipe, isStandalone: true, name: "formControlIsRequired" });
2013
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: FormControlIsRequiredPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
2014
+ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.2.14", ngImport: i0, type: FormControlIsRequiredPipe, isStandalone: true, name: "formControlIsRequired" });
1816
2015
  }
1817
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.16", ngImport: i0, type: FormControlIsRequiredPipe, decorators: [{
2016
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: FormControlIsRequiredPipe, decorators: [{
1818
2017
  type: Pipe,
1819
2018
  args: [{
1820
2019
  name: 'formControlIsRequired'
@@ -1837,10 +2036,10 @@ class JsonParsePipe {
1837
2036
  return [];
1838
2037
  }
1839
2038
  }
1840
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.16", ngImport: i0, type: JsonParsePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
1841
- static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.2.16", ngImport: i0, type: JsonParsePipe, isStandalone: true, name: "jsonParse" });
2039
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: JsonParsePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
2040
+ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.2.14", ngImport: i0, type: JsonParsePipe, isStandalone: true, name: "jsonParse" });
1842
2041
  }
1843
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.16", ngImport: i0, type: JsonParsePipe, decorators: [{
2042
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: JsonParsePipe, decorators: [{
1844
2043
  type: Pipe,
1845
2044
  args: [{
1846
2045
  name: 'jsonParse'
@@ -1855,10 +2054,10 @@ class NoSanitizePipe {
1855
2054
  transform(html) {
1856
2055
  return this.domSanitizer.bypassSecurityTrustHtml(html);
1857
2056
  }
1858
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.16", ngImport: i0, type: NoSanitizePipe, deps: [{ token: i1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Pipe });
1859
- static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.2.16", ngImport: i0, type: NoSanitizePipe, isStandalone: true, name: "noSanitize" });
2057
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: NoSanitizePipe, deps: [{ token: i1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Pipe });
2058
+ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.2.14", ngImport: i0, type: NoSanitizePipe, isStandalone: true, name: "noSanitize" });
1860
2059
  }
1861
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.16", ngImport: i0, type: NoSanitizePipe, decorators: [{
2060
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: NoSanitizePipe, decorators: [{
1862
2061
  type: Pipe,
1863
2062
  args: [{ name: 'noSanitize' }]
1864
2063
  }], ctorParameters: () => [{ type: i1.DomSanitizer }] });
@@ -1873,10 +2072,10 @@ class TipoValorFuncionPipe {
1873
2072
  }
1874
2073
  return datoParam;
1875
2074
  }
1876
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.16", ngImport: i0, type: TipoValorFuncionPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
1877
- static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.2.16", ngImport: i0, type: TipoValorFuncionPipe, isStandalone: true, name: "tipoValorFuncion" });
2075
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: TipoValorFuncionPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
2076
+ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.2.14", ngImport: i0, type: TipoValorFuncionPipe, isStandalone: true, name: "tipoValorFuncion" });
1878
2077
  }
1879
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.16", ngImport: i0, type: TipoValorFuncionPipe, decorators: [{
2078
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: TipoValorFuncionPipe, decorators: [{
1880
2079
  type: Pipe,
1881
2080
  args: [{
1882
2081
  name: 'tipoValorFuncion',
@@ -1895,10 +2094,10 @@ class ZeroFillPipe {
1895
2094
  }
1896
2095
  return s;
1897
2096
  }
1898
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.16", ngImport: i0, type: ZeroFillPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
1899
- static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.2.16", ngImport: i0, type: ZeroFillPipe, isStandalone: true, name: "zeroFill" });
2097
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: ZeroFillPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
2098
+ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.2.14", ngImport: i0, type: ZeroFillPipe, isStandalone: true, name: "zeroFill" });
1900
2099
  }
1901
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.16", ngImport: i0, type: ZeroFillPipe, decorators: [{
2100
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: ZeroFillPipe, decorators: [{
1902
2101
  type: Pipe,
1903
2102
  args: [{
1904
2103
  name: 'zeroFill',
@@ -1921,5 +2120,5 @@ function zeroFill(value, digitos, ...args) {
1921
2120
  * Generated bundle index. Do not edit.
1922
2121
  */
1923
2122
 
1924
- export { DataEnListaPipe, DataModel, DateDiffStringPipe, FiltroPipe, FormControlIsRequiredPipe, JsonParsePipe, NoSanitizePipe, TipoValorFuncionPipe, ZeroFillPipe, b64Decode, b64Encode, buscarPorCampo, changeSelect, changeSelectApi, changeSelectData, changeSelectDataApi, convertirBytes, dataEnLista, dateDiffString, deepClone, deepMerge, delLocalStorage, desencriptar, devError, devGroup, devGroupEnd, devLog, devTable, devTime, devTimeEnd, devWarn, downLoadFileStream, eliminarColumnaPorIndex, eliminarDuplicados, eliminarElementos, encriptar, esNumero, establecerQuitarRequired, extraerDominio, formControlIsRequired, formatearFecha, formatearFechaCadena, formatearFechaFormato, generateRandomString, getBrowserName, getCambiarPwd, getDataArchivoFromPath, getFormValidationErrors, getLocalStorage, getUniqueValues, getUniqueValuesByProperty, groupBy, inicializarVariablesSessionStorage, isEmail, isProduction, jwtToken, jwtTokenData, jwtTokenExpiracion, jwtTokenExpiracionFaltante, localStorageKeys, markAsTouchedWithoutEmitEvent, maskEmail, mensajeAlerta, mensajeConfirmacion, mensajeTimer, mensajeToast, mensajesDeError, mensajesErrorFormControl, mostrarValorEnBusqueda, nestGroupsBy, numberToWords, objectPropertiesBoolean, objectPropertiesToType, obtenerHostDesdeUrl, obtenerMimeType, obtenerUltimoOrden, ordenarArray, ordenarPorPropiedad, ordenarPorPropiedades, roundToDecimal, sanitizarNombreArchivo, seleccionarTextoInput, setCambiarPwd, setControlDesdeLista, setJwtTokenData, setLocalStorage, setProductionMode, sumarObjetos, sumarPropiedades, tipoValorFuncion, toFormData, transformarFechasPorNombreDeCampo, verificarRUC, zeroFill };
2123
+ export { DataEnListaPipe, DataModel, DateDiffStringPipe, FiltroPipe, FormControlIsRequiredPipe, JsonParsePipe, NoSanitizePipe, TipoValorFuncionPipe, ZeroFillPipe, b64Decode, b64Encode, buscarPorCampo, changeSelect, changeSelectApi, changeSelectData, changeSelectDataApi, changeSelectReformateado, convertirBytes, dataEnLista, dateDiffString, decodeBase64Object, decodeBase64String, decodeBase64ToBlob, deepClone, deepMerge, delLocalStorage, desencriptar, devError, devGroup, devGroupEnd, devLog, devTable, devTime, devTimeEnd, devWarn, downLoadFileStream, eliminarColumnaPorIndex, eliminarDuplicados, eliminarElementos, encodeBase64File, encodeBase64Object, encodeBase64String, encriptar, esNumero, esPromise, establecerQuitarRequired, extraerDominio, filtrarDatosLocal, formControlIsRequired, formatearFecha, formatearFechaCadena, formatearFechaFormato, generateRandomString, getBrowserName, getCambiarPwd, getDataArchivoFromPath, getFormValidationErrors, getLocalStorage, getUniqueValues, getUniqueValuesByProperty, getValueByPath, groupBy, inicializarVariablesSessionStorage, isEmail, isProduction, jwtToken, jwtTokenData, jwtTokenExpiracion, jwtTokenExpiracionFaltante, localStorageKeys, markAsTouchedWithoutEmitEvent, maskEmail, mensajeAlerta, mensajeConfirmacion, mensajeTimer, mensajeToast, mensajesDeError, mensajesErrorFormControl, mostrarValorEnBusqueda, nestGroupsBy, numberToWords, objectPropertiesBoolean, objectPropertiesToType, obtenerHostDesdeUrl, obtenerMimeType, obtenerUltimoOrden, ordenarArray, ordenarPorPropiedad, ordenarPorPropiedades, roundToDecimal, sanitizarNombreArchivo, seleccionarTextoInput, setCambiarPwd, setControlDesdeLista, setJwtTokenData, setLocalStorage, setProductionMode, sumarObjetos, sumarPropiedades, tipoValorFuncion, toFormData, transformarFechasPorNombreDeCampo, verificarRUC, zeroFill };
1925
2124
  //# sourceMappingURL=jvsoft-utils.mjs.map