@eodash/eodash 5.0.0-alpha.2.26 → 5.0.0-alpha.2.27

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 (108) hide show
  1. package/core/client/asWebComponent.js +2 -3
  2. package/core/client/components/DashboardLayout.vue +35 -13
  3. package/core/client/components/Loading.vue +6 -9
  4. package/core/client/components/MobileLayout.vue +16 -14
  5. package/core/client/composables/DefineEodash.js +13 -3
  6. package/core/client/composables/DefineTemplate.js +67 -0
  7. package/core/client/composables/DefineWidgets.js +3 -2
  8. package/core/client/composables/EodashMap.js +39 -14
  9. package/core/client/composables/EodashProcess.js +574 -0
  10. package/core/client/composables/index.js +54 -11
  11. package/core/client/eodash.js +383 -125
  12. package/core/client/{utils/eodashSTAC.js → eodashSTAC/EodashCollection.js} +75 -41
  13. package/core/client/{utils → eodashSTAC}/createLayers.js +10 -8
  14. package/core/client/{utils → eodashSTAC}/helpers.js +47 -75
  15. package/core/client/eodashSTAC/triggers.js +43 -0
  16. package/core/client/plugins/vuetify.js +2 -1
  17. package/core/client/store/{Actions.js → actions.js} +16 -2
  18. package/core/client/store/index.js +4 -18
  19. package/core/client/store/stac.js +4 -4
  20. package/core/client/store/{States.js → states.js} +2 -0
  21. package/{dist/types/core/client/types.d.ts → core/client/types.ts} +47 -8
  22. package/core/client/utils/keys.js +2 -0
  23. package/core/client/utils/states.js +8 -3
  24. package/core/client/views/Dashboard.vue +6 -4
  25. package/core/client/vite-env.d.ts +1 -16
  26. package/dist/client/{DashboardLayout-E_JzgCH5.js → DashboardLayout-232tRmjz.js} +23 -25
  27. package/dist/client/{DynamicWebComponent-C9pVUfT3.js → DynamicWebComponent-Cl4LqHU6.js} +1 -1
  28. package/dist/client/{EodashDatePicker-CjU8R2ia.js → EodashDatePicker-Pok6bZwU.js} +78 -165
  29. package/dist/client/EodashItemFilter-16eMMjTV.js +151 -0
  30. package/dist/client/{EodashLayerControl-mKfwru42.js → EodashLayerControl-De7IlCm_.js} +19 -11
  31. package/dist/client/EodashLayoutSwitcher-C-3-jjn5.js +52 -0
  32. package/dist/client/{EodashMap-BpwL82-w.js → EodashMap-CMvbfI6-.js} +116 -39
  33. package/dist/client/EodashMapBtns-BeknGDtc.js +107 -0
  34. package/dist/client/EodashProcess-BwKAa9Ee.js +1476 -0
  35. package/dist/client/EodashStacInfo-_BfonNUG.js +85 -0
  36. package/dist/client/EodashTools-PD3XPYuR.js +103 -0
  37. package/dist/client/{ExportState-ByVuIAQb.js → ExportState-DOrT7M15.js} +5 -5
  38. package/dist/client/{Footer-D691KLtK.js → Footer-CCigxYBo.js} +1 -1
  39. package/dist/client/{Header-B8UBQstf.js → Header-C2cdx4gb.js} +3 -3
  40. package/dist/client/{MobileLayout-6bHjYguI.js → MobileLayout-BdiFjHg7.js} +28 -31
  41. package/dist/client/{PopUp-CdFcnKMY.js → PopUp--_xn1Cms.js} +37 -9
  42. package/dist/client/{VImg-fKGJ7xyb.js → VImg-9xu2l99m.js} +2 -2
  43. package/dist/client/{VMain-Hf5R6yWY.js → VMain-BUs3kDTd.js} +1 -1
  44. package/dist/client/{VOverlay-ClFjEtlD.js → VOverlay-D89omJis.js} +3 -3
  45. package/dist/client/VTooltip-CDu3bErh.js +86 -0
  46. package/dist/client/{WidgetsContainer-XXYJfaPR.js → WidgetsContainer-aFG9yFT6.js} +1 -1
  47. package/dist/client/{asWebComponent-BsbKnhGV.js → asWebComponent-BRGyP_j5.js} +1495 -1142
  48. package/dist/client/{style.css → eo-dash.css} +2 -2
  49. package/dist/client/eo-dash.js +1 -1
  50. package/dist/client/{forwardRefs-I2EA3z3_.js → forwardRefs-CYrR6bMw.js} +1 -1
  51. package/dist/client/{index-B3dnMr8a.js → index-BZwk0V42.js} +1 -1
  52. package/dist/client/{transition-DJ9gfiuP.js → transition-DG9nRSW4.js} +1 -1
  53. package/dist/node/cli.js +3 -3
  54. package/package.json +56 -34
  55. package/widgets/EodashDatePicker.vue +68 -54
  56. package/widgets/EodashItemFilter.vue +60 -105
  57. package/widgets/EodashLayerControl.vue +19 -8
  58. package/widgets/EodashLayoutSwitcher.vue +36 -0
  59. package/widgets/EodashMap.vue +27 -28
  60. package/widgets/EodashMapBtns.vue +41 -4
  61. package/widgets/EodashProcess.vue +143 -0
  62. package/widgets/EodashStacInfo.vue +82 -0
  63. package/widgets/EodashTools.vue +83 -0
  64. package/widgets/ExportState.vue +3 -3
  65. package/widgets/PopUp.vue +24 -2
  66. package/core/client/asWebComponent.d.ts +0 -23
  67. package/core/client/types.d.ts +0 -279
  68. package/dist/client/EodashItemFilter-VGQasaBJ.js +0 -194
  69. package/dist/client/EodashMapBtns-GNNBdBW9.js +0 -66
  70. package/dist/types/core/client/App.vue.d.ts +0 -7
  71. package/dist/types/core/client/asWebComponent.d.ts +0 -9
  72. package/dist/types/core/client/components/DashboardLayout.vue.d.ts +0 -2
  73. package/dist/types/core/client/components/DynamicWebComponent.vue.d.ts +0 -18
  74. package/dist/types/core/client/components/ErrorAlert.vue.d.ts +0 -2
  75. package/dist/types/core/client/components/Footer.vue.d.ts +0 -2
  76. package/dist/types/core/client/components/Header.vue.d.ts +0 -2
  77. package/dist/types/core/client/components/IframeWrapper.vue.d.ts +0 -7
  78. package/dist/types/core/client/components/Loading.vue.d.ts +0 -2
  79. package/dist/types/core/client/components/MobileLayout.vue.d.ts +0 -2
  80. package/dist/types/core/client/composables/DefineEodash.d.ts +0 -2
  81. package/dist/types/core/client/composables/DefineWidgets.d.ts +0 -14
  82. package/dist/types/core/client/composables/EodashMap.d.ts +0 -5
  83. package/dist/types/core/client/composables/index.d.ts +0 -29
  84. package/dist/types/core/client/eodash.d.ts +0 -8
  85. package/dist/types/core/client/main.d.ts +0 -2
  86. package/dist/types/core/client/plugins/axios.d.ts +0 -2
  87. package/dist/types/core/client/plugins/index.d.ts +0 -3
  88. package/dist/types/core/client/plugins/vuetify.d.ts +0 -82
  89. package/dist/types/core/client/render.d.ts +0 -1
  90. package/dist/types/core/client/store/Actions.d.ts +0 -11
  91. package/dist/types/core/client/store/States.d.ts +0 -21
  92. package/dist/types/core/client/store/index.d.ts +0 -2
  93. package/dist/types/core/client/store/stac.d.ts +0 -25
  94. package/dist/types/core/client/utils/createLayers.d.ts +0 -45
  95. package/dist/types/core/client/utils/eodashSTAC.d.ts +0 -82
  96. package/dist/types/core/client/utils/helpers.d.ts +0 -84
  97. package/dist/types/core/client/utils/index.d.ts +0 -2
  98. package/dist/types/core/client/utils/keys.d.ts +0 -6
  99. package/dist/types/core/client/utils/states.d.ts +0 -14
  100. package/dist/types/core/client/views/Dashboard.vue.d.ts +0 -9
  101. package/dist/types/widgets/EodashDatePicker.vue.d.ts +0 -7
  102. package/dist/types/widgets/EodashItemFilter.vue.d.ts +0 -33
  103. package/dist/types/widgets/EodashLayerControl.vue.d.ts +0 -7
  104. package/dist/types/widgets/EodashMap.vue.d.ts +0 -7
  105. package/dist/types/widgets/EodashMapBtns.vue.d.ts +0 -9
  106. package/dist/types/widgets/ExportState.vue.d.ts +0 -7
  107. package/dist/types/widgets/PopUp.vue.d.ts +0 -14
  108. package/dist/types/widgets/WidgetsContainer.vue.d.ts +0 -7
