@stemy/ngx-utils 11.0.8 → 11.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (94) hide show
  1. package/README.md +27 -27
  2. package/bundles/stemy-ngx-utils.umd.js +22 -7
  3. package/bundles/stemy-ngx-utils.umd.js.map +1 -1
  4. package/bundles/stemy-ngx-utils.umd.min.js +1 -1
  5. package/bundles/stemy-ngx-utils.umd.min.js.map +1 -1
  6. package/esm2015/ngx-utils/common-types.js +2 -1
  7. package/esm2015/ngx-utils/ngx-utils.module.js +6 -2
  8. package/esm2015/ngx-utils/services/config.service.js +8 -4
  9. package/esm2015/ngx-utils/services/promise.service.js +4 -1
  10. package/esm2015/ngx-utils/services/static-language.service.js +9 -7
  11. package/esm2015/ngx-utils/utils/unique.utils.js +1 -1
  12. package/esm2015/public_api.js +2 -2
  13. package/fesm2015/stemy-ngx-utils.js +22 -8
  14. package/fesm2015/stemy-ngx-utils.js.map +1 -1
  15. package/ngx-utils/common-types.d.ts +2 -0
  16. package/ngx-utils/services/config.service.d.ts +3 -1
  17. package/ngx-utils/services/promise.service.d.ts +5 -4
  18. package/ngx-utils/services/static-language.service.d.ts +3 -2
  19. package/package.json +1 -1
  20. package/public_api.d.ts +1 -1
  21. package/stemy-ngx-utils.metadata.json +1 -1
  22. package/esm5/ngx-utils/common-types.js +0 -553
  23. package/esm5/ngx-utils/components/dynamic-table/dynamic-table.component.js +0 -285
  24. package/esm5/ngx-utils/components/pagination-menu/pagination-menu.component.js +0 -198
  25. package/esm5/ngx-utils/components/unordered-list/unordered-list.component.js +0 -110
  26. package/esm5/ngx-utils/directives/async-method.directive.js +0 -105
  27. package/esm5/ngx-utils/directives/background.directive.js +0 -91
  28. package/esm5/ngx-utils/directives/dynamic-table-template.directive.js +0 -34
  29. package/esm5/ngx-utils/directives/icon.directive.js +0 -101
  30. package/esm5/ngx-utils/directives/ngx-template-outlet.directive.js +0 -182
  31. package/esm5/ngx-utils/directives/pagination-item.directive.js +0 -70
  32. package/esm5/ngx-utils/directives/pagination.directive.js +0 -148
  33. package/esm5/ngx-utils/directives/resource-if.directive.js +0 -97
  34. package/esm5/ngx-utils/directives/sticky.directive.js +0 -93
  35. package/esm5/ngx-utils/directives/unordered-list-item.directive.js +0 -143
  36. package/esm5/ngx-utils/directives/unordered-list-template.directive.js +0 -54
  37. package/esm5/ngx-utils/ngx-utils.module.js +0 -205
  38. package/esm5/ngx-utils/pipes/chunk.pipe.js +0 -41
  39. package/esm5/ngx-utils/pipes/entries.pipe.js +0 -54
  40. package/esm5/ngx-utils/pipes/extra-item-properties.pipe.js +0 -51
  41. package/esm5/ngx-utils/pipes/filter.pipe.js +0 -65
  42. package/esm5/ngx-utils/pipes/find.pipe.js +0 -51
  43. package/esm5/ngx-utils/pipes/format-number.pipe.js +0 -44
  44. package/esm5/ngx-utils/pipes/get-offset.pipe.js +0 -31
  45. package/esm5/ngx-utils/pipes/get-type.pipe.js +0 -28
  46. package/esm5/ngx-utils/pipes/group-by.pipe.js +0 -48
  47. package/esm5/ngx-utils/pipes/is-type.pipe.js +0 -30
  48. package/esm5/ngx-utils/pipes/join.pipe.js +0 -34
  49. package/esm5/ngx-utils/pipes/keys.pipe.js +0 -35
  50. package/esm5/ngx-utils/pipes/map.pipe.js +0 -52
  51. package/esm5/ngx-utils/pipes/max.pipe.js +0 -45
  52. package/esm5/ngx-utils/pipes/min.pipe.js +0 -45
  53. package/esm5/ngx-utils/pipes/reduce.pipe.js +0 -55
  54. package/esm5/ngx-utils/pipes/remap.pipe.js +0 -51
  55. package/esm5/ngx-utils/pipes/replace.pipe.js +0 -32
  56. package/esm5/ngx-utils/pipes/reverse.pipe.js +0 -38
  57. package/esm5/ngx-utils/pipes/round.pipe.js +0 -44
  58. package/esm5/ngx-utils/pipes/safe-html.pipe.js +0 -54
  59. package/esm5/ngx-utils/pipes/translate.pipe.js +0 -111
  60. package/esm5/ngx-utils/pipes/values.pipe.js +0 -35
  61. package/esm5/ngx-utils/plugins/resize-event.plugin.js +0 -122
  62. package/esm5/ngx-utils/plugins/scroll-event.plugin.js +0 -110
  63. package/esm5/ngx-utils/services/acl.service.js +0 -119
  64. package/esm5/ngx-utils/services/auth.service.js +0 -40
  65. package/esm5/ngx-utils/services/events.service.js +0 -33
  66. package/esm5/ngx-utils/services/formatter.service.js +0 -124
  67. package/esm5/ngx-utils/services/icon.service.js +0 -32
  68. package/esm5/ngx-utils/services/language.service.js +0 -199
  69. package/esm5/ngx-utils/services/promise.service.js +0 -123
  70. package/esm5/ngx-utils/services/state.service.js +0 -271
  71. package/esm5/ngx-utils/services/storage.service.js +0 -100
  72. package/esm5/ngx-utils/services/toaster.service.js +0 -100
  73. package/esm5/ngx-utils/services/universal.service.js +0 -153
  74. package/esm5/ngx-utils/utils/ajax-request-handler.js +0 -73
  75. package/esm5/ngx-utils/utils/array.utils.js +0 -182
  76. package/esm5/ngx-utils/utils/auth.guard.js +0 -205
  77. package/esm5/ngx-utils/utils/canvas.utils.js +0 -668
  78. package/esm5/ngx-utils/utils/date.utils.js +0 -91
  79. package/esm5/ngx-utils/utils/file.utils.js +0 -201
  80. package/esm5/ngx-utils/utils/loader.utils.js +0 -90
  81. package/esm5/ngx-utils/utils/math.utils.js +0 -62
  82. package/esm5/ngx-utils/utils/object.utils.js +0 -513
  83. package/esm5/ngx-utils/utils/observable.utils.js +0 -30
  84. package/esm5/ngx-utils/utils/reflect.utils.js +0 -95
  85. package/esm5/ngx-utils/utils/set.utils.js +0 -48
  86. package/esm5/ngx-utils/utils/string.utils.js +0 -94
  87. package/esm5/ngx-utils/utils/timer.utils.js +0 -100
  88. package/esm5/ngx-utils/utils/unique.utils.js +0 -54
  89. package/esm5/ngx-utils/utils/vector.js +0 -223
  90. package/esm5/public_api.js +0 -73
  91. package/esm5/stemy-ngx-utils.js +0 -11
  92. package/fesm5/stemy-ngx-utils.js +0 -6709
  93. package/fesm5/stemy-ngx-utils.js.map +0 -1
  94. package/typings.d.ts +0 -5
