@alfresco/aca-content 4.0.0-A.2-9984

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