@fitcoders/shared 1.0.1 → 1.0.2

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.
@@ -0,0 +1,27 @@
1
+ import { Inject, Injectable } from '@angular/core';
2
+ import { BehaviorSubject, fromEvent, map } from 'rxjs';
3
+ import * as i0 from "@angular/core";
4
+ export class FitAdapteService {
5
+ constructor(window) {
6
+ this.window = window;
7
+ this.sizeChanged = new BehaviorSubject({
8
+ width: this.window.innerWidth,
9
+ height: this.window.innerHeight
10
+ });
11
+ fromEvent(window, 'resize').pipe(map(event => ({
12
+ width: event.currentTarget['innerWidth'],
13
+ height: event.currentTarget['innerHeight']
14
+ }))).subscribe((windowSize) => {
15
+ this.sizeChanged.next(windowSize);
16
+ });
17
+ }
18
+ }
19
+ FitAdapteService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: FitAdapteService, deps: [{ token: 'windowObject' }], target: i0.ɵɵFactoryTarget.Injectable });
20
+ FitAdapteService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: FitAdapteService });
21
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: FitAdapteService, decorators: [{
22
+ type: Injectable
23
+ }], ctorParameters: function () { return [{ type: Window, decorators: [{
24
+ type: Inject,
25
+ args: ['windowObject']
26
+ }] }]; } });
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZml0LWFkYXB0ZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2hhcmVkL3NyYy9saWIvc2VydmljZS9maXQtYWRhcHRlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLE1BQU0sRUFBRSxVQUFVLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFDLGVBQWUsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFhLE1BQU0sTUFBTSxDQUFDOztBQVFqRSxNQUFNLE9BQU8sZ0JBQWdCO0lBRTNCLFlBQTRDLE1BQWM7UUFBZCxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBV2pELGdCQUFXLEdBQUcsSUFBSSxlQUFlLENBQWE7WUFDckQsS0FBSyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVTtZQUM3QixNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXO1NBQ2hDLENBQUMsQ0FBQztRQWJELFNBQVMsQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLENBQUMsSUFBSSxDQUM5QixHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQ1osS0FBSyxFQUFFLEtBQUssQ0FBQyxhQUFhLENBQUMsWUFBWSxDQUFDO1lBQ3hDLE1BQU0sRUFBRSxLQUFLLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQztTQUMzQyxDQUFlLENBQUMsQ0FDbEIsQ0FBQyxTQUFTLENBQUMsQ0FBQyxVQUFVLEVBQUUsRUFBRTtZQUN6QixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNwQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7OzZHQVhVLGdCQUFnQixrQkFFUCxjQUFjO2lIQUZ2QixnQkFBZ0I7MkZBQWhCLGdCQUFnQjtrQkFENUIsVUFBVTswREFHMkMsTUFBTTswQkFBN0MsTUFBTTsyQkFBQyxjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJbmplY3QsIEluamVjdGFibGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge0JlaGF2aW9yU3ViamVjdCwgZnJvbUV2ZW50LCBtYXAsIE9ic2VydmFibGV9IGZyb20gJ3J4anMnO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBXaW5kb3dTaXplIHtcclxuICBoZWlnaHQ6IG51bWJlcjtcclxuICB3aWR0aDogbnVtYmVyO1xyXG59XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBGaXRBZGFwdGVTZXJ2aWNlIHtcclxuXHJcbiAgY29uc3RydWN0b3IoQEluamVjdCgnd2luZG93T2JqZWN0JykgcHJpdmF0ZSB3aW5kb3c6IFdpbmRvdykge1xyXG4gICAgZnJvbUV2ZW50KHdpbmRvdywgJ3Jlc2l6ZScpLnBpcGUoXHJcbiAgICAgIG1hcChldmVudCA9PiAoe1xyXG4gICAgICAgIHdpZHRoOiBldmVudC5jdXJyZW50VGFyZ2V0Wydpbm5lcldpZHRoJ10sXHJcbiAgICAgICAgaGVpZ2h0OiBldmVudC5jdXJyZW50VGFyZ2V0Wydpbm5lckhlaWdodCddXHJcbiAgICAgIH0pIGFzIFdpbmRvd1NpemUpXHJcbiAgICApLnN1YnNjcmliZSgod2luZG93U2l6ZSkgPT4ge1xyXG4gICAgICB0aGlzLnNpemVDaGFuZ2VkLm5leHQod2luZG93U2l6ZSk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHJlYWRvbmx5IHNpemVDaGFuZ2VkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxXaW5kb3dTaXplPih7XHJcbiAgICB3aWR0aDogdGhpcy53aW5kb3cuaW5uZXJXaWR0aCxcclxuICAgIGhlaWdodDogdGhpcy53aW5kb3cuaW5uZXJIZWlnaHRcclxuICB9KTtcclxufVxyXG4iXX0=
@@ -0,0 +1,115 @@
1
+ import { Inject, Injectable, PLATFORM_ID } from '@angular/core';
2
+ import { DOCUMENT, isPlatformBrowser } from '@angular/common';
3
+ import * as i0 from "@angular/core";
4
+ export class FitCookiesService {
5
+ constructor(document, platformId) {
6
+ this.document = document;
7
+ this.platformId = platformId;
8
+ this.documentIsAccessible = isPlatformBrowser(this.platformId);
9
+ }
10
+ check(name) {
11
+ if (!this.documentIsAccessible) {
12
+ return false;
13
+ }
14
+ name = encodeURIComponent(name);
15
+ const regExp = this.getCookieRegExp(name);
16
+ const exists = regExp.test(this.document.cookie);
17
+ return exists;
18
+ }
19
+ get(name) {
20
+ if (this.documentIsAccessible && this.check(name)) {
21
+ name = encodeURIComponent(name);
22
+ const regExp = this.getCookieRegExp(name);
23
+ const result = regExp.exec(this.document.cookie);
24
+ return this.safeDecodeURIComponent(result[1]);
25
+ }
26
+ else {
27
+ return '';
28
+ }
29
+ }
30
+ getAll() {
31
+ if (!this.documentIsAccessible) {
32
+ return {};
33
+ }
34
+ const cookies = {};
35
+ const document = this.document;
36
+ if (document.cookie && document.cookie !== '') {
37
+ document.cookie.split(';').forEach((currentCookie) => {
38
+ const [cookieName, cookieValue] = currentCookie.split('=');
39
+ cookies[this.safeDecodeURIComponent(cookieName.replace(/^ /, ''))] = this.safeDecodeURIComponent(cookieValue);
40
+ });
41
+ }
42
+ return cookies;
43
+ }
44
+ set(name, value, expires, path, domain, secure, sameSite = 'Lax') {
45
+ if (!this.documentIsAccessible) {
46
+ return;
47
+ }
48
+ let cookieString = encodeURIComponent(name) + '=' + encodeURIComponent(value) + ';';
49
+ if (expires) {
50
+ if (typeof expires === 'number') {
51
+ const dateExpires = new Date(new Date().getTime() + expires * 1000 * 60 * 60 * 24);
52
+ cookieString += 'expires=' + dateExpires.toUTCString() + ';';
53
+ }
54
+ else {
55
+ cookieString += 'expires=' + expires.toUTCString() + ';';
56
+ }
57
+ }
58
+ if (path) {
59
+ cookieString += 'path=' + path + ';';
60
+ }
61
+ if (domain) {
62
+ cookieString += 'domain=' + domain + ';';
63
+ }
64
+ if (secure === false && sameSite === 'None') {
65
+ secure = true;
66
+ }
67
+ if (secure) {
68
+ cookieString += 'secure;';
69
+ }
70
+ cookieString += 'sameSite=' + sameSite + ';';
71
+ this.document.cookie = cookieString;
72
+ }
73
+ delete(name, path, domain, secure, sameSite = 'Lax') {
74
+ if (!this.documentIsAccessible) {
75
+ return;
76
+ }
77
+ this.set(name, '', new Date('Thu, 01 Jan 1970 00:00:01 GMT'), path, domain, secure, sameSite);
78
+ }
79
+ deleteAll(path, domain, secure, sameSite = 'Lax') {
80
+ if (!this.documentIsAccessible) {
81
+ return;
82
+ }
83
+ const cookies = this.getAll();
84
+ for (const cookieName in cookies) {
85
+ if (cookies.hasOwnProperty(cookieName)) {
86
+ this.delete(cookieName, path, domain, secure, sameSite);
87
+ }
88
+ }
89
+ }
90
+ getCookieRegExp(name) {
91
+ const escapedName = name.replace(/([\[\]\{\}\(\)\|\=\;\+\?\,\.\*\^\$])/gi, '\\$1');
92
+ return new RegExp('(?:^' + escapedName + '|;\\s*' + escapedName + ')=(.*?)(?:;|$)', 'g');
93
+ }
94
+ safeDecodeURIComponent(encodedURIComponent) {
95
+ try {
96
+ return decodeURIComponent(encodedURIComponent);
97
+ }
98
+ catch {
99
+ return encodedURIComponent;
100
+ }
101
+ }
102
+ }
103
+ FitCookiesService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: FitCookiesService, deps: [{ token: DOCUMENT }, { token: PLATFORM_ID }], target: i0.ɵɵFactoryTarget.Injectable });
104
+ FitCookiesService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: FitCookiesService, providedIn: 'root' });
105
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: FitCookiesService, decorators: [{
106
+ type: Injectable,
107
+ args: [{ providedIn: 'root' }]
108
+ }], ctorParameters: function () { return [{ type: undefined, decorators: [{
109
+ type: Inject,
110
+ args: [DOCUMENT]
111
+ }] }, { type: i0.InjectionToken, decorators: [{
112
+ type: Inject,
113
+ args: [PLATFORM_ID]
114
+ }] }]; } });
115
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZml0LWNvb2tpZXMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NoYXJlZC9zcmMvbGliL3NlcnZpY2UvZml0LWNvb2tpZXMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsTUFBTSxFQUFFLFVBQVUsRUFBa0IsV0FBVyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzlFLE9BQU8sRUFBQyxRQUFRLEVBQUUsaUJBQWlCLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQzs7QUFHNUQsTUFBTSxPQUFPLGlCQUFpQjtJQUc1QixZQUFzQyxRQUFhLEVBQ1YsVUFBa0M7UUFEckMsYUFBUSxHQUFSLFFBQVEsQ0FBSztRQUNWLGVBQVUsR0FBVixVQUFVLENBQXdCO1FBQ3pFLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDakUsQ0FBQztJQUVELEtBQUssQ0FBQyxJQUFZO1FBQ2hCLElBQUksQ0FBQyxJQUFJLENBQUMsb0JBQW9CLEVBQUU7WUFDOUIsT0FBTyxLQUFLLENBQUM7U0FDZDtRQUVELElBQUksR0FBRyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUVoQyxNQUFNLE1BQU0sR0FBVyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2xELE1BQU0sTUFBTSxHQUFZLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUUxRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRUQsR0FBRyxDQUFDLElBQVk7UUFDZCxJQUFJLElBQUksQ0FBQyxvQkFBb0IsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ2pELElBQUksR0FBRyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUVoQyxNQUFNLE1BQU0s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LGlCQUFpQjtrQkFEN0IsVUFBVTttQkFBQyxFQUFDLFVBQVUsRUFBRSxNQUFNLEVBQUM7OzBCQUlqQixNQUFNOzJCQUFDLFFBQVE7OzBCQUNmLE1BQU07MkJBQUMsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0LCBJbmplY3RhYmxlLCBJbmplY3Rpb25Ub2tlbiwgUExBVEZPUk1fSUR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge0RPQ1VNRU5ULCBpc1BsYXRmb3JtQnJvd3Nlcn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuXHJcbkBJbmplY3RhYmxlKHtwcm92aWRlZEluOiAncm9vdCd9KVxyXG5leHBvcnQgY2xhc3MgRml0Q29va2llc1NlcnZpY2Uge1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgZG9jdW1lbnRJc0FjY2Vzc2libGU6IGJvb2xlYW47XHJcblxyXG4gIGNvbnN0cnVjdG9yKEBJbmplY3QoRE9DVU1FTlQpIHByaXZhdGUgZG9jdW1lbnQ6IGFueSxcclxuICAgICAgICAgICAgICBASW5qZWN0KFBMQVRGT1JNX0lEKSBwcml2YXRlIHBsYXRmb3JtSWQ6IEluamVjdGlvblRva2VuPG9iamVjdD4pIHtcclxuICAgIHRoaXMuZG9jdW1lbnRJc0FjY2Vzc2libGUgPSBpc1BsYXRmb3JtQnJvd3Nlcih0aGlzLnBsYXRmb3JtSWQpO1xyXG4gIH1cclxuXHJcbiAgY2hlY2sobmFtZTogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICBpZiAoIXRoaXMuZG9jdW1lbnRJc0FjY2Vzc2libGUpIHtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG5cclxuICAgIG5hbWUgPSBlbmNvZGVVUklDb21wb25lbnQobmFtZSk7XHJcblxyXG4gICAgY29uc3QgcmVnRXhwOiBSZWdFeHAgPSB0aGlzLmdldENvb2tpZVJlZ0V4cChuYW1lKTtcclxuICAgIGNvbnN0IGV4aXN0czogYm9vbGVhbiA9IHJlZ0V4cC50ZXN0KHRoaXMuZG9jdW1lbnQuY29va2llKTtcclxuXHJcbiAgICByZXR1cm4gZXhpc3RzO1xyXG4gIH1cclxuXHJcbiAgZ2V0KG5hbWU6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICBpZiAodGhpcy5kb2N1bWVudElzQWNjZXNzaWJsZSAmJiB0aGlzLmNoZWNrKG5hbWUpKSB7XHJcbiAgICAgIG5hbWUgPSBlbmNvZGVVUklDb21wb25lbnQobmFtZSk7XHJcblxyXG4gICAgICBjb25zdCByZWdFeHA6IFJlZ0V4cCA9IHRoaXMuZ2V0Q29va2llUmVnRXhwKG5hbWUpO1xyXG4gICAgICBjb25zdCByZXN1bHQ6IFJlZ0V4cEV4ZWNBcnJheSA9IHJlZ0V4cC5leGVjKHRoaXMuZG9jdW1lbnQuY29va2llKTtcclxuXHJcbiAgICAgIHJldHVybiB0aGlzLnNhZmVEZWNvZGVVUklDb21wb25lbnQocmVzdWx0WzFdKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiAnJztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldEFsbCgpOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9IHtcclxuICAgIGlmICghdGhpcy5kb2N1bWVudElzQWNjZXNzaWJsZSkge1xyXG4gICAgICByZXR1cm4ge307XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgY29va2llczogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfSA9IHt9O1xyXG4gICAgY29uc3QgZG9jdW1lbnQ6IGFueSA9IHRoaXMuZG9jdW1lbnQ7XHJcblxyXG4gICAgaWYgKGRvY3VtZW50LmNvb2tpZSAmJiBkb2N1bWVudC5jb29raWUgIT09ICcnKSB7XHJcbiAgICAgIGRvY3VtZW50LmNvb2tpZS5zcGxpdCgnOycpLmZvckVhY2goKGN1cnJlbnRDb29raWUpID0+IHtcclxuICAgICAgICBjb25zdCBbY29va2llTmFtZSwgY29va2llVmFsdWVdID0gY3VycmVudENvb2tpZS5zcGxpdCgnPScpO1xyXG4gICAgICAgIGNvb2tpZXNbdGhpcy5zYWZlRGVjb2RlVVJJQ29tcG9uZW50KGNvb2tpZU5hbWUucmVwbGFjZSgvXiAvLCAnJykpXSA9IHRoaXMuc2FmZURlY29kZVVSSUNvbXBvbmVudChjb29raWVWYWx1ZSk7XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBjb29raWVzO1xyXG4gIH1cclxuXHJcbiAgc2V0KG5hbWU6IHN0cmluZywgdmFsdWU6IHN0cmluZywgZXhwaXJlcz86IG51bWJlciB8IERhdGUsIHBhdGg/OiBzdHJpbmcsIGRvbWFpbj86IHN0cmluZywgc2VjdXJlPzogYm9vbGVhbiwgc2FtZVNpdGU6ICdMYXgnIHwgJ05vbmUnIHwgJ1N0cmljdCcgPSAnTGF4Jyk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLmRvY3VtZW50SXNBY2Nlc3NpYmxlKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBsZXQgY29va2llU3RyaW5nOiBzdHJpbmcgPSBlbmNvZGVVUklDb21wb25lbnQobmFtZSkgKyAnPScgKyBlbmNvZGVVUklDb21wb25lbnQodmFsdWUpICsgJzsnO1xyXG5cclxuICAgIGlmIChleHBpcmVzKSB7XHJcbiAgICAgIGlmICh0eXBlb2YgZXhwaXJlcyA9PT0gJ251bWJlcicpIHtcclxuICAgICAgICBjb25zdCBkYXRlRXhwaXJlczogRGF0ZSA9IG5ldyBEYXRlKG5ldyBEYXRlKCkuZ2V0VGltZSgpICsgZXhwaXJlcyAqIDEwMDAgKiA2MCAqIDYwICogMjQpO1xyXG4gICAgICAgIGNvb2tpZVN0cmluZyArPSAnZXhwaXJlcz0nICsgZGF0ZUV4cGlyZXMudG9VVENTdHJpbmcoKSArICc7JztcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBjb29raWVTdHJpbmcgKz0gJ2V4cGlyZXM9JyArIGV4cGlyZXMudG9VVENTdHJpbmcoKSArICc7JztcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGlmIChwYXRoKSB7XHJcbiAgICAgIGNvb2tpZVN0cmluZyArPSAncGF0aD0nICsgcGF0aCArICc7JztcclxuICAgIH1cclxuXHJcbiAgICBpZiAoZG9tYWluKSB7XHJcbiAgICAgIGNvb2tpZVN0cmluZyArPSAnZG9tYWluPScgKyBkb21haW4gKyAnOyc7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHNlY3VyZSA9PT0gZmFsc2UgJiYgc2FtZVNpdGUgPT09ICdOb25lJykge1xyXG4gICAgICBzZWN1cmUgPSB0cnVlO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChzZWN1cmUpIHtcclxuICAgICAgY29va2llU3RyaW5nICs9ICdzZWN1cmU7JztcclxuICAgIH1cclxuXHJcbiAgICBjb29raWVTdHJpbmcgKz0gJ3NhbWVTaXRlPScgKyBzYW1lU2l0ZSArICc7JztcclxuXHJcbiAgICB0aGlzLmRvY3VtZW50LmNvb2tpZSA9IGNvb2tpZVN0cmluZztcclxuICB9XHJcblxyXG4gIGRlbGV0ZShuYW1lOiBzdHJpbmcsIHBhdGg/OiBzdHJpbmcsIGRvbWFpbj86IHN0cmluZywgc2VjdXJlPzogYm9vbGVhbiwgc2FtZVNpdGU6ICdMYXgnIHwgJ05vbmUnIHwgJ1N0cmljdCcgPSAnTGF4Jyk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLmRvY3VtZW50SXNBY2Nlc3NpYmxlKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnNldChuYW1lLCAnJywgbmV3IERhdGUoJ1RodSwgMDEgSmFuIDE5NzAgMDA6MDA6MDEgR01UJyksIHBhdGgsIGRvbWFpbiwgc2VjdXJlLCBzYW1lU2l0ZSk7XHJcbiAgfVxyXG5cclxuICBkZWxldGVBbGwocGF0aD86IHN0cmluZywgZG9tYWluPzogc3RyaW5nLCBzZWN1cmU/OiBib29sZWFuLCBzYW1lU2l0ZTogJ0xheCcgfCAnTm9uZScgfCAnU3RyaWN0JyA9ICdMYXgnKTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMuZG9jdW1lbnRJc0FjY2Vzc2libGUpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IGNvb2tpZXM6IGFueSA9IHRoaXMuZ2V0QWxsKCk7XHJcblxyXG4gICAgZm9yIChjb25zdCBjb29raWVOYW1lIGluIGNvb2tpZXMpIHtcclxuICAgICAgaWYgKGNvb2tpZXMuaGFzT3duUHJvcGVydHkoY29va2llTmFtZSkpIHtcclxuICAgICAgICB0aGlzLmRlbGV0ZShjb29raWVOYW1lLCBwYXRoLCBkb21haW4sIHNlY3VyZSwgc2FtZVNpdGUpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldENvb2tpZVJlZ0V4cChuYW1lOiBzdHJpbmcpOiBSZWdFeHAge1xyXG4gICAgY29uc3QgZXNjYXBlZE5hbWU6IHN0cmluZyA9IG5hbWUucmVwbGFjZSgvKFtcXFtcXF1cXHtcXH1cXChcXClcXHxcXD1cXDtcXCtcXD9cXCxcXC5cXCpcXF5cXCRdKS9naSwgJ1xcXFwkMScpO1xyXG5cclxuICAgIHJldHVybiBuZXcgUmVnRXhwKCcoPzpeJyArIGVzY2FwZWROYW1lICsgJ3w7XFxcXHMqJyArIGVzY2FwZWROYW1lICsgJyk9KC4qPykoPzo7fCQpJywgJ2cnKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc2FmZURlY29kZVVSSUNvbXBvbmVudChlbmNvZGVkVVJJQ29tcG9uZW50OiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgdHJ5IHtcclxuICAgICAgcmV0dXJuIGRlY29kZVVSSUNvbXBvbmVudChlbmNvZGVkVVJJQ29tcG9uZW50KTtcclxuICAgIH0gY2F0Y2gge1xyXG4gICAgICByZXR1cm4gZW5jb2RlZFVSSUNvbXBvbmVudDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19
@@ -0,0 +1,4 @@
1
+ // service
2
+ export * from './fit-adapte.service';
3
+ export * from './fit-cookies.service';
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS1hcGkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWQvc3JjL2xpYi9zZXJ2aWNlL3NlcnZpY2UtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLFVBQVU7QUFDVixjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsdUJBQXVCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBzZXJ2aWNlXG5leHBvcnQgKiBmcm9tICcuL2ZpdC1hZGFwdGUuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2ZpdC1jb29raWVzLnNlcnZpY2UnO1xuIl19
@@ -2,4 +2,5 @@ export * from './lib/constant/shared.const';
2
2
  export * from './lib/helper/helper-api';
