@comet/cms-admin 8.0.0-beta.1 → 8.0.0-beta.2

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 (186) hide show
  1. package/lib/blocks/DamVideoBlock.d.ts.map +1 -1
  2. package/lib/blocks/DamVideoBlock.js +8 -5
  3. package/lib/blocks/InternalLinkBlock.d.ts.map +1 -1
  4. package/lib/blocks/PixelImageBlock.d.ts.map +1 -1
  5. package/lib/blocks/PixelImageBlock.js +18 -16
  6. package/lib/blocks/SvgImageBlock.d.ts.map +1 -1
  7. package/lib/blocks/SvgImageBlock.js +17 -15
  8. package/lib/blocks/context/BlockContext.d.ts +6 -1
  9. package/lib/blocks/context/BlockContext.d.ts.map +1 -1
  10. package/lib/blocks/context/BlockContext.js +2 -2
  11. package/lib/blocks/context/BlockContextProvider.d.ts +2 -1
  12. package/lib/blocks/context/BlockContextProvider.d.ts.map +1 -1
  13. package/lib/blocks/context/BlockContextProvider.js +1 -1
  14. package/lib/blocks/context/useBlockContext.d.ts +2 -1
  15. package/lib/blocks/context/useBlockContext.d.ts.map +1 -1
  16. package/lib/blocks/context/useBlockContext.js +16 -1
  17. package/lib/blocks/createLinkBlock.js +1 -1
  18. package/lib/blocks/createSeoBlock.js +4 -4
  19. package/lib/blocks/createTextImageBlock.d.ts.map +1 -1
  20. package/lib/blocks/createTextImageBlock.js +4 -3
  21. package/lib/blocks/factories/createCompositeBlock.d.ts.map +1 -1
  22. package/lib/blocks/factories/createCompositeBlock.js +3 -1
  23. package/lib/blocks/factories/createOneOfBlock.js +7 -5
  24. package/lib/blocks/helpers/composeBlocks/composeBlocks.d.ts +3 -2
  25. package/lib/blocks/helpers/composeBlocks/composeBlocks.d.ts.map +1 -1
  26. package/lib/blocks/image/EditImageDialog.js +7 -6
  27. package/lib/blocks/rte/extension/CmsLink/createCmsLinkToolbarButton.d.ts.map +1 -1
  28. package/lib/blocks/rte/extension/CmsLink/createCmsLinkToolbarButton.js +33 -24
  29. package/lib/blocks/seo/useSeoTagGeneration.js +4 -4
  30. package/lib/blocks/types.d.ts +3 -3
  31. package/lib/blocks/types.d.ts.map +1 -1
  32. package/lib/blocks/types.js +0 -1
  33. package/lib/common/DropdownMenuItem.sc.d.ts +1 -1
  34. package/lib/common/SearchInput.js +9 -3
  35. package/lib/common/header/about/build-information/buildInformation.d.ts +6 -0
  36. package/lib/common/header/about/build-information/buildInformation.d.ts.map +1 -0
  37. package/lib/common/header/about/build-information/buildInformation.js +5 -0
  38. package/lib/common/header/about/build-information/useBuildInformation.d.ts +1 -1
  39. package/lib/common/header/about/build-information/useBuildInformation.d.ts.map +1 -1
  40. package/lib/common/header/about/build-information/useBuildInformation.js +2 -3
  41. package/lib/common/useSaveState.d.ts.map +1 -1
  42. package/lib/common/useSaveState.js +18 -13
  43. package/lib/config/CometConfigContext.d.ts +28 -0
  44. package/lib/config/CometConfigContext.d.ts.map +1 -0
  45. package/lib/{blocks/CmsBlockContextProvider.js → config/CometConfigContext.js} +31 -13
  46. package/lib/contentLanguage/contentLanguageConfig.d.ts +6 -0
  47. package/lib/contentLanguage/contentLanguageConfig.d.ts.map +1 -0
  48. package/lib/contentLanguage/contentLanguageConfig.js +18 -0
  49. package/lib/contentLanguage/useContentLanguage.d.ts +7 -0
  50. package/lib/contentLanguage/useContentLanguage.d.ts.map +1 -0
  51. package/lib/contentLanguage/useContentLanguage.js +13 -0
  52. package/lib/cronJobs/CronJobsGrid.d.ts.map +1 -1
  53. package/lib/cronJobs/CronJobsGrid.js +1 -0
  54. package/lib/cronJobs/JobsGrid.d.ts.map +1 -1
  55. package/lib/cronJobs/JobsGrid.js +1 -0
  56. package/lib/dam/DamPage.js +3 -3
  57. package/lib/dam/DataGrid/DamContextMenu.js +4 -3
  58. package/lib/dam/DataGrid/FolderDataGrid.js +2 -2
  59. package/lib/dam/DataGrid/fileUpload/useDamFileUpload.d.ts.map +1 -1
  60. package/lib/dam/DataGrid/fileUpload/useDamFileUpload.js +11 -5
  61. package/lib/dam/DataGrid/label/DamItemLabelColumn.d.ts.map +1 -1
  62. package/lib/dam/DataGrid/label/DamItemLabelColumn.js +26 -23
  63. package/lib/dam/FileForm/Duplicates.d.ts.map +1 -1
  64. package/lib/dam/FileForm/Duplicates.js +5 -9
  65. package/lib/dam/FileForm/EditFile.d.ts.map +1 -1
  66. package/lib/dam/FileForm/EditFile.js +9 -9
  67. package/lib/dam/FileForm/FileSettingsFields.js +8 -8
  68. package/lib/dam/FileForm/ReplaceFileButton.d.ts.map +1 -1
  69. package/lib/dam/FileForm/ReplaceFileButton.js +8 -4
  70. package/lib/dam/MoveDamItemDialog/MoveDamItemDialog.d.ts.map +1 -1
  71. package/lib/dam/MoveDamItemDialog/MoveDamItemDialog.js +2 -3
  72. package/lib/dam/blocks/DamFileDownloadLinkBlock.d.ts.map +1 -1
  73. package/lib/dam/config/DamScopeProvider.js +2 -2
  74. package/lib/dam/config/{DamConfigContext.d.ts → damConfig.d.ts} +5 -2
  75. package/lib/dam/config/damConfig.d.ts.map +1 -0
  76. package/lib/dam/config/damConfig.js +14 -0
  77. package/lib/dam/config/useDamAcceptedMimeTypes.js +2 -2
  78. package/lib/dashboard/widgets/LatestBuildsDashboardWidget.js +2 -2
  79. package/lib/dependencies/DependencyList.d.ts.map +1 -1
  80. package/lib/dependencies/DependencyList.js +4 -2
  81. package/lib/dependencies/DependencyList.sc.d.ts +1 -1
  82. package/lib/dependencies/dependenciesConfig.d.ts +10 -0
  83. package/lib/dependencies/dependenciesConfig.d.ts.map +1 -0
  84. package/lib/dependencies/dependenciesConfig.js +16 -0
  85. package/lib/form/file/FinalFormFileUpload.d.ts.map +1 -1
  86. package/lib/form/file/FinalFormFileUpload.js +3 -3
  87. package/lib/form/file/chooseFile/ChooseFileDialog.d.ts.map +1 -1
  88. package/lib/form/file/chooseFile/ChooseFileDialog.js +37 -34
  89. package/lib/imgproxy/imgproxyConfig.d.ts +6 -0
  90. package/lib/imgproxy/imgproxyConfig.d.ts.map +1 -0
  91. package/lib/imgproxy/imgproxyConfig.js +14 -0
  92. package/lib/index.d.ts +7 -12
  93. package/lib/index.d.ts.map +1 -1
  94. package/lib/index.js +20 -75
  95. package/lib/pages/createEditPageNode.d.ts.map +1 -1
  96. package/lib/pages/createEditPageNode.js +3 -3
  97. package/lib/pages/createUsePage.d.ts.map +1 -1
  98. package/lib/pages/createUsePage.js +5 -10
  99. package/lib/pages/pageTree/MovePageMenuItem.d.ts.map +1 -1
  100. package/lib/pages/pageTree/MovePageMenuItem.js +5 -3
  101. package/lib/pages/pageTree/PageActions.d.ts.map +1 -1
  102. package/lib/pages/pageTree/PageActions.js +5 -4
  103. package/lib/pages/pageTree/PageLabel.d.ts.map +1 -1
  104. package/lib/pages/pageTree/PageLabel.js +8 -8
  105. package/lib/pages/pageTree/PageTree.js +11 -11
  106. package/lib/pages/pageTree/PageTreeContext.d.ts +0 -2
  107. package/lib/pages/pageTree/PageTreeContext.d.ts.map +1 -1
  108. package/lib/pages/pageTree/PageTreeRow.d.ts.map +1 -1
  109. package/lib/pages/pageTree/PageTreeRow.js +3 -3
  110. package/lib/pages/pageTree/PageTypeIcon.d.ts.map +1 -1
  111. package/lib/pages/pageTree/PageTypeIcon.js +3 -3
  112. package/lib/pages/pageTree/useCopyPastePages/sendPages.d.ts +4 -5
  113. package/lib/pages/pageTree/useCopyPastePages/sendPages.d.ts.map +1 -1
  114. package/lib/pages/pageTree/useCopyPastePages/sendPages.js +20 -18
  115. package/lib/pages/pageTree/useCopyPastePages.d.ts.map +1 -1
  116. package/lib/pages/pageTree/useCopyPastePages.js +8 -5
  117. package/lib/pages/pageTreeConfig.d.ts +13 -0
  118. package/lib/pages/pageTreeConfig.d.ts.map +1 -0
  119. package/lib/pages/pageTreeConfig.js +14 -0
  120. package/lib/pages/pageTreeSelect/PageTreeSelectDialog.d.ts.map +1 -1
  121. package/lib/pages/pageTreeSelect/PageTreeSelectDialog.js +11 -14
  122. package/lib/pages/pagesPage/ConfirmPageActionDialog.d.ts.map +1 -1
  123. package/lib/pages/pagesPage/ConfirmPageActionDialog.js +1 -5
  124. package/lib/pages/pagesPage/PagesPage.d.ts +1 -3
  125. package/lib/pages/pagesPage/PagesPage.d.ts.map +1 -1
  126. package/lib/pages/pagesPage/PagesPage.js +4 -6
  127. package/lib/pages/pagesPage/PagesPageActionToolbar.sc.d.ts +2 -2
  128. package/lib/pages/usePageTreeDocumentAnchors.js +3 -3
  129. package/lib/preview/block/BlockPreview.d.ts.map +1 -1
  130. package/lib/preview/block/BlockPreview.js +6 -8
  131. package/lib/preview/common/ToggleButton.d.ts +1 -1
  132. package/lib/preview/site/SitePreview.js +1 -1
  133. package/lib/preview/site/SitePreview.sc.d.ts +1 -1
  134. package/lib/redirects/RedirectsGrid.d.ts.map +1 -1
  135. package/lib/redirects/RedirectsGrid.js +3 -2
  136. package/lib/redirects/createRedirectsPage.d.ts.map +1 -1
  137. package/lib/redirects/createRedirectsPage.js +26 -2
  138. package/lib/{sitesConfig/SitesConfigContext.d.ts → siteConfigs/siteConfigsConfig.d.ts} +2 -3
  139. package/lib/siteConfigs/siteConfigsConfig.d.ts.map +1 -0
  140. package/lib/siteConfigs/siteConfigsConfig.js +5 -0
  141. package/lib/{sitesConfig → siteConfigs}/useSiteConfig.d.ts +1 -1
  142. package/lib/{sitesConfig → siteConfigs}/useSiteConfig.d.ts.map +1 -1
  143. package/lib/{sitesConfig → siteConfigs}/useSiteConfig.js +2 -2
  144. package/lib/siteConfigs/useSiteConfigs.d.ts +3 -0
  145. package/lib/siteConfigs/useSiteConfigs.d.ts.map +1 -0
  146. package/lib/siteConfigs/useSiteConfigs.js +14 -0
  147. package/package.json +22 -19
  148. package/lib/blocks/CmsBlockContextProvider.d.ts +0 -28
  149. package/lib/blocks/CmsBlockContextProvider.d.ts.map +0 -1
  150. package/lib/blocks/useCmsBlockContext.d.ts +0 -4
  151. package/lib/blocks/useCmsBlockContext.d.ts.map +0 -1
  152. package/lib/blocks/useCmsBlockContext.js +0 -10
  153. package/lib/common/header/about/build-information/BuildInformationContext.d.ts +0 -7
  154. package/lib/common/header/about/build-information/BuildInformationContext.d.ts.map +0 -1
  155. package/lib/common/header/about/build-information/BuildInformationContext.js +0 -8
  156. package/lib/common/header/about/build-information/BuildInformationProvider.d.ts +0 -8
  157. package/lib/common/header/about/build-information/BuildInformationProvider.d.ts.map +0 -1
  158. package/lib/common/header/about/build-information/BuildInformationProvider.js +0 -16
  159. package/lib/dam/config/DamConfigContext.d.ts.map +0 -1
  160. package/lib/dam/config/DamConfigContext.js +0 -8
  161. package/lib/dam/config/DamConfigProvider.d.ts +0 -8
  162. package/lib/dam/config/DamConfigProvider.d.ts.map +0 -1
  163. package/lib/dam/config/DamConfigProvider.js +0 -25
  164. package/lib/dam/config/useDamConfig.d.ts +0 -3
  165. package/lib/dam/config/useDamConfig.d.ts.map +0 -1
  166. package/lib/dam/config/useDamConfig.js +0 -12
  167. package/lib/dependencies/DependenciesConfig.d.ts +0 -11
  168. package/lib/dependencies/DependenciesConfig.d.ts.map +0 -1
  169. package/lib/dependencies/DependenciesConfig.js +0 -20
  170. package/lib/locale/LocaleContext.d.ts +0 -7
  171. package/lib/locale/LocaleContext.d.ts.map +0 -1
  172. package/lib/locale/LocaleContext.js +0 -12
  173. package/lib/locale/LocaleProvider.d.ts +0 -8
  174. package/lib/locale/LocaleProvider.d.ts.map +0 -1
  175. package/lib/locale/LocaleProvider.js +0 -18
  176. package/lib/locale/useLocale.d.ts +0 -7
  177. package/lib/locale/useLocale.d.ts.map +0 -1
  178. package/lib/locale/useLocale.js +0 -14
  179. package/lib/sitesConfig/SitesConfigContext.d.ts.map +0 -1
  180. package/lib/sitesConfig/SitesConfigContext.js +0 -8
  181. package/lib/sitesConfig/SitesConfigProvider.d.ts +0 -8
  182. package/lib/sitesConfig/SitesConfigProvider.d.ts.map +0 -1
  183. package/lib/sitesConfig/SitesConfigProvider.js +0 -16
  184. package/lib/sitesConfig/useSitesConfig.d.ts +0 -3
  185. package/lib/sitesConfig/useSitesConfig.d.ts.map +0 -1
  186. package/lib/sitesConfig/useSitesConfig.js +0 -15
@@ -1 +1 @@
1
- {"version":3,"file":"DamVideoBlock.d.ts","sourceRoot":"","sources":["../../src/blocks/DamVideoBlock.tsx"],"names":[],"mappings":"AAQA,OAAO,EAAE,KAAK,iBAAiB,EAAE,KAAK,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAatF,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAuC,KAAK,cAAc,EAAE,KAAK,UAAU,EAAE,MAAM,SAAS,CAAC;AAGpG,KAAK,KAAK,GAAG,IAAI,CAAC,iBAAiB,EAAE,cAAc,CAAC,GAAG;IAAE,YAAY,EAAE,UAAU,CAAC,OAAO,eAAe,CAAC,CAAA;CAAE,CAAC;AAE5G,eAAO,MAAM,aAAa,EAAE,cAAc,CAAC,iBAAiB,EAAE,KAAK,EAAE,kBAAkB,CAmMtF,CAAC"}
1
+ {"version":3,"file":"DamVideoBlock.d.ts","sourceRoot":"","sources":["../../src/blocks/DamVideoBlock.tsx"],"names":[],"mappings":"AAQA,OAAO,EAAE,KAAK,iBAAiB,EAAE,KAAK,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAYtF,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAuC,KAAK,cAAc,EAAE,KAAK,UAAU,EAAE,MAAM,SAAS,CAAC;AAGpG,KAAK,KAAK,GAAG,IAAI,CAAC,iBAAiB,EAAE,cAAc,CAAC,GAAG;IAAE,YAAY,EAAE,UAAU,CAAC,OAAO,eAAe,CAAC,CAAA;CAAE,CAAC;AAE5G,eAAO,MAAM,aAAa,EAAE,cAAc,CAAC,iBAAiB,EAAE,KAAK,EAAE,kBAAkB,CAsMtF,CAAC"}
@@ -12,7 +12,7 @@ var _utils = require("@mui/x-data-grid/utils/utils");
12
12
  var _react = require("react");
13
13
  var _reactIntl = require("react-intl");
14
14
  var _Provider = require("../contentScope/Provider");
15
- var _DependenciesConfig = require("../dependencies/DependenciesConfig");
15
+ var _dependenciesConfig = require("../dependencies/dependenciesConfig");
16
16
  var _DamPathLazy = require("../form/file/DamPathLazy");
17
17
  var _FileField = require("../form/file/FileField");
18
18
  var _BlockAdminComponentButton = require("./common/BlockAdminComponentButton");
