@data-client/core 0.14.18 → 0.14.19

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 (83) hide show
  1. package/dist/index.js +553 -277
  2. package/dist/index.umd.min.js +1 -1
  3. package/legacy/actions.js +1 -1
  4. package/legacy/controller/Controller.js +100 -11
  5. package/legacy/controller/actions/createFetch.js +3 -2
  6. package/legacy/controller/ensurePojo.js +3 -2
  7. package/legacy/index.js +3 -4
  8. package/legacy/manager/DevtoolsManager.js +14 -7
  9. package/legacy/manager/NetworkManager.js +8 -5
  10. package/legacy/manager/PollingSubscription.js +6 -3
  11. package/legacy/manager/SubscriptionManager.js +4 -3
  12. package/legacy/manager/applyManager.js +3 -7
  13. package/legacy/manager/initManager.js +15 -0
  14. package/legacy/state/GCPolicy.js +153 -0
  15. package/legacy/state/reducer/createReducer.js +7 -3
  16. package/legacy/state/reducer/expireReducer.js +5 -4
  17. package/legacy/state/reducer/fetchReducer.js +3 -2
  18. package/legacy/state/reducer/invalidateReducer.js +6 -5
  19. package/legacy/state/reducer/setResponseReducer.js +10 -7
  20. package/legacy/types.js +1 -1
  21. package/lib/actions.d.ts +2 -2
  22. package/lib/actions.d.ts.map +1 -1
  23. package/lib/actions.js +1 -1
  24. package/lib/controller/Controller.d.ts +108 -5
  25. package/lib/controller/Controller.d.ts.map +1 -1
  26. package/lib/controller/Controller.js +96 -8
  27. package/lib/index.d.ts +2 -0
  28. package/lib/index.d.ts.map +1 -1
  29. package/lib/index.js +3 -4
  30. package/lib/manager/DevtoolsManager.js +7 -3
  31. package/lib/manager/NetworkManager.js +3 -2
  32. package/lib/manager/SubscriptionManager.d.ts.map +1 -1
  33. package/lib/manager/SubscriptionManager.js +1 -1
  34. package/lib/manager/applyManager.d.ts.map +1 -1
  35. package/lib/manager/applyManager.js +3 -7
  36. package/lib/manager/initManager.d.ts +4 -0
  37. package/lib/manager/initManager.d.ts.map +1 -0
  38. package/lib/manager/initManager.js +15 -0
  39. package/lib/state/GCPolicy.d.ts +55 -0
  40. package/lib/state/GCPolicy.d.ts.map +1 -0
  41. package/lib/state/GCPolicy.js +153 -0
  42. package/lib/state/reducer/createReducer.js +5 -2
  43. package/lib/state/reducer/expireReducer.d.ts +1 -0
  44. package/lib/state/reducer/expireReducer.d.ts.map +1 -1
  45. package/lib/state/reducer/invalidateReducer.d.ts +1 -0
  46. package/lib/state/reducer/invalidateReducer.d.ts.map +1 -1
  47. package/lib/state/reducer/setReducer.d.ts +3 -2
  48. package/lib/state/reducer/setReducer.d.ts.map +1 -1
  49. package/lib/state/reducer/setResponseReducer.d.ts +4 -2
  50. package/lib/state/reducer/setResponseReducer.d.ts.map +1 -1
  51. package/lib/state/reducer/setResponseReducer.js +4 -2
  52. package/lib/types.d.ts +1 -0
  53. package/lib/types.d.ts.map +1 -1
  54. package/lib/types.js +1 -1
  55. package/package.json +8 -3
  56. package/src/actions.ts +2 -1
  57. package/src/controller/Controller.ts +205 -8
  58. package/src/controller/__tests__/Controller.ts +8 -4
  59. package/src/controller/__tests__/__snapshots__/get.ts.snap +7 -0
  60. package/src/controller/__tests__/__snapshots__/getResponse.ts.snap +15 -0
  61. package/src/controller/__tests__/get.ts +45 -17
  62. package/src/controller/__tests__/getResponse.ts +46 -0
  63. package/src/index.ts +2 -6
  64. package/src/manager/SubscriptionManager.ts +0 -1
  65. package/src/manager/applyManager.ts +3 -4
  66. package/src/manager/initManager.ts +21 -0
  67. package/src/state/GCPolicy.ts +197 -0
  68. package/src/state/__tests__/GCPolicy.test.ts +258 -0
  69. package/src/state/__tests__/__snapshots__/reducer.ts.snap +2 -0
  70. package/src/state/__tests__/reducer.ts +4 -4
  71. package/src/state/reducer/createReducer.ts +1 -1
  72. package/src/state/reducer/setResponseReducer.ts +3 -1
  73. package/src/types.ts +1 -0
  74. package/ts3.4/actions.d.ts +2 -5
  75. package/ts3.4/controller/Controller.d.ts +141 -5
  76. package/ts3.4/index.d.ts +2 -0
  77. package/ts3.4/manager/initManager.d.ts +4 -0
  78. package/ts3.4/state/GCPolicy.d.ts +55 -0
  79. package/ts3.4/state/reducer/expireReducer.d.ts +1 -0
  80. package/ts3.4/state/reducer/invalidateReducer.d.ts +1 -0
  81. package/ts3.4/state/reducer/setReducer.d.ts +3 -2
  82. package/ts3.4/state/reducer/setResponseReducer.d.ts +4 -2
  83. package/ts3.4/types.d.ts +1 -0
@@ -1,3 +1,4 @@
1
+ import _Promise from "core-js-pure/stable/promise/index.js";
1
2
  import { FETCH } from '../../actionTypes.js';
2
3
  /**
3
4
  * Requesting a fetch to begin
@@ -7,7 +8,7 @@ export function createFetch(endpoint, {
7
8
  }) {
8
9
  let resolve = 0;
9
10
  let reject = 0;
10
- const promise = new Promise((a, b) => {
11
+ const promise = new _Promise((a, b) => {
11
12
  [resolve, reject] = [a, b];
12
13
  });
13
14
  const meta = {
@@ -24,4 +25,4 @@ export function createFetch(endpoint, {
24
25
  meta
25
26
  };
26
27
  }
27
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJGRVRDSCIsImNyZWF0ZUZldGNoIiwiZW5kcG9pbnQiLCJhcmdzIiwicmVzb2x2ZSIsInJlamVjdCIsInByb21pc2UiLCJQcm9taXNlIiwiYSIsImIiLCJtZXRhIiwiZmV0Y2hlZEF0IiwiRGF0ZSIsIm5vdyIsInR5cGUiLCJrZXkiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29udHJvbGxlci9hY3Rpb25zL2NyZWF0ZUZldGNoLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgRW5kcG9pbnRJbnRlcmZhY2UsIE5JIH0gZnJvbSAnQGRhdGEtY2xpZW50L25vcm1hbGl6cic7XG5cbmltcG9ydCB7IEZFVENIIH0gZnJvbSAnLi4vLi4vYWN0aW9uVHlwZXMuanMnO1xuaW1wb3J0IHR5cGUgeyBGZXRjaEFjdGlvbiwgRmV0Y2hNZXRhIH0gZnJvbSAnLi4vLi4vdHlwZXMuanMnO1xuaW1wb3J0IHsgRW5kcG9pbnRVcGRhdGVGdW5jdGlvbiB9IGZyb20gJy4uL3R5cGVzLmpzJztcblxuLyoqXG4gKiBSZXF1ZXN0aW5nIGEgZmV0Y2ggdG8gYmVnaW5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUZldGNoPFxuICBFIGV4dGVuZHMgRW5kcG9pbnRJbnRlcmZhY2UgJiB7IHVwZGF0ZT86IEVuZHBvaW50VXBkYXRlRnVuY3Rpb248RT4gfSxcbj4oXG4gIGVuZHBvaW50OiBFLFxuICB7IGFyZ3MgfTogeyBhcmdzOiByZWFkb25seSBbLi4uUGFyYW1ldGVyczxFPl0gfSxcbik6IEZldGNoQWN0aW9uPEU+IHtcbiAgbGV0IHJlc29sdmU6ICh2YWx1ZT86IGFueSB8IFByb21pc2VMaWtlPGFueT4pID0+IHZvaWQgPSAwIGFzIGFueTtcbiAgbGV0IHJlamVjdDogKHJlYXNvbj86IGFueSkgPT4gdm9pZCA9IDAgYXMgYW55O1xuICBjb25zdCBwcm9taXNlID0gbmV3IFByb21pc2U8YW55PigoYSwgYikgPT4ge1xuICAgIFtyZXNvbHZlLCByZWplY3RdID0gW2EsIGJdO1xuICB9KTtcbiAgY29uc3QgbWV0YTogRmV0Y2hNZXRhID0ge1xuICAgIGZldGNoZWRBdDogRGF0ZS5ub3coKSxcbiAgICByZXNvbHZlLFxuICAgIHJlamVjdCxcbiAgICBwcm9taXNlLFxuICB9O1xuXG4gIHJldHVybiB7XG4gICAgdHlwZTogRkVUQ0gsXG4gICAga2V5OiBlbmRwb2ludC5rZXkoLi4uYXJncyksXG4gICAgYXJncyxcbiAgICBlbmRwb2ludCxcbiAgICBtZXRhLFxuICB9O1xufVxuIl0sIm1hcHBpbmdzIjoiQUFFQSxTQUFTQSxLQUFLLFFBQVEsc0JBQXNCO0FBSTVDO0FBQ0E7QUFDQTtBQUNBLE9BQU8sU0FBU0MsV0FBV0EsQ0FHekJDLFFBQVcsRUFDWDtFQUFFQztBQUE0QyxDQUFDLEVBQy9CO0VBQ2hCLElBQUlDLE9BQWlELEdBQUcsQ0FBUTtFQUNoRSxJQUFJQyxNQUE4QixHQUFHLENBQVE7RUFDN0MsTUFBTUMsT0FBTyxHQUFHLElBQUlDLE9BQU8sQ0FBTSxDQUFDQyxDQUFDLEVBQUVDLENBQUMsS0FBSztJQUN6QyxDQUFDTCxPQUFPLEVBQUVDLE1BQU0sQ0FBQyxHQUFHLENBQUNHLENBQUMsRUFBRUMsQ0FBQyxDQUFDO0VBQzVCLENBQUMsQ0FBQztFQUNGLE1BQU1DLElBQWUsR0FBRztJQUN0QkMsU0FBUyxFQUFFQyxJQUFJLENBQUNDLEdBQUcsQ0FBQyxDQUFDO0lBQ3JCVCxPQUFPO0lBQ1BDLE1BQU07SUFDTkM7RUFDRixDQUFDO0VBRUQsT0FBTztJQUNMUSxJQUFJLEVBQUVkLEtBQUs7SUFDWGUsR0FBRyxFQUFFYixRQUFRLENBQUNhLEdBQUcsQ0FBQyxHQUFHWixJQUFJLENBQUM7SUFDMUJBLElBQUk7SUFDSkQsUUFBUTtJQUNSUTtFQUNGLENBQUM7QUFDSCIsImlnbm9yZUxpc3QiOltdfQ==
28
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJGRVRDSCIsImNyZWF0ZUZldGNoIiwiZW5kcG9pbnQiLCJhcmdzIiwicmVzb2x2ZSIsInJlamVjdCIsInByb21pc2UiLCJfUHJvbWlzZSIsImEiLCJiIiwibWV0YSIsImZldGNoZWRBdCIsIkRhdGUiLCJub3ciLCJ0eXBlIiwia2V5Il0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbnRyb2xsZXIvYWN0aW9ucy9jcmVhdGVGZXRjaC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IEVuZHBvaW50SW50ZXJmYWNlLCBOSSB9IGZyb20gJ0BkYXRhLWNsaWVudC9ub3JtYWxpenInO1xuXG5pbXBvcnQgeyBGRVRDSCB9IGZyb20gJy4uLy4uL2FjdGlvblR5cGVzLmpzJztcbmltcG9ydCB0eXBlIHsgRmV0Y2hBY3Rpb24sIEZldGNoTWV0YSB9IGZyb20gJy4uLy4uL3R5cGVzLmpzJztcbmltcG9ydCB7IEVuZHBvaW50VXBkYXRlRnVuY3Rpb24gfSBmcm9tICcuLi90eXBlcy5qcyc7XG5cbi8qKlxuICogUmVxdWVzdGluZyBhIGZldGNoIHRvIGJlZ2luXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVGZXRjaDxcbiAgRSBleHRlbmRzIEVuZHBvaW50SW50ZXJmYWNlICYgeyB1cGRhdGU/OiBFbmRwb2ludFVwZGF0ZUZ1bmN0aW9uPEU+IH0sXG4+KFxuICBlbmRwb2ludDogRSxcbiAgeyBhcmdzIH06IHsgYXJnczogcmVhZG9ubHkgWy4uLlBhcmFtZXRlcnM8RT5dIH0sXG4pOiBGZXRjaEFjdGlvbjxFPiB7XG4gIGxldCByZXNvbHZlOiAodmFsdWU/OiBhbnkgfCBQcm9taXNlTGlrZTxhbnk+KSA9PiB2b2lkID0gMCBhcyBhbnk7XG4gIGxldCByZWplY3Q6IChyZWFzb24/OiBhbnkpID0+IHZvaWQgPSAwIGFzIGFueTtcbiAgY29uc3QgcHJvbWlzZSA9IG5ldyBQcm9taXNlPGFueT4oKGEsIGIpID0+IHtcbiAgICBbcmVzb2x2ZSwgcmVqZWN0XSA9IFthLCBiXTtcbiAgfSk7XG4gIGNvbnN0IG1ldGE6IEZldGNoTWV0YSA9IHtcbiAgICBmZXRjaGVkQXQ6IERhdGUubm93KCksXG4gICAgcmVzb2x2ZSxcbiAgICByZWplY3QsXG4gICAgcHJvbWlzZSxcbiAgfTtcblxuICByZXR1cm4ge1xuICAgIHR5cGU6IEZFVENILFxuICAgIGtleTogZW5kcG9pbnQua2V5KC4uLmFyZ3MpLFxuICAgIGFyZ3MsXG4gICAgZW5kcG9pbnQsXG4gICAgbWV0YSxcbiAgfTtcbn1cbiJdLCJtYXBwaW5ncyI6IjtBQUVBLFNBQVNBLEtBQUssUUFBUSxzQkFBc0I7QUFJNUM7QUFDQTtBQUNBO0FBQ0EsT0FBTyxTQUFTQyxXQUFXQSxDQUd6QkMsUUFBVyxFQUNYO0VBQUVDO0FBQTRDLENBQUMsRUFDL0I7RUFDaEIsSUFBSUMsT0FBaUQsR0FBRyxDQUFRO0VBQ2hFLElBQUlDLE1BQThCLEdBQUcsQ0FBUTtFQUM3QyxNQUFNQyxPQUFPLEdBQUcsSUFBQUMsUUFBQSxDQUFpQixDQUFDQyxDQUFDLEVBQUVDLENBQUMsS0FBSztJQUN6QyxDQUFDTCxPQUFPLEVBQUVDLE1BQU0sQ0FBQyxHQUFHLENBQUNHLENBQUMsRUFBRUMsQ0FBQyxDQUFDO0VBQzVCLENBQUMsQ0FBQztFQUNGLE1BQU1DLElBQWUsR0FBRztJQUN0QkMsU0FBUyxFQUFFQyxJQUFJLENBQUNDLEdBQUcsQ0FBQyxDQUFDO0lBQ3JCVCxPQUFPO0lBQ1BDLE1BQU07SUFDTkM7RUFDRixDQUFDO0VBRUQsT0FBTztJQUNMUSxJQUFJLEVBQUVkLEtBQUs7SUFDWGUsR0FBRyxFQUFFYixRQUFRLENBQUNhLEdBQUcsQ0FBQyxHQUFHWixJQUFJLENBQUM7SUFDMUJBLElBQUk7SUFDSkQsUUFBUTtJQUNSUTtFQUNGLENBQUM7QUFDSCIsImlnbm9yZUxpc3QiOltdfQ==
@@ -1,6 +1,7 @@
1
+ import _Object$fromEntries from "core-js-pure/stable/object/from-entries.js";
1
2
  export const ensurePojo =
2
3
  // FormData doesn't exist in node
3
4
  /* istanbul ignore else we don't run coverage when we test node*/
4
- typeof FormData !== 'undefined' ? body => body instanceof FormData ? Object.fromEntries(body.entries()) : body : /* istanbul ignore next */body => body;
5
+ typeof FormData !== 'undefined' ? body => body instanceof FormData ? _Object$fromEntries(body.entries()) : body : /* istanbul ignore next */body => body;
5
6
  export default ensurePojo;
6
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJlbnN1cmVQb2pvIiwiRm9ybURhdGEiLCJib2R5IiwiT2JqZWN0IiwiZnJvbUVudHJpZXMiLCJlbnRyaWVzIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbnRyb2xsZXIvZW5zdXJlUG9qby50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgZW5zdXJlUG9qbyA9XG4gIC8vIEZvcm1EYXRhIGRvZXNuJ3QgZXhpc3QgaW4gbm9kZVxuICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSB3ZSBkb24ndCBydW4gY292ZXJhZ2Ugd2hlbiB3ZSB0ZXN0IG5vZGUqL1xuICB0eXBlb2YgRm9ybURhdGEgIT09ICd1bmRlZmluZWQnID9cbiAgICAoYm9keTogYW55KSA9PlxuICAgICAgYm9keSBpbnN0YW5jZW9mIEZvcm1EYXRhID9cbiAgICAgICAgT2JqZWN0LmZyb21FbnRyaWVzKChib2R5IGFzIGFueSkuZW50cmllcygpKVxuICAgICAgOiBib2R5XG4gIDogLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi8gKGJvZHk6IGFueSkgPT4gYm9keTtcbmV4cG9ydCBkZWZhdWx0IGVuc3VyZVBvam87XG4iXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sTUFBTUEsVUFBVTtBQUNyQjtBQUNBO0FBQ0EsT0FBT0MsUUFBUSxLQUFLLFdBQVcsR0FDNUJDLElBQVMsSUFDUkEsSUFBSSxZQUFZRCxRQUFRLEdBQ3RCRSxNQUFNLENBQUNDLFdBQVcsQ0FBRUYsSUFBSSxDQUFTRyxPQUFPLENBQUMsQ0FBQyxDQUFDLEdBQzNDSCxJQUFJLEdBQ1IsMEJBQTRCQSxJQUFTLElBQUtBLElBQUk7QUFDbEQsZUFBZUYsVUFBVSIsImlnbm9yZUxpc3QiOltdfQ==
7
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJlbnN1cmVQb2pvIiwiRm9ybURhdGEiLCJib2R5IiwiX09iamVjdCRmcm9tRW50cmllcyIsImVudHJpZXMiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvY29udHJvbGxlci9lbnN1cmVQb2pvLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBlbnN1cmVQb2pvID1cbiAgLy8gRm9ybURhdGEgZG9lc24ndCBleGlzdCBpbiBub2RlXG4gIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlIHdlIGRvbid0IHJ1biBjb3ZlcmFnZSB3aGVuIHdlIHRlc3Qgbm9kZSovXG4gIHR5cGVvZiBGb3JtRGF0YSAhPT0gJ3VuZGVmaW5lZCcgP1xuICAgIChib2R5OiBhbnkpID0+XG4gICAgICBib2R5IGluc3RhbmNlb2YgRm9ybURhdGEgP1xuICAgICAgICBPYmplY3QuZnJvbUVudHJpZXMoKGJvZHkgYXMgYW55KS5lbnRyaWVzKCkpXG4gICAgICA6IGJvZHlcbiAgOiAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqLyAoYm9keTogYW55KSA9PiBib2R5O1xuZXhwb3J0IGRlZmF1bHQgZW5zdXJlUG9qbztcbiJdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sTUFBTUEsVUFBVTtBQUNyQjtBQUNBO0FBQ0EsT0FBT0MsUUFBUSxLQUFLLFdBQVcsR0FDNUJDLElBQVMsSUFDUkEsSUFBSSxZQUFZRCxRQUFRLEdBQ3RCRSxtQkFBQSxDQUFvQkQsSUFBSSxDQUFTRSxPQUFPLENBQUMsQ0FBQyxDQUFDLEdBQzNDRixJQUFJLEdBQ1IsMEJBQTRCQSxJQUFTLElBQUtBLElBQUk7QUFDbEQsZUFBZUYsVUFBVSIsImlnbm9yZUxpc3QiOltdfQ==
package/legacy/index.js CHANGED
@@ -1,12 +1,11 @@
1
- Object.hasOwn = Object.hasOwn || /* istanbul ignore next */function hasOwn(it, key) {
2
- return Object.prototype.hasOwnProperty.call(it, key);
3
- };
4
1
  import * as _INTERNAL__ from './internal.js';
5
2
  export { _INTERNAL__ as __INTERNAL__ };
6
3
  export { ExpiryStatus } from '@data-client/normalizr';
7
4
  export { default as NetworkManager, ResetError } from './manager/NetworkManager.js';
5
+ export * from './state/GCPolicy.js';
8
6
  export { default as createReducer, initialState } from './state/reducer/createReducer.js';
9
7
  export { default as applyManager } from './manager/applyManager.js';
8
+ export { default as initManager } from './manager/initManager.js';
10
9
  export { default as Controller } from './controller/Controller.js';
11
10
  import * as _actions from './controller/actions/index.js';
12
11
  export { _actions as actions };
@@ -17,4 +16,4 @@ export { _actionTypes as actionTypes };
17
16
  /* istanbul ignore next */
18
17
  export * from './types.js';
19
18
  export * from './manager/index.js';
20
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJPYmplY3QiLCJoYXNPd24iLCJpdCIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsIl9JTlRFUk5BTF9fIiwiX19JTlRFUk5BTF9fIiwiRXhwaXJ5U3RhdHVzIiwiZGVmYXVsdCIsIk5ldHdvcmtNYW5hZ2VyIiwiUmVzZXRFcnJvciIsImNyZWF0ZVJlZHVjZXIiLCJpbml0aWFsU3RhdGUiLCJhcHBseU1hbmFnZXIiLCJDb250cm9sbGVyIiwiX2FjdGlvbnMiLCJhY3Rpb25zIiwiX2FjdGlvblR5cGVzIiwiYWN0aW9uVHlwZXMiXSwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwic291cmNlc0NvbnRlbnQiOlsiT2JqZWN0Lmhhc093biA9XG4gIE9iamVjdC5oYXNPd24gfHxcbiAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi8gZnVuY3Rpb24gaGFzT3duKGl0LCBrZXkpIHtcbiAgICByZXR1cm4gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGl0LCBrZXkpO1xuICB9O1xuXG5leHBvcnQgKiBhcyBfX0lOVEVSTkFMX18gZnJvbSAnLi9pbnRlcm5hbC5qcyc7XG5leHBvcnQgdHlwZSB7XG4gIE5ldHdvcmtFcnJvcixcbiAgVW5rbm93bkVycm9yLFxuICBFcnJvclR5cGVzLFxuICBTY2hlbWEsXG4gIEVuZHBvaW50SW50ZXJmYWNlLFxuICBFbnRpdHlJbnRlcmZhY2UsXG4gIFNjaGVtYUNsYXNzLFxuICBSZXNvbHZlVHlwZSxcbiAgRGVub3JtYWxpemVOdWxsYWJsZSxcbiAgRGVub3JtYWxpemUsXG4gIE5vcm1hbGl6ZSxcbiAgTm9ybWFsaXplTnVsbGFibGUsXG4gIEZldGNoRnVuY3Rpb24sXG4gIEVuZHBvaW50RXh0cmFPcHRpb25zLFxuICBRdWVyeWFibGUsXG4gIFNjaGVtYUFyZ3MsXG4gIE5JLFxufSBmcm9tICdAZGF0YS1jbGllbnQvbm9ybWFsaXpyJztcbmV4cG9ydCB7IEV4cGlyeVN0YXR1cyB9IGZyb20gJ0BkYXRhLWNsaWVudC9ub3JtYWxpenInO1xuZXhwb3J0IHtcbiAgZGVmYXVsdCBhcyBOZXR3b3JrTWFuYWdlcixcbiAgUmVzZXRFcnJvcixcbn0gZnJvbSAnLi9tYW5hZ2VyL05ldHdvcmtNYW5hZ2VyLmpzJztcbmV4cG9ydCB7XG4gIGRlZmF1bHQgYXMgY3JlYXRlUmVkdWNlcixcbiAgaW5pdGlhbFN0YXRlLFxufSBmcm9tICcuL3N0YXRlL3JlZHVjZXIvY3JlYXRlUmVkdWNlci5qcyc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIGFwcGx5TWFuYWdlciB9IGZyb20gJy4vbWFuYWdlci9hcHBseU1hbmFnZXIuanMnO1xuXG5leHBvcnQgeyBkZWZhdWx0IGFzIENvbnRyb2xsZXIgfSBmcm9tICcuL2NvbnRyb2xsZXIvQ29udHJvbGxlci5qcyc7XG5leHBvcnQgdHlwZSB7XG4gIERhdGFDbGllbnREaXNwYXRjaCxcbiAgR2VuZXJpY0Rpc3BhdGNoLFxufSBmcm9tICcuL2NvbnRyb2xsZXIvQ29udHJvbGxlci5qcyc7XG5leHBvcnQgKiBhcyBhY3Rpb25zIGZyb20gJy4vY29udHJvbGxlci9hY3Rpb25zL2luZGV4LmpzJztcblxuZXhwb3J0ICogZnJvbSAnLi9jb250cm9sbGVyL3R5cGVzLmpzJztcbi8qKiBAc2VlIGh0dHBzOi8vZGF0YWNsaWVudC5pby9kb2NzL2FwaS9BY3Rpb25zICovXG5leHBvcnQgKiBhcyBhY3Rpb25UeXBlcyBmcm9tICcuL2FjdGlvblR5cGVzLmpzJztcbi8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG5leHBvcnQgKiBmcm9tICcuL3R5cGVzLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vbWFuYWdlci9pbmRleC5qcyc7XG4iXSwibWFwcGluZ3MiOiJBQUFBQSxNQUFNLENBQUNDLE1BQU0sR0FDWEQsTUFBTSxDQUFDQyxNQUFNLElBQ2IsMEJBQTJCLFNBQVNBLE1BQU1BLENBQUNDLEVBQUUsRUFBRUMsR0FBRyxFQUFFO0VBQ2xELE9BQU9ILE1BQU0sQ0FBQ0ksU0FBUyxDQUFDQyxjQUFjLENBQUNDLElBQUksQ0FBQ0osRUFBRSxFQUFFQyxHQUFHLENBQUM7QUFDdEQsQ0FBQztBQUFDLFlBQUFJLFdBQUEsTUFFMEIsZUFBZTtBQUFBLFNBQUFBLFdBQUEsSUFBakNDLFlBQVk7QUFvQnhCLFNBQVNDLFlBQVksUUFBUSx3QkFBd0I7QUFDckQsU0FDRUMsT0FBTyxJQUFJQyxjQUFjLEVBQ3pCQyxVQUFVLFFBQ0wsNkJBQTZCO0FBQ3BDLFNBQ0VGLE9BQU8sSUFBSUcsYUFBYSxFQUN4QkMsWUFBWSxRQUNQLGtDQUFrQztBQUN6QyxTQUFTSixPQUFPLElBQUlLLFlBQVksUUFBUSwyQkFBMkI7QUFFbkUsU0FBU0wsT0FBTyxJQUFJTSxVQUFVLFFBQVEsNEJBQTRCO0FBQUMsWUFBQUMsUUFBQSxNQUsxQywrQkFBK0I7QUFBQSxTQUFBQSxRQUFBLElBQTVDQyxPQUFPO0FBRW5CLGNBQWMsdUJBQXVCO0FBQ3JDO0FBQUEsWUFBQUMsWUFBQSxNQUM2QixrQkFBa0I7QUFBQSxTQUFBQSxZQUFBLElBQW5DQyxXQUFXO0FBQ3ZCO0FBQ0EsY0FBYyxZQUFZO0FBQzFCLGNBQWMsb0JBQW9CIiwiaWdub3JlTGlzdCI6W119
19
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfSU5URVJOQUxfXyIsIl9fSU5URVJOQUxfXyIsIkV4cGlyeVN0YXR1cyIsImRlZmF1bHQiLCJOZXR3b3JrTWFuYWdlciIsIlJlc2V0RXJyb3IiLCJjcmVhdGVSZWR1Y2VyIiwiaW5pdGlhbFN0YXRlIiwiYXBwbHlNYW5hZ2VyIiwiaW5pdE1hbmFnZXIiLCJDb250cm9sbGVyIiwiX2FjdGlvbnMiLCJhY3Rpb25zIiwiX2FjdGlvblR5cGVzIiwiYWN0aW9uVHlwZXMiXSwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogYXMgX19JTlRFUk5BTF9fIGZyb20gJy4vaW50ZXJuYWwuanMnO1xuZXhwb3J0IHR5cGUge1xuICBOZXR3b3JrRXJyb3IsXG4gIFVua25vd25FcnJvcixcbiAgRXJyb3JUeXBlcyxcbiAgU2NoZW1hLFxuICBFbmRwb2ludEludGVyZmFjZSxcbiAgRW50aXR5SW50ZXJmYWNlLFxuICBTY2hlbWFDbGFzcyxcbiAgUmVzb2x2ZVR5cGUsXG4gIERlbm9ybWFsaXplTnVsbGFibGUsXG4gIERlbm9ybWFsaXplLFxuICBOb3JtYWxpemUsXG4gIE5vcm1hbGl6ZU51bGxhYmxlLFxuICBGZXRjaEZ1bmN0aW9uLFxuICBFbmRwb2ludEV4dHJhT3B0aW9ucyxcbiAgUXVlcnlhYmxlLFxuICBTY2hlbWFBcmdzLFxuICBOSSxcbn0gZnJvbSAnQGRhdGEtY2xpZW50L25vcm1hbGl6cic7XG5leHBvcnQgeyBFeHBpcnlTdGF0dXMgfSBmcm9tICdAZGF0YS1jbGllbnQvbm9ybWFsaXpyJztcbmV4cG9ydCB7XG4gIGRlZmF1bHQgYXMgTmV0d29ya01hbmFnZXIsXG4gIFJlc2V0RXJyb3IsXG59IGZyb20gJy4vbWFuYWdlci9OZXR3b3JrTWFuYWdlci5qcyc7XG5leHBvcnQgKiBmcm9tICcuL3N0YXRlL0dDUG9saWN5LmpzJztcbmV4cG9ydCB7XG4gIGRlZmF1bHQgYXMgY3JlYXRlUmVkdWNlcixcbiAgaW5pdGlhbFN0YXRlLFxufSBmcm9tICcuL3N0YXRlL3JlZHVjZXIvY3JlYXRlUmVkdWNlci5qcyc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIGFwcGx5TWFuYWdlciB9IGZyb20gJy4vbWFuYWdlci9hcHBseU1hbmFnZXIuanMnO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBpbml0TWFuYWdlciB9IGZyb20gJy4vbWFuYWdlci9pbml0TWFuYWdlci5qcyc7XG5cbmV4cG9ydCB7IGRlZmF1bHQgYXMgQ29udHJvbGxlciB9IGZyb20gJy4vY29udHJvbGxlci9Db250cm9sbGVyLmpzJztcbmV4cG9ydCB0eXBlIHtcbiAgRGF0YUNsaWVudERpc3BhdGNoLFxuICBHZW5lcmljRGlzcGF0Y2gsXG59IGZyb20gJy4vY29udHJvbGxlci9Db250cm9sbGVyLmpzJztcbmV4cG9ydCAqIGFzIGFjdGlvbnMgZnJvbSAnLi9jb250cm9sbGVyL2FjdGlvbnMvaW5kZXguanMnO1xuXG5leHBvcnQgKiBmcm9tICcuL2NvbnRyb2xsZXIvdHlwZXMuanMnO1xuLyoqIEBzZWUgaHR0cHM6Ly9kYXRhY2xpZW50LmlvL2RvY3MvYXBpL0FjdGlvbnMgKi9cbmV4cG9ydCAqIGFzIGFjdGlvblR5cGVzIGZyb20gJy4vYWN0aW9uVHlwZXMuanMnO1xuLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbmV4cG9ydCAqIGZyb20gJy4vdHlwZXMuanMnO1xuZXhwb3J0ICogZnJvbSAnLi9tYW5hZ2VyL2luZGV4LmpzJztcbiJdLCJtYXBwaW5ncyI6IjZCQUE4QixlQUFlO0FBQUEsU0FBQUEsV0FBQSxJQUFqQ0MsWUFBWTtBQW9CeEIsU0FBU0MsWUFBWSxRQUFRLHdCQUF3QjtBQUNyRCxTQUNFQyxPQUFPLElBQUlDLGNBQWMsRUFDekJDLFVBQVUsUUFDTCw2QkFBNkI7QUFDcEMsY0FBYyxxQkFBcUI7QUFDbkMsU0FDRUYsT0FBTyxJQUFJRyxhQUFhLEVBQ3hCQyxZQUFZLFFBQ1Asa0NBQWtDO0FBQ3pDLFNBQVNKLE9BQU8sSUFBSUssWUFBWSxRQUFRLDJCQUEyQjtBQUNuRSxTQUFTTCxPQUFPLElBQUlNLFdBQVcsUUFBUSwwQkFBMEI7QUFFakUsU0FBU04sT0FBTyxJQUFJTyxVQUFVLFFBQVEsNEJBQTRCO0FBQUMsWUFBQUMsUUFBQSxNQUsxQywrQkFBK0I7QUFBQSxTQUFBQSxRQUFBLElBQTVDQyxPQUFPO0FBRW5CLGNBQWMsdUJBQXVCO0FBQ3JDO0FBQUEsWUFBQUMsWUFBQSxNQUM2QixrQkFBa0I7QUFBQSxTQUFBQSxZQUFBLElBQW5DQyxXQUFXO0FBQ3ZCO0FBQ0EsY0FBYyxZQUFZO0FBQzFCLGNBQWMsb0JBQW9CIiwiaWdub3JlTGlzdCI6W119
@@ -1,4 +1,9 @@
1
+ import _extends from "@babel/runtime-corejs3/helpers/esm/extends";
1
2
  var _DevToolsManager;
