payload 2.0.0-beta.12 → 2.0.0-beta.15

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 (67) hide show
  1. package/dist/admin/components/elements/ArrayAction/index.js +2 -2
  2. package/dist/admin/components/elements/DocumentControls/index.d.ts.map +1 -1
  3. package/dist/admin/components/elements/DocumentControls/index.js +1 -2
  4. package/dist/admin/components/elements/DocumentHeader/Tabs/index.d.ts.map +1 -1
  5. package/dist/admin/components/elements/DocumentHeader/Tabs/index.js +4 -2
  6. package/dist/admin/components/elements/DocumentHeader/Tabs/index.scss +6 -10
  7. package/dist/admin/components/elements/Hamburger/index.scss +2 -2
  8. package/dist/admin/components/elements/Header/index.d.ts.map +1 -1
  9. package/dist/admin/components/elements/Header/index.js +6 -6
  10. package/dist/admin/components/elements/Localizer/index.d.ts.map +1 -1
  11. package/dist/admin/components/elements/Localizer/index.js +1 -3
  12. package/dist/admin/components/elements/Nav/context.d.ts +1 -1
  13. package/dist/admin/components/elements/Nav/context.d.ts.map +1 -1
  14. package/dist/admin/components/elements/Nav/context.js +12 -7
  15. package/dist/admin/components/elements/Nav/index.d.ts.map +1 -1
  16. package/dist/admin/components/elements/Nav/index.js +19 -18
  17. package/dist/admin/components/elements/WhereBuilder/Condition/index.js +6 -6
  18. package/dist/admin/components/elements/WhereBuilder/field-types.js +2 -2
  19. package/dist/admin/components/forms/Form/buildStateFromSchema/addFieldStatePromise.js +5 -5
  20. package/dist/admin/components/forms/Form/fieldReducer.js +7 -7
  21. package/dist/admin/components/forms/Form/index.js +3 -3
  22. package/dist/admin/components/forms/field-types/Array/index.d.ts.map +1 -1
  23. package/dist/admin/components/forms/field-types/Array/index.js +10 -10
  24. package/dist/admin/components/forms/field-types/Blocks/index.js +8 -8
  25. package/dist/admin/components/forms/field-types/Select/Input.d.ts.map +1 -1
  26. package/dist/admin/components/forms/field-types/Select/Input.js +4 -4
  27. package/dist/admin/components/icons/MinimizeMaximize/index.d.ts +8 -0
  28. package/dist/admin/components/icons/MinimizeMaximize/index.d.ts.map +1 -0
  29. package/dist/admin/components/icons/MinimizeMaximize/index.js +85 -0
  30. package/dist/admin/components/templates/Default/index.d.ts.map +1 -1
  31. package/dist/admin/components/templates/Default/index.js +10 -10
  32. package/dist/admin/components/views/API/index.d.ts +6 -0
  33. package/dist/admin/components/views/API/index.d.ts.map +1 -0
  34. package/dist/admin/components/views/API/index.js +281 -0
  35. package/dist/admin/components/views/API/index.scss +202 -0
  36. package/dist/admin/components/views/Global/Routes/CustomComponent.d.ts.map +1 -1
  37. package/dist/admin/components/views/Global/Routes/CustomComponent.js +3 -2
  38. package/dist/admin/components/views/Global/Routes/index.d.ts.map +1 -1
  39. package/dist/admin/components/views/Global/Routes/index.js +8 -1
  40. package/dist/admin/components/views/LivePreview/Preview/index.d.ts.map +1 -1
  41. package/dist/admin/components/views/LivePreview/Preview/index.js +19 -3
  42. package/dist/admin/components/views/collections/Edit/Routes/CustomComponent.js +3 -3
  43. package/dist/admin/components/views/collections/Edit/SetStepNav.js +3 -3
  44. package/dist/auth/operations/me.d.ts.map +1 -1
  45. package/dist/auth/operations/me.js +13 -5
  46. package/dist/auth/strategies/jwt.js +3 -3
  47. package/dist/bin/build.d.ts.map +1 -1
  48. package/dist/bin/build.js +9 -5
  49. package/dist/bin/generateGraphQLSchema.js +2 -2
  50. package/dist/bin/index.js +2 -2
  51. package/dist/database/migrations/migrateReset.d.ts.map +1 -1
  52. package/dist/database/migrations/migrateReset.js +17 -1
  53. package/dist/database/migrations/migrationsCollection.d.ts.map +1 -1
  54. package/dist/database/migrations/migrationsCollection.js +1 -5
  55. package/dist/fields/hooks/beforeChange/promise.d.ts.map +1 -1
  56. package/dist/fields/hooks/beforeChange/promise.js +2 -9
  57. package/dist/fields/validations.d.ts.map +1 -1
  58. package/dist/fields/validations.js +9 -7
  59. package/dist/utilities/fieldSchemaToJSON.d.ts +3 -0
  60. package/dist/utilities/fieldSchemaToJSON.d.ts.map +1 -0
  61. package/dist/utilities/fieldSchemaToJSON.js +77 -0
  62. package/package.json +1 -1
  63. package/components/rich-text.d.ts +0 -4
  64. package/components/rich-text.js +0 -31
  65. package/dist/admin/components/views/LivePreview/useLivePreview.d.ts +0 -8
  66. package/dist/admin/components/views/LivePreview/useLivePreview.d.ts.map +0 -1
  67. package/dist/admin/components/views/LivePreview/useLivePreview.js +0 -43
@@ -23,8 +23,8 @@ async function generateGraphQLSchema() {
23
23
  const config = await (0, _load.default)();
24
24
  config.db = null;
25
25
  await _.default.init({
26
- disableOnInit: true,
27
26
  disableDBConnect: true,
27
+ disableOnInit: true,
28
28
  local: true,
29
29
  secret: '--unused--'
30
30
  });
@@ -38,4 +38,4 @@ if (module.id === require.main.id) {
38
38
  generateGraphQLSchema();
39
39
  }
40
40
 
41
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9iaW4vZ2VuZXJhdGVHcmFwaFFMU2NoZW1hLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIG5vLW5lc3RlZC10ZXJuYXJ5ICovXG5pbXBvcnQgZnMgZnJvbSAnZnMnXG5pbXBvcnQgeyBwcmludFNjaGVtYSB9IGZyb20gJ2dyYXBocWwnXG5cbmltcG9ydCBwYXlsb2FkIGZyb20gJy4uJ1xuaW1wb3J0IGxvYWRDb25maWcgZnJvbSAnLi4vY29uZmlnL2xvYWQnXG5pbXBvcnQgTG9nZ2VyIGZyb20gJy4uL3V0aWxpdGllcy9sb2dnZXInXG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZW5lcmF0ZUdyYXBoUUxTY2hlbWEoKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IGxvZ2dlciA9IExvZ2dlcigpXG4gIGNvbnN0IGNvbmZpZyA9IGF3YWl0IGxvYWRDb25maWcoKVxuXG4gIGNvbmZpZy5kYiA9IG51bGxcblxuICBhd2FpdCBwYXlsb2FkLmluaXQoe1xuICAgIGRpc2FibGVPbkluaXQ6IHRydWUsXG4gICAgZGlzYWJsZURCQ29ubmVjdDogdHJ1ZSxcbiAgICBsb2NhbDogdHJ1ZSxcbiAgICBzZWNyZXQ6ICctLXVudXNlZC0tJyxcbiAgfSlcblxuICBsb2dnZXIuaW5mbygnQ29tcGlsaW5nIEdyYXBoUUwgc2NoZW1hLi4uJylcbiAgZnMud3JpdGVGaWxlU3luYyhjb25maWcuZ3JhcGhRTC5zY2hlbWFPdXRwdXRGaWxlLCBwcmludFNjaGVtYShwYXlsb2FkLnNjaGVtYSkpXG4gIGxvZ2dlci5pbmZvKGBHcmFwaFFMIHdyaXR0ZW4gdG8gJHtjb25maWcuZ3JhcGhRTC5zY2hlbWFPdXRwdXRGaWxlfWApXG59XG5cbi8vIHdoZW4gZ2VuZXJhdGVHcmFwaFFMU2NoZW1hLmpzIGlzIGxhdW5jaGVkIGRpcmVjdGx5XG5pZiAobW9kdWxlLmlkID09PSByZXF1aXJlLm1haW4uaWQpIHtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1mbG9hdGluZy1wcm9taXNlc1xuICBnZW5lcmF0ZUdyYXBoUUxTY2hlbWEoKVxufVxuIl0sIm5hbWVzIjpbImdlbmVyYXRlR3JhcGhRTFNjaGVtYSIsImxvZ2dlciIsIkxvZ2dlciIsImNvbmZpZyIsImxvYWRDb25maWciLCJkYiIsInBheWxvYWQiLCJpbml0IiwiZGlzYWJsZU9uSW5pdCIsImRpc2FibGVEQkNvbm5lY3QiLCJsb2NhbCIsInNlY3JldCIsImluZm8iLCJmcyIsIndyaXRlRmlsZVN5bmMiLCJncmFwaFFMIiwic2NoZW1hT3V0cHV0RmlsZSIsInByaW50U2NoZW1hIiwic2NoZW1hIiwibW9kdWxlIiwiaWQiLCJyZXF1aXJlIiwibWFpbiJdLCJtYXBwaW5ncyI6IkFBQUEsb0NBQW9DOzs7OytCQVFkQTs7O2VBQUFBOzs7MkRBUFA7eUJBQ2E7eURBRVI7NkRBQ0c7K0RBQ0o7Ozs7OztBQUVaLGVBQWVBO0lBQ3BCLE1BQU1DLFNBQVNDLElBQUFBLGVBQU07SUFDckIsTUFBTUMsU0FBUyxNQUFNQyxJQUFBQSxhQUFVO0lBRS9CRCxPQUFPRSxFQUFFLEdBQUc7SUFFWixNQUFNQyxTQUFPLENBQUNDLElBQUksQ0FBQztRQUNqQkMsZUFBZTtRQUNmQyxrQkFBa0I7UUFDbEJDLE9BQU87UUFDUEMsUUFBUTtJQUNWO0lBRUFWLE9BQU9XLElBQUksQ0FBQztJQUNaQyxXQUFFLENBQUNDLGFBQWEsQ0FBQ1gsT0FBT1ksT0FBTyxDQUFDQyxnQkFBZ0IsRUFBRUMsSUFBQUEsb0JBQVcsRUFBQ1gsU0FBTyxDQUFDWSxNQUFNO0lBQzVFakIsT0FBT1csSUFBSSxDQUFDLENBQUMsbUJBQW1CLEVBQUVULE9BQU9ZLE9BQU8sQ0FBQ0MsZ0JBQWdCLENBQUMsQ0FBQztBQUNyRTtBQUVBLHFEQUFxRDtBQUNyRCxJQUFJRyxPQUFPQyxFQUFFLEtBQUtDLFFBQVFDLElBQUksQ0FBQ0YsRUFBRSxFQUFFO0lBQ2pDLG1FQUFtRTtJQUNuRXBCO0FBQ0YifQ==
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9iaW4vZ2VuZXJhdGVHcmFwaFFMU2NoZW1hLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIG5vLW5lc3RlZC10ZXJuYXJ5ICovXG5pbXBvcnQgZnMgZnJvbSAnZnMnXG5pbXBvcnQgeyBwcmludFNjaGVtYSB9IGZyb20gJ2dyYXBocWwnXG5cbmltcG9ydCBwYXlsb2FkIGZyb20gJy4uJ1xuaW1wb3J0IGxvYWRDb25maWcgZnJvbSAnLi4vY29uZmlnL2xvYWQnXG5pbXBvcnQgTG9nZ2VyIGZyb20gJy4uL3V0aWxpdGllcy9sb2dnZXInXG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZW5lcmF0ZUdyYXBoUUxTY2hlbWEoKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IGxvZ2dlciA9IExvZ2dlcigpXG4gIGNvbnN0IGNvbmZpZyA9IGF3YWl0IGxvYWRDb25maWcoKVxuXG4gIGNvbmZpZy5kYiA9IG51bGxcblxuICBhd2FpdCBwYXlsb2FkLmluaXQoe1xuICAgIGRpc2FibGVEQkNvbm5lY3Q6IHRydWUsXG4gICAgZGlzYWJsZU9uSW5pdDogdHJ1ZSxcbiAgICBsb2NhbDogdHJ1ZSxcbiAgICBzZWNyZXQ6ICctLXVudXNlZC0tJyxcbiAgfSlcblxuICBsb2dnZXIuaW5mbygnQ29tcGlsaW5nIEdyYXBoUUwgc2NoZW1hLi4uJylcbiAgZnMud3JpdGVGaWxlU3luYyhjb25maWcuZ3JhcGhRTC5zY2hlbWFPdXRwdXRGaWxlLCBwcmludFNjaGVtYShwYXlsb2FkLnNjaGVtYSkpXG4gIGxvZ2dlci5pbmZvKGBHcmFwaFFMIHdyaXR0ZW4gdG8gJHtjb25maWcuZ3JhcGhRTC5zY2hlbWFPdXRwdXRGaWxlfWApXG59XG5cbi8vIHdoZW4gZ2VuZXJhdGVHcmFwaFFMU2NoZW1hLmpzIGlzIGxhdW5jaGVkIGRpcmVjdGx5XG5pZiAobW9kdWxlLmlkID09PSByZXF1aXJlLm1haW4uaWQpIHtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1mbG9hdGluZy1wcm9taXNlc1xuICBnZW5lcmF0ZUdyYXBoUUxTY2hlbWEoKVxufVxuIl0sIm5hbWVzIjpbImdlbmVyYXRlR3JhcGhRTFNjaGVtYSIsImxvZ2dlciIsIkxvZ2dlciIsImNvbmZpZyIsImxvYWRDb25maWciLCJkYiIsInBheWxvYWQiLCJpbml0IiwiZGlzYWJsZURCQ29ubmVjdCIsImRpc2FibGVPbkluaXQiLCJsb2NhbCIsInNlY3JldCIsImluZm8iLCJmcyIsIndyaXRlRmlsZVN5bmMiLCJncmFwaFFMIiwic2NoZW1hT3V0cHV0RmlsZSIsInByaW50U2NoZW1hIiwic2NoZW1hIiwibW9kdWxlIiwiaWQiLCJyZXF1aXJlIiwibWFpbiJdLCJtYXBwaW5ncyI6IkFBQUEsb0NBQW9DOzs7OytCQVFkQTs7O2VBQUFBOzs7MkRBUFA7eUJBQ2E7eURBRVI7NkRBQ0c7K0RBQ0o7Ozs7OztBQUVaLGVBQWVBO0lBQ3BCLE1BQU1DLFNBQVNDLElBQUFBLGVBQU07SUFDckIsTUFBTUMsU0FBUyxNQUFNQyxJQUFBQSxhQUFVO0lBRS9CRCxPQUFPRSxFQUFFLEdBQUc7SUFFWixNQUFNQyxTQUFPLENBQUNDLElBQUksQ0FBQztRQUNqQkMsa0JBQWtCO1FBQ2xCQyxlQUFlO1FBQ2ZDLE9BQU87UUFDUEMsUUFBUTtJQUNWO0lBRUFWLE9BQU9XLElBQUksQ0FBQztJQUNaQyxXQUFFLENBQUNDLGFBQWEsQ0FBQ1gsT0FBT1ksT0FBTyxDQUFDQyxnQkFBZ0IsRUFBRUMsSUFBQUEsb0JBQVcsRUFBQ1gsU0FBTyxDQUFDWSxNQUFNO0lBQzVFakIsT0FBT1csSUFBSSxDQUFDLENBQUMsbUJBQW1CLEVBQUVULE9BQU9ZLE9BQU8sQ0FBQ0MsZ0JBQWdCLENBQUMsQ0FBQztBQUNyRTtBQUVBLHFEQUFxRDtBQUNyRCxJQUFJRyxPQUFPQyxFQUFFLEtBQUtDLFFBQVFDLElBQUksQ0FBQ0YsRUFBRSxFQUFFO0lBQ2pDLG1FQUFtRTtJQUNuRXBCO0FBQ0YifQ==
package/dist/bin/index.js CHANGED
@@ -21,7 +21,7 @@ loadEnv();
21
21
  const tsConfig = (0, _gettsconfig.getTsconfig)();
22
22
  const swcOptions = {
23
23
  ignore: [
24
- /.*\/node_modules\/.*/
24
+ /.*[\\/]node_modules[\\/].*/
25
25
  ],
26
26
  jsc: {
27
27
  baseUrl: _path.default.resolve(),
@@ -94,4 +94,4 @@ if (script.startsWith('migrate')) {
94
94
  }
95
95
  }
96
96
 
97
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9iaW4vaW5kZXgudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWZsb2F0aW5nLXByb21pc2VzICovXG4vKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdmFyLXJlcXVpcmVzICovXG5pbXBvcnQgc3djUmVnaXN0ZXIgZnJvbSAnQHN3Yy9yZWdpc3RlcidcbmltcG9ydCBkb3RlbnYgZnJvbSAnZG90ZW52J1xuaW1wb3J0IGZpbmRVcCBmcm9tICdmaW5kLXVwJ1xuaW1wb3J0IGZzIGZyb20gJ2ZzJ1xuaW1wb3J0IHsgZ2V0VHNjb25maWcgYXMgZ2V0VFNjb25maWcgfSBmcm9tICdnZXQtdHNjb25maWcnXG5pbXBvcnQgbWluaW1pc3QgZnJvbSAnbWluaW1pc3QnXG5pbXBvcnQgcGF0aCBmcm9tICdwYXRoJ1xuXG5pbXBvcnQgeyBnZW5lcmF0ZUdyYXBoUUxTY2hlbWEgfSBmcm9tICcuL2dlbmVyYXRlR3JhcGhRTFNjaGVtYSdcbmltcG9ydCB7IGdlbmVyYXRlVHlwZXMgfSBmcm9tICcuL2dlbmVyYXRlVHlwZXMnXG5pbXBvcnQgeyBtaWdyYXRlIH0gZnJvbSAnLi9taWdyYXRlJ1xuXG5sb2FkRW52KClcblxuY29uc3QgdHNDb25maWcgPSBnZXRUU2NvbmZpZygpXG5cbmNvbnN0IHN3Y09wdGlvbnMgPSB7XG4gIGlnbm9yZTogW1xuICAgIC8uKlxcL25vZGVfbW9kdWxlc1xcLy4qLywgLy8gcGFyc2UgZXZlcnl0aGluZyBiZXNpZGVzIGZpbGVzIHdpdGhpbiBub2RlX21vZHVsZXNcbiAgXSxcbiAganNjOiB7XG4gICAgYmFzZVVybDogcGF0aC5yZXNvbHZlKCksXG4gICAgcGFyc2VyOiB7XG4gICAgICBzeW50YXg6ICd0eXBlc2NyaXB0JyxcbiAgICAgIHRzeDogdHJ1ZSxcbiAgICB9LFxuICAgIHBhdGhzOiB1bmRlZmluZWQsXG4gIH0sXG4gIG1vZHVsZToge1xuICAgIHR5cGU6ICdjb21tb25qcycsXG4gIH0sXG4gIHNvdXJjZU1hcHM6ICdpbmxpbmUnLFxufVxuXG5pZiAodHNDb25maWc/LmNvbmZpZz8uY29tcGlsZXJPcHRpb25zPy5wYXRocykge1xuICBzd2NPcHRpb25zLmpzYy5wYXRocyA9IHRzQ29uZmlnLmNvbmZpZy5jb21waWxlck9wdGlvbnMucGF0aHNcblxuICBpZiAodHNDb25maWc/LmNvbmZpZz8uY29tcGlsZXJPcHRpb25zPy5iYXNlVXJsKSB7XG4gICAgc3djT3B0aW9ucy5qc2MuYmFzZVVybCA9IHBhdGgucmVzb2x2ZSh0c0NvbmZpZy5jb25maWcuY29tcGlsZXJPcHRpb25zLmJhc2VVcmwpXG4gIH1cbn1cblxuLy8gQWxsb3cgZGlzYWJsaW5nIFNXQyBmb3IgZGVidWdnaW5nXG5pZiAocHJvY2Vzcy5lbnYuRElTQUJMRV9TV0MgIT09ICd0cnVlJykge1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L2Jhbi10cy1jb21tZW50XG4gIC8vIEB0cy1pZ25vcmUgLSBiYWQgQHN3Yy9yZWdpc3RlciB0eXBlc1xuICBzd2NSZWdpc3Rlcihzd2NPcHRpb25zKVxufVxuXG5jb25zdCB7IGJ1aWxkIH0gPSByZXF1aXJlKCcuL2J1aWxkJylcblxuY29uc3QgYXJncyA9IG1pbmltaXN0KHByb2Nlc3MuYXJndi5zbGljZSgyKSlcblxuY29uc3Qgc2NyaXB0SW5kZXggPSBhcmdzLl8uZmluZEluZGV4KCh4KSA9PiB4ID09PSAnYnVpbGQnKVxuXG5jb25zdCBzY3JpcHQgPSBzY3JpcHRJbmRleCA9PT0gLTEgPyBhcmdzLl9bMF0gOiBhcmdzLl9bc2NyaXB0SW5kZXhdXG5cbmlmIChzY3JpcHQuc3RhcnRzV2l0aCgnbWlncmF0ZScpKSB7XG4gIG1pZ3JhdGUoYXJncy5fKS50aGVuKCgpID0+IHByb2Nlc3MuZXhpdCgwKSlcbn0gZWxzZSB7XG4gIHN3aXRjaCAoc2NyaXB0LnRvTG93ZXJDYXNlKCkpIHtcbiAgICBjYXNlICdidWlsZCc6IHtcbiAgICAgIGJ1aWxkKClcbiAgICAgIGJyZWFrXG4gICAgfVxuXG4gICAgY2FzZSAnZ2VuZXJhdGU6dHlwZXMnOiB7XG4gICAgICBnZW5lcmF0ZVR5cGVzKClcbiAgICAgIGJyZWFrXG4gICAgfVxuXG4gICAgY2FzZSAnZ2VuZXJhdGU6Z3JhcGhxbHNjaGVtYSc6IHtcbiAgICAgIGdlbmVyYXRlR3JhcGhRTFNjaGVtYSgpXG4gICAgICBicmVha1xuICAgIH1cblxuICAgIGRlZmF1bHQ6XG4gICAgICBjb25zb2xlLmxvZyhgVW5rbm93biBzY3JpcHQgXCIke3NjcmlwdH1cIi5gKVxuICAgICAgYnJlYWtcbiAgfVxufVxuXG4vKipcbiAqIFRyeSB0byBmaW5kIHVzZXIncyAuZW52IGFuZCBsb2FkIGl0XG4gKi9cbmZ1bmN0aW9uIGxvYWRFbnYoKSB7XG4gIGNvbnN0IGVudlBhdGggPSBmaW5kVXAuc3luYygnLmVudicpXG5cbiAgaWYgKGVudlBhdGgpIHtcbiAgICBkb3RlbnYuY29uZmlnKHsgcGF0aDogZW52UGF0aCB9KVxuICB9IGVsc2Uge1xuICAgIGNvbnN0IGN3ZFBhdGggPSBwYXRoLnJlc29sdmUocHJvY2Vzcy5jd2QoKSwgJy5lbnYnKVxuICAgIGlmIChmcy5leGlzdHNTeW5jKGN3ZFBhdGgpKSB7XG4gICAgICBkb3RlbnYuY29uZmlnKHtcbiAgICAgICAgcGF0aDogY3dkUGF0aCxcbiAgICAgIH0pXG4gICAgfVxuICB9XG59XG4iXSwibmFtZXMiOlsibG9hZEVudiIsInRzQ29uZmlnIiwiZ2V0VFNjb25maWciLCJzd2NPcHRpb25zIiwiaWdub3JlIiwianNjIiwiYmFzZVVybCIsInBhdGgiLCJyZXNvbHZlIiwicGFyc2VyIiwic3ludGF4IiwidHN4IiwicGF0aHMiLCJ1bmRlZmluZWQiLCJtb2R1bGUiLCJ0eXBlIiwic291cmNlTWFwcyIsImNvbmZpZyIsImNvbXBpbGVyT3B0aW9ucyIsInByb2Nlc3MiLCJlbnYiLCJESVNBQkxFX1NXQyIsInN3Y1JlZ2lzdGVyIiwiYnVpbGQiLCJyZXF1aXJlIiwiYXJncyIsIm1pbmltaXN0IiwiYXJndiIsInNsaWNlIiwic2NyaXB0SW5kZXgiLCJfIiwiZmluZEluZGV4IiwieCIsInNjcmlwdCIsInN0YXJ0c1dpdGgiLCJtaWdyYXRlIiwidGhlbiIsImV4aXQiLCJ0b0xvd2VyQ2FzZSIsImdlbmVyYXRlVHlwZXMiLCJnZW5lcmF0ZUdyYXBoUUxTY2hlbWEiLCJjb25zb2xlIiwibG9nIiwiZW52UGF0aCIsImZpbmRVcCIsInN5bmMiLCJkb3RlbnYiLCJjd2RQYXRoIiwiY3dkIiwiZnMiLCJleGlzdHNTeW5jIl0sIm1hcHBpbmdzIjoiQUFBQSwwREFBMEQsR0FDMUQscURBQXFEOzs7O2lFQUM3QjsrREFDTDsrREFDQTsyREFDSjs2QkFDNEI7aUVBQ3RCOzZEQUNKO3VDQUVxQjsrQkFDUjt5QkFDTjs7Ozs7O0FBRXhCQTtBQUVBLE1BQU1DLFdBQVdDLElBQUFBLHdCQUFXO0FBRTVCLE1BQU1DLGFBQWE7SUFDakJDLFFBQVE7UUFDTjtLQUNEO0lBQ0RDLEtBQUs7UUFDSEMsU0FBU0MsYUFBSSxDQUFDQyxPQUFPO1FBQ3JCQyxRQUFRO1lBQ05DLFFBQVE7WUFDUkMsS0FBSztRQUNQO1FBQ0FDLE9BQU9DO0lBQ1Q7SUFDQUMsUUFBUTtRQUNOQyxNQUFNO0lBQ1I7SUFDQUMsWUFBWTtBQUNkO0FBRUEsSUFBSWYsVUFBVWdCLFFBQVFDLGlCQUFpQk4sT0FBTztJQUM1Q1QsV0FBV0UsR0FBRyxDQUFDTyxLQUFLLEdBQUdYLFNBQVNnQixNQUFNLENBQUNDLGVBQWUsQ0FBQ04sS0FBSztJQUU1RCxJQUFJWCxVQUFVZ0IsUUFBUUMsaUJBQWlCWixTQUFTO1FBQzlDSCxXQUFXRSxHQUFHLENBQUNDLE9BQU8sR0FBR0MsYUFBSSxDQUFDQyxPQUFPLENBQUNQLFNBQVNnQixNQUFNLENBQUNDLGVBQWUsQ0FBQ1osT0FBTztJQUMvRTtBQUNGO0FBRUEsb0NBQW9DO0FBQ3BDLElBQUlhLFFBQVFDLEdBQUcsQ0FBQ0MsV0FBVyxLQUFLLFFBQVE7SUFDdEMsNkRBQTZEO0lBQzdELHVDQUF1QztJQUN2Q0MsSUFBQUEsaUJBQVcsRUFBQ25CO0FBQ2Q7QUFFQSxNQUFNLEVBQUVvQixLQUFLLEVBQUUsR0FBR0MsUUFBUTtBQUUxQixNQUFNQyxPQUFPQyxJQUFBQSxpQkFBUSxFQUFDUCxRQUFRUSxJQUFJLENBQUNDLEtBQUssQ0FBQztBQUV6QyxNQUFNQyxjQUFjSixLQUFLSyxDQUFDLENBQUNDLFNBQVMsQ0FBQyxDQUFDQyxJQUFNQSxNQUFNO0FBRWxELE1BQU1DLFNBQVNKLGdCQUFnQixDQUFDLElBQUlKLEtBQUtLLENBQUMsQ0FBQyxFQUFFLEdBQUdMLEtBQUtLLENBQUMsQ0FBQ0QsWUFBWTtBQUVuRSxJQUFJSSxPQUFPQyxVQUFVLENBQUMsWUFBWTtJQUNoQ0MsSUFBQUEsZ0JBQU8sRUFBQ1YsS0FBS0ssQ0FBQyxFQUFFTSxJQUFJLENBQUMsSUFBTWpCLFFBQVFrQixJQUFJLENBQUM7QUFDMUMsT0FBTztJQUNMLE9BQVFKLE9BQU9LLFdBQVc7UUFDeEIsS0FBSztZQUFTO2dCQUNaZjtnQkFDQTtZQUNGO1FBRUEsS0FBSztZQUFrQjtnQkFDckJnQixJQUFBQSw0QkFBYTtnQkFDYjtZQUNGO1FBRUEsS0FBSztZQUEwQjtnQkFDN0JDLElBQUFBLDRDQUFxQjtnQkFDckI7WUFDRjtRQUVBO1lBQ0VDLFFBQVFDLEdBQUcsQ0FBQyxDQUFDLGdCQUFnQixFQUFFVCxPQUFPLEVBQUUsQ0FBQztZQUN6QztJQUNKO0FBQ0Y7QUFFQTs7Q0FFQyxHQUNELFNBQVNqQztJQUNQLE1BQU0yQyxVQUFVQyxlQUFNLENBQUNDLElBQUksQ0FBQztJQUU1QixJQUFJRixTQUFTO1FBQ1hHLGVBQU0sQ0FBQzdCLE1BQU0sQ0FBQztZQUFFVixNQUFNb0M7UUFBUTtJQUNoQyxPQUFPO1FBQ0wsTUFBTUksVUFBVXhDLGFBQUksQ0FBQ0MsT0FBTyxDQUFDVyxRQUFRNkIsR0FBRyxJQUFJO1FBQzVDLElBQUlDLFdBQUUsQ0FBQ0MsVUFBVSxDQUFDSCxVQUFVO1lBQzFCRCxlQUFNLENBQUM3QixNQUFNLENBQUM7Z0JBQ1pWLE1BQU13QztZQUNSO1FBQ0Y7SUFDRjtBQUNGIn0=
97
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9iaW4vaW5kZXgudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWZsb2F0aW5nLXByb21pc2VzICovXG4vKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdmFyLXJlcXVpcmVzICovXG5pbXBvcnQgc3djUmVnaXN0ZXIgZnJvbSAnQHN3Yy9yZWdpc3RlcidcbmltcG9ydCBkb3RlbnYgZnJvbSAnZG90ZW52J1xuaW1wb3J0IGZpbmRVcCBmcm9tICdmaW5kLXVwJ1xuaW1wb3J0IGZzIGZyb20gJ2ZzJ1xuaW1wb3J0IHsgZ2V0VHNjb25maWcgYXMgZ2V0VFNjb25maWcgfSBmcm9tICdnZXQtdHNjb25maWcnXG5pbXBvcnQgbWluaW1pc3QgZnJvbSAnbWluaW1pc3QnXG5pbXBvcnQgcGF0aCBmcm9tICdwYXRoJ1xuXG5pbXBvcnQgeyBnZW5lcmF0ZUdyYXBoUUxTY2hlbWEgfSBmcm9tICcuL2dlbmVyYXRlR3JhcGhRTFNjaGVtYSdcbmltcG9ydCB7IGdlbmVyYXRlVHlwZXMgfSBmcm9tICcuL2dlbmVyYXRlVHlwZXMnXG5pbXBvcnQgeyBtaWdyYXRlIH0gZnJvbSAnLi9taWdyYXRlJ1xuXG5sb2FkRW52KClcblxuY29uc3QgdHNDb25maWcgPSBnZXRUU2NvbmZpZygpXG5cbmNvbnN0IHN3Y09wdGlvbnMgPSB7XG4gIGlnbm9yZTogW1xuICAgIC8uKltcXFxcL11ub2RlX21vZHVsZXNbXFxcXC9dLiovLCAvLyBwYXJzZSBldmVyeXRoaW5nIGJlc2lkZXMgZmlsZXMgd2l0aGluIG5vZGVfbW9kdWxlc1xuICBdLFxuICBqc2M6IHtcbiAgICBiYXNlVXJsOiBwYXRoLnJlc29sdmUoKSxcbiAgICBwYXJzZXI6IHtcbiAgICAgIHN5bnRheDogJ3R5cGVzY3JpcHQnLFxuICAgICAgdHN4OiB0cnVlLFxuICAgIH0sXG4gICAgcGF0aHM6IHVuZGVmaW5lZCxcbiAgfSxcbiAgbW9kdWxlOiB7XG4gICAgdHlwZTogJ2NvbW1vbmpzJyxcbiAgfSxcbiAgc291cmNlTWFwczogJ2lubGluZScsXG59XG5cbmlmICh0c0NvbmZpZz8uY29uZmlnPy5jb21waWxlck9wdGlvbnM/LnBhdGhzKSB7XG4gIHN3Y09wdGlvbnMuanNjLnBhdGhzID0gdHNDb25maWcuY29uZmlnLmNvbXBpbGVyT3B0aW9ucy5wYXRoc1xuXG4gIGlmICh0c0NvbmZpZz8uY29uZmlnPy5jb21waWxlck9wdGlvbnM/LmJhc2VVcmwpIHtcbiAgICBzd2NPcHRpb25zLmpzYy5iYXNlVXJsID0gcGF0aC5yZXNvbHZlKHRzQ29uZmlnLmNvbmZpZy5jb21waWxlck9wdGlvbnMuYmFzZVVybClcbiAgfVxufVxuXG4vLyBBbGxvdyBkaXNhYmxpbmcgU1dDIGZvciBkZWJ1Z2dpbmdcbmlmIChwcm9jZXNzLmVudi5ESVNBQkxFX1NXQyAhPT0gJ3RydWUnKSB7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvYmFuLXRzLWNvbW1lbnRcbiAgLy8gQHRzLWlnbm9yZSAtIGJhZCBAc3djL3JlZ2lzdGVyIHR5cGVzXG4gIHN3Y1JlZ2lzdGVyKHN3Y09wdGlvbnMpXG59XG5cbmNvbnN0IHsgYnVpbGQgfSA9IHJlcXVpcmUoJy4vYnVpbGQnKVxuXG5jb25zdCBhcmdzID0gbWluaW1pc3QocHJvY2Vzcy5hcmd2LnNsaWNlKDIpKVxuXG5jb25zdCBzY3JpcHRJbmRleCA9IGFyZ3MuXy5maW5kSW5kZXgoKHgpID0+IHggPT09ICdidWlsZCcpXG5cbmNvbnN0IHNjcmlwdCA9IHNjcmlwdEluZGV4ID09PSAtMSA/IGFyZ3MuX1swXSA6IGFyZ3MuX1tzY3JpcHRJbmRleF1cblxuaWYgKHNjcmlwdC5zdGFydHNXaXRoKCdtaWdyYXRlJykpIHtcbiAgbWlncmF0ZShhcmdzLl8pLnRoZW4oKCkgPT4gcHJvY2Vzcy5leGl0KDApKVxufSBlbHNlIHtcbiAgc3dpdGNoIChzY3JpcHQudG9Mb3dlckNhc2UoKSkge1xuICAgIGNhc2UgJ2J1aWxkJzoge1xuICAgICAgYnVpbGQoKVxuICAgICAgYnJlYWtcbiAgICB9XG5cbiAgICBjYXNlICdnZW5lcmF0ZTp0eXBlcyc6IHtcbiAgICAgIGdlbmVyYXRlVHlwZXMoKVxuICAgICAgYnJlYWtcbiAgICB9XG5cbiAgICBjYXNlICdnZW5lcmF0ZTpncmFwaHFsc2NoZW1hJzoge1xuICAgICAgZ2VuZXJhdGVHcmFwaFFMU2NoZW1hKClcbiAgICAgIGJyZWFrXG4gICAgfVxuXG4gICAgZGVmYXVsdDpcbiAgICAgIGNvbnNvbGUubG9nKGBVbmtub3duIHNjcmlwdCBcIiR7c2NyaXB0fVwiLmApXG4gICAgICBicmVha1xuICB9XG59XG5cbi8qKlxuICogVHJ5IHRvIGZpbmQgdXNlcidzIC5lbnYgYW5kIGxvYWQgaXRcbiAqL1xuZnVuY3Rpb24gbG9hZEVudigpIHtcbiAgY29uc3QgZW52UGF0aCA9IGZpbmRVcC5zeW5jKCcuZW52JylcblxuICBpZiAoZW52UGF0aCkge1xuICAgIGRvdGVudi5jb25maWcoeyBwYXRoOiBlbnZQYXRoIH0pXG4gIH0gZWxzZSB7XG4gICAgY29uc3QgY3dkUGF0aCA9IHBhdGgucmVzb2x2ZShwcm9jZXNzLmN3ZCgpLCAnLmVudicpXG4gICAgaWYgKGZzLmV4aXN0c1N5bmMoY3dkUGF0aCkpIHtcbiAgICAgIGRvdGVudi5jb25maWcoe1xuICAgICAgICBwYXRoOiBjd2RQYXRoLFxuICAgICAgfSlcbiAgICB9XG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJsb2FkRW52IiwidHNDb25maWciLCJnZXRUU2NvbmZpZyIsInN3Y09wdGlvbnMiLCJpZ25vcmUiLCJqc2MiLCJiYXNlVXJsIiwicGF0aCIsInJlc29sdmUiLCJwYXJzZXIiLCJzeW50YXgiLCJ0c3giLCJwYXRocyIsInVuZGVmaW5lZCIsIm1vZHVsZSIsInR5cGUiLCJzb3VyY2VNYXBzIiwiY29uZmlnIiwiY29tcGlsZXJPcHRpb25zIiwicHJvY2VzcyIsImVudiIsIkRJU0FCTEVfU1dDIiwic3djUmVnaXN0ZXIiLCJidWlsZCIsInJlcXVpcmUiLCJhcmdzIiwibWluaW1pc3QiLCJhcmd2Iiwic2xpY2UiLCJzY3JpcHRJbmRleCIsIl8iLCJmaW5kSW5kZXgiLCJ4Iiwic2NyaXB0Iiwic3RhcnRzV2l0aCIsIm1pZ3JhdGUiLCJ0aGVuIiwiZXhpdCIsInRvTG93ZXJDYXNlIiwiZ2VuZXJhdGVUeXBlcyIsImdlbmVyYXRlR3JhcGhRTFNjaGVtYSIsImNvbnNvbGUiLCJsb2ciLCJlbnZQYXRoIiwiZmluZFVwIiwic3luYyIsImRvdGVudiIsImN3ZFBhdGgiLCJjd2QiLCJmcyIsImV4aXN0c1N5bmMiXSwibWFwcGluZ3MiOiJBQUFBLDBEQUEwRCxHQUMxRCxxREFBcUQ7Ozs7aUVBQzdCOytEQUNMOytEQUNBOzJEQUNKOzZCQUM0QjtpRUFDdEI7NkRBQ0o7dUNBRXFCOytCQUNSO3lCQUNOOzs7Ozs7QUFFeEJBO0FBRUEsTUFBTUMsV0FBV0MsSUFBQUEsd0JBQVc7QUFFNUIsTUFBTUMsYUFBYTtJQUNqQkMsUUFBUTtRQUNOO0tBQ0Q7SUFDREMsS0FBSztRQUNIQyxTQUFTQyxhQUFJLENBQUNDLE9BQU87UUFDckJDLFFBQVE7WUFDTkMsUUFBUTtZQUNSQyxLQUFLO1FBQ1A7UUFDQUMsT0FBT0M7SUFDVDtJQUNBQyxRQUFRO1FBQ05DLE1BQU07SUFDUjtJQUNBQyxZQUFZO0FBQ2Q7QUFFQSxJQUFJZixVQUFVZ0IsUUFBUUMsaUJBQWlCTixPQUFPO0lBQzVDVCxXQUFXRSxHQUFHLENBQUNPLEtBQUssR0FBR1gsU0FBU2dCLE1BQU0sQ0FBQ0MsZUFBZSxDQUFDTixLQUFLO0lBRTVELElBQUlYLFVBQVVnQixRQUFRQyxpQkFBaUJaLFNBQVM7UUFDOUNILFdBQVdFLEdBQUcsQ0FBQ0MsT0FBTyxHQUFHQyxhQUFJLENBQUNDLE9BQU8sQ0FBQ1AsU0FBU2dCLE1BQU0sQ0FBQ0MsZUFBZSxDQUFDWixPQUFPO0lBQy9FO0FBQ0Y7QUFFQSxvQ0FBb0M7QUFDcEMsSUFBSWEsUUFBUUMsR0FBRyxDQUFDQyxXQUFXLEtBQUssUUFBUTtJQUN0Qyw2REFBNkQ7SUFDN0QsdUNBQXVDO0lBQ3ZDQyxJQUFBQSxpQkFBVyxFQUFDbkI7QUFDZDtBQUVBLE1BQU0sRUFBRW9CLEtBQUssRUFBRSxHQUFHQyxRQUFRO0FBRTFCLE1BQU1DLE9BQU9DLElBQUFBLGlCQUFRLEVBQUNQLFFBQVFRLElBQUksQ0FBQ0MsS0FBSyxDQUFDO0FBRXpDLE1BQU1DLGNBQWNKLEtBQUtLLENBQUMsQ0FBQ0MsU0FBUyxDQUFDLENBQUNDLElBQU1BLE1BQU07QUFFbEQsTUFBTUMsU0FBU0osZ0JBQWdCLENBQUMsSUFBSUosS0FBS0ssQ0FBQyxDQUFDLEVBQUUsR0FBR0wsS0FBS0ssQ0FBQyxDQUFDRCxZQUFZO0FBRW5FLElBQUlJLE9BQU9DLFVBQVUsQ0FBQyxZQUFZO0lBQ2hDQyxJQUFBQSxnQkFBTyxFQUFDVixLQUFLSyxDQUFDLEVBQUVNLElBQUksQ0FBQyxJQUFNakIsUUFBUWtCLElBQUksQ0FBQztBQUMxQyxPQUFPO0lBQ0wsT0FBUUosT0FBT0ssV0FBVztRQUN4QixLQUFLO1lBQVM7Z0JBQ1pmO2dCQUNBO1lBQ0Y7UUFFQSxLQUFLO1lBQWtCO2dCQUNyQmdCLElBQUFBLDRCQUFhO2dCQUNiO1lBQ0Y7UUFFQSxLQUFLO1lBQTBCO2dCQUM3QkMsSUFBQUEsNENBQXFCO2dCQUNyQjtZQUNGO1FBRUE7WUFDRUMsUUFBUUMsR0FBRyxDQUFDLENBQUMsZ0JBQWdCLEVBQUVULE9BQU8sRUFBRSxDQUFDO1lBQ3pDO0lBQ0o7QUFDRjtBQUVBOztDQUVDLEdBQ0QsU0FBU2pDO0lBQ1AsTUFBTTJDLFVBQVVDLGVBQU0sQ0FBQ0MsSUFBSSxDQUFDO0lBRTVCLElBQUlGLFNBQVM7UUFDWEcsZUFBTSxDQUFDN0IsTUFBTSxDQUFDO1lBQUVWLE1BQU1vQztRQUFRO0lBQ2hDLE9BQU87UUFDTCxNQUFNSSxVQUFVeEMsYUFBSSxDQUFDQyxPQUFPLENBQUNXLFFBQVE2QixHQUFHLElBQUk7UUFDNUMsSUFBSUMsV0FBRSxDQUFDQyxVQUFVLENBQUNILFVBQVU7WUFDMUJELGVBQU0sQ0FBQzdCLE1BQU0sQ0FBQztnQkFDWlYsTUFBTXdDO1lBQ1I7UUFDRjtJQUNGO0FBQ0YifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"migrateReset.d.ts","sourceRoot":"","sources":["../../../src/database/migrations/migrateReset.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAA;AAKnD,wBAAsB,YAAY,CAAC,IAAI,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CA2C3E"}
1
+ {"version":3,"file":"migrateReset.d.ts","sourceRoot":"","sources":["../../../src/database/migrations/migrateReset.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAA;AAKnD,wBAAsB,YAAY,CAAC,IAAI,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAyD3E"}
@@ -64,6 +64,22 @@ async function migrateReset() {
64
64
  }
65
65
  }
66
66
  }
67
+ // Delete dev migration
68
+ try {
69
+ await payload.delete({
70
+ collection: 'payload-migrations',
71
+ where: {
72
+ batch: {
73
+ equals: -1
74
+ }
75
+ }
76
+ });
77
+ } catch (err) {
78
+ payload.logger.error({
79
+ error: err,
80
+ msg: 'Error deleting dev migration'
81
+ });
82
+ }
67
83
  }
