@alfresco/aca-content 5.1.1 → 5.2.0

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 (396) hide show
  1. package/assets/app.extensions.json +9 -0
  2. package/assets/i18n/ar.json +600 -599
  3. package/assets/i18n/cs.json +600 -599
  4. package/assets/i18n/da.json +600 -599
  5. package/assets/i18n/de.json +600 -599
  6. package/assets/i18n/en.json +40 -1
  7. package/assets/i18n/es.json +600 -599
  8. package/assets/i18n/fi.json +600 -599
  9. package/assets/i18n/fr.json +600 -599
  10. package/assets/i18n/it.json +600 -599
  11. package/assets/i18n/ja.json +600 -599
  12. package/assets/i18n/nb.json +600 -599
  13. package/assets/i18n/nl.json +600 -599
  14. package/assets/i18n/pl.json +600 -599
  15. package/assets/i18n/pt-BR.json +600 -599
  16. package/assets/i18n/ru.json +600 -599
  17. package/assets/i18n/sv.json +600 -599
  18. package/assets/i18n/zh-CN.json +600 -599
  19. package/esm2022/about/about.component.mjs +70 -0
  20. package/esm2022/about/aca-about.module.mjs +47 -0
  21. package/esm2022/folder-rules/folder-rules.module.mjs +116 -0
  22. package/esm2022/folder-rules/manage-rules/manage-rules.smart-component.mjs +280 -0
  23. package/esm2022/folder-rules/rule-details/actions/rule-action-list.ui-component.mjs +117 -0
  24. package/esm2022/folder-rules/rule-details/actions/rule-action.ui-component.mjs +359 -0
  25. package/esm2022/folder-rules/rule-details/conditions/rule-composite-condition.ui-component.mjs +171 -0
  26. package/esm2022/folder-rules/rule-details/conditions/rule-simple-condition.ui-component.mjs +237 -0
  27. package/esm2022/folder-rules/rule-details/edit-rule-dialog.ui-component.mjs +80 -0
  28. package/esm2022/folder-rules/rule-details/options/rule-options.ui-component.mjs +129 -0
  29. package/esm2022/folder-rules/rule-details/rule-details.ui-component.mjs +192 -0
  30. package/esm2022/folder-rules/rule-details/triggers/rule-triggers.ui-component.mjs +87 -0
  31. package/esm2022/folder-rules/rule-details/validators/rule-actions.validator.mjs +36 -0
  32. package/esm2022/folder-rules/rule-list/rule-list/rule-list.ui-component.mjs +166 -0
  33. package/esm2022/folder-rules/rule-list/rule-list-grouping/rule-list-grouping.ui-component.mjs +80 -0
  34. package/esm2022/folder-rules/rule-list/rule-list-item/rule-list-item.ui-component.mjs +59 -0
  35. package/esm2022/folder-rules/rule-set-picker/rule-set-picker.smart-component.mjs +125 -0
  36. package/esm2022/folder-rules/services/actions.service.mjs +117 -0
  37. package/esm2022/folder-rules/services/folder-rule-sets.service.mjs +230 -0
  38. package/esm2022/folder-rules/services/folder-rules.service.mjs +195 -0
  39. package/esm2022/lib/aca-content.module.mjs +303 -0
  40. package/esm2022/lib/aca-content.routes.mjs +369 -0
  41. package/esm2022/lib/components/bulk-actions-dropdown/bulk-actions-dropdown.component.mjs +82 -0
  42. package/{esm2020 → esm2022}/lib/components/common/language-picker/language-picker.component.mjs +9 -8
  43. package/esm2022/lib/components/common/location-link/location-link.component.mjs +182 -0
  44. package/{esm2020 → esm2022}/lib/components/common/logout/logout.component.mjs +8 -6
  45. package/esm2022/lib/components/common/toggle-shared/toggle-shared.component.mjs +81 -0
  46. package/esm2022/lib/components/common/user-info/user-info.component.mjs +46 -0
  47. package/esm2022/lib/components/context-menu/base-context-menu.directive.mjs +77 -0
  48. package/esm2022/lib/components/context-menu/context-menu-item.component.mjs +65 -0
  49. package/esm2022/lib/components/context-menu/context-menu-outside-event.directive.mjs +62 -0
  50. package/esm2022/lib/components/context-menu/context-menu-overlay.mjs +33 -0
  51. package/esm2022/lib/components/context-menu/context-menu.component.mjs +84 -0
  52. package/esm2022/lib/components/context-menu/context-menu.service.mjs +127 -0
  53. package/esm2022/lib/components/context-menu/custom-context-menu-actions.token.mjs +26 -0
  54. package/esm2022/lib/components/context-menu/custom-context-menu.component.mjs +79 -0
  55. package/esm2022/lib/components/details/details.component.mjs +154 -0
  56. package/esm2022/lib/components/dl-custom-components/datatable-cell-badges/datatable-cell-badges.component.mjs +75 -0
  57. package/esm2022/lib/components/dl-custom-components/name-column/name-column.component.mjs +106 -0
  58. package/esm2022/lib/components/dl-custom-components/tags-column/tags-column.component.mjs +52 -0
  59. package/esm2022/lib/components/dl-custom-components/thumbnail-column/thumbnail-column.component.mjs +77 -0
  60. package/esm2022/lib/components/favorite-libraries/favorite-libraries.component.mjs +126 -0
  61. package/esm2022/lib/components/favorites/favorites.component.mjs +105 -0
  62. package/esm2022/lib/components/files/files.component.mjs +336 -0
  63. package/esm2022/lib/components/home/home.component.mjs +46 -0
  64. package/esm2022/lib/components/info-drawer/comments-tab/comments-tab.component.mjs +62 -0
  65. package/esm2022/lib/components/info-drawer/info.drawer.module.mjs +74 -0
  66. package/esm2022/lib/components/info-drawer/library-metadata-tab/library-metadata-form.component.mjs +213 -0
  67. package/esm2022/lib/components/info-drawer/library-metadata-tab/library-metadata-tab.component.mjs +47 -0
  68. package/esm2022/lib/components/info-drawer/metadata-tab/metadata-tab.component.mjs +145 -0
  69. package/esm2022/lib/components/info-drawer/versions-tab/versions-tab.component.mjs +107 -0
  70. package/esm2022/lib/components/knowledge-retrieval/search-ai/agents-button/agents-button.component.mjs +135 -0
  71. package/esm2022/lib/components/knowledge-retrieval/search-ai/search-ai-input/search-ai-input.component.mjs +181 -0
  72. package/esm2022/lib/components/knowledge-retrieval/search-ai/search-ai-input-container/search-ai-input-container.component.mjs +77 -0
  73. package/esm2022/lib/components/knowledge-retrieval/search-ai/search-ai-results/search-ai-results.component.mjs +210 -0
  74. package/esm2022/lib/components/libraries/libraries.component.mjs +81 -0
  75. package/esm2022/lib/components/recent-files/recent-files.component.mjs +80 -0
  76. package/esm2022/lib/components/search/search-action-menu/search-action-menu.component.mjs +66 -0
  77. package/esm2022/lib/components/search/search-input/search-input.component.mjs +297 -0
  78. package/esm2022/lib/components/search/search-input-control/search-input-control.component.mjs +94 -0
  79. package/esm2022/lib/components/search/search-libraries-results/search-libraries-query-builder.service.mjs +93 -0
  80. package/esm2022/lib/components/search/search-libraries-results/search-libraries-results.component.mjs +155 -0
  81. package/esm2022/lib/components/search/search-navigation.service.mjs +62 -0
  82. package/esm2022/lib/components/search/search-results/search-results.component.mjs +279 -0
  83. package/esm2022/lib/components/search/search-results-row/search-results-row.component.mjs +149 -0
  84. package/esm2022/lib/components/search/search-save/dialog/delete/saved-search-delete-dialog.component.mjs +82 -0
  85. package/esm2022/lib/components/search/search-save/dialog/edit/saved-search-edit-dialog.component.mjs +116 -0
  86. package/esm2022/lib/components/search/search-save/dialog/save-search-dialog.component.mjs +125 -0
  87. package/esm2022/lib/components/search/search-save/dialog/saved-search-form.interface.mjs +25 -0
  88. package/esm2022/lib/components/search/search-save/dialog/unique-search-name-validator.mjs +45 -0
  89. package/esm2022/lib/components/search/search-save/directive/save-search.directive.mjs +64 -0
  90. package/esm2022/lib/components/search/search-save/list/saved-searches-list-ui.service.mjs +51 -0
  91. package/esm2022/lib/components/search/search-save/list/smart-list/saved-searches-list-schema.mjs +44 -0
  92. package/esm2022/lib/components/search/search-save/list/smart-list/saved-searches-smart-list.component.mjs +50 -0
  93. package/esm2022/lib/components/search/search-save/list/ui-list/saved-searches-list.ui-component.mjs +153 -0
  94. package/esm2022/lib/components/search/search-save/sidenav/save-search-sidenav.component.mjs +94 -0
  95. package/esm2022/lib/components/shared-files/shared-files.component.mjs +85 -0
  96. package/esm2022/lib/components/shared-link-view/shared-link-view.component.mjs +89 -0
  97. package/esm2022/lib/components/sidenav/components/button-menu.component.mjs +66 -0
  98. package/esm2022/lib/components/sidenav/components/expand-menu.component.mjs +73 -0
  99. package/esm2022/lib/components/sidenav/components/sidenav-header.component.mjs +65 -0
  100. package/esm2022/lib/components/sidenav/directives/action.directive.mjs +86 -0
  101. package/esm2022/lib/components/sidenav/directives/active-link.directive.mjs +100 -0
  102. package/esm2022/lib/components/sidenav/directives/expansion-panel.directive.mjs +107 -0
  103. package/esm2022/lib/components/sidenav/directives/menu-panel.directive.mjs +103 -0
  104. package/esm2022/lib/components/sidenav/sidenav.component.mjs +101 -0
  105. package/esm2022/lib/components/sidenav/user-menu/user-menu.component.mjs +57 -0
  106. package/esm2022/lib/components/toolbar/toggle-edit-offline/toggle-edit-offline.component.mjs +143 -0
  107. package/esm2022/lib/components/toolbar/toggle-favorite/toggle-favorite.component.mjs +91 -0
  108. package/esm2022/lib/components/toolbar/toggle-favorite-library/toggle-favorite-library.component.mjs +112 -0
  109. package/esm2022/lib/components/toolbar/toggle-info-drawer/toggle-info-drawer.component.mjs +77 -0
  110. package/esm2022/lib/components/toolbar/toggle-join-library/toggle-join-library-button.component.mjs +107 -0
  111. package/{esm2020 → esm2022}/lib/components/toolbar/toggle-join-library/toggle-join-library-menu.component.mjs +7 -6
  112. package/esm2022/lib/components/toolbar/view-node/view-node.component.mjs +128 -0
  113. package/esm2022/lib/components/trashcan/trashcan.component.mjs +66 -0
  114. package/esm2022/lib/components/upload-files-dialog/upload-files-dialog.component.mjs +55 -0
  115. package/esm2022/lib/components/view-profile/view-profile.component.mjs +200 -0
  116. package/esm2022/lib/dialogs/node-template/create-from-template.dialog.mjs +127 -0
  117. package/esm2022/lib/directives/document-list.directive.mjs +207 -0
  118. package/esm2022/lib/extensions/core.extensions.module.mjs +56 -0
  119. package/esm2022/lib/services/content-management.service.mjs +892 -0
  120. package/esm2022/lib/services/content-url.service.mjs +74 -0
  121. package/esm2022/lib/services/modal-ai.service.mjs +65 -0
  122. package/esm2022/lib/services/node-actions.service.mjs +609 -0
  123. package/esm2022/lib/services/node-template.service.mjs +145 -0
  124. package/esm2022/lib/services/search-ai-navigation.service.mjs +63 -0
  125. package/esm2022/lib/store/app-store.module.mjs +101 -0
  126. package/esm2022/lib/store/effects/app.effects.mjs +46 -0
  127. package/esm2022/lib/store/effects/contextmenu.effects.mjs +65 -0
  128. package/esm2022/lib/store/effects/download.effects.mjs +153 -0
  129. package/esm2022/lib/store/effects/favorite.effects.mjs +72 -0
  130. package/esm2022/lib/store/effects/library.effects.mjs +108 -0
  131. package/esm2022/lib/store/effects/node.effects.mjs +318 -0
  132. package/esm2022/lib/store/effects/search-ai.effects.mjs +54 -0
  133. package/esm2022/lib/store/effects/search.effects.mjs +52 -0
  134. package/esm2022/lib/store/effects/template.effects.mjs +116 -0
  135. package/esm2022/lib/store/effects/upload.effects.mjs +166 -0
  136. package/esm2022/lib/store/effects/viewer.effects.mjs +169 -0
  137. package/esm2022/lib/utils/aca-search-utils.mjs +129 -0
  138. package/esm2022/ms-office/actions/aos.actions.mjs +32 -0
  139. package/esm2022/ms-office/aos-extension.module.mjs +53 -0
  140. package/esm2022/ms-office/aos-extension.service.mjs +136 -0
  141. package/esm2022/ms-office/effects/aos.effects.mjs +45 -0
  142. package/esm2022/public-api.mjs +33 -0
  143. package/esm2022/viewer/lib/components/preview/preview.component.mjs +246 -0
  144. package/esm2022/viewer/lib/components/viewer/viewer.component.mjs +261 -0
  145. package/esm2022/viewer/lib/services/viewer.service.mjs +229 -0
  146. package/esm2022/viewer/lib/viewer.module.mjs +53 -0
  147. package/{fesm2015 → fesm2022}/alfresco-aca-content-about.mjs +17 -19
  148. package/fesm2022/alfresco-aca-content-about.mjs.map +1 -0
  149. package/{fesm2020 → fesm2022}/alfresco-aca-content-folder-rules.mjs +357 -316
  150. package/fesm2022/alfresco-aca-content-folder-rules.mjs.map +1 -0
  151. package/{fesm2020 → fesm2022}/alfresco-aca-content-ms-office.mjs +28 -26
  152. package/fesm2022/alfresco-aca-content-ms-office.mjs.map +1 -0
  153. package/{fesm2020 → fesm2022}/alfresco-aca-content-viewer.mjs +95 -64
  154. package/fesm2022/alfresco-aca-content-viewer.mjs.map +1 -0
  155. package/fesm2022/alfresco-aca-content.mjs +11091 -0
  156. package/fesm2022/alfresco-aca-content.mjs.map +1 -0
  157. package/folder-rules/rule-details/actions/rule-action-list.ui-component.d.ts +1 -1
  158. package/folder-rules/rule-details/actions/rule-action.ui-component.d.ts +1 -1
  159. package/folder-rules/rule-details/conditions/rule-composite-condition.ui-component.d.ts +1 -1
  160. package/folder-rules/rule-details/conditions/rule-simple-condition.ui-component.d.ts +1 -1
  161. package/folder-rules/rule-details/options/rule-options.ui-component.d.ts +1 -1
  162. package/folder-rules/rule-details/rule-details.ui-component.d.ts +1 -1
  163. package/folder-rules/rule-list/rule-list/rule-list.ui-component.d.ts +1 -1
  164. package/folder-rules/rule-list/rule-list-grouping/rule-list-grouping.ui-component.d.ts +1 -1
  165. package/folder-rules/rule-list/rule-list-item/rule-list-item.ui-component.d.ts +1 -1
  166. package/folder-rules/services/folder-rule-sets.service.d.ts +4 -4
  167. package/folder-rules/services/folder-rules.service.d.ts +1 -1
  168. package/lib/components/bulk-actions-dropdown/bulk-actions-dropdown.component.d.ts +5 -10
  169. package/lib/components/common/location-link/location-link.component.d.ts +1 -1
  170. package/lib/components/common/toggle-shared/toggle-shared.component.d.ts +1 -1
  171. package/lib/components/context-menu/base-context-menu.directive.d.ts +20 -0
  172. package/lib/components/context-menu/context-menu-item.component.d.ts +1 -1
  173. package/lib/components/context-menu/context-menu-outside-event.directive.d.ts +1 -1
  174. package/lib/components/context-menu/context-menu.component.d.ts +4 -15
  175. package/lib/components/context-menu/context-menu.service.d.ts +4 -1
  176. package/lib/components/{knowledge-retrieval/search-ai/search-ai-utils.d.ts → context-menu/custom-context-menu-actions.token.d.ts} +2 -2
  177. package/lib/components/context-menu/custom-context-menu.component.d.ts +36 -0
  178. package/lib/components/details/details.component.d.ts +1 -1
  179. package/lib/components/dl-custom-components/datatable-cell-badges/datatable-cell-badges.component.d.ts +1 -1
  180. package/lib/components/dl-custom-components/tags-column/tags-column.component.d.ts +1 -1
  181. package/lib/components/dl-custom-components/thumbnail-column/thumbnail-column.component.d.ts +1 -1
  182. package/lib/components/info-drawer/comments-tab/comments-tab.component.d.ts +1 -1
  183. package/lib/components/info-drawer/library-metadata-tab/library-metadata-form.component.d.ts +1 -1
  184. package/lib/components/info-drawer/library-metadata-tab/library-metadata-tab.component.d.ts +1 -1
  185. package/lib/components/info-drawer/metadata-tab/metadata-tab.component.d.ts +1 -1
  186. package/lib/components/info-drawer/versions-tab/versions-tab.component.d.ts +1 -1
  187. package/lib/components/knowledge-retrieval/search-ai/agents-button/agents-button.component.d.ts +1 -2
  188. package/lib/components/knowledge-retrieval/search-ai/search-ai-input/search-ai-input.component.d.ts +4 -5
  189. package/lib/components/knowledge-retrieval/search-ai/search-ai-input-container/search-ai-input-container.component.d.ts +8 -8
  190. package/lib/components/knowledge-retrieval/search-ai/search-ai-results/search-ai-results.component.d.ts +2 -3
  191. package/lib/components/search/search-input/search-input.component.d.ts +12 -14
  192. package/lib/components/search/search-input-control/search-input-control.component.d.ts +1 -1
  193. package/lib/components/search/search-libraries-results/search-libraries-results.component.d.ts +0 -1
  194. package/lib/components/search/search-results/search-results.component.d.ts +15 -9
  195. package/lib/components/search/search-results-row/search-results-row.component.d.ts +1 -1
  196. package/lib/components/search/search-save/dialog/delete/saved-search-delete-dialog.component.d.ts +16 -0
  197. package/lib/components/search/search-save/dialog/edit/saved-search-edit-dialog.component.d.ts +22 -0
  198. package/lib/components/search/search-save/dialog/save-search-dialog.component.d.ts +23 -0
  199. package/lib/components/search/search-save/dialog/saved-search-form.interface.d.ts +28 -0
  200. package/lib/components/search/search-save/dialog/unique-search-name-validator.d.ts +34 -0
  201. package/lib/components/search/search-save/directive/save-search.directive.d.ts +13 -0
  202. package/lib/components/search/search-save/list/saved-searches-list-ui.service.d.ts +9 -0
  203. package/lib/components/search/search-save/list/smart-list/saved-searches-list-schema.d.ts +33 -0
  204. package/lib/components/search/search-save/list/smart-list/saved-searches-smart-list.component.d.ts +13 -0
  205. package/lib/components/search/search-save/list/ui-list/saved-searches-list.ui-component.d.ts +66 -0
  206. package/lib/components/search/search-save/sidenav/save-search-sidenav.component.d.ts +44 -0
  207. package/lib/components/sidenav/components/button-menu.component.d.ts +1 -1
  208. package/lib/components/sidenav/components/expand-menu.component.d.ts +3 -2
  209. package/lib/components/sidenav/directives/action.directive.d.ts +28 -1
  210. package/lib/components/sidenav/directives/active-link.directive.d.ts +2 -2
  211. package/lib/components/sidenav/directives/expansion-panel.directive.d.ts +1 -1
  212. package/lib/components/sidenav/directives/menu-panel.directive.d.ts +1 -1
  213. package/lib/components/sidenav/sidenav.component.d.ts +4 -3
  214. package/lib/components/sidenav/user-menu/user-menu.component.d.ts +1 -1
  215. package/lib/components/toolbar/toggle-favorite/toggle-favorite.component.d.ts +1 -1
  216. package/lib/components/toolbar/view-node/view-node.component.d.ts +1 -1
  217. package/lib/services/search-ai-navigation.service.d.ts +4 -2
  218. package/lib/store/effects/app.effects.d.ts +2 -3
  219. package/lib/store/effects/contextmenu.effects.d.ts +3 -3
  220. package/lib/store/effects/download.effects.d.ts +0 -30
  221. package/lib/store/effects/favorite.effects.d.ts +0 -28
  222. package/lib/store/effects/library.effects.d.ts +2 -7
  223. package/lib/store/effects/node.effects.d.ts +7 -38
  224. package/lib/store/effects/search-ai.effects.d.ts +0 -4
  225. package/lib/store/effects/search.effects.d.ts +3 -30
  226. package/lib/store/effects/template.effects.d.ts +5 -7
  227. package/lib/store/effects/upload.effects.d.ts +8 -32
  228. package/lib/store/effects/viewer.effects.d.ts +0 -29
  229. package/lib/utils/aca-search-utils.d.ts +67 -0
  230. package/ms-office/effects/aos.effects.d.ts +0 -3
  231. package/package.json +21 -35
  232. package/public-api.d.ts +1 -0
  233. package/ui/overrides/adf-pagination.theme.scss +0 -4
  234. package/ui/theme.scss +9 -4
  235. package/assets/images/agent-avatar-blue.png +0 -0
  236. package/assets/images/agent-avatar-gold.png +0 -0
  237. package/assets/images/agent-avatar-pink.png +0 -0
  238. package/esm2020/about/about.component.mjs +0 -71
  239. package/esm2020/about/aca-about.module.mjs +0 -46
  240. package/esm2020/folder-rules/folder-rules.module.mjs +0 -115
  241. package/esm2020/folder-rules/manage-rules/manage-rules.smart-component.mjs +0 -261
  242. package/esm2020/folder-rules/rule-details/actions/rule-action-list.ui-component.mjs +0 -117
  243. package/esm2020/folder-rules/rule-details/actions/rule-action.ui-component.mjs +0 -351
  244. package/esm2020/folder-rules/rule-details/conditions/rule-composite-condition.ui-component.mjs +0 -172
  245. package/esm2020/folder-rules/rule-details/conditions/rule-simple-condition.ui-component.mjs +0 -234
  246. package/esm2020/folder-rules/rule-details/edit-rule-dialog.ui-component.mjs +0 -74
  247. package/esm2020/folder-rules/rule-details/options/rule-options.ui-component.mjs +0 -129
  248. package/esm2020/folder-rules/rule-details/rule-details.ui-component.mjs +0 -185
  249. package/esm2020/folder-rules/rule-details/triggers/rule-triggers.ui-component.mjs +0 -88
  250. package/esm2020/folder-rules/rule-details/validators/rule-actions.validator.mjs +0 -37
  251. package/esm2020/folder-rules/rule-list/rule-list/rule-list.ui-component.mjs +0 -164
  252. package/esm2020/folder-rules/rule-list/rule-list-grouping/rule-list-grouping.ui-component.mjs +0 -81
  253. package/esm2020/folder-rules/rule-list/rule-list-item/rule-list-item.ui-component.mjs +0 -58
  254. package/esm2020/folder-rules/rule-set-picker/rule-set-picker.smart-component.mjs +0 -120
  255. package/esm2020/folder-rules/services/actions.service.mjs +0 -114
  256. package/esm2020/folder-rules/services/folder-rule-sets.service.mjs +0 -225
  257. package/esm2020/folder-rules/services/folder-rules.service.mjs +0 -193
  258. package/esm2020/lib/aca-content.module.mjs +0 -299
  259. package/esm2020/lib/aca-content.routes.mjs +0 -359
  260. package/esm2020/lib/components/bulk-actions-dropdown/bulk-actions-dropdown.component.mjs +0 -83
  261. package/esm2020/lib/components/common/location-link/location-link.component.mjs +0 -180
  262. package/esm2020/lib/components/common/toggle-shared/toggle-shared.component.mjs +0 -76
  263. package/esm2020/lib/components/common/user-info/user-info.component.mjs +0 -47
  264. package/esm2020/lib/components/context-menu/context-menu-item.component.mjs +0 -62
  265. package/esm2020/lib/components/context-menu/context-menu-outside-event.directive.mjs +0 -63
  266. package/esm2020/lib/components/context-menu/context-menu-overlay.mjs +0 -32
  267. package/esm2020/lib/components/context-menu/context-menu.component.mjs +0 -114
  268. package/esm2020/lib/components/context-menu/context-menu.service.mjs +0 -99
  269. package/esm2020/lib/components/details/details.component.mjs +0 -147
  270. package/esm2020/lib/components/dl-custom-components/datatable-cell-badges/datatable-cell-badges.component.mjs +0 -71
  271. package/esm2020/lib/components/dl-custom-components/name-column/name-column.component.mjs +0 -101
  272. package/esm2020/lib/components/dl-custom-components/tags-column/tags-column.component.mjs +0 -48
  273. package/esm2020/lib/components/dl-custom-components/thumbnail-column/thumbnail-column.component.mjs +0 -75
  274. package/esm2020/lib/components/favorite-libraries/favorite-libraries.component.mjs +0 -120
  275. package/esm2020/lib/components/favorites/favorites.component.mjs +0 -103
  276. package/esm2020/lib/components/files/files.component.mjs +0 -330
  277. package/esm2020/lib/components/home/home.component.mjs +0 -47
  278. package/esm2020/lib/components/info-drawer/comments-tab/comments-tab.component.mjs +0 -59
  279. package/esm2020/lib/components/info-drawer/info.drawer.module.mjs +0 -73
  280. package/esm2020/lib/components/info-drawer/library-metadata-tab/library-metadata-form.component.mjs +0 -206
  281. package/esm2020/lib/components/info-drawer/library-metadata-tab/library-metadata-tab.component.mjs +0 -45
  282. package/esm2020/lib/components/info-drawer/metadata-tab/metadata-tab.component.mjs +0 -134
  283. package/esm2020/lib/components/info-drawer/versions-tab/versions-tab.component.mjs +0 -95
  284. package/esm2020/lib/components/knowledge-retrieval/search-ai/agents-button/agents-button.component.mjs +0 -129
  285. package/esm2020/lib/components/knowledge-retrieval/search-ai/search-ai-input/search-ai-input.component.mjs +0 -171
  286. package/esm2020/lib/components/knowledge-retrieval/search-ai/search-ai-input-container/search-ai-input-container.component.mjs +0 -82
  287. package/esm2020/lib/components/knowledge-retrieval/search-ai/search-ai-results/search-ai-results.component.mjs +0 -199
  288. package/esm2020/lib/components/knowledge-retrieval/search-ai/search-ai-utils.mjs +0 -33
  289. package/esm2020/lib/components/libraries/libraries.component.mjs +0 -79
  290. package/esm2020/lib/components/recent-files/recent-files.component.mjs +0 -82
  291. package/esm2020/lib/components/search/search-action-menu/search-action-menu.component.mjs +0 -64
  292. package/esm2020/lib/components/search/search-input/search-input.component.mjs +0 -301
  293. package/esm2020/lib/components/search/search-input-control/search-input-control.component.mjs +0 -94
  294. package/esm2020/lib/components/search/search-libraries-results/search-libraries-query-builder.service.mjs +0 -90
  295. package/esm2020/lib/components/search/search-libraries-results/search-libraries-results.component.mjs +0 -153
  296. package/esm2020/lib/components/search/search-navigation.service.mjs +0 -60
  297. package/esm2020/lib/components/search/search-results/search-results.component.mjs +0 -255
  298. package/esm2020/lib/components/search/search-results-row/search-results-row.component.mjs +0 -142
  299. package/esm2020/lib/components/shared-files/shared-files.component.mjs +0 -83
  300. package/esm2020/lib/components/shared-link-view/shared-link-view.component.mjs +0 -82
  301. package/esm2020/lib/components/sidenav/components/button-menu.component.mjs +0 -62
  302. package/esm2020/lib/components/sidenav/components/expand-menu.component.mjs +0 -67
  303. package/esm2020/lib/components/sidenav/components/sidenav-header.component.mjs +0 -66
  304. package/esm2020/lib/components/sidenav/directives/action.directive.mjs +0 -75
  305. package/esm2020/lib/components/sidenav/directives/active-link.directive.mjs +0 -93
  306. package/esm2020/lib/components/sidenav/directives/expansion-panel.directive.mjs +0 -102
  307. package/esm2020/lib/components/sidenav/directives/menu-panel.directive.mjs +0 -99
  308. package/esm2020/lib/components/sidenav/sidenav.component.mjs +0 -89
  309. package/esm2020/lib/components/sidenav/user-menu/user-menu.component.mjs +0 -56
  310. package/esm2020/lib/components/toolbar/toggle-edit-offline/toggle-edit-offline.component.mjs +0 -137
  311. package/esm2020/lib/components/toolbar/toggle-favorite/toggle-favorite.component.mjs +0 -86
  312. package/esm2020/lib/components/toolbar/toggle-favorite-library/toggle-favorite-library.component.mjs +0 -107
  313. package/esm2020/lib/components/toolbar/toggle-info-drawer/toggle-info-drawer.component.mjs +0 -74
  314. package/esm2020/lib/components/toolbar/toggle-join-library/toggle-join-library-button.component.mjs +0 -105
  315. package/esm2020/lib/components/toolbar/view-node/view-node.component.mjs +0 -122
  316. package/esm2020/lib/components/trashcan/trashcan.component.mjs +0 -68
  317. package/esm2020/lib/components/upload-files-dialog/upload-files-dialog.component.mjs +0 -52
  318. package/esm2020/lib/components/view-profile/view-profile.component.mjs +0 -193
  319. package/esm2020/lib/dialogs/node-template/create-from-template.dialog.mjs +0 -120
  320. package/esm2020/lib/directives/document-list.directive.mjs +0 -199
  321. package/esm2020/lib/extensions/core.extensions.module.mjs +0 -55
  322. package/esm2020/lib/services/content-management.service.mjs +0 -873
  323. package/esm2020/lib/services/content-url.service.mjs +0 -71
  324. package/esm2020/lib/services/modal-ai.service.mjs +0 -66
  325. package/esm2020/lib/services/node-actions.service.mjs +0 -600
  326. package/esm2020/lib/services/node-template.service.mjs +0 -144
  327. package/esm2020/lib/services/search-ai-navigation.service.mjs +0 -52
  328. package/esm2020/lib/store/app-store.module.mjs +0 -102
  329. package/esm2020/lib/store/effects/app.effects.mjs +0 -49
  330. package/esm2020/lib/store/effects/contextmenu.effects.mjs +0 -55
  331. package/esm2020/lib/store/effects/download.effects.mjs +0 -159
  332. package/esm2020/lib/store/effects/favorite.effects.mjs +0 -76
  333. package/esm2020/lib/store/effects/library.effects.mjs +0 -113
  334. package/esm2020/lib/store/effects/node.effects.mjs +0 -325
  335. package/esm2020/lib/store/effects/search-ai.effects.mjs +0 -57
  336. package/esm2020/lib/store/effects/search.effects.mjs +0 -60
  337. package/esm2020/lib/store/effects/template.effects.mjs +0 -121
  338. package/esm2020/lib/store/effects/upload.effects.mjs +0 -166
  339. package/esm2020/lib/store/effects/viewer.effects.mjs +0 -175
  340. package/esm2020/ms-office/actions/aos.actions.mjs +0 -31
  341. package/esm2020/ms-office/aos-extension.module.mjs +0 -52
  342. package/esm2020/ms-office/aos-extension.service.mjs +0 -132
  343. package/esm2020/ms-office/effects/aos.effects.mjs +0 -48
  344. package/esm2020/public-api.mjs +0 -32
  345. package/esm2020/viewer/lib/components/preview/preview.component.mjs +0 -236
  346. package/esm2020/viewer/lib/components/viewer/viewer.component.mjs +0 -240
  347. package/esm2020/viewer/lib/services/viewer.service.mjs +0 -226
  348. package/esm2020/viewer/lib/viewer.module.mjs +0 -52
  349. package/fesm2015/alfresco-aca-content-about.mjs.map +0 -1
  350. package/fesm2015/alfresco-aca-content-folder-rules.mjs +0 -2662
  351. package/fesm2015/alfresco-aca-content-folder-rules.mjs.map +0 -1
  352. package/fesm2015/alfresco-aca-content-ms-office.mjs +0 -256
  353. package/fesm2015/alfresco-aca-content-ms-office.mjs.map +0 -1
  354. package/fesm2015/alfresco-aca-content-viewer.mjs +0 -700
  355. package/fesm2015/alfresco-aca-content-viewer.mjs.map +0 -1
  356. package/fesm2015/alfresco-aca-content.mjs +0 -9835
  357. package/fesm2015/alfresco-aca-content.mjs.map +0 -1
  358. package/fesm2020/alfresco-aca-content-about.mjs +0 -193
  359. package/fesm2020/alfresco-aca-content-about.mjs.map +0 -1
  360. package/fesm2020/alfresco-aca-content-folder-rules.mjs.map +0 -1
  361. package/fesm2020/alfresco-aca-content-ms-office.mjs.map +0 -1
  362. package/fesm2020/alfresco-aca-content-viewer.mjs.map +0 -1
  363. package/fesm2020/alfresco-aca-content.mjs +0 -9934
  364. package/fesm2020/alfresco-aca-content.mjs.map +0 -1
  365. /package/{esm2020 → esm2022}/about/alfresco-aca-content-about.mjs +0 -0
  366. /package/{esm2020 → esm2022}/about/dev-mode.tokens.mjs +0 -0
  367. /package/{esm2020 → esm2022}/about/package-json.token.mjs +0 -0
  368. /package/{esm2020 → esm2022}/about/public-api.mjs +0 -0
  369. /package/{esm2020 → esm2022}/alfresco-aca-content.mjs +0 -0
  370. /package/{esm2020 → esm2022}/folder-rules/alfresco-aca-content-folder-rules.mjs +0 -0
  371. /package/{esm2020 → esm2022}/folder-rules/folder-rules.rules.mjs +0 -0
  372. /package/{esm2020 → esm2022}/folder-rules/model/action-parameter-constraint.model.mjs +0 -0
  373. /package/{esm2020 → esm2022}/folder-rules/model/rule-action.model.mjs +0 -0
  374. /package/{esm2020 → esm2022}/folder-rules/model/rule-composite-condition.model.mjs +0 -0
  375. /package/{esm2020 → esm2022}/folder-rules/model/rule-grouping-item.model.mjs +0 -0
  376. /package/{esm2020 → esm2022}/folder-rules/model/rule-set.model.mjs +0 -0
  377. /package/{esm2020 → esm2022}/folder-rules/model/rule-simple-condition.model.mjs +0 -0
  378. /package/{esm2020 → esm2022}/folder-rules/model/rule.model.mjs +0 -0
  379. /package/{esm2020 → esm2022}/folder-rules/public-api.mjs +0 -0
  380. /package/{esm2020 → esm2022}/folder-rules/rule-details/conditions/rule-condition-comparators.mjs +0 -0
  381. /package/{esm2020 → esm2022}/folder-rules/rule-details/conditions/rule-condition-fields.mjs +0 -0
  382. /package/{esm2020 → esm2022}/folder-rules/rule-details/validators/rule-composite-condition.validator.mjs +0 -0
  383. /package/{esm2020 → esm2022}/lib/components/common/index.mjs +0 -0
  384. /package/{esm2020 → esm2022}/lib/components/context-menu/direction.token.mjs +0 -0
  385. /package/{esm2020 → esm2022}/lib/components/context-menu/interfaces.mjs +0 -0
  386. /package/{esm2020 → esm2022}/lib/components/search/index.mjs +0 -0
  387. /package/{esm2020 → esm2022}/lib/components/sidenav/index.mjs +0 -0
  388. /package/{esm2020 → esm2022}/lib/components/toolbar/index.mjs +0 -0
  389. /package/{esm2020 → esm2022}/lib/components/view-profile/view-profile.guard.mjs +0 -0
  390. /package/{esm2020 → esm2022}/lib/store/effects.mjs +0 -0
  391. /package/{esm2020 → esm2022}/lib/store/initial-state.mjs +0 -0
  392. /package/{esm2020 → esm2022}/lib/store/reducers/app.reducer.mjs +0 -0
  393. /package/{esm2020 → esm2022}/ms-office/alfresco-aca-content-ms-office.mjs +0 -0
  394. /package/{esm2020 → esm2022}/ms-office/public-api.mjs +0 -0
  395. /package/{esm2020 → esm2022}/viewer/alfresco-aca-content-viewer.mjs +0 -0
  396. /package/{esm2020 → esm2022}/viewer/public-api.mjs +0 -0