3
3
  export * from './lib/directive/directive-api';
4
4
  export * from './lib/pipe/pipe-api';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL3NoYXJlZC9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDZCQUE2QixDQUFDO0FBRTVDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLHFCQUFxQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9saWIvY29uc3RhbnQvc2hhcmVkLmNvbnN0JztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvaGVscGVyL2hlbHBlci1hcGknO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlyZWN0aXZlL2RpcmVjdGl2ZS1hcGknO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvcGlwZS9waXBlLWFwaSc7XG4iXX0=
5
+ export * from './lib/service/service-api';
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL3NoYXJlZC9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDZCQUE2QixDQUFDO0FBRTVDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsMkJBQTJCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2xpYi9jb25zdGFudC9zaGFyZWQuY29uc3QnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9oZWxwZXIvaGVscGVyLWFwaSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXJlY3RpdmUvZGlyZWN0aXZlLWFwaSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9waXBlL3BpcGUtYXBpJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2Uvc2VydmljZS1hcGknO1xuIl19
@@ -1,9 +1,10 @@
1
1
  import { FormControl, FormGroup } from '@angular/forms';
2
2
  import * as moment from 'moment';
3
3
  import * as i0 from '@angular/core';
4
- import { Directive, Input, HostListener, EventEmitter, Output, NgModule, Pipe } from '@angular/core';
4
+ import { Directive, Input, HostListener, EventEmitter, Output, NgModule, Pipe, Injectable, Inject, PLATFORM_ID } from '@angular/core';
5
5
  import * as i1 from '@angular/common';
6
- import { CommonModule, DecimalPipe } from '@angular/common';
6
+ import { CommonModule, DecimalPipe, isPlatformBrowser, DOCUMENT } from '@angular/common';
7
+ import { BehaviorSubject, fromEvent, map } from 'rxjs';
7
8
 
8
9
  const FitRegexConst = {
9
10
  number: new RegExp(/^[0-9]\d*$/),
@@ -662,9 +663,151 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImpor
662
663
 
663
664
  // pipes
664
665
 
666
+ class FitAdapteService {
667
+ constructor(window) {
668
+ this.window = window;
669
+ this.sizeChanged = new BehaviorSubject({
670
+ width: this.window.innerWidth,
671
+ height: this.window.innerHeight
672
+ });
673
+ fromEvent(window, 'resize').pipe(map(event => ({
674
+ width: event.currentTarget['innerWidth'],
675
+ height: event.currentTarget['innerHeight']
676
+ }))).subscribe((windowSize) => {
677
+ this.sizeChanged.next(windowSize);
678
+ });
679
+ }
680
+ }
681
+ FitAdapteService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: FitAdapteService, deps: [{ token: 'windowObject' }], target: i0.ɵɵFactoryTarget.Injectable });
682
+ FitAdapteService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: FitAdapteService });
683
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: FitAdapteService, decorators: [{
684
+ type: Injectable
685
+ }], ctorParameters: function () {
686
+ return [{ type: Window, decorators: [{
687
+ type: Inject,
688
+ args: ['windowObject']
689
+ }] }];
690
+ } });
691
+
692
+ class FitCookiesService {
693
+ constructor(document, platformId) {
694
+ this.document = document;
695
+ this.platformId = platformId;
696
+ this.documentIsAccessible = isPlatformBrowser(this.platformId);
697
+ }
698
+ check(name) {
699
+ if (!this.documentIsAccessible) {
700
+ return false;
701
+ }
702
+ name = encodeURIComponent(name);
703
+ const regExp = this.getCookieRegExp(name);
704
+ const exists = regExp.test(this.document.cookie);
705
+ return exists;
706
+ }
707
+ get(name) {
708
+ if (this.documentIsAccessible && this.check(name)) {
709
+ name = encodeURIComponent(name);
710
+ const regExp = this.getCookieRegExp(name);
711
+ const result = regExp.exec(this.document.cookie);
712
+ return this.safeDecodeURIComponent(result[1]);
713
+ }
714
+ else {
715
+ return '';
716
+ }
717
+ }
718
+ getAll() {
719
+ if (!this.documentIsAccessible) {
720
+ return {};
721
+ }
722
+ const cookies = {};
723
+ const document = this.document;
724
+ if (document.cookie && document.cookie !== '') {
725
+ document.cookie.split(';').forEach((currentCookie) => {
726
+ const [cookieName, cookieValue] = currentCookie.split('=');
727
+ cookies[this.safeDecodeURIComponent(cookieName.replace(/^ /, ''))] = this.safeDecodeURIComponent(cookieValue);
728
+ });
729
+ }
730
+ return cookies;
731
+ }
732
+ set(name, value, expires, path, domain, secure, sameSite = 'Lax') {
733
+ if (!this.documentIsAccessible) {
734
+ return;
735
+ }
736
+ let cookieString = encodeURIComponent(name) + '=' + encodeURIComponent(value) + ';';
737
+ if (expires) {
738
+ if (typeof expires === 'number') {
739
+ const dateExpires = new Date(new Date().getTime() + expires * 1000 * 60 * 60 * 24);
740
+ cookieString += 'expires=' + dateExpires.toUTCString() + ';';
741
+ }
742
+ else {
743
+ cookieString += 'expires=' + expires.toUTCString() + ';';
744
+ }
745
+ }
746
+ if (path) {
747
+ cookieString += 'path=' + path + ';';
748
+ }
749
+ if (domain) {
750
+ cookieString += 'domain=' + domain + ';';
751
+ }
752
+ if (secure === false && sameSite === 'None') {
753
+ secure = true;
754
+ }
755
+ if (secure) {
756
+ cookieString += 'secure;';
757
+ }
758
+ cookieString += 'sameSite=' + sameSite + ';';
759
+ this.document.cookie = cookieString;
760
+ }
761
+ delete(name, path, domain, secure, sameSite = 'Lax') {
762
+ if (!this.documentIsAccessible) {
763
+ return;
764
+ }
765
+ this.set(name, '', new Date('Thu, 01 Jan 1970 00:00:01 GMT'), path, domain, secure, sameSite);
766
+ }
767
+ deleteAll(path, domain, secure, sameSite = 'Lax') {
768
+ if (!this.documentIsAccessible) {
769
+ return;
770
+ }
771
+ const cookies = this.getAll();
772
+ for (const cookieName in cookies) {
773
+ if (cookies.hasOwnProperty(cookieName)) {
774
+ this.delete(cookieName, path, domain, secure, sameSite);
775
+ }
776
+ }
777
+ }
778
+ getCookieRegExp(name) {
779
+ const escapedName = name.replace(/([\[\]\{\}\(\)\|\=\;\+\?\,\.\*\^\$])/gi, '\\$1');
780
+ return new RegExp('(?:^' + escapedName + '|;\\s*' + escapedName + ')=(.*?)(?:;|$)', 'g');
781
+ }
782
+ safeDecodeURIComponent(encodedURIComponent) {
783
+ try {
784
+ return decodeURIComponent(encodedURIComponent);
785
+ }
786
+ catch (_a) {
787
+ return encodedURIComponent;
788
+ }
789
+ }
790
+ }
791
+ FitCookiesService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: FitCookiesService, deps: [{ token: DOCUMENT }, { token: PLATFORM_ID }], target: i0.ɵɵFactoryTarget.Injectable });
792
+ FitCookiesService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: FitCookiesService, providedIn: 'root' });
793
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: FitCookiesService, decorators: [{
794
+ type: Injectable,
795
+ args: [{ providedIn: 'root' }]
796
+ }], ctorParameters: function () {
797
+ return [{ type: undefined, decorators: [{
798
+ type: Inject,
799
+ args: [DOCUMENT]
800
+ }] }, { type: i0.InjectionToken, decorators: [{
801
+ type: Inject,
802
+ args: [PLATFORM_ID]
803
+ }] }];
804
+ } });
805
+
806
+ // service
807
+
665
808
  /**
666
809
  * Generated bundle index. Do not edit.
667
810
  */
668
811
 