@@ -173,8 +173,9 @@ var DamVideoBlock = exports.DamVideoBlock = _objectSpread(_objectSpread({}, (0,
173
173
  var isInPaper = (0, _BlockAdminComponentPaper.useBlockAdminComponentPaper)();
174
174
  var contentScope = (0, _Provider.useContentScope)();
175
175
  var apolloClient = (0, _client.useApolloClient)();
176
- var dependencyMap = (0, _DependenciesConfig.useDependenciesConfig)();
177
- var showMenu = Boolean(dependencyMap["DamFile"]);
176
+ var _useDependenciesConfi = (0, _dependenciesConfig.useDependenciesConfig)(),
177
+ entityDependencyMap = _useDependenciesConfi.entityDependencyMap;
178
+ var showMenu = Boolean(entityDependencyMap["DamFile"]);
178
179
  var handleMenuClose = function handleMenuClose() {
179
180
  setAnchorEl(null);
180
181
  };
@@ -244,15 +245,17 @@ var DamVideoBlock = exports.DamVideoBlock = _objectSpread(_objectSpread({}, (0,
244
245
  keepMounted: true,
245
246
  open: Boolean(anchorEl),
246
247
  onClose: handleMenuClose,
247
- children: dependencyMap["DamFile"] && ((_state$damFile3 = state.damFile) === null || _state$damFile3 === void 0 ? void 0 : _state$damFile3.id) && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.MenuItem, {
248
+ children: entityDependencyMap["DamFile"] && ((_state$damFile3 = state.damFile) === null || _state$damFile3 === void 0 ? void 0 : _state$damFile3.id) && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.MenuItem, {
248
249
  onClick: /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {
249
250
  var path, url;
250
251
  return _regeneratorRuntime().wrap(function _callee2$(_context2) {
251
252
  while (1) switch (_context2.prev = _context2.next) {
252
253
  case 0:
253
254
  _context2.next = 2;
254
- return dependencyMap["DamFile"].resolvePath({
255
+ return entityDependencyMap["DamFile"].resolvePath({
255
256
  apolloClient: apolloClient,
257
+ // id is checked three lines above
258
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
256
259
  id: state.damFile.id
257
260
  });
258
261
  case 2:
@@ -1 +1 @@
1
- {"version":3,"file":"InternalLinkBlock.d.ts","sourceRoot":"","sources":["../../src/blocks/InternalLinkBlock.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,qBAAqB,EAAE,KAAK,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAS9F,OAAO,EAAuC,KAAK,cAAc,EAAE,KAAK,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAE5G,KAAK,KAAK,GAAG,qBAAqB,CAAC;AAEnC,eAAO,MAAM,iBAAiB,EAAE,cAAc,CAAC,qBAAqB,EAAE,KAAK,EAAE,sBAAsB,CAAC,GAAG,kBAAkB,CAAC,KAAK,CA6J9H,CAAC"}
1
+ {"version":3,"file":"InternalLinkBlock.d.ts","sourceRoot":"","sources":["../../src/blocks/InternalLinkBlock.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,qBAAqB,EAAE,KAAK,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAQ9F,OAAO,EAAuC,KAAK,cAAc,EAAE,KAAK,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAE5G,KAAK,KAAK,GAAG,qBAAqB,CAAC;AAEnC,eAAO,MAAM,iBAAiB,EAAE,cAAc,CAAC,qBAAqB,EAAE,KAAK,EAAE,sBAAsB,CAAC,GAAG,kBAAkB,CAAC,KAAK,CA6J9H,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"PixelImageBlock.d.ts","sourceRoot":"","sources":["../../src/blocks/PixelImageBlock.tsx"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,mBAAmB,EAAE,KAAK,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAc1F,OAAO,EAAuC,KAAK,cAAc,EAA4B,MAAM,SAAS,CAAC;AAG7G,MAAM,MAAM,eAAe,GAAG,IAAI,CAAC,mBAAmB,EAAE,aAAa,CAAC,CAAC;AAwBvE,eAAO,MAAM,eAAe,EAAE,cAAc,CAAC,mBAAmB,EAAE,eAAe,EAAE,oBAAoB,CA0PtG,CAAC"}
1
+ {"version":3,"file":"PixelImageBlock.d.ts","sourceRoot":"","sources":["../../src/blocks/PixelImageBlock.tsx"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,mBAAmB,EAAE,KAAK,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAc1F,OAAO,EAAuC,KAAK,cAAc,EAAE,MAAM,SAAS,CAAC;AAEnF,MAAM,MAAM,eAAe,GAAG,IAAI,CAAC,mBAAmB,EAAE,aAAa,CAAC,CAAC;AAwBvE,eAAO,MAAM,eAAe,EAAE,cAAc,CAAC,mBAAmB,EAAE,eAAe,EAAE,oBAAoB,CA0PtG,CAAC"}
@@ -13,9 +13,10 @@ var _styles = require("@mui/material/styles");
13
13
  var _utils = require("@mui/x-data-grid/utils/utils");
14
14
  var _react = require("react");
15
15
  var _reactIntl = require("react-intl");
16
+ var _CometConfigContext = require("../config/CometConfigContext");
16
17
  var _Provider = require("../contentScope/Provider");
17
18
  var _useDamAcceptedMimeTypes = require("../dam/config/useDamAcceptedMimeTypes");
18
- var _DependenciesConfig = require("../dependencies/DependenciesConfig");
19
+ var _dependenciesConfig = require("../dependencies/dependenciesConfig");
19
20
  var _DamPathLazy = require("../form/file/DamPathLazy");
20
21
  var _FileField = require("../form/file/FileField");
21
22
  var _BlockAdminComponentButton = require("./common/BlockAdminComponentButton");
@@ -25,7 +26,6 @@ var _createBlockSkeleton = require("./helpers/createBlockSkeleton");
25
26
  var _SelectPreviewComponent = require("./iframebridge/SelectPreviewComponent");
26
27
  var _EditImageDialog = require("./image/EditImageDialog");
27
28
  var _types = require("./types");
28
- var _useCmsBlockContext = require("./useCmsBlockContext");
29
29
  var _jsxRuntime = require("react/jsx-runtime");
30
30
  var _templateObject;
31
31
  function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
@@ -73,11 +73,11 @@ var PixelImageBlock = exports.PixelImageBlock = _objectSpread(_objectSpread({},
73
73
  };
74
74
  },
75
75
  category: _types.BlockCategory.Media,
76
- createPreviewState: function createPreviewState(state, previewCtx) {
76
+ createPreviewState: function createPreviewState(state, previewContext) {
77
77
  return _objectSpread(_objectSpread({}, state), {}, {
78
- urlTemplate: createPreviewUrl(state, previewCtx.damConfig.apiUrl),
78
+ urlTemplate: createPreviewUrl(state, previewContext.apiUrl),
79
79
  adminMeta: {
80
- route: previewCtx.parentUrl
80
+ route: previewContext.parentUrl
81
81
  }
82
82
  });
83
83
  },
@@ -168,12 +168,14 @@ var PixelImageBlock = exports.PixelImageBlock = _objectSpread(_objectSpread({},
168
168
  _useState4 = _slicedToArray(_useState3, 2),
169
169
  anchorEl = _useState4[0],
170
170
  setAnchorEl = _useState4[1];
171
- var context = (0, _useCmsBlockContext.useCmsBlockContext)();
171
+ var _useCometConfig = (0, _CometConfigContext.useCometConfig)(),
172
+ apiUrl = _useCometConfig.apiUrl;
172
173
  var _useDamAcceptedMimeTy = (0, _useDamAcceptedMimeTypes.useDamAcceptedMimeTypes)(),
173
174
  filteredAcceptedMimeTypes = _useDamAcceptedMimeTy.filteredAcceptedMimeTypes;
174
175
  var contentScope = (0, _Provider.useContentScope)();
175
176
  var apolloClient = (0, _client.useApolloClient)();
176
- var dependencyMap = (0, _DependenciesConfig.useDependenciesConfig)();
177
+ var _useDependenciesConfi = (0, _dependenciesConfig.useDependenciesConfig)(),
178
+ entityDependencyMap = _useDependenciesConfi.entityDependencyMap;
177
179
 
178
180
  // useSyncImageAttributes({ state, updateState });
179
181
 
@@ -187,7 +189,7 @@ var PixelImageBlock = exports.PixelImageBlock = _objectSpread(_objectSpread({},
187
189
  var handleMenuClose = function handleMenuClose() {
188
190
  setAnchorEl(null);
189
191
  };
190
- var previewUrl = createPreviewUrl(state, context.damConfig.apiUrl, {
192
+ var previewUrl = createPreviewUrl(state, apiUrl, {
191
193
  width: 320,
192
194
  height: 320
193
195
  });
@@ -265,14 +267,14 @@ var PixelImageBlock = exports.PixelImageBlock = _objectSpread(_objectSpread({},
265
267
  id: "comet.blocks.image.cropImage",
266
268
  defaultMessage: "Crop image"
267
269
  })]
268
- }), dependencyMap["DamFile"] && ((_state$damFile3 = state.damFile) === null || _state$damFile3 === void 0 ? void 0 : _state$damFile3.id) && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.MenuItem, {
270
+ }), entityDependencyMap["DamFile"] && ((_state$damFile3 = state.damFile) === null || _state$damFile3 === void 0 ? void 0 : _state$damFile3.id) && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.MenuItem, {
269
271
  onClick: /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {
270
272
  var path, url;
271
273
  return _regeneratorRuntime().wrap(function _callee2$(_context2) {
272
274
  while (1) switch (_context2.prev = _context2.next) {
273
275
  case 0:
274
276
  _context2.next = 2;
275
- return dependencyMap["DamFile"].resolvePath({
277
+ return entityDependencyMap["DamFile"].resolvePath({
276
278
  apolloClient: apolloClient,
277
279
  id: state.damFile.id
278
280
  });
@@ -344,9 +346,9 @@ var PixelImageBlock = exports.PixelImageBlock = _objectSpread(_objectSpread({},
344
346
  })
345
347
  });
346
348
  },
347
- previewContent: function previewContent(state, ctx) {
348
- var _state$damFile4, _ctx$damConfig;
349
- if (!state.damFile || !((_state$damFile4 = state.damFile) !== null && _state$damFile4 !== void 0 && _state$damFile4.fileUrl) || !(ctx !== null && ctx !== void 0 && (_ctx$damConfig = ctx.damConfig) !== null && _ctx$damConfig !== void 0 && _ctx$damConfig.apiUrl)) {
349
+ previewContent: function previewContent(state, context) {
350
+ var _state$damFile4;
351
+ if (!state.damFile || !((_state$damFile4 = state.damFile) !== null && _state$damFile4 !== void 0 && _state$damFile4.fileUrl) || !(context !== null && context !== void 0 && context.apiUrl)) {
350
352
  return [];
351
353
  }
352
354
  var imageSize = {
@@ -356,7 +358,7 @@ var PixelImageBlock = exports.PixelImageBlock = _objectSpread(_objectSpread({},
356
358
  return [{
357
359
  type: "image",
358
360
  content: _objectSpread({
359
- src: createPreviewUrl(state, ctx.damConfig.apiUrl, imageSize)
361
+ src: createPreviewUrl(state, context.apiUrl, imageSize)
360
362
  }, imageSize)
361
363
  }, {
362
364
  type: "text",
@@ -379,7 +381,7 @@ var ContentRoot = /*#__PURE__*/(0, _styles.styled)(_material.ButtonBase, process
379
381
  })("padding:", function (_ref5) {
380
382
  var theme = _ref5.theme;
381
383
  return theme.spacing(3);
382
- }, ";width:100%;text-align:left;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ibG9ja3MvUGl4ZWxJbWFnZUJsb2NrLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUE4U3NDIiwiZmlsZSI6Ii4uLy4uL3NyYy9ibG9ja3MvUGl4ZWxJbWFnZUJsb2NrLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGdxbCwgdXNlQXBvbGxvQ2xpZW50IH0gZnJvbSBcIkBhcG9sbG8vY2xpZW50XCI7XG5pbXBvcnQgeyBGaWVsZCB9IGZyb20gXCJAY29tZXQvYWRtaW5cIjtcbmltcG9ydCB7IENyb3AsIERlbGV0ZSwgTW9yZVZlcnRpY2FsLCBPcGVuTmV3VGFiIH0gZnJvbSBcIkBjb21ldC9hZG1pbi1pY29uc1wiO1xuaW1wb3J0IHsgQnV0dG9uQmFzZSwgRGl2aWRlciwgR3JpZCwgSWNvbkJ1dHRvbiwgTGlzdEl0ZW1JY29uLCBNZW51LCBNZW51SXRlbSwgVHlwb2dyYXBoeSB9IGZyb20gXCJAbXVpL21hdGVyaWFsXCI7XG5pbXBvcnQgeyBzdHlsZWQgfSBmcm9tIFwiQG11aS9tYXRlcmlhbC9zdHlsZXNcIjtcbmltcG9ydCB7IGRlZXBDbG9uZSB9IGZyb20gXCJAbXVpL3gtZGF0YS1ncmlkL3V0aWxzL3V0aWxzXCI7XG5pbXBvcnQgeyB1c2VDYWxsYmFjaywgdXNlU3RhdGUgfSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCB7IEZvcm1hdHRlZE1lc3NhZ2UgfSBmcm9tIFwicmVhY3QtaW50bFwiO1xuXG5pbXBvcnQgeyB0eXBlIFBpeGVsSW1hZ2VCbG9ja0RhdGEsIHR5cGUgUGl4ZWxJbWFnZUJsb2NrSW5wdXQgfSBmcm9tIFwiLi4vYmxvY2tzLmdlbmVyYXRlZFwiO1xuaW1wb3J0IHsgdXNlQ29udGVudFNjb3BlIH0gZnJvbSBcIi4uL2NvbnRlbnRTY29wZS9Qcm92aWRlclwiO1xuaW1wb3J0IHsgdXNlRGFtQWNjZXB0ZWRNaW1lVHlwZXMgfSBmcm9tIFwiLi4vZGFtL2NvbmZpZy91c2VEYW1BY2NlcHRlZE1pbWVUeXBlc1wiO1xuaW1wb3J0IHsgdXNlRGVwZW5kZW5jaWVzQ29uZmlnIH0gZnJvbSBcIi4uL2RlcGVuZGVuY2llcy9EZXBlbmRlbmNpZXNDb25maWdcIjtcbmltcG9ydCB7IERhbVBhdGhMYXp5IH0gZnJvbSBcIi4uL2Zvcm0vZmlsZS9EYW1QYXRoTGF6eVwiO1xuaW1wb3J0IHsgRmlsZUZpZWxkIH0gZnJvbSBcIi4uL2Zvcm0vZmlsZS9GaWxlRmllbGRcIjtcbmltcG9ydCB7IHR5cGUgQ21zQmxvY2tDb250ZXh0IH0gZnJvbSBcIi4vQ21zQmxvY2tDb250ZXh0UHJvdmlkZXJcIjtcbmltcG9ydCB7IEJsb2NrQWRtaW5Db21wb25lbnRCdXR0b24gfSBmcm9tIFwiLi9jb21tb24vQmxvY2tBZG1pbkNvbXBvbmVudEJ1dHRvblwiO1xuaW1wb3J0IHsgQmxvY2tBZG1pbkNvbXBvbmVudFBhcGVyIH0gZnJvbSBcIi4vY29tbW9uL0Jsb2NrQWRtaW5Db21wb25lbnRQYXBlclwiO1xuaW1wb3J0IHsgQmxvY2tzRmluYWxGb3JtIH0gZnJvbSBcIi4vZm9ybS9CbG9ja3NGaW5hbEZvcm1cIjtcbmltcG9ydCB7IGNyZWF0ZUJsb2NrU2tlbGV0b24gfSBmcm9tIFwiLi9oZWxwZXJzL2NyZWF0ZUJsb2NrU2tlbGV0b25cIjtcbmltcG9ydCB7IFNlbGVjdFByZXZpZXdDb21wb25lbnQgfSBmcm9tIFwiLi9pZnJhbWVicmlkZ2UvU2VsZWN0UHJldmlld0NvbXBvbmVudFwiO1xuaW1wb3J0IHsgRWRpdEltYWdlRGlhbG9nIH0gZnJvbSBcIi4vaW1hZ2UvRWRpdEltYWdlRGlhbG9nXCI7XG5pbXBvcnQgeyB0eXBlIEdRTEltYWdlQmxvY2tEYW1GaWxlUXVlcnksIHR5cGUgR1FMSW1hZ2VCbG9ja0RhbUZpbGVRdWVyeVZhcmlhYmxlcyB9IGZyb20gXCIuL1BpeGVsSW1hZ2VCbG9jay5nZW5lcmF0ZWRcIjtcbmltcG9ydCB7IEJsb2NrQ2F0ZWdvcnksIHR5cGUgQmxvY2tEZXBlbmRlbmN5LCB0eXBlIEJsb2NrSW50ZXJmYWNlLCB0eXBlIEJsb2NrUHJldmlld0NvbnRleHQgfSBmcm9tIFwiLi90eXBlc1wiO1xuaW1wb3J0IHsgdXNlQ21zQmxvY2tDb250ZXh0IH0gZnJvbSBcIi4vdXNlQ21zQmxvY2tDb250ZXh0XCI7XG5cbmV4cG9ydCB0eXBlIEltYWdlQmxvY2tTdGF0ZSA9IE9taXQ8UGl4ZWxJbWFnZUJsb2NrRGF0YSwgXCJ1cmxUZW1wbGF0ZVwiPjtcblxuY29uc3QgdXJsVGVtcGxhdGVSb3V0ZSA9IFwiL2RhbS9pbWFnZXMvcHJldmlldy8kZmlsZUlkL2Nyb3A6JGNyb3AvcmVzaXplOiRyZXNpemVXaWR0aDokcmVzaXplSGVpZ2h0LyRmaWxlTmFtZVwiO1xuZnVuY3Rpb24gY3JlYXRlUHJldmlld1VybCh7IGRhbUZpbGUsIGNyb3BBcmVhIH06IEltYWdlQmxvY2tTdGF0ZSwgYXBpVXJsOiBzdHJpbmcsIHJlc2l6ZT86IHsgd2lkdGg6IG51bWJlcjsgaGVpZ2h0OiBudW1iZXIgfSk6IHN0cmluZyB7XG4gICAgaWYgKCFkYW1GaWxlIHx8ICFkYW1GaWxlLmltYWdlKSByZXR1cm4gXCJcIjtcblxuICAgIGNvbnN0IGltYWdlQ3JvcEFyZWEgPSBjcm9wQXJlYSA/IGNyb3BBcmVhIDogZGFtRmlsZS5pbWFnZS5jcm9wQXJlYTtcbiAgICBjb25zdCBjcm9wID1cbiAgICAgICAgaW1hZ2VDcm9wQXJlYS5mb2NhbFBvaW50ID09PSBcIlNNQVJUXCJcbiAgICAgICAgICAgID8gW2ltYWdlQ3JvcEFyZWEuZm9jYWxQb2ludF1cbiAgICAgICAgICAgIDogW2ltYWdlQ3JvcEFyZWEud2lkdGgsIGltYWdlQ3JvcEFyZWEuaGVpZ2h0LCBpbWFnZUNyb3BBcmVhLmZvY2FsUG9pbnQsIGltYWdlQ3JvcEFyZWEueCwgaW1hZ2VDcm9wQXJlYS55XTtcblxuICAgIGNvbnN0IGZpbGVuYW1lQ29udGFpbnNFeHRlbnNpb24gPSBkYW1GaWxlLm5hbWUubGFzdEluZGV4T2YoXCIuXCIpID49IDA7XG4gICAgY29uc3QgZmlsZW5hbWUgPSBmaWxlbmFtZUNvbnRhaW5zRXh0ZW5zaW9uID8gZGFtRmlsZS5uYW1lLnN1YnN0cigwLCBkYW1GaWxlLm5hbWUubGFzdEluZGV4T2YoXCIuXCIpKSA6IGRhbUZpbGUubmFtZTtcblxuICAgIGxldCB1cmxUZW1wbGF0ZSA9IGFwaVVybCArIHVybFRlbXBsYXRlUm91dGU7XG4gICAgaWYgKHJlc2l6ZSkge1xuICAgICAgICB1cmxUZW1wbGF0ZSA9IHVybFRlbXBsYXRlLnJlcGxhY2UoXCIkcmVzaXplV2lkdGhcIiwgU3RyaW5nKHJlc2l6ZS53aWR0aCkpLnJlcGxhY2UoXCIkcmVzaXplSGVpZ2h0XCIsIFN0cmluZyhyZXNpemUuaGVpZ2h0KSk7XG4gICAgfVxuXG4gICAgY29uc3QgdXJsID0gbmV3IFVSTCh1cmxUZW1wbGF0ZS5yZXBsYWNlKFwiJGZpbGVJZFwiLCBkYW1GaWxlLmlkKS5yZXBsYWNlKFwiJGNyb3BcIiwgY3JvcC5qb2luKFwiOlwiKSkucmVwbGFjZShcIiRmaWxlTmFtZVwiLCBmaWxlbmFtZSkpO1xuICAgIHJldHVybiB1cmwudG9TdHJpbmcoKTtcbn1cblxuZXhwb3J0IGNvbnN0IFBpeGVsSW1hZ2VCbG9jazogQmxvY2tJbnRlcmZhY2U8UGl4ZWxJbWFnZUJsb2NrRGF0YSwgSW1hZ2VCbG9ja1N0YXRlLCBQaXhlbEltYWdlQmxvY2tJbnB1dD4gPSB7XG4gICAgLi4uY3JlYXRlQmxvY2tTa2VsZXRvbigpLFxuXG4gICAgbmFtZTogXCJJbWFnZVwiLFxuXG4gICAgZGlzcGxheU5hbWU6IDxGb3JtYXR0ZWRNZXNzYWdlIGlkPVwiY29tZXQuYmxvY2tzLmltYWdlXCIgZGVmYXVsdE1lc3NhZ2U9XCJJbWFnZVwiIC8+LFxuXG4gICAgZGVmYXVsdFZhbHVlczogKCkgPT4gKHtcbiAgICAgICAgZmlsZTogdW5kZWZpbmVkLFxuICAgICAgICBjcm9wQXJlYTogdW5kZWZpbmVkLFxuICAgIH0pLFxuXG4gICAgY2F0ZWdvcnk6IEJsb2NrQ2F0ZWdvcnkuTWVkaWEsXG5cbiAgICBjcmVhdGVQcmV2aWV3U3RhdGU6IChzdGF0ZSwgcHJldmlld0N0eDogQmxvY2tQcmV2aWV3Q29udGV4dCAmIENtc0Jsb2NrQ29udGV4dCkgPT4gKHtcbiAgICAgICAgLi4uc3RhdGUsXG4gICAgICAgIHVybFRlbXBsYXRlOiBjcmVhdGVQcmV2aWV3VXJsKHN0YXRlLCBwcmV2aWV3Q3R4LmRhbUNvbmZpZy5hcGlVcmwpLFxuICAgICAgICBhZG1pbk1ldGE6IHsgcm91dGU6IHByZXZpZXdDdHgucGFyZW50VXJsIH0sXG4gICAgfSksXG5cbiAgICBzdGF0ZTJPdXRwdXQ6ICh2KSA9PiB7XG4gICAgICAgIGlmICghdi5kYW1GaWxlKSB7XG4gICAgICAgICAgICByZXR1cm4ge307XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgZGFtRmlsZUlkOiB2LmRhbUZpbGUuaWQsXG4gICAgICAgICAgICBjcm9wQXJlYTogdi5jcm9wQXJlYSxcbiAgICAgICAgfTtcbiAgICB9LFxuXG4gICAgb3V0cHV0MlN0YXRlOiBhc3luYyAob3V0cHV0LCB7IGFwb2xsb0NsaWVudCB9OiBDbXNCbG9ja0NvbnRleHQpOiBQcm9taXNlPEltYWdlQmxvY2tTdGF0ZT4gPT4ge1xuICAgICAgICBpZiAoIW91dHB1dC5kYW1GaWxlSWQpIHtcbiAgICAgICAgICAgIHJldHVybiB7fTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHsgZGF0YSB9ID0gYXdhaXQgYXBvbGxvQ2xpZW50LnF1ZXJ5PEdRTEltYWdlQmxvY2tEYW1GaWxlUXVlcnksIEdRTEltYWdlQmxvY2tEYW1GaWxlUXVlcnlWYXJpYWJsZXM+KHtcbiAgICAgICAgICAgIHF1ZXJ5OiBncWxgXG4gICAgICAgICAgICAgICAgcXVlcnkgSW1hZ2VCbG9ja0RhbUZpbGUoJGlkOiBJRCEpIHtcbiAgICAgICAgICAgICAgICAgICAgZGFtRmlsZShpZDogJGlkKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZFxuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZVxuICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZVxuICAgICAgICAgICAgICAgICAgICAgICAgbWltZXR5cGVcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnRIYXNoXG4gICAgICAgICAgICAgICAgICAgICAgICB0aXRsZVxuICAgICAgICAgICAgICAgICAgICAgICAgYWx0VGV4dFxuICAgICAgICAgICAgICAgICAgICAgICAgYXJjaGl2ZWRcbiAgICAgICAgICAgICAgICAgICAgICAgIGltYWdlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNyb3BBcmVhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9jYWxQb2ludFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB5XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgZmlsZVVybFxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgYCxcbiAgICAgICAgICAgIHZhcmlhYmxlczogeyBpZDogb3V0cHV0LmRhbUZpbGVJZCB9LFxuICAgICAgICB9KTtcblxuICAgICAgICAvLyBUT0RPIGNvbnNpZGVyIHRocm93aW5nIGFuIGVycm9yXG4gICAgICAgIC8vIFRPRE8gZml4IHR5cGluZzogZ2VuZXJhdGVkIEdyYXBoUUwgZmlsZXMgdXNlIG51bGwsIHdlIHVzZSB1bmRlZmluZWQsIGUuZy4gdGl0bGU6IHN0cmluZyB8IG51bGwgdnMgdGl0bGU/OiBzdHJpbmdcbiAgICAgICAgY29uc3QgZGFtRmlsZSA9IGRhdGEuZGFtRmlsZSBhcyB1bmtub3duIGFzIFBpeGVsSW1hZ2VCbG9ja0RhdGFbXCJkYW1GaWxlXCJdO1xuXG4gICAgICAgIHJldHVybiB7IGRhbUZpbGUsIGNyb3BBcmVhOiBvdXRwdXQuY3JvcEFyZWEgfTtcbiAgICB9LFxuXG4gICAgZGVwZW5kZW5jaWVzOiAoc3RhdGUpID0+IHtcbiAgICAgICAgY29uc3QgZGVwZW5kZW5jaWVzOiBCbG9ja0RlcGVuZGVuY3lbXSA9IFtdO1xuXG4gICAgICAgIGlmIChzdGF0ZS5kYW1GaWxlPy5pZCkge1xuICAgICAgICAgICAgZGVwZW5kZW5jaWVzLnB1c2goe1xuICAgICAgICAgICAgICAgIHRhcmdldEdyYXBocWxPYmplY3RUeXBlOiBcIkRhbUZpbGVcIixcbiAgICAgICAgICAgICAgICBpZDogc3RhdGUuZGFtRmlsZS5pZCxcbiAgICAgICAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICAgICAgICAgIGRhbUZpbGU6IHN0YXRlLmRhbUZpbGUsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGRlcGVuZGVuY2llcztcbiAgICB9LFxuXG4gICAgcmVwbGFjZURlcGVuZGVuY2llc0luT3V0cHV0OiAob3V0cHV0LCByZXBsYWNlbWVudHMpID0+IHtcbiAgICAgICAgY29uc3QgY2xvbmVkT3V0cHV0OiBQaXhlbEltYWdlQmxvY2tJbnB1dCA9IGRlZXBDbG9uZShvdXRwdXQpO1xuICAgICAgICBjb25zdCByZXBsYWNlbWVudCA9IHJlcGxhY2VtZW50cy5maW5kKChyZXBsYWNlbWVudCkgPT4gcmVwbGFjZW1lbnQudHlwZSA9PT0gXCJEYW1GaWxlXCIgJiYgcmVwbGFjZW1lbnQub3JpZ2luYWxJZCA9PT0gb3V0cHV0LmRhbUZpbGVJZCk7XG5cbiAgICAgICAgaWYgKHJlcGxhY2VtZW50KSB7XG4gICAgICAgICAgICBjbG9uZWRPdXRwdXQuZGFtRmlsZUlkID0gcmVwbGFjZW1lbnQucmVwbGFjZVdpdGhJZDtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBjbG9uZWRPdXRwdXQ7XG4gICAgfSxcblxuICAgIGRlZmluZXNPd25QYWRkaW5nOiB0cnVlLFxuXG4gICAgQWRtaW5Db21wb25lbnQ6ICh7IHN0YXRlLCB1cGRhdGVTdGF0ZSB9KSA9PiB7XG4gICAgICAgIGNvbnN0IFtvcGVuLCBzZXRPcGVuXSA9IHVzZVN0YXRlKGZhbHNlKTtcbiAgICAgICAgY29uc3QgW2FuY2hvckVsLCBzZXRBbmNob3JFbF0gPSB1c2VTdGF0ZTxIVE1MQnV0dG9uRWxlbWVudCB8IG51bGw+KG51bGwpO1xuICAgICAgICBjb25zdCBjb250ZXh0ID0gdXNlQ21zQmxvY2tDb250ZXh0KCk7XG4gICAgICAgIGNvbnN0IHsgZmlsdGVyZWRBY2NlcHRlZE1pbWVUeXBlcyB9ID0gdXNlRGFtQWNjZXB0ZWRNaW1lVHlwZXMoKTtcbiAgICAgICAgY29uc3QgY29udGVudFNjb3BlID0gdXNlQ29udGVudFNjb3BlKCk7XG4gICAgICAgIGNvbnN0IGFwb2xsb0NsaWVudCA9IHVzZUFwb2xsb0NsaWVudCgpO1xuICAgICAgICBjb25zdCBkZXBlbmRlbmN5TWFwID0gdXNlRGVwZW5kZW5jaWVzQ29uZmlnKCk7XG5cbiAgICAgICAgLy8gdXNlU3luY0ltYWdlQXR0cmlidXRlcyh7IHN0YXRlLCB1cGRhdGVTdGF0ZSB9KTtcblxuICAgICAgICBjb25zdCBoYW5kbGVDbG9zZSA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICAgICAgICAgIHNldE9wZW4oZmFsc2UpO1xuICAgICAgICB9LCBbc2V0T3Blbl0pO1xuXG4gICAgICAgIGNvbnN0IGhhbmRsZUNyb3BDbGljayA9ICgpID0+IHtcbiAgICAgICAgICAgIHNldE9wZW4odHJ1ZSk7XG5cbiAgICAgICAgICAgIGhhbmRsZU1lbnVDbG9zZSgpO1xuICAgICAgICB9O1xuXG4gICAgICAgIGNvbnN0IGhhbmRsZU1lbnVDbG9zZSA9ICgpID0+IHtcbiAgICAgICAgICAgIHNldEFuY2hvckVsKG51bGwpO1xuICAgICAgICB9O1xuXG4gICAgICAgIGNvbnN0IHByZXZpZXdVcmwgPSBjcmVhdGVQcmV2aWV3VXJsKHN0YXRlLCBjb250ZXh0LmRhbUNvbmZpZy5hcGlVcmwsIHsgd2lkdGg6IDMyMCwgaGVpZ2h0OiAzMjAgfSk7XG5cbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIDxTZWxlY3RQcmV2aWV3Q29tcG9uZW50PlxuICAgICAgICAgICAgICAgIHtzdGF0ZS5kYW1GaWxlPy5pbWFnZSA/IChcbiAgICAgICAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxCbG9ja0FkbWluQ29tcG9uZW50UGFwZXIgZGlzYWJsZVBhZGRpbmc+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPENvbnRlbnRSb290IGNvbXBvbmVudD1cImRpdlwiIG9uQ2xpY2s9eygpID0+IHNldE9wZW4odHJ1ZSl9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8R3JpZCBjb250YWluZXIgYWxpZ25JdGVtcz1cImNlbnRlclwiIHNwYWNpbmc9ezN9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEdyaWQgaXRlbT57cHJldmlld1VybCAmJiA8UHJldmlld0ltYWdlIHNyYz17cHJldmlld1VybH0gd2lkdGg9XCI3MFwiIGhlaWdodD1cIjcwXCIgLz59PC9HcmlkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEdyaWQgaXRlbSB4cz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8VHlwb2dyYXBoeSB2YXJpYW50PVwic3VidGl0bGUxXCI+e3N0YXRlLmRhbUZpbGUubmFtZX08L1R5cG9ncmFwaHk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFR5cG9ncmFwaHkgdmFyaWFudD1cImJvZHkxXCIgY29sb3I9XCJ0ZXh0U2Vjb25kYXJ5XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxEYW1QYXRoTGF6eSBmaWxlSWQ9e3N0YXRlLmRhbUZpbGUuaWR9IC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9UeXBvZ3JhcGh5PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9HcmlkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEdyaWQgaXRlbT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SWNvbkJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbk1vdXNlRG93bj17KGV2ZW50KSA9PiBldmVudC5zdG9wUHJvcGFnYXRpb24oKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25DbGljaz17KGV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNldEFuY2hvckVsKGV2ZW50LmN1cnJlbnRUYXJnZXQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplPVwibGFyZ2VcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPE1vcmVWZXJ0aWNhbCAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvSWNvbkJ1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvR3JpZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9HcmlkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQ29udGVudFJvb3Q+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPERpdmlkZXIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8QmxvY2tBZG1pbkNvbXBvbmVudEJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGFydEljb249ezxEZWxldGUgLz59XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHVwZGF0ZVN0YXRlKHsgZGFtRmlsZTogdW5kZWZpbmVkLCBjcm9wQXJlYTogdW5kZWZpbmVkIH0pfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9XCJjb21ldC5ibG9ja3MuaW1hZ2UuZW1wdHlcIiBkZWZhdWx0TWVzc2FnZT1cIkVtcHR5XCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0Jsb2NrQWRtaW5Db21wb25lbnRCdXR0b24+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L0Jsb2NrQWRtaW5Db21wb25lbnRQYXBlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxNZW51IGFuY2hvckVsPXthbmNob3JFbH0ga2VlcE1vdW50ZWQgb3Blbj17Qm9vbGVhbihhbmNob3JFbCl9IG9uQ2xvc2U9e2hhbmRsZU1lbnVDbG9zZX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPE1lbnVJdGVtIG9uQ2xpY2s9e2hhbmRsZUNyb3BDbGlja30+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxMaXN0SXRlbUljb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Q3JvcCAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0xpc3RJdGVtSWNvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9XCJjb21ldC5ibG9ja3MuaW1hZ2UuY3JvcEltYWdlXCIgZGVmYXVsdE1lc3NhZ2U9XCJDcm9wIGltYWdlXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L01lbnVJdGVtPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtkZXBlbmRlbmN5TWFwW1wiRGFtRmlsZVwiXSAmJiBzdGF0ZS5kYW1GaWxlPy5pZCAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxNZW51SXRlbVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25DbGljaz17YXN5bmMgKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGlkIGlzIGNoZWNrZWQgdGhyZWUgbGluZXMgYWJvdmVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLW5vbi1udWxsLWFzc2VydGlvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHBhdGggPSBhd2FpdCBkZXBlbmRlbmN5TWFwW1wiRGFtRmlsZVwiXS5yZXNvbHZlUGF0aCh7IGFwb2xsb0NsaWVudCwgaWQ6IHN0YXRlLmRhbUZpbGUhLmlkIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVybCA9IGNvbnRlbnRTY29wZS5tYXRjaC51cmwgKyBwYXRoO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpbmRvdy5vcGVuKHVybCwgXCJfYmxhbmtcIik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8TGlzdEl0ZW1JY29uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxPcGVuTmV3VGFiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0xpc3RJdGVtSWNvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlIGlkPVwiY29tZXQuYmxvY2tzLmltYWdlLm9wZW5JbkRhbVwiIGRlZmF1bHRNZXNzYWdlPVwiT3BlbiBpbiBEQU1cIiAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L01lbnVJdGVtPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICA8L01lbnU+XG4gICAgICAgICAgICAgICAgICAgICAgICB7b3BlbiAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEVkaXRJbWFnZURpYWxvZ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbWFnZT17e1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogc3RhdGUuZGFtRmlsZS5uYW1lLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXJsOiBzdGF0ZS5kYW1GaWxlLmZpbGVVcmwsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogc3RhdGUuZGFtRmlsZS5pbWFnZS53aWR0aCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogc3RhdGUuZGFtRmlsZS5pbWFnZS5oZWlnaHQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplOiBzdGF0ZS5kYW1GaWxlLnNpemUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhbUZpbGVJZD17c3RhdGUuZGFtRmlsZS5pZH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5pdGlhbFZhbHVlcz17e1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlSW5oZXJpdGVkRGFtU2V0dGluZ3M6IHN0YXRlLmNyb3BBcmVhID09PSB1bmRlZmluZWQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjcm9wQXJlYTogc3RhdGUuY3JvcEFyZWEgPz8gc3RhdGUuZGFtRmlsZS5pbWFnZS5jcm9wQXJlYSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5oZXJpdGVkRGFtU2V0dGluZ3M9e3sgY3JvcEFyZWE6IHN0YXRlLmRhbUZpbGUuaW1hZ2UuY3JvcEFyZWEgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25TdWJtaXQ9eyhjcm9wQXJlYSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXBkYXRlU3RhdGUoKHByZXZTdGF0ZSkgPT4gKHsgLi4ucHJldlN0YXRlLCBjcm9wQXJlYSB9KSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRPcGVuKGZhbHNlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25DbG9zZT17aGFuZGxlQ2xvc2V9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgICAgICAgIDxCbG9ja3NGaW5hbEZvcm08eyBkYW1GaWxlPzogSW1hZ2VCbG9ja1N0YXRlW1wiZGFtRmlsZVwiXSB9PlxuICAgICAgICAgICAgICAgICAgICAgICAgb25TdWJtaXQ9eyhuZXdWYWx1ZXMpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cGRhdGVTdGF0ZSgocHJldlN0YXRlKSA9PiAoeyAuLi5wcmV2U3RhdGUsIGRhbUZpbGU6IG5ld1ZhbHVlcy5kYW1GaWxlIHx8IHVuZGVmaW5lZCwgY3JvcEFyZWE6IHVuZGVmaW5lZCB9KSk7IC8vIHJlc2V0IGxvY2FsIGNyb3AgYXJlYSB3aGVuIGltYWdlIGNoYW5nZXNcbiAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgICAgICBpbml0aWFsVmFsdWVzPXt7IGRhbUZpbGU6IHN0YXRlLmRhbUZpbGUgfX1cbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEZpZWxkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT1cImRhbUZpbGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBvbmVudD17RmlsZUZpZWxkfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ1bGxXaWR0aFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ1dHRvblRleHQ9ezxGb3JtYXR0ZWRNZXNzYWdlIGlkPVwiY29tZXQuYmxvY2tzLmltYWdlLmNob29zZUltYWdlXCIgZGVmYXVsdE1lc3NhZ2U9XCJDaG9vc2UgaW1hZ2VcIiAvPn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbGxvd2VkTWltZXR5cGVzPXtmaWx0ZXJlZEFjY2VwdGVkTWltZVR5cGVzLnBpeGVsSW1hZ2V9XG4gICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICA8L0Jsb2Nrc0ZpbmFsRm9ybT5cbiAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgPC9TZWxlY3RQcmV2aWV3Q29tcG9uZW50PlxuICAgICAgICApO1xuICAgIH0sXG4gICAgcHJldmlld0NvbnRlbnQ6IChzdGF0ZSwgY3R4KSA9PiB7XG4gICAgICAgIGlmICghc3RhdGUuZGFtRmlsZSB8fCAhc3RhdGUuZGFtRmlsZT8uZmlsZVVybCB8fCAhY3R4Py5kYW1Db25maWc/LmFwaVVybCkge1xuICAgICAgICAgICAgcmV0dXJuIFtdO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGltYWdlU2l6ZSA9IHsgd2lkdGg6IDMyMCwgaGVpZ2h0OiAzMjAgfTtcbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgIHsgdHlwZTogXCJpbWFnZVwiLCBjb250ZW50OiB7IHNyYzogY3JlYXRlUHJldmlld1VybChzdGF0ZSwgY3R4LmRhbUNvbmZpZy5hcGlVcmwsIGltYWdlU2l6ZSksIC4uLmltYWdlU2l6ZSB9IH0sXG4gICAgICAgICAgICB7IHR5cGU6IFwidGV4dFwiLCBjb250ZW50OiBzdGF0ZS5kYW1GaWxlLm5hbWUgfSxcbiAgICAgICAgXTtcbiAgICB9LFxuXG4gICAgZXh0cmFjdFRleHRDb250ZW50czogKHN0YXRlKSA9PiB7XG4gICAgICAgIGNvbnN0IGNvbnRlbnRzID0gW107XG5cbiAgICAgICAgaWYgKHN0YXRlLmRhbUZpbGU/LmFsdFRleHQpIGNvbnRlbnRzLnB1c2goc3RhdGUuZGFtRmlsZS5hbHRUZXh0KTtcbiAgICAgICAgaWYgKHN0YXRlLmRhbUZpbGU/LnRpdGxlKSBjb250ZW50cy5wdXNoKHN0YXRlLmRhbUZpbGUudGl0bGUpO1xuXG4gICAgICAgIHJldHVybiBjb250ZW50cztcbiAgICB9LFxufTtcblxuY29uc3QgQ29udGVudFJvb3QgPSBzdHlsZWQoQnV0dG9uQmFzZSlgXG4gICAgcGFkZGluZzogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjaW5nKDMpfTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuYCBhcyB0eXBlb2YgQnV0dG9uQmFzZTtcblxuY29uc3QgUHJldmlld0ltYWdlID0gc3R5bGVkKFwiaW1nXCIpYFxuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuYDtcbiJdfQ== */"));
384
+ }, ";width:100%;text-align:left;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ibG9ja3MvUGl4ZWxJbWFnZUJsb2NrLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUE2U3NDIiwiZmlsZSI6Ii4uLy4uL3NyYy9ibG9ja3MvUGl4ZWxJbWFnZUJsb2NrLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGdxbCwgdXNlQXBvbGxvQ2xpZW50IH0gZnJvbSBcIkBhcG9sbG8vY2xpZW50XCI7XG5pbXBvcnQgeyBGaWVsZCB9IGZyb20gXCJAY29tZXQvYWRtaW5cIjtcbmltcG9ydCB7IENyb3AsIERlbGV0ZSwgTW9yZVZlcnRpY2FsLCBPcGVuTmV3VGFiIH0gZnJvbSBcIkBjb21ldC9hZG1pbi1pY29uc1wiO1xuaW1wb3J0IHsgQnV0dG9uQmFzZSwgRGl2aWRlciwgR3JpZCwgSWNvbkJ1dHRvbiwgTGlzdEl0ZW1JY29uLCBNZW51LCBNZW51SXRlbSwgVHlwb2dyYXBoeSB9IGZyb20gXCJAbXVpL21hdGVyaWFsXCI7XG5pbXBvcnQgeyBzdHlsZWQgfSBmcm9tIFwiQG11aS9tYXRlcmlhbC9zdHlsZXNcIjtcbmltcG9ydCB7IGRlZXBDbG9uZSB9IGZyb20gXCJAbXVpL3gtZGF0YS1ncmlkL3V0aWxzL3V0aWxzXCI7XG5pbXBvcnQgeyB1c2VDYWxsYmFjaywgdXNlU3RhdGUgfSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCB7IEZvcm1hdHRlZE1lc3NhZ2UgfSBmcm9tIFwicmVhY3QtaW50bFwiO1xuXG5pbXBvcnQgeyB0eXBlIFBpeGVsSW1hZ2VCbG9ja0RhdGEsIHR5cGUgUGl4ZWxJbWFnZUJsb2NrSW5wdXQgfSBmcm9tIFwiLi4vYmxvY2tzLmdlbmVyYXRlZFwiO1xuaW1wb3J0IHsgdXNlQ29tZXRDb25maWcgfSBmcm9tIFwiLi4vY29uZmlnL0NvbWV0Q29uZmlnQ29udGV4dFwiO1xuaW1wb3J0IHsgdXNlQ29udGVudFNjb3BlIH0gZnJvbSBcIi4uL2NvbnRlbnRTY29wZS9Qcm92aWRlclwiO1xuaW1wb3J0IHsgdXNlRGFtQWNjZXB0ZWRNaW1lVHlwZXMgfSBmcm9tIFwiLi4vZGFtL2NvbmZpZy91c2VEYW1BY2NlcHRlZE1pbWVUeXBlc1wiO1xuaW1wb3J0IHsgdXNlRGVwZW5kZW5jaWVzQ29uZmlnIH0gZnJvbSBcIi4uL2RlcGVuZGVuY2llcy9kZXBlbmRlbmNpZXNDb25maWdcIjtcbmltcG9ydCB7IERhbVBhdGhMYXp5IH0gZnJvbSBcIi4uL2Zvcm0vZmlsZS9EYW1QYXRoTGF6eVwiO1xuaW1wb3J0IHsgRmlsZUZpZWxkIH0gZnJvbSBcIi4uL2Zvcm0vZmlsZS9GaWxlRmllbGRcIjtcbmltcG9ydCB7IEJsb2NrQWRtaW5Db21wb25lbnRCdXR0b24gfSBmcm9tIFwiLi9jb21tb24vQmxvY2tBZG1pbkNvbXBvbmVudEJ1dHRvblwiO1xuaW1wb3J0IHsgQmxvY2tBZG1pbkNvbXBvbmVudFBhcGVyIH0gZnJvbSBcIi4vY29tbW9uL0Jsb2NrQWRtaW5Db21wb25lbnRQYXBlclwiO1xuaW1wb3J0IHsgQmxvY2tzRmluYWxGb3JtIH0gZnJvbSBcIi4vZm9ybS9CbG9ja3NGaW5hbEZvcm1cIjtcbmltcG9ydCB7IGNyZWF0ZUJsb2NrU2tlbGV0b24gfSBmcm9tIFwiLi9oZWxwZXJzL2NyZWF0ZUJsb2NrU2tlbGV0b25cIjtcbmltcG9ydCB7IFNlbGVjdFByZXZpZXdDb21wb25lbnQgfSBmcm9tIFwiLi9pZnJhbWVicmlkZ2UvU2VsZWN0UHJldmlld0NvbXBvbmVudFwiO1xuaW1wb3J0IHsgRWRpdEltYWdlRGlhbG9nIH0gZnJvbSBcIi4vaW1hZ2UvRWRpdEltYWdlRGlhbG9nXCI7XG5pbXBvcnQgeyB0eXBlIEdRTEltYWdlQmxvY2tEYW1GaWxlUXVlcnksIHR5cGUgR1FMSW1hZ2VCbG9ja0RhbUZpbGVRdWVyeVZhcmlhYmxlcyB9IGZyb20gXCIuL1BpeGVsSW1hZ2VCbG9jay5nZW5lcmF0ZWRcIjtcbmltcG9ydCB7IEJsb2NrQ2F0ZWdvcnksIHR5cGUgQmxvY2tEZXBlbmRlbmN5LCB0eXBlIEJsb2NrSW50ZXJmYWNlIH0gZnJvbSBcIi4vdHlwZXNcIjtcblxuZXhwb3J0IHR5cGUgSW1hZ2VCbG9ja1N0YXRlID0gT21pdDxQaXhlbEltYWdlQmxvY2tEYXRhLCBcInVybFRlbXBsYXRlXCI+O1xuXG5jb25zdCB1cmxUZW1wbGF0ZVJvdXRlID0gXCIvZGFtL2ltYWdlcy9wcmV2aWV3LyRmaWxlSWQvY3JvcDokY3JvcC9yZXNpemU6JHJlc2l6ZVdpZHRoOiRyZXNpemVIZWlnaHQvJGZpbGVOYW1lXCI7XG5mdW5jdGlvbiBjcmVhdGVQcmV2aWV3VXJsKHsgZGFtRmlsZSwgY3JvcEFyZWEgfTogSW1hZ2VCbG9ja1N0YXRlLCBhcGlVcmw6IHN0cmluZywgcmVzaXplPzogeyB3aWR0aDogbnVtYmVyOyBoZWlnaHQ6IG51bWJlciB9KTogc3RyaW5nIHtcbiAgICBpZiAoIWRhbUZpbGUgfHwgIWRhbUZpbGUuaW1hZ2UpIHJldHVybiBcIlwiO1xuXG4gICAgY29uc3QgaW1hZ2VDcm9wQXJlYSA9IGNyb3BBcmVhID8gY3JvcEFyZWEgOiBkYW1GaWxlLmltYWdlLmNyb3BBcmVhO1xuICAgIGNvbnN0IGNyb3AgPVxuICAgICAgICBpbWFnZUNyb3BBcmVhLmZvY2FsUG9pbnQgPT09IFwiU01BUlRcIlxuICAgICAgICAgICAgPyBbaW1hZ2VDcm9wQXJlYS5mb2NhbFBvaW50XVxuICAgICAgICAgICAgOiBbaW1hZ2VDcm9wQXJlYS53aWR0aCwgaW1hZ2VDcm9wQXJlYS5oZWlnaHQsIGltYWdlQ3JvcEFyZWEuZm9jYWxQb2ludCwgaW1hZ2VDcm9wQXJlYS54LCBpbWFnZUNyb3BBcmVhLnldO1xuXG4gICAgY29uc3QgZmlsZW5hbWVDb250YWluc0V4dGVuc2lvbiA9IGRhbUZpbGUubmFtZS5sYXN0SW5kZXhPZihcIi5cIikgPj0gMDtcbiAgICBjb25zdCBmaWxlbmFtZSA9IGZpbGVuYW1lQ29udGFpbnNFeHRlbnNpb24gPyBkYW1GaWxlLm5hbWUuc3Vic3RyKDAsIGRhbUZpbGUubmFtZS5sYXN0SW5kZXhPZihcIi5cIikpIDogZGFtRmlsZS5uYW1lO1xuXG4gICAgbGV0IHVybFRlbXBsYXRlID0gYXBpVXJsICsgdXJsVGVtcGxhdGVSb3V0ZTtcbiAgICBpZiAocmVzaXplKSB7XG4gICAgICAgIHVybFRlbXBsYXRlID0gdXJsVGVtcGxhdGUucmVwbGFjZShcIiRyZXNpemVXaWR0aFwiLCBTdHJpbmcocmVzaXplLndpZHRoKSkucmVwbGFjZShcIiRyZXNpemVIZWlnaHRcIiwgU3RyaW5nKHJlc2l6ZS5oZWlnaHQpKTtcbiAgICB9XG5cbiAgICBjb25zdCB1cmwgPSBuZXcgVVJMKHVybFRlbXBsYXRlLnJlcGxhY2UoXCIkZmlsZUlkXCIsIGRhbUZpbGUuaWQpLnJlcGxhY2UoXCIkY3JvcFwiLCBjcm9wLmpvaW4oXCI6XCIpKS5yZXBsYWNlKFwiJGZpbGVOYW1lXCIsIGZpbGVuYW1lKSk7XG4gICAgcmV0dXJuIHVybC50b1N0cmluZygpO1xufVxuXG5leHBvcnQgY29uc3QgUGl4ZWxJbWFnZUJsb2NrOiBCbG9ja0ludGVyZmFjZTxQaXhlbEltYWdlQmxvY2tEYXRhLCBJbWFnZUJsb2NrU3RhdGUsIFBpeGVsSW1hZ2VCbG9ja0lucHV0PiA9IHtcbiAgICAuLi5jcmVhdGVCbG9ja1NrZWxldG9uKCksXG5cbiAgICBuYW1lOiBcIkltYWdlXCIsXG5cbiAgICBkaXNwbGF5TmFtZTogPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9XCJjb21ldC5ibG9ja3MuaW1hZ2VcIiBkZWZhdWx0TWVzc2FnZT1cIkltYWdlXCIgLz4sXG5cbiAgICBkZWZhdWx0VmFsdWVzOiAoKSA9PiAoe1xuICAgICAgICBmaWxlOiB1bmRlZmluZWQsXG4gICAgICAgIGNyb3BBcmVhOiB1bmRlZmluZWQsXG4gICAgfSksXG5cbiAgICBjYXRlZ29yeTogQmxvY2tDYXRlZ29yeS5NZWRpYSxcblxuICAgIGNyZWF0ZVByZXZpZXdTdGF0ZTogKHN0YXRlLCBwcmV2aWV3Q29udGV4dCkgPT4gKHtcbiAgICAgICAgLi4uc3RhdGUsXG4gICAgICAgIHVybFRlbXBsYXRlOiBjcmVhdGVQcmV2aWV3VXJsKHN0YXRlLCBwcmV2aWV3Q29udGV4dC5hcGlVcmwpLFxuICAgICAgICBhZG1pbk1ldGE6IHsgcm91dGU6IHByZXZpZXdDb250ZXh0LnBhcmVudFVybCB9LFxuICAgIH0pLFxuXG4gICAgc3RhdGUyT3V0cHV0OiAodikgPT4ge1xuICAgICAgICBpZiAoIXYuZGFtRmlsZSkge1xuICAgICAgICAgICAgcmV0dXJuIHt9O1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGRhbUZpbGVJZDogdi5kYW1GaWxlLmlkLFxuICAgICAgICAgICAgY3JvcEFyZWE6IHYuY3JvcEFyZWEsXG4gICAgICAgIH07XG4gICAgfSxcblxuICAgIG91dHB1dDJTdGF0ZTogYXN5bmMgKG91dHB1dCwgeyBhcG9sbG9DbGllbnQgfSk6IFByb21pc2U8SW1hZ2VCbG9ja1N0YXRlPiA9PiB7XG4gICAgICAgIGlmICghb3V0cHV0LmRhbUZpbGVJZCkge1xuICAgICAgICAgICAgcmV0dXJuIHt9O1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgeyBkYXRhIH0gPSBhd2FpdCBhcG9sbG9DbGllbnQucXVlcnk8R1FMSW1hZ2VCbG9ja0RhbUZpbGVRdWVyeSwgR1FMSW1hZ2VCbG9ja0RhbUZpbGVRdWVyeVZhcmlhYmxlcz4oe1xuICAgICAgICAgICAgcXVlcnk6IGdxbGBcbiAgICAgICAgICAgICAgICBxdWVyeSBJbWFnZUJsb2NrRGFtRmlsZSgkaWQ6IElEISkge1xuICAgICAgICAgICAgICAgICAgICBkYW1GaWxlKGlkOiAkaWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlkXG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lXG4gICAgICAgICAgICAgICAgICAgICAgICBzaXplXG4gICAgICAgICAgICAgICAgICAgICAgICBtaW1ldHlwZVxuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudEhhc2hcbiAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlXG4gICAgICAgICAgICAgICAgICAgICAgICBhbHRUZXh0XG4gICAgICAgICAgICAgICAgICAgICAgICBhcmNoaXZlZFxuICAgICAgICAgICAgICAgICAgICAgICAgaW1hZ2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY3JvcEFyZWEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb2NhbFBvaW50XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBmaWxlVXJsXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBgLFxuICAgICAgICAgICAgdmFyaWFibGVzOiB7IGlkOiBvdXRwdXQuZGFtRmlsZUlkIH0sXG4gICAgICAgIH0pO1xuXG4gICAgICAgIC8vIFRPRE8gY29uc2lkZXIgdGhyb3dpbmcgYW4gZXJyb3JcbiAgICAgICAgLy8gVE9ETyBmaXggdHlwaW5nOiBnZW5lcmF0ZWQgR3JhcGhRTCBmaWxlcyB1c2UgbnVsbCwgd2UgdXNlIHVuZGVmaW5lZCwgZS5nLiB0aXRsZTogc3RyaW5nIHwgbnVsbCB2cyB0aXRsZT86IHN0cmluZ1xuICAgICAgICBjb25zdCBkYW1GaWxlID0gZGF0YS5kYW1GaWxlIGFzIHVua25vd24gYXMgUGl4ZWxJbWFnZUJsb2NrRGF0YVtcImRhbUZpbGVcIl07XG5cbiAgICAgICAgcmV0dXJuIHsgZGFtRmlsZSwgY3JvcEFyZWE6IG91dHB1dC5jcm9wQXJlYSB9O1xuICAgIH0sXG5cbiAgICBkZXBlbmRlbmNpZXM6IChzdGF0ZSkgPT4ge1xuICAgICAgICBjb25zdCBkZXBlbmRlbmNpZXM6IEJsb2NrRGVwZW5kZW5jeVtdID0gW107XG5cbiAgICAgICAgaWYgKHN0YXRlLmRhbUZpbGU/LmlkKSB7XG4gICAgICAgICAgICBkZXBlbmRlbmNpZXMucHVzaCh7XG4gICAgICAgICAgICAgICAgdGFyZ2V0R3JhcGhxbE9iamVjdFR5cGU6IFwiRGFtRmlsZVwiLFxuICAgICAgICAgICAgICAgIGlkOiBzdGF0ZS5kYW1GaWxlLmlkLFxuICAgICAgICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgICAgICAgICAgZGFtRmlsZTogc3RhdGUuZGFtRmlsZSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gZGVwZW5kZW5jaWVzO1xuICAgIH0sXG5cbiAgICByZXBsYWNlRGVwZW5kZW5jaWVzSW5PdXRwdXQ6IChvdXRwdXQsIHJlcGxhY2VtZW50cykgPT4ge1xuICAgICAgICBjb25zdCBjbG9uZWRPdXRwdXQ6IFBpeGVsSW1hZ2VCbG9ja0lucHV0ID0gZGVlcENsb25lKG91dHB1dCk7XG4gICAgICAgIGNvbnN0IHJlcGxhY2VtZW50ID0gcmVwbGFjZW1lbnRzLmZpbmQoKHJlcGxhY2VtZW50KSA9PiByZXBsYWNlbWVudC50eXBlID09PSBcIkRhbUZpbGVcIiAmJiByZXBsYWNlbWVudC5vcmlnaW5hbElkID09PSBvdXRwdXQuZGFtRmlsZUlkKTtcblxuICAgICAgICBpZiAocmVwbGFjZW1lbnQpIHtcbiAgICAgICAgICAgIGNsb25lZE91dHB1dC5kYW1GaWxlSWQgPSByZXBsYWNlbWVudC5yZXBsYWNlV2l0aElkO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGNsb25lZE91dHB1dDtcbiAgICB9LFxuXG4gICAgZGVmaW5lc093blBhZGRpbmc6IHRydWUsXG5cbiAgICBBZG1pbkNvbXBvbmVudDogKHsgc3RhdGUsIHVwZGF0ZVN0YXRlIH0pID0+IHtcbiAgICAgICAgY29uc3QgW29wZW4sIHNldE9wZW5dID0gdXNlU3RhdGUoZmFsc2UpO1xuICAgICAgICBjb25zdCBbYW5jaG9yRWwsIHNldEFuY2hvckVsXSA9IHVzZVN0YXRlPEhUTUxCdXR0b25FbGVtZW50IHwgbnVsbD4obnVsbCk7XG4gICAgICAgIGNvbnN0IHsgYXBpVXJsIH0gPSB1c2VDb21ldENvbmZpZygpO1xuICAgICAgICBjb25zdCB7IGZpbHRlcmVkQWNjZXB0ZWRNaW1lVHlwZXMgfSA9IHVzZURhbUFjY2VwdGVkTWltZVR5cGVzKCk7XG4gICAgICAgIGNvbnN0IGNvbnRlbnRTY29wZSA9IHVzZUNvbnRlbnRTY29wZSgpO1xuICAgICAgICBjb25zdCBhcG9sbG9DbGllbnQgPSB1c2VBcG9sbG9DbGllbnQoKTtcbiAgICAgICAgY29uc3QgeyBlbnRpdHlEZXBlbmRlbmN5TWFwIH0gPSB1c2VEZXBlbmRlbmNpZXNDb25maWcoKTtcblxuICAgICAgICAvLyB1c2VTeW5jSW1hZ2VBdHRyaWJ1dGVzKHsgc3RhdGUsIHVwZGF0ZVN0YXRlIH0pO1xuXG4gICAgICAgIGNvbnN0IGhhbmRsZUNsb3NlID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgICAgICAgICAgc2V0T3BlbihmYWxzZSk7XG4gICAgICAgIH0sIFtzZXRPcGVuXSk7XG5cbiAgICAgICAgY29uc3QgaGFuZGxlQ3JvcENsaWNrID0gKCkgPT4ge1xuICAgICAgICAgICAgc2V0T3Blbih0cnVlKTtcblxuICAgICAgICAgICAgaGFuZGxlTWVudUNsb3NlKCk7XG4gICAgICAgIH07XG5cbiAgICAgICAgY29uc3QgaGFuZGxlTWVudUNsb3NlID0gKCkgPT4ge1xuICAgICAgICAgICAgc2V0QW5jaG9yRWwobnVsbCk7XG4gICAgICAgIH07XG5cbiAgICAgICAgY29uc3QgcHJldmlld1VybCA9IGNyZWF0ZVByZXZpZXdVcmwoc3RhdGUsIGFwaVVybCwgeyB3aWR0aDogMzIwLCBoZWlnaHQ6IDMyMCB9KTtcblxuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgPFNlbGVjdFByZXZpZXdDb21wb25lbnQ+XG4gICAgICAgICAgICAgICAge3N0YXRlLmRhbUZpbGU/LmltYWdlID8gKFxuICAgICAgICAgICAgICAgICAgICA8PlxuICAgICAgICAgICAgICAgICAgICAgICAgPEJsb2NrQWRtaW5Db21wb25lbnRQYXBlciBkaXNhYmxlUGFkZGluZz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Q29udGVudFJvb3QgY29tcG9uZW50PVwiZGl2XCIgb25DbGljaz17KCkgPT4gc2V0T3Blbih0cnVlKX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxHcmlkIGNvbnRhaW5lciBhbGlnbkl0ZW1zPVwiY2VudGVyXCIgc3BhY2luZz17M30+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8R3JpZCBpdGVtPntwcmV2aWV3VXJsICYmIDxQcmV2aWV3SW1hZ2Ugc3JjPXtwcmV2aWV3VXJsfSB3aWR0aD1cIjcwXCIgaGVpZ2h0PVwiNzBcIiAvPn08L0dyaWQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8R3JpZCBpdGVtIHhzPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxUeXBvZ3JhcGh5IHZhcmlhbnQ9XCJzdWJ0aXRsZTFcIj57c3RhdGUuZGFtRmlsZS5uYW1lfTwvVHlwb2dyYXBoeT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8VHlwb2dyYXBoeSB2YXJpYW50PVwiYm9keTFcIiBjb2xvcj1cInRleHRTZWNvbmRhcnlcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPERhbVBhdGhMYXp5IGZpbGVJZD17c3RhdGUuZGFtRmlsZS5pZH0gLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1R5cG9ncmFwaHk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0dyaWQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8R3JpZCBpdGVtPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxJY29uQnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uTW91c2VEb3duPXsoZXZlbnQpID0+IGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbkNsaWNrPXsoZXZlbnQpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0QW5jaG9yRWwoZXZlbnQuY3VycmVudFRhcmdldCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemU9XCJsYXJnZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8TW9yZVZlcnRpY2FsIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9JY29uQnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9HcmlkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0dyaWQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Db250ZW50Um9vdD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RGl2aWRlciAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxCbG9ja0FkbWluQ29tcG9uZW50QnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXJ0SWNvbj17PERlbGV0ZSAvPn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gdXBkYXRlU3RhdGUoeyBkYW1GaWxlOiB1bmRlZmluZWQsIGNyb3BBcmVhOiB1bmRlZmluZWQgfSl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD1cImNvbWV0LmJsb2Nrcy5pbWFnZS5lbXB0eVwiIGRlZmF1bHRNZXNzYWdlPVwiRW1wdHlcIiAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQmxvY2tBZG1pbkNvbXBvbmVudEJ1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvQmxvY2tBZG1pbkNvbXBvbmVudFBhcGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgPE1lbnUgYW5jaG9yRWw9e2FuY2hvckVsfSBrZWVwTW91bnRlZCBvcGVuPXtCb29sZWFuKGFuY2hvckVsKX0gb25DbG9zZT17aGFuZGxlTWVudUNsb3NlfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8TWVudUl0ZW0gb25DbGljaz17aGFuZGxlQ3JvcENsaWNrfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPExpc3RJdGVtSWNvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxDcm9wIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvTGlzdEl0ZW1JY29uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD1cImNvbWV0LmJsb2Nrcy5pbWFnZS5jcm9wSW1hZ2VcIiBkZWZhdWx0TWVzc2FnZT1cIkNyb3AgaW1hZ2VcIiAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvTWVudUl0ZW0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge2VudGl0eURlcGVuZGVuY3lNYXBbXCJEYW1GaWxlXCJdICYmIHN0YXRlLmRhbUZpbGU/LmlkICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPE1lbnVJdGVtXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbkNsaWNrPXthc3luYyAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gaWQgaXMgY2hlY2tlZCB0aHJlZSBsaW5lcyBhYm92ZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tbm9uLW51bGwtYXNzZXJ0aW9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgcGF0aCA9IGF3YWl0IGVudGl0eURlcGVuZGVuY3lNYXBbXCJEYW1GaWxlXCJdLnJlc29sdmVQYXRoKHsgYXBvbGxvQ2xpZW50LCBpZDogc3RhdGUuZGFtRmlsZSEuaWQgfSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdXJsID0gY29udGVudFNjb3BlLm1hdGNoLnVybCArIHBhdGg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2luZG93Lm9wZW4odXJsLCBcIl9ibGFua1wiKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxMaXN0SXRlbUljb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPE9wZW5OZXdUYWIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvTGlzdEl0ZW1JY29uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9XCJjb21ldC5ibG9ja3MuaW1hZ2Uub3BlbkluRGFtXCIgZGVmYXVsdE1lc3NhZ2U9XCJPcGVuIGluIERBTVwiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvTWVudUl0ZW0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvTWVudT5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtvcGVuICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RWRpdEltYWdlRGlhbG9nXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGltYWdlPXt7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiBzdGF0ZS5kYW1GaWxlLm5hbWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cmw6IHN0YXRlLmRhbUZpbGUuZmlsZVVybCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBzdGF0ZS5kYW1GaWxlLmltYWdlLndpZHRoLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBzdGF0ZS5kYW1GaWxlLmltYWdlLmhlaWdodCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemU6IHN0YXRlLmRhbUZpbGUuc2l6ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGFtRmlsZUlkPXtzdGF0ZS5kYW1GaWxlLmlkfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbml0aWFsVmFsdWVzPXt7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VJbmhlcml0ZWREYW1TZXR0aW5nczogc3RhdGUuY3JvcEFyZWEgPT09IHVuZGVmaW5lZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNyb3BBcmVhOiBzdGF0ZS5jcm9wQXJlYSA/PyBzdGF0ZS5kYW1GaWxlLmltYWdlLmNyb3BBcmVhLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbmhlcml0ZWREYW1TZXR0aW5ncz17eyBjcm9wQXJlYTogc3RhdGUuZGFtRmlsZS5pbWFnZS5jcm9wQXJlYSB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvblN1Ym1pdD17KGNyb3BBcmVhKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cGRhdGVTdGF0ZSgocHJldlN0YXRlKSA9PiAoeyAuLi5wcmV2U3RhdGUsIGNyb3BBcmVhIH0pKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNldE9wZW4oZmFsc2UpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbkNsb3NlPXtoYW5kbGVDbG9zZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgPC8+XG4gICAgICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgICAgICAgPEJsb2Nrc0ZpbmFsRm9ybTx7IGRhbUZpbGU/OiBJbWFnZUJsb2NrU3RhdGVbXCJkYW1GaWxlXCJdIH0+XG4gICAgICAgICAgICAgICAgICAgICAgICBvblN1Ym1pdD17KG5ld1ZhbHVlcykgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVwZGF0ZVN0YXRlKChwcmV2U3RhdGUpID0+ICh7IC4uLnByZXZTdGF0ZSwgZGFtRmlsZTogbmV3VmFsdWVzLmRhbUZpbGUgfHwgdW5kZWZpbmVkLCBjcm9wQXJlYTogdW5kZWZpbmVkIH0pKTsgLy8gcmVzZXQgbG9jYWwgY3JvcCBhcmVhIHdoZW4gaW1hZ2UgY2hhbmdlc1xuICAgICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgIGluaXRpYWxWYWx1ZXM9e3sgZGFtRmlsZTogc3RhdGUuZGFtRmlsZSB9fVxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICA8RmllbGRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lPVwiZGFtRmlsZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29tcG9uZW50PXtGaWxlRmllbGR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZnVsbFdpZHRoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYnV0dG9uVGV4dD17PEZvcm1hdHRlZE1lc3NhZ2UgaWQ9XCJjb21ldC5ibG9ja3MuaW1hZ2UuY2hvb3NlSW1hZ2VcIiBkZWZhdWx0TWVzc2FnZT1cIkNob29zZSBpbWFnZVwiIC8+fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsbG93ZWRNaW1ldHlwZXM9e2ZpbHRlcmVkQWNjZXB0ZWRNaW1lVHlwZXMucGl4ZWxJbWFnZX1cbiAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgIDwvQmxvY2tzRmluYWxGb3JtPlxuICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICA8L1NlbGVjdFByZXZpZXdDb21wb25lbnQ+XG4gICAgICAgICk7XG4gICAgfSxcbiAgICBwcmV2aWV3Q29udGVudDogKHN0YXRlLCBjb250ZXh0KSA9PiB7XG4gICAgICAgIGlmICghc3RhdGUuZGFtRmlsZSB8fCAhc3RhdGUuZGFtRmlsZT8uZmlsZVVybCB8fCAhY29udGV4dD8uYXBpVXJsKSB7XG4gICAgICAgICAgICByZXR1cm4gW107XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgaW1hZ2VTaXplID0geyB3aWR0aDogMzIwLCBoZWlnaHQ6IDMyMCB9O1xuICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAgeyB0eXBlOiBcImltYWdlXCIsIGNvbnRlbnQ6IHsgc3JjOiBjcmVhdGVQcmV2aWV3VXJsKHN0YXRlLCBjb250ZXh0LmFwaVVybCwgaW1hZ2VTaXplKSwgLi4uaW1hZ2VTaXplIH0gfSxcbiAgICAgICAgICAgIHsgdHlwZTogXCJ0ZXh0XCIsIGNvbnRlbnQ6IHN0YXRlLmRhbUZpbGUubmFtZSB9LFxuICAgICAgICBdO1xuICAgIH0sXG5cbiAgICBleHRyYWN0VGV4dENvbnRlbnRzOiAoc3RhdGUpID0+IHtcbiAgICAgICAgY29uc3QgY29udGVudHMgPSBbXTtcblxuICAgICAgICBpZiAoc3RhdGUuZGFtRmlsZT8uYWx0VGV4dCkgY29udGVudHMucHVzaChzdGF0ZS5kYW1GaWxlLmFsdFRleHQpO1xuICAgICAgICBpZiAoc3RhdGUuZGFtRmlsZT8udGl0bGUpIGNvbnRlbnRzLnB1c2goc3RhdGUuZGFtRmlsZS50aXRsZSk7XG5cbiAgICAgICAgcmV0dXJuIGNvbnRlbnRzO1xuICAgIH0sXG59O1xuXG5jb25zdCBDb250ZW50Um9vdCA9IHN0eWxlZChCdXR0b25CYXNlKWBcbiAgICBwYWRkaW5nOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnNwYWNpbmcoMyl9O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG5gIGFzIHR5cGVvZiBCdXR0b25CYXNlO1xuXG5jb25zdCBQcmV2aWV3SW1hZ2UgPSBzdHlsZWQoXCJpbWdcIilgXG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG5gO1xuIl19 */"));
383
385
  var PreviewImage = /*#__PURE__*/(0, _styles.styled)("img", process.env.NODE_ENV === "production" ? {
384
386
  target: "eplad9t0"
385
387
  } : {
@@ -390,6 +392,6 @@ var PreviewImage = /*#__PURE__*/(0, _styles.styled)("img", process.env.NODE_ENV
390
392
  styles: "object-fit:cover"
391
393
  } : {
392
394
  name: "1vfhcql",
393
- styles: "object-fit:cover/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ibG9ja3MvUGl4ZWxJbWFnZUJsb2NrLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFvVGtDIiwiZmlsZSI6Ii4uLy4uL3NyYy9ibG9ja3MvUGl4ZWxJbWFnZUJsb2NrLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGdxbCwgdXNlQXBvbGxvQ2xpZW50IH0gZnJvbSBcIkBhcG9sbG8vY2xpZW50XCI7XG5pbXBvcnQgeyBGaWVsZCB9IGZyb20gXCJAY29tZXQvYWRtaW5cIjtcbmltcG9ydCB7IENyb3AsIERlbGV0ZSwgTW9yZVZlcnRpY2FsLCBPcGVuTmV3VGFiIH0gZnJvbSBcIkBjb21ldC9hZG1pbi1pY29uc1wiO1xuaW1wb3J0IHsgQnV0dG9uQmFzZSwgRGl2aWRlciwgR3JpZCwgSWNvbkJ1dHRvbiwgTGlzdEl0ZW1JY29uLCBNZW51LCBNZW51SXRlbSwgVHlwb2dyYXBoeSB9IGZyb20gXCJAbXVpL21hdGVyaWFsXCI7XG5pbXBvcnQgeyBzdHlsZWQgfSBmcm9tIFwiQG11aS9tYXRlcmlhbC9zdHlsZXNcIjtcbmltcG9ydCB7IGRlZXBDbG9uZSB9IGZyb20gXCJAbXVpL3gtZGF0YS1ncmlkL3V0aWxzL3V0aWxzXCI7XG5pbXBvcnQgeyB1c2VDYWxsYmFjaywgdXNlU3RhdGUgfSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCB7IEZvcm1hdHRlZE1lc3NhZ2UgfSBmcm9tIFwicmVhY3QtaW50bFwiO1xuXG5pbXBvcnQgeyB0eXBlIFBpeGVsSW1hZ2VCbG9ja0RhdGEsIHR5cGUgUGl4ZWxJbWFnZUJsb2NrSW5wdXQgfSBmcm9tIFwiLi4vYmxvY2tzLmdlbmVyYXRlZFwiO1xuaW1wb3J0IHsgdXNlQ29udGVudFNjb3BlIH0gZnJvbSBcIi4uL2NvbnRlbnRTY29wZS9Qcm92aWRlclwiO1xuaW1wb3J0IHsgdXNlRGFtQWNjZXB0ZWRNaW1lVHlwZXMgfSBmcm9tIFwiLi4vZGFtL2NvbmZpZy91c2VEYW1BY2NlcHRlZE1pbWVUeXBlc1wiO1xuaW1wb3J0IHsgdXNlRGVwZW5kZW5jaWVzQ29uZmlnIH0gZnJvbSBcIi4uL2RlcGVuZGVuY2llcy9EZXBlbmRlbmNpZXNDb25maWdcIjtcbmltcG9ydCB7IERhbVBhdGhMYXp5IH0gZnJvbSBcIi4uL2Zvcm0vZmlsZS9EYW1QYXRoTGF6eVwiO1xuaW1wb3J0IHsgRmlsZUZpZWxkIH0gZnJvbSBcIi4uL2Zvcm0vZmlsZS9GaWxlRmllbGRcIjtcbmltcG9ydCB7IHR5cGUgQ21zQmxvY2tDb250ZXh0IH0gZnJvbSBcIi4vQ21zQmxvY2tDb250ZXh0UHJvdmlkZXJcIjtcbmltcG9ydCB7IEJsb2NrQWRtaW5Db21wb25lbnRCdXR0b24gfSBmcm9tIFwiLi9jb21tb24vQmxvY2tBZG1pbkNvbXBvbmVudEJ1dHRvblwiO1xuaW1wb3J0IHsgQmxvY2tBZG1pbkNvbXBvbmVudFBhcGVyIH0gZnJvbSBcIi4vY29tbW9uL0Jsb2NrQWRtaW5Db21wb25lbnRQYXBlclwiO1xuaW1wb3J0IHsgQmxvY2tzRmluYWxGb3JtIH0gZnJvbSBcIi4vZm9ybS9CbG9ja3NGaW5hbEZvcm1cIjtcbmltcG9ydCB7IGNyZWF0ZUJsb2NrU2tlbGV0b24gfSBmcm9tIFwiLi9oZWxwZXJzL2NyZWF0ZUJsb2NrU2tlbGV0b25cIjtcbmltcG9ydCB7IFNlbGVjdFByZXZpZXdDb21wb25lbnQgfSBmcm9tIFwiLi9pZnJhbWVicmlkZ2UvU2VsZWN0UHJldmlld0NvbXBvbmVudFwiO1xuaW1wb3J0IHsgRWRpdEltYWdlRGlhbG9nIH0gZnJvbSBcIi4vaW1hZ2UvRWRpdEltYWdlRGlhbG9nXCI7XG5pbXBvcnQgeyB0eXBlIEdRTEltYWdlQmxvY2tEYW1GaWxlUXVlcnksIHR5cGUgR1FMSW1hZ2VCbG9ja0RhbUZpbGVRdWVyeVZhcmlhYmxlcyB9IGZyb20gXCIuL1BpeGVsSW1hZ2VCbG9jay5nZW5lcmF0ZWRcIjtcbmltcG9ydCB7IEJsb2NrQ2F0ZWdvcnksIHR5cGUgQmxvY2tEZXBlbmRlbmN5LCB0eXBlIEJsb2NrSW50ZXJmYWNlLCB0eXBlIEJsb2NrUHJldmlld0NvbnRleHQgfSBmcm9tIFwiLi90eXBlc1wiO1xuaW1wb3J0IHsgdXNlQ21zQmxvY2tDb250ZXh0IH0gZnJvbSBcIi4vdXNlQ21zQmxvY2tDb250ZXh0XCI7XG5cbmV4cG9ydCB0eXBlIEltYWdlQmxvY2tTdGF0ZSA9IE9taXQ8UGl4ZWxJbWFnZUJsb2NrRGF0YSwgXCJ1cmxUZW1wbGF0ZVwiPjtcblxuY29uc3QgdXJsVGVtcGxhdGVSb3V0ZSA9IFwiL2RhbS9pbWFnZXMvcHJldmlldy8kZmlsZUlkL2Nyb3A6JGNyb3AvcmVzaXplOiRyZXNpemVXaWR0aDokcmVzaXplSGVpZ2h0LyRmaWxlTmFtZVwiO1xuZnVuY3Rpb24gY3JlYXRlUHJldmlld1VybCh7IGRhbUZpbGUsIGNyb3BBcmVhIH06IEltYWdlQmxvY2tTdGF0ZSwgYXBpVXJsOiBzdHJpbmcsIHJlc2l6ZT86IHsgd2lkdGg6IG51bWJlcjsgaGVpZ2h0OiBudW1iZXIgfSk6IHN0cmluZyB7XG4gICAgaWYgKCFkYW1GaWxlIHx8ICFkYW1GaWxlLmltYWdlKSByZXR1cm4gXCJcIjtcblxuICAgIGNvbnN0IGltYWdlQ3JvcEFyZWEgPSBjcm9wQXJlYSA/IGNyb3BBcmVhIDogZGFtRmlsZS5pbWFnZS5jcm9wQXJlYTtcbiAgICBjb25zdCBjcm9wID1cbiAgICAgICAgaW1hZ2VDcm9wQXJlYS5mb2NhbFBvaW50ID09PSBcIlNNQVJUXCJcbiAgICAgICAgICAgID8gW2ltYWdlQ3JvcEFyZWEuZm9jYWxQb2ludF1cbiAgICAgICAgICAgIDogW2ltYWdlQ3JvcEFyZWEud2lkdGgsIGltYWdlQ3JvcEFyZWEuaGVpZ2h0LCBpbWFnZUNyb3BBcmVhLmZvY2FsUG9pbnQsIGltYWdlQ3JvcEFyZWEueCwgaW1hZ2VDcm9wQXJlYS55XTtcblxuICAgIGNvbnN0IGZpbGVuYW1lQ29udGFpbnNFeHRlbnNpb24gPSBkYW1GaWxlLm5hbWUubGFzdEluZGV4T2YoXCIuXCIpID49IDA7XG4gICAgY29uc3QgZmlsZW5hbWUgPSBmaWxlbmFtZUNvbnRhaW5zRXh0ZW5zaW9uID8gZGFtRmlsZS5uYW1lLnN1YnN0cigwLCBkYW1GaWxlLm5hbWUubGFzdEluZGV4T2YoXCIuXCIpKSA6IGRhbUZpbGUubmFtZTtcblxuICAgIGxldCB1cmxUZW1wbGF0ZSA9IGFwaVVybCArIHVybFRlbXBsYXRlUm91dGU7XG4gICAgaWYgKHJlc2l6ZSkge1xuICAgICAgICB1cmxUZW1wbGF0ZSA9IHVybFRlbXBsYXRlLnJlcGxhY2UoXCIkcmVzaXplV2lkdGhcIiwgU3RyaW5nKHJlc2l6ZS53aWR0aCkpLnJlcGxhY2UoXCIkcmVzaXplSGVpZ2h0XCIsIFN0cmluZyhyZXNpemUuaGVpZ2h0KSk7XG4gICAgfVxuXG4gICAgY29uc3QgdXJsID0gbmV3IFVSTCh1cmxUZW1wbGF0ZS5yZXBsYWNlKFwiJGZpbGVJZFwiLCBkYW1GaWxlLmlkKS5yZXBsYWNlKFwiJGNyb3BcIiwgY3JvcC5qb2luKFwiOlwiKSkucmVwbGFjZShcIiRmaWxlTmFtZVwiLCBmaWxlbmFtZSkpO1xuICAgIHJldHVybiB1cmwudG9TdHJpbmcoKTtcbn1cblxuZXhwb3J0IGNvbnN0IFBpeGVsSW1hZ2VCbG9jazogQmxvY2tJbnRlcmZhY2U8UGl4ZWxJbWFnZUJsb2NrRGF0YSwgSW1hZ2VCbG9ja1N0YXRlLCBQaXhlbEltYWdlQmxvY2tJbnB1dD4gPSB7XG4gICAgLi4uY3JlYXRlQmxvY2tTa2VsZXRvbigpLFxuXG4gICAgbmFtZTogXCJJbWFnZVwiLFxuXG4gICAgZGlzcGxheU5hbWU6IDxGb3JtYXR0ZWRNZXNzYWdlIGlkPVwiY29tZXQuYmxvY2tzLmltYWdlXCIgZGVmYXVsdE1lc3NhZ2U9XCJJbWFnZVwiIC8+LFxuXG4gICAgZGVmYXVsdFZhbHVlczogKCkgPT4gKHtcbiAgICAgICAgZmlsZTogdW5kZWZpbmVkLFxuICAgICAgICBjcm9wQXJlYTogdW5kZWZpbmVkLFxuICAgIH0pLFxuXG4gICAgY2F0ZWdvcnk6IEJsb2NrQ2F0ZWdvcnkuTWVkaWEsXG5cbiAgICBjcmVhdGVQcmV2aWV3U3RhdGU6IChzdGF0ZSwgcHJldmlld0N0eDogQmxvY2tQcmV2aWV3Q29udGV4dCAmIENtc0Jsb2NrQ29udGV4dCkgPT4gKHtcbiAgICAgICAgLi4uc3RhdGUsXG4gICAgICAgIHVybFRlbXBsYXRlOiBjcmVhdGVQcmV2aWV3VXJsKHN0YXRlLCBwcmV2aWV3Q3R4LmRhbUNvbmZpZy5hcGlVcmwpLFxuICAgICAgICBhZG1pbk1ldGE6IHsgcm91dGU6IHByZXZpZXdDdHgucGFyZW50VXJsIH0sXG4gICAgfSksXG5cbiAgICBzdGF0ZTJPdXRwdXQ6ICh2KSA9PiB7XG4gICAgICAgIGlmICghdi5kYW1GaWxlKSB7XG4gICAgICAgICAgICByZXR1cm4ge307XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgZGFtRmlsZUlkOiB2LmRhbUZpbGUuaWQsXG4gICAgICAgICAgICBjcm9wQXJlYTogdi5jcm9wQXJlYSxcbiAgICAgICAgfTtcbiAgICB9LFxuXG4gICAgb3V0cHV0MlN0YXRlOiBhc3luYyAob3V0cHV0LCB7IGFwb2xsb0NsaWVudCB9OiBDbXNCbG9ja0NvbnRleHQpOiBQcm9taXNlPEltYWdlQmxvY2tTdGF0ZT4gPT4ge1xuICAgICAgICBpZiAoIW91dHB1dC5kYW1GaWxlSWQpIHtcbiAgICAgICAgICAgIHJldHVybiB7fTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHsgZGF0YSB9ID0gYXdhaXQgYXBvbGxvQ2xpZW50LnF1ZXJ5PEdRTEltYWdlQmxvY2tEYW1GaWxlUXVlcnksIEdRTEltYWdlQmxvY2tEYW1GaWxlUXVlcnlWYXJpYWJsZXM+KHtcbiAgICAgICAgICAgIHF1ZXJ5OiBncWxgXG4gICAgICAgICAgICAgICAgcXVlcnkgSW1hZ2VCbG9ja0RhbUZpbGUoJGlkOiBJRCEpIHtcbiAgICAgICAgICAgICAgICAgICAgZGFtRmlsZShpZDogJGlkKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZFxuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZVxuICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZVxuICAgICAgICAgICAgICAgICAgICAgICAgbWltZXR5cGVcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnRIYXNoXG4gICAgICAgICAgICAgICAgICAgICAgICB0aXRsZVxuICAgICAgICAgICAgICAgICAgICAgICAgYWx0VGV4dFxuICAgICAgICAgICAgICAgICAgICAgICAgYXJjaGl2ZWRcbiAgICAgICAgICAgICAgICAgICAgICAgIGltYWdlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNyb3BBcmVhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9jYWxQb2ludFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB5XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgZmlsZVVybFxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgYCxcbiAgICAgICAgICAgIHZhcmlhYmxlczogeyBpZDogb3V0cHV0LmRhbUZpbGVJZCB9LFxuICAgICAgICB9KTtcblxuICAgICAgICAvLyBUT0RPIGNvbnNpZGVyIHRocm93aW5nIGFuIGVycm9yXG4gICAgICAgIC8vIFRPRE8gZml4IHR5cGluZzogZ2VuZXJhdGVkIEdyYXBoUUwgZmlsZXMgdXNlIG51bGwsIHdlIHVzZSB1bmRlZmluZWQsIGUuZy4gdGl0bGU6IHN0cmluZyB8IG51bGwgdnMgdGl0bGU/OiBzdHJpbmdcbiAgICAgICAgY29uc3QgZGFtRmlsZSA9IGRhdGEuZGFtRmlsZSBhcyB1bmtub3duIGFzIFBpeGVsSW1hZ2VCbG9ja0RhdGFbXCJkYW1GaWxlXCJdO1xuXG4gICAgICAgIHJldHVybiB7IGRhbUZpbGUsIGNyb3BBcmVhOiBvdXRwdXQuY3JvcEFyZWEgfTtcbiAgICB9LFxuXG4gICAgZGVwZW5kZW5jaWVzOiAoc3RhdGUpID0+IHtcbiAgICAgICAgY29uc3QgZGVwZW5kZW5jaWVzOiBCbG9ja0RlcGVuZGVuY3lbXSA9IFtdO1xuXG4gICAgICAgIGlmIChzdGF0ZS5kYW1GaWxlPy5pZCkge1xuICAgICAgICAgICAgZGVwZW5kZW5jaWVzLnB1c2goe1xuICAgICAgICAgICAgICAgIHRhcmdldEdyYXBocWxPYmplY3RUeXBlOiBcIkRhbUZpbGVcIixcbiAgICAgICAgICAgICAgICBpZDogc3RhdGUuZGFtRmlsZS5pZCxcbiAgICAgICAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICAgICAgICAgIGRhbUZpbGU6IHN0YXRlLmRhbUZpbGUsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGRlcGVuZGVuY2llcztcbiAgICB9LFxuXG4gICAgcmVwbGFjZURlcGVuZGVuY2llc0luT3V0cHV0OiAob3V0cHV0LCByZXBsYWNlbWVudHMpID0+IHtcbiAgICAgICAgY29uc3QgY2xvbmVkT3V0cHV0OiBQaXhlbEltYWdlQmxvY2tJbnB1dCA9IGRlZXBDbG9uZShvdXRwdXQpO1xuICAgICAgICBjb25zdCByZXBsYWNlbWVudCA9IHJlcGxhY2VtZW50cy5maW5kKChyZXBsYWNlbWVudCkgPT4gcmVwbGFjZW1lbnQudHlwZSA9PT0gXCJEYW1GaWxlXCIgJiYgcmVwbGFjZW1lbnQub3JpZ2luYWxJZCA9PT0gb3V0cHV0LmRhbUZpbGVJZCk7XG5cbiAgICAgICAgaWYgKHJlcGxhY2VtZW50KSB7XG4gICAgICAgICAgICBjbG9uZWRPdXRwdXQuZGFtRmlsZUlkID0gcmVwbGFjZW1lbnQucmVwbGFjZVdpdGhJZDtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBjbG9uZWRPdXRwdXQ7XG4gICAgfSxcblxuICAgIGRlZmluZXNPd25QYWRkaW5nOiB0cnVlLFxuXG4gICAgQWRtaW5Db21wb25lbnQ6ICh7IHN0YXRlLCB1cGRhdGVTdGF0ZSB9KSA9PiB7XG4gICAgICAgIGNvbnN0IFtvcGVuLCBzZXRPcGVuXSA9IHVzZVN0YXRlKGZhbHNlKTtcbiAgICAgICAgY29uc3QgW2FuY2hvckVsLCBzZXRBbmNob3JFbF0gPSB1c2VTdGF0ZTxIVE1MQnV0dG9uRWxlbWVudCB8IG51bGw+KG51bGwpO1xuICAgICAgICBjb25zdCBjb250ZXh0ID0gdXNlQ21zQmxvY2tDb250ZXh0KCk7XG4gICAgICAgIGNvbnN0IHsgZmlsdGVyZWRBY2NlcHRlZE1pbWVUeXBlcyB9ID0gdXNlRGFtQWNjZXB0ZWRNaW1lVHlwZXMoKTtcbiAgICAgICAgY29uc3QgY29udGVudFNjb3BlID0gdXNlQ29udGVudFNjb3BlKCk7XG4gICAgICAgIGNvbnN0IGFwb2xsb0NsaWVudCA9IHVzZUFwb2xsb0NsaWVudCgpO1xuICAgICAgICBjb25zdCBkZXBlbmRlbmN5TWFwID0gdXNlRGVwZW5kZW5jaWVzQ29uZmlnKCk7XG5cbiAgICAgICAgLy8gdXNlU3luY0ltYWdlQXR0cmlidXRlcyh7IHN0YXRlLCB1cGRhdGVTdGF0ZSB9KTtcblxuICAgICAgICBjb25zdCBoYW5kbGVDbG9zZSA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICAgICAgICAgIHNldE9wZW4oZmFsc2UpO1xuICAgICAgICB9LCBbc2V0T3Blbl0pO1xuXG4gICAgICAgIGNvbnN0IGhhbmRsZUNyb3BDbGljayA9ICgpID0+IHtcbiAgICAgICAgICAgIHNldE9wZW4odHJ1ZSk7XG5cbiAgICAgICAgICAgIGhhbmRsZU1lbnVDbG9zZSgpO1xuICAgICAgICB9O1xuXG4gICAgICAgIGNvbnN0IGhhbmRsZU1lbnVDbG9zZSA9ICgpID0+IHtcbiAgICAgICAgICAgIHNldEFuY2hvckVsKG51bGwpO1xuICAgICAgICB9O1xuXG4gICAgICAgIGNvbnN0IHByZXZpZXdVcmwgPSBjcmVhdGVQcmV2aWV3VXJsKHN0YXRlLCBjb250ZXh0LmRhbUNvbmZpZy5hcGlVcmwsIHsgd2lkdGg6IDMyMCwgaGVpZ2h0OiAzMjAgfSk7XG5cbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIDxTZWxlY3RQcmV2aWV3Q29tcG9uZW50PlxuICAgICAgICAgICAgICAgIHtzdGF0ZS5kYW1GaWxlPy5pbWFnZSA/IChcbiAgICAgICAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxCbG9ja0FkbWluQ29tcG9uZW50UGFwZXIgZGlzYWJsZVBhZGRpbmc+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPENvbnRlbnRSb290IGNvbXBvbmVudD1cImRpdlwiIG9uQ2xpY2s9eygpID0+IHNldE9wZW4odHJ1ZSl9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8R3JpZCBjb250YWluZXIgYWxpZ25JdGVtcz1cImNlbnRlclwiIHNwYWNpbmc9ezN9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEdyaWQgaXRlbT57cHJldmlld1VybCAmJiA8UHJldmlld0ltYWdlIHNyYz17cHJldmlld1VybH0gd2lkdGg9XCI3MFwiIGhlaWdodD1cIjcwXCIgLz59PC9HcmlkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEdyaWQgaXRlbSB4cz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8VHlwb2dyYXBoeSB2YXJpYW50PVwic3VidGl0bGUxXCI+e3N0YXRlLmRhbUZpbGUubmFtZX08L1R5cG9ncmFwaHk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFR5cG9ncmFwaHkgdmFyaWFudD1cImJvZHkxXCIgY29sb3I9XCJ0ZXh0U2Vjb25kYXJ5XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxEYW1QYXRoTGF6eSBmaWxlSWQ9e3N0YXRlLmRhbUZpbGUuaWR9IC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9UeXBvZ3JhcGh5PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9HcmlkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEdyaWQgaXRlbT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SWNvbkJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbk1vdXNlRG93bj17KGV2ZW50KSA9PiBldmVudC5zdG9wUHJvcGFnYXRpb24oKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25DbGljaz17KGV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNldEFuY2hvckVsKGV2ZW50LmN1cnJlbnRUYXJnZXQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplPVwibGFyZ2VcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPE1vcmVWZXJ0aWNhbCAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvSWNvbkJ1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvR3JpZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9HcmlkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQ29udGVudFJvb3Q+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPERpdmlkZXIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8QmxvY2tBZG1pbkNvbXBvbmVudEJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGFydEljb249ezxEZWxldGUgLz59XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHVwZGF0ZVN0YXRlKHsgZGFtRmlsZTogdW5kZWZpbmVkLCBjcm9wQXJlYTogdW5kZWZpbmVkIH0pfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9XCJjb21ldC5ibG9ja3MuaW1hZ2UuZW1wdHlcIiBkZWZhdWx0TWVzc2FnZT1cIkVtcHR5XCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0Jsb2NrQWRtaW5Db21wb25lbnRCdXR0b24+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L0Jsb2NrQWRtaW5Db21wb25lbnRQYXBlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxNZW51IGFuY2hvckVsPXthbmNob3JFbH0ga2VlcE1vdW50ZWQgb3Blbj17Qm9vbGVhbihhbmNob3JFbCl9IG9uQ2xvc2U9e2hhbmRsZU1lbnVDbG9zZX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPE1lbnVJdGVtIG9uQ2xpY2s9e2hhbmRsZUNyb3BDbGlja30+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxMaXN0SXRlbUljb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Q3JvcCAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0xpc3RJdGVtSWNvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9XCJjb21ldC5ibG9ja3MuaW1hZ2UuY3JvcEltYWdlXCIgZGVmYXVsdE1lc3NhZ2U9XCJDcm9wIGltYWdlXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L01lbnVJdGVtPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtkZXBlbmRlbmN5TWFwW1wiRGFtRmlsZVwiXSAmJiBzdGF0ZS5kYW1GaWxlPy5pZCAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxNZW51SXRlbVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25DbGljaz17YXN5bmMgKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGlkIGlzIGNoZWNrZWQgdGhyZWUgbGluZXMgYWJvdmVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLW5vbi1udWxsLWFzc2VydGlvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHBhdGggPSBhd2FpdCBkZXBlbmRlbmN5TWFwW1wiRGFtRmlsZVwiXS5yZXNvbHZlUGF0aCh7IGFwb2xsb0NsaWVudCwgaWQ6IHN0YXRlLmRhbUZpbGUhLmlkIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVybCA9IGNvbnRlbnRTY29wZS5tYXRjaC51cmwgKyBwYXRoO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpbmRvdy5vcGVuKHVybCwgXCJfYmxhbmtcIik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8TGlzdEl0ZW1JY29uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxPcGVuTmV3VGFiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0xpc3RJdGVtSWNvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlIGlkPVwiY29tZXQuYmxvY2tzLmltYWdlLm9wZW5JbkRhbVwiIGRlZmF1bHRNZXNzYWdlPVwiT3BlbiBpbiBEQU1cIiAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L01lbnVJdGVtPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICA8L01lbnU+XG4gICAgICAgICAgICAgICAgICAgICAgICB7b3BlbiAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEVkaXRJbWFnZURpYWxvZ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbWFnZT17e1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogc3RhdGUuZGFtRmlsZS5uYW1lLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXJsOiBzdGF0ZS5kYW1GaWxlLmZpbGVVcmwsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogc3RhdGUuZGFtRmlsZS5pbWFnZS53aWR0aCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogc3RhdGUuZGFtRmlsZS5pbWFnZS5oZWlnaHQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplOiBzdGF0ZS5kYW1GaWxlLnNpemUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhbUZpbGVJZD17c3RhdGUuZGFtRmlsZS5pZH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5pdGlhbFZhbHVlcz17e1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlSW5oZXJpdGVkRGFtU2V0dGluZ3M6IHN0YXRlLmNyb3BBcmVhID09PSB1bmRlZmluZWQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjcm9wQXJlYTogc3RhdGUuY3JvcEFyZWEgPz8gc3RhdGUuZGFtRmlsZS5pbWFnZS5jcm9wQXJlYSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5oZXJpdGVkRGFtU2V0dGluZ3M9e3sgY3JvcEFyZWE6IHN0YXRlLmRhbUZpbGUuaW1hZ2UuY3JvcEFyZWEgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25TdWJtaXQ9eyhjcm9wQXJlYSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXBkYXRlU3RhdGUoKHByZXZTdGF0ZSkgPT4gKHsgLi4ucHJldlN0YXRlLCBjcm9wQXJlYSB9KSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRPcGVuKGZhbHNlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25DbG9zZT17aGFuZGxlQ2xvc2V9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgICAgICAgIDxCbG9ja3NGaW5hbEZvcm08eyBkYW1GaWxlPzogSW1hZ2VCbG9ja1N0YXRlW1wiZGFtRmlsZVwiXSB9PlxuICAgICAgICAgICAgICAgICAgICAgICAgb25TdWJtaXQ9eyhuZXdWYWx1ZXMpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cGRhdGVTdGF0ZSgocHJldlN0YXRlKSA9PiAoeyAuLi5wcmV2U3RhdGUsIGRhbUZpbGU6IG5ld1ZhbHVlcy5kYW1GaWxlIHx8IHVuZGVmaW5lZCwgY3JvcEFyZWE6IHVuZGVmaW5lZCB9KSk7IC8vIHJlc2V0IGxvY2FsIGNyb3AgYXJlYSB3aGVuIGltYWdlIGNoYW5nZXNcbiAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgICAgICBpbml0aWFsVmFsdWVzPXt7IGRhbUZpbGU6IHN0YXRlLmRhbUZpbGUgfX1cbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEZpZWxkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT1cImRhbUZpbGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBvbmVudD17RmlsZUZpZWxkfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ1bGxXaWR0aFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ1dHRvblRleHQ9ezxGb3JtYXR0ZWRNZXNzYWdlIGlkPVwiY29tZXQuYmxvY2tzLmltYWdlLmNob29zZUltYWdlXCIgZGVmYXVsdE1lc3NhZ2U9XCJDaG9vc2UgaW1hZ2VcIiAvPn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbGxvd2VkTWltZXR5cGVzPXtmaWx0ZXJlZEFjY2VwdGVkTWltZVR5cGVzLnBpeGVsSW1hZ2V9XG4gICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICA8L0Jsb2Nrc0ZpbmFsRm9ybT5cbiAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgPC9TZWxlY3RQcmV2aWV3Q29tcG9uZW50PlxuICAgICAgICApO1xuICAgIH0sXG4gICAgcHJldmlld0NvbnRlbnQ6IChzdGF0ZSwgY3R4KSA9PiB7XG4gICAgICAgIGlmICghc3RhdGUuZGFtRmlsZSB8fCAhc3RhdGUuZGFtRmlsZT8uZmlsZVVybCB8fCAhY3R4Py5kYW1Db25maWc/LmFwaVVybCkge1xuICAgICAgICAgICAgcmV0dXJuIFtdO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGltYWdlU2l6ZSA9IHsgd2lkdGg6IDMyMCwgaGVpZ2h0OiAzMjAgfTtcbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgIHsgdHlwZTogXCJpbWFnZVwiLCBjb250ZW50OiB7IHNyYzogY3JlYXRlUHJldmlld1VybChzdGF0ZSwgY3R4LmRhbUNvbmZpZy5hcGlVcmwsIGltYWdlU2l6ZSksIC4uLmltYWdlU2l6ZSB9IH0sXG4gICAgICAgICAgICB7IHR5cGU6IFwidGV4dFwiLCBjb250ZW50OiBzdGF0ZS5kYW1GaWxlLm5hbWUgfSxcbiAgICAgICAgXTtcbiAgICB9LFxuXG4gICAgZXh0cmFjdFRleHRDb250ZW50czogKHN0YXRlKSA9PiB7XG4gICAgICAgIGNvbnN0IGNvbnRlbnRzID0gW107XG5cbiAgICAgICAgaWYgKHN0YXRlLmRhbUZpbGU/LmFsdFRleHQpIGNvbnRlbnRzLnB1c2goc3RhdGUuZGFtRmlsZS5hbHRUZXh0KTtcbiAgICAgICAgaWYgKHN0YXRlLmRhbUZpbGU/LnRpdGxlKSBjb250ZW50cy5wdXNoKHN0YXRlLmRhbUZpbGUudGl0bGUpO1xuXG4gICAgICAgIHJldHVybiBjb250ZW50cztcbiAgICB9LFxufTtcblxuY29uc3QgQ29udGVudFJvb3QgPSBzdHlsZWQoQnV0dG9uQmFzZSlgXG4gICAgcGFkZGluZzogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjaW5nKDMpfTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuYCBhcyB0eXBlb2YgQnV0dG9uQmFzZTtcblxuY29uc3QgUHJldmlld0ltYWdlID0gc3R5bGVkKFwiaW1nXCIpYFxuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuYDtcbiJdfQ== */",
395
+ styles: "object-fit:cover/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ibG9ja3MvUGl4ZWxJbWFnZUJsb2NrLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFtVGtDIiwiZmlsZSI6Ii4uLy4uL3NyYy9ibG9ja3MvUGl4ZWxJbWFnZUJsb2NrLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGdxbCwgdXNlQXBvbGxvQ2xpZW50IH0gZnJvbSBcIkBhcG9sbG8vY2xpZW50XCI7XG5pbXBvcnQgeyBGaWVsZCB9IGZyb20gXCJAY29tZXQvYWRtaW5cIjtcbmltcG9ydCB7IENyb3AsIERlbGV0ZSwgTW9yZVZlcnRpY2FsLCBPcGVuTmV3VGFiIH0gZnJvbSBcIkBjb21ldC9hZG1pbi1pY29uc1wiO1xuaW1wb3J0IHsgQnV0dG9uQmFzZSwgRGl2aWRlciwgR3JpZCwgSWNvbkJ1dHRvbiwgTGlzdEl0ZW1JY29uLCBNZW51LCBNZW51SXRlbSwgVHlwb2dyYXBoeSB9IGZyb20gXCJAbXVpL21hdGVyaWFsXCI7XG5pbXBvcnQgeyBzdHlsZWQgfSBmcm9tIFwiQG11aS9tYXRlcmlhbC9zdHlsZXNcIjtcbmltcG9ydCB7IGRlZXBDbG9uZSB9IGZyb20gXCJAbXVpL3gtZGF0YS1ncmlkL3V0aWxzL3V0aWxzXCI7XG5pbXBvcnQgeyB1c2VDYWxsYmFjaywgdXNlU3RhdGUgfSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCB7IEZvcm1hdHRlZE1lc3NhZ2UgfSBmcm9tIFwicmVhY3QtaW50bFwiO1xuXG5pbXBvcnQgeyB0eXBlIFBpeGVsSW1hZ2VCbG9ja0RhdGEsIHR5cGUgUGl4ZWxJbWFnZUJsb2NrSW5wdXQgfSBmcm9tIFwiLi4vYmxvY2tzLmdlbmVyYXRlZFwiO1xuaW1wb3J0IHsgdXNlQ29tZXRDb25maWcgfSBmcm9tIFwiLi4vY29uZmlnL0NvbWV0Q29uZmlnQ29udGV4dFwiO1xuaW1wb3J0IHsgdXNlQ29udGVudFNjb3BlIH0gZnJvbSBcIi4uL2NvbnRlbnRTY29wZS9Qcm92aWRlclwiO1xuaW1wb3J0IHsgdXNlRGFtQWNjZXB0ZWRNaW1lVHlwZXMgfSBmcm9tIFwiLi4vZGFtL2NvbmZpZy91c2VEYW1BY2NlcHRlZE1pbWVUeXBlc1wiO1xuaW1wb3J0IHsgdXNlRGVwZW5kZW5jaWVzQ29uZmlnIH0gZnJvbSBcIi4uL2RlcGVuZGVuY2llcy9kZXBlbmRlbmNpZXNDb25maWdcIjtcbmltcG9ydCB7IERhbVBhdGhMYXp5IH0gZnJvbSBcIi4uL2Zvcm0vZmlsZS9EYW1QYXRoTGF6eVwiO1xuaW1wb3J0IHsgRmlsZUZpZWxkIH0gZnJvbSBcIi4uL2Zvcm0vZmlsZS9GaWxlRmllbGRcIjtcbmltcG9ydCB7IEJsb2NrQWRtaW5Db21wb25lbnRCdXR0b24gfSBmcm9tIFwiLi9jb21tb24vQmxvY2tBZG1pbkNvbXBvbmVudEJ1dHRvblwiO1xuaW1wb3J0IHsgQmxvY2tBZG1pbkNvbXBvbmVudFBhcGVyIH0gZnJvbSBcIi4vY29tbW9uL0Jsb2NrQWRtaW5Db21wb25lbnRQYXBlclwiO1xuaW1wb3J0IHsgQmxvY2tzRmluYWxGb3JtIH0gZnJvbSBcIi4vZm9ybS9CbG9ja3NGaW5hbEZvcm1cIjtcbmltcG9ydCB7IGNyZWF0ZUJsb2NrU2tlbGV0b24gfSBmcm9tIFwiLi9oZWxwZXJzL2NyZWF0ZUJsb2NrU2tlbGV0b25cIjtcbmltcG9ydCB7IFNlbGVjdFByZXZpZXdDb21wb25lbnQgfSBmcm9tIFwiLi9pZnJhbWVicmlkZ2UvU2VsZWN0UHJldmlld0NvbXBvbmVudFwiO1xuaW1wb3J0IHsgRWRpdEltYWdlRGlhbG9nIH0gZnJvbSBcIi4vaW1hZ2UvRWRpdEltYWdlRGlhbG9nXCI7XG5pbXBvcnQgeyB0eXBlIEdRTEltYWdlQmxvY2tEYW1GaWxlUXVlcnksIHR5cGUgR1FMSW1hZ2VCbG9ja0RhbUZpbGVRdWVyeVZhcmlhYmxlcyB9IGZyb20gXCIuL1BpeGVsSW1hZ2VCbG9jay5nZW5lcmF0ZWRcIjtcbmltcG9ydCB7IEJsb2NrQ2F0ZWdvcnksIHR5cGUgQmxvY2tEZXBlbmRlbmN5LCB0eXBlIEJsb2NrSW50ZXJmYWNlIH0gZnJvbSBcIi4vdHlwZXNcIjtcblxuZXhwb3J0IHR5cGUgSW1hZ2VCbG9ja1N0YXRlID0gT21pdDxQaXhlbEltYWdlQmxvY2tEYXRhLCBcInVybFRlbXBsYXRlXCI+O1xuXG5jb25zdCB1cmxUZW1wbGF0ZVJvdXRlID0gXCIvZGFtL2ltYWdlcy9wcmV2aWV3LyRmaWxlSWQvY3JvcDokY3JvcC9yZXNpemU6JHJlc2l6ZVdpZHRoOiRyZXNpemVIZWlnaHQvJGZpbGVOYW1lXCI7XG5mdW5jdGlvbiBjcmVhdGVQcmV2aWV3VXJsKHsgZGFtRmlsZSwgY3JvcEFyZWEgfTogSW1hZ2VCbG9ja1N0YXRlLCBhcGlVcmw6IHN0cmluZywgcmVzaXplPzogeyB3aWR0aDogbnVtYmVyOyBoZWlnaHQ6IG51bWJlciB9KTogc3RyaW5nIHtcbiAgICBpZiAoIWRhbUZpbGUgfHwgIWRhbUZpbGUuaW1hZ2UpIHJldHVybiBcIlwiO1xuXG4gICAgY29uc3QgaW1hZ2VDcm9wQXJlYSA9IGNyb3BBcmVhID8gY3JvcEFyZWEgOiBkYW1GaWxlLmltYWdlLmNyb3BBcmVhO1xuICAgIGNvbnN0IGNyb3AgPVxuICAgICAgICBpbWFnZUNyb3BBcmVhLmZvY2FsUG9pbnQgPT09IFwiU01BUlRcIlxuICAgICAgICAgICAgPyBbaW1hZ2VDcm9wQXJlYS5mb2NhbFBvaW50XVxuICAgICAgICAgICAgOiBbaW1hZ2VDcm9wQXJlYS53aWR0aCwgaW1hZ2VDcm9wQXJlYS5oZWlnaHQsIGltYWdlQ3JvcEFyZWEuZm9jYWxQb2ludCwgaW1hZ2VDcm9wQXJlYS54LCBpbWFnZUNyb3BBcmVhLnldO1xuXG4gICAgY29uc3QgZmlsZW5hbWVDb250YWluc0V4dGVuc2lvbiA9IGRhbUZpbGUubmFtZS5sYXN0SW5kZXhPZihcIi5cIikgPj0gMDtcbiAgICBjb25zdCBmaWxlbmFtZSA9IGZpbGVuYW1lQ29udGFpbnNFeHRlbnNpb24gPyBkYW1GaWxlLm5hbWUuc3Vic3RyKDAsIGRhbUZpbGUubmFtZS5sYXN0SW5kZXhPZihcIi5cIikpIDogZGFtRmlsZS5uYW1lO1xuXG4gICAgbGV0IHVybFRlbXBsYXRlID0gYXBpVXJsICsgdXJsVGVtcGxhdGVSb3V0ZTtcbiAgICBpZiAocmVzaXplKSB7XG4gICAgICAgIHVybFRlbXBsYXRlID0gdXJsVGVtcGxhdGUucmVwbGFjZShcIiRyZXNpemVXaWR0aFwiLCBTdHJpbmcocmVzaXplLndpZHRoKSkucmVwbGFjZShcIiRyZXNpemVIZWlnaHRcIiwgU3RyaW5nKHJlc2l6ZS5oZWlnaHQpKTtcbiAgICB9XG5cbiAgICBjb25zdCB1cmwgPSBuZXcgVVJMKHVybFRlbXBsYXRlLnJlcGxhY2UoXCIkZmlsZUlkXCIsIGRhbUZpbGUuaWQpLnJlcGxhY2UoXCIkY3JvcFwiLCBjcm9wLmpvaW4oXCI6XCIpKS5yZXBsYWNlKFwiJGZpbGVOYW1lXCIsIGZpbGVuYW1lKSk7XG4gICAgcmV0dXJuIHVybC50b1N0cmluZygpO1xufVxuXG5leHBvcnQgY29uc3QgUGl4ZWxJbWFnZUJsb2NrOiBCbG9ja0ludGVyZmFjZTxQaXhlbEltYWdlQmxvY2tEYXRhLCBJbWFnZUJsb2NrU3RhdGUsIFBpeGVsSW1hZ2VCbG9ja0lucHV0PiA9IHtcbiAgICAuLi5jcmVhdGVCbG9ja1NrZWxldG9uKCksXG5cbiAgICBuYW1lOiBcIkltYWdlXCIsXG5cbiAgICBkaXNwbGF5TmFtZTogPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9XCJjb21ldC5ibG9ja3MuaW1hZ2VcIiBkZWZhdWx0TWVzc2FnZT1cIkltYWdlXCIgLz4sXG5cbiAgICBkZWZhdWx0VmFsdWVzOiAoKSA9PiAoe1xuICAgICAgICBmaWxlOiB1bmRlZmluZWQsXG4gICAgICAgIGNyb3BBcmVhOiB1bmRlZmluZWQsXG4gICAgfSksXG5cbiAgICBjYXRlZ29yeTogQmxvY2tDYXRlZ29yeS5NZWRpYSxcblxuICAgIGNyZWF0ZVByZXZpZXdTdGF0ZTogKHN0YXRlLCBwcmV2aWV3Q29udGV4dCkgPT4gKHtcbiAgICAgICAgLi4uc3RhdGUsXG4gICAgICAgIHVybFRlbXBsYXRlOiBjcmVhdGVQcmV2aWV3VXJsKHN0YXRlLCBwcmV2aWV3Q29udGV4dC5hcGlVcmwpLFxuICAgICAgICBhZG1pbk1ldGE6IHsgcm91dGU6IHByZXZpZXdDb250ZXh0LnBhcmVudFVybCB9LFxuICAgIH0pLFxuXG4gICAgc3RhdGUyT3V0cHV0OiAodikgPT4ge1xuICAgICAgICBpZiAoIXYuZGFtRmlsZSkge1xuICAgICAgICAgICAgcmV0dXJuIHt9O1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGRhbUZpbGVJZDogdi5kYW1GaWxlLmlkLFxuICAgICAgICAgICAgY3JvcEFyZWE6IHYuY3JvcEFyZWEsXG4gICAgICAgIH07XG4gICAgfSxcblxuICAgIG91dHB1dDJTdGF0ZTogYXN5bmMgKG91dHB1dCwgeyBhcG9sbG9DbGllbnQgfSk6IFByb21pc2U8SW1hZ2VCbG9ja1N0YXRlPiA9PiB7XG4gICAgICAgIGlmICghb3V0cHV0LmRhbUZpbGVJZCkge1xuICAgICAgICAgICAgcmV0dXJuIHt9O1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgeyBkYXRhIH0gPSBhd2FpdCBhcG9sbG9DbGllbnQucXVlcnk8R1FMSW1hZ2VCbG9ja0RhbUZpbGVRdWVyeSwgR1FMSW1hZ2VCbG9ja0RhbUZpbGVRdWVyeVZhcmlhYmxlcz4oe1xuICAgICAgICAgICAgcXVlcnk6IGdxbGBcbiAgICAgICAgICAgICAgICBxdWVyeSBJbWFnZUJsb2NrRGFtRmlsZSgkaWQ6IElEISkge1xuICAgICAgICAgICAgICAgICAgICBkYW1GaWxlKGlkOiAkaWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlkXG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lXG4gICAgICAgICAgICAgICAgICAgICAgICBzaXplXG4gICAgICAgICAgICAgICAgICAgICAgICBtaW1ldHlwZVxuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudEhhc2hcbiAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlXG4gICAgICAgICAgICAgICAgICAgICAgICBhbHRUZXh0XG4gICAgICAgICAgICAgICAgICAgICAgICBhcmNoaXZlZFxuICAgICAgICAgICAgICAgICAgICAgICAgaW1hZ2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY3JvcEFyZWEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb2NhbFBvaW50XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBmaWxlVXJsXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBgLFxuICAgICAgICAgICAgdmFyaWFibGVzOiB7IGlkOiBvdXRwdXQuZGFtRmlsZUlkIH0sXG4gICAgICAgIH0pO1xuXG4gICAgICAgIC8vIFRPRE8gY29uc2lkZXIgdGhyb3dpbmcgYW4gZXJyb3JcbiAgICAgICAgLy8gVE9ETyBmaXggdHlwaW5nOiBnZW5lcmF0ZWQgR3JhcGhRTCBmaWxlcyB1c2UgbnVsbCwgd2UgdXNlIHVuZGVmaW5lZCwgZS5nLiB0aXRsZTogc3RyaW5nIHwgbnVsbCB2cyB0aXRsZT86IHN0cmluZ1xuICAgICAgICBjb25zdCBkYW1GaWxlID0gZGF0YS5kYW1GaWxlIGFzIHVua25vd24gYXMgUGl4ZWxJbWFnZUJsb2NrRGF0YVtcImRhbUZpbGVcIl07XG5cbiAgICAgICAgcmV0dXJuIHsgZGFtRmlsZSwgY3JvcEFyZWE6IG91dHB1dC5jcm9wQXJlYSB9O1xuICAgIH0sXG5cbiAgICBkZXBlbmRlbmNpZXM6IChzdGF0ZSkgPT4ge1xuICAgICAgICBjb25zdCBkZXBlbmRlbmNpZXM6IEJsb2NrRGVwZW5kZW5jeVtdID0gW107XG5cbiAgICAgICAgaWYgKHN0YXRlLmRhbUZpbGU/LmlkKSB7XG4gICAgICAgICAgICBkZXBlbmRlbmNpZXMucHVzaCh7XG4gICAgICAgICAgICAgICAgdGFyZ2V0R3JhcGhxbE9iamVjdFR5cGU6IFwiRGFtRmlsZVwiLFxuICAgICAgICAgICAgICAgIGlkOiBzdGF0ZS5kYW1GaWxlLmlkLFxuICAgICAgICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgICAgICAgICAgZGFtRmlsZTogc3RhdGUuZGFtRmlsZSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gZGVwZW5kZW5jaWVzO1xuICAgIH0sXG5cbiAgICByZXBsYWNlRGVwZW5kZW5jaWVzSW5PdXRwdXQ6IChvdXRwdXQsIHJlcGxhY2VtZW50cykgPT4ge1xuICAgICAgICBjb25zdCBjbG9uZWRPdXRwdXQ6IFBpeGVsSW1hZ2VCbG9ja0lucHV0ID0gZGVlcENsb25lKG91dHB1dCk7XG4gICAgICAgIGNvbnN0IHJlcGxhY2VtZW50ID0gcmVwbGFjZW1lbnRzLmZpbmQoKHJlcGxhY2VtZW50KSA9PiByZXBsYWNlbWVudC50eXBlID09PSBcIkRhbUZpbGVcIiAmJiByZXBsYWNlbWVudC5vcmlnaW5hbElkID09PSBvdXRwdXQuZGFtRmlsZUlkKTtcblxuICAgICAgICBpZiAocmVwbGFjZW1lbnQpIHtcbiAgICAgICAgICAgIGNsb25lZE91dHB1dC5kYW1GaWxlSWQgPSByZXBsYWNlbWVudC5yZXBsYWNlV2l0aElkO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGNsb25lZE91dHB1dDtcbiAgICB9LFxuXG4gICAgZGVmaW5lc093blBhZGRpbmc6IHRydWUsXG5cbiAgICBBZG1pbkNvbXBvbmVudDogKHsgc3RhdGUsIHVwZGF0ZVN0YXRlIH0pID0+IHtcbiAgICAgICAgY29uc3QgW29wZW4sIHNldE9wZW5dID0gdXNlU3RhdGUoZmFsc2UpO1xuICAgICAgICBjb25zdCBbYW5jaG9yRWwsIHNldEFuY2hvckVsXSA9IHVzZVN0YXRlPEhUTUxCdXR0b25FbGVtZW50IHwgbnVsbD4obnVsbCk7XG4gICAgICAgIGNvbnN0IHsgYXBpVXJsIH0gPSB1c2VDb21ldENvbmZpZygpO1xuICAgICAgICBjb25zdCB7IGZpbHRlcmVkQWNjZXB0ZWRNaW1lVHlwZXMgfSA9IHVzZURhbUFjY2VwdGVkTWltZVR5cGVzKCk7XG4gICAgICAgIGNvbnN0IGNvbnRlbnRTY29wZSA9IHVzZUNvbnRlbnRTY29wZSgpO1xuICAgICAgICBjb25zdCBhcG9sbG9DbGllbnQgPSB1c2VBcG9sbG9DbGllbnQoKTtcbiAgICAgICAgY29uc3QgeyBlbnRpdHlEZXBlbmRlbmN5TWFwIH0gPSB1c2VEZXBlbmRlbmNpZXNDb25maWcoKTtcblxuICAgICAgICAvLyB1c2VTeW5jSW1hZ2VBdHRyaWJ1dGVzKHsgc3RhdGUsIHVwZGF0ZVN0YXRlIH0pO1xuXG4gICAgICAgIGNvbnN0IGhhbmRsZUNsb3NlID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgICAgICAgICAgc2V0T3BlbihmYWxzZSk7XG4gICAgICAgIH0sIFtzZXRPcGVuXSk7XG5cbiAgICAgICAgY29uc3QgaGFuZGxlQ3JvcENsaWNrID0gKCkgPT4ge1xuICAgICAgICAgICAgc2V0T3Blbih0cnVlKTtcblxuICAgICAgICAgICAgaGFuZGxlTWVudUNsb3NlKCk7XG4gICAgICAgIH07XG5cbiAgICAgICAgY29uc3QgaGFuZGxlTWVudUNsb3NlID0gKCkgPT4ge1xuICAgICAgICAgICAgc2V0QW5jaG9yRWwobnVsbCk7XG4gICAgICAgIH07XG5cbiAgICAgICAgY29uc3QgcHJldmlld1VybCA9IGNyZWF0ZVByZXZpZXdVcmwoc3RhdGUsIGFwaVVybCwgeyB3aWR0aDogMzIwLCBoZWlnaHQ6IDMyMCB9KTtcblxuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgPFNlbGVjdFByZXZpZXdDb21wb25lbnQ+XG4gICAgICAgICAgICAgICAge3N0YXRlLmRhbUZpbGU/LmltYWdlID8gKFxuICAgICAgICAgICAgICAgICAgICA8PlxuICAgICAgICAgICAgICAgICAgICAgICAgPEJsb2NrQWRtaW5Db21wb25lbnRQYXBlciBkaXNhYmxlUGFkZGluZz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Q29udGVudFJvb3QgY29tcG9uZW50PVwiZGl2XCIgb25DbGljaz17KCkgPT4gc2V0T3Blbih0cnVlKX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxHcmlkIGNvbnRhaW5lciBhbGlnbkl0ZW1zPVwiY2VudGVyXCIgc3BhY2luZz17M30+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8R3JpZCBpdGVtPntwcmV2aWV3VXJsICYmIDxQcmV2aWV3SW1hZ2Ugc3JjPXtwcmV2aWV3VXJsfSB3aWR0aD1cIjcwXCIgaGVpZ2h0PVwiNzBcIiAvPn08L0dyaWQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8R3JpZCBpdGVtIHhzPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxUeXBvZ3JhcGh5IHZhcmlhbnQ9XCJzdWJ0aXRsZTFcIj57c3RhdGUuZGFtRmlsZS5uYW1lfTwvVHlwb2dyYXBoeT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8VHlwb2dyYXBoeSB2YXJpYW50PVwiYm9keTFcIiBjb2xvcj1cInRleHRTZWNvbmRhcnlcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPERhbVBhdGhMYXp5IGZpbGVJZD17c3RhdGUuZGFtRmlsZS5pZH0gLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1R5cG9ncmFwaHk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0dyaWQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8R3JpZCBpdGVtPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxJY29uQnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uTW91c2VEb3duPXsoZXZlbnQpID0+IGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbkNsaWNrPXsoZXZlbnQpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0QW5jaG9yRWwoZXZlbnQuY3VycmVudFRhcmdldCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemU9XCJsYXJnZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8TW9yZVZlcnRpY2FsIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9JY29uQnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9HcmlkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0dyaWQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Db250ZW50Um9vdD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RGl2aWRlciAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxCbG9ja0FkbWluQ29tcG9uZW50QnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXJ0SWNvbj17PERlbGV0ZSAvPn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gdXBkYXRlU3RhdGUoeyBkYW1GaWxlOiB1bmRlZmluZWQsIGNyb3BBcmVhOiB1bmRlZmluZWQgfSl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD1cImNvbWV0LmJsb2Nrcy5pbWFnZS5lbXB0eVwiIGRlZmF1bHRNZXNzYWdlPVwiRW1wdHlcIiAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQmxvY2tBZG1pbkNvbXBvbmVudEJ1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvQmxvY2tBZG1pbkNvbXBvbmVudFBhcGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgPE1lbnUgYW5jaG9yRWw9e2FuY2hvckVsfSBrZWVwTW91bnRlZCBvcGVuPXtCb29sZWFuKGFuY2hvckVsKX0gb25DbG9zZT17aGFuZGxlTWVudUNsb3NlfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8TWVudUl0ZW0gb25DbGljaz17aGFuZGxlQ3JvcENsaWNrfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPExpc3RJdGVtSWNvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxDcm9wIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvTGlzdEl0ZW1JY29uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD1cImNvbWV0LmJsb2Nrcy5pbWFnZS5jcm9wSW1hZ2VcIiBkZWZhdWx0TWVzc2FnZT1cIkNyb3AgaW1hZ2VcIiAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvTWVudUl0ZW0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge2VudGl0eURlcGVuZGVuY3lNYXBbXCJEYW1GaWxlXCJdICYmIHN0YXRlLmRhbUZpbGU/LmlkICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPE1lbnVJdGVtXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbkNsaWNrPXthc3luYyAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gaWQgaXMgY2hlY2tlZCB0aHJlZSBsaW5lcyBhYm92ZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tbm9uLW51bGwtYXNzZXJ0aW9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgcGF0aCA9IGF3YWl0IGVudGl0eURlcGVuZGVuY3lNYXBbXCJEYW1GaWxlXCJdLnJlc29sdmVQYXRoKHsgYXBvbGxvQ2xpZW50LCBpZDogc3RhdGUuZGFtRmlsZSEuaWQgfSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdXJsID0gY29udGVudFNjb3BlLm1hdGNoLnVybCArIHBhdGg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2luZG93Lm9wZW4odXJsLCBcIl9ibGFua1wiKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxMaXN0SXRlbUljb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPE9wZW5OZXdUYWIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvTGlzdEl0ZW1JY29uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9XCJjb21ldC5ibG9ja3MuaW1hZ2Uub3BlbkluRGFtXCIgZGVmYXVsdE1lc3NhZ2U9XCJPcGVuIGluIERBTVwiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvTWVudUl0ZW0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvTWVudT5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtvcGVuICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RWRpdEltYWdlRGlhbG9nXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGltYWdlPXt7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiBzdGF0ZS5kYW1GaWxlLm5hbWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cmw6IHN0YXRlLmRhbUZpbGUuZmlsZVVybCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBzdGF0ZS5kYW1GaWxlLmltYWdlLndpZHRoLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBzdGF0ZS5kYW1GaWxlLmltYWdlLmhlaWdodCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemU6IHN0YXRlLmRhbUZpbGUuc2l6ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGFtRmlsZUlkPXtzdGF0ZS5kYW1GaWxlLmlkfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbml0aWFsVmFsdWVzPXt7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VJbmhlcml0ZWREYW1TZXR0aW5nczogc3RhdGUuY3JvcEFyZWEgPT09IHVuZGVmaW5lZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNyb3BBcmVhOiBzdGF0ZS5jcm9wQXJlYSA/PyBzdGF0ZS5kYW1GaWxlLmltYWdlLmNyb3BBcmVhLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbmhlcml0ZWREYW1TZXR0aW5ncz17eyBjcm9wQXJlYTogc3RhdGUuZGFtRmlsZS5pbWFnZS5jcm9wQXJlYSB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvblN1Ym1pdD17KGNyb3BBcmVhKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cGRhdGVTdGF0ZSgocHJldlN0YXRlKSA9PiAoeyAuLi5wcmV2U3RhdGUsIGNyb3BBcmVhIH0pKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNldE9wZW4oZmFsc2UpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbkNsb3NlPXtoYW5kbGVDbG9zZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgPC8+XG4gICAgICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgICAgICAgPEJsb2Nrc0ZpbmFsRm9ybTx7IGRhbUZpbGU/OiBJbWFnZUJsb2NrU3RhdGVbXCJkYW1GaWxlXCJdIH0+XG4gICAgICAgICAgICAgICAgICAgICAgICBvblN1Ym1pdD17KG5ld1ZhbHVlcykgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVwZGF0ZVN0YXRlKChwcmV2U3RhdGUpID0+ICh7IC4uLnByZXZTdGF0ZSwgZGFtRmlsZTogbmV3VmFsdWVzLmRhbUZpbGUgfHwgdW5kZWZpbmVkLCBjcm9wQXJlYTogdW5kZWZpbmVkIH0pKTsgLy8gcmVzZXQgbG9jYWwgY3JvcCBhcmVhIHdoZW4gaW1hZ2UgY2hhbmdlc1xuICAgICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgIGluaXRpYWxWYWx1ZXM9e3sgZGFtRmlsZTogc3RhdGUuZGFtRmlsZSB9fVxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICA8RmllbGRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lPVwiZGFtRmlsZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29tcG9uZW50PXtGaWxlRmllbGR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZnVsbFdpZHRoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYnV0dG9uVGV4dD17PEZvcm1hdHRlZE1lc3NhZ2UgaWQ9XCJjb21ldC5ibG9ja3MuaW1hZ2UuY2hvb3NlSW1hZ2VcIiBkZWZhdWx0TWVzc2FnZT1cIkNob29zZSBpbWFnZVwiIC8+fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsbG93ZWRNaW1ldHlwZXM9e2ZpbHRlcmVkQWNjZXB0ZWRNaW1lVHlwZXMucGl4ZWxJbWFnZX1cbiAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgIDwvQmxvY2tzRmluYWxGb3JtPlxuICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICA8L1NlbGVjdFByZXZpZXdDb21wb25lbnQ+XG4gICAgICAgICk7XG4gICAgfSxcbiAgICBwcmV2aWV3Q29udGVudDogKHN0YXRlLCBjb250ZXh0KSA9PiB7XG4gICAgICAgIGlmICghc3RhdGUuZGFtRmlsZSB8fCAhc3RhdGUuZGFtRmlsZT8uZmlsZVVybCB8fCAhY29udGV4dD8uYXBpVXJsKSB7XG4gICAgICAgICAgICByZXR1cm4gW107XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgaW1hZ2VTaXplID0geyB3aWR0aDogMzIwLCBoZWlnaHQ6IDMyMCB9O1xuICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAgeyB0eXBlOiBcImltYWdlXCIsIGNvbnRlbnQ6IHsgc3JjOiBjcmVhdGVQcmV2aWV3VXJsKHN0YXRlLCBjb250ZXh0LmFwaVVybCwgaW1hZ2VTaXplKSwgLi4uaW1hZ2VTaXplIH0gfSxcbiAgICAgICAgICAgIHsgdHlwZTogXCJ0ZXh0XCIsIGNvbnRlbnQ6IHN0YXRlLmRhbUZpbGUubmFtZSB9LFxuICAgICAgICBdO1xuICAgIH0sXG5cbiAgICBleHRyYWN0VGV4dENvbnRlbnRzOiAoc3RhdGUpID0+IHtcbiAgICAgICAgY29uc3QgY29udGVudHMgPSBbXTtcblxuICAgICAgICBpZiAoc3RhdGUuZGFtRmlsZT8uYWx0VGV4dCkgY29udGVudHMucHVzaChzdGF0ZS5kYW1GaWxlLmFsdFRleHQpO1xuICAgICAgICBpZiAoc3RhdGUuZGFtRmlsZT8udGl0bGUpIGNvbnRlbnRzLnB1c2goc3RhdGUuZGFtRmlsZS50aXRsZSk7XG5cbiAgICAgICAgcmV0dXJuIGNvbnRlbnRzO1xuICAgIH0sXG59O1xuXG5jb25zdCBDb250ZW50Um9vdCA9IHN0eWxlZChCdXR0b25CYXNlKWBcbiAgICBwYWRkaW5nOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnNwYWNpbmcoMyl9O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG5gIGFzIHR5cGVvZiBCdXR0b25CYXNlO1xuXG5jb25zdCBQcmV2aWV3SW1hZ2UgPSBzdHlsZWQoXCJpbWdcIilgXG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG5gO1xuIl19 */",
394
396
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
395
397
  });
@@ -1 +1 @@
1
- {"version":3,"file":"SvgImageBlock.d.ts","sourceRoot":"","sources":["../../src/blocks/SvgImageBlock.tsx"],"names":[],"mappings":"AAQA,OAAO,EAAE,KAAK,iBAAiB,EAAE,KAAK,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAatF,OAAO,EAAuC,KAAK,cAAc,EAA4B,MAAM,SAAS,CAAC;AAG7G,KAAK,kBAAkB,GAAG,IAAI,CAAC,iBAAiB,EAAE,aAAa,CAAC,CAAC;AAWjE,eAAO,MAAM,aAAa,EAAE,cAAc,CAAC,iBAAiB,EAAE,kBAAkB,EAAE,kBAAkB,CA+LnG,CAAC"}
1
+ {"version":3,"file":"SvgImageBlock.d.ts","sourceRoot":"","sources":["../../src/blocks/SvgImageBlock.tsx"],"names":[],"mappings":"AAQA,OAAO,EAAE,KAAK,iBAAiB,EAAE,KAAK,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAatF,OAAO,EAAuC,KAAK,cAAc,EAAE,MAAM,SAAS,CAAC;AAEnF,KAAK,kBAAkB,GAAG,IAAI,CAAC,iBAAiB,EAAE,aAAa,CAAC,CAAC;AAWjE,eAAO,MAAM,aAAa,EAAE,cAAc,CAAC,iBAAiB,EAAE,kBAAkB,EAAE,kBAAkB,CA+LnG,CAAC"}
@@ -11,9 +11,10 @@ var _material = require("@mui/material");
11
11
  var _utils = require("@mui/x-data-grid/utils/utils");
12
12
  var _react = require("react");
13
13
  var _reactIntl = require("react-intl");
14
+ var _CometConfigContext = require("../config/CometConfigContext");
14
15
  var _Provider = require("../contentScope/Provider");
15
16
  var _useDamAcceptedMimeTypes = require("../dam/config/useDamAcceptedMimeTypes");
16
- var _DependenciesConfig = require("../dependencies/DependenciesConfig");
17
+ var _dependenciesConfig = require("../dependencies/dependenciesConfig");
17
18
  var _DamPathLazy = require("../form/file/DamPathLazy");
18
19
  var _FileField = require("../form/file/FileField");
19
20
  var _BlockAdminComponentButton = require("./common/BlockAdminComponentButton");
@@ -22,7 +23,6 @@ var _BlocksFinalForm = require("./form/BlocksFinalForm");
22
23
  var _createBlockSkeleton = require("./helpers/createBlockSkeleton");
23
24
  var _SelectPreviewComponent = require("./iframebridge/SelectPreviewComponent");
24
25
  var _types = require("./types");
25
- var _useCmsBlockContext = require("./useCmsBlockContext");
26
26
  var _jsxRuntime = require("react/jsx-runtime");
27
27
  var _templateObject;
28
28
  function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
@@ -56,11 +56,11 @@ var SvgImageBlock = exports.SvgImageBlock = _objectSpread(_objectSpread({}, (0,
56
56
  return {};
57
57
  },
58
58
  category: _types.BlockCategory.Media,
59
- createPreviewState: function createPreviewState(state, previewCtx) {
59
+ createPreviewState: function createPreviewState(state, previewContext) {
60
60
  return _objectSpread(_objectSpread({}, state), {}, {
61
- urlTemplate: createPreviewUrl(state, previewCtx.damConfig.apiUrl),
61
+ urlTemplate: createPreviewUrl(state, previewContext.apiUrl),
62
62
  adminMeta: {
63
- route: previewCtx.parentUrl
63
+ route: previewContext.parentUrl
64
64
  }
65
65
  });
66
66
  },
@@ -145,14 +145,16 @@ var SvgImageBlock = exports.SvgImageBlock = _objectSpread(_objectSpread({}, (0,
145
145
  _useState2 = _slicedToArray(_useState, 2),
146
146
  anchorEl = _useState2[0],
147
147
  setAnchorEl = _useState2[1];
148
- var context = (0, _useCmsBlockContext.useCmsBlockContext)();
148
+ var _useCometConfig = (0, _CometConfigContext.useCometConfig)(),
149
+ apiUrl = _useCometConfig.apiUrl;
149
150
  var _useDamAcceptedMimeTy = (0, _useDamAcceptedMimeTypes.useDamAcceptedMimeTypes)(),
150
151
  filteredAcceptedMimeTypes = _useDamAcceptedMimeTy.filteredAcceptedMimeTypes;
151
152
  var contentScope = (0, _Provider.useContentScope)();
152
153
  var apolloClient = (0, _client.useApolloClient)();
153
- var dependencyMap = (0, _DependenciesConfig.useDependenciesConfig)();
154
- var previewUrl = createPreviewUrl(state, context.damConfig.apiUrl);
155
- var showMenu = Boolean(dependencyMap["DamFile"]);
154
+ var _useDependenciesConfi = (0, _dependenciesConfig.useDependenciesConfig)(),
155
+ entityDependencyMap = _useDependenciesConfi.entityDependencyMap;
156
+ var previewUrl = createPreviewUrl(state, apiUrl);
157
+ var showMenu = Boolean(entityDependencyMap["DamFile"]);
156
158
  var handleMenuClose = function handleMenuClose() {
157
159
  setAnchorEl(null);
158
160
  };
@@ -216,14 +218,14 @@ var SvgImageBlock = exports.SvgImageBlock = _objectSpread(_objectSpread({}, (0,
216
218
  keepMounted: true,
217
219
  open: Boolean(anchorEl),
218
220
  onClose: handleMenuClose,
219
- children: dependencyMap["DamFile"] && ((_state$damFile2 = state.damFile) === null || _state$damFile2 === void 0 ? void 0 : _state$damFile2.id) && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.MenuItem, {
221
+ children: entityDependencyMap["DamFile"] && ((_state$damFile2 = state.damFile) === null || _state$damFile2 === void 0 ? void 0 : _state$damFile2.id) && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.MenuItem, {
220
222
  onClick: /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {
221
223
  var path, url;
222
224
  return _regeneratorRuntime().wrap(function _callee2$(_context2) {
223
225
  while (1) switch (_context2.prev = _context2.next) {
224
226
  case 0:
225
227
  _context2.next = 2;
226
- return dependencyMap["DamFile"].resolvePath({
228
+ return entityDependencyMap["DamFile"].resolvePath({
227
229
  apolloClient: apolloClient,
228
230
  id: state.damFile.id
229
231
  });
@@ -269,15 +271,15 @@ var SvgImageBlock = exports.SvgImageBlock = _objectSpread(_objectSpread({}, (0,
269
271
  })
270
272
  });
271
273
  },
272
- previewContent: function previewContent(state, ctx) {
273
- var _state$damFile3, _ctx$damConfig;
274
- if (!state.damFile || !((_state$damFile3 = state.damFile) !== null && _state$damFile3 !== void 0 && _state$damFile3.fileUrl) || !(ctx !== null && ctx !== void 0 && (_ctx$damConfig = ctx.damConfig) !== null && _ctx$damConfig !== void 0 && _ctx$damConfig.apiUrl)) {
274
+ previewContent: function previewContent(state, context) {
275
+ var _state$damFile3;
276
+ if (!state.damFile || !((_state$damFile3 = state.damFile) !== null && _state$damFile3 !== void 0 && _state$damFile3.fileUrl) || !(context !== null && context !== void 0 && context.apiUrl)) {
275
277
  return [];
276
278
  }
277
279
  return [{
278
280
  type: "image",
279
281
  content: {
280
- src: createPreviewUrl(state, ctx.damConfig.apiUrl),
282
+ src: createPreviewUrl(state, context.apiUrl),
281
283
  width: 320,
282
284
  height: 320
283
285
  }
@@ -1,2 +1,7 @@
1
- export declare const BlockContext: import("react").Context<unknown>;
1
+ import { type ApolloClient } from "@apollo/client";
2
+ export interface BlockContext {
3
+ apiUrl: string;
4
+ apolloClient: ApolloClient<object>;
5
+ }
6
+ export declare const CustomBlockContext: import("react").Context<Omit<BlockContext, "apiUrl" | "apolloClient"> | undefined>;
2
7
  //# sourceMappingURL=BlockContext.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"BlockContext.d.ts","sourceRoot":"","sources":["../../../src/blocks/context/BlockContext.tsx"],"names":[],"mappings":"AAEA,eAAO,MAAM,YAAY,kCAAoC,CAAC"}
1
+ {"version":3,"file":"BlockContext.d.ts","sourceRoot":"","sources":["../../../src/blocks/context/BlockContext.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAGnD,MAAM,WAAW,YAAY;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC;CACtC;AAED,eAAO,MAAM,kBAAkB,oFAAsF,CAAC"}
@@ -3,6 +3,6 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.BlockContext = void 0;
6
+ exports.CustomBlockContext = void 0;
7
7
  var _react = require("react");
8
- var BlockContext = exports.BlockContext = /*#__PURE__*/(0, _react.createContext)(undefined);
8
+ var CustomBlockContext = exports.CustomBlockContext = /*#__PURE__*/(0, _react.createContext)(undefined);
@@ -1,6 +1,7 @@
1
1
  import { type PropsWithChildren } from "react";
2
+ import { type BlockContext } from "./BlockContext";
2
3
  interface Props {
3
- value: unknown;
4
+ value: Omit<BlockContext, "apiUrl" | "apolloClient">;
4
5
  }
5
6
  export declare const BlockContextProvider: ({ value, children }: PropsWithChildren<Props>) => import("react/jsx-runtime").JSX.Element;
6
7
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"BlockContextProvider.d.ts","sourceRoot":"","sources":["../../../src/blocks/context/BlockContextProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAI/C,UAAU,KAAK;IACX,KAAK,EAAE,OAAO,CAAC;CAClB;AAED,eAAO,MAAM,oBAAoB,wBAAyB,iBAAiB,CAAC,KAAK,CAAC,4CAEjF,CAAC"}
1
+ {"version":3,"file":"BlockContextProvider.d.ts","sourceRoot":"","sources":["../../../src/blocks/context/BlockContextProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAE/C,OAAO,EAAE,KAAK,YAAY,EAAsB,MAAM,gBAAgB,CAAC;AAEvE,UAAU,KAAK;IACX,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE,QAAQ,GAAG,cAAc,CAAC,CAAC;CACxD;AAED,eAAO,MAAM,oBAAoB,wBAAyB,iBAAiB,CAAC,KAAK,CAAC,4CAEjF,CAAC"}
@@ -9,7 +9,7 @@ var _jsxRuntime = require("react/jsx-runtime");
9
9
  var BlockContextProvider = exports.BlockContextProvider = function BlockContextProvider(_ref) {
10
10
  var value = _ref.value,
11
11
  children = _ref.children;
12
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_BlockContext.BlockContext.Provider, {
12
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_BlockContext.CustomBlockContext.Provider, {
13
13
  value: value,
14
14
  children: children
15
15
  });
@@ -1,2 +1,3 @@
1
- export declare function useBlockContext(): unknown;
1
+ import { type BlockContext } from "./BlockContext";
2
+ export declare function useBlockContext(): BlockContext;
2
3
  //# sourceMappingURL=useBlockContext.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useBlockContext.d.ts","sourceRoot":"","sources":["../../../src/blocks/context/useBlockContext.ts"],"names":[],"mappings":"AAIA,wBAAgB,eAAe,YAE9B"}
1
+ {"version":3,"file":"useBlockContext.d.ts","sourceRoot":"","sources":["../../../src/blocks/context/useBlockContext.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,YAAY,EAAsB,MAAM,gBAAgB,CAAC;AAEvE,wBAAgB,eAAe,IAAI,YAAY,CAM9C"}
@@ -4,8 +4,23 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.useBlockContext = useBlockContext;
7
+ var _client = require("@apollo/client");
7
8
  var _react = require("react");
9
+ var _CometConfigContext = require("../../config/CometConfigContext");
8
10
  var _BlockContext = require("./BlockContext");
11
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
12
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
13
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
14
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
15
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
16
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
9
17
  function useBlockContext() {
10
- return (0, _react.useContext)(_BlockContext.BlockContext);
18
+ var _useCometConfig = (0, _CometConfigContext.useCometConfig)(),
19
+ apiUrl = _useCometConfig.apiUrl;
20
+ var apolloClient = (0, _client.useApolloClient)();
21
+ var customContext = (0, _react.useContext)(_BlockContext.CustomBlockContext);
22
+ return _objectSpread(_objectSpread({}, customContext), {}, {
23
+ apiUrl: apiUrl,
24
+ apolloClient: apolloClient
25
+ });
11
26
  }
@@ -67,7 +67,7 @@ function createLinkBlock(_ref, override) {
67
67
  updateState: updateState
68
68
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_system.Box, {
69
69
  padding: isInPaper ? 3 : 0,
70
- paddingTop: 0,
70
+ paddingTop: isInPaper ? 0 : 3,
71
71
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_BlockAdminComponentSection.BlockAdminComponentSection, {
72
72
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_BlocksFinalForm.BlocksFinalForm, {
73
73
  onSubmit: function onSubmit(_ref3) {