geonetwork-ui 2.6.0-dev.b306f1194 → 2.6.0-dev.ceb4be4c1
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/index.mjs +2 -1
- package/esm2022/libs/api/metadata-converter/src/lib/base.converter.mjs +1 -1
- package/esm2022/libs/api/metadata-converter/src/lib/common/distribution.mapper.mjs +3 -1
- package/esm2022/libs/api/metadata-converter/src/lib/common/resource-types.mjs +17 -15
- package/esm2022/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.mjs +44 -6
- package/esm2022/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.mjs +1 -1
- package/esm2022/libs/api/metadata-converter/src/lib/iso19139/read-parts.mjs +4 -4
- package/esm2022/libs/api/metadata-converter/src/lib/iso19139/write-parts.mjs +4 -4
- package/esm2022/libs/api/repository/src/lib/gn4/elasticsearch/constant.mjs +2 -1
- package/esm2022/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.mjs +4 -12
- package/esm2022/libs/api/repository/src/lib/gn4/gn4-repository.mjs +29 -5
- package/esm2022/libs/api/repository/src/lib/gn4/gn4.provider.mjs +7 -1
- package/esm2022/libs/common/domain/src/lib/model/record/metadata.model.mjs +1 -1
- package/esm2022/libs/common/domain/src/lib/repository/records-repository.interface.mjs +1 -1
- package/esm2022/libs/feature/dataviz/src/lib/chart-view/chart-view.component.mjs +49 -9
- package/esm2022/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.mjs +2 -2
- package/esm2022/libs/feature/dataviz/src/lib/service/data.service.mjs +32 -2
- package/esm2022/libs/feature/dataviz/src/lib/table-view/table-view.component.mjs +29 -6
- package/esm2022/libs/feature/editor/src/index.mjs +2 -1
- package/esm2022/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.mjs +18 -0
- package/esm2022/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.mjs +2 -3
- package/esm2022/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.mjs +1 -1
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.mjs +5 -5
- package/esm2022/libs/feature/record/src/index.mjs +2 -4
- package/esm2022/libs/feature/record/src/lib/data-view/data-view.component.mjs +3 -3
- package/esm2022/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.mjs +5 -9
- package/esm2022/libs/feature/record/src/lib/data-view-share/data-view-share.component.mjs +3 -3
- package/esm2022/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.mjs +7 -11
- package/esm2022/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.mjs +6 -3
- package/esm2022/libs/feature/record/src/lib/map-view/map-view.component.mjs +38 -7
- package/esm2022/libs/feature/record/src/lib/record-meta/record-meta.component.mjs +1 -1
- package/esm2022/libs/feature/record/src/lib/state/mdview.actions.mjs +3 -1
- package/esm2022/libs/feature/record/src/lib/state/mdview.effects.mjs +14 -5
- package/esm2022/libs/feature/record/src/lib/state/mdview.facade.mjs +13 -15
- package/esm2022/libs/feature/record/src/lib/state/mdview.reducer.mjs +7 -1
- package/esm2022/libs/feature/record/src/lib/state/mdview.selectors.mjs +3 -1
- package/esm2022/libs/feature/router/src/lib/default/constants.mjs +3 -1
- package/esm2022/libs/feature/router/src/lib/default/router.config.mjs +1 -1
- package/esm2022/libs/feature/router/src/lib/default/router.service.mjs +10 -2
- package/esm2022/libs/feature/router/src/lib/default/state/router.facade.mjs +9 -3
- package/esm2022/libs/feature/search/src/index.mjs +2 -2
- package/esm2022/libs/feature/search/src/lib/constants.mjs +2 -1
- package/esm2022/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.mjs +8 -7
- package/esm2022/libs/feature/search/src/lib/feature-search.module.mjs +13 -19
- package/esm2022/libs/feature/search/src/lib/record-url.token.mjs +4 -2
- package/esm2022/libs/feature/search/src/lib/results-hits/results-hits.container.component.mjs +41 -0
- package/esm2022/libs/feature/search/src/lib/results-list/results-list.container.component.mjs +30 -10
- package/esm2022/libs/feature/search/src/lib/utils/service/fields.mjs +70 -1
- package/esm2022/libs/feature/search/src/lib/utils/service/fields.service.mjs +4 -3
- package/esm2022/libs/ui/catalog/src/lib/language-switcher/language-switcher.component.mjs +3 -3
- package/esm2022/libs/ui/dataviz/src/lib/chart/chart.component.mjs +5 -3
- package/esm2022/libs/ui/dataviz/src/lib/data-table/data-table.component.mjs +11 -6
- package/esm2022/libs/ui/elements/src/index.mjs +5 -1
- package/esm2022/libs/ui/elements/src/lib/api-card/api-card.component.mjs +3 -3
- package/esm2022/libs/ui/elements/src/lib/download-item/download-item.component.mjs +3 -3
- package/esm2022/libs/ui/elements/src/lib/downloads-list/downloads-list.component.mjs +18 -7
- package/esm2022/libs/ui/elements/src/lib/geo-data-badge/geo-data-badge.component.mjs +55 -0
- package/esm2022/libs/ui/elements/src/lib/image-overlay-preview/image-overlay-preview.component.mjs +3 -3
- package/esm2022/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.mjs +27 -53
- package/esm2022/libs/ui/elements/src/lib/kind-badge/kind-badge.component.mjs +68 -0
- package/esm2022/libs/ui/elements/src/lib/link-card/link-card.component.mjs +3 -3
- package/esm2022/libs/ui/elements/src/lib/metadata-catalog/metadata-catalog.component.mjs +3 -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 +8 -5
- package/esm2022/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.mjs +3 -3
- package/esm2022/libs/ui/elements/src/lib/record-feature-catalog/feature-catalog-list/feature-catalog-list.component.mjs +51 -0
- package/esm2022/libs/ui/elements/src/lib/related-record-card/related-record-card.component.mjs +17 -7
- package/esm2022/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.mjs +169 -0
- package/esm2022/libs/ui/elements/src/lib/ui-elements.module.mjs +22 -4
- package/esm2022/libs/ui/inputs/src/index.mjs +3 -2
- package/esm2022/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.mjs +3 -3
- package/esm2022/libs/ui/inputs/src/lib/button/button.component.mjs +2 -2
- 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/inline-filter/inline-filter.component.mjs +42 -0
- package/esm2022/libs/ui/inputs/src/lib/inline-filter/inline-filter.model.mjs +2 -0
- package/esm2022/libs/ui/inputs/src/lib/search-feature-catalog/search-feature-catalog.component.mjs +68 -0
- package/esm2022/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.mjs +4 -3
- package/esm2022/libs/ui/inputs/src/lib/ui-inputs.module.mjs +8 -9
- package/esm2022/libs/ui/layout/src/index.mjs +2 -1
- package/esm2022/libs/ui/layout/src/lib/anchor-link/anchor-link.directive.mjs +43 -3
- package/esm2022/libs/ui/layout/src/lib/block-list/block-list.component.mjs +48 -11
- package/esm2022/libs/ui/layout/src/lib/carousel/carousel.component.mjs +3 -3
- package/esm2022/libs/ui/layout/src/lib/expandable-panel/expandable-panel.component.mjs +34 -13
- package/esm2022/libs/ui/layout/src/lib/interactive-table/interactive-table.component.mjs +15 -3
- package/esm2022/libs/ui/layout/src/lib/max-lines/max-lines.component.mjs +3 -3
- package/esm2022/libs/ui/layout/src/lib/previous-next-buttons/previous-next-buttons.component.mjs +6 -6
- package/esm2022/libs/ui/layout/src/lib/truncated-text/truncated-text.component.mjs +107 -0
- package/esm2022/libs/ui/layout/src/lib/ui-layout.module.mjs +4 -12
- package/esm2022/libs/ui/map/src/index.mjs +2 -1
- package/esm2022/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.mjs +29 -4
- package/esm2022/libs/ui/map/src/lib/components/spatial-extent/spatial-extent.component.mjs +80 -0
- package/esm2022/libs/ui/search/src/index.mjs +2 -1
- package/esm2022/libs/ui/search/src/lib/record-preview-row/record-preview-row.component.mjs +4 -8
- package/esm2022/libs/ui/search/src/lib/results-hits-number/results-hits-number.component.mjs +3 -3
- package/esm2022/libs/ui/search/src/lib/results-hits-search-kind/results-hits-search-kind.component.mjs +53 -0
- package/esm2022/libs/ui/search/src/lib/results-list/results-layout.config.mjs +2 -2
- package/esm2022/libs/ui/search/src/lib/results-list/results-list.component.mjs +3 -3
- package/esm2022/libs/ui/search/src/lib/results-table/results-table.component.mjs +29 -15
- package/esm2022/libs/ui/search/src/lib/ui-search.module.mjs +11 -3
- package/esm2022/libs/ui/widgets/src/lib/progress-bar/progress-bar.component.mjs +3 -3
- package/esm2022/libs/util/app-config/src/lib/app-config.mjs +2 -1
- package/esm2022/libs/util/app-config/src/lib/fixtures.mjs +2 -1
- package/esm2022/libs/util/shared/src/index.mjs +2 -1
- package/esm2022/libs/util/shared/src/lib/gn-ui-version.mjs +6 -0
- package/esm2022/libs/util/shared/src/lib/links/link-classifier.service.mjs +5 -1
- package/esm2022/libs/util/shared/src/lib/links/link-utils.mjs +16 -6
- package/esm2022/translations/de.json +41 -6
- package/esm2022/translations/en.json +43 -8
- package/esm2022/translations/es.json +41 -6
- package/esm2022/translations/fr.json +42 -7
- package/esm2022/translations/it.json +44 -9
- package/esm2022/translations/nl.json +41 -6
- package/esm2022/translations/pt.json +41 -6
- package/fesm2022/geonetwork-ui.mjs +2418 -1039
- package/fesm2022/geonetwork-ui.mjs.map +1 -1
- package/libs/api/metadata-converter/src/index.d.ts +1 -0
- package/libs/api/metadata-converter/src/index.d.ts.map +1 -1
- package/libs/api/metadata-converter/src/lib/base.converter.d.ts.map +1 -1
- package/libs/api/metadata-converter/src/lib/common/distribution.mapper.d.ts.map +1 -1
- package/libs/api/metadata-converter/src/lib/common/resource-types.d.ts +21 -0
- package/libs/api/metadata-converter/src/lib/common/resource-types.d.ts.map +1 -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/types/metadata.model.d.ts +0 -1
- package/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.d.ts.map +1 -1
- package/libs/api/metadata-converter/src/lib/iso19139/read-parts.d.ts.map +1 -1
- package/libs/api/repository/src/lib/gn4/elasticsearch/constant.d.ts.map +1 -1
- package/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.d.ts +1 -1
- package/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.d.ts.map +1 -1
- package/libs/api/repository/src/lib/gn4/gn4-repository.d.ts +3 -0
- package/libs/api/repository/src/lib/gn4/gn4-repository.d.ts.map +1 -1
- package/libs/api/repository/src/lib/gn4/gn4.provider.d.ts.map +1 -1
- package/libs/common/domain/src/lib/model/record/metadata.model.d.ts +9 -3
- package/libs/common/domain/src/lib/model/record/metadata.model.d.ts.map +1 -1
- package/libs/common/domain/src/lib/repository/records-repository.interface.d.ts +2 -0
- package/libs/common/domain/src/lib/repository/records-repository.interface.d.ts.map +1 -1
- package/libs/feature/dataviz/src/lib/chart-view/chart-view.component.d.ts +12 -8
- package/libs/feature/dataviz/src/lib/chart-view/chart-view.component.d.ts.map +1 -1
- package/libs/feature/dataviz/src/lib/service/data.service.d.ts +1 -0
- package/libs/feature/dataviz/src/lib/service/data.service.d.ts.map +1 -1
- package/libs/feature/dataviz/src/lib/table-view/table-view.component.d.ts +6 -3
- package/libs/feature/dataviz/src/lib/table-view/table-view.component.d.ts.map +1 -1
- package/libs/feature/editor/src/index.d.ts +1 -0
- package/libs/feature/editor/src/index.d.ts.map +1 -1
- package/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.d.ts +7 -0
- package/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.d.ts.map +1 -0
- package/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.d.ts.map +1 -1
- package/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.d.ts +6 -6
- package/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.d.ts.map +1 -1
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.d.ts.map +1 -1
- package/libs/feature/record/src/index.d.ts +1 -3
- package/libs/feature/record/src/index.d.ts.map +1 -1
- package/libs/feature/record/src/lib/data-view/data-view.component.d.ts +9 -1
- package/libs/feature/record/src/lib/data-view/data-view.component.d.ts.map +1 -1
- package/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.d.ts +2 -3
- package/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.d.ts.map +1 -1
- package/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.d.ts +1 -2
- package/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.d.ts.map +1 -1
- package/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.d.ts +2 -1
- package/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.d.ts.map +1 -1
- package/libs/feature/record/src/lib/map-view/map-view.component.d.ts.map +1 -1
- package/libs/feature/record/src/lib/record-meta/record-meta.component.d.ts +2 -2
- package/libs/feature/record/src/lib/state/mdview.actions.d.ts +10 -0
- package/libs/feature/record/src/lib/state/mdview.actions.d.ts.map +1 -1
- package/libs/feature/record/src/lib/state/mdview.effects.d.ts +9 -1
- package/libs/feature/record/src/lib/state/mdview.effects.d.ts.map +1 -1
- package/libs/feature/record/src/lib/state/mdview.facade.d.ts +28 -21
- package/libs/feature/record/src/lib/state/mdview.facade.d.ts.map +1 -1
- package/libs/feature/record/src/lib/state/mdview.reducer.d.ts +2 -0
- package/libs/feature/record/src/lib/state/mdview.reducer.d.ts.map +1 -1
- package/libs/feature/record/src/lib/state/mdview.selectors.d.ts +2 -0
- package/libs/feature/record/src/lib/state/mdview.selectors.d.ts.map +1 -1
- package/libs/feature/router/src/lib/default/constants.d.ts +2 -0
- package/libs/feature/router/src/lib/default/constants.d.ts.map +1 -1
- package/libs/feature/router/src/lib/default/router.config.d.ts +2 -0
- package/libs/feature/router/src/lib/default/router.config.d.ts.map +1 -1
- package/libs/feature/router/src/lib/default/router.service.d.ts.map +1 -1
- package/libs/feature/router/src/lib/default/state/router.facade.d.ts +5 -0
- package/libs/feature/router/src/lib/default/state/router.facade.d.ts.map +1 -1
- package/libs/feature/search/src/index.d.ts +1 -1
- package/libs/feature/search/src/index.d.ts.map +1 -1
- package/libs/feature/search/src/lib/constants.d.ts.map +1 -1
- 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 +4 -2
- package/libs/feature/search/src/lib/feature-search.module.d.ts.map +1 -1
- package/libs/feature/search/src/lib/record-url.token.d.ts +3 -1
- package/libs/feature/search/src/lib/record-url.token.d.ts.map +1 -1
- package/libs/feature/search/src/lib/results-hits/results-hits.container.component.d.ts +21 -0
- package/libs/feature/search/src/lib/results-hits/results-hits.container.component.d.ts.map +1 -0
- package/libs/feature/search/src/lib/results-list/results-list.container.component.d.ts +5 -3
- package/libs/feature/search/src/lib/results-list/results-list.container.component.d.ts.map +1 -1
- package/libs/feature/search/src/lib/utils/service/fields.d.ts +21 -0
- 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 +2 -1
- package/libs/ui/dataviz/src/lib/chart/chart.component.d.ts.map +1 -1
- package/libs/ui/dataviz/src/lib/data-table/data-table.component.d.ts +6 -1
- package/libs/ui/dataviz/src/lib/data-table/data-table.component.d.ts.map +1 -1
- package/libs/ui/elements/src/index.d.ts +4 -0
- package/libs/ui/elements/src/index.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/download-item/download-item.component.d.ts +1 -1
- package/libs/ui/elements/src/lib/download-item/download-item.component.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/downloads-list/downloads-list.component.d.ts +7 -1
- package/libs/ui/elements/src/lib/downloads-list/downloads-list.component.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/geo-data-badge/geo-data-badge.component.d.ts +15 -0
- package/libs/ui/elements/src/lib/geo-data-badge/geo-data-badge.component.d.ts.map +1 -0
- package/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.d.ts +3 -7
- package/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/kind-badge/kind-badge.component.d.ts +13 -0
- package/libs/ui/elements/src/lib/kind-badge/kind-badge.component.d.ts.map +1 -0
- package/libs/ui/elements/src/lib/link-card/link-card.component.d.ts +1 -1
- package/libs/ui/elements/src/lib/link-card/link-card.component.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/metadata-info/metadata-info.component.d.ts +2 -2
- package/libs/ui/elements/src/lib/metadata-info/metadata-info.component.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/record-feature-catalog/feature-catalog-list/feature-catalog-list.component.d.ts +16 -0
- package/libs/ui/elements/src/lib/record-feature-catalog/feature-catalog-list/feature-catalog-list.component.d.ts.map +1 -0
- package/libs/ui/elements/src/lib/related-record-card/related-record-card.component.d.ts +8 -1
- package/libs/ui/elements/src/lib/related-record-card/related-record-card.component.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.d.ts +31 -0
- package/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.d.ts.map +1 -0
- package/libs/ui/elements/src/lib/ui-elements.module.d.ts +4 -1
- package/libs/ui/elements/src/lib/ui-elements.module.d.ts.map +1 -1
- package/libs/ui/inputs/src/index.d.ts +2 -1
- 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/inline-filter/inline-filter.component.d.ts +14 -0
- package/libs/ui/inputs/src/lib/inline-filter/inline-filter.component.d.ts.map +1 -0
- package/libs/ui/inputs/src/lib/inline-filter/inline-filter.model.d.ts +6 -0
- package/libs/ui/inputs/src/lib/inline-filter/inline-filter.model.d.ts.map +1 -0
- package/libs/ui/inputs/src/lib/search-feature-catalog/search-feature-catalog.component.d.ts +17 -0
- package/libs/ui/inputs/src/lib/search-feature-catalog/search-feature-catalog.component.d.ts.map +1 -0
- package/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.d.ts.map +1 -1
- package/libs/ui/inputs/src/lib/ui-inputs.module.d.ts +25 -24
- package/libs/ui/inputs/src/lib/ui-inputs.module.d.ts.map +1 -1
- package/libs/ui/layout/src/index.d.ts +1 -0
- package/libs/ui/layout/src/index.d.ts.map +1 -1
- package/libs/ui/layout/src/lib/anchor-link/anchor-link.directive.d.ts +10 -3
- package/libs/ui/layout/src/lib/anchor-link/anchor-link.directive.d.ts.map +1 -1
- package/libs/ui/layout/src/lib/block-list/block-list.component.d.ts +9 -2
- package/libs/ui/layout/src/lib/block-list/block-list.component.d.ts.map +1 -1
- package/libs/ui/layout/src/lib/expandable-panel/expandable-panel.component.d.ts +15 -8
- package/libs/ui/layout/src/lib/expandable-panel/expandable-panel.component.d.ts.map +1 -1
- package/libs/ui/layout/src/lib/interactive-table/interactive-table.component.d.ts +2 -0
- package/libs/ui/layout/src/lib/interactive-table/interactive-table.component.d.ts.map +1 -1
- package/libs/ui/layout/src/lib/truncated-text/truncated-text.component.d.ts +27 -0
- package/libs/ui/layout/src/lib/truncated-text/truncated-text.component.d.ts.map +1 -0
- package/libs/ui/layout/src/lib/ui-layout.module.d.ts.map +1 -1
- package/libs/ui/map/src/index.d.ts +1 -0
- package/libs/ui/map/src/index.d.ts.map +1 -1
- package/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.d.ts +6 -2
- package/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.d.ts.map +1 -1
- package/libs/ui/map/src/lib/components/spatial-extent/spatial-extent.component.d.ts +15 -0
- package/libs/ui/map/src/lib/components/spatial-extent/spatial-extent.component.d.ts.map +1 -0
- package/libs/ui/search/src/index.d.ts +1 -0
- package/libs/ui/search/src/index.d.ts.map +1 -1
- package/libs/ui/search/src/lib/results-hits-search-kind/results-hits-search-kind.component.d.ts +17 -0
- package/libs/ui/search/src/lib/results-hits-search-kind/results-hits-search-kind.component.d.ts.map +1 -0
- package/libs/ui/search/src/lib/results-list/results-list.component.d.ts.map +1 -1
- package/libs/ui/search/src/lib/results-table/results-table.component.d.ts +5 -1
- package/libs/ui/search/src/lib/results-table/results-table.component.d.ts.map +1 -1
- package/libs/ui/search/src/lib/ui-search.module.d.ts +21 -19
- package/libs/ui/search/src/lib/ui-search.module.d.ts.map +1 -1
- package/libs/util/app-config/src/lib/app-config.d.ts.map +1 -1
- package/libs/util/app-config/src/lib/fixtures.d.ts.map +1 -1
- package/libs/util/shared/src/index.d.ts +1 -0
- package/libs/util/shared/src/index.d.ts.map +1 -1
- package/libs/util/shared/src/lib/gn-ui-version.d.ts +3 -0
- package/libs/util/shared/src/lib/gn-ui-version.d.ts.map +1 -0
- package/libs/util/shared/src/lib/links/link-classifier.service.d.ts +3 -3
- package/libs/util/shared/src/lib/links/link-classifier.service.d.ts.map +1 -1
- package/libs/util/shared/src/lib/links/link-utils.d.ts +14 -7
- package/libs/util/shared/src/lib/links/link-utils.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/libs/api/metadata-converter/src/index.ts +1 -0
- package/src/libs/api/metadata-converter/src/lib/base.converter.ts +1 -4
- package/src/libs/api/metadata-converter/src/lib/common/distribution.mapper.ts +1 -0
- package/src/libs/api/metadata-converter/src/lib/common/resource-types.ts +29 -15
- package/src/libs/api/metadata-converter/src/lib/fixtures/geo2france.records.service+eaux-usees.ts +2 -2
- package/src/libs/api/metadata-converter/src/lib/fixtures/geocat-ch.records.ts +2 -2
- package/src/libs/api/metadata-converter/src/lib/fixtures/metawal.records.ts +2 -2
- package/src/libs/api/metadata-converter/src/lib/fixtures/wallonie.records.service+napitswallonia.ts +2 -2
- package/src/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.ts +63 -6
- package/src/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.ts +0 -1
- package/src/libs/api/metadata-converter/src/lib/iso19139/read-parts.ts +4 -3
- package/src/libs/api/metadata-converter/src/lib/iso19139/write-parts.ts +3 -3
- package/src/libs/api/repository/src/lib/gn4/elasticsearch/constant.ts +1 -0
- package/src/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.ts +3 -11
- package/src/libs/api/repository/src/lib/gn4/gn4-repository.ts +50 -5
- package/src/libs/api/repository/src/lib/gn4/gn4.provider.ts +6 -0
- package/src/libs/common/domain/src/lib/model/record/metadata.model.ts +14 -4
- package/src/libs/common/domain/src/lib/repository/records-repository.interface.ts +2 -0
- package/src/libs/common/fixtures/src/lib/elasticsearch/metadata-links.fixtures.ts +36 -26
- package/src/libs/common/fixtures/src/lib/link.fixtures.ts +16 -2
- package/src/libs/common/fixtures/src/lib/record-link.fixtures.ts +5 -5
- package/src/libs/common/fixtures/src/lib/records.fixtures.ts +1 -1
- package/src/libs/feature/dataviz/src/lib/chart-view/chart-view.component.html +12 -9
- package/src/libs/feature/dataviz/src/lib/chart-view/chart-view.component.ts +58 -10
- package/src/libs/feature/dataviz/src/lib/service/data.service.ts +37 -0
- package/src/libs/feature/dataviz/src/lib/table-view/table-view.component.html +1 -0
- package/src/libs/feature/dataviz/src/lib/table-view/table-view.component.ts +31 -1
- package/src/libs/feature/editor/src/index.ts +1 -0
- package/src/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.html +14 -0
- package/src/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.ts +15 -0
- package/src/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.ts +1 -2
- package/src/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.ts +2 -2
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.html +2 -2
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.ts +2 -2
- package/src/libs/feature/record/src/index.ts +1 -3
- package/src/libs/feature/record/src/lib/data-view/data-view.component.html +16 -10
- package/src/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.ts +2 -3
- package/src/libs/feature/record/src/lib/data-view-share/data-view-share.component.html +1 -1
- package/src/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.ts +4 -5
- package/src/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.html +2 -2
- package/src/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.ts +1 -0
- package/src/libs/feature/record/src/lib/map-view/map-view.component.html +25 -16
- package/src/libs/feature/record/src/lib/map-view/map-view.component.ts +40 -4
- package/src/libs/feature/record/src/lib/record-meta/record-meta.component.ts +2 -2
- package/src/libs/feature/record/src/lib/state/mdview.actions.ts +10 -0
- package/src/libs/feature/record/src/lib/state/mdview.effects.ts +27 -3
- package/src/libs/feature/record/src/lib/state/mdview.facade.ts +21 -17
- package/src/libs/feature/record/src/lib/state/mdview.reducer.ts +12 -0
- package/src/libs/feature/record/src/lib/state/mdview.selectors.ts +9 -0
- package/src/libs/feature/router/src/lib/default/constants.ts +2 -0
- package/src/libs/feature/router/src/lib/default/router.config.ts +2 -0
- package/src/libs/feature/router/src/lib/default/router.service.ts +10 -0
- package/src/libs/feature/router/src/lib/default/state/router.facade.ts +10 -1
- package/src/libs/feature/search/src/index.ts +1 -1
- package/src/libs/feature/search/src/lib/constants.ts +1 -0
- package/src/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.html +0 -6
- package/src/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.ts +16 -8
- package/src/libs/feature/search/src/lib/feature-search.module.ts +9 -10
- package/src/libs/feature/search/src/lib/record-url.token.ts +10 -1
- package/src/libs/feature/search/src/lib/results-hits/results-hits.container.component.css +0 -0
- package/src/libs/feature/search/src/lib/results-hits/results-hits.container.component.html +16 -0
- package/src/libs/feature/search/src/lib/results-hits/results-hits.container.component.ts +59 -0
- package/src/libs/feature/search/src/lib/results-list/results-list.container.component.css +6 -0
- package/src/libs/feature/search/src/lib/results-list/results-list.container.component.html +1 -0
- package/src/libs/feature/search/src/lib/results-list/results-list.container.component.ts +26 -5
- package/src/libs/feature/search/src/lib/utils/service/fields.service.ts +4 -5
- package/src/libs/feature/search/src/lib/utils/service/fields.ts +99 -0
- package/src/libs/ui/catalog/src/lib/language-switcher/language-switcher.component.html +1 -1
- package/src/libs/ui/dataviz/src/lib/chart/chart.component.ts +2 -1
- package/src/libs/ui/dataviz/src/lib/data-table/data-table.component.html +6 -3
- package/src/libs/ui/dataviz/src/lib/data-table/data-table.component.ts +5 -4
- package/src/libs/ui/elements/src/index.ts +4 -0
- package/src/libs/ui/elements/src/lib/api-card/api-card.component.html +4 -4
- package/src/libs/ui/elements/src/lib/download-item/download-item.component.html +8 -5
- package/src/libs/ui/elements/src/lib/download-item/download-item.component.ts +2 -2
- package/src/libs/ui/elements/src/lib/downloads-list/downloads-list.component.html +38 -7
- package/src/libs/ui/elements/src/lib/downloads-list/downloads-list.component.ts +29 -2
- package/src/libs/ui/elements/src/lib/geo-data-badge/geo-data-badge.component.css +4 -0
- package/src/libs/ui/elements/src/lib/geo-data-badge/geo-data-badge.component.html +13 -0
- package/src/libs/ui/elements/src/lib/geo-data-badge/geo-data-badge.component.ts +54 -0
- package/src/libs/ui/elements/src/lib/image-overlay-preview/image-overlay-preview.component.html +1 -1
- package/src/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.html +133 -138
- package/src/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.ts +19 -47
- package/src/libs/ui/elements/src/lib/kind-badge/kind-badge.component.css +6 -0
- package/src/libs/ui/elements/src/lib/kind-badge/kind-badge.component.html +11 -0
- package/src/libs/ui/elements/src/lib/kind-badge/kind-badge.component.ts +70 -0
- package/src/libs/ui/elements/src/lib/link-card/link-card.component.html +5 -2
- package/src/libs/ui/elements/src/lib/link-card/link-card.component.ts +3 -7
- package/src/libs/ui/elements/src/lib/metadata-catalog/metadata-catalog.component.html +3 -5
- package/src/libs/ui/elements/src/lib/metadata-contact/metadata-contact.component.html +12 -9
- package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.css +9 -0
- package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.html +24 -7
- package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.ts +12 -4
- package/src/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.html +2 -3
- package/src/libs/ui/elements/src/lib/record-feature-catalog/feature-catalog-list/feature-catalog-list.component.html +48 -0
- package/src/libs/ui/elements/src/lib/record-feature-catalog/feature-catalog-list/feature-catalog-list.component.ts +52 -0
- package/src/libs/ui/elements/src/lib/related-record-card/related-record-card.component.html +8 -29
- package/src/libs/ui/elements/src/lib/related-record-card/related-record-card.component.ts +14 -1
- package/src/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.css +0 -0
- package/src/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.html +110 -0
- package/src/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.ts +191 -0
- package/src/libs/ui/elements/src/lib/ui-elements.module.ts +9 -1
- package/src/libs/ui/inputs/src/index.ts +2 -1
- package/src/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.html +1 -1
- package/src/libs/ui/inputs/src/lib/button/button.component.ts +2 -2
- package/src/libs/ui/inputs/src/lib/dropdown-multiselect/dropdown-multiselect.component.html +1 -1
- package/src/libs/ui/inputs/src/lib/dropdown-selector/dropdown-selector.component.html +1 -1
- package/src/libs/ui/inputs/src/lib/inline-filter/inline-filter.component.html +23 -0
- package/src/libs/ui/inputs/src/lib/inline-filter/inline-filter.component.ts +44 -0
- package/src/libs/ui/inputs/src/lib/inline-filter/inline-filter.model.ts +5 -0
- package/src/libs/ui/inputs/src/lib/search-feature-catalog/search-feature-catalog.component.css +0 -0
- package/src/libs/ui/inputs/src/lib/search-feature-catalog/search-feature-catalog.component.html +43 -0
- package/src/libs/ui/inputs/src/lib/search-feature-catalog/search-feature-catalog.component.ts +77 -0
- package/src/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.html +7 -8
- package/src/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.ts +2 -1
- package/src/libs/ui/inputs/src/lib/ui-inputs.module.ts +3 -3
- package/src/libs/ui/layout/src/index.ts +1 -0
- package/src/libs/ui/layout/src/lib/anchor-link/anchor-link.directive.ts +46 -2
- package/src/libs/ui/layout/src/lib/block-list/block-list.component.css +22 -0
- package/src/libs/ui/layout/src/lib/block-list/block-list.component.html +2 -2
- package/src/libs/ui/layout/src/lib/block-list/block-list.component.ts +43 -5
- package/src/libs/ui/layout/src/lib/carousel/carousel.component.css +0 -1
- package/src/libs/ui/layout/src/lib/carousel/carousel.component.html +1 -1
- package/src/libs/ui/layout/src/lib/expandable-panel/expandable-panel.component.html +24 -8
- package/src/libs/ui/layout/src/lib/expandable-panel/expandable-panel.component.ts +36 -10
- package/src/libs/ui/layout/src/lib/interactive-table/interactive-table.component.html +4 -7
- package/src/libs/ui/layout/src/lib/interactive-table/interactive-table.component.ts +13 -0
- package/src/libs/ui/layout/src/lib/max-lines/max-lines.component.html +1 -1
- package/src/libs/ui/layout/src/lib/previous-next-buttons/previous-next-buttons.component.html +17 -5
- package/src/libs/ui/layout/src/lib/previous-next-buttons/previous-next-buttons.component.ts +3 -3
- package/src/libs/ui/layout/src/lib/truncated-text/truncated-text.component.html +44 -0
- package/src/libs/ui/layout/src/lib/truncated-text/truncated-text.component.ts +130 -0
- package/src/libs/ui/layout/src/lib/ui-layout.module.ts +1 -5
- package/src/libs/ui/map/src/index.ts +1 -0
- package/src/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.html +3 -3
- package/src/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.ts +27 -3
- package/src/libs/ui/map/src/lib/components/spatial-extent/spatial-extent.component.css +0 -0
- package/src/libs/ui/map/src/lib/components/spatial-extent/spatial-extent.component.html +4 -0
- package/src/libs/{feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.ts → ui/map/src/lib/components/spatial-extent/spatial-extent.component.ts} +8 -8
- package/src/libs/ui/search/src/index.ts +1 -0
- package/src/libs/ui/search/src/lib/record-preview-row/record-preview-row.component.html +9 -81
- package/src/libs/ui/search/src/lib/results-hits-number/results-hits-number.component.html +1 -1
- package/src/libs/ui/search/src/lib/results-hits-search-kind/results-hits-search-kind.component.html +25 -0
- package/src/libs/ui/search/src/lib/results-hits-search-kind/results-hits-search-kind.component.ts +53 -0
- package/src/libs/ui/search/src/lib/results-list/results-layout.config.ts +2 -2
- package/src/libs/ui/search/src/lib/results-list/results-list.component.html +1 -0
- package/src/libs/ui/search/src/lib/results-list/results-list.component.ts +0 -1
- package/src/libs/ui/search/src/lib/results-table/results-table.component.css +4 -0
- package/src/libs/ui/search/src/lib/results-table/results-table.component.html +28 -15
- package/src/libs/ui/search/src/lib/results-table/results-table.component.ts +22 -11
- package/src/libs/ui/search/src/lib/ui-search.module.ts +5 -0
- package/src/libs/ui/widgets/src/lib/progress-bar/progress-bar.component.html +2 -1
- package/src/libs/util/app-config/src/lib/app-config.ts +1 -0
- package/src/libs/util/app-config/src/lib/fixtures.ts +1 -0
- package/src/libs/util/shared/src/index.ts +1 -0
- package/src/libs/util/shared/src/lib/gn-ui-version.ts +8 -0
- package/src/libs/util/shared/src/lib/links/link-classifier.service.ts +15 -3
- package/src/libs/util/shared/src/lib/links/link-utils.ts +33 -12
- package/tailwind.base.config.js +3 -0
- package/tailwind.base.css +19 -26
- package/translations/de.json +41 -6
- package/translations/en.json +43 -8
- package/translations/es.json +41 -6
- package/translations/fr.json +42 -7
- package/translations/it.json +44 -9
- package/translations/nl.json +41 -6
- package/translations/pt.json +41 -6
- package/translations/sk.json +41 -6
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.mjs +0 -79
- package/esm2022/libs/feature/record/src/lib/gn-ui-version.token.mjs +0 -3
- package/esm2022/libs/feature/search/src/lib/results-hits-number/results-hits.container.component.mjs +0 -18
- package/esm2022/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.mjs +0 -16
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.d.ts +0 -15
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.d.ts.map +0 -1
- package/libs/feature/record/src/lib/gn-ui-version.token.d.ts +0 -3
- package/libs/feature/record/src/lib/gn-ui-version.token.d.ts.map +0 -1
- package/libs/feature/search/src/lib/results-hits-number/results-hits.container.component.d.ts +0 -9
- package/libs/feature/search/src/lib/results-hits-number/results-hits.container.component.d.ts.map +0 -1
- package/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.d.ts +0 -8
- package/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.d.ts.map +0 -1
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.html +0 -1
- package/src/libs/feature/record/src/lib/gn-ui-version.token.ts +0 -3
- package/src/libs/feature/search/src/lib/results-hits-number/results-hits.container.component.html +0 -4
- package/src/libs/feature/search/src/lib/results-hits-number/results-hits.container.component.ts +0 -10
- package/src/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.css +0 -3
- package/src/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.html +0 -9
- package/src/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.ts +0 -15
- /package/src/libs/feature/editor/src/lib/components/{record-form/form-field/form-field-map-container/form-field-map-container.component.css → multilingual-panel/multilingual-panel.component.css} +0 -0
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { Component, ContentChild, EventEmitter, Input, Output, TemplateRef, } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/common";
|
|
4
|
+
export class InlineFilterComponent {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.selected = [];
|
|
7
|
+
this.selectValues = new EventEmitter();
|
|
8
|
+
}
|
|
9
|
+
isSelected(choice) {
|
|
10
|
+
return (this.selected.indexOf(choice.value) > -1 ||
|
|
11
|
+
(this.selected.length === 0 && choice.value === 'all'));
|
|
12
|
+
}
|
|
13
|
+
select(choice, selected) {
|
|
14
|
+
if (choice.value === 'all' && selected) {
|
|
15
|
+
this.selected = [choice.value];
|
|
16
|
+
}
|
|
17
|
+
else {
|
|
18
|
+
this.selected = selected
|
|
19
|
+
? [...this.selected.filter((v) => v !== choice.value), choice.value]
|
|
20
|
+
: this.selected.filter((v) => v !== choice.value);
|
|
21
|
+
// If any value selected, unselect all
|
|
22
|
+
this.selected = this.selected.filter((v) => v !== 'all');
|
|
23
|
+
}
|
|
24
|
+
this.selectValues.emit(this.selected);
|
|
25
|
+
}
|
|
26
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: InlineFilterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
27
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: InlineFilterComponent, selector: "gn-ui-inline-filter", inputs: { choices: "choices", selected: "selected" }, outputs: { selectValues: "selectValues" }, queries: [{ propertyName: "itemTemplate", first: true, predicate: TemplateRef, descendants: true }], ngImport: i0, template: "<ul class=\"flex flex-wrap list-none gap-2\">\n <li *ngFor=\"let choice of choices\">\n <label\n class=\"\"\n [ngClass]=\"{\n selected: isSelected(choice),\n }\"\n >\n <input\n class=\"hidden\"\n type=\"checkbox\"\n #checkBox\n [checked]=\"isSelected(choice)\"\n (change)=\"select(choice, checkBox.checked)\"\n [attr.data-cy]=\"'inlineFilter-' + choice.value\"\n />\n <ng-container\n *ngTemplateOutlet=\"itemTemplate; context: { $implicit: choice }\"\n >\n </ng-container>\n </label>\n </li>\n</ul>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] }); }
|
|
28
|
+
}
|
|
29
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: InlineFilterComponent, decorators: [{
|
|
30
|
+
type: Component,
|
|
31
|
+
args: [{ selector: 'gn-ui-inline-filter', template: "<ul class=\"flex flex-wrap list-none gap-2\">\n <li *ngFor=\"let choice of choices\">\n <label\n class=\"\"\n [ngClass]=\"{\n selected: isSelected(choice),\n }\"\n >\n <input\n class=\"hidden\"\n type=\"checkbox\"\n #checkBox\n [checked]=\"isSelected(choice)\"\n (change)=\"select(choice, checkBox.checked)\"\n [attr.data-cy]=\"'inlineFilter-' + choice.value\"\n />\n <ng-container\n *ngTemplateOutlet=\"itemTemplate; context: { $implicit: choice }\"\n >\n </ng-container>\n </label>\n </li>\n</ul>\n" }]
|
|
32
|
+
}], propDecorators: { choices: [{
|
|
33
|
+
type: Input
|
|
34
|
+
}], selected: [{
|
|
35
|
+
type: Input
|
|
36
|
+
}], selectValues: [{
|
|
37
|
+
type: Output
|
|
38
|
+
}], itemTemplate: [{
|
|
39
|
+
type: ContentChild,
|
|
40
|
+
args: [TemplateRef]
|
|
41
|
+
}] } });
|
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5saW5lLWZpbHRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2lucHV0cy9zcmMvbGliL2lubGluZS1maWx0ZXIvaW5saW5lLWZpbHRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2lucHV0cy9zcmMvbGliL2lubGluZS1maWx0ZXIvaW5saW5lLWZpbHRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sRUFDTixXQUFXLEdBQ1osTUFBTSxlQUFlLENBQUE7OztBQU90QixNQUFNLE9BQU8scUJBQXFCO0lBSmxDO1FBTVcsYUFBUSxHQUFjLEVBQUUsQ0FBQTtRQUV2QixpQkFBWSxHQUFHLElBQUksWUFBWSxFQUFhLENBQUE7S0F5QnZEO0lBckJDLFVBQVUsQ0FBQyxNQUFjO1FBQ3ZCLE9BQU8sQ0FDTCxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ3hDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEtBQUssQ0FBQyxJQUFJLE1BQU0sQ0FBQyxLQUFLLEtBQUssS0FBSyxDQUFDLENBQ3ZELENBQUE7SUFDSCxDQUFDO0lBRUQsTUFBTSxDQUFDLE1BQWMsRUFBRSxRQUFpQjtRQUN0QyxJQUFJLE1BQU0sQ0FBQyxLQUFLLEtBQUssS0FBSyxJQUFJLFFBQVEsRUFBRSxDQUFDO1lBQ3ZDLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUE7UUFDaEMsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVE7Z0JBQ3RCLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsS0FBSyxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsTUFBTSxDQUFDLEtBQUssQ0FBQztnQkFDcEUsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEtBQUssTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFBO1lBRW5ELHNDQUFzQztZQUN0QyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEtBQUssS0FBSyxDQUFDLENBQUE7UUFDMUQsQ0FBQztRQUVELElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQTtJQUN2QyxDQUFDOytHQTVCVSxxQkFBcUI7bUdBQXJCLHFCQUFxQixzTUFNbEIsV0FBVyxnRENwQjNCLGltQkF1QkE7OzRGRFRhLHFCQUFxQjtrQkFKakMsU0FBUzsrQkFDRSxxQkFBcUI7OEJBSXRCLE9BQU87c0JBQWYsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUVJLFlBQVk7c0JBQXJCLE1BQU07Z0JBRW9CLFlBQVk7c0JBQXRDLFlBQVk7dUJBQUMsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgQ29udGVudENoaWxkLFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPdXRwdXQsXG4gIFRlbXBsYXRlUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgQ2hvaWNlIH0gZnJvbSAnLi9pbmxpbmUtZmlsdGVyLm1vZGVsJ1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnbi11aS1pbmxpbmUtZmlsdGVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2lubGluZS1maWx0ZXIuY29tcG9uZW50Lmh0bWwnLFxufSlcbmV4cG9ydCBjbGFzcyBJbmxpbmVGaWx0ZXJDb21wb25lbnQge1xuICBASW5wdXQoKSBjaG9pY2VzOiBDaG9pY2VbXVxuICBASW5wdXQoKSBzZWxlY3RlZDogdW5rbm93bltdID0gW11cblxuICBAT3V0cHV0KCkgc2VsZWN0VmFsdWVzID0gbmV3IEV2ZW50RW1pdHRlcjx1bmtub3duW10+KClcblxuICBAQ29udGVudENoaWxkKFRlbXBsYXRlUmVmKSBpdGVtVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT5cblxuICBpc1NlbGVjdGVkKGNob2ljZTogQ2hvaWNlKSB7XG4gICAgcmV0dXJuIChcbiAgICAgIHRoaXMuc2VsZWN0ZWQuaW5kZXhPZihjaG9pY2UudmFsdWUpID4gLTEgfHxcbiAgICAgICh0aGlzLnNlbGVjdGVkLmxlbmd0aCA9PT0gMCAmJiBjaG9pY2UudmFsdWUgPT09ICdhbGwnKVxuICAgIClcbiAgfVxuXG4gIHNlbGVjdChjaG9pY2U6IENob2ljZSwgc2VsZWN0ZWQ6IGJvb2xlYW4pIHtcbiAgICBpZiAoY2hvaWNlLnZhbHVlID09PSAnYWxsJyAmJiBzZWxlY3RlZCkge1xuICAgICAgdGhpcy5zZWxlY3RlZCA9IFtjaG9pY2UudmFsdWVdXG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWQgPSBzZWxlY3RlZFxuICAgICAgICA/IFsuLi50aGlzLnNlbGVjdGVkLmZpbHRlcigodikgPT4gdiAhPT0gY2hvaWNlLnZhbHVlKSwgY2hvaWNlLnZhbHVlXVxuICAgICAgICA6IHRoaXMuc2VsZWN0ZWQuZmlsdGVyKCh2KSA9PiB2ICE9PSBjaG9pY2UudmFsdWUpXG5cbiAgICAgIC8vIElmIGFueSB2YWx1ZSBzZWxlY3RlZCwgdW5zZWxlY3QgYWxsXG4gICAgICB0aGlzLnNlbGVjdGVkID0gdGhpcy5zZWxlY3RlZC5maWx0ZXIoKHYpID0+IHYgIT09ICdhbGwnKVxuICAgIH1cblxuICAgIHRoaXMuc2VsZWN0VmFsdWVzLmVtaXQodGhpcy5zZWxlY3RlZClcbiAgfVxufVxuIiwiPHVsIGNsYXNzPVwiZmxleCBmbGV4LXdyYXAgbGlzdC1ub25lIGdhcC0yXCI+XG4gIDxsaSAqbmdGb3I9XCJsZXQgY2hvaWNlIG9mIGNob2ljZXNcIj5cbiAgICA8bGFiZWxcbiAgICAgIGNsYXNzPVwiXCJcbiAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgc2VsZWN0ZWQ6IGlzU2VsZWN0ZWQoY2hvaWNlKSxcbiAgICAgIH1cIlxuICAgID5cbiAgICAgIDxpbnB1dFxuICAgICAgICBjbGFzcz1cImhpZGRlblwiXG4gICAgICAgIHR5cGU9XCJjaGVja2JveFwiXG4gICAgICAgICNjaGVja0JveFxuICAgICAgICBbY2hlY2tlZF09XCJpc1NlbGVjdGVkKGNob2ljZSlcIlxuICAgICAgICAoY2hhbmdlKT1cInNlbGVjdChjaG9pY2UsIGNoZWNrQm94LmNoZWNrZWQpXCJcbiAgICAgICAgW2F0dHIuZGF0YS1jeV09XCInaW5saW5lRmlsdGVyLScgKyBjaG9pY2UudmFsdWVcIlxuICAgICAgLz5cbiAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJpdGVtVGVtcGxhdGU7IGNvbnRleHQ6IHsgJGltcGxpY2l0OiBjaG9pY2UgfVwiXG4gICAgICA+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L2xhYmVsPlxuICA8L2xpPlxuPC91bD5cbiJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5saW5lLWZpbHRlci5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvaW5wdXRzL3NyYy9saWIvaW5saW5lLWZpbHRlci9pbmxpbmUtZmlsdGVyLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIENob2ljZSB7XG4gIHZhbHVlOiB1bmtub3duXG4gIGxhYmVsOiBzdHJpbmdcbiAgaWNvbj86IHN0cmluZ1xufVxuIl19
|
package/esm2022/libs/ui/inputs/src/lib/search-feature-catalog/search-feature-catalog.component.mjs
ADDED
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import { Component, Input, Output, EventEmitter } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { TranslateModule } from '@ngx-translate/core';
|
|
4
|
+
import { NgIcon, provideIcons, provideNgIconsConfig } from '@ng-icons/core';
|
|
5
|
+
import { FormsModule } from '@angular/forms';
|
|
6
|
+
import { of } from 'rxjs';
|
|
7
|
+
import { debounceTime, distinctUntilChanged, tap } from 'rxjs/operators';
|
|
8
|
+
import { createFuzzyFilter } from '../../../../../../libs/util/shared/src';
|
|
9
|
+
import { iconoirSearch } from '@ng-icons/iconoir';
|
|
10
|
+
import * as i0 from "@angular/core";
|
|
11
|
+
import * as i1 from "@angular/common";
|
|
12
|
+
import * as i2 from "@ngx-translate/core";
|
|
13
|
+
import * as i3 from "@angular/forms";
|
|
14
|
+
export class SearchFeatureCatalogComponent {
|
|
15
|
+
constructor() {
|
|
16
|
+
this.filteredFeatureCatalogChange = new EventEmitter();
|
|
17
|
+
this.filterAction = (searchTerm) => {
|
|
18
|
+
of(searchTerm)
|
|
19
|
+
.pipe(debounceTime(300), distinctUntilChanged(), tap(() => {
|
|
20
|
+
const filtered = (this.featureCatalog?.featureTypes || []).filter((featureType) => {
|
|
21
|
+
const fuzzyFilter = createFuzzyFilter(searchTerm);
|
|
22
|
+
return (fuzzyFilter(featureType.name) ||
|
|
23
|
+
(featureType.definition && fuzzyFilter(featureType.definition)));
|
|
24
|
+
});
|
|
25
|
+
this.filteredFeatureCatalog = {
|
|
26
|
+
...this.featureCatalog,
|
|
27
|
+
featureTypes: filtered,
|
|
28
|
+
};
|
|
29
|
+
this.filteredFeatureCatalogChange.emit(this.filteredFeatureCatalog);
|
|
30
|
+
}))
|
|
31
|
+
.subscribe();
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
set featureCatalog(value) {
|
|
35
|
+
this._featureCatalog = value;
|
|
36
|
+
this.filteredFeatureCatalog = value;
|
|
37
|
+
}
|
|
38
|
+
get featureCatalog() {
|
|
39
|
+
return this._featureCatalog;
|
|
40
|
+
}
|
|
41
|
+
get totalObjects() {
|
|
42
|
+
return this.filteredFeatureCatalog?.featureTypes?.length || 0;
|
|
43
|
+
}
|
|
44
|
+
get totalAttributes() {
|
|
45
|
+
return (this.filteredFeatureCatalog?.featureTypes?.reduce((total, featureType) => total + (featureType.attributes?.length || 0), 0) || 0);
|
|
46
|
+
}
|
|
47
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SearchFeatureCatalogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
48
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: SearchFeatureCatalogComponent, isStandalone: true, selector: "gn-ui-search-feature-catalog", inputs: { featureCatalog: "featureCatalog" }, outputs: { filteredFeatureCatalogChange: "filteredFeatureCatalogChange" }, ngImport: i0, template: "<div\n class=\"flex items-center justify-between p-3 mt-8 bg-white rounded-lg border-b solid border-gray-300\"\n>\n <div\n class=\"relative shrink-0\"\n *ngIf=\"featureCatalog?.featureTypes?.length > 1\"\n >\n <input\n type=\"text\"\n [placeholder]=\"'search.filter.into.feature.catalog' | translate\"\n class=\"w-[220px] h-8 pl-3 pr-10 py-2 border rounded-md\"\n [(ngModel)]=\"searchTerm\"\n (ngModelChange)=\"filterAction(searchTerm)\"\n />\n <ng-icon\n class=\"absolute right-2.5 top-1 w-6 h-6 text-black\"\n name=\"iconoirSearch\"\n ></ng-icon>\n </div>\n <div class=\"text-sm px-1 ml-auto hidden sm:inline\">\n <ng-container *ngIf=\"featureCatalog?.featureTypes?.length > 1\">\n <span\n class=\"text-sm font-medium text-gray-900\"\n data-cy=\"total-objects-label\"\n translate\n >record.feature.catalog.number.total.object</span\n ><span\n class=\"text-sm font-bold px-1 text-gray-900\"\n data-cy=\"total-objects\"\n >{{ totalObjects }}</span\n >\n <span class=\"px-1.5\">|</span>\n </ng-container>\n <span\n class=\"text-sm font-medium px-1 text-gray-900\"\n data-cy=\"total-attributes-label\"\n translate\n >record.feature.catalog.number.total.attribute</span\n ><span class=\"text-sm font-bold text-gray-900\" data-cy=\"total-attributes\">{{\n totalAttributes\n }}</span>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: NgIcon, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }, { kind: "directive", type: i2.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], viewProviders: [
|
|
49
|
+
provideIcons({ iconoirSearch }),
|
|
50
|
+
provideNgIconsConfig({
|
|
51
|
+
size: '1.5rem',
|
|
52
|
+
}),
|
|
53
|
+
] }); }
|
|
54
|
+
}
|
|
55
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SearchFeatureCatalogComponent, decorators: [{
|
|
56
|
+
type: Component,
|
|
57
|
+
args: [{ selector: 'gn-ui-search-feature-catalog', standalone: true, imports: [CommonModule, NgIcon, TranslateModule, FormsModule], viewProviders: [
|
|
58
|
+
provideIcons({ iconoirSearch }),
|
|
59
|
+
provideNgIconsConfig({
|
|
60
|
+
size: '1.5rem',
|
|
61
|
+
}),
|
|
62
|
+
], template: "<div\n class=\"flex items-center justify-between p-3 mt-8 bg-white rounded-lg border-b solid border-gray-300\"\n>\n <div\n class=\"relative shrink-0\"\n *ngIf=\"featureCatalog?.featureTypes?.length > 1\"\n >\n <input\n type=\"text\"\n [placeholder]=\"'search.filter.into.feature.catalog' | translate\"\n class=\"w-[220px] h-8 pl-3 pr-10 py-2 border rounded-md\"\n [(ngModel)]=\"searchTerm\"\n (ngModelChange)=\"filterAction(searchTerm)\"\n />\n <ng-icon\n class=\"absolute right-2.5 top-1 w-6 h-6 text-black\"\n name=\"iconoirSearch\"\n ></ng-icon>\n </div>\n <div class=\"text-sm px-1 ml-auto hidden sm:inline\">\n <ng-container *ngIf=\"featureCatalog?.featureTypes?.length > 1\">\n <span\n class=\"text-sm font-medium text-gray-900\"\n data-cy=\"total-objects-label\"\n translate\n >record.feature.catalog.number.total.object</span\n ><span\n class=\"text-sm font-bold px-1 text-gray-900\"\n data-cy=\"total-objects\"\n >{{ totalObjects }}</span\n >\n <span class=\"px-1.5\">|</span>\n </ng-container>\n <span\n class=\"text-sm font-medium px-1 text-gray-900\"\n data-cy=\"total-attributes-label\"\n translate\n >record.feature.catalog.number.total.attribute</span\n ><span class=\"text-sm font-bold text-gray-900\" data-cy=\"total-attributes\">{{\n totalAttributes\n }}</span>\n </div>\n</div>\n" }]
|
|
63
|
+
}], propDecorators: { featureCatalog: [{
|
|
64
|
+
type: Input
|
|
65
|
+
}], filteredFeatureCatalogChange: [{
|
|
66
|
+
type: Output
|
|
67
|
+
}] } });
|
|
68
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWZlYXR1cmUtY2F0YWxvZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2lucHV0cy9zcmMvbGliL3NlYXJjaC1mZWF0dXJlLWNhdGFsb2cvc2VhcmNoLWZlYXR1cmUtY2F0YWxvZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2lucHV0cy9zcmMvbGliL3NlYXJjaC1mZWF0dXJlLWNhdGFsb2cvc2VhcmNoLWZlYXR1cmUtY2F0YWxvZy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ3RFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM5QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFDckQsT0FBTyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUUzRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDNUMsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQTtBQUN6QixPQUFPLEVBQUUsWUFBWSxFQUFFLG9CQUFvQixFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBQ3hFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHdDQUF3QyxDQUFBO0FBQzFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQTs7Ozs7QUFlakQsTUFBTSxPQUFPLDZCQUE2QjtJQWIxQztRQXdCWSxpQ0FBNEIsR0FDcEMsSUFBSSxZQUFZLEVBQXlCLENBQUE7UUFHM0MsaUJBQVksR0FBRyxDQUFDLFVBQWtCLEVBQVEsRUFBRTtZQUMxQyxFQUFFLENBQUMsVUFBVSxDQUFDO2lCQUNYLElBQUksQ0FDSCxZQUFZLENBQUMsR0FBRyxDQUFDLEVBQ2pCLG9CQUFvQixFQUFFLEVBQ3RCLEdBQUcsQ0FBQyxHQUFHLEVBQUU7Z0JBQ1AsTUFBTSxRQUFRLEdBQUcsQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLFlBQVksSUFBSSxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQy9ELENBQUMsV0FBVyxFQUFFLEVBQUU7b0JBQ2QsTUFBTSxXQUFXLEdBQUcsaUJBQWlCLENBQUMsVUFBVSxDQUFDLENBQUE7b0JBQ2pELE9BQU8sQ0FDTCxXQUFXLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQzt3QkFDN0IsQ0FBQyxXQUFXLENBQUMsVUFBVSxJQUFJLFdBQVcsQ0FBQyxXQUFXLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FDaEUsQ0FBQTtnQkFDSCxDQUFDLENBQ0YsQ0FBQTtnQkFDRCxJQUFJLENBQUMsc0JBQXNCLEdBQUc7b0JBQzVCLEdBQUcsSUFBSSxDQUFDLGNBQWM7b0JBQ3RCLFlBQVksRUFBRSxRQUFRO2lCQUN2QixDQUFBO2dCQUNELElBQUksQ0FBQyw0QkFBNEIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLHNCQUFzQixDQUFDLENBQUE7WUFDckUsQ0FBQyxDQUFDLENBQ0g7aUJBQ0EsU0FBUyxFQUFFLENBQUE7UUFDaEIsQ0FBQyxDQUFBO0tBY0Y7SUFqREMsSUFBYSxjQUFjLENBQUMsS0FBNEI7UUFDdEQsSUFBSSxDQUFDLGVBQWUsR0FBRyxLQUFLLENBQUE7UUFDNUIsSUFBSSxDQUFDLHNCQUFzQixHQUFHLEtBQUssQ0FBQTtJQUNyQyxDQUFDO0lBQ0QsSUFBSSxjQUFjO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQTtJQUM3QixDQUFDO0lBK0JELElBQUksWUFBWTtRQUNkLE9BQU8sSUFBSSxDQUFDLHNCQUFzQixFQUFFLFlBQVksRUFBRSxNQUFNLElBQUksQ0FBQyxDQUFBO0lBQy9ELENBQUM7SUFFRCxJQUFJLGVBQWU7UUFDakIsT0FBTyxDQUNMLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxZQUFZLEVBQUUsTUFBTSxDQUMvQyxDQUFDLEtBQUssRUFBRSxXQUFXLEVBQUUsRUFBRSxDQUFDLEtBQUssR0FBRyxDQUFDLFdBQVcsQ0FBQyxVQUFVLEVBQUUsTUFBTSxJQUFJLENBQUMsQ0FBQyxFQUNyRSxDQUFDLENBQ0YsSUFBSSxDQUFDLENBQ1AsQ0FBQTtJQUNILENBQUM7K0dBbkRVLDZCQUE2QjttR0FBN0IsNkJBQTZCLGlOQ3hCMUMsNDdDQTJDQSx5REQzQlksWUFBWSxtSUFBRSxNQUFNLDRHQUFFLGVBQWUsa09BQUUsV0FBVyxvbUJBQzdDO1lBQ2IsWUFBWSxDQUFDLEVBQUUsYUFBYSxFQUFFLENBQUM7WUFDL0Isb0JBQW9CLENBQUM7Z0JBQ25CLElBQUksRUFBRSxRQUFRO2FBQ2YsQ0FBQztTQUNIOzs0RkFFVSw2QkFBNkI7a0JBYnpDLFNBQVM7K0JBQ0UsOEJBQThCLGNBRzVCLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxNQUFNLEVBQUUsZUFBZSxFQUFFLFdBQVcsQ0FBQyxpQkFDOUM7d0JBQ2IsWUFBWSxDQUFDLEVBQUUsYUFBYSxFQUFFLENBQUM7d0JBQy9CLG9CQUFvQixDQUFDOzRCQUNuQixJQUFJLEVBQUUsUUFBUTt5QkFDZixDQUFDO3FCQUNIOzhCQUtZLGNBQWM7c0JBQTFCLEtBQUs7Z0JBUUksNEJBQTRCO3NCQUFyQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSdcbmltcG9ydCB7IE5nSWNvbiwgcHJvdmlkZUljb25zLCBwcm92aWRlTmdJY29uc0NvbmZpZyB9IGZyb20gJ0BuZy1pY29ucy9jb3JlJ1xuaW1wb3J0IHsgRGF0YXNldEZlYXR1cmVDYXRhbG9nIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vZG9tYWluL3NyYy9saWIvbW9kZWwvcmVjb3JkJ1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3JtcydcbmltcG9ydCB7IG9mIH0gZnJvbSAncnhqcydcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgZGlzdGluY3RVbnRpbENoYW5nZWQsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJ1xuaW1wb3J0IHsgY3JlYXRlRnV6enlGaWx0ZXIgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvc2hhcmVkL3NyYydcbmltcG9ydCB7IGljb25vaXJTZWFyY2ggfSBmcm9tICdAbmctaWNvbnMvaWNvbm9pcidcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ24tdWktc2VhcmNoLWZlYXR1cmUtY2F0YWxvZycsXG4gIHRlbXBsYXRlVXJsOiAnLi9zZWFyY2gtZmVhdHVyZS1jYXRhbG9nLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc2VhcmNoLWZlYXR1cmUtY2F0YWxvZy5jb21wb25lbnQuY3NzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIE5nSWNvbiwgVHJhbnNsYXRlTW9kdWxlLCBGb3Jtc01vZHVsZV0sXG4gIHZpZXdQcm92aWRlcnM6IFtcbiAgICBwcm92aWRlSWNvbnMoeyBpY29ub2lyU2VhcmNoIH0pLFxuICAgIHByb3ZpZGVOZ0ljb25zQ29uZmlnKHtcbiAgICAgIHNpemU6ICcxLjVyZW0nLFxuICAgIH0pLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBTZWFyY2hGZWF0dXJlQ2F0YWxvZ0NvbXBvbmVudCB7XG4gIHByaXZhdGUgX2ZlYXR1cmVDYXRhbG9nOiBEYXRhc2V0RmVhdHVyZUNhdGFsb2dcbiAgc2VhcmNoVGVybTogYW55XG4gIEBJbnB1dCgpIHNldCBmZWF0dXJlQ2F0YWxvZyh2YWx1ZTogRGF0YXNldEZlYXR1cmVDYXRhbG9nKSB7XG4gICAgdGhpcy5fZmVhdHVyZUNhdGFsb2cgPSB2YWx1ZVxuICAgIHRoaXMuZmlsdGVyZWRGZWF0dXJlQ2F0YWxvZyA9IHZhbHVlXG4gIH1cbiAgZ2V0IGZlYXR1cmVDYXRhbG9nKCk6IERhdGFzZXRGZWF0dXJlQ2F0YWxvZyB7XG4gICAgcmV0dXJuIHRoaXMuX2ZlYXR1cmVDYXRhbG9nXG4gIH1cblxuICBAT3V0cHV0KCkgZmlsdGVyZWRGZWF0dXJlQ2F0YWxvZ0NoYW5nZSA9XG4gICAgbmV3IEV2ZW50RW1pdHRlcjxEYXRhc2V0RmVhdHVyZUNhdGFsb2c+KClcbiAgZmlsdGVyZWRGZWF0dXJlQ2F0YWxvZzogRGF0YXNldEZlYXR1cmVDYXRhbG9nXG5cbiAgZmlsdGVyQWN0aW9uID0gKHNlYXJjaFRlcm06IHN0cmluZyk6IHZvaWQgPT4ge1xuICAgIG9mKHNlYXJjaFRlcm0pXG4gICAgICAucGlwZShcbiAgICAgICAgZGVib3VuY2VUaW1lKDMwMCksXG4gICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgICAgIHRhcCgoKSA9PiB7XG4gICAgICAgICAgY29uc3QgZmlsdGVyZWQgPSAodGhpcy5mZWF0dXJlQ2F0YWxvZz8uZmVhdHVyZVR5cGVzIHx8IFtdKS5maWx0ZXIoXG4gICAgICAgICAgICAoZmVhdHVyZVR5cGUpID0+IHtcbiAgICAgICAgICAgICAgY29uc3QgZnV6enlGaWx0ZXIgPSBjcmVhdGVGdXp6eUZpbHRlcihzZWFyY2hUZXJtKVxuICAgICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgIGZ1enp5RmlsdGVyKGZlYXR1cmVUeXBlLm5hbWUpIHx8XG4gICAgICAgICAgICAgICAgKGZlYXR1cmVUeXBlLmRlZmluaXRpb24gJiYgZnV6enlGaWx0ZXIoZmVhdHVyZVR5cGUuZGVmaW5pdGlvbikpXG4gICAgICAgICAgICAgIClcbiAgICAgICAgICAgIH1cbiAgICAgICAgICApXG4gICAgICAgICAgdGhpcy5maWx0ZXJlZEZlYXR1cmVDYXRhbG9nID0ge1xuICAgICAgICAgICAgLi4udGhpcy5mZWF0dXJlQ2F0YWxvZyxcbiAgICAgICAgICAgIGZlYXR1cmVUeXBlczogZmlsdGVyZWQsXG4gICAgICAgICAgfVxuICAgICAgICAgIHRoaXMuZmlsdGVyZWRGZWF0dXJlQ2F0YWxvZ0NoYW5nZS5lbWl0KHRoaXMuZmlsdGVyZWRGZWF0dXJlQ2F0YWxvZylcbiAgICAgICAgfSlcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKVxuICB9XG5cbiAgZ2V0IHRvdGFsT2JqZWN0cygpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmZpbHRlcmVkRmVhdHVyZUNhdGFsb2c/LmZlYXR1cmVUeXBlcz8ubGVuZ3RoIHx8IDBcbiAgfVxuXG4gIGdldCB0b3RhbEF0dHJpYnV0ZXMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKFxuICAgICAgdGhpcy5maWx0ZXJlZEZlYXR1cmVDYXRhbG9nPy5mZWF0dXJlVHlwZXM/LnJlZHVjZShcbiAgICAgICAgKHRvdGFsLCBmZWF0dXJlVHlwZSkgPT4gdG90YWwgKyAoZmVhdHVyZVR5cGUuYXR0cmlidXRlcz8ubGVuZ3RoIHx8IDApLFxuICAgICAgICAwXG4gICAgICApIHx8IDBcbiAgICApXG4gIH1cbn1cbiIsIjxkaXZcbiAgY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWJldHdlZW4gcC0zIG10LTggYmctd2hpdGUgcm91bmRlZC1sZyBib3JkZXItYiBzb2xpZCBib3JkZXItZ3JheS0zMDBcIlxuPlxuICA8ZGl2XG4gICAgY2xhc3M9XCJyZWxhdGl2ZSBzaHJpbmstMFwiXG4gICAgKm5nSWY9XCJmZWF0dXJlQ2F0YWxvZz8uZmVhdHVyZVR5cGVzPy5sZW5ndGggPiAxXCJcbiAgPlxuICAgIDxpbnB1dFxuICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgW3BsYWNlaG9sZGVyXT1cIidzZWFyY2guZmlsdGVyLmludG8uZmVhdHVyZS5jYXRhbG9nJyB8IHRyYW5zbGF0ZVwiXG4gICAgICBjbGFzcz1cInctWzIyMHB4XSBoLTggcGwtMyBwci0xMCBweS0yIGJvcmRlciByb3VuZGVkLW1kXCJcbiAgICAgIFsobmdNb2RlbCldPVwic2VhcmNoVGVybVwiXG4gICAgICAobmdNb2RlbENoYW5nZSk9XCJmaWx0ZXJBY3Rpb24oc2VhcmNoVGVybSlcIlxuICAgIC8+XG4gICAgPG5nLWljb25cbiAgICAgIGNsYXNzPVwiYWJzb2x1dGUgcmlnaHQtMi41IHRvcC0xIHctNiBoLTYgdGV4dC1ibGFja1wiXG4gICAgICBuYW1lPVwiaWNvbm9pclNlYXJjaFwiXG4gICAgPjwvbmctaWNvbj5cbiAgPC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJ0ZXh0LXNtIHB4LTEgbWwtYXV0byBoaWRkZW4gc206aW5saW5lXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImZlYXR1cmVDYXRhbG9nPy5mZWF0dXJlVHlwZXM/Lmxlbmd0aCA+IDFcIj5cbiAgICAgIDxzcGFuXG4gICAgICAgIGNsYXNzPVwidGV4dC1zbSBmb250LW1lZGl1bSB0ZXh0LWdyYXktOTAwXCJcbiAgICAgICAgZGF0YS1jeT1cInRvdGFsLW9iamVjdHMtbGFiZWxcIlxuICAgICAgICB0cmFuc2xhdGVcbiAgICAgICAgPnJlY29yZC5mZWF0dXJlLmNhdGFsb2cubnVtYmVyLnRvdGFsLm9iamVjdDwvc3BhblxuICAgICAgPjxzcGFuXG4gICAgICAgIGNsYXNzPVwidGV4dC1zbSBmb250LWJvbGQgcHgtMSB0ZXh0LWdyYXktOTAwXCJcbiAgICAgICAgZGF0YS1jeT1cInRvdGFsLW9iamVjdHNcIlxuICAgICAgICA+e3sgdG90YWxPYmplY3RzIH19PC9zcGFuXG4gICAgICA+XG4gICAgICA8c3BhbiBjbGFzcz1cInB4LTEuNVwiPnw8L3NwYW4+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPHNwYW5cbiAgICAgIGNsYXNzPVwidGV4dC1zbSBmb250LW1lZGl1bSBweC0xIHRleHQtZ3JheS05MDBcIlxuICAgICAgZGF0YS1jeT1cInRvdGFsLWF0dHJpYnV0ZXMtbGFiZWxcIlxuICAgICAgdHJhbnNsYXRlXG4gICAgICA+cmVjb3JkLmZlYXR1cmUuY2F0YWxvZy5udW1iZXIudG90YWwuYXR0cmlidXRlPC9zcGFuXG4gICAgPjxzcGFuIGNsYXNzPVwidGV4dC1zbSBmb250LWJvbGQgdGV4dC1ncmF5LTkwMFwiIGRhdGEtY3k9XCJ0b3RhbC1hdHRyaWJ1dGVzXCI+e3tcbiAgICAgIHRvdGFsQXR0cmlidXRlc1xuICAgIH19PC9zcGFuPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
@@ -3,6 +3,7 @@ import { propagateToDocumentOnly } from '../../../../../../libs/util/shared/src'
|
|
|
3
3
|
import { NgIcon, provideIcons } from '@ng-icons/core';
|
|
4
4
|
import { CommonModule } from '@angular/common';
|
|
5
5
|
import { matStar, matStarBorder } from '@ng-icons/material-icons/baseline';
|
|
6
|
+
import { ButtonComponent } from '../button/button.component';
|
|
6
7
|
import * as i0 from "@angular/core";
|
|
7
8
|
import * as i1 from "@angular/common";
|
|
8
9
|
export class StarToggleComponent {
|
|
@@ -24,11 +25,11 @@ export class StarToggleComponent {
|
|
|
24
25
|
event.preventDefault();
|
|
25
26
|
}
|
|
26
27
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: StarToggleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
27
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: StarToggleComponent, isStandalone: true, selector: "gn-ui-star-toggle", inputs: { toggled: "toggled", disabled: "disabled" }, outputs: { newValue: "newValue" }, viewQueries: [{ propertyName: "overlay", first: true, predicate: ["starOverlay"], descendants: true }], ngImport: i0, template: "<div class=\"inline-block relative align-middle\"
|
|
28
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: StarToggleComponent, isStandalone: true, selector: "gn-ui-star-toggle", inputs: { toggled: "toggled", disabled: "disabled" }, outputs: { newValue: "newValue" }, viewQueries: [{ propertyName: "overlay", first: true, predicate: ["starOverlay"], descendants: true }], ngImport: i0, template: "<div class=\"inline-block relative align-middle\">\n <gn-ui-button\n [type]=\"'outline'\"\n [disabled]=\"disabled\"\n (buttonClick)=\"toggle($event)\"\n [ngClass]=\"{\n enabled: toggled,\n disabled: !toggled || disabled,\n 'transition hover:scale-125 will-change-transform': !disabled,\n }\"\n >\n <ng-icon [name]=\"toggled ? 'matStar' : 'matStarBorder'\"></ng-icon>\n </gn-ui-button>\n <svg\n #starOverlay\n class=\"star-toggle-overlay\"\n width=\"40px\"\n height=\"40px\"\n viewBox=\"-15 -15 30 30\"\n >\n <g>\n <path d=\"M 0,13.229167 V 0\" />\n <path d=\"M -12.484186,4.0880377 0,0\" />\n <path d=\"M -7.6784102,-10.70262 0,0\" />\n <path d=\"M 7.8734079,-10.70262 0,0\" />\n <path d=\"M 12.679184,4.0880376 0,0\" />\n </g>\n </svg>\n</div>\n", styles: ["button.enabled{color:var(--star-toggle-enabled-color, var(--color-secondary))}button.disabled{color:var(--star-toggle-disabled-color, var(--color-primary))}.star-filled{font-variation-settings:\"FILL\" 1}.star-toggle-overlay{stroke:var(--color-secondary);stroke-width:3.5px;stroke-linecap:round;position:absolute;top:50%;left:50%;width:2.5em;height:2.5em;transform:translate(-50%,-50%);pointer-events:none;stroke-dasharray:5 20;stroke-dashoffset:-15;animation:overlay-dash .8s cubic-bezier(.16,.66,.44,.96) forwards;animation-play-state:paused}@keyframes overlay-dash{to{stroke-dashoffset:7}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: NgIcon, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }, { kind: "component", type: ButtonComponent, selector: "gn-ui-button", inputs: ["type", "disabled", "extraClass"], outputs: ["buttonClick"] }], viewProviders: [provideIcons({ matStar, matStarBorder })], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
28
29
|
}
|
|
29
30
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: StarToggleComponent, decorators: [{
|
|
30
31
|
type: Component,
|
|
31
|
-
args: [{ selector: 'gn-ui-star-toggle', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule, NgIcon], viewProviders: [provideIcons({ matStar, matStarBorder })], template: "<div class=\"inline-block relative align-middle\"
|
|
32
|
+
args: [{ selector: 'gn-ui-star-toggle', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule, NgIcon, ButtonComponent], viewProviders: [provideIcons({ matStar, matStarBorder })], template: "<div class=\"inline-block relative align-middle\">\n <gn-ui-button\n [type]=\"'outline'\"\n [disabled]=\"disabled\"\n (buttonClick)=\"toggle($event)\"\n [ngClass]=\"{\n enabled: toggled,\n disabled: !toggled || disabled,\n 'transition hover:scale-125 will-change-transform': !disabled,\n }\"\n >\n <ng-icon [name]=\"toggled ? 'matStar' : 'matStarBorder'\"></ng-icon>\n </gn-ui-button>\n <svg\n #starOverlay\n class=\"star-toggle-overlay\"\n width=\"40px\"\n height=\"40px\"\n viewBox=\"-15 -15 30 30\"\n >\n <g>\n <path d=\"M 0,13.229167 V 0\" />\n <path d=\"M -12.484186,4.0880377 0,0\" />\n <path d=\"M -7.6784102,-10.70262 0,0\" />\n <path d=\"M 7.8734079,-10.70262 0,0\" />\n <path d=\"M 12.679184,4.0880376 0,0\" />\n </g>\n </svg>\n</div>\n", styles: ["button.enabled{color:var(--star-toggle-enabled-color, var(--color-secondary))}button.disabled{color:var(--star-toggle-disabled-color, var(--color-primary))}.star-filled{font-variation-settings:\"FILL\" 1}.star-toggle-overlay{stroke:var(--color-secondary);stroke-width:3.5px;stroke-linecap:round;position:absolute;top:50%;left:50%;width:2.5em;height:2.5em;transform:translate(-50%,-50%);pointer-events:none;stroke-dasharray:5 20;stroke-dashoffset:-15;animation:overlay-dash .8s cubic-bezier(.16,.66,.44,.96) forwards;animation-play-state:paused}@keyframes overlay-dash{to{stroke-dashoffset:7}}\n"] }]
|
|
32
33
|
}], propDecorators: { toggled: [{
|
|
33
34
|
type: Input
|
|
34
35
|
}], disabled: [{
|
|
@@ -39,4 +40,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
39
40
|
type: ViewChild,
|
|
40
41
|
args: ['starOverlay']
|
|
41
42
|
}] } });
|
|
42
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Rhci10b2dnbGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9pbnB1dHMvc3JjL2xpYi9zdGFyLXRvZ2dsZS9zdGFyLXRvZ2dsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2lucHV0cy9zcmMvbGliL3N0YXItdG9nZ2xlL3N0YXItdG9nZ2xlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sRUFDTixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUE7QUFDdEIsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sd0NBQXdDLENBQUE7QUFDaEYsT0FBTyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUNyRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDOUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQTtBQUMxRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUE7OztBQVc1RCxNQUFNLE9BQU8sbUJBQW1CO0lBVGhDO1FBV1csYUFBUSxHQUFHLEtBQUssQ0FBQTtRQUNmLGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFBO0tBZ0JqRDtJQWJDLE1BQU0sQ0FBQyxLQUFZO1FBQ2pCLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDbkIsSUFBSSxDQUFDLE9BQU8sR0FBRyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUE7WUFDNUIsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7Z0JBQ2pCLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLGFBQWEsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFBO2dCQUMxRCxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUE7Z0JBQ2IsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFBO1lBQ2IsQ0FBQztZQUNELElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQTtRQUNsQyxDQUFDO1FBQ0QsdUJBQXVCLENBQUMsS0FBSyxDQUFDLENBQUE7UUFDOUIsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFBO0lBQ3hCLENBQUM7K0dBbEJVLG1CQUFtQjttR0FBbkIsbUJBQW1CLDhRQ3hCaEMsaTBCQTZCQSwyb0JEUlksWUFBWSw2SEFBRSxNQUFNLDZHQUFFLGVBQWUsb0hBQ2hDLENBQUMsWUFBWSxDQUFDLEVBQUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxDQUFDLENBQUM7OzRGQUU5QyxtQkFBbUI7a0JBVC9CLFNBQVM7K0JBQ0UsbUJBQW1CLG1CQUdaLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLE1BQU0sRUFBRSxlQUFlLENBQUMsaUJBQ2pDLENBQUMsWUFBWSxDQUFDLEVBQUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxDQUFDLENBQUM7OEJBR2hELE9BQU87c0JBQWYsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNJLFFBQVE7c0JBQWpCLE1BQU07Z0JBQ21CLE9BQU87c0JBQWhDLFNBQVM7dUJBQUMsYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE91dHB1dCxcbiAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgcHJvcGFnYXRlVG9Eb2N1bWVudE9ubHkgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvc2hhcmVkL3NyYydcbmltcG9ydCB7IE5nSWNvbiwgcHJvdmlkZUljb25zIH0gZnJvbSAnQG5nLWljb25zL2NvcmUnXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5pbXBvcnQgeyBtYXRTdGFyLCBtYXRTdGFyQm9yZGVyIH0gZnJvbSAnQG5nLWljb25zL21hdGVyaWFsLWljb25zL2Jhc2VsaW5lJ1xuaW1wb3J0IHsgQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi4vYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2duLXVpLXN0YXItdG9nZ2xlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3N0YXItdG9nZ2xlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc3Rhci10b2dnbGUuY29tcG9uZW50LmNzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgTmdJY29uLCBCdXR0b25Db21wb25lbnRdLFxuICB2aWV3UHJvdmlkZXJzOiBbcHJvdmlkZUljb25zKHsgbWF0U3RhciwgbWF0U3RhckJvcmRlciB9KV0sXG59KVxuZXhwb3J0IGNsYXNzIFN0YXJUb2dnbGVDb21wb25lbnQge1xuICBASW5wdXQoKSB0b2dnbGVkITogYm9vbGVhblxuICBASW5wdXQoKSBkaXNhYmxlZCA9IGZhbHNlXG4gIEBPdXRwdXQoKSBuZXdWYWx1ZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKVxuICBAVmlld0NoaWxkKCdzdGFyT3ZlcmxheScpIG92ZXJsYXk6IEVsZW1lbnRSZWZcblxuICB0b2dnbGUoZXZlbnQ6IEV2ZW50KSB7XG4gICAgaWYgKCF0aGlzLmRpc2FibGVkKSB7XG4gICAgICB0aGlzLnRvZ2dsZWQgPSAhdGhpcy50b2dnbGVkXG4gICAgICBpZiAodGhpcy50b2dnbGVkKSB7XG4gICAgICAgIGNvbnN0IGFuaW0gPSB0aGlzLm92ZXJsYXkubmF0aXZlRWxlbWVudC5nZXRBbmltYXRpb25zKClbMF1cbiAgICAgICAgYW5pbS5jYW5jZWwoKVxuICAgICAgICBhbmltLnBsYXkoKVxuICAgICAgfVxuICAgICAgdGhpcy5uZXdWYWx1ZS5lbWl0KHRoaXMudG9nZ2xlZClcbiAgICB9XG4gICAgcHJvcGFnYXRlVG9Eb2N1bWVudE9ubHkoZXZlbnQpXG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKVxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiaW5saW5lLWJsb2NrIHJlbGF0aXZlIGFsaWduLW1pZGRsZVwiPlxuICA8Z24tdWktYnV0dG9uXG4gICAgW3R5cGVdPVwiJ291dGxpbmUnXCJcbiAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgIChidXR0b25DbGljayk9XCJ0b2dnbGUoJGV2ZW50KVwiXG4gICAgW25nQ2xhc3NdPVwie1xuICAgICAgZW5hYmxlZDogdG9nZ2xlZCxcbiAgICAgIGRpc2FibGVkOiAhdG9nZ2xlZCB8fCBkaXNhYmxlZCxcbiAgICAgICd0cmFuc2l0aW9uIGhvdmVyOnNjYWxlLTEyNSB3aWxsLWNoYW5nZS10cmFuc2Zvcm0nOiAhZGlzYWJsZWQsXG4gICAgfVwiXG4gID5cbiAgICA8bmctaWNvbiBbbmFtZV09XCJ0b2dnbGVkID8gJ21hdFN0YXInIDogJ21hdFN0YXJCb3JkZXInXCI+PC9uZy1pY29uPlxuICA8L2duLXVpLWJ1dHRvbj5cbiAgPHN2Z1xuICAgICNzdGFyT3ZlcmxheVxuICAgIGNsYXNzPVwic3Rhci10b2dnbGUtb3ZlcmxheVwiXG4gICAgd2lkdGg9XCI0MHB4XCJcbiAgICBoZWlnaHQ9XCI0MHB4XCJcbiAgICB2aWV3Qm94PVwiLTE1IC0xNSAzMCAzMFwiXG4gID5cbiAgICA8Zz5cbiAgICAgIDxwYXRoIGQ9XCJNIDAsMTMuMjI5MTY3IFYgMFwiIC8+XG4gICAgICA8cGF0aCBkPVwiTSAtMTIuNDg0MTg2LDQuMDg4MDM3NyAwLDBcIiAvPlxuICAgICAgPHBhdGggZD1cIk0gLTcuNjc4NDEwMiwtMTAuNzAyNjIgMCwwXCIgLz5cbiAgICAgIDxwYXRoIGQ9XCJNIDcuODczNDA3OSwtMTAuNzAyNjIgMCwwXCIgLz5cbiAgICAgIDxwYXRoIGQ9XCJNIDEyLjY3OTE4NCw0LjA4ODAzNzYgMCwwXCIgLz5cbiAgICA8L2c+XG4gIDwvc3ZnPlxuPC9kaXY+XG4iXX0=
|
|
@@ -11,7 +11,7 @@ import { MatInputModule } from '@angular/material/input';
|
|
|
11
11
|
import { MatTooltipModule } from '@angular/material/tooltip';
|
|
12
12
|
import { UiWidgetsModule } from '../../../../../libs/ui/widgets/src';
|
|
13
13
|
import { UtilSharedModule } from '../../../../../libs/util/shared/src';
|
|
14
|
-
import { NgIconComponent, provideIcons,
|
|
14
|
+
import { NgIconComponent, provideIcons, } from '@ng-icons/core';
|
|
15
15
|
import { matClose, matExpandLess, matExpandMore, } from '@ng-icons/material-icons/baseline';
|
|
16
16
|
import { TranslateModule } from '@ngx-translate/core';
|
|
17
17
|
import { TagInputModule } from 'ngx-chips';
|
|
@@ -25,6 +25,7 @@ import { DragAndDropFileInputComponent } from './drag-and-drop-file-input/drag-a
|
|
|
25
25
|
import { DropdownMultiselectComponent } from './dropdown-multiselect/dropdown-multiselect.component';
|
|
26
26
|
import { DropdownSelectorComponent } from './dropdown-selector/dropdown-selector.component';
|
|
27
27
|
import { EditableLabelDirective } from './editable-label/editable-label.directive';
|
|
28
|
+
import { InlineFilterComponent } from './inline-filter/inline-filter.component';
|
|
28
29
|
import { TextAreaComponent } from './text-area/text-area.component';
|
|
29
30
|
import { ViewportIntersectorComponent } from './viewport-intersector/viewport-intersector.component';
|
|
30
31
|
import * as i0 from "@angular/core";
|
|
@@ -34,7 +35,8 @@ export class UiInputsModule {
|
|
|
34
35
|
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: UiInputsModule, declarations: [DragAndDropFileInputComponent,
|
|
35
36
|
DropdownMultiselectComponent,
|
|
36
37
|
ViewportIntersectorComponent,
|
|
37
|
-
CheckboxComponent
|
|
38
|
+
CheckboxComponent,
|
|
39
|
+
InlineFilterComponent], imports: [CommonModule, i1.TranslateModule, NgxDropzoneModule,
|
|
38
40
|
FormsModule,
|
|
39
41
|
ReactiveFormsModule,
|
|
40
42
|
TagInputModule,
|
|
@@ -65,6 +67,7 @@ export class UiInputsModule {
|
|
|
65
67
|
CheckboxComponent,
|
|
66
68
|
DateRangePickerComponent,
|
|
67
69
|
EditableLabelDirective,
|
|
70
|
+
InlineFilterComponent,
|
|
68
71
|
BadgeComponent] }); }
|
|
69
72
|
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UiInputsModule, providers: [
|
|
70
73
|
provideIcons({
|
|
@@ -72,9 +75,6 @@ export class UiInputsModule {
|
|
|
72
75
|
matExpandMore,
|
|
73
76
|
matExpandLess,
|
|
74
77
|
}),
|
|
75
|
-
provideNgIconsConfig({
|
|
76
|
-
size: '0.9em',
|
|
77
|
-
}),
|
|
78
78
|
], imports: [CommonModule,
|
|
79
79
|
TranslateModule.forChild(),
|
|
80
80
|
NgxDropzoneModule,
|
|
@@ -106,6 +106,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
106
106
|
DropdownMultiselectComponent,
|
|
107
107
|
ViewportIntersectorComponent,
|
|
108
108
|
CheckboxComponent,
|
|
109
|
+
InlineFilterComponent,
|
|
109
110
|
],
|
|
110
111
|
imports: [
|
|
111
112
|
CommonModule,
|
|
@@ -139,9 +140,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
139
140
|
matExpandMore,
|
|
140
141
|
matExpandLess,
|
|
141
142
|
}),
|
|
142
|
-
provideNgIconsConfig({
|
|
143
|
-
size: '0.9em',
|
|
144
|
-
}),
|
|
145
143
|
],
|
|
146
144
|
exports: [
|
|
147
145
|
DropdownSelectorComponent,
|
|
@@ -154,8 +152,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
154
152
|
CheckboxComponent,
|
|
155
153
|
DateRangePickerComponent,
|
|
156
154
|
EditableLabelDirective,
|
|
155
|
+
InlineFilterComponent,
|
|
157
156
|
BadgeComponent,
|
|
158
157
|
],
|
|
159
158
|
}]
|
|
160
159
|
}] });
|
|
161
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
160
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktaW5wdXRzLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvaW5wdXRzL3NyYy9saWIvdWktaW5wdXRzLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFDcEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQzlDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDeEMsT0FBTyxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBQ2pFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFBO0FBQ3RFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDRCQUE0QixDQUFBO0FBQzlELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHdCQUF3QixDQUFBO0FBQzVELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDhCQUE4QixDQUFBO0FBQ2xFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhCQUE4QixDQUFBO0FBQ2pFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQTtBQUN4RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQTtBQUM1RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0NBQW9DLENBQUE7QUFDcEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUNBQXFDLENBQUE7QUFDdEUsT0FBTyxFQUNMLGVBQWUsRUFDZixZQUFZLEdBRWIsTUFBTSxnQkFBZ0IsQ0FBQTtBQUN2QixPQUFPLEVBQ0wsUUFBUSxFQUNSLGFBQWEsRUFDYixhQUFhLEdBQ2QsTUFBTSxtQ0FBbUMsQ0FBQTtBQUMxQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUE7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QWlCO3dCQUNqQixnQkFBZ0I7d0JBQ2hCLGtCQUFrQjt3QkFDbEIsY0FBYzt3QkFDZCxtQkFBbUI7d0JBQ25CLG1CQUFtQjt3QkFDbkIsc0JBQXNCO3dCQUN0QixpQkFBaUI7d0JBQ2pCLGVBQWU7d0JBQ2YseUJBQXlCO3dCQUN6Qix3QkFBd0I7d0JBQ3hCLG9CQUFvQjt3QkFDcEIsY0FBYzt3QkFDZCxlQUFlO3FCQUNoQjtvQkFDRCxTQUFTLEVBQUU7d0JBQ1QsWUFBWSxDQUFDOzRCQUNYLFFBQVE7NEJBQ1IsYUFBYTs0QkFDYixhQUFhO3lCQUNkLENBQUM7cUJBQ0g7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLHlCQUF5Qjt3QkFDekIsZUFBZTt3QkFDZiw2QkFBNkI7d0JBQzdCLGlCQUFpQjt3QkFDakIsNEJBQTRCO3dCQUM1Qiw0QkFBNEI7d0JBQzVCLG9CQUFvQjt3QkFDcEIsaUJBQWlCO3dCQUNqQix3QkFBd0I7d0JBQ3hCLHNCQUFzQjt3QkFDdEIscUJBQXFCO3dCQUNyQixjQUFjO3FCQUNmO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT3ZlcmxheU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5J1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3JtcydcbmltcG9ydCB7IE1hdEF1dG9jb21wbGV0ZU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2F1dG9jb21wbGV0ZSdcbmltcG9ydCB7IE1hdENoZWNrYm94TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY2hlY2tib3gnXG5pbXBvcnQgeyBNYXROYXRpdmVEYXRlTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZSdcbmltcG9ydCB7IE1hdERhdGVwaWNrZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kYXRlcGlja2VyJ1xuaW1wb3J0IHsgTWF0Rm9ybUZpZWxkTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCdcbmltcG9ydCB7IE1hdElucHV0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnXG5pbXBvcnQgeyBNYXRUb29sdGlwTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbHRpcCdcbmltcG9ydCB7IFVpV2lkZ2V0c01vZHVsZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvd2lkZ2V0cy9zcmMnXG5pbXBvcnQgeyBVdGlsU2hhcmVkTW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbGlicy91dGlsL3NoYXJlZC9zcmMnXG5pbXBvcnQge1xuICBOZ0ljb25Db21wb25lbnQsXG4gIHByb3ZpZGVJY29ucyxcbiAgcHJvdmlkZU5nSWNvbnNDb25maWcsXG59IGZyb20gJ0BuZy1pY29ucy9jb3JlJ1xuaW1wb3J0IHtcbiAgbWF0Q2xvc2UsXG4gIG1hdEV4cGFuZExlc3MsXG4gIG1hdEV4cGFuZE1vcmUsXG59IGZyb20gJ0BuZy1pY29ucy9tYXRlcmlhbC1pY29ucy9iYXNlbGluZSdcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnXG5pbXBvcnQgeyBUYWdJbnB1dE1vZHVsZSB9IGZyb20gJ25neC1jaGlwcydcbmltcG9ydCB7IE5neERyb3B6b25lTW9kdWxlIH0gZnJvbSAnbmd4LWRyb3B6b25lJ1xuaW1wb3J0IHsgQmFkZ2VDb21wb25lbnQgfSBmcm9tICcuL2JhZGdlL2JhZGdlLmNvbXBvbmVudCdcbmltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4vYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnXG5pbXBvcnQgeyBDaGVja1RvZ2dsZUNvbXBvbmVudCB9IGZyb20gJy4vY2hlY2stdG9nZ2xlL2NoZWNrLXRvZ2dsZS5jb21wb25lbnQnXG5pbXBvcnQgeyBDaGVja2JveENvbXBvbmVudCB9IGZyb20gJy4vY2hlY2tib3gvY2hlY2tib3guY29tcG9uZW50J1xuaW1wb3J0IHsgRGF0ZVJhbmdlUGlja2VyQ29tcG9uZW50IH0gZnJvbSAnLi9kYXRlLXJhbmdlLXBpY2tlci9kYXRlLXJhbmdlLXBpY2tlci5jb21wb25lbnQnXG5pbXBvcnQgeyBEcmFnQW5kRHJvcEZpbGVJbnB1dENvbXBvbmVudCB9IGZyb20gJy4vZHJhZy1hbmQtZHJvcC1maWxlLWlucHV0L2RyYWctYW5kLWRyb3AtZmlsZS1pbnB1dC5jb21wb25lbnQnXG5pbXBvcnQgeyBEcm9wZG93bk11bHRpc2VsZWN0Q29tcG9uZW50IH0gZnJvbSAnLi9kcm9wZG93bi1tdWx0aXNlbGVjdC9kcm9wZG93bi1tdWx0aXNlbGVjdC5jb21wb25lbnQnXG5pbXBvcnQgeyBEcm9wZG93blNlbGVjdG9yQ29tcG9uZW50IH0gZnJvbSAnLi9kcm9wZG93bi1zZWxlY3Rvci9kcm9wZG93bi1zZWxlY3Rvci5jb21wb25lbnQnXG5pbXBvcnQgeyBFZGl0YWJsZUxhYmVsRGlyZWN0aXZlIH0gZnJvbSAnLi9lZGl0YWJsZS1sYWJlbC9lZGl0YWJsZS1sYWJlbC5kaXJlY3RpdmUnXG5pbXBvcnQgeyBJbmxpbmVGaWx0ZXJDb21wb25lbnQgfSBmcm9tICcuL2lubGluZS1maWx0ZXIvaW5saW5lLWZpbHRlci5jb21wb25lbnQnXG5pbXBvcnQgeyBUZXh0QXJlYUNvbXBvbmVudCB9IGZyb20gJy4vdGV4dC1hcmVhL3RleHQtYXJlYS5jb21wb25lbnQnXG5pbXBvcnQgeyBWaWV3cG9ydEludGVyc2VjdG9yQ29tcG9uZW50IH0gZnJvbSAnLi92aWV3cG9ydC1pbnRlcnNlY3Rvci92aWV3cG9ydC1pbnRlcnNlY3Rvci5jb21wb25lbnQnXG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIERyYWdBbmREcm9wRmlsZUlucHV0Q29tcG9uZW50LFxuICAgIERyb3Bkb3duTXVsdGlzZWxlY3RDb21wb25lbnQsXG4gICAgVmlld3BvcnRJbnRlcnNlY3RvckNvbXBvbmVudCxcbiAgICBDaGVja2JveENvbXBvbmVudCxcbiAgICBJbmxpbmVGaWx0ZXJDb21wb25lbnQsXG4gIF0sXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgVHJhbnNsYXRlTW9kdWxlLmZvckNoaWxkKCksXG4gICAgTmd4RHJvcHpvbmVNb2R1bGUsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICBUYWdJbnB1dE1vZHVsZSxcbiAgICBVdGlsU2hhcmVkTW9kdWxlLFxuICAgIE1hdEF1dG9jb21wbGV0ZU1vZHVsZSxcbiAgICBVaVdpZGdldHNNb2R1bGUsXG4gICAgT3ZlcmxheU1vZHVsZSxcbiAgICBNYXRDaGVja2JveE1vZHVsZSxcbiAgICBNYXRUb29sdGlwTW9kdWxlLFxuICAgIE1hdEZvcm1GaWVsZE1vZHVsZSxcbiAgICBNYXRJbnB1dE1vZHVsZSxcbiAgICBNYXREYXRlcGlja2VyTW9kdWxlLFxuICAgIE1hdE5hdGl2ZURhdGVNb2R1bGUsXG4gICAgRWRpdGFibGVMYWJlbERpcmVjdGl2ZSxcbiAgICBUZXh0QXJlYUNvbXBvbmVudCxcbiAgICBCdXR0b25Db21wb25lbnQsXG4gICAgRHJvcGRvd25TZWxlY3RvckNvbXBvbmVudCxcbiAgICBEYXRlUmFuZ2VQaWNrZXJDb21wb25lbnQsXG4gICAgQ2hlY2tUb2dnbGVDb21wb25lbnQsXG4gICAgQmFkZ2VDb21wb25lbnQsXG4gICAgTmdJY29uQ29tcG9uZW50LFxuICBdLFxuICBwcm92aWRlcnM6IFtcbiAgICBwcm92aWRlSWNvbnMoe1xuICAgICAgbWF0Q2xvc2UsXG4gICAgICBtYXRFeHBhbmRNb3JlLFxuICAgICAgbWF0RXhwYW5kTGVzcyxcbiAgICB9KSxcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIERyb3Bkb3duU2VsZWN0b3JDb21wb25lbnQsXG4gICAgQnV0dG9uQ29tcG9uZW50LFxuICAgIERyYWdBbmREcm9wRmlsZUlucHV0Q29tcG9uZW50LFxuICAgIFRleHRBcmVhQ29tcG9uZW50LFxuICAgIERyb3Bkb3duTXVsdGlzZWxlY3RDb21wb25lbnQsXG4gICAgVmlld3BvcnRJbnRlcnNlY3RvckNvbXBvbmVudCxcbiAgICBDaGVja1RvZ2dsZUNvbXBvbmVudCxcbiAgICBDaGVja2JveENvbXBvbmVudCxcbiAgICBEYXRlUmFuZ2VQaWNrZXJDb21wb25lbnQsXG4gICAgRWRpdGFibGVMYWJlbERpcmVjdGl2ZSxcbiAgICBJbmxpbmVGaWx0ZXJDb21wb25lbnQsXG4gICAgQmFkZ2VDb21wb25lbnQsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIFVpSW5wdXRzTW9kdWxlIHt9XG4iXX0=
|
|
@@ -16,4 +16,5 @@ export * from './lib/pagination-dots/pagination-dots.component';
|
|
|
16
16
|
export * from './lib/previous-next-buttons/previous-next-buttons.component';
|
|
17
17
|
export * from './lib/paginable.interface';
|
|
18
18
|
export * from './lib/ui-layout.module';
|
|
19
|
-
|
|
19
|
+
export * from './lib/truncated-text/truncated-text.component';
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2xheW91dC9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx5Q0FBeUMsQ0FBQTtBQUN2RCxjQUFjLG1DQUFtQyxDQUFBO0FBQ2pELGNBQWMsaUVBQWlFLENBQUE7QUFDL0UsY0FBYyxtREFBbUQsQ0FBQTtBQUNqRSxjQUFjLHVEQUF1RCxDQUFBO0FBQ3JFLGNBQWMscUNBQXFDLENBQUE7QUFDbkQsY0FBYyxxRkFBcUYsQ0FBQTtBQUNuRyxjQUFjLHFEQUFxRCxDQUFBO0FBQ25FLGNBQWMsNkNBQTZDLENBQUE7QUFDM0QsY0FBYyx1Q0FBdUMsQ0FBQTtBQUNyRCxjQUFjLDZDQUE2QyxDQUFBO0FBQzNELGNBQWMsMkNBQTJDLENBQUE7QUFDekQsY0FBYyx1Q0FBdUMsQ0FBQTtBQUNyRCxjQUFjLHVEQUF1RCxDQUFBO0FBQ3JFLGNBQWMsaURBQWlELENBQUE7QUFDL0QsY0FBYyw2REFBNkQsQ0FBQTtBQUMzRSxjQUFjLDJCQUEyQixDQUFBO0FBQ3pDLGNBQWMsd0JBQXdCLENBQUE7QUFDdEMsY0FBYywrQ0FBK0MsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbGliL2FuY2hvci1saW5rL2FuY2hvci1saW5rLmRpcmVjdGl2ZSdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Nhcm91c2VsL2Nhcm91c2VsLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2V4cGFuZGFibGUtcGFuZWwtYnV0dG9uL2V4cGFuZGFibGUtcGFuZWwtYnV0dG9uLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2V4cGFuZGFibGUtcGFuZWwvZXhwYW5kYWJsZS1wYW5lbC5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9mb3JtLWZpZWxkLXdyYXBwZXIvZm9ybS1maWVsZC13cmFwcGVyLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL21heC1saW5lcy9tYXgtbGluZXMuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvaW50ZXJhY3RpdmUtdGFibGUvaW50ZXJhY3RpdmUtdGFibGUtY29sdW1uL2ludGVyYWN0aXZlLXRhYmxlLWNvbHVtbi5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9pbnRlcmFjdGl2ZS10YWJsZS9pbnRlcmFjdGl2ZS10YWJsZS5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9zdGlja3ktaGVhZGVyL3N0aWNreS1oZWFkZXIuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYmxvY2stbGlzdC9ibG9jay1saXN0LmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NvcnRhYmxlLWxpc3Qvc29ydGFibGUtbGlzdC5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RhbC1kaWFsb2cvbW9kYWwtZGlhbG9nLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL3BhZ2luYXRpb24vcGFnaW5hdGlvbi5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9wYWdpbmF0aW9uLWJ1dHRvbnMvcGFnaW5hdGlvbi1idXR0b25zLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL3BhZ2luYXRpb24tZG90cy9wYWdpbmF0aW9uLWRvdHMuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvcHJldmlvdXMtbmV4dC1idXR0b25zL3ByZXZpb3VzLW5leHQtYnV0dG9ucy5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9wYWdpbmFibGUuaW50ZXJmYWNlJ1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdWktbGF5b3V0Lm1vZHVsZSdcbmV4cG9ydCAqIGZyb20gJy4vbGliL3RydW5jYXRlZC10ZXh0L3RydW5jYXRlZC10ZXh0LmNvbXBvbmVudCdcbiJdfQ==
|
|
@@ -2,7 +2,15 @@ import { ChangeDetectorRef, Directive, HostBinding, HostListener, Input, } from
|
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
3
|
export class AnchorLinkDirective {
|
|
4
4
|
get elementClass() {
|
|
5
|
-
|
|
5
|
+
if (this.disabled) {
|
|
6
|
+
return this.disabledClass;
|
|
7
|
+
}
|
|
8
|
+
if (this.inView) {
|
|
9
|
+
return `${this.inViewClass} ${this.enabledClass}`;
|
|
10
|
+
}
|
|
11
|
+
else {
|
|
12
|
+
return `${this.outOfViewClass} ${this.enabledClass}`;
|
|
13
|
+
}
|
|
6
14
|
}
|
|
7
15
|
constructor(changeDetector) {
|
|
8
16
|
this.changeDetector = changeDetector;
|
|
@@ -10,6 +18,8 @@ export class AnchorLinkDirective {
|
|
|
10
18
|
this.observer = new MutationObserver(() => {
|
|
11
19
|
this.refreshDisabledState();
|
|
12
20
|
});
|
|
21
|
+
this.inView = false;
|
|
22
|
+
this.initialized = false;
|
|
13
23
|
}
|
|
14
24
|
ngOnInit() {
|
|
15
25
|
this.observer.observe(document.body, {
|
|
@@ -18,8 +28,32 @@ export class AnchorLinkDirective {
|
|
|
18
28
|
});
|
|
19
29
|
this.refreshDisabledState();
|
|
20
30
|
}
|
|
31
|
+
ngAfterViewChecked() {
|
|
32
|
+
if (!this.initialized && !this.disabled) {
|
|
33
|
+
const target = document.getElementById(this.targetId);
|
|
34
|
+
if (target) {
|
|
35
|
+
this.initializeIntersectionObserver(target);
|
|
36
|
+
this.initialized = true;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
initializeIntersectionObserver(target) {
|
|
41
|
+
this.intersectionObserver = new IntersectionObserver((entries) => {
|
|
42
|
+
entries.forEach((entry) => {
|
|
43
|
+
this.inView = entry.isIntersecting;
|
|
44
|
+
this.changeDetector.detectChanges();
|
|
45
|
+
});
|
|
46
|
+
}, {
|
|
47
|
+
root: null,
|
|
48
|
+
rootMargin: '-30% 0% -60% 0%',
|
|
49
|
+
});
|
|
50
|
+
this.intersectionObserver.observe(target);
|
|
51
|
+
}
|
|
21
52
|
ngOnDestroy() {
|
|
22
53
|
this.observer.disconnect();
|
|
54
|
+
if (this.intersectionObserver) {
|
|
55
|
+
this.intersectionObserver.disconnect();
|
|
56
|
+
}
|
|
23
57
|
}
|
|
24
58
|
refreshDisabledState() {
|
|
25
59
|
const targetNotPresent = !document.getElementById(this.targetId);
|
|
@@ -38,7 +72,7 @@ export class AnchorLinkDirective {
|
|
|
38
72
|
});
|
|
39
73
|
}
|
|
40
74
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AnchorLinkDirective, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
41
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: AnchorLinkDirective, selector: "[gnUiAnchorLink]", inputs: { targetId: ["gnUiAnchorLink", "targetId"], disabledClass: ["gnUiAnchorLinkDisabledClass", "disabledClass"], enabledClass: ["gnUiAnchorLinkEnabledClass", "enabledClass"] }, host: { listeners: { "click": "scrollToTarget()" }, properties: { "class": "this.elementClass" } }, ngImport: i0 }); }
|
|
75
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: AnchorLinkDirective, selector: "[gnUiAnchorLink]", inputs: { targetId: ["gnUiAnchorLink", "targetId"], disabledClass: ["gnUiAnchorLinkDisabledClass", "disabledClass"], enabledClass: ["gnUiAnchorLinkEnabledClass", "enabledClass"], inViewClass: ["gnUiAnchorLinkInViewClass", "inViewClass"], outOfViewClass: ["gnUiAnchorLinkOutOfViewClass", "outOfViewClass"] }, host: { listeners: { "click": "scrollToTarget()" }, properties: { "class": "this.elementClass" } }, ngImport: i0 }); }
|
|
42
76
|
}
|
|
43
77
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AnchorLinkDirective, decorators: [{
|
|
44
78
|
type: Directive,
|
|
@@ -54,6 +88,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
54
88
|
}], enabledClass: [{
|
|
55
89
|
type: Input,
|
|
56
90
|
args: ['gnUiAnchorLinkEnabledClass']
|
|
91
|
+
}], inViewClass: [{
|
|
92
|
+
type: Input,
|
|
93
|
+
args: ['gnUiAnchorLinkInViewClass']
|
|
94
|
+
}], outOfViewClass: [{
|
|
95
|
+
type: Input,
|
|
96
|
+
args: ['gnUiAnchorLinkOutOfViewClass']
|
|
57
97
|
}], elementClass: [{
|
|
58
98
|
type: HostBinding,
|
|
59
99
|
args: ['class']
|
|
@@ -61,4 +101,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
61
101
|
type: HostListener,
|
|
62
102
|
args: ['click']
|
|
63
103
|
}] } });
|
|
64
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
104
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5jaG9yLWxpbmsuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9sYXlvdXQvc3JjL2xpYi9hbmNob3ItbGluay9hbmNob3ItbGluay5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsV0FBVyxFQUNYLFlBQVksRUFDWixLQUFLLEdBR04sTUFBTSxlQUFlLENBQUE7O0FBS3RCLE1BQU0sT0FBTyxtQkFBbUI7SUFTOUIsSUFDSSxZQUFZO1FBQ2QsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDbEIsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFBO1FBQzNCLENBQUM7UUFDRCxJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNoQixPQUFPLEdBQUcsSUFBSSxDQUFDLFdBQVcsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUE7UUFDbkQsQ0FBQzthQUFNLENBQUM7WUFDTixPQUFPLEdBQUcsSUFBSSxDQUFDLGNBQWMsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUE7UUFDdEQsQ0FBQztJQUNILENBQUM7SUFVRCxZQUFvQixjQUFpQztRQUFqQyxtQkFBYyxHQUFkLGNBQWMsQ0FBbUI7UUFSckQsYUFBUSxHQUFHLEtBQUssQ0FBQTtRQUNoQixhQUFRLEdBQUcsSUFBSSxnQkFBZ0IsQ0FBQyxHQUFHLEVBQUU7WUFDbkMsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUE7UUFDN0IsQ0FBQyxDQUFDLENBQUE7UUFDRixXQUFNLEdBQUcsS0FBSyxDQUFBO1FBRWQsZ0JBQVcsR0FBRyxLQUFLLENBQUE7SUFFcUMsQ0FBQztJQUV6RCxRQUFRO1FBQ04sSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRTtZQUNuQyxTQUFTLEVBQUUsSUFBSTtZQUNmLE9BQU8sRUFBRSxJQUFJO1NBQ2QsQ0FBQyxDQUFBO1FBQ0YsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUE7SUFDN0IsQ0FBQztJQUVELGtCQUFrQjtRQUNoQixJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUN4QyxNQUFNLE1BQU0sR0FBRyxRQUFRLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQTtZQUNyRCxJQUFJLE1BQU0sRUFBRSxDQUFDO2dCQUNYLElBQUksQ0FBQyw4QkFBOEIsQ0FBQyxNQUFNLENBQUMsQ0FBQTtnQkFDM0MsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUE7WUFDekIsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDO0lBRUQsOEJBQThCLENBQUMsTUFBbUI7UUFDaEQsSUFBSSxDQUFDLG9CQUFvQixHQUFHLElBQUksb0JBQW9CLENBQ2xELENBQUMsT0FBTyxFQUFFLEVBQUU7WUFDVixPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7Z0JBQ3hCLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDLGNBQWMsQ0FBQTtnQkFDbEMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxhQUFhLEVBQUUsQ0FBQTtZQUNyQyxDQUFDLENBQUMsQ0FBQTtRQUNKLENBQUMsRUFDRDtZQUNFLElBQUksRUFBRSxJQUFJO1lBQ1YsVUFBVSxFQUFFLGlCQUFpQjtTQUM5QixDQUNGLENBQUE7UUFDRCxJQUFJLENBQUMsb0JBQW9CLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFBO0lBQzNDLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLEVBQUUsQ0FBQTtRQUMxQixJQUFJLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO1lBQzlCLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxVQUFVLEVBQUUsQ0FBQTtRQUN4QyxDQUFDO0lBQ0gsQ0FBQztJQUVELG9CQUFvQjtRQUNsQixNQUFNLGdCQUFnQixHQUFHLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUE7UUFDaEUsSUFBSSxnQkFBZ0IsS0FBSyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDdkMsSUFBSSxDQUFDLFFBQVEsR0FBRyxnQkFBZ0IsQ0FBQTtZQUNoQyxJQUFJLENBQUMsY0FBYyxDQUFDLGFBQWEsRUFBRSxDQUFBO1FBQ3JDLENBQUM7SUFDSCxDQUFDO0lBRXNCLGNBQWM7UUFDbkMsTUFBTSxNQUFNLEdBQUcsUUFBUSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUE7UUFDckQsSUFBSSxDQUFDLE1BQU07WUFBRSxPQUFNO1FBQ25CLE1BQU0sQ0FBQyxjQUFjLENBQUM7WUFDcEIsUUFBUSxFQUFFLFFBQVE7WUFDbEIsS0FBSyxFQUFFLE9BQU87U0FDZixDQUFDLENBQUE7SUFDSixDQUFDOytHQXZGVSxtQkFBbUI7bUdBQW5CLG1CQUFtQjs7NEZBQW5CLG1CQUFtQjtrQkFIL0IsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsa0JBQWtCO2lCQUM3QjtzRkFJMEIsUUFBUTtzQkFBaEMsS0FBSzt1QkFBQyxnQkFBZ0I7Z0JBQ2UsYUFBYTtzQkFBbEQsS0FBSzt1QkFBQyw2QkFBNkI7Z0JBQ0MsWUFBWTtzQkFBaEQsS0FBSzt1QkFBQyw0QkFBNEI7Z0JBQ0MsV0FBVztzQkFBOUMsS0FBSzt1QkFBQywyQkFBMkI7Z0JBQ0ssY0FBYztzQkFBcEQsS0FBSzt1QkFBQyw4QkFBOEI7Z0JBR2pDLFlBQVk7c0JBRGYsV0FBVzt1QkFBQyxPQUFPO2dCQXVFRyxjQUFjO3NCQUFwQyxZQUFZO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlclZpZXdDaGVja2VkLFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgRGlyZWN0aXZlLFxuICBIb3N0QmluZGluZyxcbiAgSG9zdExpc3RlbmVyLFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tnblVpQW5jaG9yTGlua10nLFxufSlcbmV4cG9ydCBjbGFzcyBBbmNob3JMaW5rRGlyZWN0aXZlXG4gIGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdDaGVja2VkLCBPbkRlc3Ryb3lcbntcbiAgQElucHV0KCdnblVpQW5jaG9yTGluaycpIHRhcmdldElkOiBzdHJpbmdcbiAgQElucHV0KCdnblVpQW5jaG9yTGlua0Rpc2FibGVkQ2xhc3MnKSBkaXNhYmxlZENsYXNzOiBzdHJpbmdcbiAgQElucHV0KCdnblVpQW5jaG9yTGlua0VuYWJsZWRDbGFzcycpIGVuYWJsZWRDbGFzczogc3RyaW5nXG4gIEBJbnB1dCgnZ25VaUFuY2hvckxpbmtJblZpZXdDbGFzcycpIGluVmlld0NsYXNzOiBzdHJpbmdcbiAgQElucHV0KCdnblVpQW5jaG9yTGlua091dE9mVmlld0NsYXNzJykgb3V0T2ZWaWV3Q2xhc3M6IHN0cmluZ1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICBnZXQgZWxlbWVudENsYXNzKCk6IHN0cmluZyB7XG4gICAgaWYgKHRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIHJldHVybiB0aGlzLmRpc2FibGVkQ2xhc3NcbiAgICB9XG4gICAgaWYgKHRoaXMuaW5WaWV3KSB7XG4gICAgICByZXR1cm4gYCR7dGhpcy5pblZpZXdDbGFzc30gJHt0aGlzLmVuYWJsZWRDbGFzc31gXG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBgJHt0aGlzLm91dE9mVmlld0NsYXNzfSAke3RoaXMuZW5hYmxlZENsYXNzfWBcbiAgICB9XG4gIH1cblxuICBkaXNhYmxlZCA9IGZhbHNlXG4gIG9ic2VydmVyID0gbmV3IE11dGF0aW9uT2JzZXJ2ZXIoKCkgPT4ge1xuICAgIHRoaXMucmVmcmVzaERpc2FibGVkU3RhdGUoKVxuICB9KVxuICBpblZpZXcgPSBmYWxzZVxuICBpbnRlcnNlY3Rpb25PYnNlcnZlcjogSW50ZXJzZWN0aW9uT2JzZXJ2ZXJcbiAgaW5pdGlhbGl6ZWQgPSBmYWxzZVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmKSB7fVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMub2JzZXJ2ZXIub2JzZXJ2ZShkb2N1bWVudC5ib2R5LCB7XG4gICAgICBjaGlsZExpc3Q6IHRydWUsXG4gICAgICBzdWJ0cmVlOiB0cnVlLFxuICAgIH0pXG4gICAgdGhpcy5yZWZyZXNoRGlzYWJsZWRTdGF0ZSgpXG4gIH1cblxuICBuZ0FmdGVyVmlld0NoZWNrZWQoKSB7XG4gICAgaWYgKCF0aGlzLmluaXRpYWxpemVkICYmICF0aGlzLmRpc2FibGVkKSB7XG4gICAgICBjb25zdCB0YXJnZXQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCh0aGlzLnRhcmdldElkKVxuICAgICAgaWYgKHRhcmdldCkge1xuICAgICAgICB0aGlzLmluaXRpYWxpemVJbnRlcnNlY3Rpb25PYnNlcnZlcih0YXJnZXQpXG4gICAgICAgIHRoaXMuaW5pdGlhbGl6ZWQgPSB0cnVlXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgaW5pdGlhbGl6ZUludGVyc2VjdGlvbk9ic2VydmVyKHRhcmdldDogSFRNTEVsZW1lbnQpIHtcbiAgICB0aGlzLmludGVyc2VjdGlvbk9ic2VydmVyID0gbmV3IEludGVyc2VjdGlvbk9ic2VydmVyKFxuICAgICAgKGVudHJpZXMpID0+IHtcbiAgICAgICAgZW50cmllcy5mb3JFYWNoKChlbnRyeSkgPT4ge1xuICAgICAgICAgIHRoaXMuaW5WaWV3ID0gZW50cnkuaXNJbnRlcnNlY3RpbmdcbiAgICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKVxuICAgICAgICB9KVxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgcm9vdDogbnVsbCxcbiAgICAgICAgcm9vdE1hcmdpbjogJy0zMCUgMCUgLTYwJSAwJScsXG4gICAgICB9XG4gICAgKVxuICAgIHRoaXMuaW50ZXJzZWN0aW9uT2JzZXJ2ZXIub2JzZXJ2ZSh0YXJnZXQpXG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLm9ic2VydmVyLmRpc2Nvbm5lY3QoKVxuICAgIGlmICh0aGlzLmludGVyc2VjdGlvbk9ic2VydmVyKSB7XG4gICAgICB0aGlzLmludGVyc2VjdGlvbk9ic2VydmVyLmRpc2Nvbm5lY3QoKVxuICAgIH1cbiAgfVxuXG4gIHJlZnJlc2hEaXNhYmxlZFN0YXRlKCkge1xuICAgIGNvbnN0IHRhcmdldE5vdFByZXNlbnQgPSAhZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQodGhpcy50YXJnZXRJZClcbiAgICBpZiAodGFyZ2V0Tm90UHJlc2VudCAhPT0gdGhpcy5kaXNhYmxlZCkge1xuICAgICAgdGhpcy5kaXNhYmxlZCA9IHRhcmdldE5vdFByZXNlbnRcbiAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpXG4gICAgfVxuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignY2xpY2snKSBzY3JvbGxUb1RhcmdldCgpIHtcbiAgICBjb25zdCB0YXJnZXQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCh0aGlzLnRhcmdldElkKVxuICAgIGlmICghdGFyZ2V0KSByZXR1cm5cbiAgICB0YXJnZXQuc2Nyb2xsSW50b1ZpZXcoe1xuICAgICAgYmVoYXZpb3I6ICdzbW9vdGgnLFxuICAgICAgYmxvY2s6ICdzdGFydCcsXG4gICAgfSlcbiAgfVxufVxuIl19
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ContentChildren, ElementRef, Input, QueryList, ViewChild, } from '@angular/core';
|
|
1
|
+
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ContentChildren, ElementRef, EventEmitter, Input, Output, QueryList, ViewChild, } from '@angular/core';
|
|
2
2
|
import { CommonModule } from '@angular/common';
|
|
3
3
|
import { PaginationDotsComponent } from '../pagination-dots/pagination-dots.component';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
@@ -17,14 +17,16 @@ export class BlockListComponent {
|
|
|
17
17
|
return this.blocks ? Math.ceil(this.blocks.length / this.pageSize) : 1;
|
|
18
18
|
}
|
|
19
19
|
get currentPage() {
|
|
20
|
-
return this.currentPage_ + 1;
|
|
20
|
+
return this.currentPage_ + 1;
|
|
21
21
|
}
|
|
22
22
|
constructor(changeDetector) {
|
|
23
23
|
this.changeDetector = changeDetector;
|
|
24
|
-
this.pageSize =
|
|
24
|
+
this.pageSize = 4;
|
|
25
25
|
this.containerClass = '';
|
|
26
26
|
this.paginationContainerClass = 'w-full bottom-0 top-auto';
|
|
27
27
|
this.minHeight = 0;
|
|
28
|
+
this.listChanges = new EventEmitter();
|
|
29
|
+
this.subComponentSize = 'M';
|
|
28
30
|
this.currentPage_ = 0;
|
|
29
31
|
this.refreshBlocksVisibility = () => {
|
|
30
32
|
this.blocks.forEach((block, index) => {
|
|
@@ -37,13 +39,48 @@ export class BlockListComponent {
|
|
|
37
39
|
};
|
|
38
40
|
}
|
|
39
41
|
ngAfterViewInit() {
|
|
40
|
-
this.blocks.changes.subscribe(
|
|
42
|
+
this.blocks.changes.subscribe(() => {
|
|
43
|
+
this.updateSizes();
|
|
44
|
+
this.refreshBlocksVisibility();
|
|
45
|
+
this.goToPage(1);
|
|
46
|
+
this.changeDetector.detectChanges();
|
|
47
|
+
this.listChanges.emit(this);
|
|
48
|
+
});
|
|
49
|
+
this.updateSizes();
|
|
41
50
|
this.refreshBlocksVisibility();
|
|
42
51
|
// we store the first height as the min-height of the list container
|
|
43
52
|
this.minHeight = this.blockContainer.nativeElement.clientHeight;
|
|
44
53
|
this.changeDetector.detectChanges();
|
|
54
|
+
this.listChanges.emit(this);
|
|
55
|
+
}
|
|
56
|
+
updateSizes() {
|
|
57
|
+
this.subComponentSize = this.computeSubComponentSize();
|
|
58
|
+
this.pageSize = this.computePageSize();
|
|
59
|
+
}
|
|
60
|
+
computeSubComponentSize() {
|
|
61
|
+
if (!this.blocks)
|
|
62
|
+
return 'M';
|
|
63
|
+
const subComponentsCount = this.blocks.length;
|
|
64
|
+
if (subComponentsCount <= 3)
|
|
65
|
+
return 'L';
|
|
66
|
+
if (subComponentsCount <= 12)
|
|
67
|
+
return 'M';
|
|
68
|
+
if (subComponentsCount <= 18)
|
|
69
|
+
return 'S';
|
|
70
|
+
return 'XS';
|
|
71
|
+
}
|
|
72
|
+
computePageSize() {
|
|
73
|
+
switch (this.subComponentSize) {
|
|
74
|
+
case 'L':
|
|
75
|
+
return 3;
|
|
76
|
+
case 'S':
|
|
77
|
+
return 6;
|
|
78
|
+
case 'XS':
|
|
79
|
+
return 8;
|
|
80
|
+
default:
|
|
81
|
+
return 4;
|
|
82
|
+
}
|
|
45
83
|
}
|
|
46
|
-
// pageIndex is 1-based
|
|
47
84
|
goToPage(pageIndex) {
|
|
48
85
|
this.currentPage_ = Math.max(Math.min(pageIndex - 1, this.pagesCount - 1), 0);
|
|
49
86
|
this.changeDetector.detectChanges();
|
|
@@ -60,14 +97,12 @@ export class BlockListComponent {
|
|
|
60
97
|
this.goToPage(this.currentPage + 1);
|
|
61
98
|
}
|
|
62
99
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BlockListComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
63
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: BlockListComponent, isStandalone: true, selector: "gn-ui-block-list", inputs: {
|
|
100
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: BlockListComponent, isStandalone: true, selector: "gn-ui-block-list", inputs: { containerClass: "containerClass", paginationContainerClass: "paginationContainerClass" }, outputs: { listChanges: "listChanges" }, queries: [{ propertyName: "blocks", predicate: ["block"], read: ElementRef }], viewQueries: [{ propertyName: "blockContainer", first: true, predicate: ["blockContainer"], descendants: true }], ngImport: i0, template: "<div\n class=\"grid gap-4 w-full md:grid-cols-2\"\n #blockContainer\n [ngClass]=\"[containerClass, 'size-' + subComponentSize]\"\n [ngStyle]=\"{ minHeight: minHeight + 'px' }\"\n>\n <ng-content></ng-content>\n</div>\n<gn-ui-pagination-dots\n [containerClass]=\"'absolute ' + paginationContainerClass\"\n [listComponent]=\"this\"\n></gn-ui-pagination-dots>\n", styles: [":host .block-list-container ::ng-deep>*{flex-shrink:0}:host{position:relative}@media screen and (min-width: 769px){.size-L{grid-template-columns:repeat(1,minmax(0,1fr));grid-auto-rows:minmax(0,min-content)}.size-M{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(0,min-content)}.size-S{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:minmax(0,min-content)}.size-XS{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(0,min-content)}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: PaginationDotsComponent, selector: "gn-ui-pagination-dots", inputs: ["listComponent", "containerClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
64
101
|
}
|
|
65
102
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BlockListComponent, decorators: [{
|
|
66
103
|
type: Component,
|
|
67
|
-
args: [{ selector: 'gn-ui-block-list', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule, PaginationDotsComponent], template: "<div\n class=\"
|
|
68
|
-
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: {
|
|
69
|
-
type: Input
|
|
70
|
-
}], containerClass: [{
|
|
104
|
+
args: [{ selector: 'gn-ui-block-list', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule, PaginationDotsComponent], template: "<div\n class=\"grid gap-4 w-full md:grid-cols-2\"\n #blockContainer\n [ngClass]=\"[containerClass, 'size-' + subComponentSize]\"\n [ngStyle]=\"{ minHeight: minHeight + 'px' }\"\n>\n <ng-content></ng-content>\n</div>\n<gn-ui-pagination-dots\n [containerClass]=\"'absolute ' + paginationContainerClass\"\n [listComponent]=\"this\"\n></gn-ui-pagination-dots>\n", styles: [":host .block-list-container ::ng-deep>*{flex-shrink:0}:host{position:relative}@media screen and (min-width: 769px){.size-L{grid-template-columns:repeat(1,minmax(0,1fr));grid-auto-rows:minmax(0,min-content)}.size-M{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(0,min-content)}.size-S{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:minmax(0,min-content)}.size-XS{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(0,min-content)}}\n"] }]
|
|
105
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { containerClass: [{
|
|
71
106
|
type: Input
|
|
72
107
|
}], paginationContainerClass: [{
|
|
73
108
|
type: Input
|
|
@@ -77,5 +112,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
77
112
|
}], blockContainer: [{
|
|
78
113
|
type: ViewChild,
|
|
79
114
|
args: ['blockContainer']
|
|
115
|
+
}], listChanges: [{
|
|
116
|
+
type: Output
|
|
80
117
|
}] } });
|
|
81
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmxvY2stbGlzdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2xheW91dC9zcmMvbGliL2Jsb2NrLWxpc3QvYmxvY2stbGlzdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2xheW91dC9zcmMvbGliL2Jsb2NrLWxpc3QvYmxvY2stbGlzdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsZUFBZSxFQUNmLFVBQVUsRUFDVixLQUFLLEVBQ0wsU0FBUyxFQUNULFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQTtBQUN0QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFFOUMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sOENBQThDLENBQUE7OztBQVV0RixNQUFNLE9BQU8sa0JBQWtCO0lBWTdCLElBQWMsS0FBSztRQUNqQixPQUFPLElBQUksS0FBSyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUE7SUFDNUQsQ0FBQztJQUVELElBQUksV0FBVztRQUNiLE9BQU8sSUFBSSxDQUFDLFlBQVksS0FBSyxDQUFDLENBQUE7SUFDaEMsQ0FBQztJQUNELElBQUksVUFBVTtRQUNaLE9BQU8sSUFBSSxDQUFDLFlBQVksS0FBSyxJQUFJLENBQUMsVUFBVSxHQUFHLENBQUMsQ0FBQTtJQUNsRCxDQUFDO0lBQ0QsSUFBSSxVQUFVO1FBQ1osT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFN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WyJpbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgQ29udGVudENoaWxkcmVuLFxuICBFbGVtZW50UmVmLFxuICBJbnB1dCxcbiAgUXVlcnlMaXN0LFxuICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5pbXBvcnQgeyBQYWdpbmFibGUgfSBmcm9tICcuLi9wYWdpbmFibGUuaW50ZXJmYWNlJ1xuaW1wb3J0IHsgUGFnaW5hdGlvbkRvdHNDb21wb25lbnQgfSBmcm9tICcuLi9wYWdpbmF0aW9uLWRvdHMvcGFnaW5hdGlvbi1kb3RzLmNvbXBvbmVudCdcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ24tdWktYmxvY2stbGlzdCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9ibG9jay1saXN0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vYmxvY2stbGlzdC5jb21wb25lbnQuY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBQYWdpbmF0aW9uRG90c0NvbXBvbmVudF0sXG59KVxuZXhwb3J0IGNsYXNzIEJsb2NrTGlzdENvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIFBhZ2luYWJsZSB7XG4gIEBJbnB1dCgpIHBhZ2VTaXplID0gNVxuICBASW5wdXQoKSBjb250YWluZXJDbGFzcyA9ICcnXG4gIEBJbnB1dCgpIHBhZ2luYXRpb25Db250YWluZXJDbGFzcyA9ICd3LWZ1bGwgYm90dG9tLTAgdG9wLWF1dG8nXG4gIEBDb250ZW50Q2hpbGRyZW4oJ2Jsb2NrJywgeyByZWFkOiBFbGVtZW50UmVmIH0pIGJsb2NrczogUXVlcnlMaXN0PFxuICAgIEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+XG4gID5cbiAgQFZpZXdDaGlsZCgnYmxvY2tDb250YWluZXInKSBibG9ja0NvbnRhaW5lcjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD5cblxuICBwcm90ZWN0ZWQgbWluSGVpZ2h0ID0gMFxuXG4gIHByb3RlY3RlZCBjdXJyZW50UGFnZV8gPSAwXG4gIHByb3RlY3RlZCBnZXQgcGFnZXMoKSB7XG4gICAgcmV0dXJuIG5ldyBBcnJheSh0aGlzLnBhZ2VzQ291bnQpLmZpbGwoMCkubWFwKChfLCBpKSA9PiBpKVxuICB9XG5cbiAgZ2V0IGlzRmlyc3RQYWdlKCkge1xuICAgIHJldHVybiB0aGlzLmN1cnJlbnRQYWdlXyA9PT0gMFxuICB9XG4gIGdldCBpc0xhc3RQYWdlKCkge1xuICAgIHJldHVybiB0aGlzLmN1cnJlbnRQYWdlXyA9PT0gdGhpcy5wYWdlc0NvdW50IC0gMVxuICB9XG4gIGdldCBwYWdlc0NvdW50KCkge1xuICAgIHJldHVybiB0aGlzLmJsb2NrcyA/IE1hdGguY2VpbCh0aGlzLmJsb2Nrcy5sZW5ndGggLyB0aGlzLnBhZ2VTaXplKSA6IDFcbiAgfVxuICBnZXQgY3VycmVudFBhZ2UoKSB7XG4gICAgcmV0dXJuIHRoaXMuY3VycmVudFBhZ2VfICsgMSAvLyB0aGlzIGlzIDEtYmFzZWRcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmKSB7fVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICB0aGlzLmJsb2Nrcy5jaGFuZ2VzLnN1YnNjcmliZSh0aGlzLnJlZnJlc2hCbG9ja3NWaXNpYmlsaXR5KVxuICAgIHRoaXMucmVmcmVzaEJsb2Nrc1Zpc2liaWxpdHkoKVxuXG4gICAgLy8gd2Ugc3RvcmUgdGhlIGZpcnN0IGhlaWdodCBhcyB0aGUgbWluLWhlaWdodCBvZiB0aGUgbGlzdCBjb250YWluZXJcbiAgICB0aGlzLm1pbkhlaWdodCA9IHRoaXMuYmxvY2tDb250YWluZXIubmF0aXZlRWxlbWVudC5jbGllbnRIZWlnaHRcbiAgICB0aGlzLmNoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKVxuICB9XG5cbiAgcHJvdGVjdGVkIHJlZnJlc2hCbG9ja3NWaXNpYmlsaXR5ID0gKCkgPT4ge1xuICAgIHRoaXMuYmxvY2tzLmZvckVhY2goKGJsb2NrLCBpbmRleCkgPT4ge1xuICAgICAgYmxvY2submF0aXZlRWxlbWVudC5zdHlsZS5kaXNwbGF5ID1cbiAgICAgICAgaW5kZXggPj0gdGhpcy5jdXJyZW50UGFnZV8gKiB0aGlzLnBhZ2VTaXplICYmXG4gICAgICAgIGluZGV4IDwgKHRoaXMuY3VycmVudFBhZ2VfICsgMSkgKiB0aGlzLnBhZ2VTaXplXG4gICAgICAgICAgPyBudWxsXG4gICAgICAgICAgOiAnbm9uZSdcbiAgICB9KVxuICB9XG5cbiAgLy8gcGFnZUluZGV4IGlzIDEtYmFzZWRcbiAgcHVibGljIGdvVG9QYWdlKHBhZ2VJbmRleDogbnVtYmVyKSB7XG4gICAgdGhpcy5jdXJyZW50UGFnZV8gPSBNYXRoLm1heChcbiAgICAgIE1hdGgubWluKHBhZ2VJbmRleCAtIDEsIHRoaXMucGFnZXNDb3VudCAtIDEpLFxuICAgICAgMFxuICAgIClcbiAgICB0aGlzLmNoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKVxuICAgIHRoaXMucmVmcmVzaEJsb2Nrc1Zpc2liaWxpdHkoKVxuICB9XG5cbiAgcHVibGljIGdvVG9QcmV2UGFnZSgpIHtcbiAgICBpZiAodGhpcy5pc0ZpcnN0UGFnZSkgcmV0dXJuXG4gICAgdGhpcy5nb1RvUGFnZSh0aGlzLmN1cnJlbnRQYWdlIC0gMSlcbiAgfVxuXG4gIHB1YmxpYyBnb1RvTmV4dFBhZ2UoKSB7XG4gICAgaWYgKHRoaXMuaXNMYXN0UGFnZSkgcmV0dXJuXG4gICAgdGhpcy5nb1RvUGFnZSh0aGlzLmN1cnJlbnRQYWdlICsgMSlcbiAgfVxufVxuIiwiPGRpdlxuICBjbGFzcz1cImJsb2NrLWxpc3QtY29udGFpbmVyIGZsZXggZmxleC1jb2xcIlxuICAjYmxvY2tDb250YWluZXJcbiAgW25nQ2xhc3NdPVwiY29udGFpbmVyQ2xhc3NcIlxuICBbbmdTdHlsZV09XCJ7IG1pbkhlaWdodDogbWluSGVpZ2h0ICsgJ3B4JyB9XCJcbj5cbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPC9kaXY+XG48Z24tdWktcGFnaW5hdGlvbi1kb3RzXG4gIFtjb250YWluZXJDbGFzc109XCInYWJzb2x1dGUgJyArIHBhZ2luYXRpb25Db250YWluZXJDbGFzc1wiXG4gIFtsaXN0Q29tcG9uZW50XT1cInRoaXNcIlxuPjwvZ24tdWktcGFnaW5hdGlvbi1kb3RzPlxuIl19
|
|
118
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmxvY2stbGlzdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2xheW91dC9zcmMvbGliL2Jsb2NrLWxpc3QvYmxvY2stbGlzdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2xheW91dC9zcmMvbGliL2Jsb2NrLWxpc3QvYmxvY2stbGlzdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsZUFBZSxFQUNmLFVBQVUsRUFDVixZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sRUFDTixTQUFTLEVBQ1QsU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFBO0FBQ3RCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUU5QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQTs7O0FBV3RGLE1BQU0sT0FBTyxrQkFBa0I7SUFhN0IsSUFBYyxLQUFLO1FBQ2pCLE9BQU8sSUFBSSxLQUFLLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQTtJQUM1RCxDQUFDO0lBRUQsSUFBSSxXQUFXO1FBQ2IsT0FBTyxJQUFJLENBQUMsWUFBWSxLQUFLLENBQUMsQ0FBQTtJQUNoQyxDQUFDO0lBQ0QsSUFBSSxVQUFVO1FBQ1osT0FBTyxJQUFJLENBQUMsWUFBWSxLQUFLLElBQUksQ0FBQyxVQUFVLEdBQUcsQ0FBQyxDQUFBO0lBQ2xELENBQUM7SUFDRCxJQUFJLFVBQVU7UUFDWixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJ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c0JBQTFDLFNBQVM7dUJBQUMsZ0JBQWdCO2dCQUVqQixXQUFXO3NCQUFwQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZHJlbixcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT3V0cHV0LFxuICBRdWVyeUxpc3QsXG4gIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbidcbmltcG9ydCB7IFBhZ2luYWJsZSB9IGZyb20gJy4uL3BhZ2luYWJsZS5pbnRlcmZhY2UnXG5pbXBvcnQgeyBQYWdpbmF0aW9uRG90c0NvbXBvbmVudCB9IGZyb20gJy4uL3BhZ2luYXRpb24tZG90cy9wYWdpbmF0aW9uLWRvdHMuY29tcG9uZW50J1xuXG50eXBlIENvbXBvbmVudFNpemUgPSAnTCcgfCAnTScgfCAnUycgfCAnWFMnXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnbi11aS1ibG9jay1saXN0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Jsb2NrLWxpc3QuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9ibG9jay1saXN0LmNvbXBvbmVudC5jc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFBhZ2luYXRpb25Eb3RzQ29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgQmxvY2tMaXN0Q29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgUGFnaW5hYmxlIHtcbiAgcGFnZVNpemUgPSA0XG4gIEBJbnB1dCgpIGNvbnRhaW5lckNsYXNzID0gJydcbiAgQElucHV0KCkgcGFnaW5hdGlvbkNvbnRhaW5lckNsYXNzID0gJ3ctZnVsbCBib3R0b20tMCB0b3AtYXV0bydcbiAgQENvbnRlbnRDaGlsZHJlbignYmxvY2snLCB7IHJlYWQ6IEVsZW1lbnRSZWYgfSkgYmxvY2tzOiBRdWVyeUxpc3Q8XG4gICAgRWxlbWVudFJlZjxIVE1MRWxlbWVudD5cbiAgPlxuICBAVmlld0NoaWxkKCdibG9ja0NvbnRhaW5lcicpIGJsb2NrQ29udGFpbmVyOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PlxuICBwcm90ZWN0ZWQgbWluSGVpZ2h0ID0gMFxuICBAT3V0cHV0KCkgbGlzdENoYW5nZXMgPSBuZXcgRXZlbnRFbWl0dGVyPEJsb2NrTGlzdENvbXBvbmVudD4oKVxuICBzdWJDb21wb25lbnRTaXplOiBDb21wb25lbnRTaXplID0gJ00nXG5cbiAgcHJvdGVjdGVkIGN1cnJlbnRQYWdlXyA9IDBcbiAgcHJvdGVjdGVkIGdldCBwYWdlcygpIHtcbiAgICByZXR1cm4gbmV3IEFycmF5KHRoaXMucGFnZXNDb3VudCkuZmlsbCgwKS5tYXAoKF8sIGkpID0+IGkpXG4gIH1cblxuICBnZXQgaXNGaXJzdFBhZ2UoKSB7XG4gICAgcmV0dXJuIHRoaXMuY3VycmVudFBhZ2VfID09PSAwXG4gIH1cbiAgZ2V0IGlzTGFzdFBhZ2UoKSB7XG4gICAgcmV0dXJuIHRoaXMuY3VycmVudFBhZ2VfID09PSB0aGlzLnBhZ2VzQ291bnQgLSAxXG4gIH1cbiAgZ2V0IHBhZ2VzQ291bnQoKSB7XG4gICAgcmV0dXJuIHRoaXMuYmxvY2tzID8gTWF0aC5jZWlsKHRoaXMuYmxvY2tzLmxlbmd0aCAvIHRoaXMucGFnZVNpemUpIDogMVxuICB9XG4gIGdldCBjdXJyZW50UGFnZSgpIHtcbiAgICByZXR1cm4gdGhpcy5jdXJyZW50UGFnZV8gKyAxXG4gIH1cblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZikge31cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgdGhpcy5ibG9ja3MuY2hhbmdlcy5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy51cGRhdGVTaXplcygpXG4gICAgICB0aGlzLnJlZnJlc2hCbG9ja3NWaXNpYmlsaXR5KClcbiAgICAgIHRoaXMuZ29Ub1BhZ2UoMSlcbiAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpXG4gICAgICB0aGlzLmxpc3RDaGFuZ2VzLmVtaXQodGhpcylcbiAgICB9KVxuICAgIHRoaXMudXBkYXRlU2l6ZXMoKVxuICAgIHRoaXMucmVmcmVzaEJsb2Nrc1Zpc2liaWxpdHkoKVxuXG4gICAgLy8gd2Ugc3RvcmUgdGhlIGZpcnN0IGhlaWdodCBhcyB0aGUgbWluLWhlaWdodCBvZiB0aGUgbGlzdCBjb250YWluZXJcbiAgICB0aGlzLm1pbkhlaWdodCA9IHRoaXMuYmxvY2tDb250YWluZXIubmF0aXZlRWxlbWVudC5jbGllbnRIZWlnaHRcbiAgICB0aGlzLmNoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKVxuICAgIHRoaXMubGlzdENoYW5nZXMuZW1pdCh0aGlzKVxuICB9XG5cbiAgcHJvdGVjdGVkIHJlZnJlc2hCbG9ja3NWaXNpYmlsaXR5ID0gKCkgPT4ge1xuICAgIHRoaXMuYmxvY2tzLmZvckVhY2goKGJsb2NrLCBpbmRleCkgPT4ge1xuICAgICAgYmxvY2submF0aXZlRWxlbWVudC5zdHlsZS5kaXNwbGF5ID1cbiAgICAgICAgaW5kZXggPj0gdGhpcy5jdXJyZW50UGFnZV8gKiB0aGlzLnBhZ2VTaXplICYmXG4gICAgICAgIGluZGV4IDwgKHRoaXMuY3VycmVudFBhZ2VfICsgMSkgKiB0aGlzLnBhZ2VTaXplXG4gICAgICAgICAgPyBudWxsXG4gICAgICAgICAgOiAnbm9uZSdcbiAgICB9KVxuICB9XG5cbiAgcHJvdGVjdGVkIHVwZGF0ZVNpemVzKCkge1xuICAgIHRoaXMuc3ViQ29tcG9uZW50U2l6ZSA9IHRoaXMuY29tcHV0ZVN1YkNvbXBvbmVudFNpemUoKVxuICAgIHRoaXMucGFnZVNpemUgPSB0aGlzLmNvbXB1dGVQYWdlU2l6ZSgpXG4gIH1cblxuICBwcm90ZWN0ZWQgY29tcHV0ZVN1YkNvbXBvbmVudFNpemUoKTogQ29tcG9uZW50U2l6ZSB7XG4gICAgaWYgKCF0aGlzLmJsb2NrcykgcmV0dXJuICdNJ1xuICAgIGNvbnN0IHN1YkNvbXBvbmVudHNDb3VudCA9IHRoaXMuYmxvY2tzLmxlbmd0aFxuICAgIGlmIChzdWJDb21wb25lbnRzQ291bnQgPD0gMykgcmV0dXJuICdMJ1xuICAgIGlmIChzdWJDb21wb25lbnRzQ291bnQgPD0gMTIpIHJldHVybiAnTSdcbiAgICBpZiAoc3ViQ29tcG9uZW50c0NvdW50IDw9IDE4KSByZXR1cm4gJ1MnXG4gICAgcmV0dXJuICdYUydcbiAgfVxuXG4gIHByb3RlY3RlZCBjb21wdXRlUGFnZVNpemUoKTogbnVtYmVyIHtcbiAgICBzd2l0Y2ggKHRoaXMuc3ViQ29tcG9uZW50U2l6ZSkge1xuICAgICAgY2FzZSAnTCc6XG4gICAgICAgIHJldHVybiAzXG4gICAgICBjYXNlICdTJzpcbiAgICAgICAgcmV0dXJuIDZcbiAgICAgIGNhc2UgJ1hTJzpcbiAgICAgICAgcmV0dXJuIDhcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiA0XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdvVG9QYWdlKHBhZ2VJbmRleDogbnVtYmVyKSB7XG4gICAgdGhpcy5jdXJyZW50UGFnZV8gPSBNYXRoLm1heChcbiAgICAgIE1hdGgubWluKHBhZ2VJbmRleCAtIDEsIHRoaXMucGFnZXNDb3VudCAtIDEpLFxuICAgICAgMFxuICAgIClcbiAgICB0aGlzLmNoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKVxuICAgIHRoaXMucmVmcmVzaEJsb2Nrc1Zpc2liaWxpdHkoKVxuICB9XG5cbiAgcHVibGljIGdvVG9QcmV2UGFnZSgpIHtcbiAgICBpZiAodGhpcy5pc0ZpcnN0UGFnZSkgcmV0dXJuXG4gICAgdGhpcy5nb1RvUGFnZSh0aGlzLmN1cnJlbnRQYWdlIC0gMSlcbiAgfVxuXG4gIHB1YmxpYyBnb1RvTmV4dFBhZ2UoKSB7XG4gICAgaWYgKHRoaXMuaXNMYXN0UGFnZSkgcmV0dXJuXG4gICAgdGhpcy5nb1RvUGFnZSh0aGlzLmN1cnJlbnRQYWdlICsgMSlcbiAgfVxufVxuIiwiPGRpdlxuICBjbGFzcz1cImdyaWQgZ2FwLTQgdy1mdWxsIG1kOmdyaWQtY29scy0yXCJcbiAgI2Jsb2NrQ29udGFpbmVyXG4gIFtuZ0NsYXNzXT1cIltjb250YWluZXJDbGFzcywgJ3NpemUtJyArIHN1YkNvbXBvbmVudFNpemVdXCJcbiAgW25nU3R5bGVdPVwieyBtaW5IZWlnaHQ6IG1pbkhlaWdodCArICdweCcgfVwiXG4+XG4gIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjwvZGl2PlxuPGduLXVpLXBhZ2luYXRpb24tZG90c1xuICBbY29udGFpbmVyQ2xhc3NdPVwiJ2Fic29sdXRlICcgKyBwYWdpbmF0aW9uQ29udGFpbmVyQ2xhc3NcIlxuICBbbGlzdENvbXBvbmVudF09XCJ0aGlzXCJcbj48L2duLXVpLXBhZ2luYXRpb24tZG90cz5cbiJdfQ==
|