669
- export { ControlErrorDirective, FitCurrencyConst, FitDirectiveModule, FitFormUtil, FitGeneralUtil, FitMoneyPipe, FitPipeModule, FitRegexConst, FitValidateUtil, HoverDirective, InputDirective, ScrollDirective, SensitiveDirective };
812
+ export { ControlErrorDirective, FitAdapteService, FitCookiesService, FitCurrencyConst, FitDirectiveModule, FitFormUtil, FitGeneralUtil, FitMoneyPipe, FitPipeModule, FitRegexConst, FitValidateUtil, HoverDirective, InputDirective, ScrollDirective, SensitiveDirective };
670
813
  //# sourceMappingURL=fitcoders-shared.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"fitcoders-shared.mjs","sources":["../../../projects/shared/src/lib/constant/shared.const.ts","../../../projects/shared/src/lib/helper/fit-general.util.ts","../../../projects/shared/src/lib/helper/fit-form.util.ts","../../../projects/shared/src/lib/helper/fit-validate.util.ts","../../../projects/shared/src/lib/helper/helper-api.ts","../../../projects/shared/src/lib/directive/directives/hover.directive.ts","../../../projects/shared/src/lib/directive/directives/input.directive.ts","../../../projects/shared/src/lib/directive/directives/scroll.directive.ts","../../../projects/shared/src/lib/directive/directives/sensitive.directive.ts","../../../projects/shared/src/lib/directive/directives/control-error.directive.ts","../../../projects/shared/src/lib/directive/fit-directive.module.ts","../../../projects/shared/src/lib/directive/directive-api.ts","../../../projects/shared/src/lib/pipe/pipes/fit-money.pipe.ts","../../../projects/shared/src/lib/pipe/fit-pipe.module.ts","../../../projects/shared/src/lib/pipe/pipe-api.ts","../../../projects/shared/src/fitcoders-shared.ts"],"sourcesContent":["export const FitRegexConst = {\r\n number: new RegExp(/^[0-9]\\d*$/),\r\n decimal: new RegExp(/^[0-9]+(\\.[0-9]*){0,1}$/),\r\n percent: new RegExp(/^[1-9][0-9]*$/),\r\n alphabetical: /^[a-zA-Z\\u00C0-\\u00FF]+$/,\r\n alphabeticals: /^[a-zA-Z\\u00C0-\\u00FF ]+$/,\r\n alphanumeric: new RegExp(/^[0-9a-zA-Z\\u00C0-\\u00FF]+$/),\r\n alphanumerics: new RegExp(/^[0-9a-zA-Z\\u00C0-\\u00FF ]+$/),\r\n cell: new RegExp(/^9[0-9]*$/),\r\n noSpaces: new RegExp(/^\\S*$/gmi)\r\n};\r\n\r\nexport const FitCurrencyConst = {\r\n AED: 'د.إ',\r\n AFN: '؋',\r\n ALL: 'L',\r\n AMD: '֏',\r\n ANG: 'ƒ',\r\n AOA: 'Kz',\r\n ARS: '$',\r\n AUD: '$',\r\n AWG: 'ƒ',\r\n AZN: '₼',\r\n BAM: 'KM',\r\n BBD: '$',\r\n BDT: '৳',\r\n BGN: 'лв',\r\n BHD: '.د.ب',\r\n BIF: 'FBu',\r\n BMD: '$',\r\n BND: '$',\r\n BOB: '$b',\r\n BOV: 'BOV',\r\n BRL: 'R$',\r\n BSD: '$',\r\n BTC: '₿',\r\n BTN: 'Nu.',\r\n BWP: 'P',\r\n BYN: 'Br',\r\n BYR: 'Br',\r\n BZD: 'BZ$',\r\n CAD: '$',\r\n CDF: 'FC',\r\n CHE: 'CHE',\r\n CHF: 'CHF',\r\n CHW: 'CHW',\r\n CLF: 'CLF',\r\n CLP: '$',\r\n CNY: '¥',\r\n COP: '$',\r\n COU: 'COU',\r\n CRC: '₡',\r\n CUC: '$',\r\n CUP: '₱',\r\n CVE: '$',\r\n CZK: 'Kč',\r\n DJF: 'Fdj',\r\n DKK: 'kr',\r\n DOP: 'RD$',\r\n DZD: 'دج',\r\n EEK: 'kr',\r\n EGP: '£',\r\n ERN: 'Nfk',\r\n ETB: 'Br',\r\n ETH: 'Ξ',\r\n EUR: '€',\r\n FJD: '$',\r\n FKP: '£',\r\n GBP: '£',\r\n GEL: '₾',\r\n GGP: '£',\r\n GHC: '₵',\r\n GHS: 'GH₵',\r\n GIP: '£',\r\n GMD: 'D',\r\n GNF: 'FG',\r\n GTQ: 'Q',\r\n GYD: '$',\r\n HKD: '$',\r\n HNL: 'L',\r\n HRK: 'kn',\r\n HTG: 'G',\r\n HUF: 'Ft',\r\n IDR: 'Rp',\r\n ILS: '₪',\r\n IMP: '£',\r\n INR: '₹',\r\n IQD: 'ع.د',\r\n IRR: '﷼',\r\n ISK: 'kr',\r\n JEP: '£',\r\n JMD: 'J$',\r\n JOD: 'JD',\r\n JPY: '¥',\r\n KES: 'KSh',\r\n KGS: 'лв',\r\n KHR: '៛',\r\n KMF: 'CF',\r\n KPW: '₩',\r\n KRW: '₩',\r\n KWD: 'KD',\r\n KYD: '$',\r\n KZT: '₸',\r\n LAK: '₭',\r\n LBP: '£',\r\n LKR: '₨',\r\n LRD: '$',\r\n LSL: 'M',\r\n LTC: 'Ł',\r\n LTL: 'Lt',\r\n LVL: 'Ls',\r\n LYD: 'LD',\r\n MAD: 'MAD',\r\n MDL: 'lei',\r\n MGA: 'Ar',\r\n MKD: 'ден',\r\n MMK: 'K',\r\n MNT: '₮',\r\n MOP: 'MOP$',\r\n MRO: 'UM',\r\n MRU: 'UM',\r\n MUR: '₨',\r\n MVR: 'Rf',\r\n MWK: 'MK',\r\n MXN: '$',\r\n MXV: 'MXV',\r\n MYR: 'RM',\r\n MZN: 'MT',\r\n NAD: '$',\r\n NGN: '₦',\r\n NIO: 'C$',\r\n NOK: 'kr',\r\n NPR: '₨',\r\n NZD: '$',\r\n OMR: '﷼',\r\n PAB: 'B/.',\r\n PEN: 'S/.',\r\n PGK: 'K',\r\n PHP: '₱',\r\n PKR: '₨',\r\n PLN: 'zł',\r\n PYG: 'Gs',\r\n QAR: '﷼',\r\n RMB: '¥',\r\n RON: 'lei',\r\n RSD: 'Дин.',\r\n RUB: '₽',\r\n RWF: 'R₣',\r\n SAR: '﷼',\r\n SBD: '$',\r\n SCR: '₨',\r\n SDG: 'ج.س.',\r\n SEK: 'kr',\r\n SGD: 'S$',\r\n SHP: '£',\r\n SLL: 'Le',\r\n SOS: 'S',\r\n SRD: '$',\r\n SSP: '£',\r\n STD: 'Db',\r\n STN: 'Db',\r\n SVC: '$',\r\n SYP: '£',\r\n SZL: 'E',\r\n THB: '฿',\r\n TJS: 'SM',\r\n TMT: 'T',\r\n TND: 'د.ت',\r\n TOP: 'T$',\r\n TRL: '₤',\r\n TRY: '₺',\r\n TTD: 'TT$',\r\n TVD: '$',\r\n TWD: 'NT$',\r\n TZS: 'TSh',\r\n UAH: '₴',\r\n UGX: 'USh',\r\n USD: '$',\r\n UYI: 'UYI',\r\n UYU: '$U',\r\n UYW: 'UYW',\r\n UZS: 'лв',\r\n VEF: 'Bs',\r\n VES: 'Bs.S',\r\n VND: '₫',\r\n VUV: 'VT',\r\n WST: 'WS$',\r\n XAF: 'FCFA',\r\n XBT: 'Ƀ',\r\n XCD: '$',\r\n XOF: 'CFA',\r\n XPF: '₣',\r\n XSU: 'Sucre',\r\n XUA: 'XUA',\r\n YER: '﷼',\r\n ZAR: 'R',\r\n ZMW: 'ZK',\r\n ZWD: 'Z$',\r\n ZWL: '$'\r\n};\r\n","export class FitGeneralUtil {\r\n\r\n public static randomString(_length: number = 10) {\r\n const chars = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXTZ';\r\n const stringLength = _length;\r\n let randomstring = '';\r\n for (let i = 0; i < stringLength; i++) {\r\n const rnum = Math.floor(Math.random() * chars.length);\r\n randomstring += chars.substring(rnum, rnum + 1);\r\n }\r\n return randomstring;\r\n }\r\n}\r\n","import {FormArray, FormControl, FormGroup} from '@angular/forms';\r\n\r\nexport class FitFormUtil {\r\n\r\n public static validateAllFormFields(formGroup: FormGroup): FormGroup {\r\n Object.keys(formGroup.controls).forEach(field => {\r\n const control = formGroup.get(field);\r\n if (control instanceof FormControl) {\r\n if (control.errors && control.errors['required']) {\r\n control.markAsDirty({onlySelf: true});\r\n control.markAsTouched({onlySelf: true});\r\n control.updateValueAndValidity();\r\n }\r\n } else if (control instanceof FormGroup) {\r\n this.validateAllFormFields(control);\r\n }\r\n });\r\n return formGroup;\r\n }\r\n\r\n public static validateFormArray(forms: FormArray): FormArray {\r\n forms.controls.forEach(form => {\r\n FitFormUtil.validateAllFormFields(form as FormGroup);\r\n });\r\n return forms;\r\n }\r\n\r\n public static validateField(control: FormControl): FormControl {\r\n if (control.errors && control.errors['required']) {\r\n control.markAsDirty({onlySelf: true});\r\n control.markAsTouched({onlySelf: true});\r\n control.updateValueAndValidity();\r\n }\r\n return control;\r\n }\r\n}\r\n","import * as moment from 'moment';\r\n\r\nexport class FitValidateUtil {\r\n\r\n public static toString(_value: any, _case: 'standar' | 'upper' | 'lower' = 'standar', _resInvalid = ''): string {\r\n if (_value && _value.toString().trim()) {\r\n if (_case === 'upper' || _case === 'lower') {\r\n return (_case === 'upper' ? _value.toString().trim().toUpperCase() : _value.toString().trim().toLowerCase());\r\n }\r\n return _value.toString().trim();\r\n }\r\n return _resInvalid;\r\n }\r\n\r\n public static toNumber(_value: string | number, _resInvalid = null): number {\r\n if (_value && !!Number(_value)) {\r\n return Number(_value);\r\n }\r\n return _resInvalid;\r\n }\r\n\r\n public static toBoolean(_value: boolean, _resInvalid = false): boolean {\r\n if (_value !== undefined && _value !== null) {\r\n return _value;\r\n }\r\n return _resInvalid;\r\n }\r\n\r\n public static toDate(_value: any, _format = '', _resInvalid = null): Date {\r\n if (_value && moment(_value, _format).isValid()) {\r\n return moment(_value, _format).toDate();\r\n }\r\n return _resInvalid;\r\n }\r\n\r\n public static toArray(_value: any, _resInvalid = []): Array<any> {\r\n if (_value instanceof Array) {\r\n return _value;\r\n }\r\n return _resInvalid;\r\n }\r\n\r\n public static dateToString(_value: any, _format = '', _resInvalid = ''): string {\r\n if (_value && moment(_value).isValid()) {\r\n if (_format) {\r\n return moment(_value).format(_format);\r\n }\r\n return moment(_value).toISOString();\r\n }\r\n return _resInvalid;\r\n }\r\n\r\n public static charToBoolean(value: string, charYes = 'S'): boolean {\r\n return value === charYes;\r\n }\r\n\r\n public static booleanToBinary(value: boolean): number {\r\n return value ? 1 : 0;\r\n }\r\n\r\n public static booleanToChar(value: boolean, charYes: string | number = 'S', charNo: string | number = 'N'): string | number {\r\n return value ? charYes : charNo;\r\n }\r\n\r\n public static padStart(value: number | string, size: number) {\r\n let resp = `${value}`;\r\n while (resp.length < size) {\r\n resp = `0${resp}`;\r\n }\r\n return resp;\r\n }\r\n\r\n public static numberReduce(value: number): string {\r\n if (value >= 1000 && value <= 999999) {\r\n return `${Math.round(value / 1000)}K`;\r\n } else if (value >= 1000000) {\r\n return `${Math.round(value / 1000000)}M`;\r\n }\r\n return `${value}`;\r\n }\r\n}\r\n","// helper\nexport * from './fit-general.util';\nexport * from './fit-form.util';\nexport * from './fit-validate.util';\n","import {Directive, ElementRef, HostListener, Input} from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[fitHover]'\r\n})\r\nexport class HoverDirective {\r\n @Input('fitHover') hover = '';\r\n\r\n constructor(private readonly elementRef: ElementRef) {\r\n }\r\n\r\n @HostListener('mouseenter') onMouseEnter() {\r\n this.setHoverEffect();\r\n }\r\n\r\n @HostListener('mouseleave') onMouseLeave() {\r\n this.removeHoverEffect();\r\n }\r\n\r\n private setHoverEffect() {\r\n for (const _class of this.hover.split(' ')) {\r\n this.elementRef.nativeElement.classList.add(_class);\r\n }\r\n }\r\n\r\n private removeHoverEffect() {\r\n for (const _class of this.hover.split(' ')) {\r\n this.elementRef.nativeElement.classList.remove(_class);\r\n }\r\n }\r\n}\r\n","import {Directive, ElementRef, HostListener, Input} from '@angular/core';\r\nimport {FitRegexConst} from '../../constant/shared.const';\r\n\r\nexport type FitPattern = '' | 'number' | 'decimal' | 'percent' | 'alphabetical' | 'alphanumeric' | 'cell' | 'noSpaces';\r\n\r\n@Directive({\r\n selector: '[fitInput]'\r\n})\r\nexport class InputDirective {\r\n @Input('fitInput') input: FitPattern = '';\r\n @Input() space = false;\r\n\r\n private _regex: any = FitRegexConst;\r\n private _specialKeys = ['Backspace', 'Tab', 'Enter', 'Escape', 'End', 'Home', 'ArrowLeft', 'ArrowRight', 'Delete'];\r\n\r\n constructor(private el: ElementRef) {\r\n }\r\n\r\n @HostListener('keydown', ['$event'])\r\n onKeyDown(event: KeyboardEvent) {\r\n if (!this.input) {\r\n return;\r\n }\r\n if (this._specialKeys.indexOf(event.key) !== -1\r\n || (event.keyCode === 65 && event.ctrlKey) // Allow: Ctrl+A\r\n || (event.keyCode === 67 && event.ctrlKey) // Allow: Ctrl+C\r\n || (event.keyCode === 86 && event.ctrlKey) // Allow: Ctrl+V\r\n || (event.keyCode === 88 && event.ctrlKey) // Allow: Ctrl+X\r\n ) {\r\n return;\r\n }\r\n\r\n const current: string = this.el.nativeElement.value;\r\n const next: string = current.concat(event.key);\r\n const input = this.space && (this.input === 'alphabetical' || this.input === 'alphanumeric') ? `${this.input}s` : this.input;\r\n if (next && !String(next).match(this._regex[input])) {\r\n event.preventDefault();\r\n }\r\n }\r\n}\r\n","import {Directive, HostListener, Output, EventEmitter, Input} from '@angular/core';\r\n\r\nexport type SE = {\r\n header: boolean,\r\n bottom: boolean\r\n};\r\n\r\ndeclare const window: Window;\r\n\r\n@Directive({\r\n selector: '[fitScroll]'\r\n})\r\n\r\nexport class ScrollDirective {\r\n @Output() public onScroll = new EventEmitter<SE>();\r\n\r\n constructor() {\r\n }\r\n\r\n @HostListener('scroll', ['$event'])\r\n public scrolled($event: Event) {\r\n this.elementSE($event);\r\n }\r\n\r\n @HostListener('window:scroll', ['$event'])\r\n public windowScrolled($event: Event) {\r\n this.windowSE($event);\r\n }\r\n\r\n protected windowSE($event: Event) {\r\n const target = <Document> $event.target;\r\n const scrollTop = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0;\r\n const header = scrollTop < 200;\r\n const bottom = scrollTop > 200;\r\n const emitVal: SE = {header, bottom};\r\n this.onScroll.emit(emitVal);\r\n }\r\n\r\n protected elementSE($event: Event) {\r\n const target = <HTMLElement> $event.target;\r\n const header = target.scrollTop < 200;\r\n const bottom = target.scrollTop > 200;\r\n const emitVal: SE = {header, bottom};\r\n this.onScroll.emit(emitVal);\r\n }\r\n\r\n}\r\n","import {Directive, ElementRef, HostListener, Input} from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[fitSensitive]'\r\n})\r\nexport class SensitiveDirective {\r\n @Input('fitSensitive') caseType: 'upper' | 'lower' | '' = '';\r\n\r\n constructor(private _el: ElementRef) {\r\n }\r\n\r\n @HostListener('input', ['$event']) onKeyUp(event: any) {\r\n const value = event.target.value;\r\n if (this.caseType === 'upper') {\r\n event.target.value = value.toUpperCase();\r\n } else if (this.caseType === 'lower') {\r\n event.target.value = value.toLowerCase();\r\n }\r\n }\r\n}\r\n","import {AfterViewInit, Directive, ElementRef, Input, Renderer2} from '@angular/core';\r\nimport {AbstractControl} from '@angular/forms';\r\n\r\n@Directive({\r\n selector: '[fitControlError]'\r\n})\r\nexport class ControlErrorDirective implements AfterViewInit {\r\n private FORMAT = 'DD/MM/YYYY';\r\n private _control: AbstractControl | undefined;\r\n\r\n @Input() msgRequired = 'El campo es obligatorio';\r\n @Input() msgMinlength = 'Ingrese mínimo {requiredLength} caracteres';\r\n @Input() msgMaxlength = 'Ingrese máximo {requiredLength} caracteres';\r\n @Input() msgPattern = 'El formato del valor es inválido';\r\n @Input() msgInvalidDate = 'La fecha es inválida';\r\n @Input() msgMinDate = 'La fecha mínima es {minDate}';\r\n @Input() msgMaxDate = 'La fecha máxima es {maxDate}';\r\n\r\n @Input()\r\n set control(value: AbstractControl) {\r\n this._control = value;\r\n this._control.valueChanges.subscribe(() => {\r\n this.loadError();\r\n });\r\n }\r\n\r\n get control(): AbstractControl {\r\n return <AbstractControl>this._control;\r\n }\r\n\r\n constructor(private readonly _elementRef: ElementRef,\r\n private readonly render2: Renderer2) {\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.removeHtml();\r\n }\r\n\r\n private loadError() {\r\n if (this.control && (this.control.dirty || this.control.touched) && this.control.errors) {\r\n this.removeHtml();\r\n if (this.control.errors['required'] && !this.control.errors['matDatepickerParse']) {\r\n this.createHtml(this.msgRequired);\r\n } else if (this.control.errors['minlength']) {\r\n this.createHtml(this.msgMinlength.replace('{requiredLength}', this.control.errors['minlength'].requiredLength));\r\n } else if (this.control.errors['maxlength'] && !this.control.errors['minlength']) {\r\n this.createHtml(this.msgMaxlength.replace('{requiredLength}', this.control.errors['maxlength'].requiredLength));\r\n } else if (this.control.errors['pattern'] && !this.control.errors['maxlength'] && !this.control.errors['minlength']) {\r\n this.createHtml(this.msgPattern);\r\n } else if (this.control.errors['matDatepickerParse'] && this.control.errors['matDatepickerParse'].text) {\r\n this.createHtml(this.msgInvalidDate);\r\n } else if (this.control.errors['matDatepickerMin'] && this.control.errors['matDatepickerMin'].min) {\r\n const minDate = this.control.errors['matDatepickerMin'].min.format(this.FORMAT);\r\n this.createHtml(this.msgMinDate.replace('{minDate}', minDate));\r\n } else if (this.control.errors['matDatepickerMax'] && this.control.errors['matDatepickerMax'].max) {\r\n const maxDate = this.control.errors['matDatepickerMax'].max.format(this.FORMAT);\r\n this.createHtml(this.msgMaxDate.replace('{maxDate}', maxDate));\r\n }\r\n }\r\n }\r\n\r\n private removeHtml() {\r\n if (this._elementRef.nativeElement.firstChild) {\r\n this._elementRef.nativeElement.removeChild(this._elementRef.nativeElement.firstChild);\r\n }\r\n }\r\n\r\n private createHtml(message: string) {\r\n this.render2.setProperty(this._elementRef.nativeElement, 'innerHTML', message);\r\n }\r\n}\r\n","import {NgModule} from '@angular/core';\r\nimport {CommonModule} from '@angular/common';\r\nimport {InputDirective} from './directives/input.directive';\r\nimport {SensitiveDirective} from './directives/sensitive.directive';\r\nimport {ControlErrorDirective} from './directives/control-error.directive';\r\nimport {ScrollDirective} from \"./directives/scroll.directive\";\r\nimport {HoverDirective} from './directives/hover.directive';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule\r\n ],\r\n declarations: [\r\n InputDirective,\r\n SensitiveDirective,\r\n ControlErrorDirective,\r\n ScrollDirective,\r\n HoverDirective\r\n ],\r\n exports: [\r\n InputDirective,\r\n SensitiveDirective,\r\n ControlErrorDirective,\r\n ScrollDirective,\r\n HoverDirective\r\n ],\r\n providers: []\r\n})\r\nexport class FitDirectiveModule {\r\n}\r\n","// directives\nexport * from './directives/hover.directive';\nexport * from './directives/input.directive';\nexport * from './directives/scroll.directive';\nexport * from './directives/sensitive.directive';\nexport * from './directives/control-error.directive';\n\n// modules\nexport * from './fit-directive.module';\n","import {DecimalPipe} from '@angular/common';\nimport {Pipe, PipeTransform} from '@angular/core';\nimport {FitCurrencyConst, FitRegexConst} from '../../constant/shared.const';\n\n@Pipe({\n name: 'fitMoney'\n})\nexport class FitMoneyPipe implements PipeTransform {\n private _currency: any = FitCurrencyConst;\n private _defaultCurrency = 'PEN';\n private _defaultDecimal = 2;\n\n constructor(private readonly decimalPipe: DecimalPipe) {\n }\n\n transform(value: number | string, currency = this._defaultCurrency, decimal = this._defaultDecimal): string {\n const format = `.${decimal}-${decimal}`;\n if (value && `${value}`.match(FitRegexConst.decimal)) {\n return `${this._currency[currency]} ${this.decimalPipe.transform(Number(value), (format))}`;\n }\n return `${this._currency[currency]} ${this.decimalPipe.transform(0, (format))}`;\n }\n}\n","import {NgModule} from '@angular/core';\nimport {CommonModule, DecimalPipe} from '@angular/common';\nimport {FitMoneyPipe} from './pipes/fit-money.pipe';\n\n@NgModule({\n imports: [\n CommonModule\n ],\n declarations: [\n FitMoneyPipe\n ],\n exports: [\n FitMoneyPipe\n ],\n providers: [\n DecimalPipe\n ]\n})\nexport class FitPipeModule {\n}\n","// pipes\nexport * from './pipes/fit-money.pipe';\n\n// modules\nexport * from './fit-pipe.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;;MAAa,aAAa,GAAG;IAC3B,MAAM,EAAE,IAAI,MAAM,CAAC,YAAY,CAAC;IAChC,OAAO,EAAE,IAAI,MAAM,CAAC,yBAAyB,CAAC;IAC9C,OAAO,EAAE,IAAI,MAAM,CAAC,eAAe,CAAC;IACpC,YAAY,EAAE,0BAA0B;IACxC,aAAa,EAAE,2BAA2B;IAC1C,YAAY,EAAE,IAAI,MAAM,CAAC,6BAA6B,CAAC;IACvD,aAAa,EAAE,IAAI,MAAM,CAAC,8BAA8B,CAAC;IACzD,IAAI,EAAE,IAAI,MAAM,CAAC,WAAW,CAAC;IAC7B,QAAQ,EAAE,IAAI,MAAM,CAAC,UAAU,CAAC;EAChC;MAEW,gBAAgB,GAAG;IAC9B,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,MAAM;IACX,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,MAAM;IACX,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,MAAM;IACX,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,MAAM;IACX,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,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"}
