@eodash/eodash 5.6.1 → 5.7.1

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.
Files changed (133) hide show
  1. package/core/client/components/DashboardLayout.vue +1 -1
  2. package/core/client/components/EodashOverlay.vue +27 -4
  3. package/core/client/composables/DefineEodash.js +0 -1
  4. package/core/client/composables/DefineWidgets.js +3 -1
  5. package/core/client/composables/index.js +6 -2
  6. package/core/client/eodashSTAC/EodashCollection.js +79 -45
  7. package/core/client/eodashSTAC/cql.js +64 -0
  8. package/core/client/eodashSTAC/createLayers.js +192 -125
  9. package/core/client/eodashSTAC/helpers.js +423 -97
  10. package/core/client/eodashSTAC/mosaic.js +416 -0
  11. package/core/client/plugins/axios.js +31 -1
  12. package/core/client/store/actions.js +1 -1
  13. package/core/client/store/stac.js +25 -4
  14. package/core/client/store/states.js +20 -2
  15. package/core/client/types.ts +155 -29
  16. package/core/client/utils/bands-editor/exampleSchema.json +50 -50
  17. package/core/client/utils/index.js +4 -0
  18. package/core/client/utils/states.js +10 -0
  19. package/dist/client/{DashboardLayout-CqMb7OXc.js → DashboardLayout-ePbdvUTE.js} +5 -5
  20. package/dist/client/{DynamicWebComponent-DqKqTf7l.js → DynamicWebComponent-g5SdRbjY.js} +1 -1
  21. package/dist/client/{EodashChart-PkUQfH0k.js → EodashChart-ChrkA5oS.js} +7 -6
  22. package/dist/client/{EodashDatePicker-DLJGdTtX.js → EodashDatePicker-CY1TrsDo.js} +3 -3
  23. package/dist/client/{EodashItemFilter-Dk8KjFcX.js → EodashItemFilter-DzshHDlS.js} +2 -1
  24. package/dist/client/{EodashLayerControl-CC1Cogrn.js → EodashLayerControl-DMCeMkSd.js} +70 -22
  25. package/dist/client/{EodashLayoutSwitcher-5WZYd6rr.js → EodashLayoutSwitcher-iJ8mX1rF.js} +3 -3
  26. package/dist/client/EodashMapBtns-C7Cr7q5Y.js +592 -0
  27. package/dist/client/EodashStacInfo-K7-iuXa7.js +169 -0
  28. package/dist/client/{EodashTools-CGZtTh45.js → EodashTools-BEK7e7JM.js} +4 -4
  29. package/dist/client/{ExportState-Ce0ZnrX_.js → ExportState-CqIzfMYQ.js} +6 -168
  30. package/dist/client/{Footer-CnZqEiop.js → Footer-1P0cmBOZ.js} +1 -1
  31. package/dist/client/{Header-Dr5PBIm8.js → Header-CkkBaBNh.js} +2 -2
  32. package/dist/client/MobileLayout-BPf49kDU.js +118 -0
  33. package/dist/client/{PopUp-DjvE_71e.js → PopUp-DPZq5SWI.js} +4 -168
  34. package/dist/client/{ProcessList-kf3olI7W.js → ProcessList-DuI6WpS1.js} +5 -5
  35. package/dist/client/VDivider-Bj9LG_JV.js +168 -0
  36. package/dist/client/{VImg-Bj6uWt6j.js → VImg-Ddv5OyMz.js} +2 -2
  37. package/dist/client/{VMain-Cm0UmKGi.js → VMain-7yqk_qC3.js} +1 -1
  38. package/dist/client/{VTooltip-DbBu-ky3.js → VTooltip-2hAJyEoa.js} +2 -2
  39. package/dist/client/{WidgetsContainer-CfLnd44U.js → WidgetsContainer-2DOrlwCB.js} +1 -1
  40. package/dist/client/{asWebComponent-DfULAbpq.js → asWebComponent-BlFN2lkB.js} +493 -335
  41. package/dist/client/{async-CIbKXEEe.js → async-B2H8ZwUK.js} +21 -10
  42. package/dist/client/create-layers-config-u_vn5hPk.js +182 -0
  43. package/dist/client/dialog-transition-BrMkMiNa.js +170 -0
  44. package/dist/client/eo-dash.js +1 -1
  45. package/dist/client/{forwardRefs-yj3VWOK5.js → forwardRefs-DAlror6d.js} +8 -87
  46. package/dist/client/{handling-s8xt2JwF.js → handling-B6I1V5eG.js} +123 -85
  47. package/dist/client/{helpers-DAVGYl_f.js → helpers-CBqIUSXJ.js} +3034 -1649
  48. package/dist/client/index-BWq1ZKaV.js +3168 -0
  49. package/dist/client/{index-CYz6dT7K.js → index-CJ9UI3ln.js} +2 -2
  50. package/dist/client/index-DXLz4sFR.js +442 -0
  51. package/dist/client/{index-4TrjfJ32.js → index-DhKU6KqM.js} +230 -231
  52. package/dist/client/{index-Bu8BMA9q.js → index-DjQlbWbJ.js} +70 -83
  53. package/dist/client/material-symbols-outlined.woff2 +0 -0
  54. package/dist/client/material-symbols-rounded.woff2 +0 -0
  55. package/dist/client/material-symbols-sharp.woff2 +0 -0
  56. package/dist/client/material-symbols-subset.woff2 +0 -0
  57. package/dist/client/mosaic-BFYLEwyx.js +455 -0
  58. package/dist/client/templates.js +250 -119
  59. package/dist/client/{transition-DaOsiD4u.js → transition-D_W6Wn9v.js} +1 -1
  60. package/dist/node/cli.js +5 -5
  61. package/dist/node/types.d.ts +4 -0
  62. package/dist/types/core/client/composables/DefineEodash.d.ts +1 -1
  63. package/dist/types/core/client/composables/index.d.ts +1 -3
  64. package/dist/types/core/client/eodashSTAC/EodashCollection.d.ts +62 -31
  65. package/dist/types/core/client/eodashSTAC/cql.d.ts +15 -0
  66. package/dist/types/core/client/eodashSTAC/createLayers.d.ts +44 -25
  67. package/dist/types/core/client/eodashSTAC/helpers.d.ts +78 -18
  68. package/dist/types/core/client/eodashSTAC/mosaic.d.ts +56 -0
  69. package/dist/types/core/client/store/stac.d.ts +31 -7
  70. package/dist/types/core/client/store/states.d.ts +24 -2
  71. package/dist/types/core/client/types.d.ts +131 -25
  72. package/dist/types/core/client/utils/states.d.ts +12 -0
  73. package/dist/types/templates/baseConfig.d.ts +1 -88
  74. package/dist/types/templates/compare.d.ts +32 -3
  75. package/dist/types/templates/expert.d.ts +18 -0
  76. package/dist/types/templates/explore.d.ts +9 -1
  77. package/dist/types/templates/lite.d.ts +11 -0
  78. package/dist/types/widgets/EodashChart.vue.d.ts +5 -3
  79. package/dist/types/widgets/EodashItemCatalog/index.vue.d.ts +129 -2
  80. package/dist/types/widgets/EodashItemCatalog/methods/filters.d.ts +28 -6
  81. package/dist/types/widgets/EodashItemCatalog/methods/handlers.d.ts +17 -4
  82. package/dist/types/widgets/EodashItemCatalog/methods/map.d.ts +16 -4
  83. package/dist/types/widgets/EodashLayerControl.vue.d.ts +36 -17
  84. package/dist/types/widgets/EodashMap/EodashMapBtns.vue.d.ts +23 -10
  85. package/dist/types/widgets/EodashMap/index.vue.d.ts +91 -35
  86. package/dist/types/widgets/EodashMap/methods/create-layers-config.d.ts +1 -8
  87. package/dist/types/widgets/EodashMap/methods/index.d.ts +5 -1
  88. package/dist/types/widgets/EodashMap/methods/use-map-loading.d.ts +1 -0
  89. package/dist/types/widgets/EodashProcess/index.vue.d.ts +5 -3
  90. package/dist/types/widgets/EodashProcess/methods/composables.d.ts +1 -1
  91. package/dist/types/widgets/EodashProcess/methods/handling.d.ts +13 -8
  92. package/dist/types/widgets/EodashProcess/states.d.ts +1 -1
  93. package/dist/types/widgets/EodashStacInfo.vue.d.ts +20 -0
  94. package/dist/types/widgets/EodashTimeSlider/index.vue.d.ts +54 -0
  95. package/dist/types/widgets/EodashTimeSlider/methods/index.d.ts +34 -0
  96. package/dist/types/widgets/EodashTimeSlider/types.d.ts +52 -0
  97. package/dist/types/widgets/EodashTools.vue.d.ts +5 -5
  98. package/package.json +46 -46
  99. package/templates/baseConfig.js +36 -6
  100. package/templates/compare.js +62 -7
  101. package/templates/expert.js +23 -0
  102. package/templates/explore.js +11 -5
  103. package/templates/lite.js +14 -0
  104. package/widgets/EodashChart.vue +1 -0
  105. package/widgets/EodashItemCatalog/index.vue +363 -35
  106. package/widgets/EodashItemCatalog/methods/filters.js +134 -70
  107. package/widgets/EodashItemCatalog/methods/handlers.js +113 -19
  108. package/widgets/EodashItemCatalog/methods/map.js +142 -28
  109. package/widgets/EodashLayerControl.vue +64 -14
  110. package/widgets/EodashMap/EodashMapBtns.vue +153 -47
  111. package/widgets/EodashMap/index.vue +101 -105
  112. package/widgets/EodashMap/methods/btns.js +37 -5
  113. package/widgets/EodashMap/methods/create-layers-config.js +18 -16
  114. package/widgets/EodashMap/methods/index.js +89 -8
  115. package/widgets/EodashMap/methods/use-map-loading.js +52 -0
  116. package/widgets/EodashProcess/index.vue +2 -1
  117. package/widgets/EodashProcess/methods/async.js +19 -8
  118. package/widgets/EodashProcess/methods/composables.js +63 -77
  119. package/widgets/EodashProcess/methods/custom-endpoints/chart/sentinelhub-endpoint.js +9 -5
  120. package/widgets/EodashProcess/methods/custom-endpoints/chart/veda-endpoint.js +7 -4
  121. package/widgets/EodashProcess/methods/handling.js +105 -72
  122. package/widgets/EodashProcess/states.js +1 -1
  123. package/widgets/EodashStacInfo.vue +64 -2
  124. package/widgets/EodashTimeSlider/index.vue +208 -0
  125. package/widgets/EodashTimeSlider/methods/index.js +236 -0
  126. package/widgets/EodashTimeSlider/types.ts +54 -0
  127. package/dist/client/EodashMapBtns-BHrSDNoC.js +0 -435
  128. package/dist/client/EodashStacInfo-B90wobPc.js +0 -107
  129. package/dist/client/EodashTimeSlider-5vm7F3ju.js +0 -53
  130. package/dist/client/MobileLayout-DyMjaeif.js +0 -118
  131. package/dist/client/index-CugS__t5.js +0 -570
  132. package/dist/types/widgets/EodashTimeSlider.vue.d.ts +0 -15
  133. package/widgets/EodashTimeSlider.vue +0 -40
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@eodash/eodash",
3
- "version": "5.6.1",
3
+ "version": "5.7.1",
4
4
  "type": "module",
