@alfresco/aca-content 5.1.1 → 5.2.0-11950694546
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.
- package/assets/app.extensions.json +9 -0
- package/assets/i18n/ar.json +600 -599
- package/assets/i18n/cs.json +600 -599
- package/assets/i18n/da.json +600 -599
- package/assets/i18n/de.json +600 -599
- package/assets/i18n/en.json +40 -1
- package/assets/i18n/es.json +600 -599
- package/assets/i18n/fi.json +600 -599
- package/assets/i18n/fr.json +600 -599
- package/assets/i18n/it.json +600 -599
- package/assets/i18n/ja.json +600 -599
- package/assets/i18n/nb.json +600 -599
- package/assets/i18n/nl.json +600 -599
- package/assets/i18n/pl.json +600 -599
- package/assets/i18n/pt-BR.json +600 -599
- package/assets/i18n/ru.json +600 -599
- package/assets/i18n/sv.json +600 -599
- package/assets/i18n/zh-CN.json +600 -599
- package/esm2022/about/about.component.mjs +70 -0
- package/esm2022/about/aca-about.module.mjs +47 -0
- package/esm2022/folder-rules/folder-rules.module.mjs +116 -0
- package/esm2022/folder-rules/manage-rules/manage-rules.smart-component.mjs +276 -0
- package/esm2022/folder-rules/rule-details/actions/rule-action-list.ui-component.mjs +117 -0
- package/esm2022/folder-rules/rule-details/actions/rule-action.ui-component.mjs +356 -0
- package/esm2022/folder-rules/rule-details/conditions/rule-composite-condition.ui-component.mjs +171 -0
- package/esm2022/folder-rules/rule-details/conditions/rule-simple-condition.ui-component.mjs +233 -0
- package/esm2022/folder-rules/rule-details/edit-rule-dialog.ui-component.mjs +80 -0
- package/esm2022/folder-rules/rule-details/options/rule-options.ui-component.mjs +129 -0
- package/esm2022/folder-rules/rule-details/rule-details.ui-component.mjs +188 -0
- package/esm2022/folder-rules/rule-details/triggers/rule-triggers.ui-component.mjs +87 -0
- package/esm2022/folder-rules/rule-details/validators/rule-actions.validator.mjs +36 -0
- package/esm2022/folder-rules/rule-list/rule-list/rule-list.ui-component.mjs +164 -0
- package/esm2022/folder-rules/rule-list/rule-list-grouping/rule-list-grouping.ui-component.mjs +80 -0
- package/esm2022/folder-rules/rule-list/rule-list-item/rule-list-item.ui-component.mjs +59 -0
- package/esm2022/folder-rules/rule-set-picker/rule-set-picker.smart-component.mjs +122 -0
- package/esm2022/folder-rules/services/actions.service.mjs +117 -0
- package/esm2022/folder-rules/services/folder-rule-sets.service.mjs +230 -0
- package/esm2022/folder-rules/services/folder-rules.service.mjs +195 -0
- package/esm2022/lib/aca-content.module.mjs +303 -0
- package/esm2022/lib/aca-content.routes.mjs +369 -0
- package/esm2022/lib/components/bulk-actions-dropdown/bulk-actions-dropdown.component.mjs +79 -0
- package/{esm2020 → esm2022}/lib/components/common/language-picker/language-picker.component.mjs +9 -8
- package/esm2022/lib/components/common/location-link/location-link.component.mjs +182 -0
- package/{esm2020 → esm2022}/lib/components/common/logout/logout.component.mjs +8 -6
- package/esm2022/lib/components/common/toggle-shared/toggle-shared.component.mjs +76 -0
- package/esm2022/lib/components/common/user-info/user-info.component.mjs +46 -0
- package/esm2022/lib/components/context-menu/base-context-menu.directive.mjs +77 -0
- package/esm2022/lib/components/context-menu/context-menu-item.component.mjs +65 -0
- package/esm2022/lib/components/context-menu/context-menu-outside-event.directive.mjs +57 -0
- package/esm2022/lib/components/context-menu/context-menu-overlay.mjs +33 -0
- package/esm2022/lib/components/context-menu/context-menu.component.mjs +84 -0
- package/esm2022/lib/components/context-menu/context-menu.service.mjs +127 -0
- package/esm2022/lib/components/context-menu/custom-context-menu-actions.token.mjs +26 -0
- package/esm2022/lib/components/context-menu/custom-context-menu.component.mjs +79 -0
- package/esm2022/lib/components/details/details.component.mjs +155 -0
- package/esm2022/lib/components/dl-custom-components/datatable-cell-badges/datatable-cell-badges.component.mjs +70 -0
- package/esm2022/lib/components/dl-custom-components/name-column/name-column.component.mjs +102 -0
- package/esm2022/lib/components/dl-custom-components/tags-column/tags-column.component.mjs +52 -0
- package/esm2022/lib/components/dl-custom-components/thumbnail-column/thumbnail-column.component.mjs +77 -0
- package/esm2022/lib/components/favorite-libraries/favorite-libraries.component.mjs +126 -0
- package/esm2022/lib/components/favorites/favorites.component.mjs +105 -0
- package/esm2022/lib/components/files/files.component.mjs +337 -0
- package/esm2022/lib/components/home/home.component.mjs +46 -0
- package/esm2022/lib/components/info-drawer/comments-tab/comments-tab.component.mjs +62 -0
- package/esm2022/lib/components/info-drawer/info.drawer.module.mjs +74 -0
- package/esm2022/lib/components/info-drawer/library-metadata-tab/library-metadata-form.component.mjs +210 -0
- package/esm2022/lib/components/info-drawer/library-metadata-tab/library-metadata-tab.component.mjs +47 -0
- package/esm2022/lib/components/info-drawer/metadata-tab/metadata-tab.component.mjs +141 -0
- package/esm2022/lib/components/info-drawer/versions-tab/versions-tab.component.mjs +107 -0
- package/esm2022/lib/components/knowledge-retrieval/search-ai/agents-button/agents-button.component.mjs +132 -0
- package/esm2022/lib/components/knowledge-retrieval/search-ai/search-ai-input/search-ai-input.component.mjs +176 -0
- package/esm2022/lib/components/knowledge-retrieval/search-ai/search-ai-input-container/search-ai-input-container.component.mjs +77 -0
- package/esm2022/lib/components/knowledge-retrieval/search-ai/search-ai-results/search-ai-results.component.mjs +207 -0
- package/esm2022/lib/components/libraries/libraries.component.mjs +81 -0
- package/esm2022/lib/components/recent-files/recent-files.component.mjs +80 -0
- package/esm2022/lib/components/search/search-action-menu/search-action-menu.component.mjs +66 -0
- package/esm2022/lib/components/search/search-input/search-input.component.mjs +294 -0
- package/esm2022/lib/components/search/search-input-control/search-input-control.component.mjs +88 -0
- package/esm2022/lib/components/search/search-libraries-results/search-libraries-query-builder.service.mjs +93 -0
- package/esm2022/lib/components/search/search-libraries-results/search-libraries-results.component.mjs +155 -0
- package/esm2022/lib/components/search/search-navigation.service.mjs +62 -0
- package/esm2022/lib/components/search/search-results/search-results.component.mjs +278 -0
- package/esm2022/lib/components/search/search-results-row/search-results-row.component.mjs +145 -0
- package/esm2022/lib/components/search/search-save/dialog/delete/saved-search-delete-dialog.component.mjs +82 -0
- package/esm2022/lib/components/search/search-save/dialog/edit/saved-search-edit-dialog.component.mjs +116 -0
- package/esm2022/lib/components/search/search-save/dialog/save-search-dialog.component.mjs +125 -0
- package/esm2022/lib/components/search/search-save/dialog/saved-search-form.interface.mjs +25 -0
- package/esm2022/lib/components/search/search-save/dialog/unique-search-name-validator.mjs +45 -0
- package/esm2022/lib/components/search/search-save/directive/save-search.directive.mjs +64 -0
- package/esm2022/lib/components/search/search-save/list/saved-searches-list-ui.service.mjs +51 -0
- package/esm2022/lib/components/search/search-save/list/smart-list/saved-searches-list-schema.mjs +44 -0
- package/esm2022/lib/components/search/search-save/list/smart-list/saved-searches-smart-list.component.mjs +50 -0
- package/esm2022/lib/components/search/search-save/list/ui-list/saved-searches-list.ui-component.mjs +153 -0
- package/esm2022/lib/components/search/search-save/sidenav/save-search-sidenav.component.mjs +89 -0
- package/esm2022/lib/components/shared-files/shared-files.component.mjs +85 -0
- package/esm2022/lib/components/shared-link-view/shared-link-view.component.mjs +86 -0
- package/esm2022/lib/components/sidenav/components/button-menu.component.mjs +66 -0
- package/esm2022/lib/components/sidenav/components/expand-menu.component.mjs +73 -0
- package/esm2022/lib/components/sidenav/components/sidenav-header.component.mjs +60 -0
- package/esm2022/lib/components/sidenav/directives/action.directive.mjs +86 -0
- package/esm2022/lib/components/sidenav/directives/active-link.directive.mjs +100 -0
- package/esm2022/lib/components/sidenav/directives/expansion-panel.directive.mjs +103 -0
- package/esm2022/lib/components/sidenav/directives/menu-panel.directive.mjs +99 -0
- package/esm2022/lib/components/sidenav/sidenav.component.mjs +97 -0
- package/esm2022/lib/components/sidenav/user-menu/user-menu.component.mjs +57 -0
- package/esm2022/lib/components/toolbar/toggle-edit-offline/toggle-edit-offline.component.mjs +143 -0
- package/esm2022/lib/components/toolbar/toggle-favorite/toggle-favorite.component.mjs +91 -0
- package/esm2022/lib/components/toolbar/toggle-favorite-library/toggle-favorite-library.component.mjs +108 -0
- package/esm2022/lib/components/toolbar/toggle-info-drawer/toggle-info-drawer.component.mjs +77 -0
- package/esm2022/lib/components/toolbar/toggle-join-library/toggle-join-library-button.component.mjs +107 -0
- package/{esm2020 → esm2022}/lib/components/toolbar/toggle-join-library/toggle-join-library-menu.component.mjs +7 -6
- package/esm2022/lib/components/toolbar/view-node/view-node.component.mjs +128 -0
- package/esm2022/lib/components/trashcan/trashcan.component.mjs +66 -0
- package/esm2022/lib/components/upload-files-dialog/upload-files-dialog.component.mjs +50 -0
- package/esm2022/lib/components/view-profile/view-profile.component.mjs +195 -0
- package/esm2022/lib/dialogs/node-template/create-from-template.dialog.mjs +127 -0
- package/esm2022/lib/directives/document-list.directive.mjs +203 -0
- package/esm2022/lib/extensions/core.extensions.module.mjs +56 -0
- package/esm2022/lib/services/content-management.service.mjs +892 -0
- package/esm2022/lib/services/content-url.service.mjs +74 -0
- package/esm2022/lib/services/modal-ai.service.mjs +65 -0
- package/esm2022/lib/services/node-actions.service.mjs +609 -0
- package/esm2022/lib/services/node-template.service.mjs +145 -0
- package/esm2022/lib/services/search-ai-navigation.service.mjs +63 -0
- package/esm2022/lib/store/app-store.module.mjs +101 -0
- package/esm2022/lib/store/effects/app.effects.mjs +46 -0
- package/esm2022/lib/store/effects/contextmenu.effects.mjs +65 -0
- package/esm2022/lib/store/effects/download.effects.mjs +153 -0
- package/esm2022/lib/store/effects/favorite.effects.mjs +72 -0
- package/esm2022/lib/store/effects/library.effects.mjs +108 -0
- package/esm2022/lib/store/effects/node.effects.mjs +318 -0
- package/esm2022/lib/store/effects/search-ai.effects.mjs +54 -0
- package/esm2022/lib/store/effects/search.effects.mjs +52 -0
- package/esm2022/lib/store/effects/template.effects.mjs +116 -0
- package/esm2022/lib/store/effects/upload.effects.mjs +166 -0
- package/esm2022/lib/store/effects/viewer.effects.mjs +169 -0
- package/esm2022/lib/utils/aca-search-utils.mjs +129 -0
- package/esm2022/ms-office/actions/aos.actions.mjs +32 -0
- package/esm2022/ms-office/aos-extension.module.mjs +53 -0
- package/esm2022/ms-office/aos-extension.service.mjs +136 -0
- package/esm2022/ms-office/effects/aos.effects.mjs +45 -0
- package/esm2022/public-api.mjs +33 -0
- package/esm2022/viewer/lib/components/preview/preview.component.mjs +244 -0
- package/esm2022/viewer/lib/components/viewer/viewer.component.mjs +260 -0
- package/esm2022/viewer/lib/services/viewer.service.mjs +229 -0
- package/esm2022/viewer/lib/viewer.module.mjs +53 -0
- package/{fesm2015 → fesm2022}/alfresco-aca-content-about.mjs +17 -19
- package/fesm2022/alfresco-aca-content-about.mjs.map +1 -0
- package/{fesm2020 → fesm2022}/alfresco-aca-content-folder-rules.mjs +376 -357
- package/fesm2022/alfresco-aca-content-folder-rules.mjs.map +1 -0
- package/{fesm2020 → fesm2022}/alfresco-aca-content-ms-office.mjs +28 -26
- package/fesm2022/alfresco-aca-content-ms-office.mjs.map +1 -0
- package/{fesm2020 → fesm2022}/alfresco-aca-content-viewer.mjs +110 -83
- package/fesm2022/alfresco-aca-content-viewer.mjs.map +1 -0
- package/fesm2022/alfresco-aca-content.mjs +10996 -0
- package/fesm2022/alfresco-aca-content.mjs.map +1 -0
- package/folder-rules/manage-rules/manage-rules.smart-component.d.ts +3 -5
- package/folder-rules/rule-details/actions/rule-action-list.ui-component.d.ts +1 -1
- package/folder-rules/rule-details/actions/rule-action.ui-component.d.ts +5 -6
- package/folder-rules/rule-details/conditions/rule-composite-condition.ui-component.d.ts +1 -1
- package/folder-rules/rule-details/conditions/rule-simple-condition.ui-component.d.ts +4 -5
- package/folder-rules/rule-details/options/rule-options.ui-component.d.ts +1 -1
- package/folder-rules/rule-details/rule-details.ui-component.d.ts +5 -6
- package/folder-rules/rule-list/rule-list/rule-list.ui-component.d.ts +4 -5
- package/folder-rules/rule-list/rule-list-grouping/rule-list-grouping.ui-component.d.ts +1 -1
- package/folder-rules/rule-list/rule-list-item/rule-list-item.ui-component.d.ts +1 -1
- package/folder-rules/rule-set-picker/rule-set-picker.smart-component.d.ts +3 -5
- package/folder-rules/services/folder-rule-sets.service.d.ts +4 -4
- package/folder-rules/services/folder-rules.service.d.ts +1 -1
- package/lib/components/bulk-actions-dropdown/bulk-actions-dropdown.component.d.ts +7 -13
- package/lib/components/common/location-link/location-link.component.d.ts +1 -1
- package/lib/components/common/toggle-shared/toggle-shared.component.d.ts +5 -6
- package/lib/components/context-menu/base-context-menu.directive.d.ts +20 -0
- package/lib/components/context-menu/context-menu-item.component.d.ts +1 -1
- package/lib/components/context-menu/context-menu-outside-event.directive.d.ts +4 -5
- package/lib/components/context-menu/context-menu.component.d.ts +4 -15
- package/lib/components/context-menu/context-menu.service.d.ts +4 -1
- package/lib/components/{knowledge-retrieval/search-ai/search-ai-utils.d.ts → context-menu/custom-context-menu-actions.token.d.ts} +2 -2
- package/lib/components/context-menu/custom-context-menu.component.d.ts +36 -0
- package/lib/components/details/details.component.d.ts +1 -2
- package/lib/components/dl-custom-components/datatable-cell-badges/datatable-cell-badges.component.d.ts +4 -5
- package/lib/components/dl-custom-components/name-column/name-column.component.d.ts +3 -4
- package/lib/components/dl-custom-components/tags-column/tags-column.component.d.ts +1 -1
- package/lib/components/dl-custom-components/thumbnail-column/thumbnail-column.component.d.ts +1 -1
- package/lib/components/files/files.component.d.ts +1 -1
- package/lib/components/info-drawer/comments-tab/comments-tab.component.d.ts +1 -1
- package/lib/components/info-drawer/library-metadata-tab/library-metadata-form.component.d.ts +5 -7
- package/lib/components/info-drawer/library-metadata-tab/library-metadata-tab.component.d.ts +1 -1
- package/lib/components/info-drawer/metadata-tab/metadata-tab.component.d.ts +7 -8
- package/lib/components/info-drawer/versions-tab/versions-tab.component.d.ts +1 -1
- package/lib/components/knowledge-retrieval/search-ai/agents-button/agents-button.component.d.ts +4 -6
- package/lib/components/knowledge-retrieval/search-ai/search-ai-input/search-ai-input.component.d.ts +6 -8
- package/lib/components/knowledge-retrieval/search-ai/search-ai-input-container/search-ai-input-container.component.d.ts +8 -8
- package/lib/components/knowledge-retrieval/search-ai/search-ai-results/search-ai-results.component.d.ts +4 -6
- package/lib/components/search/search-input/search-input.component.d.ts +13 -16
- package/lib/components/search/search-input-control/search-input-control.component.d.ts +3 -6
- package/lib/components/search/search-libraries-results/search-libraries-results.component.d.ts +0 -1
- package/lib/components/search/search-results/search-results.component.d.ts +14 -9
- package/lib/components/search/search-results-row/search-results-row.component.d.ts +4 -5
- package/lib/components/search/search-save/dialog/delete/saved-search-delete-dialog.component.d.ts +16 -0
- package/lib/components/search/search-save/dialog/edit/saved-search-edit-dialog.component.d.ts +22 -0
- package/lib/components/search/search-save/dialog/save-search-dialog.component.d.ts +23 -0
- package/lib/components/search/search-save/dialog/saved-search-form.interface.d.ts +28 -0
- package/lib/components/search/search-save/dialog/unique-search-name-validator.d.ts +34 -0
- package/lib/components/search/search-save/directive/save-search.directive.d.ts +13 -0
- package/lib/components/search/search-save/list/saved-searches-list-ui.service.d.ts +9 -0
- package/lib/components/search/search-save/list/smart-list/saved-searches-list-schema.d.ts +33 -0
- package/lib/components/search/search-save/list/smart-list/saved-searches-smart-list.component.d.ts +13 -0
- package/lib/components/search/search-save/list/ui-list/saved-searches-list.ui-component.d.ts +66 -0
- package/lib/components/search/search-save/sidenav/save-search-sidenav.component.d.ts +42 -0
- package/lib/components/shared-link-view/shared-link-view.component.d.ts +4 -5
- package/lib/components/sidenav/components/button-menu.component.d.ts +1 -1
- package/lib/components/sidenav/components/expand-menu.component.d.ts +3 -2
- package/lib/components/sidenav/components/sidenav-header.component.d.ts +3 -4
- package/lib/components/sidenav/directives/action.directive.d.ts +28 -1
- package/lib/components/sidenav/directives/active-link.directive.d.ts +3 -3
- package/lib/components/sidenav/directives/expansion-panel.directive.d.ts +4 -5
- package/lib/components/sidenav/directives/menu-panel.directive.d.ts +4 -5
- package/lib/components/sidenav/sidenav.component.d.ts +7 -7
- package/lib/components/sidenav/user-menu/user-menu.component.d.ts +1 -1
- package/lib/components/toolbar/toggle-favorite/toggle-favorite.component.d.ts +1 -1
- package/lib/components/toolbar/toggle-favorite-library/toggle-favorite-library.component.d.ts +3 -4
- package/lib/components/toolbar/view-node/view-node.component.d.ts +1 -1
- package/lib/components/upload-files-dialog/upload-files-dialog.component.d.ts +1 -27
- package/lib/components/view-profile/view-profile.component.d.ts +2 -4
- package/lib/directives/document-list.directive.d.ts +3 -5
- package/lib/services/search-ai-navigation.service.d.ts +4 -2
- package/lib/store/effects/app.effects.d.ts +2 -3
- package/lib/store/effects/contextmenu.effects.d.ts +3 -3
- package/lib/store/effects/download.effects.d.ts +0 -30
- package/lib/store/effects/favorite.effects.d.ts +0 -28
- package/lib/store/effects/library.effects.d.ts +2 -7
- package/lib/store/effects/node.effects.d.ts +7 -38
- package/lib/store/effects/search-ai.effects.d.ts +0 -4
- package/lib/store/effects/search.effects.d.ts +3 -30
- package/lib/store/effects/template.effects.d.ts +5 -7
- package/lib/store/effects/upload.effects.d.ts +8 -32
- package/lib/store/effects/viewer.effects.d.ts +0 -29
- package/lib/utils/aca-search-utils.d.ts +67 -0
- package/ms-office/effects/aos.effects.d.ts +0 -3
- package/package.json +21 -35
- package/public-api.d.ts +1 -0
- package/ui/overrides/adf-pagination.theme.scss +0 -4
- package/ui/theme.scss +9 -4
- package/viewer/lib/components/preview/preview.component.d.ts +3 -4
- package/viewer/lib/components/viewer/viewer.component.d.ts +2 -2
- package/assets/images/agent-avatar-blue.png +0 -0
- package/assets/images/agent-avatar-gold.png +0 -0
- package/assets/images/agent-avatar-pink.png +0 -0
- package/esm2020/about/about.component.mjs +0 -71
- package/esm2020/about/aca-about.module.mjs +0 -46
- package/esm2020/folder-rules/folder-rules.module.mjs +0 -115
- package/esm2020/folder-rules/manage-rules/manage-rules.smart-component.mjs +0 -261
- package/esm2020/folder-rules/rule-details/actions/rule-action-list.ui-component.mjs +0 -117
- package/esm2020/folder-rules/rule-details/actions/rule-action.ui-component.mjs +0 -351
- package/esm2020/folder-rules/rule-details/conditions/rule-composite-condition.ui-component.mjs +0 -172
- package/esm2020/folder-rules/rule-details/conditions/rule-simple-condition.ui-component.mjs +0 -234
- package/esm2020/folder-rules/rule-details/edit-rule-dialog.ui-component.mjs +0 -74
- package/esm2020/folder-rules/rule-details/options/rule-options.ui-component.mjs +0 -129
- package/esm2020/folder-rules/rule-details/rule-details.ui-component.mjs +0 -185
- package/esm2020/folder-rules/rule-details/triggers/rule-triggers.ui-component.mjs +0 -88
- package/esm2020/folder-rules/rule-details/validators/rule-actions.validator.mjs +0 -37
- package/esm2020/folder-rules/rule-list/rule-list/rule-list.ui-component.mjs +0 -164
- package/esm2020/folder-rules/rule-list/rule-list-grouping/rule-list-grouping.ui-component.mjs +0 -81
- package/esm2020/folder-rules/rule-list/rule-list-item/rule-list-item.ui-component.mjs +0 -58
- package/esm2020/folder-rules/rule-set-picker/rule-set-picker.smart-component.mjs +0 -120
- package/esm2020/folder-rules/services/actions.service.mjs +0 -114
- package/esm2020/folder-rules/services/folder-rule-sets.service.mjs +0 -225
- package/esm2020/folder-rules/services/folder-rules.service.mjs +0 -193
- package/esm2020/lib/aca-content.module.mjs +0 -299
- package/esm2020/lib/aca-content.routes.mjs +0 -359
- package/esm2020/lib/components/bulk-actions-dropdown/bulk-actions-dropdown.component.mjs +0 -83
- package/esm2020/lib/components/common/location-link/location-link.component.mjs +0 -180
- package/esm2020/lib/components/common/toggle-shared/toggle-shared.component.mjs +0 -76
- package/esm2020/lib/components/common/user-info/user-info.component.mjs +0 -47
- package/esm2020/lib/components/context-menu/context-menu-item.component.mjs +0 -62
- package/esm2020/lib/components/context-menu/context-menu-outside-event.directive.mjs +0 -63
- package/esm2020/lib/components/context-menu/context-menu-overlay.mjs +0 -32
- package/esm2020/lib/components/context-menu/context-menu.component.mjs +0 -114
- package/esm2020/lib/components/context-menu/context-menu.service.mjs +0 -99
- package/esm2020/lib/components/details/details.component.mjs +0 -147
- package/esm2020/lib/components/dl-custom-components/datatable-cell-badges/datatable-cell-badges.component.mjs +0 -71
- package/esm2020/lib/components/dl-custom-components/name-column/name-column.component.mjs +0 -101
- package/esm2020/lib/components/dl-custom-components/tags-column/tags-column.component.mjs +0 -48
- package/esm2020/lib/components/dl-custom-components/thumbnail-column/thumbnail-column.component.mjs +0 -75
- package/esm2020/lib/components/favorite-libraries/favorite-libraries.component.mjs +0 -120
- package/esm2020/lib/components/favorites/favorites.component.mjs +0 -103
- package/esm2020/lib/components/files/files.component.mjs +0 -330
- package/esm2020/lib/components/home/home.component.mjs +0 -47
- package/esm2020/lib/components/info-drawer/comments-tab/comments-tab.component.mjs +0 -59
- package/esm2020/lib/components/info-drawer/info.drawer.module.mjs +0 -73
- package/esm2020/lib/components/info-drawer/library-metadata-tab/library-metadata-form.component.mjs +0 -206
- package/esm2020/lib/components/info-drawer/library-metadata-tab/library-metadata-tab.component.mjs +0 -45
- package/esm2020/lib/components/info-drawer/metadata-tab/metadata-tab.component.mjs +0 -134
- package/esm2020/lib/components/info-drawer/versions-tab/versions-tab.component.mjs +0 -95
- package/esm2020/lib/components/knowledge-retrieval/search-ai/agents-button/agents-button.component.mjs +0 -129
- package/esm2020/lib/components/knowledge-retrieval/search-ai/search-ai-input/search-ai-input.component.mjs +0 -171
- package/esm2020/lib/components/knowledge-retrieval/search-ai/search-ai-input-container/search-ai-input-container.component.mjs +0 -82
- package/esm2020/lib/components/knowledge-retrieval/search-ai/search-ai-results/search-ai-results.component.mjs +0 -199
- package/esm2020/lib/components/knowledge-retrieval/search-ai/search-ai-utils.mjs +0 -33
- package/esm2020/lib/components/libraries/libraries.component.mjs +0 -79
- package/esm2020/lib/components/recent-files/recent-files.component.mjs +0 -82
- package/esm2020/lib/components/search/search-action-menu/search-action-menu.component.mjs +0 -64
- package/esm2020/lib/components/search/search-input/search-input.component.mjs +0 -301
- package/esm2020/lib/components/search/search-input-control/search-input-control.component.mjs +0 -94
- package/esm2020/lib/components/search/search-libraries-results/search-libraries-query-builder.service.mjs +0 -90
- package/esm2020/lib/components/search/search-libraries-results/search-libraries-results.component.mjs +0 -153
- package/esm2020/lib/components/search/search-navigation.service.mjs +0 -60
- package/esm2020/lib/components/search/search-results/search-results.component.mjs +0 -255
- package/esm2020/lib/components/search/search-results-row/search-results-row.component.mjs +0 -142
- package/esm2020/lib/components/shared-files/shared-files.component.mjs +0 -83
- package/esm2020/lib/components/shared-link-view/shared-link-view.component.mjs +0 -82
- package/esm2020/lib/components/sidenav/components/button-menu.component.mjs +0 -62
- package/esm2020/lib/components/sidenav/components/expand-menu.component.mjs +0 -67
- package/esm2020/lib/components/sidenav/components/sidenav-header.component.mjs +0 -66
- package/esm2020/lib/components/sidenav/directives/action.directive.mjs +0 -75
- package/esm2020/lib/components/sidenav/directives/active-link.directive.mjs +0 -93
- package/esm2020/lib/components/sidenav/directives/expansion-panel.directive.mjs +0 -102
- package/esm2020/lib/components/sidenav/directives/menu-panel.directive.mjs +0 -99
- package/esm2020/lib/components/sidenav/sidenav.component.mjs +0 -89
- package/esm2020/lib/components/sidenav/user-menu/user-menu.component.mjs +0 -56
- package/esm2020/lib/components/toolbar/toggle-edit-offline/toggle-edit-offline.component.mjs +0 -137
- package/esm2020/lib/components/toolbar/toggle-favorite/toggle-favorite.component.mjs +0 -86
- package/esm2020/lib/components/toolbar/toggle-favorite-library/toggle-favorite-library.component.mjs +0 -107
- package/esm2020/lib/components/toolbar/toggle-info-drawer/toggle-info-drawer.component.mjs +0 -74
- package/esm2020/lib/components/toolbar/toggle-join-library/toggle-join-library-button.component.mjs +0 -105
- package/esm2020/lib/components/toolbar/view-node/view-node.component.mjs +0 -122
- package/esm2020/lib/components/trashcan/trashcan.component.mjs +0 -68
- package/esm2020/lib/components/upload-files-dialog/upload-files-dialog.component.mjs +0 -52
- package/esm2020/lib/components/view-profile/view-profile.component.mjs +0 -193
- package/esm2020/lib/dialogs/node-template/create-from-template.dialog.mjs +0 -120
- package/esm2020/lib/directives/document-list.directive.mjs +0 -199
- package/esm2020/lib/extensions/core.extensions.module.mjs +0 -55
- package/esm2020/lib/services/content-management.service.mjs +0 -873
- package/esm2020/lib/services/content-url.service.mjs +0 -71
- package/esm2020/lib/services/modal-ai.service.mjs +0 -66
- package/esm2020/lib/services/node-actions.service.mjs +0 -600
- package/esm2020/lib/services/node-template.service.mjs +0 -144
- package/esm2020/lib/services/search-ai-navigation.service.mjs +0 -52
- package/esm2020/lib/store/app-store.module.mjs +0 -102
- package/esm2020/lib/store/effects/app.effects.mjs +0 -49
- package/esm2020/lib/store/effects/contextmenu.effects.mjs +0 -55
- package/esm2020/lib/store/effects/download.effects.mjs +0 -159
- package/esm2020/lib/store/effects/favorite.effects.mjs +0 -76
- package/esm2020/lib/store/effects/library.effects.mjs +0 -113
- package/esm2020/lib/store/effects/node.effects.mjs +0 -325
- package/esm2020/lib/store/effects/search-ai.effects.mjs +0 -57
- package/esm2020/lib/store/effects/search.effects.mjs +0 -60
- package/esm2020/lib/store/effects/template.effects.mjs +0 -121
- package/esm2020/lib/store/effects/upload.effects.mjs +0 -166
- package/esm2020/lib/store/effects/viewer.effects.mjs +0 -175
- package/esm2020/ms-office/actions/aos.actions.mjs +0 -31
- package/esm2020/ms-office/aos-extension.module.mjs +0 -52
- package/esm2020/ms-office/aos-extension.service.mjs +0 -132
- package/esm2020/ms-office/effects/aos.effects.mjs +0 -48
- package/esm2020/public-api.mjs +0 -32
- package/esm2020/viewer/lib/components/preview/preview.component.mjs +0 -236
- package/esm2020/viewer/lib/components/viewer/viewer.component.mjs +0 -240
- package/esm2020/viewer/lib/services/viewer.service.mjs +0 -226
- package/esm2020/viewer/lib/viewer.module.mjs +0 -52
- package/fesm2015/alfresco-aca-content-about.mjs.map +0 -1
- package/fesm2015/alfresco-aca-content-folder-rules.mjs +0 -2662
- package/fesm2015/alfresco-aca-content-folder-rules.mjs.map +0 -1
- package/fesm2015/alfresco-aca-content-ms-office.mjs +0 -256
- package/fesm2015/alfresco-aca-content-ms-office.mjs.map +0 -1
- package/fesm2015/alfresco-aca-content-viewer.mjs +0 -700
- package/fesm2015/alfresco-aca-content-viewer.mjs.map +0 -1
- package/fesm2015/alfresco-aca-content.mjs +0 -9835
- package/fesm2015/alfresco-aca-content.mjs.map +0 -1
- package/fesm2020/alfresco-aca-content-about.mjs +0 -193
- package/fesm2020/alfresco-aca-content-about.mjs.map +0 -1
- package/fesm2020/alfresco-aca-content-folder-rules.mjs.map +0 -1
- package/fesm2020/alfresco-aca-content-ms-office.mjs.map +0 -1
- package/fesm2020/alfresco-aca-content-viewer.mjs.map +0 -1
- package/fesm2020/alfresco-aca-content.mjs +0 -9934
- package/fesm2020/alfresco-aca-content.mjs.map +0 -1
- /package/{esm2020 → esm2022}/about/alfresco-aca-content-about.mjs +0 -0
- /package/{esm2020 → esm2022}/about/dev-mode.tokens.mjs +0 -0
- /package/{esm2020 → esm2022}/about/package-json.token.mjs +0 -0
- /package/{esm2020 → esm2022}/about/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/alfresco-aca-content.mjs +0 -0
- /package/{esm2020 → esm2022}/folder-rules/alfresco-aca-content-folder-rules.mjs +0 -0
- /package/{esm2020 → esm2022}/folder-rules/folder-rules.rules.mjs +0 -0
- /package/{esm2020 → esm2022}/folder-rules/model/action-parameter-constraint.model.mjs +0 -0
- /package/{esm2020 → esm2022}/folder-rules/model/rule-action.model.mjs +0 -0
- /package/{esm2020 → esm2022}/folder-rules/model/rule-composite-condition.model.mjs +0 -0
- /package/{esm2020 → esm2022}/folder-rules/model/rule-grouping-item.model.mjs +0 -0
- /package/{esm2020 → esm2022}/folder-rules/model/rule-set.model.mjs +0 -0
- /package/{esm2020 → esm2022}/folder-rules/model/rule-simple-condition.model.mjs +0 -0
- /package/{esm2020 → esm2022}/folder-rules/model/rule.model.mjs +0 -0
- /package/{esm2020 → esm2022}/folder-rules/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/folder-rules/rule-details/conditions/rule-condition-comparators.mjs +0 -0
- /package/{esm2020 → esm2022}/folder-rules/rule-details/conditions/rule-condition-fields.mjs +0 -0
- /package/{esm2020 → esm2022}/folder-rules/rule-details/validators/rule-composite-condition.validator.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/common/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/context-menu/direction.token.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/context-menu/interfaces.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/search/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/sidenav/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/toolbar/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/components/view-profile/view-profile.guard.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/store/effects.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/store/initial-state.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/store/reducers/app.reducer.mjs +0 -0
- /package/{esm2020 → esm2022}/ms-office/alfresco-aca-content-ms-office.mjs +0 -0
- /package/{esm2020 → esm2022}/ms-office/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/viewer/alfresco-aca-content-viewer.mjs +0 -0
- /package/{esm2020 → esm2022}/viewer/public-api.mjs +0 -0
|
@@ -0,0 +1,77 @@
|
|
|
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 { Component, Input, ViewEncapsulation } from '@angular/core';
|
|
25
|
+
import { MatButtonModule } from '@angular/material/button';
|
|
26
|
+
import { MatIconModule } from '@angular/material/icon';
|
|
27
|
+
import { SearchAiInputComponent } from '../search-ai-input/search-ai-input.component';
|
|
28
|
+
import { MatDividerModule } from '@angular/material/divider';
|
|
29
|
+
import { SearchAiNavigationService } from '../../../../services/search-ai-navigation.service';
|
|
30
|
+
import { SearchAiService } from '@alfresco/adf-content-services';
|
|
31
|
+
import { TranslateModule } from '@ngx-translate/core';
|
|
32
|
+
import { AsyncPipe } from '@angular/common';
|
|
33
|
+
import { Router } from '@angular/router';
|
|
34
|
+
import * as i0 from "@angular/core";
|
|
35
|
+
import * as i1 from "@alfresco/adf-content-services";
|
|
36
|
+
import * as i2 from "../../../../services/search-ai-navigation.service";
|
|
37
|
+
import * as i3 from "@angular/router";
|
|
38
|
+
import * as i4 from "@angular/material/icon";
|
|
39
|
+
import * as i5 from "@angular/material/divider";
|
|
40
|
+
import * as i6 from "@angular/material/button";
|
|
41
|
+
import * as i7 from "@ngx-translate/core";
|
|
42
|
+
class SearchAiInputContainerComponent {
|
|
43
|
+
searchAiService;
|
|
44
|
+
searchNavigationService;
|
|
45
|
+
router;
|
|
46
|
+
placeholder = 'KNOWLEDGE_RETRIEVAL.SEARCH.SEARCH_INPUT.DEFAULT_PLACEHOLDER';
|
|
47
|
+
agentId;
|
|
48
|
+
usedInAiResultsPage;
|
|
49
|
+
inputState$;
|
|
50
|
+
isKnowledgeRetrievalPage = false;
|
|
51
|
+
constructor(searchAiService, searchNavigationService, router) {
|
|
52
|
+
this.searchAiService = searchAiService;
|
|
53
|
+
this.searchNavigationService = searchNavigationService;
|
|
54
|
+
this.router = router;
|
|
55
|
+
}
|
|
56
|
+
ngOnInit() {
|
|
57
|
+
this.isKnowledgeRetrievalPage = this.router.url.startsWith('/knowledge-retrieval');
|
|
58
|
+
this.inputState$ = this.searchAiService.toggleSearchAiInput$;
|
|
59
|
+
}
|
|
60
|
+
leaveSearchInput() {
|
|
61
|
+
this.searchNavigationService.navigateToPreviousRouteOrCloseInput();
|
|
62
|
+
}
|
|
63
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: SearchAiInputContainerComponent, deps: [{ token: i1.SearchAiService }, { token: i2.SearchAiNavigationService }, { token: i3.Router }], target: i0.ɵɵFactoryTarget.Component });
|
|
64
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: SearchAiInputContainerComponent, isStandalone: true, selector: "aca-search-ai-input-container", inputs: { placeholder: "placeholder", agentId: "agentId", usedInAiResultsPage: "usedInAiResultsPage" }, ngImport: i0, template: "<aca-search-ai-input\n [searchTerm]=\"(inputState$ | async).searchTerm\"\n [placeholder]=\"placeholder\"\n [agentId]=\"agentId\"\n [usedInAiResultsPage]=\"usedInAiResultsPage\" />\n<mat-divider\n [vertical]=\"true\"\n class=\"aca-search-ai-input-container-divider\" />\n<button\n mat-icon-button\n (click)=\"leaveSearchInput()\"\n data-automation-id=\"aca-search-ai-input-container-leaving-search-button\"\n [title]=\"(isKnowledgeRetrievalPage ? 'KNOWLEDGE_RETRIEVAL.SEARCH.SEARCH_INPUT.HIDE_ANSWER' : 'KNOWLEDGE_RETRIEVAL.SEARCH.SEARCH_INPUT.HIDE_INPUT') | translate\"\n class=\"aca-search-ai-input-container-close\">\n <mat-icon>close</mat-icon>\n</button>\n", styles: ["aca-search-ai-input-container{display:flex;flex-direction:row;flex:1;align-items:center;width:100%}aca-search-ai-input-container .aca-search-ai-input-container-divider{height:24px;margin-left:30px;margin-right:7px;background:var(--adf-theme-foreground-text-color-025)}aca-search-ai-input-container .aca-search-ai-input-container-close{display:flex}\n"], dependencies: [{ kind: "component", type: SearchAiInputComponent, selector: "aca-search-ai-input", inputs: ["placeholder", "agentId", "usedInAiResultsPage", "searchTerm"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatDividerModule }, { kind: "component", type: i5.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i6.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i7.TranslatePipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }], encapsulation: i0.ViewEncapsulation.None });
|
|
65
|
+
}
|
|
66
|
+
export { SearchAiInputContainerComponent };
|
|
67
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: SearchAiInputContainerComponent, decorators: [{
|
|
68
|
+
type: Component,
|
|
69
|
+
args: [{ standalone: true, imports: [SearchAiInputComponent, MatIconModule, MatDividerModule, MatButtonModule, TranslateModule, AsyncPipe], selector: 'aca-search-ai-input-container', encapsulation: ViewEncapsulation.None, template: "<aca-search-ai-input\n [searchTerm]=\"(inputState$ | async).searchTerm\"\n [placeholder]=\"placeholder\"\n [agentId]=\"agentId\"\n [usedInAiResultsPage]=\"usedInAiResultsPage\" />\n<mat-divider\n [vertical]=\"true\"\n class=\"aca-search-ai-input-container-divider\" />\n<button\n mat-icon-button\n (click)=\"leaveSearchInput()\"\n data-automation-id=\"aca-search-ai-input-container-leaving-search-button\"\n [title]=\"(isKnowledgeRetrievalPage ? 'KNOWLEDGE_RETRIEVAL.SEARCH.SEARCH_INPUT.HIDE_ANSWER' : 'KNOWLEDGE_RETRIEVAL.SEARCH.SEARCH_INPUT.HIDE_INPUT') | translate\"\n class=\"aca-search-ai-input-container-close\">\n <mat-icon>close</mat-icon>\n</button>\n", styles: ["aca-search-ai-input-container{display:flex;flex-direction:row;flex:1;align-items:center;width:100%}aca-search-ai-input-container .aca-search-ai-input-container-divider{height:24px;margin-left:30px;margin-right:7px;background:var(--adf-theme-foreground-text-color-025)}aca-search-ai-input-container .aca-search-ai-input-container-close{display:flex}\n"] }]
|
|
70
|
+
}], ctorParameters: function () { return [{ type: i1.SearchAiService }, { type: i2.SearchAiNavigationService }, { type: i3.Router }]; }, propDecorators: { placeholder: [{
|
|
71
|
+
type: Input
|
|
72
|
+
}], agentId: [{
|
|
73
|
+
type: Input
|
|
74
|
+
}], usedInAiResultsPage: [{
|
|
75
|
+
type: Input
|
|
76
|
+
}] } });
|
|
77
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWFpLWlucHV0LWNvbnRhaW5lci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY2EtY29udGVudC9zcmMvbGliL2NvbXBvbmVudHMva25vd2xlZGdlLXJldHJpZXZhbC9zZWFyY2gtYWkvc2VhcmNoLWFpLWlucHV0LWNvbnRhaW5lci9zZWFyY2gtYWktaW5wdXQtY29udGFpbmVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FjYS1jb250ZW50L3NyYy9saWIvY29tcG9uZW50cy9rbm93bGVkZ2UtcmV0cmlldmFsL3NlYXJjaC1haS9zZWFyY2gtYWktaW5wdXQtY29udGFpbmVyL3NlYXJjaC1haS1pbnB1dC1jb250YWluZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FzQkc7QUFFSCxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM1RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ3RGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzdELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBQzlGLE9BQU8sRUFBRSxlQUFlLEVBQXNCLE1BQU0sZ0NBQWdDLENBQUM7QUFDckYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRXRELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM1QyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7Ozs7Ozs7OztBQUV6QyxNQVFhLCtCQUErQjtJQVd0QjtJQUEwQztJQUE0RDtJQVQxSCxXQUFXLEdBQUcsNkRBQTZELENBQUM7SUFFNUUsT0FBTyxDQUFTO0lBRWhCLG1CQUFtQixDQUFVO0lBRTdCLFdBQVcsQ0FBaUM7SUFDNUMsd0JBQXdCLEdBQUcsS0FBSyxDQUFDO0lBRWpDLFlBQW9CLGVBQWdDLEVBQVUsdUJBQWtELEVBQVUsTUFBYztRQUFwSCxvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7UUFBVSw0QkFBdUIsR0FBdkIsdUJBQXVCLENBQTJCO1FBQVUsV0FBTSxHQUFOLE1BQU0sQ0FBUTtJQUFHLENBQUM7SUFFNUksUUFBUTtRQUNOLElBQUksQ0FBQyx3QkFBd0IsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsc0JBQXNCLENBQUMsQ0FBQztRQUNuRixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsb0JBQW9CLENBQUM7SUFDL0QsQ0FBQztJQUVELGdCQUFnQjtRQUNkLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxtQ0FBbUMsRUFBRSxDQUFDO0lBQ3JFLENBQUM7dUdBcEJVLCtCQUErQjsyRkFBL0IsK0JBQStCLGlNQzVDNUMsa3FCQWdCQSx3WkRzQlksc0JBQXNCLHdJQUFFLGFBQWEsbUxBQUUsZ0JBQWdCLGtJQUFFLGVBQWUsMkxBQUUsZUFBZSx1RkFBRSxTQUFTOztTQU1uRywrQkFBK0I7MkZBQS9CLCtCQUErQjtrQkFSM0MsU0FBUztpQ0FDSSxJQUFJLFdBQ1AsQ0FBQyxzQkFBc0IsRUFBRSxhQUFhLEVBQUUsZ0JBQWdCLEVBQUUsZUFBZSxFQUFFLGVBQWUsRUFBRSxTQUFTLENBQUMsWUFDckcsK0JBQStCLGlCQUcxQixpQkFBaUIsQ0FBQyxJQUFJO21LQUlyQyxXQUFXO3NCQURWLEtBQUs7Z0JBR04sT0FBTztzQkFETixLQUFLO2dCQUdOLG1CQUFtQjtzQkFEbEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogQ29weXJpZ2h0IMKpIDIwMDUtMjAyNCBIeWxhbmQgU29mdHdhcmUsIEluYy4gYW5kIGl0cyBhZmZpbGlhdGVzLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIEFsZnJlc2NvIEV4YW1wbGUgQ29udGVudCBBcHBsaWNhdGlvblxuICpcbiAqIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb24uXG4gKiBJZiB0aGUgc29mdHdhcmUgd2FzIHB1cmNoYXNlZCB1bmRlciBhIHBhaWQgQWxmcmVzY28gbGljZW5zZSwgdGhlIHRlcm1zIG9mXG4gKiB0aGUgcGFpZCBsaWNlbnNlIGFncmVlbWVudCB3aWxsIHByZXZhaWwuIE90aGVyd2lzZSwgdGhlIHNvZnR3YXJlIGlzXG4gKiBwcm92aWRlZCB1bmRlciB0aGUgZm9sbG93aW5nIG9wZW4gc291cmNlIGxpY2Vuc2UgdGVybXM6XG4gKlxuICogVGhlIEFsZnJlc2NvIEV4YW1wbGUgQ29udGVudCBBcHBsaWNhdGlvbiBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5XG4gKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnlcbiAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yXG4gKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLlxuICpcbiAqIFRoZSBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb24gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCxcbiAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mXG4gKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGVcbiAqIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLlxuICpcbiAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZVxuICogZnJvbSBIeWxhbmQgU29mdHdhcmUuIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi5cbiAqL1xuXG5pbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHsgU2VhcmNoQWlJbnB1dENvbXBvbmVudCB9IGZyb20gJy4uL3NlYXJjaC1haS1pbnB1dC9zZWFyY2gtYWktaW5wdXQuY29tcG9uZW50JztcbmltcG9ydCB7IE1hdERpdmlkZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaXZpZGVyJztcbmltcG9ydCB7IFNlYXJjaEFpTmF2aWdhdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9zZXJ2aWNlcy9zZWFyY2gtYWktbmF2aWdhdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IFNlYXJjaEFpU2VydmljZSwgU2VhcmNoQWlJbnB1dFN0YXRlIH0gZnJvbSAnQGFsZnJlc2NvL2FkZi1jb250ZW50LXNlcnZpY2VzJztcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQXN5bmNQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbU2VhcmNoQWlJbnB1dENvbXBvbmVudCwgTWF0SWNvbk1vZHVsZSwgTWF0RGl2aWRlck1vZHVsZSwgTWF0QnV0dG9uTW9kdWxlLCBUcmFuc2xhdGVNb2R1bGUsIEFzeW5jUGlwZV0sXG4gIHNlbGVjdG9yOiAnYWNhLXNlYXJjaC1haS1pbnB1dC1jb250YWluZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vc2VhcmNoLWFpLWlucHV0LWNvbnRhaW5lci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3NlYXJjaC1haS1pbnB1dC1jb250YWluZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxufSlcbmV4cG9ydCBjbGFzcyBTZWFyY2hBaUlucHV0Q29udGFpbmVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQElucHV0KClcbiAgcGxhY2Vob2xkZXIgPSAnS05PV0xFREdFX1JFVFJJRVZBTC5TRUFSQ0guU0VBUkNIX0lOUFVULkRFRkFVTFRfUExBQ0VIT0xERVInO1xuICBASW5wdXQoKVxuICBhZ2VudElkOiBzdHJpbmc7XG4gIEBJbnB1dCgpXG4gIHVzZWRJbkFpUmVzdWx0c1BhZ2U6IGJvb2xlYW47XG5cbiAgaW5wdXRTdGF0ZSQ6IE9ic2VydmFibGU8U2VhcmNoQWlJbnB1dFN0YXRlPjtcbiAgaXNLbm93bGVkZ2VSZXRyaWV2YWxQYWdlID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBzZWFyY2hBaVNlcnZpY2U6IFNlYXJjaEFpU2VydmljZSwgcHJpdmF0ZSBzZWFyY2hOYXZpZ2F0aW9uU2VydmljZTogU2VhcmNoQWlOYXZpZ2F0aW9uU2VydmljZSwgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcikge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmlzS25vd2xlZGdlUmV0cmlldmFsUGFnZSA9IHRoaXMucm91dGVyLnVybC5zdGFydHNXaXRoKCcva25vd2xlZGdlLXJldHJpZXZhbCcpO1xuICAgIHRoaXMuaW5wdXRTdGF0ZSQgPSB0aGlzLnNlYXJjaEFpU2VydmljZS50b2dnbGVTZWFyY2hBaUlucHV0JDtcbiAgfVxuXG4gIGxlYXZlU2VhcmNoSW5wdXQoKTogdm9pZCB7XG4gICAgdGhpcy5zZWFyY2hOYXZpZ2F0aW9uU2VydmljZS5uYXZpZ2F0ZVRvUHJldmlvdXNSb3V0ZU9yQ2xvc2VJbnB1dCgpO1xuICB9XG59XG4iLCI8YWNhLXNlYXJjaC1haS1pbnB1dFxuICBbc2VhcmNoVGVybV09XCIoaW5wdXRTdGF0ZSQgfCBhc3luYykuc2VhcmNoVGVybVwiXG4gIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXG4gIFthZ2VudElkXT1cImFnZW50SWRcIlxuICBbdXNlZEluQWlSZXN1bHRzUGFnZV09XCJ1c2VkSW5BaVJlc3VsdHNQYWdlXCIgLz5cbjxtYXQtZGl2aWRlclxuICBbdmVydGljYWxdPVwidHJ1ZVwiXG4gIGNsYXNzPVwiYWNhLXNlYXJjaC1haS1pbnB1dC1jb250YWluZXItZGl2aWRlclwiIC8+XG48YnV0dG9uXG4gIG1hdC1pY29uLWJ1dHRvblxuICAoY2xpY2spPVwibGVhdmVTZWFyY2hJbnB1dCgpXCJcbiAgZGF0YS1hdXRvbWF0aW9uLWlkPVwiYWNhLXNlYXJjaC1haS1pbnB1dC1jb250YWluZXItbGVhdmluZy1zZWFyY2gtYnV0dG9uXCJcbiAgW3RpdGxlXT1cIihpc0tub3dsZWRnZVJldHJpZXZhbFBhZ2UgPyAnS05PV0xFREdFX1JFVFJJRVZBTC5TRUFSQ0guU0VBUkNIX0lOUFVULkhJREVfQU5TV0VSJyA6ICdLTk9XTEVER0VfUkVUUklFVkFMLlNFQVJDSC5TRUFSQ0hfSU5QVVQuSElERV9JTlBVVCcpIHwgdHJhbnNsYXRlXCJcbiAgY2xhc3M9XCJhY2Etc2VhcmNoLWFpLWlucHV0LWNvbnRhaW5lci1jbG9zZVwiPlxuICA8bWF0LWljb24+Y2xvc2U8L21hdC1pY29uPlxuPC9idXR0b24+XG4iXX0=
|
|
@@ -0,0 +1,207 @@
|
|
|
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 { Component, ViewEncapsulation } from '@angular/core';
|
|
25
|
+
import { ActivatedRoute } from '@angular/router';
|
|
26
|
+
import { PageComponent, PageLayoutComponent, ToolbarActionComponent, ToolbarComponent } from '@alfresco/aca-shared';
|
|
27
|
+
import { concatMap, delay, filter, finalize, retryWhen, skipWhile, switchMap } from 'rxjs/operators';
|
|
28
|
+
import { AvatarComponent, ClipboardService, EmptyContentComponent, ThumbnailService, ToolbarModule, UnsavedChangesGuard } from '@alfresco/adf-core';
|
|
29
|
+
import { CommonModule } from '@angular/common';
|
|
30
|
+
import { SearchAiInputContainerComponent } from '../search-ai-input-container/search-ai-input-container.component';
|
|
31
|
+
import { TranslateModule, TranslateService } from '@ngx-translate/core';
|
|
32
|
+
import { NodesApiService } from '@alfresco/adf-content-services';
|
|
33
|
+
import { forkJoin, of, throwError } from 'rxjs';
|
|
34
|
+
import { MatIconModule } from '@angular/material/icon';
|
|
35
|
+
import { MatButtonModule } from '@angular/material/button';
|
|
36
|
+
import { MatListModule } from '@angular/material/list';
|
|
37
|
+
import { MatCardModule } from '@angular/material/card';
|
|
38
|
+
import { MatTooltipModule } from '@angular/material/tooltip';
|
|
39
|
+
import { ModalAiService } from '../../../../services/modal-ai.service';
|
|
40
|
+
import { ViewNodeAction } from '@alfresco/aca-shared/store';
|
|
41
|
+
import { ViewerService } from '@alfresco/aca-content/viewer';
|
|
42
|
+
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
43
|
+
import * as i0 from "@angular/core";
|
|
44
|
+
import * as i1 from "@angular/router";
|
|
45
|
+
import * as i2 from "@alfresco/adf-core";
|
|
46
|
+
import * as i3 from "@alfresco/adf-content-services";
|
|
47
|
+
import * as i4 from "@ngx-translate/core";
|
|
48
|
+
import * as i5 from "../../../../services/modal-ai.service";
|
|
49
|
+
import * as i6 from "@alfresco/aca-content/viewer";
|
|
50
|
+
import * as i7 from "@angular/common";
|
|
51
|
+
import * as i8 from "@angular/material/icon";
|
|
52
|
+
import * as i9 from "@angular/material/button";
|
|
53
|
+
import * as i10 from "@angular/material/divider";
|
|
54
|
+
class SearchAiResultsComponent extends PageComponent {
|
|
55
|
+
route;
|
|
56
|
+
clipboardService;
|
|
57
|
+
thumbnailService;
|
|
58
|
+
nodesApiService;
|
|
59
|
+
translateService;
|
|
60
|
+
unsavedChangesGuard;
|
|
61
|
+
modalAiService;
|
|
62
|
+
viewerService;
|
|
63
|
+
_agentId;
|
|
64
|
+
_hasAnsweringError = false;
|
|
65
|
+
_hasError = false;
|
|
66
|
+
_loading = false;
|
|
67
|
+
_mimeTypeIconsByNodeId = {};
|
|
68
|
+
_nodes = [];
|
|
69
|
+
openedViewer = false;
|
|
70
|
+
_selectedNodesState;
|
|
71
|
+
_searchQuery = '';
|
|
72
|
+
_queryAnswer;
|
|
73
|
+
get agentId() {
|
|
74
|
+
return this._agentId;
|
|
75
|
+
}
|
|
76
|
+
get hasAnsweringError() {
|
|
77
|
+
return this._hasAnsweringError;
|
|
78
|
+
}
|
|
79
|
+
get hasError() {
|
|
80
|
+
return this._hasError;
|
|
81
|
+
}
|
|
82
|
+
get loading() {
|
|
83
|
+
return this._loading;
|
|
84
|
+
}
|
|
85
|
+
get mimeTypeIconsByNodeId() {
|
|
86
|
+
return this._mimeTypeIconsByNodeId;
|
|
87
|
+
}
|
|
88
|
+
get nodes() {
|
|
89
|
+
return this._nodes;
|
|
90
|
+
}
|
|
91
|
+
get queryAnswer() {
|
|
92
|
+
return this._queryAnswer;
|
|
93
|
+
}
|
|
94
|
+
get searchQuery() {
|
|
95
|
+
return this._searchQuery;
|
|
96
|
+
}
|
|
97
|
+
constructor(route, clipboardService, thumbnailService, nodesApiService, translateService, unsavedChangesGuard, modalAiService, viewerService) {
|
|
98
|
+
super();
|
|
99
|
+
this.route = route;
|
|
100
|
+
this.clipboardService = clipboardService;
|
|
101
|
+
this.thumbnailService = thumbnailService;
|
|
102
|
+
this.nodesApiService = nodesApiService;
|
|
103
|
+
this.translateService = translateService;
|
|
104
|
+
this.unsavedChangesGuard = unsavedChangesGuard;
|
|
105
|
+
this.modalAiService = modalAiService;
|
|
106
|
+
this.viewerService = viewerService;
|
|
107
|
+
}
|
|
108
|
+
ngOnInit() {
|
|
109
|
+
this.viewerService.customNodesOrder = JSON.parse(this.userPreferencesService.get('aiReferences', '[]'));
|
|
110
|
+
this.route.queryParams
|
|
111
|
+
.pipe(filter((params) => {
|
|
112
|
+
const openedViewerPreviously = this.openedViewer;
|
|
113
|
+
this.openedViewer = !!params.location;
|
|
114
|
+
return !this.openedViewer && (!openedViewerPreviously || !this.queryAnswer);
|
|
115
|
+
}), takeUntilDestroyed(this.destroyRef))
|
|
116
|
+
.subscribe((params) => {
|
|
117
|
+
this._agentId = params.agentId;
|
|
118
|
+
this._searchQuery = params.query ? decodeURIComponent(params.query) : '';
|
|
119
|
+
const selectedNodesState = this.userPreferencesService.get('knowledgeRetrievalNodes');
|
|
120
|
+
if (!this.searchQuery || !this.agentId || !selectedNodesState) {
|
|
121
|
+
this._hasError = true;
|
|
122
|
+
return;
|
|
123
|
+
}
|
|
124
|
+
this._selectedNodesState = JSON.parse(selectedNodesState);
|
|
125
|
+
this.performAiSearch();
|
|
126
|
+
});
|
|
127
|
+
super.ngOnInit();
|
|
128
|
+
this.unsavedChangesGuard.unsaved = this.route.snapshot?.queryParams?.query?.length > 0 && !this.hasError;
|
|
129
|
+
this.unsavedChangesGuard.data = {
|
|
130
|
+
descriptionText: 'KNOWLEDGE_RETRIEVAL.SEARCH.DISCARD_CHANGES.CONVERSATION_DISCARDED',
|
|
131
|
+
confirmButtonText: 'KNOWLEDGE_RETRIEVAL.SEARCH.DISCARD_CHANGES.OKAY',
|
|
132
|
+
headerText: 'KNOWLEDGE_RETRIEVAL.SEARCH.DISCARD_CHANGES.WARNING'
|
|
133
|
+
};
|
|
134
|
+
}
|
|
135
|
+
copyResponseToClipboard() {
|
|
136
|
+
this.clipboardService.copyContentToClipboard(this.queryAnswer.answer, this.translateService.instant('KNOWLEDGE_RETRIEVAL.SEARCH.RESULTS_PAGE.COPY_MESSAGE'));
|
|
137
|
+
}
|
|
138
|
+
checkUnsavedChangesAndSearch() {
|
|
139
|
+
this.modalAiService.openUnsavedChangesModal(() => this.performAiSearch());
|
|
140
|
+
}
|
|
141
|
+
performAiSearch() {
|
|
142
|
+
this._loading = true;
|
|
143
|
+
this.searchAiService
|
|
144
|
+
.ask({
|
|
145
|
+
question: this.searchQuery,
|
|
146
|
+
nodeIds: this._selectedNodesState?.nodes?.length ? this._selectedNodesState.nodes.map((node) => node.entry.id) : [],
|
|
147
|
+
agentId: this._agentId
|
|
148
|
+
})
|
|
149
|
+
.pipe(switchMap((response) => this.searchAiService.getAnswer(response.questionId)), switchMap((response) => {
|
|
150
|
+
if (!response.entry?.answer) {
|
|
151
|
+
return throwError((e) => e);
|
|
152
|
+
}
|
|
153
|
+
this._queryAnswer = response.entry;
|
|
154
|
+
return forkJoin(this.queryAnswer.references.map((reference) => this.nodesApiService.getNode(reference.referenceId)));
|
|
155
|
+
}), retryWhen((errors) => this.aiSearchRetryWhen(errors)), finalize(() => (this._loading = false)), takeUntilDestroyed(this.destroyRef))
|
|
156
|
+
.subscribe((nodes) => {
|
|
157
|
+
nodes.forEach((node) => {
|
|
158
|
+
this._mimeTypeIconsByNodeId[node.id] = this.thumbnailService.getMimeTypeIcon(node.content?.mimeType);
|
|
159
|
+
});
|
|
160
|
+
this._nodes = nodes;
|
|
161
|
+
const nodesIds = nodes.map((node) => node.id);
|
|
162
|
+
this.viewerService.customNodesOrder = nodesIds;
|
|
163
|
+
this.userPreferencesService.set('aiReferences', JSON.stringify(nodesIds));
|
|
164
|
+
}, () => (this._hasAnsweringError = true));
|
|
165
|
+
}
|
|
166
|
+
openFile(id) {
|
|
167
|
+
this.store.dispatch(new ViewNodeAction(id, {
|
|
168
|
+
location: this.router.url
|
|
169
|
+
}));
|
|
170
|
+
}
|
|
171
|
+
aiSearchRetryWhen(errors) {
|
|
172
|
+
this._hasAnsweringError = false;
|
|
173
|
+
const delayBetweenRetries = 3000;
|
|
174
|
+
const maxRetries = 9;
|
|
175
|
+
return errors.pipe(skipWhile(() => this.hasAnsweringError), delay(delayBetweenRetries), concatMap((e, index) => {
|
|
176
|
+
if (index === maxRetries) {
|
|
177
|
+
this._hasAnsweringError = true;
|
|
178
|
+
this._loading = false;
|
|
179
|
+
return throwError(e);
|
|
180
|
+
}
|
|
181
|
+
return of(null);
|
|
182
|
+
}));
|
|
183
|
+
}
|
|
184
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: SearchAiResultsComponent, deps: [{ token: i1.ActivatedRoute }, { token: i2.ClipboardService }, { token: i2.ThumbnailService }, { token: i3.NodesApiService }, { token: i4.TranslateService }, { token: i2.UnsavedChangesGuard }, { token: i5.ModalAiService }, { token: i6.ViewerService }], target: i0.ɵɵFactoryTarget.Component });
|
|
185
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: SearchAiResultsComponent, isStandalone: true, selector: "aca-search-ai-results", host: { classAttribute: "aca-search-ai-results" }, usesInheritance: true, ngImport: i0, template: "<aca-page-layout>\n <aca-search-ai-input-container\n class=\"aca-page-layout-header\"\n placeholder=\"KNOWLEDGE_RETRIEVAL.SEARCH.RESULTS_PAGE.QUERY_INPUT_PLACEHOLDER\"\n [agentId]=\"agentId\"\n [usedInAiResultsPage]=\"true\"\n *ngIf=\"!hasError && agentId\" />\n <div\n class=\"aca-page-layout-content\"\n *ngIf=\"!hasError\">\n <div class=\"aca-search-ai-results-container\">\n <div\n class=\"aca-search-ai-results-container-query\"\n data-automation-id=\"aca-search-ai-results-query\">\n {{ searchQuery }}\n </div>\n <div\n class=\"aca-search-ai-response-container\"\n [class.aca-search-ai-response-container-error]=\"hasAnsweringError\">\n <ng-container *ngIf=\"!loading else skeleton\">\n <div\n class=\"aca-search-ai-response-container-body\"\n *ngIf=\"!hasAnsweringError\">\n <div\n class=\"aca-search-ai-response-container-body-response\"\n data-automation-id=\"aca-search-ai-results-response\">\n {{ queryAnswer?.answer }}\n </div>\n <button\n class=\"aca-search-ai-response-container-body-response-action aca-search-ai-response-container-body-response-action-regeneration\"\n mat-icon-button\n (click)=\"checkUnsavedChangesAndSearch()\"\n data-automation-id=\"aca-search-ai-results-regeneration-button\"\n [title]=\"'KNOWLEDGE_RETRIEVAL.SEARCH.RESULTS_PAGE.REGENERATION_BUTTON_LABEL' | translate\">\n <mat-icon>cached</mat-icon>\n </button>\n <button\n class=\"aca-search-ai-response-container-body-response-action\"\n mat-icon-button\n (click)=\"copyResponseToClipboard()\"\n data-automation-id=\"aca-search-ai-results-copying-button\"\n [title]=\"'KNOWLEDGE_RETRIEVAL.SEARCH.RESULTS_PAGE.COPY_BUTTON_LABEL' | translate\">\n <mat-icon>copy</mat-icon>\n </button>\n <ng-container *ngIf=\"nodes?.length\">\n <mat-divider class=\"aca-search-ai-response-container-body-divider\" />\n <div class=\"aca-search-ai-response-container-body-references-container\">\n <p class=\"aca-search-ai-response-container-body-references-container-header\">\n {{ 'KNOWLEDGE_RETRIEVAL.SEARCH.RESULTS_PAGE.REFERENCED_DOCUMENTS_HEADER' | translate }}\n </p>\n <div class=\"aca-search-ai-response-container-body-references-container-documents\">\n <a\n class=\"aca-search-ai-response-container-body-references-container-documents-document\"\n *ngFor=\"let node of nodes\"\n [attr.data-automation-id]=\"'aca-search-ai-results-' + node.id + '-document'\"\n (click)=\"openFile(node.id)\"\n (keyup.enter)=\"openFile(node.id)\"\n tabindex=\"0\">\n <mat-icon\n mat-list-icon\n class=\"aca-search-ai-response-container-body-references-container-documents-document-icon\">\n <img [alt]=\"node.content?.mimeType\" [src]=\"mimeTypeIconsByNodeId[node.id]\"/>\n </mat-icon>\n <div class=\"aca-search-ai-response-container-body-references-container-documents-document-name\">\n {{ node.name }}\n </div>\n </a>\n </div>\n </div>\n </ng-container>\n </div>\n <div\n *ngIf=\"hasAnsweringError\"\n class=\"aca-search-ai-response-container-error-message\">\n {{ 'KNOWLEDGE_RETRIEVAL.SEARCH.ERRORS.LOADING_ERROR' | translate }}\n <button\n mat-flat-button\n (click)=\"performAiSearch()\"\n class=\"aca-search-ai-response-container-error-message-regeneration-button\"\n data-automation-id=\"aca-search-ai-results-error-regeneration-button\">\n <mat-icon class=\"aca-search-ai-response-container-error-message-regeneration-button-icon\">cached</mat-icon>\n {{ 'KNOWLEDGE_RETRIEVAL.SEARCH.RESULTS_PAGE.REGENERATION_BUTTON_LABEL' | translate }}\n </button>\n </div>\n </ng-container>\n </div>\n </div>\n </div>\n <adf-empty-content\n class=\"aca-page-layout-content\"\n icon=\"star\"\n title=\"KNOWLEDGE_RETRIEVAL.SEARCH.ERRORS.PAGE_NOT_AVAILABLE_ERROR\"\n *ngIf=\"hasError\" />\n</aca-page-layout>\n\n<ng-template #skeleton>\n <div class=\"adf-skeleton\"></div>\n <div class=\"adf-skeleton\"></div>\n <div class=\"adf-skeleton adf-skeleton-half\"></div>\n</ng-template>\n", styles: [".aca-search-ai-results aca-page-layout .aca-page-layout-content{display:flex;justify-content:center;align-items:center;height:100%;width:100%;background-color:#fff;border-top:1px solid var(--theme-grey-background-color);padding-top:28px}.aca-search-ai-results aca-page-layout .aca-page-layout-content .aca-search-ai-results-container{display:flex;flex-direction:column;height:100%;overflow-y:auto;padding-right:24%;padding-left:24%;min-width:51%}.aca-search-ai-results aca-page-layout .aca-page-layout-content .aca-search-ai-results-container-query{border-radius:12px;padding:20px 15px 19px;background:var(--theme-card-background-grey-color)}.aca-search-ai-results aca-page-layout .aca-page-layout-content .aca-search-ai-response-container{padding:18px 20px;display:flex;flex-direction:column;border:1px solid var(--adf-card-view-border-color);border-radius:12px;margin:16px 0 75px}.aca-search-ai-results aca-page-layout .aca-page-layout-content .aca-search-ai-response-container-references-container-header{padding-left:8px}.aca-search-ai-results aca-page-layout .aca-page-layout-content .aca-search-ai-response-container .adf-skeleton{position:relative;background-image:linear-gradient(to left,var(--theme-light-grey-1-color) 0%,var(--theme-light-grey-2-color) 20%,var(--theme-light-grey-3-color) 40%,var(--theme-light-grey-1-color) 100%);background-size:200%;display:inline-block;height:1em;overflow:hidden;width:100%;margin-bottom:.5rem;border-radius:.25rem}.aca-search-ai-results aca-page-layout .aca-page-layout-content .aca-search-ai-response-container .adf-skeleton-half{width:50%;margin-bottom:8px}.aca-search-ai-results aca-page-layout .aca-page-layout-content .aca-search-ai-response-container .adf-skeleton:after{position:absolute;inset:0;transform:translate(-100%);background-image:linear-gradient(90deg,#fff0 0,#fff3 20%,#ffffff80 60%,#fff0);animation:shimmer 2s infinite;content:\"\"}@keyframes shimmer{to{transform:translate(100%)}}.aca-search-ai-results aca-page-layout .aca-page-layout-content .aca-search-ai-response-container-error{border-color:var(--adf-error-color);padding:32px 18px}.aca-search-ai-results aca-page-layout .aca-page-layout-content .aca-search-ai-response-container-error-message{display:flex;justify-content:space-between;align-items:center}.aca-search-ai-results aca-page-layout .aca-page-layout-content .aca-search-ai-response-container-error-message-regeneration-button{background-color:var(--adf-secondary-button-background)}.aca-search-ai-results aca-page-layout .aca-page-layout-content .aca-search-ai-response-container-error-message-regeneration-button-icon{font-size:24px;height:24px;width:23px}.aca-search-ai-results aca-page-layout .aca-page-layout-content .aca-search-ai-response-container-body-response{margin-bottom:17px;overflow-wrap:break-word;white-space:pre-wrap}.aca-search-ai-results aca-page-layout .aca-page-layout-content .aca-search-ai-response-container-body-response-action{width:max-content;padding:0}.aca-search-ai-results aca-page-layout .aca-page-layout-content .aca-search-ai-response-container-body-response-action mat-icon{font-size:17.25px}.aca-search-ai-results aca-page-layout .aca-page-layout-content .aca-search-ai-response-container-body-response-action-regeneration{margin-left:2px;margin-right:2px}.aca-search-ai-results aca-page-layout .aca-page-layout-content .aca-search-ai-response-container-body-response-action .mat-mdc-button-touch-target{width:24px}.aca-search-ai-results aca-page-layout .aca-page-layout-content .aca-search-ai-response-container-body-divider{margin-top:9px}.aca-search-ai-results aca-page-layout .aca-page-layout-content .aca-search-ai-response-container-body-references-container{padding-right:8px;padding-left:8px}.aca-search-ai-results aca-page-layout .aca-page-layout-content .aca-search-ai-response-container-body-references-container-header{margin-top:16px;color:var(--theme-text-light-color);font-weight:400;margin-bottom:3px}.aca-search-ai-results aca-page-layout .aca-page-layout-content .aca-search-ai-response-container-body-references-container-documents{padding-right:5px;padding-top:5px;margin-left:-2px;display:flex;flex-wrap:wrap;gap:21px}.aca-search-ai-results aca-page-layout .aca-page-layout-content .aca-search-ai-response-container-body-references-container-documents-document{display:flex;flex-direction:row;padding-top:7px;padding-bottom:7px}.aca-search-ai-results aca-page-layout .aca-page-layout-content .aca-search-ai-response-container-body-references-container-documents-document-icon{padding-right:11px}.aca-search-ai-results aca-page-layout .aca-page-layout-content .aca-search-ai-response-container-body-references-container-documents-document-name{display:flex;flex-direction:column;width:100%;justify-content:center}.aca-search-ai-results aca-page-layout .aca-page-layout-content .aca-search-ai-response-container-body-references-container-documents-document:hover{text-decoration:underline;text-decoration-color:var(--theme-primary-color);color:var(--theme-primary-color);cursor:pointer}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: PageLayoutComponent, selector: "aca-page-layout", inputs: ["hasError"] }, { kind: "ngmodule", type: ToolbarModule }, { kind: "component", type: SearchAiInputContainerComponent, selector: "aca-search-ai-input-container", inputs: ["placeholder", "agentId", "usedInAiResultsPage"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i4.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i8.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i9.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i9.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "ngmodule", type: MatListModule }, { kind: "component", type: i10.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { kind: "component", type: EmptyContentComponent, selector: "adf-empty-content", inputs: ["icon", "title", "subtitle"] }, { kind: "ngmodule", type: MatCardModule }, { kind: "ngmodule", type: MatTooltipModule }], encapsulation: i0.ViewEncapsulation.None });
|
|
186
|
+
}
|
|
187
|
+
export { SearchAiResultsComponent };
|
|
188
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: SearchAiResultsComponent, decorators: [{
|
|
189
|
+
type: Component,
|
|
190
|
+
args: [{ standalone: true, imports: [
|
|
191
|
+
CommonModule,
|
|
192
|
+
PageLayoutComponent,
|
|
193
|
+
ToolbarActionComponent,
|
|
194
|
+
ToolbarModule,
|
|
195
|
+
ToolbarComponent,
|
|
196
|
+
SearchAiInputContainerComponent,
|
|
197
|
+
TranslateModule,
|
|
198
|
+
MatIconModule,
|
|
199
|
+
MatButtonModule,
|
|
200
|
+
MatListModule,
|
|
201
|
+
EmptyContentComponent,
|
|
202
|
+
MatCardModule,
|
|
203
|
+
AvatarComponent,
|
|
204
|
+
MatTooltipModule
|
|
205
|
+
], selector: 'aca-search-ai-results', encapsulation: ViewEncapsulation.None, host: { class: 'aca-search-ai-results' }, template: "<aca-page-layout>\n <aca-search-ai-input-container\n class=\"aca-page-layout-header\"\n placeholder=\"KNOWLEDGE_RETRIEVAL.SEARCH.RESULTS_PAGE.QUERY_INPUT_PLACEHOLDER\"\n [agentId]=\"agentId\"\n [usedInAiResultsPage]=\"true\"\n *ngIf=\"!hasError && agentId\" />\n <div\n class=\"aca-page-layout-content\"\n *ngIf=\"!hasError\">\n <div class=\"aca-search-ai-results-container\">\n <div\n class=\"aca-search-ai-results-container-query\"\n data-automation-id=\"aca-search-ai-results-query\">\n {{ searchQuery }}\n </div>\n <div\n class=\"aca-search-ai-response-container\"\n [class.aca-search-ai-response-container-error]=\"hasAnsweringError\">\n <ng-container *ngIf=\"!loading else skeleton\">\n <div\n class=\"aca-search-ai-response-container-body\"\n *ngIf=\"!hasAnsweringError\">\n <div\n class=\"aca-search-ai-response-container-body-response\"\n data-automation-id=\"aca-search-ai-results-response\">\n {{ queryAnswer?.answer }}\n </div>\n <button\n class=\"aca-search-ai-response-container-body-response-action aca-search-ai-response-container-body-response-action-regeneration\"\n mat-icon-button\n (click)=\"checkUnsavedChangesAndSearch()\"\n data-automation-id=\"aca-search-ai-results-regeneration-button\"\n [title]=\"'KNOWLEDGE_RETRIEVAL.SEARCH.RESULTS_PAGE.REGENERATION_BUTTON_LABEL' | translate\">\n <mat-icon>cached</mat-icon>\n </button>\n <button\n class=\"aca-search-ai-response-container-body-response-action\"\n mat-icon-button\n (click)=\"copyResponseToClipboard()\"\n data-automation-id=\"aca-search-ai-results-copying-button\"\n [title]=\"'KNOWLEDGE_RETRIEVAL.SEARCH.RESULTS_PAGE.COPY_BUTTON_LABEL' | translate\">\n <mat-icon>copy</mat-icon>\n </button>\n <ng-container *ngIf=\"nodes?.length\">\n <mat-divider class=\"aca-search-ai-response-container-body-divider\" />\n <div class=\"aca-search-ai-response-container-body-references-container\">\n <p class=\"aca-search-ai-response-container-body-references-container-header\">\n {{ 'KNOWLEDGE_RETRIEVAL.SEARCH.RESULTS_PAGE.REFERENCED_DOCUMENTS_HEADER' | translate }}\n </p>\n <div class=\"aca-search-ai-response-container-body-references-container-documents\">\n <a\n class=\"aca-search-ai-response-container-body-references-container-documents-document\"\n *ngFor=\"let node of nodes\"\n [attr.data-automation-id]=\"'aca-search-ai-results-' + node.id + '-document'\"\n (click)=\"openFile(node.id)\"\n (keyup.enter)=\"openFile(node.id)\"\n tabindex=\"0\">\n <mat-icon\n mat-list-icon\n class=\"aca-search-ai-response-container-body-references-container-documents-document-icon\">\n <img [alt]=\"node.content?.mimeType\" [src]=\"mimeTypeIconsByNodeId[node.id]\"/>\n </mat-icon>\n <div class=\"aca-search-ai-response-container-body-references-container-documents-document-name\">\n {{ node.name }}\n </div>\n </a>\n </div>\n </div>\n </ng-container>\n </div>\n <div\n *ngIf=\"hasAnsweringError\"\n class=\"aca-search-ai-response-container-error-message\">\n {{ 'KNOWLEDGE_RETRIEVAL.SEARCH.ERRORS.LOADING_ERROR' | translate }}\n <button\n mat-flat-button\n (click)=\"performAiSearch()\"\n class=\"aca-search-ai-response-container-error-message-regeneration-button\"\n data-automation-id=\"aca-search-ai-results-error-regeneration-button\">\n <mat-icon class=\"aca-search-ai-response-container-error-message-regeneration-button-icon\">cached</mat-icon>\n {{ 'KNOWLEDGE_RETRIEVAL.SEARCH.RESULTS_PAGE.REGENERATION_BUTTON_LABEL' | translate }}\n </button>\n </div>\n </ng-container>\n </div>\n </div>\n </div>\n <adf-empty-content\n class=\"aca-page-layout-content\"\n icon=\"star\"\n title=\"KNOWLEDGE_RETRIEVAL.SEARCH.ERRORS.PAGE_NOT_AVAILABLE_ERROR\"\n *ngIf=\"hasError\" />\n</aca-page-layout>\n\n<ng-template #skeleton>\n <div class=\"adf-skeleton\"></div>\n <div class=\"adf-skeleton\"></div>\n <div class=\"adf-skeleton adf-skeleton-half\"></div>\n</ng-template>\n", styles: [".aca-search-ai-results aca-page-layout .aca-page-layout-content{display:flex;justify-content:center;align-items:center;height:100%;width:100%;background-color:#fff;border-top:1px solid var(--theme-grey-background-color);padding-top:28px}.aca-search-ai-results aca-page-layout .aca-page-layout-content .aca-search-ai-results-container{display:flex;flex-direction:column;height:100%;overflow-y:auto;padding-right:24%;padding-left:24%;min-width:51%}.aca-search-ai-results aca-page-layout .aca-page-layout-content .aca-search-ai-results-container-query{border-radius:12px;padding:20px 15px 19px;background:var(--theme-card-background-grey-color)}.aca-search-ai-results aca-page-layout .aca-page-layout-content .aca-search-ai-response-container{padding:18px 20px;display:flex;flex-direction:column;border:1px solid var(--adf-card-view-border-color);border-radius:12px;margin:16px 0 75px}.aca-search-ai-results aca-page-layout .aca-page-layout-content .aca-search-ai-response-container-references-container-header{padding-left:8px}.aca-search-ai-results aca-page-layout .aca-page-layout-content .aca-search-ai-response-container .adf-skeleton{position:relative;background-image:linear-gradient(to left,var(--theme-light-grey-1-color) 0%,var(--theme-light-grey-2-color) 20%,var(--theme-light-grey-3-color) 40%,var(--theme-light-grey-1-color) 100%);background-size:200%;display:inline-block;height:1em;overflow:hidden;width:100%;margin-bottom:.5rem;border-radius:.25rem}.aca-search-ai-results aca-page-layout .aca-page-layout-content .aca-search-ai-response-container .adf-skeleton-half{width:50%;margin-bottom:8px}.aca-search-ai-results aca-page-layout .aca-page-layout-content .aca-search-ai-response-container .adf-skeleton:after{position:absolute;inset:0;transform:translate(-100%);background-image:linear-gradient(90deg,#fff0 0,#fff3 20%,#ffffff80 60%,#fff0);animation:shimmer 2s infinite;content:\"\"}@keyframes shimmer{to{transform:translate(100%)}}.aca-search-ai-results aca-page-layout .aca-page-layout-content .aca-search-ai-response-container-error{border-color:var(--adf-error-color);padding:32px 18px}.aca-search-ai-results aca-page-layout .aca-page-layout-content .aca-search-ai-response-container-error-message{display:flex;justify-content:space-between;align-items:center}.aca-search-ai-results aca-page-layout .aca-page-layout-content .aca-search-ai-response-container-error-message-regeneration-button{background-color:var(--adf-secondary-button-background)}.aca-search-ai-results aca-page-layout .aca-page-layout-content .aca-search-ai-response-container-error-message-regeneration-button-icon{font-size:24px;height:24px;width:23px}.aca-search-ai-results aca-page-layout .aca-page-layout-content .aca-search-ai-response-container-body-response{margin-bottom:17px;overflow-wrap:break-word;white-space:pre-wrap}.aca-search-ai-results aca-page-layout .aca-page-layout-content .aca-search-ai-response-container-body-response-action{width:max-content;padding:0}.aca-search-ai-results aca-page-layout .aca-page-layout-content .aca-search-ai-response-container-body-response-action mat-icon{font-size:17.25px}.aca-search-ai-results aca-page-layout .aca-page-layout-content .aca-search-ai-response-container-body-response-action-regeneration{margin-left:2px;margin-right:2px}.aca-search-ai-results aca-page-layout .aca-page-layout-content .aca-search-ai-response-container-body-response-action .mat-mdc-button-touch-target{width:24px}.aca-search-ai-results aca-page-layout .aca-page-layout-content .aca-search-ai-response-container-body-divider{margin-top:9px}.aca-search-ai-results aca-page-layout .aca-page-layout-content .aca-search-ai-response-container-body-references-container{padding-right:8px;padding-left:8px}.aca-search-ai-results aca-page-layout .aca-page-layout-content .aca-search-ai-response-container-body-references-container-header{margin-top:16px;color:var(--theme-text-light-color);font-weight:400;margin-bottom:3px}.aca-search-ai-results aca-page-layout .aca-page-layout-content .aca-search-ai-response-container-body-references-container-documents{padding-right:5px;padding-top:5px;margin-left:-2px;display:flex;flex-wrap:wrap;gap:21px}.aca-search-ai-results aca-page-layout .aca-page-layout-content .aca-search-ai-response-container-body-references-container-documents-document{display:flex;flex-direction:row;padding-top:7px;padding-bottom:7px}.aca-search-ai-results aca-page-layout .aca-page-layout-content .aca-search-ai-response-container-body-references-container-documents-document-icon{padding-right:11px}.aca-search-ai-results aca-page-layout .aca-page-layout-content .aca-search-ai-response-container-body-references-container-documents-document-name{display:flex;flex-direction:column;width:100%;justify-content:center}.aca-search-ai-results aca-page-layout .aca-page-layout-content .aca-search-ai-response-container-body-references-container-documents-document:hover{text-decoration:underline;text-decoration-color:var(--theme-primary-color);color:var(--theme-primary-color);cursor:pointer}\n"] }]
|
|
206
|
+
}], ctorParameters: function () { return [{ type: i1.ActivatedRoute }, { type: i2.ClipboardService }, { type: i2.ThumbnailService }, { type: i3.NodesApiService }, { type: i4.TranslateService }, { type: i2.UnsavedChangesGuard }, { type: i5.ModalAiService }, { type: i6.ViewerService }]; } });
|
|
207
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWFpLXJlc3VsdHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWNhLWNvbnRlbnQvc3JjL2xpYi9jb21wb25lbnRzL2tub3dsZWRnZS1yZXRyaWV2YWwvc2VhcmNoLWFpL3NlYXJjaC1haS1yZXN1bHRzL3NlYXJjaC1haS1yZXN1bHRzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FjYS1jb250ZW50L3NyYy9saWIvY29tcG9uZW50cy9rbm93bGVkZ2UtcmV0cmlldmFsL3NlYXJjaC1haS9zZWFyY2gtYWktcmVzdWx0cy9zZWFyY2gtYWktcmVzdWx0cy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXNCRztBQUVILE9BQU8sRUFBRSxTQUFTLEVBQVUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxhQUFhLEVBQUUsbUJBQW1CLEVBQUUsc0JBQXNCLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNwSCxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckcsT0FBTyxFQUFFLGVBQWUsRUFBRSxnQkFBZ0IsRUFBRSxxQkFBcUIsRUFBRSxnQkFBZ0IsRUFBRSxhQUFhLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVwSixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sa0VBQWtFLENBQUM7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Q0FBQztRQUNsQixDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQzt1R0FqS1Usd0JBQXdCOzJGQUF4Qix3QkFBd0IsMkpDdEVyQyxpdkpBb0dBLDg5SkRuREksWUFBWSxnUUFDWixtQkFBbUIsaUZBRW5CLGFBQWEsK0JBRWIsK0JBQStCLG9JQUMvQixlQUFlLDJGQUNmLGFBQWEsbUxBQ2IsZUFBZSx3YUFDZixhQUFhLG9JQUNiLHFCQUFxQixvR0FDckIsYUFBYSw4QkFFYixnQkFBZ0I7O1NBUVAsd0JBQXdCOzJGQUF4Qix3QkFBd0I7a0JBeEJwQyxTQUFTO2lDQUNJLElBQUksV0FDUDt3QkFDUCxZQUFZO3dCQUNaLG1CQUFtQjt3QkFDbkIsc0JBQXNCO3dCQUN0QixhQUFhO3dCQUNiLGdCQUFnQjt3QkFDaEIsK0JBQStCO3dCQUMvQixlQUFlO3dCQUNmLGFBQWE7d0JBQ2IsZUFBZTt3QkFDZixhQUFhO3dCQUNiLHFCQUFxQjt3QkFDckIsYUFBYTt3QkFDYixlQUFlO3dCQUNmLGdCQUFnQjtxQkFDakIsWUFDUyx1QkFBdUIsaUJBR2xCLGlCQUFpQixDQUFDLElBQUksUUFDL0IsRUFBRSxLQUFLLEVBQUUsdUJBQXVCLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIENvcHlyaWdodCDCqSAyMDA1LTIwMjQgSHlsYW5kIFNvZnR3YXJlLCBJbmMuIGFuZCBpdHMgYWZmaWxpYXRlcy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqXG4gKiBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb25cbiAqXG4gKiBUaGlzIGZpbGUgaXMgcGFydCBvZiB0aGUgQWxmcmVzY28gRXhhbXBsZSBDb250ZW50IEFwcGxpY2F0aW9uLlxuICogSWYgdGhlIHNvZnR3YXJlIHdhcyBwdXJjaGFzZWQgdW5kZXIgYSBwYWlkIEFsZnJlc2NvIGxpY2Vuc2UsIHRoZSB0ZXJtcyBvZlxuICogdGhlIHBhaWQgbGljZW5zZSBhZ3JlZW1lbnQgd2lsbCBwcmV2YWlsLiBPdGhlcndpc2UsIHRoZSBzb2Z0d2FyZSBpc1xuICogcHJvdmlkZWQgdW5kZXIgdGhlIGZvbGxvd2luZyBvcGVuIHNvdXJjZSBsaWNlbnNlIHRlcm1zOlxuICpcbiAqIFRoZSBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb24gaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeVxuICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5XG4gKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvclxuICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi5cbiAqXG4gKiBUaGUgQWxmcmVzY28gRXhhbXBsZSBDb250ZW50IEFwcGxpY2F0aW9uIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsXG4gKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZlxuICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiBTZWUgdGhlXG4gKiBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy5cbiAqXG4gKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2VcbiAqIGZyb20gSHlsYW5kIFNvZnR3YXJlLiBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uXG4gKi9cblxuaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBQYWdlQ29tcG9uZW50LCBQYWdlTGF5b3V0Q29tcG9uZW50LCBUb29sYmFyQWN0aW9uQ29tcG9uZW50LCBUb29sYmFyQ29tcG9uZW50IH0gZnJvbSAnQGFsZnJlc2NvL2FjYS1zaGFyZWQnO1xuaW1wb3J0IHsgY29uY2F0TWFwLCBkZWxheSwgZmlsdGVyLCBmaW5hbGl6ZSwgcmV0cnlXaGVuLCBza2lwV2hpbGUsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEF2YXRhckNvbXBvbmVudCwgQ2xpcGJvYXJkU2VydmljZSwgRW1wdHlDb250ZW50Q29tcG9uZW50LCBUaHVtYm5haWxTZXJ2aWNlLCBUb29sYmFyTW9kdWxlLCBVbnNhdmVkQ2hhbmdlc0d1YXJkIH0gZnJvbSAnQGFsZnJlc2NvL2FkZi1jb3JlJztcbmltcG9ydCB7IEFpQW5zd2VyLCBOb2RlIH0gZnJvbSAnQGFsZnJlc2NvL2pzLWFwaSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgU2VhcmNoQWlJbnB1dENvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJy4uL3NlYXJjaC1haS1pbnB1dC1jb250YWluZXIvc2VhcmNoLWFpLWlucHV0LWNvbnRhaW5lci5jb21wb25lbnQnO1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlLCBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBOb2Rlc0FwaVNlcnZpY2UgfSBmcm9tICdAYWxmcmVzY28vYWRmLWNvbnRlbnQtc2VydmljZXMnO1xuaW1wb3J0IHsgZm9ya0pvaW4sIE9ic2VydmFibGUsIG9mLCB0aHJvd0Vycm9yIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBTZWxlY3Rpb25TdGF0ZSB9IGZyb20gJ0BhbGZyZXNjby9hZGYtZXh0ZW5zaW9ucyc7XG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgTWF0TGlzdE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2xpc3QnO1xuaW1wb3J0IHsgTWF0Q2FyZE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NhcmQnO1xuaW1wb3J0IHsgTWF0VG9vbHRpcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2x0aXAnO1xuaW1wb3J0IHsgTW9kYWxBaVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9zZXJ2aWNlcy9tb2RhbC1haS5zZXJ2aWNlJztcbmltcG9ydCB7IFZpZXdOb2RlQWN0aW9uIH0gZnJvbSAnQGFsZnJlc2NvL2FjYS1zaGFyZWQvc3RvcmUnO1xuaW1wb3J0IHsgVmlld2VyU2VydmljZSB9IGZyb20gJ0BhbGZyZXNjby9hY2EtY29udGVudC92aWV3ZXInO1xuaW1wb3J0IHsgdGFrZVVudGlsRGVzdHJveWVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBQYWdlTGF5b3V0Q29tcG9uZW50LFxuICAgIFRvb2xiYXJBY3Rpb25Db21wb25lbnQsXG4gICAgVG9vbGJhck1vZHVsZSxcbiAgICBUb29sYmFyQ29tcG9uZW50LFxuICAgIFNlYXJjaEFpSW5wdXRDb250YWluZXJDb21wb25lbnQsXG4gICAgVHJhbnNsYXRlTW9kdWxlLFxuICAgIE1hdEljb25Nb2R1bGUsXG4gICAgTWF0QnV0dG9uTW9kdWxlLFxuICAgIE1hdExpc3RNb2R1bGUsXG4gICAgRW1wdHlDb250ZW50Q29tcG9uZW50LFxuICAgIE1hdENhcmRNb2R1bGUsXG4gICAgQXZhdGFyQ29tcG9uZW50LFxuICAgIE1hdFRvb2x0aXBNb2R1bGVcbiAgXSxcbiAgc2VsZWN0b3I6ICdhY2Etc2VhcmNoLWFpLXJlc3VsdHMnLFxuICB0ZW1wbGF0ZVVybDogJy4vc2VhcmNoLWFpLXJlc3VsdHMuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zZWFyY2gtYWktcmVzdWx0cy5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBob3N0OiB7IGNsYXNzOiAnYWNhLXNlYXJjaC1haS1yZXN1bHRzJyB9XG59KVxuZXhwb3J0IGNsYXNzIFNlYXJjaEFpUmVzdWx0c0NvbXBvbmVudCBleHRlbmRzIFBhZ2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBwcml2YXRlIF9hZ2VudElkOiBzdHJpbmc7XG4gIHByaXZhdGUgX2hhc0Fuc3dlcmluZ0Vycm9yID0gZmFsc2U7XG4gIHByaXZhdGUgX2hhc0Vycm9yID0gZmFsc2U7XG4gIHByaXZhdGUgX2xvYWRpbmcgPSBmYWxzZTtcbiAgcHJpdmF0ZSBfbWltZVR5cGVJY29uc0J5Tm9kZUlkOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9ID0ge307XG4gIHByaXZhdGUgX25vZGVzOiBOb2RlW10gPSBbXTtcbiAgcHJpdmF0ZSBvcGVuZWRWaWV3ZXIgPSBmYWxzZTtcbiAgcHJpdmF0ZSBfc2VsZWN0ZWROb2Rlc1N0YXRlOiBTZWxlY3Rpb25TdGF0ZTtcbiAgcHJpdmF0ZSBfc2VhcmNoUXVlcnkgPSAnJztcbiAgcHJpdmF0ZSBfcXVlcnlBbnN3ZXI6IEFpQW5zd2VyO1xuXG4gIGdldCBhZ2VudElkKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX2FnZW50SWQ7XG4gIH1cblxuICBnZXQgaGFzQW5zd2VyaW5nRXJyb3IoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2hhc0Fuc3dlcmluZ0Vycm9yO1xuICB9XG5cbiAgZ2V0IGhhc0Vycm9yKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9oYXNFcnJvcjtcbiAgfVxuXG4gIGdldCBsb2FkaW5nKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9sb2FkaW5nO1xuICB9XG5cbiAgZ2V0IG1pbWVUeXBlSWNvbnNCeU5vZGVJZCgpOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9IHtcbiAgICByZXR1cm4gdGhpcy5fbWltZVR5cGVJY29uc0J5Tm9kZUlkO1xuICB9XG5cbiAgZ2V0IG5vZGVzKCk6IE5vZGVbXSB7XG4gICAgcmV0dXJuIHRoaXMuX25vZGVzO1xuICB9XG5cbiAgZ2V0IHF1ZXJ5QW5zd2VyKCk6IEFpQW5zd2VyIHtcbiAgICByZXR1cm4gdGhpcy5fcXVlcnlBbnN3ZXI7XG4gIH1cblxuICBnZXQgc2VhcmNoUXVlcnkoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fc2VhcmNoUXVlcnk7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICBwcml2YXRlIGNsaXBib2FyZFNlcnZpY2U6IENsaXBib2FyZFNlcnZpY2UsXG4gICAgcHJpdmF0ZSB0aHVtYm5haWxTZXJ2aWNlOiBUaHVtYm5haWxTZXJ2aWNlLFxuICAgIHByaXZhdGUgbm9kZXNBcGlTZXJ2aWNlOiBOb2Rlc0FwaVNlcnZpY2UsXG4gICAgcHJpdmF0ZSB0cmFuc2xhdGVTZXJ2aWNlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgdW5zYXZlZENoYW5nZXNHdWFyZDogVW5zYXZlZENoYW5nZXNHdWFyZCxcbiAgICBwcml2YXRlIG1vZGFsQWlTZXJ2aWNlOiBNb2RhbEFpU2VydmljZSxcbiAgICBwcml2YXRlIHZpZXdlclNlcnZpY2U6IFZpZXdlclNlcnZpY2VcbiAgKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMudmlld2VyU2VydmljZS5jdXN0b21Ob2Rlc09yZGVyID0gSlNPTi5wYXJzZSh0aGlzLnVzZXJQcmVmZXJlbmNlc1NlcnZpY2UuZ2V0KCdhaVJlZmVyZW5jZXMnLCAnW10nKSk7XG4gICAgdGhpcy5yb3V0ZS5xdWVyeVBhcmFtc1xuICAgICAgLnBpcGUoXG4gICAgICAgIGZpbHRlcigocGFyYW1zKSA9PiB7XG4gICAgICAgICAgY29uc3Qgb3BlbmVkVmlld2VyUHJldmlvdXNseSA9IHRoaXMub3BlbmVkVmlld2VyO1xuICAgICAgICAgIHRoaXMub3BlbmVkVmlld2VyID0gISFwYXJhbXMubG9jYXRpb247XG4gICAgICAgICAgcmV0dXJuICF0aGlzLm9wZW5lZFZpZXdlciAmJiAoIW9wZW5lZFZpZXdlclByZXZpb3VzbHkgfHwgIXRoaXMucXVlcnlBbnN3ZXIpO1xuICAgICAgICB9KSxcbiAgICAgICAgdGFrZVVudGlsRGVzdHJveWVkKHRoaXMuZGVzdHJveVJlZilcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKHBhcmFtcykgPT4ge1xuICAgICAgICB0aGlzLl9hZ2VudElkID0gcGFyYW1zLmFnZW50SWQ7XG4gICAgICAgIHRoaXMuX3NlYXJjaFF1ZXJ5ID0gcGFyYW1zLnF1ZXJ5ID8gZGVjb2RlVVJJQ29tcG9uZW50KHBhcmFtcy5xdWVyeSkgOiAnJztcbiAgICAgICAgY29uc3Qgc2VsZWN0ZWROb2Rlc1N0YXRlID0gdGhpcy51c2VyUHJlZmVyZW5jZXNTZXJ2aWNlLmdldCgna25vd2xlZGdlUmV0cmlldmFsTm9kZXMnKTtcbiAgICAgICAgaWYgKCF0aGlzLnNlYXJjaFF1ZXJ5IHx8ICF0aGlzLmFnZW50SWQgfHwgIXNlbGVjdGVkTm9kZXNTdGF0ZSkge1xuICAgICAgICAgIHRoaXMuX2hhc0Vycm9yID0gdHJ1ZTtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5fc2VsZWN0ZWROb2Rlc1N0YXRlID0gSlNPTi5wYXJzZShzZWxlY3RlZE5vZGVzU3RhdGUpO1xuICAgICAgICB0aGlzLnBlcmZvcm1BaVNlYXJjaCgpO1xuICAgICAgfSk7XG4gICAgc3VwZXIubmdPbkluaXQoKTtcblxuICAgIHRoaXMudW5zYXZlZENoYW5nZXNHdWFyZC51bnNhdmVkID0gdGhpcy5yb3V0ZS5zbmFwc2hvdD8ucXVlcnlQYXJhbXM/LnF1ZXJ5Py5sZW5ndGggPiAwICYmICF0aGlzLmhhc0Vycm9yO1xuICAgIHRoaXMudW5zYXZlZENoYW5nZXNHdWFyZC5kYXRhID0ge1xuICAgICAgZGVzY3JpcHRpb25UZXh0OiAnS05PV0xFREdFX1JFVFJJRVZBTC5TRUFSQ0guRElTQ0FSRF9DSEFOR0VTLkNPTlZFUlNBVElPTl9ESVNDQVJERUQnLFxuICAgICAgY29uZmlybUJ1dHRvblRleHQ6ICdLTk9XTEVER0VfUkVUUklFVkFMLlNFQVJDSC5ESVNDQVJEX0NIQU5HRVMuT0tBWScsXG4gICAgICBoZWFkZXJUZXh0OiAnS05PV0xFREdFX1JFVFJJRVZBTC5TRUFSQ0guRElTQ0FSRF9DSEFOR0VTLldBUk5JTkcnXG4gICAgfTtcbiAgfVxuXG4gIGNvcHlSZXNwb25zZVRvQ2xpcGJvYXJkKCk6IHZvaWQge1xuICAgIHRoaXMuY2xpcGJvYXJkU2VydmljZS5jb3B5Q29udGVudFRvQ2xpcGJvYXJkKFxuICAgICAgdGhpcy5xdWVyeUFuc3dlci5hbnN3ZXIsXG4gICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgnS05PV0xFREdFX1JFVFJJRVZBTC5TRUFSQ0guUkVTVUxUU19QQUdFLkNPUFlfTUVTU0FHRScpXG4gICAgKTtcbiAgfVxuXG4gIGNoZWNrVW5zYXZlZENoYW5nZXNBbmRTZWFyY2goKTogdm9pZCB7XG4gICAgdGhpcy5tb2RhbEFpU2VydmljZS5vcGVuVW5zYXZlZENoYW5nZXNNb2RhbCgoKSA9PiB0aGlzLnBlcmZvcm1BaVNlYXJjaCgpKTtcbiAgfVxuXG4gIHBlcmZvcm1BaVNlYXJjaCgpOiB2b2lkIHtcbiAgICB0aGlzLl9sb2FkaW5nID0gdHJ1ZTtcblxuICAgIHRoaXMuc2VhcmNoQWlTZXJ2aWNlXG4gICAgICAuYXNrKHtcbiAgICAgICAgcXVlc3Rpb246IHRoaXMuc2VhcmNoUXVlcnksXG4gICAgICAgIG5vZGVJZHM6IHRoaXMuX3NlbGVjdGVkTm9kZXNTdGF0ZT8ubm9kZXM/Lmxlbmd0aCA/IHRoaXMuX3NlbGVjdGVkTm9kZXNTdGF0ZS5ub2Rlcy5tYXAoKG5vZGUpID0+IG5vZGUuZW50cnkuaWQpIDogW10sXG4gICAgICAgIGFnZW50SWQ6IHRoaXMuX2FnZW50SWRcbiAgICAgIH0pXG4gICAgICAucGlwZShcbiAgICAgICAgc3dpdGNoTWFwKChyZXNwb25zZSkgPT4gdGhpcy5zZWFyY2hBaVNlcnZpY2UuZ2V0QW5zd2VyKHJlc3BvbnNlLnF1ZXN0aW9uSWQpKSxcbiAgICAgICAgc3dpdGNoTWFwKChyZXNwb25zZSkgPT4ge1xuICAgICAgICAgIGlmICghcmVzcG9uc2UuZW50cnk/LmFuc3dlcikge1xuICAgICAgICAgICAgcmV0dXJuIHRocm93RXJyb3IoKGUpID0+IGUpO1xuICAgICAgICAgIH1cbiAgICAgICAgICB0aGlzLl9xdWVyeUFuc3dlciA9IHJlc3BvbnNlLmVudHJ5O1xuICAgICAgICAgIHJldHVybiBmb3JrSm9pbih0aGlzLnF1ZXJ5QW5zd2VyLnJlZmVyZW5jZXMubWFwKChyZWZlcmVuY2UpID0+IHRoaXMubm9kZXNBcGlTZXJ2aWNlLmdldE5vZGUocmVmZXJlbmNlLnJlZmVyZW5jZUlkKSkpO1xuICAgICAgICB9KSxcbiAgICAgICAgcmV0cnlXaGVuKChlcnJvcnM6IE9ic2VydmFibGU8RXJyb3I+KSA9PiB0aGlzLmFpU2VhcmNoUmV0cnlXaGVuKGVycm9ycykpLFxuICAgICAgICBmaW5hbGl6ZSgoKSA9PiAodGhpcy5fbG9hZGluZyA9IGZhbHNlKSksXG4gICAgICAgIHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3lSZWYpXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKFxuICAgICAgICAobm9kZXMpID0+IHtcbiAgICAgICAgICBub2Rlcy5mb3JFYWNoKChub2RlKSA9PiB7XG4gICAgICAgICAgICB0aGlzLl9taW1lVHlwZUljb25zQnlOb2RlSWRbbm9kZS5pZF0gPSB0aGlzLnRodW1ibmFpbFNlcnZpY2UuZ2V0TWltZVR5cGVJY29uKG5vZGUuY29udGVudD8ubWltZVR5cGUpO1xuICAgICAgICAgIH0pO1xuICAgICAgICAgIHRoaXMuX25vZGVzID0gbm9kZXM7XG4gICAgICAgICAgY29uc3Qgbm9kZXNJZHMgPSBub2Rlcy5tYXAoKG5vZGUpID0+IG5vZGUuaWQpO1xuICAgICAgICAgIHRoaXMudmlld2VyU2VydmljZS5jdXN0b21Ob2Rlc09yZGVyID0gbm9kZXNJZHM7XG4gICAgICAgICAgdGhpcy51c2VyUHJlZmVyZW5jZXNTZXJ2aWNlLnNldCgnYWlSZWZlcmVuY2VzJywgSlNPTi5zdHJpbmdpZnkobm9kZXNJZHMpKTtcbiAgICAgICAgfSxcbiAgICAgICAgKCkgPT4gKHRoaXMuX2hhc0Fuc3dlcmluZ0Vycm9yID0gdHJ1ZSlcbiAgICAgICk7XG4gIH1cblxuICBvcGVuRmlsZShpZDogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChcbiAgICAgIG5ldyBWaWV3Tm9kZUFjdGlvbihpZCwge1xuICAgICAgICBsb2NhdGlvbjogdGhpcy5yb3V0ZXIudXJsXG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGFpU2VhcmNoUmV0cnlXaGVuKGVycm9yczogT2JzZXJ2YWJsZTxFcnJvcj4pOiBPYnNlcnZhYmxlPEVycm9yPiB7XG4gICAgdGhpcy5faGFzQW5zd2VyaW5nRXJyb3IgPSBmYWxzZTtcbiAgICBjb25zdCBkZWxheUJldHdlZW5SZXRyaWVzID0gMzAwMDtcbiAgICBjb25zdCBtYXhSZXRyaWVzID0gOTtcblxuICAgIHJldHVybiBlcnJvcnMucGlwZShcbiAgICAgIHNraXBXaGlsZSgoKSA9PiB0aGlzLmhhc0Fuc3dlcmluZ0Vycm9yKSxcbiAgICAgIGRlbGF5KGRlbGF5QmV0d2VlblJldHJpZXMpLFxuICAgICAgY29uY2F0TWFwKChlLCBpbmRleCkgPT4ge1xuICAgICAgICBpZiAoaW5kZXggPT09IG1heFJldHJpZXMpIHtcbiAgICAgICAgICB0aGlzLl9oYXNBbnN3ZXJpbmdFcnJvciA9IHRydWU7XG4gICAgICAgICAgdGhpcy5fbG9hZGluZyA9IGZhbHNlO1xuICAgICAgICAgIHJldHVybiB0aHJvd0Vycm9yKGUpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBvZihudWxsKTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxufVxuIiwiPGFjYS1wYWdlLWxheW91dD5cbiAgPGFjYS1zZWFyY2gtYWktaW5wdXQtY29udGFpbmVyXG4gICAgY2xhc3M9XCJhY2EtcGFnZS1sYXlvdXQtaGVhZGVyXCJcbiAgICBwbGFjZWhvbGRlcj1cIktOT1dMRURHRV9SRVRSSUVWQUwuU0VBUkNILlJFU1VMVFNfUEFHRS5RVUVSWV9JTlBVVF9QTEFDRUhPTERFUlwiXG4gICAgW2FnZW50SWRdPVwiYWdlbnRJZFwiXG4gICAgW3VzZWRJbkFpUmVzdWx0c1BhZ2VdPVwidHJ1ZVwiXG4gICAgKm5nSWY9XCIhaGFzRXJyb3IgJiYgYWdlbnRJZFwiIC8+XG4gIDxkaXZcbiAgICBjbGFzcz1cImFjYS1wYWdlLWxheW91dC1jb250ZW50XCJcbiAgICAqbmdJZj1cIiFoYXNFcnJvclwiPlxuICAgIDxkaXYgY2xhc3M9XCJhY2Etc2VhcmNoLWFpLXJlc3VsdHMtY29udGFpbmVyXCI+XG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwiYWNhLXNlYXJjaC1haS1yZXN1bHRzLWNvbnRhaW5lci1xdWVyeVwiXG4gICAgICAgIGRhdGEtYXV0b21hdGlvbi1pZD1cImFjYS1zZWFyY2gtYWktcmVzdWx0cy1xdWVyeVwiPlxuICAgICAgICB7eyBzZWFyY2hRdWVyeSB9fVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwiYWNhLXNlYXJjaC1haS1yZXNwb25zZS1jb250YWluZXJcIlxuICAgICAgICBbY2xhc3MuYWNhLXNlYXJjaC1haS1yZXNwb25zZS1jb250YWluZXItZXJyb3JdPVwiaGFzQW5zd2VyaW5nRXJyb3JcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFsb2FkaW5nIGVsc2Ugc2tlbGV0b25cIj5cbiAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICBjbGFzcz1cImFjYS1zZWFyY2gtYWktcmVzcG9uc2UtY29udGFpbmVyLWJvZHlcIlxuICAgICAgICAgICAgKm5nSWY9XCIhaGFzQW5zd2VyaW5nRXJyb3JcIj5cbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgY2xhc3M9XCJhY2Etc2VhcmNoLWFpLXJlc3BvbnNlLWNvbnRhaW5lci1ib2R5LXJlc3BvbnNlXCJcbiAgICAgICAgICAgICAgZGF0YS1hdXRvbWF0aW9uLWlkPVwiYWNhLXNlYXJjaC1haS1yZXN1bHRzLXJlc3BvbnNlXCI+XG4gICAgICAgICAgICAgIHt7IHF1ZXJ5QW5zd2VyPy5hbnN3ZXIgfX1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICBjbGFzcz1cImFjYS1zZWFyY2gtYWktcmVzcG9uc2UtY29udGFpbmVyLWJvZHktcmVzcG9uc2UtYWN0aW9uIGFjYS1zZWFyY2gtYWktcmVzcG9uc2UtY29udGFpbmVyLWJvZHktcmVzcG9uc2UtYWN0aW9uLXJlZ2VuZXJhdGlvblwiXG4gICAgICAgICAgICAgIG1hdC1pY29uLWJ1dHRvblxuICAgICAgICAgICAgICAoY2xpY2spPVwiY2hlY2tVbnNhdmVkQ2hhbmdlc0FuZFNlYXJjaCgpXCJcbiAgICAgICAgICAgICAgZGF0YS1hdXRvbWF0aW9uLWlkPVwiYWNhLXNlYXJjaC1haS1yZXN1bHRzLXJlZ2VuZXJhdGlvbi1idXR0b25cIlxuICAgICAgICAgICAgICBbdGl0bGVdPVwiJ0tOT1dMRURHRV9SRVRSSUVWQUwuU0VBUkNILlJFU1VMVFNfUEFHRS5SRUdFTkVSQVRJT05fQlVUVE9OX0xBQkVMJyB8IHRyYW5zbGF0ZVwiPlxuICAgICAgICAgICAgICA8bWF0LWljb24+Y2FjaGVkPC9tYXQtaWNvbj5cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICBjbGFzcz1cImFjYS1zZWFyY2gtYWktcmVzcG9uc2UtY29udGFpbmVyLWJvZHktcmVzcG9uc2UtYWN0aW9uXCJcbiAgICAgICAgICAgICAgbWF0LWljb24tYnV0dG9uXG4gICAgICAgICAgICAgIChjbGljayk9XCJjb3B5UmVzcG9uc2VUb0NsaXBib2FyZCgpXCJcbiAgICAgICAgICAgICAgZGF0YS1hdXRvbWF0aW9uLWlkPVwiYWNhLXNlYXJjaC1haS1yZXN1bHRzLWNvcHlpbmctYnV0dG9uXCJcbiAgICAgICAgICAgICAgW3RpdGxlXT1cIidLTk9XTEVER0VfUkVUUklFVkFMLlNFQVJDSC5SRVNVTFRTX1BBR0UuQ09QWV9CVVRUT05fTEFCRUwnIHwgdHJhbnNsYXRlXCI+XG4gICAgICAgICAgICAgIDxtYXQtaWNvbj5jb3B5PC9tYXQtaWNvbj5cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIm5vZGVzPy5sZW5ndGhcIj5cbiAgICAgICAgICAgICAgPG1hdC1kaXZpZGVyIGNsYXNzPVwiYWNhLXNlYXJjaC1haS1yZXNwb25zZS1jb250YWluZXItYm9keS1kaXZpZGVyXCIgLz5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFjYS1zZWFyY2gtYWktcmVzcG9uc2UtY29udGFpbmVyLWJvZHktcmVmZXJlbmNlcy1jb250YWluZXJcIj5cbiAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImFjYS1zZWFyY2gtYWktcmVzcG9uc2UtY29udGFpbmVyLWJvZHktcmVmZXJlbmNlcy1jb250YWluZXItaGVhZGVyXCI+XG4gICAgICAgICAgICAgICAgICB7eyAnS05PV0xFREdFX1JFVFJJRVZBTC5TRUFSQ0guUkVTVUxUU19QQUdFLlJFRkVSRU5DRURfRE9DVU1FTlRTX0hFQURFUicgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFjYS1zZWFyY2gtYWktcmVzcG9uc2UtY29udGFpbmVyLWJvZHktcmVmZXJlbmNlcy1jb250YWluZXItZG9jdW1lbnRzXCI+XG4gICAgICAgICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImFjYS1zZWFyY2gtYWktcmVzcG9uc2UtY29udGFpbmVyLWJvZHktcmVmZXJlbmNlcy1jb250YWluZXItZG9jdW1lbnRzLWRvY3VtZW50XCJcbiAgICAgICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IG5vZGUgb2Ygbm9kZXNcIlxuICAgICAgICAgICAgICAgICAgICBbYXR0ci5kYXRhLWF1dG9tYXRpb24taWRdPVwiJ2FjYS1zZWFyY2gtYWktcmVzdWx0cy0nICsgbm9kZS5pZCArICctZG9jdW1lbnQnXCJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9wZW5GaWxlKG5vZGUuaWQpXCJcbiAgICAgICAgICAgICAgICAgICAgKGtleXVwLmVudGVyKT1cIm9wZW5GaWxlKG5vZGUuaWQpXCJcbiAgICAgICAgICAgICAgICAgICAgdGFiaW5kZXg9XCIwXCI+XG4gICAgICAgICAgICAgICAgICAgIDxtYXQtaWNvblxuICAgICAgICAgICAgICAgICAgICAgIG1hdC1saXN0LWljb25cbiAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImFjYS1zZWFyY2gtYWktcmVzcG9uc2UtY29udGFpbmVyLWJvZHktcmVmZXJlbmNlcy1jb250YWluZXItZG9jdW1lbnRzLWRvY3VtZW50LWljb25cIj5cbiAgICAgICAgICAgICAgICAgICAgICA8aW1nIFthbHRdPVwibm9kZS5jb250ZW50Py5taW1lVHlwZVwiIFtzcmNdPVwibWltZVR5cGVJY29uc0J5Tm9kZUlkW25vZGUuaWRdXCIvPlxuICAgICAgICAgICAgICAgICAgICA8L21hdC1pY29uPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYWNhLXNlYXJjaC1haS1yZXNwb25zZS1jb250YWluZXItYm9keS1yZWZlcmVuY2VzLWNvbnRhaW5lci1kb2N1bWVudHMtZG9jdW1lbnQtbmFtZVwiPlxuICAgICAgICAgICAgICAgICAgICAgIHt7IG5vZGUubmFtZSB9fVxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAqbmdJZj1cImhhc0Fuc3dlcmluZ0Vycm9yXCJcbiAgICAgICAgICAgIGNsYXNzPVwiYWNhLXNlYXJjaC1haS1yZXNwb25zZS1jb250YWluZXItZXJyb3ItbWVzc2FnZVwiPlxuICAgICAgICAgICAge3sgJ0tOT1dMRURHRV9SRVRSSUVWQUwuU0VBUkNILkVSUk9SUy5MT0FESU5HX0VSUk9SJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICBtYXQtZmxhdC1idXR0b25cbiAgICAgICAgICAgICAgKGNsaWNrKT1cInBlcmZvcm1BaVNlYXJjaCgpXCJcbiAgICAgICAgICAgICAgY2xhc3M9XCJhY2Etc2VhcmNoLWFpLXJlc3BvbnNlLWNvbnRhaW5lci1lcnJvci1tZXNzYWdlLXJlZ2VuZXJhdGlvbi1idXR0b25cIlxuICAgICAgICAgICAgICBkYXRhLWF1dG9tYXRpb24taWQ9XCJhY2Etc2VhcmNoLWFpLXJlc3VsdHMtZXJyb3ItcmVnZW5lcmF0aW9uLWJ1dHRvblwiPlxuICAgICAgICAgICAgICA8bWF0LWljb24gY2xhc3M9XCJhY2Etc2VhcmNoLWFpLXJlc3BvbnNlLWNvbnRhaW5lci1lcnJvci1tZXNzYWdlLXJlZ2VuZXJhdGlvbi1idXR0b24taWNvblwiPmNhY2hlZDwvbWF0LWljb24+XG4gICAgICAgICAgICAgIHt7ICdLTk9XTEVER0VfUkVUUklFVkFMLlNFQVJDSC5SRVNVTFRTX1BBR0UuUkVHRU5FUkFUSU9OX0JVVFRPTl9MQUJFTCcgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbiAgPGFkZi1lbXB0eS1jb250ZW50XG4gICAgY2xhc3M9XCJhY2EtcGFnZS1sYXlvdXQtY29udGVudFwiXG4gICAgaWNvbj1cInN0YXJcIlxuICAgIHRpdGxlPVwiS05PV0xFREdFX1JFVFJJRVZBTC5TRUFSQ0guRVJST1JTLlBBR0VfTk9UX0FWQUlMQUJMRV9FUlJPUlwiXG4gICAgKm5nSWY9XCJoYXNFcnJvclwiIC8+XG48L2FjYS1wYWdlLWxheW91dD5cblxuPG5nLXRlbXBsYXRlICNza2VsZXRvbj5cbiAgPGRpdiBjbGFzcz1cImFkZi1za2VsZXRvblwiPjwvZGl2PlxuICA8ZGl2IGNsYXNzPVwiYWRmLXNrZWxldG9uXCI+PC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJhZGYtc2tlbGV0b24gYWRmLXNrZWxldG9uLWhhbGZcIj48L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|
|
@@ -0,0 +1,81 @@
|
|
|
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 { NavigateLibraryAction } from '@alfresco/aca-shared/store';
|
|
25
|
+
import { Component, ViewEncapsulation } from '@angular/core';
|
|
26
|
+
import { AppHookService, ContextActionsDirective, InfoDrawerComponent, PageComponent, PageLayoutComponent, PaginationDirective, ToolbarComponent } from '@alfresco/aca-shared';
|
|
27
|
+
import { DynamicColumnComponent } from '@alfresco/adf-extensions';
|
|
28
|
+
import { CommonModule } from '@angular/common';
|
|
29
|
+
import { DocumentListModule } from '@alfresco/adf-content-services';
|
|
30
|
+
import { DataTableModule, EmptyContentComponent, PaginationComponent } from '@alfresco/adf-core';
|
|
31
|
+
import { DocumentListDirective } from '../../directives/document-list.directive';
|
|
32
|
+
import { TranslateModule } from '@ngx-translate/core';
|
|
33
|
+
import * as i0 from "@angular/core";
|
|
34
|
+
import * as i1 from "@alfresco/aca-shared";
|
|
35
|
+
import * as i2 from "@angular/common";
|
|
36
|
+
import * as i3 from "@alfresco/adf-content-services";
|
|
37
|
+
import * as i4 from "@alfresco/adf-core";
|
|
38
|
+
import * as i5 from "@ngx-translate/core";
|
|
39
|
+
class LibrariesComponent extends PageComponent {
|
|
40
|
+
appHookService;
|
|
41
|
+
columns = [];
|
|
42
|
+
constructor(appHookService) {
|
|
43
|
+
super();
|
|
44
|
+
this.appHookService = appHookService;
|
|
45
|
+
}
|
|
46
|
+
ngOnInit() {
|
|
47
|
+
super.ngOnInit();
|
|
48
|
+
this.subscriptions.push(this.appHookService.libraryDeleted.subscribe(() => this.reload()), this.appHookService.libraryUpdated.subscribe(() => this.reload()), this.appHookService.libraryLeft.subscribe(() => this.reload()));
|
|
49
|
+
this.columns = this.extensions.documentListPresets.libraries || [];
|
|
50
|
+
}
|
|
51
|
+
navigateTo(node) {
|
|
52
|
+
if (node?.entry?.guid) {
|
|
53
|
+
this.store.dispatch(new NavigateLibraryAction(node.entry.guid));
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
handleNodeClick(event) {
|
|
57
|
+
this.navigateTo(event.detail?.node);
|
|
58
|
+
}
|
|
59
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: LibrariesComponent, deps: [{ token: i1.AppHookService }], target: i0.ɵɵFactoryTarget.Component });
|
|
60
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: LibrariesComponent, isStandalone: true, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<aca-page-layout>\n <div class=\"aca-page-layout-header\">\n <h1 class=\"aca-page-title\">\n {{ (selectedRowItemsCount < 1 ? 'APP.BROWSE.LIBRARIES.MENU.MY_LIBRARIES.TITLE' : 'APP.HEADER.SELECTED') | translate: { count: selectedRowItemsCount } }}\n </h1>\n <aca-toolbar [items]=\"actions\" />\n </div>\n\n <div class=\"aca-page-layout-content\">\n <div class=\"aca-main-content\">\n <adf-document-list\n #documentList\n acaDocumentList\n acaContextActions\n [currentFolderId]=\"'-mysites-'\"\n [selectionMode]=\"'multiple'\"\n [multiselect]=\"true\"\n [navigate]=\"false\"\n [sorting]=\"['title', 'asc']\"\n [sortingMode]=\"'client'\"\n [preselectNodes]=\"selectedNodesState?.nodes\"\n [imageResolver]=\"imageResolver\"\n [displayCheckboxesOnHover]=\"true\"\n [isResizingEnabled]=\"true\"\n (selectedItemsCountChanged)=\"onSelectedItemsCountChanged($event)\"\n [blurOnResize]=\"false\"\n (node-dblclick)=\"handleNodeClick($event)\"\n (name-click)=\"handleNodeClick($event)\"\n >\n <adf-custom-empty-content-template>\n <adf-empty-content\n icon=\"library_books\"\n [title]=\"'APP.BROWSE.LIBRARIES.EMPTY_STATE.FILE_LIBRARIES.TITLE'\"\n subtitle=\"APP.BROWSE.LIBRARIES.EMPTY_STATE.FILE_LIBRARIES.TEXT\"\n />\n </adf-custom-empty-content-template>\n\n <data-columns>\n <ng-container *ngFor=\"let column of columns; trackBy: trackByColumnId\">\n <ng-container *ngIf=\"column.template && !(column.desktopOnly && isSmallScreen)\">\n <data-column\n [id]=\"column.id\"\n [key]=\"column.key\"\n [title]=\"column.title\"\n [type]=\"column.type\"\n [format]=\"column.format\"\n [draggable]=\"column.draggable\"\n [resizable]=\"column.resizable\"\n [class]=\"column.class\"\n [sortable]=\"column.sortable\"\n [isHidden]=\"column.isHidden\"\n [sortingKey]=\"column.sortingKey || column.key\"\n >\n <ng-template let-context>\n <adf-dynamic-column [id]=\"column.template\" [context]=\"context\" />\n </ng-template>\n </data-column>\n </ng-container>\n\n <ng-container *ngIf=\"!column.template && !(column.desktopOnly && isSmallScreen)\">\n <data-column\n [id]=\"column.id\"\n [key]=\"column.key\"\n [title]=\"column.title\"\n [type]=\"column.type\"\n [format]=\"column.format\"\n [class]=\"column.class\"\n [draggable]=\"column.draggable\"\n [resizable]=\"column.resizable\"\n [sortable]=\"column.sortable\"\n [isHidden]=\"column.isHidden\"\n [sortingKey]=\"column.sortingKey || column.key\"\n />\n </ng-container>\n </ng-container>\n </data-columns>\n </adf-document-list>\n\n <adf-pagination acaPagination [target]=\"documentList\" />\n </div>\n\n <div class=\"aca-sidebar\" *ngIf=\"infoDrawerOpened$ | async\">\n <aca-info-drawer [node]=\"$any(selection).library\" />\n </div>\n </div>\n</aca-page-layout>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "ngmodule", type: DocumentListModule }, { kind: "component", type: i3.DocumentListComponent, selector: "adf-document-list", inputs: ["includeFields", "where", "permissionsStyle", "locationFormat", "navigate", "showHeader", "navigationMode", "thumbnails", "selectionMode", "multiselect", "contentActions", "contentActionsPosition", "contextMenuActions", "emptyFolderImageUrl", "allowDropFiles", "sorting", "additionalSorting", "sortingMode", "rowStyle", "rowStyleClass", "loading", "_rowFilter", "rowFilter", "imageResolver", "stickyHeader", "headerFilters", "filterValue", "currentFolderId", "preselectNodes", "node", "maxItems", "columnsPresetKey", "setColumnsVisibility", "setColumnsWidths", "setColumnsOrder", "maxColumnsVisible", "isResizingEnabled", "blurOnResize", "displayCheckboxesOnHover"], outputs: ["nodeClick", "nodeDblClick", "folderChange", "preview", "ready", "error", "nodeSelected", "filterSelection", "columnsWidthChanged", "columnsVisibilityChanged", "columnsOrderChanged", "selectedItemsCountChanged"] }, { kind: "directive", type: DocumentListDirective, selector: "[acaDocumentList]" }, { kind: "directive", type: ContextActionsDirective, selector: "[acaContextActions]", inputs: ["acaContextEnable", "customActions"], exportAs: ["acaContextActions"] }, { kind: "ngmodule", type: DataTableModule }, { kind: "component", type: i4.DataColumnComponent, selector: "data-column", inputs: ["id", "key", "customData", "type", "format", "sortable", "draggable", "resizable", "isHidden", "title", "formatTooltip", "sr-title", "class", "copyContent", "editable", "focus", "sortingKey", "order", "currencyConfig", "decimalConfig", "dateConfig"] }, { kind: "component", type: i4.DataColumnListComponent, selector: "data-columns" }, { kind: "directive", type: i4.CustomEmptyContentTemplateDirective, selector: "adf-custom-empty-content-template, empty-folder-content" }, { kind: "component", type: PaginationComponent, selector: "adf-pagination", inputs: ["target", "supportedPageSizes", "pagination"], outputs: ["change", "changePageNumber", "changePageSize", "nextPage", "prevPage"] }, { kind: "directive", type: PaginationDirective, selector: "[acaPagination]" }, { kind: "component", type: InfoDrawerComponent, selector: "aca-info-drawer", inputs: ["nodeId", "node"] }, { kind: "component", type: PageLayoutComponent, selector: "aca-page-layout", inputs: ["hasError"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }, { kind: "component", type: ToolbarComponent, selector: "aca-toolbar", inputs: ["items"] }, { kind: "component", type: EmptyContentComponent, selector: "adf-empty-content", inputs: ["icon", "title", "subtitle"] }, { kind: "component", type: DynamicColumnComponent, selector: "adf-dynamic-column", inputs: ["id", "context"] }], encapsulation: i0.ViewEncapsulation.None });
|
|
61
|
+
}
|
|
62
|
+
export { LibrariesComponent };
|
|
63
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: LibrariesComponent, decorators: [{
|
|
64
|
+
type: Component,
|
|
65
|
+
args: [{ standalone: true, imports: [
|
|
66
|
+
CommonModule,
|
|
67
|
+
DocumentListModule,
|
|
68
|
+
DocumentListDirective,
|
|
69
|
+
ContextActionsDirective,
|
|
70
|
+
DataTableModule,
|
|
71
|
+
PaginationComponent,
|
|
72
|
+
PaginationDirective,
|
|
73
|
+
InfoDrawerComponent,
|
|
74
|
+
PageLayoutComponent,
|
|
75
|
+
TranslateModule,
|
|
76
|
+
ToolbarComponent,
|
|
77
|
+
EmptyContentComponent,
|
|
78
|
+
DynamicColumnComponent
|
|
79
|
+
], encapsulation: ViewEncapsulation.None, template: "<aca-page-layout>\n <div class=\"aca-page-layout-header\">\n <h1 class=\"aca-page-title\">\n {{ (selectedRowItemsCount < 1 ? 'APP.BROWSE.LIBRARIES.MENU.MY_LIBRARIES.TITLE' : 'APP.HEADER.SELECTED') | translate: { count: selectedRowItemsCount } }}\n </h1>\n <aca-toolbar [items]=\"actions\" />\n </div>\n\n <div class=\"aca-page-layout-content\">\n <div class=\"aca-main-content\">\n <adf-document-list\n #documentList\n acaDocumentList\n acaContextActions\n [currentFolderId]=\"'-mysites-'\"\n [selectionMode]=\"'multiple'\"\n [multiselect]=\"true\"\n [navigate]=\"false\"\n [sorting]=\"['title', 'asc']\"\n [sortingMode]=\"'client'\"\n [preselectNodes]=\"selectedNodesState?.nodes\"\n [imageResolver]=\"imageResolver\"\n [displayCheckboxesOnHover]=\"true\"\n [isResizingEnabled]=\"true\"\n (selectedItemsCountChanged)=\"onSelectedItemsCountChanged($event)\"\n [blurOnResize]=\"false\"\n (node-dblclick)=\"handleNodeClick($event)\"\n (name-click)=\"handleNodeClick($event)\"\n >\n <adf-custom-empty-content-template>\n <adf-empty-content\n icon=\"library_books\"\n [title]=\"'APP.BROWSE.LIBRARIES.EMPTY_STATE.FILE_LIBRARIES.TITLE'\"\n subtitle=\"APP.BROWSE.LIBRARIES.EMPTY_STATE.FILE_LIBRARIES.TEXT\"\n />\n </adf-custom-empty-content-template>\n\n <data-columns>\n <ng-container *ngFor=\"let column of columns; trackBy: trackByColumnId\">\n <ng-container *ngIf=\"column.template && !(column.desktopOnly && isSmallScreen)\">\n <data-column\n [id]=\"column.id\"\n [key]=\"column.key\"\n [title]=\"column.title\"\n [type]=\"column.type\"\n [format]=\"column.format\"\n [draggable]=\"column.draggable\"\n [resizable]=\"column.resizable\"\n [class]=\"column.class\"\n [sortable]=\"column.sortable\"\n [isHidden]=\"column.isHidden\"\n [sortingKey]=\"column.sortingKey || column.key\"\n >\n <ng-template let-context>\n <adf-dynamic-column [id]=\"column.template\" [context]=\"context\" />\n </ng-template>\n </data-column>\n </ng-container>\n\n <ng-container *ngIf=\"!column.template && !(column.desktopOnly && isSmallScreen)\">\n <data-column\n [id]=\"column.id\"\n [key]=\"column.key\"\n [title]=\"column.title\"\n [type]=\"column.type\"\n [format]=\"column.format\"\n [class]=\"column.class\"\n [draggable]=\"column.draggable\"\n [resizable]=\"column.resizable\"\n [sortable]=\"column.sortable\"\n [isHidden]=\"column.isHidden\"\n [sortingKey]=\"column.sortingKey || column.key\"\n />\n </ng-container>\n </ng-container>\n </data-columns>\n </adf-document-list>\n\n <adf-pagination acaPagination [target]=\"documentList\" />\n </div>\n\n <div class=\"aca-sidebar\" *ngIf=\"infoDrawerOpened$ | async\">\n <aca-info-drawer [node]=\"$any(selection).library\" />\n </div>\n </div>\n</aca-page-layout>\n" }]
|
|
80
|
+
}], ctorParameters: function () { return [{ type: i1.AppHookService }]; } });
|
|
81
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlicmFyaWVzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FjYS1jb250ZW50L3NyYy9saWIvY29tcG9uZW50cy9saWJyYXJpZXMvbGlicmFyaWVzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FjYS1jb250ZW50L3NyYy9saWIvY29tcG9uZW50cy9saWJyYXJpZXMvbGlicmFyaWVzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBc0JHO0FBRUgsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFbkUsT0FBTyxFQUFFLFNBQVMsRUFBVSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNyRSxPQUFPLEVBQ0wsY0FBYyxFQUNkLHVCQUF1QixFQUN2QixtQkFBbUIsRUFDbkIsYUFBYSxFQUNiLG1CQUFtQixFQUNuQixtQkFBbUIsRUFDbkIsZ0JBQWdCLEVBQ2pCLE1BQU0sc0JBQXNCLENBQUM7QUFDOUIsT0FBTyxFQUF5QixzQkFBc0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3pGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsZUFBZSxFQUFFLHFCQUFxQixFQUFFLG1CQUFtQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDakcsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDakYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7Ozs7O0FBRXRELE1Bb0JhLGtCQUFtQixTQUFRLGFBQWE7SUFHL0I7SUFGcEIsT0FBTyxHQUE0QixFQUFFLENBQUM7SUFFdEMsWUFBb0IsY0FBOEI7UUFDaEQsS0FBSyxFQUFFLENBQUM7UUFEVSxtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7SUFFbEQsQ0FBQztJQUVELFFBQVE7UUFDTixLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7UUFFakIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQ3JCLElBQUksQ0FBQyxjQUFjLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsRUFDakUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUNqRSxJQUFJLENBQUMsY0FBYyxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQy9ELENBQUM7UUFFRixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsbUJBQW1CLENBQUMsU0FBUyxJQUFJLEVBQUUsQ0FBQztJQUNyRSxDQUFDO0lBRUQsVUFBVSxDQUFDLElBQWU7UUFDeEIsSUFBSSxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRTtZQUNyQixJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLHFCQUFxQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztTQUNqRTtJQUNILENBQUM7SUFFRCxlQUFlLENBQUMsS0FBWTtRQUMxQixJQUFJLENBQUMsVUFBVSxDQUFFLEtBQXFCLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3ZELENBQUM7dUdBM0JVLGtCQUFrQjsyRkFBbEIsa0JBQWtCLCtGQy9EL0IsNjNHQXNGQSwyQ0R4Q0ksWUFBWSxvVEFDWixrQkFBa0Isdy9CQUNsQixxQkFBcUIsOERBQ3JCLHVCQUF1QiwrSUFDdkIsZUFBZSw4a0JBQ2YsbUJBQW1CLHNNQUNuQixtQkFBbUIsNERBQ25CLG1CQUFtQix3RkFDbkIsbUJBQW1CLGlGQUNuQixlQUFlLDRGQUNmLGdCQUFnQiwyRUFDaEIscUJBQXFCLHFHQUNyQixzQkFBc0I7O1NBS2Isa0JBQWtCOzJGQUFsQixrQkFBa0I7a0JBcEI5QixTQUFTO2lDQUNJLElBQUksV0FDUDt3QkFDUCxZQUFZO3dCQUNaLGtCQUFrQjt3QkFDbEIscUJBQXFCO3dCQUNyQix1QkFBdUI7d0JBQ3ZCLGVBQWU7d0JBQ2YsbUJBQW1CO3dCQUNuQixtQkFBbUI7d0JBQ25CLG1CQUFtQjt3QkFDbkIsbUJBQW1CO3dCQUNuQixlQUFlO3dCQUNmLGdCQUFnQjt3QkFDaEIscUJBQXFCO3dCQUNyQixzQkFBc0I7cUJBQ3ZCLGlCQUVjLGlCQUFpQixDQUFDLElBQUkiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIENvcHlyaWdodCDCqSAyMDA1LTIwMjQgSHlsYW5kIFNvZnR3YXJlLCBJbmMuIGFuZCBpdHMgYWZmaWxpYXRlcy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqXG4gKiBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb25cbiAqXG4gKiBUaGlzIGZpbGUgaXMgcGFydCBvZiB0aGUgQWxmcmVzY28gRXhhbXBsZSBDb250ZW50IEFwcGxpY2F0aW9uLlxuICogSWYgdGhlIHNvZnR3YXJlIHdhcyBwdXJjaGFzZWQgdW5kZXIgYSBwYWlkIEFsZnJlc2NvIGxpY2Vuc2UsIHRoZSB0ZXJtcyBvZlxuICogdGhlIHBhaWQgbGljZW5zZSBhZ3JlZW1lbnQgd2lsbCBwcmV2YWlsLiBPdGhlcndpc2UsIHRoZSBzb2Z0d2FyZSBpc1xuICogcHJvdmlkZWQgdW5kZXIgdGhlIGZvbGxvd2luZyBvcGVuIHNvdXJjZSBsaWNlbnNlIHRlcm1zOlxuICpcbiAqIFRoZSBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb24gaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeVxuICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5XG4gKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvclxuICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi5cbiAqXG4gKiBUaGUgQWxmcmVzY28gRXhhbXBsZSBDb250ZW50IEFwcGxpY2F0aW9uIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsXG4gKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZlxuICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiBTZWUgdGhlXG4gKiBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy5cbiAqXG4gKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2VcbiAqIGZyb20gSHlsYW5kIFNvZnR3YXJlLiBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uXG4gKi9cblxuaW1wb3J0IHsgTmF2aWdhdGVMaWJyYXJ5QWN0aW9uIH0gZnJvbSAnQGFsZnJlc2NvL2FjYS1zaGFyZWQvc3RvcmUnO1xuaW1wb3J0IHsgU2l0ZUVudHJ5IH0gZnJvbSAnQGFsZnJlc2NvL2pzLWFwaSc7XG5pbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEFwcEhvb2tTZXJ2aWNlLFxuICBDb250ZXh0QWN0aW9uc0RpcmVjdGl2ZSxcbiAgSW5mb0RyYXdlckNvbXBvbmVudCxcbiAgUGFnZUNvbXBvbmVudCxcbiAgUGFnZUxheW91dENvbXBvbmVudCxcbiAgUGFnaW5hdGlvbkRpcmVjdGl2ZSxcbiAgVG9vbGJhckNvbXBvbmVudFxufSBmcm9tICdAYWxmcmVzY28vYWNhLXNoYXJlZCc7XG5pbXBvcnQgeyBEb2N1bWVudExpc3RQcmVzZXRSZWYsIER5bmFtaWNDb2x1bW5Db21wb25lbnQgfSBmcm9tICdAYWxmcmVzY28vYWRmLWV4dGVuc2lvbnMnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IERvY3VtZW50TGlzdE1vZHVsZSB9IGZyb20gJ0BhbGZyZXNjby9hZGYtY29udGVudC1zZXJ2aWNlcyc7XG5pbXBvcnQgeyBEYXRhVGFibGVNb2R1bGUsIEVtcHR5Q29udGVudENvbXBvbmVudCwgUGFnaW5hdGlvbkNvbXBvbmVudCB9IGZyb20gJ0BhbGZyZXNjby9hZGYtY29yZSc7XG5pbXBvcnQgeyBEb2N1bWVudExpc3REaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL2RvY3VtZW50LWxpc3QuZGlyZWN0aXZlJztcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBEb2N1bWVudExpc3RNb2R1bGUsXG4gICAgRG9jdW1lbnRMaXN0RGlyZWN0aXZlLFxuICAgIENvbnRleHRBY3Rpb25zRGlyZWN0aXZlLFxuICAgIERhdGFUYWJsZU1vZHVsZSxcbiAgICBQYWdpbmF0aW9uQ29tcG9uZW50LFxuICAgIFBhZ2luYXRpb25EaXJlY3RpdmUsXG4gICAgSW5mb0RyYXdlckNvbXBvbmVudCxcbiAgICBQYWdlTGF5b3V0Q29tcG9uZW50LFxuICAgIFRyYW5zbGF0ZU1vZHVsZSxcbiAgICBUb29sYmFyQ29tcG9uZW50LFxuICAgIEVtcHR5Q29udGVudENvbXBvbmVudCxcbiAgICBEeW5hbWljQ29sdW1uQ29tcG9uZW50XG4gIF0sXG4gIHRlbXBsYXRlVXJsOiAnLi9saWJyYXJpZXMuY29tcG9uZW50Lmh0bWwnLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIExpYnJhcmllc0NvbXBvbmVudCBleHRlbmRzIFBhZ2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBjb2x1bW5zOiBEb2N1bWVudExpc3RQcmVzZXRSZWZbXSA9IFtdO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgYXBwSG9va1NlcnZpY2U6IEFwcEhvb2tTZXJ2aWNlKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHN1cGVyLm5nT25Jbml0KCk7XG5cbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChcbiAgICAgIHRoaXMuYXBwSG9va1NlcnZpY2UubGlicmFyeURlbGV0ZWQuc3Vic2NyaWJlKCgpID0+IHRoaXMucmVsb2FkKCkpLFxuICAgICAgdGhpcy5hcHBIb29rU2VydmljZS5saWJyYXJ5VXBkYXRlZC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5yZWxvYWQoKSksXG4gICAgICB0aGlzLmFwcEhvb2tTZXJ2aWNlLmxpYnJhcnlMZWZ0LnN1YnNjcmliZSgoKSA9PiB0aGlzLnJlbG9hZCgpKVxuICAgICk7XG5cbiAgICB0aGlzLmNvbHVtbnMgPSB0aGlzLmV4dGVuc2lvbnMuZG9jdW1lbnRMaXN0UHJlc2V0cy5saWJyYXJpZXMgfHwgW107XG4gIH1cblxuICBuYXZpZ2F0ZVRvKG5vZGU6IFNpdGVFbnRyeSkge1xuICAgIGlmIChub2RlPy5lbnRyeT8uZ3VpZCkge1xuICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChuZXcgTmF2aWdhdGVMaWJyYXJ5QWN0aW9uKG5vZGUuZW50cnkuZ3VpZCkpO1xuICAgIH1cbiAgfVxuXG4gIGhhbmRsZU5vZGVDbGljayhldmVudDogRXZlbnQpIHtcbiAgICB0aGlzLm5hdmlnYXRlVG8oKGV2ZW50IGFzIEN1c3RvbUV2ZW50KS5kZXRhaWw/Lm5vZGUpO1xuICB9XG59XG4iLCI8YWNhLXBhZ2UtbGF5b3V0PlxuICA8ZGl2IGNsYXNzPVwiYWNhLXBhZ2UtbGF5b3V0LWhlYWRlclwiPlxuICAgIDxoMSBjbGFzcz1cImFjYS1wYWdlLXRpdGxlXCI+XG4gICAgICB7eyAoc2VsZWN0ZWRSb3dJdGVtc0NvdW50IDwgMSA/ICdBUFAuQlJPV1NFLkxJQlJBUklFUy5NRU5VLk1ZX0xJQlJBUklFUy5USVRMRScgOiAnQVBQLkhFQURFUi5TRUxFQ1RFRCcpIHwgdHJhbnNsYXRlOiB7IGNvdW50OiBzZWxlY3RlZFJvd0l0ZW1zQ291bnQgfSB9fVxuICAgIDwvaDE+XG4gICAgPGFjYS10b29sYmFyIFtpdGVtc109XCJhY3Rpb25zXCIgLz5cbiAgPC9kaXY+XG5cbiAgPGRpdiBjbGFzcz1cImFjYS1wYWdlLWxheW91dC1jb250ZW50XCI+XG4gICAgPGRpdiBjbGFzcz1cImFjYS1tYWluLWNvbnRlbnRcIj5cbiAgICAgIDxhZGYtZG9jdW1lbnQtbGlzdFxuICAgICAgICAjZG9jdW1lbnRMaXN0XG4gICAgICAgIGFjYURvY3VtZW50TGlzdFxuICAgICAgICBhY2FDb250ZXh0QWN0aW9uc1xuICAgICAgICBbY3VycmVudEZvbGRlcklkXT1cIictbXlzaXRlcy0nXCJcbiAgICAgICAgW3NlbGVjdGlvbk1vZGVdPVwiJ211bHRpcGxlJ1wiXG4gICAgICAgIFttdWx0aXNlbGVjdF09XCJ0cnVlXCJcbiAgICAgICAgW25hdmlnYXRlXT1cImZhbHNlXCJcbiAgICAgICAgW3NvcnRpbmddPVwiWyd0aXRsZScsICdhc2MnXVwiXG4gICAgICAgIFtzb3J0aW5nTW9kZV09XCInY2xpZW50J1wiXG4gICAgICAgIFtwcmVzZWxlY3ROb2Rlc109XCJzZWxlY3RlZE5vZGVzU3RhdGU/Lm5vZGVzXCJcbiAgICAgICAgW2ltYWdlUmVzb2x2ZXJdPVwiaW1hZ2VSZXNvbHZlclwiXG4gICAgICAgIFtkaXNwbGF5Q2hlY2tib3hlc09uSG92ZXJdPVwidHJ1ZVwiXG4gICAgICAgIFtpc1Jlc2l6aW5nRW5hYmxlZF09XCJ0cnVlXCJcbiAgICAgICAgKHNlbGVjdGVkSXRlbXNDb3VudENoYW5nZWQpPVwib25TZWxlY3RlZEl0ZW1zQ291bnRDaGFuZ2VkKCRldmVudClcIlxuICAgICAgICBbYmx1ck9uUmVzaXplXT1cImZhbHNlXCJcbiAgICAgICAgKG5vZGUtZGJsY2xpY2spPVwiaGFuZGxlTm9kZUNsaWNrKCRldmVudClcIlxuICAgICAgICAobmFtZS1jbGljayk9XCJoYW5kbGVOb2RlQ2xpY2soJGV2ZW50KVwiXG4gICAgICA+XG4gICAgICAgIDxhZGYtY3VzdG9tLWVtcHR5LWNvbnRlbnQtdGVtcGxhdGU+XG4gICAgICAgICAgPGFkZi1lbXB0eS1jb250ZW50XG4gICAgICAgICAgICBpY29uPVwibGlicmFyeV9ib29rc1wiXG4gICAgICAgICAgICBbdGl0bGVdPVwiJ0FQUC5CUk9XU0UuTElCUkFSSUVTLkVNUFRZX1NUQVRFLkZJTEVfTElCUkFSSUVTLlRJVExFJ1wiXG4gICAgICAgICAgICBzdWJ0aXRsZT1cIkFQUC5CUk9XU0UuTElCUkFSSUVTLkVNUFRZX1NUQVRFLkZJTEVfTElCUkFSSUVTLlRFWFRcIlxuICAgICAgICAgIC8+XG4gICAgICAgIDwvYWRmLWN1c3RvbS1lbXB0eS1jb250ZW50LXRlbXBsYXRlPlxuXG4gICAgICAgIDxkYXRhLWNvbHVtbnM+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgY29sdW1uIG9mIGNvbHVtbnM7IHRyYWNrQnk6IHRyYWNrQnlDb2x1bW5JZFwiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImNvbHVtbi50ZW1wbGF0ZSAmJiAhKGNvbHVtbi5kZXNrdG9wT25seSAmJiBpc1NtYWxsU2NyZWVuKVwiPlxuICAgICAgICAgICAgICA8ZGF0YS1jb2x1bW5cbiAgICAgICAgICAgICAgICBbaWRdPVwiY29sdW1uLmlkXCJcbiAgICAgICAgICAgICAgICBba2V5XT1cImNvbHVtbi5rZXlcIlxuICAgICAgICAgICAgICAgIFt0aXRsZV09XCJjb2x1bW4udGl0bGVcIlxuICAgICAgICAgICAgICAgIFt0eXBlXT1cImNvbHVtbi50eXBlXCJcbiAgICAgICAgICAgICAgICBbZm9ybWF0XT1cImNvbHVtbi5mb3JtYXRcIlxuICAgICAgICAgICAgICAgIFtkcmFnZ2FibGVdPVwiY29sdW1uLmRyYWdnYWJsZVwiXG4gICAgICAgICAgICAgICAgW3Jlc2l6YWJsZV09XCJjb2x1bW4ucmVzaXphYmxlXCJcbiAgICAgICAgICAgICAgICBbY2xhc3NdPVwiY29sdW1uLmNsYXNzXCJcbiAgICAgICAgICAgICAgICBbc29ydGFibGVdPVwiY29sdW1uLnNvcnRhYmxlXCJcbiAgICAgICAgICAgICAgICBbaXNIaWRkZW5dPVwiY29sdW1uLmlzSGlkZGVuXCJcbiAgICAgICAgICAgICAgICBbc29ydGluZ0tleV09XCJjb2x1bW4uc29ydGluZ0tleSB8fCBjb2x1bW4ua2V5XCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBsZXQtY29udGV4dD5cbiAgICAgICAgICAgICAgICAgIDxhZGYtZHluYW1pYy1jb2x1bW4gW2lkXT1cImNvbHVtbi50ZW1wbGF0ZVwiIFtjb250ZXh0XT1cImNvbnRleHRcIiAvPlxuICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICAgIDwvZGF0YS1jb2x1bW4+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFjb2x1bW4udGVtcGxhdGUgJiYgIShjb2x1bW4uZGVza3RvcE9ubHkgJiYgaXNTbWFsbFNjcmVlbilcIj5cbiAgICAgICAgICAgICAgPGRhdGEtY29sdW1uXG4gICAgICAgICAgICAgICAgW2lkXT1cImNvbHVtbi5pZFwiXG4gICAgICAgICAgICAgICAgW2tleV09XCJjb2x1bW4ua2V5XCJcbiAgICAgICAgICAgICAgICBbdGl0bGVdPVwiY29sdW1uLnRpdGxlXCJcbiAgICAgICAgICAgICAgICBbdHlwZV09XCJjb2x1bW4udHlwZVwiXG4gICAgICAgICAgICAgICAgW2Zvcm1hdF09XCJjb2x1bW4uZm9ybWF0XCJcbiAgICAgICAgICAgICAgICBbY2xhc3NdPVwiY29sdW1uLmNsYXNzXCJcbiAgICAgICAgICAgICAgICBbZHJhZ2dhYmxlXT1cImNvbHVtbi5kcmFnZ2FibGVcIlxuICAgICAgICAgICAgICAgIFtyZXNpemFibGVdPVwiY29sdW1uLnJlc2l6YWJsZVwiXG4gICAgICAgICAgICAgICAgW3NvcnRhYmxlXT1cImNvbHVtbi5zb3J0YWJsZVwiXG4gICAgICAgICAgICAgICAgW2lzSGlkZGVuXT1cImNvbHVtbi5pc0hpZGRlblwiXG4gICAgICAgICAgICAgICAgW3NvcnRpbmdLZXldPVwiY29sdW1uLnNvcnRpbmdLZXkgfHwgY29sdW1uLmtleVwiXG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9kYXRhLWNvbHVtbnM+XG4gICAgICA8L2FkZi1kb2N1bWVudC1saXN0PlxuXG4gICAgICA8YWRmLXBhZ2luYXRpb24gYWNhUGFnaW5hdGlvbiBbdGFyZ2V0XT1cImRvY3VtZW50TGlzdFwiIC8+XG4gICAgPC9kaXY+XG5cbiAgICA8ZGl2IGNsYXNzPVwiYWNhLXNpZGViYXJcIiAqbmdJZj1cImluZm9EcmF3ZXJPcGVuZWQkIHwgYXN5bmNcIj5cbiAgICAgIDxhY2EtaW5mby1kcmF3ZXIgW25vZGVdPVwiJGFueShzZWxlY3Rpb24pLmxpYnJhcnlcIiAvPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvYWNhLXBhZ2UtbGF5b3V0PlxuIl19
|