geonetwork-ui 2.2.0-dev.e0d0f7a1 → 2.2.0-dev.e441b922
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/esm2022/libs/api/metadata-converter/src/lib/gn4/atomic-operations.mjs +28 -1
- package/esm2022/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.mjs +96 -59
- package/esm2022/libs/api/metadata-converter/src/lib/gn4/gn4.metadata.mapper.mjs +7 -4
- package/esm2022/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.mjs +1 -1
- package/esm2022/libs/api/metadata-converter/src/lib/iso19139/codelists/keyword.mapper.mjs +14 -0
- package/esm2022/libs/api/metadata-converter/src/lib/iso19139/converter.mjs +25 -17
- package/esm2022/libs/api/metadata-converter/src/lib/iso19139/read-parts.mjs +55 -23
- package/esm2022/libs/api/metadata-converter/src/lib/iso19139/write-parts.mjs +52 -32
- package/esm2022/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.mjs +2 -2
- package/esm2022/libs/api/repository/src/lib/gn4/index.mjs +3 -1
- package/esm2022/libs/api/repository/src/lib/gn4/organizations/organizations-from-metadata.service.mjs +10 -3
- package/esm2022/libs/api/repository/src/lib/gn4/platform/gn4-platform.mapper.mjs +14 -5
- package/esm2022/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.mjs +33 -8
- package/esm2022/libs/api/repository/src/lib/gn4/selection/selection.service.mjs +13 -26
- package/esm2022/libs/common/domain/src/lib/model/record/metadata.model.mjs +1 -1
- package/esm2022/libs/common/domain/src/lib/model/search/aggregation.model.mjs +1 -1
- package/esm2022/libs/common/domain/src/lib/model/search/field.model.mjs +2 -0
- package/esm2022/libs/common/domain/src/lib/model/search/filter.model.mjs +1 -1
- package/esm2022/libs/common/domain/src/lib/model/search/index.mjs +2 -1
- package/esm2022/libs/common/domain/src/lib/model/search/search.model.mjs +1 -1
- package/esm2022/libs/common/domain/src/lib/model/thesaurus/thesaurus.model.mjs +1 -1
- package/esm2022/libs/common/domain/src/lib/platform.service.interface.mjs +1 -1
- package/esm2022/libs/feature/catalog/src/lib/my-org/my-org.service.mjs +4 -10
- package/esm2022/libs/feature/dataviz/src/lib/service/data.service.mjs +5 -4
- package/esm2022/libs/feature/editor/src/index.mjs +6 -1
- package/esm2022/libs/feature/editor/src/lib/+state/editor.actions.mjs +8 -0
- package/esm2022/libs/feature/editor/src/lib/+state/editor.effects.mjs +26 -0
- package/esm2022/libs/feature/editor/src/lib/+state/editor.facade.mjs +30 -0
- package/esm2022/libs/feature/editor/src/lib/+state/editor.models.mjs +2 -0
- package/esm2022/libs/feature/editor/src/lib/+state/editor.reducer.mjs +42 -0
- package/esm2022/libs/feature/editor/src/lib/+state/editor.selectors.mjs +13 -0
- package/esm2022/libs/feature/editor/src/lib/expressions.mjs +13 -0
- package/esm2022/libs/feature/editor/src/lib/feature-editor.module.mjs +16 -4
- package/esm2022/libs/feature/editor/src/lib/fields.config.mjs +34 -0
- package/esm2022/libs/feature/editor/src/lib/models/fields.model.mjs +2 -0
- package/esm2022/libs/feature/editor/src/lib/record-form/record-form.component.mjs +17 -11
- package/esm2022/libs/feature/editor/src/lib/services/editor.service.mjs +22 -44
- package/esm2022/libs/feature/map/src/index.mjs +2 -1
- package/esm2022/libs/feature/map/src/lib/constant/index.mjs +2 -1
- package/esm2022/libs/feature/map/src/lib/constant/projections.mjs +2 -0
- package/esm2022/libs/feature/map/src/lib/feature-map.module.mjs +17 -3
- package/esm2022/libs/feature/map/src/lib/geocoding/geocoding.component.mjs +93 -0
- package/esm2022/libs/feature/map/src/lib/geocoding.service.mjs +40 -0
- package/esm2022/libs/feature/map/src/lib/map-context/map-context.service.mjs +9 -1
- package/esm2022/libs/feature/map/src/lib/utils/index.mjs +1 -3
- package/esm2022/libs/feature/map/src/lib/utils/map-utils.service.mjs +60 -29
- package/esm2022/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.mjs +13 -13
- package/esm2022/libs/feature/record/src/lib/map-view/map-view.component.mjs +29 -20
- package/esm2022/libs/feature/record/src/lib/state/mdview.reducer.mjs +2 -2
- package/esm2022/libs/feature/search/src/index.mjs +4 -1
- package/esm2022/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.mjs +3 -3
- package/esm2022/libs/feature/search/src/lib/feature-search.module.mjs +2 -6
- package/esm2022/libs/feature/search/src/lib/filter-dropdown/filter-dropdown.component.mjs +1 -1
- package/esm2022/libs/feature/search/src/lib/filter-geometry.token.mjs +4 -0
- package/esm2022/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.mjs +7 -3
- package/esm2022/libs/feature/search/src/lib/record-url.token.mjs +4 -0
- package/esm2022/libs/feature/search/src/lib/results-list/results-list.container.component.mjs +2 -2
- package/esm2022/libs/feature/search/src/lib/results-table/results-table.component.mjs +128 -0
- package/esm2022/libs/feature/search/src/lib/state/effects.mjs +6 -4
- package/esm2022/libs/feature/search/src/lib/state/search.facade.mjs +3 -2
- package/esm2022/libs/feature/search/src/lib/utils/service/fields.mjs +41 -26
- package/esm2022/libs/feature/search/src/lib/utils/service/fields.service.mjs +11 -9
- package/esm2022/libs/ui/catalog/src/lib/language-switcher/language-switcher.component.mjs +3 -3
- package/esm2022/libs/ui/elements/src/index.mjs +2 -1
- package/esm2022/libs/ui/elements/src/lib/downloads-list/downloads-list.component.mjs +3 -3
- package/esm2022/libs/ui/elements/src/lib/image-overlay-preview/image-overlay-preview.component.mjs +3 -3
- package/esm2022/libs/ui/elements/src/lib/markdown-parser/markdown-parser.component.mjs +3 -3
- package/esm2022/libs/ui/elements/src/lib/max-lines/max-lines.component.mjs +5 -3
- package/esm2022/libs/ui/elements/src/lib/metadata-contact/metadata-contact.component.mjs +3 -3
- package/esm2022/libs/ui/elements/src/lib/metadata-info/metadata-info.component.mjs +47 -22
- package/esm2022/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.mjs +3 -4
- package/esm2022/libs/ui/elements/src/lib/record-api-form/record-api-form.component.mjs +9 -6
- package/esm2022/libs/ui/elements/src/lib/thumbnail/thumbnail.component.mjs +3 -3
- package/esm2022/libs/ui/elements/src/lib/ui-elements.module.mjs +6 -4
- package/esm2022/libs/ui/inputs/src/index.mjs +2 -1
- package/esm2022/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.mjs +3 -3
- package/esm2022/libs/ui/inputs/src/lib/button/button.component.mjs +9 -9
- package/esm2022/libs/ui/inputs/src/lib/checkbox/checkbox.component.mjs +3 -3
- package/esm2022/libs/ui/inputs/src/lib/dropdown-multiselect/dropdown-multiselect.component.mjs +3 -3
- package/esm2022/libs/ui/inputs/src/lib/dropdown-selector/dropdown-selector.component.mjs +3 -3
- package/esm2022/libs/ui/inputs/src/lib/editable-label/editable-label.directive.mjs +46 -0
- package/esm2022/libs/ui/inputs/src/lib/form-field/form-field.component.mjs +4 -2
- package/esm2022/libs/ui/inputs/src/lib/form-field/form-field.model.mjs +1 -1
- package/esm2022/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.mjs +3 -3
- package/esm2022/libs/ui/inputs/src/lib/text-area/text-area.component.mjs +3 -3
- package/esm2022/libs/ui/inputs/src/lib/ui-inputs.module.mjs +12 -7
- package/esm2022/libs/ui/layout/src/index.mjs +3 -1
- package/esm2022/libs/ui/layout/src/lib/carousel/carousel.component.mjs +3 -3
- package/esm2022/libs/ui/layout/src/lib/interactive-table/interactive-table-column/interactive-table-column.component.mjs +36 -0
- package/esm2022/libs/ui/layout/src/lib/interactive-table/interactive-table.component.mjs +37 -0
- package/esm2022/libs/ui/search/src/index.mjs +1 -2
- package/esm2022/libs/ui/search/src/lib/ui-search.module.mjs +9 -10
- package/esm2022/libs/ui/widgets/src/lib/badge/badge.component.mjs +3 -3
- package/esm2022/libs/util/i18n/src/index.mjs +1 -2
- package/esm2022/libs/util/i18n/src/lib/i18n.constants.mjs +18 -1
- package/esm2022/libs/util/shared/src/lib/links/link-utils.mjs +29 -13
- package/esm2022/libs/util/shared/src/lib/utils/index.mjs +2 -1
- package/esm2022/libs/util/shared/src/lib/utils/temporal-extent-union.mjs +32 -0
- package/esm2022/translations/de.json +37 -25
- package/esm2022/translations/en.json +38 -26
- package/esm2022/translations/es.json +32 -20
- package/esm2022/translations/fr.json +51 -39
- package/esm2022/translations/it.json +44 -32
- package/esm2022/translations/nl.json +33 -21
- package/esm2022/translations/pt.json +32 -20
- package/fesm2022/geonetwork-ui.mjs +1537 -957
- package/fesm2022/geonetwork-ui.mjs.map +1 -1
- package/libs/api/metadata-converter/src/lib/gn4/atomic-operations.d.ts +3 -0
- package/libs/api/metadata-converter/src/lib/gn4/atomic-operations.d.ts.map +1 -1
- package/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.d.ts +0 -1
- package/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.d.ts.map +1 -1
- package/libs/api/metadata-converter/src/lib/gn4/gn4.metadata.mapper.d.ts.map +1 -1
- package/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.d.ts +4 -5
- package/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.d.ts.map +1 -1
- package/libs/api/metadata-converter/src/lib/iso19139/codelists/keyword.mapper.d.ts +3 -0
- package/libs/api/metadata-converter/src/lib/iso19139/codelists/keyword.mapper.d.ts.map +1 -0
- package/libs/api/metadata-converter/src/lib/iso19139/converter.d.ts.map +1 -1
- package/libs/api/metadata-converter/src/lib/iso19139/read-parts.d.ts +7 -6
- package/libs/api/metadata-converter/src/lib/iso19139/read-parts.d.ts.map +1 -1
- package/libs/api/metadata-converter/src/lib/iso19139/write-parts.d.ts +4 -3
- package/libs/api/metadata-converter/src/lib/iso19139/write-parts.d.ts.map +1 -1
- package/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.d.ts.map +1 -1
- package/libs/api/repository/src/lib/gn4/index.d.ts +2 -0
- package/libs/api/repository/src/lib/gn4/index.d.ts.map +1 -1
- package/libs/api/repository/src/lib/gn4/organizations/organizations-from-metadata.service.d.ts.map +1 -1
- package/libs/api/repository/src/lib/gn4/platform/gn4-platform.mapper.d.ts +1 -1
- package/libs/api/repository/src/lib/gn4/platform/gn4-platform.mapper.d.ts.map +1 -1
- package/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.d.ts +9 -2
- package/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.d.ts.map +1 -1
- package/libs/api/repository/src/lib/gn4/selection/selection.service.d.ts +4 -5
- package/libs/api/repository/src/lib/gn4/selection/selection.service.d.ts.map +1 -1
- package/libs/common/domain/src/lib/model/record/metadata.model.d.ts +31 -17
- package/libs/common/domain/src/lib/model/record/metadata.model.d.ts.map +1 -1
- package/libs/common/domain/src/lib/model/search/aggregation.model.d.ts +1 -1
- package/libs/common/domain/src/lib/model/search/aggregation.model.d.ts.map +1 -1
- package/libs/common/domain/src/lib/model/search/field.model.d.ts +2 -0
- package/libs/common/domain/src/lib/model/search/field.model.d.ts.map +1 -0
- package/libs/common/domain/src/lib/model/search/filter.model.d.ts +1 -1
- package/libs/common/domain/src/lib/model/search/filter.model.d.ts.map +1 -1
- package/libs/common/domain/src/lib/model/search/index.d.ts +1 -0
- package/libs/common/domain/src/lib/model/search/index.d.ts.map +1 -1
- package/libs/common/domain/src/lib/model/search/search.model.d.ts +2 -3
- package/libs/common/domain/src/lib/model/search/search.model.d.ts.map +1 -1
- package/libs/common/domain/src/lib/model/thesaurus/thesaurus.model.d.ts +1 -0
- package/libs/common/domain/src/lib/model/thesaurus/thesaurus.model.d.ts.map +1 -1
- package/libs/common/domain/src/lib/platform.service.interface.d.ts +1 -1
- package/libs/common/domain/src/lib/platform.service.interface.d.ts.map +1 -1
- package/libs/feature/catalog/src/lib/my-org/my-org.service.d.ts +0 -1
- package/libs/feature/catalog/src/lib/my-org/my-org.service.d.ts.map +1 -1
- package/libs/feature/dataviz/src/lib/service/data.service.d.ts +15 -2
- package/libs/feature/dataviz/src/lib/service/data.service.d.ts.map +1 -1
- package/libs/feature/editor/src/index.d.ts +5 -0
- package/libs/feature/editor/src/index.d.ts.map +1 -1
- package/libs/feature/editor/src/lib/+state/editor.actions.d.ts +23 -0
- package/libs/feature/editor/src/lib/+state/editor.actions.d.ts.map +1 -0
- package/libs/feature/editor/src/lib/+state/editor.effects.d.ts +15 -0
- package/libs/feature/editor/src/lib/+state/editor.effects.d.ts.map +1 -0
- package/libs/feature/editor/src/lib/+state/editor.facade.d.ts +19 -0
- package/libs/feature/editor/src/lib/+state/editor.facade.d.ts.map +1 -0
- package/libs/feature/editor/src/lib/+state/editor.models.d.ts +2 -0
- package/libs/feature/editor/src/lib/+state/editor.models.d.ts.map +1 -0
- package/libs/feature/editor/src/lib/+state/editor.reducer.d.ts +18 -0
- package/libs/feature/editor/src/lib/+state/editor.reducer.d.ts.map +1 -0
- package/libs/feature/editor/src/lib/+state/editor.selectors.d.ts +15 -0
- package/libs/feature/editor/src/lib/+state/editor.selectors.d.ts.map +1 -0
- package/libs/feature/editor/src/lib/expressions.d.ts +4 -0
- package/libs/feature/editor/src/lib/expressions.d.ts.map +1 -0
- package/libs/feature/editor/src/lib/feature-editor.module.d.ts +3 -1
- package/libs/feature/editor/src/lib/feature-editor.module.d.ts.map +1 -1
- package/libs/feature/editor/src/lib/fields.config.d.ts +3 -0
- package/libs/feature/editor/src/lib/fields.config.d.ts.map +1 -0
- package/libs/feature/editor/src/lib/models/fields.model.d.ts +15 -0
- package/libs/feature/editor/src/lib/models/fields.model.d.ts.map +1 -0
- package/libs/feature/editor/src/lib/record-form/record-form.component.d.ts +10 -5
- package/libs/feature/editor/src/lib/record-form/record-form.component.d.ts.map +1 -1
- package/libs/feature/editor/src/lib/services/editor.service.d.ts +3 -13
- package/libs/feature/editor/src/lib/services/editor.service.d.ts.map +1 -1
- package/libs/feature/map/src/index.d.ts +1 -0
- package/libs/feature/map/src/index.d.ts.map +1 -1
- package/libs/feature/map/src/lib/constant/index.d.ts +1 -0
- package/libs/feature/map/src/lib/constant/index.d.ts.map +1 -1
- package/libs/feature/map/src/lib/constant/projections.d.ts.map +1 -0
- package/libs/feature/map/src/lib/feature-map.module.d.ts +13 -12
- package/libs/feature/map/src/lib/feature-map.module.d.ts.map +1 -1
- package/libs/feature/map/src/lib/geocoding/geocoding.component.d.ts +25 -0
- package/libs/feature/map/src/lib/geocoding/geocoding.component.d.ts.map +1 -0
- package/libs/feature/map/src/lib/geocoding.service.d.ts +18 -0
- package/libs/feature/map/src/lib/geocoding.service.d.ts.map +1 -0
- package/libs/feature/map/src/lib/map-context/map-context.service.d.ts +1 -0
- package/libs/feature/map/src/lib/map-context/map-context.service.d.ts.map +1 -1
- package/libs/feature/map/src/lib/utils/index.d.ts +0 -2
- package/libs/feature/map/src/lib/utils/index.d.ts.map +1 -1
- package/libs/feature/map/src/lib/utils/map-utils.service.d.ts +13 -11
- package/libs/feature/map/src/lib/utils/map-utils.service.d.ts.map +1 -1
- package/libs/feature/record/src/lib/map-view/map-view.component.d.ts +1 -3
- package/libs/feature/record/src/lib/map-view/map-view.component.d.ts.map +1 -1
- package/libs/feature/search/src/index.d.ts +3 -0
- package/libs/feature/search/src/index.d.ts.map +1 -1
- package/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.d.ts +3 -3
- package/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.d.ts.map +1 -1
- package/libs/feature/search/src/lib/feature-search.module.d.ts +0 -4
- package/libs/feature/search/src/lib/feature-search.module.d.ts.map +1 -1
- package/libs/feature/search/src/lib/filter-dropdown/filter-dropdown.component.d.ts +3 -2
- package/libs/feature/search/src/lib/filter-dropdown/filter-dropdown.component.d.ts.map +1 -1
- package/libs/feature/search/src/lib/filter-geometry.token.d.ts +4 -0
- package/libs/feature/search/src/lib/filter-geometry.token.d.ts.map +1 -0
- package/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.d.ts +1 -1
- package/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.d.ts.map +1 -1
- package/libs/feature/search/src/lib/record-url.token.d.ts +3 -0
- package/libs/feature/search/src/lib/record-url.token.d.ts.map +1 -0
- package/libs/feature/search/src/lib/results-table/results-table.component.d.ts +33 -0
- package/libs/feature/search/src/lib/results-table/results-table.component.d.ts.map +1 -0
- package/libs/feature/search/src/lib/state/effects.d.ts.map +1 -1
- package/libs/feature/search/src/lib/state/search.facade.d.ts +1 -1
- package/libs/feature/search/src/lib/state/search.facade.d.ts.map +1 -1
- package/libs/feature/search/src/lib/utils/service/fields.d.ts +21 -8
- package/libs/feature/search/src/lib/utils/service/fields.d.ts.map +1 -1
- package/libs/feature/search/src/lib/utils/service/fields.service.d.ts.map +1 -1
- package/libs/ui/dataviz/src/lib/chart/chart.component.d.ts +1 -1
- package/libs/ui/elements/src/index.d.ts +1 -0
- package/libs/ui/elements/src/index.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/downloads-list/downloads-list.component.d.ts +1 -1
- package/libs/ui/elements/src/lib/markdown-parser/markdown-parser.component.d.ts +1 -1
- package/libs/ui/elements/src/lib/markdown-parser/markdown-parser.component.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/max-lines/max-lines.component.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/metadata-info/metadata-info.component.d.ts +16 -6
- package/libs/ui/elements/src/lib/metadata-info/metadata-info.component.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/record-api-form/record-api-form.component.d.ts +3 -1
- package/libs/ui/elements/src/lib/record-api-form/record-api-form.component.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/ui-elements.module.d.ts +13 -13
- package/libs/ui/elements/src/lib/ui-elements.module.d.ts.map +1 -1
- package/libs/ui/inputs/src/index.d.ts +1 -0
- package/libs/ui/inputs/src/index.d.ts.map +1 -1
- package/libs/ui/inputs/src/lib/button/button.component.d.ts +1 -1
- package/libs/ui/inputs/src/lib/button/button.component.d.ts.map +1 -1
- package/libs/ui/inputs/src/lib/editable-label/editable-label.directive.d.ts +13 -0
- package/libs/ui/inputs/src/lib/editable-label/editable-label.directive.d.ts.map +1 -0
- package/libs/ui/inputs/src/lib/form-field/form-field.component.d.ts.map +1 -1
- package/libs/ui/inputs/src/lib/form-field/form-field.model.d.ts +0 -1
- package/libs/ui/inputs/src/lib/form-field/form-field.model.d.ts.map +1 -1
- package/libs/ui/inputs/src/lib/text-area/text-area.component.d.ts +1 -1
- package/libs/ui/inputs/src/lib/text-area/text-area.component.d.ts.map +1 -1
- package/libs/ui/inputs/src/lib/ui-inputs.module.d.ts +40 -39
- package/libs/ui/inputs/src/lib/ui-inputs.module.d.ts.map +1 -1
- package/libs/ui/layout/src/index.d.ts +2 -0
- package/libs/ui/layout/src/index.d.ts.map +1 -1
- package/libs/ui/layout/src/lib/interactive-table/interactive-table-column/interactive-table-column.component.d.ts +14 -0
- package/libs/ui/layout/src/lib/interactive-table/interactive-table-column/interactive-table-column.component.d.ts.map +1 -0
- package/libs/ui/layout/src/lib/interactive-table/interactive-table.component.d.ts +15 -0
- package/libs/ui/layout/src/lib/interactive-table/interactive-table.component.d.ts.map +1 -0
- package/libs/ui/search/src/index.d.ts +0 -1
- package/libs/ui/search/src/index.d.ts.map +1 -1
- package/libs/ui/search/src/lib/ui-search.module.d.ts +15 -15
- package/libs/ui/search/src/lib/ui-search.module.d.ts.map +1 -1
- package/libs/util/i18n/src/index.d.ts +0 -1
- package/libs/util/i18n/src/index.d.ts.map +1 -1
- package/libs/util/i18n/src/lib/i18n.constants.d.ts +17 -0
- package/libs/util/i18n/src/lib/i18n.constants.d.ts.map +1 -1
- package/libs/util/shared/src/lib/links/link-utils.d.ts +19 -7
- package/libs/util/shared/src/lib/links/link-utils.d.ts.map +1 -1
- package/libs/util/shared/src/lib/utils/index.d.ts +1 -0
- package/libs/util/shared/src/lib/utils/index.d.ts.map +1 -1
- package/libs/util/shared/src/lib/utils/temporal-extent-union.d.ts +5 -0
- package/libs/util/shared/src/lib/utils/temporal-extent-union.d.ts.map +1 -0
- package/package.json +4 -1
- package/src/libs/api/metadata-converter/src/lib/fixtures/generic.records.ts +63 -8
- package/src/libs/api/metadata-converter/src/lib/fixtures/geo2france.records.ts +57 -9
- package/src/libs/api/metadata-converter/src/lib/fixtures/geocat-ch.records.ts +229 -24
- package/src/libs/api/metadata-converter/src/lib/gn4/atomic-operations.ts +32 -0
- package/src/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.ts +140 -74
- package/src/libs/api/metadata-converter/src/lib/gn4/gn4.metadata.mapper.ts +6 -3
- package/src/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.ts +4 -5
- package/src/libs/api/metadata-converter/src/lib/iso19139/codelists/keyword.mapper.ts +16 -0
- package/src/libs/api/metadata-converter/src/lib/iso19139/converter.ts +30 -21
- package/src/libs/api/metadata-converter/src/lib/iso19139/read-parts.ts +120 -63
- package/src/libs/api/metadata-converter/src/lib/iso19139/write-parts.ts +177 -97
- package/src/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.ts +1 -1
- package/src/libs/api/repository/src/lib/gn4/index.ts +2 -0
- package/src/libs/api/repository/src/lib/gn4/organizations/organizations-from-metadata.service.ts +22 -2
- package/src/libs/api/repository/src/lib/gn4/platform/gn4-platform.mapper.ts +15 -4
- package/src/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.ts +47 -8
- package/src/libs/api/repository/src/lib/gn4/selection/selection.service.ts +14 -38
- package/src/libs/common/domain/src/lib/index.ts +2 -0
- package/src/libs/common/domain/src/lib/model/record/metadata.model.ts +37 -21
- package/src/libs/common/domain/src/lib/model/search/aggregation.model.ts +1 -1
- package/src/libs/common/domain/src/lib/model/search/field.model.ts +1 -0
- package/src/libs/common/domain/src/lib/model/search/filter.model.ts +1 -1
- package/src/libs/common/domain/src/lib/model/search/index.ts +1 -0
- package/src/libs/common/domain/src/lib/model/search/search.model.ts +2 -2
- package/src/libs/common/domain/src/lib/model/thesaurus/thesaurus.model.ts +1 -0
- package/src/libs/common/domain/src/lib/model/user/index.ts +1 -0
- package/src/libs/common/domain/src/lib/platform.service.interface.ts +1 -4
- package/src/libs/common/fixtures/src/lib/elasticsearch/full-response.ts +1 -1
- package/src/libs/common/fixtures/src/lib/gn4/groups.fixtures.ts +1 -1
- package/src/libs/common/fixtures/src/lib/records.fixtures.ts +52 -10
- package/src/libs/feature/catalog/src/lib/my-org/my-org.service.ts +4 -16
- package/src/libs/feature/dataviz/src/lib/service/data.service.ts +8 -5
- package/src/libs/feature/editor/src/index.ts +5 -0
- package/src/libs/feature/editor/src/lib/+state/editor.actions.ts +24 -0
- package/src/libs/feature/editor/src/lib/+state/editor.effects.ts +49 -0
- package/src/libs/feature/editor/src/lib/+state/editor.facade.ts +30 -0
- package/src/libs/feature/editor/src/lib/+state/editor.models.ts +1 -0
- package/src/libs/feature/editor/src/lib/+state/editor.reducer.ts +68 -0
- package/src/libs/feature/editor/src/lib/+state/editor.selectors.ts +39 -0
- package/src/libs/feature/editor/src/lib/expressions.ts +16 -0
- package/src/libs/feature/editor/src/lib/feature-editor.module.ts +11 -0
- package/src/libs/feature/editor/src/lib/fields.config.ts +35 -0
- package/src/libs/feature/editor/src/lib/models/fields.model.ts +29 -0
- package/src/libs/feature/editor/src/lib/record-form/record-form.component.html +9 -7
- package/src/libs/feature/editor/src/lib/record-form/record-form.component.ts +13 -6
- package/src/libs/feature/editor/src/lib/services/editor.service.ts +34 -73
- package/src/libs/feature/map/src/index.ts +1 -0
- package/src/libs/feature/map/src/lib/constant/index.ts +1 -0
- package/src/libs/feature/map/src/lib/feature-map.module.ts +8 -0
- package/src/libs/feature/map/src/lib/geocoding/geocoding.component.css +0 -0
- package/src/libs/feature/map/src/lib/geocoding/geocoding.component.html +39 -0
- package/src/libs/feature/map/src/lib/geocoding/geocoding.component.ts +99 -0
- package/src/libs/feature/map/src/lib/geocoding.service.ts +59 -0
- package/src/libs/feature/map/src/lib/map-context/map-context.service.ts +10 -0
- package/src/libs/feature/map/src/lib/utils/index.ts +0 -2
- package/src/libs/feature/map/src/lib/utils/map-utils.service.ts +85 -50
- package/src/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.ts +12 -12
- package/src/libs/feature/record/src/lib/map-view/map-view.component.ts +18 -3
- package/src/libs/feature/record/src/lib/state/mdview.reducer.ts +1 -1
- package/src/libs/feature/search/src/index.ts +3 -0
- package/src/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.html +3 -4
- package/src/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.ts +1 -1
- package/src/libs/feature/search/src/lib/feature-search.module.ts +1 -10
- package/src/libs/feature/search/src/lib/filter-dropdown/filter-dropdown.component.ts +4 -4
- package/src/libs/feature/search/src/lib/filter-geometry.token.ts +7 -0
- package/src/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.ts +9 -3
- package/src/libs/feature/search/src/lib/record-url.token.ts +4 -0
- package/src/libs/feature/search/src/lib/results-list/results-list.container.component.ts +1 -1
- package/src/libs/feature/search/src/lib/results-table/results-table.component.css +0 -0
- package/src/libs/feature/search/src/lib/results-table/results-table.component.html +112 -0
- package/src/libs/feature/search/src/lib/results-table/results-table.component.ts +164 -0
- package/src/libs/feature/search/src/lib/state/effects.ts +5 -4
- package/src/libs/feature/search/src/lib/state/search.facade.ts +2 -1
- package/src/libs/feature/search/src/lib/utils/service/fields.service.ts +21 -16
- package/src/libs/feature/search/src/lib/utils/service/fields.ts +43 -34
- package/src/libs/ui/catalog/src/lib/language-switcher/language-switcher.component.html +1 -1
- package/src/libs/ui/elements/src/index.ts +1 -0
- package/src/libs/ui/elements/src/lib/downloads-list/downloads-list.component.html +4 -1
- package/src/libs/ui/elements/src/lib/image-overlay-preview/image-overlay-preview.component.html +3 -2
- package/src/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.css +5 -0
- package/src/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.html +39 -0
- package/src/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.ts +58 -0
- package/src/libs/ui/elements/src/lib/markdown-parser/markdown-parser.component.css +54 -54
- package/src/libs/ui/elements/src/lib/markdown-parser/markdown-parser.component.ts +1 -0
- package/src/libs/ui/elements/src/lib/max-lines/max-lines.component.html +5 -1
- package/src/libs/ui/elements/src/lib/max-lines/max-lines.component.ts +1 -0
- package/src/libs/ui/elements/src/lib/metadata-contact/metadata-contact.component.html +2 -2
- package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.html +169 -52
- package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.ts +51 -15
- package/src/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.ts +2 -3
- package/src/libs/ui/elements/src/lib/record-api-form/record-api-form.component.html +5 -5
- package/src/libs/ui/elements/src/lib/record-api-form/record-api-form.component.ts +12 -4
- package/src/libs/ui/elements/src/lib/thumbnail/thumbnail.component.html +2 -2
- package/src/libs/ui/elements/src/lib/ui-elements.module.ts +2 -1
- package/src/libs/ui/inputs/src/index.ts +1 -0
- package/src/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.html +1 -1
- package/src/libs/ui/inputs/src/lib/button/button.component.css +0 -5
- package/src/libs/ui/inputs/src/lib/button/button.component.html +0 -1
- package/src/libs/ui/inputs/src/lib/button/button.component.ts +7 -6
- package/src/libs/ui/inputs/src/lib/checkbox/checkbox.component.html +0 -1
- package/src/libs/ui/inputs/src/lib/dropdown-multiselect/dropdown-multiselect.component.html +2 -2
- package/src/libs/ui/inputs/src/lib/dropdown-selector/dropdown-selector.component.html +3 -1
- package/src/libs/ui/inputs/src/lib/editable-label/editable-label.directive.ts +48 -0
- package/src/libs/ui/inputs/src/lib/form-field/form-field.component.ts +3 -1
- package/src/libs/ui/inputs/src/lib/form-field/form-field.model.ts +0 -1
- package/src/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.css +3 -0
- package/src/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.html +1 -1
- package/src/libs/ui/inputs/src/lib/text-area/text-area.component.ts +1 -0
- package/src/libs/ui/inputs/src/lib/ui-inputs.module.ts +5 -2
- package/src/libs/ui/layout/src/index.ts +2 -0
- package/src/libs/ui/layout/src/lib/carousel/carousel.component.css +1 -1
- package/src/libs/ui/layout/src/lib/carousel/carousel.component.html +1 -0
- package/src/libs/ui/layout/src/lib/interactive-table/interactive-table-column/interactive-table-column.component.css +0 -0
- package/src/libs/ui/layout/src/lib/interactive-table/interactive-table-column/interactive-table-column.component.html +1 -0
- package/src/libs/ui/layout/src/lib/interactive-table/interactive-table-column/interactive-table-column.component.ts +33 -0
- package/src/libs/ui/layout/src/lib/interactive-table/interactive-table.component.css +15 -0
- package/src/libs/ui/layout/src/lib/interactive-table/interactive-table.component.html +54 -0
- package/src/libs/ui/layout/src/lib/interactive-table/interactive-table.component.ts +42 -0
- package/src/libs/ui/search/src/index.ts +0 -1
- package/src/libs/ui/search/src/lib/ui-search.module.ts +2 -3
- package/src/libs/ui/widgets/src/lib/badge/badge.component.html +3 -1
- package/src/libs/util/i18n/src/index.ts +0 -1
- package/src/libs/util/i18n/src/lib/i18n.constants.ts +18 -0
- package/src/libs/util/shared/src/lib/links/link-utils.ts +34 -11
- package/src/libs/util/shared/src/lib/utils/index.ts +1 -0
- package/src/libs/util/shared/src/lib/utils/temporal-extent-union.ts +32 -0
- package/tailwind.base.css +44 -15
- package/translations/de.json +37 -25
- package/translations/en.json +38 -26
- package/translations/es.json +32 -20
- package/translations/fr.json +51 -39
- package/translations/it.json +44 -32
- package/translations/nl.json +33 -21
- package/translations/pt.json +32 -20
- package/translations/sk.json +119 -107
- package/esm2022/libs/feature/map/src/lib/utils/map-utils-wms.service.mjs +0 -55
- package/esm2022/libs/feature/map/src/lib/utils/projections.mjs +0 -2
- package/esm2022/libs/ui/search/src/lib/record-table/record-table.component.mjs +0 -145
- package/esm2022/libs/util/i18n/src/lib/testing/test.translate.loader.mjs +0 -24
- package/esm2022/libs/util/i18n/src/lib/testing/test.translate.module.mjs +0 -109
- package/esm2022/libs/util/i18n/src/lib/testing/translations.model.mjs +0 -6
- package/libs/feature/map/src/lib/utils/map-utils-wms.service.d.ts +0 -17
- package/libs/feature/map/src/lib/utils/map-utils-wms.service.d.ts.map +0 -1
- package/libs/feature/map/src/lib/utils/projections.d.ts.map +0 -1
- package/libs/ui/search/src/lib/record-table/record-table.component.d.ts +0 -31
- package/libs/ui/search/src/lib/record-table/record-table.component.d.ts.map +0 -1
- package/libs/util/i18n/src/lib/testing/test.translate.loader.d.ts +0 -17
- package/libs/util/i18n/src/lib/testing/test.translate.loader.d.ts.map +0 -1
- package/libs/util/i18n/src/lib/testing/test.translate.module.d.ts +0 -131
- package/libs/util/i18n/src/lib/testing/test.translate.module.d.ts.map +0 -1
- package/libs/util/i18n/src/lib/testing/translations.model.d.ts +0 -21
- package/libs/util/i18n/src/lib/testing/translations.model.d.ts.map +0 -1
- package/src/libs/feature/map/src/lib/utils/map-utils-wms.service.ts +0 -58
- package/src/libs/ui/search/src/lib/record-table/record-table.component.css +0 -7
- package/src/libs/ui/search/src/lib/record-table/record-table.component.html +0 -215
- package/src/libs/ui/search/src/lib/record-table/record-table.component.ts +0 -149
- package/src/libs/util/i18n/src/lib/testing/test.translate.loader.ts +0 -26
- package/src/libs/util/i18n/src/lib/testing/test.translate.module.ts +0 -235
- package/src/libs/util/i18n/src/lib/testing/translations.model.ts +0 -28
- /package/libs/feature/map/src/lib/{utils → constant}/projections.d.ts +0 -0
- /package/src/libs/feature/map/src/lib/{utils → constant}/projections.ts +0 -0
|
@@ -2,7 +2,7 @@ import { Injectable } from '@angular/core';
|
|
|
2
2
|
import { marker } from '@biesbjerg/ngx-translate-extract-marker';
|
|
3
3
|
import { WfsEndpoint } from '@camptocamp/ogc-client';
|
|
4
4
|
import { openDataset, SupportedTypes, } from '../../../../../../libs/util/data-fetcher/src';
|
|
5
|
-
import {
|
|
5
|
+
import { getFileFormat, getFileFormatFromServiceOutput, getMimeTypeForFormat, ProxyService, } from '../../../../../../libs/util/shared/src';
|
|
6
6
|
import { from, throwError } from 'rxjs';
|
|
7
7
|
import { catchError, map, switchMap, tap } from 'rxjs/operators';
|
|
8
8
|
import * as i0 from "@angular/core";
|
|
@@ -86,15 +86,16 @@ export class DataService {
|
|
|
86
86
|
// Pour DL toutes les données
|
|
87
87
|
return this.getDownloadUrlsFromWfs(wfsLink.url.toString(), wfsLink.name).pipe(map((urls) => urls.all), map((urls) => Object.keys(urls).map((format) => ({
|
|
88
88
|
...wfsLink,
|
|
89
|
+
type: 'download',
|
|
89
90
|
url: new URL(urls[format]),
|
|
90
|
-
mimeType: getMimeTypeForFormat(
|
|
91
|
+
mimeType: getMimeTypeForFormat(getFileFormatFromServiceOutput(format)),
|
|
91
92
|
}))));
|
|
92
93
|
}
|
|
93
94
|
getDownloadLinksFromEsriRest(esriRestLink) {
|
|
94
95
|
return ['json', 'geojson'].map((format) => ({
|
|
95
96
|
...esriRestLink,
|
|
96
97
|
url: new URL(this.getDownloadUrlFromEsriRest(esriRestLink.url.toString(), format)),
|
|
97
|
-
mimeType: getMimeTypeForFormat(
|
|
98
|
+
mimeType: getMimeTypeForFormat(getFileFormatFromServiceOutput(format)),
|
|
98
99
|
}));
|
|
99
100
|
}
|
|
100
101
|
readAsGeoJson(link) {
|
|
@@ -144,4 +145,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImpor
|
|
|
144
145
|
providedIn: 'root',
|
|
145
146
|
}]
|
|
146
147
|
}], ctorParameters: function () { return [{ type: i1.ProxyService }]; } });
|
|
147
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL2RhdGF2aXovc3JjL2xpYi9zZXJ2aWNlL2RhdGEuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQzFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQTtBQUNoRSxPQUFPLEVBQUUsV0FBVyxFQUFjLE1BQU0sd0JBQXdCLENBQUE7QUFDaEUsT0FBTyxFQUdMLFdBQVcsRUFFWCxjQUFjLEdBQ2YsTUFBTSw4Q0FBOEMsQ0FBQTtBQUNyRCxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLGFBQWEsRUFDYixvQkFBb0IsRUFDcEIsWUFBWSxHQUNiLE1BQU0sd0NBQXdDLENBQUE7QUFFL0MsT0FBTyxFQUFFLElBQUksRUFBYyxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUE7QUFDbkQsT0FBTyxFQUFFLFVBQVUsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFBOzs7QUFNaEUsTUFBTSxDQUFDLHNCQUFzQixDQUFDLENBQUE7QUFDOUIsTUFBTSxDQUFDLHNCQUFzQixDQUFDLENBQUE7QUFDOUIsTUFBTSxDQUFDLHlCQUF5QixDQUFDLENBQUE7QUFDakMsTUFBTSxDQUFDLDBCQUEwQixDQUFDLENBQUE7QUFDbEMsTUFBTSxDQUFDLDZCQUE2QixDQUFDLENBQUE7QUFDckMsTUFBTSxDQUFDLHVCQUF1QixDQUFDLENBQUE7QUFDL0IsTUFBTSxDQUFDLG9CQUFvQixDQUFDLENBQUE7QUFDNUIsTUFBTSxDQUFDLHFCQUFxQixDQUFDLENBQUE7QUFDN0IsTUFBTSxDQUFDLCtCQUErQixDQUFDLENBQUE7QUFDdkMsTUFBTSxDQUFDLHVCQUF1QixDQUFDLENBQUE7QUFXL0IsTUFBTSxPQUFPLFdB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QUMsUUFBUSxFQUFFLEVBQ25CLFNBQVMsQ0FDVixDQUFBO1lBQ0QsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFBO1NBQ2hEO1FBQ0QsT0FBTyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsd0JBQXdCLENBQUMsQ0FBQTtJQUNuRCxDQUFDOzhHQWxLVSxXQUFXO2tIQUFYLFdBQVcsY0FGVixNQUFNOzsyRkFFUCxXQUFXO2tCQUh2QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgbWFya2VyIH0gZnJvbSAnQGJpZXNiamVyZy9uZ3gtdHJhbnNsYXRlLWV4dHJhY3QtbWFya2VyJ1xuaW1wb3J0IHsgV2ZzRW5kcG9pbnQsIFdmc1ZlcnNpb24gfSBmcm9tICdAY2FtcHRvY2FtcC9vZ2MtY2xpZW50J1xuaW1wb3J0IHtcbiAgQmFzZVJlYWRlcixcbiAgRmV0Y2hFcnJvcixcbiAgb3BlbkRhdGFzZXQsXG4gIFN1cHBvcnRlZFR5cGUsXG4gIFN1cHBvcnRlZFR5cGVzLFxufSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvZGF0YS1mZXRjaGVyL3NyYydcbmltcG9ydCB7XG4gIGV4dGVuc2lvblRvRm9ybWF0LFxuICBnZXRGaWxlRm9ybWF0LFxuICBnZXRNaW1lVHlwZUZvckZvcm1hdCxcbiAgUHJveHlTZXJ2aWNlLFxufSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvc2hhcmVkL3NyYydcbmltcG9ydCB0eXBlIHsgRmVhdHVyZUNvbGxlY3Rpb24gfSBmcm9tICdnZW9qc29uJ1xuaW1wb3J0IHsgZnJvbSwgT2JzZXJ2YWJsZSwgdGhyb3dFcnJvciB9IGZyb20gJ3J4anMnXG5pbXBvcnQgeyBjYXRjaEVycm9yLCBtYXAsIHN3aXRjaE1hcCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnXG5pbXBvcnQge1xuICBEYXRhc2V0RGlzdHJpYnV0aW9uLFxuICBEYXRhc2V0U2VydmljZURpc3RyaWJ1dGlvbixcbn0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vZG9tYWluL3NyYy9saWIvbW9kZWwvcmVjb3JkJ1xuXG5tYXJrZXIoJ3dmcy51bnJlYWNoYWJsZS5jb3JzJylcbm1hcmtlcignd2ZzLnVucmVhY2hhYmxlLmh0dHAnKVxubWFya2VyKCd3ZnMudW5yZWFjaGFibGUudW5rbm93bicpXG5tYXJrZXIoJ3dmcy5mZWF0dXJldHlwZS5ub3Rmb3VuZCcpXG5tYXJrZXIoJ3dmcy5nZW9qc29uZ21sLm5vdHN1cHBvcnRlZCcpXG5tYXJrZXIoJ2RhdGFzZXQuZXJyb3IubmV0d29yaycpXG5tYXJrZXIoJ2RhdGFzZXQuZXJyb3IuaHR0cCcpXG5tYXJrZXIoJ2RhdGFzZXQuZXJyb3IucGFyc2UnKVxubWFya2VyKCdkYXRhc2V0LmVycm9yLnVuc3VwcG9ydGVkVHlwZScpXG5tYXJrZXIoJ2RhdGFzZXQuZXJyb3IudW5rbm93bicpXG5cbmludGVyZmFjZSBXZnNEb3dubG9hZFVybHMge1xuICBhbGw6IHsgW2Zvcm1hdDogc3RyaW5nXTogc3RyaW5nIH1cbiAgZ2VvanNvbjogc3RyaW5nXG4gIGdtbDogeyBmZWF0dXJlVXJsOiBzdHJpbmc7IG5hbWVzcGFjZTogc3RyaW5nOyB3ZnNWZXJzaW9uOiBXZnNWZXJzaW9uIH1cbn1cblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIERhdGFTZXJ2aWNlIHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBwcm94eTogUHJveHlTZXJ2aWNlKSB7fVxuXG4gIHByaXZhdGUgZ2V0RG93bmxvYWRVcmxzRnJvbVdmcyhcbiAgICB3ZnNVcmw6IHN0cmluZyxcbiAgICBmZWF0dXJlVHlwZU5hbWU6IHN0cmluZ1xuICApOiBPYnNlcnZhYmxlPFdmc0Rvd25sb2FkVXJscz4ge1xuICAgIHJldHVybiBmcm9tKFxuICAgICAgbmV3IFdmc0VuZHBvaW50KHRoaXMucHJveHkuZ2V0UHJveGllZFVybCh3ZnNVcmwpKS5pc1JlYWR5KClcbiAgICApLnBpcGUoXG4gICAgICBjYXRjaEVycm9yKChlcnJvcjogRmV0Y2hFcnJvciB8IEVycm9yKSA9PiB7XG4gICAgICAgIGlmIChlcnJvciBpbnN0YW5jZW9mIEVycm9yKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGB3ZnMudW5yZWFjaGFibGUudW5rbm93bmApXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgaWYgKGVycm9yLnR5cGUgPT09ICduZXR3b3JrJykge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGB3ZnMudW5yZWFjaGFibGUuY29yc2ApXG4gICAgICAgICAgfVxuICAgICAgICAgIGlmIChlcnJvci50eXBlID09PSAnaHR0cCcpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgd2ZzLnVucmVhY2hhYmxlLmh0dHBgKVxuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAoZXJyb3IudHlwZSA9PT0gJ3BhcnNlJykge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGB3ZnMudW5yZWFjaGFibGUucGFyc2VgKVxuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAoZXJyb3IudHlwZSA9PT0gJ3Vuc3VwcG9ydGVkVHlwZScpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgd2ZzLnVucmVhY2hhYmxlLnVuc3VwcG9ydGVkVHlwZWApXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgd2ZzLnVucmVhY2hhYmxlLnVua25vd25gKVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSksXG4gICAgICBtYXAoKGVuZHBvaW50KSA9PiB7XG4gICAgICAgIGNvbnN0IGZlYXR1cmVUeXBlcyA9IGVuZHBvaW50LmdldEZlYXR1cmVUeXBlcygpXG4gICAgICAgIGNvbnN0IGZlYXR1cmVUeXBlID0gZW5kcG9pbnQuZ2V0RmVhdHVyZVR5cGVTdW1tYXJ5KFxuICAgICAgICAgIGZlYXR1cmVUeXBlcy5sZW5ndGggPT09IDEgJiYgIWZlYXR1cmVUeXBlTmFtZVxuICAgICAgICAgICAgPyBmZWF0dXJlVHlwZXNbMF0ubmFtZVxuICAgICAgICAgICAgOiBmZWF0dXJlVHlwZU5hbWVcbiAgICAgICAgKVxuICAgICAgICBpZiAoIWZlYXR1cmVUeXBlKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCd3ZnMuZmVhdHVyZXR5cGUubm90Zm91bmQnKVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgYWxsOiBmZWF0dXJlVHlwZS5vdXRwdXRGb3JtYXRzLnJlZHVjZShcbiAgICAgICAgICAgIChwcmV2LCBjdXJyKSA9PiAoe1xuICAgICAgICAgICAgICAuLi5wcmV2LFxuICAgICAgICAgICAgICBbY3Vycl06IGVuZHBvaW50LmdldEZlYXR1cmVVcmwoZmVhdHVyZVR5cGUubmFtZSwge1xuICAgICAgICAgICAgICAgIG91dHB1dEZvcm1hdDogY3VycixcbiAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIHt9XG4gICAgICAgICAgKSxcbiAgICAgICAgICBnZW9qc29uOiBlbmRwb2ludC5zdXBwb3J0c0pzb24oZmVhdHVyZVR5cGUubmFtZSlcbiAgICAgICAgICAgID8gZW5kcG9pbnQuZ2V0RmVhdHVyZVVybChmZWF0dXJlVHlwZS5uYW1lLCB7XG4gICAgICAgICAgICAgICAgb3V0cHV0Rm9ybWF0OiAnYXBwbGljYXRpb24vanNvbicsXG4gICAgICAgICAgICAgICAgb3V0cHV0Q3JzOiAnRVBTRzo0MzI2JyxcbiAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIDogbnVsbCxcbiAgICAgICAgICBnbWw6XG4gICAgICAgICAgICBmZWF0dXJlVHlwZS5vdXRwdXRGb3JtYXRzLmZpbmQoKGYpID0+XG4gICAgICAgICAgICAgIGYudG9Mb3dlckNhc2UoKS5pbmNsdWRlcygnZ21sJylcbiAgICAgICAgICAgICkgJiZcbiAgICAgICAgICAgIChmZWF0dXJlVHlwZS5kZWZhdWx0Q3JzID09PSAnRVBTRzo0MzI2JyB8fFxuICAgICAgICAgICAgICBmZWF0dXJlVHlwZS5vdGhlckNycz8uaW5jbHVkZXMoJ0VQU0c6NDMyNicpKVxuICAgICAgICAgICAgICA/IHtcbiAgICAgICAgICAgICAgICAgIGZlYXR1cmVVcmw6IGVuZHBvaW50LmdldEZlYXR1cmVVcmwoZmVhdHVyZVR5cGUubmFtZSwge1xuICAgICAgICAgICAgICAgICAgICBvdXRwdXRGb3JtYXQ6IGZlYXR1cmVUeXBlLm91dHB1dEZvcm1hdHMuZmluZCgoZikgPT5cbiAgICAgICAgICAgICAgICAgICAgICBmLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoJ2dtbCcpXG4gICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgIG91dHB1dENyczogJ0VQU0c6NDMyNicsXG4gICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgIG5hbWVzcGFjZTogZmVhdHVyZVR5cGUubmFtZSxcbiAgICAgICAgICAgICAgICAgIHdmc1ZlcnNpb246IGVuZHBvaW50LmdldFZlcnNpb24oKSxcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIDogbnVsbCxcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICApXG4gIH1cblxuICBwcml2YXRlIGdldERvd25sb2FkVXJsRnJvbUVzcmlSZXN0KGFwaVVybDogc3RyaW5nLCBmb3JtYXQ6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMucHJveHkuZ2V0UHJveGllZFVybChcbiAgICAgIGAke2FwaVVybH0vcXVlcnk/Zj0ke2Zvcm1hdH0md2hlcmU9MT0xJm91dEZpZWxkcz0qYFxuICAgIClcbiAgfVxuXG4gIGdldERvd25sb2FkTGlua3NGcm9tV2ZzKFxuICAgIHdmc0xpbms6IERhdGFzZXRTZXJ2aWNlRGlzdHJpYnV0aW9uXG4gICk6IE9ic2VydmFibGU8RGF0YXNldERpc3RyaWJ1dGlvbltdPiB7XG4gICAgLy8gUG91ciBETCB0b3V0ZXMgbGVzIGRvbm7DqWVzXG4gICAgcmV0dXJuIHRoaXMuZ2V0RG93bmxvYWRVcmxzRnJvbVdmcyhcbiAgICAgIHdmc0xpbmsudXJsLnRvU3RyaW5nKCksXG4gICAgICB3ZnNMaW5rLm5hbWVcbiAgICApLnBpcGUoXG4gICAgICBtYXAoKHVybHMpID0+IHVybHMuYWxsKSxcbiAgICAgIG1hcCgodXJscykgPT5cbiAgICAgICAgT2JqZWN0LmtleXModXJscykubWFwKChmb3JtYXQpID0+ICh7XG4gICAgICAgICAgLi4ud2ZzTGluayxcbiAgICAgICAgICB1cmw6IG5ldyBVUkwodXJsc1tmb3JtYXRdKSxcbiAgICAgICAgICBtaW1lVHlwZTogZ2V0TWltZVR5cGVGb3JGb3JtYXQoZXh0ZW5zaW9uVG9Gb3JtYXQoZm9ybWF0KSkgfHwgZm9ybWF0LFxuICAgICAgICB9KSlcbiAgICAgIClcbiAgICApXG4gIH1cblxuICBnZXREb3dubG9hZExpbmtzRnJvbUVzcmlSZXN0KFxuICAgIGVzcmlSZXN0TGluazogRGF0YXNldFNlcnZpY2VEaXN0cmlidXRpb25cbiAgKTogRGF0YXNldERpc3RyaWJ1dGlvbltdIHtcbiAgICByZXR1cm4gWydqc29uJywgJ2dlb2pzb24nXS5tYXAoKGZvcm1hdCkgPT4gKHtcbiAgICAgIC4uLmVzcmlSZXN0TGluayxcbiAgICAgIHVybDogbmV3IFVSTChcbiAgICAgICAgdGhpcy5nZXREb3dubG9hZFVybEZyb21Fc3JpUmVzdChlc3JpUmVzdExpbmsudXJsLnRvU3RyaW5nKCksIGZvcm1hdClcbiAgICAgICksXG4gICAgICBtaW1lVHlwZTogZ2V0TWltZVR5cGVGb3JGb3JtYXQoZXh0ZW5zaW9uVG9Gb3JtYXQoZm9ybWF0KSkgfHwgZm9ybWF0LFxuICAgIH0pKVxuICB9XG5cbiAgcmVhZEFzR2VvSnNvbihsaW5rOiBEYXRhc2V0RGlzdHJpYnV0aW9uKTogT2JzZXJ2YWJsZTxGZWF0dXJlQ29sbGVjdGlvbj4ge1xuICAgIHJldHVybiB0aGlzLmdldERhdGFzZXQobGluaykucGlwZShcbiAgICAgIHN3aXRjaE1hcCgoZGF0YXNldCkgPT4gZGF0YXNldC5zZWxlY3RBbGwoKS5yZWFkKCkpLFxuICAgICAgbWFwKChmZWF0dXJlcykgPT4gKHtcbiAgICAgICAgdHlwZTogJ0ZlYXR1cmVDb2xsZWN0aW9uJyxcbiAgICAgICAgZmVhdHVyZXMsXG4gICAgICB9KSlcbiAgICApXG4gIH1cblxuICBnZXREYXRhc2V0KGxpbms6IERhdGFzZXREaXN0cmlidXRpb24pOiBPYnNlcnZhYmxlPEJhc2VSZWFkZXI+IHtcbiAgICBpZiAobGluay50eXBlID09PSAnc2VydmljZScgJiYgbGluay5hY2Nlc3NTZXJ2aWNlUHJvdG9jb2wgPT09ICd3ZnMnKSB7XG4gICAgICByZXR1cm4gdGhpcy5nZXREb3dubG9hZFVybHNGcm9tV2ZzKGxpbmsudXJsLnRvU3RyaW5nKCksIGxpbmsubmFtZSkucGlwZShcbiAgICAgICAgc3dpdGNoTWFwKCh1cmxzKSA9PiB7XG4gICAgICAgICAgaWYgKHVybHMuZ2VvanNvbikgcmV0dXJuIG9wZW5EYXRhc2V0KHVybHMuZ2VvanNvbiwgJ2dlb2pzb24nKVxuICAgICAgICAgIGlmICh1cmxzLmdtbClcbiAgICAgICAgICAgIHJldHVybiBvcGVuRGF0YXNldCh1cmxzLmdtbC5mZWF0dXJlVXJsLCAnZ21sJywge1xuICAgICAgICAgICAgICBuYW1lc3BhY2U6IHVybHMuZ21sLm5hbWVzcGFjZSxcbiAgICAgICAgICAgICAgd2ZzVmVyc2lvbjogdXJscy5nbWwud2ZzVmVyc2lvbixcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgcmV0dXJuIG51bGxcbiAgICAgICAgfSksXG4gICAgICAgIHRhcCgodXJsKSA9PiB7XG4gICAgICAgICAgaWYgKHVybCA9PT0gbnVsbCkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCd3ZnMuZ2VvanNvbmdtbC5ub3RzdXBwb3J0ZWQnKVxuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgIClcbiAgICB9IGVsc2UgaWYgKGxpbmsudHlwZSA9PT0gJ2Rvd25sb2FkJykge1xuICAgICAgY29uc3QgbGlua1Byb3hpZmllZFVybCA9IHRoaXMucHJveHkuZ2V0UHJveGllZFVybChsaW5rLnVybC50b1N0cmluZygpKVxuICAgICAgY29uc3QgZm9ybWF0ID0gZ2V0RmlsZUZvcm1hdChsaW5rKVxuICAgICAgY29uc3Qgc3VwcG9ydGVkVHlwZSA9XG4gICAgICAgIFN1cHBvcnRlZFR5cGVzLmluZGV4T2YoZm9ybWF0IGFzIGFueSkgPiAtMVxuICAgICAgICAgID8gKGZvcm1hdCBhcyBTdXBwb3J0ZWRUeXBlKVxuICAgICAgICAgIDogdW5kZWZpbmVkXG4gICAgICByZXR1cm4gZnJvbShvcGVuRGF0YXNldChsaW5rUHJveGlmaWVkVXJsLCBzdXBwb3J0ZWRUeXBlKSkucGlwZSgpXG4gICAgfSBlbHNlIGlmIChcbiAgICAgIGxpbmsudHlwZSA9PT0gJ3NlcnZpY2UnICYmXG4gICAgICBsaW5rLmFjY2Vzc1NlcnZpY2VQcm90b2NvbCA9PT0gJ2VzcmlSZXN0J1xuICAgICkge1xuICAgICAgY29uc3QgdXJsID0gdGhpcy5nZXREb3dubG9hZFVybEZyb21Fc3JpUmVzdChcbiAgICAgICAgbGluay51cmwudG9TdHJpbmcoKSxcbiAgICAgICAgJ2dlb2pzb24nXG4gICAgICApXG4gICAgICByZXR1cm4gZnJvbShvcGVuRGF0YXNldCh1cmwsICdnZW9qc29uJykpLnBpcGUoKVxuICAgIH1cbiAgICByZXR1cm4gdGhyb3dFcnJvcigoKSA9PiAncHJvdG9jb2wgbm90IHN1cHBvcnRlZCcpXG4gIH1cbn1cbiJdfQ==
|
|
148
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL2RhdGF2aXovc3JjL2xpYi9zZXJ2aWNlL2RhdGEuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQzFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQTtBQUNoRSxPQUFPLEVBQUUsV0FBVyxFQUFjLE1BQU0sd0JBQXdCLENBQUE7QUFDaEUsT0FBTyxFQUdMLFdBQVcsRUFFWCxjQUFjLEdBQ2YsTUFBTSw4Q0FBOEMsQ0FBQTtBQUNyRCxPQUFPLEVBQ0wsYUFBYSxFQUNiLDhCQUE4QixFQUM5QixvQkFBb0IsRUFDcEIsWUFBWSxHQUNiLE1BQU0sd0NBQXdDLENBQUE7QUFFL0MsT0FBTyxFQUFFLElBQUksRUFBYyxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUE7QUFDbkQsT0FBTyxFQUFFLFVBQVUsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFBOzs7QUFNaEUsTUFBTSxDQUFDLHNCQUFzQixDQUFDLENBQUE7QUFDOUIsTUFBTSxDQUFDLHNCQUFzQixDQUFDLENBQUE7QUFDOUIsTUFBTSxDQUFDLHlCQUF5QixDQUFDLENBQUE7QUFDakMsTUFBTSxDQUFDLDBCQUEwQixDQUFDLENBQUE7QUFDbEMsTUFBTSxDQUFDLDZCQUE2QixDQUFDLENBQUE7QUFDckMsTUFBTSxDQUFDLHVCQUF1QixDQUFDLENBQUE7QUFDL0IsTUFBTSxDQUFDLG9CQUFvQixDQUFDLENBQUE7QUFDNUIsTUFBTSxDQUFDLHFCQUFxQixDQUFDLENBQUE7QUFDN0IsTUFBTSxDQUFDLCtCQUErQixDQUFDLENBQUE7QUFDdkMsTUFBTSxDQUFDLHVCQUF1QixDQUFDLENBQUE7QUFXL0IsTUFBTSxPQUFPLFdB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Q0FBQyxRQUFRLEVBQUUsRUFDbkIsU0FBUyxDQUNWLENBQUE7WUFDRCxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUE7U0FDaEQ7UUFDRCxPQUFPLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFBO0lBQ25ELENBQUM7OEdBcktVLFdBQVc7a0hBQVgsV0FBVyxjQUZWLE1BQU07OzJGQUVQLFdBQVc7a0JBSHZCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBtYXJrZXIgfSBmcm9tICdAYmllc2JqZXJnL25neC10cmFuc2xhdGUtZXh0cmFjdC1tYXJrZXInXG5pbXBvcnQgeyBXZnNFbmRwb2ludCwgV2ZzVmVyc2lvbiB9IGZyb20gJ0BjYW1wdG9jYW1wL29nYy1jbGllbnQnXG5pbXBvcnQge1xuICBCYXNlUmVhZGVyLFxuICBGZXRjaEVycm9yLFxuICBvcGVuRGF0YXNldCxcbiAgU3VwcG9ydGVkVHlwZSxcbiAgU3VwcG9ydGVkVHlwZXMsXG59IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdXRpbC9kYXRhLWZldGNoZXIvc3JjJ1xuaW1wb3J0IHtcbiAgZ2V0RmlsZUZvcm1hdCxcbiAgZ2V0RmlsZUZvcm1hdEZyb21TZXJ2aWNlT3V0cHV0LFxuICBnZXRNaW1lVHlwZUZvckZvcm1hdCxcbiAgUHJveHlTZXJ2aWNlLFxufSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvc2hhcmVkL3NyYydcbmltcG9ydCB0eXBlIHsgRmVhdHVyZUNvbGxlY3Rpb24gfSBmcm9tICdnZW9qc29uJ1xuaW1wb3J0IHsgZnJvbSwgT2JzZXJ2YWJsZSwgdGhyb3dFcnJvciB9IGZyb20gJ3J4anMnXG5pbXBvcnQgeyBjYXRjaEVycm9yLCBtYXAsIHN3aXRjaE1hcCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnXG5pbXBvcnQge1xuICBEYXRhc2V0RGlzdHJpYnV0aW9uLFxuICBEYXRhc2V0U2VydmljZURpc3RyaWJ1dGlvbixcbn0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vZG9tYWluL3NyYy9saWIvbW9kZWwvcmVjb3JkJ1xuXG5tYXJrZXIoJ3dmcy51bnJlYWNoYWJsZS5jb3JzJylcbm1hcmtlcignd2ZzLnVucmVhY2hhYmxlLmh0dHAnKVxubWFya2VyKCd3ZnMudW5yZWFjaGFibGUudW5rbm93bicpXG5tYXJrZXIoJ3dmcy5mZWF0dXJldHlwZS5ub3Rmb3VuZCcpXG5tYXJrZXIoJ3dmcy5nZW9qc29uZ21sLm5vdHN1cHBvcnRlZCcpXG5tYXJrZXIoJ2RhdGFzZXQuZXJyb3IubmV0d29yaycpXG5tYXJrZXIoJ2RhdGFzZXQuZXJyb3IuaHR0cCcpXG5tYXJrZXIoJ2RhdGFzZXQuZXJyb3IucGFyc2UnKVxubWFya2VyKCdkYXRhc2V0LmVycm9yLnVuc3VwcG9ydGVkVHlwZScpXG5tYXJrZXIoJ2RhdGFzZXQuZXJyb3IudW5rbm93bicpXG5cbmludGVyZmFjZSBXZnNEb3dubG9hZFVybHMge1xuICBhbGw6IHsgW2Zvcm1hdDogc3RyaW5nXTogc3RyaW5nIH1cbiAgZ2VvanNvbjogc3RyaW5nXG4gIGdtbDogeyBmZWF0dXJlVXJsOiBzdHJpbmc7IG5hbWVzcGFjZTogc3RyaW5nOyB3ZnNWZXJzaW9uOiBXZnNWZXJzaW9uIH1cbn1cblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIERhdGFTZXJ2aWNlIHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBwcm94eTogUHJveHlTZXJ2aWNlKSB7fVxuXG4gIGdldERvd25sb2FkVXJsc0Zyb21XZnMoXG4gICAgd2ZzVXJsOiBzdHJpbmcsXG4gICAgZmVhdHVyZVR5cGVOYW1lOiBzdHJpbmdcbiAgKTogT2JzZXJ2YWJsZTxXZnNEb3dubG9hZFVybHM+IHtcbiAgICByZXR1cm4gZnJvbShcbiAgICAgIG5ldyBXZnNFbmRwb2ludCh0aGlzLnByb3h5LmdldFByb3hpZWRVcmwod2ZzVXJsKSkuaXNSZWFkeSgpXG4gICAgKS5waXBlKFxuICAgICAgY2F0Y2hFcnJvcigoZXJyb3I6IEZldGNoRXJyb3IgfCBFcnJvcikgPT4ge1xuICAgICAgICBpZiAoZXJyb3IgaW5zdGFuY2VvZiBFcnJvcikge1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgd2ZzLnVucmVhY2hhYmxlLnVua25vd25gKVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGlmIChlcnJvci50eXBlID09PSAnbmV0d29yaycpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgd2ZzLnVucmVhY2hhYmxlLmNvcnNgKVxuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAoZXJyb3IudHlwZSA9PT0gJ2h0dHAnKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYHdmcy51bnJlYWNoYWJsZS5odHRwYClcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKGVycm9yLnR5cGUgPT09ICdwYXJzZScpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgd2ZzLnVucmVhY2hhYmxlLnBhcnNlYClcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKGVycm9yLnR5cGUgPT09ICd1bnN1cHBvcnRlZFR5cGUnKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYHdmcy51bnJlYWNoYWJsZS51bnN1cHBvcnRlZFR5cGVgKVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYHdmcy51bnJlYWNoYWJsZS51bmtub3duYClcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0pLFxuICAgICAgbWFwKChlbmRwb2ludCkgPT4ge1xuICAgICAgICBjb25zdCBmZWF0dXJlVHlwZXMgPSBlbmRwb2ludC5nZXRGZWF0dXJlVHlwZXMoKVxuICAgICAgICBjb25zdCBmZWF0dXJlVHlwZSA9IGVuZHBvaW50LmdldEZlYXR1cmVUeXBlU3VtbWFyeShcbiAgICAgICAgICBmZWF0dXJlVHlwZXMubGVuZ3RoID09PSAxICYmICFmZWF0dXJlVHlwZU5hbWVcbiAgICAgICAgICAgID8gZmVhdHVyZVR5cGVzWzBdLm5hbWVcbiAgICAgICAgICAgIDogZmVhdHVyZVR5cGVOYW1lXG4gICAgICAgIClcbiAgICAgICAgaWYgKCFmZWF0dXJlVHlwZSkge1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcignd2ZzLmZlYXR1cmV0eXBlLm5vdGZvdW5kJylcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIGFsbDogZmVhdHVyZVR5cGUub3V0cHV0Rm9ybWF0cy5yZWR1Y2UoXG4gICAgICAgICAgICAocHJldiwgY3VycikgPT4gKHtcbiAgICAgICAgICAgICAgLi4ucHJldixcbiAgICAgICAgICAgICAgW2N1cnJdOiBlbmRwb2ludC5nZXRGZWF0dXJlVXJsKGZlYXR1cmVUeXBlLm5hbWUsIHtcbiAgICAgICAgICAgICAgICBvdXRwdXRGb3JtYXQ6IGN1cnIsXG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICB7fVxuICAgICAgICAgICksXG4gICAgICAgICAgZ2VvanNvbjogZW5kcG9pbnQuc3VwcG9ydHNKc29uKGZlYXR1cmVUeXBlLm5hbWUpXG4gICAgICAgICAgICA/IGVuZHBvaW50LmdldEZlYXR1cmVVcmwoZmVhdHVyZVR5cGUubmFtZSwge1xuICAgICAgICAgICAgICAgIG91dHB1dEZvcm1hdDogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgICAgICAgICAgICAgIG91dHB1dENyczogJ0VQU0c6NDMyNicsXG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICA6IG51bGwsXG4gICAgICAgICAgZ21sOlxuICAgICAgICAgICAgZmVhdHVyZVR5cGUub3V0cHV0Rm9ybWF0cy5maW5kKChmKSA9PlxuICAgICAgICAgICAgICBmLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoJ2dtbCcpXG4gICAgICAgICAgICApICYmXG4gICAgICAgICAgICAoZmVhdHVyZVR5cGUuZGVmYXVsdENycyA9PT0gJ0VQU0c6NDMyNicgfHxcbiAgICAgICAgICAgICAgZmVhdHVyZVR5cGUub3RoZXJDcnM/LmluY2x1ZGVzKCdFUFNHOjQzMjYnKSlcbiAgICAgICAgICAgICAgPyB7XG4gICAgICAgICAgICAgICAgICBmZWF0dXJlVXJsOiBlbmRwb2ludC5nZXRGZWF0dXJlVXJsKGZlYXR1cmVUeXBlLm5hbWUsIHtcbiAgICAgICAgICAgICAgICAgICAgb3V0cHV0Rm9ybWF0OiBmZWF0dXJlVHlwZS5vdXRwdXRGb3JtYXRzLmZpbmQoKGYpID0+XG4gICAgICAgICAgICAgICAgICAgICAgZi50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKCdnbWwnKVxuICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICBvdXRwdXRDcnM6ICdFUFNHOjQzMjYnLFxuICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICBuYW1lc3BhY2U6IGZlYXR1cmVUeXBlLm5hbWUsXG4gICAgICAgICAgICAgICAgICB3ZnNWZXJzaW9uOiBlbmRwb2ludC5nZXRWZXJzaW9uKCksXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICA6IG51bGwsXG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgKVxuICB9XG5cbiAgZ2V0RG93bmxvYWRVcmxGcm9tRXNyaVJlc3QoYXBpVXJsOiBzdHJpbmcsIGZvcm1hdDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5wcm94eS5nZXRQcm94aWVkVXJsKFxuICAgICAgYCR7YXBpVXJsfS9xdWVyeT9mPSR7Zm9ybWF0fSZ3aGVyZT0xPTEmb3V0RmllbGRzPSpgXG4gICAgKVxuICB9XG5cbiAgZ2V0RG93bmxvYWRMaW5rc0Zyb21XZnMoXG4gICAgd2ZzTGluazogRGF0YXNldFNlcnZpY2VEaXN0cmlidXRpb25cbiAgKTogT2JzZXJ2YWJsZTxEYXRhc2V0RGlzdHJpYnV0aW9uW10+IHtcbiAgICAvLyBQb3VyIERMIHRvdXRlcyBsZXMgZG9ubsOpZXNcbiAgICByZXR1cm4gdGhpcy5nZXREb3dubG9hZFVybHNGcm9tV2ZzKFxuICAgICAgd2ZzTGluay51cmwudG9TdHJpbmcoKSxcbiAgICAgIHdmc0xpbmsubmFtZVxuICAgICkucGlwZShcbiAgICAgIG1hcCgodXJscykgPT4gdXJscy5hbGwpLFxuICAgICAgbWFwKCh1cmxzKSA9PlxuICAgICAgICBPYmplY3Qua2V5cyh1cmxzKS5tYXAoKGZvcm1hdCkgPT4gKHtcbiAgICAgICAgICAuLi53ZnNMaW5rLFxuICAgICAgICAgIHR5cGU6ICdkb3dubG9hZCcsXG4gICAgICAgICAgdXJsOiBuZXcgVVJMKHVybHNbZm9ybWF0XSksXG4gICAgICAgICAgbWltZVR5cGU6IGdldE1pbWVUeXBlRm9yRm9ybWF0KFxuICAgICAgICAgICAgZ2V0RmlsZUZvcm1hdEZyb21TZXJ2aWNlT3V0cHV0KGZvcm1hdClcbiAgICAgICAgICApLFxuICAgICAgICB9KSlcbiAgICAgIClcbiAgICApXG4gIH1cblxuICBnZXREb3dubG9hZExpbmtzRnJvbUVzcmlSZXN0KFxuICAgIGVzcmlSZXN0TGluazogRGF0YXNldFNlcnZpY2VEaXN0cmlidXRpb25cbiAgKTogRGF0YXNldERpc3RyaWJ1dGlvbltdIHtcbiAgICByZXR1cm4gWydqc29uJywgJ2dlb2pzb24nXS5tYXAoKGZvcm1hdCkgPT4gKHtcbiAgICAgIC4uLmVzcmlSZXN0TGluayxcbiAgICAgIHVybDogbmV3IFVSTChcbiAgICAgICAgdGhpcy5nZXREb3dubG9hZFVybEZyb21Fc3JpUmVzdChlc3JpUmVzdExpbmsudXJsLnRvU3RyaW5nKCksIGZvcm1hdClcbiAgICAgICksXG4gICAgICBtaW1lVHlwZTogZ2V0TWltZVR5cGVGb3JGb3JtYXQoZ2V0RmlsZUZvcm1hdEZyb21TZXJ2aWNlT3V0cHV0KGZvcm1hdCkpLFxuICAgIH0pKVxuICB9XG5cbiAgcmVhZEFzR2VvSnNvbihsaW5rOiBEYXRhc2V0RGlzdHJpYnV0aW9uKTogT2JzZXJ2YWJsZTxGZWF0dXJlQ29sbGVjdGlvbj4ge1xuICAgIHJldHVybiB0aGlzLmdldERhdGFzZXQobGluaykucGlwZShcbiAgICAgIHN3aXRjaE1hcCgoZGF0YXNldCkgPT4gZGF0YXNldC5zZWxlY3RBbGwoKS5yZWFkKCkpLFxuICAgICAgbWFwKChmZWF0dXJlcykgPT4gKHtcbiAgICAgICAgdHlwZTogJ0ZlYXR1cmVDb2xsZWN0aW9uJyxcbiAgICAgICAgZmVhdHVyZXMsXG4gICAgICB9KSlcbiAgICApXG4gIH1cblxuICBnZXREYXRhc2V0KGxpbms6IERhdGFzZXREaXN0cmlidXRpb24pOiBPYnNlcnZhYmxlPEJhc2VSZWFkZXI+IHtcbiAgICBpZiAobGluay50eXBlID09PSAnc2VydmljZScgJiYgbGluay5hY2Nlc3NTZXJ2aWNlUHJvdG9jb2wgPT09ICd3ZnMnKSB7XG4gICAgICByZXR1cm4gdGhpcy5nZXREb3dubG9hZFVybHNGcm9tV2ZzKGxpbmsudXJsLnRvU3RyaW5nKCksIGxpbmsubmFtZSkucGlwZShcbiAgICAgICAgc3dpdGNoTWFwKCh1cmxzKSA9PiB7XG4gICAgICAgICAgaWYgKHVybHMuZ2VvanNvbikgcmV0dXJuIG9wZW5EYXRhc2V0KHVybHMuZ2VvanNvbiwgJ2dlb2pzb24nKVxuICAgICAgICAgIGlmICh1cmxzLmdtbClcbiAgICAgICAgICAgIHJldHVybiBvcGVuRGF0YXNldCh1cmxzLmdtbC5mZWF0dXJlVXJsLCAnZ21sJywge1xuICAgICAgICAgICAgICBuYW1lc3BhY2U6IHVybHMuZ21sLm5hbWVzcGFjZSxcbiAgICAgICAgICAgICAgd2ZzVmVyc2lvbjogdXJscy5nbWwud2ZzVmVyc2lvbixcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgcmV0dXJuIG51bGxcbiAgICAgICAgfSksXG4gICAgICAgIHRhcCgodXJsKSA9PiB7XG4gICAgICAgICAgaWYgKHVybCA9PT0gbnVsbCkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCd3ZnMuZ2VvanNvbmdtbC5ub3RzdXBwb3J0ZWQnKVxuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgIClcbiAgICB9IGVsc2UgaWYgKGxpbmsudHlwZSA9PT0gJ2Rvd25sb2FkJykge1xuICAgICAgY29uc3QgbGlua1Byb3hpZmllZFVybCA9IHRoaXMucHJveHkuZ2V0UHJveGllZFVybChsaW5rLnVybC50b1N0cmluZygpKVxuICAgICAgY29uc3QgZm9ybWF0ID0gZ2V0RmlsZUZvcm1hdChsaW5rKVxuICAgICAgY29uc3Qgc3VwcG9ydGVkVHlwZSA9XG4gICAgICAgIFN1cHBvcnRlZFR5cGVzLmluZGV4T2YoZm9ybWF0IGFzIGFueSkgPiAtMVxuICAgICAgICAgID8gKGZvcm1hdCBhcyBTdXBwb3J0ZWRUeXBlKVxuICAgICAgICAgIDogdW5kZWZpbmVkXG4gICAgICByZXR1cm4gZnJvbShvcGVuRGF0YXNldChsaW5rUHJveGlmaWVkVXJsLCBzdXBwb3J0ZWRUeXBlKSkucGlwZSgpXG4gICAgfSBlbHNlIGlmIChcbiAgICAgIGxpbmsudHlwZSA9PT0gJ3NlcnZpY2UnICYmXG4gICAgICBsaW5rLmFjY2Vzc1NlcnZpY2VQcm90b2NvbCA9PT0gJ2VzcmlSZXN0J1xuICAgICkge1xuICAgICAgY29uc3QgdXJsID0gdGhpcy5nZXREb3dubG9hZFVybEZyb21Fc3JpUmVzdChcbiAgICAgICAgbGluay51cmwudG9TdHJpbmcoKSxcbiAgICAgICAgJ2dlb2pzb24nXG4gICAgICApXG4gICAgICByZXR1cm4gZnJvbShvcGVuRGF0YXNldCh1cmwsICdnZW9qc29uJykpLnBpcGUoKVxuICAgIH1cbiAgICByZXR1cm4gdGhyb3dFcnJvcigoKSA9PiAncHJvdG9jb2wgbm90IHN1cHBvcnRlZCcpXG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,7 +1,12 @@
|
|
|
1
|
+
export * from './lib/+state/editor.facade';
|
|
2
|
+
export * from './lib/+state/editor.models';
|
|
3
|
+
export * from './lib/+state/editor.selectors';
|
|
4
|
+
export * from './lib/+state/editor.reducer';
|
|
5
|
+
export * from './lib/+state/editor.actions';
|
|
1
6
|
export * from './lib/feature-editor.module';
|
|
2
7
|
export * from './lib/services/editor.service';
|
|
3
8
|
export * from './lib/record-form/record-form.component';
|
|
4
9
|
export * from './lib/components/wizard/wizard.component';
|
|
5
10
|
export * from './lib/components/wizard-field/wizard-field.component';
|
|
6
11
|
export * from './lib/components/wizard-summarize/wizard-summarize.component';
|
|
7
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvZWRpdG9yL3NyYy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDRCQUE0QixDQUFBO0FBQzFDLGNBQWMsNEJBQTRCLENBQUE7QUFDMUMsY0FBYywrQkFBK0IsQ0FBQTtBQUM3QyxjQUFjLDZCQUE2QixDQUFBO0FBQzNDLGNBQWMsNkJBQTZCLENBQUE7QUFDM0MsY0FBYyw2QkFBNkIsQ0FBQTtBQUMzQyxjQUFjLCtCQUErQixDQUFBO0FBQzdDLGNBQWMseUNBQXlDLENBQUE7QUFDdkQsY0FBYywwQ0FBMEMsQ0FBQTtBQUN4RCxjQUFjLHNEQUFzRCxDQUFBO0FBQ3BFLGNBQWMsOERBQThELENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2xpYi8rc3RhdGUvZWRpdG9yLmZhY2FkZSdcbmV4cG9ydCAqIGZyb20gJy4vbGliLytzdGF0ZS9lZGl0b3IubW9kZWxzJ1xuZXhwb3J0ICogZnJvbSAnLi9saWIvK3N0YXRlL2VkaXRvci5zZWxlY3RvcnMnXG5leHBvcnQgKiBmcm9tICcuL2xpYi8rc3RhdGUvZWRpdG9yLnJlZHVjZXInXG5leHBvcnQgKiBmcm9tICcuL2xpYi8rc3RhdGUvZWRpdG9yLmFjdGlvbnMnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9mZWF0dXJlLWVkaXRvci5tb2R1bGUnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9lZGl0b3Iuc2VydmljZSdcbmV4cG9ydCAqIGZyb20gJy4vbGliL3JlY29yZC1mb3JtL3JlY29yZC1mb3JtLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvd2l6YXJkL3dpemFyZC5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3dpemFyZC1maWVsZC93aXphcmQtZmllbGQuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy93aXphcmQtc3VtbWFyaXplL3dpemFyZC1zdW1tYXJpemUuY29tcG9uZW50J1xuIl19
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { createAction, props } from '@ngrx/store';
|
|
2
|
+
export const openRecord = createAction('[Editor] Open record', props());
|
|
3
|
+
export const updateRecordField = createAction('[Editor] Update record field', props());
|
|
4
|
+
export const markRecordAsChanged = createAction('[Editor] Mark record as changed');
|
|
5
|
+
export const saveRecord = createAction('[Editor] Save record');
|
|
6
|
+
export const saveRecordSuccess = createAction('[Editor] Save record success');
|
|
7
|
+
export const saveRecordFailure = createAction('[Editor] Save record failure', props());
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLmFjdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvZWRpdG9yL3NyYy9saWIvK3N0YXRlL2VkaXRvci5hY3Rpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFBO0FBSWpELE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRyxZQUFZLENBQ3BDLHNCQUFzQixFQUN0QixLQUFLLEVBQTZCLENBQ25DLENBQUE7QUFFRCxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxZQUFZLENBQzNDLDhCQUE4QixFQUM5QixLQUFLLEVBQXFDLENBQzNDLENBQUE7QUFFRCxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxZQUFZLENBQzdDLGlDQUFpQyxDQUNsQyxDQUFBO0FBRUQsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLFlBQVksQ0FBQyxzQkFBc0IsQ0FBQyxDQUFBO0FBQzlELE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLFlBQVksQ0FBQyw4QkFBOEIsQ0FBQyxDQUFBO0FBQzdFLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLFlBQVksQ0FDM0MsOEJBQThCLEVBQzlCLEtBQUssRUFBOEIsQ0FDcEMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNyZWF0ZUFjdGlvbiwgcHJvcHMgfSBmcm9tICdAbmdyeC9zdG9yZSdcbmltcG9ydCB7IENhdGFsb2dSZWNvcmQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9kb21haW4vc3JjL2xpYi9tb2RlbC9yZWNvcmQnXG5pbXBvcnQgeyBTYXZlUmVjb3JkRXJyb3IgfSBmcm9tICcuL2VkaXRvci5tb2RlbHMnXG5cbmV4cG9ydCBjb25zdCBvcGVuUmVjb3JkID0gY3JlYXRlQWN0aW9uKFxuICAnW0VkaXRvcl0gT3BlbiByZWNvcmQnLFxuICBwcm9wczx7IHJlY29yZDogQ2F0YWxvZ1JlY29yZCB9PigpXG4pXG5cbmV4cG9ydCBjb25zdCB1cGRhdGVSZWNvcmRGaWVsZCA9IGNyZWF0ZUFjdGlvbihcbiAgJ1tFZGl0b3JdIFVwZGF0ZSByZWNvcmQgZmllbGQnLFxuICBwcm9wczx7IGZpZWxkOiBzdHJpbmc7IHZhbHVlOiB1bmtub3duIH0+KClcbilcblxuZXhwb3J0IGNvbnN0IG1hcmtSZWNvcmRBc0NoYW5nZWQgPSBjcmVhdGVBY3Rpb24oXG4gICdbRWRpdG9yXSBNYXJrIHJlY29yZCBhcyBjaGFuZ2VkJ1xuKVxuXG5leHBvcnQgY29uc3Qgc2F2ZVJlY29yZCA9IGNyZWF0ZUFjdGlvbignW0VkaXRvcl0gU2F2ZSByZWNvcmQnKVxuZXhwb3J0IGNvbnN0IHNhdmVSZWNvcmRTdWNjZXNzID0gY3JlYXRlQWN0aW9uKCdbRWRpdG9yXSBTYXZlIHJlY29yZCBzdWNjZXNzJylcbmV4cG9ydCBjb25zdCBzYXZlUmVjb3JkRmFpbHVyZSA9IGNyZWF0ZUFjdGlvbihcbiAgJ1tFZGl0b3JdIFNhdmUgcmVjb3JkIGZhaWx1cmUnLFxuICBwcm9wczx7IGVycm9yOiBTYXZlUmVjb3JkRXJyb3IgfT4oKVxuKVxuIl19
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { inject, Injectable } from '@angular/core';
|
|
2
|
+
import { Actions, createEffect, ofType } from '@ngrx/effects';
|
|
3
|
+
import { of, withLatestFrom } from 'rxjs';
|
|
4
|
+
import { catchError, map, switchMap } from 'rxjs/operators';
|
|
5
|
+
import * as EditorActions from './editor.actions';
|
|
6
|
+
import { EditorService } from '../services/editor.service';
|
|
7
|
+
import { Store } from '@ngrx/store';
|
|
8
|
+
import { selectRecord, selectRecordFieldsConfig } from './editor.selectors';
|
|
9
|
+
import * as i0 from "@angular/core";
|
|
10
|
+
export class EditorEffects {
|
|
11
|
+
constructor() {
|
|
12
|
+
this.actions$ = inject(Actions);
|
|
13
|
+
this.editorService = inject(EditorService);
|
|
14
|
+
this.store = inject(Store);
|
|
15
|
+
this.saveRecord$ = createEffect(() => this.actions$.pipe(ofType(EditorActions.saveRecord), withLatestFrom(this.store.select(selectRecord), this.store.select(selectRecordFieldsConfig)), switchMap(([, record, fieldsConfig]) => this.editorService.saveRecord(record, fieldsConfig).pipe(switchMap((newRecord) => of(EditorActions.saveRecordSuccess(), EditorActions.openRecord({ record: newRecord }))), catchError((error) => of(EditorActions.saveRecordFailure({
|
|
16
|
+
error: error.message,
|
|
17
|
+
})))))));
|
|
18
|
+
this.markAsChanged$ = createEffect(() => this.actions$.pipe(ofType(EditorActions.updateRecordField), map(() => EditorActions.markRecordAsChanged())));
|
|
19
|
+
}
|
|
20
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: EditorEffects, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
21
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: EditorEffects }); }
|
|
22
|
+
}
|
|
23
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: EditorEffects, decorators: [{
|
|
24
|
+
type: Injectable
|
|
25
|
+
}] });
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLmVmZmVjdHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvZWRpdG9yL3NyYy9saWIvK3N0YXRlL2VkaXRvci5lZmZlY3RzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ2xELE9BQU8sRUFBRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUM3RCxPQUFPLEVBQUUsRUFBRSxFQUFFLGNBQWMsRUFBRSxNQUFNLE1BQU0sQ0FBQTtBQUN6QyxPQUFPLEVBQUUsVUFBVSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUMzRCxPQUFPLEtBQUssYUFBYSxNQUFNLGtCQUFrQixDQUFBO0FBQ2pELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQTtBQUMxRCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFBO0FBQ25DLE9BQU8sRUFBRSxZQUFZLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQTs7QUFHM0UsTUFBTSxPQUFPLGFBQWE7SUFEMUI7UUFFVSxhQUFRLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFBO1FBQzFCLGtCQUFhLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFBO1FBQ3JDLFVBQUssR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUE7UUFFN0IsZ0JBQVcsR0FBRyxZQUFZLENBQUMsR0FBRyxFQUFFLENBQzlCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUNoQixNQUFNLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxFQUNoQyxjQUFjLENBQ1osSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLEVBQy9CLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLHdCQUF3QixDQUFDLENBQzVDLEVBQ0QsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxZQUFZLENBQUMsRUFBRSxFQUFFLENBQ3JDLElBQUksQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxZQUFZLENBQUMsQ0FBQyxJQUFJLENBQ3RELFNBQVMsQ0FBQyxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQ3RCLEVBQUUsQ0FDQSxhQUFhLENBQUMsaUJBQWlCLEVBQUUsRUFDakMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUNoRCxDQUNGLEVBQ0QsVUFBVSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FDbkIsRUFBRSxDQUNBLGFBQWEsQ0FBQyxpQkFBaUIsQ0FBQztZQUM5QixLQUFLLEVBQUUsS0FBSyxDQUFDLE9BQU87U0FDckIsQ0FBQyxDQUNILENBQ0YsQ0FDRixDQUNGLENBQ0YsQ0FDRixDQUFBO1FBRUQsbUJBQWMsR0FBRyxZQUFZLENBQUMsR0FBRyxFQUFFLENBQ2pDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUNoQixNQUFNLENBQUMsYUFBYSxDQUFDLGlCQUFpQixDQUFDLEVBQ3ZDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxhQUFhLENBQUMsbUJBQW1CLEVBQUUsQ0FBQyxDQUMvQyxDQUNGLENBQUE7S0FDRjs4R0F0Q1ksYUFBYTtrSEFBYixhQUFhOzsyRkFBYixhQUFhO2tCQUR6QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IEFjdGlvbnMsIGNyZWF0ZUVmZmVjdCwgb2ZUeXBlIH0gZnJvbSAnQG5ncngvZWZmZWN0cydcbmltcG9ydCB7IG9mLCB3aXRoTGF0ZXN0RnJvbSB9IGZyb20gJ3J4anMnXG5pbXBvcnQgeyBjYXRjaEVycm9yLCBtYXAsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJ1xuaW1wb3J0ICogYXMgRWRpdG9yQWN0aW9ucyBmcm9tICcuL2VkaXRvci5hY3Rpb25zJ1xuaW1wb3J0IHsgRWRpdG9yU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2VkaXRvci5zZXJ2aWNlJ1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICdAbmdyeC9zdG9yZSdcbmltcG9ydCB7IHNlbGVjdFJlY29yZCwgc2VsZWN0UmVjb3JkRmllbGRzQ29uZmlnIH0gZnJvbSAnLi9lZGl0b3Iuc2VsZWN0b3JzJ1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRWRpdG9yRWZmZWN0cyB7XG4gIHByaXZhdGUgYWN0aW9ucyQgPSBpbmplY3QoQWN0aW9ucylcbiAgcHJpdmF0ZSBlZGl0b3JTZXJ2aWNlID0gaW5qZWN0KEVkaXRvclNlcnZpY2UpXG4gIHByaXZhdGUgc3RvcmUgPSBpbmplY3QoU3RvcmUpXG5cbiAgc2F2ZVJlY29yZCQgPSBjcmVhdGVFZmZlY3QoKCkgPT5cbiAgICB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgICBvZlR5cGUoRWRpdG9yQWN0aW9ucy5zYXZlUmVjb3JkKSxcbiAgICAgIHdpdGhMYXRlc3RGcm9tKFxuICAgICAgICB0aGlzLnN0b3JlLnNlbGVjdChzZWxlY3RSZWNvcmQpLFxuICAgICAgICB0aGlzLnN0b3JlLnNlbGVjdChzZWxlY3RSZWNvcmRGaWVsZHNDb25maWcpXG4gICAgICApLFxuICAgICAgc3dpdGNoTWFwKChbLCByZWNvcmQsIGZpZWxkc0NvbmZpZ10pID0+XG4gICAgICAgIHRoaXMuZWRpdG9yU2VydmljZS5zYXZlUmVjb3JkKHJlY29yZCwgZmllbGRzQ29uZmlnKS5waXBlKFxuICAgICAgICAgIHN3aXRjaE1hcCgobmV3UmVjb3JkKSA9PlxuICAgICAgICAgICAgb2YoXG4gICAgICAgICAgICAgIEVkaXRvckFjdGlvbnMuc2F2ZVJlY29yZFN1Y2Nlc3MoKSxcbiAgICAgICAgICAgICAgRWRpdG9yQWN0aW9ucy5vcGVuUmVjb3JkKHsgcmVjb3JkOiBuZXdSZWNvcmQgfSlcbiAgICAgICAgICAgIClcbiAgICAgICAgICApLFxuICAgICAgICAgIGNhdGNoRXJyb3IoKGVycm9yKSA9PlxuICAgICAgICAgICAgb2YoXG4gICAgICAgICAgICAgIEVkaXRvckFjdGlvbnMuc2F2ZVJlY29yZEZhaWx1cmUoe1xuICAgICAgICAgICAgICAgIGVycm9yOiBlcnJvci5tZXNzYWdlLFxuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKVxuICAgICAgICAgIClcbiAgICAgICAgKVxuICAgICAgKVxuICAgIClcbiAgKVxuXG4gIG1hcmtBc0NoYW5nZWQkID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKEVkaXRvckFjdGlvbnMudXBkYXRlUmVjb3JkRmllbGQpLFxuICAgICAgbWFwKCgpID0+IEVkaXRvckFjdGlvbnMubWFya1JlY29yZEFzQ2hhbmdlZCgpKVxuICAgIClcbiAgKVxufVxuIl19
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { inject, Injectable } from '@angular/core';
|
|
2
|
+
import { select, Store } from '@ngrx/store';
|
|
3
|
+
import * as EditorActions from './editor.actions';
|
|
4
|
+
import * as EditorSelectors from './editor.selectors';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export class EditorFacade {
|
|
7
|
+
constructor() {
|
|
8
|
+
this.store = inject(Store);
|
|
9
|
+
this.record$ = this.store.pipe(select(EditorSelectors.selectRecord));
|
|
10
|
+
this.saving$ = this.store.pipe(select(EditorSelectors.selectRecordSaving));
|
|
11
|
+
this.saveError$ = this.store.pipe(select(EditorSelectors.selectRecordSaveError));
|
|
12
|
+
this.changedSinceSave$ = this.store.pipe(select(EditorSelectors.selectRecordChangedSinceSave));
|
|
13
|
+
this.recordFields$ = this.store.pipe(select(EditorSelectors.selectRecordFields));
|
|
14
|
+
}
|
|
15
|
+
openRecord(record) {
|
|
16
|
+
this.store.dispatch(EditorActions.openRecord({ record }));
|
|
17
|
+
}
|
|
18
|
+
saveRecord() {
|
|
19
|
+
this.store.dispatch(EditorActions.saveRecord());
|
|
20
|
+
}
|
|
21
|
+
updateRecordField(field, value) {
|
|
22
|
+
this.store.dispatch(EditorActions.updateRecordField({ field, value }));
|
|
23
|
+
}
|
|
24
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: EditorFacade, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
25
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: EditorFacade }); }
|
|
26
|
+
}
|
|
27
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: EditorFacade, decorators: [{
|
|
28
|
+
type: Injectable
|
|
29
|
+
}] });
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLmZhY2FkZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9lZGl0b3Ivc3JjL2xpYi8rc3RhdGUvZWRpdG9yLmZhY2FkZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUNsRCxPQUFPLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUMzQyxPQUFPLEtBQUssYUFBYSxNQUFNLGtCQUFrQixDQUFBO0FBQ2pELE9BQU8sS0FBSyxlQUFlLE1BQU0sb0JBQW9CLENBQUE7O0FBSXJELE1BQU0sT0FBTyxZQUFZO0lBRHpCO1FBRW1CLFVBQUssR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUE7UUFFdEMsWUFBTyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxlQUFlLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQTtRQUMvRCxZQUFPLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGVBQWUsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLENBQUE7UUFDckUsZUFBVSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxlQUFlLENBQUMscUJBQXFCLENBQUMsQ0FBQyxDQUFBO1FBQzNFLHNCQUFpQixHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUNqQyxNQUFNLENBQUMsZUFBZSxDQUFDLDRCQUE0QixDQUFDLENBQ3JELENBQUE7UUFDRCxrQkFBYSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxlQUFlLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxDQUFBO0tBYTVFO0lBWEMsVUFBVSxDQUFDLE1BQXFCO1FBQzlCLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUE7SUFDM0QsQ0FBQztJQUVELFVBQVU7UUFDUixJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQTtJQUNqRCxDQUFDO0lBRUQsaUJBQWlCLENBQUMsS0FBYSxFQUFFLEtBQWM7UUFDN0MsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLGlCQUFpQixDQUFDLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQTtJQUN4RSxDQUFDOzhHQXJCVSxZQUFZO2tIQUFaLFlBQVk7OzJGQUFaLFlBQVk7a0JBRHhCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgc2VsZWN0LCBTdG9yZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJ1xuaW1wb3J0ICogYXMgRWRpdG9yQWN0aW9ucyBmcm9tICcuL2VkaXRvci5hY3Rpb25zJ1xuaW1wb3J0ICogYXMgRWRpdG9yU2VsZWN0b3JzIGZyb20gJy4vZWRpdG9yLnNlbGVjdG9ycydcbmltcG9ydCB7IENhdGFsb2dSZWNvcmQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9kb21haW4vc3JjL2xpYi9tb2RlbC9yZWNvcmQnXG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBFZGl0b3JGYWNhZGUge1xuICBwcml2YXRlIHJlYWRvbmx5IHN0b3JlID0gaW5qZWN0KFN0b3JlKVxuXG4gIHJlY29yZCQgPSB0aGlzLnN0b3JlLnBpcGUoc2VsZWN0KEVkaXRvclNlbGVjdG9ycy5zZWxlY3RSZWNvcmQpKVxuICBzYXZpbmckID0gdGhpcy5zdG9yZS5waXBlKHNlbGVjdChFZGl0b3JTZWxlY3RvcnMuc2VsZWN0UmVjb3JkU2F2aW5nKSlcbiAgc2F2ZUVycm9yJCA9IHRoaXMuc3RvcmUucGlwZShzZWxlY3QoRWRpdG9yU2VsZWN0b3JzLnNlbGVjdFJlY29yZFNhdmVFcnJvcikpXG4gIGNoYW5nZWRTaW5jZVNhdmUkID0gdGhpcy5zdG9yZS5waXBlKFxuICAgIHNlbGVjdChFZGl0b3JTZWxlY3RvcnMuc2VsZWN0UmVjb3JkQ2hhbmdlZFNpbmNlU2F2ZSlcbiAgKVxuICByZWNvcmRGaWVsZHMkID0gdGhpcy5zdG9yZS5waXBlKHNlbGVjdChFZGl0b3JTZWxlY3RvcnMuc2VsZWN0UmVjb3JkRmllbGRzKSlcblxuICBvcGVuUmVjb3JkKHJlY29yZDogQ2F0YWxvZ1JlY29yZCkge1xuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goRWRpdG9yQWN0aW9ucy5vcGVuUmVjb3JkKHsgcmVjb3JkIH0pKVxuICB9XG5cbiAgc2F2ZVJlY29yZCgpIHtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKEVkaXRvckFjdGlvbnMuc2F2ZVJlY29yZCgpKVxuICB9XG5cbiAgdXBkYXRlUmVjb3JkRmllbGQoZmllbGQ6IHN0cmluZywgdmFsdWU6IHVua25vd24pIHtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKEVkaXRvckFjdGlvbnMudXBkYXRlUmVjb3JkRmllbGQoeyBmaWVsZCwgdmFsdWUgfSkpXG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLm1vZGVscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9lZGl0b3Ivc3JjL2xpYi8rc3RhdGUvZWRpdG9yLm1vZGVscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHR5cGUgU2F2ZVJlY29yZEVycm9yID0gc3RyaW5nXG4iXX0=
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { createReducer, on } from '@ngrx/store';
|
|
2
|
+
import * as EditorActions from './editor.actions';
|
|
3
|
+
import { DEFAULT_FIELDS } from '../fields.config';
|
|
4
|
+
export const EDITOR_FEATURE_KEY = 'editor';
|
|
5
|
+
export const initialEditorState = {
|
|
6
|
+
record: null,
|
|
7
|
+
saving: false,
|
|
8
|
+
saveError: null,
|
|
9
|
+
changedSinceSave: false,
|
|
10
|
+
fieldsConfig: DEFAULT_FIELDS,
|
|
11
|
+
};
|
|
12
|
+
const reducer = createReducer(initialEditorState, on(EditorActions.openRecord, (state, { record }) => ({
|
|
13
|
+
...state,
|
|
14
|
+
changedSinceSave: false,
|
|
15
|
+
record,
|
|
16
|
+
})), on(EditorActions.saveRecord, (state) => ({
|
|
17
|
+
...state,
|
|
18
|
+
saving: true,
|
|
19
|
+
saveError: null,
|
|
20
|
+
})), on(EditorActions.saveRecordSuccess, (state) => ({
|
|
21
|
+
...state,
|
|
22
|
+
saving: false,
|
|
23
|
+
saveError: null,
|
|
24
|
+
changedSinceSave: false,
|
|
25
|
+
})), on(EditorActions.saveRecordFailure, (state, { error }) => ({
|
|
26
|
+
...state,
|
|
27
|
+
saving: false,
|
|
28
|
+
saveError: error,
|
|
29
|
+
})), on(EditorActions.updateRecordField, (state, { field, value }) => ({
|
|
30
|
+
...state,
|
|
31
|
+
record: {
|
|
32
|
+
...state.record,
|
|
33
|
+
[field]: value,
|
|
34
|
+
},
|
|
35
|
+
})), on(EditorActions.markRecordAsChanged, (state) => ({
|
|
36
|
+
...state,
|
|
37
|
+
changedSinceSave: true,
|
|
38
|
+
})));
|
|
39
|
+
export function editorReducer(state, action) {
|
|
40
|
+
return reducer(state, action);
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLnJlZHVjZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvZWRpdG9yL3NyYy9saWIvK3N0YXRlL2VkaXRvci5yZWR1Y2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBVSxhQUFhLEVBQUUsRUFBRSxFQUFFLE1BQU0sYUFBYSxDQUFBO0FBQ3ZELE9BQU8sS0FBSyxhQUFhLE1BQU0sa0JBQWtCLENBQUE7QUFJakQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtCQUFrQixDQUFBO0FBRWpELE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLFFBQVEsQ0FBQTtBQWMxQyxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBZ0I7SUFDN0MsTUFBTSxFQUFFLElBQUk7SUFDWixNQUFNLEVBQUUsS0FBSztJQUNiLFNBQVMsRUFBRSxJQUFJO0lBQ2YsZ0JBQWdCLEVBQUUsS0FBSztJQUN2QixZQUFZLEVBQUUsY0FBYztDQUM3QixDQUFBO0FBRUQsTUFBTSxPQUFPLEdBQUcsYUFBYSxDQUMzQixrQkFBa0IsRUFDbEIsRUFBRSxDQUFDLGFBQWEsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxNQUFNLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNuRCxHQUFHLEtBQUs7SUFDUixnQkFBZ0IsRUFBRSxLQUFLO0lBQ3ZCLE1BQU07Q0FDUCxDQUFDLENBQUMsRUFDSCxFQUFFLENBQUMsYUFBYSxDQUFDLFVBQVUsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztJQUN2QyxHQUFHLEtBQUs7SUFDUixNQUFNLEVBQUUsSUFBSTtJQUNaLFNBQVMsRUFBRSxJQUFJO0NBQ2hCLENBQUMsQ0FBQyxFQUNILEVBQUUsQ0FBQyxhQUFhLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDOUMsR0FBRyxLQUFLO0lBQ1IsTUFBTSxFQUFFLEtBQUs7SUFDYixTQUFTLEVBQUUsSUFBSTtJQUNmLGdCQUFnQixFQUFFLEtBQUs7Q0FDeEIsQ0FBQyxDQUFDLEVBQ0gsRUFBRSxDQUFDLGFBQWEsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ3pELEdBQUcsS0FBSztJQUNSLE1BQU0sRUFBRSxLQUFLO0lBQ2IsU0FBUyxFQUFFLEtBQUs7Q0FDakIsQ0FBQyxDQUFDLEVBQ0gsRUFBRSxDQUFDLGFBQWEsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNoRSxHQUFHLEtBQUs7SUFDUixNQUFNLEVBQUU7UUFDTixHQUFHLEtBQUssQ0FBQyxNQUFNO1FBQ2YsQ0FBQyxLQUFLLENBQUMsRUFBRSxLQUFLO0tBQ2Y7Q0FDRixDQUFDLENBQUMsRUFDSCxFQUFFLENBQUMsYUFBYSxDQUFDLG1CQUFtQixFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ2hELEdBQUcsS0FBSztJQUNSLGdCQUFnQixFQUFFLElBQUk7Q0FDdkIsQ0FBQyxDQUFDLENBQ0osQ0FBQTtBQUVELE1BQU0sVUFBVSxhQUFhLENBQUMsS0FBOEIsRUFBRSxNQUFjO0lBQzFFLE9BQU8sT0FBTyxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQTtBQUMvQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWN0aW9uLCBjcmVhdGVSZWR1Y2VyLCBvbiB9IGZyb20gJ0BuZ3J4L3N0b3JlJ1xuaW1wb3J0ICogYXMgRWRpdG9yQWN0aW9ucyBmcm9tICcuL2VkaXRvci5hY3Rpb25zJ1xuaW1wb3J0IHsgQ2F0YWxvZ1JlY29yZCB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL2RvbWFpbi9zcmMvbGliL21vZGVsL3JlY29yZCdcbmltcG9ydCB7IFNhdmVSZWNvcmRFcnJvciB9IGZyb20gJy4vZWRpdG9yLm1vZGVscydcbmltcG9ydCB7IEVkaXRvckZpZWxkc0NvbmZpZyB9IGZyb20gJy4uL21vZGVscy9maWVsZHMubW9kZWwnXG5pbXBvcnQgeyBERUZBVUxUX0ZJRUxEUyB9IGZyb20gJy4uL2ZpZWxkcy5jb25maWcnXG5cbmV4cG9ydCBjb25zdCBFRElUT1JfRkVBVFVSRV9LRVkgPSAnZWRpdG9yJ1xuXG5leHBvcnQgaW50ZXJmYWNlIEVkaXRvclN0YXRlIHtcbiAgcmVjb3JkOiBDYXRhbG9nUmVjb3JkIHwgbnVsbFxuICBzYXZpbmc6IGJvb2xlYW5cbiAgc2F2ZUVycm9yOiBTYXZlUmVjb3JkRXJyb3IgfCBudWxsXG4gIGNoYW5nZWRTaW5jZVNhdmU6IGJvb2xlYW5cbiAgZmllbGRzQ29uZmlnOiBFZGl0b3JGaWVsZHNDb25maWdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFZGl0b3JQYXJ0aWFsU3RhdGUge1xuICByZWFkb25seSBbRURJVE9SX0ZFQVRVUkVfS0VZXTogRWRpdG9yU3RhdGVcbn1cblxuZXhwb3J0IGNvbnN0IGluaXRpYWxFZGl0b3JTdGF0ZTogRWRpdG9yU3RhdGUgPSB7XG4gIHJlY29yZDogbnVsbCxcbiAgc2F2aW5nOiBmYWxzZSxcbiAgc2F2ZUVycm9yOiBudWxsLFxuICBjaGFuZ2VkU2luY2VTYXZlOiBmYWxzZSxcbiAgZmllbGRzQ29uZmlnOiBERUZBVUxUX0ZJRUxEUyxcbn1cblxuY29uc3QgcmVkdWNlciA9IGNyZWF0ZVJlZHVjZXIoXG4gIGluaXRpYWxFZGl0b3JTdGF0ZSxcbiAgb24oRWRpdG9yQWN0aW9ucy5vcGVuUmVjb3JkLCAoc3RhdGUsIHsgcmVjb3JkIH0pID0+ICh7XG4gICAgLi4uc3RhdGUsXG4gICAgY2hhbmdlZFNpbmNlU2F2ZTogZmFsc2UsXG4gICAgcmVjb3JkLFxuICB9KSksXG4gIG9uKEVkaXRvckFjdGlvbnMuc2F2ZVJlY29yZCwgKHN0YXRlKSA9PiAoe1xuICAgIC4uLnN0YXRlLFxuICAgIHNhdmluZzogdHJ1ZSxcbiAgICBzYXZlRXJyb3I6IG51bGwsXG4gIH0pKSxcbiAgb24oRWRpdG9yQWN0aW9ucy5zYXZlUmVjb3JkU3VjY2VzcywgKHN0YXRlKSA9PiAoe1xuICAgIC4uLnN0YXRlLFxuICAgIHNhdmluZzogZmFsc2UsXG4gICAgc2F2ZUVycm9yOiBudWxsLFxuICAgIGNoYW5nZWRTaW5jZVNhdmU6IGZhbHNlLFxuICB9KSksXG4gIG9uKEVkaXRvckFjdGlvbnMuc2F2ZVJlY29yZEZhaWx1cmUsIChzdGF0ZSwgeyBlcnJvciB9KSA9PiAoe1xuICAgIC4uLnN0YXRlLFxuICAgIHNhdmluZzogZmFsc2UsXG4gICAgc2F2ZUVycm9yOiBlcnJvcixcbiAgfSkpLFxuICBvbihFZGl0b3JBY3Rpb25zLnVwZGF0ZVJlY29yZEZpZWxkLCAoc3RhdGUsIHsgZmllbGQsIHZhbHVlIH0pID0+ICh7XG4gICAgLi4uc3RhdGUsXG4gICAgcmVjb3JkOiB7XG4gICAgICAuLi5zdGF0ZS5yZWNvcmQsXG4gICAgICBbZmllbGRdOiB2YWx1ZSxcbiAgICB9LFxuICB9KSksXG4gIG9uKEVkaXRvckFjdGlvbnMubWFya1JlY29yZEFzQ2hhbmdlZCwgKHN0YXRlKSA9PiAoe1xuICAgIC4uLnN0YXRlLFxuICAgIGNoYW5nZWRTaW5jZVNhdmU6IHRydWUsXG4gIH0pKVxuKVxuXG5leHBvcnQgZnVuY3Rpb24gZWRpdG9yUmVkdWNlcihzdGF0ZTogRWRpdG9yU3RhdGUgfCB1bmRlZmluZWQsIGFjdGlvbjogQWN0aW9uKSB7XG4gIHJldHVybiByZWR1Y2VyKHN0YXRlLCBhY3Rpb24pXG59XG4iXX0=
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { createFeatureSelector, createSelector } from '@ngrx/store';
|
|
2
|
+
import { EDITOR_FEATURE_KEY } from './editor.reducer';
|
|
3
|
+
export const selectEditorState = createFeatureSelector(EDITOR_FEATURE_KEY);
|
|
4
|
+
export const selectRecord = createSelector(selectEditorState, (state) => state.record);
|
|
5
|
+
export const selectRecordSaving = createSelector(selectEditorState, (state) => state.saving);
|
|
6
|
+
export const selectRecordSaveError = createSelector(selectEditorState, (state) => state.saveError);
|
|
7
|
+
export const selectRecordChangedSinceSave = createSelector(selectEditorState, (state) => state.changedSinceSave);
|
|
8
|
+
export const selectRecordFieldsConfig = createSelector(selectEditorState, (state) => state.fieldsConfig);
|
|
9
|
+
export const selectRecordFields = createSelector(selectEditorState, (state) => state.fieldsConfig.map((fieldConfig) => ({
|
|
10
|
+
config: fieldConfig,
|
|
11
|
+
value: state.record?.[fieldConfig.model] || null,
|
|
12
|
+
})));
|
|
13
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLnNlbGVjdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9lZGl0b3Ivc3JjL2xpYi8rc3RhdGUvZWRpdG9yLnNlbGVjdG9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsY0FBYyxFQUFFLE1BQU0sYUFBYSxDQUFBO0FBQ25FLE9BQU8sRUFBRSxrQkFBa0IsRUFBZSxNQUFNLGtCQUFrQixDQUFBO0FBRWxFLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUM1QixxQkFBcUIsQ0FBYyxrQkFBa0IsQ0FBQyxDQUFBO0FBRXhELE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRyxjQUFjLENBQ3hDLGlCQUFpQixFQUNqQixDQUFDLEtBQWtCLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQ3JDLENBQUE7QUFFRCxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxjQUFjLENBQzlDLGlCQUFpQixFQUNqQixDQUFDLEtBQWtCLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQ3JDLENBQUE7QUFFRCxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyxjQUFjLENBQ2pELGlCQUFpQixFQUNqQixDQUFDLEtBQWtCLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQ3hDLENBQUE7QUFFRCxNQUFNLENBQUMsTUFBTSw0QkFBNEIsR0FBRyxjQUFjLENBQ3hELGlCQUFpQixFQUNqQixDQUFDLEtBQWtCLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FDL0MsQ0FBQTtBQUVELE1BQU0sQ0FBQyxNQUFNLHdCQUF3QixHQUFHLGNBQWMsQ0FDcEQsaUJBQWlCLEVBQ2pCLENBQUMsS0FBa0IsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FDM0MsQ0FBQTtBQUVELE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLGNBQWMsQ0FDOUMsaUJBQWlCLEVBQ2pCLENBQUMsS0FBa0IsRUFBRSxFQUFFLENBQ3JCLEtBQUssQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ3ZDLE1BQU0sRUFBRSxXQUFXO0lBQ25CLEtBQUssRUFBRSxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxJQUFJLElBQUk7Q0FDakQsQ0FBQyxDQUFDLENBQ04sQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNyZWF0ZUZlYXR1cmVTZWxlY3RvciwgY3JlYXRlU2VsZWN0b3IgfSBmcm9tICdAbmdyeC9zdG9yZSdcbmltcG9ydCB7IEVESVRPUl9GRUFUVVJFX0tFWSwgRWRpdG9yU3RhdGUgfSBmcm9tICcuL2VkaXRvci5yZWR1Y2VyJ1xuXG5leHBvcnQgY29uc3Qgc2VsZWN0RWRpdG9yU3RhdGUgPVxuICBjcmVhdGVGZWF0dXJlU2VsZWN0b3I8RWRpdG9yU3RhdGU+KEVESVRPUl9GRUFUVVJFX0tFWSlcblxuZXhwb3J0IGNvbnN0IHNlbGVjdFJlY29yZCA9IGNyZWF0ZVNlbGVjdG9yKFxuICBzZWxlY3RFZGl0b3JTdGF0ZSxcbiAgKHN0YXRlOiBFZGl0b3JTdGF0ZSkgPT4gc3RhdGUucmVjb3JkXG4pXG5cbmV4cG9ydCBjb25zdCBzZWxlY3RSZWNvcmRTYXZpbmcgPSBjcmVhdGVTZWxlY3RvcihcbiAgc2VsZWN0RWRpdG9yU3RhdGUsXG4gIChzdGF0ZTogRWRpdG9yU3RhdGUpID0+IHN0YXRlLnNhdmluZ1xuKVxuXG5leHBvcnQgY29uc3Qgc2VsZWN0UmVjb3JkU2F2ZUVycm9yID0gY3JlYXRlU2VsZWN0b3IoXG4gIHNlbGVjdEVkaXRvclN0YXRlLFxuICAoc3RhdGU6IEVkaXRvclN0YXRlKSA9PiBzdGF0ZS5zYXZlRXJyb3JcbilcblxuZXhwb3J0IGNvbnN0IHNlbGVjdFJlY29yZENoYW5nZWRTaW5jZVNhdmUgPSBjcmVhdGVTZWxlY3RvcihcbiAgc2VsZWN0RWRpdG9yU3RhdGUsXG4gIChzdGF0ZTogRWRpdG9yU3RhdGUpID0+IHN0YXRlLmNoYW5nZWRTaW5jZVNhdmVcbilcblxuZXhwb3J0IGNvbnN0IHNlbGVjdFJlY29yZEZpZWxkc0NvbmZpZyA9IGNyZWF0ZVNlbGVjdG9yKFxuICBzZWxlY3RFZGl0b3JTdGF0ZSxcbiAgKHN0YXRlOiBFZGl0b3JTdGF0ZSkgPT4gc3RhdGUuZmllbGRzQ29uZmlnXG4pXG5cbmV4cG9ydCBjb25zdCBzZWxlY3RSZWNvcmRGaWVsZHMgPSBjcmVhdGVTZWxlY3RvcihcbiAgc2VsZWN0RWRpdG9yU3RhdGUsXG4gIChzdGF0ZTogRWRpdG9yU3RhdGUpID0+XG4gICAgc3RhdGUuZmllbGRzQ29uZmlnLm1hcCgoZmllbGRDb25maWcpID0+ICh7XG4gICAgICBjb25maWc6IGZpZWxkQ29uZmlnLFxuICAgICAgdmFsdWU6IHN0YXRlLnJlY29yZD8uW2ZpZWxkQ29uZmlnLm1vZGVsXSB8fCBudWxsLFxuICAgIH0pKVxuKVxuIl19
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export function evaluate(expression) {
|
|
2
|
+
if (expression.match(/^\${.*}$/)) {
|
|
3
|
+
return evaluate(expression.slice(2, -1));
|
|
4
|
+
}
|
|
5
|
+
const operator = expression.split('(')[0];
|
|
6
|
+
switch (operator) {
|
|
7
|
+
case 'dateNow':
|
|
8
|
+
return () => new Date();
|
|
9
|
+
default:
|
|
10
|
+
throw new Error(`Unknown operator: ${operator}`);
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwcmVzc2lvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvZWRpdG9yL3NyYy9saWIvZXhwcmVzc2lvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUEsTUFBTSxVQUFVLFFBQVEsQ0FBQyxVQUFrQjtJQUN6QyxJQUFJLFVBQVUsQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLEVBQUU7UUFDaEMsT0FBTyxRQUFRLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFBO0tBQ3pDO0lBQ0QsTUFBTSxRQUFRLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtJQUN6QyxRQUFRLFFBQVEsRUFBRTtRQUNoQixLQUFLLFNBQVM7WUFDWixPQUFPLEdBQUcsRUFBRSxDQUFDLElBQUksSUFBSSxFQUFFLENBQUE7UUFDekI7WUFDRSxNQUFNLElBQUksS0FBSyxDQUFDLHFCQUFxQixRQUFRLEVBQUUsQ0FBQyxDQUFBO0tBQ25EO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVkaXRvckZpZWxkU3RhdGUsIEVkaXRvckZpZWxkVmFsdWUgfSBmcm9tICcuL21vZGVscy9maWVsZHMubW9kZWwnXG5cbmV4cG9ydCB0eXBlIEV4cHJlc3Npb25FdmFsdWF0b3IgPSAoZmllbGQ6IEVkaXRvckZpZWxkU3RhdGUpID0+IEVkaXRvckZpZWxkVmFsdWVcblxuZXhwb3J0IGZ1bmN0aW9uIGV2YWx1YXRlKGV4cHJlc3Npb246IHN0cmluZyk6IEV4cHJlc3Npb25FdmFsdWF0b3Ige1xuICBpZiAoZXhwcmVzc2lvbi5tYXRjaCgvXlxcJHsuKn0kLykpIHtcbiAgICByZXR1cm4gZXZhbHVhdGUoZXhwcmVzc2lvbi5zbGljZSgyLCAtMSkpXG4gIH1cbiAgY29uc3Qgb3BlcmF0b3IgPSBleHByZXNzaW9uLnNwbGl0KCcoJylbMF1cbiAgc3dpdGNoIChvcGVyYXRvcikge1xuICAgIGNhc2UgJ2RhdGVOb3cnOlxuICAgICAgcmV0dXJuICgpID0+IG5ldyBEYXRlKClcbiAgICBkZWZhdWx0OlxuICAgICAgdGhyb3cgbmV3IEVycm9yKGBVbmtub3duIG9wZXJhdG9yOiAke29wZXJhdG9yfWApXG4gIH1cbn1cbiJdfQ==
|
|
@@ -10,8 +10,15 @@ import { TranslateModule } from '@ngx-translate/core';
|
|
|
10
10
|
import { WizardSummarizeComponent } from './components/wizard-summarize/wizard-summarize.component';
|
|
11
11
|
import { CommonModule } from '@angular/common';
|
|
12
12
|
import { HttpClientModule, HttpClientXsrfModule } from '@angular/common/http';
|
|
13
|
+
import { StoreModule } from '@ngrx/store';
|
|
14
|
+
import { EffectsModule } from '@ngrx/effects';
|
|
15
|
+
import * as fromEditor from './+state/editor.reducer';
|
|
16
|
+
import { EditorEffects } from './+state/editor.effects';
|
|
17
|
+
import { EditorFacade } from './+state/editor.facade';
|
|
13
18
|
import * as i0 from "@angular/core";
|
|
14
19
|
import * as i1 from "@ngx-translate/core";
|
|
20
|
+
import * as i2 from "@ngrx/store";
|
|
21
|
+
import * as i3 from "@ngrx/effects";
|
|
15
22
|
export class FeatureEditorModule {
|
|
16
23
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: FeatureEditorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
17
24
|
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.7", ngImport: i0, type: FeatureEditorModule, declarations: [WizardComponent,
|
|
@@ -22,8 +29,8 @@ export class FeatureEditorModule {
|
|
|
22
29
|
MatNativeDateModule,
|
|
23
30
|
MatFormFieldModule,
|
|
24
31
|
HttpClientModule,
|
|
25
|
-
HttpClientXsrfModule], exports: [WizardComponent, WizardSummarizeComponent] }); }
|
|
26
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: FeatureEditorModule, imports: [CommonModule,
|
|
32
|
+
HttpClientXsrfModule, i2.StoreFeatureModule, i3.EffectsFeatureModule], exports: [WizardComponent, WizardSummarizeComponent] }); }
|
|
33
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: FeatureEditorModule, providers: [EditorFacade], imports: [CommonModule,
|
|
27
34
|
UiInputsModule,
|
|
28
35
|
UiWidgetsModule,
|
|
29
36
|
TranslateModule.forChild(),
|
|
@@ -31,7 +38,9 @@ export class FeatureEditorModule {
|
|
|
31
38
|
MatNativeDateModule,
|
|
32
39
|
MatFormFieldModule,
|
|
33
40
|
HttpClientModule,
|
|
34
|
-
HttpClientXsrfModule
|
|
41
|
+
HttpClientXsrfModule,
|
|
42
|
+
StoreModule.forFeature(fromEditor.EDITOR_FEATURE_KEY, fromEditor.editorReducer),
|
|
43
|
+
EffectsModule.forFeature([EditorEffects])] }); }
|
|
35
44
|
}
|
|
36
45
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: FeatureEditorModule, decorators: [{
|
|
37
46
|
type: NgModule,
|
|
@@ -51,10 +60,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImpor
|
|
|
51
60
|
MatFormFieldModule,
|
|
52
61
|
HttpClientModule,
|
|
53
62
|
HttpClientXsrfModule,
|
|
63
|
+
StoreModule.forFeature(fromEditor.EDITOR_FEATURE_KEY, fromEditor.editorReducer),
|
|
64
|
+
EffectsModule.forFeature([EditorEffects]),
|
|
54
65
|
],
|
|
55
66
|
exports: [WizardComponent, WizardSummarizeComponent],
|
|
67
|
+
providers: [EditorFacade],
|
|
56
68
|
}]
|
|
57
69
|
}] });
|
|
58
70
|
export * from './services/wizard.service';
|
|
59
71
|
export * from './models/index';
|
|
60
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
72
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVhdHVyZS1lZGl0b3IubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL2VkaXRvci9zcmMvbGliL2ZlYXR1cmUtZWRpdG9yLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ3hDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHdCQUF3QixDQUFBO0FBQzVELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDhCQUE4QixDQUFBO0FBQ2xFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhCQUE4QixDQUFBO0FBQ2pFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQTtBQUN0RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrREFBa0QsQ0FBQTtBQUN2RixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUNBQW1DLENBQUE7QUFDbEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG9DQUFvQyxDQUFBO0FBQ3BFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQUNyRCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwwREFBMEQsQ0FBQTtBQUNuRyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDOUMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLG9CQUFvQixFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFDN0UsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUN6QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQzdDLE9BQU8sS0FBSyxVQUFVLE1BQU0seUJBQXlCLENBQUE7QUFDckQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHlCQUF5QixDQUFBO0FBQ3ZELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQTs7Ozs7QUEyQnJELE1BQU0sT0FBTyxtQkFBbUI7OEdBQW5CLG1CQUFtQjsrR0FBbkIsbUJBQW1CLGlCQXZCNUIsZUFBZTtZQUNmLG9CQUFvQjtZQUNwQix3QkFBd0IsYUFHeEIsWUFBWTtZQUNaLGNBQWM7WUFDZCxlQUFlLHNCQUVmLG1CQUFtQjtZQUNuQixtQkFBbUI7WUFDbkIsa0JBQWtCO1lBQ2xCLGdCQUFnQjtZQUNoQixvQkFBb0IsNkRBT1osZUFBZSxFQUFFLHdCQUF3QjsrR0FHeEMsbUJBQW1CLGFBRm5CLENBQUMsWUFBWSxDQUFDLFlBaEJ2QixZQUFZO1lBQ1osY0FBYztZQUNkLGVBQWU7WUFDZixlQUFlLENBQUMsUUFBUSxFQUFFO1lBQzFCLG1CQUFtQjtZQUNuQixtQkFBbUI7WUFDbkIsa0JBQWtCO1lBQ2xCLGdCQUFnQjtZQUNoQixvQkFBb0I7WUFDcEIsV0FBVyxDQUFDLFVBQVUsQ0FDcEIsVUFBVSxDQUFDLGtCQUFrQixFQUM3QixVQUFVLENBQUMsYUFBYSxDQUN6QjtZQUNELGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxhQUFhLENBQUMsQ0FBQzs7MkZBS2hDLG1CQUFtQjtrQkF6Qi9CLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFO3dCQUNaLGVBQWU7d0JBQ2Ysb0JBQW9CO3dCQUNwQix3QkFBd0I7cUJBQ3pCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLGNBQWM7d0JBQ2QsZUFBZTt3QkFDZixlQUFlLENBQUMsUUFBUSxFQUFFO3dCQUMxQixtQkFBbUI7d0JBQ25CLG1CQUFtQjt3QkFDbkIsa0JBQWtCO3dCQUNsQixnQkFBZ0I7d0JBQ2hCLG9CQUFvQjt3QkFDcEIsV0FBVyxDQUFDLFVBQVUsQ0FDcEIsVUFBVSxDQUFDLGtCQUFrQixFQUM3QixVQUFVLENBQUMsYUFBYSxDQUN6Qjt3QkFDRCxhQUFhLENBQUMsVUFBVSxDQUFDLENBQUMsYUFBYSxDQUFDLENBQUM7cUJBQzFDO29CQUNELE9BQU8sRUFBRSxDQUFDLGVBQWUsRUFBRSx3QkFBd0IsQ0FBQztvQkFDcEQsU0FBUyxFQUFFLENBQUMsWUFBWSxDQUFDO2lCQUMxQjs7QUFFRCxjQUFjLDJCQUEyQixDQUFBO0FBQ3pDLGNBQWMsZ0JBQWdCLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBNYXROYXRpdmVEYXRlTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZSdcbmltcG9ydCB7IE1hdERhdGVwaWNrZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kYXRlcGlja2VyJ1xuaW1wb3J0IHsgTWF0Rm9ybUZpZWxkTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCdcbmltcG9ydCB7IFdpemFyZENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy93aXphcmQvd2l6YXJkLmNvbXBvbmVudCdcbmltcG9ydCB7IFdpemFyZEZpZWxkQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3dpemFyZC1maWVsZC93aXphcmQtZmllbGQuY29tcG9uZW50J1xuaW1wb3J0IHsgVWlJbnB1dHNNb2R1bGUgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9saWJzL3VpL2lucHV0cy9zcmMnXG5pbXBvcnQgeyBVaVdpZGdldHNNb2R1bGUgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9saWJzL3VpL3dpZGdldHMvc3JjJ1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSdcbmltcG9ydCB7IFdpemFyZFN1bW1hcml6ZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy93aXphcmQtc3VtbWFyaXplL3dpemFyZC1zdW1tYXJpemUuY29tcG9uZW50J1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuaW1wb3J0IHsgSHR0cENsaWVudE1vZHVsZSwgSHR0cENsaWVudFhzcmZNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCdcbmltcG9ydCB7IFN0b3JlTW9kdWxlIH0gZnJvbSAnQG5ncngvc3RvcmUnXG5pbXBvcnQgeyBFZmZlY3RzTW9kdWxlIH0gZnJvbSAnQG5ncngvZWZmZWN0cydcbmltcG9ydCAqIGFzIGZyb21FZGl0b3IgZnJvbSAnLi8rc3RhdGUvZWRpdG9yLnJlZHVjZXInXG5pbXBvcnQgeyBFZGl0b3JFZmZlY3RzIH0gZnJvbSAnLi8rc3RhdGUvZWRpdG9yLmVmZmVjdHMnXG5pbXBvcnQgeyBFZGl0b3JGYWNhZGUgfSBmcm9tICcuLytzdGF0ZS9lZGl0b3IuZmFjYWRlJ1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBXaXphcmRDb21wb25lbnQsXG4gICAgV2l6YXJkRmllbGRDb21wb25lbnQsXG4gICAgV2l6YXJkU3VtbWFyaXplQ29tcG9uZW50LFxuICBdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIFVpSW5wdXRzTW9kdWxlLFxuICAgIFVpV2lkZ2V0c01vZHVsZSxcbiAgICBUcmFuc2xhdGVNb2R1bGUuZm9yQ2hpbGQoKSxcbiAgICBNYXREYXRlcGlja2VyTW9kdWxlLFxuICAgIE1hdE5hdGl2ZURhdGVNb2R1bGUsXG4gICAgTWF0Rm9ybUZpZWxkTW9kdWxlLFxuICAgIEh0dHBDbGllbnRNb2R1bGUsXG4gICAgSHR0cENsaWVudFhzcmZNb2R1bGUsXG4gICAgU3RvcmVNb2R1bGUuZm9yRmVhdHVyZShcbiAgICAgIGZyb21FZGl0b3IuRURJVE9SX0ZFQVRVUkVfS0VZLFxuICAgICAgZnJvbUVkaXRvci5lZGl0b3JSZWR1Y2VyXG4gICAgKSxcbiAgICBFZmZlY3RzTW9kdWxlLmZvckZlYXR1cmUoW0VkaXRvckVmZmVjdHNdKSxcbiAgXSxcbiAgZXhwb3J0czogW1dpemFyZENvbXBvbmVudCwgV2l6YXJkU3VtbWFyaXplQ29tcG9uZW50XSxcbiAgcHJvdmlkZXJzOiBbRWRpdG9yRmFjYWRlXSxcbn0pXG5leHBvcnQgY2xhc3MgRmVhdHVyZUVkaXRvck1vZHVsZSB7fVxuZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlcy93aXphcmQuc2VydmljZSdcbmV4cG9ydCAqIGZyb20gJy4vbW9kZWxzL2luZGV4J1xuIl19
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
export const DEFAULT_FIELDS = [
|
|
2
|
+
{
|
|
3
|
+
model: 'title',
|
|
4
|
+
formFieldConfig: {
|
|
5
|
+
labelKey: 'Metadata title',
|
|
6
|
+
type: 'text',
|
|
7
|
+
},
|
|
8
|
+
},
|
|
9
|
+
{
|
|
10
|
+
model: 'abstract',
|
|
11
|
+
formFieldConfig: {
|
|
12
|
+
labelKey: 'Abstract',
|
|
13
|
+
type: 'rich',
|
|
14
|
+
},
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
model: 'uniqueIdentifier',
|
|
18
|
+
formFieldConfig: {
|
|
19
|
+
labelKey: 'Unique identifier',
|
|
20
|
+
type: 'text',
|
|
21
|
+
locked: true,
|
|
22
|
+
},
|
|
23
|
+
},
|
|
24
|
+
{
|
|
25
|
+
model: 'recordUpdated',
|
|
26
|
+
formFieldConfig: {
|
|
27
|
+
labelKey: 'Record Updated',
|
|
28
|
+
type: 'text',
|
|
29
|
+
locked: true,
|
|
30
|
+
},
|
|
31
|
+
onSaveProcess: '${dateNow()}',
|
|
32
|
+
},
|
|
33
|
+
];
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGRzLmNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9lZGl0b3Ivc3JjL2xpYi9maWVsZHMuY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBdUI7SUFDaEQ7UUFDRSxLQUFLLEVBQUUsT0FBTztRQUNkLGVBQWUsRUFBRTtZQUNmLFFBQVEsRUFBRSxnQkFBZ0I7WUFDMUIsSUFBSSxFQUFFLE1BQU07U0FDYjtLQUNGO0lBQ0Q7UUFDRSxLQUFLLEVBQUUsVUFBVTtRQUNqQixlQUFlLEVBQUU7WUFDZixRQUFRLEVBQUUsVUFBVTtZQUNwQixJQUFJLEVBQUUsTUFBTTtTQUNiO0tBQ0Y7SUFDRDtRQUNFLEtBQUssRUFBRSxrQkFBa0I7UUFDekIsZUFBZSxFQUFFO1lBQ2YsUUFBUSxFQUFFLG1CQUFtQjtZQUM3QixJQUFJLEVBQUUsTUFBTTtZQUNaLE1BQU0sRUFBRSxJQUFJO1NBQ2I7S0FDRjtJQUNEO1FBQ0UsS0FBSyxFQUFFLGVBQWU7UUFDdEIsZUFBZSxFQUFFO1lBQ2YsUUFBUSxFQUFFLGdCQUFnQjtZQUMxQixJQUFJLEVBQUUsTUFBTTtZQUNaLE1BQU0sRUFBRSxJQUFJO1NBQ2I7UUFDRCxhQUFhLEVBQUUsY0FBYztLQUM5QjtDQUNGLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFZGl0b3JGaWVsZHNDb25maWcgfSBmcm9tICcuL21vZGVscy9maWVsZHMubW9kZWwnXG5cbmV4cG9ydCBjb25zdCBERUZBVUxUX0ZJRUxEUzogRWRpdG9yRmllbGRzQ29uZmlnID0gW1xuICB7XG4gICAgbW9kZWw6ICd0aXRsZScsXG4gICAgZm9ybUZpZWxkQ29uZmlnOiB7XG4gICAgICBsYWJlbEtleTogJ01ldGFkYXRhIHRpdGxlJyxcbiAgICAgIHR5cGU6ICd0ZXh0JyxcbiAgICB9LFxuICB9LFxuICB7XG4gICAgbW9kZWw6ICdhYnN0cmFjdCcsXG4gICAgZm9ybUZpZWxkQ29uZmlnOiB7XG4gICAgICBsYWJlbEtleTogJ0Fic3RyYWN0JyxcbiAgICAgIHR5cGU6ICdyaWNoJyxcbiAgICB9LFxuICB9LFxuICB7XG4gICAgbW9kZWw6ICd1bmlxdWVJZGVudGlmaWVyJyxcbiAgICBmb3JtRmllbGRDb25maWc6IHtcbiAgICAgIGxhYmVsS2V5OiAnVW5pcXVlIGlkZW50aWZpZXInLFxuICAgICAgdHlwZTogJ3RleHQnLFxuICAgICAgbG9ja2VkOiB0cnVlLFxuICAgIH0sXG4gIH0sXG4gIHtcbiAgICBtb2RlbDogJ3JlY29yZFVwZGF0ZWQnLFxuICAgIGZvcm1GaWVsZENvbmZpZzoge1xuICAgICAgbGFiZWxLZXk6ICdSZWNvcmQgVXBkYXRlZCcsXG4gICAgICB0eXBlOiAndGV4dCcsXG4gICAgICBsb2NrZWQ6IHRydWUsXG4gICAgfSxcbiAgICBvblNhdmVQcm9jZXNzOiAnJHtkYXRlTm93KCl9JyxcbiAgfSxcbl1cbiJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGRzLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL2VkaXRvci9zcmMvbGliL21vZGVscy9maWVsZHMubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZvcm1GaWVsZENvbmZpZyB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvaW5wdXRzL3NyYydcblxuLy8gRXhwcmVzc2lvbnMgc2hvdWxkIGJlIGVuY2xvc2VkIGluIGAke31gIHRvIGJlIHJlY29nbml6ZWQgYXMgc3VjaFxuLy8gZWcuICR7ZGF0ZU5vdygpfVxuZXhwb3J0IHR5cGUgRWRpdG9yRmllbGRFeHByZXNzaW9uID0gYCRcXHske3N0cmluZ319YFxuXG5leHBvcnQgaW50ZXJmYWNlIEVkaXRvckZpZWxkQ29uZmlnIHtcbiAgLy8gY29uZmlndXJhdGlvbiBvZiB0aGUgZm9ybSBmaWVsZCB1c2VkIGFzIHByZXNlbnRhdGlvbjsgb3B0aW9uYWwsIG5vdGhpbmcgc2hvd24gaWYgbm90IGRlZmluZWRcbiAgZm9ybUZpZWxkQ29uZmlnPzogRm9ybUZpZWxkQ29uZmlnXG5cbiAgLy8gbmFtZSBvZiB0aGUgdGFyZ2V0IGZpZWxkIGluIHRoZSByZWNvcmQ7IHdpbGwgbm90IGNoYW5nZSB0aGUgcmVjb3JkIGRpcmVjdGx5IGlmIG5vdCBkZWZpbmVkXG4gIG1vZGVsPzogc3RyaW5nXG5cbiAgLy8gYSBoaWRkZW4gZmllbGQgd29uJ3Qgc2hvdyBidXQgY2FuIHN0aWxsIGJlIHVzZWQgdG8gbW9kaWZ5IHRoZSByZWNvcmRcbiAgLy8gRklYTUU6IGN1cnJlbnRseSB0aGlzIGlzIHJlZHVuZGFudCB3aXRoIGFuIGFic2VuY2Ugb2YgZm9ybUZpZWxkQ29uZmlnIGJ1dCBuZWNlc3NhcnkgZm9yIGNsYXJpdHlcbiAgaGlkZGVuPzogYm9vbGVhblxuXG4gIC8vIHRoZSByZXN1bHQgb2YgdGhpcyBleHByZXNzaW9uIHdpbGwgcmVwbGFjZSB0aGUgZmllbGQgdmFsdWUgb24gc2F2ZVxuICBvblNhdmVQcm9jZXNzPzogRWRpdG9yRmllbGRFeHByZXNzaW9uXG59XG5cbmV4cG9ydCB0eXBlIEVkaXRvckZpZWxkc0NvbmZpZyA9IEVkaXRvckZpZWxkQ29uZmlnW11cblxuZXhwb3J0IHR5cGUgRWRpdG9yRmllbGRWYWx1ZSA9IHN0cmluZyB8IG51bWJlciB8IGJvb2xlYW4gfCB1bmtub3duXG5cbmV4cG9ydCBpbnRlcmZhY2UgRWRpdG9yRmllbGRTdGF0ZSB7XG4gIGNvbmZpZzogRWRpdG9yRmllbGRDb25maWdcbiAgdmFsdWU6IHN0cmluZyB8IG51bWJlciB8IGJvb2xlYW4gfCB1bmtub3duXG59XG4iXX0=
|
|
@@ -1,24 +1,30 @@
|
|
|
1
1
|
import { CommonModule } from '@angular/common';
|
|
2
2
|
import { ChangeDetectionStrategy, Component } from '@angular/core';
|
|
3
|
-
import {
|
|
3
|
+
import { UiInputsModule } from '../../../../../../libs/ui/inputs/src';
|
|
4
|
+
import { EditorFacade } from '../+state/editor.facade';
|
|
4
5
|
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "
|
|
6
|
+
import * as i1 from "../+state/editor.facade";
|
|
6
7
|
import * as i2 from "@angular/common";
|
|
8
|
+
import * as i3 from "../../../../../ui/inputs/src/lib/form-field/form-field.component";
|
|
7
9
|
export class RecordFormComponent {
|
|
8
|
-
constructor(
|
|
9
|
-
this.
|
|
10
|
+
constructor(facade) {
|
|
11
|
+
this.facade = facade;
|
|
12
|
+
this.fields$ = this.facade.recordFields$;
|
|
10
13
|
}
|
|
11
|
-
handleFieldValueChange(
|
|
12
|
-
|
|
14
|
+
handleFieldValueChange(field, newValue) {
|
|
15
|
+
if (!field.config.model) {
|
|
16
|
+
return;
|
|
17
|
+
}
|
|
18
|
+
this.facade.updateRecordField(field.config.model, newValue);
|
|
13
19
|
}
|
|
14
20
|
fieldTracker(index, field) {
|
|
15
21
|
return field.config.model;
|
|
16
22
|
}
|
|
17
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: RecordFormComponent, deps: [{ token: i1.
|
|
18
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: RecordFormComponent, isStandalone: true, selector: "gn-ui-record-form", ngImport: i0, template: "<div class=\"flex flex-col gap-6\">\n <
|
|
23
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: RecordFormComponent, deps: [{ token: i1.EditorFacade }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
24
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: RecordFormComponent, isStandalone: true, selector: "gn-ui-record-form", ngImport: i0, template: "<div class=\"flex flex-col gap-6 p-6\">\n <ng-container *ngFor=\"let field of fields$ | async; trackBy: fieldTracker\">\n <gn-ui-form-field\n *ngIf=\"field.config.formFieldConfig && !field.config.hidden\"\n [config]=\"field.config.formFieldConfig\"\n [value]=\"field.value\"\n (valueChange)=\"handleFieldValueChange(field, $event)\"\n ></gn-ui-form-field>\n </ng-container>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "ngmodule", type: UiInputsModule }, { kind: "component", type: i3.FormFieldComponent, selector: "gn-ui-form-field", inputs: ["config", "value"], outputs: ["valueChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
19
25
|
}
|
|
20
26
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: RecordFormComponent, decorators: [{
|
|
21
27
|
type: Component,
|
|
22
|
-
args: [{ selector: 'gn-ui-record-form', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule], template: "<div class=\"flex flex-col gap-6\">\n <
|
|
23
|
-
}], ctorParameters: function () { return [{ type: i1.
|
|
24
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
28
|
+
args: [{ selector: 'gn-ui-record-form', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule, UiInputsModule], template: "<div class=\"flex flex-col gap-6 p-6\">\n <ng-container *ngFor=\"let field of fields$ | async; trackBy: fieldTracker\">\n <gn-ui-form-field\n *ngIf=\"field.config.formFieldConfig && !field.config.hidden\"\n [config]=\"field.config.formFieldConfig\"\n [value]=\"field.value\"\n (valueChange)=\"handleFieldValueChange(field, $event)\"\n ></gn-ui-form-field>\n </ng-container>\n</div>\n" }]
|
|
29
|
+
}], ctorParameters: function () { return [{ type: i1.EditorFacade }]; } });
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVjb3JkLWZvcm0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL2VkaXRvci9zcmMvbGliL3JlY29yZC1mb3JtL3JlY29yZC1mb3JtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9lZGl0b3Ivc3JjL2xpYi9yZWNvcmQtZm9ybS9yZWNvcmQtZm9ybS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDOUMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUNsRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sc0NBQXNDLENBQUE7QUFDckUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHlCQUF5QixDQUFBOzs7OztBQVd0RCxNQUFNLE9BQU8sbUJBQW1CO0lBRzlCLFlBQW1CLE1BQW9CO1FBQXBCLFdBQU0sR0FBTixNQUFNLENBQWM7UUFGdkMsWUFBTyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFBO0lBRU8sQ0FBQztJQUUzQyxzQkFBc0IsQ0FBQyxLQUF1QixFQUFFLFFBQTBCO1FBQ3hFLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRTtZQUN2QixPQUFNO1NBQ1A7UUFDRCxJQUFJLENBQUMsTUFBTSxDQUFDLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLFFBQVEsQ0FBQyxDQUFBO0lBQzdELENBQUM7SUFFRCxZQUFZLENBQUMsS0FBYSxFQUFFLEtBQXVCO1FBQ2pELE9BQU8sS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUE7SUFDM0IsQ0FBQzs4R0FkVSxtQkFBbUI7a0dBQW5CLG1CQUFtQiw2RUNkaEMsNlpBVUEseURERVksWUFBWSxvVEFBRSxjQUFjOzsyRkFFM0IsbUJBQW1CO2tCQVIvQixTQUFTOytCQUNFLG1CQUFtQixtQkFHWix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IFVpSW5wdXRzTW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9pbnB1dHMvc3JjJ1xuaW1wb3J0IHsgRWRpdG9yRmFjYWRlIH0gZnJvbSAnLi4vK3N0YXRlL2VkaXRvci5mYWNhZGUnXG5pbXBvcnQgeyBFZGl0b3JGaWVsZFN0YXRlLCBFZGl0b3JGaWVsZFZhbHVlIH0gZnJvbSAnLi4vbW9kZWxzL2ZpZWxkcy5tb2RlbCdcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ24tdWktcmVjb3JkLWZvcm0nLFxuICB0ZW1wbGF0ZVVybDogJy4vcmVjb3JkLWZvcm0uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9yZWNvcmQtZm9ybS5jb21wb25lbnQuY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBVaUlucHV0c01vZHVsZV0sXG59KVxuZXhwb3J0IGNsYXNzIFJlY29yZEZvcm1Db21wb25lbnQge1xuICBmaWVsZHMkID0gdGhpcy5mYWNhZGUucmVjb3JkRmllbGRzJFxuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBmYWNhZGU6IEVkaXRvckZhY2FkZSkge31cblxuICBoYW5kbGVGaWVsZFZhbHVlQ2hhbmdlKGZpZWxkOiBFZGl0b3JGaWVsZFN0YXRlLCBuZXdWYWx1ZTogRWRpdG9yRmllbGRWYWx1ZSkge1xuICAgIGlmICghZmllbGQuY29uZmlnLm1vZGVsKSB7XG4gICAgICByZXR1cm5cbiAgICB9XG4gICAgdGhpcy5mYWNhZGUudXBkYXRlUmVjb3JkRmllbGQoZmllbGQuY29uZmlnLm1vZGVsLCBuZXdWYWx1ZSlcbiAgfVxuXG4gIGZpZWxkVHJhY2tlcihpbmRleDogbnVtYmVyLCBmaWVsZDogRWRpdG9yRmllbGRTdGF0ZSkge1xuICAgIHJldHVybiBmaWVsZC5jb25maWcubW9kZWxcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wgZ2FwLTYgcC02XCI+XG4gIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGZpZWxkIG9mIGZpZWxkcyQgfCBhc3luYzsgdHJhY2tCeTogZmllbGRUcmFja2VyXCI+XG4gICAgPGduLXVpLWZvcm0tZmllbGRcbiAgICAgICpuZ0lmPVwiZmllbGQuY29uZmlnLmZvcm1GaWVsZENvbmZpZyAmJiAhZmllbGQuY29uZmlnLmhpZGRlblwiXG4gICAgICBbY29uZmlnXT1cImZpZWxkLmNvbmZpZy5mb3JtRmllbGRDb25maWdcIlxuICAgICAgW3ZhbHVlXT1cImZpZWxkLnZhbHVlXCJcbiAgICAgICh2YWx1ZUNoYW5nZSk9XCJoYW5kbGVGaWVsZFZhbHVlQ2hhbmdlKGZpZWxkLCAkZXZlbnQpXCJcbiAgICA+PC9nbi11aS1mb3JtLWZpZWxkPlxuICA8L25nLWNvbnRhaW5lcj5cbjwvZGl2PlxuIl19
|