5
5
  "types": "./dist/types/core/client/types.d.ts",
6
6
  "files": [
@@ -60,79 +60,79 @@
60
60
  "lint": "eslint . --fix",
61
61
  "cypress": "cypress open --component ",
62
62
  "vitest": "vitest --isolate --ui",
63
- "test": "npm run test:client && npm run test:cli",
63
+ "test": "npm run test:client && npm run test:unit && npm run test:cli",
64
64
  "test:cli": "vitest run tests/cli --isolate",
65
- "test:client": "cypress run --component",
66
- "docs:dev": "vitepress dev docs --port 3333",
65
+ "test:client": "cypress run --component && npm run test:unit",
66
+ "test:unit": "vitest run tests/unit --isolate",
67
+ "docs:dev": "test -d docs/api || npm run docs:generate && vitepress dev docs --port 3333",
67
68
  "docs:build": "npm run docs:generate && vitepress build docs",
68
69
  "docs:preview": "vitepress preview docs",
69
70
  "docs:generate": "npm run build:cli && npm run build:types && typedoc --options typedoc.config.json"
70
71
  },
71
72
  "dependencies": {
72
- "@eox/chart": "^1.1.0",
73
- "@eox/drawtools": "1.1.5",
74
- "@eox/geosearch": "^1.1.0",
75
- "@eox/itemfilter": "^1.14.0",
76
- "@eox/jsonform": "^1.9.0",
77
- "@eox/layercontrol": "^1.4.0",
73
+ "@eox/chart": "^1.2.0",
74
+ "@eox/drawtools": "^1.6.0",
75
+ "@eox/feedback": "^1.2.0",
76
+ "@eox/geosearch": "^1.2.0",
77
+ "@eox/itemfilter": "^1.17.3",
78
+ "@eox/jsonform": "^1.12.1",
79
+ "@eox/layercontrol": "^1.7.0",
78
80
  "@eox/layout": "^1.0.0",
79
- "@eox/map": "^2.2.0",
80
- "@eox/stacinfo": "^1.1.0",
81
- "@eox/timecontrol": "^2.1.2",
82
- "@eox/timeslider": "https://pkg.pr.new/EOX-A/EOxElements/@eox/timeslider@9873028",
83
- "@eox/ui": "^0.6.0",
81
+ "@eox/map": "^2.6.1",
82
+ "@eox/stacinfo": "^1.2.0",
83
+ "@eox/timecontrol": "https://pkg.pr.new/EOX-A/EOxElements/@eox/timecontrol@476eb30",
84
+ "@eox/ui": "^1.1.0",
84
85
  "@mdi/js": "^7.4.47",
85
- "@vitejs/plugin-vue": "^6.0.4",
86
- "@vueuse/core": "^14.2.1",
86
+ "@vitejs/plugin-vue": "^6.0.7",
87
+ "@vueuse/core": "^14.3.0",
87
88
  "animated-details": "gist:2912bb049fa906671807415eb0e87188",
88
- "axios": "^1.13.5",
89
- "axios-cache-interceptor": "^1.11.4",
90
- "color-legend-element": "^1.3.0",
89
+ "axios": "^1.17.0",
90
+ "axios-cache-interceptor": "^1.12.0",
91
+ "color-legend-element": "^1.5.0",
91
92
  "commander": "^14.0.3",
92
- "core-js": "^3.48.0",
93
- "dotenv": "^17.3.1",
94
- "hyparquet": "^1.25.0",
93
+ "core-js": "^3.49.0",
94
+ "dotenv": "^17.4.2",
95
+ "hyparquet": "^1.26.0",
95
96
  "loglevel": "^1.9.2",
96
97
  "mustache": "^4.2.0",
97
98
  "pinia": "^3.0.4",
98
- "proj4": "^2.20.2",
99
- "sass": "^1.97.3",
100
- "stac-js": "^0.2.1",
101
- "stac-ts": "^1.0.4",
99
+ "proj4": "^2.20.8",
100
+ "sass": "^1.100.0",
101
+ "stac-js": "^0.4.3",
102
+ "stac-ts": "^1.0.5",
102
103
  "v-calendar": "3.0.0",
103
104
  "vega-embed": "^6.29.0",
104
105
  "vega-lite": "^5.23.0",
105
- "vite": "^7.3.1",
106
+ "vite": "^7.3.5",
106
107
  "vite-plugin-vuetify": "^2.1.3",
107
- "vue": "^3.5.29",
108
- "vuetify": "^3.11.4",
108
+ "vue": "^3.5.35",
109
+ "vuetify": "^3.12.8",
109
110
  "webfontloader": "^1.6.28"
110
111
  },
