@itwin/map-layers 5.4.4 → 5.6.0
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/CHANGELOG.md +18 -2
- package/README.md +7 -7
- package/lib/cjs/BrowserStorage.d.ts.map +1 -1
- package/lib/cjs/BrowserStorage.js +23 -13
- package/lib/cjs/BrowserStorage.js.map +1 -1
- package/lib/cjs/CustomParamUtils.d.ts +1 -1
- package/lib/cjs/CustomParamUtils.d.ts.map +1 -1
- package/lib/cjs/CustomParamUtils.js +6 -3
- package/lib/cjs/CustomParamUtils.js.map +1 -1
- package/lib/cjs/CustomParamsMappingStorage.d.ts +1 -1
- package/lib/cjs/CustomParamsMappingStorage.d.ts.map +1 -1
- package/lib/cjs/CustomParamsMappingStorage.js +3 -3
- package/lib/cjs/CustomParamsMappingStorage.js.map +1 -1
- package/lib/cjs/CustomParamsStorage.d.ts +1 -1
- package/lib/cjs/CustomParamsStorage.d.ts.map +1 -1
- package/lib/cjs/CustomParamsStorage.js +3 -3
- package/lib/cjs/CustomParamsStorage.js.map +1 -1
- package/lib/cjs/MapLayerPreferences.d.ts +2 -1
- package/lib/cjs/MapLayerPreferences.d.ts.map +1 -1
- package/lib/cjs/MapLayerPreferences.js +50 -25
- package/lib/cjs/MapLayerPreferences.js.map +1 -1
- package/lib/cjs/MapLayersActionIds.d.ts +5 -0
- package/lib/cjs/MapLayersActionIds.d.ts.map +1 -0
- package/lib/cjs/MapLayersActionIds.js +10 -0
- package/lib/cjs/MapLayersActionIds.js.map +1 -0
- package/lib/cjs/MapLayersPrefBrowserStorage.d.ts.map +1 -1
- package/lib/cjs/MapLayersPrefBrowserStorage.js +4 -5
- package/lib/cjs/MapLayersPrefBrowserStorage.js.map +1 -1
- package/lib/cjs/PreferencesBrowserStorage.d.ts +17 -17
- package/lib/cjs/PreferencesBrowserStorage.d.ts.map +1 -1
- package/lib/cjs/PreferencesBrowserStorage.js +14 -14
- package/lib/cjs/PreferencesBrowserStorage.js.map +1 -1
- package/lib/cjs/map-layers.d.ts +1 -0
- package/lib/cjs/map-layers.d.ts.map +1 -1
- package/lib/cjs/map-layers.js +4 -3
- package/lib/cjs/map-layers.js.map +1 -1
- package/lib/cjs/mapLayers.d.ts +2 -2
- package/lib/cjs/mapLayers.d.ts.map +1 -1
- package/lib/cjs/mapLayers.js.map +1 -1
- package/lib/cjs/public/locales/en/mapLayers.json +179 -184
- package/lib/cjs/ui/FeatureInfoUiItemsProvider.d.ts +3 -4
- package/lib/cjs/ui/FeatureInfoUiItemsProvider.d.ts.map +1 -1
- package/lib/cjs/ui/FeatureInfoUiItemsProvider.js +48 -18
- package/lib/cjs/ui/FeatureInfoUiItemsProvider.js.map +1 -1
- package/lib/cjs/ui/Interfaces.d.ts +3 -3
- package/lib/cjs/ui/Interfaces.d.ts.map +1 -1
- package/lib/cjs/ui/Interfaces.js.map +1 -1
- package/lib/cjs/ui/MapLayersUiItemsProvider.d.ts +3 -2
- package/lib/cjs/ui/MapLayersUiItemsProvider.d.ts.map +1 -1
- package/lib/cjs/ui/MapLayersUiItemsProvider.js +2 -6
- package/lib/cjs/ui/MapLayersUiItemsProvider.js.map +1 -1
- package/lib/cjs/ui/widget/AttachLayerPopupButton.d.ts.map +1 -1
- package/lib/cjs/ui/widget/AttachLayerPopupButton.js +81 -46
- package/lib/cjs/ui/widget/AttachLayerPopupButton.js.map +1 -1
- package/lib/cjs/ui/widget/BasemapPanel.d.ts.map +1 -1
- package/lib/cjs/ui/widget/BasemapPanel.js +44 -25
- package/lib/cjs/ui/widget/BasemapPanel.js.map +1 -1
- package/lib/cjs/ui/widget/BasemapPanel.scss +2 -4
- package/lib/cjs/ui/widget/ConfirmMessageDialog.d.ts +1 -1
- package/lib/cjs/ui/widget/ConfirmMessageDialog.d.ts.map +1 -1
- package/lib/cjs/ui/widget/ConfirmMessageDialog.js +31 -8
- package/lib/cjs/ui/widget/ConfirmMessageDialog.js.map +1 -1
- package/lib/cjs/ui/widget/CustomParamEditDialog.d.ts +1 -1
- package/lib/cjs/ui/widget/CustomParamEditDialog.d.ts.map +1 -1
- package/lib/cjs/ui/widget/CustomParamEditDialog.js +34 -20
- package/lib/cjs/ui/widget/CustomParamEditDialog.js.map +1 -1
- package/lib/cjs/ui/widget/CustomParamEditDialog.scss +1 -2
- package/lib/cjs/ui/widget/CustomParamsSettings.d.ts.map +1 -1
- package/lib/cjs/ui/widget/CustomParamsSettings.js +42 -27
- package/lib/cjs/ui/widget/CustomParamsSettings.js.map +1 -1
- package/lib/cjs/ui/widget/CustomParamsSettings.scss +7 -9
- package/lib/cjs/ui/widget/FeatureInfoDataProvider.d.ts +3 -2
- package/lib/cjs/ui/widget/FeatureInfoDataProvider.d.ts.map +1 -1
- package/lib/cjs/ui/widget/FeatureInfoDataProvider.js +4 -2
- package/lib/cjs/ui/widget/FeatureInfoDataProvider.js.map +1 -1
- package/lib/cjs/ui/widget/FeatureInfoWidget.d.ts +1 -1
- package/lib/cjs/ui/widget/FeatureInfoWidget.d.ts.map +1 -1
- package/lib/cjs/ui/widget/FeatureInfoWidget.js +34 -15
- package/lib/cjs/ui/widget/FeatureInfoWidget.js.map +1 -1
- package/lib/cjs/ui/widget/MapLayerActionButtons.d.ts +1 -1
- package/lib/cjs/ui/widget/MapLayerActionButtons.d.ts.map +1 -1
- package/lib/cjs/ui/widget/MapLayerActionButtons.js +30 -17
- package/lib/cjs/ui/widget/MapLayerActionButtons.js.map +1 -1
- package/lib/cjs/ui/widget/MapLayerDroppable.d.ts +2 -2
- package/lib/cjs/ui/widget/MapLayerDroppable.d.ts.map +1 -1
- package/lib/cjs/ui/widget/MapLayerDroppable.js +64 -50
- package/lib/cjs/ui/widget/MapLayerDroppable.js.map +1 -1
- package/lib/cjs/ui/widget/MapLayerManager.d.ts +2 -2
- package/lib/cjs/ui/widget/MapLayerManager.d.ts.map +1 -1
- package/lib/cjs/ui/widget/MapLayerManager.js +158 -84
- package/lib/cjs/ui/widget/MapLayerManager.js.map +1 -1
- package/lib/cjs/ui/widget/MapLayerManager.scss +3 -6
- package/lib/cjs/ui/widget/MapLayerSettingsMenu.d.ts +2 -2
- package/lib/cjs/ui/widget/MapLayerSettingsMenu.d.ts.map +1 -1
- package/lib/cjs/ui/widget/MapLayerSettingsMenu.js +33 -13
- package/lib/cjs/ui/widget/MapLayerSettingsMenu.js.map +1 -1
- package/lib/cjs/ui/widget/MapLayerSettingsPopupButton.d.ts.map +1 -1
- package/lib/cjs/ui/widget/MapLayerSettingsPopupButton.js +36 -14
- package/lib/cjs/ui/widget/MapLayerSettingsPopupButton.js.map +1 -1
- package/lib/cjs/ui/widget/MapLayerSettingsPopupButton.scss +5 -5
- package/lib/cjs/ui/widget/MapLayersWidget.d.ts +1 -1
- package/lib/cjs/ui/widget/MapLayersWidget.d.ts.map +1 -1
- package/lib/cjs/ui/widget/MapLayersWidget.js +34 -11
- package/lib/cjs/ui/widget/MapLayersWidget.js.map +1 -1
- package/lib/cjs/ui/widget/MapManagerMapLayersHeader.d.ts.map +1 -1
- package/lib/cjs/ui/widget/MapManagerMapLayersHeader.js +5 -8
- package/lib/cjs/ui/widget/MapManagerMapLayersHeader.js.map +1 -1
- package/lib/cjs/ui/widget/MapManagerSettings.d.ts.map +1 -1
- package/lib/cjs/ui/widget/MapManagerSettings.js +55 -56
- package/lib/cjs/ui/widget/MapManagerSettings.js.map +1 -1
- package/lib/cjs/ui/widget/MapManagerSettings.scss +1 -1
- package/lib/cjs/ui/widget/MapSelectFeaturesDialog.d.ts +2 -2
- package/lib/cjs/ui/widget/MapSelectFeaturesDialog.d.ts.map +1 -1
- package/lib/cjs/ui/widget/MapSelectFeaturesDialog.js +33 -18
- package/lib/cjs/ui/widget/MapSelectFeaturesDialog.js.map +1 -1
- package/lib/cjs/ui/widget/MapSelectFeaturesDialog.scss +1 -3
- package/lib/cjs/ui/widget/MapUrlDialog.d.ts +4 -3
- package/lib/cjs/ui/widget/MapUrlDialog.d.ts.map +1 -1
- package/lib/cjs/ui/widget/MapUrlDialog.js +104 -81
- package/lib/cjs/ui/widget/MapUrlDialog.js.map +1 -1
- package/lib/cjs/ui/widget/MapUrlDialog.scss +6 -7
- package/lib/cjs/ui/widget/SelectApiKey.d.ts.map +1 -1
- package/lib/cjs/ui/widget/SelectApiKey.js +38 -10
- package/lib/cjs/ui/widget/SelectApiKey.js.map +1 -1
- package/lib/cjs/ui/widget/SelectCustomParam.d.ts.map +1 -1
- package/lib/cjs/ui/widget/SelectCustomParam.js +40 -11
- package/lib/cjs/ui/widget/SelectCustomParam.js.map +1 -1
- package/lib/cjs/ui/widget/SelectMapFormat.d.ts +3 -3
- package/lib/cjs/ui/widget/SelectMapFormat.d.ts.map +1 -1
- package/lib/cjs/ui/widget/SelectMapFormat.js +36 -16
- package/lib/cjs/ui/widget/SelectMapFormat.js.map +1 -1
- package/lib/cjs/ui/widget/SubLayersDataProvider.d.ts +2 -2
- package/lib/cjs/ui/widget/SubLayersDataProvider.d.ts.map +1 -1
- package/lib/cjs/ui/widget/SubLayersDataProvider.js +13 -9
- package/lib/cjs/ui/widget/SubLayersDataProvider.js.map +1 -1
- package/lib/cjs/ui/widget/SubLayersPopupButton.d.ts +1 -1
- package/lib/cjs/ui/widget/SubLayersPopupButton.d.ts.map +1 -1
- package/lib/cjs/ui/widget/SubLayersPopupButton.js +30 -12
- package/lib/cjs/ui/widget/SubLayersPopupButton.js.map +1 -1
- package/lib/cjs/ui/widget/SubLayersTree.d.ts +2 -2
- package/lib/cjs/ui/widget/SubLayersTree.d.ts.map +1 -1
- package/lib/cjs/ui/widget/SubLayersTree.js +83 -45
- package/lib/cjs/ui/widget/SubLayersTree.js.map +1 -1
- package/lib/cjs/ui/widget/SubLayersTree.scss +4 -7
- package/lib/cjs/ui/widget/TransparencyPopupButton.d.ts.map +1 -1
- package/lib/cjs/ui/widget/TransparencyPopupButton.js +33 -16
- package/lib/cjs/ui/widget/TransparencyPopupButton.js.map +1 -1
- package/lib/cjs/ui/widget/TransparencyPopupButton.scss +1 -2
- package/lib/cjs/ui/widget/UserPreferencesStorageOptions.d.ts +1 -1
- package/lib/cjs/ui/widget/UserPreferencesStorageOptions.d.ts.map +1 -1
- package/lib/cjs/ui/widget/UserPreferencesStorageOptions.js +2 -8
- package/lib/cjs/ui/widget/UserPreferencesStorageOptions.js.map +1 -1
- package/lib/esm/BrowserStorage.d.ts.map +1 -1
- package/lib/esm/BrowserStorage.js +23 -13
- package/lib/esm/BrowserStorage.js.map +1 -1
- package/lib/esm/CustomParamUtils.d.ts +1 -1
- package/lib/esm/CustomParamUtils.d.ts.map +1 -1
- package/lib/esm/CustomParamUtils.js +6 -3
- package/lib/esm/CustomParamUtils.js.map +1 -1
- package/lib/esm/CustomParamsMappingStorage.d.ts +1 -1
- package/lib/esm/CustomParamsMappingStorage.d.ts.map +1 -1
- package/lib/esm/CustomParamsMappingStorage.js +3 -3
- package/lib/esm/CustomParamsMappingStorage.js.map +1 -1
- package/lib/esm/CustomParamsStorage.d.ts +1 -1
- package/lib/esm/CustomParamsStorage.d.ts.map +1 -1
- package/lib/esm/CustomParamsStorage.js +3 -3
- package/lib/esm/CustomParamsStorage.js.map +1 -1
- package/lib/esm/MapLayerPreferences.d.ts +2 -1
- package/lib/esm/MapLayerPreferences.d.ts.map +1 -1
- package/lib/esm/MapLayerPreferences.js +50 -25
- package/lib/esm/MapLayerPreferences.js.map +1 -1
- package/lib/esm/MapLayersActionIds.d.ts +5 -0
- package/lib/esm/MapLayersActionIds.d.ts.map +1 -0
- package/lib/esm/MapLayersActionIds.js +7 -0
- package/lib/esm/MapLayersActionIds.js.map +1 -0
- package/lib/esm/MapLayersPrefBrowserStorage.d.ts.map +1 -1
- package/lib/esm/MapLayersPrefBrowserStorage.js +4 -5
- package/lib/esm/MapLayersPrefBrowserStorage.js.map +1 -1
- package/lib/esm/PreferencesBrowserStorage.d.ts +17 -17
- package/lib/esm/PreferencesBrowserStorage.d.ts.map +1 -1
- package/lib/esm/PreferencesBrowserStorage.js +14 -14
- package/lib/esm/PreferencesBrowserStorage.js.map +1 -1
- package/lib/esm/map-layers.d.ts +1 -0
- package/lib/esm/map-layers.d.ts.map +1 -1
- package/lib/esm/map-layers.js +4 -3
- package/lib/esm/map-layers.js.map +1 -1
- package/lib/esm/mapLayers.d.ts +2 -2
- package/lib/esm/mapLayers.d.ts.map +1 -1
- package/lib/esm/mapLayers.js.map +1 -1
- package/lib/esm/public/locales/en/mapLayers.json +179 -184
- package/lib/esm/ui/FeatureInfoUiItemsProvider.d.ts +3 -4
- package/lib/esm/ui/FeatureInfoUiItemsProvider.d.ts.map +1 -1
- package/lib/esm/ui/FeatureInfoUiItemsProvider.js +48 -18
- package/lib/esm/ui/FeatureInfoUiItemsProvider.js.map +1 -1
- package/lib/esm/ui/Interfaces.d.ts +3 -3
- package/lib/esm/ui/Interfaces.d.ts.map +1 -1
- package/lib/esm/ui/Interfaces.js.map +1 -1
- package/lib/esm/ui/MapLayersUiItemsProvider.d.ts +3 -2
- package/lib/esm/ui/MapLayersUiItemsProvider.d.ts.map +1 -1
- package/lib/esm/ui/MapLayersUiItemsProvider.js +2 -6
- package/lib/esm/ui/MapLayersUiItemsProvider.js.map +1 -1
- package/lib/esm/ui/widget/AttachLayerPopupButton.d.ts.map +1 -1
- package/lib/esm/ui/widget/AttachLayerPopupButton.js +57 -45
- package/lib/esm/ui/widget/AttachLayerPopupButton.js.map +1 -1
- package/lib/esm/ui/widget/BasemapPanel.d.ts.map +1 -1
- package/lib/esm/ui/widget/BasemapPanel.js +19 -23
- package/lib/esm/ui/widget/BasemapPanel.js.map +1 -1
- package/lib/esm/ui/widget/BasemapPanel.scss +2 -4
- package/lib/esm/ui/widget/ConfirmMessageDialog.d.ts +1 -1
- package/lib/esm/ui/widget/ConfirmMessageDialog.d.ts.map +1 -1
- package/lib/esm/ui/widget/ConfirmMessageDialog.js +5 -5
- package/lib/esm/ui/widget/ConfirmMessageDialog.js.map +1 -1
- package/lib/esm/ui/widget/CustomParamEditDialog.d.ts +1 -1
- package/lib/esm/ui/widget/CustomParamEditDialog.d.ts.map +1 -1
- package/lib/esm/ui/widget/CustomParamEditDialog.js +9 -18
- package/lib/esm/ui/widget/CustomParamEditDialog.js.map +1 -1
- package/lib/esm/ui/widget/CustomParamEditDialog.scss +1 -2
- package/lib/esm/ui/widget/CustomParamsSettings.d.ts.map +1 -1
- package/lib/esm/ui/widget/CustomParamsSettings.js +17 -25
- package/lib/esm/ui/widget/CustomParamsSettings.js.map +1 -1
- package/lib/esm/ui/widget/CustomParamsSettings.scss +7 -9
- package/lib/esm/ui/widget/FeatureInfoDataProvider.d.ts +3 -2
- package/lib/esm/ui/widget/FeatureInfoDataProvider.d.ts.map +1 -1
- package/lib/esm/ui/widget/FeatureInfoDataProvider.js +4 -2
- package/lib/esm/ui/widget/FeatureInfoDataProvider.js.map +1 -1
- package/lib/esm/ui/widget/FeatureInfoWidget.d.ts +1 -1
- package/lib/esm/ui/widget/FeatureInfoWidget.d.ts.map +1 -1
- package/lib/esm/ui/widget/FeatureInfoWidget.js +10 -14
- package/lib/esm/ui/widget/FeatureInfoWidget.js.map +1 -1
- package/lib/esm/ui/widget/MapLayerActionButtons.d.ts +1 -1
- package/lib/esm/ui/widget/MapLayerActionButtons.d.ts.map +1 -1
- package/lib/esm/ui/widget/MapLayerActionButtons.js +6 -16
- package/lib/esm/ui/widget/MapLayerActionButtons.js.map +1 -1
- package/lib/esm/ui/widget/MapLayerDroppable.d.ts +2 -2
- package/lib/esm/ui/widget/MapLayerDroppable.d.ts.map +1 -1
- package/lib/esm/ui/widget/MapLayerDroppable.js +38 -47
- package/lib/esm/ui/widget/MapLayerDroppable.js.map +1 -1
- package/lib/esm/ui/widget/MapLayerManager.d.ts +2 -2
- package/lib/esm/ui/widget/MapLayerManager.d.ts.map +1 -1
- package/lib/esm/ui/widget/MapLayerManager.js +134 -83
- package/lib/esm/ui/widget/MapLayerManager.js.map +1 -1
- package/lib/esm/ui/widget/MapLayerManager.scss +3 -6
- package/lib/esm/ui/widget/MapLayerSettingsMenu.d.ts +2 -2
- package/lib/esm/ui/widget/MapLayerSettingsMenu.d.ts.map +1 -1
- package/lib/esm/ui/widget/MapLayerSettingsMenu.js +9 -12
- package/lib/esm/ui/widget/MapLayerSettingsMenu.js.map +1 -1
- package/lib/esm/ui/widget/MapLayerSettingsPopupButton.d.ts.map +1 -1
- package/lib/esm/ui/widget/MapLayerSettingsPopupButton.js +11 -12
- package/lib/esm/ui/widget/MapLayerSettingsPopupButton.js.map +1 -1
- package/lib/esm/ui/widget/MapLayerSettingsPopupButton.scss +5 -5
- package/lib/esm/ui/widget/MapLayersWidget.d.ts +1 -1
- package/lib/esm/ui/widget/MapLayersWidget.d.ts.map +1 -1
- package/lib/esm/ui/widget/MapLayersWidget.js +9 -9
- package/lib/esm/ui/widget/MapLayersWidget.js.map +1 -1
- package/lib/esm/ui/widget/MapManagerMapLayersHeader.d.ts.map +1 -1
- package/lib/esm/ui/widget/MapManagerMapLayersHeader.js +5 -8
- package/lib/esm/ui/widget/MapManagerMapLayersHeader.js.map +1 -1
- package/lib/esm/ui/widget/MapManagerSettings.d.ts.map +1 -1
- package/lib/esm/ui/widget/MapManagerSettings.js +29 -53
- package/lib/esm/ui/widget/MapManagerSettings.js.map +1 -1
- package/lib/esm/ui/widget/MapManagerSettings.scss +1 -1
- package/lib/esm/ui/widget/MapSelectFeaturesDialog.d.ts +2 -2
- package/lib/esm/ui/widget/MapSelectFeaturesDialog.d.ts.map +1 -1
- package/lib/esm/ui/widget/MapSelectFeaturesDialog.js +7 -15
- package/lib/esm/ui/widget/MapSelectFeaturesDialog.js.map +1 -1
- package/lib/esm/ui/widget/MapSelectFeaturesDialog.scss +1 -3
- package/lib/esm/ui/widget/MapUrlDialog.d.ts +4 -3
- package/lib/esm/ui/widget/MapUrlDialog.d.ts.map +1 -1
- package/lib/esm/ui/widget/MapUrlDialog.js +79 -79
- package/lib/esm/ui/widget/MapUrlDialog.js.map +1 -1
- package/lib/esm/ui/widget/MapUrlDialog.scss +6 -7
- package/lib/esm/ui/widget/SelectApiKey.d.ts.map +1 -1
- package/lib/esm/ui/widget/SelectApiKey.js +12 -7
- package/lib/esm/ui/widget/SelectApiKey.js.map +1 -1
- package/lib/esm/ui/widget/SelectCustomParam.d.ts.map +1 -1
- package/lib/esm/ui/widget/SelectCustomParam.js +14 -8
- package/lib/esm/ui/widget/SelectCustomParam.js.map +1 -1
- package/lib/esm/ui/widget/SelectMapFormat.d.ts +3 -3
- package/lib/esm/ui/widget/SelectMapFormat.d.ts.map +1 -1
- package/lib/esm/ui/widget/SelectMapFormat.js +11 -14
- package/lib/esm/ui/widget/SelectMapFormat.js.map +1 -1
- package/lib/esm/ui/widget/SubLayersDataProvider.d.ts +2 -2
- package/lib/esm/ui/widget/SubLayersDataProvider.d.ts.map +1 -1
- package/lib/esm/ui/widget/SubLayersDataProvider.js +13 -9
- package/lib/esm/ui/widget/SubLayersDataProvider.js.map +1 -1
- package/lib/esm/ui/widget/SubLayersPopupButton.d.ts +1 -1
- package/lib/esm/ui/widget/SubLayersPopupButton.d.ts.map +1 -1
- package/lib/esm/ui/widget/SubLayersPopupButton.js +6 -11
- package/lib/esm/ui/widget/SubLayersPopupButton.js.map +1 -1
- package/lib/esm/ui/widget/SubLayersTree.d.ts +2 -2
- package/lib/esm/ui/widget/SubLayersTree.d.ts.map +1 -1
- package/lib/esm/ui/widget/SubLayersTree.js +59 -44
- package/lib/esm/ui/widget/SubLayersTree.js.map +1 -1
- package/lib/esm/ui/widget/SubLayersTree.scss +4 -7
- package/lib/esm/ui/widget/TransparencyPopupButton.d.ts.map +1 -1
- package/lib/esm/ui/widget/TransparencyPopupButton.js +8 -14
- package/lib/esm/ui/widget/TransparencyPopupButton.js.map +1 -1
- package/lib/esm/ui/widget/TransparencyPopupButton.scss +1 -2
- package/lib/esm/ui/widget/UserPreferencesStorageOptions.d.ts +1 -1
- package/lib/esm/ui/widget/UserPreferencesStorageOptions.d.ts.map +1 -1
- package/lib/esm/ui/widget/UserPreferencesStorageOptions.js +2 -8
- package/lib/esm/ui/widget/UserPreferencesStorageOptions.js.map +1 -1
- package/lib/public/locales/en/mapLayers.json +179 -184
- package/package.json +9 -21
|
@@ -1,15 +1,39 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
7
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
26
|
exports.MapLayerManager = exports.useSourceMapContext = exports.SourceMapContext = exports.defaultBaseMapLayers = void 0;
|
|
27
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
28
|
+
/*---------------------------------------------------------------------------------------------
|
|
29
|
+
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
30
|
+
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
31
|
+
*--------------------------------------------------------------------------------------------*/
|
|
32
|
+
// cSpell:ignore droppable Sublayer Basemap
|
|
9
33
|
// the following quiet warning caused by react-beautiful-dnd package
|
|
10
34
|
/* eslint-disable @typescript-eslint/unbound-method */
|
|
11
35
|
require("./MapLayerManager.scss");
|
|
12
|
-
const React = require("react");
|
|
36
|
+
const React = __importStar(require("react"));
|
|
13
37
|
const react_beautiful_dnd_1 = require("react-beautiful-dnd");
|
|
14
38
|
const core_bentley_1 = require("@itwin/core-bentley");
|
|
15
39
|
const core_common_1 = require("@itwin/core-common");
|
|
@@ -24,6 +48,7 @@ const MapLayerActionButtons_1 = require("./MapLayerActionButtons");
|
|
|
24
48
|
const MapLayerDroppable_1 = require("./MapLayerDroppable");
|
|
25
49
|
const MapLayerSettingsPopupButton_1 = require("./MapLayerSettingsPopupButton");
|
|
26
50
|
const MapManagerMapLayersHeader_1 = require("./MapManagerMapLayersHeader");
|
|
51
|
+
const MapLayersActionIds_1 = require("../../MapLayersActionIds");
|
|
27
52
|
/** @internal */
|
|
28
53
|
exports.defaultBaseMapLayers = [
|
|
29
54
|
core_common_1.BaseMapLayerSettings.fromProvider(core_common_1.BackgroundMapProvider.fromJSON({ name: "BingProvider", type: core_common_1.BackgroundMapType.Aerial })),
|
|
@@ -32,6 +57,7 @@ exports.defaultBaseMapLayers = [
|
|
|
32
57
|
];
|
|
33
58
|
/** @internal */
|
|
34
59
|
exports.SourceMapContext = React.createContext({
|
|
60
|
+
// eslint-disable-line @typescript-eslint/naming-convention
|
|
35
61
|
sources: [],
|
|
36
62
|
loadingSources: false,
|
|
37
63
|
bases: [],
|
|
@@ -47,16 +73,17 @@ function getSubLayerProps(subLayerSettings) {
|
|
|
47
73
|
}
|
|
48
74
|
function getMapLayerSettingsFromViewport(viewport, getBackgroundMap, populateSubLayers = true) {
|
|
49
75
|
const displayStyle = viewport.displayStyle;
|
|
50
|
-
if (!displayStyle)
|
|
76
|
+
if (!displayStyle) {
|
|
51
77
|
return undefined;
|
|
78
|
+
}
|
|
52
79
|
const layers = new Array();
|
|
53
|
-
const displayStyleLayers =
|
|
80
|
+
const displayStyleLayers = getBackgroundMap ? displayStyle.settings.mapImagery.backgroundLayers : displayStyle.settings.mapImagery.overlayLayers;
|
|
54
81
|
for (let layerIndex = 0; layerIndex < displayStyleLayers.length; layerIndex++) {
|
|
55
82
|
const layerSettings = displayStyleLayers[layerIndex];
|
|
56
83
|
const isOverlay = !getBackgroundMap;
|
|
57
84
|
const layerProvider = viewport.getMapLayerImageryProvider({ index: layerIndex, isOverlay });
|
|
58
85
|
const treeVisibility = viewport.getMapLayerScaleRangeVisibility({ index: layerIndex, isOverlay });
|
|
59
|
-
const popSubLayers = populateSubLayers &&
|
|
86
|
+
const popSubLayers = populateSubLayers && layerSettings instanceof core_common_1.ImageMapLayerSettings;
|
|
60
87
|
layers.push({
|
|
61
88
|
visible: layerSettings.visible,
|
|
62
89
|
treeVisibility,
|
|
@@ -126,14 +153,17 @@ function MapLayerManager(props) {
|
|
|
126
153
|
React.useEffect(() => {
|
|
127
154
|
const handleScaleRangeVisibilityChanged = (layerIndexes) => {
|
|
128
155
|
const updateLayers = (array) => {
|
|
129
|
-
if (array === undefined)
|
|
156
|
+
if (array === undefined) {
|
|
130
157
|
return undefined;
|
|
158
|
+
}
|
|
131
159
|
return array.map((curStyledLayer) => {
|
|
132
160
|
const foundScaleRangeVisibility = layerIndexes.find((layerIdx) => layerIdx.index === curStyledLayer.layerIndex && layerIdx.isOverlay === curStyledLayer.isOverlay);
|
|
133
|
-
if (undefined === foundScaleRangeVisibility)
|
|
161
|
+
if (undefined === foundScaleRangeVisibility) {
|
|
134
162
|
return curStyledLayer;
|
|
135
|
-
|
|
163
|
+
}
|
|
164
|
+
else {
|
|
136
165
|
return { ...curStyledLayer, treeVisibility: foundScaleRangeVisibility.visibility };
|
|
166
|
+
}
|
|
137
167
|
});
|
|
138
168
|
};
|
|
139
169
|
setBackgroundMapLayers(updateLayers(backgroundMapLayers));
|
|
@@ -144,10 +174,11 @@ function MapLayerManager(props) {
|
|
|
144
174
|
// Setup onMapImageryChanged events listening.
|
|
145
175
|
React.useEffect(() => {
|
|
146
176
|
const handleMapImageryChanged = (args) => {
|
|
147
|
-
if (args.backgroundLayers.length !== (backgroundMapLayers ? backgroundMapLayers.length : 0)
|
|
148
|
-
|
|
177
|
+
if (args.backgroundLayers.length !== (backgroundMapLayers ? backgroundMapLayers.length : 0) ||
|
|
178
|
+
args.overlayLayers.length !== (overlayMapLayers ? overlayMapLayers.length : 0)) {
|
|
149
179
|
loadMapLayerSettingsFromViewport(activeViewport);
|
|
150
180
|
}
|
|
181
|
+
core_frontend_1.IModelApp.toolAdmin.dispatchUiSyncEvent(MapLayersActionIds_1.MapLayersSyncUiEventId.MapImageryChanged);
|
|
151
182
|
};
|
|
152
183
|
return activeViewport?.displayStyle.settings.onMapImageryChanged.addListener(handleMapImageryChanged);
|
|
153
184
|
}, [activeViewport, backgroundMapLayers, loadMapLayerSettingsFromViewport, overlayMapLayers]);
|
|
@@ -156,11 +187,19 @@ function MapLayerManager(props) {
|
|
|
156
187
|
}, [loadMapLayerSettingsFromViewport, activeViewport]);
|
|
157
188
|
// Triggered whenever a provider status change
|
|
158
189
|
React.useEffect(() => {
|
|
159
|
-
backgroundMapLayers?.forEach((layer) => {
|
|
160
|
-
|
|
190
|
+
backgroundMapLayers?.forEach((layer) => {
|
|
191
|
+
layer.provider?.onStatusChanged.addListener(handleProviderStatusChanged);
|
|
192
|
+
});
|
|
193
|
+
overlayMapLayers?.forEach((layer) => {
|
|
194
|
+
layer.provider?.onStatusChanged.addListener(handleProviderStatusChanged);
|
|
195
|
+
});
|
|
161
196
|
return () => {
|
|
162
|
-
backgroundMapLayers?.forEach((layer) => {
|
|
163
|
-
|
|
197
|
+
backgroundMapLayers?.forEach((layer) => {
|
|
198
|
+
layer.provider?.onStatusChanged.removeListener(handleProviderStatusChanged);
|
|
199
|
+
});
|
|
200
|
+
overlayMapLayers?.forEach((layer) => {
|
|
201
|
+
layer.provider?.onStatusChanged.removeListener(handleProviderStatusChanged);
|
|
202
|
+
});
|
|
164
203
|
};
|
|
165
204
|
}, [backgroundMapLayers, overlayMapLayers, activeViewport, loadMapLayerSettingsFromViewport, handleProviderStatusChanged]);
|
|
166
205
|
// Monitor viewport updates, and refresh the widget accordingly.
|
|
@@ -174,7 +213,7 @@ function MapLayerManager(props) {
|
|
|
174
213
|
React.useEffect(() => {
|
|
175
214
|
async function fetchSources() {
|
|
176
215
|
let preferenceSources = [];
|
|
177
|
-
const sourceLayers = await core_frontend_1.MapLayerSources.create(undefined,
|
|
216
|
+
const sourceLayers = await core_frontend_1.MapLayerSources.create(undefined, fetchPublicMapLayerSources && !hideExternalMapLayersSection);
|
|
178
217
|
const iModel = activeViewport.iModel;
|
|
179
218
|
try {
|
|
180
219
|
if (iModel?.iTwinId !== undefined) {
|
|
@@ -206,30 +245,33 @@ function MapLayerManager(props) {
|
|
|
206
245
|
setMapSources(sources);
|
|
207
246
|
}
|
|
208
247
|
setLoadingSources(true);
|
|
209
|
-
fetchSources()
|
|
248
|
+
fetchSources()
|
|
249
|
+
.then(() => {
|
|
210
250
|
if (isMounted.current) {
|
|
211
251
|
setLoadingSources(false);
|
|
212
252
|
}
|
|
213
|
-
})
|
|
253
|
+
})
|
|
254
|
+
.catch(() => {
|
|
214
255
|
if (isMounted.current) {
|
|
215
256
|
setLoadingSources(false);
|
|
216
257
|
}
|
|
217
258
|
});
|
|
218
259
|
}, [setMapSources, fetchPublicMapLayerSources, hideExternalMapLayersSection, activeViewport.iModel]);
|
|
219
260
|
/**
|
|
220
|
-
|
|
221
|
-
|
|
261
|
+
* Handle change events in the MapLayerPreferences
|
|
262
|
+
*/
|
|
222
263
|
React.useEffect(() => {
|
|
223
264
|
const handleLayerSourceChange = async (changeType, oldSource, newSource) => {
|
|
224
|
-
const removeSource =
|
|
225
|
-
const addSource =
|
|
226
|
-
let tmpSources =
|
|
265
|
+
const removeSource = changeType === MapLayerPreferences_1.MapLayerSourceChangeType.Replaced || changeType === MapLayerPreferences_1.MapLayerSourceChangeType.Removed;
|
|
266
|
+
const addSource = changeType === MapLayerPreferences_1.MapLayerSourceChangeType.Replaced || changeType === MapLayerPreferences_1.MapLayerSourceChangeType.Added;
|
|
267
|
+
let tmpSources = mapSources ? [...mapSources] : undefined;
|
|
227
268
|
if (removeSource) {
|
|
228
269
|
if (oldSource && tmpSources) {
|
|
229
270
|
tmpSources = tmpSources.filter((source) => source.name !== oldSource.name);
|
|
230
271
|
// We don't update state in case of replacement... it will be done when the source is re-added right after.
|
|
231
|
-
if (changeType !== MapLayerPreferences_1.MapLayerSourceChangeType.Replaced)
|
|
272
|
+
if (changeType !== MapLayerPreferences_1.MapLayerSourceChangeType.Replaced) {
|
|
232
273
|
setMapSources(tmpSources);
|
|
274
|
+
}
|
|
233
275
|
}
|
|
234
276
|
}
|
|
235
277
|
if (addSource) {
|
|
@@ -250,22 +292,27 @@ function MapLayerManager(props) {
|
|
|
250
292
|
return activeViewport?.onDisplayStyleChanged.addListener(handleDisplayStyleChange);
|
|
251
293
|
}, [activeViewport, loadMapLayerSettingsFromViewport]);
|
|
252
294
|
const handleOnMenuItemSelection = React.useCallback((action, mapLayerSettings) => {
|
|
253
|
-
if (!activeViewport || !activeViewport.displayStyle)
|
|
295
|
+
if (!activeViewport || !activeViewport.displayStyle) {
|
|
254
296
|
return;
|
|
297
|
+
}
|
|
255
298
|
const indexInDisplayStyle = activeViewport.displayStyle.findMapLayerIndexByNameAndSource(mapLayerSettings.name, mapLayerSettings.source, mapLayerSettings.isOverlay);
|
|
256
|
-
if (indexInDisplayStyle < 0)
|
|
299
|
+
if (indexInDisplayStyle < 0) {
|
|
257
300
|
return;
|
|
301
|
+
}
|
|
258
302
|
switch (action) {
|
|
259
303
|
case "delete":
|
|
260
304
|
activeViewport.displayStyle.detachMapLayerByIndex({ index: indexInDisplayStyle, isOverlay: mapLayerSettings.isOverlay });
|
|
261
305
|
break;
|
|
262
306
|
case "zoom-to-layer":
|
|
263
|
-
activeViewport
|
|
307
|
+
activeViewport
|
|
308
|
+
.viewMapLayerRange({ index: indexInDisplayStyle, isOverlay: mapLayerSettings.isOverlay }, activeViewport)
|
|
309
|
+
.then((status) => {
|
|
264
310
|
if (!status) {
|
|
265
311
|
const msg = mapLayers_1.MapLayersUI.localization.getLocalizedString("mapLayers:Messages.NoRangeDefined");
|
|
266
312
|
core_frontend_1.IModelApp.notifications.outputMessage(new core_frontend_1.NotifyMessageDetails(core_frontend_1.OutputMessagePriority.Error, `${msg} [${mapLayerSettings.name}]`));
|
|
267
313
|
}
|
|
268
|
-
})
|
|
314
|
+
})
|
|
315
|
+
.catch((_error) => { });
|
|
269
316
|
break;
|
|
270
317
|
}
|
|
271
318
|
// force UI to update
|
|
@@ -289,38 +336,49 @@ function MapLayerManager(props) {
|
|
|
289
336
|
const newState = !backgroundMapVisible;
|
|
290
337
|
activeViewport.viewFlags = activeViewport.viewFlags.with("backgroundMap", newState);
|
|
291
338
|
setBackgroundMapVisible(newState);
|
|
339
|
+
core_frontend_1.IModelApp.toolAdmin.dispatchUiSyncEvent(MapLayersActionIds_1.MapLayersSyncUiEventId.MapImageryChanged);
|
|
292
340
|
}
|
|
293
341
|
}, [backgroundMapVisible, setBackgroundMapVisible, activeViewport]);
|
|
294
342
|
const handleOnMapLayerDragEnd = React.useCallback((result /* , _provided: ResponderProvided*/) => {
|
|
295
343
|
const { destination, source } = result;
|
|
296
|
-
if (!destination)
|
|
344
|
+
if (!destination) {
|
|
345
|
+
// dropped outside of list
|
|
297
346
|
return;
|
|
347
|
+
}
|
|
298
348
|
// item was not moved
|
|
299
|
-
if (destination.droppableId === source.droppableId && destination.index === source.index)
|
|
349
|
+
if (destination.droppableId === source.droppableId && destination.index === source.index) {
|
|
300
350
|
return;
|
|
351
|
+
}
|
|
301
352
|
let fromMapLayer;
|
|
302
|
-
if (source.droppableId === "overlayMapLayers" && overlayMapLayers)
|
|
353
|
+
if (source.droppableId === "overlayMapLayers" && overlayMapLayers) {
|
|
303
354
|
fromMapLayer = overlayMapLayers[source.index];
|
|
304
|
-
|
|
355
|
+
}
|
|
356
|
+
else if (source.droppableId === "backgroundMapLayers" && backgroundMapLayers) {
|
|
305
357
|
fromMapLayer = backgroundMapLayers[source.index];
|
|
306
|
-
|
|
358
|
+
}
|
|
359
|
+
if (!fromMapLayer || !activeViewport) {
|
|
307
360
|
return;
|
|
361
|
+
}
|
|
308
362
|
const displayStyle = activeViewport.displayStyle;
|
|
309
363
|
let toMapLayer;
|
|
310
364
|
let toIndexInDisplayStyle = -1;
|
|
311
365
|
// If destination.index is undefined then the user dropped the map at the end of list of maps. To get the "actual" index in the style, look up index in style by name.
|
|
312
366
|
// We need to do this because the order of layers in UI are reversed so higher layers appear above lower layers.
|
|
313
367
|
if (undefined !== destination.index) {
|
|
314
|
-
if (destination.droppableId === "overlayMapLayers" && overlayMapLayers)
|
|
368
|
+
if (destination.droppableId === "overlayMapLayers" && overlayMapLayers) {
|
|
315
369
|
toMapLayer = overlayMapLayers[destination.index];
|
|
316
|
-
|
|
370
|
+
}
|
|
371
|
+
else if (destination.droppableId === "backgroundMapLayers" && backgroundMapLayers) {
|
|
317
372
|
toMapLayer = backgroundMapLayers[destination.index];
|
|
318
|
-
|
|
373
|
+
}
|
|
374
|
+
if (toMapLayer) {
|
|
319
375
|
toIndexInDisplayStyle = displayStyle.findMapLayerIndexByNameAndSource(toMapLayer.name, toMapLayer.source, toMapLayer.isOverlay);
|
|
376
|
+
}
|
|
320
377
|
}
|
|
321
378
|
const fromIndexInDisplayStyle = displayStyle.findMapLayerIndexByNameAndSource(fromMapLayer.name, fromMapLayer.source, fromMapLayer.isOverlay);
|
|
322
|
-
if (fromIndexInDisplayStyle < 0)
|
|
379
|
+
if (fromIndexInDisplayStyle < 0) {
|
|
323
380
|
return;
|
|
381
|
+
}
|
|
324
382
|
if (destination.droppableId !== source.droppableId) {
|
|
325
383
|
// see if we moved from "overlayMapLayers" to "backgroundMapLayers" or vice-versa
|
|
326
384
|
const settings = activeViewport.displayStyle.mapLayerAtIndex({ index: fromIndexInDisplayStyle, isOverlay: fromMapLayer.isOverlay });
|
|
@@ -342,8 +400,9 @@ function MapLayerManager(props) {
|
|
|
342
400
|
}
|
|
343
401
|
else {
|
|
344
402
|
if (toMapLayer) {
|
|
345
|
-
if (toIndexInDisplayStyle !== -1)
|
|
403
|
+
if (toIndexInDisplayStyle !== -1) {
|
|
346
404
|
displayStyle.moveMapLayerToIndex(fromIndexInDisplayStyle, toIndexInDisplayStyle, toMapLayer.isOverlay);
|
|
405
|
+
}
|
|
347
406
|
}
|
|
348
407
|
}
|
|
349
408
|
}
|
|
@@ -353,77 +412,105 @@ function MapLayerManager(props) {
|
|
|
353
412
|
loadMapLayerSettingsFromViewport(activeViewport);
|
|
354
413
|
}, [loadMapLayerSettingsFromViewport, activeViewport, overlayMapLayers, backgroundMapLayers]);
|
|
355
414
|
const handleRefreshFromStyle = React.useCallback(() => {
|
|
356
|
-
if (activeViewport)
|
|
415
|
+
if (activeViewport) {
|
|
357
416
|
loadMapLayerSettingsFromViewport(activeViewport);
|
|
417
|
+
}
|
|
358
418
|
}, [activeViewport, loadMapLayerSettingsFromViewport]);
|
|
359
419
|
const handleItemSelected = React.useCallback((isOverlay, _index) => {
|
|
360
420
|
if (isOverlay) {
|
|
361
|
-
if (overlayMapLayers)
|
|
421
|
+
if (overlayMapLayers) {
|
|
362
422
|
setOverlayMapLayers([...overlayMapLayers]);
|
|
423
|
+
}
|
|
363
424
|
}
|
|
364
425
|
else {
|
|
365
|
-
if (backgroundMapLayers)
|
|
426
|
+
if (backgroundMapLayers) {
|
|
366
427
|
setBackgroundMapLayers([...backgroundMapLayers]);
|
|
428
|
+
}
|
|
367
429
|
}
|
|
368
430
|
}, [backgroundMapLayers, overlayMapLayers]);
|
|
369
431
|
const hasItemSelected = React.useCallback((isOverlay) => {
|
|
370
|
-
const layerList =
|
|
371
|
-
if (!layerList)
|
|
432
|
+
const layerList = isOverlay ? overlayMapLayers : backgroundMapLayers;
|
|
433
|
+
if (!layerList) {
|
|
372
434
|
return false;
|
|
435
|
+
}
|
|
373
436
|
return undefined !== layerList?.find((value) => value.selected === true);
|
|
374
437
|
}, [backgroundMapLayers, overlayMapLayers]);
|
|
375
438
|
const changeLayerVisibility = React.useCallback((visible, index, isOverlay) => {
|
|
376
439
|
activeViewport.displayStyle.changeMapLayerProps({ visible }, { index, isOverlay });
|
|
377
440
|
}, [activeViewport]);
|
|
378
441
|
const changeAllLayerVisibility = React.useCallback(async (visible, isOverlay) => {
|
|
379
|
-
if (isOverlay === undefined || !isOverlay)
|
|
442
|
+
if (isOverlay === undefined || !isOverlay) {
|
|
380
443
|
backgroundMapLayers?.forEach((layer) => changeLayerVisibility(visible, layer.layerIndex, layer.isOverlay));
|
|
381
|
-
|
|
444
|
+
}
|
|
445
|
+
if (isOverlay === undefined || isOverlay) {
|
|
382
446
|
overlayMapLayers?.forEach((layer) => changeLayerVisibility(visible, layer.layerIndex, layer.isOverlay));
|
|
447
|
+
}
|
|
383
448
|
}, [backgroundMapLayers, overlayMapLayers, changeLayerVisibility]);
|
|
384
449
|
const invertAllLayerVisibility = React.useCallback(async (isOverlay) => {
|
|
385
|
-
if (isOverlay === undefined || !isOverlay)
|
|
450
|
+
if (isOverlay === undefined || !isOverlay) {
|
|
386
451
|
backgroundMapLayers?.forEach((layer) => changeLayerVisibility(!layer.visible, layer.layerIndex, layer.isOverlay));
|
|
387
|
-
|
|
452
|
+
}
|
|
453
|
+
if (isOverlay === undefined || isOverlay) {
|
|
388
454
|
overlayMapLayers?.forEach((layer) => changeLayerVisibility(!layer.visible, layer.layerIndex, layer.isOverlay));
|
|
455
|
+
}
|
|
389
456
|
}, [backgroundMapLayers, overlayMapLayers, changeLayerVisibility]);
|
|
390
457
|
const detachSelectedLayers = React.useCallback(async (isOverlay) => {
|
|
391
|
-
const layerList =
|
|
392
|
-
if (!layerList || layerList.length === 0)
|
|
458
|
+
const layerList = isOverlay ? overlayMapLayers : backgroundMapLayers;
|
|
459
|
+
if (!layerList || layerList.length === 0) {
|
|
393
460
|
return;
|
|
461
|
+
}
|
|
394
462
|
for (let i = 0; i < layerList.length; i++) {
|
|
395
463
|
if (layerList[i].selected) {
|
|
396
|
-
const index =
|
|
464
|
+
const index = layerList.length - 1 - i; // Layers are reverted order is display style
|
|
397
465
|
activeViewport.displayStyle.detachMapLayerByIndex({ isOverlay, index });
|
|
398
466
|
}
|
|
399
467
|
}
|
|
400
468
|
}, [activeViewport, overlayMapLayers, backgroundMapLayers]);
|
|
401
469
|
const selectAllLayers = React.useCallback(async (isOverlay) => {
|
|
402
|
-
if (!overlayMapLayers || !backgroundMapLayers)
|
|
470
|
+
if (!overlayMapLayers || !backgroundMapLayers) {
|
|
403
471
|
return;
|
|
404
|
-
|
|
472
|
+
}
|
|
473
|
+
const layerList = isOverlay ? [...overlayMapLayers] : [...backgroundMapLayers];
|
|
405
474
|
const hasCheckedLayer = undefined !== layerList?.find((value) => value.selected === true);
|
|
406
|
-
layerList.forEach((layer) => {
|
|
407
|
-
|
|
475
|
+
layerList.forEach((layer) => {
|
|
476
|
+
layer.selected = !hasCheckedLayer;
|
|
477
|
+
});
|
|
478
|
+
if (isOverlay) {
|
|
408
479
|
setOverlayMapLayers(layerList);
|
|
409
|
-
|
|
480
|
+
}
|
|
481
|
+
else {
|
|
410
482
|
setBackgroundMapLayers(layerList);
|
|
483
|
+
}
|
|
411
484
|
}, [overlayMapLayers, backgroundMapLayers]);
|
|
412
485
|
const renderMapLayersList = React.useCallback((options) => {
|
|
413
|
-
if (!overlayMapLayers || !backgroundMapLayers)
|
|
414
|
-
return
|
|
486
|
+
if (!overlayMapLayers || !backgroundMapLayers) {
|
|
487
|
+
return (0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, {});
|
|
488
|
+
}
|
|
415
489
|
const { isOverlay } = options;
|
|
416
|
-
const layerList =
|
|
417
|
-
const label =
|
|
418
|
-
return (
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
490
|
+
const layerList = isOverlay ? [...overlayMapLayers] : [...backgroundMapLayers];
|
|
491
|
+
const label = isOverlay ? overlaysLabel : underlaysLabel;
|
|
492
|
+
return ((0, jsx_runtime_1.jsxs)("div", { className: "map-manager-layer-wrapper", "data-testid": "map-manager-layer-section", children: [(0, jsx_runtime_1.jsx)(MapManagerMapLayersHeader_1.MapManagerLayersHeader, { label: label, isOverlay: isOverlay, disabled: !backgroundMapVisible }), layerList && layerList.length > 0 && ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: (0, jsx_runtime_1.jsx)(MapLayerActionButtons_1.MapLayerActionButtons, { disabled: !backgroundMapVisible, disabledUnlink: !hasItemSelected(isOverlay), hideAll: async () => changeAllLayerVisibility(false, isOverlay), showAll: async () => changeAllLayerVisibility(true, isOverlay), invert: async () => invertAllLayerVisibility(isOverlay), selectAll: async () => selectAllLayers(isOverlay), unlink: async () => detachSelectedLayers(isOverlay), checked: hasItemSelected(isOverlay) }) })), (0, jsx_runtime_1.jsx)(MapLayerDroppable_1.MapLayerDroppable, { disabled: !backgroundMapVisible, isOverlay: isOverlay, layersList: layerList, mapLayerOptions: props.mapLayerOptions, getContainerForClone: props.getContainerForClone, activeViewport: props.activeViewport, onMenuItemSelected: handleOnMenuItemSelection, onItemVisibilityToggleClicked: handleLayerVisibilityChange, onItemSelected: handleItemSelected, onItemEdited: handleRefreshFromStyle })] }));
|
|
493
|
+
}, [
|
|
494
|
+
backgroundMapLayers,
|
|
495
|
+
backgroundMapVisible,
|
|
496
|
+
changeAllLayerVisibility,
|
|
497
|
+
detachSelectedLayers,
|
|
498
|
+
handleItemSelected,
|
|
499
|
+
handleLayerVisibilityChange,
|
|
500
|
+
handleOnMenuItemSelection,
|
|
501
|
+
handleRefreshFromStyle,
|
|
502
|
+
hasItemSelected,
|
|
503
|
+
invertAllLayerVisibility,
|
|
504
|
+
overlayMapLayers,
|
|
505
|
+
overlaysLabel,
|
|
506
|
+
props.activeViewport,
|
|
507
|
+
props.getContainerForClone,
|
|
508
|
+
props.mapLayerOptions,
|
|
509
|
+
selectAllLayers,
|
|
510
|
+
underlaysLabel,
|
|
511
|
+
]);
|
|
425
512
|
const [baseMapPanelLabel] = React.useState(mapLayers_1.MapLayersUI.localization.getLocalizedString("mapLayers:Basemap.BaseMapPanelTitle"));
|
|
426
|
-
return (
|
|
513
|
+
return ((0, jsx_runtime_1.jsxs)(exports.SourceMapContext.Provider, { value: {
|
|
427
514
|
activeViewport,
|
|
428
515
|
loadingSources,
|
|
429
516
|
sources: mapSources ? mapSources : [],
|
|
@@ -432,20 +519,7 @@ function MapLayerManager(props) {
|
|
|
432
519
|
backgroundLayers: backgroundMapLayers,
|
|
433
520
|
overlayLayers: overlayMapLayers,
|
|
434
521
|
mapLayerOptions,
|
|
435
|
-
} },
|
|
436
|
-
React.createElement("div", { className: "map-manager-top-header" },
|
|
437
|
-
React.createElement("span", { className: "map-manager-header-label" }, baseMapPanelLabel),
|
|
438
|
-
React.createElement("div", { className: "map-manager-header-buttons-group" },
|
|
439
|
-
React.createElement(itwinui_react_1.ToggleSwitch, { className: "map-manager-toggle", checked: backgroundMapVisible, onChange: handleMapLayersToggle }),
|
|
440
|
-
React.createElement(MapLayerSettingsPopupButton_1.MapLayerSettingsPopupButton, { disabled: !backgroundMapVisible }))),
|
|
441
|
-
React.createElement("div", { className: "map-manager-container" },
|
|
442
|
-
React.createElement("div", { className: "map-manager-basemap" },
|
|
443
|
-
React.createElement(BasemapPanel_1.BasemapPanel, { disabled: !backgroundMapVisible })),
|
|
444
|
-
!hideExternalMapLayersSection &&
|
|
445
|
-
React.createElement("div", null,
|
|
446
|
-
React.createElement(react_beautiful_dnd_1.DragDropContext, { onDragEnd: handleOnMapLayerDragEnd },
|
|
447
|
-
renderMapLayersList({ isOverlay: false }),
|
|
448
|
-
renderMapLayersList({ isOverlay: true }))))));
|
|
522
|
+
}, children: [(0, jsx_runtime_1.jsxs)("div", { className: "map-manager-top-header", children: [(0, jsx_runtime_1.jsx)("span", { className: "map-manager-header-label", children: baseMapPanelLabel }), (0, jsx_runtime_1.jsxs)("div", { className: "map-manager-header-buttons-group", children: [(0, jsx_runtime_1.jsx)(itwinui_react_1.ToggleSwitch, { className: "map-manager-toggle", checked: backgroundMapVisible, onChange: handleMapLayersToggle }), (0, jsx_runtime_1.jsx)(MapLayerSettingsPopupButton_1.MapLayerSettingsPopupButton, { disabled: !backgroundMapVisible })] })] }), (0, jsx_runtime_1.jsxs)("div", { className: "map-manager-container", children: [(0, jsx_runtime_1.jsx)("div", { className: "map-manager-basemap", children: (0, jsx_runtime_1.jsx)(BasemapPanel_1.BasemapPanel, { disabled: !backgroundMapVisible }) }), !hideExternalMapLayersSection && ((0, jsx_runtime_1.jsx)("div", { children: (0, jsx_runtime_1.jsxs)(react_beautiful_dnd_1.DragDropContext, { onDragEnd: handleOnMapLayerDragEnd, children: [renderMapLayersList({ isOverlay: false }), renderMapLayersList({ isOverlay: true })] }) }))] })] }));
|
|
449
523
|
}
|
|
450
524
|
exports.MapLayerManager = MapLayerManager;
|
|
451
525
|
//# sourceMappingURL=MapLayerManager.js.map
|