@@ -1,5 +1,5 @@
1
+ import { mdiViewDashboard, mdiViewDashboardVariant } from "@mdi/js";
1
2
  import { reactive } from "vue";
2
- import { currentUrl } from "./store/States";
3
3
 
4
4
  /**
5
5
  * Reactive Edoash Instance Object. provided globally in the app, and used as an
@@ -10,165 +10,423 @@ import { currentUrl } from "./store/States";
10
10
  export const eodash = reactive({
11
11
  id: "demo",
12
12
  stacEndpoint:
13
- "https://eodashcatalog.eox.at/test-style/trilateral/catalog.json",
13
+ // "https://eurodatacube.github.io/eodash-catalog/RACE/catalog.json",
14
+ // "https://gtif-cerulean.github.io/catalog/cerulean/catalog.json",
15
+ "https://eodashcatalog.eox.at/samplecatalog/samples/catalog.json",
16
+ // "https://eodashcatalog.eox.at/test-style/trilateral/catalog.json",
14
17
  // "https://gtif-cerulean.github.io/catalog/cerulean/catalog.json",
15
18
  brand: {
16
19
  noLayout: true,
17
20
  name: "Demo",
18
21
  theme: {
19
22
  colors: {
20
- primary: "#fff",
21
- secondary: "#fff",
22
- surface: "#fff",
23
+ primary: "#002742",
24
+ secondary: "#0071C2",
25
+ surface: "#ffff",
26
+ },
27
+ variables: {
28
+ "surface-opacity": 0.6,
29
+ "primary-opacity": 0.8,
23
30
  },
24
31
  },
25
32
  footerText: "Demo configuration of eodash client",
26
33
  },
27
- template: {
28
- loading: {
29
- id: Symbol(),
30
- type: "web-component",
31
- widget: {
32
- // https://uiball.com/ldrs/
33
- link: "https://cdn.jsdelivr.net/npm/ldrs/dist/auto/mirage.js",
34
- tagName: "l-mirage",
35
- properties: {
36
- class: "align-self-center justify-self-center",
37
- size: "120",
38
- speed: "2.5",
39
- color: "#004170",
34
+ templates: {
35
+ light: {
36
+ gap: 16,
37
+ loading: {
38
+ id: Symbol(),
39
+ type: "web-component",
40
+ widget: {
41
+ // https://uiball.com/ldrs/
42
+ link: "https://cdn.jsdelivr.net/npm/ldrs/dist/auto/mirage.js",
43
+ tagName: "l-mirage",
44
+ properties: {
45
+ class: "align-self-center justify-self-center",
46
+ size: "120",
47
+ speed: "2.5",
48
+ color: "#004170",
49
+ },
40
50
  },
41
51
  },
42
- },
43
- background: {
44
- id: Symbol(),
45
- type: "internal",
46
- widget: {
47
- name: "EodashMap",
48
- properties: {
49
- enableCompare: true,
52
+ background: {
53
+ id: Symbol(),
54
+ type: "internal",
55
+ widget: {
56
+ name: "EodashMap",
57
+ properties: {
58
+ enableCompare: true,
59
+ },
50
60
  },
51
61
  },
62
+ widgets: [
63
+ {
64
+ id: Symbol(),
65
+ type: "internal",
66
+ title: "Tools",
67
+ layout: { x: 0, y: 0, w: 3, h: 1 },
68
+ widget: {
69
+ name: "EodashTools",
70
+ properties: {
71
+ layoutTarget: "expert",
72
+ layoutIcon: mdiViewDashboardVariant,
73
+ itemFilterConfig: {
74
+ resultType: "cards",
75
+ filtersTitle: "",
76
+ style: "--padding: 72px",
77
+ filterProperties: [],
78
+ resultsTitle: "Explore more indicators",
79
+ subTitleProperty: "subtitle",
80
+ imageProperty: "thumbnail",
81
+ },
82
+ },
83
+ },
84
+ },
85
+ {
86
+ defineWidget: (selectedSTAC) => {
87
+ return selectedSTAC
88
+ ? {
89
+ id: "layercontrol-light",
90
+ type: "internal",
91
+ title: "Layers",
92
+ layout: { x: 0, y: 1, w: 3, h: 3 },
93
+ widget: {
94
+ name: "EodashLayerControl",
95
+ properties: {
96
+ slider: false,
97
+ tools: ["datetime", "info", "legend"],
98
+ cssVars: {
99
+ "--list-padding": "0",
100
+ "--tools-button-visibility": "none",
101
+ "--layer-input-visibility": "none",
102
+ "--layer-type-visibility": "none",
103
+ "--padding": "16px",
104
+ "--padding-vertical": "16px",
105
+ "--layer-tools-button-visibility": "none",
106
+ "--layer-summary-visibility": "none",
107
+ },
108
+ },
109
+ },
110
+ }
111
+ : null;
112
+ },
113
+ },
114
+ {
115
+ defineWidget: (selectedSTAC) => {
116
+ return selectedSTAC
117
+ ? {
118
+ id: "stacinfo-light",
119
+ type: "internal",
120
+ title: "Information",
121
+ layout: { x: 9, y: 0, w: 3, h: 6 },
122
+ widget: {
123
+ name: "EodashStacInfo",
124
+ properties: {
125
+ tags: [],
126
+ header: [],
127
+ footer: [],
128
+ body: ["description"],
129
+ styleOverride: "",
130
+ featured: [],
131
+ },
132
+ },
133
+ }
134
+ : null;
135
+ },
136
+ },
137
+ {
138
+ defineWidget: (selectedSTAC) => {
139
+ return selectedSTAC
140
+ ? {
141
+ id: "Datepicker",
142
+ type: "internal",
143
+ layout: { x: 5, y: 8, w: 2, h: 4 },
144
+ title: "Date",
145
+ widget: {
146
+ name: "EodashDatePicker",
147
+ properties: {
148
+ hideArrows: true,
149
+ hideInputField: true,
150
+ hintText: `<b>Hint:</b> closest available date is displayed <br />
151
+ on map (see Analysis Layers)`,
152
+ },
153
+ },
154
+ }
155
+ : null;
156
+ },
157
+ },
158
+ ],
52
159
  },
53
- widgets: [
54
- {
160
+ expert: {
161
+ loading: {
55
162
  id: Symbol(),
56
- type: "internal",
57
- title: "Indicators",
58
- layout: { x: 0, y: 0, w: 3, h: 6 },
163
+ type: "web-component",
59
164
  widget: {
60
- name: "EodashItemFilter",
165
+ // https://uiball.com/ldrs/
166
+ link: "https://cdn.jsdelivr.net/npm/ldrs/dist/auto/mirage.js",
167
+ tagName: "l-mirage",
61
168
  properties: {
62
- enableCompare: true,
63
- aggregateResults: "collection_group",
169
+ class: "align-self-center justify-self-center",
170
+ size: "120",
171
+ speed: "2.5",
172
+ color: "#004170",
64
173
  },
65
174
  },
66
175
  },
67
- {
176
+ background: {
68
177
  id: Symbol(),
69
178
  type: "internal",
70
- title: "Layer Control",
71
- layout: { x: 0, y: 6, w: 3, h: 6 },
72
179
  widget: {
73
- name: "EodashLayerControl",
180
+ name: "EodashMap",
181
+ properties: {
182
+ enableCompare: true,
183
+ },
74
184
  },
75
185
  },
76
- /*
77
- {
78
- defineWidget: (selectedCompareStac) => {
79
- return selectedCompareStac
80
- ? {
81
- id: Symbol(),
82
- title: "Layer Control Comparison",
83
- layout: { x: 9, y: 6, w: 3, h: 6 },
84
- type: "internal",
85
- widget: {
86
- name: "EodashLayerControl",
87
- properties: {
88
- map: "second",
89
- },
186
+ widgets: [
187
+ {
188
+ id: Symbol(),
189
+ type: "internal",
190
+ title: "Tools",
191
+ layout: { x: 0, y: 0, w: 3, h: 1 },
192
+ widget: {
193
+ name: "EodashTools",
194
+ properties: {
195
+ layoutTarget: "light",
196
+ layoutIcon: mdiViewDashboard,
197
+ itemFilterConfig: {
198
+ resultType: "cards",
199
+ subTitleProperty: "subtitle",
200
+ imageProperty: "thumbnail",
201
+ aggregateResults: "collection_group",
202
+ style: {
203
+ "--form-flex-direction": "row",
90
204
  },
91
- }
92
- : null;
205
+ },
206
+ },
207
+ },
93
208
  },
94
- },
95
- */
96
- {
97
- defineWidget: (selectedSTAC) => {
98
- return selectedSTAC
99
- ? {
100
- id: "Information",
101
- title: "Information",
102
- layout: { x: 9, y: 0, w: 3, h: 6 },
103
- type: "web-component",
104
- widget: {
105
- link: async () => await import("@eox/stacinfo"),
106
- properties: {
107
- for: currentUrl,
108
- allowHtml: "true",
109
- styleOverride: `.single-property {columns: 1!important;}
110
- h1 {margin:0px!important;font-size:16px!important;}
111
- header h1:after {
112
- content:' ';
113
- display:block;
114
- border:1px solid #d0d0d0;
115
- }
116
- h2 {font-size:15px}
117
- h3 {font-size:14px}
118
- summary {cursor: pointer;}
119
- #properties li > .value { font-weight: normal !important;}
120
- main {padding-bottom: 10px;}
121
- .footer-container {line-height:1;}
122
- .footer-container button {margin-top: -10px;}
123
- .footer-container small {font-size:10px;line-height:1;}`,
124
- header: '["title"]',
125
- tags: '["themes"]',
126
- subheader: "[]",
127
- properties: '["satellite","sensor","agency","extent"]',
128
- featured: '["description","providers","assets","links"]',
129
- footer: '["sci:citation"]',
209
+ {
210
+ id: Symbol(),
211
+ type: "internal",
212
+ title: "Layers",
213
+ layout: { x: 0, y: 1, w: 3, h: 6 },
214
+ widget: {
215
+ name: "EodashLayerControl",
216
+ },
217
+ },
218
+ {
219
+ defineWidget: (selectedSTAC) => {
220
+ return selectedSTAC
221
+ ? {
222
+ id: "Information",
223
+ title: "Information",
224
+ layout: { x: 9, y: 0, w: 3, h: 6 },
225
+ type: "internal",
226
+ widget: {
227
+ name: "EodashStacInfo",
228
+ properties: {
229
+ showIndicatorsBtn: false,
230
+ showLayoutSwitcher: false,
231
+ },
130
232
  },
131
- tagName: "eox-stacinfo",
132
- },
133
- }
134
- : null;
233
+ }
234
+ : null;
235
+ },
135
236
  },
136
- },
137
- {
138
- defineWidget: (selectedSTAC) => {
139
- return selectedSTAC
140
- ? {
141
- id: "Datepicker",
142
- type: "internal",
143
- layout: { x: 5, y: 10, w: 1, h: 1 },
144
- title: "Datepicker",
145
- widget: {
146
- name: "EodashDatePicker",
147
- properties: {
148
- hintText: `<b>Hint:</b> closest available date is displayed <br />
149
- on map (see Analysis Layers)`,
237
+ {
238
+ defineWidget: (selectedSTAC) => {
239
+ return selectedSTAC
240
+ ? {
241
+ id: "Datepicker",
242
+ type: "internal",
243
+ layout: { x: 5, y: 8, w: 2, h: 4 },
244
+ title: "Date",
245
+ widget: {
246
+ name: "EodashDatePicker",
247
+ properties: {
248
+ hintText: `<b>Hint:</b> closest available date is displayed <br />
249
+ on map (see Analysis Layers)`,
250
+ },
150
251
  },
151
- },
152
- }
153
- : null;
252
+ }
253
+ : null;
254
+ },
255
+ },
256
+ {
257
+ defineWidget: (selected) => {
258
+ return selected
259
+ ? {
260
+ id: "Buttons",
261
+ layout: { x: 8, y: 0, w: 1, h: 2 },
262
+ title: "Buttons",
263
+ type: "internal",
264
+ widget: {
265
+ name: "EodashMapBtns",
266
+ },
267
+ }
268
+ : null;
269
+ },
270
+ },
271
+ {
272
+ defineWidget: (selectedSTAC) =>
273
+ selectedSTAC?.links.some((l) => l.rel === "service")
274
+ ? {
275
+ id: Symbol(),
276
+ type: "internal",
277
+ title: "Processes",
278
+ layout: { x: 0, y: 7, w: 3, h: 5 },
279
+ widget: {
280
+ name: "EodashProcess",
281
+ },
282
+ }
283
+ : null,
284
+ },
285
+ ],
286
+ },
287
+ compare: {
288
+ gap: 16,
289
+ loading: {
290
+ id: Symbol(),
291
+ type: "web-component",
292
+ widget: {
293
+ // https://uiball.com/ldrs/
294
+ link: "https://cdn.jsdelivr.net/npm/ldrs/dist/auto/mirage.js",
295
+ tagName: "l-mirage",
296
+ properties: {
297
+ class: "align-self-center justify-self-center",
298
+ size: "120",
299
+ speed: "2.5",
300
+ color: "#004170",
301
+ },
154
302
  },
155
303
  },
156
- {
157
- defineWidget: (selected) => {
158
- return selected
159
- ? {
160
- id: "Buttons",
161
- layout: { x: 8, y: 0, w: 1, h: 1 },
162
- title: "Buttons",
163
- type: "internal",
164
- widget: {
165
- name: "EodashMapBtns",
166
- },
167
- }
168
- : null;
304
+ background: {
305
+ id: Symbol(),
306
+ type: "internal",
307
+ widget: {
308
+ name: "EodashMap",
309
+ properties: {
310
+ enableCompare: true,
311
+ },
169
312
  },
170
313
  },
171
- ],
314
+ widgets: [
315
+ {
316
+ id: Symbol(),
317
+ type: "internal",
318
+ title: "Tools",
319
+ layout: { x: 0, y: 0, w: 3, h: 1 },
320
+ widget: {
321
+ name: "EodashTools",
322
+ properties: {
323
+ layoutTarget: "expert",
324
+ layoutIcon: mdiViewDashboardVariant,
325
+ itemFilterConfig: {
326
+ cssVars: {
327
+ "--form-flex-direction": "row",
328
+ },
329
+ },
330
+ },
331
+ },
332
+ },
333
+ // compare indicators
334
+ {
335
+ id: Symbol(),
336
+ type: "internal",
337
+ title: "Tools",
338
+ layout: { x: 9, y: 0, w: 3, h: 1 },
339
+ widget: {
340
+ name: "EodashTools",
341
+ properties: {
342
+ showLayoutSwitcher: false,
343
+ indicatorBtnText: "Select an indicator to compare",
344
+ itemFilterConfig: {
345
+ enableCompare: true,
346
+ // resultsTitle:"Select an indicator to compare",
347
+ filtersTitle: "Select an indicator to compare",
348
+ // filterProperties: [],
349
+ cssVars: {
350
+ "--form-flex-direction": "row",
351
+ },
352
+ },
353
+ },
354
+ },
355
+ },
356
+ {
357
+ id: Symbol(),
358
+ type: "internal",
359
+ title: "Layers",
360
+ layout: { x: 0, y: 1, w: 3, h: 6 },
361
+ widget: {
362
+ name: "EodashLayerControl",
363
+ },
364
+ },
365
+ {
366
+ id: Symbol(),
367
+ title: "Comparison Layers",
368
+ layout: { x: 9, y: 1, w: 3, h: 6 },
369
+ type: "internal",
370
+ widget: {
371
+ name: "EodashLayerControl",
372
+ properties: {
373
+ map: "second",
374
+ },
375
+ },
376
+ },
377
+ {
378
+ defineWidget: (selectedSTAC) =>
379
+ selectedSTAC?.links.some((l) => l.rel === "service")
380
+ ? {
381
+ id: Symbol(),
382
+ type: "internal",
383
+ title: "Processes",
384
+ layout: { x: 0, y: 7, w: 3, h: 5 },
385
+ widget: {
386
+ name: "EodashProcess",
387
+ },
388
+ }
389
+ : null,
390
+ },
391
+ {
392
+ defineWidget: (selected) => {
393
+ return selected
394
+ ? {
395
+ id: "Buttons",
396
+ layout: { x: 8, y: 0, w: 1, h: 2 },
397
+ title: "Buttons",
398
+ type: "internal",
399
+ widget: {
400
+ name: "EodashMapBtns",
401
+ properties: {
402
+ compareIndicators: false,
403
+ },
404
+ },
405
+ }
406
+ : null;
407
+ },
408
+ },
409
+ {
410
+ defineWidget: (selectedSTAC) => {
411
+ return selectedSTAC
412
+ ? {
413
+ id: "Datepicker",
414
+ type: "internal",
415
+ layout: { x: 5, y: 8, w: 2, h: 4 },
416
+ title: "Date",
417
+ widget: {
418
+ name: "EodashDatePicker",
419
+ properties: {
420
+ hintText: `<b>Hint:</b> closest available date is displayed <br />
421
+ on map (see Analysis Layers)`,
422
+ },
423
+ },
424
+ }
425
+ : null;
426
+ },
427
+ },
428
+ ],
429
+ },
172
430
  },
173
431
  });
174
432