111
112
  "devDependencies": {
112
- "@babel/types": "^7.29.0",
113
- "@eox/eslint-config": "^2.0.0",
113
+ "@babel/types": "^7.29.7",
114
+ "@eox/eslint-config": "^2.1.0",
115
+ "@eox/pages-theme-eox": "^1.7.0",
114
116
  "@pinia/testing": "^1.0.3",
115
117
  "@types/json-schema": "^7.0.15",
116
118
  "@types/mustache": "^4.2.6",
117
- "@types/node": "^25.3.1",
119
+ "@types/node": "^25.9.1",
118
120
  "@types/openlayers": "^4.6.23",
119
121
  "@types/webfontloader": "^1.6.38",
120
- "cypress": "^15.11.0",
121
- "eslint": "^9.39.2",
122
- "eslint-plugin-vue": "^9.33.0",
123
- "pkg-pr-new": "^0.0.63",
124
- "prettier": "^3.8.1",
125
- "rollup": "^4.59.0",
122
+ "@typescript-eslint/parser": "^8.61.1",
123
+ "cypress": "^15.16.0",
124
+ "pkg-pr-new": "^0.0.75",
125
+ "prettier": "^3.8.3",
126
+ "rollup": "^4.61.1",
126
127
  "terminate": "^2.8.0",
127
- "tsc-alias": "^1.8.16",
128
- "typedoc": "^0.28.17",
129
- "typedoc-plugin-markdown": "^4.10.0",
128
+ "tsc-alias": "^1.8.17",
129
+ "typedoc": "^0.28.19",
130
+ "typedoc-plugin-markdown": "^4.12.0",
130
131
  "typedoc-plugin-vue": "^1.5.1",
131
- "typedoc-vitepress-theme": "^1.1.2",
132
+ "typedoc-vitepress-theme": "^1.1.3",
132
133
  "typescript": "^5.9.3",
133
- "vitepress": "^1.6.4",
134
- "vitest": "^4.0.18",
135
- "vue-tsc": "3.2.5"
134
+ "vitest": "^4.1.8",
135
+ "vue-tsc": "3.3.3"
136
136
  },
