@alfresco/adf-core 7.0.0-alpha.2-11070706321 → 7.0.0-alpha.2-11113912876
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/breadcrumbs/components/breadcrumb/breadcrumb.component.d.ts +1 -1
- package/esm2022/api/lib/adf-http-client.service.mjs +304 -0
- package/esm2022/auth/authentication-interceptor/authentication.interceptor.mjs +57 -0
- package/esm2022/breadcrumbs/components/breadcrumb/breadcrumb.component.mjs +83 -0
- package/esm2022/breadcrumbs/components/breadcrumb-item/breadcrumb-item.component.mjs +42 -0
- package/esm2022/breadcrumbs/directives/breadcrumb-focus.directive.mjs +44 -0
- package/esm2022/feature-flags/lib/components/feature-flags-wrapper.mjs +36 -0
- package/esm2022/feature-flags/lib/components/feature-override-indicator.component.mjs +62 -0
- package/esm2022/feature-flags/lib/components/flags/flags.component.mjs +134 -0
- package/esm2022/feature-flags/lib/directives/features.directive.mjs +68 -0
- package/esm2022/feature-flags/lib/directives/not-features.directive.mjs +68 -0
- package/esm2022/feature-flags/lib/guards/is-feature-off.guard.mjs +38 -0
- package/esm2022/feature-flags/lib/guards/is-feature-on.guard.mjs +38 -0
- package/esm2022/feature-flags/lib/guards/is-flags-override-on.guard.mjs +40 -0
- package/esm2022/feature-flags/lib/services/debug-features.service.mjs +84 -0
- package/esm2022/feature-flags/lib/services/dummy-features.service.mjs +40 -0
- package/esm2022/feature-flags/lib/services/qa-features.helper.mjs +62 -0
- package/esm2022/feature-flags/lib/services/storage-features.service.mjs +121 -0
- package/esm2022/lib/about/about-extension-list/about-extension-list.component.mjs +51 -0
- package/esm2022/lib/about/about-license-list/about-license-list.component.mjs +51 -0
- package/esm2022/lib/about/about-module-list/module-list.component.mjs +51 -0
- package/esm2022/lib/about/about-package/package-list.component.mjs +66 -0
- package/esm2022/lib/about/about-panel.directive.mjs +37 -0
- package/esm2022/lib/about/about-repository-info/about-repository-info.component.mjs +60 -0
- package/esm2022/lib/about/about-server-settings/about-server-settings.component.mjs +43 -0
- package/esm2022/lib/about/about-status-list/about-status-list.component.mjs +51 -0
- package/esm2022/lib/about/about.component.mjs +35 -0
- package/esm2022/lib/about/about.module.mjs +75 -0
- package/esm2022/lib/app-config/app-config-storage-prefix.factory.mjs +53 -0
- package/esm2022/lib/app-config/app-config.module.mjs +33 -0
- package/esm2022/lib/app-config/app-config.pipe.mjs +38 -0
- package/esm2022/lib/app-config/app-config.service.mjs +243 -0
- package/esm2022/lib/app-config/debug-app-config.service.mjs +45 -0
- package/esm2022/lib/auth/authentication-interceptor/auth-bearer.interceptor.mjs +70 -0
- package/esm2022/lib/auth/basic-auth/basic-alfresco-auth.service.mjs +342 -0
- package/esm2022/lib/auth/basic-auth/content-auth.mjs +189 -0
- package/esm2022/lib/auth/basic-auth/process-auth.mjs +192 -0
- package/esm2022/lib/auth/guard/auth-guard.service.mjs +109 -0
- package/esm2022/lib/auth/oidc/auth-config.service.mjs +110 -0
- package/esm2022/lib/auth/oidc/auth-routing.module.mjs +34 -0
- package/esm2022/lib/auth/oidc/auth.module.mjs +90 -0
- package/esm2022/lib/auth/oidc/oidc-authentication.service.mjs +194 -0
- package/esm2022/lib/auth/oidc/redirect-auth.service.mjs +194 -0
- package/esm2022/lib/auth/oidc/view/authentication-confirmation/authentication-confirmation.component.mjs +31 -0
- package/esm2022/lib/auth/services/authentication.service.mjs +190 -0
- package/esm2022/lib/auth/services/identity-group.service.mjs +269 -0
- package/esm2022/lib/auth/services/identity-role.service.mjs +99 -0
- package/esm2022/lib/auth/services/identity-user.service.mjs +445 -0
- package/esm2022/lib/auth/services/jwt-helper.service.mjs +206 -0
- package/esm2022/lib/auth/services/oauth2.service.mjs +69 -0
- package/esm2022/lib/auth/services/user-access.service.mjs +108 -0
- package/esm2022/lib/avatar/avatar.component.mjs +51 -0
- package/esm2022/lib/blank-page/blank-page.component.mjs +31 -0
- package/esm2022/lib/blank-page/blank-page.module.mjs +33 -0
- package/esm2022/lib/button/button.component.mjs +61 -0
- package/esm2022/lib/card-view/card-view.module.mjs +80 -0
- package/esm2022/lib/card-view/components/base-card-view.mjs +57 -0
- package/esm2022/lib/card-view/components/card-view/card-view.component.mjs +65 -0
- package/esm2022/lib/card-view/components/card-view-arrayitem/card-view-arrayitem.component.mjs +56 -0
- package/esm2022/lib/card-view/components/card-view-boolitem/card-view-boolitem.component.mjs +40 -0
- package/esm2022/lib/card-view/components/card-view-dateitem/card-view-dateitem.component.mjs +179 -0
- package/esm2022/lib/card-view/components/card-view-item-dispatcher/card-view-item-dispatcher.component.mjs +108 -0
- package/esm2022/lib/card-view/components/card-view-keyvaluepairsitem/card-view-keyvaluepairsitem.component.mjs +65 -0
- package/esm2022/lib/card-view/components/card-view-mapitem/card-view-mapitem.component.mjs +47 -0
- package/esm2022/lib/card-view/components/card-view-selectitem/card-view-selectitem.component.mjs +91 -0
- package/esm2022/lib/card-view/components/card-view-selectitem/select-filter-input/select-filter-input.component.mjs +119 -0
- package/esm2022/lib/card-view/components/card-view-textitem/card-view-textitem.component.mjs +240 -0
- package/esm2022/lib/card-view/services/card-item-types.service.mjs +54 -0
- package/esm2022/lib/card-view/services/card-view-update.service.mjs +58 -0
- package/esm2022/lib/clipboard/clipboard.directive.mjs +99 -0
- package/esm2022/lib/clipboard/clipboard.module.mjs +34 -0
- package/esm2022/lib/clipboard/clipboard.service.mjs +103 -0
- package/esm2022/lib/comments/comment-list/comment-list.component.mjs +52 -0
- package/esm2022/lib/comments/comment-list/comment-list.module.mjs +33 -0
- package/esm2022/lib/comments/comments.component.mjs +115 -0
- package/esm2022/lib/comments/comments.module.mjs +33 -0
- package/esm2022/lib/common/mock/app-config.service.mock.mjs +47 -0
- package/esm2022/lib/common/models/log-levels.model.mjs +33 -0
- package/esm2022/lib/common/services/cookie.service.mjs +85 -0
- package/esm2022/lib/common/services/download.service.mjs +103 -0
- package/esm2022/lib/common/services/highlight-transform.service.mjs +58 -0
- package/esm2022/lib/common/services/log.service.mjs +171 -0
- package/esm2022/lib/common/services/page-title.service.mjs +63 -0
- package/esm2022/lib/common/services/sort-by-category.service.mjs +81 -0
- package/esm2022/lib/common/services/storage.service.mjs +117 -0
- package/esm2022/lib/common/services/thumbnail.service.mjs +194 -0
- package/esm2022/lib/common/services/url.service.mjs +45 -0
- package/esm2022/lib/common/services/user-preferences.service.mjs +235 -0
- package/esm2022/lib/common/utils/date-fns-adapter.mjs +115 -0
- package/esm2022/lib/common/utils/date-fns-utils.mjs +222 -0
- package/esm2022/lib/common/utils/datetime-fns-adapter.mjs +134 -0
- package/esm2022/lib/common/utils/file-utils.mjs +65 -0
- package/esm2022/lib/common/utils/moment-date-adapter.mjs +202 -0
- package/esm2022/lib/context-menu/context-menu-list.component.mjs +92 -0
- package/esm2022/lib/context-menu/context-menu-overlay.service.mjs +108 -0
- package/esm2022/lib/context-menu/context-menu.directive.mjs +60 -0
- package/esm2022/lib/context-menu/context-menu.module.mjs +35 -0
- package/esm2022/lib/core.module.mjs +315 -0
- package/esm2022/lib/datatable/components/amount-cell/amount-cell.component.mjs +45 -0
- package/esm2022/lib/datatable/components/boolean-cell/boolean-cell.component.mjs +65 -0
- package/esm2022/lib/datatable/components/columns-selector/columns-selector.component.mjs +131 -0
- package/esm2022/lib/datatable/components/datatable/datatable.component.mjs +874 -0
- package/esm2022/lib/datatable/components/datatable-cell/datatable-cell.component.mjs +122 -0
- package/esm2022/lib/datatable/components/datatable-row/datatable-row.component.mjs +98 -0
- package/esm2022/lib/datatable/components/date-cell/date-cell.component.mjs +78 -0
- package/esm2022/lib/datatable/components/empty-list/empty-list.component.mjs +60 -0
- package/esm2022/lib/datatable/components/filesize-cell/filesize-cell.component.mjs +49 -0
- package/esm2022/lib/datatable/components/icon-cell/icon-cell.component.mjs +67 -0
- package/esm2022/lib/datatable/components/json-cell/json-cell.component.mjs +86 -0
- package/esm2022/lib/datatable/components/location-cell/location-cell.component.mjs +70 -0
- package/esm2022/lib/datatable/components/number-cell/number-cell.component.mjs +42 -0
- package/esm2022/lib/datatable/data/data-table.schema.mjs +132 -0
- package/esm2022/lib/datatable/data-column/data-column-header.component.mjs +45 -0
- package/esm2022/lib/datatable/data-column/data-column-list.component.mjs +36 -0
- package/esm2022/lib/datatable/data-column/data-column.component.mjs +110 -0
- package/esm2022/lib/datatable/datatable.module.mjs +161 -0
- package/esm2022/lib/datatable/directives/custom-empty-content-template.directive.mjs +35 -0
- package/esm2022/lib/datatable/directives/custom-loading-template.directive.mjs +30 -0
- package/esm2022/lib/datatable/directives/custom-no-permission-template.directive.mjs +35 -0
- package/esm2022/lib/datatable/directives/drop-zone.directive.mjs +89 -0
- package/esm2022/lib/datatable/directives/header-filter-template.directive.mjs +43 -0
- package/esm2022/lib/datatable/directives/loading-template.directive.mjs +46 -0
- package/esm2022/lib/datatable/directives/main-data-table-action-template.directive.mjs +43 -0
- package/esm2022/lib/datatable/directives/no-content-template.directive.mjs +46 -0
- package/esm2022/lib/datatable/directives/no-permission-template.directive.mjs +46 -0
- package/esm2022/lib/datatable/directives/resizable/resizable.directive.mjs +173 -0
- package/esm2022/lib/datatable/directives/resizable/resize-handle.directive.mjs +75 -0
- package/esm2022/lib/datatable/services/datatable.service.mjs +33 -0
- package/esm2022/lib/dialogs/confirm-dialog/confirm.dialog.mjs +50 -0
- package/esm2022/lib/dialogs/confirm-dialog/confirm.dialog.module.mjs +38 -0
- package/esm2022/lib/dialogs/dialog/dialog.component.mjs +76 -0
- package/esm2022/lib/dialogs/edit-json/edit-json.dialog.mjs +51 -0
- package/esm2022/lib/dialogs/edit-json/edit-json.dialog.module.mjs +55 -0
- package/esm2022/lib/dialogs/unsaved-changes-dialog/unsaved-changes-dialog.component.mjs +74 -0
- package/esm2022/lib/dialogs/unsaved-changes-dialog/unsaved-changes-dialog.module.mjs +33 -0
- package/esm2022/lib/dialogs/unsaved-changes-dialog/unsaved-changes.guard.mjs +64 -0
- package/esm2022/lib/directives/directive.module.mjs +56 -0
- package/esm2022/lib/directives/highlight.directive.mjs +67 -0
- package/esm2022/lib/directives/infinite-select-scroll.directive.mjs +72 -0
- package/esm2022/lib/directives/logout.directive.mjs +72 -0
- package/esm2022/lib/directives/tooltip-card/tooltip-card.component.mjs +60 -0
- package/esm2022/lib/directives/tooltip-card/tooltip-card.directive.mjs +104 -0
- package/esm2022/lib/directives/upload.directive.mjs +241 -0
- package/esm2022/lib/dynamic-chip-list/dynamic-chip-list.component.mjs +199 -0
- package/esm2022/lib/dynamic-chip-list/dynamic-chip-list.module.mjs +33 -0
- package/esm2022/lib/form/components/form-base.component.mjs +201 -0
- package/esm2022/lib/form/components/form-custom-button.directive.mjs +30 -0
- package/esm2022/lib/form/components/form-field/form-field.component.mjs +127 -0
- package/esm2022/lib/form/components/form-renderer.component.mjs +170 -0
- package/esm2022/lib/form/components/inplace-form-input/inplace-form-input.component.mjs +36 -0
- package/esm2022/lib/form/components/middlewares/decimal-middleware.service.mjs +48 -0
- package/esm2022/lib/form/components/widgets/amount/amount.widget.mjs +78 -0
- package/esm2022/lib/form/components/widgets/base-viewer/base-viewer.widget.mjs +60 -0
- package/esm2022/lib/form/components/widgets/checkbox/checkbox.widget.mjs +53 -0
- package/esm2022/lib/form/components/widgets/core/form-field-types.mjs +70 -0
- package/esm2022/lib/form/components/widgets/core/form-outcome.model.mjs +38 -0
- package/esm2022/lib/form/components/widgets/core/form.model.mjs +353 -0
- package/esm2022/lib/form/components/widgets/date/date.widget.mjs +161 -0
- package/esm2022/lib/form/components/widgets/date-time/date-time.widget.mjs +151 -0
- package/esm2022/lib/form/components/widgets/decimal/decimal.component.mjs +54 -0
- package/esm2022/lib/form/components/widgets/display-text/display-text.widget.mjs +47 -0
- package/esm2022/lib/form/components/widgets/error/error.component.mjs +93 -0
- package/esm2022/lib/form/components/widgets/header/header.widget.mjs +43 -0
- package/esm2022/lib/form/components/widgets/hyperlink/hyperlink.widget.mjs +71 -0
- package/esm2022/lib/form/components/widgets/json/json.widget.mjs +70 -0
- package/esm2022/lib/form/components/widgets/multiline-text/multiline-text.widget.mjs +56 -0
- package/esm2022/lib/form/components/widgets/number/number.widget.mjs +66 -0
- package/esm2022/lib/form/components/widgets/text/text-mask.component.mjs +215 -0
- package/esm2022/lib/form/components/widgets/text/text.widget.mjs +66 -0
- package/esm2022/lib/form/components/widgets/unknown/unknown.widget.mjs +63 -0
- package/esm2022/lib/form/components/widgets/widget.component.mjs +110 -0
- package/esm2022/lib/form/form-base.module.mjs +90 -0
- package/esm2022/lib/form/pipes/field-style.pipe.mjs +45 -0
- package/esm2022/lib/form/pipes/form-style.pipe.mjs +39 -0
- package/esm2022/lib/form/services/form-rendering.service.mjs +53 -0
- package/esm2022/lib/form/services/form.service.mjs +79 -0
- package/esm2022/lib/form/services/widget-visibility.service.mjs +294 -0
- package/esm2022/lib/header/header.component.mjs +73 -0
- package/esm2022/lib/header/navbar/navbar-item.component.mjs +37 -0
- package/esm2022/lib/header/navbar/navbar.component.mjs +36 -0
- package/esm2022/lib/icon/icon.component.mjs +51 -0
- package/esm2022/lib/icon/icon.module.mjs +36 -0
- package/esm2022/lib/identity-user-info/identity-user-info.component.mjs +93 -0
- package/esm2022/lib/identity-user-info/identity-user-info.module.mjs +33 -0
- package/esm2022/lib/info-drawer/info-drawer-layout.component.mjs +71 -0
- package/esm2022/lib/info-drawer/info-drawer.component.mjs +114 -0
- package/esm2022/lib/info-drawer/info-drawer.module.mjs +53 -0
- package/esm2022/lib/language-menu/language-menu.component.mjs +58 -0
- package/esm2022/lib/language-menu/language-menu.module.mjs +35 -0
- package/esm2022/lib/language-menu/language-picker.component.mjs +61 -0
- package/esm2022/lib/language-menu/service/language.service.mjs +50 -0
- package/esm2022/lib/layout/components/header/header.component.mjs +100 -0
- package/esm2022/lib/layout/components/layout-container/layout-container.component.mjs +180 -0
- package/esm2022/lib/layout/components/sidebar-action/sidebar-action-menu.component.mjs +82 -0
- package/esm2022/lib/layout/components/sidenav-layout/sidenav-layout.component.mjs +145 -0
- package/esm2022/lib/layout/directives/sidenav-layout-content.directive.mjs +33 -0
- package/esm2022/lib/layout/directives/sidenav-layout-header.directive.mjs +33 -0
- package/esm2022/lib/layout/directives/sidenav-layout-navigation.directive.mjs +33 -0
- package/esm2022/lib/layout/layout.module.mjs +72 -0
- package/esm2022/lib/login/components/login/login.component.mjs +373 -0
- package/esm2022/lib/login/components/login-dialog/login-dialog.component.mjs +63 -0
- package/esm2022/lib/login/components/login-dialog-panel/login-dialog-panel.component.mjs +52 -0
- package/esm2022/lib/login/directives/login-footer.directive.mjs +41 -0
- package/esm2022/lib/login/directives/login-header.directive.mjs +41 -0
- package/esm2022/lib/login/login.module.mjs +54 -0
- package/esm2022/lib/material.module.mjs +254 -0
- package/esm2022/lib/mock/cookie.service.mock.mjs +47 -0
- package/esm2022/lib/mock/translation.service.mock.mjs +44 -0
- package/esm2022/lib/notifications/components/add-notification.stories.component.mjs +44 -0
- package/esm2022/lib/notifications/components/notification-history.component.mjs +152 -0
- package/esm2022/lib/notifications/notification-history.module.mjs +35 -0
- package/esm2022/lib/notifications/services/notification.service.mjs +166 -0
- package/esm2022/lib/pagination/infinite-pagination.component.mjs +117 -0
- package/esm2022/lib/pagination/pagination.component.mjs +268 -0
- package/esm2022/lib/pagination/pagination.module.mjs +35 -0
- package/esm2022/lib/pipes/date-time.pipe.mjs +46 -0
- package/esm2022/lib/pipes/decimal-number.pipe.mjs +84 -0
- package/esm2022/lib/pipes/file-size.pipe.mjs +54 -0
- package/esm2022/lib/pipes/file-type.pipe.mjs +40 -0
- package/esm2022/lib/pipes/format-space.pipe.mjs +39 -0
- package/esm2022/lib/pipes/full-name.pipe.mjs +42 -0
- package/esm2022/lib/pipes/localized-date.pipe.mjs +70 -0
- package/esm2022/lib/pipes/moment-date.pipe.mjs +36 -0
- package/esm2022/lib/pipes/moment-datetime.pipe.mjs +36 -0
- package/esm2022/lib/pipes/multi-value.pipe.mjs +37 -0
- package/esm2022/lib/pipes/pipe.module.mjs +87 -0
- package/esm2022/lib/pipes/public-api.mjs +31 -0
- package/esm2022/lib/pipes/text-highlight.pipe.mjs +39 -0
- package/esm2022/lib/pipes/time-ago.pipe.mjs +71 -0
- package/esm2022/lib/pipes/user-initial.pipe.mjs +52 -0
- package/esm2022/lib/progress/progress.component.mjs +90 -0
- package/esm2022/lib/search-text/search-text-input.component.mjs +293 -0
- package/esm2022/lib/search-text/search-text-input.module.mjs +35 -0
- package/esm2022/lib/search-text/search-trigger.directive.mjs +182 -0
- package/esm2022/lib/snackbar-content/snackbar-content.component.mjs +48 -0
- package/esm2022/lib/snackbar-content/snackbar-content.module.mjs +56 -0
- package/esm2022/lib/sorting-picker/sorting-picker.component.mjs +68 -0
- package/esm2022/lib/templates/empty-content/empty-content.component.mjs +44 -0
- package/esm2022/lib/templates/error-content/error-content.component.mjs +62 -0
- package/esm2022/lib/templates/template.module.mjs +38 -0
- package/esm2022/lib/testing/core.story.module.mjs +39 -0
- package/esm2022/lib/testing/core.testing.module.mjs +35 -0
- package/esm2022/lib/testing/noop-auth.module.mjs +77 -0
- package/esm2022/lib/testing/noop-translate.module.mjs +61 -0
- package/esm2022/lib/toolbar/toolbar-divider.component.mjs +27 -0
- package/esm2022/lib/toolbar/toolbar-title.component.mjs +32 -0
- package/esm2022/lib/toolbar/toolbar.component.mjs +40 -0
- package/esm2022/lib/toolbar/toolbar.module.mjs +36 -0
- package/esm2022/lib/translation/translate-loader.service.mjs +148 -0
- package/esm2022/lib/translation/translation.service.mjs +148 -0
- package/esm2022/lib/viewer/components/download-prompt-dialog/download-prompt-dialog.component.mjs +37 -0
- package/esm2022/lib/viewer/components/img-viewer/img-viewer.component.mjs +218 -0
- package/esm2022/lib/viewer/components/media-player/media-player.component.mjs +61 -0
- package/esm2022/lib/viewer/components/pdf-viewer/pdf-viewer.component.mjs +510 -0
- package/esm2022/lib/viewer/components/pdf-viewer-password-dialog/pdf-viewer-password-dialog.mjs +61 -0
- package/esm2022/lib/viewer/components/pdf-viewer-thumb/pdf-viewer-thumb.component.mjs +49 -0
- package/esm2022/lib/viewer/components/pdf-viewer-thumbnails/pdf-viewer-thumbnails.component.mjs +197 -0
- package/esm2022/lib/viewer/components/txt-viewer/txt-viewer.component.mjs +77 -0
- package/esm2022/lib/viewer/components/unknown-format/unknown-format.component.mjs +31 -0
- package/esm2022/lib/viewer/components/viewer-more-actions.component.mjs +34 -0
- package/esm2022/lib/viewer/components/viewer-open-with.component.mjs +34 -0
- package/esm2022/lib/viewer/components/viewer-render/viewer-render.component.mjs +211 -0
- package/esm2022/lib/viewer/components/viewer-sidebar.component.mjs +46 -0
- package/esm2022/lib/viewer/components/viewer-toolbar-actions.component.mjs +34 -0
- package/esm2022/lib/viewer/components/viewer-toolbar-custom-actions.component.mjs +34 -0
- package/esm2022/lib/viewer/components/viewer-toolbar.component.mjs +34 -0
- package/esm2022/lib/viewer/components/viewer.component.mjs +435 -0
- package/esm2022/lib/viewer/directives/viewer-extension.directive.mjs +72 -0
- package/esm2022/lib/viewer/services/rendering-queue.services.mjs +179 -0
- package/esm2022/lib/viewer/services/view-util.service.mjs +149 -0
- package/esm2022/lib/viewer/viewer.module.mjs +112 -0
- package/esm2022/shell/lib/components/shell/shell.component.mjs +126 -0
- package/esm2022/shell/lib/shell.module.mjs +79 -0
- package/feature-flags/lib/components/feature-override-indicator.component.d.ts +1 -1
- package/feature-flags/lib/directives/features.directive.d.ts +1 -1
- package/feature-flags/lib/directives/not-features.directive.d.ts +1 -1
- package/feature-flags/lib/guards/is-feature-off.guard.d.ts +2 -2
- package/feature-flags/lib/guards/is-feature-on.guard.d.ts +2 -2
- package/feature-flags/lib/guards/is-flags-override-on.guard.d.ts +1 -2
- package/fesm2022/adf-core.mjs +31990 -0
- package/fesm2022/adf-core.mjs.map +1 -0
- package/fesm2022/alfresco-adf-core-api.mjs +497 -0
- package/fesm2022/alfresco-adf-core-api.mjs.map +1 -0
- package/fesm2022/alfresco-adf-core-auth.mjs +98 -0
- package/fesm2022/alfresco-adf-core-auth.mjs.map +1 -0
- package/fesm2022/alfresco-adf-core-breadcrumbs.mjs +187 -0
- package/fesm2022/alfresco-adf-core-breadcrumbs.mjs.map +1 -0
- package/fesm2022/alfresco-adf-core-feature-flags.mjs +959 -0
- package/fesm2022/alfresco-adf-core-feature-flags.mjs.map +1 -0
- package/fesm2022/alfresco-adf-core-shell.mjs +266 -0
- package/fesm2022/alfresco-adf-core-shell.mjs.map +1 -0
- package/lib/about/about-extension-list/about-extension-list.component.d.ts +1 -1
- package/lib/about/about-license-list/about-license-list.component.d.ts +1 -1
- package/lib/about/about-module-list/module-list.component.d.ts +1 -1
- package/lib/about/about-package/package-list.component.d.ts +1 -1
- package/lib/about/about-panel.directive.d.ts +1 -1
- package/lib/about/about-repository-info/about-repository-info.component.d.ts +1 -1
- package/lib/about/about-status-list/about-status-list.component.d.ts +1 -1
- package/lib/avatar/avatar.component.d.ts +1 -1
- package/lib/button/button.component.d.ts +1 -1
- package/lib/card-view/components/base-card-view.d.ts +1 -1
- package/lib/card-view/components/card-view/card-view.component.d.ts +1 -1
- package/lib/card-view/components/card-view-boolitem/card-view-boolitem.component.d.ts +1 -1
- package/lib/card-view/components/card-view-dateitem/card-view-dateitem.component.d.ts +1 -1
- package/lib/card-view/components/card-view-item-dispatcher/card-view-item-dispatcher.component.d.ts +1 -1
- package/lib/card-view/components/card-view-mapitem/card-view-mapitem.component.d.ts +1 -1
- package/lib/card-view/components/card-view-selectitem/card-view-selectitem.component.d.ts +1 -1
- package/lib/card-view/components/card-view-textitem/card-view-textitem.component.d.ts +1 -1
- package/lib/clipboard/clipboard.directive.d.ts +1 -1
- package/lib/comments/comment-list/comment-list.component.d.ts +1 -1
- package/lib/comments/comments.component.d.ts +1 -1
- package/lib/common/services/log.service.d.ts +2 -3
- package/lib/context-menu/context-menu.directive.d.ts +1 -1
- package/lib/core.module.d.ts +80 -81
- package/lib/datatable/components/amount-cell/amount-cell.component.d.ts +1 -1
- package/lib/datatable/components/columns-selector/columns-selector.component.d.ts +5 -1
- package/lib/datatable/components/datatable/datatable.component.d.ts +1 -1
- package/lib/datatable/components/datatable-cell/datatable-cell.component.d.ts +1 -1
- package/lib/datatable/components/datatable-row/datatable-row.component.d.ts +1 -1
- package/lib/datatable/components/date-cell/date-cell.component.d.ts +1 -1
- package/lib/datatable/components/json-cell/json-cell.component.d.ts +1 -1
- package/lib/datatable/components/location-cell/location-cell.component.d.ts +1 -1
- package/lib/datatable/components/number-cell/number-cell.component.d.ts +1 -1
- package/lib/datatable/data/data-table.schema.d.ts +1 -1
- package/lib/datatable/data-column/data-column.component.d.ts +1 -1
- package/lib/datatable/directives/drop-zone.directive.d.ts +1 -1
- package/lib/datatable/directives/resizable/resizable.directive.d.ts +1 -1
- package/lib/datatable/directives/resizable/resize-handle.directive.d.ts +1 -1
- package/lib/dialogs/edit-json/edit-json.dialog.d.ts +1 -1
- package/lib/directives/highlight.directive.d.ts +1 -1
- package/lib/directives/logout.directive.d.ts +1 -1
- package/lib/directives/tooltip-card/tooltip-card.component.d.ts +1 -1
- package/lib/directives/tooltip-card/tooltip-card.directive.d.ts +1 -1
- package/lib/directives/upload.directive.d.ts +1 -1
- package/lib/dynamic-chip-list/dynamic-chip-list.component.d.ts +1 -1
- package/lib/form/components/form-base.component.d.ts +1 -1
- package/lib/form/components/form-field/form-field.component.d.ts +1 -1
- package/lib/form/components/form-renderer.component.d.ts +1 -1
- package/lib/form/components/inplace-form-input/inplace-form-input.component.d.ts +1 -1
- package/lib/form/components/widgets/error/error.component.d.ts +1 -1
- package/lib/form/components/widgets/header/header.widget.d.ts +1 -1
- package/lib/form/components/widgets/text/text-mask.component.d.ts +1 -1
- package/lib/form/components/widgets/widget.component.d.ts +1 -1
- package/lib/form/services/form.service.d.ts +5 -0
- package/lib/header/header.component.d.ts +1 -1
- package/lib/header/navbar/navbar-item.component.d.ts +1 -1
- package/lib/header/navbar/navbar.component.d.ts +1 -1
- package/lib/icon/icon.component.d.ts +1 -1
- package/lib/identity-user-info/identity-user-info.component.d.ts +1 -1
- package/lib/info-drawer/info-drawer-layout.component.d.ts +1 -1
- package/lib/info-drawer/info-drawer.component.d.ts +2 -2
- package/lib/layout/components/header/header.component.d.ts +1 -1
- package/lib/layout/components/header/header.component.scss +0 -1
- package/lib/layout/components/layout-container/layout-container.component.d.ts +1 -1
- package/lib/layout/components/layout-container/layout-container.component.scss +6 -6
- package/lib/layout/components/sidebar-action/sidebar-action-menu.component.d.ts +1 -1
- package/lib/layout/components/sidenav-layout/sidenav-layout.component.d.ts +1 -1
- package/lib/login/components/login/login.component.d.ts +1 -1
- package/lib/notifications/components/notification-history.component.d.ts +1 -1
- package/lib/pagination/infinite-pagination.component.d.ts +1 -1
- package/lib/pagination/pagination.component.d.ts +1 -1
- package/lib/pipes/pipe.module.d.ts +3 -5
- package/lib/pipes/public-api.d.ts +0 -1
- package/lib/prebuilt-themes/adf-blue-orange.css +1 -1
- package/lib/prebuilt-themes/adf-blue-purple.css +1 -1
- package/lib/prebuilt-themes/adf-cyan-orange.css +1 -1
- package/lib/prebuilt-themes/adf-cyan-purple.css +1 -1
- package/lib/prebuilt-themes/adf-green-orange.css +1 -1
- package/lib/prebuilt-themes/adf-green-purple.css +1 -1
- package/lib/prebuilt-themes/adf-indigo-pink.css +1 -1
- package/lib/prebuilt-themes/adf-pink-bluegrey.css +1 -1
- package/lib/prebuilt-themes/adf-purple-green.css +1 -1
- package/lib/progress/progress.component.d.ts +1 -1
- package/lib/search-text/search-text-input.component.d.ts +1 -1
- package/lib/search-text/search-trigger.directive.d.ts +1 -1
- package/lib/sorting-picker/sorting-picker.component.d.ts +1 -1
- package/lib/templates/empty-content/empty-content.component.d.ts +1 -1
- package/lib/templates/error-content/error-content.component.d.ts +1 -1
- package/lib/toolbar/toolbar.component.d.ts +1 -1
- package/lib/viewer/components/img-viewer/img-viewer.component.d.ts +1 -1
- package/lib/viewer/components/media-player/media-player.component.d.ts +1 -1
- package/lib/viewer/components/pdf-viewer/pdf-viewer.component.d.ts +1 -1
- package/lib/viewer/components/pdf-viewer-thumb/pdf-viewer-thumb.component.d.ts +1 -1
- package/lib/viewer/components/pdf-viewer-thumbnails/pdf-viewer-thumbnails.component.d.ts +1 -1
- package/lib/viewer/components/txt-viewer/txt-viewer.component.d.ts +1 -1
- package/lib/viewer/components/viewer-render/viewer-render.component.d.ts +1 -1
- package/lib/viewer/components/viewer.component.d.ts +1 -1
- package/lib/viewer/directives/viewer-extension.directive.d.ts +1 -1
- package/package.json +22 -38
- package/schematics/migrations/package.json +58 -0
- package/schematics/migrations/schematics/migrations/7_0_0/index.js.map +1 -0
- package/schematics/migrations/schematics/migrations/collection.json +46 -0
- package/esm2020/api/lib/adf-http-client.service.mjs +0 -304
- package/esm2020/auth/authentication-interceptor/authentication.interceptor.mjs +0 -57
- package/esm2020/breadcrumbs/components/breadcrumb/breadcrumb.component.mjs +0 -83
- package/esm2020/breadcrumbs/components/breadcrumb-item/breadcrumb-item.component.mjs +0 -42
- package/esm2020/breadcrumbs/directives/breadcrumb-focus.directive.mjs +0 -44
- package/esm2020/feature-flags/lib/components/feature-flags-wrapper.mjs +0 -36
- package/esm2020/feature-flags/lib/components/feature-override-indicator.component.mjs +0 -62
- package/esm2020/feature-flags/lib/components/flags/flags.component.mjs +0 -134
- package/esm2020/feature-flags/lib/directives/features.directive.mjs +0 -68
- package/esm2020/feature-flags/lib/directives/not-features.directive.mjs +0 -68
- package/esm2020/feature-flags/lib/guards/is-feature-off.guard.mjs +0 -38
- package/esm2020/feature-flags/lib/guards/is-feature-on.guard.mjs +0 -38
- package/esm2020/feature-flags/lib/guards/is-flags-override-on.guard.mjs +0 -40
- package/esm2020/feature-flags/lib/services/debug-features.service.mjs +0 -84
- package/esm2020/feature-flags/lib/services/dummy-features.service.mjs +0 -40
- package/esm2020/feature-flags/lib/services/qa-features.helper.mjs +0 -62
- package/esm2020/feature-flags/lib/services/storage-features.service.mjs +0 -121
- package/esm2020/lib/about/about-extension-list/about-extension-list.component.mjs +0 -51
- package/esm2020/lib/about/about-license-list/about-license-list.component.mjs +0 -51
- package/esm2020/lib/about/about-module-list/module-list.component.mjs +0 -51
- package/esm2020/lib/about/about-package/package-list.component.mjs +0 -66
- package/esm2020/lib/about/about-panel.directive.mjs +0 -37
- package/esm2020/lib/about/about-repository-info/about-repository-info.component.mjs +0 -60
- package/esm2020/lib/about/about-server-settings/about-server-settings.component.mjs +0 -43
- package/esm2020/lib/about/about-status-list/about-status-list.component.mjs +0 -51
- package/esm2020/lib/about/about.component.mjs +0 -35
- package/esm2020/lib/about/about.module.mjs +0 -75
- package/esm2020/lib/app-config/app-config-storage-prefix.factory.mjs +0 -53
- package/esm2020/lib/app-config/app-config.module.mjs +0 -33
- package/esm2020/lib/app-config/app-config.pipe.mjs +0 -38
- package/esm2020/lib/app-config/app-config.service.mjs +0 -243
- package/esm2020/lib/app-config/debug-app-config.service.mjs +0 -45
- package/esm2020/lib/auth/authentication-interceptor/auth-bearer.interceptor.mjs +0 -70
- package/esm2020/lib/auth/basic-auth/basic-alfresco-auth.service.mjs +0 -342
- package/esm2020/lib/auth/basic-auth/content-auth.mjs +0 -189
- package/esm2020/lib/auth/basic-auth/process-auth.mjs +0 -192
- package/esm2020/lib/auth/guard/auth-guard.service.mjs +0 -109
- package/esm2020/lib/auth/oidc/auth-config.service.mjs +0 -110
- package/esm2020/lib/auth/oidc/auth-routing.module.mjs +0 -34
- package/esm2020/lib/auth/oidc/auth.module.mjs +0 -90
- package/esm2020/lib/auth/oidc/oidc-authentication.service.mjs +0 -194
- package/esm2020/lib/auth/oidc/redirect-auth.service.mjs +0 -194
- package/esm2020/lib/auth/oidc/view/authentication-confirmation/authentication-confirmation.component.mjs +0 -31
- package/esm2020/lib/auth/services/authentication.service.mjs +0 -190
- package/esm2020/lib/auth/services/identity-group.service.mjs +0 -269
- package/esm2020/lib/auth/services/identity-role.service.mjs +0 -99
- package/esm2020/lib/auth/services/identity-user.service.mjs +0 -445
- package/esm2020/lib/auth/services/jwt-helper.service.mjs +0 -206
- package/esm2020/lib/auth/services/oauth2.service.mjs +0 -69
- package/esm2020/lib/auth/services/user-access.service.mjs +0 -108
- package/esm2020/lib/avatar/avatar.component.mjs +0 -51
- package/esm2020/lib/blank-page/blank-page.component.mjs +0 -31
- package/esm2020/lib/blank-page/blank-page.module.mjs +0 -33
- package/esm2020/lib/button/button.component.mjs +0 -61
- package/esm2020/lib/card-view/card-view.module.mjs +0 -72
- package/esm2020/lib/card-view/components/base-card-view.mjs +0 -57
- package/esm2020/lib/card-view/components/card-view/card-view.component.mjs +0 -65
- package/esm2020/lib/card-view/components/card-view-arrayitem/card-view-arrayitem.component.mjs +0 -56
- package/esm2020/lib/card-view/components/card-view-boolitem/card-view-boolitem.component.mjs +0 -40
- package/esm2020/lib/card-view/components/card-view-dateitem/card-view-dateitem.component.mjs +0 -179
- package/esm2020/lib/card-view/components/card-view-item-dispatcher/card-view-item-dispatcher.component.mjs +0 -108
- package/esm2020/lib/card-view/components/card-view-keyvaluepairsitem/card-view-keyvaluepairsitem.component.mjs +0 -65
- package/esm2020/lib/card-view/components/card-view-mapitem/card-view-mapitem.component.mjs +0 -47
- package/esm2020/lib/card-view/components/card-view-selectitem/card-view-selectitem.component.mjs +0 -91
- package/esm2020/lib/card-view/components/card-view-selectitem/select-filter-input/select-filter-input.component.mjs +0 -119
- package/esm2020/lib/card-view/components/card-view-textitem/card-view-textitem.component.mjs +0 -240
- package/esm2020/lib/card-view/services/card-item-types.service.mjs +0 -54
- package/esm2020/lib/card-view/services/card-view-update.service.mjs +0 -58
- package/esm2020/lib/clipboard/clipboard.directive.mjs +0 -99
- package/esm2020/lib/clipboard/clipboard.module.mjs +0 -34
- package/esm2020/lib/clipboard/clipboard.service.mjs +0 -99
- package/esm2020/lib/comments/comment-list/comment-list.component.mjs +0 -52
- package/esm2020/lib/comments/comment-list/comment-list.module.mjs +0 -33
- package/esm2020/lib/comments/comments.component.mjs +0 -115
- package/esm2020/lib/comments/comments.module.mjs +0 -33
- package/esm2020/lib/common/mock/app-config.service.mock.mjs +0 -47
- package/esm2020/lib/common/models/log-levels.model.mjs +0 -33
- package/esm2020/lib/common/services/cookie.service.mjs +0 -85
- package/esm2020/lib/common/services/download.service.mjs +0 -103
- package/esm2020/lib/common/services/highlight-transform.service.mjs +0 -58
- package/esm2020/lib/common/services/log.service.mjs +0 -171
- package/esm2020/lib/common/services/page-title.service.mjs +0 -63
- package/esm2020/lib/common/services/sort-by-category.service.mjs +0 -81
- package/esm2020/lib/common/services/storage.service.mjs +0 -117
- package/esm2020/lib/common/services/thumbnail.service.mjs +0 -194
- package/esm2020/lib/common/services/url.service.mjs +0 -45
- package/esm2020/lib/common/services/user-preferences.service.mjs +0 -235
- package/esm2020/lib/common/utils/date-fns-adapter.mjs +0 -115
- package/esm2020/lib/common/utils/date-fns-utils.mjs +0 -222
- package/esm2020/lib/common/utils/datetime-fns-adapter.mjs +0 -134
- package/esm2020/lib/common/utils/file-utils.mjs +0 -66
- package/esm2020/lib/common/utils/moment-date-adapter.mjs +0 -202
- package/esm2020/lib/context-menu/context-menu-list.component.mjs +0 -92
- package/esm2020/lib/context-menu/context-menu-overlay.service.mjs +0 -108
- package/esm2020/lib/context-menu/context-menu.directive.mjs +0 -60
- package/esm2020/lib/context-menu/context-menu.module.mjs +0 -35
- package/esm2020/lib/core.module.mjs +0 -317
- package/esm2020/lib/datatable/components/amount-cell/amount-cell.component.mjs +0 -45
- package/esm2020/lib/datatable/components/boolean-cell/boolean-cell.component.mjs +0 -65
- package/esm2020/lib/datatable/components/columns-selector/columns-selector.component.mjs +0 -109
- package/esm2020/lib/datatable/components/datatable/datatable.component.mjs +0 -874
- package/esm2020/lib/datatable/components/datatable-cell/datatable-cell.component.mjs +0 -122
- package/esm2020/lib/datatable/components/datatable-row/datatable-row.component.mjs +0 -98
- package/esm2020/lib/datatable/components/date-cell/date-cell.component.mjs +0 -78
- package/esm2020/lib/datatable/components/empty-list/empty-list.component.mjs +0 -60
- package/esm2020/lib/datatable/components/filesize-cell/filesize-cell.component.mjs +0 -49
- package/esm2020/lib/datatable/components/icon-cell/icon-cell.component.mjs +0 -67
- package/esm2020/lib/datatable/components/json-cell/json-cell.component.mjs +0 -86
- package/esm2020/lib/datatable/components/location-cell/location-cell.component.mjs +0 -70
- package/esm2020/lib/datatable/components/number-cell/number-cell.component.mjs +0 -42
- package/esm2020/lib/datatable/data/data-table.schema.mjs +0 -132
- package/esm2020/lib/datatable/data-column/data-column-header.component.mjs +0 -45
- package/esm2020/lib/datatable/data-column/data-column-list.component.mjs +0 -36
- package/esm2020/lib/datatable/data-column/data-column.component.mjs +0 -110
- package/esm2020/lib/datatable/datatable.module.mjs +0 -166
- package/esm2020/lib/datatable/directives/custom-empty-content-template.directive.mjs +0 -35
- package/esm2020/lib/datatable/directives/custom-loading-template.directive.mjs +0 -30
- package/esm2020/lib/datatable/directives/custom-no-permission-template.directive.mjs +0 -35
- package/esm2020/lib/datatable/directives/drop-zone.directive.mjs +0 -89
- package/esm2020/lib/datatable/directives/header-filter-template.directive.mjs +0 -43
- package/esm2020/lib/datatable/directives/loading-template.directive.mjs +0 -46
- package/esm2020/lib/datatable/directives/main-data-table-action-template.directive.mjs +0 -43
- package/esm2020/lib/datatable/directives/no-content-template.directive.mjs +0 -46
- package/esm2020/lib/datatable/directives/no-permission-template.directive.mjs +0 -46
- package/esm2020/lib/datatable/directives/resizable/resizable.directive.mjs +0 -173
- package/esm2020/lib/datatable/directives/resizable/resize-handle.directive.mjs +0 -75
- package/esm2020/lib/datatable/services/datatable.service.mjs +0 -33
- package/esm2020/lib/dialogs/confirm-dialog/confirm.dialog.mjs +0 -50
- package/esm2020/lib/dialogs/confirm-dialog/confirm.dialog.module.mjs +0 -38
- package/esm2020/lib/dialogs/dialog/dialog.component.mjs +0 -76
- package/esm2020/lib/dialogs/edit-json/edit-json.dialog.mjs +0 -51
- package/esm2020/lib/dialogs/edit-json/edit-json.dialog.module.mjs +0 -55
- package/esm2020/lib/dialogs/unsaved-changes-dialog/unsaved-changes-dialog.component.mjs +0 -74
- package/esm2020/lib/dialogs/unsaved-changes-dialog/unsaved-changes-dialog.module.mjs +0 -33
- package/esm2020/lib/dialogs/unsaved-changes-dialog/unsaved-changes.guard.mjs +0 -64
- package/esm2020/lib/directives/directive.module.mjs +0 -56
- package/esm2020/lib/directives/highlight.directive.mjs +0 -67
- package/esm2020/lib/directives/infinite-select-scroll.directive.mjs +0 -72
- package/esm2020/lib/directives/logout.directive.mjs +0 -72
- package/esm2020/lib/directives/tooltip-card/tooltip-card.component.mjs +0 -60
- package/esm2020/lib/directives/tooltip-card/tooltip-card.directive.mjs +0 -104
- package/esm2020/lib/directives/upload.directive.mjs +0 -241
- package/esm2020/lib/dynamic-chip-list/dynamic-chip-list.component.mjs +0 -199
- package/esm2020/lib/dynamic-chip-list/dynamic-chip-list.module.mjs +0 -33
- package/esm2020/lib/form/components/form-base.component.mjs +0 -201
- package/esm2020/lib/form/components/form-custom-button.directive.mjs +0 -30
- package/esm2020/lib/form/components/form-field/form-field.component.mjs +0 -127
- package/esm2020/lib/form/components/form-renderer.component.mjs +0 -170
- package/esm2020/lib/form/components/inplace-form-input/inplace-form-input.component.mjs +0 -36
- package/esm2020/lib/form/components/middlewares/decimal-middleware.service.mjs +0 -48
- package/esm2020/lib/form/components/widgets/amount/amount.widget.mjs +0 -78
- package/esm2020/lib/form/components/widgets/base-viewer/base-viewer.widget.mjs +0 -60
- package/esm2020/lib/form/components/widgets/checkbox/checkbox.widget.mjs +0 -53
- package/esm2020/lib/form/components/widgets/core/form-field-types.mjs +0 -70
- package/esm2020/lib/form/components/widgets/core/form-outcome.model.mjs +0 -38
- package/esm2020/lib/form/components/widgets/core/form.model.mjs +0 -353
- package/esm2020/lib/form/components/widgets/date/date.widget.mjs +0 -161
- package/esm2020/lib/form/components/widgets/date-time/date-time.widget.mjs +0 -151
- package/esm2020/lib/form/components/widgets/decimal/decimal.component.mjs +0 -54
- package/esm2020/lib/form/components/widgets/display-text/display-text.widget.mjs +0 -47
- package/esm2020/lib/form/components/widgets/error/error.component.mjs +0 -93
- package/esm2020/lib/form/components/widgets/header/header.widget.mjs +0 -43
- package/esm2020/lib/form/components/widgets/hyperlink/hyperlink.widget.mjs +0 -71
- package/esm2020/lib/form/components/widgets/json/json.widget.mjs +0 -70
- package/esm2020/lib/form/components/widgets/multiline-text/multiline-text.widget.mjs +0 -56
- package/esm2020/lib/form/components/widgets/number/number.widget.mjs +0 -66
- package/esm2020/lib/form/components/widgets/text/text-mask.component.mjs +0 -215
- package/esm2020/lib/form/components/widgets/text/text.widget.mjs +0 -66
- package/esm2020/lib/form/components/widgets/unknown/unknown.widget.mjs +0 -63
- package/esm2020/lib/form/components/widgets/widget.component.mjs +0 -110
- package/esm2020/lib/form/form-base.module.mjs +0 -92
- package/esm2020/lib/form/pipes/field-style.pipe.mjs +0 -45
- package/esm2020/lib/form/pipes/form-style.pipe.mjs +0 -39
- package/esm2020/lib/form/services/form-rendering.service.mjs +0 -53
- package/esm2020/lib/form/services/form.service.mjs +0 -78
- package/esm2020/lib/form/services/widget-visibility.service.mjs +0 -294
- package/esm2020/lib/header/header.component.mjs +0 -73
- package/esm2020/lib/header/navbar/navbar-item.component.mjs +0 -37
- package/esm2020/lib/header/navbar/navbar.component.mjs +0 -36
- package/esm2020/lib/icon/icon.component.mjs +0 -51
- package/esm2020/lib/icon/icon.module.mjs +0 -36
- package/esm2020/lib/identity-user-info/identity-user-info.component.mjs +0 -93
- package/esm2020/lib/identity-user-info/identity-user-info.module.mjs +0 -33
- package/esm2020/lib/info-drawer/info-drawer-layout.component.mjs +0 -71
- package/esm2020/lib/info-drawer/info-drawer.component.mjs +0 -114
- package/esm2020/lib/info-drawer/info-drawer.module.mjs +0 -54
- package/esm2020/lib/language-menu/language-menu.component.mjs +0 -58
- package/esm2020/lib/language-menu/language-menu.module.mjs +0 -35
- package/esm2020/lib/language-menu/language-picker.component.mjs +0 -61
- package/esm2020/lib/language-menu/service/language.service.mjs +0 -50
- package/esm2020/lib/layout/components/header/header.component.mjs +0 -100
- package/esm2020/lib/layout/components/layout-container/layout-container.component.mjs +0 -180
- package/esm2020/lib/layout/components/sidebar-action/sidebar-action-menu.component.mjs +0 -82
- package/esm2020/lib/layout/components/sidenav-layout/sidenav-layout.component.mjs +0 -145
- package/esm2020/lib/layout/directives/sidenav-layout-content.directive.mjs +0 -33
- package/esm2020/lib/layout/directives/sidenav-layout-header.directive.mjs +0 -33
- package/esm2020/lib/layout/directives/sidenav-layout-navigation.directive.mjs +0 -33
- package/esm2020/lib/layout/layout.module.mjs +0 -72
- package/esm2020/lib/login/components/login/login.component.mjs +0 -373
- package/esm2020/lib/login/components/login-dialog/login-dialog.component.mjs +0 -63
- package/esm2020/lib/login/components/login-dialog-panel/login-dialog-panel.component.mjs +0 -52
- package/esm2020/lib/login/directives/login-footer.directive.mjs +0 -41
- package/esm2020/lib/login/directives/login-header.directive.mjs +0 -41
- package/esm2020/lib/login/login.module.mjs +0 -54
- package/esm2020/lib/material.module.mjs +0 -254
- package/esm2020/lib/mock/cookie.service.mock.mjs +0 -47
- package/esm2020/lib/mock/translation.service.mock.mjs +0 -44
- package/esm2020/lib/notifications/components/add-notification.stories.component.mjs +0 -44
- package/esm2020/lib/notifications/components/notification-history.component.mjs +0 -152
- package/esm2020/lib/notifications/notification-history.module.mjs +0 -35
- package/esm2020/lib/notifications/services/notification.service.mjs +0 -166
- package/esm2020/lib/pagination/infinite-pagination.component.mjs +0 -117
- package/esm2020/lib/pagination/pagination.component.mjs +0 -268
- package/esm2020/lib/pagination/pagination.module.mjs +0 -35
- package/esm2020/lib/pipes/date-time.pipe.mjs +0 -46
- package/esm2020/lib/pipes/decimal-number.pipe.mjs +0 -84
- package/esm2020/lib/pipes/file-size.pipe.mjs +0 -54
- package/esm2020/lib/pipes/file-type.pipe.mjs +0 -40
- package/esm2020/lib/pipes/filter-string.pipe.mjs +0 -34
- package/esm2020/lib/pipes/format-space.pipe.mjs +0 -39
- package/esm2020/lib/pipes/full-name.pipe.mjs +0 -42
- package/esm2020/lib/pipes/localized-date.pipe.mjs +0 -70
- package/esm2020/lib/pipes/moment-date.pipe.mjs +0 -36
- package/esm2020/lib/pipes/moment-datetime.pipe.mjs +0 -36
- package/esm2020/lib/pipes/multi-value.pipe.mjs +0 -37
- package/esm2020/lib/pipes/pipe.module.mjs +0 -91
- package/esm2020/lib/pipes/public-api.mjs +0 -32
- package/esm2020/lib/pipes/text-highlight.pipe.mjs +0 -39
- package/esm2020/lib/pipes/time-ago.pipe.mjs +0 -71
- package/esm2020/lib/pipes/user-initial.pipe.mjs +0 -52
- package/esm2020/lib/progress/progress.component.mjs +0 -90
- package/esm2020/lib/search-text/search-text-input.component.mjs +0 -293
- package/esm2020/lib/search-text/search-text-input.module.mjs +0 -35
- package/esm2020/lib/search-text/search-trigger.directive.mjs +0 -182
- package/esm2020/lib/snackbar-content/snackbar-content.component.mjs +0 -48
- package/esm2020/lib/snackbar-content/snackbar-content.module.mjs +0 -56
- package/esm2020/lib/sorting-picker/sorting-picker.component.mjs +0 -68
- package/esm2020/lib/templates/empty-content/empty-content.component.mjs +0 -44
- package/esm2020/lib/templates/error-content/error-content.component.mjs +0 -62
- package/esm2020/lib/templates/template.module.mjs +0 -38
- package/esm2020/lib/testing/core.story.module.mjs +0 -39
- package/esm2020/lib/testing/core.testing.module.mjs +0 -35
- package/esm2020/lib/testing/noop-auth.module.mjs +0 -77
- package/esm2020/lib/testing/noop-translate.module.mjs +0 -61
- package/esm2020/lib/toolbar/toolbar-divider.component.mjs +0 -27
- package/esm2020/lib/toolbar/toolbar-title.component.mjs +0 -32
- package/esm2020/lib/toolbar/toolbar.component.mjs +0 -40
- package/esm2020/lib/toolbar/toolbar.module.mjs +0 -36
- package/esm2020/lib/translation/translate-loader.service.mjs +0 -148
- package/esm2020/lib/translation/translation.service.mjs +0 -148
- package/esm2020/lib/viewer/components/download-prompt-dialog/download-prompt-dialog.component.mjs +0 -37
- package/esm2020/lib/viewer/components/img-viewer/img-viewer.component.mjs +0 -218
- package/esm2020/lib/viewer/components/media-player/media-player.component.mjs +0 -61
- package/esm2020/lib/viewer/components/pdf-viewer/pdf-viewer.component.mjs +0 -510
- package/esm2020/lib/viewer/components/pdf-viewer-password-dialog/pdf-viewer-password-dialog.mjs +0 -61
- package/esm2020/lib/viewer/components/pdf-viewer-thumb/pdf-viewer-thumb.component.mjs +0 -49
- package/esm2020/lib/viewer/components/pdf-viewer-thumbnails/pdf-viewer-thumbnails.component.mjs +0 -197
- package/esm2020/lib/viewer/components/txt-viewer/txt-viewer.component.mjs +0 -77
- package/esm2020/lib/viewer/components/unknown-format/unknown-format.component.mjs +0 -31
- package/esm2020/lib/viewer/components/viewer-more-actions.component.mjs +0 -34
- package/esm2020/lib/viewer/components/viewer-open-with.component.mjs +0 -34
- package/esm2020/lib/viewer/components/viewer-render/viewer-render.component.mjs +0 -211
- package/esm2020/lib/viewer/components/viewer-sidebar.component.mjs +0 -46
- package/esm2020/lib/viewer/components/viewer-toolbar-actions.component.mjs +0 -34
- package/esm2020/lib/viewer/components/viewer-toolbar-custom-actions.component.mjs +0 -34
- package/esm2020/lib/viewer/components/viewer-toolbar.component.mjs +0 -34
- package/esm2020/lib/viewer/components/viewer.component.mjs +0 -435
- package/esm2020/lib/viewer/directives/viewer-extension.directive.mjs +0 -72
- package/esm2020/lib/viewer/services/rendering-queue.services.mjs +0 -179
- package/esm2020/lib/viewer/services/view-util.service.mjs +0 -149
- package/esm2020/lib/viewer/viewer.module.mjs +0 -120
- package/esm2020/shell/lib/components/shell/shell.component.mjs +0 -126
- package/esm2020/shell/lib/shell.module.mjs +0 -79
- package/fesm2015/adf-core.mjs +0 -30973
- package/fesm2015/adf-core.mjs.map +0 -1
- package/fesm2015/alfresco-adf-core-api.mjs +0 -466
- package/fesm2015/alfresco-adf-core-api.mjs.map +0 -1
- package/fesm2015/alfresco-adf-core-auth.mjs +0 -98
- package/fesm2015/alfresco-adf-core-auth.mjs.map +0 -1
- package/fesm2015/alfresco-adf-core-breadcrumbs.mjs +0 -188
- package/fesm2015/alfresco-adf-core-breadcrumbs.mjs.map +0 -1
- package/fesm2015/alfresco-adf-core-feature-flags.mjs +0 -951
- package/fesm2015/alfresco-adf-core-feature-flags.mjs.map +0 -1
- package/fesm2015/alfresco-adf-core-shell.mjs +0 -268
- package/fesm2015/alfresco-adf-core-shell.mjs.map +0 -1
- package/fesm2020/adf-core.mjs +0 -32008
- package/fesm2020/adf-core.mjs.map +0 -1
- package/fesm2020/alfresco-adf-core-api.mjs +0 -497
- package/fesm2020/alfresco-adf-core-api.mjs.map +0 -1
- package/fesm2020/alfresco-adf-core-auth.mjs +0 -98
- package/fesm2020/alfresco-adf-core-auth.mjs.map +0 -1
- package/fesm2020/alfresco-adf-core-breadcrumbs.mjs +0 -187
- package/fesm2020/alfresco-adf-core-breadcrumbs.mjs.map +0 -1
- package/fesm2020/alfresco-adf-core-feature-flags.mjs +0 -959
- package/fesm2020/alfresco-adf-core-feature-flags.mjs.map +0 -1
- package/fesm2020/alfresco-adf-core-shell.mjs +0 -266
- package/fesm2020/alfresco-adf-core-shell.mjs.map +0 -1
- package/lib/pipes/filter-string.pipe.d.ts +0 -23
- package/schematics/migrations/7_0_0/index.js.map +0 -1
- package/schematics/migrations/collection.json +0 -46
- /package/{esm2020 → esm2022}/adf-core.mjs +0 -0
- /package/{esm2020 → esm2022}/api/alfresco-adf-core-api.mjs +0 -0
- /package/{esm2020 → esm2022}/api/index.mjs +0 -0
- /package/{esm2020 → esm2022}/api/lib/alfresco-api/alfresco-api.param-encoder.mjs +0 -0
- /package/{esm2020 → esm2022}/api/lib/alfresco-api/alfresco-api.response-error.mjs +0 -0
- /package/{esm2020 → esm2022}/api/lib/alfresco-api/alfresco-api.utils.mjs +0 -0
- /package/{esm2020 → esm2022}/api/lib/interfaces.mjs +0 -0
- /package/{esm2020 → esm2022}/api/lib/types.mjs +0 -0
- /package/{esm2020 → esm2022}/auth/alfresco-adf-core-auth.mjs +0 -0
- /package/{esm2020 → esm2022}/auth/authentication.mjs +0 -0
- /package/{esm2020 → esm2022}/auth/index.mjs +0 -0
- /package/{esm2020 → esm2022}/breadcrumbs/alfresco-adf-core-breadcrumbs.mjs +0 -0
- /package/{esm2020 → esm2022}/breadcrumbs/index.mjs +0 -0
- /package/{esm2020 → esm2022}/feature-flags/alfresco-adf-core-feature-flags.mjs +0 -0
- /package/{esm2020 → esm2022}/feature-flags/index.mjs +0 -0
- /package/{esm2020 → esm2022}/feature-flags/lib/interfaces/features.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/feature-flags/lib/mocks/features-service-mock.factory.mjs +0 -0
- /package/{esm2020 → esm2022}/feature-flags/lib/providers/debug-feature-flags.provider.mjs +0 -0
- /package/{esm2020 → esm2022}/feature-flags/lib/providers/dummy-feature-flags.provider.mjs +0 -0
- /package/{esm2020 → esm2022}/feature-flags/lib/services/flagset.parser.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/about/about-repository-info/repository-info.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/about/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/about/interfaces.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/about/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/app-config/app-config.loader.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/app-config/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/app-config/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/auth/guard/auth-guard-bpm.service.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/auth/guard/auth-guard-ecm.service.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/auth/guard/auth-guard-sso-role.service.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/auth/guard/auth-guard.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/auth/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/auth/interfaces/authentication-service.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/auth/interfaces/authentication.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/auth/interfaces/identity-group.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/auth/interfaces/identity-user.service.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/auth/interfaces/openid-configuration.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/auth/models/application-access.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/auth/models/identity-group.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/auth/models/identity-role.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/auth/models/identity-user.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/auth/models/oauth-config.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/auth/models/redirection.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/auth/models/user-access.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/auth/oidc/auth-config.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/auth/oidc/auth.service.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/auth/oidc/oidc-auth.guard.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/auth/oidc/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/auth/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/auth/services/base-authentication.service.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/blank-page/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/blank-page/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/card-view/components/card-view.components.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/card-view/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/card-view/interfaces/base-card-view-update.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/card-view/interfaces/card-view-arrayitem-properties.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/card-view/interfaces/card-view-boolitem-properties.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/card-view/interfaces/card-view-dateitem-properties.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/card-view/interfaces/card-view-item-properties.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/card-view/interfaces/card-view-item-validator.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/card-view/interfaces/card-view-item.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/card-view/interfaces/card-view-keyvaluepairsitem-properties.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/card-view/interfaces/card-view-selectitem-properties.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/card-view/interfaces/card-view-textitem-pipe-property.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/card-view/interfaces/card-view-textitem-properties.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/card-view/interfaces/card-view.interfaces.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/card-view/interfaces/click-notification.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/card-view/interfaces/update-notification.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/card-view/models/card-view-arrayitem.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/card-view/models/card-view-baseitem.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/card-view/models/card-view-boolitem.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/card-view/models/card-view-dateitem.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/card-view/models/card-view-datetimeitem.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/card-view/models/card-view-floatitem.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/card-view/models/card-view-intitem.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/card-view/models/card-view-keyvaluepairs.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/card-view/models/card-view-longitem.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/card-view/models/card-view-mapitem.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/card-view/models/card-view-selectitem.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/card-view/models/card-view-textitem.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/card-view/models/card-view.models.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/card-view/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/card-view/services/card-view.services.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/card-view/validators/card-view-item-float.validator.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/card-view/validators/card-view-item-int.validator.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/card-view/validators/card-view-item-length.validator.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/card-view/validators/card-view-item-long.validator.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/card-view/validators/card-view-item-match.validator.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/card-view/validators/card-view-item-minmax.validator.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/card-view/validators/card-view-item-only-positive-int.validator.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/card-view/validators/card-view-item-only-positive-long.validator.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/card-view/validators/card-view.validators.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/card-view/validators/validators.map.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/clipboard/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/clipboard/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/comments/comment-list/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/comments/comment-list/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/comments/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/comments/interfaces/comments-service.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/comments/interfaces/comments.token.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/comments/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/interface/search-component.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/models/user-info-mode.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/services/dynamic-component-mapper.service.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/services/language-item.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/utils/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/utils/moment-date-formats.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/utils/object-utils.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/utils/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/common/utils/string-utils.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/context-menu/animations.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/context-menu/context-menu-overlay.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/context-menu/context-menu.tokens.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/context-menu/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/context-menu/interfaces.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/context-menu/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/datatable/components/data-cell.event.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/datatable/components/data-row-action.event.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/datatable/components/mocks/datatable.mock.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/datatable/data/data-column.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/datatable/data/data-row-event.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/datatable/data/data-row-update.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/datatable/data/data-row.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/datatable/data/data-sorting.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/datatable/data/datatable-adapter.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/datatable/data/object-datacolumn.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/datatable/data/object-datarow.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/datatable/data/object-datatable-adapter.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/datatable/data-column/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/datatable/data-column/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/datatable/directives/resizable/types.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/datatable/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/datatable/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/dialogs/dialog/dialog-data.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/dialogs/dialog/dialog.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/dialogs/dialog/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/dialogs/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/dialogs/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/dialogs/unsaved-changes-dialog/unsaved-changes-dialog.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/directives/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/directives/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/dynamic-chip-list/chip.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/dynamic-chip-list/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/dynamic-chip-list/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/events/base-ui.event.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/events/base.event.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/events/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/events/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/form/components/middlewares/middleware.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/form/components/widgets/core/container-column.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/form/components/widgets/core/container.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/form/components/widgets/core/content-link.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/form/components/widgets/core/displayable-cm-properties.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/form/components/widgets/core/error-message.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/form/components/widgets/core/external-content-link.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/form/components/widgets/core/external-content.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/form/components/widgets/core/form-field-file-source.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/form/components/widgets/core/form-field-metadata.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/form/components/widgets/core/form-field-option.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/form/components/widgets/core/form-field-rule.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/form/components/widgets/core/form-field-selected-folder.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/form/components/widgets/core/form-field-templates.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/form/components/widgets/core/form-field-utils.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/form/components/widgets/core/form-field-validator.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/form/components/widgets/core/form-field-variable-options.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/form/components/widgets/core/form-field.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/form/components/widgets/core/form-outcome-event.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/form/components/widgets/core/form-values.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/form/components/widgets/core/form-variable.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/form/components/widgets/core/form-widget.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/form/components/widgets/core/group.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/form/components/widgets/core/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/form/components/widgets/core/predefined-theme.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/form/components/widgets/core/process-form-model.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/form/components/widgets/core/process-variable.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/form/components/widgets/core/tab.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/form/components/widgets/core/theme.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/form/components/widgets/core/upload-widget-content-link.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/form/components/widgets/core/widget-schema.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/form/components/widgets/display-text/display-text.schema.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/form/components/widgets/display-text/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/form/components/widgets/header/header.schema.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/form/components/widgets/header/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/form/components/widgets/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/form/events/form-error.event.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/form/events/form-field.event.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/form/events/form-rules.event.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/form/events/form-spinner.event.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/form/events/form.event.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/form/events/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/form/events/validate-form-field.event.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/form/events/validate-form.event.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/form/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/form/models/form-rules.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/form/models/task-process-variable.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/form/models/widget-visibility.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/form/pipes/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/form/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/form/services/form-validation-service.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/header/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/header/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/icon/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/icon/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/identity-user-info/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/identity-user-info/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/info-drawer/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/info-drawer/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/interface/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/interface/injection.tokens.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/interface/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/language-menu/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/language-menu/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/language-menu/service/language.service.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/layout/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/layout/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/login/components/login-dialog/login-dialog-component-data.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/login/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/login/models/login-error.event.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/login/models/login-submit.event.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/login/models/login-success.event.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/login/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/mock/data-column.mock.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/mock/event.mock.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/mock/form/form-definition-readonly.mock.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/mock/form/form-definition-visibility.mock.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/mock/form/form-definition.mock.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/mock/form/form.component.mock.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/mock/form/form.service.mock.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/mock/form/widget-visibility.service.mock.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/mock/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/mock/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/models/comment.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/models/component.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/models/decimal-number.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/models/general-user.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/models/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/models/pagination.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/models/path.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/models/product-version.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/models/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/models/request-pagination.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/notifications/helpers/notification.factory.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/notifications/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/notifications/models/notification.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/notifications/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/pagination/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/pagination/paginated-component.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/pagination/pagination-component.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/pagination/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/pipes/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/pipes/user-like.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/search-text/animations.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/search-text/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/search-text/models/search-text-input.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/search-text/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/snackbar-content/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/snackbar-content/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/snackbar-content/snack-bar-data.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/sorting-picker/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/sorting-picker/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/templates/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/templates/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/testing/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/toolbar/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/toolbar/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/translation/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/translation/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/viewer/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/viewer/models/download-prompt.actions.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/viewer/models/viewer.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/viewer/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/shell/alfresco-adf-core-shell.mjs +0 -0
- /package/{esm2020 → esm2022}/shell/index.mjs +0 -0
- /package/{esm2020 → esm2022}/shell/lib/services/shell-app.service.mjs +0 -0
- /package/{esm2020 → esm2022}/shell/lib/shell.routes.mjs +0 -0
- /package/schematics/migrations/{7_0_0 → schematics/migrations/7_0_0}/index.d.ts +0 -0
- /package/schematics/migrations/{7_0_0 → schematics/migrations/7_0_0}/index.js +0 -0
|
@@ -33,5 +33,5 @@ export declare class BreadcrumbComponent implements AfterContentInit, OnChanges
|
|
|
33
33
|
private setBreadcrumbs;
|
|
34
34
|
private mapToTemplateRefs;
|
|
35
35
|
static ɵfac: i0.ɵɵFactoryDeclaration<BreadcrumbComponent, never>;
|
|
36
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<BreadcrumbComponent, "adf-breadcrumb", never, { "compact": "compact"; }, { "compactChange": "compactChange"; }, ["breadcrumbItems"], never, true, never>;
|
|
36
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<BreadcrumbComponent, "adf-breadcrumb", never, { "compact": { "alias": "compact"; "required": false; }; }, { "compactChange": "compactChange"; }, ["breadcrumbItems"], never, true, never>;
|
|
37
37
|
}
|
|
@@ -0,0 +1,304 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright © 2005-2024 Hyland Software, Inc. and its affiliates. All rights reserved.
|
|
4
|
+
*
|
|
5
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
+
* you may not use this file except in compliance with the License.
|
|
7
|
+
* You may obtain a copy of the License at
|
|
8
|
+
*
|
|
9
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
+
*
|
|
11
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
12
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
+
* See the License for the specific language governing permissions and
|
|
15
|
+
* limitations under the License.
|
|
16
|
+
*/
|
|
17
|
+
import { SHOULD_ADD_AUTH_TOKEN } from '@alfresco/adf-core/auth';
|
|
18
|
+
import { HttpClient, HttpContext, HttpHeaders, HttpParams } from '@angular/common/http';
|
|
19
|
+
import { Injectable } from '@angular/core';
|
|
20
|
+
import { of, Subject, throwError } from 'rxjs';
|
|
21
|
+
import { catchError, map, takeUntil } from 'rxjs/operators';
|
|
22
|
+
import { convertObjectToFormData, getQueryParamsWithCustomEncoder, isBlobResponse, isConstructor, isHttpResponseEvent, isHttpUploadProgressEvent, removeNilValues } from './alfresco-api/alfresco-api.utils';
|
|
23
|
+
import { AlfrescoApiParamEncoder } from './alfresco-api/alfresco-api.param-encoder';
|
|
24
|
+
import { AlfrescoApiResponseError } from './alfresco-api/alfresco-api.response-error';
|
|
25
|
+
import ee from 'event-emitter';
|
|
26
|
+
import * as i0 from "@angular/core";
|
|
27
|
+
import * as i1 from "@angular/common/http";
|
|
28
|
+
export class AdfHttpClient {
|
|
29
|
+
get disableCsrf() {
|
|
30
|
+
return this._disableCsrf;
|
|
31
|
+
}
|
|
32
|
+
set disableCsrf(disableCsrf) {
|
|
33
|
+
this._disableCsrf = disableCsrf;
|
|
34
|
+
}
|
|
35
|
+
constructor(httpClient) {
|
|
36
|
+
this.httpClient = httpClient;
|
|
37
|
+
this.defaultSecurityOptions = {
|
|
38
|
+
withCredentials: true,
|
|
39
|
+
isBpmRequest: false,
|
|
40
|
+
authentications: {},
|
|
41
|
+
defaultHeaders: {}
|
|
42
|
+
};
|
|
43
|
+
ee(this);
|
|
44
|
+
}
|
|
45
|
+
setDefaultSecurityOption(options) {
|
|
46
|
+
this.defaultSecurityOptions = this.merge(this.defaultSecurityOptions, options);
|
|
47
|
+
}
|
|
48
|
+
merge(...objects) {
|
|
49
|
+
const result = {};
|
|
50
|
+
objects.forEach((source) => {
|
|
51
|
+
Object.keys(source).forEach((prop) => {
|
|
52
|
+
if (prop in result && Array.isArray(result[prop])) {
|
|
53
|
+
result[prop] = result[prop].concat(source[prop]);
|
|
54
|
+
}
|
|
55
|
+
else if (prop in result && typeof result[prop] === 'object') {
|
|
56
|
+
result[prop] = this.merge(result[prop], source[prop]);
|
|
57
|
+
}
|
|
58
|
+
else {
|
|
59
|
+
result[prop] = source[prop];
|
|
60
|
+
}
|
|
61
|
+
});
|
|
62
|
+
});
|
|
63
|
+
return result;
|
|
64
|
+
}
|
|
65
|
+
request(url, options, sc = this.defaultSecurityOptions, emitters) {
|
|
66
|
+
const body = AdfHttpClient.getBody(options);
|
|
67
|
+
const params = getQueryParamsWithCustomEncoder(options.queryParams, new AlfrescoApiParamEncoder());
|
|
68
|
+
const responseType = AdfHttpClient.getResponseType(options);
|
|
69
|
+
const context = new HttpContext().set(SHOULD_ADD_AUTH_TOKEN, true);
|
|
70
|
+
const security = { ...this.defaultSecurityOptions, ...sc };
|
|
71
|
+
const headers = this.getHeaders(options);
|
|
72
|
+
if (!emitters) {
|
|
73
|
+
emitters = this.getEventEmitters();
|
|
74
|
+
}
|
|
75
|
+
const request = this.httpClient.request(options.httpMethod, url, {
|
|
76
|
+
context,
|
|
77
|
+
...(body && { body }),
|
|
78
|
+
...(responseType && { responseType }),
|
|
79
|
+
...security,
|
|
80
|
+
...(params && { params }),
|
|
81
|
+
headers,
|
|
82
|
+
observe: 'events',
|
|
83
|
+
reportProgress: true
|
|
84
|
+
});
|
|
85
|
+
return this.requestWithLegacyEventEmitters(request, emitters, options.returnType);
|
|
86
|
+
}
|
|
87
|
+
post(url, options, sc, emitters) {
|
|
88
|
+
return this.request(url, { ...options, httpMethod: 'POST' }, sc, emitters);
|
|
89
|
+
}
|
|
90
|
+
put(url, options, sc, emitters) {
|
|
91
|
+
return this.request(url, { ...options, httpMethod: 'PUT' }, sc, emitters);
|
|
92
|
+
}
|
|
93
|
+
get(url, options, sc, emitters) {
|
|
94
|
+
return this.request(url, { ...options, httpMethod: 'GET' }, sc, emitters);
|
|
95
|
+
}
|
|
96
|
+
delete(url, options, sc, emitters) {
|
|
97
|
+
return this.request(url, { ...options, httpMethod: 'DELETE' }, sc, emitters);
|
|
98
|
+
}
|
|
99
|
+
addPromiseListeners(promise, eventEmitter) {
|
|
100
|
+
const eventPromise = Object.assign(promise, {
|
|
101
|
+
on() {
|
|
102
|
+
// eslint-disable-next-line prefer-spread, prefer-rest-params
|
|
103
|
+
eventEmitter.on.apply(eventEmitter, arguments);
|
|
104
|
+
return this;
|
|
105
|
+
},
|
|
106
|
+
once() {
|
|
107
|
+
// eslint-disable-next-line prefer-spread, prefer-rest-params
|
|
108
|
+
eventEmitter.once.apply(eventEmitter, arguments);
|
|
109
|
+
return this;
|
|
110
|
+
},
|
|
111
|
+
emit() {
|
|
112
|
+
// eslint-disable-next-line prefer-spread, prefer-rest-params
|
|
113
|
+
eventEmitter.emit.apply(eventEmitter, arguments);
|
|
114
|
+
return this;
|
|
115
|
+
},
|
|
116
|
+
off() {
|
|
117
|
+
// eslint-disable-next-line prefer-spread, prefer-rest-params
|
|
118
|
+
eventEmitter.off.apply(eventEmitter, arguments);
|
|
119
|
+
return this;
|
|
120
|
+
}
|
|
121
|
+
});
|
|
122
|
+
return eventPromise;
|
|
123
|
+
}
|
|
124
|
+
getEventEmitters() {
|
|
125
|
+
const apiClientEmitter = {
|
|
126
|
+
on: this.on.bind(this),
|
|
127
|
+
off: this.off.bind(this),
|
|
128
|
+
once: this.once.bind(this),
|
|
129
|
+
emit: this.emit.bind(this)
|
|
130
|
+
};
|
|
131
|
+
return {
|
|
132
|
+
apiClientEmitter,
|
|
133
|
+
eventEmitter: ee({})
|
|
134
|
+
};
|
|
135
|
+
}
|
|
136
|
+
requestWithLegacyEventEmitters(request$, emitters, returnType) {
|
|
137
|
+
const abort$ = new Subject();
|
|
138
|
+
const { eventEmitter, apiClientEmitter } = emitters;
|
|
139
|
+
const promise = request$.pipe(map((res) => {
|
|
140
|
+
if (isHttpUploadProgressEvent(res)) {
|
|
141
|
+
const percent = Math.round((res.loaded / res.total) * 100);
|
|
142
|
+
eventEmitter.emit('progress', { loaded: res.loaded, total: res.total, percent });
|
|
143
|
+
}
|
|
144
|
+
if (isHttpResponseEvent(res)) {
|
|
145
|
+
eventEmitter.emit('success', res.body);
|
|
146
|
+
return AdfHttpClient.deserialize(res, returnType);
|
|
147
|
+
}
|
|
148
|
+
}), catchError((err) => {
|
|
149
|
+
// since we can't always determinate ahead of time if the response is going to be xml or plain text response
|
|
150
|
+
// we need to handle false positive cases here.
|
|
151
|
+
if (err.status === 200) {
|
|
152
|
+
eventEmitter.emit('success', err.error.text);
|
|
153
|
+
return of(err.error.text);
|
|
154
|
+
}
|
|
155
|
+
eventEmitter.emit('error', err);
|
|
156
|
+
apiClientEmitter.emit('error', { ...err, response: { req: err } });
|
|
157
|
+
if (err.status === 401) {
|
|
158
|
+
eventEmitter.emit('unauthorized');
|
|
159
|
+
apiClientEmitter.emit('unauthorized');
|
|
160
|
+
}
|
|
161
|
+
// for backwards compatibility we need to convert it to error class as the HttpErrorResponse only implements Error interface, not extending it,
|
|
162
|
+
// and we need to be able to correctly pass instanceof Error conditions used inside repository
|
|
163
|
+
// we also need to pass error as Stringify string as we are detecting statusCodes using JSON.parse(error.message) in some places
|
|
164
|
+
const msg = typeof err.error === 'string' ? err.error : JSON.stringify(err.error);
|
|
165
|
+
// for backwards compatibility to handle cases in code where we try read response.error.response.body;
|
|
166
|
+
const error = {
|
|
167
|
+
...err, body: err.error
|
|
168
|
+
};
|
|
169
|
+
const alfrescoApiError = new AlfrescoApiResponseError(msg, err.status, error);
|
|
170
|
+
return throwError(alfrescoApiError);
|
|
171
|
+
}), takeUntil(abort$)).toPromise();
|
|
172
|
+
promise.abort = function () {
|
|
173
|
+
eventEmitter.emit('abort');
|
|
174
|
+
abort$.next();
|
|
175
|
+
abort$.complete();
|
|
176
|
+
return this;
|
|
177
|
+
};
|
|
178
|
+
return this.addPromiseListeners(promise, eventEmitter);
|
|
179
|
+
}
|
|
180
|
+
static getBody(options) {
|
|
181
|
+
const contentType = options.contentType ? options.contentType : AdfHttpClient.jsonPreferredMime(options.contentTypes);
|
|
182
|
+
const isFormData = contentType === 'multipart/form-data';
|
|
183
|
+
const isFormUrlEncoded = contentType === 'application/x-www-form-urlencoded';
|
|
184
|
+
const body = options.bodyParam;
|
|
185
|
+
if (isFormData) {
|
|
186
|
+
return convertObjectToFormData(options.formParams);
|
|
187
|
+
}
|
|
188
|
+
if (isFormUrlEncoded) {
|
|
189
|
+
return new HttpParams({ fromObject: removeNilValues(options.formParams) });
|
|
190
|
+
}
|
|
191
|
+
return body;
|
|
192
|
+
}
|
|
193
|
+
getHeaders(options) {
|
|
194
|
+
const contentType = options.contentType || AdfHttpClient.jsonPreferredMime(options.contentTypes);
|
|
195
|
+
const accept = options.accept || AdfHttpClient.jsonPreferredMime(options.accepts);
|
|
196
|
+
const optionsHeaders = {
|
|
197
|
+
...options.headerParams,
|
|
198
|
+
...(accept && { Accept: accept }),
|
|
199
|
+
...((contentType) && { 'Content-Type': contentType })
|
|
200
|
+
};
|
|
201
|
+
if (!this.disableCsrf) {
|
|
202
|
+
this.setCsrfToken(optionsHeaders);
|
|
203
|
+
}
|
|
204
|
+
return new HttpHeaders(optionsHeaders);
|
|
205
|
+
}
|
|
206
|
+
/**
|
|
207
|
+
* Chooses a content type from the given array, with JSON preferred; i.e. return JSON if included, otherwise return the first.
|
|
208
|
+
*
|
|
209
|
+
* @param contentTypes a contentType array
|
|
210
|
+
* @returns The chosen content type, preferring JSON.
|
|
211
|
+
*/
|
|
212
|
+
static jsonPreferredMime(contentTypes) {
|
|
213
|
+
if (!contentTypes?.length) {
|
|
214
|
+
return 'application/json';
|
|
215
|
+
}
|
|
216
|
+
for (let i = 0; i < contentTypes.length; i++) {
|
|
217
|
+
if (AdfHttpClient.isJsonMime(contentTypes[i])) {
|
|
218
|
+
return contentTypes[i];
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
return contentTypes[0];
|
|
222
|
+
}
|
|
223
|
+
/**
|
|
224
|
+
* Checks whether the given content type represents JSON.<br>
|
|
225
|
+
* JSON content type examples:<br>
|
|
226
|
+
* <ul>
|
|
227
|
+
* <li>application/json</li>
|
|
228
|
+
* <li>application/json; charset=UTF8</li>
|
|
229
|
+
* <li>APPLICATION/JSON</li>
|
|
230
|
+
* </ul>
|
|
231
|
+
*
|
|
232
|
+
* @param contentType The MIME content type to check.
|
|
233
|
+
* @returns <code>true</code> if <code>contentType</code> represents JSON, otherwise <code>false</code>.
|
|
234
|
+
*/
|
|
235
|
+
static isJsonMime(contentType) {
|
|
236
|
+
return Boolean(contentType?.match(/^application\/json(;.*)?$/i));
|
|
237
|
+
}
|
|
238
|
+
setCsrfToken(optionsHeaders) {
|
|
239
|
+
const token = this.createCSRFToken();
|
|
240
|
+
optionsHeaders['X-CSRF-TOKEN'] = token;
|
|
241
|
+
try {
|
|
242
|
+
document.cookie = 'CSRF-TOKEN=' + token + ';path=/';
|
|
243
|
+
}
|
|
244
|
+
catch (err) {
|
|
245
|
+
/* continue regardless of error */
|
|
246
|
+
}
|
|
247
|
+
}
|
|
248
|
+
createCSRFToken(a) {
|
|
249
|
+
const randomValue = window.crypto.getRandomValues(new Uint32Array(1))[0];
|
|
250
|
+
return a ? (a ^ ((randomValue * 16) >> (a / 4))).toString(16) : ([1e16] + (1e16).toString()).replace(/[01]/g, this.createCSRFToken);
|
|
251
|
+
}
|
|
252
|
+
static getResponseType(options) {
|
|
253
|
+
const isBlobType = options.returnType?.toString().toLowerCase() === 'blob' || options.responseType?.toString().toLowerCase() === 'blob';
|
|
254
|
+
if (isBlobType) {
|
|
255
|
+
return 'blob';
|
|
256
|
+
}
|
|
257
|
+
if (options.returnType === 'String') {
|
|
258
|
+
return 'text';
|
|
259
|
+
}
|
|
260
|
+
return 'json';
|
|
261
|
+
}
|
|
262
|
+
/**
|
|
263
|
+
* Deserialize an HTTP response body into a value of the specified type.
|
|
264
|
+
*
|
|
265
|
+
* @param response response object
|
|
266
|
+
* @param returnType return type
|
|
267
|
+
* @returns deserialized object
|
|
268
|
+
*/
|
|
269
|
+
static deserialize(response, returnType) {
|
|
270
|
+
if (response === null) {
|
|
271
|
+
return null;
|
|
272
|
+
}
|
|
273
|
+
const body = response.body;
|
|
274
|
+
if (!returnType) {
|
|
275
|
+
// for backwards compatibility we need to return empty string instead of null,
|
|
276
|
+
// to avoid issues when accessing null response would break application [C309878]
|
|
277
|
+
// cannot read property 'entry' of null in cases like
|
|
278
|
+
// return this.post(apiUrl, saveFormRepresentation).pipe(map((res: any) => res.entry))
|
|
279
|
+
return body !== null ? body : '';
|
|
280
|
+
}
|
|
281
|
+
if (isBlobResponse(response, returnType)) {
|
|
282
|
+
return AdfHttpClient.deserializeBlobResponse(response);
|
|
283
|
+
}
|
|
284
|
+
if (!isConstructor(returnType)) {
|
|
285
|
+
return body;
|
|
286
|
+
}
|
|
287
|
+
if (Array.isArray(body)) {
|
|
288
|
+
return body.map((element) => new returnType(element));
|
|
289
|
+
}
|
|
290
|
+
return new returnType(body);
|
|
291
|
+
}
|
|
292
|
+
static deserializeBlobResponse(response) {
|
|
293
|
+
return new Blob([response.body], { type: response.headers.get('Content-Type') });
|
|
294
|
+
}
|
|
295
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: AdfHttpClient, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
296
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: AdfHttpClient, providedIn: 'root' }); }
|
|
297
|
+
}
|
|
298
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: AdfHttpClient, decorators: [{
|
|
299
|
+
type: Injectable,
|
|
300
|
+
args: [{
|
|
301
|
+
providedIn: 'root'
|
|
302
|
+
}]
|
|
303
|
+
}], ctorParameters: function () { return [{ type: i1.HttpClient }]; } });
|
|
304
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRmLWh0dHAtY2xpZW50LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWIvY29yZS9hcGkvc3JjL2xpYi9hZGYtaHR0cC1jbGllbnQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7O0dBZUc7QUFFSCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUVoRSxPQUFPLEVBQ0gsVUFBVSxFQUNWLFdBQVcsRUFHWCxXQUFXLEVBQ1gsVUFBVSxFQUViLE1BQU0sc0JBQXNCLENBQUM7QUFDOUIsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQWMsRUFBRSxFQUFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDM0QsT0FBTyxFQUFFLFVBQVUsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDNUQsT0FBTyxFQUNILHVCQUF1QixFQUN2QiwrQkFBK0IsRUFDL0IsY0FBYyxFQUNkLGFBQWEsRUFDYixtQkFBbUIsRUFDbkIseUJBQXlCLEVBQ3pCLGVBQWUsRUFDbEIsTUFBTSxtQ0FBbUMsQ0FBQztBQUMzQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUNwRixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUd0RixPQUFPLEVBQWUsTUFBTSxlQUFlLENBQUM7OztBQVU1QyxNQUFNLE9BQU8sYUFBYTtJQVN0QixJQUFJLFdBQVc7UUFDWCxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUM7SUFDN0IsQ0FBQztJQUVELElBQUksV0FBVyxDQUFDLFdBQW9CO1FBQ2hDLElBQUksQ0FBQyxZQUFZLEdBQUcsV0FBVyxDQUFDO0lBQ3BDLENBQUM7SUFTRCxZQUFvQixVQUFzQjtRQUF0QixlQUFVLEdBQVYsVUFBVSxDQUFZO1FBUGxDLDJCQUFzQixHQUFHO1lBQzdCLGVBQWUsRUFBRSxJQUFJO1lBQ3JCLFlBQVksRUFBRSxLQUFLO1lBQ25CLGVBQWUsRUFBRSxFQUFFO1lBQ25CLGNBQWMsRUFBRSxFQUFFO1NBQ3JCLENBQUM7UUFHRSxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDYixDQUFDO0lBRUQsd0JBQXdCLENBQUMsT0FBWTtRQUNqQyxJQUFJLENBQUMsc0JBQXNCLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsc0JBQXNCLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDbkYsQ0FBQztJQUVELEtBQUssQ0FBQyxHQUFHLE9BQU87UUFDWixNQUFNLE1BQU0sR0FBRyxFQUFFLENBQUM7UUFFbEIsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQ3ZCLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7Z0JBQ2pDLElBQUksSUFBSSxJQUFJLE1BQU0sSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFO29CQUMvQyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztpQkFDcEQ7cUJBQU0sSUFBSSxJQUFJLElBQUksTUFBTSxJQUFJLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLFFBQVEsRUFBRTtvQkFDM0QsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO2lCQUN6RDtxQkFBTTtvQkFDSCxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO2lCQUMvQjtZQUNMLENBQUMsQ0FBQyxDQUFDO1FBQ1AsQ0FBQyxDQUFDLENBQUM7UUFFSCxPQUFPLE1BQU0sQ0FBQztJQUNsQixDQUFDO0lBRUQsT0FBTyxDQUFVLEdBQVcsRUFBRSxPQUF3QixFQUFFLEtBQXNCLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxRQUF3QjtRQUMvSCxNQUFNLElBQUksR0FBRyxhQUFhLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzVDLE1BQU0sTUFBTSxHQUFHLCtCQUErQixDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUUsSUFBSSx1QkFBdUIsRUFBRSxDQUFDLENBQUM7UUFDbkcsTUFBTSxZQUFZLEdBQUcsYUFBYSxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUM1RCxNQUFNLE9BQU8sR0FBRyxJQUFJLFdBQVcsRUFBRSxDQUFDLEdBQUcsQ0FBQyxxQkFBcUIsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNuRSxNQUFNLFFBQVEsR0FBb0IsRUFBQyxHQUFHLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxHQUFHLEVBQUUsRUFBQyxDQUFDO1FBQzFFLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDekMsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNYLFFBQVEsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztTQUN0QztRQUVELE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUNuQyxPQUFPLENBQUMsVUFBVSxFQUNsQixHQUFHLEVBQ0g7WUFDSSxPQUFPO1lBQ1AsR0FBRyxDQUFDLElBQUksSUFBSSxFQUFDLElBQUksRUFBQyxDQUFDO1lBQ25CLEdBQUcsQ0FBQyxZQUFZLElBQUksRUFBQyxZQUFZLEVBQUMsQ0FBQztZQUNuQyxHQUFHLFFBQVE7WUFDWCxHQUFHLENBQUMsTUFBTSxJQUFJLEVBQUMsTUFBTSxFQUFDLENBQUM7WUFDdkIsT0FBTztZQUNQLE9BQU8sRUFBRSxRQUFRO1lBQ2pCLGNBQWMsRUFBRSxJQUFJO1NBQ3ZCLENBQ0osQ0FBQztRQUVGLE9BQU8sSUFBSSxDQUFDLDhCQUE4QixDQUFJLE9BQU8sRUFBRSxRQUFRLEVBQUUsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3pGLENBQUM7SUFFRCxJQUFJLENBQVUsR0FBVyxFQUFFLE9BQXdCLEVBQUUsRUFBb0IsRUFBRSxRQUF3QjtRQUMvRixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUksR0FBRyxFQUFFLEVBQUMsR0FBRyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBQyxFQUFFLEVBQUUsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUNoRixDQUFDO0lBRUQsR0FBRyxDQUFVLEdBQVcsRUFBRSxPQUF3QixFQUFFLEVBQW9CLEVBQUUsUUFBd0I7UUFDOUYsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFJLEdBQUcsRUFBRSxFQUFDLEdBQUcsT0FBTyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUMsRUFBRSxFQUFFLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDL0UsQ0FBQztJQUVELEdBQUcsQ0FBVSxHQUFXLEVBQUUsT0FBd0IsRUFBRSxFQUFvQixFQUFFLFFBQXdCO1FBQzlGLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBSSxHQUFHLEVBQUUsRUFBQyxHQUFHLE9BQU8sRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFDLEVBQUUsRUFBRSxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQy9FLENBQUM7SUFFRCxNQUFNLENBQVcsR0FBVyxFQUFFLE9BQXdCLEVBQUUsRUFBb0IsRUFBRSxRQUF3QjtRQUNsRyxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUksR0FBRyxFQUFFLEVBQUMsR0FBRyxPQUFPLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBQyxFQUFFLEVBQUUsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUNsRixDQUFDO0lBRU8sbUJBQW1CLENBQVUsT0FBbUIsRUFBRSxZQUFpQjtRQUN2RSxNQUFNLFlBQVksR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRTtZQUN4QyxFQUFFO2dCQUNFLDZEQUE2RDtnQkFDN0QsWUFBWSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUFFLFNBQVMsQ0FBQyxDQUFDO2dCQUMvQyxPQUFPLElBQUksQ0FBQztZQUNoQixDQUFDO1lBQ0QsSUFBSTtnQkFDQSw2REFBNkQ7Z0JBQzdELFlBQVksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksRUFBRSxTQUFTLENBQUMsQ0FBQztnQkFDakQsT0FBTyxJQUFJLENBQUM7WUFDaEIsQ0FBQztZQUNELElBQUk7Z0JBQ0EsNkRBQTZEO2dCQUM3RCxZQUFZLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQUUsU0FBUyxDQUFDLENBQUM7Z0JBQ2pELE9BQU8sSUFBSSxDQUFDO1lBQ2hCLENBQUM7WUFDRCxHQUFHO2dCQUNDLDZEQUE2RDtnQkFDN0QsWUFBWSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUFFLFNBQVMsQ0FBQyxDQUFDO2dCQUNoRCxPQUFPLElBQUksQ0FBQztZQUNoQixDQUFDO1NBQ0osQ0FBQyxDQUFDO1FBRUgsT0FBTyxZQUFZLENBQUM7SUFDeEIsQ0FBQztJQUVPLGdCQUFnQjtRQUNwQixNQUFNLGdCQUFnQixHQUFHO1lBQ3JCLEVBQUUsRUFBRSxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7WUFDdEIsR0FBRyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztZQUN4QixJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO1lBQzFCLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7U0FDN0IsQ0FBQztRQUVGLE9BQU87WUFDSCxnQkFBZ0I7WUFDaEIsWUFBWSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUM7U0FDdkIsQ0FBQztJQUNOLENBQUM7SUFFTyw4QkFBOEIsQ0FBVSxRQUFrQyxFQUFFLFFBQXVCLEVBQUUsVUFBZTtRQUV4SCxNQUFNLE1BQU0sR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBQ25DLE1BQU0sRUFBQyxZQUFZLEVBQUUsZ0JBQWdCLEVBQUMsR0FBRyxRQUFRLENBQUM7UUFFbEQsTUFBTSxPQUFPLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FDekIsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7WUFDUixJQUFJLHlCQUF5QixDQUFDLEdBQUcsQ0FBQyxFQUFFO2dCQUNoQyxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDLE1BQU0sR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUM7Z0JBQzNELFlBQVksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLEVBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxNQUFNLEVBQUUsS0FBSyxFQUFFLEdBQUcsQ0FBQyxLQUFLLEVBQUUsT0FBTyxFQUFDLENBQUMsQ0FBQzthQUNsRjtZQUVELElBQUksbUJBQW1CLENBQUMsR0FBRyxDQUFDLEVBQUU7Z0JBQzFCLFlBQVksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDdkMsT0FBTyxhQUFhLENBQUMsV0FBVyxDQUFDLEdBQUcsRUFBRSxVQUFVLENBQUMsQ0FBQzthQUNyRDtRQUNMLENBQUMsQ0FBQyxFQUNGLFVBQVUsQ0FBQyxDQUFDLEdBQXNCLEVBQXdDLEVBQUU7WUFFeEUsNEdBQTRHO1lBQzVHLCtDQUErQztZQUUvQyxJQUFJLEdBQUcsQ0FBQyxNQUFNLEtBQUssR0FBRyxFQUFFO2dCQUNwQixZQUFZLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxHQUFHLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUM3QyxPQUFPLEVBQUUsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO2FBQzdCO1lBRUQsWUFBWSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsR0FBRyxDQUFDLENBQUM7WUFDaEMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxFQUFFLEdBQUcsR0FBRyxFQUFFLFFBQVEsRUFBRSxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFFbkUsSUFBSSxHQUFHLENBQUMsTUFBTSxLQUFLLEdBQUcsRUFBRTtnQkFDcEIsWUFBWSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztnQkFDbEMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO2FBQ3pDO1lBRUQsK0lBQStJO1lBQy9JLDhGQUE4RjtZQUM5RixnSUFBZ0k7WUFDaEksTUFBTSxHQUFHLEdBQUcsT0FBTyxHQUFHLENBQUMsS0FBSyxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7WUFFbEYsc0dBQXNHO1lBRXRHLE1BQU0sS0FBSyxHQUFHO2dCQUNWLEdBQUcsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLENBQUMsS0FBSzthQUMxQixDQUFDO1lBRUYsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLHdCQUF3QixDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUMsTUFBTSxFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQzlFLE9BQU8sVUFBVSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDeEMsQ0FBQyxDQUFDLEVBQ0YsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUNwQixDQUFDLFNBQVMsRUFBRSxDQUFDO1FBRWIsT0FBZSxDQUFDLEtBQUssR0FBRztZQUNyQixZQUFZLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQzNCLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNkLE1BQU0sQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNsQixPQUFPLElBQUksQ0FBQztRQUNoQixDQUFDLENBQUM7UUFFRixPQUFPLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLEVBQUUsWUFBWSxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUVPLE1BQU0sQ0FBQyxPQUFPLENBQUMsT0FBdUI7UUFDMUMsTUFBTSxXQUFXLEdBQUcsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDLGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUN0SCxNQUFNLFVBQVUsR0FBRyxXQUFXLEtBQUsscUJBQXFCLENBQUM7UUFDekQsTUFBTSxnQkFBZ0IsR0FBRyxXQUFXLEtBQUssbUNBQW1DLENBQUM7UUFDN0UsTUFBTSxJQUFJLEdBQUcsT0FBTyxDQUFDLFNBQVMsQ0FBQztRQUUvQixJQUFJLFVBQVUsRUFBRTtZQUNaLE9BQU8sdUJBQXVCLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1NBQ3REO1FBRUQsSUFBSSxnQkFBZ0IsRUFBRTtZQUNsQixPQUFPLElBQUksVUFBVSxDQUFDLEVBQUMsVUFBVSxFQUFFLGVBQWUsQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLEVBQUMsQ0FBQyxDQUFDO1NBQzVFO1FBRUQsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQztJQUVPLFVBQVUsQ0FBQyxPQUF1QjtRQUN0QyxNQUFNLFdBQVcsR0FBRyxPQUFPLENBQUMsV0FBVyxJQUFJLGFBQWEsQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDakcsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLE1BQU0sSUFBSSxhQUFhLENBQUMsaUJBQWlCLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRWxGLE1BQU0sY0FBYyxHQUFHO1lBQ25CLEdBQUcsT0FBTyxDQUFDLFlBQVk7WUFDdkIsR0FBRyxDQUFDLE1BQU0sSUFBSSxFQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUMsQ0FBQztZQUMvQixHQUFHLENBQUMsQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFDLGNBQWMsRUFBRSxXQUFXLEVBQUMsQ0FBQztTQUN0RCxDQUFDO1FBRUYsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUU7WUFDbkIsSUFBSSxDQUFDLFlBQVksQ0FBQyxjQUFjLENBQUMsQ0FBQztTQUNyQztRQUVELE9BQU8sSUFBSSxXQUFXLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ssTUFBTSxDQUFDLGlCQUFpQixDQUFDLFlBQStCO1FBQzVELElBQUksQ0FBQyxZQUFZLEVBQUUsTUFBTSxFQUFFO1lBQ3ZCLE9BQU8sa0JBQWtCLENBQUM7U0FDN0I7UUFFRCxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsWUFBWSxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUMxQyxJQUFJLGFBQWEsQ0FBQyxVQUFVLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUU7Z0JBQzNDLE9BQU8sWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQzFCO1NBQ0o7UUFDRCxPQUFPLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBRUQ7Ozs7Ozs7Ozs7O09BV0c7SUFDSyxNQUFNLENBQUMsVUFBVSxDQUFDLFdBQW1CO1FBQ3pDLE9BQU8sT0FBTyxDQUFDLFdBQVcsRUFBRSxLQUFLLENBQUMsNEJBQTRCLENBQUMsQ0FBQyxDQUFDO0lBQ3JFLENBQUM7SUFHTyxZQUFZLENBQUMsY0FBbUI7UUFDcEMsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3JDLGNBQWMsQ0FBQyxjQUFjLENBQUMsR0FBRyxLQUFLLENBQUM7UUFFdkMsSUFBSTtZQUNBLFFBQVEsQ0FBQyxNQUFNLEdBQUcsYUFBYSxHQUFHLEtBQUssR0FBRyxTQUFTLENBQUM7U0FDdkQ7UUFBQyxPQUFPLEdBQUcsRUFBRTtZQUNWLGtDQUFrQztTQUNyQztJQUNMLENBQUM7SUFFTyxlQUFlLENBQUMsQ0FBTztRQUMzQixNQUFNLFdBQVcsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLGVBQWUsQ0FBQyxJQUFJLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3pFLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsV0FBVyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7SUFDeEksQ0FBQztJQUVPLE1BQU0sQ0FBQyxlQUFlLENBQUMsT0FBdUI7UUFFbEQsTUFBTSxVQUFVLEdBQUcsT0FBTyxDQUFDLFVBQVUsRUFBRSxRQUFRLEVBQUUsQ0FBQyxXQUFXLEVBQUUsS0FBSyxNQUFNLElBQUksT0FBTyxDQUFDLFlBQVksRUFBRSxRQUFRLEVBQUUsQ0FBQyxXQUFXLEVBQUUsS0FBSyxNQUFNLENBQUM7UUFFeEksSUFBSSxVQUFVLEVBQUU7WUFDWixPQUFPLE1BQU0sQ0FBQztTQUNqQjtRQUVELElBQUksT0FBTyxDQUFDLFVBQVUsS0FBSyxRQUFRLEVBQUU7WUFDakMsT0FBTyxNQUFNLENBQUM7U0FDakI7UUFFRCxPQUFPLE1BQU0sQ0FBQztJQUNsQixDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ssTUFBTSxDQUFDLFdBQVcsQ0FBSSxRQUF5QixFQUFFLFVBQTBDO1FBRS9GLElBQUksUUFBUSxLQUFLLElBQUksRUFBRTtZQUNuQixPQUFPLElBQUksQ0FBQztTQUNmO1FBRUQsTUFBTSxJQUFJLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQztRQUUzQixJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ2IsOEVBQThFO1lBQzlFLGlGQUFpRjtZQUNqRixxREFBcUQ7WUFDckQsc0ZBQXNGO1lBRXRGLE9BQU8sSUFBSSxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7U0FDcEM7UUFFRCxJQUFJLGNBQWMsQ0FBQyxRQUFRLEVBQUUsVUFBVSxDQUFDLEVBQUU7WUFDdEMsT0FBTyxhQUFhLENBQUMsdUJBQXVCLENBQUMsUUFBUSxDQUFDLENBQUM7U0FDMUQ7UUFFRCxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxFQUFFO1lBQzVCLE9BQU8sSUFBSSxDQUFDO1NBQ2Y7UUFFRCxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDckIsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxJQUFJLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO1NBQ3pEO1FBRUQsT0FBTyxJQUFJLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBR08sTUFBTSxDQUFDLHVCQUF1QixDQUFDLFFBQTRCO1FBQy9ELE9BQU8sSUFBSSxJQUFJLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBQyxJQUFJLEVBQUUsUUFBUSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsY0FBYyxDQUFDLEVBQUMsQ0FBQyxDQUFDO0lBQ25GLENBQUM7OEdBclZRLGFBQWE7a0hBQWIsYUFBYSxjQUZWLE1BQU07OzJGQUVULGFBQWE7a0JBSHpCLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCIiwic291cmNlc0NvbnRlbnQiOlsiLyohXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IMKpIDIwMDUtMjAyNCBIeWxhbmQgU29mdHdhcmUsIEluYy4gYW5kIGl0cyBhZmZpbGlhdGVzLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQgeyBTSE9VTERfQUREX0FVVEhfVE9LRU4gfSBmcm9tICdAYWxmcmVzY28vYWRmLWNvcmUvYXV0aCc7XG5pbXBvcnQgeyBFbWl0dGVycyBhcyBKc0FwaUVtaXR0ZXJzLCBIdHRwQ2xpZW50IGFzIEpzQXBpSHR0cENsaWVudCB9IGZyb20gJ0BhbGZyZXNjby9qcy1hcGknO1xuaW1wb3J0IHtcbiAgICBIdHRwQ2xpZW50LFxuICAgIEh0dHBDb250ZXh0LFxuICAgIEh0dHBFcnJvclJlc3BvbnNlLFxuICAgIEh0dHBFdmVudCxcbiAgICBIdHRwSGVhZGVycyxcbiAgICBIdHRwUGFyYW1zLFxuICAgIEh0dHBSZXNwb25zZVxufSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiwgU3ViamVjdCwgdGhyb3dFcnJvciB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciwgbWFwLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge1xuICAgIGNvbnZlcnRPYmplY3RUb0Zvcm1EYXRhLFxuICAgIGdldFF1ZXJ5UGFyYW1zV2l0aEN1c3RvbUVuY29kZXIsXG4gICAgaXNCbG9iUmVzcG9uc2UsXG4gICAgaXNDb25zdHJ1Y3RvcixcbiAgICBpc0h0dHBSZXNwb25zZUV2ZW50LFxuICAgIGlzSHR0cFVwbG9hZFByb2dyZXNzRXZlbnQsXG4gICAgcmVtb3ZlTmlsVmFsdWVzXG59IGZyb20gJy4vYWxmcmVzY28tYXBpL2FsZnJlc2NvLWFwaS51dGlscyc7XG5pbXBvcnQgeyBBbGZyZXNjb0FwaVBhcmFtRW5jb2RlciB9IGZyb20gJy4vYWxmcmVzY28tYXBpL2FsZnJlc2NvLWFwaS5wYXJhbS1lbmNvZGVyJztcbmltcG9ydCB7IEFsZnJlc2NvQXBpUmVzcG9uc2VFcnJvciB9IGZyb20gJy4vYWxmcmVzY28tYXBpL2FsZnJlc2NvLWFwaS5yZXNwb25zZS1lcnJvcic7XG5pbXBvcnQgeyBDb25zdHJ1Y3RvciB9IGZyb20gJy4vdHlwZXMnO1xuaW1wb3J0IHsgUmVxdWVzdE9wdGlvbnMsIFNlY3VyaXR5T3B0aW9ucyB9IGZyb20gJy4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgZWUsIHsgRW1pdHRlciB9IGZyb20gJ2V2ZW50LWVtaXR0ZXInO1xuXG5leHBvcnQgaW50ZXJmYWNlIEVtaXR0ZXJzIHtcbiAgICByZWFkb25seSBldmVudEVtaXR0ZXI6IEVtaXR0ZXI7XG4gICAgcmVhZG9ubHkgYXBpQ2xpZW50RW1pdHRlcjogRW1pdHRlcjtcbn1cblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBBZGZIdHRwQ2xpZW50IGltcGxlbWVudHMgZWUuRW1pdHRlcixKc0FwaUh0dHBDbGllbnQge1xuXG4gICAgb246IGVlLkVtaXR0ZXJNZXRob2Q7XG4gICAgb2ZmOiBlZS5FbWl0dGVyTWV0aG9kO1xuICAgIG9uY2U6IGVlLkVtaXR0ZXJNZXRob2Q7XG4gICAgX2Rpc2FibGVDc3JmOiBib29sZWFuO1xuXG4gICAgZW1pdDogKHR5cGU6IHN0cmluZywgLi4uYXJnczogYW55W10pID0+IHZvaWQ7XG5cbiAgICBnZXQgZGlzYWJsZUNzcmYoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9kaXNhYmxlQ3NyZjtcbiAgICB9XG5cbiAgICBzZXQgZGlzYWJsZUNzcmYoZGlzYWJsZUNzcmY6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5fZGlzYWJsZUNzcmYgPSBkaXNhYmxlQ3NyZjtcbiAgICB9XG5cbiAgICBwcml2YXRlIGRlZmF1bHRTZWN1cml0eU9wdGlvbnMgPSB7XG4gICAgICAgIHdpdGhDcmVkZW50aWFsczogdHJ1ZSxcbiAgICAgICAgaXNCcG1SZXF1ZXN0OiBmYWxzZSxcbiAgICAgICAgYXV0aGVudGljYXRpb25zOiB7fSxcbiAgICAgICAgZGVmYXVsdEhlYWRlcnM6IHt9XG4gICAgfTtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgaHR0cENsaWVudDogSHR0cENsaWVudCkge1xuICAgICAgICBlZSh0aGlzKTtcbiAgICB9XG5cbiAgICBzZXREZWZhdWx0U2VjdXJpdHlPcHRpb24ob3B0aW9uczogYW55KSB7XG4gICAgICAgIHRoaXMuZGVmYXVsdFNlY3VyaXR5T3B0aW9ucyA9IHRoaXMubWVyZ2UodGhpcy5kZWZhdWx0U2VjdXJpdHlPcHRpb25zLCBvcHRpb25zKTtcbiAgICB9XG5cbiAgICBtZXJnZSguLi5vYmplY3RzKTogYW55IHtcbiAgICAgICAgY29uc3QgcmVzdWx0ID0ge307XG5cbiAgICAgICAgb2JqZWN0cy5mb3JFYWNoKChzb3VyY2UpID0+IHtcbiAgICAgICAgICAgIE9iamVjdC5rZXlzKHNvdXJjZSkuZm9yRWFjaCgocHJvcCkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChwcm9wIGluIHJlc3VsdCAmJiBBcnJheS5pc0FycmF5KHJlc3VsdFtwcm9wXSkpIHtcbiAgICAgICAgICAgICAgICAgICAgcmVzdWx0W3Byb3BdID0gcmVzdWx0W3Byb3BdLmNvbmNhdChzb3VyY2VbcHJvcF0pO1xuICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAocHJvcCBpbiByZXN1bHQgJiYgdHlwZW9mIHJlc3VsdFtwcm9wXSA9PT0gJ29iamVjdCcpIHtcbiAgICAgICAgICAgICAgICAgICAgcmVzdWx0W3Byb3BdID0gdGhpcy5tZXJnZShyZXN1bHRbcHJvcF0sIHNvdXJjZVtwcm9wXSk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgcmVzdWx0W3Byb3BdID0gc291cmNlW3Byb3BdO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcblxuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH1cblxuICAgIHJlcXVlc3Q8VCA9IGFueT4odXJsOiBzdHJpbmcsIG9wdGlvbnM/OiBSZXF1ZXN0T3B0aW9ucywgc2M6IFNlY3VyaXR5T3B0aW9ucyA9IHRoaXMuZGVmYXVsdFNlY3VyaXR5T3B0aW9ucywgZW1pdHRlcnM/OiBKc0FwaUVtaXR0ZXJzKTogUHJvbWlzZTxUPiB7XG4gICAgICAgIGNvbnN0IGJvZHkgPSBBZGZIdHRwQ2xpZW50LmdldEJvZHkob3B0aW9ucyk7XG4gICAgICAgIGNvbnN0IHBhcmFtcyA9IGdldFF1ZXJ5UGFyYW1zV2l0aEN1c3RvbUVuY29kZXIob3B0aW9ucy5xdWVyeVBhcmFtcywgbmV3IEFsZnJlc2NvQXBpUGFyYW1FbmNvZGVyKCkpO1xuICAgICAgICBjb25zdCByZXNwb25zZVR5cGUgPSBBZGZIdHRwQ2xpZW50LmdldFJlc3BvbnNlVHlwZShvcHRpb25zKTtcbiAgICAgICAgY29uc3QgY29udGV4dCA9IG5ldyBIdHRwQ29udGV4dCgpLnNldChTSE9VTERfQUREX0FVVEhfVE9LRU4sIHRydWUpO1xuICAgICAgICBjb25zdCBzZWN1cml0eTogU2VjdXJpdHlPcHRpb25zID0gey4uLnRoaXMuZGVmYXVsdFNlY3VyaXR5T3B0aW9ucywgLi4uc2N9O1xuICAgICAgICBjb25zdCBoZWFkZXJzID0gdGhpcy5nZXRIZWFkZXJzKG9wdGlvbnMpO1xuICAgICAgICBpZiAoIWVtaXR0ZXJzKSB7XG4gICAgICAgICAgICBlbWl0dGVycyA9IHRoaXMuZ2V0RXZlbnRFbWl0dGVycygpO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgcmVxdWVzdCA9IHRoaXMuaHR0cENsaWVudC5yZXF1ZXN0KFxuICAgICAgICAgICAgb3B0aW9ucy5odHRwTWV0aG9kLFxuICAgICAgICAgICAgdXJsLFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGNvbnRleHQsXG4gICAgICAgICAgICAgICAgLi4uKGJvZHkgJiYge2JvZHl9KSxcbiAgICAgICAgICAgICAgICAuLi4ocmVzcG9uc2VUeXBlICYmIHtyZXNwb25zZVR5cGV9KSxcbiAgICAgICAgICAgICAgICAuLi5zZWN1cml0eSxcbiAgICAgICAgICAgICAgICAuLi4ocGFyYW1zICYmIHtwYXJhbXN9KSxcbiAgICAgICAgICAgICAgICBoZWFkZXJzLFxuICAgICAgICAgICAgICAgIG9ic2VydmU6ICdldmVudHMnLFxuICAgICAgICAgICAgICAgIHJlcG9ydFByb2dyZXNzOiB0cnVlXG4gICAgICAgICAgICB9XG4gICAgICAgICk7XG5cbiAgICAgICAgcmV0dXJuIHRoaXMucmVxdWVzdFdpdGhMZWdhY3lFdmVudEVtaXR0ZXJzPFQ+KHJlcXVlc3QsIGVtaXR0ZXJzLCBvcHRpb25zLnJldHVyblR5cGUpO1xuICAgIH1cblxuICAgIHBvc3Q8VCA9IGFueT4odXJsOiBzdHJpbmcsIG9wdGlvbnM/OiBSZXF1ZXN0T3B0aW9ucywgc2M/OiBTZWN1cml0eU9wdGlvbnMsIGVtaXR0ZXJzPzogSnNBcGlFbWl0dGVycyk6IFByb21pc2U8VD4ge1xuICAgICAgICByZXR1cm4gdGhpcy5yZXF1ZXN0PFQ+KHVybCwgey4uLm9wdGlvbnMsIGh0dHBNZXRob2Q6ICdQT1NUJ30sIHNjLCBlbWl0dGVycyk7XG4gICAgfVxuXG4gICAgcHV0PFQgPSBhbnk+KHVybDogc3RyaW5nLCBvcHRpb25zPzogUmVxdWVzdE9wdGlvbnMsIHNjPzogU2VjdXJpdHlPcHRpb25zLCBlbWl0dGVycz86IEpzQXBpRW1pdHRlcnMpOiBQcm9taXNlPFQ+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMucmVxdWVzdDxUPih1cmwsIHsuLi5vcHRpb25zLCBodHRwTWV0aG9kOiAnUFVUJ30sIHNjLCBlbWl0dGVycyk7XG4gICAgfVxuXG4gICAgZ2V0PFQgPSBhbnk+KHVybDogc3RyaW5nLCBvcHRpb25zPzogUmVxdWVzdE9wdGlvbnMsIHNjPzogU2VjdXJpdHlPcHRpb25zLCBlbWl0dGVycz86IEpzQXBpRW1pdHRlcnMpOiBQcm9taXNlPFQ+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMucmVxdWVzdDxUPih1cmwsIHsuLi5vcHRpb25zLCBodHRwTWV0aG9kOiAnR0VUJ30sIHNjLCBlbWl0dGVycyk7XG4gICAgfVxuXG4gICAgZGVsZXRlPFQgPSB2b2lkPih1cmw6IHN0cmluZywgb3B0aW9ucz86IFJlcXVlc3RPcHRpb25zLCBzYz86IFNlY3VyaXR5T3B0aW9ucywgZW1pdHRlcnM/OiBKc0FwaUVtaXR0ZXJzKTogUHJvbWlzZTxUPiB7XG4gICAgICAgIHJldHVybiB0aGlzLnJlcXVlc3Q8VD4odXJsLCB7Li4ub3B0aW9ucywgaHR0cE1ldGhvZDogJ0RFTEVURSd9LCBzYywgZW1pdHRlcnMpO1xuICAgIH1cblxuICAgIHByaXZhdGUgYWRkUHJvbWlzZUxpc3RlbmVyczxUID0gYW55Pihwcm9taXNlOiBQcm9taXNlPFQ+LCBldmVudEVtaXR0ZXI6IGFueSkgIHtcbiAgICAgICAgY29uc3QgZXZlbnRQcm9taXNlID0gT2JqZWN0LmFzc2lnbihwcm9taXNlLCB7XG4gICAgICAgICAgICBvbigpIHtcbiAgICAgICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJlZmVyLXNwcmVhZCwgcHJlZmVyLXJlc3QtcGFyYW1zXG4gICAgICAgICAgICAgICAgZXZlbnRFbWl0dGVyLm9uLmFwcGx5KGV2ZW50RW1pdHRlciwgYXJndW1lbnRzKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcztcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBvbmNlKCkge1xuICAgICAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBwcmVmZXItc3ByZWFkLCBwcmVmZXItcmVzdC1wYXJhbXNcbiAgICAgICAgICAgICAgICBldmVudEVtaXR0ZXIub25jZS5hcHBseShldmVudEVtaXR0ZXIsIGFyZ3VtZW50cyk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgZW1pdCgpIHtcbiAgICAgICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJlZmVyLXNwcmVhZCwgcHJlZmVyLXJlc3QtcGFyYW1zXG4gICAgICAgICAgICAgICAgZXZlbnRFbWl0dGVyLmVtaXQuYXBwbHkoZXZlbnRFbWl0dGVyLCBhcmd1bWVudHMpO1xuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIG9mZigpIHtcbiAgICAgICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJlZmVyLXNwcmVhZCwgcHJlZmVyLXJlc3QtcGFyYW1zXG4gICAgICAgICAgICAgICAgZXZlbnRFbWl0dGVyLm9mZi5hcHBseShldmVudEVtaXR0ZXIsIGFyZ3VtZW50cyk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHJldHVybiBldmVudFByb21pc2U7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRFdmVudEVtaXR0ZXJzKCk6IEVtaXR0ZXJzIHtcbiAgICAgICAgY29uc3QgYXBpQ2xpZW50RW1pdHRlciA9IHtcbiAgICAgICAgICAgIG9uOiB0aGlzLm9uLmJpbmQodGhpcyksXG4gICAgICAgICAgICBvZmY6IHRoaXMub2ZmLmJpbmQodGhpcyksXG4gICAgICAgICAgICBvbmNlOiB0aGlzLm9uY2UuYmluZCh0aGlzKSxcbiAgICAgICAgICAgIGVtaXQ6IHRoaXMuZW1pdC5iaW5kKHRoaXMpXG4gICAgICAgIH07XG5cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGFwaUNsaWVudEVtaXR0ZXIsXG4gICAgICAgICAgICBldmVudEVtaXR0ZXI6IGVlKHt9KVxuICAgICAgICB9O1xuICAgIH1cblxuICAgIHByaXZhdGUgcmVxdWVzdFdpdGhMZWdhY3lFdmVudEVtaXR0ZXJzPFQgPSBhbnk+KHJlcXVlc3QkOiBPYnNlcnZhYmxlPEh0dHBFdmVudDxUPj4sIGVtaXR0ZXJzOiBKc0FwaUVtaXR0ZXJzLCByZXR1cm5UeXBlOiBhbnkpOiBQcm9taXNlPFQ+IHtcblxuICAgICAgICBjb25zdCBhYm9ydCQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICAgICAgICBjb25zdCB7ZXZlbnRFbWl0dGVyLCBhcGlDbGllbnRFbWl0dGVyfSA9IGVtaXR0ZXJzO1xuXG4gICAgICAgIGNvbnN0IHByb21pc2UgPSByZXF1ZXN0JC5waXBlKFxuICAgICAgICAgICAgbWFwKChyZXMpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoaXNIdHRwVXBsb2FkUHJvZ3Jlc3NFdmVudChyZXMpKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHBlcmNlbnQgPSBNYXRoLnJvdW5kKChyZXMubG9hZGVkIC8gcmVzLnRvdGFsKSAqIDEwMCk7XG4gICAgICAgICAgICAgICAgICAgIGV2ZW50RW1pdHRlci5lbWl0KCdwcm9ncmVzcycsIHtsb2FkZWQ6IHJlcy5sb2FkZWQsIHRvdGFsOiByZXMudG90YWwsIHBlcmNlbnR9KTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpZiAoaXNIdHRwUmVzcG9uc2VFdmVudChyZXMpKSB7XG4gICAgICAgICAgICAgICAgICAgIGV2ZW50RW1pdHRlci5lbWl0KCdzdWNjZXNzJywgcmVzLmJvZHkpO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gQWRmSHR0cENsaWVudC5kZXNlcmlhbGl6ZShyZXMsIHJldHVyblR5cGUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgY2F0Y2hFcnJvcigoZXJyOiBIdHRwRXJyb3JSZXNwb25zZSk6IE9ic2VydmFibGU8QWxmcmVzY29BcGlSZXNwb25zZUVycm9yPiA9PiB7XG5cbiAgICAgICAgICAgICAgICAvLyBzaW5jZSB3ZSBjYW4ndCBhbHdheXMgZGV0ZXJtaW5hdGUgYWhlYWQgb2YgdGltZSBpZiB0aGUgcmVzcG9uc2UgaXMgZ29pbmcgdG8gYmUgeG1sIG9yIHBsYWluIHRleHQgcmVzcG9uc2VcbiAgICAgICAgICAgICAgICAvLyB3ZSBuZWVkIHRvIGhhbmRsZSBmYWxzZSBwb3NpdGl2ZSBjYXNlcyBoZXJlLlxuXG4gICAgICAgICAgICAgICAgaWYgKGVyci5zdGF0dXMgPT09IDIwMCkge1xuICAgICAgICAgICAgICAgICAgICBldmVudEVtaXR0ZXIuZW1pdCgnc3VjY2VzcycsIGVyci5lcnJvci50ZXh0KTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG9mKGVyci5lcnJvci50ZXh0KTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBldmVudEVtaXR0ZXIuZW1pdCgnZXJyb3InLCBlcnIpO1xuICAgICAgICAgICAgICAgIGFwaUNsaWVudEVtaXR0ZXIuZW1pdCgnZXJyb3InLCB7IC4uLmVyciwgcmVzcG9uc2U6IHsgcmVxOiBlcnIgfSB9KTtcblxuICAgICAgICAgICAgICAgIGlmIChlcnIuc3RhdHVzID09PSA0MDEpIHtcbiAgICAgICAgICAgICAgICAgICAgZXZlbnRFbWl0dGVyLmVtaXQoJ3VuYXV0aG9yaXplZCcpO1xuICAgICAgICAgICAgICAgICAgICBhcGlDbGllbnRFbWl0dGVyLmVtaXQoJ3VuYXV0aG9yaXplZCcpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC8vIGZvciBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eSB3ZSBuZWVkIHRvIGNvbnZlcnQgaXQgdG8gZXJyb3IgY2xhc3MgYXMgdGhlIEh0dHBFcnJvclJlc3BvbnNlIG9ubHkgaW1wbGVtZW50cyBFcnJvciBpbnRlcmZhY2UsIG5vdCBleHRlbmRpbmcgaXQsXG4gICAgICAgICAgICAgICAgLy8gYW5kIHdlIG5lZWQgdG8gYmUgYWJsZSB0byBjb3JyZWN0bHkgcGFzcyBpbnN0YW5jZW9mIEVycm9yIGNvbmRpdGlvbnMgdXNlZCBpbnNpZGUgcmVwb3NpdG9yeVxuICAgICAgICAgICAgICAgIC8vIHdlIGFsc28gbmVlZCB0byBwYXNzIGVycm9yIGFzIFN0cmluZ2lmeSBzdHJpbmcgYXMgd2UgYXJlIGRldGVjdGluZyBzdGF0dXNDb2RlcyB1c2luZyBKU09OLnBhcnNlKGVycm9yLm1lc3NhZ2UpIGluIHNvbWUgcGxhY2VzXG4gICAgICAgICAgICAgICAgY29uc3QgbXNnID0gdHlwZW9mIGVyci5lcnJvciA9PT0gJ3N0cmluZycgPyBlcnIuZXJyb3IgOiBKU09OLnN0cmluZ2lmeShlcnIuZXJyb3IpO1xuXG4gICAgICAgICAgICAgICAgLy8gZm9yIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5IHRvIGhhbmRsZSBjYXNlcyBpbiBjb2RlIHdoZXJlIHdlIHRyeSByZWFkIHJlc3BvbnNlLmVycm9yLnJlc3BvbnNlLmJvZHk7XG5cbiAgICAgICAgICAgICAgICBjb25zdCBlcnJvciA9IHtcbiAgICAgICAgICAgICAgICAgICAgLi4uZXJyLCBib2R5OiBlcnIuZXJyb3JcbiAgICAgICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICAgICAgY29uc3QgYWxmcmVzY29BcGlFcnJvciA9IG5ldyBBbGZyZXNjb0FwaVJlc3BvbnNlRXJyb3IobXNnLCBlcnIuc3RhdHVzLCBlcnJvcik7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRocm93RXJyb3IoYWxmcmVzY29BcGlFcnJvcik7XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIHRha2VVbnRpbChhYm9ydCQpXG4gICAgICAgICkudG9Qcm9taXNlKCk7XG5cbiAgICAgICAgKHByb21pc2UgYXMgYW55KS5hYm9ydCA9IGZ1bmN0aW9uKCkge1xuICAgICAgICAgICAgZXZlbnRFbWl0dGVyLmVtaXQoJ2Fib3J0Jyk7XG4gICAgICAgICAgICBhYm9ydCQubmV4dCgpO1xuICAgICAgICAgICAgYWJvcnQkLmNvbXBsZXRlKCk7XG4gICAgICAgICAgICByZXR1cm4gdGhpcztcbiAgICAgICAgfTtcblxuICAgICAgICByZXR1cm4gdGhpcy5hZGRQcm9taXNlTGlzdGVuZXJzKHByb21pc2UsIGV2ZW50RW1pdHRlcik7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzdGF0aWMgZ2V0Qm9keShvcHRpb25zOiBSZXF1ZXN0T3B0aW9ucyk6IGFueSB7XG4gICAgICAgIGNvbnN0IGNvbnRlbnRUeXBlID0gb3B0aW9ucy5jb250ZW50VHlwZSA/IG9wdGlvbnMuY29udGVudFR5cGUgOiBBZGZIdHRwQ2xpZW50Lmpzb25QcmVmZXJyZWRNaW1lKG9wdGlvbnMuY29udGVudFR5cGVzKTtcbiAgICAgICAgY29uc3QgaXNGb3JtRGF0YSA9IGNvbnRlbnRUeXBlID09PSAnbXVsdGlwYXJ0L2Zvcm0tZGF0YSc7XG4gICAgICAgIGNvbnN0IGlzRm9ybVVybEVuY29kZWQgPSBjb250ZW50VHlwZSA9PT0gJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCc7XG4gICAgICAgIGNvbnN0IGJvZHkgPSBvcHRpb25zLmJvZHlQYXJhbTtcblxuICAgICAgICBpZiAoaXNGb3JtRGF0YSkge1xuICAgICAgICAgICAgcmV0dXJuIGNvbnZlcnRPYmplY3RUb0Zvcm1EYXRhKG9wdGlvbnMuZm9ybVBhcmFtcyk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoaXNGb3JtVXJsRW5jb2RlZCkge1xuICAgICAgICAgICAgcmV0dXJuIG5ldyBIdHRwUGFyYW1zKHtmcm9tT2JqZWN0OiByZW1vdmVOaWxWYWx1ZXMob3B0aW9ucy5mb3JtUGFyYW1zKX0pO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGJvZHk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRIZWFkZXJzKG9wdGlvbnM6IFJlcXVlc3RPcHRpb25zKTogSHR0cEhlYWRlcnMge1xuICAgICAgICBjb25zdCBjb250ZW50VHlwZSA9IG9wdGlvbnMuY29udGVudFR5cGUgfHwgQWRmSHR0cENsaWVudC5qc29uUHJlZmVycmVkTWltZShvcHRpb25zLmNvbnRlbnRUeXBlcyk7XG4gICAgICAgIGNvbnN0IGFjY2VwdCA9IG9wdGlvbnMuYWNjZXB0IHx8IEFkZkh0dHBDbGllbnQuanNvblByZWZlcnJlZE1pbWUob3B0aW9ucy5hY2NlcHRzKTtcblxuICAgICAgICBjb25zdCBvcHRpb25zSGVhZGVycyA9IHtcbiAgICAgICAgICAgIC4uLm9wdGlvbnMuaGVhZGVyUGFyYW1zLFxuICAgICAgICAgICAgLi4uKGFjY2VwdCAmJiB7QWNjZXB0OiBhY2NlcHR9KSxcbiAgICAgICAgICAgIC4uLigoY29udGVudFR5cGUpICYmIHsnQ29udGVudC1UeXBlJzogY29udGVudFR5cGV9KVxuICAgICAgICB9O1xuXG4gICAgICAgIGlmICghdGhpcy5kaXNhYmxlQ3NyZikge1xuICAgICAgICAgICAgdGhpcy5zZXRDc3JmVG9rZW4ob3B0aW9uc0hlYWRlcnMpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIG5ldyBIdHRwSGVhZGVycyhvcHRpb25zSGVhZGVycyk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2hvb3NlcyBhIGNvbnRlbnQgdHlwZSBmcm9tIHRoZSBnaXZlbiBhcnJheSwgd2l0aCBKU09OIHByZWZlcnJlZDsgaS5lLiByZXR1cm4gSlNPTiBpZiBpbmNsdWRlZCwgb3RoZXJ3aXNlIHJldHVybiB0aGUgZmlyc3QuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gY29udGVudFR5cGVzIGEgY29udGVudFR5cGUgYXJyYXlcbiAgICAgKiBAcmV0dXJucyAgVGhlIGNob3NlbiBjb250ZW50IHR5cGUsIHByZWZlcnJpbmcgSlNPTi5cbiAgICAgKi9cbiAgICBwcml2YXRlIHN0YXRpYyBqc29uUHJlZmVycmVkTWltZShjb250ZW50VHlwZXM6IHJlYWRvbmx5IHN0cmluZ1tdKTogc3RyaW5nIHtcbiAgICAgICAgaWYgKCFjb250ZW50VHlwZXM/Lmxlbmd0aCkge1xuICAgICAgICAgICAgcmV0dXJuICdhcHBsaWNhdGlvbi9qc29uJztcbiAgICAgICAgfVxuXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgY29udGVudFR5cGVzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBpZiAoQWRmSHR0cENsaWVudC5pc0pzb25NaW1lKGNvbnRlbnRUeXBlc1tpXSkpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gY29udGVudFR5cGVzW2ldO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBjb250ZW50VHlwZXNbMF07XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2hlY2tzIHdoZXRoZXIgdGhlIGdpdmVuIGNvbnRlbnQgdHlwZSByZXByZXNlbnRzIEpTT04uPGJyPlxuICAgICAqIEpTT04gY29udGVudCB0eXBlIGV4YW1wbGVzOjxicj5cbiAgICAgKiA8dWw+XG4gICAgICogPGxpPmFwcGxpY2F0aW9uL2pzb248L2xpPlxuICAgICAqIDxsaT5hcHBsaWNhdGlvbi9qc29uOyBjaGFyc2V0PVVURjg8L2xpPlxuICAgICAqIDxsaT5BUFBMSUNBVElPTi9KU09OPC9saT5cbiAgICAgKiA8L3VsPlxuICAgICAqXG4gICAgICogQHBhcmFtIGNvbnRlbnRUeXBlIFRoZSBNSU1FIGNvbnRlbnQgdHlwZSB0byBjaGVjay5cbiAgICAgKiBAcmV0dXJucyA8Y29kZT50cnVlPC9jb2RlPiBpZiA8Y29kZT5jb250ZW50VHlwZTwvY29kZT4gcmVwcmVzZW50cyBKU09OLCBvdGhlcndpc2UgPGNvZGU+ZmFsc2U8L2NvZGU+LlxuICAgICAqL1xuICAgIHByaXZhdGUgc3RhdGljIGlzSnNvbk1pbWUoY29udGVudFR5cGU6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gQm9vbGVhbihjb250ZW50VHlwZT8ubWF0Y2goL15hcHBsaWNhdGlvblxcL2pzb24oOy4qKT8kL2kpKTtcbiAgICB9XG5cblxuICAgIHByaXZhdGUgc2V0Q3NyZlRva2VuKG9wdGlvbnNIZWFkZXJzOiBhbnkpIHtcbiAgICAgICAgY29uc3QgdG9rZW4gPSB0aGlzLmNyZWF0ZUNTUkZUb2tlbigpO1xuICAgICAgICBvcHRpb25zSGVhZGVyc1snWC1DU1JGLVRPS0VOJ10gPSB0b2tlbjtcblxuICAgICAgICB0cnkge1xuICAgICAgICAgICAgZG9jdW1lbnQuY29va2llID0gJ0NTUkYtVE9LRU49JyArIHRva2VuICsgJztwYXRoPS8nO1xuICAgICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgICAgICAgIC8qIGNvbnRpbnVlIHJlZ2FyZGxlc3Mgb2YgZXJyb3IgKi9cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgY3JlYXRlQ1NSRlRva2VuKGE/OiBhbnkpOiBzdHJpbmcge1xuICAgICAgICBjb25zdCByYW5kb21WYWx1ZSA9IHdpbmRvdy5jcnlwdG8uZ2V0UmFuZG9tVmFsdWVzKG5ldyBVaW50MzJBcnJheSgxKSlbMF07XG4gICAgICAgIHJldHVybiBhID8gKGEgXiAoKHJhbmRvbVZhbHVlICogMTYpID4+IChhIC8gNCkpKS50b1N0cmluZygxNikgOiAoWzFlMTZdICsgKDFlMTYpLnRvU3RyaW5nKCkpLnJlcGxhY2UoL1swMV0vZywgdGhpcy5jcmVhdGVDU1JGVG9rZW4pO1xuICAgIH1cblxuICAgIHByaXZhdGUgc3RhdGljIGdldFJlc3BvbnNlVHlwZShvcHRpb25zOiBSZXF1ZXN0T3B0aW9ucyk6ICdibG9iJyB8ICdqc29uJyB8ICd0ZXh0JyB7XG5cbiAgICAgICAgY29uc3QgaXNCbG9iVHlwZSA9IG9wdGlvbnMucmV0dXJuVHlwZT8udG9TdHJpbmcoKS50b0xvd2VyQ2FzZSgpID09PSAnYmxvYicgfHwgb3B0aW9ucy5yZXNwb25zZVR5cGU/LnRvU3RyaW5nKCkudG9Mb3dlckNhc2UoKSA9PT0gJ2Jsb2InO1xuXG4gICAgICAgIGlmIChpc0Jsb2JUeXBlKSB7XG4gICAgICAgICAgICByZXR1cm4gJ2Jsb2InO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKG9wdGlvbnMucmV0dXJuVHlwZSA9PT0gJ1N0cmluZycpIHtcbiAgICAgICAgICAgIHJldHVybiAndGV4dCc7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gJ2pzb24nO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIERlc2VyaWFsaXplIGFuIEhUVFAgcmVzcG9uc2UgYm9keSBpbnRvIGEgdmFsdWUgb2YgdGhlIHNwZWNpZmllZCB0eXBlLlxuICAgICAqXG4gICAgICogQHBhcmFtIHJlc3BvbnNlIHJlc3BvbnNlIG9iamVjdFxuICAgICAqIEBwYXJhbSByZXR1cm5UeXBlIHJldHVybiB0eXBlXG4gICAgICogQHJldHVybnMgZGVzZXJpYWxpemVkIG9iamVjdFxuICAgICAqL1xuICAgIHByaXZhdGUgc3RhdGljIGRlc2VyaWFsaXplPFQ+KHJlc3BvbnNlOiBIdHRwUmVzcG9uc2U8VD4sIHJldHVyblR5cGU/OiBDb25zdHJ1Y3Rvcjx1bmtub3duPiB8ICdibG9iJyk6IGFueSB7XG5cbiAgICAgICAgaWYgKHJlc3BvbnNlID09PSBudWxsKSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGJvZHkgPSByZXNwb25zZS5ib2R5O1xuXG4gICAgICAgIGlmICghcmV0dXJuVHlwZSkge1xuICAgICAgICAgICAgLy8gZm9yIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5IHdlIG5lZWQgdG8gcmV0dXJuIGVtcHR5IHN0cmluZyBpbnN0ZWFkIG9mIG51bGwsXG4gICAgICAgICAgICAvLyB0byBhdm9pZCBpc3N1ZXMgd2hlbiBhY2Nlc3NpbmcgbnVsbCByZXNwb25zZSB3b3VsZCBicmVhayBhcHBsaWNhdGlvbiBbQzMwOTg3OF1cbiAgICAgICAgICAgIC8vIGNhbm5vdCByZWFkIHByb3BlcnR5ICdlbnRyeScgb2YgbnVsbCBpbiBjYXNlcyBsaWtlXG4gICAgICAgICAgICAvLyByZXR1cm4gdGhpcy5wb3N0KGFwaVVybCwgc2F2ZUZvcm1SZXByZXNlbnRhdGlvbikucGlwZShtYXAoKHJlczogYW55KSA9PiByZXMuZW50cnkpKVxuXG4gICAgICAgICAgICByZXR1cm4gYm9keSAhPT0gbnVsbCA/IGJvZHkgOiAnJztcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChpc0Jsb2JSZXNwb25zZShyZXNwb25zZSwgcmV0dXJuVHlwZSkpIHtcbiAgICAgICAgICAgIHJldHVybiBBZGZIdHRwQ2xpZW50LmRlc2VyaWFsaXplQmxvYlJlc3BvbnNlKHJlc3BvbnNlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICghaXNDb25zdHJ1Y3RvcihyZXR1cm5UeXBlKSkge1xuICAgICAgICAgICAgcmV0dXJuIGJvZHk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShib2R5KSkge1xuICAgICAgICAgICAgcmV0dXJuIGJvZHkubWFwKChlbGVtZW50KSA9PiBuZXcgcmV0dXJuVHlwZShlbGVtZW50KSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gbmV3IHJldHVyblR5cGUoYm9keSk7XG4gICAgfVxuXG5cbiAgICBwcml2YXRlIHN0YXRpYyBkZXNlcmlhbGl6ZUJsb2JSZXNwb25zZShyZXNwb25zZTogSHR0cFJlc3BvbnNlPEJsb2I+KSB7XG4gICAgICAgIHJldHVybiBuZXcgQmxvYihbcmVzcG9uc2UuYm9keV0sIHt0eXBlOiByZXNwb25zZS5oZWFkZXJzLmdldCgnQ29udGVudC1UeXBlJyl9KTtcbiAgICB9XG59XG5cbiJdfQ==
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright © 2005-2024 Hyland Software, Inc. and its affiliates. All rights reserved.
|
|
4
|
+
*
|
|
5
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
+
* you may not use this file except in compliance with the License.
|
|
7
|
+
* You may obtain a copy of the License at
|
|
8
|
+
*
|
|
9
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
+
*
|
|
11
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
12
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
+
* See the License for the specific language governing permissions and
|
|
15
|
+
* limitations under the License.
|
|
16
|
+
*/
|
|
17
|
+
import { HttpContextToken } from '@angular/common/http';
|
|
18
|
+
import { Injectable } from '@angular/core';
|
|
19
|
+
import { throwError as observableThrowError } from 'rxjs';
|
|
20
|
+
import { catchError, mergeMap } from 'rxjs/operators';
|
|
21
|
+
import { Authentication } from '../authentication';
|
|
22
|
+
import * as i0 from "@angular/core";
|
|
23
|
+
import * as i1 from "../authentication";
|
|
24
|
+
export const SHOULD_ADD_AUTH_TOKEN = new HttpContextToken(() => false);
|
|
25
|
+
export class AuthenticationInterceptor {
|
|
26
|
+
constructor(authService) {
|
|
27
|
+
this.authService = authService;
|
|
28
|
+
}
|
|
29
|
+
intercept(req, next) {
|
|
30
|
+
if (req.context.get(SHOULD_ADD_AUTH_TOKEN)) {
|
|
31
|
+
return this.authService.addTokenToHeader(req.url, req.headers).pipe(mergeMap((headersWithBearer) => {
|
|
32
|
+
const headerWithContentType = this.appendJsonContentType(headersWithBearer);
|
|
33
|
+
const kcReq = req.clone({ headers: headerWithContentType });
|
|
34
|
+
return next.handle(kcReq)
|
|
35
|
+
.pipe(catchError((error) => observableThrowError(error)));
|
|
36
|
+
}));
|
|
37
|
+
}
|
|
38
|
+
return next.handle(req).pipe(catchError((error) => observableThrowError(error)));
|
|
39
|
+
}
|
|
40
|
+
appendJsonContentType(headers) {
|
|
41
|
+
// prevent adding any content type, to properly handle formData with boundary browser generated value,
|
|
42
|
+
// as adding any Content-Type its going to break the upload functionality
|
|
43
|
+
if (headers.get('Content-Type') === 'multipart/form-data') {
|
|
44
|
+
return headers.delete('Content-Type');
|
|
45
|
+
}
|
|
46
|
+
if (!headers.get('Content-Type')) {
|
|
47
|
+
return headers.set('Content-Type', 'application/json;charset=UTF-8');
|
|
48
|
+
}
|
|
49
|
+
return headers;
|
|
50
|
+
}
|
|
51
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: AuthenticationInterceptor, deps: [{ token: i1.Authentication }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
52
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: AuthenticationInterceptor }); }
|
|
53
|
+
}
|
|
54
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: AuthenticationInterceptor, decorators: [{
|
|
55
|
+
type: Injectable
|
|
56
|
+
}], ctorParameters: function () { return [{ type: i1.Authentication }]; } });
|
|
57
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aGVudGljYXRpb24uaW50ZXJjZXB0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWIvY29yZS9hdXRoL3NyYy9hdXRoZW50aWNhdGlvbi1pbnRlcmNlcHRvci9hdXRoZW50aWNhdGlvbi5pbnRlcmNlcHRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7O0dBZUc7QUFFSCxPQUFPLEVBQ0gsZ0JBQWdCLEVBVW5CLE1BQU0sc0JBQXNCLENBQUM7QUFDOUIsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQWMsVUFBVSxJQUFJLG9CQUFvQixFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDdEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDOzs7QUFFbkQsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQUcsSUFBSSxnQkFBZ0IsQ0FBVSxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQztBQUdoRixNQUFNLE9BQU8seUJBQXlCO0lBRWxDLFlBQXFCLFdBQTJCO1FBQTNCLGdCQUFXLEdBQVgsV0FBVyxDQUFnQjtJQUFJLENBQUM7SUFFckQsU0FBUyxDQUFDLEdBQXFCLEVBQUUsSUFBaUI7UUFHaEQsSUFBSSxHQUFHLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxxQkFBcUIsQ0FBQyxFQUFFO1lBQ3hDLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQy9ELFFBQVEsQ0FBQyxDQUFDLGlCQUFpQixFQUFFLEVBQUU7Z0JBQzNCLE1BQU0scUJBQXFCLEdBQUcsSUFBSSxDQUFDLHFCQUFxQixDQUFDLGlCQUFpQixDQUFDLENBQUM7Z0JBQzVFLE1BQU0sS0FBSyxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxPQUFPLEVBQUUscUJBQXFCLEVBQUMsQ0FBQyxDQUFDO2dCQUMzRCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDO3FCQUN4QixJQUFJLENBQ0QsVUFBVSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUNyRCxDQUFDO1lBQ04sQ0FBQyxDQUFDLENBQ0wsQ0FBQztTQUNMO1FBRUQsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLG9CQUFvQixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNuRixDQUFDO0lBRU8scUJBQXFCLENBQUMsT0FBb0I7UUFFaEQsc0dBQXNHO1FBQ3RHLHlFQUF5RTtRQUV6RSxJQUFJLE9BQU8sQ0FBQyxHQUFHLENBQUMsY0FBYyxDQUFDLEtBQUsscUJBQXFCLEVBQUU7WUFDdkQsT0FBTyxPQUFPLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1NBQ3pDO1FBRUQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsY0FBYyxDQUFDLEVBQUU7WUFDOUIsT0FBTyxPQUFPLENBQUMsR0FBRyxDQUFDLGNBQWMsRUFBRSxnQ0FBZ0MsQ0FBQyxDQUFDO1NBQ3hFO1FBRUQsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQzs4R0FyQ1EseUJBQXlCO2tIQUF6Qix5QkFBeUI7OzJGQUF6Qix5QkFBeUI7a0JBRHJDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgwqkgMjAwNS0yMDI0IEh5bGFuZCBTb2Z0d2FyZSwgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7XG4gICAgSHR0cENvbnRleHRUb2tlbixcbiAgICBIdHRwSGFuZGxlcixcbiAgICBIdHRwSGVhZGVyUmVzcG9uc2UsXG4gICAgSHR0cEhlYWRlcnMsXG4gICAgSHR0cEludGVyY2VwdG9yLFxuICAgIEh0dHBQcm9ncmVzc0V2ZW50LFxuICAgIEh0dHBSZXF1ZXN0LFxuICAgIEh0dHBSZXNwb25zZSxcbiAgICBIdHRwU2VudEV2ZW50LFxuICAgIEh0dHBVc2VyRXZlbnRcbn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgdGhyb3dFcnJvciBhcyBvYnNlcnZhYmxlVGhyb3dFcnJvciB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciwgbWVyZ2VNYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBBdXRoZW50aWNhdGlvbiB9IGZyb20gJy4uL2F1dGhlbnRpY2F0aW9uJztcblxuZXhwb3J0IGNvbnN0IFNIT1VMRF9BRERfQVVUSF9UT0tFTiA9IG5ldyBIdHRwQ29udGV4dFRva2VuPGJvb2xlYW4+KCgpID0+IGZhbHNlKTtcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEF1dGhlbnRpY2F0aW9uSW50ZXJjZXB0b3IgaW1wbGVtZW50cyBIdHRwSW50ZXJjZXB0b3Ige1xuXG4gICAgY29uc3RydWN0b3IoIHByaXZhdGUgYXV0aFNlcnZpY2U6IEF1dGhlbnRpY2F0aW9uKSB7IH1cblxuICAgIGludGVyY2VwdChyZXE6IEh0dHBSZXF1ZXN0PGFueT4sIG5leHQ6IEh0dHBIYW5kbGVyKTpcbiAgICAgIE9ic2VydmFibGU8SHR0cFNlbnRFdmVudCB8IEh0dHBIZWFkZXJSZXNwb25zZSB8IEh0dHBQcm9ncmVzc0V2ZW50IHwgSHR0cFJlc3BvbnNlPGFueT4gfCBIdHRwVXNlckV2ZW50PGFueT4+IHtcblxuICAgICAgaWYgKHJlcS5jb250ZXh0LmdldChTSE9VTERfQUREX0FVVEhfVE9LRU4pKSB7XG4gICAgICAgICAgcmV0dXJuIHRoaXMuYXV0aFNlcnZpY2UuYWRkVG9rZW5Ub0hlYWRlcihyZXEudXJsLCByZXEuaGVhZGVycykucGlwZShcbiAgICAgICAgICAgICAgbWVyZ2VNYXAoKGhlYWRlcnNXaXRoQmVhcmVyKSA9PiB7XG4gICAgICAgICAgICAgICAgICBjb25zdCBoZWFkZXJXaXRoQ29udGVudFR5cGUgPSB0aGlzLmFwcGVuZEpzb25Db250ZW50VHlwZShoZWFkZXJzV2l0aEJlYXJlcik7XG4gICAgICAgICAgICAgICAgICBjb25zdCBrY1JlcSA9IHJlcS5jbG9uZSh7IGhlYWRlcnM6IGhlYWRlcldpdGhDb250ZW50VHlwZX0pO1xuICAgICAgICAgICAgICAgICAgcmV0dXJuIG5leHQuaGFuZGxlKGtjUmVxKVxuICAgICAgICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgICAgY2F0Y2hFcnJvcigoZXJyb3IpID0+IG9ic2VydmFibGVUaHJvd0Vycm9yKGVycm9yKSlcbiAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIG5leHQuaGFuZGxlKHJlcSkucGlwZShjYXRjaEVycm9yKChlcnJvcikgPT4gb2JzZXJ2YWJsZVRocm93RXJyb3IoZXJyb3IpKSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBhcHBlbmRKc29uQ29udGVudFR5cGUoaGVhZGVyczogSHR0cEhlYWRlcnMpOiBIdHRwSGVhZGVycyB7XG5cbiAgICAgIC8vIHByZXZlbnQgYWRkaW5nIGFueSBjb250ZW50IHR5cGUsIHRvIHByb3Blcmx5IGhhbmRsZSBmb3JtRGF0YSB3aXRoIGJvdW5kYXJ5IGJyb3dzZXIgZ2VuZXJhdGVkIHZhbHVlLFxuICAgICAgLy8gYXMgYWRkaW5nIGFueSBDb250ZW50LVR5cGUgaXRzIGdvaW5nIHRvIGJyZWFrIHRoZSB1cGxvYWQgZnVuY3Rpb25hbGl0eVxuXG4gICAgICBpZiAoaGVhZGVycy5nZXQoJ0NvbnRlbnQtVHlwZScpID09PSAnbXVsdGlwYXJ0L2Zvcm0tZGF0YScpIHtcbiAgICAgICAgICByZXR1cm4gaGVhZGVycy5kZWxldGUoJ0NvbnRlbnQtVHlwZScpO1xuICAgICAgfVxuXG4gICAgICBpZiAoIWhlYWRlcnMuZ2V0KCdDb250ZW50LVR5cGUnKSkge1xuICAgICAgICAgIHJldHVybiBoZWFkZXJzLnNldCgnQ29udGVudC1UeXBlJywgJ2FwcGxpY2F0aW9uL2pzb247Y2hhcnNldD1VVEYtOCcpO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gaGVhZGVycztcbiAgICB9XG5cbn1cbiJdfQ==
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright © 2005-2024 Hyland Software, Inc. and its affiliates. All rights reserved.
|
|
4
|
+
*
|
|
5
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
+
* you may not use this file except in compliance with the License.
|
|
7
|
+
* You may obtain a copy of the License at
|
|
8
|
+
*
|
|
9
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
+
*
|
|
11
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
12
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
+
* See the License for the specific language governing permissions and
|
|
15
|
+
* limitations under the License.
|
|
16
|
+
*/
|
|
17
|
+
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ContentChildren, EventEmitter, Input, Output, QueryList, ViewChildren } from '@angular/core';
|
|
18
|
+
import { CommonModule } from '@angular/common';
|
|
19
|
+
import { MatButtonModule } from '@angular/material/button';
|
|
20
|
+
import { MatIconModule } from '@angular/material/icon';
|
|
21
|
+
import { map, startWith } from 'rxjs/operators';
|
|
22
|
+
import { TranslateModule } from '@ngx-translate/core';
|
|
23
|
+
import { BreadcrumbFocusDirective } from '../../directives/breadcrumb-focus.directive';
|
|
24
|
+
import { BreadcrumbItemComponent } from '../breadcrumb-item/breadcrumb-item.component';
|
|
25
|
+
import * as i0 from "@angular/core";
|
|
26
|
+
import * as i1 from "@angular/common";
|
|
27
|
+
import * as i2 from "@angular/material/icon";
|
|
28
|
+
import * as i3 from "@ngx-translate/core";
|
|
29
|
+
import * as i4 from "@angular/material/button";
|
|
30
|
+
export class BreadcrumbComponent {
|
|
31
|
+
constructor(cdr) {
|
|
32
|
+
this.cdr = cdr;
|
|
33
|
+
this._breadcrumbTemplateRefs = [];
|
|
34
|
+
this.compact = false;
|
|
35
|
+
this.compactChange = new EventEmitter();
|
|
36
|
+
this.selectedBreadcrumbs = [];
|
|
37
|
+
}
|
|
38
|
+
ngAfterContentInit() {
|
|
39
|
+
this.breadcrumbItems.changes
|
|
40
|
+
.pipe(startWith(this.breadcrumbItems), map((breadcrumbItems) => this.mapToTemplateRefs(breadcrumbItems)))
|
|
41
|
+
.subscribe((templateRefs) => {
|
|
42
|
+
this._breadcrumbTemplateRefs = templateRefs;
|
|
43
|
+
this.setBreadcrumbs(templateRefs);
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
ngOnChanges(changes) {
|
|
47
|
+
if (changes.compact) {
|
|
48
|
+
this.setBreadcrumbs(this._breadcrumbTemplateRefs);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
toggleCompact(compact = false) {
|
|
52
|
+
this.compact = compact;
|
|
53
|
+
this.setBreadcrumbs(this._breadcrumbTemplateRefs);
|
|
54
|
+
this.compactChange.emit(this.compact);
|
|
55
|
+
if (!compact) {
|
|
56
|
+
this.breadcrumbFocusItems.get(1)?.focusOnFirstFocusableElement();
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
setBreadcrumbs(breadcrumbs) {
|
|
60
|
+
this.selectedBreadcrumbs = this.compact && breadcrumbs.length > 2 ? [breadcrumbs[0], breadcrumbs[breadcrumbs.length - 1]] : [...breadcrumbs];
|
|
61
|
+
this.cdr.detectChanges();
|
|
62
|
+
}
|
|
63
|
+
mapToTemplateRefs(breadcrumbItems) {
|
|
64
|
+
return breadcrumbItems.toArray().map((breadcrumbItem) => breadcrumbItem.templateRef);
|
|
65
|
+
}
|
|
66
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: BreadcrumbComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
67
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: BreadcrumbComponent, isStandalone: true, selector: "adf-breadcrumb", inputs: { compact: "compact" }, outputs: { compactChange: "compactChange" }, queries: [{ propertyName: "breadcrumbItems", predicate: BreadcrumbItemComponent }], viewQueries: [{ propertyName: "breadcrumbFocusItems", predicate: BreadcrumbFocusDirective, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<ng-container>\n <nav class=\"adf-breadcrumb\" [class.adf-breadcrumb--compact]=\"compact\" [attr.aria-label]=\"'CORE.BREADCRUMBS.TITLE' | translate\" >\n <ol>\n <ng-container *ngFor=\"let breadcrumbTemplate of selectedBreadcrumbs; last as last\">\n <li adf-breadcrumb-focus class=\"adf-breadcrumb__item-wrapper\">\n <ng-container *ngTemplateOutlet=\"breadcrumbTemplate\"></ng-container>\n <div *ngIf=\"!last\" class=\"adf-breadcrumb__chevron\" [class.adf-breadcrumb__chevron-before--compact]=\"compact\" ></div>\n </li>\n\n <li *ngIf=\"!last && compact === true\" class=\"adf-breadcrumb__show-all-button-wrapper\">\n <button\n mat-icon-button\n (click)=\"toggleCompact()\"\n color=\"primary\"\n [title]=\"'CORE.BREADCRUMBS.SHOWALL' | translate\"\n [attr.aria-label]=\"'CORE.BREADCRUMBS.SHOWALL' | translate\"\n >\n <mat-icon class=\"adf-breadcrumb__show-all-button-icon--rotate\">more_vert</mat-icon >\n </button>\n <div class=\"adf-breadcrumb__chevron\" [class.adf-breadcrumb__chevron-after--compact]=\"compact\" ></div>\n </li>\n </ng-container>\n </ol>\n </nav>\n</ng-container>\n", styles: ["ol{margin:0;padding:0;display:flex;flex-wrap:wrap;min-height:40px}.adf-breadcrumb__item-wrapper{display:flex;align-items:center}.adf-breadcrumb__chevron{background-image:url(\"data:image/svg+xml,%3Csvg width%3D%225%22 height%3D%228%22 viewBox%3D%220 0 5 8%22 fill%3D%22none%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath fill-rule%3D%22evenodd%22 clip-rule%3D%22evenodd%22 d%3D%22M0.229292 0.234315C-0.0751287 0.546734 -0.0751287 1.05327 0.229292 1.36569L2.79616 4L0.229293 6.63432C-0.0751284 6.94673 -0.0751284 7.45327 0.229293 7.76569C0.533714 8.0781 1.02728 8.0781 1.3317 7.76569L4.44943 4.56604L5.00098 4L1.3317 0.234315C1.02728 -0.0781049 0.533713 -0.0781049 0.229292 0.234315Z%22 fill%3D%22%236B7280%22%2F%3E%3C%2Fsvg%3E\");background-repeat:no-repeat;background-position:center;width:5px;height:8px;margin:0 8px}:host-context([dir=rtl]) .adf-breadcrumb__chevron{transform:scaleX(-1)}.adf-breadcrumb__chevron-before--compact{margin:0 4px 0 8px}:host-context([dir=rtl]) .adf-breadcrumb__chevron-before--compact{margin:0 8px 0 4px}.adf-breadcrumb__chevron-after--compact{margin:0 8px 0 4px}:host-context([dir=rtl]) .adf-breadcrumb__chevron-after--compact{margin:0 4px 0 8px}.adf-breadcrumb__show-all-button-wrapper{display:flex;align-items:center}.adf-breadcrumb__show-all-button-icon--rotate{transform:rotate(90deg)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i4.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: BreadcrumbFocusDirective, selector: "[adf-breadcrumb-focus]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
68
|
+
}
|
|
69
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: BreadcrumbComponent, decorators: [{
|
|
70
|
+
type: Component,
|
|
71
|
+
args: [{ standalone: true, selector: 'adf-breadcrumb', changeDetection: ChangeDetectionStrategy.OnPush, imports: [CommonModule, MatIconModule, TranslateModule, MatButtonModule, BreadcrumbFocusDirective], template: "<ng-container>\n <nav class=\"adf-breadcrumb\" [class.adf-breadcrumb--compact]=\"compact\" [attr.aria-label]=\"'CORE.BREADCRUMBS.TITLE' | translate\" >\n <ol>\n <ng-container *ngFor=\"let breadcrumbTemplate of selectedBreadcrumbs; last as last\">\n <li adf-breadcrumb-focus class=\"adf-breadcrumb__item-wrapper\">\n <ng-container *ngTemplateOutlet=\"breadcrumbTemplate\"></ng-container>\n <div *ngIf=\"!last\" class=\"adf-breadcrumb__chevron\" [class.adf-breadcrumb__chevron-before--compact]=\"compact\" ></div>\n </li>\n\n <li *ngIf=\"!last && compact === true\" class=\"adf-breadcrumb__show-all-button-wrapper\">\n <button\n mat-icon-button\n (click)=\"toggleCompact()\"\n color=\"primary\"\n [title]=\"'CORE.BREADCRUMBS.SHOWALL' | translate\"\n [attr.aria-label]=\"'CORE.BREADCRUMBS.SHOWALL' | translate\"\n >\n <mat-icon class=\"adf-breadcrumb__show-all-button-icon--rotate\">more_vert</mat-icon >\n </button>\n <div class=\"adf-breadcrumb__chevron\" [class.adf-breadcrumb__chevron-after--compact]=\"compact\" ></div>\n </li>\n </ng-container>\n </ol>\n </nav>\n</ng-container>\n", styles: ["ol{margin:0;padding:0;display:flex;flex-wrap:wrap;min-height:40px}.adf-breadcrumb__item-wrapper{display:flex;align-items:center}.adf-breadcrumb__chevron{background-image:url(\"data:image/svg+xml,%3Csvg width%3D%225%22 height%3D%228%22 viewBox%3D%220 0 5 8%22 fill%3D%22none%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath fill-rule%3D%22evenodd%22 clip-rule%3D%22evenodd%22 d%3D%22M0.229292 0.234315C-0.0751287 0.546734 -0.0751287 1.05327 0.229292 1.36569L2.79616 4L0.229293 6.63432C-0.0751284 6.94673 -0.0751284 7.45327 0.229293 7.76569C0.533714 8.0781 1.02728 8.0781 1.3317 7.76569L4.44943 4.56604L5.00098 4L1.3317 0.234315C1.02728 -0.0781049 0.533713 -0.0781049 0.229292 0.234315Z%22 fill%3D%22%236B7280%22%2F%3E%3C%2Fsvg%3E\");background-repeat:no-repeat;background-position:center;width:5px;height:8px;margin:0 8px}:host-context([dir=rtl]) .adf-breadcrumb__chevron{transform:scaleX(-1)}.adf-breadcrumb__chevron-before--compact{margin:0 4px 0 8px}:host-context([dir=rtl]) .adf-breadcrumb__chevron-before--compact{margin:0 8px 0 4px}.adf-breadcrumb__chevron-after--compact{margin:0 8px 0 4px}:host-context([dir=rtl]) .adf-breadcrumb__chevron-after--compact{margin:0 4px 0 8px}.adf-breadcrumb__show-all-button-wrapper{display:flex;align-items:center}.adf-breadcrumb__show-all-button-icon--rotate{transform:rotate(90deg)}\n"] }]
|
|
72
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { compact: [{
|
|
73
|
+
type: Input
|
|
74
|
+
}], compactChange: [{
|
|
75
|
+
type: Output
|
|
76
|
+
}], breadcrumbFocusItems: [{
|
|
77
|
+
type: ViewChildren,
|
|
78
|
+
args: [BreadcrumbFocusDirective]
|
|
79
|
+
}], breadcrumbItems: [{
|
|
80
|
+
type: ContentChildren,
|
|
81
|
+
args: [BreadcrumbItemComponent]
|
|
82
|
+
}] } });
|
|
83
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWRjcnVtYi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWIvY29yZS9icmVhZGNydW1icy9zcmMvY29tcG9uZW50cy9icmVhZGNydW1iL2JyZWFkY3J1bWIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGliL2NvcmUvYnJlYWRjcnVtYnMvc3JjL2NvbXBvbmVudHMvYnJlYWRjcnVtYi9icmVhZGNydW1iLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7R0FlRztBQUVILE9BQU8sRUFFSCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxlQUFlLEVBQ2YsWUFBWSxFQUNaLEtBQUssRUFFTCxNQUFNLEVBQ04sU0FBUyxFQUdULFlBQVksRUFDZixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUV0RCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUN2RixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQzs7Ozs7O0FBVXZGLE1BQU0sT0FBTyxtQkFBbUI7SUFpQjVCLFlBQW9CLEdBQXNCO1FBQXRCLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBaEJsQyw0QkFBdUIsR0FBZ0MsRUFBRSxDQUFDO1FBR2xFLFlBQU8sR0FBRyxLQUFLLENBQUM7UUFHaEIsa0JBQWEsR0FBMEIsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQVExRCx3QkFBbUIsR0FBZ0MsRUFBRSxDQUFDO0lBRVQsQ0FBQztJQUU5QyxrQkFBa0I7UUFDZCxJQUFJLENBQUMsZUFBZSxDQUFDLE9BQU87YUFDdkIsSUFBSSxDQUNELFNBQVMsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLEVBQy9CLEdBQUcsQ0FBQyxDQUFDLGVBQW1ELEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUN4RzthQUNBLFNBQVMsQ0FBQyxDQUFDLFlBQVksRUFBRSxFQUFFO1lBQ3hCLElBQUksQ0FBQyx1QkFBdUIsR0FBRyxZQUFZLENBQUM7WUFDNUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUN0QyxDQUFDLENBQUMsQ0FBQztJQUNYLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBc0I7UUFDOUIsSUFBSSxPQUFPLENBQUMsT0FBTyxFQUFFO1lBQ2pCLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLHVCQUF1QixDQUFDLENBQUM7U0FDckQ7SUFDTCxDQUFDO0lBRUQsYUFBYSxDQUFDLE9BQU8sR0FBRyxLQUFLO1FBQ3pCLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLHVCQUF1QixDQUFDLENBQUM7UUFDbEQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3RDLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDVixJQUFJLENBQUMsb0JBQW9CLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLDRCQUE0QixFQUFFLENBQUM7U0FDcEU7SUFDTCxDQUFDO0lBRU8sY0FBYyxDQUFDLFdBQXdDO1FBQzNELElBQUksQ0FBQyxtQkFBbUIsR0FBRyxJQUFJLENBQUMsT0FBTyxJQUFJLFdBQVcsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsRUFBRSxXQUFXLENBQUMsV0FBVyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsV0FBVyxDQUFDLENBQUM7UUFDN0ksSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRU8saUJBQWlCLENBQUMsZUFBbUQ7UUFDekUsT0FBTyxlQUFlLENBQUMsT0FBTyxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUMsY0FBYyxFQUFFLEVBQUUsQ0FBQyxjQUFjLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDekYsQ0FBQzs4R0FyRFEsbUJBQW1CO2tHQUFuQixtQkFBbUIsdUxBWVgsdUJBQXVCLHNFQUgxQix3QkFBd0IscUVDMUQxQyxtdUNBeUJBLHEzQ0RzQmMsWUFBWSxzYUFBRSxhQUFhLG1MQUFFLGVBQWUsMkZBQUUsZUFBZSw0TEFBRSx3QkFBd0I7OzJGQUV4RixtQkFBbUI7a0JBUi9CLFNBQVM7aUNBQ00sSUFBSSxZQUNOLGdCQUFnQixtQkFHVCx1QkFBdUIsQ0FBQyxNQUFNLFdBQ3RDLENBQUMsWUFBWSxFQUFFLGFBQWEsRUFBRSxlQUFlLEVBQUUsZUFBZSxFQUFFLHdCQUF3QixDQUFDO3dHQU1sRyxPQUFPO3NCQUROLEtBQUs7Z0JBSU4sYUFBYTtzQkFEWixNQUFNO2dCQUlQLG9CQUFvQjtzQkFEbkIsWUFBWTt1QkFBQyx3QkFBd0I7Z0JBSXRDLGVBQWU7c0JBRGQsZUFBZTt1QkFBQyx1QkFBdUIiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgwqkgMjAwNS0yMDI0IEh5bGFuZCBTb2Z0d2FyZSwgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7XG4gICAgQWZ0ZXJDb250ZW50SW5pdCxcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgQ29udGVudENoaWxkcmVuLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBJbnB1dCxcbiAgICBPbkNoYW5nZXMsXG4gICAgT3V0cHV0LFxuICAgIFF1ZXJ5TGlzdCxcbiAgICBTaW1wbGVDaGFuZ2VzLFxuICAgIFRlbXBsYXRlUmVmLFxuICAgIFZpZXdDaGlsZHJlblxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHsgbWFwLCBzdGFydFdpdGggfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcblxuaW1wb3J0IHsgQnJlYWRjcnVtYkZvY3VzRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcy9icmVhZGNydW1iLWZvY3VzLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBCcmVhZGNydW1iSXRlbUNvbXBvbmVudCB9IGZyb20gJy4uL2JyZWFkY3J1bWItaXRlbS9icmVhZGNydW1iLWl0ZW0uY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBzZWxlY3RvcjogJ2FkZi1icmVhZGNydW1iJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vYnJlYWRjcnVtYi5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vYnJlYWRjcnVtYi5jb21wb25lbnQuc2NzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIE1hdEljb25Nb2R1bGUsIFRyYW5zbGF0ZU1vZHVsZSwgTWF0QnV0dG9uTW9kdWxlLCBCcmVhZGNydW1iRm9jdXNEaXJlY3RpdmVdXG59KVxuZXhwb3J0IGNsYXNzIEJyZWFkY3J1bWJDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0LCBPbkNoYW5nZXMge1xuICAgIHByaXZhdGUgX2JyZWFkY3J1bWJUZW1wbGF0ZVJlZnM6IEFycmF5PFRlbXBsYXRlUmVmPHVua25vd24+PiA9IFtdO1xuXG4gICAgQElucHV0KClcbiAgICBjb21wYWN0ID0gZmFsc2U7XG5cbiAgICBAT3V0cHV0KClcbiAgICBjb21wYWN0Q2hhbmdlOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgICBAVmlld0NoaWxkcmVuKEJyZWFkY3J1bWJGb2N1c0RpcmVjdGl2ZSlcbiAgICBicmVhZGNydW1iRm9jdXNJdGVtcyE6IFF1ZXJ5TGlzdDxCcmVhZGNydW1iRm9jdXNEaXJlY3RpdmU+O1xuXG4gICAgQENvbnRlbnRDaGlsZHJlbihCcmVhZGNydW1iSXRlbUNvbXBvbmVudClcbiAgICBicmVhZGNydW1iSXRlbXMhOiBRdWVyeUxpc3Q8QnJlYWRjcnVtYkl0ZW1Db21wb25lbnQ+O1xuXG4gICAgc2VsZWN0ZWRCcmVhZGNydW1iczogQXJyYXk8VGVtcGxhdGVSZWY8dW5rbm93bj4+ID0gW107XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHt9XG5cbiAgICBuZ0FmdGVyQ29udGVudEluaXQoKSB7XG4gICAgICAgIHRoaXMuYnJlYWRjcnVtYkl0ZW1zLmNoYW5nZXNcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIHN0YXJ0V2l0aCh0aGlzLmJyZWFkY3J1bWJJdGVtcyksXG4gICAgICAgICAgICAgICAgbWFwKChicmVhZGNydW1iSXRlbXM6IFF1ZXJ5TGlzdDxCcmVhZGNydW1iSXRlbUNvbXBvbmVudD4pID0+IHRoaXMubWFwVG9UZW1wbGF0ZVJlZnMoYnJlYWRjcnVtYkl0ZW1zKSlcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKHRlbXBsYXRlUmVmcykgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuX2JyZWFkY3J1bWJUZW1wbGF0ZVJlZnMgPSB0ZW1wbGF0ZVJlZnM7XG4gICAgICAgICAgICAgICAgdGhpcy5zZXRCcmVhZGNydW1icyh0ZW1wbGF0ZVJlZnMpO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgICAgICBpZiAoY2hhbmdlcy5jb21wYWN0KSB7XG4gICAgICAgICAgICB0aGlzLnNldEJyZWFkY3J1bWJzKHRoaXMuX2JyZWFkY3J1bWJUZW1wbGF0ZVJlZnMpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgdG9nZ2xlQ29tcGFjdChjb21wYWN0ID0gZmFsc2UpIHtcbiAgICAgICAgdGhpcy5jb21wYWN0ID0gY29tcGFjdDtcbiAgICAgICAgdGhpcy5zZXRCcmVhZGNydW1icyh0aGlzLl9icmVhZGNydW1iVGVtcGxhdGVSZWZzKTtcbiAgICAgICAgdGhpcy5jb21wYWN0Q2hhbmdlLmVtaXQodGhpcy5jb21wYWN0KTtcbiAgICAgICAgaWYgKCFjb21wYWN0KSB7XG4gICAgICAgICAgICB0aGlzLmJyZWFkY3J1bWJGb2N1c0l0ZW1zLmdldCgxKT8uZm9jdXNPbkZpcnN0Rm9jdXNhYmxlRWxlbWVudCgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXRCcmVhZGNydW1icyhicmVhZGNydW1iczogQXJyYXk8VGVtcGxhdGVSZWY8dW5rbm93bj4+KSB7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRCcmVhZGNydW1icyA9IHRoaXMuY29tcGFjdCAmJiBicmVhZGNydW1icy5sZW5ndGggPiAyID8gW2JyZWFkY3J1bWJzWzBdLCBicmVhZGNydW1ic1ticmVhZGNydW1icy5sZW5ndGggLSAxXV0gOiBbLi4uYnJlYWRjcnVtYnNdO1xuICAgICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBtYXBUb1RlbXBsYXRlUmVmcyhicmVhZGNydW1iSXRlbXM6IFF1ZXJ5TGlzdDxCcmVhZGNydW1iSXRlbUNvbXBvbmVudD4pIHtcbiAgICAgICAgcmV0dXJuIGJyZWFkY3J1bWJJdGVtcy50b0FycmF5KCkubWFwKChicmVhZGNydW1iSXRlbSkgPT4gYnJlYWRjcnVtYkl0ZW0udGVtcGxhdGVSZWYpO1xuICAgIH1cbn1cbiIsIjxuZy1jb250YWluZXI+XG4gIDxuYXYgY2xhc3M9XCJhZGYtYnJlYWRjcnVtYlwiIFtjbGFzcy5hZGYtYnJlYWRjcnVtYi0tY29tcGFjdF09XCJjb21wYWN0XCIgW2F0dHIuYXJpYS1sYWJlbF09XCInQ09SRS5CUkVBRENSVU1CUy5USVRMRScgfCB0cmFuc2xhdGVcIiA+XG4gICAgPG9sPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgYnJlYWRjcnVtYlRlbXBsYXRlIG9mIHNlbGVjdGVkQnJlYWRjcnVtYnM7IGxhc3QgYXMgbGFzdFwiPlxuICAgICAgICA8bGkgYWRmLWJyZWFkY3J1bWItZm9jdXMgY2xhc3M9XCJhZGYtYnJlYWRjcnVtYl9faXRlbS13cmFwcGVyXCI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImJyZWFkY3J1bWJUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgIDxkaXYgKm5nSWY9XCIhbGFzdFwiIGNsYXNzPVwiYWRmLWJyZWFkY3J1bWJfX2NoZXZyb25cIiBbY2xhc3MuYWRmLWJyZWFkY3J1bWJfX2NoZXZyb24tYmVmb3JlLS1jb21wYWN0XT1cImNvbXBhY3RcIiA+PC9kaXY+XG4gICAgICAgIDwvbGk+XG5cbiAgICAgICAgPGxpICpuZ0lmPVwiIWxhc3QgJiYgY29tcGFjdCA9PT0gdHJ1ZVwiIGNsYXNzPVwiYWRmLWJyZWFkY3J1bWJfX3Nob3ctYWxsLWJ1dHRvbi13cmFwcGVyXCI+XG4gICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgbWF0LWljb24tYnV0dG9uXG4gICAgICAgICAgICAoY2xpY2spPVwidG9nZ2xlQ29tcGFjdCgpXCJcbiAgICAgICAgICAgIGNvbG9yPVwicHJpbWFyeVwiXG4gICAgICAgICAgICBbdGl0bGVdPVwiJ0NPUkUuQlJFQURDUlVNQlMuU0hPV0FMTCcgfCB0cmFuc2xhdGVcIlxuICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCInQ09SRS5CUkVBRENSVU1CUy5TSE9XQUxMJyB8IHRyYW5zbGF0ZVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPG1hdC1pY29uIGNsYXNzPVwiYWRmLWJyZWFkY3J1bWJfX3Nob3ctYWxsLWJ1dHRvbi1pY29uLS1yb3RhdGVcIj5tb3JlX3ZlcnQ8L21hdC1pY29uID5cbiAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiYWRmLWJyZWFkY3J1bWJfX2NoZXZyb25cIiBbY2xhc3MuYWRmLWJyZWFkY3J1bWJfX2NoZXZyb24tYWZ0ZXItLWNvbXBhY3RdPVwiY29tcGFjdFwiID48L2Rpdj5cbiAgICAgICAgPC9saT5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvb2w+XG4gIDwvbmF2PlxuPC9uZy1jb250YWluZXI+XG4iXX0=
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright © 2005-2024 Hyland Software, Inc. and its affiliates. All rights reserved.
|
|
4
|
+
*
|
|
5
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
+
* you may not use this file except in compliance with the License.
|
|
7
|
+
* You may obtain a copy of the License at
|
|
8
|
+
*
|
|
9
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
+
*
|
|
11
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
12
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
+
* See the License for the specific language governing permissions and
|
|
15
|
+
* limitations under the License.
|
|
16
|
+
*/
|
|
17
|
+
import { Component, TemplateRef, ViewChild } from '@angular/core';
|
|
18
|
+
import * as i0 from "@angular/core";
|
|
19
|
+
export class BreadcrumbItemComponent {
|
|
20
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: BreadcrumbItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
21
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: BreadcrumbItemComponent, isStandalone: true, selector: "adf-breadcrumb-item", viewQueries: [{ propertyName: "templateRef", first: true, predicate: ["breadcrumbItemTemplate"], descendants: true, static: true }], ngImport: i0, template: `
|
|
22
|
+
<ng-template #breadcrumbItemTemplate>
|
|
23
|
+
<ng-content></ng-content>
|
|
24
|
+
</ng-template>
|
|
25
|
+
`, isInline: true }); }
|
|
26
|
+
}
|
|
27
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: BreadcrumbItemComponent, decorators: [{
|
|
28
|
+
type: Component,
|
|
29
|
+
args: [{
|
|
30
|
+
standalone: true,
|
|
31
|
+
selector: 'adf-breadcrumb-item',
|
|
32
|
+
template: `
|
|
33
|
+
<ng-template #breadcrumbItemTemplate>
|
|
34
|
+
<ng-content></ng-content>
|
|
35
|
+
</ng-template>
|
|
36
|
+
`
|
|
37
|
+
}]
|
|
38
|
+
}], propDecorators: { templateRef: [{
|
|
39
|
+
type: ViewChild,
|
|
40
|
+
args: ['breadcrumbItemTemplate', { static: true }]
|
|
41
|
+
}] } });
|
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWRjcnVtYi1pdGVtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYi9jb3JlL2JyZWFkY3J1bWJzL3NyYy9jb21wb25lbnRzL2JyZWFkY3J1bWItaXRlbS9icmVhZGNydW1iLWl0ZW0uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7R0FlRztBQUVILE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFXbEUsTUFBTSxPQUFPLHVCQUF1Qjs4R0FBdkIsdUJBQXVCO2tHQUF2Qix1QkFBdUIsb05BTnRCOzs7O0tBSVQ7OzJGQUVRLHVCQUF1QjtrQkFUbkMsU0FBUzttQkFBQztvQkFDUCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFLHFCQUFxQjtvQkFDL0IsUUFBUSxFQUFFOzs7O0tBSVQ7aUJBQ0o7OEJBR0csV0FBVztzQkFEVixTQUFTO3VCQUFDLHdCQUF3QixFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSIsInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCDCqSAyMDA1LTIwMjQgSHlsYW5kIFNvZnR3YXJlLCBJbmMuIGFuZCBpdHMgYWZmaWxpYXRlcy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuaW1wb3J0IHsgQ29tcG9uZW50LCBUZW1wbGF0ZVJlZiwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgc2VsZWN0b3I6ICdhZGYtYnJlYWRjcnVtYi1pdGVtJyxcbiAgICB0ZW1wbGF0ZTogYFxuICAgICAgICA8bmctdGVtcGxhdGUgI2JyZWFkY3J1bWJJdGVtVGVtcGxhdGU+XG4gICAgICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgYFxufSlcbmV4cG9ydCBjbGFzcyBCcmVhZGNydW1iSXRlbUNvbXBvbmVudCB7XG4gICAgQFZpZXdDaGlsZCgnYnJlYWRjcnVtYkl0ZW1UZW1wbGF0ZScsIHsgc3RhdGljOiB0cnVlIH0pXG4gICAgdGVtcGxhdGVSZWYhOiBUZW1wbGF0ZVJlZjxhbnk+O1xufVxuIl19
|