nuxeo-development-framework 4.0.3 → 4.0.5

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 (81) hide show
  1. package/bundles/nuxeo-development-framework.umd.js +2406 -1196
  2. package/bundles/nuxeo-development-framework.umd.js.map +1 -1
  3. package/esm2015/lib/components/diagrams/utilities/export-graph.js +28 -0
  4. package/esm2015/lib/components/diagrams/utilities/index.js +2 -1
  5. package/esm2015/lib/core/core.module.js +33 -33
  6. package/esm2015/lib/shared/components/base/base-column.component.js +18 -0
  7. package/esm2015/lib/shared/components/base/base-dialog.component.js +25 -0
  8. package/esm2015/lib/shared/components/base/base-selector.component.js +96 -0
  9. package/esm2015/lib/shared/components/base/base.component.js +59 -0
  10. package/esm2015/lib/shared/components/base/destroy.subject.js +19 -0
  11. package/esm2015/lib/shared/components/base/index.js +6 -0
  12. package/esm2015/lib/shared/components/index.js +3 -0
  13. package/esm2015/lib/shared/components/nuxeo-dialog/confirmation/ndf-confirmation-dialog.component.js +23 -0
  14. package/esm2015/lib/shared/components/nuxeo-dialog/index.js +6 -0
  15. package/esm2015/lib/shared/components/nuxeo-dialog/models/confirm-options.model.js +22 -0
  16. package/esm2015/lib/shared/components/nuxeo-dialog/models/dialog-option.model.js +2 -0
  17. package/esm2015/lib/shared/components/nuxeo-dialog/nuxeo-dialog.module.js +39 -0
  18. package/esm2015/lib/shared/components/nuxeo-dialog/nuxeo.dialog.js +84 -0
  19. package/esm2015/lib/shared/components/nuxeo-dialog/services/nuxeo-dialog.service.js +56 -0
  20. package/esm2015/lib/shared/models/index.js +4 -0
  21. package/esm2015/lib/shared/models/mapper/index.js +2 -0
  22. package/esm2015/lib/shared/models/mapper/nuxeo-mapper.js +32 -0
  23. package/esm2015/lib/shared/models/nuxeo-response.model.js +2 -0
  24. package/esm2015/lib/shared/models/task.model.js +2 -0
  25. package/esm2015/lib/shared/services/base/base.service.js +157 -0
  26. package/esm2015/lib/shared/services/base/cache-base.service.js +295 -0
  27. package/esm2015/lib/shared/services/base/config/default-ttl-config.js +9 -0
  28. package/esm2015/lib/shared/services/base/config/index.js +2 -0
  29. package/esm2015/lib/shared/services/base/constants/default-cache-options.js +28 -0
  30. package/esm2015/lib/shared/services/base/constants/index.js +2 -0
  31. package/esm2015/lib/shared/services/base/http-base.service.js +115 -0
  32. package/esm2015/lib/shared/services/base/index.js +3 -0
  33. package/esm2015/lib/shared/services/base/models/cache-info-model.js +12 -0
  34. package/esm2015/lib/shared/services/base/models/http-options.model.js +2 -0
  35. package/esm2015/lib/shared/services/base/models/index.js +6 -0
  36. package/esm2015/lib/shared/services/base/models/operation-options.model.js +2 -0
  37. package/esm2015/lib/shared/services/base/models/query-options.model.js +2 -0
  38. package/esm2015/lib/shared/services/base/models/request-options.model.js +2 -0
  39. package/esm2015/lib/shared/services/index.js +2 -0
  40. package/esm2015/public-api.js +4 -1
  41. package/fesm2015/nuxeo-development-framework.js +2087 -1061
  42. package/fesm2015/nuxeo-development-framework.js.map +1 -1
  43. package/lib/components/diagrams/utilities/export-graph.d.ts +3 -0
  44. package/lib/components/diagrams/utilities/index.d.ts +1 -0
  45. package/lib/core/core.module.d.ts +2 -2
  46. package/lib/shared/components/base/base-column.component.d.ts +10 -0
  47. package/lib/shared/components/base/base-dialog.component.d.ts +12 -0
  48. package/lib/shared/components/base/base-selector.component.d.ts +43 -0
  49. package/lib/shared/components/base/base.component.d.ts +36 -0
  50. package/lib/shared/components/base/destroy.subject.d.ts +9 -0
  51. package/lib/shared/components/base/index.d.ts +5 -0
  52. package/lib/shared/components/index.d.ts +2 -0
  53. package/lib/shared/components/nuxeo-dialog/confirmation/ndf-confirmation-dialog.component.d.ts +9 -0
  54. package/lib/shared/components/nuxeo-dialog/index.d.ts +5 -0
  55. package/lib/shared/components/nuxeo-dialog/models/confirm-options.model.d.ts +22 -0
  56. package/lib/shared/components/nuxeo-dialog/models/dialog-option.model.d.ts +16 -0
  57. package/lib/shared/components/nuxeo-dialog/nuxeo-dialog.module.d.ts +13 -0
  58. package/lib/shared/components/nuxeo-dialog/nuxeo.dialog.d.ts +23 -0
  59. package/lib/shared/components/nuxeo-dialog/services/nuxeo-dialog.service.d.ts +13 -0
  60. package/lib/shared/models/index.d.ts +3 -0
  61. package/lib/shared/models/mapper/index.d.ts +1 -0
  62. package/lib/shared/models/mapper/nuxeo-mapper.d.ts +8 -0
  63. package/lib/shared/models/nuxeo-response.model.d.ts +61 -0
  64. package/lib/shared/models/task.model.d.ts +71 -0
  65. package/lib/shared/services/base/base.service.d.ts +29 -0
  66. package/lib/shared/services/base/cache-base.service.d.ts +17 -0
  67. package/lib/shared/services/base/config/default-ttl-config.d.ts +7 -0
  68. package/lib/shared/services/base/config/index.d.ts +1 -0
  69. package/lib/shared/services/base/constants/default-cache-options.d.ts +16 -0
  70. package/lib/shared/services/base/constants/index.d.ts +1 -0
  71. package/lib/shared/services/base/http-base.service.d.ts +15 -0
  72. package/lib/shared/services/base/index.d.ts +2 -0
  73. package/lib/shared/services/base/models/cache-info-model.d.ts +49 -0
  74. package/lib/shared/services/base/models/http-options.model.d.ts +7 -0
  75. package/lib/shared/services/base/models/index.d.ts +5 -0
  76. package/lib/shared/services/base/models/operation-options.model.d.ts +8 -0
  77. package/lib/shared/services/base/models/query-options.model.d.ts +5 -0
  78. package/lib/shared/services/base/models/request-options.model.d.ts +7 -0
  79. package/lib/shared/services/index.d.ts +1 -0
  80. package/package.json +1 -1
  81. package/public-api.d.ts +3 -0