@@ -1,359 +0,0 @@
1
- /*!
2
- * Copyright © 2005-2024 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, PluginEnabledGuard } from '@alfresco/aca-shared';
30
- import { AuthGuard, UnsavedChangesGuard } 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
- import { SearchAiResultsComponent } from './components/knowledge-retrieval/search-ai/search-ai-results/search-ai-results.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: ShellLayoutComponent,
58
- children: [
59
- {
60
- path: ':nodeId',
61
- outlet: 'viewer',
62
- children: [
63
- {
64
- path: '',
65
- loadChildren: () => import('@alfresco/aca-content/viewer').then((m) => m.AcaViewerModule)
66
- }
67
- ]
68
- }
69
- ]
70
- }
71
- ];
72
- const createViewRoutes = (navigateSource, additionalData = {}) => [
73
- {
74
- path: 'view/:nodeId',
75
- outlet: 'viewer',
76
- children: [
77
- {
78
- path: '',
79
- data: {
80
- navigateSource
81
- },
82
- loadChildren: () => import('@alfresco/aca-content/viewer').then((m) => m.AcaViewerModule)
83
- }
84
- ],
85
- ...additionalData
86
- },
87
- {
88
- path: 'view/:nodeId/:versionId',
89
- outlet: 'viewer',
90
- children: [
91
- {
92
- path: '',
93
- data: {
94
- navigateSource
95
- },
96
- loadChildren: () => import('@alfresco/aca-content/viewer').then((m) => m.AcaViewerModule)
97
- }
98
- ]
99
- }
100
- ];
101
- export const CONTENT_LAYOUT_ROUTES = {
102
- path: '',
103
- canActivate: [ExtensionsDataLoaderGuard],
104
- children: [
105
- {
106
- path: 'profile',
107
- canActivate: [ViewProfileRuleGuard],
108
- component: ViewProfileComponent
109
- },
110
- {
111
- path: '',
112
- component: HomeComponent
113
- },
114
- {
115
- path: 'personal-files',
116
- children: [
117
- {
118
- path: '',
119
- component: FilesComponent,
120
- data: {
121
- sortingPreferenceKey: 'personal-files',
122
- title: 'APP.BROWSE.PERSONAL.TITLE',
123
- defaultNodeId: '-my-'
124
- }
125
- },
126
- {
127
- path: 'details/:nodeId',
128
- children: [
129
- {
130
- path: '',
131
- component: DetailsComponent,
132
- data: {
133
- navigateSource: 'personal-files'
134
- }
135
- },
136
- {
137
- path: ':activeTab',
138
- component: DetailsComponent,
139
- data: {
140
- title: 'APP.BROWSE.PERSONAL.PERMISSIONS.TITLE',
141
- navigateSource: 'personal-files'
142
- }
143
- }
144
- ]
145
- },
146
- ...createViewRoutes('personal-files')
147
- ]
148
- },
149
- {
150
- path: 'personal-files/:folderId',
151
- children: [
152
- {
153
- path: '',
154
- component: FilesComponent,
155
- data: {
156
- title: 'APP.BROWSE.PERSONAL.TITLE',
157
- sortingPreferenceKey: 'personal-files'
158
- }
159
- },
160
- ...createViewRoutes('personal-files')
161
- ]
162
- },
163
- {
164
- path: 'libraries',
165
- children: [
166
- {
167
- path: '',
168
- component: LibrariesComponent,
169
- data: {
170
- title: 'APP.BROWSE.LIBRARIES.MENU.MY_LIBRARIES.TITLE',
171
- sortingPreferenceKey: 'libraries'
172
- }
173
- }
174
- ]
175
- },
176
- {
177
- path: 'libraries/:folderId',
178
- children: [
179
- {
180
- path: '',
181
- component: FilesComponent,
182
- data: {
183
- title: 'APP.BROWSE.LIBRARIES.MENU.MY_LIBRARIES.TITLE',
184
- sortingPreferenceKey: 'libraries-files'
185
- }
186
- },
187
- ...createViewRoutes('libraries', {
188
- data: {
189
- navigateSource: 'libraries'
190
- }
191
- })
192
- ]
193
- },
194
- {
195
- path: 'favorite',
196
- children: [
197
- {
198
- path: '',
199
- pathMatch: 'full',
200
- redirectTo: 'libraries'
201
- },
202
- {
203
- path: 'libraries',
204
- component: FavoriteLibrariesComponent,
205
- data: {
206
- title: 'APP.BROWSE.LIBRARIES.MENU.FAVORITE_LIBRARIES.TITLE',
207
- sortingPreferenceKey: 'favorite-libraries'
208
- }
209
- }
210
- ]
211
- },
212
- {
213
- path: 'favorite/libraries/:folderId',
214
- children: [
215
- {
216
- path: '',
217
- component: FilesComponent,
218
- data: {
219
- title: 'APP.BROWSE.LIBRARIES.MENU.FAVORITE_LIBRARIES.TITLE',
220
- sortingPreferenceKey: 'libraries-files'
221
- }
222
- },
223
- ...createViewRoutes('libraries')
224
- ]
225
- },
226
- {
227
- path: 'favorites',
228
- data: {
229
- sortingPreferenceKey: 'favorites'
230
- },
231
- children: [
232
- {
233
- path: '',
234
- component: FavoritesComponent,
235
- data: {
236
- title: 'APP.BROWSE.FAVORITES.TITLE',
237
- sortingPreferenceKey: 'favorites'
238
- }
239
- },
240
- ...createViewRoutes('favorites')
241
- ]
242
- },
243
- {
244
- path: 'recent-files',
245
- data: {
246
- sortingPreferenceKey: 'recent-files'
247
- },
248
- children: [
249
- {
250
- path: '',
251
- component: RecentFilesComponent,
252
- data: {
253
- title: 'APP.BROWSE.RECENT.TITLE'
254
- }
255
- },
256
- ...createViewRoutes('recent-files')
257
- ]
258
- },
259
- {
260
- path: 'shared',
261
- children: [
262
- {
263
- path: '',
264
- data: {
265
- title: 'APP.BROWSE.SHARED.TITLE',
266
- sortingPreferenceKey: 'shared-files'
267
- },
268
- component: SharedFilesComponent
269
- },
270
- ...createViewRoutes('shared')
271
- ],
272
- canActivateChild: [AppSharedRuleGuard],
273
- canActivate: [AppSharedRuleGuard]
274
- },
275
- {
276
- path: 'trashcan',
277
- children: [
278
- {
279
- path: '',
280
- component: TrashcanComponent,
281
- data: {
282
- title: 'APP.BROWSE.TRASHCAN.TITLE',
283
- sortingPreferenceKey: 'trashcan'
284
- }
285
- }
286
- ]
287
- },
288
- {
289
- path: 'search',
290
- children: [
291
- {
292
- path: '',
293
- component: SearchResultsComponent,
294
- data: {
295
- title: 'APP.BROWSE.SEARCH.TITLE',
296
- sortingPreferenceKey: 'search'
297
- }
298
- },
299
- ...createViewRoutes('search')
300
- ]
301
- },
302
- {
303
- path: 'search-libraries',
304
- children: [
305
- {
306
- path: '',
307
- component: SearchLibrariesResultsComponent,
308
- data: {
309
- title: 'APP.BROWSE.SEARCH.TITLE',
310
- sortingPreferenceKey: 'search-libraries'
311
- }
312
- },
313
- {
314
- path: 'view/:nodeId',
315
- outlet: 'viewer',
316
- children: [
317
- {
318
- path: '',
319
- data: {
320
- navigateSource: 'search'
321
- },
322
- loadChildren: () => import('@alfresco/aca-content/viewer').then((m) => m.AcaViewerModule)
323
- }
324
- ]
325
- }
326
- ]
327
- },
328
- {
329
- path: 'nodes/:nodeId',
330
- children: [
331
- {
332
- path: '',
333
- loadChildren: () => import('@alfresco/aca-content/folder-rules').then((m) => m.AcaFolderRulesModule)
334
- }
335
- ]
336
- },
337
- {
338
- path: 'knowledge-retrieval',
339
- canDeactivate: [UnsavedChangesGuard],
340
- canActivate: [PluginEnabledGuard],
341
- data: {
342
- plugin: 'plugins.knowledgeRetrievalEnabled'
343
- },
344
- children: [
345
- {
346
- path: '',
347
- component: SearchAiResultsComponent
348
- },
349
- ...createViewRoutes('knowledge-retrieval')
350
- ]
351
- },
352
- {
353
- path: '**',
354
- component: GenericErrorComponent
355
- }
356
- ],
357
- canActivateChild: [AuthGuard]
358
- };
359
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNhLWNvbnRlbnQucm91dGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWNhLWNvbnRlbnQvc3JjL2xpYi9hY2EtY29udGVudC5yb3V0ZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FzQkc7QUFFSCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDcEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDaEYsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sOERBQThELENBQUM7QUFDMUcsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNkRBQTZELENBQUM7QUFDckcsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0saUZBQWlGLENBQUM7QUFDbEksT0FBTyxFQUFFLGtCQUFrQixFQUFFLHFCQUFxQixFQUFrQix5QkFBeUIsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2hKLE9BQU8sRUFBRSxTQUFTLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNwRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUNoRixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUN4RixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUN4RixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDakUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDeEYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFFcEYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0s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QUUsUUFBUTtvQkFDaEIsUUFBUSxFQUFFO3dCQUNSOzRCQUNFLElBQUksRUFBRSxFQUFFOzRCQUNSLElBQUksRUFBRTtnQ0FDSixjQUFjLEVBQUUsUUFBUTs2QkFDekI7NEJBQ0QsWUFBWSxFQUFFLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyw4QkFBOEIsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLGVBQWUsQ0FBQzt5QkFDMUY7cUJBQ0Y7aUJBQ0Y7YUFDRjtTQUNGO1FBQ0Q7WUFDRSxJQUFJLEVBQUUsZUFBZTtZQUNyQixRQUFRLEVBQUU7Z0JBQ1I7b0JBQ0UsSUFBSSxFQUFFLEVBQUU7b0JBQ1IsWUFBWSxFQUFFLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxvQ0FBb0MsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLG9CQUFvQixDQUFDO2lCQUNyRzthQUNGO1NBQ0Y7UUFDRDtZQUNFLElBQUksRUFBRSxxQkFBcUI7WUFDM0IsYUFBYSxFQUFFLENBQUMsbUJBQW1CLENBQUM7WUFDcEMsV0FBVyxFQUFFLENBQUMsa0JBQWtCLENBQUM7WUFDakMsSUFBSSxFQUFFO2dCQUNKLE1BQU0sRUFBRSxtQ0FBbUM7YUFDNUM7WUFDRCxRQUFRLEVBQUU7Z0JBQ1I7b0JBQ0UsSUFBSSxFQUFFLEVBQUU7b0JBQ1IsU0FBUyxFQUFFLHdCQUF3QjtpQkFDcEM7Z0JBQ0QsR0FBRyxnQkFBZ0IsQ0FBQyxxQkFBcUIsQ0FBQzthQUMzQztTQUNGO1FBQ0Q7WUFDRSxJQUFJLEVBQUUsSUFBSTtZQUNWLFNBQVMsRUFBRSxxQkFBcUI7U0FDakM7S0FDRjtJQUNELGdCQUFnQixFQUFFLENBQUMsU0FBUyxDQUFDO0NBQzlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIENvcHlyaWdodCDCqSAyMDA1LTIwMjQgSHlsYW5kIFNvZnR3YXJlLCBJbmMuIGFuZCBpdHMgYWZmaWxpYXRlcy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqXG4gKiBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb25cbiAqXG4gKiBUaGlzIGZpbGUgaXMgcGFydCBvZiB0aGUgQWxmcmVzY28gRXhhbXBsZSBDb250ZW50IEFwcGxpY2F0aW9uLlxuICogSWYgdGhlIHNvZnR3YXJlIHdhcyBwdXJjaGFzZWQgdW5kZXIgYSBwYWlkIEFsZnJlc2NvIGxpY2Vuc2UsIHRoZSB0ZXJtcyBvZlxuICogdGhlIHBhaWQgbGljZW5zZSBhZ3JlZW1lbnQgd2lsbCBwcmV2YWlsLiBPdGhlcndpc2UsIHRoZSBzb2Z0d2FyZSBpc1xuICogcHJvdmlkZWQgdW5kZXIgdGhlIGZvbGxvd2luZyBvcGVuIHNvdXJjZSBsaWNlbnNlIHRlcm1zOlxuICpcbiAqIFRoZSBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb24gaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeVxuICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5XG4gKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvclxuICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi5cbiAqXG4gKiBUaGUgQWxmcmVzY28gRXhhbXBsZSBDb250ZW50IEFwcGxpY2F0aW9uIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsXG4gKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZlxuICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiBTZWUgdGhlXG4gKiBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy5cbiAqXG4gKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2VcbiAqIGZyb20gSHlsYW5kIFNvZnR3YXJlLiBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uXG4gKi9cblxuaW1wb3J0IHsgRmlsZXNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvZmlsZXMvZmlsZXMuY29tcG9uZW50JztcbmltcG9ydCB7IExpYnJhcmllc0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9saWJyYXJpZXMvbGlicmFyaWVzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGYXZvcml0ZUxpYnJhcmllc0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9mYXZvcml0ZS1saWJyYXJpZXMvZmF2b3JpdGUtbGlicmFyaWVzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTZWFyY2hSZXN1bHRzQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3NlYXJjaC9zZWFyY2gtcmVzdWx0cy9zZWFyY2gtcmVzdWx0cy5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2VhcmNoTGlicmFyaWVzUmVzdWx0c0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9zZWFyY2gvc2VhcmNoLWxpYnJhcmllcy1yZXN1bHRzL3NlYXJjaC1saWJyYXJpZXMtcmVzdWx0cy5jb21wb25lbnQnO1xuaW1wb3J0IHsgQXBwU2hhcmVkUnVsZUd1YXJkLCBHZW5lcmljRXJyb3JDb21wb25lbnQsIEV4dGVuc2lvblJvdXRlLCBFeHRlbnNpb25zRGF0YUxvYWRlckd1YXJkLCBQbHVnaW5FbmFibGVkR3VhcmQgfSBmcm9tICdAYWxmcmVzY28vYWNhLXNoYXJlZCc7XG5pbXBvcnQgeyBBdXRoR3VhcmQsIFVuc2F2ZWRDaGFuZ2VzR3VhcmQgfSBmcm9tICdAYWxmcmVzY28vYWRmLWNvcmUnO1xuaW1wb3J0IHsgRmF2b3JpdGVzQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2Zhdm9yaXRlcy9mYXZvcml0ZXMuY29tcG9uZW50JztcbmltcG9ydCB7IFJlY2VudEZpbGVzQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3JlY2VudC1maWxlcy9yZWNlbnQtZmlsZXMuY29tcG9uZW50JztcbmltcG9ydCB7IFNoYXJlZEZpbGVzQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3NoYXJlZC1maWxlcy9zaGFyZWQtZmlsZXMuY29tcG9uZW50JztcbmltcG9ydCB7IERldGFpbHNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvZGV0YWlscy9kZXRhaWxzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIb21lQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2hvbWUvaG9tZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVmlld1Byb2ZpbGVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvdmlldy1wcm9maWxlL3ZpZXctcHJvZmlsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVmlld1Byb2ZpbGVSdWxlR3VhcmQgfSBmcm9tICcuL2NvbXBvbmVudHMvdmlldy1wcm9maWxlL3ZpZXctcHJvZmlsZS5ndWFyZCc7XG5pbXBvcnQgeyBEYXRhLCBSb3V0ZSwgUm91dGVzIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IFNoYXJlZExpbmtWaWV3Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3NoYXJlZC1saW5rLXZpZXcvc2hhcmVkLWxpbmstdmlldy5jb21wb25lbnQnO1xuaW1wb3J0IHsgVHJhc2hjYW5Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvdHJhc2hjYW4vdHJhc2hjYW4uY29tcG9uZW50JztcbmltcG9ydCB7IFNoZWxsTGF5b3V0Q29tcG9uZW50IH0gZnJvbSAnQGFsZnJlc2NvL2FkZi1jb3JlL3NoZWxsJztcbmltcG9ydCB7IFNlYXJjaEFpUmVzdWx0c0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9rbm93bGVkZ2UtcmV0cmlldmFsL3NlYXJjaC1haS9zZWFyY2gtYWktcmVzdWx0cy9zZWFyY2gtYWktcmVzdWx0cy5jb21wb25lbnQnO1xuXG5leHBvcnQgY29uc3QgQ09OVEVOVF9ST1VURVM6IEV4dGVuc2lvblJvdXRlW10gPSBbXG4gIHtcbiAgICBwYXRoOiAncHJldmlldy9zLzppZCcsXG4gICAgY2hpbGRyZW46IFtcbiAgICAgIHtcbiAgICAgICAgcGF0aDogJycsXG4gICAgICAgIGNvbXBvbmVudDogU2hhcmVkTGlua1ZpZXdDb21wb25lbnQsXG4gICAgICAgIGRhdGE6IHtcbiAgICAgICAgICB0aXRsZTogJ0FQUC5QUkVWSUVXLlRJVExFJ1xuICAgICAgICB9XG4gICAgICB9XG4gICAgXVxuICB9LFxuICB7XG4gICAgcGF0aDogJ3ZpZXcnLFxuICAgIGNvbXBvbmVudDogU2hlbGxMYXlvdXRDb21wb25lbnQsXG4gICAgY2hpbGRyZW46IFtcbiAgICAgIHtcbiAgICAgICAgcGF0aDogJzpub2RlSWQnLFxuICAgICAgICBvdXRsZXQ6ICd2aWV3ZXInLFxuICAgICAgICBjaGlsZHJlbjogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIHBhdGg6ICcnLFxuICAgICAgICAgICAgbG9hZENoaWxkcmVuOiAoKSA9PiBpbXBvcnQoJ0BhbGZyZXNjby9hY2EtY29udGVudC92aWV3ZXInKS50aGVuKChtKSA9PiBtLkFjYVZpZXdlck1vZHVsZSlcbiAgICAgICAgICB9XG4gICAgICAgIF1cbiAgICAgIH1cbiAgICBdXG4gIH1cbl07XG5cbmNvbnN0IGNyZWF0ZVZpZXdSb3V0ZXMgPSAobmF2aWdhdGVTb3VyY2U6IHN0cmluZywgYWRkaXRpb25hbERhdGE6IERhdGEgPSB7fSk6IFJvdXRlcyA9PiBbXG4gIHtcbiAgICBwYXRoOiAndmlldy86bm9kZUlkJyxcbiAgICBvdXRsZXQ6ICd2aWV3ZXInLFxuICAgIGNoaWxkcmVuOiBbXG4gICAgICB7XG4gICAgICAgIHBhdGg6ICcnLFxuICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgbmF2aWdhdGVTb3VyY2VcbiAgICAgICAgfSxcbiAgICAgICAgbG9hZENoaWxkcmVuOiAoKSA9PiBpbXBvcnQoJ0BhbGZyZXNjby9hY2EtY29udGVudC92aWV3ZXInKS50aGVuKChtKSA9PiBtLkFjYVZpZXdlck1vZHVsZSlcbiAgICAgIH1cbiAgICBdLFxuICAgIC4uLmFkZGl0aW9uYWxEYXRhXG4gIH0sXG4gIHtcbiAgICBwYXRoOiAndmlldy86bm9kZUlkLzp2ZXJzaW9uSWQnLFxuICAgIG91dGxldDogJ3ZpZXdlcicsXG4gICAgY2hpbGRyZW46IFtcbiAgICAgIHtcbiAgICAgICAgcGF0aDogJycsXG4gICAgICAgIGRhdGE6IHtcbiAgICAgICAgICBuYXZpZ2F0ZVNvdXJjZVxuICAgICAgICB9LFxuICAgICAgICBsb2FkQ2hpbGRyZW46ICgpID0+IGltcG9ydCgnQGFsZnJlc2NvL2FjYS1jb250ZW50L3ZpZXdlcicpLnRoZW4oKG0pID0+IG0uQWNhVmlld2VyTW9kdWxlKVxuICAgICAgfVxuICAgIF1cbiAgfVxuXTtcblxuZXhwb3J0IGNvbnN0IENPTlRFTlRfTEFZT1VUX1JPVVRFUzogUm91dGUgPSB7XG4gIHBhdGg6ICcnLFxuICBjYW5BY3RpdmF0ZTogW0V4dGVuc2lvbnNEYXRhTG9hZGVyR3VhcmRdLFxuICBjaGlsZHJlbjogW1xuICAgIHtcbiAgICAgIHBhdGg6ICdwcm9maWxlJyxcbiAgICAgIGNhbkFjdGl2YXRlOiBbVmlld1Byb2ZpbGVSdWxlR3VhcmRdLFxuICAgICAgY29tcG9uZW50OiBWaWV3UHJvZmlsZUNvbXBvbmVudFxuICAgIH0sXG4gICAge1xuICAgICAgcGF0aDogJycsXG4gICAgICBjb21wb25lbnQ6IEhvbWVDb21wb25lbnRcbiAgICB9LFxuICAgIHtcbiAgICAgIHBhdGg6ICdwZXJzb25hbC1maWxlcycsXG4gICAgICBjaGlsZHJlbjogW1xuICAgICAgICB7XG4gICAgICAgICAgcGF0aDogJycsXG4gICAgICAgICAgY29tcG9uZW50OiBGaWxlc0NvbXBvbmVudCxcbiAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICBzb3J0aW5nUHJlZmVyZW5jZUtleTogJ3BlcnNvbmFsLWZpbGVzJyxcbiAgICAgICAgICAgIHRpdGxlOiAnQVBQLkJST1dTRS5QRVJTT05BTC5USVRMRScsXG4gICAgICAgICAgICBkZWZhdWx0Tm9kZUlkOiAnLW15LSdcbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBwYXRoOiAnZGV0YWlscy86bm9kZUlkJyxcbiAgICAgICAgICBjaGlsZHJlbjogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBwYXRoOiAnJyxcbiAgICAgICAgICAgICAgY29tcG9uZW50OiBEZXRhaWxzQ29tcG9uZW50LFxuICAgICAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICAgICAgbmF2aWdhdGVTb3VyY2U6ICdwZXJzb25hbC1maWxlcydcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgcGF0aDogJzphY3RpdmVUYWInLFxuICAgICAgICAgICAgICBjb21wb25lbnQ6IERldGFpbHNDb21wb25lbnQsXG4gICAgICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgICAgICB0aXRsZTogJ0FQUC5CUk9XU0UuUEVSU09OQUwuUEVSTUlTU0lPTlMuVElUTEUnLFxuICAgICAgICAgICAgICAgIG5hdmlnYXRlU291cmNlOiAncGVyc29uYWwtZmlsZXMnXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICBdXG4gICAgICAgIH0sXG4gICAgICAgIC4uLmNyZWF0ZVZpZXdSb3V0ZXMoJ3BlcnNvbmFsLWZpbGVzJylcbiAgICAgIF1cbiAgICB9LFxuICAgIHtcbiAgICAgIHBhdGg6ICdwZXJzb25hbC1maWxlcy86Zm9sZGVySWQnLFxuICAgICAgY2hpbGRyZW46IFtcbiAgICAgICAge1xuICAgICAgICAgIHBhdGg6ICcnLFxuICAgICAgICAgIGNvbXBvbmVudDogRmlsZXNDb21wb25lbnQsXG4gICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgdGl0bGU6ICdBUFAuQlJPV1NFLlBFUlNPTkFMLlRJVExFJyxcbiAgICAgICAgICAgIHNvcnRpbmdQcmVmZXJlbmNlS2V5OiAncGVyc29uYWwtZmlsZXMnXG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICAuLi5jcmVhdGVWaWV3Um91dGVzKCdwZXJzb25hbC1maWxlcycpXG4gICAgICBdXG4gICAgfSxcbiAgICB7XG4gICAgICBwYXRoOiAnbGlicmFyaWVzJyxcbiAgICAgIGNoaWxkcmVuOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBwYXRoOiAnJyxcbiAgICAgICAgICBjb21wb25lbnQ6IExpYnJhcmllc0NvbXBvbmVudCxcbiAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICB0aXRsZTogJ0FQUC5CUk9XU0UuTElCUkFSSUVTLk1FTlUuTVlfTElCUkFSSUVTLlRJVExFJyxcbiAgICAgICAgICAgIHNvcnRpbmdQcmVmZXJlbmNlS2V5OiAnbGlicmFyaWVzJ1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgXVxuICAgIH0sXG4gICAge1xuICAgICAgcGF0aDogJ2xpYnJhcmllcy86Zm9sZGVySWQnLFxuICAgICAgY2hpbGRyZW46IFtcbiAgICAgICAge1xuICAgICAgICAgIHBhdGg6ICcnLFxuICAgICAgICAgIGNvbXBvbmVudDogRmlsZXNDb21wb25lbnQsXG4gICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgdGl0bGU6ICdBUFAuQlJPV1NFLkxJQlJBUklFUy5NRU5VLk1ZX0xJQlJBUklFUy5USVRMRScsXG4gICAgICAgICAgICBzb3J0aW5nUHJlZmVyZW5jZUtleTogJ2xpYnJhcmllcy1maWxlcydcbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIC4uLmNyZWF0ZVZpZXdSb3V0ZXMoJ2xpYnJhcmllcycsIHtcbiAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICBuYXZpZ2F0ZVNvdXJjZTogJ2xpYnJhcmllcydcbiAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgICBdXG4gICAgfSxcbiAgICB7XG4gICAgICBwYXRoOiAnZmF2b3JpdGUnLFxuICAgICAgY2hpbGRyZW46IFtcbiAgICAgICAge1xuICAgICAgICAgIHBhdGg6ICcnLFxuICAgICAgICAgIHBhdGhNYXRjaDogJ2Z1bGwnLFxuICAgICAgICAgIHJlZGlyZWN0VG86ICdsaWJyYXJpZXMnXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBwYXRoOiAnbGlicmFyaWVzJyxcbiAgICAgICAgICBjb21wb25lbnQ6IEZhdm9yaXRlTGlicmFyaWVzQ29tcG9uZW50LFxuICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgIHRpdGxlOiAnQVBQLkJST1dTRS5MSUJSQVJJRVMuTUVOVS5GQVZPUklURV9MSUJSQVJJRVMuVElUTEUnLFxuICAgICAgICAgICAgc29ydGluZ1ByZWZlcmVuY2VLZXk6ICdmYXZvcml0ZS1saWJyYXJpZXMnXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICBdXG4gICAgfSxcbiAgICB7XG4gICAgICBwYXRoOiAnZmF2b3JpdGUvbGlicmFyaWVzLzpmb2xkZXJJZCcsXG4gICAgICBjaGlsZHJlbjogW1xuICAgICAgICB7XG4gICAgICAgICAgcGF0aDogJycsXG4gICAgICAgICAgY29tcG9uZW50OiBGaWxlc0NvbXBvbmVudCxcbiAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICB0aXRsZTogJ0FQUC5CUk9XU0UuTElCUkFSSUVTLk1FTlUuRkFWT1JJVEVfTElCUkFSSUVTLlRJVExFJyxcbiAgICAgICAgICAgIHNvcnRpbmdQcmVmZXJlbmNlS2V5OiAnbGlicmFyaWVzLWZpbGVzJ1xuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgLi4uY3JlYXRlVmlld1JvdXRlcygnbGlicmFyaWVzJylcbiAgICAgIF1cbiAgICB9LFxuICAgIHtcbiAgICAgIHBhdGg6ICdmYXZvcml0ZXMnLFxuICAgICAgZGF0YToge1xuICAgICAgICBzb3J0aW5nUHJlZmVyZW5jZUtleTogJ2Zhdm9yaXRlcydcbiAgICAgIH0sXG4gICAgICBjaGlsZHJlbjogW1xuICAgICAgICB7XG4gICAgICAgICAgcGF0aDogJycsXG4gICAgICAgICAgY29tcG9uZW50OiBGYXZvcml0ZXNDb21wb25lbnQsXG4gICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgdGl0bGU6ICdBUFAuQlJPV1NFLkZBVk9SSVRFUy5USVRMRScsXG4gICAgICAgICAgICBzb3J0aW5nUHJlZmVyZW5jZUtleTogJ2Zhdm9yaXRlcydcbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIC4uLmNyZWF0ZVZpZXdSb3V0ZXMoJ2Zhdm9yaXRlcycpXG4gICAgICBdXG4gICAgfSxcbiAgICB7XG4gICAgICBwYXRoOiAncmVjZW50LWZpbGVzJyxcbiAgICAgIGRhdGE6IHtcbiAgICAgICAgc29ydGluZ1ByZWZlcmVuY2VLZXk6ICdyZWNlbnQtZmlsZXMnXG4gICAgICB9LFxuICAgICAgY2hpbGRyZW46IFtcbiAgICAgICAge1xuICAgICAgICAgIHBhdGg6ICcnLFxuICAgICAgICAgIGNvbXBvbmVudDogUmVjZW50RmlsZXNDb21wb25lbnQsXG4gICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgdGl0bGU6ICdBUFAuQlJPV1NFLlJFQ0VOVC5USVRMRSdcbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIC4uLmNyZWF0ZVZpZXdSb3V0ZXMoJ3JlY2VudC1maWxlcycpXG4gICAgICBdXG4gICAgfSxcbiAgICB7XG4gICAgICBwYXRoOiAnc2hhcmVkJyxcbiAgICAgIGNoaWxkcmVuOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBwYXRoOiAnJyxcbiAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICB0aXRsZTogJ0FQUC5CUk9XU0UuU0hBUkVELlRJVExFJyxcbiAgICAgICAgICAgIHNvcnRpbmdQcmVmZXJlbmNlS2V5OiAnc2hhcmVkLWZpbGVzJ1xuICAgICAgICAgIH0sXG4gICAgICAgICAgY29tcG9uZW50OiBTaGFyZWRGaWxlc0NvbXBvbmVudFxuICAgICAgICB9LFxuICAgICAgICAuLi5jcmVhdGVWaWV3Um91dGVzKCdzaGFyZWQnKVxuICAgICAgXSxcbiAgICAgIGNhbkFjdGl2YXRlQ2hpbGQ6IFtBcHBTaGFyZWRSdWxlR3VhcmRdLFxuICAgICAgY2FuQWN0aXZhdGU6IFtBcHBTaGFyZWRSdWxlR3VhcmRdXG4gICAgfSxcbiAgICB7XG4gICAgICBwYXRoOiAndHJhc2hjYW4nLFxuICAgICAgY2hpbGRyZW46IFtcbiAgICAgICAge1xuICAgICAgICAgIHBhdGg6ICcnLFxuICAgICAgICAgIGNvbXBvbmVudDogVHJhc2hjYW5Db21wb25lbnQsXG4gICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgdGl0bGU6ICdBUFAuQlJPV1NFLlRSQVNIQ0FOLlRJVExFJyxcbiAgICAgICAgICAgIHNvcnRpbmdQcmVmZXJlbmNlS2V5OiAndHJhc2hjYW4nXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICBdXG4gICAgfSxcbiAgICB7XG4gICAgICBwYXRoOiAnc2VhcmNoJyxcbiAgICAgIGNoaWxkcmVuOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBwYXRoOiAnJyxcbiAgICAgICAgICBjb21wb25lbnQ6IFNlYXJjaFJlc3VsdHNDb21wb25lbnQsXG4gICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgdGl0bGU6ICdBUFAuQlJPV1NFLlNFQVJDSC5USVRMRScsXG4gICAgICAgICAgICBzb3J0aW5nUHJlZmVyZW5jZUtleTogJ3NlYXJjaCdcbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIC4uLmNyZWF0ZVZpZXdSb3V0ZXMoJ3NlYXJjaCcpXG4gICAgICBdXG4gICAgfSxcbiAgICB7XG4gICAgICBwYXRoOiAnc2VhcmNoLWxpYnJhcmllcycsXG4gICAgICBjaGlsZHJlbjogW1xuICAgICAgICB7XG4gICAgICAgICAgcGF0aDogJycsXG4gICAgICAgICAgY29tcG9uZW50OiBTZWFyY2hMaWJyYXJpZXNSZXN1bHRzQ29tcG9uZW50LFxuICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgIHRpdGxlOiAnQVBQLkJST1dTRS5TRUFSQ0guVElUTEUnLFxuICAgICAgICAgICAgc29ydGluZ1ByZWZlcmVuY2VLZXk6ICdzZWFyY2gtbGlicmFyaWVzJ1xuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHBhdGg6ICd2aWV3Lzpub2RlSWQnLFxuICAgICAgICAgIG91dGxldDogJ3ZpZXdlcicsXG4gICAgICAgICAgY2hpbGRyZW46IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgcGF0aDogJycsXG4gICAgICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgICAgICBuYXZpZ2F0ZVNvdXJjZTogJ3NlYXJjaCdcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgbG9hZENoaWxkcmVuOiAoKSA9PiBpbXBvcnQoJ0BhbGZyZXNjby9hY2EtY29udGVudC92aWV3ZXInKS50aGVuKChtKSA9PiBtLkFjYVZpZXdlck1vZHVsZSlcbiAgICAgICAgICAgIH1cbiAgICAgICAgICBdXG4gICAgICAgIH1cbiAgICAgIF1cbiAgICB9LFxuICAgIHtcbiAgICAgIHBhdGg6ICdub2Rlcy86bm9kZUlkJyxcbiAgICAgIGNoaWxkcmVuOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBwYXRoOiAnJyxcbiAgICAgICAgICBsb2FkQ2hpbGRyZW46ICgpID0+IGltcG9ydCgnQGFsZnJlc2NvL2FjYS1jb250ZW50L2ZvbGRlci1ydWxlcycpLnRoZW4oKG0pID0+IG0uQWNhRm9sZGVyUnVsZXNNb2R1bGUpXG4gICAgICAgIH1cbiAgICAgIF1cbiAgICB9LFxuICAgIHtcbiAgICAgIHBhdGg6ICdrbm93bGVkZ2UtcmV0cmlldmFsJyxcbiAgICAgIGNhbkRlYWN0aXZhdGU6IFtVbnNhdmVkQ2hhbmdlc0d1YXJkXSxcbiAgICAgIGNhbkFjdGl2YXRlOiBbUGx1Z2luRW5hYmxlZEd1YXJkXSxcbiAgICAgIGRhdGE6IHtcbiAgICAgICAgcGx1Z2luOiAncGx1Z2lucy5rbm93bGVkZ2VSZXRyaWV2YWxFbmFibGVkJ1xuICAgICAgfSxcbiAgICAgIGNoaWxkcmVuOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBwYXRoOiAnJyxcbiAgICAgICAgICBjb21wb25lbnQ6IFNlYXJjaEFpUmVzdWx0c0NvbXBvbmVudFxuICAgICAgICB9LFxuICAgICAgICAuLi5jcmVhdGVWaWV3Um91dGVzKCdrbm93bGVkZ2UtcmV0cmlldmFsJylcbiAgICAgIF1cbiAgICB9LFxuICAgIHtcbiAgICAgIHBhdGg6ICcqKicsXG4gICAgICBjb21wb25lbnQ6IEdlbmVyaWNFcnJvckNvbXBvbmVudFxuICAgIH1cbiAgXSxcbiAgY2FuQWN0aXZhdGVDaGlsZDogW0F1dGhHdWFyZF1cbn07XG4iXX0=
@@ -1,83 +0,0 @@
1
- import { getSearchItemsTotalCount } from '@alfresco/aca-shared/store';
2
- import { CommonModule } from '@angular/common';
3
- import { Component, Input, ViewEncapsulation } from '@angular/core';
4
- import { MatSelectModule } from '@angular/material/select';
5
- import { Store } from '@ngrx/store';
6
- import { TranslateModule } from '@ngx-translate/core';
7
- import { combineLatest, Subject } from 'rxjs';
8
- import { IconComponent, TranslationService } from '@alfresco/adf-core';
9
- import { FormControl, ReactiveFormsModule } from '@angular/forms';
10
- import { switchMap, takeUntil } from 'rxjs/operators';
11
- import { AppExtensionService } from '@alfresco/aca-shared';
12
- import * as i0 from "@angular/core";
13
- import * as i1 from "@ngrx/store";
14
- import * as i2 from "@alfresco/adf-core";
15
- import * as i3 from "@alfresco/aca-shared";
16
- import * as i4 from "@angular/common";
17
- import * as i5 from "@ngx-translate/core";
18
- import * as i6 from "@angular/material/form-field";
19
- import * as i7 from "@angular/material/select";
20
- import * as i8 from "@angular/material/core";
21
- import * as i9 from "@angular/forms";
22
- export class BulkActionsDropdownComponent {
23
- constructor(store, translationService, extensions) {
24
- this.store = store;
25
- this.translationService = translationService;
26
- this.extensions = extensions;
27
- this.bulkSelectControl = new FormControl();
28
- this.totalItems$ = this.store.select(getSearchItemsTotalCount);
29
- this.onDestroy$ = new Subject();
30
- }
31
- ngOnInit() {
32
- this.totalItems$
33
- .pipe(switchMap((totalItems) => {
34
- if (totalItems > 0) {
35
- this.bulkSelectControl.enable();
36
- return combineLatest([
37
- this.translationService.get('SEARCH.BULK_ACTIONS_DROPDOWN.TITLE', { count: totalItems }),
38
- this.translationService.get('SEARCH.BULK_ACTIONS_DROPDOWN.TITLE', { count: totalItems })
39
- ]);
40
- }
41
- else {
42
- this.bulkSelectControl.disable();
43
- return combineLatest([
44
- this.translationService.get('SEARCH.BULK_ACTIONS_DROPDOWN.BULK_NOT_AVAILABLE'),
45
- this.translationService.get('SEARCH.BULK_ACTIONS_DROPDOWN.BULK_NOT_AVAILABLE_TOOLTIP')
46
- ]);
47
- }
48
- }), takeUntil(this.onDestroy$))
49
- .subscribe(([placeholder, title]) => {
50
- this.tooltip = title;
51
- this.placeholder = placeholder;
52
- });
53
- this.extensions.bulkActionExecuted$.pipe(takeUntil(this.onDestroy$)).subscribe(() => {
54
- this.bulkSelectControl.setValue(null);
55
- });
56
- }
57
- ngOnDestroy() {
58
- this.onDestroy$.next();
59
- this.onDestroy$.complete();
60
- }
61
- runAction(actionOption) {
62
- this.extensions.runActionById(actionOption.actions.click, {
63
- focusedElementOnCloseSelector: '.adf-context-menu-source'
64
- });
65
- }
66
- onKeyDown(event) {
67
- if (event.key === 'Tab') {
68
- this.bulkSelectControl.setValue(null);
69
- }
70
- if (event.key === 'Enter' && this.bulkSelectControl.value) {
71
- this.runAction(this.bulkSelectControl.value);
72
- }
73
- }
74
- }
75
- BulkActionsDropdownComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: BulkActionsDropdownComponent, deps: [{ token: i1.Store }, { token: i2.TranslationService }, { token: i3.AppExtensionService }], target: i0.ɵɵFactoryTarget.Component });
76
- BulkActionsDropdownComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: BulkActionsDropdownComponent, isStandalone: true, selector: "aca-bulk-actions-dropdown", inputs: { items: "items" }, ngImport: i0, template: "<mat-form-field\n *ngIf=\"items?.length\"\n [title]=\"tooltip\"\n appearance=\"outline\"\n subscriptSizing=\"dynamic\"\n class=\"aca-bulk-actions-form-field\"\n data-automation-id=\"aca-bulk-actions-form-field\"\n>\n <mat-select\n [formControl]=\"bulkSelectControl\"\n [placeholder]=\"placeholder\"\n panelClass=\"aca-bulk-actions-select\"\n disableOptionCentering\n data-automation-id=\"aca-bulk-actions-dropdown\"\n (keydown)=\"onKeyDown($event)\"\n >\n <mat-select-trigger>\n <div class=\"aca-bulk-actions-option-content\">\n <adf-icon\n *ngIf=\"bulkSelectControl.value?.icon\"\n [title]=\"bulkSelectControl.value?.title | translate\"\n [value]=\"bulkSelectControl.value?.icon\"\n class=\"aca-bulk-actions-icon\"\n [attr.data-automation-id]=\"'aca-bulk-action-icon-' + bulkSelectControl.value?.id\"\n ></adf-icon>\n {{ bulkSelectControl.value?.title | translate }}\n </div>\n </mat-select-trigger>\n\n <mat-option\n *ngFor=\"let option of items\"\n [value]=\"option\"\n [title]=\"option.tooltip | translate\"\n [attr.data-automation-id]=\"option.id\"\n (click)=\"runAction(option)\"\n >\n <div class=\"aca-bulk-actions-option-content\">\n <adf-icon\n *ngIf=\"option.icon\"\n [title]=\"option.title | translate\"\n [value]=\"option.icon\"\n class=\"aca-bulk-actions-icon\"\n [attr.data-automation-id]=\"'aca-bulk-action-icon-' + option.id\"\n ></adf-icon>\n {{ option.title | translate }}\n </div>\n </mat-option>\n </mat-select>\n</mat-form-field>\n", styles: [".aca-bulk-actions-form-field{margin-left:24px;width:295px}.aca-bulk-actions-form-field .mat-mdc-form-field-flex,.aca-bulk-actions-form-field .mat-mdc-select-value{height:48px;display:flex;align-items:center}.aca-bulk-actions-option-content{height:100%;display:flex;column-gap:8px;align-items:center}.aca-bulk-actions-option-content .aca-bulk-actions-icon{width:24px;height:24px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatSelectModule }, { kind: "component", type: i6.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "component", type: i7.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator"], exportAs: ["matSelect"] }, { kind: "directive", type: i7.MatSelectTrigger, selector: "mat-select-trigger" }, { kind: "component", type: i8.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "component", type: IconComponent, selector: "adf-icon", inputs: ["color", "fontSet", "value"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i9.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i9.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }], encapsulation: i0.ViewEncapsulation.None });
77
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: BulkActionsDropdownComponent, decorators: [{
78
- type: Component,
79
- args: [{ standalone: true, selector: 'aca-bulk-actions-dropdown', imports: [CommonModule, TranslateModule, MatSelectModule, IconComponent, ReactiveFormsModule], encapsulation: ViewEncapsulation.None, template: "<mat-form-field\n *ngIf=\"items?.length\"\n [title]=\"tooltip\"\n appearance=\"outline\"\n subscriptSizing=\"dynamic\"\n class=\"aca-bulk-actions-form-field\"\n data-automation-id=\"aca-bulk-actions-form-field\"\n>\n <mat-select\n [formControl]=\"bulkSelectControl\"\n [placeholder]=\"placeholder\"\n panelClass=\"aca-bulk-actions-select\"\n disableOptionCentering\n data-automation-id=\"aca-bulk-actions-dropdown\"\n (keydown)=\"onKeyDown($event)\"\n >\n <mat-select-trigger>\n <div class=\"aca-bulk-actions-option-content\">\n <adf-icon\n *ngIf=\"bulkSelectControl.value?.icon\"\n [title]=\"bulkSelectControl.value?.title | translate\"\n [value]=\"bulkSelectControl.value?.icon\"\n class=\"aca-bulk-actions-icon\"\n [attr.data-automation-id]=\"'aca-bulk-action-icon-' + bulkSelectControl.value?.id\"\n ></adf-icon>\n {{ bulkSelectControl.value?.title | translate }}\n </div>\n </mat-select-trigger>\n\n <mat-option\n *ngFor=\"let option of items\"\n [value]=\"option\"\n [title]=\"option.tooltip | translate\"\n [attr.data-automation-id]=\"option.id\"\n (click)=\"runAction(option)\"\n >\n <div class=\"aca-bulk-actions-option-content\">\n <adf-icon\n *ngIf=\"option.icon\"\n [title]=\"option.title | translate\"\n [value]=\"option.icon\"\n class=\"aca-bulk-actions-icon\"\n [attr.data-automation-id]=\"'aca-bulk-action-icon-' + option.id\"\n ></adf-icon>\n {{ option.title | translate }}\n </div>\n </mat-option>\n </mat-select>\n</mat-form-field>\n", styles: [".aca-bulk-actions-form-field{margin-left:24px;width:295px}.aca-bulk-actions-form-field .mat-mdc-form-field-flex,.aca-bulk-actions-form-field .mat-mdc-select-value{height:48px;display:flex;align-items:center}.aca-bulk-actions-option-content{height:100%;display:flex;column-gap:8px;align-items:center}.aca-bulk-actions-option-content .aca-bulk-actions-icon{width:24px;height:24px}\n"] }]
80
- }], ctorParameters: function () { return [{ type: i1.Store }, { type: i2.TranslationService }, { type: i3.AppExtensionService }]; }, propDecorators: { items: [{
81
- type: Input
82
- }] } });
83
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVsay1hY3Rpb25zLWRyb3Bkb3duLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FjYS1jb250ZW50L3NyYy9saWIvY29tcG9uZW50cy9idWxrLWFjdGlvbnMtZHJvcGRvd24vYnVsay1hY3Rpb25zLWRyb3Bkb3duLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FjYS1jb250ZW50L3NyYy9saWIvY29tcG9uZW50cy9idWxrLWFjdGlvbnMtZHJvcGRvd24vYnVsay1hY3Rpb25zLWRyb3Bkb3duLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXlCQSxPQUFPLEVBQVksd0JBQXdCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNoRixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQXFCLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsYUFBYSxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMxRCxPQUFPLEVBQUUsYUFBYSxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDdkUsT0FBTyxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDdEQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7Ozs7Ozs7Ozs7O0FB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cWJEUFksWUFBWSwrUEFBRSxlQUFlLDJGQUFFLGVBQWUsdWtCQUFFLGFBQWEsMkZBQUUsbUJBQW1COzRGQUdqRiw0QkFBNEI7a0JBUnhDLFNBQVM7aUNBQ0ksSUFBSSxZQUNOLDJCQUEyQixXQUc1QixDQUFDLFlBQVksRUFBRSxlQUFlLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxtQkFBbUIsQ0FBQyxpQkFDOUUsaUJBQWlCLENBQUMsSUFBSTsrSkFHNUIsS0FBSztzQkFBYixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiLyohXG4gKiBDb3B5cmlnaHQgwqkgMjAwNS0yMDI0IEh5bGFuZCBTb2Z0d2FyZSwgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogQWxmcmVzY28gRXhhbXBsZSBDb250ZW50IEFwcGxpY2F0aW9uXG4gKlxuICogVGhpcyBmaWxlIGlzIHBhcnQgb2YgdGhlIEFsZnJlc2NvIEV4YW1wbGUgQ29udGVudCBBcHBsaWNhdGlvbi5cbiAqIElmIHRoZSBzb2Z0d2FyZSB3YXMgcHVyY2hhc2VkIHVuZGVyIGEgcGFpZCBBbGZyZXNjbyBsaWNlbnNlLCB0aGUgdGVybXMgb2ZcbiAqIHRoZSBwYWlkIGxpY2Vuc2UgYWdyZWVtZW50IHdpbGwgcHJldmFpbC4gT3RoZXJ3aXNlLCB0aGUgc29mdHdhcmUgaXNcbiAqIHByb3ZpZGVkIHVuZGVyIHRoZSBmb2xsb3dpbmcgb3BlbiBzb3VyY2UgbGljZW5zZSB0ZXJtczpcbiAqXG4gKiBUaGUgQWxmcmVzY28gRXhhbXBsZSBDb250ZW50IEFwcGxpY2F0aW9uIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnlcbiAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieVxuICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3JcbiAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uXG4gKlxuICogVGhlIEFsZnJlc2NvIEV4YW1wbGUgQ29udGVudCBBcHBsaWNhdGlvbiBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLFxuICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2ZcbiAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gU2VlIHRoZVxuICogR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuXG4gKlxuICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlXG4gKiBmcm9tIEh5bGFuZCBTb2Z0d2FyZS4gSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LlxuICovXG5cbmltcG9ydCB7IENvbnRlbnRBY3Rpb25SZWYgfSBmcm9tICdAYWxmcmVzY28vYWRmLWV4dGVuc2lvbnMnO1xuaW1wb3J0IHsgQXBwU3RvcmUsIGdldFNlYXJjaEl0ZW1zVG90YWxDb3VudCB9IGZyb20gJ0BhbGZyZXNjby9hY2Etc2hhcmVkL3N0b3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdFNlbGVjdE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NlbGVjdCc7XG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgY29tYmluZUxhdGVzdCwgT2JzZXJ2YWJsZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgSWNvbkNvbXBvbmVudCwgVHJhbnNsYXRpb25TZXJ2aWNlIH0gZnJvbSAnQGFsZnJlc2NvL2FkZi1jb3JlJztcbmltcG9ydCB7IEZvcm1Db250cm9sLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgc3dpdGNoTWFwLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBBcHBFeHRlbnNpb25TZXJ2aWNlIH0gZnJvbSAnQGFsZnJlc2NvL2FjYS1zaGFyZWQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdhY2EtYnVsay1hY3Rpb25zLWRyb3Bkb3duJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2J1bGstYWN0aW9ucy1kcm9wZG93bi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2J1bGstYWN0aW9ucy1kcm9wZG93bi5jb21wb25lbnQuc2NzcyddLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBUcmFuc2xhdGVNb2R1bGUsIE1hdFNlbGVjdE1vZHVsZSwgSWNvbkNvbXBvbmVudCwgUmVhY3RpdmVGb3Jtc01vZHVsZV0sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcbn0pXG5leHBvcnQgY2xhc3MgQnVsa0FjdGlvbnNEcm9wZG93bkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgQElucHV0KCkgaXRlbXM6IENvbnRlbnRBY3Rpb25SZWZbXTtcblxuICBwbGFjZWhvbGRlcjogc3RyaW5nO1xuICB0b29sdGlwOiBzdHJpbmc7XG4gIGJ1bGtTZWxlY3RDb250cm9sID0gbmV3IEZvcm1Db250cm9sKCk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSB0b3RhbEl0ZW1zJDogT2JzZXJ2YWJsZTxudW1iZXI+ID0gdGhpcy5zdG9yZS5zZWxlY3QoZ2V0U2VhcmNoSXRlbXNUb3RhbENvdW50KTtcbiAgcHJpdmF0ZSByZWFkb25seSBvbkRlc3Ryb3kkID0gbmV3IFN1YmplY3QoKTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHN0b3JlOiBTdG9yZTxBcHBTdG9yZT4sIHByaXZhdGUgdHJhbnNsYXRpb25TZXJ2aWNlOiBUcmFuc2xhdGlvblNlcnZpY2UsIHByaXZhdGUgZXh0ZW5zaW9uczogQXBwRXh0ZW5zaW9uU2VydmljZSkge31cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLnRvdGFsSXRlbXMkXG4gICAgICAucGlwZShcbiAgICAgICAgc3dpdGNoTWFwKCh0b3RhbEl0ZW1zKSA9PiB7XG4gICAgICAgICAgaWYgKHRvdGFsSXRlbXMgPiAwKSB7XG4gICAgICAgICAgICB0aGlzLmJ1bGtTZWxlY3RDb250cm9sLmVuYWJsZSgpO1xuXG4gICAgICAgICAgICByZXR1cm4gY29tYmluZUxhdGVzdChbXG4gICAgICAgICAgICAgIHRoaXMudHJhbnNsYXRpb25TZXJ2aWNlLmdldCgnU0VBUkNILkJVTEtfQUNUSU9OU19EUk9QRE9XTi5USVRMRScsIHsgY291bnQ6IHRvdGFsSXRlbXMgfSksXG4gICAgICAgICAgICAgIHRoaXMudHJhbnNsYXRpb25TZXJ2aWNlLmdldCgnU0VBUkNILkJVTEtfQUNUSU9OU19EUk9QRE9XTi5USVRMRScsIHsgY291bnQ6IHRvdGFsSXRlbXMgfSlcbiAgICAgICAgICAgIF0pO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmJ1bGtTZWxlY3RDb250cm9sLmRpc2FibGUoKTtcblxuICAgICAgICAgICAgcmV0dXJuIGNvbWJpbmVMYXRlc3QoW1xuICAgICAgICAgICAgICB0aGlzLnRyYW5zbGF0aW9uU2VydmljZS5nZXQoJ1NFQVJDSC5CVUxLX0FDVElPTlNfRFJPUERPV04uQlVMS19OT1RfQVZBSUxBQkxFJyksXG4gICAgICAgICAgICAgIHRoaXMudHJhbnNsYXRpb25TZXJ2aWNlLmdldCgnU0VBUkNILkJVTEtfQUNUSU9OU19EUk9QRE9XTi5CVUxLX05PVF9BVkFJTEFCTEVfVE9PTFRJUCcpXG4gICAgICAgICAgICBdKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pLFxuICAgICAgICB0YWtlVW50aWwodGhpcy5vbkRlc3Ryb3kkKVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoW3BsYWNlaG9sZGVyLCB0aXRsZV0pID0+IHtcbiAgICAgICAgdGhpcy50b29sdGlwID0gdGl0bGU7XG4gICAgICAgIHRoaXMucGxhY2Vob2xkZXIgPSBwbGFjZWhvbGRlcjtcbiAgICAgIH0pO1xuXG4gICAgdGhpcy5leHRlbnNpb25zLmJ1bGtBY3Rpb25FeGVjdXRlZCQucGlwZSh0YWtlVW50aWwodGhpcy5vbkRlc3Ryb3kkKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMuYnVsa1NlbGVjdENvbnRyb2wuc2V0VmFsdWUobnVsbCk7XG4gICAgfSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLm9uRGVzdHJveSQubmV4dCgpO1xuICAgIHRoaXMub25EZXN0cm95JC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgcnVuQWN0aW9uKGFjdGlvbk9wdGlvbjogQ29udGVudEFjdGlvblJlZikge1xuICAgIHRoaXMuZXh0ZW5zaW9ucy5ydW5BY3Rpb25CeUlkKGFjdGlvbk9wdGlvbi5hY3Rpb25zLmNsaWNrLCB7XG4gICAgICBmb2N1c2VkRWxlbWVudE9uQ2xvc2VTZWxlY3RvcjogJy5hZGYtY29udGV4dC1tZW51LXNvdXJjZSdcbiAgICB9KTtcbiAgfVxuXG4gIG9uS2V5RG93bihldmVudDogS2V5Ym9hcmRFdmVudCkge1xuICAgIGlmIChldmVudC5rZXkgPT09ICdUYWInKSB7XG4gICAgICB0aGlzLmJ1bGtTZWxlY3RDb250cm9sLnNldFZhbHVlKG51bGwpO1xuICAgIH1cbiAgICBpZiAoZXZlbnQua2V5ID09PSAnRW50ZXInICYmIHRoaXMuYnVsa1NlbGVjdENvbnRyb2wudmFsdWUpIHtcbiAgICAgIHRoaXMucnVuQWN0aW9uKHRoaXMuYnVsa1NlbGVjdENvbnRyb2wudmFsdWUpO1xuICAgIH1cbiAgfVxufVxuIiwiPG1hdC1mb3JtLWZpZWxkXG4gICpuZ0lmPVwiaXRlbXM/Lmxlbmd0aFwiXG4gIFt0aXRsZV09XCJ0b29sdGlwXCJcbiAgYXBwZWFyYW5jZT1cIm91dGxpbmVcIlxuICBzdWJzY3JpcHRTaXppbmc9XCJkeW5hbWljXCJcbiAgY2xhc3M9XCJhY2EtYnVsay1hY3Rpb25zLWZvcm0tZmllbGRcIlxuICBkYXRhLWF1dG9tYXRpb24taWQ9XCJhY2EtYnVsay1hY3Rpb25zLWZvcm0tZmllbGRcIlxuPlxuICA8bWF0LXNlbGVjdFxuICAgIFtmb3JtQ29udHJvbF09XCJidWxrU2VsZWN0Q29udHJvbFwiXG4gICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCJcbiAgICBwYW5lbENsYXNzPVwiYWNhLWJ1bGstYWN0aW9ucy1zZWxlY3RcIlxuICAgIGRpc2FibGVPcHRpb25DZW50ZXJpbmdcbiAgICBkYXRhLWF1dG9tYXRpb24taWQ9XCJhY2EtYnVsay1hY3Rpb25zLWRyb3Bkb3duXCJcbiAgICAoa2V5ZG93bik9XCJvbktleURvd24oJGV2ZW50KVwiXG4gID5cbiAgICA8bWF0LXNlbGVjdC10cmlnZ2VyPlxuICAgICAgPGRpdiBjbGFzcz1cImFjYS1idWxrLWFjdGlvbnMtb3B0aW9uLWNvbnRlbnRcIj5cbiAgICAgICAgPGFkZi1pY29uXG4gICAgICAgICAgKm5nSWY9XCJidWxrU2VsZWN0Q29udHJvbC52YWx1ZT8uaWNvblwiXG4gICAgICAgICAgW3RpdGxlXT1cImJ1bGtTZWxlY3RDb250cm9sLnZhbHVlPy50aXRsZSB8IHRyYW5zbGF0ZVwiXG4gICAgICAgICAgW3ZhbHVlXT1cImJ1bGtTZWxlY3RDb250cm9sLnZhbHVlPy5pY29uXCJcbiAgICAgICAgICBjbGFzcz1cImFjYS1idWxrLWFjdGlvbnMtaWNvblwiXG4gICAgICAgICAgW2F0dHIuZGF0YS1hdXRvbWF0aW9uLWlkXT1cIidhY2EtYnVsay1hY3Rpb24taWNvbi0nICsgYnVsa1NlbGVjdENvbnRyb2wudmFsdWU/LmlkXCJcbiAgICAgICAgPjwvYWRmLWljb24+XG4gICAgICAgIHt7IGJ1bGtTZWxlY3RDb250cm9sLnZhbHVlPy50aXRsZSB8IHRyYW5zbGF0ZSB9fVxuICAgICAgPC9kaXY+XG4gICAgPC9tYXQtc2VsZWN0LXRyaWdnZXI+XG5cbiAgICA8bWF0LW9wdGlvblxuICAgICAgKm5nRm9yPVwibGV0IG9wdGlvbiBvZiBpdGVtc1wiXG4gICAgICBbdmFsdWVdPVwib3B0aW9uXCJcbiAgICAgIFt0aXRsZV09XCJvcHRpb24udG9vbHRpcCB8IHRyYW5zbGF0ZVwiXG4gICAgICBbYXR0ci5kYXRhLWF1dG9tYXRpb24taWRdPVwib3B0aW9uLmlkXCJcbiAgICAgIChjbGljayk9XCJydW5BY3Rpb24ob3B0aW9uKVwiXG4gICAgPlxuICAgICAgPGRpdiBjbGFzcz1cImFjYS1idWxrLWFjdGlvbnMtb3B0aW9uLWNvbnRlbnRcIj5cbiAgICAgICAgPGFkZi1pY29uXG4gICAgICAgICAgKm5nSWY9XCJvcHRpb24uaWNvblwiXG4gICAgICAgICAgW3RpdGxlXT1cIm9wdGlvbi50aXRsZSB8IHRyYW5zbGF0ZVwiXG4gICAgICAgICAgW3ZhbHVlXT1cIm9wdGlvbi5pY29uXCJcbiAgICAgICAgICBjbGFzcz1cImFjYS1idWxrLWFjdGlvbnMtaWNvblwiXG4gICAgICAgICAgW2F0dHIuZGF0YS1hdXRvbWF0aW9uLWlkXT1cIidhY2EtYnVsay1hY3Rpb24taWNvbi0nICsgb3B0aW9uLmlkXCJcbiAgICAgICAgPjwvYWRmLWljb24+XG4gICAgICAgIHt7IG9wdGlvbi50aXRsZSB8IHRyYW5zbGF0ZSB9fVxuICAgICAgPC9kaXY+XG4gICAgPC9tYXQtb3B0aW9uPlxuICA8L21hdC1zZWxlY3Q+XG48L21hdC1mb3JtLWZpZWxkPlxuIl19