@alfresco/adf-core 8.1.0-16295248176 → 8.1.0-16342534841
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/bundles/assets/adf-core/i18n/de.json +1 -1
- package/bundles/assets/adf-core/i18n/es.json +1 -1
- package/bundles/assets/adf-core/i18n/fr.json +1 -1
- package/bundles/assets/adf-core/i18n/it.json +1 -1
- package/bundles/assets/adf-core/i18n/pl.json +1 -1
- package/bundles/assets/adf-core/i18n/pt.json +1 -1
- package/esm2022/adf-core.mjs +5 -0
- package/esm2022/api/alfresco-adf-core-api.mjs +5 -0
- package/esm2022/api/index.mjs +20 -0
- package/esm2022/api/lib/adf-http-client.service.mjs +311 -0
- package/esm2022/api/lib/alfresco-api/alfresco-api.param-encoder.mjs +33 -0
- package/esm2022/api/lib/alfresco-api/alfresco-api.response-error.mjs +25 -0
- package/esm2022/api/lib/alfresco-api/alfresco-api.utils.mjs +80 -0
- package/esm2022/api/lib/interfaces.mjs +18 -0
- package/esm2022/api/lib/types.mjs +18 -0
- package/esm2022/auth/alfresco-adf-core-auth.mjs +5 -0
- package/esm2022/auth/authentication-interceptor/authentication.interceptor.mjs +56 -0
- package/esm2022/auth/authentication.mjs +19 -0
- package/esm2022/auth/index.mjs +19 -0
- package/esm2022/breadcrumbs/alfresco-adf-core-breadcrumbs.mjs +5 -0
- package/esm2022/breadcrumbs/components/breadcrumb/breadcrumb.component.mjs +82 -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/breadcrumbs/index.mjs +19 -0
- package/esm2022/feature-flags/alfresco-adf-core-feature-flags.mjs +5 -0
- package/esm2022/feature-flags/index.mjs +29 -0
- package/esm2022/feature-flags/lib/components/feature-flags-wrapper.mjs +36 -0
- package/esm2022/feature-flags/lib/components/feature-override-indicator.component.mjs +56 -0
- package/esm2022/feature-flags/lib/components/flags/flags.component.mjs +129 -0
- package/esm2022/feature-flags/lib/directives/features.directive.mjs +63 -0
- package/esm2022/feature-flags/lib/directives/not-features.directive.mjs +63 -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/interfaces/features.interface.mjs +24 -0
- package/esm2022/feature-flags/lib/mocks/features-service-mock.factory.mjs +62 -0
- package/esm2022/feature-flags/lib/providers/debug-feature-flags.provider.mjs +51 -0
- package/esm2022/feature-flags/lib/providers/dummy-feature-flags.provider.mjs +36 -0
- package/esm2022/feature-flags/lib/services/debug-features.service.mjs +94 -0
- package/esm2022/feature-flags/lib/services/dummy-features.service.mjs +40 -0
- package/esm2022/feature-flags/lib/services/flagset.parser.mjs +38 -0
- package/esm2022/feature-flags/lib/services/qa-features.helper.mjs +62 -0
- package/esm2022/feature-flags/lib/services/storage-features.service.mjs +126 -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 +65 -0
- package/esm2022/lib/about/about-panel.directive.mjs +37 -0
- package/esm2022/lib/about/about-repository-info/about-repository-info.component.mjs +59 -0
- package/esm2022/lib/about/about-repository-info/repository-info.interface.mjs +18 -0
- package/esm2022/lib/about/about-server-settings/about-server-settings.component.mjs +42 -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/about/index.mjs +18 -0
- package/esm2022/lib/about/interfaces.mjs +18 -0
- package/esm2022/lib/about/public-api.mjs +28 -0
- package/esm2022/lib/app-config/app-config-storage-prefix.factory.mjs +51 -0
- package/esm2022/lib/app-config/app-config.loader.mjs +41 -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 +44 -0
- package/esm2022/lib/app-config/index.mjs +18 -0
- package/esm2022/lib/app-config/provide-app-config.mjs +44 -0
- package/esm2022/lib/app-config/public-api.mjs +23 -0
- package/esm2022/lib/auth/authentication-interceptor/auth-bearer.interceptor.mjs +67 -0
- package/esm2022/lib/auth/basic-auth/basic-alfresco-auth.service.mjs +356 -0
- package/esm2022/lib/auth/basic-auth/content-auth.mjs +189 -0
- package/esm2022/lib/auth/basic-auth/process-auth.mjs +193 -0
- package/esm2022/lib/auth/guard/auth-guard-bpm.service.mjs +31 -0
- package/esm2022/lib/auth/guard/auth-guard-ecm.service.mjs +31 -0
- package/esm2022/lib/auth/guard/auth-guard-sso-role.service.mjs +57 -0
- package/esm2022/lib/auth/guard/auth-guard.mjs +53 -0
- package/esm2022/lib/auth/guard/auth-guard.service.mjs +113 -0
- package/esm2022/lib/auth/index.mjs +18 -0
- package/esm2022/lib/auth/interfaces/authentication-service.interface.mjs +18 -0
- package/esm2022/lib/auth/interfaces/authentication.interface.mjs +18 -0
- package/esm2022/lib/auth/interfaces/identity-group.interface.mjs +18 -0
- package/esm2022/lib/auth/interfaces/identity-user.service.interface.mjs +18 -0
- package/esm2022/lib/auth/interfaces/openid-configuration.interface.mjs +18 -0
- package/esm2022/lib/auth/models/application-access.model.mjs +18 -0
- package/esm2022/lib/auth/models/identity-group.model.mjs +18 -0
- package/esm2022/lib/auth/models/identity-role.model.mjs +30 -0
- package/esm2022/lib/auth/models/identity-user.model.mjs +18 -0
- package/esm2022/lib/auth/models/oauth-config.model.mjs +18 -0
- package/esm2022/lib/auth/models/redirection.model.mjs +28 -0
- package/esm2022/lib/auth/models/user-access.model.mjs +18 -0
- package/esm2022/lib/auth/oidc/auth-config.mjs +19 -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 +112 -0
- package/esm2022/lib/auth/oidc/auth.service.mjs +22 -0
- package/esm2022/lib/auth/oidc/oidc-auth.guard.mjs +37 -0
- package/esm2022/lib/auth/oidc/oidc-authentication.service.mjs +202 -0
- package/esm2022/lib/auth/oidc/public-api.mjs +24 -0
- package/esm2022/lib/auth/oidc/redirect-auth.service.mjs +267 -0
- package/esm2022/lib/auth/oidc/retry-login.service.mjs +66 -0
- package/esm2022/lib/auth/oidc/token.interceptor.mjs +62 -0
- package/esm2022/lib/auth/oidc/view/authentication-confirmation/authentication-confirmation.component.mjs +31 -0
- package/esm2022/lib/auth/public-api.mjs +44 -0
- package/esm2022/lib/auth/services/authentication.service.mjs +190 -0
- package/esm2022/lib/auth/services/base-authentication.service.mjs +99 -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 +443 -0
- package/esm2022/lib/auth/services/jwt-helper.service.mjs +205 -0
- package/esm2022/lib/auth/services/oauth2.service.mjs +69 -0
- package/esm2022/lib/auth/services/time-sync.service.mjs +83 -0
- package/esm2022/lib/auth/services/user-access.service.mjs +110 -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/blank-page/index.mjs +18 -0
- package/esm2022/lib/blank-page/public-api.mjs +19 -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 +51 -0
- package/esm2022/lib/card-view/components/card-view/card-view.component.mjs +66 -0
- package/esm2022/lib/card-view/components/card-view-arrayitem/card-view-arrayitem.component.mjs +55 -0
- package/esm2022/lib/card-view/components/card-view-boolitem/card-view-boolitem.component.mjs +39 -0
- package/esm2022/lib/card-view/components/card-view-dateitem/card-view-dateitem.component.mjs +182 -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 +64 -0
- package/esm2022/lib/card-view/components/card-view-mapitem/card-view-mapitem.component.mjs +46 -0
- package/esm2022/lib/card-view/components/card-view-selectitem/card-view-selectitem.component.mjs +137 -0
- package/esm2022/lib/card-view/components/card-view-selectitem/select-filter-input/select-filter-input.component.mjs +113 -0
- package/esm2022/lib/card-view/components/card-view-textitem/card-view-textitem.component.mjs +239 -0
- package/esm2022/lib/card-view/components/card-view.components.mjs +28 -0
- package/esm2022/lib/card-view/index.mjs +18 -0
- package/esm2022/lib/card-view/interfaces/base-card-view-update.interface.mjs +18 -0
- package/esm2022/lib/card-view/interfaces/card-view-arrayitem-properties.interface.mjs +18 -0
- package/esm2022/lib/card-view/interfaces/card-view-boolitem-properties.interface.mjs +18 -0
- package/esm2022/lib/card-view/interfaces/card-view-dateitem-properties.interface.mjs +18 -0
- package/esm2022/lib/card-view/interfaces/card-view-item-properties.interface.mjs +18 -0
- package/esm2022/lib/card-view/interfaces/card-view-item-validator.interface.mjs +18 -0
- package/esm2022/lib/card-view/interfaces/card-view-item.interface.mjs +18 -0
- package/esm2022/lib/card-view/interfaces/card-view-keyvaluepairsitem-properties.interface.mjs +18 -0
- package/esm2022/lib/card-view/interfaces/card-view-selectitem-properties.interface.mjs +18 -0
- package/esm2022/lib/card-view/interfaces/card-view-textitem-pipe-property.interface.mjs +18 -0
- package/esm2022/lib/card-view/interfaces/card-view-textitem-properties.interface.mjs +18 -0
- package/esm2022/lib/card-view/interfaces/card-view.interfaces.mjs +29 -0
- package/esm2022/lib/card-view/interfaces/click-notification.interface.mjs +18 -0
- package/esm2022/lib/card-view/interfaces/update-notification.interface.mjs +18 -0
- package/esm2022/lib/card-view/models/card-view-arrayitem.model.mjs +28 -0
- package/esm2022/lib/card-view/models/card-view-baseitem.model.mjs +64 -0
- package/esm2022/lib/card-view/models/card-view-boolitem.model.mjs +36 -0
- package/esm2022/lib/card-view/models/card-view-dateitem.model.mjs +58 -0
- package/esm2022/lib/card-view/models/card-view-datetimeitem.model.mjs +28 -0
- package/esm2022/lib/card-view/models/card-view-floatitem.model.mjs +33 -0
- package/esm2022/lib/card-view/models/card-view-intitem.model.mjs +36 -0
- package/esm2022/lib/card-view/models/card-view-keyvaluepairs.model.mjs +27 -0
- package/esm2022/lib/card-view/models/card-view-longitem.model.mjs +36 -0
- package/esm2022/lib/card-view/models/card-view-mapitem.model.mjs +32 -0
- package/esm2022/lib/card-view/models/card-view-selectitem.model.mjs +41 -0
- package/esm2022/lib/card-view/models/card-view-textitem.model.mjs +40 -0
- package/esm2022/lib/card-view/models/card-view.models.mjs +29 -0
- package/esm2022/lib/card-view/public-api.mjs +25 -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 +59 -0
- package/esm2022/lib/card-view/services/card-view.services.mjs +19 -0
- package/esm2022/lib/card-view/validators/card-view-item-float.validator.mjs +31 -0
- package/esm2022/lib/card-view/validators/card-view-item-int.validator.mjs +35 -0
- package/esm2022/lib/card-view/validators/card-view-item-length.validator.mjs +34 -0
- package/esm2022/lib/card-view/validators/card-view-item-long.validator.mjs +35 -0
- package/esm2022/lib/card-view/validators/card-view-item-match.validator.mjs +35 -0
- package/esm2022/lib/card-view/validators/card-view-item-minmax.validator.mjs +35 -0
- package/esm2022/lib/card-view/validators/card-view-item-only-positive-int.validator.mjs +32 -0
- package/esm2022/lib/card-view/validators/card-view-item-only-positive-long.validator.mjs +31 -0
- package/esm2022/lib/card-view/validators/card-view.validators.mjs +26 -0
- package/esm2022/lib/card-view/validators/validators.map.mjs +26 -0
- package/esm2022/lib/clipboard/clipboard.directive.mjs +98 -0
- package/esm2022/lib/clipboard/clipboard.module.mjs +34 -0
- package/esm2022/lib/clipboard/clipboard.service.mjs +103 -0
- package/esm2022/lib/clipboard/index.mjs +18 -0
- package/esm2022/lib/clipboard/public-api.mjs +21 -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/comment-list/index.mjs +18 -0
- package/esm2022/lib/comments/comment-list/public-api.mjs +19 -0
- package/esm2022/lib/comments/comments.component.mjs +132 -0
- package/esm2022/lib/comments/comments.module.mjs +33 -0
- package/esm2022/lib/comments/index.mjs +18 -0
- package/esm2022/lib/comments/interfaces/comments-service.interface.mjs +18 -0
- package/esm2022/lib/comments/interfaces/comments.token.mjs +19 -0
- package/esm2022/lib/comments/public-api.mjs +22 -0
- package/esm2022/lib/common/index.mjs +35 -0
- package/esm2022/lib/common/interface/search-component.interface.mjs +18 -0
- package/esm2022/lib/common/mock/app-config.service.mock.mjs +47 -0
- package/esm2022/lib/common/models/default-languages.model.mjs +36 -0
- package/esm2022/lib/common/models/log-levels.model.mjs +33 -0
- package/esm2022/lib/common/models/user-info-mode.enum.mjs +25 -0
- package/esm2022/lib/common/services/cookie.service.mjs +82 -0
- package/esm2022/lib/common/services/download.service.mjs +102 -0
- package/esm2022/lib/common/services/dynamic-component-mapper.service.mjs +89 -0
- package/esm2022/lib/common/services/highlight-transform.service.mjs +61 -0
- package/esm2022/lib/common/services/language-item.interface.mjs +18 -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 +143 -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 +238 -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/index.mjs +18 -0
- package/esm2022/lib/common/utils/moment-date-adapter.mjs +202 -0
- package/esm2022/lib/common/utils/moment-date-formats.model.mjs +32 -0
- package/esm2022/lib/common/utils/object-utils.mjs +107 -0
- package/esm2022/lib/common/utils/public-api.mjs +25 -0
- package/esm2022/lib/common/utils/string-utils.mjs +45 -0
- package/esm2022/lib/context-menu/animations.mjs +33 -0
- package/esm2022/lib/context-menu/context-menu-list.component.mjs +91 -0
- package/esm2022/lib/context-menu/context-menu-overlay.mjs +25 -0
- package/esm2022/lib/context-menu/context-menu-overlay.service.mjs +109 -0
- package/esm2022/lib/context-menu/context-menu.directive.mjs +63 -0
- package/esm2022/lib/context-menu/context-menu.module.mjs +35 -0
- package/esm2022/lib/context-menu/context-menu.tokens.mjs +19 -0
- package/esm2022/lib/context-menu/index.mjs +18 -0
- package/esm2022/lib/context-menu/interfaces.mjs +18 -0
- package/esm2022/lib/context-menu/public-api.mjs +21 -0
- package/esm2022/lib/core.module.mjs +296 -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-search-filter.pipe.mjs +55 -0
- package/esm2022/lib/datatable/components/columns-selector/columns-selector.component.mjs +113 -0
- package/esm2022/lib/datatable/components/data-cell.event.mjs +31 -0
- package/esm2022/lib/datatable/components/data-row-action.event.mjs +34 -0
- package/esm2022/lib/datatable/components/datatable/datatable.component.mjs +914 -0
- package/esm2022/lib/datatable/components/datatable-cell/datatable-cell.component.mjs +126 -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 +69 -0
- package/esm2022/lib/datatable/components/mocks/datatable.mock.mjs +153 -0
- package/esm2022/lib/datatable/components/number-cell/number-cell.component.mjs +42 -0
- package/esm2022/lib/datatable/data/data-column.model.mjs +18 -0
- package/esm2022/lib/datatable/data/data-row-event.model.mjs +26 -0
- package/esm2022/lib/datatable/data/data-row-update.model.mjs +18 -0
- package/esm2022/lib/datatable/data/data-row.model.mjs +18 -0
- package/esm2022/lib/datatable/data/data-sorting.model.mjs +24 -0
- package/esm2022/lib/datatable/data/data-table.schema.mjs +132 -0
- package/esm2022/lib/datatable/data/datatable-adapter.mjs +18 -0
- package/esm2022/lib/datatable/data/object-datacolumn.model.mjs +46 -0
- package/esm2022/lib/datatable/data/object-datarow.model.mjs +41 -0
- package/esm2022/lib/datatable/data/object-datatable-adapter.mjs +134 -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 +114 -0
- package/esm2022/lib/datatable/data-column/index.mjs +18 -0
- package/esm2022/lib/datatable/data-column/public-api.mjs +20 -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 +72 -0
- package/esm2022/lib/datatable/directives/resizable/types.mjs +18 -0
- package/esm2022/lib/datatable/index.mjs +18 -0
- package/esm2022/lib/datatable/public-api.mjs +55 -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-data.interface.mjs +18 -0
- package/esm2022/lib/dialogs/dialog/dialog.component.mjs +70 -0
- package/esm2022/lib/dialogs/dialog/dialog.model.mjs +22 -0
- package/esm2022/lib/dialogs/dialog/index.mjs +20 -0
- package/esm2022/lib/dialogs/edit-json/edit-json.dialog.mjs +52 -0
- package/esm2022/lib/dialogs/edit-json/edit-json.dialog.module.mjs +34 -0
- package/esm2022/lib/dialogs/index.mjs +18 -0
- package/esm2022/lib/dialogs/public-api.mjs +25 -0
- package/esm2022/lib/dialogs/unsaved-changes-dialog/unsaved-changes-dialog.component.mjs +73 -0
- package/esm2022/lib/dialogs/unsaved-changes-dialog/unsaved-changes-dialog.model.mjs +18 -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/index.mjs +18 -0
- package/esm2022/lib/directives/infinite-select-scroll.directive.mjs +67 -0
- package/esm2022/lib/directives/logout.directive.mjs +72 -0
- package/esm2022/lib/directives/public-api.mjs +24 -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/chip.mjs +18 -0
- package/esm2022/lib/dynamic-chip-list/dynamic-chip-list.component.mjs +204 -0
- package/esm2022/lib/dynamic-chip-list/dynamic-chip-list.module.mjs +33 -0
- package/esm2022/lib/dynamic-chip-list/index.mjs +18 -0
- package/esm2022/lib/dynamic-chip-list/public-api.mjs +20 -0
- package/esm2022/lib/events/base-ui.event.mjs +21 -0
- package/esm2022/lib/events/base.event.mjs +29 -0
- package/esm2022/lib/events/index.mjs +18 -0
- package/esm2022/lib/events/public-api.mjs +19 -0
- package/esm2022/lib/form/components/form-base.component.mjs +212 -0
- package/esm2022/lib/form/components/form-custom-button.directive.mjs +30 -0
- package/esm2022/lib/form/components/form-field/form-field.component.mjs +142 -0
- package/esm2022/lib/form/components/form-renderer.component.mjs +161 -0
- package/esm2022/lib/form/components/form-section/form-section.component.mjs +46 -0
- package/esm2022/lib/form/components/helpers/buttons-visibility.mjs +37 -0
- package/esm2022/lib/form/components/inplace-form-input/inplace-form-input.component.mjs +37 -0
- package/esm2022/lib/form/components/middlewares/decimal-middleware.service.mjs +48 -0
- package/esm2022/lib/form/components/middlewares/middleware.mjs +19 -0
- package/esm2022/lib/form/components/widgets/amount/amount.widget.mjs +77 -0
- package/esm2022/lib/form/components/widgets/base-viewer/base-viewer.widget.mjs +59 -0
- package/esm2022/lib/form/components/widgets/checkbox/checkbox.widget.mjs +52 -0
- package/esm2022/lib/form/components/widgets/core/container-column.model.mjs +28 -0
- package/esm2022/lib/form/components/widgets/core/container.model.mjs +50 -0
- package/esm2022/lib/form/components/widgets/core/content-link.model.mjs +52 -0
- package/esm2022/lib/form/components/widgets/core/displayable-cm-properties.model.mjs +18 -0
- package/esm2022/lib/form/components/widgets/core/error-message.model.mjs +38 -0
- package/esm2022/lib/form/components/widgets/core/external-content-link.mjs +18 -0
- package/esm2022/lib/form/components/widgets/core/external-content.mjs +18 -0
- package/esm2022/lib/form/components/widgets/core/form-field-file-source.mjs +18 -0
- package/esm2022/lib/form/components/widgets/core/form-field-metadata.mjs +18 -0
- package/esm2022/lib/form/components/widgets/core/form-field-option.mjs +18 -0
- package/esm2022/lib/form/components/widgets/core/form-field-rule.mjs +18 -0
- package/esm2022/lib/form/components/widgets/core/form-field-selected-folder.mjs +18 -0
- package/esm2022/lib/form/components/widgets/core/form-field-templates.mjs +18 -0
- package/esm2022/lib/form/components/widgets/core/form-field-types.mjs +74 -0
- package/esm2022/lib/form/components/widgets/core/form-field-utils.mjs +23 -0
- package/esm2022/lib/form/components/widgets/core/form-field-validator.mjs +268 -0
- package/esm2022/lib/form/components/widgets/core/form-field-variable-options.mjs +18 -0
- package/esm2022/lib/form/components/widgets/core/form-field.model.mjs +490 -0
- package/esm2022/lib/form/components/widgets/core/form-outcome-event.model.mjs +32 -0
- package/esm2022/lib/form/components/widgets/core/form-outcome.model.mjs +38 -0
- package/esm2022/lib/form/components/widgets/core/form-values.mjs +18 -0
- package/esm2022/lib/form/components/widgets/core/form-variable.model.mjs +18 -0
- package/esm2022/lib/form/components/widgets/core/form-widget.model.mjs +33 -0
- package/esm2022/lib/form/components/widgets/core/form.model.mjs +387 -0
- package/esm2022/lib/form/components/widgets/core/group.model.mjs +18 -0
- package/esm2022/lib/form/components/widgets/core/index.mjs +49 -0
- package/esm2022/lib/form/components/widgets/core/predefined-theme.mjs +115 -0
- package/esm2022/lib/form/components/widgets/core/process-form-model.interface.mjs +18 -0
- package/esm2022/lib/form/components/widgets/core/process-variable.model.mjs +18 -0
- package/esm2022/lib/form/components/widgets/core/tab.model.mjs +34 -0
- package/esm2022/lib/form/components/widgets/core/theme.model.mjs +18 -0
- package/esm2022/lib/form/components/widgets/core/upload-widget-content-link.model.mjs +27 -0
- package/esm2022/lib/form/components/widgets/core/widget-schema.model.mjs +18 -0
- package/esm2022/lib/form/components/widgets/date/date.widget.mjs +162 -0
- package/esm2022/lib/form/components/widgets/date-time/date-time.widget.mjs +153 -0
- package/esm2022/lib/form/components/widgets/decimal/decimal.component.mjs +53 -0
- package/esm2022/lib/form/components/widgets/display-text/display-text.schema.mjs +86 -0
- package/esm2022/lib/form/components/widgets/display-text/display-text.widget.mjs +46 -0
- package/esm2022/lib/form/components/widgets/display-text/index.mjs +19 -0
- package/esm2022/lib/form/components/widgets/error/error.component.mjs +92 -0
- package/esm2022/lib/form/components/widgets/header/header.schema.mjs +86 -0
- package/esm2022/lib/form/components/widgets/header/header.widget.mjs +42 -0
- package/esm2022/lib/form/components/widgets/header/index.mjs +19 -0
- package/esm2022/lib/form/components/widgets/hyperlink/hyperlink.widget.mjs +69 -0
- package/esm2022/lib/form/components/widgets/index.mjs +71 -0
- package/esm2022/lib/form/components/widgets/json/json.widget.mjs +66 -0
- package/esm2022/lib/form/components/widgets/multiline-text/multiline-text.widget.mjs +55 -0
- package/esm2022/lib/form/components/widgets/number/number.widget.mjs +71 -0
- package/esm2022/lib/form/components/widgets/reactive-widget.interface.mjs +18 -0
- package/esm2022/lib/form/components/widgets/text/text-mask.component.mjs +215 -0
- package/esm2022/lib/form/components/widgets/text/text.widget.mjs +65 -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/events/form-error.event.mjs +24 -0
- package/esm2022/lib/form/events/form-field.event.mjs +24 -0
- package/esm2022/lib/form/events/form-rules.event.mjs +25 -0
- package/esm2022/lib/form/events/form-spinner.event.mjs +23 -0
- package/esm2022/lib/form/events/form.event.mjs +29 -0
- package/esm2022/lib/form/events/index.mjs +24 -0
- package/esm2022/lib/form/events/validate-form-field.event.mjs +24 -0
- package/esm2022/lib/form/events/validate-form.event.mjs +25 -0
- package/esm2022/lib/form/form-base.module.mjs +75 -0
- package/esm2022/lib/form/index.mjs +18 -0
- package/esm2022/lib/form/models/form-rules.model.mjs +77 -0
- package/esm2022/lib/form/models/task-process-variable.model.mjs +19 -0
- package/esm2022/lib/form/models/widget-visibility.model.mjs +104 -0
- package/esm2022/lib/form/pipes/field-style.pipe.mjs +45 -0
- package/esm2022/lib/form/pipes/index.mjs +18 -0
- package/esm2022/lib/form/public-api.mjs +35 -0
- package/esm2022/lib/form/services/form-rendering.service.mjs +53 -0
- package/esm2022/lib/form/services/form-validation-service.interface.mjs +18 -0
- package/esm2022/lib/form/services/form.service.mjs +86 -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/index.mjs +18 -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/header/public-api.mjs +20 -0
- package/esm2022/lib/icon/icon.component.mjs +51 -0
- package/esm2022/lib/icon/icon.module.mjs +36 -0
- package/esm2022/lib/icon/index.mjs +18 -0
- package/esm2022/lib/icon/public-api.mjs +19 -0
- package/esm2022/lib/identity-user-info/identity-user-info.component.mjs +86 -0
- package/esm2022/lib/identity-user-info/identity-user-info.module.mjs +33 -0
- package/esm2022/lib/identity-user-info/index.mjs +18 -0
- package/esm2022/lib/identity-user-info/public-api.mjs +19 -0
- package/esm2022/lib/info-drawer/index.mjs +18 -0
- package/esm2022/lib/info-drawer/info-drawer-layout.component.mjs +71 -0
- package/esm2022/lib/info-drawer/info-drawer.component.mjs +113 -0
- package/esm2022/lib/info-drawer/info-drawer.module.mjs +53 -0
- package/esm2022/lib/info-drawer/public-api.mjs +20 -0
- package/esm2022/lib/interface/index.mjs +18 -0
- package/esm2022/lib/interface/injection.tokens.mjs +19 -0
- package/esm2022/lib/interface/public-api.mjs +18 -0
- package/esm2022/lib/language-menu/index.mjs +18 -0
- package/esm2022/lib/language-menu/language-menu.component.mjs +61 -0
- package/esm2022/lib/language-menu/language-menu.module.mjs +35 -0
- package/esm2022/lib/language-menu/language-picker.component.mjs +77 -0
- package/esm2022/lib/language-menu/public-api.mjs +21 -0
- package/esm2022/lib/language-menu/service/language.service.interface.mjs +18 -0
- package/esm2022/lib/language-menu/service/language.service.mjs +34 -0
- package/esm2022/lib/layout/components/header/header.component.mjs +99 -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/index.mjs +18 -0
- package/esm2022/lib/layout/layout.module.mjs +72 -0
- package/esm2022/lib/layout/public-api.mjs +25 -0
- package/esm2022/lib/login/components/login/login.component.mjs +367 -0
- package/esm2022/lib/login/components/login-dialog/login-dialog-component-data.interface.mjs +18 -0
- package/esm2022/lib/login/components/login-dialog/login-dialog.component.mjs +57 -0
- package/esm2022/lib/login/components/login-dialog-panel/login-dialog-panel.component.mjs +48 -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/index.mjs +18 -0
- package/esm2022/lib/login/login.module.mjs +54 -0
- package/esm2022/lib/login/models/login-error.event.mjs +22 -0
- package/esm2022/lib/login/models/login-submit.event.mjs +32 -0
- package/esm2022/lib/login/models/login-success.event.mjs +24 -0
- package/esm2022/lib/login/public-api.mjs +27 -0
- package/esm2022/lib/material.module.mjs +254 -0
- package/esm2022/lib/mock/cookie.service.mock.mjs +43 -0
- package/esm2022/lib/mock/data-column.mock.mjs +73 -0
- package/esm2022/lib/mock/event.mock.mjs +39 -0
- package/esm2022/lib/mock/form/form-definition-readonly.mock.mjs +225 -0
- package/esm2022/lib/mock/form/form-definition-visibility.mock.mjs +347 -0
- package/esm2022/lib/mock/form/form-definition.mock.mjs +403 -0
- package/esm2022/lib/mock/form/form.component.mock.mjs +275 -0
- package/esm2022/lib/mock/form/form.service.mock.mjs +248 -0
- package/esm2022/lib/mock/form/widget-visibility.service.mock.mjs +1835 -0
- package/esm2022/lib/mock/index.mjs +18 -0
- package/esm2022/lib/mock/public-api.mjs +27 -0
- package/esm2022/lib/mock/translation.service.mock.mjs +44 -0
- package/esm2022/lib/models/comment.model.mjs +51 -0
- package/esm2022/lib/models/component.model.mjs +24 -0
- package/esm2022/lib/models/decimal-number.model.mjs +26 -0
- package/esm2022/lib/models/general-user.model.mjs +24 -0
- package/esm2022/lib/models/index.mjs +18 -0
- package/esm2022/lib/models/pagination.model.mjs +29 -0
- package/esm2022/lib/models/path.model.mjs +24 -0
- package/esm2022/lib/models/product-version.model.mjs +28 -0
- package/esm2022/lib/models/public-api.mjs +24 -0
- package/esm2022/lib/models/request-pagination.model.mjs +25 -0
- package/esm2022/lib/notifications/components/add-notification.stories.component.mjs +44 -0
- package/esm2022/lib/notifications/components/notification-history.component.mjs +138 -0
- package/esm2022/lib/notifications/helpers/notification.factory.mjs +43 -0
- package/esm2022/lib/notifications/index.mjs +18 -0
- package/esm2022/lib/notifications/models/notification.model.mjs +25 -0
- package/esm2022/lib/notifications/notification-history.module.mjs +35 -0
- package/esm2022/lib/notifications/public-api.mjs +23 -0
- package/esm2022/lib/notifications/services/notification.service.mjs +166 -0
- package/esm2022/lib/pagination/index.mjs +18 -0
- package/esm2022/lib/pagination/infinite-pagination.component.mjs +111 -0
- package/esm2022/lib/pagination/paginated-component.interface.mjs +18 -0
- package/esm2022/lib/pagination/pagination-component.interface.mjs +18 -0
- package/esm2022/lib/pagination/pagination.component.mjs +263 -0
- package/esm2022/lib/pagination/pagination.module.mjs +35 -0
- package/esm2022/lib/pagination/public-api.mjs +22 -0
- package/esm2022/lib/pipes/date-time.pipe.mjs +46 -0
- package/esm2022/lib/pipes/decimal-number.pipe.mjs +78 -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 +43 -0
- package/esm2022/lib/pipes/index.mjs +18 -0
- package/esm2022/lib/pipes/localized-date.pipe.mjs +70 -0
- package/esm2022/lib/pipes/multi-value.pipe.mjs +37 -0
- package/esm2022/lib/pipes/pipe.module.mjs +83 -0
- package/esm2022/lib/pipes/public-api.mjs +30 -0
- package/esm2022/lib/pipes/text-highlight.pipe.mjs +39 -0
- package/esm2022/lib/pipes/time-ago.pipe.mjs +65 -0
- package/esm2022/lib/pipes/truncate.pipe.mjs +33 -0
- package/esm2022/lib/pipes/user-initial.pipe.mjs +52 -0
- package/esm2022/lib/pipes/user-like.interface.mjs +18 -0
- package/esm2022/lib/progress/progress.component.mjs +90 -0
- package/esm2022/lib/search-text/animations.mjs +32 -0
- package/esm2022/lib/search-text/index.mjs +18 -0
- package/esm2022/lib/search-text/models/search-text-input.model.mjs +23 -0
- package/esm2022/lib/search-text/public-api.mjs +22 -0
- package/esm2022/lib/search-text/search-text-input.component.mjs +283 -0
- package/esm2022/lib/search-text/search-text-input.module.mjs +35 -0
- package/esm2022/lib/search-text/search-trigger.directive.mjs +181 -0
- package/esm2022/lib/snackbar-content/index.mjs +18 -0
- package/esm2022/lib/snackbar-content/public-api.mjs +20 -0
- package/esm2022/lib/snackbar-content/snack-bar-data.mjs +18 -0
- package/esm2022/lib/snackbar-content/snackbar-content.component.mjs +49 -0
- package/esm2022/lib/snackbar-content/snackbar-content.module.mjs +33 -0
- package/esm2022/lib/sorting-picker/index.mjs +18 -0
- package/esm2022/lib/sorting-picker/public-api.mjs +18 -0
- package/esm2022/lib/sorting-picker/sorting-picker.component.mjs +67 -0
- package/esm2022/lib/templates/empty-content/empty-content.component.mjs +43 -0
- package/esm2022/lib/templates/error-content/error-content.component.mjs +61 -0
- package/esm2022/lib/templates/index.mjs +18 -0
- package/esm2022/lib/templates/public-api.mjs +20 -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 +36 -0
- package/esm2022/lib/testing/index.mjs +22 -0
- package/esm2022/lib/testing/noop-auth.module.mjs +80 -0
- package/esm2022/lib/testing/noop-translate.module.mjs +75 -0
- package/esm2022/lib/testing/unit-testing-utils.mjs +364 -0
- package/esm2022/lib/toolbar/index.mjs +18 -0
- package/esm2022/lib/toolbar/public-api.mjs +21 -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 +39 -0
- package/esm2022/lib/toolbar/toolbar.module.mjs +36 -0
- package/esm2022/lib/translation/index.mjs +18 -0
- package/esm2022/lib/translation/public-api.mjs +19 -0
- package/esm2022/lib/translation/translate-loader.service.mjs +153 -0
- package/esm2022/lib/translation/translation.service.mjs +148 -0
- package/esm2022/lib/viewer/components/download-prompt-dialog/download-prompt-dialog.component.mjs +36 -0
- package/esm2022/lib/viewer/components/img-viewer/img-viewer.component.mjs +220 -0
- package/esm2022/lib/viewer/components/media-player/media-player.component.mjs +64 -0
- package/esm2022/lib/viewer/components/pdf-viewer/pdf-viewer.component.mjs +550 -0
- package/esm2022/lib/viewer/components/pdf-viewer-password-dialog/pdf-viewer-password-dialog.mjs +60 -0
- package/esm2022/lib/viewer/components/pdf-viewer-thumb/pdf-viewer-thumb.component.mjs +48 -0
- package/esm2022/lib/viewer/components/pdf-viewer-thumbnails/pdf-viewer-thumbnails.component.mjs +198 -0
- package/esm2022/lib/viewer/components/txt-viewer/txt-viewer.component.mjs +85 -0
- package/esm2022/lib/viewer/components/unknown-format/unknown-format.component.mjs +32 -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 +216 -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 +486 -0
- package/esm2022/lib/viewer/directives/viewer-extension.directive.mjs +67 -0
- package/esm2022/lib/viewer/index.mjs +18 -0
- package/esm2022/lib/viewer/models/download-prompt.actions.mjs +23 -0
- package/esm2022/lib/viewer/models/viewer.model.mjs +22 -0
- package/esm2022/lib/viewer/public-api.mjs +40 -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 +110 -0
- package/esm2022/public-api.mjs +60 -0
- package/esm2022/shell/alfresco-adf-core-shell.mjs +5 -0
- package/esm2022/shell/index.mjs +21 -0
- package/esm2022/shell/lib/components/shell/shell.component.mjs +122 -0
- package/esm2022/shell/lib/services/shell-app.service.mjs +22 -0
- package/esm2022/shell/lib/shell.module.mjs +75 -0
- package/esm2022/shell/lib/shell.routes.mjs +50 -0
- package/feature-flags/lib/providers/debug-feature-flags.provider.d.ts +35 -4
- package/fesm2022/adf-core.mjs +1083 -1101
- package/fesm2022/adf-core.mjs.map +1 -1
- package/fesm2022/alfresco-adf-core-api.mjs +4 -4
- package/fesm2022/alfresco-adf-core-api.mjs.map +1 -1
- package/fesm2022/alfresco-adf-core-auth.mjs +3 -3
- package/fesm2022/alfresco-adf-core-auth.mjs.map +1 -1
- package/fesm2022/alfresco-adf-core-breadcrumbs.mjs +11 -11
- package/fesm2022/alfresco-adf-core-breadcrumbs.mjs.map +1 -1
- package/fesm2022/alfresco-adf-core-feature-flags.mjs +59 -52
- package/fesm2022/alfresco-adf-core-feature-flags.mjs.map +1 -1
- package/fesm2022/alfresco-adf-core-shell.mjs +14 -68
- package/fesm2022/alfresco-adf-core-shell.mjs.map +1 -1
- package/lib/app-config/provide-app-config.d.ts +2 -2
- package/lib/auth/oidc/auth.module.d.ts +4 -4
- package/lib/auth/oidc/view/authentication-confirmation/authentication-confirmation.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.scss +9 -12
- package/lib/card-view/components/card-view-selectitem/card-view-selectitem.component.scss +2 -1
- package/lib/card-view/components/card-view-textitem/card-view-textitem.component.scss +5 -2
- package/lib/datatable/data/data-table.schema.d.ts +1 -1
- package/lib/dialogs/confirm-dialog/confirm.dialog.d.ts +1 -1
- package/lib/dialogs/confirm-dialog/confirm.dialog.module.d.ts +6 -2
- package/lib/form/components/form-renderer.component.scss +4 -5
- package/lib/translation/public-api.d.ts +0 -1
- package/package.json +15 -3
- package/public-api.d.ts +0 -1
- package/shell/README.md +3 -13
- package/shell/index.d.ts +0 -1
- package/shell/lib/shell.module.d.ts +1 -1
- package/lib/landing-page/index.d.ts +0 -17
- package/lib/landing-page/provider.d.ts +0 -24
- package/lib/landing-page/public-api.d.ts +0 -17
- package/lib/translation/provide-i18n.d.ts +0 -39
- package/shell/lib/providers.d.ts +0 -36
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright © 2005-2025 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 { APP_INITIALIZER } from '@angular/core';
|
|
18
|
+
import { FlagsOverrideToken, FeaturesServiceToken, WritableFeaturesServiceConfigToken, WritableFeaturesServiceToken } from '../interfaces/features.interface';
|
|
19
|
+
import { StorageFeaturesService } from '../services/storage-features.service';
|
|
20
|
+
import { DebugFeaturesService } from '../services/debug-features.service';
|
|
21
|
+
import { QaFeaturesHelper } from '../services/qa-features.helper';
|
|
22
|
+
import { DOCUMENT } from '@angular/common';
|
|
23
|
+
/**
|
|
24
|
+
*
|
|
25
|
+
* @param config Configuration for the Feature Flags
|
|
26
|
+
* @returns Environment Providers for Feature Flags
|
|
27
|
+
*/
|
|
28
|
+
export function provideDebugFeatureFlags(config) {
|
|
29
|
+
return [
|
|
30
|
+
{ provide: FlagsOverrideToken, useValue: true },
|
|
31
|
+
{ provide: FeaturesServiceToken, useClass: DebugFeaturesService },
|
|
32
|
+
{ provide: WritableFeaturesServiceConfigToken, useValue: config },
|
|
33
|
+
{ provide: WritableFeaturesServiceToken, useClass: StorageFeaturesService },
|
|
34
|
+
{ provide: QaFeaturesHelper, useClass: QaFeaturesHelper },
|
|
35
|
+
{
|
|
36
|
+
provide: APP_INITIALIZER,
|
|
37
|
+
useFactory: (featuresService) => () => featuresService.init(),
|
|
38
|
+
deps: [WritableFeaturesServiceToken],
|
|
39
|
+
multi: true
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
provide: APP_INITIALIZER,
|
|
43
|
+
useFactory: (qaFeaturesHelper, document) => () => {
|
|
44
|
+
document[config.helperExposeKeyOnDocument ?? 'featureOverrides'] = qaFeaturesHelper;
|
|
45
|
+
},
|
|
46
|
+
deps: [QaFeaturesHelper, DOCUMENT],
|
|
47
|
+
multi: true
|
|
48
|
+
}
|
|
49
|
+
];
|
|
50
|
+
}
|
|
51
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVidWctZmVhdHVyZS1mbGFncy5wcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYi9jb3JlL2ZlYXR1cmUtZmxhZ3Mvc3JjL2xpYi9wcm92aWRlcnMvZGVidWctZmVhdHVyZS1mbGFncy5wcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7O0dBZUc7QUFFSCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hELE9BQU8sRUFDSCxrQkFBa0IsRUFDbEIsb0JBQW9CLEVBR3BCLGtDQUFrQyxFQUNsQyw0QkFBNEIsRUFDL0IsTUFBTSxrQ0FBa0MsQ0FBQztBQUMxQyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUM5RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNsRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFM0M7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSx3QkFBd0IsQ0FBQyxNQUE4RDtJQUNuRyxPQUFPO1FBQ0gsRUFBRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRTtRQUMvQyxFQUFFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxRQUFRLEVBQUUsb0JBQW9CLEVBQUU7UUFDakUsRUFBRSxPQUFPLEVBQUUsa0NBQWtDLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRTtRQUNqRSxFQUFFLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxRQUFRLEVBQUUsc0JBQXNCLEVBQUU7UUFDM0UsRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsUUFBUSxFQUFFLGdCQUFnQixFQUFFO1FBQ3pEO1lBQ0ksT0FBTyxFQUFFLGVBQWU7WUFDeEIsVUFBVSxFQUFFLENBQUMsZUFBdUMsRUFBRSxFQUFFLENBQUMsR0FBRyxFQUFFLENBQUMsZUFBZSxDQUFDLElBQUksRUFBRTtZQUNyRixJQUFJLEVBQUUsQ0FBQyw0QkFBNEIsQ0FBQztZQUNwQyxLQUFLLEVBQUUsSUFBSTtTQUNkO1FBQ0Q7WUFDSSxPQUFPLEVBQUUsZUFBZTtZQUN4QixVQUFVLEVBQUUsQ0FBQyxnQkFBa0MsRUFBRSxRQUF3RCxFQUFFLEVBQUUsQ0FBQyxHQUFHLEVBQUU7Z0JBQy9HLFFBQVEsQ0FBQyxNQUFNLENBQUMseUJBQXlCLElBQUksa0JBQWtCLENBQUMsR0FBRyxnQkFBZ0IsQ0FBQztZQUN4RixDQUFDO1lBQ0QsSUFBSSxFQUFFLENBQUMsZ0JBQWdCLEVBQUUsUUFBUSxDQUFDO1lBQ2xDLEtBQUssRUFBRSxJQUFJO1NBQ2Q7S0FDSixDQUFDO0FBQ04sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCDCqSAyMDA1LTIwMjUgSHlsYW5kIFNvZnR3YXJlLCBJbmMuIGFuZCBpdHMgYWZmaWxpYXRlcy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuaW1wb3J0IHsgQVBQX0lOSVRJQUxJWkVSIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIEZsYWdzT3ZlcnJpZGVUb2tlbixcbiAgICBGZWF0dXJlc1NlcnZpY2VUb2tlbixcbiAgICBRYUZlYXR1cmVzSGVscGVyQ29uZmlnLFxuICAgIFdyaXRhYmxlRmVhdHVyZXNTZXJ2aWNlQ29uZmlnLFxuICAgIFdyaXRhYmxlRmVhdHVyZXNTZXJ2aWNlQ29uZmlnVG9rZW4sXG4gICAgV3JpdGFibGVGZWF0dXJlc1NlcnZpY2VUb2tlblxufSBmcm9tICcuLi9pbnRlcmZhY2VzL2ZlYXR1cmVzLmludGVyZmFjZSc7XG5pbXBvcnQgeyBTdG9yYWdlRmVhdHVyZXNTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvc3RvcmFnZS1mZWF0dXJlcy5zZXJ2aWNlJztcbmltcG9ydCB7IERlYnVnRmVhdHVyZXNTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvZGVidWctZmVhdHVyZXMuc2VydmljZSc7XG5pbXBvcnQgeyBRYUZlYXR1cmVzSGVscGVyIH0gZnJvbSAnLi4vc2VydmljZXMvcWEtZmVhdHVyZXMuaGVscGVyJztcbmltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuLyoqXG4gKlxuICogQHBhcmFtIGNvbmZpZyBDb25maWd1cmF0aW9uIGZvciB0aGUgRmVhdHVyZSBGbGFnc1xuICogQHJldHVybnMgRW52aXJvbm1lbnQgUHJvdmlkZXJzIGZvciBGZWF0dXJlIEZsYWdzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBwcm92aWRlRGVidWdGZWF0dXJlRmxhZ3MoY29uZmlnOiBXcml0YWJsZUZlYXR1cmVzU2VydmljZUNvbmZpZyAmIFFhRmVhdHVyZXNIZWxwZXJDb25maWcpIHtcbiAgICByZXR1cm4gW1xuICAgICAgICB7IHByb3ZpZGU6IEZsYWdzT3ZlcnJpZGVUb2tlbiwgdXNlVmFsdWU6IHRydWUgfSxcbiAgICAgICAgeyBwcm92aWRlOiBGZWF0dXJlc1NlcnZpY2VUb2tlbiwgdXNlQ2xhc3M6IERlYnVnRmVhdHVyZXNTZXJ2aWNlIH0sXG4gICAgICAgIHsgcHJvdmlkZTogV3JpdGFibGVGZWF0dXJlc1NlcnZpY2VDb25maWdUb2tlbiwgdXNlVmFsdWU6IGNvbmZpZyB9LFxuICAgICAgICB7IHByb3ZpZGU6IFdyaXRhYmxlRmVhdHVyZXNTZXJ2aWNlVG9rZW4sIHVzZUNsYXNzOiBTdG9yYWdlRmVhdHVyZXNTZXJ2aWNlIH0sXG4gICAgICAgIHsgcHJvdmlkZTogUWFGZWF0dXJlc0hlbHBlciwgdXNlQ2xhc3M6IFFhRmVhdHVyZXNIZWxwZXIgfSxcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogQVBQX0lOSVRJQUxJWkVSLFxuICAgICAgICAgICAgdXNlRmFjdG9yeTogKGZlYXR1cmVzU2VydmljZTogU3RvcmFnZUZlYXR1cmVzU2VydmljZSkgPT4gKCkgPT4gZmVhdHVyZXNTZXJ2aWNlLmluaXQoKSxcbiAgICAgICAgICAgIGRlcHM6IFtXcml0YWJsZUZlYXR1cmVzU2VydmljZVRva2VuXSxcbiAgICAgICAgICAgIG11bHRpOiB0cnVlXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IEFQUF9JTklUSUFMSVpFUixcbiAgICAgICAgICAgIHVzZUZhY3Rvcnk6IChxYUZlYXR1cmVzSGVscGVyOiBRYUZlYXR1cmVzSGVscGVyLCBkb2N1bWVudDogRG9jdW1lbnQgJiB7IFtrZXk6IHN0cmluZ106IFFhRmVhdHVyZXNIZWxwZXIgfSkgPT4gKCkgPT4ge1xuICAgICAgICAgICAgICAgIGRvY3VtZW50W2NvbmZpZy5oZWxwZXJFeHBvc2VLZXlPbkRvY3VtZW50ID8/ICdmZWF0dXJlT3ZlcnJpZGVzJ10gPSBxYUZlYXR1cmVzSGVscGVyO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGRlcHM6IFtRYUZlYXR1cmVzSGVscGVyLCBET0NVTUVOVF0sXG4gICAgICAgICAgICBtdWx0aTogdHJ1ZVxuICAgICAgICB9XG4gICAgXTtcbn1cbiJdfQ==
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright © 2005-2025 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 { IsFlagsOverrideOn } from '../guards/is-flags-override-on.guard';
|
|
18
|
+
import { IsFeatureOn } from '../guards/is-feature-on.guard';
|
|
19
|
+
import { IsFeatureOff } from '../guards/is-feature-off.guard';
|
|
20
|
+
import { FeaturesServiceToken, FlagsOverrideToken } from '../interfaces/features.interface';
|
|
21
|
+
import { DummyFeaturesService } from '../services/dummy-features.service';
|
|
22
|
+
/**
|
|
23
|
+
* Provides the dummy feature flags.
|
|
24
|
+
*
|
|
25
|
+
* @returns Environment Providers for Feature Flags.
|
|
26
|
+
*/
|
|
27
|
+
export function provideDummyFeatureFlags() {
|
|
28
|
+
return [
|
|
29
|
+
{ provide: FeaturesServiceToken, useClass: DummyFeaturesService },
|
|
30
|
+
{ provide: FlagsOverrideToken, useValue: false },
|
|
31
|
+
IsFeatureOn,
|
|
32
|
+
IsFeatureOff,
|
|
33
|
+
IsFlagsOverrideOn
|
|
34
|
+
];
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHVtbXktZmVhdHVyZS1mbGFncy5wcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYi9jb3JlL2ZlYXR1cmUtZmxhZ3Mvc3JjL2xpYi9wcm92aWRlcnMvZHVtbXktZmVhdHVyZS1mbGFncy5wcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7O0dBZUc7QUFFSCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUN6RSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDNUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzlELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQzVGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBRTFFOzs7O0dBSUc7QUFDSCxNQUFNLFVBQVUsd0JBQXdCO0lBQ3BDLE9BQU87UUFDSCxFQUFFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxRQUFRLEVBQUUsb0JBQW9CLEVBQUU7UUFDakUsRUFBRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRTtRQUNoRCxXQUFXO1FBQ1gsWUFBWTtRQUNaLGlCQUFpQjtLQUNwQixDQUFDO0FBQ04sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCDCqSAyMDA1LTIwMjUgSHlsYW5kIFNvZnR3YXJlLCBJbmMuIGFuZCBpdHMgYWZmaWxpYXRlcy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuaW1wb3J0IHsgSXNGbGFnc092ZXJyaWRlT24gfSBmcm9tICcuLi9ndWFyZHMvaXMtZmxhZ3Mtb3ZlcnJpZGUtb24uZ3VhcmQnO1xuaW1wb3J0IHsgSXNGZWF0dXJlT24gfSBmcm9tICcuLi9ndWFyZHMvaXMtZmVhdHVyZS1vbi5ndWFyZCc7XG5pbXBvcnQgeyBJc0ZlYXR1cmVPZmYgfSBmcm9tICcuLi9ndWFyZHMvaXMtZmVhdHVyZS1vZmYuZ3VhcmQnO1xuaW1wb3J0IHsgRmVhdHVyZXNTZXJ2aWNlVG9rZW4sIEZsYWdzT3ZlcnJpZGVUb2tlbiB9IGZyb20gJy4uL2ludGVyZmFjZXMvZmVhdHVyZXMuaW50ZXJmYWNlJztcbmltcG9ydCB7IER1bW15RmVhdHVyZXNTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvZHVtbXktZmVhdHVyZXMuc2VydmljZSc7XG5cbi8qKlxuICogUHJvdmlkZXMgdGhlIGR1bW15IGZlYXR1cmUgZmxhZ3MuXG4gKlxuICogQHJldHVybnMgRW52aXJvbm1lbnQgUHJvdmlkZXJzIGZvciBGZWF0dXJlIEZsYWdzLlxuICovXG5leHBvcnQgZnVuY3Rpb24gcHJvdmlkZUR1bW15RmVhdHVyZUZsYWdzKCkge1xuICAgIHJldHVybiBbXG4gICAgICAgIHsgcHJvdmlkZTogRmVhdHVyZXNTZXJ2aWNlVG9rZW4sIHVzZUNsYXNzOiBEdW1teUZlYXR1cmVzU2VydmljZSB9LFxuICAgICAgICB7IHByb3ZpZGU6IEZsYWdzT3ZlcnJpZGVUb2tlbiwgdXNlVmFsdWU6IGZhbHNlIH0sXG4gICAgICAgIElzRmVhdHVyZU9uLFxuICAgICAgICBJc0ZlYXR1cmVPZmYsXG4gICAgICAgIElzRmxhZ3NPdmVycmlkZU9uXG4gICAgXTtcbn1cbiJdfQ==
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright © 2005-2025 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 { Inject, Injectable, Optional } from '@angular/core';
|
|
18
|
+
import { BehaviorSubject, combineLatest } from 'rxjs';
|
|
19
|
+
import { filter, switchMap } from 'rxjs/operators';
|
|
20
|
+
import { OverridableFeaturesServiceToken, WritableFeaturesServiceToken, WritableFeaturesServiceConfigToken } from '../interfaces/features.interface';
|
|
21
|
+
import * as i0 from "@angular/core";
|
|
22
|
+
export class DebugFeaturesService {
|
|
23
|
+
get storageKey() {
|
|
24
|
+
return `${this.config?.storageKey || 'feature-flags'}-override`;
|
|
25
|
+
}
|
|
26
|
+
constructor(overriddenFeaturesService, writableFeaturesService, config) {
|
|
27
|
+
this.overriddenFeaturesService = overriddenFeaturesService;
|
|
28
|
+
this.writableFeaturesService = writableFeaturesService;
|
|
29
|
+
this.config = config;
|
|
30
|
+
this.isInDebugModeSubject = new BehaviorSubject(false);
|
|
31
|
+
this.isInDebugMode$ = this.isInDebugModeSubject.asObservable();
|
|
32
|
+
this.initSubject = new BehaviorSubject(false);
|
|
33
|
+
this.init();
|
|
34
|
+
combineLatest({
|
|
35
|
+
debugMode: this.isInDebugModeSubject,
|
|
36
|
+
init: this.waitForInitializationToFinish()
|
|
37
|
+
}).subscribe(({ debugMode }) => {
|
|
38
|
+
sessionStorage.setItem(this.storageKey, JSON.stringify(debugMode));
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
isOn$(key) {
|
|
42
|
+
return this.isInDebugMode$.pipe(switchMap((isInDebugMode) => (isInDebugMode ? this.writableFeaturesService : this.overriddenFeaturesService).isOn$(key)));
|
|
43
|
+
}
|
|
44
|
+
isOff$(key) {
|
|
45
|
+
return this.isInDebugMode$.pipe(switchMap((isInDebugMode) => (isInDebugMode ? this.writableFeaturesService : this.overriddenFeaturesService).isOff$(key)));
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Gets the flags as an observable.
|
|
49
|
+
*
|
|
50
|
+
* @returns the observable that emits the flag changeset.
|
|
51
|
+
*/
|
|
52
|
+
getFlags$() {
|
|
53
|
+
return this.isInDebugMode$.pipe(switchMap((isInDebugMode) => (isInDebugMode ? this.writableFeaturesService : this.overriddenFeaturesService).getFlags$()));
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Resets the specified flags.
|
|
57
|
+
*
|
|
58
|
+
* @param flags The flags to reset.
|
|
59
|
+
*/
|
|
60
|
+
resetFlags(flags) {
|
|
61
|
+
this.writableFeaturesService.resetFlags(flags);
|
|
62
|
+
}
|
|
63
|
+
enable(on) {
|
|
64
|
+
this.isInDebugModeSubject.next(on);
|
|
65
|
+
}
|
|
66
|
+
isEnabled$() {
|
|
67
|
+
return this.isInDebugMode$;
|
|
68
|
+
}
|
|
69
|
+
init() {
|
|
70
|
+
const storedOverride = JSON.parse(sessionStorage.getItem(this.storageKey) || 'false');
|
|
71
|
+
this.isInDebugModeSubject.next(storedOverride);
|
|
72
|
+
this.initSubject.next(true);
|
|
73
|
+
}
|
|
74
|
+
waitForInitializationToFinish() {
|
|
75
|
+
return this.initSubject.pipe(filter((initialized) => !!initialized));
|
|
76
|
+
}
|
|
77
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DebugFeaturesService, deps: [{ token: OverridableFeaturesServiceToken }, { token: WritableFeaturesServiceToken }, { token: WritableFeaturesServiceConfigToken, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
78
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DebugFeaturesService }); }
|
|
79
|
+
}
|
|
80
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DebugFeaturesService, decorators: [{
|
|
81
|
+
type: Injectable
|
|
82
|
+
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
83
|
+
type: Inject,
|
|
84
|
+
args: [OverridableFeaturesServiceToken]
|
|
85
|
+
}] }, { type: undefined, decorators: [{
|
|
86
|
+
type: Inject,
|
|
87
|
+
args: [WritableFeaturesServiceToken]
|
|
88
|
+
}] }, { type: undefined, decorators: [{
|
|
89
|
+
type: Optional
|
|
90
|
+
}, {
|
|
91
|
+
type: Inject,
|
|
92
|
+
args: [WritableFeaturesServiceConfigToken]
|
|
93
|
+
}] }] });
|
|
94
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVidWctZmVhdHVyZXMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYi9jb3JlL2ZlYXR1cmUtZmxhZ3Mvc3JjL2xpYi9zZXJ2aWNlcy9kZWJ1Zy1mZWF0dXJlcy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7R0FlRztBQUVILE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RCxPQUFPLEVBQUUsZUFBZSxFQUFjLGFBQWEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNsRSxPQUFPLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ25ELE9BQU8sRUFJSCwrQkFBK0IsRUFDL0IsNEJBQTRCLEVBQzVCLGtDQUFrQyxFQUlyQyxNQUFNLGtDQUFrQyxDQUFDOztBQUcxQyxNQUFNLE9BQU8sb0JBQW9CO0lBSzdCLElBQUksVUFBVTtRQUNWLE9BQU8sR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLFVBQVUsSUFBSSxlQUFlLFdBQVcsQ0FBQztJQUNwRSxDQUFDO0lBRUQsWUFDcUQseUJBQTJDLEVBQzlDLHVCQUFvRSxFQUNsRCxNQUFzQztRQUZyRCw4QkFBeUIsR0FBekIseUJBQXlCLENBQWtCO1FBQzlDLDRCQUF1QixHQUF2Qix1QkFBdUIsQ0FBNkM7UUFDbEQsV0FBTSxHQUFOLE1BQU0sQ0FBZ0M7UUFYekYseUJBQW9CLEdBQUcsSUFBSSxlQUFlLENBQVUsS0FBSyxDQUFDLENBQUM7UUFDM0QsbUJBQWMsR0FBRyxJQUFJLENBQUMsb0JBQW9CLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDMUQsZ0JBQVcsR0FBRyxJQUFJLGVBQWUsQ0FBVSxLQUFLLENBQUMsQ0FBQztRQVcvRCxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFFWixhQUFhLENBQUM7WUFDVixTQUFTLEVBQUUsSUFBSSxDQUFDLG9CQUFvQjtZQUNwQyxJQUFJLEVBQUUsSUFBSSxDQUFDLDZCQUE2QixFQUFFO1NBQzdDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUU7WUFDM0IsY0FBYyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztRQUN2RSxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxLQUFLLENBQUMsR0FBVztRQUNiLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQzNCLFNBQVMsQ0FBQyxDQUFDLGFBQWEsRUFBRSxFQUFFLENBQUMsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLHlCQUF5QixDQUFDLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQzNILENBQUM7SUFDTixDQUFDO0lBRUQsTUFBTSxDQUFDLEdBQVc7UUFDZCxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUMzQixTQUFTLENBQUMsQ0FBQyxhQUFhLEVBQUUsRUFBRSxDQUFDLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsdUJBQXVCLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUM1SCxDQUFDO0lBQ04sQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxTQUFTO1FBQ0wsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FDM0IsU0FBUyxDQUFDLENBQUMsYUFBYSxFQUFFLEVBQUUsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLHVCQUF1QixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMseUJBQXlCLENBQUMsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUM1SCxDQUFDO0lBQ04sQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxVQUFVLENBQUMsS0FBYztRQUNyQixJQUFJLENBQUMsdUJBQXVCLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFFRCxNQUFNLENBQUMsRUFBVztRQUNkLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVELFVBQVU7UUFDTixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUM7SUFDL0IsQ0FBQztJQUVPLElBQUk7UUFDUixNQUFNLGNBQWMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxDQUFDO1FBQ3RGLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDL0MsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVPLDZCQUE2QjtRQUNqQyxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7SUFDekUsQ0FBQzsrR0F4RVEsb0JBQW9CLGtCQVVqQiwrQkFBK0IsYUFDL0IsNEJBQTRCLGFBQ2hCLGtDQUFrQzttSEFaakQsb0JBQW9COzs0RkFBcEIsb0JBQW9CO2tCQURoQyxVQUFVOzswQkFXRixNQUFNOzJCQUFDLCtCQUErQjs7MEJBQ3RDLE1BQU07MkJBQUMsNEJBQTRCOzswQkFDbkMsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxrQ0FBa0MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgwqkgMjAwNS0yMDI1IEh5bGFuZCBTb2Z0d2FyZSwgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSwgY29tYmluZUxhdGVzdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZmlsdGVyLCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge1xuICAgIElEZWJ1Z0ZlYXR1cmVzU2VydmljZSxcbiAgICBJRmVhdHVyZXNTZXJ2aWNlLFxuICAgIEZsYWdDaGFuZ2VzZXQsXG4gICAgT3ZlcnJpZGFibGVGZWF0dXJlc1NlcnZpY2VUb2tlbixcbiAgICBXcml0YWJsZUZlYXR1cmVzU2VydmljZVRva2VuLFxuICAgIFdyaXRhYmxlRmVhdHVyZXNTZXJ2aWNlQ29uZmlnVG9rZW4sXG4gICAgV3JpdGFibGVGZWF0dXJlc1NlcnZpY2VDb25maWcsXG4gICAgRmxhZ1NldCxcbiAgICBJV3JpdGFibGVGZWF0dXJlc1NlcnZpY2Vcbn0gZnJvbSAnLi4vaW50ZXJmYWNlcy9mZWF0dXJlcy5pbnRlcmZhY2UnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRGVidWdGZWF0dXJlc1NlcnZpY2UgaW1wbGVtZW50cyBJRGVidWdGZWF0dXJlc1NlcnZpY2Uge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgaXNJbkRlYnVnTW9kZVN1YmplY3QgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGlzSW5EZWJ1Z01vZGUkID0gdGhpcy5pc0luRGVidWdNb2RlU3ViamVjdC5hc09ic2VydmFibGUoKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGluaXRTdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG5cbiAgICBnZXQgc3RvcmFnZUtleSgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gYCR7dGhpcy5jb25maWc/LnN0b3JhZ2VLZXkgfHwgJ2ZlYXR1cmUtZmxhZ3MnfS1vdmVycmlkZWA7XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBJbmplY3QoT3ZlcnJpZGFibGVGZWF0dXJlc1NlcnZpY2VUb2tlbikgcHJpdmF0ZSBvdmVycmlkZGVuRmVhdHVyZXNTZXJ2aWNlOiBJRmVhdHVyZXNTZXJ2aWNlLFxuICAgICAgICBASW5qZWN0KFdyaXRhYmxlRmVhdHVyZXNTZXJ2aWNlVG9rZW4pIHByaXZhdGUgd3JpdGFibGVGZWF0dXJlc1NlcnZpY2U6IElGZWF0dXJlc1NlcnZpY2UgJiBJV3JpdGFibGVGZWF0dXJlc1NlcnZpY2UsXG4gICAgICAgIEBPcHRpb25hbCgpIEBJbmplY3QoV3JpdGFibGVGZWF0dXJlc1NlcnZpY2VDb25maWdUb2tlbikgcHJpdmF0ZSBjb25maWc/OiBXcml0YWJsZUZlYXR1cmVzU2VydmljZUNvbmZpZ1xuICAgICkge1xuICAgICAgICB0aGlzLmluaXQoKTtcblxuICAgICAgICBjb21iaW5lTGF0ZXN0KHtcbiAgICAgICAgICAgIGRlYnVnTW9kZTogdGhpcy5pc0luRGVidWdNb2RlU3ViamVjdCxcbiAgICAgICAgICAgIGluaXQ6IHRoaXMud2FpdEZvckluaXRpYWxpemF0aW9uVG9GaW5pc2goKVxuICAgICAgICB9KS5zdWJzY3JpYmUoKHsgZGVidWdNb2RlIH0pID0+IHtcbiAgICAgICAgICAgIHNlc3Npb25TdG9yYWdlLnNldEl0ZW0odGhpcy5zdG9yYWdlS2V5LCBKU09OLnN0cmluZ2lmeShkZWJ1Z01vZGUpKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgaXNPbiQoa2V5OiBzdHJpbmcpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaXNJbkRlYnVnTW9kZSQucGlwZShcbiAgICAgICAgICAgIHN3aXRjaE1hcCgoaXNJbkRlYnVnTW9kZSkgPT4gKGlzSW5EZWJ1Z01vZGUgPyB0aGlzLndyaXRhYmxlRmVhdHVyZXNTZXJ2aWNlIDogdGhpcy5vdmVycmlkZGVuRmVhdHVyZXNTZXJ2aWNlKS5pc09uJChrZXkpKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIGlzT2ZmJChrZXk6IHN0cmluZyk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5pc0luRGVidWdNb2RlJC5waXBlKFxuICAgICAgICAgICAgc3dpdGNoTWFwKChpc0luRGVidWdNb2RlKSA9PiAoaXNJbkRlYnVnTW9kZSA/IHRoaXMud3JpdGFibGVGZWF0dXJlc1NlcnZpY2UgOiB0aGlzLm92ZXJyaWRkZW5GZWF0dXJlc1NlcnZpY2UpLmlzT2ZmJChrZXkpKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEdldHMgdGhlIGZsYWdzIGFzIGFuIG9ic2VydmFibGUuXG4gICAgICpcbiAgICAgKiBAcmV0dXJucyB0aGUgb2JzZXJ2YWJsZSB0aGF0IGVtaXRzIHRoZSBmbGFnIGNoYW5nZXNldC5cbiAgICAgKi9cbiAgICBnZXRGbGFncyQoKTogT2JzZXJ2YWJsZTxGbGFnQ2hhbmdlc2V0PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmlzSW5EZWJ1Z01vZGUkLnBpcGUoXG4gICAgICAgICAgICBzd2l0Y2hNYXAoKGlzSW5EZWJ1Z01vZGUpID0+IChpc0luRGVidWdNb2RlID8gdGhpcy53cml0YWJsZUZlYXR1cmVzU2VydmljZSA6IHRoaXMub3ZlcnJpZGRlbkZlYXR1cmVzU2VydmljZSkuZ2V0RmxhZ3MkKCkpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVzZXRzIHRoZSBzcGVjaWZpZWQgZmxhZ3MuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gZmxhZ3MgVGhlIGZsYWdzIHRvIHJlc2V0LlxuICAgICAqL1xuICAgIHJlc2V0RmxhZ3MoZmxhZ3M6IEZsYWdTZXQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy53cml0YWJsZUZlYXR1cmVzU2VydmljZS5yZXNldEZsYWdzKGZsYWdzKTtcbiAgICB9XG5cbiAgICBlbmFibGUob246IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pc0luRGVidWdNb2RlU3ViamVjdC5uZXh0KG9uKTtcbiAgICB9XG5cbiAgICBpc0VuYWJsZWQkKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5pc0luRGVidWdNb2RlJDtcbiAgICB9XG5cbiAgICBwcml2YXRlIGluaXQoKSB7XG4gICAgICAgIGNvbnN0IHN0b3JlZE92ZXJyaWRlID0gSlNPTi5wYXJzZShzZXNzaW9uU3RvcmFnZS5nZXRJdGVtKHRoaXMuc3RvcmFnZUtleSkgfHwgJ2ZhbHNlJyk7XG4gICAgICAgIHRoaXMuaXNJbkRlYnVnTW9kZVN1YmplY3QubmV4dChzdG9yZWRPdmVycmlkZSk7XG4gICAgICAgIHRoaXMuaW5pdFN1YmplY3QubmV4dCh0cnVlKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHdhaXRGb3JJbml0aWFsaXphdGlvblRvRmluaXNoKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5pbml0U3ViamVjdC5waXBlKGZpbHRlcigoaW5pdGlhbGl6ZWQpID0+ICEhaW5pdGlhbGl6ZWQpKTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright © 2005-2025 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
|
+
/* eslint-disable @typescript-eslint/no-unused-vars */
|
|
18
|
+
import { Injectable } from '@angular/core';
|
|
19
|
+
import { of } from 'rxjs';
|
|
20
|
+
import * as i0 from "@angular/core";
|
|
21
|
+
export class DummyFeaturesService {
|
|
22
|
+
init() {
|
|
23
|
+
return of();
|
|
24
|
+
}
|
|
25
|
+
isOn$() {
|
|
26
|
+
return of(false);
|
|
27
|
+
}
|
|
28
|
+
isOff$(_key) {
|
|
29
|
+
return of(true);
|
|
30
|
+
}
|
|
31
|
+
getFlags$() {
|
|
32
|
+
return of({});
|
|
33
|
+
}
|
|
34
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DummyFeaturesService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
35
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DummyFeaturesService }); }
|
|
36
|
+
}
|
|
37
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DummyFeaturesService, decorators: [{
|
|
38
|
+
type: Injectable
|
|
39
|
+
}] });
|
|
40
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHVtbXktZmVhdHVyZXMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYi9jb3JlL2ZlYXR1cmUtZmxhZ3Mvc3JjL2xpYi9zZXJ2aWNlcy9kdW1teS1mZWF0dXJlcy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7R0FlRztBQUVILHNEQUFzRDtBQUN0RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7O0FBSXRDLE1BQU0sT0FBTyxvQkFBb0I7SUFDN0IsSUFBSTtRQUNBLE9BQU8sRUFBRSxFQUFFLENBQUM7SUFDaEIsQ0FBQztJQUVELEtBQUs7UUFDRCxPQUFPLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRUQsTUFBTSxDQUFDLElBQVk7UUFDZixPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNwQixDQUFDO0lBRUQsU0FBUztRQUNMLE9BQU8sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ2xCLENBQUM7K0dBZlEsb0JBQW9CO21IQUFwQixvQkFBb0I7OzRGQUFwQixvQkFBb0I7a0JBRGhDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgwqkgMjAwNS0yMDI1IEh5bGFuZCBTb2Z0d2FyZSwgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFycyAqL1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IElGZWF0dXJlc1NlcnZpY2UsIEZsYWdDaGFuZ2VzZXQgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2ZlYXR1cmVzLmludGVyZmFjZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBEdW1teUZlYXR1cmVzU2VydmljZSBpbXBsZW1lbnRzIElGZWF0dXJlc1NlcnZpY2Uge1xuICAgIGluaXQoKTogT2JzZXJ2YWJsZTxGbGFnQ2hhbmdlc2V0PiB7XG4gICAgICAgIHJldHVybiBvZigpO1xuICAgIH1cblxuICAgIGlzT24kKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgICAgICByZXR1cm4gb2YoZmFsc2UpO1xuICAgIH1cblxuICAgIGlzT2ZmJChfa2V5OiBzdHJpbmcpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICAgICAgcmV0dXJuIG9mKHRydWUpO1xuICAgIH1cblxuICAgIGdldEZsYWdzJCgpOiBPYnNlcnZhYmxlPEZsYWdDaGFuZ2VzZXQ+IHtcbiAgICAgICAgcmV0dXJuIG9mKHt9KTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright © 2005-2025 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
|
+
export class FlagSetParser {
|
|
18
|
+
static serialize(flags) {
|
|
19
|
+
return Object.keys(flags).reduce((acc, key) => ({
|
|
20
|
+
...acc,
|
|
21
|
+
[key]: {
|
|
22
|
+
current: flags[key].current,
|
|
23
|
+
fictive: flags[key].fictive
|
|
24
|
+
}
|
|
25
|
+
}), {});
|
|
26
|
+
}
|
|
27
|
+
static deserialize(serializedFlags) {
|
|
28
|
+
return Object.keys(serializedFlags).reduce((acc, key) => ({
|
|
29
|
+
...acc,
|
|
30
|
+
[key]: {
|
|
31
|
+
current: serializedFlags[key].current,
|
|
32
|
+
previous: null,
|
|
33
|
+
...(serializedFlags[key].fictive ? { fictive: true } : {})
|
|
34
|
+
}
|
|
35
|
+
}), {});
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmxhZ3NldC5wYXJzZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWIvY29yZS9mZWF0dXJlLWZsYWdzL3NyYy9saWIvc2VydmljZXMvZmxhZ3NldC5wYXJzZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBV0gsTUFBTSxPQUFPLGFBQWE7SUFDdEIsTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUE0QjtRQUN6QyxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsTUFBTSxDQUM1QixDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDWCxHQUFHLEdBQUc7WUFDTixDQUFDLEdBQUcsQ0FBQyxFQUFFO2dCQUNILE9BQU8sRUFBRSxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsT0FBTztnQkFDM0IsT0FBTyxFQUFFLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxPQUFPO2FBQzlCO1NBQ0osQ0FBQyxFQUNGLEVBQUUsQ0FDTCxDQUFDO0lBQ04sQ0FBQztJQUVELE1BQU0sQ0FBQyxXQUFXLENBQUMsZUFBa0M7UUFDakQsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDLE1BQU0sQ0FDdEMsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ1gsR0FBRyxHQUFHO1lBQ04sQ0FBQyxHQUFHLENBQUMsRUFBRTtnQkFDSCxPQUFPLEVBQUUsZUFBZSxDQUFDLEdBQUcsQ0FBQyxDQUFDLE9BQU87Z0JBQ3JDLFFBQVEsRUFBRSxJQUFJO2dCQUNkLEdBQUcsQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO2FBQzdEO1NBQ0osQ0FBQyxFQUNGLEVBQUUsQ0FDTCxDQUFDO0lBQ04sQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiLyohXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IMKpIDIwMDUtMjAyNSBIeWxhbmQgU29mdHdhcmUsIEluYy4gYW5kIGl0cyBhZmZpbGlhdGVzLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQgeyBXcml0YWJsZUZsYWdDaGFuZ2VzZXQgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2ZlYXR1cmVzLmludGVyZmFjZSc7XG5cbmludGVyZmFjZSBTZXJpYWxpemVkRmxhZ1NldCB7XG4gICAgW2tleTogc3RyaW5nXToge1xuICAgICAgICBjdXJyZW50OiBib29sZWFuO1xuICAgICAgICBmaWN0aXZlPzogYm9vbGVhbjtcbiAgICB9O1xufVxuXG5leHBvcnQgY2xhc3MgRmxhZ1NldFBhcnNlciB7XG4gICAgc3RhdGljIHNlcmlhbGl6ZShmbGFnczogV3JpdGFibGVGbGFnQ2hhbmdlc2V0KTogU2VyaWFsaXplZEZsYWdTZXQge1xuICAgICAgICByZXR1cm4gT2JqZWN0LmtleXMoZmxhZ3MpLnJlZHVjZShcbiAgICAgICAgICAgIChhY2MsIGtleSkgPT4gKHtcbiAgICAgICAgICAgICAgICAuLi5hY2MsXG4gICAgICAgICAgICAgICAgW2tleV06IHtcbiAgICAgICAgICAgICAgICAgICAgY3VycmVudDogZmxhZ3Nba2V5XS5jdXJyZW50LFxuICAgICAgICAgICAgICAgICAgICBmaWN0aXZlOiBmbGFnc1trZXldLmZpY3RpdmVcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIHt9XG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgc3RhdGljIGRlc2VyaWFsaXplKHNlcmlhbGl6ZWRGbGFnczogU2VyaWFsaXplZEZsYWdTZXQpOiBXcml0YWJsZUZsYWdDaGFuZ2VzZXQge1xuICAgICAgICByZXR1cm4gT2JqZWN0LmtleXMoc2VyaWFsaXplZEZsYWdzKS5yZWR1Y2UoXG4gICAgICAgICAgICAoYWNjLCBrZXkpID0+ICh7XG4gICAgICAgICAgICAgICAgLi4uYWNjLFxuICAgICAgICAgICAgICAgIFtrZXldOiB7XG4gICAgICAgICAgICAgICAgICAgIGN1cnJlbnQ6IHNlcmlhbGl6ZWRGbGFnc1trZXldLmN1cnJlbnQsXG4gICAgICAgICAgICAgICAgICAgIHByZXZpb3VzOiBudWxsLFxuICAgICAgICAgICAgICAgICAgICAuLi4oc2VyaWFsaXplZEZsYWdzW2tleV0uZmljdGl2ZSA/IHsgZmljdGl2ZTogdHJ1ZSB9IDoge30pXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICB7fVxuICAgICAgICApO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright © 2005-2025 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 { ApplicationRef, Inject, Injectable } from '@angular/core';
|
|
18
|
+
import { FeaturesServiceToken } from '../interfaces/features.interface';
|
|
19
|
+
import { DebugFeaturesService } from './debug-features.service';
|
|
20
|
+
import * as i0 from "@angular/core";
|
|
21
|
+
import * as i1 from "./debug-features.service";
|
|
22
|
+
export class QaFeaturesHelper {
|
|
23
|
+
constructor(applicationRef, debugFeaturesService) {
|
|
24
|
+
this.applicationRef = applicationRef;
|
|
25
|
+
this.debugFeaturesService = debugFeaturesService;
|
|
26
|
+
}
|
|
27
|
+
isOn(key) {
|
|
28
|
+
let isOn = false;
|
|
29
|
+
this.debugFeaturesService.isOn$(key).subscribe((on) => {
|
|
30
|
+
isOn = on;
|
|
31
|
+
});
|
|
32
|
+
return isOn;
|
|
33
|
+
}
|
|
34
|
+
resetFlags(flags) {
|
|
35
|
+
this.debugFeaturesService.resetFlags(flags);
|
|
36
|
+
this.applicationRef.tick();
|
|
37
|
+
}
|
|
38
|
+
enable() {
|
|
39
|
+
this.debugFeaturesService.enable(true);
|
|
40
|
+
this.applicationRef.tick();
|
|
41
|
+
}
|
|
42
|
+
disable() {
|
|
43
|
+
this.debugFeaturesService.enable(false);
|
|
44
|
+
this.applicationRef.tick();
|
|
45
|
+
}
|
|
46
|
+
isEnabled() {
|
|
47
|
+
let enabled = false;
|
|
48
|
+
this.debugFeaturesService.isEnabled$().subscribe((isEnabled) => {
|
|
49
|
+
enabled = isEnabled;
|
|
50
|
+
});
|
|
51
|
+
return enabled;
|
|
52
|
+
}
|
|
53
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: QaFeaturesHelper, deps: [{ token: i0.ApplicationRef }, { token: FeaturesServiceToken }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
54
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: QaFeaturesHelper }); }
|
|
55
|
+
}
|
|
56
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: QaFeaturesHelper, decorators: [{
|
|
57
|
+
type: Injectable
|
|
58
|
+
}], ctorParameters: () => [{ type: i0.ApplicationRef }, { type: i1.DebugFeaturesService, decorators: [{
|
|
59
|
+
type: Inject,
|
|
60
|
+
args: [FeaturesServiceToken]
|
|
61
|
+
}] }] });
|
|
62
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicWEtZmVhdHVyZXMuaGVscGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGliL2NvcmUvZmVhdHVyZS1mbGFncy9zcmMvbGliL3NlcnZpY2VzL3FhLWZlYXR1cmVzLmhlbHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7O0dBZUc7QUFFSCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkUsT0FBTyxFQUFFLG9CQUFvQixFQUFXLE1BQU0sa0NBQWtDLENBQUM7QUFDakYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7OztBQUVoRSxNQUFNLE9BQU8sZ0JBQWdCO0lBQ3pCLFlBQW9CLGNBQThCLEVBQXdDLG9CQUEwQztRQUFoSCxtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFBd0MseUJBQW9CLEdBQXBCLG9CQUFvQixDQUFzQjtJQUFHLENBQUM7SUFFeEksSUFBSSxDQUFDLEdBQVc7UUFDWixJQUFJLElBQUksR0FBRyxLQUFLLENBQUM7UUFDakIsSUFBSSxDQUFDLG9CQUFvQixDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRTtZQUNsRCxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBQ2QsQ0FBQyxDQUFDLENBQUM7UUFFSCxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRUQsVUFBVSxDQUFDLEtBQWM7UUFDckIsSUFBSSxDQUFDLG9CQUFvQixDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM1QyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQy9CLENBQUM7SUFFRCxNQUFNO1FBQ0YsSUFBSSxDQUFDLG9CQUFvQixDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN2QyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQy9CLENBQUM7SUFFRCxPQUFPO1FBQ0gsSUFBSSxDQUFDLG9CQUFvQixDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN4QyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQy9CLENBQUM7SUFFRCxTQUFTO1FBQ0wsSUFBSSxPQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ3BCLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxTQUFTLEVBQUUsRUFBRTtZQUMzRCxPQUFPLEdBQUcsU0FBUyxDQUFDO1FBQ3hCLENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxPQUFPLENBQUM7SUFDbkIsQ0FBQzsrR0FqQ1EsZ0JBQWdCLGdEQUNtQyxvQkFBb0I7bUhBRHZFLGdCQUFnQjs7NEZBQWhCLGdCQUFnQjtrQkFENUIsVUFBVTs7MEJBRThDLE1BQU07MkJBQUMsb0JBQW9CIiwic291cmNlc0NvbnRlbnQiOlsiLyohXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IMKpIDIwMDUtMjAyNSBIeWxhbmQgU29mdHdhcmUsIEluYy4gYW5kIGl0cyBhZmZpbGlhdGVzLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQgeyBBcHBsaWNhdGlvblJlZiwgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGZWF0dXJlc1NlcnZpY2VUb2tlbiwgRmxhZ1NldCB9IGZyb20gJy4uL2ludGVyZmFjZXMvZmVhdHVyZXMuaW50ZXJmYWNlJztcbmltcG9ydCB7IERlYnVnRmVhdHVyZXNTZXJ2aWNlIH0gZnJvbSAnLi9kZWJ1Zy1mZWF0dXJlcy5zZXJ2aWNlJztcbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBRYUZlYXR1cmVzSGVscGVyIHtcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGFwcGxpY2F0aW9uUmVmOiBBcHBsaWNhdGlvblJlZiwgQEluamVjdChGZWF0dXJlc1NlcnZpY2VUb2tlbikgcHJpdmF0ZSBkZWJ1Z0ZlYXR1cmVzU2VydmljZTogRGVidWdGZWF0dXJlc1NlcnZpY2UpIHt9XG5cbiAgICBpc09uKGtleTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgICAgIGxldCBpc09uID0gZmFsc2U7XG4gICAgICAgIHRoaXMuZGVidWdGZWF0dXJlc1NlcnZpY2UuaXNPbiQoa2V5KS5zdWJzY3JpYmUoKG9uKSA9PiB7XG4gICAgICAgICAgICBpc09uID0gb247XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHJldHVybiBpc09uO1xuICAgIH1cblxuICAgIHJlc2V0RmxhZ3MoZmxhZ3M6IEZsYWdTZXQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kZWJ1Z0ZlYXR1cmVzU2VydmljZS5yZXNldEZsYWdzKGZsYWdzKTtcbiAgICAgICAgdGhpcy5hcHBsaWNhdGlvblJlZi50aWNrKCk7XG4gICAgfVxuXG4gICAgZW5hYmxlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmRlYnVnRmVhdHVyZXNTZXJ2aWNlLmVuYWJsZSh0cnVlKTtcbiAgICAgICAgdGhpcy5hcHBsaWNhdGlvblJlZi50aWNrKCk7XG4gICAgfVxuXG4gICAgZGlzYWJsZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kZWJ1Z0ZlYXR1cmVzU2VydmljZS5lbmFibGUoZmFsc2UpO1xuICAgICAgICB0aGlzLmFwcGxpY2F0aW9uUmVmLnRpY2soKTtcbiAgICB9XG5cbiAgICBpc0VuYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIGxldCBlbmFibGVkID0gZmFsc2U7XG4gICAgICAgIHRoaXMuZGVidWdGZWF0dXJlc1NlcnZpY2UuaXNFbmFibGVkJCgpLnN1YnNjcmliZSgoaXNFbmFibGVkKSA9PiB7XG4gICAgICAgICAgICBlbmFibGVkID0gaXNFbmFibGVkO1xuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIGVuYWJsZWQ7XG4gICAgfVxufVxuIl19
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright © 2005-2025 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 { Inject, Injectable, Optional } from '@angular/core';
|
|
18
|
+
import { BehaviorSubject, combineLatest, of } from 'rxjs';
|
|
19
|
+
import { filter, map } from 'rxjs/operators';
|
|
20
|
+
import { WritableFeaturesServiceConfigToken } from '../interfaces/features.interface';
|
|
21
|
+
import { FlagSetParser } from './flagset.parser';
|
|
22
|
+
import * as i0 from "@angular/core";
|
|
23
|
+
export class StorageFeaturesService {
|
|
24
|
+
constructor(config) {
|
|
25
|
+
this.config = config;
|
|
26
|
+
this.currentFlagState = {};
|
|
27
|
+
this.flags = new BehaviorSubject({});
|
|
28
|
+
this.flags$ = this.flags.asObservable();
|
|
29
|
+
this.initSubject = new BehaviorSubject(false);
|
|
30
|
+
combineLatest({
|
|
31
|
+
flags: this.flags,
|
|
32
|
+
init: this.waitForInitializationToFinish()
|
|
33
|
+
}).subscribe(({ flags }) => {
|
|
34
|
+
this.currentFlagState = flags;
|
|
35
|
+
sessionStorage.setItem(this.storageKey, JSON.stringify(FlagSetParser.serialize(flags)));
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
get storageKey() {
|
|
39
|
+
return this.config?.storageKey || 'feature-flags';
|
|
40
|
+
}
|
|
41
|
+
init() {
|
|
42
|
+
const storedFlags = JSON.parse(sessionStorage.getItem(this.storageKey) || '{}');
|
|
43
|
+
const initialFlagChangeSet = FlagSetParser.deserialize(storedFlags);
|
|
44
|
+
this.flags.next(initialFlagChangeSet);
|
|
45
|
+
this.initSubject.next(true);
|
|
46
|
+
return of(initialFlagChangeSet);
|
|
47
|
+
}
|
|
48
|
+
isOn$(key) {
|
|
49
|
+
return this.flags$.pipe(map((flags) => !!flags[key]?.current));
|
|
50
|
+
}
|
|
51
|
+
isOff$(key) {
|
|
52
|
+
return this.flags$.pipe(map((flags) => !flags[key]?.current));
|
|
53
|
+
}
|
|
54
|
+
getFlags$() {
|
|
55
|
+
return this.flags$;
|
|
56
|
+
}
|
|
57
|
+
setFlag(key, value) {
|
|
58
|
+
let fictive = {};
|
|
59
|
+
if (!this.currentFlagState[key]) {
|
|
60
|
+
fictive = { fictive: true };
|
|
61
|
+
}
|
|
62
|
+
else {
|
|
63
|
+
fictive = this.currentFlagState[key]?.fictive ? { fictive: true } : {};
|
|
64
|
+
}
|
|
65
|
+
this.flags.next({
|
|
66
|
+
...this.currentFlagState,
|
|
67
|
+
[key]: {
|
|
68
|
+
current: value,
|
|
69
|
+
previous: this.currentFlagState[key]?.current ?? null,
|
|
70
|
+
...fictive
|
|
71
|
+
}
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
removeFlag(key) {
|
|
75
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
76
|
+
const { [key]: _, ...flags } = this.currentFlagState;
|
|
77
|
+
this.flags.next(flags);
|
|
78
|
+
}
|
|
79
|
+
resetFlags(flags) {
|
|
80
|
+
this.flags.next(Object.keys(flags).reduce((acc, key) => ({
|
|
81
|
+
...acc,
|
|
82
|
+
[key]: {
|
|
83
|
+
current: flags[key],
|
|
84
|
+
previous: null,
|
|
85
|
+
fictive: true
|
|
86
|
+
}
|
|
87
|
+
}), {}));
|
|
88
|
+
}
|
|
89
|
+
mergeFlags(flags) {
|
|
90
|
+
const mergedFlags = Object.keys(flags).reduce((acc, key) => {
|
|
91
|
+
const current = this.currentFlagState[key]?.current;
|
|
92
|
+
return {
|
|
93
|
+
...acc,
|
|
94
|
+
[key]: {
|
|
95
|
+
current: current ?? flags[key].current,
|
|
96
|
+
previous: current ?? null
|
|
97
|
+
}
|
|
98
|
+
};
|
|
99
|
+
}, {});
|
|
100
|
+
Object.keys(this.currentFlagState)
|
|
101
|
+
.filter((key) => !flags[key])
|
|
102
|
+
.forEach((key) => {
|
|
103
|
+
mergedFlags[key] = {
|
|
104
|
+
current: this.currentFlagState[key].current,
|
|
105
|
+
previous: this.currentFlagState[key].previous,
|
|
106
|
+
fictive: true
|
|
107
|
+
};
|
|
108
|
+
});
|
|
109
|
+
this.flags.next(mergedFlags);
|
|
110
|
+
}
|
|
111
|
+
waitForInitializationToFinish() {
|
|
112
|
+
return this.initSubject.pipe(filter((initialized) => !!initialized));
|
|
113
|
+
}
|
|
114
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: StorageFeaturesService, deps: [{ token: WritableFeaturesServiceConfigToken, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
115
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: StorageFeaturesService, providedIn: 'root' }); }
|
|
116
|
+
}
|
|
117
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: StorageFeaturesService, decorators: [{
|
|
118
|
+
type: Injectable,
|
|
119
|
+
args: [{ providedIn: 'root' }]
|
|
120
|
+
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
121
|
+
type: Optional
|
|
122
|
+
}, {
|
|
123
|
+
type: Inject,
|
|
124
|
+
args: [WritableFeaturesServiceConfigToken]
|
|
125
|
+
}] }] });
|
|
126
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmFnZS1mZWF0dXJlcy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGliL2NvcmUvZmVhdHVyZS1mbGFncy9zcmMvbGliL3NlcnZpY2VzL3N0b3JhZ2UtZmVhdHVyZXMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7O0dBZUc7QUFFSCxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUtILGtDQUFrQyxFQUdyQyxNQUFNLGtDQUFrQyxDQUFDO0FBQzFDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7QUFHakQsTUFBTSxPQUFPLHNCQUFzQjtJQU0vQixZQUE0RSxNQUFzQztRQUF0QyxXQUFNLEdBQU4sTUFBTSxDQUFnQztRQUwxRyxxQkFBZ0IsR0FBMEIsRUFBRSxDQUFDO1FBQ3BDLFVBQUssR0FBRyxJQUFJLGVBQWUsQ0FBd0IsRUFBRSxDQUFDLENBQUM7UUFDdkQsV0FBTSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDbkMsZ0JBQVcsR0FBRyxJQUFJLGVBQWUsQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUcvRCxhQUFhLENBQUM7WUFDVixLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7WUFDakIsSUFBSSxFQUFFLElBQUksQ0FBQyw2QkFBNkIsRUFBRTtTQUM3QyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFO1lBQ3ZCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxLQUFLLENBQUM7WUFDOUIsY0FBYyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDNUYsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsSUFBSSxVQUFVO1FBQ1YsT0FBTyxJQUFJLENBQUMsTUFBTSxFQUFFLFVBQVUsSUFBSSxlQUFlLENBQUM7SUFDdEQsQ0FBQztJQUVELElBQUk7UUFDQSxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDO1FBQ2hGLE1BQU0sb0JBQW9CLEdBQUcsYUFBYSxDQUFDLFdBQVcsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNwRSxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO1FBQ3RDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzVCLE9BQU8sRUFBRSxDQUFDLG9CQUFvQixDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVELEtBQUssQ0FBQyxHQUFXO1FBQ2IsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUNuRSxDQUFDO0lBRUQsTUFBTSxDQUFDLEdBQVc7UUFDZCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUNsRSxDQUFDO0lBRUQsU0FBUztRQUNMLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUN2QixDQUFDO0lBRUQsT0FBTyxDQUFDLEdBQVcsRUFBRSxLQUFVO1FBQzNCLElBQUksT0FBTyxHQUFHLEVBQUUsQ0FBQztRQUNqQixJQUFJLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDOUIsT0FBTyxHQUFHLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxDQUFDO1FBQ2hDLENBQUM7YUFBTSxDQUFDO1lBQ0osT0FBTyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDM0UsQ0FBQztRQUVELElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDO1lBQ1osR0FBRyxJQUFJLENBQUMsZ0JBQWdCO1lBQ3hCLENBQUMsR0FBRyxDQUFDLEVBQUU7Z0JBQ0gsT0FBTyxFQUFFLEtBQUs7Z0JBQ2QsUUFBUSxFQUFFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsRUFBRSxPQUFPLElBQUksSUFBSTtnQkFDckQsR0FBRyxPQUFPO2FBQ2I7U0FDSixDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsVUFBVSxDQUFDLEdBQVc7UUFDbEIsNkRBQTZEO1FBQzdELE1BQU0sRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxHQUFHLEtBQUssRUFBRSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQztRQUNyRCxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBRUQsVUFBVSxDQUFDLEtBQWM7UUFDckIsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQ1gsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxNQUFNLENBQ3JCLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUNYLEdBQUcsR0FBRztZQUNOLENBQUMsR0FBRyxDQUFDLEVBQUU7Z0JBQ0gsT0FBTyxFQUFFLEtBQUssQ0FBQyxHQUFHLENBQUM7Z0JBQ25CLFFBQVEsRUFBRSxJQUFJO2dCQUNkLE9BQU8sRUFBRSxJQUFJO2FBQ2hCO1NBQ0osQ0FBQyxFQUNGLEVBQUUsQ0FDTCxDQUNKLENBQUM7SUFDTixDQUFDO0lBRUQsVUFBVSxDQUFDLEtBQW9CO1FBQzNCLE1BQU0sV0FBVyxHQUEwQixNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsRUFBRTtZQUM5RSxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLEVBQUUsT0FBTyxDQUFDO1lBQ3BELE9BQU87Z0JBQ0gsR0FBRyxHQUFHO2dCQUNOLENBQUMsR0FBRyxDQUFDLEVBQUU7b0JBQ0gsT0FBTyxFQUFFLE9BQU8sSUFBSSxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsT0FBTztvQkFDdEMsUUFBUSxFQUFFLE9BQU8sSUFBSSxJQUFJO2lCQUM1QjthQUNKLENBQUM7UUFDTixDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFUCxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQzthQUM3QixNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO2FBQzVCLE9BQU8sQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQ2IsV0FBVyxDQUFDLEdBQUcsQ0FBQyxHQUFHO2dCQUNmLE9BQU8sRUFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLENBQUMsT0FBTztnQkFDM0MsUUFBUSxFQUFFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsQ0FBQyxRQUFRO2dCQUM3QyxPQUFPLEVBQUUsSUFBSTthQUNoQixDQUFDO1FBQ04sQ0FBQyxDQUFDLENBQUM7UUFFUCxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBRU8sNkJBQTZCO1FBQ2pDLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztJQUN6RSxDQUFDOytHQTNHUSxzQkFBc0Isa0JBTUMsa0NBQWtDO21IQU56RCxzQkFBc0IsY0FEVCxNQUFNOzs0RkFDbkIsc0JBQXNCO2tCQURsQyxVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRTs7MEJBT2pCLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsa0NBQWtDIiwic291cmNlc0NvbnRlbnQiOlsiLyohXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IMKpIDIwMDUtMjAyNSBIeWxhbmQgU29mdHdhcmUsIEluYy4gYW5kIGl0cyBhZmZpbGlhdGVzLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaWx0ZXIsIG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7XG4gICAgRmxhZ0NoYW5nZXNldCxcbiAgICBJRmVhdHVyZXNTZXJ2aWNlLFxuICAgIEZsYWdTZXQsXG4gICAgSVdyaXRhYmxlRmVhdHVyZXNTZXJ2aWNlLFxuICAgIFdyaXRhYmxlRmVhdHVyZXNTZXJ2aWNlQ29uZmlnVG9rZW4sXG4gICAgV3JpdGFibGVGbGFnQ2hhbmdlc2V0LFxuICAgIFdyaXRhYmxlRmVhdHVyZXNTZXJ2aWNlQ29uZmlnXG59IGZyb20gJy4uL2ludGVyZmFjZXMvZmVhdHVyZXMuaW50ZXJmYWNlJztcbmltcG9ydCB7IEZsYWdTZXRQYXJzZXIgfSBmcm9tICcuL2ZsYWdzZXQucGFyc2VyJztcblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBTdG9yYWdlRmVhdHVyZXNTZXJ2aWNlIGltcGxlbWVudHMgSUZlYXR1cmVzU2VydmljZSwgSVdyaXRhYmxlRmVhdHVyZXNTZXJ2aWNlIHtcbiAgICBwcml2YXRlIGN1cnJlbnRGbGFnU3RhdGU6IFdyaXRhYmxlRmxhZ0NoYW5nZXNldCA9IHt9O1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZmxhZ3MgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFdyaXRhYmxlRmxhZ0NoYW5nZXNldD4oe30pO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZmxhZ3MkID0gdGhpcy5mbGFncy5hc09ic2VydmFibGUoKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGluaXRTdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG5cbiAgICBjb25zdHJ1Y3RvcihAT3B0aW9uYWwoKSBASW5qZWN0KFdyaXRhYmxlRmVhdHVyZXNTZXJ2aWNlQ29uZmlnVG9rZW4pIHByaXZhdGUgY29uZmlnPzogV3JpdGFibGVGZWF0dXJlc1NlcnZpY2VDb25maWcpIHtcbiAgICAgICAgY29tYmluZUxhdGVzdCh7XG4gICAgICAgICAgICBmbGFnczogdGhpcy5mbGFncyxcbiAgICAgICAgICAgIGluaXQ6IHRoaXMud2FpdEZvckluaXRpYWxpemF0aW9uVG9GaW5pc2goKVxuICAgICAgICB9KS5zdWJzY3JpYmUoKHsgZmxhZ3MgfSkgPT4ge1xuICAgICAgICAgICAgdGhpcy5jdXJyZW50RmxhZ1N0YXRlID0gZmxhZ3M7XG4gICAgICAgICAgICBzZXNzaW9uU3RvcmFnZS5zZXRJdGVtKHRoaXMuc3RvcmFnZUtleSwgSlNPTi5zdHJpbmdpZnkoRmxhZ1NldFBhcnNlci5zZXJpYWxpemUoZmxhZ3MpKSk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGdldCBzdG9yYWdlS2V5KCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbmZpZz8uc3RvcmFnZUtleSB8fCAnZmVhdHVyZS1mbGFncyc7XG4gICAgfVxuXG4gICAgaW5pdCgpOiBPYnNlcnZhYmxlPFdyaXRhYmxlRmxhZ0NoYW5nZXNldD4ge1xuICAgICAgICBjb25zdCBzdG9yZWRGbGFncyA9IEpTT04ucGFyc2Uoc2Vzc2lvblN0b3JhZ2UuZ2V0SXRlbSh0aGlzLnN0b3JhZ2VLZXkpIHx8ICd7fScpO1xuICAgICAgICBjb25zdCBpbml0aWFsRmxhZ0NoYW5nZVNldCA9IEZsYWdTZXRQYXJzZXIuZGVzZXJpYWxpemUoc3RvcmVkRmxhZ3MpO1xuICAgICAgICB0aGlzLmZsYWdzLm5leHQoaW5pdGlhbEZsYWdDaGFuZ2VTZXQpO1xuICAgICAgICB0aGlzLmluaXRTdWJqZWN0Lm5leHQodHJ1ZSk7XG4gICAgICAgIHJldHVybiBvZihpbml0aWFsRmxhZ0NoYW5nZVNldCk7XG4gICAgfVxuXG4gICAgaXNPbiQoa2V5OiBzdHJpbmcpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZmxhZ3MkLnBpcGUobWFwKChmbGFncykgPT4gISFmbGFnc1trZXldPy5jdXJyZW50KSk7XG4gICAgfVxuXG4gICAgaXNPZmYkKGtleTogc3RyaW5nKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmZsYWdzJC5waXBlKG1hcCgoZmxhZ3MpID0+ICFmbGFnc1trZXldPy5jdXJyZW50KSk7XG4gICAgfVxuXG4gICAgZ2V0RmxhZ3MkKCk6IE9ic2VydmFibGU8V3JpdGFibGVGbGFnQ2hhbmdlc2V0PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmZsYWdzJDtcbiAgICB9XG5cbiAgICBzZXRGbGFnKGtleTogc3RyaW5nLCB2YWx1ZTogYW55KTogdm9pZCB7XG4gICAgICAgIGxldCBmaWN0aXZlID0ge307XG4gICAgICAgIGlmICghdGhpcy5jdXJyZW50RmxhZ1N0YXRlW2tleV0pIHtcbiAgICAgICAgICAgIGZpY3RpdmUgPSB7IGZpY3RpdmU6IHRydWUgfTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGZpY3RpdmUgPSB0aGlzLmN1cnJlbnRGbGFnU3RhdGVba2V5XT8uZmljdGl2ZSA/IHsgZmljdGl2ZTogdHJ1ZSB9IDoge307XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmZsYWdzLm5leHQoe1xuICAgICAgICAgICAgLi4udGhpcy5jdXJyZW50RmxhZ1N0YXRlLFxuICAgICAgICAgICAgW2tleV06IHtcbiAgICAgICAgICAgICAgICBjdXJyZW50OiB2YWx1ZSxcbiAgICAgICAgICAgICAgICBwcmV2aW91czogdGhpcy5jdXJyZW50RmxhZ1N0YXRlW2tleV0/LmN1cnJlbnQgPz8gbnVsbCxcbiAgICAgICAgICAgICAgICAuLi5maWN0aXZlXG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHJlbW92ZUZsYWcoa2V5OiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFyc1xuICAgICAgICBjb25zdCB7IFtrZXldOiBfLCAuLi5mbGFncyB9ID0gdGhpcy5jdXJyZW50RmxhZ1N0YXRlO1xuICAgICAgICB0aGlzLmZsYWdzLm5leHQoZmxhZ3MpO1xuICAgIH1cblxuICAgIHJlc2V0RmxhZ3MoZmxhZ3M6IEZsYWdTZXQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5mbGFncy5uZXh0KFxuICAgICAgICAgICAgT2JqZWN0LmtleXMoZmxhZ3MpLnJlZHVjZShcbiAgICAgICAgICAgICAgICAoYWNjLCBrZXkpID0+ICh7XG4gICAgICAgICAgICAgICAgICAgIC4uLmFjYyxcbiAgICAgICAgICAgICAgICAgICAgW2tleV06IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGN1cnJlbnQ6IGZsYWdzW2tleV0sXG4gICAgICAgICAgICAgICAgICAgICAgICBwcmV2aW91czogbnVsbCxcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpY3RpdmU6IHRydWVcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgIHt9XG4gICAgICAgICAgICApXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgbWVyZ2VGbGFncyhmbGFnczogRmxhZ0NoYW5nZXNldCk6IHZvaWQge1xuICAgICAgICBjb25zdCBtZXJnZWRGbGFnczogV3JpdGFibGVGbGFnQ2hhbmdlc2V0ID0gT2JqZWN0LmtleXMoZmxhZ3MpLnJlZHVjZSgoYWNjLCBrZXkpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGN1cnJlbnQgPSB0aGlzLmN1cnJlbnRGbGFnU3RhdGVba2V5XT8uY3VycmVudDtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgLi4uYWNjLFxuICAgICAgICAgICAgICAgIFtrZXldOiB7XG4gICAgICAgICAgICAgICAgICAgIGN1cnJlbnQ6IGN1cnJlbnQgPz8gZmxhZ3Nba2V5XS5jdXJyZW50LFxuICAgICAgICAgICAgICAgICAgICBwcmV2aW91czogY3VycmVudCA/PyBudWxsXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfTtcbiAgICAgICAgfSwge30pO1xuXG4gICAgICAgIE9iamVjdC5rZXlzKHRoaXMuY3VycmVudEZsYWdTdGF0ZSlcbiAgICAgICAgICAgIC5maWx0ZXIoKGtleSkgPT4gIWZsYWdzW2tleV0pXG4gICAgICAgICAgICAuZm9yRWFjaCgoa2V5KSA9PiB7XG4gICAgICAgICAgICAgICAgbWVyZ2VkRmxhZ3Nba2V5XSA9IHtcbiAgICAgICAgICAgICAgICAgICAgY3VycmVudDogdGhpcy5jdXJyZW50RmxhZ1N0YXRlW2tleV0uY3VycmVudCxcbiAgICAgICAgICAgICAgICAgICAgcHJldmlvdXM6IHRoaXMuY3VycmVudEZsYWdTdGF0ZVtrZXldLnByZXZpb3VzLFxuICAgICAgICAgICAgICAgICAgICBmaWN0aXZlOiB0cnVlXG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuZmxhZ3MubmV4dChtZXJnZWRGbGFncyk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB3YWl0Rm9ySW5pdGlhbGl6YXRpb25Ub0ZpbmlzaCgpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaW5pdFN1YmplY3QucGlwZShmaWx0ZXIoKGluaXRpYWxpemVkKSA9PiAhIWluaXRpYWxpemVkKSk7XG4gICAgfVxufVxuIl19
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright © 2005-2025 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, Component, Input, ViewEncapsulation } from '@angular/core';
|
|
18
|
+
import { CommonModule } from '@angular/common';
|
|
19
|
+
import { MatTableModule } from '@angular/material/table';
|
|
20
|
+
import { TranslatePipe } from '@ngx-translate/core';
|
|
21
|
+
import * as i0 from "@angular/core";
|
|
22
|
+
import * as i1 from "@angular/common";
|
|
23
|
+
import * as i2 from "@angular/material/table";
|
|
24
|
+
export class AboutExtensionListComponent {
|
|
25
|
+
constructor() {
|
|
26
|
+
this.columns = [
|
|
27
|
+
{
|
|
28
|
+
columnDef: 'name',
|
|
29
|
+
header: 'ABOUT.PLUGINS.NAME',
|
|
30
|
+
cell: (row) => `${row.$name}`
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
columnDef: 'version',
|
|
34
|
+
header: 'ABOUT.PLUGINS.VERSION',
|
|
35
|
+
cell: (row) => `${row.$version}`
|
|
36
|
+
}
|
|
37
|
+
];
|
|
38
|
+
this.displayedColumns = this.columns.map((x) => x.columnDef);
|
|
39
|
+
this.data = [];
|
|
40
|
+
}
|
|
41
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AboutExtensionListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
42
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: AboutExtensionListComponent, isStandalone: true, selector: "adf-about-extension-list", inputs: { data: "data" }, ngImport: i0, template: "<mat-table [dataSource]=\"data\">\n <ng-container *ngFor=\"let column of columns\" [matColumnDef]=\"column.columnDef\">\n <mat-header-cell *matHeaderCellDef>\n {{ column.header | translate }}\n </mat-header-cell>\n <mat-cell *matCellDef=\"let row\">{{ column.cell(row) }}</mat-cell>\n </ng-container>\n\n <mat-header-row *matHeaderRowDef=\"displayedColumns\" />\n <mat-row *matRowDef=\"let row; columns: displayedColumns\" />\n</mat-table>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "ngmodule", type: MatTableModule }, { kind: "component", type: i2.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i2.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i2.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i2.MatColumnDef, selector: "[matColumnDef]", inputs: ["matColumnDef"] }, { kind: "directive", type: i2.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i2.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i2.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i2.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i2.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i2.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
43
|
+
}
|
|
44
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AboutExtensionListComponent, decorators: [{
|
|
45
|
+
type: Component,
|
|
46
|
+
args: [{ selector: 'adf-about-extension-list', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule, MatTableModule, TranslatePipe], template: "<mat-table [dataSource]=\"data\">\n <ng-container *ngFor=\"let column of columns\" [matColumnDef]=\"column.columnDef\">\n <mat-header-cell *matHeaderCellDef>\n {{ column.header | translate }}\n </mat-header-cell>\n <mat-cell *matCellDef=\"let row\">{{ column.cell(row) }}</mat-cell>\n </ng-container>\n\n <mat-header-row *matHeaderRowDef=\"displayedColumns\" />\n <mat-row *matRowDef=\"let row; columns: displayedColumns\" />\n</mat-table>\n" }]
|
|
47
|
+
}], propDecorators: { data: [{
|
|
48
|
+
type: Input,
|
|
49
|
+
args: [{ required: true }]
|
|
50
|
+
}] } });
|
|
51
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJvdXQtZXh0ZW5zaW9uLWxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGliL2NvcmUvc3JjL2xpYi9hYm91dC9hYm91dC1leHRlbnNpb24tbGlzdC9hYm91dC1leHRlbnNpb24tbGlzdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWIvY29yZS9zcmMvbGliL2Fib3V0L2Fib3V0LWV4dGVuc2lvbi1saXN0L2Fib3V0LWV4dGVuc2lvbi1saXN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7R0FlRztBQUVILE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTdGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7O0FBVXBELE1BQU0sT0FBTywyQkFBMkI7SUFSeEM7UUFTSSxZQUFPLEdBQUc7WUFDTjtnQkFDSSxTQUFTLEVBQUUsTUFBTTtnQkFDakIsTUFBTSxFQUFFLG9CQUFvQjtnQkFDNUIsSUFBSSxFQUFFLENBQUMsR0FBaUIsRUFBRSxFQUFFLENBQUMsR0FBRyxHQUFHLENBQUMsS0FBSyxFQUFFO2FBQzlDO1lBQ0Q7Z0JBQ0ksU0FBUyxFQUFFLFNBQVM7Z0JBQ3BCLE1BQU0sRUFBRSx1QkFBdUI7Z0JBQy9CLElBQUksRUFBRSxDQUFDLEdBQWlCLEVBQUUsRUFBRSxDQUFDLEdBQUcsR0FBRyxDQUFDLFFBQVEsRUFBRTthQUNqRDtTQUNKLENBQUM7UUFFRixxQkFBZ0IsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBR3hELFNBQUksR0FBd0IsRUFBRSxDQUFDO0tBQ2xDOytHQWxCWSwyQkFBMkI7bUdBQTNCLDJCQUEyQiw4R0MvQnhDLDZjQVdBLDJDRGtCYyxZQUFZLDJKQUFFLGNBQWMsa2dDQUFFLGFBQWE7OzRGQUU1QywyQkFBMkI7a0JBUnZDLFNBQVM7K0JBQ0ksMEJBQTBCLGlCQUVyQixpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxjQUFjLEVBQUUsYUFBYSxDQUFDOzhCQW1CdEQsSUFBSTtzQkFESCxLQUFLO3VCQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSIsInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCDCqSAyMDA1LTIwMjUgSHlsYW5kIFNvZnR3YXJlLCBJbmMuIGFuZCBpdHMgYWZmaWxpYXRlcy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBFeHRlbnNpb25SZWYgfSBmcm9tICdAYWxmcmVzY28vYWRmLWV4dGVuc2lvbnMnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE1hdFRhYmxlTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdGFibGUnO1xuaW1wb3J0IHsgVHJhbnNsYXRlUGlwZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2FkZi1hYm91dC1leHRlbnNpb24tbGlzdCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2Fib3V0LWV4dGVuc2lvbi1saXN0LmNvbXBvbmVudC5odG1sJyxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgTWF0VGFibGVNb2R1bGUsIFRyYW5zbGF0ZVBpcGVdXG59KVxuZXhwb3J0IGNsYXNzIEFib3V0RXh0ZW5zaW9uTGlzdENvbXBvbmVudCB7XG4gICAgY29sdW1ucyA9IFtcbiAgICAgICAge1xuICAgICAgICAgICAgY29sdW1uRGVmOiAnbmFtZScsXG4gICAgICAgICAgICBoZWFkZXI6ICdBQk9VVC5QTFVHSU5TLk5BTUUnLFxuICAgICAgICAgICAgY2VsbDogKHJvdzogRXh0ZW5zaW9uUmVmKSA9PiBgJHtyb3cuJG5hbWV9YFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgICBjb2x1bW5EZWY6ICd2ZXJzaW9uJyxcbiAgICAgICAgICAgIGhlYWRlcjogJ0FCT1VULlBMVUdJTlMuVkVSU0lPTicsXG4gICAgICAgICAgICBjZWxsOiAocm93OiBFeHRlbnNpb25SZWYpID0+IGAke3Jvdy4kdmVyc2lvbn1gXG4gICAgICAgIH1cbiAgICBdO1xuXG4gICAgZGlzcGxheWVkQ29sdW1ucyA9IHRoaXMuY29sdW1ucy5tYXAoKHgpID0+IHguY29sdW1uRGVmKTtcblxuICAgIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pXG4gICAgZGF0YTogQXJyYXk8RXh0ZW5zaW9uUmVmPiA9IFtdO1xufVxuIiwiPG1hdC10YWJsZSBbZGF0YVNvdXJjZV09XCJkYXRhXCI+XG4gIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGNvbHVtbiBvZiBjb2x1bW5zXCIgW21hdENvbHVtbkRlZl09XCJjb2x1bW4uY29sdW1uRGVmXCI+XG4gICAgPG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZj5cbiAgICAgIHt7IGNvbHVtbi5oZWFkZXIgfCB0cmFuc2xhdGUgfX1cbiAgICA8L21hdC1oZWFkZXItY2VsbD5cbiAgICA8bWF0LWNlbGwgKm1hdENlbGxEZWY9XCJsZXQgcm93XCI+e3sgY29sdW1uLmNlbGwocm93KSB9fTwvbWF0LWNlbGw+XG4gIDwvbmctY29udGFpbmVyPlxuXG4gIDxtYXQtaGVhZGVyLXJvdyAqbWF0SGVhZGVyUm93RGVmPVwiZGlzcGxheWVkQ29sdW1uc1wiIC8+XG4gIDxtYXQtcm93ICptYXRSb3dEZWY9XCJsZXQgcm93OyBjb2x1bW5zOiBkaXNwbGF5ZWRDb2x1bW5zXCIgLz5cbjwvbWF0LXRhYmxlPlxuIl19
|