@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.
- package/core/client/components/DashboardLayout.vue +3 -2
- package/core/client/components/DynamicWebComponent.vue +10 -3
- package/core/client/components/EodashOverlay.vue +56 -0
- package/core/client/components/Footer.vue +1 -15
- package/core/client/components/Header.vue +1 -1
- package/core/client/components/MobileLayout.vue +1 -0
- package/core/client/composables/DefineTemplate.js +13 -2
- package/core/client/composables/DefineWidgets.js +9 -4
- package/core/client/composables/EodashMap.js +2 -1
- package/core/client/eodash.js +18 -11
- package/core/client/eodashSTAC/EodashCollection.js +70 -35
- package/core/client/eodashSTAC/createLayers.js +21 -2
- package/core/client/eodashSTAC/helpers.js +7 -5
- package/core/client/types.ts +18 -13
- package/core/client/utils/index.js +112 -32
- package/core/client/utils/states.js +43 -0
- package/core/client/views/Dashboard.vue +26 -6
- package/dist/client/{DashboardLayout-BjUs7mYs.js → DashboardLayout-Reny_s87.js} +6 -6
- package/dist/client/{DynamicWebComponent-rIFx5c0f.js → DynamicWebComponent-DQPKIscC.js} +11 -4
- package/dist/client/{EodashDatePicker-brJlj1aQ.js → EodashDatePicker-E5GjnQQ2.js} +3 -3
- package/dist/client/{EodashItemFilter-C2i4lnM1.js → EodashItemFilter-DN77Uqgg.js} +1 -1
- package/dist/client/{EodashLayerControl-DNQzPQQ4.js → EodashLayerControl-DduVhg2O.js} +10 -3
- package/dist/client/{EodashLayoutSwitcher-gLe7G8Qn.js → EodashLayoutSwitcher-CeNnYuaC.js} +2 -2
- package/dist/client/{EodashMap-LOzTlvrM.js → EodashMap-C3bgcNJk.js} +10 -4
- package/dist/client/{EodashMapBtns-UXOupU5J.js → EodashMapBtns-B73UApEn.js} +4 -4
- package/dist/client/{EodashProcess-BlkqUdzj.js → EodashProcess-IQPnj17j.js} +14 -14
- package/dist/client/{EodashStacInfo-Df3LXKAw.js → EodashStacInfo-CeZqI75-.js} +1 -1
- package/dist/client/{EodashTools-BrqH4IDP.js → EodashTools-CAE604ZJ.js} +4 -4
- package/dist/client/{ExportState-DVosrSNY.js → ExportState-DXw8Dwvk.js} +4 -4
- package/dist/client/Footer-Bl9tQTyj.js +119 -0
- package/dist/client/{Header-DYMnh4of.js → Header-qH_kBs-u.js} +5 -5
- package/dist/client/{MobileLayout-Df4Z1bMl.js → MobileLayout-Du5n5XyY.js} +11 -11
- package/dist/client/{PopUp-BFcSuX3b.js → PopUp-B12NWJHU.js} +3 -3
- package/dist/client/{VImg-BO2Ysvsu.js → VImg-CjsuV4n9.js} +2 -2
- package/dist/client/{VMain-fx1gaM7Y.js → VMain-B11EjLm6.js} +1 -1
- package/dist/client/{VOverlay-CiQn3F6n.js → VOverlay-CLR2s8AQ.js} +3 -3
- package/dist/client/{VTooltip-DKOCofTl.js → VTooltip-DqyE5_aG.js} +3 -3
- package/dist/client/{WidgetsContainer-DL0bdnjh.js → WidgetsContainer-YI9ZycgC.js} +1 -1
- package/dist/client/{asWebComponent-N7ChSAQG.js → asWebComponent-DBkwthjq.js} +382 -115
- package/dist/client/eo-dash.css +2 -2
- package/dist/client/eo-dash.js +1 -1
- package/dist/client/{forwardRefs-C2UOEnvr.js → forwardRefs-BTYtR3pq.js} +1 -1
- package/dist/client/{index-BXi80Gr9.js → index-BhfdO0rU.js} +1 -1
- package/dist/client/{transition-w_2EtUxa.js → transition-B79onGGb.js} +1 -1
- package/dist/types/core/client/components/EodashOverlay.vue.d.ts +2 -0
- package/dist/types/core/client/eodashSTAC/EodashCollection.d.ts +36 -7
- package/dist/types/core/client/eodashSTAC/createLayers.d.ts +20 -0
- package/dist/types/core/client/eodashSTAC/helpers.d.ts +9 -6
- package/dist/types/core/client/types.d.ts +15 -11
- package/dist/types/core/client/utils/index.d.ts +1 -1
- package/dist/types/core/client/utils/states.d.ts +43 -0
- package/dist/types/widgets/EodashStacInfo.vue.d.ts +2 -2
- package/dist/types/widgets/PopUp.vue.d.ts +2 -2
- package/package.json +2 -1
- package/widgets/EodashDatePicker.vue +18 -0
- package/widgets/EodashLayerControl.vue +7 -0
- package/widgets/EodashMap.vue +7 -1
- package/widgets/EodashProcess.vue +13 -13
- package/dist/client/Footer-tjsscQ7O.js +0 -141
package/dist/client/eo-dash.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { aX as EodashConstructor, aY as register, aZ as store } from './asWebComponent-
|
|
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-
|
|
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-
|
|
2
|
+
import { g as genericComponent, 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
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
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
|
-
/**
|
|
2
|
-
|
|
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):
|
|
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,
|
|
112
|
-
legend?:
|
|
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
|
|
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
|
-
|
|
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,
|
|
274
|
-
legend?:
|
|
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(
|
|
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.
|
|
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>
|
package/widgets/EodashMap.vue
CHANGED
|
@@ -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
|
|
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 };
|