@@ -0,0 +1,295 @@
1
+ var _CacheBaseService_instances, _CacheBaseService_fetchedItems, _CacheBaseService_handleCacheItems, _CacheBaseService_findNode, _CacheBaseService_findLargestDate, _CacheBaseService_handleFetchedItems, _CacheBaseService_addItemsTo, _CacheBaseService_prepareOptions, _CacheBaseService_prepareConfig, _CacheBaseService_add1SecondToModifiedDate, _CacheBaseService_clear, _CacheBaseService_validateTTLForKey, _CacheBaseService_setItemInMap, _CacheBaseService_getItem, _CacheBaseService_setItem;
2
+ import { __classPrivateFieldGet } from "tslib";
3
+ import { Injectable } from "@angular/core";
4
+ import { EMPTY, Subject } from "rxjs";
5
+ import { expand, last, map, retry } from "rxjs/operators";
6
+ import * as moment from "moment";
7
+ import { DEFAULT_CACHE_OPTIONS } from "./constants";
8
+ import _omit from "lodash/omit";
9
+ import _assign from "lodash/assign";
10
+ import _cloneDeep from "lodash/cloneDeep";
11
+ import { DEFAULT_TTL_CONFIG } from "./config";
12
+ import { EnvManager } from "../../../core/env";
13
+ import * as i0 from "@angular/core";
14
+ import * as i1 from "../../../core/services/user/user-preferences.service";
15
+ import * as i2 from "../../../core/utilities/utility.service";
16
+ export class CacheBaseService {
17
+ constructor(userPreferencesService, utilityService) {
18
+ this.userPreferencesService = userPreferencesService;
19
+ this.utilityService = utilityService;
20
+ _CacheBaseService_instances.add(this);
21
+ _CacheBaseService_fetchedItems.set(this, new Map());
22
+ __classPrivateFieldGet(this, _CacheBaseService_instances, "m", _CacheBaseService_prepareConfig).call(this);
23
+ }
24
+ hasItem(cacheKey) {
25
+ return this.userPreferencesService.hasItem(`${DEFAULT_CACHE_OPTIONS.PREFIX}${cacheKey}`);
26
+ }
27
+ clearAll(userName) {
28
+ __classPrivateFieldGet(this, _CacheBaseService_instances, "m", _CacheBaseService_clear).call(this, userName);
29
+ }
30
+ validateTTL(userName) {
31
+ if (!DEFAULT_TTL_CONFIG.AUTO_CHECK || !userName)
32
+ return;
33
+ const prefix = `${userName}__${DEFAULT_CACHE_OPTIONS.PREFIX}`;
34
+ Object.keys(window.localStorage)
35
+ .filter((q) => q.startsWith(prefix))
36
+ .filter((key) => {
37
+ var _a;
38
+ const options = {
39
+ cacheKey: key.replace(prefix, ""),
40
+ userName: userName,
41
+ request: DEFAULT_CACHE_OPTIONS.REQUEST,
42
+ prepareDataBeforeCaching: DEFAULT_CACHE_OPTIONS.PREPARE_DATA,
43
+ };
44
+ const firstFetchingDate = (_a = __classPrivateFieldGet(this, _CacheBaseService_instances, "m", _CacheBaseService_getItem).call(this, options)) === null || _a === void 0 ? void 0 : _a.firstFetchingDate;
45
+ if (!firstFetchingDate)
46
+ return;
47
+ const momentDate1 = moment(new Date(firstFetchingDate));
48
+ const momentDate2 = moment(new Date());
49
+ const difference = momentDate2.diff(momentDate1, DEFAULT_TTL_CONFIG.UNIT);
50
+ return difference >= DEFAULT_TTL_CONFIG.TTL;
51
+ })
52
+ .forEach((key) => {
53
+ window.localStorage.removeItem(key);
54
+ });
55
+ }
56
+ startFetchingItems(options) {
57
+ var _a;
58
+ __classPrivateFieldGet(this, _CacheBaseService_instances, "m", _CacheBaseService_validateTTLForKey).call(this, options);
59
+ if ((_a = __classPrivateFieldGet(this, _CacheBaseService_fetchedItems, "f")[options.cacheKey]) === null || _a === void 0 ? void 0 : _a.fetchingItemsFromTheServer) {
60
+ return __classPrivateFieldGet(this, _CacheBaseService_fetchedItems, "f")[options.cacheKey].onFinishFetching.asObservable();
61
+ }
62
+ else {
63
+ return __classPrivateFieldGet(this, _CacheBaseService_instances, "m", _CacheBaseService_handleCacheItems).call(this, options);
64
+ }
65
+ }
66
+ }
67
+ _CacheBaseService_fetchedItems = new WeakMap(), _CacheBaseService_instances = new WeakSet(), _CacheBaseService_handleCacheItems = function _CacheBaseService_handleCacheItems(options) {
68
+ let observable;
69
+ __classPrivateFieldGet(this, _CacheBaseService_instances, "m", _CacheBaseService_prepareOptions).call(this, options);
70
+ const cachedItem = __classPrivateFieldGet(this, _CacheBaseService_instances, "m", _CacheBaseService_getItem).call(this, options);
71
+ if (cachedItem) {
72
+ __classPrivateFieldGet(this, _CacheBaseService_instances, "m", _CacheBaseService_setItemInMap).call(this, options.cacheKey, Object.assign(Object.assign({}, cachedItem), { fetchingItemsFromTheServer: false, onFinishFetching: new Subject(), request: options.request }));
73
+ const params = {
74
+ [options.pageKey]: 0,
75
+ [options.minCompareDateKey]: __classPrivateFieldGet(this, _CacheBaseService_instances, "m", _CacheBaseService_add1SecondToModifiedDate).call(this, new Date(__classPrivateFieldGet(this, _CacheBaseService_fetchedItems, "f")[options.cacheKey].lastModifiedDate)).toISOString(),
76
+ };
77
+ __classPrivateFieldGet(this, _CacheBaseService_fetchedItems, "f")[options.cacheKey].params = params;
78
+ observable = options.request(params);
79
+ }
80
+ else {
81
+ __classPrivateFieldGet(this, _CacheBaseService_instances, "m", _CacheBaseService_setItemInMap).call(this, options.cacheKey);
82
+ __classPrivateFieldGet(this, _CacheBaseService_fetchedItems, "f")[options.cacheKey].request = options.request;
83
+ __classPrivateFieldGet(this, _CacheBaseService_fetchedItems, "f")[options.cacheKey].firstFetchingDate =
84
+ new Date().toISOString();
85
+ observable = options.request({ [options.pageKey]: 0 });
86
+ }
87
+ __classPrivateFieldGet(this, _CacheBaseService_fetchedItems, "f")[options.cacheKey].fetchingItemsFromTheServer = true;
88
+ return observable.pipe(retry(DEFAULT_TTL_CONFIG.RETRY), expand((results) => {
89
+ var _a;
90
+ let anotherCall = null;
91
+ if (results && ((_a = results[options.mappedDataKey]) === null || _a === void 0 ? void 0 : _a.length)) {
92
+ anotherCall = __classPrivateFieldGet(this, _CacheBaseService_instances, "m", _CacheBaseService_handleFetchedItems).call(this, options, results);
93
+ }
94
+ return anotherCall ? anotherCall : EMPTY;
95
+ }), last(), map((_) => {
96
+ var _a;
97
+ let _fetchedItems = __classPrivateFieldGet(this, _CacheBaseService_fetchedItems, "f")[options.cacheKey];
98
+ _fetchedItems.fetchingItemsFromTheServer = false;
99
+ if ((_a = _fetchedItems.data) === null || _a === void 0 ? void 0 : _a.length) {
100
+ _fetchedItems.lastModifiedDate = __classPrivateFieldGet(this, _CacheBaseService_instances, "m", _CacheBaseService_findLargestDate).call(this, _fetchedItems.data, options.childrenPath, options.lastModifiedDatePath);
101
+ __classPrivateFieldGet(this, _CacheBaseService_instances, "m", _CacheBaseService_setItem).call(this, {
102
+ data: _fetchedItems.data,
103
+ lastModifiedDate: _fetchedItems.lastModifiedDate,
104
+ firstFetchingDate: _fetchedItems.firstFetchingDate,
105
+ resultsCount: _fetchedItems[options.resultsCount],
106
+ }, options);
107
+ }
108
+ return _fetchedItems;
109
+ }), map((res) => {
110
+ const result = _cloneDeep({
111
+ [options.mappedDataKey]: res.data,
112
+ [options.lastModifiedDateKey]: res.lastModifiedDate,
113
+ [options.resultsCount]: res[options.resultsCount],
114
+ });
115
+ res.onFinishFetching.next(result);
116
+ return result;
117
+ }));
118
+ }, _CacheBaseService_findNode = function _CacheBaseService_findNode(items, uniqueCompareKey, childrenPath, value) {
119
+ for (const node of items) {
120
+ if (node[uniqueCompareKey] === value) {
121
+ return node;
122
+ }
123
+ const children = this.utilityService.getValue(node, childrenPath);
124
+ if (children) {
125
+ const result = __classPrivateFieldGet(this, _CacheBaseService_instances, "m", _CacheBaseService_findNode).call(this, children, uniqueCompareKey, childrenPath, value);
126
+ if (result) {
127
+ return result;
128
+ }
129
+ }
130
+ }
131
+ return null;
132
+ }, _CacheBaseService_findLargestDate = function _CacheBaseService_findLargestDate(nodeList, childrenPath, datePath) {
133
+ let largestDate = null;
134
+ const traverse = (node) => {
135
+ if (!node)
136
+ return;
137
+ const children = this.utilityService.getValue(node, childrenPath);
138
+ const nodeDate = this.utilityService.getValue(node, datePath);
139
+ if (nodeDate && (!largestDate || nodeDate > largestDate)) {
140
+ largestDate = nodeDate;
141
+ }
142
+ if (children === null || children === void 0 ? void 0 : children.length) {
143
+ for (const child of children) {
144
+ traverse(child);
145
+ }
146
+ }
147
+ };
148
+ nodeList.forEach((node) => traverse(node));
149
+ return largestDate;
150
+ }, _CacheBaseService_handleFetchedItems = function _CacheBaseService_handleFetchedItems(options, res) {
151
+ var _a;
152
+ if ((_a = __classPrivateFieldGet(this, _CacheBaseService_fetchedItems, "f")[options.cacheKey].data) === null || _a === void 0 ? void 0 : _a.length) {
153
+ res[options.mappedDataKey].sort((a, b) => {
154
+ const first = this.utilityService.getValue(a, options.lastModifiedDatePath);
155
+ const second = this.utilityService.getValue(b, options.lastModifiedDatePath);
156
+ return new Date(first).getTime() - new Date(second).getTime();
157
+ });
158
+ res[options.mappedDataKey].forEach((element) => {
159
+ const item = __classPrivateFieldGet(this, _CacheBaseService_instances, "m", _CacheBaseService_findNode).call(this, __classPrivateFieldGet(this, _CacheBaseService_fetchedItems, "f")[options.cacheKey].data, options.uniqueCompareKey, options.childrenPath, element[options.uniqueCompareKey]);
160
+ const mappedElement = options.prepareDataBeforeCaching([element])[0];
161
+ if (item) {
162
+ // edit : update item in cache
163
+ const filteredSource = _omit(mappedElement, options.excludeKeysWhenUpdate);
164
+ _assign(item, filteredSource);
165
+ }
166
+ else {
167
+ // add : check date to determine where will insert
168
+ // if item parent not found add as root else will add leaves to subParent
169
+ const node = __classPrivateFieldGet(this, _CacheBaseService_instances, "m", _CacheBaseService_findNode).call(this, __classPrivateFieldGet(this, _CacheBaseService_fetchedItems, "f")[options.cacheKey].data, options.uniqueCompareKey, options.childrenPath, element[options.parentKey]);
170
+ if (node) {
171
+ // will compare with node child to add
172
+ const children = this.utilityService.getValue(node, options.childrenPath);
173
+ __classPrivateFieldGet(this, _CacheBaseService_instances, "m", _CacheBaseService_addItemsTo).call(this, options, children, element);
174
+ }
175
+ else {
176
+ // will compare with root level to add
177
+ __classPrivateFieldGet(this, _CacheBaseService_instances, "m", _CacheBaseService_addItemsTo).call(this, options, __classPrivateFieldGet(this, _CacheBaseService_fetchedItems, "f")[options.cacheKey].data, element);
178
+ }
179
+ }
180
+ });
181
+ }
182
+ else {
183
+ res[options.mappedDataKey] = options.prepareDataBeforeCaching(res[options.mappedDataKey]);
184
+ __classPrivateFieldGet(this, _CacheBaseService_fetchedItems, "f")[options.cacheKey].data = res[options.mappedDataKey];
185
+ __classPrivateFieldGet(this, _CacheBaseService_fetchedItems, "f")[options.cacheKey].resultsCount =
186
+ res[options.resultsCount];
187
+ }
188
+ if (res[options.totalPageKey] - res[options.pageKey] > 1) {
189
+ return __classPrivateFieldGet(this, _CacheBaseService_fetchedItems, "f")[options.cacheKey].request(Object.assign(Object.assign({}, (__classPrivateFieldGet(this, _CacheBaseService_fetchedItems, "f")[options.cacheKey].params || {})), { [options.pageKey]: res[options.pageKey] + 1 }));
190
+ }
191
+ else {
192
+ return null;
193
+ }
194
+ }, _CacheBaseService_addItemsTo = function _CacheBaseService_addItemsTo(options, data, item) {
195
+ const firstCachedModified = this.utilityService.getValue(data[0], options.lastModifiedDatePath);
196
+ const currentModified = this.utilityService.getValue(item, options.lastModifiedDatePath);
197
+ if (firstCachedModified < currentModified) {
198
+ data.unshift(...options.prepareDataBeforeCaching([item]));
199
+ }
200
+ else {
201
+ data.push(...options.prepareDataBeforeCaching([item]));
202
+ }
203
+ }, _CacheBaseService_prepareOptions = function _CacheBaseService_prepareOptions(options) {
204
+ options.prepareDataBeforeCaching =
205
+ options.prepareDataBeforeCaching || DEFAULT_CACHE_OPTIONS.PREPARE_DATA;
206
+ options.pageKey = options.pageKey || DEFAULT_CACHE_OPTIONS.PAGE_KEY;
207
+ options.totalPageKey =
208
+ options.totalPageKey || DEFAULT_CACHE_OPTIONS.TOTAL_PAGE_KEY;
209
+ options.resultsCount =
210
+ options.resultsCount || DEFAULT_CACHE_OPTIONS.RESULTS_COUNT_KEY;
211
+ options.mappedDataKey =
212
+ options.mappedDataKey || DEFAULT_CACHE_OPTIONS.MAPPED_DATA_KEY;
213
+ options.uniqueCompareKey =
214
+ options.uniqueCompareKey || DEFAULT_CACHE_OPTIONS.UNIQUE_COMPARE_KEY;
215
+ options.minCompareDateKey =
216
+ options.minCompareDateKey || DEFAULT_CACHE_OPTIONS.MIN_COMPARE_DATE_KEY;
217
+ options.lastModifiedDateKey =
218
+ options.lastModifiedDateKey || DEFAULT_CACHE_OPTIONS.LAST_MODIFIED_KEY;
219
+ options.lastModifiedDatePath =
220
+ options.lastModifiedDatePath || DEFAULT_CACHE_OPTIONS.LAST_MODIFIED_PATH;
221
+ options.excludeKeysWhenUpdate =
222
+ options.excludeKeysWhenUpdate ||
223
+ DEFAULT_CACHE_OPTIONS.EXCLUDE_KEYS_WHEN_UPDATE;
224
+ options.childrenPath =
225
+ options.childrenPath || DEFAULT_CACHE_OPTIONS.CHILDREN_PATH;
226
+ options.parentKey = options.parentKey || DEFAULT_CACHE_OPTIONS.PARENT_KEY;
227
+ }, _CacheBaseService_prepareConfig = function _CacheBaseService_prepareConfig() {
228
+ var _a, _b, _c, _d, _e, _f, _g, _h;
229
+ DEFAULT_TTL_CONFIG.TTL =
230
+ ((_b = (_a = EnvManager.environment) === null || _a === void 0 ? void 0 : _a.cache) === null || _b === void 0 ? void 0 : _b.ttl) || DEFAULT_TTL_CONFIG.TTL;
231
+ DEFAULT_TTL_CONFIG.UNIT =
232
+ ((_d = (_c = EnvManager.environment) === null || _c === void 0 ? void 0 : _c.cache) === null || _d === void 0 ? void 0 : _d.ttlUnit) || DEFAULT_TTL_CONFIG.UNIT;
233
+ DEFAULT_TTL_CONFIG.AUTO_CHECK =
234
+ ((_f = (_e = EnvManager.environment) === null || _e === void 0 ? void 0 : _e.cache) === null || _f === void 0 ? void 0 : _f.autoCheck) == "YES";
235
+ DEFAULT_TTL_CONFIG.RETRY =
236
+ ((_h = (_g = EnvManager.environment) === null || _g === void 0 ? void 0 : _g.cache) === null || _h === void 0 ? void 0 : _h.retry) || DEFAULT_TTL_CONFIG.RETRY;
237
+ }, _CacheBaseService_add1SecondToModifiedDate = function _CacheBaseService_add1SecondToModifiedDate(date) {
238
+ let newDate = new Date(date.getTime());
239
+ newDate.setSeconds(newDate.getSeconds() + 1);
240
+ return newDate;
241
+ }, _CacheBaseService_clear = function _CacheBaseService_clear(userName, keyOrAll = "") {
242
+ Object.keys(window.localStorage)
243
+ .filter((q) => q.startsWith(`${userName}__${DEFAULT_CACHE_OPTIONS.PREFIX}${keyOrAll}`))
244
+ .forEach((key) => {
245
+ window.localStorage.removeItem(key);
246
+ });
247
+ }, _CacheBaseService_validateTTLForKey = function _CacheBaseService_validateTTLForKey(options) {
248
+ var _a;
249
+ const firstFetchingDate = (_a = __classPrivateFieldGet(this, _CacheBaseService_instances, "m", _CacheBaseService_getItem).call(this, options)) === null || _a === void 0 ? void 0 : _a.firstFetchingDate;
250
+ if (!firstFetchingDate)
251
+ return;
252
+ const momentDate1 = moment(new Date(firstFetchingDate));
253
+ const momentDate2 = moment(new Date());
254
+ const difference = momentDate2.diff(momentDate1, DEFAULT_TTL_CONFIG.UNIT);
255
+ if (difference >= DEFAULT_TTL_CONFIG.TTL)
256
+ __classPrivateFieldGet(this, _CacheBaseService_instances, "m", _CacheBaseService_clear).call(this, options.userName, options.cacheKey);
257
+ }, _CacheBaseService_setItemInMap = function _CacheBaseService_setItemInMap(key, val) {
258
+ const empty = {
259
+ data: [],
260
+ firstFetchingDate: "",
261
+ lastModifiedDate: "",
262
+ resultsCount: 0,
263
+ fetchingItemsFromTheServer: false,
264
+ onFinishFetching: new Subject(),
265
+ };
266
+ let value = val ? val : empty;
267
+ __classPrivateFieldGet(this, _CacheBaseService_fetchedItems, "f")[key] = value;
268
+ }, _CacheBaseService_getItem = function _CacheBaseService_getItem(options) {
269
+ let data;
270
+ if (options.inMemory) {
271
+ data = __classPrivateFieldGet(this, _CacheBaseService_fetchedItems, "f")[options.cacheKey];
272
+ }
273
+ else {
274
+ const value = this.userPreferencesService.get(`${DEFAULT_CACHE_OPTIONS.PREFIX}${options.cacheKey}`);
275
+ if (!value)
276
+ return;
277
+ data = JSON.parse(value);
278
+ }
279
+ return data;
280
+ }, _CacheBaseService_setItem = function _CacheBaseService_setItem(value, options) {
281
+ if (options.inMemory)
282
+ return;
283
+ else {
284
+ this.userPreferencesService.set(`${DEFAULT_CACHE_OPTIONS.PREFIX}${options.cacheKey}`, JSON.stringify(value));
285
+ }
286
+ };
287
+ CacheBaseService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CacheBaseService, deps: [{ token: i1.UserPreferencesService }, { token: i2.UtilityService }], target: i0.ɵɵFactoryTarget.Injectable });
288
+ CacheBaseService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CacheBaseService, providedIn: "root" });
289
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CacheBaseService, decorators: [{
290
+ type: Injectable,
291
+ args: [{
292
+ providedIn: "root",
293
+ }]
294
+ }], ctorParameters: function () { return [{ type: i1.UserPreferencesService }, { type: i2.UtilityService }]; } });
295
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FjaGUtYmFzZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvc2hhcmVkL3NlcnZpY2VzL2Jhc2UvY2FjaGUtYmFzZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsS0FBSyxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNsRCxPQUFPLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDMUQsT0FBTyxLQUFLLE1BQU0sTUFBTSxRQUFRLENBQUM7QUFDakMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRXBELE9BQU8sS0FBSyxNQUFNLGFBQWEsQ0FBQztBQUNoQyxPQUFPLE9BQU8sTUFBTSxlQUFlLENBQUM7QUFDcEMsT0FBTyxVQUFVLE1BQU0sa0JBQWtCLENBQUM7QUFDMUMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sVUFBVSxDQUFDO0FBRzlDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7OztBQUsvQyxNQUFNLE9BQU8sZ0JBQWdCO0lBRzNCLFlBQ1Usc0JBQThDLEVBQzlDLGNBQThCO1FBRDlCLDJCQUFzQixHQUF0QixzQkFBc0IsQ0FBd0I7UUFDOUMsbUJBQWMsR0FBZCxjQUFjLENBQWdCOztRQUp4Qyx5Q0FBd0MsSUFBSSxHQUFHLEVBQXFCLEVBQUM7UUFNbkUsdUJBQUEsSUFBSSxvRUFBZSxNQUFuQixJQUFJLENBQWlCLENBQUM7SUFDeEIsQ0FBQztJQUVELE9BQU8sQ0FBQyxRQUFnQjtRQUN0QixPQUFPLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxPQUFPLENBQ3hDLEdBQUcscUJBQXFCLENBQUMsTUFBTSxHQUFHLFFBQVEsRUFBRSxDQUM3QyxDQUFDO0lBQ0osQ0FBQztJQUNELFFBQVEsQ0FBQyxRQUFnQjtRQUN2Qix1QkFBQSxJQUFJLDREQUFPLE1BQVgsSUFBSSxFQUFRLFFBQVEsQ0FBQyxDQUFDO0lBQ3hCLENBQUM7SUFDRCxXQUFXLENBQUMsUUFBZ0I7UUFDMUIsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFVBQVUsSUFBSSxDQUFDLFFBQVE7WUFBRSxPQUFPO1FBRXhELE1BQU0sTUFBTSxHQUFHLEdBQUcsUUFBUSxLQUFLLHFCQUFxQixDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQzlELE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQzthQUM3QixNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUM7YUFDbkMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7O1lBQ2QsTUFBTSxPQUFPLEdBQXFCO2dCQUNoQyxRQUFRLEVBQUUsR0FBRyxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDO2dCQUNqQyxRQUFRLEVBQUUsUUFBUTtnQkFDbEIsT0FBTyxFQUFFLHFCQUFxQixDQUFDLE9BQU87Z0JBQ3RDLHdCQUF3QixFQUFFLHFCQUFxQixDQUFDLFlBQVk7YUFDN0QsQ0FBQztZQUNGLE1BQU0saUJBQWlCLEdBQUcsTUFBQSx1QkFBQSxJQUFJLDhEQUFTLE1BQWIsSUFBSSxFQUFVLE9BQU8sQ0FBQywwQ0FBRSxpQkFBaUIsQ0FBQztZQUNwRSxJQUFJLENBQUMsaUJBQWlCO2dCQUFFLE9BQU87WUFFL0IsTUFBTSxXQUFXLEdBQUcsTUFBTSxDQUFDLElBQUksSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQztZQUN4RCxNQUFNLFdBQVcsR0FBRyxNQUFNLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1lBQ3ZDLE1BQU0sVUFBVSxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQ2pDLFdBQVcsRUFDWCxrQkFBa0IsQ0FBQyxJQUFJLENBQ3hCLENBQUM7WUFDRixPQUFPLFVBQVUsSUFBSSxrQkFBa0IsQ0FBQyxHQUFHLENBQUM7UUFDOUMsQ0FBQyxDQUFDO2FBQ0QsT0FBTyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7WUFDZixNQUFNLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN0QyxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFDRCxrQkFBa0IsQ0FBQyxPQUF5Qjs7UUFDMUMsdUJBQUEsSUFBSSx3RUFBbUIsTUFBdkIsSUFBSSxFQUFvQixPQUFPLENBQUMsQ0FBQztRQUVqQyxJQUFJLE1BQUEsdUJBQUEsSUFBSSxzQ0FBYyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsMENBQUUsMEJBQTBCLEVBQUU7WUFDcEUsT0FBTyx1QkFBQSxJQUFJLHNDQUFjLENBQ3ZCLE9BQU8sQ0FBQyxRQUFRLENBQ2pCLENBQUMsZ0JBQWdCLENBQUMsWUFBWSxFQUFFLENBQUM7U0FDbkM7YUFBTTtZQUNMLE9BQU8sdUJBQUEsSUFBSSx1RUFBa0IsTUFBdEIsSUFBSSxFQUFtQixPQUFPLENBQUMsQ0FBQztTQUN4QztJQUNILENBQUM7OzhLQUNpQixPQUF5QjtJQUN6QyxJQUFJLFVBQTJCLENBQUM7SUFDaEMsdUJBQUEsSUFBSSxxRUFBZ0IsTUFBcEIsSUFBSSxFQUFpQixPQUFPLENBQUMsQ0FBQztJQUU5QixNQUFNLFVBQVUsR0FBRyx1QkFBQSxJQUFJLDhEQUFTLE1BQWIsSUFBSSxFQUFVLE9BQU8sQ0FBQyxDQUFDO0lBRTFDLElBQUksVUFBVSxFQUFFO1FBQ2QsdUJBQUEsSUFBSSxtRUFBYyxNQUFsQixJQUFJLEVBQWUsT0FBTyxDQUFDLFFBQVEsa0NBQzlCLFVBQVUsS0FDYiwwQkFBMEIsRUFBRSxLQUFLLEVBQ2pDLGdCQUFnQixFQUFFLElBQUksT0FBTyxFQUFhLEVBQzFDLE9BQU8sRUFBRSxPQUFPLENBQUMsT0FBTyxJQUN4QixDQUFDO1FBRUgsTUFBTSxNQUFNLEdBQUc7WUFDYixDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1lBQ3BCLENBQUMsT0FBTyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsdUJBQUEsSUFBSSwrRUFBMEIsTUFBOUIsSUFBSSxFQUMvQixJQUFJLElBQUksQ0FBQyx1QkFBQSxJQUFJLHNDQUFjLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLENBQ2hFLENBQUMsV0FBVyxFQUFFO1NBQ2hCLENBQUM7UUFDRix1QkFBQSxJQUFJLHNDQUFjLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckQsVUFBVSxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7S0FDdEM7U0FBTTtRQUNMLHVCQUFBLElBQUksbUVBQWMsTUFBbEIsSUFBSSxFQUFlLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNyQyx1QkFBQSxJQUFJLHNDQUFjLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDO1FBQy9ELHVCQUFBLElBQUksc0NBQWMsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsaUJBQWlCO1lBQ3BELElBQUksSUFBSSxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDM0IsVUFBVSxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0tBQ3hEO0lBRUQsdUJBQUEsSUFBSSxzQ0FBYyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQywwQkFBMEIsR0FBRyxJQUFJLENBQUM7SUFDdkUsT0FBTyxVQUFVLENBQUMsSUFBSSxDQUNwQixLQUFLLENBQUMsa0JBQWtCLENBQUMsS0FBSyxDQUFDLEVBQy9CLE1BQU0sQ0FBQyxDQUFDLE9BQVksRUFBRSxFQUFFOztRQUN0QixJQUFJLFdBQVcsR0FBMkIsSUFBSSxDQUFDO1FBQy9DLElBQUksT0FBTyxLQUFJLE1BQUEsT0FBTyxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsMENBQUUsTUFBTSxDQUFBLEVBQUU7WUFDckQsV0FBVyxHQUFHLHVCQUFBLElBQUkseUVBQW9CLE1BQXhCLElBQUksRUFBcUIsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1NBQzFEO1FBQ0QsT0FBTyxXQUFXLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO0lBQzNDLENBQUMsQ0FBQyxFQUNGLElBQUksRUFBRSxFQUNOLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFOztRQUNSLElBQUksYUFBYSxHQUFHLHVCQUFBLElBQUksc0NBQWMsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFjLENBQUM7UUFDdEUsYUFBYSxDQUFDLDBCQUEwQixHQUFHLEtBQUssQ0FBQztRQUNqRCxJQUFJLE1BQUEsYUFBYSxDQUFDLElBQUksMENBQUUsTUFBTSxFQUFFO1lBQzlCLGFBQWEsQ0FBQyxnQkFBZ0IsR0FBRyx1QkFBQSxJQUFJLHNFQUFpQixNQUFyQixJQUFJLEVBQ25DLGFBQWEsQ0FBQyxJQUFJLEVBQ2xCLE9BQU8sQ0FBQyxZQUFZLEVBQ3BCLE9BQU8sQ0FBQyxvQkFBb0IsQ0FDN0IsQ0FBQztZQUNGLHVCQUFBLElBQUksOERBQVMsTUFBYixJQUFJLEVBQ0Y7Z0JBQ0UsSUFBSSxFQUFFLGFBQWEsQ0FBQyxJQUFJO2dCQUN4QixnQkFBZ0IsRUFBRSxhQUFhLENBQUMsZ0JBQWdCO2dCQUNoRCxpQkFBaUIsRUFBRSxhQUFhLENBQUMsaUJBQWlCO2dCQUNsRCxZQUFZLEVBQUUsYUFBYSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUM7YUFDbEQsRUFDRCxPQUFPLENBQ1IsQ0FBQztTQUNIO1FBQ0QsT0FBTyxhQUFhLENBQUM7SUFDdkIsQ0FBQyxDQUFDLEVBQ0YsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7UUFDVixNQUFNLE1BQU0sR0FBRyxVQUFVLENBQUM7WUFDeEIsQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLEVBQUUsR0FBRyxDQUFDLElBQUk7WUFDakMsQ0FBQyxPQUFPLENBQUMsbUJBQW1CLENBQUMsRUFBRSxHQUFHLENBQUMsZ0JBQWdCO1lBQ25ELENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxFQUFFLEdBQUcsQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDO1NBQ2xELENBQUMsQ0FBQztRQUNILEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDbEMsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQyxDQUFDLENBQ0gsQ0FBQztBQUNKLENBQUMsbUVBRUMsS0FBWSxFQUNaLGdCQUF3QixFQUN4QixZQUFvQixFQUNwQixLQUFVO0lBRVYsS0FBSyxNQUFNLElBQUksSUFBSSxLQUFLLEVBQUU7UUFDeEIsSUFBSSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxLQUFLLEVBQUU7WUFDcEMsT0FBTyxJQUFJLENBQUM7U0FDYjtRQUNELE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxZQUFZLENBQUMsQ0FBQztRQUNsRSxJQUFJLFFBQVEsRUFBRTtZQUNaLE1BQU0sTUFBTSxHQUFHLHVCQUFBLElBQUksK0RBQVUsTUFBZCxJQUFJLEVBQ2pCLFFBQVEsRUFDUixnQkFBZ0IsRUFDaEIsWUFBWSxFQUNaLEtBQUssQ0FDTixDQUFDO1lBQ0YsSUFBSSxNQUFNLEVBQUU7Z0JBQ1YsT0FBTyxNQUFNLENBQUM7YUFDZjtTQUNGO0tBQ0Y7SUFDRCxPQUFPLElBQUksQ0FBQztBQUNkLENBQUMsaUZBRUMsUUFBZSxFQUNmLFlBQW9CLEVBQ3BCLFFBQWdCO0lBRWhCLElBQUksV0FBVyxHQUFXLElBQUksQ0FBQztJQUMvQixNQUFNLFFBQVEsR0FBRyxDQUFDLElBQVMsRUFBRSxFQUFFO1FBQzdCLElBQUksQ0FBQyxJQUFJO1lBQUUsT0FBTztRQUNsQixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsWUFBWSxDQUFDLENBQUM7UUFDbEUsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQzlELElBQUksUUFBUSxJQUFJLENBQUMsQ0FBQyxXQUFXLElBQUksUUFBUSxHQUFHLFdBQVcsQ0FBQyxFQUFFO1lBQ3hELFdBQVcsR0FBRyxRQUFRLENBQUM7U0FDeEI7UUFDRCxJQUFJLFFBQVEsYUFBUixRQUFRLHVCQUFSLFFBQVEsQ0FBRSxNQUFNLEVBQUU7WUFDcEIsS0FBSyxNQUFNLEtBQUssSUFBSSxRQUFRLEVBQUU7Z0JBQzVCLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQzthQUNqQjtTQUNGO0lBQ0gsQ0FBQyxDQUFDO0lBQ0YsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDM0MsT0FBTyxXQUFXLENBQUM7QUFDckIsQ0FBQyx1RkFFQyxPQUF5QixFQUN6QixHQUFROztJQUVSLElBQUksTUFBQSx1QkFBQSxJQUFJLHNDQUFjLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDLElBQUksMENBQUUsTUFBTSxFQUFFO1FBQ3JELEdBQUcsQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQ3ZDLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUN4QyxDQUFDLEVBQ0QsT0FBTyxDQUFDLG9CQUFvQixDQUM3QixDQUFDO1lBQ0YsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQ3pDLENBQUMsRUFDRCxPQUFPLENBQUMsb0JBQW9CLENBQzdCLENBQUM7WUFDRixPQUFPLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLE9BQU8sRUFBRSxHQUFHLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ2hFLENBQUMsQ0FBQyxDQUFDO1FBQ0gsR0FBRyxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRTtZQUM3QyxNQUFNLElBQUksR0FBRyx1QkFBQSxJQUFJLCtEQUFVLE1BQWQsSUFBSSxFQUNmLHVCQUFBLElBQUksc0NBQWMsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsSUFBSSxFQUN6QyxPQUFPLENBQUMsZ0JBQWdCLEVBQ3hCLE9BQU8sQ0FBQyxZQUFZLEVBQ3BCLE9BQU8sQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsQ0FDbEMsQ0FBQztZQUVGLE1BQU0sYUFBYSxHQUFHLE9BQU8sQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDckUsSUFBSSxJQUFJLEVBQUU7Z0JBQ1IsOEJBQThCO2dCQUM5QixNQUFNLGNBQWMsR0FBRyxLQUFLLENBQzFCLGFBQWEsRUFDYixPQUFPLENBQUMscUJBQXFCLENBQzlCLENBQUM7Z0JBQ0YsT0FBTyxDQUFDLElBQUksRUFBRSxjQUFjLENBQUMsQ0FBQzthQUMvQjtpQkFBTTtnQkFDTCxrREFBa0Q7Z0JBRWxELHlFQUF5RTtnQkFDekUsTUFBTSxJQUFJLEdBQUcsdUJBQUEsSUFBSSwrREFBVSxNQUFkLElBQUksRUFDZix1QkFBQSxJQUFJLHNDQUFjLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDLElBQUksRUFDekMsT0FBTyxDQUFDLGdCQUFnQixFQUN4QixPQUFPLENBQUMsWUFBWSxFQUNwQixPQUFPLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUMzQixDQUFDO2dCQUVGLElBQUksSUFBSSxFQUFFO29CQUNSLHNDQUFzQztvQkFDdEMsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQzNDLElBQUksRUFDSixPQUFPLENBQUMsWUFBWSxDQUNyQixDQUFDO29CQUNGLHVCQUFBLElBQUksaUVBQVksTUFBaEIsSUFBSSxFQUFhLE9BQU8sRUFBRSxRQUFRLEVBQUUsT0FBTyxDQUFDLENBQUM7aUJBQzlDO3FCQUFNO29CQUNMLHNDQUFzQztvQkFDdEMsdUJBQUEsSUFBSSxpRUFBWSxNQUFoQixJQUFJLEVBQ0YsT0FBTyxFQUNQLHVCQUFBLElBQUksc0NBQWMsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsSUFBSSxFQUN6QyxPQUFPLENBQ1IsQ0FBQztpQkFDSDthQUNGO1FBQ0gsQ0FBQyxDQUFDLENBQUM7S0FDSjtTQUFNO1FBQ0wsR0FBRyxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsR0FBRyxPQUFPLENBQUMsd0JBQXdCLENBQzNELEdBQUcsQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLENBQzNCLENBQUM7UUFDRix1QkFBQSxJQUFJLHNDQUFjLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDLElBQUksR0FBRyxHQUFHLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ3ZFLHVCQUFBLElBQUksc0NBQWMsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsWUFBWTtZQUMvQyxHQUFHLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFDO0tBQzdCO0lBQ0QsSUFBSSxHQUFHLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxHQUFHLEdBQUcsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1FBQ3hELE9BQU8sdUJBQUEsSUFBSSxzQ0FBYyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQyxPQUFPLGlDQUM5QyxDQUFDLHVCQUFBLElBQUksc0NBQWMsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsTUFBTSxJQUFJLEVBQUUsQ0FBQyxLQUN0RCxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRSxHQUFHLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFDM0MsQ0FBQztLQUNKO1NBQU07UUFDTCxPQUFPLElBQUksQ0FBQztLQUNiO0FBQ0gsQ0FBQyx1RUFDVyxPQUF5QixFQUFFLElBQVcsRUFBRSxJQUFTO0lBQzNELE1BQU0sbUJBQW1CLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQ3RELElBQUksQ0FBQyxDQUFDLENBQUMsRUFDUCxPQUFPLENBQUMsb0JBQW9CLENBQzdCLENBQUM7SUFDRixNQUFNLGVBQWUsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FDbEQsSUFBSSxFQUNKLE9BQU8sQ0FBQyxvQkFBb0IsQ0FDN0IsQ0FBQztJQUNGLElBQUksbUJBQW1CLEdBQUcsZUFBZSxFQUFFO1FBQ3pDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxPQUFPLENBQUMsd0JBQXdCLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7S0FDM0Q7U0FBTTtRQUNMLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxPQUFPLENBQUMsd0JBQXdCLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7S0FDeEQ7QUFDSCxDQUFDLCtFQUNlLE9BQXlCO0lBQ3ZDLE9BQU8sQ0FBQyx3QkFBd0I7UUFDOUIsT0FBTyxDQUFDLHdCQUF3QixJQUFJLHFCQUFxQixDQUFDLFlBQVksQ0FBQztJQUN6RSxPQUFPLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQyxPQUFPLElBQUkscUJBQXFCLENBQUMsUUFBUSxDQUFDO0lBQ3BFLE9BQU8sQ0FBQyxZQUFZO1FBQ2xCLE9BQU8sQ0FBQyxZQUFZLElBQUkscUJBQXFCLENBQUMsY0FBYyxDQUFDO0lBQy9ELE9BQU8sQ0FBQyxZQUFZO1FBQ2xCLE9BQU8sQ0FBQyxZQUFZLElBQUkscUJBQXFCLENBQUMsaUJBQWlCLENBQUM7SUFDbEUsT0FBTyxDQUFDLGFBQWE7UUFDbkIsT0FBTyxDQUFDLGFBQWEsSUFBSSxxQkFBcUIsQ0FBQyxlQUFlLENBQUM7SUFDakUsT0FBTyxDQUFDLGdCQUFnQjtRQUN0QixPQUFPLENBQUMsZ0JBQWdCLElBQUkscUJBQXFCLENBQUMsa0JBQWtCLENBQUM7SUFDdkUsT0FBTyxDQUFDLGlCQUFpQjtRQUN2QixPQUFPLENBQUMsaUJBQWlCLElBQUkscUJBQXFCLENBQUMsb0JBQW9CLENBQUM7SUFDMUUsT0FBTyxDQUFDLG1CQUFtQjtRQUN6QixPQUFPLENBQUMsbUJBQW1CLElBQUkscUJBQXFCLENBQUMsaUJBQWlCLENBQUM7SUFDekUsT0FBTyxDQUFDLG9CQUFvQjtRQUMxQixPQUFPLENBQUMsb0JBQW9CLElBQUkscUJBQXFCLENBQUMsa0JBQWtCLENBQUM7SUFDM0UsT0FBTyxDQUFDLHFCQUFxQjtRQUMzQixPQUFPLENBQUMscUJBQXFCO1lBQzdCLHFCQUFxQixDQUFDLHdCQUF3QixDQUFDO0lBQ2pELE9BQU8sQ0FBQyxZQUFZO1FBQ2xCLE9BQU8sQ0FBQyxZQUFZLElBQUkscUJBQXFCLENBQUMsYUFBYSxDQUFDO0lBQzlELE9BQU8sQ0FBQyxTQUFTLEdBQUcsT0FBTyxDQUFDLFNBQVMsSUFBSSxxQkFBcUIsQ0FBQyxVQUFVLENBQUM7QUFDNUUsQ0FBQzs7SUFFQyxrQkFBa0IsQ0FBQyxHQUFHO1FBQ3BCLENBQUEsTUFBQSxNQUFBLFVBQVUsQ0FBQyxXQUFXLDBDQUFFLEtBQUssMENBQUUsR0FBRyxLQUFJLGtCQUFrQixDQUFDLEdBQUcsQ0FBQztJQUMvRCxrQkFBa0IsQ0FBQyxJQUFJO1FBQ3JCLENBQUEsTUFBQSxNQUFBLFVBQVUsQ0FBQyxXQUFXLDBDQUFFLEtBQUssMENBQUUsT0FBTyxLQUFJLGtCQUFrQixDQUFDLElBQUksQ0FBQztJQUNwRSxrQkFBa0IsQ0FBQyxVQUFVO1FBQzNCLENBQUEsTUFBQSxNQUFBLFVBQVUsQ0FBQyxXQUFXLDBDQUFFLEtBQUssMENBQUUsU0FBUyxLQUFJLEtBQUssQ0FBQztJQUNwRCxrQkFBa0IsQ0FBQyxLQUFLO1FBQ3RCLENBQUEsTUFBQSxNQUFBLFVBQVUsQ0FBQyxXQUFXLDBDQUFFLEtBQUssMENBQUUsS0FBSyxLQUFJLGtCQUFrQixDQUFDLEtBQUssQ0FBQztBQUNyRSxDQUFDLG1HQUN5QixJQUFVO0lBQ2xDLElBQUksT0FBTyxHQUFHLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO0lBQ3ZDLE9BQU8sQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQzdDLE9BQU8sT0FBTyxDQUFDO0FBQ2pCLENBQUMsNkRBQ00sUUFBZ0IsRUFBRSxXQUFtQixFQUFFO0lBQzVDLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQztTQUM3QixNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUNaLENBQUMsQ0FBQyxVQUFVLENBQUMsR0FBRyxRQUFRLEtBQUsscUJBQXFCLENBQUMsTUFBTSxHQUFHLFFBQVEsRUFBRSxDQUFDLENBQ3hFO1NBQ0EsT0FBTyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7UUFDZixNQUFNLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN0QyxDQUFDLENBQUMsQ0FBQztBQUNQLENBQUMscUZBQ2tCLE9BQXlCOztJQUMxQyxNQUFNLGlCQUFpQixHQUFHLE1BQUEsdUJBQUEsSUFBSSw4REFBUyxNQUFiLElBQUksRUFBVSxPQUFPLENBQUMsMENBQUUsaUJBQWlCLENBQUM7SUFFcEUsSUFBSSxDQUFDLGlCQUFpQjtRQUFFLE9BQU87SUFFL0IsTUFBTSxXQUFXLEdBQUcsTUFBTSxDQUFDLElBQUksSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQztJQUN4RCxNQUFNLFdBQVcsR0FBRyxNQUFNLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBRXZDLE1BQU0sVUFBVSxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLGtCQUFrQixDQUFDLElBQUksQ0FBQyxDQUFDO0lBRTFFLElBQUksVUFBVSxJQUFJLGtCQUFrQixDQUFDLEdBQUc7UUFDdEMsdUJBQUEsSUFBSSw0REFBTyxNQUFYLElBQUksRUFBUSxPQUFPLENBQUMsUUFBUSxFQUFFLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztBQUNwRCxDQUFDLDJFQUNhLEdBQVcsRUFBRSxHQUFlO0lBQ3hDLE1BQU0sS0FBSyxHQUFjO1FBQ3ZCLElBQUksRUFBRSxFQUFFO1FBQ1IsaUJBQWlCLEVBQUUsRUFBRTtRQUNyQixnQkFBZ0IsRUFBRSxFQUFFO1FBQ3BCLFlBQVksRUFBRSxDQUFDO1FBQ2YsMEJBQTBCLEVBQUUsS0FBSztRQUNqQyxnQkFBZ0IsRUFBRSxJQUFJLE9BQU8sRUFBYTtLQUMzQyxDQUFDO0lBQ0YsSUFBSSxLQUFLLEdBQWMsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztJQUN6Qyx1QkFBQSxJQUFJLHNDQUFjLENBQUMsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDO0FBQ2xDLENBQUMsaUVBQ1EsT0FBeUI7SUFDaEMsSUFBSSxJQUFlLENBQUM7SUFDcEIsSUFBSSxPQUFPLENBQUMsUUFBUSxFQUFFO1FBQ3BCLElBQUksR0FBRyx1QkFBQSxJQUFJLHNDQUFjLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0tBQzdDO1NBQU07UUFDTCxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsc0JBQXNCLENBQUMsR0FBRyxDQUMzQyxHQUFHLHFCQUFxQixDQUFDLE1BQU0sR0FBRyxPQUFPLENBQUMsUUFBUSxFQUFFLENBQ3JELENBQUM7UUFDRixJQUFJLENBQUMsS0FBSztZQUFFLE9BQU87UUFDbkIsSUFBSSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7S0FDMUI7SUFDRCxPQUFPLElBQUksQ0FBQztBQUNkLENBQUMsaUVBQ1EsS0FBMEIsRUFBRSxPQUF5QjtJQUM1RCxJQUFJLE9BQU8sQ0FBQyxRQUFRO1FBQUUsT0FBTztTQUN4QjtRQUNILElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxHQUFHLENBQzdCLEdBQUcscUJBQXFCLENBQUMsTUFBTSxHQUFHLE9BQU8sQ0FBQyxRQUFRLEVBQUUsRUFDcEQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FDdEIsQ0FBQztLQUNIO0FBQ0gsQ0FBQzs4R0E1V1UsZ0JBQWdCO2tIQUFoQixnQkFBZ0IsY0FGZixNQUFNOzRGQUVQLGdCQUFnQjtrQkFINUIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgRU1QVFksIE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQgeyBleHBhbmQsIGxhc3QsIG1hcCwgcmV0cnkgfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcclxuaW1wb3J0ICogYXMgbW9tZW50IGZyb20gXCJtb21lbnRcIjtcclxuaW1wb3J0IHsgREVGQVVMVF9DQUNIRV9PUFRJT05TIH0gZnJvbSBcIi4vY29uc3RhbnRzXCI7XHJcbmltcG9ydCB7IEJhc2VDYWNoZU9wdGlvbnMsIENhY2hlSW5mbyB9IGZyb20gXCIuL21vZGVsc1wiO1xyXG5pbXBvcnQgX29taXQgZnJvbSBcImxvZGFzaC9vbWl0XCI7XHJcbmltcG9ydCBfYXNzaWduIGZyb20gXCJsb2Rhc2gvYXNzaWduXCI7XHJcbmltcG9ydCBfY2xvbmVEZWVwIGZyb20gXCJsb2Rhc2gvY2xvbmVEZWVwXCI7XHJcbmltcG9ydCB7IERFRkFVTFRfVFRMX0NPTkZJRyB9IGZyb20gXCIuL2NvbmZpZ1wiO1xyXG5pbXBvcnQgeyBVc2VyUHJlZmVyZW5jZXNTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uLy4uL2NvcmUvc2VydmljZXMvdXNlci91c2VyLXByZWZlcmVuY2VzLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgVXRpbGl0eVNlcnZpY2UgfSBmcm9tIFwiLi4vLi4vLi4vY29yZS91dGlsaXRpZXMvdXRpbGl0eS5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IEVudk1hbmFnZXIgfSBmcm9tIFwiLi4vLi4vLi4vY29yZS9lbnZcIjtcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiBcInJvb3RcIixcclxufSlcclxuZXhwb3J0IGNsYXNzIENhY2hlQmFzZVNlcnZpY2Uge1xyXG4gICNmZXRjaGVkSXRlbXM6IE1hcDxzdHJpbmcsIENhY2hlSW5mbz4gPSBuZXcgTWFwPHN0cmluZywgQ2FjaGVJbmZvPigpO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgdXNlclByZWZlcmVuY2VzU2VydmljZTogVXNlclByZWZlcmVuY2VzU2VydmljZSxcclxuICAgIHByaXZhdGUgdXRpbGl0eVNlcnZpY2U6IFV0aWxpdHlTZXJ2aWNlXHJcbiAgKSB7XHJcbiAgICB0aGlzLiNwcmVwYXJlQ29uZmlnKCk7XHJcbiAgfVxyXG5cclxuICBoYXNJdGVtKGNhY2hlS2V5OiBzdHJpbmcpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLnVzZXJQcmVmZXJlbmNlc1NlcnZpY2UuaGFzSXRlbShcclxuICAgICAgYCR7REVGQVVMVF9DQUNIRV9PUFRJT05TLlBSRUZJWH0ke2NhY2hlS2V5fWBcclxuICAgICk7XHJcbiAgfVxyXG4gIGNsZWFyQWxsKHVzZXJOYW1lOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuI2NsZWFyKHVzZXJOYW1lKTtcclxuICB9XHJcbiAgdmFsaWRhdGVUVEwodXNlck5hbWU6IHN0cmluZykge1xyXG4gICAgaWYgKCFERUZBVUxUX1RUTF9DT05GSUcuQVVUT19DSEVDSyB8fCAhdXNlck5hbWUpIHJldHVybjtcclxuXHJcbiAgICBjb25zdCBwcmVmaXggPSBgJHt1c2VyTmFtZX1fXyR7REVGQVVMVF9DQUNIRV9PUFRJT05TLlBSRUZJWH1gO1xyXG4gICAgT2JqZWN0LmtleXMod2luZG93LmxvY2FsU3RvcmFnZSlcclxuICAgICAgLmZpbHRlcigocSkgPT4gcS5zdGFydHNXaXRoKHByZWZpeCkpXHJcbiAgICAgIC5maWx0ZXIoKGtleSkgPT4ge1xyXG4gICAgICAgIGNvbnN0IG9wdGlvbnM6IEJhc2VDYWNoZU9wdGlvbnMgPSB7XHJcbiAgICAgICAgICBjYWNoZUtleToga2V5LnJlcGxhY2UocHJlZml4LCBcIlwiKSxcclxuICAgICAgICAgIHVzZXJOYW1lOiB1c2VyTmFtZSxcclxuICAgICAgICAgIHJlcXVlc3Q6IERFRkFVTFRfQ0FDSEVfT1BUSU9OUy5SRVFVRVNULFxyXG4gICAgICAgICAgcHJlcGFyZURhdGFCZWZvcmVDYWNoaW5nOiBERUZBVUxUX0NBQ0hFX09QVElPTlMuUFJFUEFSRV9EQVRBLFxyXG4gICAgICAgIH07XHJcbiAgICAgICAgY29uc3QgZmlyc3RGZXRjaGluZ0RhdGUgPSB0aGlzLiNnZXRJdGVtKG9wdGlvbnMpPy5maXJzdEZldGNoaW5nRGF0ZTtcclxuICAgICAgICBpZiAoIWZpcnN0RmV0Y2hpbmdEYXRlKSByZXR1cm47XHJcblxyXG4gICAgICAgIGNvbnN0IG1vbWVudERhdGUxID0gbW9tZW50KG5ldyBEYXRlKGZpcnN0RmV0Y2hpbmdEYXRlKSk7XHJcbiAgICAgICAgY29uc3QgbW9tZW50RGF0ZTIgPSBtb21lbnQobmV3IERhdGUoKSk7XHJcbiAgICAgICAgY29uc3QgZGlmZmVyZW5jZSA9IG1vbWVudERhdGUyLmRpZmYoXHJcbiAgICAgICAgICBtb21lbnREYXRlMSxcclxuICAgICAgICAgIERFRkFVTFRfVFRMX0NPTkZJRy5VTklUXHJcbiAgICAgICAgKTtcclxuICAgICAgICByZXR1cm4gZGlmZmVyZW5jZSA+PSBERUZBVUxUX1RUTF9DT05GSUcuVFRMO1xyXG4gICAgICB9KVxyXG4gICAgICAuZm9yRWFjaCgoa2V5KSA9PiB7XHJcbiAgICAgICAgd2luZG93LmxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKGtleSk7XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuICBzdGFydEZldGNoaW5nSXRlbXMob3B0aW9uczogQmFzZUNhY2hlT3B0aW9ucyk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICB0aGlzLiN2YWxpZGF0ZVRUTEZvcktleShvcHRpb25zKTtcclxuXHJcbiAgICBpZiAodGhpcy4jZmV0Y2hlZEl0ZW1zW29wdGlvbnMuY2FjaGVLZXldPy5mZXRjaGluZ0l0ZW1zRnJvbVRoZVNlcnZlcikge1xyXG4gICAgICByZXR1cm4gdGhpcy4jZmV0Y2hlZEl0ZW1zW1xyXG4gICAgICAgIG9wdGlvbnMuY2FjaGVLZXlcclxuICAgICAgXS5vbkZpbmlzaEZldGNoaW5nLmFzT2JzZXJ2YWJsZSgpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIHRoaXMuI2hhbmRsZUNhY2hlSXRlbXMob3B0aW9ucyk7XHJcbiAgICB9XHJcbiAgfVxyXG4gICNoYW5kbGVDYWNoZUl0ZW1zKG9wdGlvbnM6IEJhc2VDYWNoZU9wdGlvbnMpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IG9ic2VydmFibGU6IE9ic2VydmFibGU8YW55PjtcclxuICAgIHRoaXMuI3ByZXBhcmVPcHRpb25zKG9wdGlvbnMpO1xyXG5cclxuICAgIGNvbnN0IGNhY2hlZEl0ZW0gPSB0aGlzLiNnZXRJdGVtKG9wdGlvbnMpO1xyXG5cclxuICAgIGlmIChjYWNoZWRJdGVtKSB7XHJcbiAgICAgIHRoaXMuI3NldEl0ZW1Jbk1hcChvcHRpb25zLmNhY2hlS2V5LCB7XHJcbiAgICAgICAgLi4uY2FjaGVkSXRlbSxcclxuICAgICAgICBmZXRjaGluZ0l0ZW1zRnJvbVRoZVNlcnZlcjogZmFsc2UsXHJcbiAgICAgICAgb25GaW5pc2hGZXRjaGluZzogbmV3IFN1YmplY3Q8Q2FjaGVJbmZvPigpLFxyXG4gICAgICAgIHJlcXVlc3Q6IG9wdGlvbnMucmVxdWVzdCxcclxuICAgICAgfSk7XHJcblxyXG4gICAgICBjb25zdCBwYXJhbXMgPSB7XHJcbiAgICAgICAgW29wdGlvbnMucGFnZUtleV06IDAsXHJcbiAgICAgICAgW29wdGlvbnMubWluQ29tcGFyZURhdGVLZXldOiB0aGlzLiNhZGQxU2Vjb25kVG9Nb2RpZmllZERhdGUoXHJcbiAgICAgICAgICBuZXcgRGF0ZSh0aGlzLiNmZXRjaGVkSXRlbXNbb3B0aW9ucy5jYWNoZUtleV0ubGFzdE1vZGlmaWVkRGF0ZSlcclxuICAgICAgICApLnRvSVNPU3RyaW5nKCksXHJcbiAgICAgIH07XHJcbiAgICAgIHRoaXMuI2ZldGNoZWRJdGVtc1tvcHRpb25zLmNhY2hlS2V5XS5wYXJhbXMgPSBwYXJhbXM7XHJcbiAgICAgIG9ic2VydmFibGUgPSBvcHRpb25zLnJlcXVlc3QocGFyYW1zKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuI3NldEl0ZW1Jbk1hcChvcHRpb25zLmNhY2hlS2V5KTtcclxuICAgICAgdGhpcy4jZmV0Y2hlZEl0ZW1zW29wdGlvbnMuY2FjaGVLZXldLnJlcXVlc3QgPSBvcHRpb25zLnJlcXVlc3Q7XHJcbiAgICAgIHRoaXMuI2ZldGNoZWRJdGVtc1tvcHRpb25zLmNhY2hlS2V5XS5maXJzdEZldGNoaW5nRGF0ZSA9XHJcbiAgICAgICAgbmV3IERhdGUoKS50b0lTT1N0cmluZygpO1xyXG4gICAgICBvYnNlcnZhYmxlID0gb3B0aW9ucy5yZXF1ZXN0KHsgW29wdGlvbnMucGFnZUtleV06IDAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy4jZmV0Y2hlZEl0ZW1zW29wdGlvbnMuY2FjaGVLZXldLmZldGNoaW5nSXRlbXNGcm9tVGhlU2VydmVyID0gdHJ1ZTtcclxuICAgIHJldHVybiBvYnNlcnZhYmxlLnBpcGUoXHJcbiAgICAgIHJldHJ5KERFRkFVTFRfVFRMX0NPTkZJRy5SRVRSWSksXHJcbiAgICAgIGV4cGFuZCgocmVzdWx0czogYW55KSA9PiB7XHJcbiAgICAgICAgbGV0IGFub3RoZXJDYWxsOiBPYnNlcnZhYmxlPGFueT4gfCBudWxsID0gbnVsbDtcclxuICAgICAgICBpZiAocmVzdWx0cyAmJiByZXN1bHRzW29wdGlvbnMubWFwcGVkRGF0YUtleV0/Lmxlbmd0aCkge1xyXG4gICAgICAgICAgYW5vdGhlckNhbGwgPSB0aGlzLiNoYW5kbGVGZXRjaGVkSXRlbXMob3B0aW9ucywgcmVzdWx0cyk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBhbm90aGVyQ2FsbCA/IGFub3RoZXJDYWxsIDogRU1QVFk7XHJcbiAgICAgIH0pLFxyXG4gICAgICBsYXN0KCksXHJcbiAgICAgIG1hcCgoXykgPT4ge1xyXG4gICAgICAgIGxldCBfZmV0Y2hlZEl0ZW1zID0gdGhpcy4jZmV0Y2hlZEl0ZW1zW29wdGlvbnMuY2FjaGVLZXldIGFzIENhY2hlSW5mbztcclxuICAgICAgICBfZmV0Y2hlZEl0ZW1zLmZldGNoaW5nSXRlbXNGcm9tVGhlU2VydmVyID0gZmFsc2U7XHJcbiAgICAgICAgaWYgKF9mZXRjaGVkSXRlbXMuZGF0YT8ubGVuZ3RoKSB7XHJcbiAgICAgICAgICBfZmV0Y2hlZEl0ZW1zLmxhc3RNb2RpZmllZERhdGUgPSB0aGlzLiNmaW5kTGFyZ2VzdERhdGUoXHJcbiAgICAgICAgICAgIF9mZXRjaGVkSXRlbXMuZGF0YSxcclxuICAgICAgICAgICAgb3B0aW9ucy5jaGlsZHJlblBhdGgsXHJcbiAgICAgICAgICAgIG9wdGlvbnMubGFzdE1vZGlmaWVkRGF0ZVBhdGhcclxuICAgICAgICAgICk7XHJcbiAgICAgICAgICB0aGlzLiNzZXRJdGVtKFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgZGF0YTogX2ZldGNoZWRJdGVtcy5kYXRhLFxyXG4gICAgICAgICAgICAgIGxhc3RNb2RpZmllZERhdGU6IF9mZXRjaGVkSXRlbXMubGFzdE1vZGlmaWVkRGF0ZSxcclxuICAgICAgICAgICAgICBmaXJzdEZldGNoaW5nRGF0ZTogX2ZldGNoZWRJdGVtcy5maXJzdEZldGNoaW5nRGF0ZSxcclxuICAgICAgICAgICAgICByZXN1bHRzQ291bnQ6IF9mZXRjaGVkSXRlbXNbb3B0aW9ucy5yZXN1bHRzQ291bnRdLFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICBvcHRpb25zXHJcbiAgICAgICAgICApO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gX2ZldGNoZWRJdGVtcztcclxuICAgICAgfSksXHJcbiAgICAgIG1hcCgocmVzKSA9PiB7XHJcbiAgICAgICAgY29uc3QgcmVzdWx0ID0gX2Nsb25lRGVlcCh7XHJcbiAgICAgICAgICBbb3B0aW9ucy5tYXBwZWREYXRhS2V5XTogcmVzLmRhdGEsXHJcbiAgICAgICAgICBbb3B0aW9ucy5sYXN0TW9kaWZpZWREYXRlS2V5XTogcmVzLmxhc3RNb2RpZmllZERhdGUsXHJcbiAgICAgICAgICBbb3B0aW9ucy5yZXN1bHRzQ291bnRdOiByZXNbb3B0aW9ucy5yZXN1bHRzQ291bnRdLFxyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHJlcy5vbkZpbmlzaEZldGNoaW5nLm5leHQocmVzdWx0KTtcclxuICAgICAgICByZXR1cm4gcmVzdWx0O1xyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICB9XHJcbiAgI2ZpbmROb2RlKFxyXG4gICAgaXRlbXM6IGFueVtdLFxyXG4gICAgdW5pcXVlQ29tcGFyZUtleTogc3RyaW5nLFxyXG4gICAgY2hpbGRyZW5QYXRoOiBzdHJpbmcsXHJcbiAgICB2YWx1ZTogYW55XHJcbiAgKSB7XHJcbiAgICBmb3IgKGNvbnN0IG5vZGUgb2YgaXRlbXMpIHtcclxuICAgICAgaWYgKG5vZGVbdW5pcXVlQ29tcGFyZUtleV0gPT09IHZhbHVlKSB7XHJcbiAgICAgICAgcmV0dXJuIG5vZGU7XHJcbiAgICAgIH1cclxuICAgICAgY29uc3QgY2hpbGRyZW4gPSB0aGlzLnV0aWxpdHlTZXJ2aWNlLmdldFZhbHVlKG5vZGUsIGNoaWxkcmVuUGF0aCk7XHJcbiAgICAgIGlmIChjaGlsZHJlbikge1xyXG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IHRoaXMuI2ZpbmROb2RlKFxyXG4gICAgICAgICAgY2hpbGRyZW4sXHJcbiAgICAgICAgICB1bmlxdWVDb21wYXJlS2V5LFxyXG4gICAgICAgICAgY2hpbGRyZW5QYXRoLFxyXG4gICAgICAgICAgdmFsdWVcclxuICAgICAgICApO1xyXG4gICAgICAgIGlmIChyZXN1bHQpIHtcclxuICAgICAgICAgIHJldHVybiByZXN1bHQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9XHJcbiAgI2ZpbmRMYXJnZXN0RGF0ZShcclxuICAgIG5vZGVMaXN0OiBhbnlbXSxcclxuICAgIGNoaWxkcmVuUGF0aDogc3RyaW5nLFxyXG4gICAgZGF0ZVBhdGg6IHN0cmluZ1xyXG4gICk6IHN0cmluZyB7XHJcbiAgICBsZXQgbGFyZ2VzdERhdGU6IHN0cmluZyA9IG51bGw7XHJcbiAgICBjb25zdCB0cmF2ZXJzZSA9IChub2RlOiBhbnkpID0+IHtcclxuICAgICAgaWYgKCFub2RlKSByZXR1cm47XHJcbiAgICAgIGNvbnN0IGNoaWxkcmVuID0gdGhpcy51dGlsaXR5U2VydmljZS5nZXRWYWx1ZShub2RlLCBjaGlsZHJlblBhdGgpO1xyXG4gICAgICBjb25zdCBub2RlRGF0ZSA9IHRoaXMudXRpbGl0eVNlcnZpY2UuZ2V0VmFsdWUobm9kZSwgZGF0ZVBhdGgpO1xyXG4gICAgICBpZiAobm9kZURhdGUgJiYgKCFsYXJnZXN0RGF0ZSB8fCBub2RlRGF0ZSA+IGxhcmdlc3REYXRlKSkge1xyXG4gICAgICAgIGxhcmdlc3REYXRlID0gbm9kZURhdGU7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKGNoaWxkcmVuPy5sZW5ndGgpIHtcclxuICAgICAgICBmb3IgKGNvbnN0IGNoaWxkIG9mIGNoaWxkcmVuKSB7XHJcbiAgICAgICAgICB0cmF2ZXJzZShjaGlsZCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9O1xyXG4gICAgbm9kZUxpc3QuZm9yRWFjaCgobm9kZSkgPT4gdHJhdmVyc2Uobm9kZSkpO1xyXG4gICAgcmV0dXJuIGxhcmdlc3REYXRlO1xyXG4gIH1cclxuICAjaGFuZGxlRmV0Y2hlZEl0ZW1zKFxyXG4gICAgb3B0aW9uczogQmFzZUNhY2hlT3B0aW9ucyxcclxuICAgIHJlczogYW55XHJcbiAgKTogT2JzZXJ2YWJsZTxhbnk+IHwgbnVsbCB7XHJcbiAgICBpZiAodGhpcy4jZmV0Y2hlZEl0ZW1zW29wdGlvbnMuY2FjaGVLZXldLmRhdGE/Lmxlbmd0aCkge1xyXG4gICAgICByZXNbb3B0aW9ucy5tYXBwZWREYXRhS2V5XS5zb3J0KChhLCBiKSA9PiB7XHJcbiAgICAgICAgY29uc3QgZmlyc3QgPSB0aGlzLnV0aWxpdHlTZXJ2aWNlLmdldFZhbHVlKFxyXG4gICAgICAgICAgYSxcclxuICAgICAgICAgIG9wdGlvbnMubGFzdE1vZGlmaWVkRGF0ZVBhdGhcclxuICAgICAgICApO1xyXG4gICAgICAgIGNvbnN0IHNlY29uZCA9IHRoaXMudXRpbGl0eVNlcnZpY2UuZ2V0VmFsdWUoXHJcbiAgICAgICAgICBiLFxyXG4gICAgICAgICAgb3B0aW9ucy5sYXN0TW9kaWZpZWREYXRlUGF0aFxyXG4gICAgICAgICk7XHJcbiAgICAgICAgcmV0dXJuIG5ldyBEYXRlKGZpcnN0KS5nZXRUaW1lKCkgLSBuZXcgRGF0ZShzZWNvbmQpLmdldFRpbWUoKTtcclxuICAgICAgfSk7XHJcbiAgICAgIHJlc1tvcHRpb25zLm1hcHBlZERhdGFLZXldLmZvckVhY2goKGVsZW1lbnQpID0+IHtcclxuICAgICAgICBjb25zdCBpdGVtID0gdGhpcy4jZmluZE5vZGUoXHJcbiAgICAgICAgICB0aGlzLiNmZXRjaGVkSXRlbXNbb3B0aW9ucy5jYWNoZUtleV0uZGF0YSxcclxuICAgICAgICAgIG9wdGlvbnMudW5pcXVlQ29tcGFyZUtleSxcclxuICAgICAgICAgIG9wdGlvbnMuY2hpbGRyZW5QYXRoLFxyXG4gICAgICAgICAgZWxlbWVudFtvcHRpb25zLnVuaXF1ZUNvbXBhcmVLZXldXHJcbiAgICAgICAgKTtcclxuXHJcbiAgICAgICAgY29uc3QgbWFwcGVkRWxlbWVudCA9IG9wdGlvbnMucHJlcGFyZURhdGFCZWZvcmVDYWNoaW5nKFtlbGVtZW50XSlbMF07XHJcbiAgICAgICAgaWYgKGl0ZW0pIHtcclxuICAgICAgICAgIC8vIGVkaXQgOiB1cGRhdGUgaXRlbSBpbiBjYWNoZVxyXG4gICAgICAgICAgY29uc3QgZmlsdGVyZWRTb3VyY2UgPSBfb21pdChcclxuICAgICAgICAgICAgbWFwcGVkRWxlbWVudCxcclxuICAgICAgICAgICAgb3B0aW9ucy5leGNsdWRlS2V5c1doZW5VcGRhdGVcclxuICAgICAgICAgICk7XHJcbiAgICAgICAgICBfYXNzaWduKGl0ZW0sIGZpbHRlcmVkU291cmNlKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgLy8gYWRkIDogY2hlY2sgZGF0ZSB0byBkZXRlcm1pbmUgd2hlcmUgd2lsbCBpbnNlcnRcclxuXHJcbiAgICAgICAgICAvLyBpZiBpdGVtIHBhcmVudCBub3QgZm91bmQgYWRkIGFzIHJvb3QgZWxzZSB3aWxsIGFkZCBsZWF2ZXMgdG8gc3ViUGFyZW50XHJcbiAgICAgICAgICBjb25zdCBub2RlID0gdGhpcy4jZmluZE5vZGUoXHJcbiAgICAgICAgICAgIHRoaXMuI2ZldGNoZWRJdGVtc1tvcHRpb25zLmNhY2hlS2V5XS5kYXRhLFxyXG4gICAgICAgICAgICBvcHRpb25zLnVuaXF1ZUNvbXBhcmVLZXksXHJcbiAgICAgICAgICAgIG9wdGlvbnMuY2hpbGRyZW5QYXRoLFxyXG4gICAgICAgICAgICBlbGVtZW50W29wdGlvbnMucGFyZW50S2V5XVxyXG4gICAgICAgICAgKTtcclxuXHJcbiAgICAgICAgICBpZiAobm9kZSkge1xyXG4gICAgICAgICAgICAvLyB3aWxsIGNvbXBhcmUgd2l0aCBub2RlIGNoaWxkIHRvIGFkZFxyXG4gICAgICAgICAgICBjb25zdCBjaGlsZHJlbiA9IHRoaXMudXRpbGl0eVNlcnZpY2UuZ2V0VmFsdWUoXHJcbiAgICAgICAgICAgICAgbm9kZSxcclxuICAgICAgICAgICAgICBvcHRpb25zLmNoaWxkcmVuUGF0aFxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgICAgICB0aGlzLiNhZGRJdGVtc1RvKG9wdGlvbnMsIGNoaWxkcmVuLCBlbGVtZW50KTtcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIC8vIHdpbGwgY29tcGFyZSB3aXRoIHJvb3QgbGV2ZWwgdG8gYWRkXHJcbiAgICAgICAgICAgIHRoaXMuI2FkZEl0ZW1zVG8oXHJcbiAgICAgICAgICAgICAgb3B0aW9ucyxcclxuICAgICAgICAgICAgICB0aGlzLiNmZXRjaGVkSXRlbXNbb3B0aW9ucy5jYWNoZUtleV0uZGF0YSxcclxuICAgICAgICAgICAgICBlbGVtZW50XHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJlc1tvcHRpb25zLm1hcHBlZERhdGFLZXldID0gb3B0aW9ucy5wcmVwYXJlRGF0YUJlZm9yZUNhY2hpbmcoXHJcbiAgICAgICAgcmVzW29wdGlvbnMubWFwcGVkRGF0YUtleV1cclxuICAgICAgKTtcclxuICAgICAgdGhpcy4jZmV0Y2hlZEl0ZW1zW29wdGlvbnMuY2FjaGVLZXldLmRhdGEgPSByZXNbb3B0aW9ucy5tYXBwZWREYXRhS2V5XTtcclxuICAgICAgdGhpcy4jZmV0Y2hlZEl0ZW1zW29wdGlvbnMuY2FjaGVLZXldLnJlc3VsdHNDb3VudCA9XHJcbiAgICAgICAgcmVzW29wdGlvbnMucmVzdWx0c0NvdW50XTtcclxuICAgIH1cclxuICAgIGlmIChyZXNbb3B0aW9ucy50b3RhbFBhZ2VLZXldIC0gcmVzW29wdGlvbnMucGFnZUtleV0gPiAxKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLiNmZXRjaGVkSXRlbXNbb3B0aW9ucy5jYWNoZUtleV0ucmVxdWVzdCh7XHJcbiAgICAgICAgLi4uKHRoaXMuI2ZldGNoZWRJdGVtc1tvcHRpb25zLmNhY2hlS2V5XS5wYXJhbXMgfHwge30pLFxyXG4gICAgICAgIFtvcHRpb25zLnBhZ2VLZXldOiByZXNbb3B0aW9ucy5wYWdlS2V5XSArIDEsXHJcbiAgICAgIH0pO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcbiAgfVxyXG4gICNhZGRJdGVtc1RvKG9wdGlvbnM6IEJhc2VDYWNoZU9wdGlvbnMsIGRhdGE6IGFueVtdLCBpdGVtOiBhbnkpIHtcclxuICAgIGNvbnN0IGZpcnN0Q2FjaGVkTW9kaWZpZWQgPSB0aGlzLnV0aWxpdHlTZXJ2aWNlLmdldFZhbHVlKFxyXG4gICAgICBkYXRhWzBdLFxyXG4gICAgICBvcHRpb25zLmxhc3RNb2RpZmllZERhdGVQYXRoXHJcbiAgICApO1xyXG4gICAgY29uc3QgY3VycmVudE1vZGlmaWVkID0gdGhpcy51dGlsaXR5U2VydmljZS5nZXRWYWx1ZShcclxuICAgICAgaXRlbSxcclxuICAgICAgb3B0aW9ucy5sYXN0TW9kaWZpZWREYXRlUGF0aFxyXG4gICAgKTtcclxuICAgIGlmIChmaXJzdENhY2hlZE1vZGlmaWVkIDwgY3VycmVudE1vZGlmaWVkKSB7XHJcbiAgICAgIGRhdGEudW5zaGlmdCguLi5vcHRpb25zLnByZXBhcmVEYXRhQmVmb3JlQ2FjaGluZyhbaXRlbV0pKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGRhdGEucHVzaCguLi5vcHRpb25zLnByZXBhcmVEYXRhQmVmb3JlQ2FjaGluZyhbaXRlbV0pKTtcclxuICAgIH1cclxuICB9XHJcbiAgI3ByZXBhcmVPcHRpb25zKG9wdGlvbnM6IEJhc2VDYWNoZU9wdGlvbnMpIHtcclxuICAgIG9wdGlvbnMucHJlcGFyZURhdGFCZWZvcmVDYWNoaW5nID1cclxuICAgICAgb3B0aW9ucy5wcmVwYXJlRGF0YUJlZm9yZUNhY2hpbmcgfHwgREVGQVVMVF9DQUNIRV9PUFRJT05TLlBSRVBBUkVfREFUQTtcclxuICAgIG9wdGlvbnMucGFnZUtleSA9IG9wdGlvbnMucGFnZUtleSB8fCBERUZBVUxUX0NBQ0hFX09QVElPTlMuUEFHRV9LRVk7XHJcbiAgICBvcHRpb25zLnRvdGFsUGFnZUtleSA9XHJcbiAgICAgIG9wdGlvbnMudG90YWxQYWdlS2V5IHx8IERFRkFVTFRfQ0FDSEVfT1BUSU9OUy5UT1RBTF9QQUdFX0tFWTtcclxuICAgIG9wdGlvbnMucmVzdWx0c0NvdW50ID1cclxuICAgICAgb3B0aW9ucy5yZXN1bHRzQ291bnQgfHwgREVGQVVMVF9DQUNIRV9PUFRJT05TLlJFU1VMVFNfQ09VTlRfS0VZO1xyXG4gICAgb3B0aW9ucy5tYXBwZWREYXRhS2V5ID1cclxuICAgICAgb3B0aW9ucy5tYXBwZWREYXRhS2V5IHx8IERFRkFVTFRfQ0FDSEVfT1BUSU9OUy5NQVBQRURfREFUQV9LRVk7XHJcbiAgICBvcHRpb25zLnVuaXF1ZUNvbXBhcmVLZXkgPVxyXG4gICAgICBvcHRpb25zLnVuaXF1ZUNvbXBhcmVLZXkgfHwgREVGQVVMVF9DQUNIRV9PUFRJT05TLlVOSVFVRV9DT01QQVJFX0tFWTtcclxuICAgIG9wdGlvbnMubWluQ29tcGFyZURhdGVLZXkgPVxyXG4gICAgICBvcHRpb25zLm1pbkNvbXBhcmVEYXRlS2V5IHx8IERFRkFVTFRfQ0FDSEVfT1BUSU9OUy5NSU5fQ09NUEFSRV9EQVRFX0tFWTtcclxuICAgIG9wdGlvbnMubGFzdE1vZGlmaWVkRGF0ZUtleSA9XHJcbiAgICAgIG9wdGlvbnMubGFzdE1vZGlmaWVkRGF0ZUtleSB8fCBERUZBVUxUX0NBQ0hFX09QVElPTlMuTEFTVF9NT0RJRklFRF9LRVk7XHJcbiAgICBvcHRpb25zLmxhc3RNb2RpZmllZERhdGVQYXRoID1cclxuICAgICAgb3B0aW9ucy5sYXN0TW9kaWZpZWREYXRlUGF0aCB8fCBERUZBVUxUX0NBQ0hFX09QVElPTlMuTEFTVF9NT0RJRklFRF9QQVRIO1xyXG4gICAgb3B0aW9ucy5leGNsdWRlS2V5c1doZW5VcGRhdGUgPVxyXG4gICAgICBvcHRpb25zLmV4Y2x1ZGVLZXlzV2hlblVwZGF0ZSB8fFxyXG4gICAgICBERUZBVUxUX0NBQ0hFX09QVElPTlMuRVhDTFVERV9LRVlTX1dIRU5fVVBEQVRFO1xyXG4gICAgb3B0aW9ucy5jaGlsZHJlblBhdGggPVxyXG4gICAgICBvcHRpb25zLmNoaWxkcmVuUGF0aCB8fCBERUZBVUxUX0NBQ0hFX09QVElPTlMuQ0hJTERSRU5fUEFUSDtcclxuICAgIG9wdGlvbnMucGFyZW50S2V5ID0gb3B0aW9ucy5wYXJlbnRLZXkgfHwgREVGQVVMVF9DQUNIRV9PUFRJT05TLlBBUkVOVF9LRVk7XHJcbiAgfVxyXG4gICNwcmVwYXJlQ29uZmlnKCkge1xyXG4gICAgREVGQVVMVF9UVExfQ09ORklHLlRUTCA9XHJcbiAgICAgIEVudk1hbmFnZXIuZW52aXJvbm1lbnQ/LmNhY2hlPy50dGwgfHwgREVGQVVMVF9UVExfQ09ORklHLlRUTDtcclxuICAgIERFRkFVTFRfVFRMX0NPTkZJRy5VTklUID1cclxuICAgICAgRW52TWFuYWdlci5lbnZpcm9ubWVudD8uY2FjaGU/LnR0bFVuaXQgfHwgREVGQVVMVF9UVExfQ09ORklHLlVOSVQ7XHJcbiAgICBERUZBVUxUX1RUTF9DT05GSUcuQVVUT19DSEVDSyA9XHJcbiAgICAgIEVudk1hbmFnZXIuZW52aXJvbm1lbnQ/LmNhY2hlPy5hdXRvQ2hlY2sgPT0gXCJZRVNcIjtcclxuICAgIERFRkFVTFRfVFRMX0NPTkZJRy5SRVRSWSA9XHJcbiAgICAgIEVudk1hbmFnZXIuZW52aXJvbm1lbnQ/LmNhY2hlPy5yZXRyeSB8fCBERUZBVUxUX1RUTF9DT05GSUcuUkVUUlk7XHJcbiAgfVxyXG4gICNhZGQxU2Vjb25kVG9Nb2RpZmllZERhdGUoZGF0ZTogRGF0ZSk6IERhdGUge1xyXG4gICAgbGV0IG5ld0RhdGUgPSBuZXcgRGF0ZShkYXRlLmdldFRpbWUoKSk7XHJcbiAgICBuZXdEYXRlLnNldFNlY29uZHMobmV3RGF0ZS5nZXRTZWNvbmRzKCkgKyAxKTtcclxuICAgIHJldHVybiBuZXdEYXRlO1xyXG4gIH1cclxuICAjY2xlYXIodXNlck5hbWU6IHN0cmluZywga2V5T3JBbGw6IHN0cmluZyA9IFwiXCIpIHtcclxuICAgIE9iamVjdC5rZXlzKHdpbmRvdy5sb2NhbFN0b3JhZ2UpXHJcbiAgICAgIC5maWx0ZXIoKHEpID0+XHJcbiAgICAgICAgcS5zdGFydHNXaXRoKGAke3VzZXJOYW1lfV9fJHtERUZBVUxUX0NBQ0hFX09QVElPTlMuUFJFRklYfSR7a2V5T3JBbGx9YClcclxuICAgICAgKVxyXG4gICAgICAuZm9yRWFjaCgoa2V5KSA9PiB7XHJcbiAgICAgICAgd2luZG93LmxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKGtleSk7XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuICAjdmFsaWRhdGVUVExGb3JLZXkob3B0aW9uczogQmFzZUNhY2hlT3B0aW9ucykge1xyXG4gICAgY29uc3QgZmlyc3RGZXRjaGluZ0RhdGUgPSB0aGlzLiNnZXRJdGVtKG9wdGlvbnMpPy5maXJzdEZldGNoaW5nRGF0ZTtcclxuXHJcbiAgICBpZiAoIWZpcnN0RmV0Y2hpbmdEYXRlKSByZXR1cm47XHJcblxyXG4gICAgY29uc3QgbW9tZW50RGF0ZTEgPSBtb21lbnQobmV3IERhdGUoZmlyc3RGZXRjaGluZ0RhdGUpKTtcclxuICAgIGNvbnN0IG1vbWVudERhdGUyID0gbW9tZW50KG5ldyBEYXRlKCkpO1xyXG5cclxuICAgIGNvbnN0IGRpZmZlcmVuY2UgPSBtb21lbnREYXRlMi5kaWZmKG1vbWVudERhdGUxLCBERUZBVUxUX1RUTF9DT05GSUcuVU5JVCk7XHJcblxyXG4gICAgaWYgKGRpZmZlcmVuY2UgPj0gREVGQVVMVF9UVExfQ09ORklHLlRUTClcclxuICAgICAgdGhpcy4jY2xlYXIob3B0aW9ucy51c2VyTmFtZSwgb3B0aW9ucy5jYWNoZUtleSk7XHJcbiAgfVxyXG4gICNzZXRJdGVtSW5NYXAoa2V5OiBzdHJpbmcsIHZhbD86IENhY2hlSW5mbyk6IHZvaWQge1xyXG4gICAgY29uc3QgZW1wdHk6IENhY2hlSW5mbyA9IHtcclxuICAgICAgZGF0YTogW10sXHJcbiAgICAgIGZpcnN0RmV0Y2hpbmdEYXRlOiBcIlwiLFxyXG4gICAgICBsYXN0TW9kaWZpZWREYXRlOiBcIlwiLFxyXG4gICAgICByZXN1bHRzQ291bnQ6IDAsXHJcbiAgICAgIGZldGNoaW5nSXRlbXNGcm9tVGhlU2VydmVyOiBmYWxzZSxcclxuICAgICAgb25GaW5pc2hGZXRjaGluZzogbmV3IFN1YmplY3Q8Q2FjaGVJbmZvPigpLFxyXG4gICAgfTtcclxuICAgIGxldCB2YWx1ZTogQ2FjaGVJbmZvID0gdmFsID8gdmFsIDogZW1wdHk7XHJcbiAgICB0aGlzLiNmZXRjaGVkSXRlbXNba2V5XSA9IHZhbHVlO1xyXG4gIH1cclxuICAjZ2V0SXRlbShvcHRpb25zOiBCYXNlQ2FjaGVPcHRpb25zKSB7XHJcbiAgICBsZXQgZGF0YTogQ2FjaGVJbmZvO1xyXG4gICAgaWYgKG9wdGlvbnMuaW5NZW1vcnkpIHtcclxuICAgICAgZGF0YSA9IHRoaXMuI2ZldGNoZWRJdGVtc1tvcHRpb25zLmNhY2hlS2V5XTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGNvbnN0IHZhbHVlID0gdGhpcy51c2VyUHJlZmVyZW5jZXNTZXJ2aWNlLmdldChcclxuICAgICAgICBgJHtERUZBVUxUX0NBQ0hFX09QVElPTlMuUFJFRklYfSR7b3B0aW9ucy5jYWNoZUtleX1gXHJcbiAgICAgICk7XHJcbiAgICAgIGlmICghdmFsdWUpIHJldHVybjtcclxuICAgICAgZGF0YSA9IEpTT04ucGFyc2UodmFsdWUpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGRhdGE7XHJcbiAgfVxyXG4gICNzZXRJdGVtKHZhbHVlOiBSZWNvcmQ8c3RyaW5nLCBhbnk+LCBvcHRpb25zOiBCYXNlQ2FjaGVPcHRpb25zKSB7XHJcbiAgICBpZiAob3B0aW9ucy5pbk1lbW9yeSkgcmV0dXJuO1xyXG4gICAgZWxzZSB7XHJcbiAgICAgIHRoaXMudXNlclByZWZlcmVuY2VzU2VydmljZS5zZXQoXHJcbiAgICAgICAgYCR7REVGQVVMVF9DQUNIRV9PUFRJT05TLlBSRUZJWH0ke29wdGlvbnMuY2FjaGVLZXl9YCxcclxuICAgICAgICBKU09OLnN0cmluZ2lmeSh2YWx1ZSlcclxuICAgICAgKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19
@@ -0,0 +1,9 @@
1
+ import { CachingExpiryUnit } from '../models';
2
+ // TTL : Time To Live
3
+ export const DEFAULT_TTL_CONFIG = {
4
+ TTL: 3,
5
+ UNIT: CachingExpiryUnit.MONTHS,
6
+ AUTO_CHECK: true,
7
+ RETRY: 3
8
+ };
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC10dGwtY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvc2hhcmVkL3NlcnZpY2VzL2Jhc2UvY29uZmlnL2RlZmF1bHQtdHRsLWNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFOUMscUJBQXFCO0FBQ3JCLE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHO0lBQ2pDLEdBQUcsRUFBRSxDQUFDO0lBQ04sSUFBSSxFQUFFLGlCQUFpQixDQUFDLE1BQU07SUFDOUIsVUFBVSxFQUFFLElBQUk7SUFDaEIsS0FBSyxFQUFFLENBQUM7Q0FDUixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2FjaGluZ0V4cGlyeVVuaXQgfSBmcm9tICcuLi9tb2RlbHMnO1xyXG5cclxuLy8gVFRMIDogVGltZSBUbyBMaXZlXHJcbmV4cG9ydCBjb25zdCBERUZBVUxUX1RUTF9DT05GSUcgPSB7XHJcblx0VFRMOiAzLFxyXG5cdFVOSVQ6IENhY2hpbmdFeHBpcnlVbml0Lk1PTlRIUyxcclxuXHRBVVRPX0NIRUNLOiB0cnVlLFxyXG5cdFJFVFJZOiAzXHJcbn07XHJcbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export * from './default-ttl-config';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9zaGFyZWQvc2VydmljZXMvYmFzZS9jb25maWcvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxzQkFBc0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZGVmYXVsdC10dGwtY29uZmlnJztcclxuIl19
@@ -0,0 +1,28 @@
1
+ import { of } from 'rxjs';
2
+ export const DEFAULT_CACHE_OPTIONS = {
3
+ PREFIX: `cache__`,
4
+ PAGE_KEY: `currentPageIndex`,
5
+ TOTAL_PAGE_KEY: `pageCount`,
6
+ RESULTS_COUNT_KEY: `resultsCount`,
7
+ MAPPED_DATA_KEY: `entries`,
8
+ UNIQUE_COMPARE_KEY: `uid`,
9
+ MIN_COMPARE_DATE_KEY: `dublincore_modified_min`,
10
+ LAST_MODIFIED_KEY: `lastModifiedDate`,
11
+ LAST_MODIFIED_PATH: `properties.dc:modified`,
12
+ EXCLUDE_KEYS_WHEN_UPDATE: [`contextParameters`],
13
+ CHILDREN_PATH: `contextParameters.children.entries`,
14
+ PARENT_KEY: `parentRef`,
15
+ REQUEST: () => {
16
+ return of();
17
+ },
18
+ PREPARE_DATA: function (result) {
19
+ return result.map((item) => {
20
+ delete item._baseOptions;
21
+ delete item._dirtyProperties;
22
+ delete item._nuxeo;
23
+ delete item._repository;
24
+ return item;
25
+ });
26
+ }
27
+ };
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC1jYWNoZS1vcHRpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvc2hhcmVkL3NlcnZpY2VzL2Jhc2UvY29uc3RhbnRzL2RlZmF1bHQtY2FjaGUtb3B0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTFCLE1BQU0sQ0FBQyxNQUFNLHFCQUFxQixHQUFHO0lBQ3BDLE1BQU0sRUFBRSxTQUFTO0lBQ2pCLFFBQVEsRUFBRSxrQkFBa0I7SUFDNUIsY0FBYyxFQUFFLFdBQVc7SUFDM0IsaUJBQWlCLEVBQUUsY0FBYztJQUNqQyxlQUFlLEVBQUUsU0FBUztJQUMxQixrQkFBa0IsRUFBRSxLQUFLO0lBQ3pCLG9CQUFvQixFQUFFLHlCQUF5QjtJQUMvQyxpQkFBaUIsRUFBRSxrQkFBa0I7SUFDckMsa0JBQWtCLEVBQUUsd0JBQXdCO0lBQzVDLHdCQUF3QixFQUFFLENBQUMsbUJBQW1CLENBQUM7SUFDL0MsYUFBYSxFQUFFLG9DQUFvQztJQUNuRCxVQUFVLEVBQUUsV0FBVztJQUN2QixPQUFPLEVBQUUsR0FBRyxFQUFFO1FBQ2IsT0FBTyxFQUFFLEVBQUUsQ0FBQztJQUNiLENBQUM7SUFDRCxZQUFZLEVBQUUsVUFDYixNQUFrQztRQUVsQyxPQUFPLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtZQUMxQixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUM7WUFDekIsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7WUFDN0IsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO1lBQ25CLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQztZQUN4QixPQUFPLElBQUksQ0FBQztRQUNiLENBQUMsQ0FBQyxDQUFDO0lBQ0osQ0FBQztDQUNELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBvZiB9IGZyb20gJ3J4anMnO1xyXG5cclxuZXhwb3J0IGNvbnN0IERFRkFVTFRfQ0FDSEVfT1BUSU9OUyA9IHtcclxuXHRQUkVGSVg6IGBjYWNoZV9fYCxcclxuXHRQQUdFX0tFWTogYGN1cnJlbnRQYWdlSW5kZXhgLFxyXG5cdFRPVEFMX1BBR0VfS0VZOiBgcGFnZUNvdW50YCxcclxuXHRSRVNVTFRTX0NPVU5UX0tFWTogYHJlc3VsdHNDb3VudGAsXHJcblx0TUFQUEVEX0RBVEFfS0VZOiBgZW50cmllc2AsXHJcblx0VU5JUVVFX0NPTVBBUkVfS0VZOiBgdWlkYCxcclxuXHRNSU5fQ09NUEFSRV9EQVRFX0tFWTogYGR1YmxpbmNvcmVfbW9kaWZpZWRfbWluYCxcclxuXHRMQVNUX01PRElGSUVEX0tFWTogYGxhc3RNb2RpZmllZERhdGVgLFxyXG5cdExBU1RfTU9ESUZJRURfUEFUSDogYHByb3BlcnRpZXMuZGM6bW9kaWZpZWRgLFxyXG5cdEVYQ0xVREVfS0VZU19XSEVOX1VQREFURTogW2Bjb250ZXh0UGFyYW1ldGVyc2BdLFxyXG5cdENISUxEUkVOX1BBVEg6IGBjb250ZXh0UGFyYW1ldGVycy5jaGlsZHJlbi5lbnRyaWVzYCwgLy8gaWYgdHJlZVxyXG5cdFBBUkVOVF9LRVk6IGBwYXJlbnRSZWZgLCAvLyBpZiB0cmVlXHJcblx0UkVRVUVTVDogKCkgPT4ge1xyXG5cdFx0cmV0dXJuIG9mKCk7XHJcblx0fSxcclxuXHRQUkVQQVJFX0RBVEE6IGZ1bmN0aW9uIChcclxuXHRcdHJlc3VsdDogQXJyYXk8UmVjb3JkPHN0cmluZywgYW55Pj5cclxuXHQpOiBBcnJheTxSZWNvcmQ8c3RyaW5nLCBhbnk+PiB7XHJcblx0XHRyZXR1cm4gcmVzdWx0Lm1hcCgoaXRlbSkgPT4ge1xyXG5cdFx0XHRkZWxldGUgaXRlbS5fYmFzZU9wdGlvbnM7XHJcblx0XHRcdGRlbGV0ZSBpdGVtLl9kaXJ0eVByb3BlcnRpZXM7XHJcblx0XHRcdGRlbGV0ZSBpdGVtLl9udXhlbztcclxuXHRcdFx0ZGVsZXRlIGl0ZW0uX3JlcG9zaXRvcnk7XHJcblx0XHRcdHJldHVybiBpdGVtO1xyXG5cdFx0fSk7XHJcblx0fVxyXG59O1xyXG4iXX0=
@@ -0,0 +1,2 @@
1
+ export * from './default-cache-options';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9zaGFyZWQvc2VydmljZXMvYmFzZS9jb25zdGFudHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx5QkFBeUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZGVmYXVsdC1jYWNoZS1vcHRpb25zJztcclxuIl19
@@ -0,0 +1,115 @@
1
+ var _HttpBaseService_http;
2
+ import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
3
+ import { HttpClient } from "@angular/common/http";
4
+ import { pipe } from "rxjs";
5
+ import { catchError, map } from "rxjs/operators";
6
+ import { EnvManager } from "../../../core/env";
7
+ export class HttpBaseService {
8
+ constructor(injector) {
9
+ _HttpBaseService_http.set(this, void 0);
10
+ __classPrivateFieldSet(this, _HttpBaseService_http, injector.get(HttpClient), "f");
11
+ }
12
+ get environment() {
13
+ return EnvManager.environment;
14
+ }
15
+ get(endpointOrOptions, params = undefined, headers = undefined, responseType = undefined) {
16
+ var _a, _b, _c;
17
+ let url;
18
+ if (typeof endpointOrOptions === "string") {
19
+ url = endpointOrOptions;
20
+ }
21
+ else {
22
+ const options = endpointOrOptions;
23
+ url = options.endpoint;
24
+ params = (_a = options.params) !== null && _a !== void 0 ? _a : undefined;
25
+ headers = (_b = options.headers) !== null && _b !== void 0 ? _b : undefined;
26
+ responseType = (_c = options.responseType) !== null && _c !== void 0 ? _c : undefined;
27
+ }
28
+ return __classPrivateFieldGet(this, _HttpBaseService_http, "f")
29
+ .get(url, { headers, params, responseType })
30
+ .pipe(map((response) => response), this.catchErrors());
31
+ }
32
+ post(endpointOrOptions, payload = undefined, params = undefined, headers = undefined, responseType = undefined) {
33
+ var _a, _b, _c, _d;
34
+ let url;
35
+ if (typeof endpointOrOptions === "string") {
36
+ url = endpointOrOptions;
37
+ }
38
+ else {
39
+ const options = endpointOrOptions;
40
+ url = options.endpoint;
41
+ payload = (_a = options.payload) !== null && _a !== void 0 ? _a : undefined;
42
+ params = (_b = options.params) !== null && _b !== void 0 ? _b : undefined;
43
+ headers = (_c = options.headers) !== null && _c !== void 0 ? _c : undefined;
44
+ responseType = (_d = options.responseType) !== null && _d !== void 0 ? _d : undefined;
45
+ }
46
+ return __classPrivateFieldGet(this, _HttpBaseService_http, "f")
47
+ .post(url, payload, { headers, params, responseType })
48
+ .pipe(map((response) => response), this.catchErrors());
49
+ }
50
+ put(endpointOrOptions, payload = undefined, params = undefined, headers = undefined, responseType = undefined) {
51
+ var _a, _b, _c, _d;
52
+ let url;
53
+ if (typeof endpointOrOptions === "string") {
54
+ url = endpointOrOptions;
55
+ }
56
+ else {
57
+ const options = endpointOrOptions;
58
+ url = options.endpoint;
59
+ payload = (_a = options.payload) !== null && _a !== void 0 ? _a : undefined;
60
+ params = (_b = options.params) !== null && _b !== void 0 ? _b : undefined;
61
+ headers = (_c = options.headers) !== null && _c !== void 0 ? _c : undefined;
62
+ responseType = (_d = options.responseType) !== null && _d !== void 0 ? _d : undefined;
63
+ }
64
+ return __classPrivateFieldGet(this, _HttpBaseService_http, "f")
65
+ .put(url, payload, { headers, params, responseType })
66
+ .pipe(map((response) => response), this.catchErrors());
67
+ }
68
+ patch(endpointOrOptions, payload = undefined, params = undefined, headers = undefined, responseType = undefined) {
69
+ var _a, _b, _c, _d;
70
+ let url;
71
+ if (typeof endpointOrOptions === "string") {
72
+ url = endpointOrOptions;
73
+ }
74
+ else {
75
+ const options = endpointOrOptions;
76
+ url = options.endpoint;
77
+ payload = (_a = options.payload) !== null && _a !== void 0 ? _a : undefined;
78
+ params = (_b = options.params) !== null && _b !== void 0 ? _b : undefined;
79
+ headers = (_c = options.headers) !== null && _c !== void 0 ? _c : undefined;
80
+ responseType = (_d = options.responseType) !== null && _d !== void 0 ? _d : undefined;
81
+ }
82
+ return __classPrivateFieldGet(this, _HttpBaseService_http, "f")
83
+ .patch(url, payload, { headers, params, responseType })
84
+ .pipe(map((response) => response), this.catchErrors());
85
+ }
86
+ delete(endpointOrOptions, params = undefined, headers = undefined, responseType = undefined) {
87
+ var _a, _b, _c;
88
+ let url;
89
+ if (typeof endpointOrOptions === "string") {
90
+ url = endpointOrOptions;
91
+ }
92
+ else {
93
+ const options = endpointOrOptions;
94
+ url = options.endpoint;
95
+ params = (_a = options.params) !== null && _a !== void 0 ? _a : undefined;
96
+ headers = (_b = options.headers) !== null && _b !== void 0 ? _b : undefined;
97
+ responseType = (_c = options.responseType) !== null && _c !== void 0 ? _c : undefined;
98
+ }
99
+ return __classPrivateFieldGet(this, _HttpBaseService_http, "f")
100
+ .delete(url, { headers, params, responseType })
101
+ .pipe(map((response) => response), this.catchErrors());
102
+ }
103
+ httpAutomation(endpoint, payload = undefined, responseType = undefined) {
104
+ return __classPrivateFieldGet(this, _HttpBaseService_http, "f")
105
+ .post(endpoint, payload, { responseType })
106
+ .pipe(this.catchErrors());
107
+ }
108
+ catchErrors() {
109
+ return pipe(catchError((err) => {
110
+ throw err;
111
+ }));
112
+ }
113
+ }
114
+ _HttpBaseService_http = new WeakMap();
115
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC1iYXNlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9zaGFyZWQvc2VydmljZXMvYmFzZS9odHRwLWJhc2Uuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUdsRCxPQUFPLEVBQWdDLElBQUksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMxRCxPQUFPLEVBQUUsVUFBVSxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUUvQyxNQUFNLE9BQWdCLGVBQWU7SUFPbkMsWUFBWSxRQUFrQjtRQU45Qix3Q0FBa0I7UUFPaEIsdUJBQUEsSUFBSSx5QkFBUyxRQUFRLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxNQUFBLENBQUM7SUFDeEMsQ0FBQztJQU5ELElBQUksV0FBVztRQUNiLE9BQU8sVUFBVSxDQUFDLFdBQVcsQ0FBQztJQUNoQyxDQUFDO0lBS1MsR0FBRyxDQUNYLGlCQUF1QyxFQUN2QyxNQUFNLEdBQUcsU0FBUyxFQUNsQixPQUFPLEdBQUcsU0FBUyxFQUNuQixZQUFZLEdBQUcsU0FBUzs7UUFFeEIsSUFBSSxHQUFXLENBQUM7UUFFaEIsSUFBSSxPQUFPLGlCQUFpQixLQUFLLFFBQVEsRUFBRTtZQUN6QyxHQUFHLEdBQUcsaUJBQWlCLENBQUM7U0FDekI7YUFBTTtZQUNMLE1BQU0sT0FBTyxHQUFHLGlCQUFnQyxDQUFDO1lBQ2pELEdBQUcsR0FBRyxPQUFPLENBQUMsUUFBUSxDQUFDO1lBQ3ZCLE1BQU0sR0FBRyxNQUFBLE9BQU8sQ0FBQyxNQUFNLG1DQUFJLFNBQVMsQ0FBQztZQUNyQyxPQUFPLEdBQUcsTUFBQSxPQUFPLENB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QSxPQUFPLENBQUMsT0FBTyxtQ0FBSSxTQUFTLENBQUM7WUFDdkMsWUFBWSxHQUFHLE1BQUEsT0FBTyxDQUFDLFlBQVksbUNBQUksU0FBUyxDQUFDO1NBQ2xEO1FBRUQsT0FBTyx1QkFBQSxJQUFJLDZCQUFNO2FBQ2QsTUFBTSxDQUFZLEdBQUcsRUFBRSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLENBQUM7YUFDekQsSUFBSSxDQUNILEdBQUcsQ0FBQyxDQUFDLFFBQWEsRUFBRSxFQUFFLENBQUMsUUFBcUIsQ0FBQyxFQUM3QyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQ25CLENBQUM7SUFDTixDQUFDO0lBRVMsY0FBYyxDQUN0QixRQUFnQixFQUNoQixVQUFlLFNBQVMsRUFDeEIsWUFBWSxHQUFHLFNBQVM7UUFFeEIsT0FBTyx1QkFBQSxJQUFJLDZCQUFNO2FBQ2QsSUFBSSxDQUFZLFFBQVEsRUFBRSxPQUFPLEVBQUUsRUFBRSxZQUFZLEVBQUUsQ0FBQzthQUNwRCxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVTLFdBQVc7UUFDbkIsT0FBTyxJQUFJLENBQ1QsVUFBVSxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7WUFDakIsTUFBTSxHQUFHLENBQUM7UUFDWixDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gXCJAYW5ndWxhci9jb21tb24vaHR0cFwiO1xyXG5pbXBvcnQgeyBJbmplY3RvciB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IEh0dHBPcHRpb25zIH0gZnJvbSBcIi4vbW9kZWxzXCI7XHJcbmltcG9ydCB7IE9ic2VydmFibGUsIE9wZXJhdG9yRnVuY3Rpb24sIHBpcGUgfSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQgeyBjYXRjaEVycm9yLCBtYXAgfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcclxuaW1wb3J0IHsgRW52TWFuYWdlciB9IGZyb20gXCIuLi8uLi8uLi9jb3JlL2VudlwiO1xyXG5cclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEh0dHBCYXNlU2VydmljZSB7XHJcbiAgI2h0dHA6IEh0dHBDbGllbnQ7XHJcblxyXG4gIGdldCBlbnZpcm9ubWVudCgpIHtcclxuICAgIHJldHVybiBFbnZNYW5hZ2VyLmVudmlyb25tZW50O1xyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IoaW5qZWN0b3I6IEluamVjdG9yKSB7XHJcbiAgICB0aGlzLiNodHRwID0gaW5qZWN0b3IuZ2V0KEh0dHBDbGllbnQpO1xyXG4gIH1cclxuICBwcm90ZWN0ZWQgZ2V0PFRSZXNwb25zZT4oXHJcbiAgICBlbmRwb2ludE9yT3B0aW9uczogc3RyaW5nIHwgSHR0cE9wdGlvbnMsXHJcbiAgICBwYXJhbXMgPSB1bmRlZmluZWQsXHJcbiAgICBoZWFkZXJzID0gdW5kZWZpbmVkLFxyXG4gICAgcmVzcG9uc2VUeXBlID0gdW5kZWZpbmVkXHJcbiAgKTogT2JzZXJ2YWJsZTxUUmVzcG9uc2U+IHtcclxuICAgIGxldCB1cmw6IHN0cmluZztcclxuXHJcbiAgICBpZiAodHlwZW9mIGVuZHBvaW50T3JPcHRpb25zID09PSBcInN0cmluZ1wiKSB7XHJcbiAgICAgIHVybCA9IGVuZHBvaW50T3JPcHRpb25zO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgY29uc3Qgb3B0aW9ucyA9IGVuZHBvaW50T3JPcHRpb25zIGFzIEh0dHBPcHRpb25zO1xyXG4gICAgICB1cmwgPSBvcHRpb25zLmVuZHBvaW50O1xyXG4gICAgICBwYXJhbXMgPSBvcHRpb25zLnBhcmFtcyA/PyB1bmRlZmluZWQ7XHJcbiAgICAgIGhlYWRlcnMgPSBvcHRpb25zLmhlYWRlcnMgPz8gdW5kZWZpbmVkO1xyXG4gICAgICByZXNwb25zZVR5cGUgPSBvcHRpb25zLnJlc3BvbnNlVHlwZSA/PyB1bmRlZmluZWQ7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHRoaXMuI2h0dHBcclxuICAgICAgLmdldDxUUmVzcG9uc2U+KHVybCwgeyBoZWFkZXJzLCBwYXJhbXMsIHJlc3BvbnNlVHlwZSB9KVxyXG4gICAgICAucGlwZShcclxuICAgICAgICBtYXAoKHJlc3BvbnNlOiBhbnkpID0+IHJlc3BvbnNlIGFzIFRSZXNwb25zZSksXHJcbiAgICAgICAgdGhpcy5jYXRjaEVycm9ycygpXHJcbiAgICAgICk7XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgcG9zdDxUUmVzcG9uc2U+KFxyXG4gICAgZW5kcG9pbnRPck9wdGlvbnM6IHN0cmluZyB8IEh0dHBPcHRpb25zLFxyXG4gICAgcGF5bG9hZCA9IHVuZGVmaW5lZCxcclxuICAgIHBhcmFtcyA9IHVuZGVmaW5lZCxcclxuICAgIGhlYWRlcnMgPSB1bmRlZmluZWQsXHJcbiAgICByZXNwb25zZVR5cGUgPSB1bmRlZmluZWRcclxuICApOiBPYnNlcnZhYmxlPFRSZXNwb25zZT4ge1xyXG4gICAgbGV0IHVybDogc3RyaW5nO1xyXG5cclxuICAgIGlmICh0eXBlb2YgZW5kcG9pbnRPck9wdGlvbnMgPT09IFwic3RyaW5nXCIpIHtcclxuICAgICAgdXJsID0gZW5kcG9pbnRPck9wdGlvbnM7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBjb25zdCBvcHRpb25zID0gZW5kcG9pbnRPck9wdGlvbnMgYXMgSHR0cE9wdGlvbnM7XHJcbiAgICAgIHVybCA9IG9wdGlvbnMuZW5kcG9pbnQ7XHJcbiAgICAgIHBheWxvYWQgPSBvcHRpb25zLnBheWxvYWQgPz8gdW5kZWZpbmVkO1xyXG4gICAgICBwYXJhbXMgPSBvcHRpb25zLnBhcmFtcyA/PyB1bmRlZmluZWQ7XHJcbiAgICAgIGhlYWRlcnMgPSBvcHRpb25zLmhlYWRlcnMgPz8gdW5kZWZpbmVkO1xyXG4gICAgICByZXNwb25zZVR5cGUgPSBvcHRpb25zLnJlc3BvbnNlVHlwZSA/PyB1bmRlZmluZWQ7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHRoaXMuI2h0dHBcclxuICAgICAgLnBvc3Q8VFJlc3BvbnNlPih1cmwsIHBheWxvYWQsIHsgaGVhZGVycywgcGFyYW1zLCByZXNwb25zZVR5cGUgfSlcclxuICAgICAgLnBpcGUoXHJcbiAgICAgICAgbWFwKChyZXNwb25zZTogYW55KSA9PiByZXNwb25zZSBhcyBUUmVzcG9uc2UpLFxyXG4gICAgICAgIHRoaXMuY2F0Y2hFcnJvcnMoKVxyXG4gICAgICApO1xyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIHB1dDxUUmVzcG9uc2U+KFxyXG4gICAgZW5kcG9pbnRPck9wdGlvbnM6IHN0cmluZyB8IEh0dHBPcHRpb25zLFxyXG4gICAgcGF5bG9hZCA9IHVuZGVmaW5lZCxcclxuICAgIHBhcmFtcyA9IHVuZGVmaW5lZCxcclxuICAgIGhlYWRlcnMgPSB1bmRlZmluZWQsXHJcbiAgICByZXNwb25zZVR5cGUgPSB1bmRlZmluZWRcclxuICApOiBPYnNlcnZhYmxlPFRSZXNwb25zZT4ge1xyXG4gICAgbGV0IHVybDogc3RyaW5nO1xyXG5cclxuICAgIGlmICh0eXBlb2YgZW5kcG9pbnRPck9wdGlvbnMgPT09IFwic3RyaW5nXCIpIHtcclxuICAgICAgdXJsID0gZW5kcG9pbnRPck9wdGlvbnM7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBjb25zdCBvcHRpb25zID0gZW5kcG9pbnRPck9wdGlvbnMgYXMgSHR0cE9wdGlvbnM7XHJcbiAgICAgIHVybCA9IG9wdGlvbnMuZW5kcG9pbnQ7XHJcbiAgICAgIHBheWxvYWQgPSBvcHRpb25zLnBheWxvYWQgPz8gdW5kZWZpbmVkO1xyXG4gICAgICBwYXJhbXMgPSBvcHRpb25zLnBhcmFtcyA/PyB1bmRlZmluZWQ7XHJcbiAgICAgIGhlYWRlcnMgPSBvcHRpb25zLmhlYWRlcnMgPz8gdW5kZWZpbmVkO1xyXG4gICAgICByZXNwb25zZVR5cGUgPSBvcHRpb25zLnJlc3BvbnNlVHlwZSA/PyB1bmRlZmluZWQ7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHRoaXMuI2h0dHBcclxuICAgICAgLnB1dDxUUmVzcG9uc2U+KHVybCwgcGF5bG9hZCwgeyBoZWFkZXJzLCBwYXJhbXMsIHJlc3BvbnNlVHlwZSB9KVxyXG4gICAgICAucGlwZShcclxuICAgICAgICBtYXAoKHJlc3BvbnNlOiBhbnkpID0+IHJlc3BvbnNlIGFzIFRSZXNwb25zZSksXHJcbiAgICAgICAgdGhpcy5jYXRjaEVycm9ycygpXHJcbiAgICAgICk7XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgcGF0Y2g8VFJlc3BvbnNlPihcclxuICAgIGVuZHBvaW50T3JPcHRpb25zOiBzdHJpbmcgfCBIdHRwT3B0aW9ucyxcclxuICAgIHBheWxvYWQgPSB1bmRlZmluZWQsXHJcbiAgICBwYXJhbXMgPSB1bmRlZmluZWQsXHJcbiAgICBoZWFkZXJzID0gdW5kZWZpbmVkLFxyXG4gICAgcmVzcG9uc2VUeXBlID0gdW5kZWZpbmVkXHJcbiAgKTogT2JzZXJ2YWJsZTxUUmVzcG9uc2U+IHtcclxuICAgIGxldCB1cmw6IHN0cmluZztcclxuXHJcbiAgICBpZiAodHlwZW9mIGVuZHBvaW50T3JPcHRpb25zID09PSBcInN0cmluZ1wiKSB7XHJcbiAgICAgIHVybCA9IGVuZHBvaW50T3JPcHRpb25zO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgY29uc3Qgb3B0aW9ucyA9IGVuZHBvaW50T3JPcHRpb25zIGFzIEh0dHBPcHRpb25zO1xyXG4gICAgICB1cmwgPSBvcHRpb25zLmVuZHBvaW50O1xyXG4gICAgICBwYXlsb2FkID0gb3B0aW9ucy5wYXlsb2FkID8/IHVuZGVmaW5lZDtcclxuICAgICAgcGFyYW1zID0gb3B0aW9ucy5wYXJhbXMgPz8gdW5kZWZpbmVkO1xyXG4gICAgICBoZWFkZXJzID0gb3B0aW9ucy5oZWFkZXJzID8/IHVuZGVmaW5lZDtcclxuICAgICAgcmVzcG9uc2VUeXBlID0gb3B0aW9ucy5yZXNwb25zZVR5cGUgPz8gdW5kZWZpbmVkO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiB0aGlzLiNodHRwXHJcbiAgICAgIC5wYXRjaDxUUmVzcG9uc2U+KHVybCwgcGF5bG9hZCwgeyBoZWFkZXJzLCBwYXJhbXMsIHJlc3BvbnNlVHlwZSB9KVxyXG4gICAgICAucGlwZShcclxuICAgICAgICBtYXAoKHJlc3BvbnNlOiBhbnkpID0+IHJlc3BvbnNlIGFzIFRSZXNwb25zZSksXHJcbiAgICAgICAgdGhpcy5jYXRjaEVycm9ycygpXHJcbiAgICAgICk7XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgZGVsZXRlPFRSZXNwb25zZT4oXHJcbiAgICBlbmRwb2ludE9yT3B0aW9uczogc3RyaW5nIHwgSHR0cE9wdGlvbnMsXHJcbiAgICBwYXJhbXMgPSB1bmRlZmluZWQsXHJcbiAgICBoZWFkZXJzID0gdW5kZWZpbmVkLFxyXG4gICAgcmVzcG9uc2VUeXBlID0gdW5kZWZpbmVkXHJcbiAgKTogT2JzZXJ2YWJsZTxUUmVzcG9uc2U+IHtcclxuICAgIGxldCB1cmw6IHN0cmluZztcclxuXHJcbiAgICBpZiAodHlwZW9mIGVuZHBvaW50T3JPcHRpb25zID09PSBcInN0cmluZ1wiKSB7XHJcbiAgICAgIHVybCA9IGVuZHBvaW50T3JPcHRpb25zO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgY29uc3Qgb3B0aW9ucyA9IGVuZHBvaW50T3JPcHRpb25zIGFzIEh0dHBPcHRpb25zO1xyXG4gICAgICB1cmwgPSBvcHRpb25zLmVuZHBvaW50O1xyXG4gICAgICBwYXJhbXMgPSBvcHRpb25zLnBhcmFtcyA/PyB1bmRlZmluZWQ7XHJcbiAgICAgIGhlYWRlcnMgPSBvcHRpb25zLmhlYWRlcnMgPz8gdW5kZWZpbmVkO1xyXG4gICAgICByZXNwb25zZVR5cGUgPSBvcHRpb25zLnJlc3BvbnNlVHlwZSA/PyB1bmRlZmluZWQ7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHRoaXMuI2h0dHBcclxuICAgICAgLmRlbGV0ZTxUUmVzcG9uc2U+KHVybCwgeyBoZWFkZXJzLCBwYXJhbXMsIHJlc3BvbnNlVHlwZSB9KVxyXG4gICAgICAucGlwZShcclxuICAgICAgICBtYXAoKHJlc3BvbnNlOiBhbnkpID0+IHJlc3BvbnNlIGFzIFRSZXNwb25zZSksXHJcbiAgICAgICAgdGhpcy5jYXRjaEVycm9ycygpXHJcbiAgICAgICk7XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgaHR0cEF1dG9tYXRpb248VFJlc3BvbnNlID0gdW5rbm93bj4oXHJcbiAgICBlbmRwb2ludDogc3RyaW5nLFxyXG4gICAgcGF5bG9hZDogYW55ID0gdW5kZWZpbmVkLFxyXG4gICAgcmVzcG9uc2VUeXBlID0gdW5kZWZpbmVkXHJcbiAgKTogT2JzZXJ2YWJsZTxUUmVzcG9uc2U+IHtcclxuICAgIHJldHVybiB0aGlzLiNodHRwXHJcbiAgICAgIC5wb3N0PFRSZXNwb25zZT4oZW5kcG9pbnQsIHBheWxvYWQsIHsgcmVzcG9uc2VUeXBlIH0pXHJcbiAgICAgIC5waXBlKHRoaXMuY2F0Y2hFcnJvcnMoKSk7XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgY2F0Y2hFcnJvcnM8VFJlc3BvbnNlPigpOiBPcGVyYXRvckZ1bmN0aW9uPFRSZXNwb25zZSwgVFJlc3BvbnNlPiB7XHJcbiAgICByZXR1cm4gcGlwZShcclxuICAgICAgY2F0Y2hFcnJvcigoZXJyKSA9PiB7XHJcbiAgICAgICAgdGhyb3cgZXJyO1xyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICB9XHJcbn1cclxuIl19
@@ -0,0 +1,3 @@
1
+ export * from './base.service';
2
+ export * from './models/index';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9zaGFyZWQvc2VydmljZXMvYmFzZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsZ0JBQWdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2Jhc2Uuc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbW9kZWxzL2luZGV4JztcclxuIl19
@@ -0,0 +1,12 @@
1
+ export var CachingExpiryUnit;
2
+ (function (CachingExpiryUnit) {
3
+ CachingExpiryUnit["YEARS"] = "years";
4
+ CachingExpiryUnit["MONTHS"] = "months";
5
+ CachingExpiryUnit["WEEKS"] = "weeks";
6
+ CachingExpiryUnit["DAYS"] = "days";
7
+ CachingExpiryUnit["HOURS"] = "hours";
8
+ CachingExpiryUnit["MINUTES"] = "minutes";
9
+ CachingExpiryUnit["SECONDS"] = "seconds";
10
+ CachingExpiryUnit["MILLI_SECONDS"] = "milliseconds";
11
+ })(CachingExpiryUnit || (CachingExpiryUnit = {}));
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FjaGUtaW5mby1tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL251eGVvLWRldmVsb3BtZW50LWZyYW1ld29yay9zcmMvbGliL3NoYXJlZC9zZXJ2aWNlcy9iYXNlL21vZGVscy9jYWNoZS1pbmZvLW1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVNBLE1BQU0sQ0FBTixJQUFZLGlCQVNYO0FBVEQsV0FBWSxpQkFBaUI7SUFDNUIsb0NBQWUsQ0FBQTtJQUNmLHNDQUFpQixDQUFBO0lBQ2pCLG9DQUFlLENBQUE7SUFDZixrQ0FBYSxDQUFBO0lBQ2Isb0NBQWUsQ0FBQTtJQUNmLHdDQUFtQixDQUFBO0lBQ25CLHdDQUFtQixDQUFBO0lBQ25CLG1EQUE4QixDQUFBO0FBQy9CLENBQUMsRUFUVyxpQkFBaUIsS0FBakIsaUJBQWlCLFFBUzVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBIdHRwT3B0aW9ucywgUXVlcnlPcHRpb25zIH0gZnJvbSAnLi4vLi4nO1xyXG5cclxudHlwZSBSZXF1ZXN0RnVuY3Rpb25UeXBlID0gKC4uLnBhcmFtcykgPT4gT2JzZXJ2YWJsZTxhbnk+O1xyXG5cclxudHlwZSBQcmVwYXJlRGF0YUJlZm9yZUNhY2hpbmdUeXBlID0gKFxyXG5cdHJlc3VsdDogQXJyYXk8UmVjb3JkPHN0cmluZywgYW55Pj5cclxuKSA9PiBBcnJheTxSZWNvcmQ8c3RyaW5nLCBhbnk+PjtcclxuXHJcbmV4cG9ydCBlbnVtIENhY2hpbmdFeHBpcnlVbml0IHtcclxuXHRZRUFSUyA9ICd5ZWFycycsXHJcblx0TU9OVEhTID0gJ21vbnRocycsXHJcblx0V0VFS1MgPSAnd2Vla3MnLFxyXG5cdERBWVMgPSAnZGF5cycsXHJcblx0SE9VUlMgPSAnaG91cnMnLFxyXG5cdE1JTlVURVMgPSAnbWludXRlcycsXHJcblx0U0VDT05EUyA9ICdzZWNvbmRzJyxcclxuXHRNSUxMSV9TRUNPTkRTID0gJ21pbGxpc2Vjb25kcydcclxufVxyXG5cclxuaW50ZXJmYWNlIEJhc2VPcHRpb24ge1xyXG5cdGNhY2hlS2V5OiBzdHJpbmc7XHJcblx0cHJlcGFyZURhdGFCZWZvcmVDYWNoaW5nOiBQcmVwYXJlRGF0YUJlZm9yZUNhY2hpbmdUeXBlO1xyXG5cdGluTWVtb3J5PzogYm9vbGVhbjtcclxufVxyXG5cclxuZXhwb3J0IHR5cGUgQ2FjaGVkUXVlcnlPcHRpb25zID0ge30gJiBCYXNlT3B0aW9uICYgUXVlcnlPcHRpb25zO1xyXG5leHBvcnQgdHlwZSBDYWNoZWRIdHRwT3B0aW9ucyA9IHt9ICYgQmFzZU9wdGlvbiAmIEh0dHBPcHRpb25zO1xyXG5leHBvcnQgdHlwZSBDYWNoZWRGdWxsUXVlcnlPcHRpb25zID0ge30gJiBDYWNoZWRRdWVyeU9wdGlvbnMgJiBCYXNlQ2FjaGVPcHRpb25zO1xyXG5leHBvcnQgdHlwZSBDYWNoZWRGdWxsSHR0cE9wdGlvbnMgPSB7fSAmIENhY2hlZEh0dHBPcHRpb25zICYgQmFzZUNhY2hlT3B0aW9ucztcclxuXHJcbmV4cG9ydCB0eXBlIEJhc2VDYWNoZU9wdGlvbnMgPSB7XHJcblx0dXNlck5hbWU6IHN0cmluZztcclxuXHRyZXF1ZXN0OiBSZXF1ZXN0RnVuY3Rpb25UeXBlO1xyXG5cclxuXHQvLyB3ZSBoYWQgZGVmYXVsdCBmb3IgcHAgd2l0aCBkdWJsaW5jb3JlLiBpZiB5b3UgaGFkIGN1c3RvbSB5b3Ugc2hvdWxkIHJlQ29uZmlndXJlIHRoZXNlIHBhcmFtc1xyXG5cdHBhZ2VLZXk/OiBzdHJpbmc7XHJcblx0dG90YWxQYWdlS2V5Pzogc3RyaW5nO1xyXG5cdHJlc3VsdHNDb3VudD86IHN0cmluZztcclxuXHRtYXBwZWREYXRhS2V5Pzogc3RyaW5nO1xyXG5cdHVuaXF1ZUNvbXBhcmVLZXk/OiBzdHJpbmc7XHJcblx0bWluQ29tcGFyZURhdGVLZXk/OiBzdHJpbmc7XHJcblx0bGFzdE1vZGlmaWVkRGF0ZUtleT86IHN0cmluZztcclxuXHRsYXN0TW9kaWZpZWREYXRlUGF0aD86IHN0cmluZztcclxuXHRleGNsdWRlS2V5c1doZW5VcGRhdGU/OiBzdHJpbmdbXTtcclxuXHRjaGlsZHJlblBhdGg/OiBzdHJpbmc7XHJcblx0cGFyZW50S2V5Pzogc3RyaW5nO1xyXG59ICYgQmFzZU9wdGlvbjtcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQ2FjaGVJbmZvIHtcclxuXHQvLyBjYWNoZWQgZGF0YVxyXG5cdGRhdGE6IEFycmF5PFJlY29yZDxzdHJpbmcsIGFueT4+O1xyXG5cdGZpcnN0RmV0Y2hpbmdEYXRlOiBzdHJpbmc7XHJcblx0bGFzdE1vZGlmaWVkRGF0ZTogc3RyaW5nO1xyXG5cdHJlc3VsdHNDb3VudDogbnVtYmVyO1xyXG5cclxuXHQvL25vbiBjYWNoZWQgZGF0YVxyXG5cdGZldGNoaW5nSXRlbXNGcm9tVGhlU2VydmVyOiBib29sZWFuO1xyXG5cdG9uRmluaXNoRmV0Y2hpbmc6IFN1YmplY3Q8YW55PjsgLy8gd2UgY2FuIG5vdCB1c2UgbW9kZWwgZm9yIGR5bmFtaWMga2V5c1xyXG5cdHJlcXVlc3Q/OiBSZXF1ZXN0RnVuY3Rpb25UeXBlO1xyXG5cdHBhcmFtcz86IFJlY29yZDxzdHJpbmcsIGFueT47XHJcbn1cclxuIl19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC1vcHRpb25zLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvc2hhcmVkL3NlcnZpY2VzL2Jhc2UvbW9kZWxzL2h0dHAtb3B0aW9ucy5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBIdHRwT3B0aW9ucyB7XHJcblx0ZW5kcG9pbnQ6IHN0cmluZztcclxuXHRwYXlsb2FkPzogYW55O1xyXG5cdHBhcmFtcz86IGFueTtcclxuXHRoZWFkZXJzPzogYW55O1xyXG5cdHJlc3BvbnNlVHlwZT86IGFueTtcclxufVxyXG4iXX0=
@@ -0,0 +1,6 @@
1
+ export * from './operation-options.model';
2
+ export * from './request-options.model';
3
+ export * from './query-options.model';
4
+ export * from './http-options.model';
5
+ export * from './cache-info-model';
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9zaGFyZWQvc2VydmljZXMvYmFzZS9tb2RlbHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyxzQkFBc0IsQ0FBQztBQUNyQyxjQUFjLG9CQUFvQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9vcGVyYXRpb24tb3B0aW9ucy5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vcmVxdWVzdC1vcHRpb25zLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9xdWVyeS1vcHRpb25zLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9odHRwLW9wdGlvbnMubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2NhY2hlLWluZm8tbW9kZWwnO1xyXG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BlcmF0aW9uLW9wdGlvbnMubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9zaGFyZWQvc2VydmljZXMvYmFzZS9tb2RlbHMvb3BlcmF0aW9uLW9wdGlvbnMubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgT3BlcmF0aW9uT3B0aW9ucyB7XHJcblx0b3BlcmF0aW9uOiBzdHJpbmc7XHJcblx0aW5wdXQ/OiBzdHJpbmc7XHJcblx0cGFyYW1zPzogYW55O1xyXG5cdGNvbnRleHQ/OiBhbnk7XHJcblx0aGVhZGVycz86IGFueTtcclxuXHRpc0N1c3RvbUF1dG9tYXRpb24/OiBhbnk7XHJcbn1cclxuIl19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktb3B0aW9ucy5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL251eGVvLWRldmVsb3BtZW50LWZyYW1ld29yay9zcmMvbGliL3NoYXJlZC9zZXJ2aWNlcy9iYXNlL21vZGVscy9xdWVyeS1vcHRpb25zLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIFF1ZXJ5T3B0aW9ucyB7XHJcblx0cGFnZVByb3ZpZGVyOiBzdHJpbmc7XHJcblx0cGFyYW1zPzogYW55O1xyXG5cdGhlYWRlcnM6IGFueTtcclxufVxyXG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxdWVzdC1vcHRpb25zLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvc2hhcmVkL3NlcnZpY2VzL2Jhc2UvbW9kZWxzL3JlcXVlc3Qtb3B0aW9ucy5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBSZXF1ZXN0T3B0aW9ucyB7XHJcblx0ZW5kcG9pbnQ6IHN0cmluZztcclxuXHRxdWVyeVBhcmFtcz86IGFueTtcclxuXHRoZWFkZXJzPzogYW55O1xyXG5cdHBheWxvYWQ/OiBhbnk7XHJcblx0dHlwZT86ICdnZXQnIHwgJ3Bvc3QnIHwgJ3B1dCc7XHJcbn1cclxuIl19
@@ -0,0 +1,2 @@
1
+ export * from './base/index';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9zaGFyZWQvc2VydmljZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2Jhc2UvaW5kZXgnO1xyXG4iXX0=