68
84
 
69
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9kYXRhYmFzZS9taWdyYXRpb25zL21pZ3JhdGVSZXNldC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBuby1yZXN0cmljdGVkLXN5bnRheCwgbm8tYXdhaXQtaW4tbG9vcCAqL1xuaW1wb3J0IHR5cGUgeyBQYXlsb2FkUmVxdWVzdCB9IGZyb20gJy4uLy4uL2V4cHJlc3MvdHlwZXMnXG5pbXBvcnQgdHlwZSB7IEJhc2VEYXRhYmFzZUFkYXB0ZXIgfSBmcm9tICcuLi90eXBlcydcblxuaW1wb3J0IHsgZ2V0TWlncmF0aW9ucyB9IGZyb20gJy4vZ2V0TWlncmF0aW9ucydcbmltcG9ydCB7IHJlYWRNaWdyYXRpb25GaWxlcyB9IGZyb20gJy4vcmVhZE1pZ3JhdGlvbkZpbGVzJ1xuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gbWlncmF0ZVJlc2V0KHRoaXM6IEJhc2VEYXRhYmFzZUFkYXB0ZXIpOiBQcm9taXNlPHZvaWQ+IHtcbiAgY29uc3QgeyBwYXlsb2FkIH0gPSB0aGlzXG4gIGNvbnN0IG1pZ3JhdGlvbkZpbGVzID0gYXdhaXQgcmVhZE1pZ3JhdGlvbkZpbGVzKHsgcGF5bG9hZCB9KVxuXG4gIGNvbnN0IHsgZXhpc3RpbmdNaWdyYXRpb25zIH0gPSBhd2FpdCBnZXRNaWdyYXRpb25zKHsgcGF5bG9hZCB9KVxuXG4gIGlmICghZXhpc3RpbmdNaWdyYXRpb25zPy5sZW5ndGgpIHtcbiAgICBwYXlsb2FkLmxvZ2dlci5pbmZvKHsgbXNnOiAnTm8gbWlncmF0aW9ucyB0byByZXNldC4nIH0pXG4gICAgcmV0dXJuXG4gIH1cblxuICBsZXQgdHJhbnNhY3Rpb25JRFxuXG4gIC8vIFJvbGxiYWNrIGFsbCBtaWdyYXRpb25zIGluIG9yZGVyXG4gIGZvciAoY29uc3QgbWlncmF0aW9uIG9mIG1pZ3JhdGlvbkZpbGVzKSB7XG4gICAgLy8gQ3JlYXRlIG9yIHVwZGF0ZSBtaWdyYXRpb24gaW4gZGF0YWJhc2VcbiAgICBjb25zdCBleGlzdGluZ01pZ3JhdGlvbiA9IGV4aXN0aW5nTWlncmF0aW9ucy5maW5kKFxuICAgICAgKGV4aXN0aW5nKSA9PiBleGlzdGluZy5uYW1lID09PSBtaWdyYXRpb24ubmFtZSxcbiAgICApXG4gICAgaWYgKGV4aXN0aW5nTWlncmF0aW9uKSB7XG4gICAgICBwYXlsb2FkLmxvZ2dlci5pbmZvKHsgbXNnOiBgTWlncmF0aW5nIGRvd246ICR7bWlncmF0aW9uLm5hbWV9YCB9KVxuICAgICAgdHJ5IHtcbiAgICAgICAgY29uc3Qgc3RhcnQgPSBEYXRlLm5vdygpXG4gICAgICAgIHRyYW5zYWN0aW9uSUQgPSBhd2FpdCB0aGlzLmJlZ2luVHJhbnNhY3Rpb24oKVxuICAgICAgICBhd2FpdCBtaWdyYXRpb24uZG93bih7IHBheWxvYWQgfSlcbiAgICAgICAgYXdhaXQgcGF5bG9hZC5kZWxldGUoe1xuICAgICAgICAgIGNvbGxlY3Rpb246ICdwYXlsb2FkLW1pZ3JhdGlvbnMnLFxuICAgICAgICAgIHJlcTogeyB0cmFuc2FjdGlvbklEIH0gYXMgUGF5bG9hZFJlcXVlc3QsXG4gICAgICAgICAgd2hlcmU6IHtcbiAgICAgICAgICAgIGlkOiB7XG4gICAgICAgICAgICAgIGVxdWFsczogZXhpc3RpbmdNaWdyYXRpb24uaWQsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0pXG4gICAgICAgIGF3YWl0IHRoaXMuY29tbWl0VHJhbnNhY3Rpb24odHJhbnNhY3Rpb25JRClcbiAgICAgICAgcGF5bG9hZC5sb2dnZXIuaW5mbyh7IG1zZzogYE1pZ3JhdGVkIGRvd246ICAke21pZ3JhdGlvbi5uYW1lfSAoJHtEYXRlLm5vdygpIC0gc3RhcnR9bXMpYCB9KVxuICAgICAgfSBjYXRjaCAoZXJyOiB1bmtub3duKSB7XG4gICAgICAgIGF3YWl0IHRoaXMucm9sbGJhY2tUcmFuc2FjdGlvbih0cmFuc2FjdGlvbklEKVxuICAgICAgICBwYXlsb2FkLmxvZ2dlci5lcnJvcih7IGVyciwgbXNnOiBgRXJyb3IgcnVubmluZyBtaWdyYXRpb24gJHttaWdyYXRpb24ubmFtZX1gIH0pXG4gICAgICAgIHRocm93IGVyclxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIl0sIm5hbWVzIjpbIm1pZ3JhdGVSZXNldCIsInBheWxvYWQiLCJtaWdyYXRpb25GaWxlcyIsInJlYWRNaWdyYXRpb25GaWxlcyIsImV4aXN0aW5nTWlncmF0aW9ucyIsImdldE1pZ3JhdGlvbnMiLCJsZW5ndGgiLCJsb2dnZXIiLCJpbmZvIiwibXNnIiwidHJhbnNhY3Rpb25JRCIsIm1pZ3JhdGlvbiIsImV4aXN0aW5nTWlncmF0aW9uIiwiZmluZCIsImV4aXN0aW5nIiwibmFtZSIsInN0YXJ0IiwiRGF0ZSIsIm5vdyIsImJlZ2luVHJhbnNhY3Rpb24iLCJkb3duIiwiZGVsZXRlIiwiY29sbGVjdGlvbiIsInJlcSIsIndoZXJlIiwiaWQiLCJlcXVhbHMiLCJjb21taXRUcmFuc2FjdGlvbiIsImVyciIsInJvbGxiYWNrVHJhbnNhY3Rpb24iLCJlcnJvciJdLCJtYXBwaW5ncyI6IkFBQUEseURBQXlEOzs7OytCQU9uQ0E7OztlQUFBQTs7OytCQUhRO29DQUNLO0FBRTVCLGVBQWVBO0lBQ3BCLE1BQU0sRUFBRUMsT0FBTyxFQUFFLEdBQUcsSUFBSTtJQUN4QixNQUFNQyxpQkFBaUIsTUFBTUMsSUFBQUEsc0NBQWtCLEVBQUM7UUFBRUY7SUFBUTtJQUUxRCxNQUFNLEVBQUVHLGtCQUFrQixFQUFFLEdBQUcsTUFBTUMsSUFBQUEsNEJBQWEsRUFBQztRQUFFSjtJQUFRO0lBRTdELElBQUksQ0FBQ0csb0JBQW9CRSxRQUFRO1FBQy9CTCxRQUFRTSxNQUFNLENBQUNDLElBQUksQ0FBQztZQUFFQyxLQUFLO1FBQTBCO1FBQ3JEO0lBQ0Y7SUFFQSxJQUFJQztJQUVKLG1DQUFtQztJQUNuQyxLQUFLLE1BQU1DLGFBQWFULGVBQWdCO1FBQ3RDLHlDQUF5QztRQUN6QyxNQUFNVSxvQkFBb0JSLG1CQUFtQlMsSUFBSSxDQUMvQyxDQUFDQyxXQUFhQSxTQUFTQyxJQUFJLEtBQUtKLFVBQVVJLElBQUk7UUFFaEQsSUFBSUgsbUJBQW1CO1lBQ3JCWCxRQUFRTSxNQUFNLENBQUNDLElBQUksQ0FBQztnQkFBRUMsS0FBSyxDQUFDLGdCQUFnQixFQUFFRSxVQUFVSSxJQUFJLENBQUMsQ0FBQztZQUFDO1lBQy9ELElBQUk7Z0JBQ0YsTUFBTUMsUUFBUUMsS0FBS0MsR0FBRztnQkFDdEJSLGdCQUFnQixNQUFNLElBQUksQ0FBQ1MsZ0JBQWdCO2dCQUMzQyxNQUFNUixVQUFVUyxJQUFJLENBQUM7b0JBQUVuQjtnQkFBUTtnQkFDL0IsTUFBTUEsUUFBUW9CLE1BQU0sQ0FBQztvQkFDbkJDLFlBQVk7b0JBQ1pDLEtBQUs7d0JBQUViO29CQUFjO29CQUNyQmMsT0FBTzt3QkFDTEMsSUFBSTs0QkFDRkMsUUFBUWQsa0JBQWtCYSxFQUFFO3dCQUM5QjtvQkFDRjtnQkFDRjtnQkFDQSxNQUFNLElBQUksQ0FBQ0UsaUJBQWlCLENBQUNqQjtnQkFDN0JULFFBQVFNLE1BQU0sQ0FBQ0MsSUFBSSxDQUFDO29CQUFFQyxLQUFLLENBQUMsZ0JBQWdCLEVBQUVFLFVBQVVJLElBQUksQ0FBQyxFQUFFLEVBQUVFLEtBQUtDLEdBQUcsS0FBS0YsTUFBTSxHQUFHLENBQUM7Z0JBQUM7WUFDM0YsRUFBRSxPQUFPWSxLQUFjO2dCQUNyQixNQUFNLElBQUksQ0FBQ0MsbUJBQW1CLENBQUNuQjtnQkFDL0JULFFBQVFNLE1BQU0sQ0FBQ3VCLEtBQUssQ0FBQztvQkFBRUY7b0JBQUtuQixLQUFLLENBQUMsd0JBQXdCLEVBQUVFLFVBQVVJLElBQUksQ0FBQyxDQUFDO2dCQUFDO2dCQUM3RSxNQUFNYTtZQUNSO1FBQ0Y7SUFDRjtBQUNGIn0=
85
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9kYXRhYmFzZS9taWdyYXRpb25zL21pZ3JhdGVSZXNldC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBuby1yZXN0cmljdGVkLXN5bnRheCwgbm8tYXdhaXQtaW4tbG9vcCAqL1xuaW1wb3J0IHR5cGUgeyBQYXlsb2FkUmVxdWVzdCB9IGZyb20gJy4uLy4uL2V4cHJlc3MvdHlwZXMnXG5pbXBvcnQgdHlwZSB7IEJhc2VEYXRhYmFzZUFkYXB0ZXIgfSBmcm9tICcuLi90eXBlcydcblxuaW1wb3J0IHsgZ2V0TWlncmF0aW9ucyB9IGZyb20gJy4vZ2V0TWlncmF0aW9ucydcbmltcG9ydCB7IHJlYWRNaWdyYXRpb25GaWxlcyB9IGZyb20gJy4vcmVhZE1pZ3JhdGlvbkZpbGVzJ1xuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gbWlncmF0ZVJlc2V0KHRoaXM6IEJhc2VEYXRhYmFzZUFkYXB0ZXIpOiBQcm9taXNlPHZvaWQ+IHtcbiAgY29uc3QgeyBwYXlsb2FkIH0gPSB0aGlzXG4gIGNvbnN0IG1pZ3JhdGlvbkZpbGVzID0gYXdhaXQgcmVhZE1pZ3JhdGlvbkZpbGVzKHsgcGF5bG9hZCB9KVxuXG4gIGNvbnN0IHsgZXhpc3RpbmdNaWdyYXRpb25zIH0gPSBhd2FpdCBnZXRNaWdyYXRpb25zKHsgcGF5bG9hZCB9KVxuXG4gIGlmICghZXhpc3RpbmdNaWdyYXRpb25zPy5sZW5ndGgpIHtcbiAgICBwYXlsb2FkLmxvZ2dlci5pbmZvKHsgbXNnOiAnTm8gbWlncmF0aW9ucyB0byByZXNldC4nIH0pXG4gICAgcmV0dXJuXG4gIH1cblxuICBsZXQgdHJhbnNhY3Rpb25JRFxuXG4gIC8vIFJvbGxiYWNrIGFsbCBtaWdyYXRpb25zIGluIG9yZGVyXG4gIGZvciAoY29uc3QgbWlncmF0aW9uIG9mIG1pZ3JhdGlvbkZpbGVzKSB7XG4gICAgLy8gQ3JlYXRlIG9yIHVwZGF0ZSBtaWdyYXRpb24gaW4gZGF0YWJhc2VcbiAgICBjb25zdCBleGlzdGluZ01pZ3JhdGlvbiA9IGV4aXN0aW5nTWlncmF0aW9ucy5maW5kKFxuICAgICAgKGV4aXN0aW5nKSA9PiBleGlzdGluZy5uYW1lID09PSBtaWdyYXRpb24ubmFtZSxcbiAgICApXG4gICAgaWYgKGV4aXN0aW5nTWlncmF0aW9uKSB7XG4gICAgICBwYXlsb2FkLmxvZ2dlci5pbmZvKHsgbXNnOiBgTWlncmF0aW5nIGRvd246ICR7bWlncmF0aW9uLm5hbWV9YCB9KVxuICAgICAgdHJ5IHtcbiAgICAgICAgY29uc3Qgc3RhcnQgPSBEYXRlLm5vdygpXG4gICAgICAgIHRyYW5zYWN0aW9uSUQgPSBhd2FpdCB0aGlzLmJlZ2luVHJhbnNhY3Rpb24oKVxuICAgICAgICBhd2FpdCBtaWdyYXRpb24uZG93bih7IHBheWxvYWQgfSlcbiAgICAgICAgYXdhaXQgcGF5bG9hZC5kZWxldGUoe1xuICAgICAgICAgIGNvbGxlY3Rpb246ICdwYXlsb2FkLW1pZ3JhdGlvbnMnLFxuICAgICAgICAgIHJlcTogeyB0cmFuc2FjdGlvbklEIH0gYXMgUGF5bG9hZFJlcXVlc3QsXG4gICAgICAgICAgd2hlcmU6IHtcbiAgICAgICAgICAgIGlkOiB7XG4gICAgICAgICAgICAgIGVxdWFsczogZXhpc3RpbmdNaWdyYXRpb24uaWQsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0pXG4gICAgICAgIGF3YWl0IHRoaXMuY29tbWl0VHJhbnNhY3Rpb24odHJhbnNhY3Rpb25JRClcbiAgICAgICAgcGF5bG9hZC5sb2dnZXIuaW5mbyh7IG1zZzogYE1pZ3JhdGVkIGRvd246ICAke21pZ3JhdGlvbi5uYW1lfSAoJHtEYXRlLm5vdygpIC0gc3RhcnR9bXMpYCB9KVxuICAgICAgfSBjYXRjaCAoZXJyOiB1bmtub3duKSB7XG4gICAgICAgIGF3YWl0IHRoaXMucm9sbGJhY2tUcmFuc2FjdGlvbih0cmFuc2FjdGlvbklEKVxuICAgICAgICBwYXlsb2FkLmxvZ2dlci5lcnJvcih7IGVyciwgbXNnOiBgRXJyb3IgcnVubmluZyBtaWdyYXRpb24gJHttaWdyYXRpb24ubmFtZX1gIH0pXG4gICAgICAgIHRocm93IGVyclxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIERlbGV0ZSBkZXYgbWlncmF0aW9uXG4gIHRyeSB7XG4gICAgYXdhaXQgcGF5bG9hZC5kZWxldGUoe1xuICAgICAgY29sbGVjdGlvbjogJ3BheWxvYWQtbWlncmF0aW9ucycsXG4gICAgICB3aGVyZToge1xuICAgICAgICBiYXRjaDoge1xuICAgICAgICAgIGVxdWFsczogLTEsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0pXG4gIH0gY2F0Y2ggKGVycjogdW5rbm93bikge1xuICAgIHBheWxvYWQubG9nZ2VyLmVycm9yKHsgZXJyb3I6IGVyciwgbXNnOiAnRXJyb3IgZGVsZXRpbmcgZGV2IG1pZ3JhdGlvbicgfSlcbiAgfVxufVxuIl0sIm5hbWVzIjpbIm1pZ3JhdGVSZXNldCIsInBheWxvYWQiLCJtaWdyYXRpb25GaWxlcyIsInJlYWRNaWdyYXRpb25GaWxlcyIsImV4aXN0aW5nTWlncmF0aW9ucyIsImdldE1pZ3JhdGlvbnMiLCJsZW5ndGgiLCJsb2dnZXIiLCJpbmZvIiwibXNnIiwidHJhbnNhY3Rpb25JRCIsIm1pZ3JhdGlvbiIsImV4aXN0aW5nTWlncmF0aW9uIiwiZmluZCIsImV4aXN0aW5nIiwibmFtZSIsInN0YXJ0IiwiRGF0ZSIsIm5vdyIsImJlZ2luVHJhbnNhY3Rpb24iLCJkb3duIiwiZGVsZXRlIiwiY29sbGVjdGlvbiIsInJlcSIsIndoZXJlIiwiaWQiLCJlcXVhbHMiLCJjb21taXRUcmFuc2FjdGlvbiIsImVyciIsInJvbGxiYWNrVHJhbnNhY3Rpb24iLCJlcnJvciIsImJhdGNoIl0sIm1hcHBpbmdzIjoiQUFBQSx5REFBeUQ7Ozs7K0JBT25DQTs7O2VBQUFBOzs7K0JBSFE7b0NBQ0s7QUFFNUIsZUFBZUE7SUFDcEIsTUFBTSxFQUFFQyxPQUFPLEVBQUUsR0FBRyxJQUFJO0lBQ3hCLE1BQU1DLGlCQUFpQixNQUFNQyxJQUFBQSxzQ0FBa0IsRUFBQztRQUFFRjtJQUFRO0lBRTFELE1BQU0sRUFBRUcsa0JBQWtCLEVBQUUsR0FBRyxNQUFNQyxJQUFBQSw0QkFBYSxFQUFDO1FBQUVKO0lBQVE7SUFFN0QsSUFBSSxDQUFDRyxvQkFBb0JFLFFBQVE7UUFDL0JMLFFBQVFNLE1BQU0sQ0FBQ0MsSUFBSSxDQUFDO1lBQUVDLEtBQUs7UUFBMEI7UUFDckQ7SUFDRjtJQUVBLElBQUlDO0lBRUosbUNBQW1DO0lBQ25DLEtBQUssTUFBTUMsYUFBYVQsZUFBZ0I7UUFDdEMseUNBQXlDO1FBQ3pDLE1BQU1VLG9CQUFvQlIsbUJBQW1CUyxJQUFJLENBQy9DLENBQUNDLFdBQWFBLFNBQVNDLElBQUksS0FBS0osVUFBVUksSUFBSTtRQUVoRCxJQUFJSCxtQkFBbUI7WUFDckJYLFFBQVFNLE1BQU0sQ0FBQ0MsSUFBSSxDQUFDO2dCQUFFQyxLQUFLLENBQUMsZ0JBQWdCLEVBQUVFLFVBQVVJLElBQUksQ0FBQyxDQUFDO1lBQUM7WUFDL0QsSUFBSTtnQkFDRixNQUFNQyxRQUFRQyxLQUFLQyxHQUFHO2dCQUN0QlIsZ0JBQWdCLE1BQU0sSUFBSSxDQUFDUyxnQkFBZ0I7Z0JBQzNDLE1BQU1SLFVBQVVTLElBQUksQ0FBQztvQkFBRW5CO2dCQUFRO2dCQUMvQixNQUFNQSxRQUFRb0IsTUFBTSxDQUFDO29CQUNuQkMsWUFBWTtvQkFDWkMsS0FBSzt3QkFBRWI7b0JBQWM7b0JBQ3JCYyxPQUFPO3dCQUNMQyxJQUFJOzRCQUNGQyxRQUFRZCxrQkFBa0JhLEVBQUU7d0JBQzlCO29CQUNGO2dCQUNGO2dCQUNBLE1BQU0sSUFBSSxDQUFDRSxpQkFBaUIsQ0FBQ2pCO2dCQUM3QlQsUUFBUU0sTUFBTSxDQUFDQyxJQUFJLENBQUM7b0JBQUVDLEtBQUssQ0FBQyxnQkFBZ0IsRUFBRUUsVUFBVUksSUFBSSxDQUFDLEVBQUUsRUFBRUUsS0FBS0MsR0FBRyxLQUFLRixNQUFNLEdBQUcsQ0FBQztnQkFBQztZQUMzRixFQUFFLE9BQU9ZLEtBQWM7Z0JBQ3JCLE1BQU0sSUFBSSxDQUFDQyxtQkFBbUIsQ0FBQ25CO2dCQUMvQlQsUUFBUU0sTUFBTSxDQUFDdUIsS0FBSyxDQUFDO29CQUFFRjtvQkFBS25CLEtBQUssQ0FBQyx3QkFBd0IsRUFBRUUsVUFBVUksSUFBSSxDQUFDLENBQUM7Z0JBQUM7Z0JBQzdFLE1BQU1hO1lBQ1I7UUFDRjtJQUNGO0lBRUEsdUJBQXVCO0lBQ3ZCLElBQUk7UUFDRixNQUFNM0IsUUFBUW9CLE1BQU0sQ0FBQztZQUNuQkMsWUFBWTtZQUNaRSxPQUFPO2dCQUNMTyxPQUFPO29CQUNMTCxRQUFRLENBQUM7Z0JBQ1g7WUFDRjtRQUNGO0lBQ0YsRUFBRSxPQUFPRSxLQUFjO1FBQ3JCM0IsUUFBUU0sTUFBTSxDQUFDdUIsS0FBSyxDQUFDO1lBQUVBLE9BQU9GO1lBQUtuQixLQUFLO1FBQStCO0lBQ3pFO0FBQ0YifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"migrationsCollection.d.ts","sourceRoot":"","sources":["../../../src/database/migrations/migrationsCollection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AAEtE,eAAO,MAAM,oBAAoB,EAAE,gBAoClC,CAAA"}
1
+ {"version":3,"file":"migrationsCollection.d.ts","sourceRoot":"","sources":["../../../src/database/migrations/migrationsCollection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AAEtE,eAAO,MAAM,oBAAoB,EAAE,gBAgClC,CAAA"}
@@ -20,14 +20,10 @@ const migrationsCollection = {
20
20
  {
21
21
  name: 'batch',
22
22
  type: 'number'
23
- },
24
- {
25
- name: 'schema',
26
- type: 'json'
27
23
  }
28
24
  ],
29
25
  graphQL: false,
30
26
  slug: 'payload-migrations'
31
27
  };
