@provoly/dashboard 0.14.5 → 0.14.7
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/admin/admin.module.d.ts +2 -1
- package/admin/components/admin-classes/admin-classes-view/admin-attributes-form/admin-attributes-form.component.d.ts +5 -2
- package/admin/components/admin-fields/admin-fields-form/admin-fields-form.component.d.ts +7 -3
- package/admin/i18n/en.translations.d.ts +15 -0
- package/admin/i18n/fr.translations.d.ts +15 -0
- package/components/metadata-editor/metadata-editor.component.d.ts +3 -1
- package/esm2022/admin/admin.module.mjs +8 -4
- package/esm2022/admin/components/admin-classes/admin-classes-form/admin-classes-form.component.mjs +3 -3
- package/esm2022/admin/components/admin-classes/admin-classes-view/admin-attributes-form/admin-attributes-form.component.mjs +19 -14
- package/esm2022/admin/components/admin-dataset/admin-select-dataset/admin-select-dataset.component.mjs +1 -1
- package/esm2022/admin/components/admin-dataset/shared/admin-form-dataset/admin-form-dataset.component.mjs +3 -5
- package/esm2022/admin/components/admin-fields/admin-fields-form/admin-fields-form.component.mjs +23 -12
- package/esm2022/admin/components/admin-user/admin-user-select/admin-user-select.component.mjs +1 -1
- package/esm2022/admin/i18n/en.translations.mjs +17 -2
- package/esm2022/admin/i18n/fr.translations.mjs +19 -4
- package/esm2022/components/metadata-editor/metadata-editor.component.mjs +30 -9
- package/esm2022/dataset/components/dataset-detail/dataset-detail.component.mjs +4 -3
- package/esm2022/import/components/import.component.mjs +12 -5
- package/esm2022/import/i18n/en.translations.mjs +3 -2
- package/esm2022/import/i18n/fr.translations.mjs +3 -2
- package/esm2022/import/import.module.mjs +7 -4
- package/esm2022/import/store/import.actions.mjs +1 -1
- package/esm2022/import/store/import.effects.mjs +2 -2
- package/esm2022/import/store/import.service.mjs +3 -2
- package/esm2022/lib/core/components/translate-id/translate-id.pipe.mjs +9 -9
- package/esm2022/lib/core/i18n/en.translations.mjs +4 -2
- package/esm2022/lib/core/i18n/fr.translations.mjs +4 -2
- package/esm2022/lib/core/model/admin-api.model.mjs +66 -14
- package/esm2022/lib/core/model/widget-map-manifest.interface.mjs +1 -1
- package/esm2022/lib/core/store/field/field.interface.mjs +10 -1
- package/esm2022/lib/core/symbol/symbol.service.mjs +7 -3
- package/esm2022/lib/core/toolbox/toolbox-manifest.service.mjs +17 -1
- package/esm2022/lib/core/toolbox/toolbox-menu.service.mjs +2 -1
- package/esm2022/lib/dashboard/components/dashboard.component.mjs +5 -5
- package/esm2022/lib/dashboard/components/widgets/header/widget-header.component.mjs +9 -3
- package/esm2022/lib/dashboard/public-api.mjs +2 -2
- package/esm2022/lib/dashboard/store/dashboard.actions.mjs +6 -2
- package/esm2022/lib/dashboard/store/dashboard.effects.mjs +20 -13
- package/esm2022/lib/dashboard/store/dashboard.reducers.mjs +11 -2
- package/esm2022/lib/dashboard/store/dashboard.selectors.mjs +4 -2
- package/esm2022/lib/dashboard/store/manifest.service.mjs +11 -1
- package/esm2022/lib/dashboard/store/wms.service.mjs +54 -0
- package/esm2022/pipeline/components/pipeline-list/pipeline-list.component.mjs +25 -13
- package/esm2022/pipeline/pipeline.module.mjs +8 -4
- package/esm2022/presentation/components/add-edit-presentation/add-edit-presentation.component.mjs +19 -3
- package/esm2022/presentation/presentation.module.mjs +8 -4
- package/esm2022/presentation/style/css.component.mjs +2 -2
- package/esm2022/supervision/store/supervision.reducer.mjs +2 -7
- package/esm2022/widgets/widget-map/component/widget-map-layer.service.mjs +35 -3
- package/esm2022/widgets/widget-map/component/widget-map.component.mjs +99 -39
- package/esm2022/widgets/widget-map/i18n/en.translations.mjs +3 -2
- package/esm2022/widgets/widget-map/i18n/fr.translations.mjs +3 -2
- package/esm2022/widgets/widget-map/pipe/widget-map-legend-url.pipe.mjs +3 -4
- package/esm2022/widgets/widget-map/public-api.mjs +1 -2
- package/esm2022/widgets/widget-map/utils/widget-map.utils.mjs +14 -8
- package/esm2022/widgets/widget-map/utils/xml-utils.class.mjs +20 -1
- package/fesm2022/provoly-dashboard-admin.mjs +81 -33
- package/fesm2022/provoly-dashboard-admin.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-components-metadata-editor.mjs +29 -8
- package/fesm2022/provoly-dashboard-components-metadata-editor.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-dataset.mjs +3 -2
- package/fesm2022/provoly-dashboard-dataset.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-import.mjs +23 -10
- package/fesm2022/provoly-dashboard-import.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-pipeline.mjs +27 -11
- package/fesm2022/provoly-dashboard-pipeline.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-presentation.mjs +26 -7
- package/fesm2022/provoly-dashboard-presentation.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-supervision.mjs +1 -6
- package/fesm2022/provoly-dashboard-supervision.mjs.map +1 -1
- package/fesm2022/provoly-dashboard-widgets-widget-map.mjs +380 -323
- package/fesm2022/provoly-dashboard-widgets-widget-map.mjs.map +1 -1
- package/fesm2022/provoly-dashboard.mjs +266 -133
- package/fesm2022/provoly-dashboard.mjs.map +1 -1
- package/import/components/import.component.d.ts +1 -0
- package/import/i18n/en.translations.d.ts +1 -0
- package/import/i18n/fr.translations.d.ts +1 -0
- package/import/import.module.d.ts +2 -1
- package/import/store/import.actions.d.ts +2 -0
- package/import/store/import.service.d.ts +1 -1
- package/lib/core/components/translate-id/translate-id.pipe.d.ts +1 -1
- package/lib/core/i18n/en.translations.d.ts +2 -0
- package/lib/core/i18n/fr.translations.d.ts +2 -0
- package/lib/core/model/admin-api.model.d.ts +1 -0
- package/lib/core/model/widget-map-manifest.interface.d.ts +12 -1
- package/lib/core/store/field/field.interface.d.ts +1 -0
- package/lib/core/symbol/symbol.service.d.ts +1 -1
- package/lib/dashboard/components/dashboard.component.d.ts +1 -1
- package/lib/dashboard/components/widgets/header/widget-header.component.d.ts +3 -1
- package/lib/dashboard/public-api.d.ts +1 -1
- package/lib/dashboard/store/dashboard.actions.d.ts +31 -0
- package/lib/dashboard/store/dashboard.effects.d.ts +9 -3
- package/lib/dashboard/store/dashboard.reducers.d.ts +4 -0
- package/lib/dashboard/store/dashboard.selectors.d.ts +5 -0
- package/lib/dashboard/store/manifest.service.d.ts +2 -0
- package/{widgets/widget-map/component → lib/dashboard/store}/wms.service.d.ts +4 -4
- package/package.json +30 -30
- package/pipeline/components/pipeline-list/pipeline-list.component.d.ts +1 -0
- package/pipeline/pipeline.module.d.ts +2 -1
- package/presentation/components/add-edit-presentation/add-edit-presentation.component.d.ts +3 -0
- package/presentation/presentation.module.d.ts +2 -1
- package/presentation/style/_o-pry-new-presentation.scss +18 -5
- package/schematics/migration.json +5 -0
- package/schematics/ng-update/utils/replaceStrings.function.d.ts +7 -0
- package/schematics/ng-update/utils/replaceStrings.function.js +15 -0
- package/schematics/ng-update/utils/replaceStrings.function.js.map +1 -0
- package/schematics/ng-update/version-0-13/index.spec.js +11 -0
- package/schematics/ng-update/version-0-13/index.spec.js.map +1 -1
- package/schematics/ng-update/version-0-14/index.d.ts +2 -0
- package/schematics/ng-update/version-0-14/index.js +49 -0
- package/schematics/ng-update/version-0-14/index.js.map +1 -0
- package/schematics/ng-update/version-0-14/index.spec.d.ts +1 -0
- package/schematics/ng-update/version-0-14/index.spec.js +51 -0
- package/schematics/ng-update/version-0-14/index.spec.js.map +1 -0
- package/styles/components/_m-context-menu.scss +4 -0
- package/styles/components/_o-pry-admin-classes-customize.scss +48 -0
- package/widgets/widget-map/component/widget-map-layer.service.d.ts +6 -1
- package/widgets/widget-map/component/widget-map.component.d.ts +14 -9
- package/widgets/widget-map/i18n/en.translations.d.ts +1 -0
- package/widgets/widget-map/i18n/fr.translations.d.ts +1 -0
- package/widgets/widget-map/pipe/widget-map-legend-url.pipe.d.ts +4 -3
- package/widgets/widget-map/public-api.d.ts +0 -1
- package/widgets/widget-map/utils/widget-map.utils.d.ts +2 -5
- package/widgets/widget-map/utils/xml-utils.class.d.ts +1 -0
- package/esm2022/lib/dashboard/store/geocoding.service.mjs +0 -44
- package/esm2022/widgets/widget-map/component/wms.service.mjs +0 -67
- package/lib/dashboard/store/geocoding.service.d.ts +0 -56
|
@@ -73,9 +73,10 @@ export const enTranslations = {
|
|
|
73
73
|
legendNotProvided: 'Legend not provided by server',
|
|
74
74
|
selectLayers: 'Select layers',
|
|
75
75
|
legends: 'Display legend',
|
|
76
|
-
singleLayer: 'Single layer mode'
|
|
76
|
+
singleLayer: 'Single layer mode',
|
|
77
|
+
autoLayer: 'Automatic datasource layers configuration'
|
|
77
78
|
}
|
|
78
79
|
}
|
|
79
80
|
}
|
|
80
81
|
};
|
|
81
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
82
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW4udHJhbnNsYXRpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9kYXNoYm9hcmQvd2lkZ2V0cy93aWRnZXQtbWFwL2kxOG4vZW4udHJhbnNsYXRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRztJQUM1QixNQUFNLEVBQUU7UUFDTixNQUFNLEVBQUU7WUFDTixHQUFHLEVBQUU7Z0JBQ0gsV0FBVyxFQUFFLGVBQWU7Z0JBQzVCLFlBQVksRUFBRSxpQkFBaUI7Z0JBQy9CLEtBQUssRUFBRSxXQUFXO2dCQUNsQixPQUFPLEVBQUUsV0FBVztnQkFDcEIsWUFBWSxFQUFFLGdCQUFnQjtnQkFDOUIsUUFBUSxFQUFFLEtBQUs7Z0JBQ2YsR0FBRyxFQUFFLFVBQVU7Z0JBQ2YsUUFBUSxFQUFFLFdBQVc7Z0JBQ3JCLEtBQUssRUFBRSxtQkFBbUI7Z0JBQzFCLFlBQVksRUFBRSxlQUFlO2dCQUM3QixVQUFVLEVBQUUsYUFBYTtnQkFDekIsU0FBUyxFQUFFO29CQUNULEtBQUssRUFBRSxNQUFNO29CQUNiLE9BQU8sRUFBRSxTQUFTO29CQUNsQixNQUFNLEVBQUUsYUFBYTtvQkFDckIsUUFBUSxFQUFFLE9BQU87b0JBQ2pCLE1BQU0sRUFBRSxhQUFhO29CQUNyQixPQUFPLEVBQUUsWUFBWTtvQkFDckIsR0FBRyxFQUFFLFNBQVM7b0JBQ2QsSUFBSSxFQUFFLFVBQVU7b0JBQ2hCLFlBQVksRUFBRSxlQUFlO29CQUM3QixVQUFVLEVBQUUsYUFBYTtvQkFDekIsVUFBVSxFQUFFLGFBQWE7b0JBQ3pCLEtBQUssRUFBRSxRQUFRO29CQUNmLElBQUksRUFBRSxPQUFPO29CQUNiLFNBQVMsRUFBRSxzQkFBc0I7b0JBQ2pDLFlBQVksRUFBRSxhQUFhO29CQUMzQixlQUFlLEVBQUUsZ0JBQWdCO2lCQUNsQztnQkFDRCxPQUFPLEVBQUU7b0JBQ1AsS0FBSyxFQUFFLE9BQU87b0JBQ2QsS0FBSyxFQUFFLE9BQU87b0JBQ2QsS0FBSyxFQUFFLGtCQUFrQjtpQkFDMUI7Z0JBQ0QsSUFBSSxFQUFFLG9CQUFvQjtnQkFDMUIsWUFBWSxFQUFFLG1CQUFtQjtnQkFDakMsVUFBVSxFQUFFLG9CQUFvQjtnQkFDaEMsR0FBRyxFQUFFO29CQUNILEdBQUcsRUFBRSxhQUFhO29CQUNsQixVQUFVLEVBQUUsaUJBQWlCO29CQUM3QixVQUFVLEVBQUUsT0FBTztvQkFDbkIsS0FBSyxFQUFFLE9BQU87b0JBQ2QsU0FBUyxFQUFFLFdBQVc7aUJBQ3ZCO2dCQUNELFdBQVcsRUFBRSxjQUFjO2dCQUMzQixhQUFhLEVBQUUsb0NBQW9DO2dCQUNuRCxpQkFBaUIsRUFBRTtvQkFDakIsSUFBSSxFQUFFLG1CQUFtQjtvQkFDekIsR0FBRyxFQUFFLG1CQUFtQjtvQkFDeEIsR0FBRyxFQUFFLG9CQUFvQjtpQkFDMUI7Z0JBQ0Qsa0JBQWtCLEVBQUUsb0JBQW9CO2dCQUN4QyxPQUFPLEVBQUUsNEJBQTRCO2dCQUNyQyxTQUFTLEVBQUUsZUFBZTtnQkFDMUIsU0FBUyxFQUFFLFdBQVc7Z0JBQ3RCLGVBQWUsRUFBRSxrQkFBa0I7Z0JBQ25DLE9BQU8sRUFBRSxTQUFTO2dCQUNsQixPQUFPLEVBQUUsU0FBUztnQkFDbEIsYUFBYSxFQUFFLGFBQWE7Z0JBQzVCLE1BQU0sRUFBRSxRQUFRO2dCQUNoQixRQUFRLEVBQUUsVUFBVTtnQkFDcEIsSUFBSSxFQUFFLFdBQVc7Z0JBQ2pCLEtBQUssRUFBRSxpQkFBaUI7Z0JBQ3hCLFNBQVMsRUFBRSxxQkFBcUI7Z0JBQ2hDLEtBQUssRUFBRSxpQkFBaUI7Z0JBQ3hCLElBQUksRUFBRSxnQkFBZ0I7Z0JBQ3RCLE1BQU0sRUFBRSxZQUFZO2dCQUNwQixNQUFNLEVBQUUsMkJBQTJCO2dCQUNuQyxpQkFBaUIsRUFBRSwrQkFBK0I7Z0JBQ2xELFlBQVksRUFBRSxlQUFlO2dCQUM3QixPQUFPLEVBQUUsZ0JBQWdCO2dCQUN6QixXQUFXLEVBQUUsbUJBQW1CO2dCQUNoQyxTQUFTLEVBQUUsMkNBQTJDO2FBQ3ZEO1NBQ0Y7S0FDRjtDQUNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgZW5UcmFuc2xhdGlvbnMgPSB7XG4gICdAcHJ5Jzoge1xuICAgIHdpZGdldDoge1xuICAgICAgbWFwOiB7XG4gICAgICAgIGF0dHJpYnV0aW9uOiAnTGF5ZXIgY3JlZGl0cycsXG4gICAgICAgIGF0dHJpYnV0aW9uczogJ0Rpc3BsYXkgY3JlZGl0cycsXG4gICAgICAgIHN0eWxlOiAnTWFwIHN0eWxlJyxcbiAgICAgICAgbm9TdHlsZTogJ0VtcHR5IG1hcCcsXG4gICAgICAgIHN0eWxlRnJvbVVybDogJ1N0eWxlIGZyb20gVVJMJyxcbiAgICAgICAgc3R5bGVVcmw6ICdVUkwnLFxuICAgICAgICBmaXQ6ICdGaXQgZGF0YScsXG4gICAgICAgIGFkZExheWVyOiAnQWRkIGxheWVyJyxcbiAgICAgICAgbGF5ZXI6ICdMYXllciBuwrB7e2luZGV4fX0nLFxuICAgICAgICBsYXllck9wdGlvbnM6ICdMYXllciBvcHRpb25zJyxcbiAgICAgICAgbGF5ZXJUaXRsZTogJ0xheWVyIExhYmVsJyxcbiAgICAgICAgbGF5ZXJUeXBlOiB7XG4gICAgICAgICAgdGl0bGU6ICdUeXBlJyxcbiAgICAgICAgICBoZWF0bWFwOiAnSGVhdG1hcCcsXG4gICAgICAgICAgYnViYmxlOiAnQnViYmxlcyBtYXAnLFxuICAgICAgICAgIHJlbGF0aW9uOiAnTGlua3MnLFxuICAgICAgICAgIG1hcmtlcjogJ01hcmtlcnMgbWFwJyxcbiAgICAgICAgICBwb2x5Z29uOiAnU2hhcGVzIG1hcCcsXG4gICAgICAgICAgd21zOiAnV01TIEFQSScsXG4gICAgICAgICAgd210czogJ1dNVFMgQVBJJyxcbiAgICAgICAgICBmZWF0dXJlbGF5ZXI6ICdGZWF0dXJlIGxheWVyJyxcbiAgICAgICAgICB2ZWN0b3J0aWxlOiAnVmVjdG9yIHRpbGUnLFxuICAgICAgICAgIHJhc3RlcnRpbGU6ICdSYXN0ZXIgdGlsZScsXG4gICAgICAgICAgcG9pbnQ6ICdQb2ludHMnLFxuICAgICAgICAgIGxpbmU6ICdMaW5lcycsXG4gICAgICAgICAgZ2Vvc2VydmVyOiAnR2Vvc2VydmVyICh7e25hbWV9fSknLFxuICAgICAgICAgICdtdWx0aS1saW5lJzogJ011bHRpLWxpbmVzJyxcbiAgICAgICAgICAnbXVsdGktcG9seWdvbic6ICdNdWx0aS1wb2x5Z29ucydcbiAgICAgICAgfSxcbiAgICAgICAgdG9vbHRpcDoge1xuICAgICAgICAgIGhvdmVyOiAnSG92ZXInLFxuICAgICAgICAgIGNsaWNrOiAnQ2xpY2snLFxuICAgICAgICAgIHRpdGxlOiAnT3BlbmluZyB0b29sdGlwcydcbiAgICAgICAgfSxcbiAgICAgICAgdGlsZTogJ1RpbGUgbGF5ZXIgb3B0aW9ucycsXG4gICAgICAgIGxvY2F0aW9uQXR0cjogJ1BsYWNlbWVudCBvcHRpb25zJyxcbiAgICAgICAgY2x1c3RlcmluZzogJ0NsdXN0ZXJpbmcgb3B0aW9ucycsXG4gICAgICAgIHdtczoge1xuICAgICAgICAgIHVybDogJ1NlcnZpY2UgVXJsJyxcbiAgICAgICAgICBwYXJhbUxheWVyOiAnRGF0YSBpZGVudGlmaWVyJyxcbiAgICAgICAgICBwYXJhbVRpbGVkOiAnVGlsZWQnLFxuICAgICAgICAgIHN0eWxlOiAnU3R5bGUnLFxuICAgICAgICAgIG1hdHJpeFNldDogJ21hdHJpeFNldCdcbiAgICAgICAgfSxcbiAgICAgICAgZGVsZXRlTGF5ZXI6ICdEZWxldGUgbGF5ZXInLFxuICAgICAgICBsb2NhdGlvbkFycmF5OiAnTGF0IGFuZCBMbmcgaW4gc2VwYXJhdGUgcHJvcGVydGllcycsXG4gICAgICAgIGxvY2F0aW9uQXR0cmlidXRlOiB7XG4gICAgICAgICAgYm90aDogJ0xvY2F0aW9uIHByb3BlcnR5JyxcbiAgICAgICAgICBsYXQ6ICdMYXRpdHVkZSBwcm9wZXJ0eScsXG4gICAgICAgICAgbG5nOiAnTG9uZ2l0dWRlIHByb3BlcnR5J1xuICAgICAgICB9LFxuICAgICAgICBpbnRlbnNpdHlBdHRyaWJ1dGU6ICdJbnRlbnNpdHkgcHJvcGVydHknLFxuICAgICAgICBjbGFzc2VzOiAnQ2xhc3NlcyBkaXNwbGF5ZWQgaW4gbGF5ZXInLFxuICAgICAgICByZWxhdGlvbnM6ICdEaXNwbGF5IGxpbmtzJyxcbiAgICAgICAgY2x1c3RlcmVkOiAnQ2x1c3RlcmVkJyxcbiAgICAgICAgY2x1c3RlckRpc3RhbmNlOiAnQ2x1c3RlciBkaXN0YW5jZScsXG4gICAgICAgIG9wYWNpdHk6ICdPcGFjaXR5JyxcbiAgICAgICAgYWRkcmVzczogJ0FkZHJlc3MnLFxuICAgICAgICBhZGRyZXNzQ29vcmRzOiAnQ29vcmRpbmF0ZXMnLFxuICAgICAgICBhY3RpdmU6ICdBY3RpdmUnLFxuICAgICAgICBpbmFjdGl2ZTogJ0luYWN0aXZlJyxcbiAgICAgICAgbW92ZTogJ01vdmUgbW9kZScsXG4gICAgICAgIGxhc3NvOiAnTGFzc28gc2VsZWN0aW9uJyxcbiAgICAgICAgcmVjdGFuZ2xlOiAnUmVjdGFuZ2xlIHNlbGVjdGlvbicsXG4gICAgICAgIGNsaWNrOiAnQ2xpY2sgc2VsZWN0aW9uJyxcbiAgICAgICAgem9vbTogJ1pvb20gc2VsZWN0aW9uJyxcbiAgICAgICAgZXhwb3J0OiAnRXhwb3J0IG1hcCcsXG4gICAgICAgIGxlZ2VuZDogJ0xlZ2VuZCBvZiBsYXllciB7e2xheWVyfX0nLFxuICAgICAgICBsZWdlbmROb3RQcm92aWRlZDogJ0xlZ2VuZCBub3QgcHJvdmlkZWQgYnkgc2VydmVyJyxcbiAgICAgICAgc2VsZWN0TGF5ZXJzOiAnU2VsZWN0IGxheWVycycsXG4gICAgICAgIGxlZ2VuZHM6ICdEaXNwbGF5IGxlZ2VuZCcsXG4gICAgICAgIHNpbmdsZUxheWVyOiAnU2luZ2xlIGxheWVyIG1vZGUnLFxuICAgICAgICBhdXRvTGF5ZXI6ICdBdXRvbWF0aWMgZGF0YXNvdXJjZSBsYXllcnMgY29uZmlndXJhdGlvbidcbiAgICAgIH1cbiAgICB9XG4gIH1cbn07XG4iXX0=
|
|
@@ -73,9 +73,10 @@ export const frTranslations = {
|
|
|
73
73
|
legendNotProvided: 'Légende non fournie par le serveur',
|
|
74
74
|
selectLayers: 'Sélectionner les couches',
|
|
75
75
|
legends: 'Afficher la légende',
|
|
76
|
-
singleLayer: 'Mode mono-couche'
|
|
76
|
+
singleLayer: 'Mode mono-couche',
|
|
77
|
+
autoLayer: 'Configuration automatique des sources de données'
|
|
77
78
|
}
|
|
78
79
|
}
|
|
79
80
|
}
|
|
80
81
|
};
|
|
81
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
82
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnIudHJhbnNsYXRpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9kYXNoYm9hcmQvd2lkZ2V0cy93aWRnZXQtbWFwL2kxOG4vZnIudHJhbnNsYXRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRztJQUM1QixNQUFNLEVBQUU7UUFDTixNQUFNLEVBQUU7WUFDTixHQUFHLEVBQUU7Z0JBQ0gsV0FBVyxFQUFFLHlCQUF5QjtnQkFDdEMsWUFBWSxFQUFFLHNCQUFzQjtnQkFDcEMsS0FBSyxFQUFFLHdCQUF3QjtnQkFDL0IsT0FBTyxFQUFFLHFCQUFxQjtnQkFDOUIsWUFBWSxFQUFFLDhCQUE4QjtnQkFDNUMsUUFBUSxFQUFFLEtBQUs7Z0JBQ2YsR0FBRyxFQUFFLCtCQUErQjtnQkFDcEMsUUFBUSxFQUFFLG9CQUFvQjtnQkFDOUIsS0FBSyxFQUFFLG9CQUFvQjtnQkFDM0IsWUFBWSxFQUFFLHNCQUFzQjtnQkFDcEMsVUFBVSxFQUFFLHNCQUFzQjtnQkFDbEMsU0FBUyxFQUFFO29CQUNULEtBQUssRUFBRSxNQUFNO29CQUNiLE9BQU8sRUFBRSxTQUFTO29CQUNsQixRQUFRLEVBQUUsV0FBVztvQkFDckIsTUFBTSxFQUFFLFFBQVE7b0JBQ2hCLE1BQU0sRUFBRSxXQUFXO29CQUNuQixPQUFPLEVBQUUsUUFBUTtvQkFDakIsR0FBRyxFQUFFLGFBQWE7b0JBQ2xCLElBQUksRUFBRSxjQUFjO29CQUNwQixZQUFZLEVBQUUsZUFBZTtvQkFDN0IsVUFBVSxFQUFFLGFBQWE7b0JBQ3pCLFVBQVUsRUFBRSxhQUFhO29CQUN6QixLQUFLLEVBQUUsUUFBUTtvQkFDZixJQUFJLEVBQUUsUUFBUTtvQkFDZCxTQUFTLEVBQUUsc0JBQXNCO29CQUNqQyxZQUFZLEVBQUUsY0FBYztvQkFDNUIsZUFBZSxFQUFFLGdCQUFnQjtpQkFDbEM7Z0JBQ0QsT0FBTyxFQUFFO29CQUNQLEtBQUssRUFBRSxRQUFRO29CQUNmLEtBQUssRUFBRSxNQUFNO29CQUNiLEtBQUssRUFBRSx3QkFBd0I7aUJBQ2hDO2dCQUNELElBQUksRUFBRSx3QkFBd0I7Z0JBQzlCLFlBQVksRUFBRSwyQkFBMkI7Z0JBQ3pDLFVBQVUsRUFBRSx5QkFBeUI7Z0JBQ3JDLEdBQUcsRUFBRTtvQkFDSCxHQUFHLEVBQUUsZ0JBQWdCO29CQUNyQixVQUFVLEVBQUUseUJBQXlCO29CQUNyQyxVQUFVLEVBQUUsc0JBQXNCO29CQUNsQyxLQUFLLEVBQUUsT0FBTztvQkFDZCxTQUFTLEVBQUUsV0FBVztpQkFDdkI7Z0JBQ0QsV0FBVyxFQUFFLHFCQUFxQjtnQkFDbEMsYUFBYSxFQUFFLGdDQUFnQztnQkFDL0MsaUJBQWlCLEVBQUU7b0JBQ2pCLElBQUksRUFBRSwyQkFBMkI7b0JBQ2pDLEdBQUcsRUFBRSwwQkFBMEI7b0JBQy9CLEdBQUcsRUFBRSwyQkFBMkI7aUJBQ2pDO2dCQUNELGtCQUFrQixFQUFFLDBCQUEwQjtnQkFDOUMsT0FBTyxFQUFFLHFDQUFxQztnQkFDOUMsU0FBUyxFQUFFLHdCQUF3QjtnQkFDbkMsU0FBUyxFQUFFLGNBQWM7Z0JBQ3pCLGVBQWUsRUFBRSwwQkFBMEI7Z0JBQzNDLE9BQU8sRUFBRSxTQUFTO2dCQUNsQixPQUFPLEVBQUUsU0FBUztnQkFDbEIsYUFBYSxFQUFFLGFBQWE7Z0JBQzVCLE1BQU0sRUFBRSxRQUFRO2dCQUNoQixRQUFRLEVBQUUsVUFBVTtnQkFDcEIsSUFBSSxFQUFFLGtCQUFrQjtnQkFDeEIsS0FBSyxFQUFFLHFCQUFxQjtnQkFDNUIsU0FBUyxFQUFFLHlCQUF5QjtnQkFDcEMsS0FBSyxFQUFFLHVCQUF1QjtnQkFDOUIsSUFBSSxFQUFFLG9CQUFvQjtnQkFDMUIsTUFBTSxFQUFFLG1CQUFtQjtnQkFDM0IsTUFBTSxFQUFFLGdDQUFnQztnQkFDeEMsaUJBQWlCLEVBQUUsb0NBQW9DO2dCQUN2RCxZQUFZLEVBQUUsMEJBQTBCO2dCQUN4QyxPQUFPLEVBQUUscUJBQXFCO2dCQUM5QixXQUFXLEVBQUUsa0JBQWtCO2dCQUMvQixTQUFTLEVBQUUsa0RBQWtEO2FBQzlEO1NBQ0Y7S0FDRjtDQUNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgZnJUcmFuc2xhdGlvbnMgPSB7XG4gICdAcHJ5Jzoge1xuICAgIHdpZGdldDoge1xuICAgICAgbWFwOiB7XG4gICAgICAgIGF0dHJpYnV0aW9uOiAnQ3LDqWRpdHMgZGUgY2V0dGUgY291Y2hlJyxcbiAgICAgICAgYXR0cmlidXRpb25zOiAnQWZmaWNoZXIgbGVzIGNyw6lkaXRzJyxcbiAgICAgICAgc3R5bGU6ICdTdHlsZSBkdSBmb25kIGRlIGNhcnRlJyxcbiAgICAgICAgbm9TdHlsZTogJ0F1Y3VuIGZvbmQgZGUgY2FydGUnLFxuICAgICAgICBzdHlsZUZyb21Vcmw6ICdTdHlsZSBkZXB1aXMgdW5lIFVSTCBhYnNvbHVlJyxcbiAgICAgICAgc3R5bGVVcmw6ICdVUkwnLFxuICAgICAgICBmaXQ6ICdBZGFwdGVyIGxhIHRhaWxsZSBhdXggZG9ubsOpZXMnLFxuICAgICAgICBhZGRMYXllcjogJ0Fqb3V0ZXIgdW5lIGNvdWNoZScsXG4gICAgICAgIGxheWVyOiAnQ291Y2hlIG7CsHt7aW5kZXh9fScsXG4gICAgICAgIGxheWVyT3B0aW9uczogJ09wdGlvbnMgZGUgbGEgY291Y2hlJyxcbiAgICAgICAgbGF5ZXJUaXRsZTogJ0xpYmVsbMOpIGRlIGxhIGNvdWNoZScsXG4gICAgICAgIGxheWVyVHlwZToge1xuICAgICAgICAgIHRpdGxlOiAnVHlwZScsXG4gICAgICAgICAgaGVhdG1hcDogJ0NoYWxldXInLFxuICAgICAgICAgIHJlbGF0aW9uOiAnUmVsYXRpb25zJyxcbiAgICAgICAgICBidWJibGU6ICdCdWxsZXMnLFxuICAgICAgICAgIG1hcmtlcjogJ01hcnF1ZXVycycsXG4gICAgICAgICAgcG9seWdvbjogJ0Zvcm1lcycsXG4gICAgICAgICAgd21zOiAnU2VydmljZSBXTVMnLFxuICAgICAgICAgIHdtdHM6ICdTZXJ2aWNlIFdNVFMnLFxuICAgICAgICAgIGZlYXR1cmVsYXllcjogJ0ZlYXR1cmUgbGF5ZXInLFxuICAgICAgICAgIHZlY3RvcnRpbGU6ICdWZWN0b3IgdGlsZScsXG4gICAgICAgICAgcmFzdGVydGlsZTogJ1Jhc3RlciB0aWxlJyxcbiAgICAgICAgICBwb2ludDogJ1BvaW50cycsXG4gICAgICAgICAgbGluZTogJ0xpZ25lcycsXG4gICAgICAgICAgZ2Vvc2VydmVyOiAnR2Vvc2VydmVyICh7e25hbWV9fSknLFxuICAgICAgICAgICdtdWx0aS1saW5lJzogJ011bHRpLWxpZ25lcycsXG4gICAgICAgICAgJ211bHRpLXBvbHlnb24nOiAnTXVsdGktcG9seWdvbmUnXG4gICAgICAgIH0sXG4gICAgICAgIHRvb2x0aXA6IHtcbiAgICAgICAgICBob3ZlcjogJ1N1cnZvbCcsXG4gICAgICAgICAgY2xpY2s6ICdDbGljJyxcbiAgICAgICAgICB0aXRsZTogJ091dmVydHVyZSBkZXMgdG9vbHRpcHMnXG4gICAgICAgIH0sXG4gICAgICAgIHRpbGU6ICdPcHRpb24gZGUgY291Y2hlIHR1aWxlJyxcbiAgICAgICAgbG9jYXRpb25BdHRyOiAnT3B0aW9ucyBkZSBwb3NpdGlvbm5lbWVudCcsXG4gICAgICAgIGNsdXN0ZXJpbmc6ICdPcHRpb25zIGRlIHJlZ3JvdXBlbWVudCcsXG4gICAgICAgIHdtczoge1xuICAgICAgICAgIHVybDogJ1VybCBkdSBzZXJ2aWNlJyxcbiAgICAgICAgICBwYXJhbUxheWVyOiAnSWRlbnRpZmlhbnQgZGUgZG9ubm7DqWVzJyxcbiAgICAgICAgICBwYXJhbVRpbGVkOiAnU291cyBmb3JtZSBkZSB0dWlsZXMnLFxuICAgICAgICAgIHN0eWxlOiAnU3R5bGUnLFxuICAgICAgICAgIG1hdHJpeFNldDogJ21hdHJpeFNldCdcbiAgICAgICAgfSxcbiAgICAgICAgZGVsZXRlTGF5ZXI6ICdTdXBwcmltZXIgbGEgY291Y2hlJyxcbiAgICAgICAgbG9jYXRpb25BcnJheTogJ0xhdGl0dWRlIGV0IExvbmdpdHVkZSBzw6lwYXLDqWVzJyxcbiAgICAgICAgbG9jYXRpb25BdHRyaWJ1dGU6IHtcbiAgICAgICAgICBib3RoOiAnUHJvcHJpw6l0w6kgZGVzIGNvb3Jkb25uw6llcycsXG4gICAgICAgICAgbGF0OiAnUHJvcHJpw6l0w6kgZGUgbGEgbGF0aXR1ZGUnLFxuICAgICAgICAgIGxuZzogJ1Byb3ByacOpdMOpIGRlIGxhIGxvbmdpdHVkZSdcbiAgICAgICAgfSxcbiAgICAgICAgaW50ZW5zaXR5QXR0cmlidXRlOiBcIlByb3ByacOpdMOpIGRlIGwnaW50ZW5zaXTDqVwiLFxuICAgICAgICBjbGFzc2VzOiAnQ2xhc3NlcyBhZmZpY2jDqWVzIGRhbnMgY2V0dGUgY291Y2hlJyxcbiAgICAgICAgcmVsYXRpb25zOiAnQWZmaWNoZXIgbGVzIHJlbGF0aW9ucycsXG4gICAgICAgIGNsdXN0ZXJlZDogJ1JlZ3JvdXBlbWVudCcsXG4gICAgICAgIGNsdXN0ZXJEaXN0YW5jZTogJ0Rpc3RhbmNlIGRlIHJlZ3JvdXBlbWVudCcsXG4gICAgICAgIG9wYWNpdHk6ICdPcGFjaXTDqScsXG4gICAgICAgIGFkZHJlc3M6ICdBZHJlc3NlJyxcbiAgICAgICAgYWRkcmVzc0Nvb3JkczogJ0Nvb3Jkb25uw6llcycsXG4gICAgICAgIGFjdGl2ZTogJ0FjdGl2ZScsXG4gICAgICAgIGluYWN0aXZlOiAnSW5hY3RpdmUnLFxuICAgICAgICBtb3ZlOiAnTW9kZSBkw6lwbGFjZW1lbnQnLFxuICAgICAgICBsYXNzbzogJ1PDqWxlY3Rpb24gcGFyIGxhc3NvJyxcbiAgICAgICAgcmVjdGFuZ2xlOiAnU8OpbGVjdGlvbiBwYXIgcmVjdGFuZ2xlJyxcbiAgICAgICAgY2xpY2s6ICdTw6lsZWN0aW9ubmVyIHBhciBjbGljJyxcbiAgICAgICAgem9vbTogJ1pvb20gcGFyIHJlY3RhbmdsZScsXG4gICAgICAgIGV4cG9ydDogJ0V4cG9ydGVyIGxhIGNhcnRlJyxcbiAgICAgICAgbGVnZW5kOiAnTMOpZ2VuZGUgZGUgbGEgY291Y2hlIHt7bGF5ZXJ9fScsXG4gICAgICAgIGxlZ2VuZE5vdFByb3ZpZGVkOiAnTMOpZ2VuZGUgbm9uIGZvdXJuaWUgcGFyIGxlIHNlcnZldXInLFxuICAgICAgICBzZWxlY3RMYXllcnM6ICdTw6lsZWN0aW9ubmVyIGxlcyBjb3VjaGVzJyxcbiAgICAgICAgbGVnZW5kczogJ0FmZmljaGVyIGxhIGzDqWdlbmRlJyxcbiAgICAgICAgc2luZ2xlTGF5ZXI6ICdNb2RlIG1vbm8tY291Y2hlJyxcbiAgICAgICAgYXV0b0xheWVyOiAnQ29uZmlndXJhdGlvbiBhdXRvbWF0aXF1ZSBkZXMgc291cmNlcyBkZSBkb25uw6llcydcbiAgICAgIH1cbiAgICB9XG4gIH1cbn07XG4iXX0=
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { Pipe } from '@angular/core';
|
|
2
|
-
import { WmsService } from '../component/wms.service';
|
|
3
2
|
import { XMLUtils } from '../utils/xml-utils.class';
|
|
4
3
|
import * as i0 from "@angular/core";
|
|
5
4
|
export class WidgetMapLegendUrlPipe {
|
|
@@ -7,9 +6,9 @@ export class WidgetMapLegendUrlPipe {
|
|
|
7
6
|
this.parser = new DOMParser();
|
|
8
7
|
}
|
|
9
8
|
transform(geoLayer, ...args) {
|
|
10
|
-
const capability = args[0].capabilities
|
|
9
|
+
const capability = (args[0].capabilities ?? {})[geoLayer.url];
|
|
11
10
|
if (capability) {
|
|
12
|
-
const matchingLayer =
|
|
11
|
+
const matchingLayer = XMLUtils.getMatchingLayer(geoLayer.paramLayer, capability.doc);
|
|
13
12
|
if (matchingLayer) {
|
|
14
13
|
const matchingStyle = XMLUtils.find(matchingLayer.childNodes, 'Style');
|
|
15
14
|
if (matchingStyle) {
|
|
@@ -35,4 +34,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.6", ngImpor
|
|
|
35
34
|
name: 'legendUrl'
|
|
36
35
|
}]
|
|
37
36
|
}], ctorParameters: function () { return []; } });
|
|
38
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lkZ2V0LW1hcC1sZWdlbmQtdXJsLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2Rhc2hib2FyZC93aWRnZXRzL3dpZGdldC1tYXAvcGlwZS93aWRnZXQtbWFwLWxlZ2VuZC11cmwucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUVwRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7O0FBS3BELE1BQU0sT0FBTyxzQkFBc0I7SUFDakM7UUFFQSxXQUFNLEdBQUcsSUFBSSxTQUFTLEVBQUUsQ0FBQztJQUZWLENBQUM7SUFJaEIsU0FBUyxDQUNQLFFBQTRELEVBQzVELEdBQUcsSUFBNEY7UUFFL0YsTUFBTSxVQUFVLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxJQUFJLEVBQUUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUM5RCxJQUFJLFVBQVUsRUFBRTtZQUNkLE1BQU0sYUFBYSxHQUFHLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsVUFBVSxFQUFFLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNyRixJQUFJLGFBQWEsRUFBRTtnQkFDakIsTUFBTSxhQUFhLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsVUFBVSxFQUFFLE9BQU8sQ0FBQyxDQUFDO2dCQUN2RSxJQUFJLGFBQWEsRUFBRTtvQkFDakIsTUFBTSxTQUFTLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsVUFBVSxFQUFFLFdBQVcsQ0FBQyxDQUFDO29CQUN2RSxJQUFJLFNBQVMsRUFBRTt3QkFDYixNQUFNLFFBQVEsR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxVQUFVLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQzt3QkFDdkUsSUFBSSxRQUFRLEVBQUU7NEJBQ1osYUFBYTs0QkFDYixPQUFPLFFBQVEsQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDLENBQUM7eUJBQzVDO3FCQUNGO2lCQUNGO2FBQ0Y7U0FDRjtRQUNELE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQzs4R0EzQlUsc0JBQXNCOzRHQUF0QixzQkFBc0I7OzJGQUF0QixzQkFBc0I7a0JBSGxDLElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLFdBQVc7aUJBQ2xCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgR2V0Q2FwYWJpbGl0aWVzUmVzcG9uc2UsIE1hcEdlb1NlcnZlckxheWVyT3B0aW9ucywgTWFwV01TTGF5ZXJMYXllck9wdGlvbnMgfSBmcm9tICdAcHJvdm9seS9kYXNoYm9hcmQnO1xuaW1wb3J0IHsgWE1MVXRpbHMgfSBmcm9tICcuLi91dGlscy94bWwtdXRpbHMuY2xhc3MnO1xuXG5AUGlwZSh7XG4gIG5hbWU6ICdsZWdlbmRVcmwnXG59KVxuZXhwb3J0IGNsYXNzIFdpZGdldE1hcExlZ2VuZFVybFBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIHBhcnNlciA9IG5ldyBET01QYXJzZXIoKTtcblxuICB0cmFuc2Zvcm0oXG4gICAgZ2VvTGF5ZXI6IE1hcEdlb1NlcnZlckxheWVyT3B0aW9ucyB8IE1hcFdNU0xheWVyTGF5ZXJPcHRpb25zLFxuICAgIC4uLmFyZ3M6IFt7IGNhcGFiaWxpdGllczogeyBbcDogc3RyaW5nXTogR2V0Q2FwYWJpbGl0aWVzUmVzcG9uc2UgfCBudWxsIH0gfCB1bmRlZmluZWQgfCBudWxsIH1dXG4gICk6IHN0cmluZyB7XG4gICAgY29uc3QgY2FwYWJpbGl0eSA9IChhcmdzWzBdLmNhcGFiaWxpdGllcyA/PyB7fSlbZ2VvTGF5ZXIudXJsXTtcbiAgICBpZiAoY2FwYWJpbGl0eSkge1xuICAgICAgY29uc3QgbWF0Y2hpbmdMYXllciA9IFhNTFV0aWxzLmdldE1hdGNoaW5nTGF5ZXIoZ2VvTGF5ZXIucGFyYW1MYXllciwgY2FwYWJpbGl0eS5kb2MpO1xuICAgICAgaWYgKG1hdGNoaW5nTGF5ZXIpIHtcbiAgICAgICAgY29uc3QgbWF0Y2hpbmdTdHlsZSA9IFhNTFV0aWxzLmZpbmQobWF0Y2hpbmdMYXllci5jaGlsZE5vZGVzLCAnU3R5bGUnKTtcbiAgICAgICAgaWYgKG1hdGNoaW5nU3R5bGUpIHtcbiAgICAgICAgICBjb25zdCBsZWdlbmRVcmwgPSBYTUxVdGlscy5maW5kKG1hdGNoaW5nU3R5bGUuY2hpbGROb2RlcywgJ0xlZ2VuZFVSTCcpO1xuICAgICAgICAgIGlmIChsZWdlbmRVcmwpIHtcbiAgICAgICAgICAgIGNvbnN0IHJlc291cmNlID0gWE1MVXRpbHMuZmluZChsZWdlbmRVcmwuY2hpbGROb2RlcywgJ09ubGluZVJlc291cmNlJyk7XG4gICAgICAgICAgICBpZiAocmVzb3VyY2UpIHtcbiAgICAgICAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICAgICAgICByZXR1cm4gcmVzb3VyY2UuZ2V0QXR0cmlidXRlKCd4bGluazpocmVmJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiAnJztcbiAgfVxufVxuIl19
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
export * from './widget-map.module';
|
|
2
2
|
export * from './component/widget-map.component';
|
|
3
3
|
export * from './component/widget-map-layer.service';
|
|
4
|
-
export * from './component/wms.service';
|
|
5
4
|
export * from './pipe/widget-map-geometry-fields-for.pipe';
|
|
6
5
|
export * from './pipe/widget-map-legend-url.pipe';
|
|
7
6
|
export * from './interaction/interaction-manager.class';
|
|
@@ -10,4 +9,4 @@ export * from './utils/widget-map.utils';
|
|
|
10
9
|
export * from './utils/xml-utils.class';
|
|
11
10
|
export * from './utils/cql-utils.class';
|
|
12
11
|
export * from './style/css.component';
|
|
13
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvZGFzaGJvYXJkL3dpZGdldHMvd2lkZ2V0LW1hcC9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsNENBQTRDLENBQUM7QUFDM0QsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLHlDQUF5QyxDQUFDO0FBQ3hELGNBQWMsMkNBQTJDLENBQUM7QUFDMUQsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyx1QkFBdUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vd2lkZ2V0LW1hcC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9jb21wb25lbnQvd2lkZ2V0LW1hcC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9jb21wb25lbnQvd2lkZ2V0LW1hcC1sYXllci5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vcGlwZS93aWRnZXQtbWFwLWdlb21ldHJ5LWZpZWxkcy1mb3IucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL3BpcGUvd2lkZ2V0LW1hcC1sZWdlbmQtdXJsLnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9pbnRlcmFjdGlvbi9pbnRlcmFjdGlvbi1tYW5hZ2VyLmNsYXNzJztcbmV4cG9ydCAqIGZyb20gJy4vaW50ZXJhY3Rpb24vc2VsZWN0aW9uLWludGVyYWN0aW9uLmNsYXNzJztcbmV4cG9ydCAqIGZyb20gJy4vdXRpbHMvd2lkZ2V0LW1hcC51dGlscyc7XG5leHBvcnQgKiBmcm9tICcuL3V0aWxzL3htbC11dGlscy5jbGFzcyc7XG5leHBvcnQgKiBmcm9tICcuL3V0aWxzL2NxbC11dGlscy5jbGFzcyc7XG5leHBvcnQgKiBmcm9tICcuL3N0eWxlL2Nzcy5jb21wb25lbnQnO1xuIl19
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { FieldType, ItemUtils } from '@provoly/dashboard';
|
|
2
2
|
import { Feature } from 'ol';
|
|
3
3
|
import { Circle, LineString } from 'ol/geom';
|
|
4
|
+
import { WidgetMapLayerService } from '../component/widget-map-layer.service';
|
|
4
5
|
export const populateLocationAttribute = (layer, resultSet, classesNotFiltered, fields) => {
|
|
5
|
-
if (['heatmap', 'marker', 'bubble', 'point', 'line', 'polygon', 'multi-line', 'multi-polygon'].includes(layer.type) &&
|
|
6
|
+
if (['heatmap', 'marker', 'bubble', 'point', 'line', 'polygon', 'multi-line', 'multi-polygon', 'auto'].includes(layer.type) &&
|
|
6
7
|
!!resultSet &&
|
|
7
8
|
!!classesNotFiltered &&
|
|
8
9
|
classesNotFiltered.length > 0) {
|
|
@@ -25,9 +26,9 @@ export const populateLocationAttribute = (layer, resultSet, classesNotFiltered,
|
|
|
25
26
|
// We don't have any items to display, so allow all corresponding geometry fields
|
|
26
27
|
candidates = classesNotFiltered
|
|
27
28
|
.map((clazz) => clazz.attributes)
|
|
28
|
-
.
|
|
29
|
-
.map((attr) => fields.
|
|
30
|
-
.
|
|
29
|
+
.flat()
|
|
30
|
+
.map((attr) => ({ attr, field: fields.find((field) => field.id === attr.field) }))
|
|
31
|
+
.filter(({ attr, field }) => field?.type === geometry);
|
|
31
32
|
}
|
|
32
33
|
if (candidates.length > 0) {
|
|
33
34
|
specificLayer.attribute = candidates[0].attr.name;
|
|
@@ -91,8 +92,10 @@ export const getLinkFeature = (relation, featureSource, featureDestination) => {
|
|
|
91
92
|
return new Feature({
|
|
92
93
|
...relation,
|
|
93
94
|
geometry: new LineString([
|
|
94
|
-
|
|
95
|
-
|
|
95
|
+
// @ts-ignore
|
|
96
|
+
featureSource.getGeometry()?.getCoordinates() ?? featureSource.getGeometry()?.getCenter() ?? [0, 0],
|
|
97
|
+
// @ts-ignore
|
|
98
|
+
featureDestination.getGeometry()?.getCoordinates() ?? featureDestination.getGeometry()?.getCenter() ?? [0, 0]
|
|
96
99
|
]),
|
|
97
100
|
source: featureSource,
|
|
98
101
|
destination: featureDestination,
|
|
@@ -169,6 +172,10 @@ export const geometryForLayer = (layer) => {
|
|
|
169
172
|
return FieldType.MULTILINE;
|
|
170
173
|
case 'multi-polygon':
|
|
171
174
|
return FieldType.MULTIPOLYGON;
|
|
175
|
+
case 'auto':
|
|
176
|
+
return geometryForLayer({
|
|
177
|
+
type: WidgetMapLayerService.translateFieldTypeToLayerType(layer.subType)
|
|
178
|
+
});
|
|
172
179
|
default:
|
|
173
180
|
return FieldType.POINT;
|
|
174
181
|
}
|
|
@@ -179,5 +186,4 @@ export const DEFAULT_ZOOM_MIN = 3;
|
|
|
179
186
|
export const DEFAULT_ZOOM_START = 10;
|
|
180
187
|
export const DEFAULT_ZOOM_MAX = 18;
|
|
181
188
|
export const DEFAULT_MAP_CENTER = [2.2827217347381525, 48.864706031557716];
|
|
182
|
-
export const EMPTY_MAP_STYLE = { layers: [] };
|
|
183
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lkZ2V0LW1hcC51dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvZGFzaGJvYXJkL3dpZGdldHMvd2lkZ2V0LW1hcC91dGlscy93aWRnZXQtbWFwLnV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFJTCxTQUFTLEVBRVQsU0FBUyxFQU9WLE1BQU0sb0JBQW9CLENBQUM7QUFDNUIsT0FBTyxFQUFFLE9BQU8sRUFBTyxNQUFNLElBQUksQ0FBQztBQUNsQyxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBUyxNQUFNLFNBQVMsQ0FBQztBQVVwRCxNQUFNLENBQUMsTUFBTSx5QkFBeUIsR0FBRyxDQUN2QyxLQUE0QixFQUM1QixTQUFvQixFQUNwQixrQkFBMkIsRUFDM0IsTUFBZSxFQUNmLEVBQUU7SUFDRixJQUNFLENBQUMsU0FBUyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLGVBQWUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDO1FBQy9HLENBQUMsQ0FBQyxTQUFTO1FBQ1gsQ0FBQyxDQUFDLGtCQUFrQjtRQUNwQixrQkFBa0IsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUM3QjtRQUNBLE1BQU0sYUFBYSxHQUFHLEtBR1MsQ0FBQztRQUVoQyxNQUFNLE9BQU8sR0FBRyxrQkFBa0IsQ0FBQyxNQUFNLENBQ3ZDLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxhQUFhLENBQUMsT0FBTyxFQUFFLFFBQVEsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxJQUFJLGFBQWEsQ0FBQyxPQUFPLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FDL0csQ0FBQztRQUVGLElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUyxFQUFFO1lBQzVC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T0FBTyxTQUFTLENBQUMsS0FBSyxDQUFDO0tBQzFCO0FBQ0gsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sc0JBQXNCLEdBQUcsRUFBRSxDQUFDO0FBQ3pDLE1BQU0sQ0FBQyxNQUFNLCtCQUErQixHQUFHLEtBQUssQ0FBQztBQUNyRCxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxDQUFDLENBQUM7QUFDbEMsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsRUFBRSxDQUFDO0FBQ3JDLE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHLEVBQUUsQ0FBQztBQUNuQyxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxDQUFDLGtCQUFrQixFQUFFLGtCQUFrQixDQUFDLENBQUM7QUFDM0UsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHLEVBQUUsTUFBTSxFQUFFLEVBQUUsRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQXR0cmlidXRlLFxuICBDbGFzcyxcbiAgRmllbGQsXG4gIEZpZWxkVHlwZSxcbiAgSXRlbSxcbiAgSXRlbVV0aWxzLFxuICBNYXBXaWRnZXRCdWJibGVMYXllck9wdGlvbnMsXG4gIE1hcFdpZGdldEhlYXRNYXBMYXllck9wdGlvbnMsXG4gIE1hcFdpZGdldExheWVyT3B0aW9ucyxcbiAgTWFwV2lkZ2V0TWFya2VyTGF5ZXJPcHRpb25zLFxuICBSZWxhdGlvbixcbiAgUmVzdWx0U2V0XG59IGZyb20gJ0Bwcm92b2x5L2Rhc2hib2FyZCc7XG5pbXBvcnQgeyBGZWF0dXJlLCBNYXAgfSBmcm9tICdvbCc7XG5pbXBvcnQgeyBDaXJjbGUsIExpbmVTdHJpbmcsIFBvaW50IH0gZnJvbSAnb2wvZ2VvbSc7XG5pbXBvcnQgeyBTdHlsZSB9IGZyb20gJ29sL3N0eWxlJztcblxuZXhwb3J0IHR5cGUgTGF0TG9uQ2FuZGlkYXRlID0ge1xuICBtaW46IG51bWJlcjtcbiAgbWF4OiBudW1iZXI7XG4gIG5hbWU6IHN0cmluZztcbiAgdHlwZTogc3RyaW5nO1xufTtcblxuZXhwb3J0IGNvbnN0IHBvcHVsYXRlTG9jYXRpb25BdHRyaWJ1dGUgPSAoXG4gIGxheWVyOiBNYXBXaWRnZXRMYXllck9wdGlvbnMsXG4gIHJlc3VsdFNldDogUmVzdWx0U2V0LFxuICBjbGFzc2VzTm90RmlsdGVyZWQ6IENsYXNzW10sXG4gIGZpZWxkczogRmllbGRbXVxuKSA9PiB7XG4gIGlmIChcbiAgICBbJ2hlYXRtYXAnLCAnbWFya2VyJywgJ2J1YmJsZScsICdwb2ludCcsICdsaW5lJywgJ3BvbHlnb24nLCAnbXVsdGktbGluZScsICdtdWx0aS1wb2x5Z29uJ10uaW5jbHVkZXMobGF5ZXIudHlwZSkgJiZcbiAgICAhIXJlc3VsdFNldCAmJlxuICAgICEhY2xhc3Nlc05vdEZpbHRlcmVkICYmXG4gICAgY2xhc3Nlc05vdEZpbHRlcmVkLmxlbmd0aCA+IDBcbiAgKSB7XG4gICAgY29uc3Qgc3BlY2lmaWNMYXllciA9IGxheWVyIGFzXG4gICAgICB8IE1hcFdpZGdldEhlYXRNYXBMYXllck9wdGlvbnNcbiAgICAgIHwgTWFwV2lkZ2V0TWFya2VyTGF5ZXJPcHRpb25zXG4gICAgICB8IE1hcFdpZGdldEJ1YmJsZUxheWVyT3B0aW9ucztcblxuICAgIGNvbnN0IGNsYXNzZXMgPSBjbGFzc2VzTm90RmlsdGVyZWQuZmlsdGVyKFxuICAgICAgKGNsKSA9PiBzcGVjaWZpY0xheWVyLmNsYXNzZXM/LmluY2x1ZGVzKGNsLmlkKSB8fCAhc3BlY2lmaWNMYXllci5jbGFzc2VzIHx8IHNwZWNpZmljTGF5ZXIuY2xhc3Nlcy5sZW5ndGggPT09IDBcbiAgICApO1xuXG4gICAgaWYgKCFzcGVjaWZpY0xheWVyLmF0dHJpYnV0ZSkge1xuICAgICAgLy8gTm8gbG9jYXRpb24gYXR0cmlidXRlIGF2YWlsYWJsZSwgdGhlbiB0cnkgdG8gZ3Vlc3Mgb25lIHRoYXQgd2lsbCBiZSBva1xuXG4gICAgICBjb25zdCBnZW9tZXRyeSA9IGdlb21ldHJ5Rm9yTGF5ZXIobGF5ZXIpO1xuXG4gICAgICBsZXQgY2FuZGlkYXRlcyA9IFtdIGFzIHsgYXR0cjogQXR0cmlidXRlOyBmaWVsZDogRmllbGQgfCB1bmRlZmluZWQgfVtdO1xuICAgICAgaWYgKE9iamVjdC5rZXlzKHJlc3VsdFNldC5pdGVtcykubGVuZ3RoID4gMCkge1xuICAgICAgICAvLyBCYXNlZCBvbiBpdGVtcyB0aGF0IHdlIGhhdmUgdG8gZGlzcGxheVxuXG4gICAgICAgIGNhbmRpZGF0ZXMgPSBPYmplY3Qua2V5cyhyZXN1bHRTZXQuaXRlbXMpXG4gICAgICAgICAgLm1hcCgoa2V5KSA9PiAoeyBpdGVtczogcmVzdWx0U2V0Lml0ZW1zW2tleV0sIG9DbGFzczogY2xhc3Nlcy5maW5kKChjbCkgPT4gY2wuaWQgPT09IGtleSkgfSkpXG4gICAgICAgICAgLm1hcCgoeyBpdGVtcywgb0NsYXNzIH0pID0+XG4gICAgICAgICAgICAob0NsYXNzID8/IHsgYXR0cmlidXRlczogW10gfSkuYXR0cmlidXRlc1xuICAgICAgICAgICAgICAubWFwKChhdHRyKSA9PiAoeyBhdHRyLCBmaWVsZDogZmllbGRzLmZpbmQoKGYpID0+IGYuaWQgPT09IGF0dHIuZmllbGQpIH0pKVxuICAgICAgICAgICAgICAuZmlsdGVyKChhdHRyKSA9PiBhdHRyLmZpZWxkPy50eXBlID09PSBnZW9tZXRyeSlcbiAgICAgICAgICApXG4gICAgICAgICAgLnJlZHVjZSgocCwgYykgPT4gWy4uLnAsIC4uLmNdLCBbXSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyBXZSBkb24ndCBoYXZlIGFueSBpdGVtcyB0byBkaXNwbGF5LCBzbyBhbGxvdyBhbGwgY29ycmVzcG9uZGluZyBnZW9tZXRyeSBmaWVsZHNcbiAgICAgICAgY2FuZGlkYXRlcyA9IGNsYXNzZXNOb3RGaWx0ZXJlZFxuICAgICAgICAgIC5tYXAoKGNsYXp6KSA9PiBjbGF6ei5hdHRyaWJ1dGVzKVxuICAgICAgICAgIC5yZWR1Y2UoKHAsIGMpID0+IFsuLi5wLCAuLi5jXSwgW10pXG4gICAgICAgICAgLm1hcCgoYXR0cikgPT4gZmllbGRzLmZpbHRlcigoZmllbGQpID0+IGZpZWxkPy50eXBlID09PSBnZW9tZXRyeSkubWFwKChmaWVsZCkgPT4gKHsgYXR0ciwgZmllbGQgfSkpKVxuICAgICAgICAgIC5yZWR1Y2UoKHAsIGMpID0+IFsuLi5wLCAuLi5jXSwgW10pO1xuICAgICAgfVxuXG4gICAgICBpZiAoY2FuZGlkYXRlcy5sZW5ndGggPiAwKSB7XG4gICAgICAgIHNwZWNpZmljTGF5ZXIuYXR0cmlidXRlID0gY2FuZGlkYXRlc1swXS5hdHRyLm5hbWU7XG4gICAgICB9XG4gICAgfVxuICB9XG59O1xuXG5leHBvcnQgY29uc3QgcG9wdWxhdGVJbnRlbnNpdHlBdHRyaWJ1dGUgPSAoXG4gIGxheWVyOiBNYXBXaWRnZXRMYXllck9wdGlvbnMsXG4gIHJlc3VsdFNldDogUmVzdWx0U2V0LFxuICBjbGFzc2VzTm90RmlsdGVyZWQ6IENsYXNzW10sXG4gIGZpZWxkczogRmllbGRbXVxuKSA9PiB7XG4gIGlmIChcbiAgICBbJ2hlYXRtYXAnLCAnYnViYmxlJ10uaW5jbHVkZXMobGF5ZXIudHlwZSkgJiZcbiAgICAhIXJlc3VsdFNldCAmJlxuICAgICEhY2xhc3Nlc05vdEZpbHRlcmVkICYmXG4gICAgY2xhc3Nlc05vdEZpbHRlcmVkLmxlbmd0aCA+IDBcbiAgKSB7XG4gICAgY29uc3Qgc3BlY2lmaWNMYXllciA9IGxheWVyIGFzIE1hcFdpZGdldEhlYXRNYXBMYXllck9wdGlvbnMgfCBNYXBXaWRnZXRCdWJibGVMYXllck9wdGlvbnM7XG5cbiAgICBjb25zdCBjbGFzc2VzID0gY2xhc3Nlc05vdEZpbHRlcmVkLmZpbHRlcihcbiAgICAgIChjbCkgPT5cbiAgICAgICAgKHNwZWNpZmljTGF5ZXIuY2xhc3Nlcz8uaW5jbHVkZXMoY2wuaWQpIHx8ICFzcGVjaWZpY0xheWVyLmNsYXNzZXMgfHwgc3BlY2lmaWNMYXllci5jbGFzc2VzLmxlbmd0aCA9PT0gMCkgJiZcbiAgICAgICAgY2wuYXR0cmlidXRlcy5maW5kKChhdHRyKSA9PiBhdHRyLm5hbWUgPT09IChzcGVjaWZpY0xheWVyPy5hdHRyaWJ1dGUgPz8gW10pKVxuICAgICk7XG5cbiAgICBpZiAoIXNwZWNpZmljTGF5ZXIuaW50ZW5zaXR5QXR0cmlidXRlKSB7XG4gICAgICAvLyBObyBpbnRlbnNpdHkgYXR0cmlidXRlIGF2YWlsYWJsZSwgdGhlbiB0YWtlIHRoZSBtYXhpbXVtIGludGVuc2l0eSBtYXRjaGluZyBhdHRyaWJ1dGVcbiAgICAgIGNvbnN0IGNhbmRpZGF0ZXNEcnkgPSBPYmplY3Qua2V5cyhyZXN1bHRTZXQuaXRlbXMpXG4gICAgICAgIC5tYXAoKGtleSkgPT4gKHsgaXRlbXM6IHJlc3VsdFNldC5pdGVtc1trZXldLCBvQ2xhc3M6IGNsYXNzZXMuZmluZCgoY2wpID0+IGNsLmlkID09PSBrZXkpIH0pKVxuICAgICAgICAubWFwKCh7IGl0ZW1zLCBvQ2xhc3MgfSkgPT4ge1xuICAgICAgICAgIHJldHVybiAob0NsYXNzID8/IHsgYXR0cmlidXRlczogW10gfSkuYXR0cmlidXRlc1xuICAgICAgICAgICAgLm1hcCgoYXR0cikgPT4gKHsgYXR0ciwgZmllbGQ6IGZpZWxkcy5maW5kKChmKSA9PiBmLmlkID09PSBhdHRyLmZpZWxkKSB9KSlcbiAgICAgICAgICAgIC5maWx0ZXIoKGF0dHIpID0+IGF0dHIuZmllbGQ/LnR5cGUgPT09IEZpZWxkVHlwZS5ERUNJTUFMIHx8IGF0dHIuZmllbGQ/LnR5cGUgPT09IEZpZWxkVHlwZS5JTlRFR0VSKVxuICAgICAgICAgICAgLm1hcCgoYXR0cikgPT4ge1xuICAgICAgICAgICAgICBjb25zdCBhdHRyVmFsdWVzID0gSXRlbVV0aWxzLnBlcnRpbmVudFZhbHVlKGl0ZW1zLCBhdHRyLmF0dHIpO1xuICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIG1pbjogTWF0aC5taW4oLi4uYXR0clZhbHVlcyksXG4gICAgICAgICAgICAgICAgbWF4OiBNYXRoLm1heCguLi5hdHRyVmFsdWVzKSxcbiAgICAgICAgICAgICAgICBuYW1lOiBhdHRyLmF0dHIubmFtZVxuICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pXG4gICAgICAgIC5yZWR1Y2UoKHAsIGMpID0+IFsuLi5wLCAuLi5jXSwgW10pXG4gICAgICAgIC5zb3J0KChhLCBiKSA9PiBiLm1heCAtIGEubWF4KTtcblxuICAgICAgaWYgKGNhbmRpZGF0ZXNEcnkubGVuZ3RoID4gMCkge1xuICAgICAgICBzcGVjaWZpY0xheWVyLmludGVuc2l0eUF0dHJpYnV0ZSA9IGNhbmRpZGF0ZXNEcnlbMF0ubmFtZTtcbiAgICAgICAgc3BlY2lmaWNMYXllci5pbnRlbnNpdHlBc2MgPSB0cnVlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufTtcblxuZXhwb3J0IGNvbnN0IGdldEZlYXR1cmVGcm9tSXRlbSA9IChcbiAgaXRlbTogSXRlbSxcbiAgdHlwZTogc3RyaW5nLFxuICBsb2NhdGlvbkF0dHJpYnV0ZTogQXR0cmlidXRlLFxuICBpY29uU3R5bGU/OiBTdHlsZSxcbiAgc2VsZWN0ZWRJY29uU3R5bGU/OiBTdHlsZVxuKSA9PiB7XG4gIHJldHVybiBuZXcgRmVhdHVyZSh7XG4gICAgLi4uaXRlbSxcbiAgICB0eXBlLFxuICAgIGdlb21ldHJ5OiBJdGVtVXRpbHMucmVhZEdlb21ldHJ5KGl0ZW0sICdwb2ludCcsIGxvY2F0aW9uQXR0cmlidXRlKSxcbiAgICBjbGFzc2ljU3R5bGU6IGljb25TdHlsZSA/PyBudWxsLFxuICAgIHNlbGVjdGVkU3R5bGU6IHNlbGVjdGVkSWNvblN0eWxlID8/IG51bGxcbiAgfSk7XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0Q2lyY2xlRmVhdHVyZUZyb21JdGVtID0gKFxuICBpdGVtOiBJdGVtLFxuICBsb2NhdGlvbkF0dHJpYnV0ZTogQXR0cmlidXRlLFxuICByYWRpdXM6IG51bWJlcixcbiAgaWNvblN0eWxlOiBTdHlsZSxcbiAgc2VsZWN0ZWRJY29uU3R5bGU6IFN0eWxlXG4pID0+IHtcbiAgcmV0dXJuIG5ldyBGZWF0dXJlKHtcbiAgICAuLi5pdGVtLFxuICAgIGdlb21ldHJ5OiBuZXcgQ2lyY2xlKChJdGVtVXRpbHMucmVhZEdlb21ldHJ5KGl0ZW0sICdwb2ludCcsIGxvY2F0aW9uQXR0cmlidXRlKSBhcyBQb2ludCkuZ2V0Q29vcmRpbmF0ZXMoKSwgcmFkaXVzKSxcbiAgICBjbGFzc2ljU3R5bGU6IGljb25TdHlsZSxcbiAgICBzZWxlY3RlZFN0eWxlOiBzZWxlY3RlZEljb25TdHlsZSxcbiAgICB0eXBlOiAnYnViYmxlJ1xuICB9KTtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRMaW5rRmVhdHVyZSA9IChcbiAgcmVsYXRpb246IFJlbGF0aW9uLFxuICBmZWF0dXJlU291cmNlOiBGZWF0dXJlPFBvaW50PixcbiAgZmVhdHVyZURlc3RpbmF0aW9uOiBGZWF0dXJlPFBvaW50PlxuKSA9PiB7XG4gIHJldHVybiBuZXcgRmVhdHVyZSh7XG4gICAgLi4ucmVsYXRpb24sXG4gICAgZ2VvbWV0cnk6IG5ldyBMaW5lU3RyaW5nKFtcbiAgICAgIGZlYXR1cmVTb3VyY2UuZ2V0R2VvbWV0cnkoKT8uZ2V0Q29vcmRpbmF0ZXMoKSA/PyBbMCwgMF0sXG4gICAgICBmZWF0dXJlRGVzdGluYXRpb24uZ2V0R2VvbWV0cnkoKT8uZ2V0Q29vcmRpbmF0ZXMoKSA/PyBbMCwgMF1cbiAgICBdKSxcbiAgICBzb3VyY2U6IGZlYXR1cmVTb3VyY2UsXG4gICAgZGVzdGluYXRpb246IGZlYXR1cmVEZXN0aW5hdGlvbixcbiAgICB0eXBlOiAnbGluaydcbiAgfSk7XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0TWFwQXNQbmcgPSAobWFwOiBNYXApID0+IHtcbiAgcmV0dXJuIG5ldyBQcm9taXNlPHN0cmluZz4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgIG1hcC5vbmNlKCdyZW5kZXJjb21wbGV0ZScsIGZ1bmN0aW9uICgpIHtcbiAgICAgIGNvbnN0IG1hcENhbnZhcyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2NhbnZhcycpO1xuICAgICAgY29uc3Qgc2l6ZSA9IG1hcC5nZXRTaXplKCkgfHwgWzEwMCwgMTAwXTtcbiAgICAgIG1hcENhbnZhcy53aWR0aCA9IHNpemVbMF07XG4gICAgICBtYXBDYW52YXMuaGVpZ2h0ID0gc2l6ZVsxXTtcbiAgICAgIGNvbnN0IG1hcENvbnRleHQgPSBtYXBDYW52YXMuZ2V0Q29udGV4dCgnMmQnKSB8fCAobnVsbCBhcyB1bmtub3duIGFzIENhbnZhc1JlbmRlcmluZ0NvbnRleHQyRCk7XG4gICAgICBBcnJheS5wcm90b3R5cGUuZm9yRWFjaC5jYWxsKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJy5vbC1sYXllciBjYW52YXMsIGNhbnZhcy5vbC1sYXllcicpLCAoY2FudmFzKSA9PiB7XG4gICAgICAgIGlmIChjYW52YXMud2lkdGggPiAwKSB7XG4gICAgICAgICAgY29uc3Qgb3BhY2l0eSA9IGNhbnZhcy5wYXJlbnROb2RlLnN0eWxlLm9wYWNpdHkgfHwgY2FudmFzLnN0eWxlLm9wYWNpdHk7XG4gICAgICAgICAgbWFwQ29udGV4dC5nbG9iYWxBbHBoYSA9IG9wYWNpdHkgPT09ICcnID8gMSA6IE51bWJlcihvcGFjaXR5KTtcblxuICAgICAgICAgIGNvbnN0IGJhY2tncm91bmRDb2xvciA9IGNhbnZhcy5wYXJlbnROb2RlLnN0eWxlLmJhY2tncm91bmRDb2xvcjtcbiAgICAgICAgICBpZiAoYmFja2dyb3VuZENvbG9yKSB7XG4gICAgICAgICAgICBtYXBDb250ZXh0LmZpbGxTdHlsZSA9IGJhY2tncm91bmRDb2xvcjtcbiAgICAgICAgICAgIG1hcENvbnRleHQuZmlsbFJlY3QoMCwgMCwgY2FudmFzLndpZHRoLCBjYW52YXMuaGVpZ2h0KTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBsZXQgbWF0cml4O1xuICAgICAgICAgIGNvbnN0IHRyYW5zZm9ybSA9IGNhbnZhcy5zdHlsZS50cmFuc2Zvcm07XG4gICAgICAgICAgaWYgKHRyYW5zZm9ybSkge1xuICAgICAgICAgICAgLy8gR2V0IHRoZSB0cmFuc2Zvcm0gcGFyYW1ldGVycyBmcm9tIHRoZSBzdHlsZSdzIHRyYW5zZm9ybSBtYXRyaXhcbiAgICAgICAgICAgIG1hdHJpeCA9IHRyYW5zZm9ybVxuICAgICAgICAgICAgICAubWF0Y2goL15tYXRyaXhcXCgoW14oXSopXFwpJC8pWzFdXG4gICAgICAgICAgICAgIC5zcGxpdCgnLCcpXG4gICAgICAgICAgICAgIC5tYXAoTnVtYmVyKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgbWF0cml4ID0gW1xuICAgICAgICAgICAgICBwYXJzZUZsb2F0KGNhbnZhcy5zdHlsZS53aWR0aCkgLyBjYW52YXMud2lkdGgsXG4gICAgICAgICAgICAgIDAsXG4gICAgICAgICAgICAgIDAsXG4gICAgICAgICAgICAgIHBhcnNlRmxvYXQoY2FudmFzLnN0eWxlLmhlaWdodCkgLyBjYW52YXMuaGVpZ2h0LFxuICAgICAgICAgICAgICAwLFxuICAgICAgICAgICAgICAwXG4gICAgICAgICAgICBdO1xuICAgICAgICAgIH1cbiAgICAgICAgICAvLyBBcHBseSB0aGUgdHJhbnNmb3JtIHRvIHRoZSBleHBvcnQgbWFwIGNvbnRleHRcbiAgICAgICAgICBDYW52YXNSZW5kZXJpbmdDb250ZXh0MkQucHJvdG90eXBlLnNldFRyYW5zZm9ybS5hcHBseShtYXBDb250ZXh0LCBtYXRyaXgpO1xuICAgICAgICAgIG1hcENvbnRleHQuZHJhd0ltYWdlKGNhbnZhcywgMCwgMCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgICAgbWFwQ29udGV4dC5nbG9iYWxBbHBoYSA9IDE7XG4gICAgICByZXNvbHZlKG1hcENhbnZhcy50b0RhdGFVUkwoJ2ltYWdlL3BuZycpKTtcbiAgICB9KTtcbiAgICBtYXAucmVuZGVyU3luYygpO1xuICB9KTtcbn07XG5cbmV4cG9ydCBjb25zdCBleHBvcnRNYXBBc0ltYWdlID0gKG1hcDogTWFwLCBmaWxlbmFtZTogc3RyaW5nKSA9PiB7XG4gIGdldE1hcEFzUG5nKG1hcCkudGhlbigoZGF0YSkgPT4ge1xuICAgIGNvbnN0IGxpbmsgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdhJyk7XG4gICAgbGluay5kb3dubG9hZCA9IGZpbGVuYW1lO1xuICAgIGxpbmsuaHJlZiA9IGRhdGE7XG4gICAgbGluay5jbGljaygpO1xuICB9KTtcbn07XG5cbmV4cG9ydCBjb25zdCBnZW9tZXRyeUZvckxheWVyID0gKGxheWVyOiBNYXBXaWRnZXRMYXllck9wdGlvbnMpID0+IHtcbiAgc3dpdGNoIChsYXllci50eXBlKSB7XG4gICAgY2FzZSAnbWFya2VyJzpcbiAgICBjYXNlICdoZWF0bWFwJzpcbiAgICBjYXNlICdidWJibGUnOlxuICAgIGNhc2UgJ3BvaW50JzpcbiAgICAgIHJldHVybiBGaWVsZFR5cGUuUE9JTlQ7XG4gICAgY2FzZSAnbGluZSc6XG4gICAgICByZXR1cm4gRmllbGRUeXBlLkxJTkU7XG4gICAgY2FzZSAncG9seWdvbic6XG4gICAgICByZXR1cm4gRmllbGRUeXBlLlBPTFlHT047XG4gICAgY2FzZSAnbXVsdGktbGluZSc6XG4gICAgICByZXR1cm4gRmllbGRUeXBlLk1VTFRJTElORTtcbiAgICBjYXNlICdtdWx0aS1wb2x5Z29uJzpcbiAgICAgIHJldHVybiBGaWVsZFR5cGUuTVVMVElQT0xZR09OO1xuICAgIGRlZmF1bHQ6XG4gICAgICByZXR1cm4gRmllbGRUeXBlLlBPSU5UO1xuICB9XG59O1xuXG5leHBvcnQgY29uc3QgREVGQVVMVF9IRUFUTUFQX1JBRElVUyA9IDI1O1xuZXhwb3J0IGNvbnN0IERFRkFVTFRfUkFESVVTX0lOVEVOU0lUWV9GQUNUT1IgPSAxMDAwMDtcbmV4cG9ydCBjb25zdCBERUZBVUxUX1pPT01fTUlOID0gMztcbmV4cG9ydCBjb25zdCBERUZBVUxUX1pPT01fU1RBUlQgPSAxMDtcbmV4cG9ydCBjb25zdCBERUZBVUxUX1pPT01fTUFYID0gMTg7XG5leHBvcnQgY29uc3QgREVGQVVMVF9NQVBfQ0VOVEVSID0gWzIuMjgyNzIxNzM0NzM4MTUyNSwgNDguODY0NzA2MDMxNTU3NzE2XTtcbmV4cG9ydCBjb25zdCBFTVBUWV9NQVBfU1RZTEUgPSB7IGxheWVyczogW10gfTtcbiJdfQ==
|
|
189
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lkZ2V0LW1hcC51dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvZGFzaGJvYXJkL3dpZGdldHMvd2lkZ2V0LW1hcC91dGlscy93aWRnZXQtbWFwLnV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFJTCxTQUFTLEVBRVQsU0FBUyxFQU9WLE1BQU0sb0JBQW9CLENBQUM7QUFDNUIsT0FBTyxFQUFFLE9BQU8sRUFBTyxNQUFNLElBQUksQ0FBQztBQUNsQyxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBUyxNQUFNLFNBQVMsQ0FBQztBQUVwRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQVM5RSxNQUFNLENBQUMsTUFBTSx5QkFBeUIsR0FBRyxDQUN2QyxLQUE0QixFQUM1QixTQUFvQixFQUNwQixrQkFBMkIsRUFDM0IsTUFBZSxFQUNmLEVBQUU7SUFDRixJQUNFLENBQUMsU0FBUyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLGVBQWUsRUFBRSxNQUFNLENBQUMsQ0FBQyxRQUFRLENBQ3pHLEtBQUssQ0FBQyxJQUFJLENBQ1g7UUFDRCxDQUFDLENBQUMsU0FBUztRQUNYLENBQUMsQ0FBQyxrQkFBa0I7UUFDcEIsa0JBQWtCLENBQUMsTUFBTSxHQUFHLENBQUMsRUFDN0I7UUFDQSxNQUFNLGFBQWEsR0FBRyxLQUdTLENBQUM7UUFFaEMsTUFBTSxPQUFPLEdBQUcsa0JBQWtCLENBQUMsTUFBTSxDQUN2QyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsYUFBYSxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sSUFBSSxhQUFhLENBQUMsT0FBTyxDQUFDLE1BQU0sS0FBSyxD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U0FBUyxDQUFDLFlBQVksQ0FBQztRQUNoQyxLQUFLLE1BQU07WUFDVCxPQUFPLGdCQUFnQixDQUFDO2dCQUN0QixJQUFJLEVBQUUscUJBQXFCLENBQUMsNkJBQTZCLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQzthQUNoRCxDQUFDLENBQUM7UUFDOUI7WUFDRSxPQUFPLFNBQVMsQ0FBQyxLQUFLLENBQUM7S0FDMUI7QUFDSCxDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FBRyxFQUFFLENBQUM7QUFDekMsTUFBTSxDQUFDLE1BQU0sK0JBQStCLEdBQUcsS0FBSyxDQUFDO0FBQ3JELE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHLENBQUMsQ0FBQztBQUNsQyxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxFQUFFLENBQUM7QUFDckMsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsRUFBRSxDQUFDO0FBQ25DLE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLENBQUMsa0JBQWtCLEVBQUUsa0JBQWtCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEF0dHJpYnV0ZSxcbiAgQ2xhc3MsXG4gIEZpZWxkLFxuICBGaWVsZFR5cGUsXG4gIEl0ZW0sXG4gIEl0ZW1VdGlscyxcbiAgTWFwV2lkZ2V0QnViYmxlTGF5ZXJPcHRpb25zLFxuICBNYXBXaWRnZXRIZWF0TWFwTGF5ZXJPcHRpb25zLFxuICBNYXBXaWRnZXRMYXllck9wdGlvbnMsXG4gIE1hcFdpZGdldE1hcmtlckxheWVyT3B0aW9ucyxcbiAgUmVsYXRpb24sXG4gIFJlc3VsdFNldFxufSBmcm9tICdAcHJvdm9seS9kYXNoYm9hcmQnO1xuaW1wb3J0IHsgRmVhdHVyZSwgTWFwIH0gZnJvbSAnb2wnO1xuaW1wb3J0IHsgQ2lyY2xlLCBMaW5lU3RyaW5nLCBQb2ludCB9IGZyb20gJ29sL2dlb20nO1xuaW1wb3J0IHsgU3R5bGUgfSBmcm9tICdvbC9zdHlsZSc7XG5pbXBvcnQgeyBXaWRnZXRNYXBMYXllclNlcnZpY2UgfSBmcm9tICcuLi9jb21wb25lbnQvd2lkZ2V0LW1hcC1sYXllci5zZXJ2aWNlJztcblxuZXhwb3J0IHR5cGUgTGF0TG9uQ2FuZGlkYXRlID0ge1xuICBtaW46IG51bWJlcjtcbiAgbWF4OiBudW1iZXI7XG4gIG5hbWU6IHN0cmluZztcbiAgdHlwZTogc3RyaW5nO1xufTtcblxuZXhwb3J0IGNvbnN0IHBvcHVsYXRlTG9jYXRpb25BdHRyaWJ1dGUgPSAoXG4gIGxheWVyOiBNYXBXaWRnZXRMYXllck9wdGlvbnMsXG4gIHJlc3VsdFNldDogUmVzdWx0U2V0LFxuICBjbGFzc2VzTm90RmlsdGVyZWQ6IENsYXNzW10sXG4gIGZpZWxkczogRmllbGRbXVxuKSA9PiB7XG4gIGlmIChcbiAgICBbJ2hlYXRtYXAnLCAnbWFya2VyJywgJ2J1YmJsZScsICdwb2ludCcsICdsaW5lJywgJ3BvbHlnb24nLCAnbXVsdGktbGluZScsICdtdWx0aS1wb2x5Z29uJywgJ2F1dG8nXS5pbmNsdWRlcyhcbiAgICAgIGxheWVyLnR5cGVcbiAgICApICYmXG4gICAgISFyZXN1bHRTZXQgJiZcbiAgICAhIWNsYXNzZXNOb3RGaWx0ZXJlZCAmJlxuICAgIGNsYXNzZXNOb3RGaWx0ZXJlZC5sZW5ndGggPiAwXG4gICkge1xuICAgIGNvbnN0IHNwZWNpZmljTGF5ZXIgPSBsYXllciBhc1xuICAgICAgfCBNYXBXaWRnZXRIZWF0TWFwTGF5ZXJPcHRpb25zXG4gICAgICB8IE1hcFdpZGdldE1hcmtlckxheWVyT3B0aW9uc1xuICAgICAgfCBNYXBXaWRnZXRCdWJibGVMYXllck9wdGlvbnM7XG5cbiAgICBjb25zdCBjbGFzc2VzID0gY2xhc3Nlc05vdEZpbHRlcmVkLmZpbHRlcihcbiAgICAgIChjbCkgPT4gc3BlY2lmaWNMYXllci5jbGFzc2VzPy5pbmNsdWRlcyhjbC5pZCkgfHwgIXNwZWNpZmljTGF5ZXIuY2xhc3NlcyB8fCBzcGVjaWZpY0xheWVyLmNsYXNzZXMubGVuZ3RoID09PSAwXG4gICAgKTtcblxuICAgIGlmICghc3BlY2lmaWNMYXllci5hdHRyaWJ1dGUpIHtcbiAgICAgIC8vIE5vIGxvY2F0aW9uIGF0dHJpYnV0ZSBhdmFpbGFibGUsIHRoZW4gdHJ5IHRvIGd1ZXNzIG9uZSB0aGF0IHdpbGwgYmUgb2tcblxuICAgICAgY29uc3QgZ2VvbWV0cnkgPSBnZW9tZXRyeUZvckxheWVyKGxheWVyKTtcblxuICAgICAgbGV0IGNhbmRpZGF0ZXMgPSBbXSBhcyB7IGF0dHI6IEF0dHJpYnV0ZTsgZmllbGQ6IEZpZWxkIHwgdW5kZWZpbmVkIH1bXTtcbiAgICAgIGlmIChPYmplY3Qua2V5cyhyZXN1bHRTZXQuaXRlbXMpLmxlbmd0aCA+IDApIHtcbiAgICAgICAgLy8gQmFzZWQgb24gaXRlbXMgdGhhdCB3ZSBoYXZlIHRvIGRpc3BsYXlcblxuICAgICAgICBjYW5kaWRhdGVzID0gT2JqZWN0LmtleXMocmVzdWx0U2V0Lml0ZW1zKVxuICAgICAgICAgIC5tYXAoKGtleSkgPT4gKHsgaXRlbXM6IHJlc3VsdFNldC5pdGVtc1trZXldLCBvQ2xhc3M6IGNsYXNzZXMuZmluZCgoY2wpID0+IGNsLmlkID09PSBrZXkpIH0pKVxuICAgICAgICAgIC5tYXAoKHsgaXRlbXMsIG9DbGFzcyB9KSA9PlxuICAgICAgICAgICAgKG9DbGFzcyA/PyB7IGF0dHJpYnV0ZXM6IFtdIH0pLmF0dHJpYnV0ZXNcbiAgICAgICAgICAgICAgLm1hcCgoYXR0cikgPT4gKHsgYXR0ciwgZmllbGQ6IGZpZWxkcy5maW5kKChmKSA9PiBmLmlkID09PSBhdHRyLmZpZWxkKSB9KSlcbiAgICAgICAgICAgICAgLmZpbHRlcigoYXR0cikgPT4gYXR0ci5maWVsZD8udHlwZSA9PT0gZ2VvbWV0cnkpXG4gICAgICAgICAgKVxuICAgICAgICAgIC5yZWR1Y2UoKHAsIGMpID0+IFsuLi5wLCAuLi5jXSwgW10pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgLy8gV2UgZG9uJ3QgaGF2ZSBhbnkgaXRlbXMgdG8gZGlzcGxheSwgc28gYWxsb3cgYWxsIGNvcnJlc3BvbmRpbmcgZ2VvbWV0cnkgZmllbGRzXG4gICAgICAgIGNhbmRpZGF0ZXMgPSBjbGFzc2VzTm90RmlsdGVyZWRcbiAgICAgICAgICAubWFwKChjbGF6eikgPT4gY2xhenouYXR0cmlidXRlcylcbiAgICAgICAgICAuZmxhdCgpXG4gICAgICAgICAgLm1hcCgoYXR0cikgPT4gKHsgYXR0ciwgZmllbGQ6IGZpZWxkcy5maW5kKChmaWVsZCkgPT4gZmllbGQuaWQgPT09IGF0dHIuZmllbGQpIH0pKVxuICAgICAgICAgIC5maWx0ZXIoKHsgYXR0ciwgZmllbGQgfSkgPT4gZmllbGQ/LnR5cGUgPT09IGdlb21ldHJ5KTtcbiAgICAgIH1cblxuICAgICAgaWYgKGNhbmRpZGF0ZXMubGVuZ3RoID4gMCkge1xuICAgICAgICBzcGVjaWZpY0xheWVyLmF0dHJpYnV0ZSA9IGNhbmRpZGF0ZXNbMF0uYXR0ci5uYW1lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufTtcblxuZXhwb3J0IGNvbnN0IHBvcHVsYXRlSW50ZW5zaXR5QXR0cmlidXRlID0gKFxuICBsYXllcjogTWFwV2lkZ2V0TGF5ZXJPcHRpb25zLFxuICByZXN1bHRTZXQ6IFJlc3VsdFNldCxcbiAgY2xhc3Nlc05vdEZpbHRlcmVkOiBDbGFzc1tdLFxuICBmaWVsZHM6IEZpZWxkW11cbikgPT4ge1xuICBpZiAoXG4gICAgWydoZWF0bWFwJywgJ2J1YmJsZSddLmluY2x1ZGVzKGxheWVyLnR5cGUpICYmXG4gICAgISFyZXN1bHRTZXQgJiZcbiAgICAhIWNsYXNzZXNOb3RGaWx0ZXJlZCAmJlxuICAgIGNsYXNzZXNOb3RGaWx0ZXJlZC5sZW5ndGggPiAwXG4gICkge1xuICAgIGNvbnN0IHNwZWNpZmljTGF5ZXIgPSBsYXllciBhcyBNYXBXaWRnZXRIZWF0TWFwTGF5ZXJPcHRpb25zIHwgTWFwV2lkZ2V0QnViYmxlTGF5ZXJPcHRpb25zO1xuXG4gICAgY29uc3QgY2xhc3NlcyA9IGNsYXNzZXNOb3RGaWx0ZXJlZC5maWx0ZXIoXG4gICAgICAoY2wpID0+XG4gICAgICAgIChzcGVjaWZpY0xheWVyLmNsYXNzZXM/LmluY2x1ZGVzKGNsLmlkKSB8fCAhc3BlY2lmaWNMYXllci5jbGFzc2VzIHx8IHNwZWNpZmljTGF5ZXIuY2xhc3Nlcy5sZW5ndGggPT09IDApICYmXG4gICAgICAgIGNsLmF0dHJpYnV0ZXMuZmluZCgoYXR0cikgPT4gYXR0ci5uYW1lID09PSAoc3BlY2lmaWNMYXllcj8uYXR0cmlidXRlID8/IFtdKSlcbiAgICApO1xuXG4gICAgaWYgKCFzcGVjaWZpY0xheWVyLmludGVuc2l0eUF0dHJpYnV0ZSkge1xuICAgICAgLy8gTm8gaW50ZW5zaXR5IGF0dHJpYnV0ZSBhdmFpbGFibGUsIHRoZW4gdGFrZSB0aGUgbWF4aW11bSBpbnRlbnNpdHkgbWF0Y2hpbmcgYXR0cmlidXRlXG4gICAgICBjb25zdCBjYW5kaWRhdGVzRHJ5ID0gT2JqZWN0LmtleXMocmVzdWx0U2V0Lml0ZW1zKVxuICAgICAgICAubWFwKChrZXkpID0+ICh7IGl0ZW1zOiByZXN1bHRTZXQuaXRlbXNba2V5XSwgb0NsYXNzOiBjbGFzc2VzLmZpbmQoKGNsKSA9PiBjbC5pZCA9PT0ga2V5KSB9KSlcbiAgICAgICAgLm1hcCgoeyBpdGVtcywgb0NsYXNzIH0pID0+IHtcbiAgICAgICAgICByZXR1cm4gKG9DbGFzcyA/PyB7IGF0dHJpYnV0ZXM6IFtdIH0pLmF0dHJpYnV0ZXNcbiAgICAgICAgICAgIC5tYXAoKGF0dHIpID0+ICh7IGF0dHIsIGZpZWxkOiBmaWVsZHMuZmluZCgoZikgPT4gZi5pZCA9PT0gYXR0ci5maWVsZCkgfSkpXG4gICAgICAgICAgICAuZmlsdGVyKChhdHRyKSA9PiBhdHRyLmZpZWxkPy50eXBlID09PSBGaWVsZFR5cGUuREVDSU1BTCB8fCBhdHRyLmZpZWxkPy50eXBlID09PSBGaWVsZFR5cGUuSU5URUdFUilcbiAgICAgICAgICAgIC5tYXAoKGF0dHIpID0+IHtcbiAgICAgICAgICAgICAgY29uc3QgYXR0clZhbHVlcyA9IEl0ZW1VdGlscy5wZXJ0aW5lbnRWYWx1ZShpdGVtcywgYXR0ci5hdHRyKTtcbiAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICBtaW46IE1hdGgubWluKC4uLmF0dHJWYWx1ZXMpLFxuICAgICAgICAgICAgICAgIG1heDogTWF0aC5tYXgoLi4uYXR0clZhbHVlcyksXG4gICAgICAgICAgICAgICAgbmFtZTogYXR0ci5hdHRyLm5hbWVcbiAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9KVxuICAgICAgICAucmVkdWNlKChwLCBjKSA9PiBbLi4ucCwgLi4uY10sIFtdKVxuICAgICAgICAuc29ydCgoYSwgYikgPT4gYi5tYXggLSBhLm1heCk7XG5cbiAgICAgIGlmIChjYW5kaWRhdGVzRHJ5Lmxlbmd0aCA+IDApIHtcbiAgICAgICAgc3BlY2lmaWNMYXllci5pbnRlbnNpdHlBdHRyaWJ1dGUgPSBjYW5kaWRhdGVzRHJ5WzBdLm5hbWU7XG4gICAgICAgIHNwZWNpZmljTGF5ZXIuaW50ZW5zaXR5QXNjID0gdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn07XG5cbmV4cG9ydCBjb25zdCBnZXRGZWF0dXJlRnJvbUl0ZW0gPSAoXG4gIGl0ZW06IEl0ZW0sXG4gIHR5cGU6IHN0cmluZyxcbiAgbG9jYXRpb25BdHRyaWJ1dGU6IEF0dHJpYnV0ZSxcbiAgaWNvblN0eWxlPzogU3R5bGUsXG4gIHNlbGVjdGVkSWNvblN0eWxlPzogU3R5bGVcbikgPT4ge1xuICByZXR1cm4gbmV3IEZlYXR1cmUoe1xuICAgIC4uLml0ZW0sXG4gICAgdHlwZSxcbiAgICBnZW9tZXRyeTogSXRlbVV0aWxzLnJlYWRHZW9tZXRyeShpdGVtLCAncG9pbnQnLCBsb2NhdGlvbkF0dHJpYnV0ZSksXG4gICAgY2xhc3NpY1N0eWxlOiBpY29uU3R5bGUgPz8gbnVsbCxcbiAgICBzZWxlY3RlZFN0eWxlOiBzZWxlY3RlZEljb25TdHlsZSA/PyBudWxsXG4gIH0pO1xufTtcblxuZXhwb3J0IGNvbnN0IGdldENpcmNsZUZlYXR1cmVGcm9tSXRlbSA9IChcbiAgaXRlbTogSXRlbSxcbiAgbG9jYXRpb25BdHRyaWJ1dGU6IEF0dHJpYnV0ZSxcbiAgcmFkaXVzOiBudW1iZXIsXG4gIGljb25TdHlsZTogU3R5bGUsXG4gIHNlbGVjdGVkSWNvblN0eWxlOiBTdHlsZVxuKSA9PiB7XG4gIHJldHVybiBuZXcgRmVhdHVyZSh7XG4gICAgLi4uaXRlbSxcbiAgICBnZW9tZXRyeTogbmV3IENpcmNsZSgoSXRlbVV0aWxzLnJlYWRHZW9tZXRyeShpdGVtLCAncG9pbnQnLCBsb2NhdGlvbkF0dHJpYnV0ZSkgYXMgUG9pbnQpLmdldENvb3JkaW5hdGVzKCksIHJhZGl1cyksXG4gICAgY2xhc3NpY1N0eWxlOiBpY29uU3R5bGUsXG4gICAgc2VsZWN0ZWRTdHlsZTogc2VsZWN0ZWRJY29uU3R5bGUsXG4gICAgdHlwZTogJ2J1YmJsZSdcbiAgfSk7XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0TGlua0ZlYXR1cmUgPSAoXG4gIHJlbGF0aW9uOiBSZWxhdGlvbixcbiAgZmVhdHVyZVNvdXJjZTogRmVhdHVyZTxQb2ludD4sXG4gIGZlYXR1cmVEZXN0aW5hdGlvbjogRmVhdHVyZTxQb2ludD5cbikgPT4ge1xuICByZXR1cm4gbmV3IEZlYXR1cmUoe1xuICAgIC4uLnJlbGF0aW9uLFxuICAgIGdlb21ldHJ5OiBuZXcgTGluZVN0cmluZyhbXG4gICAgICAvLyBAdHMtaWdub3JlXG4gICAgICBmZWF0dXJlU291cmNlLmdldEdlb21ldHJ5KCk/LmdldENvb3JkaW5hdGVzKCkgPz8gZmVhdHVyZVNvdXJjZS5nZXRHZW9tZXRyeSgpPy5nZXRDZW50ZXIoKSA/PyBbMCwgMF0sXG4gICAgICAvLyBAdHMtaWdub3JlXG4gICAgICBmZWF0dXJlRGVzdGluYXRpb24uZ2V0R2VvbWV0cnkoKT8uZ2V0Q29vcmRpbmF0ZXMoKSA/PyBmZWF0dXJlRGVzdGluYXRpb24uZ2V0R2VvbWV0cnkoKT8uZ2V0Q2VudGVyKCkgPz8gWzAsIDBdXG4gICAgXSksXG4gICAgc291cmNlOiBmZWF0dXJlU291cmNlLFxuICAgIGRlc3RpbmF0aW9uOiBmZWF0dXJlRGVzdGluYXRpb24sXG4gICAgdHlwZTogJ2xpbmsnXG4gIH0pO1xufTtcblxuZXhwb3J0IGNvbnN0IGdldE1hcEFzUG5nID0gKG1hcDogTWFwKSA9PiB7XG4gIHJldHVybiBuZXcgUHJvbWlzZTxzdHJpbmc+KChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICBtYXAub25jZSgncmVuZGVyY29tcGxldGUnLCBmdW5jdGlvbiAoKSB7XG4gICAgICBjb25zdCBtYXBDYW52YXMgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdjYW52YXMnKTtcbiAgICAgIGNvbnN0IHNpemUgPSBtYXAuZ2V0U2l6ZSgpIHx8IFsxMDAsIDEwMF07XG4gICAgICBtYXBDYW52YXMud2lkdGggPSBzaXplWzBdO1xuICAgICAgbWFwQ2FudmFzLmhlaWdodCA9IHNpemVbMV07XG4gICAgICBjb25zdCBtYXBDb250ZXh0ID0gbWFwQ2FudmFzLmdldENvbnRleHQoJzJkJykgfHwgKG51bGwgYXMgdW5rbm93biBhcyBDYW52YXNSZW5kZXJpbmdDb250ZXh0MkQpO1xuICAgICAgQXJyYXkucHJvdG90eXBlLmZvckVhY2guY2FsbChkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCcub2wtbGF5ZXIgY2FudmFzLCBjYW52YXMub2wtbGF5ZXInKSwgKGNhbnZhcykgPT4ge1xuICAgICAgICBpZiAoY2FudmFzLndpZHRoID4gMCkge1xuICAgICAgICAgIGNvbnN0IG9wYWNpdHkgPSBjYW52YXMucGFyZW50Tm9kZS5zdHlsZS5vcGFjaXR5IHx8IGNhbnZhcy5zdHlsZS5vcGFjaXR5O1xuICAgICAgICAgIG1hcENvbnRleHQuZ2xvYmFsQWxwaGEgPSBvcGFjaXR5ID09PSAnJyA/IDEgOiBOdW1iZXIob3BhY2l0eSk7XG5cbiAgICAgICAgICBjb25zdCBiYWNrZ3JvdW5kQ29sb3IgPSBjYW52YXMucGFyZW50Tm9kZS5zdHlsZS5iYWNrZ3JvdW5kQ29sb3I7XG4gICAgICAgICAgaWYgKGJhY2tncm91bmRDb2xvcikge1xuICAgICAgICAgICAgbWFwQ29udGV4dC5maWxsU3R5bGUgPSBiYWNrZ3JvdW5kQ29sb3I7XG4gICAgICAgICAgICBtYXBDb250ZXh0LmZpbGxSZWN0KDAsIDAsIGNhbnZhcy53aWR0aCwgY2FudmFzLmhlaWdodCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgbGV0IG1hdHJpeDtcbiAgICAgICAgICBjb25zdCB0cmFuc2Zvcm0gPSBjYW52YXMuc3R5bGUudHJhbnNmb3JtO1xuICAgICAgICAgIGlmICh0cmFuc2Zvcm0pIHtcbiAgICAgICAgICAgIC8vIEdldCB0aGUgdHJhbnNmb3JtIHBhcmFtZXRlcnMgZnJvbSB0aGUgc3R5bGUncyB0cmFuc2Zvcm0gbWF0cml4XG4gICAgICAgICAgICBtYXRyaXggPSB0cmFuc2Zvcm1cbiAgICAgICAgICAgICAgLm1hdGNoKC9ebWF0cml4XFwoKFteKF0qKVxcKSQvKVsxXVxuICAgICAgICAgICAgICAuc3BsaXQoJywnKVxuICAgICAgICAgICAgICAubWFwKE51bWJlcik7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIG1hdHJpeCA9IFtcbiAgICAgICAgICAgICAgcGFyc2VGbG9hdChjYW52YXMuc3R5bGUud2lkdGgpIC8gY2FudmFzLndpZHRoLFxuICAgICAgICAgICAgICAwLFxuICAgICAgICAgICAgICAwLFxuICAgICAgICAgICAgICBwYXJzZUZsb2F0KGNhbnZhcy5zdHlsZS5oZWlnaHQpIC8gY2FudmFzLmhlaWdodCxcbiAgICAgICAgICAgICAgMCxcbiAgICAgICAgICAgICAgMFxuICAgICAgICAgICAgXTtcbiAgICAgICAgICB9XG4gICAgICAgICAgLy8gQXBwbHkgdGhlIHRyYW5zZm9ybSB0byB0aGUgZXhwb3J0IG1hcCBjb250ZXh0XG4gICAgICAgICAgQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJELnByb3RvdHlwZS5zZXRUcmFuc2Zvcm0uYXBwbHkobWFwQ29udGV4dCwgbWF0cml4KTtcbiAgICAgICAgICBtYXBDb250ZXh0LmRyYXdJbWFnZShjYW52YXMsIDAsIDApO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICAgIG1hcENvbnRleHQuZ2xvYmFsQWxwaGEgPSAxO1xuICAgICAgcmVzb2x2ZShtYXBDYW52YXMudG9EYXRhVVJMKCdpbWFnZS9wbmcnKSk7XG4gICAgfSk7XG4gICAgbWFwLnJlbmRlclN5bmMoKTtcbiAgfSk7XG59O1xuXG5leHBvcnQgY29uc3QgZXhwb3J0TWFwQXNJbWFnZSA9IChtYXA6IE1hcCwgZmlsZW5hbWU6IHN0cmluZykgPT4ge1xuICBnZXRNYXBBc1BuZyhtYXApLnRoZW4oKGRhdGEpID0+IHtcbiAgICBjb25zdCBsaW5rID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYScpO1xuICAgIGxpbmsuZG93bmxvYWQgPSBmaWxlbmFtZTtcbiAgICBsaW5rLmhyZWYgPSBkYXRhO1xuICAgIGxpbmsuY2xpY2soKTtcbiAgfSk7XG59O1xuXG5leHBvcnQgY29uc3QgZ2VvbWV0cnlGb3JMYXllciA9IChsYXllcjogTWFwV2lkZ2V0TGF5ZXJPcHRpb25zKTogc3RyaW5nID0+IHtcbiAgc3dpdGNoIChsYXllci50eXBlKSB7XG4gICAgY2FzZSAnbWFya2VyJzpcbiAgICBjYXNlICdoZWF0bWFwJzpcbiAgICBjYXNlICdidWJibGUnOlxuICAgIGNhc2UgJ3BvaW50JzpcbiAgICAgIHJldHVybiBGaWVsZFR5cGUuUE9JTlQ7XG4gICAgY2FzZSAnbGluZSc6XG4gICAgICByZXR1cm4gRmllbGRUeXBlLkxJTkU7XG4gICAgY2FzZSAncG9seWdvbic6XG4gICAgICByZXR1cm4gRmllbGRUeXBlLlBPTFlHT047XG4gICAgY2FzZSAnbXVsdGktbGluZSc6XG4gICAgICByZXR1cm4gRmllbGRUeXBlLk1VTFRJTElORTtcbiAgICBjYXNlICdtdWx0aS1wb2x5Z29uJzpcbiAgICAgIHJldHVybiBGaWVsZFR5cGUuTVVMVElQT0xZR09OO1xuICAgIGNhc2UgJ2F1dG8nOlxuICAgICAgcmV0dXJuIGdlb21ldHJ5Rm9yTGF5ZXIoe1xuICAgICAgICB0eXBlOiBXaWRnZXRNYXBMYXllclNlcnZpY2UudHJhbnNsYXRlRmllbGRUeXBlVG9MYXllclR5cGUobGF5ZXIuc3ViVHlwZSlcbiAgICAgIH0gYXMgTWFwV2lkZ2V0TGF5ZXJPcHRpb25zKTtcbiAgICBkZWZhdWx0OlxuICAgICAgcmV0dXJuIEZpZWxkVHlwZS5QT0lOVDtcbiAgfVxufTtcblxuZXhwb3J0IGNvbnN0IERFRkFVTFRfSEVBVE1BUF9SQURJVVMgPSAyNTtcbmV4cG9ydCBjb25zdCBERUZBVUxUX1JBRElVU19JTlRFTlNJVFlfRkFDVE9SID0gMTAwMDA7XG5leHBvcnQgY29uc3QgREVGQVVMVF9aT09NX01JTiA9IDM7XG5leHBvcnQgY29uc3QgREVGQVVMVF9aT09NX1NUQVJUID0gMTA7XG5leHBvcnQgY29uc3QgREVGQVVMVF9aT09NX01BWCA9IDE4O1xuZXhwb3J0IGNvbnN0IERFRkFVTFRfTUFQX0NFTlRFUiA9IFsyLjI4MjcyMTczNDczODE1MjUsIDQ4Ljg2NDcwNjAzMTU1NzcxNl07XG4iXX0=
|
|
@@ -30,5 +30,24 @@ export class XMLUtils {
|
|
|
30
30
|
}
|
|
31
31
|
return null;
|
|
32
32
|
}
|
|
33
|
+
static getMatchingLayer(paramLayer, doc) {
|
|
34
|
+
const WMSCapability = XMLUtils.find(doc.childNodes, 'WMS_Capabilities');
|
|
35
|
+
if (WMSCapability) {
|
|
36
|
+
const Capabilities = XMLUtils.find(WMSCapability.childNodes, 'Capability');
|
|
37
|
+
if (Capabilities) {
|
|
38
|
+
const Layer = XMLUtils.find(Capabilities.childNodes, 'Layer');
|
|
39
|
+
if (Layer) {
|
|
40
|
+
let matchingLayer = XMLUtils.findWith(Layer.childNodes, 'Name', paramLayer);
|
|
41
|
+
const split = paramLayer.split(':');
|
|
42
|
+
if (!matchingLayer && split.length >= 2) {
|
|
43
|
+
// Try again, splitting on ":" in the name to ignore namespace if present
|
|
44
|
+
matchingLayer = XMLUtils.findWith(Layer.childNodes, 'Name', split[split.length - 1]);
|
|
45
|
+
}
|
|
46
|
+
return matchingLayer;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
return null;
|
|
51
|
+
}
|
|
33
52
|
}
|
|
34
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
53
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieG1sLXV0aWxzLmNsYXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9kYXNoYm9hcmQvd2lkZ2V0cy93aWRnZXQtbWFwL3V0aWxzL3htbC11dGlscy5jbGFzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sUUFBUTtJQUNuQixNQUFNLENBQUMsSUFBSSxDQUFDLE1BQTZCLEVBQUUsSUFBWTtRQUNyRCxJQUFJLENBQUMsQ0FBQyxNQUFNLEVBQUU7WUFDWixLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsTUFBTSxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTtnQkFDdEMsTUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUN2QixJQUFJLElBQUksQ0FBQyxRQUFRLEtBQUssSUFBSSxFQUFFO29CQUMxQixPQUFPLElBQUksQ0FBQztpQkFDYjthQUNGO1NBQ0Y7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQTZCLEVBQUUsSUFBWTtRQUN4RCxNQUFNLE1BQU0sR0FBRyxFQUFFLENBQUM7UUFDbEIsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDdEMsTUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3ZCLElBQUksSUFBSSxDQUFDLFFBQVEsS0FBSyxJQUFJLEVBQUU7Z0JBQzFCLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7YUFDbkI7U0FDRjtRQUNELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQTZCLEVBQUUsU0FBaUIsRUFBRSxLQUFhO1FBQzdFLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQ3RDLE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN2QixNQUFNLFFBQVEsR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsU0FBUyxDQUFDLENBQUM7WUFDM0QsSUFBSSxRQUFRLEVBQUUsV0FBVyxLQUFLLEtBQUssRUFBRTtnQkFDbkMsT0FBTyxJQUFJLENBQUM7YUFDYjtTQUNGO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsTUFBTSxDQUFDLGdCQUFnQixDQUFDLFVBQWtCLEVBQUUsR0FBYTtRQUN2RCxNQUFNLGFBQWEsR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxVQUFVLEVBQUUsa0JBQWtCLENBQUMsQ0FBQztRQUN4RSxJQUFJLGFBQWEsRUFBRTtZQUNqQixNQUFNLFlBQVksR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxVQUFVLEVBQUUsWUFBWSxDQUFDLENBQUM7WUFDM0UsSUFBSSxZQUFZLEVBQUU7Z0JBQ2hCLE1BQU0sS0FBSyxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLFVBQVUsRUFBRSxPQUFPLENBQUMsQ0FBQztnQkFDOUQsSUFBSSxLQUFLLEVBQUU7b0JBQ1QsSUFBSSxhQUFhLEdBQUcsUUFBUSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsVUFBVSxFQUFFLE1BQU0sRUFBRSxVQUFVLENBQUMsQ0FBQztvQkFDNUUsTUFBTSxLQUFLLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztvQkFDcEMsSUFBSSxDQUFDLGFBQWEsSUFBSSxLQUFLLENBQUMsTUFBTSxJQUFJLENBQUMsRUFBRTt3QkFDdkMseUVBQXlFO3dCQUN6RSxhQUFhLEdBQUcsUUFBUSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsVUFBVSxFQUFFLE1BQU0sRUFBRSxLQUFLLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO3FCQUN0RjtvQkFDRCxPQUFPLGFBQWEsQ0FBQztpQkFDdEI7YUFDRjtTQUNGO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgWE1MVXRpbHMge1xuICBzdGF0aWMgZmluZChjaGlsZHM6IE5vZGVMaXN0T2Y8Q2hpbGROb2RlPiwgbmFtZTogc3RyaW5nKSB7XG4gICAgaWYgKCEhY2hpbGRzKSB7XG4gICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGNoaWxkcy5sZW5ndGg7IGkrKykge1xuICAgICAgICBjb25zdCBub2RlID0gY2hpbGRzW2ldO1xuICAgICAgICBpZiAobm9kZS5ub2RlTmFtZSA9PT0gbmFtZSkge1xuICAgICAgICAgIHJldHVybiBub2RlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgc3RhdGljIGZpbmRBbGwoY2hpbGRzOiBOb2RlTGlzdE9mPENoaWxkTm9kZT4sIG5hbWU6IHN0cmluZykge1xuICAgIGNvbnN0IHJlc3VsdCA9IFtdO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgY2hpbGRzLmxlbmd0aDsgaSsrKSB7XG4gICAgICBjb25zdCBub2RlID0gY2hpbGRzW2ldO1xuICAgICAgaWYgKG5vZGUubm9kZU5hbWUgPT09IG5hbWUpIHtcbiAgICAgICAgcmVzdWx0LnB1c2gobm9kZSk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICBzdGF0aWMgZmluZFdpdGgoY2hpbGRzOiBOb2RlTGlzdE9mPENoaWxkTm9kZT4sIGF0dHJpYnV0ZTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nKSB7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBjaGlsZHMubGVuZ3RoOyBpKyspIHtcbiAgICAgIGNvbnN0IG5vZGUgPSBjaGlsZHNbaV07XG4gICAgICBjb25zdCBhdHRyTm9kZSA9IFhNTFV0aWxzLmZpbmQobm9kZS5jaGlsZE5vZGVzLCBhdHRyaWJ1dGUpO1xuICAgICAgaWYgKGF0dHJOb2RlPy50ZXh0Q29udGVudCA9PT0gdmFsdWUpIHtcbiAgICAgICAgcmV0dXJuIG5vZGU7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgc3RhdGljIGdldE1hdGNoaW5nTGF5ZXIocGFyYW1MYXllcjogc3RyaW5nLCBkb2M6IERvY3VtZW50KSB7XG4gICAgY29uc3QgV01TQ2FwYWJpbGl0eSA9IFhNTFV0aWxzLmZpbmQoZG9jLmNoaWxkTm9kZXMsICdXTVNfQ2FwYWJpbGl0aWVzJyk7XG4gICAgaWYgKFdNU0NhcGFiaWxpdHkpIHtcbiAgICAgIGNvbnN0IENhcGFiaWxpdGllcyA9IFhNTFV0aWxzLmZpbmQoV01TQ2FwYWJpbGl0eS5jaGlsZE5vZGVzLCAnQ2FwYWJpbGl0eScpO1xuICAgICAgaWYgKENhcGFiaWxpdGllcykge1xuICAgICAgICBjb25zdCBMYXllciA9IFhNTFV0aWxzLmZpbmQoQ2FwYWJpbGl0aWVzLmNoaWxkTm9kZXMsICdMYXllcicpO1xuICAgICAgICBpZiAoTGF5ZXIpIHtcbiAgICAgICAgICBsZXQgbWF0Y2hpbmdMYXllciA9IFhNTFV0aWxzLmZpbmRXaXRoKExheWVyLmNoaWxkTm9kZXMsICdOYW1lJywgcGFyYW1MYXllcik7XG4gICAgICAgICAgY29uc3Qgc3BsaXQgPSBwYXJhbUxheWVyLnNwbGl0KCc6Jyk7XG4gICAgICAgICAgaWYgKCFtYXRjaGluZ0xheWVyICYmIHNwbGl0Lmxlbmd0aCA+PSAyKSB7XG4gICAgICAgICAgICAvLyBUcnkgYWdhaW4sIHNwbGl0dGluZyBvbiBcIjpcIiBpbiB0aGUgbmFtZSB0byBpZ25vcmUgbmFtZXNwYWNlIGlmIHByZXNlbnRcbiAgICAgICAgICAgIG1hdGNoaW5nTGF5ZXIgPSBYTUxVdGlscy5maW5kV2l0aChMYXllci5jaGlsZE5vZGVzLCAnTmFtZScsIHNwbGl0W3NwbGl0Lmxlbmd0aCAtIDFdKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIG1hdGNoaW5nTGF5ZXI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cbn1cbiJdfQ==
|