@eodash/eodash 5.0.0-rc.1.5 → 5.0.0-rc.1.6
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/README.md +1 -1
- package/core/client/composables/EodashMap.js +19 -5
- package/core/client/composables/EodashProcess.js +51 -5
- package/core/client/eodash.js +8 -7
- package/core/client/eodashSTAC/EodashCollection.js +16 -0
- package/core/client/eodashSTAC/createLayers.js +62 -6
- package/core/client/eodashSTAC/helpers.js +39 -4
- package/core/client/types.ts +7 -0
- package/core/client/utils/states.js +3 -0
- package/dist/client/{DashboardLayout-B-4X57-t.js → DashboardLayout-SZfMDUoR.js} +2 -2
- package/dist/client/{DynamicWebComponent-Dj3QYwag.js → DynamicWebComponent-I9gzMY0L.js} +1 -1
- package/dist/client/EodashDatePicker-B9_u6TTm.js +405 -0
- package/dist/client/{EodashItemFilter-DBQwJQPh.js → EodashItemFilter-G7YsYO3B.js} +1 -1
- package/dist/client/{EodashLayerControl-C5fOCvoI.js → EodashLayerControl-CJ94ul63.js} +10 -2
- package/dist/client/{EodashLayoutSwitcher-BMO9k_20.js → EodashLayoutSwitcher-DRKm8A8U.js} +2 -2
- package/dist/client/{EodashMap-D2bnMLAC.js → EodashMap-Dp44Ajbi.js} +60 -10
- package/dist/client/{EodashMapBtns-l9B977id.js → EodashMapBtns-BlPFwhPc.js} +4 -4
- package/dist/client/{EodashProcess-BtIlJvF1.js → EodashProcess-BLmIgUGT.js} +158 -25
- package/dist/client/{EodashStacInfo-CPVvp_Hm.js → EodashStacInfo-BIRcfcMo.js} +1 -1
- package/dist/client/{EodashTools-DY2dlNXW.js → EodashTools-PNfJ-Cw3.js} +4 -4
- package/dist/client/{ExportState-BvD5A0XG.js → ExportState-5JyTshJH.js} +4 -4
- package/dist/client/{Footer-w95gBnSH.js → Footer-CM9hgdQP.js} +1 -1
- package/dist/client/{Header-BpiorKy9.js → Header-BTq4DW1x.js} +3 -3
- package/dist/client/{MobileLayout-CmVlZe7S.js → MobileLayout-Atfoxf8d.js} +5 -5
- package/dist/client/{PopUp-CREaSybs.js → PopUp-Bmfn3N_4.js} +3 -3
- package/dist/client/{VImg-DF9esgdd.js → VImg-CUF4S39i.js} +2 -2
- package/dist/client/{VMain-BWLMf-rn.js → VMain-CQpXnzDR.js} +1 -1
- package/dist/client/{VOverlay-DmNfblmy.js → VOverlay-DUnITwM1.js} +3 -3
- package/dist/client/{VTooltip-C3PeE7iO.js → VTooltip-BYTlbKer.js} +3 -3
- package/dist/client/{WidgetsContainer-6FHEEXns.js → WidgetsContainer-BPbgxdb0.js} +1 -1
- package/dist/client/{asWebComponent-BnFMd0T6.js → asWebComponent-DW1XzZkL.js} +139 -29
- package/dist/client/eo-dash.css +1 -1
- package/dist/client/eo-dash.js +1 -1
- package/dist/client/{forwardRefs-BF3Me2RX.js → forwardRefs-gx1Fzngc.js} +1 -1
- package/dist/client/{index-CRd5-RSy.js → index-DvFppNyk.js} +1 -1
- package/dist/client/{transition-Cpn_g5jE.js → transition-j2eWJYMg.js} +1 -1
- package/dist/types/core/client/composables/EodashMap.d.ts +2 -1
- package/dist/types/core/client/composables/EodashProcess.d.ts +17 -11
- package/dist/types/core/client/eodashSTAC/EodashCollection.d.ts +9 -4
- package/dist/types/core/client/eodashSTAC/createLayers.d.ts +6 -6
- package/dist/types/core/client/eodashSTAC/helpers.d.ts +75 -20
- package/dist/types/core/client/types.d.ts +10 -0
- package/dist/types/core/client/utils/states.d.ts +2 -0
- package/dist/types/widgets/EodashDatePicker.vue.d.ts +4 -2
- package/dist/types/widgets/PopUp.vue.d.ts +1 -2
- package/package.json +8 -8
- package/widgets/EodashDatePicker.vue +89 -6
- package/widgets/EodashLayerControl.vue +13 -1
- package/widgets/EodashMap.vue +51 -5
- package/widgets/EodashProcess.vue +57 -11
- package/dist/client/EodashDatePicker-DGRJrJ0s.js +0 -306
package/dist/client/eo-dash.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export {
|
|
1
|
+
export { aX as EodashConstructor, aY as register, aZ as store } from './asWebComponent-DW1XzZkL.js';
|
|
2
2
|
import 'vue';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { shallowRef, computed, watch } from 'vue';
|
|
2
|
-
import { p as propsFactory,
|
|
2
|
+
import { p as propsFactory, aI as getCurrentInstance } from './asWebComponent-DW1XzZkL.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-DW1XzZkL.js';
|
|
3
3
|
|
|
4
4
|
// Utilities
|
|
5
5
|
const makeTransitionProps = propsFactory({
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
export function useHandleMapMoveEnd(mapElement: import("vue").Ref<(HTMLElement & Record<string, any> & {
|
|
2
2
|
map: import("ol").Map;
|
|
3
3
|
}) | null>, mapPosition: import("vue").Ref<(number | undefined)[]>): void;
|
|
4
|
-
export function useInitMap(mapElement: import("vue").Ref<(
|
|
4
|
+
export function useInitMap(mapElement: import("vue").Ref<import("@eox/map").EOxMap | null>, selectedIndicator: import("vue").Ref<import("stac-ts").StacCollection | null>, eodashCols: EodashCollection[], datetime: import("vue").Ref<string>, mapLayers: import("vue").Ref<Record<string, any>[]>, partnerMap: import("vue").Ref<import("@eox/map").EOxMap | null>): void;
|
|
5
|
+
export function useUpdateTooltipProperties(eodashCols: EodashCollection[], tooltipProperties: import("vue").Ref<import("../types").EodashStyleJson["tooltip"]>): void;
|
|
5
6
|
import { EodashCollection } from "../eodashSTAC/EodashCollection";
|
|
@@ -93,42 +93,46 @@ export function processGeoTiff(links: import("stac-ts").StacLink[] | undefined,
|
|
|
93
93
|
* @param {import("stac-ts").StacLink[] | undefined} links
|
|
94
94
|
* @param {Record<string,any> | undefined} jsonformValue
|
|
95
95
|
* @param {string} specUrl
|
|
96
|
-
* @returns {Promise<[import("
|
|
96
|
+
* @returns {Promise<[import("@eox/chart").EOxChart["spec"] | null,Record<string,any>|null]>}
|
|
97
97
|
**/
|
|
98
|
-
export function getChartValues(links: import("stac-ts").StacLink[] | undefined, jsonformValue: Record<string, any> | undefined, specUrl: string): Promise<[import("
|
|
98
|
+
export function getChartValues(links: import("stac-ts").StacLink[] | undefined, jsonformValue: Record<string, any> | undefined, specUrl: string): Promise<[import("@eox/chart").EOxChart["spec"] | null, Record<string, any> | null]>;
|
|
99
99
|
/**
|
|
100
100
|
* @param {Object} params
|
|
101
101
|
* @param {import("vue").Ref<boolean>} params.loading
|
|
102
102
|
* @param {import("vue").Ref<import("stac-ts").StacCollection | null>} params.selectedStac
|
|
103
103
|
* @param {import("vue").Ref<import("@eox/jsonform").EOxJSONForm | null>} params.jsonformEl
|
|
104
104
|
* @param {import("vue").Ref<Record<string,any>|null>} params.jsonformSchema
|
|
105
|
-
* @param {import("vue").Ref<import("@eox/chart").EOxChart["spec"]>} params.chartSpec
|
|
105
|
+
* @param {import("vue").Ref<import("@eox/chart").EOxChart["spec"] | null>} params.chartSpec
|
|
106
106
|
* @param {import("vue").Ref<Record<string, any> | null>} params.chartData
|
|
107
107
|
* @param {import("vue").Ref<boolean>} params.isPolling
|
|
108
|
+
* @param {import("vue").Ref<any[]>} params.processResults
|
|
108
109
|
*/
|
|
109
|
-
export function handleProcesses({ loading, selectedStac, jsonformEl, jsonformSchema, chartSpec, chartData, isPolling, }: {
|
|
110
|
+
export function handleProcesses({ loading, selectedStac, jsonformEl, jsonformSchema, chartSpec, chartData, isPolling, processResults, }: {
|
|
110
111
|
loading: import("vue").Ref<boolean>;
|
|
111
112
|
selectedStac: import("vue").Ref<import("stac-ts").StacCollection | null>;
|
|
112
113
|
jsonformEl: import("vue").Ref<import("@eox/jsonform").EOxJSONForm | null>;
|
|
113
114
|
jsonformSchema: import("vue").Ref<Record<string, any> | null>;
|
|
114
|
-
chartSpec: import("vue").Ref<import("@eox/chart").EOxChart["spec"]>;
|
|
115
|
+
chartSpec: import("vue").Ref<import("@eox/chart").EOxChart["spec"] | null>;
|
|
115
116
|
chartData: import("vue").Ref<Record<string, any> | null>;
|
|
116
117
|
isPolling: import("vue").Ref<boolean>;
|
|
118
|
+
processResults: import("vue").Ref<any[]>;
|
|
117
119
|
}): Promise<void>;
|
|
118
120
|
/**
|
|
119
121
|
* Reset the process state
|
|
120
122
|
* @param {Object} params
|
|
121
123
|
* @param {import("vue").Ref<boolean>} params.loading
|
|
122
124
|
* @param {import("vue").Ref<boolean>} params.isProcessed
|
|
123
|
-
* @param {import("vue").Ref<import("@eox/chart").EOxChart["spec"]>} params.chartSpec
|
|
125
|
+
* @param {import("vue").Ref<import("@eox/chart").EOxChart["spec"] | null>} params.chartSpec
|
|
124
126
|
* @param {import("vue").Ref<boolean>} params.isPolling
|
|
127
|
+
* @param {import("vue").Ref<any[]>} params.processResults
|
|
125
128
|
* @param {import("vue").Ref<Record<string,any>|null>} params.jsonformSchema
|
|
126
129
|
*/
|
|
127
|
-
export function resetProcess({ loading, isProcessed, chartSpec, jsonformSchema, isPolling, }: {
|
|
130
|
+
export function resetProcess({ loading, isProcessed, chartSpec, jsonformSchema, processResults, isPolling, }: {
|
|
128
131
|
loading: import("vue").Ref<boolean>;
|
|
129
132
|
isProcessed: import("vue").Ref<boolean>;
|
|
130
|
-
chartSpec: import("vue").Ref<import("@eox/chart").EOxChart["spec"]>;
|
|
133
|
+
chartSpec: import("vue").Ref<import("@eox/chart").EOxChart["spec"] | null>;
|
|
131
134
|
isPolling: import("vue").Ref<boolean>;
|
|
135
|
+
processResults: import("vue").Ref<any[]>;
|
|
132
136
|
jsonformSchema: import("vue").Ref<Record<string, any> | null>;
|
|
133
137
|
}): void;
|
|
134
138
|
/**
|
|
@@ -140,16 +144,18 @@ export function resetProcess({ loading, isProcessed, chartSpec, jsonformSchema,
|
|
|
140
144
|
* @param {import("vue").Ref<import("stac-ts").StacCollection>} params.selectedStac
|
|
141
145
|
* @param {import("vue").Ref<import("@eox/jsonform").EOxJSONForm | null>} params.jsonformEl
|
|
142
146
|
* @param {import("vue").Ref<Record<string,any> | null>} params.jsonformSchema
|
|
143
|
-
* @param {import("vue").Ref<import("@eox/chart").EOxChart["spec"]>} params.chartSpec
|
|
147
|
+
* @param {import("vue").Ref<import("@eox/chart").EOxChart["spec"] | null>} params.chartSpec
|
|
148
|
+
* @param {import("vue").Ref<any[]>} params.processResults
|
|
144
149
|
* @param {import("vue").Ref<boolean>} params.isProcessed
|
|
145
150
|
* @param {import("vue").Ref<boolean>} params.loading
|
|
146
151
|
* @param {import("vue").Ref<boolean>} params.isPolling
|
|
147
152
|
*/
|
|
148
|
-
export function initProcess({ selectedStac, jsonformEl, jsonformSchema, chartSpec, isProcessed, loading, isPolling, }: {
|
|
153
|
+
export function initProcess({ selectedStac, jsonformEl, jsonformSchema, chartSpec, isProcessed, processResults, loading, isPolling, }: {
|
|
149
154
|
selectedStac: import("vue").Ref<import("stac-ts").StacCollection>;
|
|
150
155
|
jsonformEl: import("vue").Ref<import("@eox/jsonform").EOxJSONForm | null>;
|
|
151
156
|
jsonformSchema: import("vue").Ref<Record<string, any> | null>;
|
|
152
|
-
chartSpec: import("vue").Ref<import("@eox/chart").EOxChart["spec"]>;
|
|
157
|
+
chartSpec: import("vue").Ref<import("@eox/chart").EOxChart["spec"] | null>;
|
|
158
|
+
processResults: import("vue").Ref<any[]>;
|
|
153
159
|
isProcessed: import("vue").Ref<boolean>;
|
|
154
160
|
loading: import("vue").Ref<boolean>;
|
|
155
161
|
isPolling: import("vue").Ref<boolean>;
|
|
@@ -4,16 +4,16 @@ 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
|
-
style?: import("
|
|
7
|
+
style?: import("../types").EodashStyleJson | undefined;
|
|
8
8
|
type: string;
|
|
9
9
|
source: {
|
|
10
10
|
type: string;
|
|
11
|
-
url: string;
|
|
11
|
+
url: string | undefined;
|
|
12
12
|
format: string;
|
|
13
13
|
};
|
|
14
14
|
properties: {
|
|
15
15
|
layerConfig?: {
|
|
16
|
-
style: import("
|
|
16
|
+
style: import("../types").EodashStyleJson | undefined;
|
|
17
17
|
} | undefined;
|
|
18
18
|
id: string;
|
|
19
19
|
title: string;
|
|
@@ -35,7 +35,7 @@ export class EodashCollection {
|
|
|
35
35
|
layerConfig: Record<string, unknown> | undefined;
|
|
36
36
|
layerDatetime: Record<string, unknown> | undefined;
|
|
37
37
|
};
|
|
38
|
-
style: import("
|
|
38
|
+
style: import("../types").EodashStyleJson | undefined;
|
|
39
39
|
})[]>;
|
|
40
40
|
/**
|
|
41
41
|
* Returns GeoDB layer from a list of EodashCollections
|
|
@@ -97,6 +97,11 @@ export class EodashCollection {
|
|
|
97
97
|
* @param {Date} [date]
|
|
98
98
|
**/
|
|
99
99
|
getItem(date?: Date): import("stac-ts").StacLink | undefined;
|
|
100
|
+
getToolTipProperties(): Promise<{
|
|
101
|
+
id: string;
|
|
102
|
+
title?: string;
|
|
103
|
+
appendix?: string;
|
|
104
|
+
}[]>;
|
|
100
105
|
/**
|
|
101
106
|
*
|
|
102
107
|
* @param {string} datetime
|
|
@@ -3,22 +3,22 @@
|
|
|
3
3
|
* @param {string} title
|
|
4
4
|
* @param {Record<string,import("stac-ts").StacAsset>} assets
|
|
5
5
|
* @param {import("stac-ts").StacItem } item
|
|
6
|
-
* @param {import("
|
|
6
|
+
* @param {import("../types").EodashStyleJson} [style]
|
|
7
7
|
* @param {Record<string, unknown>} [layerConfig]
|
|
8
8
|
* @param {Record<string, unknown>} [layerDatetime]
|
|
9
9
|
* @param {object | null} [extraProperties]
|
|
10
10
|
**/
|
|
11
|
-
export function createLayersFromAssets(collectionId: string, title: string, assets: Record<string, import("stac-ts").StacAsset>, item: import("stac-ts").StacItem, style?: import("
|
|
12
|
-
style?: import("
|
|
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
|
+
style?: import("../types").EodashStyleJson | undefined;
|
|
13
13
|
type: string;
|
|
14
14
|
source: {
|
|
15
15
|
type: string;
|
|
16
|
-
url: string;
|
|
16
|
+
url: string | undefined;
|
|
17
17
|
format: string;
|
|
18
18
|
};
|
|
19
19
|
properties: {
|
|
20
20
|
layerConfig?: {
|
|
21
|
-
style: import("
|
|
21
|
+
style: import("../types").EodashStyleJson | undefined;
|
|
22
22
|
} | undefined;
|
|
23
23
|
id: string;
|
|
24
24
|
title: string;
|
|
@@ -40,6 +40,6 @@ export function createLayersFromAssets(collectionId: string, title: string, asse
|
|
|
40
40
|
layerConfig: Record<string, unknown> | undefined;
|
|
41
41
|
layerDatetime: Record<string, unknown> | undefined;
|
|
42
42
|
};
|
|
43
|
-
style: import("
|
|
43
|
+
style: import("../types").EodashStyleJson | undefined;
|
|
44
44
|
})[]>;
|
|
45
45
|
export function createLayersFromLinks(collectionId: string, title: string, item: import("stac-ts").StacItem, layerDatetime?: Record<string, any>, extraProperties?: object | null): Promise<Record<string, any>[]>;
|
|
@@ -12,18 +12,13 @@ export function generateFeatures(links?: import("stac-ts").StacLink[]): {
|
|
|
12
12
|
/**
|
|
13
13
|
* Sperates and extracts layerConfig (jsonform schema & legend) from a style json
|
|
14
14
|
*
|
|
15
|
-
* @param { import("
|
|
16
|
-
export function extractLayerConfig(style?: import("
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
}): {
|
|
15
|
+
* @param { import("../types").EodashStyleJson} [style] */
|
|
16
|
+
export function extractLayerConfig(style?: import("../types").EodashStyleJson): {
|
|
17
|
+
layerConfig: undefined;
|
|
18
|
+
style: undefined;
|
|
19
|
+
} | {
|
|
21
20
|
layerConfig: Record<string, unknown> | undefined;
|
|
22
|
-
style:
|
|
23
|
-
jsonform?: Record<string, any>;
|
|
24
|
-
} & {
|
|
25
|
-
legend?: Record<string, any>;
|
|
26
|
-
}) | undefined;
|
|
21
|
+
style: import("../types").EodashStyleJson;
|
|
27
22
|
};
|
|
28
23
|
/**
|
|
29
24
|
* Function to extract collection urls from an indicator
|
|
@@ -48,18 +43,77 @@ export function assignProjID(item: import("stac-ts").StacItem, linkOrAsset: impo
|
|
|
48
43
|
id: string;
|
|
49
44
|
} & Record<string, any>;
|
|
50
45
|
} & Record<string, any>): string;
|
|
46
|
+
/**
|
|
47
|
+
* @param {string[]} geojsonUrls
|
|
48
|
+
*/
|
|
49
|
+
export function mergeGeojsons(geojsonUrls: string[]): Promise<string | undefined>;
|
|
51
50
|
export function extractRoles(properties: Record<string, any>, linkOrAsset: import("stac-ts").StacLink | import("stac-ts").StacAsset): void;
|
|
52
51
|
export function fetchStyle(item: import("stac-ts").StacItem, itemUrl: string): Promise<{
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
52
|
+
filter?: import("ol/expr/expression.js").ExpressionValue | undefined;
|
|
53
|
+
"icon-src"?: string | undefined;
|
|
54
|
+
"icon-anchor"?: number[] | import("ol/expr/expression.js").ExpressionValue | undefined;
|
|
55
|
+
"icon-anchor-origin"?: import("ol/style/Icon.js").IconOrigin | undefined;
|
|
56
|
+
"icon-anchor-x-units"?: import("ol/style/Icon.js").IconAnchorUnits | undefined;
|
|
57
|
+
"icon-anchor-y-units"?: import("ol/style/Icon.js").IconAnchorUnits | undefined;
|
|
58
|
+
"icon-color"?: import("ol/style/webgl.js").ColorExpression | undefined;
|
|
59
|
+
"icon-opacity"?: import("ol/expr/expression.js").ExpressionValue | undefined;
|
|
60
|
+
"icon-cross-origin"?: string | null | undefined;
|
|
61
|
+
"icon-displacement"?: number[] | import("ol/expr/expression.js").ExpressionValue | undefined;
|
|
62
|
+
"icon-scale"?: import("ol/size.js").Size | import("ol/expr/expression.js").ExpressionValue | undefined;
|
|
63
|
+
"icon-width"?: import("ol/expr/expression.js").ExpressionValue | undefined;
|
|
64
|
+
"icon-height"?: import("ol/expr/expression.js").ExpressionValue | undefined;
|
|
65
|
+
"icon-rotation"?: import("ol/expr/expression.js").ExpressionValue | undefined;
|
|
66
|
+
"icon-rotate-with-view"?: boolean | undefined;
|
|
67
|
+
"icon-offset"?: number[] | import("ol/expr/expression.js").ExpressionValue | undefined;
|
|
68
|
+
"icon-offset-origin"?: import("ol/style/Icon.js").IconOrigin | undefined;
|
|
69
|
+
"icon-size"?: import("ol/size.js").Size | import("ol/expr/expression.js").ExpressionValue | undefined;
|
|
70
|
+
"stroke-color"?: import("ol/style/webgl.js").ColorExpression | undefined;
|
|
71
|
+
"stroke-width"?: import("ol/expr/expression.js").ExpressionValue | undefined;
|
|
72
|
+
"stroke-offset"?: import("ol/expr/expression.js").ExpressionValue | undefined;
|
|
73
|
+
"stroke-line-cap"?: string | number | boolean | any[] | import("ol/color.js").Color | undefined;
|
|
74
|
+
"stroke-line-join"?: string | number | boolean | any[] | import("ol/color.js").Color | undefined;
|
|
75
|
+
"stroke-line-dash"?: number[] | import("ol/expr/expression.js").ExpressionValue[] | undefined;
|
|
76
|
+
"stroke-line-dash-offset"?: import("ol/expr/expression.js").ExpressionValue | undefined;
|
|
77
|
+
"stroke-miter-limit"?: import("ol/expr/expression.js").ExpressionValue | undefined;
|
|
78
|
+
"stroke-pattern-src"?: string | undefined;
|
|
79
|
+
"stroke-pattern-offset"?: number[] | import("ol/expr/expression.js").ExpressionValue | undefined;
|
|
80
|
+
"stroke-pattern-offset-origin"?: import("ol/style/Icon.js").IconOrigin | undefined;
|
|
81
|
+
"stroke-pattern-size"?: import("ol/size.js").Size | import("ol/expr/expression.js").ExpressionValue | undefined;
|
|
82
|
+
"stroke-pattern-spacing"?: import("ol/expr/expression.js").ExpressionValue | undefined;
|
|
83
|
+
"fill-color"?: import("ol/style/webgl.js").ColorExpression | undefined;
|
|
84
|
+
"fill-pattern-src"?: string | undefined;
|
|
85
|
+
"fill-pattern-offset"?: number[] | import("ol/expr/expression.js").ExpressionValue | undefined;
|
|
86
|
+
"fill-pattern-offset-origin"?: import("ol/style/Icon.js").IconOrigin | undefined;
|
|
87
|
+
"fill-pattern-size"?: import("ol/size.js").Size | import("ol/expr/expression.js").ExpressionValue | undefined;
|
|
88
|
+
"circle-radius"?: import("ol/expr/expression.js").ExpressionValue | undefined;
|
|
89
|
+
"circle-fill-color"?: import("ol/style/webgl.js").ColorExpression | undefined;
|
|
90
|
+
"circle-stroke-color"?: import("ol/style/webgl.js").ColorExpression | undefined;
|
|
91
|
+
"circle-stroke-width"?: import("ol/expr/expression.js").ExpressionValue | undefined;
|
|
92
|
+
"circle-opacity"?: import("ol/expr/expression.js").ExpressionValue | undefined;
|
|
93
|
+
"circle-displacement"?: number[] | import("ol/expr/expression.js").ExpressionValue[] | undefined;
|
|
94
|
+
"circle-scale"?: import("ol/size.js").Size | import("ol/expr/expression.js").ExpressionValue | import("ol/expr/expression.js").ExpressionValue[] | undefined;
|
|
95
|
+
"circle-rotation"?: import("ol/expr/expression.js").ExpressionValue | undefined;
|
|
96
|
+
"circle-rotate-with-view"?: boolean | undefined;
|
|
97
|
+
"shape-points"?: import("ol/expr/expression.js").ExpressionValue | undefined;
|
|
98
|
+
"shape-fill-color"?: import("ol/style/webgl.js").ColorExpression | undefined;
|
|
99
|
+
"shape-stroke-color"?: import("ol/style/webgl.js").ColorExpression | undefined;
|
|
100
|
+
"shape-stroke-width"?: import("ol/expr/expression.js").ExpressionValue | undefined;
|
|
101
|
+
"shape-opacity"?: import("ol/expr/expression.js").ExpressionValue | undefined;
|
|
102
|
+
"shape-radius"?: import("ol/expr/expression.js").ExpressionValue | undefined;
|
|
103
|
+
"shape-radius2"?: import("ol/expr/expression.js").ExpressionValue | undefined;
|
|
104
|
+
"shape-angle"?: import("ol/expr/expression.js").ExpressionValue | undefined;
|
|
105
|
+
"shape-displacement"?: number[] | import("ol/expr/expression.js").ExpressionValue[] | undefined;
|
|
106
|
+
"shape-rotation"?: import("ol/expr/expression.js").ExpressionValue | undefined;
|
|
107
|
+
"shape-rotate-with-view"?: boolean | undefined;
|
|
108
|
+
"shape-scale"?: import("ol/size.js").Size | import("ol/expr/expression.js").ExpressionValue | import("ol/expr/expression.js").ExpressionValue[] | undefined;
|
|
109
|
+
variables?: Record<string, any>;
|
|
110
|
+
legend?: Record<string, any>;
|
|
62
111
|
jsonform?: Record<string, any>;
|
|
112
|
+
tooltip?: {
|
|
113
|
+
id: string;
|
|
114
|
+
title?: string;
|
|
115
|
+
appendix?: string;
|
|
116
|
+
}[];
|
|
63
117
|
} | undefined>;
|
|
64
118
|
export function getProjectionCode(projection?: string | number | {
|
|
65
119
|
name: string;
|
|
@@ -69,6 +123,7 @@ export function extractLayerDatetime(links?: import("stac-ts").StacLink[], curre
|
|
|
69
123
|
controlValues: string[];
|
|
70
124
|
currentStep: string;
|
|
71
125
|
slider: boolean;
|
|
126
|
+
navigation: boolean;
|
|
72
127
|
play: boolean;
|
|
73
128
|
displayFormat: string;
|
|
74
129
|
} | undefined;
|
|
@@ -267,3 +267,13 @@ export declare function register(): void;
|
|
|
267
267
|
*/
|
|
268
268
|
export declare const store: typeof import("./store").default;
|
|
269
269
|
export * from "./main.js";
|
|
270
|
+
export type EodashStyleJson = import("ol/style/webgl.js").WebGLStyle & {
|
|
271
|
+
variables?: Record<string, any>;
|
|
272
|
+
legend?: Record<string, any>;
|
|
273
|
+
jsonform?: Record<string, any>;
|
|
274
|
+
tooltip?: {
|
|
275
|
+
id: string;
|
|
276
|
+
title?: string;
|
|
277
|
+
appendix?: string;
|
|
278
|
+
}[];
|
|
279
|
+
};
|
|
@@ -16,3 +16,5 @@ export const eodashCollections: import("../eodashSTAC/EodashCollection").EodashC
|
|
|
16
16
|
export const eodashCompareCollections: import("../eodashSTAC/EodashCollection").EodashCollection[];
|
|
17
17
|
/** whether the map postion was set in URL params on first load */
|
|
18
18
|
export const posIsSetFromUrl: import("vue").Ref<boolean, boolean>;
|
|
19
|
+
/** @type {import("vue").Ref<Record<string,any>|undefined>} */
|
|
20
|
+
export const layerControlFormValue: import("vue").Ref<Record<string, any> | undefined>;
|
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
declare const _default: import("vue").DefineComponent<{}, {
|
|
2
|
+
hintText: string;
|
|
3
|
+
toggleCalendar: boolean;
|
|
2
4
|
hideArrows: boolean;
|
|
3
5
|
hideInputField: boolean;
|
|
4
|
-
hintText: string;
|
|
5
6
|
$props: {
|
|
7
|
+
readonly hintText?: string | undefined;
|
|
8
|
+
readonly toggleCalendar?: boolean | undefined;
|
|
6
9
|
readonly hideArrows?: boolean | undefined;
|
|
7
10
|
readonly hideInputField?: boolean | undefined;
|
|
8
|
-
readonly hintText?: string | undefined;
|
|
9
11
|
};
|
|
10
12
|
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {
|
|
11
13
|
rootRef: HTMLDivElement;
|
|
@@ -18,11 +18,10 @@ declare const __VLS_component: import("vue").DefineComponent<{}, {
|
|
|
18
18
|
};
|
|
19
19
|
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, HTMLSpanElement>;
|
|
20
20
|
type __VLS_TemplateResult = {
|
|
21
|
-
attrs: Partial<
|
|
21
|
+
attrs: Partial<{}>;
|
|
22
22
|
slots: {
|
|
23
23
|
default?(_: {}): any;
|
|
24
24
|
};
|
|
25
25
|
refs: {};
|
|
26
26
|
rootEl: HTMLSpanElement;
|
|
27
27
|
};
|
|
28
|
-
declare let __VLS_inheritedAttrs: {};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@eodash/eodash",
|
|
3
|
-
"version": "5.0.0-rc.1.
|
|
3
|
+
"version": "5.0.0-rc.1.6",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"types": "./dist/types/core/client/types.d.ts",
|
|
6
6
|
"files": [
|
|
@@ -59,15 +59,15 @@
|
|
|
59
59
|
"docs:generate": "typedoc --options typedoc.config.json"
|
|
60
60
|
},
|
|
61
61
|
"dependencies": {
|
|
62
|
-
"@eox/chart": "^0.3.
|
|
63
|
-
"@eox/drawtools": "^0.13.
|
|
64
|
-
"@eox/itemfilter": "^1.7.
|
|
62
|
+
"@eox/chart": "^0.3.1",
|
|
63
|
+
"@eox/drawtools": "^0.13.3",
|
|
64
|
+
"@eox/itemfilter": "^1.7.1",
|
|
65
65
|
"@eox/jsonform": "0.11.3-dev.1734708668.0",
|
|
66
|
-
"@eox/layercontrol": "^0.28.0",
|
|
66
|
+
"@eox/layercontrol": "^0.28.2-dev.1736966655.0",
|
|
67
67
|
"@eox/layout": "^0.3.0",
|
|
68
|
-
"@eox/map": "^1.19.
|
|
69
|
-
"@eox/stacinfo": "^0.6.
|
|
70
|
-
"@eox/timecontrol": "^0.12.
|
|
68
|
+
"@eox/map": "^1.19.1",
|
|
69
|
+
"@eox/stacinfo": "^0.6.1",
|
|
70
|
+
"@eox/timecontrol": "^0.12.2",
|
|
71
71
|
"@mdi/js": "^7.4.47",
|
|
72
72
|
"@vitejs/plugin-vue": "^5.2.1",
|
|
73
73
|
"@vueuse/core": "^12.0.0",
|
|
@@ -8,34 +8,98 @@
|
|
|
8
8
|
class="bg-surface overflow-auto"
|
|
9
9
|
style="background-color: transparent; max-width: 100%"
|
|
10
10
|
>
|
|
11
|
-
<template #
|
|
12
|
-
<div
|
|
11
|
+
<template v-if="toggleCalendar" #default="{ inputValue, inputEvents }">
|
|
12
|
+
<div
|
|
13
|
+
class="bg-surface d-flex flex-row align-center justify-center pb-1"
|
|
14
|
+
style="overflow: hidden; width: 100%"
|
|
15
|
+
>
|
|
13
16
|
<v-btn
|
|
14
17
|
v-if="!hideArrows"
|
|
15
18
|
density="compact"
|
|
19
|
+
:size="lgAndDown ? 'x-small' : 'large'"
|
|
16
20
|
v-tooltip:bottom="'Set date to oldest available dataset'"
|
|
17
21
|
variant="text"
|
|
18
22
|
@click="jumpDate(true)"
|
|
23
|
+
class="py-2"
|
|
24
|
+
style="flex-shrink: 1"
|
|
19
25
|
>
|
|
20
26
|
<v-icon :icon="[mdiRayEndArrow]" />
|
|
21
27
|
</v-btn>
|
|
22
28
|
<div
|
|
23
29
|
class="flex rounded-lg border border-gray-300 dark:border-gray-600"
|
|
24
|
-
style="margin: 2px"
|
|
30
|
+
style="margin: 2px; min-width: 0"
|
|
31
|
+
>
|
|
32
|
+
<input
|
|
33
|
+
v-if="!hideInputField"
|
|
34
|
+
:value="inputValue"
|
|
35
|
+
v-on="inputEvents"
|
|
36
|
+
class="flex-grow px-1 py-1 dark:bg-gray-700"
|
|
37
|
+
style="
|
|
38
|
+
margin: 1px;
|
|
39
|
+
width: 100%;
|
|
40
|
+
white-space: nowrap;
|
|
41
|
+
overflow: hidden;
|
|
42
|
+
text-overflow: ellipsis;
|
|
43
|
+
"
|
|
44
|
+
/>
|
|
45
|
+
</div>
|
|
46
|
+
<v-btn
|
|
47
|
+
v-if="!hideArrows"
|
|
48
|
+
density="compact"
|
|
49
|
+
:size="lgAndDown ? 'x-small' : 'large'"
|
|
50
|
+
variant="text"
|
|
51
|
+
v-tooltip:bottom="'Set date to latest available dataset'"
|
|
52
|
+
@click="jumpDate(false)"
|
|
53
|
+
class="py-2"
|
|
54
|
+
style="flex-shrink: 1"
|
|
55
|
+
>
|
|
56
|
+
<v-icon :icon="[mdiRayStartArrow]" />
|
|
57
|
+
</v-btn>
|
|
58
|
+
</div>
|
|
59
|
+
</template>
|
|
60
|
+
<template v-else #footer>
|
|
61
|
+
<div
|
|
62
|
+
class="d-flex flex-row align-center justify-center pb-1"
|
|
63
|
+
style="overflow: hidden; width: 100%"
|
|
64
|
+
>
|
|
65
|
+
<v-btn
|
|
66
|
+
v-if="!hideArrows"
|
|
67
|
+
density="compact"
|
|
68
|
+
:size="lgAndDown ? 'x-small' : 'large'"
|
|
69
|
+
v-tooltip:bottom="'Set date to oldest available dataset'"
|
|
70
|
+
variant="text"
|
|
71
|
+
@click="jumpDate(true)"
|
|
72
|
+
class="py-2"
|
|
73
|
+
style="flex-shrink: 1"
|
|
74
|
+
>
|
|
75
|
+
<v-icon :icon="[mdiRayEndArrow]" />
|
|
76
|
+
</v-btn>
|
|
77
|
+
<div
|
|
78
|
+
class="flex rounded-lg border border-gray-300 dark:border-gray-600"
|
|
79
|
+
style="margin: 2px; min-width: 0"
|
|
25
80
|
>
|
|
26
81
|
<input
|
|
27
82
|
v-if="!hideInputField"
|
|
28
83
|
:value="new Date(currentDate).toLocaleDateString()"
|
|
29
|
-
style="margin: 1px"
|
|
30
84
|
class="flex-grow px-1 py-1 dark:bg-gray-700"
|
|
85
|
+
style="
|
|
86
|
+
margin: 1px;
|
|
87
|
+
width: 100%;
|
|
88
|
+
white-space: nowrap;
|
|
89
|
+
overflow: hidden;
|
|
90
|
+
text-overflow: ellipsis;
|
|
91
|
+
"
|
|
31
92
|
/>
|
|
32
93
|
</div>
|
|
33
94
|
<v-btn
|
|
34
95
|
v-if="!hideArrows"
|
|
35
96
|
density="compact"
|
|
97
|
+
:size="lgAndDown ? 'x-small' : 'large'"
|
|
36
98
|
variant="text"
|
|
37
99
|
v-tooltip:bottom="'Set date to latest available dataset'"
|
|
38
100
|
@click="jumpDate(false)"
|
|
101
|
+
class="py-2"
|
|
102
|
+
style="flex-shrink: 1"
|
|
39
103
|
>
|
|
40
104
|
<v-icon :icon="[mdiRayStartArrow]" />
|
|
41
105
|
</v-btn>
|
|
@@ -46,8 +110,9 @@
|
|
|
46
110
|
</template>
|
|
47
111
|
<script setup>
|
|
48
112
|
import { DatePicker as VCDatePicker } from "v-calendar";
|
|
113
|
+
import { useDisplay } from "vuetify";
|
|
49
114
|
import "v-calendar/style.css";
|
|
50
|
-
import { watch, reactive, ref, customRef, toRef } from "vue";
|
|
115
|
+
import { watch, reactive, ref, customRef, toRef, onMounted } from "vue";
|
|
51
116
|
import { useSTAcStore } from "@/store/stac";
|
|
52
117
|
import { datetime } from "@/store/states";
|
|
53
118
|
import { mdiRayStartArrow, mdiRayEndArrow } from "@mdi/js";
|
|
@@ -55,6 +120,8 @@ import { eodashCollections } from "@/utils/states";
|
|
|
55
120
|
import log from "loglevel";
|
|
56
121
|
import { makePanelTransparent } from "@/composables";
|
|
57
122
|
|
|
123
|
+
const { lgAndDown } = useDisplay();
|
|
124
|
+
|
|
58
125
|
// holds the number value of the datetime
|
|
59
126
|
const currentDate = customRef((track, trigger) => ({
|
|
60
127
|
get() {
|
|
@@ -86,6 +153,10 @@ defineProps({
|
|
|
86
153
|
type: Boolean,
|
|
87
154
|
default: false,
|
|
88
155
|
},
|
|
156
|
+
toggleCalendar: {
|
|
157
|
+
type: Boolean,
|
|
158
|
+
default: false,
|
|
159
|
+
},
|
|
89
160
|
});
|
|
90
161
|
|
|
91
162
|
/**
|
|
@@ -137,7 +208,7 @@ watch(
|
|
|
137
208
|
];
|
|
138
209
|
attributes.push({
|
|
139
210
|
key: "id-" + idx.toString() + Math.random().toString(16).slice(2),
|
|
140
|
-
|
|
211
|
+
dot: {
|
|
141
212
|
style: {
|
|
142
213
|
backgroundColor: wongPalette[idx % wongPalette.length],
|
|
143
214
|
},
|
|
@@ -182,6 +253,14 @@ function jumpDate(reverse) {
|
|
|
182
253
|
}
|
|
183
254
|
}
|
|
184
255
|
|
|
256
|
+
// fixes calendar dispalcement on lib mode
|
|
257
|
+
const transform = ref("");
|
|
258
|
+
onMounted(() => {
|
|
259
|
+
transform.value = document.querySelector("eo-dash")
|
|
260
|
+
? "translate3d(50px,-80px,0)"
|
|
261
|
+
: "translate3d(0px,-80px,0)";
|
|
262
|
+
});
|
|
263
|
+
|
|
185
264
|
makePanelTransparent(rootRef);
|
|
186
265
|
</script>
|
|
187
266
|
<style>
|
|
@@ -200,4 +279,8 @@ makePanelTransparent(rootRef);
|
|
|
200
279
|
.vc-highlight-content-solid {
|
|
201
280
|
color: white !important;
|
|
202
281
|
}
|
|
282
|
+
|
|
283
|
+
.vc-popover-content-wrapper {
|
|
284
|
+
transform: v-bind("transform") !important;
|
|
285
|
+
}
|
|
203
286
|
</style>
|
|
@@ -9,6 +9,7 @@
|
|
|
9
9
|
toolsAsList="true"
|
|
10
10
|
style="--eox-background-color: transparent"
|
|
11
11
|
ref="eoxLayercontrol"
|
|
12
|
+
@layerConfig:change="onLayerConfigChange"
|
|
12
13
|
/>
|
|
13
14
|
</span>
|
|
14
15
|
</template>
|
|
@@ -22,7 +23,11 @@ import "color-legend-element";
|
|
|
22
23
|
import { computed, ref } from "vue";
|
|
23
24
|
import { mapEl, mapCompareEl } from "@/store/states";
|
|
24
25
|
import { getColFromLayer } from "@/eodashSTAC/helpers";
|
|
25
|
-
import {
|
|
26
|
+
import {
|
|
27
|
+
eodashCollections,
|
|
28
|
+
eodashCompareCollections,
|
|
29
|
+
layerControlFormValue,
|
|
30
|
+
} from "@/utils/states";
|
|
26
31
|
import { storeToRefs } from "pinia";
|
|
27
32
|
import { useSTAcStore } from "@/store/stac";
|
|
28
33
|
|
|
@@ -108,4 +113,11 @@ const debouncedHandleDateTime = (evt) => {
|
|
|
108
113
|
}, 500);
|
|
109
114
|
};
|
|
110
115
|
// ------
|
|
116
|
+
/**
|
|
117
|
+
*
|
|
118
|
+
* @param {Event & {detail:{layer:import("ol/layer").Layer;jsonformValue:Record<string,any>}}} evt
|
|
119
|
+
*/
|
|
120
|
+
const onLayerConfigChange = (evt) => {
|
|
121
|
+
layerControlFormValue.value = evt.detail.jsonformValue;
|
|
122
|
+
};
|
|
111
123
|
</script>
|