@eodash/eodash 5.0.0-rc.2.1 → 5.0.0-rc.2.3

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 (59) hide show
  1. package/core/client/components/DashboardLayout.vue +3 -2
  2. package/core/client/components/DynamicWebComponent.vue +10 -3
  3. package/core/client/components/EodashOverlay.vue +56 -0
  4. package/core/client/components/Footer.vue +1 -15
  5. package/core/client/components/Header.vue +1 -1
  6. package/core/client/components/MobileLayout.vue +1 -0
  7. package/core/client/composables/DefineTemplate.js +13 -2
  8. package/core/client/composables/DefineWidgets.js +9 -4
  9. package/core/client/composables/EodashMap.js +2 -1
  10. package/core/client/eodash.js +18 -11
  11. package/core/client/eodashSTAC/EodashCollection.js +70 -35
  12. package/core/client/eodashSTAC/createLayers.js +21 -2
  13. package/core/client/eodashSTAC/helpers.js +7 -5
  14. package/core/client/types.ts +18 -13
  15. package/core/client/utils/index.js +112 -32
  16. package/core/client/utils/states.js +43 -0
  17. package/core/client/views/Dashboard.vue +26 -6
  18. package/dist/client/{DashboardLayout-BjUs7mYs.js → DashboardLayout-Reny_s87.js} +6 -6
  19. package/dist/client/{DynamicWebComponent-rIFx5c0f.js → DynamicWebComponent-DQPKIscC.js} +11 -4
  20. package/dist/client/{EodashDatePicker-brJlj1aQ.js → EodashDatePicker-E5GjnQQ2.js} +3 -3
  21. package/dist/client/{EodashItemFilter-C2i4lnM1.js → EodashItemFilter-DN77Uqgg.js} +1 -1
  22. package/dist/client/{EodashLayerControl-DNQzPQQ4.js → EodashLayerControl-DduVhg2O.js} +10 -3
  23. package/dist/client/{EodashLayoutSwitcher-gLe7G8Qn.js → EodashLayoutSwitcher-CeNnYuaC.js} +2 -2
  24. package/dist/client/{EodashMap-LOzTlvrM.js → EodashMap-C3bgcNJk.js} +10 -4
  25. package/dist/client/{EodashMapBtns-UXOupU5J.js → EodashMapBtns-B73UApEn.js} +4 -4
  26. package/dist/client/{EodashProcess-BlkqUdzj.js → EodashProcess-IQPnj17j.js} +14 -14
  27. package/dist/client/{EodashStacInfo-Df3LXKAw.js → EodashStacInfo-CeZqI75-.js} +1 -1
  28. package/dist/client/{EodashTools-BrqH4IDP.js → EodashTools-CAE604ZJ.js} +4 -4
  29. package/dist/client/{ExportState-DVosrSNY.js → ExportState-DXw8Dwvk.js} +4 -4
  30. package/dist/client/Footer-Bl9tQTyj.js +119 -0
  31. package/dist/client/{Header-DYMnh4of.js → Header-qH_kBs-u.js} +5 -5
  32. package/dist/client/{MobileLayout-Df4Z1bMl.js → MobileLayout-Du5n5XyY.js} +11 -11
  33. package/dist/client/{PopUp-BFcSuX3b.js → PopUp-B12NWJHU.js} +3 -3
  34. package/dist/client/{VImg-BO2Ysvsu.js → VImg-CjsuV4n9.js} +2 -2
  35. package/dist/client/{VMain-fx1gaM7Y.js → VMain-B11EjLm6.js} +1 -1
  36. package/dist/client/{VOverlay-CiQn3F6n.js → VOverlay-CLR2s8AQ.js} +3 -3
  37. package/dist/client/{VTooltip-DKOCofTl.js → VTooltip-DqyE5_aG.js} +3 -3
  38. package/dist/client/{WidgetsContainer-DL0bdnjh.js → WidgetsContainer-YI9ZycgC.js} +1 -1
  39. package/dist/client/{asWebComponent-N7ChSAQG.js → asWebComponent-DBkwthjq.js} +382 -115
  40. package/dist/client/eo-dash.css +2 -2
  41. package/dist/client/eo-dash.js +1 -1
  42. package/dist/client/{forwardRefs-C2UOEnvr.js → forwardRefs-BTYtR3pq.js} +1 -1
  43. package/dist/client/{index-BXi80Gr9.js → index-BhfdO0rU.js} +1 -1
  44. package/dist/client/{transition-w_2EtUxa.js → transition-B79onGGb.js} +1 -1
  45. package/dist/types/core/client/components/EodashOverlay.vue.d.ts +2 -0
  46. package/dist/types/core/client/eodashSTAC/EodashCollection.d.ts +36 -7
  47. package/dist/types/core/client/eodashSTAC/createLayers.d.ts +20 -0
  48. package/dist/types/core/client/eodashSTAC/helpers.d.ts +9 -6
  49. package/dist/types/core/client/types.d.ts +15 -11
  50. package/dist/types/core/client/utils/index.d.ts +1 -1
  51. package/dist/types/core/client/utils/states.d.ts +43 -0
  52. package/dist/types/widgets/EodashStacInfo.vue.d.ts +2 -2
  53. package/dist/types/widgets/PopUp.vue.d.ts +2 -2
  54. package/package.json +2 -1
  55. package/widgets/EodashDatePicker.vue +18 -0
  56. package/widgets/EodashLayerControl.vue +7 -0
  57. package/widgets/EodashMap.vue +7 -1
  58. package/widgets/EodashProcess.vue +13 -13
  59. package/dist/client/Footer-tjsscQ7O.js +0 -141
