@eodash/eodash 5.1.0 → 5.3.0
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 +1 -2
- package/core/client/components/EodashOverlay.vue +4 -5
- package/core/client/components/MobileLayout.vue +42 -21
- package/core/client/composables/index.js +54 -60
- package/core/client/eodashSTAC/EodashCollection.js +199 -108
- package/core/client/eodashSTAC/auth.js +86 -0
- package/core/client/eodashSTAC/createLayers.js +234 -4
- package/core/client/eodashSTAC/helpers.js +281 -59
- package/core/client/eodashSTAC/parquet.js +0 -13
- package/core/client/eodashSTAC/triggers.js +1 -1
- package/core/client/store/actions.js +14 -0
- package/core/client/store/stac.js +46 -8
- package/core/client/store/states.js +6 -0
- package/core/client/types.ts +206 -3
- package/core/client/utils/bands-editor/arithmetic.js +144 -0
- package/core/client/utils/bands-editor/colors.js +36 -0
- package/core/client/utils/bands-editor/dom.js +196 -0
- package/core/client/utils/bands-editor/exampleSchema.json +1320 -0
- package/core/client/utils/bands-editor/index.js +68 -0
- package/core/client/utils/bands-editor/rgb.js +102 -0
- package/core/client/utils/index.js +5 -2
- package/core/client/views/Dashboard.vue +1 -1
- package/core/client/vite-env.d.ts +122 -0
- package/dist/client/{DashboardLayout-ByVs1DrY.js → DashboardLayout-Cq15p4TH.js} +5 -6
- package/dist/client/{DynamicWebComponent-C3W7HSQm.js → DynamicWebComponent-Cv-fPRG1.js} +1 -1
- package/dist/client/{EodashDatePicker-BIAf1sMT.js → EodashDatePicker-CPlJwEIO.js} +20 -22
- package/dist/client/{EodashItemFilter-DPznh8UB.js → EodashItemFilter-Ydebgbjj.js} +46 -31
- package/dist/client/EodashLayerControl-COhrkNEs.js +1517 -0
- package/dist/client/{EodashLayoutSwitcher-C5qTEffW.js → EodashLayoutSwitcher-pnKhTRZV.js} +4 -4
- package/dist/client/EodashMapBtns-Cj0Fx119.js +301 -0
- package/dist/client/{EodashStacInfo-CSvvF2jI.js → EodashStacInfo-Dadkg_Nj.js} +1 -1
- package/dist/client/EodashTimeSlider-CpoHX0S7.js +53 -0
- package/dist/client/{EodashTools-Cv1SXQ5y.js → EodashTools-UGBG7KC9.js} +10 -7
- package/dist/client/{ExportState-D-iuwaad.js → ExportState-GtJkAqeZ.js} +145 -121
- package/dist/client/{Footer-CyF0zRAk.js → Footer-D3ZPG5c4.js} +1 -1
- package/dist/client/{Header-CgD8jDKU.js → Header-z6AK-wpN.js} +2 -3
- package/dist/client/MobileLayout-BXNsNftb.js +118 -0
- package/dist/client/{PopUp-BsYLvWch.js → PopUp-BbQdjENV.js} +79 -44
- package/dist/client/{ProcessList-C2xsLU2_.js → ProcessList-C6VsdsYI.js} +18 -12
- package/dist/client/{VImg-OHe8YTs2.js → VImg-CxaMSB99.js} +203 -5
- package/dist/client/{VMain-PryTLU4a.js → VMain-Ds7yw0wj.js} +1 -1
- package/dist/client/{VTooltip-DZ0fjpB3.js → VTooltip-Cze6CEVh.js} +2 -3
- package/dist/client/{WidgetsContainer-B9LBadcC.js → WidgetsContainer-D66bj-JJ.js} +1 -1
- package/dist/client/asWebComponent-CWbNRdf9.js +8895 -0
- package/dist/client/{async-DkSu_u2K.js → async-BA7oWCMX.js} +69 -5
- package/dist/client/easing-CH0-9wR8.js +35 -0
- package/dist/client/eo-dash.js +1 -1
- package/dist/client/{VOverlay-yUn7p-Uf.js → forwardRefs-BUfxOIo-.js} +308 -28
- package/dist/client/{handling-CgmFXkW6.js → handling-DlNTtKB-.js} +27 -6
- package/dist/client/{helpers-Dy0Q13tP.js → helpers-CtE0W7iu.js} +595 -278
- package/dist/client/{index-skjhlH8u.js → index-CeEZIjO6.js} +26 -13
- package/dist/client/{index-Ch_HchK3.js → index-CsKbRDeN.js} +238 -77
- package/dist/client/{index-Dqj4tbx2.js → index-D4_NRKrf.js} +2 -2
- package/dist/client/index-DeECc3lV.js +571 -0
- package/dist/client/material-symbols-outlined.woff2 +0 -0
- package/dist/client/material-symbols-rounded.woff2 +0 -0
- package/dist/client/material-symbols-sharp.woff2 +0 -0
- package/dist/client/material-symbols-subset.woff2 +0 -0
- package/dist/client/templates.js +106 -49
- package/dist/client/{transition-C98Yn4Vo.js → transition-Byvp3L6Y.js} +1 -1
- package/dist/node/cli.js +6 -6
- package/dist/types/core/client/eodashSTAC/EodashCollection.d.ts +24 -10
- package/dist/types/core/client/eodashSTAC/auth.d.ts +7 -0
- package/dist/types/core/client/eodashSTAC/createLayers.d.ts +15 -3
- package/dist/types/core/client/eodashSTAC/helpers.d.ts +51 -15
- package/dist/types/core/client/plugins/vuetify.d.ts +14 -14
- package/dist/types/core/client/store/actions.d.ts +2 -0
- package/dist/types/core/client/store/stac.d.ts +16 -7
- package/dist/types/core/client/store/states.d.ts +4 -0
- package/dist/types/core/client/types.d.ts +171 -3
- package/dist/types/core/client/utils/bands-editor/arithmetic.d.ts +8 -0
- package/dist/types/core/client/utils/bands-editor/colors.d.ts +15 -0
- package/dist/types/core/client/utils/bands-editor/dom.d.ts +42 -0
- package/dist/types/core/client/utils/bands-editor/index.d.ts +20 -0
- package/dist/types/core/client/utils/bands-editor/rgb.d.ts +15 -0
- package/dist/types/core/client/utils/index.d.ts +1 -1
- package/dist/types/templates/baseConfig.d.ts +87 -1
- package/dist/types/templates/compare.d.ts +0 -25
- package/dist/types/templates/expert.d.ts +17 -21
- package/dist/types/templates/explore.d.ts +67 -0
- package/dist/types/templates/index.d.ts +1 -1
- package/dist/types/templates/{light.d.ts → lite.d.ts} +9 -0
- package/dist/types/widgets/EodashItemCatalog/index.vue.d.ts +21 -0
- package/dist/types/widgets/EodashItemCatalog/methods/filters.d.ts +49 -0
- package/dist/types/widgets/EodashItemCatalog/methods/handlers.d.ts +4 -0
- package/dist/types/widgets/EodashItemCatalog/methods/map.d.ts +12 -0
- package/dist/types/widgets/EodashItemCatalog/types.d.ts +14 -0
- package/dist/types/widgets/{EodashMapBtns.vue.d.ts → EodashMap/EodashMapBtns.vue.d.ts} +6 -0
- package/dist/types/widgets/EodashMap/index.vue.d.ts +114 -0
- package/dist/types/widgets/EodashMap/methods/create-layers-config.d.ts +1 -1
- package/dist/types/widgets/EodashMap/methods/index.d.ts +1 -1
- package/dist/types/widgets/EodashProcess/methods/async.d.ts +1 -0
- package/dist/types/widgets/EodashProcess/methods/custom-endpoints/layers/eoxhub-workspaces-endpoint.d.ts +1 -1
- package/dist/types/widgets/EodashTimeSlider.vue.d.ts +7 -0
- package/dist/types/widgets/EodashTools.vue.d.ts +10 -10
- package/dist/types/widgets/ExportState.vue.d.ts +2 -0
- package/package.json +31 -28
- package/templates/baseConfig.js +10 -5
- package/templates/compare.js +2 -22
- package/templates/expert.js +19 -18
- package/templates/explore.js +62 -0
- package/templates/index.js +1 -1
- package/templates/{light.js → lite.js} +11 -2
- package/widgets/EodashDatePicker.vue +15 -18
- package/widgets/EodashItemCatalog/index.vue +161 -0
- package/widgets/EodashItemCatalog/methods/filters.js +216 -0
- package/widgets/EodashItemCatalog/methods/handlers.js +50 -0
- package/widgets/EodashItemCatalog/methods/map.js +144 -0
- package/widgets/EodashItemCatalog/types.ts +15 -0
- package/widgets/EodashItemFilter.vue +35 -28
- package/widgets/EodashLayerControl.vue +10 -6
- package/widgets/EodashLayoutSwitcher.vue +1 -1
- package/widgets/EodashMap/EodashMapBtns.vue +278 -0
- package/widgets/EodashMap/index.vue +263 -38
- package/widgets/EodashMap/methods/create-layers-config.js +9 -6
- package/widgets/EodashMap/methods/index.js +27 -13
- package/widgets/EodashProcess/ProcessList.vue +13 -1
- package/widgets/EodashProcess/index.vue +17 -1
- package/widgets/EodashProcess/methods/async.js +22 -1
- package/widgets/EodashProcess/methods/custom-endpoints/chart/veda-endpoint.js +25 -3
- package/widgets/EodashProcess/methods/handling.js +2 -0
- package/widgets/EodashProcess/methods/outputs.js +1 -0
- package/widgets/EodashProcess/methods/utils.js +45 -1
- package/widgets/EodashTimeSlider.vue +40 -0
- package/widgets/EodashTools.vue +7 -3
- package/widgets/ExportState.vue +53 -22
- package/dist/client/EodashLayerControl-Bhxjw4V2.js +0 -154
- package/dist/client/EodashMapBtns-WoGq8MuV.js +0 -173
- package/dist/client/MobileLayout-EKQ_kpSh.js +0 -1226
- package/dist/client/asWebComponent-By_7_JjS.js +0 -19193
- package/dist/client/forwardRefs-BXxrv98s.js +0 -272
- package/dist/client/index-BuhOHXKv.js +0 -199
- package/widgets/EodashMapBtns.vue +0 -155
|
@@ -1,28 +1,37 @@
|
|
|
1
1
|
export const useSTAcStore: import("pinia").StoreDefinition<"stac", Pick<{
|
|
2
|
+
stacEndpoint: import("vue").Ref<string | null, string | null>;
|
|
3
|
+
isApi: import("vue").Ref<boolean, boolean>;
|
|
2
4
|
stac: import("vue").Ref<import("stac-ts").StacLink[] | null, import("stac-ts").StacLink[] | null>;
|
|
3
5
|
init: (endpoint: import("../types").StacEndpoint) => void;
|
|
4
|
-
loadSTAC: (url?:
|
|
5
|
-
loadSelectedSTAC: (relativePath?: string, isPoi?: boolean) => Promise<void>;
|
|
6
|
+
loadSTAC: (url?: string) => Promise<void>;
|
|
7
|
+
loadSelectedSTAC: (relativePath?: string, isPoi?: boolean, stacItem?: Object) => Promise<void>;
|
|
6
8
|
loadSelectedCompareSTAC: (relativePath?: string, isPOI?: boolean) => Promise<void>;
|
|
7
9
|
resetSelectedCompareSTAC: () => Promise<void>;
|
|
8
10
|
selectedStac: import("vue").Ref<import("stac-ts").StacCollection | null, import("stac-ts").StacCollection | null>;
|
|
9
11
|
selectedCompareStac: import("vue").Ref<import("stac-ts").StacCollection | null, import("stac-ts").StacCollection | null>;
|
|
10
|
-
|
|
12
|
+
selectedItem: import("vue").Ref<import("stac-ts").StacLink | import("stac-ts").StacItem | null, import("stac-ts").StacLink | import("stac-ts").StacItem | null>;
|
|
13
|
+
}, "stacEndpoint" | "isApi" | "stac" | "selectedStac" | "selectedCompareStac" | "selectedItem">, Pick<{
|
|
14
|
+
stacEndpoint: import("vue").Ref<string | null, string | null>;
|
|
15
|
+
isApi: import("vue").Ref<boolean, boolean>;
|
|
11
16
|
stac: import("vue").Ref<import("stac-ts").StacLink[] | null, import("stac-ts").StacLink[] | null>;
|
|
12
17
|
init: (endpoint: import("../types").StacEndpoint) => void;
|
|
13
|
-
loadSTAC: (url?:
|
|
14
|
-
loadSelectedSTAC: (relativePath?: string, isPoi?: boolean) => Promise<void>;
|
|
18
|
+
loadSTAC: (url?: string) => Promise<void>;
|
|
19
|
+
loadSelectedSTAC: (relativePath?: string, isPoi?: boolean, stacItem?: Object) => Promise<void>;
|
|
15
20
|
loadSelectedCompareSTAC: (relativePath?: string, isPOI?: boolean) => Promise<void>;
|
|
16
21
|
resetSelectedCompareSTAC: () => Promise<void>;
|
|
17
22
|
selectedStac: import("vue").Ref<import("stac-ts").StacCollection | null, import("stac-ts").StacCollection | null>;
|
|
18
23
|
selectedCompareStac: import("vue").Ref<import("stac-ts").StacCollection | null, import("stac-ts").StacCollection | null>;
|
|
24
|
+
selectedItem: import("vue").Ref<import("stac-ts").StacLink | import("stac-ts").StacItem | null, import("stac-ts").StacLink | import("stac-ts").StacItem | null>;
|
|
19
25
|
}, never>, Pick<{
|
|
26
|
+
stacEndpoint: import("vue").Ref<string | null, string | null>;
|
|
27
|
+
isApi: import("vue").Ref<boolean, boolean>;
|
|
20
28
|
stac: import("vue").Ref<import("stac-ts").StacLink[] | null, import("stac-ts").StacLink[] | null>;
|
|
21
29
|
init: (endpoint: import("../types").StacEndpoint) => void;
|
|
22
|
-
loadSTAC: (url?:
|
|
23
|
-
loadSelectedSTAC: (relativePath?: string, isPoi?: boolean) => Promise<void>;
|
|
30
|
+
loadSTAC: (url?: string) => Promise<void>;
|
|
31
|
+
loadSelectedSTAC: (relativePath?: string, isPoi?: boolean, stacItem?: Object) => Promise<void>;
|
|
24
32
|
loadSelectedCompareSTAC: (relativePath?: string, isPOI?: boolean) => Promise<void>;
|
|
25
33
|
resetSelectedCompareSTAC: () => Promise<void>;
|
|
26
34
|
selectedStac: import("vue").Ref<import("stac-ts").StacCollection | null, import("stac-ts").StacCollection | null>;
|
|
27
35
|
selectedCompareStac: import("vue").Ref<import("stac-ts").StacCollection | null, import("stac-ts").StacCollection | null>;
|
|
36
|
+
selectedItem: import("vue").Ref<import("stac-ts").StacLink | import("stac-ts").StacItem | null, import("stac-ts").StacLink | import("stac-ts").StacItem | null>;
|
|
28
37
|
}, "init" | "loadSTAC" | "loadSelectedSTAC" | "loadSelectedCompareSTAC" | "resetSelectedCompareSTAC">>;
|
|
@@ -30,3 +30,7 @@ export const poi: import("vue").Ref<string, string>;
|
|
|
30
30
|
* Selected point of interest for comparison, used for location collections
|
|
31
31
|
*/
|
|
32
32
|
export const comparePoi: import("vue").Ref<string, string>;
|
|
33
|
+
/** @type {import("vue").Ref<import("@eox/chart").EOxChart | null>} */
|
|
34
|
+
export const chartEl: import("vue").Ref<import("@eox/chart").EOxChart | null>;
|
|
35
|
+
/** @type {import("vue").Ref<import("@eox/chart").EOxChart | null>} */
|
|
36
|
+
export const compareChartEl: import("vue").Ref<import("@eox/chart").EOxChart | null>;
|
|
@@ -94,6 +94,11 @@ export interface TEodashDatePicker {
|
|
|
94
94
|
properties?: InstanceType<typeof import("../../widgets/EodashDatePicker.vue").default>["$props"];
|
|
95
95
|
}
|
|
96
96
|
/** @group Widgets */
|
|
97
|
+
export interface TEodashTimeSlider {
|
|
98
|
+
name: "EodashTimeSlider";
|
|
99
|
+
properties?: InstanceType<typeof import("../../widgets/EodashTimeSlider.vue").default>["$props"];
|
|
100
|
+
}
|
|
101
|
+
/** @group Widgets */
|
|
97
102
|
export interface TEodashItemFilter {
|
|
98
103
|
name: "EodashItemFilter";
|
|
99
104
|
properties?: InstanceType<typeof import("../../widgets/EodashItemFilter.vue").default>["$props"];
|
|
@@ -116,7 +121,7 @@ export interface TEodashProcess {
|
|
|
116
121
|
/** @group Widgets */
|
|
117
122
|
export interface TEodashMapBtns {
|
|
118
123
|
name: "EodashMapBtns";
|
|
119
|
-
properties?: InstanceType<typeof import("
|
|
124
|
+
properties?: InstanceType<typeof import("^/EodashMapBtns.vue").default>["$props"];
|
|
120
125
|
}
|
|
121
126
|
/** @group Widgets */
|
|
122
127
|
export interface TEodashTools {
|
|
@@ -128,6 +133,10 @@ export interface TEodashLayoutSwitcher {
|
|
|
128
133
|
name: "EodashLayoutSwitcher";
|
|
129
134
|
properties?: InstanceType<typeof import("../../widgets/EodashLayoutSwitcher.vue").default>["$props"];
|
|
130
135
|
}
|
|
136
|
+
export interface TEodashItemCatalog {
|
|
137
|
+
name: "EodashItemCatalog";
|
|
138
|
+
properties?: InstanceType<typeof import("../../widgets/EodashItemCatalog/index.vue").default>["$props"];
|
|
139
|
+
}
|
|
131
140
|
/** @group Widgets */
|
|
132
141
|
export interface TExportState {
|
|
133
142
|
name: "ExportState";
|
|
@@ -149,7 +158,7 @@ export interface TWidgetsContainer {
|
|
|
149
158
|
* Referenced using their name without the .vue extention
|
|
150
159
|
* @group Widgets
|
|
151
160
|
*/
|
|
152
|
-
export type ComponentWidget = TEodashMap | TEodashDatePicker | TEodashItemFilter | TEodashLayerControl | TEodashStacInfo | TEodashProcess | TEodashMapBtns | TEodashTools | TEodashLayoutSwitcher | TExportState | TPopUp | TWidgetsContainer;
|
|
161
|
+
export type ComponentWidget = TEodashMap | TEodashDatePicker | TEodashItemFilter | TEodashLayerControl | TEodashStacInfo | TEodashProcess | TEodashMapBtns | TEodashTools | TEodashLayoutSwitcher | TEodashItemCatalog | TExportState | TPopUp | TWidgetsContainer | TEodashTimeSlider;
|
|
153
162
|
/**
|
|
154
163
|
* Widget type: `internal` API. Internal widgets are Vue components provided by
|
|
155
164
|
* eodash.
|
|
@@ -232,7 +241,12 @@ export interface Template {
|
|
|
232
241
|
/** @group Eodash */
|
|
233
242
|
export type MultiTemplates = Record<string, Template>;
|
|
234
243
|
/** @ignore */
|
|
235
|
-
export type StacEndpoint =
|
|
244
|
+
export type StacEndpoint = string | {
|
|
245
|
+
endpoint: string;
|
|
246
|
+
api?: boolean;
|
|
247
|
+
rasterEndpoint?: string;
|
|
248
|
+
vectorEndpoint?: string;
|
|
249
|
+
};
|
|
236
250
|
/** @group Eodash */
|
|
237
251
|
export interface EodashFont {
|
|
238
252
|
/**
|
|
@@ -363,4 +377,158 @@ export type EodashStyleJson = import("ol/style/flat").FlatStyleLike & {
|
|
|
363
377
|
appendix?: string;
|
|
364
378
|
}[];
|
|
365
379
|
};
|
|
380
|
+
export type EodashRasterJSONForm = {
|
|
381
|
+
jsonform: Record<string, any>;
|
|
382
|
+
legend?: import("@eox/layercontrol/src/components/layer-config.js").EOxLayerControlLayerConfig["layerConfig"]["legend"];
|
|
383
|
+
};
|
|
384
|
+
/** @ignore */
|
|
366
385
|
export type LayersEventBusKeys = "layers:updated" | "time:updated" | "process:updated" | "compareLayers:updated" | "compareTime:updated" | "compareProcess:updated";
|
|
386
|
+
/** @ignore */
|
|
387
|
+
export interface SearchParams {
|
|
388
|
+
/** Collection IDs to search within */
|
|
389
|
+
collections: string[];
|
|
390
|
+
/** Query parameters */
|
|
391
|
+
query: {
|
|
392
|
+
datetime?: {
|
|
393
|
+
eq?: string;
|
|
394
|
+
in?: string[];
|
|
395
|
+
};
|
|
396
|
+
geometry?: Record<string, any>;
|
|
397
|
+
};
|
|
398
|
+
/** Maximum number of results to return */
|
|
399
|
+
limit?: number;
|
|
400
|
+
}
|
|
401
|
+
export interface StacItemsAPIResponse {
|
|
402
|
+
type: "FeatureCollection";
|
|
403
|
+
features: import("stac-ts").StacItem[];
|
|
404
|
+
}
|
|
405
|
+
/** @ignore */
|
|
406
|
+
export interface Render {
|
|
407
|
+
/** REQUIRED. Array of asset keys referencing the assets that are used to make the rendering */
|
|
408
|
+
assets: string[];
|
|
409
|
+
/** Optional title of the rendering */
|
|
410
|
+
title?: string;
|
|
411
|
+
/** 2 dimensions array of delimited Min,Max range per band. If not provided, the data will not be rescaled. */
|
|
412
|
+
rescale?: number[][];
|
|
413
|
+
/** Nodata value to use for the referenced assets. */
|
|
414
|
+
nodata?: number | string;
|
|
415
|
+
/** Color map identifier that must be applied for a raster band */
|
|
416
|
+
colormap_name?: string;
|
|
417
|
+
/** Color map JSON definition that must be applied for a raster band */
|
|
418
|
+
colormap?: Record<string, unknown>;
|
|
419
|
+
/** Color formula that must be applied for a raster band */
|
|
420
|
+
color_formula?: string;
|
|
421
|
+
/** Resampling algorithm to apply to the referenced assets. See GDAL resampling algorithm for some examples. */
|
|
422
|
+
resampling?: string;
|
|
423
|
+
/** Band arithmetic formula to apply to the referenced assets. */
|
|
424
|
+
expression?: string;
|
|
425
|
+
/** Zoom levels range applicable for the visualization */
|
|
426
|
+
minmax_zoom?: number[];
|
|
427
|
+
}
|
|
428
|
+
/** @ignore */
|
|
429
|
+
export interface TitilerSTACParameters {
|
|
430
|
+
/** STAC Item URL. Required */
|
|
431
|
+
url: string;
|
|
432
|
+
/** asset names. */
|
|
433
|
+
assets?: string[];
|
|
434
|
+
/** rio-tiler's math expression with asset names (e.g Asset1_b1/Asset2_b1). */
|
|
435
|
+
expression?: string;
|
|
436
|
+
/** tell rio-tiler that each asset is a 1 band dataset, so expression Asset1/Asset2 can be passed. */
|
|
437
|
+
asset_as_band?: boolean;
|
|
438
|
+
/** Per asset band math expression (e.g Asset1|1,2,3). */
|
|
439
|
+
asset_bidx?: string[];
|
|
440
|
+
/** Overwrite internal Nodata value. */
|
|
441
|
+
nodata?: string | number;
|
|
442
|
+
/** Apply dataset internal Scale/Offset. */
|
|
443
|
+
unscale?: boolean;
|
|
444
|
+
/** RasterIO resampling algorithm. Defaults to nearest. */
|
|
445
|
+
resampling?: string;
|
|
446
|
+
/** WarpKernel resampling algorithm (only used when doing re-projection). Defaults to nearest. */
|
|
447
|
+
reproject?: string;
|
|
448
|
+
/** Comma (',') delimited Min,Max range (e.g rescale=0,1000, rescale=0,1000&rescale=0,3000&rescale=0,2000). */
|
|
449
|
+
rescale?: string[];
|
|
450
|
+
/** rio-color formula. */
|
|
451
|
+
color_formula?: string;
|
|
452
|
+
/** JSON encoded custom Colormap. */
|
|
453
|
+
colormap?: string;
|
|
454
|
+
/** rio-tiler color map name. */
|
|
455
|
+
colormap_name?: string;
|
|
456
|
+
/** Add mask to the output data. Default is True. */
|
|
457
|
+
return_mask?: boolean;
|
|
458
|
+
/** Buffer on each side of the given tile. It must be a multiple of 0.5. Output tilesize will be expanded to tilesize + 2 * buffer (e.g 0.5 = 257x257, 1.0 = 258x258). */
|
|
459
|
+
buffer?: number;
|
|
460
|
+
/** Padding to apply to each tile edge. Helps reduce resampling artefacts along edges. Defaults to 0. */
|
|
461
|
+
padding?: number;
|
|
462
|
+
/** Custom algorithm name (e.g hillshade). */
|
|
463
|
+
algorithm?: string;
|
|
464
|
+
/** JSON encoded algorithm parameters. */
|
|
465
|
+
algorithm_params?: string;
|
|
466
|
+
}
|
|
467
|
+
/**
|
|
468
|
+
* Generic GeoJSON Feature interface that can hold additional properties.
|
|
469
|
+
* @ignore
|
|
470
|
+
*/
|
|
471
|
+
export interface GeoJsonFeature<T = Record<string, any>, G = GeoJSON.Geometry> {
|
|
472
|
+
type: "Feature";
|
|
473
|
+
geometry: G;
|
|
474
|
+
properties: T & Record<string, any>;
|
|
475
|
+
id?: string | number;
|
|
476
|
+
}
|
|
477
|
+
/**
|
|
478
|
+
* Generic GeoJSON FeatureCollection interface that can hold additional properties.
|
|
479
|
+
* @ignore
|
|
480
|
+
*/
|
|
481
|
+
export interface GeoJsonFeatureCollection<T = Record<string, any>, G = GeoJSON.Geometry> {
|
|
482
|
+
type: "FeatureCollection";
|
|
483
|
+
features: Array<GeoJsonFeature<T, G>>;
|
|
484
|
+
properties?: T & Record<string, any>;
|
|
485
|
+
}
|
|
486
|
+
/**
|
|
487
|
+
* Partial STAC Authentication Extension v1.1.0
|
|
488
|
+
* Generated from https://stac-extensions.github.io/authentication/v1.1.0/schema.json
|
|
489
|
+
*/
|
|
490
|
+
export interface AuthScheme {
|
|
491
|
+
/** Scheme keyword, e.g. http, s3, signedUrl, oauth2, apiKey, openIdConnect */
|
|
492
|
+
type: "http" | "s3" | "signedUrl" | "oauth2" | "apiKey" | "openIdConnect" | string;
|
|
493
|
+
description?: string;
|
|
494
|
+
name?: string;
|
|
495
|
+
in?: string;
|
|
496
|
+
scheme?: string;
|
|
497
|
+
flows?: Record<string, OAuth2Flow | SignedUrlFlow>;
|
|
498
|
+
openIdConnectUrl?: string;
|
|
499
|
+
}
|
|
500
|
+
export interface OAuth2Flow {
|
|
501
|
+
authorizationUrl?: string;
|
|
502
|
+
tokenUrl?: string;
|
|
503
|
+
refreshUrl?: string;
|
|
504
|
+
scopes: Record<string, string>;
|
|
505
|
+
}
|
|
506
|
+
/** Signed URL flow configuration */
|
|
507
|
+
export interface SignedUrlFlow {
|
|
508
|
+
authorizationApi: string;
|
|
509
|
+
method: string;
|
|
510
|
+
responseField?: string;
|
|
511
|
+
parameters?: Record<string, {
|
|
512
|
+
in: "query" | "header" | "body" | string;
|
|
513
|
+
required: boolean;
|
|
514
|
+
description?: string;
|
|
515
|
+
schema?: object;
|
|
516
|
+
}>;
|
|
517
|
+
}
|
|
518
|
+
export interface ApiKeyAuthScheme extends AuthScheme {
|
|
519
|
+
type: "apiKey";
|
|
520
|
+
name: string;
|
|
521
|
+
in: string;
|
|
522
|
+
}
|
|
523
|
+
import { StacItem, StacLink, StacAsset } from "stac-ts";
|
|
524
|
+
export interface StacAuthItem extends StacItem {
|
|
525
|
+
"auth:schemes": {
|
|
526
|
+
[key: string]: AuthScheme;
|
|
527
|
+
};
|
|
528
|
+
}
|
|
529
|
+
export interface StacAuthLink extends StacLink {
|
|
530
|
+
"auth:refs": [string];
|
|
531
|
+
}
|
|
532
|
+
export interface StacAuthAsset extends StacAsset {
|
|
533
|
+
"auth:refs": [string];
|
|
534
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Build the arithmetic expression interface
|
|
3
|
+
* @param {import("./index.js").BandsEditor} editor - The editor instance
|
|
4
|
+
* @param {Array<string>} colors - Array of color strings
|
|
5
|
+
* @param {Array<string>} bands - Array of band identifiers
|
|
6
|
+
* @param {Array<string>} bandTitles - Array of band titles
|
|
7
|
+
*/
|
|
8
|
+
export function buildArithmeticInterface(editor: import("./index.js").BandsEditor, colors: Array<string>, bands: Array<string>, bandTitles: Array<string>): void;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generate band colors for the editor
|
|
3
|
+
* @param {Record<string,any>} schema - JSON schema
|
|
4
|
+
* @param {string} format - Format type ("bands" or "bands-arithmetic")
|
|
5
|
+
* @returns {string[]} Array of color strings
|
|
6
|
+
*/
|
|
7
|
+
export function generateBandColors(schema: Record<string, any>, format: string): string[];
|
|
8
|
+
/**
|
|
9
|
+
* Get color for a specific band
|
|
10
|
+
* @param {string} band - Band identifier
|
|
11
|
+
* @param {string[]} bands - Array of band identifiers
|
|
12
|
+
* @param {string[]} colors - Array of color strings
|
|
13
|
+
* @returns {string} Color string
|
|
14
|
+
*/
|
|
15
|
+
export function getBandColor(band: string, bands: string[], colors: string[]): string;
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Create band styles
|
|
3
|
+
* @param {string[]} bands - Array of band identifiers
|
|
4
|
+
* @param {string[]} colors - Array of color strings
|
|
5
|
+
* @param {string} additionalStyles - Additional CSS styles
|
|
6
|
+
* @returns {HTMLStyleElement} Style element
|
|
7
|
+
*/
|
|
8
|
+
export function createBandStyles(bands: string[], colors: string[], additionalStyles?: string): HTMLStyleElement;
|
|
9
|
+
/**
|
|
10
|
+
* Create a draggable band element.
|
|
11
|
+
* @param {string} enumValue
|
|
12
|
+
* @param {string} title
|
|
13
|
+
*/
|
|
14
|
+
export function createBandDiv(enumValue: string, title: string): HTMLDivElement;
|
|
15
|
+
/**
|
|
16
|
+
* Add draggable band elements
|
|
17
|
+
* @param {import("./index.js").BandsEditor} editor - The editor instance
|
|
18
|
+
* @param {Array<string>} bands - Array of band identifiers
|
|
19
|
+
* @param {Array<string>} bandTitles - Array of band titles
|
|
20
|
+
*/
|
|
21
|
+
export function addDraggableBands(editor: import("./index.js").BandsEditor, bands: Array<string>, bandTitles: Array<string>): void;
|
|
22
|
+
/**
|
|
23
|
+
* Create unified styles for all slot types
|
|
24
|
+
* @param {string[]} bands - Array of band identifiers
|
|
25
|
+
* @param {string[]} colors - Array of color strings
|
|
26
|
+
* @returns {HTMLStyleElement} Style element with unified slot styles
|
|
27
|
+
*/
|
|
28
|
+
export function createSlotStyles(bands: string[], colors: string[]): HTMLStyleElement;
|
|
29
|
+
/**
|
|
30
|
+
* Create a unified slot element for RGB or arithmetic use
|
|
31
|
+
* @param {string} identifier - RGB letter ("R", "G", "B") or variable name for arithmetic
|
|
32
|
+
* @param {(e: DragEvent) => void} onDrop - Drop handler function
|
|
33
|
+
* @returns {HTMLDivElement} Slot element
|
|
34
|
+
*/
|
|
35
|
+
export function createSlot(identifier: string, onDrop: (e: DragEvent) => void): HTMLDivElement;
|
|
36
|
+
/**
|
|
37
|
+
* Fill a slot with a band
|
|
38
|
+
* @param {HTMLElement} slot - Slot element
|
|
39
|
+
* @param {string} enumValue - Band value
|
|
40
|
+
* @param {string} title - Band title
|
|
41
|
+
*/
|
|
42
|
+
export function fillSlotWithBand(slot: HTMLElement, enumValue: string, title: string): void;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export class BandsEditor extends AbstractEditor {
|
|
2
|
+
/** @type {Record<string, HTMLElement[]>} */
|
|
3
|
+
variableSlots: Record<string, HTMLElement[]>;
|
|
4
|
+
/** @type {Record<string, string>} */
|
|
5
|
+
variableValues: Record<string, string>;
|
|
6
|
+
/** @type {string[]} */
|
|
7
|
+
bands: string[];
|
|
8
|
+
/** @type {string[]} */
|
|
9
|
+
bandTitles: string[];
|
|
10
|
+
/** @type {string[]} */
|
|
11
|
+
colors: string[];
|
|
12
|
+
control: HTMLDivElement | undefined;
|
|
13
|
+
}
|
|
14
|
+
export const bandsEditorInterface: {
|
|
15
|
+
type: string;
|
|
16
|
+
format: string;
|
|
17
|
+
func: typeof BandsEditor;
|
|
18
|
+
}[];
|
|
19
|
+
export default bandsEditorInterface;
|
|
20
|
+
import { AbstractEditor } from "@json-editor/json-editor/src/editor";
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Build the traditional RGB bands interface
|
|
3
|
+
* @param {import("./index.js").BandsEditor} editor - The editor instance
|
|
4
|
+
* @param {Array<string>} colors - Array of color strings
|
|
5
|
+
* @param {Array<string>} bands - Array of band identifiers
|
|
6
|
+
* @param {Array<string>} bandTitles - Array of band titles
|
|
7
|
+
*/
|
|
8
|
+
export function buildRGBInterface(editor: import("./index.js").BandsEditor, colors: Array<string>, bands: Array<string>, bandTitles: Array<string>): void;
|
|
9
|
+
/**
|
|
10
|
+
* Add RGB slots for traditional bands interface using unified slot system
|
|
11
|
+
* @param {import("./index.js").BandsEditor} editor - The editor instance
|
|
12
|
+
* @param {Array<string>} bands - Array of band identifiers
|
|
13
|
+
* @param {Array<string>} bandTitles - Array of band titles
|
|
14
|
+
*/
|
|
15
|
+
export function addRGBSlots(editor: import("./index.js").BandsEditor, bands: Array<string>, bandTitles: Array<string>): void;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
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;
|
|
4
|
-
export function updateEodashCollections(eodashCollections: import("../eodashSTAC/EodashCollection").EodashCollection[], selectedStac: import("stac-ts").StacCollection, absoluteUrl: string, colorPalette: string[]): Promise<void>;
|
|
4
|
+
export function updateEodashCollections(eodashCollections: import("../eodashSTAC/EodashCollection").EodashCollection[], selectedStac: import("stac-ts").StacCollection, absoluteUrl: string, colorPalette: string[], isAPI: boolean, rasterEndpoint?: string | null): Promise<void>;
|
|
5
5
|
export function getElement(selector: Element | string): HTMLElement | null | undefined;
|
|
@@ -1,4 +1,90 @@
|
|
|
1
|
-
export function getBaseConfig(config:
|
|
1
|
+
export function getBaseConfig(config: import("vega-lite").DeepPartial<import("../core/client/types").Eodash>): ({
|
|
2
|
+
id?: string;
|
|
3
|
+
options?: {
|
|
4
|
+
useSubCode?: boolean;
|
|
5
|
+
};
|
|
6
|
+
stacEndpoint: import("../core/client/types").StacEndpoint;
|
|
7
|
+
brand: {
|
|
8
|
+
noLayout?: boolean;
|
|
9
|
+
errorMessage?: string;
|
|
10
|
+
font?: import("../core/client/types").EodashFont | {
|
|
11
|
+
body: import("../core/client/types").EodashFont;
|
|
12
|
+
headers: import("../core/client/types").EodashFont;
|
|
13
|
+
};
|
|
14
|
+
name: string;
|
|
15
|
+
logo?: string;
|
|
16
|
+
theme?: import("vuetify").ThemeDefinition & {
|
|
17
|
+
collectionsPalette?: string[];
|
|
18
|
+
};
|
|
19
|
+
footerText?: string;
|
|
20
|
+
};
|
|
21
|
+
} & {
|
|
22
|
+
templates: import("../core/client/types").MultiTemplates;
|
|
23
|
+
}) | {
|
|
24
|
+
id?: string | undefined;
|
|
25
|
+
options?: {
|
|
26
|
+
useSubCode?: boolean;
|
|
27
|
+
} | undefined;
|
|
28
|
+
stacEndpoint: import("../core/client/types").StacEndpoint & (string | {
|
|
29
|
+
endpoint: string;
|
|
30
|
+
api?: boolean;
|
|
31
|
+
rasterEndpoint?: string;
|
|
32
|
+
vectorEndpoint?: string;
|
|
33
|
+
});
|
|
34
|
+
brand: {
|
|
35
|
+
noLayout?: boolean;
|
|
36
|
+
errorMessage?: string;
|
|
37
|
+
font?: import("../core/client/types").EodashFont | {
|
|
38
|
+
body: import("../core/client/types").EodashFont;
|
|
39
|
+
headers: import("../core/client/types").EodashFont;
|
|
40
|
+
};
|
|
41
|
+
name: string;
|
|
42
|
+
logo?: string;
|
|
43
|
+
theme?: import("vuetify").ThemeDefinition & {
|
|
44
|
+
collectionsPalette?: string[];
|
|
45
|
+
};
|
|
46
|
+
footerText?: string;
|
|
47
|
+
} & {
|
|
48
|
+
name: string;
|
|
49
|
+
font?: import("../core/client/types").EodashFont | {
|
|
50
|
+
body: import("../core/client/types").EodashFont;
|
|
51
|
+
headers: import("../core/client/types").EodashFont;
|
|
52
|
+
} | undefined;
|
|
53
|
+
theme?: ({
|
|
54
|
+
dark?: boolean | undefined;
|
|
55
|
+
colors?: {
|
|
56
|
+
[x: string]: string | undefined;
|
|
57
|
+
background?: string | undefined;
|
|
58
|
+
surface?: string | undefined;
|
|
59
|
+
primary?: string | undefined;
|
|
60
|
+
secondary?: string | undefined;
|
|
61
|
+
success?: string | undefined;
|
|
62
|
+
warning?: string | undefined;
|
|
63
|
+
error?: string | undefined;
|
|
64
|
+
info?: string | undefined;
|
|
65
|
+
'on-background'?: string | undefined;
|
|
66
|
+
'on-surface'?: string | undefined;
|
|
67
|
+
'on-primary'?: string | undefined;
|
|
68
|
+
'on-secondary'?: string | undefined;
|
|
69
|
+
'on-success'?: string | undefined;
|
|
70
|
+
'on-warning'?: string | undefined;
|
|
71
|
+
'on-error'?: string | undefined;
|
|
72
|
+
'on-info'?: string | undefined;
|
|
73
|
+
} | undefined;
|
|
74
|
+
variables?: {
|
|
75
|
+
[x: string]: string | number | undefined;
|
|
76
|
+
} | undefined;
|
|
77
|
+
} & {
|
|
78
|
+
collectionsPalette?: string[];
|
|
79
|
+
}) | undefined;
|
|
80
|
+
noLayout?: boolean | undefined;
|
|
81
|
+
errorMessage?: string | undefined;
|
|
82
|
+
logo?: string | undefined;
|
|
83
|
+
footerText?: string | undefined;
|
|
84
|
+
};
|
|
85
|
+
template: import("../core/client/types").Template;
|
|
86
|
+
templates: import("../core/client/types").MultiTemplates;
|
|
87
|
+
};
|
|
2
88
|
export default baseConfig;
|
|
3
89
|
/** @type {import("../core/client/types").Eodash} */
|
|
4
90
|
declare const baseConfig: import("../core/client/types").Eodash;
|
|
@@ -156,31 +156,6 @@ declare const _default: {
|
|
|
156
156
|
title?: undefined;
|
|
157
157
|
layout?: undefined;
|
|
158
158
|
widget?: undefined;
|
|
159
|
-
} | {
|
|
160
|
-
defineWidget: (selected: import("stac-ts").StacCollection | null) => {
|
|
161
|
-
id: string;
|
|
162
|
-
layout: {
|
|
163
|
-
x: string;
|
|
164
|
-
y: number;
|
|
165
|
-
w: number;
|
|
166
|
-
h: number;
|
|
167
|
-
};
|
|
168
|
-
title: string;
|
|
169
|
-
type: "internal";
|
|
170
|
-
widget: {
|
|
171
|
-
name: "EodashMapBtns";
|
|
172
|
-
properties: {
|
|
173
|
-
compareIndicators: {
|
|
174
|
-
fallbackTemplate: string;
|
|
175
|
-
};
|
|
176
|
-
};
|
|
177
|
-
};
|
|
178
|
-
} | null;
|
|
179
|
-
id?: undefined;
|
|
180
|
-
type?: undefined;
|
|
181
|
-
title?: undefined;
|
|
182
|
-
layout?: undefined;
|
|
183
|
-
widget?: undefined;
|
|
184
159
|
} | {
|
|
185
160
|
defineWidget: (selectedSTAC: import("stac-ts").StacCollection | null) => {
|
|
186
161
|
id: string;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
declare const _default: {
|
|
2
2
|
loading: {
|
|
3
|
-
id:
|
|
3
|
+
id: string;
|
|
4
4
|
type: "web-component";
|
|
5
5
|
widget: {
|
|
6
6
|
link: string;
|
|
@@ -20,6 +20,22 @@ declare const _default: {
|
|
|
20
20
|
name: "EodashMap";
|
|
21
21
|
properties: {
|
|
22
22
|
enableCompare: true;
|
|
23
|
+
zoomToExtent: true;
|
|
24
|
+
btns: {
|
|
25
|
+
enableZoom: true;
|
|
26
|
+
enableExportMap: true;
|
|
27
|
+
enableChangeProjection: true;
|
|
28
|
+
enableCompareIndicators: {
|
|
29
|
+
fallbackTemplate: string;
|
|
30
|
+
};
|
|
31
|
+
enableBackToPOIs: true;
|
|
32
|
+
enableSearch: true;
|
|
33
|
+
};
|
|
34
|
+
btnsPosition: {
|
|
35
|
+
x: string;
|
|
36
|
+
y: number;
|
|
37
|
+
gap: number;
|
|
38
|
+
};
|
|
23
39
|
};
|
|
24
40
|
};
|
|
25
41
|
};
|
|
@@ -106,26 +122,6 @@ declare const _default: {
|
|
|
106
122
|
title?: undefined;
|
|
107
123
|
layout?: undefined;
|
|
108
124
|
widget?: undefined;
|
|
109
|
-
} | {
|
|
110
|
-
defineWidget: (selected: import("stac-ts").StacCollection | null) => {
|
|
111
|
-
id: string;
|
|
112
|
-
layout: {
|
|
113
|
-
x: string;
|
|
114
|
-
y: number;
|
|
115
|
-
w: number;
|
|
116
|
-
h: number;
|
|
117
|
-
};
|
|
118
|
-
title: string;
|
|
119
|
-
type: "internal";
|
|
120
|
-
widget: {
|
|
121
|
-
name: "EodashMapBtns";
|
|
122
|
-
};
|
|
123
|
-
} | null;
|
|
124
|
-
id?: undefined;
|
|
125
|
-
type?: undefined;
|
|
126
|
-
title?: undefined;
|
|
127
|
-
layout?: undefined;
|
|
128
|
-
widget?: undefined;
|
|
129
125
|
} | {
|
|
130
126
|
defineWidget: (selectedSTAC: import("stac-ts").StacCollection | null) => false | {
|
|
131
127
|
id: string;
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
declare const _default: {
|
|
2
|
+
gap: number;
|
|
3
|
+
loading: {
|
|
4
|
+
id: string;
|
|
5
|
+
type: "web-component";
|
|
6
|
+
widget: {
|
|
7
|
+
link: string;
|
|
8
|
+
tagName: "l-mirage";
|
|
9
|
+
properties: {
|
|
10
|
+
class: string;
|
|
11
|
+
size: string;
|
|
12
|
+
speed: string;
|
|
13
|
+
color: string;
|
|
14
|
+
};
|
|
15
|
+
};
|
|
16
|
+
};
|
|
17
|
+
background: {
|
|
18
|
+
id: string;
|
|
19
|
+
type: "internal";
|
|
20
|
+
widget: {
|
|
21
|
+
name: "EodashMap";
|
|
22
|
+
properties: {
|
|
23
|
+
enableCompare: true;
|
|
24
|
+
btns: {
|
|
25
|
+
enableZoom: true;
|
|
26
|
+
enableExportMap: true;
|
|
27
|
+
enableChangeProjection: true;
|
|
28
|
+
enableCompareIndicators: {
|
|
29
|
+
fallbackTemplate: string;
|
|
30
|
+
itemFilterConfig: {
|
|
31
|
+
imageProperty: string;
|
|
32
|
+
};
|
|
33
|
+
};
|
|
34
|
+
enableSearch: true;
|
|
35
|
+
};
|
|
36
|
+
};
|
|
37
|
+
};
|
|
38
|
+
};
|
|
39
|
+
widgets: ({
|
|
40
|
+
id: string;
|
|
41
|
+
type: "internal";
|
|
42
|
+
title: string;
|
|
43
|
+
layout: {
|
|
44
|
+
x: string;
|
|
45
|
+
y: number;
|
|
46
|
+
w: string;
|
|
47
|
+
h: number;
|
|
48
|
+
};
|
|
49
|
+
widget: {
|
|
50
|
+
name: "EodashLayerControl";
|
|
51
|
+
};
|
|
52
|
+
} | {
|
|
53
|
+
id: string;
|
|
54
|
+
title: string;
|
|
55
|
+
type: "internal";
|
|
56
|
+
layout: {
|
|
57
|
+
x: number;
|
|
58
|
+
y: number;
|
|
59
|
+
w: string;
|
|
60
|
+
h: number;
|
|
61
|
+
};
|
|
62
|
+
widget: {
|
|
63
|
+
name: "EodashItemCatalog";
|
|
64
|
+
};
|
|
65
|
+
})[];
|
|
66
|
+
};
|
|
67
|
+
export default _default;
|
|
@@ -21,6 +21,15 @@ declare const _default: {
|
|
|
21
21
|
name: "EodashMap";
|
|
22
22
|
properties: {
|
|
23
23
|
enableCompare: true;
|
|
24
|
+
enableCursorCoordinates: false;
|
|
25
|
+
enableScaleLine: false;
|
|
26
|
+
btns: {
|
|
27
|
+
enableExportMap: false;
|
|
28
|
+
enableChangeProjection: false;
|
|
29
|
+
enableCompareIndicators: false;
|
|
30
|
+
enableBackToPOIs: false;
|
|
31
|
+
enableSearch: true;
|
|
32
|
+
};
|
|
24
33
|
};
|
|
25
34
|
};
|
|
26
35
|
};
|