@data-client/core 0.14.24 → 0.15.0-beta-20251022142546-a457d1596871fb28f1a91f2531cc259db4d55a9c

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 (60) hide show
  1. package/CHANGELOG.md +1174 -0
  2. package/README.md +2 -2
  3. package/dist/index.js +100 -97
  4. package/dist/index.umd.min.js +1 -1
  5. package/legacy/controller/Controller.js +31 -46
  6. package/legacy/index.js +1 -1
  7. package/legacy/manager/NetworkManager.js +44 -33
  8. package/legacy/state/GCPolicy.js +20 -12
  9. package/legacy/state/reducer/createReducer.js +4 -4
  10. package/legacy/state/reducer/setReducer.js +3 -3
  11. package/legacy/state/reducer/setResponseReducer.js +4 -4
  12. package/legacy/types.js +1 -1
  13. package/lib/controller/Controller.d.ts +3 -3
  14. package/lib/controller/Controller.d.ts.map +1 -1
  15. package/lib/controller/Controller.js +31 -46
  16. package/lib/index.d.ts +2 -1
  17. package/lib/index.d.ts.map +1 -1
  18. package/lib/index.js +1 -1
  19. package/lib/manager/NetworkManager.d.ts +7 -12
  20. package/lib/manager/NetworkManager.d.ts.map +1 -1
  21. package/lib/manager/NetworkManager.js +44 -34
  22. package/lib/state/GCPolicy.d.ts.map +1 -1
  23. package/lib/state/GCPolicy.js +20 -12
  24. package/lib/state/reducer/createReducer.js +4 -4
  25. package/lib/state/reducer/expireReducer.d.ts +1 -1
  26. package/lib/state/reducer/invalidateReducer.d.ts +1 -1
  27. package/lib/state/reducer/setReducer.d.ts +1 -1
  28. package/lib/state/reducer/setReducer.js +3 -3
  29. package/lib/state/reducer/setResponseReducer.d.ts +1 -1
  30. package/lib/state/reducer/setResponseReducer.js +4 -4
  31. package/lib/types.d.ts +1 -1
  32. package/lib/types.d.ts.map +1 -1
  33. package/lib/types.js +1 -1
  34. package/package.json +6 -6
  35. package/src/controller/Controller.ts +38 -80
  36. package/src/controller/__tests__/Controller.ts +2 -2
  37. package/src/controller/__tests__/__snapshots__/get.ts.snap +34 -8
  38. package/src/controller/__tests__/__snapshots__/getResponse.ts.snap +1 -1
  39. package/src/controller/__tests__/get.ts +163 -22
  40. package/src/controller/__tests__/getResponse.ts +1 -1
  41. package/src/index.ts +4 -0
  42. package/src/manager/NetworkManager.ts +46 -32
  43. package/src/manager/__tests__/__snapshots__/pollingSubscription.ts.snap +1 -1
  44. package/src/manager/__tests__/pollingSubscription.ts +9 -5
  45. package/src/state/GCPolicy.ts +12 -10
  46. package/src/state/__tests__/GCPolicy.test.ts +6 -6
  47. package/src/state/__tests__/__snapshots__/reducer.ts.snap +3 -3
  48. package/src/state/__tests__/reducer.ts +17 -9
  49. package/src/state/reducer/createReducer.ts +2 -2
  50. package/src/state/reducer/setReducer.ts +2 -2
  51. package/src/state/reducer/setResponseReducer.ts +3 -3
  52. package/src/types.ts +1 -1
  53. package/ts3.4/controller/Controller.d.ts +3 -3
  54. package/ts3.4/index.d.ts +2 -1
  55. package/ts3.4/manager/NetworkManager.d.ts +7 -12
  56. package/ts3.4/state/reducer/expireReducer.d.ts +1 -1
  57. package/ts3.4/state/reducer/invalidateReducer.d.ts +1 -1
  58. package/ts3.4/state/reducer/setReducer.d.ts +1 -1
  59. package/ts3.4/state/reducer/setResponseReducer.d.ts +1 -1
  60. package/ts3.4/types.d.ts +1 -1
@@ -1,4 +1,3 @@
1
- import _extends from "@babel/runtime/helpers/esm/extends";
2
1
  import { SET_RESPONSE, FETCH, RESET } from '../actionTypes.js';
3
2
  import { createSetResponse } from '../controller/actions/index.js';
4
3
  import Controller from '../controller/Controller.js';
@@ -8,7 +7,6 @@ export class ResetError extends Error {
8
7
  this.name = 'ResetError';
9
8
  }
10
9
  }
11
-
12
10
  /** Handles all async network dispatches
13
11
  *
14
12
  * Dedupes concurrent requests by keeping track of all fetches in flight
@@ -23,10 +21,7 @@ export default class NetworkManager {
23
21
  dataExpiryLength = 60000,
24
22
  errorExpiryLength = 1000
25
23
  } = {}) {
26
- this.fetched = Object.create(null);
27
- this.resolvers = {};
28
- this.rejectors = {};
29
- this.fetchedAt = {};
24
+ this.fetching = new Map();
30
25
  this.controller = new Controller();
31
26
  this.middleware = controller => {
32
27
  this.controller = controller;
@@ -44,7 +39,7 @@ export default class NetworkManager {
44
39
  case SET_RESPONSE:
45
40
  // only set after new state is computed
46
41
  return next(action).then(() => {
47
- if (action.key in this.fetched) {
42
+ if (this.fetching.has(action.key)) {
48
43
  var _controller$getState$;
49
44
  // Note: meta *must* be set by reducer so this should be safe
50
45
  const error = (_controller$getState$ = controller.getState().meta[action.key]) == null ? void 0 : _controller$getState$.error;
@@ -63,13 +58,17 @@ export default class NetworkManager {
63
58
  });
64
59
  case RESET:
65
60
  {
66
- const rejectors = _extends({}, this.rejectors);
61
+ // take snapshot of rejectors at this point in time
62
+ // we must use Array.from since iteration does not freeze state at this point in time
63
+ const fetches = Array.from(this.fetching.values());
67
64
  this.clearAll();
68
65
  return next(action).then(() => {
69
66
  // there could be external listeners to the promise
70
67
  // this must happen after commit so our own rejector knows not to dispatch an error based on this
71
- for (const k in rejectors) {
72
- rejectors[k](new ResetError());
68
+ for (const {
69
+ reject
70
+ } of fetches) {
71
+ reject(new ResetError());
73
72
  }
74
73
  });
75
74
  }
@@ -96,27 +95,27 @@ export default class NetworkManager {
96
95
  /** Used by DevtoolsManager to determine whether to log an action */
97
96
  skipLogging(action) {
98
97
  /* istanbul ignore next */
99
- return action.type === FETCH && action.key in this.fetched;
98
+ return action.type === FETCH && this.fetching.has(action.key);
100
99
  }
101
100
  allSettled() {
102
- const fetches = Object.values(this.fetched);
103
- if (fetches.length) return Promise.allSettled(fetches);
101
+ if (this.fetching.size) return Promise.allSettled(this.fetching.values().map(({
102
+ promise
103
+ }) => promise));
104
104
  }
105
105
 
106
106
  /** Clear all promise state */
