@alfresco/aca-content 4.0.0-4895233349

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 (264) hide show
  1. package/README.md +24 -0
  2. package/about/about.component.d.ts +45 -0
  3. package/about/aca-about.module.d.ts +39 -0
  4. package/about/dev-mode.tokens.d.ts +25 -0
  5. package/about/index.d.ts +5 -0
  6. package/about/package-json.token.d.ts +25 -0
  7. package/about/public-api.d.ts +27 -0
  8. package/assets/app.extensions.json +2626 -0
  9. package/assets/i18n/ar.json +660 -0
  10. package/assets/i18n/cs.json +660 -0
  11. package/assets/i18n/da.json +660 -0
  12. package/assets/i18n/de.json +660 -0
  13. package/assets/i18n/en.json +660 -0
  14. package/assets/i18n/es.json +660 -0
  15. package/assets/i18n/fi.json +660 -0
  16. package/assets/i18n/fr.json +660 -0
  17. package/assets/i18n/it.json +660 -0
  18. package/assets/i18n/ja.json +660 -0
  19. package/assets/i18n/nb.json +660 -0
  20. package/assets/i18n/nl.json +660 -0
  21. package/assets/i18n/pl.json +660 -0
  22. package/assets/i18n/pt-BR.json +660 -0
  23. package/assets/i18n/ru.json +660 -0
  24. package/assets/i18n/sv.json +660 -0
  25. package/assets/i18n/zh-CN.json +660 -0
  26. package/assets/images/Wallpaper-BG-generic.svg +39 -0
  27. package/assets/images/adf-move-file-24px.svg +1 -0
  28. package/assets/images/baseline-library_books-24px.svg +2 -0
  29. package/assets/images/baseline-lock-24px.svg +1 -0
  30. package/assets/images/join-library.svg +32 -0
  31. package/esm2020/about/about.component.mjs +77 -0
  32. package/esm2020/about/aca-about.module.mjs +67 -0
  33. package/esm2020/about/alfresco-aca-content-about.mjs +5 -0
  34. package/esm2020/about/dev-mode.tokens.mjs +26 -0
  35. package/esm2020/about/package-json.token.mjs +26 -0
  36. package/esm2020/about/public-api.mjs +28 -0
  37. package/esm2020/alfresco-aca-content.mjs +5 -0
  38. package/esm2020/lib/aca-content.module.mjs +365 -0
  39. package/esm2020/lib/aca-content.routes.mjs +581 -0
  40. package/esm2020/lib/components/common/common.module.mjs +67 -0
  41. package/esm2020/lib/components/common/language-picker/language-picker.component.mjs +57 -0
  42. package/esm2020/lib/components/common/location-link/location-link.component.mjs +177 -0
  43. package/esm2020/lib/components/common/logout/logout.component.mjs +60 -0
  44. package/esm2020/lib/components/common/toggle-shared/toggle-shared.component.mjs +65 -0
  45. package/esm2020/lib/components/common/user-info/user-info.component.mjs +86 -0
  46. package/esm2020/lib/components/context-menu/context-menu-item.component.mjs +58 -0
  47. package/esm2020/lib/components/context-menu/context-menu-outside-event.directive.mjs +65 -0
  48. package/esm2020/lib/components/context-menu/context-menu-overlay.mjs +32 -0
  49. package/esm2020/lib/components/context-menu/context-menu.component.mjs +102 -0
  50. package/esm2020/lib/components/context-menu/context-menu.module.mjs +76 -0
  51. package/esm2020/lib/components/context-menu/context-menu.service.mjs +103 -0
  52. package/esm2020/lib/components/context-menu/direction.token.mjs +29 -0
  53. package/esm2020/lib/components/context-menu/interfaces.mjs +25 -0
  54. package/esm2020/lib/components/create-menu/create-menu.component.mjs +73 -0
  55. package/esm2020/lib/components/create-menu/create-menu.module.mjs +44 -0
  56. package/esm2020/lib/components/details/details.component.mjs +99 -0
  57. package/esm2020/lib/components/dl-custom-components/document-list-custom-components.module.mjs +49 -0
  58. package/esm2020/lib/components/dl-custom-components/name-column/name-column.component.mjs +90 -0
  59. package/esm2020/lib/components/dl-custom-components/tags-column/tags-column.component.mjs +31 -0
  60. package/esm2020/lib/components/dl-custom-components/thumbnail-column/thumbnail-column.component.mjs +51 -0
  61. package/esm2020/lib/components/favorite-libraries/favorite-libraries.component.mjs +113 -0
  62. package/esm2020/lib/components/favorites/favorites.component.mjs +98 -0
  63. package/esm2020/lib/components/files/files.component.mjs +312 -0
  64. package/esm2020/lib/components/home/home.component.mjs +49 -0
  65. package/esm2020/lib/components/info-drawer/comments-tab/comments-tab.component.mjs +56 -0
  66. package/esm2020/lib/components/info-drawer/info.drawer.module.mjs +92 -0
  67. package/esm2020/lib/components/info-drawer/library-metadata-tab/library-metadata-form.component.mjs +143 -0
  68. package/esm2020/lib/components/info-drawer/library-metadata-tab/library-metadata-tab.component.mjs +42 -0
  69. package/esm2020/lib/components/info-drawer/metadata-tab/metadata-tab.component.mjs +88 -0
  70. package/esm2020/lib/components/info-drawer/versions-tab/versions-tab.component.mjs +95 -0
  71. package/esm2020/lib/components/libraries/libraries.component.mjs +70 -0
  72. package/esm2020/lib/components/node-version/node-version-form.component.mjs +70 -0
  73. package/esm2020/lib/components/node-version/node-version.module.mjs +78 -0
  74. package/esm2020/lib/components/recent-files/recent-files.component.mjs +81 -0
  75. package/esm2020/lib/components/search/search-action-menu/search-action-menu.component.mjs +59 -0
  76. package/esm2020/lib/components/search/search-input/search-input.component.mjs +275 -0
  77. package/esm2020/lib/components/search/search-input-control/search-input-control.component.mjs +87 -0
  78. package/esm2020/lib/components/search/search-input.module.mjs +47 -0
  79. package/esm2020/lib/components/search/search-libraries-results/search-libraries-query-builder.service.mjs +91 -0
  80. package/esm2020/lib/components/search/search-libraries-results/search-libraries-results.component.mjs +142 -0
  81. package/esm2020/lib/components/search/search-navigation.service.mjs +60 -0
  82. package/esm2020/lib/components/search/search-results/search-results.component.mjs +221 -0
  83. package/esm2020/lib/components/search/search-results-row/search-results-row.component.mjs +101 -0
  84. package/esm2020/lib/components/search/search-results.module.mjs +88 -0
  85. package/esm2020/lib/components/shared-files/shared-files.component.mjs +78 -0
  86. package/esm2020/lib/components/shared-link-view/shared-link-view.component.mjs +81 -0
  87. package/esm2020/lib/components/shared-link-view/shared-link-view.module.mjs +69 -0
  88. package/esm2020/lib/components/sidenav/components/button-menu.component.mjs +57 -0
  89. package/esm2020/lib/components/sidenav/components/expand-menu.component.mjs +53 -0
  90. package/esm2020/lib/components/sidenav/components/sidenav-header.component.mjs +74 -0
  91. package/esm2020/lib/components/sidenav/directives/action.directive.mjs +74 -0
  92. package/esm2020/lib/components/sidenav/directives/active-link.directive.mjs +92 -0
  93. package/esm2020/lib/components/sidenav/directives/expansion-panel.directive.mjs +101 -0
  94. package/esm2020/lib/components/sidenav/directives/menu-panel.directive.mjs +98 -0
  95. package/esm2020/lib/components/sidenav/sidenav.component.mjs +83 -0
  96. package/esm2020/lib/components/sidenav/sidenav.module.mjs +84 -0
  97. package/esm2020/lib/components/toolbar/document-display-mode/document-display-mode.component.mjs +84 -0
  98. package/esm2020/lib/components/toolbar/toggle-edit-offline/toggle-edit-offline.component.mjs +150 -0
  99. package/esm2020/lib/components/toolbar/toggle-favorite/toggle-favorite.component.mjs +79 -0
  100. package/esm2020/lib/components/toolbar/toggle-favorite-library/toggle-favorite-library.component.mjs +101 -0
  101. package/esm2020/lib/components/toolbar/toggle-info-drawer/toggle-info-drawer.component.mjs +75 -0
  102. package/esm2020/lib/components/toolbar/toggle-join-library/toggle-join-library-button.component.mjs +98 -0
  103. package/esm2020/lib/components/toolbar/toggle-join-library/toggle-join-library-menu.component.mjs +80 -0
  104. package/esm2020/lib/components/toolbar/toolbar.module.mjs +88 -0
  105. package/esm2020/lib/components/toolbar/view-node/view-node.component.mjs +109 -0
  106. package/esm2020/lib/components/trashcan/trashcan.component.mjs +63 -0
  107. package/esm2020/lib/components/trashcan/trashcan.module.mjs +74 -0
  108. package/esm2020/lib/components/upload-files-dialog/upload-files-dialog.component.mjs +50 -0
  109. package/esm2020/lib/components/view-profile/view-profile.component.mjs +174 -0
  110. package/esm2020/lib/components/view-profile/view-profile.guard.mjs +47 -0
  111. package/esm2020/lib/components/view-profile/view-profile.module.mjs +42 -0
  112. package/esm2020/lib/dialogs/node-template/create-from-template.dialog.mjs +119 -0
  113. package/esm2020/lib/directives/directives.module.mjs +42 -0
  114. package/esm2020/lib/directives/document-list.directive.mjs +141 -0
  115. package/esm2020/lib/extensions/core.extensions.module.mjs +64 -0
  116. package/esm2020/lib/material.module.mjs +57 -0
  117. package/esm2020/lib/services/content-management.service.mjs +870 -0
  118. package/esm2020/lib/services/content-service-extension.service.mjs +63 -0
  119. package/esm2020/lib/services/content-url.service.mjs +72 -0
  120. package/esm2020/lib/services/node-actions.service.mjs +600 -0
  121. package/esm2020/lib/services/node-template.service.mjs +149 -0
  122. package/esm2020/lib/store/app-store.module.mjs +95 -0
  123. package/esm2020/lib/store/effects/app.effects.mjs +61 -0
  124. package/esm2020/lib/store/effects/contextmenu.effects.mjs +55 -0
  125. package/esm2020/lib/store/effects/download.effects.mjs +159 -0
  126. package/esm2020/lib/store/effects/favorite.effects.mjs +76 -0
  127. package/esm2020/lib/store/effects/library.effects.mjs +111 -0
  128. package/esm2020/lib/store/effects/node.effects.mjs +309 -0
  129. package/esm2020/lib/store/effects/search.effects.mjs +60 -0
  130. package/esm2020/lib/store/effects/template.effects.mjs +121 -0
  131. package/esm2020/lib/store/effects/upload.effects.mjs +169 -0
  132. package/esm2020/lib/store/effects/viewer.effects.mjs +175 -0
  133. package/esm2020/lib/store/effects.mjs +35 -0
  134. package/esm2020/lib/store/initial-state.mjs +62 -0
  135. package/esm2020/lib/store/reducers/app.reducer.mjs +211 -0
  136. package/esm2020/public-api.mjs +32 -0
  137. package/fesm2015/alfresco-aca-content-about.mjs +216 -0
  138. package/fesm2015/alfresco-aca-content-about.mjs.map +1 -0
  139. package/fesm2015/alfresco-aca-content.mjs +9771 -0
  140. package/fesm2015/alfresco-aca-content.mjs.map +1 -0
  141. package/fesm2020/alfresco-aca-content-about.mjs +214 -0
  142. package/fesm2020/alfresco-aca-content-about.mjs.map +1 -0
  143. package/fesm2020/alfresco-aca-content.mjs +9915 -0
  144. package/fesm2020/alfresco-aca-content.mjs.map +1 -0
  145. package/index.d.ts +5 -0
  146. package/lib/aca-content.module.d.ts +47 -0
  147. package/lib/aca-content.routes.d.ts +27 -0
  148. package/lib/components/common/common.module.d.ts +17 -0
  149. package/lib/components/common/language-picker/language-picker.component.d.ts +5 -0
  150. package/lib/components/common/location-link/location-link.component.d.ts +48 -0
  151. package/lib/components/common/logout/logout.component.d.ts +10 -0
  152. package/lib/components/common/toggle-shared/toggle-shared.component.d.ts +43 -0
  153. package/lib/components/common/user-info/user-info.component.d.ts +44 -0
  154. package/lib/components/context-menu/context-menu-item.component.d.ts +13 -0
  155. package/lib/components/context-menu/context-menu-outside-event.directive.d.ts +35 -0
  156. package/lib/components/context-menu/context-menu-overlay.d.ts +29 -0
  157. package/lib/components/context-menu/context-menu.component.d.ts +48 -0
  158. package/lib/components/context-menu/context-menu.module.d.ts +18 -0
  159. package/lib/components/context-menu/context-menu.service.d.ts +43 -0
  160. package/lib/components/context-menu/direction.token.d.ts +25 -0
  161. package/lib/components/context-menu/interfaces.d.ts +30 -0
  162. package/lib/components/create-menu/create-menu.component.d.ts +42 -0
  163. package/lib/components/create-menu/create-menu.module.d.ts +10 -0
  164. package/lib/components/details/details.component.d.ts +46 -0
  165. package/lib/components/dl-custom-components/document-list-custom-components.module.d.ts +14 -0
  166. package/lib/components/dl-custom-components/name-column/name-column.component.d.ts +41 -0
  167. package/lib/components/dl-custom-components/tags-column/tags-column.component.d.ts +35 -0
  168. package/lib/components/dl-custom-components/thumbnail-column/thumbnail-column.component.d.ts +17 -0
  169. package/lib/components/favorite-libraries/favorite-libraries.component.d.ts +54 -0
  170. package/lib/components/favorites/favorites.component.d.ts +49 -0
  171. package/lib/components/files/files.component.d.ts +55 -0
  172. package/lib/components/home/home.component.d.ts +36 -0
  173. package/lib/components/info-drawer/comments-tab/comments-tab.component.d.ts +11 -0
  174. package/lib/components/info-drawer/info.drawer.module.d.ts +19 -0
  175. package/lib/components/info-drawer/library-metadata-tab/library-metadata-form.component.d.ts +64 -0
  176. package/lib/components/info-drawer/library-metadata-tab/library-metadata-tab.component.d.ts +7 -0
  177. package/lib/components/info-drawer/metadata-tab/metadata-tab.component.d.ts +49 -0
  178. package/lib/components/info-drawer/versions-tab/versions-tab.component.d.ts +35 -0
  179. package/lib/components/libraries/libraries.component.d.ts +44 -0
  180. package/lib/components/node-version/node-version-form.component.d.ts +46 -0
  181. package/lib/components/node-version/node-version.module.d.ts +16 -0
  182. package/lib/components/recent-files/recent-files.component.d.ts +48 -0
  183. package/lib/components/search/search-action-menu/search-action-menu.component.d.ts +38 -0
  184. package/lib/components/search/search-input/search-input.component.d.ts +85 -0
  185. package/lib/components/search/search-input-control/search-input-control.component.d.ts +50 -0
  186. package/lib/components/search/search-input.module.d.ts +12 -0
  187. package/lib/components/search/search-libraries-results/search-libraries-query-builder.service.d.ts +56 -0
  188. package/lib/components/search/search-libraries-results/search-libraries-results.component.d.ts +58 -0
  189. package/lib/components/search/search-navigation.service.d.ts +13 -0
  190. package/lib/components/search/search-results/search-results.component.d.ts +69 -0
  191. package/lib/components/search/search-results-row/search-results-row.component.d.ts +50 -0
  192. package/lib/components/search/search-results.module.d.ts +21 -0
  193. package/lib/components/shared-files/shared-files.component.d.ts +47 -0
  194. package/lib/components/shared-link-view/shared-link-view.component.d.ts +47 -0
  195. package/lib/components/shared-link-view/shared-link-view.module.d.ts +15 -0
  196. package/lib/components/sidenav/components/button-menu.component.d.ts +37 -0
  197. package/lib/components/sidenav/components/expand-menu.component.d.ts +35 -0
  198. package/lib/components/sidenav/components/sidenav-header.component.d.ts +48 -0
  199. package/lib/components/sidenav/directives/action.directive.d.ts +14 -0
  200. package/lib/components/sidenav/directives/active-link.directive.d.ts +45 -0
  201. package/lib/components/sidenav/directives/expansion-panel.directive.d.ts +44 -0
  202. package/lib/components/sidenav/directives/menu-panel.directive.d.ts +42 -0
  203. package/lib/components/sidenav/sidenav.component.d.ts +50 -0
  204. package/lib/components/sidenav/sidenav.module.d.ts +19 -0
  205. package/lib/components/toolbar/document-display-mode/document-display-mode.component.d.ts +13 -0
  206. package/lib/components/toolbar/toggle-edit-offline/toggle-edit-offline.component.d.ts +47 -0
  207. package/lib/components/toolbar/toggle-favorite/toggle-favorite.component.d.ts +42 -0
  208. package/lib/components/toolbar/toggle-favorite-library/toggle-favorite-library.component.d.ts +42 -0
  209. package/lib/components/toolbar/toggle-info-drawer/toggle-info-drawer.component.d.ts +11 -0
  210. package/lib/components/toolbar/toggle-join-library/toggle-join-library-button.component.d.ts +41 -0
  211. package/lib/components/toolbar/toggle-join-library/toggle-join-library-menu.component.d.ts +10 -0
  212. package/lib/components/toolbar/toolbar.module.d.ts +20 -0
  213. package/lib/components/toolbar/view-node/view-node.component.d.ts +19 -0
  214. package/lib/components/trashcan/trashcan.component.d.ts +42 -0
  215. package/lib/components/trashcan/trashcan.module.d.ts +16 -0
  216. package/lib/components/upload-files-dialog/upload-files-dialog.component.d.ts +37 -0
  217. package/lib/components/view-profile/view-profile.component.d.ts +59 -0
  218. package/lib/components/view-profile/view-profile.guard.d.ts +12 -0
  219. package/lib/components/view-profile/view-profile.module.d.ts +9 -0
  220. package/lib/dialogs/node-template/create-from-template.dialog.d.ts +49 -0
  221. package/lib/directives/directives.module.d.ts +9 -0
  222. package/lib/directives/document-list.directive.d.ts +56 -0
  223. package/lib/extensions/core.extensions.module.d.ts +14 -0
  224. package/lib/material.module.d.ts +14 -0
  225. package/lib/services/content-management.service.d.ts +100 -0
  226. package/lib/services/content-service-extension.service.d.ts +11 -0
  227. package/lib/services/content-url.service.d.ts +17 -0
  228. package/lib/services/node-actions.service.d.ts +93 -0
  229. package/lib/services/node-template.service.d.ts +34 -0
  230. package/lib/store/app-store.module.d.ts +10 -0
  231. package/lib/store/effects/app.effects.d.ts +41 -0
  232. package/lib/store/effects/contextmenu.effects.d.ts +12 -0
  233. package/lib/store/effects/download.effects.d.ts +49 -0
  234. package/lib/store/effects/favorite.effects.d.ts +38 -0
  235. package/lib/store/effects/library.effects.d.ts +43 -0
  236. package/lib/store/effects/node.effects.d.ts +56 -0
  237. package/lib/store/effects/search.effects.d.ts +37 -0
  238. package/lib/store/effects/template.effects.d.ts +54 -0
  239. package/lib/store/effects/upload.effects.d.ts +52 -0
  240. package/lib/store/effects/viewer.effects.d.ts +55 -0
  241. package/lib/store/effects.d.ts +34 -0
  242. package/lib/store/initial-state.d.ts +26 -0
  243. package/lib/store/reducers/app.reducer.d.ts +26 -0
  244. package/package.json +47 -0
  245. package/public-api.d.ts +28 -0
  246. package/ui/application.scss +53 -0
  247. package/ui/colors.scss +96 -0
  248. package/ui/custom-theme.scss +34 -0
  249. package/ui/dynamic-theme/custom-background-color.scss +14 -0
  250. package/ui/dynamic-theme/custom-palette-creator.scss +132 -0
  251. package/ui/dynamic-theme/custom-text-color.scss +8 -0
  252. package/ui/dynamic-theme/custom-theme-palettes.scss +33 -0
  253. package/ui/dynamic-theme/custom-theme.scss.tpl +72 -0
  254. package/ui/dynamic-theme/index.scss +1 -0
  255. package/ui/dynamic-theme/theme-configuration.scss.tpl +14 -0
  256. package/ui/dynamic-theme/typography.scss +94 -0
  257. package/ui/mixins.scss +26 -0
  258. package/ui/overrides/adf-about.theme.scss +38 -0
  259. package/ui/overrides/adf-pagination.theme.scss +46 -0
  260. package/ui/overrides/adf-style-fixes.theme.scss +18 -0
  261. package/ui/overrides/ay11.scss +232 -0
  262. package/ui/theme.scss +55 -0
  263. package/ui/variables/font-family.scss +1 -0
  264. package/ui/variables/variables.scss +92 -0
