@kalisio/kdk 1.6.0 → 1.7.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/.travis.test.sh +1 -1
- package/CHANGELOG.md +63 -13
- package/extras/tours/map/catalog-panel.js +61 -10
- package/extras/tours/map/create-view.js +25 -0
- package/extras/tours/map/fab.js +10 -1
- package/extras/tours/map/navigation-bar.js +7 -9
- package/lib/core/api/application.js +9 -1
- package/lib/core/api/application.js.map +1 -1
- package/lib/core/client/components/chart/KChart.vue +115 -0
- package/lib/core/client/components/chart/KStatsChart.vue +76 -0
- package/lib/core/client/components/chart/index.js +20 -0
- package/lib/core/client/components/chart/index.js.map +1 -0
- package/lib/core/client/components/collection/KFilter.vue +6 -0
- package/lib/core/client/components/collection/KHistoryEntry.vue +1 -1
- package/lib/core/client/components/collection/KItem.vue +4 -4
- package/lib/core/client/components/form/KChipsField.vue +4 -4
- package/lib/core/client/components/form/KView.vue +1 -1
- package/lib/core/client/components/frame/KAction.vue +40 -5
- package/lib/core/client/components/frame/KBlock.vue +7 -7
- package/lib/core/client/components/frame/KContent.vue +1 -1
- package/lib/core/client/components/frame/KOpener.vue +1 -1
- package/lib/core/client/components/frame/KPanel.vue +8 -7
- package/lib/core/client/components/frame/KPopupAction.vue +6 -0
- package/lib/core/client/components/frame/KScreen.vue +1 -1
- package/lib/core/client/components/frame/KStamp.vue +4 -2
- package/lib/core/client/components/frame/index.js +1 -6
- package/lib/core/client/components/frame/index.js.map +1 -1
- package/lib/core/client/components/input/KIconChooser.vue +5 -2
- package/lib/core/client/components/input/KPalette.vue +1 -1
- package/lib/core/client/components/input/index.js +14 -4
- package/lib/core/client/components/input/index.js.map +1 -1
- package/lib/core/client/components/layout/KFab.vue +1 -1
- package/lib/core/client/components/layout/KLayout.vue +10 -2
- package/lib/core/client/components/layout/KPage.vue +19 -18
- package/lib/core/client/components/layout/KTour.vue +5 -3
- package/lib/core/client/components/layout/KWindow.vue +211 -59
- package/lib/core/client/components/media/KMediaBrowser.vue +6 -6
- package/lib/core/client/components/menu/KMenu.vue +13 -5
- package/lib/core/client/components/menu/KRadialFab.vue +22 -24
- package/lib/core/client/components/menu/KRadialFabItem.vue +17 -18
- package/lib/core/client/components/team/KGroupsActivity.vue +1 -1
- package/lib/core/client/components/team/KJoinGroup.vue +2 -2
- package/lib/core/client/components/time/KAbsoluteTimeRange.vue +190 -0
- package/lib/core/client/components/time/KRelativeTimeRanges.vue +192 -0
- package/lib/core/client/components/time/index.js +20 -0
- package/lib/core/client/components/time/index.js.map +1 -0
- package/lib/core/client/i18n/core_en.json +35 -12
- package/lib/core/client/i18n/core_fr.json +36 -13
- package/lib/core/client/index.js +1 -1
- package/lib/core/client/index.js.map +1 -1
- package/lib/core/client/mixins/mixin.base-collection.js +11 -1
- package/lib/core/client/mixins/mixin.base-collection.js.map +1 -1
- package/lib/core/client/mixins/mixin.base-widget.js +25 -13
- package/lib/core/client/mixins/mixin.base-widget.js.map +1 -1
- package/lib/core/client/services/index.js +2 -1
- package/lib/core/client/services/index.js.map +1 -1
- package/lib/core/client/services/local-settings.service.js +4 -0
- package/lib/core/client/services/local-settings.service.js.map +1 -1
- package/lib/core/client/time.js +25 -15
- package/lib/core/client/time.js.map +1 -1
- package/lib/core/client/units.js +12 -0
- package/lib/core/client/units.js.map +1 -1
- package/lib/core/client/utils.js +11 -0
- package/lib/core/client/utils.js.map +1 -1
- package/lib/core/common/schemas/settings.update.json +14 -4
- package/lib/map/api/hooks/hooks.catalog.js +20 -0
- package/lib/map/api/hooks/hooks.catalog.js.map +1 -1
- package/lib/map/api/models/catalog.model.mongodb.js +6 -1
- package/lib/map/api/models/catalog.model.mongodb.js.map +1 -1
- package/lib/map/api/models/features.model.mongodb.js +5 -0
- package/lib/map/api/models/features.model.mongodb.js.map +1 -1
- package/lib/map/api/services/catalog/catalog.hooks.js +3 -1
- package/lib/map/api/services/catalog/catalog.hooks.js.map +1 -1
- package/lib/map/client/components/KColorLegend.vue +22 -21
- package/lib/map/client/components/KFeaturesChart.vue +81 -110
- package/lib/map/client/components/KLayerStyleForm.vue +119 -47
- package/lib/map/client/components/KLevelSlider.vue +30 -29
- package/lib/map/client/components/KLocationMap.vue +2 -2
- package/lib/map/client/components/KMeasureTool.vue +30 -6
- package/lib/map/client/components/KPositionIndicator.vue +4 -4
- package/lib/map/client/components/KTimeline.vue +25 -27
- package/lib/map/client/components/KTimezoneMap.vue +156 -0
- package/lib/map/client/components/KUrlLegend.vue +11 -10
- package/lib/map/client/components/catalog/KBaseLayersSelector.vue +1 -1
- package/lib/map/client/components/catalog/KCatalogLayersPanel.vue +56 -0
- package/lib/map/client/components/catalog/KCreateView.vue +91 -0
- package/lib/map/client/components/catalog/KLayerCategories.vue +2 -1
- package/lib/map/client/components/catalog/{KCatalog.vue → KLayersPanel.vue} +19 -37
- package/lib/map/client/components/catalog/KUserLayersPanel.vue +40 -0
- package/lib/map/client/components/catalog/KViewSelector.vue +46 -0
- package/lib/map/client/components/catalog/KViewsPanel.vue +110 -0
- package/lib/map/client/components/catalog/KWeatherLayersSelector.vue +4 -13
- package/lib/map/client/components/form/KTimezoneField.vue +135 -0
- package/lib/map/client/components/widget/KElevationProfile.vue +488 -0
- package/lib/map/client/components/widget/KInformationBox.vue +48 -23
- package/lib/map/client/components/widget/KMapillaryViewer.vue +26 -20
- package/lib/map/client/components/widget/KTimeSeries.vue +267 -347
- package/lib/map/client/i18n/map_en.json +63 -40
- package/lib/map/client/i18n/map_fr.json +65 -42
- package/lib/map/client/leaflet/GradientPath.js +40 -19
- package/lib/map/client/leaflet/GradientPath.js.map +1 -1
- package/lib/map/client/leaflet/TiledFeatureLayer.js +527 -93
- package/lib/map/client/leaflet/TiledFeatureLayer.js.map +1 -1
- package/lib/map/client/leaflet/TiledMeshLayer.js +58 -35
- package/lib/map/client/leaflet/TiledMeshLayer.js.map +1 -1
- package/lib/map/client/leaflet/utils.js +44 -3
- package/lib/map/client/leaflet/utils.js.map +1 -1
- package/lib/map/client/mixins/globe/mixin.base-globe.js +16 -1
- package/lib/map/client/mixins/globe/mixin.base-globe.js.map +1 -1
- package/lib/map/client/mixins/globe/mixin.file-layers.js +12 -2
- package/lib/map/client/mixins/globe/mixin.file-layers.js.map +1 -1
- package/lib/map/client/mixins/globe/mixin.geojson-layers.js +7 -6
- package/lib/map/client/mixins/globe/mixin.geojson-layers.js.map +1 -1
- package/lib/map/client/mixins/globe/mixin.popup.js +4 -2
- package/lib/map/client/mixins/globe/mixin.popup.js.map +1 -1
- package/lib/map/client/mixins/globe/mixin.style.js +8 -4
- package/lib/map/client/mixins/globe/mixin.style.js.map +1 -1
- package/lib/map/client/mixins/globe/mixin.tooltip.js +4 -2
- package/lib/map/client/mixins/globe/mixin.tooltip.js.map +1 -1
- package/lib/map/client/mixins/index.js +23 -18
- package/lib/map/client/mixins/index.js.map +1 -1
- package/lib/map/client/mixins/map/mixin.base-map.js +20 -2
- package/lib/map/client/mixins/map/mixin.base-map.js.map +1 -1
- package/lib/map/client/mixins/map/mixin.edit-layers.js +8 -4
- package/lib/map/client/mixins/map/mixin.edit-layers.js.map +1 -1
- package/lib/map/client/mixins/map/mixin.geojson-layers.js +27 -5
- package/lib/map/client/mixins/map/mixin.geojson-layers.js.map +1 -1
- package/lib/map/client/mixins/map/mixin.heatmap-layers.js +6 -1
- package/lib/map/client/mixins/map/mixin.heatmap-layers.js.map +1 -1
- package/lib/map/client/mixins/map/mixin.popup.js +1 -1
- package/lib/map/client/mixins/map/mixin.popup.js.map +1 -1
- package/lib/map/client/mixins/map/mixin.style.js +8 -4
- package/lib/map/client/mixins/map/mixin.style.js.map +1 -1
- package/lib/map/client/mixins/map/mixin.tiled-mesh-layers.js +4 -11
- package/lib/map/client/mixins/map/mixin.tiled-mesh-layers.js.map +1 -1
- package/lib/map/client/mixins/map/mixin.tiled-wind-layers.js +0 -11
- package/lib/map/client/mixins/map/mixin.tiled-wind-layers.js.map +1 -1
- package/lib/map/client/mixins/map/mixin.tooltip.js +1 -1
- package/lib/map/client/mixins/map/mixin.tooltip.js.map +1 -1
- package/lib/map/client/mixins/mixin.activity.js +150 -150
- package/lib/map/client/mixins/mixin.activity.js.map +1 -1
- package/lib/map/client/mixins/mixin.catalog-panel.js +36 -0
- package/lib/map/client/mixins/mixin.catalog-panel.js.map +1 -0
- package/lib/map/client/mixins/mixin.feature-selection.js +17 -8
- package/lib/map/client/mixins/mixin.feature-selection.js.map +1 -1
- package/lib/map/client/mixins/mixin.feature-service.js +36 -16
- package/lib/map/client/mixins/mixin.feature-service.js.map +1 -1
- package/lib/map/client/mixins/mixin.infobox.js +1 -1
- package/lib/map/client/mixins/mixin.infobox.js.map +1 -1
- package/lib/map/client/mixins/mixin.levels.js +26 -12
- package/lib/map/client/mixins/mixin.levels.js.map +1 -1
- package/lib/map/client/mixins/mixin.style.js +1 -0
- package/lib/map/client/mixins/mixin.style.js.map +1 -1
- package/lib/map/client/mixins/mixin.weacast.js +15 -23
- package/lib/map/client/mixins/mixin.weacast.js.map +1 -1
- package/lib/map/client/pixi-utils.js +8 -177
- package/lib/map/client/pixi-utils.js.map +1 -1
- package/lib/map/client/utils.js +1 -0
- package/lib/map/client/utils.js.map +1 -1
- package/lib/map/common/grid.js +131 -0
- package/lib/map/common/grid.js.map +1 -1
- package/lib/map/common/index.js +22 -11
- package/lib/map/common/index.js.map +1 -1
- package/lib/map/common/meteo-model-grid-source.js +5 -2
- package/lib/map/common/meteo-model-grid-source.js.map +1 -1
- package/lib/map/common/time-based-grid-source.js +5 -2
- package/lib/map/common/time-based-grid-source.js.map +1 -1
- package/lib/test/client/core/collection.js +31 -13
- package/lib/test/client/core/collection.js.map +1 -1
- package/lib/test/client/core/layout.js +137 -49
- package/lib/test/client/core/layout.js.map +1 -1
- package/lib/test/client/core/utils.js +89 -22
- package/lib/test/client/core/utils.js.map +1 -1
- package/lib/test/client/map/catalog.js +134 -41
- package/lib/test/client/map/catalog.js.map +1 -1
- package/lib/test/client/map/controls.js +7 -4
- package/lib/test/client/map/controls.js.map +1 -1
- package/lib/test/client/map/index.js +12 -0
- package/lib/test/client/map/index.js.map +1 -1
- package/lib/test/client/map/utils.js +67 -0
- package/lib/test/client/map/utils.js.map +1 -0
- package/package.json +5 -5
- package/extras/tours/map/favorite-views.js +0 -53
- package/lib/core/client/components/frame/KChart.vue +0 -60
- package/lib/core/client/components/input/KCodeInput.vue +0 -50
- package/lib/core/client/components/input/KTimeRangeChooser.vue +0 -109
- package/lib/core/client/components/time/KTimeRange.vue +0 -144
- package/lib/map/client/components/KFavoriteViews.vue +0 -217
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.createLayer = exports.connectLayer = exports.importLayer = exports.addLayer = exports.dropFile = exports.removeLayer = exports.clickLayer = exports.clickLayerCategory = exports.isLayerCategoryOpened = exports.getLayerCategoryId = undefined;
|
|
6
|
+
exports.removeView = exports.clickView = exports.viewExists = exports.createView = exports.createLayer = exports.connectLayer = exports.importLayer = exports.addLayer = exports.dropFile = exports.removeLayer = exports.saveLayer = exports.clickLayer = exports.clickLayerCategory = exports.clickCatalogTab = exports.isLayerCategoryOpened = exports.getLayerCategoryId = undefined;
|
|
7
7
|
|
|
8
8
|
let getLayerCategoryId = exports.getLayerCategoryId = (() => {
|
|
9
9
|
var _ref = _asyncToGenerator(function* (page, layerId) {
|
|
@@ -29,96 +29,135 @@ let isLayerCategoryOpened = exports.isLayerCategoryOpened = (() => {
|
|
|
29
29
|
};
|
|
30
30
|
})();
|
|
31
31
|
|
|
32
|
-
let
|
|
33
|
-
var _ref3 = _asyncToGenerator(function* (page,
|
|
32
|
+
let clickCatalogTab = exports.clickCatalogTab = (() => {
|
|
33
|
+
var _ref3 = _asyncToGenerator(function* (page, tabId, wait) {
|
|
34
34
|
const isCatalogOpened = yield core.isRightPaneVisible(page);
|
|
35
35
|
if (!isCatalogOpened) yield core.clickRightOpener(page);
|
|
36
|
-
yield core.
|
|
36
|
+
yield core.click(page, `#${tabId}`, wait);
|
|
37
|
+
return isCatalogOpened;
|
|
37
38
|
});
|
|
38
39
|
|
|
39
|
-
return function
|
|
40
|
+
return function clickCatalogTab(_x5, _x6, _x7) {
|
|
40
41
|
return _ref3.apply(this, arguments);
|
|
41
42
|
};
|
|
42
43
|
})();
|
|
43
44
|
|
|
45
|
+
let clickLayerCategory = exports.clickLayerCategory = (() => {
|
|
46
|
+
var _ref4 = _asyncToGenerator(function* (page, tabId, categoryId, wait = 500) {
|
|
47
|
+
yield clickCatalogTab(page, tabId);
|
|
48
|
+
yield core.clickRightPaneAction(page, categoryId, wait);
|
|
49
|
+
});
|
|
50
|
+
|
|
51
|
+
return function clickLayerCategory(_x8, _x9, _x10) {
|
|
52
|
+
return _ref4.apply(this, arguments);
|
|
53
|
+
};
|
|
54
|
+
})();
|
|
55
|
+
|
|
44
56
|
let clickLayer = exports.clickLayer = (() => {
|
|
45
|
-
var
|
|
57
|
+
var _ref5 = _asyncToGenerator(function* (page, tabId, layer, wait = 1000) {
|
|
58
|
+
const isCatalogOpened = yield clickCatalogTab(page, tabId);
|
|
46
59
|
const layerId = getLayerId(layer);
|
|
47
|
-
const isCatalogOpened = yield core.isRightPaneVisible(page);
|
|
48
|
-
if (!isCatalogOpened) yield core.clickRightOpener(page);
|
|
49
60
|
const categoryId = yield getLayerCategoryId(page, layerId);
|
|
50
61
|
let isCategoryOpened;
|
|
51
62
|
if (categoryId) {
|
|
52
63
|
isCategoryOpened = yield isLayerCategoryOpened(page, categoryId);
|
|
53
|
-
if (!isCategoryOpened) yield
|
|
64
|
+
if (!isCategoryOpened) yield core.clickRightPaneAction(page, categoryId, 1000);
|
|
65
|
+
}
|
|
66
|
+
let selector = `#${layerId} .q-toggle`;
|
|
67
|
+
// some layers have a toggle (regulaer layers), some don't (base layers)
|
|
68
|
+
if (!(yield core.elementExists(page, selector))) {
|
|
69
|
+
selector = `#${layerId}`;
|
|
54
70
|
}
|
|
55
|
-
let selector = `#${layerId}`;
|
|
56
|
-
if (categoryId !== 'k-catalog-panel-base-layers') selector += ' .q-toggle';
|
|
57
71
|
yield core.click(page, selector);
|
|
58
72
|
if (categoryId) {
|
|
59
|
-
if (!isCategoryOpened) yield
|
|
73
|
+
if (!isCategoryOpened) yield core.clickRightPaneAction(page, categoryId, 500);
|
|
60
74
|
}
|
|
61
75
|
if (!isCatalogOpened) yield core.clickRightOpener(page);
|
|
62
76
|
yield core.waitForImagesLoaded(page);
|
|
63
77
|
yield page.waitForTimeout(wait);
|
|
64
78
|
});
|
|
65
79
|
|
|
66
|
-
return function clickLayer(
|
|
67
|
-
return
|
|
80
|
+
return function clickLayer(_x11, _x12, _x13) {
|
|
81
|
+
return _ref5.apply(this, arguments);
|
|
68
82
|
};
|
|
69
83
|
})();
|
|
70
84
|
|
|
71
|
-
let
|
|
72
|
-
var
|
|
85
|
+
let saveLayer = exports.saveLayer = (() => {
|
|
86
|
+
var _ref6 = _asyncToGenerator(function* (page, tabId, layer, wait = 1000) {
|
|
87
|
+
const isCatalogOpened = yield clickCatalogTab(page, tabId);
|
|
73
88
|
const layerId = getLayerId(layer);
|
|
74
|
-
const
|
|
89
|
+
const categoryId = yield getLayerCategoryId(page, layerId);
|
|
90
|
+
let isCategoryOpened;
|
|
91
|
+
if (categoryId) {
|
|
92
|
+
isCategoryOpened = yield isLayerCategoryOpened(page, categoryId);
|
|
93
|
+
if (!isCategoryOpened) yield core.clickRightPaneAction(page, categoryId, 1000);
|
|
94
|
+
}
|
|
95
|
+
yield core.click(page, `#${layer}-actions`);
|
|
96
|
+
yield core.clickAction(page, 'save-layer');
|
|
97
|
+
if (categoryId) {
|
|
98
|
+
if (!isCategoryOpened) yield core.clickRightPaneAction(page, categoryId, 500);
|
|
99
|
+
}
|
|
75
100
|
if (!isCatalogOpened) yield core.clickRightOpener(page);
|
|
101
|
+
yield page.waitForTimeout(wait);
|
|
102
|
+
});
|
|
103
|
+
|
|
104
|
+
return function saveLayer(_x14, _x15, _x16) {
|
|
105
|
+
return _ref6.apply(this, arguments);
|
|
106
|
+
};
|
|
107
|
+
})();
|
|
108
|
+
|
|
109
|
+
let removeLayer = exports.removeLayer = (() => {
|
|
110
|
+
var _ref7 = _asyncToGenerator(function* (page, tabId, layer, wait = 1000) {
|
|
111
|
+
const isCatalogOpened = yield clickCatalogTab(page, tabId);
|
|
112
|
+
const layerId = getLayerId(layer);
|
|
76
113
|
const categoryId = yield getLayerCategoryId(page, layerId);
|
|
77
114
|
let isCategoryOpened;
|
|
78
115
|
if (categoryId) {
|
|
79
116
|
isCategoryOpened = yield isLayerCategoryOpened(page, categoryId);
|
|
80
|
-
if (!isCategoryOpened) yield
|
|
117
|
+
if (!isCategoryOpened) yield core.clickRightPaneAction(page, categoryId, 1000);
|
|
81
118
|
}
|
|
82
|
-
yield core.click(page, `#${
|
|
83
|
-
yield core.clickAction(page, 'remove');
|
|
119
|
+
yield core.click(page, `#${layer}-actions`);
|
|
120
|
+
yield core.clickAction(page, 'remove-layer');
|
|
84
121
|
yield core.click(page, '.q-dialog button:nth-child(2)', wait);
|
|
85
122
|
if (categoryId) {
|
|
86
|
-
if (!isCategoryOpened) yield
|
|
123
|
+
if (!isCategoryOpened) yield core.clickRightPaneAction(page, categoryId, 500);
|
|
87
124
|
}
|
|
125
|
+
if (!isCatalogOpened) yield core.clickRightOpener(page);
|
|
126
|
+
yield page.waitForTimeout(wait);
|
|
88
127
|
});
|
|
89
128
|
|
|
90
|
-
return function removeLayer(
|
|
91
|
-
return
|
|
129
|
+
return function removeLayer(_x17, _x18, _x19) {
|
|
130
|
+
return _ref7.apply(this, arguments);
|
|
92
131
|
};
|
|
93
132
|
})();
|
|
94
133
|
|
|
95
134
|
let dropFile = exports.dropFile = (() => {
|
|
96
|
-
var
|
|
135
|
+
var _ref8 = _asyncToGenerator(function* (page, filePath, wait = 2000) {
|
|
97
136
|
const loaderSelector = '#dropFileInput';
|
|
98
137
|
const loader = yield page.$(loaderSelector);
|
|
99
138
|
yield loader.uploadFile(filePath);
|
|
100
139
|
yield page.waitForTimeout(wait);
|
|
101
140
|
});
|
|
102
141
|
|
|
103
|
-
return function dropFile(
|
|
104
|
-
return
|
|
142
|
+
return function dropFile(_x20, _x21) {
|
|
143
|
+
return _ref8.apply(this, arguments);
|
|
105
144
|
};
|
|
106
145
|
})();
|
|
107
146
|
|
|
108
147
|
let addLayer = exports.addLayer = (() => {
|
|
109
|
-
var
|
|
148
|
+
var _ref9 = _asyncToGenerator(function* (page) {
|
|
110
149
|
yield core.clickFab(page);
|
|
111
150
|
yield core.clickAction(page, 'add-layer');
|
|
112
151
|
yield page.waitForTimeout(1000);
|
|
113
152
|
});
|
|
114
153
|
|
|
115
|
-
return function addLayer(
|
|
116
|
-
return
|
|
154
|
+
return function addLayer(_x22) {
|
|
155
|
+
return _ref9.apply(this, arguments);
|
|
117
156
|
};
|
|
118
157
|
})();
|
|
119
158
|
|
|
120
159
|
let importLayer = exports.importLayer = (() => {
|
|
121
|
-
var
|
|
160
|
+
var _ref10 = _asyncToGenerator(function* (page, filePath, featureId = undefined, wait = 2000) {
|
|
122
161
|
yield addLayer(page);
|
|
123
162
|
yield core.uploadFile(page, '#file-field', filePath);
|
|
124
163
|
if (featureId) {
|
|
@@ -130,13 +169,13 @@ let importLayer = exports.importLayer = (() => {
|
|
|
130
169
|
yield page.waitForTimeout(wait);
|
|
131
170
|
});
|
|
132
171
|
|
|
133
|
-
return function importLayer(
|
|
134
|
-
return
|
|
172
|
+
return function importLayer(_x23, _x24) {
|
|
173
|
+
return _ref10.apply(this, arguments);
|
|
135
174
|
};
|
|
136
175
|
})();
|
|
137
176
|
|
|
138
177
|
let connectLayer = exports.connectLayer = (() => {
|
|
139
|
-
var
|
|
178
|
+
var _ref11 = _asyncToGenerator(function* (page, service, layerId, wait = 2000) {
|
|
140
179
|
yield addLayer(page);
|
|
141
180
|
yield core.clickAction(page, 'connect-layer');
|
|
142
181
|
yield core.type(page, '#service-field', service, true, false, 5000);
|
|
@@ -147,26 +186,80 @@ let connectLayer = exports.connectLayer = (() => {
|
|
|
147
186
|
yield page.waitForTimeout(wait);
|
|
148
187
|
});
|
|
149
188
|
|
|
150
|
-
return function connectLayer(
|
|
151
|
-
return
|
|
189
|
+
return function connectLayer(_x25, _x26, _x27) {
|
|
190
|
+
return _ref11.apply(this, arguments);
|
|
152
191
|
};
|
|
153
192
|
})();
|
|
154
193
|
|
|
155
194
|
let createLayer = exports.createLayer = (() => {
|
|
156
|
-
var
|
|
195
|
+
var _ref12 = _asyncToGenerator(function* (page, layerName, schemaPath, featureId, wait = 2000) {
|
|
157
196
|
yield addLayer(page);
|
|
158
|
-
yield core.clickAction(page, 'create-layer');
|
|
197
|
+
yield core.clickAction(page, 'create-layer', 2000);
|
|
159
198
|
yield core.type(page, '#name-field', layerName);
|
|
160
199
|
yield core.type(page, '#description-field', `${layerName} description`);
|
|
161
200
|
yield core.uploadFile(page, '#schema-field', schemaPath);
|
|
162
|
-
yield
|
|
163
|
-
yield core.click(page, `#${featureId}
|
|
201
|
+
yield core.click(page, '#featureId-field', 500);
|
|
202
|
+
yield core.click(page, `#${featureId}`, 500);
|
|
164
203
|
yield core.clickAction(page, 'create-layer-action', 1000);
|
|
165
204
|
yield page.waitForTimeout(wait);
|
|
166
205
|
});
|
|
167
206
|
|
|
168
|
-
return function createLayer(
|
|
169
|
-
return
|
|
207
|
+
return function createLayer(_x28, _x29, _x30, _x31) {
|
|
208
|
+
return _ref12.apply(this, arguments);
|
|
209
|
+
};
|
|
210
|
+
})();
|
|
211
|
+
|
|
212
|
+
let createView = exports.createView = (() => {
|
|
213
|
+
var _ref13 = _asyncToGenerator(function* (page, name, saveLayers, wait = 2000) {
|
|
214
|
+
yield core.clickFab(page);
|
|
215
|
+
yield core.clickAction(page, 'create-view');
|
|
216
|
+
yield page.waitForTimeout(1000);
|
|
217
|
+
yield core.type(page, '#name-field', name);
|
|
218
|
+
yield core.type(page, '#description-field', `${name} description`);
|
|
219
|
+
if (saveLayers) yield core.click(page, '#layers-field');
|
|
220
|
+
yield core.clickAction(page, 'apply-button', 1000);
|
|
221
|
+
});
|
|
222
|
+
|
|
223
|
+
return function createView(_x32, _x33, _x34) {
|
|
224
|
+
return _ref13.apply(this, arguments);
|
|
225
|
+
};
|
|
226
|
+
})();
|
|
227
|
+
|
|
228
|
+
let viewExists = exports.viewExists = (() => {
|
|
229
|
+
var _ref14 = _asyncToGenerator(function* (page, tabId, name) {
|
|
230
|
+
const isCatalogOpened = yield clickCatalogTab(page, tabId, 2000);
|
|
231
|
+
const exists = yield core.itemExists(page, 'catalog/KViewSelector', name);
|
|
232
|
+
if (!isCatalogOpened) yield core.clickRightOpener(page);
|
|
233
|
+
return exists;
|
|
234
|
+
});
|
|
235
|
+
|
|
236
|
+
return function viewExists(_x35, _x36, _x37) {
|
|
237
|
+
return _ref14.apply(this, arguments);
|
|
238
|
+
};
|
|
239
|
+
})();
|
|
240
|
+
|
|
241
|
+
let clickView = exports.clickView = (() => {
|
|
242
|
+
var _ref15 = _asyncToGenerator(function* (page, tabId, name, wait = 1000) {
|
|
243
|
+
const isCatalogOpened = yield clickCatalogTab(page, tabId, 2000);
|
|
244
|
+
yield core.clickItem(page, 'catalog/KViewSelector', name);
|
|
245
|
+
if (!isCatalogOpened) yield core.clickRightOpener(page);
|
|
246
|
+
});
|
|
247
|
+
|
|
248
|
+
return function clickView(_x38, _x39, _x40) {
|
|
249
|
+
return _ref15.apply(this, arguments);
|
|
250
|
+
};
|
|
251
|
+
})();
|
|
252
|
+
|
|
253
|
+
let removeView = exports.removeView = (() => {
|
|
254
|
+
var _ref16 = _asyncToGenerator(function* (page, tabId, name, wait = 1000) {
|
|
255
|
+
const isCatalogOpened = yield clickCatalogTab(page, tabId, 2000);
|
|
256
|
+
yield core.clickItemAction(page, 'catalog/KViewSelector', name, 'view-overflowmenu', 1000);
|
|
257
|
+
yield core.clickAction(page, 'remove-view', wait);
|
|
258
|
+
if (!isCatalogOpened) yield core.clickRightOpener(page);
|
|
259
|
+
});
|
|
260
|
+
|
|
261
|
+
return function removeView(_x41, _x42, _x43) {
|
|
262
|
+
return _ref16.apply(this, arguments);
|
|
170
263
|
};
|
|
171
264
|
})();
|
|
172
265
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../test/client/map/catalog.js"],"names":["page","layerId","xpath","elements","$x","length","getProperty","jsonValue","undefined","getLayerCategoryId","categoryId","selector","core","isElementVisible","isLayerCategoryOpened","wait","isCatalogOpened","isRightPaneVisible","clickRightOpener","clickRightPaneAction","clickLayerCategory","layer","getLayerId","isCategoryOpened","click","waitForImagesLoaded","waitForTimeout","clickLayer","clickAction","removeLayer","filePath","loaderSelector","loader","$","uploadFile","dropFile","clickFab","addLayer","featureId","importLayer","service","type","connectLayer","layerName","schemaPath","createLayer","_","kebabCase"],"mappings":"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","file":"catalog.js","sourcesContent":["import _ from 'lodash'\r\nimport * as core from '../core'\r\n\r\nexport function getLayerId (layer) {\r\n return 'layers-' + _.kebabCase(layer)\r\n}\r\n\r\nexport async function getLayerCategoryId (page, layerId) {\r\n const xpath = `//div[contains(@class, \"q-expansion-item q-item-type\") and .//div[@id=\"${layerId}\"]]`\r\n const elements = await page.$x(xpath)\r\n if (elements.length > 0) return (await elements[0].getProperty('id')).jsonValue()\r\n return undefined\r\n}\r\n\r\nexport async function isLayerCategoryOpened (page, categoryId) {\r\n const selector = `#${categoryId} .q-expansion-item__content`\r\n return core.isElementVisible(page, selector)\r\n}\r\n\r\nexport async function clickLayerCategory (page, categoryId, wait = 500) {\r\n const isCatalogOpened = await core.isRightPaneVisible(page)\r\n if (!isCatalogOpened) await core.clickRightOpener(page)\r\n await core.clickRightPaneAction(page, categoryId, wait)\r\n}\r\n\r\nexport async function clickLayer (page, layer, wait = 1000) {\r\n const layerId = getLayerId(layer)\r\n const isCatalogOpened = await core.isRightPaneVisible(page)\r\n if (!isCatalogOpened) await core.clickRightOpener(page)\r\n const categoryId = await getLayerCategoryId(page, layerId)\r\n let isCategoryOpened\r\n if (categoryId) {\r\n isCategoryOpened = await isLayerCategoryOpened(page, categoryId)\r\n if (!isCategoryOpened) await clickLayerCategory(page, categoryId)\r\n }\r\n let selector = `#${layerId}`\r\n if (categoryId !== 'k-catalog-panel-base-layers') selector += ' .q-toggle'\r\n await core.click(page, selector)\r\n if (categoryId) {\r\n if (!isCategoryOpened) await clickLayerCategory(page, categoryId)\r\n }\r\n if (!isCatalogOpened) await core.clickRightOpener(page)\r\n await core.waitForImagesLoaded(page)\r\n await page.waitForTimeout(wait)\r\n}\r\n\r\nexport async function removeLayer (page, layer, wait = 1000) {\r\n const layerId = getLayerId(layer)\r\n const isCatalogOpened = await core.isRightPaneVisible(page)\r\n if (!isCatalogOpened) await core.clickRightOpener(page)\r\n const categoryId = await getLayerCategoryId(page, layerId)\r\n let isCategoryOpened\r\n if (categoryId) {\r\n isCategoryOpened = await isLayerCategoryOpened(page, categoryId)\r\n if (!isCategoryOpened) await clickLayerCategory(page, categoryId)\r\n }\r\n await core.click(page, `#${layerId} .q-btn`)\r\n await core.clickAction(page, 'remove')\r\n await core.click(page, '.q-dialog button:nth-child(2)', wait)\r\n if (categoryId) {\r\n if (!isCategoryOpened) await clickLayerCategory(page, categoryId)\r\n }\r\n}\r\n\r\nexport async function dropFile (page, filePath, wait = 2000) {\r\n const loaderSelector = '#dropFileInput'\r\n const loader = await page.$(loaderSelector)\r\n await loader.uploadFile(filePath)\r\n await page.waitForTimeout(wait)\r\n}\r\n\r\nexport async function addLayer (page) {\r\n await core.clickFab(page)\r\n await core.clickAction(page, 'add-layer')\r\n await page.waitForTimeout(1000)\r\n}\r\n\r\nexport async function importLayer (page, filePath, featureId = undefined, wait = 2000) {\r\n await addLayer(page)\r\n await core.uploadFile(page, '#file-field', filePath)\r\n if (featureId) {\r\n await core.click(page, '#featureId-field', 500)\r\n await core.click(page, `#${featureId}`, 500)\r\n }\r\n await core.clickAction(page, 'import-layer-action')\r\n await core.waitForImagesLoaded(page)\r\n await page.waitForTimeout(wait)\r\n}\r\n\r\nexport async function connectLayer (page, service, layerId, wait = 2000) {\r\n await addLayer(page)\r\n await core.clickAction(page, 'connect-layer')\r\n await core.type(page, '#service-field', service, true, false, 5000)\r\n await core.click(page, '#layer-field', 500)\r\n await core.click(page, `#${layerId}`, 500)\r\n await core.clickAction(page, 'connect-layer-action', 2000)\r\n await core.waitForImagesLoaded(page)\r\n await page.waitForTimeout(wait)\r\n}\r\n\r\nexport async function createLayer (page, layerName, schemaPath, featureId, wait = 2000) {\r\n await addLayer(page)\r\n await core.clickAction(page, 'create-layer')\r\n await core.type(page, '#name-field', layerName)\r\n await core.type(page, '#description-field', `${layerName} description`)\r\n await core.uploadFile(page, '#schema-field', schemaPath)\r\n await page.click(page, '#featureId-field', 500)\r\n await core.click(page, `#${featureId}`)\r\n await core.clickAction(page, 'create-layer-action', 1000)\r\n await page.waitForTimeout(wait)\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"sources":["../../../../test/client/map/catalog.js"],"names":["page","layerId","xpath","elements","$x","length","getProperty","jsonValue","undefined","getLayerCategoryId","categoryId","selector","core","isElementVisible","isLayerCategoryOpened","tabId","wait","isCatalogOpened","isRightPaneVisible","clickRightOpener","click","clickCatalogTab","clickRightPaneAction","clickLayerCategory","layer","getLayerId","isCategoryOpened","elementExists","waitForImagesLoaded","waitForTimeout","clickLayer","clickAction","saveLayer","removeLayer","filePath","loaderSelector","loader","$","uploadFile","dropFile","clickFab","addLayer","featureId","importLayer","service","type","connectLayer","layerName","schemaPath","createLayer","name","saveLayers","createView","exists","itemExists","viewExists","clickItem","clickView","clickItemAction","removeView","_","kebabCase"],"mappings":"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","file":"catalog.js","sourcesContent":["import _ from 'lodash'\r\nimport * as core from '../core'\r\n\r\nexport function getLayerId (layer) {\r\n return 'layers-' + _.kebabCase(layer)\r\n}\r\n\r\nexport async function getLayerCategoryId (page, layerId) {\r\n const xpath = `//div[contains(@class, \"q-expansion-item q-item-type\") and .//div[@id=\"${layerId}\"]]`\r\n const elements = await page.$x(xpath)\r\n if (elements.length > 0) return (await elements[0].getProperty('id')).jsonValue()\r\n return undefined\r\n}\r\n\r\nexport async function isLayerCategoryOpened (page, categoryId) {\r\n const selector = `#${categoryId} .q-expansion-item__content`\r\n return core.isElementVisible(page, selector)\r\n}\r\n\r\nexport async function clickCatalogTab (page, tabId, wait) {\r\n const isCatalogOpened = await core.isRightPaneVisible(page)\r\n if (!isCatalogOpened) await core.clickRightOpener(page)\r\n await core.click(page, `#${tabId}`, wait)\r\n return isCatalogOpened\r\n}\r\n\r\nexport async function clickLayerCategory (page, tabId, categoryId, wait = 500) {\r\n await clickCatalogTab(page, tabId)\r\n await core.clickRightPaneAction(page, categoryId, wait)\r\n}\r\n\r\nexport async function clickLayer (page, tabId, layer, wait = 1000) {\r\n const isCatalogOpened = await clickCatalogTab(page, tabId)\r\n const layerId = getLayerId(layer)\r\n const categoryId = await getLayerCategoryId(page, layerId)\r\n let isCategoryOpened\r\n if (categoryId) {\r\n isCategoryOpened = await isLayerCategoryOpened(page, categoryId)\r\n if (!isCategoryOpened) await core.clickRightPaneAction(page, categoryId, 1000)\r\n }\r\n let selector = `#${layerId} .q-toggle`\r\n // some layers have a toggle (regulaer layers), some don't (base layers)\r\n if (!await core.elementExists(page, selector)) {\r\n selector = `#${layerId}`\r\n }\r\n await core.click(page, selector)\r\n if (categoryId) {\r\n if (!isCategoryOpened) await core.clickRightPaneAction(page, categoryId, 500)\r\n }\r\n if (!isCatalogOpened) await core.clickRightOpener(page)\r\n await core.waitForImagesLoaded(page)\r\n await page.waitForTimeout(wait)\r\n}\r\n\r\nexport async function saveLayer (page, tabId, layer, wait = 1000) {\r\n const isCatalogOpened = await clickCatalogTab(page, tabId)\r\n const layerId = getLayerId(layer)\r\n const categoryId = await getLayerCategoryId(page, layerId)\r\n let isCategoryOpened\r\n if (categoryId) {\r\n isCategoryOpened = await isLayerCategoryOpened(page, categoryId)\r\n if (!isCategoryOpened) await core.clickRightPaneAction(page, categoryId, 1000)\r\n }\r\n await core.click(page, `#${layer}-actions`)\r\n await core.clickAction(page, 'save-layer')\r\n if (categoryId) {\r\n if (!isCategoryOpened) await core.clickRightPaneAction(page, categoryId, 500)\r\n }\r\n if (!isCatalogOpened) await core.clickRightOpener(page)\r\n await page.waitForTimeout(wait)\r\n}\r\n\r\nexport async function removeLayer (page, tabId, layer, wait = 1000) {\r\n const isCatalogOpened = await clickCatalogTab(page, tabId)\r\n const layerId = getLayerId(layer)\r\n const categoryId = await getLayerCategoryId(page, layerId)\r\n let isCategoryOpened\r\n if (categoryId) {\r\n isCategoryOpened = await isLayerCategoryOpened(page, categoryId)\r\n if (!isCategoryOpened) await core.clickRightPaneAction(page, categoryId, 1000)\r\n }\r\n await core.click(page, `#${layer}-actions`)\r\n await core.clickAction(page, 'remove-layer')\r\n await core.click(page, '.q-dialog button:nth-child(2)', wait)\r\n if (categoryId) {\r\n if (!isCategoryOpened) await core.clickRightPaneAction(page, categoryId, 500)\r\n }\r\n if (!isCatalogOpened) await core.clickRightOpener(page)\r\n await page.waitForTimeout(wait)\r\n}\r\n\r\nexport async function dropFile (page, filePath, wait = 2000) {\r\n const loaderSelector = '#dropFileInput'\r\n const loader = await page.$(loaderSelector)\r\n await loader.uploadFile(filePath)\r\n await page.waitForTimeout(wait)\r\n}\r\n\r\nexport async function addLayer (page) {\r\n await core.clickFab(page)\r\n await core.clickAction(page, 'add-layer')\r\n await page.waitForTimeout(1000)\r\n}\r\n\r\nexport async function importLayer (page, filePath, featureId = undefined, wait = 2000) {\r\n await addLayer(page)\r\n await core.uploadFile(page, '#file-field', filePath)\r\n if (featureId) {\r\n await core.click(page, '#featureId-field', 500)\r\n await core.click(page, `#${featureId}`, 500)\r\n }\r\n await core.clickAction(page, 'import-layer-action')\r\n await core.waitForImagesLoaded(page)\r\n await page.waitForTimeout(wait)\r\n}\r\n\r\nexport async function connectLayer (page, service, layerId, wait = 2000) {\r\n await addLayer(page)\r\n await core.clickAction(page, 'connect-layer')\r\n await core.type(page, '#service-field', service, true, false, 5000)\r\n await core.click(page, '#layer-field', 500)\r\n await core.click(page, `#${layerId}`, 500)\r\n await core.clickAction(page, 'connect-layer-action', 2000)\r\n await core.waitForImagesLoaded(page)\r\n await page.waitForTimeout(wait)\r\n}\r\n\r\nexport async function createLayer (page, layerName, schemaPath, featureId, wait = 2000) {\r\n await addLayer(page)\r\n await core.clickAction(page, 'create-layer', 2000)\r\n await core.type(page, '#name-field', layerName)\r\n await core.type(page, '#description-field', `${layerName} description`)\r\n await core.uploadFile(page, '#schema-field', schemaPath)\r\n await core.click(page, '#featureId-field', 500)\r\n await core.click(page, `#${featureId}`, 500)\r\n await core.clickAction(page, 'create-layer-action', 1000)\r\n await page.waitForTimeout(wait)\r\n}\r\n\r\nexport async function createView (page, name, saveLayers, wait = 2000) {\r\n await core.clickFab(page)\r\n await core.clickAction(page, 'create-view')\r\n await page.waitForTimeout(1000)\r\n await core.type(page, '#name-field', name)\r\n await core.type(page, '#description-field', `${name} description`)\r\n if (saveLayers) await core.click(page, '#layers-field')\r\n await core.clickAction(page, 'apply-button', 1000)\r\n}\r\n\r\nexport async function viewExists (page, tabId, name) {\r\n const isCatalogOpened = await clickCatalogTab(page, tabId, 2000)\r\n const exists = await core.itemExists(page, 'catalog/KViewSelector', name)\r\n if (!isCatalogOpened) await core.clickRightOpener(page)\r\n return exists\r\n}\r\n\r\nexport async function clickView (page, tabId, name, wait = 1000) {\r\n const isCatalogOpened = await clickCatalogTab(page, tabId, 2000)\r\n await core.clickItem(page, 'catalog/KViewSelector', name)\r\n if (!isCatalogOpened) await core.clickRightOpener(page)\r\n}\r\n\r\nexport async function removeView (page, tabId, name, wait = 1000) {\r\n const isCatalogOpened = await clickCatalogTab(page, tabId, 2000)\r\n await core.clickItemAction(page, 'catalog/KViewSelector', name, 'view-overflowmenu', 1000)\r\n await core.clickAction(page, 'remove-view', wait)\r\n if (!isCatalogOpened) await core.clickRightOpener(page)\r\n}\r\n"]}
|
|
@@ -3,10 +3,10 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.goToPosition = exports.zoomToExtent = undefined;
|
|
7
7
|
|
|
8
8
|
let zoomToExtent = exports.zoomToExtent = (() => {
|
|
9
|
-
var _ref = _asyncToGenerator(function* (page, bbox) {
|
|
9
|
+
var _ref = _asyncToGenerator(function* (page, bbox, wait = 2000) {
|
|
10
10
|
const currentUrl = page.url();
|
|
11
11
|
const regexp = /\/-?[0-9.]*\/-?[0-9.]*\/-?[0-9.]*\/-?[0-9.]*/;
|
|
12
12
|
let newUrl = _lodash2.default.replace(currentUrl, regexp, '');
|
|
@@ -17,6 +17,8 @@ let zoomToExtent = exports.zoomToExtent = (() => {
|
|
|
17
17
|
// about:blank or navigation to the same URL with a different hash, which would succeed and return null.
|
|
18
18
|
yield page.goto(newUrl);
|
|
19
19
|
yield page.goto(newUrl);
|
|
20
|
+
yield core.waitForImagesLoaded(page);
|
|
21
|
+
yield page.waitForTimeout(wait);
|
|
20
22
|
});
|
|
21
23
|
|
|
22
24
|
return function zoomToExtent(_x, _x2) {
|
|
@@ -24,16 +26,17 @@ let zoomToExtent = exports.zoomToExtent = (() => {
|
|
|
24
26
|
};
|
|
25
27
|
})();
|
|
26
28
|
|
|
27
|
-
let
|
|
29
|
+
let goToPosition = exports.goToPosition = (() => {
|
|
28
30
|
var _ref2 = _asyncToGenerator(function* (page, latitude, longitude) {
|
|
29
31
|
const currentLocation = yield core.getFromStore(page, 'geolocation.position');
|
|
30
32
|
page.setGeolocation({ latitude, longitude });
|
|
31
33
|
yield core.clickTopPaneAction(page, 'locate-user');
|
|
32
34
|
yield core.waitForImagesLoaded(page);
|
|
33
35
|
page.setGeolocation(currentLocation);
|
|
36
|
+
yield core.clickTopPaneAction(page, 'locate-user');
|
|
34
37
|
});
|
|
35
38
|
|
|
36
|
-
return function
|
|
39
|
+
return function goToPosition(_x3, _x4, _x5) {
|
|
37
40
|
return _ref2.apply(this, arguments);
|
|
38
41
|
};
|
|
39
42
|
})();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../test/client/map/controls.js"],"names":["page","bbox","currentUrl","url","regexp","newUrl","_","replace","goto","zoomToExtent","latitude","longitude","currentLocation","
|
|
1
|
+
{"version":3,"sources":["../../../../test/client/map/controls.js"],"names":["page","bbox","wait","currentUrl","url","regexp","newUrl","_","replace","goto","core","waitForImagesLoaded","waitForTimeout","zoomToExtent","latitude","longitude","currentLocation","getFromStore","setGeolocation","clickTopPaneAction","goToPosition"],"mappings":";;;;;;;;+BAGO,WAA6BA,IAA7B,EAAmCC,IAAnC,EAAyCC,OAAO,IAAhD,EAAsD;AAC3D,UAAMC,aAAaH,KAAKI,GAAL,EAAnB;AACA,UAAMC,SAAS,8CAAf;AACA,QAAIC,SAASC,iBAAEC,OAAF,CAAUL,UAAV,EAAsBE,MAAtB,EAA8B,EAA9B,CAAb;AACAC,cAAW,IAAGL,KAAK,CAAL,CAAQ,IAAGA,KAAK,CAAL,CAAQ,IAAGA,KAAK,CAAL,CAAQ,IAAGA,KAAK,CAAL,CAAQ,EAAvD;AACA;AACA;AACA;AACA;AACA,UAAMD,KAAKS,IAAL,CAAUH,MAAV,CAAN;AACA,UAAMN,KAAKS,IAAL,CAAUH,MAAV,CAAN;AACA,UAAMI,KAAKC,mBAAL,CAAyBX,IAAzB,CAAN;AACA,UAAMA,KAAKY,cAAL,CAAoBV,IAApB,CAAN;AACD,G;;kBAbqBW,Y;;;;;;gCAef,WAA6Bb,IAA7B,EAAmCc,QAAnC,EAA6CC,SAA7C,EAAwD;AAC7D,UAAMC,kBAAkB,MAAMN,KAAKO,YAAL,CAAkBjB,IAAlB,EAAwB,sBAAxB,CAA9B;AACAA,SAAKkB,cAAL,CAAoB,EAAEJ,QAAF,EAAYC,SAAZ,EAApB;AACA,UAAML,KAAKS,kBAAL,CAAwBnB,IAAxB,EAA8B,aAA9B,CAAN;AACA,UAAMU,KAAKC,mBAAL,CAAyBX,IAAzB,CAAN;AACAA,SAAKkB,cAAL,CAAoBF,eAApB;AACA,UAAMN,KAAKS,kBAAL,CAAwBnB,IAAxB,EAA8B,aAA9B,CAAN;AACD,G;;kBAPqBoB,Y;;;;;AAlBtB;;;;AACA;;IAAYV,I","file":"controls.js","sourcesContent":["import _ from 'lodash'\r\nimport * as core from '../core'\r\n\r\nexport async function zoomToExtent (page, bbox, wait = 2000) {\r\n const currentUrl = page.url()\r\n const regexp = /\\/-?[0-9.]*\\/-?[0-9.]*\\/-?[0-9.]*\\/-?[0-9.]*/\r\n let newUrl = _.replace(currentUrl, regexp, '')\r\n newUrl += `/${bbox[0]}/${bbox[1]}/${bbox[2]}/${bbox[3]}`\r\n // see https://stackoverflow.com/questions/62343404/puppeteer-page-goto-not-working-for-query-parameters\r\n // and from the documentation: https://pptr.dev/#?product=Puppeteer&version=v10.2.0&show=api-pagegotourl-options\r\n // NOTE page.goto either throws an error or returns a main resource response. The only exceptions are navigation to\r\n // about:blank or navigation to the same URL with a different hash, which would succeed and return null.\r\n await page.goto(newUrl)\r\n await page.goto(newUrl)\r\n await core.waitForImagesLoaded(page)\r\n await page.waitForTimeout(wait)\r\n}\r\n\r\nexport async function goToPosition (page, latitude, longitude) {\r\n const currentLocation = await core.getFromStore(page, 'geolocation.position')\r\n page.setGeolocation({ latitude, longitude })\r\n await core.clickTopPaneAction(page, 'locate-user')\r\n await core.waitForImagesLoaded(page)\r\n page.setGeolocation(currentLocation)\r\n await core.clickTopPaneAction(page, 'locate-user')\r\n}\r\n"]}
|
|
@@ -27,4 +27,16 @@ Object.keys(_controls).forEach(function (key) {
|
|
|
27
27
|
}
|
|
28
28
|
});
|
|
29
29
|
});
|
|
30
|
+
|
|
31
|
+
var _utils = require('./utils');
|
|
32
|
+
|
|
33
|
+
Object.keys(_utils).forEach(function (key) {
|
|
34
|
+
if (key === "default" || key === "__esModule") return;
|
|
35
|
+
Object.defineProperty(exports, key, {
|
|
36
|
+
enumerable: true,
|
|
37
|
+
get: function () {
|
|
38
|
+
return _utils[key];
|
|
39
|
+
}
|
|
40
|
+
});
|
|
41
|
+
});
|
|
30
42
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../test/client/map/index.js"],"names":[],"mappings":";;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA","file":"index.js","sourcesContent":["export * from './catalog'\r\nexport * from './controls'\r\n"]}
|
|
1
|
+
{"version":3,"sources":["../../../../test/client/map/index.js"],"names":[],"mappings":";;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA","file":"index.js","sourcesContent":["export * from './catalog'\r\nexport * from './controls'\r\nexport * from './utils'\r\n"]}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.zoomToLevel = exports.moveMap = undefined;
|
|
7
|
+
|
|
8
|
+
/* Moves the map for a specific times:
|
|
9
|
+
- in a choosen direction (left, right, up, down)
|
|
10
|
+
- zoom in or out
|
|
11
|
+
*/
|
|
12
|
+
let moveMap = exports.moveMap = (() => {
|
|
13
|
+
var _ref = _asyncToGenerator(function* (page, direction, times, wait = 500) {
|
|
14
|
+
let dir;
|
|
15
|
+
if (direction === 'up') {
|
|
16
|
+
dir = 'ArrowUp';
|
|
17
|
+
} else if (direction === 'down') {
|
|
18
|
+
dir = 'ArrowDown';
|
|
19
|
+
} else if (direction === 'left') {
|
|
20
|
+
dir = 'ArrowLeft';
|
|
21
|
+
} else if (direction === 'right') {
|
|
22
|
+
dir = 'ArrowRight';
|
|
23
|
+
} else if (direction === 'in') {
|
|
24
|
+
dir = '+';
|
|
25
|
+
} else if (direction === 'out') {
|
|
26
|
+
dir = '-';
|
|
27
|
+
}
|
|
28
|
+
yield page.focus('#map');
|
|
29
|
+
yield page.waitForTimeout(wait);
|
|
30
|
+
let i = 0;
|
|
31
|
+
for (i = 0; i < times; i++) {
|
|
32
|
+
yield page.keyboard.press(dir);
|
|
33
|
+
yield page.waitForTimeout(wait);
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
|
|
37
|
+
return function moveMap(_x, _x2, _x3) {
|
|
38
|
+
return _ref.apply(this, arguments);
|
|
39
|
+
};
|
|
40
|
+
})();
|
|
41
|
+
|
|
42
|
+
/* Zooms the map to a specific level
|
|
43
|
+
*/
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
let zoomToLevel = exports.zoomToLevel = (() => {
|
|
47
|
+
var _ref2 = _asyncToGenerator(function* (page, level, wait = 500) {
|
|
48
|
+
const zoom = yield core.getFromStore(page, 'mapActivity.zoom');
|
|
49
|
+
const diff = level - zoom;
|
|
50
|
+
const action = level > zoom ? 'in' : 'out';
|
|
51
|
+
yield moveMap(page, action, Math.abs(diff), wait);
|
|
52
|
+
yield page.waitForTimeout(wait);
|
|
53
|
+
});
|
|
54
|
+
|
|
55
|
+
return function zoomToLevel(_x4, _x5) {
|
|
56
|
+
return _ref2.apply(this, arguments);
|
|
57
|
+
};
|
|
58
|
+
})();
|
|
59
|
+
|
|
60
|
+
var _core = require('../core');
|
|
61
|
+
|
|
62
|
+
var core = _interopRequireWildcard(_core);
|
|
63
|
+
|
|
64
|
+
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }
|
|
65
|
+
|
|
66
|
+
function _asyncToGenerator(fn) { return function () { var gen = fn.apply(this, arguments); return new Promise(function (resolve, reject) { function step(key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { return Promise.resolve(value).then(function (value) { step("next", value); }, function (err) { step("throw", err); }); } } return step("next"); }); }; }
|
|
67
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../test/client/map/utils.js"],"names":["page","direction","times","wait","dir","focus","waitForTimeout","i","keyboard","press","moveMap","level","zoom","core","getFromStore","diff","action","Math","abs","zoomToLevel"],"mappings":";;;;;;;AAEA;;;;;+BAIO,WAAwBA,IAAxB,EAA8BC,SAA9B,EAAyCC,KAAzC,EAAgDC,OAAO,GAAvD,EAA4D;AACjE,QAAIC,GAAJ;AACA,QAAIH,cAAc,IAAlB,EAAwB;AAAEG,YAAM,SAAN;AAAiB,KAA3C,MAAiD,IAAIH,cAAc,MAAlB,EAA0B;AAAEG,YAAM,WAAN;AAAmB,KAA/C,MAAqD,IAAIH,cAAc,MAAlB,EAA0B;AAAEG,YAAM,WAAN;AAAmB,KAA/C,MAAqD,IAAIH,cAAc,OAAlB,EAA2B;AAAEG,YAAM,YAAN;AAAoB,KAAjD,MAAuD,IAAIH,cAAc,IAAlB,EAAwB;AAAEG,YAAM,GAAN;AAAW,KAArC,MAA2C,IAAIH,cAAc,KAAlB,EAAyB;AAAEG,YAAM,GAAN;AAAW;AACnS,UAAMJ,KAAKK,KAAL,CAAW,MAAX,CAAN;AACA,UAAML,KAAKM,cAAL,CAAoBH,IAApB,CAAN;AACA,QAAII,IAAI,CAAR;AACA,SAAKA,IAAI,CAAT,EAAYA,IAAIL,KAAhB,EAAuBK,GAAvB,EAA4B;AAC1B,YAAMP,KAAKQ,QAAL,CAAcC,KAAd,CAAoBL,GAApB,CAAN;AACA,YAAMJ,KAAKM,cAAL,CAAoBH,IAApB,CAAN;AACD;AACF,G;;kBAVqBO,O;;;;;AAYtB;;;;;gCAEO,WAA4BV,IAA5B,EAAkCW,KAAlC,EAAyCR,OAAO,GAAhD,EAAqD;AAC1D,UAAMS,OAAO,MAAMC,KAAKC,YAAL,CAAkBd,IAAlB,EAAwB,kBAAxB,CAAnB;AACA,UAAMe,OAAOJ,QAAQC,IAArB;AACA,UAAMI,SAAUL,QAAQC,IAAT,GAAiB,IAAjB,GAAwB,KAAvC;AACA,UAAMF,QAAQV,IAAR,EAAcgB,MAAd,EAAsBC,KAAKC,GAAL,CAASH,IAAT,CAAtB,EAAsCZ,IAAtC,CAAN;AACA,UAAMH,KAAKM,cAAL,CAAoBH,IAApB,CAAN;AACD,G;;kBANqBgB,W;;;;;AApBtB;;IAAYN,I","file":"utils.js","sourcesContent":["import * as core from '../core'\r\n\r\n/* Moves the map for a specific times:\r\n- in a choosen direction (left, right, up, down)\r\n- zoom in or out\r\n */\r\nexport async function moveMap (page, direction, times, wait = 500) {\r\n let dir\r\n if (direction === 'up') { dir = 'ArrowUp' } else if (direction === 'down') { dir = 'ArrowDown' } else if (direction === 'left') { dir = 'ArrowLeft' } else if (direction === 'right') { dir = 'ArrowRight' } else if (direction === 'in') { dir = '+' } else if (direction === 'out') { dir = '-' }\r\n await page.focus('#map')\r\n await page.waitForTimeout(wait)\r\n let i = 0\r\n for (i = 0; i < times; i++) {\r\n await page.keyboard.press(dir)\r\n await page.waitForTimeout(wait)\r\n }\r\n}\r\n\r\n/* Zooms the map to a specific level\r\n */\r\nexport async function zoomToLevel (page, level, wait = 500) {\r\n const zoom = await core.getFromStore(page, 'mapActivity.zoom')\r\n const diff = level - zoom\r\n const action = (level > zoom) ? 'in' : 'out'\r\n await moveMap(page, action, Math.abs(diff), wait)\r\n await page.waitForTimeout(wait)\r\n}\r\n"]}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kalisio/kdk",
|
|
3
3
|
"description": "Kalisio Development Kit",
|
|
4
|
-
"version": "1.
|
|
4
|
+
"version": "1.7.0",
|
|
5
5
|
"homepage": "https://github.com/kalisio/kdk",
|
|
6
6
|
"main": "lib/",
|
|
7
7
|
"keywords": [
|
|
@@ -142,7 +142,7 @@
|
|
|
142
142
|
},
|
|
143
143
|
"devDependencies": {
|
|
144
144
|
"@feathersjs/authentication-client": "^1.0.2",
|
|
145
|
-
"@kalisio/feathers-distributed": "^1.0.
|
|
145
|
+
"@kalisio/feathers-distributed": "^1.0.5",
|
|
146
146
|
"@turf/intersect": "^6.1.3",
|
|
147
147
|
"babel-cli": "^6.24.1",
|
|
148
148
|
"babel-eslint": "^10.0.3",
|
|
@@ -171,9 +171,9 @@
|
|
|
171
171
|
"puppeteer": "^10.2.0",
|
|
172
172
|
"shx": "^0.3.2",
|
|
173
173
|
"standard": "^14.0.0",
|
|
174
|
-
"weacast-core": "^1.
|
|
175
|
-
"weacast-gfs": "^1.
|
|
176
|
-
"weacast-probe": "^1.
|
|
174
|
+
"weacast-core": "^1.5.0",
|
|
175
|
+
"weacast-gfs": "^1.6.0",
|
|
176
|
+
"weacast-probe": "^1.5.1"
|
|
177
177
|
},
|
|
178
178
|
"peerDependencies": {}
|
|
179
179
|
}
|
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
module.exports = [{
|
|
2
|
-
target: '#menu-entries',
|
|
3
|
-
title: 'tours.favorite-views.FAVORITE_VIEWS_LIST_LABEL',
|
|
4
|
-
params: {
|
|
5
|
-
placement: 'top'
|
|
6
|
-
}
|
|
7
|
-
}, {
|
|
8
|
-
target: '#favorite-views-sorter-options',
|
|
9
|
-
title: 'tours.favorite-views.FAVORITE_VIEWS_LIST_ACTIONS_LABEL',
|
|
10
|
-
params: {
|
|
11
|
-
placement: 'bottom'
|
|
12
|
-
}
|
|
13
|
-
}, {
|
|
14
|
-
target: '#remove-favorite-view',
|
|
15
|
-
title: 'tours.favorite-views.FAVORITE_VIEW_ACTIONS_LABEL',
|
|
16
|
-
params: {
|
|
17
|
-
placement: 'left'
|
|
18
|
-
}
|
|
19
|
-
}, {
|
|
20
|
-
target: '#add-favorite-view',
|
|
21
|
-
content: 'tours.favorite-views.ADD_FAVORITE_VIEW_LABEL',
|
|
22
|
-
params: {
|
|
23
|
-
placement: 'left',
|
|
24
|
-
clickOnNext: '#add-favorite-view',
|
|
25
|
-
nextDelay: 1000
|
|
26
|
-
}
|
|
27
|
-
}, {
|
|
28
|
-
target: '#name-field',
|
|
29
|
-
content: 'tours.favorite-views.FAVORITE_VIEW_NAME_LABEL',
|
|
30
|
-
params: {
|
|
31
|
-
placement: 'bottom',
|
|
32
|
-
clickOnPrevious: '#back-button',
|
|
33
|
-
previousDelay: 1000
|
|
34
|
-
}
|
|
35
|
-
}, {
|
|
36
|
-
target: '#description-field',
|
|
37
|
-
content: 'tours.favorite-views.FAVORITE_VIEW_DESCRIPTION_LABEL',
|
|
38
|
-
params: {
|
|
39
|
-
placement: 'bottom'
|
|
40
|
-
}
|
|
41
|
-
}, {
|
|
42
|
-
target: '#layers-field',
|
|
43
|
-
content: 'tours.favorite-views.FAVORITE_VIEW_LAYERS_LABEL',
|
|
44
|
-
params: {
|
|
45
|
-
placement: 'top'
|
|
46
|
-
}
|
|
47
|
-
}, {
|
|
48
|
-
target: '#create-favorite-view',
|
|
49
|
-
title: 'tours.favorite-views.CREATE_NEW_FAVORITE_VIEW_LABEL',
|
|
50
|
-
params: {
|
|
51
|
-
placement: 'top'
|
|
52
|
-
}
|
|
53
|
-
}]
|
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<div id="chart-container" class="row">
|
|
3
|
-
<q-resize-observer @resize="onResized" />
|
|
4
|
-
<canvas class="col-12" ref="chart"></canvas>
|
|
5
|
-
</div>
|
|
6
|
-
</template>
|
|
7
|
-
|
|
8
|
-
<script>
|
|
9
|
-
import _ from 'lodash'
|
|
10
|
-
import chroma from 'chroma-js'
|
|
11
|
-
import { Chart } from 'chart.js'
|
|
12
|
-
|
|
13
|
-
export default {
|
|
14
|
-
name: 'k-chart',
|
|
15
|
-
props: {
|
|
16
|
-
config: {
|
|
17
|
-
type: Object,
|
|
18
|
-
required: true,
|
|
19
|
-
validator: (value) => {
|
|
20
|
-
return _.has(value, 'type') && _.has(value, 'data') && _.has(value, 'options')
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
},
|
|
24
|
-
watch: {
|
|
25
|
-
config: {
|
|
26
|
-
async handler () {
|
|
27
|
-
if (this.chart.config.type !== this.config.type) {
|
|
28
|
-
// Create a new chart
|
|
29
|
-
this.chart.destroy()
|
|
30
|
-
const config = _.cloneDeep(this.config)
|
|
31
|
-
this.colorize(config.data.datasets)
|
|
32
|
-
this.chart = new Chart(this.$refs.chart.getContext('2d'), config)
|
|
33
|
-
} else {
|
|
34
|
-
// Update the existing chart
|
|
35
|
-
this.chart.data.labels = _.cloneDeep(this.config.data.labels)
|
|
36
|
-
this.chart.data.datasets = _.cloneDeep(this.config.data.datasets)
|
|
37
|
-
this.colorize(this.chart.data.datasets)
|
|
38
|
-
this.chart.options = _.cloneDeep(this.config.options)
|
|
39
|
-
this.chart.update()
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
},
|
|
44
|
-
methods: {
|
|
45
|
-
colorize (datasets) {
|
|
46
|
-
_.forEach(datasets, dataset => {
|
|
47
|
-
if (!dataset.backgroundColor && dataset.colorScale) {
|
|
48
|
-
dataset.backgroundColor = chroma.scale(dataset.colorScale).colors(dataset.data.length)
|
|
49
|
-
}
|
|
50
|
-
})
|
|
51
|
-
},
|
|
52
|
-
onResized (size) {
|
|
53
|
-
if (!this.chart) this.chart = new Chart(this.$refs.chart.getContext('2d'), this.config)
|
|
54
|
-
}
|
|
55
|
-
},
|
|
56
|
-
beforeDestroy () {
|
|
57
|
-
if (this.chart) this.chart.destroy()
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
</script>
|