@factor_ec/utils 3.0.3 → 5.0.1
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/README.md +49 -10
- package/fesm2022/factor_ec-utils.mjs +608 -33
- package/fesm2022/factor_ec-utils.mjs.map +1 -1
- package/lib/array.service.d.ts +6 -0
- package/lib/csv.service.d.ts +88 -0
- package/lib/date.service.d.ts +6 -0
- package/lib/graphql.provider.d.ts +4 -0
- package/lib/graphql.service.d.ts +12 -0
- package/lib/models/auth-token-payload.d.ts +6 -0
- package/lib/models/auth-token.d.ts +4 -0
- package/lib/models/currency.d.ts +6 -0
- package/lib/models/error.d.ts +6 -0
- package/lib/models/language.d.ts +4 -0
- package/lib/models/login.d.ts +4 -0
- package/lib/models/operation.d.ts +4 -0
- package/lib/models/option.d.ts +5 -0
- package/lib/models/user.d.ts +5 -0
- package/lib/models/utils-options.d.ts +6 -0
- package/lib/object.service.d.ts +7 -0
- package/lib/rest.service.d.ts +16 -0
- package/lib/string.service.d.ts +14 -0
- package/lib/utils.service.d.ts +9 -0
- package/package.json +5 -5
- package/public-api.d.ts +18 -1
- package/esm2022/factor_ec-utils.mjs +0 -5
- package/esm2022/lib/color.service.mjs +0 -162
- package/esm2022/lib/files.service.mjs +0 -47
- package/esm2022/lib/google-tag-manager.service.mjs +0 -75
- package/esm2022/lib/storage.service.mjs +0 -90
- package/esm2022/lib/validators/ec/identification-type.mjs +0 -154
- package/esm2022/lib/validators/ec/identification-validator.mjs +0 -30
- package/esm2022/public-api.mjs +0 -10
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"factor_ec-utils.mjs","sources":["../../../projects/utils/src/lib/color.service.ts","../../../projects/utils/src/lib/files.service.ts","../../../projects/utils/src/lib/google-tag-manager.service.ts","../../../projects/utils/src/lib/storage.service.ts","../../../projects/utils/src/lib/validators/ec/identification-type.ts","../../../projects/utils/src/lib/validators/ec/identification-validator.ts","../../../projects/utils/src/public-api.ts","../../../projects/utils/src/factor_ec-utils.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ColorService {\n L: number[];\n S: number[];\n hueRanges: { min: number, max: number }[];\n\n constructor() {\n const options: any = {};\n let LS = [options.lightness, options.saturation].map(function (param) {\n param = param || [0.35, 0.5, 0.65]; // note that 3 is a prime\n return Array.isArray(param) ? param.concat() : [param];\n });\n\n this.L = LS[0];\n this.S = LS[1];\n\n if (typeof options.hue === 'number') {\n options.hue = { min: options.hue, max: options.hue };\n }\n if (typeof options.hue === 'object' && !Array.isArray(options.hue)) {\n options.hue = [options.hue];\n }\n if (typeof options.hue === 'undefined') {\n options.hue = [];\n }\n this.hueRanges = options.hue.map(function (range: { min: number, max: number }) {\n return {\n min: typeof range.min === 'undefined' ? 0 : range.min,\n max: typeof range.max === 'undefined' ? 360 : range.max\n };\n });\n }\n\n /**\n * BKDR Hash (modified version)\n *\n * @param str string to hash\n */\n hash(str: string): number {\n let seed = 131;\n let seed2 = 137;\n let hash = 0;\n // make hash more sensitive for short string like 'a', 'b', 'c'\n str += 'x';\n // Note: Number.MAX_SAFE_INTEGER equals 9007199254740991\n const maxSafeInteger: number = Math.round(9007199254740991 / seed2);\n for (let i = 0; i < str.length; i++) {\n if (hash > maxSafeInteger) {\n hash = Math.round(hash / seed2);\n }\n hash = hash * seed + str.charCodeAt(i);\n }\n return hash;\n };\n\n /**\n * Convert RGB Array to HEX\n *\n * @param RGBArray - [R, G, B]\n * @returns 6 digits hex starting with #\n */\n rgb2hex(RGBArray: number[]): string {\n let hex = '#';\n RGBArray.forEach(function (value) {\n if (value < 16) {\n hex += 0;\n }\n hex += value.toString(16);\n });\n return hex;\n };\n\n /**\n * Convert HSL to RGB\n *\n * @see {@link http://zh.wikipedia.org/wiki/HSL和HSV色彩空间} for further information.\n * @param H Hue ∈ [0, 360)\n * @param S Saturation ∈ [0, 1]\n * @param L Lightness ∈ [0, 1]\n * @returns R, G, B ∈ [0, 255]\n */\n hsl2rgb(H: number, S: number, L: number): number[] {\n H /= 360;\n\n let q = L < 0.5 ? L * (1 + S) : L + S - L * S;\n let p = 2 * L - q;\n\n return [H + 1 / 3, H, H - 1 / 3].map(function (color) {\n if (color < 0) {\n color++;\n }\n if (color > 1) {\n color--;\n }\n if (color < 1 / 6) {\n color = p + (q - p) * 6 * color;\n } else if (color < 0.5) {\n color = q;\n } else if (color < 2 / 3) {\n color = p + (q - p) * 6 * (2 / 3 - color);\n } else {\n color = p;\n }\n return Math.round(color * 255);\n });\n };\n\n\n /**\n * Returns the hash in [h, s, l].\n * Note that H ∈ [0, 360); S ∈ [0, 1]; L ∈ [0, 1];\n *\n * @param str string to hash\n * @returns [h, s, l]\n */\n hsl(str: string): any[] {\n let H;\n let S;\n let L;\n let hash = this.hash(str);\n\n if (this.hueRanges.length) {\n let range = this.hueRanges[hash % this.hueRanges.length];\n let hueResolution = 727; // note that 727 is a prime\n H = ((hash / this.hueRanges.length) % hueResolution) * (range.max - range.min) / hueResolution + range.min;\n } else {\n H = hash % 359; // note that 359 is a prime\n }\n hash = Math.round(hash / 360);\n S = this.S[hash % this.S.length];\n hash = Math.round(hash / this.S.length);\n L = this.L[hash % this.L.length];\n\n return [H, S, L];\n };\n\n /**\n * Returns the hash in [r, g, b].\n * Note that R, G, B ∈ [0, 255]\n *\n * @param str string to hash\n * @returns [r, g, b]\n */\n rgb(str: string): number[] {\n let hsl = this.hsl(str);\n return this.hsl2rgb(hsl[0], hsl[1], hsl[2]);\n };\n\n /**\n * Returns the hash in hex\n *\n * @param str string to hash\n * @returns hex with #\n */\n hex(str: string): string {\n let rgb = this.rgb(str);\n return this.rgb2hex(rgb);\n };\n}\n","import { Injectable } from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class FilesService {\n private callback!: Function;\n private fileInput: HTMLInputElement;\n\n constructor() {\n this.fileInput = document.createElement('input');\n this.fileInput.type = 'file';\n this.fileInput.addEventListener('change', (event: any) => {\n this.loadValue(event.currentTarget.files);\n });\n }\n private loadValue(files: FileList) {\n if (files && files.length > 0) {\n let data: any[] = [];\n for (let i = 0; i < files.length; i++) {\n const file: any = files.item(i);\n const reader = new FileReader();\n reader.readAsDataURL(file);\n reader.onload = () => {\n data.push(Object.assign(file, {\n data: reader.result\n }));\n if (data.length == files.length) {\n this.callback(data.length > 0 ? data : null);\n this.fileInput.value = '';\n }\n };\n }\n }\n }\n public open(callback?: Function, options?: { accept?: string, multiple?: boolean }) {\n this.fileInput.accept = options?.accept ? options.accept : '';\n this.fileInput.multiple = options?.multiple || false;\n this.fileInput.click();\n if (callback) {\n this.callback = callback;\n }\n }\n}\n","import { isPlatformBrowser } from '@angular/common';\nimport { Inject, Injectable, PLATFORM_ID } from '@angular/core';\nimport { Router, NavigationEnd } from '@angular/router';\n\ndeclare var window: any;\n\n@Injectable({\n providedIn: 'root'\n})\nexport class GoogleTagManagerService {\n trackingId!: string;\n\n constructor(\n @Inject(PLATFORM_ID) private platformId: Object,\n public router: Router\n ) { }\n\n public appendTrackingCode(trackingId: string): void {\n try {\n if (isPlatformBrowser(this.platformId) && trackingId) {\n this.trackingId = trackingId;\n const s1: HTMLElement = document.createElement('script');\n s1.innerHTML = `\n (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':\n new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],\n j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=\n '//www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);\n })(window,document,'script','dataLayer','${trackingId}');\n `;\n document.head.appendChild(s1);\n const s2: HTMLElement = document.createElement('noscript');\n const s3: HTMLIFrameElement = document.createElement('iframe');\n s3.width = '0';\n s3.height = '0';\n s3.style.display = 'none';\n s3.style.visibility = 'hidden';\n s3.src = `//www.googletagmanager.com/ns.html?id=${trackingId}`\n s2.appendChild(s3);\n (document.body as HTMLElement).prepend(s2);\n this.initSubscribers();\n }\n } catch (ex) {\n console.error('Error appending google tag manager');\n console.error(ex);\n }\n }\n public addVariable(variable: any) {\n if (isPlatformBrowser(this.platformId) && this.trackingId) {\n window.dataLayer = window.dataLayer || [];\n window.dataLayer.push(variable);\n }\n }\n private initSubscribers() {\n this.router.events.subscribe(event => {\n try {\n if (event instanceof NavigationEnd && this.trackingId) {\n this.addVariable({\n event: 'router.NavigationEnd',\n pageTitle: document.title,\n pagePath: event.urlAfterRedirects\n });\n }\n } catch (e) {\n console.error(e);\n }\n });\n }\n}\n","import { isPlatformBrowser } from '@angular/common';\nimport { Inject, Injectable, PLATFORM_ID } from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class StorageService {\n //TODO: Replace with Map object it is more efficient\n memoryStorage: any;\n\n constructor(\n @Inject(PLATFORM_ID) private platformId: Object\n ) { }\n\n private getValue(key: string, storage?: 'local' | 'session' | 'memory'): any {\n let value: any;\n if (!storage || typeof storage == 'string') {\n switch (storage) {\n case 'local':\n value = localStorage[key];\n break;\n case 'memory':\n value = this.memoryStorage[key];\n break;\n default:\n value = sessionStorage[key];\n break;\n }\n } else if (typeof storage == 'object') {\n value = storage[key];\n }\n return value;\n }\n public delete(key: string, storage?: 'local' | 'session' | 'memory') {\n if (isPlatformBrowser(this.platformId)) {\n if (!storage || typeof storage == 'string') {\n switch (storage) {\n case 'local':\n delete localStorage[key];\n break;\n case 'memory':\n delete this.memoryStorage[key];\n break;\n default:\n delete sessionStorage[key];\n break;\n }\n } else if (typeof storage == 'object') {\n delete storage[key];\n }\n }\n }\n public get(key: string, storage?: 'local' | 'session' | 'memory'): any {\n let parsedValue: any;\n if (isPlatformBrowser(this.platformId)) {\n try {\n parsedValue = JSON.parse(this.getValue(key, storage));\n } catch (err) {\n parsedValue = this.getValue(key, storage);\n }\n }\n return parsedValue;\n }\n public set(key: string, value: any, storage?: 'local' | 'session' | 'memory') {\n if (isPlatformBrowser(this.platformId)) {\n const valueString = JSON.stringify(value);\n if (!storage || typeof storage == 'string') {\n switch (storage) {\n case 'local':\n localStorage[key] = valueString;\n break;\n case 'memory':\n this.memoryStorage[key] = valueString;\n break;\n default:\n sessionStorage[key] = valueString;\n break;\n }\n }\n }\n }\n}\n","function lengthValidator(number: string, digits: number): boolean {\n let value = true;\n if (number.trim() === '') { // No puede estar vacio\n value = false;\n } else if (number.trim().length !== digits) { // Cantidad de dígitos\n value = false;\n }\n return value;\n}\nfunction provinceValidator(number: string): boolean {\n let value = true;\n const code = Number(number);\n if ((code < 0 || code > 24) && code !== 30) {\n value = false;\n }\n return value;\n}\nfunction typeValidator(number: string, type: string): boolean {\n let value = true;\n const code = Number(number);\n switch (type) {\n case 'cedula':\n if (code < 0 || code > 6) {\n value = false;\n }\n break;\n case 'ruc_natural':\n if (code < 0 || code > 5) {\n value = false;\n }\n break;\n case 'ruc_privada':\n if (code !== 9) {\n value = false;\n }\n break;\n case 'ruc_publica':\n if (code !== 6) {\n value = false;\n }\n break;\n default:\n value = false;\n break;\n }\n return value;\n}\nfunction module10Validator(number: string, verifierCodeString: string): boolean {\n const coefficients: number[] = [2, 1, 2, 1, 2, 1, 2, 1, 2];\n const verifierCode = Number(verifierCodeString);\n const numberParts: string[] = number.split('');\n let value = true;\n let total = 0;\n let result: number;\n numberParts.forEach((part: string, index: number) => {\n let valuePosition: number = Number(part) * coefficients[index];\n if (valuePosition >= 10) {\n let newValuePosition: string[] = String(valuePosition).split('');\n let sum: string = newValuePosition.reduce((previousValue: string, currentValue: string) => {\n return String(Number(currentValue) + Number(previousValue));\n });\n valuePosition = Number(sum);\n }\n total += valuePosition;\n });\n const residue: number = total % 10;\n if (residue === 0) {\n result = 0;\n } else {\n result = 10 - residue;\n }\n if (result !== verifierCode) {\n value = false;\n }\n return value;\n}\nfunction module11Validator(number: string, verifierCodeString: string, type: string): boolean {\n const verifierCode = Number(verifierCodeString);\n const numberParts: string[] = number.split('');\n let value = true;\n let coefficients: number[];\n let total = 0;\n let result: number;\n switch (type) {\n case 'ruc_privada':\n coefficients = [4, 3, 2, 7, 6, 5, 4, 3, 2];\n break;\n case 'ruc_publica':\n coefficients = [3, 2, 7, 6, 5, 4, 3, 2];\n break;\n default:\n return false;\n break;\n }\n numberParts.forEach((part: string, index: number) => {\n let valuePosition: number = Number(part) * coefficients[index];\n total += valuePosition;\n });\n const residue: number = total % 11;\n if (residue === 0) {\n result = 0;\n } else {\n result = 11 - residue;\n }\n if (result !== verifierCode) {\n value = false;\n }\n return value;\n}\nfunction storeCodeValidator(number: string): boolean {\n let value = true;\n const code = Number(number);\n if (code < 1) {\n value = false;\n }\n return value;\n}\nexport function getIdentificationType(number: string): string | null {\n let type: string | null = null;\n if (lengthValidator(number, 10) &&\n provinceValidator(number.substr(0, 2)) &&\n //typeValidator(number.substr(2, 1), 'cedula') &&\n module10Validator(number.substr(0, 9), number.substr(9, 1))) {\n type = 'cedula';\n } else if (lengthValidator(number, 13) &&\n provinceValidator(number.substr(0, 2)) &&\n //typeValidator(number.substr(2, 1), 'ruc_natural') &&\n storeCodeValidator(number.substr(10, 3)) &&\n module10Validator(number.substr(0, 9), number.substr(9, 1))\n ) {\n type = 'ruc_natural';\n } else if (lengthValidator(number, 13) &&\n provinceValidator(number.substr(0, 2)) &&\n typeValidator(number.substr(2, 1), 'ruc_privada') &&\n storeCodeValidator(number.substr(10, 3)) //&&\n //module11Validator(number.substr(0, 9), number.substr(9, 1), 'ruc_privada')\n ) {\n type = 'ruc_privada';\n } else if (lengthValidator(number, 13) &&\n provinceValidator(number.substr(0, 2)) &&\n typeValidator(number.substr(2, 1), 'ruc_publica') &&\n storeCodeValidator(number.substr(9, 4)) //&&\n //module11Validator(number.substr(0, 8), number.substr(8, 1), 'ruc_publica')\n ) {\n type = 'ruc_publica';\n }\n return type;\n}","import { AbstractControl, ValidationErrors, ValidatorFn } from '@angular/forms';\nimport { getIdentificationType } from './identification-type';\n\nexport function identificationValidator(type: 'cedula' | 'ruc_natural' | 'ruc_privada' | 'ruc_publica' | 'ruc' | 'id'): ValidatorFn {\n return (control: AbstractControl): ValidationErrors | null => {\n const number: string = String(control.value);\n if (number && number.trim() !== '') {\n const parsedType = getIdentificationType(number);\n switch (type) {\n case 'cedula':\n case 'ruc_natural':\n case 'ruc_privada':\n case 'ruc_publica':\n return !parsedType || parsedType !== type ? { invalidIdentification: true } : null;\n break;\n case 'ruc':\n return !parsedType || ['ruc_natural', 'ruc_privada', 'ruc_publica'].indexOf(parsedType) === -1 ? { invalidIdentification: true } : null;\n break;\n case 'id':\n return !parsedType ? { invalidIdentification: true } : null;\n break;\n default:\n return null;\n break;\n }\n } else {\n return null;\n }\n };\n}\n","/*\n * Public API Surface of utils\n */\n\nexport * from './lib/color.service';\nexport * from './lib/files.service';\nexport * from './lib/google-tag-manager.service';\nexport * from './lib/storage.service';\nexport * from './lib/validators/ec/identification-validator';\nexport * from './lib/validators/ec/identification-type';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"factor_ec-utils.mjs","sources":["../../../projects/utils/src/lib/array.service.ts","../../../projects/utils/src/lib/color.service.ts","../../../projects/utils/src/lib/csv.service.ts","../../../projects/utils/src/lib/date.service.ts","../../../projects/utils/src/lib/files.service.ts","../../../projects/utils/src/lib/google-tag-manager.service.ts","../../../projects/utils/src/lib/models/utils-options.ts","../../../projects/utils/src/lib/utils.service.ts","../../../projects/utils/src/lib/graphql.provider.ts","../../../projects/utils/src/lib/string.service.ts","../../../projects/utils/src/lib/graphql.service.ts","../../../projects/utils/src/lib/object.service.ts","../../../projects/utils/src/lib/rest.service.ts","../../../projects/utils/src/lib/storage.service.ts","../../../projects/utils/src/lib/validators/ec/identification-type.ts","../../../projects/utils/src/lib/validators/ec/identification-validator.ts","../../../projects/utils/src/factor_ec-utils.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ArrayService {\n public merge(arrays: any[], prop: string): any[] {\n const merged: any = {};\n arrays.forEach(arr => {\n arr.forEach((item: any) => {\n merged[item[prop]] = Object.assign({}, merged[item[prop]], item);\n });\n });\n return Object.values(merged);\n }\n}\n","import { Injectable } from '@angular/core';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ColorService {\n L: number[];\n S: number[];\n hueRanges: { min: number; max: number }[];\n\n constructor() {\n const options: any = {};\n let LS = [options.lightness, options.saturation].map(function (param) {\n param = param || [0.35, 0.5, 0.65]; // note that 3 is a prime\n return Array.isArray(param) ? param.concat() : [param];\n });\n\n this.L = LS[0];\n this.S = LS[1];\n\n if (typeof options.hue === 'number') {\n options.hue = { min: options.hue, max: options.hue };\n }\n if (typeof options.hue === 'object' && !Array.isArray(options.hue)) {\n options.hue = [options.hue];\n }\n if (typeof options.hue === 'undefined') {\n options.hue = [];\n }\n this.hueRanges = options.hue.map(function (range: {\n min: number;\n max: number;\n }) {\n return {\n min: typeof range.min === 'undefined' ? 0 : range.min,\n max: typeof range.max === 'undefined' ? 360 : range.max,\n };\n });\n }\n\n /**\n * BKDR Hash (modified version)\n *\n * @param str string to hash\n */\n hash(str: string): number {\n let seed = 131;\n let seed2 = 137;\n let hash = 0;\n // make hash more sensitive for short string like 'a', 'b', 'c'\n str += 'x';\n // Note: Number.MAX_SAFE_INTEGER equals 9007199254740991\n const maxSafeInteger: number = Math.round(9007199254740991 / seed2);\n for (let i = 0; i < str.length; i++) {\n if (hash > maxSafeInteger) {\n hash = Math.round(hash / seed2);\n }\n hash = hash * seed + str.charCodeAt(i);\n }\n return hash;\n }\n\n /**\n * Convert RGB Array to HEX\n *\n * @param RGBArray - [R, G, B]\n * @returns 6 digits hex starting with #\n */\n rgb2hex(RGBArray: number[]): string {\n let hex = '#';\n RGBArray.forEach(function (value) {\n if (value < 16) {\n hex += 0;\n }\n hex += value.toString(16);\n });\n return hex;\n }\n\n /**\n * Convert HSL to RGB\n *\n * @see {@link http://zh.wikipedia.org/wiki/HSL和HSV色彩空间} for further information.\n * @param H Hue ∈ [0, 360)\n * @param S Saturation ∈ [0, 1]\n * @param L Lightness ∈ [0, 1]\n * @returns R, G, B ∈ [0, 255]\n */\n hsl2rgb(H: number, S: number, L: number): number[] {\n H /= 360;\n\n let q = L < 0.5 ? L * (1 + S) : L + S - L * S;\n let p = 2 * L - q;\n\n return [H + 1 / 3, H, H - 1 / 3].map(function (color) {\n if (color < 0) {\n color++;\n }\n if (color > 1) {\n color--;\n }\n if (color < 1 / 6) {\n color = p + (q - p) * 6 * color;\n } else if (color < 0.5) {\n color = q;\n } else if (color < 2 / 3) {\n color = p + (q - p) * 6 * (2 / 3 - color);\n } else {\n color = p;\n }\n return Math.round(color * 255);\n });\n }\n\n /**\n * Returns the hash in [h, s, l].\n * Note that H ∈ [0, 360); S ∈ [0, 1]; L ∈ [0, 1];\n *\n * @param str string to hash\n * @returns [h, s, l]\n */\n hsl(str: string): any[] {\n let H;\n let S;\n let L;\n let hash = this.hash(str);\n\n if (this.hueRanges.length) {\n let range = this.hueRanges[hash % this.hueRanges.length];\n let hueResolution = 727; // note that 727 is a prime\n H =\n (((hash / this.hueRanges.length) % hueResolution) *\n (range.max - range.min)) /\n hueResolution +\n range.min;\n } else {\n H = hash % 359; // note that 359 is a prime\n }\n hash = Math.round(hash / 360);\n S = this.S[hash % this.S.length];\n hash = Math.round(hash / this.S.length);\n L = this.L[hash % this.L.length];\n\n return [H, S, L];\n }\n\n /**\n * Returns the hash in [r, g, b].\n * Note that R, G, B ∈ [0, 255]\n *\n * @param str string to hash\n * @returns [r, g, b]\n */\n rgb(str: string): number[] {\n let hsl = this.hsl(str);\n return this.hsl2rgb(hsl[0], hsl[1], hsl[2]);\n }\n\n /**\n * Returns the hash in hex\n *\n * @param str string to hash\n * @returns hex with #\n */\n hex(str: string): string {\n let rgb = this.rgb(str);\n return this.rgb2hex(rgb);\n }\n}\n","import { Injectable } from '@angular/core';\n\nexport interface CsvParsed {\n header: string[];\n content: string[][];\n}\n\nexport interface Options {\n filename: string;\n fieldSeparator: string;\n quoteStrings: string;\n decimalSeparator: string;\n showLabels: boolean;\n showTitle: boolean;\n title: string;\n useTextFile: boolean;\n useBom: boolean;\n headers: string[];\n useKeysAsHeaders: boolean;\n}\n\nexport class CsvConfigConsts {\n public static EOL = '\\r\\n';\n public static BOM = '\\ufeff';\n\n public static DEFAULT_FIELD_SEPARATOR = ',';\n public static DEFAULT_DECIMAL_SEPARATOR = '.';\n public static DEFAULT_QUOTE = '\"';\n public static DEFAULT_SHOW_TITLE = false;\n public static DEFAULT_TITLE = 'My Generated Report';\n public static DEFAULT_FILENAME = 'generated';\n public static DEFAULT_SHOW_LABELS = false;\n public static DEFAULT_USE_TEXT_FILE = false;\n public static DEFAULT_USE_BOM = true;\n public static DEFAULT_HEADER: string[] = [];\n public static DEFAULT_KEYS_AS_HEADERS = false;\n}\n\nexport const ConfigDefaults: Options = {\n filename: CsvConfigConsts.DEFAULT_FILENAME,\n fieldSeparator: CsvConfigConsts.DEFAULT_FIELD_SEPARATOR,\n quoteStrings: CsvConfigConsts.DEFAULT_QUOTE,\n decimalSeparator: CsvConfigConsts.DEFAULT_DECIMAL_SEPARATOR,\n showLabels: CsvConfigConsts.DEFAULT_SHOW_LABELS,\n showTitle: CsvConfigConsts.DEFAULT_SHOW_TITLE,\n title: CsvConfigConsts.DEFAULT_TITLE,\n useTextFile: CsvConfigConsts.DEFAULT_USE_TEXT_FILE,\n useBom: CsvConfigConsts.DEFAULT_USE_BOM,\n headers: CsvConfigConsts.DEFAULT_HEADER,\n useKeysAsHeaders: CsvConfigConsts.DEFAULT_KEYS_AS_HEADERS\n};\n\n@Injectable({\n providedIn: 'root'\n})\nexport class CsvService {\n private _data: any[] = [];\n private _options: Options;\n private _csv = '';\n\n get options(): Options {\n return this._options;\n }\n\n set options(options: Partial<Options>) {\n this._options = this.objectAssign({}, ConfigDefaults, options);\n }\n\n constructor() {\n this._options = this.objectAssign({}, ConfigDefaults);\n }\n /**\n * Generate and Download Csv\n */\n generate(jsonData: any, shouldReturnCsv = false): void | any {\n // Make sure to reset csv data on each run\n this._csv = '';\n\n this._parseData(jsonData);\n\n if (this._options.useBom) {\n this._csv += CsvConfigConsts.BOM;\n }\n\n if (this._options.showTitle) {\n this._csv += this._options.title + '\\r\\n\\n';\n }\n\n this._getHeaders();\n this._getBody();\n\n if (this._csv == '') {\n console.log('Invalid data');\n return;\n }\n\n // When the consumer asks for the data, exit the function\n // by returning the CSV data built at this point\n if (shouldReturnCsv) {\n return this._csv;\n }\n\n // Create CSV blob to download if requesting in the browser and the\n // consumer doesn't set the shouldReturnCsv param\n const FileType = this._options.useTextFile ? 'plain' : 'csv';\n const fileExtension = this._options.useTextFile ? '.txt' : '.csv';\n const blob = new Blob([this._csv], {\n type: 'text/' + FileType + ';charset=utf8;'\n });\n\n //const attachmentType = this._options.useTextFile ? 'text' : 'csv';\n // const uri = 'data:attachment/' + attachmentType + ';charset=utf-8,' + encodeURI(this._csv);\n const link = document.createElement('a');\n link.href = URL.createObjectURL(blob);\n\n link.setAttribute('visibility', 'hidden');\n link.download = this._options.filename.replace(/ /g, '_') + fileExtension;\n\n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n }\n\n /**\n * Create Headers\n */\n private _getHeaders(): void {\n if (!this._options.showLabels && !this._options.useKeysAsHeaders) {\n return;\n }\n const useKeysAsHeaders = this._options.useKeysAsHeaders;\n const headers: string[] = useKeysAsHeaders\n ? Object.keys(this._data[0])\n : this._options.headers;\n\n if (headers.length > 0) {\n let row = '';\n for (let keyPos = 0; keyPos < headers.length; keyPos++) {\n row += headers[keyPos] + this._options.fieldSeparator;\n }\n\n row = row.slice(0, -1);\n this._csv += row + CsvConfigConsts.EOL;\n }\n }\n /**\n * Create Body\n */\n private _getBody() {\n const keys = Object.keys(this._data[0]);\n for (var i = 0; i < this._data.length; i++) {\n let row = '';\n for (let keyPos = 0; keyPos < keys.length; keyPos++) {\n const key = keys[keyPos];\n row +=\n this._formatData(this._data[i][key]) + this._options.fieldSeparator;\n }\n\n row = row.slice(0, -1);\n this._csv += row + CsvConfigConsts.EOL;\n }\n }\n /**\n * Format Data\n * @param {any} data\n */\n private _formatData(data: any) {\n if (this._options.decimalSeparator === 'locale' && this._isFloat(data)) {\n return data.toLocaleString();\n }\n\n if (this._options.decimalSeparator !== '.' && this._isFloat(data)) {\n return data.toString().replace('.', this._options.decimalSeparator);\n }\n\n if (typeof data === 'string') {\n data = data.replace(/\"/g, '\"\"');\n if (\n this._options.quoteStrings ||\n data.indexOf(',') > -1 ||\n data.indexOf('\\n') > -1 ||\n data.indexOf('\\r') > -1\n ) {\n data = this._options.quoteStrings + data + this._options.quoteStrings;\n }\n return data;\n }\n\n if (typeof data === 'boolean') {\n return data ? 'TRUE' : 'FALSE';\n }\n return data;\n }\n /**\n * Check if is Float\n * @param {any} input\n */\n private _isFloat(input: any) {\n return +input === input && (!isFinite(input) || Boolean(input % 1));\n }\n /**\n * Parse the collection given to it\n *\n * @private\n * @param {*} jsonData\n * @returns {any[]}\n * @memberof ExportToCsv\n */\n private _parseData(jsonData: any): any[] {\n this._data = typeof jsonData != 'object' ? JSON.parse(jsonData) : jsonData;\n\n return this._data;\n }\n /**\n * Convet to Object\n * @param {any} val\n */\n toObject(val: any) {\n if (val === null || val === undefined) {\n throw new TypeError(\n 'Object.assign cannot be called with null or undefined'\n );\n }\n return Object(val);\n }\n /**\n * Assign data to new Object\n * @param {any} target\n * @param {any[]} ...source\n */\n objectAssign(target: any, ...source: any[]) {\n let from: any;\n const to = this.toObject(target);\n let symbols: any;\n let hasOwnProperty = Object.prototype.hasOwnProperty;\n let propIsEnumerable = Object.prototype.propertyIsEnumerable;\n\n for (var s = 1; s < arguments.length; s++) {\n from = Object(arguments[s]);\n\n for (var key in from) {\n if (hasOwnProperty.call(from, key)) {\n to[key] = from[key];\n }\n }\n\n if ((<any>Object).getOwnPropertySymbols) {\n symbols = (<any>Object).getOwnPropertySymbols(from);\n for (let i = 0; i < symbols.length; i++) {\n if (propIsEnumerable.call(from, symbols[i])) {\n to[symbols[i]] = from[symbols[i]];\n }\n }\n }\n }\n return to;\n }\n read(csvContent: string): CsvParsed {\n const lines = csvContent.split('\\n');\n let header: string[];\n let content: string[][];\n if (lines.length > 0) {\n const csv = lines.map((line) => {\n return this.parseLine(line.trim());\n }) as any;\n header = csv[0];\n\n // Si encuentra una linea en blanco ya no sigue leyendo las siguientes líneas\n let breakIndex!: number;\n csv.some((row: string[], index: number) => {\n const isBlankLine = row.every((column: string) => column.trim() === '');\n if (isBlankLine) {\n breakIndex = index;\n return true;\n }\n return false;\n });\n content = csv.slice(1, breakIndex);\n } else {\n header = [];\n content = [];\n }\n return {\n header,\n content\n };\n }\n parseLine(csvLine: string) {\n const values = [];\n const regex = /(?:\"([^\"]*)\"|'([^']*)'|([^,]+))(?:,|\\r?$)/g;\n let match;\n while ((match = regex.exec(csvLine)) !== null) {\n values.push(match[1] || match[2] || match[3]); // Extraer el valor correcto\n }\n return values;\n }\n}\n","import { Injectable } from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class DateService {\n getDate(date: string): Date {\n const dateParts: string[] = date.split('T')[0].split('-');\n return new Date(Number(dateParts[0]), Number(dateParts[1]) - 1, Number(dateParts[2]));\n }\n}\n","import { Injectable } from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class FilesService {\n private callback!: Function;\n private fileInput: HTMLInputElement;\n\n constructor() {\n this.fileInput = document.createElement('input');\n this.fileInput.type = 'file';\n this.fileInput.addEventListener('change', (event: any) => {\n this.loadValue(event.currentTarget.files);\n });\n }\n private loadValue(files: FileList) {\n if (files && files.length > 0) {\n let data: any[] = [];\n for (let i = 0; i < files.length; i++) {\n const file: any = files.item(i);\n const reader = new FileReader();\n reader.readAsDataURL(file);\n reader.onload = () => {\n data.push(Object.assign(file, {\n data: reader.result\n }));\n if (data.length == files.length) {\n this.callback(data.length > 0 ? data : null);\n this.fileInput.value = '';\n }\n };\n }\n }\n }\n public open(callback?: Function, options?: { accept?: string, multiple?: boolean }) {\n this.fileInput.accept = options?.accept ? options.accept : '';\n this.fileInput.multiple = options?.multiple || false;\n this.fileInput.click();\n if (callback) {\n this.callback = callback;\n }\n }\n}\n","import { isPlatformBrowser } from '@angular/common';\nimport { Inject, Injectable, PLATFORM_ID } from '@angular/core';\nimport { Router, NavigationEnd } from '@angular/router';\n\ndeclare var window: any;\n\n@Injectable({\n providedIn: 'root'\n})\nexport class GoogleTagManagerService {\n trackingId!: string;\n\n constructor(\n @Inject(PLATFORM_ID) private platformId: Object,\n public router: Router\n ) { }\n\n public appendTrackingCode(trackingId: string): void {\n try {\n if (isPlatformBrowser(this.platformId) && trackingId) {\n this.trackingId = trackingId;\n const s1: HTMLElement = document.createElement('script');\n s1.innerHTML = `\n (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':\n new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],\n j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=\n '//www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);\n })(window,document,'script','dataLayer','${trackingId}');\n `;\n document.head.appendChild(s1);\n const s2: HTMLElement = document.createElement('noscript');\n const s3: HTMLIFrameElement = document.createElement('iframe');\n s3.width = '0';\n s3.height = '0';\n s3.style.display = 'none';\n s3.style.visibility = 'hidden';\n s3.src = `//www.googletagmanager.com/ns.html?id=${trackingId}`\n s2.appendChild(s3);\n (document.body as HTMLElement).prepend(s2);\n this.initSubscribers();\n }\n } catch (ex) {\n console.error('Error appending google tag manager');\n console.error(ex);\n }\n }\n public addVariable(variable: any) {\n if (isPlatformBrowser(this.platformId) && this.trackingId) {\n window.dataLayer = window.dataLayer || [];\n window.dataLayer.push(variable);\n }\n }\n private initSubscribers() {\n this.router.events.subscribe(event => {\n try {\n if (event instanceof NavigationEnd && this.trackingId) {\n this.addVariable({\n event: 'router.NavigationEnd',\n pageTitle: document.title,\n pagePath: event.urlAfterRedirects\n });\n }\n } catch (e) {\n console.error(e);\n }\n });\n }\n}\n","import { InjectionToken } from \"@angular/core\";\n\nexport interface UtilsOptions {\n graphqlEndpoint: string;\n restApiPath: string;\n}\n\nexport const UTILS_OPTIONS = new InjectionToken<UtilsOptions>('UTILS_OPTIONS');","import { Inject, Injectable } from '@angular/core';\nimport { UTILS_OPTIONS, UtilsOptions } from './models/utils-options';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class UtilsService {\n\n constructor(@Inject(UTILS_OPTIONS) private options: UtilsOptions) {}\n\n get(): UtilsOptions {\n return this.options;\n }\n}\n","import { ApplicationConfig, inject } from '@angular/core';\n\nimport { Apollo, APOLLO_OPTIONS } from 'apollo-angular';\nimport { HttpLink } from 'apollo-angular/http';\nimport { ApolloClientOptions, InMemoryCache } from '@apollo/client/core';\nimport { UtilsService } from './utils.service';\n\nexport function apolloOptionsFactory(): ApolloClientOptions<any> {\n const httpLink = inject(HttpLink);\n const options = inject(UtilsService);\n\n return {\n link: httpLink.create({ uri: options.get().graphqlEndpoint }),\n cache: new InMemoryCache(),\n };\n}\n\nexport const graphqlProvider: ApplicationConfig['providers'] = [\n Apollo,\n {\n provide: APOLLO_OPTIONS,\n useFactory: apolloOptionsFactory,\n },\n];\n","import { Injectable } from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class StringService {\n decodeHTML(text: string): string {\n const span = document.createElement('span');\n return text.replace(/&[#A-Za-z0-9]+;/gi, (entity) => {\n span.innerHTML = entity;\n return span.innerText;\n });\n }\n /**\n * Normaliza un texto para evitar el Case y los acentos\n * @param text texto a normalizar\n * @returns texto normalizado\n */\n normalize(text: string): string {\n if (!text) return '';\n return text\n .toLowerCase()\n .normalize(\"NFD\")\n .replace(/[\\u0300-\\u036f]/g, \"\");\n }\n normalizeName(text: string): string {\n text = text.trim();\n text = text.charAt(0).toUpperCase() + text.slice(1);\n return text;\n }\n calculateReadingTime(text: string) {\n // Caracteres por minuto\n const cpm = 1000;\n\n // Calcular el número de caracteres en el texto\n const numCharacters: number = text.length;\n\n // Calcular el tiempo de lectura en minutos\n const readingTimeMinutes: number = numCharacters / cpm;\n\n // Convertir el tiempo de lectura de minutos a milisegundos\n const readingTimeMilliseconds: number = readingTimeMinutes * 60 * 1000;\n\n return readingTimeMilliseconds;\n }\n}\n","import { Injectable, inject } from '@angular/core';\nimport { Apollo, gql, MutationResult } from 'apollo-angular';\nimport { lastValueFrom, Observable } from 'rxjs';\n\nimport { StringService } from './string.service';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class GraphqlService {\n private apollo = inject(Apollo);\n private stringService = inject(StringService);\n\n\n mutation(operation: 'create' | 'update' | 'delete', type: string, entity: any): Promise<unknown> {\n let mutation: Observable<MutationResult<unknown>>;\n const capitalizedType = this.stringService.normalizeName(type);\n switch (operation) {\n case 'create':\n entity.uuid = entity.id ? entity.id.split('/').pop() : crypto.randomUUID();\n delete entity.createdBy;\n delete entity.updatedBy;\n delete entity.id;\n mutation = this.apollo.mutate({\n mutation: gql`\n mutation Create${capitalizedType}($entity: create${capitalizedType}Input!) {\n create${capitalizedType}(input: $entity) {\n ${type} {\n id\n }\n }\n }\n `,\n variables: {\n entity\n }\n });\n break;\n case 'delete':\n mutation = this.apollo.mutate({\n mutation: gql`\n mutation Delete${capitalizedType}($id: ID!) {\n delete${capitalizedType}(input: {id: $id}) {\n clientMutationId\n }\n }\n `,\n variables: {\n id: entity.id\n }\n });\n break;\n case 'update':\n delete entity.createdBy;\n delete entity.updatedBy;\n mutation = this.apollo.mutate({\n mutation: gql`\n mutation Update${capitalizedType}($entity: update${capitalizedType}Input!) {\n update${capitalizedType}(input: $entity) {\n ${type} {\n id\n }\n }\n }\n `,\n variables: {\n entity\n }\n });\n break;\n }\n return lastValueFrom(mutation);\n }\n parseQuery(query: { [key: string]: any }) {\n if (query !== null) {\n const data: any = {};\n for (const property in query) {\n if (query[property]?.edges) {\n data[property] = this.parseEdges(query[property].edges);\n } else if (query[property]?.node) {\n data[property] = this.parseQuery(query[property].node);\n } else if (Array.isArray(query[property])) {\n // Si es un arreglo simple no lo parsea\n if (typeof query[property][0] === 'object') {\n data[property] = query[property].map((node: any) => {\n return this.parseQuery(node);\n });\n } else {\n data[property] = query[property];\n }\n } else if (typeof query[property] === 'object') {\n data[property] = this.parseQuery(query[property]);\n } else if (property !== '__typename') {\n data[property] = query[property];\n }\n }\n return data;\n } else {\n return query;\n }\n }\n parseEdges(edges: any): any[] {\n return edges.map((entity: any) => {\n return this.parseQuery(entity?.node || entity);\n });\n }\n}\n","import { Injectable } from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ObjectService {\n filterNullProperties(obj: any): any {\n const mappedObj: any = {};\n Object.keys(obj).forEach((key) => {\n if (obj[key] !== null && obj[key] !== undefined && obj[key] !== 'undefined') {\n mappedObj[key] = obj[key];\n }\n });\n return mappedObj;\n }\n deepMerge(target: any, source: any) {\n source = structuredClone(source);\n target = structuredClone(target);\n for (const key of Object.keys(source)) {\n if (source[key] instanceof Object && key in target) {\n Object.assign(source[key], this.deepMerge(target[key], source[key]));\n }\n }\n return { ...target, ...source };\n }\n}\n","import { HttpClient } from '@angular/common/http';\nimport { Injectable, inject } from '@angular/core';\n\nimport { Observable } from 'rxjs';\nimport { UtilsService } from './utils.service';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class RestService {\n private http = inject(HttpClient);\n private options = inject(UtilsService);\n\n public delete(resourcePath: string, id: string): Observable<any> {\n const url = `${this.getApiPath(resourcePath)}${resourcePath}/${id}`;\n return this.http.delete(url);\n }\n public find(resourcePath: string, params?: any, options?: any): Observable<any> {\n const url = `${this.getApiPath(resourcePath)}${resourcePath}`;\n return this.http.get(url, { ...{ params }, ...options });\n }\n public get(resourcePath: string, id?: string, params?: any, options?: any): Observable<any> {\n let url: string;\n if (id) {\n url = `${this.getApiPath(resourcePath)}${resourcePath}/${id}`;\n } else {\n return this.find(`${this.getApiPath(resourcePath)}${resourcePath}`, params, options);\n }\n return this.http.get(url, { ...{ params }, ...options });\n }\n public patch(resourcePath: string, id: string, data: any, options?: any): Observable<any> {\n const url = `${this.getApiPath(resourcePath)}${resourcePath}${id ? '/' : ''}${id || ''}`;\n return this.http.patch(url, data, options);\n }\n public post(resourcePath: string, data: any, options?: any): Observable<any> {\n const url = `${this.getApiPath(resourcePath)}${resourcePath}`;\n return this.http.post<any>(url, data, options);\n }\n public put(resourcePath: string, id: any, data: any): Observable<any> {\n const url = `${this.getApiPath(resourcePath)}${resourcePath}${id ? '/' : ''}${id || ''}`;\n return this.http.put(url, data);\n }\n private getApiPath(resourcePath: string): string {\n return this.isAbsoluteUrl(resourcePath) ? '' : `${this.options.get().restApiPath}/`;\n }\n private isAbsoluteUrl(resourcePath: string): boolean {\n //const expression = /[-a-zA-Z0-9@:%._~#=]{1,256}\\.[a-zA-Z0-9()]{1,6}\\b([-a-zA-Z0-9()@:%_.~#?&//=]*)?/gi;\n const expression = /^(https?:\\/\\/)/i;\n const regex = new RegExp(expression);\n return regex.test(resourcePath);\n }\n}\n","import { isPlatformBrowser } from '@angular/common';\nimport { Inject, Injectable, PLATFORM_ID } from '@angular/core';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class StorageService {\n //TODO: Replace with Map object it is more efficient\n memoryStorage: any;\n\n constructor(@Inject(PLATFORM_ID) private platformId: Object) {}\n\n private getValue(key: string, storage?: 'local' | 'session' | 'memory'): any {\n let value: any;\n if (!storage || typeof storage == 'string') {\n switch (storage) {\n case 'local':\n value = localStorage[key];\n break;\n case 'memory':\n value = this.memoryStorage[key];\n break;\n default:\n value = sessionStorage[key];\n break;\n }\n } else if (typeof storage == 'object') {\n value = storage[key];\n }\n return value;\n }\n public delete(key: string, storage?: 'local' | 'session' | 'memory') {\n if (isPlatformBrowser(this.platformId)) {\n if (!storage || typeof storage == 'string') {\n switch (storage) {\n case 'local':\n delete localStorage[key];\n break;\n case 'memory':\n delete this.memoryStorage[key];\n break;\n default:\n delete sessionStorage[key];\n break;\n }\n } else if (typeof storage == 'object') {\n delete storage[key];\n }\n }\n }\n public get(key: string, storage?: 'local' | 'session' | 'memory'): any {\n let parsedValue: any;\n if (isPlatformBrowser(this.platformId)) {\n try {\n parsedValue = JSON.parse(this.getValue(key, storage));\n } catch (err) {\n parsedValue = this.getValue(key, storage);\n }\n }\n return parsedValue;\n }\n public set(\n key: string,\n value: any,\n storage?: 'local' | 'session' | 'memory'\n ) {\n if (isPlatformBrowser(this.platformId)) {\n const valueString = JSON.stringify(value);\n if (!storage || typeof storage == 'string') {\n switch (storage) {\n case 'local':\n localStorage[key] = valueString;\n break;\n case 'memory':\n this.memoryStorage[key] = valueString;\n break;\n default:\n sessionStorage[key] = valueString;\n break;\n }\n }\n }\n }\n}\n","function lengthValidator(number: string, digits: number): boolean {\n let value = true;\n if (number.trim() === '') { // No puede estar vacio\n value = false;\n } else if (number.trim().length !== digits) { // Cantidad de dígitos\n value = false;\n }\n return value;\n}\nfunction provinceValidator(number: string): boolean {\n let value = true;\n const code = Number(number);\n if ((code < 0 || code > 24) && code !== 30) {\n value = false;\n }\n return value;\n}\nfunction typeValidator(number: string, type: string): boolean {\n let value = true;\n const code = Number(number);\n switch (type) {\n case 'cedula':\n if (code < 0 || code > 6) {\n value = false;\n }\n break;\n case 'ruc_natural':\n if (code < 0 || code > 5) {\n value = false;\n }\n break;\n case 'ruc_privada':\n if (code !== 9) {\n value = false;\n }\n break;\n case 'ruc_publica':\n if (code !== 6) {\n value = false;\n }\n break;\n default:\n value = false;\n break;\n }\n return value;\n}\nfunction module10Validator(number: string, verifierCodeString: string): boolean {\n const coefficients: number[] = [2, 1, 2, 1, 2, 1, 2, 1, 2];\n const verifierCode = Number(verifierCodeString);\n const numberParts: string[] = number.split('');\n let value = true;\n let total = 0;\n let result: number;\n numberParts.forEach((part: string, index: number) => {\n let valuePosition: number = Number(part) * coefficients[index];\n if (valuePosition >= 10) {\n let newValuePosition: string[] = String(valuePosition).split('');\n let sum: string = newValuePosition.reduce((previousValue: string, currentValue: string) => {\n return String(Number(currentValue) + Number(previousValue));\n });\n valuePosition = Number(sum);\n }\n total += valuePosition;\n });\n const residue: number = total % 10;\n if (residue === 0) {\n result = 0;\n } else {\n result = 10 - residue;\n }\n if (result !== verifierCode) {\n value = false;\n }\n return value;\n}\nfunction module11Validator(number: string, verifierCodeString: string, type: string): boolean {\n const verifierCode = Number(verifierCodeString);\n const numberParts: string[] = number.split('');\n let value = true;\n let coefficients: number[];\n let total = 0;\n let result: number;\n switch (type) {\n case 'ruc_privada':\n coefficients = [4, 3, 2, 7, 6, 5, 4, 3, 2];\n break;\n case 'ruc_publica':\n coefficients = [3, 2, 7, 6, 5, 4, 3, 2];\n break;\n default:\n return false;\n break;\n }\n numberParts.forEach((part: string, index: number) => {\n let valuePosition: number = Number(part) * coefficients[index];\n total += valuePosition;\n });\n const residue: number = total % 11;\n if (residue === 0) {\n result = 0;\n } else {\n result = 11 - residue;\n }\n if (result !== verifierCode) {\n value = false;\n }\n return value;\n}\nfunction storeCodeValidator(number: string): boolean {\n let value = true;\n const code = Number(number);\n if (code < 1) {\n value = false;\n }\n return value;\n}\nexport function getIdentificationType(number: string): string | null {\n let type: string | null = null;\n if (lengthValidator(number, 10) &&\n provinceValidator(number.substr(0, 2)) &&\n //typeValidator(number.substr(2, 1), 'cedula') &&\n module10Validator(number.substr(0, 9), number.substr(9, 1))) {\n type = 'cedula';\n } else if (lengthValidator(number, 13) &&\n provinceValidator(number.substr(0, 2)) &&\n //typeValidator(number.substr(2, 1), 'ruc_natural') &&\n storeCodeValidator(number.substr(10, 3)) &&\n module10Validator(number.substr(0, 9), number.substr(9, 1))\n ) {\n type = 'ruc_natural';\n } else if (lengthValidator(number, 13) &&\n provinceValidator(number.substr(0, 2)) &&\n typeValidator(number.substr(2, 1), 'ruc_privada') &&\n storeCodeValidator(number.substr(10, 3)) //&&\n //module11Validator(number.substr(0, 9), number.substr(9, 1), 'ruc_privada')\n ) {\n type = 'ruc_privada';\n } else if (lengthValidator(number, 13) &&\n provinceValidator(number.substr(0, 2)) &&\n typeValidator(number.substr(2, 1), 'ruc_publica') &&\n storeCodeValidator(number.substr(9, 4)) //&&\n //module11Validator(number.substr(0, 8), number.substr(8, 1), 'ruc_publica')\n ) {\n type = 'ruc_publica';\n }\n return type;\n}","import { AbstractControl, ValidationErrors, ValidatorFn } from '@angular/forms';\nimport { getIdentificationType } from './identification-type';\n\nexport function identificationValidator(type: 'cedula' | 'ruc_natural' | 'ruc_privada' | 'ruc_publica' | 'ruc' | 'id'): ValidatorFn {\n return (control: AbstractControl): ValidationErrors | null => {\n const number: string = String(control.value);\n if (number && number.trim() !== '') {\n const parsedType = getIdentificationType(number);\n switch (type) {\n case 'cedula':\n case 'ruc_natural':\n case 'ruc_privada':\n case 'ruc_publica':\n return !parsedType || parsedType !== type ? { invalidIdentification: true } : null;\n break;\n case 'ruc':\n return !parsedType || ['ruc_natural', 'ruc_privada', 'ruc_publica'].indexOf(parsedType) === -1 ? { invalidIdentification: true } : null;\n break;\n case 'id':\n return !parsedType ? { invalidIdentification: true } : null;\n break;\n default:\n return null;\n break;\n }\n } else {\n return null;\n }\n };\n}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import * as i0 from "@angular/core";
|
|
2
|
+
export interface CsvParsed {
|
|
3
|
+
header: string[];
|
|
4
|
+
content: string[][];
|
|
5
|
+
}
|
|
6
|
+
export interface Options {
|
|
7
|
+
filename: string;
|
|
8
|
+
fieldSeparator: string;
|
|
9
|
+
quoteStrings: string;
|
|
10
|
+
decimalSeparator: string;
|
|
11
|
+
showLabels: boolean;
|
|
12
|
+
showTitle: boolean;
|
|
13
|
+
title: string;
|
|
14
|
+
useTextFile: boolean;
|
|
15
|
+
useBom: boolean;
|
|
16
|
+
headers: string[];
|
|
17
|
+
useKeysAsHeaders: boolean;
|
|
18
|
+
}
|
|
19
|
+
export declare class CsvConfigConsts {
|
|
20
|
+
static EOL: string;
|
|
21
|
+
static BOM: string;
|
|
22
|
+
static DEFAULT_FIELD_SEPARATOR: string;
|
|
23
|
+
static DEFAULT_DECIMAL_SEPARATOR: string;
|
|
24
|
+
static DEFAULT_QUOTE: string;
|
|
25
|
+
static DEFAULT_SHOW_TITLE: boolean;
|
|
26
|
+
static DEFAULT_TITLE: string;
|
|
27
|
+
static DEFAULT_FILENAME: string;
|
|
28
|
+
static DEFAULT_SHOW_LABELS: boolean;
|
|
29
|
+
static DEFAULT_USE_TEXT_FILE: boolean;
|
|
30
|
+
static DEFAULT_USE_BOM: boolean;
|
|
31
|
+
static DEFAULT_HEADER: string[];
|
|
32
|
+
static DEFAULT_KEYS_AS_HEADERS: boolean;
|
|
33
|
+
}
|
|
34
|
+
export declare const ConfigDefaults: Options;
|
|
35
|
+
export declare class CsvService {
|
|
36
|
+
private _data;
|
|
37
|
+
private _options;
|
|
38
|
+
private _csv;
|
|
39
|
+
get options(): Options;
|
|
40
|
+
set options(options: Partial<Options>);
|
|
41
|
+
constructor();
|
|
42
|
+
/**
|
|
43
|
+
* Generate and Download Csv
|
|
44
|
+
*/
|
|
45
|
+
generate(jsonData: any, shouldReturnCsv?: boolean): void | any;
|
|
46
|
+
/**
|
|
47
|
+
* Create Headers
|
|
48
|
+
*/
|
|
49
|
+
private _getHeaders;
|
|
50
|
+
/**
|
|
51
|
+
* Create Body
|
|
52
|
+
*/
|
|
53
|
+
private _getBody;
|
|
54
|
+
/**
|
|
55
|
+
* Format Data
|
|
56
|
+
* @param {any} data
|
|
57
|
+
*/
|
|
58
|
+
private _formatData;
|
|
59
|
+
/**
|
|
60
|
+
* Check if is Float
|
|
61
|
+
* @param {any} input
|
|
62
|
+
*/
|
|
63
|
+
private _isFloat;
|
|
64
|
+
/**
|
|
65
|
+
* Parse the collection given to it
|
|
66
|
+
*
|
|
67
|
+
* @private
|
|
68
|
+
* @param {*} jsonData
|
|
69
|
+
* @returns {any[]}
|
|
70
|
+
* @memberof ExportToCsv
|
|
71
|
+
*/
|
|
72
|
+
private _parseData;
|
|
73
|
+
/**
|
|
74
|
+
* Convet to Object
|
|
75
|
+
* @param {any} val
|
|
76
|
+
*/
|
|
77
|
+
toObject(val: any): any;
|
|
78
|
+
/**
|
|
79
|
+
* Assign data to new Object
|
|
80
|
+
* @param {any} target
|
|
81
|
+
* @param {any[]} ...source
|
|
82
|
+
*/
|
|
83
|
+
objectAssign(target: any, ...source: any[]): any;
|
|
84
|
+
read(csvContent: string): CsvParsed;
|
|
85
|
+
parseLine(csvLine: string): string[];
|
|
86
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<CsvService, never>;
|
|
87
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<CsvService>;
|
|
88
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import * as i0 from "@angular/core";
|
|
2
|
+
export declare class GraphqlService {
|
|
3
|
+
private apollo;
|
|
4
|
+
private stringService;
|
|
5
|
+
mutation(operation: 'create' | 'update' | 'delete', type: string, entity: any): Promise<unknown>;
|
|
6
|
+
parseQuery(query: {
|
|
7
|
+
[key: string]: any;
|
|
8
|
+
}): any;
|
|
9
|
+
parseEdges(edges: any): any[];
|
|
10
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<GraphqlService, never>;
|
|
11
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<GraphqlService>;
|
|
12
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import * as i0 from "@angular/core";
|
|
2
|
+
export declare class ObjectService {
|
|
3
|
+
filterNullProperties(obj: any): any;
|
|
4
|
+
deepMerge(target: any, source: any): any;
|
|
5
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ObjectService, never>;
|
|
6
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<ObjectService>;
|
|
7
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { Observable } from 'rxjs';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export declare class RestService {
|
|
4
|
+
private http;
|
|
5
|
+
private options;
|
|
6
|
+
delete(resourcePath: string, id: string): Observable<any>;
|
|
7
|
+
find(resourcePath: string, params?: any, options?: any): Observable<any>;
|
|
8
|
+
get(resourcePath: string, id?: string, params?: any, options?: any): Observable<any>;
|
|
9
|
+
patch(resourcePath: string, id: string, data: any, options?: any): Observable<any>;
|
|
10
|
+
post(resourcePath: string, data: any, options?: any): Observable<any>;
|
|
11
|
+
put(resourcePath: string, id: any, data: any): Observable<any>;
|
|
12
|
+
private getApiPath;
|
|
13
|
+
private isAbsoluteUrl;
|
|
14
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<RestService, never>;
|
|
15
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<RestService>;
|
|
16
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import * as i0 from "@angular/core";
|
|
2
|
+
export declare class StringService {
|
|
3
|
+
decodeHTML(text: string): string;
|
|
4
|
+
/**
|
|
5
|
+
* Normaliza un texto para evitar el Case y los acentos
|
|
6
|
+
* @param text texto a normalizar
|
|
7
|
+
* @returns texto normalizado
|
|
8
|
+
*/
|
|
9
|
+
normalize(text: string): string;
|
|
10
|
+
normalizeName(text: string): string;
|
|
11
|
+
calculateReadingTime(text: string): number;
|
|
12
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<StringService, never>;
|
|
13
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<StringService>;
|
|
14
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { UtilsOptions } from './models/utils-options';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export declare class UtilsService {
|
|
4
|
+
private options;
|
|
5
|
+
constructor(options: UtilsOptions);
|
|
6
|
+
get(): UtilsOptions;
|
|
7
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<UtilsService, never>;
|
|
8
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<UtilsService>;
|
|
9
|
+
}
|
package/package.json
CHANGED
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@factor_ec/utils",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "5.0.1",
|
|
4
4
|
"license": "CC-BY-NC-ND-4.0",
|
|
5
5
|
"author": "Factor",
|
|
6
6
|
"peerDependencies": {
|
|
7
|
-
"@angular/common": "
|
|
8
|
-
"@angular/core": "
|
|
7
|
+
"@angular/common": "^19.0.0",
|
|
8
|
+
"@angular/core": "^19.0.0",
|
|
9
|
+
"@apollo/client": "^3.12.8",
|
|
10
|
+
"apollo-angular": "^8.0.0"
|
|
9
11
|
},
|
|
10
12
|
"dependencies": {
|
|
11
13
|
"tslib": "^2.3.0"
|
|
@@ -19,8 +21,6 @@
|
|
|
19
21
|
},
|
|
20
22
|
".": {
|
|
21
23
|
"types": "./index.d.ts",
|
|
22
|
-
"esm2022": "./esm2022/factor_ec-utils.mjs",
|
|
23
|
-
"esm": "./esm2022/factor_ec-utils.mjs",
|
|
24
24
|
"default": "./fesm2022/factor_ec-utils.mjs"
|
|
25
25
|
}
|
|
26
26
|
}
|
package/public-api.d.ts
CHANGED
|
@@ -1,6 +1,23 @@
|
|
|
1
|
+
export * from './lib/array.service';
|
|
1
2
|
export * from './lib/color.service';
|
|
3
|
+
export * from './lib/csv.service';
|
|
4
|
+
export * from './lib/date.service';
|
|
2
5
|
export * from './lib/files.service';
|
|
3
6
|
export * from './lib/google-tag-manager.service';
|
|
7
|
+
export * from './lib/graphql.provider';
|
|
8
|
+
export * from './lib/graphql.service';
|
|
9
|
+
export * from './lib/models/auth-token-payload';
|
|
10
|
+
export * from './lib/models/auth-token';
|
|
11
|
+
export * from './lib/models/currency';
|
|
12
|
+
export * from './lib/models/error';
|
|
13
|
+
export * from './lib/models/language';
|
|
14
|
+
export * from './lib/models/login';
|
|
15
|
+
export * from './lib/models/operation';
|
|
16
|
+
export * from './lib/models/option';
|
|
17
|
+
export * from './lib/models/user';
|
|
18
|
+
export * from './lib/object.service';
|
|
19
|
+
export * from './lib/rest.service';
|
|
4
20
|
export * from './lib/storage.service';
|
|
5
|
-
export * from './lib/
|
|
21
|
+
export * from './lib/string.service';
|
|
6
22
|
export * from './lib/validators/ec/identification-type';
|
|
23
|
+
export * from './lib/validators/ec/identification-validator';
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Generated bundle index. Do not edit.
|
|
3
|
-
*/
|
|
4
|
-
export * from './public-api';
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFjdG9yX2VjLXV0aWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcHJvamVjdHMvdXRpbHMvc3JjL2ZhY3Rvcl9lYy11dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuIl19
|