107
107
  clearAll() {
108
- for (const k in this.rejectors) {
108
+ for (const k of this.fetching.keys()) {
109
109
  this.clear(k);
110
110
  }
111
111
  }
112
112
 
113
113
  /** Clear promise state for a given key */
114
114
  clear(key) {
115
- this.fetched[key].catch(() => {});
116
- delete this.resolvers[key];
117
- delete this.rejectors[key];
118
- delete this.fetched[key];
119
- delete this.fetchedAt[key];
115
+ if (this.fetching.has(key)) {
116
+ this.fetching.get(key).promise.catch(() => {});
117
+ this.fetching.delete(key);
118
+ }
120
119
  }
121
120
  getLastReset() {
122
121
  if (this.cleanupDate) return this.cleanupDate;
@@ -199,14 +198,17 @@ export default class NetworkManager {
199
198
  */
200
199
  handleSet(action) {
201
200
  // this can still turn out to be untrue since this is async
202
- if (action.key in this.fetched) {
203
- let promiseHandler;
201
+ if (this.fetching.has(action.key)) {
202
+ const {
203
+ reject,
204
+ resolve
205
+ } = this.fetching.get(action.key);
204
206
  if (action.error) {
205
- promiseHandler = this.rejectors[action.key];
207
+ reject(action.response);
206
208
  } else {
207
- promiseHandler = this.resolvers[action.key];
209
+ resolve(action.response);
208
210
  }
209
- promiseHandler(action.response);
211
+
210
212
  // since we're resolved we no longer need to keep track of this promise
211
213
  this.clear(action.key);
212
214
  }
@@ -224,16 +226,15 @@ export default class NetworkManager {
224
226
  */
225
227
  throttle(key, fetch, fetchedAt) {
226
228
  const lastReset = this.getLastReset();
229
+ let fetchMeta = this.fetching.get(key);
230
+
227
231
  // we're already fetching so reuse the promise
228
232
  // fetches after reset do not count
229
- if (key in this.fetched && this.fetchedAt[key] > lastReset) {
230
- return this.fetched[key];
233
+ if (fetchMeta && fetchMeta.fetchedAt > lastReset) {
234
+ return fetchMeta.promise;
231
235
  }
232
- this.fetched[key] = new Promise((resolve, reject) => {
233
- this.resolvers[key] = resolve;
234
- this.rejectors[key] = reject;
235
- });
236
- this.fetchedAt[key] = fetchedAt;
236
+ fetchMeta = newFetchMeta(fetchedAt);
237
+ this.fetching.set(key, fetchMeta);
237
238
  this.idleCallback(() => {
238
239
  // since our real promise is resolved via the wrapReducer(),
239
240
  // we should just stop all errors here.
@@ -242,7 +243,7 @@ export default class NetworkManager {
242
243
  }, {
243
244
  timeout: 500
244
245
  });
245
- return this.fetched[key];
246
+ return fetchMeta.promise;
246
247
  }
247
248
 
248
249
  /** Calls the callback when client is not 'busy' with high priority interaction tasks
@@ -253,4 +254,14 @@ export default class NetworkManager {
253
254
  callback();
254
255
  }
255
256
  }
256
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJTRVRfUkVTUE9OU0UiLCJGRVRDSCIsIlJFU0VUIiwiY3JlYXRlU2V0UmVzcG9uc2UiLCJDb250cm9sbGVyIiwiUmVzZXRFcnJvciIsIkVycm9yIiwiY29uc3RydWN0b3IiLCJuYW1lIiwiTmV0d29ya01hbmFnZXIiLCJkYXRhRXhwaXJ5TGVuZ3RoIiwiZXJyb3JFeHBpcnlMZW5ndGgiLCJmZXRjaGVkIiwiT2JqZWN0IiwiY3JlYXRlIiwicmVzb2x2ZXJzIiwicmVqZWN0b3JzIiwiZmV0Y2hlZEF0IiwiY29udHJvbGxlciIsIm1pZGRsZXdhcmUiLCJuZXh0IiwiYWN0aW9uIiwidHlwZSIsImhhbmRsZUZldGNoIiwiZW5kcG9pbnQiLCJnZXRPcHRpbWlzdGljUmVzcG9uc2UiLCJ1bmRlZmluZWQiLCJzaWRlRWZmZWN0IiwiUHJvbWlzZSIsInJlc29sdmUiLCJ0aGVuIiwia2V5IiwiX2NvbnRyb2xsZXIkZ2V0U3RhdGUkIiwiZXJyb3IiLCJnZXRTdGF0ZSIsIm1ldGEiLCJoYW5kbGVTZXQiLCJhcmdzIiwicmVzcG9uc2UiLCJfZXh0ZW5kcyIsImNsZWFyQWxsIiwiayIsImluaXQiLCJjbGVhbnVwRGF0ZSIsImNsZWFudXAiLCJEYXRlIiwibm93Iiwic2tpcExvZ2dpbmciLCJhbGxTZXR0bGVkIiwiZmV0Y2hlcyIsInZhbHVlcyIsImxlbmd0aCIsImNsZWFyIiwiY2F0Y2giLCJnZXRMYXN0UmVzZXQiLCJsYXN0UmVzZXQiLCJyZWplY3QiLCJ0aHJvdHRsZSIsImRlZmVyZWRGZXRjaCIsInByb21pc2UiLCJyZXNvbHZlUHJvbWlzZSIsImRhdGEiLCJwcm9jZXNzIiwiZW52IiwiTk9ERV9FTlYiLCJpc05hTiIsImNvbnNvbGUiLCJwcm9taXNlSGFuZGxlciIsImZldGNoIiwiaWRsZUNhbGxiYWNrIiwidGltZW91dCIsImNhbGxiYWNrIiwib3B0aW9ucyJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9tYW5hZ2VyL05ldHdvcmtNYW5hZ2VyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNFVF9SRVNQT05TRSwgRkVUQ0gsIFJFU0VUIH0gZnJvbSAnLi4vYWN0aW9uVHlwZXMuanMnO1xuaW1wb3J0IHsgY3JlYXRlU2V0UmVzcG9uc2UgfSBmcm9tICcuLi9jb250cm9sbGVyL2FjdGlvbnMvaW5kZXguanMnO1xuaW1wb3J0IENvbnRyb2xsZXIgZnJvbSAnLi4vY29udHJvbGxlci9Db250cm9sbGVyLmpzJztcbmltcG9ydCB0eXBlIHtcbiAgRmV0Y2hBY3Rpb24sXG4gIE1hbmFnZXIsXG4gIEFjdGlvblR5cGVzLFxuICBNaWRkbGV3YXJlQVBJLFxuICBNaWRkbGV3YXJlLFxuICBTZXRSZXNwb25zZUFjdGlvbixcbn0gZnJvbSAnLi4vdHlwZXMuanMnO1xuXG5leHBvcnQgY2xhc3MgUmVzZXRFcnJvciBleHRlbmRzIEVycm9yIHtcbiAgbmFtZSA9ICdSZXNldEVycm9yJztcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcignQWJvcnRlZCBkdWUgdG8gUkVTRVQnKTtcbiAgfVxufVxuXG4vKiogSGFuZGxlcyBhbGwgYXN5bmMgbmV0d29yayBkaXNwYXRjaGVzXG4gKlxuICogRGVkdXBlcyBjb25jdXJyZW50IHJlcXVlc3RzIGJ5IGtlZXBpbmcgdHJhY2sgb2YgYWxsIGZldGNoZXMgaW4gZmxpZ2h0XG4gKiBhbmQgcmV0dXJuaW5nIGV4aXN0aW5nIHByb21pc2VzIGZvciByZXF1ZXN0cyBhbHJlYWR5IGluIGZsaWdodC5cbiAqXG4gKiBJbnRlcmZhY2VzIHdpdGggc3RvcmUgdmlhIGEgcmVkdXgtY29tcGF0aWJsZSBtaWRkbGV3YXJlLlxuICpcbiAqIEBzZWUgaHR0cHM6Ly9kYXRhY2xpZW50LmlvL2RvY3MvYXBpL05ldHdvcmtNYW5hZ2VyXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIE5ldHdvcmtNYW5hZ2VyIGltcGxlbWVudHMgTWFuYWdlciB7XG4gIHByb3RlY3RlZCBmZXRjaGVkOiB7IFtrOiBzdHJpbmddOiBQcm9taXNlPGFueT4gfSA9IE9iamVjdC5jcmVhdGUobnVsbCk7XG4gIHByb3RlY3RlZCByZXNvbHZlcnM6IHsgW2s6IHN0cmluZ106ICh2YWx1ZT86IGFueSkgPT4gdm9pZCB9ID0ge307XG4gIHByb3RlY3RlZCByZWplY3RvcnM6IHsgW2s6IHN0cmluZ106ICh2YWx1ZT86IGFueSkgPT4gdm9pZCB9ID0ge307XG4gIHByb3RlY3RlZCBmZXRjaGVkQXQ6IHsgW2s6IHN0cmluZ106IG51bWJlciB9ID0ge307XG4gIGRlY2xhcmUgcmVhZG9ubHkgZGF0YUV4cGlyeUxlbmd0aDogbnVtYmVyO1xuICBkZWNsYXJlIHJlYWRvbmx5IGVycm9yRXhwaXJ5TGVuZ3RoOiBudW1iZXI7XG4gIHByb3RlY3RlZCBjb250cm9sbGVyOiBDb250cm9sbGVyID0gbmV3IENvbnRyb2xsZXIoKTtcbiAgZGVjbGFyZSBjbGVhbnVwRGF0ZT86IG51bWJlcjtcblxuICBjb25zdHJ1Y3Rvcih7IGRhdGFFeHBpcnlMZW5ndGggPSA2MDAwMCwgZXJyb3JFeHBpcnlMZW5ndGggPSAxMDAwIH0gPSB7fSkge1xuICAgIHRoaXMuZGF0YUV4cGlyeUxlbmd0aCA9IGRhdGFFeHBpcnlMZW5ndGg7XG4gICAgdGhpcy5lcnJvckV4cGlyeUxlbmd0aCA9IGVycm9yRXhwaXJ5TGVuZ3RoO1xuICB9XG5cbiAgbWlkZGxld2FyZTogTWlkZGxld2FyZSA9IGNvbnRyb2xsZXIgPT4ge1xuICAgIHRoaXMuY29udHJvbGxlciA9IGNvbnRyb2xsZXI7XG4gICAgcmV0dXJuIG5leHQgPT4gYWN0aW9uID0+IHtcbiAgICAgIHN3aXRjaCAoYWN0aW9uLnR5cGUpIHtcbiAgICAgICAgY2FzZSBGRVRDSDpcbiAgICAgICAgICB0aGlzLmhhbmRsZUZldGNoKGFjdGlvbik7XG4gICAgICAgICAgLy8gVGhpcyBpcyB0aGUgb25seSBjYXNlIHRoYXQgY2F1c2VzIGFueSBzdGF0ZSBjaGFuZ2VcbiAgICAgICAgICAvLyBJdCdzIGltcG9ydGFudCB0byBpbnRlcmNlcHQgb3RoZXIgZmV0Y2hlcyBhcyB3ZSBkb24ndCB3YW50IHRvIHRyaWdnZXIgcmVkdWNlcnMgZHVyaW5nXG4gICAgICAgICAgLy8gcmVuZGVyIC0gc28gd2UgbmVlZCB0byBzdG9wICdyZWFkb25seScgZmV0Y2hlcyB3aGljaCBjYW4gYmUgdHJpZ2dlcmVkIGluIHJlbmRlclxuICAgICAgICAgIGlmIChcbiAgICAgICAgICAgIGFjdGlvbi5lbmRwb2ludC5nZXRPcHRpbWlzdGljUmVzcG9uc2UgIT09IHVuZGVmaW5lZCAmJlxuICAgICAgICAgICAgYWN0aW9uLmVuZHBvaW50LnNpZGVFZmZlY3RcbiAgICAgICAgICApIHtcbiAgICAgICAgICAgIHJldHVybiBuZXh0KGFjdGlvbik7XG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcbiAgICAgICAgY2FzZSBTRVRfUkVTUE9OU0U6XG4gICAgICAgICAgLy8gb25seSBzZXQgYWZ0ZXIgbmV3IHN0YXRlIGlzIGNvbXB1dGVkXG4gICAgICAgICAgcmV0dXJuIG5leHQoYWN0aW9uKS50aGVuKCgpID0+IHtcbiAgICAgICAgICAgIGlmIChhY3Rpb24ua2V5IGluIHRoaXMuZmV0Y2hlZCkge1xuICAgICAgICAgICAgICAvLyBOb3RlOiBtZXRhICptdXN0KiBiZSBzZXQgYnkgcmVkdWNlciBzbyB0aGlzIHNob3VsZCBiZSBzYWZlXG4gICAgICAgICAgICAgIGNvbnN0IGVycm9yID0gY29udHJvbGxlci5nZXRTdGF0ZSgpLm1ldGFbYWN0aW9uLmtleV0/LmVycm9yO1xuICAgICAgICAgICAgICAvLyBwcm9jZXNzaW5nIGVycm9ycyByZXN1bHQgaW4gc3RhdGUgbWV0YSBoYXZpbmcgZXJyb3IsIHNvIHdlIHNob3VsZCByZWplY3QgdGhlIHByb21pc2VcbiAgICAgICAgICAgICAgaWYgKGVycm9yKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5oYW5kbGVTZXQoXG4gICAgICAgICAgICAgICAgICBjcmVhdGVTZXRSZXNwb25zZShhY3Rpb24uZW5kcG9pbnQsIHtcbiAgICAgICAgICAgICAgICAgICAgYXJnczogYWN0aW9uLmFyZ3MsXG4gICAgICAgICAgICAgICAgICAgIHJlc3BvbnNlOiBlcnJvcixcbiAgICAgICAgICAgICAgICAgICAgZmV0Y2hlZEF0OiBhY3Rpb24ubWV0YS5mZXRjaGVkQXQsXG4gICAgICAgICAgICAgICAgICAgIGVycm9yOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLmhhbmRsZVNldChhY3Rpb24pO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSk7XG4gICAgICAgIGNhc2UgUkVTRVQ6IHtcbiAgICAgICAgICBjb25zdCByZWplY3RvcnMgPSB7IC4uLnRoaXMucmVqZWN0b3JzIH07XG5cbiAgICAgICAgICB0aGlzLmNsZWFyQWxsKCk7XG4gICAgICAgICAgcmV0dXJuIG5leHQoYWN0aW9uKS50aGVuKCgpID0+IHtcbiAgICAgICAgICAgIC8vIHRoZXJlIGNvdWxkIGJlIGV4dGVybmFsIGxpc3RlbmVycyB0byB0aGUgcHJvbWlzZVxuICAgICAgICAgICAgLy8gdGhpcyBtdXN0IGhhcHBlbiBhZnRlciBjb21taXQgc28gb3VyIG93biByZWplY3RvciBrbm93cyBub3QgdG8gZGlzcGF0Y2ggYW4gZXJyb3IgYmFzZWQgb24gdGhpc1xuICAgICAgICAgICAgZm9yIChjb25zdCBrIGluIHJlamVjdG9ycykge1xuICAgICAgICAgICAgICByZWplY3RvcnNba10obmV3IFJlc2V0RXJyb3IoKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICByZXR1cm4gbmV4dChhY3Rpb24pO1xuICAgICAgfVxuICAgIH07XG4gIH07XG5cbiAgLyoqIE9uIG1vdW50ICovXG4gIGluaXQoKSB7XG4gICAgZGVsZXRlIHRoaXMuY2xlYW51cERhdGU7XG4gIH1cblxuICAvKiogRW5zdXJlcyBhbGwgcHJvbWlzZXMgYXJlIGNvbXBsZXRlZCBieSByZWplY3RpbmcgcmVtYWluaW5nLiAqL1xuICBjbGVhbnVwKCkge1xuICAgIC8vIGVuc3VyZSBubyBkaXNwYXRjaGVzIGFmdGVyIHVubW91bnRcbiAgICAvLyB0aGlzIG11c3QgYmUgcmV2ZXJzaWJsZSAoZG9uZSBpbiBpbml0KSBzbyB1c2VFZmZlY3QoKSByZW1haW5zIHN5bW1ldHJpY1xuICAgIHRoaXMuY2xlYW51cERhdGUgPSBEYXRlLm5vdygpO1xuICB9XG5cbiAgLyoqIFVzZWQgYnkgRGV2dG9vbHNNYW5hZ2VyIHRvIGRldGVybWluZSB3aGV0aGVyIHRvIGxvZyBhbiBhY3Rpb24gKi9cbiAgc2tpcExvZ2dpbmcoYWN0aW9uOiBBY3Rpb25UeXBlcykge1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgcmV0dXJuIGFjdGlvbi50eXBlID09PSBGRVRDSCAmJiBhY3Rpb24ua2V5IGluIHRoaXMuZmV0Y2hlZDtcbiAgfVxuXG4gIGFsbFNldHRsZWQoKSB7XG4gICAgY29uc3QgZmV0Y2hlcyA9IE9iamVjdC52YWx1ZXModGhpcy5mZXRjaGVkKTtcbiAgICBpZiAoZmV0Y2hlcy5sZW5ndGgpIHJldHVybiBQcm9taXNlLmFsbFNldHRsZWQoZmV0Y2hlcyk7XG4gIH1cblxuICAvKiogQ2xlYXIgYWxsIHByb21pc2Ugc3RhdGUgKi9cbiAgcHJvdGVjdGVkIGNsZWFyQWxsKCkge1xuICAgIGZvciAoY29uc3QgayBpbiB0aGlzLnJlamVjdG9ycykge1xuICAgICAgdGhpcy5jbGVhcihrKTtcbiAgICB9XG4gIH1cblxuICAvKiogQ2xlYXIgcHJvbWlzZSBzdGF0ZSBmb3IgYSBnaXZlbiBrZXkgKi9cbiAgcHJvdGVjdGVkIGNsZWFyKGtleTogc3RyaW5nKSB7XG4gICAgdGhpcy5mZXRjaGVkW2tleV0uY2F0Y2goKCkgPT4ge30pO1xuICAgIGRlbGV0ZSB0aGlzLnJlc29sdmVyc1trZXldO1xuICAgIGRlbGV0ZSB0aGlzLnJlamVjdG9yc1trZXldO1xuICAgIGRlbGV0ZSB0aGlzLmZldGNoZWRba2V5XTtcbiAgICBkZWxldGUgdGhpcy5mZXRjaGVkQXRba2V5XTtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXRMYXN0UmVzZXQoKSB7XG4gICAgaWYgKHRoaXMuY2xlYW51cERhdGUpIHJldHVybiB0aGlzLmNsZWFudXBEYXRlO1xuICAgIHJldHVybiB0aGlzLmNvbnRyb2xsZXIuZ2V0U3RhdGUoKS5sYXN0UmVzZXQ7XG4gIH1cblxuICAvKiogQ2FsbGVkIHdoZW4gbWlkZGxld2FyZSBpbnRlcmNlcHRzICdyZGMvZmV0Y2gnIGFjdGlvbi5cbiAgICpcbiAgICogV2lsbCB0aGVuIHN0YXJ0IGEgcHJvbWlzZSBmb3IgYSBrZXkgYW5kIHBvdGVudGlhbGx5IHN0YXJ0IHRoZSBuZXR3b3JrXG4gICAqIGZldGNoLlxuICAgKlxuICAgKiBVc2VzIHRocm90dGxlIGVuZHBvaW50cyB3aXRob3V0IHNpZGVFZmZlY3RzLiBUaGlzIGlzIHZhbHVhYmxlXG4gICAqIGZvciBlbnN1cmVzIG11dGF0aW9uIHJlcXVlc3RzIGFsd2F5cyBnbyB0aHJvdWdoLlxuICAgKi9cbiAgcHJvdGVjdGVkIGhhbmRsZUZldGNoKGFjdGlvbjogRmV0Y2hBY3Rpb24pIHtcbiAgICBjb25zdCB7IHJlc29sdmUsIHJlamVjdCwgZmV0Y2hlZEF0IH0gPSBhY3Rpb24ubWV0YTtcbiAgICBjb25zdCB0aHJvdHRsZSA9ICFhY3Rpb24uZW5kcG9pbnQuc2lkZUVmZmVjdDtcblxuICAgIGNvbnN0IGRlZmVyZWRGZXRjaCA9ICgpID0+IHtcbiAgICAgIGxldCBwcm9taXNlID0gYWN0aW9uLmVuZHBvaW50KC4uLmFjdGlvbi5hcmdzKTtcbiAgICAgIGNvbnN0IHJlc29sdmVQcm9taXNlID0gKFxuICAgICAgICBwcm9taXNlOiBQcm9taXNlPHN0cmluZyB8IG51bWJlciB8IG9iamVjdCB8IG51bGw+LFxuICAgICAgKSA9PlxuICAgICAgICBwcm9taXNlXG4gICAgICAgICAgLnRoZW4oZGF0YSA9PiB7XG4gICAgICAgICAgICByZXNvbHZlKGRhdGEpO1xuICAgICAgICAgICAgcmV0dXJuIGRhdGE7XG4gICAgICAgICAgfSlcbiAgICAgICAgICAuY2F0Y2goZXJyb3IgPT4ge1xuICAgICAgICAgICAgcmVqZWN0KGVycm9yKTtcbiAgICAgICAgICAgIHRocm93IGVycm9yO1xuICAgICAgICAgIH0pO1xuICAgICAgLy8gc2NoZWR1bGUgbm9uLXRocm90dGxlZCByZXNvbHV0aW9ucyBpbiBhIG1pY3JvdGFzayBiZWZvcmUgc2V0XG4gICAgICAvLyB0aGlzIGVuYWJsZXMgdXNlcnMgYXdhaXRpbmcgdGhlaXIgZmV0Y2ggdG8gdHJpZ2dlciBhbnkgcmVhY3QgdXBkYXRlcyBuZWVkZWQgdG8gZGVhbFxuICAgICAgLy8gd2l0aCB1cGNvbWluZyBjaGFuZ2VzIGJlY2F1c2Ugb2YgdGhlIGZldGNoIChmb3IgaW5zdGFuY2UgYXZvaWRpbmcgc3VzcGVuc2UgaWYgc29tZXRoaW5nIGlzIGRlbGV0ZWQpXG4gICAgICBpZiAoIXRocm90dGxlKSB7XG4gICAgICAgIHByb21pc2UgPSByZXNvbHZlUHJvbWlzZShwcm9taXNlKTtcbiAgICAgIH1cbiAgICAgIHByb21pc2UgPSBwcm9taXNlXG4gICAgICAgIC50aGVuKHJlc3BvbnNlID0+IHtcbiAgICAgICAgICBsZXQgbGFzdFJlc2V0ID0gdGhpcy5nZXRMYXN0UmVzZXQoKTtcblxuICAgICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgaXNOYU4obGFzdFJlc2V0KSkge1xuICAgICAgICAgICAgY29uc29sZS5lcnJvcihcbiAgICAgICAgICAgICAgJ3N0YXRlLmxhc3RSZXNldCBpcyBOYU4uIE9ubHkgcG9zaXRpdmUgdGltZXN0YW1wcyBhcmUgdmFsaWQuJyxcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBsYXN0UmVzZXQgPSAwO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC8vIGRvbid0IHVwZGF0ZSBzdGF0ZSB3aXRoIHByb21pc2VzIHN0YXJ0ZWQgYmVmb3JlIGxhc3QgY2xlYXJcbiAgICAgICAgICBpZiAoZmV0Y2hlZEF0ID49IGxhc3RSZXNldCkge1xuICAgICAgICAgICAgdGhpcy5jb250cm9sbGVyLnJlc29sdmUoYWN0aW9uLmVuZHBvaW50LCB7XG4gICAgICAgICAgICAgIGFyZ3M6IGFjdGlvbi5hcmdzLFxuICAgICAgICAgICAgICByZXNwb25zZSxcbiAgICAgICAgICAgICAgZmV0Y2hlZEF0LFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiByZXNwb25zZTtcbiAgICAgICAgfSlcbiAgICAgICAgLmNhdGNoKGVycm9yID0+IHtcbiAgICAgICAgICBjb25zdCBsYXN0UmVzZXQgPSB0aGlzLmdldExhc3RSZXNldCgpO1xuICAgICAgICAgIC8vIGRvbid0IHVwZGF0ZSBzdGF0ZSB3aXRoIHByb21pc2VzIHN0YXJ0ZWQgYmVmb3JlIGxhc3QgY2xlYXJcbiAgICAgICAgICBpZiAoZmV0Y2hlZEF0ID49IGxhc3RSZXNldCkge1xuICAgICAgICAgICAgdGhpcy5jb250cm9sbGVyLnJlc29sdmUoYWN0aW9uLmVuZHBvaW50LCB7XG4gICAgICAgICAgICAgIGFyZ3M6IGFjdGlvbi5hcmdzLFxuICAgICAgICAgICAgICByZXNwb25zZTogZXJyb3IsXG4gICAgICAgICAgICAgIGZldGNoZWRBdCxcbiAgICAgICAgICAgICAgZXJyb3I6IHRydWUsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9XG4gICAgICAgICAgdGhyb3cgZXJyb3I7XG4gICAgICAgIH0pO1xuICAgICAgcmV0dXJuIHByb21pc2U7XG4gICAgfTtcblxuICAgIGlmICh0aHJvdHRsZSkge1xuICAgICAgcmV0dXJuIHRoaXMudGhyb3R0bGUoYWN0aW9uLmtleSwgZGVmZXJlZEZldGNoLCBmZXRjaGVkQXQpXG4gICAgICAgIC50aGVuKGRhdGEgPT4gcmVzb2x2ZShkYXRhKSlcbiAgICAgICAgLmNhdGNoKGVycm9yID0+IHJlamVjdChlcnJvcikpO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gZGVmZXJlZEZldGNoKCkuY2F0Y2goKCkgPT4ge30pO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBDYWxsZWQgd2hlbiBtaWRkbGV3YXJlIGludGVyY2VwdHMgYSBzZXQgYWN0aW9uLlxuICAgKlxuICAgKiBXaWxsIHJlc29sdmUgdGhlIHByb21pc2UgYXNzb2NpYXRlZCB3aXRoIHNldCBrZXkuXG4gICAqL1xuICBwcm90ZWN0ZWQgaGFuZGxlU2V0KGFjdGlvbjogU2V0UmVzcG9uc2VBY3Rpb24pIHtcbiAgICAvLyB0aGlzIGNhbiBzdGlsbCB0dXJuIG91dCB0byBiZSB1bnRydWUgc2luY2UgdGhpcyBpcyBhc3luY1xuICAgIGlmIChhY3Rpb24ua2V5IGluIHRoaXMuZmV0Y2hlZCkge1xuICAgICAgbGV0IHByb21pc2VIYW5kbGVyOiAodmFsdWU/OiBhbnkpID0+IHZvaWQ7XG4gICAgICBpZiAoYWN0aW9uLmVycm9yKSB7XG4gICAgICAgIHByb21pc2VIYW5kbGVyID0gdGhpcy5yZWplY3RvcnNbYWN0aW9uLmtleV07XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBwcm9taXNlSGFuZGxlciA9IHRoaXMucmVzb2x2ZXJzW2FjdGlvbi5rZXldO1xuICAgICAgfVxuICAgICAgcHJvbWlzZUhhbmRsZXIoYWN0aW9uLnJlc3BvbnNlKTtcbiAgICAgIC8vIHNpbmNlIHdlJ3JlIHJlc29sdmVkIHdlIG5vIGxvbmdlciBuZWVkIHRvIGtlZXAgdHJhY2sgb2YgdGhpcyBwcm9taXNlXG4gICAgICB0aGlzLmNsZWFyKGFjdGlvbi5rZXkpO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBFbnN1cmVzIG9ubHkgb25lIHJlcXVlc3QgZm9yIGEgZ2l2ZW4ga2V5IGlzIGluIGZsaWdodCBhdCBhbnkgdGltZVxuICAgKlxuICAgKiBVc2VzIGtleSB0byBlaXRoZXIgcmV0cmlldmUgaW4tZmxpZ2h0IHByb21pc2UsIG9yIGlmIG5vdFxuICAgKiBjcmVhdGUgYSBuZXcgcHJvbWlzZSBhbmQgY2FsbCBmZXRjaC5cbiAgICpcbiAgICogTm90ZTogVGhlIG5ldyBwcm9taXNlIGlzIG5vdCBhY3R1YWxseSB0aWVkIHRvIGZldGNoIGF0IGFsbCxcbiAgICogYnV0IGlzIHJlc29sdmVkIHdoZW4gdGhlIGV4cGVjdGVkICdyZWNpZXZlJyBhY3Rpb24gaXMgcHJvY2Vzc2VkLlxuICAgKiBUaGlzIGVuc3VyZXMgcHJvbWlzZXMgYXJlIHJlc29sdmVkIG9ubHkgb25jZSB0aGVpciBkYXRhIGlzIHByb2Nlc3NlZFxuICAgKiBieSB0aGUgcmVkdWNlci5cbiAgICovXG4gIHByb3RlY3RlZCB0aHJvdHRsZShcbiAgICBrZXk6IHN0cmluZyxcbiAgICBmZXRjaDogKCkgPT4gUHJvbWlzZTxhbnk+LFxuICAgIGZldGNoZWRBdDogbnVtYmVyLFxuICApIHtcbiAgICBjb25zdCBsYXN0UmVzZXQgPSB0aGlzLmdldExhc3RSZXNldCgpO1xuICAgIC8vIHdlJ3JlIGFscmVhZHkgZmV0Y2hpbmcgc28gcmV1c2UgdGhlIHByb21pc2VcbiAgICAvLyBmZXRjaGVzIGFmdGVyIHJlc2V0IGRvIG5vdCBjb3VudFxuICAgIGlmIChrZXkgaW4gdGhpcy5mZXRjaGVkICYmIHRoaXMuZmV0Y2hlZEF0W2tleV0gPiBsYXN0UmVzZXQpIHtcbiAgICAgIHJldHVybiB0aGlzLmZldGNoZWRba2V5XTtcbiAgICB9XG5cbiAgICB0aGlzLmZldGNoZWRba2V5XSA9IG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgIHRoaXMucmVzb2x2ZXJzW2tleV0gPSByZXNvbHZlO1xuICAgICAgdGhpcy5yZWplY3RvcnNba2V5XSA9IHJlamVjdDtcbiAgICB9KTtcbiAgICB0aGlzLmZldGNoZWRBdFtrZXldID0gZmV0Y2hlZEF0O1xuXG4gICAgdGhpcy5pZGxlQ2FsbGJhY2soXG4gICAgICAoKSA9PiB7XG4gICAgICAgIC8vIHNpbmNlIG91ciByZWFsIHByb21pc2UgaXMgcmVzb2x2ZWQgdmlhIHRoZSB3cmFwUmVkdWNlcigpLFxuICAgICAgICAvLyB3ZSBzaG91bGQganVzdCBzdG9wIGFsbCBlcnJvcnMgaGVyZS5cbiAgICAgICAgLy8gVE9ETzogZGVjb3VwbGUgdGhpcyBmcm9tIHVzZUZldGNoZXIoKSAodGhhdCdzIHdoYXQncyBkaXNwYXRjaGluZyB0aGUgZXJyb3IgdGhlIHJlc29sdmVzIGluIGhlcmUpXG4gICAgICAgIGZldGNoKCkuY2F0Y2goKCkgPT4gbnVsbCk7XG4gICAgICB9LFxuICAgICAgeyB0aW1lb3V0OiA1MDAgfSxcbiAgICApO1xuXG4gICAgcmV0dXJuIHRoaXMuZmV0Y2hlZFtrZXldO1xuICB9XG5cbiAgLyoqIENhbGxzIHRoZSBjYWxsYmFjayB3aGVuIGNsaWVudCBpcyBub3QgJ2J1c3knIHdpdGggaGlnaCBwcmlvcml0eSBpbnRlcmFjdGlvbiB0YXNrc1xuICAgKlxuICAgKiBPdmVycmlkZSBmb3IgcGxhdGZvcm0tc3BlY2lmaWMgaW1wbGVtZW50YXRpb25zXG4gICAqL1xuICBwcm90ZWN0ZWQgaWRsZUNhbGxiYWNrKFxuICAgIGNhbGxiYWNrOiAoLi4uYXJnczogYW55W10pID0+IHZvaWQsXG4gICAgb3B0aW9ucz86IElkbGVSZXF1ZXN0T3B0aW9ucyxcbiAgKSB7XG4gICAgY2FsbGJhY2soKTtcbiAgfVxufVxuIl0sIm1hcHBpbmdzIjoiO0FBQUEsU0FBU0EsWUFBWSxFQUFFQyxLQUFLLEVBQUVDLEtBQUssUUFBUSxtQkFBbUI7QUFDOUQsU0FBU0MsaUJBQWlCLFFBQVEsZ0NBQWdDO0FBQ2xFLE9BQU9DLFVBQVUsTUFBTSw2QkFBNkI7QUFVcEQsT0FBTyxNQUFNQyxVQUFVLFNBQVNDLEtBQUssQ0FBQztFQUdwQ0MsV0FBV0EsQ0FBQSxFQUFHO0lBQ1osS0FBSyxDQUFDLHNCQUFzQixDQUFDO0lBQUMsS0FIaENDLElBQUksR0FBRyxZQUFZO0VBSW5CO0FBQ0Y7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZUFBZSxNQUFNQyxjQUFjLENBQW9CO0VBVXJERixXQUFXQSxDQUFDO0lBQUVHLGdCQUFnQixHQUFHLEtBQUs7SUFBRUMsaUJBQWlCLEdBQUc7RUFBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUU7SUFBQSxLQVQvREMsT0FBTyxHQUFrQ0MsTUFBTSxDQUFDQyxNQUFNLENBQUMsSUFBSSxDQUFDO0lBQUEsS0FDNURDLFNBQVMsR0FBMkMsQ0FBQyxDQUFDO0lBQUEsS0FDdERDLFNBQVMsR0FBMkMsQ0FBQyxDQUFDO0lBQUEsS0FDdERDLFNBQVMsR0FBNEIsQ0FBQyxDQUFDO0lBQUEsS0FHdkNDLFVBQVUsR0FBZSxJQUFJZCxVQUFVLENBQUMsQ0FBQztJQUFBLEtBUW5EZSxVQUFVLEdBQWVELFVBQVUsSUFBSTtNQUNyQyxJQUFJLENBQUNBLFVBQVUsR0FBR0EsVUFBVTtNQUM1QixPQUFPRSxJQUFJLElBQUlDLE1BQU0sSUFBSTtRQUN2QixRQUFRQSxNQUFNLENBQUNDLElBQUk7VUFDakIsS0FBS3JCLEtBQUs7WUFDUixJQUFJLENBQUNzQixXQUFXLENBQUNGLE1BQU0sQ0FBQztZQUN4QjtZQUNBO1lBQ0E7WUFDQSxJQUNFQSxNQUFNLENBQUNHLFFBQVEsQ0FBQ0MscUJBQXFCLEtBQUtDLFNBQVMsSUFDbkRMLE1BQU0sQ0FBQ0csUUFBUSxDQUFDRyxVQUFVLEVBQzFCO2NBQ0EsT0FBT1AsSUFBSSxDQUFDQyxNQUFNLENBQUM7WUFDckI7WUFDQSxPQUFPTyxPQUFPLENBQUNDLE9BQU8sQ0FBQyxDQUFDO1VBQzFCLEtBQUs3QixZQUFZO1lBQ2Y7WUFDQSxPQUFPb0IsSUFBSSxDQUFDQyxNQUFNLENBQUMsQ0FBQ1MsSUFBSSxDQUFDLE1BQU07Y0FDN0IsSUFBSVQsTUFBTSxDQUFDVSxHQUFHLElBQUksSUFBSSxDQUFDbkIsT0FBTyxFQUFFO2dCQUFBLElBQUFvQixxQkFBQTtnQkFDOUI7Z0JBQ0EsTUFBTUMsS0FBSyxJQUFBRCxxQkFBQSxHQUFHZCxVQUFVLENBQUNnQixRQUFRLENBQUMsQ0FBQyxDQUFDQyxJQUFJLENBQUNkLE1BQU0sQ0FBQ1UsR0FBRyxDQUFDLHFCQUF0Q0MscUJBQUEsQ0FBd0NDLEtBQUs7Z0JBQzNEO2dCQUNBLElBQUlBLEtBQUssRUFBRTtrQkFDVCxJQUFJLENBQUNHLFNBQVMsQ0FDWmpDLGlCQUFpQixDQUFDa0IsTUFBTSxDQUFDRyxRQUFRLEVBQUU7b0JBQ2pDYSxJQUFJLEVBQUVoQixNQUFNLENBQUNnQixJQUFJO29CQUNqQkMsUUFBUSxFQUFFTCxLQUFLO29CQUNmaEIsU0FBUyxFQUFFSSxNQUFNLENBQUNjLElBQUksQ0FBQ2xCLFNBQVM7b0JBQ2hDZ0IsS0FBSyxFQUFFO2tCQUNULENBQUMsQ0FDSCxDQUFDO2dCQUNILENBQUMsTUFBTTtrQkFDTCxJQUFJLENBQUNHLFNBQVMsQ0FBQ2YsTUFBTSxDQUFDO2dCQUN4QjtjQUNGO1lBQ0YsQ0FBQyxDQUFDO1VBQ0osS0FBS25CLEtBQUs7WUFBRTtjQUNWLE1BQU1jLFNBQVMsR0FBQXVCLFFBQUEsS0FBUSxJQUFJLENBQUN2QixTQUFTLENBQUU7Y0FFdkMsSUFBSSxDQUFDd0IsUUFBUSxDQUFDLENBQUM7Y0FDZixPQUFPcEIsSUFBSSxDQUFDQyxNQUFNLENBQUMsQ0FBQ1MsSUFBSSxDQUFDLE1BQU07Z0JBQzdCO2dCQUNBO2dCQUNBLEtBQUssTUFBTVcsQ0FBQyxJQUFJekIsU0FBUyxFQUFFO2tCQUN6QkEsU0FBUyxDQUFDeUIsQ0FBQyxDQUFDLENBQUMsSUFBSXBDLFVBQVUsQ0FBQyxDQUFDLENBQUM7Z0JBQ2hDO2NBQ0YsQ0FBQyxDQUFDO1lBQ0o7VUFDQTtZQUNFLE9BQU9lLElBQUksQ0FBQ0MsTUFBTSxDQUFDO1FBQ3ZCO01BQ0YsQ0FBQztJQUNILENBQUM7SUF6REMsSUFBSSxDQUFDWCxnQkFBZ0IsR0FBR0EsZ0JBQWdCO0lBQ3hDLElBQUksQ0FBQ0MsaUJBQWlCLEdBQUdBLGlCQUFpQjtFQUM1QztFQXlEQTtFQUNBK0IsSUFBSUEsQ0FBQSxFQUFHO0lBQ0wsT0FBTyxJQUFJLENBQUNDLFdBQVc7RUFDekI7O0VBRUE7RUFDQUMsT0FBT0EsQ0FBQSxFQUFHO0lBQ1I7SUFDQTtJQUNBLElBQUksQ0FBQ0QsV0FBVyxHQUFHRSxJQUFJLENBQUNDLEdBQUcsQ0FBQyxDQUFDO0VBQy9COztFQUVBO0VBQ0FDLFdBQVdBLENBQUMxQixNQUFtQixFQUFFO0lBQy9CO0lBQ0EsT0FBT0EsTUFBTSxDQUFDQyxJQUFJLEtBQUtyQixLQUFLLElBQUlvQixNQUFNLENBQUNVLEdBQUcsSUFBSSxJQUFJLENBQUNuQixPQUFPO0VBQzVEO0VBRUFvQyxVQUFVQSxDQUFBLEVBQUc7SUFDWCxNQUFNQyxPQUFPLEdBQUdwQyxNQUFNLENBQUNxQyxNQUFNLENBQUMsSUFBSSxDQUFDdEMsT0FBTyxDQUFDO0lBQzNDLElBQUlxQyxPQUFPLENBQUNFLE1BQU0sRUFBRSxPQUFPdkIsT0FBTyxDQUFDb0IsVUFBVSxDQUFDQyxPQUFPLENBQUM7RUFDeEQ7O0VBRUE7RUFDVVQsUUFBUUEsQ0FBQSxFQUFHO0lBQ25CLEtBQUssTUFBTUMsQ0FBQyxJQUFJLElBQUksQ0FBQ3pCLFNBQVMsRUFBRTtNQUM5QixJQUFJLENBQUNvQyxLQUFLLENBQUNYLENBQUMsQ0FBQztJQUNmO0VBQ0Y7O0VBRUE7RUFDVVcsS0FBS0EsQ0FBQ3JCLEdBQVcsRUFBRTtJQUMzQixJQUFJLENBQUNuQixPQUFPLENBQUNtQixHQUFHLENBQUMsQ0FBQ3NCLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO0lBQ2pDLE9BQU8sSUFBSSxDQUFDdEMsU0FBUyxDQUFDZ0IsR0FBRyxDQUFDO0lBQzFCLE9BQU8sSUFBSSxDQUFDZixTQUFTLENBQUNlLEdBQUcsQ0FBQztJQUMxQixPQUFPLElBQUksQ0FBQ25CLE9BQU8sQ0FBQ21CLEdBQUcsQ0FBQztJQUN4QixPQUFPLElBQUksQ0FBQ2QsU0FBUyxDQUFDYyxHQUFHLENBQUM7RUFDNUI7RUFFVXVCLFlBQVlBLENBQUEsRUFBRztJQUN2QixJQUFJLElBQUksQ0FBQ1gsV0FBVyxFQUFFLE9BQU8sSUFBSSxDQUFDQSxXQUFXO0lBQzdDLE9BQU8sSUFBSSxDQUFDekIsVUFBVSxDQUFDZ0IsUUFBUSxDQUFDLENBQUMsQ0FBQ3FCLFNBQVM7RUFDN0M7O0VBRUE7QUFDRjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtFQUNZaEMsV0FBV0EsQ0FBQ0YsTUFBbUIsRUFBRTtJQUN6QyxNQUFNO01BQUVRLE9BQU87TUFBRTJCLE1BQU07TUFBRXZDO0lBQVUsQ0FBQyxHQUFHSSxNQUFNLENBQUNjLElBQUk7SUFDbEQsTUFBTXNCLFFBQVEsR0FBRyxDQUFDcEMsTUFBTSxDQUFDRyxRQUFRLENBQUNHLFVBQVU7SUFFNUMsTUFBTStCLFlBQVksR0FBR0EsQ0FBQSxLQUFNO01BQ3pCLElBQUlDLE9BQU8sR0FBR3RDLE1BQU0sQ0FBQ0csUUFBUSxDQUFDLEdBQUdILE1BQU0sQ0FBQ2dCLElBQUksQ0FBQztNQUM3QyxNQUFNdUIsY0FBYyxHQUNsQkQsT0FBaUQsSUFFakRBLE9BQU8sQ0FDSjdCLElBQUksQ0FBQytCLElBQUksSUFBSTtRQUNaaEMsT0FBTyxDQUFDZ0MsSUFBSSxDQUFDO1FBQ2IsT0FBT0EsSUFBSTtNQUNiLENBQUMsQ0FBQyxDQUNEUixLQUFLLENBQUNwQixLQUFLLElBQUk7UUFDZHVCLE1BQU0sQ0FBQ3ZCLEtBQUssQ0FBQztRQUNiLE1BQU1BLEtBQUs7TUFDYixDQUFDLENBQUM7TUFDTjtNQUNBO01BQ0E7TUFDQSxJQUFJLENBQUN3QixRQUFRLEVBQUU7UUFDYkUsT0FBTyxHQUFHQyxjQUFjLENBQUNELE9BQU8sQ0FBQztNQUNuQztNQUNBQSxPQUFPLEdBQUdBLE9BQU8sQ0FDZDdCLElBQUksQ0FBQ1EsUUFBUSxJQUFJO1FBQ2hCLElBQUlpQixTQUFTLEdBQUcsSUFBSSxDQUFDRCxZQUFZLENBQUMsQ0FBQzs7UUFFbkM7UUFDQSxJQUFJUSxPQUFPLENBQUNDLEdBQUcsQ0FBQ0MsUUFBUSxLQUFLLFlBQVksSUFBSUMsS0FBSyxDQUFDVixTQUFTLENBQUMsRUFBRTtVQUM3RFcsT0FBTyxDQUFDakMsS0FBSyxDQUNYLDZEQUNGLENBQUM7VUFDRHNCLFNBQVMsR0FBRyxDQUFDO1FBQ2Y7O1FBRUE7UUFDQSxJQUFJdEMsU0FBUyxJQUFJc0MsU0FBUyxFQUFFO1VBQzFCLElBQUksQ0FBQ3JDLFVBQVUsQ0FBQ1csT0FBTyxDQUFDUixNQUFNLENBQUNHLFFBQVEsRUFBRTtZQUN2Q2EsSUFBSSxFQUFFaEIsTUFBTSxDQUFDZ0IsSUFBSTtZQUNqQkMsUUFBUTtZQUNSckI7VUFDRixDQUFDLENBQUM7UUFDSjtRQUNBLE9BQU9xQixRQUFRO01BQ2pCLENBQUMsQ0FBQyxDQUNEZSxLQUFLLENBQUNwQixLQUFLLElBQUk7UUFDZCxNQUFNc0IsU0FBUyxHQUFHLElBQUksQ0FBQ0QsWUFBWSxDQUFDLENBQUM7UUFDckM7UUFDQSxJQUFJckMsU0FBUyxJQUFJc0MsU0FBUyxFQUFFO1VBQzFCLElBQUksQ0FBQ3JDLFVBQVUsQ0FBQ1csT0FBTyxDQUFDUixNQUFNLENBQUNHLFFBQVEsRUFBRTtZQUN2Q2EsSUFBSSxFQUFFaEIsTUFBTSxDQUFDZ0IsSUFBSTtZQUNqQkMsUUFBUSxFQUFFTCxLQUFLO1lBQ2ZoQixTQUFTO1lBQ1RnQixLQUFLLEVBQUU7VUFDVCxDQUFDLENBQUM7UUFDSjtRQUNBLE1BQU1BLEtBQUs7TUFDYixDQUFDLENBQUM7TUFDSixPQUFPMEIsT0FBTztJQUNoQixDQUFDO0lBRUQsSUFBSUYsUUFBUSxFQUFFO01BQ1osT0FBTyxJQUFJLENBQUNBLFFBQVEsQ0FBQ3BDLE1BQU0sQ0FBQ1UsR0FBRyxFQUFFMkIsWUFBWSxFQUFFekMsU0FBUyxDQUFDLENBQ3REYSxJQUFJLENBQUMrQixJQUFJLElBQUloQyxPQUFPLENBQUNnQyxJQUFJLENBQUMsQ0FBQyxDQUMzQlIsS0FBSyxDQUFDcEIsS0FBSyxJQUFJdUIsTUFBTSxDQUFDdkIsS0FBSyxDQUFDLENBQUM7SUFDbEMsQ0FBQyxNQUFNO01BQ0wsT0FBT3lCLFlBQVksQ0FBQyxDQUFDLENBQUNMLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO0lBQ3ZDO0VBQ0Y7O0VBRUE7QUFDRjtBQUNBO0FBQ0E7RUFDWWpCLFNBQVNBLENBQUNmLE1BQXlCLEVBQUU7SUFDN0M7SUFDQSxJQUFJQSxNQUFNLENBQUNVLEdBQUcsSUFBSSxJQUFJLENBQUNuQixPQUFPLEVBQUU7TUFDOUIsSUFBSXVELGNBQXFDO01BQ3pDLElBQUk5QyxNQUFNLENBQUNZLEtBQUssRUFBRTtRQUNoQmtDLGNBQWMsR0FBRyxJQUFJLENBQUNuRCxTQUFTLENBQUNLLE1BQU0sQ0FBQ1UsR0FBRyxDQUFDO01BQzdDLENBQUMsTUFBTTtRQUNMb0MsY0FBYyxHQUFHLElBQUksQ0FBQ3BELFNBQVMsQ0FBQ00sTUFBTSxDQUFDVSxHQUFHLENBQUM7TUFDN0M7TUFDQW9DLGNBQWMsQ0FBQzlDLE1BQU0sQ0FBQ2lCLFFBQVEsQ0FBQztNQUMvQjtNQUNBLElBQUksQ0FBQ2MsS0FBSyxDQUFDL0IsTUFBTSxDQUFDVSxHQUFHLENBQUM7SUFDeEI7RUFDRjs7RUFFQTtBQUNGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtFQUNZMEIsUUFBUUEsQ0FDaEIxQixHQUFXLEVBQ1hxQyxLQUF5QixFQUN6Qm5ELFNBQWlCLEVBQ2pCO0lBQ0EsTUFBTXNDLFNBQVMsR0FBRyxJQUFJLENBQUNELFlBQVksQ0FBQyxDQUFDO0lBQ3JDO0lBQ0E7SUFDQSxJQUFJdkIsR0FBRyxJQUFJLElBQUksQ0FBQ25CLE9BQU8sSUFBSSxJQUFJLENBQUNLLFNBQVMsQ0FBQ2MsR0FBRyxDQUFDLEdBQUd3QixTQUFTLEVBQUU7TUFDMUQsT0FBTyxJQUFJLENBQUMzQyxPQUFPLENBQUNtQixHQUFHLENBQUM7SUFDMUI7SUFFQSxJQUFJLENBQUNuQixPQUFPLENBQUNtQixHQUFHLENBQUMsR0FBRyxJQUFJSCxPQUFPLENBQUMsQ0FBQ0MsT0FBTyxFQUFFMkIsTUFBTSxLQUFLO01BQ25ELElBQUksQ0FBQ3pDLFNBQVMsQ0FBQ2dCLEdBQUcsQ0FBQyxHQUFHRixPQUFPO01BQzdCLElBQUksQ0FBQ2IsU0FBUyxDQUFDZSxHQUFHLENBQUMsR0FBR3lCLE1BQU07SUFDOUIsQ0FBQyxDQUFDO0lBQ0YsSUFBSSxDQUFDdkMsU0FBUyxDQUFDYyxHQUFHLENBQUMsR0FBR2QsU0FBUztJQUUvQixJQUFJLENBQUNvRCxZQUFZLENBQ2YsTUFBTTtNQUNKO01BQ0E7TUFDQTtNQUNBRCxLQUFLLENBQUMsQ0FBQyxDQUFDZixLQUFLLENBQUMsTUFBTSxJQUFJLENBQUM7SUFDM0IsQ0FBQyxFQUNEO01BQUVpQixPQUFPLEVBQUU7SUFBSSxDQUNqQixDQUFDO0lBRUQsT0FBTyxJQUFJLENBQUMxRCxPQUFPLENBQUNtQixHQUFHLENBQUM7RUFDMUI7O0VBRUE7QUFDRjtBQUNBO0FBQ0E7RUFDWXNDLFlBQVlBLENBQ3BCRSxRQUFrQyxFQUNsQ0MsT0FBNEIsRUFDNUI7SUFDQUQsUUFBUSxDQUFDLENBQUM7RUFDWjtBQUNGIiwiaWdub3JlTGlzdCI6W119
257
+ function newFetchMeta(fetchedAt) {
258
+ const fetchMeta = {
259
+ fetchedAt
260
+ };
261
+ fetchMeta.promise = new Promise((resolve, reject) => {
262
+ fetchMeta.resolve = resolve;
263
+ fetchMeta.reject = reject;
264
+ });
265
+ return fetchMeta;
266
+ }
267
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJTRVRfUkVTUE9OU0UiLCJGRVRDSCIsIlJFU0VUIiwiY3JlYXRlU2V0UmVzcG9uc2UiLCJDb250cm9sbGVyIiwiUmVzZXRFcnJvciIsIkVycm9yIiwiY29uc3RydWN0b3IiLCJuYW1lIiwiTmV0d29ya01hbmFnZXIiLCJkYXRhRXhwaXJ5TGVuZ3RoIiwiZXJyb3JFeHBpcnlMZW5ndGgiLCJmZXRjaGluZyIsIk1hcCIsImNvbnRyb2xsZXIiLCJtaWRkbGV3YXJlIiwibmV4dCIsImFjdGlvbiIsInR5cGUiLCJoYW5kbGVGZXRjaCIsImVuZHBvaW50IiwiZ2V0T3B0aW1pc3RpY1Jlc3BvbnNlIiwidW5kZWZpbmVkIiwic2lkZUVmZmVjdCIsIlByb21pc2UiLCJyZXNvbHZlIiwidGhlbiIsImhhcyIsImtleSIsIl9jb250cm9sbGVyJGdldFN0YXRlJCIsImVycm9yIiwiZ2V0U3RhdGUiLCJtZXRhIiwiaGFuZGxlU2V0IiwiYXJncyIsInJlc3BvbnNlIiwiZmV0Y2hlZEF0IiwiZmV0Y2hlcyIsIkFycmF5IiwiZnJvbSIsInZhbHVlcyIsImNsZWFyQWxsIiwicmVqZWN0IiwiaW5pdCIsImNsZWFudXBEYXRlIiwiY2xlYW51cCIsIkRhdGUiLCJub3ciLCJza2lwTG9nZ2luZyIsImFsbFNldHRsZWQiLCJzaXplIiwibWFwIiwicHJvbWlzZSIsImsiLCJrZXlzIiwiY2xlYXIiLCJnZXQiLCJjYXRjaCIsImRlbGV0ZSIsImdldExhc3RSZXNldCIsImxhc3RSZXNldCIsInRocm90dGxlIiwiZGVmZXJlZEZldGNoIiwicmVzb2x2ZVByb21pc2UiLCJkYXRhIiwicHJvY2VzcyIsImVudiIsIk5PREVfRU5WIiwiaXNOYU4iLCJjb25zb2xlIiwiZmV0Y2giLCJmZXRjaE1ldGEiLCJuZXdGZXRjaE1ldGEiLCJzZXQiLCJpZGxlQ2FsbGJhY2siLCJ0aW1lb3V0IiwiY2FsbGJhY2siLCJvcHRpb25zIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL21hbmFnZXIvTmV0d29ya01hbmFnZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU0VUX1JFU1BPTlNFLCBGRVRDSCwgUkVTRVQgfSBmcm9tICcuLi9hY3Rpb25UeXBlcy5qcyc7XG5pbXBvcnQgeyBjcmVhdGVTZXRSZXNwb25zZSB9IGZyb20gJy4uL2NvbnRyb2xsZXIvYWN0aW9ucy9pbmRleC5qcyc7XG5pbXBvcnQgQ29udHJvbGxlciBmcm9tICcuLi9jb250cm9sbGVyL0NvbnRyb2xsZXIuanMnO1xuaW1wb3J0IHR5cGUge1xuICBGZXRjaEFjdGlvbixcbiAgTWFuYWdlcixcbiAgQWN0aW9uVHlwZXMsXG4gIE1pZGRsZXdhcmUsXG4gIFNldFJlc3BvbnNlQWN0aW9uLFxufSBmcm9tICcuLi90eXBlcy5qcyc7XG5cbmV4cG9ydCBjbGFzcyBSZXNldEVycm9yIGV4dGVuZHMgRXJyb3Ige1xuICBuYW1lID0gJ1Jlc2V0RXJyb3InO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCdBYm9ydGVkIGR1ZSB0byBSRVNFVCcpO1xuICB9XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRmV0Y2hpbmdNZXRhIHtcbiAgcHJvbWlzZTogUHJvbWlzZTxhbnk+O1xuICByZXNvbHZlOiAodmFsdWU/OiBhbnkpID0+IHZvaWQ7XG4gIHJlamVjdDogKHZhbHVlPzogYW55KSA9PiB2b2lkO1xuICBmZXRjaGVkQXQ6IG51bWJlcjtcbn1cblxuLyoqIEhhbmRsZXMgYWxsIGFzeW5jIG5ldHdvcmsgZGlzcGF0Y2hlc1xuICpcbiAqIERlZHVwZXMgY29uY3VycmVudCByZXF1ZXN0cyBieSBrZWVwaW5nIHRyYWNrIG9mIGFsbCBmZXRjaGVzIGluIGZsaWdodFxuICogYW5kIHJldHVybmluZyBleGlzdGluZyBwcm9taXNlcyBmb3IgcmVxdWVzdHMgYWxyZWFkeSBpbiBmbGlnaHQuXG4gKlxuICogSW50ZXJmYWNlcyB3aXRoIHN0b3JlIHZpYSBhIHJlZHV4LWNvbXBhdGlibGUgbWlkZGxld2FyZS5cbiAqXG4gKiBAc2VlIGh0dHBzOi8vZGF0YWNsaWVudC5pby9kb2NzL2FwaS9OZXR3b3JrTWFuYWdlclxuICovXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBOZXR3b3JrTWFuYWdlciBpbXBsZW1lbnRzIE1hbmFnZXIge1xuICBwcm90ZWN0ZWQgZmV0Y2hpbmc6IE1hcDxzdHJpbmcsIEZldGNoaW5nTWV0YT4gPSBuZXcgTWFwKCk7XG4gIGRlY2xhcmUgcmVhZG9ubHkgZGF0YUV4cGlyeUxlbmd0aDogbnVtYmVyO1xuICBkZWNsYXJlIHJlYWRvbmx5IGVycm9yRXhwaXJ5TGVuZ3RoOiBudW1iZXI7XG4gIHByb3RlY3RlZCBjb250cm9sbGVyOiBDb250cm9sbGVyID0gbmV3IENvbnRyb2xsZXIoKTtcbiAgZGVjbGFyZSBjbGVhbnVwRGF0ZT86IG51bWJlcjtcblxuICBjb25zdHJ1Y3Rvcih7IGRhdGFFeHBpcnlMZW5ndGggPSA2MDAwMCwgZXJyb3JFeHBpcnlMZW5ndGggPSAxMDAwIH0gPSB7fSkge1xuICAgIHRoaXMuZGF0YUV4cGlyeUxlbmd0aCA9IGRhdGFFeHBpcnlMZW5ndGg7XG4gICAgdGhpcy5lcnJvckV4cGlyeUxlbmd0aCA9IGVycm9yRXhwaXJ5TGVuZ3RoO1xuICB9XG5cbiAgbWlkZGxld2FyZTogTWlkZGxld2FyZSA9IGNvbnRyb2xsZXIgPT4ge1xuICAgIHRoaXMuY29udHJvbGxlciA9IGNvbnRyb2xsZXI7XG4gICAgcmV0dXJuIG5leHQgPT4gYWN0aW9uID0+IHtcbiAgICAgIHN3aXRjaCAoYWN0aW9uLnR5cGUpIHtcbiAgICAgICAgY2FzZSBGRVRDSDpcbiAgICAgICAgICB0aGlzLmhhbmRsZUZldGNoKGFjdGlvbik7XG4gICAgICAgICAgLy8gVGhpcyBpcyB0aGUgb25seSBjYXNlIHRoYXQgY2F1c2VzIGFueSBzdGF0ZSBjaGFuZ2VcbiAgICAgICAgICAvLyBJdCdzIGltcG9ydGFudCB0byBpbnRlcmNlcHQgb3RoZXIgZmV0Y2hlcyBhcyB3ZSBkb24ndCB3YW50IHRvIHRyaWdnZXIgcmVkdWNlcnMgZHVyaW5nXG4gICAgICAgICAgLy8gcmVuZGVyIC0gc28gd2UgbmVlZCB0byBzdG9wICdyZWFkb25seScgZmV0Y2hlcyB3aGljaCBjYW4gYmUgdHJpZ2dlcmVkIGluIHJlbmRlclxuICAgICAgICAgIGlmIChcbiAgICAgICAgICAgIGFjdGlvbi5lbmRwb2ludC5nZXRPcHRpbWlzdGljUmVzcG9uc2UgIT09IHVuZGVmaW5lZCAmJlxuICAgICAgICAgICAgYWN0aW9uLmVuZHBvaW50LnNpZGVFZmZlY3RcbiAgICAgICAgICApIHtcbiAgICAgICAgICAgIHJldHVybiBuZXh0KGFjdGlvbik7XG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcbiAgICAgICAgY2FzZSBTRVRfUkVTUE9OU0U6XG4gICAgICAgICAgLy8gb25seSBzZXQgYWZ0ZXIgbmV3IHN0YXRlIGlzIGNvbXB1dGVkXG4gICAgICAgICAgcmV0dXJuIG5leHQoYWN0aW9uKS50aGVuKCgpID0+IHtcbiAgICAgICAgICAgIGlmICh0aGlzLmZldGNoaW5nLmhhcyhhY3Rpb24ua2V5KSkge1xuICAgICAgICAgICAgICAvLyBOb3RlOiBtZXRhICptdXN0KiBiZSBzZXQgYnkgcmVkdWNlciBzbyB0aGlzIHNob3VsZCBiZSBzYWZlXG4gICAgICAgICAgICAgIGNvbnN0IGVycm9yID0gY29udHJvbGxlci5nZXRTdGF0ZSgpLm1ldGFbYWN0aW9uLmtleV0/LmVycm9yO1xuICAgICAgICAgICAgICAvLyBwcm9jZXNzaW5nIGVycm9ycyByZXN1bHQgaW4gc3RhdGUgbWV0YSBoYXZpbmcgZXJyb3IsIHNvIHdlIHNob3VsZCByZWplY3QgdGhlIHByb21pc2VcbiAgICAgICAgICAgICAgaWYgKGVycm9yKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5oYW5kbGVTZXQoXG4gICAgICAgICAgICAgICAgICBjcmVhdGVTZXRSZXNwb25zZShhY3Rpb24uZW5kcG9pbnQsIHtcbiAgICAgICAgICAgICAgICAgICAgYXJnczogYWN0aW9uLmFyZ3MsXG4gICAgICAgICAgICAgICAgICAgIHJlc3BvbnNlOiBlcnJvcixcbiAgICAgICAgICAgICAgICAgICAgZmV0Y2hlZEF0OiBhY3Rpb24ubWV0YS5mZXRjaGVkQXQsXG4gICAgICAgICAgICAgICAgICAgIGVycm9yOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLmhhbmRsZVNldChhY3Rpb24pO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSk7XG4gICAgICAgIGNhc2UgUkVTRVQ6IHtcbiAgICAgICAgICAvLyB0YWtlIHNuYXBzaG90IG9mIHJlamVjdG9ycyBhdCB0aGlzIHBvaW50IGluIHRpbWVcbiAgICAgICAgICAvLyB3ZSBtdXN0IHVzZSBBcnJheS5mcm9tIHNpbmNlIGl0ZXJhdGlvbiBkb2VzIG5vdCBmcmVlemUgc3RhdGUgYXQgdGhpcyBwb2ludCBpbiB0aW1lXG4gICAgICAgICAgY29uc3QgZmV0Y2hlcyA9IEFycmF5LmZyb20odGhpcy5mZXRjaGluZy52YWx1ZXMoKSk7XG5cbiAgICAgICAgICB0aGlzLmNsZWFyQWxsKCk7XG4gICAgICAgICAgcmV0dXJuIG5leHQoYWN0aW9uKS50aGVuKCgpID0+IHtcbiAgICAgICAgICAgIC8vIHRoZXJlIGNvdWxkIGJlIGV4dGVybmFsIGxpc3RlbmVycyB0byB0aGUgcHJvbWlzZVxuICAgICAgICAgICAgLy8gdGhpcyBtdXN0IGhhcHBlbiBhZnRlciBjb21taXQgc28gb3VyIG93biByZWplY3RvciBrbm93cyBub3QgdG8gZGlzcGF0Y2ggYW4gZXJyb3IgYmFzZWQgb24gdGhpc1xuICAgICAgICAgICAgZm9yIChjb25zdCB7IHJlamVjdCB9IG9mIGZldGNoZXMpIHtcbiAgICAgICAgICAgICAgcmVqZWN0KG5ldyBSZXNldEVycm9yKCkpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgcmV0dXJuIG5leHQoYWN0aW9uKTtcbiAgICAgIH1cbiAgICB9O1xuICB9O1xuXG4gIC8qKiBPbiBtb3VudCAqL1xuICBpbml0KCkge1xuICAgIGRlbGV0ZSB0aGlzLmNsZWFudXBEYXRlO1xuICB9XG5cbiAgLyoqIEVuc3VyZXMgYWxsIHByb21pc2VzIGFyZSBjb21wbGV0ZWQgYnkgcmVqZWN0aW5nIHJlbWFpbmluZy4gKi9cbiAgY2xlYW51cCgpIHtcbiAgICAvLyBlbnN1cmUgbm8gZGlzcGF0Y2hlcyBhZnRlciB1bm1vdW50XG4gICAgLy8gdGhpcyBtdXN0IGJlIHJldmVyc2libGUgKGRvbmUgaW4gaW5pdCkgc28gdXNlRWZmZWN0KCkgcmVtYWlucyBzeW1tZXRyaWNcbiAgICB0aGlzLmNsZWFudXBEYXRlID0gRGF0ZS5ub3coKTtcbiAgfVxuXG4gIC8qKiBVc2VkIGJ5IERldnRvb2xzTWFuYWdlciB0byBkZXRlcm1pbmUgd2hldGhlciB0byBsb2cgYW4gYWN0aW9uICovXG4gIHNraXBMb2dnaW5nKGFjdGlvbjogQWN0aW9uVHlwZXMpIHtcbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuICAgIHJldHVybiBhY3Rpb24udHlwZSA9PT0gRkVUQ0ggJiYgdGhpcy5mZXRjaGluZy5oYXMoYWN0aW9uLmtleSk7XG4gIH1cblxuICBhbGxTZXR0bGVkKCkge1xuICAgIGlmICh0aGlzLmZldGNoaW5nLnNpemUpXG4gICAgICByZXR1cm4gUHJvbWlzZS5hbGxTZXR0bGVkKFxuICAgICAgICB0aGlzLmZldGNoaW5nLnZhbHVlcygpLm1hcCgoeyBwcm9taXNlIH0pID0+IHByb21pc2UpLFxuICAgICAgKTtcbiAgfVxuXG4gIC8qKiBDbGVhciBhbGwgcHJvbWlzZSBzdGF0ZSAqL1xuICBwcm90ZWN0ZWQgY2xlYXJBbGwoKSB7XG4gICAgZm9yIChjb25zdCBrIG9mIHRoaXMuZmV0Y2hpbmcua2V5cygpKSB7XG4gICAgICB0aGlzLmNsZWFyKGspO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBDbGVhciBwcm9taXNlIHN0YXRlIGZvciBhIGdpdmVuIGtleSAqL1xuICBwcm90ZWN0ZWQgY2xlYXIoa2V5OiBzdHJpbmcpIHtcbiAgICBpZiAodGhpcy5mZXRjaGluZy5oYXMoa2V5KSkge1xuICAgICAgKHRoaXMuZmV0Y2hpbmcuZ2V0KGtleSkgYXMgRmV0Y2hpbmdNZXRhKS5wcm9taXNlLmNhdGNoKCgpID0+IHt9KTtcbiAgICAgIHRoaXMuZmV0Y2hpbmcuZGVsZXRlKGtleSk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIGdldExhc3RSZXNldCgpIHtcbiAgICBpZiAodGhpcy5jbGVhbnVwRGF0ZSkgcmV0dXJuIHRoaXMuY2xlYW51cERhdGU7XG4gICAgcmV0dXJuIHRoaXMuY29udHJvbGxlci5nZXRTdGF0ZSgpLmxhc3RSZXNldDtcbiAgfVxuXG4gIC8qKiBDYWxsZWQgd2hlbiBtaWRkbGV3YXJlIGludGVyY2VwdHMgJ3JkYy9mZXRjaCcgYWN0aW9uLlxuICAgKlxuICAgKiBXaWxsIHRoZW4gc3RhcnQgYSBwcm9taXNlIGZvciBhIGtleSBhbmQgcG90ZW50aWFsbHkgc3RhcnQgdGhlIG5ldHdvcmtcbiAgICogZmV0Y2guXG4gICAqXG4gICAqIFVzZXMgdGhyb3R0bGUgZW5kcG9pbnRzIHdpdGhvdXQgc2lkZUVmZmVjdHMuIFRoaXMgaXMgdmFsdWFibGVcbiAgICogZm9yIGVuc3VyZXMgbXV0YXRpb24gcmVxdWVzdHMgYWx3YXlzIGdvIHRocm91Z2guXG4gICAqL1xuICBwcm90ZWN0ZWQgaGFuZGxlRmV0Y2goYWN0aW9uOiBGZXRjaEFjdGlvbikge1xuICAgIGNvbnN0IHsgcmVzb2x2ZSwgcmVqZWN0LCBmZXRjaGVkQXQgfSA9IGFjdGlvbi5tZXRhO1xuICAgIGNvbnN0IHRocm90dGxlID0gIWFjdGlvbi5lbmRwb2ludC5zaWRlRWZmZWN0O1xuXG4gICAgY29uc3QgZGVmZXJlZEZldGNoID0gKCkgPT4ge1xuICAgICAgbGV0IHByb21pc2UgPSBhY3Rpb24uZW5kcG9pbnQoLi4uYWN0aW9uLmFyZ3MpO1xuICAgICAgY29uc3QgcmVzb2x2ZVByb21pc2UgPSAoXG4gICAgICAgIHByb21pc2U6IFByb21pc2U8c3RyaW5nIHwgbnVtYmVyIHwgb2JqZWN0IHwgbnVsbD4sXG4gICAgICApID0+XG4gICAgICAgIHByb21pc2VcbiAgICAgICAgICAudGhlbihkYXRhID0+IHtcbiAgICAgICAgICAgIHJlc29sdmUoZGF0YSk7XG4gICAgICAgICAgICByZXR1cm4gZGF0YTtcbiAgICAgICAgICB9KVxuICAgICAgICAgIC5jYXRjaChlcnJvciA9PiB7XG4gICAgICAgICAgICByZWplY3QoZXJyb3IpO1xuICAgICAgICAgICAgdGhyb3cgZXJyb3I7XG4gICAgICAgICAgfSk7XG4gICAgICAvLyBzY2hlZHVsZSBub24tdGhyb3R0bGVkIHJlc29sdXRpb25zIGluIGEgbWljcm90YXNrIGJlZm9yZSBzZXRcbiAgICAgIC8vIHRoaXMgZW5hYmxlcyB1c2VycyBhd2FpdGluZyB0aGVpciBmZXRjaCB0byB0cmlnZ2VyIGFueSByZWFjdCB1cGRhdGVzIG5lZWRlZCB0byBkZWFsXG4gICAgICAvLyB3aXRoIHVwY29taW5nIGNoYW5nZXMgYmVjYXVzZSBvZiB0aGUgZmV0Y2ggKGZvciBpbnN0YW5jZSBhdm9pZGluZyBzdXNwZW5zZSBpZiBzb21ldGhpbmcgaXMgZGVsZXRlZClcbiAgICAgIGlmICghdGhyb3R0bGUpIHtcbiAgICAgICAgcHJvbWlzZSA9IHJlc29sdmVQcm9taXNlKHByb21pc2UpO1xuICAgICAgfVxuICAgICAgcHJvbWlzZSA9IHByb21pc2VcbiAgICAgICAgLnRoZW4ocmVzcG9uc2UgPT4ge1xuICAgICAgICAgIGxldCBsYXN0UmVzZXQgPSB0aGlzLmdldExhc3RSZXNldCgpO1xuXG4gICAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiBpc05hTihsYXN0UmVzZXQpKSB7XG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKFxuICAgICAgICAgICAgICAnc3RhdGUubGFzdFJlc2V0IGlzIE5hTi4gT25seSBwb3NpdGl2ZSB0aW1lc3RhbXBzIGFyZSB2YWxpZC4nLFxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIGxhc3RSZXNldCA9IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gZG9uJ3QgdXBkYXRlIHN0YXRlIHdpdGggcHJvbWlzZXMgc3RhcnRlZCBiZWZvcmUgbGFzdCBjbGVhclxuICAgICAgICAgIGlmIChmZXRjaGVkQXQgPj0gbGFzdFJlc2V0KSB7XG4gICAgICAgICAgICB0aGlzLmNvbnRyb2xsZXIucmVzb2x2ZShhY3Rpb24uZW5kcG9pbnQsIHtcbiAgICAgICAgICAgICAgYXJnczogYWN0aW9uLmFyZ3MsXG4gICAgICAgICAgICAgIHJlc3BvbnNlLFxuICAgICAgICAgICAgICBmZXRjaGVkQXQsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIHJlc3BvbnNlO1xuICAgICAgICB9KVxuICAgICAgICAuY2F0Y2goZXJyb3IgPT4ge1xuICAgICAgICAgIGNvbnN0IGxhc3RSZXNldCA9IHRoaXMuZ2V0TGFzdFJlc2V0KCk7XG4gICAgICAgICAgLy8gZG9uJ3QgdXBkYXRlIHN0YXRlIHdpdGggcHJvbWlzZXMgc3RhcnRlZCBiZWZvcmUgbGFzdCBjbGVhclxuICAgICAgICAgIGlmIChmZXRjaGVkQXQgPj0gbGFzdFJlc2V0KSB7XG4gICAgICAgICAgICB0aGlzLmNvbnRyb2xsZXIucmVzb2x2ZShhY3Rpb24uZW5kcG9pbnQsIHtcbiAgICAgICAgICAgICAgYXJnczogYWN0aW9uLmFyZ3MsXG4gICAgICAgICAgICAgIHJlc3BvbnNlOiBlcnJvcixcbiAgICAgICAgICAgICAgZmV0Y2hlZEF0LFxuICAgICAgICAgICAgICBlcnJvcjogdHJ1ZSxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH1cbiAgICAgICAgICB0aHJvdyBlcnJvcjtcbiAgICAgICAgfSk7XG4gICAgICByZXR1cm4gcHJvbWlzZTtcbiAgICB9O1xuXG4gICAgaWYgKHRocm90dGxlKSB7XG4gICAgICByZXR1cm4gdGhpcy50aHJvdHRsZShhY3Rpb24ua2V5LCBkZWZlcmVkRmV0Y2gsIGZldGNoZWRBdClcbiAgICAgICAgLnRoZW4oZGF0YSA9PiByZXNvbHZlKGRhdGEpKVxuICAgICAgICAuY2F0Y2goZXJyb3IgPT4gcmVqZWN0KGVycm9yKSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBkZWZlcmVkRmV0Y2goKS5jYXRjaCgoKSA9PiB7fSk7XG4gICAgfVxuICB9XG5cbiAgLyoqIENhbGxlZCB3aGVuIG1pZGRsZXdhcmUgaW50ZXJjZXB0cyBhIHNldCBhY3Rpb24uXG4gICAqXG4gICAqIFdpbGwgcmVzb2x2ZSB0aGUgcHJvbWlzZSBhc3NvY2lhdGVkIHdpdGggc2V0IGtleS5cbiAgICovXG4gIHByb3RlY3RlZCBoYW5kbGVTZXQoYWN0aW9uOiBTZXRSZXNwb25zZUFjdGlvbikge1xuICAgIC8vIHRoaXMgY2FuIHN0aWxsIHR1cm4gb3V0IHRvIGJlIHVudHJ1ZSBzaW5jZSB0aGlzIGlzIGFzeW5jXG4gICAgaWYgKHRoaXMuZmV0Y2hpbmcuaGFzKGFjdGlvbi5rZXkpKSB7XG4gICAgICBjb25zdCB7IHJlamVjdCwgcmVzb2x2ZSB9ID0gdGhpcy5mZXRjaGluZy5nZXQoYWN0aW9uLmtleSkgYXMgRmV0Y2hpbmdNZXRhO1xuICAgICAgaWYgKGFjdGlvbi5lcnJvcikge1xuICAgICAgICByZWplY3QoYWN0aW9uLnJlc3BvbnNlKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJlc29sdmUoYWN0aW9uLnJlc3BvbnNlKTtcbiAgICAgIH1cblxuICAgICAgLy8gc2luY2Ugd2UncmUgcmVzb2x2ZWQgd2Ugbm8gbG9uZ2VyIG5lZWQgdG8ga2VlcCB0cmFjayBvZiB0aGlzIHByb21pc2VcbiAgICAgIHRoaXMuY2xlYXIoYWN0aW9uLmtleSk7XG4gICAgfVxuICB9XG5cbiAgLyoqIEVuc3VyZXMgb25seSBvbmUgcmVxdWVzdCBmb3IgYSBnaXZlbiBrZXkgaXMgaW4gZmxpZ2h0IGF0IGFueSB0aW1lXG4gICAqXG4gICAqIFVzZXMga2V5IHRvIGVpdGhlciByZXRyaWV2ZSBpbi1mbGlnaHQgcHJvbWlzZSwgb3IgaWYgbm90XG4gICAqIGNyZWF0ZSBhIG5ldyBwcm9taXNlIGFuZCBjYWxsIGZldGNoLlxuICAgKlxuICAgKiBOb3RlOiBUaGUgbmV3IHByb21pc2UgaXMgbm90IGFjdHVhbGx5IHRpZWQgdG8gZmV0Y2ggYXQgYWxsLFxuICAgKiBidXQgaXMgcmVzb2x2ZWQgd2hlbiB0aGUgZXhwZWN0ZWQgJ3JlY2lldmUnIGFjdGlvbiBpcyBwcm9jZXNzZWQuXG4gICAqIFRoaXMgZW5zdXJlcyBwcm9taXNlcyBhcmUgcmVzb2x2ZWQgb25seSBvbmNlIHRoZWlyIGRhdGEgaXMgcHJvY2Vzc2VkXG4gICAqIGJ5IHRoZSByZWR1Y2VyLlxuICAgKi9cbiAgcHJvdGVjdGVkIHRocm90dGxlKFxuICAgIGtleTogc3RyaW5nLFxuICAgIGZldGNoOiAoKSA9PiBQcm9taXNlPGFueT4sXG4gICAgZmV0Y2hlZEF0OiBudW1iZXIsXG4gICk6IFByb21pc2U8YW55PiB7XG4gICAgY29uc3QgbGFzdFJlc2V0ID0gdGhpcy5nZXRMYXN0UmVzZXQoKTtcbiAgICBsZXQgZmV0Y2hNZXRhID0gdGhpcy5mZXRjaGluZy5nZXQoa2V5KTtcblxuICAgIC8vIHdlJ3JlIGFscmVhZHkgZmV0Y2hpbmcgc28gcmV1c2UgdGhlIHByb21pc2VcbiAgICAvLyBmZXRjaGVzIGFmdGVyIHJlc2V0IGRvIG5vdCBjb3VudFxuICAgIGlmIChmZXRjaE1ldGEgJiYgZmV0Y2hNZXRhLmZldGNoZWRBdCA+IGxhc3RSZXNldCkge1xuICAgICAgcmV0dXJuIGZldGNoTWV0YS5wcm9taXNlO1xuICAgIH1cblxuICAgIGZldGNoTWV0YSA9IG5ld0ZldGNoTWV0YShmZXRjaGVkQXQpO1xuICAgIHRoaXMuZmV0Y2hpbmcuc2V0KGtleSwgZmV0Y2hNZXRhKTtcblxuICAgIHRoaXMuaWRsZUNhbGxiYWNrKFxuICAgICAgKCkgPT4ge1xuICAgICAgICAvLyBzaW5jZSBvdXIgcmVhbCBwcm9taXNlIGlzIHJlc29sdmVkIHZpYSB0aGUgd3JhcFJlZHVjZXIoKSxcbiAgICAgICAgLy8gd2Ugc2hvdWxkIGp1c3Qgc3RvcCBhbGwgZXJyb3JzIGhlcmUuXG4gICAgICAgIC8vIFRPRE86IGRlY291cGxlIHRoaXMgZnJvbSB1c2VGZXRjaGVyKCkgKHRoYXQncyB3aGF0J3MgZGlzcGF0Y2hpbmcgdGhlIGVycm9yIHRoZSByZXNvbHZlcyBpbiBoZXJlKVxuICAgICAgICBmZXRjaCgpLmNhdGNoKCgpID0+IG51bGwpO1xuICAgICAgfSxcbiAgICAgIHsgdGltZW91dDogNTAwIH0sXG4gICAgKTtcblxuICAgIHJldHVybiBmZXRjaE1ldGEucHJvbWlzZTtcbiAgfVxuXG4gIC8qKiBDYWxscyB0aGUgY2FsbGJhY2sgd2hlbiBjbGllbnQgaXMgbm90ICdidXN5JyB3aXRoIGhpZ2ggcHJpb3JpdHkgaW50ZXJhY3Rpb24gdGFza3NcbiAgICpcbiAgICogT3ZlcnJpZGUgZm9yIHBsYXRmb3JtLXNwZWNpZmljIGltcGxlbWVudGF0aW9uc1xuICAgKi9cbiAgcHJvdGVjdGVkIGlkbGVDYWxsYmFjayhcbiAgICBjYWxsYmFjazogKC4uLmFyZ3M6IGFueVtdKSA9PiB2b2lkLFxuICAgIG9wdGlvbnM/OiBJZGxlUmVxdWVzdE9wdGlvbnMsXG4gICkge1xuICAgIGNhbGxiYWNrKCk7XG4gIH1cbn1cblxuZnVuY3Rpb24gbmV3RmV0Y2hNZXRhKGZldGNoZWRBdDogbnVtYmVyKTogRmV0Y2hpbmdNZXRhIHtcbiAgY29uc3QgZmV0Y2hNZXRhID0geyBmZXRjaGVkQXQgfSBhcyBGZXRjaGluZ01ldGE7XG4gIGZldGNoTWV0YS5wcm9taXNlID0gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgIGZldGNoTWV0YS5yZXNvbHZlID0gcmVzb2x2ZTtcbiAgICBmZXRjaE1ldGEucmVqZWN0ID0gcmVqZWN0O1xuICB9KTtcbiAgcmV0dXJuIGZldGNoTWV0YTtcbn1cbiJdLCJtYXBwaW5ncyI6IkFBQUEsU0FBU0EsWUFBWSxFQUFFQyxLQUFLLEVBQUVDLEtBQUssUUFBUSxtQkFBbUI7QUFDOUQsU0FBU0MsaUJBQWlCLFFBQVEsZ0NBQWdDO0FBQ2xFLE9BQU9DLFVBQVUsTUFBTSw2QkFBNkI7QUFTcEQsT0FBTyxNQUFNQyxVQUFVLFNBQVNDLEtBQUssQ0FBQztFQUdwQ0MsV0FBV0EsQ0FBQSxFQUFHO0lBQ1osS0FBSyxDQUFDLHNCQUFzQixDQUFDO0lBQUMsS0FIaENDLElBQUksR0FBRyxZQUFZO0VBSW5CO0FBQ0Y7QUFTQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxlQUFlLE1BQU1DLGNBQWMsQ0FBb0I7RUFPckRGLFdBQVdBLENBQUM7SUFBRUcsZ0JBQWdCLEdBQUcsS0FBSztJQUFFQyxpQkFBaUIsR0FBRztFQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRTtJQUFBLEtBTi9EQyxRQUFRLEdBQThCLElBQUlDLEdBQUcsQ0FBQyxDQUFDO0lBQUEsS0FHL0NDLFVBQVUsR0FBZSxJQUFJVixVQUFVLENBQUMsQ0FBQztJQUFBLEtBUW5EVyxVQUFVLEdBQWVELFVBQVUsSUFBSTtNQUNyQyxJQUFJLENBQUNBLFVBQVUsR0FBR0EsVUFBVTtNQUM1QixPQUFPRSxJQUFJLElBQUlDLE1BQU0sSUFBSTtRQUN2QixRQUFRQSxNQUFNLENBQUNDLElBQUk7VUFDakIsS0FBS2pCLEtBQUs7WUFDUixJQUFJLENBQUNrQixXQUFXLENBQUNGLE1BQU0sQ0FBQztZQUN4QjtZQUNBO1lBQ0E7WUFDQSxJQUNFQSxNQUFNLENBQUNHLFFBQVEsQ0FBQ0MscUJBQXFCLEtBQUtDLFNBQVMsSUFDbkRMLE1BQU0sQ0FBQ0csUUFBUSxDQUFDRyxVQUFVLEVBQzFCO2NBQ0EsT0FBT1AsSUFBSSxDQUFDQyxNQUFNLENBQUM7WUFD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
@@ -39,11 +39,15 @@ export class GCPolicy {
39
39
  if (key) this.endpointCount.set(key, ((_this$endpointCount$g = this.endpointCount.get(key)) != null ? _this$endpointCount$g : 0) + 1);
40
40
  paths.forEach(path => {
41
41
  var _instanceCount$get;
42
- if (!this.entityCount.has(path.key)) {
43
- this.entityCount.set(path.key, new Map());
42
+ const {
43
+ key,
44
+ pk
45
+ } = path;
46
+ if (!this.entityCount.has(key)) {
47
+ this.entityCount.set(key, new Map());
44
48
  }
45
- const instanceCount = this.entityCount.get(path.key);
46
- instanceCount.set(path.pk, ((_instanceCount$get = instanceCount.get(path.pk)) != null ? _instanceCount$get : 0) + 1);
49
+ const instanceCount = this.entityCount.get(key);
50
+ instanceCount.set(pk, ((_instanceCount$get = instanceCount.get(pk)) != null ? _instanceCount$get : 0) + 1);
47
51
  });
48
52
 
49
53
  // decrement
@@ -61,18 +65,22 @@ export class GCPolicy {
61
65
  }
62
66
  }
63
67
  paths.forEach(path => {
64
- if (!this.entityCount.has(path.key)) {
68
+ const {
69
+ key,
70
+ pk
71
+ } = path;
72
+ if (!this.entityCount.has(key)) {
65
73
  return;
66
74
  }
67
- const instanceCount = this.entityCount.get(path.key);
68
- const entityCount = instanceCount.get(path.pk);
75
+ const instanceCount = this.entityCount.get(key);
76
+ const entityCount = instanceCount.get(pk);
69
77
  if (entityCount !== undefined) {
70
78
  if (entityCount <= 1) {
71
- instanceCount.delete(path.pk);
79
+ instanceCount.delete(pk);
72
80
  // queue for cleanup
73
81
  this.entitiesQ.push(path);
74
82
  } else {
75
- instanceCount.set(path.pk, entityCount - 1);
83
+ instanceCount.set(pk, entityCount - 1);
76
84
  }
77
85
  }
78
86
  });
@@ -106,8 +114,8 @@ export class GCPolicy {
106
114
  this.endpointsQ = nextEndpointsQ;
107
115
  const nextEntitiesQ = [];
108
116
  for (const path of this.entitiesQ) {
109
- var _this$entityCount$get, _state$entityMeta$pat, _state$entityMeta$pat2;
110
- if (!((_this$entityCount$get = this.entityCount.get(path.key)) != null && _this$entityCount$get.has(path.pk)) && this.expiresAt((_state$entityMeta$pat = (_state$entityMeta$pat2 = state.entityMeta[path.key]) == null ? void 0 : _state$entityMeta$pat2[path.pk]) != null ? _state$entityMeta$pat : {
117
+ var _this$entityCount$get, _state$entitiesMeta$p, _state$entitiesMeta$p2;
118
+ if (!((_this$entityCount$get = this.entityCount.get(path.key)) != null && _this$entityCount$get.has(path.pk)) && this.expiresAt((_state$entitiesMeta$p = (_state$entitiesMeta$p2 = state.entitiesMeta[path.key]) == null ? void 0 : _state$entitiesMeta$p2[path.pk]) != null ? _state$entitiesMeta$p : {
111
119
  fetchedAt: 0,
112
120
  date: 0,
113
121
  expiresAt: 0
@@ -148,4 +156,4 @@ export class ImmortalGCPolicy {
148
156
  return () => () => undefined;
149
157
  }
150
158
  }
151
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJHQyIsIkdDUG9saWN5IiwiY29uc3RydWN0b3IiLCJpbnRlcnZhbE1TIiwiZXhwaXJ5TXVsdGlwbGllciIsImV4cGlyZXNBdCIsImVuZHBvaW50Q291bnQiLCJNYXAiLCJlbnRpdHlDb3VudCIsImVuZHBvaW50c1EiLCJTZXQiLCJlbnRpdGllc1EiLCJiaW5kIiwib3B0aW9ucyIsImluaXQiLCJjb250cm9sbGVyIiwiaW50ZXJ2YWxJZCIsInNldEludGVydmFsIiwiaWRsZUNhbGxiYWNrIiwicnVuU3dlZXAiLCJ0aW1lb3V0IiwiY2xlYW51cCIsImNsZWFySW50ZXJ2YWwiLCJjcmVhdGVDb3VudFJlZiIsImtleSIsInBhdGhzIiwiX3RoaXMkZW5kcG9pbnRDb3VudCRnIiwic2V0IiwiZ2V0IiwiZm9yRWFjaCIsInBhdGgiLCJfaW5zdGFuY2VDb3VudCRnZXQiLCJoYXMiLCJpbnN0YW5jZUNvdW50IiwicGsiLCJjdXJyZW50Q291bnQiLCJ1bmRlZmluZWQiLCJkZWxldGUiLCJhZGQiLCJwdXNoIiwiZmV0Y2hlZEF0IiwiTWF0aCIsIm1heCIsInN0YXRlIiwiZ2V0U3RhdGUiLCJlbnRpdGllcyIsImVuZHBvaW50cyIsIm5vdyIsIkRhdGUiLCJuZXh0RW5kcG9pbnRzUSIsIl9zdGF0ZSRtZXRhJGtleSIsIm1ldGEiLCJkYXRlIiwibmV4dEVudGl0aWVzUSIsIl90aGlzJGVudGl0eUNvdW50JGdldCIsIl9zdGF0ZSRlbnRpdHlNZXRhJHBhdCIsIl9zdGF0ZSRlbnRpdHlNZXRhJHBhdDIiLCJlbnRpdHlNZXRhIiwibGVuZ3RoIiwiZGlzcGF0Y2giLCJ0eXBlIiwiY2FsbGJhY2siLCJyZXF1ZXN0SWRsZUNhbGxiYWNrIiwiSW1tb3J0YWxHQ1BvbGljeSJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zdGF0ZS9HQ1BvbGljeS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IEVudGl0eVBhdGggfSBmcm9tICdAZGF0YS1jbGllbnQvbm9ybWFsaXpyJztcblxuaW1wb3J0IHsgR0MgfSBmcm9tICcuLi9hY3Rpb25UeXBlcy5qcyc7XG5pbXBvcnQgQ29udHJvbGxlciBmcm9tICcuLi9jb250cm9sbGVyL0NvbnRyb2xsZXIuanMnO1xuXG5leHBvcnQgY2xhc3MgR0NQb2xpY3kgaW1wbGVtZW50cyBHQ0ludGVyZmFjZSB7XG4gIHByb3RlY3RlZCBlbmRwb2ludENvdW50ID0gbmV3IE1hcDxzdHJpbmcsIG51bWJlcj4oKTtcbiAgcHJvdGVjdGVkIGVudGl0eUNvdW50ID0gbmV3IE1hcDxzdHJpbmcsIE1hcDxzdHJpbmcsIG51bWJlcj4+KCk7XG4gIHByb3RlY3RlZCBlbmRwb2ludHNRID0gbmV3IFNldDxzdHJpbmc+KCk7XG4gIHByb3RlY3RlZCBlbnRpdGllc1E6IEVudGl0eVBhdGhbXSA9IFtdO1xuXG4gIGRlY2xhcmUgcHJvdGVjdGVkIGludGVydmFsSWQ6IFJldHVyblR5cGU8dHlwZW9mIHNldEludGVydmFsPjtcbiAgZGVjbGFyZSBwcm90ZWN0ZWQgY29udHJvbGxlcjogQ29udHJvbGxlcjtcbiAgZGVjbGFyZSBwcm90ZWN0ZWQgb3B0aW9uczogUmVxdWlyZWQ8T21pdDxHQ09wdGlvbnMsICdleHBpcmVzQXQnPj47XG5cbiAgY29uc3RydWN0b3Ioe1xuICAgIC8vIGV2ZXJ5IDUgbWluXG4gICAgaW50ZXJ2YWxNUyA9IDYwICogMTAwMCAqIDUsXG4gICAgZXhwaXJ5TXVsdGlwbGllciA9IDIsXG4gICAgZXhwaXJlc0F0LFxuICB9OiBHQ09wdGlvbnMgPSB7fSkge1xuICAgIGlmIChleHBpcmVzQXQpIHtcbiAgICAgIHRoaXMuZXhwaXJlc0F0ID0gZXhwaXJlc0F0LmJpbmQodGhpcyk7XG4gICAgfVxuICAgIHRoaXMub3B0aW9ucyA9IHtcbiAgICAgIGludGVydmFsTVMsXG4gICAgICBleHBpcnlNdWx0aXBsaWVyLFxuICAgIH07XG4gIH1cblxuICBpbml0KGNvbnRyb2xsZXI6IENvbnRyb2xsZXIpIHtcbiAgICB0aGlzLmNvbnRyb2xsZXIgPSBjb250cm9sbGVyO1xuXG4gICAgdGhpcy5pbnRlcnZhbElkID0gc2V0SW50ZXJ2YWwoKCkgPT4ge1xuICAgICAgdGhpcy5pZGxlQ2FsbGJhY2soKCkgPT4gdGhpcy5ydW5Td2VlcCgpLCB7IHRpbWVvdXQ6IDEwMDAgfSk7XG4gICAgfSwgdGhpcy5vcHRpb25zLmludGVydmFsTVMpO1xuICB9XG5cbiAgY2xlYW51cCgpIHtcbiAgICBjbGVhckludGVydmFsKHRoaXMuaW50ZXJ2YWxJZCk7XG4gIH1cblxuICBjcmVhdGVDb3VudFJlZih7IGtleSwgcGF0aHMgPSBbXSB9OiB7IGtleT86IHN0cmluZzsgcGF0aHM/OiBFbnRpdHlQYXRoW10gfSkge1xuICAgIC8vIGluY3JlbWVudFxuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICBpZiAoa2V5KVxuICAgICAgICB0aGlzLmVuZHBvaW50Q291bnQuc2V0KGtleSwgKHRoaXMuZW5kcG9pbnRDb3VudC5nZXQoa2V5KSA/PyAwKSArIDEpO1xuICAgICAgcGF0aHMuZm9yRWFjaChwYXRoID0+IHtcbiAgICAgICAgaWYgKCF0aGlzLmVudGl0eUNvdW50LmhhcyhwYXRoLmtleSkpIHtcbiAgICAgICAgICB0aGlzLmVudGl0eUNvdW50LnNldChwYXRoLmtleSwgbmV3IE1hcDxzdHJpbmcsIG51bWJlcj4oKSk7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgaW5zdGFuY2VDb3VudCA9IHRoaXMuZW50aXR5Q291bnQuZ2V0KHBhdGgua2V5KSE7XG4gICAgICAgIGluc3RhbmNlQ291bnQuc2V0KHBhdGgucGssIChpbnN0YW5jZUNvdW50LmdldChwYXRoLnBrKSA/PyAwKSArIDEpO1xuICAgICAgfSk7XG5cbiAgICAgIC8vIGRlY3JlbWVudFxuICAgICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgaWYgKGtleSkge1xuICAgICAgICAgIGNvbnN0IGN1cnJlbnRDb3VudCA9IHRoaXMuZW5kcG9pbnRDb3VudC5nZXQoa2V5KSE7XG4gICAgICAgICAgaWYgKGN1cnJlbnRDb3VudCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICBpZiAoY3VycmVudENvdW50IDw9IDEpIHtcbiAgICAgICAgICAgICAgdGhpcy5lbmRwb2ludENvdW50LmRlbGV0ZShrZXkpO1xuICAgICAgICAgICAgICAvLyBxdWV1ZSBmb3IgY2xlYW51cFxuICAgICAgICAgICAgICB0aGlzLmVuZHBvaW50c1EuYWRkKGtleSk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICB0aGlzLmVuZHBvaW50Q291bnQuc2V0KGtleSwgY3VycmVudENvdW50IC0gMSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHBhdGhzLmZvckVhY2gocGF0aCA9PiB7XG4gICAgICAgICAgaWYgKCF0aGlzLmVudGl0eUNvdW50LmhhcyhwYXRoLmtleSkpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICB9XG4gICAgICAgICAgY29uc3QgaW5zdGFuY2VDb3VudCA9IHRoaXMuZW50aXR5Q291bnQuZ2V0KHBhdGgua2V5KSE7XG4gICAgICAgICAgY29uc3QgZW50aXR5Q291bnQgPSBpbnN0YW5jZUNvdW50LmdldChwYXRoLnBrKSE7XG4gICAgICAgICAgaWYgKGVudGl0eUNvdW50ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIGlmIChlbnRpdHlDb3VudCA8PSAxKSB7XG4gICAgICAgICAgICAgIGluc3RhbmNlQ291bnQuZGVsZXRlKHBhdGgucGspO1xuICAgICAgICAgICAgICAvLyBxdWV1ZSBmb3IgY2xlYW51cFxuICAgICAgICAgICAgICB0aGlzLmVudGl0aWVzUS5wdXNoKHBhdGgpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgaW5zdGFuY2VDb3VudC5zZXQocGF0aC5waywgZW50aXR5Q291bnQgLSAxKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgfTtcbiAgICB9O1xuICB9XG5cbiAgcHJvdGVjdGVkIGV4cGlyZXNBdCh7XG4gICAgZmV0Y2hlZEF0LFxuICAgIGV4cGlyZXNBdCxcbiAgfToge1xuICAgIGV4cGlyZXNBdDogbnVtYmVyO1xuICAgIGRhdGU6IG51bWJlcjtcbiAgICBmZXRjaGVkQXQ6IG51bWJlcjtcbiAgfSk6IG51bWJlciB7XG4gICAgcmV0dXJuIChcbiAgICAgIE1hdGgubWF4KFxuICAgICAgICAoZXhwaXJlc0F0IC0gZmV0Y2hlZEF0KSAqIHRoaXMub3B0aW9ucy5leHBpcnlNdWx0aXBsaWVyLFxuICAgICAgICAxMjAwMDAsXG4gICAgICApICsgZmV0Y2hlZEF0XG4gICAgKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBydW5Td2VlcCgpIHtcbiAgICBjb25zdCBzdGF0ZSA9IHRoaXMuY29udHJvbGxlci5nZXRTdGF0ZSgpO1xuICAgIGNvbnN0IGVudGl0aWVzOiBFbnRpdHlQYXRoW10gPSBbXTtcbiAgICBjb25zdCBlbmRwb2ludHM6IHN0cmluZ1tdID0gW107XG4gICAgY29uc3Qgbm93ID0gRGF0ZS5ub3coKTtcblxuICAgIGNvbnN0IG5leHRFbmRwb2ludHNRID0gbmV3IFNldDxzdHJpbmc+KCk7XG4gICAgZm9yIChjb25zdCBrZXkgb2YgdGhpcy5lbmRwb2ludHNRKSB7XG4gICAgICBpZiAoXG4gICAgICAgICF0aGlzLmVuZHBvaW50Q291bnQuaGFzKGtleSkgJiZcbiAgICAgICAgdGhpcy5leHBpcmVzQXQoXG4gICAgICAgICAgc3RhdGUubWV0YVtrZXldID8/IHtcbiAgICAgICAgICAgIGZldGNoZWRBdDogMCxcbiAgICAgICAgICAgIGRhdGU6IDAsXG4gICAgICAgICAgICBleHBpcmVzQXQ6IDAsXG4gICAgICAgICAgfSxcbiAgICAgICAgKSA8IG5vd1xuICAgICAgKSB7XG4gICAgICAgIGVuZHBvaW50cy5wdXNoKGtleSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBuZXh0RW5kcG9pbnRzUS5hZGQoa2V5KTtcbiAgICAgIH1cbiAgICB9XG4gICAgdGhpcy5lbmRwb2ludHNRID0gbmV4dEVuZHBvaW50c1E7XG5cbiAgICBjb25zdCBuZXh0RW50aXRpZXNROiBFbnRpdHlQYXRoW10gPSBbXTtcbiAgICBmb3IgKGNvbnN0IHBhdGggb2YgdGhpcy5lbnRpdGllc1EpIHtcbiAgICAgIGlmIChcbiAgICAgICAgIXRoaXMuZW50aXR5Q291bnQuZ2V0KHBhdGgua2V5KT8uaGFzKHBhdGgucGspICYmXG4gICAgICAgIHRoaXMuZXhwaXJlc0F0KFxuICAgICAgICAgIHN0YXRlLmVudGl0eU1ldGFbcGF0aC5rZXldPy5bcGF0aC5wa10gPz8ge1xuICAgICAgICAgICAgZmV0Y2hlZEF0OiAwLFxuICAgICAgICAgICAgZGF0ZTogMCxcbiAgICAgICAgICAgIGV4cGlyZXNBdDogMCxcbiAgICAgICAgICB9LFxuICAgICAgICApIDwgbm93XG4gICAgICApIHtcbiAgICAgICAgZW50aXRpZXMucHVzaChwYXRoKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIG5leHRFbnRpdGllc1EucHVzaChwYXRoKTtcbiAgICAgIH1cbiAgICB9XG4gICAgdGhpcy5lbnRpdGllc1EgPSBuZXh0RW50aXRpZXNRO1xuXG4gICAgaWYgKGVudGl0aWVzLmxlbmd0aCB8fCBlbmRwb2ludHMubGVuZ3RoKSB7XG4gICAgICB0aGlzLmNvbnRyb2xsZXIuZGlzcGF0Y2goeyB0eXBlOiBHQywgZW50aXRpZXMsIGVuZHBvaW50cyB9KTtcbiAgICB9XG4gIH1cblxuICAvKiogQ2FsbHMgdGhlIGNhbGxiYWNrIHdoZW4gY2xpZW50IGlzIG5vdCAnYnVzeScgd2l0aCBoaWdoIHByaW9yaXR5IGludGVyYWN0aW9uIHRhc2tzXG4gICAqXG4gICAqIE92ZXJyaWRlIGZvciBwbGF0Zm9ybS1zcGVjaWZpYyBpbXBsZW1lbnRhdGlvbnNcbiAgICovXG4gIHByb3RlY3RlZCBpZGxlQ2FsbGJhY2soXG4gICAgY2FsbGJhY2s6ICguLi5hcmdzOiBhbnlbXSkgPT4gdm9pZCxcbiAgICBvcHRpb25zPzogSWRsZVJlcXVlc3RPcHRpb25zLFxuICApIHtcbiAgICBpZiAodHlwZW9mIHJlcXVlc3RJZGxlQ2FsbGJhY2sgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIHJlcXVlc3RJZGxlQ2FsbGJhY2soY2FsbGJhY2ssIG9wdGlvbnMpO1xuICAgIH0gZWxzZSB7XG4gICAgICBjYWxsYmFjaygpO1xuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgSW1tb3J0YWxHQ1BvbGljeSBpbXBsZW1lbnRzIEdDSW50ZXJmYWNlIHtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1mdW5jdGlvblxuICBpbml0KCkge31cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1mdW5jdGlvblxuICBjbGVhbnVwKCkge31cbiAgY3JlYXRlQ291bnRSZWYoKSB7XG4gICAgcmV0dXJuICgpID0+ICgpID0+IHVuZGVmaW5lZDtcbiAgfVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEdDT3B0aW9ucyB7XG4gIGludGVydmFsTVM/OiBudW1iZXI7XG4gIGV4cGlyeU11bHRpcGxpZXI/OiBudW1iZXI7XG4gIGV4cGlyZXNBdD86IChtZXRhOiB7XG4gICAgZXhwaXJlc0F0OiBudW1iZXI7XG4gICAgZGF0ZTogbnVtYmVyO1xuICAgIGZldGNoZWRBdDogbnVtYmVyO1xuICB9KSA9PiBudW1iZXI7XG59XG5leHBvcnQgaW50ZXJmYWNlIENyZWF0ZUNvdW50UmVmIHtcbiAgKHsga2V5LCBwYXRocyB9OiB7IGtleT86IHN0cmluZzsgcGF0aHM/OiBFbnRpdHlQYXRoW10gfSk6ICgpID0+ICgpID0+IHZvaWQ7XG59XG5leHBvcnQgaW50ZXJmYWNlIEdDSW50ZXJmYWNlIHtcbiAgY3JlYXRlQ291bnRSZWY6IENyZWF0ZUNvdW50UmVmO1xuICBpbml0KGNvbnRyb2xsZXI6IENvbnRyb2xsZXIpOiB2b2lkO1xuICBjbGVhbnVwKCk6IHZvaWQ7XG59XG4iXSwibWFwcGluZ3MiOiJBQUVBLFNBQVNBLEVBQUUsUUFBUSxtQkFBbUI7QUFHdEMsT0FBTyxNQUFNQyxRQUFRLENBQXdCO0VBVTNDQyxXQUFXQSxDQUFDO0lBQ1Y7SUFDQUMsVUFBVSxHQUFHLEVBQUUsR0FBRyxJQUFJLEdBQUcsQ0FBQztJQUMxQkMsZ0JBQWdCLEdBQUcsQ0FBQztJQUNwQkM7RUFDUyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUU7SUFBQSxLQWRUQyxhQUFhLEdBQUcsSUFBSUMsR0FBRyxDQUFpQixDQUFDO0lBQUEsS0FDekNDLFdBQVcsR0FBRyxJQUFJRCxHQUFHLENBQThCLENBQUM7SUFBQSxLQUNwREUsVUFBVSxHQUFHLElBQUlDLEdBQUcsQ0FBUyxDQUFDO0lBQUEsS0FDOUJDLFNBQVMsR0FBaUIsRUFBRTtJQVlwQyxJQUFJTixTQUFTLEVBQUU7TUFDYixJQUFJLENBQUNBLFNBQVMsR0FBR0EsU0FBUyxDQUFDTyxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQ3ZDO0lBQ0EsSUFBSSxDQUFDQyxPQUFPLEdBQUc7TUFDYlYsVUFBVTtNQUNWQztJQUNGLENBQUM7RUFDSDtFQUVBVSxJQUFJQSxDQUFDQyxVQUFzQixFQUFFO0lBQzNCLElBQUksQ0FBQ0EsVUFBVSxHQUFHQSxVQUFVO0lBRTVCLElBQUksQ0FBQ0MsVUFBVSxHQUFHQyxXQUFXLENBQUMsTUFBTTtNQUNsQyxJQUFJLENBQUNDLFlBQVksQ0FBQyxNQUFNLElBQUksQ0FBQ0MsUUFBUSxDQUFDLENBQUMsRUFBRTtRQUFFQyxPQUFPLEVBQUU7TUFBSyxDQUFDLENBQUM7SUFDN0QsQ0FBQyxFQUFFLElBQUksQ0FBQ1AsT0FBTyxDQUFDVixVQUFVLENBQUM7RUFDN0I7RUFFQWtCLE9BQU9BLENBQUEsRUFBRztJQUNSQyxhQUFhLENBQUMsSUFBSSxDQUFDTixVQUFVLENBQUM7RUFDaEM7RUFFQU8sY0FBY0EsQ0FBQztJQUFFQyxHQUFHO0lBQUVDLEtBQUssR0FBRztFQUEyQyxDQUFDLEVBQUU7SUFDMUU7SUFDQSxPQUFPLE1BQU07TUFBQSxJQUFBQyxxQkFBQTtNQUNYLElBQUlGLEdBQUcsRUFDTCxJQUFJLENBQUNsQixhQUFhLENBQUNxQixHQUFHLENBQUNILEdBQUcsRUFBRSxFQUFBRSxxQkFBQSxHQUFDLElBQUksQ0FBQ3BCLGFBQWEsQ0FBQ3NCLEdBQUcsQ0FBQ0osR0FBRyxDQUFDLFlBQUFFLHFCQUFBLEdBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztNQUNyRUQsS0FBSyxDQUFDSSxPQUFPLENBQUNDLElBQUksSUFBSTtRQUFBLElBQUFDLGtCQUFBO1FBQ3BCLElBQUksQ0FBQyxJQUFJLENBQUN2QixXQUFXLENBQUN3QixHQUFHLENBQUNGLElBQUksQ0FBQ04sR0FBRyxDQUFDLEVBQUU7VUFDbkMsSUFBSSxDQUFDaEIsV0FBVyxDQUFDbUIsR0FBRyxDQUFDRyxJQUFJLENBQUNOLEdBQUcsRUFBRSxJQUFJakIsR0FBRyxDQUFpQixDQUFDLENBQUM7UUFDM0Q7UUFDQSxNQUFNMEIsYUFBYSxHQUFHLElBQUksQ0FBQ3pCLFdBQVcsQ0FBQ29CLEdBQUcsQ0FBQ0UsSUFBSSxDQUFDTixHQUFHLENBQUU7UUFDckRTLGFBQWEsQ0FBQ04sR0FBRyxDQUFDRyxJQUFJLENBQUNJLEVBQUUsRUFBRSxFQUFBSCxrQkFBQSxHQUFDRSxhQUFhLENBQUNMLEdBQUcsQ0FBQ0UsSUFBSSxDQUFDSSxFQUFFLENBQUMsWUFBQUgsa0JBQUEsR0FBSSxDQUFDLElBQUksQ0FBQyxDQUFDO01BQ25FLENBQUMsQ0FBQzs7TUFFRjtNQUNBLE9BQU8sTUFBTTtRQUNYLElBQUlQLEdBQUcsRUFBRTtVQUNQLE1BQU1XLFlBQVksR0FBRyxJQUFJLENBQUM3QixhQUFhLENBQUNzQixHQUFHLENBQUNKLEdBQUcsQ0FBRTtVQUNqRCxJQUFJVyxZQUFZLEtBQUtDLFNBQVMsRUFBRTtZQUM5QixJQUFJRCxZQUFZLElBQUksQ0FBQyxFQUFFO2NBQ3JCLElBQUksQ0FBQzdCLGFBQWEsQ0FBQytCLE1BQU0sQ0FBQ2IsR0FBRyxDQUFDO2NBQzlCO2NBQ0EsSUFBSSxDQUFDZixVQUFVLENBQUM2QixHQUFHLENBQUNkLEdBQUcsQ0FBQztZQUMxQixDQUFDLE1BQU07Y0FDTCxJQUFJLENBQUNsQixhQUFhLENBQUNxQixHQUFHLENBQUNILEdBQUcsRUFBRVcsWUFBWSxHQUFHLENBQUMsQ0FBQztZQUMvQztVQUNGO1FBQ0Y7UUFDQVYsS0FBSyxDQUFDSSxPQUFPLENBQUNDLElBQUksSUFBSTtVQUNwQixJQUFJLENBQUMsSUFBSSxDQUFDdEIsV0FBVyxDQUFDd0IsR0FBRyxDQUFDRixJQUFJLENBQUNOLEdBQUcsQ0FBQyxFQUFFO1lBQ25DO1VBQ0Y7VUFDQSxNQUFNUyxhQUFhLEdBQUcsSUFBSSxDQUFDekIsV0FBVyxDQUFDb0IsR0FBRyxDQUFDRSxJQUFJLENBQUNOLEdBQUcsQ0FBRTtVQUNyRCxNQUFNaEIsV0FBVyxHQUFHeUIsYUFBYSxDQUFDTCxHQUFHLENBQUNFLElBQUksQ0FBQ0ksRUFBRSxDQUFFO1VBQy9DLElBQUkxQixXQUFXLEtBQUs0QixTQUFTLEVBQUU7WUFDN0IsSUFBSTVCLFdBQVcsSUFBSSxDQUFDLEVBQUU7Y0FDcEJ5QixhQUFhLENBQUNJLE1BQU0sQ0FBQ1AsSUFBSSxDQUFDSSxFQUFFLENBQUM7Y0FDN0I7Y0FDQSxJQUFJLENBQUN2QixTQUFTLENBQUM0QixJQUFJLENBQUNULElBQUksQ0FBQztZQUMzQixDQUFDLE1BQU07Y0FDTEcsYUFBYSxDQUFDTixHQUFHLENBQUNHLElBQUksQ0FBQ0ksRUFBRSxFQUFFMUIsV0FBVyxHQUFHLENBQUMsQ0FBQztZQUM3QztVQUNGO1FBQ0YsQ0FBQyxDQUFDO01BQ0osQ0FBQztJQUNILENBQUM7RUFDSDtFQUVVSCxTQUFTQSxDQUFDO0lBQ2xCbUMsU0FBUztJQUNUbkM7RUFLRixDQUFDLEVBQVU7SUFDVCxPQUNFb0MsSUFBSSxDQUFDQyxHQUFHLENBQ04sQ0FBQ3JDLFNBQVMsR0FBR21DLFNBQVMsSUFBSSxJQUFJLENBQUMzQixPQUFPLENBQUNULGdCQUFnQixFQUN2RCxNQUNGLENBQUMsR0FBR29DLFNBQVM7RUFFakI7RUFFVXJCLFFBQVFBLENBQUEsRUFBRztJQUNuQixNQUFNd0IsS0FBSyxHQUFHLElBQUksQ0FBQzVCLFVBQVUsQ0FBQzZCLFFBQVEsQ0FBQyxDQUFDO0lBQ3hDLE1BQU1DLFFBQXNCLEdBQUcsRUFBRTtJQUNqQyxNQUFNQyxTQUFtQixHQUFHLEVBQUU7SUFDOUIsTUFBTUMsR0FBRyxHQUFHQyxJQUFJLENBQUNELEdBQUcsQ0FBQyxDQUFDO0lBRXRCLE1BQU1FLGNBQWMsR0FBRyxJQUFJdkMsR0FBRyxDQUFTLENBQUM7SUFDeEMsS0FBSyxNQUFNYyxHQUFHLElBQUksSUFBSSxDQUFDZixVQUFVLEVBQUU7TUFBQSxJQUFBeUMsZUFBQTtNQUNqQyxJQUNFLENBQUMsSUFBSSxDQUFDNUMsYUFBYSxDQUFDMEIsR0FBRyxDQUFDUixHQUFHLENBQUMsSUFDNUIsSUFBSSxDQUFDbkIsU0FBUyxFQUFBNkMsZUFBQSxHQUNaUCxLQUFLLENBQUNRLElBQUksQ0FBQzNCLEdBQUcsQ0FBQyxZQUFBMEIsZUFBQSxHQUFJO1FBQ2pCVixTQUFTLEVBQUUsQ0FBQztRQUNaWSxJQUFJLEVBQUUsQ0FBQztRQUNQL0MsU0FBUyxFQUFFO01BQ2IsQ0FDRixDQUFDLEdBQUcwQyxHQUFHLEVBQ1A7UUFDQUQsU0FBUyxDQUFDUCxJQUFJLENBQUNmLEdBQUcsQ0FBQztNQUNyQixDQUFDLE1BQU07UUFDTHlCLGNBQWMsQ0FBQ1gsR0FBRyxDQUFDZCxHQUFHLENBQUM7TUFDekI7SUFDRjtJQUNBLElBQUksQ0FBQ2YsVUFBVSxHQUFHd0MsY0FBYztJQUVoQyxNQUFNSSxhQUEyQixHQUFHLEVBQUU7SUFDdEMsS0FBSyxNQUFNdkIsSUFBSSxJQUFJLElBQUksQ0FBQ25CLFNBQVMsRUFBRTtNQUFBLElBQUEyQyxxQkFBQSxFQUFBQyxxQkFBQSxFQUFBQyxzQkFBQTtNQUNqQyxJQUNFLEdBQUFGLHFCQUFBLEdBQUMsSUFBSSxDQUFDOUMsV0FBVyxDQUFDb0IsR0FBRyxDQUFDRSxJQUFJLENBQUNOLEdBQUcsQ0FBQyxhQUE5QjhCLHFCQUFBLENBQWdDdEIsR0FBRyxDQUFDRixJQUFJLENBQUNJLEVBQUUsQ0FBQyxLQUM3QyxJQUFJLENBQUM3QixTQUFTLEVBQUFrRCxxQkFBQSxJQUFBQyxzQkFBQSxHQUNaYixLQUFLLENBQUNjLFVBQVUsQ0FBQzNCLElBQUksQ0FBQ04sR0FBRyxDQUFDLHFCQUExQmdDLHNCQUFBLENBQTZCMUIsSUFBSSxDQUFDSSxFQUFFLENBQUMsWUFBQXFCLHFCQUFBLEdBQUk7UUFDdkNmLFNBQVMsRUFBRSxDQUFDO1FBQ1pZLElBQUksRUFBRSxDQUFDO1FBQ1AvQyxTQUFTLEVBQUU7TUFDYixDQUNGLENBQUMsR0FBRzBDLEdBQUcsRUFDUDtRQUNBRixRQUFRLENBQUNOLElBQUksQ0FBQ1QsSUFBSSxDQUFDO01BQ3JCLENBQUMsTUFBTTtRQUNMdUIsYUFBYSxDQUFDZCxJQUFJLENBQUNULElBQUksQ0FBQztNQUMxQjtJQUNGO0lBQ0EsSUFBSSxDQUFDbkIsU0FBUyxHQUFHMEMsYUFBYTtJQUU5QixJQUFJUixRQUFRLENBQUNhLE1BQU0sSUFBSVosU0FBUyxDQUFDWSxNQUFNLEVBQUU7TUFDdkMsSUFBSSxDQUFDM0MsVUFBVSxDQUFDNEMsUUFBUSxDQUFDO1FBQUVDLElBQUksRUFBRTVELEVBQUU7UUFBRTZDLFFBQVE7UUFBRUM7TUFBVSxDQUFDLENBQUM7SUFDN0Q7RUFDRjs7RUFFQTtBQUNGO0FBQ0E7QUFDQTtFQUNZNUIsWUFBWUEsQ0FDcEIyQyxRQUFrQyxFQUNsQ2hELE9BQTRCLEVBQzVCO0lBQ0EsSUFBSSxPQUFPaUQsbUJBQW1CLEtBQUssVUFBVSxFQUFFO01BQzdDQSxtQkFBbUIsQ0FBQ0QsUUFBUSxFQUFFaEQsT0FBTyxDQUFDO0lBQ3hDLENBQUMsTUFBTTtNQUNMZ0QsUUFBUSxDQUFDLENBQUM7SUFDWjtFQUNGO0FBQ0Y7QUFFQSxPQUFPLE1BQU1FLGdCQUFnQixDQUF3QjtFQUNuRDtFQUNBakQsSUFBSUEsQ0FBQSxFQUFHLENBQUM7RUFDUjtFQUNBTyxPQUFPQSxDQUFBLEVBQUcsQ0FBQztFQUNYRSxjQUFjQSxDQUFBLEVBQUc7SUFDZixPQUFPLE1BQU0sTUFBTWEsU0FBUztFQUM5QjtBQUNGIiwiaWdub3JlTGlzdCI6W119
159
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJHQyIsIkdDUG9saWN5IiwiY29uc3RydWN0b3IiLCJpbnRlcnZhbE1TIiwiZXhwaXJ5TXVsdGlwbGllciIsImV4cGlyZXNBdCIsImVuZHBvaW50Q291bnQiLCJNYXAiLCJlbnRpdHlDb3VudCIsImVuZHBvaW50c1EiLCJTZXQiLCJlbnRpdGllc1EiLCJiaW5kIiwib3B0aW9ucyIsImluaXQiLCJjb250cm9sbGVyIiwiaW50ZXJ2YWxJZCIsInNldEludGVydmFsIiwiaWRsZUNhbGxiYWNrIiwicnVuU3dlZXAiLCJ0aW1lb3V0IiwiY2xlYW51cCIsImNsZWFySW50ZXJ2YWwiLCJjcmVhdGVDb3VudFJlZiIsImtleSIsInBhdGhzIiwiX3RoaXMkZW5kcG9pbnRDb3VudCRnIiwic2V0IiwiZ2V0IiwiZm9yRWFjaCIsInBhdGgiLCJfaW5zdGFuY2VDb3VudCRnZXQiLCJwayIsImhhcyIsImluc3RhbmNlQ291bnQiLCJjdXJyZW50Q291bnQiLCJ1bmRlZmluZWQiLCJkZWxldGUiLCJhZGQiLCJwdXNoIiwiZmV0Y2hlZEF0IiwiTWF0aCIsIm1heCIsInN0YXRlIiwiZ2V0U3RhdGUiLCJlbnRpdGllcyIsImVuZHBvaW50cyIsIm5vdyIsIkRhdGUiLCJuZXh0RW5kcG9pbnRzUSIsIl9zdGF0ZSRtZXRhJGtleSIsIm1ldGEiLCJkYXRlIiwibmV4dEVudGl0aWVzUSIsIl90aGlzJGVudGl0eUNvdW50JGdldCIsIl9zdGF0ZSRlbnRpdGllc01ldGEkcCIsIl9zdGF0ZSRlbnRpdGllc01ldGEkcDIiLCJlbnRpdGllc01ldGEiLCJsZW5ndGgiLCJkaXNwYXRjaCIsInR5cGUiLCJjYWxsYmFjayIsInJlcXVlc3RJZGxlQ2FsbGJhY2siLCJJbW1vcnRhbEdDUG9saWN5Il0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3N0YXRlL0dDUG9saWN5LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgRW50aXR5UGF0aCB9IGZyb20gJ0BkYXRhLWNsaWVudC9ub3JtYWxpenInO1xuXG5pbXBvcnQgeyBHQyB9IGZyb20gJy4uL2FjdGlvblR5cGVzLmpzJztcbmltcG9ydCBDb250cm9sbGVyIGZyb20gJy4uL2NvbnRyb2xsZXIvQ29udHJvbGxlci5qcyc7XG5cbmV4cG9ydCBjbGFzcyBHQ1BvbGljeSBpbXBsZW1lbnRzIEdDSW50ZXJmYWNlIHtcbiAgcHJvdGVjdGVkIGVuZHBvaW50Q291bnQgPSBuZXcgTWFwPHN0cmluZywgbnVtYmVyPigpO1xuICBwcm90ZWN0ZWQgZW50aXR5Q291bnQgPSBuZXcgTWFwPHN0cmluZywgTWFwPHN0cmluZywgbnVtYmVyPj4oKTtcbiAgcHJvdGVjdGVkIGVuZHBvaW50c1EgPSBuZXcgU2V0PHN0cmluZz4oKTtcbiAgcHJvdGVjdGVkIGVudGl0aWVzUTogRW50aXR5UGF0aFtdID0gW107XG5cbiAgZGVjbGFyZSBwcm90ZWN0ZWQgaW50ZXJ2YWxJZDogUmV0dXJuVHlwZTx0eXBlb2Ygc2V0SW50ZXJ2YWw+O1xuICBkZWNsYXJlIHByb3RlY3RlZCBjb250cm9sbGVyOiBDb250cm9sbGVyO1xuICBkZWNsYXJlIHByb3RlY3RlZCBvcHRpb25zOiBSZXF1aXJlZDxPbWl0PEdDT3B0aW9ucywgJ2V4cGlyZXNBdCc+PjtcblxuICBjb25zdHJ1Y3Rvcih7XG4gICAgLy8gZXZlcnkgNSBtaW5cbiAgICBpbnRlcnZhbE1TID0gNjAgKiAxMDAwICogNSxcbiAgICBleHBpcnlNdWx0aXBsaWVyID0gMixcbiAgICBleHBpcmVzQXQsXG4gIH06IEdDT3B0aW9ucyA9IHt9KSB7XG4gICAgaWYgKGV4cGlyZXNBdCkge1xuICAgICAgdGhpcy5leHBpcmVzQXQgPSBleHBpcmVzQXQuYmluZCh0aGlzKTtcbiAgICB9XG4gICAgdGhpcy5vcHRpb25zID0ge1xuICAgICAgaW50ZXJ2YWxNUyxcbiAgICAgIGV4cGlyeU11bHRpcGxpZXIsXG4gICAgfTtcbiAgfVxuXG4gIGluaXQoY29udHJvbGxlcjogQ29udHJvbGxlcikge1xuICAgIHRoaXMuY29udHJvbGxlciA9IGNvbnRyb2xsZXI7XG5cbiAgICB0aGlzLmludGVydmFsSWQgPSBzZXRJbnRlcnZhbCgoKSA9PiB7XG4gICAgICB0aGlzLmlkbGVDYWxsYmFjaygoKSA9PiB0aGlzLnJ1blN3ZWVwKCksIHsgdGltZW91dDogMTAwMCB9KTtcbiAgICB9LCB0aGlzLm9wdGlvbnMuaW50ZXJ2YWxNUyk7XG4gIH1cblxuICBjbGVhbnVwKCkge1xuICAgIGNsZWFySW50ZXJ2YWwodGhpcy5pbnRlcnZhbElkKTtcbiAgfVxuXG4gIGNyZWF0ZUNvdW50UmVmKHsga2V5LCBwYXRocyA9IFtdIH06IHsga2V5Pzogc3RyaW5nOyBwYXRocz86IEVudGl0eVBhdGhbXSB9KSB7XG4gICAgLy8gaW5jcmVtZW50XG4gICAgcmV0dXJuICgpID0+IHtcbiAgICAgIGlmIChrZXkpXG4gICAgICAgIHRoaXMuZW5kcG9pbnRDb3VudC5zZXQoa2V5LCAodGhpcy5lbmRwb2ludENvdW50LmdldChrZXkpID8/IDApICsgMSk7XG4gICAgICBwYXRocy5mb3JFYWNoKHBhdGggPT4ge1xuICAgICAgICBjb25zdCB7IGtleSwgcGsgfSA9IHBhdGg7XG4gICAgICAgIGlmICghdGhpcy5lbnRpdHlDb3VudC5oYXMoa2V5KSkge1xuICAgICAgICAgIHRoaXMuZW50aXR5Q291bnQuc2V0KGtleSwgbmV3IE1hcDxzdHJpbmcsIG51bWJlcj4oKSk7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgaW5zdGFuY2VDb3VudCA9IHRoaXMuZW50aXR5Q291bnQuZ2V0KGtleSkhO1xuICAgICAgICBpbnN0YW5jZUNvdW50LnNldChwaywgKGluc3RhbmNlQ291bnQuZ2V0KHBrKSA/PyAwKSArIDEpO1xuICAgICAgfSk7XG5cbiAgICAgIC8vIGRlY3JlbWVudFxuICAgICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgaWYgKGtleSkge1xuICAgICAgICAgIGNvbnN0IGN1cnJlbnRDb3VudCA9IHRoaXMuZW5kcG9pbnRDb3VudC5nZXQoa2V5KSE7XG4gICAgICAgICAgaWYgKGN1cnJlbnRDb3VudCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICBpZiAoY3VycmVudENvdW50IDw9IDEpIHtcbiAgICAgICAgICAgICAgdGhpcy5lbmRwb2ludENvdW50LmRlbGV0ZShrZXkpO1xuICAgICAgICAgICAgICAvLyBxdWV1ZSBmb3IgY2xlYW51cFxuICAgICAgICAgICAgICB0aGlzLmVuZHBvaW50c1EuYWRkKGtleSk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICB0aGlzLmVuZHBvaW50Q291bnQuc2V0KGtleSwgY3VycmVudENvdW50IC0gMSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHBhdGhzLmZvckVhY2gocGF0aCA9PiB7XG4gICAgICAgICAgY29uc3QgeyBrZXksIHBrIH0gPSBwYXRoO1xuICAgICAgICAgIGlmICghdGhpcy5lbnRpdHlDb3VudC5oYXMoa2V5KSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgIH1cbiAgICAgICAgICBjb25zdCBpbnN0YW5jZUNvdW50ID0gdGhpcy5lbnRpdHlDb3VudC5nZXQoa2V5KSE7XG4gICAgICAgICAgY29uc3QgZW50aXR5Q291bnQgPSBpbnN0YW5jZUNvdW50LmdldChwaykhO1xuICAgICAgICAgIGlmIChlbnRpdHlDb3VudCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICBpZiAoZW50aXR5Q291bnQgPD0gMSkge1xuICAgICAgICAgICAgICBpbnN0YW5jZUNvdW50LmRlbGV0ZShwayk7XG4gICAgICAgICAgICAgIC8vIHF1ZXVlIGZvciBjbGVhbnVwXG4gICAgICAgICAgICAgIHRoaXMuZW50aXRpZXNRLnB1c2gocGF0aCk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICBpbnN0YW5jZUNvdW50LnNldChwaywgZW50aXR5Q291bnQgLSAxKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgfTtcbiAgICB9O1xuICB9XG5cbiAgcHJvdGVjdGVkIGV4cGlyZXNBdCh7XG4gICAgZmV0Y2hlZEF0LFxuICAgIGV4cGlyZXNBdCxcbiAgfToge1xuICAgIGV4cGlyZXNBdDogbnVtYmVyO1xuICAgIGRhdGU6IG51bWJlcjtcbiAgICBmZXRjaGVkQXQ6IG51bWJlcjtcbiAgfSk6IG51bWJlciB7XG4gICAgcmV0dXJuIChcbiAgICAgIE1hdGgubWF4KFxuICAgICAgICAoZXhwaXJlc0F0IC0gZmV0Y2hlZEF0KSAqIHRoaXMub3B0aW9ucy5leHBpcnlNdWx0aXBsaWVyLFxuICAgICAgICAxMjAwMDAsXG4gICAgICApICsgZmV0Y2hlZEF0XG4gICAgKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBydW5Td2VlcCgpIHtcbiAgICBjb25zdCBzdGF0ZSA9IHRoaXMuY29udHJvbGxlci5nZXRTdGF0ZSgpO1xuICAgIGNvbnN0IGVudGl0aWVzOiBFbnRpdHlQYXRoW10gPSBbXTtcbiAgICBjb25zdCBlbmRwb2ludHM6IHN0cmluZ1tdID0gW107XG4gICAgY29uc3Qgbm93ID0gRGF0ZS5ub3coKTtcblxuICAgIGNvbnN0IG5leHRFbmRwb2ludHNRID0gbmV3IFNldDxzdHJpbmc+KCk7XG4gICAgZm9yIChjb25zdCBrZXkgb2YgdGhpcy5lbmRwb2ludHNRKSB7XG4gICAgICBpZiAoXG4gICAgICAgICF0aGlzLmVuZHBvaW50Q291bnQuaGFzKGtleSkgJiZcbiAgICAgICAgdGhpcy5leHBpcmVzQXQoXG4gICAgICAgICAgc3RhdGUubWV0YVtrZXldID8/IHtcbiAgICAgICAgICAgIGZldGNoZWRBdDogMCxcbiAgICAgICAgICAgIGRhdGU6IDAsXG4gICAgICAgICAgICBleHBpcmVzQXQ6IDAsXG4gICAgICAgICAgfSxcbiAgICAgICAgKSA8IG5vd1xuICAgICAgKSB7XG4gICAgICAgIGVuZHBvaW50cy5wdXNoKGtleSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBuZXh0RW5kcG9pbnRzUS5hZGQoa2V5KTtcbiAgICAgIH1cbiAgICB9XG4gICAgdGhpcy5lbmRwb2ludHNRID0gbmV4dEVuZHBvaW50c1E7XG5cbiAgICBjb25zdCBuZXh0RW50aXRpZXNROiBFbnRpdHlQYXRoW10gPSBbXTtcbiAgICBmb3IgKGNvbnN0IHBhdGggb2YgdGhpcy5lbnRpdGllc1EpIHtcbiAgICAgIGlmIChcbiAgICAgICAgIXRoaXMuZW50aXR5Q291bnQuZ2V0KHBhdGgua2V5KT8uaGFzKHBhdGgucGspICYmXG4gICAgICAgIHRoaXMuZXhwaXJlc0F0KFxuICAgICAgICAgIHN0YXRlLmVudGl0aWVzTWV0YVtwYXRoLmtleV0/LltwYXRoLnBrXSA/PyB7XG4gICAgICAgICAgICBmZXRjaGVkQXQ6IDAsXG4gICAgICAgICAgICBkYXRlOiAwLFxuICAgICAgICAgICAgZXhwaXJlc0F0OiAwLFxuICAgICAgICAgIH0sXG4gICAgICAgICkgPCBub3dcbiAgICAgICkge1xuICAgICAgICBlbnRpdGllcy5wdXNoKHBhdGgpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgbmV4dEVudGl0aWVzUS5wdXNoKHBhdGgpO1xuICAgICAgfVxuICAgIH1cbiAgICB0aGlzLmVudGl0aWVzUSA9IG5leHRFbnRpdGllc1E7XG5cbiAgICBpZiAoZW50aXRpZXMubGVuZ3RoIHx8IGVuZHBvaW50cy5sZW5ndGgpIHtcbiAgICAgIHRoaXMuY29udHJvbGxlci5kaXNwYXRjaCh7IHR5cGU6IEdDLCBlbnRpdGllcywgZW5kcG9pbnRzIH0pO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBDYWxscyB0aGUgY2FsbGJhY2sgd2hlbiBjbGllbnQgaXMgbm90ICdidXN5JyB3aXRoIGhpZ2ggcHJpb3JpdHkgaW50ZXJhY3Rpb24gdGFza3NcbiAgICpcbiAgICogT3ZlcnJpZGUgZm9yIHBsYXRmb3JtLXNwZWNpZmljIGltcGxlbWVudGF0aW9uc1xuICAgKi9cbiAgcHJvdGVjdGVkIGlkbGVDYWxsYmFjayhcbiAgICBjYWxsYmFjazogKC4uLmFyZ3M6IGFueVtdKSA9PiB2b2lkLFxuICAgIG9wdGlvbnM/OiBJZGxlUmVxdWVzdE9wdGlvbnMsXG4gICkge1xuICAgIGlmICh0eXBlb2YgcmVxdWVzdElkbGVDYWxsYmFjayA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgcmVxdWVzdElkbGVDYWxsYmFjayhjYWxsYmFjaywgb3B0aW9ucyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNhbGxiYWNrKCk7XG4gICAgfVxuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBJbW1vcnRhbEdDUG9saWN5IGltcGxlbWVudHMgR0NJbnRlcmZhY2Uge1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LWZ1bmN0aW9uXG4gIGluaXQoKSB7fVxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LWZ1bmN0aW9uXG4gIGNsZWFudXAoKSB7fVxuICBjcmVhdGVDb3VudFJlZigpIHtcbiAgICByZXR1cm4gKCkgPT4gKCkgPT4gdW5kZWZpbmVkO1xuICB9XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgR0NPcHRpb25zIHtcbiAgaW50ZXJ2YWxNUz86IG51bWJlcjtcbiAgZXhwaXJ5TXVsdGlwbGllcj86IG51bWJlcjtcbiAgZXhwaXJlc0F0PzogKG1ldGE6IHtcbiAgICBleHBpcmVzQXQ6IG51bWJlcjtcbiAgICBkYXRlOiBudW1iZXI7XG4gICAgZmV0Y2hlZEF0OiBudW1iZXI7XG4gIH0pID0+IG51bWJlcjtcbn1cbmV4cG9ydCBpbnRlcmZhY2UgQ3JlYXRlQ291bnRSZWYge1xuICAoeyBrZXksIHBhdGhzIH06IHsga2V5Pzogc3RyaW5nOyBwYXRocz86IEVudGl0eVBhdGhbXSB9KTogKCkgPT4gKCkgPT4gdm9pZDtcbn1cbmV4cG9ydCBpbnRlcmZhY2UgR0NJbnRlcmZhY2Uge1xuICBjcmVhdGVDb3VudFJlZjogQ3JlYXRlQ291bnRSZWY7XG4gIGluaXQoY29udHJvbGxlcjogQ29udHJvbGxlcik6IHZvaWQ7XG4gIGNs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
@@ -15,9 +15,9 @@ export default function createReducer(controller) {
15
15
  key,
16
16
  pk
17
17
  }) => {
18
- var _entities$key, _entityMeta$key;
18
+ var _entities$key, _entitiesMeta$key;
19
19
  (_entities$key = state.entities[key]) == null || delete _entities$key[pk];
20
- (_entityMeta$key = state.entityMeta[key]) == null || delete _entityMeta$key[pk];
20
+ (_entitiesMeta$key = state.entitiesMeta[key]) == null || delete _entitiesMeta$key[pk];
21
21
  });
22
22
  action.endpoints.forEach(fetchKey => {
23
23
  delete state.endpoints[fetchKey];
@@ -53,8 +53,8 @@ export const initialState = {
53
53
  endpoints: {},
54
54
  indexes: {},
55
55
  meta: {},
56
- entityMeta: {},
56
+ entitiesMeta: {},
57
57
  optimistic: [],
58
58
  lastReset: 0
59
59
  };
60
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJleHBpcmVSZWR1Y2VyIiwiZmV0Y2hSZWR1Y2VyIiwiaW52YWxpZGF0ZVJlZHVjZXIiLCJzZXRSZWR1Y2VyIiwic2V0UmVzcG9uc2VSZWR1Y2VyIiwiU0VUIiwiSU5WQUxJREFURSIsIlJFU0VUIiwiRkVUQ0giLCJHQyIsIk9QVElNSVNUSUMiLCJJTlZBTElEQVRFQUxMIiwiRVhQSVJFQUxMIiwiU0VUX1JFU1BPTlNFIiwiY3JlYXRlUmVkdWNlciIsImNvbnRyb2xsZXIiLCJyZWR1Y2VyIiwic3RhdGUiLCJhY3Rpb24iLCJpbml0aWFsU3RhdGUiLCJ0eXBlIiwiZW50aXRpZXMiLCJmb3JFYWNoIiwia2V5IiwicGsiLCJfZW50aXRpZXMka2V5IiwiX2VudGl0eU1ldGEka2V5IiwiZW50aXR5TWV0YSIsImVuZHBvaW50cyIsImZldGNoS2V5IiwibWV0YSIsIl9leHRlbmRzIiwibGFzdFJlc2V0IiwiZGF0ZSIsImluZGV4ZXMiLCJvcHRpbWlzdGljIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3N0YXRlL3JlZHVjZXIvY3JlYXRlUmVkdWNlci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBleHBpcmVSZWR1Y2VyIH0gZnJvbSAnLi9leHBpcmVSZWR1Y2VyLmpzJztcbmltcG9ydCB7IGZldGNoUmVkdWNlciB9IGZyb20gJy4vZmV0Y2hSZWR1Y2VyLmpzJztcbmltcG9ydCB7IGludmFsaWRhdGVSZWR1Y2VyIH0gZnJvbSAnLi9pbnZhbGlkYXRlUmVkdWNlci5qcyc7XG5pbXBvcnQgeyBzZXRSZWR1Y2VyIH0gZnJvbSAnLi9zZXRSZWR1Y2VyLmpzJztcbmltcG9ydCB7IHNldFJlc3BvbnNlUmVkdWNlciB9IGZyb20gJy4vc2V0UmVzcG9uc2VSZWR1Y2VyLmpzJztcbmltcG9ydCB7XG4gIFNFVCxcbiAgSU5WQUxJREFURSxcbiAgUkVTRVQsXG4gIEZFVENILFxuICBHQyxcbiAgT1BUSU1JU1RJQyxcbiAgSU5WQUxJREFURUFMTCxcbiAgRVhQSVJFQUxMLFxuICBTRVRfUkVTUE9OU0UsXG59IGZyb20gJy4uLy4uL2FjdGlvblR5cGVzLmpzJztcbmltcG9ydCB0eXBlIENvbnRyb2xsZXIgZnJvbSAnLi4vLi4vY29udHJvbGxlci9Db250cm9sbGVyLmpzJztcbmltcG9ydCB0eXBlIHsgQWN0aW9uVHlwZXMsIFN0YXRlIH0gZnJvbSAnLi4vLi4vdHlwZXMuanMnO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBjcmVhdGVSZWR1Y2VyKGNvbnRyb2xsZXI6IENvbnRyb2xsZXIpOiBSZWR1Y2VyVHlwZSB7XG4gIHJldHVybiBmdW5jdGlvbiByZWR1Y2VyKFxuICAgIHN0YXRlOiBTdGF0ZTx1bmtub3duPiB8IHVuZGVmaW5lZCxcbiAgICBhY3Rpb246IEFjdGlvblR5cGVzLFxuICApOiBTdGF0ZTx1bmtub3duPiB7XG4gICAgaWYgKCFzdGF0ZSkgc3RhdGUgPSBpbml0aWFsU3RhdGU7XG4gICAgc3dpdGNoIChhY3Rpb24udHlwZSkge1xuICAgICAgY2FzZSBHQzpcbiAgICAgICAgLy8gaW5saW5lIGRlbGV0ZXMgYXJlIGZpbmUgYXMgdGhlc2Ugc2hvdWxkIGhhdmUgMCByZWZjb3VudHNcbiAgICAgICAgYWN0aW9uLmVudGl0aWVzLmZvckVhY2goKHsga2V5LCBwayB9KSA9PiB7XG4gICAgICAgICAgZGVsZXRlIChzdGF0ZSBhcyBhbnkpLmVudGl0aWVzW2tleV0/Lltwa107XG4gICAgICAgICAgZGVsZXRlIChzdGF0ZSBhcyBhbnkpLmVudGl0eU1ldGFba2V5XT8uW3BrXTtcbiAgICAgICAgfSk7XG4gICAgICAgIGFjdGlvbi5lbmRwb2ludHMuZm9yRWFjaChmZXRjaEtleSA9PiB7XG4gICAgICAgICAgZGVsZXRlIChzdGF0ZSBhcyBhbnkpLmVuZHBvaW50c1tmZXRjaEtleV07XG4gICAgICAgICAgZGVsZXRlIChzdGF0ZSBhcyBhbnkpLm1ldGFbZmV0Y2hLZXldO1xuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIHN0YXRlO1xuICAgICAgY2FzZSBGRVRDSDpcbiAgICAgICAgcmV0dXJuIGZldGNoUmVkdWNlcihzdGF0ZSwgYWN0aW9uKTtcblxuICAgICAgY2FzZSBPUFRJTUlTVElDOlxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWZhbGx0aHJvdWdoXG4gICAgICBjYXNlIFNFVF9SRVNQT05TRTpcbiAgICAgICAgcmV0dXJuIHNldFJlc3BvbnNlUmVkdWNlcihzdGF0ZSwgYWN0aW9uLCBjb250cm9sbGVyKTtcblxuICAgICAgY2FzZSBTRVQ6XG4gICAgICAgIHJldHVybiBzZXRSZWR1Y2VyKHN0YXRlLCBhY3Rpb24sIGNvbnRyb2xsZXIpO1xuXG4gICAgICBjYXNlIElOVkFMSURBVEVBTEw6XG4gICAgICBjYXNlIElOVkFMSURBVEU6XG4gICAgICAgIHJldHVybiBpbnZhbGlkYXRlUmVkdWNlcihzdGF0ZSwgYWN0aW9uKTtcblxuICAgICAgY2FzZSBFWFBJUkVBTEw6XG4gICAgICAgIHJldHVybiBleHBpcmVSZWR1Y2VyKHN0YXRlLCBhY3Rpb24pO1xuXG4gICAgICBjYXNlIFJFU0VUOlxuICAgICAgICByZXR1cm4geyAuLi5pbml0aWFsU3RhdGUsIGxhc3RSZXNldDogYWN0aW9uLmRhdGUgfTtcblxuICAgICAgZGVmYXVsdDpcbiAgICAgICAgLy8gQSByZWR1Y2VyIG11c3QgYWx3YXlzIHJldHVybiBhIHZhbGlkIHN0YXRlLlxuICAgICAgICAvLyBBbHRlcm5hdGl2ZWx5IHlvdSBjYW4gdGhyb3cgYW4gZXJyb3IgaWYgYW4gaW52YWxpZCBhY3Rpb24gaXMgZGlzcGF0Y2hlZC5cbiAgICAgICAgcmV0dXJuIHN0YXRlO1xuICAgIH1cbiAgfSBhcyBhbnk7XG59XG5cbmV4cG9ydCBjb25zdCBpbml0aWFsU3RhdGU6IFN0YXRlPHVua25vd24+ID0ge1xuICBlbnRpdGllczoge30sXG4gIGVuZHBvaW50czoge30sXG4gIGluZGV4ZXM6IHt9LFxuICBtZXRhOiB7fSxcbiAgZW50aXR5TWV0YToge30sXG4gIG9wdGltaXN0aWM6IFtdLFxuICBsYXN0UmVzZXQ6IDAsXG59O1xuXG50eXBlIFJlZHVjZXJUeXBlID0gKFxuICBzdGF0ZTogU3RhdGU8dW5rbm93bj4gfCB1bmRlZmluZWQsXG4gIGFjdGlvbjogQWN0aW9uVHlwZXMsXG4pID0+IFN0YXRlPHVua25vd24+O1xuXG50eXBlIFdyaXRhYmxlPFQ+ID0geyBbUCBpbiBrZXlvZiBUXTogTm9uTnVsbGFibGU8V3JpdGFibGU8VFtQXT4+IH07XG4iXSwibWFwcGluZ3MiOiI7QUFBQSxTQUFTQSxhQUFhLFFBQVEsb0JBQW9CO0FBQ2xELFNBQVNDLFlBQVksUUFBUSxtQkFBbUI7QUFDaEQsU0FBU0MsaUJBQWlCLFFBQVEsd0JBQXdCO0FBQzFELFNBQVNDLFVBQVUsUUFBUSxpQkFBaUI7QUFDNUMsU0FBU0Msa0JBQWtCLFFBQVEseUJBQXlCO0FBQzVELFNBQ0VDLEdBQUcsRUFDSEMsVUFBVSxFQUNWQyxLQUFLLEVBQ0xDLEtBQUssRUFDTEMsRUFBRSxFQUNGQyxVQUFVLEVBQ1ZDLGFBQWEsRUFDYkMsU0FBUyxFQUNUQyxZQUFZLFFBQ1Asc0JBQXNCO0FBSTdCLGVBQWUsU0FBU0MsYUFBYUEsQ0FBQ0MsVUFBc0IsRUFBZTtFQUN6RSxPQUFPLFNBQVNDLE9BQU9BLENBQ3JCQyxLQUFpQyxFQUNqQ0MsTUFBbUIsRUFDSDtJQUNoQixJQUFJLENBQUNELEtBQUssRUFBRUEsS0FBSyxHQUFHRSxZQUFZO0lBQ2hDLFFBQVFELE1BQU0sQ0FBQ0UsSUFBSTtNQUNqQixLQUFLWCxFQUFFO1FBQ0w7UUFDQVMsTUFBTSxDQUFDRyxRQUFRLENBQUNDLE9BQU8sQ0FBQyxDQUFDO1VBQUVDLEdBQUc7VUFBRUM7UUFBRyxDQUFDLEtBQUs7VUFBQSxJQUFBQyxhQUFBLEVBQUFDLGVBQUE7VUFDdkMsQ0FBQUQsYUFBQSxHQUFRUixLQUFLLENBQVNJLFFBQVEsQ0FBQ0UsR0FBRyxDQUFDLGFBQW5DLE9BQU9FLGFBQUEsQ0FBK0JELEVBQUUsQ0FBQztVQUN6QyxDQUFBRSxlQUFBLEdBQVFULEtBQUssQ0FBU1UsVUFBVSxDQUFDSixHQUFHLENBQUMsYUFBckMsT0FBT0csZUFBQSxDQUFpQ0YsRUFBRSxDQUFDO1FBQzdDLENBQUMsQ0FBQztRQUNGTixNQUFNLENBQUNVLFNBQVMsQ0FBQ04sT0FBTyxDQUFDTyxRQUFRLElBQUk7VUFDbkMsT0FBUVosS0FBSyxDQUFTVyxTQUFTLENBQUNDLFFBQVEsQ0FBQztVQUN6QyxPQUFRWixLQUFLLENBQVNhLElBQUksQ0FBQ0QsUUFBUSxDQUFDO1FBQ3RDLENBQUMsQ0FBQztRQUNGLE9BQU9aLEtBQUs7TUFDZCxLQUFLVCxLQUFLO1FBQ1IsT0FBT1AsWUFBWSxDQUFDZ0IsS0FBSyxFQUFFQyxNQUFNLENBQUM7TUFFcEMsS0FBS1IsVUFBVTtNQUNmO01BQ0EsS0FBS0csWUFBWTtRQUNmLE9BQU9ULGtCQUFrQixDQUFDYSxLQUFLLEVBQUVDLE1BQU0sRUFBRUgsVUFBVSxDQUFDO01BRXRELEtBQUtWLEdBQUc7UUFDTixPQUFPRixVQUFVLENBQUNjLEtBQUssRUFBRUMsTUFBTSxFQUFFSCxVQUFVLENBQUM7TUFFOUMsS0FBS0osYUFBYTtNQUNsQixLQUFLTCxVQUFVO1FBQ2IsT0FBT0osaUJBQWlCLENBQUNlLEtBQUssRUFBRUMsTUFBTSxDQUFDO01BRXpDLEtBQUtOLFNBQVM7UUFDWixPQUFPWixhQUFhLENBQUNpQixLQUFLLEVBQUVDLE1BQU0sQ0FBQztNQUVyQyxLQUFLWCxLQUFLO1FBQ1IsT0FBQXdCLFFBQUEsS0FBWVosWUFBWTtVQUFFYSxTQUFTLEVBQUVkLE1BQU0sQ0FBQ2U7UUFBSTtNQUVsRDtRQUNFO1FBQ0E7UUFDQSxPQUFPaEIsS0FBSztJQUNoQjtFQUNGLENBQUM7QUFDSDtBQUVBLE9BQU8sTUFBTUUsWUFBNEIsR0FBRztFQUMxQ0UsUUFBUSxFQUFFLENBQUMsQ0FBQztFQUNaTyxTQUFTLEVBQUUsQ0FBQyxDQUFDO0VBQ2JNLE9BQU8sRUFBRSxDQUFDLENBQUM7RUFDWEosSUFBSSxFQUFFLENBQUMsQ0FBQztFQUNSSCxVQUFVLEVBQUUsQ0FBQyxDQUFDO0VBQ2RRLFVBQVUsRUFBRSxFQUFFO0VBQ2RILFNBQVMsRUFBRTtBQUNiLENBQUMiLCJpZ25vcmVMaXN0IjpbXX0=
60
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJleHBpcmVSZWR1Y2VyIiwiZmV0Y2hSZWR1Y2VyIiwiaW52YWxpZGF0ZVJlZHVjZXIiLCJzZXRSZWR1Y2VyIiwic2V0UmVzcG9uc2VSZWR1Y2VyIiwiU0VUIiwiSU5WQUxJREFURSIsIlJFU0VUIiwiRkVUQ0giLCJHQyIsIk9QVElNSVNUSUMiLCJJTlZBTElEQVRFQUxMIiwiRVhQSVJFQUxMIiwiU0VUX1JFU1BPTlNFIiwiY3JlYXRlUmVkdWNlciIsImNvbnRyb2xsZXIiLCJyZWR1Y2VyIiwic3RhdGUiLCJhY3Rpb24iLCJpbml0aWFsU3RhdGUiLCJ0eXBlIiwiZW50aXRpZXMiLCJmb3JFYWNoIiwia2V5IiwicGsiLCJfZW50aXRpZXMka2V5IiwiX2VudGl0aWVzTWV0YSRrZXkiLCJlbnRpdGllc01ldGEiLCJlbmRwb2ludHMiLCJmZXRjaEtleSIsIm1ldGEiLCJfZXh0ZW5kcyIsImxhc3RSZXNldCIsImRhdGUiLCJpbmRleGVzIiwib3B0aW1pc3RpYyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zdGF0ZS9yZWR1Y2VyL2NyZWF0ZVJlZHVjZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZXhwaXJlUmVkdWNlciB9IGZyb20gJy4vZXhwaXJlUmVkdWNlci5qcyc7XG5pbXBvcnQgeyBmZXRjaFJlZHVjZXIgfSBmcm9tICcuL2ZldGNoUmVkdWNlci5qcyc7XG5pbXBvcnQgeyBpbnZhbGlkYXRlUmVkdWNlciB9IGZyb20gJy4vaW52YWxpZGF0ZVJlZHVjZXIuanMnO1xuaW1wb3J0IHsgc2V0UmVkdWNlciB9IGZyb20gJy4vc2V0UmVkdWNlci5qcyc7XG5pbXBvcnQgeyBzZXRSZXNwb25zZVJlZHVjZXIgfSBmcm9tICcuL3NldFJlc3BvbnNlUmVkdWNlci5qcyc7XG5pbXBvcnQge1xuICBTRVQsXG4gIElOVkFMSURBVEUsXG4gIFJFU0VULFxuICBGRVRDSCxcbiAgR0MsXG4gIE9QVElNSVNUSUMsXG4gIElOVkFMSURBVEVBTEwsXG4gIEVYUElSRUFMTCxcbiAgU0VUX1JFU1BPTlNFLFxufSBmcm9tICcuLi8uLi9hY3Rpb25UeXBlcy5qcyc7XG5pbXBvcnQgdHlwZSBDb250cm9sbGVyIGZyb20gJy4uLy4uL2NvbnRyb2xsZXIvQ29udHJvbGxlci5qcyc7XG5pbXBvcnQgdHlwZSB7IEFjdGlvblR5cGVzLCBTdGF0ZSB9IGZyb20gJy4uLy4uL3R5cGVzLmpzJztcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gY3JlYXRlUmVkdWNlcihjb250cm9sbGVyOiBDb250cm9sbGVyKTogUmVkdWNlclR5cGUge1xuICByZXR1cm4gZnVuY3Rpb24gcmVkdWNlcihcbiAgICBzdGF0ZTogU3RhdGU8dW5rbm93bj4gfCB1bmRlZmluZWQsXG4gICAgYWN0aW9uOiBBY3Rpb25UeXBlcyxcbiAgKTogU3RhdGU8dW5rbm93bj4ge1xuICAgIGlmICghc3RhdGUpIHN0YXRlID0gaW5pdGlhbFN0YXRlO1xuICAgIHN3aXRjaCAoYWN0aW9uLnR5cGUpIHtcbiAgICAgIGNhc2UgR0M6XG4gICAgICAgIC8vIGlubGluZSBkZWxldGVzIGFyZSBmaW5lIGFzIHRoZXNlIHNob3VsZCBoYXZlIDAgcmVmY291bnRzXG4gICAgICAgIGFjdGlvbi5lbnRpdGllcy5mb3JFYWNoKCh7IGtleSwgcGsgfSkgPT4ge1xuICAgICAgICAgIGRlbGV0ZSAoc3RhdGUgYXMgYW55KS5lbnRpdGllc1trZXldPy5bcGtdO1xuICAgICAgICAgIGRlbGV0ZSAoc3RhdGUgYXMgYW55KS5lbnRpdGllc01ldGFba2V5XT8uW3BrXTtcbiAgICAgICAgfSk7XG4gICAgICAgIGFjdGlvbi5lbmRwb2ludHMuZm9yRWFjaChmZXRjaEtleSA9PiB7XG4gICAgICAgICAgZGVsZXRlIChzdGF0ZSBhcyBhbnkpLmVuZHBvaW50c1tmZXRjaEtleV07XG4gICAgICAgICAgZGVsZXRlIChzdGF0ZSBhcyBhbnkpLm1ldGFbZmV0Y2hLZXldO1xuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIHN0YXRlO1xuICAgICAgY2FzZSBGRVRDSDpcbiAgICAgICAgcmV0dXJuIGZldGNoUmVkdWNlcihzdGF0ZSwgYWN0aW9uKTtcblxuICAgICAgY2FzZSBPUFRJTUlTVElDOlxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWZhbGx0aHJvdWdoXG4gICAgICBjYXNlIFNFVF9SRVNQT05TRTpcbiAgICAgICAgcmV0dXJuIHNldFJlc3BvbnNlUmVkdWNlcihzdGF0ZSwgYWN0aW9uLCBjb250cm9sbGVyKTtcblxuICAgICAgY2FzZSBTRVQ6XG4gICAgICAgIHJldHVybiBzZXRSZWR1Y2VyKHN0YXRlLCBhY3Rpb24sIGNvbnRyb2xsZXIpO1xuXG4gICAgICBjYXNlIElOVkFMSURBVEVBTEw6XG4gICAgICBjYXNlIElOVkFMSURBVEU6XG4gICAgICAgIHJldHVybiBpbnZhbGlkYXRlUmVkdWNlcihzdGF0ZSwgYWN0aW9uKTtcblxuICAgICAgY2FzZSBFWFBJUkVBTEw6XG4gICAgICAgIHJldHVybiBleHBpcmVSZWR1Y2VyKHN0YXRlLCBhY3Rpb24pO1xuXG4gICAgICBjYXNlIFJFU0VUOlxuICAgICAgICByZXR1cm4geyAuLi5pbml0aWFsU3RhdGUsIGxhc3RSZXNldDogYWN0aW9uLmRhdGUgfTtcblxuICAgICAgZGVmYXVsdDpcbiAgICAgICAgLy8gQSByZWR1Y2VyIG11c3QgYWx3YXlzIHJldHVybiBhIHZhbGlkIHN0YXRlLlxuICAgICAgICAvLyBBbHRlcm5hdGl2ZWx5IHlvdSBjYW4gdGhyb3cgYW4gZXJyb3IgaWYgYW4gaW52YWxpZCBhY3Rpb24gaXMgZGlzcGF0Y2hlZC5cbiAgICAgICAgcmV0dXJuIHN0YXRlO1xuICAgIH1cbiAgfSBhcyBhbnk7XG59XG5cbmV4cG9ydCBjb25zdCBpbml0aWFsU3RhdGU6IFN0YXRlPHVua25vd24+ID0ge1xuICBlbnRpdGllczoge30sXG4gIGVuZHBvaW50czoge30sXG4gIGluZGV4ZXM6IHt9LFxuICBtZXRhOiB7fSxcbiAgZW50aXRpZXNNZXRhOiB7fSxcbiAgb3B0aW1pc3RpYzogW10sXG4gIGxhc3RSZXNldDogMCxcbn07XG5cbnR5cGUgUmVkdWNlclR5cGUgPSAoXG4gIHN0YXRlOiBTdGF0ZTx1bmtub3duPiB8IHVuZGVmaW5lZCxcbiAgYWN0aW9uOiBBY3Rpb25UeXBlcyxcbikgPT4gU3RhdGU8dW5rbm93bj47XG5cbnR5cGUgV3JpdGFibGU8VD4gPSB7IFtQIGluIGtleW9mIFRdOiBOb25OdWxsYWJsZTxXcml0YWJsZTxUW1BdPj4gfTtcbiJdLCJtYXBwaW5ncyI6IjtBQUFBLFNBQVNBLGFBQWEsUUFBUSxvQkFBb0I7QUFDbEQsU0FBU0MsWUFBWSxRQUFRLG1CQUFtQjtBQUNoRCxTQUFTQyxpQkFBaUIsUUFBUSx3QkFBd0I7QUFDMUQsU0FBU0MsVUFBVSxRQUFRLGlCQUFpQjtBQUM1QyxTQUFTQyxrQkFBa0IsUUFBUSx5QkFBeUI7QUFDNUQsU0FDRUMsR0FBRyxFQUNIQyxVQUFVLEVBQ1ZDLEtBQUssRUFDTEMsS0FBSyxFQUNMQyxFQUFFLEVBQ0ZDLFVBQVUsRUFDVkMsYUFBYSxFQUNiQyxTQUFTLEVBQ1RDLFlBQVksUUFDUCxzQkFBc0I7QUFJN0IsZUFBZSxTQUFTQyxhQUFhQSxDQUFDQyxVQUFzQixFQUFlO0VBQ3pFLE9BQU8sU0FBU0MsT0FBT0EsQ0FDckJDLEtBQWlDLEVBQ2pDQyxNQUFtQixFQUNIO0lBQ2hCLElBQUksQ0FBQ0QsS0FBSyxFQUFFQSxLQUFLLEdBQUdFLFlBQVk7SUFDaEMsUUFBUUQsTUFBTSxDQUFDRSxJQUFJO01BQ2pCLEtBQUtYLEVBQUU7UUFDTDtRQUNBUyxNQUFNLENBQUNHLFFBQVEsQ0FBQ0MsT0FBTyxDQUFDLENBQUM7VUFBRUMsR0FBRztVQUFFQztRQUFHLENBQUMsS0FBSztVQUFBLElBQUFDLGFBQUEsRUFBQUMsaUJBQUE7VUFDdkMsQ0FBQUQsYUFBQSxHQUFRUixLQUFLLENBQVNJLFFBQVEsQ0FBQ0UsR0FBRyxDQUFDLGFBQW5DLE9BQU9FLGFBQUEsQ0FBK0JELEVBQUUsQ0FBQztVQUN6QyxDQUFBRSxpQkFBQSxHQUFRVCxLQUFLLENBQVNVLFlBQVksQ0FBQ0osR0FBRyxDQUFDLGFBQXZDLE9BQU9HLGlCQUFBLENBQW1DRixFQUFFLENBQUM7UUFDL0MsQ0FBQyxDQUFDO1FBQ0ZOLE1BQU0sQ0FBQ1UsU0FBUyxDQUFDTixPQUFPLENBQUNPLFFBQVEsSUFBSTtVQUNuQyxPQUFRWixLQUFLLENBQVNXLFNBQVMsQ0FBQ0MsUUFBUSxDQUFDO1VBQ3pDLE9BQVFaLEtBQUssQ0FBU2EsSUFBSSxDQUFDRCxRQUFRLENBQUM7UUFDdEMsQ0FBQyxDQUFDO1FBQ0YsT0FBT1osS0FBSztNQUNkLEtBQUtULEtBQUs7UUFDUixPQUFPUCxZQUFZLENBQUNnQixLQUFLLEVBQUVDLE1BQU0sQ0FBQztNQUVwQyxLQUFLUixVQUFVO01BQ2Y7TUFDQSxLQUFLRyxZQUFZO1FBQ2YsT0FBT1Qsa0JBQWtCLENBQUNhLEtBQUssRUFBRUMsTUFBTSxFQUFFSCxVQUFVLENBQUM7TUFFdEQsS0FBS1YsR0FBRztRQUNOLE9BQU9GLFVBQVUsQ0FBQ2MsS0FBSyxFQUFFQyxNQUFNLEVBQUVILFVBQVUsQ0FBQztNQUU5QyxLQUFLSixhQUFhO01BQ2xCLEtBQUtMLFVBQVU7UUFDYixPQUFPSixpQkFBaUIsQ0FBQ2UsS0FBSyxFQUFFQyxNQUFNLENBQUM7TUFFekMsS0FBS04sU0FBUztRQUNaLE9BQU9aLGFBQWEsQ0FBQ2lCLEtBQUssRUFBRUMsTUFBTSxDQUFDO01BRXJDLEtBQUtYLEtBQUs7UUFDUixPQUFBd0IsUUFBQSxLQUFZWixZQUFZO1VBQUVhLFNBQVMsRUFBRWQsTUFBTSxDQUFDZTtRQUFJO01BRWxEO1FBQ0U7UUFDQTtRQUNBLE9BQU9oQixLQUFLO0lBQ2hCO0VBQ0YsQ0FBQztBQUNIO0FBRUEsT0FBTyxNQUFNRSxZQUE0QixHQUFHO0VBQzFDRSxRQUFRLEVBQUUsQ0FBQyxDQUFDO0VBQ1pPLFNBQVMsRUFBRSxDQUFDLENBQUM7RUFDYk0sT0FBTyxFQUFFLENBQUMsQ0FBQztFQUNYSixJQUFJLEVBQUUsQ0FBQyxDQUFDO0VBQ1JILFlBQVksRUFBRSxDQUFDLENBQUM7RUFDaEJRLFVBQVUsRUFBRSxFQUFFO0VBQ2RILFNBQVMsRUFBRTtBQUNiLENBQUMiLCJpZ25vcmVMaXN0IjpbXX0=
@@ -12,14 +12,14 @@ export function setReducer(state, action, controller) {
12
12
  const {
13
13
  entities,
14
14
  indexes,
15
- entityMeta
15
+ entitiesMeta
16
16
  } = normalize(action.schema, value, action.args, state, action.meta);
17
17
  return {
18
18
  entities,
19
19
  endpoints: state.endpoints,
20
20
  indexes,
21
21
  meta: state.meta,
22
- entityMeta,
22
+ entitiesMeta,
23
23
  optimistic: state.optimistic,
24
24
  lastReset: state.lastReset
25
25
  };
@@ -33,4 +33,4 @@ export function setReducer(state, action, controller) {
33
33
  return state;
34
34
  }
35
35
  }
36
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJub3JtYWxpemUiLCJzZXRSZWR1Y2VyIiwic3RhdGUiLCJhY3Rpb24iLCJjb250cm9sbGVyIiwidmFsdWUiLCJwcmV2aW91c1ZhbHVlIiwiZ2V0Iiwic2NoZW1hIiwiYXJncyIsInVuZGVmaW5lZCIsImVudGl0aWVzIiwiaW5kZXhlcyIsImVudGl0eU1ldGEiLCJtZXRhIiwiZW5kcG9pbnRzIiwib3B0aW1pc3RpYyIsImxhc3RSZXNldCIsImVycm9yIiwicHJvY2VzcyIsImVudiIsIk5PREVfRU5WIiwiY29uc29sZSJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zdGF0ZS9yZWR1Y2VyL3NldFJlZHVjZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgbm9ybWFsaXplIH0gZnJvbSAnQGRhdGEtY2xpZW50L25vcm1hbGl6cic7XG5cbmltcG9ydCBDb250cm9sbGVyIGZyb20gJy4uLy4uL2NvbnRyb2xsZXIvQ29udHJvbGxlci5qcyc7XG5pbXBvcnQgdHlwZSB7IFN0YXRlLCBTZXRBY3Rpb24gfSBmcm9tICcuLi8uLi90eXBlcy5qcyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBzZXRSZWR1Y2VyKFxuICBzdGF0ZTogU3RhdGU8dW5rbm93bj4sXG4gIGFjdGlvbjogU2V0QWN0aW9uLFxuICBjb250cm9sbGVyOiBDb250cm9sbGVyLFxuKSB7XG4gIGxldCB2YWx1ZTogYW55O1xuICBpZiAodHlwZW9mIGFjdGlvbi52YWx1ZSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgIGNvbnN0IHByZXZpb3VzVmFsdWUgPSBjb250cm9sbGVyLmdldChhY3Rpb24uc2NoZW1hLCAuLi5hY3Rpb24uYXJncywgc3RhdGUpO1xuICAgIGlmIChwcmV2aW91c1ZhbHVlID09PSB1bmRlZmluZWQpIHJldHVybiBzdGF0ZTtcbiAgICB2YWx1ZSA9IGFjdGlvbi52YWx1ZShwcmV2aW91c1ZhbHVlKTtcbiAgfSBlbHNlIHtcbiAgICB2YWx1ZSA9IGFjdGlvbi52YWx1ZTtcbiAgfVxuICB0cnkge1xuICAgIGNvbnN0IHsgZW50aXRpZXMsIGluZGV4ZXMsIGVudGl0eU1ldGEgfSA9IG5vcm1hbGl6ZShcbiAgICAgIGFjdGlvbi5zY2hlbWEsXG4gICAgICB2YWx1ZSxcbiAgICAgIGFjdGlvbi5hcmdzLFxuICAgICAgc3RhdGUsXG4gICAgICBhY3Rpb24ubWV0YSxcbiAgICApO1xuICAgIHJldHVybiB7XG4gICAgICBlbnRpdGllcyxcbiAgICAgIGVuZHBvaW50czogc3RhdGUuZW5kcG9pbnRzLFxuICAgICAgaW5kZXhlcyxcbiAgICAgIG1ldGE6IHN0YXRlLm1ldGEsXG4gICAgICBlbnRpdHlNZXRhLFxuICAgICAgb3B0aW1pc3RpYzogc3RhdGUub3B0aW1pc3RpYyxcbiAgICAgIGxhc3RSZXNldDogc3RhdGUubGFzdFJlc2V0LFxuICAgIH07XG4gICAgLy8gcmVkdWNlciBtdXN0IHVwZGF0ZSB0aGUgc3RhdGUsIHNvIGluIGNhc2Ugb2YgcHJvY2Vzc2luZyBlcnJvcnMgd2Ugc2ltcGx5IGNvbXB1dGUgdGhlIGVuZHBvaW50cyBpbmxpbmVcbiAgfSBjYXRjaCAoZXJyb3I6IGFueSkge1xuICAgIC8vIHRoaXMgaXMgbm90IGFsd2F5cyBidWJibGVkIHVwLCBzbyBsZXQncyBkb3VibGUgc3VyZSB0aGlzIGRvZXNuJ3QgZmFpbCBzaWxlbnRseVxuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoZXJyb3IpO1xuICAgIH1cbiAgICByZXR1cm4gc3RhdGU7XG4gIH1cbn1cbiJdLCJtYXBwaW5ncyI6IkFBQUEsU0FBU0EsU0FBUyxRQUFRLHdCQUF3QjtBQUtsRCxPQUFPLFNBQVNDLFVBQVVBLENBQ3hCQyxLQUFxQixFQUNyQkMsTUFBaUIsRUFDakJDLFVBQXNCLEVBQ3RCO0VBQ0EsSUFBSUMsS0FBVTtFQUNkLElBQUksT0FBT0YsTUFBTSxDQUFDRSxLQUFLLEtBQUssVUFBVSxFQUFFO0lBQ3RDLE1BQU1DLGFBQWEsR0FBR0YsVUFBVSxDQUFDRyxHQUFHLENBQUNKLE1BQU0sQ0FBQ0ssTUFBTSxFQUFFLEdBQUdMLE1BQU0sQ0FBQ00sSUFBSSxFQUFFUCxLQUFLLENBQUM7SUFDMUUsSUFBSUksYUFBYSxLQUFLSSxTQUFTLEVBQUUsT0FBT1IsS0FBSztJQUM3Q0csS0FBSyxHQUFHRixNQUFNLENBQUNFLEtBQUssQ0FBQ0MsYUFBYSxDQUFDO0VBQ3JDLENBQUMsTUFBTTtJQUNMRCxLQUFLLEdBQUdGLE1BQU0sQ0FBQ0UsS0FBSztFQUN0QjtFQUNBLElBQUk7SUFDRixNQUFNO01BQUVNLFFBQVE7TUFBRUMsT0FBTztNQUFFQztJQUFXLENBQUMsR0FBR2IsU0FBUyxDQUNqREcsTUFBTSxDQUFDSyxNQUFNLEVBQ2JILEtBQUssRUFDTEYsTUFBTSxDQUFDTSxJQUFJLEVBQ1hQLEtBQUssRUFDTEMsTUFBTSxDQUFDVyxJQUNULENBQUM7SUFDRCxPQUFPO01BQ0xILFFBQVE7TUFDUkksU0FBUyxFQUFFYixLQUFLLENBQUNhLFNBQVM7TUFDMUJILE9BQU87TUFDUEUsSUFBSSxFQUFFWixLQUFLLENBQUNZLElBQUk7TUFDaEJELFVBQVU7TUFDVkcsVUFBVSxFQUFFZCxLQUFLLENBQUNjLFVBQVU7TUFDNUJDLFNBQVMsRUFBRWYsS0FBSyxDQUFDZTtJQUNuQixDQUFDO0lBQ0Q7RUFDRixDQUFDLENBQUMsT0FBT0MsS0FBVSxFQUFFO0lBQ25CO0lBQ0E7SUFDQSxJQUFJQyxPQUFPLENBQUNDLEdBQUcsQ0FBQ0MsUUFBUSxLQUFLLFlBQVksRUFBRTtNQUN6Q0MsT0FBTyxDQUFDSixLQUFLLENBQUNBLEtBQUssQ0FBQztJQUN0QjtJQUNBLE9BQU9oQixLQUFLO0VBQ2Q7QUFDRiIsImlnbm9yZUxpc3QiOltdfQ==
36
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJub3JtYWxpemUiLCJzZXRSZWR1Y2VyIiwic3RhdGUiLCJhY3Rpb24iLCJjb250cm9sbGVyIiwidmFsdWUiLCJwcmV2aW91c1ZhbHVlIiwiZ2V0Iiwic2NoZW1hIiwiYXJncyIsInVuZGVmaW5lZCIsImVudGl0aWVzIiwiaW5kZXhlcyIsImVudGl0aWVzTWV0YSIsIm1ldGEiLCJlbmRwb2ludHMiLCJvcHRpbWlzdGljIiwibGFzdFJlc2V0IiwiZXJyb3IiLCJwcm9jZXNzIiwiZW52IiwiTk9ERV9FTlYiLCJjb25zb2xlIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3N0YXRlL3JlZHVjZXIvc2V0UmVkdWNlci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBub3JtYWxpemUgfSBmcm9tICdAZGF0YS1jbGllbnQvbm9ybWFsaXpyJztcblxuaW1wb3J0IENvbnRyb2xsZXIgZnJvbSAnLi4vLi4vY29udHJvbGxlci9Db250cm9sbGVyLmpzJztcbmltcG9ydCB0eXBlIHsgU3RhdGUsIFNldEFjdGlvbiB9IGZyb20gJy4uLy4uL3R5cGVzLmpzJztcblxuZXhwb3J0IGZ1bmN0aW9uIHNldFJlZHVjZXIoXG4gIHN0YXRlOiBTdGF0ZTx1bmtub3duPixcbiAgYWN0aW9uOiBTZXRBY3Rpb24sXG4gIGNvbnRyb2xsZXI6IENvbnRyb2xsZXIsXG4pIHtcbiAgbGV0IHZhbHVlOiBhbnk7XG4gIGlmICh0eXBlb2YgYWN0aW9uLnZhbHVlID09PSAnZnVuY3Rpb24nKSB7XG4gICAgY29uc3QgcHJldmlvdXNWYWx1ZSA9IGNvbnRyb2xsZXIuZ2V0KGFjdGlvbi5zY2hlbWEsIC4uLmFjdGlvbi5hcmdzLCBzdGF0ZSk7XG4gICAgaWYgKHByZXZpb3VzVmFsdWUgPT09IHVuZGVmaW5lZCkgcmV0dXJuIHN0YXRlO1xuICAgIHZhbHVlID0gYWN0aW9uLnZhbHVlKHByZXZpb3VzVmFsdWUpO1xuICB9IGVsc2Uge1xuICAgIHZhbHVlID0gYWN0aW9uLnZhbHVlO1xuICB9XG4gIHRyeSB7XG4gICAgY29uc3QgeyBlbnRpdGllcywgaW5kZXhlcywgZW50aXRpZXNNZXRhIH0gPSBub3JtYWxpemUoXG4gICAgICBhY3Rpb24uc2NoZW1hLFxuICAgICAgdmFsdWUsXG4gICAgICBhY3Rpb24uYXJncyxcbiAgICAgIHN0YXRlLFxuICAgICAgYWN0aW9uLm1ldGEsXG4gICAgKTtcbiAgICByZXR1cm4ge1xuICAgICAgZW50aXRpZXMsXG4gICAgICBlbmRwb2ludHM6IHN0YXRlLmVuZHBvaW50cyxcbiAgICAgIGluZGV4ZXMsXG4gICAgICBtZXRhOiBzdGF0ZS5tZXRhLFxuICAgICAgZW50aXRpZXNNZXRhLFxuICAgICAgb3B0aW1pc3RpYzogc3RhdGUub3B0aW1pc3RpYyxcbiAgICAgIGxhc3RSZXNldDogc3RhdGUubGFzdFJlc2V0LFxuICAgIH07XG4gICAgLy8gcmVkdWNlciBtdXN0IHVwZGF0ZSB0aGUgc3RhdGUsIHNvIGluIGNhc2Ugb2YgcHJvY2Vzc2luZyBlcnJvcnMgd2Ugc2ltcGx5IGNvbXB1dGUgdGhlIGVuZHBvaW50cyBpbmxpbmVcbiAgfSBjYXRjaCAoZXJyb3I6IGFueSkge1xuICAgIC8vIHRoaXMgaXMgbm90IGFsd2F5cyBidWJibGVkIHVwLCBzbyBsZXQncyBkb3VibGUgc3VyZSB0aGlzIGRvZXNuJ3QgZmFpbCBzaWxlbnRseVxuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoZXJyb3IpO1xuICAgIH1cbiAgICByZXR1cm4gc3RhdGU7XG4gIH1cbn1cbiJdLCJtYXBwaW5ncyI6IkFBQUEsU0FBU0EsU0FBUyxRQUFRLHdCQUF3QjtBQUtsRCxPQUFPLFNBQVNDLFVBQVVBLENBQ3hCQyxLQUFxQixFQUNyQkMsTUFBaUIsRUFDakJDLFVBQXNCLEVBQ3RCO0VBQ0EsSUFBSUMsS0FBVTtFQUNkLElBQUksT0FBT0YsTUFBTSxDQUFDRSxLQUFLLEtBQUssVUFBVSxFQUFFO0lBQ3RDLE1BQU1DLGFBQWEsR0FBR0YsVUFBVSxDQUFDRyxHQUFHLENBQUNKLE1BQU0sQ0FBQ0ssTUFBTSxFQUFFLEdBQUdMLE1BQU0sQ0FBQ00sSUFBSSxFQUFFUCxLQUFLLENBQUM7SUFDMUUsSUFBSUksYUFBYSxLQUFLSSxTQUFTLEVBQUUsT0FBT1IsS0FBSztJQUM3Q0csS0FBSyxHQUFHRixNQUFNLENBQUNFLEtBQUssQ0FBQ0MsYUFBYSxDQUFDO0VBQ3JDLENBQUMsTUFBTTtJQUNMRCxLQUFLLEdBQUdGLE1BQU0sQ0FBQ0UsS0FBSztFQUN0QjtFQUNBLElBQUk7SUFDRixNQUFNO01BQUVNLFFBQVE7TUFBRUMsT0FBTztNQUFFQztJQUFhLENBQUMsR0FBR2IsU0FBUyxDQUNuREcsTUFBTSxDQUFDSyxNQUFNLEVBQ2JILEtBQUssRUFDTEYsTUFBTSxDQUFDTSxJQUFJLEVBQ1hQLEtBQUssRUFDTEMsTUFBTSxDQUFDVyxJQUNULENBQUM7SUFDRCxPQUFPO01BQ0xILFFBQVE7TUFDUkksU0FBUyxFQUFFYixLQUFLLENBQUNhLFNBQVM7TUFDMUJILE9BQU87TUFDUEUsSUFBSSxFQUFFWixLQUFLLENBQUNZLElBQUk7TUFDaEJELFlBQVk7TUFDWkcsVUFBVSxFQUFFZCxLQUFLLENBQUNjLFVBQVU7TUFDNUJDLFNBQVMsRUFBRWYsS0FBSyxDQUFDZTtJQUNuQixDQUFDO0lBQ0Q7RUFDRixDQUFDLENBQUMsT0FBT0MsS0FBVSxFQUFFO0lBQ25CO0lBQ0E7SUFDQSxJQUFJQyxPQUFPLENBQUNDLEdBQUcsQ0FBQ0MsUUFBUSxLQUFLLFlBQVksRUFBRTtNQUN6Q0MsT0FBTyxDQUFDSixLQUFLLENBQUNBLEtBQUssQ0FBQztJQUN0QjtJQUNBLE9BQU9oQixLQUFLO0VBQ2Q7QUFDRiIsImlnbm9yZUxpc3QiOltdfQ==
@@ -31,7 +31,7 @@ export function setResponseReducer(state, action, controller) {
31
31
  result,
32
32
  entities,
33
33
  indexes,
34
- entityMeta
34
+ entitiesMeta
35
35
  } = normalize(action.endpoint.schema, response, action.args, state, action.meta);
36
36
  const endpoints = _extends({}, state.endpoints, {
37
37
  [action.key]: result
@@ -61,7 +61,7 @@ export function setResponseReducer(state, action, controller) {
61
61
  prevExpiresAt: (_state$meta$action$ke = state.meta[action.key]) == null ? void 0 : _state$meta$action$ke.expiresAt
62
62
  }
63
63
  }),
64
- entityMeta,
64
+ entitiesMeta,
65
65
  optimistic: filterOptimistic(state, action),
66
66
  lastReset: state.lastReset
67
67
  };
@@ -85,7 +85,7 @@ function reduceError(state, action, error) {
85
85
  if (error.name === 'AbortError') {
86
86
  // In case we abort simply undo the optimistic update and act like no fetch even occured
87
87
  // We still want those watching promises from fetch directly to observed the abort, but we don't want to
88
- // Trigger errors in this case. This means theoretically improperly built abortes useResource() could suspend forever.
88
+ // Trigger errors in this case. This means theoretically improperly built aborts useSuspense() could suspend forever.
89
89
  return _extends({}, state, {
90
90
  optimistic: filterOptimistic(state, action)
91
91
  });
@@ -107,4 +107,4 @@ function reduceError(state, action, error) {
107
107
  function filterOptimistic(state, resolvingAction) {
108
108
  return state.optimistic.filter(optimisticAction => optimisticAction.key !== resolvingAction.key || (optimisticAction.type === OPTIMISTIC ? optimisticAction.meta.fetchedAt !== resolvingAction.meta.fetchedAt : optimisticAction.meta.date > resolvingAction.meta.date));
109
109
  }
110
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJub3JtYWxpemUiLCJPUFRJTUlTVElDIiwiQWJvcnRPcHRpbWlzdGljIiwic2V0UmVzcG9uc2VSZWR1Y2VyIiwic3RhdGUiLCJhY3Rpb24iLCJjb250cm9sbGVyIiwiZXJyb3IiLCJyZWR1Y2VFcnJvciIsInJlc3BvbnNlIiwiX3N0YXRlJG1ldGEkYWN0aW9uJGtlIiwidHlwZSIsImVuZHBvaW50IiwiZ2V0T3B0aW1pc3RpY1Jlc3BvbnNlIiwiY2FsbCIsInNuYXBzaG90IiwibWV0YSIsImZldGNoZWRBdCIsImFyZ3MiLCJlIiwiY29uc3RydWN0b3IiLCJyZXN1bHQiLCJlbnRpdGllcyIsImluZGV4ZXMiLCJlbnRpdHlNZXRhIiwic2NoZW1hIiwiZW5kcG9pbnRzIiwiX2V4dGVuZHMiLCJrZXkiLCJ1cGRhdGUiLCJ1cGRhdGVycyIsIk9iamVjdCIsImtleXMiLCJmb3JFYWNoIiwiY29uc29sZSIsImRhdGUiLCJleHBpcmVzQXQiLCJwcmV2RXhwaXJlc0F0Iiwib3B0aW1pc3RpYyIsImZpbHRlck9wdGltaXN0aWMiLCJsYXN0UmVzZXQiLCJtZXNzYWdlIiwiSlNPTiIsInN0cmluZ2lmeSIsInVuZGVmaW5lZCIsInN0YXR1cyIsInByb2Nlc3MiLCJlbnYiLCJOT0RFX0VOViIsIm5hbWUiLCJlcnJvclBvbGljeSIsInJlc29sdmluZ0FjdGlvbiIsImZpbHRlciIsIm9wdGltaXN0aWNBY3Rpb24iXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc3RhdGUvcmVkdWNlci9zZXRSZXNwb25zZVJlZHVjZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgbm9ybWFsaXplIH0gZnJvbSAnQGRhdGEtY2xpZW50L25vcm1hbGl6cic7XG5cbmltcG9ydCB7IE9QVElNSVNUSUMgfSBmcm9tICcuLi8uLi9hY3Rpb25UeXBlcy5qcyc7XG5pbXBvcnQgQWJvcnRPcHRpbWlzdGljIGZyb20gJy4uLy4uL2NvbnRyb2xsZXIvQWJvcnRPcHRpbWlzdGljLmpzJztcbmltcG9ydCB0eXBlIENvbnRyb2xsZXIgZnJvbSAnLi4vLi4vY29udHJvbGxlci9Db250cm9sbGVyLmpzJztcbmltcG9ydCB0eXBlIHtcbiAgU3RhdGUsXG4gIFNldFJlc3BvbnNlQWN0aW9uLFxuICBPcHRpbWlzdGljQWN0aW9uLFxufSBmcm9tICcuLi8uLi90eXBlcy5qcyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBzZXRSZXNwb25zZVJlZHVjZXIoXG4gIHN0YXRlOiBTdGF0ZTx1bmtub3duPixcbiAgYWN0aW9uOiBPcHRpbWlzdGljQWN0aW9uIHwgU2V0UmVzcG9uc2VBY3Rpb24sXG4gIGNvbnRyb2xsZXI6IENvbnRyb2xsZXIsXG4pIHtcbiAgaWYgKGFjdGlvbi5lcnJvcikge1xuICAgIHJldHVybiByZWR1Y2VFcnJvcihzdGF0ZSwgYWN0aW9uLCBhY3Rpb24ucmVzcG9uc2UpO1xuICB9XG4gIHRyeSB7XG4gICAgbGV0IHJlc3BvbnNlOiBhbnk7XG4gICAgLy8gZm9yIHRydWUgc2V0J3MgcmVzcG9uc2UgaXMgY29udGFpbmVkIGluIGFjdGlvblxuICAgIGlmIChhY3Rpb24udHlwZSA9PT0gT1BUSU1JU1RJQykge1xuICAgICAgLy8gdGhpcyBzaG91bGQgbmV2ZXIgaGFwcGVuXG4gICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgICAgIGlmICghYWN0aW9uLmVuZHBvaW50LmdldE9wdGltaXN0aWNSZXNwb25zZSkgcmV0dXJuIHN0YXRlO1xuICAgICAgdHJ5IHtcbiAgICAgICAgLy8gY29tcHV0ZSBvcHRpbWlzdGljIHJlc3BvbnNlIGJhc2VkIG9uIGN1cnJlbnQgc3RhdGVcbiAgICAgICAgcmVzcG9uc2UgPSBhY3Rpb24uZW5kcG9pbnQuZ2V0T3B0aW1pc3RpY1Jlc3BvbnNlLmNhbGwoXG4gICAgICAgICAgYWN0aW9uLmVuZHBvaW50LFxuICAgICAgICAgIGNvbnRyb2xsZXIuc25hcHNob3Qoc3RhdGUsIGFjdGlvbi5tZXRhLmZldGNoZWRBdCksXG4gICAgICAgICAgLi4uYWN0aW9uLmFyZ3MsXG4gICAgICAgICk7XG4gICAgICB9IGNhdGNoIChlOiBhbnkpIHtcbiAgICAgICAgLy8gQWJvcnRPcHRpbWlzdGljIG1lYW5zICdkbyBub3RoaW5nJywgb3RoZXJ3aXNlIHdlIGNvdW50IHRoZSBleGNlcHRpb24gYXMgZW5kcG9pbnQgZmFpbHVyZVxuICAgICAgICBpZiAoZS5jb25zdHJ1Y3RvciA9PT0gQWJvcnRPcHRpbWlzdGljKSB7XG4gICAgICAgICAgcmV0dXJuIHN0YXRlO1xuICAgICAgICB9XG4gICAgICAgIHRocm93IGU7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHJlc3BvbnNlID0gYWN0aW9uLnJlc3BvbnNlO1xuICAgIH1cbiAgICBjb25zdCB7IHJlc3VsdCwgZW50aXRpZXMsIGluZGV4ZXMsIGVudGl0eU1ldGEgfSA9IG5vcm1hbGl6ZShcbiAgICAgIGFjdGlvbi5lbmRwb2ludC5zY2hlbWEsXG4gICAgICByZXNwb25zZSxcbiAgICAgIGFjdGlvbi5hcmdzLFxuICAgICAgc3RhdGUsXG4gICAgICBhY3Rpb24ubWV0YSxcbiAgICApO1xuICAgIGNvbnN0IGVuZHBvaW50czogUmVjb3JkPHN0cmluZywgdW5rbm93bj4gPSB7XG4gICAgICAuLi5zdGF0ZS5lbmRwb2ludHMsXG4gICAgICBbYWN0aW9uLmtleV06IHJlc3VsdCxcbiAgICB9O1xuICAgIHRyeSB7XG4gICAgICBpZiAoYWN0aW9uLmVuZHBvaW50LnVwZGF0ZSkge1xuICAgICAgICBjb25zdCB1cGRhdGVycyA9IGFjdGlvbi5lbmRwb2ludC51cGRhdGUocmVzdWx0LCAuLi5hY3Rpb24uYXJncyk7XG4gICAgICAgIE9iamVjdC5rZXlzKHVwZGF0ZXJzKS5mb3JFYWNoKGtleSA9PiB7XG4gICAgICAgICAgZW5kcG9pbnRzW2tleV0gPSB1cGRhdGVyc1trZXldKGVuZHBvaW50c1trZXldKTtcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgICAvLyBubyByZWFzb24gdG8gY29tcGxldGVseSBmYWlsIGJlY2F1c2Ugb2YgdXNlci1jb2RlIGVycm9yXG4gICAgICAvLyBpbnRlZ3JpdHkgb2YgdGhpcyBzdGF0ZSB1cGRhdGUgaXMgc3RpbGwgZ3VhcmFudGVlZFxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmVycm9yKFxuICAgICAgICBgVGhlIGZvbGxvd2luZyBlcnJvciBvY2N1cmVkIGR1cmluZyBFbmRwb2ludC51cGRhdGUoKSBmb3IgJHthY3Rpb24ua2V5fWAsXG4gICAgICApO1xuICAgICAgY29uc29sZS5lcnJvcihlcnJvcik7XG4gICAgfVxuICAgIHJldHVybiB7XG4gICAgICBlbnRpdGllcyxcbiAgICAgIGVuZHBvaW50cyxcbiAgICAgIGluZGV4ZXMsXG4gICAgICBtZXRhOiB7XG4gICAgICAgIC4uLnN0YXRlLm1ldGEsXG4gICAgICAgIFthY3Rpb24ua2V5XToge1xuICAgICAgICAgIGRhdGU6IGFjdGlvbi5tZXRhLmRhdGUsXG4gICAgICAgICAgZmV0Y2hlZEF0OiBhY3Rpb24ubWV0YS5mZXRjaGVkQXQsXG4gICAgICAgICAgZXhwaXJlc0F0OiBhY3Rpb24ubWV0YS5leHBpcmVzQXQsXG4gICAgICAgICAgcHJldkV4cGlyZXNBdDogc3RhdGUubWV0YVthY3Rpb24ua2V5XT8uZXhwaXJlc0F0LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIGVudGl0eU1ldGEsXG4gICAgICBvcHRpbWlzdGljOiBmaWx0ZXJPcHRpbWlzdGljKHN0YXRlLCBhY3Rpb24pLFxuICAgICAgbGFzdFJlc2V0OiBzdGF0ZS5sYXN0UmVzZXQsXG4gICAgfTtcbiAgICAvLyByZWR1Y2VyIG11c3QgdXBkYXRlIHRoZSBzdGF0ZSwgc28gaW4gY2FzZSBvZiBwcm9jZXNzaW5nIGVycm9ycyB3ZSBzaW1wbHkgY29tcHV0ZSB0aGUgZW5kcG9pbnRzIGlubGluZVxuICB9IGNhdGNoIChlcnJvcjogYW55KSB7XG4gICAgaWYgKHR5cGVvZiBlcnJvciA9PT0gJ29iamVjdCcpIHtcbiAgICAgIGVycm9yLm1lc3NhZ2UgPSBgRXJyb3IgcHJvY2Vzc2luZyAke1xuICAgICAgICBhY3Rpb24ua2V5XG4gICAgICB9XFxuXFxuRnVsbCBTY2hlbWE6ICR7SlNPTi5zdHJpbmdpZnkoXG4gICAgICAgIGFjdGlvbi5lbmRwb2ludC5zY2hlbWEsXG4gICAgICAgIHVuZGVmaW5lZCxcbiAgICAgICAgMixcbiAgICAgICl9XFxuXFxuRXJyb3I6XFxuJHtlcnJvci5tZXNzYWdlfWA7XG4gICAgICBpZiAoJ3Jlc3BvbnNlJyBpbiBhY3Rpb24pIGVycm9yLnJlc3BvbnNlID0gYWN0aW9uLnJlc3BvbnNlO1xuICAgICAgZXJyb3Iuc3RhdHVzID0gNDAwO1xuICAgIH1cblxuICAgIC8vIHRoaXMgaXMgbm90IGFsd2F5cyBidWJibGVkIHVwLCBzbyBsZXQncyBkb3VibGUgc3VyZSB0aGlzIGRvZXNuJ3QgZmFpbCBzaWxlbnRseVxuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoZXJyb3IpO1xuICAgIH1cbiAgICByZXR1cm4gcmVkdWNlRXJyb3Ioc3RhdGUsIGFjdGlvbiwgZXJyb3IpO1xuICB9XG59XG5cbmZ1bmN0aW9uIHJlZHVjZUVycm9yKFxuICBzdGF0ZTogU3RhdGU8dW5rbm93bj4sXG4gIGFjdGlvbjogU2V0UmVzcG9uc2VBY3Rpb24gfCBPcHRpbWlzdGljQWN0aW9uLFxuICBlcnJvcjogYW55LFxuKTogU3RhdGU8dW5rbm93bj4ge1xuICBpZiAoZXJyb3IubmFtZSA9PT0gJ0Fib3J0RXJyb3InKSB7XG4gICAgLy8gSW4gY2FzZSB3ZSBhYm9ydCBzaW1wbHkgdW5kbyB0aGUgb3B0aW1pc3RpYyB1cGRhdGUgYW5kIGFjdCBsaWtlIG5vIGZldGNoIGV2ZW4gb2NjdXJlZFxuICAgIC8vIFdlIHN0aWxsIHdhbnQgdGhvc2Ugd2F0Y2hpbmcgcHJvbWlzZXMgZnJvbSBmZXRjaCBkaXJlY3RseSB0byBvYnNlcnZlZCB0aGUgYWJvcnQsIGJ1dCB3ZSBkb24ndCB3YW50IHRvXG4gICAgLy8gVHJpZ2dlciBlcnJvcnMgaW4gdGhpcyBjYXNlLiBUaGlzIG1lYW5zIHRoZW9yZXRpY2FsbHkgaW1wcm9wZXJseSBidWlsdCBhYm9ydGVzIHVzZVJlc291cmNlKCkgY291bGQgc3VzcGVuZCBmb3JldmVyLlxuICAgIHJldHVybiB7XG4gICAgICAuLi5zdGF0ZSxcbiAgICAgIG9wdGltaXN0aWM6IGZpbHRlck9wdGltaXN0aWMoc3RhdGUsIGFjdGlvbiksXG4gICAgfTtcbiAgfVxuICByZXR1cm4ge1xuICAgIC4uLnN0YXRlLFxuICAgIG1ldGE6IHtcbiAgICAgIC4uLnN0YXRlLm1ldGEsXG4gICAgICBbYWN0aW9uLmtleV06IHtcbiAgICAgICAgZGF0ZTogYWN0aW9uLm1ldGEuZGF0ZSxcbiAgICAgICAgZmV0Y2hlZEF0OiBhY3Rpb24ubWV0YS5mZXRjaGVkQXQsXG4gICAgICAgIGV4cGlyZXNBdDogYWN0aW9uLm1ldGEuZXhwaXJlc0F0LFxuICAgICAgICBlcnJvcixcbiAgICAgICAgZXJyb3JQb2xpY3k6IGFjdGlvbi5lbmRwb2ludC5lcnJvclBvbGljeT8uKGVycm9yKSxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBvcHRpbWlzdGljOiBmaWx0ZXJPcHRpbWlzdGljKHN0YXRlLCBhY3Rpb24pLFxuICB9O1xufVxuLyoqIEZpbHRlciBhbGwgcmVxdWVzdHMgd2l0aCBzYW1lIHNlcmlhbGl6YXRpb24gdGhhdCBkaWQgbm90IHN0YXJ0IGFmdGVyIHRoZSByZXNvbHZpbmcgcmVxdWVzdCAqL1xuZnVuY3Rpb24gZmlsdGVyT3B0aW1pc3RpYyhcbiAgc3RhdGU6IFN0YXRlPHVua25vd24+LFxuICByZXNvbHZpbmdBY3Rpb246IFNldFJlc3BvbnNlQWN0aW9uIHwgT3B0aW1pc3RpY0FjdGlvbixcbikge1xuICByZXR1cm4gc3RhdGUub3B0aW1pc3RpYy5maWx0ZXIoXG4gICAgb3B0aW1pc3RpY0FjdGlvbiA9PlxuICAgICAgb3B0aW1pc3RpY0FjdGlvbi5rZXkgIT09IHJlc29sdmluZ0FjdGlvbi5rZXkgfHxcbiAgICAgIChvcHRpbWlzdGljQWN0aW9uLnR5cGUgPT09IE9QVElNSVNUSUMgP1xuICAgICAgICBvcHRpbWlzdGljQWN0aW9uLm1ldGEuZmV0Y2hlZEF0ICE9PSByZXNvbHZpbmdBY3Rpb24ubWV0YS5mZXRjaGVkQXRcbiAgICAgIDogb3B0aW1pc3RpY0FjdGlvbi5tZXRhLmRhdGUgPiByZXNvbHZpbmdBY3Rpb24ubWV0YS5kYXRlKSxcbiAgKTtcbn1cbiJdLCJtYXBwaW5ncyI6IjtBQUFBLFNBQVNBLFNBQVMsUUFBUSx3QkFBd0I7QUFFbEQsU0FBU0MsVUFBVSxRQUFRLHNCQUFzQjtBQUNqRCxPQUFPQyxlQUFlLE1BQU0scUNBQXFDO0FBUWpFLE9BQU8sU0FBU0Msa0JBQWtCQSxDQUNoQ0MsS0FBcUIsRUFDckJDLE1BQTRDLEVBQzVDQyxVQUFzQixFQUN0QjtFQUNBLElBQUlELE1BQU0sQ0FBQ0UsS0FBSyxFQUFFO0lBQ2hCLE9BQU9DLFdBQVcsQ0FBQ0osS0FBSyxFQUFFQyxNQUFNLEVBQUVBLE1BQU0sQ0FBQ0ksUUFBUSxDQUFDO0VBQ3BEO0VBQ0EsSUFBSTtJQUFBLElBQUFDLHFCQUFBO0lBQ0YsSUFBSUQsUUFBYTtJQUNqQjtJQUNBLElBQUlKLE1BQU0sQ0FBQ00sSUFBSSxLQUFLVixVQUFVLEVBQUU7TUFDOUI7TUFDQTtNQUNBLElBQUksQ0FBQ0ksTUFBTSxDQUFDTyxRQUFRLENBQUNDLHFCQUFxQixFQUFFLE9BQU9ULEtBQUs7TUFDeEQsSUFBSTtRQUNGO1FBQ0FLLFFBQVEsR0FBR0osTUFBTSxDQUFDTyxRQUFRLENBQUNDLHFCQUFxQixDQUFDQyxJQUFJLENBQ25EVCxNQUFNLENBQUNPLFFBQVEsRUFDZk4sVUFBVSxDQUFDUyxRQUFRLENBQUNYLEtBQUssRUFBRUMsTUFBTSxDQUFDVyxJQUFJLENBQUNDLFNBQVMsQ0FBQyxFQUNqRCxHQUFHWixNQUFNLENBQUNhLElBQ1osQ0FBQztNQUNILENBQUMsQ0FBQyxPQUFPQyxD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WUFBWSxFQUFFO01BQ3pDZCxPQUFPLENBQUMzQixLQUFLLENBQUNBLEtBQUssQ0FBQztJQUN0QjtJQUNBLE9BQU9DLFdBQVcsQ0FBQ0osS0FBSyxFQUFFQyxNQUFNLEVBQUVFLEtBQUssQ0FBQztFQUMxQztBQUNGO0FBRUEsU0FBU0MsV0FBV0EsQ0FDbEJKLEtBQXFCLEVBQ3JCQyxNQUE0QyxFQUM1Q0UsS0FBVSxFQUNNO0VBQ2hCLElBQUlBLEtBQUssQ0FBQzBDLElBQUksS0FBSyxZQUFZLEVBQUU7SUFDL0I7SUFDQTtJQUNBO0lBQ0EsT0FBQXRCLFFBQUEsS0FDS3ZCLEtBQUs7TUFDUmtDLFVBQVUsRUFBRUMsZ0JBQWdCLENBQUNuQyxLQUFLLEVBQUVDLE1BQU07SUFBQztFQUUvQztFQUNBLE9BQUFzQixRQUFBLEtBQ0t2QixLQUFLO0lBQ1JZLElBQUksRUFBQVcsUUFBQSxLQUNDdkIsS0FBSyxDQUFDWSxJQUFJO01BQ2IsQ0FBQ1gsTUFBTSxDQUFDdUIsR0FBRyxHQUFHO1FBQ1pPLElBQUksRUFBRTlCLE1BQU0sQ0FBQ1csSUFBSSxDQUFDbUIsSUFBSTtRQUN0QmxCLFNBQVMsRUFBRVosTUFBTSxDQUFDVyxJQUFJLENBQUNDLFNBQVM7UUFDaENtQixTQUFTLEVBQUUvQixNQUFNLENBQUNXLElBQUksQ0FBQ29CLFNBQVM7UUFDaEM3QixLQUFLO1FBQ0wyQyxXQUFXLEVBQUU3QyxNQUFNLENBQUNPLFFBQVEsQ0FBQ3NDLFdBQVcsb0JBQTNCN0MsTUFBTSxDQUFDTyxRQUFRLENBQUNzQyxXQUFXLENBQUczQyxLQUFLO01BQ2xEO0lBQUMsRUFDRjtJQUNEK0IsVUFBVSxFQUFFQyxnQkFBZ0IsQ0FBQ25DLEtBQUssRUFBRUMsTUFBTTtFQUFDO0FBRS9DO0FBQ0E7QUFDQSxTQUFTa0MsZ0JBQWdCQSxDQUN2Qm5DLEtBQXFCLEVBQ3JCK0MsZUFBcUQsRUFDckQ7RUFDQSxPQUFPL0MsS0FBSyxDQUFDa0MsVUFBVSxDQUFDYyxNQUFNLENBQzVCQyxnQkFBZ0IsSUFDZEEsZ0JBQWdCLENBQUN6QixHQUFHLEtBQUt1QixlQUFlLENBQUN2QixHQUFHLEtBQzNDeUIsZ0JBQWdCLENBQUMxQyxJQUFJLEtBQUtWLFVBQVUsR0FDbkNvRCxnQkFBZ0IsQ0FBQ3JDLElBQUksQ0FBQ0MsU0FBUyxLQUFLa0MsZUFBZSxDQUFDbkMsSUFBSSxDQUFDQyxTQUFTLEdBQ2xFb0MsZ0JBQWdCLENBQUNyQyxJQUFJLENBQUNtQixJQUFJLEdBQUdnQixlQUFlLENBQUNuQyxJQUFJLENBQUNtQixJQUFJLENBQzVELENBQUM7QUFDSCIsImlnbm9yZUxpc3QiOltdfQ==
110
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJub3JtYWxpemUiLCJPUFRJTUlTVElDIiwiQWJvcnRPcHRpbWlzdGljIiwic2V0UmVzcG9uc2VSZWR1Y2VyIiwic3RhdGUiLCJhY3Rpb24iLCJjb250cm9sbGVyIiwiZXJyb3IiLCJyZWR1Y2VFcnJvciIsInJlc3BvbnNlIiwiX3N0YXRlJG1ldGEkYWN0aW9uJGtlIiwidHlwZSIsImVuZHBvaW50IiwiZ2V0T3B0aW1pc3RpY1Jlc3BvbnNlIiwiY2FsbCIsInNuYXBzaG90IiwibWV0YSIsImZldGNoZWRBdCIsImFyZ3MiLCJlIiwiY29uc3RydWN0b3IiLCJyZXN1bHQiLCJlbnRpdGllcyIsImluZGV4ZXMiLCJlbnRpdGllc01ldGEiLCJzY2hlbWEiLCJlbmRwb2ludHMiLCJfZXh0ZW5kcyIsImtleSIsInVwZGF0ZSIsInVwZGF0ZXJzIiwiT2JqZWN0Iiwia2V5cyIsImZvckVhY2giLCJjb25zb2xlIiwiZGF0ZSIsImV4cGlyZXNBdCIsInByZXZFeHBpcmVzQXQiLCJvcHRpbWlzdGljIiwiZmlsdGVyT3B0aW1pc3RpYyIsImxhc3RSZXNldCIsIm1lc3NhZ2UiLCJKU09OIiwic3RyaW5naWZ5IiwidW5kZWZpbmVkIiwic3RhdHVzIiwicHJvY2VzcyIsImVudiIsIk5PREVfRU5WIiwibmFtZSIsImVycm9yUG9saWN5IiwicmVzb2x2aW5nQWN0aW9uIiwiZmlsdGVyIiwib3B0aW1pc3RpY0FjdGlvbiJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zdGF0ZS9yZWR1Y2VyL3NldFJlc3BvbnNlUmVkdWNlci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBub3JtYWxpemUgfSBmcm9tICdAZGF0YS1jbGllbnQvbm9ybWFsaXpyJztcblxuaW1wb3J0IHsgT1BUSU1JU1RJQyB9IGZyb20gJy4uLy4uL2FjdGlvblR5cGVzLmpzJztcbmltcG9ydCBBYm9ydE9wdGltaXN0aWMgZnJvbSAnLi4vLi4vY29udHJvbGxlci9BYm9ydE9wdGltaXN0aWMuanMnO1xuaW1wb3J0IHR5cGUgQ29udHJvbGxlciBmcm9tICcuLi8uLi9jb250cm9sbGVyL0NvbnRyb2xsZXIuanMnO1xuaW1wb3J0IHR5cGUge1xuICBTdGF0ZSxcbiAgU2V0UmVzcG9uc2VBY3Rpb24sXG4gIE9wdGltaXN0aWNBY3Rpb24sXG59IGZyb20gJy4uLy4uL3R5cGVzLmpzJztcblxuZXhwb3J0IGZ1bmN0aW9uIHNldFJlc3BvbnNlUmVkdWNlcihcbiAgc3RhdGU6IFN0YXRlPHVua25vd24+LFxuICBhY3Rpb246IE9wdGltaXN0aWNBY3Rpb24gfCBTZXRSZXNwb25zZUFjdGlvbixcbiAgY29udHJvbGxlcjogQ29udHJvbGxlcixcbikge1xuICBpZiAoYWN0aW9uLmVycm9yKSB7XG4gICAgcmV0dXJuIHJlZHVjZUVycm9yKHN0YXRlLCBhY3Rpb24sIGFjdGlvbi5yZXNwb25zZSk7XG4gIH1cbiAgdHJ5IHtcbiAgICBsZXQgcmVzcG9uc2U6IGFueTtcbiAgICAvLyBmb3IgdHJ1ZSBzZXQncyByZXNwb25zZSBpcyBjb250YWluZWQgaW4gYWN0aW9uXG4gICAgaWYgKGFjdGlvbi50eXBlID09PSBPUFRJTUlTVElDKSB7XG4gICAgICAvLyB0aGlzIHNob3VsZCBuZXZlciBoYXBwZW5cbiAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgICAgaWYgKCFhY3Rpb24uZW5kcG9pbnQuZ2V0T3B0aW1pc3RpY1Jlc3BvbnNlKSByZXR1cm4gc3RhdGU7XG4gICAgICB0cnkge1xuICAgICAgICAvLyBjb21wdXRlIG9wdGltaXN0aWMgcmVzcG9uc2UgYmFzZWQgb24gY3VycmVudCBzdGF0ZVxuICAgICAgICByZXNwb25zZSA9IGFjdGlvbi5lbmRwb2ludC5nZXRPcHRpbWlzdGljUmVzcG9uc2UuY2FsbChcbiAgICAgICAgICBhY3Rpb24uZW5kcG9pbnQsXG4gICAgICAgICAgY29udHJvbGxlci5zbmFwc2hvdChzdGF0ZSwgYWN0aW9uLm1ldGEuZmV0Y2hlZEF0KSxcbiAgICAgICAgICAuLi5hY3Rpb24uYXJncyxcbiAgICAgICAgKTtcbiAgICAgIH0gY2F0Y2ggKGU6IGFueSkge1xuICAgICAgICAvLyBBYm9ydE9wdGltaXN0aWMgbWVhbnMgJ2RvIG5vdGhpbmcnLCBvdGhlcndpc2Ugd2UgY291bnQgdGhlIGV4Y2VwdGlvbiBhcyBlbmRwb2ludCBmYWlsdXJlXG4gICAgICAgIGlmIChlLmNvbnN0cnVjdG9yID09PSBBYm9ydE9wdGltaXN0aWMpIHtcbiAgICAgICAgICByZXR1cm4gc3RhdGU7XG4gICAgICAgIH1cbiAgICAgICAgdGhyb3cgZTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgcmVzcG9uc2UgPSBhY3Rpb24ucmVzcG9uc2U7XG4gICAgfVxuICAgIGNvbnN0IHsgcmVzdWx0LCBlbnRpdGllcywgaW5kZXhlcywgZW50aXRpZXNNZXRhIH0gPSBub3JtYWxpemUoXG4gICAgICBhY3Rpb24uZW5kcG9pbnQuc2NoZW1hLFxuICAgICAgcmVzcG9uc2UsXG4gICAgICBhY3Rpb24uYXJncyxcbiAgICAgIHN0YXRlLFxuICAgICAgYWN0aW9uLm1ldGEsXG4gICAgKTtcbiAgICBjb25zdCBlbmRwb2ludHM6IFJlY29yZDxzdHJpbmcsIHVua25vd24+ID0ge1xuICAgICAgLi4uc3RhdGUuZW5kcG9pbnRzLFxuICAgICAgW2FjdGlvbi5rZXldOiByZXN1bHQsXG4gICAgfTtcbiAgICB0cnkge1xuICAgICAgaWYgKGFjdGlvbi5lbmRwb2ludC51cGRhdGUpIHtcbiAgICAgICAgY29uc3QgdXBkYXRlcnMgPSBhY3Rpb24uZW5kcG9pbnQudXBkYXRlKHJlc3VsdCwgLi4uYWN0aW9uLmFyZ3MpO1xuICAgICAgICBPYmplY3Qua2V5cyh1cGRhdGVycykuZm9yRWFjaChrZXkgPT4ge1xuICAgICAgICAgIGVuZHBvaW50c1trZXldID0gdXBkYXRlcnNba2V5XShlbmRwb2ludHNba2V5XSk7XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgICAgLy8gbm8gcmVhc29uIHRvIGNvbXBsZXRlbHkgZmFpbCBiZWNhdXNlIG9mIHVzZXItY29kZSBlcnJvclxuICAgICAgLy8gaW50ZWdyaXR5IG9mIHRoaXMgc3RhdGUgdXBkYXRlIGlzIHN0aWxsIGd1YXJhbnRlZWRcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcihcbiAgICAgICAgYFRoZSBmb2xsb3dpbmcgZXJyb3Igb2NjdXJlZCBkdXJpbmcgRW5kcG9pbnQudXBkYXRlKCkgZm9yICR7YWN0aW9uLmtleX1gLFxuICAgICAgKTtcbiAgICAgIGNvbnNvbGUuZXJyb3IoZXJyb3IpO1xuICAgIH1cbiAgICByZXR1cm4ge1xuICAgICAgZW50aXRpZXMsXG4gICAgICBlbmRwb2ludHMsXG4gICAgICBpbmRleGVzLFxuICAgICAgbWV0YToge1xuICAgICAgICAuLi5zdGF0ZS5tZXRhLFxuICAgICAgICBbYWN0aW9uLmtleV06IHtcbiAgICAgICAgICBkYXRlOiBhY3Rpb24ubWV0YS5kYXRlLFxuICAgICAgICAgIGZldGNoZWRBdDogYWN0aW9uLm1ldGEuZmV0Y2hlZEF0LFxuICAgICAgICAgIGV4cGlyZXNBdDogYWN0aW9uLm1ldGEuZXhwaXJlc0F0LFxuICAgICAgICAgIHByZXZFeHBpcmVzQXQ6IHN0YXRlLm1ldGFbYWN0aW9uLmtleV0/LmV4cGlyZXNBdCxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICBlbnRpdGllc01ldGEsXG4gICAgICBvcHRpbWlzdGljOiBmaWx0ZXJPcHRpbWlzdGljKHN0YXRlLCBhY3Rpb24pLFxuICAgICAgbGFzdFJlc2V0OiBzdGF0ZS5sYXN0UmVzZXQsXG4gICAgfTtcbiAgICAvLyByZWR1Y2VyIG11c3QgdXBkYXRlIHRoZSBzdGF0ZSwgc28gaW4gY2FzZSBvZiBwcm9jZXNzaW5nIGVycm9ycyB3ZSBzaW1wbHkgY29tcHV0ZSB0aGUgZW5kcG9pbnRzIGlubGluZVxuICB9IGNhdGNoIChlcnJvcjogYW55KSB7XG4gICAgaWYgKHR5cGVvZiBlcnJvciA9PT0gJ29iamVjdCcpIHtcbiAgICAgIGVycm9yLm1lc3NhZ2UgPSBgRXJyb3IgcHJvY2Vzc2luZyAke1xuICAgICAgICBhY3Rpb24ua2V5XG4gICAgICB9XFxuXFxuRnVsbCBTY2hlbWE6ICR7SlNPTi5zdHJpbmdpZnkoXG4gICAgICAgIGFjdGlvbi5lbmRwb2ludC5zY2hlbWEsXG4gICAgICAgIHVuZGVmaW5lZCxcbiAgICAgICAgMixcbiAgICAgICl9XFxuXFxuRXJyb3I6XFxuJHtlcnJvci5tZXNzYWdlfWA7XG4gICAgICBpZiAoJ3Jlc3BvbnNlJyBpbiBhY3Rpb24pIGVycm9yLnJlc3BvbnNlID0gYWN0aW9uLnJlc3BvbnNlO1xuICAgICAgZXJyb3Iuc3RhdHVzID0gNDAwO1xuICAgIH1cblxuICAgIC8vIHRoaXMgaXMgbm90IGFsd2F5cyBidWJibGVkIHVwLCBzbyBsZXQncyBkb3VibGUgc3VyZSB0aGlzIGRvZXNuJ3QgZmFpbCBzaWxlbnRseVxuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoZXJyb3IpO1xuICAgIH1cbiAgICByZXR1cm4gcmVkdWNlRXJyb3Ioc3RhdGUsIGFjdGlvbiwgZXJyb3IpO1xuICB9XG59XG5cbmZ1bmN0aW9uIHJlZHVjZUVycm9yKFxuICBzdGF0ZTogU3RhdGU8dW5rbm93bj4sXG4gIGFjdGlvbjogU2V0UmVzcG9uc2VBY3Rpb24gfCBPcHRpbWlzdGljQWN0aW9uLFxuICBlcnJvcjogYW55LFxuKTogU3RhdGU8dW5rbm93bj4ge1xuICBpZiAoZXJyb3IubmFtZSA9PT0gJ0Fib3J0RXJyb3InKSB7XG4gICAgLy8gSW4gY2FzZSB3ZSBhYm9ydCBzaW1wbHkgdW5kbyB0aGUgb3B0aW1pc3RpYyB1cGRhdGUgYW5kIGFjdCBsaWtlIG5vIGZldGNoIGV2ZW4gb2NjdXJlZFxuICAgIC8vIFdlIHN0aWxsIHdhbnQgdGhvc2Ugd2F0Y2hpbmcgcHJvbWlzZXMgZnJvbSBmZXRjaCBkaXJlY3RseSB0byBvYnNlcnZlZCB0aGUgYWJvcnQsIGJ1dCB3ZSBkb24ndCB3YW50IHRvXG4gICAgLy8gVHJpZ2dlciBlcnJvcnMgaW4gdGhpcyBjYXNlLiBUaGlzIG1lYW5zIHRoZW9yZXRpY2FsbHkgaW1wcm9wZXJseSBidWlsdCBhYm9ydHMgdXNlU3VzcGVuc2UoKSBjb3VsZCBzdXNwZW5kIGZvcmV2ZXIuXG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLnN0YXRlLFxuICAgICAgb3B0aW1pc3RpYzogZmlsdGVyT3B0aW1pc3RpYyhzdGF0ZSwgYWN0aW9uKSxcbiAgICB9O1xuICB9XG4gIHJldHVybiB7XG4gICAgLi4uc3RhdGUsXG4gICAgbWV0YToge1xuICAgICAgLi4uc3RhdGUubWV0YSxcbiAgICAgIFthY3Rpb24ua2V5XToge1xuICAgICAgICBkYXRlOiBhY3Rpb24ubWV0YS5kYXRlLFxuICAgICAgICBmZXRjaGVkQXQ6IGFjdGlvbi5tZXRhLmZldGNoZWRBdCxcbiAgICAgICAgZXhwaXJlc0F0OiBhY3Rpb24ubWV0YS5leHBpcmVzQXQsXG4gICAgICAgIGVycm9yLFxuICAgICAgICBlcnJvclBvbGljeTogYWN0aW9uLmVuZHBvaW50LmVycm9yUG9saWN5Py4oZXJyb3IpLFxuICAgICAgfSxcbiAgICB9LFxuICAgIG9wdGltaXN0aWM6IGZpbHRlck9wdGltaXN0aWMoc3RhdGUsIGFjdGlvbiksXG4gIH07XG59XG4vKiogRmlsdGVyIGFsbCByZXF1ZXN0cyB3aXRoIHNhbWUgc2VyaWFsaXphdGlvbiB0aGF0IGRpZCBub3Qgc3RhcnQgYWZ0ZXIgdGhlIHJlc29sdmluZyByZXF1ZXN0ICovXG5mdW5jdGlvbiBmaWx0ZXJPcHRpbWlzdGljKFxuICBzdGF0ZTogU3RhdGU8dW5rbm93bj4sXG4gIHJlc29sdmluZ0FjdGlvbjogU2V0UmVzcG9uc2VBY3Rpb24gfCBPcHRpbWlzdGljQWN0aW9uLFxuKSB7XG4gIHJldHVybiBzdGF0ZS5vcHRpbWlzdGljLmZpbHRlcihcbiAgICBvcHRpbWlzdGljQWN0aW9uID0+XG4gICAgICBvcHRpbWlzdGljQWN0aW9uLmtleSAhPT0gcmVzb2x2aW5nQWN0aW9uLmtleSB8fFxuICAgICAgKG9wdGltaXN0aWNBY3Rpb24udHlwZSA9PT0gT1BUSU1JU1RJQyA/XG4gICAgICAgIG9wdGltaXN0aWNBY3Rpb24ubWV0YS5mZXRjaGVkQXQgIT09IHJlc29sdmluZ0FjdGlvbi5tZXRhLmZldGNoZWRBdFxuICAgICAgOiBvcHRpbWlzdGljQWN0aW9uLm1ldGEuZGF0ZSA+IHJlc29sdmluZ0FjdGlvbi5tZXRhLmRhdGUpLFxuICApO1xufVxuIl0sIm1hcHBpbmdzIjoiO0FBQUEsU0FBU0EsU0FBUyxRQUFRLHdCQUF3QjtBQUVsRCxTQUFTQyxVQUFVLFFBQVEsc0JBQXNCO0FBQ2pELE9BQU9DLGVBQWUsTUFBTSxxQ0FBcUM7QUFRakUsT0FBTyxTQUFTQyxrQkFBa0JBLENBQ2hDQyxLQUFxQixFQUNyQkMsTUFBNEMsRUFDNUNDLFVBQXNCLEVBQ3RCO0VBQ0EsSUFBSUQsTUFBTSxDQUFDRSxLQUFLLEVBQUU7SUFDaEIsT0FBT0MsV0FBVyxDQUFDSixLQUFLLEVBQUVDLE1BQU0sRUFBRUEsTUFBTSxDQUFDSSxRQUFRLENBQUM7RUFDcEQ7RUFDQSxJQUFJO0lBQUEsSUFBQUMscUJBQUE7SUFDRixJQUFJRCxRQUFhO0lBQ2pCO0lBQ0EsSUFBSUosTUFBTSxDQUFDTSxJQUFJLEtBQUtWLFVBQVUsRUFBRTtNQUM5QjtNQUNBO01BQ0EsSUFBSSxDQUFDSSxNQUFNLENBQUNPLFFBQVEsQ0FBQ0MscUJBQXFCLEVBQUUsT0FBT1QsS0FBSztNQUN4RCxJQUFJO1FBQ0Y7UUFDQUssUUFBUSxHQUFHSixNQUFNLENBQUNPLFFBQVEsQ0FBQ0MscUJBQXFCLENBQUNDLElBQUksQ0FDbkRULE1BQU0sQ0FBQ08sUUFBUSxFQUNmTixVQUFVLENBQUNTLFFBQVEsQ0FBQ1gsS0FBSyxFQUFFQyxNQUFNLENBQUNXLElBQUksQ0FBQ0MsU0FBUyxDQUFDLEVBQ2pELEdBQUdaLE1BQU0sQ0FBQ2EsSUFDWixDQUFDO01BQ0gsQ0FBQyxDQUFDLE9B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S0FBSyxZQUFZLEVBQUU7TUFDekNkLE9BQU8sQ0FBQzNCLEtBQUssQ0FBQ0EsS0FBSyxDQUFDO0lBQ3RCO0lBQ0EsT0FBT0MsV0FBVyxDQUFDSixLQUFLLEVBQUVDLE1BQU0sRUFBRUUsS0FBSyxDQUFDO0VBQzFDO0FBQ0Y7QUFFQSxTQUFTQyxXQUFXQSxDQUNsQkosS0FBcUIsRUFDckJDLE1BQTRDLEVBQzVDRSxLQUFVLEVBQ007RUFDaEIsSUFBSUEsS0FBSyxDQUFDMEMsSUFBSSxLQUFLLFlBQVksRUFBRTtJQUMvQjtJQUNBO0lBQ0E7SUFDQSxPQUFBdEIsUUFBQSxLQUNLdkIsS0FBSztNQUNSa0MsVUFBVSxFQUFFQyxnQkFBZ0IsQ0FBQ25DLEtBQUssRUFBRUMsTUFBTTtJQUFDO0VBRS9DO0VBQ0EsT0FBQXNCLFFBQUEsS0FDS3ZCLEtBQUs7SUFDUlksSUFBSSxFQUFBVyxRQUFBLEtBQ0N2QixLQUFLLENBQUNZLElBQUk7TUFDYixDQUFDWCxNQUFNLENBQUN1QixHQUFHLEdBQUc7UUFDWk8sSUFBSSxFQUFFOUIsTUFBTSxDQUFDVyxJQUFJLENBQUNtQixJQUFJO1FBQ3RCbEIsU0FBUyxFQUFFWixNQUFNLENBQUNXLElBQUksQ0FBQ0MsU0FBUztRQUNoQ21CLFNBQVMsRUFBRS9CLE1BQU0sQ0FBQ1csSUFBSSxDQUFDb0IsU0FBUztRQUNoQzdCLEtBQUs7UUFDTDJDLFdBQVcsRUFBRTdDLE1BQU0sQ0FBQ08sUUFBUSxDQUFDc0MsV0FBVyxvQkFBM0I3QyxNQUFNLENBQUNPLFFBQVEsQ0FBQ3NDLFdBQVcsQ0FBRzNDLEtBQUs7TUFDbEQ7SUFBQyxFQUNGO0lBQ0QrQixVQUFVLEVBQUVDLGdCQUFnQixDQUFDbkMsS0FBSyxFQUFFQyxNQUFNO0VBQUM7QUFFL0M7QUFDQTtBQUNBLFNBQVNrQyxnQkFBZ0JBLENBQ3ZCbkMsS0FBcUIsRUFDckIrQyxlQUFxRCxFQUNyRDtFQUNBLE9BQU8vQyxLQUFLLENBQUNrQyxVQUFVLENBQUNjLE1BQU0sQ0FDNUJDLGdCQUFnQixJQUNkQSxnQkFBZ0IsQ0FBQ3pCLEdBQUcsS0FBS3VCLGVBQWUsQ0FBQ3ZCLEdBQUcsS0FDM0N5QixnQkFBZ0IsQ0FBQzFDLElBQUksS0FBS1YsVUFBVSxHQUNuQ29ELGdCQUFnQixDQUFDckMsSUFBSSxDQUFDQyxTQUFTLEtBQUtrQyxlQUFlLENBQUNuQyxJQUFJLENBQUNDLFNBQVMsR0FDbEVvQyxnQkFBZ0IsQ0FBQ3JDLElBQUksQ0FBQ21CLElBQUksR0FBR2dCLGVBQWUsQ0FBQ25DLElBQUksQ0FBQ21CLElBQUksQ0FDNUQsQ0FBQztBQUNIIiwiaWdub3JlTGlzdCI6W119
package/legacy/types.js CHANGED
@@ -12,4 +12,4 @@ export * from './actions.js';
12
12
  * @see https://dataclient.io/docs/api/Manager
13
13
  */
14
14
  export {};
15
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vc3JjL3R5cGVzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5vcm1hbGl6ZWRJbmRleCB9IGZyb20gJ0BkYXRhLWNsaWVudC9ub3JtYWxpenInO1xuaW1wb3J0IHR5cGUge1xuICBVcGRhdGVGdW5jdGlvbixcbiAgQWJzdHJhY3RJbnN0YW5jZVR5cGUsXG59IGZyb20gJ0BkYXRhLWNsaWVudC9ub3JtYWxpenInO1xuaW1wb3J0IHR5cGUgeyBFcnJvclR5cGVzIH0gZnJvbSAnQGRhdGEtY2xpZW50L25vcm1hbGl6cic7XG5cbmltcG9ydCB0eXBlIHtcbiAgQWN0aW9uVHlwZXMsXG4gIFNldFJlc3BvbnNlQWN0aW9uLFxuICBPcHRpbWlzdGljQWN0aW9uLFxufSBmcm9tICcuL2FjdGlvbnMuanMnO1xuaW1wb3J0IHR5cGUgeyBEaXNwYXRjaCwgTWlkZGxld2FyZSwgTWlkZGxld2FyZUFQSSB9IGZyb20gJy4vbWlkZGxld2FyZVR5cGVzLmpzJztcblxuZXhwb3J0ICogZnJvbSAnLi9hY3Rpb25zLmpzJztcblxuZXhwb3J0IHR5cGUgeyBBYnN0cmFjdEluc3RhbmNlVHlwZSwgVXBkYXRlRnVuY3Rpb24gfTtcblxuZXhwb3J0IHR5cGUgUEsgPSBzdHJpbmc7XG5cbi8qKiBOb3JtYWxpemVkIHN0YXRlIGZvciBSZWFjdGl2ZSBEYXRhIENsaWVudFxuICpcbiAqIEBzZWUgaHR0cHM6Ly9kYXRhY2xpZW50LmlvL2RvY3MvY29uY2VwdHMvbm9ybWFsaXphdGlvblxuICovXG5leHBvcnQgaW50ZXJmYWNlIFN0YXRlPFQ+IHtcbiAgcmVhZG9ubHkgZW50aXRpZXM6IHtcbiAgICByZWFkb25seSBbZW50aXR5S2V5OiBzdHJpbmddOiB7IHJlYWRvbmx5IFtwazogc3RyaW5nXTogVCB9IHwgdW5kZWZpbmVkO1xuICB9O1xuICByZWFkb25seSBlbmRwb2ludHM6IHtcbiAgICByZWFkb25seSBba2V5OiBzdHJpbmddOiB1bmtub3duIHwgUEtbXSB8IFBLIHwgdW5kZWZpbmVkO1xuICB9O1xuICByZWFkb25seSBpbmRleGVzOiBOb3JtYWxpemVkSW5kZXg7XG4gIHJlYWRvbmx5IG1ldGE6IHtcbiAgICByZWFkb25seSBba2V5OiBzdHJpbmddOiB7XG4gICAgICByZWFkb25seSBkYXRlOiBudW1iZXI7XG4gICAgICByZWFkb25seSBmZXRjaGVkQXQ6IG51bWJlcjtcbiAgICAgIHJlYWRvbmx5IGV4cGlyZXNBdDogbnVtYmVyO1xuICAgICAgcmVhZG9ubHkgcHJldkV4cGlyZXNBdD86IG51bWJlcjtcbiAgICAgIHJlYWRvbmx5IGVycm9yPzogRXJyb3JUeXBlcztcbiAgICAgIHJlYWRvbmx5IGludmFsaWRhdGVkPzogYm9vbGVhbjtcbiAgICAgIHJlYWRvbmx5IGVycm9yUG9saWN5PzogJ2hhcmQnIHwgJ3NvZnQnIHwgdW5kZWZpbmVkO1xuICAgIH07XG4gIH07XG4gIHJlYWRvbmx5IGVudGl0eU1ldGE6IHtcbiAgICByZWFkb25seSBbZW50aXR5S2V5OiBzdHJpbmddOiB7XG4gICAgICByZWFkb25seSBbcGs6IHN0cmluZ106IHtcbiAgICAgICAgcmVhZG9ubHkgZmV0Y2hlZEF0OiBudW1iZXI7XG4gICAgICAgIHJlYWRvbmx5IGRhdGU6IG51bWJlcjtcbiAgICAgICAgcmVhZG9ubHkgZXhwaXJlc0F0OiBudW1iZXI7XG4gICAgICB9O1xuICAgIH07XG4gIH07XG4gIHJlYWRvbmx5IG9wdGltaXN0aWM6IChTZXRSZXNwb25zZUFjdGlvbiB8IE9wdGltaXN0aWNBY3Rpb24pW107XG4gIHJlYWRvbmx5IGxhc3RSZXNldDogbnVtYmVyO1xufVxuXG4vKiogU2luZ2xldG9ucyB0aGF0IGhhbmRsZSBnbG9iYWwgc2lkZS1lZmZlY3RzXG4gKlxuICogS2luZCBvZiBsaWtlIHVzZUVmZmVjdCgpIGZvciB0aGUgY2VudHJhbCBkYXRhIHN0b3JlXG4gKlxuICogQHNlZSBodHRwczovL2RhdGFjbGllbnQuaW8vZG9jcy9hcGkvTWFuYWdlclxuICovXG5leHBvcnQgaW50ZXJmYWNlIE1hbmFnZXI8QWN0aW9ucyA9IEFjdGlvblR5cGVzPiB7XG4gIC8qKiBAc2VlIGh0dHBzOi8vZGF0YWNsaWVudC5pby9kb2NzL2FwaS9NYW5hZ2VyI2dldG1pZGRsZXdhcmUgKi9cbiAgZ2V0TWlkZGxld2FyZT8oKTogTWlkZGxld2FyZTxBY3Rpb25zPjtcbiAgLyoqIEBzZWUgaHR0cHM6Ly9kYXRhY2xpZW50LmlvL2RvY3MvYXBpL01hbmFnZXIjbWlkZGxld2FyZSAqL1xuICBtaWRkbGV3YXJlPzogTWlkZGxld2FyZTxBY3Rpb25zPjtcbiAgLyoqIEBzZWUgaHR0cHM6Ly9kYXRhY2xpZW50LmlvL2RvY3MvYXBpL01hbmFnZXIjY2xlYW51cCAqL1xuICBjbGVhbnVwKCk6IHZvaWQ7XG4gIC8qKiBAc2VlIGh0dHBzOi8vZGF0YWNsaWVudC5pby9kb2NzL2FwaS9NYW5hZ2VyI2luaXQgKi9cbiAgaW5pdD86IChzdGF0ZTogU3RhdGU8YW55PikgPT4gdm9pZDtcbn1cblxuZXhwb3J0IHR5cGUgeyBEaXNwYXRjaCwgTWlkZGxld2FyZSwgTWlkZGxld2FyZUFQSSB9O1xuIl0sIm1hcHBpbmdzIjoiQUFjQSxjQUFjLGNBQWM7O0FBTTVCO0FBQ0E7QUFDQTtBQUNBOztBQWlDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFMQSIsImlnbm9yZUxpc3QiOltdfQ==
15
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vc3JjL3R5cGVzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5vcm1hbGl6ZWRJbmRleCB9IGZyb20gJ0BkYXRhLWNsaWVudC9ub3JtYWxpenInO1xuaW1wb3J0IHR5cGUge1xuICBVcGRhdGVGdW5jdGlvbixcbiAgQWJzdHJhY3RJbnN0YW5jZVR5cGUsXG59IGZyb20gJ0BkYXRhLWNsaWVudC9ub3JtYWxpenInO1xuaW1wb3J0IHR5cGUgeyBFcnJvclR5cGVzIH0gZnJvbSAnQGRhdGEtY2xpZW50L25vcm1hbGl6cic7XG5cbmltcG9ydCB0eXBlIHtcbiAgQWN0aW9uVHlwZXMsXG4gIFNldFJlc3BvbnNlQWN0aW9uLFxuICBPcHRpbWlzdGljQWN0aW9uLFxufSBmcm9tICcuL2FjdGlvbnMuanMnO1xuaW1wb3J0IHR5cGUgeyBEaXNwYXRjaCwgTWlkZGxld2FyZSwgTWlkZGxld2FyZUFQSSB9IGZyb20gJy4vbWlkZGxld2FyZVR5cGVzLmpzJztcblxuZXhwb3J0ICogZnJvbSAnLi9hY3Rpb25zLmpzJztcblxuZXhwb3J0IHR5cGUgeyBBYnN0cmFjdEluc3RhbmNlVHlwZSwgVXBkYXRlRnVuY3Rpb24gfTtcblxuZXhwb3J0IHR5cGUgUEsgPSBzdHJpbmc7XG5cbi8qKiBOb3JtYWxpemVkIHN0YXRlIGZvciBSZWFjdGl2ZSBEYXRhIENsaWVudFxuICpcbiAqIEBzZWUgaHR0cHM6Ly9kYXRhY2xpZW50LmlvL2RvY3MvY29uY2VwdHMvbm9ybWFsaXphdGlvblxuICovXG5leHBvcnQgaW50ZXJmYWNlIFN0YXRlPFQ+IHtcbiAgcmVhZG9ubHkgZW50aXRpZXM6IHtcbiAgICByZWFkb25seSBbZW50aXR5S2V5OiBzdHJpbmddOiB7IHJlYWRvbmx5IFtwazogc3RyaW5nXTogVCB9IHwgdW5kZWZpbmVkO1xuICB9O1xuICByZWFkb25seSBlbmRwb2ludHM6IHtcbiAgICByZWFkb25seSBba2V5OiBzdHJpbmddOiB1bmtub3duIHwgUEtbXSB8IFBLIHwgdW5kZWZpbmVkO1xuICB9O1xuICByZWFkb25seSBpbmRleGVzOiBOb3JtYWxpemVkSW5kZXg7XG4gIHJlYWRvbmx5IG1ldGE6IHtcbiAgICByZWFkb25seSBba2V5OiBzdHJpbmddOiB7XG4gICAgICByZWFkb25seSBkYXRlOiBudW1iZXI7XG4gICAgICByZWFkb25seSBmZXRjaGVkQXQ6IG51bWJlcjtcbiAgICAgIHJlYWRvbmx5IGV4cGlyZXNBdDogbnVtYmVyO1xuICAgICAgcmVhZG9ubHkgcHJldkV4cGlyZXNBdD86IG51bWJlcjtcbiAgICAgIHJlYWRvbmx5IGVycm9yPzogRXJyb3JUeXBlcztcbiAgICAgIHJlYWRvbmx5IGludmFsaWRhdGVkPzogYm9vbGVhbjtcbiAgICAgIHJlYWRvbmx5IGVycm9yUG9saWN5PzogJ2hhcmQnIHwgJ3NvZnQnIHwgdW5kZWZpbmVkO1xuICAgIH07XG4gIH07XG4gIHJlYWRvbmx5IGVudGl0aWVzTWV0YToge1xuICAgIHJlYWRvbmx5IFtlbnRpdHlLZXk6IHN0cmluZ106IHtcbiAgICAgIHJlYWRvbmx5IFtwazogc3RyaW5nXToge1xuICAgICAgICByZWFkb25seSBmZXRjaGVkQXQ6IG51bWJlcjtcbiAgICAgICAgcmVhZG9ubHkgZGF0ZTogbnVtYmVyO1xuICAgICAgICByZWFkb25seSBleHBpcmVzQXQ6IG51bWJlcjtcbiAgICAgIH07XG4gICAgfTtcbiAgfTtcbiAgcmVhZG9ubHkgb3B0aW1pc3RpYzogKFNldFJlc3BvbnNlQWN0aW9uIHwgT3B0aW1pc3RpY0FjdGlvbilbXTtcbiAgcmVhZG9ubHkgbGFzdFJlc2V0OiBudW1iZXI7XG59XG5cbi8qKiBTaW5nbGV0b25zIHRoYXQgaGFuZGxlIGdsb2JhbCBzaWRlLWVmZmVjdHNcbiAqXG4gKiBLaW5kIG9mIGxpa2UgdXNlRWZmZWN0KCkgZm9yIHRoZSBjZW50cmFsIGRhdGEgc3RvcmVcbiAqXG4gKiBAc2VlIGh0dHBzOi8vZGF0YWNsaWVudC5pby9kb2NzL2FwaS9NYW5hZ2VyXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTWFuYWdlcjxBY3Rpb25zID0gQWN0aW9uVHlwZXM+IHtcbiAgLyoqIEBzZWUgaHR0cHM6Ly9kYXRhY2xpZW50LmlvL2RvY3MvYXBpL01hbmFnZXIjZ2V0bWlkZGxld2FyZSAqL1xuICBnZXRNaWRkbGV3YXJlPygpOiBNaWRkbGV3YXJlPEFjdGlvbnM+O1xuICAvKiogQHNlZSBodHRwczovL2RhdGFjbGllbnQuaW8vZG9jcy9hcGkvTWFuYWdlciNtaWRkbGV3YXJlICovXG4gIG1pZGRsZXdhcmU/OiBNaWRkbGV3YXJlPEFjdGlvbnM+O1xuICAvKiogQHNlZSBodHRwczovL2RhdGFjbGllbnQuaW8vZG9jcy9hcGkvTWFuYWdlciNjbGVhbnVwICovXG4gIGNsZWFudXAoKTogdm9pZDtcbiAgLyoqIEBzZWUgaHR0cHM6Ly9kYXRhY2xpZW50LmlvL2RvY3MvYXBpL01hbmFnZXIjaW5pdCAqL1xuICBpbml0PzogKHN0YXRlOiBTdGF0ZTxhbnk+KSA9PiB2b2lkO1xufVxuXG5leHBvcnQgdHlwZSB7IERpc3BhdGNoLCBNaWRkbGV3YXJlLCBNaWRkbGV3YXJlQVBJIH07XG4iXSwibWFwcGluZ3MiOiJBQWNBLGNBQWMsY0FBYzs7QUFNNUI7QUFDQTtBQUNBO0FBQ0E7O0FBaUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUxBIiwiaWdub3JlTGlzdCI6W119
@@ -191,7 +191,7 @@ export default class Controller<D extends GenericDispatch = DataClientDispatch>
191
191
  */
192
192
  get<S extends Queryable>(schema: S, ...rest: readonly [
193
193
  ...SchemaArgs<S>,
194
- Pick<State<unknown>, 'entities' | 'entityMeta'>
194
+ Pick<State<unknown>, 'entities' | 'indexes'>
195
195
  ]): DenormalizeNullable<S> | undefined;
196
196
  /**
197
197
  * Queries the store for a Querable schema; providing related metadata
@@ -199,12 +199,12 @@ export default class Controller<D extends GenericDispatch = DataClientDispatch>
199
199
  */
200
200
  getQueryMeta<S extends Queryable>(schema: S, ...rest: readonly [
201
201
  ...SchemaArgs<S>,
202
- Pick<State<unknown>, 'entities' | 'entityMeta'>
202
+ Pick<State<unknown>, 'entities' | 'indexes'>
203
203
  ]): {
204
204
  data: DenormalizeNullable<S> | undefined;
205
205
  countRef: () => () => void;
206
206
  };
207
- private getSchemaResponse;
207
+ private getExpiryStatus;
208
208
  }
209
209
  export type { ErrorTypes };
210
210
  declare class Snapshot<T = unknown> implements SnapshotInterface {