137
137
  "engines": {
138
138
  "node": ">=20.15.1"
@@ -1,4 +1,4 @@
1
- import { deepmergeInto } from "deepmerge-ts";
1
+ import { deepmergeCustom } from "deepmerge-ts";
2
2
  import lite from "./lite";
3
3
  import expert from "./expert";
4
4
  import compare from "./compare";
@@ -13,12 +13,14 @@ const baseConfig = {
13
13
  stacEndpoint: {
14
14
  endpoint:
15
15
  "https://esa-eodashboards.github.io/eodashboard-catalog/trilateral/catalog.json",
16
+ // "https://GTIF-Austria.github.io/public-catalog/pr-preview/pr-119/GTIF-Austria/catalog.json",
16
17
  // "https://api.explorer.eopf.copernicus.eu/stac",
17
18
  // api: true,
18
19
  supportedUpscalingEndpoints: [
19
- "openveda.cloud",
20
- "api.explorer.eopf.copernicus.eu",
20
+ { url: "openveda.cloud", titilerVersion: 1 },
21
+ { url: "api.explorer.eopf.copernicus.eu", titilerVersion: 2 },
21
22
  ],
23
+ rasterEndpoint: "https://api.explorer.eopf.copernicus.eu/rstaging",
22
24
  },
23
25
  brand: {
24
26
  noLayout: true,
@@ -66,13 +68,41 @@ const baseConfig = {
66
68
  },
67
69
  };
68
70
 
71
+ /**
72
+ * Arrays are replacement semantics (user array wins, not concat).
73
+ * mergeArrays:false ensures e.g. widgets/collectionsPalette/supportedUpscalingEndpoints
74
+ * supplied by the caller fully replace the base arrays.
75
+ */
76
+ const deepmerge = deepmergeCustom({ mergeArrays: false });
77
+
69
78
  /**
70
79
  * @param {import("vega-lite").DeepPartial<import("@/types").Eodash>} config
80
+ * @return {import("@/types").Eodash}
71
81
  */
72
82
  export const getBaseConfig = (config) => {
73
- const merged = /** @type {import("@/types").Eodash} */ ({});
74
- deepmergeInto(merged, baseConfig, config || {});
75
- return merged;
83
+ return /** @type {import("@/types").Eodash} */ (
84
+ deepmerge(cloneConfig(baseConfig), config || {})
85
+ );
76
86
  };
77
87
 
88
+ /**
89
+ * Shallow-safe deep clone that preserves functions and Symbols as references
90
+ * (they are intentionally shared; template functions and Symbol IDs are
91
+ * not mutable data). Only plain objects and arrays are cloned.
92
+ *
93
+ * @param {unknown} val
94
+ * @returns {unknown}
95
+ */
96
+ function cloneConfig(val) {
97
+ if (val === null || typeof val !== "object") return val;
98
+ if (Array.isArray(val)) return val.map(cloneConfig);
99
+ if (typeof val === "function") return val;
100
+ /** @type {Record<string, unknown>} */
101
+ const out = {};
102
+ for (const key of Object.keys(val)) {
103
+ out[key] = cloneConfig(/** @type {Record<string, unknown>} */ (val)[key]);
104
+ }
105
+ return out;
106
+ }
107
+
78
108
  export default baseConfig;
@@ -25,6 +25,29 @@ export default {
25
25
  name: "EodashMap",
26
26
  properties: {
27
27
  enableCompare: true,
28
+ baseLayers: [
29
+ {
30
+ type: "Group",
31
+ properties: {
32
+ id: "BaseLayersGroup",
33
+ title: "Base Layers",
34
+ },
35
+ layers: [
36
+ {
37
+ type: "Tile",
38
+ properties: {
39
+ id: "terrain-light;:;EPSG:3857",
40
+ title: "Terrain Light",
41
+ },
42
+ source: {
43
+ type: "XYZ",
44
+ //@ts-expect-error todo
45
+ url: "https://s2maps-tiles.eu/wmts/1.0.0/terrain-light_3857/default/g/{z}/{y}/{x}.jpeg",
46
+ },
47
+ },
48
+ ],
49
+ },
50
+ ],
28
51
  },
29
52
  },
30
53
  },
@@ -118,6 +141,26 @@ export default {
118
141
  },
119
142
  },