@@ -0,0 +1,581 @@
1
+ /*!
2
+ * Copyright © 2005-2023 Hyland Software, Inc. and its affiliates. All rights reserved.
3
+ *
4
+ * Alfresco Example Content Application
5
+ *
6
+ * This file is part of the Alfresco Example Content Application.
7
+ * If the software was purchased under a paid Alfresco license, the terms of
8
+ * the paid license agreement will prevail. Otherwise, the software is
9
+ * provided under the following open source license terms:
10
+ *
11
+ * The Alfresco Example Content Application is free software: you can redistribute it and/or modify
12
+ * it under the terms of the GNU Lesser General Public License as published by
13
+ * the Free Software Foundation, either version 3 of the License, or
14
+ * (at your option) any later version.
15
+ *
16
+ * The Alfresco Example Content Application is distributed in the hope that it will be useful,
17
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
18
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19
+ * GNU Lesser General Public License for more details.
20
+ *
21
+ * You should have received a copy of the GNU Lesser General Public License
22
+ * from Hyland Software. If not, see <http://www.gnu.org/licenses/>.
23
+ */
24
+ import { FilesComponent } from './components/files/files.component';
25
+ import { LibrariesComponent } from './components/libraries/libraries.component';
26
+ import { FavoriteLibrariesComponent } from './components/favorite-libraries/favorite-libraries.component';
27
+ import { SearchResultsComponent } from './components/search/search-results/search-results.component';
28
+ import { SearchLibrariesResultsComponent } from './components/search/search-libraries-results/search-libraries-results.component';
29
+ import { AppSharedRuleGuard, GenericErrorComponent, ExtensionsDataLoaderGuard } from '@alfresco/aca-shared';
30
+ import { AuthGuard } from '@alfresco/adf-core';
31
+ import { FavoritesComponent } from './components/favorites/favorites.component';
32
+ import { RecentFilesComponent } from './components/recent-files/recent-files.component';
33
+ import { SharedFilesComponent } from './components/shared-files/shared-files.component';
34
+ import { DetailsComponent } from './components/details/details.component';
35
+ import { HomeComponent } from './components/home/home.component';
36
+ import { ViewProfileComponent } from './components/view-profile/view-profile.component';
37
+ import { ViewProfileRuleGuard } from './components/view-profile/view-profile.guard';
38
+ import { SharedLinkViewComponent } from './components/shared-link-view/shared-link-view.component';
39
+ import { TrashcanComponent } from './components/trashcan/trashcan.component';
40
+ import { ShellLayoutComponent } from '@alfresco/adf-core/shell';
41
+ export const CONTENT_ROUTES = [
42
+ {
43
+ path: 'preview/s/:id',
44
+ children: [
45
+ {
46
+ path: '',
47
+ component: SharedLinkViewComponent,
48
+ data: {
49
+ title: 'APP.PREVIEW.TITLE'
50
+ }
51
+ }
52
+ ]
53
+ },
54
+ {
55
+ path: 'view',
56
+ component: ShellLayoutComponent,
57
+ children: [
58
+ {
59
+ path: ':nodeId',
60
+ outlet: 'viewer',
61
+ children: [
62
+ {
63
+ path: '',
64
+ loadChildren: () => import('@alfresco/aca-viewer').then((m) => m.AcaViewerModule)
65
+ }
66
+ ]
67
+ }
68
+ ]
69
+ }
70
+ ];
71
+ export const CONTENT_LAYOUT_ROUTES = {
72
+ path: '',
73
+ canActivate: [ExtensionsDataLoaderGuard],
74
+ children: [
75
+ {
76
+ path: 'profile',
77
+ canActivate: [ViewProfileRuleGuard],
78
+ component: ViewProfileComponent
79
+ },
80
+ {
81
+ path: '',
82
+ component: HomeComponent
83
+ },
84
+ {
85
+ path: 'personal-files',
86
+ children: [
87
+ {
88
+ path: '',
89
+ component: FilesComponent,
90
+ data: {
91
+ sortingPreferenceKey: 'personal-files',
92
+ title: 'APP.BROWSE.PERSONAL.TITLE',
93
+ defaultNodeId: '-my-'
94
+ }
95
+ },
96
+ {
97
+ path: 'details/:nodeId',
98
+ children: [
99
+ {
100
+ path: '',
101
+ component: DetailsComponent,
102
+ data: {
103
+ navigateSource: 'personal-files'
104
+ }
105
+ },
106
+ {
107
+ path: ':activeTab',
108
+ component: DetailsComponent,
109
+ data: {
110
+ title: 'APP.BROWSE.PERSONAL.PERMISSIONS.TITLE',
111
+ navigateSource: 'personal-files'
112
+ }
113
+ }
114
+ ]
115
+ },
116
+ // deprecated, backwards compatibility with ACA 1.8
117
+ {
118
+ path: 'preview/:nodeId',
119
+ loadChildren: () => import('@alfresco/aca-preview').then((m) => m.PreviewModule),
120
+ data: {
121
+ navigateSource: 'personal-files'
122
+ }
123
+ },
124
+ {
125
+ path: 'view/:nodeId',
126
+ outlet: 'viewer',
127
+ children: [
128
+ {
129
+ path: '',
130
+ data: {
131
+ navigateSource: 'personal-files'
132
+ },
133
+ loadChildren: () => import('@alfresco/aca-viewer').then((m) => m.AcaViewerModule)
134
+ }
135
+ ]
136
+ },
137
+ {
138
+ path: 'view/:nodeId/:versionId',
139
+ outlet: 'viewer',
140
+ children: [
141
+ {
142
+ path: '',
143
+ data: {
144
+ navigateSource: 'personal-files'
145
+ },
146
+ loadChildren: () => import('@alfresco/aca-viewer').then((m) => m.AcaViewerModule)
147
+ }
148
+ ]
149
+ }
150
+ ]
151
+ },
152
+ {
153
+ path: 'personal-files/:folderId',
154
+ children: [
155
+ {
156
+ path: '',
157
+ component: FilesComponent,
158
+ data: {
159
+ title: 'APP.BROWSE.PERSONAL.TITLE',
160
+ sortingPreferenceKey: 'personal-files'
161
+ }
162
+ },
163
+ {
164
+ path: 'view/:nodeId/:versionId',
165
+ outlet: 'viewer',
166
+ children: [
167
+ {
168
+ path: '',
169
+ data: {
170
+ navigateSource: 'personal-files'
171
+ },
172
+ loadChildren: () => import('@alfresco/aca-viewer').then((m) => m.AcaViewerModule)
173
+ }
174
+ ]
175
+ },
176
+ // deprecated, backwards compatibility with ACA 1.8
177
+ {
178
+ path: 'preview/:nodeId',
179
+ loadChildren: () => import('@alfresco/aca-preview').then((m) => m.PreviewModule),
180
+ data: {
181
+ navigateSource: 'personal-files'
182
+ }
183
+ },
184
+ // deprecated, backwards compatibility with ACA 1.8
185
+ {
186
+ path: ':folderId/preview/:nodeId',
187
+ loadChildren: () => import('@alfresco/aca-preview').then((m) => m.PreviewModule),
188
+ data: {
189
+ navigateSource: 'personal-files'
190
+ }
191
+ },
192
+ {
193
+ path: 'view/:nodeId',
194
+ outlet: 'viewer',
195
+ children: [
196
+ {
197
+ path: '',
198
+ data: {
199
+ navigateSource: 'personal-files'
200
+ },
201
+ loadChildren: () => import('@alfresco/aca-viewer').then((m) => m.AcaViewerModule)
202
+ }
203
+ ]
204
+ }
205
+ ]
206
+ },
207
+ {
208
+ path: 'libraries',
209
+ children: [
210
+ {
211
+ path: '',
212
+ component: LibrariesComponent,
213
+ data: {
214
+ title: 'APP.BROWSE.LIBRARIES.MENU.MY_LIBRARIES.TITLE',
215
+ sortingPreferenceKey: 'libraries'
216
+ }
217
+ }
218
+ ]
219
+ },
220
+ {
221
+ path: 'libraries/:folderId',
222
+ children: [
223
+ {
224
+ path: '',
225
+ component: FilesComponent,
226
+ data: {
227
+ title: 'APP.BROWSE.LIBRARIES.MENU.MY_LIBRARIES.TITLE',
228
+ sortingPreferenceKey: 'libraries-files'
229
+ }
230
+ },
231
+ // deprecated, backwards compatibility with ACA 1.8
232
+ {
233
+ path: 'preview/:nodeId',
234
+ loadChildren: () => import('@alfresco/aca-preview').then((m) => m.PreviewModule),
235
+ data: {
236
+ navigateSource: 'libraries'
237
+ }
238
+ },
239
+ {
240
+ path: 'view/:nodeId',
241
+ outlet: 'viewer',
242
+ children: [
243
+ {
244
+ path: '',
245
+ data: {
246
+ navigateSource: 'libraries'
247
+ },
248
+ loadChildren: () => import('@alfresco/aca-viewer').then((m) => m.AcaViewerModule)
249
+ }
250
+ ],
251
+ data: {
252
+ navigateSource: 'libraries'
253
+ }
254
+ },
255
+ {
256
+ path: 'view/:nodeId/:versionId',
257
+ outlet: 'viewer',
258
+ children: [
259
+ {
260
+ path: '',
261
+ data: {
262
+ navigateSource: 'libraries'
263
+ },
264
+ loadChildren: () => import('@alfresco/aca-viewer').then((m) => m.AcaViewerModule)
265
+ }
266
+ ]
267
+ }
268
+ ]
269
+ },
270
+ {
271
+ path: 'favorite',
272
+ children: [
273
+ {
274
+ path: '',
275
+ pathMatch: 'full',
276
+ redirectTo: 'libraries'
277
+ },
278
+ {
279
+ path: 'libraries',
280
+ component: FavoriteLibrariesComponent,
281
+ data: {
282
+ title: 'APP.BROWSE.LIBRARIES.MENU.FAVORITE_LIBRARIES.TITLE',
283
+ sortingPreferenceKey: 'favorite-libraries'
284
+ }
285
+ }
286
+ ]
287
+ },
288
+ {
289
+ path: 'favorite/libraries/:folderId',
290
+ children: [
291
+ {
292
+ path: '',
293
+ component: FilesComponent,
294
+ data: {
295
+ title: 'APP.BROWSE.LIBRARIES.MENU.FAVORITE_LIBRARIES.TITLE',
296
+ sortingPreferenceKey: 'libraries-files'
297
+ }
298
+ },
299
+ {
300
+ path: 'view/:nodeId',
301
+ outlet: 'viewer',
302
+ children: [
303
+ {
304
+ path: '',
305
+ data: {
306
+ navigateSource: 'libraries'
307
+ },
308
+ loadChildren: () => import('@alfresco/aca-viewer').then((m) => m.AcaViewerModule)
309
+ }
310
+ ]
311
+ },
312
+ {
313
+ path: 'view/:nodeId/:versionId',
314
+ outlet: 'viewer',
315
+ children: [
316
+ {
317
+ path: '',
318
+ data: {
319
+ navigateSource: 'libraries'
320
+ },
321
+ loadChildren: () => import('@alfresco/aca-viewer').then((m) => m.AcaViewerModule)
322
+ }
323
+ ]
324
+ }
325
+ ]
326
+ },
327
+ {
328
+ path: 'favorites',
329
+ data: {
330
+ sortingPreferenceKey: 'favorites'
331
+ },
332
+ children: [
333
+ {
334
+ path: '',
335
+ component: FavoritesComponent,
336
+ data: {
337
+ title: 'APP.BROWSE.FAVORITES.TITLE',
338
+ sortingPreferenceKey: 'favorites'
339
+ }
340
+ // loadChildren:
341
+ // './components/favorites/favorites.module#AppFavoritesModule'
342
+ },
343
+ // deprecated, backwards compatibility with ACA 1.8
344
+ {
345
+ path: 'preview/:nodeId',
346
+ loadChildren: () => import('@alfresco/aca-preview').then((m) => m.PreviewModule),
347
+ data: {
348
+ navigateSource: 'favorites'
349
+ }
350
+ },
351
+ {
352
+ path: 'view/:nodeId',
353
+ outlet: 'viewer',
354
+ children: [
355
+ {
356
+ path: '',
357
+ data: {
358
+ navigateSource: 'favorites'
359
+ },
360
+ loadChildren: () => import('@alfresco/aca-viewer').then((m) => m.AcaViewerModule)
361
+ }
362
+ ]
363
+ },
364
+ {
365
+ path: 'view/:nodeId/:versionId',
366
+ outlet: 'viewer',
367
+ children: [
368
+ {
369
+ path: '',
370
+ data: {
371
+ navigateSource: 'favorites'
372
+ },
373
+ loadChildren: () => import('@alfresco/aca-viewer').then((m) => m.AcaViewerModule)
374
+ }
375
+ ]
376
+ }
377
+ ]
378
+ },
379
+ {
380
+ path: 'recent-files',
381
+ data: {
382
+ sortingPreferenceKey: 'recent-files'
383
+ },
384
+ children: [
385
+ {
386
+ path: '',
387
+ component: RecentFilesComponent,
388
+ data: {
389
+ title: 'APP.BROWSE.RECENT.TITLE'
390
+ }
391
+ // loadChildren:
392
+ // './components/recent-files/recent-files.module#AppRecentFilesModule'
393
+ },
394
+ // deprecated, backwards compatibility with ACA 1.8
395
+ {
396
+ path: 'preview/:nodeId',
397
+ loadChildren: () => import('@alfresco/aca-preview').then((m) => m.PreviewModule),
398
+ data: {
399
+ navigateSource: 'recent-files'
400
+ }
401
+ },
402
+ {
403
+ path: 'view/:nodeId',
404
+ outlet: 'viewer',
405
+ children: [
406
+ {
407
+ path: '',
408
+ data: {
409
+ navigateSource: 'recent-files'
410
+ },
411
+ loadChildren: () => import('@alfresco/aca-viewer').then((m) => m.AcaViewerModule)
412
+ }
413
+ ]
414
+ },
415
+ {
416
+ path: 'view/:nodeId/:versionId',
417
+ outlet: 'viewer',
418
+ children: [
419
+ {
420
+ path: '',
421
+ data: {
422
+ navigateSource: 'recent-files'
423
+ },
424
+ loadChildren: () => import('@alfresco/aca-viewer').then((m) => m.AcaViewerModule)
425
+ }
426
+ ]
427
+ }
428
+ ]
429
+ },
430
+ {
431
+ path: 'shared',
432
+ children: [
433
+ {
434
+ path: '',
435
+ data: {
436
+ title: 'APP.BROWSE.SHARED.TITLE',
437
+ sortingPreferenceKey: 'shared-files'
438
+ },
439
+ component: SharedFilesComponent
440
+ // loadChildren:
441
+ // './components/shared-files/shared-files.module#AppSharedFilesModule'
442
+ },
443
+ // deprecated, backwards compatibility with ACA 1.8
444
+ {
445
+ path: 'preview/:nodeId',
446
+ loadChildren: () => import('@alfresco/aca-preview').then((m) => m.PreviewModule),
447
+ data: {
448
+ navigateSource: 'shared'
449
+ }
450
+ },
451
+ {
452
+ path: 'view/:nodeId',
453
+ outlet: 'viewer',
454
+ children: [
455
+ {
456
+ path: '',
457
+ data: {
458
+ navigateSource: 'shared'
459
+ },
460
+ loadChildren: () => import('@alfresco/aca-viewer').then((m) => m.AcaViewerModule)
461
+ }
462
+ ]
463
+ },
464
+ {
465
+ path: 'view/:nodeId/:versionId',
466
+ outlet: 'viewer',
467
+ children: [
468
+ {
469
+ path: '',
470
+ data: {
471
+ navigateSource: 'shared'
472
+ },
473
+ loadChildren: () => import('@alfresco/aca-viewer').then((m) => m.AcaViewerModule)
474
+ }
475
+ ]
476
+ }
477
+ ],
478
+ canActivateChild: [AppSharedRuleGuard],
479
+ canActivate: [AppSharedRuleGuard]
480
+ },
481
+ {
482
+ path: 'trashcan',
483
+ children: [
484
+ {
485
+ path: '',
486
+ component: TrashcanComponent,
487
+ data: {
488
+ title: 'APP.BROWSE.TRASHCAN.TITLE',
489
+ sortingPreferenceKey: 'trashcan'
490
+ }
491
+ }
492
+ ]
493
+ },
494
+ {
495
+ path: 'search',
496
+ children: [
497
+ {
498
+ path: '',
499
+ component: SearchResultsComponent,
500
+ data: {
501
+ title: 'APP.BROWSE.SEARCH.TITLE'
502
+ }
503
+ },
504
+ // deprecated, backwards compatibility with ACA 1.8
505
+ {
506
+ path: 'preview/:nodeId',
507
+ loadChildren: () => import('@alfresco/aca-preview').then((m) => m.PreviewModule),
508
+ data: {
509
+ navigateSource: 'search'
510
+ }
511
+ },
512
+ {
513
+ path: 'view/:nodeId',
514
+ outlet: 'viewer',
515
+ children: [
516
+ {
517
+ path: '',
518
+ data: {
519
+ navigateSource: 'search'
520
+ },
521
+ loadChildren: () => import('@alfresco/aca-viewer').then((m) => m.AcaViewerModule)
522
+ }
523
+ ]
524
+ },
525
+ {
526
+ path: 'view/:nodeId/:versionId',
527
+ outlet: 'viewer',
528
+ children: [
529
+ {
530
+ path: '',
531
+ data: {
532
+ navigateSource: 'search'
533
+ },
534
+ loadChildren: () => import('@alfresco/aca-viewer').then((m) => m.AcaViewerModule)
535
+ }
536
+ ]
537
+ }
538
+ ]
539
+ },
540
+ {
541
+ path: 'search-libraries',
542
+ children: [
543
+ {
544
+ path: '',
545
+ component: SearchLibrariesResultsComponent,
546
+ data: {
547
+ title: 'APP.BROWSE.SEARCH.TITLE'
548
+ }
549
+ },
550
+ {
551
+ path: 'view/:nodeId',
552
+ outlet: 'viewer',
553
+ children: [
554
+ {
555
+ path: '',
556
+ data: {
557
+ navigateSource: 'search'
558
+ },
559
+ loadChildren: () => import('@alfresco/aca-viewer').then((m) => m.AcaViewerModule)
560
+ }
561
+ ]
562
+ }
563
+ ]
564
+ },
565
+ {
566
+ path: 'nodes/:nodeId',
567
+ children: [
568
+ {
569
+ path: '',
570
+ loadChildren: () => import('@alfresco/aca-folder-rules').then((m) => m.AcaFolderRulesModule)
571
+ }
572
+ ]
573
+ },
574
+ {
575
+ path: '**',
576
+ component: GenericErrorComponent
577
+ }
578
+ ],
579
+ canActivateChild: [AuthGuard]
580
+ };
581
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNhLWNvbnRlbnQucm91dGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWNhLWNvbnRlbnQvc3JjL2xpYi9hY2EtY29udGVudC5yb3V0ZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FzQkc7QUFFSCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDcEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDaEYsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sOERBQThELENBQUM7QUFDMUcsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNkRBQTZELENBQUM7QUFDckcsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0saUZBQWlGLENBQUM7QUFDbEksT0FBTyxFQUFFLGtCQUFrQixFQUFFLHFCQUFxQixFQUFrQix5QkFBeUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzVILE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUMvQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUNoRixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUN4RixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUN4RixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDakUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDeEYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFFcEYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sMERBQTBELENBQUM7QUFDbkcsT0FBTyxF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QUFFLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLG9CQUFvQixDQUFDO2lCQUM3RjthQUNGO1NBQ0Y7UUFDRDtZQUNFLElBQUksRUFBRSxJQUFJO1lBQ1YsU0FBUyxFQUFFLHFCQUFxQjtTQUNqQztLQUNGO0lBQ0QsZ0JBQWdCLEVBQUUsQ0FBQyxTQUFTLENBQUM7Q0FDOUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogQ29weXJpZ2h0IMKpIDIwMDUtMjAyMyBIeWxhbmQgU29mdHdhcmUsIEluYy4gYW5kIGl0cyBhZmZpbGlhdGVzLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIEFsZnJlc2NvIEV4YW1wbGUgQ29udGVudCBBcHBsaWNhdGlvblxuICpcbiAqIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb24uXG4gKiBJZiB0aGUgc29mdHdhcmUgd2FzIHB1cmNoYXNlZCB1bmRlciBhIHBhaWQgQWxmcmVzY28gbGljZW5zZSwgdGhlIHRlcm1zIG9mXG4gKiB0aGUgcGFpZCBsaWNlbnNlIGFncmVlbWVudCB3aWxsIHByZXZhaWwuIE90aGVyd2lzZSwgdGhlIHNvZnR3YXJlIGlzXG4gKiBwcm92aWRlZCB1bmRlciB0aGUgZm9sbG93aW5nIG9wZW4gc291cmNlIGxpY2Vuc2UgdGVybXM6XG4gKlxuICogVGhlIEFsZnJlc2NvIEV4YW1wbGUgQ29udGVudCBBcHBsaWNhdGlvbiBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5XG4gKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnlcbiAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yXG4gKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLlxuICpcbiAqIFRoZSBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb24gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCxcbiAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mXG4gKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGVcbiAqIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLlxuICpcbiAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZVxuICogZnJvbSBIeWxhbmQgU29mdHdhcmUuIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi5cbiAqL1xuXG5pbXBvcnQgeyBGaWxlc0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9maWxlcy9maWxlcy5jb21wb25lbnQnO1xuaW1wb3J0IHsgTGlicmFyaWVzQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2xpYnJhcmllcy9saWJyYXJpZXMuY29tcG9uZW50JztcbmltcG9ydCB7IEZhdm9yaXRlTGlicmFyaWVzQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2Zhdm9yaXRlLWxpYnJhcmllcy9mYXZvcml0ZS1saWJyYXJpZXMuY29tcG9uZW50JztcbmltcG9ydCB7IFNlYXJjaFJlc3VsdHNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc2VhcmNoL3NlYXJjaC1yZXN1bHRzL3NlYXJjaC1yZXN1bHRzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTZWFyY2hMaWJyYXJpZXNSZXN1bHRzQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3NlYXJjaC9zZWFyY2gtbGlicmFyaWVzLXJlc3VsdHMvc2VhcmNoLWxpYnJhcmllcy1yZXN1bHRzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBcHBTaGFyZWRSdWxlR3VhcmQsIEdlbmVyaWNFcnJvckNvbXBvbmVudCwgRXh0ZW5zaW9uUm91dGUsIEV4dGVuc2lvbnNEYXRhTG9hZGVyR3VhcmQgfSBmcm9tICdAYWxmcmVzY28vYWNhLXNoYXJlZCc7XG5pbXBvcnQgeyBBdXRoR3VhcmQgfSBmcm9tICdAYWxmcmVzY28vYWRmLWNvcmUnO1xuaW1wb3J0IHsgRmF2b3JpdGVzQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2Zhdm9yaXRlcy9mYXZvcml0ZXMuY29tcG9uZW50JztcbmltcG9ydCB7IFJlY2VudEZpbGVzQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3JlY2VudC1maWxlcy9yZWNlbnQtZmlsZXMuY29tcG9uZW50JztcbmltcG9ydCB7IFNoYXJlZEZpbGVzQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3NoYXJlZC1maWxlcy9zaGFyZWQtZmlsZXMuY29tcG9uZW50JztcbmltcG9ydCB7IERldGFpbHNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvZGV0YWlscy9kZXRhaWxzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIb21lQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2hvbWUvaG9tZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVmlld1Byb2ZpbGVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvdmlldy1wcm9maWxlL3ZpZXctcHJvZmlsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVmlld1Byb2ZpbGVSdWxlR3VhcmQgfSBmcm9tICcuL2NvbXBvbmVudHMvdmlldy1wcm9maWxlL3ZpZXctcHJvZmlsZS5ndWFyZCc7XG5pbXBvcnQgeyBSb3V0ZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBTaGFyZWRMaW5rVmlld0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9zaGFyZWQtbGluay12aWV3L3NoYXJlZC1saW5rLXZpZXcuY29tcG9uZW50JztcbmltcG9ydCB7IFRyYXNoY2FuQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3RyYXNoY2FuL3RyYXNoY2FuLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTaGVsbExheW91dENvbXBvbmVudCB9IGZyb20gJ0BhbGZyZXNjby9hZGYtY29yZS9zaGVsbCc7XG5cbmV4cG9ydCBjb25zdCBDT05URU5UX1JPVVRFUzogRXh0ZW5zaW9uUm91dGVbXSA9IFtcbiAge1xuICAgIHBhdGg6ICdwcmV2aWV3L3MvOmlkJyxcbiAgICBjaGlsZHJlbjogW1xuICAgICAge1xuICAgICAgICBwYXRoOiAnJyxcbiAgICAgICAgY29tcG9uZW50OiBTaGFyZWRMaW5rVmlld0NvbXBvbmVudCxcbiAgICAgICAgZGF0YToge1xuICAgICAgICAgIHRpdGxlOiAnQVBQLlBSRVZJRVcuVElUTEUnXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICBdXG4gIH0sXG4gIHtcbiAgICBwYXRoOiAndmlldycsXG4gICAgY29tcG9uZW50OiBTaGVsbExheW91dENvbXBvbmVudCxcbiAgICBjaGlsZHJlbjogW1xuICAgICAge1xuICAgICAgICBwYXRoOiAnOm5vZGVJZCcsXG4gICAgICAgIG91dGxldDogJ3ZpZXdlcicsXG4gICAgICAgIGNoaWxkcmVuOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgcGF0aDogJycsXG4gICAgICAgICAgICBsb2FkQ2hpbGRyZW46ICgpID0+IGltcG9ydCgnQGFsZnJlc2NvL2FjYS12aWV3ZXInKS50aGVuKChtKSA9PiBtLkFjYVZpZXdlck1vZHVsZSlcbiAgICAgICAgICB9XG4gICAgICAgIF1cbiAgICAgIH1cbiAgICBdXG4gIH1cbl07XG5cbmV4cG9ydCBjb25zdCBDT05URU5UX0xBWU9VVF9ST1VURVM6IFJvdXRlID0ge1xuICBwYXRoOiAnJyxcbiAgY2FuQWN0aXZhdGU6IFtFeHRlbnNpb25zRGF0YUxvYWRlckd1YXJkXSxcbiAgY2hpbGRyZW46IFtcbiAgICB7XG4gICAgICBwYXRoOiAncHJvZmlsZScsXG4gICAgICBjYW5BY3RpdmF0ZTogW1ZpZXdQcm9maWxlUnVsZUd1YXJkXSxcbiAgICAgIGNvbXBvbmVudDogVmlld1Byb2ZpbGVDb21wb25lbnRcbiAgICB9LFxuICAgIHtcbiAgICAgIHBhdGg6ICcnLFxuICAgICAgY29tcG9uZW50OiBIb21lQ29tcG9uZW50XG4gICAgfSxcbiAgICB7XG4gICAgICBwYXRoOiAncGVyc29uYWwtZmlsZXMnLFxuICAgICAgY2hpbGRyZW46IFtcbiAgICAgICAge1xuICAgICAgICAgIHBhdGg6ICcnLFxuICAgICAgICAgIGNvbXBvbmVudDogRmlsZXNDb21wb25lbnQsXG4gICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgc29ydGluZ1ByZWZlcmVuY2VLZXk6ICdwZXJzb25hbC1maWxlcycsXG4gICAgICAgICAgICB0aXRsZTogJ0FQUC5CUk9XU0UuUEVSU09OQUwuVElUTEUnLFxuICAgICAgICAgICAgZGVmYXVsdE5vZGVJZDogJy1teS0nXG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgcGF0aDogJ2RldGFpbHMvOm5vZGVJZCcsXG4gICAgICAgICAgY2hpbGRyZW46IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgcGF0aDogJycsXG4gICAgICAgICAgICAgIGNvbXBvbmVudDogRGV0YWlsc0NvbXBvbmVudCxcbiAgICAgICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgICAgIG5hdmlnYXRlU291cmNlOiAncGVyc29uYWwtZmlsZXMnXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHBhdGg6ICc6YWN0aXZlVGFiJyxcbiAgICAgICAgICAgICAgY29tcG9uZW50OiBEZXRhaWxzQ29tcG9uZW50LFxuICAgICAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICAgICAgdGl0bGU6ICdBUFAuQlJPV1NFLlBFUlNPTkFMLlBFUk1JU1NJT05TLlRJVExFJyxcbiAgICAgICAgICAgICAgICBuYXZpZ2F0ZVNvdXJjZTogJ3BlcnNvbmFsLWZpbGVzJ1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgXVxuICAgICAgICB9LFxuICAgICAgICAvLyBkZXByZWNhdGVkLCBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eSB3aXRoIEFDQSAxLjhcbiAgICAgICAge1xuICAgICAgICAgIHBhdGg6ICdwcmV2aWV3Lzpub2RlSWQnLFxuICAgICAgICAgIGxvYWRDaGlsZHJlbjogKCkgPT4gaW1wb3J0KCdAYWxmcmVzY28vYWNhLXByZXZpZXcnKS50aGVuKChtKSA9PiBtLlByZXZpZXdNb2R1bGUpLFxuICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgIG5hdmlnYXRlU291cmNlOiAncGVyc29uYWwtZmlsZXMnXG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgcGF0aDogJ3ZpZXcvOm5vZGVJZCcsXG4gICAgICAgICAgb3V0bGV0OiAndmlld2VyJyxcbiAgICAgICAgICBjaGlsZHJlbjogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBwYXRoOiAnJyxcbiAgICAgICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgICAgIG5hdmlnYXRlU291cmNlOiAncGVyc29uYWwtZmlsZXMnXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIGxvYWRDaGlsZHJlbjogKCkgPT4gaW1wb3J0KCdAYWxmcmVzY28vYWNhLXZpZXdlcicpLnRoZW4oKG0pID0+IG0uQWNhVmlld2VyTW9kdWxlKVxuICAgICAgICAgICAgfVxuICAgICAgICAgIF1cbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHBhdGg6ICd2aWV3Lzpub2RlSWQvOnZlcnNpb25JZCcsXG4gICAgICAgICAgb3V0bGV0OiAndmlld2VyJyxcbiAgICAgICAgICBjaGlsZHJlbjogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBwYXRoOiAnJyxcbiAgICAgICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgICAgIG5hdmlnYXRlU291cmNlOiAncGVyc29uYWwtZmlsZXMnXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIGxvYWRDaGlsZHJlbjogKCkgPT4gaW1wb3J0KCdAYWxmcmVzY28vYWNhLXZpZXdlcicpLnRoZW4oKG0pID0+IG0uQWNhVmlld2VyTW9kdWxlKVxuICAgICAgICAgICAgfVxuICAgICAgICAgIF1cbiAgICAgICAgfVxuICAgICAgXVxuICAgIH0sXG4gICAge1xuICAgICAgcGF0aDogJ3BlcnNvbmFsLWZpbGVzLzpmb2xkZXJJZCcsXG4gICAgICBjaGlsZHJlbjogW1xuICAgICAgICB7XG4gICAgICAgICAgcGF0aDogJycsXG4gICAgICAgICAgY29tcG9uZW50OiBGaWxlc0NvbXBvbmVudCxcbiAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICB0aXRsZTogJ0FQUC5CUk9XU0UuUEVSU09OQUwuVElUTEUnLFxuICAgICAgICAgICAgc29ydGluZ1ByZWZlcmVuY2VLZXk6ICdwZXJzb25hbC1maWxlcydcbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBwYXRoOiAndmlldy86bm9kZUlkLzp2ZXJzaW9uSWQnLFxuICAgICAgICAgIG91dGxldDogJ3ZpZXdlcicsXG4gICAgICAgICAgY2hpbGRyZW46IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgcGF0aDogJycsXG4gICAgICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgICAgICBuYXZpZ2F0ZVNvdXJjZTogJ3BlcnNvbmFsLWZpbGVzJ1xuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBsb2FkQ2hpbGRyZW46ICgpID0+IGltcG9ydCgnQGFsZnJlc2NvL2FjYS12aWV3ZXInKS50aGVuKChtKSA9PiBtLkFjYVZpZXdlck1vZHVsZSlcbiAgICAgICAgICAgIH1cbiAgICAgICAgICBdXG4gICAgICAgIH0sXG4gICAgICAgIC8vIGRlcHJlY2F0ZWQsIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5IHdpdGggQUNBIDEuOFxuICAgICAgICB7XG4gICAgICAgICAgcGF0aDogJ3ByZXZpZXcvOm5vZGVJZCcsXG4gICAgICAgICAgbG9hZENoaWxkcmVuOiAoKSA9PiBpbXBvcnQoJ0BhbGZyZXNjby9hY2EtcHJldmlldycpLnRoZW4oKG0pID0+IG0uUHJldmlld01vZHVsZSksXG4gICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgbmF2aWdhdGVTb3VyY2U6ICdwZXJzb25hbC1maWxlcydcbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIC8vIGRlcHJlY2F0ZWQsIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5IHdpdGggQUNBIDEuOFxuICAgICAgICB7XG4gICAgICAgICAgcGF0aDogJzpmb2xkZXJJZC9wcmV2aWV3Lzpub2RlSWQnLFxuICAgICAgICAgIGxvYWRDaGlsZHJlbjogKCkgPT4gaW1wb3J0KCdAYWxmcmVzY28vYWNhLXByZXZpZXcnKS50aGVuKChtKSA9PiBtLlByZXZpZXdNb2R1bGUpLFxuICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgIG5hdmlnYXRlU291cmNlOiAncGVyc29uYWwtZmlsZXMnXG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgcGF0aDogJ3ZpZXcvOm5vZGVJZCcsXG4gICAgICAgICAgb3V0bGV0OiAndmlld2VyJyxcbiAgICAgICAgICBjaGlsZHJlbjogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBwYXRoOiAnJyxcbiAgICAgICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgICAgIG5hdmlnYXRlU291cmNlOiAncGVyc29uYWwtZmlsZXMnXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIGxvYWRDaGlsZHJlbjogKCkgPT4gaW1wb3J0KCdAYWxmcmVzY28vYWNhLXZpZXdlcicpLnRoZW4oKG0pID0+IG0uQWNhVmlld2VyTW9kdWxlKVxuICAgICAgICAgICAgfVxuICAgICAgICAgIF1cbiAgICAgICAgfVxuICAgICAgXVxuICAgIH0sXG4gICAge1xuICAgICAgcGF0aDogJ2xpYnJhcmllcycsXG4gICAgICBjaGlsZHJlbjogW1xuICAgICAgICB7XG4gICAgICAgICAgcGF0aDogJycsXG4gICAgICAgICAgY29tcG9uZW50OiBMaWJyYXJpZXNDb21wb25lbnQsXG4gICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgdGl0bGU6ICdBUFAuQlJPV1NFLkxJQlJBUklFUy5NRU5VLk1ZX0xJQlJBUklFUy5USVRMRScsXG4gICAgICAgICAgICBzb3J0aW5nUHJlZmVyZW5jZUtleTogJ2xpYnJhcmllcydcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIF1cbiAgICB9LFxuICAgIHtcbiAgICAgIHBhdGg6ICdsaWJyYXJpZXMvOmZvbGRlcklkJyxcbiAgICAgIGNoaWxkcmVuOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBwYXRoOiAnJyxcbiAgICAgICAgICBjb21wb25lbnQ6IEZpbGVzQ29tcG9uZW50LFxuICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgIHRpdGxlOiAnQVBQLkJST1dTRS5MSUJSQVJJRVMuTUVOVS5NWV9MSUJSQVJJRVMuVElUTEUnLFxuICAgICAgICAgICAgc29ydGluZ1ByZWZlcmVuY2VLZXk6ICdsaWJyYXJpZXMtZmlsZXMnXG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICAvLyBkZXByZWNhdGVkLCBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eSB3aXRoIEFDQSAxLjhcbiAgICAgICAge1xuICAgICAgICAgIHBhdGg6ICdwcmV2aWV3Lzpub2RlSWQnLFxuICAgICAgICAgIGxvYWRDaGlsZHJlbjogKCkgPT4gaW1wb3J0KCdAYWxmcmVzY28vYWNhLXByZXZpZXcnKS50aGVuKChtKSA9PiBtLlByZXZpZXdNb2R1bGUpLFxuICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgIG5hdmlnYXRlU291cmNlOiAnbGlicmFyaWVzJ1xuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHBhdGg6ICd2aWV3Lzpub2RlSWQnLFxuICAgICAgICAgIG91dGxldDogJ3ZpZXdlcicsXG4gICAgICAgICAgY2hpbGRyZW46IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgcGF0aDogJycsXG4gICAgICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgICAgICBuYXZpZ2F0ZVNvdXJjZTogJ2xpYnJhcmllcydcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgbG9hZENoaWxkcmVuOiAoKSA9PiBpbXBvcnQoJ0BhbGZyZXNjby9hY2Etdmlld2VyJykudGhlbigobSkgPT4gbS5BY2FWaWV3ZXJNb2R1bGUpXG4gICAgICAgICAgICB9XG4gICAgICAgICAgXSxcbiAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICBuYXZpZ2F0ZVNvdXJjZTogJ2xpYnJhcmllcydcbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBwYXRoOiAndmlldy86bm9kZUlkLzp2ZXJzaW9uSWQnLFxuICAgICAgICAgIG91dGxldDogJ3ZpZXdlcicsXG4gICAgICAgICAgY2hpbGRyZW46IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgcGF0aDogJycsXG4gICAgICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgICAgICBuYXZpZ2F0ZVNvdXJjZTogJ2xpYnJhcmllcydcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgbG9hZENoaWxkcmVuOiAoKSA9PiBpbXBvcnQoJ0BhbGZyZXNjby9hY2Etdmlld2VyJykudGhlbigobSkgPT4gbS5BY2FWaWV3ZXJNb2R1bGUpXG4gICAgICAgICAgICB9XG4gICAgICAgICAgXVxuICAgICAgICB9XG4gICAgICBdXG4gICAgfSxcbiAgICB7XG4gICAgICBwYXRoOiAnZmF2b3JpdGUnLFxuICAgICAgY2hpbGRyZW46IFtcbiAgICAgICAge1xuICAgICAgICAgIHBhdGg6ICcnLFxuICAgICAgICAgIHBhdGhNYXRjaDogJ2Z1bGwnLFxuICAgICAgICAgIHJlZGlyZWN0VG86ICdsaWJyYXJpZXMnXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBwYXRoOiAnbGlicmFyaWVzJyxcbiAgICAgICAgICBjb21wb25lbnQ6IEZhdm9yaXRlTGlicmFyaWVzQ29tcG9uZW50LFxuICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgIHRpdGxlOiAnQVBQLkJST1dTRS5MSUJSQVJJRVMuTUVOVS5GQVZPUklURV9MSUJSQVJJRVMuVElUTEUnLFxuICAgICAgICAgICAgc29ydGluZ1ByZWZlcmVuY2VLZXk6ICdmYXZvcml0ZS1saWJyYXJpZXMnXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICBdXG4gICAgfSxcbiAgICB7XG4gICAgICBwYXRoOiAnZmF2b3JpdGUvbGlicmFyaWVzLzpmb2xkZXJJZCcsXG4gICAgICBjaGlsZHJlbjogW1xuICAgICAgICB7XG4gICAgICAgICAgcGF0aDogJycsXG4gICAgICAgICAgY29tcG9uZW50OiBGaWxlc0NvbXBvbmVudCxcbiAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICB0aXRsZTogJ0FQUC5CUk9XU0UuTElCUkFSSUVTLk1FTlUuRkFWT1JJVEVfTElCUkFSSUVTLlRJVExFJyxcbiAgICAgICAgICAgIHNvcnRpbmdQcmVmZXJlbmNlS2V5OiAnbGlicmFyaWVzLWZpbGVzJ1xuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHBhdGg6ICd2aWV3Lzpub2RlSWQnLFxuICAgICAgICAgIG91dGxldDogJ3ZpZXdlcicsXG4gICAgICAgICAgY2hpbGRyZW46IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgcGF0aDogJycsXG4gICAgICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgICAgICBuYXZpZ2F0ZVNvdXJjZTogJ2xpYnJhcmllcydcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgbG9hZENoaWxkcmVuOiAoKSA9PiBpbXBvcnQoJ0BhbGZyZXNjby9hY2Etdmlld2VyJykudGhlbigobSkgPT4gbS5BY2FWaWV3ZXJNb2R1bGUpXG4gICAgICAgICAgICB9XG4gICAgICAgICAgXVxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgcGF0aDogJ3ZpZXcvOm5vZGVJZC86dmVyc2lvbklkJyxcbiAgICAgICAgICBvdXRsZXQ6ICd2aWV3ZXInLFxuICAgICAgICAgIGNoaWxkcmVuOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHBhdGg6ICcnLFxuICAgICAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICAgICAgbmF2aWdhdGVTb3VyY2U6ICdsaWJyYXJpZXMnXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIGxvYWRDaGlsZHJlbjogKCkgPT4gaW1wb3J0KCdAYWxmcmVzY28vYWNhLXZpZXdlcicpLnRoZW4oKG0pID0+IG0uQWNhVmlld2VyTW9kdWxlKVxuICAgICAgICAgICAgfVxuICAgICAgICAgIF1cbiAgICAgICAgfVxuICAgICAgXVxuICAgIH0sXG4gICAge1xuICAgICAgcGF0aDogJ2Zhdm9yaXRlcycsXG4gICAgICBkYXRhOiB7XG4gICAgICAgIHNvcnRpbmdQcmVmZXJlbmNlS2V5OiAnZmF2b3JpdGVzJ1xuICAgICAgfSxcbiAgICAgIGNoaWxkcmVuOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBwYXRoOiAnJyxcbiAgICAgICAgICBjb21wb25lbnQ6IEZhdm9yaXRlc0NvbXBvbmVudCxcbiAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICB0aXRsZTogJ0FQUC5CUk9XU0UuRkFWT1JJVEVTLlRJVExFJyxcbiAgICAgICAgICAgIHNvcnRpbmdQcmVmZXJlbmNlS2V5OiAnZmF2b3JpdGVzJ1xuICAgICAgICAgIH1cbiAgICAgICAgICAvLyBsb2FkQ2hpbGRyZW46XG4gICAgICAgICAgLy8gICAnLi9jb21wb25lbnRzL2Zhdm9yaXRlcy9mYXZvcml0ZXMubW9kdWxlI0FwcEZhdm9yaXRlc01vZHVsZSdcbiAgICAgICAgfSxcbiAgICAgICAgLy8gZGVwcmVjYXRlZCwgYmFja3dhcmRzIGNvbXBhdGliaWxpdHkgd2l0aCBBQ0EgMS44XG4gICAgICAgIHtcbiAgICAgICAgICBwYXRoOiAncHJldmlldy86bm9kZUlkJyxcbiAgICAgICAgICBsb2FkQ2hpbGRyZW46ICgpID0+IGltcG9ydCgnQGFsZnJlc2NvL2FjYS1wcmV2aWV3JykudGhlbigobSkgPT4gbS5QcmV2aWV3TW9kdWxlKSxcbiAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICBuYXZpZ2F0ZVNvdXJjZTogJ2Zhdm9yaXRlcydcbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBwYXRoOiAndmlldy86bm9kZUlkJyxcbiAgICAgICAgICBvdXRsZXQ6ICd2aWV3ZXInLFxuICAgICAgICAgIGNoaWxkcmVuOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHBhdGg6ICcnLFxuICAgICAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICAgICAgbmF2aWdhdGVTb3VyY2U6ICdmYXZvcml0ZXMnXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIGxvYWRDaGlsZHJlbjogKCkgPT4gaW1wb3J0KCdAYWxmcmVzY28vYWNhLXZpZXdlcicpLnRoZW4oKG0pID0+IG0uQWNhVmlld2VyTW9kdWxlKVxuICAgICAgICAgICAgfVxuICAgICAgICAgIF1cbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHBhdGg6ICd2aWV3Lzpub2RlSWQvOnZlcnNpb25JZCcsXG4gICAgICAgICAgb3V0bGV0OiAndmlld2VyJyxcbiAgICAgICAgICBjaGlsZHJlbjogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBwYXRoOiAnJyxcbiAgICAgICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgICAgIG5hdmlnYXRlU291cmNlOiAnZmF2b3JpdGVzJ1xuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBsb2FkQ2hpbGRyZW46ICgpID0+IGltcG9ydCgnQGFsZnJlc2NvL2FjYS12aWV3ZXInKS50aGVuKChtKSA9PiBtLkFjYVZpZXdlck1vZHVsZSlcbiAgICAgICAgICAgIH1cbiAgICAgICAgICBdXG4gICAgICAgIH1cbiAgICAgIF1cbiAgICB9LFxuICAgIHtcbiAgICAgIHBhdGg6ICdyZWNlbnQtZmlsZXMnLFxuICAgICAgZGF0YToge1xuICAgICAgICBzb3J0aW5nUHJlZmVyZW5jZUtleTogJ3JlY2VudC1maWxlcydcbiAgICAgIH0sXG4gICAgICBjaGlsZHJlbjogW1xuICAgICAgICB7XG4gICAgICAgICAgcGF0aDogJycsXG4gICAgICAgICAgY29tcG9uZW50OiBSZWNlbnRGaWxlc0NvbXBvbmVudCxcbiAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICB0aXRsZTogJ0FQUC5CUk9XU0UuUkVDRU5ULlRJVExFJ1xuICAgICAgICAgIH1cbiAgICAgICAgICAvLyBsb2FkQ2hpbGRyZW46XG4gICAgICAgICAgLy8gICAnLi9jb21wb25lbnRzL3JlY2VudC1maWxlcy9yZWNlbnQtZmlsZXMubW9kdWxlI0FwcFJlY2VudEZpbGVzTW9kdWxlJ1xuICAgICAgICB9LFxuICAgICAgICAvLyBkZXByZWNhdGVkLCBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eSB3aXRoIEFDQSAxLjhcbiAgICAgICAge1xuICAgICAgICAgIHBhdGg6ICdwcmV2aWV3Lzpub2RlSWQnLFxuICAgICAgICAgIGxvYWRDaGlsZHJlbjogKCkgPT4gaW1wb3J0KCdAYWxmcmVzY28vYWNhLXByZXZpZXcnKS50aGVuKChtKSA9PiBtLlByZXZpZXdNb2R1bGUpLFxuICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgIG5hdmlnYXRlU291cmNlOiAncmVjZW50LWZpbGVzJ1xuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHBhdGg6ICd2aWV3Lzpub2RlSWQnLFxuICAgICAgICAgIG91dGxldDogJ3ZpZXdlcicsXG4gICAgICAgICAgY2hpbGRyZW46IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgcGF0aDogJycsXG4gICAgICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgICAgICBuYXZpZ2F0ZVNvdXJjZTogJ3JlY2VudC1maWxlcydcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgbG9hZENoaWxkcmVuOiAoKSA9PiBpbXBvcnQoJ0BhbGZyZXNjby9hY2Etdmlld2VyJykudGhlbigobSkgPT4gbS5BY2FWaWV3ZXJNb2R1bGUpXG4gICAgICAgICAgICB9XG4gICAgICAgICAgXVxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgcGF0aDogJ3ZpZXcvOm5vZGVJZC86dmVyc2lvbklkJyxcbiAgICAgICAgICBvdXRsZXQ6ICd2aWV3ZXInLFxuICAgICAgICAgIGNoaWxkcmVuOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHBhdGg6ICcnLFxuICAgICAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICAgICAgbmF2aWdhdGVTb3VyY2U6ICdyZWNlbnQtZmlsZXMnXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIGxvYWRDaGlsZHJlbjogKCkgPT4gaW1wb3J0KCdAYWxmcmVzY28vYWNhLXZpZXdlcicpLnRoZW4oKG0pID0+IG0uQWNhVmlld2VyTW9kdWxlKVxuICAgICAgICAgICAgfVxuICAgICAgICAgIF1cbiAgICAgICAgfVxuICAgICAgXVxuICAgIH0sXG4gICAge1xuICAgICAgcGF0aDogJ3NoYXJlZCcsXG4gICAgICBjaGlsZHJlbjogW1xuICAgICAgICB7XG4gICAgICAgICAgcGF0aDogJycsXG4gICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgdGl0bGU6ICdBUFAuQlJPV1NFLlNIQVJFRC5USVRMRScsXG4gICAgICAgICAgICBzb3J0aW5nUHJlZmVyZW5jZUtleTogJ3NoYXJlZC1maWxlcydcbiAgICAgICAgICB9LFxuICAgICAgICAgIGNvbXBvbmVudDogU2hhcmVkRmlsZXNDb21wb25lbnRcbiAgICAgICAgICAvLyBsb2FkQ2hpbGRyZW46XG4gICAgICAgICAgLy8gICAnLi9jb21wb25lbnRzL3NoYXJlZC1maWxlcy9zaGFyZWQtZmlsZXMubW9kdWxlI0FwcFNoYXJlZEZpbGVzTW9kdWxlJ1xuICAgICAgICB9LFxuICAgICAgICAvLyBkZXByZWNhdGVkLCBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eSB3aXRoIEFDQSAxLjhcbiAgICAgICAge1xuICAgICAgICAgIHBhdGg6ICdwcmV2aWV3Lzpub2RlSWQnLFxuICAgICAgICAgIGxvYWRDaGlsZHJlbjogKCkgPT4gaW1wb3J0KCdAYWxmcmVzY28vYWNhLXByZXZpZXcnKS50aGVuKChtKSA9PiBtLlByZXZpZXdNb2R1bGUpLFxuICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgIG5hdmlnYXRlU291cmNlOiAnc2hhcmVkJ1xuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHBhdGg6ICd2aWV3Lzpub2RlSWQnLFxuICAgICAgICAgIG91dGxldDogJ3ZpZXdlcicsXG4gICAgICAgICAgY2hpbGRyZW46IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgcGF0aDogJycsXG4gICAgICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgICAgICBuYXZpZ2F0ZVNvdXJjZTogJ3NoYXJlZCdcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgbG9hZENoaWxkcmVuOiAoKSA9PiBpbXBvcnQoJ0BhbGZyZXNjby9hY2Etdmlld2VyJykudGhlbigobSkgPT4gbS5BY2FWaWV3ZXJNb2R1bGUpXG4gICAgICAgICAgICB9XG4gICAgICAgICAgXVxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgcGF0aDogJ3ZpZXcvOm5vZGVJZC86dmVyc2lvbklkJyxcbiAgICAgICAgICBvdXRsZXQ6ICd2aWV3ZXInLFxuICAgICAgICAgIGNoaWxkcmVuOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHBhdGg6ICcnLFxuICAgICAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICAgICAgbmF2aWdhdGVTb3VyY2U6ICdzaGFyZWQnXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIGxvYWRDaGlsZHJlbjogKCkgPT4gaW1wb3J0KCdAYWxmcmVzY28vYWNhLXZpZXdlcicpLnRoZW4oKG0pID0+IG0uQWNhVmlld2VyTW9kdWxlKVxuICAgICAgICAgICAgfVxuICAgICAgICAgIF1cbiAgICAgICAgfVxuICAgICAgXSxcbiAgICAgIGNhbkFjdGl2YXRlQ2hpbGQ6IFtBcHBTaGFyZWRSdWxlR3VhcmRdLFxuICAgICAgY2FuQWN0aXZhdGU6IFtBcHBTaGFyZWRSdWxlR3VhcmRdXG4gICAgfSxcbiAgICB7XG4gICAgICBwYXRoOiAndHJhc2hjYW4nLFxuICAgICAgY2hpbGRyZW46IFtcbiAgICAgICAge1xuICAgICAgICAgIHBhdGg6ICcnLFxuICAgICAgICAgIGNvbXBvbmVudDogVHJhc2hjYW5Db21wb25lbnQsXG4gICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgdGl0bGU6ICdBUFAuQlJPV1NFLlRSQVNIQ0FOLlRJVExFJyxcbiAgICAgICAgICAgIHNvcnRpbmdQcmVmZXJlbmNlS2V5OiAndHJhc2hjYW4nXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICBdXG4gICAgfSxcbiAgICB7XG4gICAgICBwYXRoOiAnc2VhcmNoJyxcbiAgICAgIGNoaWxkcmVuOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBwYXRoOiAnJyxcbiAgICAgICAgICBjb21wb25lbnQ6IFNlYXJjaFJlc3VsdHNDb21wb25lbnQsXG4gICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgdGl0bGU6ICdBUFAuQlJPV1NFLlNFQVJDSC5USVRMRSdcbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIC8vIGRlcHJlY2F0ZWQsIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5IHdpdGggQUNBIDEuOFxuICAgICAgICB7XG4gICAgICAgICAgcGF0aDogJ3ByZXZpZXcvOm5vZGVJZCcsXG4gICAgICAgICAgbG9hZENoaWxkcmVuOiAoKSA9PiBpbXBvcnQoJ0BhbGZyZXNjby9hY2EtcHJldmlldycpLnRoZW4oKG0pID0+IG0uUHJldmlld01vZHVsZSksXG4gICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgbmF2aWdhdGVTb3VyY2U6ICdzZWFyY2gnXG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgcGF0aDogJ3ZpZXcvOm5vZGVJZCcsXG4gICAgICAgICAgb3V0bGV0OiAndmlld2VyJyxcbiAgICAgICAgICBjaGlsZHJlbjogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBwYXRoOiAnJyxcbiAgICAgICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgICAgIG5hdmlnYXRlU291cmNlOiAnc2VhcmNoJ1xuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBsb2FkQ2hpbGRyZW46ICgpID0+IGltcG9ydCgnQGFsZnJlc2NvL2FjYS12aWV3ZXInKS50aGVuKChtKSA9PiBtLkFjYVZpZXdlck1vZHVsZSlcbiAgICAgICAgICAgIH1cbiAgICAgICAgICBdXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBwYXRoOiAndmlldy86bm9kZUlkLzp2ZXJzaW9uSWQnLFxuICAgICAgICAgIG91dGxldDogJ3ZpZXdlcicsXG4gICAgICAgICAgY2hpbGRyZW46IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgcGF0aDogJycsXG4gICAgICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgICAgICBuYXZpZ2F0ZVNvdXJjZTogJ3NlYXJjaCdcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgbG9hZENoaWxkcmVuOiAoKSA9PiBpbXBvcnQoJ0BhbGZyZXNjby9hY2Etdmlld2VyJykudGhlbigobSkgPT4gbS5BY2FWaWV3ZXJNb2R1bGUpXG4gICAgICAgICAgICB9XG4gICAgICAgICAgXVxuICAgICAgICB9XG4gICAgICBdXG4gICAgfSxcbiAgICB7XG4gICAgICBwYXRoOiAnc2VhcmNoLWxpYnJhcmllcycsXG4gICAgICBjaGlsZHJlbjogW1xuICAgICAgICB7XG4gICAgICAgICAgcGF0aDogJycsXG4gICAgICAgICAgY29tcG9uZW50OiBTZWFyY2hMaWJyYXJpZXNSZXN1bHRzQ29tcG9uZW50LFxuICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgIHRpdGxlOiAnQVBQLkJST1dTRS5TRUFSQ0guVElUTEUnXG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgcGF0aDogJ3ZpZXcvOm5vZGVJZCcsXG4gICAgICAgICAgb3V0bGV0OiAndmlld2VyJyxcbiAgICAgICAgICBjaGlsZHJlbjogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBwYXRoOiAnJyxcbiAgICAgICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgICAgIG5hdmlnYXRlU291cmNlOiAnc2VhcmNoJ1xuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBsb2FkQ2hpbGRyZW46ICgpID0+IGltcG9ydCgnQGFsZnJlc2NvL2FjYS12aWV3ZXInKS50aGVuKChtKSA9PiBtLkFjYVZpZXdlck1vZHVsZSlcbiAgICAgICAgICAgIH1cbiAgICAgICAgICBdXG4gICAgICAgIH1cbiAgICAgIF1cbiAgICB9LFxuICAgIHtcbiAgICAgIHBhdGg6ICdub2Rlcy86bm9kZUlkJyxcbiAgICAgIGNoaWxkcmVuOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBwYXRoOiAnJyxcbiAgICAgICAgICBsb2FkQ2hpbGRyZW46ICgpID0+IGltcG9ydCgnQGFsZnJlc2NvL2FjYS1mb2xkZXItcnVsZXMnKS50aGVuKChtKSA9PiBtLkFjYUZvbGRlclJ1bGVzTW9kdWxlKVxuICAgICAgICB9XG4gICAgICBdXG4gICAgfSxcbiAgICB7XG4gICAgICBwYXRoOiAnKionLFxuICAgICAgY29tcG9uZW50OiBHZW5lcmljRXJyb3JDb21wb25lbnRcbiAgICB9XG4gIF0sXG4gIGNhbkFjdGl2YXRlQ2hpbGQ6IFtBdXRoR3VhcmRdXG59O1xuIl19