@@ -1,2 +1,2 @@
1
- export { aX as EodashConstructor, aY as register, aZ as store } from './asWebComponent-N7ChSAQG.js';
1
+ export { aX as EodashConstructor, aY as register, aZ as store } from './asWebComponent-DBkwthjq.js';
2
2
  import 'vue';
@@ -1,5 +1,5 @@
1
1
  import { shallowRef, computed, watch } from 'vue';
2
- import { p as propsFactory, aI as getCurrentInstance } from './asWebComponent-N7ChSAQG.js';
2
+ import { p as propsFactory, aI as getCurrentInstance } from './asWebComponent-DBkwthjq.js';
3
3
 
4
4
  class Box {
5
5
  constructor(_ref) {
@@ -1,5 +1,5 @@
1
1
  import { TransitionGroup, Transition, h, camelize } from 'vue';
2
- import { g as genericComponent, p as propsFactory } from './asWebComponent-N7ChSAQG.js';
2
+ import { g as genericComponent, p as propsFactory } from './asWebComponent-DBkwthjq.js';
3
3
 
4
4
  // Utilities
5
5
  const makeTransitionProps = propsFactory({
@@ -1,5 +1,5 @@
1
1
  import { h, mergeProps, TransitionGroup, Transition } from 'vue';
2
- import { p as propsFactory } from './asWebComponent-N7ChSAQG.js';
2
+ import { p as propsFactory } from './asWebComponent-DBkwthjq.js';
3
3
 
4
4
  // Utilities
5
5
  const makeTransitionProps = propsFactory({
@@ -0,0 +1,2 @@
1
+ declare const _default: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
2
+ export default _default;
@@ -4,12 +4,31 @@ export class EodashCollection {
4
4
  *
5
5
  * @param {import("stac-ts").StacCollection} indicator */
6
6
  static getIndicatorLayers(indicator: import("stac-ts").StacCollection): Promise<(Record<string, any> | {
7
+ interactions: never[];
8
+ style?: import("../types").EodashStyleJson | undefined;
9
+ type: string;
10
+ source: {
11
+ type: string;
12
+ url: string;
13
+ format: string;
14
+ attributions: unknown;
15
+ };
16
+ properties: {
17
+ layerConfig?: {
18
+ style: import("../types").EodashStyleJson | undefined;
19
+ } | undefined;
20
+ id: string;
21
+ title: string;
22
+ layerDatetime: Record<string, unknown> | undefined;
23
+ };
24
+ } | {
7
25
  style?: import("../types").EodashStyleJson | undefined;
8
26
  type: string;
9
27
  source: {
10
28
  type: string;
11
29
  url: string | undefined;
12
30
  format: string;
31
+ attributions: {}[];
13
32
  };
14
33
  properties: {
15
34
  layerConfig?: {
@@ -27,6 +46,7 @@ export class EodashCollection {
27
46
  interpolate: boolean;
28
47
  sources: {
29
48
  url: string;
49
+ attributions: unknown;
30
50
  }[];
31
51
  };
32
52
  properties: {
@@ -54,13 +74,22 @@ export class EodashCollection {
54
74
  url: string;
55
75
  format: string;
56
76
  };
57
- style: {
58
- "circle-radius": number;
59
- "circle-fill-color": string;
60
- "circle-stroke-color": string;
61
- "fill-color": string;
62
- "stroke-color": string;
63
- };
77
+ style: ({
78
+ filter: (string | (string | number)[])[];
79
+ style: {
80
+ "icon-src": string;
81
+ };
82
+ else?: boolean | undefined;
83
+ } | {
84
+ else: boolean;
85
+ style: {
86
+ "circle-radius": number;
87
+ "circle-fill-color": string;
88
+ "circle-stroke-color": string;
89
+ "fill-color": string;
90
+ "stroke-color": string;
91
+ };
92
+ })[];
64
93
  interactions: never[];
65
94
  } | null;
66
95
  /** @param {string} collectionUrl */
@@ -9,12 +9,31 @@
9
9
  * @param {object | null} [extraProperties]
10
10
  **/
11
11
  export function createLayersFromAssets(collectionId: string, title: string, assets: Record<string, import("stac-ts").StacAsset>, item: import("stac-ts").StacItem, style?: import("../types").EodashStyleJson, layerConfig?: Record<string, unknown>, layerDatetime?: Record<string, unknown>, extraProperties?: object | null): Promise<({
12
+ interactions: never[];
13
+ style?: import("../types").EodashStyleJson | undefined;
14
+ type: string;
15
+ source: {
16
+ type: string;
17
+ url: string;
18
+ format: string;
19
+ attributions: unknown;
20
+ };
21
+ properties: {
22
+ layerConfig?: {
23
+ style: import("../types").EodashStyleJson | undefined;
24
+ } | undefined;
25
+ id: string;
26
+ title: string;
27
+ layerDatetime: Record<string, unknown> | undefined;
28
+ };
29
+ } | {
12
30
  style?: import("../types").EodashStyleJson | undefined;
13
31
  type: string;
14
32
  source: {
15
33
  type: string;
16
34
  url: string | undefined;
17
35
  format: string;
36
+ attributions: {}[];
18
37
  };
19
38
  properties: {
20
39
  layerConfig?: {
@@ -32,6 +51,7 @@ export function createLayersFromAssets(collectionId: string, title: string, asse
32
51
  interpolate: boolean;
33
52
  sources: {
34
53
  url: string;
54
+ attributions: unknown;
35
55
  }[];
36
56
  };
37
57
  properties: {
@@ -1,5 +1,8 @@
1
- /** @param {import("stac-ts").StacLink[]} [links] */
2
- export function generateFeatures(links?: import("stac-ts").StacLink[]): {
1
+ /**
2
+ * @param {import("stac-ts").StacLink[]} [links]
3
+ * @param {Record<string,any>} [extraProperties]
4
+ **/
5
+ export function generateFeatures(links?: import("stac-ts").StacLink[], extraProperties?: Record<string, any>): {
3
6
  type: string;
4
7
  crs: {
5
8
  type: string;
@@ -49,7 +52,7 @@ export function assignProjID(item: import("stac-ts").StacItem, linkOrAsset: impo
49
52
  * @param {string[]} geojsonUrls
50
53
  */
51
54
  export function mergeGeojsons(geojsonUrls: string[]): Promise<string | undefined>;
52
- export function extractRoles(properties: Record<string, any>, linkOrAsset: import("stac-ts").StacLink | import("stac-ts").StacAsset): void;
55
+ export function extractRoles(properties: Record<string, any>, linkOrAsset: import("stac-ts").StacLink | import("stac-ts").StacAsset): Record<string, any>;
53
56
  export function fetchStyle(item: import("stac-ts").StacItem, itemUrl: string): Promise<{
54
57
  filter?: import("ol/expr/expression.js").ExpressionValue | undefined;
55
58
  "icon-src"?: string | undefined;
@@ -81,7 +84,7 @@ export function fetchStyle(item: import("stac-ts").StacItem, itemUrl: string): P
81
84
  "stroke-pattern-offset"?: number[] | import("ol/expr/expression.js").ExpressionValue | undefined;
82
85
  "stroke-pattern-offset-origin"?: import("ol/style/Icon.js").IconOrigin | undefined;
83
86
  "stroke-pattern-size"?: import("ol/size.js").Size | import("ol/expr/expression.js").ExpressionValue | undefined;
84
- "stroke-pattern-spacing"?: import("ol/expr/expression.js").ExpressionValue | undefined;
87
+ "stroke-pattern-spacing"?: import("ol/expr/expression.js" /** @type {import("../types").EodashStyleJson} */).ExpressionValue | undefined;
85
88
  "fill-color"?: import("ol/style/webgl.js").ColorExpression | undefined;
86
89
  "fill-pattern-src"?: string | undefined;
87
90
  "fill-pattern-offset"?: number[] | import("ol/expr/expression.js").ExpressionValue | undefined;
@@ -108,8 +111,8 @@ export function fetchStyle(item: import("stac-ts").StacItem, itemUrl: string): P
108
111
  "shape-rotation"?: import("ol/expr/expression.js").ExpressionValue | undefined;
109
112
  "shape-rotate-with-view"?: boolean | undefined;
110
113
  "shape-scale"?: import("ol/size.js").Size | import("ol/expr/expression.js").ExpressionValue | import("ol/expr/expression.js").ExpressionValue[] | undefined;
111
- variables?: Record<string, any>;
112
- legend?: Record<string, any>;
114
+ variables?: Record<string, string | number | boolean | null | undefined>;
115
+ legend?: import("@eox/layercontrol/src/components/layer-config.js").EOxLayerControlLayerConfig["layerConfig"]["legend"];
113
116
  jsonform?: Record<string, any>;
114
117
  tooltip?: {
115
118
  id: string;
@@ -14,7 +14,7 @@ export interface WebComponentProps<T extends ExecutionTime = "compiletime"> {
14
14
  * import maps are not available in runtime config
15
15
  * :::
16
16
  */
17
- link: T extends "runtime" ? string : string | (() => Promise<unknown>);
17
+ link?: T extends "runtime" ? string : string | (() => Promise<unknown>);
18
18
  /**
19
19
  * Exported Constructor, needs to be provided if the web component is not
20
20
  * registered in by the [link](#link) provided
@@ -161,6 +161,15 @@ export type MultiTemplates<T extends ExecutionTime = "compiletime"> = Record<str
161
161
  export type StacEndpoint = `${string}/catalog.json`;
162
162
  /** @group Eodash */
163
163
  type ExecutionTime = "runtime" | "compiletime";
164
+ type EodashFont = {
165
+ /**
166
+ * Link to stylesheet that defines font-face. Could be either a relative
167
+ * or absolute URL.
168
+ */
169
+ link?: string;
170
+ /** Font family name. */
171
+ family: string;
172
+ };
164
173
  /**
165
174
  * Eodash instance API
166
175
  *
@@ -178,14 +187,9 @@ export type Eodash<T extends ExecutionTime = "compiletime"> = {
178
187
  /** Custom error message to alert the users if something crashes */
179
188
  errorMessage?: string;
180
189
  /** Fetches the specified font family from the specified `link` property. */
181
- font?: {
182
- /**
183
- * Link to stylesheet that defines font-face. Could be either a relative
184
- * or absolute URL.
185
- */
186
- link: string;
187
- /** Font family name. */
188
- family: string;
190
+ font?: EodashFont | {
191
+ body: EodashFont;
192
+ headers: EodashFont;
189
193
  };
190
194
  /** Title that will be shown in the app header */
191
195
  name: string;
@@ -270,8 +274,8 @@ export declare function register(): void;
270
274
  export declare const store: typeof import("./store").default;
271
275
  export * from "./main.js";
272
276
  export type EodashStyleJson = import("ol/style/webgl.js").WebGLStyle & {
273
- variables?: Record<string, any>;
274
- legend?: Record<string, any>;
277
+ variables?: Record<string, string | number | boolean | null | undefined>;
278
+ legend?: import("@eox/layercontrol/src/components/layer-config.js").EOxLayerControlLayerConfig["layerConfig"]["legend"];
275
279
  jsonform?: Record<string, any>;
276
280
  tooltip?: {
277
281
  id: string;
@@ -1,3 +1,3 @@
1
- export function loadFont(family?: string, link?: string, isWebComponent?: boolean): Promise<string>;
1
+ export function loadFont(fontConfig: import("../types").Eodash["brand"]["font"], isWebComponent: boolean): Promise<string[]>;
2
2
  export function copyToClipBoard(text: string, showIcon: import("vue").Ref<boolean>): Promise<void>;
3
3
  export function setCollectionsPalette(colors: string[]): void;
@@ -25,3 +25,46 @@ export const layerControlFormValue: import("vue").Ref<Record<string, any> | unde
25
25
  * STAC indicators color palette, defaults to Bank-Wong palette
26
26
  * @type {string[]} */
27
27
  export const collectionsPalette: string[];
28
+ export namespace dataThemesBrands {
29
+ namespace agriculture {
30
+ export { mdiBarley as icon };
31
+ export let color: string;
32
+ }
33
+ namespace water {
34
+ export { mdiWater as icon };
35
+ let color_1: string;
36
+ export { color_1 as color };
37
+ }
38
+ namespace land {
39
+ export { mdiImageFilterHdr as icon };
40
+ let color_2: string;
41
+ export { color_2 as color };
42
+ }
43
+ namespace health {
44
+ export { mdiHospitalBoxOutline as icon };
45
+ let color_3: string;
46
+ export { color_3 as color };
47
+ }
48
+ namespace combined {
49
+ export { mdiSetCenter as icon };
50
+ let color_4: string;
51
+ export { color_4 as color };
52
+ }
53
+ namespace air {
54
+ export { mdiWeatherWindy as icon };
55
+ let color_5: string;
56
+ export { color_5 as color };
57
+ }
58
+ namespace economy {
59
+ export { mdiCurrencyEur as icon };
60
+ let color_6: string;
61
+ export { color_6 as color };
62
+ }
63
+ }
64
+ import { mdiBarley } from "@mdi/js";
65
+ import { mdiWater } from "@mdi/js";
66
+ import { mdiImageFilterHdr } from "@mdi/js";
67
+ import { mdiHospitalBoxOutline } from "@mdi/js";
68
+ import { mdiSetCenter } from "@mdi/js";
69
+ import { mdiWeatherWindy } from "@mdi/js";
70
+ import { mdiCurrencyEur } from "@mdi/js";
@@ -1,18 +1,18 @@
1
1
  declare const _default: import("vue").DefineComponent<{}, {
2
+ body: unknown[];
2
3
  styleOverride: string;
3
4
  tags: unknown[];
4
5
  header: unknown[];
5
6
  footer: unknown[];
6
- body: unknown[];
7
7
  featured: unknown[];
8
8
  allowHtml: boolean;
9
9
  subheader: unknown[];
10
10
  $props: {
11
+ readonly body?: unknown[] | undefined;
11
12
  readonly styleOverride?: string | undefined;
12
13
  readonly tags?: unknown[] | undefined;
13
14
  readonly header?: unknown[] | undefined;
14
15
  readonly footer?: unknown[] | undefined;
15
- readonly body?: unknown[] | undefined;
16
16
  readonly featured?: unknown[] | undefined;
17
17
  readonly allowHtml?: boolean | undefined;
18
18
  readonly subheader?: unknown[] | undefined;
@@ -4,16 +4,16 @@ type __VLS_WithTemplateSlots<T, S> = T & (new () => {
4
4
  $slots: S;
5
5
  });
6
6
  declare const __VLS_component: import("vue").DefineComponent<{}, {
7
+ width: string;
7
8
  height: string;
8
9
  maxHeight: string;
9
10
  maxWidth: string;
10
- width: string;
11
11
  widget?: import("../core/client/types").Widget<"compiletime"> | undefined;
12
12
  $props: {
13
+ readonly width?: string | undefined;
13
14
  readonly height?: string | undefined;
14
15
  readonly maxHeight?: string | undefined;
15
16
  readonly maxWidth?: string | undefined;
16
- readonly width?: string | undefined;
17
17
  readonly widget?: import("../core/client/types").Widget<"compiletime"> | undefined;
18
18
  };
19
19
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, HTMLSpanElement>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@eodash/eodash",
3
- "version": "5.0.0-rc.2.1",
3
+ "version": "5.0.0-rc.2.3",
4
4
  "type": "module",
5
5
  "types": "./dist/types/core/client/types.d.ts",
6
6
  "files": [
@@ -104,6 +104,7 @@
104
104
  "cypress": "^13.17.0",
105
105
  "eslint": "^9.18.0",
106
106
  "eslint-plugin-vue": "^9.32.0",
107
+ "pkg-pr-new": "^0.0.39",
107
108
  "prettier": "^3.4.2",
108
109
  "rollup": "^4.31.0",
109
110
  "terminate": "^2.8.0",
@@ -298,6 +298,24 @@ onMounted(() => {
298
298
  makePanelTransparent(rootEl);
299
299
  </script>
300
300
  <style>
301
+ .vc-popover-content {
302
+ --vc-nav-hover-bg: rgba(var(--v-theme-on-surface), 0.1);
303
+ --vc-nav-item-active-color: rgb(var(--v-theme-on-secondary));
304
+ --vc-nav-item-active-bg: rgba(var(--v-theme-secondary), 0.8);
305
+ --vc-focus-ring: 0 0 0 2px rgba(var(--v-theme-secondary), 0.5);
306
+ }
307
+ .vc-container {
308
+ --vc-day-content-hover-bg: rgba(var(--v-theme-on-surface), 0.2);
309
+ --vc-focus-ring: 0 0 0 2px rgba(var(--v-theme-secondary), 0.4);
310
+ --vc-header-arrow-hover-bg: rgba(var(--v-theme-secondary), 0.1);
311
+ }
312
+ .vc-attr {
313
+ --vc-accent-600: rgba(var(--v-theme-secondary), 0.8);
314
+ }
315
+ .datePicker {
316
+ --vc-day-content-hover-bg: red;
317
+ }
318
+
301
319
  @media (min-width: 960px) {
302
320
  .datePicker {
303
321
  position: absolute;
@@ -10,6 +10,7 @@
10
10
  style="--eox-background-color: transparent"
11
11
  ref="eoxLayercontrol"
12
12
  @layerConfig:change="onLayerConfigChange"
13
+ .styleOverride="styleOverride"
13
14
  />
14
15
  </span>
15
16
  </template>
@@ -120,4 +121,10 @@ const debouncedHandleDateTime = (evt) => {
120
121
  const onLayerConfigChange = (evt) => {
121
122
  layerControlFormValue.value = evt.detail.jsonformValue;
122
123
  };
124
+
125
+ const styleOverride = `
126
+ input[type="range"] {
127
+ background:transparent !important;
128
+ }
129
+ `;
123
130
  </script>
@@ -12,6 +12,7 @@
12
12
  .center="initialCenter"
13
13
  .zoom="initialZoom"
14
14
  .layers="eoxMapLayers"
15
+ .controls="controls"
15
16
  >
16
17
  <eox-map-tooltip
17
18
  :style="tooltipStyles"
@@ -70,7 +71,12 @@ const props = defineProps({
70
71
 
71
72
  /** @type {import("vue").Ref<Exclude<import("@/types").EodashStyleJson["tooltip"], undefined>>} */
72
73
  const tooltipProperties = ref([]);
73
-
74
+ /** @type {import("@eox/map").EOxMap["controls"]} */
75
+ const controls = {
76
+ Attribution: {
77
+ collapsible: true,
78
+ },
79
+ };
74
80
  const initialCenter = toRaw([
75
81
  mapPosition.value?.[0] ?? props.center?.[0],
76
82
  mapPosition.value?.[1] ?? props.center?.[1],
@@ -110,7 +110,19 @@ const downloadResults = () => {
110
110
  };
111
111
  onMounted(async () => {
112
112
  // wait for the layers to be rendered
113
- if (mapEl.value?.layers.length <= 1) {
113
+ if (mapEl.value?.layers.length > 1) {
114
+ await initProcess({
115
+ //@ts-expect-error TODO
116
+ selectedStac,
117
+ jsonformEl,
118
+ jsonformSchema,
119
+ chartSpec,
120
+ isProcessed,
121
+ processResults,
122
+ loading,
123
+ isPolling,
124
+ });
125
+ } else {
114
126
  layersEvents.once(async () => {
115
127
  await initProcess({
116
128
  //@ts-expect-error TODO
@@ -124,18 +136,6 @@ onMounted(async () => {
124
136
  isPolling,
125
137
  });
126
138
  });
127
- } else {
128
- await initProcess({
129
- //@ts-expect-error TODO
130
- selectedStac,
131
- jsonformEl,
132
- jsonformSchema,
133
- chartSpec,
134
- isProcessed,
135
- processResults,
136
- loading,
137
- isPolling,
138
- });
139
139
  }
140
140
  });
141
141
 
@@ -1,141 +0,0 @@
1
- import { ref, toRef, shallowRef, computed, createVNode, watchEffect, inject, openBlock, createBlock, unref, withCtx, createElementVNode, toDisplayString, createTextVNode } from 'vue';
2
- import { p as propsFactory, K as makeBorderProps, b as makeComponentProps, L as makeElevationProps, T as makeLayoutItemProps, M as makeRoundedProps, c as makeTagProps, d as makeThemeProps, g as genericComponent, e as provideTheme, C as useBackgroundColor, N as useBorder, O as useElevation, P as useRounded, v as useResizeObserver, U as useToggleScope, a as useRender, q as convertToUnit, W as useLayoutItem, _ as _export_sfc, X as eodashKey, t as useDisplay } from './asWebComponent-N7ChSAQG.js';
3
-
4
- const makeVFooterProps = propsFactory({
5
- app: Boolean,
6
- color: String,
7
- height: {
8
- type: [Number, String],
9
- default: 'auto'
10
- },
11
- ...makeBorderProps(),
12
- ...makeComponentProps(),
13
- ...makeElevationProps(),
14
- ...makeLayoutItemProps(),
15
- ...makeRoundedProps(),
16
- ...makeTagProps({
17
- tag: 'footer'
18
- }),
19
- ...makeThemeProps()
20
- }, 'VFooter');
21
- const VFooter = genericComponent()({
22
- name: 'VFooter',
23
- props: makeVFooterProps(),
24
- setup(props, _ref) {
25
- let {
26
- slots
27
- } = _ref;
28
- const layoutItemStyles = ref();
29
- const {
30
- themeClasses
31
- } = provideTheme(props);
32
- const {
33
- backgroundColorClasses,
34
- backgroundColorStyles
35
- } = useBackgroundColor(toRef(props, 'color'));
36
- const {
37
- borderClasses
38
- } = useBorder(props);
39
- const {
40
- elevationClasses
41
- } = useElevation(props);
42
- const {
43
- roundedClasses
44
- } = useRounded(props);
45
- const autoHeight = shallowRef(32);
46
- const {
47
- resizeRef
48
- } = useResizeObserver(entries => {
49
- if (!entries.length) return;
50
- autoHeight.value = entries[0].target.clientHeight;
51
- });
52
- const height = computed(() => props.height === 'auto' ? autoHeight.value : parseInt(props.height, 10));
53
- useToggleScope(() => props.app, () => {
54
- const layout = useLayoutItem({
55
- id: props.name,
56
- order: computed(() => parseInt(props.order, 10)),
57
- position: computed(() => 'bottom'),
58
- layoutSize: height,
59
- elementSize: computed(() => props.height === 'auto' ? undefined : height.value),
60
- active: computed(() => props.app),
61
- absolute: toRef(props, 'absolute')
62
- });
63
- watchEffect(() => {
64
- layoutItemStyles.value = layout.layoutItemStyles.value;
65
- });
66
- });
67
- useRender(() => createVNode(props.tag, {
68
- "ref": resizeRef,
69
- "class": ['v-footer', themeClasses.value, backgroundColorClasses.value, borderClasses.value, elevationClasses.value, roundedClasses.value, props.class],
70
- "style": [backgroundColorStyles.value, props.app ? layoutItemStyles.value : {
71
- height: convertToUnit(props.height)
72
- }, props.style]
73
- }, slots));
74
- return {};
75
- }
76
- });
77
-
78
- const _hoisted_1 = { class: "pt-0 footer-text" };
79
- const _hoisted_2 = {
80
- href: "https://eox.at",
81
- target: "_blank",
82
- class: "text-white"
83
- };
84
- const _hoisted_3 = ["src"];
85
-
86
- /**
87
- * Footer template ref
88
- *
89
- * @type {import("vue").Ref<
90
- * import("vuetify/lib/components/index.mjs").VFooter | null
91
- * >}
92
- */
93
- const eoxLogo = `<svg width="100%" height="100%" viewBox="0 0 355 85" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:1.41421;"><g id="ink_ext_XXXXXX"><path id="path5076" d="M152.986,40.52l-0.75,-0.019l-0.737,-0.056l-0.725,-0.093l-0.713,-0.127l-0.7,-0.162l-0.7,-0.196l-0.675,-0.228l-0.65,-0.261l-0.65,-0.292l-0.625,-0.319l-0.612,-0.352l-0.588,-0.377l-0.562,-0.407l-0.55,-0.431l-0.538,-0.457l-0.5,-0.481l-0.487,-0.505l-0.45,-0.528l-0.438,-0.55l-0.4,-0.57l-0.375,-0.59l-0.35,-0.609l-0.325,-0.627l-0.287,-0.645l-0.263,-0.66l-0.225,-0.676l-0.2,-0.69l-0.162,-0.704l-0.125,-0.717l-0.1,-0.728l-0.05,-0.739l-0.025,-0.748c0,-8.023 6.512,-14.532 14.537,-14.532c8.038,0 14.538,6.509 14.538,14.532c0,8.036 -6.5,14.544 -14.538,14.544Z" style="fill:none;"/><path id="path5078" d="M165.748,-0.002c-42.009,0 -76.06,18.985 -76.06,42.402c0,13.268 10.921,25.102 28.021,32.875c-8.081,-5.487 -13.403,-12.973 -14.584,-21.859c-2.685,-20.186 16.83,-40.82 45.148,-49.615c-14.687,6.665 -24.923,21.427 -24.923,38.599c0,23.218 18.648,42.046 41.773,42.383c-0.037,0.005 -0.087,0.015 -0.137,0.02c0.263,0 0.512,0.009 0.762,0.009c42.013,0 76.076,-18.984 76.076,-42.412c0,-13.261 -10.937,-25.097 -28.037,-32.871l0.75,0.522l0.736,0.531l0.713,0.543l0.7,0.555l0.687,0.566l0.664,0.578l0.649,0.588l0.625,0.6l0.613,0.609l0.588,0.621l0.574,0.631l0.562,0.643l0.538,0.652l0.513,0.662l0.5,0.672l0.475,0.684l0.449,0.693l0.438,0.703l0.425,0.713l0.387,0.723l0.375,0.73l0.352,0.74l0.336,0.75l0.3,0.76l0.287,0.77l0.264,0.777l0.25,0.787l0.211,0.795l0.188,0.805l0.175,0.812l0.151,0.82l0.125,0.831c2.675,20.19 -16.838,40.825 -45.151,49.619c14.688,-6.665 24.926,-21.426 24.926,-38.614c0,-23.202 -18.65,-42.026 -41.775,-42.367c0.05,-0.005 0.1,-0.015 0.15,-0.025c-0.262,0 -0.526,-0.01 -0.789,-0.01Zm-13.248,11.314c7.817,0 14.25,6.433 14.25,14.25c0,0.001 0,0.001 0,0.001c0,7.817 -6.433,14.249 -14.25,14.249c-7.817,0 -14.25,-6.432 -14.25,-14.249c0,-0.001 0,-0.001 0,-0.001c0,-7.817 6.433,-14.25 14.25,-14.25Z" style="fill:#fff;fill-rule:nonzero;"/><path id="path5080" d="M213.786,9.529l0.75,0.521l0.738,0.532l0.712,0.544l0.7,0.555l0.688,0.566l0.662,0.577l0.65,0.588l0.625,0.6l0.613,0.61l0.587,0.62l0.575,0.631l0.563,0.643l0.537,0.652l0.513,0.663l0.5,0.672l0.475,0.684l0.45,0.692l0.437,0.703l0.425,0.712l0.388,0.723l0.375,0.731l0.35,0.741l0.337,0.75l0.3,0.76l0.288,0.769l0.262,0.777l0.25,0.786l0.213,0.797l0.187,0.804l0.175,0.812l0.15,0.821l0.125,0.83c2.675,20.19 -16.837,40.825 -45.15,49.619c14.688,-6.665 24.925,-21.426 24.925,-38.614c0,-23.202 -18.65,-42.025 -41.775,-42.367c0.05,-0.005 0.1,-0.015 0.15,-0.025c-0.262,0 -0.525,-0.01 -0.787,-0.01c-42.01,0 -76.062,18.985 -76.062,42.402c0,13.268 10.922,25.103 28.022,32.876c-8.081,-5.487 -13.403,-12.973 -14.584,-21.859c-2.685,-20.187 16.831,-40.82 45.149,-49.615c-14.688,6.665 -24.925,21.426 -24.925,38.598c0,23.218 18.65,42.046 41.775,42.383c-0.038,0.005 -0.088,0.015 -0.138,0.02c0.263,0 0.513,0.01 0.763,0.01c42.012,-0.001 76.075,-18.985 76.075,-42.413c0,-13.261 -10.938,-25.097 -28.038,-32.871Z" style="fill:none;"/><path id="path5082" d="M354.323,82.586l-41.999,-42.002l38.524,-38.515l-29.913,0l-23.562,23.559l-23.563,-23.559l-29.924,0l38.525,38.515l-42,42.002l29.913,0l27.049,-27.046l27.05,27.046l29.9,0" style="fill:#fff;fill-rule:nonzero;"/><path id="path5084" d="M354.323,82.586l-41.999,-42.002l38.524,-38.515l-29.913,0l-23.562,23.559l-23.563,-23.559l-29.924,0l38.525,38.515l-42,42.002l29.913,0l27.049,-27.046l27.05,27.046l29.9,0Z" style="fill:none;"/><path id="path5086" d="M0,2.069l75.033,0l0,16.489l-51.629,0l0,14.931l40.258,0l0,16.495l-40.258,0l0,16.05l53.124,0l0,16.488l-76.528,0l0,-80.453" style="fill:#fff;fill-rule:nonzero;"/><path id="path5088" d="M0,2.069l75.033,0l0,16.489l-51.629,0l0,14.931l40.258,0l0,16.495l-40.258,0l0,16.05l53.124,0l0,16.488l-76.528,0l0,-80.453Z" style="fill:none;"/></g></svg>`;
94
-
95
- const _sfc_main = {
96
- __name: 'Footer',
97
- setup(__props) {
98
-
99
- const footer = ref(null);
100
- const eodash = /** @type {import("@/types").Eodash} */ (inject(eodashKey));
101
-
102
- const { mdAndDown } = useDisplay();
103
- const base64Logo = window.btoa(eoxLogo);
104
-
105
- return (_ctx, _cache) => {
106
-
107
-
108
- return (openBlock(), createBlock(VFooter, {
109
- ref_key: "footer",
110
- ref: footer,
111
- height: unref(mdAndDown) ? '48px' : 'auto',
112
- color: "secondary",
113
- app: "",
114
- class: "d-flex justify-space-between"
115
- }, {
116
- default: withCtx(() => [
117
- createElementVNode("p", _hoisted_1, toDisplayString(unref(eodash).brand.footerText ?? ""), 1 /* TEXT */),
118
- createElementVNode("div", null, [
119
- _cache[0] || (_cache[0] = createElementVNode("a", {
120
- href: "https://github.com/eodash/eodash",
121
- class: "text-white",
122
- target: "_blank"
123
- }, "eodash", -1 /* HOISTED */)),
124
- _cache[1] || (_cache[1] = createTextVNode(" by ")),
125
- createElementVNode("a", _hoisted_2, [
126
- createElementVNode("img", {
127
- src: `data:image/svg+xml;base64,${unref(base64Logo)}`,
128
- height: "11px"
129
- }, null, 8 /* PROPS */, _hoisted_3)
130
- ])
131
- ])
132
- ]),
133
- _: 1 /* STABLE */
134
- }, 8 /* PROPS */, ["height"]))
135
- }
136
- }
137
-
138
- };
139
- const Footer = /*#__PURE__*/_export_sfc(_sfc_main, [['__scopeId',"data-v-7ea19f1b"]]);
140
-
141
- export { Footer as default };