1
+ {"version":3,"file":"fitcoders-shared.mjs","sources":["../../../projects/shared/src/lib/constant/shared.const.ts","../../../projects/shared/src/lib/helper/fit-general.util.ts","../../../projects/shared/src/lib/helper/fit-form.util.ts","../../../projects/shared/src/lib/helper/fit-validate.util.ts","../../../projects/shared/src/lib/helper/helper-api.ts","../../../projects/shared/src/lib/directive/directives/hover.directive.ts","../../../projects/shared/src/lib/directive/directives/input.directive.ts","../../../projects/shared/src/lib/directive/directives/scroll.directive.ts","../../../projects/shared/src/lib/directive/directives/sensitive.directive.ts","../../../projects/shared/src/lib/directive/directives/control-error.directive.ts","../../../projects/shared/src/lib/directive/fit-directive.module.ts","../../../projects/shared/src/lib/directive/directive-api.ts","../../../projects/shared/src/lib/pipe/pipes/fit-money.pipe.ts","../../../projects/shared/src/lib/pipe/fit-pipe.module.ts","../../../projects/shared/src/lib/pipe/pipe-api.ts","../../../projects/shared/src/lib/service/fit-adapte.service.ts","../../../projects/shared/src/lib/service/fit-cookies.service.ts","../../../projects/shared/src/lib/service/service-api.ts","../../../projects/shared/src/fitcoders-shared.ts"],"sourcesContent":["export const FitRegexConst = {\r\n number: new RegExp(/^[0-9]\\d*$/),\r\n decimal: new RegExp(/^[0-9]+(\\.[0-9]*){0,1}$/),\r\n percent: new RegExp(/^[1-9][0-9]*$/),\r\n alphabetical: /^[a-zA-Z\\u00C0-\\u00FF]+$/,\r\n alphabeticals: /^[a-zA-Z\\u00C0-\\u00FF ]+$/,\r\n alphanumeric: new RegExp(/^[0-9a-zA-Z\\u00C0-\\u00FF]+$/),\r\n alphanumerics: new RegExp(/^[0-9a-zA-Z\\u00C0-\\u00FF ]+$/),\r\n cell: new RegExp(/^9[0-9]*$/),\r\n noSpaces: new RegExp(/^\\S*$/gmi)\r\n};\r\n\r\nexport const FitCurrencyConst = {\r\n AED: 'د.إ',\r\n AFN: '؋',\r\n ALL: 'L',\r\n AMD: '֏',\r\n ANG: 'ƒ',\r\n AOA: 'Kz',\r\n ARS: '$',\r\n AUD: '$',\r\n AWG: 'ƒ',\r\n AZN: '₼',\r\n BAM: 'KM',\r\n BBD: '$',\r\n BDT: '৳',\r\n BGN: 'лв',\r\n BHD: '.د.ب',\r\n BIF: 'FBu',\r\n BMD: '$',\r\n BND: '$',\r\n BOB: '$b',\r\n BOV: 'BOV',\r\n BRL: 'R$',\r\n BSD: '$',\r\n BTC: '₿',\r\n BTN: 'Nu.',\r\n BWP: 'P',\r\n BYN: 'Br',\r\n BYR: 'Br',\r\n BZD: 'BZ$',\r\n CAD: '$',\r\n CDF: 'FC',\r\n CHE: 'CHE',\r\n CHF: 'CHF',\r\n CHW: 'CHW',\r\n CLF: 'CLF',\r\n CLP: '$',\r\n CNY: '¥',\r\n COP: '$',\r\n COU: 'COU',\r\n CRC: '₡',\r\n CUC: '$',\r\n CUP: '₱',\r\n CVE: '$',\r\n CZK: 'Kč',\r\n DJF: 'Fdj',\r\n DKK: 'kr',\r\n DOP: 'RD$',\r\n DZD: 'دج',\r\n EEK: 'kr',\r\n EGP: '£',\r\n ERN: 'Nfk',\r\n ETB: 'Br',\r\n ETH: 'Ξ',\r\n EUR: '€',\r\n FJD: '$',\r\n FKP: '£',\r\n GBP: '£',\r\n GEL: '₾',\r\n GGP: '£',\r\n GHC: '₵',\r\n GHS: 'GH₵',\r\n GIP: '£',\r\n GMD: 'D',\r\n GNF: 'FG',\r\n GTQ: 'Q',\r\n GYD: '$',\r\n HKD: '$',\r\n HNL: 'L',\r\n HRK: 'kn',\r\n HTG: 'G',\r\n HUF: 'Ft',\r\n IDR: 'Rp',\r\n ILS: '₪',\r\n IMP: '£',\r\n INR: '₹',\r\n IQD: 'ع.د',\r\n IRR: '﷼',\r\n ISK: 'kr',\r\n JEP: '£',\r\n JMD: 'J$',\r\n JOD: 'JD',\r\n JPY: '¥',\r\n KES: 'KSh',\r\n KGS: 'лв',\r\n KHR: '៛',\r\n KMF: 'CF',\r\n KPW: '₩',\r\n KRW: '₩',\r\n KWD: 'KD',\r\n KYD: '$',\r\n KZT: '₸',\r\n LAK: '₭',\r\n LBP: '£',\r\n LKR: '₨',\r\n LRD: '$',\r\n LSL: 'M',\r\n LTC: 'Ł',\r\n LTL: 'Lt',\r\n LVL: 'Ls',\r\n LYD: 'LD',\r\n MAD: 'MAD',\r\n MDL: 'lei',\r\n MGA: 'Ar',\r\n MKD: 'ден',\r\n MMK: 'K',\r\n MNT: '₮',\r\n MOP: 'MOP$',\r\n MRO: 'UM',\r\n MRU: 'UM',\r\n MUR: '₨',\r\n MVR: 'Rf',\r\n MWK: 'MK',\r\n MXN: '$',\r\n MXV: 'MXV',\r\n MYR: 'RM',\r\n MZN: 'MT',\r\n NAD: '$',\r\n NGN: '₦',\r\n NIO: 'C$',\r\n NOK: 'kr',\r\n NPR: '₨',\r\n NZD: '$',\r\n OMR: '﷼',\r\n PAB: 'B/.',\r\n PEN: 'S/.',\r\n PGK: 'K',\r\n PHP: '₱',\r\n PKR: '₨',\r\n PLN: 'zł',\r\n PYG: 'Gs',\r\n QAR: '﷼',\r\n RMB: '¥',\r\n RON: 'lei',\r\n RSD: 'Дин.',\r\n RUB: '₽',\r\n RWF: 'R₣',\r\n SAR: '﷼',\r\n SBD: '$',\r\n SCR: '₨',\r\n SDG: 'ج.س.',\r\n SEK: 'kr',\r\n SGD: 'S$',\r\n SHP: '£',\r\n SLL: 'Le',\r\n SOS: 'S',\r\n SRD: '$',\r\n SSP: '£',\r\n STD: 'Db',\r\n STN: 'Db',\r\n SVC: '$',\r\n SYP: '£',\r\n SZL: 'E',\r\n THB: '฿',\r\n TJS: 'SM',\r\n TMT: 'T',\r\n TND: 'د.ت',\r\n TOP: 'T$',\r\n TRL: '₤',\r\n TRY: '₺',\r\n TTD: 'TT$',\r\n TVD: '$',\r\n TWD: 'NT$',\r\n TZS: 'TSh',\r\n UAH: '₴',\r\n UGX: 'USh',\r\n USD: '$',\r\n UYI: 'UYI',\r\n UYU: '$U',\r\n UYW: 'UYW',\r\n UZS: 'лв',\r\n VEF: 'Bs',\r\n VES: 'Bs.S',\r\n VND: '₫',\r\n VUV: 'VT',\r\n WST: 'WS$',\r\n XAF: 'FCFA',\r\n XBT: 'Ƀ',\r\n XCD: '$',\r\n XOF: 'CFA',\r\n XPF: '₣',\r\n XSU: 'Sucre',\r\n XUA: 'XUA',\r\n YER: '﷼',\r\n ZAR: 'R',\r\n ZMW: 'ZK',\r\n ZWD: 'Z$',\r\n ZWL: '$'\r\n};\r\n","export class FitGeneralUtil {\r\n\r\n public static randomString(_length: number = 10) {\r\n const chars = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXTZ';\r\n const stringLength = _length;\r\n let randomstring = '';\r\n for (let i = 0; i < stringLength; i++) {\r\n const rnum = Math.floor(Math.random() * chars.length);\r\n randomstring += chars.substring(rnum, rnum + 1);\r\n }\r\n return randomstring;\r\n }\r\n}\r\n","import {FormArray, FormControl, FormGroup} from '@angular/forms';\r\n\r\nexport class FitFormUtil {\r\n\r\n public static validateAllFormFields(formGroup: FormGroup): FormGroup {\r\n Object.keys(formGroup.controls).forEach(field => {\r\n const control = formGroup.get(field);\r\n if (control instanceof FormControl) {\r\n if (control.errors && control.errors['required']) {\r\n control.markAsDirty({onlySelf: true});\r\n control.markAsTouched({onlySelf: true});\r\n control.updateValueAndValidity();\r\n }\r\n } else if (control instanceof FormGroup) {\r\n this.validateAllFormFields(control);\r\n }\r\n });\r\n return formGroup;\r\n }\r\n\r\n public static validateFormArray(forms: FormArray): FormArray {\r\n forms.controls.forEach(form => {\r\n FitFormUtil.validateAllFormFields(form as FormGroup);\r\n });\r\n return forms;\r\n }\r\n\r\n public static validateField(control: FormControl): FormControl {\r\n if (control.errors && control.errors['required']) {\r\n control.markAsDirty({onlySelf: true});\r\n control.markAsTouched({onlySelf: true});\r\n control.updateValueAndValidity();\r\n }\r\n return control;\r\n }\r\n}\r\n","import * as moment from 'moment';\r\n\r\nexport class FitValidateUtil {\r\n\r\n public static toString(_value: any, _case: 'standar' | 'upper' | 'lower' = 'standar', _resInvalid = ''): string {\r\n if (_value && _value.toString().trim()) {\r\n if (_case === 'upper' || _case === 'lower') {\r\n return (_case === 'upper' ? _value.toString().trim().toUpperCase() : _value.toString().trim().toLowerCase());\r\n }\r\n return _value.toString().trim();\r\n }\r\n return _resInvalid;\r\n }\r\n\r\n public static toNumber(_value: string | number, _resInvalid = null): number {\r\n if (_value && !!Number(_value)) {\r\n return Number(_value);\r\n }\r\n return _resInvalid;\r\n }\r\n\r\n public static toBoolean(_value: boolean, _resInvalid = false): boolean {\r\n if (_value !== undefined && _value !== null) {\r\n return _value;\r\n }\r\n return _resInvalid;\r\n }\r\n\r\n public static toDate(_value: any, _format = '', _resInvalid = null): Date {\r\n if (_value && moment(_value, _format).isValid()) {\r\n return moment(_value, _format).toDate();\r\n }\r\n return _resInvalid;\r\n }\r\n\r\n public static toArray(_value: any, _resInvalid = []): Array<any> {\r\n if (_value instanceof Array) {\r\n return _value;\r\n }\r\n return _resInvalid;\r\n }\r\n\r\n public static dateToString(_value: any, _format = '', _resInvalid = ''): string {\r\n if (_value && moment(_value).isValid()) {\r\n if (_format) {\r\n return moment(_value).format(_format);\r\n }\r\n return moment(_value).toISOString();\r\n }\r\n return _resInvalid;\r\n }\r\n\r\n public static charToBoolean(value: string, charYes = 'S'): boolean {\r\n return value === charYes;\r\n }\r\n\r\n public static booleanToBinary(value: boolean): number {\r\n return value ? 1 : 0;\r\n }\r\n\r\n public static booleanToChar(value: boolean, charYes: string | number = 'S', charNo: string | number = 'N'): string | number {\r\n return value ? charYes : charNo;\r\n }\r\n\r\n public static padStart(value: number | string, size: number) {\r\n let resp = `${value}`;\r\n while (resp.length < size) {\r\n resp = `0${resp}`;\r\n }\r\n return resp;\r\n }\r\n\r\n public static numberReduce(value: number): string {\r\n if (value >= 1000 && value <= 999999) {\r\n return `${Math.round(value / 1000)}K`;\r\n } else if (value >= 1000000) {\r\n return `${Math.round(value / 1000000)}M`;\r\n }\r\n return `${value}`;\r\n }\r\n}\r\n","// helper\nexport * from './fit-general.util';\nexport * from './fit-form.util';\nexport * from './fit-validate.util';\n","import {Directive, ElementRef, HostListener, Input} from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[fitHover]'\r\n})\r\nexport class HoverDirective {\r\n @Input('fitHover') hover = '';\r\n\r\n constructor(private readonly elementRef: ElementRef) {\r\n }\r\n\r\n @HostListener('mouseenter') onMouseEnter() {\r\n this.setHoverEffect();\r\n }\r\n\r\n @HostListener('mouseleave') onMouseLeave() {\r\n this.removeHoverEffect();\r\n }\r\n\r\n private setHoverEffect() {\r\n for (const _class of this.hover.split(' ')) {\r\n this.elementRef.nativeElement.classList.add(_class);\r\n }\r\n }\r\n\r\n private removeHoverEffect() {\r\n for (const _class of this.hover.split(' ')) {\r\n this.elementRef.nativeElement.classList.remove(_class);\r\n }\r\n }\r\n}\r\n","import {Directive, ElementRef, HostListener, Input} from '@angular/core';\r\nimport {FitRegexConst} from '../../constant/shared.const';\r\n\r\nexport type FitPattern = '' | 'number' | 'decimal' | 'percent' | 'alphabetical' | 'alphanumeric' | 'cell' | 'noSpaces';\r\n\r\n@Directive({\r\n selector: '[fitInput]'\r\n})\r\nexport class InputDirective {\r\n @Input('fitInput') input: FitPattern = '';\r\n @Input() space = false;\r\n\r\n private _regex: any = FitRegexConst;\r\n private _specialKeys = ['Backspace', 'Tab', 'Enter', 'Escape', 'End', 'Home', 'ArrowLeft', 'ArrowRight', 'Delete'];\r\n\r\n constructor(private el: ElementRef) {\r\n }\r\n\r\n @HostListener('keydown', ['$event'])\r\n onKeyDown(event: KeyboardEvent) {\r\n if (!this.input) {\r\n return;\r\n }\r\n if (this._specialKeys.indexOf(event.key) !== -1\r\n || (event.keyCode === 65 && event.ctrlKey) // Allow: Ctrl+A\r\n || (event.keyCode === 67 && event.ctrlKey) // Allow: Ctrl+C\r\n || (event.keyCode === 86 && event.ctrlKey) // Allow: Ctrl+V\r\n || (event.keyCode === 88 && event.ctrlKey) // Allow: Ctrl+X\r\n ) {\r\n return;\r\n }\r\n\r\n const current: string = this.el.nativeElement.value;\r\n const next: string = current.concat(event.key);\r\n const input = this.space && (this.input === 'alphabetical' || this.input === 'alphanumeric') ? `${this.input}s` : this.input;\r\n if (next && !String(next).match(this._regex[input])) {\r\n event.preventDefault();\r\n }\r\n }\r\n}\r\n","import {Directive, HostListener, Output, EventEmitter, Input} from '@angular/core';\r\n\r\nexport type SE = {\r\n header: boolean,\r\n bottom: boolean\r\n};\r\n\r\ndeclare const window: Window;\r\n\r\n@Directive({\r\n selector: '[fitScroll]'\r\n})\r\n\r\nexport class ScrollDirective {\r\n @Output() public onScroll = new EventEmitter<SE>();\r\n\r\n constructor() {\r\n }\r\n\r\n @HostListener('scroll', ['$event'])\r\n public scrolled($event: Event) {\r\n this.elementSE($event);\r\n }\r\n\r\n @HostListener('window:scroll', ['$event'])\r\n public windowScrolled($event: Event) {\r\n this.windowSE($event);\r\n }\r\n\r\n protected windowSE($event: Event) {\r\n const target = <Document> $event.target;\r\n const scrollTop = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0;\r\n const header = scrollTop < 200;\r\n const bottom = scrollTop > 200;\r\n const emitVal: SE = {header, bottom};\r\n this.onScroll.emit(emitVal);\r\n }\r\n\r\n protected elementSE($event: Event) {\r\n const target = <HTMLElement> $event.target;\r\n const header = target.scrollTop < 200;\r\n const bottom = target.scrollTop > 200;\r\n const emitVal: SE = {header, bottom};\r\n this.onScroll.emit(emitVal);\r\n }\r\n\r\n}\r\n","import {Directive, ElementRef, HostListener, Input} from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[fitSensitive]'\r\n})\r\nexport class SensitiveDirective {\r\n @Input('fitSensitive') caseType: 'upper' | 'lower' | '' = '';\r\n\r\n constructor(private _el: ElementRef) {\r\n }\r\n\r\n @HostListener('input', ['$event']) onKeyUp(event: any) {\r\n const value = event.target.value;\r\n if (this.caseType === 'upper') {\r\n event.target.value = value.toUpperCase();\r\n } else if (this.caseType === 'lower') {\r\n event.target.value = value.toLowerCase();\r\n }\r\n }\r\n}\r\n","import {AfterViewInit, Directive, ElementRef, Input, Renderer2} from '@angular/core';\r\nimport {AbstractControl} from '@angular/forms';\r\n\r\n@Directive({\r\n selector: '[fitControlError]'\r\n})\r\nexport class ControlErrorDirective implements AfterViewInit {\r\n private FORMAT = 'DD/MM/YYYY';\r\n private _control: AbstractControl | undefined;\r\n\r\n @Input() msgRequired = 'El campo es obligatorio';\r\n @Input() msgMinlength = 'Ingrese mínimo {requiredLength} caracteres';\r\n @Input() msgMaxlength = 'Ingrese máximo {requiredLength} caracteres';\r\n @Input() msgPattern = 'El formato del valor es inválido';\r\n @Input() msgInvalidDate = 'La fecha es inválida';\r\n @Input() msgMinDate = 'La fecha mínima es {minDate}';\r\n @Input() msgMaxDate = 'La fecha máxima es {maxDate}';\r\n\r\n @Input()\r\n set control(value: AbstractControl) {\r\n this._control = value;\r\n this._control.valueChanges.subscribe(() => {\r\n this.loadError();\r\n });\r\n }\r\n\r\n get control(): AbstractControl {\r\n return <AbstractControl>this._control;\r\n }\r\n\r\n constructor(private readonly _elementRef: ElementRef,\r\n private readonly render2: Renderer2) {\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.removeHtml();\r\n }\r\n\r\n private loadError() {\r\n if (this.control && (this.control.dirty || this.control.touched) && this.control.errors) {\r\n this.removeHtml();\r\n if (this.control.errors['required'] && !this.control.errors['matDatepickerParse']) {\r\n this.createHtml(this.msgRequired);\r\n } else if (this.control.errors['minlength']) {\r\n this.createHtml(this.msgMinlength.replace('{requiredLength}', this.control.errors['minlength'].requiredLength));\r\n } else if (this.control.errors['maxlength'] && !this.control.errors['minlength']) {\r\n this.createHtml(this.msgMaxlength.replace('{requiredLength}', this.control.errors['maxlength'].requiredLength));\r\n } else if (this.control.errors['pattern'] && !this.control.errors['maxlength'] && !this.control.errors['minlength']) {\r\n this.createHtml(this.msgPattern);\r\n } else if (this.control.errors['matDatepickerParse'] && this.control.errors['matDatepickerParse'].text) {\r\n this.createHtml(this.msgInvalidDate);\r\n } else if (this.control.errors['matDatepickerMin'] && this.control.errors['matDatepickerMin'].min) {\r\n const minDate = this.control.errors['matDatepickerMin'].min.format(this.FORMAT);\r\n this.createHtml(this.msgMinDate.replace('{minDate}', minDate));\r\n } else if (this.control.errors['matDatepickerMax'] && this.control.errors['matDatepickerMax'].max) {\r\n const maxDate = this.control.errors['matDatepickerMax'].max.format(this.FORMAT);\r\n this.createHtml(this.msgMaxDate.replace('{maxDate}', maxDate));\r\n }\r\n }\r\n }\r\n\r\n private removeHtml() {\r\n if (this._elementRef.nativeElement.firstChild) {\r\n this._elementRef.nativeElement.removeChild(this._elementRef.nativeElement.firstChild);\r\n }\r\n }\r\n\r\n private createHtml(message: string) {\r\n this.render2.setProperty(this._elementRef.nativeElement, 'innerHTML', message);\r\n }\r\n}\r\n","import {NgModule} from '@angular/core';\r\nimport {CommonModule} from '@angular/common';\r\nimport {InputDirective} from './directives/input.directive';\r\nimport {SensitiveDirective} from './directives/sensitive.directive';\r\nimport {ControlErrorDirective} from './directives/control-error.directive';\r\nimport {ScrollDirective} from \"./directives/scroll.directive\";\r\nimport {HoverDirective} from './directives/hover.directive';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule\r\n ],\r\n declarations: [\r\n InputDirective,\r\n SensitiveDirective,\r\n ControlErrorDirective,\r\n ScrollDirective,\r\n HoverDirective\r\n ],\r\n exports: [\r\n InputDirective,\r\n SensitiveDirective,\r\n ControlErrorDirective,\r\n ScrollDirective,\r\n HoverDirective\r\n ],\r\n providers: []\r\n})\r\nexport class FitDirectiveModule {\r\n}\r\n","// directives\nexport * from './directives/hover.directive';\nexport * from './directives/input.directive';\nexport * from './directives/scroll.directive';\nexport * from './directives/sensitive.directive';\nexport * from './directives/control-error.directive';\n\n// modules\nexport * from './fit-directive.module';\n","import {DecimalPipe} from '@angular/common';\nimport {Pipe, PipeTransform} from '@angular/core';\nimport {FitCurrencyConst, FitRegexConst} from '../../constant/shared.const';\n\n@Pipe({\n name: 'fitMoney'\n})\nexport class FitMoneyPipe implements PipeTransform {\n private _currency: any = FitCurrencyConst;\n private _defaultCurrency = 'PEN';\n private _defaultDecimal = 2;\n\n constructor(private readonly decimalPipe: DecimalPipe) {\n }\n\n transform(value: number | string, currency = this._defaultCurrency, decimal = this._defaultDecimal): string {\n const format = `.${decimal}-${decimal}`;\n if (value && `${value}`.match(FitRegexConst.decimal)) {\n return `${this._currency[currency]} ${this.decimalPipe.transform(Number(value), (format))}`;\n }\n return `${this._currency[currency]} ${this.decimalPipe.transform(0, (format))}`;\n }\n}\n","import {NgModule} from '@angular/core';\nimport {CommonModule, DecimalPipe} from '@angular/common';\nimport {FitMoneyPipe} from './pipes/fit-money.pipe';\n\n@NgModule({\n imports: [\n CommonModule\n ],\n declarations: [\n FitMoneyPipe\n ],\n exports: [\n FitMoneyPipe\n ],\n providers: [\n DecimalPipe\n ]\n})\nexport class FitPipeModule {\n}\n","// pipes\nexport * from './pipes/fit-money.pipe';\n\n// modules\nexport * from './fit-pipe.module';\n","import {Inject, Injectable} from '@angular/core';\r\nimport {BehaviorSubject, fromEvent, map, Observable} from 'rxjs';\r\n\r\nexport interface WindowSize {\r\n height: number;\r\n width: number;\r\n}\r\n\r\n@Injectable()\r\nexport class FitAdapteService {\r\n\r\n constructor(@Inject('windowObject') private window: Window) {\r\n fromEvent(window, 'resize').pipe(\r\n map(event => ({\r\n width: event.currentTarget['innerWidth'],\r\n height: event.currentTarget['innerHeight']\r\n }) as WindowSize)\r\n ).subscribe((windowSize) => {\r\n this.sizeChanged.next(windowSize);\r\n });\r\n }\r\n\r\n readonly sizeChanged = new BehaviorSubject<WindowSize>({\r\n width: this.window.innerWidth,\r\n height: this.window.innerHeight\r\n });\r\n}\r\n","import {Inject, Injectable, InjectionToken, PLATFORM_ID} from '@angular/core';\r\nimport {DOCUMENT, isPlatformBrowser} from '@angular/common';\r\n\r\n@Injectable({providedIn: 'root'})\r\nexport class FitCookiesService {\r\n private readonly documentIsAccessible: boolean;\r\n\r\n constructor(@Inject(DOCUMENT) private document: any,\r\n @Inject(PLATFORM_ID) private platformId: InjectionToken<object>) {\r\n this.documentIsAccessible = isPlatformBrowser(this.platformId);\r\n }\r\n\r\n check(name: string): boolean {\r\n if (!this.documentIsAccessible) {\r\n return false;\r\n }\r\n\r\n name = encodeURIComponent(name);\r\n\r\n const regExp: RegExp = this.getCookieRegExp(name);\r\n const exists: boolean = regExp.test(this.document.cookie);\r\n\r\n return exists;\r\n }\r\n\r\n get(name: string): string {\r\n if (this.documentIsAccessible && this.check(name)) {\r\n name = encodeURIComponent(name);\r\n\r\n const regExp: RegExp = this.getCookieRegExp(name);\r\n const result: RegExpExecArray = regExp.exec(this.document.cookie);\r\n\r\n return this.safeDecodeURIComponent(result[1]);\r\n } else {\r\n return '';\r\n }\r\n }\r\n\r\n getAll(): { [key: string]: string } {\r\n if (!this.documentIsAccessible) {\r\n return {};\r\n }\r\n\r\n const cookies: { [key: string]: string } = {};\r\n const document: any = this.document;\r\n\r\n if (document.cookie && document.cookie !== '') {\r\n document.cookie.split(';').forEach((currentCookie) => {\r\n const [cookieName, cookieValue] = currentCookie.split('=');\r\n cookies[this.safeDecodeURIComponent(cookieName.replace(/^ /, ''))] = this.safeDecodeURIComponent(cookieValue);\r\n });\r\n }\r\n\r\n return cookies;\r\n }\r\n\r\n set(name: string, value: string, expires?: number | Date, path?: string, domain?: string, secure?: boolean, sameSite: 'Lax' | 'None' | 'Strict' = 'Lax'): void {\r\n if (!this.documentIsAccessible) {\r\n return;\r\n }\r\n\r\n let cookieString: string = encodeURIComponent(name) + '=' + encodeURIComponent(value) + ';';\r\n\r\n if (expires) {\r\n if (typeof expires === 'number') {\r\n const dateExpires: Date = new Date(new Date().getTime() + expires * 1000 * 60 * 60 * 24);\r\n cookieString += 'expires=' + dateExpires.toUTCString() + ';';\r\n } else {\r\n cookieString += 'expires=' + expires.toUTCString() + ';';\r\n }\r\n }\r\n\r\n if (path) {\r\n cookieString += 'path=' + path + ';';\r\n }\r\n\r\n if (domain) {\r\n cookieString += 'domain=' + domain + ';';\r\n }\r\n\r\n if (secure === false && sameSite === 'None') {\r\n secure = true;\r\n }\r\n\r\n if (secure) {\r\n cookieString += 'secure;';\r\n }\r\n\r\n cookieString += 'sameSite=' + sameSite + ';';\r\n\r\n this.document.cookie = cookieString;\r\n }\r\n\r\n delete(name: string, path?: string, domain?: string, secure?: boolean, sameSite: 'Lax' | 'None' | 'Strict' = 'Lax'): void {\r\n if (!this.documentIsAccessible) {\r\n return;\r\n }\r\n\r\n this.set(name, '', new Date('Thu, 01 Jan 1970 00:00:01 GMT'), path, domain, secure, sameSite);\r\n }\r\n\r\n deleteAll(path?: string, domain?: string, secure?: boolean, sameSite: 'Lax' | 'None' | 'Strict' = 'Lax'): void {\r\n if (!this.documentIsAccessible) {\r\n return;\r\n }\r\n\r\n const cookies: any = this.getAll();\r\n\r\n for (const cookieName in cookies) {\r\n if (cookies.hasOwnProperty(cookieName)) {\r\n this.delete(cookieName, path, domain, secure, sameSite);\r\n }\r\n }\r\n }\r\n\r\n private getCookieRegExp(name: string): RegExp {\r\n const escapedName: string = name.replace(/([\\[\\]\\{\\}\\(\\)\\|\\=\\;\\+\\?\\,\\.\\*\\^\\$])/gi, '\\\\$1');\r\n\r\n return new RegExp('(?:^' + escapedName + '|;\\\\s*' + escapedName + ')=(.*?)(?:;|$)', 'g');\r\n }\r\n\r\n private safeDecodeURIComponent(encodedURIComponent: string): string {\r\n try {\r\n return decodeURIComponent(encodedURIComponent);\r\n } catch {\r\n return encodedURIComponent;\r\n }\r\n }\r\n}\r\n","// service\nexport * from './fit-adapte.service';\nexport * from './fit-cookies.service';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;;;MAAa,aAAa,GAAG;IAC3B,MAAM,EAAE,IAAI,MAAM,CAAC,YAAY,CAAC;IAChC,OAAO,EAAE,IAAI,MAAM,CAAC,yBAAyB,CAAC;IAC9C,OAAO,EAAE,IAAI,MAAM,CAAC,eAAe,CAAC;IACpC,YAAY,EAAE,0BAA0B;IACxC,aAAa,EAAE,2BAA2B;IAC1C,YAAY,EAAE,IAAI,MAAM,CAAC,6BAA6B,CAAC;IACvD,aAAa,EAAE,IAAI,MAAM,CAAC,8BAA8B,CAAC;IACzD,IAAI,EAAE,IAAI,MAAM,CAAC,WAAW,CAAC;IAC7B,QAAQ,EAAE,IAAI,MAAM,CAAC,UAAU,CAAC;EAChC;MAEW,gBAAgB,GAAG;IAC9B,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,MAAM;IACX,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,MAAM;IACX,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,MAAM;IACX,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,MAAM;IACX,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,GAAG;IACR,GAAG,EAAE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"}
@@ -1,9 +1,10 @@
1
1
  import { FormControl, FormGroup } from '@angular/forms';
2
2
  import * as moment from 'moment';
3
3
  import * as i0 from '@angular/core';
4
- import { Directive, Input, HostListener, EventEmitter, Output, NgModule, Pipe } from '@angular/core';
4
+ import { Directive, Input, HostListener, EventEmitter, Output, NgModule, Pipe, Injectable, Inject, PLATFORM_ID } from '@angular/core';
5
5
  import * as i1 from '@angular/common';
6
- import { CommonModule, DecimalPipe } from '@angular/common';
6
+ import { CommonModule, DecimalPipe, isPlatformBrowser, DOCUMENT } from '@angular/common';
7
+ import { BehaviorSubject, fromEvent, map } from 'rxjs';
7
8
 
8
9
  const FitRegexConst = {
9
10
  number: new RegExp(/^[0-9]\d*$/),
@@ -662,9 +663,147 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImpor
662
663
 
663
664
  // pipes
664
665
 
666
+ class FitAdapteService {
667
+ constructor(window) {
668
+ this.window = window;
669
+ this.sizeChanged = new BehaviorSubject({
670
+ width: this.window.innerWidth,
671
+ height: this.window.innerHeight
672
+ });
673
+ fromEvent(window, 'resize').pipe(map(event => ({
674
+ width: event.currentTarget['innerWidth'],
675
+ height: event.currentTarget['innerHeight']
676
+ }))).subscribe((windowSize) => {
677
+ this.sizeChanged.next(windowSize);
678
+ });
679
+ }
680
+ }
681
+ FitAdapteService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: FitAdapteService, deps: [{ token: 'windowObject' }], target: i0.ɵɵFactoryTarget.Injectable });
682
+ FitAdapteService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: FitAdapteService });
683
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: FitAdapteService, decorators: [{
684
+ type: Injectable
685
+ }], ctorParameters: function () { return [{ type: Window, decorators: [{
686
+ type: Inject,
687
+ args: ['windowObject']
688
+ }] }]; } });
689
+
690
+ class FitCookiesService {
691
+ constructor(document, platformId) {
692
+ this.document = document;
693
+ this.platformId = platformId;
694
+ this.documentIsAccessible = isPlatformBrowser(this.platformId);
695
+ }
696
+ check(name) {
697
+ if (!this.documentIsAccessible) {
698
+ return false;
699
+ }
700
+ name = encodeURIComponent(name);
701
+ const regExp = this.getCookieRegExp(name);
702
+ const exists = regExp.test(this.document.cookie);
703
+ return exists;
704
+ }
705
+ get(name) {
706
+ if (this.documentIsAccessible && this.check(name)) {
707
+ name = encodeURIComponent(name);
708
+ const regExp = this.getCookieRegExp(name);
709
+ const result = regExp.exec(this.document.cookie);
710
+ return this.safeDecodeURIComponent(result[1]);
711
+ }
712
+ else {
713
+ return '';
714
+ }
715
+ }
716
+ getAll() {
717
+ if (!this.documentIsAccessible) {
718
+ return {};
719
+ }
720
+ const cookies = {};
721
+ const document = this.document;
722
+ if (document.cookie && document.cookie !== '') {
723
+ document.cookie.split(';').forEach((currentCookie) => {
724
+ const [cookieName, cookieValue] = currentCookie.split('=');
725
+ cookies[this.safeDecodeURIComponent(cookieName.replace(/^ /, ''))] = this.safeDecodeURIComponent(cookieValue);
726
+ });
727
+ }
728
+ return cookies;
729
+ }
730
+ set(name, value, expires, path, domain, secure, sameSite = 'Lax') {
731
+ if (!this.documentIsAccessible) {
732
+ return;
733
+ }
734
+ let cookieString = encodeURIComponent(name) + '=' + encodeURIComponent(value) + ';';
735
+ if (expires) {
736
+ if (typeof expires === 'number') {
737
+ const dateExpires = new Date(new Date().getTime() + expires * 1000 * 60 * 60 * 24);
738
+ cookieString += 'expires=' + dateExpires.toUTCString() + ';';
739
+ }
740
+ else {
741
+ cookieString += 'expires=' + expires.toUTCString() + ';';
742
+ }
743
+ }
744
+ if (path) {
745
+ cookieString += 'path=' + path + ';';
746
+ }
747
+ if (domain) {
748
+ cookieString += 'domain=' + domain + ';';
749
+ }
750
+ if (secure === false && sameSite === 'None') {
751
+ secure = true;
752
+ }
753
+ if (secure) {
754
+ cookieString += 'secure;';
755
+ }
756
+ cookieString += 'sameSite=' + sameSite + ';';
757
+ this.document.cookie = cookieString;
758
+ }
759
+ delete(name, path, domain, secure, sameSite = 'Lax') {
760
+ if (!this.documentIsAccessible) {
761
+ return;
762
+ }
763
+ this.set(name, '', new Date('Thu, 01 Jan 1970 00:00:01 GMT'), path, domain, secure, sameSite);
764
+ }
765
+ deleteAll(path, domain, secure, sameSite = 'Lax') {
766
+ if (!this.documentIsAccessible) {
767
+ return;
768
+ }
769
+ const cookies = this.getAll();
770
+ for (const cookieName in cookies) {
771
+ if (cookies.hasOwnProperty(cookieName)) {
772
+ this.delete(cookieName, path, domain, secure, sameSite);
773
+ }
774
+ }
775
+ }
776
+ getCookieRegExp(name) {
777
+ const escapedName = name.replace(/([\[\]\{\}\(\)\|\=\;\+\?\,\.\*\^\$])/gi, '\\$1');
778
+ return new RegExp('(?:^' + escapedName + '|;\\s*' + escapedName + ')=(.*?)(?:;|$)', 'g');
779
+ }
780
+ safeDecodeURIComponent(encodedURIComponent) {
781
+ try {
782
+ return decodeURIComponent(encodedURIComponent);
783
+ }
784
+ catch {
785
+ return encodedURIComponent;
786
+ }
787
+ }
788
+ }
789
+ FitCookiesService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: FitCookiesService, deps: [{ token: DOCUMENT }, { token: PLATFORM_ID }], target: i0.ɵɵFactoryTarget.Injectable });
790
+ FitCookiesService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: FitCookiesService, providedIn: 'root' });
791
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: FitCookiesService, decorators: [{
792
+ type: Injectable,
793
+ args: [{ providedIn: 'root' }]
794
+ }], ctorParameters: function () { return [{ type: undefined, decorators: [{
795
+ type: Inject,
796
+ args: [DOCUMENT]
797
+ }] }, { type: i0.InjectionToken, decorators: [{
798
+ type: Inject,
799
+ args: [PLATFORM_ID]
800
+ }] }]; } });
801
+
802
+ // service
803
+
665
804
  /**
666
805
  * Generated bundle index. Do not edit.
667
806
  */
