payload 2.9.0 → 2.10.1

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 (116) hide show
  1. package/components/index.js +1 -1
  2. package/dist/admin/components/elements/DeleteDocument/index.js +2 -2
  3. package/dist/admin/components/elements/DocumentControls/index.d.ts +1 -1
  4. package/dist/admin/components/elements/DocumentControls/index.d.ts.map +1 -1
  5. package/dist/admin/components/elements/DocumentControls/index.js +1 -1
  6. package/dist/admin/components/forms/Form/buildStateFromSchema/addFieldStatePromise.d.ts +34 -3
  7. package/dist/admin/components/forms/Form/buildStateFromSchema/addFieldStatePromise.d.ts.map +1 -1
  8. package/dist/admin/components/forms/Form/buildStateFromSchema/addFieldStatePromise.js +87 -32
  9. package/dist/admin/components/forms/Form/buildStateFromSchema/iterateFields.d.ts +48 -7
  10. package/dist/admin/components/forms/Form/buildStateFromSchema/iterateFields.d.ts.map +1 -1
  11. package/dist/admin/components/forms/Form/buildStateFromSchema/iterateFields.js +15 -6
  12. package/dist/admin/components/forms/Form/reduceFieldsToValues.d.ts +8 -1
  13. package/dist/admin/components/forms/Form/reduceFieldsToValues.d.ts.map +1 -1
  14. package/dist/admin/components/forms/Form/reduceFieldsToValues.js +9 -3
  15. package/dist/admin/components/forms/Form/types.d.ts +1 -0
  16. package/dist/admin/components/forms/Form/types.d.ts.map +1 -1
  17. package/dist/admin/components/forms/field-types/Relationship/optionsReducer.d.ts.map +1 -1
  18. package/dist/admin/components/forms/field-types/Relationship/optionsReducer.js +15 -5
  19. package/dist/admin/components/forms/field-types/RichText/types.d.ts +5 -1
  20. package/dist/admin/components/forms/field-types/RichText/types.d.ts.map +1 -1
  21. package/dist/admin/components/utilities/DocumentInfo/index.d.ts.map +1 -1
  22. package/dist/admin/components/utilities/DocumentInfo/index.js +9 -10
  23. package/dist/admin/components/utilities/DocumentInfo/types.d.ts +1 -1
  24. package/dist/admin/components/utilities/DocumentInfo/types.d.ts.map +1 -1
  25. package/dist/admin/components/views/collections/List/Cell/index.d.ts.map +1 -1
  26. package/dist/admin/components/views/collections/List/Cell/index.js +10 -4
  27. package/dist/auth/operations/forgotPassword.d.ts.map +1 -1
  28. package/dist/auth/operations/forgotPassword.js +17 -16
  29. package/dist/auth/operations/local/forgotPassword.d.ts.map +1 -1
  30. package/dist/auth/operations/local/forgotPassword.js +4 -11
  31. package/dist/auth/operations/local/login.d.ts.map +1 -1
  32. package/dist/auth/operations/local/login.js +4 -19
  33. package/dist/auth/operations/local/resetPassword.d.ts.map +1 -1
  34. package/dist/auth/operations/local/resetPassword.js +4 -11
  35. package/dist/auth/operations/local/unlock.d.ts.map +1 -1
  36. package/dist/auth/operations/local/unlock.js +4 -11
  37. package/dist/auth/operations/local/verifyEmail.d.ts.map +1 -1
  38. package/dist/auth/operations/local/verifyEmail.js +4 -8
  39. package/dist/auth/operations/login.d.ts.map +1 -1
  40. package/dist/auth/operations/login.js +17 -16
  41. package/dist/auth/operations/refresh.d.ts.map +1 -1
  42. package/dist/auth/operations/refresh.js +90 -79
  43. package/dist/bin/generateTypes.d.ts.map +1 -1
  44. package/dist/bin/generateTypes.js +6 -2
  45. package/dist/bin/index.js +2 -2
  46. package/dist/collections/config/types.d.ts +1 -0
  47. package/dist/collections/config/types.d.ts.map +1 -1
  48. package/dist/collections/config/types.js +1 -1
  49. package/dist/collections/operations/create.d.ts.map +1 -1
  50. package/dist/collections/operations/create.js +17 -16
  51. package/dist/collections/operations/delete.js +17 -16
  52. package/dist/collections/operations/deleteByID.d.ts.map +1 -1
  53. package/dist/collections/operations/deleteByID.js +17 -16
  54. package/dist/collections/operations/find.d.ts.map +1 -1
  55. package/dist/collections/operations/find.js +17 -16
  56. package/dist/collections/operations/findByID.d.ts.map +1 -1
  57. package/dist/collections/operations/findByID.js +18 -17
  58. package/dist/collections/operations/local/create.d.ts.map +1 -1
  59. package/dist/collections/operations/local/create.js +14 -21
  60. package/dist/collections/operations/local/delete.d.ts.map +1 -1
  61. package/dist/collections/operations/local/delete.js +4 -21
  62. package/dist/collections/operations/local/find.d.ts.map +1 -1
  63. package/dist/collections/operations/local/find.js +4 -18
  64. package/dist/collections/operations/local/findByID.d.ts.map +1 -1
  65. package/dist/collections/operations/local/findByID.js +4 -18
  66. package/dist/collections/operations/local/findVersionByID.d.ts.map +1 -1
  67. package/dist/collections/operations/local/findVersionByID.js +4 -17
  68. package/dist/collections/operations/local/findVersions.d.ts.map +1 -1
  69. package/dist/collections/operations/local/findVersions.js +4 -22
  70. package/dist/collections/operations/local/restoreVersion.d.ts.map +1 -1
  71. package/dist/collections/operations/local/restoreVersion.js +4 -22
  72. package/dist/collections/operations/local/update.d.ts.map +1 -1
  73. package/dist/collections/operations/local/update.js +14 -25
  74. package/dist/collections/operations/update.d.ts.map +1 -1
  75. package/dist/collections/operations/update.js +17 -16
  76. package/dist/collections/operations/updateByID.d.ts.map +1 -1
  77. package/dist/collections/operations/updateByID.js +17 -16
  78. package/dist/collections/operations/utils.d.ts +6 -21
  79. package/dist/collections/operations/utils.d.ts.map +1 -1
  80. package/dist/collections/operations/utils.js +2 -1
  81. package/dist/config/types.d.ts +6 -0
  82. package/dist/config/types.d.ts.map +1 -1
  83. package/dist/config/types.js +1 -1
  84. package/dist/database/getLocalizedPaths.d.ts.map +1 -1
  85. package/dist/database/getLocalizedPaths.js +11 -1
  86. package/dist/exports/utilities.d.ts +1 -1
  87. package/dist/exports/utilities.d.ts.map +1 -1
  88. package/dist/exports/utilities.js +4 -1
  89. package/dist/fields/config/types.d.ts +2 -1
  90. package/dist/fields/config/types.d.ts.map +1 -1
  91. package/dist/fields/config/types.js +1 -1
  92. package/dist/fields/hooks/beforeChange/promise.d.ts.map +1 -1
  93. package/dist/fields/hooks/beforeChange/promise.js +3 -1
  94. package/dist/globals/operations/local/findOne.d.ts.map +1 -1
  95. package/dist/globals/operations/local/findOne.js +6 -22
  96. package/dist/globals/operations/local/findVersionByID.d.ts.map +1 -1
  97. package/dist/globals/operations/local/findVersionByID.js +4 -21
  98. package/dist/globals/operations/local/findVersions.d.ts.map +1 -1
  99. package/dist/globals/operations/local/findVersions.js +4 -21
  100. package/dist/globals/operations/local/restoreVersion.d.ts.map +1 -1
  101. package/dist/globals/operations/local/restoreVersion.js +4 -21
  102. package/dist/globals/operations/local/update.d.ts.map +1 -1
  103. package/dist/globals/operations/local/update.js +6 -23
  104. package/dist/payload.d.ts.map +1 -1
  105. package/dist/payload.js +2 -2
  106. package/dist/preferences/preferencesCollection.d.ts.map +1 -1
  107. package/dist/preferences/preferencesCollection.js +8 -6
  108. package/dist/utilities/configToJSONSchema.d.ts +13 -0
  109. package/dist/utilities/configToJSONSchema.d.ts.map +1 -1
  110. package/dist/utilities/configToJSONSchema.js +12 -3
  111. package/dist/utilities/createLocalReq.d.ts +13 -0
  112. package/dist/utilities/createLocalReq.d.ts.map +1 -0
  113. package/dist/utilities/createLocalReq.js +53 -0
  114. package/package.json +2 -2
  115. package/utilities.d.ts +1 -1
  116. package/utilities.js +4 -1
@@ -9,9 +9,7 @@ Object.defineProperty(exports, "default", {
9
9
  }
10
10
  });
11
11
  const _errors = require("../../../errors");
12
- const _setRequestContext = require("../../../express/setRequestContext");
13
- const _init = require("../../../translations/init");
14
- const _dataloader = require("../../dataloader");
12
+ const _createLocalReq = require("../../../utilities/createLocalReq");
15
13
  const _restoreVersion = /*#__PURE__*/ _interop_require_default(require("../restoreVersion"));