120
143
  },
144
+ // {
145
+ // defineWidget: (selectedSTAC) => {
146
+ // return selectedSTAC
147
+ // ? {
148
+ // id: "expert-Datepicker",
149
+ // type: "internal",
150
+ // layout: { x: 4, y: 7, w: 4, h: 5 },
151
+ // title: "Date",
152
+ // widget: {
153
+ // name: "EodashDatePicker",
154
+ // properties: {
155
+ // hintText: `<b>Hint:</b> closest available date is displayed <br />
156
+ // on map (see Analysis Layers)`,
157
+ // toggleCalendar: true,
158
+ // },
159
+ // },
160
+ // }
161
+ // : null;
162
+ // },
163
+ // },
121
164
  {
122
165
  defineWidget: () =>
123
166
  shouldShowChartWidget() && {
@@ -149,16 +192,28 @@ export default {
149
192
  defineWidget: (selectedSTAC) => {
150
193
  return selectedSTAC
151
194
  ? {
152
- id: "expert-Datepicker",
195
+ id: "expert-datetime",
153
196
  type: "internal",
154
- layout: { x: 4, y: 3, w: 4, h: 9 },
155
- title: "Date",
197
+ layout: { x: 1, y: 8, w: 8, h: 3 },
198
+ title: "Time Slider",
156
199
  widget: {
157
- name: "EodashDatePicker",
200
+ name: "EodashTimeSlider",
158
201
  properties: {
159
- hintText: `<b>Hint:</b> closest available date is displayed<br/>
160
- on map (see Analysis Layers)`,
161
- toggleCalendar: true,
202
+ filters: [
203
+ {
204
+ key: "eo:cloud_cover",
205
+ title: "Cloud Coverage %",
206
+ type: "range",
207
+ expanded: true,
208
+ min: 0,
209
+ max: 100,
210
+ step: 5,
211
+ state: {
212
+ min: 0,
213
+ max: 100,
214
+ },
215
+ },
216
+ ],
162
217
  },
163
218
  },
164
219
  }
@@ -24,6 +24,29 @@ export default {
24
24
  widget: {
25
25
  name: "EodashMap",
26
26
  properties: {
27
+ baseLayers: [
28
+ {
29
+ type: "Group",
30
+ properties: {
31
+ id: "BaseLayersGroup",
32
+ title: "Base Layers",
33
+ },
34
+ layers: [
35
+ {
36
+ type: "Tile",
37
+ properties: {
38
+ id: "terrain-light;:;EPSG:3857",
39
+ title: "Terrain Light",
40
+ },
41
+ source: {
42
+ type: "XYZ",
43
+ //@ts-expect-error todo
44
+ url: "https://s2maps-tiles.eu/wmts/1.0.0/terrain-light_3857/default/g/{z}/{y}/{x}.jpeg",
45
+ },
46
+ },
47
+ ],
48
+ },
49
+ ],
27
50
  enableCompare: true,
28
51
  zoomToExtent: true,
29
52
  btns: {
@@ -1,4 +1,3 @@
1
- // import { includesProcess } from "@/store/actions";
2
1
  /** @type {import("@/types").Template} */
3
2
  export default {
4
3
  gap: 16,
@@ -23,6 +22,7 @@ export default {
23
22
  widget: {
24
23
  name: "EodashMap",
25
24
  properties: {
25
+ zoomToExtent: false,
26
26
  enableCompare: true,
27
27
  btns: {
28
28
  enableZoom: true,
@@ -30,21 +30,23 @@ export default {
30
30
  enableChangeProjection: true,
31
31
  enableCompareIndicators: {
32
32
  fallbackTemplate: "explore",
33
+ compareTemplate: "compare",
33
34
  itemFilterConfig: {
34
35
  imageProperty: "assets.thumbnail.href",
35
36
  },
36
37
  },
37
- enableSearch: true,
38
+ enableBackToPOIs: false,
39
+ enableSearch: false,
38
40
  },
39
41
  },
40
42
  },
41
43
  },
42
44
  widgets: [
43
45
  {
44
- id: "Layercontrol",
46
+ id: "explore-layercontrol",
45
47
  type: "internal",
46
48
  title: "Layers",
47
- layout: { x: "9/9/10", y: 0, w: "3/3/2", h: 12 },
49
+ layout: { x: "9/9/10", y: 0, w: "3/3/2", h: 11 },
48
50
  widget: {
49
51
  name: "EodashLayerControl",
50
52
  },
@@ -53,9 +55,13 @@ export default {
53
55
  id: "ItemCatalog",
54
56
  title: "Catalog",
55
57
  type: "internal",
56
- layout: { x: 0, y: 0, w: "3/3/2", h: 12 },
58
+ layout: { x: 0, y: 0, w: "3/3/2", h: 11 },
57
59
  widget: {
58
60
  name: "EodashItemCatalog",
61
+ properties: {
62
+ layoutTarget: undefined,
63
+ hoverProperties: ["datetime", "eo:cloud_cover"],
64
+ },
59
65
  },
60
66
  },
61
67
  ],
package/templates/lite.js CHANGED
@@ -24,6 +24,20 @@ export default {
24
24
  widget: {
25
25
  name: "EodashMap",
26
26
  properties: {
27
+ baseLayers: [
28
+ {
29
+ type: "Tile",
30
+ properties: {
31
+ id: "terrain-light;:;EPSG:3857",
32
+ title: "Terrain Light",
33
+ },
34
+ source: {
35
+ type: "XYZ",
36
+ //@ts-expect-error todo
37
+ url: "https://s2maps-tiles.eu/wmts/1.0.0/terrain-light_3857/default/g/{z}/{y}/{x}.jpeg",
38
+ },
39
+ },
40
+ ],
27
41
  enableCompare: true,
28
42
  enableCursorCoordinates: false,
29
43
  enableScaleLine: false,
@@ -51,6 +51,7 @@ const { enableCompare, vegaEmbedOptions } = defineProps({
51
51
  default: false,
52
52
  },
53
53
  vegaEmbedOptions: {
54
+ /** @type {import("vue").PropType<import("vega-embed").EmbedOptions>} */
54
55
  type: Object,
55
56
  default() {
56
57
  return { actions: true };