668
807
 
669
- export { ControlErrorDirective, FitCurrencyConst, FitDirectiveModule, FitFormUtil, FitGeneralUtil, FitMoneyPipe, FitPipeModule, FitRegexConst, FitValidateUtil, HoverDirective, InputDirective, ScrollDirective, SensitiveDirective };
808
+ export { ControlErrorDirective, FitAdapteService, FitCookiesService, FitCurrencyConst, FitDirectiveModule, FitFormUtil, FitGeneralUtil, FitMoneyPipe, FitPipeModule, FitRegexConst, FitValidateUtil, HoverDirective, InputDirective, ScrollDirective, SensitiveDirective };
670
809
  //# sourceMappingURL=fitcoders-shared.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"fitcoders-shared.mjs","sources":["../../../projects/shared/src/lib/constant/shared.const.ts","../../../projects/shared/src/lib/helper/fit-general.util.ts","../../../projects/shared/src/lib/helper/fit-form.util.ts","../../../projects/shared/src/lib/helper/fit-validate.util.ts","../../../projects/shared/src/lib/helper/helper-api.ts","../../../projects/shared/src/lib/directive/directives/hover.directive.ts","../../../projects/shared/src/lib/directive/directives/input.directive.ts","../../../projects/shared/src/lib/directive/directives/scroll.directive.ts","../../../projects/shared/src/lib/directive/directives/sensitive.directive.ts","../../../projects/shared/src/lib/directive/directives/control-error.directive.ts","../../../projects/shared/src/lib/directive/fit-directive.module.ts","../../../projects/shared/src/lib/directive/directive-api.ts","../../../projects/shared/src/lib/pipe/pipes/fit-money.pipe.ts","../../../projects/shared/src/lib/pipe/fit-pipe.module.ts","../../../projects/shared/src/lib/pipe/pipe-api.ts","../../../projects/shared/src/fitcoders-shared.ts"],"sourcesContent":["export const FitRegexConst = {\r\n number: new RegExp(/^[0-9]\\d*$/),\r\n decimal: new RegExp(/^[0-9]+(\\.[0-9]*){0,1}$/),\r\n percent: new RegExp(/^[1-9][0-9]*$/),\r\n alphabetical: /^[a-zA-Z\\u00C0-\\u00FF]+$/,\r\n alphabeticals: /^[a-zA-Z\\u00C0-\\u00FF ]+$/,\r\n alphanumeric: new RegExp(/^[0-9a-zA-Z\\u00C0-\\u00FF]+$/),\r\n alphanumerics: new RegExp(/^[0-9a-zA-Z\\u00C0-\\u00FF ]+$/),\r\n cell: new RegExp(/^9[0-9]*$/),\r\n noSpaces: new RegExp(/^\\S*$/gmi)\r\n};\r\n\r\nexport const FitCurrencyConst = {\r\n AED: 'د.إ',\r\n AFN: '؋',\r\n ALL: 'L',\r\n AMD: '֏',\r\n ANG: 'ƒ',\r\n AOA: 'Kz',\r\n ARS: '$',\r\n AUD: '$',\r\n AWG: 'ƒ',\r\n AZN: '₼',\r\n BAM: 'KM',\r\n BBD: '$',\r\n BDT: '৳',\r\n BGN: 'лв',\r\n BHD: '.د.ب',\r\n BIF: 'FBu',\r\n BMD: '$',\r\n BND: '$',\r\n BOB: '$b',\r\n BOV: 'BOV',\r\n BRL: 'R$',\r\n BSD: '$',\r\n BTC: '₿',\r\n BTN: 'Nu.',\r\n BWP: 'P',\r\n BYN: 'Br',\r\n BYR: 'Br',\r\n BZD: 'BZ$',\r\n CAD: '$',\r\n CDF: 'FC',\r\n CHE: 'CHE',\r\n CHF: 'CHF',\r\n CHW: 'CHW',\r\n CLF: 'CLF',\r\n CLP: '$',\r\n CNY: '¥',\r\n COP: '$',\r\n COU: 'COU',\r\n CRC: '₡',\r\n CUC: '$',\r\n CUP: '₱',\r\n CVE: '$',\r\n CZK: 'Kč',\r\n DJF: 'Fdj',\r\n DKK: 'kr',\r\n DOP: 'RD$',\r\n DZD: 'دج',\r\n EEK: 'kr',\r\n EGP: '£',\r\n ERN: 'Nfk',\r\n ETB: 'Br',\r\n ETH: 'Ξ',\r\n EUR: '€',\r\n FJD: '$',\r\n FKP: '£',\r\n GBP: '£',\r\n GEL: '₾',\r\n GGP: '£',\r\n GHC: '₵',\r\n GHS: 'GH₵',\r\n GIP: '£',\r\n GMD: 'D',\r\n GNF: 'FG',\r\n GTQ: 'Q',\r\n GYD: '$',\r\n HKD: '$',\r\n HNL: 'L',\r\n HRK: 'kn',\r\n HTG: 'G',\r\n HUF: 'Ft',\r\n IDR: 'Rp',\r\n ILS: '₪',\r\n IMP: '£',\r\n INR: '₹',\r\n IQD: 'ع.د',\r\n IRR: '﷼',\r\n ISK: 'kr',\r\n JEP: '£',\r\n JMD: 'J$',\r\n JOD: 'JD',\r\n JPY: '¥',\r\n KES: 'KSh',\r\n KGS: 'лв',\r\n KHR: '៛',\r\n KMF: 'CF',\r\n KPW: '₩',\r\n KRW: '₩',\r\n KWD: 'KD',\r\n KYD: '$',\r\n KZT: '₸',\r\n LAK: '₭',\r\n LBP: '£',\r\n LKR: '₨',\r\n LRD: '$',\r\n LSL: 'M',\r\n LTC: 'Ł',\r\n LTL: 'Lt',\r\n LVL: 'Ls',\r\n LYD: 'LD',\r\n MAD: 'MAD',\r\n MDL: 'lei',\r\n MGA: 'Ar',\r\n MKD: 'ден',\r\n MMK: 'K',\r\n MNT: '₮',\r\n MOP: 'MOP$',\r\n MRO: 'UM',\r\n MRU: 'UM',\r\n MUR: '₨',\r\n MVR: 'Rf',\r\n MWK: 'MK',\r\n MXN: '$',\r\n MXV: 'MXV',\r\n MYR: 'RM',\r\n MZN: 'MT',\r\n NAD: '$',\r\n NGN: '₦',\r\n NIO: 'C$',\r\n NOK: 'kr',\r\n NPR: '₨',\r\n NZD: '$',\r\n OMR: '﷼',\r\n PAB: 'B/.',\r\n PEN: 'S/.',\r\n PGK: 'K',\r\n PHP: '₱',\r\n PKR: '₨',\r\n PLN: 'zł',\r\n PYG: 'Gs',\r\n QAR: '﷼',\r\n RMB: '¥',\r\n RON: 'lei',\r\n RSD: 'Дин.',\r\n RUB: '₽',\r\n RWF: 'R₣',\r\n SAR: '﷼',\r\n SBD: '$',\r\n SCR: '₨',\r\n SDG: 'ج.س.',\r\n SEK: 'kr',\r\n SGD: 'S$',\r\n SHP: '£',\r\n SLL: 'Le',\r\n SOS: 'S',\r\n SRD: '$',\r\n SSP: '£',\r\n STD: 'Db',\r\n STN: 'Db',\r\n SVC: '$',\r\n SYP: '£',\r\n SZL: 'E',\r\n THB: '฿',\r\n TJS: 'SM',\r\n TMT: 'T',\r\n TND: 'د.ت',\r\n TOP: 'T$',\r\n TRL: '₤',\r\n TRY: '₺',\r\n TTD: 'TT$',\r\n TVD: '$',\r\n TWD: 'NT$',\r\n TZS: 'TSh',\r\n UAH: '₴',\r\n UGX: 'USh',\r\n USD: '$',\r\n UYI: 'UYI',\r\n UYU: '$U',\r\n UYW: 'UYW',\r\n UZS: 'лв',\r\n VEF: 'Bs',\r\n VES: 'Bs.S',\r\n VND: '₫',\r\n VUV: 'VT',\r\n WST: 'WS$',\r\n XAF: 'FCFA',\r\n XBT: 'Ƀ',\r\n XCD: '$',\r\n XOF: 'CFA',\r\n XPF: '₣',\r\n XSU: 'Sucre',\r\n XUA: 'XUA',\r\n YER: '﷼',\r\n ZAR: 'R',\r\n ZMW: 'ZK',\r\n ZWD: 'Z$',\r\n ZWL: '$'\r\n};\r\n","export class FitGeneralUtil {\r\n\r\n public static randomString(_length: number = 10) {\r\n const chars = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXTZ';\r\n const stringLength = _length;\r\n let randomstring = '';\r\n for (let i = 0; i < stringLength; i++) {\r\n const rnum = Math.floor(Math.random() * chars.length);\r\n randomstring += chars.substring(rnum, rnum + 1);\r\n }\r\n return randomstring;\r\n }\r\n}\r\n","import {FormArray, FormControl, FormGroup} from '@angular/forms';\r\n\r\nexport class FitFormUtil {\r\n\r\n public static validateAllFormFields(formGroup: FormGroup): FormGroup {\r\n Object.keys(formGroup.controls).forEach(field => {\r\n const control = formGroup.get(field);\r\n if (control instanceof FormControl) {\r\n if (control.errors && control.errors['required']) {\r\n control.markAsDirty({onlySelf: true});\r\n control.markAsTouched({onlySelf: true});\r\n control.updateValueAndValidity();\r\n }\r\n } else if (control instanceof FormGroup) {\r\n this.validateAllFormFields(control);\r\n }\r\n });\r\n return formGroup;\r\n }\r\n\r\n public static validateFormArray(forms: FormArray): FormArray {\r\n forms.controls.forEach(form => {\r\n FitFormUtil.validateAllFormFields(form as FormGroup);\r\n });\r\n return forms;\r\n }\r\n\r\n public static validateField(control: FormControl): FormControl {\r\n if (control.errors && control.errors['required']) {\r\n control.markAsDirty({onlySelf: true});\r\n control.markAsTouched({onlySelf: true});\r\n control.updateValueAndValidity();\r\n }\r\n return control;\r\n }\r\n}\r\n","import * as moment from 'moment';\r\n\r\nexport class FitValidateUtil {\r\n\r\n public static toString(_value: any, _case: 'standar' | 'upper' | 'lower' = 'standar', _resInvalid = ''): string {\r\n if (_value && _value.toString().trim()) {\r\n if (_case === 'upper' || _case === 'lower') {\r\n return (_case === 'upper' ? _value.toString().trim().toUpperCase() : _value.toString().trim().toLowerCase());\r\n }\r\n return _value.toString().trim();\r\n }\r\n return _resInvalid;\r\n }\r\n\r\n public static toNumber(_value: string | number, _resInvalid = null): number {\r\n if (_value && !!Number(_value)) {\r\n return Number(_value);\r\n }\r\n return _resInvalid;\r\n }\r\n\r\n public static toBoolean(_value: boolean, _resInvalid = false): boolean {\r\n if (_value !== undefined && _value !== null) {\r\n return _value;\r\n }\r\n return _resInvalid;\r\n }\r\n\r\n public static toDate(_value: any, _format = '', _resInvalid = null): Date {\r\n if (_value && moment(_value, _format).isValid()) {\r\n return moment(_value, _format).toDate();\r\n }\r\n return _resInvalid;\r\n }\r\n\r\n public static toArray(_value: any, _resInvalid = []): Array<any> {\r\n if (_value instanceof Array) {\r\n return _value;\r\n }\r\n return _resInvalid;\r\n }\r\n\r\n public static dateToString(_value: any, _format = '', _resInvalid = ''): string {\r\n if (_value && moment(_value).isValid()) {\r\n if (_format) {\r\n return moment(_value).format(_format);\r\n }\r\n return moment(_value).toISOString();\r\n }\r\n return _resInvalid;\r\n }\r\n\r\n public static charToBoolean(value: string, charYes = 'S'): boolean {\r\n return value === charYes;\r\n }\r\n\r\n public static booleanToBinary(value: boolean): number {\r\n return value ? 1 : 0;\r\n }\r\n\r\n public static booleanToChar(value: boolean, charYes: string | number = 'S', charNo: string | number = 'N'): string | number {\r\n return value ? charYes : charNo;\r\n }\r\n\r\n public static padStart(value: number | string, size: number) {\r\n let resp = `${value}`;\r\n while (resp.length < size) {\r\n resp = `0${resp}`;\r\n }\r\n return resp;\r\n }\r\n\r\n public static numberReduce(value: number): string {\r\n if (value >= 1000 && value <= 999999) {\r\n return `${Math.round(value / 1000)}K`;\r\n } else if (value >= 1000000) {\r\n return `${Math.round(value / 1000000)}M`;\r\n }\r\n return `${value}`;\r\n }\r\n}\r\n","// helper\nexport * from './fit-general.util';\nexport * from './fit-form.util';\nexport * from './fit-validate.util';\n","import {Directive, ElementRef, HostListener, Input} from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[fitHover]'\r\n})\r\nexport class HoverDirective {\r\n @Input('fitHover') hover = '';\r\n\r\n constructor(private readonly elementRef: ElementRef) {\r\n }\r\n\r\n @HostListener('mouseenter') onMouseEnter() {\r\n this.setHoverEffect();\r\n }\r\n\r\n @HostListener('mouseleave') onMouseLeave() {\r\n this.removeHoverEffect();\r\n }\r\n\r\n private setHoverEffect() {\r\n for (const _class of this.hover.split(' ')) {\r\n this.elementRef.nativeElement.classList.add(_class);\r\n }\r\n }\r\n\r\n private removeHoverEffect() {\r\n for (const _class of this.hover.split(' ')) {\r\n this.elementRef.nativeElement.classList.remove(_class);\r\n }\r\n }\r\n}\r\n","import {Directive, ElementRef, HostListener, Input} from '@angular/core';\r\nimport {FitRegexConst} from '../../constant/shared.const';\r\n\r\nexport type FitPattern = '' | 'number' | 'decimal' | 'percent' | 'alphabetical' | 'alphanumeric' | 'cell' | 'noSpaces';\r\n\r\n@Directive({\r\n selector: '[fitInput]'\r\n})\r\nexport class InputDirective {\r\n @Input('fitInput') input: FitPattern = '';\r\n @Input() space = false;\r\n\r\n private _regex: any = FitRegexConst;\r\n private _specialKeys = ['Backspace', 'Tab', 'Enter', 'Escape', 'End', 'Home', 'ArrowLeft', 'ArrowRight', 'Delete'];\r\n\r\n constructor(private el: ElementRef) {\r\n }\r\n\r\n @HostListener('keydown', ['$event'])\r\n onKeyDown(event: KeyboardEvent) {\r\n if (!this.input) {\r\n return;\r\n }\r\n if (this._specialKeys.indexOf(event.key) !== -1\r\n || (event.keyCode === 65 && event.ctrlKey) // Allow: Ctrl+A\r\n || (event.keyCode === 67 && event.ctrlKey) // Allow: Ctrl+C\r\n || (event.keyCode === 86 && event.ctrlKey) // Allow: Ctrl+V\r\n || (event.keyCode === 88 && event.ctrlKey) // Allow: Ctrl+X\r\n ) {\r\n return;\r\n }\r\n\r\n const current: string = this.el.nativeElement.value;\r\n const next: string = current.concat(event.key);\r\n const input = this.space && (this.input === 'alphabetical' || this.input === 'alphanumeric') ? `${this.input}s` : this.input;\r\n if (next && !String(next).match(this._regex[input])) {\r\n event.preventDefault();\r\n }\r\n }\r\n}\r\n","import {Directive, HostListener, Output, EventEmitter, Input} from '@angular/core';\r\n\r\nexport type SE = {\r\n header: boolean,\r\n bottom: boolean\r\n};\r\n\r\ndeclare const window: Window;\r\n\r\n@Directive({\r\n selector: '[fitScroll]'\r\n})\r\n\r\nexport class ScrollDirective {\r\n @Output() public onScroll = new EventEmitter<SE>();\r\n\r\n constructor() {\r\n }\r\n\r\n @HostListener('scroll', ['$event'])\r\n public scrolled($event: Event) {\r\n this.elementSE($event);\r\n }\r\n\r\n @HostListener('window:scroll', ['$event'])\r\n public windowScrolled($event: Event) {\r\n this.windowSE($event);\r\n }\r\n\r\n protected windowSE($event: Event) {\r\n const target = <Document> $event.target;\r\n const scrollTop = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0;\r\n const header = scrollTop < 200;\r\n const bottom = scrollTop > 200;\r\n const emitVal: SE = {header, bottom};\r\n this.onScroll.emit(emitVal);\r\n }\r\n\r\n protected elementSE($event: Event) {\r\n const target = <HTMLElement> $event.target;\r\n const header = target.scrollTop < 200;\r\n const bottom = target.scrollTop > 200;\r\n const emitVal: SE = {header, bottom};\r\n this.onScroll.emit(emitVal);\r\n }\r\n\r\n}\r\n","import {Directive, ElementRef, HostListener, Input} from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[fitSensitive]'\r\n})\r\nexport class SensitiveDirective {\r\n @Input('fitSensitive') caseType: 'upper' | 'lower' | '' = '';\r\n\r\n constructor(private _el: ElementRef) {\r\n }\r\n\r\n @HostListener('input', ['$event']) onKeyUp(event: any) {\r\n const value = event.target.value;\r\n if (this.caseType === 'upper') {\r\n event.target.value = value.toUpperCase();\r\n } else if (this.caseType === 'lower') {\r\n event.target.value = value.toLowerCase();\r\n }\r\n }\r\n}\r\n","import {AfterViewInit, Directive, ElementRef, Input, Renderer2} from '@angular/core';\r\nimport {AbstractControl} from '@angular/forms';\r\n\r\n@Directive({\r\n selector: '[fitControlError]'\r\n})\r\nexport class ControlErrorDirective implements AfterViewInit {\r\n private FORMAT = 'DD/MM/YYYY';\r\n private _control: AbstractControl | undefined;\r\n\r\n @Input() msgRequired = 'El campo es obligatorio';\r\n @Input() msgMinlength = 'Ingrese mínimo {requiredLength} caracteres';\r\n @Input() msgMaxlength = 'Ingrese máximo {requiredLength} caracteres';\r\n @Input() msgPattern = 'El formato del valor es inválido';\r\n @Input() msgInvalidDate = 'La fecha es inválida';\r\n @Input() msgMinDate = 'La fecha mínima es {minDate}';\r\n @Input() msgMaxDate = 'La fecha máxima es {maxDate}';\r\n\r\n @Input()\r\n set control(value: AbstractControl) {\r\n this._control = value;\r\n this._control.valueChanges.subscribe(() => {\r\n this.loadError();\r\n });\r\n }\r\n\r\n get control(): AbstractControl {\r\n return <AbstractControl>this._control;\r\n }\r\n\r\n constructor(private readonly _elementRef: ElementRef,\r\n private readonly render2: Renderer2) {\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.removeHtml();\r\n }\r\n\r\n private loadError() {\r\n if (this.control && (this.control.dirty || this.control.touched) && this.control.errors) {\r\n this.removeHtml();\r\n if (this.control.errors['required'] && !this.control.errors['matDatepickerParse']) {\r\n this.createHtml(this.msgRequired);\r\n } else if (this.control.errors['minlength']) {\r\n this.createHtml(this.msgMinlength.replace('{requiredLength}', this.control.errors['minlength'].requiredLength));\r\n } else if (this.control.errors['maxlength'] && !this.control.errors['minlength']) {\r\n this.createHtml(this.msgMaxlength.replace('{requiredLength}', this.control.errors['maxlength'].requiredLength));\r\n } else if (this.control.errors['pattern'] && !this.control.errors['maxlength'] && !this.control.errors['minlength']) {\r\n this.createHtml(this.msgPattern);\r\n } else if (this.control.errors['matDatepickerParse'] && this.control.errors['matDatepickerParse'].text) {\r\n this.createHtml(this.msgInvalidDate);\r\n } else if (this.control.errors['matDatepickerMin'] && this.control.errors['matDatepickerMin'].min) {\r\n const minDate = this.control.errors['matDatepickerMin'].min.format(this.FORMAT);\r\n this.createHtml(this.msgMinDate.replace('{minDate}', minDate));\r\n } else if (this.control.errors['matDatepickerMax'] && this.control.errors['matDatepickerMax'].max) {\r\n const maxDate = this.control.errors['matDatepickerMax'].max.format(this.FORMAT);\r\n this.createHtml(this.msgMaxDate.replace('{maxDate}', maxDate));\r\n }\r\n }\r\n }\r\n\r\n private removeHtml() {\r\n if (this._elementRef.nativeElement.firstChild) {\r\n this._elementRef.nativeElement.removeChild(this._elementRef.nativeElement.firstChild);\r\n }\r\n }\r\n\r\n private createHtml(message: string) {\r\n this.render2.setProperty(this._elementRef.nativeElement, 'innerHTML', message);\r\n }\r\n}\r\n","import {NgModule} from '@angular/core';\r\nimport {CommonModule} from '@angular/common';\r\nimport {InputDirective} from './directives/input.directive';\r\nimport {SensitiveDirective} from './directives/sensitive.directive';\r\nimport {ControlErrorDirective} from './directives/control-error.directive';\r\nimport {ScrollDirective} from \"./directives/scroll.directive\";\r\nimport {HoverDirective} from './directives/hover.directive';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule\r\n ],\r\n declarations: [\r\n InputDirective,\r\n SensitiveDirective,\r\n ControlErrorDirective,\r\n ScrollDirective,\r\n HoverDirective\r\n ],\r\n exports: [\r\n InputDirective,\r\n SensitiveDirective,\r\n ControlErrorDirective,\r\n ScrollDirective,\r\n HoverDirective\r\n ],\r\n providers: []\r\n})\r\nexport class FitDirectiveModule {\r\n}\r\n","// directives\nexport * from './directives/hover.directive';\nexport * from './directives/input.directive';\nexport * from './directives/scroll.directive';\nexport * from './directives/sensitive.directive';\nexport * from './directives/control-error.directive';\n\n// modules\nexport * from './fit-directive.module';\n","import {DecimalPipe} from '@angular/common';\nimport {Pipe, PipeTransform} from '@angular/core';\nimport {FitCurrencyConst, FitRegexConst} from '../../constant/shared.const';\n\n@Pipe({\n name: 'fitMoney'\n})\nexport class FitMoneyPipe implements PipeTransform {\n private _currency: any = FitCurrencyConst;\n private _defaultCurrency = 'PEN';\n private _defaultDecimal = 2;\n\n constructor(private readonly decimalPipe: DecimalPipe) {\n }\n\n transform(value: number | string, currency = this._defaultCurrency, decimal = this._defaultDecimal): string {\n const format = `.${decimal}-${decimal}`;\n if (value && `${value}`.match(FitRegexConst.decimal)) {\n return `${this._currency[currency]} ${this.decimalPipe.transform(Number(value), (format))}`;\n }\n return `${this._currency[currency]} ${this.decimalPipe.transform(0, (format))}`;\n }\n}\n","import {NgModule} from '@angular/core';\nimport {CommonModule, DecimalPipe} from '@angular/common';\nimport {FitMoneyPipe} from './pipes/fit-money.pipe';\n\n@NgModule({\n imports: [\n CommonModule\n ],\n declarations: [\n FitMoneyPipe\n ],\n exports: [\n FitMoneyPipe\n ],\n providers: [\n DecimalPipe\n ]\n})\nexport class FitPipeModule {\n}\n","// pipes\nexport * from './pipes/fit-money.pipe';\n\n// modules\nexport * from './fit-pipe.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;;MAAa,aAAa,GAAG;IAC3B,MAAM,EAAE,IAAI,MAAM,CAAC,YAAY,CAAC;IAChC,OAAO,EAAE,IAAI,MAAM,CAAC,yBAAyB,CAAC;IAC9C,OAAO,EAAE,IAAI,MAAM,CAAC,eAAe,CAAC;IACpC,YAAY,EAAE,0BAA0B;IACxC,aAAa,EAAE,2BAA2B;IAC1C,YAAY,EAAE,IAAI,MAAM,CAAC,6BAA6B,CAAC;IACvD,aAAa,EAAE,IAAI,MAAM,CAAC,8BAA8B,CAAC;IACzD,IAAI,EAAE,IAAI,MAAM,CAAC,WAAW,CAAC;IAC7B,QAAQ,EAAE,IAAI,MAAM,CAAC,UAAU,CAAC;EAChC;MAEW,gBAAgB,GAAG;IAC9B,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,MAAM;IACX,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,MAAM;IACX,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,MAAM;IACX,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,MAAM;IACX,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,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"}
