@alfresco/aca-content 4.0.0-4895233349
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +24 -0
- package/about/about.component.d.ts +45 -0
- package/about/aca-about.module.d.ts +39 -0
- package/about/dev-mode.tokens.d.ts +25 -0
- package/about/index.d.ts +5 -0
- package/about/package-json.token.d.ts +25 -0
- package/about/public-api.d.ts +27 -0
- package/assets/app.extensions.json +2626 -0
- package/assets/i18n/ar.json +660 -0
- package/assets/i18n/cs.json +660 -0
- package/assets/i18n/da.json +660 -0
- package/assets/i18n/de.json +660 -0
- package/assets/i18n/en.json +660 -0
- package/assets/i18n/es.json +660 -0
- package/assets/i18n/fi.json +660 -0
- package/assets/i18n/fr.json +660 -0
- package/assets/i18n/it.json +660 -0
- package/assets/i18n/ja.json +660 -0
- package/assets/i18n/nb.json +660 -0
- package/assets/i18n/nl.json +660 -0
- package/assets/i18n/pl.json +660 -0
- package/assets/i18n/pt-BR.json +660 -0
- package/assets/i18n/ru.json +660 -0
- package/assets/i18n/sv.json +660 -0
- package/assets/i18n/zh-CN.json +660 -0
- package/assets/images/Wallpaper-BG-generic.svg +39 -0
- package/assets/images/adf-move-file-24px.svg +1 -0
- package/assets/images/baseline-library_books-24px.svg +2 -0
- package/assets/images/baseline-lock-24px.svg +1 -0
- package/assets/images/join-library.svg +32 -0
- package/esm2020/about/about.component.mjs +77 -0
- package/esm2020/about/aca-about.module.mjs +67 -0
- package/esm2020/about/alfresco-aca-content-about.mjs +5 -0
- package/esm2020/about/dev-mode.tokens.mjs +26 -0
- package/esm2020/about/package-json.token.mjs +26 -0
- package/esm2020/about/public-api.mjs +28 -0
- package/esm2020/alfresco-aca-content.mjs +5 -0
- package/esm2020/lib/aca-content.module.mjs +365 -0
- package/esm2020/lib/aca-content.routes.mjs +581 -0
- package/esm2020/lib/components/common/common.module.mjs +67 -0
- package/esm2020/lib/components/common/language-picker/language-picker.component.mjs +57 -0
- package/esm2020/lib/components/common/location-link/location-link.component.mjs +177 -0
- package/esm2020/lib/components/common/logout/logout.component.mjs +60 -0
- package/esm2020/lib/components/common/toggle-shared/toggle-shared.component.mjs +65 -0
- package/esm2020/lib/components/common/user-info/user-info.component.mjs +86 -0
- package/esm2020/lib/components/context-menu/context-menu-item.component.mjs +58 -0
- package/esm2020/lib/components/context-menu/context-menu-outside-event.directive.mjs +65 -0
- package/esm2020/lib/components/context-menu/context-menu-overlay.mjs +32 -0
- package/esm2020/lib/components/context-menu/context-menu.component.mjs +102 -0
- package/esm2020/lib/components/context-menu/context-menu.module.mjs +76 -0
- package/esm2020/lib/components/context-menu/context-menu.service.mjs +103 -0
- package/esm2020/lib/components/context-menu/direction.token.mjs +29 -0
- package/esm2020/lib/components/context-menu/interfaces.mjs +25 -0
- package/esm2020/lib/components/create-menu/create-menu.component.mjs +73 -0
- package/esm2020/lib/components/create-menu/create-menu.module.mjs +44 -0
- package/esm2020/lib/components/details/details.component.mjs +99 -0
- package/esm2020/lib/components/dl-custom-components/document-list-custom-components.module.mjs +49 -0
- package/esm2020/lib/components/dl-custom-components/name-column/name-column.component.mjs +90 -0
- package/esm2020/lib/components/dl-custom-components/tags-column/tags-column.component.mjs +31 -0
- package/esm2020/lib/components/dl-custom-components/thumbnail-column/thumbnail-column.component.mjs +51 -0
- package/esm2020/lib/components/favorite-libraries/favorite-libraries.component.mjs +113 -0
- package/esm2020/lib/components/favorites/favorites.component.mjs +98 -0
- package/esm2020/lib/components/files/files.component.mjs +312 -0
- package/esm2020/lib/components/home/home.component.mjs +49 -0
- package/esm2020/lib/components/info-drawer/comments-tab/comments-tab.component.mjs +56 -0
- package/esm2020/lib/components/info-drawer/info.drawer.module.mjs +92 -0
- package/esm2020/lib/components/info-drawer/library-metadata-tab/library-metadata-form.component.mjs +143 -0
- package/esm2020/lib/components/info-drawer/library-metadata-tab/library-metadata-tab.component.mjs +42 -0
- package/esm2020/lib/components/info-drawer/metadata-tab/metadata-tab.component.mjs +88 -0
- package/esm2020/lib/components/info-drawer/versions-tab/versions-tab.component.mjs +95 -0
- package/esm2020/lib/components/libraries/libraries.component.mjs +70 -0
- package/esm2020/lib/components/node-version/node-version-form.component.mjs +70 -0
- package/esm2020/lib/components/node-version/node-version.module.mjs +78 -0
- package/esm2020/lib/components/recent-files/recent-files.component.mjs +81 -0
- package/esm2020/lib/components/search/search-action-menu/search-action-menu.component.mjs +59 -0
- package/esm2020/lib/components/search/search-input/search-input.component.mjs +275 -0
- package/esm2020/lib/components/search/search-input-control/search-input-control.component.mjs +87 -0
- package/esm2020/lib/components/search/search-input.module.mjs +47 -0
- package/esm2020/lib/components/search/search-libraries-results/search-libraries-query-builder.service.mjs +91 -0
- package/esm2020/lib/components/search/search-libraries-results/search-libraries-results.component.mjs +142 -0
- package/esm2020/lib/components/search/search-navigation.service.mjs +60 -0
- package/esm2020/lib/components/search/search-results/search-results.component.mjs +221 -0
- package/esm2020/lib/components/search/search-results-row/search-results-row.component.mjs +101 -0
- package/esm2020/lib/components/search/search-results.module.mjs +88 -0
- package/esm2020/lib/components/shared-files/shared-files.component.mjs +78 -0
- package/esm2020/lib/components/shared-link-view/shared-link-view.component.mjs +81 -0
- package/esm2020/lib/components/shared-link-view/shared-link-view.module.mjs +69 -0
- package/esm2020/lib/components/sidenav/components/button-menu.component.mjs +57 -0
- package/esm2020/lib/components/sidenav/components/expand-menu.component.mjs +53 -0
- package/esm2020/lib/components/sidenav/components/sidenav-header.component.mjs +74 -0
- package/esm2020/lib/components/sidenav/directives/action.directive.mjs +74 -0
- package/esm2020/lib/components/sidenav/directives/active-link.directive.mjs +92 -0
- package/esm2020/lib/components/sidenav/directives/expansion-panel.directive.mjs +101 -0
- package/esm2020/lib/components/sidenav/directives/menu-panel.directive.mjs +98 -0
- package/esm2020/lib/components/sidenav/sidenav.component.mjs +83 -0
- package/esm2020/lib/components/sidenav/sidenav.module.mjs +84 -0
- package/esm2020/lib/components/toolbar/document-display-mode/document-display-mode.component.mjs +84 -0
- package/esm2020/lib/components/toolbar/toggle-edit-offline/toggle-edit-offline.component.mjs +150 -0
- package/esm2020/lib/components/toolbar/toggle-favorite/toggle-favorite.component.mjs +79 -0
- package/esm2020/lib/components/toolbar/toggle-favorite-library/toggle-favorite-library.component.mjs +101 -0
- package/esm2020/lib/components/toolbar/toggle-info-drawer/toggle-info-drawer.component.mjs +75 -0
- package/esm2020/lib/components/toolbar/toggle-join-library/toggle-join-library-button.component.mjs +98 -0
- package/esm2020/lib/components/toolbar/toggle-join-library/toggle-join-library-menu.component.mjs +80 -0
- package/esm2020/lib/components/toolbar/toolbar.module.mjs +88 -0
- package/esm2020/lib/components/toolbar/view-node/view-node.component.mjs +109 -0
- package/esm2020/lib/components/trashcan/trashcan.component.mjs +63 -0
- package/esm2020/lib/components/trashcan/trashcan.module.mjs +74 -0
- package/esm2020/lib/components/upload-files-dialog/upload-files-dialog.component.mjs +50 -0
- package/esm2020/lib/components/view-profile/view-profile.component.mjs +174 -0
- package/esm2020/lib/components/view-profile/view-profile.guard.mjs +47 -0
- package/esm2020/lib/components/view-profile/view-profile.module.mjs +42 -0
- package/esm2020/lib/dialogs/node-template/create-from-template.dialog.mjs +119 -0
- package/esm2020/lib/directives/directives.module.mjs +42 -0
- package/esm2020/lib/directives/document-list.directive.mjs +141 -0
- package/esm2020/lib/extensions/core.extensions.module.mjs +64 -0
- package/esm2020/lib/material.module.mjs +57 -0
- package/esm2020/lib/services/content-management.service.mjs +870 -0
- package/esm2020/lib/services/content-service-extension.service.mjs +63 -0
- package/esm2020/lib/services/content-url.service.mjs +72 -0
- package/esm2020/lib/services/node-actions.service.mjs +600 -0
- package/esm2020/lib/services/node-template.service.mjs +149 -0
- package/esm2020/lib/store/app-store.module.mjs +95 -0
- package/esm2020/lib/store/effects/app.effects.mjs +61 -0
- package/esm2020/lib/store/effects/contextmenu.effects.mjs +55 -0
- package/esm2020/lib/store/effects/download.effects.mjs +159 -0
- package/esm2020/lib/store/effects/favorite.effects.mjs +76 -0
- package/esm2020/lib/store/effects/library.effects.mjs +111 -0
- package/esm2020/lib/store/effects/node.effects.mjs +309 -0
- package/esm2020/lib/store/effects/search.effects.mjs +60 -0
- package/esm2020/lib/store/effects/template.effects.mjs +121 -0
- package/esm2020/lib/store/effects/upload.effects.mjs +169 -0
- package/esm2020/lib/store/effects/viewer.effects.mjs +175 -0
- package/esm2020/lib/store/effects.mjs +35 -0
- package/esm2020/lib/store/initial-state.mjs +62 -0
- package/esm2020/lib/store/reducers/app.reducer.mjs +211 -0
- package/esm2020/public-api.mjs +32 -0
- package/fesm2015/alfresco-aca-content-about.mjs +216 -0
- package/fesm2015/alfresco-aca-content-about.mjs.map +1 -0
- package/fesm2015/alfresco-aca-content.mjs +9771 -0
- package/fesm2015/alfresco-aca-content.mjs.map +1 -0
- package/fesm2020/alfresco-aca-content-about.mjs +214 -0
- package/fesm2020/alfresco-aca-content-about.mjs.map +1 -0
- package/fesm2020/alfresco-aca-content.mjs +9915 -0
- package/fesm2020/alfresco-aca-content.mjs.map +1 -0
- package/index.d.ts +5 -0
- package/lib/aca-content.module.d.ts +47 -0
- package/lib/aca-content.routes.d.ts +27 -0
- package/lib/components/common/common.module.d.ts +17 -0
- package/lib/components/common/language-picker/language-picker.component.d.ts +5 -0
- package/lib/components/common/location-link/location-link.component.d.ts +48 -0
- package/lib/components/common/logout/logout.component.d.ts +10 -0
- package/lib/components/common/toggle-shared/toggle-shared.component.d.ts +43 -0
- package/lib/components/common/user-info/user-info.component.d.ts +44 -0
- package/lib/components/context-menu/context-menu-item.component.d.ts +13 -0
- package/lib/components/context-menu/context-menu-outside-event.directive.d.ts +35 -0
- package/lib/components/context-menu/context-menu-overlay.d.ts +29 -0
- package/lib/components/context-menu/context-menu.component.d.ts +48 -0
- package/lib/components/context-menu/context-menu.module.d.ts +18 -0
- package/lib/components/context-menu/context-menu.service.d.ts +43 -0
- package/lib/components/context-menu/direction.token.d.ts +25 -0
- package/lib/components/context-menu/interfaces.d.ts +30 -0
- package/lib/components/create-menu/create-menu.component.d.ts +42 -0
- package/lib/components/create-menu/create-menu.module.d.ts +10 -0
- package/lib/components/details/details.component.d.ts +46 -0
- package/lib/components/dl-custom-components/document-list-custom-components.module.d.ts +14 -0
- package/lib/components/dl-custom-components/name-column/name-column.component.d.ts +41 -0
- package/lib/components/dl-custom-components/tags-column/tags-column.component.d.ts +35 -0
- package/lib/components/dl-custom-components/thumbnail-column/thumbnail-column.component.d.ts +17 -0
- package/lib/components/favorite-libraries/favorite-libraries.component.d.ts +54 -0
- package/lib/components/favorites/favorites.component.d.ts +49 -0
- package/lib/components/files/files.component.d.ts +55 -0
- package/lib/components/home/home.component.d.ts +36 -0
- package/lib/components/info-drawer/comments-tab/comments-tab.component.d.ts +11 -0
- package/lib/components/info-drawer/info.drawer.module.d.ts +19 -0
- package/lib/components/info-drawer/library-metadata-tab/library-metadata-form.component.d.ts +64 -0
- package/lib/components/info-drawer/library-metadata-tab/library-metadata-tab.component.d.ts +7 -0
- package/lib/components/info-drawer/metadata-tab/metadata-tab.component.d.ts +49 -0
- package/lib/components/info-drawer/versions-tab/versions-tab.component.d.ts +35 -0
- package/lib/components/libraries/libraries.component.d.ts +44 -0
- package/lib/components/node-version/node-version-form.component.d.ts +46 -0
- package/lib/components/node-version/node-version.module.d.ts +16 -0
- package/lib/components/recent-files/recent-files.component.d.ts +48 -0
- package/lib/components/search/search-action-menu/search-action-menu.component.d.ts +38 -0
- package/lib/components/search/search-input/search-input.component.d.ts +85 -0
- package/lib/components/search/search-input-control/search-input-control.component.d.ts +50 -0
- package/lib/components/search/search-input.module.d.ts +12 -0
- package/lib/components/search/search-libraries-results/search-libraries-query-builder.service.d.ts +56 -0
- package/lib/components/search/search-libraries-results/search-libraries-results.component.d.ts +58 -0
- package/lib/components/search/search-navigation.service.d.ts +13 -0
- package/lib/components/search/search-results/search-results.component.d.ts +69 -0
- package/lib/components/search/search-results-row/search-results-row.component.d.ts +50 -0
- package/lib/components/search/search-results.module.d.ts +21 -0
- package/lib/components/shared-files/shared-files.component.d.ts +47 -0
- package/lib/components/shared-link-view/shared-link-view.component.d.ts +47 -0
- package/lib/components/shared-link-view/shared-link-view.module.d.ts +15 -0
- package/lib/components/sidenav/components/button-menu.component.d.ts +37 -0
- package/lib/components/sidenav/components/expand-menu.component.d.ts +35 -0
- package/lib/components/sidenav/components/sidenav-header.component.d.ts +48 -0
- package/lib/components/sidenav/directives/action.directive.d.ts +14 -0
- package/lib/components/sidenav/directives/active-link.directive.d.ts +45 -0
- package/lib/components/sidenav/directives/expansion-panel.directive.d.ts +44 -0
- package/lib/components/sidenav/directives/menu-panel.directive.d.ts +42 -0
- package/lib/components/sidenav/sidenav.component.d.ts +50 -0
- package/lib/components/sidenav/sidenav.module.d.ts +19 -0
- package/lib/components/toolbar/document-display-mode/document-display-mode.component.d.ts +13 -0
- package/lib/components/toolbar/toggle-edit-offline/toggle-edit-offline.component.d.ts +47 -0
- package/lib/components/toolbar/toggle-favorite/toggle-favorite.component.d.ts +42 -0
- package/lib/components/toolbar/toggle-favorite-library/toggle-favorite-library.component.d.ts +42 -0
- package/lib/components/toolbar/toggle-info-drawer/toggle-info-drawer.component.d.ts +11 -0
- package/lib/components/toolbar/toggle-join-library/toggle-join-library-button.component.d.ts +41 -0
- package/lib/components/toolbar/toggle-join-library/toggle-join-library-menu.component.d.ts +10 -0
- package/lib/components/toolbar/toolbar.module.d.ts +20 -0
- package/lib/components/toolbar/view-node/view-node.component.d.ts +19 -0
- package/lib/components/trashcan/trashcan.component.d.ts +42 -0
- package/lib/components/trashcan/trashcan.module.d.ts +16 -0
- package/lib/components/upload-files-dialog/upload-files-dialog.component.d.ts +37 -0
- package/lib/components/view-profile/view-profile.component.d.ts +59 -0
- package/lib/components/view-profile/view-profile.guard.d.ts +12 -0
- package/lib/components/view-profile/view-profile.module.d.ts +9 -0
- package/lib/dialogs/node-template/create-from-template.dialog.d.ts +49 -0
- package/lib/directives/directives.module.d.ts +9 -0
- package/lib/directives/document-list.directive.d.ts +56 -0
- package/lib/extensions/core.extensions.module.d.ts +14 -0
- package/lib/material.module.d.ts +14 -0
- package/lib/services/content-management.service.d.ts +100 -0
- package/lib/services/content-service-extension.service.d.ts +11 -0
- package/lib/services/content-url.service.d.ts +17 -0
- package/lib/services/node-actions.service.d.ts +93 -0
- package/lib/services/node-template.service.d.ts +34 -0
- package/lib/store/app-store.module.d.ts +10 -0
- package/lib/store/effects/app.effects.d.ts +41 -0
- package/lib/store/effects/contextmenu.effects.d.ts +12 -0
- package/lib/store/effects/download.effects.d.ts +49 -0
- package/lib/store/effects/favorite.effects.d.ts +38 -0
- package/lib/store/effects/library.effects.d.ts +43 -0
- package/lib/store/effects/node.effects.d.ts +56 -0
- package/lib/store/effects/search.effects.d.ts +37 -0
- package/lib/store/effects/template.effects.d.ts +54 -0
- package/lib/store/effects/upload.effects.d.ts +52 -0
- package/lib/store/effects/viewer.effects.d.ts +55 -0
- package/lib/store/effects.d.ts +34 -0
- package/lib/store/initial-state.d.ts +26 -0
- package/lib/store/reducers/app.reducer.d.ts +26 -0
- package/package.json +47 -0
- package/public-api.d.ts +28 -0
- package/ui/application.scss +53 -0
- package/ui/colors.scss +96 -0
- package/ui/custom-theme.scss +34 -0
- package/ui/dynamic-theme/custom-background-color.scss +14 -0
- package/ui/dynamic-theme/custom-palette-creator.scss +132 -0
- package/ui/dynamic-theme/custom-text-color.scss +8 -0
- package/ui/dynamic-theme/custom-theme-palettes.scss +33 -0
- package/ui/dynamic-theme/custom-theme.scss.tpl +72 -0
- package/ui/dynamic-theme/index.scss +1 -0
- package/ui/dynamic-theme/theme-configuration.scss.tpl +14 -0
- package/ui/dynamic-theme/typography.scss +94 -0
- package/ui/mixins.scss +26 -0
- package/ui/overrides/adf-about.theme.scss +38 -0
- package/ui/overrides/adf-pagination.theme.scss +46 -0
- package/ui/overrides/adf-style-fixes.theme.scss +18 -0
- package/ui/overrides/ay11.scss +232 -0
- package/ui/theme.scss +55 -0
- package/ui/variables/font-family.scss +1 -0
- package/ui/variables/variables.scss +92 -0
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Copyright © 2005-2023 Hyland Software, Inc. and its affiliates. All rights reserved.
|
|
3
|
+
*
|
|
4
|
+
* Alfresco Example Content Application
|
|
5
|
+
*
|
|
6
|
+
* This file is part of the Alfresco Example Content Application.
|
|
7
|
+
* If the software was purchased under a paid Alfresco license, the terms of
|
|
8
|
+
* the paid license agreement will prevail. Otherwise, the software is
|
|
9
|
+
* provided under the following open source license terms:
|
|
10
|
+
*
|
|
11
|
+
* The Alfresco Example Content Application is free software: you can redistribute it and/or modify
|
|
12
|
+
* it under the terms of the GNU Lesser General Public License as published by
|
|
13
|
+
* the Free Software Foundation, either version 3 of the License, or
|
|
14
|
+
* (at your option) any later version.
|
|
15
|
+
*
|
|
16
|
+
* The Alfresco Example Content Application is distributed in the hope that it will be useful,
|
|
17
|
+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
18
|
+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
19
|
+
* GNU Lesser General Public License for more details.
|
|
20
|
+
*
|
|
21
|
+
* You should have received a copy of the GNU Lesser General Public License
|
|
22
|
+
* from Hyland Software. If not, see <http://www.gnu.org/licenses/>.
|
|
23
|
+
*/
|
|
24
|
+
import { BreakpointObserver, Breakpoints } from '@angular/cdk/layout';
|
|
25
|
+
import { Component, ChangeDetectorRef } from '@angular/core';
|
|
26
|
+
import { Store } from '@ngrx/store';
|
|
27
|
+
import { Pagination } from '@alfresco/js-api';
|
|
28
|
+
import { ContentManagementService } from '../../services/content-management.service';
|
|
29
|
+
import { AppExtensionService, AppHookService, ContentApiService, PageComponent } from '@alfresco/aca-shared';
|
|
30
|
+
import { NavigateLibraryAction } from '@alfresco/aca-shared/store';
|
|
31
|
+
import { UserPreferencesService } from '@alfresco/adf-core';
|
|
32
|
+
import * as i0 from "@angular/core";
|
|
33
|
+
import * as i1 from "../../services/content-management.service";
|
|
34
|
+
import * as i2 from "@ngrx/store";
|
|
35
|
+
import * as i3 from "@alfresco/aca-shared";
|
|
36
|
+
import * as i4 from "@angular/cdk/layout";
|
|
37
|
+
import * as i5 from "@alfresco/adf-core";
|
|
38
|
+
import * as i6 from "@angular/common";
|
|
39
|
+
import * as i7 from "@alfresco/adf-content-services";
|
|
40
|
+
import * as i8 from "@alfresco/adf-extensions";
|
|
41
|
+
import * as i9 from "../../directives/document-list.directive";
|
|
42
|
+
export class FavoriteLibrariesComponent extends PageComponent {
|
|
43
|
+
constructor(content, store, extensions, appHookService, contentApiService, breakpointObserver, preferences, changeDetectorRef) {
|
|
44
|
+
super(store, extensions, content);
|
|
45
|
+
this.appHookService = appHookService;
|
|
46
|
+
this.contentApiService = contentApiService;
|
|
47
|
+
this.breakpointObserver = breakpointObserver;
|
|
48
|
+
this.preferences = preferences;
|
|
49
|
+
this.changeDetectorRef = changeDetectorRef;
|
|
50
|
+
this.pagination = new Pagination({
|
|
51
|
+
skipCount: 0,
|
|
52
|
+
maxItems: 25,
|
|
53
|
+
totalItems: 0
|
|
54
|
+
});
|
|
55
|
+
this.isLoading = false;
|
|
56
|
+
this.isSmallScreen = false;
|
|
57
|
+
this.columns = [];
|
|
58
|
+
}
|
|
59
|
+
ngOnInit() {
|
|
60
|
+
super.ngOnInit();
|
|
61
|
+
this.getList({ maxItems: this.preferences.paginationSize });
|
|
62
|
+
this.subscriptions = this.subscriptions.concat([
|
|
63
|
+
this.appHookService.libraryDeleted.subscribe(() => this.reloadList()),
|
|
64
|
+
this.appHookService.libraryUpdated.subscribe(() => this.reloadList()),
|
|
65
|
+
this.appHookService.libraryJoined.subscribe(() => this.reloadList()),
|
|
66
|
+
this.appHookService.libraryLeft.subscribe(() => this.reloadList()),
|
|
67
|
+
this.appHookService.favoriteLibraryToggle.subscribe(() => this.reloadList()),
|
|
68
|
+
this.breakpointObserver.observe([Breakpoints.HandsetPortrait, Breakpoints.HandsetLandscape]).subscribe((result) => {
|
|
69
|
+
this.isSmallScreen = result.matches;
|
|
70
|
+
})
|
|
71
|
+
]);
|
|
72
|
+
this.columns = this.extensions.documentListPresets.favoriteLibraries || [];
|
|
73
|
+
}
|
|
74
|
+
navigateTo(node) {
|
|
75
|
+
if (node && node.entry && node.entry.guid) {
|
|
76
|
+
this.store.dispatch(new NavigateLibraryAction(node.entry.guid, 'favorite/libraries'));
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
handleNodeClick(event) {
|
|
80
|
+
this.navigateTo(event.detail?.node);
|
|
81
|
+
}
|
|
82
|
+
onChangePageSize(pagination) {
|
|
83
|
+
this.preferences.paginationSize = pagination.maxItems;
|
|
84
|
+
this.getList(pagination);
|
|
85
|
+
}
|
|
86
|
+
onChange(pagination) {
|
|
87
|
+
this.getList(pagination);
|
|
88
|
+
}
|
|
89
|
+
getList(pagination) {
|
|
90
|
+
this.isLoading = true;
|
|
91
|
+
this.contentApiService.getFavoriteLibraries('-me-', pagination).subscribe((favoriteLibraries) => {
|
|
92
|
+
this.list = favoriteLibraries;
|
|
93
|
+
this.pagination = favoriteLibraries.list.pagination;
|
|
94
|
+
this.isLoading = false;
|
|
95
|
+
this.changeDetectorRef.detectChanges();
|
|
96
|
+
}, () => {
|
|
97
|
+
this.list = null;
|
|
98
|
+
this.pagination = null;
|
|
99
|
+
this.isLoading = false;
|
|
100
|
+
});
|
|
101
|
+
}
|
|
102
|
+
reloadList() {
|
|
103
|
+
this.reload();
|
|
104
|
+
this.getList(this.pagination);
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
FavoriteLibrariesComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: FavoriteLibrariesComponent, deps: [{ token: i1.ContentManagementService }, { token: i2.Store }, { token: i3.AppExtensionService }, { token: i3.AppHookService }, { token: i3.ContentApiService }, { token: i4.BreakpointObserver }, { token: i5.UserPreferencesService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
108
|
+
FavoriteLibrariesComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: FavoriteLibrariesComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<aca-page-layout>\n <aca-page-layout-header>\n <adf-breadcrumb root=\"APP.BROWSE.LIBRARIES.MENU.FAVORITE_LIBRARIES.TITLE\"> </adf-breadcrumb>\n\n <adf-toolbar class=\"adf-toolbar--inline\">\n <ng-container *ngFor=\"let entry of actions; trackBy: trackByActionId\">\n <aca-toolbar-action [actionRef]=\"entry\"></aca-toolbar-action>\n </ng-container>\n </adf-toolbar>\n </aca-page-layout-header>\n\n <aca-page-layout-content>\n <div class=\"main-content\">\n <adf-document-list\n #documentList\n acaDocumentList\n acaContextActions\n [display]=\"documentDisplayMode$ | async\"\n [node]=\"$any(list)\"\n [loading]=\"isLoading\"\n selectionMode=\"single\"\n [navigate]=\"false\"\n [sorting]=\"['title', 'asc']\"\n sortingMode=\"client\"\n (node-dblclick)=\"handleNodeClick($event)\"\n [imageResolver]=\"imageResolver\"\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.FAVORITE_LIBRARIES.TITLE'\"\n subtitle=\"APP.BROWSE.LIBRARIES.EMPTY_STATE.FAVORITE_LIBRARIES.TEXT\"\n >\n </adf-empty-content>\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 [key]=\"column.key\"\n [title]=\"column.title\"\n [type]=\"column.type\"\n [format]=\"column.format\"\n [class]=\"column.class\"\n [sortable]=\"column.sortable\"\n >\n <ng-template let-context>\n <adf-dynamic-column [id]=\"column.template\" [context]=\"context\"> </adf-dynamic-column>\n </ng-template>\n </data-column>\n </ng-container>\n\n <ng-container *ngIf=\"!column.template && !(column.desktopOnly && isSmallScreen)\">\n <data-column\n [key]=\"column.key\"\n [title]=\"column.title\"\n [type]=\"column.type\"\n [format]=\"column.format\"\n [class]=\"column.class\"\n [sortable]=\"column.sortable\"\n >\n </data-column>\n </ng-container>\n </ng-container>\n </data-columns>\n </adf-document-list>\n\n <adf-pagination\n [target]=\"documentList\"\n [pagination]=\"pagination\"\n (changePageSize)=\"onChangePageSize($event)\"\n (changePageNumber)=\"onChange($event)\"\n (nextPage)=\"onChange($event)\"\n (prevPage)=\"onChange($event)\"\n >\n </adf-pagination>\n </div>\n\n <div class=\"sidebar\" *ngIf=\"infoDrawerOpened$ | async\">\n <aca-info-drawer [node]=\"selection.last\"></aca-info-drawer>\n </div>\n </aca-page-layout-content>\n</aca-page-layout>\n", dependencies: [{ kind: "directive", type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i7.DocumentListComponent, selector: "adf-document-list", inputs: ["includeFields", "where", "display", "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"], outputs: ["nodeClick", "nodeDblClick", "folderChange", "preview", "ready", "error", "nodeSelected", "filterSelection"] }, { kind: "component", type: i7.BreadcrumbComponent, selector: "adf-breadcrumb", inputs: ["folderNode", "root", "rootId", "target", "transform", "maxItems", "readOnly"], outputs: ["navigate"] }, { kind: "component", type: i5.PaginationComponent, selector: "adf-pagination", inputs: ["target", "supportedPageSizes", "pagination"], outputs: ["change", "changePageNumber", "changePageSize", "nextPage", "prevPage"] }, { kind: "component", type: i5.ToolbarComponent, selector: "adf-toolbar", inputs: ["title", "color"] }, { kind: "directive", type: i5.CustomEmptyContentTemplateDirective, selector: "adf-custom-empty-content-template, empty-folder-content" }, { kind: "component", type: i5.DataColumnComponent, selector: "data-column", inputs: ["id", "key", "customData", "type", "format", "sortable", "draggable", "isHidden", "title", "formatTooltip", "sr-title", "class", "copyContent", "editable", "focus", "sortingKey"] }, { kind: "component", type: i5.DataColumnListComponent, selector: "data-columns" }, { kind: "component", type: i5.EmptyContentComponent, selector: "adf-empty-content", inputs: ["icon", "title", "subtitle"] }, { kind: "component", type: i8.DynamicColumnComponent, selector: "adf-dynamic-column", inputs: ["id", "context"] }, { kind: "directive", type: i3.ContextActionsDirective, selector: "[acaContextActions]", inputs: ["acaContextEnable"], exportAs: ["acaContextActions"] }, { kind: "component", type: i3.PageLayoutContentComponent, selector: "aca-page-layout-content", inputs: ["scrollable"] }, { kind: "component", type: i3.PageLayoutHeaderComponent, selector: "aca-page-layout-header" }, { kind: "component", type: i3.PageLayoutComponent, selector: "aca-page-layout", inputs: ["hasError"] }, { kind: "directive", type: i9.DocumentListDirective, selector: "[acaDocumentList]" }, { kind: "component", type: i3.InfoDrawerComponent, selector: "aca-info-drawer", inputs: ["nodeId", "node"] }, { kind: "component", type: i3.ToolbarActionComponent, selector: "aca-toolbar-action", inputs: ["data", "type", "color", "actionRef"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }] });
|
|
109
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: FavoriteLibrariesComponent, decorators: [{
|
|
110
|
+
type: Component,
|
|
111
|
+
args: [{ template: "<aca-page-layout>\n <aca-page-layout-header>\n <adf-breadcrumb root=\"APP.BROWSE.LIBRARIES.MENU.FAVORITE_LIBRARIES.TITLE\"> </adf-breadcrumb>\n\n <adf-toolbar class=\"adf-toolbar--inline\">\n <ng-container *ngFor=\"let entry of actions; trackBy: trackByActionId\">\n <aca-toolbar-action [actionRef]=\"entry\"></aca-toolbar-action>\n </ng-container>\n </adf-toolbar>\n </aca-page-layout-header>\n\n <aca-page-layout-content>\n <div class=\"main-content\">\n <adf-document-list\n #documentList\n acaDocumentList\n acaContextActions\n [display]=\"documentDisplayMode$ | async\"\n [node]=\"$any(list)\"\n [loading]=\"isLoading\"\n selectionMode=\"single\"\n [navigate]=\"false\"\n [sorting]=\"['title', 'asc']\"\n sortingMode=\"client\"\n (node-dblclick)=\"handleNodeClick($event)\"\n [imageResolver]=\"imageResolver\"\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.FAVORITE_LIBRARIES.TITLE'\"\n subtitle=\"APP.BROWSE.LIBRARIES.EMPTY_STATE.FAVORITE_LIBRARIES.TEXT\"\n >\n </adf-empty-content>\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 [key]=\"column.key\"\n [title]=\"column.title\"\n [type]=\"column.type\"\n [format]=\"column.format\"\n [class]=\"column.class\"\n [sortable]=\"column.sortable\"\n >\n <ng-template let-context>\n <adf-dynamic-column [id]=\"column.template\" [context]=\"context\"> </adf-dynamic-column>\n </ng-template>\n </data-column>\n </ng-container>\n\n <ng-container *ngIf=\"!column.template && !(column.desktopOnly && isSmallScreen)\">\n <data-column\n [key]=\"column.key\"\n [title]=\"column.title\"\n [type]=\"column.type\"\n [format]=\"column.format\"\n [class]=\"column.class\"\n [sortable]=\"column.sortable\"\n >\n </data-column>\n </ng-container>\n </ng-container>\n </data-columns>\n </adf-document-list>\n\n <adf-pagination\n [target]=\"documentList\"\n [pagination]=\"pagination\"\n (changePageSize)=\"onChangePageSize($event)\"\n (changePageNumber)=\"onChange($event)\"\n (nextPage)=\"onChange($event)\"\n (prevPage)=\"onChange($event)\"\n >\n </adf-pagination>\n </div>\n\n <div class=\"sidebar\" *ngIf=\"infoDrawerOpened$ | async\">\n <aca-info-drawer [node]=\"selection.last\"></aca-info-drawer>\n </div>\n </aca-page-layout-content>\n</aca-page-layout>\n" }]
|
|
112
|
+
}], ctorParameters: function () { return [{ type: i1.ContentManagementService }, { type: i2.Store }, { type: i3.AppExtensionService }, { type: i3.AppHookService }, { type: i3.ContentApiService }, { type: i4.BreakpointObserver }, { type: i5.UserPreferencesService }, { type: i0.ChangeDetectorRef }]; } });
|
|
113
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmF2b3JpdGUtbGlicmFyaWVzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FjYS1jb250ZW50L3NyYy9saWIvY29tcG9uZW50cy9mYXZvcml0ZS1saWJyYXJpZXMvZmF2b3JpdGUtbGlicmFyaWVzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FjYS1jb250ZW50L3NyYy9saWIvY29tcG9uZW50cy9mYXZvcml0ZS1saWJyYXJpZXMvZmF2b3JpdGUtbGlicmFyaWVzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBc0JHO0FBRUgsT0FBTyxFQUFFLGtCQUFrQixFQUFFLFdBQVcsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxTQUFTLEVBQVUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckUsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUNwQyxPQUFPLEVBQTZCLFVBQVUsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxjQUFjLEVBQUUsaUJBQWlCLEVBQUUsYUFBYSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDN0csT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDbkUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7Ozs7Ozs7Ozs7O0FBTTVELE1BQU0sT0FBTywwQkFBMkIsU0FBUSxhQUFhO0lBVzNELFlBQ0UsT0FBaUMsRUFDakMsS0FBaUIsRUFDakIsVUFBK0IsRUFDdkIsY0FBOEIsRUFDOUIsaUJBQW9DLEVBQ3BDLGtCQUFzQyxFQUN0QyxXQUFtQyxFQUNuQyxpQkFBb0M7UUFFNUMsS0FBSyxDQUFDLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFOMUIsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQzlCLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFDcEMsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFvQjtRQUN0QyxnQkFBVyxHQUFYLFdBQVcsQ0FBd0I7UUFDbkMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQWxCOUMsZUFBVSxHQUFlLElBQUksVUFBVSxDQUFDO1lBQ3RDLFNBQVMsRUFBRSxDQUFDO1lBQ1osUUFBUSxFQUFFLEVBQUU7WUFDWixVQUFVLEVBQUUsQ0FBQztTQUNkLENBQUMsQ0FBQztRQUNILGNBQVMsR0FBRyxLQUFLLENBQUM7UUFFbEIsa0JBQWEsR0FBRyxLQUFLLENBQUM7UUFDdEIsWUFBTyxHQUE0QixFQUFFLENBQUM7SUFhdEMsQ0FBQztJQUVELFFBQVE7UUFDTixLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7UUFFakIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLGNBQWMsRUFBRSxDQUFDLENBQUM7UUFFNUQsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQztZQUM3QyxJQUFJLENBQUMsY0FBYyxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ3JFLElBQUksQ0FBQyxjQUFjLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDckUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUNwRSxJQUFJLENBQUMsY0FBYyxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ2xFLElBQUksQ0FBQyxjQUFjLENBQUMscUJBQXFCLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUU1RSxJQUFJLENBQUMsa0JBQWtCLENBQUMsT0FBTyxDQUFDLENBQUMsV0FBVyxDQUFDLGVBQWUsRUFBRSxXQUFXLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO2dCQUNoSCxJQUFJLENBQUMsYUFBYSxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUM7WUFDdEMsQ0FBQyxDQUFDO1NBQ0gsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLG1CQUFtQixDQUFDLGlCQUFpQixJQUFJLEVBQUUsQ0FBQztJQUM3RSxDQUFDO0lBRUQsVUFBVSxDQUFDLElBQWU7UUFDeEIsSUFBSSxJQUFJLElBQUksSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRTtZQUN6QyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLHFCQUFxQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLG9CQUFvQixDQUFDLENBQUMsQ0FBQztTQUN2RjtJQUNILENBQUM7SUFFRCxlQUFlLENBQUMsS0FBWTtRQUMxQixJQUFJLENBQUMsVUFBVSxDQUFFLEtBQXFCLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxVQUFzQjtRQUNyQyxJQUFJLENBQUMsV0FBVyxDQUFDLGNBQWMsR0FBRyxVQUFVLENBQUMsUUFBUSxDQUFDO1FBQ3RELElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDM0IsQ0FBQztJQUVELFFBQVEsQ0FBQyxVQUFzQjtRQUM3QixJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQzNCLENBQUM7SUFFTyxPQUFPLENBQUMsVUFBc0I7UUFDcEMsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7UUFDdEIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLG9CQUFvQixDQUFDLE1BQU0sRUFBRSxVQUFVLENBQUMsQ0FBQyxTQUFTLENBQ3ZFLENBQUMsaUJBQWlDLEVBQUUsRUFBRTtZQUNwQyxJQUFJLENBQUMsSUFBSSxHQUFHLGlCQUFpQixDQUFDO1lBQzlCLElBQUksQ0FBQyxVQUFVLEdBQUcsaUJBQWlCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQztZQUNwRCxJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztZQUN2QixJQUFJLENBQUMsaUJBQWlCLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDekMsQ0FBQyxFQUNELEdBQUcsRUFBRTtZQUNILElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1lBQ2pCLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLENBQUMsQ0FDRixDQUFDO0lBQ0osQ0FBQztJQUVPLFVBQVU7UUFDaEIsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ2QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDaEMsQ0FBQzs7dUhBbEZVLDBCQUEwQjsyR0FBMUIsMEJBQTBCLDJFQ3JDdkMsNm1HQXFGQTsyRkRoRGEsMEJBQTBCO2tCQUh0QyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiLyohXG4gKiBDb3B5cmlnaHQgwqkgMjAwNS0yMDIzIEh5bGFuZCBTb2Z0d2FyZSwgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogQWxmcmVzY28gRXhhbXBsZSBDb250ZW50IEFwcGxpY2F0aW9uXG4gKlxuICogVGhpcyBmaWxlIGlzIHBhcnQgb2YgdGhlIEFsZnJlc2NvIEV4YW1wbGUgQ29udGVudCBBcHBsaWNhdGlvbi5cbiAqIElmIHRoZSBzb2Z0d2FyZSB3YXMgcHVyY2hhc2VkIHVuZGVyIGEgcGFpZCBBbGZyZXNjbyBsaWNlbnNlLCB0aGUgdGVybXMgb2ZcbiAqIHRoZSBwYWlkIGxpY2Vuc2UgYWdyZWVtZW50IHdpbGwgcHJldmFpbC4gT3RoZXJ3aXNlLCB0aGUgc29mdHdhcmUgaXNcbiAqIHByb3ZpZGVkIHVuZGVyIHRoZSBmb2xsb3dpbmcgb3BlbiBzb3VyY2UgbGljZW5zZSB0ZXJtczpcbiAqXG4gKiBUaGUgQWxmcmVzY28gRXhhbXBsZSBDb250ZW50IEFwcGxpY2F0aW9uIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnlcbiAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieVxuICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3JcbiAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uXG4gKlxuICogVGhlIEFsZnJlc2NvIEV4YW1wbGUgQ29udGVudCBBcHBsaWNhdGlvbiBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLFxuICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2ZcbiAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gU2VlIHRoZVxuICogR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuXG4gKlxuICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlXG4gKiBmcm9tIEh5bGFuZCBTb2Z0d2FyZS4gSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LlxuICovXG5cbmltcG9ydCB7IEJyZWFrcG9pbnRPYnNlcnZlciwgQnJlYWtwb2ludHMgfSBmcm9tICdAYW5ndWxhci9jZGsvbGF5b3V0JztcbmltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBDaGFuZ2VEZXRlY3RvclJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5pbXBvcnQgeyBTaXRlRW50cnksIEZhdm9yaXRlUGFnaW5nLCBQYWdpbmF0aW9uIH0gZnJvbSAnQGFsZnJlc2NvL2pzLWFwaSc7XG5pbXBvcnQgeyBDb250ZW50TWFuYWdlbWVudFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9jb250ZW50LW1hbmFnZW1lbnQuc2VydmljZSc7XG5pbXBvcnQgeyBBcHBFeHRlbnNpb25TZXJ2aWNlLCBBcHBIb29rU2VydmljZSwgQ29udGVudEFwaVNlcnZpY2UsIFBhZ2VDb21wb25lbnQgfSBmcm9tICdAYWxmcmVzY28vYWNhLXNoYXJlZCc7XG5pbXBvcnQgeyBOYXZpZ2F0ZUxpYnJhcnlBY3Rpb24gfSBmcm9tICdAYWxmcmVzY28vYWNhLXNoYXJlZC9zdG9yZSc7XG5pbXBvcnQgeyBVc2VyUHJlZmVyZW5jZXNTZXJ2aWNlIH0gZnJvbSAnQGFsZnJlc2NvL2FkZi1jb3JlJztcbmltcG9ydCB7IERvY3VtZW50TGlzdFByZXNldFJlZiB9IGZyb20gJ0BhbGZyZXNjby9hZGYtZXh0ZW5zaW9ucyc7XG5cbkBDb21wb25lbnQoe1xuICB0ZW1wbGF0ZVVybDogJy4vZmF2b3JpdGUtbGlicmFyaWVzLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBGYXZvcml0ZUxpYnJhcmllc0NvbXBvbmVudCBleHRlbmRzIFBhZ2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBwYWdpbmF0aW9uOiBQYWdpbmF0aW9uID0gbmV3IFBhZ2luYXRpb24oe1xuICAgIHNraXBDb3VudDogMCxcbiAgICBtYXhJdGVtczogMjUsXG4gICAgdG90YWxJdGVtczogMFxuICB9KTtcbiAgaXNMb2FkaW5nID0gZmFsc2U7XG4gIGxpc3Q6IEZhdm9yaXRlUGFnaW5nO1xuICBpc1NtYWxsU2NyZWVuID0gZmFsc2U7XG4gIGNvbHVtbnM6IERvY3VtZW50TGlzdFByZXNldFJlZltdID0gW107XG5cbiAgY29uc3RydWN0b3IoXG4gICAgY29udGVudDogQ29udGVudE1hbmFnZW1lbnRTZXJ2aWNlLFxuICAgIHN0b3JlOiBTdG9yZTxhbnk+LFxuICAgIGV4dGVuc2lvbnM6IEFwcEV4dGVuc2lvblNlcnZpY2UsXG4gICAgcHJpdmF0ZSBhcHBIb29rU2VydmljZTogQXBwSG9va1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBjb250ZW50QXBpU2VydmljZTogQ29udGVudEFwaVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBicmVha3BvaW50T2JzZXJ2ZXI6IEJyZWFrcG9pbnRPYnNlcnZlcixcbiAgICBwcml2YXRlIHByZWZlcmVuY2VzOiBVc2VyUHJlZmVyZW5jZXNTZXJ2aWNlLFxuICAgIHByaXZhdGUgY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmXG4gICkge1xuICAgIHN1cGVyKHN0b3JlLCBleHRlbnNpb25zLCBjb250ZW50KTtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHN1cGVyLm5nT25Jbml0KCk7XG5cbiAgICB0aGlzLmdldExpc3QoeyBtYXhJdGVtczogdGhpcy5wcmVmZXJlbmNlcy5wYWdpbmF0aW9uU2l6ZSB9KTtcblxuICAgIHRoaXMuc3Vic2NyaXB0aW9ucyA9IHRoaXMuc3Vic2NyaXB0aW9ucy5jb25jYXQoW1xuICAgICAgdGhpcy5hcHBIb29rU2VydmljZS5saWJyYXJ5RGVsZXRlZC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5yZWxvYWRMaXN0KCkpLFxuICAgICAgdGhpcy5hcHBIb29rU2VydmljZS5saWJyYXJ5VXBkYXRlZC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5yZWxvYWRMaXN0KCkpLFxuICAgICAgdGhpcy5hcHBIb29rU2VydmljZS5saWJyYXJ5Sm9pbmVkLnN1YnNjcmliZSgoKSA9PiB0aGlzLnJlbG9hZExpc3QoKSksXG4gICAgICB0aGlzLmFwcEhvb2tTZXJ2aWNlLmxpYnJhcnlMZWZ0LnN1YnNjcmliZSgoKSA9PiB0aGlzLnJlbG9hZExpc3QoKSksXG4gICAgICB0aGlzLmFwcEhvb2tTZXJ2aWNlLmZhdm9yaXRlTGlicmFyeVRvZ2dsZS5zdWJzY3JpYmUoKCkgPT4gdGhpcy5yZWxvYWRMaXN0KCkpLFxuXG4gICAgICB0aGlzLmJyZWFrcG9pbnRPYnNlcnZlci5vYnNlcnZlKFtCcmVha3BvaW50cy5IYW5kc2V0UG9ydHJhaXQsIEJyZWFrcG9pbnRzLkhhbmRzZXRMYW5kc2NhcGVdKS5zdWJzY3JpYmUoKHJlc3VsdCkgPT4ge1xuICAgICAgICB0aGlzLmlzU21hbGxTY3JlZW4gPSByZXN1bHQubWF0Y2hlcztcbiAgICAgIH0pXG4gICAgXSk7XG4gICAgdGhpcy5jb2x1bW5zID0gdGhpcy5leHRlbnNpb25zLmRvY3VtZW50TGlzdFByZXNldHMuZmF2b3JpdGVMaWJyYXJpZXMgfHwgW107XG4gIH1cblxuICBuYXZpZ2F0ZVRvKG5vZGU6IFNpdGVFbnRyeSkge1xuICAgIGlmIChub2RlICYmIG5vZGUuZW50cnkgJiYgbm9kZS5lbnRyeS5ndWlkKSB7XG4gICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKG5ldyBOYXZpZ2F0ZUxpYnJhcnlBY3Rpb24obm9kZS5lbnRyeS5ndWlkLCAnZmF2b3JpdGUvbGlicmFyaWVzJykpO1xuICAgIH1cbiAgfVxuXG4gIGhhbmRsZU5vZGVDbGljayhldmVudDogRXZlbnQpIHtcbiAgICB0aGlzLm5hdmlnYXRlVG8oKGV2ZW50IGFzIEN1c3RvbUV2ZW50KS5kZXRhaWw/Lm5vZGUpO1xuICB9XG5cbiAgb25DaGFuZ2VQYWdlU2l6ZShwYWdpbmF0aW9uOiBQYWdpbmF0aW9uKSB7XG4gICAgdGhpcy5wcmVmZXJlbmNlcy5wYWdpbmF0aW9uU2l6ZSA9IHBhZ2luYXRpb24ubWF4SXRlbXM7XG4gICAgdGhpcy5nZXRMaXN0KHBhZ2luYXRpb24pO1xuICB9XG5cbiAgb25DaGFuZ2UocGFnaW5hdGlvbjogUGFnaW5hdGlvbikge1xuICAgIHRoaXMuZ2V0TGlzdChwYWdpbmF0aW9uKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0TGlzdChwYWdpbmF0aW9uOiBQYWdpbmF0aW9uKSB7XG4gICAgdGhpcy5pc0xvYWRpbmcgPSB0cnVlO1xuICAgIHRoaXMuY29udGVudEFwaVNlcnZpY2UuZ2V0RmF2b3JpdGVMaWJyYXJpZXMoJy1tZS0nLCBwYWdpbmF0aW9uKS5zdWJzY3JpYmUoXG4gICAgICAoZmF2b3JpdGVMaWJyYXJpZXM6IEZhdm9yaXRlUGFnaW5nKSA9PiB7XG4gICAgICAgIHRoaXMubGlzdCA9IGZhdm9yaXRlTGlicmFyaWVzO1xuICAgICAgICB0aGlzLnBhZ2luYXRpb24gPSBmYXZvcml0ZUxpYnJhcmllcy5saXN0LnBhZ2luYXRpb247XG4gICAgICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2U7XG4gICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgfSxcbiAgICAgICgpID0+IHtcbiAgICAgICAgdGhpcy5saXN0ID0gbnVsbDtcbiAgICAgICAgdGhpcy5wYWdpbmF0aW9uID0gbnVsbDtcbiAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcbiAgICAgIH1cbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSByZWxvYWRMaXN0KCkge1xuICAgIHRoaXMucmVsb2FkKCk7XG4gICAgdGhpcy5nZXRMaXN0KHRoaXMucGFnaW5hdGlvbik7XG4gIH1cbn1cbiIsIjxhY2EtcGFnZS1sYXlvdXQ+XG4gIDxhY2EtcGFnZS1sYXlvdXQtaGVhZGVyPlxuICAgIDxhZGYtYnJlYWRjcnVtYiByb290PVwiQVBQLkJST1dTRS5MSUJSQVJJRVMuTUVOVS5GQVZPUklURV9MSUJSQVJJRVMuVElUTEVcIj4gPC9hZGYtYnJlYWRjcnVtYj5cblxuICAgIDxhZGYtdG9vbGJhciBjbGFzcz1cImFkZi10b29sYmFyLS1pbmxpbmVcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGVudHJ5IG9mIGFjdGlvbnM7IHRyYWNrQnk6IHRyYWNrQnlBY3Rpb25JZFwiPlxuICAgICAgICA8YWNhLXRvb2xiYXItYWN0aW9uIFthY3Rpb25SZWZdPVwiZW50cnlcIj48L2FjYS10b29sYmFyLWFjdGlvbj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvYWRmLXRvb2xiYXI+XG4gIDwvYWNhLXBhZ2UtbGF5b3V0LWhlYWRlcj5cblxuICA8YWNhLXBhZ2UtbGF5b3V0LWNvbnRlbnQ+XG4gICAgPGRpdiBjbGFzcz1cIm1haW4tY29udGVudFwiPlxuICAgICAgPGFkZi1kb2N1bWVudC1saXN0XG4gICAgICAgICNkb2N1bWVudExpc3RcbiAgICAgICAgYWNhRG9jdW1lbnRMaXN0XG4gICAgICAgIGFjYUNvbnRleHRBY3Rpb25zXG4gICAgICAgIFtkaXNwbGF5XT1cImRvY3VtZW50RGlzcGxheU1vZGUkIHwgYXN5bmNcIlxuICAgICAgICBbbm9kZV09XCIkYW55KGxpc3QpXCJcbiAgICAgICAgW2xvYWRpbmddPVwiaXNMb2FkaW5nXCJcbiAgICAgICAgc2VsZWN0aW9uTW9kZT1cInNpbmdsZVwiXG4gICAgICAgIFtuYXZpZ2F0ZV09XCJmYWxzZVwiXG4gICAgICAgIFtzb3J0aW5nXT1cIlsndGl0bGUnLCAnYXNjJ11cIlxuICAgICAgICBzb3J0aW5nTW9kZT1cImNsaWVudFwiXG4gICAgICAgIChub2RlLWRibGNsaWNrKT1cImhhbmRsZU5vZGVDbGljaygkZXZlbnQpXCJcbiAgICAgICAgW2ltYWdlUmVzb2x2ZXJdPVwiaW1hZ2VSZXNvbHZlclwiXG4gICAgICAgIChuYW1lLWNsaWNrKT1cImhhbmRsZU5vZGVDbGljaygkZXZlbnQpXCJcbiAgICAgID5cbiAgICAgICAgPGFkZi1jdXN0b20tZW1wdHktY29udGVudC10ZW1wbGF0ZT5cbiAgICAgICAgICA8YWRmLWVtcHR5LWNvbnRlbnRcbiAgICAgICAgICAgIGljb249XCJsaWJyYXJ5X2Jvb2tzXCJcbiAgICAgICAgICAgIFt0aXRsZV09XCInQVBQLkJST1dTRS5MSUJSQVJJRVMuRU1QVFlfU1RBVEUuRkFWT1JJVEVfTElCUkFSSUVTLlRJVExFJ1wiXG4gICAgICAgICAgICBzdWJ0aXRsZT1cIkFQUC5CUk9XU0UuTElCUkFSSUVTLkVNUFRZX1NUQVRFLkZBVk9SSVRFX0xJQlJBUklFUy5URVhUXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgPC9hZGYtZW1wdHktY29udGVudD5cbiAgICAgICAgPC9hZGYtY3VzdG9tLWVtcHR5LWNvbnRlbnQtdGVtcGxhdGU+XG5cbiAgICAgICAgPGRhdGEtY29sdW1ucz5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBjb2x1bW4gb2YgY29sdW1uczsgdHJhY2tCeTogdHJhY2tCeUNvbHVtbklkXCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiY29sdW1uLnRlbXBsYXRlICYmICEoY29sdW1uLmRlc2t0b3BPbmx5ICYmIGlzU21hbGxTY3JlZW4pXCI+XG4gICAgICAgICAgICAgIDxkYXRhLWNvbHVtblxuICAgICAgICAgICAgICAgIFtrZXldPVwiY29sdW1uLmtleVwiXG4gICAgICAgICAgICAgICAgW3RpdGxlXT1cImNvbHVtbi50aXRsZVwiXG4gICAgICAgICAgICAgICAgW3R5cGVdPVwiY29sdW1uLnR5cGVcIlxuICAgICAgICAgICAgICAgIFtmb3JtYXRdPVwiY29sdW1uLmZvcm1hdFwiXG4gICAgICAgICAgICAgICAgW2NsYXNzXT1cImNvbHVtbi5jbGFzc1wiXG4gICAgICAgICAgICAgICAgW3NvcnRhYmxlXT1cImNvbHVtbi5zb3J0YWJsZVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgbGV0LWNvbnRleHQ+XG4gICAgICAgICAgICAgICAgICA8YWRmLWR5bmFtaWMtY29sdW1uIFtpZF09XCJjb2x1bW4udGVtcGxhdGVcIiBbY29udGV4dF09XCJjb250ZXh0XCI+IDwvYWRmLWR5bmFtaWMtY29sdW1uPlxuICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICAgIDwvZGF0YS1jb2x1bW4+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFjb2x1bW4udGVtcGxhdGUgJiYgIShjb2x1bW4uZGVza3RvcE9ubHkgJiYgaXNTbWFsbFNjcmVlbilcIj5cbiAgICAgICAgICAgICAgPGRhdGEtY29sdW1uXG4gICAgICAgICAgICAgICAgW2tleV09XCJjb2x1bW4ua2V5XCJcbiAgICAgICAgICAgICAgICBbdGl0bGVdPVwiY29sdW1uLnRpdGxlXCJcbiAgICAgICAgICAgICAgICBbdHlwZV09XCJjb2x1bW4udHlwZVwiXG4gICAgICAgICAgICAgICAgW2Zvcm1hdF09XCJjb2x1bW4uZm9ybWF0XCJcbiAgICAgICAgICAgICAgICBbY2xhc3NdPVwiY29sdW1uLmNsYXNzXCJcbiAgICAgICAgICAgICAgICBbc29ydGFibGVdPVwiY29sdW1uLnNvcnRhYmxlXCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8L2RhdGEtY29sdW1uPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvZGF0YS1jb2x1bW5zPlxuICAgICAgPC9hZGYtZG9jdW1lbnQtbGlzdD5cblxuICAgICAgPGFkZi1wYWdpbmF0aW9uXG4gICAgICAgIFt0YXJnZXRdPVwiZG9jdW1lbnRMaXN0XCJcbiAgICAgICAgW3BhZ2luYXRpb25dPVwicGFnaW5hdGlvblwiXG4gICAgICAgIChjaGFuZ2VQYWdlU2l6ZSk9XCJvbkNoYW5nZVBhZ2VTaXplKCRldmVudClcIlxuICAgICAgICAoY2hhbmdlUGFnZU51bWJlcik9XCJvbkNoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgKG5leHRQYWdlKT1cIm9uQ2hhbmdlKCRldmVudClcIlxuICAgICAgICAocHJldlBhZ2UpPVwib25DaGFuZ2UoJGV2ZW50KVwiXG4gICAgICA+XG4gICAgICA8L2FkZi1wYWdpbmF0aW9uPlxuICAgIDwvZGl2PlxuXG4gICAgPGRpdiBjbGFzcz1cInNpZGViYXJcIiAqbmdJZj1cImluZm9EcmF3ZXJPcGVuZWQkIHwgYXN5bmNcIj5cbiAgICAgIDxhY2EtaW5mby1kcmF3ZXIgW25vZGVdPVwic2VsZWN0aW9uLmxhc3RcIj48L2FjYS1pbmZvLWRyYXdlcj5cbiAgICA8L2Rpdj5cbiAgPC9hY2EtcGFnZS1sYXlvdXQtY29udGVudD5cbjwvYWNhLXBhZ2UtbGF5b3V0PlxuIl19
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Copyright © 2005-2023 Hyland Software, Inc. and its affiliates. All rights reserved.
|
|
3
|
+
*
|
|
4
|
+
* Alfresco Example Content Application
|
|
5
|
+
*
|
|
6
|
+
* This file is part of the Alfresco Example Content Application.
|
|
7
|
+
* If the software was purchased under a paid Alfresco license, the terms of
|
|
8
|
+
* the paid license agreement will prevail. Otherwise, the software is
|
|
9
|
+
* provided under the following open source license terms:
|
|
10
|
+
*
|
|
11
|
+
* The Alfresco Example Content Application is free software: you can redistribute it and/or modify
|
|
12
|
+
* it under the terms of the GNU Lesser General Public License as published by
|
|
13
|
+
* the Free Software Foundation, either version 3 of the License, or
|
|
14
|
+
* (at your option) any later version.
|
|
15
|
+
*
|
|
16
|
+
* The Alfresco Example Content Application is distributed in the hope that it will be useful,
|
|
17
|
+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
18
|
+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
19
|
+
* GNU Lesser General Public License for more details.
|
|
20
|
+
*
|
|
21
|
+
* You should have received a copy of the GNU Lesser General Public License
|
|
22
|
+
* from Hyland Software. If not, see <http://www.gnu.org/licenses/>.
|
|
23
|
+
*/
|
|
24
|
+
import { AcaFileAutoDownloadService, AppExtensionService, ContentApiService, PageComponent } from '@alfresco/aca-shared';
|
|
25
|
+
import { UploadService } from '@alfresco/adf-content-services';
|
|
26
|
+
import { BreakpointObserver, Breakpoints } from '@angular/cdk/layout';
|
|
27
|
+
import { Component } from '@angular/core';
|
|
28
|
+
import { Router } from '@angular/router';
|
|
29
|
+
import { Store } from '@ngrx/store';
|
|
30
|
+
import { debounceTime, map } from 'rxjs/operators';
|
|
31
|
+
import { ContentManagementService } from '../../services/content-management.service';
|
|
32
|
+
import * as i0 from "@angular/core";
|
|
33
|
+
import * as i1 from "@angular/router";
|
|
34
|
+
import * as i2 from "@ngrx/store";
|
|
35
|
+
import * as i3 from "@alfresco/aca-shared";
|
|
36
|
+
import * as i4 from "../../services/content-management.service";
|
|
37
|
+
import * as i5 from "@alfresco/adf-content-services";
|
|
38
|
+
import * as i6 from "@angular/cdk/layout";
|
|
39
|
+
import * as i7 from "@angular/common";
|
|
40
|
+
import * as i8 from "@alfresco/adf-core";
|
|
41
|
+
import * as i9 from "@alfresco/adf-extensions";
|
|
42
|
+
import * as i10 from "../../directives/document-list.directive";
|
|
43
|
+
export class FavoritesComponent extends PageComponent {
|
|
44
|
+
constructor(router, store, extensions, contentApi, content, uploadService, breakpointObserver, fileAutoDownloadService) {
|
|
45
|
+
super(store, extensions, content, fileAutoDownloadService);
|
|
46
|
+
this.router = router;
|
|
47
|
+
this.contentApi = contentApi;
|
|
48
|
+
this.uploadService = uploadService;
|
|
49
|
+
this.breakpointObserver = breakpointObserver;
|
|
50
|
+
this.isSmallScreen = false;
|
|
51
|
+
this.columns = [];
|
|
52
|
+
}
|
|
53
|
+
ngOnInit() {
|
|
54
|
+
super.ngOnInit();
|
|
55
|
+
this.subscriptions = this.subscriptions.concat([
|
|
56
|
+
this.uploadService.fileUploadComplete.pipe(debounceTime(300)).subscribe((_) => this.reload()),
|
|
57
|
+
this.uploadService.fileUploadDeleted.pipe(debounceTime(300)).subscribe((_) => this.reload()),
|
|
58
|
+
this.breakpointObserver.observe([Breakpoints.HandsetPortrait, Breakpoints.HandsetLandscape]).subscribe((result) => {
|
|
59
|
+
this.isSmallScreen = result.matches;
|
|
60
|
+
})
|
|
61
|
+
]);
|
|
62
|
+
this.columns = this.extensions.documentListPresets.favorites;
|
|
63
|
+
}
|
|
64
|
+
navigate(favorite) {
|
|
65
|
+
const { isFolder, id } = favorite;
|
|
66
|
+
// TODO: rework as it will fail on non-English setups
|
|
67
|
+
const isSitePath = (path) => path && path.elements && path.elements.some(({ name }) => name === 'Sites');
|
|
68
|
+
if (isFolder) {
|
|
69
|
+
this.contentApi
|
|
70
|
+
.getNode(id)
|
|
71
|
+
.pipe(map((node) => node.entry))
|
|
72
|
+
.subscribe(({ path }) => {
|
|
73
|
+
const routeUrl = isSitePath(path) ? '/libraries' : '/personal-files';
|
|
74
|
+
this.router.navigate([routeUrl, id]);
|
|
75
|
+
});
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
onNodeDoubleClick(node) {
|
|
79
|
+
if (node && node.entry) {
|
|
80
|
+
if (node.entry.isFolder) {
|
|
81
|
+
this.navigate(node.entry);
|
|
82
|
+
}
|
|
83
|
+
if (node.entry.isFile) {
|
|
84
|
+
this.showPreview(node, { location: this.router.url });
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
handleNodeClick(event) {
|
|
89
|
+
this.onNodeDoubleClick(event.detail?.node);
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
FavoritesComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: FavoritesComponent, deps: [{ token: i1.Router }, { token: i2.Store }, { token: i3.AppExtensionService }, { token: i3.ContentApiService }, { token: i4.ContentManagementService }, { token: i5.UploadService }, { token: i6.BreakpointObserver }, { token: i3.AcaFileAutoDownloadService }], target: i0.ɵɵFactoryTarget.Component });
|
|
93
|
+
FavoritesComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: FavoritesComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<aca-page-layout>\n <aca-page-layout-header>\n <adf-breadcrumb root=\"APP.BROWSE.FAVORITES.TITLE\"> </adf-breadcrumb>\n\n <adf-toolbar class=\"adf-toolbar--inline\">\n <ng-container *ngFor=\"let entry of actions; trackBy: trackByActionId\">\n <aca-toolbar-action [actionRef]=\"entry\"></aca-toolbar-action>\n </ng-container>\n </adf-toolbar>\n </aca-page-layout-header>\n\n <aca-page-layout-content>\n <div class=\"main-content\">\n <adf-document-list\n #documentList\n acaDocumentList\n acaContextActions\n [display]=\"documentDisplayMode$ | async\"\n currentFolderId=\"-favorites-\"\n selectionMode=\"multiple\"\n [navigate]=\"false\"\n [sorting]=\"['modifiedAt', 'desc']\"\n sortingMode=\"client\"\n [imageResolver]=\"imageResolver\"\n (node-dblclick)=\"handleNodeClick($event)\"\n (name-click)=\"handleNodeClick($event)\"\n >\n <adf-custom-empty-content-template>\n <adf-empty-content icon=\"star_rate\" [title]=\"'APP.BROWSE.FAVORITES.EMPTY_STATE.TITLE'\" subtitle=\"APP.BROWSE.FAVORITES.EMPTY_STATE.TEXT\">\n </adf-empty-content>\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 [key]=\"column.key\"\n [title]=\"column.title\"\n [type]=\"column.type\"\n [format]=\"column.format\"\n [class]=\"column.class\"\n [sortable]=\"column.sortable\"\n >\n <ng-template let-context>\n <adf-dynamic-column [id]=\"column.template\" [context]=\"context\"> </adf-dynamic-column>\n </ng-template>\n </data-column>\n </ng-container>\n\n <ng-container *ngIf=\"!column.template && !(column.desktopOnly && isSmallScreen)\">\n <data-column\n [key]=\"column.key\"\n [title]=\"column.title\"\n [type]=\"column.type\"\n [format]=\"column.format\"\n [class]=\"column.class\"\n [sortable]=\"column.sortable\"\n >\n </data-column>\n </ng-container>\n </ng-container>\n </data-columns>\n </adf-document-list>\n\n <adf-pagination acaPagination [target]=\"documentList\"> </adf-pagination>\n </div>\n\n <div class=\"sidebar\" *ngIf=\"infoDrawerOpened$ | async\">\n <aca-info-drawer [node]=\"selection.last\"></aca-info-drawer>\n </div>\n </aca-page-layout-content>\n</aca-page-layout>\n", dependencies: [{ 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: i5.DocumentListComponent, selector: "adf-document-list", inputs: ["includeFields", "where", "display", "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"], outputs: ["nodeClick", "nodeDblClick", "folderChange", "preview", "ready", "error", "nodeSelected", "filterSelection"] }, { kind: "component", type: i5.BreadcrumbComponent, selector: "adf-breadcrumb", inputs: ["folderNode", "root", "rootId", "target", "transform", "maxItems", "readOnly"], outputs: ["navigate"] }, { kind: "component", type: i8.PaginationComponent, selector: "adf-pagination", inputs: ["target", "supportedPageSizes", "pagination"], outputs: ["change", "changePageNumber", "changePageSize", "nextPage", "prevPage"] }, { kind: "component", type: i8.ToolbarComponent, selector: "adf-toolbar", inputs: ["title", "color"] }, { kind: "directive", type: i8.CustomEmptyContentTemplateDirective, selector: "adf-custom-empty-content-template, empty-folder-content" }, { kind: "component", type: i8.DataColumnComponent, selector: "data-column", inputs: ["id", "key", "customData", "type", "format", "sortable", "draggable", "isHidden", "title", "formatTooltip", "sr-title", "class", "copyContent", "editable", "focus", "sortingKey"] }, { kind: "component", type: i8.DataColumnListComponent, selector: "data-columns" }, { kind: "component", type: i8.EmptyContentComponent, selector: "adf-empty-content", inputs: ["icon", "title", "subtitle"] }, { kind: "component", type: i9.DynamicColumnComponent, selector: "adf-dynamic-column", inputs: ["id", "context"] }, { kind: "directive", type: i3.ContextActionsDirective, selector: "[acaContextActions]", inputs: ["acaContextEnable"], exportAs: ["acaContextActions"] }, { kind: "component", type: i3.PageLayoutContentComponent, selector: "aca-page-layout-content", inputs: ["scrollable"] }, { kind: "component", type: i3.PageLayoutHeaderComponent, selector: "aca-page-layout-header" }, { kind: "component", type: i3.PageLayoutComponent, selector: "aca-page-layout", inputs: ["hasError"] }, { kind: "directive", type: i10.DocumentListDirective, selector: "[acaDocumentList]" }, { kind: "directive", type: i3.PaginationDirective, selector: "[acaPagination]" }, { kind: "component", type: i3.InfoDrawerComponent, selector: "aca-info-drawer", inputs: ["nodeId", "node"] }, { kind: "component", type: i3.ToolbarActionComponent, selector: "aca-toolbar-action", inputs: ["data", "type", "color", "actionRef"] }, { kind: "pipe", type: i7.AsyncPipe, name: "async" }] });
|
|
94
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: FavoritesComponent, decorators: [{
|
|
95
|
+
type: Component,
|
|
96
|
+
args: [{ template: "<aca-page-layout>\n <aca-page-layout-header>\n <adf-breadcrumb root=\"APP.BROWSE.FAVORITES.TITLE\"> </adf-breadcrumb>\n\n <adf-toolbar class=\"adf-toolbar--inline\">\n <ng-container *ngFor=\"let entry of actions; trackBy: trackByActionId\">\n <aca-toolbar-action [actionRef]=\"entry\"></aca-toolbar-action>\n </ng-container>\n </adf-toolbar>\n </aca-page-layout-header>\n\n <aca-page-layout-content>\n <div class=\"main-content\">\n <adf-document-list\n #documentList\n acaDocumentList\n acaContextActions\n [display]=\"documentDisplayMode$ | async\"\n currentFolderId=\"-favorites-\"\n selectionMode=\"multiple\"\n [navigate]=\"false\"\n [sorting]=\"['modifiedAt', 'desc']\"\n sortingMode=\"client\"\n [imageResolver]=\"imageResolver\"\n (node-dblclick)=\"handleNodeClick($event)\"\n (name-click)=\"handleNodeClick($event)\"\n >\n <adf-custom-empty-content-template>\n <adf-empty-content icon=\"star_rate\" [title]=\"'APP.BROWSE.FAVORITES.EMPTY_STATE.TITLE'\" subtitle=\"APP.BROWSE.FAVORITES.EMPTY_STATE.TEXT\">\n </adf-empty-content>\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 [key]=\"column.key\"\n [title]=\"column.title\"\n [type]=\"column.type\"\n [format]=\"column.format\"\n [class]=\"column.class\"\n [sortable]=\"column.sortable\"\n >\n <ng-template let-context>\n <adf-dynamic-column [id]=\"column.template\" [context]=\"context\"> </adf-dynamic-column>\n </ng-template>\n </data-column>\n </ng-container>\n\n <ng-container *ngIf=\"!column.template && !(column.desktopOnly && isSmallScreen)\">\n <data-column\n [key]=\"column.key\"\n [title]=\"column.title\"\n [type]=\"column.type\"\n [format]=\"column.format\"\n [class]=\"column.class\"\n [sortable]=\"column.sortable\"\n >\n </data-column>\n </ng-container>\n </ng-container>\n </data-columns>\n </adf-document-list>\n\n <adf-pagination acaPagination [target]=\"documentList\"> </adf-pagination>\n </div>\n\n <div class=\"sidebar\" *ngIf=\"infoDrawerOpened$ | async\">\n <aca-info-drawer [node]=\"selection.last\"></aca-info-drawer>\n </div>\n </aca-page-layout-content>\n</aca-page-layout>\n" }]
|
|
97
|
+
}], ctorParameters: function () { return [{ type: i1.Router }, { type: i2.Store }, { type: i3.AppExtensionService }, { type: i3.ContentApiService }, { type: i4.ContentManagementService }, { type: i5.UploadService }, { type: i6.BreakpointObserver }, { type: i3.AcaFileAutoDownloadService }]; } });
|
|
98
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmF2b3JpdGVzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FjYS1jb250ZW50L3NyYy9saWIvY29tcG9uZW50cy9mYXZvcml0ZXMvZmF2b3JpdGVzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FjYS1jb250ZW50L3NyYy9saWIvY29tcG9uZW50cy9mYXZvcml0ZXMvZmF2b3JpdGVzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBc0JHO0FBRUgsT0FBTyxFQUFFLDBCQUEwQixFQUFFLG1CQUFtQixFQUFFLGlCQUFpQixFQUFFLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRXpILE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUUvRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsV0FBVyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEUsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUNwQyxPQUFPLEVBQUUsWUFBWSxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ25ELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFDOzs7Ozs7Ozs7Ozs7QUFNckYsTUFBTSxPQUFPLGtCQUFtQixTQUFRLGFBQWE7SUFLbkQsWUFDVSxNQUFjLEVBQ3RCLEtBQXNCLEVBQ3RCLFVBQStCLEVBQ3ZCLFVBQTZCLEVBQ3JDLE9BQWlDLEVBQ3pCLGFBQTRCLEVBQzVCLGtCQUFzQyxFQUM5Qyx1QkFBbUQ7UUFFbkQsS0FBSyxDQUFDLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLHVCQUF1QixDQUFDLENBQUM7UUFUbkQsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUdkLGVBQVUsR0FBVixVQUFVLENBQW1CO1FBRTdCLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQzVCLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFYaEQsa0JBQWEsR0FBRyxLQUFLLENBQUM7UUFFdEIsWUFBTyxHQUE0QixFQUFFLENBQUM7SUFhdEMsQ0FBQztJQUVELFFBQVE7UUFDTixLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7UUFFakIsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQztZQUM3QyxJQUFJLENBQUMsYUFBYSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUM3RixJQUFJLENBQUMsYUFBYSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUU1RixJQUFJLENBQUMsa0JBQWtCLENBQUMsT0FBTyxDQUFDLENBQUMsV0FBVyxDQUFDLGVBQWUsRUFBRSxXQUFXLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO2dCQUNoSCxJQUFJLENBQUMsYUFBYSxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUM7WUFDdEMsQ0FBQyxDQUFDO1NBQ0gsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLG1CQUFtQixDQUFDLFNBQVMsQ0FBQztJQUMvRCxDQUFDO0lBRUQsUUFBUSxDQUFDLFFBQWdDO1FBQ3ZDLE1BQU0sRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFLEdBQUcsUUFBUSxDQUFDO1FBRWxDLHFEQUFxRDtRQUNyRCxNQUFNLFVBQVUsR0FBRyxDQUFDLElBQWMsRUFBVyxFQUFFLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBcUIsRUFBRSxFQUFFLENBQUMsSUFBSSxLQUFLLE9BQU8sQ0FBQyxDQUFDO1FBRS9JLElBQUksUUFBUSxFQUFFO1lBQ1osSUFBSSxDQUFDLFVBQVU7aUJBQ1osT0FBTyxDQUFDLEVBQUUsQ0FBQztpQkFDWCxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7aUJBQy9CLFNBQVMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUEwQixFQUFFLEVBQUU7Z0JBQzlDLE1BQU0sUUFBUSxHQUFHLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxpQkFBaUIsQ0FBQztnQkFDckUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUN2QyxDQUFDLENBQUMsQ0FBQztTQUNOO0lBQ0gsQ0FBQztJQUVELGlCQUFpQixDQUFDLElBQXVCO1FBQ3ZDLElBQUksSUFBSSxJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDdEIsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRTtnQkFDdkIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7YUFDM0I7WUFFRCxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFO2dCQUNyQixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUM7YUFDdkQ7U0FDRjtJQUNILENBQUM7SUFFRCxlQUFlLENBQUMsS0FBWTtRQUMxQixJQUFJLENBQUMsaUJBQWlCLENBQUUsS0FBcUIsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDOUQsQ0FBQzs7K0dBaEVVLGtCQUFrQjttR0FBbEIsa0JBQWtCLDJFQ3ZDL0IsZ3dGQXdFQTsyRkRqQ2Esa0JBQWtCO2tCQUg5QixTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiLyohXG4gKiBDb3B5cmlnaHQgwqkgMjAwNS0yMDIzIEh5bGFuZCBTb2Z0d2FyZSwgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogQWxmcmVzY28gRXhhbXBsZSBDb250ZW50IEFwcGxpY2F0aW9uXG4gKlxuICogVGhpcyBmaWxlIGlzIHBhcnQgb2YgdGhlIEFsZnJlc2NvIEV4YW1wbGUgQ29udGVudCBBcHBsaWNhdGlvbi5cbiAqIElmIHRoZSBzb2Z0d2FyZSB3YXMgcHVyY2hhc2VkIHVuZGVyIGEgcGFpZCBBbGZyZXNjbyBsaWNlbnNlLCB0aGUgdGVybXMgb2ZcbiAqIHRoZSBwYWlkIGxpY2Vuc2UgYWdyZWVtZW50IHdpbGwgcHJldmFpbC4gT3RoZXJ3aXNlLCB0aGUgc29mdHdhcmUgaXNcbiAqIHByb3ZpZGVkIHVuZGVyIHRoZSBmb2xsb3dpbmcgb3BlbiBzb3VyY2UgbGljZW5zZSB0ZXJtczpcbiAqXG4gKiBUaGUgQWxmcmVzY28gRXhhbXBsZSBDb250ZW50IEFwcGxpY2F0aW9uIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnlcbiAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieVxuICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3JcbiAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uXG4gKlxuICogVGhlIEFsZnJlc2NvIEV4YW1wbGUgQ29udGVudCBBcHBsaWNhdGlvbiBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLFxuICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2ZcbiAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gU2VlIHRoZVxuICogR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuXG4gKlxuICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlXG4gKiBmcm9tIEh5bGFuZCBTb2Z0d2FyZS4gSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LlxuICovXG5cbmltcG9ydCB7IEFjYUZpbGVBdXRvRG93bmxvYWRTZXJ2aWNlLCBBcHBFeHRlbnNpb25TZXJ2aWNlLCBDb250ZW50QXBpU2VydmljZSwgUGFnZUNvbXBvbmVudCB9IGZyb20gJ0BhbGZyZXNjby9hY2Etc2hhcmVkJztcbmltcG9ydCB7IEFwcFN0b3JlIH0gZnJvbSAnQGFsZnJlc2NvL2FjYS1zaGFyZWQvc3RvcmUnO1xuaW1wb3J0IHsgVXBsb2FkU2VydmljZSB9IGZyb20gJ0BhbGZyZXNjby9hZGYtY29udGVudC1zZXJ2aWNlcyc7XG5pbXBvcnQgeyBNaW5pbWFsTm9kZUVudGl0eSwgTWluaW1hbE5vZGVFbnRyeUVudGl0eSwgUGF0aEVsZW1lbnRFbnRpdHksIFBhdGhJbmZvIH0gZnJvbSAnQGFsZnJlc2NvL2pzLWFwaSc7XG5pbXBvcnQgeyBCcmVha3BvaW50T2JzZXJ2ZXIsIEJyZWFrcG9pbnRzIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2xheW91dCc7XG5pbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0IHsgZGVib3VuY2VUaW1lLCBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBDb250ZW50TWFuYWdlbWVudFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9jb250ZW50LW1hbmFnZW1lbnQuc2VydmljZSc7XG5pbXBvcnQgeyBEb2N1bWVudExpc3RQcmVzZXRSZWYgfSBmcm9tICdAYWxmcmVzY28vYWRmLWV4dGVuc2lvbnMnO1xuXG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGVVcmw6ICcuL2Zhdm9yaXRlcy5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgRmF2b3JpdGVzQ29tcG9uZW50IGV4dGVuZHMgUGFnZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIGlzU21hbGxTY3JlZW4gPSBmYWxzZTtcblxuICBjb2x1bW5zOiBEb2N1bWVudExpc3RQcmVzZXRSZWZbXSA9IFtdO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXG4gICAgc3RvcmU6IFN0b3JlPEFwcFN0b3JlPixcbiAgICBleHRlbnNpb25zOiBBcHBFeHRlbnNpb25TZXJ2aWNlLFxuICAgIHByaXZhdGUgY29udGVudEFwaTogQ29udGVudEFwaVNlcnZpY2UsXG4gICAgY29udGVudDogQ29udGVudE1hbmFnZW1lbnRTZXJ2aWNlLFxuICAgIHByaXZhdGUgdXBsb2FkU2VydmljZTogVXBsb2FkU2VydmljZSxcbiAgICBwcml2YXRlIGJyZWFrcG9pbnRPYnNlcnZlcjogQnJlYWtwb2ludE9ic2VydmVyLFxuICAgIGZpbGVBdXRvRG93bmxvYWRTZXJ2aWNlOiBBY2FGaWxlQXV0b0Rvd25sb2FkU2VydmljZVxuICApIHtcbiAgICBzdXBlcihzdG9yZSwgZXh0ZW5zaW9ucywgY29udGVudCwgZmlsZUF1dG9Eb3dubG9hZFNlcnZpY2UpO1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgc3VwZXIubmdPbkluaXQoKTtcblxuICAgIHRoaXMuc3Vic2NyaXB0aW9ucyA9IHRoaXMuc3Vic2NyaXB0aW9ucy5jb25jYXQoW1xuICAgICAgdGhpcy51cGxvYWRTZXJ2aWNlLmZpbGVVcGxvYWRDb21wbGV0ZS5waXBlKGRlYm91bmNlVGltZSgzMDApKS5zdWJzY3JpYmUoKF8pID0+IHRoaXMucmVsb2FkKCkpLFxuICAgICAgdGhpcy51cGxvYWRTZXJ2aWNlLmZpbGVVcGxvYWREZWxldGVkLnBpcGUoZGVib3VuY2VUaW1lKDMwMCkpLnN1YnNjcmliZSgoXykgPT4gdGhpcy5yZWxvYWQoKSksXG5cbiAgICAgIHRoaXMuYnJlYWtwb2ludE9ic2VydmVyLm9ic2VydmUoW0JyZWFrcG9pbnRzLkhhbmRzZXRQb3J0cmFpdCwgQnJlYWtwb2ludHMuSGFuZHNldExhbmRzY2FwZV0pLnN1YnNjcmliZSgocmVzdWx0KSA9PiB7XG4gICAgICAgIHRoaXMuaXNTbWFsbFNjcmVlbiA9IHJlc3VsdC5tYXRjaGVzO1xuICAgICAgfSlcbiAgICBdKTtcblxuICAgIHRoaXMuY29sdW1ucyA9IHRoaXMuZXh0ZW5zaW9ucy5kb2N1bWVudExpc3RQcmVzZXRzLmZhdm9yaXRlcztcbiAgfVxuXG4gIG5hdmlnYXRlKGZhdm9yaXRlOiBNaW5pbWFsTm9kZUVudHJ5RW50aXR5KSB7XG4gICAgY29uc3QgeyBpc0ZvbGRlciwgaWQgfSA9IGZhdm9yaXRlO1xuXG4gICAgLy8gVE9ETzogcmV3b3JrIGFzIGl0IHdpbGwgZmFpbCBvbiBub24tRW5nbGlzaCBzZXR1cHNcbiAgICBjb25zdCBpc1NpdGVQYXRoID0gKHBhdGg6IFBhdGhJbmZvKTogYm9vbGVhbiA9PiBwYXRoICYmIHBhdGguZWxlbWVudHMgJiYgcGF0aC5lbGVtZW50cy5zb21lKCh7IG5hbWUgfTogUGF0aEVsZW1lbnRFbnRpdHkpID0+IG5hbWUgPT09ICdTaXRlcycpO1xuXG4gICAgaWYgKGlzRm9sZGVyKSB7XG4gICAgICB0aGlzLmNvbnRlbnRBcGlcbiAgICAgICAgLmdldE5vZGUoaWQpXG4gICAgICAgIC5waXBlKG1hcCgobm9kZSkgPT4gbm9kZS5lbnRyeSkpXG4gICAgICAgIC5zdWJzY3JpYmUoKHsgcGF0aCB9OiBNaW5pbWFsTm9kZUVudHJ5RW50aXR5KSA9PiB7XG4gICAgICAgICAgY29uc3Qgcm91dGVVcmwgPSBpc1NpdGVQYXRoKHBhdGgpID8gJy9saWJyYXJpZXMnIDogJy9wZXJzb25hbC1maWxlcyc7XG4gICAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW3JvdXRlVXJsLCBpZF0pO1xuICAgICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBvbk5vZGVEb3VibGVDbGljayhub2RlOiBNaW5pbWFsTm9kZUVudGl0eSkge1xuICAgIGlmIChub2RlICYmIG5vZGUuZW50cnkpIHtcbiAgICAgIGlmIChub2RlLmVudHJ5LmlzRm9sZGVyKSB7XG4gICAgICAgIHRoaXMubmF2aWdhdGUobm9kZS5lbnRyeSk7XG4gICAgICB9XG5cbiAgICAgIGlmIChub2RlLmVudHJ5LmlzRmlsZSkge1xuICAgICAgICB0aGlzLnNob3dQcmV2aWV3KG5vZGUsIHsgbG9jYXRpb246IHRoaXMucm91dGVyLnVybCB9KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBoYW5kbGVOb2RlQ2xpY2soZXZlbnQ6IEV2ZW50KSB7XG4gICAgdGhpcy5vbk5vZGVEb3VibGVDbGljaygoZXZlbnQgYXMgQ3VzdG9tRXZlbnQpLmRldGFpbD8ubm9kZSk7XG4gIH1cbn1cbiIsIjxhY2EtcGFnZS1sYXlvdXQ+XG4gIDxhY2EtcGFnZS1sYXlvdXQtaGVhZGVyPlxuICAgIDxhZGYtYnJlYWRjcnVtYiByb290PVwiQVBQLkJST1dTRS5GQVZPUklURVMuVElUTEVcIj4gPC9hZGYtYnJlYWRjcnVtYj5cblxuICAgIDxhZGYtdG9vbGJhciBjbGFzcz1cImFkZi10b29sYmFyLS1pbmxpbmVcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGVudHJ5IG9mIGFjdGlvbnM7IHRyYWNrQnk6IHRyYWNrQnlBY3Rpb25JZFwiPlxuICAgICAgICA8YWNhLXRvb2xiYXItYWN0aW9uIFthY3Rpb25SZWZdPVwiZW50cnlcIj48L2FjYS10b29sYmFyLWFjdGlvbj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvYWRmLXRvb2xiYXI+XG4gIDwvYWNhLXBhZ2UtbGF5b3V0LWhlYWRlcj5cblxuICA8YWNhLXBhZ2UtbGF5b3V0LWNvbnRlbnQ+XG4gICAgPGRpdiBjbGFzcz1cIm1haW4tY29udGVudFwiPlxuICAgICAgPGFkZi1kb2N1bWVudC1saXN0XG4gICAgICAgICNkb2N1bWVudExpc3RcbiAgICAgICAgYWNhRG9jdW1lbnRMaXN0XG4gICAgICAgIGFjYUNvbnRleHRBY3Rpb25zXG4gICAgICAgIFtkaXNwbGF5XT1cImRvY3VtZW50RGlzcGxheU1vZGUkIHwgYXN5bmNcIlxuICAgICAgICBjdXJyZW50Rm9sZGVySWQ9XCItZmF2b3JpdGVzLVwiXG4gICAgICAgIHNlbGVjdGlvbk1vZGU9XCJtdWx0aXBsZVwiXG4gICAgICAgIFtuYXZpZ2F0ZV09XCJmYWxzZVwiXG4gICAgICAgIFtzb3J0aW5nXT1cIlsnbW9kaWZpZWRBdCcsICdkZXNjJ11cIlxuICAgICAgICBzb3J0aW5nTW9kZT1cImNsaWVudFwiXG4gICAgICAgIFtpbWFnZVJlc29sdmVyXT1cImltYWdlUmVzb2x2ZXJcIlxuICAgICAgICAobm9kZS1kYmxjbGljayk9XCJoYW5kbGVOb2RlQ2xpY2soJGV2ZW50KVwiXG4gICAgICAgIChuYW1lLWNsaWNrKT1cImhhbmRsZU5vZGVDbGljaygkZXZlbnQpXCJcbiAgICAgID5cbiAgICAgICAgPGFkZi1jdXN0b20tZW1wdHktY29udGVudC10ZW1wbGF0ZT5cbiAgICAgICAgICA8YWRmLWVtcHR5LWNvbnRlbnQgaWNvbj1cInN0YXJfcmF0ZVwiIFt0aXRsZV09XCInQVBQLkJST1dTRS5GQVZPUklURVMuRU1QVFlfU1RBVEUuVElUTEUnXCIgc3VidGl0bGU9XCJBUFAuQlJPV1NFLkZBVk9SSVRFUy5FTVBUWV9TVEFURS5URVhUXCI+XG4gICAgICAgICAgPC9hZGYtZW1wdHktY29udGVudD5cbiAgICAgICAgPC9hZGYtY3VzdG9tLWVtcHR5LWNvbnRlbnQtdGVtcGxhdGU+XG5cbiAgICAgICAgPGRhdGEtY29sdW1ucz5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBjb2x1bW4gb2YgY29sdW1uczsgdHJhY2tCeTogdHJhY2tCeUNvbHVtbklkXCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiY29sdW1uLnRlbXBsYXRlICYmICEoY29sdW1uLmRlc2t0b3BPbmx5ICYmIGlzU21hbGxTY3JlZW4pXCI+XG4gICAgICAgICAgICAgIDxkYXRhLWNvbHVtblxuICAgICAgICAgICAgICAgIFtrZXldPVwiY29sdW1uLmtleVwiXG4gICAgICAgICAgICAgICAgW3RpdGxlXT1cImNvbHVtbi50aXRsZVwiXG4gICAgICAgICAgICAgICAgW3R5cGVdPVwiY29sdW1uLnR5cGVcIlxuICAgICAgICAgICAgICAgIFtmb3JtYXRdPVwiY29sdW1uLmZvcm1hdFwiXG4gICAgICAgICAgICAgICAgW2NsYXNzXT1cImNvbHVtbi5jbGFzc1wiXG4gICAgICAgICAgICAgICAgW3NvcnRhYmxlXT1cImNvbHVtbi5zb3J0YWJsZVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgbGV0LWNvbnRleHQ+XG4gICAgICAgICAgICAgICAgICA8YWRmLWR5bmFtaWMtY29sdW1uIFtpZF09XCJjb2x1bW4udGVtcGxhdGVcIiBbY29udGV4dF09XCJjb250ZXh0XCI+IDwvYWRmLWR5bmFtaWMtY29sdW1uPlxuICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICAgIDwvZGF0YS1jb2x1bW4+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFjb2x1bW4udGVtcGxhdGUgJiYgIShjb2x1bW4uZGVza3RvcE9ubHkgJiYgaXNTbWFsbFNjcmVlbilcIj5cbiAgICAgICAgICAgICAgPGRhdGEtY29sdW1uXG4gICAgICAgICAgICAgICAgW2tleV09XCJjb2x1bW4ua2V5XCJcbiAgICAgICAgICAgICAgICBbdGl0bGVdPVwiY29sdW1uLnRpdGxlXCJcbiAgICAgICAgICAgICAgICBbdHlwZV09XCJjb2x1bW4udHlwZVwiXG4gICAgICAgICAgICAgICAgW2Zvcm1hdF09XCJjb2x1bW4uZm9ybWF0XCJcbiAgICAgICAgICAgICAgICBbY2xhc3NdPVwiY29sdW1uLmNsYXNzXCJcbiAgICAgICAgICAgICAgICBbc29ydGFibGVdPVwiY29sdW1uLnNvcnRhYmxlXCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8L2RhdGEtY29sdW1uPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvZGF0YS1jb2x1bW5zPlxuICAgICAgPC9hZGYtZG9jdW1lbnQtbGlzdD5cblxuICAgICAgPGFkZi1wYWdpbmF0aW9uIGFjYVBhZ2luYXRpb24gW3RhcmdldF09XCJkb2N1bWVudExpc3RcIj4gPC9hZGYtcGFnaW5hdGlvbj5cbiAgICA8L2Rpdj5cblxuICAgIDxkaXYgY2xhc3M9XCJzaWRlYmFyXCIgKm5nSWY9XCJpbmZvRHJhd2VyT3BlbmVkJCB8IGFzeW5jXCI+XG4gICAgICA8YWNhLWluZm8tZHJhd2VyIFtub2RlXT1cInNlbGVjdGlvbi5sYXN0XCI+PC9hY2EtaW5mby1kcmF3ZXI+XG4gICAgPC9kaXY+XG4gIDwvYWNhLXBhZ2UtbGF5b3V0LWNvbnRlbnQ+XG48L2FjYS1wYWdlLWxheW91dD5cbiJdfQ==
|