3
+ import _globalThis from "core-js-pure/stable/global-this.js";
4
+ import _endsWithInstanceProperty from "core-js-pure/stable/instance/ends-with.js";
5
+ import _pushInstanceProperty from "core-js-pure/stable/instance/push.js";
6
+ import _reduceInstanceProperty from "core-js-pure/stable/instance/reduce.js";
2
7
  import createReducer from '../state/reducer/createReducer.js';
3
8
  let DEFAULT_CONFIG = {};
4
9
  if (process.env.NODE_ENV !== 'production') {
@@ -18,7 +23,7 @@ if (process.env.NODE_ENV !== 'production') {
18
23
  }
19
24
  const HASINTL = typeof Intl !== 'undefined';
20
25
  DEFAULT_CONFIG = {
21
- name: `Data Client: ${(_globalThis$document = globalThis.document) == null ? void 0 : _globalThis$document.title}`,
26
+ name: `Data Client: ${(_globalThis$document = _globalThis.document) == null ? void 0 : _globalThis$document.title}`,
22
27
  autoPause: true,
23
28
  features: {
24
29
  pause: true,
@@ -43,7 +48,7 @@ if (process.env.NODE_ENV !== 'production') {
43
48
  },
44
49
  actionSanitizer: action => {
45
50
  if (!('endpoint' in action)) return action;
46
- return Object.assign({}, action, {
51
+ return _extends({}, action, {
47
52
  endpoint: serializeEndpoint(action.endpoint)
48
53
  });
49
54
  },
@@ -51,7 +56,7 @@ if (process.env.NODE_ENV !== 'production') {
51
56
  options: undefined,
52
57
  /* istanbul ignore next */
53
58
  replacer: HASINTL ? (key, value) => {
54
- if (typeof value === 'number' && typeof key === 'string' && isFinite(value) && (key === 'date' || key.endsWith('At'))) {
59
+ if (typeof value === 'number' && typeof key === 'string' && isFinite(value) && (key === 'date' || _endsWithInstanceProperty(key).call(key, 'At'))) {
55
60
  return Intl.DateTimeFormat('en-US', {
56
61
  hour: 'numeric',
57
62
  minute: 'numeric',
@@ -77,7 +82,7 @@ export default class DevToolsManager {
77
82
  this.actions = [];
78
83
  this.maxBufferLength = 100;
79
84
  /* istanbul ignore next */
80
- this.devTools = typeof window !== 'undefined' && window.__REDUX_DEVTOOLS_EXTENSION__ && window.__REDUX_DEVTOOLS_EXTENSION__.connect(Object.assign({}, DEFAULT_CONFIG, config));
85
+ this.devTools = typeof window !== 'undefined' && window.__REDUX_DEVTOOLS_EXTENSION__ && window.__REDUX_DEVTOOLS_EXTENSION__.connect(_extends({}, DEFAULT_CONFIG, config));
81
86
  // we cut it in half so we should double so we don't lose
82
87
  if (config != null && config.maxAge) this.maxBufferLength = config.maxAge * 2;
83
88
  if (skipLogging) this.skipLogging = skipLogging;
@@ -86,11 +91,12 @@ export default class DevToolsManager {
86
91
  if (this.started) {
87
92
  this.devTools.send(action, state);
88
93
  } else {
94
+ var _context;
89
95
  // avoid this getting too big in case this is long running
90
96
  // we cut in half so we aren't constantly reallocating
91
97
  if (this.actions.length > this.maxBufferLength) this.actions = this.actions.slice(this.maxBufferLength / 2);
92
98
  // queue actions
93
- this.actions.push([action, state]);
99
+ _pushInstanceProperty(_context = this.actions).call(_context, [action, state]);
94
100
  }
95
101
  }
96
102
 
@@ -146,8 +152,9 @@ _DevToolsManager = DevToolsManager;
146
152
  state = controller.getState();
147
153
  }
148
154
  ret.then(() => {
155
+ var _context2;
149
156
  if (shouldSkip) return;
150
- this.handleAction(action, state.optimistic.reduce(reducer, state));
157
+ this.handleAction(action, _reduceInstanceProperty(_context2 = state.optimistic).call(_context2, reducer, state));
151
158
  });
152
159
  return ret;
153
160
  };
@@ -156,4 +163,4 @@ _DevToolsManager = DevToolsManager;
156
163
  _DevToolsManager.prototype.middleware = () => next => action => next(action);
157
164
  }
158
165
  })();
159
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJjcmVhdGVSZWR1Y2VyIiwiREVGQVVMVF9DT05GSUciLCJwcm9jZXNzIiwiZW52IiwiTk9ERV9FTlYiLCJfZ2xvYmFsVGhpcyRkb2N1bWVudCIsImV4dHJhRW5kcG9pbnRLZXlzIiwic2VyaWFsaXplRW5kcG9pbnQiLCJlbmRwb2ludCIsIl90b0pTT04iLCJfZW5kcG9pbnQkc2NoZW1hIiwic2VyaWFsIiwibmFtZSIsInNjaGVtYSIsInRvSlNPTiIsInNpZGVFZmZlY3QiLCJmb3JFYWNoIiwia2V5IiwiSEFTSU5UTCIsIkludGwiLCJnbG9iYWxUaGlzIiwiZG9jdW1lbnQiLCJ0aXRsZSIsImF1dG9QYXVzZSIsImZlYXR1cmVzIiwicGF1c2UiLCJsb2NrIiwicGVyc2lzdCIsImV4cG9ydCIsImltcG9ydCIsImp1bXAiLCJza2lwIiwicmVvcmRlciIsImRpc3BhdGNoIiwidGVzdCIsImFjdGlvblNhbml0aXplciIsImFjdGlvbiIsIk9iamVjdCIsImFzc2lnbiIsInNlcmlhbGl6ZSIsIm9wdGlvbnMiLCJ1bmRlZmluZWQiLCJyZXBsYWNlciIsInZhbHVlIiwiaXNGaW5pdGUiLCJlbmRzV2l0aCIsIkRhdGVUaW1lRm9ybWF0IiwiaG91ciIsIm1pbnV0ZSIsInNlY29uZCIsImZyYWN0aW9uYWxTZWNvbmREaWdpdHMiLCJmb3JtYXQiLCJEZXZUb29sc01hbmFnZXIiLCJjb25zdHJ1Y3RvciIsImNvbmZpZyIsInNraXBMb2dnaW5nIiwic3RhcnRlZCIsImFjdGlvbnMiLCJtYXhCdWZmZXJMZW5ndGgiLCJkZXZUb29scyIsIndpbmRvdyIsIl9fUkVEVVhfREVWVE9PTFNfRVhURU5TSU9OX18iLCJjb25uZWN0IiwibWF4QWdlIiwiaGFuZGxlQWN0aW9uIiwic3RhdGUiLCJzZW5kIiwibGVuZ3RoIiwic2xpY2UiLCJwdXNoIiwiaW5pdCIsInN1YnNjcmliZSIsIm1zZyIsInR5cGUiLCJwYXlsb2FkIiwiY29udHJvbGxlciIsInJlc2V0RW50aXJlU3RvcmUiLCJjbGVhbnVwIiwiX0RldlRvb2xzTWFuYWdlciIsInByb3RvdHlwZSIsIm1pZGRsZXdhcmUiLCJuZXh0IiwicmVkdWNlciIsImdldFN0YXRlIiwiX3RoaXMkc2tpcExvZ2dpbmciLCJzaG91bGRTa2lwIiwiY2FsbCIsInJldCIsInRoZW4iLCJvcHRpbWlzdGljIiwicmVkdWNlIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL21hbmFnZXIvRGV2dG9vbHNNYW5hZ2VyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgRGV2VG9vbHNDb25maWcgfSBmcm9tICcuL2RldnRvb2xzVHlwZXMuanMnO1xuaW1wb3J0IHR5cGUgeyBDb250cm9sbGVyLCBFbmRwb2ludEludGVyZmFjZSB9IGZyb20gJy4uL2luZGV4LmpzJztcbmltcG9ydCB0eXBlIHsgTWlkZGxld2FyZSB9IGZyb20gJy4uL21pZGRsZXdhcmVUeXBlcy5qcyc7XG5pbXBvcnQgY3JlYXRlUmVkdWNlciBmcm9tICcuLi9zdGF0ZS9yZWR1Y2VyL2NyZWF0ZVJlZHVjZXIuanMnO1xuaW1wb3J0IHR5cGUgeyBNYW5hZ2VyLCBTdGF0ZSwgQWN0aW9uVHlwZXMgfSBmcm9tICcuLi90eXBlcy5qcyc7XG5cbmV4cG9ydCB0eXBlIHsgRGV2VG9vbHNDb25maWcgfTtcblxubGV0IERFRkFVTFRfQ09ORklHID0ge307XG5cbmlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gIGNvbnN0IGV4dHJhRW5kcG9pbnRLZXlzID0gW1xuICAgICdkYXRhRXhwaXJ5TGVuZ3RoJyxcbiAgICAnZXJyb3JFeHBpcnlMZW5ndGgnLFxuICAgICdlcnJvclBvbGljeScsXG4gICAgJ2ludmFsaWRJZlN0YWxlJyxcbiAgICAncG9sbEZyZXF1ZW5jeScsXG4gICAgJ2dldE9wdGltaXN0aWNSZXNwb25zZScsXG4gICAgJ3VwZGF0ZScsXG4gIF07XG5cbiAgZnVuY3Rpb24gc2VyaWFsaXplRW5kcG9pbnQoZW5kcG9pbnQ6IEVuZHBvaW50SW50ZXJmYWNlKSB7XG4gICAgY29uc3Qgc2VyaWFsOiBhbnkgPSB7XG4gICAgICBuYW1lOiBlbmRwb2ludC5uYW1lLFxuICAgICAgc2NoZW1hOiAoZW5kcG9pbnQuc2NoZW1hIGFzIGFueSk/LnRvSlNPTj8uKCkgPz8gZW5kcG9pbnQuc2NoZW1hLFxuICAgICAgc2lkZUVmZmVjdDogZW5kcG9pbnQuc2lkZUVmZmVjdCxcbiAgICB9O1xuICAgIGV4dHJhRW5kcG9pbnRLZXlzLmZvckVhY2goa2V5ID0+IHtcbiAgICAgIGlmIChrZXkgaW4gZW5kcG9pbnQpXG4gICAgICAgIHNlcmlhbFtrZXldID0gZW5kcG9pbnRba2V5IGFzIGtleW9mIEVuZHBvaW50SW50ZXJmYWNlXTtcbiAgICB9KTtcbiAgICByZXR1cm4gc2VyaWFsO1xuICB9XG5cbiAgY29uc3QgSEFTSU5UTCA9IHR5cGVvZiBJbnRsICE9PSAndW5kZWZpbmVkJztcbiAgREVGQVVMVF9DT05GSUcgPSB7XG4gICAgbmFtZTogYERhdGEgQ2xpZW50OiAke2dsb2JhbFRoaXMuZG9jdW1lbnQ/LnRpdGxlfWAsXG4gICAgYXV0b1BhdXNlOiB0cnVlLFxuICAgIGZlYXR1cmVzOiB7XG4gICAgICBwYXVzZTogdHJ1ZSwgLy8gc3RhcnQvcGF1c2UgcmVjb3JkaW5nIG9mIGRpc3BhdGNoZWQgYWN0aW9uc1xuICAgICAgbG9jazogdHJ1ZSwgLy8gbG9jay91bmxvY2sgZGlzcGF0Y2hpbmcgYWN0aW9ucyBhbmQgc2lkZSBlZmZlY3RzXG4gICAgICBwZXJzaXN0OiBmYWxzZSwgLy8gcGVyc2lzdCBzdGF0ZXMgb24gcGFnZSByZWxvYWRpbmdcbiAgICAgIGV4cG9ydDogdHJ1ZSwgLy8gZXhwb3J0IGhpc3Rvcnkgb2YgYWN0aW9ucyBpbiBhIGZpbGVcbiAgICAgIGltcG9ydDogJ2N1c3RvbScsIC8vIGltcG9ydCBoaXN0b3J5IG9mIGFjdGlvbnMgZnJvbSBhIGZpbGVcbiAgICAgIGp1bXA6IHRydWUsIC8vIGp1bXAgYmFjayBhbmQgZm9ydGggKHRpbWUgdHJhdmVsbGluZylcbiAgICAgIHNraXA6IHRydWUsIC8vIHNraXAgKGNhbmNlbCkgYWN0aW9uc1xuICAgICAgcmVvcmRlcjogdHJ1ZSwgLy8gZHJhZyBhbmQgZHJvcCBhY3Rpb25zIGluIHRoZSBoaXN0b3J5IGxpc3RcbiAgICAgIGRpc3BhdGNoOiBmYWxzZSwgLy8gZGlzcGF0Y2ggY3VzdG9tIGFjdGlvbnMgb3IgYWN0aW9uIGNyZWF0b3JzXG4gICAgICB0ZXN0OiBmYWxzZSwgLy8gZ2VuZXJhdGUgdGVzdHMgZm9yIHRoZSBzZWxlY3RlZCBhY3Rpb25zXG4gICAgfSxcbiAgICBhY3Rpb25TYW5pdGl6ZXI6IChhY3Rpb246IEFjdGlvblR5cGVzKSA9PiB7XG4gICAgICBpZiAoISgnZW5kcG9pbnQnIGluIGFjdGlvbikpIHJldHVybiBhY3Rpb247XG4gICAgICByZXR1cm4ge1xuICAgICAgICAuLi5hY3Rpb24sXG4gICAgICAgIGVuZHBvaW50OiBzZXJpYWxpemVFbmRwb2ludChhY3Rpb24uZW5kcG9pbnQpLFxuICAgICAgfTtcbiAgICB9LFxuICAgIHNlcmlhbGl6ZToge1xuICAgICAgb3B0aW9uczogdW5kZWZpbmVkLFxuICAgICAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgICAgIHJlcGxhY2VyOlxuICAgICAgICBIQVNJTlRMID9cbiAgICAgICAgICAoa2V5OiBzdHJpbmcgfCBudW1iZXIgfCBzeW1ib2wsIHZhbHVlOiB1bmtub3duKSA9PiB7XG4gICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgIHR5cGVvZiB2YWx1ZSA9PT0gJ251bWJlcicgJiZcbiAgICAgICAgICAgICAgdHlwZW9mIGtleSA9PT0gJ3N0cmluZycgJiZcbiAgICAgICAgICAgICAgaXNGaW5pdGUodmFsdWUpICYmXG4gICAgICAgICAgICAgIChrZXkgPT09ICdkYXRlJyB8fCBrZXkuZW5kc1dpdGgoJ0F0JykpXG4gICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgcmV0dXJuIEludGwuRGF0ZVRpbWVGb3JtYXQoJ2VuLVVTJywge1xuICAgICAgICAgICAgICAgIGhvdXI6ICdudW1lcmljJyxcbiAgICAgICAgICAgICAgICBtaW51dGU6ICdudW1lcmljJyxcbiAgICAgICAgICAgICAgICBzZWNvbmQ6ICdudW1lcmljJyxcbiAgICAgICAgICAgICAgICBmcmFjdGlvbmFsU2Vjb25kRGlnaXRzOiAzLFxuICAgICAgICAgICAgICB9KS5mb3JtYXQodmFsdWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHZhbHVlO1xuICAgICAgICAgIH1cbiAgICAgICAgOiB1bmRlZmluZWQsXG4gICAgfSxcbiAgfTtcbn1cblxuLyoqIEludGVncmF0ZXMgd2l0aCBodHRwczovL2dpdGh1Yi5jb20vcmVkdXhqcy9yZWR1eC1kZXZ0b29sc1xuICpcbiAqIE9wdGlvbnM6IGh0dHBzOi8vZ2l0aHViLmNvbS9yZWR1eGpzL3JlZHV4LWRldnRvb2xzL2Jsb2IvbWFpbi9leHRlbnNpb24vZG9jcy9BUEkvQXJndW1lbnRzLm1kXG4gKlxuICogQHNlZSBodHRwczovL2RhdGFjbGllbnQuaW8vZG9jcy9hcGkvRGV2VG9vbHNNYW5hZ2VyXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIERldlRvb2xzTWFuYWdlciBpbXBsZW1lbnRzIE1hbmFnZXIge1xuICBkZWNsYXJlIG1pZGRsZXdhcmU6IE1pZGRsZXdhcmU7XG4gIGRlY2xhcmUgcHJvdGVjdGVkIGRldlRvb2xzOiB1bmRlZmluZWQgfCBhbnk7XG4gIHByb3RlY3RlZCBzdGFydGVkID0gZmFsc2U7XG4gIHByb3RlY3RlZCBhY3Rpb25zOiBbQWN0aW9uVHlwZXMsIFN0YXRlPHVua25vd24+XVtdID0gW107XG4gIGRlY2xhcmUgcHJvdGVjdGVkIGNvbnRyb2xsZXI6IENvbnRyb2xsZXI7XG4gIGRlY2xhcmUgc2tpcExvZ2dpbmc/OiAoYWN0aW9uOiBBY3Rpb25UeXBlcykgPT4gYm9vbGVhbjtcbiAgbWF4QnVmZmVyTGVuZ3RoID0gMTAwO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIGNvbmZpZz86IERldlRvb2xzQ29uZmlnLFxuICAgIHNraXBMb2dnaW5nPzogKGFjdGlvbjogQWN0aW9uVHlwZXMpID0+IGJvb2xlYW4sXG4gICkge1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgdGhpcy5kZXZUb29scyA9XG4gICAgICB0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJyAmJlxuICAgICAgKHdpbmRvdyBhcyBhbnkpLl9fUkVEVVhfREVWVE9PTFNfRVhURU5TSU9OX18gJiZcbiAgICAgICh3aW5kb3cgYXMgYW55KS5fX1JFRFVYX0RFVlRPT0xTX0VYVEVOU0lPTl9fLmNvbm5lY3Qoe1xuICAgICAgICAuLi5ERUZBVUxUX0NPTkZJRyxcbiAgICAgICAgLi4uY29uZmlnLFxuICAgICAgfSk7XG4gICAgLy8gd2UgY3V0IGl0IGluIGhhbGYgc28gd2Ugc2hvdWxkIGRvdWJsZSBzbyB3ZSBkb24ndCBsb3NlXG4gICAgaWYgKGNvbmZpZz8ubWF4QWdlKSB0aGlzLm1heEJ1ZmZlckxlbmd0aCA9IGNvbmZpZy5tYXhBZ2UgKiAyO1xuICAgIGlmIChza2lwTG9nZ2luZykgdGhpcy5za2lwTG9nZ2luZyA9IHNraXBMb2dnaW5nO1xuICB9XG5cbiAgc3RhdGljIHtcbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICB0aGlzLnByb3RvdHlwZS5taWRkbGV3YXJlID0gZnVuY3Rpb24gKGNvbnRyb2xsZXIpIHtcbiAgICAgICAgaWYgKCF0aGlzLmRldlRvb2xzKSByZXR1cm4gbmV4dCA9PiBhY3Rpb24gPT4gbmV4dChhY3Rpb24pO1xuICAgICAgICB0aGlzLmNvbnRyb2xsZXIgPSBjb250cm9sbGVyO1xuICAgICAgICBjb25zdCByZWR1Y2VyID0gY3JlYXRlUmVkdWNlcihjb250cm9sbGVyIGFzIGFueSk7XG4gICAgICAgIGxldCBzdGF0ZSA9IGNvbnRyb2xsZXIuZ2V0U3RhdGUoKTtcbiAgICAgICAgcmV0dXJuIG5leHQgPT4gYWN0aW9uID0+IHtcbiAgICAgICAgICBjb25zdCBzaG91bGRTa2lwID0gdGhpcy5za2lwTG9nZ2luZz8uKGFjdGlvbik7XG4gICAgICAgICAgY29uc3QgcmV0ID0gbmV4dChhY3Rpb24pO1xuICAgICAgICAgIGlmICh0aGlzLnN0YXJ0ZWQpIHtcbiAgICAgICAgICAgIC8vIHdlIHRyYWNrIHN0YXRlIGNoYW5nZXMgaGVyZSBzaW5jZSBnZXRTdGF0ZSgpIHdpbGwgb25seSB1cGRhdGUgYWZ0ZXIgYSBiYXRjaCBjb21taXRcbiAgICAgICAgICAgIHN0YXRlID0gcmVkdWNlcihzdGF0ZSwgYWN0aW9uKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgc3RhdGUgPSBjb250cm9sbGVyLmdldFN0YXRlKCk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHJldC50aGVuKCgpID0+IHtcbiAgICAgICAgICAgIGlmIChzaG91bGRTa2lwKSByZXR1cm47XG4gICAgICAgICAgICB0aGlzLmhhbmRsZUFjdGlvbihhY3Rpb24sIHN0YXRlLm9wdGltaXN0aWMucmVkdWNlKHJlZHVjZXIsIHN0YXRlKSk7XG4gICAgICAgICAgfSk7XG4gICAgICAgICAgcmV0dXJuIHJldDtcbiAgICAgICAgfTtcbiAgICAgIH07XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMucHJvdG90eXBlLm1pZGRsZXdhcmUgPSAoKSA9PiBuZXh0ID0+IGFjdGlvbiA9PiBuZXh0KGFjdGlvbik7XG4gICAgfVxuICB9XG5cbiAgaGFuZGxlQWN0aW9uKGFjdGlvbjogYW55LCBzdGF0ZTogYW55KSB7XG4gICAgaWYgKHRoaXMuc3RhcnRlZCkge1xuICAgICAgdGhpcy5kZXZUb29scy5zZW5kKGFjdGlvbiwgc3RhdGUpO1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyBhdm9pZCB0aGlzIGdldHRpbmcgdG9vIGJpZyBpbiBjYXNlIHRoaXMgaXMgbG9uZyBydW5uaW5nXG4gICAgICAvLyB3ZSBjdXQgaW4gaGFsZiBzbyB3ZSBhcmVuJ3QgY29uc3RhbnRseSByZWFsbG9jYXRpbmdcbiAgICAgIGlmICh0aGlzLmFjdGlvbnMubGVuZ3RoID4gdGhpcy5tYXhCdWZmZXJMZW5ndGgpXG4gICAgICAgIHRoaXMuYWN0aW9ucyA9IHRoaXMuYWN0aW9ucy5zbGljZSh0aGlzLm1heEJ1ZmZlckxlbmd0aCAvIDIpO1xuICAgICAgLy8gcXVldWUgYWN0aW9uc1xuICAgICAgdGhpcy5hY3Rpb25zLnB1c2goW2FjdGlvbiwgc3RhdGVdKTtcbiAgICB9XG4gIH1cblxuICAvKiogQ2FsbGVkIHdoZW4gaW5pdGlhbCBzdGF0ZSBpcyByZWFkeSAqL1xuICBpbml0KHN0YXRlOiBTdGF0ZTxhbnk+KSB7XG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgdGhpcy5kZXZUb29scykge1xuICAgICAgdGhpcy5kZXZUb29scy5pbml0KHN0YXRlKTtcbiAgICAgIHRoaXMuZGV2VG9vbHMuc3Vic2NyaWJlKChtc2c6IGFueSkgPT4ge1xuICAgICAgICBzd2l0Y2ggKG1zZy50eXBlKSB7XG4gICAgICAgICAgY2FzZSAnU1RBUlQnOlxuICAgICAgICAgICAgdGhpcy5zdGFydGVkID0gdHJ1ZTtcblxuICAgICAgICAgICAgaWYgKHRoaXMuYWN0aW9ucy5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgdGhpcy5hY3Rpb25zLmZvckVhY2goKFthY3Rpb24sIHN0YXRlXSkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuaGFuZGxlQWN0aW9uKGFjdGlvbiwgc3RhdGUpO1xuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgdGhpcy5hY3Rpb25zID0gW107XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICBjYXNlICdTVE9QJzpcbiAgICAgICAgICAgIHRoaXMuc3RhcnRlZCA9IGZhbHNlO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgY2FzZSAnRElTUEFUQ0gnOlxuICAgICAgICAgICAgaWYgKG1zZy5wYXlsb2FkLnR5cGUgPT09ICdSRVNFVCcpIHtcbiAgICAgICAgICAgICAgdGhpcy5jb250cm9sbGVyLnJlc2V0RW50aXJlU3RvcmUoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICAvKiogRW5zdXJlcyBhbGwgc3Vic2NyaXB0aW9ucyBhcmUgY2xlYW5lZCB1cC4gKi9cbiAgY2xlYW51cCgpIHt9XG59XG4iXSwibWFwcGluZ3MiOiI7QUFHQSxPQUFPQSxhQUFhLE1BQU0sbUNBQW1DO0FBSzdELElBQUlDLGNBQWMsR0FBRyxDQUFDLENBQUM7QUFFdkIsSUFBSUMsT0FBTyxDQUFDQyxHQUFHLENBQUNDLFFBQVEsS0FBSyxZQUFZLEVBQUU7RUFBQSxJQUFBQyxvQkFBQTtFQUN6QyxNQUFNQyxpQkFBaUIsR0FBRyxDQUN4QixrQkFBa0IsRUFDbEIsbUJBQW1CLEVBQ25CLGFBQWEsRUFDYixnQkFBZ0IsRUFDaEIsZUFBZSxFQUNmLHVCQUF1QixFQUN2QixRQUFRLENBQ1Q7RUFFRCxTQUFTQyxpQkFBaUJBLENBQUNDLFFBQTJCLEVBQUU7SUFBQSxJQUFBQyxPQUFBLEVBQUFDLGdCQUFBO0lBQ3RELE1BQU1DLE1BQVcsR0FBRztNQUNsQkMsSUFBSSxFQUFFSixRQUFRLENBQUNJLElBQUk7TUFDbkJDLE1BQU0sR0FBQUosT0FBQSxJQUFBQyxnQkFBQSxHQUFHRixRQUFRLENBQUNLLE1BQU0sYUFBaEJILGdCQUFBLENBQTBCSSxNQUFNLG9CQUFoQ0osZ0JBQUEsQ0FBMEJJLE1BQU0sQ0FBRyxDQUFDLFlBQUFMLE9BQUEsR0FBSUQsUUFBUSxDQUFDSyxNQUFNO01BQy9ERSxVQUFVLEVBQUVQLFFBQVEsQ0FBQ087SUFDdkIsQ0FBQztJQUNEVCxpQkFBaUIsQ0FBQ1UsT0FBTyxDQUFDQyxHQUFHLElBQUk7TUFDL0IsSUFBSUEs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
166
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJjcmVhdGVSZWR1Y2VyIiwiREVGQVVMVF9DT05GSUciLCJwcm9jZXNzIiwiZW52IiwiTk9ERV9FTlYiLCJfZ2xvYmFsVGhpcyRkb2N1bWVudCIsImV4dHJhRW5kcG9pbnRLZXlzIiwic2VyaWFsaXplRW5kcG9pbnQiLCJlbmRwb2ludCIsIl90b0pTT04iLCJfZW5kcG9pbnQkc2NoZW1hIiwic2VyaWFsIiwibmFtZSIsInNjaGVtYSIsInRvSlNPTiIsInNpZGVFZmZlY3QiLCJmb3JFYWNoIiwia2V5IiwiSEFTSU5UTCIsIkludGwiLCJfZ2xvYmFsVGhpcyIsImRvY3VtZW50IiwidGl0bGUiLCJhdXRvUGF1c2UiLCJmZWF0dXJlcyIsInBhdXNlIiwibG9jayIsInBlcnNpc3QiLCJleHBvcnQiLCJpbXBvcnQiLCJqdW1wIiwic2tpcCIsInJlb3JkZXIiLCJkaXNwYXRjaCIsInRlc3QiLCJhY3Rpb25TYW5pdGl6ZXIiLCJhY3Rpb24iLCJfZXh0ZW5kcyIsInNlcmlhbGl6ZSIsIm9wdGlvbnMiLCJ1bmRlZmluZWQiLCJyZXBsYWNlciIsInZhbHVlIiwiaXNGaW5pdGUiLCJfZW5kc1dpdGhJbnN0YW5jZVByb3BlcnR5IiwiY2FsbCIsIkRhdGVUaW1lRm9ybWF0IiwiaG91ciIsIm1pbnV0ZSIsInNlY29uZCIsImZyYWN0aW9uYWxTZWNvbmREaWdpdHMiLCJmb3JtYXQiLCJEZXZUb29sc01hbmFnZXIiLCJjb25zdHJ1Y3RvciIsImNvbmZpZyIsInNraXBMb2dnaW5nIiwic3RhcnRlZCIsImFjdGlvbnMiLCJtYXhCdWZmZXJMZW5ndGgiLCJkZXZUb29scyIsIndpbmRvdyIsIl9fUkVEVVhfREVWVE9PTFNfRVhURU5TSU9OX18iLCJjb25uZWN0IiwibWF4QWdlIiwiaGFuZGxlQWN0aW9uIiwic3RhdGUiLCJzZW5kIiwiX2NvbnRleHQiLCJsZW5ndGgiLCJzbGljZSIsIl9wdXNoSW5zdGFuY2VQcm9wZXJ0eSIsImluaXQiLCJzdWJzY3JpYmUiLCJtc2ciLCJ0eXBlIiwicGF5bG9hZCIsImNvbnRyb2xsZXIiLCJyZXNldEVudGlyZVN0b3JlIiwiY2xlYW51cCIsIl9EZXZUb29sc01hbmFnZXIiLCJwcm90b3R5cGUiLCJtaWRkbGV3YXJlIiwibmV4dCIsInJlZHVjZXIiLCJnZXRTdGF0ZSIsIl90aGlzJHNraXBMb2dnaW5nIiwic2hvdWxkU2tpcCIsInJldCIsInRoZW4iLCJfY29udGV4dDIiLCJfcmVkdWNlSW5zdGFuY2VQcm9wZXJ0eSIsIm9wdGltaXN0aWMiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvbWFuYWdlci9EZXZ0b29sc01hbmFnZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBEZXZUb29sc0NvbmZpZyB9IGZyb20gJy4vZGV2dG9vbHNUeXBlcy5qcyc7XG5pbXBvcnQgdHlwZSB7IENvbnRyb2xsZXIsIEVuZHBvaW50SW50ZXJmYWNlIH0gZnJvbSAnLi4vaW5kZXguanMnO1xuaW1wb3J0IHR5cGUgeyBNaWRkbGV3YXJlIH0gZnJvbSAnLi4vbWlkZGxld2FyZVR5cGVzLmpzJztcbmltcG9ydCBjcmVhdGVSZWR1Y2VyIGZyb20gJy4uL3N0YXRlL3JlZHVjZXIvY3JlYXRlUmVkdWNlci5qcyc7XG5pbXBvcnQgdHlwZSB7IE1hbmFnZXIsIFN0YXRlLCBBY3Rpb25UeXBlcyB9IGZyb20gJy4uL3R5cGVzLmpzJztcblxuZXhwb3J0IHR5cGUgeyBEZXZUb29sc0NvbmZpZyB9O1xuXG5sZXQgREVGQVVMVF9DT05GSUcgPSB7fTtcblxuaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgY29uc3QgZXh0cmFFbmRwb2ludEtleXMgPSBbXG4gICAgJ2RhdGFFeHBpcnlMZW5ndGgnLFxuICAgICdlcnJvckV4cGlyeUxlbmd0aCcsXG4gICAgJ2Vycm9yUG9saWN5JyxcbiAgICAnaW52YWxpZElmU3RhbGUnLFxuICAgICdwb2xsRnJlcXVlbmN5JyxcbiAgICAnZ2V0T3B0aW1pc3RpY1Jlc3BvbnNlJyxcbiAgICAndXBkYXRlJyxcbiAgXTtcblxuICBmdW5jdGlvbiBzZXJpYWxpemVFbmRwb2ludChlbmRwb2ludDogRW5kcG9pbnRJbnRlcmZhY2UpIHtcbiAgICBjb25zdCBzZXJpYWw6IGFueSA9IHtcbiAgICAgIG5hbWU6IGVuZHBvaW50Lm5hbWUsXG4gICAgICBzY2hlbWE6IChlbmRwb2ludC5zY2hlbWEgYXMgYW55KT8udG9KU09OPy4oKSA/PyBlbmRwb2ludC5zY2hlbWEsXG4gICAgICBzaWRlRWZmZWN0OiBlbmRwb2ludC5zaWRlRWZmZWN0LFxuICAgIH07XG4gICAgZXh0cmFFbmRwb2ludEtleXMuZm9yRWFjaChrZXkgPT4ge1xuICAgICAgaWYgKGtleSBpbiBlbmRwb2ludClcbiAgICAgICAgc2VyaWFsW2tleV0gPSBlbmRwb2ludFtrZXkgYXMga2V5b2YgRW5kcG9pbnRJbnRlcmZhY2VdO1xuICAgIH0pO1xuICAgIHJldHVybiBzZXJpYWw7XG4gIH1cblxuICBjb25zdCBIQVNJTlRMID0gdHlwZW9mIEludGwgIT09ICd1bmRlZmluZWQnO1xuICBERUZBVUxUX0NPTkZJRyA9IHtcbiAgICBuYW1lOiBgRGF0YSBDbGllbnQ6ICR7Z2xvYmFsVGhpcy5kb2N1bWVudD8udGl0bGV9YCxcbiAgICBhdXRvUGF1c2U6IHRydWUsXG4gICAgZmVhdHVyZXM6IHtcbiAgICAgIHBhdXNlOiB0cnVlLCAvLyBzdGFydC9wYXVzZSByZWNvcmRpbmcgb2YgZGlzcGF0Y2hlZCBhY3Rpb25zXG4gICAgICBsb2NrOiB0cnVlLCAvLyBsb2NrL3VubG9jayBkaXNwYXRjaGluZyBhY3Rpb25zIGFuZCBzaWRlIGVmZmVjdHNcbiAgICAgIHBlcnNpc3Q6IGZhbHNlLCAvLyBwZXJzaXN0IHN0YXRlcyBvbiBwYWdlIHJlbG9hZGluZ1xuICAgICAgZXhwb3J0OiB0cnVlLCAvLyBleHBvcnQgaGlzdG9yeSBvZiBhY3Rpb25zIGluIGEgZmlsZVxuICAgICAgaW1wb3J0OiAnY3VzdG9tJywgLy8gaW1wb3J0IGhpc3Rvcnkgb2YgYWN0aW9ucyBmcm9tIGEgZmlsZVxuICAgICAganVtcDogdHJ1ZSwgLy8ganVtcCBiYWNrIGFuZCBmb3J0aCAodGltZSB0cmF2ZWxsaW5nKVxuICAgICAgc2tpcDogdHJ1ZSwgLy8gc2tpcCAoY2FuY2VsKSBhY3Rpb25zXG4gICAgICByZW9yZGVyOiB0cnVlLCAvLyBkcmFnIGFuZCBkcm9wIGFjdGlvbnMgaW4gdGhlIGhpc3RvcnkgbGlzdFxuICAgICAgZGlzcGF0Y2g6IGZhbHNlLCAvLyBkaXNwYXRjaCBjdXN0b20gYWN0aW9ucyBvciBhY3Rpb24gY3JlYXRvcnNcbiAgICAgIHRlc3Q6IGZhbHNlLCAvLyBnZW5lcmF0ZSB0ZXN0cyBmb3IgdGhlIHNlbGVjdGVkIGFjdGlvbnNcbiAgICB9LFxuICAgIGFjdGlvblNhbml0aXplcjogKGFjdGlvbjogQWN0aW9uVHlwZXMpID0+IHtcbiAgICAgIGlmICghKCdlbmRwb2ludCcgaW4gYWN0aW9uKSkgcmV0dXJuIGFjdGlvbjtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIC4uLmFjdGlvbixcbiAgICAgICAgZW5kcG9pbnQ6IHNlcmlhbGl6ZUVuZHBvaW50KGFjdGlvbi5lbmRwb2ludCksXG4gICAgICB9O1xuICAgIH0sXG4gICAgc2VyaWFsaXplOiB7XG4gICAgICBvcHRpb25zOiB1bmRlZmluZWQsXG4gICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuICAgICAgcmVwbGFjZXI6XG4gICAgICAgIEhBU0lOVEwgP1xuICAgICAgICAgIChrZXk6IHN0cmluZyB8IG51bWJlciB8IHN5bWJvbCwgdmFsdWU6IHVua25vd24pID0+IHtcbiAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgdHlwZW9mIHZhbHVlID09PSAnbnVtYmVyJyAmJlxuICAgICAgICAgICAgICB0eXBlb2Yga2V5ID09PSAnc3RyaW5nJyAmJlxuICAgICAgICAgICAgICBpc0Zpbml0ZSh2YWx1ZSkgJiZcbiAgICAgICAgICAgICAgKGtleSA9PT0gJ2RhdGUnIHx8IGtleS5lbmRzV2l0aCgnQXQnKSlcbiAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICByZXR1cm4gSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tVVMnLCB7XG4gICAgICAgICAgICAgICAgaG91cjogJ251bWVyaWMnLFxuICAgICAgICAgICAgICAgIG1pbnV0ZTogJ251bWVyaWMnLFxuICAgICAgICAgICAgICAgIHNlY29uZDogJ251bWVyaWMnLFxuICAgICAgICAgICAgICAgIGZyYWN0aW9uYWxTZWNvbmREaWdpdHM6IDMsXG4gICAgICAgICAgICAgIH0pLmZvcm1hdCh2YWx1ZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgICAgICAgfVxuICAgICAgICA6IHVuZGVmaW5lZCxcbiAgICB9LFxuICB9O1xufVxuXG4vKiogSW50ZWdyYXRlcyB3aXRoIGh0dHBzOi8vZ2l0aHViLmNvbS9yZWR1eGpzL3JlZHV4LWRldnRvb2xzXG4gKlxuICogT3B0aW9uczogaHR0cHM6Ly9naXRodWIuY29tL3JlZHV4anMvcmVkdXgtZGV2dG9vbHMvYmxvYi9tYWluL2V4dGVuc2lvbi9kb2NzL0FQSS9Bcmd1bWVudHMubWRcbiAqXG4gKiBAc2VlIGh0dHBzOi8vZGF0YWNsaWVudC5pby9kb2NzL2FwaS9EZXZUb29sc01hbmFnZXJcbiAqL1xuZXhwb3J0IGRlZmF1bHQgY2xhc3MgRGV2VG9vbHNNYW5hZ2VyIGltcGxlbWVudHMgTWFuYWdlciB7XG4gIGRlY2xhcmUgbWlkZGxld2FyZTogTWlkZGxld2FyZTtcbiAgZGVjbGFyZSBwcm90ZWN0ZWQgZGV2VG9vbHM6IHVuZGVmaW5lZCB8IGFueTtcbiAgcHJvdGVjdGVkIHN0YXJ0ZWQgPSBmYWxzZTtcbiAgcHJvdGVjdGVkIGFjdGlvbnM6IFtBY3Rpb25UeXBlcywgU3RhdGU8dW5rbm93bj5dW10gPSBbXTtcbiAgZGVjbGFyZSBwcm90ZWN0ZWQgY29udHJvbGxlcjogQ29udHJvbGxlcjtcbiAgZGVjbGFyZSBza2lwTG9nZ2luZz86IChhY3Rpb246IEFjdGlvblR5cGVzKSA9PiBib29sZWFuO1xuICBtYXhCdWZmZXJMZW5ndGggPSAxMDA7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgY29uZmlnPzogRGV2VG9vbHNDb25maWcsXG4gICAgc2tpcExvZ2dpbmc/OiAoYWN0aW9uOiBBY3Rpb25UeXBlcykgPT4gYm9vbGVhbixcbiAgKSB7XG4gICAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgICB0aGlzLmRldlRvb2xzID1cbiAgICAgIHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnICYmXG4gICAgICAod2luZG93IGFzIGFueSkuX19SRURVWF9ERVZUT09MU19FWFRFTlNJT05fXyAmJlxuICAgICAgKHdpbmRvdyBhcyBhbnkpLl9fUkVEVVhfREVWVE9PTFNfRVhURU5TSU9OX18uY29ubmVjdCh7XG4gICAgICAgIC4uLkRFRkFVTFRfQ09ORklHLFxuICAgICAgICAuLi5jb25maWcsXG4gICAgICB9KTtcbiAgICAvLyB3ZSBjdXQgaXQgaW4gaGFsZiBzbyB3ZSBzaG91bGQgZG91YmxlIHNvIHdlIGRvbid0IGxvc2VcbiAgICBpZiAoY29uZmlnPy5tYXhBZ2UpIHRoaXMubWF4QnVmZmVyTGVuZ3RoID0gY29uZmlnLm1heEFnZSAqIDI7XG4gICAgaWYgKHNraXBMb2dnaW5nKSB0aGlzLnNraXBMb2dnaW5nID0gc2tpcExvZ2dpbmc7XG4gIH1cblxuICBzdGF0aWMge1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgIHRoaXMucHJvdG90eXBlLm1pZGRsZXdhcmUgPSBmdW5jdGlvbiAoY29udHJvbGxlcikge1xuICAgICAgICBpZiAoIXRoaXMuZGV2VG9vbHMpIHJldHVybiBuZXh0ID0+IGFjdGlvbiA9PiBuZXh0KGFjdGlvbik7XG4gICAgICAgIHRoaXMuY29udHJvbGxlciA9IGNvbnRyb2xsZXI7XG4gICAgICAgIGNvbnN0IHJlZHVjZXIgPSBjcmVhdGVSZWR1Y2VyKGNvbnRyb2xsZXIgYXMgYW55KTtcbiAgICAgICAgbGV0IHN0YXRlID0gY29udHJvbGxlci5nZXRTdGF0ZSgpO1xuICAgICAgICByZXR1cm4gbmV4dCA9PiBhY3Rpb24gPT4ge1xuICAgICAgICAgIGNvbnN0IHNob3VsZFNraXAgPSB0aGlzLnNraXBMb2dnaW5nPy4oYWN0aW9uKTtcbiAgICAgICAgICBjb25zdCByZXQgPSBuZXh0KGFjdGlvbik7XG4gICAgICAgICAgaWYgKHRoaXMuc3RhcnRlZCkge1xuICAgICAgICAgICAgLy8gd2UgdHJhY2sgc3RhdGUgY2hhbmdlcyBoZXJlIHNpbmNlIGdldFN0YXRlKCkgd2lsbCBvbmx5IHVwZGF0ZSBhZnRlciBhIGJhdGNoIGNvbW1pdFxuICAgICAgICAgICAgc3RhdGUgPSByZWR1Y2VyKHN0YXRlLCBhY3Rpb24pO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBzdGF0ZSA9IGNvbnRyb2xsZXIuZ2V0U3RhdGUoKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0LnRoZW4oKCkgPT4ge1xuICAgICAgICAgICAgaWYgKHNob3VsZFNraXApIHJldHVybjtcbiAgICAgICAgICAgIHRoaXMuaGFuZGxlQWN0aW9uKGFjdGlvbiwgc3RhdGUub3B0aW1pc3RpYy5yZWR1Y2UocmVkdWNlciwgc3RhdGUpKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgICByZXR1cm4gcmV0O1xuICAgICAgICB9O1xuICAgICAgfTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5wcm90b3R5cGUubWlkZGxld2FyZSA9ICgpID0+IG5leHQgPT4gYWN0aW9uID0+IG5leHQoYWN0aW9uKTtcbiAgICB9XG4gIH1cblxuICBoYW5kbGVBY3Rpb24oYWN0aW9uOiBhbnksIHN0YXRlOiBhbnkpIHtcbiAgICBpZiAodGhpcy5zdGFydGVkKSB7XG4gICAgICB0aGlzLmRldlRvb2xzLnNlbmQoYWN0aW9uLCBzdGF0ZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIGF2b2lkIHRoaXMgZ2V0dGluZyB0b28gYmlnIGluIGNhc2UgdGhpcyBpcyBsb25nIHJ1bm5pbmdcbiAgICAgIC8vIHdlIGN1dCBpbiBoYWxmIHNvIHdlIGFyZW4ndCBjb25zdGFudGx5IHJlYWxsb2NhdGluZ1xuICAgICAgaWYgKHRoaXMuYWN0aW9ucy5sZW5ndGggPiB0aGlzLm1heEJ1ZmZlckxlbmd0aClcbiAgICAgICAgdGhpcy5hY3Rpb25zID0gdGhpcy5hY3Rpb25zLnNsaWNlKHRoaXMubWF4QnVmZmVyTGVuZ3RoIC8gMik7XG4gICAgICAvLyBxdWV1ZSBhY3Rpb25zXG4gICAgICB0aGlzLmFjdGlvbnMucHVzaChbYWN0aW9uLCBzdGF0ZV0pO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBDYWxsZWQgd2hlbiBpbml0aWFsIHN0YXRlIGlzIHJlYWR5ICovXG4gIGluaXQoc3RhdGU6IFN0YXRlPGFueT4pIHtcbiAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiB0aGlzLmRldlRvb2xzKSB7XG4gICAgICB0aGlzLmRldlRvb2xzLmluaXQoc3RhdGUpO1xuICAgICAgdGhpcy5kZXZUb29scy5zdWJzY3JpYmUoKG1zZzogYW55KSA9PiB7XG4gICAgICAgIHN3aXRjaCAobXNnLnR5cGUpIHtcbiAgICAgICAgICBjYXNlICdTVEFSVCc6XG4gICAgICAgICAgICB0aGlzLnN0YXJ0ZWQgPSB0cnVlO1xuXG4gICAgICAgICAgICBpZiAodGhpcy5hY3Rpb25zLmxlbmd0aCkge1xuICAgICAgICAgICAgICB0aGlzLmFjdGlvbnMuZm9yRWFjaCgoW2FjdGlvbiwgc3RhdGVdKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5oYW5kbGVBY3Rpb24oYWN0aW9uLCBzdGF0ZSk7XG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICB0aGlzLmFjdGlvbnMgPSBbXTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIGNhc2UgJ1NUT1AnOlxuICAgICAgICAgICAgdGhpcy5zdGFydGVkID0gZmFsc2U7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICBjYXNlICdESVNQQVRDSCc6XG4gICAgICAgICAgICBpZiAobXNnLnBheWxvYWQudHlwZSA9PT0gJ1JFU0VUJykge1xuICAgICAgICAgICAgICB0aGlzLmNvbnRyb2xsZXIucmVzZXRFbnRpcmVTdG9yZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBFbnN1cmVzIGFsbCBzdWJzY3JpcHRpb25zIGFyZSBjbGVhbmVkIHVwLiAqL1xuICBjbGVhbnVwKCkge31cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBR0EsT0FBT0EsYUFBYSxNQUFNLG1DQUFtQztBQUs3RCxJQUFJQyxjQUFjLEdBQUcsQ0FBQyxDQUFDO0FBRXZCLElBQUlDLE9BQU8sQ0FBQ0MsR0FBRyxDQUFDQyxRQUFRLEtBQUssWUFBWSxFQUFFO0VBQUEsSUFBQUMsb0JBQUE7RUFDekMsTUFBTUMsaUJBQWlCLEdBQUcsQ0FDeEIsa0JBQWtCLEVBQ2xCLG1CQUFtQixFQUNuQixhQUFhLEVBQ2IsZ0JBQWdCLEVBQ2hCLGVBQWUsRUFDZix1QkFBdUIsRUFDdkIsUUFBUSxDQUNUO0VBRUQsU0FBU0MsaUJBQWlCQSxDQUFDQyxRQUEyQixFQUFFO0lBQUEsSUFBQUMsT0FBQSxFQUFBQyxnQkFBQTtJQUN0RCxNQUFNQyxNQUFXLEdBQUc7TUFDbEJDLElBQUksRUFBRUosUUFBUSxDQUFDSSxJQUFJO01BQ25CQyxNQUFNLEdBQUFKLE9BQUEsSUFBQUMsZ0JBQUEsR0FBR0YsUUFBUSxDQUFDSyxNQUFNLGFBQWhCSCxnQkFBQSxDQUEwQkksTUFBTSxvQkFBaENKLGdCQUFBLENBQTBCSSxNQUFNLENBQUcsQ0FBQyxZQUFBTCxPQUFBLEdBQUlELFFBQVEsQ0FBQ0ssTUFBTTtNQUMvREUsVUFBVSxFQUFFUCxRQUFRLENBQUNPO0lBQ3ZCLENBQUM7SUFDRFQsaUJBQWlCLENBQUNVLE9BQU8sQ0FBQ0MsR0FBRyxJQUFJO01BQy9CLElBQUlBLEdBQUcsSUFBSVQsUUFBUSxFQUNqQkcsTUFBTSxDQUFDTSxHQUFHLENBQUMsR0FBR1QsUUFBUSxDQUFDUyxHQUFHLENBQTRCO0lBQzFELENBQUMsQ0FBQztJQUNGLE9BQU9OLE1BQU07RUFDZjtFQUVBLE1BQU1PLE9BQU8sR0FBRyxPQUFPQyxJQUFJLEtBQUssV0FBVztFQUMzQ2xCLGNBQWMsR0FBRztJQUNmVyxJQUFJLEVBQUUsaUJBQUFQLG9CQUFBLEdBQWdCZSxXQUFBLENBQVdDLFFBQVEscUJBQW5CaEIsb0JBQUEsQ0FBcUJpQixLQUFLLEVBQUU7SUFDbERDLFNBQVMsRUFBRSxJQUFJO0lBQ2ZDLFFBQVEsRUFBRTtNQUNSQyxLQUFLLEVBQUUsSUFBSTtNQUFFO01BQ2JDLElBQUksRUFBRSxJQUFJO01BQUU7TUFDWkMsT0FBTyxFQUFFLEtBQUs7TUFBRTtNQUNoQkMsTUFBTSxFQUFFLElBQUk7TUFBRTtNQUNkQyxNQUFNLEVBQUUsUUFBUTtNQUFFO01BQ2xCQyxJQUFJLEVBQUUsSUFBSTtNQUFFO01BQ1pDLElBQUksRUFBRSxJQUFJO01BQUU7TUFDWkMsT0FBTyxFQUFFLElBQUk7TUFBRTtNQUNmQyxRQUFRLEVBQUUsS0FBSztNQUFFO01BQ2pCQyxJQUFJLEVBQUUsS0FBSyxDQUFFO0lBQ2YsQ0FBQztJQUNEQyxlQUFlLEVBQUdDLE1BQW1CLElBQUs7TUFDeEMsSUFBSSxFQUFFLFVBQVUsSUFBSUEsTUFBTSxDQUFDLEVBQUUsT0FBT0EsTUFBTTtNQUMxQyxPQUFBQyxRQUFBLEtBQ0tELE1BQU07UUFDVDVCLFFBQVEsRUFBRUQsaUJBQWlCLENBQUM2QixNQUFNLENBQUM1QixRQUFRO01BQUM7SUFFaEQsQ0FBQztJQUNEOEIsU0FBUyxFQUFFO01BQ1RDLE9BQU8sRUFBRUMsU0FBUztNQUNsQjtNQUNBQyxRQUFRLEVBQ052QixPQUFPLEdBQ0wsQ0FBQ0QsR0FBNkIsRUFBRXlCLEtBQWMsS0FBSztRQUNqRCxJQUNFLE9BQU9BLEtBQUssS0FBSyxRQUFRLElBQ3pCLE9BQU96QixHQUFHLEtBQUssUUFBUSxJQUN2QjBCLFFBQVEsQ0FBQ0QsS0FBSyxDQUFDLEtBQ2R6QixHQUFHLEtBQUssTUFBTSxJQUFJMkIseUJBQUEsQ0FBQTNCLEdBQUcsRUFBQTRCLElBQUEsQ0FBSDVCLEdBQUcsRUFBVSxJQUFJLENBQUMsQ0FBQyxFQUN0QztVQUNBLE9BQU9FLElBQUksQ0FBQzJCLGNBQWMsQ0FBQyxPQUFPLEVBQUU7WUFDbENDLElBQUksRUFBRSxTQUFTO1lBQ2ZDLE1BQU0sRUFBRSxTQUFTO1lBQ2pCQyxNQUFNLEVBQUUsU0FBUztZQUNqQkMsc0JBQXNCLEVBQUU7VUFDMUIsQ0FBQyxDQUFDLENBQUNDLE1BQU0sQ0FBQ1QsS0FBSyxDQUFDO1FBQ2xCO1FBQ0EsT0FBT0EsS0FBSztNQUNkLENBQUMsR0FDREY7SUFDTjtFQUNGLENBQUM7QUFDSDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxlQUFlLE1BQU1ZLGVBQWUsQ0FBb0I7RUFTdERDLFdBQVdBLENBQ1RDLE1BQXVCLEVBQ3ZCQyxXQUE4QyxFQUM5QztJQUFBLEtBVFFDLE9BQU8sR0FBRyxLQUFLO0lBQUEsS0FDZkMsT0FBTyxHQUFvQyxFQUFFO0lBQUEsS0FHdkRDLGVBQWUsR0FBRyxHQUFHO0lBTW5CO0lBQ0EsSUFBSSxDQUFDQyxRQUFRLEdBQ1gsT0FBT0MsTUFBTSxLQUFLLFdBQVcsSUFDNUJBLE1BQU0sQ0FBU0MsNEJBQTRCLElBQzNDRCxNQUFNLENBQVNDLDRCQUE0QixDQUFDQyxPQUFPLENBQUF6QixRQUFBLEtBQy9DcEMsY0FBYyxFQUNkcUQsTUFBTSxDQUNWLENBQUM7SUFDSjtJQUNBLElBQUlBLE1BQU0sWUFBTkEsTUFBTSxDQUFFUyxNQUFNLEVBQUUsSUFBSSxDQUFDTCxlQUFlLEdBQUdKLE1BQU0sQ0FBQ1MsTUFBTSxHQUFHLENBQUM7SUFDNUQsSUFBSVIsV0FBVyxFQUFFLElBQUksQ0FBQ0EsV0FBVyxHQUFHQSxXQUFXO0VBQ2pEO0VBZ0NBUyxZQUFZQSxDQUFDNUIsTUFBVyxFQUFFNkIsS0FBVSxFQUFFO0lBQ3BDLElBQUksSUFBSSxDQUFDVCxPQUFPLEVBQUU7TUFDaEIsSUFBSSxDQUFDRyxRQUFRLENBQUNPLElBQUksQ0FBQzlCLE1BQU0sRUFBRTZCLEtBQUssQ0FBQztJQUNuQyxDQUFDLE1BQU07TUFBQSxJQUFBRSxRQUFBO01BQ0w7TUFDQTtNQUNBLElBQUksSUFBSSxDQUFDVixPQUFPLENBQUNXLE1BQU0sR0FBRyxJQUFJLENBQUNWLGVBQWUsRUFDNUMsSUFBSSxDQUFDRCxPQUFPLEdBQUcsSUFBSSxDQUFDQSxPQUFPLENBQUNZLEtBQUssQ0FBQyxJQUFJLENBQUNYLGVBQWUsR0FBRyxDQUFDLENBQUM7TUFDN0Q7TUFDQVkscUJBQUEsQ0FBQUgsUUFBQSxPQUFJLENBQUNWLE9BQU8sRUFBQVosSUFBQSxDQUFBc0IsUUFBQSxFQUFNLENBQUMvQixNQUFNLEVBQUU2QixLQUFLLENBQUMsQ0FBQztJQUNwQztFQUNGOztFQUVBO0VBQ0FNLElBQUlBLENBQUNOLEtBQWlCLEVBQUU7SUFDdEIsSUFBSS9ELE9BQU8sQ0FBQ0MsR0FBRyxDQUFDQyxRQUFRLEtBQUssWUFBWSxJQUFJLElBQUksQ0FBQ3VELFFBQVEsRUFBRTtNQUMxRCxJQUFJLENBQUNBLFFBQVEsQ0FBQ1ksSUFBSSxDQUFDTixLQUFLLENBQUM7TUFDekIsSUFBSSxDQUFDTixRQUFRLENBQUNhLFNBQVMsQ0FBRUMsR0FBUSxJQUFLO1FBQ3BDLFFBQVFBLEdBQUcsQ0FBQ0MsSUFBSTtVQUNkLEtBQUssT0FBTztZQUNWLElBQUksQ0FBQ2xCLE9BQU8sR0FBRyxJQUFJO1lBRW5CLElBQUksSUFBSSxDQUFDQyxPQUFPLENBQUNXLE1BQU0sRUFBRTtjQUN2QixJQUFJLENBQUNYLE9BQU8sQ0FBQ3pDLE9BQU8sQ0FBQyxDQUFDLENBQUNvQixNQUFNLEVBQUU2QixLQUFLLENBQUMsS0FBSztnQkFDeEMsSUFBSSxDQUFDRCxZQUFZLENBQUM1QixNQUFNLEVBQUU2QixLQUFLLENBQUM7Y0FDbEMsQ0FBQyxDQUFDO2NBQ0YsSUFBSSxDQUFDUixPQUFPLEdBQUcsRUFBRTtZQUNuQjtZQUNBO1VBQ0YsS0FBSyxNQUFNO1lBQ1QsSUFBSSxDQUFDRCxPQUFPLEdBQUcsS0FBSztZQUNwQjtVQUNGLEtBQUssVUFBVTtZQUNiLElBQUlpQixHQUFHLENBQUNFLE9BQU8sQ0FBQ0QsSUFBSSxLQUFLLE9BQU8sRUFBRTtjQUNoQyxJQUFJLENBQUNFLFVBQVUsQ0FBQ0MsZ0JBQWdCLENBQUMsQ0FBQztZQUNwQztZQUNBO1FBQ0o7TUFDRixDQUFDLENBQUM7SUFDSjtFQUNGOztFQUVBO0VBQ0FDLE9BQU9BLENBQUEsRUFBRyxDQUFDO0FBQ2I7QUFBQ0MsZ0JBQUEsR0FwR29CM0IsZUFBZTtBQUFBO0VBMkJoQztFQUNBO0VBQ0EsSUFBSWxELE9BQU8sQ0FBQ0MsR0FBRyxDQUFDQyxRQUFRLEtBQUssWUFBWSxFQUFFO0lBQ3pDMkUsZ0JBQUEsQ0FBS0MsU0FBUyxDQUFDQyxVQUFVLEdBQUcsVUFBVUwsVUFBVSxFQUFFO01BQ2hELElBQUksQ0FBQyxJQUFJLENBQUNqQixRQUFRLEVBQUUsT0FBT3VCLElBQUksSUFBSTlDLE1BQU0sSUFBSThDLElBQUksQ0FBQzlDLE1BQU0sQ0FBQztNQUN6RCxJQUFJLENBQUN3QyxVQUFVLEdBQUdBLFVBQVU7TUFDNUIsTUFBTU8sT0FBTyxHQUFHbkYsYUFBYSxDQUFDNEUsVUFBaUIsQ0FBQztNQUNoRCxJQUFJWCxLQUFLLEdBQUdXLFVBQVUsQ0FBQ1EsUUFBUSxDQUFDLENBQUM7TUFDakMsT0FBT0YsSUFBSSxJQUFJOUMsTUFBTSxJQUFJO1FBQUEsSUFBQWlELGlCQUFBO1FBQ3ZCLE1BQU1DLFVBQVUsSUFBQUQsaUJBQUEsR0FBRyxJQUFJLENBQUM5QixXQUFXLHFCQUFoQjhCLGlCQUFBLENBQUF4QyxJQUFBLEtBQUksRUFBZVQsTUFBTSxDQUFDO1FBQzdDLE1BQU1tRCxHQUFHLEdBQUdMLElBQUksQ0FBQzlDLE1BQU0sQ0FBQztRQUN4QixJQUFJLElBQUksQ0FBQ29CLE9BQU8sRUFBRTtVQUNoQjtVQUNBUyxLQUFLLEdBQUdrQixPQUFPLENBQUNsQixLQUFLLEVBQUU3QixNQUFNLENBQUM7UUFDaEMsQ0FBQyxNQUFNO1VBQ0w2QixLQUFLLEdBQUdXLFVBQVUsQ0FBQ1EsUUFBUSxDQUFDLENBQUM7UUFDL0I7UUFDQUcsR0FBRyxDQUFDQyxJQUFJLENBQUMsTUFBTTtVQUFBLElBQUFDLFNBQUE7VUFDYixJQUFJSCxVQUFVLEVBQUU7VUFDaEIsSUFBSSxDQUFDdEIsWUFBWSxDQUFDNUIsTUFBTSxFQUFFc0QsdUJBQUEsQ0FBQUQsU0FBQSxHQUFBeEIsS0FBSyxDQUFDMEIsVUFBVSxFQUFBOUMsSUFBQSxDQUFBNEMsU0FBQSxFQUFRTixPQUFPLEVBQUVsQixLQUFLLENBQUMsQ0FBQztRQUNwRSxDQUFDLENBQUM7UUFDRixPQUFPc0IsR0FBRztNQUNaLENBQUM7SUFDSCxDQUFDO0VBQ0gsQ0FBQyxNQUFNO0lBQ0xSLGdCQUFBLENBQUtDLFNBQVMsQ0FBQ0MsVUFBVSxHQUFHLE1BQU1DLElBQUksSUFBSTlDLE1BQU0sSUFBSThDLElBQUksQ0FBQzlDLE1BQU0sQ0FBQztFQUNsRTtBQUFDIiwiaWdub3JlTGlzdCI6W119
@@ -1,3 +1,6 @@
1
+ import _extends from "@babel/runtime-corejs3/helpers/esm/extends";
2
+ import _Promise from "core-js-pure/stable/promise/index.js";
3
+ import _Promise$allSettled from "core-js-pure/stable/promise/all-settled.js";
1
4
  import { SET_RESPONSE, FETCH, RESET } from '../actionTypes.js';
2
5
  import { createSetResponse } from '../controller/actions/index.js';
3
6
  import Controller from '../controller/Controller.js';
@@ -39,7 +42,7 @@ export default class NetworkManager {
39
42
  if (action.endpoint.getOptimisticResponse !== undefined && action.endpoint.sideEffect) {
40
43
  return next(action);
41
44
  }
42
- return Promise.resolve();
45
+ return _Promise.resolve();
43
46
  case SET_RESPONSE:
44
47
  // only set after new state is computed
45
48
  return next(action).then(() => {
@@ -62,7 +65,7 @@ export default class NetworkManager {
62
65
  });
63
66
  case RESET:
64
67
  {
65
- const rejectors = Object.assign({}, this.rejectors);
68
+ const rejectors = _extends({}, this.rejectors);
66
69
  this.clearAll();
67
70
  return next(action).then(() => {
68
71
  // there could be external listeners to the promise
@@ -99,7 +102,7 @@ export default class NetworkManager {
99
102
  }
100
103
  allSettled() {
101
104
  const fetches = Object.values(this.fetched);
102
- if (fetches.length) return Promise.allSettled(fetches);
105
+ if (fetches.length) return _Promise$allSettled(fetches);
103
106
  }
104
107
 
105
108
  /** Clear all promise state */
@@ -228,7 +231,7 @@ export default class NetworkManager {
228
231
  if (key in this.fetched && this.fetchedAt[key] > lastReset) {
229
232
  return this.fetched[key];
230
233
  }
231
- this.fetched[key] = new Promise((resolve, reject) => {
234
+ this.fetched[key] = new _Promise((resolve, reject) => {
232
235
  this.resolvers[key] = resolve;
233
236
  this.rejectors[key] = reject;
234
237
  });
@@ -252,4 +255,4 @@ export default class NetworkManager {
252
255
  callback();
253
256
  }
254
257
  }
255
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJTRVRfUkVTUE9OU0UiLCJGRVRDSCIsIlJFU0VUIiwiY3JlYXRlU2V0UmVzcG9uc2UiLCJDb250cm9sbGVyIiwiUmVzZXRFcnJvciIsIkVycm9yIiwiY29uc3RydWN0b3IiLCJuYW1lIiwiTmV0d29ya01hbmFnZXIiLCJkYXRhRXhwaXJ5TGVuZ3RoIiwiZXJyb3JFeHBpcnlMZW5ndGgiLCJmZXRjaGVkIiwiT2JqZWN0IiwiY3JlYXRlIiwicmVzb2x2ZXJzIiwicmVqZWN0b3JzIiwiZmV0Y2hlZEF0IiwiY29udHJvbGxlciIsIm1pZGRsZXdhcmUiLCJuZXh0IiwiYWN0aW9uIiwidHlwZSIsImhhbmRsZUZldGNoIiwiZW5kcG9pbnQiLCJnZXRPcHRpbWlzdGljUmVzcG9uc2UiLCJ1bmRlZmluZWQiLCJzaWRlRWZmZWN0IiwiUHJvbWlzZSIsInJlc29sdmUiLCJ0aGVuIiwia2V5IiwiX2NvbnRyb2xsZXIkZ2V0U3RhdGUkIiwiZXJyb3IiLCJnZXRTdGF0ZSIsIm1ldGEiLCJoYW5kbGVTZXQiLCJhcmdzIiwicmVzcG9uc2UiLCJhc3NpZ24iLCJjbGVhckFsbCIsImsiLCJpbml0IiwiY2xlYW51cERhdGUiLCJjbGVhbnVwIiwiRGF0ZSIsIm5vdyIsInNraXBMb2dnaW5nIiwiYWxsU2V0dGxlZCIsImZldGNoZXMiLCJ2YWx1ZXMiLCJsZW5ndGgiLCJjbGVhciIsImNhdGNoIiwiZ2V0TGFzdFJlc2V0IiwibGFzdFJlc2V0IiwicmVqZWN0IiwidGhyb3R0bGUiLCJkZWZlcmVkRmV0Y2giLCJwcm9taXNlIiwicmVzb2x2ZVByb21pc2UiLCJkYXRhIiwicHJvY2VzcyIsImVudiIsIk5PREVfRU5WIiwiaXNOYU4iLCJjb25zb2xlIiwicHJvbWlzZUhhbmRsZXIiLCJmZXRjaCIsImlkbGVDYWxsYmFjayIsInRpbWVvdXQiLCJjYWxsYmFjayIsIm9wdGlvbnMiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvbWFuYWdlci9OZXR3b3JrTWFuYWdlci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTRVRfUkVTUE9OU0UsIEZFVENILCBSRVNFVCB9IGZyb20gJy4uL2FjdGlvblR5cGVzLmpzJztcbmltcG9ydCB7IGNyZWF0ZVNldFJlc3BvbnNlIH0gZnJvbSAnLi4vY29udHJvbGxlci9hY3Rpb25zL2luZGV4LmpzJztcbmltcG9ydCBDb250cm9sbGVyIGZyb20gJy4uL2NvbnRyb2xsZXIvQ29udHJvbGxlci5qcyc7XG5pbXBvcnQgdHlwZSB7XG4gIEZldGNoQWN0aW9uLFxuICBNYW5hZ2VyLFxuICBBY3Rpb25UeXBlcyxcbiAgTWlkZGxld2FyZUFQSSxcbiAgTWlkZGxld2FyZSxcbiAgU2V0UmVzcG9uc2VBY3Rpb24sXG59IGZyb20gJy4uL3R5cGVzLmpzJztcblxuZXhwb3J0IGNsYXNzIFJlc2V0RXJyb3IgZXh0ZW5kcyBFcnJvciB7XG4gIG5hbWUgPSAnUmVzZXRFcnJvcic7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoJ0Fib3J0ZWQgZHVlIHRvIFJFU0VUJyk7XG4gIH1cbn1cblxuLyoqIEhhbmRsZXMgYWxsIGFzeW5jIG5ldHdvcmsgZGlzcGF0Y2hlc1xuICpcbiAqIERlZHVwZXMgY29uY3VycmVudCByZXF1ZXN0cyBieSBrZWVwaW5nIHRyYWNrIG9mIGFsbCBmZXRjaGVzIGluIGZsaWdodFxuICogYW5kIHJldHVybmluZyBleGlzdGluZyBwcm9taXNlcyBmb3IgcmVxdWVzdHMgYWxyZWFkeSBpbiBmbGlnaHQuXG4gKlxuICogSW50ZXJmYWNlcyB3aXRoIHN0b3JlIHZpYSBhIHJlZHV4LWNvbXBhdGlibGUgbWlkZGxld2FyZS5cbiAqXG4gKiBAc2VlIGh0dHBzOi8vZGF0YWNsaWVudC5pby9kb2NzL2FwaS9OZXR3b3JrTWFuYWdlclxuICovXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBOZXR3b3JrTWFuYWdlciBpbXBsZW1lbnRzIE1hbmFnZXIge1xuICBwcm90ZWN0ZWQgZmV0Y2hlZDogeyBbazogc3RyaW5nXTogUHJvbWlzZTxhbnk+IH0gPSBPYmplY3QuY3JlYXRlKG51bGwpO1xuICBwcm90ZWN0ZWQgcmVzb2x2ZXJzOiB7IFtrOiBzdHJpbmddOiAodmFsdWU/OiBhbnkpID0+IHZvaWQgfSA9IHt9O1xuICBwcm90ZWN0ZWQgcmVqZWN0b3JzOiB7IFtrOiBzdHJpbmddOiAodmFsdWU/OiBhbnkpID0+IHZvaWQgfSA9IHt9O1xuICBwcm90ZWN0ZWQgZmV0Y2hlZEF0OiB7IFtrOiBzdHJpbmddOiBudW1iZXIgfSA9IHt9O1xuICBkZWNsYXJlIHJlYWRvbmx5IGRhdGFFeHBpcnlMZW5ndGg6IG51bWJlcjtcbiAgZGVjbGFyZSByZWFkb25seSBlcnJvckV4cGlyeUxlbmd0aDogbnVtYmVyO1xuICBwcm90ZWN0ZWQgY29udHJvbGxlcjogQ29udHJvbGxlciA9IG5ldyBDb250cm9sbGVyKCk7XG4gIGRlY2xhcmUgY2xlYW51cERhdGU/OiBudW1iZXI7XG5cbiAgY29uc3RydWN0b3IoeyBkYXRhRXhwaXJ5TGVuZ3RoID0gNjAwMDAsIGVycm9yRXhwaXJ5TGVuZ3RoID0gMTAwMCB9ID0ge30pIHtcbiAgICB0aGlzLmRhdGFFeHBpcnlMZW5ndGggPSBkYXRhRXhwaXJ5TGVuZ3RoO1xuICAgIHRoaXMuZXJyb3JFeHBpcnlMZW5ndGggPSBlcnJvckV4cGlyeUxlbmd0aDtcbiAgfVxuXG4gIG1pZGRsZXdhcmU6IE1pZGRsZXdhcmUgPSBjb250cm9sbGVyID0+IHtcbiAgICB0aGlzLmNvbnRyb2xsZXIgPSBjb250cm9sbGVyO1xuICAgIHJldHVybiBuZXh0ID0+IGFjdGlvbiA9PiB7XG4gICAgICBzd2l0Y2ggKGFjdGlvbi50eXBlKSB7XG4gICAgICAgIGNhc2UgRkVUQ0g6XG4gICAgICAgICAgdGhpcy5oYW5kbGVGZXRjaChhY3Rpb24pO1xuICAgICAgICAgIC8vIFRoaXMgaXMgdGhlIG9ubHkgY2FzZSB0aGF0IGNhdXNlcyBhbnkgc3RhdGUgY2hhbmdlXG4gICAgICAgICAgLy8gSXQncyBpbXBvcnRhbnQgdG8gaW50ZXJjZXB0IG90aGVyIGZldGNoZXMgYXMgd2UgZG9uJ3Qgd2FudCB0byB0cmlnZ2VyIHJlZHVjZXJzIGR1cmluZ1xuICAgICAgICAgIC8vIHJlbmRlciAtIHNvIHdlIG5lZWQgdG8gc3RvcCAncmVhZG9ubHknIGZldGNoZXMgd2hpY2ggY2FuIGJlIHRyaWdnZXJlZCBpbiByZW5kZXJcbiAgICAgICAgICBpZiAoXG4gICAgICAgICAgICBhY3Rpb24uZW5kcG9pbnQuZ2V0T3B0aW1pc3RpY1Jlc3BvbnNlICE9PSB1bmRlZmluZWQgJiZcbiAgICAgICAgICAgIGFjdGlvbi5lbmRwb2ludC5zaWRlRWZmZWN0XG4gICAgICAgICAgKSB7XG4gICAgICAgICAgICByZXR1cm4gbmV4dChhY3Rpb24pO1xuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCk7XG4gICAgICAgIGNhc2UgU0VUX1JFU1BPTlNFOlxuICAgICAgICAgIC8vIG9ubHkgc2V0IGFmdGVyIG5ldyBzdGF0ZSBpcyBjb21wdXRlZFxuICAgICAgICAgIHJldHVybiBuZXh0KGFjdGlvbikudGhlbigoKSA9PiB7XG4gICAgICAgICAgICBpZiAoYWN0aW9uLmtleSBpbiB0aGlzLmZldGNoZWQpIHtcbiAgICAgICAgICAgICAgLy8gTm90ZTogbWV0YSAqbXVzdCogYmUgc2V0IGJ5IHJlZHVjZXIgc28gdGhpcyBzaG91bGQgYmUgc2FmZVxuICAgICAgICAgICAgICBjb25zdCBlcnJvciA9IGNvbnRyb2xsZXIuZ2V0U3RhdGUoKS5tZXRhW2FjdGlvbi5rZXldPy5lcnJvcjtcbiAgICAgICAgICAgICAgLy8gcHJvY2Vzc2luZyBlcnJvcnMgcmVzdWx0IGluIHN0YXRlIG1ldGEgaGF2aW5nIGVycm9yLCBzbyB3ZSBzaG91bGQgcmVqZWN0IHRoZSBwcm9taXNlXG4gICAgICAgICAgICAgIGlmIChlcnJvcikge1xuICAgICAgICAgICAgICAgIHRoaXMuaGFuZGxlU2V0KFxuICAgICAgICAgICAgICAgICAgY3JlYXRlU2V0UmVzcG9uc2UoYWN0aW9uLmVuZHBvaW50LCB7XG4gICAgICAgICAgICAgICAgICAgIGFyZ3M6IGFjdGlvbi5hcmdzLFxuICAgICAgICAgICAgICAgICAgICByZXNwb25zZTogZXJyb3IsXG4gICAgICAgICAgICAgICAgICAgIGZldGNoZWRBdDogYWN0aW9uLm1ldGEuZmV0Y2hlZEF0LFxuICAgICAgICAgICAgICAgICAgICBlcnJvcjogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5oYW5kbGVTZXQoYWN0aW9uKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pO1xuICAgICAgICBjYXNlIFJFU0VUOiB7XG4gICAgICAgICAgY29uc3QgcmVqZWN0b3JzID0geyAuLi50aGlzLnJlamVjdG9ycyB9O1xuXG4gICAgICAgICAgdGhpcy5jbGVhckFsbCgpO1xuICAgICAgICAgIHJldHVybiBuZXh0KGFjdGlvbikudGhlbigoKSA9PiB7XG4gICAgICAgICAgICAvLyB0aGVyZSBjb3VsZCBiZSBleHRlcm5hbCBsaXN0ZW5lcnMgdG8gdGhlIHByb21pc2VcbiAgICAgICAgICAgIC8vIHRoaXMgbXVzdCBoYXBwZW4gYWZ0ZXIgY29tbWl0IHNvIG91ciBvd24gcmVqZWN0b3Iga25vd3Mgbm90IHRvIGRpc3BhdGNoIGFuIGVycm9yIGJhc2VkIG9uIHRoaXNcbiAgICAgICAgICAgIGZvciAoY29uc3QgayBpbiByZWplY3RvcnMpIHtcbiAgICAgICAgICAgICAgcmVqZWN0b3JzW2tdKG5ldyBSZXNldEVycm9yKCkpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgcmV0dXJuIG5leHQoYWN0aW9uKTtcbiAgICAgIH1cbiAgICB9O1xuICB9O1xuXG4gIC8qKiBPbiBtb3VudCAqL1xuICBpbml0KCkge1xuICAgIGRlbGV0ZSB0aGlzLmNsZWFudXBEYXRlO1xuICB9XG5cbiAgLyoqIEVuc3VyZXMgYWxsIHByb21pc2VzIGFyZSBjb21wbGV0ZWQgYnkgcmVqZWN0aW5nIHJlbWFpbmluZy4gKi9cbiAgY2xlYW51cCgpIHtcbiAgICAvLyBlbnN1cmUgbm8gZGlzcGF0Y2hlcyBhZnRlciB1bm1vdW50XG4gICAgLy8gdGhpcyBtdXN0IGJlIHJldmVyc2libGUgKGRvbmUgaW4gaW5pdCkgc28gdXNlRWZmZWN0KCkgcmVtYWlucyBzeW1tZXRyaWNcbiAgICB0aGlzLmNsZWFudXBEYXRlID0gRGF0ZS5ub3coKTtcbiAgfVxuXG4gIC8qKiBVc2VkIGJ5IERldnRvb2xzTWFuYWdlciB0byBkZXRlcm1pbmUgd2hldGhlciB0byBsb2cgYW4gYWN0aW9uICovXG4gIHNraXBMb2dnaW5nKGFjdGlvbjogQWN0aW9uVHlwZXMpIHtcbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuICAgIHJldHVybiBhY3Rpb24udHlwZSA9PT0gRkVUQ0ggJiYgYWN0aW9uLmtleSBpbiB0aGlzLmZldGNoZWQ7XG4gIH1cblxuICBhbGxTZXR0bGVkKCkge1xuICAgIGNvbnN0IGZldGNoZXMgPSBPYmplY3QudmFsdWVzKHRoaXMuZmV0Y2hlZCk7XG4gICAgaWYgKGZldGNoZXMubGVuZ3RoKSByZXR1cm4gUHJvbWlzZS5hbGxTZXR0bGVkKGZldGNoZXMpO1xuICB9XG5cbiAgLyoqIENsZWFyIGFsbCBwcm9taXNlIHN0YXRlICovXG4gIHByb3RlY3RlZCBjbGVhckFsbCgpIHtcbiAgICBmb3IgKGNvbnN0IGsgaW4gdGhpcy5yZWplY3RvcnMpIHtcbiAgICAgIHRoaXMuY2xlYXIoayk7XG4gICAgfVxuICB9XG5cbiAgLyoqIENsZWFyIHByb21pc2Ugc3RhdGUgZm9yIGEgZ2l2ZW4ga2V5ICovXG4gIHByb3RlY3RlZCBjbGVhcihrZXk6IHN0cmluZykge1xuICAgIHRoaXMuZmV0Y2hlZFtrZXldLmNhdGNoKCgpID0+IHt9KTtcbiAgICBkZWxldGUgdGhpcy5yZXNvbHZlcnNba2V5XTtcbiAgICBkZWxldGUgdGhpcy5yZWplY3RvcnNba2V5XTtcbiAgICBkZWxldGUgdGhpcy5mZXRjaGVkW2tleV07XG4gICAgZGVsZXRlIHRoaXMuZmV0Y2hlZEF0W2tleV07XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0TGFzdFJlc2V0KCkge1xuICAgIGlmICh0aGlzLmNsZWFudXBEYXRlKSByZXR1cm4gdGhpcy5jbGVhbnVwRGF0ZTtcbiAgICByZXR1cm4gdGhpcy5jb250cm9sbGVyLmdldFN0YXRlKCkubGFzdFJlc2V0O1xuICB9XG5cbiAgLyoqIENhbGxlZCB3aGVuIG1pZGRsZXdhcmUgaW50ZXJjZXB0cyAncmRjL2ZldGNoJyBhY3Rpb24uXG4gICAqXG4gICAqIFdpbGwgdGhlbiBzdGFydCBhIHByb21pc2UgZm9yIGEga2V5IGFuZCBwb3RlbnRpYWxseSBzdGFydCB0aGUgbmV0d29ya1xuICAgKiBmZXRjaC5cbiAgICpcbiAgICogVXNlcyB0aHJvdHRsZSBlbmRwb2ludHMgd2l0aG91dCBzaWRlRWZmZWN0cy4gVGhpcyBpcyB2YWx1YWJsZVxuICAgKiBmb3IgZW5zdXJlcyBtdXRhdGlvbiByZXF1ZXN0cyBhbHdheXMgZ28gdGhyb3VnaC5cbiAgICovXG4gIHByb3RlY3RlZCBoYW5kbGVGZXRjaChhY3Rpb246IEZldGNoQWN0aW9uKSB7XG4gICAgY29uc3QgeyByZXNvbHZlLCByZWplY3QsIGZldGNoZWRBdCB9ID0gYWN0aW9uLm1ldGE7XG4gICAgY29uc3QgdGhyb3R0bGUgPSAhYWN0aW9uLmVuZHBvaW50LnNpZGVFZmZlY3Q7XG5cbiAgICBjb25zdCBkZWZlcmVkRmV0Y2ggPSAoKSA9PiB7XG4gICAgICBsZXQgcHJvbWlzZSA9IGFjdGlvbi5lbmRwb2ludCguLi5hY3Rpb24uYXJncyk7XG4gICAgICBjb25zdCByZXNvbHZlUHJvbWlzZSA9IChcbiAgICAgICAgcHJvbWlzZTogUHJvbWlzZTxzdHJpbmcgfCBudW1iZXIgfCBvYmplY3QgfCBudWxsPixcbiAgICAgICkgPT5cbiAgICAgICAgcHJvbWlzZVxuICAgICAgICAgIC50aGVuKGRhdGEgPT4ge1xuICAgICAgICAgICAgcmVzb2x2ZShkYXRhKTtcbiAgICAgICAgICAgIHJldHVybiBkYXRhO1xuICAgICAgICAgIH0pXG4gICAgICAgICAgLmNhdGNoKGVycm9yID0+IHtcbiAgICAgICAgICAgIHJlamVjdChlcnJvcik7XG4gICAgICAgICAgICB0aHJvdyBlcnJvcjtcbiAgICAgICAgICB9KTtcbiAgICAgIC8vIHNjaGVkdWxlIG5vbi10aHJvdHRsZWQgcmVzb2x1dGlvbnMgaW4gYSBtaWNyb3Rhc2sgYmVmb3JlIHNldFxuICAgICAgLy8gdGhpcyBlbmFibGVzIHVzZXJzIGF3YWl0aW5nIHRoZWlyIGZldGNoIHRvIHRyaWdnZXIgYW55IHJlYWN0IHVwZGF0ZXMgbmVlZGVkIHRvIGRlYWxcbiAgICAgIC8vIHdpdGggdXBjb21pbmcgY2hhbmdlcyBiZWNhdXNlIG9mIHRoZSBmZXRjaCAoZm9yIGluc3RhbmNlIGF2b2lkaW5nIHN1c3BlbnNlIGlmIHNvbWV0aGluZyBpcyBkZWxldGVkKVxuICAgICAgaWYgKCF0aHJvdHRsZSkge1xuICAgICAgICBwcm9taXNlID0gcmVzb2x2ZVByb21pc2UocHJvbWlzZSk7XG4gICAgICB9XG4gICAgICBwcm9taXNlID0gcHJvbWlzZVxuICAgICAgICAudGhlbihyZXNwb25zZSA9PiB7XG4gICAgICAgICAgbGV0IGxhc3RSZXNldCA9IHRoaXMuZ2V0TGFzdFJlc2V0KCk7XG5cbiAgICAgICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmIGlzTmFOKGxhc3RSZXNldCkpIHtcbiAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoXG4gICAgICAgICAgICAgICdzdGF0ZS5sYXN0UmVzZXQgaXMgTmFOLiBPbmx5IHBvc2l0aXZlIHRpbWVzdGFtcHMgYXJlIHZhbGlkLicsXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgbGFzdFJlc2V0ID0gMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvLyBkb24ndCB1cGRhdGUgc3RhdGUgd2l0aCBwcm9taXNlcyBzdGFydGVkIGJlZm9yZSBsYXN0IGNsZWFyXG4gICAgICAgICAgaWYgKGZldGNoZWRBdCA+PSBsYXN0UmVzZXQpIHtcbiAgICAgICAgICAgIHRoaXMuY29udHJvbGxlci5yZXNvbHZlKGFjdGlvbi5lbmRwb2ludCwge1xuICAgICAgICAgICAgICBhcmdzOiBhY3Rpb24uYXJncyxcbiAgICAgICAgICAgICAgcmVzcG9uc2UsXG4gICAgICAgICAgICAgIGZldGNoZWRBdCxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gcmVzcG9uc2U7XG4gICAgICAgIH0pXG4gICAgICAgIC5jYXRjaChlcnJvciA9PiB7XG4gICAgICAgICAgY29uc3QgbGFzdFJlc2V0ID0gdGhpcy5nZXRMYXN0UmVzZXQoKTtcbiAgICAgICAgICAvLyBkb24ndCB1cGRhdGUgc3RhdGUgd2l0aCBwcm9taXNlcyBzdGFydGVkIGJlZm9yZSBsYXN0IGNsZWFyXG4gICAgICAgICAgaWYgKGZldGNoZWRBdCA+PSBsYXN0UmVzZXQpIHtcbiAgICAgICAgICAgIHRoaXMuY29udHJvbGxlci5yZXNvbHZlKGFjdGlvbi5lbmRwb2ludCwge1xuICAgICAgICAgICAgICBhcmdzOiBhY3Rpb24uYXJncyxcbiAgICAgICAgICAgICAgcmVzcG9uc2U6IGVycm9yLFxuICAgICAgICAgICAgICBmZXRjaGVkQXQsXG4gICAgICAgICAgICAgIGVycm9yOiB0cnVlLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHRocm93IGVycm9yO1xuICAgICAgICB9KTtcbiAgICAgIHJldHVybiBwcm9taXNlO1xuICAgIH07XG5cbiAgICBpZiAodGhyb3R0bGUpIHtcbiAgICAgIHJldHVybiB0aGlzLnRocm90dGxlKGFjdGlvbi5rZXksIGRlZmVyZWRGZXRjaCwgZmV0Y2hlZEF0KVxuICAgICAgICAudGhlbihkYXRhID0+IHJlc29sdmUoZGF0YSkpXG4gICAgICAgIC5jYXRjaChlcnJvciA9PiByZWplY3QoZXJyb3IpKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIGRlZmVyZWRGZXRjaCgpLmNhdGNoKCgpID0+IHt9KTtcbiAgICB9XG4gIH1cblxuICAvKiogQ2FsbGVkIHdoZW4gbWlkZGxld2FyZSBpbnRlcmNlcHRzIGEgc2V0IGFjdGlvbi5cbiAgICpcbiAgICogV2lsbCByZXNvbHZlIHRoZSBwcm9taXNlIGFzc29jaWF0ZWQgd2l0aCBzZXQga2V5LlxuICAgKi9cbiAgcHJvdGVjdGVkIGhhbmRsZVNldChhY3Rpb246IFNldFJlc3BvbnNlQWN0aW9uKSB7XG4gICAgLy8gdGhpcyBjYW4gc3RpbGwgdHVybiBvdXQgdG8gYmUgdW50cnVlIHNpbmNlIHRoaXMgaXMgYXN5bmNcbiAgICBpZiAoYWN0aW9uLmtleSBpbiB0aGlzLmZldGNoZWQpIHtcbiAgICAgIGxldCBwcm9taXNlSGFuZGxlcjogKHZhbHVlPzogYW55KSA9PiB2b2lkO1xuICAgICAgaWYgKGFjdGlvbi5lcnJvcikge1xuICAgICAgICBwcm9taXNlSGFuZGxlciA9IHRoaXMucmVqZWN0b3JzW2FjdGlvbi5rZXldO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcHJvbWlzZUhhbmRsZXIgPSB0aGlzLnJlc29sdmVyc1thY3Rpb24ua2V5XTtcbiAgICAgIH1cbiAgICAgIHByb21pc2VIYW5kbGVyKGFjdGlvbi5yZXNwb25zZSk7XG4gICAgICAvLyBzaW5jZSB3ZSdyZSByZXNvbHZlZCB3ZSBubyBsb25nZXIgbmVlZCB0byBrZWVwIHRyYWNrIG9mIHRoaXMgcHJvbWlzZVxuICAgICAgdGhpcy5jbGVhcihhY3Rpb24ua2V5KTtcbiAgICB9XG4gIH1cblxuICAvKiogRW5zdXJlcyBvbmx5IG9uZSByZXF1ZXN0IGZvciBhIGdpdmVuIGtleSBpcyBpbiBmbGlnaHQgYXQgYW55IHRpbWVcbiAgICpcbiAgICogVXNlcyBrZXkgdG8gZWl0aGVyIHJldHJpZXZlIGluLWZsaWdodCBwcm9taXNlLCBvciBpZiBub3RcbiAgICogY3JlYXRlIGEgbmV3IHByb21pc2UgYW5kIGNhbGwgZmV0Y2guXG4gICAqXG4gICAqIE5vdGU6IFRoZSBuZXcgcHJvbWlzZSBpcyBub3QgYWN0dWFsbHkgdGllZCB0byBmZXRjaCBhdCBhbGwsXG4gICAqIGJ1dCBpcyByZXNvbHZlZCB3aGVuIHRoZSBleHBlY3RlZCAncmVjaWV2ZScgYWN0aW9uIGlzIHByb2Nlc3NlZC5cbiAgICogVGhpcyBlbnN1cmVzIHByb21pc2VzIGFyZSByZXNvbHZlZCBvbmx5IG9uY2UgdGhlaXIgZGF0YSBpcyBwcm9jZXNzZWRcbiAgICogYnkgdGhlIHJlZHVjZXIuXG4gICAqL1xuICBwcm90ZWN0ZWQgdGhyb3R0bGUoXG4gICAga2V5OiBzdHJpbmcsXG4gICAgZmV0Y2g6ICgpID0+IFByb21pc2U8YW55PixcbiAgICBmZXRjaGVkQXQ6IG51bWJlcixcbiAgKSB7XG4gICAgY29uc3QgbGFzdFJlc2V0ID0gdGhpcy5nZXRMYXN0UmVzZXQoKTtcbiAgICAvLyB3ZSdyZSBhbHJlYWR5IGZldGNoaW5nIHNvIHJldXNlIHRoZSBwcm9taXNlXG4gICAgLy8gZmV0Y2hlcyBhZnRlciByZXNldCBkbyBub3QgY291bnRcbiAgICBpZiAoa2V5IGluIHRoaXMuZmV0Y2hlZCAmJiB0aGlzLmZldGNoZWRBdFtrZXldID4gbGFzdFJlc2V0KSB7XG4gICAgICByZXR1cm4gdGhpcy5mZXRjaGVkW2tleV07XG4gICAgfVxuXG4gICAgdGhpcy5mZXRjaGVkW2tleV0gPSBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICB0aGlzLnJlc29sdmVyc1trZXldID0gcmVzb2x2ZTtcbiAgICAgIHRoaXMucmVqZWN0b3JzW2tleV0gPSByZWplY3Q7XG4gICAgfSk7XG4gICAgdGhpcy5mZXRjaGVkQXRba2V5XSA9IGZldGNoZWRBdDtcblxuICAgIHRoaXMuaWRsZUNhbGxiYWNrKFxuICAgICAgKCkgPT4ge1xuICAgICAgICAvLyBzaW5jZSBvdXIgcmVhbCBwcm9taXNlIGlzIHJlc29sdmVkIHZpYSB0aGUgd3JhcFJlZHVjZXIoKSxcbiAgICAgICAgLy8gd2Ugc2hvdWxkIGp1c3Qgc3RvcCBhbGwgZXJyb3JzIGhlcmUuXG4gICAgICAgIC8vIFRPRE86IGRlY291cGxlIHRoaXMgZnJvbSB1c2VGZXRjaGVyKCkgKHRoYXQncyB3aGF0J3MgZGlzcGF0Y2hpbmcgdGhlIGVycm9yIHRoZSByZXNvbHZlcyBpbiBoZXJlKVxuICAgICAgICBmZXRjaCgpLmNhdGNoKCgpID0+IG51bGwpO1xuICAgICAgfSxcbiAgICAgIHsgdGltZW91dDogNTAwIH0sXG4gICAgKTtcblxuICAgIHJldHVybiB0aGlzLmZldGNoZWRba2V5XTtcbiAgfVxuXG4gIC8qKiBDYWxscyB0aGUgY2FsbGJhY2sgd2hlbiBjbGllbnQgaXMgbm90ICdidXN5JyB3aXRoIGhpZ2ggcHJpb3JpdHkgaW50ZXJhY3Rpb24gdGFza3NcbiAgICpcbiAgICogT3ZlcnJpZGUgZm9yIHBsYXRmb3JtLXNwZWNpZmljIGltcGxlbWVudGF0aW9uc1xuICAgKi9cbiAgcHJvdGVjdGVkIGlkbGVDYWxsYmFjayhcbiAgICBjYWxsYmFjazogKC4uLmFyZ3M6IGFueVtdKSA9PiB2b2lkLFxuICAgIG9wdGlvbnM/OiBJZGxlUmVxdWVzdE9wdGlvbnMsXG4gICkge1xuICAgIGNhbGxiYWNrKCk7XG4gIH1cbn1cbiJdLCJtYXBwaW5ncyI6IkFBQUEsU0FBU0EsWUFBWSxFQUFFQyxLQUFLLEVBQUVDLEtBQUssUUFBUSxtQkFBbUI7QUFDOUQsU0FBU0MsaUJBQWlCLFFBQVEsZ0NBQWdDO0FBQ2xFLE9BQU9DLFVBQVUsTUFBTSw2QkFBNkI7QUFVcEQsT0FBTyxNQUFNQyxVQUFVLFNBQVNDLEtBQUssQ0FBQztFQUdwQ0MsV0FBV0EsQ0FBQSxFQUFHO0lBQ1osS0FBSyxDQUFDLHNCQUFzQixDQUFDO0lBQUMsS0FIaENDLElBQUksR0FBRyxZQUFZ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
258
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJTRVRfUkVTUE9OU0UiLCJGRVRDSCIsIlJFU0VUIiwiY3JlYXRlU2V0UmVzcG9uc2UiLCJDb250cm9sbGVyIiwiUmVzZXRFcnJvciIsIkVycm9yIiwiY29uc3RydWN0b3IiLCJuYW1lIiwiTmV0d29ya01hbmFnZXIiLCJkYXRhRXhwaXJ5TGVuZ3RoIiwiZXJyb3JFeHBpcnlMZW5ndGgiLCJmZXRjaGVkIiwiT2JqZWN0IiwiY3JlYXRlIiwicmVzb2x2ZXJzIiwicmVqZWN0b3JzIiwiZmV0Y2hlZEF0IiwiY29udHJvbGxlciIsIm1pZGRsZXdhcmUiLCJuZXh0IiwiYWN0aW9uIiwidHlwZSIsImhhbmRsZUZldGNoIiwiZW5kcG9pbnQiLCJnZXRPcHRpbWlzdGljUmVzcG9uc2UiLCJ1bmRlZmluZWQiLCJzaWRlRWZmZWN0IiwiX1Byb21pc2UiLCJyZXNvbHZlIiwidGhlbiIsImtleSIsIl9jb250cm9sbGVyJGdldFN0YXRlJCIsImVycm9yIiwiZ2V0U3RhdGUiLCJtZXRhIiwiaGFuZGxlU2V0IiwiYXJncyIsInJlc3BvbnNlIiwiX2V4dGVuZHMiLCJjbGVhckFsbCIsImsiLCJpbml0IiwiY2xlYW51cERhdGUiLCJjbGVhbnVwIiwiRGF0ZSIsIm5vdyIsInNraXBMb2dnaW5nIiwiYWxsU2V0dGxlZCIsImZldGNoZXMiLCJ2YWx1ZXMiLCJsZW5ndGgiLCJfUHJvbWlzZSRhbGxTZXR0bGVkIiwiY2xlYXIiLCJjYXRjaCIsImdldExhc3RSZXNldCIsImxhc3RSZXNldCIsInJlamVjdCIsInRocm90dGxlIiwiZGVmZXJlZEZldGNoIiwicHJvbWlzZSIsInJlc29sdmVQcm9taXNlIiwiZGF0YSIsInByb2Nlc3MiLCJlbnYiLCJOT0RFX0VOViIsImlzTmFOIiwiY29uc29sZSIsInByb21pc2VIYW5kbGVyIiwiZmV0Y2giLCJpZGxlQ2FsbGJhY2siLCJ0aW1lb3V0IiwiY2FsbGJhY2siLCJvcHRpb25zIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL21hbmFnZXIvTmV0d29ya01hbmFnZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU0VUX1JFU1BPTlNFLCBGRVRDSCwgUkVTRVQgfSBmcm9tICcuLi9hY3Rpb25UeXBlcy5qcyc7XG5pbXBvcnQgeyBjcmVhdGVTZXRSZXNwb25zZSB9IGZyb20gJy4uL2NvbnRyb2xsZXIvYWN0aW9ucy9pbmRleC5qcyc7XG5pbXBvcnQgQ29udHJvbGxlciBmcm9tICcuLi9jb250cm9sbGVyL0NvbnRyb2xsZXIuanMnO1xuaW1wb3J0IHR5cGUge1xuICBGZXRjaEFjdGlvbixcbiAgTWFuYWdlcixcbiAgQWN0aW9uVHlwZXMsXG4gIE1pZGRsZXdhcmVBUEksXG4gIE1pZGRsZXdhcmUsXG4gIFNldFJlc3BvbnNlQWN0aW9uLFxufSBmcm9tICcuLi90eXBlcy5qcyc7XG5cbmV4cG9ydCBjbGFzcyBSZXNldEVycm9yIGV4dGVuZHMgRXJyb3Ige1xuICBuYW1lID0gJ1Jlc2V0RXJyb3InO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCdBYm9ydGVkIGR1ZSB0byBSRVNFVCcpO1xuICB9XG59XG5cbi8qKiBIYW5kbGVzIGFsbCBhc3luYyBuZXR3b3JrIGRpc3BhdGNoZXNcbiAqXG4gKiBEZWR1cGVzIGNvbmN1cnJlbnQgcmVxdWVzdHMgYnkga2VlcGluZyB0cmFjayBvZiBhbGwgZmV0Y2hlcyBpbiBmbGlnaHRcbiAqIGFuZCByZXR1cm5pbmcgZXhpc3RpbmcgcHJvbWlzZXMgZm9yIHJlcXVlc3RzIGFscmVhZHkgaW4gZmxpZ2h0LlxuICpcbiAqIEludGVyZmFjZXMgd2l0aCBzdG9yZSB2aWEgYSByZWR1eC1jb21wYXRpYmxlIG1pZGRsZXdhcmUuXG4gKlxuICogQHNlZSBodHRwczovL2RhdGFjbGllbnQuaW8vZG9jcy9hcGkvTmV0d29ya01hbmFnZXJcbiAqL1xuZXhwb3J0IGRlZmF1bHQgY2xhc3MgTmV0d29ya01hbmFnZXIgaW1wbGVtZW50cyBNYW5hZ2VyIHtcbiAgcHJvdGVjdGVkIGZldGNoZWQ6IHsgW2s6IHN0cmluZ106IFByb21pc2U8YW55PiB9ID0gT2JqZWN0LmNyZWF0ZShudWxsKTtcbiAgcHJvdGVjdGVkIHJlc29sdmVyczogeyBbazogc3RyaW5nXTogKHZhbHVlPzogYW55KSA9PiB2b2lkIH0gPSB7fTtcbiAgcHJvdGVjdGVkIHJlamVjdG9yczogeyBbazogc3RyaW5nXTogKHZhbHVlPzogYW55KSA9PiB2b2lkIH0gPSB7fTtcbiAgcHJvdGVjdGVkIGZldGNoZWRBdDogeyBbazogc3RyaW5nXTogbnVtYmVyIH0gPSB7fTtcbiAgZGVjbGFyZSByZWFkb25seSBkYXRhRXhwaXJ5TGVuZ3RoOiBudW1iZXI7XG4gIGRlY2xhcmUgcmVhZG9ubHkgZXJyb3JFeHBpcnlMZW5ndGg6IG51bWJlcjtcbiAgcHJvdGVjdGVkIGNvbnRyb2xsZXI6IENvbnRyb2xsZXIgPSBuZXcgQ29udHJvbGxlcigpO1xuICBkZWNsYXJlIGNsZWFudXBEYXRlPzogbnVtYmVyO1xuXG4gIGNvbnN0cnVjdG9yKHsgZGF0YUV4cGlyeUxlbmd0aCA9IDYwMDAwLCBlcnJvckV4cGlyeUxlbmd0aCA9IDEwMDAgfSA9IHt9KSB7XG4gICAgdGhpcy5kYXRhRXhwaXJ5TGVuZ3RoID0gZGF0YUV4cGlyeUxlbmd0aDtcbiAgICB0aGlzLmVycm9yRXhwaXJ5TGVuZ3RoID0gZXJyb3JFeHBpcnlMZW5ndGg7XG4gIH1cblxuICBtaWRkbGV3YXJlOiBNaWRkbGV3YXJlID0gY29udHJvbGxlciA9PiB7XG4gICAgdGhpcy5jb250cm9sbGVyID0gY29udHJvbGxlcjtcbiAgICByZXR1cm4gbmV4dCA9PiBhY3Rpb24gPT4ge1xuICAgICAgc3dpdGNoIChhY3Rpb24udHlwZSkge1xuICAgICAgICBjYXNlIEZFVENIOlxuICAgICAgICAgIHRoaXMuaGFuZGxlRmV0Y2goYWN0aW9uKTtcbiAgICAgICAgICAvLyBUaGlzIGlzIHRoZSBvbmx5IGNhc2UgdGhhdCBjYXVzZXMgYW55IHN0YXRlIGNoYW5nZVxuICAgICAgICAgIC8vIEl0J3MgaW1wb3J0YW50IHRvIGludGVyY2VwdCBvdGhlciBmZXRjaGVzIGFzIHdlIGRvbid0IHdhbnQgdG8gdHJpZ2dlciByZWR1Y2VycyBkdXJpbmdcbiAgICAgICAgICAvLyByZW5kZXIgLSBzbyB3ZSBuZWVkIHRvIHN0b3AgJ3JlYWRvbmx5JyBmZXRjaGVzIHdoaWNoIGNhbiBiZSB0cmlnZ2VyZWQgaW4gcmVuZGVyXG4gICAgICAgICAgaWYgKFxuICAgICAgICAgICAgYWN0aW9uLmVuZHBvaW50LmdldE9wdGltaXN0aWNSZXNwb25zZSAhPT0gdW5kZWZpbmVkICYmXG4gICAgICAgICAgICBhY3Rpb24uZW5kcG9pbnQuc2lkZUVmZmVjdFxuICAgICAgICAgICkge1xuICAgICAgICAgICAgcmV0dXJuIG5leHQoYWN0aW9uKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xuICAgICAgICBjYXNlIFNFVF9SRVNQT05TRTpcbiAgICAgICAgICAvLyBvbmx5IHNldCBhZnRlciBuZXcgc3RhdGUgaXMgY29tcHV0ZWRcbiAgICAgICAgICByZXR1cm4gbmV4dChhY3Rpb24pLnRoZW4oKCkgPT4ge1xuICAgICAgICAgICAgaWYgKGFjdGlvbi5rZXkgaW4gdGhpcy5mZXRjaGVkKSB7XG4gICAgICAgICAgICAgIC8vIE5vdGU6IG1ldGEgKm11c3QqIGJlIHNldCBieSByZWR1Y2VyIHNvIHRoaXMgc2hvdWxkIGJlIHNhZmVcbiAgICAgICAgICAgICAgY29uc3QgZXJyb3IgPSBjb250cm9sbGVyLmdldFN0YXRlKCkubWV0YVthY3Rpb24ua2V5XT8uZXJyb3I7XG4gICAgICAgICAgICAgIC8vIHByb2Nlc3NpbmcgZXJyb3JzIHJlc3VsdCBpbiBzdGF0ZSBtZXRhIGhhdmluZyBlcnJvciwgc28gd2Ugc2hvdWxkIHJlamVjdCB0aGUgcHJvbWlzZVxuICAgICAgICAgICAgICBpZiAoZXJyb3IpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmhhbmRsZVNldChcbiAgICAgICAgICAgICAgICAgIGNyZWF0ZVNldFJlc3BvbnNlKGFjdGlvbi5lbmRwb2ludCwge1xuICAgICAgICAgICAgICAgICAgICBhcmdzOiBhY3Rpb24uYXJncyxcbiAgICAgICAgICAgICAgICAgICAgcmVzcG9uc2U6IGVycm9yLFxuICAgICAgICAgICAgICAgICAgICBmZXRjaGVkQXQ6IGFjdGlvbi5tZXRhLmZldGNoZWRBdCxcbiAgICAgICAgICAgICAgICAgICAgZXJyb3I6IHRydWUsXG4gICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMuaGFuZGxlU2V0KGFjdGlvbik7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KTtcbiAgICAgICAgY2FzZSBSRVNFVDoge1xuICAgICAgICAgIGNvbnN0IHJlamVjdG9ycyA9IHsgLi4udGhpcy5yZWplY3RvcnMgfTtcblxuICAgICAgICAgIHRoaXMuY2xlYXJBbGwoKTtcbiAgICAgICAgICByZXR1cm4gbmV4dChhY3Rpb24pLnRoZW4oKCkgPT4ge1xuICAgICAgICAgICAgLy8gdGhlcmUgY291bGQgYmUgZXh0ZXJuYWwgbGlzdGVuZXJzIHRvIHRoZSBwcm9taXNlXG4gICAgICAgICAgICAvLyB0aGlzIG11c3QgaGFwcGVuIGFmdGVyIGNvbW1pdCBzbyBvdXIgb3duIHJlamVjdG9yIGtub3dzIG5vdCB0byBkaXNwYXRjaCBhbiBlcnJvciBiYXNlZCBvbiB0aGlzXG4gICAgICAgICAgICBmb3IgKGNvbnN0IGsgaW4gcmVqZWN0b3JzKSB7XG4gICAgICAgICAgICAgIHJlamVjdG9yc1trXShuZXcgUmVzZXRFcnJvcigpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgIHJldHVybiBuZXh0KGFjdGlvbik7XG4gICAgICB9XG4gICAgfTtcbiAgfTtcblxuICAvKiogT24gbW91bnQgKi9cbiAgaW5pdCgpIHtcbiAgICBkZWxldGUgdGhpcy5jbGVhbnVwRGF0ZTtcbiAgfVxuXG4gIC8qKiBFbnN1cmVzIGFsbCBwcm9taXNlcyBhcmUgY29tcGxldGVkIGJ5IHJlamVjdGluZyByZW1haW5pbmcuICovXG4gIGNsZWFudXAoKSB7XG4gICAgLy8gZW5zdXJlIG5vIGRpc3BhdGNoZXMgYWZ0ZXIgdW5tb3VudFxuICAgIC8vIHRoaXMgbXVzdCBiZSByZXZlcnNpYmxlIChkb25lIGluIGluaXQpIHNvIHVzZUVmZmVjdCgpIHJlbWFpbnMgc3ltbWV0cmljXG4gICAgdGhpcy5jbGVhbnVwRGF0ZSA9IERhdGUubm93KCk7XG4gIH1cblxuICAvKiogVXNlZCBieSBEZXZ0b29sc01hbmFnZXIgdG8gZGV0ZXJtaW5lIHdoZXRoZXIgdG8gbG9nIGFuIGFjdGlvbiAqL1xuICBza2lwTG9nZ2luZyhhY3Rpb246IEFjdGlvblR5cGVzKSB7XG4gICAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgICByZXR1cm4gYWN0aW9uLnR5cGUgPT09IEZFVENIICYmIGFjdGlvbi5rZXkgaW4gdGhpcy5mZXRjaGVkO1xuICB9XG5cbiAgYWxsU2V0dGxlZCgpIHtcbiAgICBjb25zdCBmZXRjaGVzID0gT2JqZWN0LnZhbHVlcyh0aGlzLmZldGNoZWQpO1xuICAgIGlmIChmZXRjaGVzLmxlbmd0aCkgcmV0dXJuIFByb21pc2UuYWxsU2V0dGxlZChmZXRjaGVzKTtcbiAgfVxuXG4gIC8qKiBDbGVhciBhbGwgcHJvbWlzZSBzdGF0ZSAqL1xuICBwcm90ZWN0ZWQgY2xlYXJBbGwoKSB7XG4gICAgZm9yIChjb25zdCBrIGluIHRoaXMucmVqZWN0b3JzKSB7XG4gICAgICB0aGlzLmNsZWFyKGspO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBDbGVhciBwcm9taXNlIHN0YXRlIGZvciBhIGdpdmVuIGtleSAqL1xuICBwcm90ZWN0ZWQgY2xlYXIoa2V5OiBzdHJpbmcpIHtcbiAgICB0aGlzLmZldGNoZWRba2V5XS5jYXRjaCgoKSA9PiB7fSk7XG4gICAgZGVsZXRlIHRoaXMucmVzb2x2ZXJzW2tleV07XG4gICAgZGVsZXRlIHRoaXMucmVqZWN0b3JzW2tleV07XG4gICAgZGVsZXRlIHRoaXMuZmV0Y2hlZFtrZXldO1xuICAgIGRlbGV0ZSB0aGlzLmZldGNoZWRBdFtrZXldO1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldExhc3RSZXNldCgpIHtcbiAgICBpZiAodGhpcy5jbGVhbnVwRGF0ZSkgcmV0dXJuIHRoaXMuY2xlYW51cERhdGU7XG4gICAgcmV0dXJuIHRoaXMuY29udHJvbGxlci5nZXRTdGF0ZSgpLmxhc3RSZXNldDtcbiAgfVxuXG4gIC8qKiBDYWxsZWQgd2hlbiBtaWRkbGV3YXJlIGludGVyY2VwdHMgJ3JkYy9mZXRjaCcgYWN0aW9uLlxuICAgKlxuICAgKiBXaWxsIHRoZW4gc3RhcnQgYSBwcm9taXNlIGZvciBhIGtleSBhbmQgcG90ZW50aWFsbHkgc3RhcnQgdGhlIG5ldHdvcmtcbiAgICogZmV0Y2guXG4gICAqXG4gICAqIFVzZXMgdGhyb3R0bGUgZW5kcG9pbnRzIHdpdGhvdXQgc2lkZUVmZmVjdHMuIFRoaXMgaXMgdmFsdWFibGVcbiAgICogZm9yIGVuc3VyZXMgbXV0YXRpb24gcmVxdWVzdHMgYWx3YXlzIGdvIHRocm91Z2guXG4gICAqL1xuICBwcm90ZWN0ZWQgaGFuZGxlRmV0Y2goYWN0aW9uOiBGZXRjaEFjdGlvbikge1xuICAgIGNvbnN0IHsgcmVzb2x2ZSwgcmVqZWN0LCBmZXRjaGVkQXQgfSA9IGFjdGlvbi5tZXRhO1xuICAgIGNvbnN0IHRocm90dGxlID0gIWFjdGlvbi5lbmRwb2ludC5zaWRlRWZmZWN0O1xuXG4gICAgY29uc3QgZGVmZXJlZEZldGNoID0gKCkgPT4ge1xuICAgICAgbGV0IHByb21pc2UgPSBhY3Rpb24uZW5kcG9pbnQoLi4uYWN0aW9uLmFyZ3MpO1xuICAgICAgY29uc3QgcmVzb2x2ZVByb21pc2UgPSAoXG4gICAgICAgIHByb21pc2U6IFByb21pc2U8c3RyaW5nIHwgbnVtYmVyIHwgb2JqZWN0IHwgbnVsbD4sXG4gICAgICApID0+XG4gICAgICAgIHByb21pc2VcbiAgICAgICAgICAudGhlbihkYXRhID0+IHtcbiAgICAgICAgICAgIHJlc29sdmUoZGF0YSk7XG4gICAgICAgICAgICByZXR1cm4gZGF0YTtcbiAgICAgICAgICB9KVxuICAgICAgICAgIC5jYXRjaChlcnJvciA9PiB7XG4gICAgICAgICAgICByZWplY3QoZXJyb3IpO1xuICAgICAgICAgICAgdGhyb3cgZXJyb3I7XG4gICAgICAgICAgfSk7XG4gICAgICAvLyBzY2hlZHVsZSBub24tdGhyb3R0bGVkIHJlc29sdXRpb25zIGluIGEgbWljcm90YXNrIGJlZm9yZSBzZXRcbiAgICAgIC8vIHRoaXMgZW5hYmxlcyB1c2VycyBhd2FpdGluZyB0aGVpciBmZXRjaCB0byB0cmlnZ2VyIGFueSByZWFjdCB1cGRhdGVzIG5lZWRlZCB0byBkZWFsXG4gICAgICAvLyB3aXRoIHVwY29taW5nIGNoYW5nZXMgYmVjYXVzZSBvZiB0aGUgZmV0Y2ggKGZvciBpbnN0YW5jZSBhdm9pZGluZyBzdXNwZW5zZSBpZiBzb21ldGhpbmcgaXMgZGVsZXRlZClcbiAgICAgIGlmICghdGhyb3R0bGUpIHtcbiAgICAgICAgcHJvbWlzZSA9IHJlc29sdmVQcm9taXNlKHByb21pc2UpO1xuICAgICAgfVxuICAgICAgcHJvbWlzZSA9IHByb21pc2VcbiAgICAgICAgLnRoZW4ocmVzcG9uc2UgPT4ge1xuICAgICAgICAgIGxldCBsYXN0UmVzZXQgPSB0aGlzLmdldExhc3RSZXNldCgpO1xuXG4gICAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiBpc05hTihsYXN0UmVzZXQpKSB7XG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKFxuICAgICAgICAgICAgICAnc3RhdGUubGFzdFJlc2V0IGlzIE5hTi4gT25seSBwb3NpdGl2ZSB0aW1lc3RhbXBzIGFyZSB2YWxpZC4nLFxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIGxhc3RSZXNldCA9IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gZG9uJ3QgdXBkYXRlIHN0YXRlIHdpdGggcHJvbWlzZXMgc3RhcnRlZCBiZWZvcmUgbGFzdCBjbGVhclxuICAgICAgICAgIGlmIChmZXRjaGVkQXQgPj0gbGFzdFJlc2V0KSB7XG4gICAgICAgICAgICB0aGlzLmNvbnRyb2xsZXIucmVzb2x2ZShhY3Rpb24uZW5kcG9pbnQsIHtcbiAgICAgICAgICAgICAgYXJnczogYWN0aW9uLmFyZ3MsXG4gICAgICAgICAgICAgIHJlc3BvbnNlLFxuICAgICAgICAgICAgICBmZXRjaGVkQXQsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIHJlc3BvbnNlO1xuICAgICAgICB9KVxuICAgICAgICAuY2F0Y2goZXJyb3IgPT4ge1xuICAgICAgICAgIGNvbnN0IGxhc3RSZXNldCA9IHRoaXMuZ2V0TGFzdFJlc2V0KCk7XG4gICAgICAgICAgLy8gZG9uJ3QgdXBkYXRlIHN0YXRlIHdpdGggcHJvbWlzZXMgc3RhcnRlZCBiZWZvcmUgbGFzdCBjbGVhclxuICAgICAgICAgIGlmIChmZXRjaGVkQXQgPj0gbGFzdFJlc2V0KSB7XG4gICAgICAgICAgICB0aGlzLmNvbnRyb2xsZXIucmVzb2x2ZShhY3Rpb24uZW5kcG9pbnQsIHtcbiAgICAgICAgICAgICAgYXJnczogYWN0aW9uLmFyZ3MsXG4gICAgICAgICAgICAgIHJlc3BvbnNlOiBlcnJvcixcbiAgICAgICAgICAgICAgZmV0Y2hlZEF0LFxuICAgICAgICAgICAgICBlcnJvcjogdHJ1ZSxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH1cbiAgICAgICAgICB0aHJvdyBlcnJvcjtcbiAgICAgICAgfSk7XG4gICAgICByZXR1cm4gcHJvbWlzZTtcbiAgICB9O1xuXG4gICAgaWYgKHRocm90dGxlKSB7XG4gICAgICByZXR1cm4gdGhpcy50aHJvdHRsZShhY3Rpb24ua2V5LCBkZWZlcmVkRmV0Y2gsIGZldGNoZWRBdClcbiAgICAgICAgLnRoZW4oZGF0YSA9PiByZXNvbHZlKGRhdGEpKVxuICAgICAgICAuY2F0Y2goZXJyb3IgPT4gcmVqZWN0KGVycm9yKSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBkZWZlcmVkRmV0Y2goKS5jYXRjaCgoKSA9PiB7fSk7XG4gICAgfVxuICB9XG5cbiAgLyoqIENhbGxlZCB3aGVuIG1pZGRsZXdhcmUgaW50ZXJjZXB0cyBhIHNldCBhY3Rpb24uXG4gICAqXG4gICAqIFdpbGwgcmVzb2x2ZSB0aGUgcHJvbWlzZSBhc3NvY2lhdGVkIHdpdGggc2V0IGtleS5cbiAgICovXG4gIHByb3RlY3RlZCBoYW5kbGVTZXQoYWN0aW9uOiBTZXRSZXNwb25zZUFjdGlvbikge1xuICAgIC8vIHRoaXMgY2FuIHN0aWxsIHR1cm4gb3V0IHRvIGJlIHVudHJ1ZSBzaW5jZSB0aGlzIGlzIGFzeW5jXG4gICAgaWYgKGFjdGlvbi5rZXkgaW4gdGhpcy5mZXRjaGVkKSB7XG4gICAgICBsZXQgcHJvbWlzZUhhbmRsZXI6ICh2YWx1ZT86IGFueSkgPT4gdm9pZDtcbiAgICAgIGlmIChhY3Rpb24uZXJyb3IpIHtcbiAgICAgICAgcHJvbWlzZUhhbmRsZXIgPSB0aGlzLnJlamVjdG9yc1thY3Rpb24ua2V5XTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHByb21pc2VIYW5kbGVyID0gdGhpcy5yZXNvbHZlcnNbYWN0aW9uLmtleV07XG4gICAgICB9XG4gICAgICBwcm9taXNlSGFuZGxlcihhY3Rpb24ucmVzcG9uc2UpO1xuICAgICAgLy8gc2luY2Ugd2UncmUgcmVzb2x2ZWQgd2Ugbm8gbG9uZ2VyIG5lZWQgdG8ga2VlcCB0cmFjayBvZiB0aGlzIHByb21pc2VcbiAgICAgIHRoaXMuY2xlYXIoYWN0aW9uLmtleSk7XG4gICAgfVxuICB9XG5cbiAgLyoqIEVuc3VyZXMgb25seSBvbmUgcmVxdWVzdCBmb3IgYSBnaXZlbiBrZXkgaXMgaW4gZmxpZ2h0IGF0IGFueSB0aW1lXG4gICAqXG4gICAqIFVzZXMga2V5IHRvIGVpdGhlciByZXRyaWV2ZSBpbi1mbGlnaHQgcHJvbWlzZSwgb3IgaWYgbm90XG4gICAqIGNyZWF0ZSBhIG5ldyBwcm9taXNlIGFuZCBjYWxsIGZldGNoLlxuICAgKlxuICAgKiBOb3RlOiBUaGUgbmV3IHByb21pc2UgaXMgbm90IGFjdHVhbGx5IHRpZWQgdG8gZmV0Y2ggYXQgYWxsLFxuICAgKiBidXQgaXMgcmVzb2x2ZWQgd2hlbiB0aGUgZXhwZWN0ZWQgJ3JlY2lldmUnIGFjdGlvbiBpcyBwcm9jZXNzZWQuXG4gICAqIFRoaXMgZW5zdXJlcyBwcm9taXNlcyBhcmUgcmVzb2x2ZWQgb25seSBvbmNlIHRoZWlyIGRhdGEgaXMgcHJvY2Vzc2VkXG4gICAqIGJ5IHRoZSByZWR1Y2VyLlxuICAgKi9cbiAgcHJvdGVjdGVkIHRocm90dGxlKFxuICAgIGtleTogc3RyaW5nLFxuICAgIGZldGNoOiAoKSA9PiBQcm9taXNlPGFueT4sXG4gICAgZmV0Y2hlZEF0OiBudW1iZXIsXG4gICkge1xuICAgIGNvbnN0IGxhc3RSZXNldCA9IHRoaXMuZ2V0TGFzdFJlc2V0KCk7XG4gICAgLy8gd2UncmUgYWxyZWFkeSBmZXRjaGluZyBzbyByZXVzZSB0aGUgcHJvbWlzZVxuICAgIC8vIGZldGNoZXMgYWZ0ZXIgcmVzZXQgZG8gbm90IGNvdW50XG4gICAgaWYgKGtleSBpbiB0aGlzLmZldGNoZWQgJiYgdGhpcy5mZXRjaGVkQXRba2V5XSA+IGxhc3RSZXNldCkge1xuICAgICAgcmV0dXJuIHRoaXMuZmV0Y2hlZFtrZXldO1xuICAgIH1cblxuICAgIHRoaXMuZmV0Y2hlZFtrZXldID0gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgdGhpcy5yZXNvbHZlcnNba2V5XSA9IHJlc29sdmU7XG4gICAgICB0aGlzLnJlamVjdG9yc1trZXldID0gcmVqZWN0O1xuICAgIH0pO1xuICAgIHRoaXMuZmV0Y2hlZEF0W2tleV0gPSBmZXRjaGVkQXQ7XG5cbiAgICB0aGlzLmlkbGVDYWxsYmFjayhcbiAgICAgICgpID0+IHtcbiAgICAgICAgLy8gc2luY2Ugb3VyIHJlYWwgcHJvbWlzZSBpcyByZXNvbHZlZCB2aWEgdGhlIHdyYXBSZWR1Y2VyKCksXG4gICAgICAgIC8vIHdlIHNob3VsZCBqdXN0IHN0b3AgYWxsIGVycm9ycyBoZXJlLlxuICAgICAgICAvLyBUT0RPOiBkZWNvdXBsZSB0aGlzIGZyb20gdXNlRmV0Y2hlcigpICh0aGF0J3Mgd2hhdCdzIGRpc3BhdGNoaW5nIHRoZSBlcnJvciB0aGUgcmVzb2x2ZXMgaW4gaGVyZSlcbiAgICAgICAgZmV0Y2goKS5jYXRjaCgoKSA9PiBudWxsKTtcbiAgICAgIH0sXG4gICAgICB7IHRpbWVvdXQ6IDUwMCB9LFxuICAgICk7XG5cbiAgICByZXR1cm4gdGhpcy5mZXRjaGVkW2tleV07XG4gIH1cblxuICAvKiogQ2FsbHMgdGhlIGNhbGxiYWNrIHdoZW4gY2xpZW50IGlzIG5vdCAnYnVzeScgd2l0aCBoaWdoIHByaW9yaXR5IGludGVyYWN0aW9uIHRhc2tzXG4gICAqXG4gICAqIE92ZXJyaWRlIGZvciBwbGF0Zm9ybS1zcGVjaWZpYyBpbXBsZW1lbnRhdGlvbnNcbiAgICovXG4gIHByb3RlY3RlZCBpZGxlQ2FsbGJhY2soXG4gICAgY2FsbGJhY2s6ICguLi5hcmdzOiBhbnlbXSkgPT4gdm9pZCxcbiAgICBvcHRpb25zPzogSWRsZVJlcXVlc3RPcHRpb25zLFxuICApIHtcbiAgICBjYWxsYmFjaygpO1xuICB9XG59XG4iXSwibWFwcGluZ3MiOiI7OztBQUFBLFNBQVNBLFlBQVksRUFBRUMsS0FBSyxFQUFFQyxLQUFLLFFBQVEsbUJBQW1CO0FBQzlELFNBQVNDLGlCQUFpQixRQUFRLGdDQUFnQztBQUNsRSxPQUFPQyxVQUFVLE1BQU0sNkJBQTZCO0FBVXBELE9BQU8sTUFBTUMsVUFBVSxTQUFTQyxLQUFLLENBQUM7RUFHcENDLFdBQVdBLENBQUEsRUFBRztJQUNaLEtBQUssQ0FBQyxzQkFBc0IsQ0FB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
@@ -1,3 +1,5 @@
1
+ import _keysInstanceProperty from "core-js-pure/stable/instance/keys.js";
2
+ import _Object$assign from "core-js-pure/stable/object/assign.js";
1
3
  import DefaultConnectionListener from './DefaultConnectionListener.js';
2
4
  /**
3
5
  * PollingSubscription keeps a given resource updated by
@@ -79,7 +81,8 @@ export default class PollingSubscription {
79
81
 
80
82
  // this was the min, so find the next size
81
83
  if (frequency <= this.frequency) {
82
- this.frequency = Math.min(...this.frequencyHistogram.keys());
84
+ var _context;
85
+ this.frequency = Math.min(..._keysInstanceProperty(_context = this.frequencyHistogram).call(_context));
83
86
  this.run();
84
87
  }
85
88
  }
@@ -113,7 +116,7 @@ export default class PollingSubscription {
113
116
  const endpoint = function endpoint(...args) {
114
117
  return sup.call(this, ...args);
115
118
  };
116
- Object.assign(endpoint, this.endpoint);
119
+ _Object$assign(endpoint, this.endpoint);
117
120
  endpoint.dataExpiryLength = this.frequency / 2;
118
121
  endpoint.errorExpiryLength = this.frequency / 10;
119
122
  endpoint.errorPolicy = () => 'soft';
@@ -147,4 +150,4 @@ export default class PollingSubscription {
147
150
  return (_this$controller$getS = (_this$controller$getS2 = this.controller.getState().meta[this.key]) == null ? void 0 : _this$controller$getS2.date) != null ? _this$controller$getS : 0;
148
151
  }
149
152
  }
150
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJEZWZhdWx0Q29ubmVjdGlvbkxpc3RlbmVyIiwiUG9sbGluZ1N1YnNjcmlwdGlvbiIsImNvbnN0cnVjdG9yIiwiYWN0aW9uIiwiY29udHJvbGxlciIsImNvbm5lY3Rpb25MaXN0ZW5lciIsImZyZXF1ZW5jeUhpc3RvZ3JhbSIsIk1hcCIsIm9mZmxpbmVMaXN0ZW5lciIsImNsZWFudXAiLCJhZGRPbmxpbmVMaXN0ZW5lciIsIm9ubGluZUxpc3RlbmVyIiwicmVtb3ZlT25saW5lTGlzdGVuZXIiLCJub3ciLCJEYXRlIiwic3RhcnRJZCIsInNldFRpbWVvdXQiLCJ1cGRhdGUiLCJydW4iLCJwcm9jZXNzIiwiZW52IiwiTk9ERV9FTlYiLCJjb25zb2xlIiwid2FybiIsImtleSIsIk1hdGgiLCJtYXgiLCJsYXN0RmV0Y2hUaW1lIiwiZnJlcXVlbmN5IiwiYWRkT2ZmbGluZUxpc3RlbmVyIiwiZW5kcG9pbnQiLCJwb2xsRnJlcXVlbmN5IiwidW5kZWZpbmVkIiwiRXJyb3IiLCJhcmdzIiwic2V0IiwiaXNPbmxpbmUiLCJhZGQiLCJoYXMiLCJnZXQiLCJyZW1vdmUiLCJkZWxldGUiLCJzaXplIiwibWluIiwia2V5cyIsImVycm9yIiwiaW50ZXJ2YWxJZCIsImNsZWFySW50ZXJ2YWwiLCJsYXN0SW50ZXJ2YWxJZCIsImNsZWFyVGltZW91dCIsInJlbW92ZU9mZmxpbmVMaXN0ZW5lciIsInN1cCIsImNhbGwiLCJPYmplY3QiLCJhc3NpZ24iLCJkYXRhRXhwaXJ5TGVuZ3RoIiwiZXJyb3JFeHBpcnlMZW5ndGgiLCJlcnJvclBvbGljeSIsImZldGNoIiwiY2F0Y2giLCJzZXRJbnRlcnZhbCIsIl90aGlzJGNvbnRyb2xsZXIkZ2V0UyIsIl90aGlzJGNvbnRyb2xsZXIkZ2V0UzIiLCJnZXRTdGF0ZSIsIm1ldGEiLCJkYXRlIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL21hbmFnZXIvUG9sbGluZ1N1YnNjcmlwdGlvbi50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IEVuZHBvaW50SW50ZXJmYWNlIH0gZnJvbSAnQGRhdGEtY2xpZW50L25vcm1hbGl6cic7XG5cbmltcG9ydCBDb25uZWN0aW9uTGlzdGVuZXIgZnJvbSAnLi9Db25uZWN0aW9uTGlzdGVuZXIuanMnO1xuaW1wb3J0IERlZmF1bHRDb25uZWN0aW9uTGlzdGVuZXIgZnJvbSAnLi9EZWZhdWx0Q29ubmVjdGlvbkxpc3RlbmVyLmpzJztcbmltcG9ydCB0eXBlIHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAnLi9TdWJzY3JpcHRpb25NYW5hZ2VyLmpzJztcbmltcG9ydCB0eXBlIENvbnRyb2xsZXIgZnJvbSAnLi4vY29udHJvbGxlci9Db250cm9sbGVyLmpzJztcbmltcG9ydCB0eXBlIHsgU3Vic2NyaWJlQWN0aW9uIH0gZnJvbSAnLi4vdHlwZXMuanMnO1xuXG4vKipcbiAqIFBvbGxpbmdTdWJzY3JpcHRpb24ga2VlcHMgYSBnaXZlbiByZXNvdXJjZSB1cGRhdGVkIGJ5XG4gKiBkaXNwYXRjaGluZyBhIGZldGNoIGF0IGEgcmF0ZSBlcXVhbCB0byB0aGUgbWluaW11bSB1cGRhdGVcbiAqIGludGVydmFsIHJlcXVlc3RlZC5cbiAqXG4gKiBAc2VlIGh0dHBzOi8vZGF0YWNsaWVudC5pby9kb2NzL2FwaS9Qb2xsaW5nU3Vic2NyaXB0aW9uXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFBvbGxpbmdTdWJzY3JpcHRpb24gaW1wbGVtZW50cyBTdWJzY3JpcHRpb24ge1xuICBkZWNsYXJlIHByb3RlY3RlZCByZWFkb25seSBlbmRwb2ludDogRW5kcG9pbnRJbnRlcmZhY2U7XG4gIGRlY2xhcmUgcHJvdGVjdGVkIHJlYWRvbmx5IGFyZ3M6IHJlYWRvbmx5IGFueVtdO1xuICBkZWNsYXJlIHByb3RlY3RlZCByZWFkb25seSBrZXk6IHN0cmluZztcbiAgZGVjbGFyZSBwcm90ZWN0ZWQgZnJlcXVlbmN5OiBudW1iZXI7XG4gIHByb3RlY3RlZCBmcmVxdWVuY3lIaXN0b2dyYW06IE1hcDxudW1iZXIsIG51bWJlcj4gPSBuZXcgTWFwKCk7XG4gIGRlY2xhcmUgcHJvdGVjdGVkIGNvbnRyb2xsZXI6IENvbnRyb2xsZXI7XG4gIGRlY2xhcmUgcHJvdGVjdGVkIGludGVydmFsSWQ/OiBSZXR1cm5UeXBlPHR5cGVvZiBzZXRJbnRlcnZhbD47XG4gIGRlY2xhcmUgcHJvdGVjdGVkIGxhc3RJbnRlcnZhbElkPzogUmV0dXJuVHlwZTx0eXBlb2Ygc2V0SW50ZXJ2YWw+O1xuICBkZWNsYXJlIHByb3RlY3RlZCBzdGFydElkPzogUmV0dXJuVHlwZTx0eXBlb2Ygc2V0VGltZW91dD47XG4gIGRlY2xhcmUgcHJpdmF0ZSBjb25uZWN0aW9uTGlzdGVuZXI6IENvbm5lY3Rpb25MaXN0ZW5lcjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBhY3Rpb246IE9taXQ8U3Vic2NyaWJlQWN0aW9uLCAndHlwZSc+LFxuICAgIGNvbnRyb2xsZXI6IENvbnRyb2xsZXIsXG4gICAgY29ubmVjdGlvbkxpc3RlbmVyPzogQ29ubmVjdGlvbkxpc3RlbmVyLFxuICApIHtcbiAgICBpZiAoYWN0aW9uLmVuZHBvaW50LnBvbGxGcmVxdWVuY3kgPT09IHVuZGVmaW5lZClcbiAgICAgIHRocm93IG5ldyBFcnJvcignZnJlcXVlbmN5IG5lZWRlZCBmb3IgcG9sbGluZyBzdWJzY3JpcHRpb24nKTtcbiAgICB0aGlzLmVuZHBvaW50ID0gYWN0aW9uLmVuZHBvaW50O1xuICAgIHRoaXMuZnJlcXVlbmN5ID0gYWN0aW9uLmVuZHBvaW50LnBvbGxGcmVxdWVuY3k7XG4gICAgdGhpcy5hcmdzID0gYWN0aW9uLmFyZ3M7XG4gICAgdGhpcy5rZXkgPSBhY3Rpb24ua2V5O1xuICAgIHRoaXMuZnJlcXVlbmN5SGlzdG9ncmFtLnNldCh0aGlzLmZyZXF1ZW5jeSwgMSk7XG4gICAgdGhpcy5jb250cm9sbGVyID0gY29udHJvbGxlcjtcbiAgICB0aGlzLmNvbm5lY3Rpb25MaXN0ZW5lciA9XG4gICAgICBjb25uZWN0aW9uTGlzdGVuZXIgfHwgbmV3IERlZmF1bHRDb25uZWN0aW9uTGlzdGVuZXIoKTtcblxuICAgIC8vIEtpY2tzdGFydCBydW5uaW5nIHNpbmNlIHRoaXMgaXMgaW5pdGlhbGl6ZWQgYWZ0ZXIgdGhlIG9ubGluZSBub3RpZiBpcyBzZW50XG4gICAgaWYgKHRoaXMuY29ubmVjdGlvbkxpc3RlbmVyLmlzT25saW5lKCkpIHtcbiAgICAgIHRoaXMub25saW5lTGlzdGVuZXIoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5vZmZsaW5lTGlzdGVuZXIoKTtcbiAgICB9XG4gIH1cblxuICAvKiogU3Vic2NyaWJlIHRvIGEgZnJlcXVlbmN5ICovXG4gIGFkZChmcmVxdWVuY3k/OiBudW1iZXIpIHtcbiAgICBpZiAoZnJlcXVlbmN5ID09PSB1bmRlZmluZWQpIHJldHVybjtcbiAgICBpZiAodGhpcy5mcmVxdWVuY3lIaXN0b2dyYW0uaGFzKGZyZXF1ZW5jeSkpIHtcbiAgICAgIHRoaXMuZnJlcXVlbmN5SGlzdG9ncmFtLnNldChcbiAgICAgICAgZnJlcXVlbmN5LFxuICAgICAgICAodGhpcy5mcmVxdWVuY3lIaXN0b2dyYW0uZ2V0KGZyZXF1ZW5jeSkgYXMgbnVtYmVyKSArIDEsXG4gICAgICApO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmZyZXF1ZW5jeUhpc3RvZ3JhbS5zZXQoZnJlcXVlbmN5LCAxKTtcblxuICAgICAgLy8gbmV3IG1pbiBzbyByZXN0YXJ0IHNlcnZpY2VcbiAgICAgIGlmIChmcmVxdWVuY3kgPCB0aGlzLmZyZXF1ZW5jeSkge1xuICAgICAgICB0aGlzLmZyZXF1ZW5jeSA9IGZyZXF1ZW5jeTtcbiAgICAgICAgdGhpcy5ydW4oKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKiogVW5zdWJzY3JpYmUgZnJvbSBhIGZyZXF1ZW5jeSAqL1xuICByZW1vdmUoZnJlcXVlbmN5PzogbnVtYmVyKSB7XG4gICAgaWYgKGZyZXF1ZW5jeSA9PT0gdW5kZWZpbmVkKSByZXR1cm4gZmFsc2U7XG4gICAgaWYgKHRoaXMuZnJlcXVlbmN5SGlzdG9ncmFtLmhhcyhmcmVxdWVuY3kpKSB7XG4gICAgICB0aGlzLmZyZXF1ZW5jeUhpc3RvZ3JhbS5zZXQoXG4gICAgICAgIGZyZXF1ZW5jeSxcbiAgICAgICAgKHRoaXMuZnJlcXVlbmN5SGlzdG9ncmFtLmdldChmcmVxdWVuY3kpIGFzIG51bWJlcikgLSAxLFxuICAgICAgKTtcbiAgICAgIGlmICgodGhpcy5mcmVxdWVuY3lIaXN0b2dyYW0uZ2V0KGZyZXF1ZW5jeSkgYXMgbnVtYmVyKSA8IDEpIHtcbiAgICAgICAgdGhpcy5mcmVxdWVuY3lIaXN0b2dyYW0uZGVsZXRlKGZyZXF1ZW5jeSk7XG5cbiAgICAgICAgLy8gbm90aGluZyBzdWJzY3JpYmVkIHRvIHRoaXMgYW55bW9yZS4uLml0IGlzIGludmFsaWRcbiAgICAgICAgaWYgKHRoaXMuZnJlcXVlbmN5SGlzdG9ncmFtLnNpemUgPT09IDApIHtcbiAgICAgICAgICB0aGlzLmNsZWFudXAoKTtcbiAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIHRoaXMgd2FzIHRoZSBtaW4sIHNvIGZpbmQgdGhlIG5leHQgc2l6ZVxuICAgICAgICBpZiAoZnJlcXVlbmN5IDw9IHRoaXMuZnJlcXVlbmN5KSB7XG4gICAgICAgICAgdGhpcy5mcmVxdWVuY3kgPSBNYXRoLm1pbiguLi50aGlzLmZyZXF1ZW5jeUhpc3RvZ3JhbS5rZXlzKCkpO1xuICAgICAgICAgIHRoaXMucnVuKCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovIGVsc2UgaWYgKFxuICAgICAgcHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJ1xuICAgICkge1xuICAgICAgY29uc29sZS5lcnJvcihcbiAgICAgICAgYE1pc21hdGNoZWQgcmVtb3ZlOiAke2ZyZXF1ZW5jeX0gaXMgbm90IHN1YnNjcmliZWQgZm9yICR7dGhpcy5rZXl9YCxcbiAgICAgICk7XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIC8qKiBDbGVhbnVwIG1lYW5zIGNsZWFyaW5nIG91dCBiYWNrZ3JvdW5kIGludGVydmFsLiAqL1xuICBjbGVhbnVwKCkge1xuICAgIGlmICh0aGlzLmludGVydmFsSWQpIHtcbiAgICAgIGNsZWFySW50ZXJ2YWwodGhpcy5pbnRlcnZhbElkKTtcbiAgICAgIGRlbGV0ZSB0aGlzLmludGVydmFsSWQ7XG4gICAgfVxuICAgIGlmICh0aGlzLmxhc3RJbnRlcnZhbElkKSB7XG4gICAgICBjbGVhckludGVydmFsKHRoaXMubGFzdEludGVydmFsSWQpO1xuICAgICAgZGVsZXRlIHRoaXMubGFzdEludGVydmFsSWQ7XG4gICAgfVxuICAgIGlmICh0aGlzLnN0YXJ0SWQpIHtcbiAgICAgIGNsZWFyVGltZW91dCh0aGlzLnN0YXJ0SWQpO1xuICAgICAgZGVsZXRlIHRoaXMuc3RhcnRJZDtcbiAgICB9XG4gICAgdGhpcy5jb25uZWN0aW9uTGlzdGVuZXIucmVtb3ZlT25saW5lTGlzdGVuZXIodGhpcy5vbmxpbmVMaXN0ZW5lcik7XG4gICAgdGhpcy5jb25uZWN0aW9uTGlzdGVuZXIucmVtb3ZlT2ZmbGluZUxpc3RlbmVyKHRoaXMub2ZmbGluZUxpc3RlbmVyKTtcbiAgfVxuXG4gIC8qKiBUcmlnZ2VyIHJlcXVlc3QgZm9yIGxhdGVzdCByZXNvdXJjZSAqL1xuICBwcm90ZWN0ZWQgdXBkYXRlKCkge1xuICAgIGNvbnN0IHN1cCA9IHRoaXMuZW5kcG9pbnQ7XG4gICAgY29uc3QgZW5kcG9pbnQgPSBmdW5jdGlvbiAodGhpczogYW55LCAuLi5hcmdzOiBhbnlbXSkge1xuICAgICAgcmV0dXJuIHN1cC5jYWxsKHRoaXMsIC4uLmFyZ3MpO1xuICAgIH07XG4gICAgT2JqZWN0LmFzc2lnbihlbmRwb2ludCwgdGhpcy5lbmRwb2ludCk7XG4gICAgZW5kcG9pbnQuZGF0YUV4cGlyeUxlbmd0aCA9IHRoaXMuZnJlcXVlbmN5IC8gMjtcbiAgICBlbmRwb2ludC5lcnJvckV4cGlyeUxlbmd0aCA9IHRoaXMuZnJlcXVlbmN5IC8gMTA7XG4gICAgZW5kcG9pbnQuZXJyb3JQb2xpY3kgPSAoKSA9PiAnc29mdCcgYXMgY29uc3Q7XG4gICAgZW5kcG9pbnQua2V5ID0gKCkgPT4gdGhpcy5rZXk7XG4gICAgLy8gc3RvcCBhbnkgZXJyb3JzIGhlcmUgZnJvbSBidWJibGluZ1xuICAgIHRoaXMuY29udHJvbGxlci5mZXRjaChlbmRwb2ludCwgLi4udGhpcy5hcmdzKS5jYXRjaCgoKSA9PiBudWxsKTtcbiAgfVxuXG4gIC8qKiBXaGF0IGhhcHBlbnMgd2hlbiBicm93c2VyIGdvZXMgb2ZmbGluZSAqL1xuICBwcm90ZWN0ZWQgb2ZmbGluZUxpc3RlbmVyID0gKCkgPT4ge1xuICAgIC8vIHRoaXMgY2xlYXJzIGV4aXN0aW5nIGxpc3RlbmVycywgc28gbm8gbmVlZCB0byBjbGVhciBvZmZsaW5lIGxpc3RlbmVyXG4gICAgdGhpcy5jbGVhbnVwKCk7XG4gICAgdGhpcy5jb25uZWN0aW9uTGlzdGVuZXIuYWRkT25saW5lTGlzdGVuZXIodGhpcy5vbmxpbmVMaXN0ZW5lcik7XG4gIH07XG5cbiAgLyoqIFdoYXQgaGFwcGVucyB3aGVuIGJyb3dzZXIgY29tZXMgb25saW5lICovXG4gIHByb3RlY3RlZCBvbmxpbmVMaXN0ZW5lciA9ICgpID0+IHtcbiAgICB0aGlzLmNvbm5lY3Rpb25MaXN0ZW5lci5yZW1vdmVPbmxpbmVMaXN0ZW5lcih0aGlzLm9ubGluZUxpc3RlbmVyKTtcbiAgICBjb25zdCBub3cgPSBEYXRlLm5vdygpO1xuICAgIHRoaXMuc3RhcnRJZCA9IHNldFRpbWVvdXQoXG4gICAgICAoKSA9PiB7XG4gICAgICAgIGlmICh0aGlzLnN0YXJ0SWQpIHtcbiAgICAgICAgICBkZWxldGUgdGhpcy5zdGFydElkO1xuICAgICAgICAgIHRoaXMudXBkYXRlKCk7XG4gICAgICAgICAgdGhpcy5ydW4oKTtcbiAgICAgICAgfSBlbHNlIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgICAgY29uc29sZS53YXJuKFxuICAgICAgICAgICAgYFBvbGwgc2V0VGltZW91dCBmb3IgJHt0aGlzLmtleX0gc3RpbGwgcnVubmluZywgYnV0IHRpbWVvdXRJZCBkZWxldGVkYCxcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgTWF0aC5tYXgoMCwgdGhpcy5sYXN0RmV0Y2hUaW1lKCkgLSBub3cgKyB0aGlzLmZyZXF1ZW5jeSksXG4gICAgKTtcbiAgICB0aGlzLmNvbm5lY3Rpb25MaXN0ZW5lci5hZGRPZmZsaW5lTGlzdGVuZXIodGhpcy5vZmZsaW5lTGlzdGVuZXIpO1xuICB9O1xuXG4gIC8qKiBSdW4gcG9sbGluZyBwcm9jZXNzIHdpdGggY3VycmVudCBmcmVxdWVuY3lcbiAgICpcbiAgICogV2lsbCBjbGVhbiB1cCBvbGQgcG9sbCBpbnRlcnZhbCBvbiBuZXh0IHJ1blxuICAgKi9cbiAgcHJvdGVjdGVkIHJ1bigpIHtcbiAgICBpZiAodGhpcy5zdGFydElkKSByZXR1cm47XG4gICAgaWYgKHRoaXMuaW50ZXJ2YWxJZCkgdGhpcy5sYXN0SW50ZXJ2YWxJZCA9IHRoaXMuaW50ZXJ2YWxJZDtcbiAgICB0aGlzLmludGVydmFsSWQgPSBzZXRJbnRlcnZhbCgoKSA9PiB7XG4gICAgICAvLyBzaW5jZSB3ZSBkb24ndCBrbm93IGhvdyBsb25nIGludG8gdGhlIGxhc3QgcG9sbCBpdCB3YXMgYmVmb3JlIHJlc2V0dGluZ1xuICAgICAgLy8gd2Ugd2FpdCB0aWwgdGhlIG5leHQgZmV0Y2ggdG8gY2xlYXIgb2xkIGludGVydmFsc1xuICAgICAgaWYgKHRoaXMubGFzdEludGVydmFsSWQpIHtcbiAgICAgICAgY2xlYXJJbnRlcnZhbCh0aGlzLmxhc3RJbnRlcnZhbElkKTtcbiAgICAgICAgZGVsZXRlIHRoaXMubGFzdEludGVydmFsSWQ7XG4gICAgICB9XG4gICAgICBpZiAodGhpcy5pbnRlcnZhbElkKSB0aGlzLnVwZGF0ZSgpO1xuICAgICAgZWxzZSBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICBjb25zb2xlLndhcm4oXG4gICAgICAgICAgYFBvbGwgaW50ZXJ2YWxJZCBmb3IgJHt0aGlzLmtleX0gc3RpbGwgcnVubmluZywgYnV0IGludGVydmFsSWQgZGVsZXRlZGAsXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfSwgdGhpcy5mcmVxdWVuY3kpO1xuICB9XG5cbiAgLyoqIExhc3QgZmV0Y2ggdGltZSAqL1xuICBwcm90ZWN0ZWQgbGFzdEZldGNoVGltZSgpIHtcbiAgICByZXR1cm4gdGhpcy5jb250cm9sbGVyLmdldFN0YXRlKCkubWV0YVt0aGlzLmtleV0/LmRhdGUgPz8gMDtcbiAgfVxufVxuIl0sIm1hcHBpbmdzIjoiQUFHQSxPQUFPQSx5QkFBeUIsTUFBTSxnQ0FBZ0M7QUFLdEU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxlQUFlLE1BQU1DLG1CQUFtQixDQUF5QjtFQVkvREMsV0FBV0EsQ0FDVEMsTUFBcUMsRUFDckNDLFVBQXNCLEVBQ3RCQyxrQkFBdUMsRUFDdkM7SUFBQSxLQVhRQyxrQkFBa0IsR0FBd0IsSUFBSUMsR0FBRyxDQUFDLENBQUM7SUFvSDdEO0lBQUEsS0FDVUMsZUFBZSxHQUFHLE1BQU07TUFDaEM7TUFDQSxJQUFJLENBQUNDLE9BQU8sQ0FBQyxDQUFDO01BQ2QsSUFBSSxDQUFDSixrQkFBa0IsQ0FBQ0ssaUJBQWlCLENBQUMsSUFBSSxDQUFDQyxjQUFjLENBQUM7SUFDaEUsQ0FBQztJQUVEO0lBQUEsS0FDVUEsY0FBYyxHQUFHLE1BQU07TUFDL0IsSUFBSSxDQUFDTixrQkFBa0IsQ0FBQ08sb0JBQW9CLENBQUMsSUFBSSxDQUFDRCxjQUFjLENBQUM7TUFDakUsTUFBTUUsR0FBRyxHQUFHQyxJQUFJLENBQUNELEdBQUcsQ0FBQyxDQUFDO01BQ3RCLElBQUksQ0FBQ0UsT0FBTyxHQUFHQyxVQUFVLENBQ3ZCLE1BQU07UUFDSixJQUFJLElBQUksQ0FBQ0QsT0FBTyxFQUFFO1VBQ2hCLE9BQU8sSUFB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
153
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJEZWZhdWx0Q29ubmVjdGlvbkxpc3RlbmVyIiwiUG9sbGluZ1N1YnNjcmlwdGlvbiIsImNvbnN0cnVjdG9yIiwiYWN0aW9uIiwiY29udHJvbGxlciIsImNvbm5lY3Rpb25MaXN0ZW5lciIsImZyZXF1ZW5jeUhpc3RvZ3JhbSIsIk1hcCIsIm9mZmxpbmVMaXN0ZW5lciIsImNsZWFudXAiLCJhZGRPbmxpbmVMaXN0ZW5lciIsIm9ubGluZUxpc3RlbmVyIiwicmVtb3ZlT25saW5lTGlzdGVuZXIiLCJub3ciLCJEYXRlIiwic3RhcnRJZCIsInNldFRpbWVvdXQiLCJ1cGRhdGUiLCJydW4iLCJwcm9jZXNzIiwiZW52IiwiTk9ERV9FTlYiLCJjb25zb2xlIiwid2FybiIsImtleSIsIk1hdGgiLCJtYXgiLCJsYXN0RmV0Y2hUaW1lIiwiZnJlcXVlbmN5IiwiYWRkT2ZmbGluZUxpc3RlbmVyIiwiZW5kcG9pbnQiLCJwb2xsRnJlcXVlbmN5IiwidW5kZWZpbmVkIiwiRXJyb3IiLCJhcmdzIiwic2V0IiwiaXNPbmxpbmUiLCJhZGQiLCJoYXMiLCJnZXQiLCJyZW1vdmUiLCJkZWxldGUiLCJzaXplIiwiX2NvbnRleHQiLCJtaW4iLCJfa2V5c0luc3RhbmNlUHJvcGVydHkiLCJjYWxsIiwiZXJyb3IiLCJpbnRlcnZhbElkIiwiY2xlYXJJbnRlcnZhbCIsImxhc3RJbnRlcnZhbElkIiwiY2xlYXJUaW1lb3V0IiwicmVtb3ZlT2ZmbGluZUxpc3RlbmVyIiwic3VwIiwiX09iamVjdCRhc3NpZ24iLCJkYXRhRXhwaXJ5TGVuZ3RoIiwiZXJyb3JFeHBpcnlMZW5ndGgiLCJlcnJvclBvbGljeSIsImZldGNoIiwiY2F0Y2giLCJzZXRJbnRlcnZhbCIsIl90aGlzJGNvbnRyb2xsZXIkZ2V0UyIsIl90aGlzJGNvbnRyb2xsZXIkZ2V0UzIiLCJnZXRTdGF0ZSIsIm1ldGEiLCJkYXRlIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL21hbmFnZXIvUG9sbGluZ1N1YnNjcmlwdGlvbi50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IEVuZHBvaW50SW50ZXJmYWNlIH0gZnJvbSAnQGRhdGEtY2xpZW50L25vcm1hbGl6cic7XG5cbmltcG9ydCBDb25uZWN0aW9uTGlzdGVuZXIgZnJvbSAnLi9Db25uZWN0aW9uTGlzdGVuZXIuanMnO1xuaW1wb3J0IERlZmF1bHRDb25uZWN0aW9uTGlzdGVuZXIgZnJvbSAnLi9EZWZhdWx0Q29ubmVjdGlvbkxpc3RlbmVyLmpzJztcbmltcG9ydCB0eXBlIHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAnLi9TdWJzY3JpcHRpb25NYW5hZ2VyLmpzJztcbmltcG9ydCB0eXBlIENvbnRyb2xsZXIgZnJvbSAnLi4vY29udHJvbGxlci9Db250cm9sbGVyLmpzJztcbmltcG9ydCB0eXBlIHsgU3Vic2NyaWJlQWN0aW9uIH0gZnJvbSAnLi4vdHlwZXMuanMnO1xuXG4vKipcbiAqIFBvbGxpbmdTdWJzY3JpcHRpb24ga2VlcHMgYSBnaXZlbiByZXNvdXJjZSB1cGRhdGVkIGJ5XG4gKiBkaXNwYXRjaGluZyBhIGZldGNoIGF0IGEgcmF0ZSBlcXVhbCB0byB0aGUgbWluaW11bSB1cGRhdGVcbiAqIGludGVydmFsIHJlcXVlc3RlZC5cbiAqXG4gKiBAc2VlIGh0dHBzOi8vZGF0YWNsaWVudC5pby9kb2NzL2FwaS9Qb2xsaW5nU3Vic2NyaXB0aW9uXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFBvbGxpbmdTdWJzY3JpcHRpb24gaW1wbGVtZW50cyBTdWJzY3JpcHRpb24ge1xuICBkZWNsYXJlIHByb3RlY3RlZCByZWFkb25seSBlbmRwb2ludDogRW5kcG9pbnRJbnRlcmZhY2U7XG4gIGRlY2xhcmUgcHJvdGVjdGVkIHJlYWRvbmx5IGFyZ3M6IHJlYWRvbmx5IGFueVtdO1xuICBkZWNsYXJlIHByb3RlY3RlZCByZWFkb25seSBrZXk6IHN0cmluZztcbiAgZGVjbGFyZSBwcm90ZWN0ZWQgZnJlcXVlbmN5OiBudW1iZXI7XG4gIHByb3RlY3RlZCBmcmVxdWVuY3lIaXN0b2dyYW06IE1hcDxudW1iZXIsIG51bWJlcj4gPSBuZXcgTWFwKCk7XG4gIGRlY2xhcmUgcHJvdGVjdGVkIGNvbnRyb2xsZXI6IENvbnRyb2xsZXI7XG4gIGRlY2xhcmUgcHJvdGVjdGVkIGludGVydmFsSWQ/OiBSZXR1cm5UeXBlPHR5cGVvZiBzZXRJbnRlcnZhbD47XG4gIGRlY2xhcmUgcHJvdGVjdGVkIGxhc3RJbnRlcnZhbElkPzogUmV0dXJuVHlwZTx0eXBlb2Ygc2V0SW50ZXJ2YWw+O1xuICBkZWNsYXJlIHByb3RlY3RlZCBzdGFydElkPzogUmV0dXJuVHlwZTx0eXBlb2Ygc2V0VGltZW91dD47XG4gIGRlY2xhcmUgcHJpdmF0ZSBjb25uZWN0aW9uTGlzdGVuZXI6IENvbm5lY3Rpb25MaXN0ZW5lcjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBhY3Rpb246IE9taXQ8U3Vic2NyaWJlQWN0aW9uLCAndHlwZSc+LFxuICAgIGNvbnRyb2xsZXI6IENvbnRyb2xsZXIsXG4gICAgY29ubmVjdGlvbkxpc3RlbmVyPzogQ29ubmVjdGlvbkxpc3RlbmVyLFxuICApIHtcbiAgICBpZiAoYWN0aW9uLmVuZHBvaW50LnBvbGxGcmVxdWVuY3kgPT09IHVuZGVmaW5lZClcbiAgICAgIHRocm93IG5ldyBFcnJvcignZnJlcXVlbmN5IG5lZWRlZCBmb3IgcG9sbGluZyBzdWJzY3JpcHRpb24nKTtcbiAgICB0aGlzLmVuZHBvaW50ID0gYWN0aW9uLmVuZHBvaW50O1xuICAgIHRoaXMuZnJlcXVlbmN5ID0gYWN0aW9uLmVuZHBvaW50LnBvbGxGcmVxdWVuY3k7XG4gICAgdGhpcy5hcmdzID0gYWN0aW9uLmFyZ3M7XG4gICAgdGhpcy5rZXkgPSBhY3Rpb24ua2V5O1xuICAgIHRoaXMuZnJlcXVlbmN5SGlzdG9ncmFtLnNldCh0aGlzLmZyZXF1ZW5jeSwgMSk7XG4gICAgdGhpcy5jb250cm9sbGVyID0gY29udHJvbGxlcjtcbiAgICB0aGlzLmNvbm5lY3Rpb25MaXN0ZW5lciA9XG4gICAgICBjb25uZWN0aW9uTGlzdGVuZXIgfHwgbmV3IERlZmF1bHRDb25uZWN0aW9uTGlzdGVuZXIoKTtcblxuICAgIC8vIEtpY2tzdGFydCBydW5uaW5nIHNpbmNlIHRoaXMgaXMgaW5pdGlhbGl6ZWQgYWZ0ZXIgdGhlIG9ubGluZSBub3RpZiBpcyBzZW50XG4gICAgaWYgKHRoaXMuY29ubmVjdGlvbkxpc3RlbmVyLmlzT25saW5lKCkpIHtcbiAgICAgIHRoaXMub25saW5lTGlzdGVuZXIoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5vZmZsaW5lTGlzdGVuZXIoKTtcbiAgICB9XG4gIH1cblxuICAvKiogU3Vic2NyaWJlIHRvIGEgZnJlcXVlbmN5ICovXG4gIGFkZChmcmVxdWVuY3k/OiBudW1iZXIpIHtcbiAgICBpZiAoZnJlcXVlbmN5ID09PSB1bmRlZmluZWQpIHJldHVybjtcbiAgICBpZiAodGhpcy5mcmVxdWVuY3lIaXN0b2dyYW0uaGFzKGZyZXF1ZW5jeSkpIHtcbiAgICAgIHRoaXMuZnJlcXVlbmN5SGlzdG9ncmFtLnNldChcbiAgICAgICAgZnJlcXVlbmN5LFxuICAgICAgICAodGhpcy5mcmVxdWVuY3lIaXN0b2dyYW0uZ2V0KGZyZXF1ZW5jeSkgYXMgbnVtYmVyKSArIDEsXG4gICAgICApO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmZyZXF1ZW5jeUhpc3RvZ3JhbS5zZXQoZnJlcXVlbmN5LCAxKTtcblxuICAgICAgLy8gbmV3IG1pbiBzbyByZXN0YXJ0IHNlcnZpY2VcbiAgICAgIGlmIChmcmVxdWVuY3kgPCB0aGlzLmZyZXF1ZW5jeSkge1xuICAgICAgICB0aGlzLmZyZXF1ZW5jeSA9IGZyZXF1ZW5jeTtcbiAgICAgICAgdGhpcy5ydW4oKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKiogVW5zdWJzY3JpYmUgZnJvbSBhIGZyZXF1ZW5jeSAqL1xuICByZW1vdmUoZnJlcXVlbmN5PzogbnVtYmVyKSB7XG4gICAgaWYgKGZyZXF1ZW5jeSA9PT0gdW5kZWZpbmVkKSByZXR1cm4gZmFsc2U7XG4gICAgaWYgKHRoaXMuZnJlcXVlbmN5SGlzdG9ncmFtLmhhcyhmcmVxdWVuY3kpKSB7XG4gICAgICB0aGlzLmZyZXF1ZW5jeUhpc3RvZ3JhbS5zZXQoXG4gICAgICAgIGZyZXF1ZW5jeSxcbiAgICAgICAgKHRoaXMuZnJlcXVlbmN5SGlzdG9ncmFtLmdldChmcmVxdWVuY3kpIGFzIG51bWJlcikgLSAxLFxuICAgICAgKTtcbiAgICAgIGlmICgodGhpcy5mcmVxdWVuY3lIaXN0b2dyYW0uZ2V0KGZyZXF1ZW5jeSkgYXMgbnVtYmVyKSA8IDEpIHtcbiAgICAgICAgdGhpcy5mcmVxdWVuY3lIaXN0b2dyYW0uZGVsZXRlKGZyZXF1ZW5jeSk7XG5cbiAgICAgICAgLy8gbm90aGluZyBzdWJzY3JpYmVkIHRvIHRoaXMgYW55bW9yZS4uLml0IGlzIGludmFsaWRcbiAgICAgICAgaWYgKHRoaXMuZnJlcXVlbmN5SGlzdG9ncmFtLnNpemUgPT09IDApIHtcbiAgICAgICAgICB0aGlzLmNsZWFudXAoKTtcbiAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIHRoaXMgd2FzIHRoZSBtaW4sIHNvIGZpbmQgdGhlIG5leHQgc2l6ZVxuICAgICAgICBpZiAoZnJlcXVlbmN5IDw9IHRoaXMuZnJlcXVlbmN5KSB7XG4gICAgICAgICAgdGhpcy5mcmVxdWVuY3kgPSBNYXRoLm1pbiguLi50aGlzLmZyZXF1ZW5jeUhpc3RvZ3JhbS5rZXlzKCkpO1xuICAgICAgICAgIHRoaXMucnVuKCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovIGVsc2UgaWYgKFxuICAgICAgcHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJ1xuICAgICkge1xuICAgICAgY29uc29sZS5lcnJvcihcbiAgICAgICAgYE1pc21hdGNoZWQgcmVtb3ZlOiAke2ZyZXF1ZW5jeX0gaXMgbm90IHN1YnNjcmliZWQgZm9yICR7dGhpcy5rZXl9YCxcbiAgICAgICk7XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIC8qKiBDbGVhbnVwIG1lYW5zIGNsZWFyaW5nIG91dCBiYWNrZ3JvdW5kIGludGVydmFsLiAqL1xuICBjbGVhbnVwKCkge1xuICAgIGlmICh0aGlzLmludGVydmFsSWQpIHtcbiAgICAgIGNsZWFySW50ZXJ2YWwodGhpcy5pbnRlcnZhbElkKTtcbiAgICAgIGRlbGV0ZSB0aGlzLmludGVydmFsSWQ7XG4gICAgfVxuICAgIGlmICh0aGlzLmxhc3RJbnRlcnZhbElkKSB7XG4gICAgICBjbGVhckludGVydmFsKHRoaXMubGFzdEludGVydmFsSWQpO1xuICAgICAgZGVsZXRlIHRoaXMubGFzdEludGVydmFsSWQ7XG4gICAgfVxuICAgIGlmICh0aGlzLnN0YXJ0SWQpIHtcbiAgICAgIGNsZWFyVGltZW91dCh0aGlzLnN0YXJ0SWQpO1xuICAgICAgZGVsZXRlIHRoaXMuc3RhcnRJZDtcbiAgICB9XG4gICAgdGhpcy5jb25uZWN0aW9uTGlzdGVuZXIucmVtb3ZlT25saW5lTGlzdGVuZXIodGhpcy5vbmxpbmVMaXN0ZW5lcik7XG4gICAgdGhpcy5jb25uZWN0aW9uTGlzdGVuZXIucmVtb3ZlT2ZmbGluZUxpc3RlbmVyKHRoaXMub2ZmbGluZUxpc3RlbmVyKTtcbiAgfVxuXG4gIC8qKiBUcmlnZ2VyIHJlcXVlc3QgZm9yIGxhdGVzdCByZXNvdXJjZSAqL1xuICBwcm90ZWN0ZWQgdXBkYXRlKCkge1xuICAgIGNvbnN0IHN1cCA9IHRoaXMuZW5kcG9pbnQ7XG4gICAgY29uc3QgZW5kcG9pbnQgPSBmdW5jdGlvbiAodGhpczogYW55LCAuLi5hcmdzOiBhbnlbXSkge1xuICAgICAgcmV0dXJuIHN1cC5jYWxsKHRoaXMsIC4uLmFyZ3MpO1xuICAgIH07XG4gICAgT2JqZWN0LmFzc2lnbihlbmRwb2ludCwgdGhpcy5lbmRwb2ludCk7XG4gICAgZW5kcG9pbnQuZGF0YUV4cGlyeUxlbmd0aCA9IHRoaXMuZnJlcXVlbmN5IC8gMjtcbiAgICBlbmRwb2ludC5lcnJvckV4cGlyeUxlbmd0aCA9IHRoaXMuZnJlcXVlbmN5IC8gMTA7XG4gICAgZW5kcG9pbnQuZXJyb3JQb2xpY3kgPSAoKSA9PiAnc29mdCcgYXMgY29uc3Q7XG4gICAgZW5kcG9pbnQua2V5ID0gKCkgPT4gdGhpcy5rZXk7XG4gICAgLy8gc3RvcCBhbnkgZXJyb3JzIGhlcmUgZnJvbSBidWJibGluZ1xuICAgIHRoaXMuY29udHJvbGxlci5mZXRjaChlbmRwb2ludCwgLi4udGhpcy5hcmdzKS5jYXRjaCgoKSA9PiBudWxsKTtcbiAgfVxuXG4gIC8qKiBXaGF0IGhhcHBlbnMgd2hlbiBicm93c2VyIGdvZXMgb2ZmbGluZSAqL1xuICBwcm90ZWN0ZWQgb2ZmbGluZUxpc3RlbmVyID0gKCkgPT4ge1xuICAgIC8vIHRoaXMgY2xlYXJzIGV4aXN0aW5nIGxpc3RlbmVycywgc28gbm8gbmVlZCB0byBjbGVhciBvZmZsaW5lIGxpc3RlbmVyXG4gICAgdGhpcy5jbGVhbnVwKCk7XG4gICAgdGhpcy5jb25uZWN0aW9uTGlzdGVuZXIuYWRkT25saW5lTGlzdGVuZXIodGhpcy5vbmxpbmVMaXN0ZW5lcik7XG4gIH07XG5cbiAgLyoqIFdoYXQgaGFwcGVucyB3aGVuIGJyb3dzZXIgY29tZXMgb25saW5lICovXG4gIHByb3RlY3RlZCBvbmxpbmVMaXN0ZW5lciA9ICgpID0+IHtcbiAgICB0aGlzLmNvbm5lY3Rpb25MaXN0ZW5lci5yZW1vdmVPbmxpbmVMaXN0ZW5lcih0aGlzLm9ubGluZUxpc3RlbmVyKTtcbiAgICBjb25zdCBub3cgPSBEYXRlLm5vdygpO1xuICAgIHRoaXMuc3RhcnRJZCA9IHNldFRpbWVvdXQoXG4gICAgICAoKSA9PiB7XG4gICAgICAgIGlmICh0aGlzLnN0YXJ0SWQpIHtcbiAgICAgICAgICBkZWxldGUgdGhpcy5zdGFydElkO1xuICAgICAgICAgIHRoaXMudXBkYXRlKCk7XG4gICAgICAgICAgdGhpcy5ydW4oKTtcbiAgICAgICAgfSBlbHNlIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgICAgY29uc29sZS53YXJuKFxuICAgICAgICAgICAgYFBvbGwgc2V0VGltZW91dCBmb3IgJHt0aGlzLmtleX0gc3RpbGwgcnVubmluZywgYnV0IHRpbWVvdXRJZCBkZWxldGVkYCxcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgTWF0aC5tYXgoMCwgdGhpcy5sYXN0RmV0Y2hUaW1lKCkgLSBub3cgKyB0aGlzLmZyZXF1ZW5jeSksXG4gICAgKTtcbiAgICB0aGlzLmNvbm5lY3Rpb25MaXN0ZW5lci5hZGRPZmZsaW5lTGlzdGVuZXIodGhpcy5vZmZsaW5lTGlzdGVuZXIpO1xuICB9O1xuXG4gIC8qKiBSdW4gcG9sbGluZyBwcm9jZXNzIHdpdGggY3VycmVudCBmcmVxdWVuY3lcbiAgICpcbiAgICogV2lsbCBjbGVhbiB1cCBvbGQgcG9sbCBpbnRlcnZhbCBvbiBuZXh0IHJ1blxuICAgKi9cbiAgcHJvdGVjdGVkIHJ1bigpIHtcbiAgICBpZiAodGhpcy5zdGFydElkKSByZXR1cm47XG4gICAgaWYgKHRoaXMuaW50ZXJ2YWxJZCkgdGhpcy5sYXN0SW50ZXJ2YWxJZCA9IHRoaXMuaW50ZXJ2YWxJZDtcbiAgICB0aGlzLmludGVydmFsSWQgPSBzZXRJbnRlcnZhbCgoKSA9PiB7XG4gICAgICAvLyBzaW5jZSB3ZSBkb24ndCBrbm93IGhvdyBsb25nIGludG8gdGhlIGxhc3QgcG9sbCBpdCB3YXMgYmVmb3JlIHJlc2V0dGluZ1xuICAgICAgLy8gd2Ugd2FpdCB0aWwgdGhlIG5leHQgZmV0Y2ggdG8gY2xlYXIgb2xkIGludGVydmFsc1xuICAgICAgaWYgKHRoaXMubGFzdEludGVydmFsSWQpIHtcbiAgICAgICAgY2xlYXJJbnRlcnZhbCh0aGlzLmxhc3RJbnRlcnZhbElkKTtcbiAgICAgICAgZGVsZXRlIHRoaXMubGFzdEludGVydmFsSWQ7XG4gICAgICB9XG4gICAgICBpZiAodGhpcy5pbnRlcnZhbElkKSB0aGlzLnVwZGF0ZSgpO1xuICAgICAgZWxzZSBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICBjb25zb2xlLndhcm4oXG4gICAgICAgICAgYFBvbGwgaW50ZXJ2YWxJZCBmb3IgJHt0aGlzLmtleX0gc3RpbGwgcnVubmluZywgYnV0IGludGVydmFsSWQgZGVsZXRlZGAsXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfSwgdGhpcy5mcmVxdWVuY3kpO1xuICB9XG5cbiAgLyoqIExhc3QgZmV0Y2ggdGltZSAqL1xuICBwcm90ZWN0ZWQgbGFzdEZldGNoVGltZSgpIHtcbiAgICByZXR1cm4gdGhpcy5jb250cm9sbGVyLmdldFN0YXRlKCkubWV0YVt0aGlzLmtleV0/LmRhdGUgPz8gMDtcbiAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOztBQUdBLE9BQU9BLHlCQUF5QixNQUFNLGdDQUFnQztBQUt0RTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGVBQWUsTUFBTUMsbUJBQW1CLENBQXlCO0VBWS9EQyxXQUFXQSxDQUNUQyxNQUFxQyxFQUNyQ0MsVUFBc0IsRUFDdEJDLGtCQUF1QyxFQUN2QztJQUFBLEtBWFFDLGtCQUFrQixHQUF3QixJQUFJQyxHQUFHLENBQUMsQ0FBQztJQW9IN0Q7SUFBQSxLQUNVQyxlQUFlLEdBQUcsTUFBTTtNQUNoQztNQUNBLElBQUksQ0FBQ0MsT0FBTyxDQUFDLENBQUM7TUFDZCxJQUFJLENBQUNKLGtCQUFrQixDQUFDSyxpQkFBaUIsQ0FBQyxJQUFJLENBQUNDLGNBQWMsQ0FBQztJQUNoRSxDQUFDO0lBRUQ7SUFBQSxLQUNVQSxjQUFjLEdBQUcsTUFBTTtNQUMvQixJQUFJLENBQUNOLGtCQUFrQixDQUFDTyxvQkFBb0IsQ0FBQyxJQUFJLENBQUNELGNBQWMsQ0FBQztNQUNqRSxNQUFNRSxHQUFHLEdBQUdDLElBQUksQ0FBQ0QsR0FBRyxDQUFDLENBQUM7TUFDdEIsSUFBSSxDQUFDRSxPQUFPLEdBQUdDLFVBQVUsQ0FDdkIsTUFBTTtRQUNKLElBQUksSUFBSSxD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
@@ -1,3 +1,4 @@
1
+ import _Promise from "core-js-pure/stable/promise/index.js";
1
2
  import { SUBSCRIBE, UNSUBSCRIBE } from '../actionTypes.js';
2
3
  import Controller from '../controller/Controller.js';
3
4
 
@@ -26,10 +27,10 @@ export default class SubscriptionManager {
26
27
  } catch (e) {
27
28
  console.error(e);
28
29
  }
29
- return Promise.resolve();
30
+ return _Promise.resolve();
30
31
  case UNSUBSCRIBE:
31
32
  this.handleUnsubscribe(action);
32
- return Promise.resolve();
33
+ return _Promise.resolve();
33
34
  default:
34
35
  return next(action);
35
36
  }
@@ -75,4 +76,4 @@ export default class SubscriptionManager {
75
76
  }
76
77
  }
77
78
  }
78
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJTVUJTQ1JJQkUiLCJVTlNVQlNDUklCRSIsIkNvbnRyb2xsZXIiLCJTdWJzY3JpcHRpb25NYW5hZ2VyIiwiY29uc3RydWN0b3IiLCJTdWJzY3JpcHRpb24iLCJzdWJzY3JpcHRpb25zIiwiY29udHJvbGxlciIsIm1pZGRsZXdhcmUiLCJuZXh0IiwiYWN0aW9uIiwidHlwZSIsImhhbmRsZVN1YnNjcmliZSIsImUiLCJjb25zb2xlIiwiZXJyb3IiLCJQcm9taXNlIiwicmVzb2x2ZSIsImhhbmRsZVVuc3Vic2NyaWJlIiwiY2xlYW51cCIsImtleSIsImZyZXF1ZW5jeSIsImVuZHBvaW50IiwicG9sbEZyZXF1ZW5jeSIsImFkZCIsImVtcHR5IiwicmVtb3ZlIiwicHJvY2VzcyIsImVudiIsIk5PREVfRU5WIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL21hbmFnZXIvU3Vic2NyaXB0aW9uTWFuYWdlci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTVUJTQ1JJQkUsIFVOU1VCU0NSSUJFIH0gZnJvbSAnLi4vYWN0aW9uVHlwZXMuanMnO1xuaW1wb3J0IENvbnRyb2xsZXIgZnJvbSAnLi4vY29udHJvbGxlci9Db250cm9sbGVyLmpzJztcbmltcG9ydCB0eXBlIHtcbiAgTWFuYWdlcixcbiAgTWlkZGxld2FyZUFQSSxcbiAgTWlkZGxld2FyZSxcbiAgVW5zdWJzY3JpYmVBY3Rpb24sXG4gIFN1YnNjcmliZUFjdGlvbixcbn0gZnJvbSAnLi4vdHlwZXMuanMnO1xuXG50eXBlIEFjdGlvbnMgPSBVbnN1YnNjcmliZUFjdGlvbiB8IFN1YnNjcmliZUFjdGlvbjtcblxuLyoqIEludGVyZmFjZSBoYW5kbGluZyBhIHNpbmdsZSByZXNvdXJjZSBzdWJzY3JpcHRpb24gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU3Vic2NyaXB0aW9uIHtcbiAgYWRkKGZyZXF1ZW5jeT86IG51bWJlcik6IHZvaWQ7XG4gIHJlbW92ZShmcmVxdWVuY3k/OiBudW1iZXIpOiBib29sZWFuO1xuICBjbGVhbnVwKCk6IHZvaWQ7XG59XG5cbi8qKiBUaGUgc3RhdGljIGNsYXNzIHRoYXQgY29uc3RydWN0cyBTdWJzY3JpcHRpb24gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU3Vic2NyaXB0aW9uQ29uc3RydWN0YWJsZSB7XG4gIG5ldyAoXG4gICAgYWN0aW9uOiBPbWl0PFN1YnNjcmliZUFjdGlvbiwgJ3R5cGUnPixcbiAgICBjb250cm9sbGVyOiBDb250cm9sbGVyLFxuICApOiBTdWJzY3JpcHRpb247XG59XG5cbi8qKiBIYW5kbGVzIHN1YnNjcmlwdGlvbiBhY3Rpb25zIC0+IGZldGNoIG9yIHNldCBhY3Rpb25zXG4gKlxuICogQ29uc3RydWN0b3IgdGFrZXMgYSBTdWJzY3JpcHRpb25Db25zdHJ1Y3RhYmxlIGNsYXNzIHRvIGNvbnRyb2wgaG93XG4gKiBzdWJzY3JpcHRpb25zIGFyZSBoYW5kbGVkLiAoZS5nLiwgcG9sbGluZywgd2Vic29ja2V0cylcbiAqXG4gKiBAc2VlIGh0dHBzOi8vZGF0YWNsaWVudC5pby9kb2NzL2FwaS9TdWJzY3JpcHRpb25NYW5hZ2VyXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFN1YnNjcmlwdGlvbk1hbmFnZXI8XG4gIFMgZXh0ZW5kcyBTdWJzY3JpcHRpb25Db25zdHJ1Y3RhYmxlID0gU3Vic2NyaXB0aW9uQ29uc3RydWN0YWJsZSxcbj4gaW1wbGVtZW50cyBNYW5hZ2VyPEFjdGlvbnM+XG57XG4gIHByb3RlY3RlZCBzdWJzY3JpcHRpb25zOiB7XG4gICAgW2tleTogc3RyaW5nXTogSW5zdGFuY2VUeXBlPFM+O1xuICB9ID0ge307XG5cbiAgZGVjbGFyZSBwcm90ZWN0ZWQgcmVhZG9ubHkgU3Vic2NyaXB0aW9uOiBTO1xuICBwcm90ZWN0ZWQgY29udHJvbGxlcjogQ29udHJvbGxlciA9IG5ldyBDb250cm9sbGVyKCk7XG5cbiAgY29uc3RydWN0b3IoU3Vic2NyaXB0aW9uOiBTKSB7XG4gICAgdGhpcy5TdWJzY3JpcHRpb24gPSBTdWJzY3JpcHRpb247XG4gIH1cblxuICBtaWRkbGV3YXJlOiBNaWRkbGV3YXJlID0gY29udHJvbGxlciA9PiB7XG4gICAgdGhpcy5jb250cm9sbGVyID0gY29udHJvbGxlcjtcbiAgICByZXR1cm4gbmV4dCA9PiBhY3Rpb24gPT4ge1xuICAgICAgc3dpdGNoIChhY3Rpb24udHlwZSkge1xuICAgICAgICBjYXNlIFNVQlNDUklCRTpcbiAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgdGhpcy5oYW5kbGVTdWJzY3JpYmUoYWN0aW9uKTtcbiAgICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKGUpO1xuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCk7XG4gICAgICAgIGNhc2UgVU5TVUJTQ1JJQkU6XG4gICAgICAgICAgdGhpcy5oYW5kbGVVbnN1YnNjcmliZShhY3Rpb24pO1xuICAgICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICByZXR1cm4gbmV4dChhY3Rpb24pO1xuICAgICAgfVxuICAgIH07XG4gIH07XG5cbiAgLyoqIEVuc3VyZXMgYWxsIHN1YnNjcmlwdGlvbnMgYXJlIGNsZWFuZWQgdXAuICovXG4gIGNsZWFudXAoKSB7XG4gICAgZm9yIChjb25zdCBrZXkgaW4gdGhpcy5zdWJzY3JpcHRpb25zKSB7XG4gICAgICB0aGlzLnN1YnNjcmlwdGlvbnNba2V5XS5jbGVhbnVwKCk7XG4gICAgfVxuICB9XG5cbiAgLyoqIENhbGxlZCB3aGVuIG1pZGRsZXdhcmUgaW50ZXJjZXB0cyAncmRjL3N1YnNjcmliZScgYWN0aW9uLlxuICAgKlxuICAgKi9cbiAgcHJvdGVjdGVkIGhhbmRsZVN1YnNjcmliZShhY3Rpb246IFN1YnNjcmliZUFjdGlvbikge1xuICAgIGNvbnN0IGtleSA9IGFjdGlvbi5rZXk7XG5cbiAgICBpZiAoa2V5IGluIHRoaXMuc3Vic2NyaXB0aW9ucykge1xuICAgICAgY29uc3QgZnJlcXVlbmN5ID0gYWN0aW9uLmVuZHBvaW50LnBvbGxGcmVxdWVuY3k7XG4gICAgICB0aGlzLnN1YnNjcmlwdGlvbnNba2V5XS5hZGQoZnJlcXVlbmN5KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5zdWJzY3JpcHRpb25zW2tleV0gPSBuZXcgdGhpcy5TdWJzY3JpcHRpb24oXG4gICAgICAgIGFjdGlvbixcbiAgICAgICAgdGhpcy5jb250cm9sbGVyLFxuICAgICAgKSBhcyBJbnN0YW5jZVR5cGU8Uz47XG4gICAgfVxuICB9XG5cbiAgLyoqIENhbGxlZCB3aGVuIG1pZGRsZXdhcmUgaW50ZXJjZXB0cyAncmRjL3Vuc3Vic2NyaWJlJyBhY3Rpb24uXG4gICAqXG4gICAqL1xuICBwcm90ZWN0ZWQgaGFuZGxlVW5zdWJzY3JpYmUoYWN0aW9uOiBVbnN1YnNjcmliZUFjdGlvbikge1xuICAgIGNvbnN0IGtleSA9IGFjdGlvbi5rZXk7XG5cbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgIGlmIChrZXkgaW4gdGhpcy5zdWJzY3JpcHRpb25zKSB7XG4gICAgICBjb25zdCBmcmVxdWVuY3kgPSBhY3Rpb24uZW5kcG9pbnQucG9sbEZyZXF1ZW5jeTtcbiAgICAgIGNvbnN0IGVtcHR5ID0gdGhpcy5zdWJzY3JpcHRpb25zW2tleV0ucmVtb3ZlKGZyZXF1ZW5jeSk7XG4gICAgICBpZiAoZW1wdHkpIHtcbiAgICAgICAgZGVsZXRlIHRoaXMuc3Vic2NyaXB0aW9uc1trZXldO1xuICAgICAgfVxuICAgIH0gZWxzZSBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgY29uc29sZS5lcnJvcihgTWlzbWF0Y2hlZCB1bnN1YnNjcmliZTogJHtrZXl9IGlzIG5vdCBzdWJzY3JpYmVkYCk7XG4gICAgfVxuICB9XG59XG4iXSwibWFwcGluZ3MiOiJBQUFBLFNBQVNBLFNBQVMsRUFBRUMsV0FBVyxRQUFRLG1CQUFtQjtBQUMxRCxPQUFPQyxVQUFVLE1BQU0s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
79
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJTVUJTQ1JJQkUiLCJVTlNVQlNDUklCRSIsIkNvbnRyb2xsZXIiLCJTdWJzY3JpcHRpb25NYW5hZ2VyIiwiY29uc3RydWN0b3IiLCJTdWJzY3JpcHRpb24iLCJzdWJzY3JpcHRpb25zIiwiY29udHJvbGxlciIsIm1pZGRsZXdhcmUiLCJuZXh0IiwiYWN0aW9uIiwidHlwZSIsImhhbmRsZVN1YnNjcmliZSIsImUiLCJjb25zb2xlIiwiZXJyb3IiLCJfUHJvbWlzZSIsInJlc29sdmUiLCJoYW5kbGVVbnN1YnNjcmliZSIsImNsZWFudXAiLCJrZXkiLCJmcmVxdWVuY3kiLCJlbmRwb2ludCIsInBvbGxGcmVxdWVuY3kiLCJhZGQiLCJlbXB0eSIsInJlbW92ZSIsInByb2Nlc3MiLCJlbnYiLCJOT0RFX0VOViJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9tYW5hZ2VyL1N1YnNjcmlwdGlvbk1hbmFnZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU1VCU0NSSUJFLCBVTlNVQlNDUklCRSB9IGZyb20gJy4uL2FjdGlvblR5cGVzLmpzJztcbmltcG9ydCBDb250cm9sbGVyIGZyb20gJy4uL2NvbnRyb2xsZXIvQ29udHJvbGxlci5qcyc7XG5pbXBvcnQgdHlwZSB7XG4gIE1hbmFnZXIsXG4gIE1pZGRsZXdhcmUsXG4gIFVuc3Vic2NyaWJlQWN0aW9uLFxuICBTdWJzY3JpYmVBY3Rpb24sXG59IGZyb20gJy4uL3R5cGVzLmpzJztcblxudHlwZSBBY3Rpb25zID0gVW5zdWJzY3JpYmVBY3Rpb24gfCBTdWJzY3JpYmVBY3Rpb247XG5cbi8qKiBJbnRlcmZhY2UgaGFuZGxpbmcgYSBzaW5nbGUgcmVzb3VyY2Ugc3Vic2NyaXB0aW9uICovXG5leHBvcnQgaW50ZXJmYWNlIFN1YnNjcmlwdGlvbiB7XG4gIGFkZChmcmVxdWVuY3k/OiBudW1iZXIpOiB2b2lkO1xuICByZW1vdmUoZnJlcXVlbmN5PzogbnVtYmVyKTogYm9vbGVhbjtcbiAgY2xlYW51cCgpOiB2b2lkO1xufVxuXG4vKiogVGhlIHN0YXRpYyBjbGFzcyB0aGF0IGNvbnN0cnVjdHMgU3Vic2NyaXB0aW9uICovXG5leHBvcnQgaW50ZXJmYWNlIFN1YnNjcmlwdGlvbkNvbnN0cnVjdGFibGUge1xuICBuZXcgKFxuICAgIGFjdGlvbjogT21pdDxTdWJzY3JpYmVBY3Rpb24sICd0eXBlJz4sXG4gICAgY29udHJvbGxlcjogQ29udHJvbGxlcixcbiAgKTogU3Vic2NyaXB0aW9uO1xufVxuXG4vKiogSGFuZGxlcyBzdWJzY3JpcHRpb24gYWN0aW9ucyAtPiBmZXRjaCBvciBzZXQgYWN0aW9uc1xuICpcbiAqIENvbnN0cnVjdG9yIHRha2VzIGEgU3Vic2NyaXB0aW9uQ29uc3RydWN0YWJsZSBjbGFzcyB0byBjb250cm9sIGhvd1xuICogc3Vic2NyaXB0aW9ucyBhcmUgaGFuZGxlZC4gKGUuZy4sIHBvbGxpbmcsIHdlYnNvY2tldHMpXG4gKlxuICogQHNlZSBodHRwczovL2RhdGFjbGllbnQuaW8vZG9jcy9hcGkvU3Vic2NyaXB0aW9uTWFuYWdlclxuICovXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBTdWJzY3JpcHRpb25NYW5hZ2VyPFxuICBTIGV4dGVuZHMgU3Vic2NyaXB0aW9uQ29uc3RydWN0YWJsZSA9IFN1YnNjcmlwdGlvbkNvbnN0cnVjdGFibGUsXG4+IGltcGxlbWVudHMgTWFuYWdlcjxBY3Rpb25zPlxue1xuICBwcm90ZWN0ZWQgc3Vic2NyaXB0aW9uczoge1xuICAgIFtrZXk6IHN0cmluZ106IEluc3RhbmNlVHlwZTxTPjtcbiAgfSA9IHt9O1xuXG4gIGRlY2xhcmUgcHJvdGVjdGVkIHJlYWRvbmx5IFN1YnNjcmlwdGlvbjogUztcbiAgcHJvdGVjdGVkIGNvbnRyb2xsZXI6IENvbnRyb2xsZXIgPSBuZXcgQ29udHJvbGxlcigpO1xuXG4gIGNvbnN0cnVjdG9yKFN1YnNjcmlwdGlvbjogUykge1xuICAgIHRoaXMuU3Vic2NyaXB0aW9uID0gU3Vic2NyaXB0aW9uO1xuICB9XG5cbiAgbWlkZGxld2FyZTogTWlkZGxld2FyZSA9IGNvbnRyb2xsZXIgPT4ge1xuICAgIHRoaXMuY29udHJvbGxlciA9IGNvbnRyb2xsZXI7XG4gICAgcmV0dXJuIG5leHQgPT4gYWN0aW9uID0+IHtcbiAgICAgIHN3aXRjaCAoYWN0aW9uLnR5cGUpIHtcbiAgICAgICAgY2FzZSBTVUJTQ1JJQkU6XG4gICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIHRoaXMuaGFuZGxlU3Vic2NyaWJlKGFjdGlvbik7XG4gICAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgY29uc29sZS5lcnJvcihlKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xuICAgICAgICBjYXNlIFVOU1VCU0NSSUJFOlxuICAgICAgICAgIHRoaXMuaGFuZGxlVW5zdWJzY3JpYmUoYWN0aW9uKTtcbiAgICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCk7XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgcmV0dXJuIG5leHQoYWN0aW9uKTtcbiAgICAgIH1cbiAgICB9O1xuICB9O1xuXG4gIC8qKiBFbnN1cmVzIGFsbCBzdWJzY3JpcHRpb25zIGFyZSBjbGVhbmVkIHVwLiAqL1xuICBjbGVhbnVwKCkge1xuICAgIGZvciAoY29uc3Qga2V5IGluIHRoaXMuc3Vic2NyaXB0aW9ucykge1xuICAgICAgdGhpcy5zdWJzY3JpcHRpb25zW2tleV0uY2xlYW51cCgpO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBDYWxsZWQgd2hlbiBtaWRkbGV3YXJlIGludGVyY2VwdHMgJ3JkYy9zdWJzY3JpYmUnIGFjdGlvbi5cbiAgICpcbiAgICovXG4gIHByb3RlY3RlZCBoYW5kbGVTdWJzY3JpYmUoYWN0aW9uOiBTdWJzY3JpYmVBY3Rpb24pIHtcbiAgICBjb25zdCBrZXkgPSBhY3Rpb24ua2V5O1xuXG4gICAgaWYgKGtleSBpbiB0aGlzLnN1YnNjcmlwdGlvbnMpIHtcbiAgICAgIGNvbnN0IGZyZXF1ZW5jeSA9IGFjdGlvbi5lbmRwb2ludC5wb2xsRnJlcXVlbmN5O1xuICAgICAgdGhpcy5zdWJzY3JpcHRpb25zW2tleV0uYWRkKGZyZXF1ZW5jeSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc3Vic2NyaXB0aW9uc1trZXldID0gbmV3IHRoaXMuU3Vic2NyaXB0aW9uKFxuICAgICAgICBhY3Rpb24sXG4gICAgICAgIHRoaXMuY29udHJvbGxlcixcbiAgICAgICkgYXMgSW5zdGFuY2VUeXBlPFM+O1xuICAgIH1cbiAgfVxuXG4gIC8qKiBDYWxsZWQgd2hlbiBtaWRkbGV3YXJlIGludGVyY2VwdHMgJ3JkYy91bnN1YnNjcmliZScgYWN0aW9uLlxuICAgKlxuICAgKi9cbiAgcHJvdGVjdGVkIGhhbmRsZVVuc3Vic2NyaWJlKGFjdGlvbjogVW5zdWJzY3JpYmVBY3Rpb24pIHtcbiAgICBjb25zdCBrZXkgPSBhY3Rpb24ua2V5O1xuXG4gICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICBpZiAoa2V5IGluIHRoaXMuc3Vic2NyaXB0aW9ucykge1xuICAgICAgY29uc3QgZnJlcXVlbmN5ID0gYWN0aW9uLmVuZHBvaW50LnBvbGxGcmVxdWVuY3k7XG4gICAgICBjb25zdCBlbXB0eSA9IHRoaXMuc3Vic2NyaXB0aW9uc1trZXldLnJlbW92ZShmcmVxdWVuY3kpO1xuICAgICAgaWYgKGVtcHR5KSB7XG4gICAgICAgIGRlbGV0ZSB0aGlzLnN1YnNjcmlwdGlvbnNba2V5XTtcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoYE1pc21hdGNoZWQgdW5zdWJzY3JpYmU6ICR7a2V5fSBpcyBub3Qgc3Vic2NyaWJlZGApO1xuICAgIH1cbiAgfVxufVxuIl0sIm1hcHBpbmdzIjoiO0FBQUEsU0FBU0EsU0FBUyxFQUFFQyxXQUFXLFFBQVEsbUJBQW1CO0FBQzFELE9BQU9DLFVBQVUsTUFBTSw2QkFBNkI7O0FBVXBEOztB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
@@ -7,13 +7,9 @@ export default function applyManager(managers, controller) {
7
7
  }
8
8
  return managers.map((manager, i) => {
9
9
  if (!manager.middleware) manager.middleware = manager.getMiddleware == null ? void 0 : manager.getMiddleware();
10
- return ({
11
- dispatch,
12
- getState
13
- }) => {
10
+ return api => {
14
11
  if (i === 0) {
15
- controller.dispatch = dispatch;
16
- controller.getState = getState;
12
+ controller.bindMiddleware(api);
17
13
  }
18
14
  // controller is a superset of the middleware API
19
15
  return manager.middleware(controller);
@@ -24,4 +20,4 @@ export default function applyManager(managers, controller) {
24
20
  /* These should be compatible with redux */
25
21
 
26
22
  /* The next are types from React; but we don't want dependencies on it */
27
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJOZXR3b3JrTWFuYWdlciIsImFwcGx5TWFuYWdlciIsIm1hbmFnZXJzIiwiY29udHJvbGxlciIsInByb2Nlc3MiLCJlbnYiLCJOT0RFX0VOViIsImZpbmQiLCJtZ3IiLCJjb25zb2xlIiwid2FybiIsIm1hcCIsIm1hbmFnZXIiLCJpIiwibWlkZGxld2FyZSIsImdldE1pZGRsZXdhcmUiLCJkaXNwYXRjaCIsImdldFN0YXRlIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL21hbmFnZXIvYXBwbHlNYW5hZ2VyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBOZXR3b3JrTWFuYWdlciBmcm9tICcuL05ldHdvcmtNYW5hZ2VyLmpzJztcbmltcG9ydCB0eXBlIENvbnRyb2xsZXIgZnJvbSAnLi4vY29udHJvbGxlci9Db250cm9sbGVyLmpzJztcbmltcG9ydCB7IE1hbmFnZXIgfSBmcm9tICcuLi90eXBlcy5qcyc7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGFwcGx5TWFuYWdlcihcbiAgbWFuYWdlcnM6IE1hbmFnZXJbXSxcbiAgY29udHJvbGxlcjogQ29udHJvbGxlcixcbik6IFJlZHV4TWlkZGxld2FyZVtdIHtcbiAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgaWYgKFxuICAgIHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiZcbiAgICAhbWFuYWdlcnMuZmluZChtZ3IgPT4gbWdyIGluc3RhbmNlb2YgTmV0d29ya01hbmFnZXIpXG4gICkge1xuICAgIGNvbnNvbGUud2FybignTmV0d29ya01hbmFnZXIgbm90IGZvdW5kOyB0aGlzIGlzIGEgcmVxdWlyZWQgbWFuYWdlci4nKTtcbiAgICBjb25zb2xlLndhcm4oXG4gICAgICAnU2VlIGh0dHBzOi8vZGF0YWNsaWVudC5pby9kb2NzL2d1aWRlcy9yZWR1eCBmb3IgaG9va2luZyB1cCByZWR1eCcsXG4gICAgKTtcbiAgfVxuICByZXR1cm4gbWFuYWdlcnMubWFwKChtYW5hZ2VyLCBpKSA9PiB7XG4gICAgaWYgKCFtYW5hZ2VyLm1pZGRsZXdhcmUpIG1hbmFnZXIubWlkZGxld2FyZSA9IG1hbmFnZXIuZ2V0TWlkZGxld2FyZT8uKCk7XG4gICAgcmV0dXJuICh7IGRpc3BhdGNoLCBnZXRTdGF0ZSB9KSA9PiB7XG4gICAgICBpZiAoaSA9PT0gMCkge1xuICAgICAgICAoY29udHJvbGxlciBhcyBhbnkpLmRpc3BhdGNoID0gZGlzcGF0Y2g7XG4gICAgICAgIChjb250cm9sbGVyIGFzIGFueSkuZ2V0U3RhdGUgPSBnZXRTdGF0ZTtcbiAgICAgIH1cbiAgICAgIC8vIGNvbnRyb2xsZXIgaXMgYSBzdXBlcnNldCBvZiB0aGUgbWlkZGxld2FyZSBBUElcbiAgICAgIHJldHVybiAobWFuYWdlciBhcyBNYW5hZ2VyICYgeyBtaWRkbGV3YXJlOiBSZWR1eE1pZGRsZXdhcmUgfSkubWlkZGxld2FyZShcbiAgICAgICAgY29udHJvbGxlciBhcyBDb250cm9sbGVyPGFueT4sXG4gICAgICApO1xuICAgIH07XG4gIH0pO1xufVxuXG4vKiBUaGVzZSBzaG91bGQgYmUgY29tcGF0aWJsZSB3aXRoIHJlZHV4ICovXG5leHBvcnQgaW50ZXJmYWNlIFJlZHV4TWlkZGxld2FyZUFQSTxcbiAgUiBleHRlbmRzIFJlZHVjZXI8YW55LCBhbnk+ID0gUmVkdWNlcjxhbnksIGFueT4sXG4+IHtcbiAgZ2V0U3RhdGU6ICgpID0+IFJlZHVjZXJTdGF0ZTxSPjtcbiAgZGlzcGF0Y2g6IFJlYWN0RGlzcGF0Y2g8Uj47XG59XG5leHBvcnQgdHlwZSBSZWR1eE1pZGRsZXdhcmUgPSA8UiBleHRlbmRzIFJlZHVjZXI8YW55LCBhbnk+Pih7XG4gIGRpc3BhdGNoLFxufTogUmVkdXhNaWRkbGV3YXJlQVBJPFI+KSA9PiAobmV4dDogUmVhY3REaXNwYXRjaDxSPikgPT4gUmVhY3REaXNwYXRjaDxSPjtcblxuLyogVGhlIG5leHQgYXJlIHR5cGVzIGZyb20gUmVhY3Q7IGJ1dCB3ZSBkb24ndCB3YW50IGRlcGVuZGVuY2llcyBvbiBpdCAqL1xuZXhwb3J0IHR5cGUgUmVhY3REaXNwYXRjaDxSIGV4dGVuZHMgUmVkdWNlcjxhbnksIGFueT4+ID0gKFxuICBhY3Rpb246IFJlZHVjZXJBY3Rpb248Uj4sXG4pID0+IFByb21pc2U8dm9pZD47XG5cbmV4cG9ydCB0eXBlIFJlZHVjZXI8UywgQT4gPSAocHJldlN0YXRlOiBTLCBhY3Rpb246IEEpID0+IFM7XG5leHBvcnQgdHlwZSBSZWR1Y2VyU3RhdGU8UiBleHRlbmRzIFJlZHVjZXI8YW55LCBhbnk+PiA9XG4gIFIgZXh0ZW5kcyBSZWR1Y2VyPGluZmVyIFMsIGFueT4gPyBTIDogbmV2ZXI7XG5leHBvcnQgdHlwZSBSZWR1Y2VyQWN0aW9uPFIgZXh0ZW5kcyBSZWR1Y2VyPGFueSwgYW55Pj4gPVxuICBSIGV4dGVuZHMgUmVkdWNlcjxhbnksIGluZmVyIEE+ID8gQSA6IG5ldmVyO1xuIl0sIm1hcHBpbmdzIjoiQUFBQSxPQUFPQSxjQUFjLE1BQU0scUJBQXFCO0FBSWhELGVBQWUsU0FBU0MsWUFBWUEsQ0FDbENDLFFBQW1CLEVBQ25CQyxVQUFzQixFQUNIO0VBQ25CO0VBQ0EsSUFDRUMsT0FBTyxDQUFDQyxHQUFHLENBQUNDLFFBQVEsS0FBSyxZQUFZLElBQ3JDLENBQUNKLFFBQVEsQ0FBQ0ssSUFBSSxDQUFDQyxHQUFHLElBQUlBLEdBQUcsWUFBWVIsY0FBYyxDQUFDLEVBQ3BEO0lBQ0FTLE9BQU8sQ0FBQ0MsSUFBSSxDQUFDLHVEQUF1RCxDQUFDO0lBQ3JFRCxPQUFPLENBQUNDLElBQUksQ0FDVixrRUFDRixDQUFDO0VBQ0g7RUFDQSxPQUFPUixRQUFRLENBQUNTLEdBQUcsQ0FBQyxDQUFDQyxPQUFPLEVBQUVDLENBQUMsS0FBSztJQUNsQyxJQUFJLENBQUNELE9BQU8sQ0FBQ0UsVUFBVSxFQUFFRixPQUFPLENBQUNFLFVBQVUsR0FBR0YsT0FBTyxDQUFDRyxhQUFhLG9CQUFyQkgsT0FBTyxDQUFDRyxhQUFhLENBQUcsQ0FBQztJQUN2RSxPQUFPLENBQUM7TUFBRUMsUUFBUTtNQUFFQztJQUFTLENBQUMsS0FBSztNQUNqQyxJQUFJSixDQUFDLEtBQUssQ0FBQyxFQUFFO1FBQ1ZWLFVBQVUsQ0FBU2EsUUFBUSxHQUFHQSxRQUFRO1FBQ3RDYixVQUFVLENBQVNjLFFBQVEsR0FBR0EsUUFBUTtNQUN6QztNQUNBO01BQ0EsT0FBUUwsT0FBTyxDQUErQ0UsVUFBVSxDQUN0RVgsVUFDRixDQUFDO0lBQ0gsQ0FBQztFQUNILENBQUMsQ0FBQztBQUNKOztBQUVBOztBQVdBIiwiaWdub3JlTGlzdCI6W119
23
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJOZXR3b3JrTWFuYWdlciIsImFwcGx5TWFuYWdlciIsIm1hbmFnZXJzIiwiY29udHJvbGxlciIsInByb2Nlc3MiLCJlbnYiLCJOT0RFX0VOViIsImZpbmQiLCJtZ3IiLCJjb25zb2xlIiwid2FybiIsIm1hcCIsIm1hbmFnZXIiLCJpIiwibWlkZGxld2FyZSIsImdldE1pZGRsZXdhcmUiLCJhcGkiLCJiaW5kTWlkZGxld2FyZSJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9tYW5hZ2VyL2FwcGx5TWFuYWdlci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgTmV0d29ya01hbmFnZXIgZnJvbSAnLi9OZXR3b3JrTWFuYWdlci5qcyc7XG5pbXBvcnQgdHlwZSBDb250cm9sbGVyIGZyb20gJy4uL2NvbnRyb2xsZXIvQ29udHJvbGxlci5qcyc7XG5pbXBvcnQgeyBNYW5hZ2VyIH0gZnJvbSAnLi4vdHlwZXMuanMnO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBhcHBseU1hbmFnZXIoXG4gIG1hbmFnZXJzOiBNYW5hZ2VyW10sXG4gIGNvbnRyb2xsZXI6IENvbnRyb2xsZXIsXG4pOiBSZWR1eE1pZGRsZXdhcmVbXSB7XG4gIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gIGlmIChcbiAgICBwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmXG4gICAgIW1hbmFnZXJzLmZpbmQobWdyID0+IG1nciBpbnN0YW5jZW9mIE5ldHdvcmtNYW5hZ2VyKVxuICApIHtcbiAgICBjb25zb2xlLndhcm4oJ05ldHdvcmtNYW5hZ2VyIG5vdCBmb3VuZDsgdGhpcyBpcyBhIHJlcXVpcmVkIG1hbmFnZXIuJyk7XG4gICAgY29uc29sZS53YXJuKFxuICAgICAgJ1NlZSBodHRwczovL2RhdGFjbGllbnQuaW8vZG9jcy9ndWlkZXMvcmVkdXggZm9yIGhvb2tpbmcgdXAgcmVkdXgnLFxuICAgICk7XG4gIH1cbiAgcmV0dXJuIG1hbmFnZXJzLm1hcCgobWFuYWdlciwgaSkgPT4ge1xuICAgIGlmICghbWFuYWdlci5taWRkbGV3YXJlKSBtYW5hZ2VyLm1pZGRsZXdhcmUgPSBtYW5hZ2VyLmdldE1pZGRsZXdhcmU/LigpO1xuICAgIHJldHVybiAoYXBpOiBSZWR1eE1pZGRsZXdhcmVBUEkpID0+IHtcbiAgICAgIGlmIChpID09PSAwKSB7XG4gICAgICAgIGNvbnRyb2xsZXIuYmluZE1pZGRsZXdhcmUoYXBpKTtcbiAgICAgIH1cbiAgICAgIC8vIGNvbnRyb2xsZXIgaXMgYSBzdXBlcnNldCBvZiB0aGUgbWlkZGxld2FyZSBBUElcbiAgICAgIHJldHVybiAobWFuYWdlciBhcyBNYW5hZ2VyICYgeyBtaWRkbGV3YXJlOiBSZWR1eE1pZGRsZXdhcmUgfSkubWlkZGxld2FyZShcbiAgICAgICAgY29udHJvbGxlciBhcyBhbnksXG4gICAgICApO1xuICAgIH07XG4gIH0pO1xufVxuXG4vKiBUaGVzZSBzaG91bGQgYmUgY29tcGF0aWJsZSB3aXRoIHJlZHV4ICovXG5leHBvcnQgaW50ZXJmYWNlIFJlZHV4TWlkZGxld2FyZUFQSTxcbiAgUiBleHRlbmRzIFJlZHVjZXI8YW55LCBhbnk+ID0gUmVkdWNlcjxhbnksIGFueT4sXG4+IHtcbiAgZ2V0U3RhdGU6ICgpID0+IFJlZHVjZXJTdGF0ZTxSPjtcbiAgZGlzcGF0Y2g6IFJlYWN0RGlzcGF0Y2g8Uj47XG59XG5leHBvcnQgdHlwZSBSZWR1eE1pZGRsZXdhcmUgPSA8UiBleHRlbmRzIFJlZHVjZXI8YW55LCBhbnk+Pih7XG4gIGRpc3BhdGNoLFxufTogUmVkdXhNaWRkbGV3YXJlQVBJPFI+KSA9PiAobmV4dDogUmVhY3REaXNwYXRjaDxSPikgPT4gUmVhY3REaXNwYXRjaDxSPjtcblxuLyogVGhlIG5leHQgYXJlIHR5cGVzIGZyb20gUmVhY3Q7IGJ1dCB3ZSBkb24ndCB3YW50IGRlcGVuZGVuY2llcyBvbiBpdCAqL1xuZXhwb3J0IHR5cGUgUmVhY3REaXNwYXRjaDxSIGV4dGVuZHMgUmVkdWNlcjxhbnksIGFueT4+ID0gKFxuICBhY3Rpb246IFJlZHVjZXJBY3Rpb248Uj4sXG4pID0+IFByb21pc2U8dm9pZD47XG5cbmV4cG9ydCB0eXBlIFJlZHVjZXI8UywgQT4gPSAocHJldlN0YXRlOiBTLCBhY3Rpb246IEEpID0+IFM7XG5leHBvcnQgdHlwZSBSZWR1Y2VyU3RhdGU8UiBleHRlbmRzIFJlZHVjZXI8YW55LCBhbnk+PiA9XG4gIFIgZXh0ZW5kcyBSZWR1Y2VyPGluZmVyIFMsIGFueT4gPyBTIDogbmV2ZXI7XG5leHBvcnQgdHlwZSBSZWR1Y2VyQWN0aW9uPFIgZXh0ZW5kcyBSZWR1Y2VyPGFueSwgYW55Pj4gPVxuICBSIGV4dGVuZHMgUmVkdWNlcjxhbnksIGluZmVyIEE+ID8gQSA6IG5ldmVyO1xuIl0sIm1hcHBpbmdzIjoiQUFBQSxPQUFPQSxjQUFjLE1BQU0scUJBQXFCO0FBSWhELGVBQWUsU0FBU0MsWUFBWUEsQ0FDbENDLFFBQW1CLEVBQ25CQyxVQUFzQixFQUNIO0VBQ25CO0VBQ0EsSUFDRUMsT0FBTyxDQUFDQyxHQUFHLENBQUNDLFFBQVEsS0FBSyxZQUFZLElBQ3JDLENBQUNKLFFBQVEsQ0FBQ0ssSUFBSSxDQUFDQyxHQUFHLElBQUlBLEdBQUcsWUFBWVIsY0FBYyxDQUFDLEVBQ3BEO0lBQ0FTLE9BQU8sQ0FBQ0MsSUFBSSxDQUFDLHVEQUF1RCxDQUFDO0lBQ3JFRCxPQUFPLENBQUNDLElBQUksQ0FDVixrRUFDRixDQUFDO0VBQ0g7RUFDQSxPQUFPUixRQUFRLENBQUNTLEdBQUcsQ0FBQyxDQUFDQyxPQUFPLEVBQUVDLENBQUMsS0FBSztJQUNsQyxJQUFJLENBQUNELE9BQU8sQ0FBQ0UsVUFBVSxFQUFFRixPQUFPLENBQUNFLFVBQVUsR0FBR0YsT0FBTyxDQUFDRyxhQUFhLG9CQUFyQkgsT0FBTyxDQUFDRyxhQUFhLENBQUcsQ0FBQztJQUN2RSxPQUFRQyxHQUF1QixJQUFLO01BQ2xDLElBQUlILENBQUMsS0FBSyxDQUFDLEVBQUU7UUFDWFYsVUFBVSxDQUFDYyxjQUFjLENBQUNELEdBQUcsQ0FBQztNQUNoQztNQUNBO01BQ0EsT0FBUUosT0FBTyxDQUErQ0UsVUFBVSxDQUN0RVgsVUFDRixDQUFDO0lBQ0gsQ0FBQztFQUNILENBQUMsQ0FBQztBQUNKOztBQUVBOztBQVdBIiwiaWdub3JlTGlzdCI6W119
@@ -0,0 +1,15 @@
1
+ export default function initManager(managers, controller, initialState) {
2
+ return () => {
3
+ managers.forEach(manager => {
4
+ manager.init == null || manager.init(initialState);
5
+ });
6
+ controller.gcPolicy.init(controller);
7
+ return () => {
8
+ managers.forEach(manager => {
9
+ manager.cleanup();
10
+ });
11
+ controller.gcPolicy.cleanup();
12
+ };
13
+ };
14
+ }
15
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJpbml0TWFuYWdlciIsIm1hbmFnZXJzIiwiY29udHJvbGxlciIsImluaXRpYWxTdGF0ZSIsImZvckVhY2giLCJtYW5hZ2VyIiwiaW5pdCIsImdjUG9saWN5IiwiY2xlYW51cCJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9tYW5hZ2VyL2luaXRNYW5hZ2VyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIENvbnRyb2xsZXIgZnJvbSAnLi4vY29udHJvbGxlci9Db250cm9sbGVyLmpzJztcbmltcG9ydCB7IE1hbmFnZXIsIFN0YXRlIH0gZnJvbSAnLi4vdHlwZXMuanMnO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBpbml0TWFuYWdlcihcbiAgbWFuYWdlcnM6IE1hbmFnZXJbXSxcbiAgY29udHJvbGxlcjogQ29udHJvbGxlcixcbiAgaW5pdGlhbFN0YXRlOiBTdGF0ZTx1bmtub3duPixcbikge1xuICByZXR1cm4gKCkgPT4ge1xuICAgIG1hbmFnZXJzLmZvckVhY2gobWFuYWdlciA9PiB7XG4gICAgICBtYW5hZ2VyLmluaXQ/Lihpbml0aWFsU3RhdGUpO1xuICAgIH0pO1xuICAgIGNvbnRyb2xsZXIuZ2NQb2xpY3kuaW5pdChjb250cm9sbGVyKTtcbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgbWFuYWdlcnMuZm9yRWFjaChtYW5hZ2VyID0+IHtcbiAgICAgICAgbWFuYWdlci5jbGVhbnVwKCk7XG4gICAgICB9KTtcbiAgICAgIGNvbnRyb2xsZXIuZ2NQb2xpY3kuY2xlYW51cCgpO1xuICAgIH07XG4gIH07XG59XG4iXSwibWFwcGluZ3MiOiJBQUdBLGVBQWUsU0FBU0EsV0FBV0EsQ0FDakNDLFFBQW1CLEVBQ25CQyxVQUFzQixFQUN0QkMsWUFBNEIsRUFDNUI7RUFDQSxPQUFPLE1BQU07SUFDWEYsUUFBUSxDQUFDRyxPQUFPLENBQUNDLE9BQU8sSUFBSTtNQUMxQkEsT0FBTyxDQUFDQyxJQUFJLFlBQVpELE9BQU8sQ0FBQ0MsSUFBSSxDQUFHSCxZQUFZLENBQUM7SUFDOUIsQ0FBQyxDQUFDO0lBQ0ZELFVBQVUsQ0FBQ0ssUUFBUSxDQUFDRCxJQUFJLENBQUNKLFVBQVUsQ0FBQztJQUNwQyxPQUFPLE1BQU07TUFDWEQsUUFBUSxDQUFDRyxPQUFPLENBQUNDLE9BQU8sSUFBSTtRQUMxQkEsT0FBTyxDQUFDRyxPQUFPLENBQUMsQ0FBQztNQUNuQixDQUFDLENBQUM7TUFDRk4sVUFBVSxDQUFDSyxRQUFRLENBQUNDLE9BQU8sQ0FBQyxDQUFDO0lBQy9CLENBQUM7RUFDSCxDQUFDO0FBQ0giLCJpZ25vcmVMaXN0IjpbXX0=