1
+ {"version":3,"file":"fitcoders-shared.mjs","sources":["../../../projects/shared/src/lib/constant/shared.const.ts","../../../projects/shared/src/lib/helper/fit-general.util.ts","../../../projects/shared/src/lib/helper/fit-form.util.ts","../../../projects/shared/src/lib/helper/fit-validate.util.ts","../../../projects/shared/src/lib/helper/helper-api.ts","../../../projects/shared/src/lib/directive/directives/hover.directive.ts","../../../projects/shared/src/lib/directive/directives/input.directive.ts","../../../projects/shared/src/lib/directive/directives/scroll.directive.ts","../../../projects/shared/src/lib/directive/directives/sensitive.directive.ts","../../../projects/shared/src/lib/directive/directives/control-error.directive.ts","../../../projects/shared/src/lib/directive/fit-directive.module.ts","../../../projects/shared/src/lib/directive/directive-api.ts","../../../projects/shared/src/lib/pipe/pipes/fit-money.pipe.ts","../../../projects/shared/src/lib/pipe/fit-pipe.module.ts","../../../projects/shared/src/lib/pipe/pipe-api.ts","../../../projects/shared/src/lib/service/fit-adapte.service.ts","../../../projects/shared/src/lib/service/fit-cookies.service.ts","../../../projects/shared/src/lib/service/service-api.ts","../../../projects/shared/src/fitcoders-shared.ts"],"sourcesContent":["export const FitRegexConst = {\r\n number: new RegExp(/^[0-9]\\d*$/),\r\n decimal: new RegExp(/^[0-9]+(\\.[0-9]*){0,1}$/),\r\n percent: new RegExp(/^[1-9][0-9]*$/),\r\n alphabetical: /^[a-zA-Z\\u00C0-\\u00FF]+$/,\r\n alphabeticals: /^[a-zA-Z\\u00C0-\\u00FF ]+$/,\r\n alphanumeric: new RegExp(/^[0-9a-zA-Z\\u00C0-\\u00FF]+$/),\r\n alphanumerics: new RegExp(/^[0-9a-zA-Z\\u00C0-\\u00FF ]+$/),\r\n cell: new RegExp(/^9[0-9]*$/),\r\n noSpaces: new RegExp(/^\\S*$/gmi)\r\n};\r\n\r\nexport const FitCurrencyConst = {\r\n AED: 'د.إ',\r\n AFN: '؋',\r\n ALL: 'L',\r\n AMD: '֏',\r\n ANG: 'ƒ',\r\n AOA: 'Kz',\r\n ARS: '$',\r\n AUD: '$',\r\n AWG: 'ƒ',\r\n AZN: '₼',\r\n BAM: 'KM',\r\n BBD: '$',\r\n BDT: '৳',\r\n BGN: 'лв',\r\n BHD: '.د.ب',\r\n BIF: 'FBu',\r\n BMD: '$',\r\n BND: '$',\r\n BOB: '$b',\r\n BOV: 'BOV',\r\n BRL: 'R$',\r\n BSD: '$',\r\n BTC: '₿',\r\n BTN: 'Nu.',\r\n BWP: 'P',\r\n BYN: 'Br',\r\n BYR: 'Br',\r\n BZD: 'BZ$',\r\n CAD: '$',\r\n CDF: 'FC',\r\n CHE: 'CHE',\r\n CHF: 'CHF',\r\n CHW: 'CHW',\r\n CLF: 'CLF',\r\n CLP: '$',\r\n CNY: '¥',\r\n COP: '$',\r\n COU: 'COU',\r\n CRC: '₡',\r\n CUC: '$',\r\n CUP: '₱',\r\n CVE: '$',\r\n CZK: 'Kč',\r\n DJF: 'Fdj',\r\n DKK: 'kr',\r\n DOP: 'RD$',\r\n DZD: 'دج',\r\n EEK: 'kr',\r\n EGP: '£',\r\n ERN: 'Nfk',\r\n ETB: 'Br',\r\n ETH: 'Ξ',\r\n EUR: '€',\r\n FJD: '$',\r\n FKP: '£',\r\n GBP: '£',\r\n GEL: '₾',\r\n GGP: '£',\r\n GHC: '₵',\r\n GHS: 'GH₵',\r\n GIP: '£',\r\n GMD: 'D',\r\n GNF: 'FG',\r\n GTQ: 'Q',\r\n GYD: '$',\r\n HKD: '$',\r\n HNL: 'L',\r\n HRK: 'kn',\r\n HTG: 'G',\r\n HUF: 'Ft',\r\n IDR: 'Rp',\r\n ILS: '₪',\r\n IMP: '£',\r\n INR: '₹',\r\n IQD: 'ع.د',\r\n IRR: '﷼',\r\n ISK: 'kr',\r\n JEP: '£',\r\n JMD: 'J$',\r\n JOD: 'JD',\r\n JPY: '¥',\r\n KES: 'KSh',\r\n KGS: 'лв',\r\n KHR: '៛',\r\n KMF: 'CF',\r\n KPW: '₩',\r\n KRW: '₩',\r\n KWD: 'KD',\r\n KYD: '$',\r\n KZT: '₸',\r\n LAK: '₭',\r\n LBP: '£',\r\n LKR: '₨',\r\n LRD: '$',\r\n LSL: 'M',\r\n LTC: 'Ł',\r\n LTL: 'Lt',\r\n LVL: 'Ls',\r\n LYD: 'LD',\r\n MAD: 'MAD',\r\n MDL: 'lei',\r\n MGA: 'Ar',\r\n MKD: 'ден',\r\n MMK: 'K',\r\n MNT: '₮',\r\n MOP: 'MOP$',\r\n MRO: 'UM',\r\n MRU: 'UM',\r\n MUR: '₨',\r\n MVR: 'Rf',\r\n MWK: 'MK',\r\n MXN: '$',\r\n MXV: 'MXV',\r\n MYR: 'RM',\r\n MZN: 'MT',\r\n NAD: '$',\r\n NGN: '₦',\r\n NIO: 'C$',\r\n NOK: 'kr',\r\n NPR: '₨',\r\n NZD: '$',\r\n OMR: '﷼',\r\n PAB: 'B/.',\r\n PEN: 'S/.',\r\n PGK: 'K',\r\n PHP: '₱',\r\n PKR: '₨',\r\n PLN: 'zł',\r\n PYG: 'Gs',\r\n QAR: '﷼',\r\n RMB: '¥',\r\n RON: 'lei',\r\n RSD: 'Дин.',\r\n RUB: '₽',\r\n RWF: 'R₣',\r\n SAR: '﷼',\r\n SBD: '$',\r\n SCR: '₨',\r\n SDG: 'ج.س.',\r\n SEK: 'kr',\r\n SGD: 'S$',\r\n SHP: '£',\r\n SLL: 'Le',\r\n SOS: 'S',\r\n SRD: '$',\r\n SSP: '£',\r\n STD: 'Db',\r\n STN: 'Db',\r\n SVC: '$',\r\n SYP: '£',\r\n SZL: 'E',\r\n THB: '฿',\r\n TJS: 'SM',\r\n TMT: 'T',\r\n TND: 'د.ت',\r\n TOP: 'T$',\r\n TRL: '₤',\r\n TRY: '₺',\r\n TTD: 'TT$',\r\n TVD: '$',\r\n TWD: 'NT$',\r\n TZS: 'TSh',\r\n UAH: '₴',\r\n UGX: 'USh',\r\n USD: '$',\r\n UYI: 'UYI',\r\n UYU: '$U',\r\n UYW: 'UYW',\r\n UZS: 'лв',\r\n VEF: 'Bs',\r\n VES: 'Bs.S',\r\n VND: '₫',\r\n VUV: 'VT',\r\n WST: 'WS$',\r\n XAF: 'FCFA',\r\n XBT: 'Ƀ',\r\n XCD: '$',\r\n XOF: 'CFA',\r\n XPF: '₣',\r\n XSU: 'Sucre',\r\n XUA: 'XUA',\r\n YER: '﷼',\r\n ZAR: 'R',\r\n ZMW: 'ZK',\r\n ZWD: 'Z$',\r\n ZWL: '$'\r\n};\r\n","export class FitGeneralUtil {\r\n\r\n public static randomString(_length: number = 10) {\r\n const chars = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXTZ';\r\n const stringLength = _length;\r\n let randomstring = '';\r\n for (let i = 0; i < stringLength; i++) {\r\n const rnum = Math.floor(Math.random() * chars.length);\r\n randomstring += chars.substring(rnum, rnum + 1);\r\n }\r\n return randomstring;\r\n }\r\n}\r\n","import {FormArray, FormControl, FormGroup} from '@angular/forms';\r\n\r\nexport class FitFormUtil {\r\n\r\n public static validateAllFormFields(formGroup: FormGroup): FormGroup {\r\n Object.keys(formGroup.controls).forEach(field => {\r\n const control = formGroup.get(field);\r\n if (control instanceof FormControl) {\r\n if (control.errors && control.errors['required']) {\r\n control.markAsDirty({onlySelf: true});\r\n control.markAsTouched({onlySelf: true});\r\n control.updateValueAndValidity();\r\n }\r\n } else if (control instanceof FormGroup) {\r\n this.validateAllFormFields(control);\r\n }\r\n });\r\n return formGroup;\r\n }\r\n\r\n public static validateFormArray(forms: FormArray): FormArray {\r\n forms.controls.forEach(form => {\r\n FitFormUtil.validateAllFormFields(form as FormGroup);\r\n });\r\n return forms;\r\n }\r\n\r\n public static validateField(control: FormControl): FormControl {\r\n if (control.errors && control.errors['required']) {\r\n control.markAsDirty({onlySelf: true});\r\n control.markAsTouched({onlySelf: true});\r\n control.updateValueAndValidity();\r\n }\r\n return control;\r\n }\r\n}\r\n","import * as moment from 'moment';\r\n\r\nexport class FitValidateUtil {\r\n\r\n public static toString(_value: any, _case: 'standar' | 'upper' | 'lower' = 'standar', _resInvalid = ''): string {\r\n if (_value && _value.toString().trim()) {\r\n if (_case === 'upper' || _case === 'lower') {\r\n return (_case === 'upper' ? _value.toString().trim().toUpperCase() : _value.toString().trim().toLowerCase());\r\n }\r\n return _value.toString().trim();\r\n }\r\n return _resInvalid;\r\n }\r\n\r\n public static toNumber(_value: string | number, _resInvalid = null): number {\r\n if (_value && !!Number(_value)) {\r\n return Number(_value);\r\n }\r\n return _resInvalid;\r\n }\r\n\r\n public static toBoolean(_value: boolean, _resInvalid = false): boolean {\r\n if (_value !== undefined && _value !== null) {\r\n return _value;\r\n }\r\n return _resInvalid;\r\n }\r\n\r\n public static toDate(_value: any, _format = '', _resInvalid = null): Date {\r\n if (_value && moment(_value, _format).isValid()) {\r\n return moment(_value, _format).toDate();\r\n }\r\n return _resInvalid;\r\n }\r\n\r\n public static toArray(_value: any, _resInvalid = []): Array<any> {\r\n if (_value instanceof Array) {\r\n return _value;\r\n }\r\n return _resInvalid;\r\n }\r\n\r\n public static dateToString(_value: any, _format = '', _resInvalid = ''): string {\r\n if (_value && moment(_value).isValid()) {\r\n if (_format) {\r\n return moment(_value).format(_format);\r\n }\r\n return moment(_value).toISOString();\r\n }\r\n return _resInvalid;\r\n }\r\n\r\n public static charToBoolean(value: string, charYes = 'S'): boolean {\r\n return value === charYes;\r\n }\r\n\r\n public static booleanToBinary(value: boolean): number {\r\n return value ? 1 : 0;\r\n }\r\n\r\n public static booleanToChar(value: boolean, charYes: string | number = 'S', charNo: string | number = 'N'): string | number {\r\n return value ? charYes : charNo;\r\n }\r\n\r\n public static padStart(value: number | string, size: number) {\r\n let resp = `${value}`;\r\n while (resp.length < size) {\r\n resp = `0${resp}`;\r\n }\r\n return resp;\r\n }\r\n\r\n public static numberReduce(value: number): string {\r\n if (value >= 1000 && value <= 999999) {\r\n return `${Math.round(value / 1000)}K`;\r\n } else if (value >= 1000000) {\r\n return `${Math.round(value / 1000000)}M`;\r\n }\r\n return `${value}`;\r\n }\r\n}\r\n","// helper\nexport * from './fit-general.util';\nexport * from './fit-form.util';\nexport * from './fit-validate.util';\n","import {Directive, ElementRef, HostListener, Input} from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[fitHover]'\r\n})\r\nexport class HoverDirective {\r\n @Input('fitHover') hover = '';\r\n\r\n constructor(private readonly elementRef: ElementRef) {\r\n }\r\n\r\n @HostListener('mouseenter') onMouseEnter() {\r\n this.setHoverEffect();\r\n }\r\n\r\n @HostListener('mouseleave') onMouseLeave() {\r\n this.removeHoverEffect();\r\n }\r\n\r\n private setHoverEffect() {\r\n for (const _class of this.hover.split(' ')) {\r\n this.elementRef.nativeElement.classList.add(_class);\r\n }\r\n }\r\n\r\n private removeHoverEffect() {\r\n for (const _class of this.hover.split(' ')) {\r\n this.elementRef.nativeElement.classList.remove(_class);\r\n }\r\n }\r\n}\r\n","import {Directive, ElementRef, HostListener, Input} from '@angular/core';\r\nimport {FitRegexConst} from '../../constant/shared.const';\r\n\r\nexport type FitPattern = '' | 'number' | 'decimal' | 'percent' | 'alphabetical' | 'alphanumeric' | 'cell' | 'noSpaces';\r\n\r\n@Directive({\r\n selector: '[fitInput]'\r\n})\r\nexport class InputDirective {\r\n @Input('fitInput') input: FitPattern = '';\r\n @Input() space = false;\r\n\r\n private _regex: any = FitRegexConst;\r\n private _specialKeys = ['Backspace', 'Tab', 'Enter', 'Escape', 'End', 'Home', 'ArrowLeft', 'ArrowRight', 'Delete'];\r\n\r\n constructor(private el: ElementRef) {\r\n }\r\n\r\n @HostListener('keydown', ['$event'])\r\n onKeyDown(event: KeyboardEvent) {\r\n if (!this.input) {\r\n return;\r\n }\r\n if (this._specialKeys.indexOf(event.key) !== -1\r\n || (event.keyCode === 65 && event.ctrlKey) // Allow: Ctrl+A\r\n || (event.keyCode === 67 && event.ctrlKey) // Allow: Ctrl+C\r\n || (event.keyCode === 86 && event.ctrlKey) // Allow: Ctrl+V\r\n || (event.keyCode === 88 && event.ctrlKey) // Allow: Ctrl+X\r\n ) {\r\n return;\r\n }\r\n\r\n const current: string = this.el.nativeElement.value;\r\n const next: string = current.concat(event.key);\r\n const input = this.space && (this.input === 'alphabetical' || this.input === 'alphanumeric') ? `${this.input}s` : this.input;\r\n if (next && !String(next).match(this._regex[input])) {\r\n event.preventDefault();\r\n }\r\n }\r\n}\r\n","import {Directive, HostListener, Output, EventEmitter, Input} from '@angular/core';\r\n\r\nexport type SE = {\r\n header: boolean,\r\n bottom: boolean\r\n};\r\n\r\ndeclare const window: Window;\r\n\r\n@Directive({\r\n selector: '[fitScroll]'\r\n})\r\n\r\nexport class ScrollDirective {\r\n @Output() public onScroll = new EventEmitter<SE>();\r\n\r\n constructor() {\r\n }\r\n\r\n @HostListener('scroll', ['$event'])\r\n public scrolled($event: Event) {\r\n this.elementSE($event);\r\n }\r\n\r\n @HostListener('window:scroll', ['$event'])\r\n public windowScrolled($event: Event) {\r\n this.windowSE($event);\r\n }\r\n\r\n protected windowSE($event: Event) {\r\n const target = <Document> $event.target;\r\n const scrollTop = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0;\r\n const header = scrollTop < 200;\r\n const bottom = scrollTop > 200;\r\n const emitVal: SE = {header, bottom};\r\n this.onScroll.emit(emitVal);\r\n }\r\n\r\n protected elementSE($event: Event) {\r\n const target = <HTMLElement> $event.target;\r\n const header = target.scrollTop < 200;\r\n const bottom = target.scrollTop > 200;\r\n const emitVal: SE = {header, bottom};\r\n this.onScroll.emit(emitVal);\r\n }\r\n\r\n}\r\n","import {Directive, ElementRef, HostListener, Input} from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[fitSensitive]'\r\n})\r\nexport class SensitiveDirective {\r\n @Input('fitSensitive') caseType: 'upper' | 'lower' | '' = '';\r\n\r\n constructor(private _el: ElementRef) {\r\n }\r\n\r\n @HostListener('input', ['$event']) onKeyUp(event: any) {\r\n const value = event.target.value;\r\n if (this.caseType === 'upper') {\r\n event.target.value = value.toUpperCase();\r\n } else if (this.caseType === 'lower') {\r\n event.target.value = value.toLowerCase();\r\n }\r\n }\r\n}\r\n","import {AfterViewInit, Directive, ElementRef, Input, Renderer2} from '@angular/core';\r\nimport {AbstractControl} from '@angular/forms';\r\n\r\n@Directive({\r\n selector: '[fitControlError]'\r\n})\r\nexport class ControlErrorDirective implements AfterViewInit {\r\n private FORMAT = 'DD/MM/YYYY';\r\n private _control: AbstractControl | undefined;\r\n\r\n @Input() msgRequired = 'El campo es obligatorio';\r\n @Input() msgMinlength = 'Ingrese mínimo {requiredLength} caracteres';\r\n @Input() msgMaxlength = 'Ingrese máximo {requiredLength} caracteres';\r\n @Input() msgPattern = 'El formato del valor es inválido';\r\n @Input() msgInvalidDate = 'La fecha es inválida';\r\n @Input() msgMinDate = 'La fecha mínima es {minDate}';\r\n @Input() msgMaxDate = 'La fecha máxima es {maxDate}';\r\n\r\n @Input()\r\n set control(value: AbstractControl) {\r\n this._control = value;\r\n this._control.valueChanges.subscribe(() => {\r\n this.loadError();\r\n });\r\n }\r\n\r\n get control(): AbstractControl {\r\n return <AbstractControl>this._control;\r\n }\r\n\r\n constructor(private readonly _elementRef: ElementRef,\r\n private readonly render2: Renderer2) {\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.removeHtml();\r\n }\r\n\r\n private loadError() {\r\n if (this.control && (this.control.dirty || this.control.touched) && this.control.errors) {\r\n this.removeHtml();\r\n if (this.control.errors['required'] && !this.control.errors['matDatepickerParse']) {\r\n this.createHtml(this.msgRequired);\r\n } else if (this.control.errors['minlength']) {\r\n this.createHtml(this.msgMinlength.replace('{requiredLength}', this.control.errors['minlength'].requiredLength));\r\n } else if (this.control.errors['maxlength'] && !this.control.errors['minlength']) {\r\n this.createHtml(this.msgMaxlength.replace('{requiredLength}', this.control.errors['maxlength'].requiredLength));\r\n } else if (this.control.errors['pattern'] && !this.control.errors['maxlength'] && !this.control.errors['minlength']) {\r\n this.createHtml(this.msgPattern);\r\n } else if (this.control.errors['matDatepickerParse'] && this.control.errors['matDatepickerParse'].text) {\r\n this.createHtml(this.msgInvalidDate);\r\n } else if (this.control.errors['matDatepickerMin'] && this.control.errors['matDatepickerMin'].min) {\r\n const minDate = this.control.errors['matDatepickerMin'].min.format(this.FORMAT);\r\n this.createHtml(this.msgMinDate.replace('{minDate}', minDate));\r\n } else if (this.control.errors['matDatepickerMax'] && this.control.errors['matDatepickerMax'].max) {\r\n const maxDate = this.control.errors['matDatepickerMax'].max.format(this.FORMAT);\r\n this.createHtml(this.msgMaxDate.replace('{maxDate}', maxDate));\r\n }\r\n }\r\n }\r\n\r\n private removeHtml() {\r\n if (this._elementRef.nativeElement.firstChild) {\r\n this._elementRef.nativeElement.removeChild(this._elementRef.nativeElement.firstChild);\r\n }\r\n }\r\n\r\n private createHtml(message: string) {\r\n this.render2.setProperty(this._elementRef.nativeElement, 'innerHTML', message);\r\n }\r\n}\r\n","import {NgModule} from '@angular/core';\r\nimport {CommonModule} from '@angular/common';\r\nimport {InputDirective} from './directives/input.directive';\r\nimport {SensitiveDirective} from './directives/sensitive.directive';\r\nimport {ControlErrorDirective} from './directives/control-error.directive';\r\nimport {ScrollDirective} from \"./directives/scroll.directive\";\r\nimport {HoverDirective} from './directives/hover.directive';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule\r\n ],\r\n declarations: [\r\n InputDirective,\r\n SensitiveDirective,\r\n ControlErrorDirective,\r\n ScrollDirective,\r\n HoverDirective\r\n ],\r\n exports: [\r\n InputDirective,\r\n SensitiveDirective,\r\n ControlErrorDirective,\r\n ScrollDirective,\r\n HoverDirective\r\n ],\r\n providers: []\r\n})\r\nexport class FitDirectiveModule {\r\n}\r\n","// directives\nexport * from './directives/hover.directive';\nexport * from './directives/input.directive';\nexport * from './directives/scroll.directive';\nexport * from './directives/sensitive.directive';\nexport * from './directives/control-error.directive';\n\n// modules\nexport * from './fit-directive.module';\n","import {DecimalPipe} from '@angular/common';\nimport {Pipe, PipeTransform} from '@angular/core';\nimport {FitCurrencyConst, FitRegexConst} from '../../constant/shared.const';\n\n@Pipe({\n name: 'fitMoney'\n})\nexport class FitMoneyPipe implements PipeTransform {\n private _currency: any = FitCurrencyConst;\n private _defaultCurrency = 'PEN';\n private _defaultDecimal = 2;\n\n constructor(private readonly decimalPipe: DecimalPipe) {\n }\n\n transform(value: number | string, currency = this._defaultCurrency, decimal = this._defaultDecimal): string {\n const format = `.${decimal}-${decimal}`;\n if (value && `${value}`.match(FitRegexConst.decimal)) {\n return `${this._currency[currency]} ${this.decimalPipe.transform(Number(value), (format))}`;\n }\n return `${this._currency[currency]} ${this.decimalPipe.transform(0, (format))}`;\n }\n}\n","import {NgModule} from '@angular/core';\nimport {CommonModule, DecimalPipe} from '@angular/common';\nimport {FitMoneyPipe} from './pipes/fit-money.pipe';\n\n@NgModule({\n imports: [\n CommonModule\n ],\n declarations: [\n FitMoneyPipe\n ],\n exports: [\n FitMoneyPipe\n ],\n providers: [\n DecimalPipe\n ]\n})\nexport class FitPipeModule {\n}\n","// pipes\nexport * from './pipes/fit-money.pipe';\n\n// modules\nexport * from './fit-pipe.module';\n","import {Inject, Injectable} from '@angular/core';\r\nimport {BehaviorSubject, fromEvent, map, Observable} from 'rxjs';\r\n\r\nexport interface WindowSize {\r\n height: number;\r\n width: number;\r\n}\r\n\r\n@Injectable()\r\nexport class FitAdapteService {\r\n\r\n constructor(@Inject('windowObject') private window: Window) {\r\n fromEvent(window, 'resize').pipe(\r\n map(event => ({\r\n width: event.currentTarget['innerWidth'],\r\n height: event.currentTarget['innerHeight']\r\n }) as WindowSize)\r\n ).subscribe((windowSize) => {\r\n this.sizeChanged.next(windowSize);\r\n });\r\n }\r\n\r\n readonly sizeChanged = new BehaviorSubject<WindowSize>({\r\n width: this.window.innerWidth,\r\n height: this.window.innerHeight\r\n });\r\n}\r\n","import {Inject, Injectable, InjectionToken, PLATFORM_ID} from '@angular/core';\r\nimport {DOCUMENT, isPlatformBrowser} from '@angular/common';\r\n\r\n@Injectable({providedIn: 'root'})\r\nexport class FitCookiesService {\r\n private readonly documentIsAccessible: boolean;\r\n\r\n constructor(@Inject(DOCUMENT) private document: any,\r\n @Inject(PLATFORM_ID) private platformId: InjectionToken<object>) {\r\n this.documentIsAccessible = isPlatformBrowser(this.platformId);\r\n }\r\n\r\n check(name: string): boolean {\r\n if (!this.documentIsAccessible) {\r\n return false;\r\n }\r\n\r\n name = encodeURIComponent(name);\r\n\r\n const regExp: RegExp = this.getCookieRegExp(name);\r\n const exists: boolean = regExp.test(this.document.cookie);\r\n\r\n return exists;\r\n }\r\n\r\n get(name: string): string {\r\n if (this.documentIsAccessible && this.check(name)) {\r\n name = encodeURIComponent(name);\r\n\r\n const regExp: RegExp = this.getCookieRegExp(name);\r\n const result: RegExpExecArray = regExp.exec(this.document.cookie);\r\n\r\n return this.safeDecodeURIComponent(result[1]);\r\n } else {\r\n return '';\r\n }\r\n }\r\n\r\n getAll(): { [key: string]: string } {\r\n if (!this.documentIsAccessible) {\r\n return {};\r\n }\r\n\r\n const cookies: { [key: string]: string } = {};\r\n const document: any = this.document;\r\n\r\n if (document.cookie && document.cookie !== '') {\r\n document.cookie.split(';').forEach((currentCookie) => {\r\n const [cookieName, cookieValue] = currentCookie.split('=');\r\n cookies[this.safeDecodeURIComponent(cookieName.replace(/^ /, ''))] = this.safeDecodeURIComponent(cookieValue);\r\n });\r\n }\r\n\r\n return cookies;\r\n }\r\n\r\n set(name: string, value: string, expires?: number | Date, path?: string, domain?: string, secure?: boolean, sameSite: 'Lax' | 'None' | 'Strict' = 'Lax'): void {\r\n if (!this.documentIsAccessible) {\r\n return;\r\n }\r\n\r\n let cookieString: string = encodeURIComponent(name) + '=' + encodeURIComponent(value) + ';';\r\n\r\n if (expires) {\r\n if (typeof expires === 'number') {\r\n const dateExpires: Date = new Date(new Date().getTime() + expires * 1000 * 60 * 60 * 24);\r\n cookieString += 'expires=' + dateExpires.toUTCString() + ';';\r\n } else {\r\n cookieString += 'expires=' + expires.toUTCString() + ';';\r\n }\r\n }\r\n\r\n if (path) {\r\n cookieString += 'path=' + path + ';';\r\n }\r\n\r\n if (domain) {\r\n cookieString += 'domain=' + domain + ';';\r\n }\r\n\r\n if (secure === false && sameSite === 'None') {\r\n secure = true;\r\n }\r\n\r\n if (secure) {\r\n cookieString += 'secure;';\r\n }\r\n\r\n cookieString += 'sameSite=' + sameSite + ';';\r\n\r\n this.document.cookie = cookieString;\r\n }\r\n\r\n delete(name: string, path?: string, domain?: string, secure?: boolean, sameSite: 'Lax' | 'None' | 'Strict' = 'Lax'): void {\r\n if (!this.documentIsAccessible) {\r\n return;\r\n }\r\n\r\n this.set(name, '', new Date('Thu, 01 Jan 1970 00:00:01 GMT'), path, domain, secure, sameSite);\r\n }\r\n\r\n deleteAll(path?: string, domain?: string, secure?: boolean, sameSite: 'Lax' | 'None' | 'Strict' = 'Lax'): void {\r\n if (!this.documentIsAccessible) {\r\n return;\r\n }\r\n\r\n const cookies: any = this.getAll();\r\n\r\n for (const cookieName in cookies) {\r\n if (cookies.hasOwnProperty(cookieName)) {\r\n this.delete(cookieName, path, domain, secure, sameSite);\r\n }\r\n }\r\n }\r\n\r\n private getCookieRegExp(name: string): RegExp {\r\n const escapedName: string = name.replace(/([\\[\\]\\{\\}\\(\\)\\|\\=\\;\\+\\?\\,\\.\\*\\^\\$])/gi, '\\\\$1');\r\n\r\n return new RegExp('(?:^' + escapedName + '|;\\\\s*' + escapedName + ')=(.*?)(?:;|$)', 'g');\r\n }\r\n\r\n private safeDecodeURIComponent(encodedURIComponent: string): string {\r\n try {\r\n return decodeURIComponent(encodedURIComponent);\r\n } catch {\r\n return encodedURIComponent;\r\n }\r\n }\r\n}\r\n","// service\nexport * from './fit-adapte.service';\nexport * from './fit-cookies.service';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;;;MAAa,aAAa,GAAG;IAC3B,MAAM,EAAE,IAAI,MAAM,CAAC,YAAY,CAAC;IAChC,OAAO,EAAE,IAAI,MAAM,CAAC,yBAAyB,CAAC;IAC9C,OAAO,EAAE,IAAI,MAAM,CAAC,eAAe,CAAC;IACpC,YAAY,EAAE,0BAA0B;IACxC,aAAa,EAAE,2BAA2B;IAC1C,YAAY,EAAE,IAAI,MAAM,CAAC,6BAA6B,CAAC;IACvD,aAAa,EAAE,IAAI,MAAM,CAAC,8BAA8B,CAAC;IACzD,IAAI,EAAE,IAAI,MAAM,CAAC,WAAW,CAAC;IAC7B,QAAQ,EAAE,IAAI,MAAM,CAAC,UAAU,CAAC;EAChC;MAEW,gBAAgB,GAAG;IAC9B,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,MAAM;IACX,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,MAAM;IACX,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,MAAM;IACX,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,MAAM;IACX,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,GAAG;IACR,GAAG,EAAE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"}
@@ -0,0 +1,13 @@
1
+ import { BehaviorSubject } from 'rxjs';
2
+ import * as i0 from "@angular/core";
3
+ export interface WindowSize {
4
+ height: number;
5
+ width: number;
6
+ }
7
+ export declare class FitAdapteService {
8
+ private window;
9
+ constructor(window: Window);
10
+ readonly sizeChanged: BehaviorSubject<WindowSize>;
11
+ static ɵfac: i0.ɵɵFactoryDeclaration<FitAdapteService, never>;
12
+ static ɵprov: i0.ɵɵInjectableDeclaration<FitAdapteService>;
13
+ }
@@ -0,0 +1,20 @@
1
+ import { InjectionToken } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export declare class FitCookiesService {
4
+ private document;
5
+ private platformId;
6
+ private readonly documentIsAccessible;
7
+ constructor(document: any, platformId: InjectionToken<object>);
8
+ check(name: string): boolean;
9
+ get(name: string): string;
10
+ getAll(): {
11
+ [key: string]: string;
12
+ };
13
+ set(name: string, value: string, expires?: number | Date, path?: string, domain?: string, secure?: boolean, sameSite?: 'Lax' | 'None' | 'Strict'): void;
14
+ delete(name: string, path?: string, domain?: string, secure?: boolean, sameSite?: 'Lax' | 'None' | 'Strict'): void;
15
+ deleteAll(path?: string, domain?: string, secure?: boolean, sameSite?: 'Lax' | 'None' | 'Strict'): void;
16
+ private getCookieRegExp;
17
+ private safeDecodeURIComponent;
18
+ static ɵfac: i0.ɵɵFactoryDeclaration<FitCookiesService, never>;
19
+ static ɵprov: i0.ɵɵInjectableDeclaration<FitCookiesService>;
20
+ }
@@ -0,0 +1,2 @@
1
+ export * from './fit-adapte.service';
2
+ export * from './fit-cookies.service';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fitcoders/shared",
3
- "version": "1.0.1",
3
+ "version": "1.0.2",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.1.0",
6
6
  "@angular/core": "^13.1.0"
package/public-api.d.ts CHANGED
@@ -2,3 +2,4 @@ export * from './lib/constant/shared.const';
2
2
  export * from './lib/helper/helper-api';
3
3
  export * from './lib/directive/directive-api';
4
4
  export * from './lib/pipe/pipe-api';
5
+ export * from './lib/service/service-api';