geonetwork-ui 2.3.0-dev.e07c5606 → 2.3.0-dev.e43863db
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/libs/api/metadata-converter/src/lib/iso19115-3/iso19115-3.converter.mjs +2 -2
- package/esm2022/libs/api/metadata-converter/src/lib/iso19139/iso19139.converter.mjs +9 -7
- package/esm2022/libs/api/metadata-converter/src/lib/iso19139/read-parts.mjs +23 -8
- package/esm2022/libs/api/metadata-converter/src/lib/iso19139/write-parts.mjs +15 -4
- package/esm2022/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.mjs +9 -7
- package/esm2022/libs/common/domain/src/lib/model/record/metadata.model.mjs +1 -1
- package/esm2022/libs/feature/dataviz/src/lib/chart-view/chart-view.component.mjs +1 -1
- package/esm2022/libs/feature/dataviz/src/lib/service/data.service.mjs +47 -2
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-license/form-field-license.component.mjs +1 -1
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.mjs +15 -0
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.mjs +104 -0
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.mjs +14 -4
- package/esm2022/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.mjs +1 -1
- package/esm2022/libs/feature/editor/src/lib/fields.config.mjs +15 -1
- package/esm2022/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.mjs +73 -20
- package/esm2022/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.mjs +1 -1
- package/esm2022/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.mjs +1 -1
- package/esm2022/libs/feature/map/src/lib/map-context/map-context.model.mjs +1 -1
- package/esm2022/libs/feature/map/src/lib/map-context/map-context.service.mjs +58 -17
- package/esm2022/libs/feature/map/src/lib/utils/map-utils.service.mjs +7 -3
- package/esm2022/libs/feature/record/src/lib/data-view/data-view.component.mjs +1 -1
- package/esm2022/libs/feature/record/src/lib/map-view/map-view.component.mjs +17 -9
- package/esm2022/libs/feature/record/src/lib/state/mdview.facade.mjs +34 -5
- package/esm2022/libs/feature/record/src/lib/state/mdview.reducer.mjs +1 -3
- package/esm2022/libs/feature/search/src/index.mjs +2 -1
- package/esm2022/libs/feature/search/src/lib/results-layout/results-layout.component.mjs +1 -1
- package/esm2022/libs/feature/search/src/lib/results-list/results-list.container.component.mjs +4 -4
- package/esm2022/libs/feature/search/src/lib/sort-by/sort-by.component.mjs +1 -1
- package/esm2022/libs/feature/search/src/lib/utils/service/fields.service.mjs +1 -1
- package/esm2022/libs/ui/catalog/src/lib/language-switcher/language-switcher.component.mjs +1 -1
- package/esm2022/libs/ui/catalog/src/lib/organisations-filter/organisations-filter.component.mjs +1 -1
- package/esm2022/libs/ui/elements/src/index.mjs +2 -2
- package/esm2022/libs/ui/elements/src/lib/api-card/api-card.component.mjs +3 -2
- package/esm2022/libs/ui/elements/src/lib/downloads-list/downloads-list.component.mjs +2 -2
- package/esm2022/libs/ui/elements/src/lib/error/error.component.mjs +30 -0
- package/esm2022/libs/ui/elements/src/lib/link-card/link-card.component.mjs +16 -3
- package/esm2022/libs/ui/elements/src/lib/record-api-form/record-api-form.component.mjs +98 -36
- package/esm2022/libs/ui/elements/src/lib/ui-elements.module.mjs +6 -11
- package/esm2022/libs/ui/elements/src/lib/user-feedback-item/user-feedback-item.component.mjs +3 -5
- package/esm2022/libs/ui/inputs/src/index.mjs +16 -15
- package/esm2022/libs/ui/inputs/src/lib/check-toggle/check-toggle.component.mjs +4 -3
- package/esm2022/libs/ui/inputs/src/lib/date-picker/date-picker.component.mjs +22 -0
- package/esm2022/libs/ui/inputs/src/lib/date-range-picker/date-range-picker.component.mjs +7 -5
- package/esm2022/libs/ui/inputs/src/lib/dropdown-selector/dropdown-selector.component.mjs +5 -3
- package/esm2022/libs/ui/inputs/src/lib/previous-next-buttons/previous-next-buttons.component.mjs +29 -0
- package/esm2022/libs/ui/inputs/src/lib/text-input/text-input.component.mjs +5 -3
- package/esm2022/libs/ui/inputs/src/lib/ui-inputs.module.mjs +10 -8
- package/esm2022/libs/ui/layout/src/index.mjs +2 -1
- package/esm2022/libs/ui/layout/src/lib/block-list/block-list.component.mjs +76 -0
- package/esm2022/libs/ui/layout/src/lib/carousel/carousel.component.mjs +42 -18
- package/esm2022/libs/ui/layout/src/lib/ui-layout.module.mjs +3 -8
- package/esm2022/libs/util/app-config/src/lib/app-config.mjs +3 -1
- package/esm2022/libs/util/app-config/src/lib/fixtures.mjs +2 -1
- package/esm2022/libs/util/app-config/src/lib/model.mjs +1 -1
- package/esm2022/libs/util/shared/src/lib/links/link-classifier.service.mjs +2 -2
- package/esm2022/libs/util/shared/src/lib/links/link-utils.mjs +22 -1
- package/esm2022/translations/de.json +13 -14
- package/esm2022/translations/en.json +13 -14
- package/esm2022/translations/es.json +13 -14
- package/esm2022/translations/fr.json +13 -14
- package/esm2022/translations/it.json +13 -14
- package/esm2022/translations/nl.json +13 -14
- package/esm2022/translations/pt.json +13 -14
- package/fesm2022/geonetwork-ui.mjs +1742 -1190
- package/fesm2022/geonetwork-ui.mjs.map +1 -1
- package/libs/api/metadata-converter/src/lib/iso19115-3/iso19115-3.converter.d.ts +2 -2
- package/libs/api/metadata-converter/src/lib/iso19115-3/iso19115-3.converter.d.ts.map +1 -1
- package/libs/api/metadata-converter/src/lib/iso19139/iso19139.converter.d.ts +1 -1
- package/libs/api/metadata-converter/src/lib/iso19139/iso19139.converter.d.ts.map +1 -1
- package/libs/api/metadata-converter/src/lib/iso19139/read-parts.d.ts +4 -1
- package/libs/api/metadata-converter/src/lib/iso19139/read-parts.d.ts.map +1 -1
- package/libs/api/metadata-converter/src/lib/iso19139/write-parts.d.ts +2 -1
- package/libs/api/metadata-converter/src/lib/iso19139/write-parts.d.ts.map +1 -1
- package/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.d.ts.map +1 -1
- package/libs/common/domain/src/lib/model/record/metadata.model.d.ts +3 -3
- package/libs/common/domain/src/lib/model/record/metadata.model.d.ts.map +1 -1
- package/libs/feature/dataviz/src/lib/service/data.service.d.ts +4 -1
- package/libs/feature/dataviz/src/lib/service/data.service.d.ts.map +1 -1
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.d.ts +8 -0
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.d.ts.map +1 -0
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.d.ts +21 -0
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.d.ts.map +1 -0
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.d.ts +2 -0
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.d.ts.map +1 -1
- package/libs/feature/editor/src/lib/fields.config.d.ts.map +1 -1
- package/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.d.ts +10 -5
- package/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.d.ts.map +1 -1
- package/libs/feature/map/src/lib/map-context/map-context.model.d.ts +7 -0
- package/libs/feature/map/src/lib/map-context/map-context.model.d.ts.map +1 -1
- package/libs/feature/map/src/lib/map-context/map-context.service.d.ts +1 -1
- package/libs/feature/map/src/lib/map-context/map-context.service.d.ts.map +1 -1
- package/libs/feature/map/src/lib/utils/map-utils.service.d.ts.map +1 -1
- package/libs/feature/record/src/lib/map-view/map-view.component.d.ts +2 -2
- package/libs/feature/record/src/lib/map-view/map-view.component.d.ts.map +1 -1
- package/libs/feature/record/src/lib/state/mdview.facade.d.ts +5 -2
- 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.map +1 -1
- package/libs/feature/search/src/index.d.ts +1 -0
- package/libs/feature/search/src/index.d.ts.map +1 -1
- package/libs/feature/search/src/lib/utils/service/fields.service.d.ts +3 -3
- package/libs/feature/search/src/lib/utils/service/fields.service.d.ts.map +1 -1
- package/libs/ui/elements/src/index.d.ts +1 -1
- package/libs/ui/elements/src/index.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/api-card/api-card.component.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/downloads-list/downloads-list.component.d.ts +1 -1
- package/libs/ui/elements/src/lib/error/error.component.d.ts +16 -0
- package/libs/ui/elements/src/lib/error/error.component.d.ts.map +1 -0
- package/libs/ui/elements/src/lib/link-card/link-card.component.d.ts +3 -1
- package/libs/ui/elements/src/lib/link-card/link-card.component.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/record-api-form/record-api-form.component.d.ts +24 -4
- package/libs/ui/elements/src/lib/record-api-form/record-api-form.component.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/ui-elements.module.d.ts +29 -30
- package/libs/ui/elements/src/lib/ui-elements.module.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/user-feedback-item/user-feedback-item.component.d.ts +1 -2
- package/libs/ui/elements/src/lib/user-feedback-item/user-feedback-item.component.d.ts.map +1 -1
- package/libs/ui/inputs/src/index.d.ts +15 -14
- package/libs/ui/inputs/src/index.d.ts.map +1 -1
- package/libs/ui/inputs/src/lib/check-toggle/check-toggle.component.d.ts +1 -1
- package/libs/ui/inputs/src/lib/check-toggle/check-toggle.component.d.ts.map +1 -1
- package/libs/ui/inputs/src/lib/date-picker/date-picker.component.d.ts +9 -0
- package/libs/ui/inputs/src/lib/date-picker/date-picker.component.d.ts.map +1 -0
- package/libs/ui/inputs/src/lib/date-range-picker/date-range-picker.component.d.ts +1 -1
- package/libs/ui/inputs/src/lib/date-range-picker/date-range-picker.component.d.ts.map +1 -1
- package/libs/ui/inputs/src/lib/dropdown-selector/dropdown-selector.component.d.ts +2 -1
- package/libs/ui/inputs/src/lib/dropdown-selector/dropdown-selector.component.d.ts.map +1 -1
- package/libs/ui/inputs/src/lib/previous-next-buttons/previous-next-buttons.component.d.ts +12 -0
- package/libs/ui/inputs/src/lib/previous-next-buttons/previous-next-buttons.component.d.ts.map +1 -0
- package/libs/ui/inputs/src/lib/text-input/text-input.component.d.ts +2 -1
- package/libs/ui/inputs/src/lib/text-input/text-input.component.d.ts.map +1 -1
- package/libs/ui/inputs/src/lib/ui-inputs.module.d.ts +27 -27
- 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/block-list/block-list.component.d.ts +25 -0
- package/libs/ui/layout/src/lib/block-list/block-list.component.d.ts.map +1 -0
- package/libs/ui/layout/src/lib/carousel/carousel.component.d.ts +13 -6
- package/libs/ui/layout/src/lib/carousel/carousel.component.d.ts.map +1 -1
- package/libs/ui/layout/src/lib/ui-layout.module.d.ts +4 -5
- package/libs/ui/layout/src/lib/ui-layout.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/app-config/src/lib/model.d.ts +1 -0
- package/libs/util/app-config/src/lib/model.d.ts.map +1 -1
- package/libs/util/shared/src/lib/links/link-utils.d.ts +18 -0
- 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/lib/fixtures/generic.records.ts +9 -1
- package/src/libs/api/metadata-converter/src/lib/iso19115-3/iso19115-3.converter.ts +3 -3
- package/src/libs/api/metadata-converter/src/lib/iso19139/iso19139.converter.ts +35 -31
- package/src/libs/api/metadata-converter/src/lib/iso19139/read-parts.ts +68 -16
- package/src/libs/api/metadata-converter/src/lib/iso19139/write-parts.ts +72 -17
- package/src/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.ts +16 -10
- package/src/libs/common/domain/src/lib/model/record/metadata.model.ts +3 -3
- package/src/libs/common/fixtures/src/lib/link.fixtures.ts +8 -0
- package/src/libs/common/fixtures/src/lib/records.fixtures.ts +10 -2
- package/src/libs/feature/dataviz/src/lib/service/data.service.ts +65 -1
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.css +0 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.html +4 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.ts +15 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.css +0 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.html +14 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.ts +143 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.html +10 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.ts +11 -1
- package/src/libs/feature/editor/src/lib/fields.config.ts +14 -0
- package/src/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.css +7 -0
- package/src/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.html +32 -18
- package/src/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.ts +72 -17
- package/src/libs/feature/map/src/lib/map-context/map-context.model.ts +7 -0
- package/src/libs/feature/map/src/lib/map-context/map-context.service.ts +57 -17
- package/src/libs/feature/map/src/lib/utils/map-utils.service.ts +6 -2
- package/src/libs/feature/record/src/lib/map-view/map-view.component.ts +17 -9
- package/src/libs/feature/record/src/lib/state/mdview.facade.ts +40 -4
- package/src/libs/feature/record/src/lib/state/mdview.reducer.ts +0 -2
- package/src/libs/feature/search/src/index.ts +1 -0
- package/src/libs/feature/search/src/lib/results-list/results-list.container.component.html +4 -4
- package/src/libs/feature/search/src/lib/utils/service/fields.service.ts +2 -2
- package/src/libs/ui/elements/src/index.ts +1 -1
- package/src/libs/ui/elements/src/lib/api-card/api-card.component.ts +2 -1
- package/src/libs/ui/elements/src/lib/downloads-list/downloads-list.component.ts +1 -1
- package/src/libs/ui/elements/src/lib/{search-results-error/search-results-error.component.html → error/error.component.html} +18 -3
- package/src/libs/ui/elements/src/lib/{search-results-error/search-results-error.component.ts → error/error.component.ts} +5 -4
- package/src/libs/ui/elements/src/lib/link-card/link-card.component.html +38 -20
- package/src/libs/ui/elements/src/lib/link-card/link-card.component.ts +12 -0
- package/src/libs/ui/elements/src/lib/record-api-form/record-api-form.component.html +26 -10
- package/src/libs/ui/elements/src/lib/record-api-form/record-api-form.component.ts +125 -30
- package/src/libs/ui/elements/src/lib/ui-elements.module.ts +3 -6
- package/src/libs/ui/elements/src/lib/user-feedback-item/user-feedback-item.component.html +1 -1
- package/src/libs/ui/elements/src/lib/user-feedback-item/user-feedback-item.component.ts +0 -1
- package/src/libs/ui/inputs/src/index.ts +15 -14
- package/src/libs/ui/inputs/src/lib/check-toggle/check-toggle.component.ts +3 -0
- package/src/libs/ui/inputs/src/lib/date-picker/date-picker.component.css +3 -0
- package/src/libs/ui/inputs/src/lib/date-picker/date-picker.component.html +11 -0
- package/src/libs/ui/inputs/src/lib/date-picker/date-picker.component.ts +16 -0
- package/src/libs/ui/inputs/src/lib/date-range-picker/date-range-picker.component.ts +8 -1
- package/src/libs/ui/inputs/src/lib/dropdown-selector/dropdown-selector.component.html +1 -0
- package/src/libs/ui/inputs/src/lib/dropdown-selector/dropdown-selector.component.ts +1 -0
- package/src/libs/ui/inputs/src/lib/previous-next-buttons/previous-next-buttons.component.css +6 -0
- package/src/libs/ui/inputs/src/lib/previous-next-buttons/previous-next-buttons.component.html +26 -0
- package/src/libs/ui/inputs/src/lib/previous-next-buttons/previous-next-buttons.component.ts +32 -0
- package/src/libs/ui/inputs/src/lib/text-input/text-input.component.html +1 -0
- package/src/libs/ui/inputs/src/lib/text-input/text-input.component.ts +1 -0
- package/src/libs/ui/inputs/src/lib/ui-inputs.module.ts +2 -2
- package/src/libs/ui/layout/src/index.ts +1 -0
- package/src/libs/ui/layout/src/lib/block-list/block-list.component.css +23 -0
- package/src/libs/ui/layout/src/lib/block-list/block-list.component.html +20 -0
- package/src/libs/ui/layout/src/lib/block-list/block-list.component.ts +84 -0
- package/src/libs/ui/layout/src/lib/carousel/carousel.component.css +8 -4
- package/src/libs/ui/layout/src/lib/carousel/carousel.component.html +4 -4
- package/src/libs/ui/layout/src/lib/carousel/carousel.component.ts +45 -15
- package/src/libs/ui/layout/src/lib/ui-layout.module.ts +0 -2
- package/src/libs/util/app-config/src/lib/app-config.ts +2 -0
- package/src/libs/util/app-config/src/lib/fixtures.ts +1 -0
- package/src/libs/util/app-config/src/lib/model.ts +1 -0
- package/src/libs/util/shared/src/lib/links/link-classifier.service.ts +1 -1
- package/src/libs/util/shared/src/lib/links/link-utils.ts +21 -0
- package/translations/de.json +13 -14
- package/translations/en.json +13 -14
- package/translations/es.json +13 -14
- package/translations/fr.json +13 -14
- package/translations/it.json +13 -14
- package/translations/nl.json +13 -14
- package/translations/pt.json +13 -14
- package/translations/sk.json +13 -14
- package/esm2022/libs/ui/elements/src/lib/search-results-error/search-results-error.component.mjs +0 -29
- package/libs/ui/elements/src/lib/search-results-error/search-results-error.component.d.ts +0 -15
- package/libs/ui/elements/src/lib/search-results-error/search-results-error.component.d.ts.map +0 -1
- /package/src/libs/ui/elements/src/lib/{search-results-error/search-results-error.component.css → error/error.component.css} +0 -0
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ContentChildren, ElementRef, Input, QueryList, ViewChild, } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/common";
|
|
5
|
+
export class BlockListComponent {
|
|
6
|
+
get pages() {
|
|
7
|
+
return new Array(this.pagesCount).fill(0).map((_, i) => i);
|
|
8
|
+
}
|
|
9
|
+
get isFirstPage() {
|
|
10
|
+
return this.currentPage === 0;
|
|
11
|
+
}
|
|
12
|
+
get isLastPage() {
|
|
13
|
+
return this.currentPage === this.pagesCount - 1;
|
|
14
|
+
}
|
|
15
|
+
get pagesCount() {
|
|
16
|
+
return this.blocks ? Math.ceil(this.blocks.length / this.pageSize) : 1;
|
|
17
|
+
}
|
|
18
|
+
constructor(changeDetector) {
|
|
19
|
+
this.changeDetector = changeDetector;
|
|
20
|
+
this.pageSize = 5;
|
|
21
|
+
this.containerClass = '';
|
|
22
|
+
this.paginationContainerClass = 'w-full bottom-0 top-auto';
|
|
23
|
+
this.minHeight = 0;
|
|
24
|
+
this.currentPage = 0;
|
|
25
|
+
this.refreshBlocksVisibility = () => {
|
|
26
|
+
this.blocks.forEach((block, index) => {
|
|
27
|
+
block.nativeElement.style.display =
|
|
28
|
+
index >= this.currentPage * this.pageSize &&
|
|
29
|
+
index < (this.currentPage + 1) * this.pageSize
|
|
30
|
+
? null
|
|
31
|
+
: 'none';
|
|
32
|
+
});
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
ngAfterViewInit() {
|
|
36
|
+
this.blocks.changes.subscribe(this.refreshBlocksVisibility);
|
|
37
|
+
this.refreshBlocksVisibility();
|
|
38
|
+
// we store the first height as the min-height of the list container
|
|
39
|
+
this.minHeight = this.blockContainer.nativeElement.clientHeight;
|
|
40
|
+
this.changeDetector.detectChanges();
|
|
41
|
+
}
|
|
42
|
+
goToPage(index) {
|
|
43
|
+
this.currentPage = Math.max(Math.min(index, this.pagesCount - 1), 0);
|
|
44
|
+
this.changeDetector.detectChanges();
|
|
45
|
+
this.refreshBlocksVisibility();
|
|
46
|
+
}
|
|
47
|
+
previousPage() {
|
|
48
|
+
if (this.isFirstPage)
|
|
49
|
+
return;
|
|
50
|
+
this.goToPage(this.currentPage - 1);
|
|
51
|
+
}
|
|
52
|
+
nextPage() {
|
|
53
|
+
if (this.isLastPage)
|
|
54
|
+
return;
|
|
55
|
+
this.goToPage(this.currentPage + 1);
|
|
56
|
+
}
|
|
57
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: BlockListComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
58
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: BlockListComponent, isStandalone: true, selector: "gn-ui-block-list", inputs: { pageSize: "pageSize", containerClass: "containerClass", paginationContainerClass: "paginationContainerClass" }, queries: [{ propertyName: "blocks", predicate: ["block"], read: ElementRef }], viewQueries: [{ propertyName: "blockContainer", first: true, predicate: ["blockContainer"], descendants: true }], ngImport: i0, template: "<div\n class=\"block-list-container flex flex-col\"\n #blockContainer\n [ngClass]=\"containerClass\"\n [ngStyle]=\"{ minHeight: minHeight + 'px' }\"\n>\n <ng-content></ng-content>\n</div>\n<div\n *ngIf=\"pagesCount > 1\"\n class=\"absolute flex flex-row justify-center gap-[14px] p-1\"\n [ngClass]=\"paginationContainerClass\"\n>\n <button\n *ngFor=\"let page of pages\"\n class=\"list-page-dot\"\n (click)=\"goToPage(page)\"\n [ngClass]=\"currentPage === page ? 'bg-primary' : 'bg-gray-400'\"\n ></button>\n</div>\n", styles: [":host .block-list-container ::ng-deep>*{flex-shrink:0}:host{position:relative}.list-page-dot{width:6px;height:6px;border-radius:6px;position:relative}.list-page-dot:after{content:\"\";position:absolute;left:-7px;top:-7px;width:20px;height:20px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { 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.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
59
|
+
}
|
|
60
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: BlockListComponent, decorators: [{
|
|
61
|
+
type: Component,
|
|
62
|
+
args: [{ selector: 'gn-ui-block-list', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule], template: "<div\n class=\"block-list-container flex flex-col\"\n #blockContainer\n [ngClass]=\"containerClass\"\n [ngStyle]=\"{ minHeight: minHeight + 'px' }\"\n>\n <ng-content></ng-content>\n</div>\n<div\n *ngIf=\"pagesCount > 1\"\n class=\"absolute flex flex-row justify-center gap-[14px] p-1\"\n [ngClass]=\"paginationContainerClass\"\n>\n <button\n *ngFor=\"let page of pages\"\n class=\"list-page-dot\"\n (click)=\"goToPage(page)\"\n [ngClass]=\"currentPage === page ? 'bg-primary' : 'bg-gray-400'\"\n ></button>\n</div>\n", styles: [":host .block-list-container ::ng-deep>*{flex-shrink:0}:host{position:relative}.list-page-dot{width:6px;height:6px;border-radius:6px;position:relative}.list-page-dot:after{content:\"\";position:absolute;left:-7px;top:-7px;width:20px;height:20px}\n"] }]
|
|
63
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { pageSize: [{
|
|
64
|
+
type: Input
|
|
65
|
+
}], containerClass: [{
|
|
66
|
+
type: Input
|
|
67
|
+
}], paginationContainerClass: [{
|
|
68
|
+
type: Input
|
|
69
|
+
}], blocks: [{
|
|
70
|
+
type: ContentChildren,
|
|
71
|
+
args: ['block', { read: ElementRef }]
|
|
72
|
+
}], blockContainer: [{
|
|
73
|
+
type: ViewChild,
|
|
74
|
+
args: ['blockContainer']
|
|
75
|
+
}] } });
|
|
76
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmxvY2stbGlzdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2xheW91dC9zcmMvbGliL2Jsb2NrLWxpc3QvYmxvY2stbGlzdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2xheW91dC9zcmMvbGliL2Jsb2NrLWxpc3QvYmxvY2stbGlzdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsZUFBZSxFQUNmLFVBQVUsRUFDVixLQUFLLEVBQ0wsU0FBUyxFQUNULFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQTtBQUN0QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7OztBQVU5QyxNQUFNLE9BQU8sa0JBQWtCO0lBWTdCLElBQWMsS0FBSztRQUNqQixPQUFPLElBQUksS0FBSyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUE7SUFDNUQsQ0FBQztJQUVELElBQUksV0FBVztRQUNiLE9BQU8sSUFBSSxDQUFDLFdBQVcsS0FBSyxDQUFDLENBQUE7SUFDL0IsQ0FBQztJQUNELElBQUksVUFBVTtRQUNaLE9BQU8sSUFBSSxDQUFDLFdBQVcsS0FBSyxJQUFJLENBQUMsVUFBVSxHQUFHLENBQUMsQ0FBQTtJQUNqRCxDQUFDO0lBQ0QsSUFBSSxVQUFVO1FBQ1osT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFBO0lBQ3hFLENBQUM7SUFFRCxZQUFvQixjQUFpQztRQUFqQyxtQkFBYyxHQUFkLGNBQWMsQ0FBbUI7UUF6QjVDLGFBQVEsR0FBRyxDQUFDLENBQUE7UUFDWixtQkFBYyxHQUFHLEVBQUUsQ0FBQTtRQUNuQiw2QkFBd0IsR0FBRywwQkFBMEIsQ0FBQTtRQU1wRCxjQUFTLEdBQUcsQ0FBQyxDQUFBO1FBRWIsZ0JBQVcsR0FBRyxDQUFDLENBQUE7UUEwQmYsNEJBQXVCLEdBQUcsR0FBRyxFQUFFO1lBQ3ZDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxFQUFFO2dCQUNuQyxLQUFLLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxPQUFPO29CQUMvQixLQUFLLElBQUksSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsUUFBUTt3QkFDekMsS0FBSyxHQUFHLENBQUMsSUFBSSxDQUFDLFdBQVcsR0FBRyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsUUFBUTt3QkFDNUMsQ0FBQyxDQUFDLElBQUk7d0JBQ04sQ0FBQyxDQUFDLE1BQU0sQ0FBQTtZQUNkLENBQUMsQ0FBQyxDQUFBO1FBQ0osQ0FBQyxDQUFBO0lBbkJ1RCxDQUFDO0lBRXpELGVBQWU7UUFDYixJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLHVCQUF1QixDQUFDLENBQUE7UUFDM0QsSUFBSSxDQUFDLHVCQUF1QixFQUFFLENBQUE7UUFFOUIsb0VBQW9FO1FBQ3BFLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxhQUFhLENBQUMsWUFBWSxDQUFBO1FBQy9ELElBQUksQ0FBQyxjQUFjLENBQUMsYUFBYSxFQUFFLENBQUE7SUFDckMsQ0FBQztJQVlNLFFBQVEsQ0FBQyxLQUFhO1FBQzNCLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsVUFBVSxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFBO1FBQ3BFLElBQUksQ0FBQyxjQUFjLENBQUMsYUFBYSxFQUFFLENBQUE7UUFDbkMsSUFBSSxDQUFDLHVCQUF1QixFQUFFLENBQUE7SUFDaEMsQ0FBQztJQUVNLFlBQVk7UUFDakIsSUFBSSxJQUFJLENBQUMsV0FBVztZQUFFLE9BQU07UUFDNUIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxHQUFHLENBQUMsQ0FBQyxDQUFBO0lBQ3JDLENBQUM7SUFFTSxRQUFRO1FBQ2IsSUFBSSxJQUFJLENBQUMsVUFBVTtZQUFFLE9BQU07UUFDM0IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxHQUFHLENBQUMsQ0FBQyxDQUFBO0lBQ3JDLENBQUM7OEdBN0RVLGtCQUFrQjtrR0FBbEIsa0JBQWtCLDhPQUlLLFVBQVUsK0lDekI5Qyw0aEJBb0JBLCtTRERZLFlBQVk7OzJGQUVYLGtCQUFrQjtrQkFSOUIsU0FBUzsrQkFDRSxrQkFBa0IsbUJBR1gsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1AsQ0FBQyxZQUFZLENBQUM7d0dBR2QsUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQUNHLHdCQUF3QjtzQkFBaEMsS0FBSztnQkFDMEMsTUFBTTtzQkFBckQsZUFBZTt1QkFBQyxPQUFPLEVBQUUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFO2dCQUdqQixjQUFjO3NCQUExQyxTQUFTO3VCQUFDLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBDb250ZW50Q2hpbGRyZW4sXG4gIEVsZW1lbnRSZWYsXG4gIElucHV0LFxuICBRdWVyeUxpc3QsXG4gIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbidcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ24tdWktYmxvY2stbGlzdCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9ibG9jay1saXN0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vYmxvY2stbGlzdC5jb21wb25lbnQuY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlXSxcbn0pXG5leHBvcnQgY2xhc3MgQmxvY2tMaXN0Q29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG4gIEBJbnB1dCgpIHBhZ2VTaXplID0gNVxuICBASW5wdXQoKSBjb250YWluZXJDbGFzcyA9ICcnXG4gIEBJbnB1dCgpIHBhZ2luYXRpb25Db250YWluZXJDbGFzcyA9ICd3LWZ1bGwgYm90dG9tLTAgdG9wLWF1dG8nXG4gIEBDb250ZW50Q2hpbGRyZW4oJ2Jsb2NrJywgeyByZWFkOiBFbGVtZW50UmVmIH0pIGJsb2NrczogUXVlcnlMaXN0PFxuICAgIEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+XG4gID5cbiAgQFZpZXdDaGlsZCgnYmxvY2tDb250YWluZXInKSBibG9ja0NvbnRhaW5lcjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD5cblxuICBwcm90ZWN0ZWQgbWluSGVpZ2h0ID0gMFxuXG4gIHByb3RlY3RlZCBjdXJyZW50UGFnZSA9IDBcbiAgcHJvdGVjdGVkIGdldCBwYWdlcygpIHtcbiAgICByZXR1cm4gbmV3IEFycmF5KHRoaXMucGFnZXNDb3VudCkuZmlsbCgwKS5tYXAoKF8sIGkpID0+IGkpXG4gIH1cblxuICBnZXQgaXNGaXJzdFBhZ2UoKSB7XG4gICAgcmV0dXJuIHRoaXMuY3VycmVudFBhZ2UgPT09IDBcbiAgfVxuICBnZXQgaXNMYXN0UGFnZSgpIHtcbiAgICByZXR1cm4gdGhpcy5jdXJyZW50UGFnZSA9PT0gdGhpcy5wYWdlc0NvdW50IC0gMVxuICB9XG4gIGdldCBwYWdlc0NvdW50KCkge1xuICAgIHJldHVybiB0aGlzLmJsb2NrcyA/IE1hdGguY2VpbCh0aGlzLmJsb2Nrcy5sZW5ndGggLyB0aGlzLnBhZ2VTaXplKSA6IDFcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmKSB7fVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICB0aGlzLmJsb2Nrcy5jaGFuZ2VzLnN1YnNjcmliZSh0aGlzLnJlZnJlc2hCbG9ja3NWaXNpYmlsaXR5KVxuICAgIHRoaXMucmVmcmVzaEJsb2Nrc1Zpc2liaWxpdHkoKVxuXG4gICAgLy8gd2Ugc3RvcmUgdGhlIGZpcnN0IGhlaWdodCBhcyB0aGUgbWluLWhlaWdodCBvZiB0aGUgbGlzdCBjb250YWluZXJcbiAgICB0aGlzLm1pbkhlaWdodCA9IHRoaXMuYmxvY2tDb250YWluZXIubmF0aXZlRWxlbWVudC5jbGllbnRIZWlnaHRcbiAgICB0aGlzLmNoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKVxuICB9XG5cbiAgcHJvdGVjdGVkIHJlZnJlc2hCbG9ja3NWaXNpYmlsaXR5ID0gKCkgPT4ge1xuICAgIHRoaXMuYmxvY2tzLmZvckVhY2goKGJsb2NrLCBpbmRleCkgPT4ge1xuICAgICAgYmxvY2submF0aXZlRWxlbWVudC5zdHlsZS5kaXNwbGF5ID1cbiAgICAgICAgaW5kZXggPj0gdGhpcy5jdXJyZW50UGFnZSAqIHRoaXMucGFnZVNpemUgJiZcbiAgICAgICAgaW5kZXggPCAodGhpcy5jdXJyZW50UGFnZSArIDEpICogdGhpcy5wYWdlU2l6ZVxuICAgICAgICAgID8gbnVsbFxuICAgICAgICAgIDogJ25vbmUnXG4gICAgfSlcbiAgfVxuXG4gIHB1YmxpYyBnb1RvUGFnZShpbmRleDogbnVtYmVyKSB7XG4gICAgdGhpcy5jdXJyZW50UGFnZSA9IE1hdGgubWF4KE1hdGgubWluKGluZGV4LCB0aGlzLnBhZ2VzQ291bnQgLSAxKSwgMClcbiAgICB0aGlzLmNoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKVxuICAgIHRoaXMucmVmcmVzaEJsb2Nrc1Zpc2liaWxpdHkoKVxuICB9XG5cbiAgcHVibGljIHByZXZpb3VzUGFnZSgpIHtcbiAgICBpZiAodGhpcy5pc0ZpcnN0UGFnZSkgcmV0dXJuXG4gICAgdGhpcy5nb1RvUGFnZSh0aGlzLmN1cnJlbnRQYWdlIC0gMSlcbiAgfVxuXG4gIHB1YmxpYyBuZXh0UGFnZSgpIHtcbiAgICBpZiAodGhpcy5pc0xhc3RQYWdlKSByZXR1cm5cbiAgICB0aGlzLmdvVG9QYWdlKHRoaXMuY3VycmVudFBhZ2UgKyAxKVxuICB9XG59XG4iLCI8ZGl2XG4gIGNsYXNzPVwiYmxvY2stbGlzdC1jb250YWluZXIgZmxleCBmbGV4LWNvbFwiXG4gICNibG9ja0NvbnRhaW5lclxuICBbbmdDbGFzc109XCJjb250YWluZXJDbGFzc1wiXG4gIFtuZ1N0eWxlXT1cInsgbWluSGVpZ2h0OiBtaW5IZWlnaHQgKyAncHgnIH1cIlxuPlxuICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG48L2Rpdj5cbjxkaXZcbiAgKm5nSWY9XCJwYWdlc0NvdW50ID4gMVwiXG4gIGNsYXNzPVwiYWJzb2x1dGUgZmxleCBmbGV4LXJvdyBqdXN0aWZ5LWNlbnRlciBnYXAtWzE0cHhdIHAtMVwiXG4gIFtuZ0NsYXNzXT1cInBhZ2luYXRpb25Db250YWluZXJDbGFzc1wiXG4+XG4gIDxidXR0b25cbiAgICAqbmdGb3I9XCJsZXQgcGFnZSBvZiBwYWdlc1wiXG4gICAgY2xhc3M9XCJsaXN0LXBhZ2UtZG90XCJcbiAgICAoY2xpY2spPVwiZ29Ub1BhZ2UocGFnZSlcIlxuICAgIFtuZ0NsYXNzXT1cImN1cnJlbnRQYWdlID09PSBwYWdlID8gJ2JnLXByaW1hcnknIDogJ2JnLWdyYXktNDAwJ1wiXG4gID48L2J1dHRvbj5cbjwvZGl2PlxuIl19
|
|
@@ -1,44 +1,68 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, Input, ViewChild, } from '@angular/core';
|
|
1
|
+
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, EventEmitter, Input, Output, ViewChild, } from '@angular/core';
|
|
2
2
|
import EmblaCarousel from 'embla-carousel';
|
|
3
|
+
import { CommonModule } from '@angular/common';
|
|
3
4
|
import * as i0 from "@angular/core";
|
|
4
5
|
import * as i1 from "@angular/common";
|
|
5
6
|
export class CarouselComponent {
|
|
7
|
+
get isFirstStep() {
|
|
8
|
+
return this.currentStep === 0;
|
|
9
|
+
}
|
|
10
|
+
get isLastStep() {
|
|
11
|
+
return this.currentStep === this.steps.length - 1;
|
|
12
|
+
}
|
|
13
|
+
get stepsCount() {
|
|
14
|
+
return this.steps.length;
|
|
15
|
+
}
|
|
6
16
|
constructor(changeDetector) {
|
|
7
17
|
this.changeDetector = changeDetector;
|
|
8
18
|
this.containerClass = '';
|
|
9
|
-
this.stepsContainerClass = '';
|
|
19
|
+
this.stepsContainerClass = 'w-full bottom-0 top-auto';
|
|
20
|
+
this.currentStepChange = new EventEmitter();
|
|
10
21
|
this.steps = [];
|
|
11
|
-
this.
|
|
22
|
+
this.currentStep = 0;
|
|
23
|
+
this.refreshSteps = () => {
|
|
24
|
+
this.steps = this.emblaApi.scrollSnapList();
|
|
25
|
+
this.currentStep = this.emblaApi.selectedScrollSnap();
|
|
26
|
+
this.currentStepChange.emit(this.currentStep);
|
|
27
|
+
this.changeDetector.detectChanges();
|
|
28
|
+
};
|
|
12
29
|
}
|
|
13
30
|
ngAfterViewInit() {
|
|
14
31
|
this.emblaApi = EmblaCarousel(this.carouselOverflowContainer.nativeElement, {
|
|
15
32
|
duration: 15,
|
|
16
33
|
});
|
|
17
|
-
const refreshSteps = () => {
|
|
18
|
-
this.steps = this.emblaApi.scrollSnapList();
|
|
19
|
-
this.selectedStep = this.emblaApi.selectedScrollSnap();
|
|
20
|
-
this.changeDetector.detectChanges();
|
|
21
|
-
};
|
|
22
34
|
this.emblaApi
|
|
23
|
-
.on('init', refreshSteps)
|
|
24
|
-
.on('reInit', refreshSteps)
|
|
25
|
-
.on('select', refreshSteps);
|
|
35
|
+
.on('init', this.refreshSteps)
|
|
36
|
+
.on('reInit', this.refreshSteps)
|
|
37
|
+
.on('select', this.refreshSteps);
|
|
26
38
|
}
|
|
27
39
|
scrollToStep(stepIndex) {
|
|
28
40
|
this.emblaApi.scrollTo(stepIndex);
|
|
29
41
|
}
|
|
42
|
+
slideToPrevious() {
|
|
43
|
+
if (this.isFirstStep)
|
|
44
|
+
return;
|
|
45
|
+
this.emblaApi.scrollPrev();
|
|
46
|
+
}
|
|
47
|
+
slideToNext() {
|
|
48
|
+
if (this.isLastStep)
|
|
49
|
+
return;
|
|
50
|
+
this.emblaApi.scrollNext();
|
|
51
|
+
}
|
|
30
52
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: CarouselComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
31
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: CarouselComponent, selector: "gn-ui-carousel", inputs: { containerClass: "containerClass", stepsContainerClass: "stepsContainerClass" }, viewQueries: [{ propertyName: "carouselOverflowContainer", first: true, predicate: ["carouselOverflowContainer"], descendants: true }], ngImport: i0, template: "<div #carouselOverflowContainer class=\"
|
|
53
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: CarouselComponent, isStandalone: true, selector: "gn-ui-carousel", inputs: { containerClass: "containerClass", stepsContainerClass: "stepsContainerClass" }, outputs: { currentStepChange: "currentStepChange" }, viewQueries: [{ propertyName: "carouselOverflowContainer", first: true, predicate: ["carouselOverflowContainer"], descendants: true }], ngImport: i0, template: "<div #carouselOverflowContainer class=\"w-full\">\n <div class=\"carousel-container flex\" [ngClass]=\"containerClass\">\n <ng-content></ng-content>\n </div>\n</div>\n<div\n *ngIf=\"steps.length > 1\"\n class=\"absolute flex flex-row justify-center gap-[14px] p-1\"\n [ngClass]=\"stepsContainerClass\"\n>\n <button\n *ngFor=\"let step of steps; let i = index\"\n class=\"carousel-step-dot\"\n (click)=\"scrollToStep(i)\"\n [ngClass]=\"currentStep === i ? 'bg-primary' : 'bg-gray-400'\"\n ></button>\n</div>\n", styles: [":host .carousel-container ::ng-deep>*{flex-shrink:0}:host{position:relative;display:block}.carousel-step-dot{width:6px;height:6px;border-radius:6px;position:relative}.carousel-step-dot:after{content:\"\";position:absolute;left:-7px;top:-7px;width:20px;height:20px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { 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.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
32
54
|
}
|
|
33
55
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: CarouselComponent, decorators: [{
|
|
34
56
|
type: Component,
|
|
35
|
-
args: [{ selector: 'gn-ui-carousel', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div #carouselOverflowContainer class=\"
|
|
36
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: {
|
|
57
|
+
args: [{ selector: 'gn-ui-carousel', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule], template: "<div #carouselOverflowContainer class=\"w-full\">\n <div class=\"carousel-container flex\" [ngClass]=\"containerClass\">\n <ng-content></ng-content>\n </div>\n</div>\n<div\n *ngIf=\"steps.length > 1\"\n class=\"absolute flex flex-row justify-center gap-[14px] p-1\"\n [ngClass]=\"stepsContainerClass\"\n>\n <button\n *ngFor=\"let step of steps; let i = index\"\n class=\"carousel-step-dot\"\n (click)=\"scrollToStep(i)\"\n [ngClass]=\"currentStep === i ? 'bg-primary' : 'bg-gray-400'\"\n ></button>\n</div>\n", styles: [":host .carousel-container ::ng-deep>*{flex-shrink:0}:host{position:relative;display:block}.carousel-step-dot{width:6px;height:6px;border-radius:6px;position:relative}.carousel-step-dot:after{content:\"\";position:absolute;left:-7px;top:-7px;width:20px;height:20px}\n"] }]
|
|
58
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { carouselOverflowContainer: [{
|
|
59
|
+
type: ViewChild,
|
|
60
|
+
args: ['carouselOverflowContainer']
|
|
61
|
+
}], containerClass: [{
|
|
37
62
|
type: Input
|
|
38
63
|
}], stepsContainerClass: [{
|
|
39
64
|
type: Input
|
|
40
|
-
}],
|
|
41
|
-
type:
|
|
42
|
-
args: ['carouselOverflowContainer']
|
|
65
|
+
}], currentStepChange: [{
|
|
66
|
+
type: Output
|
|
43
67
|
}] } });
|
|
44
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
68
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2Fyb3VzZWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9sYXlvdXQvc3JjL2xpYi9jYXJvdXNlbC9jYXJvdXNlbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2xheW91dC9zcmMvbGliL2Nhcm91c2VsL2Nhcm91c2VsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEVBQ04sU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFBO0FBQ3RCLE9BQU8sYUFBb0MsTUFBTSxnQkFBZ0IsQ0FBQTtBQUNqRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7OztBQVU5QyxNQUFNLE9BQU8saUJBQWlCO0lBa0I1QixJQUFJLFdBQVc7UUFDYixPQUFPLElBQUksQ0FBQyxXQUFXLEtBQUssQ0FBQyxDQUFBO0lBQy9CLENBQUM7SUFDRCxJQUFJLFVBQVU7UUFDWixPQUFPLElBQUksQ0FBQyxXQUFXLEtBQUssSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFBO0lBQ25ELENBQUM7SUFDRCxJQUFJLFVBQVU7UUFDWixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFBO0lBQzFCLENBQUM7SUFFRCxZQUFvQixjQUFpQztRQUFqQyxtQkFBYyxHQUFkLGNBQWMsQ0FBbUI7UUF6QjVDLG1CQUFjLEdBQUcsRUFBRSxDQUFBO1FBQ25CLHdCQUFtQixHQUFHLDBCQUEwQixDQUFBO1FBQy9DLHNCQUFpQixHQUFHLElBQUksWUFBWSxFQUFVLENBQUE7UUFFOUMsVUFBSyxHQUFhLEVBQUUsQ0FBQTtRQUVwQixnQkFBVyxHQUFHLENBQUMsQ0FBQTtRQUVmLGlCQUFZLEdBQUcsR0FBRyxFQUFFO1lBQzVCLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxjQUFjLEVBQUUsQ0FBQTtZQUMzQyxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsa0JBQWtCLEVBQUUsQ0FBQTtZQUNyRCxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQTtZQUM3QyxJQUFJLENBQUMsY0FBYyxDQUFDLGFBQWEsRUFBRSxDQUFBO1FBQ3JDLENBQUMsQ0FBQTtJQVl1RCxDQUFDO0lBRXpELGVBQWU7UUFDYixJQUFJLENBQUMsUUFBUSxHQUFHLGFBQWEsQ0FDM0IsSUFBSSxDQUFDLHlCQUF5QixDQUFDLGFBQWEsRUFDNUM7WUFDRSxRQUFRLEVBQUUsRUFBRTtTQUNiLENBQ0YsQ0FBQTtRQUVELElBQUksQ0FBQyxRQUFRO2FBQ1YsRUFBRSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDO2FBQzdCLEVBQUUsQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQzthQUMvQixFQUFFLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQTtJQUNwQyxDQUFDO0lBRU0sWUFBWSxDQUFDLFNBQWlCO1FBQ25DLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFBO0lBQ25DLENBQUM7SUFFTSxlQUFlO1FBQ3BCLElBQUksSUFBSSxDQUFDLFdBQVc7WUFBRSxPQUFNO1FBQzVCLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxFQUFFLENBQUE7SUFDNUIsQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxJQUFJLENBQUMsVUFBVTtZQUFFLE9BQU07UUFDM0IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLEVBQUUsQ0FBQTtJQUM1QixDQUFDOzhHQXhEVSxpQkFBaUI7a0dBQWpCLGlCQUFpQixpV0N0QjlCLG9oQkFpQkEsbVVER1ksWUFBWTs7MkZBRVgsaUJBQWlCO2tCQVI3QixTQUFTOytCQUNFLGdCQUFnQixtQkFHVCx1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUCxDQUFDLFlBQVksQ0FBQzt3R0FHaUIseUJBQXlCO3NCQUFoRSxTQUFTO3VCQUFDLDJCQUEyQjtnQkFFN0IsY0FBYztzQkFBdEIsS0FBSztnQkFDRyxtQkFBbUI7c0JBQTNCLEtBQUs7Z0JBQ0ksaUJBQWlCO3NCQUExQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE91dHB1dCxcbiAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IEVtYmxhQ2Fyb3VzZWwsIHsgRW1ibGFDYXJvdXNlbFR5cGUgfSBmcm9tICdlbWJsYS1jYXJvdXNlbCdcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbidcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ24tdWktY2Fyb3VzZWwnLFxuICB0ZW1wbGF0ZVVybDogJy4vY2Fyb3VzZWwuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jYXJvdXNlbC5jb21wb25lbnQuY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlXSxcbn0pXG5leHBvcnQgY2xhc3MgQ2Fyb3VzZWxDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcbiAgQFZpZXdDaGlsZCgnY2Fyb3VzZWxPdmVyZmxvd0NvbnRhaW5lcicpIGNhcm91c2VsT3ZlcmZsb3dDb250YWluZXI6IEVsZW1lbnRSZWZcblxuICBASW5wdXQoKSBjb250YWluZXJDbGFzcyA9ICcnXG4gIEBJbnB1dCgpIHN0ZXBzQ29udGFpbmVyQ2xhc3MgPSAndy1mdWxsIGJvdHRvbS0wIHRvcC1hdXRvJ1xuICBAT3V0cHV0KCkgY3VycmVudFN0ZXBDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKVxuXG4gIHByb3RlY3RlZCBzdGVwczogbnVtYmVyW10gPSBbXVxuICBwcm90ZWN0ZWQgZW1ibGFBcGk6IEVtYmxhQ2Fyb3VzZWxUeXBlXG4gIHByb3RlY3RlZCBjdXJyZW50U3RlcCA9IDBcblxuICBwcm90ZWN0ZWQgcmVmcmVzaFN0ZXBzID0gKCkgPT4ge1xuICAgIHRoaXMuc3RlcHMgPSB0aGlzLmVtYmxhQXBpLnNjcm9sbFNuYXBMaXN0KClcbiAgICB0aGlzLmN1cnJlbnRTdGVwID0gdGhpcy5lbWJsYUFwaS5zZWxlY3RlZFNjcm9sbFNuYXAoKVxuICAgIHRoaXMuY3VycmVudFN0ZXBDaGFuZ2UuZW1pdCh0aGlzLmN1cnJlbnRTdGVwKVxuICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpXG4gIH1cblxuICBnZXQgaXNGaXJzdFN0ZXAoKSB7XG4gICAgcmV0dXJuIHRoaXMuY3VycmVudFN0ZXAgPT09IDBcbiAgfVxuICBnZXQgaXNMYXN0U3RlcCgpIHtcbiAgICByZXR1cm4gdGhpcy5jdXJyZW50U3RlcCA9PT0gdGhpcy5zdGVwcy5sZW5ndGggLSAxXG4gIH1cbiAgZ2V0IHN0ZXBzQ291bnQoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3RlcHMubGVuZ3RoXG4gIH1cblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZikge31cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgdGhpcy5lbWJsYUFwaSA9IEVtYmxhQ2Fyb3VzZWwoXG4gICAgICB0aGlzLmNhcm91c2VsT3ZlcmZsb3dDb250YWluZXIubmF0aXZlRWxlbWVudCxcbiAgICAgIHtcbiAgICAgICAgZHVyYXRpb246IDE1LFxuICAgICAgfVxuICAgIClcblxuICAgIHRoaXMuZW1ibGFBcGlcbiAgICAgIC5vbignaW5pdCcsIHRoaXMucmVmcmVzaFN0ZXBzKVxuICAgICAgLm9uKCdyZUluaXQnLCB0aGlzLnJlZnJlc2hTdGVwcylcbiAgICAgIC5vbignc2VsZWN0JywgdGhpcy5yZWZyZXNoU3RlcHMpXG4gIH1cblxuICBwdWJsaWMgc2Nyb2xsVG9TdGVwKHN0ZXBJbmRleDogbnVtYmVyKSB7XG4gICAgdGhpcy5lbWJsYUFwaS5zY3JvbGxUbyhzdGVwSW5kZXgpXG4gIH1cblxuICBwdWJsaWMgc2xpZGVUb1ByZXZpb3VzKCkge1xuICAgIGlmICh0aGlzLmlzRmlyc3RTdGVwKSByZXR1cm5cbiAgICB0aGlzLmVtYmxhQXBpLnNjcm9sbFByZXYoKVxuICB9XG5cbiAgcHVibGljIHNsaWRlVG9OZXh0KCkge1xuICAgIGlmICh0aGlzLmlzTGFzdFN0ZXApIHJldHVyblxuICAgIHRoaXMuZW1ibGFBcGkuc2Nyb2xsTmV4dCgpXG4gIH1cbn1cbiIsIjxkaXYgI2Nhcm91c2VsT3ZlcmZsb3dDb250YWluZXIgY2xhc3M9XCJ3LWZ1bGxcIj5cbiAgPGRpdiBjbGFzcz1cImNhcm91c2VsLWNvbnRhaW5lciBmbGV4XCIgW25nQ2xhc3NdPVwiY29udGFpbmVyQ2xhc3NcIj5cbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gIDwvZGl2PlxuPC9kaXY+XG48ZGl2XG4gICpuZ0lmPVwic3RlcHMubGVuZ3RoID4gMVwiXG4gIGNsYXNzPVwiYWJzb2x1dGUgZmxleCBmbGV4LXJvdyBqdXN0aWZ5LWNlbnRlciBnYXAtWzE0cHhdIHAtMVwiXG4gIFtuZ0NsYXNzXT1cInN0ZXBzQ29udGFpbmVyQ2xhc3NcIlxuPlxuICA8YnV0dG9uXG4gICAgKm5nRm9yPVwibGV0IHN0ZXAgb2Ygc3RlcHM7IGxldCBpID0gaW5kZXhcIlxuICAgIGNsYXNzPVwiY2Fyb3VzZWwtc3RlcC1kb3RcIlxuICAgIChjbGljayk9XCJzY3JvbGxUb1N0ZXAoaSlcIlxuICAgIFtuZ0NsYXNzXT1cImN1cnJlbnRTdGVwID09PSBpID8gJ2JnLXByaW1hcnknIDogJ2JnLWdyYXktNDAwJ1wiXG4gID48L2J1dHRvbj5cbjwvZGl2PlxuIl19
|
|
@@ -6,7 +6,6 @@ import { StickyHeaderComponent } from './sticky-header/sticky-header.component';
|
|
|
6
6
|
import { AnchorLinkDirective } from './anchor-link/anchor-link.directive';
|
|
7
7
|
import { ExpandablePanelButtonComponent } from './expandable-panel-button/expandable-panel-button.component';
|
|
8
8
|
import { MatIconModule } from '@angular/material/icon';
|
|
9
|
-
import { CarouselComponent } from './carousel/carousel.component';
|
|
10
9
|
import * as i0 from "@angular/core";
|
|
11
10
|
import * as i1 from "@ngx-translate/core";
|
|
12
11
|
export class UiLayoutModule {
|
|
@@ -14,12 +13,10 @@ export class UiLayoutModule {
|
|
|
14
13
|
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.7", ngImport: i0, type: UiLayoutModule, declarations: [ExpandablePanelComponent,
|
|
15
14
|
StickyHeaderComponent,
|
|
16
15
|
AnchorLinkDirective,
|
|
17
|
-
ExpandablePanelButtonComponent,
|
|
18
|
-
CarouselComponent], imports: [CommonModule, MatIconModule, i1.TranslateModule], exports: [ExpandablePanelComponent,
|
|
16
|
+
ExpandablePanelButtonComponent], imports: [CommonModule, MatIconModule, i1.TranslateModule], exports: [ExpandablePanelComponent,
|
|
19
17
|
StickyHeaderComponent,
|
|
20
18
|
AnchorLinkDirective,
|
|
21
|
-
ExpandablePanelButtonComponent
|
|
22
|
-
CarouselComponent] }); }
|
|
19
|
+
ExpandablePanelButtonComponent] }); }
|
|
23
20
|
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: UiLayoutModule, imports: [CommonModule, MatIconModule, TranslateModule.forChild()] }); }
|
|
24
21
|
}
|
|
25
22
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: UiLayoutModule, decorators: [{
|
|
@@ -31,15 +28,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImpor
|
|
|
31
28
|
StickyHeaderComponent,
|
|
32
29
|
AnchorLinkDirective,
|
|
33
30
|
ExpandablePanelButtonComponent,
|
|
34
|
-
CarouselComponent,
|
|
35
31
|
],
|
|
36
32
|
exports: [
|
|
37
33
|
ExpandablePanelComponent,
|
|
38
34
|
StickyHeaderComponent,
|
|
39
35
|
AnchorLinkDirective,
|
|
40
36
|
ExpandablePanelButtonComponent,
|
|
41
|
-
CarouselComponent,
|
|
42
37
|
],
|
|
43
38
|
}]
|
|
44
39
|
}] });
|
|
45
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
40
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktbGF5b3V0Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvbGF5b3V0L3NyYy9saWIvdWktbGF5b3V0Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ3hDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM5QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFDckQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sK0NBQStDLENBQUE7QUFDeEYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seUNBQXlDLENBQUE7QUFDL0UsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUNBQXFDLENBQUE7QUFDekUsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sNkRBQTZELENBQUE7QUFDNUcsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFBOzs7QUFrQnRELE1BQU0sT0FBTyxjQUFjOzhHQUFkLGNBQWM7K0dBQWQsY0FBYyxpQkFadkIsd0JBQXdCO1lBQ3hCLHFCQUFxQjtZQUNyQixtQkFBbUI7WUFDbkIsOEJBQThCLGFBTHRCLFlBQVksRUFBRSxhQUFhLGlDQVFuQyx3QkFBd0I7WUFDeEIscUJBQXFCO1lBQ3JCLG1CQUFtQjtZQUNuQiw4QkFBOEI7K0dBR3JCLGNBQWMsWUFkZixZQUFZLEVBQUUsYUFBYSxFQUFFLGVBQWUsQ0FBQyxRQUFRLEVBQUU7OzJGQWN0RCxjQUFjO2tCQWYxQixRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxhQUFhLEVBQUUsZUFBZSxDQUFDLFFBQVEsRUFBRSxDQUFDO29CQUNsRSxZQUFZLEVBQUU7d0JBQ1osd0JBQXdCO3dCQUN4QixxQkFBcUI7d0JBQ3JCLG1CQUFtQjt3QkFDbkIsOEJBQThCO3FCQUMvQjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1Asd0JBQXdCO3dCQUN4QixxQkFBcUI7d0JBQ3JCLG1CQUFtQjt3QkFDbkIsOEJBQThCO3FCQUMvQjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbidcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnXG5pbXBvcnQgeyBFeHBhbmRhYmxlUGFuZWxDb21wb25lbnQgfSBmcm9tICcuL2V4cGFuZGFibGUtcGFuZWwvZXhwYW5kYWJsZS1wYW5lbC5jb21wb25lbnQnXG5pbXBvcnQgeyBTdGlja3lIZWFkZXJDb21wb25lbnQgfSBmcm9tICcuL3N0aWNreS1oZWFkZXIvc3RpY2t5LWhlYWRlci5jb21wb25lbnQnXG5pbXBvcnQgeyBBbmNob3JMaW5rRGlyZWN0aXZlIH0gZnJvbSAnLi9hbmNob3ItbGluay9hbmNob3ItbGluay5kaXJlY3RpdmUnXG5pbXBvcnQgeyBFeHBhbmRhYmxlUGFuZWxCdXR0b25Db21wb25lbnQgfSBmcm9tICcuL2V4cGFuZGFibGUtcGFuZWwtYnV0dG9uL2V4cGFuZGFibGUtcGFuZWwtYnV0dG9uLmNvbXBvbmVudCdcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJ1xuaW1wb3J0IHsgQ2Fyb3VzZWxDb21wb25lbnQgfSBmcm9tICcuL2Nhcm91c2VsL2Nhcm91c2VsLmNvbXBvbmVudCdcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgTWF0SWNvbk1vZHVsZSwgVHJhbnNsYXRlTW9kdWxlLmZvckNoaWxkKCldLFxuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBFeHBhbmRhYmxlUGFuZWxDb21wb25lbnQsXG4gICAgU3RpY2t5SGVhZGVyQ29tcG9uZW50LFxuICAgIEFuY2hvckxpbmtEaXJlY3RpdmUsXG4gICAgRXhwYW5kYWJsZVBhbmVsQnV0dG9uQ29tcG9uZW50LFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgRXhwYW5kYWJsZVBhbmVsQ29tcG9uZW50LFxuICAgIFN0aWNreUhlYWRlckNvbXBvbmVudCxcbiAgICBBbmNob3JMaW5rRGlyZWN0aXZlLFxuICAgIEV4cGFuZGFibGVQYW5lbEJ1dHRvbkNvbXBvbmVudCxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgVWlMYXlvdXRNb2R1bGUge31cbiJdfQ==
|
|
@@ -90,6 +90,7 @@ export function loadAppConfig() {
|
|
|
90
90
|
const parsedLayersSections = parseMultiConfigSection(parsed, 'map_layer', ['type'], ['name', 'url', 'data'], warnings, errors);
|
|
91
91
|
const parsedMapSection = parseConfigSection(parsed, 'map', [], [
|
|
92
92
|
'max_zoom',
|
|
93
|
+
'do_not_tile_wms',
|
|
93
94
|
'max_extent',
|
|
94
95
|
'baselayer',
|
|
95
96
|
'do_not_use_default_basemap',
|
|
@@ -101,6 +102,7 @@ export function loadAppConfig() {
|
|
|
101
102
|
? null
|
|
102
103
|
: {
|
|
103
104
|
MAX_ZOOM: parsedMapSection.max_zoom,
|
|
105
|
+
DO_NOT_TILE_WMS: parsedMapSection.do_not_tile_wms,
|
|
104
106
|
MAX_EXTENT: parsedMapSection.max_extent,
|
|
105
107
|
EXTERNAL_VIEWER_URL_TEMPLATE: parsedMapSection.external_viewer_url_template,
|
|
106
108
|
EXTERNAL_VIEWER_OPEN_NEW_TAB: parsedMapSection.external_viewer_open_new_tab,
|
|
@@ -199,4 +201,4 @@ export const TRANSLATE_WITH_OVERRIDES_CONFIG = {
|
|
|
199
201
|
deps: [HttpClient],
|
|
200
202
|
},
|
|
201
203
|
};
|
|
202
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLWNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdXRpbC9hcHAtY29uZmlnL3NyYy9saWIvYXBwLWNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssSUFBSSxNQUFNLGFBQWEsQ0FBQTtBQUNuQyxPQUFPLEVBQ0wscUJBQXFCLEVBQ3JCLGtCQUFrQixFQUNsQix1QkFBdUIsRUFDdkIsOEJBQThCLEdBQy9CLE1BQU0sZUFBZSxDQUFBO0FBV3RCLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQUN4RSxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQTtBQUNyRixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFDakQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG1DQUFtQyxDQUFBO0FBQ2hFLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLDZDQUE2QyxDQUFBO0FBRTlGLE1BQU0sb0JBQW9CLEdBQUc7OzsrSUFHa0gsQ0FBQTtBQUUvSSxJQUFJLFlBQVksR0FBaUIsSUFBSSxDQUFBO0FBRXJDLE1BQU0sVUFBVSxlQUFlO0lBQzdCLElBQUksWUFBWSxLQUFLLElBQUk7UUFBRSxNQUFNLElBQUksS0FBSyxDQUFDLG9CQUFvQixDQUFDLENBQUE7SUFDaEUsT0FBTyxZQUFZLENBQUE7QUFDckIsQ0FBQztBQUVELElBQUksV0FBVyxHQUFnQixJQUFJLENBQUE7QUFFbkMsTUFBTSxVQUFVLGNBQWM7SUFDNUIsSUFBSSxXQUFXLEtBQUssSUFBSTtRQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMsb0JBQW9CLENBQUMsQ0FBQTtJQUMvRCxPQUFPLFdBQVcsQ0FBQTtBQUNwQixDQUFDO0FBRUQsSUFBSSxTQUFTLEdBQWMsSUFBSSxDQUFBO0FBRS9CLE1BQU0sVUFBVSxvQkFBb0I7SUFD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QUNqQjtRQUVELGVBQWUsR0FBRyxJQUFJLENBQUE7SUFDeEIsQ0FBQyxDQUFDLENBQUE7QUFDTixDQUFDO0FBRUQsTUFBTSxVQUFVLGNBQWM7SUFDNUIsT0FBTyxlQUFlLENBQUE7QUFDeEIsQ0FBQztBQUVELE1BQU0sVUFBVSxNQUFNO0lBQ3BCLFlBQVksR0FBRyxJQUFJLENBQUE7SUFDbkIsV0FBVyxHQUFHLElBQUksQ0FBQTtJQUNsQixrQkFBa0IsR0FBRyxJQUFJLENBQUE7QUFDM0IsQ0FBQztBQUVELE1BQU0sQ0FBQyxNQUFNLCtCQUErQixHQUFHO0lBQzdDLFFBQVEsRUFBRTtRQUNSLE9BQU8sRUFBRSxpQkFBaUI7UUFDMUIsUUFBUSxFQUFFLDhCQUE4QjtLQUN6QztJQUNELE1BQU0sRUFBRTtRQUNOLE9BQU8sRUFBRSxlQUFlO1FBQ3hCLFVBQVUsRUFBRSxTQUFTLGlCQUFpQixDQUFDLElBQWdCO1lBQ3JELE9BQU8sSUFBSSxnQ0FBZ0MsQ0FBQyxJQUFJLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQTtRQUNyRSxDQUFDO1FBQ0QsZUFBZSxFQUFFLFlBQVk7UUFDN0IsSUFBSSxFQUFFLENBQUMsVUFBVSxDQUFDO0tBQ25CO0NBQ0YsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIFRPTUwgZnJvbSAnQGx0ZC9qLXRvbWwnXG5pbXBvcnQge1xuICBjaGVja01ldGFkYXRhTGFuZ3VhZ2UsXG4gIHBhcnNlQ29uZmlnU2VjdGlvbixcbiAgcGFyc2VNdWx0aUNvbmZpZ1NlY3Rpb24sXG4gIHBhcnNlVHJhbnNsYXRpb25zQ29uZmlnU2VjdGlvbixcbn0gZnJvbSAnLi9wYXJzZS11dGlscydcbmltcG9ydCB7XG4gIEN1c3RvbVRyYW5zbGF0aW9ucyxcbiAgQ3VzdG9tVHJhbnNsYXRpb25zQWxsTGFuZ3VhZ2VzLFxuICBHbG9iYWxDb25maWcsXG4gIExheWVyQ29uZmlnLFxuICBNYXBDb25maWcsXG4gIE1ldGFkYXRhUXVhbGl0eUNvbmZpZyxcbiAgU2VhcmNoQ29uZmlnLFxuICBUaGVtZUNvbmZpZyxcbn0gZnJvbSAnLi9tb2RlbCdcbmltcG9ydCB7IFRyYW5zbGF0ZUNvbXBpbGVyLCBUcmFuc2xhdGVMb2FkZXIgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJ1xuaW1wb3J0IHsgVHJhbnNsYXRlTWVzc2FnZUZvcm1hdENvbXBpbGVyIH0gZnJvbSAnbmd4LXRyYW5zbGF0ZS1tZXNzYWdlZm9ybWF0LWNvbXBpbGVyJ1xuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJ1xuaW1wb3J0IHsgREVGQVVMVF9MQU5HIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbGlicy91dGlsL2kxOG4vc3JjJ1xuaW1wb3J0IHsgRmlsZVdpdGhPdmVycmlkZXNUcmFuc2xhdGVMb2FkZXIgfSBmcm9tICcuL2kxOG4vZmlsZS13aXRoLW92ZXJyaWRlcy50cmFuc2xhdGUubG9hZGVyJ1xuXG5jb25zdCBNSVNTSU5HX0NPTkZJR19FUlJPUiA9IGBBcHBsaWNhdGlvbiBjb25maWd1cmF0aW9uIHdhcyBub3QgaW5pdGlhbGl6ZWQgY29ycmVjdGx5LlxuVGhpcyBlcnJvciBtaWdodCBzaG93IHVwIGluIGNhc2Ugb2YgYW4gaW52YWxpZC9tYWxmb3JtZWQgY29uZmlndXJhdGlvbiBmaWxlLlxuXG5Ob3RlOiBtYWtlIHN1cmUgdGhhdCB5b3UgaGF2ZSBjYWxsZWQgXFxgbG9hZEFwcENvbmZpZ1xcYCBmcm9tICcuLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvYXBwLWNvbmZpZy9zcmMnIGJlZm9yZSBzdGFydGluZyB0aGUgQW5ndWxhciBhcHBsaWNhdGlvbi5gXG5cbmxldCBnbG9iYWxDb25maWc6IEdsb2JhbENvbmZpZyA9IG51bGxcblxuZXhwb3J0IGZ1bmN0aW9uIGdldEdsb2JhbENvbmZpZygpOiBHbG9iYWxDb25maWcge1xuICBpZiAoZ2xvYmFsQ29uZmlnID09PSBudWxsKSB0aHJvdyBuZXcgRXJyb3IoTUlTU0lOR19DT05GSUdfRVJST1IpXG4gIHJldHVybiBnbG9iYWxDb25maWdcbn1cblxubGV0IHRoZW1lQ29uZmlnOiBUaGVtZUNvbmZpZyA9IG51bGxcblxuZXhwb3J0IGZ1bmN0aW9uIGdldFRoZW1lQ29uZmlnKCk6IFRoZW1lQ29uZmlnIHtcbiAgaWYgKHRoZW1lQ29uZmlnID09PSBudWxsKSB0aHJvdyBuZXcgRXJyb3IoTUlTU0lOR19DT05GSUdfRVJST1IpXG4gIHJldHVybiB0aGVtZUNvbmZpZ1xufVxuXG5sZXQgbWFwQ29uZmlnOiBNYXBDb25maWcgPSBudWxsXG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRPcHRpb25hbE1hcENvbmZpZygpOiBNYXBDb25maWcgfCBudWxsIHtcbiAgcmV0dXJuIG1hcENvbmZpZ1xufVxuXG5sZXQgc2VhcmNoQ29uZmlnOiBTZWFyY2hDb25maWcgPSBudWxsXG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRPcHRpb25hbFNlYXJjaENvbmZpZygpOiBTZWFyY2hDb25maWcgfCBudWxsIHtcbiAgcmV0dXJuIHNlYXJjaENvbmZpZ1xufVxuXG5sZXQgbWV0YWRhdGFRdWFsaXR5Q29uZmlnOiBNZXRhZGF0YVF1YWxpdHlDb25maWcgPSBudWxsXG5leHBvcnQgZnVuY3Rpb24gZ2V0TWV0YWRhdGFRdWFsaXR5Q29uZmlnKCk6IE1ldGFkYXRhUXVhbGl0eUNvbmZpZyB7XG4gIHJldHVybiAoXG4gICAgbWV0YWRhdGFRdWFsaXR5Q29uZmlnIHx8XG4gICAgKHtcbiAgICAgIEVOQUJMRUQ6IGZhbHNlLFxuICAgIH0gYXMgTWV0YWRhdGFRdWFsaXR5Q29uZmlnKVxuICApXG59XG5cbmxldCBjdXN0b21UcmFuc2xhdGlvbnM6IEN1c3RvbVRyYW5zbGF0aW9uc0FsbExhbmd1YWdlcyA9IG51bGxcblxuZXhwb3J0IGZ1bmN0aW9uIGdldEN1c3RvbVRyYW5zbGF0aW9ucyhsYW5nQ29kZTogc3RyaW5nKTogQ3VzdG9tVHJhbnNsYXRpb25zIHtcbiAgaWYgKGN1c3RvbVRyYW5zbGF0aW9ucyA9PT0gbnVsbCkgdGhyb3cgbmV3IEVycm9yKE1JU1NJTkdfQ09ORklHX0VSUk9SKVxuICByZXR1cm4gbGFuZ0NvZGUgaW4gY3VzdG9tVHJhbnNsYXRpb25zID8gY3VzdG9tVHJhbnNsYXRpb25zW2xhbmdDb2RlXSA6IHt9XG59XG5cbmxldCBhcHBDb25maWdMb2FkZWQgPSBmYWxzZVxuXG5leHBvcnQgZnVuY3Rpb24gbG9hZEFwcENvbmZpZygpIHtcbiAgcmV0dXJuIGZldGNoKCdhc3NldHMvY29uZmlndXJhdGlvbi9kZWZhdWx0LnRvbWwnKVxuICAgIC50aGVuKChyZXNwKSA9PiB7XG4gICAgICBpZiAoIXJlc3Aub2spIHRocm93IG5ldyBFcnJvcignQ29uZmlndXJhdGlvbiBmaWxlIGNvdWxkIG5vdCBiZSBsb2FkZWQnKVxuICAgICAgcmV0dXJuIHJlc3AudGV4dCgpXG4gICAgfSlcbiAgICAudGhlbigoY29uZikgPT4ge1xuICAgICAgbGV0IHBhcnNlZFxuICAgICAgdHJ5IHtcbiAgICAgICAgcGFyc2VkID0gVE9NTC5wYXJzZShjb25mLCB7IGpvaW5lcjogJ1xcbicsIGJpZ2ludDogZmFsc2UgfSkgYXMgYW55XG4gICAgICB9IGNhdGNoIChlOiBhbnkpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAgIGBBbiBlcnJvciBvY2N1cnJlZCB3aGVuIHBhcnNpbmcgdGhlIGNvbmZpZ3VyYXRpb24gZmlsZTogJHtlLm1lc3NhZ2V9YFxuICAgICAgICApXG4gICAgICB9XG4gICAgICBjb25zdCBlcnJvcnMgPSBbXVxuICAgICAgY29uc3Qgd2FybmluZ3MgPSBbXVxuXG4gICAgICBsZXQgcGFyc2VkR2xvYmFsU2VjdGlvbiA9IHBhcnNlQ29uZmlnU2VjdGlvbihcbiAgICAgICAgcGFyc2VkLFxuICAgICAgICAnZ2xvYmFsJyxcbiAgICAgICAgWydnZW9uZXR3b3JrNF9hcGlfdXJsJ10sXG4gICAgICAgIFtcbiAgICAgICAgICAnZGF0YWh1Yl91cmwnLFxuICAgICAgICAgICdwcm94eV9wYXRoJyxcbiAgICAgICAgICAnbWV0YWRhdGFfbGFuZ3VhZ2UnLFxuICAgICAgICAgICdsb2dpbl91cmwnLFxuICAgICAgICAgICd3ZWJfY29tcG9uZW50X2VtYmVkZGVyX3VybCcsXG4gICAgICAgICAgJ2xhbmd1YWdlcycsXG4gICAgICAgICAgJ2NvbnRhY3RfZW1haWwnLFxuICAgICAgICBdLFxuICAgICAgICB3YXJuaW5ncyxcbiAgICAgICAgZXJyb3JzXG4gICAgICApXG4gICAgICBpZiAocGFyc2VkR2xvYmFsU2VjdGlvbj8ubWV0YWRhdGFfbGFuZ3VhZ2UpIHtcbiAgICAgICAgcGFyc2VkR2xvYmFsU2VjdGlvbiA9IGNoZWNrTWV0YWRhdGFMYW5ndWFnZShcbiAgICAgICAgICBwYXJzZWRHbG9iYWxTZWN0aW9uLFxuICAgICAgICAgIHdhcm5pbmdzXG4gICAgICAgIClcbiAgICAgIH1cbiAgICAgIGdsb2JhbENvbmZpZyA9XG4gICAgICAgIHBhcnNlZEdsb2JhbFNlY3Rpb24gPT09IG51bGxcbiAgICAgICAgICA/IG51bGxcbiAgICAgICAgICA6ICh7XG4gICAgICAgICAgICAgIEdONF9BUElfVVJMOiBwYXJzZWRHbG9iYWxTZWN0aW9uLmdlb25ldHdvcms0X2FwaV91cmwsXG4gICAgICAgICAgICAgIERBVEFIVUJfVVJMOiBwYXJzZWRHbG9iYWxTZWN0aW9uLmRhdGFodWJfdXJsLFxuICAgICAgICAgICAgICBQUk9YWV9QQVRIOiBwYXJzZWRHbG9iYWxTZWN0aW9uLnByb3h5X3BhdGgsXG4gICAgICAgICAgICAgIE1FVEFEQVRBX0xBTkdVQUdFOiBwYXJzZWRHbG9iYWxTZWN0aW9uLm1ldGFkYXRhX2xhbmd1YWdlXG4gICAgICAgICAgICAgICAgPyAoXG4gICAgICAgICAgICAgICAgICAgIHBhcnNlZEdsb2JhbFNlY3Rpb24ubWV0YWRhdGFfbGFuZ3VhZ2UgYXMgc3RyaW5nXG4gICAgICAgICAgICAgICAgICApLnRvTG93ZXJDYXNlKClcbiAgICAgICAgICAgICAgICA6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgICAgTE9HSU5fVVJMOiBwYXJzZWRHbG9iYWxTZWN0aW9uLmxvZ2luX3VybCxcbiAgICAgICAgICAgICAgV0VCX0NPTVBPTkVOVF9FTUJFRERFUl9VUkw6XG4gICAgICAgICAgICAgICAgcGFyc2VkR2xvYmFsU2VjdGlvbi53ZWJfY29tcG9uZW50X2VtYmVkZGVyX3VybCxcbiAgICAgICAgICAgICAgTEFOR1VBR0VTOiBwYXJzZWRHbG9iYWxTZWN0aW9uLmxhbmd1YWdlcyxcbiAgICAgICAgICAgICAgQ09OVEFDVF9FTUFJTDogcGFyc2VkR2xvYmFsU2VjdGlvbi5jb250YWN0X2VtYWlsLFxuICAgICAgICAgICAgfSBhcyBHbG9iYWxDb25maWcpXG5cbiAgICAgIGNvbnN0IHBhcnNlZExheWVyc1NlY3Rpb25zID0gcGFyc2VNdWx0aUNvbmZpZ1NlY3Rpb24oXG4gICAgICAgIHBhcnNlZCxcbiAgICAgICAgJ21hcF9sYXllcicsXG4gICAgICAgIFsndHlwZSddLFxuICAgICAgICBbJ25hbWUnLCAndXJsJywgJ2RhdGEnXSxcbiAgICAgICAgd2FybmluZ3MsXG4gICAgICAgIGVycm9yc1xuICAgICAgKVxuICAgICAgY29uc3QgcGFyc2VkTWFwU2VjdGlvbiA9IHBhcnNlQ29uZmlnU2VjdGlvbihcbiAgICAgICAgcGFyc2VkLFxuICAgICAgICAnbWFwJyxcbiAgICAgICAgW10sXG4gICAgICAgIFtcbiAgICAgICAgICAnbWF4X3pvb20nLFxuICAgICAgICAgICdtYXhfZXh0ZW50JyxcbiAgICAgICAgICAnYmFzZWxheWVyJyxcbiAgICAgICAgICAnZG9fbm90X3VzZV9kZWZhdWx0X2Jhc2VtYXAnLFxuICAgICAgICAgICdleHRlcm5hbF92aWV3ZXJfdXJsX3RlbXBsYXRlJyxcbiAgICAgICAgICAnZXh0ZXJuYWxfdmlld2VyX29wZW5fbmV3X3RhYicsXG4gICAgICAgIF0sXG4gICAgICAgIHdhcm5pbmdzLFxuICAgICAgICBlcnJvcnNcbiAgICAgIClcbiAgICAgIG1hcENvbmZpZyA9XG4gICAgICAgIHBhcnNlZE1hcFNlY3Rpb24gPT09IG51bGwgfHwgcGFyc2VkTGF5ZXJzU2VjdGlvbnMgPT09IG51bGxcbiAgICAgICAgICA/IG51bGxcbiAgICAgICAgICA6ICh7XG4gICAgICAgICAgICAgIE1BWF9aT09NOiBwYXJzZWRNYXBTZWN0aW9uLm1heF96b29tLFxuICAgICAgICAgICAgICBNQVhfRVhURU5UOiBwYXJzZWRNYXBTZWN0aW9uLm1heF9leHRlbnQsXG4gICAgICAgICAgICAgIEVYVEVSTkFMX1ZJRVdFUl9VUkxfVEVNUExBVEU6XG4gICAgICAgICAgICAgICAgcGFyc2VkTWFwU2VjdGlvbi5leHRlcm5hbF92aWV3ZXJfdXJsX3RlbXBsYXRlLFxuICAgICAgICAgICAgICBFWFRFUk5BTF9WSUVXRVJfT1BFTl9ORVdfVEFCOlxuICAgICAgICAgICAgICAgIHBhcnNlZE1hcFNlY3Rpb24uZXh0ZXJuYWxfdmlld2VyX29wZW5fbmV3X3RhYixcbiAgICAgICAgICAgICAgRE9fTk9UX1VTRV9ERUZBVUxUX0JBU0VNQVA6XG4gICAgICAgICAgICAgICAgISFwYXJzZWRNYXBTZWN0aW9uLmRvX25vdF91c2VfZGVmYXVsdF9iYXNlbWFwLFxuICAgICAgICAgICAgICBNQVBfTEFZRVJTOiBwYXJzZWRMYXllcnNTZWN0aW9ucy5tYXAoXG4gICAgICAgICAgICAgICAgKG1hcF9sYXllcikgPT5cbiAgICAgICAgICAgICAgICAgICh7XG4gICAgICAgICAgICAgICAgICAgIFRZUEU6IG1hcF9sYXllci50eXBlLFxuICAgICAgICAgICAgICAgICAgICBVUkw6IG1hcF9sYXllci51cmwsXG4gICAgICAgICAgICAgICAgICAgIE5BTUU6IG1hcF9sYXllci5uYW1lLFxuICAgICAgICAgICAgICAgICAgICBEQVRBOiBtYXBfbGF5ZXIuZGF0YSxcbiAgICAgICAgICAgICAgICAgIH0gYXMgTGF5ZXJDb25maWcpXG4gICAgICAgICAgICAgICksXG4gICAgICAgICAgICB9IGFzIE1hcENvbmZpZylcblxuICAgICAgY29uc3QgcGFyc2VkVGhlbWVTZWN0aW9uID0gcGFyc2VDb25maWdTZWN0aW9uKFxuICAgICAgICBwYXJzZWQsXG4gICAgICAgICd0aGVtZScsXG4gICAgICAgIFsncHJpbWFyeV9jb2xvcicsICdzZWNvbmRhcnlfY29sb3InLCAnbWFpbl9jb2xvcicsICdiYWNrZ3JvdW5kX2NvbG9yJ10sXG4gICAgICAgIFtcbiAgICAgICAgICAnaGVhZGVyX2ZvcmVncm91bmRfY29sb3InLFxuICAgICAgICAgICdtYWluX2ZvbnQnLFxuICAgICAgICAgICd0aXRsZV9mb250JyxcbiAgICAgICAgICAnZm9udHNfc3R5bGVzaGVldF91cmwnLFxuICAgICAgICAgICd0aHVtYm5haWxfcGxhY2Vob2xkZXInLFxuICAgICAgICAgICdoZWFkZXJfYmFja2dyb3VuZCcsXG4gICAgICAgICAgJ2Zhdmljb24nLFxuICAgICAgICBdLFxuICAgICAgICB3YXJuaW5ncyxcbiAgICAgICAgZXJyb3JzXG4gICAgICApXG4gICAgICB0aGVtZUNvbmZpZyA9XG4gICAgICAgIHBhcnNlZFRoZW1lU2VjdGlvbiA9PT0gbnVsbFxuICAgICAgICAgID8gbnVsbFxuICAgICAgICAgIDogKHtcbiAgICAgICAgICAgICAgUFJJTUFSWV9DT0xPUjogcGFyc2VkVGhlbWVTZWN0aW9uLnByaW1hcnlfY29sb3IsXG4gICAgICAgICAgICAgIFNFQ09OREFSWV9DT0xPUjogcGFyc2VkVGhlbWVTZWN0aW9uLnNlY29uZGFyeV9jb2xvcixcbiAgICAgICAgICAgICAgTUFJTl9DT0xPUjogcGFyc2VkVGhlbWVTZWN0aW9uLm1haW5fY29sb3IsXG4gICAgICAgICAgICAgIEJBQ0tHUk9VTkRfQ09MT1I6IHBhcnNlZFRoZW1lU2VjdGlvbi5iYWNrZ3JvdW5kX2NvbG9yLFxuICAgICAgICAgICAgICBIRUFERVJfRk9SRUdST1VORF9DT0xPUjpcbiAgICAgICAgICAgICAgICBwYXJzZWRUaGVtZVNlY3Rpb24uaGVhZGVyX2ZvcmVncm91bmRfY29sb3IsXG4gICAgICAgICAgICAgIFRIVU1CTkFJTF9QTEFDRUhPTERFUjogcGFyc2VkVGhlbWVTZWN0aW9uLnRodW1ibmFpbF9wbGFjZWhvbGRlcixcbiAgICAgICAgICAgICAgSEVBREVSX0JBQ0tHUk9VTkQ6IHBhcnNlZFRoZW1lU2VjdGlvbi5oZWFkZXJfYmFja2dyb3VuZCxcbiAgICAgICAgICAgICAgVElUTEVfRk9OVDogcGFyc2VkVGhlbWVTZWN0aW9uLnRpdGxlX2ZvbnQsXG4gICAgICAgICAgICAgIE1BSU5fRk9OVDogcGFyc2VkVGhlbWVTZWN0aW9uLm1haW5fZm9udCxcbiAgICAgICAgICAgICAgRk9OVFNfU1RZTEVTSEVFVF9VUkw6IHBhcnNlZFRoZW1lU2VjdGlvbi5mb250c19zdHlsZXNoZWV0X3VybCxcbiAgICAgICAgICAgICAgRkFWSUNPTjogcGFyc2VkVGhlbWVTZWN0aW9uLmZhdmljb24sXG4gICAgICAgICAgICB9IGFzIFRoZW1lQ29uZmlnKVxuXG4gICAgICBjb25zdCBwYXJzZWRTZWFyY2hTZWN0aW9uID0gcGFyc2VDb25maWdTZWN0aW9uKFxuICAgICAgICBwYXJzZWQsXG4gICAgICAgICdzZWFyY2gnLFxuICAgICAgICBbXSxcbiAgICAgICAgW1xuICAgICAgICAgICdmaWx0ZXJfZ2VvbWV0cnlfZGF0YScsXG4gICAgICAgICAgJ2ZpbHRlcl9nZW9tZXRyeV91cmwnLFxuICAgICAgICAgICdzZWFyY2hfcHJlc2V0JyxcbiAgICAgICAgICAnYWR2YW5jZWRfZmlsdGVycycsXG4gICAgICAgIF0sXG4gICAgICAgIHdhcm5pbmdzLFxuICAgICAgICBlcnJvcnNcbiAgICAgIClcbiAgICAgIGNvbnN0IHBhcnNlZFNlYXJjaFBhcmFtcyA9IHBhcnNlTXVsdGlDb25maWdTZWN0aW9uKFxuICAgICAgICBwYXJzZWQsXG4gICAgICAgICdzZWFyY2hfcHJlc2V0JyxcbiAgICAgICAgWyduYW1lJ10sXG4gICAgICAgIFsnc29ydCcsICdmaWx0ZXJzJ10sXG4gICAgICAgIHdhcm5pbmdzLFxuICAgICAgICBlcnJvcnNcbiAgICAgIClcbiAgICAgIHNlYXJjaENvbmZpZyA9XG4gICAgICAgIHBhcnNlZFNlYXJjaFNlY3Rpb24gPT09IG51bGxcbiAgICAgICAgICA/IG51bGxcbiAgICAgICAgICA6ICh7XG4gICAgICAgICAgICAgIEZJTFRFUl9HRU9NRVRSWV9EQVRBOiBwYXJzZWRTZWFyY2hTZWN0aW9uLmZpbHRlcl9nZW9tZXRyeV9kYXRhLFxuICAgICAgICAgICAgICBGSUxURVJfR0VPTUVUUllfVVJMOiBwYXJzZWRTZWFyY2hTZWN0aW9uLmZpbHRlcl9nZW9tZXRyeV91cmwsXG4gICAgICAgICAgICAgIFNFQVJDSF9QUkVTRVQ6IHBhcnNlZFNlYXJjaFBhcmFtcy5tYXAoKHBhcmFtKSA9PiAoe1xuICAgICAgICAgICAgICAgIHNvcnQ6IHBhcmFtLnNvcnQsXG4gICAgICAgICAgICAgICAgbmFtZTogcGFyYW0ubmFtZSxcbiAgICAgICAgICAgICAgICBmaWx0ZXJzOiBwYXJhbS5maWx0ZXJzLFxuICAgICAgICAgICAgICB9KSksXG4gICAgICAgICAgICAgIEFEVkFOQ0VEX0ZJTFRFUlM6IHBhcnNlZFNlYXJjaFNlY3Rpb24uYWR2YW5jZWRfZmlsdGVycyxcbiAgICAgICAgICAgIH0gYXMgU2VhcmNoQ29uZmlnKVxuXG4gICAgICBjb25zdCBwYXJzZWRNZXRhZGF0YVF1YWxpdHlTZWN0aW9uID0gcGFyc2VDb25maWdTZWN0aW9uKFxuICAgICAgICBwYXJzZWQsXG4gICAgICAgICdtZXRhZGF0YS1xdWFsaXR5JyxcbiAgICAgICAgW10sXG4gICAgICAgIFsnZW5hYmxlZCddLFxuICAgICAgICB3YXJuaW5ncyxcbiAgICAgICAgZXJyb3JzXG4gICAgICApXG4gICAgICBtZXRhZGF0YVF1YWxpdHlDb25maWcgPVxuICAgICAgICBwYXJzZWRNZXRhZGF0YVF1YWxpdHlTZWN0aW9uID09PSBudWxsXG4gICAgICAgICAgPyBudWxsXG4gICAgICAgICAgOiAoe1xuICAgICAgICAgICAgICBFTkFCTEVEOiBwYXJzZWRNZXRhZGF0YVF1YWxpdHlTZWN0aW9uLmVuYWJsZWQsXG4gICAgICAgICAgICAgIFNPUlRBQkxFOiBwYXJzZWRNZXRhZGF0YVF1YWxpdHlTZWN0aW9uLnNvcnRhYmxlLFxuICAgICAgICAgICAgfSBhcyBNZXRhZGF0YVF1YWxpdHlDb25maWcpXG5cbiAgICAgIGN1c3RvbVRyYW5zbGF0aW9ucyA9IHBhcnNlVHJhbnNsYXRpb25zQ29uZmlnU2VjdGlvbihcbiAgICAgICAgcGFyc2VkLFxuICAgICAgICAndHJhbnNsYXRpb25zJ1xuICAgICAgKSBhcyBDdXN0b21UcmFuc2xhdGlvbnNBbGxMYW5ndWFnZXNcblxuICAgICAgaWYgKGVycm9ycy5sZW5ndGgpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBPbmUgb3IgbW9yZSBtYW5kYXRvcnkgc2V0dGluZ3Mgd2VyZSBtaXNzaW5nIGZyb20gdGhlIGNvbmZpZ3VyYXRpb24gZmlsZS5cbiR7ZXJyb3JzLmpvaW4oJ1xcbicpfWApXG4gICAgICB9IGVsc2UgaWYgKHdhcm5pbmdzLmxlbmd0aCkge1xuICAgICAgICBjb25zb2xlLndhcm4oYE9uZSBvciBtb3JlIHVuZXhwZWN0ZWQgc2V0dGluZ3Mgd2VyZSBlbmNvdW50ZXJlZCBpbiB0aGUgY29uZmlndXJhdGlvbiBmaWxlLlxuJHt3YXJuaW5ncy5qb2luKCdcXG4nKX1gKVxuICAgICAgfVxuXG4gICAgICBhcHBDb25maWdMb2FkZWQgPSB0cnVlXG4gICAgfSlcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzQ29uZmlnTG9hZGVkKCkge1xuICByZXR1cm4gYXBwQ29uZmlnTG9hZGVkXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBfcmVzZXQoKSB7XG4gIGdsb2JhbENvbmZpZyA9IG51bGxcbiAgdGhlbWVDb25maWcgPSBudWxsXG4gIGN1c3RvbVRyYW5zbGF0aW9ucyA9IG51bGxcbn1cblxuZXhwb3J0IGNvbnN0IFRSQU5TTEFURV9XSVRIX09WRVJSSURFU19DT05GSUcgPSB7XG4gIGNvbXBpbGVyOiB7XG4gICAgcHJvdmlkZTogVHJhbnNsYXRlQ29tcGlsZXIsXG4gICAgdXNlQ2xhc3M6IFRyYW5zbGF0ZU1lc3NhZ2VGb3JtYXRDb21waWxlcixcbiAgfSxcbiAgbG9hZGVyOiB7XG4gICAgcHJvdmlkZTogVHJhbnNsYXRlTG9hZGVyLFxuICAgIHVzZUZhY3Rvcnk6IGZ1bmN0aW9uIEh0dHBMb2FkZXJGYWN0b3J5KGh0dHA6IEh0dHBDbGllbnQpIHtcbiAgICAgIHJldHVybiBuZXcgRmlsZVdpdGhPdmVycmlkZXNUcmFuc2xhdGVMb2FkZXIoaHR0cCwgJy4vYXNzZXRzL2kxOG4vJylcbiAgICB9LFxuICAgIGRlZmF1bHRMYW5ndWFnZTogREVGQVVMVF9MQU5HLFxuICAgIGRlcHM6IFtIdHRwQ2xpZW50XSxcbiAgfSxcbn1cbiJdfQ==
|
|
204
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLWNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdXRpbC9hcHAtY29uZmlnL3NyYy9saWIvYXBwLWNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssSUFBSSxNQUFNLGFBQWEsQ0FBQTtBQUNuQyxPQUFPLEVBQ0wscUJBQXFCLEVBQ3JCLGtCQUFrQixFQUNsQix1QkFBdUIsRUFDdkIsOEJBQThCLEdBQy9CLE1BQU0sZUFBZSxDQUFBO0FBV3RCLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQUN4RSxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQTtBQUNyRixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFDakQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG1DQUFtQyxDQUFBO0FBQ2hFLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLDZDQUE2QyxDQUFBO0FBRTlGLE1BQU0sb0JBQW9CLEdBQUc7OzsrSUFHa0gsQ0FBQTtBQUUvSSxJQUFJLFlBQVksR0FBaUIsSUFBSSxDQUFBO0FBRXJDLE1BQU0sVUFBVSxlQUFlO0lBQzdCLElBQUksWUFBWSxLQUFLLElBQUk7UUFBRSxNQUFNLElBQUksS0FBSyxDQUFDLG9CQUFvQixDQUFDLENBQUE7SUFDaEUsT0FBTyxZQUFZLENBQUE7QUFDckIsQ0FBQztBQUVELElBQUksV0FBVyxHQUFnQixJQUFJLENBQUE7QUFFbkMsTUFBTSxVQUFVLGNBQWM7SUFDNUIsSUFBSSxXQUFXLEtBQUssSUFBSTtRQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMsb0JBQW9CLENBQUMsQ0FBQTtJQUMvRCxPQUFPLFdBQVcsQ0FBQTtBQUNwQixDQUFDO0FBRUQsSUFBSSxTQUFTLEdBQWMsSUFBSSxDQUFBO0FBRS9CLE1BQU0sVUFBVSxvQkFBb0I7SUFD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LFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFBO1NBQ2pCO1FBRUQsZUFBZSxHQUFHLElBQUksQ0FBQTtJQUN4QixDQUFDLENBQUMsQ0FBQTtBQUNOLENBQUM7QUFFRCxNQUFNLFVBQVUsY0FBYztJQUM1QixPQUFPLGVBQWUsQ0FBQTtBQUN4QixDQUFDO0FBRUQsTUFBTSxVQUFVLE1BQU07SUFDcEIsWUFBWSxHQUFHLElBQUksQ0FBQTtJQUNuQixXQUFXLEdBQUcsSUFBSSxDQUFBO0lBQ2xCLGtCQUFrQixHQUFHLElBQUksQ0FBQTtBQUMzQixDQUFDO0FBRUQsTUFBTSxDQUFDLE1BQU0sK0JBQStCLEdBQUc7SUFDN0MsUUFBUSxFQUFFO1FBQ1IsT0FBTyxFQUFFLGlCQUFpQjtRQUMxQixRQUFRLEVBQUUsOEJBQThCO0tBQ3pDO0lBQ0QsTUFBTSxFQUFFO1FBQ04sT0FBTyxFQUFFLGVBQWU7UUFDeEIsVUFBVSxFQUFFLFNBQVMsaUJBQWlCLENBQUMsSUFBZ0I7WUFDckQsT0FBTyxJQUFJLGdDQUFnQyxDQUFDLElBQUksRUFBRSxnQkFBZ0IsQ0FBQyxDQUFBO1FBQ3JFLENBQUM7UUFDRCxlQUFlLEVBQUUsWUFBWTtRQUM3QixJQUFJLEVBQUUsQ0FBQyxVQUFVLENBQUM7S0FDbkI7Q0FDRixDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgVE9NTCBmcm9tICdAbHRkL2otdG9tbCdcbmltcG9ydCB7XG4gIGNoZWNrTWV0YWRhdGFMYW5ndWFnZSxcbiAgcGFyc2VDb25maWdTZWN0aW9uLFxuICBwYXJzZU11bHRpQ29uZmlnU2VjdGlvbixcbiAgcGFyc2VUcmFuc2xhdGlvbnNDb25maWdTZWN0aW9uLFxufSBmcm9tICcuL3BhcnNlLXV0aWxzJ1xuaW1wb3J0IHtcbiAgQ3VzdG9tVHJhbnNsYXRpb25zLFxuICBDdXN0b21UcmFuc2xhdGlvbnNBbGxMYW5ndWFnZXMsXG4gIEdsb2JhbENvbmZpZyxcbiAgTGF5ZXJDb25maWcsXG4gIE1hcENvbmZpZyxcbiAgTWV0YWRhdGFRdWFsaXR5Q29uZmlnLFxuICBTZWFyY2hDb25maWcsXG4gIFRoZW1lQ29uZmlnLFxufSBmcm9tICcuL21vZGVsJ1xuaW1wb3J0IHsgVHJhbnNsYXRlQ29tcGlsZXIsIFRyYW5zbGF0ZUxvYWRlciB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnXG5pbXBvcnQgeyBUcmFuc2xhdGVNZXNzYWdlRm9ybWF0Q29tcGlsZXIgfSBmcm9tICduZ3gtdHJhbnNsYXRlLW1lc3NhZ2Vmb3JtYXQtY29tcGlsZXInXG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnXG5pbXBvcnQgeyBERUZBVUxUX0xBTkcgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvaTE4bi9zcmMnXG5pbXBvcnQgeyBGaWxlV2l0aE92ZXJyaWRlc1RyYW5zbGF0ZUxvYWRlciB9IGZyb20gJy4vaTE4bi9maWxlLXdpdGgtb3ZlcnJpZGVzLnRyYW5zbGF0ZS5sb2FkZXInXG5cbmNvbnN0IE1JU1NJTkdfQ09ORklHX0VSUk9SID0gYEFwcGxpY2F0aW9uIGNvbmZpZ3VyYXRpb24gd2FzIG5vdCBpbml0aWFsaXplZCBjb3JyZWN0bHkuXG5UaGlzIGVycm9yIG1pZ2h0IHNob3cgdXAgaW4gY2FzZSBvZiBhbiBpbnZhbGlkL21hbGZvcm1lZCBjb25maWd1cmF0aW9uIGZpbGUuXG5cbk5vdGU6IG1ha2Ugc3VyZSB0aGF0IHlvdSBoYXZlIGNhbGxlZCBcXGBsb2FkQXBwQ29uZmlnXFxgIGZyb20gJy4uLy4uLy4uLy4uLy4uL2xpYnMvdXRpbC9hcHAtY29uZmlnL3NyYycgYmVmb3JlIHN0YXJ0aW5nIHRoZSBBbmd1bGFyIGFwcGxpY2F0aW9uLmBcblxubGV0IGdsb2JhbENvbmZpZzogR2xvYmFsQ29uZmlnID0gbnVsbFxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0R2xvYmFsQ29uZmlnKCk6IEdsb2JhbENvbmZpZyB7XG4gIGlmIChnbG9iYWxDb25maWcgPT09IG51bGwpIHRocm93IG5ldyBFcnJvcihNSVNTSU5HX0NPTkZJR19FUlJPUilcbiAgcmV0dXJuIGdsb2JhbENvbmZpZ1xufVxuXG5sZXQgdGhlbWVDb25maWc6IFRoZW1lQ29uZmlnID0gbnVsbFxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0VGhlbWVDb25maWcoKTogVGhlbWVDb25maWcge1xuICBpZiAodGhlbWVDb25maWcgPT09IG51bGwpIHRocm93IG5ldyBFcnJvcihNSVNTSU5HX0NPTkZJR19FUlJPUilcbiAgcmV0dXJuIHRoZW1lQ29uZmlnXG59XG5cbmxldCBtYXBDb25maWc6IE1hcENvbmZpZyA9IG51bGxcblxuZXhwb3J0IGZ1bmN0aW9uIGdldE9wdGlvbmFsTWFwQ29uZmlnKCk6IE1hcENvbmZpZyB8IG51bGwge1xuICByZXR1cm4gbWFwQ29uZmlnXG59XG5cbmxldCBzZWFyY2hDb25maWc6IFNlYXJjaENvbmZpZyA9IG51bGxcblxuZXhwb3J0IGZ1bmN0aW9uIGdldE9wdGlvbmFsU2VhcmNoQ29uZmlnKCk6IFNlYXJjaENvbmZpZyB8IG51bGwge1xuICByZXR1cm4gc2VhcmNoQ29uZmlnXG59XG5cbmxldCBtZXRhZGF0YVF1YWxpdHlDb25maWc6IE1ldGFkYXRhUXVhbGl0eUNvbmZpZyA9IG51bGxcbmV4cG9ydCBmdW5jdGlvbiBnZXRNZXRhZGF0YVF1YWxpdHlDb25maWcoKTogTWV0YWRhdGFRdWFsaXR5Q29uZmlnIHtcbiAgcmV0dXJuIChcbiAgICBtZXRhZGF0YVF1YWxpdHlDb25maWcgfHxcbiAgICAoe1xuICAgICAgRU5BQkxFRDogZmFsc2UsXG4gICAgfSBhcyBNZXRhZGF0YVF1YWxpdHlDb25maWcpXG4gIClcbn1cblxubGV0IGN1c3RvbVRyYW5zbGF0aW9uczogQ3VzdG9tVHJhbnNsYXRpb25zQWxsTGFuZ3VhZ2VzID0gbnVsbFxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0Q3VzdG9tVHJhbnNsYXRpb25zKGxhbmdDb2RlOiBzdHJpbmcpOiBDdXN0b21UcmFuc2xhdGlvbnMge1xuICBpZiAoY3VzdG9tVHJhbnNsYXRpb25zID09PSBudWxsKSB0aHJvdyBuZXcgRXJyb3IoTUlTU0lOR19DT05GSUdfRVJST1IpXG4gIHJldHVybiBsYW5nQ29kZSBpbiBjdXN0b21UcmFuc2xhdGlvbnMgPyBjdXN0b21UcmFuc2xhdGlvbnNbbGFuZ0NvZGVdIDoge31cbn1cblxubGV0IGFwcENvbmZpZ0xvYWRlZCA9IGZhbHNlXG5cbmV4cG9ydCBmdW5jdGlvbiBsb2FkQXBwQ29uZmlnKCkge1xuICByZXR1cm4gZmV0Y2goJ2Fzc2V0cy9jb25maWd1cmF0aW9uL2RlZmF1bHQudG9tbCcpXG4gICAgLnRoZW4oKHJlc3ApID0+IHtcbiAgICAgIGlmICghcmVzcC5vaykgdGhyb3cgbmV3IEVycm9yKCdDb25maWd1cmF0aW9uIGZpbGUgY291bGQgbm90IGJlIGxvYWRlZCcpXG4gICAgICByZXR1cm4gcmVzcC50ZXh0KClcbiAgICB9KVxuICAgIC50aGVuKChjb25mKSA9PiB7XG4gICAgICBsZXQgcGFyc2VkXG4gICAgICB0cnkge1xuICAgICAgICBwYXJzZWQgPSBUT01MLnBhcnNlKGNvbmYsIHsgam9pbmVyOiAnXFxuJywgYmlnaW50OiBmYWxzZSB9KSBhcyBhbnlcbiAgICAgIH0gY2F0Y2ggKGU6IGFueSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICAgYEFuIGVycm9yIG9jY3VycmVkIHdoZW4gcGFyc2luZyB0aGUgY29uZmlndXJhdGlvbiBmaWxlOiAke2UubWVzc2FnZX1gXG4gICAgICAgIClcbiAgICAgIH1cbiAgICAgIGNvbnN0IGVycm9ycyA9IFtdXG4gICAgICBjb25zdCB3YXJuaW5ncyA9IFtdXG5cbiAgICAgIGxldCBwYXJzZWRHbG9iYWxTZWN0aW9uID0gcGFyc2VDb25maWdTZWN0aW9uKFxuICAgICAgICBwYXJzZWQsXG4gICAgICAgICdnbG9iYWwnLFxuICAgICAgICBbJ2dlb25ldHdvcms0X2FwaV91cmwnXSxcbiAgICAgICAgW1xuICAgICAgICAgICdkYXRhaHViX3VybCcsXG4gICAgICAgICAgJ3Byb3h5X3BhdGgnLFxuICAgICAgICAgICdtZXRhZGF0YV9sYW5ndWFnZScsXG4gICAgICAgICAgJ2xvZ2luX3VybCcsXG4gICAgICAgICAgJ3dlYl9jb21wb25lbnRfZW1iZWRkZXJfdXJsJyxcbiAgICAgICAgICAnbGFuZ3VhZ2VzJyxcbiAgICAgICAgICAnY29udGFjdF9lbWFpbCcsXG4gICAgICAgIF0sXG4gICAgICAgIHdhcm5pbmdzLFxuICAgICAgICBlcnJvcnNcbiAgICAgIClcbiAgICAgIGlmIChwYXJzZWRHbG9iYWxTZWN0aW9uPy5tZXRhZGF0YV9sYW5ndWFnZSkge1xuICAgICAgICBwYXJzZWRHbG9iYWxTZWN0aW9uID0gY2hlY2tNZXRhZGF0YUxhbmd1YWdlKFxuICAgICAgICAgIHBhcnNlZEdsb2JhbFNlY3Rpb24sXG4gICAgICAgICAgd2FybmluZ3NcbiAgICAgICAgKVxuICAgICAgfVxuICAgICAgZ2xvYmFsQ29uZmlnID1cbiAgICAgICAgcGFyc2VkR2xvYmFsU2VjdGlvbiA9PT0gbnVsbFxuICAgICAgICAgID8gbnVsbFxuICAgICAgICAgIDogKHtcbiAgICAgICAgICAgICAgR040X0FQSV9VUkw6IHBhcnNlZEdsb2JhbFNlY3Rpb24uZ2VvbmV0d29yazRfYXBpX3VybCxcbiAgICAgICAgICAgICAgREFUQUhVQl9VUkw6IHBhcnNlZEdsb2JhbFNlY3Rpb24uZGF0YWh1Yl91cmwsXG4gICAgICAgICAgICAgIFBST1hZX1BBVEg6IHBhcnNlZEdsb2JhbFNlY3Rpb24ucHJveHlfcGF0aCxcbiAgICAgICAgICAgICAgTUVUQURBVEFfTEFOR1VBR0U6IHBhcnNlZEdsb2JhbFNlY3Rpb24ubWV0YWRhdGFfbGFuZ3VhZ2VcbiAgICAgICAgICAgICAgICA/IChcbiAgICAgICAgICAgICAgICAgICAgcGFyc2VkR2xvYmFsU2VjdGlvbi5tZXRhZGF0YV9sYW5ndWFnZSBhcyBzdHJpbmdcbiAgICAgICAgICAgICAgICAgICkudG9Mb3dlckNhc2UoKVxuICAgICAgICAgICAgICAgIDogdW5kZWZpbmVkLFxuICAgICAgICAgICAgICBMT0dJTl9VUkw6IHBhcnNlZEdsb2JhbFNlY3Rpb24ubG9naW5fdXJsLFxuICAgICAgICAgICAgICBXRUJfQ09NUE9ORU5UX0VNQkVEREVSX1VSTDpcbiAgICAgICAgICAgICAgICBwYXJzZWRHbG9iYWxTZWN0aW9uLndlYl9jb21wb25lbnRfZW1iZWRkZXJfdXJsLFxuICAgICAgICAgICAgICBMQU5HVUFHRVM6IHBhcnNlZEdsb2JhbFNlY3Rpb24ubGFuZ3VhZ2VzLFxuICAgICAgICAgICAgICBDT05UQUNUX0VNQUlMOiBwYXJzZWRHbG9iYWxTZWN0aW9uLmNvbnRhY3RfZW1haWwsXG4gICAgICAgICAgICB9IGFzIEdsb2JhbENvbmZpZylcblxuICAgICAgY29uc3QgcGFyc2VkTGF5ZXJzU2VjdGlvbnMgPSBwYXJzZU11bHRpQ29uZmlnU2VjdGlvbihcbiAgICAgICAgcGFyc2VkLFxuICAgICAgICAnbWFwX2xheWVyJyxcbiAgICAgICAgWyd0eXBlJ10sXG4gICAgICAgIFsnbmFtZScsICd1cmwnLCAnZGF0YSddLFxuICAgICAgICB3YXJuaW5ncyxcbiAgICAgICAgZXJyb3JzXG4gICAgICApXG4gICAgICBjb25zdCBwYXJzZWRNYXBTZWN0aW9uID0gcGFyc2VDb25maWdTZWN0aW9uKFxuICAgICAgICBwYXJzZWQsXG4gICAgICAgICdtYXAnLFxuICAgICAgICBbXSxcbiAgICAgICAgW1xuICAgICAgICAgICdtYXhfem9vbScsXG4gICAgICAgICAgJ2RvX25vdF90aWxlX3dtcycsXG4gICAgICAgICAgJ21heF9leHRlbnQnLFxuICAgICAgICAgICdiYXNlbGF5ZXInLFxuICAgICAgICAgICdkb19ub3RfdXNlX2RlZmF1bHRfYmFzZW1hcCcsXG4gICAgICAgICAgJ2V4dGVybmFsX3ZpZXdlcl91cmxfdGVtcGxhdGUnLFxuICAgICAgICAgICdleHRlcm5hbF92aWV3ZXJfb3Blbl9uZXdfdGFiJyxcbiAgICAgICAgXSxcbiAgICAgICAgd2FybmluZ3MsXG4gICAgICAgIGVycm9yc1xuICAgICAgKVxuICAgICAgbWFwQ29uZmlnID1cbiAgICAgICAgcGFyc2VkTWFwU2VjdGlvbiA9PT0gbnVsbCB8fCBwYXJzZWRMYXllcnNTZWN0aW9ucyA9PT0gbnVsbFxuICAgICAgICAgID8gbnVsbFxuICAgICAgICAgIDogKHtcbiAgICAgICAgICAgICAgTUFYX1pPT006IHBhcnNlZE1hcFNlY3Rpb24ubWF4X3pvb20sXG4gICAgICAgICAgICAgIERPX05PVF9USUxFX1dNUzogcGFyc2VkTWFwU2VjdGlvbi5kb19ub3RfdGlsZV93bXMsXG4gICAgICAgICAgICAgIE1BWF9FWFRFTlQ6IHBhcnNlZE1hcFNlY3Rpb24ubWF4X2V4dGVudCxcbiAgICAgICAgICAgICAgRVhURVJOQUxfVklFV0VSX1VSTF9URU1QTEFURTpcbiAgICAgICAgICAgICAgICBwYXJzZWRNYXBTZWN0aW9uLmV4dGVybmFsX3ZpZXdlcl91cmxfdGVtcGxhdGUsXG4gICAgICAgICAgICAgIEVYVEVSTkFMX1ZJRVdFUl9PUEVOX05FV19UQUI6XG4gICAgICAgICAgICAgICAgcGFyc2VkTWFwU2VjdGlvbi5leHRlcm5hbF92aWV3ZXJfb3Blbl9uZXdfdGFiLFxuICAgICAgICAgICAgICBET19OT1RfVVNFX0RFRkFVTFRfQkFTRU1BUDpcbiAgICAgICAgICAgICAgICAhIXBhcnNlZE1hcFNlY3Rpb24uZG9fbm90X3VzZV9kZWZhdWx0X2Jhc2VtYXAsXG4gICAgICAgICAgICAgIE1BUF9MQVlFUlM6IHBhcnNlZExheWVyc1NlY3Rpb25zLm1hcChcbiAgICAgICAgICAgICAgICAobWFwX2xheWVyKSA9PlxuICAgICAgICAgICAgICAgICAgKHtcbiAgICAgICAgICAgICAgICAgICAgVFlQRTogbWFwX2xheWVyLnR5cGUsXG4gICAgICAgICAgICAgICAgICAgIFVSTDogbWFwX2xheWVyLnVybCxcbiAgICAgICAgICAgICAgICAgICAgTkFNRTogbWFwX2xheWVyLm5hbWUsXG4gICAgICAgICAgICAgICAgICAgIERBVEE6IG1hcF9sYXllci5kYXRhLFxuICAgICAgICAgICAgICAgICAgfSBhcyBMYXllckNvbmZpZylcbiAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIH0gYXMgTWFwQ29uZmlnKVxuXG4gICAgICBjb25zdCBwYXJzZWRUaGVtZVNlY3Rpb24gPSBwYXJzZUNvbmZpZ1NlY3Rpb24oXG4gICAgICAgIHBhcnNlZCxcbiAgICAgICAgJ3RoZW1lJyxcbiAgICAgICAgWydwcmltYXJ5X2NvbG9yJywgJ3NlY29uZGFyeV9jb2xvcicsICdtYWluX2NvbG9yJywgJ2JhY2tncm91bmRfY29sb3InXSxcbiAgICAgICAgW1xuICAgICAgICAgICdoZWFkZXJfZm9yZWdyb3VuZF9jb2xvcicsXG4gICAgICAgICAgJ21haW5fZm9udCcsXG4gICAgICAgICAgJ3RpdGxlX2ZvbnQnLFxuICAgICAgICAgICdmb250c19zdHlsZXNoZWV0X3VybCcsXG4gICAgICAgICAgJ3RodW1ibmFpbF9wbGFjZWhvbGRlcicsXG4gICAgICAgICAgJ2hlYWRlcl9iYWNrZ3JvdW5kJyxcbiAgICAgICAgICAnZmF2aWNvbicsXG4gICAgICAgIF0sXG4gICAgICAgIHdhcm5pbmdzLFxuICAgICAgICBlcnJvcnNcbiAgICAgIClcbiAgICAgIHRoZW1lQ29uZmlnID1cbiAgICAgICAgcGFyc2VkVGhlbWVTZWN0aW9uID09PSBudWxsXG4gICAgICAgICAgPyBudWxsXG4gICAgICAgICAgOiAoe1xuICAgICAgICAgICAgICBQUklNQVJZX0NPTE9SOiBwYXJzZWRUaGVtZVNlY3Rpb24ucHJpbWFyeV9jb2xvcixcbiAgICAgICAgICAgICAgU0VDT05EQVJZX0NPTE9SOiBwYXJzZWRUaGVtZVNlY3Rpb24uc2Vjb25kYXJ5X2NvbG9yLFxuICAgICAgICAgICAgICBNQUlOX0NPTE9SOiBwYXJzZWRUaGVtZVNlY3Rpb24ubWFpbl9jb2xvcixcbiAgICAgICAgICAgICAgQkFDS0dST1VORF9DT0xPUjogcGFyc2VkVGhlbWVTZWN0aW9uLmJhY2tncm91bmRfY29sb3IsXG4gICAgICAgICAgICAgIEhFQURFUl9GT1JFR1JPVU5EX0NPTE9SOlxuICAgICAgICAgICAgICAgIHBhcnNlZFRoZW1lU2VjdGlvbi5oZWFkZXJfZm9yZWdyb3VuZF9jb2xvcixcbiAgICAgICAgICAgICAgVEhVTUJOQUlMX1BMQUNFSE9MREVSOiBwYXJzZWRUaGVtZVNlY3Rpb24udGh1bWJuYWlsX3BsYWNlaG9sZGVyLFxuICAgICAgICAgICAgICBIRUFERVJfQkFDS0dST1VORDogcGFyc2VkVGhlbWVTZWN0aW9uLmhlYWRlcl9iYWNrZ3JvdW5kLFxuICAgICAgICAgICAgICBUSVRMRV9GT05UOiBwYXJzZWRUaGVtZVNlY3Rpb24udGl0bGVfZm9udCxcbiAgICAgICAgICAgICAgTUFJTl9GT05UOiBwYXJzZWRUaGVtZVNlY3Rpb24ubWFpbl9mb250LFxuICAgICAgICAgICAgICBGT05UU19TVFlMRVNIRUVUX1VSTDogcGFyc2VkVGhlbWVTZWN0aW9uLmZvbnRzX3N0eWxlc2hlZXRfdXJsLFxuICAgICAgICAgICAgICBGQVZJQ09OOiBwYXJzZWRUaGVtZVNlY3Rpb24uZmF2aWNvbixcbiAgICAgICAgICAgIH0gYXMgVGhlbWVDb25maWcpXG5cbiAgICAgIGNvbnN0IHBhcnNlZFNlYXJjaFNlY3Rpb24gPSBwYXJzZUNvbmZpZ1NlY3Rpb24oXG4gICAgICAgIHBhcnNlZCxcbiAgICAgICAgJ3NlYXJjaCcsXG4gICAgICAgIFtdLFxuICAgICAgICBbXG4gICAgICAgICAgJ2ZpbHRlcl9nZW9tZXRyeV9kYXRhJyxcbiAgICAgICAgICAnZmlsdGVyX2dlb21ldHJ5X3VybCcsXG4gICAgICAgICAgJ3NlYXJjaF9wcmVzZXQnLFxuICAgICAgICAgICdhZHZhbmNlZF9maWx0ZXJzJyxcbiAgICAgICAgXSxcbiAgICAgICAgd2FybmluZ3MsXG4gICAgICAgIGVycm9yc1xuICAgICAgKVxuICAgICAgY29uc3QgcGFyc2VkU2VhcmNoUGFyYW1zID0gcGFyc2VNdWx0aUNvbmZpZ1NlY3Rpb24oXG4gICAgICAgIHBhcnNlZCxcbiAgICAgICAgJ3NlYXJjaF9wcmVzZXQnLFxuICAgICAgICBbJ25hbWUnXSxcbiAgICAgICAgWydzb3J0JywgJ2ZpbHRlcnMnXSxcbiAgICAgICAgd2FybmluZ3MsXG4gICAgICAgIGVycm9yc1xuICAgICAgKVxuICAgICAgc2VhcmNoQ29uZmlnID1cbiAgICAgICAgcGFyc2VkU2VhcmNoU2VjdGlvbiA9PT0gbnVsbFxuICAgICAgICAgID8gbnVsbFxuICAgICAgICAgIDogKHtcbiAgICAgICAgICAgICAgRklMVEVSX0dFT01FVFJZX0RBVEE6IHBhcnNlZFNlYXJjaFNlY3Rpb24uZmlsdGVyX2dlb21ldHJ5X2RhdGEsXG4gICAgICAgICAgICAgIEZJTFRFUl9HRU9NRVRSWV9VUkw6IHBhcnNlZFNlYXJjaFNlY3Rpb24uZmlsdGVyX2dlb21ldHJ5X3VybCxcbiAgICAgICAgICAgICAgU0VBUkNIX1BSRVNFVDogcGFyc2VkU2VhcmNoUGFyYW1zLm1hcCgocGFyYW0pID0+ICh7XG4gICAgICAgICAgICAgICAgc29ydDogcGFyYW0uc29ydCxcbiAgICAgICAgICAgICAgICBuYW1lOiBwYXJhbS5uYW1lLFxuICAgICAgICAgICAgICAgIGZpbHRlcnM6IHBhcmFtLmZpbHRlcnMsXG4gICAgICAgICAgICAgIH0pKSxcbiAgICAgICAgICAgICAgQURWQU5DRURfRklMVEVSUzogcGFyc2VkU2VhcmNoU2VjdGlvbi5hZHZhbmNlZF9maWx0ZXJzLFxuICAgICAgICAgICAgfSBhcyBTZWFyY2hDb25maWcpXG5cbiAgICAgIGNvbnN0IHBhcnNlZE1ldGFkYXRhUXVhbGl0eVNlY3Rpb24gPSBwYXJzZUNvbmZpZ1NlY3Rpb24oXG4gICAgICAgIHBhcnNlZCxcbiAgICAgICAgJ21ldGFkYXRhLXF1YWxpdHknLFxuICAgICAgICBbXSxcbiAgICAgICAgWydlbmFibGVkJ10sXG4gICAgICAgIHdhcm5pbmdzLFxuICAgICAgICBlcnJvcnNcbiAgICAgIClcbiAgICAgIG1ldGFkYXRhUXVhbGl0eUNvbmZpZyA9XG4gICAgICAgIHBhcnNlZE1ldGFkYXRhUXVhbGl0eVNlY3Rpb24gPT09IG51bGxcbiAgICAgICAgICA/IG51bGxcbiAgICAgICAgICA6ICh7XG4gICAgICAgICAgICAgIEVOQUJMRUQ6IHBhcnNlZE1ldGFkYXRhUXVhbGl0eVNlY3Rpb24uZW5hYmxlZCxcbiAgICAgICAgICAgICAgU09SVEFCTEU6IHBhcnNlZE1ldGFkYXRhUXVhbGl0eVNlY3Rpb24uc29ydGFibGUsXG4gICAgICAgICAgICB9IGFzIE1ldGFkYXRhUXVhbGl0eUNvbmZpZylcblxuICAgICAgY3VzdG9tVHJhbnNsYXRpb25zID0gcGFyc2VUcmFuc2xhdGlvbnNDb25maWdTZWN0aW9uKFxuICAgICAgICBwYXJzZWQsXG4gICAgICAgICd0cmFuc2xhdGlvbnMnXG4gICAgICApIGFzIEN1c3RvbVRyYW5zbGF0aW9uc0FsbExhbmd1YWdlc1xuXG4gICAgICBpZiAoZXJyb3JzLmxlbmd0aCkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYE9uZSBvciBtb3JlIG1hbmRhdG9yeSBzZXR0aW5ncyB3ZXJlIG1pc3NpbmcgZnJvbSB0aGUgY29uZmlndXJhdGlvbiBmaWxlLlxuJHtlcnJvcnMuam9pbignXFxuJyl9YClcbiAgICAgIH0gZWxzZSBpZiAod2FybmluZ3MubGVuZ3RoKSB7XG4gICAgICAgIGNvbnNvbGUud2FybihgT25lIG9yIG1vcmUgdW5leHBlY3RlZCBzZXR0aW5ncyB3ZXJlIGVuY291bnRlcmVkIGluIHRoZSBjb25maWd1cmF0aW9uIGZpbGUuXG4ke3dhcm5pbmdzLmpvaW4oJ1xcbicpfWApXG4gICAgICB9XG5cbiAgICAgIGFwcENvbmZpZ0xvYWRlZCA9IHRydWVcbiAgICB9KVxufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNDb25maWdMb2FkZWQoKSB7XG4gIHJldHVybiBhcHBDb25maWdMb2FkZWRcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIF9yZXNldCgpIHtcbiAgZ2xvYmFsQ29uZmlnID0gbnVsbFxuICB0aGVtZUNvbmZpZyA9IG51bGxcbiAgY3VzdG9tVHJhbnNsYXRpb25zID0gbnVsbFxufVxuXG5leHBvcnQgY29uc3QgVFJBTlNMQVRFX1dJVEhfT1ZFUlJJREVTX0NPTkZJRyA9IHtcbiAgY29tcGlsZXI6IHtcbiAgICBwcm92aWRlOiBUcmFuc2xhdGVDb21waWxlcixcbiAgICB1c2VDbGFzczogVHJhbnNsYXRlTWVzc2FnZUZvcm1hdENvbXBpbGVyLFxuICB9LFxuICBsb2FkZXI6IHtcbiAgICBwcm92aWRlOiBUcmFuc2xhdGVMb2FkZXIsXG4gICAgdXNlRmFjdG9yeTogZnVuY3Rpb24gSHR0cExvYWRlckZhY3RvcnkoaHR0cDogSHR0cENsaWVudCkge1xuICAgICAgcmV0dXJuIG5ldyBGaWxlV2l0aE92ZXJyaWRlc1RyYW5zbGF0ZUxvYWRlcihodHRwLCAnLi9hc3NldHMvaTE4bi8nKVxuICAgIH0sXG4gICAgZGVmYXVsdExhbmd1YWdlOiBERUZBVUxUX0xBTkcsXG4gICAgZGVwczogW0h0dHBDbGllbnRdLFxuICB9LFxufVxuIl19
|
|
@@ -76,6 +76,7 @@ export const MAP_CONFIG_FIXTURE = {
|
|
|
76
76
|
MAX_ZOOM: 10,
|
|
77
77
|
MAX_EXTENT: [-418263.418776, 5251529.591305, 961272.067714, 6706890.609855],
|
|
78
78
|
DO_NOT_USE_DEFAULT_BASEMAP: false,
|
|
79
|
+
DO_NOT_TILE_WMS: false,
|
|
79
80
|
EXTERNAL_VIEWER_URL_TEMPLATE: 'https://example.com/myviewer/#/?actions=[{"type":"CATALOG:ADD_LAYERS_FROM_CATALOGS","layers":["${layer_name}"],"sources":[{"url":"${service_url}","type":"${service_type}"}]}]',
|
|
80
81
|
EXTERNAL_VIEWER_OPEN_NEW_TAB: true,
|
|
81
82
|
MAP_LAYERS: [
|
|
@@ -157,4 +158,4 @@ main_font = 'sans-serif'
|
|
|
157
158
|
title_font = 'serif'
|
|
158
159
|
another_color = 'red'
|
|
159
160
|
`;
|
|
160
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
161
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZml4dHVyZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvYXBwLWNvbmZpZy9zcmMvbGliL2ZpeHR1cmVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztDQTZEeEIsQ0FBQTtBQUVELE1BQU0sQ0FBQyxNQUFNLHdCQUF3QixHQUFHLFNBQVMsQ0FBQTtBQUVqRCxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUc7Ozs7Ozs7Ozs7Q0FVN0IsQ0FBQTtBQUVELE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFjO0lBQzNDLFFBQVEsRUFBRSxFQUFFO0lBQ1osVUFBVSxFQUFFLENBQUMsQ0FBQyxhQUFhLEVBQUUsY0FBYyxFQUFFLGFBQWEsRUFBRSxjQUFjLENBQUM7SUFDM0UsMEJBQTBCLEVBQUUsS0FBSztJQUNqQyxlQUFlLEVBQUUsS0FBSztJQUN0Qiw0QkFBNEIsRUFDMUIsZ0xBQWdMO0lBQ2xMLDRCQUE0QixFQUFFLElBQUk7SUFDbEMsVUFBVSxFQUFFO1FBQ1Y7WUFDRSxJQUFJLEVBQUUsS0FBSztZQUNYLEdBQUcsRUFBRSw2QkFBNkI7U0FDbkM7UUFDRDtZQUNFLElBQUksRUFBRSxLQUFLO1lBQ1gsR0FBRyxFQUFFLHlCQUF5QjtZQUM5QixJQUFJLEVBQUUsZ0JBQWdCO1NBQ3ZCO1FBQ0Q7WUFDRSxJQUFJLEVBQUUsS0FBSztZQUNYLEdBQUcsRUFBRSx5QkFBeUI7WUFDOUIsSUFBSSxFQUFFLGdCQUFnQjtTQUN2QjtLQUNGO0NBQ0YsQ0FBQTtBQUVELE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHOzs7O0NBSS9CLENBQUE7QUFFRCxNQUFNLENBQUMsTUFBTSx3QkFBd0IsR0FBRzs7Ozs7O0NBTXZDLENBQUE7QUFFRCxNQUFNLENBQUMsTUFBTSwwQkFBMEIsR0FBRzs7Ozs7Ozs7Ozs7OztDQWF6QyxDQUFBO0FBRUQsTUFBTSxDQUFDLE1BQU0sd0JBQXdCLEdBQUc7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBbUN2QyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTWFwQ29uZmlnIH0gZnJvbSAnLi9tb2RlbCdcblxuZXhwb3J0IGNvbnN0IENPTkZJR19PSyA9IGBcbltnbG9iYWxdXG5nZW9uZXR3b3JrNF9hcGlfdXJsID0gXCIvZ2VvbmV0d29yay9zcnYvYXBpXCJcbnByb3h5X3BhdGggPSBcIi9wcm94eS8/dXJsPVwiXG5tZXRhZGF0YV9sYW5ndWFnZSA9IFwiZnJlXCJcbmxvZ2luX3VybCA9IFwiL2Nhcy9sb2dpbj9zZXJ2aWNlPVwiXG53ZWJfY29tcG9uZW50X2VtYmVkZGVyX3VybCA9IFwiL2RhdGFodWIvd2MtZW1iZWRkZXIuaHRtbFwiXG5cblttYXBdXG5tYXhfem9vbSA9IDEwXG5tYXhfZXh0ZW50ID0gWy00MTgyNjMuNDE4Nzc2LCA1MjUxNTI5LjU5MTMwNSwgOTYxMjcyLjA2NzcxNCwgNjcwNjg5MC42MDk4NTVdXG5kb19ub3RfdXNlX2RlZmF1bHRfYmFzZW1hcCA9IGZhbHNlXG5leHRlcm5hbF92aWV3ZXJfdXJsX3RlbXBsYXRlID0gJ2h0dHBzOi8vZXhhbXBsZS5jb20vbXl2aWV3ZXI/J1xuZXh0ZXJuYWxfdmlld2VyX29wZW5fbmV3X3RhYiA9IHRydWVcbltbbWFwX2xheWVyXV1cbnR5cGUgPSBcIndtc1wiXG51cmwgPSBcImh0dHBzOi8vd3d3LmdlbzJmcmFuY2UuZnIvZ2Vvc2VydmVyL2NyX2hkZi9vd3NcIlxubmFtZSA9IFwibWFzcXVlX2hkZl9pZ25fY2FydG9fbGF0aW4xXCJcbltbbWFwX2xheWVyXV1cbnR5cGUgPSBcIndmc1wiXG51cmwgPSBcImh0dHBzOi8vd3d3LmdlbzJmcmFuY2UuZnIvZ2Vvc2VydmVyL2NyX2hkZi9vd3NcIlxubmFtZSA9IFwibWFzcXVlX2hkZl9pZ25fY2FydG9fbGF0aW4xXCJcblxuW3RoZW1lXVxucHJpbWFyeV9jb2xvciA9IFwiIzA5MzU2NFwiXG5zZWNvbmRhcnlfY29sb3IgPSBcIiNjMmU5ZGNcIlxubWFpbl9jb2xvciA9IFwiIzIxMjAyOVwiICMgQWxsLXB1cnBvc2UgdGV4dCBjb2xvclxuYmFja2dyb3VuZF9jb2xvciA9IFwiI2ZkZmJmZlwiXG50aHVtYm5haWxfcGxhY2Vob2xkZXIgPSAnYXNzZXRzL2ltZy9wbGFjZWhvbGRlci5zdmcnXG5oZWFkZXJfYmFja2dyb3VuZCA9ICd0ZWFsJ1xuaGVhZGVyX2ZvcmVncm91bmRfY29sb3IgPSBcIiM4NzJlMmVcIlxubWFpbl9mb250ID0gJ3NhbnMtc2VyaWYnXG50aXRsZV9mb250ID0gJ3NlcmlmJ1xuZm9udHNfc3R5bGVzaGVldF91cmwgPSBcImh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzMj9mYW1pbHk9T3BlbitTYW5zXCJcblxuW3NlYXJjaF1cbmZpbHRlcl9nZW9tZXRyeV91cmwgPSAnaHR0cHM6Ly9teS5kb21haW4ub3JnL2dlb20uanNvbidcbmFkdmFuY2VkX2ZpbHRlcnMgPSBbJ3B1YmxpY2F0aW9uWWVhcicsICdkb2N1bWVudFN0YW5kYXJkJywgJ2luc3BpcmVLZXl3b3JkJywgJ3RvcGljJywgJ2xpY2Vuc2UnXVxuXG5bW3NlYXJjaF9wcmVzZXRdXVxuc29ydCA9IFwiLWNyZWF0ZURhdGVcIlxubmFtZSA9ICdmaWx0ZXJCeU9yZ3MnXG5maWx0ZXJzLnEgPSAnQ2FydG8nXG5maWx0ZXJzLm9yZ2FuaXNhdGlvbiA9IFsnT3JnMScsICdPcmcyJ11cbmZpbHRlcnMuZm9ybWF0ID0gWydFU1JJIFNoYXBlZmlsZSddXG5maWx0ZXJzLnRvcGljID0gWydib3VuZGFyaWVzJ11cbmZpbHRlcnMucHVibGljYXRpb25ZZWFyID0gWycyMDIzJywgJzIwMjInXVxuZmlsdGVycy5zcGF0aWFsID0gWyd5ZXMnXVxuXG5bdHJhbnNsYXRpb25zLmVuXVxuXCJteS5maXJzdC5rZXlcIiA9ICdGaXJzdCBsYWJlbC4nXG5cIm15LnNlY29uZC5rZXlcIiA9IFwiXCJcIlxuU2Vjb25kIGxhYmVsLFxub24gdHdvIGxpbmVzLlwiXCJcIlxuXG5bdHJhbnNsYXRpb25zLmRlXVxubXkuZmlyc3Qua2V5ID0gJ0Vyc3RlIEV0aWtldHQuJ1xuXG5bdHJhbnNsYXRpb25zLmZyXVxubXkuc2FtcGxlLnRleHQgPSBcIlVuIGJvbiBleGVtcGxlIGRlIHRleHRlLlwiXG5cIm15LnF1b3RlZC50ZXh0XCIgPSAnZHUgdGV4dGUgZW50cmUgZ3VpbGxlbWVudHMuJ1xuYFxuXG5leHBvcnQgY29uc3QgQ09ORklHX1dJVEhfVFJBTlNMQVRJT05TID0gQ09ORklHX09LXG5cbmV4cG9ydCBjb25zdCBDT05GSUdfTUlOSU1BTCA9IGBcbltnbG9iYWxdXG5nZW9uZXR3b3JrNF9hcGlfdXJsID0gXCIvZ2VvbmV0d29yay9zcnYvYXBpXCJcbnByb3h5X3BhdGggPSBcIi9wcm94eS8/dXJsPVwiXG5cblt0aGVtZV1cbnByaW1hcnlfY29sb3IgPSBcIiMwOTM1NjRcIlxuc2Vjb25kYXJ5X2NvbG9yID0gXCIjYzJlOWRjXCJcbm1haW5fY29sb3IgPSBcIiMyMTIwMjlcIiAjIEFsbC1wdXJwb3NlIHRleHQgY29sb3JcbmJhY2tncm91bmRfY29sb3IgPSBcIiNmZGZiZmZcIlxuYFxuXG5leHBvcnQgY29uc3QgTUFQX0NPTkZJR19GSVhUVVJFOiBNYXBDb25maWcgPSB7XG4gIE1BWF9aT09NOiAxMCxcbiAgTUFYX0VYVEVOVDogWy00MTgyNjMuNDE4Nzc2LCA1MjUxNTI5LjU5MTMwNSwgOTYxMjcyLjA2NzcxNCwgNjcwNjg5MC42MDk4NTVdLFxuICBET19OT1RfVVNFX0RFRkFVTFRfQkFTRU1BUDogZmFsc2UsXG4gIERPX05PVF9USUxFX1dNUzogZmFsc2UsXG4gIEVYVEVSTkFMX1ZJRVdFUl9VUkxfVEVNUExBVEU6XG4gICAgJ2h0dHBzOi8vZXhhbXBsZS5jb20vbXl2aWV3ZXIvIy8/YWN0aW9ucz1be1widHlwZVwiOlwiQ0FUQUxPRzpBRERfTEFZRVJTX0ZST01fQ0FUQUxPR1NcIixcImxheWVyc1wiOltcIiR7bGF5ZXJfbmFtZX1cIl0sXCJzb3VyY2VzXCI6W3tcInVybFwiOlwiJHtzZXJ2aWNlX3VybH1cIixcInR5cGVcIjpcIiR7c2VydmljZV90eXBlfVwifV19XScsXG4gIEVYVEVSTkFMX1ZJRVdFUl9PUEVOX05FV19UQUI6IHRydWUsXG4gIE1BUF9MQVlFUlM6IFtcbiAgICB7XG4gICAgICBUWVBFOiAneHl6JyxcbiAgICAgIFVSTDogJ2h0dHBzOi8vc29tZS1iYXNlbWFwLXNlcnZlcicsXG4gICAgfSxcbiAgICB7XG4gICAgICBUWVBFOiAnd21zJyxcbiAgICAgIFVSTDogJ2h0dHBzOi8vc29tZS13bXMtc2VydmVyJyxcbiAgICAgIE5BTUU6ICdzb21lX2xheWVybmFtZScsXG4gICAgfSxcbiAgICB7XG4gICAgICBUWVBFOiAnd2ZzJyxcbiAgICAgIFVSTDogJ2h0dHBzOi8vc29tZS13ZnMtc2VydmVyJyxcbiAgICAgIE5BTUU6ICdzb21lX2xheWVybmFtZScsXG4gICAgfSxcbiAgXSxcbn1cblxuZXhwb3J0IGNvbnN0IENPTkZJR19NQUxGT1JNRUQgPSBgXG57XG4gIFwiSSB0aG91Z2h0XCI6IFwid2Ugd2VyZSBzdGlsbCBkb2luZyBqc29uXCJcbn1cbmBcblxuZXhwb3J0IGNvbnN0IENPTkZJR19NSVNTSU5HX01BTkRBVE9SWSA9IGBcblt0aGVtZV1cbnByaW1hcnlfY29sb3IgPSBcIiMwOTM1NjRcIlxuc2Vjb25kYXJ5X2NvbG9yID0gXCIjYzJlOWRjXCJcbmJhY2tncm91bmRfY29sb3IgPSBcIiNmZGZiZmZcIlxubWFpbl9mb250ID0gJ3NhbnMtc2VyaWYnXG5gXG5cbmV4cG9ydCBjb25zdCBDT05GSUdfV1JPTkdfTEFOR1VBR0VfQ09ERSA9IGBcbltnbG9iYWxdXG5nZW9uZXR3b3JrNF9hcGlfdXJsID0gXCIvZ2VvbmV0d29yay9zcnYvYXBpXCJcbnByb3h5X3BhdGggPSBcIi9wcm94eS8/dXJsPVwiXG5tZXRhZGF0YV9sYW5ndWFnZSA9IFwiZnJhXCJcblxuW21hcF1cblxuW3RoZW1lXVxucHJpbWFyeV9jb2xvciA9IFwiIzA5MzU2NFwiXG5zZWNvbmRhcnlfY29sb3IgPSBcIiNjMmU5ZGNcIlxubWFpbl9jb2xvciA9IFwiIzIxMjAyOVwiICMgQWxsLXB1cnBvc2UgdGV4dCBjb2xvclxuYmFja2dyb3VuZF9jb2xvciA9IFwiI2ZkZmJmZlwiXG5gXG5cbmV4cG9ydCBjb25zdCBDT05GSUdfVU5SRUNPR05JWkVEX0tFWVMgPSBgXG5bZ2xvYmFsXVxuZ2VvbmV0d29yazRfYXBpX3VybCA9IFwiL2dlb25ldHdvcmsvc3J2L2FwaVwiXG5wcm94eV9wYXRoID0gXCIvcHJveHkvP3VybD1cIlxubWV0YWRhdGFfbGFuZ3VhZ2UgPSBcImZyZVwiXG5hbm90aGVyX3BhdGggPSAnL3doYXRldmVyJ1xuXG5bbWFwXVxubWF4X3pvb20gPSAxMFxubWF4X2V4dGVudCA9IFstNDE4MjYzLjQxODc3NiwgNTI1MTUyOS41OTEzMDUsIDk2MTI3Mi4wNjc3MTQsIDY3MDY4OTAuNjA5ODU1XVxuZG9fbm90X3VzZV9kZWZhdWx0X2Jhc2VtYXAgPSBmYWxzZVxuZXh0ZXJuYWxfdmlld2VyX3VybF90ZW1wbGF0ZSA9ICdodHRwczovL2V4YW1wbGUuY29tL215dmlld2VyPydcbmV4dGVybmFsX3ZpZXdlcl9vcGVuX25ld190YWIgPSB0cnVlXG5hbm90aGVyX3pvb20gPSAxNVxuW1ttYXBfbGF5ZXJdXVxudHlwZSA9IFwid21zXCJcbnVybCA9IFwiaHR0cHM6Ly93d3cuZ2VvMmZyYW5jZS5mci9nZW9zZXJ2ZXIvY3JfaGRmL293c1wiXG5uYW1lID0gXCJtYXNxdWVfaGRmX2lnbl9jYXJ0b19sYXRpbjFcIlxuW1ttYXBfbGF5ZXJdXVxudHlwZSA9IFwid2ZzXCJcbnVybCA9IFwiaHR0cHM6Ly93d3cuZ2VvMmZyYW5jZS5mci9nZW9zZXJ2ZXIvY3JfaGRmL293c1wiXG5uYW1lID0gXCJtYXNxdWVfaGRmX2lnbl9jYXJ0b19sYXRpbjFcIlxuYW5vdGhlcl9sYXllciA9IFwid3JvbmcgbGF5ZXIgZGVmaW5pdGlvblwiXG5cblt0aGVtZV1cbnByaW1hcnlfY29sb3IgPSBcIiMwOTM1NjRcIlxuc2Vjb25kYXJ5X2NvbG9yID0gXCIjYzJlOWRjXCJcbm1haW5fY29sb3IgPSBcIiMyMTIwMjlcIiAjIEFsbC1wdXJwb3NlIHRleHQgY29sb3JcbmJhY2tncm91bmRfY29sb3IgPSBcIiNmZGZiZmZcIlxudGh1bWJuYWlsX3BsYWNlaG9sZGVyID0gJ2Fzc2V0cy9pbWcvcGxhY2Vob2xkZXIuc3ZnJ1xuaGVhZGVyX2JhY2tncm91bmQgPSAndGVhbCdcbmhlYWRlcl9mb3JlZ3JvdW5kX2NvbG9yID0gXCIjODcyZTJlXCJcbm1haW5fZm9udCA9ICdzYW5zLXNlcmlmJ1xudGl0bGVfZm9udCA9ICdzZXJpZidcbmFub3RoZXJfY29sb3IgPSAncmVkJ1xuYFxuIl19
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvYXBwLWNvbmZpZy9zcmMvbGliL21vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBHZW9tZXRyeSB9IGZyb20gJ2dlb2pzb24nXG5cbmV4cG9ydCBpbnRlcmZhY2UgR2xvYmFsQ29uZmlnIHtcbiAgR040X0FQSV9VUkw6IHN0cmluZ1xuICBEQVRBSFVCX1VSTD86IHN0cmluZ1xuICBQUk9YWV9QQVRIPzogc3RyaW5nXG4gIE1FVEFEQVRBX0xBTkdVQUdFPzogc3RyaW5nXG4gIExPR0lOX1VSTD86IHN0cmluZ1xuICBXRUJfQ09NUE9ORU5UX0VNQkVEREVSX1VSTD86IHN0cmluZ1xuICBMQU5HVUFHRVM/OiBzdHJpbmdbXVxuICBDT05UQUNUX0VNQUlMPzogc3RyaW5nXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTGF5ZXJDb25maWcge1xuICBUWVBFOiAneHl6JyB8ICd3bXMnIHwgJ3dmcycgfCAnZ2VvanNvbidcbiAgVVJMPzogc3RyaW5nXG4gIE5BTUU/
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvYXBwLWNvbmZpZy9zcmMvbGliL21vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBHZW9tZXRyeSB9IGZyb20gJ2dlb2pzb24nXG5cbmV4cG9ydCBpbnRlcmZhY2UgR2xvYmFsQ29uZmlnIHtcbiAgR040X0FQSV9VUkw6IHN0cmluZ1xuICBEQVRBSFVCX1VSTD86IHN0cmluZ1xuICBQUk9YWV9QQVRIPzogc3RyaW5nXG4gIE1FVEFEQVRBX0xBTkdVQUdFPzogc3RyaW5nXG4gIExPR0lOX1VSTD86IHN0cmluZ1xuICBXRUJfQ09NUE9ORU5UX0VNQkVEREVSX1VSTD86IHN0cmluZ1xuICBMQU5HVUFHRVM/OiBzdHJpbmdbXVxuICBDT05UQUNUX0VNQUlMPzogc3RyaW5nXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTGF5ZXJDb25maWcge1xuICBUWVBFOiAneHl6JyB8ICd3bXMnIHwgJ3dmcycgfCAnZ2VvanNvbidcbiAgVVJMPzogc3RyaW5nXG4gIE5BTUU/OiBzdHJpbmdcbiAgREFUQT86IHN0cmluZ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE1hcENvbmZpZyB7XG4gIE1BWF9aT09NPzogbnVtYmVyXG4gIERPX05PVF9USUxFX1dNUzogYm9vbGVhblxuICBNQVhfRVhURU5UPzogW251bWJlciwgbnVtYmVyLCBudW1iZXIsIG51bWJlcl0gLy8gRXhwcmVzc2VkIGFzIFttaW54LCBtaW55LCBtYXh4LCBtYXh5XVxuICBFWFRFUk5BTF9WSUVXRVJfVVJMX1RFTVBMQVRFPzogc3RyaW5nXG4gIEVYVEVSTkFMX1ZJRVdFUl9PUEVOX05FV19UQUI/OiBib29sZWFuXG4gIERPX05PVF9VU0VfREVGQVVMVF9CQVNFTUFQOiBib29sZWFuXG4gIE1BUF9MQVlFUlM6IExheWVyQ29uZmlnW11cbn1cblxuZXhwb3J0IGludGVyZmFjZSBUaGVtZUNvbmZpZyB7XG4gIFBSSU1BUllfQ09MT1I6IHN0cmluZ1xuICBTRUNPTkRBUllfQ09MT1I6IHN0cmluZ1xuICBNQUlOX0NPTE9SOiBzdHJpbmdcbiAgQkFDS0dST1VORF9DT0xPUjogc3RyaW5nXG4gIEhFQURFUl9GT1JFR1JPVU5EX0NPTE9SOiBzdHJpbmdcbiAgSEVBREVSX0JBQ0tHUk9VTkQ6IHN0cmluZ1xuICBUSFVNQk5BSUxfUExBQ0VIT0xERVI6IHN0cmluZ1xuICBNQUlOX0ZPTlQ/OiBzdHJpbmdcbiAgVElUTEVfRk9OVD86IHN0cmluZ1xuICBGT05UU19TVFlMRVNIRUVUX1VSTD86IHN0cmluZ1xuICBGQVZJQ09OPzogc3RyaW5nXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2VhcmNoUHJlc2V0IHtcbiAgc29ydDogc3RyaW5nXG4gIG5hbWU6IHN0cmluZ1xuICBmaWx0ZXJzOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmdbXSB8IHN0cmluZz5cbn1cblxuZXhwb3J0IGludGVyZmFjZSBTZWFyY2hDb25maWcge1xuICBGSUxURVJfR0VPTUVUUllfVVJMPzogc3RyaW5nXG4gIEZJTFRFUl9HRU9NRVRSWV9EQVRBPzogc3RyaW5nXG4gIFNFQVJDSF9QUkVTRVQ/OiBTZWFyY2hQcmVzZXRbXVxuICBBRFZBTkNFRF9GSUxURVJTPzogW11cbn1cblxuZXhwb3J0IGludGVyZmFjZSBNZXRhZGF0YVF1YWxpdHlDb25maWcge1xuICBFTkFCTEVEOiBib29sZWFuXG59XG5cbmV4cG9ydCB0eXBlIEN1c3RvbVRyYW5zbGF0aW9ucyA9IHsgW3RyYW5zbGF0aW9uS2V5OiBzdHJpbmddOiBzdHJpbmcgfVxuZXhwb3J0IHR5cGUgQ3VzdG9tVHJhbnNsYXRpb25zQWxsTGFuZ3VhZ2VzID0ge1xuICBbbGFuZzogc3RyaW5nXTogQ3VzdG9tVHJhbnNsYXRpb25zXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2VhcmNoQ29uZmlnIHtcbiAgRklMVEVSX0dFT01FVFJZPzogR2VvbWV0cnlcbn1cbiJdfQ==
|
|
@@ -23,7 +23,7 @@ export class LinkClassifierService {
|
|
|
23
23
|
case 'wmts':
|
|
24
24
|
return [LinkUsage.API, LinkUsage.MAP_API];
|
|
25
25
|
case 'ogcFeatures':
|
|
26
|
-
return [LinkUsage.API];
|
|
26
|
+
return [LinkUsage.API, LinkUsage.DOWNLOAD, LinkUsage.GEODATA];
|
|
27
27
|
default:
|
|
28
28
|
return [LinkUsage.UNKNOWN];
|
|
29
29
|
}
|
|
@@ -59,4 +59,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImpor
|
|
|
59
59
|
providedIn: 'root',
|
|
60
60
|
}]
|
|
61
61
|
}] });
|
|
62
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
62
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluay1jbGFzc2lmaWVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvc2hhcmVkL3NyYy9saWIvbGlua3MvbGluay1jbGFzc2lmaWVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUUxQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sY0FBYyxDQUFBOztBQUM1QyxNQUFNLENBQU4sSUFBWSxTQVFYO0FBUkQsV0FBWSxTQUFTO0lBQ25CLHdCQUFXLENBQUE7SUFDWCwrQkFBa0IsQ0FBQTtJQUNsQixrQ0FBcUIsQ0FBQTtJQUNyQiwwQkFBYSxDQUFBO0lBQ2IsZ0NBQW1CLENBQUE7SUFDbkIseUNBQTRCLENBQUE7SUFDNUIsZ0NBQW1CLENBQUE7QUFDckIsQ0FBQyxFQVJXLFNBQVMsS0FBVCxTQUFTLFFBUXBCO0FBS0QsTUFBTSxPQUFPLHFCQUFxQjtJQUNoQyxnQkFBZ0IsQ0FBQyxJQUF5QjtRQUN4QyxRQUFRLElBQUksQ0FBQyxJQUFJLEVBQUU7WUFDakIsS0FBSyxTQUFTLENBQUMsQ0FBQztnQkFDZCxRQUFRLElBQUksQ0FBQyxxQkFBcUIsRUFBRTtvQkFDbEMsS0FBSyxVQUFVLENBQUM7b0JBQ2hCLEtBQUssS0FBSzt3QkFDUixPQUFPLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxTQUFTLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQTtvQkFDL0QsS0FBSyxLQUFLLENBQUM7b0JBQ1gsS0FBSyxNQUFNO3dCQUNULE9BQU8sQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQTtvQkFDM0MsS0FBSyxhQUFhO3dCQUNoQixPQUFPLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxTQUFTLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQTtvQkFDL0Q7d0JBQ0UsT0FBTyxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQTtpQkFDN0I7YUFDRjtZQUNELEtBQUssTUFBTTtnQkFDVCxPQUFPLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFBO1lBQzVCLEtBQUssVUFBVSxDQUFDLENBQUM7Z0JBQ2YsUUFBUSxhQUFhLENBQUMsSUFBSSxDQUFDLEVBQUU7b0JBQzNCLEtBQUssTUFBTSxDQUFDO29CQUNaLEtBQUssS0FBSyxDQUFDO29CQUNYLEtBQUssT0FBTzt3QkFDVixPQUFPLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUE7b0JBQzdDLEtBQUssU0FBUzt3QkFDWixPQUFPLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRSxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUE7b0JBQ2hEO3dCQUNFLElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLEVBQUU7NEJBQ3ZDLE9BQU8sQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQTt5QkFDL0M7d0JBQ0QsT0FBTyxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQTtpQkFDOUI7YUFDRjtTQUNGO0lBQ0gsQ0FBQztJQUVELFFBQVEsQ0FBQyxJQUF5QixFQUFFLEtBQWdCO1FBQ2xELE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQTtJQUN4RCxDQUFDOzhHQXZDVSxxQkFBcUI7a0hBQXJCLHFCQUFxQixjQUZwQixNQUFNOzsyRkFFUCxxQkFBcUI7a0JBSGpDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBEYXRhc2V0RGlzdHJpYnV0aW9uIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vZG9tYWluL3NyYy9saWIvbW9kZWwvcmVjb3JkJ1xuaW1wb3J0IHsgZ2V0RmlsZUZvcm1hdCB9IGZyb20gJy4vbGluay11dGlscydcbmV4cG9ydCBlbnVtIExpbmtVc2FnZSB7XG4gIEFQSSA9ICdhcGknLFxuICBNQVBfQVBJID0gJ21hcGFwaScsXG4gIERPV05MT0FEID0gJ2Rvd25sb2FkJyxcbiAgREFUQSA9ICdkYXRhJyxcbiAgR0VPREFUQSA9ICdnZW9kYXRhJyxcbiAgTEFORElOR19QQUdFID0gJ2xhbmRpbmdwYWdlJyxcbiAgVU5LTk9XTiA9ICd1bmtub3duJyxcbn1cblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIExpbmtDbGFzc2lmaWVyU2VydmljZSB7XG4gIGdldFVzYWdlc0ZvckxpbmsobGluazogRGF0YXNldERpc3RyaWJ1dGlvbik6IExpbmtVc2FnZVtdIHtcbiAgICBzd2l0Y2ggKGxpbmsudHlwZSkge1xuICAgICAgY2FzZSAnc2VydmljZSc6IHtcbiAgICAgICAgc3dpdGNoIChsaW5rLmFjY2Vzc1NlcnZpY2VQcm90b2NvbCkge1xuICAgICAgICAgIGNhc2UgJ2VzcmlSZXN0JzpcbiAgICAgICAgICBjYXNlICd3ZnMnOlxuICAgICAgICAgICAgcmV0dXJuIFtMaW5rVXNhZ2UuQVBJLCBMaW5rVXNhZ2UuRE9XTkxPQUQsIExpbmtVc2FnZS5HRU9EQVRBXVxuICAgICAgICAgIGNhc2UgJ3dtcyc6XG4gICAgICAgICAgY2FzZSAnd210cyc6XG4gICAgICAgICAgICByZXR1cm4gW0xpbmtVc2FnZS5BUEksIExpbmtVc2FnZS5NQVBfQVBJXVxuICAgICAgICAgIGNhc2UgJ29nY0ZlYXR1cmVzJzpcbiAgICAgICAgICAgIHJldHVybiBbTGlua1VzYWdlLkFQSSwgTGlua1VzYWdlLkRPV05MT0FELCBMaW5rVXNhZ2UuR0VPREFUQV1cbiAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgcmV0dXJuIFtMaW5rVXNhZ2UuVU5LTk9XTl1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgY2FzZSAnbGluayc6XG4gICAgICAgIHJldHVybiBbTGlua1VzYWdlLlVOS05PV05dXG4gICAgICBjYXNlICdkb3dubG9hZCc6IHtcbiAgICAgICAgc3dpdGNoIChnZXRGaWxlRm9ybWF0KGxpbmspKSB7XG4gICAgICAgICAgY2FzZSAnanNvbic6XG4gICAgICAgICAgY2FzZSAnY3N2JzpcbiAgICAgICAgICBjYXNlICdleGNlbCc6XG4gICAgICAgICAgICByZXR1cm4gW0xpbmtVc2FnZS5ET1dOTE9BRCwgTGlua1VzYWdlLkRBVEFdXG4gICAgICAgICAgY2FzZSAnZ2VvanNvbic6XG4gICAgICAgICAgICByZXR1cm4gW0xpbmtVc2FnZS5ET1dOTE9BRCwgTGlua1VzYWdlLkdFT0RBVEFdXG4gICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgIGlmIChsaW5rLnVybC50b1N0cmluZygpLm1hdGNoKC9cXC93ZnMvaSkpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIFtMaW5rVXNhZ2UuRE9XTkxPQUQsIExpbmtVc2FnZS5HRU9EQVRBXVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIFtMaW5rVXNhZ2UuRE9XTkxPQURdXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBoYXNVc2FnZShsaW5rOiBEYXRhc2V0RGlzdHJpYnV0aW9uLCB1c2FnZTogTGlua1VzYWdlKSB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0VXNhZ2VzRm9yTGluayhsaW5rKS5pbmRleE9mKHVzYWdlKSA+IC0xXG4gIH1cbn1cbiJdfQ==
|
|
@@ -91,6 +91,27 @@ export const FORMATS = {
|
|
|
91
91
|
color: '#de630b',
|
|
92
92
|
mimeTypes: ['application/x-dxf', 'image/x-dxf'],
|
|
93
93
|
},
|
|
94
|
+
html: {
|
|
95
|
+
extensions: ['html', 'htm'],
|
|
96
|
+
priority: 12,
|
|
97
|
+
color: '#f2bb3a',
|
|
98
|
+
mimeTypes: ['text/html'],
|
|
99
|
+
},
|
|
100
|
+
fgb: {
|
|
101
|
+
extensions: ['fgb', 'flatgeobuf'],
|
|
102
|
+
priority: 13,
|
|
103
|
+
color: '#f2bb3a',
|
|
104
|
+
mimeTypes: ['application/flatgeobuf'],
|
|
105
|
+
},
|
|
106
|
+
jsonfg: {
|
|
107
|
+
extensions: ['jsonfg', 'jsonfgc'],
|
|
108
|
+
priority: 14,
|
|
109
|
+
color: '#f2bb3a',
|
|
110
|
+
mimeTypes: [
|
|
111
|
+
'application/vnd.ogc.fg+json',
|
|
112
|
+
'application/vnd.ogc.fg+json;compatibility=geojson',
|
|
113
|
+
],
|
|
114
|
+
},
|
|
94
115
|
};
|
|
95
116
|
export function getFormatPriority(linkFormat) {
|
|
96
117
|
for (const format in FORMATS) {
|
|
@@ -199,4 +220,4 @@ export function getLinkLabel(link) {
|
|
|
199
220
|
export function getMimeTypeForFormat(format) {
|
|
200
221
|
return format in FORMATS ? FORMATS[format.toLowerCase()].mimeTypes[0] : null;
|
|
201
222
|
}
|
|
202
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluay11dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdXRpbC9zaGFyZWQvc3JjL2xpYi9saW5rcy9saW5rLXV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQTtBQUdoRSxNQUFNLENBQUMscUNBQXFDLENBQUMsQ0FBQTtBQUU3QyxNQUFNLENBQUMsTUFBTSxPQUFPLEdBQUc7SUFDckIsR0FBRyxFQUFFO1FBQ0gsVUFBVSxFQUFFLENBQUMsS0FBSyxDQUFDO1FBQ25CLFFBQVEsRUFBRSxDQUFDO1FBQ1gsS0FBSyxFQUFFLFNBQVM7UUFDaEIsU0FBUyxFQUFFLENBQUMsVUFBVSxFQUFFLGlCQUFpQixDQUFDO0tBQzNDO0lBQ0QsS0FBSyxFQUFFO1FBQ0wsVUFBVSxFQUFFO1lBQ1YsT0FBTztZQUNQLEtBQUs7WUFDTCxNQUFNO1lBQ04sVUFBVTtZQUNWLCtCQUErQjtTQUNoQztRQUNELFFBQVEsRUFBRSxDQUFDO1FBQ1gsS0FBSyxFQUFFLFNBQVM7UUFDaEIsU0FBUyxFQUFFO1lBQ1QsMEJBQTBCO1lBQzFCLG1FQUFtRTtTQUNwRTtLQUNGO0lBQ0QsT0FBTyxFQUFFO1FBQ1AsVUFBVSxFQUFFLENBQUMsU0FBUyxDQUFDO1FBQ3ZCLFFBQVEsRUFBRSxDQUFDO1FBQ1gsS0FBSyxFQUFFLFNBQVM7UUFDaEIsU0FBUyxFQUFFLENBQUMsc0JBQXNCLEVBQUUsMEJBQTBCLENBQUM7S0FDaEU7SUFDRCxJQUFJLEVBQUU7UUFDSixVQUFVLEVBQUUsQ0FBQyxNQUFNLENBQUM7UUFDcEIsUUFBUSxFQUFFLENBQUM7UUFDWCxLQUFLLEVBQUUsU0FBUztRQUNoQixTQUFTLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQztLQUNoQztJQUNELEdBQUcsRUFBRTtRQUNILFVBQVUsRUFBRSxDQUFDLEtBQUssRUFBRSxPQUFPLEVBQUUsa0JBQWtCLENBQUM7UUFDaEQsUUFBUSxFQUFFLENBQUM7UUFDWCxLQUFLLEVBQUUsU0FBUztRQUNoQixTQUFTLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQztLQUNqQztJQUNELEdBQUcsRUFBRTtRQUNILFVBQVUsRUFBRSxDQUFDLEtBQUssQ0FBQztRQUNuQixRQUFRLEVBQUUsQ0FBQztRQUNYLEtBQUssRUFBRSxTQUFTO1FBQ2hCLFNBQVMsRUFBRSxDQUFDLHFCQUFxQixFQUFFLHVCQUF1QixDQUFDO0tBQzVEO0lBQ0QsR0FBRyxFQUFFO1FBQ0gsVUFBVSxFQUFFLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQztRQUMxQixRQUFRLEVBQUUsQ0FBQztRQUNYLEtBQUssRUFBRSxTQUFTO1FBQ2hCLFNBQVMsRUFBRTtZQUNULHNDQUFzQztZQUN0QyxrQ0FBa0M7U0FDbkM7S0FDRjtJQUNELElBQUksRUFBRTtRQUNKLFVBQVUsRUFBRSxDQUFDLE1BQU0sRUFBRSxZQUFZLENBQUM7UUFDbEMsUUFBUSxFQUFFLENBQUM7UUFDWCxLQUFLLEVBQUUsU0FBUztRQUNoQixTQUFTLEVBQUUsQ0FBQyxnQ0FBZ0MsQ0FBQztLQUM5QztJQUNELEdBQUcsRUFBRTtRQUNILFVBQVUsRUFBRSxDQUFDLEtBQUssRUFBRSxRQUFRLENBQUM7UUFDN0IsUUFBUSxFQUFFLENBQUM7UUFDWCxLQUFLLEVBQUUsU0FBUztRQUNoQixTQUFTLEVBQUUsQ0FBQyxpQkFBaUIsRUFBRSxtQkFBbUIsQ0FBQztLQUNwRDtJQUNELEdBQUcsRUFBRTtRQUNILFVBQVUsRUFBRSxDQUFDLEtBQUssQ0FBQztRQUNuQixRQUFRLEVBQUUsQ0FBQztRQUNYLEtBQUssRUFBRSxTQUFTO1FBQ2hCLFNBQVMsRUFBRSxDQUFDLGlCQUFpQixDQUFDO0tBQy9CO0lBQ0QsR0FBRyxFQUFFO1FBQ0gsVUFBVSxFQUFFLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLEtBQUssQ0FBQztRQUNuRCxRQUFRLEVBQUUsQ0FBQztRQUNYLEtBQUssRUFBRSxTQUFTO1FBQ2hCLFNBQVMsRUFBRSxDQUFDLFdBQVcsQ0FBQztLQUN6QjtJQUNELEdBQUcsRUFBRTtRQUNILFVBQVUsRUFBRSxDQUFDLEtBQUssQ0FBQztRQUNuQixRQUFRLEVBQUUsRUFBRTtRQUNaLEtBQUssRUFBRSxTQUFTO1FBQ2hCLFNBQVMsRUFBRSxDQUFDLGVBQWUsQ0FBQztLQUM3QjtJQUNELEdBQUcsRUFBRTtRQUNILFVBQVUsRUFBRSxDQUFDLEtBQUssQ0FBQztRQUNuQixRQUFRLEVBQUUsRUFBRTtRQUNaLEtBQUssRUFBRSxTQUFTO1FBQ2hCLFNBQVMsRUFBRSxDQUFDLG1CQUFtQixFQUFFLGFBQWEsQ0FBQztLQUNoRDtDQUNPLENBQUE7QUFJVixNQUFNLFVBQVUsaUJBQWlCLENBQUMsVUFBc0I7SUFDdEQsS0FBSyxNQUFNLE1BQU0sSUFBSSxPQUFPLEVBQUU7UUFDNUIsS0FBSyxNQUFNLEdBQUcsSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsVUFBVSxFQUFFO1lBQzVDLElBQUksSUFBSSxNQUFNLENBQUMsR0FBRyxHQUFHLEVBQUUsRUFBRSxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUU7Z0JBQzlDLElBQUksT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLFFBQVEsS0FBSyxDQUFDO29CQUFFLE9BQU8sQ0FBQyxDQUFBO2dCQUM1QyxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxRQUFRLENBQUE7YUFDOUQ7U0FDRjtLQUNGO0lBQ0QsT0FBTyxDQUFDLENBQUE7QUFDVixDQUFDO0FBRUQsTUFBTSxVQUFVLGVBQWUsQ0FBQyxJQUF5QjtJQUN2RCxPQUFPLGlCQUFpQixDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFBO0FBQy9DLENBQUM7QUFFRCxNQUFNLFVBQVUsOEJBQThCLENBQzVDLGFBQXFCO0lBRXJCLFNBQVMsYUFBYSxDQUFDLE1BQWtDO1FBQ3ZELE1BQU0sTUFBTSxHQUFHLGFBQWEsQ0FBQyxXQUFXLEVBQUUsQ0FBQTtRQUMxQyxPQUFPLENBQ0wsTUFBTSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxTQUFpQixFQUFFLEVBQUUsQ0FDM0MsTUFBTSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FDM0I7WUFDRCxNQUFNLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLFFBQWdCLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FDdkUsQ0FBQTtJQUNILENBQUM7SUFDRCxLQUFLLE1BQU0sVUFBVSxJQUFJLE9BQU8sRUFBRTtRQUNoQyxJQUFJLGFBQWEsQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUMsRUFBRTtZQUN0QyxPQUFPLFVBQXdCLENBQUE7U0FDaEM7S0FDRjtJQUNELE9BQU8sSUFBSSxDQUFBO0FBQ2IsQ0FBQztBQUVELE1BQU0sVUFBVSxhQUFhLENBQUMsSUFBeUI7SUFDckQsSUFBSSxVQUFVLElBQUksSUFBSSxFQUFFO1FBQ3RCLE1BQU0sY0FBYyxHQUFHLGdCQUFnQixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQTtRQUN0RCxJQUFJLGNBQWMsS0FBSyxJQUFJLEVBQUU7WUFDM0IsT0FBTyxjQUFjLENBQUE7U0FDdEI7S0FDRjtJQUNELEtBQUssTUFBTSxNQUFNLElBQUksT0FBTyxFQUFFO1FBQzVCLEtBQUssTUFBTSxLQUFLLElBQUksT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLFVBQVUsRUFBRTtZQUM5QyxJQUFJLGVBQWUsQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDO2dCQUFFLE9BQU8sTUFBb0IsQ0FBQTtZQUM3RCxJQUFJLG9CQUFvQixDQUFDLElBQUksRUFBRSxLQUFLLENBQUM7Z0JBQUUsT0FBTyxNQUFvQixDQUFBO1NBQ25FO0tBQ0Y7SUFDRCxPQUFPLElBQUksQ0FBQTtBQUNiLENBQUM7QUFFRCxNQUFNLFVBQVUsb0JBQW9CLENBQ2xDLElBQXlCLEVBQ3pCLEtBQWE7SUFFYixNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQTtJQUN6QyxLQUFLLE1BQU0sQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLElBQUksV0FBVyxDQUFDLE9BQU8sRUFBRSxFQUFFO1FBQ2hELElBQUksR0FBRyxLQUFLLFFBQVEsSUFBSSxHQUFHLEtBQUssR0FBRyxFQUFFO1lBQ25DLE9BQU8sS0FBSyxLQUFLLEtBQUssQ0FBQTtTQUN2QjtLQUNGO0lBQ0QsT0FBTyxLQUFLLENBQUE7QUFDZCxDQUFDO0FBRUQsTUFBTSxVQUFVLGdCQUFnQixDQUFDLFFBQWdCO0lBQy9DLEtBQUssTUFBTSxNQUFNLElBQUksT0FBTyxFQUFFO1FBQzVCLEtBQUssTUFBTSxFQUFFLElBQUksT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLFNBQVMsRUFBRTtZQUMxQyxJQUFJLFFBQVEsS0FBSyxFQUFFO2dCQUFFLE9BQU8sTUFBb0IsQ0FBQTtTQUNqRDtLQUNGO0lBQ0QsT0FBTyxJQUFJLENBQUE7QUFDYixDQUFDO0FBRUQsTUFBTSxVQUFVLGVBQWUsQ0FDN0IsSUFBeUIsRUFDekIsTUFBa0I7SUFFbEIsT0FBTyxDQUNMLENBQUMsTUFBTSxJQUFJLElBQUksSUFBSSxJQUFJLE1BQU0sQ0FBQyxPQUFPLE1BQU0sRUFBRSxFQUFFLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDcEUsQ0FBQyxLQUFLLElBQUksSUFBSTtZQUNaLElBQUksTUFBTSxDQUFDLE9BQU8sTUFBTSxFQUFFLEVBQUUsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUM5RCxDQUFBO0FBQ0gsQ0FBQztBQUVELE1BQU0sVUFBVSxhQUFhLENBQUMsVUFBc0I7SUFDbEQsS0FBSyxNQUFNLE1BQU0sSUFBSSxPQUFPLEVBQUU7UUFDNUIsS0FBSyxNQUFNLEtBQUssSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsVUFBVSxFQUFFO1lBQzlDLElBQUksSUFBSSxNQUFNLENBQUMsR0FBRyxLQUFLLEVBQUUsRUFBRSxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDO2dCQUM5QyxPQUFPLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxLQUFLLENBQUE7U0FDL0I7S0FDRjtJQUNELE9BQU8sdUJBQXVCLENBQUEsQ0FBQyxrQkFBa0I7QUFDbkQsQ0FBQztBQUVELE1BQU0sVUFBVSxZQUFZLENBQUMsSUFBeUI7SUFDcEQsSUFBSSxNQUFNLEdBQUcsRUFBRSxDQUFBO0lBQ2YsUUFBUSxJQUFJLENBQUMsSUFBSSxFQUFFO1FBQ2pCLEtBQUssU0FBUztZQUNaO2dCQUNFLFFBQVEsSUFBSSxDQUFDLHFCQUFxQixFQUFFO29CQUNsQyxLQUFLLEtBQUs7d0JBQ1IsTUFBTSxHQUFHLEtBQUssQ0FBQTt3QkFDZCxNQUFLO29CQUNQLEtBQUssS0FBSzt3QkFDUixNQUFNLEdBQUcsS0FBSyxDQUFBO3dCQUNkLE1BQUs7b0JBQ1AsS0FBSyxNQUFNO3dCQUNULE1BQU0sR0FBRyxNQUFNLENBQUE7d0JBQ2YsTUFBSztvQkFDUCxLQUFLLFVBQVU7d0JBQ2IsTUFBTSxHQUFHLE1BQU0sQ0FBQTt3QkFDZixNQUFLO2lCQUNSO2FBQ0Y7WUFDRCxNQUFLO1FBQ1A7WUFDRSxNQUFNLEdBQUcsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFBO0tBQy9CO0lBQ0QsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFdBQVcsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFBO0lBQzNDLE9BQU8sTUFBTSxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUssS0FBSyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFBO0FBQ2hELENBQUM7QUFFRCxNQUFNLFVBQVUsb0JBQW9CLENBQUMsTUFBa0I7SUFDckQsT0FBTyxNQUFNLElBQUksT0FBTyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUE7QUFDOUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IG1hcmtlciB9IGZyb20gJ0BiaWVzYmplcmcvbmd4LXRyYW5zbGF0ZS1leHRyYWN0LW1hcmtlcidcbmltcG9ydCB7IERhdGFzZXREaXN0cmlidXRpb24gfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9kb21haW4vc3JjL2xpYi9tb2RlbC9yZWNvcmQnXG5cbm1hcmtlcignZG93bmxvYWRzLndmcy5mZWF0dXJldHlwZS5ub3QuZm91bmQnKVxuXG5leHBvcnQgY29uc3QgRk9STUFUUyA9IHtcbiAgY3N2OiB7XG4gICAgZXh0ZW5zaW9uczogWydjc3YnXSxcbiAgICBwcmlvcml0eTogMSxcbiAgICBjb2xvcjogJyM1NTlkN2YnLFxuICAgIG1pbWVUeXBlczogWyd0ZXh0L2NzdicsICdhcHBsaWNhdGlvbi9jc3YnXSxcbiAgfSxcbiAgZXhjZWw6IHtcbiAgICBleHRlbnNpb25zOiBbXG4gICAgICAnZXhjZWwnLFxuICAgICAgJ3hscycsXG4gICAgICAneGxzeCcsXG4gICAgICAnbXMtZXhjZWwnLFxuICAgICAgJ29wZW54bWxmb3JtYXRzLW9mZmljZWRvY3VtZW50JyxcbiAgICBdLFxuICAgIHByaW9yaXR5OiAyLFxuICAgIGNvbG9yOiAnIzBmNDM5NScsXG4gICAgbWltZVR5cGVzOiBbXG4gICAgICAnYXBwbGljYXRpb24vdm5kLm1zLWV4Y2VsJyxcbiAgICAgICdhcHBsaWNhdGlvbi92bmQub3BlbnhtbGZvcm1hdHMtb2ZmaWNlZG9jdW1lbnQuc3ByZWFkc2hlZXRtbC5zaGVldCcsXG4gICAgXSxcbiAgfSxcbiAgZ2VvanNvbjoge1xuICAgIGV4dGVuc2lvbnM6IFsnZ2VvanNvbiddLFxuICAgIHByaW9yaXR5OiAzLFxuICAgIGNvbG9yOiAnIzFlNTE4MCcsXG4gICAgbWltZVR5cGVzOiBbJ2FwcGxpY2F0aW9uL2dlbytqc29uJywgJ2FwcGxpY2F0aW9uL3ZuZC5nZW8ranNvbiddLFxuICB9LFxuICBqc29uOiB7XG4gICAgZXh0ZW5zaW9uczogWydqc29uJ10sXG4gICAgcHJpb3JpdHk6IDMsXG4gICAgY29sb3I6ICcjMWU1MTgwJyxcbiAgICBtaW1lVHlwZXM6IFsnYXBwbGljYXRpb24vanNvbiddLFxuICB9LFxuICBzaHA6IHtcbiAgICBleHRlbnNpb25zOiBbJ3NocCcsICdzaGFwZScsICd6aXBwZWQtc2hhcGVmaWxlJ10sXG4gICAgcHJpb3JpdHk6IDQsXG4gICAgY29sb3I6ICcjMzI4NTU2JyxcbiAgICBtaW1lVHlwZXM6IFsneC1naXMveC1zaGFwZWZpbGUnXSxcbiAgfSxcbiAgZ21sOiB7XG4gICAgZXh0ZW5zaW9uczogWydnbWwnXSxcbiAgICBwcmlvcml0eTogNSxcbiAgICBjb2xvcjogJyNjOTJiY2UnLFxuICAgIG1pbWVUeXBlczogWydhcHBsaWNhdGlvbi9nbWwreG1sJywgJ3RleHQveG1sOyBzdWJ0eXBlPWdtbCddLFxuICB9LFxuICBrbWw6IHtcbiAgICBleHRlbnNpb25zOiBbJ2ttbCcsICdrbXonXSxcbiAgICBwcmlvcml0eTogNixcbiAgICBjb2xvcjogJyMzNDgwMDknLFxuICAgIG1pbWVUeXBlczogW1xuICAgICAgJ2FwcGxpY2F0aW9uL3ZuZC5nb29nbGUtZWFydGgua21sK3htbCcsXG4gICAgICAnYXBwbGljYXRpb24vdm5kLmdvb2dsZS1lYXJ0aC5rbXonLFxuICAgIF0sXG4gIH0sXG4gIGdwa2c6IHtcbiAgICBleHRlbnNpb25zOiBbJ2dwa2cnLCAnZ2VvcGFja2FnZSddLFxuICAgIHByaW9yaXR5OiA3LFxuICAgIGNvbG9yOiAnI2VhNzliYScsXG4gICAgbWltZVR5cGVzOiBbJ2FwcGxpY2F0aW9uL2dlb3BhY2thZ2Urc3FsaXRlMyddLFxuICB9LFxuICB6aXA6IHtcbiAgICBleHRlbnNpb25zOiBbJ3ppcCcsICd0YXIuZ3onXSxcbiAgICBwcmlvcml0eTogOCxcbiAgICBjb2xvcjogJyNmMmJiM2EnLFxuICAgIG1pbWVUeXBlczogWydhcHBsaWNhdGlvbi96aXAnLCAnYXBwbGljYXRpb24veC16aXAnXSxcbiAgfSxcbiAgcGRmOiB7XG4gICAgZXh0ZW5zaW9uczogWydwZGYnXSxcbiAgICBwcmlvcml0eTogOSxcbiAgICBjb2xvcjogJyNkYjU0NGEnLFxuICAgIG1pbWVUeXBlczogWydhcHBsaWNhdGlvbi9wZGYnXSxcbiAgfSxcbiAganBnOiB7XG4gICAgZXh0ZW5zaW9uczogWydqcGcnLCAnanBlZycsICdqZmlmJywgJ3BqcGVnJywgJ3BqcCddLFxuICAgIHByaW9yaXR5OiA5LFxuICAgIGNvbG9yOiAnIzY3M2FiNycsXG4gICAgbWltZVR5cGVzOiBbJ2ltYWdlL2pwZyddLFxuICB9LFxuICBzdmc6IHtcbiAgICBleHRlbnNpb25zOiBbJ3N2ZyddLFxuICAgIHByaW9yaXR5OiAxMCxcbiAgICBjb2xvcjogJyNkOTgyOTQnLFxuICAgIG1pbWVUeXBlczogWydpbWFnZS9zdmcreG1sJ10sXG4gIH0sXG4gIGR4Zjoge1xuICAgIGV4dGVuc2lvbnM6IFsnZHhmJ10sXG4gICAgcHJpb3JpdHk6IDExLFxuICAgIGNvbG9yOiAnI2RlNjMwYicsXG4gICAgbWltZVR5cGVzOiBbJ2FwcGxpY2F0aW9uL3gtZHhmJywgJ2ltYWdlL3gtZHhmJ10sXG4gIH0sXG59IGFzIGNvbnN0XG5cbmV4cG9ydCB0eXBlIEZpbGVGb3JtYXQgPSBrZXlvZiB0eXBlb2YgRk9STUFUU1xuXG5leHBvcnQgZnVuY3Rpb24gZ2V0Rm9ybWF0UHJpb3JpdHkobGlua0Zvcm1hdDogRmlsZUZvcm1hdCk6IG51bWJlciB7XG4gIGZvciAoY29uc3QgZm9ybWF0IGluIEZPUk1BVFMpIHtcbiAgICBmb3IgKGNvbnN0IGV4dCBvZiBGT1JNQVRTW2Zvcm1hdF0uZXh0ZW5zaW9ucykge1xuICAgICAgaWYgKG5ldyBSZWdFeHAoYCR7ZXh0fWAsICdpJykudGVzdChsaW5rRm9ybWF0KSkge1xuICAgICAgICBpZiAoRk9STUFUU1tmb3JtYXRdLnByaW9yaXR5ID09PSAwKSByZXR1cm4gMFxuICAgICAgICByZXR1cm4gT2JqZWN0LmtleXMoRk9STUFUUykubGVuZ3RoIC0gRk9STUFUU1tmb3JtYXRdLnByaW9yaXR5XG4gICAgICB9XG4gICAgfVxuICB9XG4gIHJldHVybiAwXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRMaW5rUHJpb3JpdHkobGluazogRGF0YXNldERpc3RyaWJ1dGlvbik6IG51bWJlciB7XG4gIHJldHVybiBnZXRGb3JtYXRQcmlvcml0eShnZXRGaWxlRm9ybWF0KGxpbmspKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0RmlsZUZvcm1hdEZyb21TZXJ2aWNlT3V0cHV0KFxuICBzZXJ2aWNlT3V0cHV0OiBzdHJpbmdcbik6IEZpbGVGb3JtYXQgfCBudWxsIHtcbiAgZnVuY3Rpb24gZm9ybWF0TWF0Y2hlcihmb3JtYXQ6IHR5cGVvZiBGT1JNQVRTW0ZpbGVGb3JtYXRdKTogYm9vbGVhbiB7XG4gICAgY29uc3Qgb3V0cHV0ID0gc2VydmljZU91dHB1dC50b0xvd2VyQ2FzZSgpXG4gICAgcmV0dXJuIChcbiAgICAgIGZvcm1hdC5leHRlbnNpb25zLnNvbWUoKGV4dGVuc2lvbjogc3RyaW5nKSA9PlxuICAgICAgICBvdXRwdXQuaW5jbHVkZXMoZXh0ZW5zaW9uKVxuICAgICAgKSB8fFxuICAgICAgZm9ybWF0Lm1pbWVUeXBlcy5zb21lKChtaW1lVHlwZTogc3RyaW5nKSA9PiBvdXRwdXQuaW5jbHVkZXMobWltZVR5cGUpKVxuICAgIClcbiAgfVxuICBmb3IgKGNvbnN0IGZvcm1hdE5hbWUgaW4gRk9STUFUUykge1xuICAgIGlmIChmb3JtYXRNYXRjaGVyKEZPUk1BVFNbZm9ybWF0TmFtZV0pKSB7XG4gICAgICByZXR1cm4gZm9ybWF0TmFtZSBhcyBGaWxlRm9ybWF0XG4gICAgfVxuICB9XG4gIHJldHVybiBudWxsXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRGaWxlRm9ybWF0KGxpbms6IERhdGFzZXREaXN0cmlidXRpb24pOiBGaWxlRm9ybWF0IHtcbiAgaWYgKCdtaW1lVHlwZScgaW4gbGluaykge1xuICAgIGNvbnN0IG1pbWVUeXBlRm9ybWF0ID0gbWltZVR5cGVUb0Zvcm1hdChsaW5rLm1pbWVUeXBlKVxuICAgIGlmIChtaW1lVHlwZUZvcm1hdCAhPT0gbnVsbCkge1xuICAgICAgcmV0dXJuIG1pbWVUeXBlRm9ybWF0XG4gICAgfVxuICB9XG4gIGZvciAoY29uc3QgZm9ybWF0IGluIEZPUk1BVFMpIHtcbiAgICBmb3IgKGNvbnN0IGFsaWFzIG9mIEZPUk1BVFNbZm9ybWF0XS5leHRlbnNpb25zKSB7XG4gICAgICBpZiAoY2hlY2tGaWxlRm9ybWF0KGxpbmssIGFsaWFzKSkgcmV0dXJuIGZvcm1hdCBhcyBGaWxlRm9ybWF0XG4gICAgICBpZiAoaXNGb3JtYXRJblF1ZXJ5UGFyYW0obGluaywgYWxpYXMpKSByZXR1cm4gZm9ybWF0IGFzIEZpbGVGb3JtYXRcbiAgICB9XG4gIH1cbiAgcmV0dXJuIG51bGxcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzRm9ybWF0SW5RdWVyeVBhcmFtKFxuICBsaW5rOiBEYXRhc2V0RGlzdHJpYnV0aW9uLFxuICBhbGlhczogc3RyaW5nXG4pOiBib29sZWFuIHtcbiAgY29uc3QgcXVlcnlQYXJhbXMgPSBsaW5rLnVybC5zZWFyY2hQYXJhbXNcbiAgZm9yIChjb25zdCBba2V5LCB2YWx1ZV0gb2YgcXVlcnlQYXJhbXMuZW50cmllcygpKSB7XG4gICAgaWYgKGtleSA9PT0gJ2Zvcm1hdCcgfHwga2V5ID09PSAnZicpIHtcbiAgICAgIHJldHVybiB2YWx1ZSA9PT0gYWxpYXNcbiAgICB9XG4gIH1cbiAgcmV0dXJuIGZhbHNlXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBtaW1lVHlwZVRvRm9ybWF0KG1pbWVUeXBlOiBzdHJpbmcpOiBGaWxlRm9ybWF0IHtcbiAgZm9yIChjb25zdCBmb3JtYXQgaW4gRk9STUFUUykge1xuICAgIGZvciAoY29uc3QgbXQgb2YgRk9STUFUU1tmb3JtYXRdLm1pbWVUeXBlcykge1xuICAgICAgaWYgKG1pbWVUeXBlID09PSBtdCkgcmV0dXJuIGZvcm1hdCBhcyBGaWxlRm9ybWF0XG4gICAgfVxuICB9XG4gIHJldHVybiBudWxsXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjaGVja0ZpbGVGb3JtYXQoXG4gIGxpbms6IERhdGFzZXREaXN0cmlidXRpb24sXG4gIGZvcm1hdDogRmlsZUZvcm1hdFxuKTogYm9vbGVhbiB7XG4gIHJldHVybiAoXG4gICAgKCduYW1lJyBpbiBsaW5rICYmIG5ldyBSZWdFeHAoYFsuL10ke2Zvcm1hdH1gLCAnaScpLnRlc3QobGluay5uYW1lKSkgfHxcbiAgICAoJ3VybCcgaW4gbGluayAmJlxuICAgICAgbmV3IFJlZ0V4cChgWy4vXSR7Zm9ybWF0fWAsICdpJykudGVzdChsaW5rLnVybC50b1N0cmluZygpKSlcbiAgKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0QmFkZ2VDb2xvcihsaW5rRm9ybWF0OiBGaWxlRm9ybWF0KTogc3RyaW5nIHtcbiAgZm9yIChjb25zdCBmb3JtYXQgaW4gRk9STUFUUykge1xuICAgIGZvciAoY29uc3QgYWxpYXMgb2YgRk9STUFUU1tmb3JtYXRdLmV4dGVuc2lvbnMpIHtcbiAgICAgIGlmIChuZXcgUmVnRXhwKGAke2FsaWFzfWAsICdpJykudGVzdChsaW5rRm9ybWF0KSlcbiAgICAgICAgcmV0dXJuIEZPUk1BVFNbZm9ybWF0XS5jb2xvclxuICAgIH1cbiAgfVxuICByZXR1cm4gJ3ZhcigtLWNvbG9yLWdyYXktNzAwKScgLy8gRGVmYXVsdCBjb2xvciA/XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRMaW5rTGFiZWwobGluazogRGF0YXNldERpc3RyaWJ1dGlvbik6IHN0cmluZyB7XG4gIGxldCBmb3JtYXQgPSAnJ1xuICBzd2l0Y2ggKGxpbmsudHlwZSkge1xuICAgIGNhc2UgJ3NlcnZpY2UnOlxuICAgICAge1xuICAgICAgICBzd2l0Y2ggKGxpbmsuYWNjZXNzU2VydmljZVByb3RvY29sKSB7XG4gICAgICAgICAgY2FzZSAnd2ZzJzpcbiAgICAgICAgICAgIGZvcm1hdCA9ICdXRlMnXG4gICAgICAgICAgICBicmVha1xuICAgICAgICAgIGNhc2UgJ3dtcyc6XG4gICAgICAgICAgICBmb3JtYXQgPSAnV01TJ1xuICAgICAgICAgICAgYnJlYWtcbiAgICAgICAgICBjYXNlICd3bXRzJzpcbiAgICAgICAgICAgIGZvcm1hdCA9ICdXTVRTJ1xuICAgICAgICAgICAgYnJlYWtcbiAgICAgICAgICBjYXNlICdlc3JpUmVzdCc6XG4gICAgICAgICAgICBmb3JtYXQgPSAnUkVTVCdcbiAgICAgICAgICAgIGJyZWFrXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGJyZWFrXG4gICAgZGVmYXVsdDpcbiAgICAgIGZvcm1hdCA9IGdldEZpbGVGb3JtYXQobGluaylcbiAgfVxuICBjb25zdCBsYWJlbCA9IGxpbmsuZGVzY3JpcHRpb24gfHwgbGluay5uYW1lXG4gIHJldHVybiBmb3JtYXQgPyBgJHtsYWJlbH0gKCR7Zm9ybWF0fSlgIDogbGFiZWxcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldE1pbWVUeXBlRm9yRm9ybWF0KGZvcm1hdDogRmlsZUZvcm1hdCk6IHN0cmluZyB8IG51bGwge1xuICByZXR1cm4gZm9ybWF0IGluIEZPUk1BVFMgPyBGT1JNQVRTW2Zvcm1hdC50b0xvd2VyQ2FzZSgpXS5taW1lVHlwZXNbMF0gOiBudWxsXG59XG4iXX0=
|
|
223
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluay11dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdXRpbC9zaGFyZWQvc3JjL2xpYi9saW5rcy9saW5rLXV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQTtBQUdoRSxNQUFNLENBQUMscUNBQXFDLENBQUMsQ0FBQTtBQUU3QyxNQUFNLENBQUMsTUFBTSxPQUFPLEdBQUc7SUFDckIsR0FBRyxFQUFFO1FBQ0gsVUFBVSxFQUFFLENBQUMsS0FBSyxDQUFDO1FBQ25CLFFBQVEsRUFBRSxDQUFDO1FBQ1gsS0FBSyxFQUFFLFNBQVM7UUFDaEIsU0FBUyxFQUFFLENBQUMsVUFBVSxFQUFFLGlCQUFpQixDQUFDO0tBQzNDO0lBQ0QsS0FBSyxFQUFFO1FBQ0wsVUFBVSxFQUFFO1lBQ1YsT0FBTztZQUNQLEtBQUs7WUFDTCxNQUFNO1lBQ04sVUFBVTtZQUNWLCtCQUErQjtTQUNoQztRQUNELFFBQVEsRUFBRSxDQUFDO1FBQ1gsS0FBSyxFQUFFLFNBQVM7UUFDaEIsU0FBUyxFQUFFO1lBQ1QsMEJBQTBCO1lBQzFCLG1FQUFtRTtTQUNwRTtLQUNGO0lBQ0QsT0FBTyxFQUFFO1FBQ1AsVUFBVSxFQUFFLENBQUMsU0FBUyxDQUFDO1FBQ3ZCLFFBQVEsRUFBRSxDQUFDO1FBQ1gsS0FBSyxFQUFFLFNBQVM7UUFDaEIsU0FBUyxFQUFFLENBQUMsc0JBQXNCLEVBQUUsMEJBQTBCLENBQUM7S0FDaEU7SUFDRCxJQUFJLEVBQUU7UUFDSixVQUFVLEVBQUUsQ0FBQyxNQUFNLENBQUM7UUFDcEIsUUFBUSxFQUFFLENBQUM7UUFDWCxLQUFLLEVBQUUsU0FBUztRQUNoQixTQUFTLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQztLQUNoQztJQUNELEdBQUcsRUFBRTtRQUNILFVBQVUsRUFBRSxDQUFDLEtBQUssRUFBRSxPQUFPLEVBQUUsa0JB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TSxHQUFHLE1BQU0sQ0FBQTt3QkFDZixNQUFLO29CQUNQLEtBQUssVUFBVTt3QkFDYixNQUFNLEdBQUcsTUFBTSxDQUFBO3dCQUNmLE1BQUs7aUJBQ1I7YUFDRjtZQUNELE1BQUs7UUFDUDtZQUNFLE1BQU0sR0FBRyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUE7S0FDL0I7SUFDRCxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsV0FBVyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUE7SUFDM0MsT0FBTyxNQUFNLENBQUMsQ0FBQyxDQUFDLEdBQUcsS0FBSyxLQUFLLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUE7QUFDaEQsQ0FBQztBQUVELE1BQU0sVUFBVSxvQkFBb0IsQ0FBQyxNQUFrQjtJQUNyRCxPQUFPLE1BQU0sSUFBSSxPQUFPLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQTtBQUM5RSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgbWFya2VyIH0gZnJvbSAnQGJpZXNiamVyZy9uZ3gtdHJhbnNsYXRlLWV4dHJhY3QtbWFya2VyJ1xuaW1wb3J0IHsgRGF0YXNldERpc3RyaWJ1dGlvbiB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL2RvbWFpbi9zcmMvbGliL21vZGVsL3JlY29yZCdcblxubWFya2VyKCdkb3dubG9hZHMud2ZzLmZlYXR1cmV0eXBlLm5vdC5mb3VuZCcpXG5cbmV4cG9ydCBjb25zdCBGT1JNQVRTID0ge1xuICBjc3Y6IHtcbiAgICBleHRlbnNpb25zOiBbJ2NzdiddLFxuICAgIHByaW9yaXR5OiAxLFxuICAgIGNvbG9yOiAnIzU1OWQ3ZicsXG4gICAgbWltZVR5cGVzOiBbJ3RleHQvY3N2JywgJ2FwcGxpY2F0aW9uL2NzdiddLFxuICB9LFxuICBleGNlbDoge1xuICAgIGV4dGVuc2lvbnM6IFtcbiAgICAgICdleGNlbCcsXG4gICAgICAneGxzJyxcbiAgICAgICd4bHN4JyxcbiAgICAgICdtcy1leGNlbCcsXG4gICAgICAnb3BlbnhtbGZvcm1hdHMtb2ZmaWNlZG9jdW1lbnQnLFxuICAgIF0sXG4gICAgcHJpb3JpdHk6IDIsXG4gICAgY29sb3I6ICcjMGY0Mzk1JyxcbiAgICBtaW1lVHlwZXM6IFtcbiAgICAgICdhcHBsaWNhdGlvbi92bmQubXMtZXhjZWwnLFxuICAgICAgJ2FwcGxpY2F0aW9uL3ZuZC5vcGVueG1sZm9ybWF0cy1vZmZpY2Vkb2N1bWVudC5zcHJlYWRzaGVldG1sLnNoZWV0JyxcbiAgICBdLFxuICB9LFxuICBnZW9qc29uOiB7XG4gICAgZXh0ZW5zaW9uczogWydnZW9qc29uJ10sXG4gICAgcHJpb3JpdHk6IDMsXG4gICAgY29sb3I6ICcjMWU1MTgwJyxcbiAgICBtaW1lVHlwZXM6IFsnYXBwbGljYXRpb24vZ2VvK2pzb24nLCAnYXBwbGljYXRpb24vdm5kLmdlbytqc29uJ10sXG4gIH0sXG4gIGpzb246IHtcbiAgICBleHRlbnNpb25zOiBbJ2pzb24nXSxcbiAgICBwcmlvcml0eTogMyxcbiAgICBjb2xvcjogJyMxZTUxODAnLFxuICAgIG1pbWVUeXBlczogWydhcHBsaWNhdGlvbi9qc29uJ10sXG4gIH0sXG4gIHNocDoge1xuICAgIGV4dGVuc2lvbnM6IFsnc2hwJywgJ3NoYXBlJywgJ3ppcHBlZC1zaGFwZWZpbGUnXSxcbiAgICBwcmlvcml0eTogNCxcbiAgICBjb2xvcjogJyMzMjg1NTYnLFxuICAgIG1pbWVUeXBlczogWyd4LWdpcy94LXNoYXBlZmlsZSddLFxuICB9LFxuICBnbWw6IHtcbiAgICBleHRlbnNpb25zOiBbJ2dtbCddLFxuICAgIHByaW9yaXR5OiA1LFxuICAgIGNvbG9yOiAnI2M5MmJjZScsXG4gICAgbWltZVR5cGVzOiBbJ2FwcGxpY2F0aW9uL2dtbCt4bWwnLCAndGV4dC94bWw7IHN1YnR5cGU9Z21sJ10sXG4gIH0sXG4gIGttbDoge1xuICAgIGV4dGVuc2lvbnM6IFsna21sJywgJ2tteiddLFxuICAgIHByaW9yaXR5OiA2LFxuICAgIGNvbG9yOiAnIzM0ODAwOScsXG4gICAgbWltZVR5cGVzOiBbXG4gICAgICAnYXBwbGljYXRpb24vdm5kLmdvb2dsZS1lYXJ0aC5rbWwreG1sJyxcbiAgICAgICdhcHBsaWNhdGlvbi92bmQuZ29vZ2xlLWVhcnRoLmtteicsXG4gICAgXSxcbiAgfSxcbiAgZ3BrZzoge1xuICAgIGV4dGVuc2lvbnM6IFsnZ3BrZycsICdnZW9wYWNrYWdlJ10sXG4gICAgcHJpb3JpdHk6IDcsXG4gICAgY29sb3I6ICcjZWE3OWJhJyxcbiAgICBtaW1lVHlwZXM6IFsnYXBwbGljYXRpb24vZ2VvcGFja2FnZStzcWxpdGUzJ10sXG4gIH0sXG4gIHppcDoge1xuICAgIGV4dGVuc2lvbnM6IFsnemlwJywgJ3Rhci5neiddLFxuICAgIHByaW9yaXR5OiA4LFxuICAgIGNvbG9yOiAnI2YyYmIzYScsXG4gICAgbWltZVR5cGVzOiBbJ2FwcGxpY2F0aW9uL3ppcCcsICdhcHBsaWNhdGlvbi94LXppcCddLFxuICB9LFxuICBwZGY6IHtcbiAgICBleHRlbnNpb25zOiBbJ3BkZiddLFxuICAgIHByaW9yaXR5OiA5LFxuICAgIGNvbG9yOiAnI2RiNTQ0YScsXG4gICAgbWltZVR5cGVzOiBbJ2FwcGxpY2F0aW9uL3BkZiddLFxuICB9LFxuICBqcGc6IHtcbiAgICBleHRlbnNpb25zOiBbJ2pwZycsICdqcGVnJywgJ2pmaWYnLCAncGpwZWcnLCAncGpwJ10sXG4gICAgcHJpb3JpdHk6IDksXG4gICAgY29sb3I6ICcjNjczYWI3JyxcbiAgICBtaW1lVHlwZXM6IFsnaW1hZ2UvanBnJ10sXG4gIH0sXG4gIHN2Zzoge1xuICAgIGV4dGVuc2lvbnM6IFsnc3ZnJ10sXG4gICAgcHJpb3JpdHk6IDEwLFxuICAgIGNvbG9yOiAnI2Q5ODI5NCcsXG4gICAgbWltZVR5cGVzOiBbJ2ltYWdlL3N2Zyt4bWwnXSxcbiAgfSxcbiAgZHhmOiB7XG4gICAgZXh0ZW5zaW9uczogWydkeGYnXSxcbiAgICBwcmlvcml0eTogMTEsXG4gICAgY29sb3I6ICcjZGU2MzBiJyxcbiAgICBtaW1lVHlwZXM6IFsnYXBwbGljYXRpb24veC1keGYnLCAnaW1hZ2UveC1keGYnXSxcbiAgfSxcbiAgaHRtbDoge1xuICAgIGV4dGVuc2lvbnM6IFsnaHRtbCcsICdodG0nXSxcbiAgICBwcmlvcml0eTogMTIsXG4gICAgY29sb3I6ICcjZjJiYjNhJyxcbiAgICBtaW1lVHlwZXM6IFsndGV4dC9odG1sJ10sXG4gIH0sXG4gIGZnYjoge1xuICAgIGV4dGVuc2lvbnM6IFsnZmdiJywgJ2ZsYXRnZW9idWYnXSxcbiAgICBwcmlvcml0eTogMTMsXG4gICAgY29sb3I6ICcjZjJiYjNhJyxcbiAgICBtaW1lVHlwZXM6IFsnYXBwbGljYXRpb24vZmxhdGdlb2J1ZiddLFxuICB9LFxuICBqc29uZmc6IHtcbiAgICBleHRlbnNpb25zOiBbJ2pzb25mZycsICdqc29uZmdjJ10sXG4gICAgcHJpb3JpdHk6IDE0LFxuICAgIGNvbG9yOiAnI2YyYmIzYScsXG4gICAgbWltZVR5cGVzOiBbXG4gICAgICAnYXBwbGljYXRpb24vdm5kLm9nYy5mZytqc29uJyxcbiAgICAgICdhcHBsaWNhdGlvbi92bmQub2djLmZnK2pzb247Y29tcGF0aWJpbGl0eT1nZW9qc29uJyxcbiAgICBdLFxuICB9LFxufSBhcyBjb25zdFxuXG5leHBvcnQgdHlwZSBGaWxlRm9ybWF0ID0ga2V5b2YgdHlwZW9mIEZPUk1BVFNcblxuZXhwb3J0IGZ1bmN0aW9uIGdldEZvcm1hdFByaW9yaXR5KGxpbmtGb3JtYXQ6IEZpbGVGb3JtYXQpOiBudW1iZXIge1xuICBmb3IgKGNvbnN0IGZvcm1hdCBpbiBGT1JNQVRTKSB7XG4gICAgZm9yIChjb25zdCBleHQgb2YgRk9STUFUU1tmb3JtYXRdLmV4dGVuc2lvbnMpIHtcbiAgICAgIGlmIChuZXcgUmVnRXhwKGAke2V4dH1gLCAnaScpLnRlc3QobGlua0Zvcm1hdCkpIHtcbiAgICAgICAgaWYgKEZPUk1BVFNbZm9ybWF0XS5wcmlvcml0eSA9PT0gMCkgcmV0dXJuIDBcbiAgICAgICAgcmV0dXJuIE9iamVjdC5rZXlzKEZPUk1BVFMpLmxlbmd0aCAtIEZPUk1BVFNbZm9ybWF0XS5wcmlvcml0eVxuICAgICAgfVxuICAgIH1cbiAgfVxuICByZXR1cm4gMFxufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0TGlua1ByaW9yaXR5KGxpbms6IERhdGFzZXREaXN0cmlidXRpb24pOiBudW1iZXIge1xuICByZXR1cm4gZ2V0Rm9ybWF0UHJpb3JpdHkoZ2V0RmlsZUZvcm1hdChsaW5rKSlcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldEZpbGVGb3JtYXRGcm9tU2VydmljZU91dHB1dChcbiAgc2VydmljZU91dHB1dDogc3RyaW5nXG4pOiBGaWxlRm9ybWF0IHwgbnVsbCB7XG4gIGZ1bmN0aW9uIGZvcm1hdE1hdGNoZXIoZm9ybWF0OiB0eXBlb2YgRk9STUFUU1tGaWxlRm9ybWF0XSk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IG91dHB1dCA9IHNlcnZpY2VPdXRwdXQudG9Mb3dlckNhc2UoKVxuICAgIHJldHVybiAoXG4gICAgICBmb3JtYXQuZXh0ZW5zaW9ucy5zb21lKChleHRlbnNpb246IHN0cmluZykgPT5cbiAgICAgICAgb3V0cHV0LmluY2x1ZGVzKGV4dGVuc2lvbilcbiAgICAgICkgfHxcbiAgICAgIGZvcm1hdC5taW1lVHlwZXMuc29tZSgobWltZVR5cGU6IHN0cmluZykgPT4gb3V0cHV0LmluY2x1ZGVzKG1pbWVUeXBlKSlcbiAgICApXG4gIH1cbiAgZm9yIChjb25zdCBmb3JtYXROYW1lIGluIEZPUk1BVFMpIHtcbiAgICBpZiAoZm9ybWF0TWF0Y2hlcihGT1JNQVRTW2Zvcm1hdE5hbWVdKSkge1xuICAgICAgcmV0dXJuIGZvcm1hdE5hbWUgYXMgRmlsZUZvcm1hdFxuICAgIH1cbiAgfVxuICByZXR1cm4gbnVsbFxufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0RmlsZUZvcm1hdChsaW5rOiBEYXRhc2V0RGlzdHJpYnV0aW9uKTogRmlsZUZvcm1hdCB7XG4gIGlmICgnbWltZVR5cGUnIGluIGxpbmspIHtcbiAgICBjb25zdCBtaW1lVHlwZUZvcm1hdCA9IG1pbWVUeXBlVG9Gb3JtYXQobGluay5taW1lVHlwZSlcbiAgICBpZiAobWltZVR5cGVGb3JtYXQgIT09IG51bGwpIHtcbiAgICAgIHJldHVybiBtaW1lVHlwZUZvcm1hdFxuICAgIH1cbiAgfVxuICBmb3IgKGNvbnN0IGZvcm1hdCBpbiBGT1JNQVRTKSB7XG4gICAgZm9yIChjb25zdCBhbGlhcyBvZiBGT1JNQVRTW2Zvcm1hdF0uZXh0ZW5zaW9ucykge1xuICAgICAgaWYgKGNoZWNrRmlsZUZvcm1hdChsaW5rLCBhbGlhcykpIHJldHVybiBmb3JtYXQgYXMgRmlsZUZvcm1hdFxuICAgICAgaWYgKGlzRm9ybWF0SW5RdWVyeVBhcmFtKGxpbmssIGFsaWFzKSkgcmV0dXJuIGZvcm1hdCBhcyBGaWxlRm9ybWF0XG4gICAgfVxuICB9XG4gIHJldHVybiBudWxsXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0Zvcm1hdEluUXVlcnlQYXJhbShcbiAgbGluazogRGF0YXNldERpc3RyaWJ1dGlvbixcbiAgYWxpYXM6IHN0cmluZ1xuKTogYm9vbGVhbiB7XG4gIGNvbnN0IHF1ZXJ5UGFyYW1zID0gbGluay51cmwuc2VhcmNoUGFyYW1zXG4gIGZvciAoY29uc3QgW2tleSwgdmFsdWVdIG9mIHF1ZXJ5UGFyYW1zLmVudHJpZXMoKSkge1xuICAgIGlmIChrZXkgPT09ICdmb3JtYXQnIHx8IGtleSA9PT0gJ2YnKSB7XG4gICAgICByZXR1cm4gdmFsdWUgPT09IGFsaWFzXG4gICAgfVxuICB9XG4gIHJldHVybiBmYWxzZVxufVxuXG5leHBvcnQgZnVuY3Rpb24gbWltZVR5cGVUb0Zvcm1hdChtaW1lVHlwZTogc3RyaW5nKTogRmlsZUZvcm1hdCB7XG4gIGZvciAoY29uc3QgZm9ybWF0IGluIEZPUk1BVFMpIHtcbiAgICBmb3IgKGNvbnN0IG10IG9mIEZPUk1BVFNbZm9ybWF0XS5taW1lVHlwZXMpIHtcbiAgICAgIGlmIChtaW1lVHlwZSA9PT0gbXQpIHJldHVybiBmb3JtYXQgYXMgRmlsZUZvcm1hdFxuICAgIH1cbiAgfVxuICByZXR1cm4gbnVsbFxufVxuXG5leHBvcnQgZnVuY3Rpb24gY2hlY2tGaWxlRm9ybWF0KFxuICBsaW5rOiBEYXRhc2V0RGlzdHJpYnV0aW9uLFxuICBmb3JtYXQ6IEZpbGVGb3JtYXRcbik6IGJvb2xlYW4ge1xuICByZXR1cm4gKFxuICAgICgnbmFtZScgaW4gbGluayAmJiBuZXcgUmVnRXhwKGBbLi9dJHtmb3JtYXR9YCwgJ2knKS50ZXN0KGxpbmsubmFtZSkpIHx8XG4gICAgKCd1cmwnIGluIGxpbmsgJiZcbiAgICAgIG5ldyBSZWdFeHAoYFsuL10ke2Zvcm1hdH1gLCAnaScpLnRlc3QobGluay51cmwudG9TdHJpbmcoKSkpXG4gIClcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldEJhZGdlQ29sb3IobGlua0Zvcm1hdDogRmlsZUZvcm1hdCk6IHN0cmluZyB7XG4gIGZvciAoY29uc3QgZm9ybWF0IGluIEZPUk1BVFMpIHtcbiAgICBmb3IgKGNvbnN0IGFsaWFzIG9mIEZPUk1BVFNbZm9ybWF0XS5leHRlbnNpb25zKSB7XG4gICAgICBpZiAobmV3IFJlZ0V4cChgJHthbGlhc31gLCAnaScpLnRlc3QobGlua0Zvcm1hdCkpXG4gICAgICAgIHJldHVybiBGT1JNQVRTW2Zvcm1hdF0uY29sb3JcbiAgICB9XG4gIH1cbiAgcmV0dXJuICd2YXIoLS1jb2xvci1ncmF5LTcwMCknIC8vIERlZmF1bHQgY29sb3IgP1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0TGlua0xhYmVsKGxpbms6IERhdGFzZXREaXN0cmlidXRpb24pOiBzdHJpbmcge1xuICBsZXQgZm9ybWF0ID0gJydcbiAgc3dpdGNoIChsaW5rLnR5cGUpIHtcbiAgICBjYXNlICdzZXJ2aWNlJzpcbiAgICAgIHtcbiAgICAgICAgc3dpdGNoIChsaW5rLmFjY2Vzc1NlcnZpY2VQcm90b2NvbCkge1xuICAgICAgICAgIGNhc2UgJ3dmcyc6XG4gICAgICAgICAgICBmb3JtYXQgPSAnV0ZTJ1xuICAgICAgICAgICAgYnJlYWtcbiAgICAgICAgICBjYXNlICd3bXMnOlxuICAgICAgICAgICAgZm9ybWF0ID0gJ1dNUydcbiAgICAgICAgICAgIGJyZWFrXG4gICAgICAgICAgY2FzZSAnd210cyc6XG4gICAgICAgICAgICBmb3JtYXQgPSAnV01UUydcbiAgICAgICAgICAgIGJyZWFrXG4gICAgICAgICAgY2FzZSAnZXNyaVJlc3QnOlxuICAgICAgICAgICAgZm9ybWF0ID0gJ1JFU1QnXG4gICAgICAgICAgICBicmVha1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBicmVha1xuICAgIGRlZmF1bHQ6XG4gICAgICBmb3JtYXQgPSBnZXRGaWxlRm9ybWF0KGxpbmspXG4gIH1cbiAgY29uc3QgbGFiZWwgPSBsaW5rLmRlc2NyaXB0aW9uIHx8IGxpbmsubmFtZVxuICByZXR1cm4gZm9ybWF0ID8gYCR7bGFiZWx9ICgke2Zvcm1hdH0pYCA6IGxhYmVsXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRNaW1lVHlwZUZvckZvcm1hdChmb3JtYXQ6IEZpbGVGb3JtYXQpOiBzdHJpbmcgfCBudWxsIHtcbiAgcmV0dXJuIGZvcm1hdCBpbiBGT1JNQVRTID8gRk9STUFUU1tmb3JtYXQudG9Mb3dlckNhc2UoKV0ubWltZVR5cGVzWzBdIDogbnVsbFxufVxuIl19
|