16
14
  function _interop_require_default(obj) {
17
15
  return obj && obj.__esModule ? obj : {
@@ -19,28 +17,12 @@ function _interop_require_default(obj) {
19
17
  };
20
18
  }
21
19
  async function restoreVersionLocal(payload, options) {
22
- const { id, collection: collectionSlug, context, depth, fallbackLocale: fallbackLocaleArg = options?.req?.fallbackLocale, locale: localeArg = null, overrideAccess = true, req: incomingReq, showHiddenFields, user } = options;
20
+ const { id, collection: collectionSlug, depth, overrideAccess = true, showHiddenFields } = options;
23
21
  const collection = payload.collections[collectionSlug];
24
- const localizationConfig = payload?.config?.localization;
25
- const defaultLocale = localizationConfig ? localizationConfig.defaultLocale : null;
26
- const locale = localeArg || incomingReq?.locale || defaultLocale;
27
- const fallbackLocale = localizationConfig ? localizationConfig.locales.find(({ code })=>locale === code)?.fallbackLocale : null;
28
22
  if (!collection) {
29
23
  throw new _errors.APIError(`The collection with slug ${String(collectionSlug)} can't be found. Restore Version Operation.`);
30
24
  }
31
- const i18n = (0, _init.i18nInit)(payload.config.i18n);
32
- const req = {
33
- fallbackLocale: typeof fallbackLocaleArg !== 'undefined' ? fallbackLocaleArg : fallbackLocale || defaultLocale,
34
- i18n,
35
- locale,
36
- payload,
37
- payloadAPI: 'local',
38
- t: i18n.t,
39
- transactionID: incomingReq?.transactionID,
40
- user
41
- };
42
- (0, _setRequestContext.setRequestContext)(req, context);
43
- if (!req.payloadDataLoader) req.payloadDataLoader = (0, _dataloader.getDataLoader)(req);
25
+ const req = (0, _createLocalReq.createLocalReq)(options, payload);
44
26
  const args = {
45
27
  id,
46
28
  collection,
@@ -53,4 +35,4 @@ async function restoreVersionLocal(payload, options) {
53
35
  return (0, _restoreVersion.default)(args);
54
36
  }
55
37
 
56
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb2xsZWN0aW9ucy9vcGVyYXRpb25zL2xvY2FsL3Jlc3RvcmVWZXJzaW9uLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgR2VuZXJhdGVkVHlwZXMgfSBmcm9tICcuLi8uLi8uLi8nXG5pbXBvcnQgdHlwZSB7IFBheWxvYWRSZXF1ZXN0LCBSZXF1ZXN0Q29udGV4dCB9IGZyb20gJy4uLy4uLy4uL2V4cHJlc3MvdHlwZXMnXG5pbXBvcnQgdHlwZSB7IFBheWxvYWQgfSBmcm9tICcuLi8uLi8uLi9wYXlsb2FkJ1xuaW1wb3J0IHR5cGUgeyBEb2N1bWVudCB9IGZyb20gJy4uLy4uLy4uL3R5cGVzJ1xuXG5pbXBvcnQgeyBBUElFcnJvciB9IGZyb20gJy4uLy4uLy4uL2Vycm9ycydcbmltcG9ydCB7IHNldFJlcXVlc3RDb250ZXh0IH0gZnJvbSAnLi4vLi4vLi4vZXhwcmVzcy9zZXRSZXF1ZXN0Q29udGV4dCdcbmltcG9ydCB7IGkxOG5Jbml0IH0gZnJvbSAnLi4vLi4vLi4vdHJhbnNsYXRpb25zL2luaXQnXG5pbXBvcnQgeyBnZXREYXRhTG9hZGVyIH0gZnJvbSAnLi4vLi4vZGF0YWxvYWRlcidcbmltcG9ydCByZXN0b3JlVmVyc2lvbiBmcm9tICcuLi9yZXN0b3JlVmVyc2lvbidcblxuZXhwb3J0IHR5cGUgT3B0aW9uczxUIGV4dGVuZHMga2V5b2YgR2VuZXJhdGVkVHlwZXNbJ2NvbGxlY3Rpb25zJ10+ID0ge1xuICBjb2xsZWN0aW9uOiBUXG4gIC8qKlxuICAgKiBjb250ZXh0LCB3aGljaCB3aWxsIHRoZW4gYmUgcGFzc2VkIHRvIHJlcS5jb250ZXh0LCB3aGljaCBjYW4gYmUgcmVhZCBieSBob29rc1xuICAgKi9cbiAgY29udGV4dD86IFJlcXVlc3RDb250ZXh0XG4gIGRlcHRoPzogbnVtYmVyXG4gIGRyYWZ0PzogYm9vbGVhblxuICBmYWxsYmFja0xvY2FsZT86IHN0cmluZ1xuICBpZDogc3RyaW5nXG4gIGxvY2FsZT86IHN0cmluZ1xuICBvdmVycmlkZUFjY2Vzcz86IGJvb2xlYW5cbiAgcmVxPzogUGF5bG9hZFJlcXVlc3RcbiAgc2hvd0hpZGRlbkZpZWxkcz86IGJvb2xlYW5cbiAgdXNlcj86IERvY3VtZW50XG59XG5cbmV4cG9ydCBkZWZhdWx0IGFzeW5jIGZ1bmN0aW9uIHJlc3RvcmVWZXJzaW9uTG9jYWw8VCBleHRlbmRzIGtleW9mIEdlbmVyYXRlZFR5cGVzWydjb2xsZWN0aW9ucyddPihcbiAgcGF5bG9hZDogUGF5bG9hZCxcbiAgb3B0aW9uczogT3B0aW9uczxUPixcbik6IFByb21pc2U8R2VuZXJhdGVkVHlwZXNbJ2NvbGxlY3Rpb25zJ11bVF0+IHtcbiAgY29uc3Qge1xuICAgIGlkLFxuICAgIGNvbGxlY3Rpb246IGNvbGxlY3Rpb25TbHVnLFxuICAgIGNvbnRleHQsXG4gICAgZGVwdGgsXG4gICAgZmFsbGJhY2tMb2NhbGU6IGZhbGxiYWNrTG9jYWxlQXJnID0gb3B0aW9ucz8ucmVxPy5mYWxsYmFja0xvY2FsZSxcbiAgICBsb2NhbGU6IGxvY2FsZUFyZyA9IG51bGwsXG4gICAgb3ZlcnJpZGVBY2Nlc3MgPSB0cnVlLFxuICAgIHJlcTogaW5jb21pbmdSZXEsXG4gICAgc2hvd0hpZGRlbkZpZWxkcyxcbiAgICB1c2VyLFxuICB9ID0gb3B0aW9uc1xuXG4gIGNvbnN0IGNvbGxlY3Rpb24gPSBwYXlsb2FkLmNvbGxlY3Rpb25zW2NvbGxlY3Rpb25TbHVnXVxuICBjb25zdCBsb2NhbGl6YXRpb25Db25maWcgPSBwYXlsb2FkPy5jb25maWc/LmxvY2FsaXphdGlvblxuICBjb25zdCBkZWZhdWx0TG9jYWxlID0gbG9jYWxpemF0aW9uQ29uZmlnID8gbG9jYWxpemF0aW9uQ29uZmlnLmRlZmF1bHRMb2NhbGUgOiBudWxsXG4gIGNvbnN0IGxvY2FsZSA9IGxvY2FsZUFyZyB8fCBpbmNvbWluZ1JlcT8ubG9jYWxlIHx8IGRlZmF1bHRMb2NhbGVcbiAgY29uc3QgZmFsbGJhY2tMb2NhbGUgPSBsb2NhbGl6YXRpb25Db25maWdcbiAgICA/IGxvY2FsaXphdGlvbkNvbmZpZy5sb2NhbGVzLmZpbmQoKHsgY29kZSB9KSA9PiBsb2NhbGUgPT09IGNvZGUpPy5mYWxsYmFja0xvY2FsZVxuICAgIDogbnVsbFxuXG4gIGlmICghY29sbGVjdGlvbikge1xuICAgIHRocm93IG5ldyBBUElFcnJvcihcbiAgICAgIGBUaGUgY29sbGVjdGlvbiB3aXRoIHNsdWcgJHtTdHJpbmcoXG4gICAgICAgIGNvbGxlY3Rpb25TbHVnLFxuICAgICAgKX0gY2FuJ3QgYmUgZm91bmQuIFJlc3RvcmUgVmVyc2lvbiBPcGVyYXRpb24uYCxcbiAgICApXG4gIH1cblxuICBjb25zdCBpMThuID0gaTE4bkluaXQocGF5bG9hZC5jb25maWcuaTE4bilcbiAgY29uc3QgcmVxID0ge1xuICAgIGZhbGxiYWNrTG9jYWxlOlxuICAgICAgdHlwZW9mIGZhbGxiYWNrTG9jYWxlQXJnICE9PSAndW5kZWZpbmVkJ1xuICAgICAgICA/IGZhbGxiYWNrTG9jYWxlQXJnXG4gICAgICAgIDogZmFsbGJhY2tMb2NhbGUgfHwgZGVmYXVsdExvY2FsZSxcbiAgICBpMThuLFxuICAgIGxvY2FsZSxcbiAgICBwYXlsb2FkLFxuICAgIHBheWxvYWRBUEk6ICdsb2NhbCcsXG4gICAgdDogaTE4bi50LFxuICAgIHRyYW5zYWN0aW9uSUQ6IGluY29taW5nUmVxPy50cmFuc2FjdGlvbklELFxuICAgIHVzZXIsXG4gIH0gYXMgUGF5bG9hZFJlcXVlc3RcbiAgc2V0UmVxdWVzdENvbnRleHQocmVxLCBjb250ZXh0KVxuXG4gIGlmICghcmVxLnBheWxvYWREYXRhTG9hZGVyKSByZXEucGF5bG9hZERhdGFMb2FkZXIgPSBnZXREYXRhTG9hZGVyKHJlcSlcblxuICBjb25zdCBhcmdzID0ge1xuICAgIGlkLFxuICAgIGNvbGxlY3Rpb24sXG4gICAgZGVwdGgsXG4gICAgb3ZlcnJpZGVBY2Nlc3MsXG4gICAgcGF5bG9hZCxcbiAgICByZXEsXG4gICAgc2hvd0hpZGRlbkZpZWxkcyxcbiAgfVxuXG4gIHJldHVybiByZXN0b3JlVmVyc2lvbihhcmdzKVxufVxuIl0sIm5hbWVzIjpbInJlc3RvcmVWZXJzaW9uTG9jYWwiLCJwYXlsb2FkIiwib3B0aW9ucyIsImlkIiwiY29sbGVjdGlvbiIsImNvbGxlY3Rpb25TbHVnIiwiY29udGV4dCIsImRlcHRoIiwiZmFsbGJhY2tMb2NhbGUiLCJmYWxsYmFja0xvY2FsZUFyZyIsInJlcSIsImxvY2FsZSIsImxvY2FsZUFyZyIsIm92ZXJyaWRlQWNjZXNzIiwiaW5jb21pbmdSZXEiLCJzaG93SGlkZGVuRmllbGRzIiwidXNlciIsImNvbGxlY3Rpb25zIiwibG9jYWxpemF0aW9uQ29uZmlnIiwiY29uZmlnIiwibG9jYWxpemF0aW9uIiwiZGVmYXVsdExvY2FsZSIsImxvY2FsZXMiLCJmaW5kIiwiY29kZSIsIkFQSUVycm9yIiwiU3RyaW5nIiwiaTE4biIsImkxOG5Jbml0IiwicGF5bG9hZEFQSSIsInQiLCJ0cmFuc2FjdGlvbklEIiwic2V0UmVxdWVzdENvbnRleHQiLCJwYXlsb2FkRGF0YUxvYWRlciIsImdldERhdGFMb2FkZXIiLCJhcmdzIiwicmVzdG9yZVZlcnNpb24iXSwibWFwcGluZ3MiOiI7Ozs7K0JBNEJBOzs7ZUFBOEJBOzs7d0JBdkJMO21DQUNTO3NCQUNUOzRCQUNLO3VFQUNIOzs7Ozs7QUFtQlosZUFBZUEsb0JBQzVCQyxPQUFnQixFQUNoQkMsT0FBbUI7SUFFbkIsTUFBTSxFQUNKQyxFQUFFLEVBQ0ZDLFlBQVlDLGNBQWMsRUFDMUJDLE9BQU8sRUFDUEMsS0FBSyxFQUNMQyxnQkFBZ0JDLG9CQUFvQlAsU0FBU1EsS0FBS0YsY0FBYyxFQUNoRUcsUUFBUUMsWUFBWSxJQUFJLEVBQ3hCQyxpQkFBaUIsSUFBSSxFQUNyQkgsS0FBS0ksV0FBVyxFQUNoQkMsZ0JBQWdCLEVBQ2hCQyxJQUFJLEVBQ0wsR0FBR2Q7SUFFSixNQUFNRSxhQUFhSCxRQUFRZ0IsV0FBVyxDQUFDWixlQUFlO0lBQ3RELE1BQU1hLHFCQUFxQmpCLFNBQVNrQixRQUFRQztJQUM1QyxNQUFNQyxnQkFBZ0JILHFCQUFxQkEsbUJBQW1CRyxhQUFhLEdBQUc7SUFDOUUsTUFBTVYsU0FBU0MsYUFBYUUsYUFBYUgsVUFBVVU7SUFDbkQsTUFBTWIsaUJBQWlCVSxxQkFDbkJBLG1CQUFtQkksT0FBTyxDQUFDQyxJQUFJLENBQUMsQ0FBQyxFQUFFQyxJQUFJLEVBQUUsR0FBS2IsV0FBV2EsT0FBT2hCLGlCQUNoRTtJQUVKLElBQUksQ0FBQ0osWUFBWTtRQUNmLE1BQU0sSUFBSXFCLGdCQUFRLENBQ2hCLENBQUMseUJBQXlCLEVBQUVDLE9BQzFCckIsZ0JBQ0EsMkNBQTJDLENBQUM7SUFFbEQ7SUFFQSxNQUFNc0IsT0FBT0MsSUFBQUEsY0FBUSxFQUFDM0IsUUFBUWtCLE1BQU0sQ0FBQ1EsSUFBSTtJQUN6QyxNQUFNakIsTUFBTTtRQUNWRixnQkFDRSxPQUFPQyxzQkFBc0IsY0FDekJBLG9CQUNBRCxrQkFBa0JhO1FBQ3hCTTtRQUNBaEI7UUFDQVY7UUFDQTRCLFlBQVk7UUFDWkMsR0FBR0gsS0FBS0csQ0FBQztRQUNUQyxlQUFlakIsYUFBYWlCO1FBQzVCZjtJQUNGO0lBQ0FnQixJQUFBQSxvQ0FBaUIsRUFBQ3RCLEtBQUtKO0lBRXZCLElBQUksQ0FBQ0ksSUFBSXVCLGlCQUFpQixFQUFFdkIsSUFBSXVCLGlCQUFpQixHQUFHQyxJQUFBQSx5QkFBYSxFQUFDeEI7SUFFbEUsTUFBTXlCLE9BQU87UUFDWGhDO1FBQ0FDO1FBQ0FHO1FBQ0FNO1FBQ0FaO1FBQ0FTO1FBQ0FLO0lBQ0Y7SUFFQSxPQUFPcUIsSUFBQUEsdUJBQWMsRUFBQ0Q7QUFDeEIifQ==
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb2xsZWN0aW9ucy9vcGVyYXRpb25zL2xvY2FsL3Jlc3RvcmVWZXJzaW9uLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgR2VuZXJhdGVkVHlwZXMgfSBmcm9tICcuLi8uLi8uLi8nXG5pbXBvcnQgdHlwZSB7IFBheWxvYWRSZXF1ZXN0LCBSZXF1ZXN0Q29udGV4dCB9IGZyb20gJy4uLy4uLy4uL2V4cHJlc3MvdHlwZXMnXG5pbXBvcnQgdHlwZSB7IFBheWxvYWQgfSBmcm9tICcuLi8uLi8uLi9wYXlsb2FkJ1xuaW1wb3J0IHR5cGUgeyBEb2N1bWVudCB9IGZyb20gJy4uLy4uLy4uL3R5cGVzJ1xuXG5pbXBvcnQgeyBBUElFcnJvciB9IGZyb20gJy4uLy4uLy4uL2Vycm9ycydcbmltcG9ydCB7IGNyZWF0ZUxvY2FsUmVxIH0gZnJvbSAnLi4vLi4vLi4vdXRpbGl0aWVzL2NyZWF0ZUxvY2FsUmVxJ1xuaW1wb3J0IHJlc3RvcmVWZXJzaW9uIGZyb20gJy4uL3Jlc3RvcmVWZXJzaW9uJ1xuXG5leHBvcnQgdHlwZSBPcHRpb25zPFQgZXh0ZW5kcyBrZXlvZiBHZW5lcmF0ZWRUeXBlc1snY29sbGVjdGlvbnMnXT4gPSB7XG4gIGNvbGxlY3Rpb246IFRcbiAgLyoqXG4gICAqIGNvbnRleHQsIHdoaWNoIHdpbGwgdGhlbiBiZSBwYXNzZWQgdG8gcmVxLmNvbnRleHQsIHdoaWNoIGNhbiBiZSByZWFkIGJ5IGhvb2tzXG4gICAqL1xuICBjb250ZXh0PzogUmVxdWVzdENvbnRleHRcbiAgZGVwdGg/OiBudW1iZXJcbiAgZHJhZnQ/OiBib29sZWFuXG4gIGZhbGxiYWNrTG9jYWxlPzogc3RyaW5nXG4gIGlkOiBzdHJpbmdcbiAgbG9jYWxlPzogc3RyaW5nXG4gIG92ZXJyaWRlQWNjZXNzPzogYm9vbGVhblxuICByZXE/OiBQYXlsb2FkUmVxdWVzdFxuICBzaG93SGlkZGVuRmllbGRzPzogYm9vbGVhblxuICB1c2VyPzogRG9jdW1lbnRcbn1cblxuZXhwb3J0IGRlZmF1bHQgYXN5bmMgZnVuY3Rpb24gcmVzdG9yZVZlcnNpb25Mb2NhbDxUIGV4dGVuZHMga2V5b2YgR2VuZXJhdGVkVHlwZXNbJ2NvbGxlY3Rpb25zJ10+KFxuICBwYXlsb2FkOiBQYXlsb2FkLFxuICBvcHRpb25zOiBPcHRpb25zPFQ+LFxuKTogUHJvbWlzZTxHZW5lcmF0ZWRUeXBlc1snY29sbGVjdGlvbnMnXVtUXT4ge1xuICBjb25zdCB7IGlkLCBjb2xsZWN0aW9uOiBjb2xsZWN0aW9uU2x1ZywgZGVwdGgsIG92ZXJyaWRlQWNjZXNzID0gdHJ1ZSwgc2hvd0hpZGRlbkZpZWxkcyB9ID0gb3B0aW9uc1xuXG4gIGNvbnN0IGNvbGxlY3Rpb24gPSBwYXlsb2FkLmNvbGxlY3Rpb25zW2NvbGxlY3Rpb25TbHVnXVxuXG4gIGlmICghY29sbGVjdGlvbikge1xuICAgIHRocm93IG5ldyBBUElFcnJvcihcbiAgICAgIGBUaGUgY29sbGVjdGlvbiB3aXRoIHNsdWcgJHtTdHJpbmcoXG4gICAgICAgIGNvbGxlY3Rpb25TbHVnLFxuICAgICAgKX0gY2FuJ3QgYmUgZm91bmQuIFJlc3RvcmUgVmVyc2lvbiBPcGVyYXRpb24uYCxcbiAgICApXG4gIH1cblxuICBjb25zdCByZXEgPSBjcmVhdGVMb2NhbFJlcShvcHRpb25zLCBwYXlsb2FkKVxuXG4gIGNvbnN0IGFyZ3MgPSB7XG4gICAgaWQsXG4gICAgY29sbGVjdGlvbixcbiAgICBkZXB0aCxcbiAgICBvdmVycmlkZUFjY2VzcyxcbiAgICBwYXlsb2FkLFxuICAgIHJlcSxcbiAgICBzaG93SGlkZGVuRmllbGRzLFxuICB9XG5cbiAgcmV0dXJuIHJlc3RvcmVWZXJzaW9uKGFyZ3MpXG59XG4iXSwibmFtZXMiOlsicmVzdG9yZVZlcnNpb25Mb2NhbCIsInBheWxvYWQiLCJvcHRpb25zIiwiaWQiLCJjb2xsZWN0aW9uIiwiY29sbGVjdGlvblNsdWciLCJkZXB0aCIsIm92ZXJyaWRlQWNjZXNzIiwic2hvd0hpZGRlbkZpZWxkcyIsImNvbGxlY3Rpb25zIiwiQVBJRXJyb3IiLCJTdHJpbmciLCJyZXEiLCJjcmVhdGVMb2NhbFJlcSIsImFyZ3MiLCJyZXN0b3JlVmVyc2lvbiJdLCJtYXBwaW5ncyI6Ijs7OzsrQkEwQkE7OztlQUE4QkE7Ozt3QkFyQkw7Z0NBQ007dUVBQ0o7Ozs7OztBQW1CWixlQUFlQSxvQkFDNUJDLE9BQWdCLEVBQ2hCQyxPQUFtQjtJQUVuQixNQUFNLEVBQUVDLEVBQUUsRUFBRUMsWUFBWUMsY0FBYyxFQUFFQyxLQUFLLEVBQUVDLGlCQUFpQixJQUFJLEVBQUVDLGdCQUFnQixFQUFFLEdBQUdOO0lBRTNGLE1BQU1FLGFBQWFILFFBQVFRLFdBQVcsQ0FBQ0osZUFBZTtJQUV0RCxJQUFJLENBQUNELFlBQVk7UUFDZixNQUFNLElBQUlNLGdCQUFRLENBQ2hCLENBQUMseUJBQXlCLEVBQUVDLE9BQzFCTixnQkFDQSwyQ0FBMkMsQ0FBQztJQUVsRDtJQUVBLE1BQU1PLE1BQU1DLElBQUFBLDhCQUFjLEVBQUNYLFNBQVNEO0lBRXBDLE1BQU1hLE9BQU87UUFDWFg7UUFDQUM7UUFDQUU7UUFDQUM7UUFDQU47UUFDQVc7UUFDQUo7SUFDRjtJQUVBLE9BQU9PLElBQUFBLHVCQUFjLEVBQUNEO0FBQ3hCIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../../../src/collections/operations/local/update.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAEhD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAC/C,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAC5E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAA;AAC/C,OAAO,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAA;AACrD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAA;AAClD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AAU7D,MAAM,MAAM,WAAW,CAAC,KAAK,SAAS,MAAM,cAAc,CAAC,aAAa,CAAC,IAAI;IAC3E,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,UAAU,EAAE,KAAK,CAAA;IACjB;;OAEG;IACH,OAAO,CAAC,EAAE,cAAc,CAAA;IACxB,IAAI,EAAE,WAAW,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,CAAC,CAAA;IACvD,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,IAAI,CAAC,EAAE,IAAI,CAAA;IACX,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,sBAAsB,CAAC,EAAE,OAAO,CAAA;IAChC,GAAG,CAAC,EAAE,cAAc,CAAA;IACpB,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,IAAI,CAAC,EAAE,QAAQ,CAAA;CAChB,CAAA;AAED,MAAM,MAAM,WAAW,CAAC,KAAK,SAAS,MAAM,cAAc,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,KAAK,CAAC,GAAG;IAChG,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;IACnB,KAAK,CAAC,EAAE,KAAK,CAAA;CACd,CAAA;AAED,MAAM,MAAM,WAAW,CAAC,KAAK,SAAS,MAAM,cAAc,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,KAAK,CAAC,GAAG;IAChG,EAAE,CAAC,EAAE,KAAK,CAAA;IACV,KAAK,EAAE,KAAK,CAAA;CACb,CAAA;AAED,MAAM,MAAM,OAAO,CAAC,KAAK,SAAS,MAAM,cAAc,CAAC,aAAa,CAAC,IACjE,WAAW,CAAC,KAAK,CAAC,GAClB,WAAW,CAAC,KAAK,CAAC,CAAA;AAEtB,iBAAe,WAAW,CAAC,KAAK,SAAS,MAAM,cAAc,CAAC,aAAa,CAAC,EAC1E,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,WAAW,CAAC,KAAK,CAAC,GAC1B,OAAO,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,CAAC,CAAA;AAChD,iBAAe,WAAW,CAAC,KAAK,SAAS,MAAM,cAAc,CAAC,aAAa,CAAC,EAC1E,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,WAAW,CAAC,KAAK,CAAC,GAC1B,OAAO,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC,CAAA;AACtC,iBAAe,WAAW,CAAC,KAAK,SAAS,MAAM,cAAc,CAAC,aAAa,CAAC,EAC1E,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,GACtB,OAAO,CAAC,mBAAmB,CAAC,KAAK,CAAC,GAAG,cAAc,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,CAAC,CAAA;AAiF7E,eAAe,WAAW,CAAA"}
1
+ {"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../../../src/collections/operations/local/update.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAEhD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAC/C,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAC5E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAA;AAC/C,OAAO,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAA;AACrD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAA;AAClD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AAQ7D,MAAM,MAAM,WAAW,CAAC,KAAK,SAAS,MAAM,cAAc,CAAC,aAAa,CAAC,IAAI;IAC3E,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,UAAU,EAAE,KAAK,CAAA;IACjB;;OAEG;IACH,OAAO,CAAC,EAAE,cAAc,CAAA;IACxB,IAAI,EAAE,WAAW,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,CAAC,CAAA;IACvD,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,IAAI,CAAC,EAAE,IAAI,CAAA;IACX,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,sBAAsB,CAAC,EAAE,OAAO,CAAA;IAChC,GAAG,CAAC,EAAE,cAAc,CAAA;IACpB,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,IAAI,CAAC,EAAE,QAAQ,CAAA;CAChB,CAAA;AAED,MAAM,MAAM,WAAW,CAAC,KAAK,SAAS,MAAM,cAAc,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,KAAK,CAAC,GAAG;IAChG,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;IACnB,KAAK,CAAC,EAAE,KAAK,CAAA;CACd,CAAA;AAED,MAAM,MAAM,WAAW,CAAC,KAAK,SAAS,MAAM,cAAc,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,KAAK,CAAC,GAAG;IAChG,EAAE,CAAC,EAAE,KAAK,CAAA;IACV,KAAK,EAAE,KAAK,CAAA;CACb,CAAA;AAED,MAAM,MAAM,OAAO,CAAC,KAAK,SAAS,MAAM,cAAc,CAAC,aAAa,CAAC,IACjE,WAAW,CAAC,KAAK,CAAC,GAClB,WAAW,CAAC,KAAK,CAAC,CAAA;AAEtB,iBAAe,WAAW,CAAC,KAAK,SAAS,MAAM,cAAc,CAAC,aAAa,CAAC,EAC1E,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,WAAW,CAAC,KAAK,CAAC,GAC1B,OAAO,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,CAAC,CAAA;AAChD,iBAAe,WAAW,CAAC,KAAK,SAAS,MAAM,cAAc,CAAC,aAAa,CAAC,EAC1E,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,WAAW,CAAC,KAAK,CAAC,GAC1B,OAAO,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC,CAAA;AACtC,iBAAe,WAAW,CAAC,KAAK,SAAS,MAAM,cAAc,CAAC,aAAa,CAAC,EAC1E,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,GACtB,OAAO,CAAC,mBAAmB,CAAC,KAAK,CAAC,GAAG,cAAc,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,CAAC,CAAA;AA6D7E,eAAe,WAAW,CAAA"}
@@ -9,10 +9,8 @@ Object.defineProperty(exports, "default", {
9
9
  }
10
10
  });
11
11
  const _errors = require("../../../errors");
12
- const _setRequestContext = require("../../../express/setRequestContext");
13
- const _init = require("../../../translations/init");
14
12
  const _getFileByPath = /*#__PURE__*/ _interop_require_default(require("../../../uploads/getFileByPath"));
15
- const _dataloader = require("../../dataloader");
13
+ const _createLocalReq = require("../../../utilities/createLocalReq");
16
14
  const _update = /*#__PURE__*/ _interop_require_default(require("../update"));
17
15
  const _updateByID = /*#__PURE__*/ _interop_require_default(require("../updateByID"));
18
16
  function _interop_require_default(obj) {
@@ -21,31 +19,22 @@ function _interop_require_default(obj) {
21
19
  };
22
20
  }
23
21
  async function updateLocal(payload, options) {
24
- const { id, autosave, collection: collectionSlug, context, data, depth, draft, fallbackLocale: fallbackLocaleArg = options?.req?.fallbackLocale, file, filePath, locale: localeArg = null, overrideAccess = true, overwriteExistingFiles = false, req: incomingReq, showHiddenFields, user, where } = options;
22
+ const { id, autosave, collection: collectionSlug, data, depth, draft, file, filePath, overrideAccess = true, overwriteExistingFiles = false, showHiddenFields, where } = options;
25
23
  const collection = payload.collections[collectionSlug];
26
- const i18n = (0, _init.i18nInit)(payload.config.i18n);
27
- const localizationConfig = payload?.config?.localization;
28
- const defaultLocale = localizationConfig ? localizationConfig.defaultLocale : null;
29
- const locale = localeArg || incomingReq?.locale || defaultLocale;
30
- const fallbackLocale = localizationConfig ? localizationConfig.locales.find(({ code })=>locale === code)?.fallbackLocale : null;
31
24
  if (!collection) {
32
25
  throw new _errors.APIError(`The collection with slug ${String(collectionSlug)} can't be found. Update Operation.`);
33
26
  }
34
- const req = {
35
- fallbackLocale: typeof fallbackLocaleArg !== 'undefined' ? fallbackLocaleArg : fallbackLocale || defaultLocale,
36
- files: {
37
- file: file ?? await (0, _getFileByPath.default)(filePath)
38
- },
39
- i18n,
40
- locale: locale ?? defaultLocale,
41
- payload,
42
- payloadAPI: 'local',
43
- transactionID: incomingReq?.transactionID,
44
- user
45
- };
46
- (0, _setRequestContext.setRequestContext)(req, context);
47
- if (!req.t) req.t = req.i18n.t;
48
- if (!req.payloadDataLoader) req.payloadDataLoader = (0, _dataloader.getDataLoader)(req);
27
+ const req = (0, _createLocalReq.createLocalReq)(options, payload);
28
+ const fileToSet = file ?? await (0, _getFileByPath.default)(filePath);
29
+ if (fileToSet) {
30
+ if (req?.files) {
31
+ req.files.file = fileToSet;
32
+ } else {
33
+ req.files = {
34
+ file: fileToSet
35
+ };
36
+ }
37
+ }
49
38
  const args = {
50
39
  id,
51
40
  autosave,
@@ -67,4 +56,4 @@ async function updateLocal(payload, options) {
67
56
  }
68
57
  const _default = updateLocal;
69
58
 
70
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb2xsZWN0aW9ucy9vcGVyYXRpb25zL2xvY2FsL3VwZGF0ZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IERlZXBQYXJ0aWFsIH0gZnJvbSAndHMtZXNzZW50aWFscydcblxuaW1wb3J0IHR5cGUgeyBHZW5lcmF0ZWRUeXBlcyB9IGZyb20gJy4uLy4uLy4uLydcbmltcG9ydCB0eXBlIHsgUGF5bG9hZFJlcXVlc3QsIFJlcXVlc3RDb250ZXh0IH0gZnJvbSAnLi4vLi4vLi4vZXhwcmVzcy90eXBlcydcbmltcG9ydCB0eXBlIHsgUGF5bG9hZCB9IGZyb20gJy4uLy4uLy4uL3BheWxvYWQnXG5pbXBvcnQgdHlwZSB7IERvY3VtZW50LCBXaGVyZSB9IGZyb20gJy4uLy4uLy4uL3R5cGVzJ1xuaW1wb3J0IHR5cGUgeyBGaWxlIH0gZnJvbSAnLi4vLi4vLi4vdXBsb2Fkcy90eXBlcydcbmltcG9ydCB0eXBlIHsgQnVsa09wZXJhdGlvblJlc3VsdCB9IGZyb20gJy4uLy4uL2NvbmZpZy90eXBlcydcblxuaW1wb3J0IHsgQVBJRXJyb3IgfSBmcm9tICcuLi8uLi8uLi9lcnJvcnMnXG5pbXBvcnQgeyBzZXRSZXF1ZXN0Q29udGV4dCB9IGZyb20gJy4uLy4uLy4uL2V4cHJlc3Mvc2V0UmVxdWVzdENvbnRleHQnXG5pbXBvcnQgeyBpMThuSW5pdCB9IGZyb20gJy4uLy4uLy4uL3RyYW5zbGF0aW9ucy9pbml0J1xuaW1wb3J0IGdldEZpbGVCeVBhdGggZnJvbSAnLi4vLi4vLi4vdXBsb2Fkcy9nZXRGaWxlQnlQYXRoJ1xuaW1wb3J0IHsgZ2V0RGF0YUxvYWRlciB9IGZyb20gJy4uLy4uL2RhdGFsb2FkZXInXG5pbXBvcnQgdXBkYXRlIGZyb20gJy4uL3VwZGF0ZSdcbmltcG9ydCB1cGRhdGVCeUlEIGZyb20gJy4uL3VwZGF0ZUJ5SUQnXG5cbmV4cG9ydCB0eXBlIEJhc2VPcHRpb25zPFRTbHVnIGV4dGVuZHMga2V5b2YgR2VuZXJhdGVkVHlwZXNbJ2NvbGxlY3Rpb25zJ10+ID0ge1xuICBhdXRvc2F2ZT86IGJvb2xlYW5cbiAgY29sbGVjdGlvbjogVFNsdWdcbiAgLyoqXG4gICAqIGNvbnRleHQsIHdoaWNoIHdpbGwgdGhlbiBiZSBwYXNzZWQgdG8gcmVxLmNvbnRleHQsIHdoaWNoIGNhbiBiZSByZWFkIGJ5IGhvb2tzXG4gICAqL1xuICBjb250ZXh0PzogUmVxdWVzdENvbnRleHRcbiAgZGF0YTogRGVlcFBhcnRpYWw8R2VuZXJhdGVkVHlwZXNbJ2NvbGxlY3Rpb25zJ11bVFNsdWddPlxuICBkZXB0aD86IG51bWJlclxuICBkcmFmdD86IGJvb2xlYW5cbiAgZmFsbGJhY2tMb2NhbGU/OiBzdHJpbmdcbiAgZmlsZT86IEZpbGVcbiAgZmlsZVBhdGg/OiBzdHJpbmdcbiAgbG9jYWxlPzogc3RyaW5nXG4gIG92ZXJyaWRlQWNjZXNzPzogYm9vbGVhblxuICBvdmVyd3JpdGVFeGlzdGluZ0ZpbGVzPzogYm9vbGVhblxuICByZXE/OiBQYXlsb2FkUmVxdWVzdFxuICBzaG93SGlkZGVuRmllbGRzPzogYm9vbGVhblxuICB1c2VyPzogRG9jdW1lbnRcbn1cblxuZXhwb3J0IHR5cGUgQnlJRE9wdGlvbnM8VFNsdWcgZXh0ZW5kcyBrZXlvZiBHZW5lcmF0ZWRUeXBlc1snY29sbGVjdGlvbnMnXT4gPSBCYXNlT3B0aW9uczxUU2x1Zz4gJiB7XG4gIGlkOiBudW1iZXIgfCBzdHJpbmdcbiAgd2hlcmU/OiBuZXZlclxufVxuXG5leHBvcnQgdHlwZSBNYW55T3B0aW9uczxUU2x1ZyBleHRlbmRzIGtleW9mIEdlbmVyYXRlZFR5cGVzWydjb2xsZWN0aW9ucyddPiA9IEJhc2VPcHRpb25zPFRTbHVnPiAmIHtcbiAgaWQ/OiBuZXZlclxuICB3aGVyZTogV2hlcmVcbn1cblxuZXhwb3J0IHR5cGUgT3B0aW9uczxUU2x1ZyBleHRlbmRzIGtleW9mIEdlbmVyYXRlZFR5cGVzWydjb2xsZWN0aW9ucyddPiA9XG4gIHwgQnlJRE9wdGlvbnM8VFNsdWc+XG4gIHwgTWFueU9wdGlvbnM8VFNsdWc+XG5cbmFzeW5jIGZ1bmN0aW9uIHVwZGF0ZUxvY2FsPFRTbHVnIGV4dGVuZHMga2V5b2YgR2VuZXJhdGVkVHlwZXNbJ2NvbGxlY3Rpb25zJ10+KFxuICBwYXlsb2FkOiBQYXlsb2FkLFxuICBvcHRpb25zOiBCeUlET3B0aW9uczxUU2x1Zz4sXG4pOiBQcm9taXNlPEdlbmVyYXRlZFR5cGVzWydjb2xsZWN0aW9ucyddW1RTbHVnXT5cbmFzeW5jIGZ1bmN0aW9uIHVwZGF0ZUxvY2FsPFRTbHVnIGV4dGVuZHMga2V5b2YgR2VuZXJhdGVkVHlwZXNbJ2NvbGxlY3Rpb25zJ10+KFxuICBwYXlsb2FkOiBQYXlsb2FkLFxuICBvcHRpb25zOiBNYW55T3B0aW9uczxUU2x1Zz4sXG4pOiBQcm9taXNlPEJ1bGtPcGVyYXRpb25SZXN1bHQ8VFNsdWc+PlxuYXN5bmMgZnVuY3Rpb24gdXBkYXRlTG9jYWw8VFNsdWcgZXh0ZW5kcyBrZXlvZiBHZW5lcmF0ZWRUeXBlc1snY29sbGVjdGlvbnMnXT4oXG4gIHBheWxvYWQ6IFBheWxvYWQsXG4gIG9wdGlvbnM6IE9wdGlvbnM8VFNsdWc+LFxuKTogUHJvbWlzZTxCdWxrT3BlcmF0aW9uUmVzdWx0PFRTbHVnPiB8IEdlbmVyYXRlZFR5cGVzWydjb2xsZWN0aW9ucyddW1RTbHVnXT5cbmFzeW5jIGZ1bmN0aW9uIHVwZGF0ZUxvY2FsPFRTbHVnIGV4dGVuZHMga2V5b2YgR2VuZXJhdGVkVHlwZXNbJ2NvbGxlY3Rpb25zJ10+KFxuICBwYXlsb2FkOiBQYXlsb2FkLFxuICBvcHRpb25zOiBPcHRpb25zPFRTbHVnPixcbik6IFByb21pc2U8QnVsa09wZXJhdGlvblJlc3VsdDxUU2x1Zz4gfCBHZW5lcmF0ZWRUeXBlc1snY29sbGVjdGlvbnMnXVtUU2x1Z10+IHtcbiAgY29uc3Qge1xuICAgIGlkLFxuICAgIGF1dG9zYXZlLFxuICAgIGNvbGxlY3Rpb246IGNvbGxlY3Rpb25TbHVnLFxuICAgIGNvbnRleHQsXG4gICAgZGF0YSxcbiAgICBkZXB0aCxcbiAgICBkcmFmdCxcbiAgICBmYWxsYmFja0xvY2FsZTogZmFsbGJhY2tMb2NhbGVBcmcgPSBvcHRpb25zPy5yZXE/LmZhbGxiYWNrTG9jYWxlLFxuICAgIGZpbGUsXG4gICAgZmlsZVBhdGgsXG4gICAgbG9jYWxlOiBsb2NhbGVBcmcgPSBudWxsLFxuICAgIG92ZXJyaWRlQWNjZXNzID0gdHJ1ZSxcbiAgICBvdmVyd3JpdGVFeGlzdGluZ0ZpbGVzID0gZmFsc2UsXG4gICAgcmVxOiBpbmNvbWluZ1JlcSxcbiAgICBzaG93SGlkZGVuRmllbGRzLFxuICAgIHVzZXIsXG4gICAgd2hlcmUsXG4gIH0gPSBvcHRpb25zXG5cbiAgY29uc3QgY29sbGVjdGlvbiA9IHBheWxvYWQuY29sbGVjdGlvbnNbY29sbGVjdGlvblNsdWddXG4gIGNvbnN0IGkxOG4gPSBpMThuSW5pdChwYXlsb2FkLmNvbmZpZy5pMThuKVxuICBjb25zdCBsb2NhbGl6YXRpb25Db25maWcgPSBwYXlsb2FkPy5jb25maWc/LmxvY2FsaXphdGlvblxuICBjb25zdCBkZWZhdWx0TG9jYWxlID0gbG9jYWxpemF0aW9uQ29uZmlnID8gbG9jYWxpemF0aW9uQ29uZmlnLmRlZmF1bHRMb2NhbGUgOiBudWxsXG4gIGNvbnN0IGxvY2FsZSA9IGxvY2FsZUFyZyB8fCBpbmNvbWluZ1JlcT8ubG9jYWxlIHx8IGRlZmF1bHRMb2NhbGVcbiAgY29uc3QgZmFsbGJhY2tMb2NhbGUgPSBsb2NhbGl6YXRpb25Db25maWdcbiAgICA/IGxvY2FsaXphdGlvbkNvbmZpZy5sb2NhbGVzLmZpbmQoKHsgY29kZSB9KSA9PiBsb2NhbGUgPT09IGNvZGUpPy5mYWxsYmFja0xvY2FsZVxuICAgIDogbnVsbFxuXG4gIGlmICghY29sbGVjdGlvbikge1xuICAgIHRocm93IG5ldyBBUElFcnJvcihcbiAgICAgIGBUaGUgY29sbGVjdGlvbiB3aXRoIHNsdWcgJHtTdHJpbmcoY29sbGVjdGlvblNsdWcpfSBjYW4ndCBiZSBmb3VuZC4gVXBkYXRlIE9wZXJhdGlvbi5gLFxuICAgIClcbiAgfVxuXG4gIGNvbnN0IHJlcSA9IHtcbiAgICBmYWxsYmFja0xvY2FsZTpcbiAgICAgIHR5cGVvZiBmYWxsYmFja0xvY2FsZUFyZyAhPT0gJ3VuZGVmaW5lZCdcbiAgICAgICAgPyBmYWxsYmFja0xvY2FsZUFyZ1xuICAgICAgICA6IGZhbGxiYWNrTG9jYWxlIHx8IGRlZmF1bHRMb2NhbGUsXG4gICAgZmlsZXM6IHtcbiAgICAgIGZpbGU6IGZpbGUgPz8gKGF3YWl0IGdldEZpbGVCeVBhdGgoZmlsZVBhdGgpKSxcbiAgICB9LFxuICAgIGkxOG4sXG4gICAgbG9jYWxlOiBsb2NhbGUgPz8gZGVmYXVsdExvY2FsZSxcbiAgICBwYXlsb2FkLFxuICAgIHBheWxvYWRBUEk6ICdsb2NhbCcsXG4gICAgdHJhbnNhY3Rpb25JRDogaW5jb21pbmdSZXE/LnRyYW5zYWN0aW9uSUQsXG4gICAgdXNlcixcbiAgfSBhcyBQYXlsb2FkUmVxdWVzdFxuICBzZXRSZXF1ZXN0Q29udGV4dChyZXEsIGNvbnRleHQpXG5cbiAgaWYgKCFyZXEudCkgcmVxLnQgPSByZXEuaTE4bi50XG4gIGlmICghcmVxLnBheWxvYWREYXRhTG9hZGVyKSByZXEucGF5bG9hZERhdGFMb2FkZXIgPSBnZXREYXRhTG9hZGVyKHJlcSlcblxuICBjb25zdCBhcmdzID0ge1xuICAgIGlkLFxuICAgIGF1dG9zYXZlLFxuICAgIGNvbGxlY3Rpb24sXG4gICAgZGF0YSxcbiAgICBkZXB0aCxcbiAgICBkcmFmdCxcbiAgICBvdmVycmlkZUFjY2VzcyxcbiAgICBvdmVyd3JpdGVFeGlzdGluZ0ZpbGVzLFxuICAgIHBheWxvYWQsXG4gICAgcmVxLFxuICAgIHNob3dIaWRkZW5GaWVsZHMsXG4gICAgd2hlcmUsXG4gIH1cblxuICBpZiAob3B0aW9ucy5pZCkge1xuICAgIHJldHVybiB1cGRhdGVCeUlEPFRTbHVnPihhcmdzKVxuICB9XG4gIHJldHVybiB1cGRhdGU8VFNsdWc+KGFyZ3MpXG59XG5cbmV4cG9ydCBkZWZhdWx0IHVwZGF0ZUxvY2FsXG4iXSwibmFtZXMiOlsidXBkYXRlTG9jYWwiLCJwYXlsb2FkIiwib3B0aW9ucyIsImlkIiwiYXV0b3NhdmUiLCJjb2xsZWN0aW9uIiwiY29sbGVjdGlvblNsdWciLCJjb250ZXh0IiwiZGF0YSIsImRlcHRoIiwiZHJhZnQiLCJmYWxsYmFja0xvY2FsZSIsImZhbGxiYWNrTG9jYWxlQXJnIiwicmVxIiwiZmlsZSIsImZpbGVQYXRoIiwibG9jYWxlIiwibG9jYWxlQXJnIiwib3ZlcnJpZGVBY2Nlc3MiLCJvdmVyd3JpdGVFeGlzdGluZ0ZpbGVzIiwiaW5jb21pbmdSZXEiLCJzaG93SGlkZGVuRmllbGRzIiwidXNlciIsIndoZXJlIiwiY29sbGVjdGlvbnMiLCJpMThuIiwiaTE4bkluaXQiLCJjb25maWciLCJsb2NhbGl6YXRpb25Db25maWciLCJsb2NhbGl6YXRpb24iLCJkZWZhdWx0TG9jYWxlIiwibG9jYWxlcyIsImZpbmQiLCJjb2RlIiwiQVBJRXJyb3IiLCJTdHJpbmciLCJmaWxlcyIsImdldEZpbGVCeVBhdGgiLCJwYXlsb2FkQVBJIiwidHJhbnNhY3Rpb25JRCIsInNldFJlcXVlc3RDb250ZXh0IiwidCIsInBheWxvYWREYXRhTG9hZGVyIiwiZ2V0RGF0YUxvYWRlciIsImFyZ3MiLCJ1cGRhdGVCeUlEIiwidXBkYXRlIl0sIm1hcHBpbmdzIjoiOzs7OytCQWdKQTs7O2VBQUE7Ozt3QkF2SXlCO21DQUNTO3NCQUNUO3NFQUNDOzRCQUNJOytEQUNYO21FQUNJOzs7Ozs7QUFpRHZCLGVBQWVBLFlBQ2JDLE9BQWdCLEVBQ2hCQyxPQUF1QjtJQUV2QixNQUFNLEVBQ0pDLEVBQUUsRUFDRkMsUUFBUSxFQUNSQyxZQUFZQyxjQUFjLEVBQzFCQyxPQUFPLEVBQ1BDLElBQUksRUFDSkMsS0FBSyxFQUNMQyxLQUFLLEVBQ0xDLGdCQUFnQkMsb0JBQW9CVixTQUFTVyxLQUFLRixjQUFjLEVBQ2hFRyxJQUFJLEVBQ0pDLFFBQVEsRUFDUkMsUUFBUUMsWUFBWSxJQUFJLEVBQ3hCQyxpQkFBaUIsSUFBSSxFQUNyQkMseUJBQXlCLEtBQUssRUFDOUJOLEtBQUtPLFdBQVcsRUFDaEJDLGdCQUFnQixFQUNoQkMsSUFBSSxFQUNKQyxLQUFLLEVBQ04sR0FBR3JCO0lBRUosTUFBTUcsYUFBYUosUUFBUXVCLFdBQVcsQ0FBQ2xCLGVBQWU7SUFDdEQsTUFBTW1CLE9BQU9DLElBQUFBLGNBQVEsRUFBQ3pCLFFBQVEwQixNQUFNLENBQUNGLElBQUk7SUFDekMsTUFBTUcscUJBQXFCM0IsU0FBUzBCLFFBQVFFO0lBQzVDLE1BQU1DLGdCQUFnQkYscUJBQXFCQSxtQkFBbUJFLGFBQWEsR0FBRztJQUM5RSxNQUFNZCxTQUFTQyxhQUFhRyxhQUFhSixVQUFVYztJQUNuRCxNQUFNbkIsaUJBQWlCaUIscUJBQ25CQSxtQkFBbUJHLE9BQU8sQ0FBQ0MsSUFBSSxDQUFDLENBQUMsRUFBRUMsSUFBSSxFQUFFLEdBQUtqQixXQUFXaUIsT0FBT3RCLGlCQUNoRTtJQUVKLElBQUksQ0FBQ04sWUFBWTtRQUNmLE1BQU0sSUFBSTZCLGdCQUFRLENBQ2hCLENBQUMseUJBQXlCLEVBQUVDLE9BQU83QixnQkFBZ0Isa0NBQWtDLENBQUM7SUFFMUY7SUFFQSxNQUFNTyxNQUFNO1FBQ1ZGLGdCQUNFLE9BQU9DLHNCQUFzQixjQUN6QkEsb0JBQ0FELGtCQUFrQm1CO1FBQ3hCTSxPQUFPO1lBQ0x0QixNQUFNQSxRQUFTLE1BQU11QixJQUFBQSxzQkFBYSxFQUFDdEI7UUFDckM7UUFDQVU7UUFDQVQsUUFBUUEsVUFBVWM7UUFDbEI3QjtRQUNBcUMsWUFBWTtRQUNaQyxlQUFlbkIsYUFBYW1CO1FBQzVCakI7SUFDRjtJQUNBa0IsSUFBQUEsb0NBQWlCLEVBQUMzQixLQUFLTjtJQUV2QixJQUFJLENBQUNNLElBQUk0QixDQUFDLEVBQUU1QixJQUFJNEIsQ0FBQyxHQUFHNUIsSUFBSVksSUFBSSxDQUFDZ0IsQ0FBQztJQUM5QixJQUFJLENBQUM1QixJQUFJNkIsaUJBQWlCLEVBQUU3QixJQUFJNkIsaUJBQWlCLEdBQUdDLElBQUFBLHlCQUFhLEVBQUM5QjtJQUVsRSxNQUFNK0IsT0FBTztRQUNYekM7UUFDQUM7UUFDQUM7UUFDQUc7UUFDQUM7UUFDQUM7UUFDQVE7UUFDQUM7UUFDQWxCO1FBQ0FZO1FBQ0FRO1FBQ0FFO0lBQ0Y7SUFFQSxJQUFJckIsUUFBUUMsRUFBRSxFQUFFO1FBQ2QsT0FBTzBDLElBQUFBLG1CQUFVLEVBQVFEO0lBQzNCO0lBQ0EsT0FBT0UsSUFBQUEsZUFBTSxFQUFRRjtBQUN2QjtNQUVBLFdBQWU1QyJ9
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb2xsZWN0aW9ucy9vcGVyYXRpb25zL2xvY2FsL3VwZGF0ZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFVwbG9hZGVkRmlsZSB9IGZyb20gJ2V4cHJlc3MtZmlsZXVwbG9hZCdcbmltcG9ydCB0eXBlIHsgRGVlcFBhcnRpYWwgfSBmcm9tICd0cy1lc3NlbnRpYWxzJ1xuXG5pbXBvcnQgdHlwZSB7IEdlbmVyYXRlZFR5cGVzIH0gZnJvbSAnLi4vLi4vLi4vJ1xuaW1wb3J0IHR5cGUgeyBQYXlsb2FkUmVxdWVzdCwgUmVxdWVzdENvbnRleHQgfSBmcm9tICcuLi8uLi8uLi9leHByZXNzL3R5cGVzJ1xuaW1wb3J0IHR5cGUgeyBQYXlsb2FkIH0gZnJvbSAnLi4vLi4vLi4vcGF5bG9hZCdcbmltcG9ydCB0eXBlIHsgRG9jdW1lbnQsIFdoZXJlIH0gZnJvbSAnLi4vLi4vLi4vdHlwZXMnXG5pbXBvcnQgdHlwZSB7IEZpbGUgfSBmcm9tICcuLi8uLi8uLi91cGxvYWRzL3R5cGVzJ1xuaW1wb3J0IHR5cGUgeyBCdWxrT3BlcmF0aW9uUmVzdWx0IH0gZnJvbSAnLi4vLi4vY29uZmlnL3R5cGVzJ1xuXG5pbXBvcnQgeyBBUElFcnJvciB9IGZyb20gJy4uLy4uLy4uL2Vycm9ycydcbmltcG9ydCBnZXRGaWxlQnlQYXRoIGZyb20gJy4uLy4uLy4uL3VwbG9hZHMvZ2V0RmlsZUJ5UGF0aCdcbmltcG9ydCB7IGNyZWF0ZUxvY2FsUmVxIH0gZnJvbSAnLi4vLi4vLi4vdXRpbGl0aWVzL2NyZWF0ZUxvY2FsUmVxJ1xuaW1wb3J0IHVwZGF0ZSBmcm9tICcuLi91cGRhdGUnXG5pbXBvcnQgdXBkYXRlQnlJRCBmcm9tICcuLi91cGRhdGVCeUlEJ1xuXG5leHBvcnQgdHlwZSBCYXNlT3B0aW9uczxUU2x1ZyBleHRlbmRzIGtleW9mIEdlbmVyYXRlZFR5cGVzWydjb2xsZWN0aW9ucyddPiA9IHtcbiAgYXV0b3NhdmU/OiBib29sZWFuXG4gIGNvbGxlY3Rpb246IFRTbHVnXG4gIC8qKlxuICAgKiBjb250ZXh0LCB3aGljaCB3aWxsIHRoZW4gYmUgcGFzc2VkIHRvIHJlcS5jb250ZXh0LCB3aGljaCBjYW4gYmUgcmVhZCBieSBob29rc1xuICAgKi9cbiAgY29udGV4dD86IFJlcXVlc3RDb250ZXh0XG4gIGRhdGE6IERlZXBQYXJ0aWFsPEdlbmVyYXRlZFR5cGVzWydjb2xsZWN0aW9ucyddW1RTbHVnXT5cbiAgZGVwdGg/OiBudW1iZXJcbiAgZHJhZnQ/OiBib29sZWFuXG4gIGZhbGxiYWNrTG9jYWxlPzogc3RyaW5nXG4gIGZpbGU/OiBGaWxlXG4gIGZpbGVQYXRoPzogc3RyaW5nXG4gIGxvY2FsZT86IHN0cmluZ1xuICBvdmVycmlkZUFjY2Vzcz86IGJvb2xlYW5cbiAgb3ZlcndyaXRlRXhpc3RpbmdGaWxlcz86IGJvb2xlYW5cbiAgcmVxPzogUGF5bG9hZFJlcXVlc3RcbiAgc2hvd0hpZGRlbkZpZWxkcz86IGJvb2xlYW5cbiAgdXNlcj86IERvY3VtZW50XG59XG5cbmV4cG9ydCB0eXBlIEJ5SURPcHRpb25zPFRTbHVnIGV4dGVuZHMga2V5b2YgR2VuZXJhdGVkVHlwZXNbJ2NvbGxlY3Rpb25zJ10+ID0gQmFzZU9wdGlvbnM8VFNsdWc+ICYge1xuICBpZDogbnVtYmVyIHwgc3RyaW5nXG4gIHdoZXJlPzogbmV2ZXJcbn1cblxuZXhwb3J0IHR5cGUgTWFueU9wdGlvbnM8VFNsdWcgZXh0ZW5kcyBrZXlvZiBHZW5lcmF0ZWRUeXBlc1snY29sbGVjdGlvbnMnXT4gPSBCYXNlT3B0aW9uczxUU2x1Zz4gJiB7XG4gIGlkPzogbmV2ZXJcbiAgd2hlcmU6IFdoZXJlXG59XG5cbmV4cG9ydCB0eXBlIE9wdGlvbnM8VFNsdWcgZXh0ZW5kcyBrZXlvZiBHZW5lcmF0ZWRUeXBlc1snY29sbGVjdGlvbnMnXT4gPVxuICB8IEJ5SURPcHRpb25zPFRTbHVnPlxuICB8IE1hbnlPcHRpb25zPFRTbHVnPlxuXG5hc3luYyBmdW5jdGlvbiB1cGRhdGVMb2NhbDxUU2x1ZyBleHRlbmRzIGtleW9mIEdlbmVyYXRlZFR5cGVzWydjb2xsZWN0aW9ucyddPihcbiAgcGF5bG9hZDogUGF5bG9hZCxcbiAgb3B0aW9uczogQnlJRE9wdGlvbnM8VFNsdWc+LFxuKTogUHJvbWlzZTxHZW5lcmF0ZWRUeXBlc1snY29sbGVjdGlvbnMnXVtUU2x1Z10+XG5hc3luYyBmdW5jdGlvbiB1cGRhdGVMb2NhbDxUU2x1ZyBleHRlbmRzIGtleW9mIEdlbmVyYXRlZFR5cGVzWydjb2xsZWN0aW9ucyddPihcbiAgcGF5bG9hZDogUGF5bG9hZCxcbiAgb3B0aW9uczogTWFueU9wdGlvbnM8VFNsdWc+LFxuKTogUHJvbWlzZTxCdWxrT3BlcmF0aW9uUmVzdWx0PFRTbHVnPj5cbmFzeW5jIGZ1bmN0aW9uIHVwZGF0ZUxvY2FsPFRTbHVnIGV4dGVuZHMga2V5b2YgR2VuZXJhdGVkVHlwZXNbJ2NvbGxlY3Rpb25zJ10+KFxuICBwYXlsb2FkOiBQYXlsb2FkLFxuICBvcHRpb25zOiBPcHRpb25zPFRTbHVnPixcbik6IFByb21pc2U8QnVsa09wZXJhdGlvblJlc3VsdDxUU2x1Zz4gfCBHZW5lcmF0ZWRUeXBlc1snY29sbGVjdGlvbnMnXVtUU2x1Z10+XG5hc3luYyBmdW5jdGlvbiB1cGRhdGVMb2NhbDxUU2x1ZyBleHRlbmRzIGtleW9mIEdlbmVyYXRlZFR5cGVzWydjb2xsZWN0aW9ucyddPihcbiAgcGF5bG9hZDogUGF5bG9hZCxcbiAgb3B0aW9uczogT3B0aW9uczxUU2x1Zz4sXG4pOiBQcm9taXNlPEJ1bGtPcGVyYXRpb25SZXN1bHQ8VFNsdWc+IHwgR2VuZXJhdGVkVHlwZXNbJ2NvbGxlY3Rpb25zJ11bVFNsdWddPiB7XG4gIGNvbnN0IHtcbiAgICBpZCxcbiAgICBhdXRvc2F2ZSxcbiAgICBjb2xsZWN0aW9uOiBjb2xsZWN0aW9uU2x1ZyxcbiAgICBkYXRhLFxuICAgIGRlcHRoLFxuICAgIGRyYWZ0LFxuICAgIGZpbGUsXG4gICAgZmlsZVBhdGgsXG4gICAgb3ZlcnJpZGVBY2Nlc3MgPSB0cnVlLFxuICAgIG92ZXJ3cml0ZUV4aXN0aW5nRmlsZXMgPSBmYWxzZSxcbiAgICBzaG93SGlkZGVuRmllbGRzLFxuICAgIHdoZXJlLFxuICB9ID0gb3B0aW9uc1xuXG4gIGNvbnN0IGNvbGxlY3Rpb24gPSBwYXlsb2FkLmNvbGxlY3Rpb25zW2NvbGxlY3Rpb25TbHVnXVxuXG4gIGlmICghY29sbGVjdGlvbikge1xuICAgIHRocm93IG5ldyBBUElFcnJvcihcbiAgICAgIGBUaGUgY29sbGVjdGlvbiB3aXRoIHNsdWcgJHtTdHJpbmcoY29sbGVjdGlvblNsdWcpfSBjYW4ndCBiZSBmb3VuZC4gVXBkYXRlIE9wZXJhdGlvbi5gLFxuICAgIClcbiAgfVxuXG4gIGNvbnN0IHJlcSA9IGNyZWF0ZUxvY2FsUmVxKG9wdGlvbnMsIHBheWxvYWQpXG4gIGNvbnN0IGZpbGVUb1NldCA9IChmaWxlID8/IChhd2FpdCBnZXRGaWxlQnlQYXRoKGZpbGVQYXRoKSkpIGFzIFVwbG9hZGVkRmlsZVxuICBpZiAoZmlsZVRvU2V0KSB7XG4gICAgaWYgKHJlcT8uZmlsZXMpIHtcbiAgICAgIHJlcS5maWxlcy5maWxlID0gZmlsZVRvU2V0XG4gICAgfSBlbHNlIHtcbiAgICAgIHJlcS5maWxlcyA9IHtcbiAgICAgICAgZmlsZTogZmlsZVRvU2V0LFxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGNvbnN0IGFyZ3MgPSB7XG4gICAgaWQsXG4gICAgYXV0b3NhdmUsXG4gICAgY29sbGVjdGlvbixcbiAgICBkYXRhLFxuICAgIGRlcHRoLFxuICAgIGRyYWZ0LFxuICAgIG92ZXJyaWRlQWNjZXNzLFxuICAgIG92ZXJ3cml0ZUV4aXN0aW5nRmlsZXMsXG4gICAgcGF5bG9hZCxcbiAgICByZXEsXG4gICAgc2hvd0hpZGRlbkZpZWxkcyxcbiAgICB3aGVyZSxcbiAgfVxuXG4gIGlmIChvcHRpb25zLmlkKSB7XG4gICAgcmV0dXJuIHVwZGF0ZUJ5SUQ8VFNsdWc+KGFyZ3MpXG4gIH1cbiAgcmV0dXJuIHVwZGF0ZTxUU2x1Zz4oYXJncylcbn1cblxuZXhwb3J0IGRlZmF1bHQgdXBkYXRlTG9jYWxcbiJdLCJuYW1lcyI6WyJ1cGRhdGVMb2NhbCIsInBheWxvYWQiLCJvcHRpb25zIiwiaWQiLCJhdXRvc2F2ZSIsImNvbGxlY3Rpb24iLCJjb2xsZWN0aW9uU2x1ZyIsImRhdGEiLCJkZXB0aCIsImRyYWZ0IiwiZmlsZSIsImZpbGVQYXRoIiwib3ZlcnJpZGVBY2Nlc3MiLCJvdmVyd3JpdGVFeGlzdGluZ0ZpbGVzIiwic2hvd0hpZGRlbkZpZWxkcyIsIndoZXJlIiwiY29sbGVjdGlvbnMiLCJBUElFcnJvciIsIlN0cmluZyIsInJlcSIsImNyZWF0ZUxvY2FsUmVxIiwiZmlsZVRvU2V0IiwiZ2V0RmlsZUJ5UGF0aCIsImZpbGVzIiwiYXJncyIsInVwZGF0ZUJ5SUQiLCJ1cGRhdGUiXSwibWFwcGluZ3MiOiI7Ozs7K0JBMkhBOzs7ZUFBQTs7O3dCQWpIeUI7c0VBQ0M7Z0NBQ0s7K0RBQ1o7bUVBQ0k7Ozs7OztBQWlEdkIsZUFBZUEsWUFDYkMsT0FBZ0IsRUFDaEJDLE9BQXVCO0lBRXZCLE1BQU0sRUFDSkMsRUFBRSxFQUNGQyxRQUFRLEVBQ1JDLFlBQVlDLGNBQWMsRUFDMUJDLElBQUksRUFDSkMsS0FBSyxFQUNMQyxLQUFLLEVBQ0xDLElBQUksRUFDSkMsUUFBUSxFQUNSQyxpQkFBaUIsSUFBSSxFQUNyQkMseUJBQXlCLEtBQUssRUFDOUJDLGdCQUFnQixFQUNoQkMsS0FBSyxFQUNOLEdBQUdiO0lBRUosTUFBTUcsYUFBYUosUUFBUWUsV0FBVyxDQUFDVixlQUFlO0lBRXRELElBQUksQ0FBQ0QsWUFBWTtRQUNmLE1BQU0sSUFBSVksZ0JBQVEsQ0FDaEIsQ0FBQyx5QkFBeUIsRUFBRUMsT0FBT1osZ0JBQWdCLGtDQUFrQyxDQUFDO0lBRTFGO0lBRUEsTUFBTWEsTUFBTUMsSUFBQUEsOEJBQWMsRUFBQ2xCLFNBQVNEO0lBQ3BDLE1BQU1vQixZQUFhWCxRQUFTLE1BQU1ZLElBQUFBLHNCQUFhLEVBQUNYO0lBQ2hELElBQUlVLFdBQVc7UUFDYixJQUFJRixLQUFLSSxPQUFPO1lBQ2RKLElBQUlJLEtBQUssQ0FBQ2IsSUFBSSxHQUFHVztRQUNuQixPQUFPO1lBQ0xGLElBQUlJLEtBQUssR0FBRztnQkFDVmIsTUFBTVc7WUFDUjtRQUNGO0lBQ0Y7SUFFQSxNQUFNRyxPQUFPO1FBQ1hyQjtRQUNBQztRQUNBQztRQUNBRTtRQUNBQztRQUNBQztRQUNBRztRQUNBQztRQUNBWjtRQUNBa0I7UUFDQUw7UUFDQUM7SUFDRjtJQUVBLElBQUliLFFBQVFDLEVBQUUsRUFBRTtRQUNkLE9BQU9zQixJQUFBQSxtQkFBVSxFQUFRRDtJQUMzQjtJQUNBLE9BQU9FLElBQUFBLGVBQU0sRUFBUUY7QUFDdkI7TUFFQSxXQUFleEIifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../../src/collections/operations/update.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAIhD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAA;AAE5C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACzD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,KAAK,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AACtE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAA;AAsBhD,MAAM,MAAM,SAAS,CAAC,CAAC,SAAS,gBAAgB,IAAI;IAClD,UAAU,EAAE,UAAU,CAAA;IACtB,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,CAAA;IACpB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,wBAAwB,CAAC,EAAE,OAAO,CAAA;IAClC,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,sBAAsB,CAAC,EAAE,OAAO,CAAA;IAChC,GAAG,EAAE,cAAc,CAAA;IACnB,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,KAAK,EAAE,KAAK,CAAA;CACb,CAAA;AAED,iBAAe,MAAM,CAAC,KAAK,SAAS,MAAM,cAAc,CAAC,aAAa,CAAC,EACrE,YAAY,EAAE,SAAS,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,CAAC,GAC5D,OAAO,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC,CA4WrC;AAED,eAAe,MAAM,CAAA"}
1
+ {"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../../src/collections/operations/update.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAIhD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAA;AAE5C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACzD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,KAAK,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AACtE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAA;AAsBhD,MAAM,MAAM,SAAS,CAAC,CAAC,SAAS,gBAAgB,IAAI;IAClD,UAAU,EAAE,UAAU,CAAA;IACtB,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,CAAA;IACpB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,wBAAwB,CAAC,EAAE,OAAO,CAAA;IAClC,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,sBAAsB,CAAC,EAAE,OAAO,CAAA;IAChC,GAAG,EAAE,cAAc,CAAA;IACnB,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,KAAK,EAAE,KAAK,CAAA;CACb,CAAA;AAED,iBAAe,MAAM,CAAC,KAAK,SAAS,MAAM,cAAc,CAAC,aAAa,CAAC,EACrE,YAAY,EAAE,SAAS,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,CAAC,GAC5D,OAAO,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC,CA6WrC;AAED,eAAe,MAAM,CAAA"}
@@ -35,21 +35,22 @@ function _interop_require_default(obj) {
35
35
  }
36
36
  async function update(incomingArgs) {
37
37
  let args = incomingArgs;
38
- // /////////////////////////////////////
39
- // beforeOperation - Collection
40
- // /////////////////////////////////////
41
- await args.collection.config.hooks.beforeOperation.reduce(async (priorHook, hook)=>{
42
- await priorHook;
43
- args = await hook({
44
- args,
45
- collection: args.collection.config,
46
- context: args.req.context,
47
- operation: 'update'
48
- }) || args;
49
- }, Promise.resolve());
50
- const { collection: { config: collectionConfig }, collection, depth, draft: draftArg = false, overrideAccess, overwriteExistingFiles = false, req: { locale, payload: { config }, payload, t }, req, showHiddenFields, where } = args;
51
38
  try {
52
- const shouldCommit = await (0, _initTransaction.initTransaction)(req);
39
+ const shouldCommit = await (0, _initTransaction.initTransaction)(args.req);
40
+ // /////////////////////////////////////
41
+ // beforeOperation - Collection
42
+ // /////////////////////////////////////
43
+ await args.collection.config.hooks.beforeOperation.reduce(async (priorHook, hook)=>{
44
+ await priorHook;
45
+ args = await hook({
46
+ args,
47
+ collection: args.collection.config,
48
+ context: args.req.context,
49
+ operation: 'update',
50
+ req: args.req
51
+ }) || args;
52
+ }, Promise.resolve());
53
+ const { collection: { config: collectionConfig }, collection, depth, draft: draftArg = false, overrideAccess, overwriteExistingFiles = false, req: { locale, payload: { config }, payload, t }, req, showHiddenFields, where } = args;
53
54
  if (!where) {
54
55
  throw new _errors.APIError("Missing 'where' query of documents to update.", _httpstatus.default.BAD_REQUEST);
55
56
  }
@@ -316,10 +317,10 @@ async function update(incomingArgs) {
316
317
  if (shouldCommit) await (0, _commitTransaction.commitTransaction)(req);
317
318
  return result;
318
319
  } catch (error) {
319
- await (0, _killTransaction.killTransaction)(req);
320
+ await (0, _killTransaction.killTransaction)(args.req);
320
321
  throw error;
321
322
  }
322
323
  }
323
324
  const _default = update;
324
325
 
325
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb2xsZWN0aW9ucy9vcGVyYXRpb25zL3VwZGF0ZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IERlZXBQYXJ0aWFsIH0gZnJvbSAndHMtZXNzZW50aWFscydcblxuaW1wb3J0IGh0dHBTdGF0dXMgZnJvbSAnaHR0cC1zdGF0dXMnXG5cbmltcG9ydCB0eXBlIHsgR2VuZXJhdGVkVHlwZXMgfSBmcm9tICcuLi8uLi8nXG5pbXBvcnQgdHlwZSB7IEFjY2Vzc1Jlc3VsdCB9IGZyb20gJy4uLy4uL2NvbmZpZy90eXBlcydcbmltcG9ydCB0eXBlIHsgUGF5bG9hZFJlcXVlc3QgfSBmcm9tICcuLi8uLi9leHByZXNzL3R5cGVzJ1xuaW1wb3J0IHR5cGUgeyBXaGVyZSB9IGZyb20gJy4uLy4uL3R5cGVzJ1xuaW1wb3J0IHR5cGUgeyBCdWxrT3BlcmF0aW9uUmVzdWx0LCBDb2xsZWN0aW9uIH0gZnJvbSAnLi4vY29uZmlnL3R5cGVzJ1xuaW1wb3J0IHR5cGUgeyBDcmVhdGVVcGRhdGVUeXBlIH0gZnJvbSAnLi9jcmVhdGUnXG5cbmltcG9ydCBleGVjdXRlQWNjZXNzIGZyb20gJy4uLy4uL2F1dGgvZXhlY3V0ZUFjY2VzcydcbmltcG9ydCB7IGNvbWJpbmVRdWVyaWVzIH0gZnJvbSAnLi4vLi4vZGF0YWJhc2UvY29tYmluZVF1ZXJpZXMnXG5pbXBvcnQgeyB2YWxpZGF0ZVF1ZXJ5UGF0aHMgfSBmcm9tICcuLi8uLi9kYXRhYmFzZS9xdWVyeVZhbGlkYXRpb24vdmFsaWRhdGVRdWVyeVBhdGhzJ1xuaW1wb3J0IHsgQVBJRXJyb3IgfSBmcm9tICcuLi8uLi9lcnJvcnMnXG5pbXBvcnQgeyBhZnRlckNoYW5nZSB9IGZyb20gJy4uLy4uL2ZpZWxkcy9ob29rcy9hZnRlckNoYW5nZSdcbmltcG9ydCB7IGFmdGVyUmVhZCB9IGZyb20gJy4uLy4uL2ZpZWxkcy9ob29rcy9hZnRlclJlYWQnXG5pbXBvcnQgeyBiZWZvcmVDaGFuZ2UgfSBmcm9tICcuLi8uLi9maWVsZHMvaG9va3MvYmVmb3JlQ2hhbmdlJ1xuaW1wb3J0IHsgYmVmb3JlVmFsaWRhdGUgfSBmcm9tICcuLi8uLi9maWVsZHMvaG9va3MvYmVmb3JlVmFsaWRhdGUnXG5pbXBvcnQgeyBkZWxldGVBc3NvY2lhdGVkRmlsZXMgfSBmcm9tICcuLi8uLi91cGxvYWRzL2RlbGV0ZUFzc29jaWF0ZWRGaWxlcydcbmltcG9ydCB7IGdlbmVyYXRlRmlsZURhdGEgfSBmcm9tICcuLi8uLi91cGxvYWRzL2dlbmVyYXRlRmlsZURhdGEnXG5pbXBvcnQgeyB1bmxpbmtUZW1wRmlsZXMgfSBmcm9tICcuLi8uLi91cGxvYWRzL3VubGlua1RlbXBGaWxlcydcbmltcG9ydCB7IHVwbG9hZEZpbGVzIH0gZnJvbSAnLi4vLi4vdXBsb2Fkcy91cGxvYWRGaWxlcydcbmltcG9ydCB7IGNvbW1pdFRyYW5zYWN0aW9uIH0gZnJvbSAnLi4vLi4vdXRpbGl0aWVzL2NvbW1pdFRyYW5zYWN0aW9uJ1xuaW1wb3J0IHsgaW5pdFRyYW5zYWN0aW9uIH0gZnJvbSAnLi4vLi4vdXRpbGl0aWVzL2luaXRUcmFuc2FjdGlvbidcbmltcG9ydCB7IGtpbGxUcmFuc2FjdGlvbiB9IGZyb20gJy4uLy4uL3V0aWxpdGllcy9raWxsVHJhbnNhY3Rpb24nXG5pbXBvcnQgeyBidWlsZFZlcnNpb25Db2xsZWN0aW9uRmllbGRzIH0gZnJvbSAnLi4vLi4vdmVyc2lvbnMvYnVpbGRDb2xsZWN0aW9uRmllbGRzJ1xuaW1wb3J0IHsgYXBwZW5kVmVyc2lvblRvUXVlcnlLZXkgfSBmcm9tICcuLi8uLi92ZXJzaW9ucy9kcmFmdHMvYXBwZW5kVmVyc2lvblRvUXVlcnlLZXknXG5pbXBvcnQgeyBzYXZlVmVyc2lvbiB9IGZyb20gJy4uLy4uL3ZlcnNpb25zL3NhdmVWZXJzaW9uJ1xuaW1wb3J0IHsgYnVpbGRBZnRlck9wZXJhdGlvbiB9IGZyb20gJy4vdXRpbHMnXG5cbmV4cG9ydCB0eXBlIEFyZ3VtZW50czxUIGV4dGVuZHMgQ3JlYXRlVXBkYXRlVHlwZT4gPSB7XG4gIGNvbGxlY3Rpb246IENvbGxlY3Rpb25cbiAgZGF0YTogRGVlcFBhcnRpYWw8VD5cbiAgZGVwdGg/OiBudW1iZXJcbiAgZGlzYWJsZVZlcmlmaWNhdGlvbkVtYWlsPzogYm9vbGVhblxuICBkcmFmdD86IGJvb2xlYW5cbiAgb3ZlcnJpZGVBY2Nlc3M/OiBib29sZWFuXG4gIG92ZXJ3cml0ZUV4aXN0aW5nRmlsZXM/OiBib29sZWFuXG4gIHJlcTogUGF5bG9hZFJlcXVlc3RcbiAgc2hvd0hpZGRlbkZpZWxkcz86IGJvb2xlYW5cbiAgd2hlcmU6IFdoZXJlXG59XG5cbmFzeW5jIGZ1bmN0aW9uIHVwZGF0ZTxUU2x1ZyBleHRlbmRzIGtleW9mIEdlbmVyYXRlZFR5cGVzWydjb2xsZWN0aW9ucyddPihcbiAgaW5jb21pbmdBcmdzOiBBcmd1bWVudHM8R2VuZXJhdGVkVHlwZXNbJ2NvbGxlY3Rpb25zJ11bVFNsdWddPixcbik6IFByb21pc2U8QnVsa09wZXJhdGlvblJlc3VsdDxUU2x1Zz4+IHtcbiAgbGV0IGFyZ3MgPSBpbmNvbWluZ0FyZ3NcblxuICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4gIC8vIGJlZm9yZU9wZXJhdGlvbiAtIENvbGxlY3Rpb25cbiAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4gIGF3YWl0IGFyZ3MuY29sbGVjdGlvbi5jb25maWcuaG9va3MuYmVmb3JlT3BlcmF0aW9uLnJlZHVjZShhc3luYyAocHJpb3JIb29rLCBob29rKSA9PiB7XG4gICAgYXdhaXQgcHJpb3JIb29rXG5cbiAgICBhcmdzID1cbiAgICAgIChhd2FpdCBob29rKHtcbiAgICAgICAgYXJncyxcbiAgICAgICAgY29sbGVjdGlvbjogYXJncy5jb2xsZWN0aW9uLmNvbmZpZyxcbiAgICAgICAgY29udGV4dDogYXJncy5yZXEuY29udGV4dCxcbiAgICAgICAgb3BlcmF0aW9uOiAndXBkYXRlJyxcbiAgICAgIH0pKSB8fCBhcmdzXG4gIH0sIFByb21pc2UucmVzb2x2ZSgpKVxuXG4gIGNvbnN0IHtcbiAgICBjb2xsZWN0aW9uOiB7IGNvbmZpZzogY29sbGVjdGlvbkNvbmZpZyB9LFxuICAgIGNvbGxlY3Rpb24sXG4gICAgZGVwdGgsXG4gICAgZHJhZnQ6IGRyYWZ0QXJnID0gZmFsc2UsXG4gICAgb3ZlcnJpZGVBY2Nlc3MsXG4gICAgb3ZlcndyaXRlRXhpc3RpbmdGaWxlcyA9IGZhbHNlLFxuICAgIHJlcToge1xuICAgICAgbG9jYWxlLFxuICAgICAgcGF5bG9hZDogeyBjb25maWcgfSxcbiAgICAgIHBheWxvYWQsXG4gICAgICB0LFxuICAgIH0sXG4gICAgcmVxLFxuICAgIHNob3dIaWRkZW5GaWVsZHMsXG4gICAgd2hlcmUsXG4gIH0gPSBhcmdzXG5cbiAgdHJ5IHtcbiAgICBjb25zdCBzaG91bGRDb21taXQgPSBhd2FpdCBpbml0VHJhbnNhY3Rpb24ocmVxKVxuXG4gICAgaWYgKCF3aGVyZSkge1xuICAgICAgdGhyb3cgbmV3IEFQSUVycm9yKFwiTWlzc2luZyAnd2hlcmUnIHF1ZXJ5IG9mIGRvY3VtZW50cyB0byB1cGRhdGUuXCIsIGh0dHBTdGF0dXMuQkFEX1JFUVVFU1QpXG4gICAgfVxuXG4gICAgY29uc3QgeyBkYXRhOiBidWxrVXBkYXRlRGF0YSB9ID0gYXJnc1xuICAgIGNvbnN0IHNob3VsZFNhdmVEcmFmdCA9IEJvb2xlYW4oZHJhZnRBcmcgJiYgY29sbGVjdGlvbkNvbmZpZy52ZXJzaW9ucy5kcmFmdHMpXG5cbiAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4gICAgLy8gQWNjZXNzXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4gICAgbGV0IGFjY2Vzc1Jlc3VsdDogQWNjZXNzUmVzdWx0XG4gICAgaWYgKCFvdmVycmlkZUFjY2Vzcykge1xuICAgICAgYWNjZXNzUmVzdWx0ID0gYXdhaXQgZXhlY3V0ZUFjY2Vzcyh7IHJlcSB9LCBjb2xsZWN0aW9uQ29uZmlnLmFjY2Vzcy51cGRhdGUpXG4gICAgfVxuXG4gICAgYXdhaXQgdmFsaWRhdGVRdWVyeVBhdGhzKHtcbiAgICAgIGNvbGxlY3Rpb25Db25maWcsXG4gICAgICBvdmVycmlkZUFjY2VzcyxcbiAgICAgIHJlcSxcbiAgICAgIHdoZXJlLFxuICAgIH0pXG5cbiAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4gICAgLy8gUmV0cmlldmUgZG9jdW1lbnRzXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4gICAgY29uc3QgZnVsbFdoZXJlID0gY29tYmluZVF1ZXJpZXMod2hlcmUsIGFjY2Vzc1Jlc3VsdClcblxuICAgIGxldCBkb2NzXG5cbiAgICBpZiAoY29sbGVjdGlvbkNvbmZpZy52ZXJzaW9ucz8uZHJhZnRzICYmIHNob3VsZFNhdmVEcmFmdCkge1xuICAgICAgY29uc3QgdmVyc2lvbnNXaGVyZSA9IGFwcGVuZFZlcnNpb25Ub1F1ZXJ5S2V5KGZ1bGxXaGVyZSlcblxuICAgICAgYXdhaXQgdmFsaWRhdGVRdWVyeVBhdGhzKHtcbiAgICAgICAgY29sbGVjdGlvbkNvbmZpZzogY29sbGVjdGlvbi5jb25maWcsXG4gICAgICAgIG92ZXJyaWRlQWNjZXNzLFxuICAgICAgICByZXEsXG4gICAgICAgIHZlcnNpb25GaWVsZHM6IGJ1aWxkVmVyc2lvbkNvbGxlY3Rpb25GaWVsZHMoY29sbGVjdGlvbi5jb25maWcpLFxuICAgICAgICB3aGVyZTogdmVyc2lvbnNXaGVyZSxcbiAgICAgIH0pXG5cbiAgICAgIGNvbnN0IHF1ZXJ5ID0gYXdhaXQgcGF5bG9hZC5kYi5xdWVyeURyYWZ0czxHZW5lcmF0ZWRUeXBlc1snY29sbGVjdGlvbnMnXVtUU2x1Z10+KHtcbiAgICAgICAgY29sbGVjdGlvbjogY29sbGVjdGlvbkNvbmZpZy5zbHVnLFxuICAgICAgICBsb2NhbGUsXG4gICAgICAgIHJlcSxcbiAgICAgICAgd2hlcmU6IHZlcnNpb25zV2hlcmUsXG4gICAgICB9KVxuXG4gICAgICBkb2NzID0gcXVlcnkuZG9jc1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBxdWVyeSA9IGF3YWl0IHBheWxvYWQuZGIuZmluZCh7XG4gICAgICAgIGNvbGxlY3Rpb246IGNvbGxlY3Rpb25Db25maWcuc2x1ZyxcbiAgICAgICAgbGltaXQ6IDAsXG4gICAgICAgIGxvY2FsZSxcbiAgICAgICAgcGFnaW5hdGlvbjogZmFsc2UsXG4gICAgICAgIHJlcSxcbiAgICAgICAgd2hlcmU6IGZ1bGxXaGVyZSxcbiAgICAgIH0pXG5cbiAgICAgIGRvY3MgPSBxdWVyeS5kb2NzXG4gICAgfVxuXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vIEdlbmVyYXRlIGRhdGEgZm9yIGFsbCBmaWxlcyBhbmQgc2l6ZXNcbiAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbiAgICBjb25zdCB7IGRhdGE6IG5ld0ZpbGVEYXRhLCBmaWxlczogZmlsZXNUb1VwbG9hZCB9ID0gYXdhaXQgZ2VuZXJhdGVGaWxlRGF0YSh7XG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgY29uZmlnLFxuICAgICAgZGF0YTogYnVsa1VwZGF0ZURhdGEsXG4gICAgICBvdmVyd3JpdGVFeGlzdGluZ0ZpbGVzLFxuICAgICAgcmVxLFxuICAgICAgdGhyb3dPbk1pc3NpbmdGaWxlOiBmYWxzZSxcbiAgICB9KVxuXG4gICAgY29uc3QgZXJyb3JzID0gW11cblxuICAgIGNvbnN0IHByb21pc2VzID0gZG9jcy5tYXAoYXN5bmMgKGRvYykgPT4ge1xuICAgICAgY29uc3QgeyBpZCB9ID0gZG9jXG4gICAgICBsZXQgZGF0YSA9IHtcbiAgICAgICAgLi4ubmV3RmlsZURhdGEsXG4gICAgICAgIC4uLmJ1bGtVcGRhdGVEYXRhLFxuICAgICAgfVxuXG4gICAgICB0cnkge1xuICAgICAgICBjb25zdCBvcmlnaW5hbERvYyA9IGF3YWl0IGFmdGVyUmVhZCh7XG4gICAgICAgICAgY29sbGVjdGlvbjogY29sbGVjdGlvbkNvbmZpZyxcbiAgICAgICAgICBjb250ZXh0OiByZXEuY29udGV4dCxcbiAgICAgICAgICBkZXB0aDogMCxcbiAgICAgICAgICBkb2MsXG4gICAgICAgICAgZ2xvYmFsOiBudWxsLFxuICAgICAgICAgIG92ZXJyaWRlQWNjZXNzOiB0cnVlLFxuICAgICAgICAgIHJlcSxcbiAgICAgICAgICBzaG93SGlkZGVuRmllbGRzOiB0cnVlLFxuICAgICAgICB9KVxuXG4gICAgICAgIGF3YWl0IGRlbGV0ZUFzc29jaWF0ZWRGaWxlcyh7XG4gICAgICAgICAgY29sbGVjdGlvbkNvbmZpZyxcbiAgICAgICAgICBjb25maWcsXG4gICAgICAgICAgZG9jLFxuICAgICAgICAgIGZpbGVzOiBmaWxlc1RvVXBsb2FkLFxuICAgICAgICAgIG92ZXJyaWRlRGVsZXRlOiBmYWxzZSxcbiAgICAgICAgICB0LFxuICAgICAgICB9KVxuXG4gICAgICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgICAgICAgLy8gYmVmb3JlVmFsaWRhdGUgLSBGaWVsZHNcbiAgICAgICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4gICAgICAgIGRhdGEgPSBhd2FpdCBiZWZvcmVWYWxpZGF0ZTxEZWVwUGFydGlhbDxHZW5lcmF0ZWRUeXBlc1snY29sbGVjdGlvbnMnXVtUU2x1Z10+Pih7XG4gICAgICAgICAgaWQsXG4gICAgICAgICAgY29sbGVjdGlvbjogY29sbGVjdGlvbkNvbmZpZyxcbiAgICAgICAgICBjb250ZXh0OiByZXEuY29udGV4dCxcbiAgICAgICAgICBkYXRhLFxuICAgICAgICAgIGRvYzogb3JpZ2luYWxEb2MsXG4gICAgICAgICAgZ2xvYmFsOiBudWxsLFxuICAgICAgICAgIG9wZXJhdGlvbjogJ3VwZGF0ZScsXG4gICAgICAgICAgb3ZlcnJpZGVBY2Nlc3MsXG4gICAgICAgICAgcmVxLFxuICAgICAgICB9KVxuXG4gICAgICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgICAgICAgLy8gYmVmb3JlVmFsaWRhdGUgLSBDb2xsZWN0aW9uXG4gICAgICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuICAgICAgICBhd2FpdCBjb2xsZWN0aW9uQ29uZmlnLmhvb2tzLmJlZm9yZVZhbGlkYXRlLnJlZHVjZShhc3luYyAocHJpb3JIb29rLCBob29rKSA9PiB7XG4gICAgICAgICAgYXdhaXQgcHJpb3JIb29rXG5cbiAgICAgICAgICBkYXRhID1cbiAgICAgICAgICAgIChhd2FpdCBob29rKHtcbiAgICAgICAgICAgICAgY29sbGVjdGlvbjogY29sbGVjdGlvbkNvbmZpZyxcbiAgICAgICAgICAgICAgY29udGV4dDogcmVxLmNvbnRleHQsXG4gICAgICAgICAgICAgIGRhdGEsXG4gICAgICAgICAgICAgIG9wZXJhdGlvbjogJ3VwZGF0ZScsXG4gICAgICAgICAgICAgIG9yaWdpbmFsRG9jLFxuICAgICAgICAgICAgICByZXEsXG4gICAgICAgICAgICB9KSkgfHwgZGF0YVxuICAgICAgICB9LCBQcm9taXNlLnJlc29sdmUoKSlcblxuICAgICAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4gICAgICAgIC8vIFdyaXRlIGZpbGVzIHRvIGxvY2FsIHN0b3JhZ2VcbiAgICAgICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4gICAgICAgIGlmICghY29sbGVjdGlvbkNvbmZpZy51cGxvYWQuZGlzYWJsZUxvY2FsU3RvcmFnZSkge1xuICAgICAgICAgIGF3YWl0IHVwbG9hZEZpbGVzKHBheWxvYWQsIGZpbGVzVG9VcGxvYWQsIHQpXG4gICAgICAgIH1cblxuICAgICAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4gICAgICAgIC8vIGJlZm9yZUNoYW5nZSAtIENvbGxlY3Rpb25cbiAgICAgICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4gICAgICAgIGF3YWl0IGNvbGxlY3Rpb25Db25maWcuaG9va3MuYmVmb3JlQ2hhbmdlLnJlZHVjZShhc3luYyAocHJpb3JIb29rLCBob29rKSA9PiB7XG4gICAgICAgICAgYXdhaXQgcHJpb3JIb29rXG5cbiAgICAgICAgICBkYXRhID1cbiAgICAgICAgICAgIChhd2FpdCBob29rKHtcbiAgICAgICAgICAgICAgY29sbGVjdGlvbjogY29sbGVjdGlvbkNvbmZpZyxcbiAgICAgICAgICAgICAgY29udGV4dDogcmVxLmNvbnRleHQsXG4gICAgICAgICAgICAgIGRhdGEsXG4gICAgICAgICAgICAgIG9wZXJhdGlvbjogJ3VwZGF0ZScsXG4gICAgICAgICAgICAgIG9yaWdpbmFsRG9jLFxuICAgICAgICAgICAgICByZXEsXG4gICAgICAgICAgICB9KSkgfHwgZGF0YVxuICAgICAgICB9LCBQcm9taXNlLnJlc29sdmUoKSlcblxuICAgICAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4gICAgICAgIC8vIGJlZm9yZUNoYW5nZSAtIEZpZWxkc1xuICAgICAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbiAgICAgICAgbGV0IHJlc3VsdCA9IGF3YWl0IGJlZm9yZUNoYW5nZTxHZW5lcmF0ZWRUeXBlc1snY29sbGVjdGlvbnMnXVtUU2x1Z10+KHtcbiAgICAgICAgICBpZCxcbiAgICAgICAgICBjb2xsZWN0aW9uOiBjb2xsZWN0aW9uQ29uZmlnLFxuICAgICAgICAgIGNvbnRleHQ6IHJlcS5jb250ZXh0LFxuICAgICAgICAgIGRhdGEsXG4gICAgICAgICAgZG9jOiBvcmlnaW5hbERvYyxcbiAgICAgICAgICBkb2NXaXRoTG9jYWxlczogZG9jLFxuICAgICAgICAgIGdsb2JhbDogbnVsbCxcbiAgICAgICAgICBvcGVyYXRpb246ICd1cGRhdGUnLFxuICAgICAgICAgIHJlcSxcbiAgICAgICAgICBza2lwVmFsaWRhdGlvbjogc2hvdWxkU2F2ZURyYWZ0IHx8IGRhdGEuX3N0YXR1cyA9PT0gJ2RyYWZ0JyxcbiAgICAgICAgfSlcblxuICAgICAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4gICAgICAgIC8vIFVwZGF0ZVxuICAgICAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbiAgICAgICAgaWYgKCFzaG91bGRTYXZlRHJhZnQpIHtcbiAgICAgICAgICByZXN1bHQgPSBhd2FpdCByZXEucGF5bG9hZC5kYi51cGRhdGVPbmUoe1xuICAgICAgICAgICAgaWQsXG4gICAgICAgICAgICBjb2xsZWN0aW9uOiBjb2xsZWN0aW9uQ29uZmlnLnNsdWcsXG4gICAgICAgICAgICBkYXRhOiByZXN1bHQsXG4gICAgICAgICAgICBsb2NhbGUsXG4gICAgICAgICAgICByZXEsXG4gICAgICAgICAgfSlcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgICAgICAgLy8gQ3JlYXRlIHZlcnNpb25cbiAgICAgICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4gICAgICAgIGlmIChjb2xsZWN0aW9uQ29uZmlnLnZlcnNpb25zKSB7XG4gICAgICAgICAgcmVzdWx0ID0gYXdhaXQgc2F2ZVZlcnNpb24oe1xuICAgICAgICAgICAgaWQsXG4gICAgICAgICAgICBjb2xsZWN0aW9uOiBjb2xsZWN0aW9uQ29uZmlnLFxuICAgICAgICAgICAgZG9jV2l0aExvY2FsZXM6IHtcbiAgICAgICAgICAgICAgLi4ucmVzdWx0LFxuICAgICAgICAgICAgICBjcmVhdGVkQXQ6IGRvYy5jcmVhdGVkQXQsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgZHJhZnQ6IHNob3VsZFNhdmVEcmFmdCxcbiAgICAgICAgICAgIHBheWxvYWQsXG4gICAgICAgICAgICByZXEsXG4gICAgICAgICAgfSlcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgICAgICAgLy8gYWZ0ZXJSZWFkIC0gRmllbGRzXG4gICAgICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuICAgICAgICByZXN1bHQgPSBhd2FpdCBhZnRlclJlYWQoe1xuICAgICAgICAgIGNvbGxlY3Rpb246IGNvbGxlY3Rpb25Db25maWcsXG4gICAgICAgICAgY29udGV4dDogcmVxLmNvbnRleHQsXG4gICAgICAgICAgZGVwdGgsXG4gICAgICAgICAgZG9jOiByZXN1bHQsXG4gICAgICAgICAgZ2xvYmFsOiBudWxsLFxuICAgICAgICAgIG92ZXJyaWRlQWNjZXNzLFxuICAgICAgICAgIHJlcSxcbiAgICAgICAgICBzaG93SGlkZGVuRmllbGRzLFxuICAgICAgICB9KVxuXG4gICAgICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgICAgICAgLy8gYWZ0ZXJSZWFkIC0gQ29sbGVjdGlvblxuICAgICAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbiAgICAgICAgYXdhaXQgY29sbGVjdGlvbkNvbmZpZy5ob29rcy5hZnRlclJlYWQucmVkdWNlKGFzeW5jIChwcmlvckhvb2ssIGhvb2spID0+IHtcbiAgICAgICAgICBhd2FpdCBwcmlvckhvb2tcblxuICAgICAgICAgIHJlc3VsdCA9XG4gICAgICAgICAgICAoYXdhaXQgaG9vayh7XG4gICAgICAgICAgICAgIGNvbGxlY3Rpb246IGNvbGxlY3Rpb25Db25maWcsXG4gICAgICAgICAgICAgIGNvbnRleHQ6IHJlcS5jb250ZXh0LFxuICAgICAgICAgICAgICBkb2M6IHJlc3VsdCxcbiAgICAgICAgICAgICAgcmVxLFxuICAgICAgICAgICAgfSkpIHx8IHJlc3VsdFxuICAgICAgICB9LCBQcm9taXNlLnJlc29sdmUoKSlcblxuICAgICAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4gICAgICAgIC8vIGFmdGVyQ2hhbmdlIC0gRmllbGRzXG4gICAgICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuICAgICAgICByZXN1bHQgPSBhd2FpdCBhZnRlckNoYW5nZTxHZW5lcmF0ZWRUeXBlc1snY29sbGVjdGlvbnMnXVtUU2x1Z10+KHtcbiAgICAgICAgICBjb2xsZWN0aW9uOiBjb2xsZWN0aW9uQ29uZmlnLFxuICAgICAgICAgIGNvbnRleHQ6IHJlcS5jb250ZXh0LFxuICAgICAgICAgIGRhdGEsXG4gICAgICAgICAgZG9jOiByZXN1bHQsXG4gICAgICAgICAgZ2xvYmFsOiBudWxsLFxuICAgICAgICAgIG9wZXJhdGlvbjogJ3VwZGF0ZScsXG4gICAgICAgICAgcHJldmlvdXNEb2M6IG9yaWdpbmFsRG9jLFxuICAgICAgICAgIHJlcSxcbiAgICAgICAgfSlcblxuICAgICAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4gICAgICAgIC8vIGFmdGVyQ2hhbmdlIC0gQ29sbGVjdGlvblxuICAgICAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbiAgICAgICAgYXdhaXQgY29sbGVjdGlvbkNvbmZpZy5ob29rcy5hZnRlckNoYW5nZS5yZWR1Y2UoYXN5bmMgKHByaW9ySG9vaywgaG9vaykgPT4ge1xuICAgICAgICAgIGF3YWl0IHByaW9ySG9va1xuXG4gICAgICAgICAgcmVzdWx0ID1cbiAgICAgICAgICAgIChhd2FpdCBob29rKHtcbiAgICAgICAgICAgICAgY29sbGVjdGlvbjogY29sbGVjdGlvbkNvbmZpZyxcbiAgICAgICAgICAgICAgY29udGV4dDogcmVxLmNvbnRleHQsXG4gICAgICAgICAgICAgIGRvYzogcmVzdWx0LFxuICAgICAgICAgICAgICBvcGVyYXRpb246ICd1cGRhdGUnLFxuICAgICAgICAgICAgICBwcmV2aW91c0RvYzogb3JpZ2luYWxEb2MsXG4gICAgICAgICAgICAgIHJlcSxcbiAgICAgICAgICAgIH0pKSB8fCByZXN1bHRcbiAgICAgICAgfSwgUHJvbWlzZS5yZXNvbHZlKCkpXG5cbiAgICAgICAgYXdhaXQgdW5saW5rVGVtcEZpbGVzKHtcbiAgICAgICAgICBjb2xsZWN0aW9uQ29uZmlnLFxuICAgICAgICAgIGNvbmZpZyxcbiAgICAgICAgICByZXEsXG4gICAgICAgIH0pXG5cbiAgICAgICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgICAgICAvLyBSZXR1cm4gcmVzdWx0c1xuICAgICAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbiAgICAgICAgcmV0dXJuIHJlc3VsdFxuICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgZXJyb3JzLnB1c2goe1xuICAgICAgICAgIGlkLFxuICAgICAgICAgIG1lc3NhZ2U6IGVycm9yLm1lc3NhZ2UsXG4gICAgICAgIH0pXG4gICAgICB9XG4gICAgICByZXR1cm4gbnVsbFxuICAgIH0pXG5cbiAgICBjb25zdCBhd2FpdGVkRG9jcyA9IGF3YWl0IFByb21pc2UuYWxsKHByb21pc2VzKVxuXG4gICAgbGV0IHJlc3VsdCA9IHtcbiAgICAgIGRvY3M6IGF3YWl0ZWREb2NzLmZpbHRlcihCb29sZWFuKSxcbiAgICAgIGVycm9ycyxcbiAgICB9XG5cbiAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4gICAgLy8gYWZ0ZXJPcGVyYXRpb24gLSBDb2xsZWN0aW9uXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4gICAgcmVzdWx0ID0gYXdhaXQgYnVpbGRBZnRlck9wZXJhdGlvbjxHZW5lcmF0ZWRUeXBlc1snY29sbGVjdGlvbnMnXVtUU2x1Z10+KHtcbiAgICAgIGFyZ3MsXG4gICAgICBjb2xsZWN0aW9uOiBjb2xsZWN0aW9uQ29uZmlnLFxuICAgICAgb3BlcmF0aW9uOiAndXBkYXRlJyxcbiAgICAgIHJlc3VsdCxcbiAgICB9KVxuXG4gICAgaWYgKHNob3VsZENvbW1pdCkgYXdhaXQgY29tbWl0VHJhbnNhY3Rpb24ocmVxKVxuXG4gICAgcmV0dXJuIHJlc3VsdFxuICB9IGNhdGNoIChlcnJvcjogdW5rbm93bikge1xuICAgIGF3YWl0IGtpbGxUcmFuc2FjdGlvbihyZXEpXG4gICAgdGhyb3cgZXJyb3JcbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCB1cGRhdGVcbiJdLCJuYW1lcyI6WyJ1cGRhdGUiLCJpbmNvbWluZ0FyZ3MiLCJhcmdzIiwiY29sbGVjdGlvbiIsImNvbmZpZyIsImhvb2tzIiwiYmVmb3JlT3BlcmF0aW9uIiwicmVkdWNlIiwicHJpb3JIb29rIiwiaG9vayIsImNvbnRleHQiLCJyZXEiLCJvcGVyYXRpb24iLCJQcm9taXNlIiwicmVzb2x2ZSIsImNvbGxlY3Rpb25Db25maWciLCJkZXB0aCIsImRyYWZ0IiwiZHJhZnRBcmciLCJvdmVycmlkZUFjY2VzcyIsIm92ZXJ3cml0ZUV4aXN0aW5nRmlsZXMiLCJsb2NhbGUiLCJwYXlsb2FkIiwidCIsInNob3dIaWRkZW5GaWVsZHMiLCJ3aGVyZSIsInNob3VsZENvbW1pdCIsImluaXRUcmFuc2FjdGlvbiIsIkFQSUVycm9yIiwiaHR0cFN0YXR1cyIsIkJBRF9SRVFVRVNUIiwiZGF0YSIsImJ1bGtVcGRhdGVEYXRhIiwic2hvdWxkU2F2ZURyYWZ0IiwiQm9vbGVhbiIsInZlcnNpb25zIiwiZHJhZnRzIiwiYWNjZXNzUmVzdWx0IiwiZXhlY3V0ZUFjY2VzcyIsImFjY2VzcyIsInZhbGlkYXRlUXVlcnlQYXRocyIsImZ1bGxXaGVyZSIsImNvbWJpbmVRdWVyaWVzIiwiZG9jcyIsInZlcnNpb25zV2hlcmUiLCJhcHBlbmRWZXJzaW9uVG9RdWVyeUtleSIsInZlcnNpb25GaWVsZHMiLCJidWlsZFZlcnNpb25Db2xsZWN0aW9uRmllbGRzIiwicXVlcnkiLCJkYiIsInF1ZXJ5RHJhZnRzIiwic2x1ZyIsImZpbmQiLCJsaW1pdCIsInBhZ2luYXRpb24iLCJuZXdGaWxlRGF0YSIsImZpbGVzIiwiZmlsZXNUb1VwbG9hZCIsImdlbmVyYXRlRmlsZURhdGEiLCJ0aHJvd09uTWlzc2luZ0ZpbGUiLCJlcnJvcnMiLCJwcm9taXNlcyIsIm1hcCIsImRvYyIsImlkIiwib3JpZ2luYWxEb2MiLCJhZnRlclJlYWQiLCJnbG9iYWwiLCJkZWxldGVBc3NvY2lhdGVkRmlsZXMiLCJvdmVycmlkZURlbGV0ZSIsImJlZm9yZVZhbGlkYXRlIiwidXBsb2FkIiwiZGlzYWJsZUxvY2FsU3RvcmFnZSIsInVwbG9hZEZpbGVzIiwiYmVmb3JlQ2hhbmdlIiwicmVzdWx0IiwiZG9jV2l0aExvY2FsZXMiLCJza2lwVmFsaWRhdGlvbiIsIl9zdGF0dXMiLCJ1cGRhdGVPbmUiLCJzYXZlVmVyc2lvbiIsImNyZWF0ZWRBdCIsImFmdGVyQ2hhbmdlIiwicHJldmlvdXNEb2MiLCJ1bmxpbmtUZW1wRmlsZXMiLCJlcnJvciIsInB1c2giLCJtZXNzYWdlIiwiYXdhaXRlZERvY3MiLCJhbGwiLCJmaWx0ZXIiLCJidWlsZEFmdGVyT3BlcmF0aW9uIiwiY29tbWl0VHJhbnNhY3Rpb24iLCJraWxsVHJhbnNhY3Rpb24iXSwibWFwcGluZ3MiOiI7Ozs7K0JBNFpBOzs7ZUFBQTs7O21FQTFadUI7c0VBU0c7Z0NBQ0s7b0NBQ0k7d0JBQ1Y7NkJBQ0c7MkJBQ0Y7OEJBQ0c7Z0NBQ0U7dUNBQ087a0NBQ0w7aUNBQ0Q7NkJBQ0o7bUNBQ007aUNBQ0Y7aUNBQ0E7dUNBQ2E7eUNBQ0w7NkJBQ1o7dUJBQ1E7Ozs7OztBQWVwQyxlQUFlQSxPQUNiQyxZQUE2RDtJQUU3RCxJQUFJQyxPQUFPRDtJQUVYLHdDQUF3QztJQUN4QywrQkFBK0I7SUFDL0Is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
326
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb2xsZWN0aW9ucy9vcGVyYXRpb25zL3VwZGF0ZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IERlZXBQYXJ0aWFsIH0gZnJvbSAndHMtZXNzZW50aWFscydcblxuaW1wb3J0IGh0dHBTdGF0dXMgZnJvbSAnaHR0cC1zdGF0dXMnXG5cbmltcG9ydCB0eXBlIHsgR2VuZXJhdGVkVHlwZXMgfSBmcm9tICcuLi8uLi8nXG5pbXBvcnQgdHlwZSB7IEFjY2Vzc1Jlc3VsdCB9IGZyb20gJy4uLy4uL2NvbmZpZy90eXBlcydcbmltcG9ydCB0eXBlIHsgUGF5bG9hZFJlcXVlc3QgfSBmcm9tICcuLi8uLi9leHByZXNzL3R5cGVzJ1xuaW1wb3J0IHR5cGUgeyBXaGVyZSB9IGZyb20gJy4uLy4uL3R5cGVzJ1xuaW1wb3J0IHR5cGUgeyBCdWxrT3BlcmF0aW9uUmVzdWx0LCBDb2xsZWN0aW9uIH0gZnJvbSAnLi4vY29uZmlnL3R5cGVzJ1xuaW1wb3J0IHR5cGUgeyBDcmVhdGVVcGRhdGVUeXBlIH0gZnJvbSAnLi9jcmVhdGUnXG5cbmltcG9ydCBleGVjdXRlQWNjZXNzIGZyb20gJy4uLy4uL2F1dGgvZXhlY3V0ZUFjY2VzcydcbmltcG9ydCB7IGNvbWJpbmVRdWVyaWVzIH0gZnJvbSAnLi4vLi4vZGF0YWJhc2UvY29tYmluZVF1ZXJpZXMnXG5pbXBvcnQgeyB2YWxpZGF0ZVF1ZXJ5UGF0aHMgfSBmcm9tICcuLi8uLi9kYXRhYmFzZS9xdWVyeVZhbGlkYXRpb24vdmFsaWRhdGVRdWVyeVBhdGhzJ1xuaW1wb3J0IHsgQVBJRXJyb3IgfSBmcm9tICcuLi8uLi9lcnJvcnMnXG5pbXBvcnQgeyBhZnRlckNoYW5nZSB9IGZyb20gJy4uLy4uL2ZpZWxkcy9ob29rcy9hZnRlckNoYW5nZSdcbmltcG9ydCB7IGFmdGVyUmVhZCB9IGZyb20gJy4uLy4uL2ZpZWxkcy9ob29rcy9hZnRlclJlYWQnXG5pbXBvcnQgeyBiZWZvcmVDaGFuZ2UgfSBmcm9tICcuLi8uLi9maWVsZHMvaG9va3MvYmVmb3JlQ2hhbmdlJ1xuaW1wb3J0IHsgYmVmb3JlVmFsaWRhdGUgfSBmcm9tICcuLi8uLi9maWVsZHMvaG9va3MvYmVmb3JlVmFsaWRhdGUnXG5pbXBvcnQgeyBkZWxldGVBc3NvY2lhdGVkRmlsZXMgfSBmcm9tICcuLi8uLi91cGxvYWRzL2RlbGV0ZUFzc29jaWF0ZWRGaWxlcydcbmltcG9ydCB7IGdlbmVyYXRlRmlsZURhdGEgfSBmcm9tICcuLi8uLi91cGxvYWRzL2dlbmVyYXRlRmlsZURhdGEnXG5pbXBvcnQgeyB1bmxpbmtUZW1wRmlsZXMgfSBmcm9tICcuLi8uLi91cGxvYWRzL3VubGlua1RlbXBGaWxlcydcbmltcG9ydCB7IHVwbG9hZEZpbGVzIH0gZnJvbSAnLi4vLi4vdXBsb2Fkcy91cGxvYWRGaWxlcydcbmltcG9ydCB7IGNvbW1pdFRyYW5zYWN0aW9uIH0gZnJvbSAnLi4vLi4vdXRpbGl0aWVzL2NvbW1pdFRyYW5zYWN0aW9uJ1xuaW1wb3J0IHsgaW5pdFRyYW5zYWN0aW9uIH0gZnJvbSAnLi4vLi4vdXRpbGl0aWVzL2luaXRUcmFuc2FjdGlvbidcbmltcG9ydCB7IGtpbGxUcmFuc2FjdGlvbiB9IGZyb20gJy4uLy4uL3V0aWxpdGllcy9raWxsVHJhbnNhY3Rpb24nXG5pbXBvcnQgeyBidWlsZFZlcnNpb25Db2xsZWN0aW9uRmllbGRzIH0gZnJvbSAnLi4vLi4vdmVyc2lvbnMvYnVpbGRDb2xsZWN0aW9uRmllbGRzJ1xuaW1wb3J0IHsgYXBwZW5kVmVyc2lvblRvUXVlcnlLZXkgfSBmcm9tICcuLi8uLi92ZXJzaW9ucy9kcmFmdHMvYXBwZW5kVmVyc2lvblRvUXVlcnlLZXknXG5pbXBvcnQgeyBzYXZlVmVyc2lvbiB9IGZyb20gJy4uLy4uL3ZlcnNpb25zL3NhdmVWZXJzaW9uJ1xuaW1wb3J0IHsgYnVpbGRBZnRlck9wZXJhdGlvbiB9IGZyb20gJy4vdXRpbHMnXG5cbmV4cG9ydCB0eXBlIEFyZ3VtZW50czxUIGV4dGVuZHMgQ3JlYXRlVXBkYXRlVHlwZT4gPSB7XG4gIGNvbGxlY3Rpb246IENvbGxlY3Rpb25cbiAgZGF0YTogRGVlcFBhcnRpYWw8VD5cbiAgZGVwdGg/OiBudW1iZXJcbiAgZGlzYWJsZVZlcmlmaWNhdGlvbkVtYWlsPzogYm9vbGVhblxuICBkcmFmdD86IGJvb2xlYW5cbiAgb3ZlcnJpZGVBY2Nlc3M/OiBib29sZWFuXG4gIG92ZXJ3cml0ZUV4aXN0aW5nRmlsZXM/OiBib29sZWFuXG4gIHJlcTogUGF5bG9hZFJlcXVlc3RcbiAgc2hvd0hpZGRlbkZpZWxkcz86IGJvb2xlYW5cbiAgd2hlcmU6IFdoZXJlXG59XG5cbmFzeW5jIGZ1bmN0aW9uIHVwZGF0ZTxUU2x1ZyBleHRlbmRzIGtleW9mIEdlbmVyYXRlZFR5cGVzWydjb2xsZWN0aW9ucyddPihcbiAgaW5jb21pbmdBcmdzOiBBcmd1bWVudHM8R2VuZXJhdGVkVHlwZXNbJ2NvbGxlY3Rpb25zJ11bVFNsdWddPixcbik6IFByb21pc2U8QnVsa09wZXJhdGlvblJlc3VsdDxUU2x1Zz4+IHtcbiAgbGV0IGFyZ3MgPSBpbmNvbWluZ0FyZ3NcblxuICB0cnkge1xuICAgIGNvbnN0IHNob3VsZENvbW1pdCA9IGF3YWl0IGluaXRUcmFuc2FjdGlvbihhcmdzLnJlcSlcblxuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgICAvLyBiZWZvcmVPcGVyYXRpb24gLSBDb2xsZWN0aW9uXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4gICAgYXdhaXQgYXJncy5jb2xsZWN0aW9uLmNvbmZpZy5ob29rcy5iZWZvcmVPcGVyYXRpb24ucmVkdWNlKGFzeW5jIChwcmlvckhvb2ssIGhvb2spID0+IHtcbiAgICAgIGF3YWl0IHByaW9ySG9va1xuXG4gICAgICBhcmdzID1cbiAgICAgICAgKGF3YWl0IGhvb2soe1xuICAgICAgICAgIGFyZ3MsXG4gICAgICAgICAgY29sbGVjdGlvbjogYXJncy5jb2xsZWN0aW9uLmNvbmZpZyxcbiAgICAgICAgICBjb250ZXh0OiBhcmdzLnJlcS5jb250ZXh0LFxuICAgICAgICAgIG9wZXJhdGlvbjogJ3VwZGF0ZScsXG4gICAgICAgICAgcmVxOiBhcmdzLnJlcSxcbiAgICAgICAgfSkpIHx8IGFyZ3NcbiAgICB9LCBQcm9taXNlLnJlc29sdmUoKSlcblxuICAgIGNvbnN0IHtcbiAgICAgIGNvbGxlY3Rpb246IHsgY29uZmlnOiBjb2xsZWN0aW9uQ29uZmlnIH0sXG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgZGVwdGgsXG4gICAgICBkcmFmdDogZHJhZnRBcmcgPSBmYWxzZSxcbiAgICAgIG92ZXJyaWRlQWNjZXNzLFxuICAgICAgb3ZlcndyaXRlRXhpc3RpbmdGaWxlcyA9IGZhbHNlLFxuICAgICAgcmVxOiB7XG4gICAgICAgIGxvY2FsZSxcbiAgICAgICAgcGF5bG9hZDogeyBjb25maWcgfSxcbiAgICAgICAgcGF5bG9hZCxcbiAgICAgICAgdCxcbiAgICAgIH0sXG4gICAgICByZXEsXG4gICAgICBzaG93SGlkZGVuRmllbGRzLFxuICAgICAgd2hlcmUsXG4gICAgfSA9IGFyZ3NcblxuICAgIGlmICghd2hlcmUpIHtcbiAgICAgIHRocm93IG5ldyBBUElFcnJvcihcIk1pc3NpbmcgJ3doZXJlJyBxdWVyeSBvZiBkb2N1bWVudHMgdG8gdXBkYXRlLlwiLCBodHRwU3RhdHVzLkJBRF9SRVFVRVNUKVxuICAgIH1cblxuICAgIGNvbnN0IHsgZGF0YTogYnVsa1VwZGF0ZURhdGEgfSA9IGFyZ3NcbiAgICBjb25zdCBzaG91bGRTYXZlRHJhZnQgPSBCb29sZWFuKGRyYWZ0QXJnICYmIGNvbGxlY3Rpb25Db25maWcudmVyc2lvbnMuZHJhZnRzKVxuXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vIEFjY2Vzc1xuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuICAgIGxldCBhY2Nlc3NSZXN1bHQ6IEFjY2Vzc1Jlc3VsdFxuICAgIGlmICghb3ZlcnJpZGVBY2Nlc3MpIHtcbiAgICAgIGFjY2Vzc1Jlc3VsdCA9IGF3YWl0IGV4ZWN1dGVBY2Nlc3MoeyByZXEgfSwgY29sbGVjdGlvbkNvbmZpZy5hY2Nlc3MudXBkYXRlKVxuICAgIH1cblxuICAgIGF3YWl0IHZhbGlkYXRlUXVlcnlQYXRocyh7XG4gICAgICBjb2xsZWN0aW9uQ29uZmlnLFxuICAgICAgb3ZlcnJpZGVBY2Nlc3MsXG4gICAgICByZXEsXG4gICAgICB3aGVyZSxcbiAgICB9KVxuXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vIFJldHJpZXZlIGRvY3VtZW50c1xuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuICAgIGNvbnN0IGZ1bGxXaGVyZSA9IGNvbWJpbmVRdWVyaWVzKHdoZXJlLCBhY2Nlc3NSZXN1bHQpXG5cbiAgICBsZXQgZG9jc1xuXG4gICAgaWYgKGNvbGxlY3Rpb25Db25maWcudmVyc2lvbnM/LmRyYWZ0cyAmJiBzaG91bGRTYXZlRHJhZnQpIHtcbiAgICAgIGNvbnN0IHZlcnNpb25zV2hlcmUgPSBhcHBlbmRWZXJzaW9uVG9RdWVyeUtleShmdWxsV2hlcmUpXG5cbiAgICAgIGF3YWl0IHZhbGlkYXRlUXVlcnlQYXRocyh7XG4gICAgICAgIGNvbGxlY3Rpb25Db25maWc6IGNvbGxlY3Rpb24uY29uZmlnLFxuICAgICAgICBvdmVycmlkZUFjY2VzcyxcbiAgICAgICAgcmVxLFxuICAgICAgICB2ZXJzaW9uRmllbGRzOiBidWlsZFZlcnNpb25Db2xsZWN0aW9uRmllbGRzKGNvbGxlY3Rpb24uY29uZmlnKSxcbiAgICAgICAgd2hlcmU6IHZlcnNpb25zV2hlcmUsXG4gICAgICB9KVxuXG4gICAgICBjb25zdCBxdWVyeSA9IGF3YWl0IHBheWxvYWQuZGIucXVlcnlEcmFmdHM8R2VuZXJhdGVkVHlwZXNbJ2NvbGxlY3Rpb25zJ11bVFNsdWddPih7XG4gICAgICAgIGNvbGxlY3Rpb246IGNvbGxlY3Rpb25Db25maWcuc2x1ZyxcbiAgICAgICAgbG9jYWxlLFxuICAgICAgICByZXEsXG4gICAgICAgIHdoZXJlOiB2ZXJzaW9uc1doZXJlLFxuICAgICAgfSlcblxuICAgICAgZG9jcyA9IHF1ZXJ5LmRvY3NcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgcXVlcnkgPSBhd2FpdCBwYXlsb2FkLmRiLmZpbmQoe1xuICAgICAgICBjb2xsZWN0aW9uOiBjb2xsZWN0aW9uQ29uZmlnLnNsdWcsXG4gICAgICAgIGxpbWl0OiAwLFxuICAgICAgICBsb2NhbGUsXG4gICAgICAgIHBhZ2luYXRpb246IGZhbHNlLFxuICAgICAgICByZXEsXG4gICAgICAgIHdoZXJlOiBmdWxsV2hlcmUsXG4gICAgICB9KVxuXG4gICAgICBkb2NzID0gcXVlcnkuZG9jc1xuICAgIH1cblxuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgICAvLyBHZW5lcmF0ZSBkYXRhIGZvciBhbGwgZmlsZXMgYW5kIHNpemVzXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4gICAgY29uc3QgeyBkYXRhOiBuZXdGaWxlRGF0YSwgZmlsZXM6IGZpbGVzVG9VcGxvYWQgfSA9IGF3YWl0IGdlbmVyYXRlRmlsZURhdGEoe1xuICAgICAgY29sbGVjdGlvbixcbiAgICAgIGNvbmZpZyxcbiAgICAgIGRhdGE6IGJ1bGtVcGRhdGVEYXRhLFxuICAgICAgb3ZlcndyaXRlRXhpc3RpbmdGaWxlcyxcbiAgICAgIHJlcSxcbiAgICAgIHRocm93T25NaXNzaW5nRmlsZTogZmFsc2UsXG4gICAgfSlcblxuICAgIGNvbnN0IGVycm9ycyA9IFtdXG5cbiAgICBjb25zdCBwcm9taXNlcyA9IGRvY3MubWFwKGFzeW5jIChkb2MpID0+IHtcbiAgICAgIGNvbnN0IHsgaWQgfSA9IGRvY1xuICAgICAgbGV0IGRhdGEgPSB7XG4gICAgICAgIC4uLm5ld0ZpbGVEYXRhLFxuICAgICAgICAuLi5idWxrVXBkYXRlRGF0YSxcbiAgICAgIH1cblxuICAgICAgdHJ5IHtcbiAgICAgICAgY29uc3Qgb3JpZ2luYWxEb2MgPSBhd2FpdCBhZnRlclJlYWQoe1xuICAgICAgICAgIGNvbGxlY3Rpb246IGNvbGxlY3Rpb25Db25maWcsXG4gICAgICAgICAgY29udGV4dDogcmVxLmNvbnRleHQsXG4gICAgICAgICAgZGVwdGg6IDAsXG4gICAgICAgICAgZG9jLFxuICAgICAgICAgIGdsb2JhbDogbnVsbCxcbiAgICAgICAgICBvdmVycmlkZUFjY2VzczogdHJ1ZSxcbiAgICAgICAgICByZXEsXG4gICAgICAgICAgc2hvd0hpZGRlbkZpZWxkczogdHJ1ZSxcbiAgICAgICAgfSlcblxuICAgICAgICBhd2FpdCBkZWxldGVBc3NvY2lhdGVkRmlsZXMoe1xuICAgICAgICAgIGNvbGxlY3Rpb25Db25maWcsXG4gICAgICAgICAgY29uZmlnLFxuICAgICAgICAgIGRvYyxcbiAgICAgICAgICBmaWxlczogZmlsZXNUb1VwbG9hZCxcbiAgICAgICAgICBvdmVycmlkZURlbGV0ZTogZmFsc2UsXG4gICAgICAgICAgdCxcbiAgICAgICAgfSlcblxuICAgICAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4gICAgICAgIC8vIGJlZm9yZVZhbGlkYXRlIC0gRmllbGRzXG4gICAgICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuICAgICAgICBkYXRhID0gYXdhaXQgYmVmb3JlVmFsaWRhdGU8RGVlcFBhcnRpYWw8R2VuZXJhdGVkVHlwZXNbJ2NvbGxlY3Rpb25zJ11bVFNsdWddPj4oe1xuICAgICAgICAgIGlkLFxuICAgICAgICAgIGNvbGxlY3Rpb246IGNvbGxlY3Rpb25Db25maWcsXG4gICAgICAgICAgY29udGV4dDogcmVxLmNvbnRleHQsXG4gICAgICAgICAgZGF0YSxcbiAgICAgICAgICBkb2M6IG9yaWdpbmFsRG9jLFxuICAgICAgICAgIGdsb2JhbDogbnVsbCxcbiAgICAgICAgICBvcGVyYXRpb246ICd1cGRhdGUnLFxuICAgICAgICAgIG92ZXJyaWRlQWNjZXNzLFxuICAgICAgICAgIHJlcSxcbiAgICAgICAgfSlcblxuICAgICAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4gICAgICAgIC8vIGJlZm9yZVZhbGlkYXRlIC0gQ29sbGVjdGlvblxuICAgICAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbiAgICAgICAgYXdhaXQgY29sbGVjdGlvbkNvbmZpZy5ob29rcy5iZWZvcmVWYWxpZGF0ZS5yZWR1Y2UoYXN5bmMgKHByaW9ySG9vaywgaG9vaykgPT4ge1xuICAgICAgICAgIGF3YWl0IHByaW9ySG9va1xuXG4gICAgICAgICAgZGF0YSA9XG4gICAgICAgICAgICAoYXdhaXQgaG9vayh7XG4gICAgICAgICAgICAgIGNvbGxlY3Rpb246IGNvbGxlY3Rpb25Db25maWcsXG4gICAgICAgICAgICAgIGNvbnRleHQ6IHJlcS5jb250ZXh0LFxuICAgICAgICAgICAgICBkYXRhLFxuICAgICAgICAgICAgICBvcGVyYXRpb246ICd1cGRhdGUnLFxuICAgICAgICAgICAgICBvcmlnaW5hbERvYyxcbiAgICAgICAgICAgICAgcmVxLFxuICAgICAgICAgICAgfSkpIHx8IGRhdGFcbiAgICAgICAgfSwgUHJvbWlzZS5yZXNvbHZlKCkpXG5cbiAgICAgICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgICAgICAvLyBXcml0ZSBmaWxlcyB0byBsb2NhbCBzdG9yYWdlXG4gICAgICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuICAgICAgICBpZiAoIWNvbGxlY3Rpb25Db25maWcudXBsb2FkLmRpc2FibGVMb2NhbFN0b3JhZ2UpIHtcbiAgICAgICAgICBhd2FpdCB1cGxvYWRGaWxlcyhwYXlsb2FkLCBmaWxlc1RvVXBsb2FkLCB0KVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgICAgICAvLyBiZWZvcmVDaGFuZ2UgLSBDb2xsZWN0aW9uXG4gICAgICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuICAgICAgICBhd2FpdCBjb2xsZWN0aW9uQ29uZmlnLmhvb2tzLmJlZm9yZUNoYW5nZS5yZWR1Y2UoYXN5bmMgKHByaW9ySG9vaywgaG9vaykgPT4ge1xuICAgICAgICAgIGF3YWl0IHByaW9ySG9va1xuXG4gICAgICAgICAgZGF0YSA9XG4gICAgICAgICAgICAoYXdhaXQgaG9vayh7XG4gICAgICAgICAgICAgIGNvbGxlY3Rpb246IGNvbGxlY3Rpb25Db25maWcsXG4gICAgICAgICAgICAgIGNvbnRleHQ6IHJlcS5jb250ZXh0LFxuICAgICAgICAgICAgICBkYXRhLFxuICAgICAgICAgICAgICBvcGVyYXRpb246ICd1cGRhdGUnLFxuICAgICAgICAgICAgICBvcmlnaW5hbERvYyxcbiAgICAgICAgICAgICAgcmVxLFxuICAgICAgICAgICAgfSkpIHx8IGRhdGFcbiAgICAgICAgfSwgUHJvbWlzZS5yZXNvbHZlKCkpXG5cbiAgICAgICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgICAgICAvLyBiZWZvcmVDaGFuZ2UgLSBGaWVsZHNcbiAgICAgICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4gICAgICAgIGxldCByZXN1bHQgPSBhd2FpdCBiZWZvcmVDaGFuZ2U8R2VuZXJhdGVkVHlwZXNbJ2NvbGxlY3Rpb25zJ11bVFNsdWddPih7XG4gICAgICAgICAgaWQsXG4gICAgICAgICAgY29sbGVjdGlvbjogY29sbGVjdGlvbkNvbmZpZyxcbiAgICAgICAgICBjb250ZXh0OiByZXEuY29udGV4dCxcbiAgICAgICAgICBkYXRhLFxuICAgICAgICAgIGRvYzogb3JpZ2luYWxEb2MsXG4gICAgICAgICAgZG9jV2l0aExvY2FsZXM6IGRvYyxcbiAgICAgICAgICBnbG9iYWw6IG51bGwsXG4gICAgICAgICAgb3BlcmF0aW9uOiAndXBkYXRlJyxcbiAgICAgICAgICByZXEsXG4gICAgICAgICAgc2tpcFZhbGlkYXRpb246IHNob3VsZFNhdmVEcmFmdCB8fCBkYXRhLl9zdGF0dXMgPT09ICdkcmFmdCcsXG4gICAgICAgIH0pXG5cbiAgICAgICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgICAgICAvLyBVcGRhdGVcbiAgICAgICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4gICAgICAgIGlmICghc2hvdWxkU2F2ZURyYWZ0KSB7XG4gICAgICAgICAgcmVzdWx0ID0gYXdhaXQgcmVxLnBheWxvYWQuZGIudXBkYXRlT25lKHtcbiAgICAgICAgICAgIGlkLFxuICAgICAgICAgICAgY29sbGVjdGlvbjogY29sbGVjdGlvbkNvbmZpZy5zbHVnLFxuICAgICAgICAgICAgZGF0YTogcmVzdWx0LFxuICAgICAgICAgICAgbG9jYWxlLFxuICAgICAgICAgICAgcmVxLFxuICAgICAgICAgIH0pXG4gICAgICAgIH1cblxuICAgICAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4gICAgICAgIC8vIENyZWF0ZSB2ZXJzaW9uXG4gICAgICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuICAgICAgICBpZiAoY29sbGVjdGlvbkNvbmZpZy52ZXJzaW9ucykge1xuICAgICAgICAgIHJlc3VsdCA9IGF3YWl0IHNhdmVWZXJzaW9uKHtcbiAgICAgICAgICAgIGlkLFxuICAgICAgICAgICAgY29sbGVjdGlvbjogY29sbGVjdGlvbkNvbmZpZyxcbiAgICAgICAgICAgIGRvY1dpdGhMb2NhbGVzOiB7XG4gICAgICAgICAgICAgIC4uLnJlc3VsdCxcbiAgICAgICAgICAgICAgY3JlYXRlZEF0OiBkb2MuY3JlYXRlZEF0LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGRyYWZ0OiBzaG91bGRTYXZlRHJhZnQsXG4gICAgICAgICAgICBwYXlsb2FkLFxuICAgICAgICAgICAgcmVxLFxuICAgICAgICAgIH0pXG4gICAgICAgIH1cblxuICAgICAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4gICAgICAgIC8vIGFmdGVyUmVhZCAtIEZpZWxkc1xuICAgICAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbiAgICAgICAgcmVzdWx0ID0gYXdhaXQgYWZ0ZXJSZWFkKHtcbiAgICAgICAgICBjb2xsZWN0aW9uOiBjb2xsZWN0aW9uQ29uZmlnLFxuICAgICAgICAgIGNvbnRleHQ6IHJlcS5jb250ZXh0LFxuICAgICAgICAgIGRlcHRoLFxuICAgICAgICAgIGRvYzogcmVzdWx0LFxuICAgICAgICAgIGdsb2JhbDogbnVsbCxcbiAgICAgICAgICBvdmVycmlkZUFjY2VzcyxcbiAgICAgICAgICByZXEsXG4gICAgICAgICAgc2hvd0hpZGRlbkZpZWxkcyxcbiAgICAgICAgfSlcblxuICAgICAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4gICAgICAgIC8vIGFmdGVyUmVhZCAtIENvbGxlY3Rpb25cbiAgICAgICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4gICAgICAgIGF3YWl0IGNvbGxlY3Rpb25Db25maWcuaG9va3MuYWZ0ZXJSZWFkLnJlZHVjZShhc3luYyAocHJpb3JIb29rLCBob29rKSA9PiB7XG4gICAgICAgICAgYXdhaXQgcHJpb3JIb29rXG5cbiAgICAgICAgICByZXN1bHQgPVxuICAgICAgICAgICAgKGF3YWl0IGhvb2soe1xuICAgICAgICAgICAgICBjb2xsZWN0aW9uOiBjb2xsZWN0aW9uQ29uZmlnLFxuICAgICAgICAgICAgICBjb250ZXh0OiByZXEuY29udGV4dCxcbiAgICAgICAgICAgICAgZG9jOiByZXN1bHQsXG4gICAgICAgICAgICAgIHJlcSxcbiAgICAgICAgICAgIH0pKSB8fCByZXN1bHRcbiAgICAgICAgfSwgUHJvbWlzZS5yZXNvbHZlKCkpXG5cbiAgICAgICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgICAgICAvLyBhZnRlckNoYW5nZSAtIEZpZWxkc1xuICAgICAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbiAgICAgICAgcmVzdWx0ID0gYXdhaXQgYWZ0ZXJDaGFuZ2U8R2VuZXJhdGVkVHlwZXNbJ2NvbGxlY3Rpb25zJ11bVFNsdWddPih7XG4gICAgICAgICAgY29sbGVjdGlvbjogY29sbGVjdGlvbkNvbmZpZyxcbiAgICAgICAgICBjb250ZXh0OiByZXEuY29udGV4dCxcbiAgICAgICAgICBkYXRhLFxuICAgICAgICAgIGRvYzogcmVzdWx0LFxuICAgICAgICAgIGdsb2JhbDogbnVsbCxcbiAgICAgICAgICBvcGVyYXRpb246ICd1cGRhdGUnLFxuICAgICAgICAgIHByZXZpb3VzRG9jOiBvcmlnaW5hbERvYyxcbiAgICAgICAgICByZXEsXG4gICAgICAgIH0pXG5cbiAgICAgICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgICAgICAvLyBhZnRlckNoYW5nZSAtIENvbGxlY3Rpb25cbiAgICAgICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4gICAgICAgIGF3YWl0IGNvbGxlY3Rpb25Db25maWcuaG9va3MuYWZ0ZXJDaGFuZ2UucmVkdWNlKGFzeW5jIChwcmlvckhvb2ssIGhvb2spID0+IHtcbiAgICAgICAgICBhd2FpdCBwcmlvckhvb2tcblxuICAgICAgICAgIHJlc3VsdCA9XG4gICAgICAgICAgICAoYXdhaXQgaG9vayh7XG4gICAgICAgICAgICAgIGNvbGxlY3Rpb246IGNvbGxlY3Rpb25Db25maWcsXG4gICAgICAgICAgICAgIGNvbnRleHQ6IHJlcS5jb250ZXh0LFxuICAgICAgICAgICAgICBkb2M6IHJlc3VsdCxcbiAgICAgICAgICAgICAgb3BlcmF0aW9uOiAndXBkYXRlJyxcbiAgICAgICAgICAgICAgcHJldmlvdXNEb2M6IG9yaWdpbmFsRG9jLFxuICAgICAgICAgICAgICByZXEsXG4gICAgICAgICAgICB9KSkgfHwgcmVzdWx0XG4gICAgICAgIH0sIFByb21pc2UucmVzb2x2ZSgpKVxuXG4gICAgICAgIGF3YWl0IHVubGlua1RlbXBGaWxlcyh7XG4gICAgICAgICAgY29sbGVjdGlvbkNvbmZpZyxcbiAgICAgICAgICBjb25maWcsXG4gICAgICAgICAgcmVxLFxuICAgICAgICB9KVxuXG4gICAgICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgICAgICAgLy8gUmV0dXJuIHJlc3VsdHNcbiAgICAgICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4gICAgICAgIHJldHVybiByZXN1bHRcbiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgIGVycm9ycy5wdXNoKHtcbiAgICAgICAgICBpZCxcbiAgICAgICAgICBtZXNzYWdlOiBlcnJvci5tZXNzYWdlLFxuICAgICAgICB9KVxuICAgICAgfVxuICAgICAgcmV0dXJuIG51bGxcbiAgICB9KVxuXG4gICAgY29uc3QgYXdhaXRlZERvY3MgPSBhd2FpdCBQcm9taXNlLmFsbChwcm9taXNlcylcblxuICAgIGxldCByZXN1bHQgPSB7XG4gICAgICBkb2NzOiBhd2FpdGVkRG9jcy5maWx0ZXIoQm9vbGVhbiksXG4gICAgICBlcnJvcnMsXG4gICAgfVxuXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vIGFmdGVyT3BlcmF0aW9uIC0gQ29sbGVjdGlvblxuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuICAgIHJlc3VsdCA9IGF3YWl0IGJ1aWxkQWZ0ZXJPcGVyYXRpb248R2VuZXJhdGVkVHlwZXNbJ2NvbGxlY3Rpb25zJ11bVFNsdWddPih7XG4gICAgICBhcmdzLFxuICAgICAgY29sbGVjdGlvbjogY29sbGVjdGlvbkNvbmZpZyxcbiAgICAgIG9wZXJhdGlvbjogJ3VwZGF0ZScsXG4gICAgICByZXN1bHQsXG4gICAgfSlcblxuICAgIGlmIChzaG91bGRDb21taXQpIGF3YWl0IGNvbW1pdFRyYW5zYWN0aW9uKHJlcSlcblxuICAgIHJldHVybiByZXN1bHRcbiAgfSBjYXRjaCAoZXJyb3I6IHVua25vd24pIHtcbiAgICBhd2FpdCBraWxsVHJhbnNhY3Rpb24oYXJncy5yZXEpXG4gICAgdGhyb3cgZXJyb3JcbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCB1cGRhdGVcbiJdLCJuYW1lcyI6WyJ1cGRhdGUiLCJpbmNvbWluZ0FyZ3MiLCJhcmdzIiwic2hvdWxkQ29tbWl0IiwiaW5pdFRyYW5zYWN0aW9uIiwicmVxIiwiY29sbGVjdGlvbiIsImNvbmZpZyIsImhvb2tzIiwiYmVmb3JlT3BlcmF0aW9uIiwicmVkdWNlIiwicHJpb3JIb29rIiwiaG9vayIsImNvbnRleHQiLCJvcGVyYXRpb24iLCJQcm9taXNlIiwicmVzb2x2ZSIsImNvbGxlY3Rpb25Db25maWciLCJkZXB0aCIsImRyYWZ0IiwiZHJhZnRBcmciLCJvdmVycmlkZUFjY2VzcyIsIm92ZXJ3cml0ZUV4aXN0aW5nRmlsZXMiLCJsb2NhbGUiLCJwYXlsb2FkIiwidCIsInNob3dIaWRkZW5GaWVsZHMiLCJ3aGVyZSIsIkFQSUVycm9yIiwiaHR0cFN0YXR1cyIsIkJBRF9SRVFVRVNUIiwiZGF0YSIsImJ1bGtVcGRhdGVEYXRhIiwic2hvdWxkU2F2ZURyYWZ0IiwiQm9vbGVhbiIsInZlcnNpb25zIiwiZHJhZnRzIiwiYWNjZXNzUmVzdWx0IiwiZXhlY3V0ZUFjY2VzcyIsImFjY2VzcyIsInZhbGlkYXRlUXVlcnlQYXRocyIsImZ1bGxXaGVyZSIsImNvbWJpbmVRdWVyaWVzIiwiZG9jcyIsInZlcnNpb25zV2hlcmUiLCJhcHBlbmRWZXJzaW9uVG9RdWVyeUtleSIsInZlcnNpb25GaWVsZHMiLCJidWlsZFZlcnNpb25Db2xsZWN0aW9uRmllbGRzIiwicXVlcnkiLCJkYiIsInF1ZXJ5RHJhZnRzIiwic2x1ZyIsImZpbmQiLCJsaW1pdCIsInBhZ2luYXRpb24iLCJuZXdGaWxlRGF0YSIsImZpbGVzIiwiZmlsZXNUb1VwbG9hZCIsImdlbmVyYXRlRmlsZURhdGEiLCJ0aHJvd09uTWlzc2luZ0ZpbGUiLCJlcnJvcnMiLCJwcm9taXNlcyIsIm1hcCIsImRvYyIsImlkIiwib3JpZ2luYWxEb2MiLCJhZnRlclJlYWQiLCJnbG9iYWwiLCJkZWxldGVBc3NvY2lhdGVkRmlsZXMiLCJvdmVycmlkZURlbGV0ZSIsImJlZm9yZVZhbGlkYXRlIiwidXBsb2FkIiwiZGlzYWJsZUxvY2FsU3RvcmFnZSIsInVwbG9hZEZpbGVzIiwiYmVmb3JlQ2hhbmdlIiwicmVzdWx0IiwiZG9jV2l0aExvY2FsZXMiLCJza2lwVmFsaWRhdGlvbiIsIl9zdGF0dXMiLCJ1cGRhdGVPbmUiLCJzYXZlVmVyc2lvbiIsImNyZWF0ZWRBdCIsImFmdGVyQ2hhbmdlIiwicHJldmlvdXNEb2MiLCJ1bmxpbmtUZW1wRmlsZXMiLCJlcnJvciIsInB1c2giLCJtZXNzYWdlIiwiYXdhaXRlZERvY3MiLCJhbGwiLCJmaWx0ZXIiLCJidWlsZEFmdGVyT3BlcmF0aW9uIiwiY29tbWl0VHJhbnNhY3Rpb24iLCJraWxsVHJhbnNhY3Rpb24iXSwibWFwcGluZ3MiOiI7Ozs7K0JBNlpBOzs7ZUFBQTs7O21FQTNadUI7c0VBU0c7Z0NBQ0s7b0NBQ0k7d0JBQ1Y7NkJBQ0c7MkJBQ0Y7OEJBQ0c7Z0NBQ0U7dUNBQ087a0NBQ0w7aUNBQ0Q7NkJBQ0o7bUNBQ007aUNBQ0Y7aUNBQ0E7dUNBQ2E7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
@@ -1 +1 @@
1
- {"version":3,"file":"updateByID.d.ts","sourceRoot":"","sources":["../../../src/collections/operations/updateByID.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAKhD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACzD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AACjD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAsBjD,MAAM,MAAM,SAAS,CAAC,CAAC,SAAS;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAA;CAAE,IAAI;IAChF,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,UAAU,EAAE,UAAU,CAAA;IACtB,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,CAAA;IACpB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,wBAAwB,CAAC,EAAE,OAAO,CAAA;IAClC,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;IACnB,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,sBAAsB,CAAC,EAAE,OAAO,CAAA;IAChC,GAAG,EAAE,cAAc,CAAA;IACnB,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAC3B,CAAA;AAED,iBAAe,UAAU,CAAC,KAAK,SAAS,MAAM,cAAc,CAAC,aAAa,CAAC,EACzE,YAAY,EAAE,SAAS,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,CAAC,GAC5D,OAAO,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,CAAC,CAgV/C;AAED,eAAe,UAAU,CAAA"}
1
+ {"version":3,"file":"updateByID.d.ts","sourceRoot":"","sources":["../../../src/collections/operations/updateByID.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAKhD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACzD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AACjD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAsBjD,MAAM,MAAM,SAAS,CAAC,CAAC,SAAS;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAA;CAAE,IAAI;IAChF,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,UAAU,EAAE,UAAU,CAAA;IACtB,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,CAAA;IACpB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,wBAAwB,CAAC,EAAE,OAAO,CAAA;IAClC,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;IACnB,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,sBAAsB,CAAC,EAAE,OAAO,CAAA;IAChC,GAAG,EAAE,cAAc,CAAA;IACnB,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAC3B,CAAA;AAED,iBAAe,UAAU,CAAC,KAAK,SAAS,MAAM,cAAc,CAAC,aAAa,CAAC,EACzE,YAAY,EAAE,SAAS,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,CAAC,GAC5D,OAAO,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,CAAC,CAiV/C;AAED,eAAe,UAAU,CAAA"}
@@ -35,21 +35,22 @@ function _interop_require_default(obj) {
35
35
  }
36
36
  async function updateByID(incomingArgs) {
37
37
  let args = incomingArgs;
38
- // /////////////////////////////////////
39
- // beforeOperation - Collection
40
- // /////////////////////////////////////
41
- await args.collection.config.hooks.beforeOperation.reduce(async (priorHook, hook)=>{
42
- await priorHook;
43
- args = await hook({
44
- args,
45
- collection: args.collection.config,
46
- context: args.req.context,
47
- operation: 'update'
48
- }) || args;
49
- }, Promise.resolve());
50
- const { id, autosave = false, collection: { config: collectionConfig }, collection, depth, draft: draftArg = false, overrideAccess, overwriteExistingFiles = false, req: { locale, payload: { config }, payload, t }, req, showHiddenFields } = args;
51
38
  try {
52
- const shouldCommit = await (0, _initTransaction.initTransaction)(req);
39
+ const shouldCommit = await (0, _initTransaction.initTransaction)(args.req);
40
+ // /////////////////////////////////////
41
+ // beforeOperation - Collection
42
+ // /////////////////////////////////////
43
+ await args.collection.config.hooks.beforeOperation.reduce(async (priorHook, hook)=>{
44
+ await priorHook;
45
+ args = await hook({
46
+ args,
47
+ collection: args.collection.config,
48
+ context: args.req.context,
49
+ operation: 'update',
50
+ req: args.req
51
+ }) || args;
52
+ }, Promise.resolve());
53
+ const { id, autosave = false, collection: { config: collectionConfig }, collection, depth, draft: draftArg = false, overrideAccess, overwriteExistingFiles = false, req: { locale, payload: { config }, payload, t }, req, showHiddenFields } = args;
53
54
  if (!id) {
54
55
  throw new _errors.APIError('Missing ID of document to update.', _httpstatus.default.BAD_REQUEST);
55
56
  }
@@ -300,10 +301,10 @@ async function updateByID(incomingArgs) {
300
301
  if (shouldCommit) await (0, _commitTransaction.commitTransaction)(req);
301
302
  return result;
302
303
  } catch (error) {
303
- await (0, _killTransaction.killTransaction)(req);
304
+ await (0, _killTransaction.killTransaction)(args.req);
304
305
  throw error;
305
306
  }
306
307
  }
307
308
  const _default = updateByID;
308
309
 
309
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb2xsZWN0aW9ucy9vcGVyYXRpb25zL3VwZGF0ZUJ5SUQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBEZWVwUGFydGlhbCB9IGZyb20gJ3RzLWVzc2VudGlhbHMnXG5cbmltcG9ydCBodHRwU3RhdHVzIGZyb20gJ2h0dHAtc3RhdHVzJ1xuXG5pbXBvcnQgdHlwZSB7IEZpbmRPbmVBcmdzIH0gZnJvbSAnLi4vLi4vZGF0YWJhc2UvdHlwZXMnXG5pbXBvcnQgdHlwZSB7IFBheWxvYWRSZXF1ZXN0IH0gZnJvbSAnLi4vLi4vZXhwcmVzcy90eXBlcydcbmltcG9ydCB0eXBlIHsgR2VuZXJhdGVkVHlwZXMgfSBmcm9tICcuLi8uLi9pbmRleCdcbmltcG9ydCB0eXBlIHsgQ29sbGVjdGlvbiB9IGZyb20gJy4uL2NvbmZpZy90eXBlcydcblxuaW1wb3J0IGV4ZWN1dGVBY2Nlc3MgZnJvbSAnLi4vLi4vYXV0aC9leGVjdXRlQWNjZXNzJ1xuaW1wb3J0IHsgZ2VuZXJhdGVQYXNzd29yZFNhbHRIYXNoIH0gZnJvbSAnLi4vLi4vYXV0aC9zdHJhdGVnaWVzL2xvY2FsL2dlbmVyYXRlUGFzc3dvcmRTYWx0SGFzaCdcbmltcG9ydCB7IGhhc1doZXJlQWNjZXNzUmVzdWx0IH0gZnJvbSAnLi4vLi4vYXV0aC90eXBlcydcbmltcG9ydCB7IGNvbWJpbmVRdWVyaWVzIH0gZnJvbSAnLi4vLi4vZGF0YWJhc2UvY29tYmluZVF1ZXJpZXMnXG5pbXBvcnQgeyBBUElFcnJvciwgRm9yYmlkZGVuLCBOb3RGb3VuZCB9IGZyb20gJy4uLy4uL2Vycm9ycydcbmltcG9ydCB7IGFmdGVyQ2hhbmdlIH0gZnJvbSAnLi4vLi4vZmllbGRzL2hvb2tzL2FmdGVyQ2hhbmdlJ1xuaW1wb3J0IHsgYWZ0ZXJSZWFkIH0gZnJvbSAnLi4vLi4vZmllbGRzL2hvb2tzL2FmdGVyUmVhZCdcbmltcG9ydCB7IGJlZm9yZUNoYW5nZSB9IGZyb20gJy4uLy4uL2ZpZWxkcy9ob29rcy9iZWZvcmVDaGFuZ2UnXG5pbXBvcnQgeyBiZWZvcmVWYWxpZGF0ZSB9IGZyb20gJy4uLy4uL2ZpZWxkcy9ob29rcy9iZWZvcmVWYWxpZGF0ZSdcbmltcG9ydCB7IGRlbGV0ZUFzc29jaWF0ZWRGaWxlcyB9IGZyb20gJy4uLy4uL3VwbG9hZHMvZGVsZXRlQXNzb2NpYXRlZEZpbGVzJ1xuaW1wb3J0IHsgZ2VuZXJhdGVGaWxlRGF0YSB9IGZyb20gJy4uLy4uL3VwbG9hZHMvZ2VuZXJhdGVGaWxlRGF0YSdcbmltcG9ydCB7IHVubGlua1RlbXBGaWxlcyB9IGZyb20gJy4uLy4uL3VwbG9hZHMvdW5saW5rVGVtcEZpbGVzJ1xuaW1wb3J0IHsgdXBsb2FkRmlsZXMgfSBmcm9tICcuLi8uLi91cGxvYWRzL3VwbG9hZEZpbGVzJ1xuaW1wb3J0IHsgY29tbWl0VHJhbnNhY3Rpb24gfSBmcm9tICcuLi8uLi91dGlsaXRpZXMvY29tbWl0VHJhbnNhY3Rpb24nXG5pbXBvcnQgeyBpbml0VHJhbnNhY3Rpb24gfSBmcm9tICcuLi8uLi91dGlsaXRpZXMvaW5pdFRyYW5zYWN0aW9uJ1xuaW1wb3J0IHsga2lsbFRyYW5zYWN0aW9uIH0gZnJvbSAnLi4vLi4vdXRpbGl0aWVzL2tpbGxUcmFuc2FjdGlvbidcbmltcG9ydCB7IGdldExhdGVzdENvbGxlY3Rpb25WZXJzaW9uIH0gZnJvbSAnLi4vLi4vdmVyc2lvbnMvZ2V0TGF0ZXN0Q29sbGVjdGlvblZlcnNpb24nXG5pbXBvcnQgeyBzYXZlVmVyc2lvbiB9IGZyb20gJy4uLy4uL3ZlcnNpb25zL3NhdmVWZXJzaW9uJ1xuaW1wb3J0IHsgYnVpbGRBZnRlck9wZXJhdGlvbiB9IGZyb20gJy4vdXRpbHMnXG5cbmV4cG9ydCB0eXBlIEFyZ3VtZW50czxUIGV4dGVuZHMgeyBbZmllbGQ6IG51bWJlciB8IHN0cmluZyB8IHN5bWJvbF06IHVua25vd24gfT4gPSB7XG4gIGF1dG9zYXZlPzogYm9vbGVhblxuICBjb2xsZWN0aW9uOiBDb2xsZWN0aW9uXG4gIGRhdGE6IERlZXBQYXJ0aWFsPFQ+XG4gIGRlcHRoPzogbnVtYmVyXG4gIGRpc2FibGVWZXJpZmljYXRpb25FbWFpbD86IGJvb2xlYW5cbiAgZHJhZnQ/OiBib29sZWFuXG4gIGlkOiBudW1iZXIgfCBzdHJpbmdcbiAgb3ZlcnJpZGVBY2Nlc3M/OiBib29sZWFuXG4gIG92ZXJ3cml0ZUV4aXN0aW5nRmlsZXM/OiBib29sZWFuXG4gIHJlcTogUGF5bG9hZFJlcXVlc3RcbiAgc2hvd0hpZGRlbkZpZWxkcz86IGJvb2xlYW5cbn1cblxuYXN5bmMgZnVuY3Rpb24gdXBkYXRlQnlJRDxUU2x1ZyBleHRlbmRzIGtleW9mIEdlbmVyYXRlZFR5cGVzWydjb2xsZWN0aW9ucyddPihcbiAgaW5jb21pbmdBcmdzOiBBcmd1bWVudHM8R2VuZXJhdGVkVHlwZXNbJ2NvbGxlY3Rpb25zJ11bVFNsdWddPixcbik6IFByb21pc2U8R2VuZXJhdGVkVHlwZXNbJ2NvbGxlY3Rpb25zJ11bVFNsdWddPiB7XG4gIGxldCBhcmdzID0gaW5jb21pbmdBcmdzXG5cbiAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAvLyBiZWZvcmVPcGVyYXRpb24gLSBDb2xsZWN0aW9uXG4gIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuICBhd2FpdCBhcmdzLmNvbGxlY3Rpb24uY29uZmlnLmhvb2tzLmJlZm9yZU9wZXJhdGlvbi5yZWR1Y2UoYXN5bmMgKHByaW9ySG9vaywgaG9vaykgPT4ge1xuICAgIGF3YWl0IHByaW9ySG9va1xuXG4gICAgYXJncyA9XG4gICAgICAoYXdhaXQgaG9vayh7XG4gICAgICAgIGFyZ3MsXG4gICAgICAgIGNvbGxlY3Rpb246IGFyZ3MuY29sbGVjdGlvbi5jb25maWcsXG4gICAgICAgIGNvbnRleHQ6IGFyZ3MucmVxLmNvbnRleHQsXG4gICAgICAgIG9wZXJhdGlvbjogJ3VwZGF0ZScsXG4gICAgICB9KSkgfHwgYXJnc1xuICB9LCBQcm9taXNlLnJlc29sdmUoKSlcblxuICBjb25zdCB7XG4gICAgaWQsXG4gICAgYXV0b3NhdmUgPSBmYWxzZSxcbiAgICBjb2xsZWN0aW9uOiB7IGNvbmZpZzogY29sbGVjdGlvbkNvbmZpZyB9LFxuICAgIGNvbGxlY3Rpb24sXG4gICAgZGVwdGgsXG4gICAgZHJhZnQ6IGRyYWZ0QXJnID0gZmFsc2UsXG4gICAgb3ZlcnJpZGVBY2Nlc3MsXG4gICAgb3ZlcndyaXRlRXhpc3RpbmdGaWxlcyA9IGZhbHNlLFxuICAgIHJlcToge1xuICAgICAgbG9jYWxlLFxuICAgICAgcGF5bG9hZDogeyBjb25maWcgfSxcbiAgICAgIHBheWxvYWQsXG4gICAgICB0LFxuICAgIH0sXG4gICAgcmVxLFxuICAgIHNob3dIaWRkZW5GaWVsZHMsXG4gIH0gPSBhcmdzXG5cbiAgdHJ5IHtcbiAgICBjb25zdCBzaG91bGRDb21taXQgPSBhd2FpdCBpbml0VHJhbnNhY3Rpb24ocmVxKVxuXG4gICAgaWYgKCFpZCkge1xuICAgICAgdGhyb3cgbmV3IEFQSUVycm9yKCdNaXNzaW5nIElEIG9mIGRvY3VtZW50IHRvIHVwZGF0ZS4nLCBodHRwU3RhdHVzLkJBRF9SRVFVRVNUKVxuICAgIH1cblxuICAgIGxldCB7IGRhdGEgfSA9IGFyZ3NcbiAgICBjb25zdCB7IHBhc3N3b3JkIH0gPSBkYXRhXG4gICAgY29uc3Qgc2hvdWxkU2F2ZURyYWZ0ID0gQm9vbGVhbihkcmFmdEFyZyAmJiBjb2xsZWN0aW9uQ29uZmlnLnZlcnNpb25zLmRyYWZ0cylcbiAgICBjb25zdCBzaG91bGRTYXZlUGFzc3dvcmQgPSBCb29sZWFuKHBhc3N3b3JkICYmIGNvbGxlY3Rpb25Db25maWcuYXV0aCAmJiAhc2hvdWxkU2F2ZURyYWZ0KVxuXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vIEFjY2Vzc1xuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuICAgIGNvbnN0IGFjY2Vzc1Jlc3VsdHMgPSAhb3ZlcnJpZGVBY2Nlc3NcbiAgICAgID8gYXdhaXQgZXhlY3V0ZUFjY2Vzcyh7IGlkLCBkYXRhLCByZXEgfSwgY29sbGVjdGlvbkNvbmZpZy5hY2Nlc3MudXBkYXRlKVxuICAgICAgOiB0cnVlXG4gICAgY29uc3QgaGFzV2hlcmVQb2xpY3kgPSBoYXNXaGVyZUFjY2Vzc1Jlc3VsdChhY2Nlc3NSZXN1bHRzKVxuXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vIFJldHJpZXZlIGRvY3VtZW50XG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4gICAgY29uc3QgZmluZE9uZUFyZ3M6IEZpbmRPbmVBcmdzID0ge1xuICAgICAgY29sbGVjdGlvbjogY29sbGVjdGlvbkNvbmZpZy5zbHVnLFxuICAgICAgbG9jYWxlLFxuICAgICAgcmVxLFxuICAgICAgd2hlcmU6IGNvbWJpbmVRdWVyaWVzKHsgaWQ6IHsgZXF1YWxzOiBpZCB9IH0sIGFjY2Vzc1Jlc3VsdHMpLFxuICAgIH1cblxuICAgIGNvbnN0IGRvY1dpdGhMb2NhbGVzID0gYXdhaXQgZ2V0TGF0ZXN0Q29sbGVjdGlvblZlcnNpb24oe1xuICAgICAgaWQsXG4gICAgICBjb25maWc6IGNvbGxlY3Rpb25Db25maWcsXG4gICAgICBwYXlsb2FkLFxuICAgICAgcXVlcnk6IGZpbmRPbmVBcmdzLFxuICAgICAgcmVxLFxuICAgIH0pXG5cbiAgICBpZiAoIWRvY1dpdGhMb2NhbGVzICYmICFoYXNXaGVyZVBvbGljeSkgdGhyb3cgbmV3IE5vdEZvdW5kKHQpXG4gICAgaWYgKCFkb2NXaXRoTG9jYWxlcyAmJiBoYXNXaGVyZVBvbGljeSkgdGhyb3cgbmV3IEZvcmJpZGRlbih0KVxuXG4gICAgY29uc3Qgb3JpZ2luYWxEb2MgPSBhd2FpdCBhZnRlclJlYWQoe1xuICAgICAgY29sbGVjdGlvbjogY29sbGVjdGlvbkNvbmZpZyxcbiAgICAgIGNvbnRleHQ6IHJlcS5jb250ZXh0LFxuICAgICAgZGVwdGg6IDAsXG4gICAgICBkb2M6IGRvY1dpdGhMb2NhbGVzLFxuICAgICAgZ2xvYmFsOiBudWxsLFxuICAgICAgb3ZlcnJpZGVBY2Nlc3M6IHRydWUsXG4gICAgICByZXEsXG4gICAgICBzaG93SGlkZGVuRmllbGRzOiB0cnVlLFxuICAgIH0pXG5cbiAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4gICAgLy8gR2VuZXJhdGUgZGF0YSBmb3IgYWxsIGZpbGVzIGFuZCBzaXplc1xuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuICAgIGNvbnN0IHsgZGF0YTogbmV3RmlsZURhdGEsIGZpbGVzOiBmaWxlc1RvVXBsb2FkIH0gPSBhd2FpdCBnZW5lcmF0ZUZpbGVEYXRhKHtcbiAgICAgIGNvbGxlY3Rpb24sXG4gICAgICBjb25maWcsXG4gICAgICBkYXRhLFxuICAgICAgb3ZlcndyaXRlRXhpc3RpbmdGaWxlcyxcbiAgICAgIHJlcSxcbiAgICAgIHRocm93T25NaXNzaW5nRmlsZTogZmFsc2UsXG4gICAgfSlcblxuICAgIGRhdGEgPSBuZXdGaWxlRGF0YVxuXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vIERlbGV0ZSBhbnkgYXNzb2NpYXRlZCBmaWxlc1xuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuICAgIGF3YWl0IGRlbGV0ZUFzc29jaWF0ZWRGaWxlcyh7XG4gICAgICBjb2xsZWN0aW9uQ29uZmlnLFxuICAgICAgY29uZmlnLFxuICAgICAgZG9jOiBkb2NXaXRoTG9jYWxlcyxcbiAgICAgIGZpbGVzOiBmaWxlc1RvVXBsb2FkLFxuICAgICAgb3ZlcnJpZGVEZWxldGU6IGZhbHNlLFxuICAgICAgdCxcbiAgICB9KVxuXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vIGJlZm9yZVZhbGlkYXRlIC0gRmllbGRzXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4gICAgZGF0YSA9IGF3YWl0IGJlZm9yZVZhbGlkYXRlPERlZXBQYXJ0aWFsPEdlbmVyYXRlZFR5cGVzWydjb2xsZWN0aW9ucyddW1RTbHVnXT4+KHtcbiAgICAgIGlkLFxuICAgICAgY29sbGVjdGlvbjogY29sbGVjdGlvbkNvbmZpZyxcbiAgICAgIGNvbnRleHQ6IHJlcS5jb250ZXh0LFxuICAgICAgZGF0YSxcbiAgICAgIGRvYzogb3JpZ2luYWxEb2MsXG4gICAgICBnbG9iYWw6IG51bGwsXG4gICAgICBvcGVyYXRpb246ICd1cGRhdGUnLFxuICAgICAgb3ZlcnJpZGVBY2Nlc3MsXG4gICAgICByZXEsXG4gICAgfSlcblxuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgICAvLyBiZWZvcmVWYWxpZGF0ZSAtIENvbGxlY3Rpb25cbiAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbiAgICBhd2FpdCBjb2xsZWN0aW9uQ29uZmlnLmhvb2tzLmJlZm9yZVZhbGlkYXRlLnJlZHVjZShhc3luYyAocHJpb3JIb29rLCBob29rKSA9PiB7XG4gICAgICBhd2FpdCBwcmlvckhvb2tcblxuICAgICAgZGF0YSA9XG4gICAgICAgIChhd2FpdCBob29rKHtcbiAgICAgICAgICBjb2xsZWN0aW9uOiBjb2xsZWN0aW9uQ29uZmlnLFxuICAgICAgICAgIGNvbnRleHQ6IHJlcS5jb250ZXh0LFxuICAgICAgICAgIGRhdGEsXG4gICAgICAgICAgb3BlcmF0aW9uOiAndXBkYXRlJyxcbiAgICAgICAgICBvcmlnaW5hbERvYyxcbiAgICAgICAgICByZXEsXG4gICAgICAgIH0pKSB8fCBkYXRhXG4gICAgfSwgUHJvbWlzZS5yZXNvbHZlKCkpXG5cbiAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4gICAgLy8gV3JpdGUgZmlsZXMgdG8gbG9jYWwgc3RvcmFnZVxuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuICAgIGlmICghY29sbGVjdGlvbkNvbmZpZy51cGxvYWQuZGlzYWJsZUxvY2FsU3RvcmFnZSkge1xuICAgICAgYXdhaXQgdXBsb2FkRmlsZXMocGF5bG9hZCwgZmlsZXNUb1VwbG9hZCwgdClcbiAgICB9XG5cbiAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4gICAgLy8gYmVmb3JlQ2hhbmdlIC0gQ29sbGVjdGlvblxuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuICAgIGF3YWl0IGNvbGxlY3Rpb25Db25maWcuaG9va3MuYmVmb3JlQ2hhbmdlLnJlZHVjZShhc3luYyAocHJpb3JIb29rLCBob29rKSA9PiB7XG4gICAgICBhd2FpdCBwcmlvckhvb2tcblxuICAgICAgZGF0YSA9XG4gICAgICAgIChhd2FpdCBob29rKHtcbiAgICAgICAgICBjb2xsZWN0aW9uOiBjb2xsZWN0aW9uQ29uZmlnLFxuICAgICAgICAgIGNvbnRleHQ6IHJlcS5jb250ZXh0LFxuICAgICAgICAgIGRhdGEsXG4gICAgICAgICAgb3BlcmF0aW9uOiAndXBkYXRlJyxcbiAgICAgICAgICBvcmlnaW5hbERvYyxcbiAgICAgICAgICByZXEsXG4gICAgICAgIH0pKSB8fCBkYXRhXG4gICAgfSwgUHJvbWlzZS5yZXNvbHZlKCkpXG5cbiAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4gICAgLy8gYmVmb3JlQ2hhbmdlIC0gRmllbGRzXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4gICAgbGV0IHJlc3VsdCA9IGF3YWl0IGJlZm9yZUNoYW5nZTxHZW5lcmF0ZWRUeXBlc1snY29sbGVjdGlvbnMnXVtUU2x1Z10+KHtcbiAgICAgIGlkLFxuICAgICAgY29sbGVjdGlvbjogY29sbGVjdGlvbkNvbmZpZyxcbiAgICAgIGNvbnRleHQ6IHJlcS5jb250ZXh0LFxuICAgICAgZGF0YSxcbiAgICAgIGRvYzogb3JpZ2luYWxEb2MsXG4gICAgICBkb2NXaXRoTG9jYWxlcyxcbiAgICAgIGdsb2JhbDogbnVsbCxcbiAgICAgIG9wZXJhdGlvbjogJ3VwZGF0ZScsXG4gICAgICByZXEsXG4gICAgICBza2lwVmFsaWRhdGlvbjogc2hvdWxkU2F2ZURyYWZ0IHx8IGRhdGEuX3N0YXR1cyA9PT0gJ2RyYWZ0JyxcbiAgICB9KVxuXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vIEhhbmRsZSBwb3RlbnRpYWwgcGFzc3dvcmQgdXBkYXRlXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4gICAgY29uc3QgZGF0YVRvVXBkYXRlOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiA9IHsgLi4ucmVzdWx0IH1cblxuICAgIGlmIChzaG91bGRTYXZlUGFzc3dvcmQgJiYgdHlwZW9mIHBhc3N3b3JkID09PSAnc3RyaW5nJykge1xuICAgICAgY29uc3QgeyBoYXNoLCBzYWx0IH0gPSBhd2FpdCBnZW5lcmF0ZVBhc3N3b3JkU2FsdEhhc2goeyBwYXNzd29yZCB9KVxuICAgICAgZGF0YVRvVXBkYXRlLnNhbHQgPSBzYWx0XG4gICAgICBkYXRhVG9VcGRhdGUuaGFzaCA9IGhhc2hcbiAgICAgIGRlbGV0ZSBkYXRhVG9VcGRhdGUucGFzc3dvcmRcbiAgICAgIGRlbGV0ZSBkYXRhLnBhc3N3b3JkXG4gICAgfVxuXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vIFVwZGF0ZVxuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuICAgIGlmICghc2hvdWxkU2F2ZURyYWZ0KSB7XG4gICAgICByZXN1bHQgPSBhd2FpdCByZXEucGF5bG9hZC5kYi51cGRhdGVPbmUoe1xuICAgICAgICBpZCxcbiAgICAgICAgY29sbGVjdGlvbjogY29sbGVjdGlvbkNvbmZpZy5zbHVnLFxuICAgICAgICBkYXRhOiBkYXRhVG9VcGRhdGUsXG4gICAgICAgIGxvY2FsZSxcbiAgICAgICAgcmVxLFxuICAgICAgfSlcbiAgICB9XG5cbiAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4gICAgLy8gQ3JlYXRlIHZlcnNpb25cbiAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbiAgICBpZiAoY29sbGVjdGlvbkNvbmZpZy52ZXJzaW9ucykge1xuICAgICAgcmVzdWx0ID0gYXdhaXQgc2F2ZVZlcnNpb24oe1xuICAgICAgICBpZCxcbiAgICAgICAgYXV0b3NhdmUsXG4gICAgICAgIGNvbGxlY3Rpb246IGNvbGxlY3Rpb25Db25maWcsXG4gICAgICAgIGRvY1dpdGhMb2NhbGVzOiB7XG4gICAgICAgICAgLi4ucmVzdWx0LFxuICAgICAgICAgIGNyZWF0ZWRBdDogZG9jV2l0aExvY2FsZXMuY3JlYXRlZEF0LFxuICAgICAgICB9LFxuICAgICAgICBkcmFmdDogc2hvdWxkU2F2ZURyYWZ0LFxuICAgICAgICBwYXlsb2FkLFxuICAgICAgICByZXEsXG4gICAgICB9KVxuICAgIH1cblxuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgICAvLyBhZnRlclJlYWQgLSBGaWVsZHNcbiAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbiAgICByZXN1bHQgPSBhd2FpdCBhZnRlclJlYWQoe1xuICAgICAgY29sbGVjdGlvbjogY29sbGVjdGlvbkNvbmZpZyxcbiAgICAgIGNvbnRleHQ6IHJlcS5jb250ZXh0LFxuICAgICAgZGVwdGgsXG4gICAgICBkb2M6IHJlc3VsdCxcbiAgICAgIGdsb2JhbDogbnVsbCxcbiAgICAgIG92ZXJyaWRlQWNjZXNzLFxuICAgICAgcmVxLFxuICAgICAgc2hvd0hpZGRlbkZpZWxkcyxcbiAgICB9KVxuXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vIGFmdGVyUmVhZCAtIENvbGxlY3Rpb25cbiAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbiAgICBhd2FpdCBjb2xsZWN0aW9uQ29uZmlnLmhvb2tzLmFmdGVyUmVhZC5yZWR1Y2UoYXN5bmMgKHByaW9ySG9vaywgaG9vaykgPT4ge1xuICAgICAgYXdhaXQgcHJpb3JIb29rXG5cbiAgICAgIHJlc3VsdCA9XG4gICAgICAgIChhd2FpdCBob29rKHtcbiAgICAgICAgICBjb2xsZWN0aW9uOiBjb2xsZWN0aW9uQ29uZmlnLFxuICAgICAgICAgIGNvbnRleHQ6IHJlcS5jb250ZXh0LFxuICAgICAgICAgIGRvYzogcmVzdWx0LFxuICAgICAgICAgIHJlcSxcbiAgICAgICAgfSkpIHx8IHJlc3VsdFxuICAgIH0sIFByb21pc2UucmVzb2x2ZSgpKVxuXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vIGFmdGVyQ2hhbmdlIC0gRmllbGRzXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4gICAgcmVzdWx0ID0gYXdhaXQgYWZ0ZXJDaGFuZ2U8R2VuZXJhdGVkVHlwZXNbJ2NvbGxlY3Rpb25zJ11bVFNsdWddPih7XG4gICAgICBjb2xsZWN0aW9uOiBjb2xsZWN0aW9uQ29uZmlnLFxuICAgICAgY29udGV4dDogcmVxLmNvbnRleHQsXG4gICAgICBkYXRhLFxuICAgICAgZG9jOiByZXN1bHQsXG4gICAgICBnbG9iYWw6IG51bGwsXG4gICAgICBvcGVyYXRpb246ICd1cGRhdGUnLFxuICAgICAgcHJldmlvdXNEb2M6IG9yaWdpbmFsRG9jLFxuICAgICAgcmVxLFxuICAgIH0pXG5cbiAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4gICAgLy8gYWZ0ZXJDaGFuZ2UgLSBDb2xsZWN0aW9uXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4gICAgYXdhaXQgY29sbGVjdGlvbkNvbmZpZy5ob29rcy5hZnRlckNoYW5nZS5yZWR1Y2UoYXN5bmMgKHByaW9ySG9vaywgaG9vaykgPT4ge1xuICAgICAgYXdhaXQgcHJpb3JIb29rXG5cbiAgICAgIHJlc3VsdCA9XG4gICAgICAgIChhd2FpdCBob29rKHtcbiAgICAgICAgICBjb2xsZWN0aW9uOiBjb2xsZWN0aW9uQ29uZmlnLFxuICAgICAgICAgIGNvbnRleHQ6IHJlcS5jb250ZXh0LFxuICAgICAgICAgIGRvYzogcmVzdWx0LFxuICAgICAgICAgIG9wZXJhdGlvbjogJ3VwZGF0ZScsXG4gICAgICAgICAgcHJldmlvdXNEb2M6IG9yaWdpbmFsRG9jLFxuICAgICAgICAgIHJlcSxcbiAgICAgICAgfSkpIHx8IHJlc3VsdFxuICAgIH0sIFByb21pc2UucmVzb2x2ZSgpKVxuXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vIGFmdGVyT3BlcmF0aW9uIC0gQ29sbGVjdGlvblxuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuICAgIHJlc3VsdCA9IGF3YWl0IGJ1aWxkQWZ0ZXJPcGVyYXRpb248R2VuZXJhdGVkVHlwZXNbJ2NvbGxlY3Rpb25zJ11bVFNsdWddPih7XG4gICAgICBhcmdzLFxuICAgICAgY29sbGVjdGlvbjogY29sbGVjdGlvbkNvbmZpZyxcbiAgICAgIG9wZXJhdGlvbjogJ3VwZGF0ZUJ5SUQnLFxuICAgICAgcmVzdWx0LFxuICAgIH0pXG5cbiAgICBhd2FpdCB1bmxpbmtUZW1wRmlsZXMoe1xuICAgICAgY29sbGVjdGlvbkNvbmZpZyxcbiAgICAgIGNvbmZpZyxcbiAgICAgIHJlcSxcbiAgICB9KVxuXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vIFJldHVybiByZXN1bHRzXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4gICAgaWYgKHNob3VsZENvbW1pdCkgYXdhaXQgY29tbWl0VHJhbnNhY3Rpb24ocmVxKVxuXG4gICAgcmV0dXJuIHJlc3VsdFxuICB9IGNhdGNoIChlcnJvcjogdW5rbm93bikge1xuICAgIGF3YWl0IGtpbGxUcmFuc2FjdGlvbihyZXEpXG4gICAgdGhyb3cgZXJyb3JcbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCB1cGRhdGVCeUlEXG4iXSwibmFtZXMiOlsidXBkYXRlQnlJRCIsImluY29taW5nQXJncyIsImFyZ3MiLCJjb2xsZWN0aW9uIiwiY29uZmlnIiwiaG9va3MiLCJiZWZvcmVPcGVyYXRpb24iLCJyZWR1Y2UiLCJwcmlvckhvb2siLCJob29rIiwiY29udGV4dCIsInJlcSIsIm9wZXJhdGlvbiIsIlByb21pc2UiLCJyZXNvbHZlIiwiaWQiLCJhdXRvc2F2ZSIsImNvbGxlY3Rpb25Db25maWciLCJkZXB0aCIsImRyYWZ0IiwiZHJhZnRBcmciLCJvdmVycmlkZUFjY2VzcyIsIm92ZXJ3cml0ZUV4aXN0aW5nRmlsZXMiLCJsb2NhbGUiLCJwYXlsb2FkIiwidCIsInNob3dIaWRkZW5GaWVsZHMiLCJzaG91bGRDb21taXQiLCJpbml0VHJhbnNhY3Rpb24iLCJBUElFcnJvciIsImh0dHBTdGF0dXMiLCJCQURfUkVRVUVTVCIsImRhdGEiLCJwYXNzd29yZCIsInNob3VsZFNhdmVEcmFmdCIsIkJvb2xlYW4iLCJ2ZXJzaW9ucyIsImRyYWZ0cyIsInNob3VsZFNhdmVQYXNzd29yZCIsImF1dGgiLCJhY2Nlc3NSZXN1bHRzIiwiZXhlY3V0ZUFjY2VzcyIsImFjY2VzcyIsInVwZGF0ZSIsImhhc1doZXJlUG9saWN5IiwiaGFzV2hlcmVBY2Nlc3NSZXN1bHQiLCJmaW5kT25lQXJncyIsInNsdWciLCJ3aGVyZSIsImNvbWJpbmVRdWVyaWVzIiwiZXF1YWxzIiwiZG9jV2l0aExvY2FsZXMiLCJnZXRMYXRlc3RDb2xsZWN0aW9uVmVyc2lvbiIsInF1ZXJ5IiwiTm90Rm91bmQiLCJGb3JiaWRkZW4iLCJvcmlnaW5hbERvYyIsImFmdGVyUmVhZCIsImRvYyIsImdsb2JhbCIsIm5ld0ZpbGVEYXRhIiwiZmlsZXMiLCJmaWxlc1RvVXBsb2FkIiwiZ2VuZXJhdGVGaWxlRGF0YSIsInRocm93T25NaXNzaW5nRmlsZSIsImRlbGV0ZUFzc29jaWF0ZWRGaWxlcyIsIm92ZXJyaWRlRGVsZXRlIiwiYmVmb3JlVmFsaWRhdGUiLCJ1cGxvYWQiLCJkaXNhYmxlTG9jYWxTdG9yYWdlIiwidXBsb2FkRmlsZXMiLCJiZWZvcmVDaGFuZ2UiLCJyZXN1bHQiLCJza2lwVmFsaWRhdGlvbiIsIl9zdGF0dXMiLCJkYXRhVG9VcGRhdGUiLCJoYXNoIiwic2FsdCIsImdlbmVyYXRlUGFzc3dvcmRTYWx0SGFzaCIsImRiIiwidXBkYXRlT25lIiwic2F2ZVZlcnNpb24iLCJjcmVhdGVkQXQiLCJhZnRlckNoYW5nZSIsInByZXZpb3VzRG9jIiwiYnVpbGRBZnRlck9wZXJhdGlvbiIsInVubGlua1RlbXBGaWxlcyIsImNvbW1pdFRyYW5zYWN0aW9uIiwiZXJyb3IiLCJraWxsVHJhbnNhY3Rpb24iXSwibWFwcGluZ3MiOiI7Ozs7K0JBK1hBOzs7ZUFBQTs7O21FQTdYdUI7c0VBT0c7MENBQ2U7dUJBQ0o7Z0NBQ047d0JBQ2U7NkJBQ2xCOzJCQUNGOzhCQUNHO2dDQUNFO3VDQUNPO2tDQUNMO2lDQUNEOzZCQUNKO21DQUNNO2lDQUNGO2lDQUNBOzRDQUNXOzZCQUNmO3VCQUNROzs7Ozs7QUFnQnBDLGVBQWVBLFdBQ2JDLFlBQTZEO0lBRTdELElBQUlDLE9BQU9EO0lBRVgsd0NBQXdDO0lBQ3hDLCtCQUErQjtJQUMvQix3Q0FBd0M7SUFFeEMsTUFBTUMsS0FBS0MsVUFBVSxDQUFDQyxNQUFNLENBQUNDLEtBQUssQ0FBQ0Ms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
310
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb2xsZWN0aW9ucy9vcGVyYXRpb25zL3VwZGF0ZUJ5SUQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBEZWVwUGFydGlhbCB9IGZyb20gJ3RzLWVzc2VudGlhbHMnXG5cbmltcG9ydCBodHRwU3RhdHVzIGZyb20gJ2h0dHAtc3RhdHVzJ1xuXG5pbXBvcnQgdHlwZSB7IEZpbmRPbmVBcmdzIH0gZnJvbSAnLi4vLi4vZGF0YWJhc2UvdHlwZXMnXG5pbXBvcnQgdHlwZSB7IFBheWxvYWRSZXF1ZXN0IH0gZnJvbSAnLi4vLi4vZXhwcmVzcy90eXBlcydcbmltcG9ydCB0eXBlIHsgR2VuZXJhdGVkVHlwZXMgfSBmcm9tICcuLi8uLi9pbmRleCdcbmltcG9ydCB0eXBlIHsgQ29sbGVjdGlvbiB9IGZyb20gJy4uL2NvbmZpZy90eXBlcydcblxuaW1wb3J0IGV4ZWN1dGVBY2Nlc3MgZnJvbSAnLi4vLi4vYXV0aC9leGVjdXRlQWNjZXNzJ1xuaW1wb3J0IHsgZ2VuZXJhdGVQYXNzd29yZFNhbHRIYXNoIH0gZnJvbSAnLi4vLi4vYXV0aC9zdHJhdGVnaWVzL2xvY2FsL2dlbmVyYXRlUGFzc3dvcmRTYWx0SGFzaCdcbmltcG9ydCB7IGhhc1doZXJlQWNjZXNzUmVzdWx0IH0gZnJvbSAnLi4vLi4vYXV0aC90eXBlcydcbmltcG9ydCB7IGNvbWJpbmVRdWVyaWVzIH0gZnJvbSAnLi4vLi4vZGF0YWJhc2UvY29tYmluZVF1ZXJpZXMnXG5pbXBvcnQgeyBBUElFcnJvciwgRm9yYmlkZGVuLCBOb3RGb3VuZCB9IGZyb20gJy4uLy4uL2Vycm9ycydcbmltcG9ydCB7IGFmdGVyQ2hhbmdlIH0gZnJvbSAnLi4vLi4vZmllbGRzL2hvb2tzL2FmdGVyQ2hhbmdlJ1xuaW1wb3J0IHsgYWZ0ZXJSZWFkIH0gZnJvbSAnLi4vLi4vZmllbGRzL2hvb2tzL2FmdGVyUmVhZCdcbmltcG9ydCB7IGJlZm9yZUNoYW5nZSB9IGZyb20gJy4uLy4uL2ZpZWxkcy9ob29rcy9iZWZvcmVDaGFuZ2UnXG5pbXBvcnQgeyBiZWZvcmVWYWxpZGF0ZSB9IGZyb20gJy4uLy4uL2ZpZWxkcy9ob29rcy9iZWZvcmVWYWxpZGF0ZSdcbmltcG9ydCB7IGRlbGV0ZUFzc29jaWF0ZWRGaWxlcyB9IGZyb20gJy4uLy4uL3VwbG9hZHMvZGVsZXRlQXNzb2NpYXRlZEZpbGVzJ1xuaW1wb3J0IHsgZ2VuZXJhdGVGaWxlRGF0YSB9IGZyb20gJy4uLy4uL3VwbG9hZHMvZ2VuZXJhdGVGaWxlRGF0YSdcbmltcG9ydCB7IHVubGlua1RlbXBGaWxlcyB9IGZyb20gJy4uLy4uL3VwbG9hZHMvdW5saW5rVGVtcEZpbGVzJ1xuaW1wb3J0IHsgdXBsb2FkRmlsZXMgfSBmcm9tICcuLi8uLi91cGxvYWRzL3VwbG9hZEZpbGVzJ1xuaW1wb3J0IHsgY29tbWl0VHJhbnNhY3Rpb24gfSBmcm9tICcuLi8uLi91dGlsaXRpZXMvY29tbWl0VHJhbnNhY3Rpb24nXG5pbXBvcnQgeyBpbml0VHJhbnNhY3Rpb24gfSBmcm9tICcuLi8uLi91dGlsaXRpZXMvaW5pdFRyYW5zYWN0aW9uJ1xuaW1wb3J0IHsga2lsbFRyYW5zYWN0aW9uIH0gZnJvbSAnLi4vLi4vdXRpbGl0aWVzL2tpbGxUcmFuc2FjdGlvbidcbmltcG9ydCB7IGdldExhdGVzdENvbGxlY3Rpb25WZXJzaW9uIH0gZnJvbSAnLi4vLi4vdmVyc2lvbnMvZ2V0TGF0ZXN0Q29sbGVjdGlvblZlcnNpb24nXG5pbXBvcnQgeyBzYXZlVmVyc2lvbiB9IGZyb20gJy4uLy4uL3ZlcnNpb25zL3NhdmVWZXJzaW9uJ1xuaW1wb3J0IHsgYnVpbGRBZnRlck9wZXJhdGlvbiB9IGZyb20gJy4vdXRpbHMnXG5cbmV4cG9ydCB0eXBlIEFyZ3VtZW50czxUIGV4dGVuZHMgeyBbZmllbGQ6IG51bWJlciB8IHN0cmluZyB8IHN5bWJvbF06IHVua25vd24gfT4gPSB7XG4gIGF1dG9zYXZlPzogYm9vbGVhblxuICBjb2xsZWN0aW9uOiBDb2xsZWN0aW9uXG4gIGRhdGE6IERlZXBQYXJ0aWFsPFQ+XG4gIGRlcHRoPzogbnVtYmVyXG4gIGRpc2FibGVWZXJpZmljYXRpb25FbWFpbD86IGJvb2xlYW5cbiAgZHJhZnQ/OiBib29sZWFuXG4gIGlkOiBudW1iZXIgfCBzdHJpbmdcbiAgb3ZlcnJpZGVBY2Nlc3M/OiBib29sZWFuXG4gIG92ZXJ3cml0ZUV4aXN0aW5nRmlsZXM/OiBib29sZWFuXG4gIHJlcTogUGF5bG9hZFJlcXVlc3RcbiAgc2hvd0hpZGRlbkZpZWxkcz86IGJvb2xlYW5cbn1cblxuYXN5bmMgZnVuY3Rpb24gdXBkYXRlQnlJRDxUU2x1ZyBleHRlbmRzIGtleW9mIEdlbmVyYXRlZFR5cGVzWydjb2xsZWN0aW9ucyddPihcbiAgaW5jb21pbmdBcmdzOiBBcmd1bWVudHM8R2VuZXJhdGVkVHlwZXNbJ2NvbGxlY3Rpb25zJ11bVFNsdWddPixcbik6IFByb21pc2U8R2VuZXJhdGVkVHlwZXNbJ2NvbGxlY3Rpb25zJ11bVFNsdWddPiB7XG4gIGxldCBhcmdzID0gaW5jb21pbmdBcmdzXG5cbiAgdHJ5IHtcbiAgICBjb25zdCBzaG91bGRDb21taXQgPSBhd2FpdCBpbml0VHJhbnNhY3Rpb24oYXJncy5yZXEpXG5cbiAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4gICAgLy8gYmVmb3JlT3BlcmF0aW9uIC0gQ29sbGVjdGlvblxuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuICAgIGF3YWl0IGFyZ3MuY29sbGVjdGlvbi5jb25maWcuaG9va3MuYmVmb3JlT3BlcmF0aW9uLnJlZHVjZShhc3luYyAocHJpb3JIb29rLCBob29rKSA9PiB7XG4gICAgICBhd2FpdCBwcmlvckhvb2tcblxuICAgICAgYXJncyA9XG4gICAgICAgIChhd2FpdCBob29rKHtcbiAgICAgICAgICBhcmdzLFxuICAgICAgICAgIGNvbGxlY3Rpb246IGFyZ3MuY29sbGVjdGlvbi5jb25maWcsXG4gICAgICAgICAgY29udGV4dDogYXJncy5yZXEuY29udGV4dCxcbiAgICAgICAgICBvcGVyYXRpb246ICd1cGRhdGUnLFxuICAgICAgICAgIHJlcTogYXJncy5yZXEsXG4gICAgICAgIH0pKSB8fCBhcmdzXG4gICAgfSwgUHJvbWlzZS5yZXNvbHZlKCkpXG5cbiAgICBjb25zdCB7XG4gICAgICBpZCxcbiAgICAgIGF1dG9zYXZlID0gZmFsc2UsXG4gICAgICBjb2xsZWN0aW9uOiB7IGNvbmZpZzogY29sbGVjdGlvbkNvbmZpZyB9LFxuICAgICAgY29sbGVjdGlvbixcbiAgICAgIGRlcHRoLFxuICAgICAgZHJhZnQ6IGRyYWZ0QXJnID0gZmFsc2UsXG4gICAgICBvdmVycmlkZUFjY2VzcyxcbiAgICAgIG92ZXJ3cml0ZUV4aXN0aW5nRmlsZXMgPSBmYWxzZSxcbiAgICAgIHJlcToge1xuICAgICAgICBsb2NhbGUsXG4gICAgICAgIHBheWxvYWQ6IHsgY29uZmlnIH0sXG4gICAgICAgIHBheWxvYWQsXG4gICAgICAgIHQsXG4gICAgICB9LFxuICAgICAgcmVxLFxuICAgICAgc2hvd0hpZGRlbkZpZWxkcyxcbiAgICB9ID0gYXJnc1xuXG4gICAgaWYgKCFpZCkge1xuICAgICAgdGhyb3cgbmV3IEFQSUVycm9yKCdNaXNzaW5nIElEIG9mIGRvY3VtZW50IHRvIHVwZGF0ZS4nLCBodHRwU3RhdHVzLkJBRF9SRVFVRVNUKVxuICAgIH1cblxuICAgIGxldCB7IGRhdGEgfSA9IGFyZ3NcbiAgICBjb25zdCB7IHBhc3N3b3JkIH0gPSBkYXRhXG4gICAgY29uc3Qgc2hvdWxkU2F2ZURyYWZ0ID0gQm9vbGVhbihkcmFmdEFyZyAmJiBjb2xsZWN0aW9uQ29uZmlnLnZlcnNpb25zLmRyYWZ0cylcbiAgICBjb25zdCBzaG91bGRTYXZlUGFzc3dvcmQgPSBCb29sZWFuKHBhc3N3b3JkICYmIGNvbGxlY3Rpb25Db25maWcuYXV0aCAmJiAhc2hvdWxkU2F2ZURyYWZ0KVxuXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vIEFjY2Vzc1xuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuICAgIGNvbnN0IGFjY2Vzc1Jlc3VsdHMgPSAhb3ZlcnJpZGVBY2Nlc3NcbiAgICAgID8gYXdhaXQgZXhlY3V0ZUFjY2Vzcyh7IGlkLCBkYXRhLCByZXEgfSwgY29sbGVjdGlvbkNvbmZpZy5hY2Nlc3MudXBkYXRlKVxuICAgICAgOiB0cnVlXG4gICAgY29uc3QgaGFzV2hlcmVQb2xpY3kgPSBoYXNXaGVyZUFjY2Vzc1Jlc3VsdChhY2Nlc3NSZXN1bHRzKVxuXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vIFJldHJpZXZlIGRvY3VtZW50XG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4gICAgY29uc3QgZmluZE9uZUFyZ3M6IEZpbmRPbmVBcmdzID0ge1xuICAgICAgY29sbGVjdGlvbjogY29sbGVjdGlvbkNvbmZpZy5zbHVnLFxuICAgICAgbG9jYWxlLFxuICAgICAgcmVxLFxuICAgICAgd2hlcmU6IGNvbWJpbmVRdWVyaWVzKHsgaWQ6IHsgZXF1YWxzOiBpZCB9IH0sIGFjY2Vzc1Jlc3VsdHMpLFxuICAgIH1cblxuICAgIGNvbnN0IGRvY1dpdGhMb2NhbGVzID0gYXdhaXQgZ2V0TGF0ZXN0Q29sbGVjdGlvblZlcnNpb24oe1xuICAgICAgaWQsXG4gICAgICBjb25maWc6IGNvbGxlY3Rpb25Db25maWcsXG4gICAgICBwYXlsb2FkLFxuICAgICAgcXVlcnk6IGZpbmRPbmVBcmdzLFxuICAgICAgcmVxLFxuICAgIH0pXG5cbiAgICBpZiAoIWRvY1dpdGhMb2NhbGVzICYmICFoYXNXaGVyZVBvbGljeSkgdGhyb3cgbmV3IE5vdEZvdW5kKHQpXG4gICAgaWYgKCFkb2NXaXRoTG9jYWxlcyAmJiBoYXNXaGVyZVBvbGljeSkgdGhyb3cgbmV3IEZvcmJpZGRlbih0KVxuXG4gICAgY29uc3Qgb3JpZ2luYWxEb2MgPSBhd2FpdCBhZnRlclJlYWQoe1xuICAgICAgY29sbGVjdGlvbjogY29sbGVjdGlvbkNvbmZpZyxcbiAgICAgIGNvbnRleHQ6IHJlcS5jb250ZXh0LFxuICAgICAgZGVwdGg6IDAsXG4gICAgICBkb2M6IGRvY1dpdGhMb2NhbGVzLFxuICAgICAgZ2xvYmFsOiBudWxsLFxuICAgICAgb3ZlcnJpZGVBY2Nlc3M6IHRydWUsXG4gICAgICByZXEsXG4gICAgICBzaG93SGlkZGVuRmllbGRzOiB0cnVlLFxuICAgIH0pXG5cbiAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4gICAgLy8gR2VuZXJhdGUgZGF0YSBmb3IgYWxsIGZpbGVzIGFuZCBzaXplc1xuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuICAgIGNvbnN0IHsgZGF0YTogbmV3RmlsZURhdGEsIGZpbGVzOiBmaWxlc1RvVXBsb2FkIH0gPSBhd2FpdCBnZW5lcmF0ZUZpbGVEYXRhKHtcbiAgICAgIGNvbGxlY3Rpb24sXG4gICAgICBjb25maWcsXG4gICAgICBkYXRhLFxuICAgICAgb3ZlcndyaXRlRXhpc3RpbmdGaWxlcyxcbiAgICAgIHJlcSxcbiAgICAgIHRocm93T25NaXNzaW5nRmlsZTogZmFsc2UsXG4gICAgfSlcblxuICAgIGRhdGEgPSBuZXdGaWxlRGF0YVxuXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vIERlbGV0ZSBhbnkgYXNzb2NpYXRlZCBmaWxlc1xuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuICAgIGF3YWl0IGRlbGV0ZUFzc29jaWF0ZWRGaWxlcyh7XG4gICAgICBjb2xsZWN0aW9uQ29uZmlnLFxuICAgICAgY29uZmlnLFxuICAgICAgZG9jOiBkb2NXaXRoTG9jYWxlcyxcbiAgICAgIGZpbGVzOiBmaWxlc1RvVXBsb2FkLFxuICAgICAgb3ZlcnJpZGVEZWxldGU6IGZhbHNlLFxuICAgICAgdCxcbiAgICB9KVxuXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vIGJlZm9yZVZhbGlkYXRlIC0gRmllbGRzXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4gICAgZGF0YSA9IGF3YWl0IGJlZm9yZVZhbGlkYXRlPERlZXBQYXJ0aWFsPEdlbmVyYXRlZFR5cGVzWydjb2xsZWN0aW9ucyddW1RTbHVnXT4+KHtcbiAgICAgIGlkLFxuICAgICAgY29sbGVjdGlvbjogY29sbGVjdGlvbkNvbmZpZyxcbiAgICAgIGNvbnRleHQ6IHJlcS5jb250ZXh0LFxuICAgICAgZGF0YSxcbiAgICAgIGRvYzogb3JpZ2luYWxEb2MsXG4gICAgICBnbG9iYWw6IG51bGwsXG4gICAgICBvcGVyYXRpb246ICd1cGRhdGUnLFxuICAgICAgb3ZlcnJpZGVBY2Nlc3MsXG4gICAgICByZXEsXG4gICAgfSlcblxuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgICAvLyBiZWZvcmVWYWxpZGF0ZSAtIENvbGxlY3Rpb25cbiAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbiAgICBhd2FpdCBjb2xsZWN0aW9uQ29uZmlnLmhvb2tzLmJlZm9yZVZhbGlkYXRlLnJlZHVjZShhc3luYyAocHJpb3JIb29rLCBob29rKSA9PiB7XG4gICAgICBhd2FpdCBwcmlvckhvb2tcblxuICAgICAgZGF0YSA9XG4gICAgICAgIChhd2FpdCBob29rKHtcbiAgICAgICAgICBjb2xsZWN0aW9uOiBjb2xsZWN0aW9uQ29uZmlnLFxuICAgICAgICAgIGNvbnRleHQ6IHJlcS5jb250ZXh0LFxuICAgICAgICAgIGRhdGEsXG4gICAgICAgICAgb3BlcmF0aW9uOiAndXBkYXRlJyxcbiAgICAgICAgICBvcmlnaW5hbERvYyxcbiAgICAgICAgICByZXEsXG4gICAgICAgIH0pKSB8fCBkYXRhXG4gICAgfSwgUHJvbWlzZS5yZXNvbHZlKCkpXG5cbiAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4gICAgLy8gV3JpdGUgZmlsZXMgdG8gbG9jYWwgc3RvcmFnZVxuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuICAgIGlmICghY29sbGVjdGlvbkNvbmZpZy51cGxvYWQuZGlzYWJsZUxvY2FsU3RvcmFnZSkge1xuICAgICAgYXdhaXQgdXBsb2FkRmlsZXMocGF5bG9hZCwgZmlsZXNUb1VwbG9hZCwgdClcbiAgICB9XG5cbiAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4gICAgLy8gYmVmb3JlQ2hhbmdlIC0gQ29sbGVjdGlvblxuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuICAgIGF3YWl0IGNvbGxlY3Rpb25Db25maWcuaG9va3MuYmVmb3JlQ2hhbmdlLnJlZHVjZShhc3luYyAocHJpb3JIb29rLCBob29rKSA9PiB7XG4gICAgICBhd2FpdCBwcmlvckhvb2tcblxuICAgICAgZGF0YSA9XG4gICAgICAgIChhd2FpdCBob29rKHtcbiAgICAgICAgICBjb2xsZWN0aW9uOiBjb2xsZWN0aW9uQ29uZmlnLFxuICAgICAgICAgIGNvbnRleHQ6IHJlcS5jb250ZXh0LFxuICAgICAgICAgIGRhdGEsXG4gICAgICAgICAgb3BlcmF0aW9uOiAndXBkYXRlJyxcbiAgICAgICAgICBvcmlnaW5hbERvYyxcbiAgICAgICAgICByZXEsXG4gICAgICAgIH0pKSB8fCBkYXRhXG4gICAgfSwgUHJvbWlzZS5yZXNvbHZlKCkpXG5cbiAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4gICAgLy8gYmVmb3JlQ2hhbmdlIC0gRmllbGRzXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4gICAgbGV0IHJlc3VsdCA9IGF3YWl0IGJlZm9yZUNoYW5nZTxHZW5lcmF0ZWRUeXBlc1snY29sbGVjdGlvbnMnXVtUU2x1Z10+KHtcbiAgICAgIGlkLFxuICAgICAgY29sbGVjdGlvbjogY29sbGVjdGlvbkNvbmZpZyxcbiAgICAgIGNvbnRleHQ6IHJlcS5jb250ZXh0LFxuICAgICAgZGF0YSxcbiAgICAgIGRvYzogb3JpZ2luYWxEb2MsXG4gICAgICBkb2NXaXRoTG9jYWxlcyxcbiAgICAgIGdsb2JhbDogbnVsbCxcbiAgICAgIG9wZXJhdGlvbjogJ3VwZGF0ZScsXG4gICAgICByZXEsXG4gICAgICBza2lwVmFsaWRhdGlvbjogc2hvdWxkU2F2ZURyYWZ0IHx8IGRhdGEuX3N0YXR1cyA9PT0gJ2RyYWZ0JyxcbiAgICB9KVxuXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vIEhhbmRsZSBwb3RlbnRpYWwgcGFzc3dvcmQgdXBkYXRlXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4gICAgY29uc3QgZGF0YVRvVXBkYXRlOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiA9IHsgLi4ucmVzdWx0IH1cblxuICAgIGlmIChzaG91bGRTYXZlUGFzc3dvcmQgJiYgdHlwZW9mIHBhc3N3b3JkID09PSAnc3RyaW5nJykge1xuICAgICAgY29uc3QgeyBoYXNoLCBzYWx0IH0gPSBhd2FpdCBnZW5lcmF0ZVBhc3N3b3JkU2FsdEhhc2goeyBwYXNzd29yZCB9KVxuICAgICAgZGF0YVRvVXBkYXRlLnNhbHQgPSBzYWx0XG4gICAgICBkYXRhVG9VcGRhdGUuaGFzaCA9IGhhc2hcbiAgICAgIGRlbGV0ZSBkYXRhVG9VcGRhdGUucGFzc3dvcmRcbiAgICAgIGRlbGV0ZSBkYXRhLnBhc3N3b3JkXG4gICAgfVxuXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vIFVwZGF0ZVxuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuICAgIGlmICghc2hvdWxkU2F2ZURyYWZ0KSB7XG4gICAgICByZXN1bHQgPSBhd2FpdCByZXEucGF5bG9hZC5kYi51cGRhdGVPbmUoe1xuICAgICAgICBpZCxcbiAgICAgICAgY29sbGVjdGlvbjogY29sbGVjdGlvbkNvbmZpZy5zbHVnLFxuICAgICAgICBkYXRhOiBkYXRhVG9VcGRhdGUsXG4gICAgICAgIGxvY2FsZSxcbiAgICAgICAgcmVxLFxuICAgICAgfSlcbiAgICB9XG5cbiAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4gICAgLy8gQ3JlYXRlIHZlcnNpb25cbiAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbiAgICBpZiAoY29sbGVjdGlvbkNvbmZpZy52ZXJzaW9ucykge1xuICAgICAgcmVzdWx0ID0gYXdhaXQgc2F2ZVZlcnNpb24oe1xuICAgICAgICBpZCxcbiAgICAgICAgYXV0b3NhdmUsXG4gICAgICAgIGNvbGxlY3Rpb246IGNvbGxlY3Rpb25Db25maWcsXG4gICAgICAgIGRvY1dpdGhMb2NhbGVzOiB7XG4gICAgICAgICAgLi4ucmVzdWx0LFxuICAgICAgICAgIGNyZWF0ZWRBdDogZG9jV2l0aExvY2FsZXMuY3JlYXRlZEF0LFxuICAgICAgICB9LFxuICAgICAgICBkcmFmdDogc2hvdWxkU2F2ZURyYWZ0LFxuICAgICAgICBwYXlsb2FkLFxuICAgICAgICByZXEsXG4gICAgICB9KVxuICAgIH1cblxuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiAgICAvLyBhZnRlclJlYWQgLSBGaWVsZHNcbiAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbiAgICByZXN1bHQgPSBhd2FpdCBhZnRlclJlYWQoe1xuICAgICAgY29sbGVjdGlvbjogY29sbGVjdGlvbkNvbmZpZyxcbiAgICAgIGNvbnRleHQ6IHJlcS5jb250ZXh0LFxuICAgICAgZGVwdGgsXG4gICAgICBkb2M6IHJlc3VsdCxcbiAgICAgIGdsb2JhbDogbnVsbCxcbiAgICAgIG92ZXJyaWRlQWNjZXNzLFxuICAgICAgcmVxLFxuICAgICAgc2hvd0hpZGRlbkZpZWxkcyxcbiAgICB9KVxuXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vIGFmdGVyUmVhZCAtIENvbGxlY3Rpb25cbiAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbiAgICBhd2FpdCBjb2xsZWN0aW9uQ29uZmlnLmhvb2tzLmFmdGVyUmVhZC5yZWR1Y2UoYXN5bmMgKHByaW9ySG9vaywgaG9vaykgPT4ge1xuICAgICAgYXdhaXQgcHJpb3JIb29rXG5cbiAgICAgIHJlc3VsdCA9XG4gICAgICAgIChhd2FpdCBob29rKHtcbiAgICAgICAgICBjb2xsZWN0aW9uOiBjb2xsZWN0aW9uQ29uZmlnLFxuICAgICAgICAgIGNvbnRleHQ6IHJlcS5jb250ZXh0LFxuICAgICAgICAgIGRvYzogcmVzdWx0LFxuICAgICAgICAgIHJlcSxcbiAgICAgICAgfSkpIHx8IHJlc3VsdFxuICAgIH0sIFByb21pc2UucmVzb2x2ZSgpKVxuXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vIGFmdGVyQ2hhbmdlIC0gRmllbGRzXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4gICAgcmVzdWx0ID0gYXdhaXQgYWZ0ZXJDaGFuZ2U8R2VuZXJhdGVkVHlwZXNbJ2NvbGxlY3Rpb25zJ11bVFNsdWddPih7XG4gICAgICBjb2xsZWN0aW9uOiBjb2xsZWN0aW9uQ29uZmlnLFxuICAgICAgY29udGV4dDogcmVxLmNvbnRleHQsXG4gICAgICBkYXRhLFxuICAgICAgZG9jOiByZXN1bHQsXG4gICAgICBnbG9iYWw6IG51bGwsXG4gICAgICBvcGVyYXRpb246ICd1cGRhdGUnLFxuICAgICAgcHJldmlvdXNEb2M6IG9yaWdpbmFsRG9jLFxuICAgICAgcmVxLFxuICAgIH0pXG5cbiAgICAvLyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4gICAgLy8gYWZ0ZXJDaGFuZ2UgLSBDb2xsZWN0aW9uXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4gICAgYXdhaXQgY29sbGVjdGlvbkNvbmZpZy5ob29rcy5hZnRlckNoYW5nZS5yZWR1Y2UoYXN5bmMgKHByaW9ySG9vaywgaG9vaykgPT4ge1xuICAgICAgYXdhaXQgcHJpb3JIb29rXG5cbiAgICAgIHJlc3VsdCA9XG4gICAgICAgIChhd2FpdCBob29rKHtcbiAgICAgICAgICBjb2xsZWN0aW9uOiBjb2xsZWN0aW9uQ29uZmlnLFxuICAgICAgICAgIGNvbnRleHQ6IHJlcS5jb250ZXh0LFxuICAgICAgICAgIGRvYzogcmVzdWx0LFxuICAgICAgICAgIG9wZXJhdGlvbjogJ3VwZGF0ZScsXG4gICAgICAgICAgcHJldmlvdXNEb2M6IG9yaWdpbmFsRG9jLFxuICAgICAgICAgIHJlcSxcbiAgICAgICAgfSkpIHx8IHJlc3VsdFxuICAgIH0sIFByb21pc2UucmVzb2x2ZSgpKVxuXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vIGFmdGVyT3BlcmF0aW9uIC0gQ29sbGVjdGlvblxuICAgIC8vIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuICAgIHJlc3VsdCA9IGF3YWl0IGJ1aWxkQWZ0ZXJPcGVyYXRpb248R2VuZXJhdGVkVHlwZXNbJ2NvbGxlY3Rpb25zJ11bVFNsdWddPih7XG4gICAgICBhcmdzLFxuICAgICAgY29sbGVjdGlvbjogY29sbGVjdGlvbkNvbmZpZyxcbiAgICAgIG9wZXJhdGlvbjogJ3VwZGF0ZUJ5SUQnLFxuICAgICAgcmVzdWx0LFxuICAgIH0pXG5cbiAgICBhd2FpdCB1bmxpbmtUZW1wRmlsZXMoe1xuICAgICAgY29sbGVjdGlvbkNvbmZpZyxcbiAgICAgIGNvbmZpZyxcbiAgICAgIHJlcSxcbiAgICB9KVxuXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAgIC8vIFJldHVybiByZXN1bHRzXG4gICAgLy8gLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4gICAgaWYgKHNob3VsZENvbW1pdCkgYXdhaXQgY29tbWl0VHJhbnNhY3Rpb24ocmVxKVxuXG4gICAgcmV0dXJuIHJlc3VsdFxuICB9IGNhdGNoIChlcnJvcjogdW5rbm93bikge1xuICAgIGF3YWl0IGtpbGxUcmFuc2FjdGlvbihhcmdzLnJlcSlcbiAgICB0aHJvdyBlcnJvclxuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IHVwZGF0ZUJ5SURcbiJdLCJuYW1lcyI6WyJ1cGRhdGVCeUlEIiwiaW5jb21pbmdBcmdzIiwiYXJncyIsInNob3VsZENvbW1pdCIsImluaXRUcmFuc2FjdGlvbiIsInJlcSIsImNvbGxlY3Rpb24iLCJjb25maWciLCJob29rcyIsImJlZm9yZU9wZXJhdGlvbiIsInJlZHVjZSIsInByaW9ySG9vayIsImhvb2siLCJjb250ZXh0Iiwib3BlcmF0aW9uIiwiUHJvbWlzZSIsInJlc29sdmUiLCJpZCIsImF1dG9zYXZlIiwiY29sbGVjdGlvbkNvbmZpZyIsImRlcHRoIiwiZHJhZnQiLCJkcmFmdEFyZyIsIm92ZXJyaWRlQWNjZXNzIiwib3ZlcndyaXRlRXhpc3RpbmdGaWxlcyIsImxvY2FsZSIsInBheWxvYWQiLCJ0Iiwic2hvd0hpZGRlbkZpZWxkcyIsIkFQSUVycm9yIiwiaHR0cFN0YXR1cyIsIkJBRF9SRVFVRVNUIiwiZGF0YSIsInBhc3N3b3JkIiwic2hvdWxkU2F2ZURyYWZ0IiwiQm9vbGVhbiIsInZlcnNpb25zIiwiZHJhZnRzIiwic2hvdWxkU2F2ZVBhc3N3b3JkIiwiYXV0aCIsImFjY2Vzc1Jlc3VsdHMiLCJleGVjdXRlQWNjZXNzIiwiYWNjZXNzIiwidXBkYXRlIiwiaGFzV2hlcmVQb2xpY3kiLCJoYXNXaGVyZUFjY2Vzc1Jlc3VsdCIsImZpbmRPbmVBcmdzIiwic2x1ZyIsIndoZXJlIiwiY29tYmluZVF1ZXJpZXMiLCJlcXVhbHMiLCJkb2NXaXRoTG9jYWxlcyIsImdldExhdGVzdENvbGxlY3Rpb25WZXJzaW9uIiwicXVlcnkiLCJOb3RGb3VuZCIsIkZvcmJpZGRlbiIsIm9yaWdpbmFsRG9jIiwiYWZ0ZXJSZWFkIiwiZG9jIiwiZ2xvYmFsIiwibmV3RmlsZURhdGEiLCJmaWxlcyIsImZpbGVzVG9VcGxvYWQiLCJnZW5lcmF0ZUZpbGVEYXRhIiwidGhyb3dPbk1pc3NpbmdGaWxlIiwiZGVsZXRlQXNzb2NpYXRlZEZpbGVzIiwib3ZlcnJpZGVEZWxldGUiLCJiZWZvcmVWYWxpZGF0ZSIsInVwbG9hZCIsImRpc2FibGVMb2NhbFN0b3JhZ2UiLCJ1cGxvYWRGaWxlcyIsImJlZm9yZUNoYW5nZSIsInJlc3VsdCIsInNraXBWYWxpZGF0aW9uIiwiX3N0YXR1cyIsImRhdGFUb1VwZGF0ZSIsImhhc2giLCJzYWx0IiwiZ2VuZXJhdGVQYXNzd29yZFNhbHRIYXNoIiwiZGIiLCJ1cGRhdGVPbmUiLCJzYXZlVmVyc2lvbiIsImNyZWF0ZWRBdCIsImFmdGVyQ2hhbmdlIiwicHJldmlvdXNEb2MiLCJidWlsZEFmdGVyT3BlcmF0aW9uIiwidW5saW5rVGVtcEZpbGVzIiwiY29tbWl0VHJhbnNhY3Rpb24iLCJlcnJvciIsImtpbGxUcmFuc2FjdGlvbiJdLCJtYXBwaW5ncyI6Ijs7OzsrQkFnWUE7OztlQUFBOzs7bUVBOVh1QjtzRUFPRzswQ0FDZTt1QkFDSjtnQ0FDTjt3QkFDZTs2QkFDbEI7MkJBQ0Y7OEJBQ0c7Z0NBQ0U7dUNBQ087a0NBQ0w7aUNBQ0Q7NkJBQ0o7bUNBQ007aUNBQ0Y7aUNBQ0E7NENBQ1c7NkJBQ2Y7dUJBQ1E7Ozs7OztBQWdCcEMsZUFBZUEsV0FDYkMsWUFBNkQ7SUFFN0QsSUFB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
@@ -1,6 +1,7 @@
1
1
  import type forgotPassword from '../../auth/operations/forgotPassword';
2
2
  import type login from '../../auth/operations/login';
3
3
  import type refresh from '../../auth/operations/refresh';
4
+ import type { PayloadRequest } from '../../express/types';
4
5
  import type { SanitizedCollectionConfig, TypeWithID } from '../config/types';
5
6
  import type create from './create';
6
7
  import type deleteOperation from './delete';
@@ -22,67 +23,51 @@ export type AfterOperationMap<T extends TypeWithID> = {
22
23
  updateByID: typeof updateByID;
23
24
  };
24
25
  export type AfterOperationArg<T extends TypeWithID> = {
25
- args: Parameters<AfterOperationMap<T>['create']>[0];
26
26
  /** The collection which this hook is being run on */
27
27
  collection: SanitizedCollectionConfig;
28
+ req: PayloadRequest;
29
+ } & ({
30
+ args: Parameters<AfterOperationMap<T>['create']>[0];
28
31
  operation: 'create';
29
32
  result: Awaited<ReturnType<AfterOperationMap<T>['create']>>;
30
33
  } | {
31
34
  args: Parameters<AfterOperationMap<T>['delete']>[0];
32
- /** The collection which this hook is being run on */
33
- collection: SanitizedCollectionConfig;
34
35
  operation: 'delete';
35
36
  result: Awaited<ReturnType<AfterOperationMap<T>['delete']>>;
36
37
  } | {
37
38
  args: Parameters<AfterOperationMap<T>['deleteByID']>[0];
38
- /** The collection which this hook is being run on */
39
- collection: SanitizedCollectionConfig;
40
39
  operation: 'deleteByID';
41
40
  result: Awaited<ReturnType<AfterOperationMap<T>['deleteByID']>>;
42
41
  } | {
43
42
  args: Parameters<AfterOperationMap<T>['find']>[0];
44
- /** The collection which this hook is being run on */
45
- collection: SanitizedCollectionConfig;
46
43
  operation: 'find';
47
44
  result: Awaited<ReturnType<AfterOperationMap<T>['find']>>;
48
45
  } | {
49
46
  args: Parameters<AfterOperationMap<T>['findByID']>[0];
50
- /** The collection which this hook is being run on */
51
- collection: SanitizedCollectionConfig;
52
47
  operation: 'findByID';
53
48
  result: Awaited<ReturnType<AfterOperationMap<T>['findByID']>>;
54
49
  } | {
55
50
  args: Parameters<AfterOperationMap<T>['forgotPassword']>[0];
56
- /** The collection which this hook is being run on */
57
- collection: SanitizedCollectionConfig;
58
51
  operation: 'forgotPassword';
59
52
  result: Awaited<ReturnType<AfterOperationMap<T>['forgotPassword']>>;
60
53
  } | {
61
54
  args: Parameters<AfterOperationMap<T>['login']>[0];
62
- /** The collection which this hook is being run on */
63
- collection: SanitizedCollectionConfig;
64
55
  operation: 'login';
65
56
  result: Awaited<ReturnType<AfterOperationMap<T>['login']>>;
66
57
  } | {
67
58
  args: Parameters<AfterOperationMap<T>['refresh']>[0];
68
- /** The collection which this hook is being run on */
69
- collection: SanitizedCollectionConfig;
70
59
  operation: 'refresh';
71
60
  result: Awaited<ReturnType<AfterOperationMap<T>['refresh']>>;
72
61
  } | {
73
62
  args: Parameters<AfterOperationMap<T>['update']>[0];
74
- /** The collection which this hook is being run on */
75
- collection: SanitizedCollectionConfig;
76
63
  operation: 'update';
77
64
  result: Awaited<ReturnType<AfterOperationMap<T>['update']>>;
78
65
  } | {
79
66
  args: Parameters<AfterOperationMap<T>['updateByID']>[0];
80
- /** The collection which this hook is being run on */
81
- collection: SanitizedCollectionConfig;
82
67
  operation: 'updateByID';
83
68
  result: Awaited<ReturnType<AfterOperationMap<T>['updateByID']>>;
84
- };
85
- export declare const buildAfterOperation: <T extends TypeWithID = any, O extends keyof AfterOperationMap<T> = keyof AfterOperationMap<T>>(operationArgs: AfterOperationArg<T> & {
69
+ });
70
+ export declare const buildAfterOperation: <T extends TypeWithID = any, O extends keyof AfterOperationMap<T> = keyof AfterOperationMap<T>>(operationArgs: Omit<AfterOperationArg<T>, "req"> & {
86
71
  operation: O;
87
72
  }) => Promise<Awaited<ReturnType<AfterOperationMap<T>[O]>>>;
88
73
  //# sourceMappingURL=utils.d.ts.map