@@ -1,123 +0,0 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * @suppress {checkTypes,extraRequire,missingReturn,uselessCode} checked by tsc
4
- */
5
- import { EventEmitter, Inject, Injectable, NgZone } from "@angular/core";
6
- var PromiseService = /** @class */ (function () {
7
- function PromiseService(zone) {
8
- this.zone = zone;
9
- this.promiseCount = 0;
10
- this.promiseChanged = new EventEmitter();
11
- }
12
- Object.defineProperty(PromiseService.prototype, "count", {
13
- get: /**
14
- * @return {?}
15
- */
16
- function () {
17
- return this.promiseCount;
18
- },
19
- enumerable: true,
20
- configurable: true
21
- });
22
- Object.defineProperty(PromiseService.prototype, "onChanged", {
23
- get: /**
24
- * @return {?}
25
- */
26
- function () {
27
- return this.promiseChanged;
28
- },
29
- enumerable: true,
30
- configurable: true
31
- });
32
- /**
33
- * @template T
34
- * @param {?} executor
35
- * @return {?}
36
- */
37
- PromiseService.prototype.create = /**
38
- * @template T
39
- * @param {?} executor
40
- * @return {?}
41
- */
42
- function (executor) {
43
- return this.add(this.zone.runOutsideAngular(function () { return new Promise(executor); }));
44
- };
45
- /**
46
- * @param {?} promises
47
- * @return {?}
48
- */
49
- PromiseService.prototype.all = /**
50
- * @param {?} promises
51
- * @return {?}
52
- */
53
- function (promises) {
54
- return this.add(this.zone.runOutsideAngular(function () { return Promise.all(promises); }));
55
- };
56
- /**
57
- * @template T
58
- * @param {?} value
59
- * @return {?}
60
- */
61
- PromiseService.prototype.resolve = /**
62
- * @template T
63
- * @param {?} value
64
- * @return {?}
65
- */
66
- function (value) {
67
- return this.add(this.zone.runOutsideAngular(function () { return Promise.resolve(value); }));
68
- };
69
- /**
70
- * @return {?}
71
- */
72
- PromiseService.prototype.promiseFinished = /**
73
- * @return {?}
74
- */
75
- function () {
76
- if (this.promiseCount == 0)
77
- return;
78
- this.promiseCount--;
79
- this.promiseChanged.emit(this.promiseCount);
80
- };
81
- /**
82
- * @template T
83
- * @param {?} promise
84
- * @return {?}
85
- */
86
- PromiseService.prototype.add = /**
87
- * @template T
88
- * @param {?} promise
89
- * @return {?}
90
- */
91
- function (promise) {
92
- var _this = this;
93
- this.promiseCount++;
94
- this.promiseChanged.emit(this.promiseCount);
95
- return new Promise(function (resolve, reject) {
96
- promise.then(function (v) {
97
- resolve(v);
98
- _this.promiseFinished();
99
- }, function (r) {
100
- reject(r);
101
- _this.promiseFinished();
102
- });
103
- });
104
- };
105
- PromiseService.decorators = [
106
- { type: Injectable }
107
- ];
108
- /** @nocollapse */
109
- PromiseService.ctorParameters = function () { return [
110
- { type: NgZone, decorators: [{ type: Inject, args: [NgZone,] }] }
111
- ]; };
112
- return PromiseService;
113
- }());
114
- export { PromiseService };
115
- if (false) {
116
- /** @type {?} */
117
- PromiseService.prototype.promiseCount;
118
- /** @type {?} */
119
- PromiseService.prototype.promiseChanged;
120
- /** @type {?} */
121
- PromiseService.prototype.zone;
122
- }
123
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvbWlzZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHN0ZW15L25neC11dGlscy8iLCJzb3VyY2VzIjpbIm5neC11dGlscy9zZXJ2aWNlcy9wcm9taXNlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBQyxZQUFZLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFHdkU7SUFjSSx3QkFBNEMsSUFBWTtRQUFaLFNBQUksR0FBSixJQUFJLENBQVE7UUFDcEQsSUFBSSxDQUFDLFlBQVksR0FBRyxDQUFDLENBQUM7UUFDdEIsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO0lBQ3JELENBQUM7SUFkRCxzQkFBSSxpQ0FBSzs7OztRQUFUO1lBQ0ksT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDO1FBQzdCLENBQUM7OztPQUFBO0lBRUQsc0JBQUkscUNBQVM7Ozs7UUFBYjtZQUNJLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQztRQUMvQixDQUFDOzs7T0FBQTs7Ozs7O0lBVUQsK0JBQU07Ozs7O0lBQU4sVUFBVSxRQUFpRztRQUN2RyxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxjQUFNLE9BQUEsSUFBSSxPQUFPLENBQUksUUFBUSxDQUFDLEVBQXhCLENBQXdCLENBQUMsQ0FBQyxDQUFDO0lBQ2pGLENBQUM7Ozs7O0lBRUQsNEJBQUc7Ozs7SUFBSCxVQUFJLFFBQXdCO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGNBQU0sT0FBQSxPQUFPLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFyQixDQUFxQixDQUFDLENBQUMsQ0FBQztJQUM5RSxDQUFDOzs7Ozs7SUFFRCxnQ0FBTzs7Ozs7SUFBUCxVQUFXLEtBQXlCO1FBQ2hDLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGNBQU0sT0FBQSxPQUFPLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUF0QixDQUFzQixDQUFDLENBQUMsQ0FBQztJQUMvRSxDQUFDOzs7O0lBRU8sd0NBQWU7OztJQUF2QjtRQUNJLElBQUksSUFBSSxDQUFDLFlBQVksSUFBSSxDQUFDO1lBQUUsT0FBTztRQUNuQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDcEIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ2hELENBQUM7Ozs7OztJQUVPLDRCQUFHOzs7OztJQUFYLFVBQWUsT0FBbUI7UUFBbEMsaUJBWUM7UUFYRyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDcEIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQzVDLE9BQU8sSUFBSSxPQUFPLENBQU0sVUFBQyxPQUFPLEVBQUUsTUFBTTtZQUNwQyxPQUFPLENBQUMsSUFBSSxDQUFDLFVBQUEsQ0FBQztnQkFDVixPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ1gsS0FBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1lBQzNCLENBQUMsRUFBRSxVQUFBLENBQUM7Z0JBQ0EsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNWLEtBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUMzQixDQUFDLENBQUMsQ0FBQztRQUNQLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzs7Z0JBakRKLFVBQVU7Ozs7Z0JBSCtCLE1BQU0sdUJBaUIvQixNQUFNLFNBQUMsTUFBTTs7SUFvQzlCLHFCQUFDO0NBQUEsQUFsREQsSUFrREM7U0FqRFksY0FBYzs7O0lBVXZCLHNDQUE2Qjs7SUFDN0Isd0NBQXNEOztJQUUxQyw4QkFBNEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0V2ZW50RW1pdHRlciwgSW5qZWN0LCBJbmplY3RhYmxlLCBOZ1pvbmV9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7SVByb21pc2VTZXJ2aWNlfSBmcm9tIFwiLi4vY29tbW9uLXR5cGVzXCI7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBQcm9taXNlU2VydmljZSBpbXBsZW1lbnRzIElQcm9taXNlU2VydmljZSB7XHJcblxyXG4gICAgZ2V0IGNvdW50KCk6IG51bWJlciB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMucHJvbWlzZUNvdW50O1xyXG4gICAgfVxyXG5cclxuICAgIGdldCBvbkNoYW5nZWQoKTogRXZlbnRFbWl0dGVyPG51bWJlcj4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLnByb21pc2VDaGFuZ2VkO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgcHJvbWlzZUNvdW50OiBudW1iZXI7XHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IHByb21pc2VDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8bnVtYmVyPjtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihASW5qZWN0KE5nWm9uZSkgcHVibGljIHJlYWRvbmx5IHpvbmU6IE5nWm9uZSkge1xyXG4gICAgICAgIHRoaXMucHJvbWlzZUNvdW50ID0gMDtcclxuICAgICAgICB0aGlzLnByb21pc2VDaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XHJcbiAgICB9XHJcblxyXG4gICAgY3JlYXRlPFQ+KGV4ZWN1dG9yOiAocmVzb2x2ZTogKHZhbHVlPzogVCB8IFByb21pc2VMaWtlPFQ+KSA9PiB2b2lkLCByZWplY3Q6IChyZWFzb24/OiBhbnkpID0+IHZvaWQpID0+IHZvaWQpOiBQcm9taXNlPFQ+IHtcclxuICAgICAgICByZXR1cm4gdGhpcy5hZGQodGhpcy56b25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IG5ldyBQcm9taXNlPFQ+KGV4ZWN1dG9yKSkpO1xyXG4gICAgfVxyXG5cclxuICAgIGFsbChwcm9taXNlczogUHJvbWlzZTxhbnk+W10pOiBQcm9taXNlPGFueT4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmFkZCh0aGlzLnpvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4gUHJvbWlzZS5hbGwocHJvbWlzZXMpKSk7XHJcbiAgICB9XHJcblxyXG4gICAgcmVzb2x2ZTxUPih2YWx1ZTogVCB8IFByb21pc2VMaWtlPFQ+KTogUHJvbWlzZTxUPiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuYWRkKHRoaXMuem9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiBQcm9taXNlLnJlc29sdmUodmFsdWUpKSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBwcm9taXNlRmluaXNoZWQoKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKHRoaXMucHJvbWlzZUNvdW50ID09IDApIHJldHVybjtcclxuICAgICAgICB0aGlzLnByb21pc2VDb3VudC0tO1xyXG4gICAgICAgIHRoaXMucHJvbWlzZUNoYW5nZWQuZW1pdCh0aGlzLnByb21pc2VDb3VudCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBhZGQ8VD4ocHJvbWlzZTogUHJvbWlzZTxUPik6IFByb21pc2U8VD4ge1xyXG4gICAgICAgIHRoaXMucHJvbWlzZUNvdW50Kys7XHJcbiAgICAgICAgdGhpcy5wcm9taXNlQ2hhbmdlZC5lbWl0KHRoaXMucHJvbWlzZUNvdW50KTtcclxuICAgICAgICByZXR1cm4gbmV3IFByb21pc2U8YW55PigocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XHJcbiAgICAgICAgICAgIHByb21pc2UudGhlbih2ID0+IHtcclxuICAgICAgICAgICAgICAgIHJlc29sdmUodik7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnByb21pc2VGaW5pc2hlZCgpO1xyXG4gICAgICAgICAgICB9LCByID0+IHtcclxuICAgICAgICAgICAgICAgIHJlamVjdChyKTtcclxuICAgICAgICAgICAgICAgIHRoaXMucHJvbWlzZUZpbmlzaGVkKCk7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
@@ -1,271 +0,0 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * @suppress {checkTypes,extraRequire,missingReturn,uselessCode} checked by tsc
4
- */
5
- import { Injectable, NgZone, Optional } from "@angular/core";
6
- import { ActivatedRouteSnapshot, NavigationEnd, Router } from "@angular/router";
7
- import { Subject } from "rxjs";
8
- import { ObjectUtils } from "../utils/object.utils";
9
- /** @type {?} */
10
- export var emptySnapshot = new ActivatedRouteSnapshot();
11
- /** @type {?} */
12
- export var emptyData = { id: "" };
13
- /** @type {?} */
14
- export var emptyParams = {};
15
- /** @type {?} */
16
- export var emptySegments = [];
17
- /** @type {?} */
18
- export var emptyComponents = [];
19
- /**
20
- * @record
21
- */
22
- export function IStateInfo() { }
23
- if (false) {
24
- /** @type {?} */
25
- IStateInfo.prototype.url;
26
- /** @type {?} */
27
- IStateInfo.prototype.segments;
28
- /** @type {?} */
29
- IStateInfo.prototype.components;
30
- }
31
- var StateService = /** @class */ (function () {
32
- function StateService(zone, router) {
33
- if (router === void 0) { router = null; }
34
- var _this = this;
35
- this.zone = zone;
36
- this.router = router;
37
- this.handleRouterEvent = function (event) {
38
- if (!(event instanceof NavigationEnd))
39
- return;
40
- /** @type {?} */
41
- var routerStateSnapshot = _this.router.routerState.snapshot;
42
- /** @type {?} */
43
- var snapshot = routerStateSnapshot.root;
44
- /** @type {?} */
45
- var context = null;
46
- /** @type {?} */
47
- var segments = snapshot.url;
48
- /** @type {?} */
49
- var components = [];
50
- while (snapshot.firstChild) {
51
- snapshot = snapshot.firstChild;
52
- segments = segments.concat(snapshot.url);
53
- context = (context ? context.children : _this.contexts).getContext("primary");
54
- components.push(context.outlet.component);
55
- }
56
- _this.comp = context ? context.outlet.component : null;
57
- _this.shot = snapshot;
58
- _this.stateInfo = {
59
- url: routerStateSnapshot.url,
60
- segments: segments,
61
- components: components
62
- };
63
- _this.subject.next(_this.shot);
64
- };
65
- this.subject = new Subject();
66
- if (!this.router)
67
- return;
68
- this.router.events.subscribe(this.handleRouterEvent);
69
- this.stateInfo = {
70
- url: "",
71
- segments: [],
72
- components: []
73
- };
74
- this.contexts = ((/** @type {?} */ (router))).rootContexts;
75
- }
76
- /**
77
- * @param {?} route
78
- * @param {?} params
79
- * @return {?}
80
- */
81
- StateService.toPath = /**
82
- * @param {?} route
83
- * @param {?} params
84
- * @return {?}
85
- */
86
- function (route, params) {
87
- /** @type {?} */
88
- var path = route.path || "";
89
- ObjectUtils.iterate(params, function (value, key) {
90
- path = path.replace(":" + key, "" + value);
91
- });
92
- return path;
93
- };
94
- Object.defineProperty(StateService.prototype, "component", {
95
- get: /**
96
- * @return {?}
97
- */
98
- function () {
99
- return this.comp;
100
- },
101
- enumerable: true,
102
- configurable: true
103
- });
104
- Object.defineProperty(StateService.prototype, "snapshot", {
105
- get: /**
106
- * @return {?}
107
- */
108
- function () {
109
- return this.shot || emptySnapshot;
110
- },
111
- enumerable: true,
112
- configurable: true
113
- });
114
- Object.defineProperty(StateService.prototype, "route", {
115
- get: /**
116
- * @return {?}
117
- */
118
- function () {
119
- return this.snapshot.routeConfig;
120
- },
121
- enumerable: true,
122
- configurable: true
123
- });
124
- Object.defineProperty(StateService.prototype, "data", {
125
- get: /**
126
- * @return {?}
127
- */
128
- function () {
129
- return this.snapshot.data || emptyData;
130
- },
131
- enumerable: true,
132
- configurable: true
133
- });
134
- Object.defineProperty(StateService.prototype, "params", {
135
- get: /**
136
- * @return {?}
137
- */
138
- function () {
139
- return this.snapshot.params || emptyParams;
140
- },
141
- enumerable: true,
142
- configurable: true
143
- });
144
- Object.defineProperty(StateService.prototype, "url", {
145
- get: /**
146
- * @return {?}
147
- */
148
- function () {
149
- return this.stateInfo.url || "";
150
- },
151
- enumerable: true,
152
- configurable: true
153
- });
154
- Object.defineProperty(StateService.prototype, "urlSegments", {
155
- get: /**
156
- * @return {?}
157
- */
158
- function () {
159
- return this.stateInfo.segments || emptySegments;
160
- },
161
- enumerable: true,
162
- configurable: true
163
- });
164
- Object.defineProperty(StateService.prototype, "components", {
165
- get: /**
166
- * @return {?}
167
- */
168
- function () {
169
- return this.stateInfo.components || emptyComponents;
170
- },
171
- enumerable: true,
172
- configurable: true
173
- });
174
- /**
175
- * @param {?} commands
176
- * @param {?=} extras
177
- * @return {?}
178
- */
179
- StateService.prototype.navigate = /**
180
- * @param {?} commands
181
- * @param {?=} extras
182
- * @return {?}
183
- */
184
- function (commands, extras) {
185
- var _this = this;
186
- return new Promise(function (resolve) {
187
- _this.zone.run(function () {
188
- _this.router.navigate(commands, extras).then(resolve, function () { return resolve(false); });
189
- });
190
- });
191
- };
192
- /**
193
- * @param {?} url
194
- * @param {?=} extras
195
- * @return {?}
196
- */
197
- StateService.prototype.navigateByUrl = /**
198
- * @param {?} url
199
- * @param {?=} extras
200
- * @return {?}
201
- */
202
- function (url, extras) {
203
- var _this = this;
204
- return new Promise(function (resolve) {
205
- _this.zone.run(function () {
206
- _this.router.navigateByUrl(url, extras).then(resolve, function () { return resolve(false); });
207
- });
208
- });
209
- };
210
- /**
211
- * @param {?=} next
212
- * @param {?=} error
213
- * @param {?=} complete
214
- * @return {?}
215
- */
216
- StateService.prototype.subscribe = /**
217
- * @param {?=} next
218
- * @param {?=} error
219
- * @param {?=} complete
220
- * @return {?}
221
- */
222
- function (next, error, complete) {
223
- return this.subject.subscribe(next, error, complete);
224
- };
225
- /**
226
- * @param {?=} next
227
- * @param {?=} error
228
- * @param {?=} complete
229
- * @return {?}
230
- */
231
- StateService.prototype.subscribeImmediately = /**
232
- * @param {?=} next
233
- * @param {?=} error
234
- * @param {?=} complete
235
- * @return {?}
236
- */
237
- function (next, error, complete) {
238
- if (next && this.shot)
239
- next(this.shot);
240
- return this.subject.subscribe(next, error, complete);
241
- };
242
- StateService.decorators = [
243
- { type: Injectable }
244
- ];
245
- /** @nocollapse */
246
- StateService.ctorParameters = function () { return [
247
- { type: NgZone },
248
- { type: Router, decorators: [{ type: Optional }] }
249
- ]; };
250
- return StateService;
251
- }());
252
- export { StateService };
253
- if (false) {
254
- /** @type {?} */
255
- StateService.prototype.shot;
256
- /** @type {?} */
257
- StateService.prototype.comp;
258
- /** @type {?} */
259
- StateService.prototype.stateInfo;
260
- /** @type {?} */
261
- StateService.prototype.contexts;
262
- /** @type {?} */
263
- StateService.prototype.subject;
264
- /** @type {?} */
265
- StateService.prototype.handleRouterEvent;
266
- /** @type {?} */
267
- StateService.prototype.zone;
268
- /** @type {?} */
269
- StateService.prototype.router;
270
- }
271
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdGUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BzdGVteS9uZ3gtdXRpbHMvIiwic291cmNlcyI6WyJuZ3gtdXRpbHMvc2VydmljZXMvc3RhdGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFDLFVBQVUsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzNELE9BQU8sRUFDSCxzQkFBc0IsRUFJdEIsYUFBYSxFQUtiLE1BQU0sRUFHVCxNQUFNLGlCQUFpQixDQUFDO0FBQ3pCLE9BQU8sRUFBQyxPQUFPLEVBQWUsTUFBTSxNQUFNLENBQUM7QUFDM0MsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLHVCQUF1QixDQUFDOztBQUdsRCxNQUFNLEtBQU8sYUFBYSxHQUEyQixJQUFJLHNCQUFzQixFQUFFOztBQUNqRixNQUFNLEtBQU8sU0FBUyxHQUFTLEVBQUMsRUFBRSxFQUFFLEVBQUUsRUFBQzs7QUFDdkMsTUFBTSxLQUFPLFdBQVcsR0FBVyxFQUFFOztBQUNyQyxNQUFNLEtBQU8sYUFBYSxHQUFpQixFQUFFOztBQUM3QyxNQUFNLEtBQU8sZUFBZSxHQUFVLEVBQUU7Ozs7QUFFeEMsZ0NBSUM7OztJQUhHLHlCQUFZOztJQUNaLDhCQUF1Qjs7SUFDdkIsZ0NBQWtCOztBQUd0QjtJQWlESSxzQkFBb0IsSUFBWSxFQUFzQixNQUFxQjtRQUFyQix1QkFBQSxFQUFBLGFBQXFCO1FBQTNFLGlCQVVDO1FBVm1CLFNBQUksR0FBSixJQUFJLENBQVE7UUFBc0IsV0FBTSxHQUFOLE1BQU0sQ0FBZTtRQXFDbkUsc0JBQWlCLEdBQUcsVUFBQyxLQUFZO1lBQ3JDLElBQUksQ0FBQyxDQUFDLEtBQUssWUFBWSxhQUFhLENBQUM7Z0JBQUUsT0FBTzs7Z0JBQ3hDLG1CQUFtQixHQUFHLEtBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLFFBQVE7O2dCQUN4RCxRQUFRLEdBQUcsbUJBQW1CLENB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LEtBQTRCLEVBQUUsUUFBcUI7UUFDekcsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQ3pELENBQUM7Ozs7Ozs7SUFFRCwyQ0FBb0I7Ozs7OztJQUFwQixVQUFxQixJQUE4QyxFQUFFLEtBQTRCLEVBQUUsUUFBcUI7UUFDcEgsSUFBSSxJQUFJLElBQUksSUFBSSxDQUFDLElBQUk7WUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3ZDLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxRQUFRLENBQUMsQ0FBQztJQUN6RCxDQUFDOztnQkFwRkosVUFBVTs7OztnQkEvQlMsTUFBTTtnQkFXdEIsTUFBTSx1QkFxRTZCLFFBQVE7O0lBMkQvQyxtQkFBQztDQUFBLEFBNUdELElBNEdDO1NBM0dZLFlBQVk7OztJQUVyQiw0QkFBcUM7O0lBQ3JDLDRCQUFrQjs7SUFDbEIsaUNBQThCOztJQUM5QixnQ0FBeUM7O0lBQ3pDLCtCQUFpRDs7SUErRWpELHlDQXFCRTs7SUExRFUsNEJBQW9COztJQUFFLDhCQUF5QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0YWJsZSwgTmdab25lLCBPcHRpb25hbH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHtcclxuICAgIEFjdGl2YXRlZFJvdXRlU25hcHNob3QsXHJcbiAgICBDaGlsZHJlbk91dGxldENvbnRleHRzLFxyXG4gICAgRGF0YSxcclxuICAgIEV2ZW50LFxyXG4gICAgTmF2aWdhdGlvbkVuZCxcclxuICAgIE5hdmlnYXRpb25FeHRyYXMsXHJcbiAgICBPdXRsZXRDb250ZXh0LFxyXG4gICAgUGFyYW1zLFxyXG4gICAgUm91dGUsXHJcbiAgICBSb3V0ZXIsXHJcbiAgICBVcmxTZWdtZW50LFxyXG4gICAgVXJsVHJlZVxyXG59IGZyb20gXCJAYW5ndWxhci9yb3V0ZXJcIjtcclxuaW1wb3J0IHtTdWJqZWN0LCBTdWJzY3JpcHRpb259IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7T2JqZWN0VXRpbHN9IGZyb20gXCIuLi91dGlscy9vYmplY3QudXRpbHNcIjtcclxuaW1wb3J0IHtJUm91dGV9IGZyb20gXCIuLi9jb21tb24tdHlwZXNcIjtcclxuXHJcbmV4cG9ydCBjb25zdCBlbXB0eVNuYXBzaG90OiBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90ID0gbmV3IEFjdGl2YXRlZFJvdXRlU25hcHNob3QoKTtcclxuZXhwb3J0IGNvbnN0IGVtcHR5RGF0YTogRGF0YSA9IHtpZDogXCJcIn07XHJcbmV4cG9ydCBjb25zdCBlbXB0eVBhcmFtczogUGFyYW1zID0ge307XHJcbmV4cG9ydCBjb25zdCBlbXB0eVNlZ21lbnRzOiBVcmxTZWdtZW50W10gPSBbXTtcclxuZXhwb3J0IGNvbnN0IGVtcHR5Q29tcG9uZW50czogYW55W10gPSBbXTtcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSVN0YXRlSW5mbyB7XHJcbiAgICB1cmw6IHN0cmluZztcclxuICAgIHNlZ21lbnRzOiBVcmxTZWdtZW50W107XHJcbiAgICBjb21wb25lbnRzOiBhbnlbXTtcclxufVxyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgU3RhdGVTZXJ2aWNlIHtcclxuXHJcbiAgICBwcml2YXRlIHNob3Q6IEFjdGl2YXRlZFJvdXRlU25hcHNob3Q7XHJcbiAgICBwcml2YXRlIGNvbXA6IGFueTtcclxuICAgIHByaXZhdGUgc3RhdGVJbmZvOiBJU3RhdGVJbmZvO1xyXG4gICAgcHJpdmF0ZSBjb250ZXh0czogQ2hpbGRyZW5PdXRsZXRDb250ZXh0cztcclxuICAgIHByaXZhdGUgc3ViamVjdDogU3ViamVjdDxBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90PjtcclxuXHJcbiAgICBzdGF0aWMgdG9QYXRoKHJvdXRlOiBSb3V0ZSwgcGFyYW1zOiBhbnkpOiBzdHJpbmcge1xyXG4gICAgICAgIGxldCBwYXRoID0gcm91dGUucGF0aCB8fCBcIlwiO1xyXG4gICAgICAgIE9iamVjdFV0aWxzLml0ZXJhdGUocGFyYW1zLCAodmFsdWU6IGFueSwga2V5OiBzdHJpbmcpID0+IHtcclxuICAgICAgICAgICAgcGF0aCA9IHBhdGgucmVwbGFjZShgOiR7a2V5fWAsIGAke3ZhbHVlfWApO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHJldHVybiBwYXRoO1xyXG4gICAgfVxyXG5cclxuICAgIGdldCBjb21wb25lbnQoKTogYW55IHtcclxuICAgICAgICByZXR1cm4gdGhpcy5jb21wO1xyXG4gICAgfVxyXG5cclxuICAgIGdldCBzbmFwc2hvdCgpOiBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90IHtcclxuICAgICAgICByZXR1cm4gdGhpcy5zaG90IHx8IGVtcHR5U25hcHNob3Q7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0IHJvdXRlKCk6IElSb3V0ZSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuc25hcHNob3Qucm91dGVDb25maWc7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0IGRhdGEoKTogRGF0YSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuc25hcHNob3QuZGF0YSB8fCBlbXB0eURhdGE7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0IHBhcmFtcygpOiBQYXJhbXMge1xyXG4gICAgICAgIHJldHVybiB0aGlzLnNuYXBzaG90LnBhcmFtcyB8fCBlbXB0eVBhcmFtcztcclxuICAgIH1cclxuXHJcbiAgICBnZXQgdXJsKCk6IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuc3RhdGVJbmZvLnVybCB8fCBcIlwiO1xyXG4gICAgfVxyXG5cclxuICAgIGdldCB1cmxTZWdtZW50cygpOiBVcmxTZWdtZW50W10ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLnN0YXRlSW5mby5zZWdtZW50cyB8fCBlbXB0eVNlZ21lbnRzO1xyXG4gICAgfVxyXG5cclxuICAgIGdldCBjb21wb25lbnRzKCk6IGFueVtdIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5zdGF0ZUluZm8uY29tcG9uZW50cyB8fCBlbXB0eUNvbXBvbmVudHM7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSB6b25lOiBOZ1pvbmUsIEBPcHRpb25hbCgpIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIgPSBudWxsKSB7XHJcbiAgICAgICAgdGhpcy5zdWJqZWN0ID0gbmV3IFN1YmplY3Q8QWN0aXZhdGVkUm91dGVTbmFwc2hvdD4oKTtcclxuICAgICAgICBpZiAoIXRoaXMucm91dGVyKSByZXR1cm47XHJcbiAgICAgICAgdGhpcy5yb3V0ZXIuZXZlbnRzLnN1YnNjcmliZSh0aGlzLmhhbmRsZVJvdXRlckV2ZW50KTtcclxuICAgICAgICB0aGlzLnN0YXRlSW5mbyA9IHtcclxuICAgICAgICAgICAgdXJsOiBcIlwiLFxyXG4gICAgICAgICAgICBzZWdtZW50czogW10sXHJcbiAgICAgICAgICAgIGNvbXBvbmVudHM6IFtdXHJcbiAgICAgICAgfTtcclxuICAgICAgICB0aGlzLmNvbnRleHRzID0gKDxhbnk+cm91dGVyKS5yb290Q29udGV4dHM7XHJcbiAgICB9XHJcblxyXG4gICAgbmF2aWdhdGUoY29tbWFuZHM6IGFueVtdLCBleHRyYXM/OiBOYXZpZ2F0aW9uRXh0cmFzKTogUHJvbWlzZTxib29sZWFuPiB7XHJcbiAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlPGJvb2xlYW4+KHJlc29sdmUgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLnpvbmUucnVuKCgpID0+IHtcclxuICAgICAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKGNvbW1hbmRzLCBleHRyYXMpLnRoZW4ocmVzb2x2ZSwgKCkgPT4gcmVzb2x2ZShmYWxzZSkpO1xyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIG5hdmlnYXRlQnlVcmwodXJsOiBzdHJpbmcgfCBVcmxUcmVlLCBleHRyYXM/OiBOYXZpZ2F0aW9uRXh0cmFzKTogUHJvbWlzZTxib29sZWFuPiB7XHJcbiAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlPGJvb2xlYW4+KHJlc29sdmUgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLnpvbmUucnVuKCgpID0+IHtcclxuICAgICAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlQnlVcmwodXJsLCBleHRyYXMpLnRoZW4ocmVzb2x2ZSwgKCkgPT4gcmVzb2x2ZShmYWxzZSkpO1xyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHN1YnNjcmliZShuZXh0PzogKHZhbHVlOiBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90KSA9PiB2b2lkLCBlcnJvcj86IChlcnJvcjogYW55KSA9PiB2b2lkLCBjb21wbGV0ZT86ICgpID0+IHZvaWQpOiBTdWJzY3JpcHRpb24ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLnN1YmplY3Quc3Vic2NyaWJlKG5leHQsIGVycm9yLCBjb21wbGV0ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgc3Vic2NyaWJlSW1tZWRpYXRlbHkobmV4dD86ICh2YWx1ZTogQWN0aXZhdGVkUm91dGVTbmFwc2hvdCkgPT4gdm9pZCwgZXJyb3I/OiAoZXJyb3I6IGFueSkgPT4gdm9pZCwgY29tcGxldGU/OiAoKSA9PiB2b2lkKTogU3Vic2NyaXB0aW9uIHtcclxuICAgICAgICBpZiAobmV4dCAmJiB0aGlzLnNob3QpIG5leHQodGhpcy5zaG90KTtcclxuICAgICAgICByZXR1cm4gdGhpcy5zdWJqZWN0LnN1YnNjcmliZShuZXh0LCBlcnJvciwgY29tcGxldGUpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgaGFuZGxlUm91dGVyRXZlbnQgPSAoZXZlbnQ6IEV2ZW50KTogdm9pZCA9PiB7XHJcbiAgICAgICAgaWYgKCEoZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRW5kKSkgcmV0dXJuO1xyXG4gICAgICAgIGNvbnN0IHJvdXRlclN0YXRlU25hcHNob3QgPSB0aGlzLnJvdXRlci5yb3V0ZXJTdGF0ZS5zbmFwc2hvdDtcclxuICAgICAgICBsZXQgc25hcHNob3QgPSByb3V0ZXJTdGF0ZVNuYXBzaG90LnJvb3Q7XHJcbiAgICAgICAgbGV0IGNvbnRleHQ6IE91dGxldENvbnRleHQgPSBudWxsO1xyXG4gICAgICAgIGxldCBzZWdtZW50cyA9IHNuYXBzaG90LnVybDtcclxuICAgICAgICBjb25zdCBjb21wb25lbnRzOiBhbnlbXSA9IFtdO1xyXG4gICAgICAgIHdoaWxlIChzbmFwc2hvdC5maXJzdENoaWxkKSB7XHJcbiAgICAgICAgICAgIHNuYXBzaG90ID0gc25hcHNob3QuZmlyc3RDaGlsZDtcclxuICAgICAgICAgICAgc2VnbWVudHMgPSBzZWdtZW50cy5jb25jYXQoc25hcHNob3QudXJsKTtcclxuICAgICAgICAgICAgY29udGV4dCA9IChjb250ZXh0ID8gY29udGV4dC5jaGlsZHJlbiA6IHRoaXMuY29udGV4dHMpLmdldENvbnRleHQoXCJwcmltYXJ5XCIpO1xyXG4gICAgICAgICAgICBjb21wb25lbnRzLnB1c2goY29udGV4dC5vdXRsZXQuY29tcG9uZW50KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5jb21wID0gY29udGV4dCA/IGNvbnRleHQub3V0bGV0LmNvbXBvbmVudCA6IG51bGw7XHJcbiAgICAgICAgdGhpcy5zaG90ID0gc25hcHNob3Q7XHJcbiAgICAgICAgdGhpcy5zdGF0ZUluZm8gPSB7XHJcbiAgICAgICAgICAgIHVybDogcm91dGVyU3RhdGVTbmFwc2hvdC51cmwsXHJcbiAgICAgICAgICAgIHNlZ21lbnRzOiBzZWdtZW50cyxcclxuICAgICAgICAgICAgY29tcG9uZW50czogY29tcG9uZW50c1xyXG4gICAgICAgIH07XHJcbiAgICAgICAgdGhpcy5zdWJqZWN0Lm5leHQodGhpcy5zaG90KTtcclxuICAgIH07XHJcbn1cclxuIl19
@@ -1,100 +0,0 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * @suppress {checkTypes,extraRequire,missingReturn,uselessCode} checked by tsc
4
- */
5
- import { Injectable } from "@angular/core";
6
- import { StorageMode } from "../common-types";
7
- import { UniversalService } from "./universal.service";
8
- /**
9
- * Use this service instead of Storage to avoid Angular Universal breaks on server environment
10
- */
11
- var StorageService = /** @class */ (function () {
12
- function StorageService(universal) {
13
- this.universal = universal;
14
- }
15
- /**
16
- * @param {?} key
17
- * @param {?=} defaultValue
18
- * @param {?=} mode
19
- * @return {?}
20
- */
21
- StorageService.prototype.get = /**
22
- * @param {?} key
23
- * @param {?=} defaultValue
24
- * @param {?=} mode
25
- * @return {?}
26
- */
27
- function (key, defaultValue, mode) {
28
- if (mode === void 0) { mode = StorageMode.Local; }
29
- if (this.universal.isServer)
30
- return defaultValue;
31
- /** @type {?} */
32
- var storage = mode == StorageMode.Local ? localStorage : sessionStorage;
33
- /** @type {?} */
34
- var item = storage.getItem(key);
35
- if (!item)
36
- return defaultValue;
37
- try {
38
- return JSON.parse(item);
39
- }
40
- catch (e) {
41
- return item;
42
- }
43
- };
44
- /**
45
- * @param {?} key
46
- * @param {?} value
47
- * @param {?=} mode
48
- * @return {?}
49
- */
50
- StorageService.prototype.set = /**
51
- * @param {?} key
52
- * @param {?} value
53
- * @param {?=} mode
54
- * @return {?}
55
- */
56
- function (key, value, mode) {
57
- if (mode === void 0) { mode = StorageMode.Local; }
58
- if (this.universal.isServer)
59
- return;
60
- /** @type {?} */
61
- var storage = mode == StorageMode.Local ? localStorage : sessionStorage;
62
- if (typeof value == "string") {
63
- storage.setItem(key, value);
64
- return;
65
- }
66
- storage.setItem(key, JSON.stringify(value));
67
- };
68
- /**
69
- * @param {?} key
70
- * @param {?=} mode
71
- * @return {?}
72
- */
73
- StorageService.prototype.remove = /**
74
- * @param {?} key
75
- * @param {?=} mode
76
- * @return {?}
77
- */
78
- function (key, mode) {
79
- if (mode === void 0) { mode = StorageMode.Local; }
80
- if (this.universal.isServer)
81
- return;
82
- /** @type {?} */
83
- var storage = mode == StorageMode.Local ? localStorage : sessionStorage;
84
- storage.removeItem(key);
85
- };
86
- StorageService.decorators = [
87
- { type: Injectable }
88
- ];
89
- /** @nocollapse */
90
- StorageService.ctorParameters = function () { return [
91
- { type: UniversalService }
92
- ]; };
93
- return StorageService;
94
- }());
95
- export { StorageService };
96
- if (false) {
97
- /** @type {?} */
98
- StorageService.prototype.universal;
99
- }
100
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmFnZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHN0ZW15L25neC11dGlscy8iLCJzb3VyY2VzIjpbIm5neC11dGlscy9zZXJ2aWNlcy9zdG9yYWdlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzVDLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHFCQUFxQixDQUFDOzs7O0FBS3JEO0lBR0ksd0JBQW1CLFNBQTJCO1FBQTNCLGNBQVMsR0FBVCxTQUFTLENBQWtCO0lBQzlDLENBQUM7Ozs7Ozs7SUFFRCw0QkFBRzs7Ozs7O0lBQUgsVUFBSSxHQUFXLEVBQUUsWUFBa0IsRUFBRSxJQUFxQztRQUFyQyxxQkFBQSxFQUFBLE9BQW9CLFdBQVcsQ0FBQyxLQUFLO1FBQ3RFLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRO1lBQUUsT0FBTyxZQUFZLENBQUM7O1lBQzNDLE9BQU8sR0FBRyxJQUFJLElBQUksV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxjQUFjOztZQUNuRSxJQUFJLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUM7UUFDakMsSUFBSSxDQUFDLElBQUk7WUFBRSxPQUFPLFlBQVksQ0FBQztRQUMvQixJQUFJO1lBQ0EsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQzNCO1FBQUMsT0FBTyxDQUFDLEVBQUU7WUFDUixPQUFPLElBQUksQ0FBQztTQUNmO0lBQ0wsQ0FBQzs7Ozs7OztJQUVELDRCQUFHOzs7Ozs7SUFBSCxVQUFJLEdBQVcsRUFBRSxLQUFVLEVBQUUsSUFBcUM7UUFBckMscUJBQUEsRUFBQSxPQUFvQixXQUFXLENBQUMsS0FBSztRQUM5RCxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUTtZQUFFLE9BQU87O1lBQzlCLE9BQU8sR0FBRyxJQUFJLElBQUksV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxjQUFjO1FBQ3pFLElBQUksT0FBTyxLQUFLLElBQUksUUFBUSxFQUFFO1lBQzFCLE9BQU8sQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQzVCLE9BQU87U0FDVjtRQUNELE9BQU8sQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUNoRCxDQUFDOzs7Ozs7SUFFRCwrQkFBTTs7Ozs7SUFBTixVQUFPLEdBQVcsRUFBRSxJQUFxQztRQUFyQyxxQkFBQSxFQUFBLE9BQW9CLFdBQVcsQ0FBQyxLQUFLO1FBQ3JELElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRO1lBQUUsT0FBTzs7WUFDOUIsT0FBTyxHQUFHLElBQUksSUFBSSxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLGNBQWM7UUFDekUsT0FBTyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUM1QixDQUFDOztnQkFoQ0osVUFBVTs7OztnQkFMSCxnQkFBZ0I7O0lBc0N4QixxQkFBQztDQUFBLEFBakNELElBaUNDO1NBaENZLGNBQWM7OztJQUVYLG1DQUFrQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0YWJsZX0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHtTdG9yYWdlTW9kZX0gZnJvbSBcIi4uL2NvbW1vbi10eXBlc1wiO1xyXG5pbXBvcnQge1VuaXZlcnNhbFNlcnZpY2V9IGZyb20gXCIuL3VuaXZlcnNhbC5zZXJ2aWNlXCI7XHJcblxyXG4vKipcclxuICogVXNlIHRoaXMgc2VydmljZSBpbnN0ZWFkIG9mIFN0b3JhZ2UgdG8gYXZvaWQgQW5ndWxhciBVbml2ZXJzYWwgYnJlYWtzIG9uIHNlcnZlciBlbnZpcm9ubWVudFxyXG4gKi9cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgU3RvcmFnZVNlcnZpY2Uge1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKHB1YmxpYyB1bml2ZXJzYWw6IFVuaXZlcnNhbFNlcnZpY2UpIHtcclxuICAgIH1cclxuXHJcbiAgICBnZXQoa2V5OiBzdHJpbmcsIGRlZmF1bHRWYWx1ZT86IGFueSwgbW9kZTogU3RvcmFnZU1vZGUgPSBTdG9yYWdlTW9kZS5Mb2NhbCk6IGFueSB7XHJcbiAgICAgICAgaWYgKHRoaXMudW5pdmVyc2FsLmlzU2VydmVyKSByZXR1cm4gZGVmYXVsdFZhbHVlO1xyXG4gICAgICAgIGNvbnN0IHN0b3JhZ2UgPSBtb2RlID09IFN0b3JhZ2VNb2RlLkxvY2FsID8gbG9jYWxTdG9yYWdlIDogc2Vzc2lvblN0b3JhZ2U7XHJcbiAgICAgICAgY29uc3QgaXRlbSA9IHN0b3JhZ2UuZ2V0SXRlbShrZXkpO1xyXG4gICAgICAgIGlmICghaXRlbSkgcmV0dXJuIGRlZmF1bHRWYWx1ZTtcclxuICAgICAgICB0cnkge1xyXG4gICAgICAgICAgICByZXR1cm4gSlNPTi5wYXJzZShpdGVtKTtcclxuICAgICAgICB9IGNhdGNoIChlKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBpdGVtO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBzZXQoa2V5OiBzdHJpbmcsIHZhbHVlOiBhbnksIG1vZGU6IFN0b3JhZ2VNb2RlID0gU3RvcmFnZU1vZGUuTG9jYWwpOiB2b2lkIHtcclxuICAgICAgICBpZiAodGhpcy51bml2ZXJzYWwuaXNTZXJ2ZXIpIHJldHVybjtcclxuICAgICAgICBjb25zdCBzdG9yYWdlID0gbW9kZSA9PSBTdG9yYWdlTW9kZS5Mb2NhbCA/IGxvY2FsU3RvcmFnZSA6IHNlc3Npb25TdG9yYWdlO1xyXG4gICAgICAgIGlmICh0eXBlb2YgdmFsdWUgPT0gXCJzdHJpbmdcIikge1xyXG4gICAgICAgICAgICBzdG9yYWdlLnNldEl0ZW0oa2V5LCB2YWx1ZSk7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgICAgc3RvcmFnZS5zZXRJdGVtKGtleSwgSlNPTi5zdHJpbmdpZnkodmFsdWUpKTtcclxuICAgIH1cclxuXHJcbiAgICByZW1vdmUoa2V5OiBzdHJpbmcsIG1vZGU6IFN0b3JhZ2VNb2RlID0gU3RvcmFnZU1vZGUuTG9jYWwpOiB2b2lkIHtcclxuICAgICAgICBpZiAodGhpcy51bml2ZXJzYWwuaXNTZXJ2ZXIpIHJldHVybjtcclxuICAgICAgICBjb25zdCBzdG9yYWdlID0gbW9kZSA9PSBTdG9yYWdlTW9kZS5Mb2NhbCA/IGxvY2FsU3RvcmFnZSA6IHNlc3Npb25TdG9yYWdlO1xyXG4gICAgICAgIHN0b3JhZ2UucmVtb3ZlSXRlbShrZXkpO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
@@ -1,100 +0,0 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * @suppress {checkTypes,extraRequire,missingReturn,uselessCode} checked by tsc
4
- */
5
- import { Inject, Injectable } from "@angular/core";
6
- import { LANGUAGE_SERVICE } from "../common-types";
7
- var ConsoleToasterService = /** @class */ (function () {
8
- function ConsoleToasterService(language) {
9
- this.language = language;
10
- }
11
- /**
12
- * @param {?} message
13
- * @param {?=} params
14
- * @param {?=} title
15
- * @return {?}
16
- */
17
- ConsoleToasterService.prototype.error = /**
18
- * @param {?} message
19
- * @param {?=} params
20
- * @param {?=} title
21
- * @return {?}
22
- */
23
- function (message, params, title) {
24
- this.translateMessage(message, params, function (str) { return console.log(str, title, "background: #BD362F; color: #ffffff"); });
25
- };
26
- /**
27
- * @param {?} message
28
- * @param {?=} params
29
- * @param {?=} title
30
- * @return {?}
31
- */
32
- ConsoleToasterService.prototype.info = /**
33
- * @param {?} message
34
- * @param {?=} params
35
- * @param {?=} title
36
- * @return {?}
37
- */
38
- function (message, params, title) {
39
- this.translateMessage(message, params, function (str) { return console.log(str, title, "background: #2F96B4; color: #ffffff"); });
40
- };
41
- /**
42
- * @param {?} message
43
- * @param {?=} params
44
- * @param {?=} title
45
- * @return {?}
46
- */
47
- ConsoleToasterService.prototype.success = /**
48
- * @param {?} message
49
- * @param {?=} params
50
- * @param {?=} title
51
- * @return {?}
52
- */
53
- function (message, params, title) {
54
- this.translateMessage(message, params, function (str) { return console.log(str, title, "background: #51A351; color: #ffffff"); });
55
- };
56
- /**
57
- * @param {?} message
58
- * @param {?=} params
59
- * @param {?=} title
60
- * @return {?}
61
- */
62
- ConsoleToasterService.prototype.warning = /**
63
- * @param {?} message
64
- * @param {?=} params
65
- * @param {?=} title
66
- * @return {?}
67
- */
68
- function (message, params, title) {
69
- this.translateMessage(message, params, function (str) { return console.log(str, title, "background: #F89406; color: #ffffff"); });
70
- };
71
- /**
72
- * @param {?} message
73
- * @param {?} params
74
- * @param {?} callback
75
- * @return {?}
76
- */
77
- ConsoleToasterService.prototype.translateMessage = /**
78
- * @param {?} message
79
- * @param {?} params
80
- * @param {?} callback
81
- * @return {?}
82
- */
83
- function (message, params, callback) {
84
- this.language.getTranslation(message, params).then(callback);
85
- };
86
- ConsoleToasterService.decorators = [
87
- { type: Injectable }
88
- ];
89
- /** @nocollapse */
90
- ConsoleToasterService.ctorParameters = function () { return [
91
- { type: undefined, decorators: [{ type: Inject, args: [LANGUAGE_SERVICE,] }] }
92
- ]; };
93
- return ConsoleToasterService;
94
- }());
95
- export { ConsoleToasterService };
96
- if (false) {
97
- /** @type {?} */
98
- ConsoleToasterService.prototype.language;
99
- }
100
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3Rlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHN0ZW15L25neC11dGlscy8iLCJzb3VyY2VzIjpbIm5neC11dGlscy9zZXJ2aWNlcy90b2FzdGVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBQyxNQUFNLEVBQUUsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ2pELE9BQU8sRUFBb0MsZ0JBQWdCLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUVwRjtJQUdJLCtCQUE4QyxRQUEwQjtRQUExQixhQUFRLEdBQVIsUUFBUSxDQUFrQjtJQUV4RSxDQUFDOzs7Ozs7O0lBRUQscUNBQUs7Ozs7OztJQUFMLFVBQU0sT0FBZSxFQUFFLE1BQVksRUFBRSxLQUFjO1FBQy9DLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQUEsR0FBRyxJQUFJLE9BQUEsT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsS0FBSyxFQUFFLHFDQUFxQyxDQUFDLEVBQTlELENBQThELENBQUMsQ0FBQztJQUNsSCxDQUFDOzs7Ozs7O0lBRUQsb0NBQUk7Ozs7OztJQUFKLFVBQUssT0FBZSxFQUFFLE1BQVksRUFBRSxLQUFjO1FBQzlDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQUEsR0FBRyxJQUFJLE9BQUEsT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsS0FBSyxFQUFFLHFDQUFxQyxDQUFDLEVBQTlELENBQThELENBQUMsQ0FBQztJQUNsSCxDQUFDOzs7Ozs7O0lBRUQsdUNBQU87Ozs7OztJQUFQLFVBQVEsT0FBZSxFQUFFLE1BQVksRUFBRSxLQUFjO1FBQ2pELElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQUEsR0FBRyxJQUFJLE9BQUEsT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsS0FBSyxFQUFFLHFDQUFxQyxDQUFDLEVBQTlELENBQThELENBQUMsQ0FBQztJQUNsSCxDQUFDOzs7Ozs7O0lBRUQsdUNBQU87Ozs7OztJQUFQLFVBQVEsT0FBZSxFQUFFLE1BQVksRUFBRSxLQUFjO1FBQ2pELElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQUEsR0FBRyxJQUFJLE9BQUEsT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsS0FBSyxFQUFFLHFDQUFxQyxDQUFDLEVBQTlELENBQThELENBQUMsQ0FBQztJQUNsSCxDQUFDOzs7Ozs7O0lBRU8sZ0RBQWdCOzs7Ozs7SUFBeEIsVUFBeUIsT0FBZSxFQUFFLE1BQVcsRUFBRSxRQUFtQztRQUN0RixJQUFJLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ2pFLENBQUM7O2dCQXpCSixVQUFVOzs7O2dEQUdNLE1BQU0sU0FBQyxnQkFBZ0I7O0lBdUJ4Qyw0QkFBQztDQUFBLEFBMUJELElBMEJDO1NBekJZLHFCQUFxQjs7O0lBRWxCLHlDQUE0RCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0LCBJbmplY3RhYmxlfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge0lMYW5ndWFnZVNlcnZpY2UsIElUb2FzdGVyU2VydmljZSwgTEFOR1VBR0VfU0VSVklDRX0gZnJvbSBcIi4uL2NvbW1vbi10eXBlc1wiO1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgQ29uc29sZVRvYXN0ZXJTZXJ2aWNlIGltcGxlbWVudHMgSVRvYXN0ZXJTZXJ2aWNlIHtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihASW5qZWN0KExBTkdVQUdFX1NFUlZJQ0UpIHByaXZhdGUgbGFuZ3VhZ2U6IElMYW5ndWFnZVNlcnZpY2UpIHtcclxuXHJcbiAgICB9XHJcblxyXG4gICAgZXJyb3IobWVzc2FnZTogc3RyaW5nLCBwYXJhbXM/OiBhbnksIHRpdGxlPzogc3RyaW5nKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy50cmFuc2xhdGVNZXNzYWdlKG1lc3NhZ2UsIHBhcmFtcywgc3RyID0+IGNvbnNvbGUubG9nKHN0ciwgdGl0bGUsIFwiYmFja2dyb3VuZDogI0JEMzYyRjsgY29sb3I6ICNmZmZmZmZcIikpO1xyXG4gICAgfVxyXG5cclxuICAgIGluZm8obWVzc2FnZTogc3RyaW5nLCBwYXJhbXM/OiBhbnksIHRpdGxlPzogc3RyaW5nKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy50cmFuc2xhdGVNZXNzYWdlKG1lc3NhZ2UsIHBhcmFtcywgc3RyID0+IGNvbnNvbGUubG9nKHN0ciwgdGl0bGUsIFwiYmFja2dyb3VuZDogIzJGOTZCNDsgY29sb3I6ICNmZmZmZmZcIikpO1xyXG4gICAgfVxyXG5cclxuICAgIHN1Y2Nlc3MobWVzc2FnZTogc3RyaW5nLCBwYXJhbXM/OiBhbnksIHRpdGxlPzogc3RyaW5nKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy50cmFuc2xhdGVNZXNzYWdlKG1lc3NhZ2UsIHBhcmFtcywgc3RyID0+IGNvbnNvbGUubG9nKHN0ciwgdGl0bGUsIFwiYmFja2dyb3VuZDogIzUxQTM1MTsgY29sb3I6ICNmZmZmZmZcIikpO1xyXG4gICAgfVxyXG5cclxuICAgIHdhcm5pbmcobWVzc2FnZTogc3RyaW5nLCBwYXJhbXM/OiBhbnksIHRpdGxlPzogc3RyaW5nKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy50cmFuc2xhdGVNZXNzYWdlKG1lc3NhZ2UsIHBhcmFtcywgc3RyID0+IGNvbnNvbGUubG9nKHN0ciwgdGl0bGUsIFwiYmFja2dyb3VuZDogI0Y4OTQwNjsgY29sb3I6ICNmZmZmZmZcIikpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgdHJhbnNsYXRlTWVzc2FnZShtZXNzYWdlOiBzdHJpbmcsIHBhcmFtczogYW55LCBjYWxsYmFjazogKG1lc3NhZ2U6IHN0cmluZykgPT4gdm9pZCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMubGFuZ3VhZ2UuZ2V0VHJhbnNsYXRpb24obWVzc2FnZSwgcGFyYW1zKS50aGVuKGNhbGxiYWNrKTtcclxuICAgIH1cclxufVxyXG4iXX0=