brainloper-ui 14.1.8 → 14.1.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2020/brainloper-ui.mjs +4 -4
- package/esm2020/public_api.mjs +57 -56
- package/esm2020/src/app/modules/brainloper-ui/brainloper-ui.module.mjs +310 -310
- package/esm2020/src/app/modules/brainloper-ui/components/bread-crumb/bread-crumb.component.mjs +29 -29
- package/esm2020/src/app/modules/brainloper-ui/components/buttons/button-icon/button-icon.component.mjs +23 -23
- package/esm2020/src/app/modules/brainloper-ui/components/buttons/button-label/button-label.component.mjs +83 -83
- package/esm2020/src/app/modules/brainloper-ui/components/carousel/carousel.component.mjs +40 -40
- package/esm2020/src/app/modules/brainloper-ui/components/combos/combos.component.mjs +176 -176
- package/esm2020/src/app/modules/brainloper-ui/components/data-table/data-table.component.mjs +728 -728
- package/esm2020/src/app/modules/brainloper-ui/components/data-table/table-modal/table-modal.component.mjs +118 -118
- package/esm2020/src/app/modules/brainloper-ui/components/file-input/file-input.component.mjs +186 -186
- package/esm2020/src/app/modules/brainloper-ui/components/file-input/imagenes/doc.mjs +1 -1
- package/esm2020/src/app/modules/brainloper-ui/components/file-input/imagenes/fondoTransparente.mjs +1 -1
- package/esm2020/src/app/modules/brainloper-ui/components/file-input/imagenes/pdf.mjs +1 -1
- package/esm2020/src/app/modules/brainloper-ui/components/filters/filters.component.mjs +222 -222
- package/esm2020/src/app/modules/brainloper-ui/components/report/template-fuel/template-fuel.component.mjs +115 -115
- package/esm2020/src/app/modules/brainloper-ui/components/report/template-ot/template-ot.component.mjs +145 -145
- package/esm2020/src/app/modules/brainloper-ui/components/select-filter/select-filter.component.mjs +108 -108
- package/esm2020/src/app/modules/directives/carousel-item.directive.mjs +18 -18
- package/esm2020/src/app/modules/interfaces/buttons/button-icon.mjs +2 -2
- package/esm2020/src/app/modules/interfaces/buttons/button-lavel-edit.mjs +2 -2
- package/esm2020/src/app/modules/interfaces/combos/combos-configuration.mjs +2 -2
- package/esm2020/src/app/modules/interfaces/data-table/params.mjs +2 -2
- package/esm2020/src/app/modules/interfaces/data-table/rules.mjs +2 -2
- package/esm2020/src/app/modules/interfaces/data-table/table-columns.mjs +2 -2
- package/esm2020/src/app/modules/interfaces/data-table/table-configuration.mjs +2 -2
- package/esm2020/src/app/modules/interfaces/enum/enumActions.mjs +8 -8
- package/esm2020/src/app/modules/interfaces/enum/enumRules.mjs +8 -8
- package/esm2020/src/app/modules/interfaces/enum/httpResponseType.mjs +8 -0
- package/esm2020/src/app/modules/interfaces/file-forms-service/file-forms-params.mjs +2 -2
- package/esm2020/src/app/modules/interfaces/file-forms-service/file-input-params.mjs +2 -2
- package/esm2020/src/app/modules/interfaces/filters/header-filters.mjs +2 -2
- package/esm2020/src/app/modules/interfaces/menu-break-crumb/menu-break-crumb.mjs +8 -8
- package/esm2020/src/app/modules/interfaces/report/template-pdf-base.mjs +2 -2
- package/esm2020/src/app/modules/interfaces/report/template-pdf-ot.mjs +2 -2
- package/esm2020/src/app/modules/interfaces/report/template-pfd-fo.mjs +2 -2
- package/esm2020/src/app/modules/services/crypto.service.mjs +37 -37
- package/esm2020/src/app/modules/services/export-data.service.mjs +166 -166
- package/esm2020/src/app/modules/services/file-forms.service.mjs +24 -24
- package/esm2020/src/app/modules/services/fuel-order-pdf.service.mjs +528 -528
- package/esm2020/src/app/modules/services/functions.service.mjs +54 -54
- package/esm2020/src/app/modules/services/generate-pdf.service.mjs +109 -109
- package/esm2020/src/app/modules/services/http.service.mjs +126 -97
- package/esm2020/src/app/modules/services/loading/loading.component.mjs +28 -28
- package/esm2020/src/app/modules/services/local-storage.service.mjs +115 -115
- package/esm2020/src/app/modules/services/message.service.mjs +200 -200
- package/esm2020/src/app/modules/services/screen-size-util.mjs +6 -6
- package/esm2020/src/app/modules/services/session.service.mjs +42 -42
- package/esm2020/src/app/modules/services/work-order-pdf.service.mjs +384 -384
- package/fesm2015/brainloper-ui.mjs +3885 -3849
- package/fesm2015/brainloper-ui.mjs.map +1 -1
- package/fesm2020/brainloper-ui.mjs +3855 -3819
- package/fesm2020/brainloper-ui.mjs.map +1 -1
- package/index.d.ts +5 -5
- package/package.json +1 -1
- package/public_api.d.ts +56 -55
- package/src/app/modules/brainloper-ui/brainloper-ui.module.d.ts +62 -62
- package/src/app/modules/brainloper-ui/components/bread-crumb/bread-crumb.component.d.ts +13 -13
- package/src/app/modules/brainloper-ui/components/buttons/button-icon/button-icon.component.d.ts +10 -10
- package/src/app/modules/brainloper-ui/components/buttons/button-label/button-label.component.d.ts +24 -24
- package/src/app/modules/brainloper-ui/components/carousel/carousel.component.d.ts +16 -16
- package/src/app/modules/brainloper-ui/components/combos/combos.component.d.ts +46 -46
- package/src/app/modules/brainloper-ui/components/data-table/data-table.component.d.ts +125 -125
- package/src/app/modules/brainloper-ui/components/data-table/table-modal/table-modal.component.d.ts +21 -21
- package/src/app/modules/brainloper-ui/components/file-input/file-input.component.d.ts +42 -42
- package/src/app/modules/brainloper-ui/components/file-input/imagenes/doc.d.ts +2 -2
- package/src/app/modules/brainloper-ui/components/file-input/imagenes/fondoTransparente.d.ts +2 -2
- package/src/app/modules/brainloper-ui/components/file-input/imagenes/pdf.d.ts +2 -2
- package/src/app/modules/brainloper-ui/components/filters/filters.component.d.ts +30 -30
- package/src/app/modules/brainloper-ui/components/report/template-fuel/template-fuel.component.d.ts +41 -41
- package/src/app/modules/brainloper-ui/components/report/template-ot/template-ot.component.d.ts +40 -40
- package/src/app/modules/brainloper-ui/components/select-filter/select-filter.component.d.ts +26 -26
- package/src/app/modules/directives/carousel-item.directive.d.ts +9 -9
- package/src/app/modules/interfaces/buttons/button-icon.d.ts +9 -9
- package/src/app/modules/interfaces/buttons/button-lavel-edit.d.ts +6 -6
- package/src/app/modules/interfaces/combos/combos-configuration.d.ts +13 -13
- package/src/app/modules/interfaces/data-table/params.d.ts +7 -7
- package/src/app/modules/interfaces/data-table/rules.d.ts +8 -8
- package/src/app/modules/interfaces/data-table/table-columns.d.ts +25 -25
- package/src/app/modules/interfaces/data-table/table-configuration.d.ts +26 -26
- package/src/app/modules/interfaces/enum/enumActions.d.ts +6 -6
- package/src/app/modules/interfaces/enum/enumRules.d.ts +6 -6
- package/src/app/modules/interfaces/enum/httpResponseType.d.ts +6 -0
- package/src/app/modules/interfaces/file-forms-service/file-forms-params.d.ts +4 -4
- package/src/app/modules/interfaces/file-forms-service/file-input-params.d.ts +13 -13
- package/src/app/modules/interfaces/filters/header-filters.d.ts +13 -13
- package/src/app/modules/interfaces/menu-break-crumb/menu-break-crumb.d.ts +10 -10
- package/src/app/modules/interfaces/report/template-pdf-base.d.ts +17 -17
- package/src/app/modules/interfaces/report/template-pdf-ot.d.ts +6 -6
- package/src/app/modules/interfaces/report/template-pfd-fo.d.ts +7 -7
- package/src/app/modules/services/crypto.service.d.ts +10 -10
- package/src/app/modules/services/export-data.service.d.ts +18 -18
- package/src/app/modules/services/file-forms.service.d.ts +7 -7
- package/src/app/modules/services/fuel-order-pdf.service.d.ts +59 -59
- package/src/app/modules/services/functions.service.d.ts +13 -13
- package/src/app/modules/services/generate-pdf.service.d.ts +21 -21
- package/src/app/modules/services/http.service.d.ts +23 -22
- package/src/app/modules/services/loading/loading.component.d.ts +15 -15
- package/src/app/modules/services/local-storage.service.d.ts +49 -49
- package/src/app/modules/services/message.service.d.ts +23 -23
- package/src/app/modules/services/screen-size-util.d.ts +3 -3
- package/src/app/modules/services/session.service.d.ts +14 -14
- package/src/app/modules/services/work-order-pdf.service.d.ts +60 -60
|
@@ -1,97 +1,126 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import { HttpParams } from '@angular/common/http';
|
|
3
|
-
import
|
|
4
|
-
import * as
|
|
5
|
-
import * as
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
this.
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
resolve(
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
}
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9tb2R1bGVzL3NlcnZpY2VzL2h0dHAuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBYyxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7OztBQUc5RCxNQUFNLE9BQU8sV0FBVztJQUV0QixZQUNVLElBQWdCLEVBQ2hCLE9BQXVCO1FBRHZCLFNBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsWUFBTyxHQUFQLE9BQU8sQ0FBZ0I7SUFDN0IsQ0FBQztJQUVHLFlBQVksQ0FBQyxNQUFZO1FBQy9CLElBQUksSUFBSSxHQUFHLElBQUksVUFBVSxFQUFFLENBQUM7UUFDNUIsSUFBSSxNQUFNLEVBQUU7WUFDVixNQUFNLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFO2dCQUN2QixJQUFJLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLE9BQU8sQ0FBQyxFQUFFLEVBQUUsRUFBRSxHQUFHLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO1lBQzFELENBQUMsQ0FBQyxDQUFDO1NBQ0o7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxPQUFPLENBQUMsR0FBVyxFQUFFLE1BQU8sRUFBRSxrQkFBMkIsS0FBSztRQUM1RCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxFQUFFLGVBQWUsRUFBRSxDQUFDLENBQUM7SUFDcEYsQ0FBQztJQUVELFFBQVEsQ0FBQyxHQUFXLEVBQUUsSUFBUyxFQUFFLE1BQU8sRUFBRSxrQkFBMkIsS0FBSztRQUN4RSxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFB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LEtBQUssQ0FBQyxPQUFPLEVBQUUsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7aUJBQzdDO1lBQ0gsQ0FBQyxFQUNELEdBQUcsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUNuQixDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOzt3R0FuSFUsV0FBVzs0R0FBWCxXQUFXOzJGQUFYLFdBQVc7a0JBRHZCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyIvLy8vIGZpbGVwYXRoOiB1bnRpdGxlZDpVbnRpdGxlZC0xXHJcbmltcG9ydCB7IE1lc3NhZ2VTZXJ2aWNlIH0gZnJvbSAnLi9tZXNzYWdlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEh0dHBDbGllbnQsIEh0dHBQYXJhbXMgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBIdHRwU2VydmljZSB7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LFxyXG4gICAgcHJpdmF0ZSBtZXNzYWdlOiBNZXNzYWdlU2VydmljZVxyXG4gICkgeyB9XHJcblxyXG4gIHByaXZhdGUgY3JlYXRlUGFyYW1zKHBhcmFtcz86IGFueSk6IEh0dHBQYXJhbXMge1xyXG4gICAgbGV0IGRhdGEgPSBuZXcgSHR0cFBhcmFtcygpO1xyXG4gICAgaWYgKHBhcmFtcykge1xyXG4gICAgICBwYXJhbXMuZm9yRWFjaChlbGVtZW50ID0+IHtcclxuICAgICAgICBkYXRhID0gZGF0YS5hcHBlbmQoYCR7ZWxlbWVudC5pZH1gLCBgJHtlbGVtZW50LnZhbHVlfWApO1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuICAgIHJldHVybiBkYXRhO1xyXG4gIH1cclxuXHJcbiAgZ2V0RGF0YSh1cmw6IHN0cmluZywgcGFyYW1zPywgd2l0aENyZWRlbnRpYWxzOiBib29sZWFuID0gZmFsc2UpIHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHVybCwgeyBwYXJhbXM6IHRoaXMuY3JlYXRlUGFyYW1zKHBhcmFtcyksIHdpdGhDcmVkZW50aWFscyB9KTtcclxuICB9XHJcblxyXG4gIHBvc3REYXRhKHVybDogc3RyaW5nLCBib2R5OiBhbnksIHBhcmFtcz8sIHdpdGhDcmVkZW50aWFsczogYm9vbGVhbiA9IGZhbHNlKSB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QodXJsLCBib2R5LCB7IHBhcmFtczogdGhpcy5jcmVhdGVQYXJhbXMocGFyYW1zKSwgd2l0aENyZWRlbnRpYWxzIH0pO1xyXG4gIH1cclxuXHJcbiAgcHV0RGF0YSh1cmw6IHN0cmluZywgYm9keTogYW55LCBwYXJhbXM/LCB3aXRoQ3JlZGVudGlhbHM6IGJvb2xlYW4gPSBmYWxzZSkge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wdXQodXJsLCBib2R5LCB7IHBhcmFtczogdGhpcy5jcmVhdGVQYXJhbXMocGFyYW1zKSwgd2l0aENyZWRlbnRpYWxzIH0pO1xyXG4gIH1cclxuXHJcbiAgZGVsZXRlRGF0YSh1cmw6IHN0cmluZywgcGFyYW1zPywgd2l0aENyZWRlbnRpYWxzOiBib29sZWFuID0gZmFsc2UpIHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZGVsZXRlKHVybCwgeyBwYXJhbXM6IHRoaXMuY3JlYXRlUGFyYW1zKHBhcmFtcyksIHdpdGhDcmVkZW50aWFscyB9KTtcclxuICB9XHJcblxyXG4gIGdldERhdGFQcm9taXNlKHVybDogc3RyaW5nLCBwYXJhbXM/LCB3aXRoQ3JlZGVudGlhbHM6IGJvb2xlYW4gPSBmYWxzZSkge1xyXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcclxuICAgICAgdGhpcy5odHRwLmdldCh1cmwsIHsgcGFyYW1zOiB0aGlzLmNyZWF0ZVBhcmFtcyhwYXJhbXMpLCB3aXRoQ3JlZGVudGlhbHMgfSkuc3Vic2NyaWJlKFxyXG4gICAgICAgIHJlcyA9PiByZXNvbHZlKHJlcyksXHJcbiAgICAgICAgZXJyID0+IHJlamVjdChlcnIpXHJcbiAgICAgICk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHBvc3REYXRhUHJvbWlzZSh1cmw6IHN0cmluZywgYm9keTogYW55LCBwYXJhbXM/LCB3aXRoQ3JlZGVudGlhbHM6IGJvb2xlYW4gPSBmYWxzZSkge1xyXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcclxuICAgICAgdGhpcy5odHRwLnBvc3QodXJsLCBib2R5LCB7IHBhcmFtczogdGhpcy5jcmVhdGVQYXJhbXMocGFyYW1zKSwgd2l0aENyZWRlbnRpYWxzIH0pLnN1YnNjcmliZShcclxuICAgICAgICByZXMgPT4gcmVzb2x2ZShyZXMpLFxyXG4gICAgICAgIGVyciA9PiByZWplY3QoZXJyKVxyXG4gICAgICApO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdXREYXRhUHJvbWlzZSh1cmw6IHN0cmluZywgYm9keTogYW55LCBwYXJhbXM/LCB3aXRoQ3JlZGVudGlhbHM6IGJvb2xlYW4gPSBmYWxzZSkge1xyXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcclxuICAgICAgdGhpcy5odHRwLnB1dCh1cmwsIGJvZHksIHsgcGFyYW1zOiB0aGlzLmNyZWF0ZVBhcmFtcyhwYXJhbXMpLCB3aXRoQ3JlZGVudGlhbHMgfSkuc3Vic2NyaWJlKFxyXG4gICAgICAgIHJlcyA9PiByZXNvbHZlKHJlcyksXHJcbiAgICAgICAgZXJyID0+IHJlamVjdChlcnIpXHJcbiAgICAgICk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGRlbGV0ZURhdGFQcm9taXNlKHVybDogc3RyaW5nLCBwYXJhbXM/LCB3aXRoQ3JlZGVudGlhbHM6IGJvb2xlYW4gPSBmYWxzZSkge1xyXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcclxuICAgICAgdGhpcy5odHRwLmRlbGV0ZSh1cmwsIHsgcGFyYW1zOiB0aGlzLmNyZWF0ZVBhcmFtcyhwYXJhbXMpLCB3aXRoQ3JlZGVudGlhbHMgfSkuc3Vic2NyaWJlKFxyXG4gICAgICAgIHJlcyA9PiByZXNvbHZlKHJlcyksXHJcbiAgICAgICAgZXJyID0+IHJlamVjdChlcnIpXHJcbiAgICAgICk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGdldERhdGFCb2R5PFQ+KHVybDogc3RyaW5nLCBwYXJhbXM/LCB3aXRoQ3JlZGVudGlhbHM6IGJvb2xlYW4gPSBmYWxzZSk6IFByb21pc2U8VD4ge1xyXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcclxuICAgICAgdGhpcy5odHRwLmdldCh1cmwsIHsgcGFyYW1zOiB0aGlzLmNyZWF0ZVBhcmFtcyhwYXJhbXMpLCB3aXRoQ3JlZGVudGlhbHMgfSkuc3Vic2NyaWJlKFxyXG4gICAgICAgIHJlcyA9PiB7XHJcbiAgICAgICAgICBpZiAocmVzWydjb2RlJ10gPT09IDAgJiYgcmVzWydib2R5J10pIHtcclxuICAgICAgICAgICAgcmVzb2x2ZShyZXNbJ2JvZHknXSBhcyBUKTtcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHJlc29sdmUobnVsbCk7XHJcbiAgICAgICAgICAgIHRoaXMubWVzc2FnZS5FcnJvcihcIkVycm9yXCIsIHJlc1snbWVzc2FnZSddKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9LFxyXG4gICAgICAgIGVyciA9PiByZWplY3QoZXJyKVxyXG4gICAgICApO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwb3N0RGF0YUJvZHk8VD4odXJsOiBzdHJpbmcsIGJvZHk6IGFueSwgcGFyYW1zPywgd2l0aENyZWRlbnRpYWxzOiBib29sZWFuID0gZmFsc2UpOiBQcm9taXNlPFQ+IHtcclxuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XHJcbiAgICAgIHRoaXMuaHR0cC5wb3N0KHVybCwgYm9keSwgeyBwYXJhbXM6IHRoaXMuY3JlYXRlUGFyYW1zKHBhcmFtcyksIHdpdGhDcmVkZW50aWFscyB9KS5zdWJzY3JpYmUoXHJcbiAgICAgICAgcmVzID0+IHtcclxuICAgICAgICAgIGlmIChyZXNbJ2NvZGUnXSA9PT0gMCAmJiByZXNbJ2JvZHknXSkge1xyXG4gICAgICAgICAgICByZXNvbHZlKHJlc1snYm9keSddIGFzIFQpO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgcmVzb2x2ZShudWxsKTtcclxuICAgICAgICAgICAgdGhpcy5tZXNzYWdlLkVycm9yKFwiRXJyb3JcIiwgcmVzWydtZXNzYWdlJ10pO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZXJyID0+IHJlamVjdChlcnIpXHJcbiAgICAgICk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHB1dERhdGFCb2R5PFQ+KHVybDogc3RyaW5nLCBib2R5OiBhbnksIHBhcmFtcz8sIHdpdGhDcmVkZW50aWFsczogYm9vbGVhbiA9IGZhbHNlKTogUHJvbWlzZTxUPiB7XHJcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xyXG4gICAgICB0aGlzLmh0dHAucHV0KHVybCwgYm9keSwgeyBwYXJhbXM6IHRoaXMuY3JlYXRlUGFyYW1zKHBhcmFtcyksIHdpdGhDcmVkZW50aWFscyB9KS5zdWJzY3JpYmUoXHJcbiAgICAgICAgcmVzID0+IHtcclxuICAgICAgICAgIGlmIChyZXNbJ2NvZGUnXSA9PT0gMCAmJiByZXNbJ2JvZHknXSkge1xyXG4gICAgICAgICAgICByZXNvbHZlKHJlc1snYm9keSddIGFzIFQpO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgcmVzb2x2ZShudWxsKTtcclxuICAgICAgICAgICAgdGhpcy5tZXNzYWdlLkVycm9yKFwiRXJyb3JcIiwgcmVzWydtZXNzYWdlJ10pO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZXJyID0+IHJlamVjdChlcnIpXHJcbiAgICAgICk7XHJcbiAgICB9KTtcclxuICB9XHJcbn0iXX0=
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { HttpParams } from '@angular/common/http';
|
|
3
|
+
import { HttpResponseType } from '../interfaces/enum/httpResponseType';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@angular/common/http";
|
|
6
|
+
import * as i2 from "./message.service";
|
|
7
|
+
export class HttpService {
|
|
8
|
+
constructor(http, message) {
|
|
9
|
+
this.http = http;
|
|
10
|
+
this.message = message;
|
|
11
|
+
}
|
|
12
|
+
createParams(params) {
|
|
13
|
+
let data = new HttpParams();
|
|
14
|
+
if (params) {
|
|
15
|
+
params.forEach(element => {
|
|
16
|
+
data = data.append(`${element.id}`, `${element.value}`);
|
|
17
|
+
});
|
|
18
|
+
}
|
|
19
|
+
return data;
|
|
20
|
+
}
|
|
21
|
+
getData(url, params, withCredentials = false, responseType = HttpResponseType.JSON) {
|
|
22
|
+
const options = {
|
|
23
|
+
params: this.createParams(params),
|
|
24
|
+
withCredentials
|
|
25
|
+
};
|
|
26
|
+
if (responseType !== HttpResponseType.JSON) {
|
|
27
|
+
options.responseType = responseType;
|
|
28
|
+
}
|
|
29
|
+
return this.http.get(url, options);
|
|
30
|
+
}
|
|
31
|
+
postData(url, body, params, withCredentials = false, responseType = HttpResponseType.JSON) {
|
|
32
|
+
const options = {
|
|
33
|
+
params: this.createParams(params),
|
|
34
|
+
withCredentials
|
|
35
|
+
};
|
|
36
|
+
if (responseType !== HttpResponseType.JSON) {
|
|
37
|
+
options.responseType = responseType;
|
|
38
|
+
}
|
|
39
|
+
return this.http.post(url, body, options);
|
|
40
|
+
}
|
|
41
|
+
putData(url, body, params, withCredentials = false, responseType = HttpResponseType.JSON) {
|
|
42
|
+
const options = {
|
|
43
|
+
params: this.createParams(params),
|
|
44
|
+
withCredentials
|
|
45
|
+
};
|
|
46
|
+
if (responseType !== HttpResponseType.JSON) {
|
|
47
|
+
options.responseType = responseType;
|
|
48
|
+
}
|
|
49
|
+
return this.http.put(url, body, options);
|
|
50
|
+
}
|
|
51
|
+
deleteData(url, params, withCredentials = false, responseType = HttpResponseType.JSON) {
|
|
52
|
+
const options = {
|
|
53
|
+
params: this.createParams(params),
|
|
54
|
+
withCredentials
|
|
55
|
+
};
|
|
56
|
+
if (responseType !== HttpResponseType.JSON) {
|
|
57
|
+
options.responseType = responseType;
|
|
58
|
+
}
|
|
59
|
+
return this.http.delete(url, options);
|
|
60
|
+
}
|
|
61
|
+
getDataPromise(url, params, withCredentials = false, responseType = HttpResponseType.JSON) {
|
|
62
|
+
return new Promise((resolve, reject) => {
|
|
63
|
+
this.getData(url, params, withCredentials, responseType).subscribe(res => resolve(res), err => reject(err));
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
postDataPromise(url, body, params, withCredentials = false, responseType = HttpResponseType.JSON) {
|
|
67
|
+
return new Promise((resolve, reject) => {
|
|
68
|
+
this.postData(url, body, params, withCredentials, responseType).subscribe(res => resolve(res), err => reject(err));
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
putDataPromise(url, body, params, withCredentials = false, responseType = HttpResponseType.JSON) {
|
|
72
|
+
return new Promise((resolve, reject) => {
|
|
73
|
+
this.putData(url, body, params, withCredentials, responseType).subscribe(res => resolve(res), err => reject(err));
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
deleteDataPromise(url, params, withCredentials = false, responseType = HttpResponseType.JSON) {
|
|
77
|
+
return new Promise((resolve, reject) => {
|
|
78
|
+
this.deleteData(url, params, withCredentials, responseType).subscribe(res => resolve(res), err => reject(err));
|
|
79
|
+
});
|
|
80
|
+
}
|
|
81
|
+
getDataBody(url, params, withCredentials = false) {
|
|
82
|
+
return new Promise((resolve, reject) => {
|
|
83
|
+
this.http.get(url, { params: this.createParams(params), withCredentials }).subscribe(res => {
|
|
84
|
+
if (res['code'] === 0 && res['body']) {
|
|
85
|
+
resolve(res['body']);
|
|
86
|
+
}
|
|
87
|
+
else {
|
|
88
|
+
resolve(null);
|
|
89
|
+
this.message.Error("Error", res['message']);
|
|
90
|
+
}
|
|
91
|
+
}, err => reject(err));
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
postDataBody(url, body, params, withCredentials = false) {
|
|
95
|
+
return new Promise((resolve, reject) => {
|
|
96
|
+
this.http.post(url, body, { params: this.createParams(params), withCredentials }).subscribe(res => {
|
|
97
|
+
if (res['code'] === 0 && res['body']) {
|
|
98
|
+
resolve(res['body']);
|
|
99
|
+
}
|
|
100
|
+
else {
|
|
101
|
+
resolve(null);
|
|
102
|
+
this.message.Error("Error", res['message']);
|
|
103
|
+
}
|
|
104
|
+
}, err => reject(err));
|
|
105
|
+
});
|
|
106
|
+
}
|
|
107
|
+
putDataBody(url, body, params, withCredentials = false) {
|
|
108
|
+
return new Promise((resolve, reject) => {
|
|
109
|
+
this.http.put(url, body, { params: this.createParams(params), withCredentials }).subscribe(res => {
|
|
110
|
+
if (res['code'] === 0 && res['body']) {
|
|
111
|
+
resolve(res['body']);
|
|
112
|
+
}
|
|
113
|
+
else {
|
|
114
|
+
resolve(null);
|
|
115
|
+
this.message.Error("Error", res['message']);
|
|
116
|
+
}
|
|
117
|
+
}, err => reject(err));
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
HttpService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HttpService, deps: [{ token: i1.HttpClient }, { token: i2.MessageService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
122
|
+
HttpService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HttpService });
|
|
123
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HttpService, decorators: [{
|
|
124
|
+
type: Injectable
|
|
125
|
+
}], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: i2.MessageService }]; } });
|
|
126
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9tb2R1bGVzL3NlcnZpY2VzL2h0dHAuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBYyxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUM5RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQzs7OztBQUd2RSxNQUFNLE9BQU8sV0FBVztJQUV0QixZQUNVLElBQWdCLEVBQ2hCLE9BQXVCO1FBRHZCLFNBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsWUFBTyxHQUFQLE9BQU8sQ0FBZ0I7SUFDN0IsQ0FBQztJQUVHLFlBQVksQ0FBQyxNQUFZO1FBQy9CLElBQUksSUFBSSxHQUFHLElBQUksVUFBVSxFQUFFLENBQUM7UUFDNUIsSUFBSSxNQUFNLEVBQUU7WUFDVixNQUFNLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFO2dCQUN2QixJQUFJLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLE9BQU8sQ0FBQyxFQUFFLEVBQUUsRUFBRSxHQUFHLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO1lBQzFELENBQUMsQ0FBQyxDQUFDO1NBQ0o7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxPQUFPLENBQUMsR0FBVyxFQUFFLE1BQU8sRUFBRSxrQkFBMkIsS0FBSyxFQUFFLGVBQWlDLGdCQUFnQixDQUFDLElBQUk7UUFDcEgsTUFBTSxPQUFPLEdBQVE7WUFDbkIsTUFBTSxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDO1lBQ2pDLGVBQWU7U0FDaEIsQ0FBQztRQUVGLElBQUksWUFBWSxLQUFLLGdCQUFnQixDQUFDLElBQUksRUFBRTtZQUMxQyxPQUFPLENBQUMsWUFB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QztpQkFDN0M7WUFDSCxDQUFDLEVBQ0QsR0FBRyxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQ25CLENBQUM7UUFDSixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxXQUFXLENBQUksR0FBVyxFQUFFLElBQVMsRUFBRSxNQUFPLEVBQUUsa0JBQTJCLEtBQUs7UUFDOUUsT0FBTyxJQUFJLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsRUFBRTtZQUNyQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsSUFBSSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLEVBQUUsZUFBZSxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQ3hGLEdBQUcsQ0FBQyxFQUFFO2dCQUNKLElBQUksR0FBRyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUU7b0JBQ3BDLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFNLENBQUMsQ0FBQztpQkFDM0I7cUJBQU07b0JBQ0wsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO29CQUNkLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztpQkFDN0M7WUFDSCxDQUFDLEVBQ0QsR0FBRyxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQ25CLENBQUM7UUFDSixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7O3dHQXZKVSxXQUFXOzRHQUFYLFdBQVc7MkZBQVgsV0FBVztrQkFEdkIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1lc3NhZ2VTZXJ2aWNlIH0gZnJvbSAnLi9tZXNzYWdlLnNlcnZpY2UnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSHR0cENsaWVudCwgSHR0cFBhcmFtcyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEh0dHBSZXNwb25zZVR5cGUgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2VudW0vaHR0cFJlc3BvbnNlVHlwZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBIdHRwU2VydmljZSB7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LFxuICAgIHByaXZhdGUgbWVzc2FnZTogTWVzc2FnZVNlcnZpY2VcbiAgKSB7IH1cblxuICBwcml2YXRlIGNyZWF0ZVBhcmFtcyhwYXJhbXM/OiBhbnkpOiBIdHRwUGFyYW1zIHtcbiAgICBsZXQgZGF0YSA9IG5ldyBIdHRwUGFyYW1zKCk7XG4gICAgaWYgKHBhcmFtcykge1xuICAgICAgcGFyYW1zLmZvckVhY2goZWxlbWVudCA9PiB7XG4gICAgICAgIGRhdGEgPSBkYXRhLmFwcGVuZChgJHtlbGVtZW50LmlkfWAsIGAke2VsZW1lbnQudmFsdWV9YCk7XG4gICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIGRhdGE7XG4gIH1cblxuICBnZXREYXRhKHVybDogc3RyaW5nLCBwYXJhbXM/LCB3aXRoQ3JlZGVudGlhbHM6IGJvb2xlYW4gPSBmYWxzZSwgcmVzcG9uc2VUeXBlOiBIdHRwUmVzcG9uc2VUeXBlID0gSHR0cFJlc3BvbnNlVHlwZS5KU09OKSB7XG4gICAgY29uc3Qgb3B0aW9uczogYW55ID0geyBcbiAgICAgIHBhcmFtczogdGhpcy5jcmVhdGVQYXJhbXMocGFyYW1zKSwgXG4gICAgICB3aXRoQ3JlZGVudGlhbHMgXG4gICAgfTtcbiAgICBcbiAgICBpZiAocmVzcG9uc2VUeXBlICE9PSBIdHRwUmVzcG9uc2VUeXBlLkpTT04pIHtcbiAgICAgIG9wdGlvbnMucmVzcG9uc2VUeXBlID0gcmVzcG9uc2VUeXBlO1xuICAgIH1cbiAgICBcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldCh1cmwsIG9wdGlvbnMpO1xuICB9XG5cbiAgcG9zdERhdGEodXJsOiBzdHJpbmcsIGJvZHk6IGFueSwgcGFyYW1zPywgd2l0aENyZWRlbnRpYWxzOiBib29sZWFuID0gZmFsc2UsIHJlc3BvbnNlVHlwZTogSHR0cFJlc3BvbnNlVHlwZSA9IEh0dHBSZXNwb25zZVR5cGUuSlNPTikge1xuICAgIGNvbnN0IG9wdGlvbnM6IGFueSA9IHsgXG4gICAgICBwYXJhbXM6IHRoaXMuY3JlYXRlUGFyYW1zKHBhcmFtcyksIFxuICAgICAgd2l0aENyZWRlbnRpYWxzIFxuICAgIH07XG4gICAgXG4gICAgaWYgKHJlc3BvbnNlVHlwZSAhPT0gSHR0cFJlc3BvbnNlVHlwZS5KU09OKSB7XG4gICAgICBvcHRpb25zLnJlc3BvbnNlVHlwZSA9IHJlc3BvbnNlVHlwZTtcbiAgICB9XG4gICAgXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHVybCwgYm9keSwgb3B0aW9ucyk7XG4gIH1cblxuICBwdXREYXRhKHVybDogc3RyaW5nLCBib2R5OiBhbnksIHBhcmFtcz8sIHdpdGhDcmVkZW50aWFsczogYm9vbGVhbiA9IGZhbHNlLCByZXNwb25zZVR5cGU6IEh0dHBSZXNwb25zZVR5cGUgPSBIdHRwUmVzcG9uc2VUeXBlLkpTT04pIHtcbiAgICBjb25zdCBvcHRpb25zOiBhbnkgPSB7IFxuICAgICAgcGFyYW1zOiB0aGlzLmNyZWF0ZVBhcmFtcyhwYXJhbXMpLCBcbiAgICAgIHdpdGhDcmVkZW50aWFscyBcbiAgICB9O1xuICAgIFxuICAgIGlmIChyZXNwb25zZVR5cGUgIT09IEh0dHBSZXNwb25zZVR5cGUuSlNPTikge1xuICAgICAgb3B0aW9ucy5yZXNwb25zZVR5cGUgPSByZXNwb25zZVR5cGU7XG4gICAgfVxuICAgIFxuICAgIHJldHVybiB0aGlzLmh0dHAucHV0KHVybCwgYm9keSwgb3B0aW9ucyk7XG4gIH1cblxuICBkZWxldGVEYXRhKHVybDogc3RyaW5nLCBwYXJhbXM/LCB3aXRoQ3JlZGVudGlhbHM6IGJvb2xlYW4gPSBmYWxzZSwgcmVzcG9uc2VUeXBlOiBIdHRwUmVzcG9uc2VUeXBlID0gSHR0cFJlc3BvbnNlVHlwZS5KU09OKSB7XG4gICAgY29uc3Qgb3B0aW9uczogYW55ID0geyBcbiAgICAgIHBhcmFtczogdGhpcy5jcmVhdGVQYXJhbXMocGFyYW1zKSwgXG4gICAgICB3aXRoQ3JlZGVudGlhbHMgXG4gICAgfTtcbiAgICBcbiAgICBpZiAocmVzcG9uc2VUeXBlICE9PSBIdHRwUmVzcG9uc2VUeXBlLkpTT04pIHtcbiAgICAgIG9wdGlvbnMucmVzcG9uc2VUeXBlID0gcmVzcG9uc2VUeXBlO1xuICAgIH1cbiAgICBcbiAgICByZXR1cm4gdGhpcy5odHRwLmRlbGV0ZSh1cmwsIG9wdGlvbnMpO1xuICB9XG5cbiAgZ2V0RGF0YVByb21pc2U8VCA9IGFueT4odXJsOiBzdHJpbmcsIHBhcmFtcz8sIHdpdGhDcmVkZW50aWFsczogYm9vbGVhbiA9IGZhbHNlLCByZXNwb25zZVR5cGU6IEh0dHBSZXNwb25zZVR5cGUgPSBIdHRwUmVzcG9uc2VUeXBlLkpTT04pOiBQcm9taXNlPFQ+IHtcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgdGhpcy5nZXREYXRhKHVybCwgcGFyYW1zLCB3aXRoQ3JlZGVudGlhbHMsIHJlc3BvbnNlVHlwZSkuc3Vic2NyaWJlKFxuICAgICAgICByZXMgPT4gcmVzb2x2ZShyZXMgYXMgVCksXG4gICAgICAgIGVyciA9PiByZWplY3QoZXJyKVxuICAgICAgKTtcbiAgICB9KTtcbiAgfVxuXG4gIHBvc3REYXRhUHJvbWlzZTxUID0gYW55Pih1cmw6IHN0cmluZywgYm9keTogYW55LCBwYXJhbXM/LCB3aXRoQ3JlZGVudGlhbHM6IGJvb2xlYW4gPSBmYWxzZSwgcmVzcG9uc2VUeXBlOiBIdHRwUmVzcG9uc2VUeXBlID0gSHR0cFJlc3BvbnNlVHlwZS5KU09OKTogUHJvbWlzZTxUPiB7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgIHRoaXMucG9zdERhdGEodXJsLCBib2R5LCBwYXJhbXMsIHdpdGhDcmVkZW50aWFscywgcmVzcG9uc2VUeXBlKS5zdWJzY3JpYmUoXG4gICAgICAgIHJlcyA9PiByZXNvbHZlKHJlcyBhcyBUKSxcbiAgICAgICAgZXJyID0+IHJlamVjdChlcnIpXG4gICAgICApO1xuICAgIH0pO1xuICB9XG5cbiAgcHV0RGF0YVByb21pc2U8VCA9IGFueT4odXJsOiBzdHJpbmcsIGJvZHk6IGFueSwgcGFyYW1zPywgd2l0aENyZWRlbnRpYWxzOiBib29sZWFuID0gZmFsc2UsIHJlc3BvbnNlVHlwZTogSHR0cFJlc3BvbnNlVHlwZSA9IEh0dHBSZXNwb25zZVR5cGUuSlNPTik6IFByb21pc2U8VD4ge1xuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICB0aGlzLnB1dERhdGEodXJsLCBib2R5LCBwYXJhbXMsIHdpdGhDcmVkZW50aWFscywgcmVzcG9uc2VUeXBlKS5zdWJzY3JpYmUoXG4gICAgICAgIHJlcyA9PiByZXNvbHZlKHJlcyBhcyBUKSxcbiAgICAgICAgZXJyID0+IHJlamVjdChlcnIpXG4gICAgICApO1xuICAgIH0pO1xuICB9XG5cbiAgZGVsZXRlRGF0YVByb21pc2U8VCA9IGFueT4odXJsOiBzdHJpbmcsIHBhcmFtcz8sIHdpdGhDcmVkZW50aWFsczogYm9vbGVhbiA9IGZhbHNlLCByZXNwb25zZVR5cGU6IEh0dHBSZXNwb25zZVR5cGUgPSBIdHRwUmVzcG9uc2VUeXBlLkpTT04pOiBQcm9taXNlPFQ+IHtcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgdGhpcy5kZWxldGVEYXRhKHVybCwgcGFyYW1zLCB3aXRoQ3JlZGVudGlhbHMsIHJlc3BvbnNlVHlwZSkuc3Vic2NyaWJlKFxuICAgICAgICByZXMgPT4gcmVzb2x2ZShyZXMgYXMgVCksXG4gICAgICAgIGVyciA9PiByZWplY3QoZXJyKVxuICAgICAgKTtcbiAgICB9KTtcbiAgfVxuXG4gIGdldERhdGFCb2R5PFQ+KHVybDogc3RyaW5nLCBwYXJhbXM/LCB3aXRoQ3JlZGVudGlhbHM6IGJvb2xlYW4gPSBmYWxzZSk6IFByb21pc2U8VD4ge1xuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICB0aGlzLmh0dHAuZ2V0KHVybCwgeyBwYXJhbXM6IHRoaXMuY3JlYXRlUGFyYW1zKHBhcmFtcyksIHdpdGhDcmVkZW50aWFscyB9KS5zdWJzY3JpYmUoXG4gICAgICAgIHJlcyA9PiB7XG4gICAgICAgICAgaWYgKHJlc1snY29kZSddID09PSAwICYmIHJlc1snYm9keSddKSB7XG4gICAgICAgICAgICByZXNvbHZlKHJlc1snYm9keSddIGFzIFQpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXNvbHZlKG51bGwpO1xuICAgICAgICAgICAgdGhpcy5tZXNzYWdlLkVycm9yKFwiRXJyb3JcIiwgcmVzWydtZXNzYWdlJ10pO1xuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgZXJyID0+IHJlamVjdChlcnIpXG4gICAgICApO1xuICAgIH0pO1xuICB9XG5cbiAgcG9zdERhdGFCb2R5PFQ+KHVybDogc3RyaW5nLCBib2R5OiBhbnksIHBhcmFtcz8sIHdpdGhDcmVkZW50aWFsczogYm9vbGVhbiA9IGZhbHNlKTogUHJvbWlzZTxUPiB7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgIHRoaXMuaHR0cC5wb3N0KHVybCwgYm9keSwgeyBwYXJhbXM6IHRoaXMuY3JlYXRlUGFyYW1zKHBhcmFtcyksIHdpdGhDcmVkZW50aWFscyB9KS5zdWJzY3JpYmUoXG4gICAgICAgIHJlcyA9PiB7XG4gICAgICAgICAgaWYgKHJlc1snY29kZSddID09PSAwICYmIHJlc1snYm9keSddKSB7XG4gICAgICAgICAgICByZXNvbHZlKHJlc1snYm9keSddIGFzIFQpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXNvbHZlKG51bGwpO1xuICAgICAgICAgICAgdGhpcy5tZXNzYWdlLkVycm9yKFwiRXJyb3JcIiwgcmVzWydtZXNzYWdlJ10pO1xuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgZXJyID0+IHJlamVjdChlcnIpXG4gICAgICApO1xuICAgIH0pO1xuICB9XG5cbiAgcHV0RGF0YUJvZHk8VD4odXJsOiBzdHJpbmcsIGJvZHk6IGFueSwgcGFyYW1zPywgd2l0aENyZWRlbnRpYWxzOiBib29sZWFuID0gZmFsc2UpOiBQcm9taXNlPFQ+IHtcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgdGhpcy5odHRwLnB1dCh1cmwsIGJvZHksIHsgcGFyYW1zOiB0aGlzLmNyZWF0ZVBhcmFtcyhwYXJhbXMpLCB3aXRoQ3JlZGVudGlhbHMgfSkuc3Vic2NyaWJlKFxuICAgICAgICByZXMgPT4ge1xuICAgICAgICAgIGlmIChyZXNbJ2NvZGUnXSA9PT0gMCAmJiByZXNbJ2JvZHknXSkge1xuICAgICAgICAgICAgcmVzb2x2ZShyZXNbJ2JvZHknXSBhcyBUKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmVzb2x2ZShudWxsKTtcbiAgICAgICAgICAgIHRoaXMubWVzc2FnZS5FcnJvcihcIkVycm9yXCIsIHJlc1snbWVzc2FnZSddKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIGVyciA9PiByZWplY3QoZXJyKVxuICAgICAgKTtcbiAgICB9KTtcbiAgfVxufSJdfQ==
|
|
@@ -1,28 +1,28 @@
|
|
|
1
|
-
import { Component, Inject, ViewEncapsulation } from '@angular/core';
|
|
2
|
-
import { MAT_DIALOG_DATA } from '@angular/material/dialog';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "@angular/material/dialog";
|
|
5
|
-
export class LoadingComponent {
|
|
6
|
-
constructor(dialogRef, data) {
|
|
7
|
-
this.dialogRef = dialogRef;
|
|
8
|
-
this.data = data;
|
|
9
|
-
this.options = {
|
|
10
|
-
path: '/assets/loading.json'
|
|
11
|
-
};
|
|
12
|
-
}
|
|
13
|
-
ngOnInit() {
|
|
14
|
-
}
|
|
15
|
-
animationCreated(animationItem) {
|
|
16
|
-
console.log(animationItem);
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
LoadingComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: LoadingComponent, deps: [{ token: i1.MatDialogRef }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component });
|
|
20
|
-
LoadingComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: LoadingComponent, selector: "app-loading", ngImport: i0, template: "<div style=\"display: flex; justify-content: center;align-items: center; flex-direction: column;\">\
|
|
21
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: LoadingComponent, decorators: [{
|
|
22
|
-
type: Component,
|
|
23
|
-
args: [{ selector: 'app-loading', encapsulation: ViewEncapsulation.None, template: "<div style=\"display: flex; justify-content: center;align-items: center; flex-direction: column;\">\
|
|
24
|
-
}], ctorParameters: function () { return [{ type: i1.MatDialogRef }, { type: undefined, decorators: [{
|
|
25
|
-
type: Inject,
|
|
26
|
-
args: [MAT_DIALOG_DATA]
|
|
27
|
-
}] }]; } });
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { Component, Inject, ViewEncapsulation } from '@angular/core';
|
|
2
|
+
import { MAT_DIALOG_DATA } from '@angular/material/dialog';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/material/dialog";
|
|
5
|
+
export class LoadingComponent {
|
|
6
|
+
constructor(dialogRef, data) {
|
|
7
|
+
this.dialogRef = dialogRef;
|
|
8
|
+
this.data = data;
|
|
9
|
+
this.options = {
|
|
10
|
+
path: '/assets/loading.json'
|
|
11
|
+
};
|
|
12
|
+
}
|
|
13
|
+
ngOnInit() {
|
|
14
|
+
}
|
|
15
|
+
animationCreated(animationItem) {
|
|
16
|
+
console.log(animationItem);
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
LoadingComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: LoadingComponent, deps: [{ token: i1.MatDialogRef }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component });
|
|
20
|
+
LoadingComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: LoadingComponent, selector: "app-loading", ngImport: i0, template: "<div style=\"display: flex; justify-content: center;align-items: center; flex-direction: column;\">\n\n <div style='font-size: 20px;'>\n <strong>{{data.title}}</strong>\n </div>\n <div>\n <!-- <ng-lottie width='170px' [options]=\"options\" (animationCreated)=\"animationCreated($event)\"></ng-lottie> -->\n <img width='170px' src=\"assets/loading.gif\" alt=\"\">\n </div>\n <div style='text-align: center;'>\n {{data.message}}\n </div>\n\n</div>\n", styles: [".mat-dialog-container{overflow:hidden!important;background-color:#fff!important}\n"], encapsulation: i0.ViewEncapsulation.None });
|
|
21
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: LoadingComponent, decorators: [{
|
|
22
|
+
type: Component,
|
|
23
|
+
args: [{ selector: 'app-loading', encapsulation: ViewEncapsulation.None, template: "<div style=\"display: flex; justify-content: center;align-items: center; flex-direction: column;\">\n\n <div style='font-size: 20px;'>\n <strong>{{data.title}}</strong>\n </div>\n <div>\n <!-- <ng-lottie width='170px' [options]=\"options\" (animationCreated)=\"animationCreated($event)\"></ng-lottie> -->\n <img width='170px' src=\"assets/loading.gif\" alt=\"\">\n </div>\n <div style='text-align: center;'>\n {{data.message}}\n </div>\n\n</div>\n", styles: [".mat-dialog-container{overflow:hidden!important;background-color:#fff!important}\n"] }]
|
|
24
|
+
}], ctorParameters: function () { return [{ type: i1.MatDialogRef }, { type: undefined, decorators: [{
|
|
25
|
+
type: Inject,
|
|
26
|
+
args: [MAT_DIALOG_DATA]
|
|
27
|
+
}] }]; } });
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGluZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL21vZHVsZXMvc2VydmljZXMvbG9hZGluZy9sb2FkaW5nLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kdWxlcy9zZXJ2aWNlcy9sb2FkaW5nL2xvYWRpbmcuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLEVBQUUsaUJBQWlCLEVBQUcsTUFBTSxlQUFlLENBQUM7QUFHOUUsT0FBTyxFQUFnQixlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7O0FBU3pFLE1BQU0sT0FBTyxnQkFBZ0I7SUFNM0IsWUFDUyxTQUF5QyxFQUNoQixJQUFJO1FBRDdCLGNBQVMsR0FBVCxTQUFTLENBQWdDO1FBQ2hCLFNBQUksR0FBSixJQUFJLENBQUE7UUFOdEMsWUFBTyxHQUFxQjtZQUMxQixJQUFJLEVBQUUsc0JBQXNCO1NBQzdCLENBQUM7SUFLRSxDQUFDO0lBRUwsUUFBUTtJQUVSLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxhQUE0QjtRQUMzQyxPQUFPLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQzdCLENBQUM7OzZHQWpCVSxnQkFBZ0IsOENBUWpCLGVBQWU7aUdBUmQsZ0JBQWdCLG1EQ1o3QiwrZUFjQTsyRkRGYSxnQkFBZ0I7a0JBTjVCLFNBQVM7K0JBQ0UsYUFBYSxpQkFHUixpQkFBaUIsQ0FBQyxJQUFJOzswQkFVbEMsTUFBTTsyQkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIEluamVjdCwgVmlld0VuY2Fwc3VsYXRpb24gIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBbmltYXRpb25JdGVtIH0gZnJvbSAnbG90dGllLXdlYic7XG5pbXBvcnQgeyBBbmltYXRpb25PcHRpb25zIH0gZnJvbSAnbmd4LWxvdHRpZSc7XG5pbXBvcnQgeyBNYXREaWFsb2dSZWYsIE1BVF9ESUFMT0dfREFUQSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLWxvYWRpbmcnLFxuICB0ZW1wbGF0ZVVybDogJy4vbG9hZGluZy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2xvYWRpbmcuY29tcG9uZW50LnNjc3MnXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxufSlcbmV4cG9ydCBjbGFzcyBMb2FkaW5nQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICBvcHRpb25zOiBBbmltYXRpb25PcHRpb25zID0ge1xuICAgIHBhdGg6ICcvYXNzZXRzL2xvYWRpbmcuanNvbidcbiAgfTtcbiBcbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIGRpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPExvYWRpbmdDb21wb25lbnQ+LFxuICAgIEBJbmplY3QoTUFUX0RJQUxPR19EQVRBKSBwdWJsaWMgZGF0YVxuICApIHsgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuXG4gIH1cblxuICBhbmltYXRpb25DcmVhdGVkKGFuaW1hdGlvbkl0ZW06IEFuaW1hdGlvbkl0ZW0pOiB2b2lkIHtcbiAgICBjb25zb2xlLmxvZyhhbmltYXRpb25JdGVtKTtcbiAgfVxuXG4gIFxuXG59XG4iLCI8ZGl2IHN0eWxlPVwiZGlzcGxheTogZmxleDsganVzdGlmeS1jb250ZW50OiBjZW50ZXI7YWxpZ24taXRlbXM6IGNlbnRlcjsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcIj5cblxuICAgIDxkaXYgc3R5bGU9J2ZvbnQtc2l6ZTogMjBweDsnPlxuICAgICAgICA8c3Ryb25nPnt7ZGF0YS50aXRsZX19PC9zdHJvbmc+XG4gICAgPC9kaXY+XG4gICAgPGRpdj5cbiAgICAgICAgPCEtLSA8bmctbG90dGllIHdpZHRoPScxNzBweCcgW29wdGlvbnNdPVwib3B0aW9uc1wiIChhbmltYXRpb25DcmVhdGVkKT1cImFuaW1hdGlvbkNyZWF0ZWQoJGV2ZW50KVwiPjwvbmctbG90dGllPiAtLT5cbiAgICAgICAgPGltZyB3aWR0aD0nMTcwcHgnIHNyYz1cImFzc2V0cy9sb2FkaW5nLmdpZlwiIGFsdD1cIlwiPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgc3R5bGU9J3RleHQtYWxpZ246IGNlbnRlcjsnPlxuICAgICAgICB7e2RhdGEubWVzc2FnZX19XG4gICAgPC9kaXY+XG5cbjwvZGl2PlxuIl19
|
|
@@ -1,115 +1,115 @@
|
|
|
1
|
-
import { compress, decompress } from 'lz-string';
|
|
2
|
-
import { Injectable } from '@angular/core';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
export class LocalStorageService {
|
|
5
|
-
constructor() {
|
|
6
|
-
this.prefix = 'bl-f';
|
|
7
|
-
this.store = window.localStorage;
|
|
8
|
-
this.prefix += '.';
|
|
9
|
-
}
|
|
10
|
-
/**
|
|
11
|
-
* set key in local storage
|
|
12
|
-
* @param key key
|
|
13
|
-
* @param value value
|
|
14
|
-
*/
|
|
15
|
-
set(key, value) {
|
|
16
|
-
key = this.prefix + key;
|
|
17
|
-
this.store.setItem(key, compress(JSON.stringify(value))); // compress data
|
|
18
|
-
return true;
|
|
19
|
-
}
|
|
20
|
-
/**
|
|
21
|
-
* get key in local storage
|
|
22
|
-
* @param key key
|
|
23
|
-
* @returns value as object
|
|
24
|
-
*/
|
|
25
|
-
get(key) {
|
|
26
|
-
key = this.prefix + key;
|
|
27
|
-
const datacompressed = this.store.getItem(key);
|
|
28
|
-
if (!datacompressed) {
|
|
29
|
-
return null;
|
|
30
|
-
}
|
|
31
|
-
const item = decompress(datacompressed); // decompress
|
|
32
|
-
return JSON.parse(item);
|
|
33
|
-
}
|
|
34
|
-
/**
|
|
35
|
-
* remove a key
|
|
36
|
-
* @param key key to remove
|
|
37
|
-
* @returns boolean
|
|
38
|
-
*/
|
|
39
|
-
remove(key) {
|
|
40
|
-
key = this.prefix + key;
|
|
41
|
-
this.store.removeItem(key);
|
|
42
|
-
return true;
|
|
43
|
-
}
|
|
44
|
-
/**
|
|
45
|
-
* clear all
|
|
46
|
-
* @returns boolean
|
|
47
|
-
*/
|
|
48
|
-
clear() {
|
|
49
|
-
this.store.clear();
|
|
50
|
-
return true;
|
|
51
|
-
}
|
|
52
|
-
/**
|
|
53
|
-
* get all keys present in local storage
|
|
54
|
-
* @returns array of keys
|
|
55
|
-
*/
|
|
56
|
-
getAllKeys() {
|
|
57
|
-
let keys = [];
|
|
58
|
-
for (let index = 0; index < this.store.length; index++) {
|
|
59
|
-
const key = this.store.key(index);
|
|
60
|
-
if (key.indexOf(this.prefix) === 0) {
|
|
61
|
-
keys.push(key.substr(this.prefix.length));
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
return keys;
|
|
65
|
-
}
|
|
66
|
-
/**
|
|
67
|
-
* set key with expire time
|
|
68
|
-
* @param key key
|
|
69
|
-
* @param value value
|
|
70
|
-
* @returns true if set correctly
|
|
71
|
-
*/
|
|
72
|
-
setWhitExpiry(key, value) {
|
|
73
|
-
const now = new Date();
|
|
74
|
-
const ttl = 3600 * 1000;
|
|
75
|
-
const item = {
|
|
76
|
-
value: value,
|
|
77
|
-
expiry: now.getTime() + ttl,
|
|
78
|
-
};
|
|
79
|
-
key = this.prefix + key;
|
|
80
|
-
this.store.setItem(key, compress(JSON.stringify(item))); // compress data
|
|
81
|
-
return true;
|
|
82
|
-
}
|
|
83
|
-
/**
|
|
84
|
-
* return key with expire time
|
|
85
|
-
* @param key key
|
|
86
|
-
* @returns return object with data or null if key expired
|
|
87
|
-
*/
|
|
88
|
-
getWithExpiry(key) {
|
|
89
|
-
key = this.prefix + key;
|
|
90
|
-
const datacompressed = this.store.getItem(key);
|
|
91
|
-
if (!datacompressed) {
|
|
92
|
-
return null;
|
|
93
|
-
}
|
|
94
|
-
const itemStr = decompress(datacompressed); // decompress
|
|
95
|
-
const item = JSON.parse(itemStr);
|
|
96
|
-
const now = new Date();
|
|
97
|
-
if (!item) {
|
|
98
|
-
return null;
|
|
99
|
-
}
|
|
100
|
-
if (now.getTime() > item.expiry) {
|
|
101
|
-
this.store.removeItem(key);
|
|
102
|
-
return null;
|
|
103
|
-
}
|
|
104
|
-
return item.value;
|
|
105
|
-
}
|
|
106
|
-
}
|
|
107
|
-
LocalStorageService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: LocalStorageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
108
|
-
LocalStorageService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: LocalStorageService, providedIn: 'root' });
|
|
109
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: LocalStorageService, decorators: [{
|
|
110
|
-
type: Injectable,
|
|
111
|
-
args: [{
|
|
112
|
-
providedIn: 'root',
|
|
113
|
-
}]
|
|
114
|
-
}], ctorParameters: function () { return []; } });
|
|
115
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { compress, decompress } from 'lz-string';
|
|
2
|
+
import { Injectable } from '@angular/core';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class LocalStorageService {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.prefix = 'bl-f';
|
|
7
|
+
this.store = window.localStorage;
|
|
8
|
+
this.prefix += '.';
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* set key in local storage
|
|
12
|
+
* @param key key
|
|
13
|
+
* @param value value
|
|
14
|
+
*/
|
|
15
|
+
set(key, value) {
|
|
16
|
+
key = this.prefix + key;
|
|
17
|
+
this.store.setItem(key, compress(JSON.stringify(value))); // compress data
|
|
18
|
+
return true;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* get key in local storage
|
|
22
|
+
* @param key key
|
|
23
|
+
* @returns value as object
|
|
24
|
+
*/
|
|
25
|
+
get(key) {
|
|
26
|
+
key = this.prefix + key;
|
|
27
|
+
const datacompressed = this.store.getItem(key);
|
|
28
|
+
if (!datacompressed) {
|
|
29
|
+
return null;
|
|
30
|
+
}
|
|
31
|
+
const item = decompress(datacompressed); // decompress
|
|
32
|
+
return JSON.parse(item);
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* remove a key
|
|
36
|
+
* @param key key to remove
|
|
37
|
+
* @returns boolean
|
|
38
|
+
*/
|
|
39
|
+
remove(key) {
|
|
40
|
+
key = this.prefix + key;
|
|
41
|
+
this.store.removeItem(key);
|
|
42
|
+
return true;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* clear all
|
|
46
|
+
* @returns boolean
|
|
47
|
+
*/
|
|
48
|
+
clear() {
|
|
49
|
+
this.store.clear();
|
|
50
|
+
return true;
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* get all keys present in local storage
|
|
54
|
+
* @returns array of keys
|
|
55
|
+
*/
|
|
56
|
+
getAllKeys() {
|
|
57
|
+
let keys = [];
|
|
58
|
+
for (let index = 0; index < this.store.length; index++) {
|
|
59
|
+
const key = this.store.key(index);
|
|
60
|
+
if (key.indexOf(this.prefix) === 0) {
|
|
61
|
+
keys.push(key.substr(this.prefix.length));
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
return keys;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* set key with expire time
|
|
68
|
+
* @param key key
|
|
69
|
+
* @param value value
|
|
70
|
+
* @returns true if set correctly
|
|
71
|
+
*/
|
|
72
|
+
setWhitExpiry(key, value) {
|
|
73
|
+
const now = new Date();
|
|
74
|
+
const ttl = 3600 * 1000;
|
|
75
|
+
const item = {
|
|
76
|
+
value: value,
|
|
77
|
+
expiry: now.getTime() + ttl,
|
|
78
|
+
};
|
|
79
|
+
key = this.prefix + key;
|
|
80
|
+
this.store.setItem(key, compress(JSON.stringify(item))); // compress data
|
|
81
|
+
return true;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* return key with expire time
|
|
85
|
+
* @param key key
|
|
86
|
+
* @returns return object with data or null if key expired
|
|
87
|
+
*/
|
|
88
|
+
getWithExpiry(key) {
|
|
89
|
+
key = this.prefix + key;
|
|
90
|
+
const datacompressed = this.store.getItem(key);
|
|
91
|
+
if (!datacompressed) {
|
|
92
|
+
return null;
|
|
93
|
+
}
|
|
94
|
+
const itemStr = decompress(datacompressed); // decompress
|
|
95
|
+
const item = JSON.parse(itemStr);
|
|
96
|
+
const now = new Date();
|
|
97
|
+
if (!item) {
|
|
98
|
+
return null;
|
|
99
|
+
}
|
|
100
|
+
if (now.getTime() > item.expiry) {
|
|
101
|
+
this.store.removeItem(key);
|
|
102
|
+
return null;
|
|
103
|
+
}
|
|
104
|
+
return item.value;
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
LocalStorageService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: LocalStorageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
108
|
+
LocalStorageService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: LocalStorageService, providedIn: 'root' });
|
|
109
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: LocalStorageService, decorators: [{
|
|
110
|
+
type: Injectable,
|
|
111
|
+
args: [{
|
|
112
|
+
providedIn: 'root',
|
|
113
|
+
}]
|
|
114
|
+
}], ctorParameters: function () { return []; } });
|
|
115
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWwtc3RvcmFnZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9tb2R1bGVzL3NlcnZpY2VzL2xvY2FsLXN0b3JhZ2Uuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNqRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUszQyxNQUFNLE9BQU8sbUJBQW1CO0lBRzlCO1FBRlEsV0FBTSxHQUFXLE1BQU0sQ0FBQztRQUN4QixVQUFLLEdBQVEsTUFBTSxDQUFDLFlBQVksQ0FBQztRQUV2QyxJQUFJLENBQUMsTUFBTSxJQUFJLEdBQUcsQ0FBQztJQUNyQixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILEdBQUcsQ0FBSSxHQUFXLEVBQUUsS0FBUTtRQUMxQixHQUFHLEdBQUcsSUFBSSxDQUFDLE1BQU0sR0FBRyxHQUFHLENBQUM7UUFDeEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLFFBQVEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLGdCQUFnQjtRQUMxRSxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFQTs7OztPQUlHO0lBQ0osR0FBRyxDQUFJLEdBQVc7UUFDaEIsR0FBRyxHQUFHLElBQUksQ0FBQyxNQUFNLEdBQUcsR0FBRyxDQUFDO1FBQ3hCLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQy9DLElBQUksQ0FBQyxjQUFjLEVBQUU7WUFDbkIsT0FBTyxJQUFJLENBQUM7U0FDYjtRQUNELE1BQU0sSUFBSSxHQUFHLFVBQVUsQ0FBQyxjQUFjLENBQVcsQ0FBQyxDQUFDLGFBQWE7UUFDaEUsT0FBTyxJQUFJLENB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bXBvcnQgeyBjb21wcmVzcywgZGVjb21wcmVzcyB9IGZyb20gJ2x6LXN0cmluZyc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBMb2NhbFN0b3JhZ2VTZXJ2aWNlIHtcbiAgcHJpdmF0ZSBwcmVmaXg6IHN0cmluZyA9ICdibC1mJztcbiAgcHJpdmF0ZSBzdG9yZTogYW55ID0gd2luZG93LmxvY2FsU3RvcmFnZTtcbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5wcmVmaXggKz0gJy4nO1xuICB9XG5cbiAgLyoqXG4gICAqIHNldCBrZXkgaW4gbG9jYWwgc3RvcmFnZVxuICAgKiBAcGFyYW0ga2V5ICBrZXlcbiAgICogQHBhcmFtIHZhbHVlICB2YWx1ZVxuICAgKi9cbiAgc2V0PFQ+KGtleTogc3RyaW5nLCB2YWx1ZTogVCkgOiBib29sZWFue1xuICAgIGtleSA9IHRoaXMucHJlZml4ICsga2V5O1xuICAgIHRoaXMuc3RvcmUuc2V0SXRlbShrZXksIGNvbXByZXNzKEpTT04uc3RyaW5naWZ5KHZhbHVlKSkpOyAvLyBjb21wcmVzcyBkYXRhXG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICAgLyoqXG4gICAgKiBnZXQga2V5IGluIGxvY2FsIHN0b3JhZ2VcbiAgICAqIEBwYXJhbSBrZXkgIGtleVxuICAgICogQHJldHVybnMgIHZhbHVlIGFzIG9iamVjdFxuICAgICovXG4gIGdldDxUPihrZXk6IHN0cmluZykgOiBUIHwgbnVsbCB7XG4gICAga2V5ID0gdGhpcy5wcmVmaXggKyBrZXk7XG4gICAgY29uc3QgZGF0YWNvbXByZXNzZWQgPSB0aGlzLnN0b3JlLmdldEl0ZW0oa2V5KTtcbiAgICBpZiAoIWRhdGFjb21wcmVzc2VkKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gICAgY29uc3QgaXRlbSA9IGRlY29tcHJlc3MoZGF0YWNvbXByZXNzZWQpIGFzIHN0cmluZzsgLy8gZGVjb21wcmVzc1xuICAgIHJldHVybiBKU09OLnBhcnNlKGl0ZW0pIGFzIFQ7XG4gIH1cbiAgLyoqXG4gICAqIHJlbW92ZSBhIGtleVxuICAgKiBAcGFyYW0ga2V5IGtleSB0byByZW1vdmVcbiAgICogQHJldHVybnMgYm9vbGVhblxuICAgKi9cbiAgcmVtb3ZlKGtleTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAga2V5ID0gdGhpcy5wcmVmaXggKyBrZXk7XG4gICAgdGhpcy5zdG9yZS5yZW1vdmVJdGVtKGtleSk7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICAgIC8qKlxuICAgKiBjbGVhciBhbGxcbiAgICogQHJldHVybnMgYm9vbGVhblxuICAgKi9cbiAgY2xlYXIoKTpib29sZWFue1xuICAgIHRoaXMuc3RvcmUuY2xlYXIoKVxuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgLyoqXG4gICAqIGdldCBhbGwga2V5cyBwcmVzZW50IGluIGxvY2FsIHN0b3JhZ2VcbiAgICogQHJldHVybnMgIGFycmF5IG9mIGtleXNcbiAgICovXG4gIGdldEFsbEtleXMoKTogQXJyYXk8c3RyaW5nPiB7XG4gICAgbGV0IGtleXMgPSBbXTtcbiAgICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgdGhpcy5zdG9yZS5sZW5ndGg7IGluZGV4KyspIHtcbiAgICAgIGNvbnN0IGtleSA9IHRoaXMuc3RvcmUua2V5KGluZGV4KTtcbiAgICAgIGlmIChrZXkuaW5kZXhPZih0aGlzLnByZWZpeCkgPT09IDApIHtcbiAgICAgICAga2V5cy5wdXNoKGtleS5zdWJzdHIodGhpcy5wcmVmaXgubGVuZ3RoKSk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBrZXlzO1xuICB9XG5cbiAgLyoqXG4gICAqIHNldCBrZXkgd2l0aCBleHBpcmUgdGltZVxuICAgKiBAcGFyYW0ga2V5IGtleVxuICAgKiBAcGFyYW0gdmFsdWUgIHZhbHVlXG4gICAqIEByZXR1cm5zIHRydWUgaWYgc2V0IGNvcnJlY3RseVxuICAgKi9cbiAgc2V0V2hpdEV4cGlyeTxUPihrZXk6IHN0cmluZywgdmFsdWU6IFQpOiBib29sZWFuIHtcbiAgICBjb25zdCBub3cgPSBuZXcgRGF0ZSgpO1xuICAgIGNvbnN0IHR0bCA9IDM2MDAgKiAxMDAwO1xuICAgIGNvbnN0IGl0ZW0gPSB7XG4gICAgICB2YWx1ZTogdmFsdWUsXG4gICAgICBleHBpcnk6IG5vdy5nZXRUaW1lKCkgKyB0dGwsXG4gICAgfTtcblxuICAgIGtleSA9IHRoaXMucHJlZml4ICsga2V5O1xuICAgIHRoaXMuc3RvcmUuc2V0SXRlbShrZXksIGNvbXByZXNzKEpTT04uc3RyaW5naWZ5KGl0ZW0pKSk7IC8vIGNvbXByZXNzIGRhdGFcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuIC8qKlxuICAqIHJldHVybiBrZXkgd2l0aCBleHBpcmUgdGltZVxuICAqIEBwYXJhbSBrZXkga2V5XG4gICogQHJldHVybnMgcmV0dXJuIG9iamVjdCB3aXRoIGRhdGEgb3IgbnVsbCBpZiBrZXkgZXhwaXJlZFxuICAqL1xuXG4gIGdldFdpdGhFeHBpcnk8VD4oa2V5OiBzdHJpbmcpOiBUIHwgbnVsbCB7XG4gICAga2V5ID0gdGhpcy5wcmVmaXggKyBrZXk7XG4gICAgY29uc3QgZGF0YWNvbXByZXNzZWQgPSB0aGlzLnN0b3JlLmdldEl0ZW0oa2V5KTtcbiAgICBpZiAoIWRhdGFjb21wcmVzc2VkKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gICAgY29uc3QgaXRlbVN0ciA9IGRlY29tcHJlc3MoZGF0YWNvbXByZXNzZWQpIGFzIHN0cmluZzsgLy8gZGVjb21wcmVzc1xuXG4gICAgY29uc3QgaXRlbSA9IEpTT04ucGFyc2UoaXRlbVN0cik7XG4gICAgY29uc3Qgbm93ID0gbmV3IERhdGUoKTtcbiAgICBpZiAoIWl0ZW0pIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgICBpZiAobm93LmdldFRpbWUoKSA+IGl0ZW0uZXhwaXJ5KSB7XG4gICAgICB0aGlzLnN0b3JlLnJlbW92ZUl0ZW0oa2V5KTtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgICByZXR1cm4gaXRlbS52YWx1ZSBhcyBUO1xuICB9XG59XG4iXX0=
|