32
28
 
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9kYXRhYmFzZS9taWdyYXRpb25zL21pZ3JhdGlvbnNDb2xsZWN0aW9uLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQ29sbGVjdGlvbkNvbmZpZyB9IGZyb20gJy4uLy4uL2NvbGxlY3Rpb25zL2NvbmZpZy90eXBlcydcblxuZXhwb3J0IGNvbnN0IG1pZ3JhdGlvbnNDb2xsZWN0aW9uOiBDb2xsZWN0aW9uQ29uZmlnID0ge1xuICBhZG1pbjoge1xuICAgIGhpZGRlbjogdHJ1ZSxcbiAgfSxcbiAgZmllbGRzOiBbXG4gICAge1xuICAgICAgbmFtZTogJ25hbWUnLFxuICAgICAgdHlwZTogJ3RleHQnLFxuICAgIH0sXG4gICAge1xuICAgICAgbmFtZTogJ2JhdGNoJyxcbiAgICAgIHR5cGU6ICdudW1iZXInLFxuICAgICAgLy8gTk9URTogVGhpcyB2YWx1ZSBpcyAtMSBpZiBpdCBpcyBhIFwiZGV2IHB1c2hcIlxuICAgIH0sXG4gICAge1xuICAgICAgbmFtZTogJ3NjaGVtYScsXG4gICAgICB0eXBlOiAnanNvbicsXG4gICAgfSxcbiAgICAvLyBUT0RPOiBkbyB3ZSBuZWVkIHRvIHBlcnNpc3QgdGhlIGluZGV4ZXMgc2VwYXJhdGUgZnJvbSB0aGUgc2NoZW1hP1xuICAgIC8vIHtcbiAgICAvLyAgIG5hbWU6ICdpbmRleGVzJyxcbiAgICAvLyAgIHR5cGU6ICdhcnJheScsXG4gICAgLy8gICBmaWVsZHM6IFtcbiAgICAvLyAgICAge1xuICAgIC8vICAgICAgIG5hbWU6ICdpbmRleCcsXG4gICAgLy8gICAgICAgdHlwZTogJ3RleHQnLFxuICAgIC8vICAgICB9LFxuICAgIC8vICAgICB7XG4gICAgLy8gICAgICAgbmFtZTogJ3ZhbHVlJyxcbiAgICAvLyAgICAgICB0eXBlOiAnanNvbicsXG4gICAgLy8gICAgIH0sXG4gICAgLy8gICBdLFxuICAgIC8vIH0sXG4gIF0sXG4gIGdyYXBoUUw6IGZhbHNlLFxuICBzbHVnOiAncGF5bG9hZC1taWdyYXRpb25zJyxcbn1cbiJdLCJuYW1lcyI6WyJtaWdyYXRpb25zQ29sbGVjdGlvbiIsImFkbWluIiwiaGlkZGVuIiwiZmllbGRzIiwibmFtZSIsInR5cGUiLCJncmFwaFFMIiwic2x1ZyJdLCJtYXBwaW5ncyI6Ijs7OzsrQkFFYUE7OztlQUFBQTs7O0FBQU4sTUFBTUEsdUJBQXlDO0lBQ3BEQyxPQUFPO1FBQ0xDLFFBQVE7SUFDVjtJQUNBQyxRQUFRO1FBQ047WUFDRUMsTUFBTTtZQUNOQyxNQUFNO1FBQ1I7UUFDQTtZQUNFRCxNQUFNO1lBQ05DLE1BQU07UUFFUjtRQUNBO1lBQ0VELE1BQU07WUFDTkMsTUFBTTtRQUNSO0tBZ0JEO0lBQ0RDLFNBQVM7SUFDVEMsTUFBTTtBQUNSIn0=
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9kYXRhYmFzZS9taWdyYXRpb25zL21pZ3JhdGlvbnNDb2xsZWN0aW9uLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQ29sbGVjdGlvbkNvbmZpZyB9IGZyb20gJy4uLy4uL2NvbGxlY3Rpb25zL2NvbmZpZy90eXBlcydcblxuZXhwb3J0IGNvbnN0IG1pZ3JhdGlvbnNDb2xsZWN0aW9uOiBDb2xsZWN0aW9uQ29uZmlnID0ge1xuICBhZG1pbjoge1xuICAgIGhpZGRlbjogdHJ1ZSxcbiAgfSxcbiAgZmllbGRzOiBbXG4gICAge1xuICAgICAgbmFtZTogJ25hbWUnLFxuICAgICAgdHlwZTogJ3RleHQnLFxuICAgIH0sXG4gICAge1xuICAgICAgbmFtZTogJ2JhdGNoJyxcbiAgICAgIHR5cGU6ICdudW1iZXInLFxuICAgICAgLy8gTk9URTogVGhpcyB2YWx1ZSBpcyAtMSBpZiBpdCBpcyBhIFwiZGV2IHB1c2hcIlxuICAgIH0sXG4gICAgLy8gVE9ETzogZG8gd2UgbmVlZCB0byBwZXJzaXN0IHRoZSBpbmRleGVzIHNlcGFyYXRlIGZyb20gdGhlIHNjaGVtYT9cbiAgICAvLyB7XG4gICAgLy8gICBuYW1lOiAnaW5kZXhlcycsXG4gICAgLy8gICB0eXBlOiAnYXJyYXknLFxuICAgIC8vICAgZmllbGRzOiBbXG4gICAgLy8gICAgIHtcbiAgICAvLyAgICAgICBuYW1lOiAnaW5kZXgnLFxuICAgIC8vICAgICAgIHR5cGU6ICd0ZXh0JyxcbiAgICAvLyAgICAgfSxcbiAgICAvLyAgICAge1xuICAgIC8vICAgICAgIG5hbWU6ICd2YWx1ZScsXG4gICAgLy8gICAgICAgdHlwZTogJ2pzb24nLFxuICAgIC8vICAgICB9LFxuICAgIC8vICAgXSxcbiAgICAvLyB9LFxuICBdLFxuICBncmFwaFFMOiBmYWxzZSxcbiAgc2x1ZzogJ3BheWxvYWQtbWlncmF0aW9ucycsXG59XG4iXSwibmFtZXMiOlsibWlncmF0aW9uc0NvbGxlY3Rpb24iLCJhZG1pbiIsImhpZGRlbiIsImZpZWxkcyIsIm5hbWUiLCJ0eXBlIiwiZ3JhcGhRTCIsInNsdWciXSwibWFwcGluZ3MiOiI7Ozs7K0JBRWFBOzs7ZUFBQUE7OztBQUFOLE1BQU1BLHVCQUF5QztJQUNwREMsT0FBTztRQUNMQyxRQUFRO0lBQ1Y7SUFDQUMsUUFBUTtRQUNOO1lBQ0VDLE1BQU07WUFDTkMsTUFBTTtRQUNSO1FBQ0E7WUFDRUQsTUFBTTtZQUNOQyxNQUFNO1FBRVI7S0FnQkQ7SUFDREMsU0FBUztJQUNUQyxNQUFNO0FBQ1IifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"promise.d.ts","sourceRoot":"","sources":["../../../../src/fields/hooks/beforeChange/promise.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAC5E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC/C,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAM3D,KAAK,IAAI,GAAG;IACV,OAAO,EAAE,cAAc,CAAA;IACvB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC7B,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC5B,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACvC,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;IAC5C,KAAK,EAAE,KAAK,GAAG,UAAU,CAAA;IACzB,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACpB,kBAAkB,EAAE,CAAC,MAAM,IAAI,CAAC,EAAE,CAAA;IAClC,SAAS,EAAE,SAAS,CAAA;IACpB,IAAI,EAAE,MAAM,CAAA;IACZ,GAAG,EAAE,cAAc,CAAA;IACnB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACpC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACnC,qBAAqB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC/C,cAAc,EAAE,OAAO,CAAA;CACxB,CAAA;AASD,eAAO,MAAM,OAAO,yKAgBjB,IAAI,KAAG,QAAQ,IAAI,CA8TrB,CAAA"}
1
+ {"version":3,"file":"promise.d.ts","sourceRoot":"","sources":["../../../../src/fields/hooks/beforeChange/promise.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAC5E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC/C,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAM3D,KAAK,IAAI,GAAG;IACV,OAAO,EAAE,cAAc,CAAA;IACvB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC7B,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC5B,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACvC,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;IAC5C,KAAK,EAAE,KAAK,GAAG,UAAU,CAAA;IACzB,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACpB,kBAAkB,EAAE,CAAC,MAAM,IAAI,CAAC,EAAE,CAAA;IAClC,SAAS,EAAE,SAAS,CAAA;IACpB,IAAI,EAAE,MAAM,CAAA;IACZ,GAAG,EAAE,cAAc,CAAA;IACnB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACpC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACnC,qBAAqB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC/C,cAAc,EAAE,OAAO,CAAA;CACxB,CAAA;AASD,eAAO,MAAM,OAAO,yKAgBjB,IAAI,KAAG,QAAQ,IAAI,CAyTrB,CAAA"}
@@ -54,15 +54,8 @@ const promise = async ({ id, context, data, doc, docWithLocales, errors, field,
54
54
  }
55
55
  // Validate
56
56
  if (!skipValidationFromHere && field.validate) {
57
- let valueToValidate = siblingData[field.name];
57
+ const valueToValidate = siblingData[field.name];
58
58
  let jsonError;
59
- if ([
60
- 'array',
61
- 'blocks'
62
- ].includes(field.type)) {
63
- const rows = siblingData[field.name];
64
- valueToValidate = Array.isArray(rows) ? rows.length : 0;
65
- }
66
59
  if (field.type === 'json' && typeof siblingData[field.name] === 'string') {
67
60
  try {
68
61
  JSON.parse(siblingData[field.name]);
@@ -304,4 +297,4 @@ const promise = async ({ id, context, data, doc, docWithLocales, errors, field,
304
297
  }
305
298
  };
306
299
 
307
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9maWVsZHMvaG9va3MvYmVmb3JlQ2hhbmdlL3Byb21pc2UudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgbm8tcGFyYW0tcmVhc3NpZ24gKi9cbmltcG9ydCBtZXJnZSBmcm9tICdkZWVwbWVyZ2UnXG5cbmltcG9ydCB0eXBlIHsgUGF5bG9hZFJlcXVlc3QsIFJlcXVlc3RDb250ZXh0IH0gZnJvbSAnLi4vLi4vLi4vZXhwcmVzcy90eXBlcydcbmltcG9ydCB0eXBlIHsgT3BlcmF0aW9uIH0gZnJvbSAnLi4vLi4vLi4vdHlwZXMnXG5pbXBvcnQgdHlwZSB7IEZpZWxkLCBUYWJBc0ZpZWxkIH0gZnJvbSAnLi4vLi4vY29uZmlnL3R5cGVzJ1xuXG5pbXBvcnQgeyBmaWVsZEFmZmVjdHNEYXRhLCB0YWJIYXNOYW1lIH0gZnJvbSAnLi4vLi4vY29uZmlnL3R5cGVzJ1xuaW1wb3J0IHsgZ2V0RXhpc3RpbmdSb3dEb2MgfSBmcm9tICcuL2dldEV4aXN0aW5nUm93RG9jJ1xuaW1wb3J0IHsgdHJhdmVyc2VGaWVsZHMgfSBmcm9tICcuL3RyYXZlcnNlRmllbGRzJ1xuXG50eXBlIEFyZ3MgPSB7XG4gIGNvbnRleHQ6IFJlcXVlc3RDb250ZXh0XG4gIGRhdGE6IFJlY29yZDxzdHJpbmcsIHVua25vd24+XG4gIGRvYzogUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbiAgZG9jV2l0aExvY2FsZXM6IFJlY29yZDxzdHJpbmcsIHVua25vd24+XG4gIGVycm9yczogeyBmaWVsZDogc3RyaW5nOyBtZXNzYWdlOiBzdHJpbmcgfVtdXG4gIGZpZWxkOiBGaWVsZCB8IFRhYkFzRmllbGRcbiAgaWQ/OiBudW1iZXIgfCBzdHJpbmdcbiAgbWVyZ2VMb2NhbGVBY3Rpb25zOiAoKCkgPT4gdm9pZClbXVxuICBvcGVyYXRpb246IE9wZXJhdGlvblxuICBwYXRoOiBzdHJpbmdcbiAgcmVxOiBQYXlsb2FkUmVxdWVzdFxuICBzaWJsaW5nRGF0YTogUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbiAgc2libGluZ0RvYzogUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbiAgc2libGluZ0RvY1dpdGhMb2NhbGVzPzogUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbiAgc2tpcFZhbGlkYXRpb246IGJvb2xlYW5cbn1cblxuLy8gVGhpcyBmdW5jdGlvbiBpcyByZXNwb25zaWJsZSBmb3IgdGhlIGZvbGxvd2luZyBhY3Rpb25zLCBpbiBvcmRlcjpcbi8vIC0gUnVuIGNvbmRpdGlvblxuLy8gLSBFeGVjdXRlIGZpZWxkIGhvb2tzXG4vLyAtIFZhbGlkYXRlIGRhdGFcbi8vIC0gVHJhbnNmb3JtIGRhdGEgZm9yIHN0b3JhZ2Vcbi8vIC0gVW5mbGF0dGVuIGxvY2FsZXNcblxuZXhwb3J0IGNvbnN0IHByb21pc2UgPSBhc3luYyAoe1xuICBpZCxcbiAgY29udGV4dCxcbiAgZGF0YSxcbiAgZG9jLFxuICBkb2NXaXRoTG9jYWxlcyxcbiAgZXJyb3JzLFxuICBmaWVsZCxcbiAgbWVyZ2VMb2NhbGVBY3Rpb25zLFxuICBvcGVyYXRpb24sXG4gIHBhdGgsXG4gIHJlcSxcbiAgc2libGluZ0RhdGEsXG4gIHNpYmxpbmdEb2MsXG4gIHNpYmxpbmdEb2NXaXRoTG9jYWxlcyxcbiAgc2tpcFZhbGlkYXRpb24sXG59OiBBcmdzKTogUHJvbWlzZTx2b2lkPiA9PiB7XG4gIGNvbnN0IHBhc3Nlc0NvbmRpdGlvbiA9IGZpZWxkLmFkbWluPy5jb25kaXRpb25cbiAgICA/IGZpZWxkLmFkbWluLmNvbmRpdGlvbihkYXRhLCBzaWJsaW5nRGF0YSwgeyB1c2VyOiByZXEudXNlciB9KVxuICAgIDogdHJ1ZVxuICBsZXQgc2tpcFZhbGlkYXRpb25Gcm9tSGVyZSA9IHNraXBWYWxpZGF0aW9uIHx8ICFwYXNzZXNDb25kaXRpb25cblxuICBjb25zdCBkZWZhdWx0TG9jYWxlID0gcmVxLnBheWxvYWQuY29uZmlnPy5sb2NhbGl6YXRpb25cbiAgICA/IHJlcS5wYXlsb2FkLmNvbmZpZy5sb2NhbGl6YXRpb24/LmRlZmF1bHRMb2NhbGVcbiAgICA6ICdlbidcbiAgY29uc3Qgb3BlcmF0aW9uTG9jYWxlID0gcmVxLmxvY2FsZSB8fCBkZWZhdWx0TG9jYWxlXG5cbiAgaWYgKGZpZWxkQWZmZWN0c0RhdGEoZmllbGQpKSB7XG4gICAgLy8gc2tpcCB2YWxpZGF0aW9uIGlmIHRoZSBmaWVsZCBpcyBsb2NhbGl6ZWQgYW5kIHRoZSBpbmNvbWluZyBkYXRhIGlzIG51bGxcbiAgICBpZiAoZmllbGQubG9jYWxpemVkICYmIG9wZXJhdGlvbkxvY2FsZSAhPT0gZGVmYXVsdExvY2FsZSkge1xuICAgICAgaWYgKFsnYXJyYXknLCAnYmxvY2tzJ10uaW5jbHVkZXMoZmllbGQudHlwZSkgJiYgc2libGluZ0RhdGFbZmllbGQubmFtZV0gPT09IG51bGwpIHtcbiAgICAgICAgc2tpcFZhbGlkYXRpb25Gcm9tSGVyZSA9IHRydWVcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBFeGVjdXRlIGhvb2tzXG4gICAgaWYgKGZpZWxkLmhvb2tzPy5iZWZvcmVDaGFuZ2UpIHtcbiAgICAgIGF3YWl0IGZpZWxkLmhvb2tzLmJlZm9yZUNoYW5nZS5yZWR1Y2UoYXN5bmMgKHByaW9ySG9vaywgY3VycmVudEhvb2spID0+IHtcbiAgICAgICAgYXdhaXQgcHJpb3JIb29rXG5cbiAgICAgICAgY29uc3QgaG9va2VkVmFsdWUgPSBhd2FpdCBjdXJyZW50SG9vayh7XG4gICAgICAgICAgY29udGV4dCxcbiAgICAgICAgICBkYXRhLFxuICAgICAgICAgIG9wZXJhdGlvbixcbiAgICAgICAgICBvcmlnaW5hbERvYzogZG9jLFxuICAgICAgICAgIHJlcSxcbiAgICAgICAgICBzaWJsaW5nRGF0YSxcbiAgICAgICAgICB2YWx1ZTogc2libGluZ0RhdGFbZmllbGQubmFtZV0sXG4gICAgICAgIH0pXG5cbiAgICAgICAgaWYgKGhvb2tlZFZhbHVlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICBzaWJsaW5nRGF0YVtmaWVsZC5uYW1lXSA9IGhvb2tlZFZhbHVlXG4gICAgICAgIH1cbiAgICAgIH0sIFByb21pc2UucmVzb2x2ZSgpKVxuICAgIH1cblxuICAgIC8vIFZhbGlkYXRlXG4gICAgaWYgKCFza2lwVmFsaWRhdGlvbkZyb21IZXJlICYmIGZpZWxkLnZhbGlkYXRlKSB7XG4gICAgICBsZXQgdmFsdWVUb1ZhbGlkYXRlID0gc2libGluZ0RhdGFbZmllbGQubmFtZV1cbiAgICAgIGxldCBqc29uRXJyb3JcblxuICAgICAgaWYgKFsnYXJyYXknLCAnYmxvY2tzJ10uaW5jbHVkZXMoZmllbGQudHlwZSkpIHtcbiAgICAgICAgY29uc3Qgcm93cyA9IHNpYmxpbmdEYXRhW2ZpZWxkLm5hbWVdXG4gICAgICAgIHZhbHVlVG9WYWxpZGF0ZSA9IEFycmF5LmlzQXJyYXkocm93cykgPyByb3dzLmxlbmd0aCA6IDBcbiAgICAgIH1cblxuICAgICAgaWYgKGZpZWxkLnR5cGUgPT09ICdqc29uJyAmJiB0eXBlb2Ygc2libGluZ0RhdGFbZmllbGQubmFtZV0gPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgSlNPTi5wYXJzZShzaWJsaW5nRGF0YVtmaWVsZC5uYW1lXSBhcyBzdHJpbmcpXG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICBqc29uRXJyb3IgPSBlXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgY29uc3QgdmFsaWRhdGlvblJlc3VsdCA9IGF3YWl0IGZpZWxkLnZhbGlkYXRlKHZhbHVlVG9WYWxpZGF0ZSwge1xuICAgICAgICAuLi5maWVsZCxcbiAgICAgICAgaWQsXG4gICAgICAgIGRhdGE6IG1lcmdlKGRvYywgZGF0YSwgeyBhcnJheU1lcmdlOiAoXywgc291cmNlKSA9PiBzb3VyY2UgfSksXG4gICAgICAgIGpzb25FcnJvcixcbiAgICAgICAgb3BlcmF0aW9uLFxuICAgICAgICBwYXlsb2FkOiByZXEucGF5bG9hZCxcbiAgICAgICAgc2libGluZ0RhdGE6IG1lcmdlKHNpYmxpbmdEb2MsIHNpYmxpbmdEYXRhLCB7IGFycmF5TWVyZ2U6IChfLCBzb3VyY2UpID0+IHNvdXJjZSB9KSxcbiAgICAgICAgdDogcmVxLnQsXG4gICAgICAgIHVzZXI6IHJlcS51c2VyLFxuICAgICAgfSlcblxuICAgICAgaWYgKHR5cGVvZiB2YWxpZGF0aW9uUmVzdWx0ID09PSAnc3RyaW5nJykge1xuICAgICAgICBlcnJvcnMucHVzaCh7XG4gICAgICAgICAgZmllbGQ6IGAke3BhdGh9JHtmaWVsZC5uYW1lfWAsXG4gICAgICAgICAgbWVzc2FnZTogdmFsaWRhdGlvblJlc3VsdCxcbiAgICAgICAgfSlcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBQdXNoIG1lcmdlIGxvY2FsZSBhY3Rpb24gaWYgYXBwbGljYWJsZVxuICAgIGlmIChmaWVsZC5sb2NhbGl6ZWQpIHtcbiAgICAgIG1lcmdlTG9jYWxlQWN0aW9ucy5wdXNoKCgpID0+IHtcbiAgICAgICAgaWYgKHJlcS5wYXlsb2FkLmNvbmZpZy5sb2NhbGl6YXRpb24pIHtcbiAgICAgICAgICBjb25zdCB7IGxvY2FsaXphdGlvbiB9ID0gcmVxLnBheWxvYWQuY29uZmlnXG4gICAgICAgICAgY29uc3QgbG9jYWxlRGF0YSA9IGxvY2FsaXphdGlvbi5sb2NhbGVDb2Rlcy5yZWR1Y2UoKGxvY2FsaXplZFZhbHVlcywgbG9jYWxlKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBmaWVsZFZhbHVlID1cbiAgICAgICAgICAgICAgbG9jYWxlID09PSByZXEubG9jYWxlXG4gICAgICAgICAgICAgICAgPyBzaWJsaW5nRGF0YVtmaWVsZC5uYW1lXVxuICAgICAgICAgICAgICAgIDogc2libGluZ0RvY1dpdGhMb2NhbGVzPy5bZmllbGQubmFtZV0/Lltsb2NhbGVdXG5cbiAgICAgICAgICAgIC8vIHVwZGF0ZSBsb2NhbGUgdmFsdWUgaWYgaXQncyBub3QgdW5kZWZpbmVkXG4gICAgICAgICAgICBpZiAodHlwZW9mIGZpZWxkVmFsdWUgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgLi4ubG9jYWxpemVkVmFsdWVzLFxuICAgICAgICAgICAgICAgIFtsb2NhbGVdOiBmaWVsZFZhbHVlLFxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiBsb2NhbGl6ZWRWYWx1ZXNcbiAgICAgICAgICB9LCB7fSlcblxuICAgICAgICAgIC8vIElmIHRoZXJlIGFyZSBsb2NhbGVzIHdpdGggZGF0YSwgc2V0IHRoZSBkYXRhXG4gICAgICAgICAgaWYgKE9iamVjdC5rZXlzKGxvY2FsZURhdGEpLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIHNpYmxpbmdEYXRhW2ZpZWxkLm5hbWVdID0gbG9jYWxlRGF0YVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSlcbiAgICB9XG4gIH1cblxuICBzd2l0Y2ggKGZpZWxkLnR5cGUpIHtcbiAgICBjYXNlICdwb2ludCc6IHtcbiAgICAgIC8vIFRyYW5zZm9ybSBwb2ludCBkYXRhIGZvciBzdG9yYWdlXG4gICAgICBpZiAoXG4gICAgICAgIEFycmF5LmlzQXJyYXkoc2libGluZ0RhdGFbZmllbGQubmFtZV0pICYmXG4gICAgICAgIHNpYmxpbmdEYXRhW2ZpZWxkLm5hbWVdWzBdICE9PSBudWxsICYmXG4gICAgICAgIHNpYmxpbmdEYXRhW2ZpZWxkLm5hbWVdWzFdICE9PSBudWxsXG4gICAgICApIHtcbiAgICAgICAgc2libGluZ0RhdGFbZmllbGQubmFtZV0gPSB7XG4gICAgICAgICAgY29vcmRpbmF0ZXM6IFtcbiAgICAgICAgICAgIHBhcnNlRmxvYXQoc2libGluZ0RhdGFbZmllbGQubmFtZV1bMF0pLFxuICAgICAgICAgICAgcGFyc2VGbG9hdChzaWJsaW5nRGF0YVtmaWVsZC5uYW1lXVsxXSksXG4gICAgICAgICAgXSxcbiAgICAgICAgICB0eXBlOiAnUG9pbnQnLFxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGJyZWFrXG4gICAgfVxuXG4gICAgY2FzZSAnZ3JvdXAnOiB7XG4gICAgICBpZiAodHlwZW9mIHNpYmxpbmdEYXRhW2ZpZWxkLm5hbWVdICE9PSAnb2JqZWN0Jykgc2libGluZ0RhdGFbZmllbGQubmFtZV0gPSB7fVxuICAgICAgaWYgKHR5cGVvZiBzaWJsaW5nRG9jW2ZpZWxkLm5hbWVdICE9PSAnb2JqZWN0Jykgc2libGluZ0RvY1tmaWVsZC5uYW1lXSA9IHt9XG4gICAgICBpZiAodHlwZW9mIHNpYmxpbmdEb2NXaXRoTG9jYWxlc1tmaWVsZC5uYW1lXSAhPT0gJ29iamVjdCcpXG4gICAgICAgIHNpYmxpbmdEb2NXaXRoTG9jYWxlc1tmaWVsZC5uYW1lXSA9IHt9XG5cbiAgICAgIGF3YWl0IHRyYXZlcnNlRmllbGRzKHtcbiAgICAgICAgaWQsXG4gICAgICAgIGNvbnRleHQsXG4gICAgICAgIGRhdGEsXG4gICAgICAgIGRvYyxcbiAgICAgICAgZG9jV2l0aExvY2FsZXMsXG4gICAgICAgIGVycm9ycyxcbiAgICAgICAgZmllbGRzOiBmaWVsZC5maWVsZHMsXG4gICAgICAgIG1lcmdlTG9jYWxlQWN0aW9ucyxcbiAgICAgICAgb3BlcmF0aW9uLFxuICAgICAgICBwYXRoOiBgJHtwYXRofSR7ZmllbGQubmFtZX0uYCxcbiAgICAgICAgcmVxLFxuICAgICAgICBzaWJsaW5nRGF0YTogc2libGluZ0RhdGFbZmllbGQubmFtZV0gYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj4sXG4gICAgICAgIHNpYmxpbmdEb2M6IHNpYmxpbmdEb2NbZmllbGQubmFtZV0gYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj4sXG4gICAgICAgIHNpYmxpbmdEb2NXaXRoTG9jYWxlczogc2libGluZ0RvY1dpdGhMb2NhbGVzW2ZpZWxkLm5hbWVdIGFzIFJlY29yZDxzdHJpbmcsIHVua25vd24+LFxuICAgICAgICBza2lwVmFsaWRhdGlvbjogc2tpcFZhbGlkYXRpb25Gcm9tSGVyZSxcbiAgICAgIH0pXG5cbiAgICAgIGJyZWFrXG4gICAgfVxuXG4gICAgY2FzZSAnYXJyYXknOiB7XG4gICAgICBjb25zdCByb3dzID0gc2libGluZ0RhdGFbZmllbGQubmFtZV1cblxuICAgICAgaWYgKEFycmF5LmlzQXJyYXkocm93cykpIHtcbiAgICAgICAgY29uc3QgcHJvbWlzZXMgPSBbXVxuICAgICAgICByb3dzLmZvckVhY2goKHJvdywgaSkgPT4ge1xuICAgICAgICAgIHByb21pc2VzLnB1c2goXG4gICAgICAgICAgICB0cmF2ZXJzZUZpZWxkcyh7XG4gICAgICAgICAgICAgIGlkLFxuICAgICAgICAgICAgICBjb250ZXh0LFxuICAgICAgICAgICAgICBkYXRhLFxuICAgICAgICAgICAgICBkb2MsXG4gICAgICAgICAgICAgIGRvY1dpdGhMb2NhbGVzLFxuICAgICAgICAgICAgICBlcnJvcnMsXG4gICAgICAgICAgICAgIGZpZWxkczogZmllbGQuZmllbGRzLFxuICAgICAgICAgICAgICBtZXJnZUxvY2FsZUFjdGlvbnMsXG4gICAgICAgICAgICAgIG9wZXJhdGlvbixcbiAgICAgICAgICAgICAgcGF0aDogYCR7cGF0aH0ke2ZpZWxkLm5hbWV9LiR7aX0uYCxcbiAgICAgICAgICAgICAgcmVxLFxuICAgICAgICAgICAgICBzaWJsaW5nRGF0YTogcm93LFxuICAgICAgICAgICAgICBzaWJsaW5nRG9jOiBnZXRFeGlzdGluZ1Jvd0RvYyhyb3csIHNpYmxpbmdEb2NbZmllbGQubmFtZV0pLFxuICAgICAgICAgICAgICBzaWJsaW5nRG9jV2l0aExvY2FsZXM6IGdldEV4aXN0aW5nUm93RG9jKHJvdywgc2libGluZ0RvY1dpdGhMb2NhbGVzW2ZpZWxkLm5hbWVdKSxcbiAgICAgICAgICAgICAgc2tpcFZhbGlkYXRpb246IHNraXBWYWxpZGF0aW9uRnJvbUhlcmUsXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICApXG4gICAgICAgIH0pXG5cbiAgICAgICAgYXdhaXQgUHJvbWlzZS5hbGwocHJvbWlzZXMpXG4gICAgICB9XG5cbiAgICAgIGJyZWFrXG4gICAgfVxuXG4gICAgY2FzZSAnYmxvY2tzJzoge1xuICAgICAgY29uc3Qgcm93cyA9IHNpYmxpbmdEYXRhW2ZpZWxkLm5hbWVdXG5cbiAgICAgIGlmIChBcnJheS5pc0FycmF5KHJvd3MpKSB7XG4gICAgICAgIGNvbnN0IHByb21pc2VzID0gW11cbiAgICAgICAgcm93cy5mb3JFYWNoKChyb3csIGkpID0+IHtcbiAgICAgICAgICBjb25zdCByb3dTaWJsaW5nRG9jID0gZ2V0RXhpc3RpbmdSb3dEb2Mocm93LCBzaWJsaW5nRG9jW2ZpZWxkLm5hbWVdKVxuICAgICAgICAgIGNvbnN0IHJvd1NpYmxpbmdEb2NXaXRoTG9jYWxlcyA9IGdldEV4aXN0aW5nUm93RG9jKHJvdywgc2libGluZ0RvY1dpdGhMb2NhbGVzW2ZpZWxkLm5hbWVdKVxuXG4gICAgICAgICAgY29uc3QgYmxvY2tUeXBlVG9NYXRjaCA9IHJvdy5ibG9ja1R5cGUgfHwgcm93U2libGluZ0RvYy5ibG9ja1R5cGVcbiAgICAgICAgICBjb25zdCBibG9jayA9IGZpZWxkLmJsb2Nrcy5maW5kKChibG9ja1R5cGUpID0+IGJsb2NrVHlwZS5zbHVnID09PSBibG9ja1R5cGVUb01hdGNoKVxuXG4gICAgICAgICAgaWYgKGJsb2NrKSB7XG4gICAgICAgICAgICBwcm9taXNlcy5wdXNoKFxuICAgICAgICAgICAgICB0cmF2ZXJzZUZpZWxkcyh7XG4gICAgICAgICAgICAgICAgaWQsXG4gICAgICAgICAgICAgICAgY29udGV4dCxcbiAgICAgICAgICAgICAgICBkYXRhLFxuICAgICAgICAgICAgICAgIGRvYyxcbiAgICAgICAgICAgICAgICBkb2NXaXRoTG9jYWxlcyxcbiAgICAgICAgICAgICAgICBlcnJvcnMsXG4gICAgICAgICAgICAgICAgZmllbGRzOiBibG9jay5maWVsZHMsXG4gICAgICAgICAgICAgICAgbWVyZ2VMb2NhbGVBY3Rpb25zLFxuICAgICAgICAgICAgICAgIG9wZXJhdGlvbixcbiAgICAgICAgICAgICAgICBwYXRoOiBgJHtwYXRofSR7ZmllbGQubmFtZX0uJHtpfS5gLFxuICAgICAgICAgICAgICAgIHJlcSxcbiAgICAgICAgICAgICAgICBzaWJsaW5nRGF0YTogcm93LFxuICAgICAgICAgICAgICAgIHNpYmxpbmdEb2M6IHJvd1NpYmxpbmdEb2MsXG4gICAgICAgICAgICAgICAgc2libGluZ0RvY1dpdGhMb2NhbGVzOiByb3dTaWJsaW5nRG9jV2l0aExvY2FsZXMsXG4gICAgICAgICAgICAgICAgc2tpcFZhbGlkYXRpb246IHNraXBWYWxpZGF0aW9uRnJvbUhlcmUsXG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgKVxuICAgICAgICAgIH1cbiAgICAgICAgfSlcblxuICAgICAgICBhd2FpdCBQcm9taXNlLmFsbChwcm9taXNlcylcbiAgICAgIH1cblxuICAgICAgYnJlYWtcbiAgICB9XG5cbiAgICBjYXNlICdyb3cnOlxuICAgIGNhc2UgJ2NvbGxhcHNpYmxlJzoge1xuICAgICAgYXdhaXQgdHJhdmVyc2VGaWVsZHMoe1xuICAgICAgICBpZCxcbiAgICAgICAgY29udGV4dCxcbiAgICAgICAgZGF0YSxcbiAgICAgICAgZG9jLFxuICAgICAgICBkb2NXaXRoTG9jYWxlcyxcbiAgICAgICAgZXJyb3JzLFxuICAgICAgICBmaWVsZHM6IGZpZWxkLmZpZWxkcyxcbiAgICAgICAgbWVyZ2VMb2NhbGVBY3Rpb25zLFxuICAgICAgICBvcGVyYXRpb24sXG4gICAgICAgIHBhdGgsXG4gICAgICAgIHJlcSxcbiAgICAgICAgc2libGluZ0RhdGEsXG4gICAgICAgIHNpYmxpbmdEb2MsXG4gICAgICAgIHNpYmxpbmdEb2NXaXRoTG9jYWxlcyxcbiAgICAgICAgc2tpcFZhbGlkYXRpb246IHNraXBWYWxpZGF0aW9uRnJvbUhlcmUsXG4gICAgICB9KVxuXG4gICAgICBicmVha1xuICAgIH1cblxuICAgIGNhc2UgJ3RhYic6IHtcbiAgICAgIGxldCB0YWJQYXRoID0gcGF0aFxuICAgICAgbGV0IHRhYlNpYmxpbmdEYXRhID0gc2libGluZ0RhdGFcbiAgICAgIGxldCB0YWJTaWJsaW5nRG9jID0gc2libGluZ0RvY1xuICAgICAgbGV0IHRhYlNpYmxpbmdEb2NXaXRoTG9jYWxlcyA9IHNpYmxpbmdEb2NXaXRoTG9jYWxlc1xuXG4gICAgICBpZiAodGFiSGFzTmFtZShmaWVsZCkpIHtcbiAgICAgICAgdGFiUGF0aCA9IGAke3BhdGh9JHtmaWVsZC5uYW1lfS5gXG4gICAgICAgIGlmICh0eXBlb2Ygc2libGluZ0RhdGFbZmllbGQubmFtZV0gIT09ICdvYmplY3QnKSBzaWJsaW5nRGF0YVtmaWVsZC5uYW1lXSA9IHt9XG4gICAgICAgIGlmICh0eXBlb2Ygc2libGluZ0RvY1tmaWVsZC5uYW1lXSAhPT0gJ29iamVjdCcpIHNpYmxpbmdEb2NbZmllbGQubmFtZV0gPSB7fVxuICAgICAgICBpZiAodHlwZW9mIHNpYmxpbmdEb2NXaXRoTG9jYWxlc1tmaWVsZC5uYW1lXSAhPT0gJ29iamVjdCcpXG4gICAgICAgICAgc2libGluZ0RvY1dpdGhMb2NhbGVzW2ZpZWxkLm5hbWVdID0ge31cblxuICAgICAgICB0YWJTaWJsaW5nRGF0YSA9IHNpYmxpbmdEYXRhW2ZpZWxkLm5hbWVdIGFzIFJlY29yZDxzdHJpbmcsIHVua25vd24+XG4gICAgICAgIHRhYlNpYmxpbmdEb2MgPSBzaWJsaW5nRG9jW2ZpZWxkLm5hbWVdIGFzIFJlY29yZDxzdHJpbmcsIHVua25vd24+XG4gICAgICAgIHRhYlNpYmxpbmdEb2NXaXRoTG9jYWxlcyA9IHNpYmxpbmdEb2NXaXRoTG9jYWxlc1tmaWVsZC5uYW1lXSBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPlxuICAgICAgfVxuXG4gICAgICBhd2FpdCB0cmF2ZXJzZUZpZWxkcyh7XG4gICAgICAgIGlkLFxuICAgICAgICBjb250ZXh0LFxuICAgICAgICBkYXRhLFxuICAgICAgICBkb2MsXG4gICAgICAgIGRvY1dpdGhMb2NhbGVzLFxuICAgICAgICBlcnJvcnMsXG4gICAgICAgIGZpZWxkczogZmllbGQuZmllbGRzLFxuICAgICAgICBtZXJnZUxvY2FsZUFjdGlvbnMsXG4gICAgICAgIG9wZXJhdGlvbixcbiAgICAgICAgcGF0aDogdGFiUGF0aCxcbiAgICAgICAgcmVxLFxuICAgICAgICBzaWJsaW5nRGF0YTogdGFiU2libGluZ0RhdGEsXG4gICAgICAgIHNpYmxpbmdEb2M6IHRhYlNpYmxpbmdEb2MsXG4gICAgICAgIHNpYmxpbmdEb2NXaXRoTG9jYWxlczogdGFiU2libGluZ0RvY1dpdGhMb2NhbGVzLFxuICAgICAgICBza2lwVmFsaWRhdGlvbjogc2tpcFZhbGlkYXRpb25Gcm9tSGVyZSxcbiAgICAgIH0pXG5cbiAgICAgIGJyZWFrXG4gICAgfVxuXG4gICAgY2FzZSAndGFicyc6IHtcbiAgICAgIGF3YWl0IHRyYXZlcnNlRmllbGRzKHtcbiAgICAgICAgaWQsXG4gICAgICAgIGNvbnRleHQsXG4gICAgICAgIGRhdGEsXG4gICAgICAgIGRvYyxcbiAgICAgICAgZG9jV2l0aExvY2FsZXMsXG4gICAgICAgIGVycm9ycyxcbiAgICAgICAgZmllbGRzOiBmaWVsZC50YWJzLm1hcCgodGFiKSA9PiAoeyAuLi50YWIsIHR5cGU6ICd0YWInIH0pKSxcbiAgICAgICAgbWVyZ2VMb2NhbGVBY3Rpb25zLFxuICAgICAgICBvcGVyYXRpb24sXG4gICAgICAgIHBhdGgsXG4gICAgICAgIHJlcSxcbiAgICAgICAgc2libGluZ0RhdGEsXG4gICAgICAgIHNpYmxpbmdEb2MsXG4gICAgICAgIHNpYmxpbmdEb2NXaXRoTG9jYWxlcyxcbiAgICAgICAgc2tpcFZhbGlkYXRpb246IHNraXBWYWxpZGF0aW9uRnJvbUhlcmUsXG4gICAgICB9KVxuXG4gICAgICBicmVha1xuICAgIH1cblxuICAgIGRlZmF1bHQ6IHtcbiAgICAgIGJyZWFrXG4gICAgfVxuICB9XG59XG4iXSwibmFtZXMiOlsicHJvbWlzZSIsImlkIiwiY29udGV4dCIsImRhdGEiLCJkb2MiLCJkb2NXaXRoTG9jYWxlcyIsImVycm9ycyIsImZpZWxkIiwibWVyZ2VMb2NhbGVBY3Rpb25zIiwib3BlcmF0aW9uIiwicGF0aCIsInJlcSIsInNpYmxpbmdEYXRhIiwic2libGluZ0RvYyIsInNpYmxpbmdEb2NXaXRoTG9jYWxlcyIsInNraXBWYWxpZGF0aW9uIiwicGFzc2VzQ29uZGl0aW9uIiwiYWRtaW4iLCJjb25kaXRpb24iLCJ1c2VyIiwic2tpcFZhbGlkYXRpb25Gcm9tSGVyZSIsImRlZmF1bHRMb2NhbGUiLCJwYXlsb2FkIiwiY29uZmlnIiwibG9jYWxpemF0aW9uIiwib3BlcmF0aW9uTG9jYWxlIiwibG9jYWxlIiwiZmllbGRBZmZlY3RzRGF0YSIsImxvY2FsaXplZCIsImluY2x1ZGVzIiwidHlwZSIsIm5hbWUiLCJob29rcyIsImJlZm9yZUNoYW5nZSIsInJlZHVjZSIsInByaW9ySG9vayIsImN1cnJlbnRIb29rIiwiaG9va2VkVmFsdWUiLCJvcmlnaW5hbERvYyIsInZhbHVlIiwidW5kZWZpbmVkIiwiUHJvbWlzZSIsInJlc29sdmUiLCJ2YWxpZGF0ZSIsInZhbHVlVG9WYWxpZGF0ZSIsImpzb25FcnJvciIsInJvd3MiLCJBcnJheSIsImlzQXJyYXkiLCJsZW5ndGgiLCJKU09OIiwicGFyc2UiLCJlIiwidmFsaWRhdGlvblJlc3VsdCIsIm1lcmdlIiwiYXJyYXlNZXJnZSIsIl8iLCJzb3VyY2UiLCJ0IiwicHVzaCIsIm1lc3NhZ2UiLCJsb2NhbGVEYXRhIiwibG9jYWxlQ29kZXMiLCJsb2NhbGl6ZWRWYWx1ZXMiLCJmaWVsZFZhbHVlIiwiT2JqZWN0Iiwia2V5cyIsImNvb3JkaW5hdGVzIiwicGFyc2VGbG9hdCIsInRyYXZlcnNlRmllbGRzIiwiZmllbGRzIiwicHJvbWlzZXMiLCJmb3JFYWNoIiwicm93IiwiaSIsImdldEV4aXN0aW5nUm93RG9jIiwiYWxsIiwicm93U2libGluZ0RvYyIsInJvd1NpYmxpbmdEb2NXaXRoTG9jYWxlcyIsImJsb2NrVHlwZVRvTWF0Y2giLCJibG9ja1R5cGUiLCJibG9jayIsImJsb2NrcyIsImZpbmQiLCJzbHVnIiwidGFiUGF0aCIsInRhYlNpYmxpbmdEYXRhIiwidGFiU2libGluZ0RvYyIsInRhYlNpYmxpbmdEb2NXaXRoTG9jYWxlcyIsInRhYkhhc05hbWUiLCJ0YWJzIiwibWFwIiwidGFiIl0sIm1hcHBpbmdzIjoiQUFBQSxvQ0FBb0M7Ozs7K0JBb0N2QkE7OztlQUFBQTs7O2tFQW5DSzt1QkFNMkI7bUNBQ1g7Z0NBQ0g7Ozs7OztBQTJCeEIsTUFBTUEsVUFBVSxPQUFPLEVBQzVCQyxFQUFFLEVBQ0ZDLE9BQU8sRUFDUEMsSUFBSSxFQUNKQyxHQUFHLEVBQ0hDLGNBQWMsRUFDZEMsTUFBTSxFQUNOQyxLQUFLLEVBQ0xDLGtCQUFrQixFQUNsQkMsU0FBUyxFQUNUQyxJQUFJLEVBQ0pDLEdBQUcsRUFDSEMsV0FBVyxFQUNYQyxVQUFVLEVBQ1ZDLHFCQUFxQixFQUNyQkMsY0FBYyxFQUNUO0lBQ0wsTUFBTUMsa0JBQWtCVCxNQUFNVSxLQUFLLEVBQUVDLFlBQ2pDWCxNQUFNVSxLQUFLLENBQUNDLFNBQVMsQ0FBQ2YsTUFBTVMsYUFBYTtRQUFFTyxNQUFNUixJQUFJUSxJQUFJO0lBQUMsS0FDMUQ7SUFDSixJQUFJQyx5QkFBeUJMLGtCQUFrQixDQUFDQztJQUVoRCxNQUFNSyxnQkFBZ0JWLElBQUlXLE9BQU8sQ0FBQ0MsTUFBTSxFQUFFQyxlQUN0Q2IsSUFBSVcsT0FBTyxDQUFDQyxNQUFNLENBQUNDLFlBQVksRUFBRUgsZ0JBQ2pDO0lBQ0osTUFBTUksa0JBQWtCZCxJQUFJZSxNQUFNLElBQUlMO0lBRXRDLElBQUlNLElBQUFBLHVCQUFnQixFQUFDcEIsUUFBUTtRQUMzQiwwRUFBMEU7UUFDMUUsSUFBSUEsTUFBTXFCLFNBQVMsSUFBSUgsb0JBQW9CSixlQUFlO1lBQ3hELElBQUk7Z0JBQUM7Z0JBQVM7YUFBUyxDQUFDUSxRQUFRLENBQUN0QixNQUFNdUIsSUFBSSxLQUFLbEIsV0FBVyxDQUFDTCxNQUFNd0IsSUFBSSxDQUFDLEtBQUssTUFBTTtnQkFDaEZYLHlCQUF5QjtZQUMzQjtRQUNGO1FBRUEsZ0JBQWdCO1FBQ2hCLElBQUliLE1BQU15QixLQUFL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
300
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9maWVsZHMvaG9va3MvYmVmb3JlQ2hhbmdlL3Byb21pc2UudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgbm8tcGFyYW0tcmVhc3NpZ24gKi9cbmltcG9ydCBtZXJnZSBmcm9tICdkZWVwbWVyZ2UnXG5cbmltcG9ydCB0eXBlIHsgUGF5bG9hZFJlcXVlc3QsIFJlcXVlc3RDb250ZXh0IH0gZnJvbSAnLi4vLi4vLi4vZXhwcmVzcy90eXBlcydcbmltcG9ydCB0eXBlIHsgT3BlcmF0aW9uIH0gZnJvbSAnLi4vLi4vLi4vdHlwZXMnXG5pbXBvcnQgdHlwZSB7IEZpZWxkLCBUYWJBc0ZpZWxkIH0gZnJvbSAnLi4vLi4vY29uZmlnL3R5cGVzJ1xuXG5pbXBvcnQgeyBmaWVsZEFmZmVjdHNEYXRhLCB0YWJIYXNOYW1lIH0gZnJvbSAnLi4vLi4vY29uZmlnL3R5cGVzJ1xuaW1wb3J0IHsgZ2V0RXhpc3RpbmdSb3dEb2MgfSBmcm9tICcuL2dldEV4aXN0aW5nUm93RG9jJ1xuaW1wb3J0IHsgdHJhdmVyc2VGaWVsZHMgfSBmcm9tICcuL3RyYXZlcnNlRmllbGRzJ1xuXG50eXBlIEFyZ3MgPSB7XG4gIGNvbnRleHQ6IFJlcXVlc3RDb250ZXh0XG4gIGRhdGE6IFJlY29yZDxzdHJpbmcsIHVua25vd24+XG4gIGRvYzogUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbiAgZG9jV2l0aExvY2FsZXM6IFJlY29yZDxzdHJpbmcsIHVua25vd24+XG4gIGVycm9yczogeyBmaWVsZDogc3RyaW5nOyBtZXNzYWdlOiBzdHJpbmcgfVtdXG4gIGZpZWxkOiBGaWVsZCB8IFRhYkFzRmllbGRcbiAgaWQ/OiBudW1iZXIgfCBzdHJpbmdcbiAgbWVyZ2VMb2NhbGVBY3Rpb25zOiAoKCkgPT4gdm9pZClbXVxuICBvcGVyYXRpb246IE9wZXJhdGlvblxuICBwYXRoOiBzdHJpbmdcbiAgcmVxOiBQYXlsb2FkUmVxdWVzdFxuICBzaWJsaW5nRGF0YTogUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbiAgc2libGluZ0RvYzogUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbiAgc2libGluZ0RvY1dpdGhMb2NhbGVzPzogUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbiAgc2tpcFZhbGlkYXRpb246IGJvb2xlYW5cbn1cblxuLy8gVGhpcyBmdW5jdGlvbiBpcyByZXNwb25zaWJsZSBmb3IgdGhlIGZvbGxvd2luZyBhY3Rpb25zLCBpbiBvcmRlcjpcbi8vIC0gUnVuIGNvbmRpdGlvblxuLy8gLSBFeGVjdXRlIGZpZWxkIGhvb2tzXG4vLyAtIFZhbGlkYXRlIGRhdGFcbi8vIC0gVHJhbnNmb3JtIGRhdGEgZm9yIHN0b3JhZ2Vcbi8vIC0gVW5mbGF0dGVuIGxvY2FsZXNcblxuZXhwb3J0IGNvbnN0IHByb21pc2UgPSBhc3luYyAoe1xuICBpZCxcbiAgY29udGV4dCxcbiAgZGF0YSxcbiAgZG9jLFxuICBkb2NXaXRoTG9jYWxlcyxcbiAgZXJyb3JzLFxuICBmaWVsZCxcbiAgbWVyZ2VMb2NhbGVBY3Rpb25zLFxuICBvcGVyYXRpb24sXG4gIHBhdGgsXG4gIHJlcSxcbiAgc2libGluZ0RhdGEsXG4gIHNpYmxpbmdEb2MsXG4gIHNpYmxpbmdEb2NXaXRoTG9jYWxlcyxcbiAgc2tpcFZhbGlkYXRpb24sXG59OiBBcmdzKTogUHJvbWlzZTx2b2lkPiA9PiB7XG4gIGNvbnN0IHBhc3Nlc0NvbmRpdGlvbiA9IGZpZWxkLmFkbWluPy5jb25kaXRpb25cbiAgICA/IGZpZWxkLmFkbWluLmNvbmRpdGlvbihkYXRhLCBzaWJsaW5nRGF0YSwgeyB1c2VyOiByZXEudXNlciB9KVxuICAgIDogdHJ1ZVxuICBsZXQgc2tpcFZhbGlkYXRpb25Gcm9tSGVyZSA9IHNraXBWYWxpZGF0aW9uIHx8ICFwYXNzZXNDb25kaXRpb25cblxuICBjb25zdCBkZWZhdWx0TG9jYWxlID0gcmVxLnBheWxvYWQuY29uZmlnPy5sb2NhbGl6YXRpb25cbiAgICA/IHJlcS5wYXlsb2FkLmNvbmZpZy5sb2NhbGl6YXRpb24/LmRlZmF1bHRMb2NhbGVcbiAgICA6ICdlbidcbiAgY29uc3Qgb3BlcmF0aW9uTG9jYWxlID0gcmVxLmxvY2FsZSB8fCBkZWZhdWx0TG9jYWxlXG5cbiAgaWYgKGZpZWxkQWZmZWN0c0RhdGEoZmllbGQpKSB7XG4gICAgLy8gc2tpcCB2YWxpZGF0aW9uIGlmIHRoZSBmaWVsZCBpcyBsb2NhbGl6ZWQgYW5kIHRoZSBpbmNvbWluZyBkYXRhIGlzIG51bGxcbiAgICBpZiAoZmllbGQubG9jYWxpemVkICYmIG9wZXJhdGlvbkxvY2FsZSAhPT0gZGVmYXVsdExvY2FsZSkge1xuICAgICAgaWYgKFsnYXJyYXknLCAnYmxvY2tzJ10uaW5jbHVkZXMoZmllbGQudHlwZSkgJiYgc2libGluZ0RhdGFbZmllbGQubmFtZV0gPT09IG51bGwpIHtcbiAgICAgICAgc2tpcFZhbGlkYXRpb25Gcm9tSGVyZSA9IHRydWVcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBFeGVjdXRlIGhvb2tzXG4gICAgaWYgKGZpZWxkLmhvb2tzPy5iZWZvcmVDaGFuZ2UpIHtcbiAgICAgIGF3YWl0IGZpZWxkLmhvb2tzLmJlZm9yZUNoYW5nZS5yZWR1Y2UoYXN5bmMgKHByaW9ySG9vaywgY3VycmVudEhvb2spID0+IHtcbiAgICAgICAgYXdhaXQgcHJpb3JIb29rXG5cbiAgICAgICAgY29uc3QgaG9va2VkVmFsdWUgPSBhd2FpdCBjdXJyZW50SG9vayh7XG4gICAgICAgICAgY29udGV4dCxcbiAgICAgICAgICBkYXRhLFxuICAgICAgICAgIG9wZXJhdGlvbixcbiAgICAgICAgICBvcmlnaW5hbERvYzogZG9jLFxuICAgICAgICAgIHJlcSxcbiAgICAgICAgICBzaWJsaW5nRGF0YSxcbiAgICAgICAgICB2YWx1ZTogc2libGluZ0RhdGFbZmllbGQubmFtZV0sXG4gICAgICAgIH0pXG5cbiAgICAgICAgaWYgKGhvb2tlZFZhbHVlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICBzaWJsaW5nRGF0YVtmaWVsZC5uYW1lXSA9IGhvb2tlZFZhbHVlXG4gICAgICAgIH1cbiAgICAgIH0sIFByb21pc2UucmVzb2x2ZSgpKVxuICAgIH1cblxuICAgIC8vIFZhbGlkYXRlXG4gICAgaWYgKCFza2lwVmFsaWRhdGlvbkZyb21IZXJlICYmIGZpZWxkLnZhbGlkYXRlKSB7XG4gICAgICBjb25zdCB2YWx1ZVRvVmFsaWRhdGUgPSBzaWJsaW5nRGF0YVtmaWVsZC5uYW1lXVxuICAgICAgbGV0IGpzb25FcnJvclxuXG4gICAgICBpZiAoZmllbGQudHlwZSA9PT0gJ2pzb24nICYmIHR5cGVvZiBzaWJsaW5nRGF0YVtmaWVsZC5uYW1lXSA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBKU09OLnBhcnNlKHNpYmxpbmdEYXRhW2ZpZWxkLm5hbWVdIGFzIHN0cmluZylcbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgIGpzb25FcnJvciA9IGVcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBjb25zdCB2YWxpZGF0aW9uUmVzdWx0ID0gYXdhaXQgZmllbGQudmFsaWRhdGUodmFsdWVUb1ZhbGlkYXRlLCB7XG4gICAgICAgIC4uLmZpZWxkLFxuICAgICAgICBpZCxcbiAgICAgICAgZGF0YTogbWVyZ2UoZG9jLCBkYXRhLCB7IGFycmF5TWVyZ2U6IChfLCBzb3VyY2UpID0+IHNvdXJjZSB9KSxcbiAgICAgICAganNvbkVycm9yLFxuICAgICAgICBvcGVyYXRpb24sXG4gICAgICAgIHBheWxvYWQ6IHJlcS5wYXlsb2FkLFxuICAgICAgICBzaWJsaW5nRGF0YTogbWVyZ2Uoc2libGluZ0RvYywgc2libGluZ0RhdGEsIHsgYXJyYXlNZXJnZTogKF8sIHNvdXJjZSkgPT4gc291cmNlIH0pLFxuICAgICAgICB0OiByZXEudCxcbiAgICAgICAgdXNlcjogcmVxLnVzZXIsXG4gICAgICB9KVxuXG4gICAgICBpZiAodHlwZW9mIHZhbGlkYXRpb25SZXN1bHQgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIGVycm9ycy5wdXNoKHtcbiAgICAgICAgICBmaWVsZDogYCR7cGF0aH0ke2ZpZWxkLm5hbWV9YCxcbiAgICAgICAgICBtZXNzYWdlOiB2YWxpZGF0aW9uUmVzdWx0LFxuICAgICAgICB9KVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFB1c2ggbWVyZ2UgbG9jYWxlIGFjdGlvbiBpZiBhcHBsaWNhYmxlXG4gICAgaWYgKGZpZWxkLmxvY2FsaXplZCkge1xuICAgICAgbWVyZ2VMb2NhbGVBY3Rpb25zLnB1c2goKCkgPT4ge1xuICAgICAgICBpZiAocmVxLnBheWxvYWQuY29uZmlnLmxvY2FsaXphdGlvbikge1xuICAgICAgICAgIGNvbnN0IHsgbG9jYWxpemF0aW9uIH0gPSByZXEucGF5bG9hZC5jb25maWdcbiAgICAgICAgICBjb25zdCBsb2NhbGVEYXRhID0gbG9jYWxpemF0aW9uLmxvY2FsZUNvZGVzLnJlZHVjZSgobG9jYWxpemVkVmFsdWVzLCBsb2NhbGUpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGZpZWxkVmFsdWUgPVxuICAgICAgICAgICAgICBsb2NhbGUgPT09IHJlcS5sb2NhbGVcbiAgICAgICAgICAgICAgICA/IHNpYmxpbmdEYXRhW2ZpZWxkLm5hbWVdXG4gICAgICAgICAgICAgICAgOiBzaWJsaW5nRG9jV2l0aExvY2FsZXM/LltmaWVsZC5uYW1lXT8uW2xvY2FsZV1cblxuICAgICAgICAgICAgLy8gdXBkYXRlIGxvY2FsZSB2YWx1ZSBpZiBpdCdzIG5vdCB1bmRlZmluZWRcbiAgICAgICAgICAgIGlmICh0eXBlb2YgZmllbGRWYWx1ZSAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAuLi5sb2NhbGl6ZWRWYWx1ZXMsXG4gICAgICAgICAgICAgICAgW2xvY2FsZV06IGZpZWxkVmFsdWUsXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuIGxvY2FsaXplZFZhbHVlc1xuICAgICAgICAgIH0sIHt9KVxuXG4gICAgICAgICAgLy8gSWYgdGhlcmUgYXJlIGxvY2FsZXMgd2l0aCBkYXRhLCBzZXQgdGhlIGRhdGFcbiAgICAgICAgICBpZiAoT2JqZWN0LmtleXMobG9jYWxlRGF0YSkubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgc2libGluZ0RhdGFbZmllbGQubmFtZV0gPSBsb2NhbGVEYXRhXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9KVxuICAgIH1cbiAgfVxuXG4gIHN3aXRjaCAoZmllbGQudHlwZSkge1xuICAgIGNhc2UgJ3BvaW50Jzoge1xuICAgICAgLy8gVHJhbnNmb3JtIHBvaW50IGRhdGEgZm9yIHN0b3JhZ2VcbiAgICAgIGlmIChcbiAgICAgICAgQXJyYXkuaXNBcnJheShzaWJsaW5nRGF0YVtmaWVsZC5uYW1lXSkgJiZcbiAgICAgICAgc2libGluZ0RhdGFbZmllbGQubmFtZV1bMF0gIT09IG51bGwgJiZcbiAgICAgICAgc2libGluZ0RhdGFbZmllbGQubmFtZV1bMV0gIT09IG51bGxcbiAgICAgICkge1xuICAgICAgICBzaWJsaW5nRGF0YVtmaWVsZC5uYW1lXSA9IHtcbiAgICAgICAgICBjb29yZGluYXRlczogW1xuICAgICAgICAgICAgcGFyc2VGbG9hdChzaWJsaW5nRGF0YVtmaWVsZC5uYW1lXVswXSksXG4gICAgICAgICAgICBwYXJzZUZsb2F0KHNpYmxpbmdEYXRhW2ZpZWxkLm5hbWVdWzFdKSxcbiAgICAgICAgICBdLFxuICAgICAgICAgIHR5cGU6ICdQb2ludCcsXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgYnJlYWtcbiAgICB9XG5cbiAgICBjYXNlICdncm91cCc6IHtcbiAgICAgIGlmICh0eXBlb2Ygc2libGluZ0RhdGFbZmllbGQubmFtZV0gIT09ICdvYmplY3QnKSBzaWJsaW5nRGF0YVtmaWVsZC5uYW1lXSA9IHt9XG4gICAgICBpZiAodHlwZW9mIHNpYmxpbmdEb2NbZmllbGQubmFtZV0gIT09ICdvYmplY3QnKSBzaWJsaW5nRG9jW2ZpZWxkLm5hbWVdID0ge31cbiAgICAgIGlmICh0eXBlb2Ygc2libGluZ0RvY1dpdGhMb2NhbGVzW2ZpZWxkLm5hbWVdICE9PSAnb2JqZWN0JylcbiAgICAgICAgc2libGluZ0RvY1dpdGhMb2NhbGVzW2ZpZWxkLm5hbWVdID0ge31cblxuICAgICAgYXdhaXQgdHJhdmVyc2VGaWVsZHMoe1xuICAgICAgICBpZCxcbiAgICAgICAgY29udGV4dCxcbiAgICAgICAgZGF0YSxcbiAgICAgICAgZG9jLFxuICAgICAgICBkb2NXaXRoTG9jYWxlcyxcbiAgICAgICAgZXJyb3JzLFxuICAgICAgICBmaWVsZHM6IGZpZWxkLmZpZWxkcyxcbiAgICAgICAgbWVyZ2VMb2NhbGVBY3Rpb25zLFxuICAgICAgICBvcGVyYXRpb24sXG4gICAgICAgIHBhdGg6IGAke3BhdGh9JHtmaWVsZC5uYW1lfS5gLFxuICAgICAgICByZXEsXG4gICAgICAgIHNpYmxpbmdEYXRhOiBzaWJsaW5nRGF0YVtmaWVsZC5uYW1lXSBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPixcbiAgICAgICAgc2libGluZ0RvYzogc2libGluZ0RvY1tmaWVsZC5uYW1lXSBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPixcbiAgICAgICAgc2libGluZ0RvY1dpdGhMb2NhbGVzOiBzaWJsaW5nRG9jV2l0aExvY2FsZXNbZmllbGQubmFtZV0gYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj4sXG4gICAgICAgIHNraXBWYWxpZGF0aW9uOiBza2lwVmFsaWRhdGlvbkZyb21IZXJlLFxuICAgICAgfSlcblxuICAgICAgYnJlYWtcbiAgICB9XG5cbiAgICBjYXNlICdhcnJheSc6IHtcbiAgICAgIGNvbnN0IHJvd3MgPSBzaWJsaW5nRGF0YVtmaWVsZC5uYW1lXVxuXG4gICAgICBpZiAoQXJyYXkuaXNBcnJheShyb3dzKSkge1xuICAgICAgICBjb25zdCBwcm9taXNlcyA9IFtdXG4gICAgICAgIHJvd3MuZm9yRWFjaCgocm93LCBpKSA9PiB7XG4gICAgICAgICAgcHJvbWlzZXMucHVzaChcbiAgICAgICAgICAgIHRyYXZlcnNlRmllbGRzKHtcbiAgICAgICAgICAgICAgaWQsXG4gICAgICAgICAgICAgIGNvbnRleHQsXG4gICAgICAgICAgICAgIGRhdGEsXG4gICAgICAgICAgICAgIGRvYyxcbiAgICAgICAgICAgICAgZG9jV2l0aExvY2FsZXMsXG4gICAgICAgICAgICAgIGVycm9ycyxcbiAgICAgICAgICAgICAgZmllbGRzOiBmaWVsZC5maWVsZHMsXG4gICAgICAgICAgICAgIG1lcmdlTG9jYWxlQWN0aW9ucyxcbiAgICAgICAgICAgICAgb3BlcmF0aW9uLFxuICAgICAgICAgICAgICBwYXRoOiBgJHtwYXRofSR7ZmllbGQubmFtZX0uJHtpfS5gLFxuICAgICAgICAgICAgICByZXEsXG4gICAgICAgICAgICAgIHNpYmxpbmdEYXRhOiByb3csXG4gICAgICAgICAgICAgIHNpYmxpbmdEb2M6IGdldEV4aXN0aW5nUm93RG9jKHJvdywgc2libGluZ0RvY1tmaWVsZC5uYW1lXSksXG4gICAgICAgICAgICAgIHNpYmxpbmdEb2NXaXRoTG9jYWxlczogZ2V0RXhpc3RpbmdSb3dEb2Mocm93LCBzaWJsaW5nRG9jV2l0aExvY2FsZXNbZmllbGQubmFtZV0pLFxuICAgICAgICAgICAgICBza2lwVmFsaWRhdGlvbjogc2tpcFZhbGlkYXRpb25Gcm9tSGVyZSxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgIClcbiAgICAgICAgfSlcblxuICAgICAgICBhd2FpdCBQcm9taXNlLmFsbChwcm9taXNlcylcbiAgICAgIH1cblxuICAgICAgYnJlYWtcbiAgICB9XG5cbiAgICBjYXNlICdibG9ja3MnOiB7XG4gICAgICBjb25zdCByb3dzID0gc2libGluZ0RhdGFbZmllbGQubmFtZV1cblxuICAgICAgaWYgKEFycmF5LmlzQXJyYXkocm93cykpIHtcbiAgICAgICAgY29uc3QgcHJvbWlzZXMgPSBbXVxuICAgICAgICByb3dzLmZvckVhY2goKHJvdywgaSkgPT4ge1xuICAgICAgICAgIGNvbnN0IHJvd1NpYmxpbmdEb2MgPSBnZXRFeGlzdGluZ1Jvd0RvYyhyb3csIHNpYmxpbmdEb2NbZmllbGQubmFtZV0pXG4gICAgICAgICAgY29uc3Qgcm93U2libGluZ0RvY1dpdGhMb2NhbGVzID0gZ2V0RXhpc3RpbmdSb3dEb2Mocm93LCBzaWJsaW5nRG9jV2l0aExvY2FsZXNbZmllbGQubmFtZV0pXG5cbiAgICAgICAgICBjb25zdCBibG9ja1R5cGVUb01hdGNoID0gcm93LmJsb2NrVHlwZSB8fCByb3dTaWJsaW5nRG9jLmJsb2NrVHlwZVxuICAgICAgICAgIGNvbnN0IGJsb2NrID0gZmllbGQuYmxvY2tzLmZpbmQoKGJsb2NrVHlwZSkgPT4gYmxvY2tUeXBlLnNsdWcgPT09IGJsb2NrVHlwZVRvTWF0Y2gpXG5cbiAgICAgICAgICBpZiAoYmxvY2spIHtcbiAgICAgICAgICAgIHByb21pc2VzLnB1c2goXG4gICAgICAgICAgICAgIHRyYXZlcnNlRmllbGRzKHtcbiAgICAgICAgICAgICAgICBpZCxcbiAgICAgICAgICAgICAgICBjb250ZXh0LFxuICAgICAgICAgICAgICAgIGRhdGEsXG4gICAgICAgICAgICAgICAgZG9jLFxuICAgICAgICAgICAgICAgIGRvY1dpdGhMb2NhbGVzLFxuICAgICAgICAgICAgICAgIGVycm9ycyxcbiAgICAgICAgICAgICAgICBmaWVsZHM6IGJsb2NrLmZpZWxkcyxcbiAgICAgICAgICAgICAgICBtZXJnZUxvY2FsZUFjdGlvbnMsXG4gICAgICAgICAgICAgICAgb3BlcmF0aW9uLFxuICAgICAgICAgICAgICAgIHBhdGg6IGAke3BhdGh9JHtmaWVsZC5uYW1lfS4ke2l9LmAsXG4gICAgICAgICAgICAgICAgcmVxLFxuICAgICAgICAgICAgICAgIHNpYmxpbmdEYXRhOiByb3csXG4gICAgICAgICAgICAgICAgc2libGluZ0RvYzogcm93U2libGluZ0RvYyxcbiAgICAgICAgICAgICAgICBzaWJsaW5nRG9jV2l0aExvY2FsZXM6IHJvd1NpYmxpbmdEb2NXaXRoTG9jYWxlcyxcbiAgICAgICAgICAgICAgICBza2lwVmFsaWRhdGlvbjogc2tpcFZhbGlkYXRpb25Gcm9tSGVyZSxcbiAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICApXG4gICAgICAgICAgfVxuICAgICAgICB9KVxuXG4gICAgICAgIGF3YWl0IFByb21pc2UuYWxsKHByb21pc2VzKVxuICAgICAgfVxuXG4gICAgICBicmVha1xuICAgIH1cblxuICAgIGNhc2UgJ3Jvdyc6XG4gICAgY2FzZSAnY29sbGFwc2libGUnOiB7XG4gICAgICBhd2FpdCB0cmF2ZXJzZUZpZWxkcyh7XG4gICAgICAgIGlkLFxuICAgICAgICBjb250ZXh0LFxuICAgICAgICBkYXRhLFxuICAgICAgICBkb2MsXG4gICAgICAgIGRvY1dpdGhMb2NhbGVzLFxuICAgICAgICBlcnJvcnMsXG4gICAgICAgIGZpZWxkczogZmllbGQuZmllbGRzLFxuICAgICAgICBtZXJnZUxvY2FsZUFjdGlvbnMsXG4gICAgICAgIG9wZXJhdGlvbixcbiAgICAgICAgcGF0aCxcbiAgICAgICAgcmVxLFxuICAgICAgICBzaWJsaW5nRGF0YSxcbiAgICAgICAgc2libGluZ0RvYyxcbiAgICAgICAgc2libGluZ0RvY1dpdGhMb2NhbGVzLFxuICAgICAgICBza2lwVmFsaWRhdGlvbjogc2tpcFZhbGlkYXRpb25Gcm9tSGVyZSxcbiAgICAgIH0pXG5cbiAgICAgIGJyZWFrXG4gICAgfVxuXG4gICAgY2FzZSAndGFiJzoge1xuICAgICAgbGV0IHRhYlBhdGggPSBwYXRoXG4gICAgICBsZXQgdGFiU2libGluZ0RhdGEgPSBzaWJsaW5nRGF0YVxuICAgICAgbGV0IHRhYlNpYmxpbmdEb2MgPSBzaWJsaW5nRG9jXG4gICAgICBsZXQgdGFiU2libGluZ0RvY1dpdGhMb2NhbGVzID0gc2libGluZ0RvY1dpdGhMb2NhbGVzXG5cbiAgICAgIGlmICh0YWJIYXNOYW1lKGZpZWxkKSkge1xuICAgICAgICB0YWJQYXRoID0gYCR7cGF0aH0ke2ZpZWxkLm5hbWV9LmBcbiAgICAgICAgaWYgKHR5cGVvZiBzaWJsaW5nRGF0YVtmaWVsZC5uYW1lXSAhPT0gJ29iamVjdCcpIHNpYmxpbmdEYXRhW2ZpZWxkLm5hbWVdID0ge31cbiAgICAgICAgaWYgKHR5cGVvZiBzaWJsaW5nRG9jW2ZpZWxkLm5hbWVdICE9PSAnb2JqZWN0Jykgc2libGluZ0RvY1tmaWVsZC5uYW1lXSA9IHt9XG4gICAgICAgIGlmICh0eXBlb2Ygc2libGluZ0RvY1dpdGhMb2NhbGVzW2ZpZWxkLm5hbWVdICE9PSAnb2JqZWN0JylcbiAgICAgICAgICBzaWJsaW5nRG9jV2l0aExvY2FsZXNbZmllbGQubmFtZV0gPSB7fVxuXG4gICAgICAgIHRhYlNpYmxpbmdEYXRhID0gc2libGluZ0RhdGFbZmllbGQubmFtZV0gYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbiAgICAgICAgdGFiU2libGluZ0RvYyA9IHNpYmxpbmdEb2NbZmllbGQubmFtZV0gYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbiAgICAgICAgdGFiU2libGluZ0RvY1dpdGhMb2NhbGVzID0gc2libGluZ0RvY1dpdGhMb2NhbGVzW2ZpZWxkLm5hbWVdIGFzIFJlY29yZDxzdHJpbmcsIHVua25vd24+XG4gICAgICB9XG5cbiAgICAgIGF3YWl0IHRyYXZlcnNlRmllbGRzKHtcbiAgICAgICAgaWQsXG4gICAgICAgIGNvbnRleHQsXG4gICAgICAgIGRhdGEsXG4gICAgICAgIGRvYyxcbiAgICAgICAgZG9jV2l0aExvY2FsZXMsXG4gICAgICAgIGVycm9ycyxcbiAgICAgICAgZmllbGRzOiBmaWVsZC5maWVsZHMsXG4gICAgICAgIG1lcmdlTG9jYWxlQWN0aW9ucyxcbiAgICAgICAgb3BlcmF0aW9uLFxuICAgICAgICBwYXRoOiB0YWJQYXRoLFxuICAgICAgICByZXEsXG4gICAgICAgIHNpYmxpbmdEYXRhOiB0YWJTaWJsaW5nRGF0YSxcbiAgICAgICAgc2libGluZ0RvYzogdGFiU2libGluZ0RvYyxcbiAgICAgICAgc2libGluZ0RvY1dpdGhMb2NhbGVzOiB0YWJTaWJsaW5nRG9jV2l0aExvY2FsZXMsXG4gICAgICAgIHNraXBWYWxpZGF0aW9uOiBza2lwVmFsaWRhdGlvbkZyb21IZXJlLFxuICAgICAgfSlcblxuICAgICAgYnJlYWtcbiAgICB9XG5cbiAgICBjYXNlICd0YWJzJzoge1xuICAgICAgYXdhaXQgdHJhdmVyc2VGaWVsZHMoe1xuICAgICAgICBpZCxcbiAgICAgICAgY29udGV4dCxcbiAgICAgICAgZGF0YSxcbiAgICAgICAgZG9jLFxuICAgICAgICBkb2NXaXRoTG9jYWxlcyxcbiAgICAgICAgZXJyb3JzLFxuICAgICAgICBmaWVsZHM6IGZpZWxkLnRhYnMubWFwKCh0YWIpID0+ICh7IC4uLnRhYiwgdHlwZTogJ3RhYicgfSkpLFxuICAgICAgICBtZXJnZUxvY2FsZUFjdGlvbnMsXG4gICAgICAgIG9wZXJhdGlvbixcbiAgICAgICAgcGF0aCxcbiAgICAgICAgcmVxLFxuICAgICAgICBzaWJsaW5nRGF0YSxcbiAgICAgICAgc2libGluZ0RvYyxcbiAgICAgICAgc2libGluZ0RvY1dpdGhMb2NhbGVzLFxuICAgICAgICBza2lwVmFsaWRhdGlvbjogc2tpcFZhbGlkYXRpb25Gcm9tSGVyZSxcbiAgICAgIH0pXG5cbiAgICAgIGJyZWFrXG4gICAgfVxuXG4gICAgZGVmYXVsdDoge1xuICAgICAgYnJlYWtcbiAgICB9XG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJwcm9taXNlIiwiaWQiLCJjb250ZXh0IiwiZGF0YSIsImRvYyIsImRvY1dpdGhMb2NhbGVzIiwiZXJyb3JzIiwiZmllbGQiLCJtZXJnZUxvY2FsZUFjdGlvbnMiLCJvcGVyYXRpb24iLCJwYXRoIiwicmVxIiwic2libGluZ0RhdGEiLCJzaWJsaW5nRG9jIiwic2libGluZ0RvY1dpdGhMb2NhbGVzIiwic2tpcFZhbGlkYXRpb24iLCJwYXNzZXNDb25kaXRpb24iLCJhZG1pbiIsImNvbmRpdGlvbiIsInVzZXIiLCJza2lwVmFsaWRhdGlvbkZyb21IZXJlIiwiZGVmYXVsdExvY2FsZSIsInBheWxvYWQiLCJjb25maWciLCJsb2NhbGl6YXRpb24iLCJvcGVyYXRpb25Mb2NhbGUiLCJsb2NhbGUiLCJmaWVsZEFmZmVjdHNEYXRhIiwibG9jYWxpemVkIiwiaW5jbHVkZXMiLCJ0eXBlIiwibmFtZSIsImhvb2tzIiwiYmVmb3JlQ2hhbmdlIiwicmVkdWNlIiwicHJpb3JIb29rIiwiY3VycmVudEhvb2siLCJob29rZWRWYWx1ZSIsIm9yaWdpbmFsRG9jIiwidmFsdWUiLCJ1bmRlZmluZWQiLCJQcm9taXNlIiwicmVzb2x2ZSIsInZhbGlkYXRlIiwidmFsdWVUb1ZhbGlkYXRlIiwianNvbkVycm9yIiwiSlNPTiIsInBhcnNlIiwiZSIsInZhbGlkYXRpb25SZXN1bHQiLCJtZXJnZSIsImFycmF5TWVyZ2UiLCJfIiwic291cmNlIiwidCIsInB1c2giLCJtZXNzYWdlIiwibG9jYWxlRGF0YSIsImxvY2FsZUNvZGVzIiwibG9jYWxpemVkVmFsdWVzIiwiZmllbGRWYWx1ZSIsIk9iamVjdCIsImtleXMiLCJsZW5ndGgiLCJBcnJheSIsImlzQXJyYXkiLCJjb29yZGluYXRlcyIsInBhcnNlRmxvYXQiLCJ0cmF2ZXJzZUZpZWxkcyIsImZpZWxkcyIsInJvd3MiLCJwcm9taXNlcyIsImZvckVhY2giLCJyb3ciLCJpIiwiZ2V0RXhpc3RpbmdSb3dEb2MiLCJhbGwiLCJyb3dTaWJsaW5nRG9jIiwicm93U2libGluZ0RvY1dpdGhMb2NhbGVzIiwiYmxvY2tUeXBlVG9NYXRjaCIsImJsb2NrVHlwZSIsImJsb2NrIiwiYmxvY2tzIiwiZmluZCIsInNsdWciLCJ0YWJQYXRoIiwidGFiU2libGluZ0RhdGEiLCJ0YWJTaWJsaW5nRG9jIiwidGFiU2libGluZ0RvY1dpdGhMb2NhbGVzIiwidGFiSGFzTmFtZSIsInRhYnMiLCJtYXAiLCJ0YWIiXSwibWFwcGluZ3MiOiJBQUFBLG9DQUFvQzs7OzsrQkFvQ3ZCQTs7O2VBQUFBOzs7a0VBbkNLO3VCQU0yQjttQ0FDWDtnQ0FDSDs7Ozs7O0FBMkJ4QixNQUFNQSxVQUFV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
@@ -1 +1 @@
1
- {"version":3,"file":"validations.d.ts","sourceRoot":"","sources":["../../src/fields/validations.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,EACV,UAAU,EACV,UAAU,EACV,aAAa,EACb,SAAS,EACT,SAAS,EACT,UAAU,EACV,SAAS,EACT,WAAW,EACX,UAAU,EACV,UAAU,EACV,iBAAiB,EAEjB,WAAW,EACX,SAAS,EACT,aAAa,EACb,WAAW,EACX,QAAQ,EACT,MAAM,gBAAgB,CAAA;AAOvB,eAAO,MAAM,MAAM,EAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,WAAW,CAqD1D,CAAA;AAED,eAAO,MAAM,IAAI,EAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,CAwBtD,CAAA;AAED,eAAO,MAAM,QAAQ,EAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,CAuB1D,CAAA;AAED,eAAO,MAAM,KAAK,EAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,CAMxD,CAAA;AAED,eAAO,MAAM,QAAQ,EAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,aAAa,CAsB9D,CAAA;AAED,eAAO,MAAM,IAAI,EAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,CAMtD,CAAA;AAED,eAAO,MAAM,IAAI,EAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,GAAG;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,CAa/E,CAAA;AAED,eAAO,MAAM,QAAQ,EAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,aAAa,CAS9D,CAAA;AAED,eAAO,MAAM,IAAI,EAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,CAetD,CAAA;AAuFD,eAAO,MAAM,MAAM,EAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,WAAW,CAiB1D,CAAA;AAED,eAAO,MAAM,YAAY,EAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,iBAAiB,CAmEtE,CAAA;AAED,eAAO,MAAM,KAAK,EAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,CAiBxD,CAAA;AAED,eAAO,MAAM,MAAM,EAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,WAAW,CAmC1D,CAAA;AAED,eAAO,MAAM,KAAK,EAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,CASxD,CAAA;AAED,eAAO,MAAM,MAAM,EAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,CAiBzD,CAAA;AAED,eAAO,MAAM,KAAK,EAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,CAqBxD,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAED,wBAiBC"}
1
+ {"version":3,"file":"validations.d.ts","sourceRoot":"","sources":["../../src/fields/validations.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,EACV,UAAU,EACV,UAAU,EACV,aAAa,EACb,SAAS,EACT,SAAS,EACT,UAAU,EACV,SAAS,EACT,WAAW,EACX,UAAU,EACV,UAAU,EACV,iBAAiB,EAEjB,WAAW,EACX,SAAS,EACT,aAAa,EACb,WAAW,EACX,QAAQ,EACT,MAAM,gBAAgB,CAAA;AAOvB,eAAO,MAAM,MAAM,EAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,WAAW,CAqD1D,CAAA;AAED,eAAO,MAAM,IAAI,EAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,CAwBtD,CAAA;AAED,eAAO,MAAM,QAAQ,EAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,CAuB1D,CAAA;AAED,eAAO,MAAM,KAAK,EAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,CAMxD,CAAA;AAED,eAAO,MAAM,QAAQ,EAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,aAAa,CAsB9D,CAAA;AAED,eAAO,MAAM,IAAI,EAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,CAMtD,CAAA;AAED,eAAO,MAAM,IAAI,EAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,GAAG;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,CAa/E,CAAA;AAED,eAAO,MAAM,QAAQ,EAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,aAAa,CAS9D,CAAA;AAED,eAAO,MAAM,IAAI,EAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,CAetD,CAAA;AAuFD,eAAO,MAAM,MAAM,EAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,WAAW,CAiB1D,CAAA;AAED,eAAO,MAAM,YAAY,EAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,iBAAiB,CAmEtE,CAAA;AAED,eAAO,MAAM,KAAK,EAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,CAmBxD,CAAA;AAED,eAAO,MAAM,MAAM,EAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,WAAW,CAmC1D,CAAA;AAED,eAAO,MAAM,KAAK,EAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,CASxD,CAAA;AAED,eAAO,MAAM,MAAM,EAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,CAmBzD,CAAA;AAED,eAAO,MAAM,KAAK,EAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,CAqBxD,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAED,wBAiBC"}
@@ -358,19 +358,20 @@ const relationship = async (value, options)=>{
358
358
  return validateFilterOptions(value, options);
359
359
  };
360
360
  const array = (value, { maxRows, minRows, required, t })=>{
361
- if (minRows && value < minRows) {
361
+ const arrayLength = Array.isArray(value) ? value.length : 0;
362
+ if (minRows && arrayLength < minRows) {
362
363
  return t('validation:requiresAtLeast', {
363
364
  count: minRows,
364
365
  label: t('rows')
365
366
  });
366
367
  }
367
- if (maxRows && value > maxRows) {
368
+ if (maxRows && arrayLength > maxRows) {
368
369
  return t('validation:requiresNoMoreThan', {
369
370
  count: maxRows,
370
371
  label: t('rows')
371
372
  });
372
373
  }
373
- if (!value && required) {
374
+ if (!arrayLength && required) {
374
375
  return t('validation:requiresAtLeast', {
375
376
  count: 1,
376
377
  label: t('row')
@@ -398,19 +399,20 @@ const radio = (value, { options, required, t })=>{
398
399
  return required ? t('validation:required') : true;
399
400
  };
400
401
  const blocks = (value, { maxRows, minRows, required, t })=>{
401
- if (minRows && value < minRows) {
402
+ const arrayLength = Array.isArray(value) ? value.length : 0;
403
+ if (minRows && arrayLength < minRows) {
402
404
  return t('validation:requiresAtLeast', {
403
405
  count: minRows,
404
406
  label: t('rows')
405
407
  });
406
408
  }
407
- if (maxRows && value > maxRows) {
409
+ if (maxRows && arrayLength > maxRows) {
408
410
  return t('validation:requiresNoMoreThan', {
409
411
  count: maxRows,
410
412
  label: t('rows')
411
413
  });
412
414
  }
413
- if (!value && required) {
415
+ if (!arrayLength && required) {
414
416
  return t('validation:requiresAtLeast', {
415
417
  count: 1,
416
418
  label: t('row')
@@ -451,4 +453,4 @@ const _default = {
451
453
  upload
452
454
  };
453
455
 
454
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9maWVsZHMvdmFsaWRhdGlvbnMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUge1xuICBBcnJheUZpZWxkLFxuICBCbG9ja0ZpZWxkLFxuICBDaGVja2JveEZpZWxkLFxuICBDb2RlRmllbGQsXG4gIERhdGVGaWVsZCxcbiAgRW1haWxGaWVsZCxcbiAgSlNPTkZpZWxkLFxuICBOdW1iZXJGaWVsZCxcbiAgUG9pbnRGaWVsZCxcbiAgUmFkaW9GaWVsZCxcbiAgUmVsYXRpb25zaGlwRmllbGQsXG4gIFJlbGF0aW9uc2hpcFZhbHVlLFxuICBTZWxlY3RGaWVsZCxcbiAgVGV4dEZpZWxkLFxuICBUZXh0YXJlYUZpZWxkLFxuICBVcGxvYWRGaWVsZCxcbiAgVmFsaWRhdGUsXG59IGZyb20gJy4vY29uZmlnL3R5cGVzJ1xuXG5pbXBvcnQgY2FuVXNlRE9NIGZyb20gJy4uL3V0aWxpdGllcy9jYW5Vc2VET00nXG5pbXBvcnQgeyBnZXRJRFR5cGUgfSBmcm9tICcuLi91dGlsaXRpZXMvZ2V0SURUeXBlJ1xuaW1wb3J0IHsgaXNWYWxpZElEIH0gZnJvbSAnLi4vdXRpbGl0aWVzL2lzVmFsaWRJRCdcbmltcG9ydCB7IGZpZWxkQWZmZWN0c0RhdGEgfSBmcm9tICcuL2NvbmZpZy90eXBlcydcblxuZXhwb3J0IGNvbnN0IG51bWJlcjogVmFsaWRhdGU8dW5rbm93biwgdW5rbm93biwgTnVtYmVyRmllbGQ+ID0gKFxuICB2YWx1ZTogbnVtYmVyIHwgbnVtYmVyW10sXG4gIHsgaGFzTWFueSwgbWF4LCBtYXhSb3dzLCBtaW4sIG1pblJvd3MsIHJlcXVpcmVkLCB0IH0sXG4pID0+IHtcbiAgY29uc3QgdG9WYWxpZGF0ZTogbnVtYmVyW10gPSBBcnJheS5pc0FycmF5KHZhbHVlKSA/IHZhbHVlIDogW3ZhbHVlXVxuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1yZXN0cmljdGVkLXN5bnRheFxuICBmb3IgKGNvbnN0IHZhbHVlVG9WYWxpZGF0ZSBvZiB0b1ZhbGlkYXRlKSB7XG4gICAgY29uc3QgZmxvYXRWYWx1ZSA9IHBhcnNlRmxvYXQodmFsdWVUb1ZhbGlkYXRlIGFzIHVua25vd24gYXMgc3RyaW5nKVxuICAgIGlmIChcbiAgICAgICh2YWx1ZSAmJiB0eXBlb2YgZmxvYXRWYWx1ZSAhPT0gJ251bWJlcicpIHx8XG4gICAgICAocmVxdWlyZWQgJiYgTnVtYmVyLmlzTmFOKGZsb2F0VmFsdWUpKSB8fFxuICAgICAgKHZhbHVlICYmIE51bWJlci5pc05hTihmbG9hdFZhbHVlKSlcbiAgICApIHtcbiAgICAgIHJldHVybiB0KCd2YWxpZGF0aW9uOmVudGVyTnVtYmVyJylcbiAgICB9XG5cbiAgICBpZiAodHlwZW9mIG1heCA9PT0gJ251bWJlcicgJiYgZmxvYXRWYWx1ZSA+IG1heCkge1xuICAgICAgcmV0dXJuIHQoJ3ZhbGlkYXRpb246Z3JlYXRlclRoYW5NYXgnLCB7IGxhYmVsOiB0KCd2YWx1ZScpLCBtYXgsIHZhbHVlIH0pXG4gICAgfVxuXG4gICAgaWYgKHR5cGVvZiBtaW4gPT09ICdudW1iZXInICYmIGZsb2F0VmFsdWUgPCBtaW4pIHtcbiAgICAgIHJldHVybiB0KCd2YWxpZGF0aW9uOmxlc3NUaGFuTWluJywgeyBsYWJlbDogdCgndmFsdWUnKSwgbWluLCB2YWx1ZSB9KVxuICAgIH1cblxuICAgIGlmIChyZXF1aXJlZCAmJiB0eXBlb2YgZmxvYXRWYWx1ZSAhPT0gJ251bWJlcicpIHtcbiAgICAgIHJldHVybiB0KCd2YWxpZGF0aW9uOnJlcXVpcmVkJylcbiAgICB9XG4gIH1cblxuICBpZiAocmVxdWlyZWQgJiYgdG9WYWxpZGF0ZS5sZW5ndGggPT09IDApIHtcbiAgICByZXR1cm4gdCgndmFsaWRhdGlvbjpyZXF1aXJlZCcpXG4gIH1cblxuICBpZiAoaGFzTWFueSA9PT0gdHJ1ZSkge1xuICAgIGlmIChtaW5Sb3dzICYmIHRvVmFsaWRhdGUubGVuZ3RoIDwgbWluUm93cykge1xuICAgICAgcmV0dXJuIHQoJ3ZhbGlkYXRpb246bGVzc1RoYW5NaW4nLCB7XG4gICAgICAgIGxhYmVsOiB0KCdyb3dzJyksXG4gICAgICAgIG1pbjogbWluUm93cyxcbiAgICAgICAgdmFsdWU6IHRvVmFsaWRhdGUubGVuZ3RoLFxuICAgICAgfSlcbiAgICB9XG5cbiAgICBpZiAobWF4Um93cyAmJiB0b1ZhbGlkYXRlLmxlbmd0aCA+IG1heFJvd3MpIHtcbiAgICAgIHJldHVybiB0KCd2YWxpZGF0aW9uOmdyZWF0ZXJUaGFuTWF4Jywge1xuICAgICAgICBsYWJlbDogdCgncm93cycpLFxuICAgICAgICBtYXg6IG1heFJvd3MsXG4gICAgICAgIHZhbHVlOiB0b1ZhbGlkYXRlLmxlbmd0aCxcbiAgICAgIH0pXG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHRydWVcbn1cblxuZXhwb3J0IGNvbnN0IHRleHQ6IFZhbGlkYXRlPHVua25vd24sIHVua25vd24sIFRleHRGaWVsZD4gPSAoXG4gIHZhbHVlOiBzdHJpbmcsXG4gIHsgbWF4TGVuZ3RoOiBmaWVsZE1heExlbmd0aCwgbWluTGVuZ3RoLCBwYXlsb2FkLCByZXF1aXJlZCwgdCB9LFxuKSA9PiB7XG4gIGxldCBtYXhMZW5ndGg6IG51bWJlclxuXG4gIGlmICh0eXBlb2YgcGF5bG9hZD8uY29uZmlnPy5kZWZhdWx0TWF4VGV4dExlbmd0aCA9PT0gJ251bWJlcicpXG4gICAgbWF4TGVuZ3RoID0gcGF5bG9hZC5jb25maWcuZGVmYXVsdE1heFRleHRMZW5ndGhcbiAgaWYgKHR5cGVvZiBmaWVsZE1heExlbmd0aCA9PT0gJ251bWJlcicpIG1heExlbmd0aCA9IGZpZWxkTWF4TGVuZ3RoXG4gIGlmICh2YWx1ZSAmJiBtYXhMZW5ndGggJiYgdmFsdWUubGVuZ3RoID4gbWF4TGVuZ3RoKSB7XG4gICAgcmV0dXJuIHQoJ3ZhbGlkYXRpb246c2hvcnRlclRoYW5NYXgnLCB7IG1heExlbmd0aCB9KVxuICB9XG5cbiAgaWYgKHZhbHVlICYmIG1pbkxlbmd0aCAmJiB2YWx1ZT8ubGVuZ3RoIDwgbWluTGVuZ3RoKSB7XG4gICAgcmV0dXJuIHQoJ3ZhbGlkYXRpb246bG9uZ2VyVGhhbk1pbicsIHsgbWluTGVuZ3RoIH0pXG4gIH1cblxuICBpZiAocmVxdWlyZWQpIHtcbiAgICBpZiAodHlwZW9mIHZhbHVlICE9PSAnc3RyaW5nJyB8fCB2YWx1ZT8ubGVuZ3RoID09PSAwKSB7XG4gICAgICByZXR1cm4gdCgndmFsaWRhdGlvbjpyZXF1aXJlZCcpXG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHRydWVcbn1cblxuZXhwb3J0IGNvbnN0IHBhc3N3b3JkOiBWYWxpZGF0ZTx1bmtub3duLCB1bmtub3duLCBUZXh0RmllbGQ+ID0gKFxuICB2YWx1ZTogc3RyaW5nLFxuICB7IG1heExlbmd0aDogZmllbGRNYXhMZW5ndGgsIG1pbkxlbmd0aCwgcGF5bG9hZCwgcmVxdWlyZWQsIHQgfSxcbikgPT4ge1xuICBsZXQgbWF4TGVuZ3RoOiBudW1iZXJcblxuICBpZiAodHlwZW9mIHBheWxvYWQ/LmNvbmZpZz8uZGVmYXVsdE1heFRleHRMZW5ndGggPT09ICdudW1iZXInKVxuICAgIG1heExlbmd0aCA9IHBheWxvYWQuY29uZmlnLmRlZmF1bHRNYXhUZXh0TGVuZ3RoXG4gIGlmICh0eXBlb2YgZmllbGRNYXhMZW5ndGggPT09ICdudW1iZXInKSBtYXhMZW5ndGggPSBmaWVsZE1heExlbmd0aFxuXG4gIGlmICh2YWx1ZSAmJiBtYXhMZW5ndGggJiYgdmFsdWUubGVuZ3RoID4gbWF4TGVuZ3RoKSB7XG4gICAgcmV0dXJuIHQoJ3ZhbGlkYXRpb246c2hvcnRlclRoYW5NYXgnLCB7IG1heExlbmd0aCB9KVxuICB9XG5cbiAgaWYgKHZhbHVlICYmIG1pbkxlbmd0aCAmJiB2YWx1ZS5sZW5ndGggPCBtaW5MZW5ndGgpIHtcbiAgICByZXR1cm4gdCgndmFsaWRhdGlvbjpsb25nZXJUaGFuTWluJywgeyBtaW5MZW5ndGggfSlcbiAgfVxuXG4gIGlmIChyZXF1aXJlZCAmJiAhdmFsdWUpIHtcbiAgICByZXR1cm4gdCgndmFsaWRhdGlvbjpyZXF1aXJlZCcpXG4gIH1cblxuICByZXR1cm4gdHJ1ZVxufVxuXG5leHBvcnQgY29uc3QgZW1haWw6IFZhbGlkYXRlPHVua25vd24sIHVua25vd24sIEVtYWlsRmllbGQ+ID0gKHZhbHVlOiBzdHJpbmcsIHsgcmVxdWlyZWQsIHQgfSkgPT4ge1xuICBpZiAoKHZhbHVlICYmICEvXFxTW15cXHNAXSpAXFxTK1xcLlxcUysvLnRlc3QodmFsdWUpKSB8fCAoIXZhbHVlICYmIHJlcXVpcmVkKSkge1xuICAgIHJldHVybiB0KCd2YWxpZGF0aW9uOmVtYWlsQWRkcmVzcycpXG4gIH1cblxuICByZXR1cm4gdHJ1ZVxufVxuXG5leHBvcnQgY29uc3QgdGV4dGFyZWE6IFZhbGlkYXRlPHVua25vd24sIHVua25vd24sIFRleHRhcmVhRmllbGQ+ID0gKFxuICB2YWx1ZTogc3RyaW5nLFxuICB7IG1heExlbmd0aDogZmllbGRNYXhMZW5ndGgsIG1pbkxlbmd0aCwgcGF5bG9hZCwgcmVxdWlyZWQsIHQgfSxcbikgPT4ge1xuICBsZXQgbWF4TGVuZ3RoOiBudW1iZXJcblxuICBpZiAodHlwZW9mIHBheWxvYWQ/LmNvbmZpZz8uZGVmYXVsdE1heFRleHRMZW5ndGggPT09ICdudW1iZXInKVxuICAgIG1heExlbmd0aCA9IHBheWxvYWQuY29uZmlnLmRlZmF1bHRNYXhUZXh0TGVuZ3RoXG4gIGlmICh0eXBlb2YgZmllbGRNYXhMZW5ndGggPT09ICdudW1iZXInKSBtYXhMZW5ndGggPSBmaWVsZE1heExlbmd0aFxuICBpZiAodmFsdWUgJiYgbWF4TGVuZ3RoICYmIHZhbHVlLmxlbmd0aCA+IG1heExlbmd0aCkge1xuICAgIHJldHVybiB0KCd2YWxpZGF0aW9uOnNob3J0ZXJUaGFuTWF4JywgeyBtYXhMZW5ndGggfSlcbiAgfVxuXG4gIGlmICh2YWx1ZSAmJiBtaW5MZW5ndGggJiYgdmFsdWUubGVuZ3RoIDwgbWluTGVuZ3RoKSB7XG4gICAgcmV0dXJuIHQoJ3ZhbGlkYXRpb246bG9uZ2VyVGhhbk1pbicsIHsgbWluTGVuZ3RoIH0pXG4gIH1cblxuICBpZiAocmVxdWlyZWQgJiYgIXZhbHVlKSB7XG4gICAgcmV0dXJuIHQoJ3ZhbGlkYXRpb246cmVxdWlyZWQnKVxuICB9XG5cbiAgcmV0dXJuIHRydWVcbn1cblxuZXhwb3J0IGNvbnN0IGNvZGU6IFZhbGlkYXRlPHVua25vd24sIHVua25vd24sIENvZGVGaWVsZD4gPSAodmFsdWU6IHN0cmluZywgeyByZXF1aXJlZCwgdCB9KSA9PiB7XG4gIGlmIChyZXF1aXJlZCAmJiB2YWx1ZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHQoJ3ZhbGlkYXRpb246cmVxdWlyZWQnKVxuICB9XG5cbiAgcmV0dXJuIHRydWVcbn1cblxuZXhwb3J0IGNvbnN0IGpzb246IFZhbGlkYXRlPHVua25vd24sIHVua25vd24sIEpTT05GaWVsZCAmIHsganNvbkVycm9yPzogc3RyaW5nIH0+ID0gKFxuICB2YWx1ZTogc3RyaW5nLFxuICB7IGpzb25FcnJvciwgcmVxdWlyZWQsIHQgfSxcbikgPT4ge1xuICBpZiAocmVxdWlyZWQgJiYgIXZhbHVlKSB7XG4gICAgcmV0dXJuIHQoJ3ZhbGlkYXRpb246cmVxdWlyZWQnKVxuICB9XG5cbiAgaWYgKGpzb25FcnJvciAhPT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHQoJ3ZhbGlkYXRpb246aW52YWxpZElucHV0JylcbiAgfVxuXG4gIHJldHVybiB0cnVlXG59XG5cbmV4cG9ydCBjb25zdCBjaGVja2JveDogVmFsaWRhdGU8dW5rbm93biwgdW5rbm93biwgQ2hlY2tib3hGaWVsZD4gPSAoXG4gIHZhbHVlOiBib29sZWFuLFxuICB7IHJlcXVpcmVkLCB0IH0sXG4pID0+IHtcbiAgaWYgKCh2YWx1ZSAmJiB0eXBlb2YgdmFsdWUgIT09ICdib29sZWFuJykgfHwgKHJlcXVpcmVkICYmIHR5cGVvZiB2YWx1ZSAhPT0gJ2Jvb2xlYW4nKSkge1xuICAgIHJldHVybiB0KCd2YWxpZGF0aW9uOnRydWVPckZhbHNlJylcbiAgfVxuXG4gIHJldHVybiB0cnVlXG59XG5cbmV4cG9ydCBjb25zdCBkYXRlOiBWYWxpZGF0ZTx1bmtub3duLCB1bmtub3duLCBEYXRlRmllbGQ+ID0gKHZhbHVlLCB7IHJlcXVpcmVkLCB0IH0pID0+IHtcbiAgaWYgKHZhbHVlICYmICFpc05hTihEYXRlLnBhcnNlKHZhbHVlLnRvU3RyaW5nKCkpKSkge1xuICAgIC8qIGVzbGludC1kaXNhYmxlLWxpbmUgKi9cbiAgICByZXR1cm4gdHJ1ZVxuICB9XG5cbiAgaWYgKHZhbHVlKSB7XG4gICAgcmV0dXJuIHQoJ3ZhbGlkYXRpb246bm90VmFsaWREYXRlJywgeyB2YWx1ZSB9KVxuICB9XG5cbiAgaWYgKHJlcXVpcmVkKSB7XG4gICAgcmV0dXJuIHQoJ3ZhbGlkYXRpb246cmVxdWlyZWQnKVxuICB9XG5cbiAgcmV0dXJuIHRydWVcbn1cblxuY29uc3QgdmFsaWRhdGVGaWx0ZXJPcHRpb25zOiBWYWxpZGF0ZSA9IGFzeW5jIChcbiAgdmFsdWUsXG4gIHsgaWQsIGRhdGEsIGZpbHRlck9wdGlvbnMsIHBheWxvYWQsIHJlbGF0aW9uVG8sIHNpYmxpbmdEYXRhLCB0LCB1c2VyIH0sXG4pID0+IHtcbiAgaWYgKCFjYW5Vc2VET00gJiYgdHlwZW9mIGZpbHRlck9wdGlvbnMgIT09ICd1bmRlZmluZWQnICYmIHZhbHVlKSB7XG4gICAgY29uc3Qgb3B0aW9uczoge1xuICAgICAgW2NvbGxlY3Rpb246IHN0cmluZ106IChudW1iZXIgfCBzdHJpbmcpW11cbiAgICB9ID0ge31cblxuICAgIGNvbnN0IGNvbGxlY3Rpb25zID0gdHlwZW9mIHJlbGF0aW9uVG8gPT09ICdzdHJpbmcnID8gW3JlbGF0aW9uVG9dIDogcmVsYXRpb25Ub1xuICAgIGNvbnN0IHZhbHVlcyA9IEFycmF5LmlzQXJyYXkodmFsdWUpID8gdmFsdWUgOiBbdmFsdWVdXG5cbiAgICBhd2FpdCBQcm9taXNlLmFsbChcbiAgICAgIGNvbGxlY3Rpb25zLm1hcChhc3luYyAoY29sbGVjdGlvbikgPT4ge1xuICAgICAgICBjb25zdCBvcHRpb25GaWx0ZXIgPVxuICAgICAgICAgIHR5cGVvZiBmaWx0ZXJPcHRpb25zID09PSAnZnVuY3Rpb24nXG4gICAgICAgICAgICA/IGF3YWl0IGZpbHRlck9wdGlvbnMoe1xuICAgICAgICAgICAgICAgIGlkLFxuICAgICAgICAgICAgICAgIGRhdGEsXG4gICAgICAgICAgICAgICAgcmVsYXRpb25UbzogY29sbGVjdGlvbixcbiAgICAgICAgICAgICAgICBzaWJsaW5nRGF0YSxcbiAgICAgICAgICAgICAgICB1c2VyLFxuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgOiBmaWx0ZXJPcHRpb25zXG5cbiAgICAgICAgY29uc3QgdmFsdWVJRHM6IChudW1iZXIgfCBzdHJpbmcpW10gPSBbXVxuXG4gICAgICAgIHZhbHVlcy5mb3JFYWNoKCh2YWwpID0+IHtcbiAgICAgICAgICBpZiAodHlwZW9mIHZhbCA9PT0gJ29iamVjdCcgJiYgdmFsPy52YWx1ZSkge1xuICAgICAgICAgICAgdmFsdWVJRHMucHVzaCh2YWwudmFsdWUpXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKHR5cGVvZiB2YWwgPT09ICdzdHJpbmcnIHx8IHR5cGVvZiB2YWwgPT09ICdudW1iZXInKSB7XG4gICAgICAgICAgICB2YWx1ZUlEcy5wdXNoKHZhbClcbiAgICAgICAgICB9XG4gICAgICAgIH0pXG5cbiAgICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgcGF5bG9hZC5maW5kKHtcbiAgICAgICAgICBjb2xsZWN0aW9uLFxuICAgICAgICAgIGRlcHRoOiAwLFxuICAgICAgICAgIGxpbWl0OiAwLFxuICAgICAgICAgIHBhZ2luYXRpb246IGZhbHNlLFxuICAgICAgICAgIHdoZXJlOiB7XG4gICAgICAgICAgICBhbmQ6IFt7IGlkOiB7IGluOiB2YWx1ZUlEcyB9IH0sIG9wdGlvbkZpbHRlcl0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSlcblxuICAgICAgICBvcHRpb25zW2NvbGxlY3Rpb25dID0gcmVzdWx0LmRvY3MubWFwKChkb2MpID0+IGRvYy5pZClcbiAgICAgIH0pLFxuICAgIClcblxuICAgIGNvbnN0IGludmFsaWRSZWxhdGlvbnNoaXBzID0gdmFsdWVzLmZpbHRlcigodmFsKSA9PiB7XG4gICAgICBsZXQgY29sbGVjdGlvbjogc3RyaW5nXG4gICAgICBsZXQgcmVxdWVzdGVkSUQ6IG51bWJlciB8IHN0cmluZ1xuXG4gICAgICBpZiAodHlwZW9mIHJlbGF0aW9uVG8gPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIGNvbGxlY3Rpb24gPSByZWxhdGlvblRvXG5cbiAgICAgICAgaWYgKHR5cGVvZiB2YWwgPT09ICdzdHJpbmcnIHx8IHR5cGVvZiB2YWwgPT09ICdudW1iZXInKSB7XG4gICAgICAgICAgcmVxdWVzdGVkSUQgPSB2YWxcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpZiAoQXJyYXkuaXNBcnJheShyZWxhdGlvblRvKSAmJiB0eXBlb2YgdmFsID09PSAnb2JqZWN0JyAmJiB2YWw/LnJlbGF0aW9uVG8pIHtcbiAgICAgICAgY29sbGVjdGlvbiA9IHZhbC5yZWxhdGlvblRvXG4gICAgICAgIHJlcXVlc3RlZElEID0gdmFsLnZhbHVlXG4gICAgICB9XG5cbiAgICAgIHJldHVybiBvcHRpb25zW2NvbGxlY3Rpb25dLmluZGV4T2YocmVxdWVzdGVkSUQpID09PSAtMVxuICAgIH0pXG5cbiAgICBpZiAoaW52YWxpZFJlbGF0aW9uc2hpcHMubGVuZ3RoID4gMCkge1xuICAgICAgcmV0dXJuIGludmFsaWRSZWxhdGlvbnNoaXBzLnJlZHVjZSgoZXJyLCBpbnZhbGlkLCBpKSA9PiB7XG4gICAgICAgIHJldHVybiBgJHtlcnJ9ICR7SlNPTi5zdHJpbmdpZnkoaW52YWxpZCl9JHtcbiAgICAgICAgICBpbnZhbGlkUmVsYXRpb25zaGlwcy5sZW5ndGggPT09IGkgKyAxID8gJywnIDogJydcbiAgICAgICAgfSBgXG4gICAgICB9LCB0KCd2YWxpZGF0aW9uOmludmFsaWRTZWxlY3Rpb25zJykpIGFzIHN0cmluZ1xuICAgIH1cblxuICAgIHJldHVybiB0cnVlXG4gIH1cblxuICByZXR1cm4gdHJ1ZVxufVxuXG5leHBvcnQgY29uc3QgdXBsb2FkOiBWYWxpZGF0ZTx1bmtub3duLCB1bmtub3duLCBVcGxvYWRGaWVsZD4gPSAodmFsdWU6IHN0cmluZywgb3B0aW9ucykgPT4ge1xuICBpZiAoIXZhbHVlICYmIG9wdGlvbnMucmVxdWlyZWQpIHtcbiAgICByZXR1cm4gb3B0aW9ucy50KCd2YWxpZGF0aW9uOnJlcXVpcmVkJylcbiAgfVxuXG4gIGlmICghY2FuVXNlRE9NICYmIHR5cGVvZiB2YWx1ZSAhPT0gJ3VuZGVmaW5lZCcgJiYgdmFsdWUgIT09IG51bGwpIHtcbiAgICBjb25zdCBpZEZpZWxkID0gb3B0aW9ucy5wYXlsb2FkLmNvbGxlY3Rpb25zW29wdGlvbnMucmVsYXRpb25Ub10uY29uZmlnLmZpZWxkcy5maW5kKFxuICAgICAgKGZpZWxkKSA9PiBmaWVsZEFmZmVjdHNEYXRhKGZpZWxkKSAmJiBmaWVsZC5uYW1lID09PSAnaWQnLFxuICAgIClcbiAgICBjb25zdCB0eXBlID0gZ2V0SURUeXBlKGlkRmllbGQpXG5cbiAgICBpZiAoIWlzVmFsaWRJRCh2YWx1ZSwgdHlwZSkpIHtcbiAgICAgIHJldHVybiBvcHRpb25zLnQoJ3ZhbGlkYXRpb246dmFsaWRVcGxvYWRJRCcpXG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHZhbGlkYXRlRmlsdGVyT3B0aW9ucyh2YWx1ZSwgb3B0aW9ucylcbn1cblxuZXhwb3J0IGNvbnN0IHJlbGF0aW9uc2hpcDogVmFsaWRhdGU8dW5rbm93biwgdW5rbm93biwgUmVsYXRpb25zaGlwRmllbGQ+ID0gYXN5bmMgKFxuICB2YWx1ZTogUmVsYXRpb25zaGlwVmFsdWUsXG4gIG9wdGlvbnMsXG4pID0+IHtcbiAgY29uc3QgeyBtYXhSb3dzLCBtaW5Sb3dzLCBwYXlsb2FkLCByZWxhdGlvblRvLCByZXF1aXJlZCwgdCB9ID0gb3B0aW9uc1xuXG4gIGlmICgoIXZhbHVlIHx8IChBcnJheS5pc0FycmF5KHZhbHVlKSAmJiB2YWx1ZS5sZW5ndGggPT09IDApKSAmJiByZXF1aXJlZCkge1xuICAgIHJldHVybiBvcHRpb25zLnQoJ3ZhbGlkYXRpb246cmVxdWlyZWQnKVxuICB9XG5cbiAgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKSB7XG4gICAgaWYgKG1pblJvd3MgJiYgdmFsdWUubGVuZ3RoIDwgbWluUm93cykge1xuICAgICAgcmV0dXJuIHQoJ3ZhbGlkYXRpb246bGVzc1RoYW5NaW4nLCB7IGxhYmVsOiB0KCdyb3dzJyksIG1pbjogbWluUm93cywgdmFsdWU6IHZhbHVlLmxlbmd0aCB9KVxuICAgIH1cblxuICAgIGlmIChtYXhSb3dzICYmIHZhbHVlLmxlbmd0aCA+IG1heFJvd3MpIHtcbiAgICAgIHJldHVybiB0KCd2YWxpZGF0aW9uOmdyZWF0ZXJUaGFuTWF4JywgeyBsYWJlbDogdCgncm93cycpLCBtYXg6IG1heFJvd3MsIHZhbHVlOiB2YWx1ZS5sZW5ndGggfSlcbiAgICB9XG4gIH1cblxuICBpZiAoIWNhblVzZURPTSAmJiB0eXBlb2YgdmFsdWUgIT09ICd1bmRlZmluZWQnICYmIHZhbHVlICE9PSBudWxsKSB7XG4gICAgY29uc3QgdmFsdWVzID0gQXJyYXkuaXNBcnJheSh2YWx1ZSkgPyB2YWx1ZSA6IFt2YWx1ZV1cblxuICAgIGNvbnN0IGludmFsaWRSZWxhdGlvbnNoaXBzID0gdmFsdWVzLmZpbHRlcigodmFsKSA9PiB7XG4gICAgICBsZXQgY29sbGVjdGlvbjogc3RyaW5nXG4gICAgICBsZXQgcmVxdWVzdGVkSURcblxuICAgICAgaWYgKHR5cGVvZiByZWxhdGlvblRvID09PSAnc3RyaW5nJykge1xuICAgICAgICBjb2xsZWN0aW9uID0gcmVsYXRpb25Ub1xuXG4gICAgICAgIC8vIGN1c3RvbSBpZFxuICAgICAgICBpZiAodmFsKSB7XG4gICAgICAgICAgcmVxdWVzdGVkSUQgPSB2YWxcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpZiAoQXJyYXkuaXNBcnJheShyZWxhdGlvblRvKSAmJiB0eXBlb2YgdmFsID09PSAnb2JqZWN0JyAmJiB2YWw/LnJlbGF0aW9uVG8pIHtcbiAgICAgICAgY29sbGVjdGlvbiA9IHZhbC5yZWxhdGlvblRvXG4gICAgICAgIHJlcXVlc3RlZElEID0gdmFsLnZhbHVlXG4gICAgICB9XG5cbiAgICAgIGlmIChyZXF1ZXN0ZWRJRCA9PT0gbnVsbCkgcmV0dXJuIGZhbHNlXG5cbiAgICAgIGNvbnN0IGlkRmllbGQgPSBwYXlsb2FkLmNvbGxlY3Rpb25zW2NvbGxlY3Rpb25dPy5jb25maWc/LmZpZWxkcz8uZmluZChcbiAgICAgICAgKGZpZWxkKSA9PiBmaWVsZEFmZmVjdHNEYXRhKGZpZWxkKSAmJiBmaWVsZC5uYW1lID09PSAnaWQnLFxuICAgICAgKVxuICAgICAgbGV0IHR5cGVcblxuICAgICAgaWYgKGlkRmllbGQpIHtcbiAgICAgICAgdHlwZSA9IGlkRmllbGQudHlwZSA9PT0gJ251bWJlcicgPyAnbnVtYmVyJyA6ICd0ZXh0J1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdHlwZSA9ICdPYmplY3RJRCdcbiAgICAgIH1cblxuICAgICAgcmV0dXJuICFpc1ZhbGlkSUQocmVxdWVzdGVkSUQsIHR5cGUpXG4gICAgfSlcblxuICAgIGlmIChpbnZhbGlkUmVsYXRpb25zaGlwcy5sZW5ndGggPiAwKSB7XG4gICAgICByZXR1cm4gYFRoaXMgZmllbGQgaGFzIHRoZSBmb2xsb3dpbmcgaW52YWxpZCBzZWxlY3Rpb25zOiAke2ludmFsaWRSZWxhdGlvbnNoaXBzXG4gICAgICAgIC5tYXAoKGVyciwgaW52YWxpZCkgPT4ge1xuICAgICAgICAgIHJldHVybiBgJHtlcnJ9ICR7SlNPTi5zdHJpbmdpZnkoaW52YWxpZCl9YFxuICAgICAgICB9KVxuICAgICAgICAuam9pbignLCAnKX1gXG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHZhbGlkYXRlRmlsdGVyT3B0aW9ucyh2YWx1ZSwgb3B0aW9ucylcbn1cblxuZXhwb3J0IGNvbnN0IGFycmF5OiBWYWxpZGF0ZTx1bmtub3duLCB1bmtub3duLCBBcnJheUZpZWxkPiA9IChcbiAgdmFsdWUsXG4gIHsgbWF4Um93cywgbWluUm93cywgcmVxdWlyZWQsIHQgfSxcbikgPT4ge1xuICBpZiAobWluUm93cyAmJiB2YWx1ZSA8IG1pblJvd3MpIHtcbiAgICByZXR1cm4gdCgndmFsaWRhdGlvbjpyZXF1aXJlc0F0TGVhc3QnLCB7IGNvdW50OiBtaW5Sb3dzLCBsYWJlbDogdCgncm93cycpIH0pXG4gIH1cblxuICBpZiAobWF4Um93cyAmJiB2YWx1ZSA+IG1heFJvd3MpIHtcbiAgICByZXR1cm4gdCgndmFsaWRhdGlvbjpyZXF1aXJlc05vTW9yZVRoYW4nLCB7IGNvdW50OiBtYXhSb3dzLCBsYWJlbDogdCgncm93cycpIH0pXG4gIH1cblxuICBpZiAoIXZhbHVlICYmIHJlcXVpcmVkKSB7XG4gICAgcmV0dXJuIHQoJ3ZhbGlkYXRpb246cmVxdWlyZXNBdExlYXN0JywgeyBjb3VudDogMSwgbGFiZWw6IHQoJ3JvdycpIH0pXG4gIH1cblxuICByZXR1cm4gdHJ1ZVxufVxuXG5leHBvcnQgY29uc3Qgc2VsZWN0OiBWYWxpZGF0ZTx1bmtub3duLCB1bmtub3duLCBTZWxlY3RGaWVsZD4gPSAoXG4gIHZhbHVlLFxuICB7IGhhc01hbnksIG9wdGlvbnMsIHJlcXVpcmVkLCB0IH0sXG4pID0+IHtcbiAgaWYgKFxuICAgIEFycmF5LmlzQXJyYXkodmFsdWUpICYmXG4gICAgdmFsdWUuc29tZShcbiAgICAgIChpbnB1dCkgPT5cbiAgICAgICAgIW9wdGlvbnMuc29tZShcbiAgICAgICAgICAob3B0aW9uKSA9PiBvcHRpb24gPT09IGlucHV0IHx8ICh0eXBlb2Ygb3B0aW9uICE9PSAnc3RyaW5nJyAmJiBvcHRpb24/LnZhbHVlID09PSBpbnB1dCksXG4gICAgICAgICksXG4gICAgKVxuICApIHtcbiAgICByZXR1cm4gdCgndmFsaWRhdGlvbjppbnZhbGlkU2VsZWN0aW9uJylcbiAgfVxuXG4gIGlmIChcbiAgICB0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnICYmXG4gICAgIW9wdGlvbnMuc29tZShcbiAgICAgIChvcHRpb24pID0+IG9wdGlvbiA9PT0gdmFsdWUgfHwgKHR5cGVvZiBvcHRpb24gIT09ICdzdHJpbmcnICYmIG9wdGlvbi52YWx1ZSA9PT0gdmFsdWUpLFxuICAgIClcbiAgKSB7XG4gICAgcmV0dXJuIHQoJ3ZhbGlkYXRpb246aW52YWxpZFNlbGVjdGlvbicpXG4gIH1cblxuICBpZiAoXG4gICAgcmVxdWlyZWQgJiZcbiAgICAodHlwZW9mIHZhbHVlID09PSAndW5kZWZpbmVkJyB8fFxuICAgICAgdmFsdWUgPT09IG51bGwgfHxcbiAgICAgIChoYXNNYW55ICYmIEFycmF5LmlzQXJyYXkodmFsdWUpICYmICh2YWx1ZSBhcyBbXSk/Lmxlbmd0aCA9PT0gMCkpXG4gICkge1xuICAgIHJldHVybiB0KCd2YWxpZGF0aW9uOnJlcXVpcmVkJylcbiAgfVxuXG4gIHJldHVybiB0cnVlXG59XG5cbmV4cG9ydCBjb25zdCByYWRpbzogVmFsaWRhdGU8dW5rbm93biwgdW5rbm93biwgUmFkaW9GaWVsZD4gPSAodmFsdWUsIHsgb3B0aW9ucywgcmVxdWlyZWQsIHQgfSkgPT4ge1xuICBpZiAodmFsdWUpIHtcbiAgICBjb25zdCB2YWx1ZU1hdGNoZXNPcHRpb24gPSBvcHRpb25zLnNvbWUoXG4gICAgICAob3B0aW9uKSA9PiBvcHRpb24gPT09IHZhbHVlIHx8ICh0eXBlb2Ygb3B0aW9uICE9PSAnc3RyaW5nJyAmJiBvcHRpb24udmFsdWUgPT09IHZhbHVlKSxcbiAgICApXG4gICAgcmV0dXJuIHZhbHVlTWF0Y2hlc09wdGlvbiB8fCB0KCd2YWxpZGF0aW9uOmludmFsaWRTZWxlY3Rpb24nKVxuICB9XG5cbiAgcmV0dXJuIHJlcXVpcmVkID8gdCgndmFsaWRhdGlvbjpyZXF1aXJlZCcpIDogdHJ1ZVxufVxuXG5leHBvcnQgY29uc3QgYmxvY2tzOiBWYWxpZGF0ZTx1bmtub3duLCB1bmtub3duLCBCbG9ja0ZpZWxkPiA9IChcbiAgdmFsdWUsXG4gIHsgbWF4Um93cywgbWluUm93cywgcmVxdWlyZWQsIHQgfSxcbikgPT4ge1xuICBpZiAobWluUm93cyAmJiB2YWx1ZSA8IG1pblJvd3MpIHtcbiAgICByZXR1cm4gdCgndmFsaWRhdGlvbjpyZXF1aXJlc0F0TGVhc3QnLCB7IGNvdW50OiBtaW5Sb3dzLCBsYWJlbDogdCgncm93cycpIH0pXG4gIH1cblxuICBpZiAobWF4Um93cyAmJiB2YWx1ZSA+IG1heFJvd3MpIHtcbiAgICByZXR1cm4gdCgndmFsaWRhdGlvbjpyZXF1aXJlc05vTW9yZVRoYW4nLCB7IGNvdW50OiBtYXhSb3dzLCBsYWJlbDogdCgncm93cycpIH0pXG4gIH1cblxuICBpZiAoIXZhbHVlICYmIHJlcXVpcmVkKSB7XG4gICAgcmV0dXJuIHQoJ3ZhbGlkYXRpb246cmVxdWlyZXNBdExlYXN0JywgeyBjb3VudDogMSwgbGFiZWw6IHQoJ3JvdycpIH0pXG4gIH1cblxuICByZXR1cm4gdHJ1ZVxufVxuXG5leHBvcnQgY29uc3QgcG9pbnQ6IFZhbGlkYXRlPHVua25vd24sIHVua25vd24sIFBvaW50RmllbGQ+ID0gKFxuICB2YWx1ZTogW251bWJlciB8IHN0cmluZywgbnVtYmVyIHwgc3RyaW5nXSA9IFsnJywgJyddLFxuICB7IHJlcXVpcmVkLCB0IH0sXG4pID0+IHtcbiAgY29uc3QgbG5nID0gcGFyc2VGbG9hdChTdHJpbmcodmFsdWVbMF0pKVxuICBjb25zdCBsYXQgPSBwYXJzZUZsb2F0KFN0cmluZyh2YWx1ZVsxXSkpXG4gIGlmIChcbiAgICByZXF1aXJlZCAmJlxuICAgICgodmFsdWVbMF0gJiYgdmFsdWVbMV0gJiYgdHlwZW9mIGxuZyAhPT0gJ251bWJlcicgJiYgdHlwZW9mIGxhdCAhPT0gJ251bWJlcicpIHx8XG4gICAgICBOdW1iZXIuaXNOYU4obG5nKSB8fFxuICAgICAgTnVtYmVyLmlzTmFOKGxhdCkgfHxcbiAgICAgIChBcnJheS5pc0FycmF5KHZhbHVlKSAmJiB2YWx1ZS5sZW5ndGggIT09IDIpKVxuICApIHtcbiAgICByZXR1cm4gdCgndmFsaWRhdGlvbjpyZXF1aXJlc1R3b051bWJlcnMnKVxuICB9XG5cbiAgaWYgKCh2YWx1ZVsxXSAmJiBOdW1iZXIuaXNOYU4obG5nKSkgfHwgKHZhbHVlWzBdICYmIE51bWJlci5pc05hTihsYXQpKSkge1xuICAgIHJldHVybiB0KCd2YWxpZGF0aW9uOmludmFsaWRJbnB1dCcpXG4gIH1cblxuICByZXR1cm4gdHJ1ZVxufVxuXG5leHBvcnQgZGVmYXVsdCB7XG4gIGFycmF5LFxuICBibG9ja3MsXG4gIGNoZWNrYm94LFxuICBjb2RlLFxuICBkYXRlLFxuICBlbWFpbCxcbiAganNvbixcbiAgbnVtYmVyLFxuICBwYXNzd29yZCxcbiAgcG9pbnQsXG4gIHJhZGlvLFxuICByZWxhdGlvbnNoaXAsXG4gIHNlbGVjdCxcbiAgdGV4dCxcbiAgdGV4dGFyZWEsXG4gIHVwbG9hZCxcbn1cbiJdLCJuYW1lcyI6WyJudW1iZXIiLCJ0ZXh0IiwicGFzc3dvcmQiLCJlbWFpbCIsInRleHRhcmVhIiwiY29kZSIsImpzb24iLCJjaGVja2JveCIsImRhdGUiLCJ1cGxvYWQiLCJyZWxhdGlvbnNoaXAiLCJhcnJheSIsInNlbGVjdCIsInJhZGlvIiwiYmxvY2tzIiwicG9pbnQiLCJ2YWx1ZSIsImhhc01hbnkiLCJtYXgiLCJtYXhSb3dzIiwibWluIiwibWluUm93cyIsInJlcXVpcmVkIiwidCIsInRvVmFsaWRhdGUiLCJBcnJheSIsImlzQXJyYXkiLCJ2YWx1ZVRvVmFsaWRhdGUiLCJmbG9hdFZhbHVlIiwicGFyc2VGbG9hdCIsIk51bWJlciIsImlzTmFOIiwibGFiZWwiLCJsZW5ndGgiLCJtYXhMZW5ndGgiLCJmaWVsZE1heExlbmd0aCIsIm1pbkxlbmd0aCIsInBheWxvYWQiLCJjb25maWciLCJkZWZhdWx0TWF4VGV4dExlbmd0aCIsInRlc3QiLCJ1bmRlZmluZWQiLCJqc29uRXJyb3IiLCJEYXRlIiwicGFyc2UiLCJ0b1N0cmluZyIsInZhbGlkYXRlRmlsdGVyT3B0aW9ucyIsImlkIiwiZGF0YSIsImZpbHRlck9wdGlvbnMiLCJyZWxhdGlvblRvIiwic2libGluZ0RhdGEiLCJ1c2VyIiwiY2FuVXNlRE9NIiwib3B0aW9ucyIsImNvbGxlY3Rpb25zIiwidmFsdWVzIiwiUHJvbWlzZSIsImFsbCIsIm1hcCIsImNvbGxlY3Rpb24iLCJvcHRpb25GaWx0ZXIiLCJ2YWx1ZUlEcyIsImZvckVhY2giLCJ2YWwiLCJwdXNoIiwicmVzdWx0IiwiZmluZCIsImRlcHRoIiwibGltaXQiLCJwYWdpbmF0aW9uIiwid2hlcmUiLCJhbmQiLCJpbiIsImRvY3MiLCJkb2MiLCJpbnZhbGlkUmVsYXRpb25zaGlwcyIsImZpbHRlciIsInJlcXVlc3RlZElEIiwiaW5kZXhPZiIsInJlZHVjZSIsImVyciIsImludmFsaWQiLCJpIiwiSlNPTiIsInN0cmluZ2lmeSIsImlkRmllbGQiLCJmaWVsZHMiLCJmaWVsZCIsImZpZWxkQWZmZWN0c0RhdGEiLCJuYW1lIiwidHlwZSIsImdldElEVHlwZSIsImlzVmFsaWRJRCIsImpvaW4iLCJjb3VudCIsInNvbWUiLCJpbnB1dCIsIm9wdGlvbiIsInZhbHVlTWF0Y2hlc09wdGlvbiIsImxuZyIsIlN0cmluZyIsImxhdCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7SUF5QmFBLE1BQU07ZUFBTkE7O0lBdURBQyxJQUFJO2VBQUpBOztJQTBCQUMsUUFBUTtlQUFSQTs7SUF5QkFDLEtBQUs7ZUFBTEE7O0lBUUFDLFFBQVE7ZUFBUkE7O0lBd0JBQyxJQUFJO2VBQUpBOztJQVFBQyxJQUFJO2VBQUpBOztJQWVBQyxRQUFRO2VBQVJBOztJQVdBQyxJQUFJO2VBQUpBOztJQXNHQUMsTUFBTTtlQUFOQTs7SUFtQkFDLFlBQVk7ZUFBWkE7O0lBcUVBQyxLQUFLO2VBQUxBOztJQW1CQUMsTUFBTTtlQUFOQTs7SUFxQ0FDLEtBQUs7ZUFBTEE7O0lBV0FDLE1BQU07ZUFBTkE7O0lBbUJBQyxLQUFLO2VBQUxBOztJQXVCYixPQWlCQztlQWpCRDs7O2tFQTVkc0I7MkJBQ0k7MkJBQ0E7dUJBQ087Ozs7OztBQUUxQixNQUFNZixTQUFr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
456
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9maWVsZHMvdmFsaWRhdGlvbnMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUge1xuICBBcnJheUZpZWxkLFxuICBCbG9ja0ZpZWxkLFxuICBDaGVja2JveEZpZWxkLFxuICBDb2RlRmllbGQsXG4gIERhdGVGaWVsZCxcbiAgRW1haWxGaWVsZCxcbiAgSlNPTkZpZWxkLFxuICBOdW1iZXJGaWVsZCxcbiAgUG9pbnRGaWVsZCxcbiAgUmFkaW9GaWVsZCxcbiAgUmVsYXRpb25zaGlwRmllbGQsXG4gIFJlbGF0aW9uc2hpcFZhbHVlLFxuICBTZWxlY3RGaWVsZCxcbiAgVGV4dEZpZWxkLFxuICBUZXh0YXJlYUZpZWxkLFxuICBVcGxvYWRGaWVsZCxcbiAgVmFsaWRhdGUsXG59IGZyb20gJy4vY29uZmlnL3R5cGVzJ1xuXG5pbXBvcnQgY2FuVXNlRE9NIGZyb20gJy4uL3V0aWxpdGllcy9jYW5Vc2VET00nXG5pbXBvcnQgeyBnZXRJRFR5cGUgfSBmcm9tICcuLi91dGlsaXRpZXMvZ2V0SURUeXBlJ1xuaW1wb3J0IHsgaXNWYWxpZElEIH0gZnJvbSAnLi4vdXRpbGl0aWVzL2lzVmFsaWRJRCdcbmltcG9ydCB7IGZpZWxkQWZmZWN0c0RhdGEgfSBmcm9tICcuL2NvbmZpZy90eXBlcydcblxuZXhwb3J0IGNvbnN0IG51bWJlcjogVmFsaWRhdGU8dW5rbm93biwgdW5rbm93biwgTnVtYmVyRmllbGQ+ID0gKFxuICB2YWx1ZTogbnVtYmVyIHwgbnVtYmVyW10sXG4gIHsgaGFzTWFueSwgbWF4LCBtYXhSb3dzLCBtaW4sIG1pblJvd3MsIHJlcXVpcmVkLCB0IH0sXG4pID0+IHtcbiAgY29uc3QgdG9WYWxpZGF0ZTogbnVtYmVyW10gPSBBcnJheS5pc0FycmF5KHZhbHVlKSA/IHZhbHVlIDogW3ZhbHVlXVxuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1yZXN0cmljdGVkLXN5bnRheFxuICBmb3IgKGNvbnN0IHZhbHVlVG9WYWxpZGF0ZSBvZiB0b1ZhbGlkYXRlKSB7XG4gICAgY29uc3QgZmxvYXRWYWx1ZSA9IHBhcnNlRmxvYXQodmFsdWVUb1ZhbGlkYXRlIGFzIHVua25vd24gYXMgc3RyaW5nKVxuICAgIGlmIChcbiAgICAgICh2YWx1ZSAmJiB0eXBlb2YgZmxvYXRWYWx1ZSAhPT0gJ251bWJlcicpIHx8XG4gICAgICAocmVxdWlyZWQgJiYgTnVtYmVyLmlzTmFOKGZsb2F0VmFsdWUpKSB8fFxuICAgICAgKHZhbHVlICYmIE51bWJlci5pc05hTihmbG9hdFZhbHVlKSlcbiAgICApIHtcbiAgICAgIHJldHVybiB0KCd2YWxpZGF0aW9uOmVudGVyTnVtYmVyJylcbiAgICB9XG5cbiAgICBpZiAodHlwZW9mIG1heCA9PT0gJ251bWJlcicgJiYgZmxvYXRWYWx1ZSA+IG1heCkge1xuICAgICAgcmV0dXJuIHQoJ3ZhbGlkYXRpb246Z3JlYXRlclRoYW5NYXgnLCB7IGxhYmVsOiB0KCd2YWx1ZScpLCBtYXgsIHZhbHVlIH0pXG4gICAgfVxuXG4gICAgaWYgKHR5cGVvZiBtaW4gPT09ICdudW1iZXInICYmIGZsb2F0VmFsdWUgPCBtaW4pIHtcbiAgICAgIHJldHVybiB0KCd2YWxpZGF0aW9uOmxlc3NUaGFuTWluJywgeyBsYWJlbDogdCgndmFsdWUnKSwgbWluLCB2YWx1ZSB9KVxuICAgIH1cblxuICAgIGlmIChyZXF1aXJlZCAmJiB0eXBlb2YgZmxvYXRWYWx1ZSAhPT0gJ251bWJlcicpIHtcbiAgICAgIHJldHVybiB0KCd2YWxpZGF0aW9uOnJlcXVpcmVkJylcbiAgICB9XG4gIH1cblxuICBpZiAocmVxdWlyZWQgJiYgdG9WYWxpZGF0ZS5sZW5ndGggPT09IDApIHtcbiAgICByZXR1cm4gdCgndmFsaWRhdGlvbjpyZXF1aXJlZCcpXG4gIH1cblxuICBpZiAoaGFzTWFueSA9PT0gdHJ1ZSkge1xuICAgIGlmIChtaW5Sb3dzICYmIHRvVmFsaWRhdGUubGVuZ3RoIDwgbWluUm93cykge1xuICAgICAgcmV0dXJuIHQoJ3ZhbGlkYXRpb246bGVzc1RoYW5NaW4nLCB7XG4gICAgICAgIGxhYmVsOiB0KCdyb3dzJyksXG4gICAgICAgIG1pbjogbWluUm93cyxcbiAgICAgICAgdmFsdWU6IHRvVmFsaWRhdGUubGVuZ3RoLFxuICAgICAgfSlcbiAgICB9XG5cbiAgICBpZiAobWF4Um93cyAmJiB0b1ZhbGlkYXRlLmxlbmd0aCA+IG1heFJvd3MpIHtcbiAgICAgIHJldHVybiB0KCd2YWxpZGF0aW9uOmdyZWF0ZXJUaGFuTWF4Jywge1xuICAgICAgICBsYWJlbDogdCgncm93cycpLFxuICAgICAgICBtYXg6IG1heFJvd3MsXG4gICAgICAgIHZhbHVlOiB0b1ZhbGlkYXRlLmxlbmd0aCxcbiAgICAgIH0pXG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHRydWVcbn1cblxuZXhwb3J0IGNvbnN0IHRleHQ6IFZhbGlkYXRlPHVua25vd24sIHVua25vd24sIFRleHRGaWVsZD4gPSAoXG4gIHZhbHVlOiBzdHJpbmcsXG4gIHsgbWF4TGVuZ3RoOiBmaWVsZE1heExlbmd0aCwgbWluTGVuZ3RoLCBwYXlsb2FkLCByZXF1aXJlZCwgdCB9LFxuKSA9PiB7XG4gIGxldCBtYXhMZW5ndGg6IG51bWJlclxuXG4gIGlmICh0eXBlb2YgcGF5bG9hZD8uY29uZmlnPy5kZWZhdWx0TWF4VGV4dExlbmd0aCA9PT0gJ251bWJlcicpXG4gICAgbWF4TGVuZ3RoID0gcGF5bG9hZC5jb25maWcuZGVmYXVsdE1heFRleHRMZW5ndGhcbiAgaWYgKHR5cGVvZiBmaWVsZE1heExlbmd0aCA9PT0gJ251bWJlcicpIG1heExlbmd0aCA9IGZpZWxkTWF4TGVuZ3RoXG4gIGlmICh2YWx1ZSAmJiBtYXhMZW5ndGggJiYgdmFsdWUubGVuZ3RoID4gbWF4TGVuZ3RoKSB7XG4gICAgcmV0dXJuIHQoJ3ZhbGlkYXRpb246c2hvcnRlclRoYW5NYXgnLCB7IG1heExlbmd0aCB9KVxuICB9XG5cbiAgaWYgKHZhbHVlICYmIG1pbkxlbmd0aCAmJiB2YWx1ZT8ubGVuZ3RoIDwgbWluTGVuZ3RoKSB7XG4gICAgcmV0dXJuIHQoJ3ZhbGlkYXRpb246bG9uZ2VyVGhhbk1pbicsIHsgbWluTGVuZ3RoIH0pXG4gIH1cblxuICBpZiAocmVxdWlyZWQpIHtcbiAgICBpZiAodHlwZW9mIHZhbHVlICE9PSAnc3RyaW5nJyB8fCB2YWx1ZT8ubGVuZ3RoID09PSAwKSB7XG4gICAgICByZXR1cm4gdCgndmFsaWRhdGlvbjpyZXF1aXJlZCcpXG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHRydWVcbn1cblxuZXhwb3J0IGNvbnN0IHBhc3N3b3JkOiBWYWxpZGF0ZTx1bmtub3duLCB1bmtub3duLCBUZXh0RmllbGQ+ID0gKFxuICB2YWx1ZTogc3RyaW5nLFxuICB7IG1heExlbmd0aDogZmllbGRNYXhMZW5ndGgsIG1pbkxlbmd0aCwgcGF5bG9hZCwgcmVxdWlyZWQsIHQgfSxcbikgPT4ge1xuICBsZXQgbWF4TGVuZ3RoOiBudW1iZXJcblxuICBpZiAodHlwZW9mIHBheWxvYWQ/LmNvbmZpZz8uZGVmYXVsdE1heFRleHRMZW5ndGggPT09ICdudW1iZXInKVxuICAgIG1heExlbmd0aCA9IHBheWxvYWQuY29uZmlnLmRlZmF1bHRNYXhUZXh0TGVuZ3RoXG4gIGlmICh0eXBlb2YgZmllbGRNYXhMZW5ndGggPT09ICdudW1iZXInKSBtYXhMZW5ndGggPSBmaWVsZE1heExlbmd0aFxuXG4gIGlmICh2YWx1ZSAmJiBtYXhMZW5ndGggJiYgdmFsdWUubGVuZ3RoID4gbWF4TGVuZ3RoKSB7XG4gICAgcmV0dXJuIHQoJ3ZhbGlkYXRpb246c2hvcnRlclRoYW5NYXgnLCB7IG1heExlbmd0aCB9KVxuICB9XG5cbiAgaWYgKHZhbHVlICYmIG1pbkxlbmd0aCAmJiB2YWx1ZS5sZW5ndGggPCBtaW5MZW5ndGgpIHtcbiAgICByZXR1cm4gdCgndmFsaWRhdGlvbjpsb25nZXJUaGFuTWluJywgeyBtaW5MZW5ndGggfSlcbiAgfVxuXG4gIGlmIChyZXF1aXJlZCAmJiAhdmFsdWUpIHtcbiAgICByZXR1cm4gdCgndmFsaWRhdGlvbjpyZXF1aXJlZCcpXG4gIH1cblxuICByZXR1cm4gdHJ1ZVxufVxuXG5leHBvcnQgY29uc3QgZW1haWw6IFZhbGlkYXRlPHVua25vd24sIHVua25vd24sIEVtYWlsRmllbGQ+ID0gKHZhbHVlOiBzdHJpbmcsIHsgcmVxdWlyZWQsIHQgfSkgPT4ge1xuICBpZiAoKHZhbHVlICYmICEvXFxTW15cXHNAXSpAXFxTK1xcLlxcUysvLnRlc3QodmFsdWUpKSB8fCAoIXZhbHVlICYmIHJlcXVpcmVkKSkge1xuICAgIHJldHVybiB0KCd2YWxpZGF0aW9uOmVtYWlsQWRkcmVzcycpXG4gIH1cblxuICByZXR1cm4gdHJ1ZVxufVxuXG5leHBvcnQgY29uc3QgdGV4dGFyZWE6IFZhbGlkYXRlPHVua25vd24sIHVua25vd24sIFRleHRhcmVhRmllbGQ+ID0gKFxuICB2YWx1ZTogc3RyaW5nLFxuICB7IG1heExlbmd0aDogZmllbGRNYXhMZW5ndGgsIG1pbkxlbmd0aCwgcGF5bG9hZCwgcmVxdWlyZWQsIHQgfSxcbikgPT4ge1xuICBsZXQgbWF4TGVuZ3RoOiBudW1iZXJcblxuICBpZiAodHlwZW9mIHBheWxvYWQ/LmNvbmZpZz8uZGVmYXVsdE1heFRleHRMZW5ndGggPT09ICdudW1iZXInKVxuICAgIG1heExlbmd0aCA9IHBheWxvYWQuY29uZmlnLmRlZmF1bHRNYXhUZXh0TGVuZ3RoXG4gIGlmICh0eXBlb2YgZmllbGRNYXhMZW5ndGggPT09ICdudW1iZXInKSBtYXhMZW5ndGggPSBmaWVsZE1heExlbmd0aFxuICBpZiAodmFsdWUgJiYgbWF4TGVuZ3RoICYmIHZhbHVlLmxlbmd0aCA+IG1heExlbmd0aCkge1xuICAgIHJldHVybiB0KCd2YWxpZGF0aW9uOnNob3J0ZXJUaGFuTWF4JywgeyBtYXhMZW5ndGggfSlcbiAgfVxuXG4gIGlmICh2YWx1ZSAmJiBtaW5MZW5ndGggJiYgdmFsdWUubGVuZ3RoIDwgbWluTGVuZ3RoKSB7XG4gICAgcmV0dXJuIHQoJ3ZhbGlkYXRpb246bG9uZ2VyVGhhbk1pbicsIHsgbWluTGVuZ3RoIH0pXG4gIH1cblxuICBpZiAocmVxdWlyZWQgJiYgIXZhbHVlKSB7XG4gICAgcmV0dXJuIHQoJ3ZhbGlkYXRpb246cmVxdWlyZWQnKVxuICB9XG5cbiAgcmV0dXJuIHRydWVcbn1cblxuZXhwb3J0IGNvbnN0IGNvZGU6IFZhbGlkYXRlPHVua25vd24sIHVua25vd24sIENvZGVGaWVsZD4gPSAodmFsdWU6IHN0cmluZywgeyByZXF1aXJlZCwgdCB9KSA9PiB7XG4gIGlmIChyZXF1aXJlZCAmJiB2YWx1ZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHQoJ3ZhbGlkYXRpb246cmVxdWlyZWQnKVxuICB9XG5cbiAgcmV0dXJuIHRydWVcbn1cblxuZXhwb3J0IGNvbnN0IGpzb246IFZhbGlkYXRlPHVua25vd24sIHVua25vd24sIEpTT05GaWVsZCAmIHsganNvbkVycm9yPzogc3RyaW5nIH0+ID0gKFxuICB2YWx1ZTogc3RyaW5nLFxuICB7IGpzb25FcnJvciwgcmVxdWlyZWQsIHQgfSxcbikgPT4ge1xuICBpZiAocmVxdWlyZWQgJiYgIXZhbHVlKSB7XG4gICAgcmV0dXJuIHQoJ3ZhbGlkYXRpb246cmVxdWlyZWQnKVxuICB9XG5cbiAgaWYgKGpzb25FcnJvciAhPT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHQoJ3ZhbGlkYXRpb246aW52YWxpZElucHV0JylcbiAgfVxuXG4gIHJldHVybiB0cnVlXG59XG5cbmV4cG9ydCBjb25zdCBjaGVja2JveDogVmFsaWRhdGU8dW5rbm93biwgdW5rbm93biwgQ2hlY2tib3hGaWVsZD4gPSAoXG4gIHZhbHVlOiBib29sZWFuLFxuICB7IHJlcXVpcmVkLCB0IH0sXG4pID0+IHtcbiAgaWYgKCh2YWx1ZSAmJiB0eXBlb2YgdmFsdWUgIT09ICdib29sZWFuJykgfHwgKHJlcXVpcmVkICYmIHR5cGVvZiB2YWx1ZSAhPT0gJ2Jvb2xlYW4nKSkge1xuICAgIHJldHVybiB0KCd2YWxpZGF0aW9uOnRydWVPckZhbHNlJylcbiAgfVxuXG4gIHJldHVybiB0cnVlXG59XG5cbmV4cG9ydCBjb25zdCBkYXRlOiBWYWxpZGF0ZTx1bmtub3duLCB1bmtub3duLCBEYXRlRmllbGQ+ID0gKHZhbHVlLCB7IHJlcXVpcmVkLCB0IH0pID0+IHtcbiAgaWYgKHZhbHVlICYmICFpc05hTihEYXRlLnBhcnNlKHZhbHVlLnRvU3RyaW5nKCkpKSkge1xuICAgIC8qIGVzbGludC1kaXNhYmxlLWxpbmUgKi9cbiAgICByZXR1cm4gdHJ1ZVxuICB9XG5cbiAgaWYgKHZhbHVlKSB7XG4gICAgcmV0dXJuIHQoJ3ZhbGlkYXRpb246bm90VmFsaWREYXRlJywgeyB2YWx1ZSB9KVxuICB9XG5cbiAgaWYgKHJlcXVpcmVkKSB7XG4gICAgcmV0dXJuIHQoJ3ZhbGlkYXRpb246cmVxdWlyZWQnKVxuICB9XG5cbiAgcmV0dXJuIHRydWVcbn1cblxuY29uc3QgdmFsaWRhdGVGaWx0ZXJPcHRpb25zOiBWYWxpZGF0ZSA9IGFzeW5jIChcbiAgdmFsdWUsXG4gIHsgaWQsIGRhdGEsIGZpbHRlck9wdGlvbnMsIHBheWxvYWQsIHJlbGF0aW9uVG8sIHNpYmxpbmdEYXRhLCB0LCB1c2VyIH0sXG4pID0+IHtcbiAgaWYgKCFjYW5Vc2VET00gJiYgdHlwZW9mIGZpbHRlck9wdGlvbnMgIT09ICd1bmRlZmluZWQnICYmIHZhbHVlKSB7XG4gICAgY29uc3Qgb3B0aW9uczoge1xuICAgICAgW2NvbGxlY3Rpb246IHN0cmluZ106IChudW1iZXIgfCBzdHJpbmcpW11cbiAgICB9ID0ge31cblxuICAgIGNvbnN0IGNvbGxlY3Rpb25zID0gdHlwZW9mIHJlbGF0aW9uVG8gPT09ICdzdHJpbmcnID8gW3JlbGF0aW9uVG9dIDogcmVsYXRpb25Ub1xuICAgIGNvbnN0IHZhbHVlcyA9IEFycmF5LmlzQXJyYXkodmFsdWUpID8gdmFsdWUgOiBbdmFsdWVdXG5cbiAgICBhd2FpdCBQcm9taXNlLmFsbChcbiAgICAgIGNvbGxlY3Rpb25zLm1hcChhc3luYyAoY29sbGVjdGlvbikgPT4ge1xuICAgICAgICBjb25zdCBvcHRpb25GaWx0ZXIgPVxuICAgICAgICAgIHR5cGVvZiBmaWx0ZXJPcHRpb25zID09PSAnZnVuY3Rpb24nXG4gICAgICAgICAgICA/IGF3YWl0IGZpbHRlck9wdGlvbnMoe1xuICAgICAgICAgICAgICAgIGlkLFxuICAgICAgICAgICAgICAgIGRhdGEsXG4gICAgICAgICAgICAgICAgcmVsYXRpb25UbzogY29sbGVjdGlvbixcbiAgICAgICAgICAgICAgICBzaWJsaW5nRGF0YSxcbiAgICAgICAgICAgICAgICB1c2VyLFxuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgOiBmaWx0ZXJPcHRpb25zXG5cbiAgICAgICAgY29uc3QgdmFsdWVJRHM6IChudW1iZXIgfCBzdHJpbmcpW10gPSBbXVxuXG4gICAgICAgIHZhbHVlcy5mb3JFYWNoKCh2YWwpID0+IHtcbiAgICAgICAgICBpZiAodHlwZW9mIHZhbCA9PT0gJ29iamVjdCcgJiYgdmFsPy52YWx1ZSkge1xuICAgICAgICAgICAgdmFsdWVJRHMucHVzaCh2YWwudmFsdWUpXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKHR5cGVvZiB2YWwgPT09ICdzdHJpbmcnIHx8IHR5cGVvZiB2YWwgPT09ICdudW1iZXInKSB7XG4gICAgICAgICAgICB2YWx1ZUlEcy5wdXNoKHZhbClcbiAgICAgICAgICB9XG4gICAgICAgIH0pXG5cbiAgICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgcGF5bG9hZC5maW5kKHtcbiAgICAgICAgICBjb2xsZWN0aW9uLFxuICAgICAgICAgIGRlcHRoOiAwLFxuICAgICAgICAgIGxpbWl0OiAwLFxuICAgICAgICAgIHBhZ2luYXRpb246IGZhbHNlLFxuICAgICAgICAgIHdoZXJlOiB7XG4gICAgICAgICAgICBhbmQ6IFt7IGlkOiB7IGluOiB2YWx1ZUlEcyB9IH0sIG9wdGlvbkZpbHRlcl0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSlcblxuICAgICAgICBvcHRpb25zW2NvbGxlY3Rpb25dID0gcmVzdWx0LmRvY3MubWFwKChkb2MpID0+IGRvYy5pZClcbiAgICAgIH0pLFxuICAgIClcblxuICAgIGNvbnN0IGludmFsaWRSZWxhdGlvbnNoaXBzID0gdmFsdWVzLmZpbHRlcigodmFsKSA9PiB7XG4gICAgICBsZXQgY29sbGVjdGlvbjogc3RyaW5nXG4gICAgICBsZXQgcmVxdWVzdGVkSUQ6IG51bWJlciB8IHN0cmluZ1xuXG4gICAgICBpZiAodHlwZW9mIHJlbGF0aW9uVG8gPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIGNvbGxlY3Rpb24gPSByZWxhdGlvblRvXG5cbiAgICAgICAgaWYgKHR5cGVvZiB2YWwgPT09ICdzdHJpbmcnIHx8IHR5cGVvZiB2YWwgPT09ICdudW1iZXInKSB7XG4gICAgICAgICAgcmVxdWVzdGVkSUQgPSB2YWxcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpZiAoQXJyYXkuaXNBcnJheShyZWxhdGlvblRvKSAmJiB0eXBlb2YgdmFsID09PSAnb2JqZWN0JyAmJiB2YWw/LnJlbGF0aW9uVG8pIHtcbiAgICAgICAgY29sbGVjdGlvbiA9IHZhbC5yZWxhdGlvblRvXG4gICAgICAgIHJlcXVlc3RlZElEID0gdmFsLnZhbHVlXG4gICAgICB9XG5cbiAgICAgIHJldHVybiBvcHRpb25zW2NvbGxlY3Rpb25dLmluZGV4T2YocmVxdWVzdGVkSUQpID09PSAtMVxuICAgIH0pXG5cbiAgICBpZiAoaW52YWxpZFJlbGF0aW9uc2hpcHMubGVuZ3RoID4gMCkge1xuICAgICAgcmV0dXJuIGludmFsaWRSZWxhdGlvbnNoaXBzLnJlZHVjZSgoZXJyLCBpbnZhbGlkLCBpKSA9PiB7XG4gICAgICAgIHJldHVybiBgJHtlcnJ9ICR7SlNPTi5zdHJpbmdpZnkoaW52YWxpZCl9JHtcbiAgICAgICAgICBpbnZhbGlkUmVsYXRpb25zaGlwcy5sZW5ndGggPT09IGkgKyAxID8gJywnIDogJydcbiAgICAgICAgfSBgXG4gICAgICB9LCB0KCd2YWxpZGF0aW9uOmludmFsaWRTZWxlY3Rpb25zJykpIGFzIHN0cmluZ1xuICAgIH1cblxuICAgIHJldHVybiB0cnVlXG4gIH1cblxuICByZXR1cm4gdHJ1ZVxufVxuXG5leHBvcnQgY29uc3QgdXBsb2FkOiBWYWxpZGF0ZTx1bmtub3duLCB1bmtub3duLCBVcGxvYWRGaWVsZD4gPSAodmFsdWU6IHN0cmluZywgb3B0aW9ucykgPT4ge1xuICBpZiAoIXZhbHVlICYmIG9wdGlvbnMucmVxdWlyZWQpIHtcbiAgICByZXR1cm4gb3B0aW9ucy50KCd2YWxpZGF0aW9uOnJlcXVpcmVkJylcbiAgfVxuXG4gIGlmICghY2FuVXNlRE9NICYmIHR5cGVvZiB2YWx1ZSAhPT0gJ3VuZGVmaW5lZCcgJiYgdmFsdWUgIT09IG51bGwpIHtcbiAgICBjb25zdCBpZEZpZWxkID0gb3B0aW9ucy5wYXlsb2FkLmNvbGxlY3Rpb25zW29wdGlvbnMucmVsYXRpb25Ub10uY29uZmlnLmZpZWxkcy5maW5kKFxuICAgICAgKGZpZWxkKSA9PiBmaWVsZEFmZmVjdHNEYXRhKGZpZWxkKSAmJiBmaWVsZC5uYW1lID09PSAnaWQnLFxuICAgIClcbiAgICBjb25zdCB0eXBlID0gZ2V0SURUeXBlKGlkRmllbGQpXG5cbiAgICBpZiAoIWlzVmFsaWRJRCh2YWx1ZSwgdHlwZSkpIHtcbiAgICAgIHJldHVybiBvcHRpb25zLnQoJ3ZhbGlkYXRpb246dmFsaWRVcGxvYWRJRCcpXG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHZhbGlkYXRlRmlsdGVyT3B0aW9ucyh2YWx1ZSwgb3B0aW9ucylcbn1cblxuZXhwb3J0IGNvbnN0IHJlbGF0aW9uc2hpcDogVmFsaWRhdGU8dW5rbm93biwgdW5rbm93biwgUmVsYXRpb25zaGlwRmllbGQ+ID0gYXN5bmMgKFxuICB2YWx1ZTogUmVsYXRpb25zaGlwVmFsdWUsXG4gIG9wdGlvbnMsXG4pID0+IHtcbiAgY29uc3QgeyBtYXhSb3dzLCBtaW5Sb3dzLCBwYXlsb2FkLCByZWxhdGlvblRvLCByZXF1aXJlZCwgdCB9ID0gb3B0aW9uc1xuXG4gIGlmICgoIXZhbHVlIHx8IChBcnJheS5pc0FycmF5KHZhbHVlKSAmJiB2YWx1ZS5sZW5ndGggPT09IDApKSAmJiByZXF1aXJlZCkge1xuICAgIHJldHVybiBvcHRpb25zLnQoJ3ZhbGlkYXRpb246cmVxdWlyZWQnKVxuICB9XG5cbiAgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKSB7XG4gICAgaWYgKG1pblJvd3MgJiYgdmFsdWUubGVuZ3RoIDwgbWluUm93cykge1xuICAgICAgcmV0dXJuIHQoJ3ZhbGlkYXRpb246bGVzc1RoYW5NaW4nLCB7IGxhYmVsOiB0KCdyb3dzJyksIG1pbjogbWluUm93cywgdmFsdWU6IHZhbHVlLmxlbmd0aCB9KVxuICAgIH1cblxuICAgIGlmIChtYXhSb3dzICYmIHZhbHVlLmxlbmd0aCA+IG1heFJvd3MpIHtcbiAgICAgIHJldHVybiB0KCd2YWxpZGF0aW9uOmdyZWF0ZXJUaGFuTWF4JywgeyBsYWJlbDogdCgncm93cycpLCBtYXg6IG1heFJvd3MsIHZhbHVlOiB2YWx1ZS5sZW5ndGggfSlcbiAgICB9XG4gIH1cblxuICBpZiAoIWNhblVzZURPTSAmJiB0eXBlb2YgdmFsdWUgIT09ICd1bmRlZmluZWQnICYmIHZhbHVlICE9PSBudWxsKSB7XG4gICAgY29uc3QgdmFsdWVzID0gQXJyYXkuaXNBcnJheSh2YWx1ZSkgPyB2YWx1ZSA6IFt2YWx1ZV1cblxuICAgIGNvbnN0IGludmFsaWRSZWxhdGlvbnNoaXBzID0gdmFsdWVzLmZpbHRlcigodmFsKSA9PiB7XG4gICAgICBsZXQgY29sbGVjdGlvbjogc3RyaW5nXG4gICAgICBsZXQgcmVxdWVzdGVkSURcblxuICAgICAgaWYgKHR5cGVvZiByZWxhdGlvblRvID09PSAnc3RyaW5nJykge1xuICAgICAgICBjb2xsZWN0aW9uID0gcmVsYXRpb25Ub1xuXG4gICAgICAgIC8vIGN1c3RvbSBpZFxuICAgICAgICBpZiAodmFsKSB7XG4gICAgICAgICAgcmVxdWVzdGVkSUQgPSB2YWxcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpZiAoQXJyYXkuaXNBcnJheShyZWxhdGlvblRvKSAmJiB0eXBlb2YgdmFsID09PSAnb2JqZWN0JyAmJiB2YWw/LnJlbGF0aW9uVG8pIHtcbiAgICAgICAgY29sbGVjdGlvbiA9IHZhbC5yZWxhdGlvblRvXG4gICAgICAgIHJlcXVlc3RlZElEID0gdmFsLnZhbHVlXG4gICAgICB9XG5cbiAgICAgIGlmIChyZXF1ZXN0ZWRJRCA9PT0gbnVsbCkgcmV0dXJuIGZhbHNlXG5cbiAgICAgIGNvbnN0IGlkRmllbGQgPSBwYXlsb2FkLmNvbGxlY3Rpb25zW2NvbGxlY3Rpb25dPy5jb25maWc/LmZpZWxkcz8uZmluZChcbiAgICAgICAgKGZpZWxkKSA9PiBmaWVsZEFmZmVjdHNEYXRhKGZpZWxkKSAmJiBmaWVsZC5uYW1lID09PSAnaWQnLFxuICAgICAgKVxuICAgICAgbGV0IHR5cGVcblxuICAgICAgaWYgKGlkRmllbGQpIHtcbiAgICAgICAgdHlwZSA9IGlkRmllbGQudHlwZSA9PT0gJ251bWJlcicgPyAnbnVtYmVyJyA6ICd0ZXh0J1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdHlwZSA9ICdPYmplY3RJRCdcbiAgICAgIH1cblxuICAgICAgcmV0dXJuICFpc1ZhbGlkSUQocmVxdWVzdGVkSUQsIHR5cGUpXG4gICAgfSlcblxuICAgIGlmIChpbnZhbGlkUmVsYXRpb25zaGlwcy5sZW5ndGggPiAwKSB7XG4gICAgICByZXR1cm4gYFRoaXMgZmllbGQgaGFzIHRoZSBmb2xsb3dpbmcgaW52YWxpZCBzZWxlY3Rpb25zOiAke2ludmFsaWRSZWxhdGlvbnNoaXBzXG4gICAgICAgIC5tYXAoKGVyciwgaW52YWxpZCkgPT4ge1xuICAgICAgICAgIHJldHVybiBgJHtlcnJ9ICR7SlNPTi5zdHJpbmdpZnkoaW52YWxpZCl9YFxuICAgICAgICB9KVxuICAgICAgICAuam9pbignLCAnKX1gXG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHZhbGlkYXRlRmlsdGVyT3B0aW9ucyh2YWx1ZSwgb3B0aW9ucylcbn1cblxuZXhwb3J0IGNvbnN0IGFycmF5OiBWYWxpZGF0ZTx1bmtub3duLCB1bmtub3duLCBBcnJheUZpZWxkPiA9IChcbiAgdmFsdWUsXG4gIHsgbWF4Um93cywgbWluUm93cywgcmVxdWlyZWQsIHQgfSxcbikgPT4ge1xuICBjb25zdCBhcnJheUxlbmd0aCA9IEFycmF5LmlzQXJyYXkodmFsdWUpID8gdmFsdWUubGVuZ3RoIDogMFxuXG4gIGlmIChtaW5Sb3dzICYmIGFycmF5TGVuZ3RoIDwgbWluUm93cykge1xuICAgIHJldHVybiB0KCd2YWxpZGF0aW9uOnJlcXVpcmVzQXRMZWFzdCcsIHsgY291bnQ6IG1pblJvd3MsIGxhYmVsOiB0KCdyb3dzJykgfSlcbiAgfVxuXG4gIGlmIChtYXhSb3dzICYmIGFycmF5TGVuZ3RoID4gbWF4Um93cykge1xuICAgIHJldHVybiB0KCd2YWxpZGF0aW9uOnJlcXVpcmVzTm9Nb3JlVGhhbicsIHsgY291bnQ6IG1heFJvd3MsIGxhYmVsOiB0KCdyb3dzJykgfSlcbiAgfVxuXG4gIGlmICghYXJyYXlMZW5ndGggJiYgcmVxdWlyZWQpIHtcbiAgICByZXR1cm4gdCgndmFsaWRhdGlvbjpyZXF1aXJlc0F0TGVhc3QnLCB7IGNvdW50OiAxLCBsYWJlbDogdCgncm93JykgfSlcbiAgfVxuXG4gIHJldHVybiB0cnVlXG59XG5cbmV4cG9ydCBjb25zdCBzZWxlY3Q6IFZhbGlkYXRlPHVua25vd24sIHVua25vd24sIFNlbGVjdEZpZWxkPiA9IChcbiAgdmFsdWUsXG4gIHsgaGFzTWFueSwgb3B0aW9ucywgcmVxdWlyZWQsIHQgfSxcbikgPT4ge1xuICBpZiAoXG4gICAgQXJyYXkuaXNBcnJheSh2YWx1ZSkgJiZcbiAgICB2YWx1ZS5zb21lKFxuICAgICAgKGlucHV0KSA9PlxuICAgICAgICAhb3B0aW9ucy5zb21lKFxuICAgICAgICAgIChvcHRpb24pID0+IG9wdGlvbiA9PT0gaW5wdXQgfHwgKHR5cGVvZiBvcHRpb24gIT09ICdzdHJpbmcnICYmIG9wdGlvbj8udmFsdWUgPT09IGlucHV0KSxcbiAgICAgICAgKSxcbiAgICApXG4gICkge1xuICAgIHJldHVybiB0KCd2YWxpZGF0aW9uOmludmFsaWRTZWxlY3Rpb24nKVxuICB9XG5cbiAgaWYgKFxuICAgIHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycgJiZcbiAgICAhb3B0aW9ucy5zb21lKFxuICAgICAgKG9wdGlvbikgPT4gb3B0aW9uID09PSB2YWx1ZSB8fCAodHlwZW9mIG9wdGlvbiAhPT0gJ3N0cmluZycgJiYgb3B0aW9uLnZhbHVlID09PSB2YWx1ZSksXG4gICAgKVxuICApIHtcbiAgICByZXR1cm4gdCgndmFsaWRhdGlvbjppbnZhbGlkU2VsZWN0aW9uJylcbiAgfVxuXG4gIGlmIChcbiAgICByZXF1aXJlZCAmJlxuICAgICh0eXBlb2YgdmFsdWUgPT09ICd1bmRlZmluZWQnIHx8XG4gICAgICB2YWx1ZSA9PT0gbnVsbCB8fFxuICAgICAgKGhhc01hbnkgJiYgQXJyYXkuaXNBcnJheSh2YWx1ZSkgJiYgKHZhbHVlIGFzIFtdKT8ubGVuZ3RoID09PSAwKSlcbiAgKSB7XG4gICAgcmV0dXJuIHQoJ3ZhbGlkYXRpb246cmVxdWlyZWQnKVxuICB9XG5cbiAgcmV0dXJuIHRydWVcbn1cblxuZXhwb3J0IGNvbnN0IHJhZGlvOiBWYWxpZGF0ZTx1bmtub3duLCB1bmtub3duLCBSYWRpb0ZpZWxkPiA9ICh2YWx1ZSwgeyBvcHRpb25zLCByZXF1aXJlZCwgdCB9KSA9PiB7XG4gIGlmICh2YWx1ZSkge1xuICAgIGNvbnN0IHZhbHVlTWF0Y2hlc09wdGlvbiA9IG9wdGlvbnMuc29tZShcbiAgICAgIChvcHRpb24pID0+IG9wdGlvbiA9PT0gdmFsdWUgfHwgKHR5cGVvZiBvcHRpb24gIT09ICdzdHJpbmcnICYmIG9wdGlvbi52YWx1ZSA9PT0gdmFsdWUpLFxuICAgIClcbiAgICByZXR1cm4gdmFsdWVNYXRjaGVzT3B0aW9uIHx8IHQoJ3ZhbGlkYXRpb246aW52YWxpZFNlbGVjdGlvbicpXG4gIH1cblxuICByZXR1cm4gcmVxdWlyZWQgPyB0KCd2YWxpZGF0aW9uOnJlcXVpcmVkJykgOiB0cnVlXG59XG5cbmV4cG9ydCBjb25zdCBibG9ja3M6IFZhbGlkYXRlPHVua25vd24sIHVua25vd24sIEJsb2NrRmllbGQ+ID0gKFxuICB2YWx1ZSxcbiAgeyBtYXhSb3dzLCBtaW5Sb3dzLCByZXF1aXJlZCwgdCB9LFxuKSA9PiB7XG4gIGNvbnN0IGFycmF5TGVuZ3RoID0gQXJyYXkuaXNBcnJheSh2YWx1ZSkgPyB2YWx1ZS5sZW5ndGggOiAwXG5cbiAgaWYgKG1pblJvd3MgJiYgYXJyYXlMZW5ndGggPCBtaW5Sb3dzKSB7XG4gICAgcmV0dXJuIHQoJ3ZhbGlkYXRpb246cmVxdWlyZXNBdExlYXN0JywgeyBjb3VudDogbWluUm93cywgbGFiZWw6IHQoJ3Jvd3MnKSB9KVxuICB9XG5cbiAgaWYgKG1heFJvd3MgJiYgYXJyYXlMZW5ndGggPiBtYXhSb3dzKSB7XG4gICAgcmV0dXJuIHQoJ3ZhbGlkYXRpb246cmVxdWlyZXNOb01vcmVUaGFuJywgeyBjb3VudDogbWF4Um93cywgbGFiZWw6IHQoJ3Jvd3MnKSB9KVxuICB9XG5cbiAgaWYgKCFhcnJheUxlbmd0aCAmJiByZXF1aXJlZCkge1xuICAgIHJldHVybiB0KCd2YWxpZGF0aW9uOnJlcXVpcmVzQXRMZWFzdCcsIHsgY291bnQ6IDEsIGxhYmVsOiB0KCdyb3cnKSB9KVxuICB9XG5cbiAgcmV0dXJuIHRydWVcbn1cblxuZXhwb3J0IGNvbnN0IHBvaW50OiBWYWxpZGF0ZTx1bmtub3duLCB1bmtub3duLCBQb2ludEZpZWxkPiA9IChcbiAgdmFsdWU6IFtudW1iZXIgfCBzdHJpbmcsIG51bWJlciB8IHN0cmluZ10gPSBbJycsICcnXSxcbiAgeyByZXF1aXJlZCwgdCB9LFxuKSA9PiB7XG4gIGNvbnN0IGxuZyA9IHBhcnNlRmxvYXQoU3RyaW5nKHZhbHVlWzBdKSlcbiAgY29uc3QgbGF0ID0gcGFyc2VGbG9hdChTdHJpbmcodmFsdWVbMV0pKVxuICBpZiAoXG4gICAgcmVxdWlyZWQgJiZcbiAgICAoKHZhbHVlWzBdICYmIHZhbHVlWzFdICYmIHR5cGVvZiBsbmcgIT09ICdudW1iZXInICYmIHR5cGVvZiBsYXQgIT09ICdudW1iZXInKSB8fFxuICAgICAgTnVtYmVyLmlzTmFOKGxuZykgfHxcbiAgICAgIE51bWJlci5pc05hTihsYXQpIHx8XG4gICAgICAoQXJyYXkuaXNBcnJheSh2YWx1ZSkgJiYgdmFsdWUubGVuZ3RoICE9PSAyKSlcbiAgKSB7XG4gICAgcmV0dXJuIHQoJ3ZhbGlkYXRpb246cmVxdWlyZXNUd29OdW1iZXJzJylcbiAgfVxuXG4gIGlmICgodmFsdWVbMV0gJiYgTnVtYmVyLmlzTmFOKGxuZykpIHx8ICh2YWx1ZVswXSAmJiBOdW1iZXIuaXNOYU4obGF0KSkpIHtcbiAgICByZXR1cm4gdCgndmFsaWRhdGlvbjppbnZhbGlkSW5wdXQnKVxuICB9XG5cbiAgcmV0dXJuIHRydWVcbn1cblxuZXhwb3J0IGRlZmF1bHQge1xuICBhcnJheSxcbiAgYmxvY2tzLFxuICBjaGVja2JveCxcbiAgY29kZSxcbiAgZGF0ZSxcbiAgZW1haWwsXG4gIGpzb24sXG4gIG51bWJlcixcbiAgcGFzc3dvcmQsXG4gIHBvaW50LFxuICByYWRpbyxcbiAgcmVsYXRpb25zaGlwLFxuICBzZWxlY3QsXG4gIHRleHQsXG4gIHRleHRhcmVhLFxuICB1cGxvYWQsXG59XG4iXSwibmFtZXMiOlsibnVtYmVyIiwidGV4dCIsInBhc3N3b3JkIiwiZW1haWwiLCJ0ZXh0YXJlYSIsImNvZGUiLCJqc29uIiwiY2hlY2tib3giLCJkYXRlIiwidXBsb2FkIiwicmVsYXRpb25zaGlwIiwiYXJyYXkiLCJzZWxlY3QiLCJyYWRpbyIsImJsb2NrcyIsInBvaW50IiwidmFsdWUiLCJoYXNNYW55IiwibWF4IiwibWF4Um93cyIsIm1pbiIsIm1pblJvd3MiLCJyZXF1aXJlZCIsInQiLCJ0b1ZhbGlkYXRlIiwiQXJyYXkiLCJpc0FycmF5IiwidmFsdWVUb1ZhbGlkYXRlIiwiZmxvYXRWYWx1ZSIsInBhcnNlRmxvYXQiLCJOdW1iZXIiLCJpc05hTiIsImxhYmVsIiwibGVuZ3RoIiwibWF4TGVuZ3RoIiwiZmllbGRNYXhMZW5ndGgiLCJtaW5MZW5ndGgiLCJwYXlsb2FkIiwiY29uZmlnIiwiZGVmYXVsdE1heFRleHRMZW5ndGgiLCJ0ZXN0IiwidW5kZWZpbmVkIiwianNvbkVycm9yIiwiRGF0ZSIsInBhcnNlIiwidG9TdHJpbmciLCJ2YWxpZGF0ZUZpbHRlck9wdGlvbnMiLCJpZCIsImRhdGEiLCJmaWx0ZXJPcHRpb25zIiwicmVsYXRpb25UbyIsInNpYmxpbmdEYXRhIiwidXNlciIsImNhblVzZURPTSIsIm9wdGlvbnMiLCJjb2xsZWN0aW9ucyIsInZhbHVlcyIsIlByb21pc2UiLCJhbGwiLCJtYXAiLCJjb2xsZWN0aW9uIiwib3B0aW9uRmlsdGVyIiwidmFsdWVJRHMiLCJmb3JFYWNoIiwidmFsIiwicHVzaCIsInJlc3VsdCIsImZpbmQiLCJkZXB0aCIsImxpbWl0IiwicGFnaW5hdGlvbiIsIndoZXJlIiwiYW5kIiwiaW4iLCJkb2NzIiwiZG9jIiwiaW52YWxpZFJlbGF0aW9uc2hpcHMiLCJmaWx0ZXIiLCJyZXF1ZXN0ZWRJRCIsImluZGV4T2YiLCJyZWR1Y2UiLCJlcnIiLCJpbnZhbGlkIiwiaSIsIkpTT04iLCJzdHJpbmdpZnkiLCJpZEZpZWxkIiwiZmllbGRzIiwiZmllbGQiLCJmaWVsZEFmZmVjdHNEYXRhIiwibmFtZSIsInR5cGUiLCJnZXRJRFR5cGUiLCJpc1ZhbGlkSUQiLCJqb2luIiwiYXJyYXlMZW5ndGgiLCJjb3VudCIsInNvbWUiLCJpbnB1dCIsIm9wdGlvbiIsInZhbHVlTWF0Y2hlc09wdGlvbiIsImxuZyIsIlN0cmluZyIsImxhdCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7SUF5QmFBLE1BQU07ZUFBTkE7O0lBdURBQyxJQUFJO2VBQUpBOztJQTBCQUMsUUFBUTtlQUFSQTs7SUF5QkFDLEtBQUs7ZUFBTEE7O0lBUUFDLFFBQVE7ZUFBUkE7O0lBd0JBQyxJQUFJO2VBQUpBOztJQVFBQyxJQUFJO2VBQUpBOztJQWVBQyxRQUFRO2VBQVJBOztJQVdBQyxJQUFJO2VBQUpBOztJQXNHQUMsTUFBTTtlQUFOQTs7SUFtQkFDLFlBQVk7ZUFBWkE7O0lBcUVBQyxLQUFLO2VBQUxBOztJQXFCQUMsTUFBTTtlQUFOQTs7SUFxQ0FDLEtBQUs7ZUFBTEE7O0lBV0FDLE1BQU07ZUFBTkE7O0lBcUJBQyxLQUFLO2VBQUxBOztJQXVCYixPQWlCQztlQWpCRDs7O2tFQWhlc0I7MkJBQ0k7MkJBQ0E7dUJBQ087Ozs7OztBQUUxQixNQUFNZixTQUFrRCxDQUM3RGdCLE9BQ0EsRUFBRUMsT0FBTyxFQUFFQyxHQUFHLEVBQUVDLE9BQU8sRUFBRUMsR0FBRyxFQUFFQyxPQUFPLEVBQUVDLFFBQVEsRUFBRUMsQ0FBQyxFQUFFO0lBRXBELE1BQU1DLGFBQXVCQyxNQUFNQyxPQUFPLENBQUNWLFNBQVNBLFFBQVE7UUFBQ0E7S0FBTTtJQUVuRSxnREFBZ0Q7SUFDaEQsS0FBSyxNQUFNVyxtQkFBbUJILFdBQVk7UUFDeEMsTUFBTUksYUFBYUMsV0FBV0Y7UUFDOUIsSUFDRSxBQUFDWCxTQUFTLE9BQU9ZLGVBQWUsWUFDL0JOLFlBQVlRLE9BQU9DLEtBQUssQ0FBQ0gsZUFDekJaLFNBQVNjLE9BQU9DLEtBQUssQ0FBQ0gsYUFDdkI7WUFDQSxPQUFPTCxFQUFFO1FBQ1g7UUFFQSxJQUFJLE9BQU9MLFFBQVEsWUFBWVUsYUFBYVYsS0FBSztZQUMvQyxPQUFPSyxFQUFFLDZCQUE2QjtnQkFBRVMsT0FBT1QsRUFBRTtnQkFBVUw7Z0JBQUtGO1lBQU07UUFDeEU7UUFFQSxJQUFJLE9BQU9JLFFBQVEsWUFBWVEsYUFBYVIsS0FBSztZQUMvQyxPQUFPRyxFQUFFLDBCQUEwQjtnQkFBRVMsT0FBT1QsRUFBRTtnQkFBVUg7Z0JBQUtKO1lBQU07UUFDckU7UUFFQSxJQUFJTSxZQUFZLE9BQU9NLGVBQWUsVUFBVTtZQUM5QyxPQUFPTCxFQUFFO1FBQ1g7SUFDRjtJQUVBLElBQUlELFlBQVlFLFdBQVdTLE1BQU0sS0FBSyxHQUFHO1FBQ3ZDLE9BQU9WLEVBQUU7SUFDWDtJQUVBLElBQUlOLFlBQVksTUFBTTtRQUNwQixJQUFJSSxXQUFXRyxXQUFXUyxNQUFNLEdBQUdaLFNBQVM7WUFDMUMsT0FBT0UsRUFBRSwwQkFBMEI7Z0JBQ2pDUyxPQUFPVCxFQUFFO2dCQUNUSCxLQUFLQztnQkFDTEwsT0FBT1EsV0FBV1MsTUFBTTtZQUMxQjtRQUNGO1FBRUEsSUFBSWQsV0FBV0ssV0FBV1MsTUFBTSxHQUFHZCxTQUFTO1lBQzFDLE9BQU9JLEVBQUUsNkJBQTZCO2dCQUNwQ1MsT0FBT1QsRUFBRTtnQkFDVEwsS0FBS0M7Z0JBQ0xILE9BQU9RLFdBQVdTLE1BQU07WUFDMUI7UUFDRjtJQUNGO0lBRUEsT0FBTztBQUNUO0FBRU8sTUFBTWhDLE9BQThDLENBQ3pEZSxPQUNBLEVBQUVrQixXQUFXQyxjQUFjLEVBQUVDLFNBQVMsRUFBRUMsT0FBTyxFQUFFZixRQUFRLEVBQUVDLENBQUMsRUFBRTtJQUU5RCxJQUFJVztJQUVKLElBQUksT0FBT0csU0FBU0MsUUFBUUMseUJBQXlCLFVBQ25ETCxZQUFZRyxRQUFRQyxNQUFNLENBQUNDLG9CQUFvQjtJQUNqRCxJQUFJLE9BQU9KLG1CQUFtQixVQUFVRCxZQUFZQztJQUNwRCxJQUFJbkIsU0FBU2tCLGFBQWFsQixNQUFNaUIsTUFBTSxHQUFHQyxXQUFXO1FBQ2xELE9BQU9YLEVBQUUsNkJBQTZCO1lBQUVXO1FBQVU7SUFDcEQ7SUFFQSxJQUFJbEIsU0FBU29CLGFBQWFwQixPQUFPaUIsU0FBU0csV0FBVztRQUNuRCxPQUFPYixFQUFFLDRCQUE0QjtZQUFFYTtRQUFVO0lBQ25EO0lBRUEsSUFBSWQsVUFBVTtRQUNaLElBQUksT0FBT04sVUFBVSxZQUFZQSxPQUFPaUIsV0FBVyxHQUFHO1lBQ3BELE9BQU9WLEVBQUU7UUFDWDtJQUNGO0lBRUEsT0FBTztBQUNUO0FBRU8sTUFBTXJCLFdBQWtELENBQzdEYyxPQUNBLEVBQUVrQixXQUFXQyxjQUFjLEVBQUVDLFNBQVMsRUFBRUMsT0FBTyxFQUFFZixRQUFRLEVBQUVDLENBQUMsRUFBRTtJQUU5RCxJQUFJVztJQUVKLElBQUksT0FBT0csU0FBU0MsUUFBUUMseUJBQXlCLFVBQ25ETCxZQUFZRyxRQUFRQyxNQUFNLENBQUNDLG9CQUFvQjtJQUNqRCxJQUFJLE9BQU9KLG1CQUFtQixVQUFVRCxZQUFZQztJQUVwRCxJQUFJbkIsU0FBU2tCLGFBQWFsQixNQUFNaUIsTUFBTSxHQUFHQyxXQUFXO1FBQ2xELE9BQU9YLEVBQUUsNkJBQTZCO1lBQUVXO1FBQVU7SUFDcEQ7SUFFQSxJQUFJbEIsU0FBU29CLGFBQWFwQixNQUFNaUIsTUFBTSxHQUFHRyxXQUFXO1FBQ2xELE9BQU9iLEVBQUUsNEJBQTRCO1lBQUVhO1FBQVU7SUFDbkQ7SUFFQSxJQUFJZCxZQUFZLENBQUNOLE9BQU87UUFDdEIsT0FBT08sRUFBRTtJQUNYO0lBRUEsT0FBTztBQUNUO0FBRU8sTUFBTXBCLFFBQWdELENBQUNhLE9BQWUsRUFBRU0sUUFBUSxFQUFFQyxDQUFDLEVBQUU7SUFDMUYsSUFBSSxBQUFDUCxTQUFTLENBQUMscUJBQXFCd0IsSUFBSSxDQUFDeEIsVUFBWSxDQUFDQSxTQUFTTSxVQUFXO1FBQ3hFLE9BQU9DLEVBQUU7SUFDWDtJQUVBLE9BQU87QUFDVDtBQUVPLE1BQU1uQixXQUFzRCxDQUNqRVksT0FDQSxFQUFFa0IsV0FBV0MsY0FBYyxFQUFFQyxTQUFTLEVBQUVDLE9BQU8sRUFBRWYsUUFBUSxFQUFFQyxDQUFDLEVBQUU7SUFFOUQsSUFBSVc7SUFFSixJQUFJLE9BQU9HLFNBQVNDLFFBQVFDLHlCQUF5QixVQUNuREwsWUFBWUcsUUFBUUMsTUFBTSxDQUFDQyxvQkFBb0I7SUFDakQsSUFBSSxPQUFPSixtQkFBbUIsVUFBVUQsWUFBWUM7SUFDcEQsSUFBSW5CLFNBQVNrQixhQUFhbEIsTUFBTWlCLE1BQU0sR0FBR0MsV0FBVztRQUNsRCxPQUFPWCxFQUFFLDZCQUE2QjtZQUFFVztRQUFVO0lBQ3BEO0lBRUEsSUFBSWxCLFNBQVNvQixhQUFhcEIsTUFBTWlCLE1BQU0sR0FBR0csV0FBVztRQUNsRCxPQUFPYixFQUFFLDRCQUE0QjtZQUFFYTtRQUFVO0lBQ25EO0lBRUEsSUFBSWQsWUFBWSxDQUFDTixPQUFPO1FBQ3RCLE9BQU9PLEVBQUU7SUFDWDtJQUVBLE9BQU87QUFDVDtBQUVPLE1BQU1sQixPQUE4QyxDQUFDVyxPQUFlLEVBQUVNLFFBQVEsRUFBRUMsQ0FBQyxFQUFFO0lBQ3hGLElBQUlELFlBQVlOLFVBQVV5QixXQUFXO1FBQ25DLE9BQU9sQixFQUFFO0lBQ1g7SUFFQSxPQUFPO0FBQ1Q7QUFFTyxNQUFNakIsT0FBdUUsQ0FDbEZVLE9BQ0EsRUFBRTBCLFNBQVMsRUFBRXBCLFFBQVEsRUFBRUMsQ0FBQyxFQUFFO0lBRTFCLElBQUlELFlBQVksQ0FBQ04sT0FBTztRQUN0QixPQUFPTyxFQUFFO0lBQ1g7SUFFQSxJQUFJbUIsY0FBY0QsV0FBVztRQUMzQixPQUFPbEIsRUFBRTtJQUNYO0lBRUEsT0FBTztBQUNUO0FBRU8sTUFBTWhCLFdBQXNELENBQ2pFUyxPQUNBLEVBQUVNLFFBQVEsRUFBRUMsQ0FBQyxFQUFFO0lBRWYsSUFBSSxBQUFDUCxTQUFTLE9BQU9BLFVBQVUsYUFBZU0sWUFBWSxPQUFPTixVQUFVLFdBQVk7UUFDckYsT0FBT08sRUFBRTtJQUNYO0lBRUEsT0FBTztBQUNUO0FBRU8sTUFBTWYsT0FBOEMsQ0FBQ1EsT0FBTyxFQUFFTSxRQUFRLEVBQUVDLENBQUMsRUFBRTtJQUNoRixJQUFJUCxTQUFTLENBQUNlLE1BQU1ZLEtBQUtDLEtBQUssQ0FBQzVCLE1BQU02QixRQUFRLE1BQU07UUFDakQsdUJBQXVCLEdBQ3ZCLE9BQU87SUFDVDtJQUVBLElBQUk3QixPQUFPO1FBQ1QsT0FBT08sRUFBRSwyQkFBMkI7WUFBRVA7UUFBTTtJQUM5QztJQUVBLElBQUlNLFVBQVU7UUFDWixPQUFPQyxFQUFFO0lBQ1g7SUFFQSxPQUFPO0FBQ1Q7QUFFQSxNQUFNdUIsd0JBQWtDLE9BQ3RDOUIsT0FDQSxFQUFFK0IsRUFBRSxFQUFFQyxJQUFJLEVBQUVDLGFBQWEsRUFBRVosT0FBTyxFQUFFYSxVQUFVLEVBQUVDLFdBQVcsRUFBRTVCLENBQUMsRUFBRTZCLElBQUksRUFBRTtJQUV0RSxJQUFJLENBQUNDLGtCQUFTLElBQUksT0FBT0osa0JBQWtCLGVBQWVqQyxPQUFPO1FBQy9ELE1BQU1zQyxVQUVGLENBQUM7UUFFTCxNQUFNQyxjQUFjLE9BQU9MLGVBQWUsV0FBVztZQUFDQTtTQUFXLEdBQUdBO1FBQ3BFLE1BQU1NLFNBQVMvQixNQUFNQyxPQUFPLENBQUNWLFNBQVNBLFFBQVE7WUFBQ0E7U0FBTTtRQUVyRCxNQUFNeUMsUUFBUUMsR0FBRyxDQUNmSCxZQUFZSSxHQUFHLENBQUMsT0FBT0M7WUFDckIsTUFBTUMsZUFDSixPQUFPWixrQkFBa0IsYUFDckIsTUFBTUEsY0FBYztnQkFDbEJGO2dCQUNBQztnQkFDQUUsWUFBWVU7Z0JBQ1pUO2dCQUNBQztZQUNGLEtBQ0FIO1lBRU4sTUFBTWEsV0FBZ0MsRUFBRTtZQUV4Q04sT0FBT08sT0FBTyxDQUFDLENBQUNDO2dCQUNkLElBQUksT0FBT0EsUUFBUSxZQUFZQSxLQUFLaEQsT0FBTztvQkFDekM4QyxTQUFTRyxJQUFJLENBQUNELElBQUloRCxLQUFLO2dCQUN6QjtnQkFFQSxJQUFJLE9BQU9nRCxRQUFRLFlBQVksT0FBT0EsUUFBUSxVQUFVO29CQUN0REYsU0FBU0csSUFBSSxDQUFDRDtnQkFDaEI7WUFDRjtZQUVBLE1BQU1FLFNBQVMsTUFBTTdCLFFBQVE4QixJQUFJLENBQUM7Z0JBQ2hDUDtnQkFDQVEsT0FBTztnQkFDUEMsT0FBTztnQkFDUEMsWUFBWTtnQkFDWkMsT0FBTztvQkFDTEMsS0FBSzt3QkFBQzs0QkFBRXpCLElBQUk7Z0NBQUUwQixJQUFJWDs0QkFBUzt3QkFBRTt3QkFBR0Q7cUJBQWE7Z0JBQy9DO1lBQ0Y7WUFFQVAsT0FBTyxDQUFDTSxXQUFXLEdBQUdNLE9BQU9RLElBQUksQ0FBQ2YsR0FBRyxDQUFDLENBQUNnQixNQUFRQSxJQUFJNUIsRUFBRTtRQUN2RDtRQUdGLE1BQU02Qix1QkFBdUJwQixPQUFPcUIsTUFBTSxDQUFDLENBQUNiO1lBQzFDLElBQUlKO1lBQ0osSUFBSWtCO1lBRUosSUFBSSxPQUFPNUIsZUFBZSxVQUFVO2dCQUNsQ1UsYUFBYVY7Z0JBRWIsSUFBSSxPQUFPYyxRQUFRLFlBQVksT0FBT0EsUUFBUSxVQUFVO29CQUN0RGMsY0FBY2Q7Z0JBQ2hCO1lBQ0Y7WUFFQSxJQUFJdkMsTUFBTUMsT0FBTyxDQUFDd0IsZUFBZSxPQUFPYyxRQUFRLFlBQVlBLEtBQUtkLFlBQVk7Z0JBQzNFVSxhQUFhSSxJQUFJZCxVQUFVO2dCQUMzQjRCLGNBQWNkLElBQUloRCxLQUFLO1lBQ3pCO1lBRUEsT0FBT3NDLE9BQU8sQ0FBQ00sV0FBVyxDQUFDbUIsT0FBTyxDQUFDRCxpQkFBaUIsQ0FBQztRQUN2RDtRQUVBLElBQUlGLHFCQUFxQjNDLE1BQU0sR0FBRyxHQUFHO1lBQ25DLE9BQU8yQyxxQkFBcUJJLE1BQU0sQ0FBQyxDQUFDQyxLQUFLQyxTQUFTQztnQkFDaEQsT0FBTyxDQUFDLEVBQUVGLElBQUksQ0FBQyxFQUFFRyxLQUFLQyxTQUFTLENBQUNILFNBQVMsRUFDdkNOLHFCQUFxQjNDLE1BQU0sS0FBS2tELElBQUksSUFBSSxNQUFNLEdBQy9DLENBQUMsQ0FBQztZQUNMLEdBQUc1RCxFQUFFO1FBQ1A7UUFFQSxPQUFPO0lBQ1Q7SUFFQSxPQUFPO0FBQ1Q7QUFFTyxNQUFNZCxTQUFrRCxDQUFDTyxPQUFlc0M7SUFDN0UsSUFBSSxDQUFDdEMsU0FBU3NDLFFBQVFoQyxRQUFRLEVBQUU7UUFDOUIsT0FBT2dDLFFBQVEvQixDQUFDLENBQUM7SUFDbkI7SUFFQSxJQUFJLENBQUM4QixrQkFBUyxJQUFJLE9BQU9yQyxVQUFVLGVBQWVBLFVBQVUsTUFBTTtRQUNoRSxNQUFNc0UsVUFBVWhDLFFBQVFqQixPQUFPLENBQUNrQixXQUFXLENBQUNELFFBQVFKLFVBQVUsQ0FBQyxDQUFDWixNQUFNLENBQUNpRCxNQUFNLENBQUNwQixJQUFJLENBQ2hGLENBQUNxQixRQUFVQyxJQUFBQSx1QkFBZ0IsRUFBQ0QsVUFBVUEsTUFBTUUsSUFBSSxLQUFLO1FBRXZELE1BQU1DLE9BQU9DLElBQUFBLG9CQUFTLEVBQUNOO1FBRXZCLElBQUksQ0FBQ08sSUFBQUEsb0JBQVMsRUFBQzdFLE9BQU8yRSxPQUFPO1lBQzNCLE9BQU9yQyxRQUFRL0IsQ0FBQyxDQUFDO1FBQ25CO0lBQ0Y7SUFFQSxPQUFPdUIsc0JBQXNCOUIsT0FBT3NDO0FBQ3RDO0FBRU8sTUFBTTVDLGVBQThELE9BQ3pFTSxPQUNBc0M7SUFFQSxNQUFNLEVBQUVuQyxPQUFPLEVBQUVFLE9BQU8sRUFBRWdCLE9BQU8sRUFBRWEsVUFBVSxFQUFFNUIsUUFBUSxFQUFFQyxDQUFDLEVBQUUsR0FBRytCO0lBRS9ELElBQUksQUFBQyxDQUFBLENBQUN0QyxTQUFVUyxNQUFNQyxPQUFPLENBQUNWLFVBQVVBLE1BQU1pQixNQUFNLEtBQUssQ0FBQyxLQUFNWCxVQUFVO1FBQ3hFLE9BQU9nQyxRQUFRL0IsQ0FBQyxDQUFDO0lBQ25CO0lBRUEsSUFBSUUsTUFBTUMsT0FBTyxDQUFDVixRQUFRO1FBQ3hCLElBQUlLLFdBQVdMLE1BQU1pQixNQUFNLEdBQUdaLFNBQVM7WUFDckMsT0FBT0UsRUFBRSwwQkFBMEI7Z0JBQUVTLE9BQU9ULEVBQUU7Z0JBQVNILEtBQUtDO2dCQUFTTCxPQUFPQSxNQUFNaUIsTUFBTTtZQUFDO1FBQzNGO1FBRUEsSUFBSWQsV0FBV0gsTUFBTWlCLE1BQU0sR0FBR2QsU0FBUztZQUNyQyxPQUFPSSxFQUFFLDZCQUE2QjtnQkFBRVMsT0FBT1QsRUFBRTtnQkFBU0wsS0FBS0M7Z0JBQVNILE9BQU9BLE1BQU1pQixNQUFNO1lBQUM7UUFDOUY7SUFDRjtJQUVBLElBQUksQ0FBQ29CLGtCQUFTLElBQUksT0FBT3JDLFVBQVUsZUFBZUEsVUFBVSxNQUFNO1FBQ2hFLE1BQU13QyxTQUFTL0IsTUFBTUMsT0FBTyxDQUFDVixTQUFTQSxRQUFRO1lBQUNBO1NBQU07UUFFckQsTUFBTTRELHVCQUF1QnBCLE9BQU9xQixNQUFNLENBQUMsQ0FBQ2I7WUFDMUMsSUFBSUo7WUFDSixJQUFJa0I7WUFFSixJQUFJLE9BQU81QixlQUFlLFVBQVU7Z0JBQ2xDVSxhQUFhVjtnQkFFYixZQUFZO2dCQUNaLElBQUljLEtBQUs7b0JBQ1BjLGNBQWNkO2dCQUNoQjtZQUNGO1lBRUEsSUFBSXZDLE1BQU1DLE9BQU8sQ0FBQ3dCLGVBQWUsT0FBT2MsUUFBUSxZQUFZQSxLQUFLZCxZQUFZO2dCQUMzRVUsYUFBYUksSUFBSWQsVUFBVTtnQkFDM0I0QixjQUFjZCxJQUFJaEQsS0FBSztZQUN6QjtZQUVBLElBQUk4RCxnQkFBZ0IsTUFBTSxPQUFPO1lBRWpDLE1BQU1RLFVBQVVqRCxRQUFRa0IsV0FBVyxDQUFDSyxXQUFXLEVBQUV0QixRQUFRaUQsUUFBUXBCLEtBQy9ELENBQUNxQixRQUFVQyxJQUFBQSx1QkFBZ0IsRUFBQ0QsVUFBVUEsTUFBTUUsSUFBSSxLQUFLO1lBRXZELElBQUlDO1lBRUosSUFBSUwsU0FBUztnQkFDWEssT0FBT0wsUUFBUUssSUFBSSxLQUFLLFdBQVcsV0FBVztZQUNoRCxPQUFPO2dCQUNMQSxPQUFPO1lBQ1Q7WUFFQSxPQUFPLENBQUNFLElBQUFBLG9CQUFTLEVBQUNmLGFBQWFhO1FBQ2pDO1FBRUEsSUFBSWYscUJBQXFCM0MsTUFBTSxHQUFHLEdBQUc7WUFDbkMsT0FBTyxDQUFDLGlEQUFpRCxFQUFFMkMscUJBQ3hEakIsR0FBRyxDQUFDLENBQUNzQixLQUFLQztnQkFDVCxPQUFPLENBQUMsRUFBRUQsSUFBSSxDQUFDLEVBQUVHLEtBQUtDLFNBQVMsQ0FBQ0gsU0FBUyxDQUFDO1lBQzVDLEdBQ0NZLElBQUksQ0FBQyxNQUFNLENBQUM7UUFDakI7SUFDRjtJQUVBLE9BQU9oRCxzQkFBc0I5QixPQUFPc0M7QUFDdEM7QUFFTyxNQUFNM0MsUUFBZ0QsQ0FDM0RLLE9BQ0EsRUFBRUcsT0FBTyxFQUFFRSxPQUFPLEVBQUVDLFFBQVEsRUFBRUMsQ0FBQyxFQUFFO0lBRWpDLE1BQU13RSxjQUFjdEUsTUFBTUMsT0FBTyxDQUFDVixTQUFTQSxNQUFNaUIsTUFBTSxHQUFHO0lBRTFELElBQUlaLFdBQVcwRSxjQUFjMUUsU0FBUztRQUNwQyxPQUFPRSxFQUFFLDhCQUE4QjtZQUFFeUUsT0FBTzNFO1lBQVNXLE9BQU9ULEVBQUU7UUFBUTtJQUM1RTtJQUVBLElBQUlKLFdBQVc0RSxjQUFjNUUsU0FBUztRQUNwQyxPQUFPSSxFQUFFLGlDQUFpQztZQUFFeUUsT0FBTzdFO1lBQVNhLE9BQU9ULEVBQUU7UUFBUTtJQUMvRTtJQUVBLElBQUksQ0FBQ3dFLGVBQWV6RSxVQUFVO1FBQzVCLE9BQU9DLEVBQUUsOEJBQThCO1lBQUV5RSxPQUFPO1lBQUdoRSxPQUFPVCxFQUFFO1FBQU87SUFDckU7SUFFQSxPQUFPO0FBQ1Q7QUFFTyxNQUFNWCxTQUFrRCxDQUM3REksT0FDQSxFQUFFQyxPQUFPLEVBQUVxQyxPQUFPLEVBQUVoQyxRQUFRLEVBQUVDLENBQUMsRUFBRTtJQUVqQyxJQUNFRSxNQUFNQyxPQUFPLENBQUNWLFVBQ2RBLE1BQU1pRixJQUFJLENBQ1IsQ0FBQ0MsUUFDQyxDQUFDNUMsUUFBUTJDLElBQUksQ0FDWCxDQUFDRSxTQUFXQSxXQUFXRCxTQUFVLE9BQU9DLFdBQVcsWUFBWUEsUUFBUW5GLFVBQVVrRixTQUd2RjtRQUNBLE9BQU8zRSxFQUFFO0lBQ1g7SUFFQSxJQUNFLE9BQU9QLFVBQVUsWUFDakIsQ0FBQ3NDLFFBQVEyQyxJQUFJLENBQ1gsQ0FBQ0UsU0FBV0EsV0FBV25GLFNBQVUsT0FBT21GLFdBQVcsWUFBWUEsT0FBT25GLEtBQUssS0FBS0EsUUFFbEY7UUFDQSxPQUFPTyxFQUFFO0lBQ1g7SUFFQSxJQUNFRCxZQUNDLENBQUEsT0FBT04sVUFBVSxlQUNoQkEsVUFBVSxRQUNUQyxXQUFXUSxNQUFNQyxPQUFPLENBQUNWLFVBQVUsQUFBQ0EsT0FBY2lCLFdBQVcsQ0FBQyxHQUNqRTtRQUNBLE9BQU9WLEVBQUU7SUFDWDtJQUVBLE9BQU87QUFDVDtBQUVPLE1BQU1WLFFBQWdELENBQUNHLE9BQU8sRUFBRXNDLE9BQU8sRUFBRWhDLFFBQVEsRUFBRUMsQ0FBQyxFQUFFO0lBQzNGLElBQUlQLE9BQU87UUFDVCxNQUFNb0YscUJBQXFCOUMsUUFBUTJDLElBQUksQ0FDckMsQ0FBQ0UsU0FBV0EsV0FBV25GLFNBQVUsT0FBT21GLFdBQVcsWUFBWUEsT0FBT25GLEtBQUssS0FBS0E7UUFFbEYsT0FBT29GLHNCQUFzQjdFLEVBQUU7SUFDakM7SUFFQSxPQUFPRCxXQUFXQyxFQUFFLHlCQUF5QjtBQUMvQztBQUVPLE1BQU1ULFNBQWlELENBQzVERSxPQUNBLEVBQUVHLE9BQU8sRUFBRUUsT0FBTyxFQUFFQyxRQUFRLEVBQUVDLENBQUMsRUFBRTtJQUVqQyxNQUFNd0UsY0FBY3RFLE1BQU1DLE9BQU8sQ0FBQ1YsU0FBU0EsTUFBTWlCLE1BQU0sR0FBRztJQUUxRCxJQUFJWixXQUFXMEUsY0FBYzFFLFNBQVM7UUFDcEMsT0FBT0UsRUFBRSw4QkFBOEI7WUFBRXlFLE9BQU8zRTtZQUFTVyxPQUFPVCxFQUFFO1FBQVE7SUFDNUU7SUFFQSxJQUFJSixXQUFXNEUsY0FBYzVFLFNBQVM7UUFDcEMsT0FBT0ksRUFBRSxpQ0FBaUM7WUFBRXlFLE9BQU83RTtZQUFTYSxPQUFPVCxFQUFFO1FBQVE7SUFDL0U7SUFFQSxJQUFJLENBQUN3RSxlQUFlekUsVUFBVTtRQUM1QixPQUFPQyxFQUFFLDhCQUE4QjtZQUFFeUUsT0FBTztZQUFHaEUsT0FBT1QsRUFBRTtRQUFPO0lBQ3JFO0lBRUEsT0FBTztBQUNUO0FBRU8sTUFBTVIsUUFBZ0QsQ0FDM0RDLFFBQTRDO0lBQUM7SUFBSTtDQUFHLEVBQ3BELEVBQUVNLFFBQVEsRUFBRUMsQ0FBQyxFQUFFO0lBRWYsTUFBTThFLE1BQU14RSxXQUFXeUUsT0FBT3RGLEtBQUssQ0FBQyxFQUFFO0lBQ3RDLE1BQU11RixNQUFNMUUsV0FBV3lFLE9BQU90RixLQUFLLENBQUMsRUFBRTtJQUN0QyxJQUNFTSxZQUNDLENBQUEsQUFBQ04sS0FBSyxDQUFDLEVBQUUsSUFBSUEsS0FBSyxDQUFDLEVBQUUsSUFBSSxPQUFPcUYsUUFBUSxZQUFZLE9BQU9FLFFBQVEsWUFDbEV6RSxPQUFPQyxLQUFLLENBQUNzRSxRQUNidkUsT0FBT0MsS0FBSyxDQUFDd0UsUUFDWjlFLE1BQU1DLE9BQU8sQ0FBQ1YsVUFBVUEsTUFBTWlCLE1BQU0sS0FBSyxDQUFDLEdBQzdDO1FBQ0EsT0FBT1YsRUFBRTtJQUNYO0lBRUEsSUFBSSxBQUFDUCxLQUFLLENBQUMsRUFBRSxJQUFJYyxPQUFPQyxLQUFLLENBQUNzRSxRQUFVckYsS0FBSyxDQUFDLEVBQUUsSUFBSWMsT0FBT0MsS0FBSyxDQUFDd0UsTUFBTztRQUN0RSxPQUFPaEYsRUFBRTtJQUNYO0lBRUEsT0FBTztBQUNUO01BRUEsV0FBZTtJQUNiWjtJQUNBRztJQUNBUDtJQUNBRjtJQUNBRztJQUNBTDtJQUNBRztJQUNBTjtJQUNBRTtJQUNBYTtJQUNBRjtJQUNBSDtJQUNBRTtJQUNBWDtJQUNBRztJQUNBSztBQUNGIn0=
@@ -0,0 +1,3 @@
1
+ import type { Field } from '../fields/config/types';
2
+ export declare const fieldSchemaToJSON: (fields: Field[]) => Record<string, unknown>[];
3
+ //# sourceMappingURL=fieldSchemaToJSON.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fieldSchemaToJSON.d.ts","sourceRoot":"","sources":["../../src/utilities/fieldSchemaToJSON.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAA;AAEnD,eAAO,MAAM,iBAAiB,WAAY,KAAK,EAAE,KAAG,OAAO,MAAM,EAAE,OAAO,CAAC,EA6E1E,CAAA"}
@@ -0,0 +1,77 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "fieldSchemaToJSON", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return fieldSchemaToJSON;
9
+ }
10
+ });
11
+ const fieldSchemaToJSON = (fields)=>{
12
+ return fields.reduce((acc, field)=>{
13
+ let result = acc;
14
+ switch(field.type){
15
+ case 'group':
16
+ case 'array':
17
+ acc.push({
18
+ name: field.name,
19
+ fields: fieldSchemaToJSON(field.fields),
20
+ type: field.type
21
+ });
22
+ break;
23
+ case 'blocks':
24
+ acc.push({
25
+ name: field.name,
26
+ blocks: field.blocks.reduce((acc, block)=>{
27
+ acc[block.slug] = {
28
+ fields: fieldSchemaToJSON(block.fields)
29
+ };
30
+ return acc;
31
+ }, {}),
32
+ type: field.type
33
+ });
34
+ break;
35
+ case 'row':
36
+ case 'collapsible':
37
+ result = result.concat(fieldSchemaToJSON(field.fields));
38
+ break;
39
+ case 'tabs':
40
+ {
41
+ let tabFields = [];
42
+ field.tabs.forEach((tab)=>{
43
+ if ('name' in tab) {
44
+ tabFields.push({
45
+ name: tab.name,
46
+ fields: fieldSchemaToJSON(tab.fields),
47
+ type: 'tab'
48
+ });
49
+ return;
50
+ }
51
+ tabFields = tabFields.concat(fieldSchemaToJSON(tab.fields));
52
+ });
53
+ result = result.concat(tabFields);
54
+ break;
55
+ }
56
+ case 'relationship':
57
+ case 'upload':
58
+ acc.push({
59
+ name: field.name,
60
+ hasMany: 'hasMany' in field ? Boolean(field.hasMany) : false,
61
+ relationTo: field.relationTo,
62
+ type: field.type
63
+ });
64
+ break;
65
+ default:
66
+ if ('name' in field) {
67
+ acc.push({
68
+ name: field.name,
69
+ type: field.type
70
+ });
71
+ }
72
+ }
73
+ return result;
74
+ }, []);
75
+ };
76
+
77
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvZmllbGRTY2hlbWFUb0pTT04udHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBGaWVsZCB9IGZyb20gJy4uL2ZpZWxkcy9jb25maWcvdHlwZXMnXG5cbmV4cG9ydCBjb25zdCBmaWVsZFNjaGVtYVRvSlNPTiA9IChmaWVsZHM6IEZpZWxkW10pOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPltdID0+IHtcbiAgcmV0dXJuIGZpZWxkcy5yZWR1Y2UoKGFjYywgZmllbGQpID0+IHtcbiAgICBsZXQgcmVzdWx0ID0gYWNjXG5cbiAgICBzd2l0Y2ggKGZpZWxkLnR5cGUpIHtcbiAgICAgIGNhc2UgJ2dyb3VwJzpcbiAgICAgIGNhc2UgJ2FycmF5JzpcbiAgICAgICAgYWNjLnB1c2goe1xuICAgICAgICAgIG5hbWU6IGZpZWxkLm5hbWUsXG4gICAgICAgICAgZmllbGRzOiBmaWVsZFNjaGVtYVRvSlNPTihmaWVsZC5maWVsZHMpLFxuICAgICAgICAgIHR5cGU6IGZpZWxkLnR5cGUsXG4gICAgICAgIH0pXG4gICAgICAgIGJyZWFrXG5cbiAgICAgIGNhc2UgJ2Jsb2Nrcyc6XG4gICAgICAgIGFjYy5wdXNoKHtcbiAgICAgICAgICBuYW1lOiBmaWVsZC5uYW1lLFxuICAgICAgICAgIGJsb2NrczogZmllbGQuYmxvY2tzLnJlZHVjZSgoYWNjLCBibG9jaykgPT4ge1xuICAgICAgICAgICAgYWNjW2Jsb2NrLnNsdWddID0ge1xuICAgICAgICAgICAgICBmaWVsZHM6IGZpZWxkU2NoZW1hVG9KU09OKGJsb2NrLmZpZWxkcyksXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiBhY2NcbiAgICAgICAgICB9LCB7fSksXG4gICAgICAgICAgdHlwZTogZmllbGQudHlwZSxcbiAgICAgICAgfSlcbiAgICAgICAgYnJlYWtcblxuICAgICAgY2FzZSAncm93JzpcbiAgICAgIGNhc2UgJ2NvbGxhcHNpYmxlJzpcbiAgICAgICAgcmVzdWx0ID0gcmVzdWx0LmNvbmNhdChmaWVsZFNjaGVtYVRvSlNPTihmaWVsZC5maWVsZHMpKVxuXG4gICAgICAgIGJyZWFrXG5cbiAgICAgIGNhc2UgJ3RhYnMnOiB7XG4gICAgICAgIGxldCB0YWJGaWVsZHMgPSBbXVxuXG4gICAgICAgIGZpZWxkLnRhYnMuZm9yRWFjaCgodGFiKSA9PiB7XG4gICAgICAgICAgaWYgKCduYW1lJyBpbiB0YWIpIHtcbiAgICAgICAgICAgIHRhYkZpZWxkcy5wdXNoKHtcbiAgICAgICAgICAgICAgbmFtZTogdGFiLm5hbWUsXG4gICAgICAgICAgICAgIGZpZWxkczogZmllbGRTY2hlbWFUb0pTT04odGFiLmZpZWxkcyksXG4gICAgICAgICAgICAgIHR5cGU6ICd0YWInLFxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIHJldHVyblxuICAgICAgICAgIH1cblxuICAgICAgICAgIHRhYkZpZWxkcyA9IHRhYkZpZWxkcy5jb25jYXQoZmllbGRTY2hlbWFUb0pTT04odGFiLmZpZWxkcykpXG4gICAgICAgIH0pXG5cbiAgICAgICAgcmVzdWx0ID0gcmVzdWx0LmNvbmNhdCh0YWJGaWVsZHMpXG5cbiAgICAgICAgYnJlYWtcbiAgICAgIH1cblxuICAgICAgY2FzZSAncmVsYXRpb25zaGlwJzpcbiAgICAgIGNhc2UgJ3VwbG9hZCc6XG4gICAgICAgIGFjYy5wdXNoKHtcbiAgICAgICAgICBuYW1lOiBmaWVsZC5uYW1lLFxuICAgICAgICAgIGhhc01hbnk6ICdoYXNNYW55JyBpbiBmaWVsZCA/IEJvb2xlYW4oZmllbGQuaGFzTWFueSkgOiBmYWxzZSwgLy8gVE9ETzogdHlwZSB0aGlzXG4gICAgICAgICAgcmVsYXRpb25UbzogZmllbGQucmVsYXRpb25UbyxcbiAgICAgICAgICB0eXBlOiBmaWVsZC50eXBlLFxuICAgICAgICB9KVxuXG4gICAgICAgIGJyZWFrXG5cbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIGlmICgnbmFtZScgaW4gZmllbGQpIHtcbiAgICAgICAgICBhY2MucHVzaCh7XG4gICAgICAgICAgICBuYW1lOiBmaWVsZC5uYW1lLFxuICAgICAgICAgICAgdHlwZTogZmllbGQudHlwZSxcbiAgICAgICAgICB9KVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHJlc3VsdFxuICB9LCBbXSlcbn1cbiJdLCJuYW1lcyI6WyJmaWVsZFNjaGVtYVRvSlNPTiIsImZpZWxkcyIsInJlZHVjZSIsImFjYyIsImZpZWxkIiwicmVzdWx0IiwidHlwZSIsInB1c2giLCJuYW1lIiwiYmxvY2tzIiwiYmxvY2siLCJzbHVnIiwiY29uY2F0IiwidGFiRmllbGRzIiwidGFicyIsImZvckVhY2giLCJ0YWIiLCJoYXNNYW55IiwiQm9vbGVhbiIsInJlbGF0aW9uVG8iXSwibWFwcGluZ3MiOiI7Ozs7K0JBRWFBOzs7ZUFBQUE7OztBQUFOLE1BQU1BLG9CQUFvQixDQUFDQztJQUNoQyxPQUFPQSxPQUFPQyxNQUFNLENBQUMsQ0FBQ0MsS0FBS0M7UUFDekIsSUFBSUMsU0FBU0Y7UUFFYixPQUFRQyxNQUFNRSxJQUFJO1lBQ2hCLEtBQUs7WUFDTCxLQUFLO2dCQUNISCxJQUFJSSxJQUFJLENBQUM7b0JBQ1BDLE1BQU1KLE1BQU1JLElBQUk7b0JBQ2hCUCxRQUFRRCxrQkFBa0JJLE1BQU1ILE1BQU07b0JBQ3RDSyxNQUFNRixNQUFNRSxJQUFJO2dCQUNsQjtnQkFDQTtZQUVGLEtBQUs7Z0JBQ0hILElBQUlJLElBQUksQ0FBQztvQkFDUEMsTUFBTUosTUFBTUksSUFBSTtvQkFDaEJDLFFBQVFMLE1BQU1LLE1BQU0sQ0FBQ1AsTUFBTSxDQUFDLENBQUNDLEtBQUtPO3dCQUNoQ1AsR0FBRyxDQUFDTyxNQUFNQyxJQUFJLENBQUMsR0FBRzs0QkFDaEJWLFFBQVFELGtCQUFrQlUsTUFBTVQsTUFBTTt3QkFDeEM7d0JBRUEsT0FBT0U7b0JBQ1QsR0FBRyxDQUFDO29CQUNKRyxNQUFNRixNQUFNRSxJQUFJO2dCQUNsQjtnQkFDQTtZQUVGLEtBQUs7WUFDTCxLQUFLO2dCQUNIRCxTQUFTQSxPQUFPTyxNQUFNLENBQUNaLGtCQUFrQkksTUFBTUgsTUFBTTtnQkFFckQ7WUFFRixLQUFLO2dCQUFRO29CQUNYLElBQUlZLFlBQVksRUFBRTtvQkFFbEJULE1BQU1VLElBQUksQ0FBQ0MsT0FBTyxDQUFDLENBQUNDO3dCQUNsQixJQUFJLFVBQVVBLEtBQUs7NEJBQ2pCSCxVQUFVTixJQUFJLENBQUM7Z0NBQ2JDLE1BQU1RLElBQUlSLElBQUk7Z0NBQ2RQLFFBQVFELGtCQUFrQmdCLElBQUlmLE1BQU07Z0NBQ3BDSyxNQUFNOzRCQUNSOzRCQUNBO3dCQUNGO3dCQUVBTyxZQUFZQSxVQUFVRCxNQUFNLENBQUNaLGtCQUFrQmdCLElBQUlmLE1BQU07b0JBQzNEO29CQUVBSSxTQUFTQSxPQUFPTyxNQUFNLENBQUNDO29CQUV2QjtnQkFDRjtZQUVBLEtBQUs7WUFDTCxLQUFLO2dCQUNIVixJQUFJSSxJQUFJLENBQUM7b0JBQ1BDLE1BQU1KLE1BQU1JLElBQUk7b0JBQ2hCUyxTQUFTLGFBQWFiLFFBQVFjLFFBQVFkLE1BQU1hLE9BQU8sSUFBSTtvQkFDdkRFLFlBQVlmLE1BQU1lLFVBQVU7b0JBQzVCYixNQUFNRixNQUFNRSxJQUFJO2dCQUNsQjtnQkFFQTtZQUVGO2dCQUNFLElBQUksVUFBVUYsT0FBTztvQkFDbkJELElBQUlJLElBQUksQ0FBQzt3QkFDUEMsTUFBTUosTUFBTUksSUFBSTt3QkFDaEJGLE1BQU1GLE1BQU1FLElBQUk7b0JBQ2xCO2dCQUNGO1FBQ0o7UUFFQSxPQUFPRDtJQUNULEdBQUcsRUFBRTtBQUNQIn0=
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "payload",
3
- "version": "2.0.0-beta.12",
3
+ "version": "2.0.0-beta.15",
4
4
  "description": "Node, React and MongoDB Headless CMS and Application Framework",
5
5
  "license": "MIT",
6
6
  "main": "./dist/index.js",