@provoly/dashboard 1.4.7 → 1.4.9
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/dataset/components/dataset-detail/dataset-detail.component.d.ts +5 -3
- package/esm2022/admin/admin-routing.module.mjs +4 -4
- package/esm2022/admin/admin.module.mjs +4 -4
- package/esm2022/admin/components/admin-abac-rules/admin-abac-rules-edit/admin-abac-rules-edit.component.mjs +3 -3
- package/esm2022/admin/components/admin-abac-rules/admin-abac-rules-form/admin-abac-rules-form.component.mjs +3 -3
- package/esm2022/admin/components/admin-abac-rules/admin-abac-rules-new/admin-abac-rules-new.component.mjs +3 -3
- package/esm2022/admin/components/admin-abac-rules/admin-abac-rules-view/admin-abac-rules-view.component.mjs +3 -3
- package/esm2022/admin/components/admin-abac-rules/admin-abac-rules.component.mjs +3 -3
- package/esm2022/admin/components/admin-abac-rules/components/attribute-condition/attribute-condition.component.mjs +3 -3
- package/esm2022/admin/components/admin-abac-rules/components/composed-condition/composed-condition.component.mjs +3 -3
- package/esm2022/admin/components/admin-abac-rules/components/metadata-condition/metadata-condition.component.mjs +3 -3
- package/esm2022/admin/components/admin-abac-rules/components/select-attribute/select-attribute.component.mjs +3 -3
- package/esm2022/admin/components/admin-abac-rules/components/select-metadata/select-metadata.component.mjs +3 -3
- package/esm2022/admin/components/admin-abac-rules/store/abac-rules.effects.mjs +3 -3
- package/esm2022/admin/components/admin-abac-rules/store/abac-rules.service.mjs +3 -3
- package/esm2022/admin/components/admin-classes/admin-classes-customize/admin-classes-customize.component.mjs +3 -3
- package/esm2022/admin/components/admin-classes/admin-classes-customize/symbol/admin-classes-customize-symbol.component.mjs +3 -3
- package/esm2022/admin/components/admin-classes/admin-classes-customize/tooltip/admin-classes-customize-tooltip.component.mjs +3 -3
- package/esm2022/admin/components/admin-classes/admin-classes-edit/admin-classes-edit.component.mjs +3 -3
- package/esm2022/admin/components/admin-classes/admin-classes-form/admin-classes-form.component.mjs +3 -3
- package/esm2022/admin/components/admin-classes/admin-classes-new/admin-classes-new.component.mjs +3 -3
- package/esm2022/admin/components/admin-classes/admin-classes-select/admin-classes-select.component.mjs +3 -3
- package/esm2022/admin/components/admin-classes/admin-classes-view/admin-attributes-edit/admin-attributes-edit.component.mjs +3 -3
- package/esm2022/admin/components/admin-classes/admin-classes-view/admin-attributes-form/admin-attributes-form.component.mjs +3 -3
- package/esm2022/admin/components/admin-classes/admin-classes-view/admin-attributes-new/admin-attributes-new.component.mjs +3 -3
- package/esm2022/admin/components/admin-classes/admin-classes-view/admin-attributes-select/admin-attributes-select.component.mjs +3 -3
- package/esm2022/admin/components/admin-classes/admin-classes-view/admin-classes-view.component.mjs +3 -3
- package/esm2022/admin/components/admin-classes/admin-classes.component.mjs +3 -3
- package/esm2022/admin/components/admin-classes/store/admin-class.effects.mjs +3 -3
- package/esm2022/admin/components/admin-dataset/admin-dataset.component.mjs +3 -3
- package/esm2022/admin/components/admin-dataset/admin-edit-dataset/admin-edit-dataset.component.mjs +3 -3
- package/esm2022/admin/components/admin-dataset/admin-form-dataset/admin-form-dataset.component.mjs +3 -3
- package/esm2022/admin/components/admin-dataset/admin-new-dataset/admin-new-dataset.component.mjs +3 -3
- package/esm2022/admin/components/admin-dataset/admin-select-dataset/admin-select-dataset.component.mjs +3 -3
- package/esm2022/admin/components/admin-dataset/store/admin-dataset.effects.mjs +3 -3
- package/esm2022/admin/components/admin-dataset/store/admin-dataset.service.mjs +3 -3
- package/esm2022/admin/components/admin-environment/admin-environment-form/admin-environment-form.component.mjs +3 -3
- package/esm2022/admin/components/admin-environment/admin-environment-new/admin-environment-new.component.mjs +3 -3
- package/esm2022/admin/components/admin-environment/admin-environment-select/admin-environment-select.component.mjs +3 -3
- package/esm2022/admin/components/admin-environment/admin-environment-update/admin-environment-update.component.mjs +3 -3
- package/esm2022/admin/components/admin-environment/admin-environment.component.mjs +3 -3
- package/esm2022/admin/components/admin-environment/store/environment.effects.mjs +3 -3
- package/esm2022/admin/components/admin-fields/admin-fields-edit/admin-fields-edit.component.mjs +3 -3
- package/esm2022/admin/components/admin-fields/admin-fields-form/admin-fields-form.component.mjs +3 -3
- package/esm2022/admin/components/admin-fields/admin-fields-new/admin-fields-new.component.mjs +3 -3
- package/esm2022/admin/components/admin-fields/admin-fields-select/admin-fields-select.component.mjs +3 -3
- package/esm2022/admin/components/admin-fields/admin-fields.component.mjs +3 -3
- package/esm2022/admin/components/admin-fields/store/fields.effects.mjs +3 -3
- package/esm2022/admin/components/admin-layout/admin-layout.component.mjs +3 -3
- package/esm2022/admin/components/admin-links/admin-links-new/admin-links-new.component.mjs +3 -3
- package/esm2022/admin/components/admin-links/admin-links.component.mjs +3 -3
- package/esm2022/admin/components/admin-links/store/links.effects.mjs +3 -3
- package/esm2022/admin/components/admin-menu/admin-menu.component.mjs +3 -3
- package/esm2022/admin/components/admin-metadata/admin-edit-metadata/admin-edit-metadata.component.mjs +3 -3
- package/esm2022/admin/components/admin-metadata/admin-metadata.component.mjs +3 -3
- package/esm2022/admin/components/admin-metadata/admin-new-metadata/admin-new-metadata.component.mjs +3 -3
- package/esm2022/admin/components/admin-metadata/admin-select-metadata/admin-select-metadata.component.mjs +3 -3
- package/esm2022/admin/components/admin-metadata/shared/form-metadata/form-metadata.component.mjs +3 -3
- package/esm2022/admin/components/admin-metadata/shared/list-metadata/list-metadata.module.mjs +4 -4
- package/esm2022/admin/components/admin-metadata/shared/list-metadata/pry-list-metadata.component.mjs +3 -3
- package/esm2022/admin/components/admin-metadata-rules/admin-edit-metadata-rules/admin-edit-metadata-rules.component.mjs +3 -3
- package/esm2022/admin/components/admin-metadata-rules/admin-metadata-rules.component.mjs +3 -3
- package/esm2022/admin/components/admin-metadata-rules/admin-new-metadata-rules/admin-new-metadata-rules.component.mjs +3 -3
- package/esm2022/admin/components/admin-metadata-rules/admin-select-metadata-rules/admin-select-metadata-rules.component.mjs +3 -3
- package/esm2022/admin/components/admin-metadata-rules/shared/admin-form-metadata-rules/admin-form-metadata-rules.component.mjs +3 -3
- package/esm2022/admin/components/admin-metadata-rules/store/metadata-rules.effects.mjs +3 -3
- package/esm2022/admin/components/admin-metadata-user/admin-metadata-user.component.mjs +3 -3
- package/esm2022/admin/components/admin-metadata-user/admin-user-edit-metadata/admin-user-edit-metadata.component.mjs +3 -3
- package/esm2022/admin/components/admin-metadata-user/admin-user-new-metadata/admin-user-new-metadata.component.mjs +3 -3
- package/esm2022/admin/components/admin-metadata-user/admin-user-select-metadata/admin-user-select-metadata.component.mjs +3 -3
- package/esm2022/admin/components/admin-metadata-user/store/admin-metadata-user.effects.mjs +3 -3
- package/esm2022/admin/components/admin-predicates/admin-predicates-form/admin-predicates-form.component.mjs +3 -3
- package/esm2022/admin/components/admin-predicates/admin-predicates-new/admin-predicates-new.component.mjs +3 -3
- package/esm2022/admin/components/admin-predicates/admin-predicates-select/admin-predicates-select.component.mjs +3 -3
- package/esm2022/admin/components/admin-predicates/admin-predicates-update/admin-predicates-update.component.mjs +3 -3
- package/esm2022/admin/components/admin-predicates/admin-predicates.component.mjs +3 -3
- package/esm2022/admin/components/admin-predicates/store/predicates.effects.mjs +3 -3
- package/esm2022/admin/components/admin-relation-types/admin-relation-types-modal/admin-relation-types-modal.component.mjs +3 -3
- package/esm2022/admin/components/admin-relation-types/admin-relation-types-select/admin-relation-types-select.component.mjs +3 -3
- package/esm2022/admin/components/admin-relation-types/admin-relation-types.component.mjs +3 -3
- package/esm2022/admin/components/admin-title/admin-title.component.mjs +3 -3
- package/esm2022/admin/components/admin-user/admin-user-select/admin-user-select.component.mjs +3 -3
- package/esm2022/admin/components/admin-user/admin-user.component.mjs +3 -3
- package/esm2022/admin/components/admin-user/store/admin-user.effects.mjs +3 -3
- package/esm2022/admin/components/admin.component.mjs +3 -3
- package/esm2022/admin/components/association/association.component.mjs +3 -3
- package/esm2022/admin/components/shared/add-category-modal/add-category-modal.component.mjs +3 -3
- package/esm2022/admin/store/admin.effects.mjs +3 -3
- package/esm2022/admin/store/admin.service.mjs +3 -3
- package/esm2022/components/card/card.component.mjs +18 -18
- package/esm2022/components/card/card.module.mjs +4 -4
- package/esm2022/components/checkbox/checkbox.component.mjs +3 -3
- package/esm2022/components/checkbox/checkbox.module.mjs +4 -4
- package/esm2022/components/color-picker/color-picker.component.mjs +3 -3
- package/esm2022/components/color-picker/color-picker.module.mjs +4 -4
- package/esm2022/components/data-format/data-format.module.mjs +4 -4
- package/esm2022/components/data-format/data-format.pipe.mjs +3 -3
- package/esm2022/components/expand-panel/expand-panel.component.mjs +6 -6
- package/esm2022/components/expand-panel/expand-panel.module.mjs +4 -4
- package/esm2022/components/filter/filter.module.mjs +4 -4
- package/esm2022/components/filter/filter.pipe.mjs +3 -3
- package/esm2022/components/metadata-editor/metadata-editor.component.mjs +3 -3
- package/esm2022/components/metadata-editor/metadata-editor.module.mjs +4 -4
- package/esm2022/components/metadata-editor/store/metadata.effects.mjs +3 -3
- package/esm2022/components/metadata-editor/store/metadata.service.mjs +3 -3
- package/esm2022/components/metadata-editor/style/css.component.mjs +3 -3
- package/esm2022/components/page-loader/page-loader.component.mjs +3 -3
- package/esm2022/components/page-loader/page-loader.module.mjs +4 -4
- package/esm2022/components/paginator/paginator.component.mjs +3 -3
- package/esm2022/components/paginator/paginator.module.mjs +4 -4
- package/esm2022/components/paginator/style/css.component.mjs +3 -3
- package/esm2022/components/scheme-picker/scheme-picker.component.mjs +4 -4
- package/esm2022/components/scheme-picker/scheme-picker.module.mjs +4 -4
- package/esm2022/components/scheme-picker/scheme.service.mjs +3 -3
- package/esm2022/components/stepper/step/step.component.mjs +3 -3
- package/esm2022/components/stepper/step-title.directive.mjs +3 -3
- package/esm2022/components/stepper/stepper.component.mjs +3 -3
- package/esm2022/components/stepper/stepper.module.mjs +4 -4
- package/esm2022/components/text-editor/component/text-editor.component.mjs +3 -3
- package/esm2022/components/text-editor/mdToHtml.pipe.mjs +3 -3
- package/esm2022/components/text-editor/service/text-editor.service.mjs +3 -3
- package/esm2022/components/text-editor/style/css.component.mjs +3 -3
- package/esm2022/components/text-editor/text-editor.module.mjs +4 -4
- package/esm2022/dataset/components/dataset-detail/dataset-detail.component.mjs +16 -10
- package/esm2022/dataset/components/dataset-version-form/dataset-version-form.component.mjs +3 -3
- package/esm2022/dataset/components/dataset.component.mjs +3 -3
- package/esm2022/dataset/dataset.module.mjs +4 -4
- package/esm2022/dataset/style/css.component.mjs +3 -3
- package/esm2022/filters/autocomplete/autocomplete.component.mjs +9 -5
- package/esm2022/filters/autocomplete/autocomplete.module.mjs +4 -4
- package/esm2022/filters/autocomplete/style/css.component.mjs +3 -3
- package/esm2022/filters/date/date-filter.component.mjs +6 -5
- package/esm2022/filters/date/date-filter.module.mjs +4 -4
- package/esm2022/filters/list/list-filter.component.mjs +10 -6
- package/esm2022/filters/list/list-filter.module.mjs +7 -7
- package/esm2022/filters/list/style/css.component.mjs +3 -3
- package/esm2022/filters/number/number-filter.component.mjs +15 -5
- package/esm2022/filters/number/number-filter.module.mjs +4 -4
- package/esm2022/filters/text/text-filter.component.mjs +15 -5
- package/esm2022/filters/text/text-filter.module.mjs +4 -4
- package/esm2022/import/components/form/import-form.component.mjs +3 -3
- package/esm2022/import/components/list/import-list.component.mjs +3 -3
- package/esm2022/import/components/version-modal/version-modal.component.mjs +3 -3
- package/esm2022/import/import-routing.module.mjs +4 -4
- package/esm2022/import/import.module.mjs +4 -4
- package/esm2022/import/store/import.effects.mjs +3 -3
- package/esm2022/import/store/import.service.mjs +3 -3
- package/esm2022/import/style/css.component.mjs +3 -3
- package/esm2022/lib/core/access/access.directive.mjs +3 -3
- package/esm2022/lib/core/access/access.guard.mjs +3 -3
- package/esm2022/lib/core/access/access.service.mjs +3 -3
- package/esm2022/lib/core/auth/geoAuth.service.mjs +3 -3
- package/esm2022/lib/core/components/about/about.component.mjs +3 -3
- package/esm2022/lib/core/components/about/pry-about.module.mjs +4 -4
- package/esm2022/lib/core/components/accordion/accordion-item/accordion-item.component.mjs +3 -3
- package/esm2022/lib/core/components/accordion/accordion.component.mjs +3 -3
- package/esm2022/lib/core/components/base-layout/base-layout.component.mjs +3 -3
- package/esm2022/lib/core/components/base-menu/base-menu.component.mjs +3 -3
- package/esm2022/lib/core/components/base-toolbox/base-toolbox.component.mjs +3 -3
- package/esm2022/lib/core/components/base-toolbox-action/base-toolbox-action.component.mjs +3 -3
- package/esm2022/lib/core/components/chips-selector/chips-selector.component.mjs +3 -3
- package/esm2022/lib/core/components/chips-selector/chips-selector.module.mjs +4 -4
- package/esm2022/lib/core/components/date-picker/date-picker.component.mjs +3 -3
- package/esm2022/lib/core/components/date-picker/date-picker.module.mjs +4 -4
- package/esm2022/lib/core/components/date-picker/date-range-highlight.pipe.mjs +3 -3
- package/esm2022/lib/core/components/date-picker/time-picker/loop-scroll-column/loop-scroll-column.component.mjs +3 -3
- package/esm2022/lib/core/components/date-picker/time-picker/time-picker.component.mjs +3 -3
- package/esm2022/lib/core/components/edit-input/edit-input.component.mjs +3 -3
- package/esm2022/lib/core/components/edit-input/edit-input.module.mjs +4 -4
- package/esm2022/lib/core/components/ellipsis.directive.mjs +3 -3
- package/esm2022/lib/core/components/hidden-when-overlay/hidden-when-overlay.directive.mjs +3 -3
- package/esm2022/lib/core/components/hidden-when-overlay/hidden-when-overlay.module.mjs +4 -4
- package/esm2022/lib/core/components/icon/icon.component.mjs +3 -3
- package/esm2022/lib/core/components/icon/icon.module.mjs +4 -4
- package/esm2022/lib/core/components/modal/modal.component.mjs +3 -3
- package/esm2022/lib/core/components/modal/pry-modal.module.mjs +4 -4
- package/esm2022/lib/core/components/nq-color-selector/nq-color-selector.component.mjs +3 -3
- package/esm2022/lib/core/components/overlay/dialog-confirm.component.mjs +3 -3
- package/esm2022/lib/core/components/overlay/dialog.service.mjs +3 -3
- package/esm2022/lib/core/components/overlay/overlay.directive.mjs +3 -3
- package/esm2022/lib/core/components/overlay/overlay.module.mjs +4 -4
- package/esm2022/lib/core/components/range/range.component.mjs +3 -3
- package/esm2022/lib/core/components/range/range.module.mjs +4 -4
- package/esm2022/lib/core/components/select/select.component.mjs +12 -6
- package/esm2022/lib/core/components/select/select.module.mjs +4 -4
- package/esm2022/lib/core/components/select-image/select-image.component.mjs +3 -3
- package/esm2022/lib/core/components/share/access-rights-share/access-rights-share.component.mjs +4 -4
- package/esm2022/lib/core/components/share/access-rights-share-modal/access-rights-share-modal.component.mjs +3 -3
- package/esm2022/lib/core/components/share/group-share/group-share.component.mjs +3 -3
- package/esm2022/lib/core/components/share/legacy-share/share.component.mjs +4 -4
- package/esm2022/lib/core/components/share/share.module.mjs +4 -4
- package/esm2022/lib/core/components/snackbar/snackbar/snackbar.component.mjs +3 -3
- package/esm2022/lib/core/components/snackbar/snackbar.module.mjs +4 -4
- package/esm2022/lib/core/components/snackbar/snackbar.service.mjs +3 -3
- package/esm2022/lib/core/components/sort/sort-data.pipe.mjs +3 -3
- package/esm2022/lib/core/components/sort/sort-header/sort-header.component.mjs +3 -3
- package/esm2022/lib/core/components/sort/sort-header.directive.mjs +3 -3
- package/esm2022/lib/core/components/sort/sort-table.directive.mjs +3 -3
- package/esm2022/lib/core/components/sort/sort.module.mjs +4 -4
- package/esm2022/lib/core/components/status-modal/status-modal.component.mjs +3 -3
- package/esm2022/lib/core/components/status-modal/status-modal.module.mjs +4 -4
- package/esm2022/lib/core/components/tabs/tab-group.component.mjs +3 -3
- package/esm2022/lib/core/components/tabs/tab.component.mjs +3 -3
- package/esm2022/lib/core/components/toggle/toggle.component.mjs +3 -3
- package/esm2022/lib/core/components/toggle/toggle.module.mjs +4 -4
- package/esm2022/lib/core/components/upload/upload.component.mjs +3 -3
- package/esm2022/lib/core/core.module.mjs +4 -4
- package/esm2022/lib/core/errors/http-error-interceptor.service.mjs +3 -3
- package/esm2022/lib/core/i18n/i18n.module.mjs +4 -4
- package/esm2022/lib/core/i18n/i18n.pipe.mjs +3 -3
- package/esm2022/lib/core/i18n/i18n.service.mjs +3 -3
- package/esm2022/lib/core/model/filter.interface.mjs +1 -1
- package/esm2022/lib/core/pipes/get-secured-image/get-secured-image.pipe.mjs +3 -3
- package/esm2022/lib/core/pipes/since-date/since-date.module.mjs +4 -4
- package/esm2022/lib/core/pipes/since-date/since-date.pipe.mjs +3 -3
- package/esm2022/lib/core/pipes/translate-id/translate-id.pipe.mjs +3 -3
- package/esm2022/lib/core/pipes/translate-item-to-symbol/translate-item-to-symbol.pipe.mjs +3 -3
- package/esm2022/lib/core/store/aggregation/backend-aggregation.service.mjs +3 -3
- package/esm2022/lib/core/store/aggregation/base-aggregation.service.mjs +3 -3
- package/esm2022/lib/core/store/aggregation/frontend-aggregation/frontend-aggregation.service.mjs +3 -3
- package/esm2022/lib/core/store/category/category.effects.mjs +3 -3
- package/esm2022/lib/core/store/category/category.service.mjs +3 -3
- package/esm2022/lib/core/store/class/class.effects.mjs +3 -3
- package/esm2022/lib/core/store/class/class.service.mjs +3 -3
- package/esm2022/lib/core/store/config/config.effects.mjs +3 -3
- package/esm2022/lib/core/store/config/config.service.mjs +3 -3
- package/esm2022/lib/core/store/config/open-map-tiles.service.mjs +3 -3
- package/esm2022/lib/core/store/context-menu/context-menu.effects.mjs +3 -3
- package/esm2022/lib/core/store/data-source/data-source.effects.mjs +3 -3
- package/esm2022/lib/core/store/data-source/data-source.service.mjs +3 -3
- package/esm2022/lib/core/store/field/field.effects.mjs +3 -3
- package/esm2022/lib/core/store/field/field.service.mjs +3 -3
- package/esm2022/lib/core/store/image/image.effects.mjs +3 -3
- package/esm2022/lib/core/store/image/image.service.mjs +3 -3
- package/esm2022/lib/core/store/item/item.effects.mjs +3 -3
- package/esm2022/lib/core/store/item/item.service.mjs +3 -3
- package/esm2022/lib/core/store/raw/raw.service.mjs +3 -3
- package/esm2022/lib/core/store/relation-types/relation-types.effects.mjs +3 -3
- package/esm2022/lib/core/store/relation-types/relation-types.service.mjs +3 -3
- package/esm2022/lib/core/store/search/search.actions.mjs +3 -3
- package/esm2022/lib/core/store/search/search.effects.mjs +3 -3
- package/esm2022/lib/core/store/search/search.service.mjs +3 -3
- package/esm2022/lib/core/symbol/symbol.service.mjs +3 -3
- package/esm2022/lib/core/toolbox/toolbox-manifest.service.mjs +3 -3
- package/esm2022/lib/core/toolbox/toolbox-menu.service.mjs +3 -3
- package/esm2022/lib/core/ws/websocket.service.mjs +3 -3
- package/esm2022/lib/dashboard/action-bus/effect/action-bus.effects.mjs +3 -3
- package/esm2022/lib/dashboard/action-bus/service/bus.service.mjs +3 -3
- package/esm2022/lib/dashboard/base-widget.module.mjs +4 -4
- package/esm2022/lib/dashboard/components/context-menu/context-menu.component.mjs +3 -3
- package/esm2022/lib/dashboard/components/context-menu/object-edition/object-edition.component.mjs +3 -3
- package/esm2022/lib/dashboard/components/dashboard.component.mjs +3 -3
- package/esm2022/lib/dashboard/components/manifests/manifests.component.mjs +3 -3
- package/esm2022/lib/dashboard/components/metadata/metadata.component.mjs +3 -3
- package/esm2022/lib/dashboard/components/subscriptionner.directive.mjs +3 -3
- package/esm2022/lib/dashboard/components/vizualize-raw/vizualize-raw.component.mjs +3 -3
- package/esm2022/lib/dashboard/components/widgets/base-widget.component.mjs +3 -3
- package/esm2022/lib/dashboard/components/widgets/data-widget.component.mjs +3 -3
- package/esm2022/lib/dashboard/components/widgets/datasource-selector/datasource-card/datasource-card.component.mjs +5 -5
- package/esm2022/lib/dashboard/components/widgets/datasource-selector/datasource-list/datasource-list.component.mjs +3 -3
- package/esm2022/lib/dashboard/components/widgets/datasource-selector/datasource-selector.component.mjs +3 -3
- package/esm2022/lib/dashboard/components/widgets/header/resultset-size.pipe.mjs +3 -3
- package/esm2022/lib/dashboard/components/widgets/header/widget-header.component.mjs +3 -3
- package/esm2022/lib/dashboard/components/widgets/settings/settings.component.mjs +3 -3
- package/esm2022/lib/dashboard/components/widgets/widget-filler/widget-filler.component.mjs +3 -3
- package/esm2022/lib/dashboard/components/widgets/widget-instanciator/widget-factory.service.mjs +3 -3
- package/esm2022/lib/dashboard/components/widgets/widget-instanciator/widget-instanciator.component.mjs +3 -3
- package/esm2022/lib/dashboard/components/widgets/widget-placeholder/widget-placeholder.component.mjs +3 -3
- package/esm2022/lib/dashboard/dashboard.module.mjs +4 -4
- package/esm2022/lib/dashboard/filter/base-filter.component.mjs +10 -4
- package/esm2022/lib/dashboard/filter/base-filter.module.mjs +4 -4
- package/esm2022/lib/dashboard/filter/components/filter-group/filter-group.component.mjs +23 -7
- package/esm2022/lib/dashboard/filter/components/filter-instanciator/filter-instanciator.component.mjs +19 -7
- package/esm2022/lib/dashboard/filter/filter-factory.service.mjs +3 -3
- package/esm2022/lib/dashboard/filter/filter-loader.function.mjs +15 -4
- package/esm2022/lib/dashboard/filter/style/css.component.mjs +3 -3
- package/esm2022/lib/dashboard/store/dashboard-init.service.mjs +3 -3
- package/esm2022/lib/dashboard/store/dashboard.actions.mjs +2 -2
- package/esm2022/lib/dashboard/store/dashboard.effects.mjs +3 -3
- package/esm2022/lib/dashboard/store/manifest.service.mjs +3 -3
- package/esm2022/lib/dashboard/store/refresh.service.mjs +3 -3
- package/esm2022/lib/dashboard/store/title.service.mjs +3 -3
- package/esm2022/lib/dashboard/store/wms.service.mjs +3 -3
- package/esm2022/lib/dashboard/tooltip/base-tooltip.component.mjs +3 -3
- package/esm2022/lib/dashboard/tooltip/base-tooltip.module.mjs +4 -4
- package/esm2022/lib/dashboard/tooltip/components/default/default.tooltip.component.mjs +3 -3
- package/esm2022/lib/dashboard/tooltip/tooltip-factory.service.mjs +3 -3
- package/esm2022/lib/dashboard/tooltip/tooltip-loader.function.mjs +15 -4
- package/esm2022/notification/components/notification/content/notification-content.component.mjs +3 -3
- package/esm2022/notification/components/notification/notification.component.mjs +3 -3
- package/esm2022/notification/notification.module.mjs +4 -4
- package/esm2022/notification/store/notification.effects.mjs +3 -3
- package/esm2022/notification/store/notification.service.mjs +3 -3
- package/esm2022/notification/style/css.component.mjs +3 -3
- package/esm2022/pipeline/components/pipeline-details/pipeline-details.component.mjs +3 -3
- package/esm2022/pipeline/components/pipeline-editor/pipeline-editor.component.mjs +3 -3
- package/esm2022/pipeline/components/pipeline-list/pipeline-list.component.mjs +3 -3
- package/esm2022/pipeline/components/pipeline-properties-panel.component.mjs +3 -3
- package/esm2022/pipeline/factory/pipeline-component-factory.service.mjs +3 -3
- package/esm2022/pipeline/pipeline.module.mjs +4 -4
- package/esm2022/pipeline/store/pipeline.effects.mjs +3 -3
- package/esm2022/pipeline/store/pipeline.service.mjs +3 -3
- package/esm2022/pipeline/style/css.component.mjs +3 -3
- package/esm2022/pipeline-components/filter/component/filter.component.mjs +3 -3
- package/esm2022/pipeline-components/filter/filter.module.mjs +4 -4
- package/esm2022/pipeline-components/input-datasource/component/input-datasource.component.mjs +3 -3
- package/esm2022/pipeline-components/input-datasource/input-datasource.module.mjs +4 -4
- package/esm2022/pipeline-components/noop/component/noop.component.mjs +3 -3
- package/esm2022/pipeline-components/noop/noop.module.mjs +4 -4
- package/esm2022/pipeline-components/output-dataset/component/output-dataset.component.mjs +3 -3
- package/esm2022/pipeline-components/output-dataset/output-dataset.module.mjs +4 -4
- package/esm2022/pipeline-components/subgraph/component/empty.component.mjs +3 -3
- package/esm2022/pipeline-components/subgraph/subgraph.module.mjs +4 -4
- package/esm2022/presentation/components/add-edit-presentation/add-edit-presentation.component.mjs +3 -3
- package/esm2022/presentation/components/presentation.component.mjs +5 -5
- package/esm2022/presentation/components/title-presentation/title-presentation.component.mjs +5 -5
- package/esm2022/presentation/presentation.module.mjs +4 -4
- package/esm2022/presentation/style/css.component.mjs +3 -3
- package/esm2022/restitution/components/restitution/restitution.component.mjs +3 -3
- package/esm2022/restitution/components/restitution-catalog/restitution-catalog.component.mjs +3 -3
- package/esm2022/restitution/components/restitution-list/restitution-list.component.mjs +3 -3
- package/esm2022/restitution/components/restitution-list-item/restitution-list-item.component.mjs +3 -3
- package/esm2022/restitution/restitution.module.mjs +4 -4
- package/esm2022/restitution/style/css.component.mjs +3 -3
- package/esm2022/search/components/choose-widget/choose-widget.component.mjs +3 -3
- package/esm2022/search/components/edit-named-query/edit-named-query.component.mjs +3 -3
- package/esm2022/search/components/edit-named-query-modal/edit-named-query-modal.component.mjs +3 -3
- package/esm2022/search/components/save-query/save-query.component.mjs +3 -3
- package/esm2022/search/components/save-query-button/save-query-button.component.mjs +3 -3
- package/esm2022/search/search-fulltext/search-fulltext/search-fulltext.component.mjs +3 -3
- package/esm2022/search/search-fulltext/store/search-fulltext.effects.mjs +3 -3
- package/esm2022/search/search-fulltext/store/search-fulltext.service.mjs +3 -3
- package/esm2022/search/search-home/search-home.component.mjs +3 -3
- package/esm2022/search/search-mono-class/components/search-composed/search-composed.component.mjs +3 -3
- package/esm2022/search/search-mono-class/components/search-condition/search-condition.component.mjs +3 -3
- package/esm2022/search/search-mono-class/components/search-mono-class/search-mono-class.component.mjs +3 -3
- package/esm2022/search/search-mono-class/components/search-order/search-order.component.mjs +3 -3
- package/esm2022/search/search-mono-class/components/search-select-attribute/search-select-attribute.component.mjs +3 -3
- package/esm2022/search/search-mono-class/store/search-mono-class.effects.mjs +3 -3
- package/esm2022/search/search-mono-class/store/search-mono-class.service.mjs +3 -3
- package/esm2022/search/search-multi-class/components/multi-class-condition/multi-class-condition.component.mjs +3 -3
- package/esm2022/search/search-multi-class/components/multi-class-field-selection/multi-class-field-selection.component.mjs +3 -3
- package/esm2022/search/search-multi-class/components/search-multi-class/search-multi-class.component.mjs +3 -3
- package/esm2022/search/search-multi-class/store/search-multi-class.effects.mjs +3 -3
- package/esm2022/search/search-multi-class/store/search-multi-class.service.mjs +3 -3
- package/esm2022/search/search-tools/search-tools.component.mjs +3 -3
- package/esm2022/search/search.module.mjs +4 -4
- package/esm2022/search/style/css.component.mjs +3 -3
- package/esm2022/toolbox/components/automate-refresh/automate-refresh.component.mjs +3 -3
- package/esm2022/toolbox/components/clear-view/clear-view.component.mjs +3 -3
- package/esm2022/toolbox/components/dashboard-details/dashboard-details.component.mjs +3 -3
- package/esm2022/toolbox/components/delete/delete.component.mjs +3 -3
- package/esm2022/toolbox/components/drag-widgets/drag-widgets.component.mjs +3 -3
- package/esm2022/toolbox/components/edit-mode-action/edit-mode-action.component.mjs +3 -3
- package/esm2022/toolbox/components/edit-mode-toggle/edit-mode-toggle.component.mjs +3 -3
- package/esm2022/toolbox/components/edit-presentation/edit-presentation.component.mjs +3 -3
- package/esm2022/toolbox/components/filter-settings/filter-settings.component.mjs +3 -3
- package/esm2022/toolbox/components/launch-tab/launch-tab.component.mjs +3 -3
- package/esm2022/toolbox/components/named-query/named-query.component.mjs +3 -3
- package/esm2022/toolbox/components/refresh-datasets/refresh-datasets.component.mjs +3 -3
- package/esm2022/toolbox/components/save-view/save-view.component.mjs +3 -3
- package/esm2022/toolbox/components/select-grid-layout/select-grid-layout.component.mjs +3 -3
- package/esm2022/toolbox/components/share/share.component.mjs +3 -3
- package/esm2022/toolbox/components/switch-to-edit-content/switch-to-edit-content.component.mjs +3 -3
- package/esm2022/toolbox/components/toolbox.component.mjs +3 -3
- package/esm2022/toolbox/shared/presentation-form/presentation-form.component.mjs +3 -3
- package/esm2022/toolbox/shared/toolbox-action/toolbox-action.component.mjs +3 -3
- package/esm2022/toolbox/shared/toolbox-action-instanciator/toolbox-action-instanciator.component.mjs +3 -3
- package/esm2022/toolbox/style/css.component.mjs +3 -3
- package/esm2022/toolbox/toolbox.module.mjs +4 -4
- package/esm2022/tooltips/attribute/attribute-tooltip.component.mjs +3 -3
- package/esm2022/tooltips/attribute/attribute-tooltip.module.mjs +4 -4
- package/esm2022/tooltips/cluster/cluster-tooltip.component.mjs +3 -3
- package/esm2022/tooltips/cluster/cluster-tooltip.module.mjs +4 -4
- package/esm2022/widgets/widget-aggregated-chart/component/widget-aggregated-chart.component.mjs +29 -15
- package/esm2022/widgets/widget-aggregated-chart/i18n/en.translations.mjs +2 -1
- package/esm2022/widgets/widget-aggregated-chart/i18n/fr.translations.mjs +7 -6
- package/esm2022/widgets/widget-aggregated-chart/style/css.component.mjs +3 -3
- package/esm2022/widgets/widget-aggregated-chart/widget-aggregated-chart.module.mjs +4 -4
- package/esm2022/widgets/widget-analytic/component/widget-analytic.component.mjs +3 -3
- package/esm2022/widgets/widget-analytic/style/css.component.mjs +3 -3
- package/esm2022/widgets/widget-analytic/widget-analytic.module.mjs +4 -4
- package/esm2022/widgets/widget-chart/component/widget-chart.component.mjs +3 -3
- package/esm2022/widgets/widget-chart/style/css.component.mjs +3 -3
- package/esm2022/widgets/widget-chart/widget-chart.module.mjs +4 -4
- package/esm2022/widgets/widget-detail/component/widget-detail.component.mjs +3 -3
- package/esm2022/widgets/widget-detail/style/css.component.mjs +3 -3
- package/esm2022/widgets/widget-detail/widget-detail.module.mjs +4 -4
- package/esm2022/widgets/widget-graph/component/widget-graph.component.mjs +3 -3
- package/esm2022/widgets/widget-graph/style/css.component.mjs +3 -3
- package/esm2022/widgets/widget-graph/widget-graph.module.mjs +4 -4
- package/esm2022/widgets/widget-iframe/component/widget-iframe.component.mjs +3 -3
- package/esm2022/widgets/widget-iframe/messaging/iframe-messaging.service.mjs +3 -3
- package/esm2022/widgets/widget-iframe/style/css.component.mjs +3 -3
- package/esm2022/widgets/widget-iframe/widget-iframe.module.mjs +4 -4
- package/esm2022/widgets/widget-image/component/widget-image.component.mjs +3 -3
- package/esm2022/widgets/widget-image/style/css.component.mjs +3 -3
- package/esm2022/widgets/widget-image/widget-image.module.mjs +4 -4
- package/esm2022/widgets/widget-map/component/widget-map-layer.service.mjs +3 -3
- package/esm2022/widgets/widget-map/component/widget-map.component.mjs +3 -3
- package/esm2022/widgets/widget-map/pipe/widget-map-geometry-fields-for.pipe.mjs +3 -3
- package/esm2022/widgets/widget-map/pipe/widget-map-legend-url.pipe.mjs +5 -5
- package/esm2022/widgets/widget-map/style/css.component.mjs +3 -3
- package/esm2022/widgets/widget-map/widget-map.module.mjs +4 -4
- package/esm2022/widgets/widget-table/component/widget-table.component.mjs +3 -3
- package/esm2022/widgets/widget-table/expand-value/detach-row.directive.mjs +3 -3
- package/esm2022/widgets/widget-table/expand-value/expand-value.component.mjs +3 -3
- package/esm2022/widgets/widget-table/get-value/get-value.pipe.mjs +3 -3
- package/esm2022/widgets/widget-table/resizable/resizable.component.mjs +3 -3
- package/esm2022/widgets/widget-table/resizable/resizable.directive.mjs +3 -3
- package/esm2022/widgets/widget-table/style/css.component.mjs +3 -3
- package/esm2022/widgets/widget-table/widget-table.module.mjs +4 -4
- package/esm2022/widgets/widget-template/component/widget-template.component.mjs +3 -3
- package/esm2022/widgets/widget-template/style/css.component.mjs +3 -3
- package/esm2022/widgets/widget-template/widget-template.module.mjs +4 -4
- package/esm2022/widgets/widget-tile/component/widget-tile.component.mjs +3 -3
- package/esm2022/widgets/widget-tile/style/css.component.mjs +3 -3
- package/esm2022/widgets/widget-tile/widget-tile.module.mjs +4 -4
- package/esm2022/widgets/widget-vega/component/widget-vega.component.mjs +3 -3
- package/esm2022/widgets/widget-vega/style/css.component.mjs +3 -3
- package/esm2022/widgets/widget-vega/widget-vega.module.mjs +4 -4
- package/fesm2022/provoly-dashboard-admin.mjs +267 -267
- package/fesm2022/provoly-dashboard-admin.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-components-card.mjs +22 -22
- package/fesm2022/provoly-dashboard-components-checkbox.mjs +7 -7
- package/fesm2022/provoly-dashboard-components-color-picker.mjs +7 -7
- package/fesm2022/provoly-dashboard-components-data-format.mjs +7 -7
- package/fesm2022/provoly-dashboard-components-expand-panel.mjs +10 -10
- package/fesm2022/provoly-dashboard-components-filter.mjs +7 -7
- package/fesm2022/provoly-dashboard-components-metadata-editor.mjs +16 -16
- package/fesm2022/provoly-dashboard-components-metadata-editor.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-components-page-loader.mjs +7 -7
- package/fesm2022/provoly-dashboard-components-paginator.mjs +10 -10
- package/fesm2022/provoly-dashboard-components-scheme-picker.mjs +11 -11
- package/fesm2022/provoly-dashboard-components-scheme-picker.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-components-stepper.mjs +13 -13
- package/fesm2022/provoly-dashboard-components-text-editor.mjs +16 -16
- package/fesm2022/provoly-dashboard-dataset.mjs +28 -22
- package/fesm2022/provoly-dashboard-dataset.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-filters-autocomplete.mjs +15 -11
- package/fesm2022/provoly-dashboard-filters-autocomplete.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-filters-date.mjs +9 -8
- package/fesm2022/provoly-dashboard-filters-date.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-filters-list.mjs +18 -14
- package/fesm2022/provoly-dashboard-filters-list.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-filters-number.mjs +18 -8
- package/fesm2022/provoly-dashboard-filters-number.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-filters-text.mjs +18 -8
- package/fesm2022/provoly-dashboard-filters-text.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-import.mjs +26 -26
- package/fesm2022/provoly-dashboard-import.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-notification.mjs +19 -19
- package/fesm2022/provoly-dashboard-pipeline-components-filter.mjs +7 -7
- package/fesm2022/provoly-dashboard-pipeline-components-filter.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-pipeline-components-input-datasource.mjs +7 -7
- package/fesm2022/provoly-dashboard-pipeline-components-input-datasource.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-pipeline-components-noop.mjs +7 -7
- package/fesm2022/provoly-dashboard-pipeline-components-output-dataset.mjs +7 -7
- package/fesm2022/provoly-dashboard-pipeline-components-output-dataset.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-pipeline-components-subgraph.mjs +7 -7
- package/fesm2022/provoly-dashboard-pipeline.mjs +28 -28
- package/fesm2022/provoly-dashboard-presentation.mjs +18 -18
- package/fesm2022/provoly-dashboard-presentation.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-restitution.mjs +19 -19
- package/fesm2022/provoly-dashboard-restitution.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-search.mjs +73 -73
- package/fesm2022/provoly-dashboard-search.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-toolbox.mjs +67 -67
- package/fesm2022/provoly-dashboard-toolbox.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-tooltips-attribute.mjs +7 -7
- package/fesm2022/provoly-dashboard-tooltips-cluster.mjs +7 -7
- package/fesm2022/provoly-dashboard-widgets-widget-aggregated-chart.mjs +42 -26
- package/fesm2022/provoly-dashboard-widgets-widget-aggregated-chart.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-widgets-widget-analytic.mjs +10 -10
- package/fesm2022/provoly-dashboard-widgets-widget-analytic.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-widgets-widget-chart.mjs +10 -10
- package/fesm2022/provoly-dashboard-widgets-widget-chart.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-widgets-widget-detail.mjs +10 -10
- package/fesm2022/provoly-dashboard-widgets-widget-graph.mjs +10 -10
- package/fesm2022/provoly-dashboard-widgets-widget-graph.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-widgets-widget-iframe.mjs +13 -13
- package/fesm2022/provoly-dashboard-widgets-widget-image.mjs +10 -10
- package/fesm2022/provoly-dashboard-widgets-widget-map.mjs +20 -20
- package/fesm2022/provoly-dashboard-widgets-widget-map.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-widgets-widget-table.mjs +25 -25
- package/fesm2022/provoly-dashboard-widgets-widget-table.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-widgets-widget-template.mjs +10 -10
- package/fesm2022/provoly-dashboard-widgets-widget-tile.mjs +10 -10
- package/fesm2022/provoly-dashboard-widgets-widget-tile.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-widgets-widget-vega.mjs +10 -10
- package/fesm2022/provoly-dashboard.mjs +512 -450
- package/fesm2022/provoly-dashboard.mjs.map +1 -1
- package/filters/autocomplete/autocomplete.component.d.ts +1 -0
- package/filters/list/list-filter.component.d.ts +1 -0
- package/filters/list/list-filter.module.d.ts +1 -1
- package/filters/number/number-filter.component.d.ts +2 -0
- package/filters/text/text-filter.component.d.ts +2 -0
- package/lib/core/components/select/select.component.d.ts +3 -1
- package/lib/core/model/filter.interface.d.ts +1 -0
- package/lib/core/store/search/search.actions.d.ts +4 -4
- package/lib/core/store/search/search.effects.d.ts +3 -3
- package/lib/dashboard/filter/base-filter.component.d.ts +3 -1
- package/lib/dashboard/filter/components/filter-group/filter-group.component.d.ts +5 -1
- package/lib/dashboard/filter/components/filter-instanciator/filter-instanciator.component.d.ts +4 -2
- package/lib/dashboard/store/dashboard.actions.d.ts +2 -2
- package/lib/dashboard/store/dashboard.effects.d.ts +3 -3
- package/package.json +37 -37
- package/widgets/widget-aggregated-chart/component/widget-aggregated-chart.component.d.ts +1 -0
- package/widgets/widget-aggregated-chart/i18n/en.translations.d.ts +1 -0
- package/widgets/widget-aggregated-chart/i18n/fr.translations.d.ts +1 -0
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
import { EventEmitter, OnInit } from '@angular/core';
|
|
2
2
|
import { Store } from '@ngrx/store';
|
|
3
|
-
import { Dataset, DatasetVersion, PryBaseAccess, PryDialogService, ResultSets, SubscriptionnerDirective, ViewMode, WidgetManifest } from '@provoly/dashboard';
|
|
3
|
+
import { Dataset, DatasetVersion, PryBaseAccess, PryDialogService, PryI18nService, PryTitleService, ResultSets, SubscriptionnerDirective, ViewMode, WidgetManifest } from '@provoly/dashboard';
|
|
4
4
|
import { Observable } from 'rxjs';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
export declare class PryDatasetDetailComponent extends SubscriptionnerDirective implements OnInit {
|
|
7
7
|
private store;
|
|
8
8
|
protected access: PryBaseAccess;
|
|
9
9
|
private dialog;
|
|
10
|
+
private titleService;
|
|
11
|
+
private i18nService;
|
|
10
12
|
dataset: Dataset;
|
|
11
13
|
goToCatalog: EventEmitter<any>;
|
|
12
14
|
widgetManifest: {
|
|
@@ -24,7 +26,7 @@ export declare class PryDatasetDetailComponent extends SubscriptionnerDirective
|
|
|
24
26
|
currentDataset$: Observable<Dataset | undefined>;
|
|
25
27
|
isPanelOpen: boolean;
|
|
26
28
|
selectedVersion?: DatasetVersion;
|
|
27
|
-
constructor(store: Store, access: PryBaseAccess, dialog: PryDialogService);
|
|
29
|
+
constructor(store: Store, access: PryBaseAccess, dialog: PryDialogService, titleService: PryTitleService, i18nService: PryI18nService);
|
|
28
30
|
ngOnInit(): void;
|
|
29
31
|
goBack(): void;
|
|
30
32
|
refresh(): void;
|
|
@@ -39,6 +41,6 @@ export declare class PryDatasetDetailComponent extends SubscriptionnerDirective
|
|
|
39
41
|
editVersion(): void;
|
|
40
42
|
formValidated($event: Partial<DatasetVersion>): void;
|
|
41
43
|
askDelete(version: DatasetVersion, $event?: Event): void;
|
|
42
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<PryDatasetDetailComponent, [null, { optional: true; }, null]>;
|
|
44
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<PryDatasetDetailComponent, [null, { optional: true; }, null, null, null]>;
|
|
43
45
|
static ɵcmp: i0.ɵɵComponentDeclaration<PryDatasetDetailComponent, "pry-dataset-detail", never, { "dataset": { "alias": "dataset"; "required": false; }; }, { "goToCatalog": "goToCatalog"; }, never, never, false, never>;
|
|
44
46
|
}
|
|
@@ -553,11 +553,11 @@ export const routes = [
|
|
|
553
553
|
}
|
|
554
554
|
];
|
|
555
555
|
export class AdminRoutingModule {
|
|
556
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
557
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.
|
|
558
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.
|
|
556
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: AdminRoutingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
557
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.7", ngImport: i0, type: AdminRoutingModule, imports: [i1.RouterModule], exports: [RouterModule] }); }
|
|
558
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: AdminRoutingModule, imports: [RouterModule.forChild(routes), RouterModule] }); }
|
|
559
559
|
}
|
|
560
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
560
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: AdminRoutingModule, decorators: [{
|
|
561
561
|
type: NgModule,
|
|
562
562
|
args: [{
|
|
563
563
|
imports: [RouterModule.forChild(routes)],
|
|
@@ -116,8 +116,8 @@ export class PryAdminModule {
|
|
|
116
116
|
this.pryTranslateService.addLangObject('fr', 'admin', frTranslations);
|
|
117
117
|
this.pryTranslateService.addLangObject('en', 'admin', enTranslations);
|
|
118
118
|
}
|
|
119
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
120
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.
|
|
119
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: PryAdminModule, deps: [{ token: i1.PryI18nService }], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
120
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.7", ngImport: i0, type: PryAdminModule, declarations: [PryAdminComponent,
|
|
121
121
|
AdminEnvironmentComponent,
|
|
122
122
|
AdminMetadataUserComponent,
|
|
123
123
|
AdminClassesComponent,
|
|
@@ -209,7 +209,7 @@ export class PryAdminModule {
|
|
|
209
209
|
PryDatasetModule,
|
|
210
210
|
PryShareModule,
|
|
211
211
|
PryPageLoaderModule] }); }
|
|
212
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.
|
|
212
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: PryAdminModule, providers: [DatePipe], imports: [CommonModule,
|
|
213
213
|
PryCoreModule,
|
|
214
214
|
AdminRoutingModule,
|
|
215
215
|
StoreModule.forFeature(adminFeatureKey, adminReducer),
|
|
@@ -252,7 +252,7 @@ export class PryAdminModule {
|
|
|
252
252
|
PryShareModule,
|
|
253
253
|
PryPageLoaderModule] }); }
|
|
254
254
|
}
|
|
255
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
255
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: PryAdminModule, decorators: [{
|
|
256
256
|
type: NgModule,
|
|
257
257
|
args: [{
|
|
258
258
|
providers: [DatePipe],
|
|
@@ -39,10 +39,10 @@ export class AdminAbacRulesEditComponent {
|
|
|
39
39
|
ngOnDestroy() {
|
|
40
40
|
this.store.dispatch(AbacRulesActions.resetEditAbacRule());
|
|
41
41
|
}
|
|
42
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
43
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.
|
|
42
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: AdminAbacRulesEditComponent, deps: [{ token: i1.Store }, { token: i2.Router }, { token: i2.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
43
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: AdminAbacRulesEditComponent, selector: "pry-admin-abac-rules-edit", ngImport: i0, template: "<div class=\"o-base-container\">\n <h1 class=\"a-h1\">{{ '@pry.admin.abac-rules.title.edit' | i18n }}</h1>\n <pry-admin-abac-rules-form [edit]=\"true\"></pry-admin-abac-rules-form>\n</div>\n", dependencies: [{ kind: "component", type: i3.AdminAbacRulesFormComponent, selector: "pry-admin-abac-rules-form", inputs: ["readonly", "edit"] }, { kind: "pipe", type: i4.I18nPipe, name: "i18n" }] }); }
|
|
44
44
|
}
|
|
45
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
45
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: AdminAbacRulesEditComponent, decorators: [{
|
|
46
46
|
type: Component,
|
|
47
47
|
args: [{ selector: 'pry-admin-abac-rules-edit', template: "<div class=\"o-base-container\">\n <h1 class=\"a-h1\">{{ '@pry.admin.abac-rules.title.edit' | i18n }}</h1>\n <pry-admin-abac-rules-form [edit]=\"true\"></pry-admin-abac-rules-form>\n</div>\n" }]
|
|
48
48
|
}], ctorParameters: () => [{ type: i1.Store }, { type: i2.Router }, { type: i2.ActivatedRoute }] });
|
|
@@ -43,10 +43,10 @@ export class AdminAbacRulesFormComponent {
|
|
|
43
43
|
const backPath = this.router.createUrlTree(['..'], { relativeTo: this.route });
|
|
44
44
|
this.store.dispatch(AbacRulesActions.cancelAbacRuleEdition({ redirect: backPath.toString() }));
|
|
45
45
|
}
|
|
46
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
47
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.6", type: AdminAbacRulesFormComponent, selector: "pry-admin-abac-rules-form", inputs: { readonly: "readonly", edit: "edit" }, ngImport: i0, template: "<ng-container *ngIf=\"editAbacRule$ | async as rule\">\n <form class=\"o-form\" #abacRuleForm=\"ngForm\">\n <div class=\"row\">\n <div class=\"col\">\n <div class=\"m-form-label-field\">\n <label class=\"a-label\" id=\"name-label\" for=\"inputName\">\n {{ '@pry.admin.abac-rules.form.name' | i18n }} *\n <span class=\"u-visually-hidden\">({{ '@pry.admin.required' | i18n }})</span>\n </label>\n <input\n id=\"inputName\"\n type=\"text\"\n [ngModel]=\"rule.name\"\n (ngModelChange)=\"onChangeAbacRuleProperty('name', $event)\"\n class=\"a-form-field\"\n name=\"name\"\n #name=\"ngModel\"\n maxlength=\"50\"\n required\n [readonly]=\"readonly\"\n [attr.aria-labelledby]=\"isSubmitted && name?.invalid ? 'name-label name-error' : 'name-label'\"\n [attr.aria-invalid]=\"isSubmitted && name?.invalid\"\n />\n <label\n class=\"a-label a-label--help -error\"\n id=\"name-error\"\n for=\"inputName\"\n *ngIf=\"isSubmitted && name.invalid\"\n >{{ '@pry.admin.required' | i18n }}</label\n >\n </div>\n\n <fieldset class=\"m-form-radio-group-wrapper\" [disabled]=\"readonly\">\n <legend class=\"a-label\">\n {{ '@pry.admin.abac-rules.form.status' | i18n }} *\n <span class=\"u-visually-hidden\">({{ '@pry.admin.required' | i18n }})</span>\n </legend>\n <div class=\"m-form-radio-group\">\n <div class=\"m-form-radio-group__item\">\n <input\n class=\"a-form-field\"\n type=\"radio\"\n id=\"newRuleTrue\"\n name=\"active\"\n [ngModel]=\"rule.active\"\n (ngModelChange)=\"!readonly && onChangeAbacRuleProperty('active', $event)\"\n [value]=\"true\"\n />\n <label for=\"newRuleTrue\" class=\"a-label\">\n {{ '@pry.admin.abac-rules.form.statusActive' | i18n }}\n </label>\n </div>\n <div class=\"m-form-radio-group__item\">\n <input\n class=\"a-form-field\"\n type=\"radio\"\n id=\"newRuleFalse\"\n name=\"active\"\n [ngModel]=\"rule.active\"\n (ngModelChange)=\"!readonly && onChangeAbacRuleProperty('active', $event)\"\n [value]=\"false\"\n />\n <label for=\"newRuleFalse\" class=\"a-label\">\n {{ '@pry.admin.abac-rules.form.statusInactive' | i18n }}\n </label>\n </div>\n </div>\n </fieldset>\n </div>\n\n <div class=\"col\">\n <div class=\"m-form-label-field\">\n <label class=\"a-label\" for=\"abac-rules-description\">{{\n '@pry.admin.abac-rules.form.description' | i18n\n }}</label>\n <textarea\n name=\"description\"\n id=\"abac-rules-description\"\n [ngModel]=\"rule.description\"\n (ngModelChange)=\"onChangeAbacRuleProperty('description', $event)\"\n class=\"a-form-field\"\n maxlength=\"90\"\n [readonly]=\"readonly\"\n ></textarea>\n </div>\n\n <div class=\"m-form-label-field\">\n <label id=\"predicate-label\" for=\"predicate\" class=\"a-label\">\n {{ '@pry.admin.abac-rules.form.predicate' | i18n }} *\n <span class=\"u-visually-hidden\">({{ '@pry.admin.required' | i18n }})</span>\n </label>\n <pry-select\n id=\"predicate\"\n [attr.aria-labelledby]=\"\n isSubmitted && abacRuleForm.form.get('predicate')?.invalid\n ? 'predicate-label predicate-error'\n : 'predicate-label'\n \"\n [disabled]=\"readonly\"\n [items]=\"predicates$ | async\"\n bindLabel=\"name\"\n bindValue=\"id\"\n [template]=\"templateOption\"\n name=\"predicate\"\n [ngModel]=\"rule.predicate\"\n (ngModelChange)=\"onChangeAbacRuleProperty('predicate', $event)\"\n [isForm]=\"!readonly\"\n [attr.aria-invalid]=\"isSubmitted && abacRuleForm.form.get('predicate')?.invalid\"\n required\n ></pry-select>\n\n <ng-template #templateOption let-item=\"item\">\n <ng-container *ngIf=\"toPredicate(item); let item\">\n <div class=\"u-display-flex -column\">\n <span>#{{ item.id }}</span>\n <span>{{ item.name }}</span>\n <span>{{ item.value }}</span>\n </div>\n </ng-container>\n </ng-template>\n <label\n class=\"a-label a-label--help -error\"\n id=\"predicate-error\"\n for=\"predicate\"\n *ngIf=\"isSubmitted && abacRuleForm.form.get('predicate')?.invalid\"\n >{{ '@pry.admin.required' | i18n }}</label\n >\n </div>\n\n <fieldset class=\"m-form-radio-group-wrapper\" [disabled]=\"readonly\">\n <legend class=\"a-label\">\n <label>{{ '@pry.admin.abac-rules.form.type' | i18n }}</label> *\n <span class=\"u-visually-hidden\">({{ '@pry.admin.required' | i18n }})</span>\n </legend>\n\n <div class=\"m-form-radio-group\">\n <ng-container *ngIf=\"typeSelected$ | async; else typeNotSelected\">\n <div class=\"m-form-radio-group__item\">\n <input\n class=\"a-form-field\"\n type=\"radio\"\n disabled\n id=\"metadataId\"\n name=\"type\"\n [ngModel]=\"rule.type\"\n value=\"METADATA\"\n />\n <label class=\"a-label\" for=\"metadataId\">\n {{ '@pry.admin.abac-rules.form.typeMetadata' | i18n }}\n </label>\n </div>\n <div class=\"m-form-radio-group__item\">\n <input\n class=\"a-form-field\"\n type=\"radio\"\n disabled\n id=\"attributeId\"\n name=\"type\"\n [ngModel]=\"rule.type\"\n value=\"ATTRIBUTE\"\n />\n <label class=\"a-label\" for=\"attributeId\">\n {{ '@pry.admin.abac-rules.form.typeAttribute' | i18n }}\n </label>\n </div>\n <span *ngIf=\"!readonly\" style=\"font-size: 12px; font-style: italic\">{{\n '@pry.admin.abac-rules.form.typeSelected' | i18n\n }}</span>\n </ng-container>\n\n <ng-template #typeNotSelected>\n <div class=\"m-form-radio-group__item\">\n <input\n class=\"a-form-field\"\n type=\"radio\"\n id=\"metadataId\"\n name=\"type\"\n [ngModel]=\"rule.type\"\n (ngModelChange)=\"onChangeAbacRuleProperty('type', METADATA)\"\n value=\"METADATA\"\n [disabled]=\"readonly\"\n />\n <label class=\"a-label\" for=\"metadataId\">\n {{ '@pry.admin.abac-rules.form.typeMetadata' | i18n }}\n </label>\n </div>\n <div class=\"m-form-radio-group__item\">\n <input\n class=\"a-form-field\"\n type=\"radio\"\n id=\"attributeId\"\n name=\"type\"\n [ngModel]=\"rule.type\"\n (ngModelChange)=\"onChangeAbacRuleProperty('type', ATTRIBUTE)\"\n value=\"ATTRIBUTE\"\n [disabled]=\"readonly\"\n />\n <label class=\"a-label\" for=\"attributeId\">\n {{ '@pry.admin.abac-rules.form.typeAttribute' | i18n }}\n </label>\n </div>\n </ng-template>\n </div>\n </fieldset>\n </div>\n </div>\n\n <ng-container *ngIf=\"editAbacRuleConditionsMasterId$ | async as masterId\">\n <div class=\"row\">\n <div class=\"col\">\n <pry-composed-condition\n class=\"o-component-pry-composed-condition\"\n style=\"margin: 1rem\"\n [rootElement]=\"true\"\n [id]=\"masterId\"\n [readonly]=\"readonly\"\n ></pry-composed-condition>\n </div>\n </div>\n </ng-container>\n\n <div *ngIf=\"!readonly\" class=\"m-btn-group -align-center -width-sm\">\n <button type=\"button\" class=\"a-btn a-btn--secondary\" (click)=\"goBack()\">\n {{ '@pry.admin.cancel' | i18n }}\n </button>\n <button type=\"button\" class=\"a-btn a-btn--primary\" (click)=\"onCreateAbacRule(abacRuleForm)\">\n {{ '@pry.admin.' + (edit ? 'edit' : 'create') | i18n }}\n </button>\n </div>\n </form>\n</ng-container>\n", dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4.RadioControlValueAccessor, selector: "input[type=radio][formControlName],input[type=radio][formControl],input[type=radio][ngModel]", inputs: ["name", "formControlName", "value"] }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i4.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i4.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i4.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i5.PrySelectComponent, selector: "pry-select", inputs: ["items", "clearable", "multiple", "closeOnSelect", "placeholder", "isForm", "required", "name", "autocomplete", "alwaysShowAutosuggestedValues", "externalAutocompleteService", "bindValue", "bindLabel", "iconSize", "bindIcon", "template", "i18nPrefix", "bindClasses", "loading", "elementRef"], outputs: ["searched", "cleared", "clicked"] }, { kind: "component", type: i6.ComposedConditionComponent, selector: "pry-composed-condition", inputs: ["id", "readonly", "rootElement"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i5.I18nPipe, name: "i18n" }] }); }
|
|
46
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: AdminAbacRulesFormComponent, deps: [{ token: i1.Store }, { token: i2.Router }, { token: i2.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
47
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: AdminAbacRulesFormComponent, selector: "pry-admin-abac-rules-form", inputs: { readonly: "readonly", edit: "edit" }, ngImport: i0, template: "<ng-container *ngIf=\"editAbacRule$ | async as rule\">\n <form class=\"o-form\" #abacRuleForm=\"ngForm\">\n <div class=\"row\">\n <div class=\"col\">\n <div class=\"m-form-label-field\">\n <label class=\"a-label\" id=\"name-label\" for=\"inputName\">\n {{ '@pry.admin.abac-rules.form.name' | i18n }} *\n <span class=\"u-visually-hidden\">({{ '@pry.admin.required' | i18n }})</span>\n </label>\n <input\n id=\"inputName\"\n type=\"text\"\n [ngModel]=\"rule.name\"\n (ngModelChange)=\"onChangeAbacRuleProperty('name', $event)\"\n class=\"a-form-field\"\n name=\"name\"\n #name=\"ngModel\"\n maxlength=\"50\"\n required\n [readonly]=\"readonly\"\n [attr.aria-labelledby]=\"isSubmitted && name?.invalid ? 'name-label name-error' : 'name-label'\"\n [attr.aria-invalid]=\"isSubmitted && name?.invalid\"\n />\n <label\n class=\"a-label a-label--help -error\"\n id=\"name-error\"\n for=\"inputName\"\n *ngIf=\"isSubmitted && name.invalid\"\n >{{ '@pry.admin.required' | i18n }}</label\n >\n </div>\n\n <fieldset class=\"m-form-radio-group-wrapper\" [disabled]=\"readonly\">\n <legend class=\"a-label\">\n {{ '@pry.admin.abac-rules.form.status' | i18n }} *\n <span class=\"u-visually-hidden\">({{ '@pry.admin.required' | i18n }})</span>\n </legend>\n <div class=\"m-form-radio-group\">\n <div class=\"m-form-radio-group__item\">\n <input\n class=\"a-form-field\"\n type=\"radio\"\n id=\"newRuleTrue\"\n name=\"active\"\n [ngModel]=\"rule.active\"\n (ngModelChange)=\"!readonly && onChangeAbacRuleProperty('active', $event)\"\n [value]=\"true\"\n />\n <label for=\"newRuleTrue\" class=\"a-label\">\n {{ '@pry.admin.abac-rules.form.statusActive' | i18n }}\n </label>\n </div>\n <div class=\"m-form-radio-group__item\">\n <input\n class=\"a-form-field\"\n type=\"radio\"\n id=\"newRuleFalse\"\n name=\"active\"\n [ngModel]=\"rule.active\"\n (ngModelChange)=\"!readonly && onChangeAbacRuleProperty('active', $event)\"\n [value]=\"false\"\n />\n <label for=\"newRuleFalse\" class=\"a-label\">\n {{ '@pry.admin.abac-rules.form.statusInactive' | i18n }}\n </label>\n </div>\n </div>\n </fieldset>\n </div>\n\n <div class=\"col\">\n <div class=\"m-form-label-field\">\n <label class=\"a-label\" for=\"abac-rules-description\">{{\n '@pry.admin.abac-rules.form.description' | i18n\n }}</label>\n <textarea\n name=\"description\"\n id=\"abac-rules-description\"\n [ngModel]=\"rule.description\"\n (ngModelChange)=\"onChangeAbacRuleProperty('description', $event)\"\n class=\"a-form-field\"\n maxlength=\"90\"\n [readonly]=\"readonly\"\n ></textarea>\n </div>\n\n <div class=\"m-form-label-field\">\n <label id=\"predicate-label\" for=\"predicate\" class=\"a-label\">\n {{ '@pry.admin.abac-rules.form.predicate' | i18n }} *\n <span class=\"u-visually-hidden\">({{ '@pry.admin.required' | i18n }})</span>\n </label>\n <pry-select\n id=\"predicate\"\n [attr.aria-labelledby]=\"\n isSubmitted && abacRuleForm.form.get('predicate')?.invalid\n ? 'predicate-label predicate-error'\n : 'predicate-label'\n \"\n [disabled]=\"readonly\"\n [items]=\"predicates$ | async\"\n bindLabel=\"name\"\n bindValue=\"id\"\n [template]=\"templateOption\"\n name=\"predicate\"\n [ngModel]=\"rule.predicate\"\n (ngModelChange)=\"onChangeAbacRuleProperty('predicate', $event)\"\n [isForm]=\"!readonly\"\n [attr.aria-invalid]=\"isSubmitted && abacRuleForm.form.get('predicate')?.invalid\"\n required\n ></pry-select>\n\n <ng-template #templateOption let-item=\"item\">\n <ng-container *ngIf=\"toPredicate(item); let item\">\n <div class=\"u-display-flex -column\">\n <span>#{{ item.id }}</span>\n <span>{{ item.name }}</span>\n <span>{{ item.value }}</span>\n </div>\n </ng-container>\n </ng-template>\n <label\n class=\"a-label a-label--help -error\"\n id=\"predicate-error\"\n for=\"predicate\"\n *ngIf=\"isSubmitted && abacRuleForm.form.get('predicate')?.invalid\"\n >{{ '@pry.admin.required' | i18n }}</label\n >\n </div>\n\n <fieldset class=\"m-form-radio-group-wrapper\" [disabled]=\"readonly\">\n <legend class=\"a-label\">\n <label>{{ '@pry.admin.abac-rules.form.type' | i18n }}</label> *\n <span class=\"u-visually-hidden\">({{ '@pry.admin.required' | i18n }})</span>\n </legend>\n\n <div class=\"m-form-radio-group\">\n <ng-container *ngIf=\"typeSelected$ | async; else typeNotSelected\">\n <div class=\"m-form-radio-group__item\">\n <input\n class=\"a-form-field\"\n type=\"radio\"\n disabled\n id=\"metadataId\"\n name=\"type\"\n [ngModel]=\"rule.type\"\n value=\"METADATA\"\n />\n <label class=\"a-label\" for=\"metadataId\">\n {{ '@pry.admin.abac-rules.form.typeMetadata' | i18n }}\n </label>\n </div>\n <div class=\"m-form-radio-group__item\">\n <input\n class=\"a-form-field\"\n type=\"radio\"\n disabled\n id=\"attributeId\"\n name=\"type\"\n [ngModel]=\"rule.type\"\n value=\"ATTRIBUTE\"\n />\n <label class=\"a-label\" for=\"attributeId\">\n {{ '@pry.admin.abac-rules.form.typeAttribute' | i18n }}\n </label>\n </div>\n <span *ngIf=\"!readonly\" style=\"font-size: 12px; font-style: italic\">{{\n '@pry.admin.abac-rules.form.typeSelected' | i18n\n }}</span>\n </ng-container>\n\n <ng-template #typeNotSelected>\n <div class=\"m-form-radio-group__item\">\n <input\n class=\"a-form-field\"\n type=\"radio\"\n id=\"metadataId\"\n name=\"type\"\n [ngModel]=\"rule.type\"\n (ngModelChange)=\"onChangeAbacRuleProperty('type', METADATA)\"\n value=\"METADATA\"\n [disabled]=\"readonly\"\n />\n <label class=\"a-label\" for=\"metadataId\">\n {{ '@pry.admin.abac-rules.form.typeMetadata' | i18n }}\n </label>\n </div>\n <div class=\"m-form-radio-group__item\">\n <input\n class=\"a-form-field\"\n type=\"radio\"\n id=\"attributeId\"\n name=\"type\"\n [ngModel]=\"rule.type\"\n (ngModelChange)=\"onChangeAbacRuleProperty('type', ATTRIBUTE)\"\n value=\"ATTRIBUTE\"\n [disabled]=\"readonly\"\n />\n <label class=\"a-label\" for=\"attributeId\">\n {{ '@pry.admin.abac-rules.form.typeAttribute' | i18n }}\n </label>\n </div>\n </ng-template>\n </div>\n </fieldset>\n </div>\n </div>\n\n <ng-container *ngIf=\"editAbacRuleConditionsMasterId$ | async as masterId\">\n <div class=\"row\">\n <div class=\"col\">\n <pry-composed-condition\n class=\"o-component-pry-composed-condition\"\n style=\"margin: 1rem\"\n [rootElement]=\"true\"\n [id]=\"masterId\"\n [readonly]=\"readonly\"\n ></pry-composed-condition>\n </div>\n </div>\n </ng-container>\n\n <div *ngIf=\"!readonly\" class=\"m-btn-group -align-center -width-sm\">\n <button type=\"button\" class=\"a-btn a-btn--secondary\" (click)=\"goBack()\">\n {{ '@pry.admin.cancel' | i18n }}\n </button>\n <button type=\"button\" class=\"a-btn a-btn--primary\" (click)=\"onCreateAbacRule(abacRuleForm)\">\n {{ '@pry.admin.' + (edit ? 'edit' : 'create') | i18n }}\n </button>\n </div>\n </form>\n</ng-container>\n", dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4.RadioControlValueAccessor, selector: "input[type=radio][formControlName],input[type=radio][formControl],input[type=radio][ngModel]", inputs: ["name", "formControlName", "value"] }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i4.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i4.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i4.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i5.PrySelectComponent, selector: "pry-select", inputs: ["items", "clearable", "multiple", "closeOnSelect", "placeholder", "isForm", "required", "name", "autocomplete", "alwaysShowAutosuggestedValues", "externalAutocompleteService", "bindValue", "bindLabel", "iconSize", "bindIcon", "template", "i18nPrefix", "bindClasses", "loading", "elementRef"], outputs: ["searched", "cleared", "clicked", "pressedEnter"] }, { kind: "component", type: i6.ComposedConditionComponent, selector: "pry-composed-condition", inputs: ["id", "readonly", "rootElement"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i5.I18nPipe, name: "i18n" }] }); }
|
|
48
48
|
}
|
|
49
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
49
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: AdminAbacRulesFormComponent, decorators: [{
|
|
50
50
|
type: Component,
|
|
51
51
|
args: [{ selector: 'pry-admin-abac-rules-form', template: "<ng-container *ngIf=\"editAbacRule$ | async as rule\">\n <form class=\"o-form\" #abacRuleForm=\"ngForm\">\n <div class=\"row\">\n <div class=\"col\">\n <div class=\"m-form-label-field\">\n <label class=\"a-label\" id=\"name-label\" for=\"inputName\">\n {{ '@pry.admin.abac-rules.form.name' | i18n }} *\n <span class=\"u-visually-hidden\">({{ '@pry.admin.required' | i18n }})</span>\n </label>\n <input\n id=\"inputName\"\n type=\"text\"\n [ngModel]=\"rule.name\"\n (ngModelChange)=\"onChangeAbacRuleProperty('name', $event)\"\n class=\"a-form-field\"\n name=\"name\"\n #name=\"ngModel\"\n maxlength=\"50\"\n required\n [readonly]=\"readonly\"\n [attr.aria-labelledby]=\"isSubmitted && name?.invalid ? 'name-label name-error' : 'name-label'\"\n [attr.aria-invalid]=\"isSubmitted && name?.invalid\"\n />\n <label\n class=\"a-label a-label--help -error\"\n id=\"name-error\"\n for=\"inputName\"\n *ngIf=\"isSubmitted && name.invalid\"\n >{{ '@pry.admin.required' | i18n }}</label\n >\n </div>\n\n <fieldset class=\"m-form-radio-group-wrapper\" [disabled]=\"readonly\">\n <legend class=\"a-label\">\n {{ '@pry.admin.abac-rules.form.status' | i18n }} *\n <span class=\"u-visually-hidden\">({{ '@pry.admin.required' | i18n }})</span>\n </legend>\n <div class=\"m-form-radio-group\">\n <div class=\"m-form-radio-group__item\">\n <input\n class=\"a-form-field\"\n type=\"radio\"\n id=\"newRuleTrue\"\n name=\"active\"\n [ngModel]=\"rule.active\"\n (ngModelChange)=\"!readonly && onChangeAbacRuleProperty('active', $event)\"\n [value]=\"true\"\n />\n <label for=\"newRuleTrue\" class=\"a-label\">\n {{ '@pry.admin.abac-rules.form.statusActive' | i18n }}\n </label>\n </div>\n <div class=\"m-form-radio-group__item\">\n <input\n class=\"a-form-field\"\n type=\"radio\"\n id=\"newRuleFalse\"\n name=\"active\"\n [ngModel]=\"rule.active\"\n (ngModelChange)=\"!readonly && onChangeAbacRuleProperty('active', $event)\"\n [value]=\"false\"\n />\n <label for=\"newRuleFalse\" class=\"a-label\">\n {{ '@pry.admin.abac-rules.form.statusInactive' | i18n }}\n </label>\n </div>\n </div>\n </fieldset>\n </div>\n\n <div class=\"col\">\n <div class=\"m-form-label-field\">\n <label class=\"a-label\" for=\"abac-rules-description\">{{\n '@pry.admin.abac-rules.form.description' | i18n\n }}</label>\n <textarea\n name=\"description\"\n id=\"abac-rules-description\"\n [ngModel]=\"rule.description\"\n (ngModelChange)=\"onChangeAbacRuleProperty('description', $event)\"\n class=\"a-form-field\"\n maxlength=\"90\"\n [readonly]=\"readonly\"\n ></textarea>\n </div>\n\n <div class=\"m-form-label-field\">\n <label id=\"predicate-label\" for=\"predicate\" class=\"a-label\">\n {{ '@pry.admin.abac-rules.form.predicate' | i18n }} *\n <span class=\"u-visually-hidden\">({{ '@pry.admin.required' | i18n }})</span>\n </label>\n <pry-select\n id=\"predicate\"\n [attr.aria-labelledby]=\"\n isSubmitted && abacRuleForm.form.get('predicate')?.invalid\n ? 'predicate-label predicate-error'\n : 'predicate-label'\n \"\n [disabled]=\"readonly\"\n [items]=\"predicates$ | async\"\n bindLabel=\"name\"\n bindValue=\"id\"\n [template]=\"templateOption\"\n name=\"predicate\"\n [ngModel]=\"rule.predicate\"\n (ngModelChange)=\"onChangeAbacRuleProperty('predicate', $event)\"\n [isForm]=\"!readonly\"\n [attr.aria-invalid]=\"isSubmitted && abacRuleForm.form.get('predicate')?.invalid\"\n required\n ></pry-select>\n\n <ng-template #templateOption let-item=\"item\">\n <ng-container *ngIf=\"toPredicate(item); let item\">\n <div class=\"u-display-flex -column\">\n <span>#{{ item.id }}</span>\n <span>{{ item.name }}</span>\n <span>{{ item.value }}</span>\n </div>\n </ng-container>\n </ng-template>\n <label\n class=\"a-label a-label--help -error\"\n id=\"predicate-error\"\n for=\"predicate\"\n *ngIf=\"isSubmitted && abacRuleForm.form.get('predicate')?.invalid\"\n >{{ '@pry.admin.required' | i18n }}</label\n >\n </div>\n\n <fieldset class=\"m-form-radio-group-wrapper\" [disabled]=\"readonly\">\n <legend class=\"a-label\">\n <label>{{ '@pry.admin.abac-rules.form.type' | i18n }}</label> *\n <span class=\"u-visually-hidden\">({{ '@pry.admin.required' | i18n }})</span>\n </legend>\n\n <div class=\"m-form-radio-group\">\n <ng-container *ngIf=\"typeSelected$ | async; else typeNotSelected\">\n <div class=\"m-form-radio-group__item\">\n <input\n class=\"a-form-field\"\n type=\"radio\"\n disabled\n id=\"metadataId\"\n name=\"type\"\n [ngModel]=\"rule.type\"\n value=\"METADATA\"\n />\n <label class=\"a-label\" for=\"metadataId\">\n {{ '@pry.admin.abac-rules.form.typeMetadata' | i18n }}\n </label>\n </div>\n <div class=\"m-form-radio-group__item\">\n <input\n class=\"a-form-field\"\n type=\"radio\"\n disabled\n id=\"attributeId\"\n name=\"type\"\n [ngModel]=\"rule.type\"\n value=\"ATTRIBUTE\"\n />\n <label class=\"a-label\" for=\"attributeId\">\n {{ '@pry.admin.abac-rules.form.typeAttribute' | i18n }}\n </label>\n </div>\n <span *ngIf=\"!readonly\" style=\"font-size: 12px; font-style: italic\">{{\n '@pry.admin.abac-rules.form.typeSelected' | i18n\n }}</span>\n </ng-container>\n\n <ng-template #typeNotSelected>\n <div class=\"m-form-radio-group__item\">\n <input\n class=\"a-form-field\"\n type=\"radio\"\n id=\"metadataId\"\n name=\"type\"\n [ngModel]=\"rule.type\"\n (ngModelChange)=\"onChangeAbacRuleProperty('type', METADATA)\"\n value=\"METADATA\"\n [disabled]=\"readonly\"\n />\n <label class=\"a-label\" for=\"metadataId\">\n {{ '@pry.admin.abac-rules.form.typeMetadata' | i18n }}\n </label>\n </div>\n <div class=\"m-form-radio-group__item\">\n <input\n class=\"a-form-field\"\n type=\"radio\"\n id=\"attributeId\"\n name=\"type\"\n [ngModel]=\"rule.type\"\n (ngModelChange)=\"onChangeAbacRuleProperty('type', ATTRIBUTE)\"\n value=\"ATTRIBUTE\"\n [disabled]=\"readonly\"\n />\n <label class=\"a-label\" for=\"attributeId\">\n {{ '@pry.admin.abac-rules.form.typeAttribute' | i18n }}\n </label>\n </div>\n </ng-template>\n </div>\n </fieldset>\n </div>\n </div>\n\n <ng-container *ngIf=\"editAbacRuleConditionsMasterId$ | async as masterId\">\n <div class=\"row\">\n <div class=\"col\">\n <pry-composed-condition\n class=\"o-component-pry-composed-condition\"\n style=\"margin: 1rem\"\n [rootElement]=\"true\"\n [id]=\"masterId\"\n [readonly]=\"readonly\"\n ></pry-composed-condition>\n </div>\n </div>\n </ng-container>\n\n <div *ngIf=\"!readonly\" class=\"m-btn-group -align-center -width-sm\">\n <button type=\"button\" class=\"a-btn a-btn--secondary\" (click)=\"goBack()\">\n {{ '@pry.admin.cancel' | i18n }}\n </button>\n <button type=\"button\" class=\"a-btn a-btn--primary\" (click)=\"onCreateAbacRule(abacRuleForm)\">\n {{ '@pry.admin.' + (edit ? 'edit' : 'create') | i18n }}\n </button>\n </div>\n </form>\n</ng-container>\n" }]
|
|
52
52
|
}], ctorParameters: () => [{ type: i1.Store }, { type: i2.Router }, { type: i2.ActivatedRoute }], propDecorators: { readonly: [{
|
|
@@ -23,10 +23,10 @@ export class AdminAbacRulesNewComponent {
|
|
|
23
23
|
ngOnDestroy() {
|
|
24
24
|
this.store.dispatch(AbacRulesActions.resetEditAbacRule());
|
|
25
25
|
}
|
|
26
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
27
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.
|
|
26
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: AdminAbacRulesNewComponent, deps: [{ token: i1.Store }, { token: i2.AbacRulesService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
27
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: AdminAbacRulesNewComponent, selector: "pry-admin-abac-rules-new", ngImport: i0, template: "<div class=\"o-base-container\">\n <h1 class=\"a-h1\">{{ '@pry.admin.abac-rules.title.add' | i18n }}</h1>\n <pry-admin-abac-rules-form [readonly]=\"false\" [edit]=\"false\"></pry-admin-abac-rules-form>\n</div>\n", dependencies: [{ kind: "component", type: i3.AdminAbacRulesFormComponent, selector: "pry-admin-abac-rules-form", inputs: ["readonly", "edit"] }, { kind: "pipe", type: i4.I18nPipe, name: "i18n" }] }); }
|
|
28
28
|
}
|
|
29
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
29
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: AdminAbacRulesNewComponent, decorators: [{
|
|
30
30
|
type: Component,
|
|
31
31
|
args: [{ selector: 'pry-admin-abac-rules-new', template: "<div class=\"o-base-container\">\n <h1 class=\"a-h1\">{{ '@pry.admin.abac-rules.title.add' | i18n }}</h1>\n <pry-admin-abac-rules-form [readonly]=\"false\" [edit]=\"false\"></pry-admin-abac-rules-form>\n</div>\n" }]
|
|
32
32
|
}], ctorParameters: () => [{ type: i1.Store }, { type: i2.AbacRulesService }] });
|
|
@@ -44,10 +44,10 @@ export class AdminAbacRulesViewComponent {
|
|
|
44
44
|
this.store.dispatch(AbacRulesActions.fetchAbacRule({ id: ruleId }));
|
|
45
45
|
});
|
|
46
46
|
}
|
|
47
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
48
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.
|
|
47
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: AdminAbacRulesViewComponent, deps: [{ token: i1.Store }, { token: i2.Router }, { token: i2.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
48
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: AdminAbacRulesViewComponent, selector: "pry-admin-abac-rules-view", ngImport: i0, template: "<div class=\"o-base-container\">\n <h1 class=\"a-1\">{{ '@pry.admin.abac-rules.title.view' | i18n }}</h1>\n <pry-admin-abac-rules-form [readonly]=\"true\"></pry-admin-abac-rules-form>\n</div>\n", dependencies: [{ kind: "component", type: i3.AdminAbacRulesFormComponent, selector: "pry-admin-abac-rules-form", inputs: ["readonly", "edit"] }, { kind: "pipe", type: i4.I18nPipe, name: "i18n" }] }); }
|
|
49
49
|
}
|
|
50
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
50
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: AdminAbacRulesViewComponent, decorators: [{
|
|
51
51
|
type: Component,
|
|
52
52
|
args: [{ selector: 'pry-admin-abac-rules-view', template: "<div class=\"o-base-container\">\n <h1 class=\"a-1\">{{ '@pry.admin.abac-rules.title.view' | i18n }}</h1>\n <pry-admin-abac-rules-form [readonly]=\"true\"></pry-admin-abac-rules-form>\n</div>\n" }]
|
|
53
53
|
}], ctorParameters: () => [{ type: i1.Store }, { type: i2.Router }, { type: i2.ActivatedRoute }] });
|
|
@@ -37,10 +37,10 @@ export class AdminAbacRulesComponent {
|
|
|
37
37
|
const path = this.router.createUrlTree(['.', `${rule.id}`], { relativeTo: this.route });
|
|
38
38
|
this.store.dispatch(AdminActions.routeTo({ path: path.toString() }));
|
|
39
39
|
}
|
|
40
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
41
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.
|
|
40
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: AdminAbacRulesComponent, deps: [{ token: i1.Store }, { token: i2.Router }, { token: i2.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
41
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: AdminAbacRulesComponent, selector: "pry-admin-abac-rules", ngImport: i0, template: "<div class=\"o-base-container\">\n <h1 class=\"a-h1\">{{ '@pry.admin.abac-rules.title.list' | i18n }}</h1>\n <table\n class=\"a-table\"\n prySortTable\n prySortActive=\"name\"\n prySortDirection=\"asc\"\n (prySortChange)=\"sortActive = $event.active; sortDirection = $event.direction\"\n >\n <caption>\n {{\n '@pry.admin.abac-rules.title.list' | i18n\n }},\n {{\n '@pry.action.sortableColumnHeader' | i18n\n }}\n </caption>\n <thead>\n <tr>\n <th></th>\n <th prySortHeader=\"name\">{{ '@pry.admin.abac-rules.form.name' | i18n }}</th>\n <th prySortHeader=\"type\">{{ '@pry.admin.abac-rules.form.type' | i18n }}</th>\n <th prySortHeader=\"active\">{{ '@pry.admin.abac-rules.form.status' | i18n }}</th>\n </tr>\n </thead>\n <tbody>\n <tr *ngFor=\"let rule of rules$ | async | prySortData: sortActive : sortDirection\" (click)=\"goToSelectRule(rule)\">\n <td class=\"view-details\">\n <button\n [id]=\"'button-arule-' + rule.id\"\n type=\"button\"\n class=\"a-btn a-btn--icon-only\"\n title=\"{{ '@pry.action.viewDetails' | i18n }}\"\n >\n <span class=\"u-visually-hidden\">{{ rule.name }}, {{ '@pry.action.viewDetails' | i18n }}</span>\n <pry-icon iconSvg=\"eye\" [width]=\"15\" [height]=\"15\"></pry-icon>\n </button>\n </td>\n <td>{{ rule.name }}</td>\n <td>\n {{ '@pry.admin.abac-rules.form.' + (rule.type === 'METADATA' ? 'typeMetadata' : 'typeAttribute') | i18n }}\n </td>\n <td>\n <span class=\"a-badge\" [ngClass]=\"{ '-status-ok': rule.active, '-status-inactive': !rule.active }\">\n {{\n (rule.active ? '@pry.admin.abac-rules.form.statusActive' : '@pry.admin.abac-rules.form.statusInactive')\n | i18n\n }}\n </span>\n </td>\n </tr>\n </tbody>\n </table>\n</div>\n", dependencies: [{ kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i4.PryIconComponent, selector: "pry-icon", inputs: ["color", "iconSvg", "animation", "iconImage", "alt", "width", "height", "classes"] }, { kind: "component", type: i4.PrySortHeaderComponent, selector: "th[prySortHeader]", inputs: ["prySortHeader"], outputs: ["sortChange"] }, { kind: "directive", type: i4.PrySortHeaderDirective, selector: "[prySortHeader]" }, { kind: "directive", type: i4.PrySortTableDirective, selector: "[prySortTable]", inputs: ["prySortActive", "prySortDirection"], outputs: ["prySortChange"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.PrySortDataPipe, name: "prySortData" }, { kind: "pipe", type: i4.I18nPipe, name: "i18n" }] }); }
|
|
42
42
|
}
|
|
43
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
43
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: AdminAbacRulesComponent, decorators: [{
|
|
44
44
|
type: Component,
|
|
45
45
|
args: [{ selector: 'pry-admin-abac-rules', template: "<div class=\"o-base-container\">\n <h1 class=\"a-h1\">{{ '@pry.admin.abac-rules.title.list' | i18n }}</h1>\n <table\n class=\"a-table\"\n prySortTable\n prySortActive=\"name\"\n prySortDirection=\"asc\"\n (prySortChange)=\"sortActive = $event.active; sortDirection = $event.direction\"\n >\n <caption>\n {{\n '@pry.admin.abac-rules.title.list' | i18n\n }},\n {{\n '@pry.action.sortableColumnHeader' | i18n\n }}\n </caption>\n <thead>\n <tr>\n <th></th>\n <th prySortHeader=\"name\">{{ '@pry.admin.abac-rules.form.name' | i18n }}</th>\n <th prySortHeader=\"type\">{{ '@pry.admin.abac-rules.form.type' | i18n }}</th>\n <th prySortHeader=\"active\">{{ '@pry.admin.abac-rules.form.status' | i18n }}</th>\n </tr>\n </thead>\n <tbody>\n <tr *ngFor=\"let rule of rules$ | async | prySortData: sortActive : sortDirection\" (click)=\"goToSelectRule(rule)\">\n <td class=\"view-details\">\n <button\n [id]=\"'button-arule-' + rule.id\"\n type=\"button\"\n class=\"a-btn a-btn--icon-only\"\n title=\"{{ '@pry.action.viewDetails' | i18n }}\"\n >\n <span class=\"u-visually-hidden\">{{ rule.name }}, {{ '@pry.action.viewDetails' | i18n }}</span>\n <pry-icon iconSvg=\"eye\" [width]=\"15\" [height]=\"15\"></pry-icon>\n </button>\n </td>\n <td>{{ rule.name }}</td>\n <td>\n {{ '@pry.admin.abac-rules.form.' + (rule.type === 'METADATA' ? 'typeMetadata' : 'typeAttribute') | i18n }}\n </td>\n <td>\n <span class=\"a-badge\" [ngClass]=\"{ '-status-ok': rule.active, '-status-inactive': !rule.active }\">\n {{\n (rule.active ? '@pry.admin.abac-rules.form.statusActive' : '@pry.admin.abac-rules.form.statusInactive')\n | i18n\n }}\n </span>\n </td>\n </tr>\n </tbody>\n </table>\n</div>\n" }]
|
|
46
46
|
}], ctorParameters: () => [{ type: i1.Store }, { type: i2.Router }, { type: i2.ActivatedRoute }] });
|
|
@@ -65,10 +65,10 @@ export class AttributeConditionComponent {
|
|
|
65
65
|
onDeleteAttributeCondition(conditionId, parentId) {
|
|
66
66
|
this.store.dispatch(AbacRulesActions.removeEditAbacRuleConditionFromComposed({ conditionId: parentId, childrenId: conditionId }));
|
|
67
67
|
}
|
|
68
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
69
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.
|
|
68
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: AttributeConditionComponent, deps: [{ token: i1.Store }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
69
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: AttributeConditionComponent, selector: "pry-attribute-condition", inputs: { readonly: "readonly", id: "id" }, ngImport: i0, template: "<ng-container *ngIf=\"condition$ | async as condition\">\n <ng-container *ngIf=\"attribute$ | async as attr; else noAttribute\">\n <ng-container *ngIf=\"field$ | async as field; else noField\">\n <div class=\"o-pry-attribute-condition\">\n <button\n type=\"button\"\n class=\"a-btn a-btn--icon-only\"\n aria-pressed=\"false\"\n *ngIf=\"!readonly\"\n (click)=\"onOpenPanel()\"\n cdkOverlayOrigin\n #origin=\"cdkOverlayOrigin\"\n >\n <pry-icon iconSvg=\"drag_indicator\"></pry-icon>\n <span class=\"u-visually-hidden\">{{ '@pry.admin.abac-rules.delete' | i18n }}</span>\n\n <ng-template\n cdkConnectedOverlay\n cdkConnectedOverlayHasBackdrop\n cdkConnectedOverlayLockPosition\n cdkConnectedOverlayBackdropClass=\"cdk-overlay-transparent-backdrop\"\n [cdkConnectedOverlayOrigin]=\"origin\"\n [cdkConnectedOverlayOpen]=\"panelOpen\"\n (backdropClick)=\"onClosePanel()\"\n >\n <div class=\"m-pry-overlay-panel-wrapper\">\n <div class=\"m-pry-overlay-panel\">\n <button\n class=\"pry-condition-delete\"\n (click)=\"onDeleteAttributeCondition(condition.id, condition.parentId)\"\n >\n {{ '@pry.admin.abac-rules.delete' | i18n }}\n </button>\n </div>\n </div>\n </ng-template>\n </button>\n\n <div class=\"m-form-label-field\">\n <label class=\"a-label u-visually-hidden\" for=\"attr_name\">Name</label>\n <input id=\"attr_name\" class=\"a-form-field\" type=\"text\" [value]=\"attr.name\" readonly />\n </div>\n\n <div class=\"m-form-label-field\">\n <label class=\"a-label u-visually-hidden\" for=\"condition_operator\">???</label>\n <pry-select\n id=\"condition_operator\"\n [style.width.px]=\"160\"\n [items]=\"operatorOptions$ | async\"\n bindValue=\"operator\"\n bindLabel=\"translation\"\n [ngModel]=\"condition.operator\"\n (ngModelChange)=\"onChangeOperator($event, condition.id)\"\n [disabled]=\"readonly\"\n ></pry-select>\n </div>\n\n <div class=\"m-form-label-field\">\n <label class=\"a-label u-visually-hidden\" for=\"condition_value\">Name</label>\n <input\n id=\"condition_value\"\n [readonly]=\"readonly\"\n type=\"text\"\n class=\"a-form-field\"\n [value]=\"condition.value\"\n (focusout)=\"onChangeValue($event, condition.id)\"\n />\n </div>\n </div>\n </ng-container>\n <ng-template #noField> Loading field ...</ng-template>\n </ng-container>\n <ng-template #noAttribute> Loading attribute ...</ng-template>\n</ng-container>\n", dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.PryIconComponent, selector: "pry-icon", inputs: ["color", "iconSvg", "animation", "iconImage", "alt", "width", "height", "classes"] }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.PrySelectComponent, selector: "pry-select", inputs: ["items", "clearable", "multiple", "closeOnSelect", "placeholder", "isForm", "required", "name", "autocomplete", "alwaysShowAutosuggestedValues", "externalAutocompleteService", "bindValue", "bindLabel", "iconSize", "bindIcon", "template", "i18nPrefix", "bindClasses", "loading", "elementRef"], outputs: ["searched", "cleared", "clicked", "pressedEnter"] }, { kind: "directive", type: i5.CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: ["cdkConnectedOverlayOrigin", "cdkConnectedOverlayPositions", "cdkConnectedOverlayPositionStrategy", "cdkConnectedOverlayOffsetX", "cdkConnectedOverlayOffsetY", "cdkConnectedOverlayWidth", "cdkConnectedOverlayHeight", "cdkConnectedOverlayMinWidth", "cdkConnectedOverlayMinHeight", "cdkConnectedOverlayBackdropClass", "cdkConnectedOverlayPanelClass", "cdkConnectedOverlayViewportMargin", "cdkConnectedOverlayScrollStrategy", "cdkConnectedOverlayOpen", "cdkConnectedOverlayDisableClose", "cdkConnectedOverlayTransformOriginOn", "cdkConnectedOverlayHasBackdrop", "cdkConnectedOverlayLockPosition", "cdkConnectedOverlayFlexibleDimensions", "cdkConnectedOverlayGrowAfterOpen", "cdkConnectedOverlayPush", "cdkConnectedOverlayDisposeOnNavigation"], outputs: ["backdropClick", "positionChange", "attach", "detach", "overlayKeydown", "overlayOutsideClick"], exportAs: ["cdkConnectedOverlay"] }, { kind: "directive", type: i5.CdkOverlayOrigin, selector: "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", exportAs: ["cdkOverlayOrigin"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.I18nPipe, name: "i18n" }] }); }
|
|
70
70
|
}
|
|
71
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
71
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: AttributeConditionComponent, decorators: [{
|
|
72
72
|
type: Component,
|
|
73
73
|
args: [{ selector: 'pry-attribute-condition', template: "<ng-container *ngIf=\"condition$ | async as condition\">\n <ng-container *ngIf=\"attribute$ | async as attr; else noAttribute\">\n <ng-container *ngIf=\"field$ | async as field; else noField\">\n <div class=\"o-pry-attribute-condition\">\n <button\n type=\"button\"\n class=\"a-btn a-btn--icon-only\"\n aria-pressed=\"false\"\n *ngIf=\"!readonly\"\n (click)=\"onOpenPanel()\"\n cdkOverlayOrigin\n #origin=\"cdkOverlayOrigin\"\n >\n <pry-icon iconSvg=\"drag_indicator\"></pry-icon>\n <span class=\"u-visually-hidden\">{{ '@pry.admin.abac-rules.delete' | i18n }}</span>\n\n <ng-template\n cdkConnectedOverlay\n cdkConnectedOverlayHasBackdrop\n cdkConnectedOverlayLockPosition\n cdkConnectedOverlayBackdropClass=\"cdk-overlay-transparent-backdrop\"\n [cdkConnectedOverlayOrigin]=\"origin\"\n [cdkConnectedOverlayOpen]=\"panelOpen\"\n (backdropClick)=\"onClosePanel()\"\n >\n <div class=\"m-pry-overlay-panel-wrapper\">\n <div class=\"m-pry-overlay-panel\">\n <button\n class=\"pry-condition-delete\"\n (click)=\"onDeleteAttributeCondition(condition.id, condition.parentId)\"\n >\n {{ '@pry.admin.abac-rules.delete' | i18n }}\n </button>\n </div>\n </div>\n </ng-template>\n </button>\n\n <div class=\"m-form-label-field\">\n <label class=\"a-label u-visually-hidden\" for=\"attr_name\">Name</label>\n <input id=\"attr_name\" class=\"a-form-field\" type=\"text\" [value]=\"attr.name\" readonly />\n </div>\n\n <div class=\"m-form-label-field\">\n <label class=\"a-label u-visually-hidden\" for=\"condition_operator\">???</label>\n <pry-select\n id=\"condition_operator\"\n [style.width.px]=\"160\"\n [items]=\"operatorOptions$ | async\"\n bindValue=\"operator\"\n bindLabel=\"translation\"\n [ngModel]=\"condition.operator\"\n (ngModelChange)=\"onChangeOperator($event, condition.id)\"\n [disabled]=\"readonly\"\n ></pry-select>\n </div>\n\n <div class=\"m-form-label-field\">\n <label class=\"a-label u-visually-hidden\" for=\"condition_value\">Name</label>\n <input\n id=\"condition_value\"\n [readonly]=\"readonly\"\n type=\"text\"\n class=\"a-form-field\"\n [value]=\"condition.value\"\n (focusout)=\"onChangeValue($event, condition.id)\"\n />\n </div>\n </div>\n </ng-container>\n <ng-template #noField> Loading field ...</ng-template>\n </ng-container>\n <ng-template #noAttribute> Loading attribute ...</ng-template>\n</ng-container>\n" }]
|
|
74
74
|
}], ctorParameters: () => [{ type: i1.Store }], propDecorators: { readonly: [{
|
|
@@ -50,10 +50,10 @@ export class ComposedConditionComponent {
|
|
|
50
50
|
property: { type: 'type', value: conditionType }
|
|
51
51
|
}));
|
|
52
52
|
}
|
|
53
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
54
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.
|
|
53
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: ComposedConditionComponent, deps: [{ token: i1.Store }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
54
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: ComposedConditionComponent, selector: "pry-composed-condition", inputs: { id: "id", readonly: "readonly", rootElement: "rootElement" }, ngImport: i0, template: "<ng-container *ngIf=\"condition$ | async as condition\">\n <ng-container *ngIf=\"condition.type === OR || condition.type === AND; else metaOrAttributeCondition\">\n <div class=\"o-pry-composed-condition-wrapper\" [class.root-element]=\"rootElement\">\n <div class=\"o-pry-composed-condition\">\n <div class=\"o-pry-composed-condition__type -vertical-bar\">\n <div class=\"o-pry-composed-condition__type__content\">\n <pry-toggle\n leftword=\"ET\"\n rightword=\"OU\"\n [ngModel]=\"condition.type === AND\"\n (ngModelChange)=\"onChangeConditionType($event ? AND : OR, condition.id)\"\n [alwaysActive]=\"true\"\n [disabled]=\"readonly\"\n ></pry-toggle>\n </div>\n </div>\n\n <div class=\"o-pry-composed-condition__content\">\n <ng-container *ngFor=\"let id of condition.composed\">\n <pry-composed-condition [readonly]=\"readonly\" [id]=\"id\"></pry-composed-condition>\n </ng-container>\n\n <ng-container *ngIf=\"!readonly\">\n <ng-container *ngIf=\"editAbacRuleType$ | async as ruleType\">\n <div>\n <button\n type=\"button\"\n aria-pressed=\"false\"\n class=\"a-btn a-btn--iconcircle-text\"\n (click)=\"panelOpen = true\"\n [pryOverlay]=\"selectOverlay\"\n [(overlayOpen)]=\"panelOpen\"\n pryOverlayPosition=\"start-bottom\"\n >\n <span class=\"a-btn--iconcircle-text__icon-wrapper\">\n <pry-icon iconSvg=\"add\" [height]=\"14\" [width]=\"14\"></pry-icon>\n </span>\n <span>\n {{\n '@pry.admin.abac-rules.form.' + (ruleType === ATTRIBUTE ? 'addAttribute' : 'addMetadata') | i18n\n }}\n </span>\n </button>\n </div>\n\n <ng-template #selectOverlay>\n <ng-container *ngIf=\"ruleType === ATTRIBUTE; else metadataType\">\n <pry-abac-select-attribute\n (attributeSelected)=\"onAddNewAttribute($event, condition.id)\"\n ></pry-abac-select-attribute>\n </ng-container>\n <ng-template #metadataType>\n <pry-abac-select-metadata\n (metadataSelected)=\"onAddNewMetadata($event, condition.id)\"\n ></pry-abac-select-metadata>\n </ng-template>\n </ng-template>\n </ng-container>\n </ng-container>\n </div>\n </div>\n\n <ng-container *ngIf=\"!readonly\">\n <div class=\"o-pry-composed-condition__add-item\">\n <button\n type=\"button\"\n aria-pressed=\"false\"\n class=\"a-btn a-btn--iconcircle-text\"\n (click)=\"onAddNewNestedCondition(condition.id)\"\n >\n <span class=\"a-btn--iconcircle-text__icon-wrapper\">\n <pry-icon iconSvg=\"add\" [height]=\"14\" [width]=\"14\"></pry-icon>\n </span>\n <span>\n {{ '@pry.admin.abac-rules.form.addGroup' | i18n }}\n </span>\n </button>\n </div>\n </ng-container>\n </div>\n </ng-container>\n\n <ng-template #metaOrAttributeCondition>\n <ng-container *ngIf=\"condition.type === METADATA\">\n <pry-metadata-condition [readonly]=\"readonly\" [id]=\"condition.id\"></pry-metadata-condition>\n </ng-container>\n <ng-container *ngIf=\"condition.type === ATTRIBUTE\">\n <pry-attribute-condition [readonly]=\"readonly\" [id]=\"condition.id\"></pry-attribute-condition>\n </ng-container>\n </ng-template>\n</ng-container>\n", dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.PryIconComponent, selector: "pry-icon", inputs: ["color", "iconSvg", "animation", "iconImage", "alt", "width", "height", "classes"] }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.PryToggleComponent, selector: "pry-toggle", inputs: ["alwaysActive", "disabled", "mode", "size", "dir", "leftword", "rightword"] }, { kind: "directive", type: i3.PryOverlayDirective, selector: "[pryOverlay]", inputs: ["pryOverlay", "styleReversed", "pryOverlaySticky", "pryOverlayNoPadding", "pryOverlayPosition", "overlayOpen", "hasBackdrop"], outputs: ["overlayOpenChange"] }, { kind: "component", type: i5.SelectMetadataComponent, selector: "pry-abac-select-metadata", outputs: ["metadataSelected"] }, { kind: "component", type: i6.SelectAttributeComponent, selector: "pry-abac-select-attribute", outputs: ["attributeSelected"] }, { kind: "component", type: i7.AttributeConditionComponent, selector: "pry-attribute-condition", inputs: ["readonly", "id"] }, { kind: "component", type: i8.MetadataConditionComponent, selector: "pry-metadata-condition", inputs: ["readonly", "id"] }, { kind: "component", type: ComposedConditionComponent, selector: "pry-composed-condition", inputs: ["id", "readonly", "rootElement"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.I18nPipe, name: "i18n" }] }); }
|
|
55
55
|
}
|
|
56
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
56
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: ComposedConditionComponent, decorators: [{
|
|
57
57
|
type: Component,
|
|
58
58
|
args: [{ selector: 'pry-composed-condition', template: "<ng-container *ngIf=\"condition$ | async as condition\">\n <ng-container *ngIf=\"condition.type === OR || condition.type === AND; else metaOrAttributeCondition\">\n <div class=\"o-pry-composed-condition-wrapper\" [class.root-element]=\"rootElement\">\n <div class=\"o-pry-composed-condition\">\n <div class=\"o-pry-composed-condition__type -vertical-bar\">\n <div class=\"o-pry-composed-condition__type__content\">\n <pry-toggle\n leftword=\"ET\"\n rightword=\"OU\"\n [ngModel]=\"condition.type === AND\"\n (ngModelChange)=\"onChangeConditionType($event ? AND : OR, condition.id)\"\n [alwaysActive]=\"true\"\n [disabled]=\"readonly\"\n ></pry-toggle>\n </div>\n </div>\n\n <div class=\"o-pry-composed-condition__content\">\n <ng-container *ngFor=\"let id of condition.composed\">\n <pry-composed-condition [readonly]=\"readonly\" [id]=\"id\"></pry-composed-condition>\n </ng-container>\n\n <ng-container *ngIf=\"!readonly\">\n <ng-container *ngIf=\"editAbacRuleType$ | async as ruleType\">\n <div>\n <button\n type=\"button\"\n aria-pressed=\"false\"\n class=\"a-btn a-btn--iconcircle-text\"\n (click)=\"panelOpen = true\"\n [pryOverlay]=\"selectOverlay\"\n [(overlayOpen)]=\"panelOpen\"\n pryOverlayPosition=\"start-bottom\"\n >\n <span class=\"a-btn--iconcircle-text__icon-wrapper\">\n <pry-icon iconSvg=\"add\" [height]=\"14\" [width]=\"14\"></pry-icon>\n </span>\n <span>\n {{\n '@pry.admin.abac-rules.form.' + (ruleType === ATTRIBUTE ? 'addAttribute' : 'addMetadata') | i18n\n }}\n </span>\n </button>\n </div>\n\n <ng-template #selectOverlay>\n <ng-container *ngIf=\"ruleType === ATTRIBUTE; else metadataType\">\n <pry-abac-select-attribute\n (attributeSelected)=\"onAddNewAttribute($event, condition.id)\"\n ></pry-abac-select-attribute>\n </ng-container>\n <ng-template #metadataType>\n <pry-abac-select-metadata\n (metadataSelected)=\"onAddNewMetadata($event, condition.id)\"\n ></pry-abac-select-metadata>\n </ng-template>\n </ng-template>\n </ng-container>\n </ng-container>\n </div>\n </div>\n\n <ng-container *ngIf=\"!readonly\">\n <div class=\"o-pry-composed-condition__add-item\">\n <button\n type=\"button\"\n aria-pressed=\"false\"\n class=\"a-btn a-btn--iconcircle-text\"\n (click)=\"onAddNewNestedCondition(condition.id)\"\n >\n <span class=\"a-btn--iconcircle-text__icon-wrapper\">\n <pry-icon iconSvg=\"add\" [height]=\"14\" [width]=\"14\"></pry-icon>\n </span>\n <span>\n {{ '@pry.admin.abac-rules.form.addGroup' | i18n }}\n </span>\n </button>\n </div>\n </ng-container>\n </div>\n </ng-container>\n\n <ng-template #metaOrAttributeCondition>\n <ng-container *ngIf=\"condition.type === METADATA\">\n <pry-metadata-condition [readonly]=\"readonly\" [id]=\"condition.id\"></pry-metadata-condition>\n </ng-container>\n <ng-container *ngIf=\"condition.type === ATTRIBUTE\">\n <pry-attribute-condition [readonly]=\"readonly\" [id]=\"condition.id\"></pry-attribute-condition>\n </ng-container>\n </ng-template>\n</ng-container>\n" }]
|
|
59
59
|
}], ctorParameters: () => [{ type: i1.Store }], propDecorators: { id: [{
|
|
@@ -58,10 +58,10 @@ export class MetadataConditionComponent {
|
|
|
58
58
|
this.deleteConditionOpen = false;
|
|
59
59
|
this.store.dispatch(AbacRulesActions.removeEditAbacRuleConditionFromComposed({ conditionId: parentId, childrenId: conditionId }));
|
|
60
60
|
}
|
|
61
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
62
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.
|
|
61
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: MetadataConditionComponent, deps: [{ token: i1.Store }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
62
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: MetadataConditionComponent, selector: "pry-metadata-condition", inputs: { readonly: "readonly", id: "id" }, ngImport: i0, template: "<ng-container *ngIf=\"condition$ | async as condition\">\n <ng-container *ngIf=\"metadata$ | async as metadata; else noMetadata\">\n <div class=\"o-pry-metadata-condition\">\n <button\n type=\"button\"\n class=\"a-btn a-btn--icon-only\"\n aria-pressed=\"false\"\n (click)=\"deleteConditionOpen = true\"\n [pryOverlay]=\"deleteConditionTpl\"\n [(overlayOpen)]=\"deleteConditionOpen\"\n >\n <pry-icon *ngIf=\"!readonly\" iconSvg=\"drag_indicator\"></pry-icon>\n <span class=\"u-visually-hidden\">???</span>\n </button>\n\n <ng-template #deleteConditionTpl>\n <button class=\"m-pry-overlay-item\" (click)=\"onDeleteMetadataCondition(condition.id, condition.parentId)\">\n {{ '@pry.admin.abac-rules.delete' | i18n }}\n </button>\n </ng-template>\n\n <div class=\"m-form-label-field\">\n <label class=\"a-label u-visually-hidden\" for=\"metadata_name\">Name</label>\n <input id=\"metadata_name\" class=\"a-form-field\" type=\"text\" [value]=\"metadata.name\" readonly />\n </div>\n\n <div class=\"m-form-label-field\">\n <label class=\"a-label u-visually-hidden\" for=\"metadata_operator\">???</label>\n <pry-select\n id=\"metadata_operator\"\n [disabled]=\"readonly\"\n [style.width.px]=\"160\"\n [items]=\"operators$ | async\"\n bindValue=\"operator\"\n bindLabel=\"translation\"\n [ngModel]=\"condition.operator\"\n (ngModelChange)=\"onChangeOperator($event, condition.id)\"\n ></pry-select>\n </div>\n\n <div class=\"m-form-label-field\">\n <label class=\"a-label u-visually-hidden\" for=\"condition_value\">???</label>\n <input\n id=\"condition_value\"\n class=\"a-form-field\"\n [readonly]=\"readonly\"\n type=\"text\"\n [style.width.px]=\"200\"\n [value]=\"condition.value\"\n (focusout)=\"onChangeValue($event, condition.id)\"\n />\n </div>\n\n <button\n type=\"button\"\n aria-pressed=\"false\"\n *ngIf=\"!readonly\"\n class=\"a-btn a-btn--select -size-sm\"\n [pryOverlay]=\"metadataUserTpl\"\n [(overlayOpen)]=\"metadataUserOpen\"\n (click)=\"metadataUserOpen = true\"\n >\n {{ '@pry.admin.abac-rules.metadataUser' | i18n }}\n </button>\n\n <ng-template #metadataUserTpl>\n <div class=\"m-pry-overlay-wrapper\">\n <ng-container *ngFor=\"let metadataUser of metadataUsers$ | async\">\n <button class=\"m-pry-overlay-item\" (click)=\"onSelectMetadataUser(condition.id, condition.operator, metadataUser)\">\n {{ metadataUser.name }}\n </button>\n </ng-container>\n </div>\n </ng-template>\n </div>\n </ng-container>\n <ng-template #noMetadata> Loading ...</ng-template>\n</ng-container>\n", dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.PryIconComponent, selector: "pry-icon", inputs: ["color", "iconSvg", "animation", "iconImage", "alt", "width", "height", "classes"] }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.PrySelectComponent, selector: "pry-select", inputs: ["items", "clearable", "multiple", "closeOnSelect", "placeholder", "isForm", "required", "name", "autocomplete", "alwaysShowAutosuggestedValues", "externalAutocompleteService", "bindValue", "bindLabel", "iconSize", "bindIcon", "template", "i18nPrefix", "bindClasses", "loading", "elementRef"], outputs: ["searched", "cleared", "clicked", "pressedEnter"] }, { kind: "directive", type: i3.PryOverlayDirective, selector: "[pryOverlay]", inputs: ["pryOverlay", "styleReversed", "pryOverlaySticky", "pryOverlayNoPadding", "pryOverlayPosition", "overlayOpen", "hasBackdrop"], outputs: ["overlayOpenChange"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.I18nPipe, name: "i18n" }] }); }
|
|
63
63
|
}
|
|
64
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
64
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: MetadataConditionComponent, decorators: [{
|
|
65
65
|
type: Component,
|
|
66
66
|
args: [{ selector: 'pry-metadata-condition', template: "<ng-container *ngIf=\"condition$ | async as condition\">\n <ng-container *ngIf=\"metadata$ | async as metadata; else noMetadata\">\n <div class=\"o-pry-metadata-condition\">\n <button\n type=\"button\"\n class=\"a-btn a-btn--icon-only\"\n aria-pressed=\"false\"\n (click)=\"deleteConditionOpen = true\"\n [pryOverlay]=\"deleteConditionTpl\"\n [(overlayOpen)]=\"deleteConditionOpen\"\n >\n <pry-icon *ngIf=\"!readonly\" iconSvg=\"drag_indicator\"></pry-icon>\n <span class=\"u-visually-hidden\">???</span>\n </button>\n\n <ng-template #deleteConditionTpl>\n <button class=\"m-pry-overlay-item\" (click)=\"onDeleteMetadataCondition(condition.id, condition.parentId)\">\n {{ '@pry.admin.abac-rules.delete' | i18n }}\n </button>\n </ng-template>\n\n <div class=\"m-form-label-field\">\n <label class=\"a-label u-visually-hidden\" for=\"metadata_name\">Name</label>\n <input id=\"metadata_name\" class=\"a-form-field\" type=\"text\" [value]=\"metadata.name\" readonly />\n </div>\n\n <div class=\"m-form-label-field\">\n <label class=\"a-label u-visually-hidden\" for=\"metadata_operator\">???</label>\n <pry-select\n id=\"metadata_operator\"\n [disabled]=\"readonly\"\n [style.width.px]=\"160\"\n [items]=\"operators$ | async\"\n bindValue=\"operator\"\n bindLabel=\"translation\"\n [ngModel]=\"condition.operator\"\n (ngModelChange)=\"onChangeOperator($event, condition.id)\"\n ></pry-select>\n </div>\n\n <div class=\"m-form-label-field\">\n <label class=\"a-label u-visually-hidden\" for=\"condition_value\">???</label>\n <input\n id=\"condition_value\"\n class=\"a-form-field\"\n [readonly]=\"readonly\"\n type=\"text\"\n [style.width.px]=\"200\"\n [value]=\"condition.value\"\n (focusout)=\"onChangeValue($event, condition.id)\"\n />\n </div>\n\n <button\n type=\"button\"\n aria-pressed=\"false\"\n *ngIf=\"!readonly\"\n class=\"a-btn a-btn--select -size-sm\"\n [pryOverlay]=\"metadataUserTpl\"\n [(overlayOpen)]=\"metadataUserOpen\"\n (click)=\"metadataUserOpen = true\"\n >\n {{ '@pry.admin.abac-rules.metadataUser' | i18n }}\n </button>\n\n <ng-template #metadataUserTpl>\n <div class=\"m-pry-overlay-wrapper\">\n <ng-container *ngFor=\"let metadataUser of metadataUsers$ | async\">\n <button class=\"m-pry-overlay-item\" (click)=\"onSelectMetadataUser(condition.id, condition.operator, metadataUser)\">\n {{ metadataUser.name }}\n </button>\n </ng-container>\n </div>\n </ng-template>\n </div>\n </ng-container>\n <ng-template #noMetadata> Loading ...</ng-template>\n</ng-container>\n" }]
|
|
67
67
|
}], ctorParameters: () => [{ type: i1.Store }], propDecorators: { readonly: [{
|
|
@@ -17,10 +17,10 @@ export class SelectAttributeComponent {
|
|
|
17
17
|
onSelectAttribute(classId, attributeId) {
|
|
18
18
|
this.attributeSelected.emit({ attribute: attributeId, class: classId });
|
|
19
19
|
}
|
|
20
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
21
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.
|
|
20
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: SelectAttributeComponent, deps: [{ token: i1.Store }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
21
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: SelectAttributeComponent, selector: "pry-abac-select-attribute", outputs: { attributeSelected: "attributeSelected" }, ngImport: i0, template: "<ng-container *ngFor=\"let class of classes$ | async\">\n <button\n class=\"m-pry-overlay-item\"\n *ngFor=\"let attribute of class.attributes\"\n (click)=\"onSelectAttribute(class.id, attribute.id)\"\n >\n {{ class.name }} - {{ attribute.name }}\n </button>\n</ng-container>\n", dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }] }); }
|
|
22
22
|
}
|
|
23
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
23
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: SelectAttributeComponent, decorators: [{
|
|
24
24
|
type: Component,
|
|
25
25
|
args: [{ selector: 'pry-abac-select-attribute', template: "<ng-container *ngFor=\"let class of classes$ | async\">\n <button\n class=\"m-pry-overlay-item\"\n *ngFor=\"let attribute of class.attributes\"\n (click)=\"onSelectAttribute(class.id, attribute.id)\"\n >\n {{ class.name }} - {{ attribute.name }}\n </button>\n</ng-container>\n" }]
|
|
26
26
|
}], ctorParameters: () => [{ type: i1.Store }], propDecorators: { attributeSelected: [{
|
|
@@ -12,10 +12,10 @@ export class SelectMetadataComponent {
|
|
|
12
12
|
onSelectMetadata(id) {
|
|
13
13
|
this.metadataSelected.emit(id);
|
|
14
14
|
}
|
|
15
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
16
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.
|
|
15
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: SelectMetadataComponent, deps: [{ token: i1.Store }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
16
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: SelectMetadataComponent, selector: "pry-abac-select-metadata", outputs: { metadataSelected: "metadataSelected" }, ngImport: i0, template: "<ng-container *ngFor=\"let metadata of metadata$ | async\">\n <button class=\"m-pry-overlay-item\" (click)=\"onSelectMetadata(metadata.id)\">\n {{ metadata.name }}\n </button>\n</ng-container>\n", dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }] }); }
|
|
17
17
|
}
|
|
18
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
18
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: SelectMetadataComponent, decorators: [{
|
|
19
19
|
type: Component,
|
|
20
20
|
args: [{ selector: 'pry-abac-select-metadata', template: "<ng-container *ngFor=\"let metadata of metadata$ | async\">\n <button class=\"m-pry-overlay-item\" (click)=\"onSelectMetadata(metadata.id)\">\n {{ metadata.name }}\n </button>\n</ng-container>\n" }]
|
|
21
21
|
}], ctorParameters: () => [{ type: i1.Store }], propDecorators: { metadataSelected: [{
|
|
@@ -69,10 +69,10 @@ export class AbacRulesEffects {
|
|
|
69
69
|
return [abacRuleAction$, abacRuleConditionsAction$];
|
|
70
70
|
})));
|
|
71
71
|
}
|
|
72
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
73
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.
|
|
72
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: AbacRulesEffects, deps: [{ token: i1.Actions }, { token: i2.AdminService }, { token: i3.Store }, { token: i4.AbacRulesService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
73
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: AbacRulesEffects }); }
|
|
74
74
|
}
|
|
75
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
75
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: AbacRulesEffects, decorators: [{
|
|
76
76
|
type: Injectable
|
|
77
77
|
}], ctorParameters: () => [{ type: i1.Actions }, { type: i2.AdminService }, { type: i3.Store }, { type: i4.AbacRulesService }] });
|
|
78
78
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJhYy1ydWxlcy5lZmZlY3RzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9kYXNoYm9hcmQvYWRtaW4vY29tcG9uZW50cy9hZG1pbi1hYmFjLXJ1bGVzL3N0b3JlL2FiYWMtcnVsZXMuZWZmZWN0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBVyxZQUFZLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTlELE9BQU8sRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsY0FBYyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzVFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUU1RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7Ozs7O0FBSTVELE1BQU0sT0FBTyxnQkFBZ0I7SUFtSjNCLFlBQ1UsUUFBaUIsRUFDakIsT0FBcUIsRUFDckIsS0FBaUIsRUFDakIsZ0JBQWtDO1FBSGxDLGFBQVEsR0FBUixRQUFRLENBQVM7UUFDakIsWUFBTyxHQUFQLE9BQU8sQ0FBYztRQUNyQixVQUFLLEdBQUwsS0FBSyxDQUFZO1FBQ2pCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUF0SjVDLG1CQUFjLEdBQUcsWUFBWSxDQUFDLEdBQUcsRUFBRSxDQUNqQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FDaEIsTUFBTSxDQUFDLGdCQUFnQixDQUFDLGFBQWEsQ0FBQyxFQUN0QyxRQUFRLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUNsQixJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksRUFBRSxDQUFDLElBQUksQ0FD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LENBQUMsQ0FBQztRQUN0RCxDQUFDLENBQUMsQ0FDSCxDQUNGLENBQUM7SUFPQyxDQUFDOzhHQXhKTyxnQkFBZ0I7a0hBQWhCLGdCQUFnQjs7MkZBQWhCLGdCQUFnQjtrQkFENUIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGlvbnMsIGNyZWF0ZUVmZmVjdCwgb2ZUeXBlIH0gZnJvbSAnQG5ncngvZWZmZWN0cyc7XG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCB7IGNhdGNoRXJyb3IsIG1hcCwgbWVyZ2VNYXAsIHN3aXRjaE1hcCwgd2l0aExhdGVzdEZyb20gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEFkbWluQWN0aW9ucyB9IGZyb20gJy4uLy4uLy4uL3N0b3JlL2FkbWluLmFjdGlvbnMnO1xuaW1wb3J0IHsgQWRtaW5TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc3RvcmUvYWRtaW4uc2VydmljZSc7XG5pbXBvcnQgeyBBYmFjUnVsZXNBY3Rpb25zIH0gZnJvbSAnLi9hYmFjLXJ1bGVzLmFjdGlvbnMnO1xuaW1wb3J0IHsgQWJhY1J1bGVzU2VsZWN0b3JzIH0gZnJvbSAnLi9hYmFjLXJ1bGVzLnNlbGVjdG9ycyc7XG5pbXBvcnQgeyBBYmFjUnVsZXNTZXJ2aWNlIH0gZnJvbSAnLi9hYmFjLXJ1bGVzLnNlcnZpY2UnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQWJhY1J1bGVzRWZmZWN0cyB7XG4gIGxvYWRBYmFjUnVsZXMkID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKEFiYWNSdWxlc0FjdGlvbnMubG9hZEFiYWNSdWxlcyksXG4gICAgICBtZXJnZU1hcCgoYWN0aW9uKSA9PlxuICAgICAgICB0aGlzLnNlcnZpY2UuZ2V0QWJhY1J1bGVzKCkucGlwZShcbiAgICAgICAgICBtYXAoKGRhdGFzKSA9PiBBYmFjUnVsZXNBY3Rpb25zLmxvYWRBYmFjUnVsZXNTdWNjZXNzKHsgZGF0YXMgfSkpLFxuICAgICAgICAgIGNhdGNoRXJyb3IoKGVycm9yKSA9PiBbQWJhY1J1bGVzQWN0aW9ucy5sb2FkQWJhY1J1bGVzRmFpbHVyZSh7IGVycm9yOiBlcnJvciB9KV0pXG4gICAgICAgIClcbiAgICAgIClcbiAgICApXG4gICk7XG5cbiAgY2FuY2VsQWJhY1J1bGVFZGl0aW9uJCA9IGNyZWF0ZUVmZmVjdCgoKSA9PlxuICAgIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgIG9mVHlwZShBYmFjUnVsZXNBY3Rpb25zLmNhbmNlbEFiYWNSdWxlRWRpdGlvbiksXG4gICAgICBtYXAoKGFjdGlvbikgPT4gQWRtaW5BY3Rpb25zLnJvdXRlVG8oeyBwYXRoOiBhY3Rpb24ucmVkaXJlY3QgfSkpXG4gICAgKVxuICApO1xuXG4gIGluaXRFZGl0QWJhY1J1bGUkID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKEFiYWNSdWxlc0FjdGlvbnMuaW5pdEVkaXRBYmFjUnVsZSksXG4gICAgICBzd2l0Y2hNYXAoKGFjdGlvbikgPT4ge1xuICAgICAgICBjb25zdCBhYmFjUnVsZUFjdGlvbiQgPSBBYmFjUnVsZXNBY3Rpb25zLnVwZGF0ZUVkaXRBYmFjUnVsZSh7IHJ1bGU6IGFjdGlvbi5ydWxlIH0pO1xuICAgICAgICBjb25zdCBpbml0aWFsRWRpdEFiYWNDb25kaXRpb25zID0gdGhpcy5hYmFjUnVsZXNTZXJ2aWNlLmluaXRpYWxpemVDb25kaXRpb24oKTtcbiAgICAgICAgY29uc3QgYWJhY1J1bGVDb25kaXRpb25zQWN0aW9uJCA9IEFiYWNSdWxlc0FjdGlvbnMuaW5pdEVkaXRBYmFjUnVsZUNvbmRpdGlvbnMoe1xuICAgICAgICAgIGNvbmRpdGlvbjoge1xuICAgICAgICAgICAgbWFzdGVySWQ6IGluaXRpYWxFZGl0QWJhY0NvbmRpdGlvbnMuaWQsXG4gICAgICAgICAgICBpZHM6IFtpbml0aWFsRWRpdEFiYWNDb25kaXRpb25zLmlkXSxcbiAgICAgICAgICAgIGVudGl0aWVzOiB7XG4gICAgICAgICAgICAgIFtpbml0aWFsRWRpdEFiYWNDb25kaXRpb25zLmlkXTogaW5pdGlhbEVkaXRBYmFjQ29uZGl0aW9uc1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiBbYWJhY1J1bGVBY3Rpb24kLCBhYmFjUnVsZUNvbmRpdGlvbnNBY3Rpb24kXTtcbiAgICAgIH0pXG4gICAgKVxuICApO1xuXG4gIGNyZWF0ZUVkaXRBYmFjUnVsZU1ldGFkYXRhQ29uZGl0aW9uJCA9IGNyZWF0ZUVmZmVjdCgoKSA9PlxuICAgIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgIG9mVHlwZShBYmFjUnVsZXNBY3Rpb25zLmNyZWF0ZUVkaXRBYmFjUnVsZU1ldGFkYXRhQ29uZGl0aW9uKSxcbiAgICAgIG1hcCgoYWN0aW9uKSA9PiB7XG4gICAgICAgIGNvbnN0IG5ld01ldGFkYXRhQ29uZGl0aW9uID0gdGhpcy5hYmFjUnVsZXNTZXJ2aWNlLmdldE1ldGFkYXRhQ29uZGl0aW9uKGFjdGlvbi5tZXRhZGF0YUlkLCBhY3Rpb24ucGFyZW50SWQpO1xuICAgICAgICByZXR1cm4gQWJhY1J1bGVzQWN0aW9ucy5hZGRFZGl0QWJhY1J1bGVDb25kaXRpb25zKHsgY29uZGl0aW9uOiBuZXdNZXRhZGF0YUNvbmRpdGlvbiB9KTtcbiAgICAgIH0pXG4gICAgKVxuICApO1xuXG4gIGNyZWF0ZUVkaXRBYmFjUnVsZUF0dHJpYnV0ZUNvbmRpdGlvbiQgPSBjcmVhdGVFZmZlY3QoKCkgPT5cbiAgICB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgICBvZlR5cGUoQWJhY1J1bGVzQWN0aW9ucy5jcmVhdGVFZGl0QWJhY1J1bGVBdHRyaWJ1dGVDb25kaXRpb24pLFxuICAgICAgbWFwKChhY3Rpb24pID0+IHtcbiAgICAgICAgY29uc3QgbmV3QXR0cmlidXRlQ29uZGl0aW9uID0gdGhpcy5hYmFjUnVsZXNTZXJ2aWNlLmdldEF0dHJpYnV0ZUNvbmRpdGlvbihcbiAgICAgICAgICBhY3Rpb24uYXR0cmlidXRlSWQsXG4gICAgICAgICAgYWN0aW9uLmNsYXNzSWQsXG4gICAgICAgICAgYWN0aW9uLnBhcmVudElkXG4gICAgICAgICk7XG4gICAgICAgIHJldHVybiBBYmFjUnVsZXNBY3Rpb25zLmFkZEVkaXRBYmFjUnVsZUNvbmRpdGlvbnMoeyBjb25kaXRpb246IG5ld0F0dHJpYnV0ZUNvbmRpdGlvbiB9KTtcbiAgICAgIH0pXG4gICAgKVxuICApO1xuXG4gIGNyZWF0ZUVkaXRBYmFjUnVsZU5lc3RlZENvbmRpdGlvbiQgPSBjcmVhdGVFZmZlY3QoKCkgPT5cbiAgICB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgICBvZlR5cGUoQWJhY1J1bGVzQWN0aW9ucy5jcmVhdGVFZGl0QWJhY1J1bGVOZXN0ZWRDb25kaXRpb24pLFxuICAgICAgbWFwKChhY3Rpb24pID0+IHtcbiAgICAgICAgY29uc3QgbmV3Q29uZGl0aW9uID0gdGhpcy5hYmFjUnVsZXNTZXJ2aWNlLmluaXRpYWxpemVDb25kaXRpb24oYWN0aW9uLnBhcmVudElkKTtcbiAgICAgICAgcmV0dXJuIEFiYWNSdWxlc0FjdGlvbnMuYWRkRWRpdEFiYWNSdWxlQ29uZGl0aW9ucyh7IGNvbmRpdGlvbjogbmV3Q29uZGl0aW9uIH0pO1xuICAgICAgfSlcbiAgICApXG4gICk7XG5cbiAgYWRkRWRpdEFiYWNSdWxlQ29uZGl0aW9uc01ldGFkYXRhJCA9IGNyZWF0ZUVmZmVjdCgoKSA9PlxuICAgIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgIG9mVHlwZShBYmFjUnVsZXNBY3Rpb25zLmFkZEVkaXRBYmFjUnVsZUNvbmRpdGlvbnMpLFxuICAgICAgbWFwKChhY3Rpb24pID0+IHtcbiAgICAgICAgcmV0dXJuIEFiYWNSdWxlc0FjdGlvbnMuYWRkRWRpdEFiYWNSdWxlQ29uZGl0aW9uc1RvUGFyZW50KHtcbiAgICAgICAgICBjb25kaXRpb25JZDogYWN0aW9uLmNvbmRpdGlvbi5pZCxcbiAgICAgICAgICBwYXJlbnRJZDogYWN0aW9uLmNvbmRpdGlvbi5wYXJlbnRJZFxuICAgICAgICB9KTtcbiAgICAgIH0pXG4gICAgKVxuICApO1xuXG4gIHJlbW92ZUVkaXRBYmFjUnVsZUNvbmRpdGlvbkZyb21Db21wb3NlZCQgPSBjcmVhdGVFZmZlY3QoKCkgPT5cbiAgICB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgICBvZlR5cGUoQWJhY1J1bGVzQWN0aW9ucy5yZW1vdmVFZGl0QWJhY1J1bGVDb25kaXRpb25Gcm9tQ29tcG9zZWQpLFxuICAgICAgbWFwKChhY3Rpb24pID0+IHtcbiAgICAgICAgcmV0dXJuIEFiYWNSdWxlc0FjdGlvbnMucmVtb3ZlRWRpdEFiYWNSdWxlTGVhZkNvbmRpdGlvbih7XG4gICAgICAgICAgY29uZGl0aW9uSWQ6IGFjdGlvbi5jaGlsZHJlbklkXG4gICAgICAgIH0pO1xuICAgICAgfSlcbiAgICApXG4gICk7XG5cbiAgc2F2ZUVkaXRBYmFjUnVsZSQgPSBjcmVhdGVFZmZlY3QoKCkgPT5cbiAgICB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgICBvZlR5cGUoQWJhY1J1bGVzQWN0aW9ucy5zYXZlRWRpdEFiYWNSdWxlKSxcbiAgICAgIHdpdGhMYXRlc3RGcm9tKFxuICAgICAgICB0aGlzLnN0b3JlLnNlbGVjdChBYmFjUnVsZXNTZWxlY3RvcnMuZWRpdEFiYWNSdWxlKSxcbiAgICAgICAgdGhpcy5zdG9yZS5zZWxlY3QoQWJhY1J1bGVzU2VsZWN0b3JzLmVkaXRBYmFjUnVsZUNvbmRpdGlvbnMpXG4gICAgICApLFxuICAgICAgbWVyZ2VNYXAoKFthY3Rpb24sIHJ1bGUsIGNvbmRpdGlvbnNdKSA9PiB7XG4gICAgICAgIGNvbnN0IHBheWxvYWQgPSB0aGlzLmFiYWNSdWxlc1NlcnZpY2UuYnVpbGRQYXlsb2FkRm9yQWJhY1J1bGUocnVsZSEsIGNvbmRpdGlvbnMpO1xuICAgICAgICByZXR1cm4gdGhpcy5zZXJ2aWNlLnNhdmVBYmFjUnVsZShwYXlsb2FkKS5waXBlKFxuICAgICAgICAgIG1hcCgoKSA9PiBBYmFjUnVsZXNBY3Rpb25zLnNhdmVBYmFjUnVsZVN1Y2Nlc3MoeyByZWRpcmVjdDogYWN0aW9uLnJlZGlyZWN0IH0pKSxcbiAgICAgICAgICBjYXRjaEVycm9yKChlcnJvcikgPT4gW0FiYWNSdWxlc0FjdGlvbnMuc2F2ZUFiYWNSdWxlRmFpbHVyZSh7IGVycm9yOiBlcnJvciB9KV0pXG4gICAgICAgICk7XG4gICAgICB9KVxuICAgIClcbiAgKTtcblxuICBzYXZlQWJhY1J1bGVTdWNjZXNzJCA9IGNyZWF0ZUVmZmVjdCgoKSA9PlxuICAgIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgIG9mVHlwZShBYmFjUnVsZXNBY3Rpb25zLnNhdmVBYmFjUnVsZVN1Y2Nlc3MpLFxuICAgICAgbWVyZ2VNYXAoKGFjdGlvbikgPT4gW0FiYWNSdWxlc0FjdGlvbnMucmVzZXRFZGl0QWJhY1J1bGUoKSwgQWRtaW5BY3Rpb25zLnJvdXRlVG8oeyBwYXRoOiBhY3Rpb24ucmVkaXJlY3QgfSldKVxuICAgIClcbiAgKTtcblxuICBmZXRjaEFiYWNSdWxlJCA9IGNyZWF0ZUVmZmVjdCgoKSA9PlxuICAgIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgIG9mVHlwZShBYmFjUnVsZXNBY3Rpb25zLmZldGNoQWJhY1J1bGUpLFxuICAgICAgbWVyZ2VNYXAoKGFjdGlvbikgPT5cbiAgICAgICAgdGhpcy5zZXJ2aWNlLmdldEFiYWNSdWxlKGFjdGlvbi5pZCkucGlwZShcbiAgICAgICAgICBtYXAoKHJ1bGUpID0+IEFiYWNSdWxlc0FjdGlvbnMuZmV0Y2hBYmFjUnVsZVN1Y2Nlc3MoeyBydWxlIH0pKSxcbiAgICAgICAgICBjYXRjaEVycm9yKChlcnJvcikgPT4gW0FiYWNSdWxlc0FjdGlvbnMuZmV0Y2hBYmFjUnVsZUZhaWx1cmUoeyBlcnJvcjogZXJyb3IgfSldKVxuICAgICAgICApXG4gICAgICApXG4gICAgKVxuICApO1xuXG4gIGZldGNoQWJhY1J1bGVTdWNjZXNzJCA9IGNyZWF0ZUVmZmVjdCgoKSA9PlxuICAgIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgIG9mVHlwZShBYmFjUnVsZXNBY3Rpb25zLmZldGNoQWJhY1J1bGVTdWNjZXNzKSxcbiAgICAgIHN3aXRjaE1hcCgoYWN0aW9uKSA9PiB7XG4gICAgICAgIGNvbnN0IGVkaXRSdWxlID0gdGhpcy5hYmFjUnVsZXNTZXJ2aWNlLm1hcEFiYWNSdWxlVG9FZGl0QWJhY1J1bGUoYWN0aW9uLnJ1bGUpO1xuICAgICAgICBjb25zdCBhYmFjUnVsZUFjdGlvbiQgPSBBYmFjUnVsZXNBY3Rpb25zLnVwZGF0ZUVkaXRBYmFjUnVsZSh7IHJ1bGU6IGVkaXRSdWxlLnJ1bGUgfSk7XG4gICAgICAgIGNvbnN0IGFiYWNSdWxlQ29uZGl0aW9uc0FjdGlvbiQgPSBBYmFjUnVsZXNBY3Rpb25zLmluaXRFZGl0QWJhY1J1bGVDb25kaXRpb25zKHtcbiAgICAgICAgICBjb25kaXRpb246IGVkaXRSdWxlLmNvbmRpdGlvbnNcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiBbYWJhY1J1bGVBY3Rpb24kLCBhYmFjUnVsZUNvbmRpdGlvbnNBY3Rpb24kXTtcbiAgICAgIH0pXG4gICAgKVxuICApO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgYWN0aW9ucyQ6IEFjdGlvbnMsXG4gICAgcHJpdmF0ZSBzZXJ2aWNlOiBBZG1pblNlcnZpY2UsXG4gICAgcHJpdmF0ZSBzdG9yZTogU3RvcmU8YW55PixcbiAgICBwcml2YXRlIGFiYWNSdWxlc1NlcnZpY2U6IEFiYWNSdWxlc1NlcnZpY2VcbiAgKSB7fVxufVxuIl19
|
|
@@ -149,10 +149,10 @@ export class AbacRulesService {
|
|
|
149
149
|
};
|
|
150
150
|
}
|
|
151
151
|
}
|
|
152
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
153
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.
|
|
152
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: AbacRulesService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
153
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: AbacRulesService, providedIn: 'root' }); }
|
|
154
154
|
}
|
|
155
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
155
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: AbacRulesService, decorators: [{
|
|
156
156
|
type: Injectable,
|
|
157
157
|
args: [{
|
|
158
158
|
providedIn: 'root'
|