@eodash/eodash 5.7.0 → 5.7.1
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/EodashOverlay.vue +27 -4
- package/core/client/composables/DefineEodash.js +0 -1
- package/core/client/composables/DefineWidgets.js +3 -1
- package/core/client/eodashSTAC/EodashCollection.js +74 -20
- package/core/client/eodashSTAC/cql.js +64 -0
- package/core/client/eodashSTAC/createLayers.js +169 -116
- package/core/client/eodashSTAC/helpers.js +391 -98
- package/core/client/eodashSTAC/mosaic.js +416 -0
- package/core/client/plugins/axios.js +31 -1
- package/core/client/store/actions.js +1 -1
- package/core/client/store/stac.js +25 -4
- package/core/client/store/states.js +20 -2
- package/core/client/types.ts +147 -28
- package/core/client/utils/bands-editor/exampleSchema.json +50 -50
- package/core/client/utils/states.js +10 -0
- package/dist/client/{DashboardLayout-kRsmsNW5.js → DashboardLayout-ePbdvUTE.js} +2 -2
- package/dist/client/{DynamicWebComponent-CnKhYo0K.js → DynamicWebComponent-g5SdRbjY.js} +1 -1
- package/dist/client/{EodashChart-CLDqE93C.js → EodashChart-ChrkA5oS.js} +7 -6
- package/dist/client/{EodashDatePicker-CMPDT-ce.js → EodashDatePicker-CY1TrsDo.js} +3 -3
- package/dist/client/{EodashItemFilter-BpdA8QQa.js → EodashItemFilter-DzshHDlS.js} +2 -1
- package/dist/client/{EodashLayerControl-BHpDA4_0.js → EodashLayerControl-DMCeMkSd.js} +50 -20
- package/dist/client/{EodashLayoutSwitcher-B1fRUt7G.js → EodashLayoutSwitcher-iJ8mX1rF.js} +3 -3
- package/dist/client/{EodashMapBtns-Cpned0tc.js → EodashMapBtns-C7Cr7q5Y.js} +200 -86
- package/dist/client/EodashStacInfo-K7-iuXa7.js +169 -0
- package/dist/client/{EodashTools-1zHz26gv.js → EodashTools-BEK7e7JM.js} +4 -4
- package/dist/client/{ExportState-DbOm8hBI.js → ExportState-CqIzfMYQ.js} +6 -168
- package/dist/client/{Footer-BKg-VVkj.js → Footer-1P0cmBOZ.js} +1 -1
- package/dist/client/{Header-DCrwCvmY.js → Header-CkkBaBNh.js} +2 -2
- package/dist/client/{MobileLayout-vWSHpluo.js → MobileLayout-BPf49kDU.js} +2 -2
- package/dist/client/{PopUp-9uimfK49.js → PopUp-DPZq5SWI.js} +4 -168
- package/dist/client/{ProcessList-CTTIZa06.js → ProcessList-DuI6WpS1.js} +5 -5
- package/dist/client/VDivider-Bj9LG_JV.js +168 -0
- package/dist/client/{VImg-CrmB76ZY.js → VImg-Ddv5OyMz.js} +2 -2
- package/dist/client/{VMain-OKZNpcEG.js → VMain-7yqk_qC3.js} +1 -1
- package/dist/client/{VTooltip-CJw2FyWk.js → VTooltip-2hAJyEoa.js} +2 -2
- package/dist/client/{WidgetsContainer-BaWOnE5R.js → WidgetsContainer-2DOrlwCB.js} +1 -1
- package/dist/client/{asWebComponent-BHWpMuE3.js → asWebComponent-BlFN2lkB.js} +456 -306
- package/dist/client/{async-DSKj6g1f.js → async-B2H8ZwUK.js} +2 -2
- package/dist/client/{create-layers-config-CBoYedqB.js → create-layers-config-u_vn5hPk.js} +17 -17
- package/dist/client/dialog-transition-BrMkMiNa.js +170 -0
- package/dist/client/eo-dash.js +1 -1
- package/dist/client/{forwardRefs-DH51zPUr.js → forwardRefs-DAlror6d.js} +8 -87
- package/dist/client/{handling-BrcDDlgS.js → handling-B6I1V5eG.js} +3 -3
- package/dist/client/{helpers-DjZVl_WF.js → helpers-CBqIUSXJ.js} +794 -182
- package/dist/client/index-BWq1ZKaV.js +3168 -0
- package/dist/client/{index-CUjl-ZsI.js → index-CJ9UI3ln.js} +2 -2
- package/dist/client/{index-CSG_JoOA.js → index-DXLz4sFR.js} +62 -56
- package/dist/client/{index-1JKE68n3.js → index-DhKU6KqM.js} +211 -67
- package/dist/client/{index-Cu3-13Xg.js → index-DjQlbWbJ.js} +7 -6
- package/dist/client/mosaic-BFYLEwyx.js +455 -0
- package/dist/client/templates.js +250 -119
- package/dist/client/{transition-OHcz5Qq1.js → transition-D_W6Wn9v.js} +1 -1
- package/dist/node/cli.js +5 -5
- package/dist/node/types.d.ts +4 -0
- package/dist/types/core/client/composables/DefineEodash.d.ts +1 -1
- package/dist/types/core/client/eodashSTAC/EodashCollection.d.ts +57 -25
- package/dist/types/core/client/eodashSTAC/cql.d.ts +15 -0
- package/dist/types/core/client/eodashSTAC/createLayers.d.ts +42 -23
- package/dist/types/core/client/eodashSTAC/helpers.d.ts +77 -18
- package/dist/types/core/client/eodashSTAC/mosaic.d.ts +56 -0
- package/dist/types/core/client/store/stac.d.ts +31 -7
- package/dist/types/core/client/store/states.d.ts +24 -2
- package/dist/types/core/client/types.d.ts +123 -24
- package/dist/types/core/client/utils/states.d.ts +12 -0
- package/dist/types/templates/baseConfig.d.ts +1 -100
- package/dist/types/templates/compare.d.ts +32 -3
- package/dist/types/templates/expert.d.ts +18 -0
- package/dist/types/templates/explore.d.ts +9 -1
- package/dist/types/templates/lite.d.ts +11 -0
- package/dist/types/widgets/EodashChart.vue.d.ts +5 -3
- package/dist/types/widgets/EodashItemCatalog/index.vue.d.ts +129 -2
- package/dist/types/widgets/EodashItemCatalog/methods/filters.d.ts +28 -6
- package/dist/types/widgets/EodashItemCatalog/methods/handlers.d.ts +17 -4
- package/dist/types/widgets/EodashItemCatalog/methods/map.d.ts +16 -4
- package/dist/types/widgets/EodashLayerControl.vue.d.ts +35 -16
- package/dist/types/widgets/EodashMap/EodashMapBtns.vue.d.ts +14 -10
- package/dist/types/widgets/EodashMap/index.vue.d.ts +86 -37
- package/dist/types/widgets/EodashMap/methods/create-layers-config.d.ts +1 -1
- package/dist/types/widgets/EodashMap/methods/index.d.ts +5 -1
- package/dist/types/widgets/EodashMap/methods/use-map-loading.d.ts +1 -0
- package/dist/types/widgets/EodashProcess/index.vue.d.ts +5 -3
- package/dist/types/widgets/EodashProcess/states.d.ts +1 -1
- package/dist/types/widgets/EodashStacInfo.vue.d.ts +20 -0
- package/dist/types/widgets/EodashTimeSlider/index.vue.d.ts +20 -0
- package/dist/types/widgets/EodashTimeSlider/methods/index.d.ts +3 -8
- package/dist/types/widgets/EodashTimeSlider/types.d.ts +6 -16
- package/dist/types/widgets/EodashTools.vue.d.ts +5 -5
- package/package.json +33 -33
- package/templates/baseConfig.js +36 -6
- package/templates/compare.js +62 -7
- package/templates/expert.js +23 -0
- package/templates/explore.js +11 -5
- package/templates/lite.js +14 -0
- package/widgets/EodashChart.vue +1 -0
- package/widgets/EodashItemCatalog/index.vue +363 -35
- package/widgets/EodashItemCatalog/methods/filters.js +134 -70
- package/widgets/EodashItemCatalog/methods/handlers.js +113 -19
- package/widgets/EodashItemCatalog/methods/map.js +142 -28
- package/widgets/EodashLayerControl.vue +42 -11
- package/widgets/EodashMap/EodashMapBtns.vue +109 -48
- package/widgets/EodashMap/index.vue +89 -105
- package/widgets/EodashMap/methods/btns.js +37 -5
- package/widgets/EodashMap/methods/create-layers-config.js +16 -16
- package/widgets/EodashMap/methods/index.js +71 -8
- package/widgets/EodashMap/methods/use-map-loading.js +52 -0
- package/widgets/EodashProcess/index.vue +1 -0
- package/widgets/EodashProcess/states.js +1 -1
- package/widgets/EodashStacInfo.vue +64 -2
- package/widgets/EodashTimeSlider/index.vue +58 -2
- package/widgets/EodashTimeSlider/methods/index.js +5 -48
- package/widgets/EodashTimeSlider/types.ts +7 -17
- package/dist/client/EodashStacInfo-BQspAHKH.js +0 -107
- package/dist/client/index-5Jhsa8Xe.js +0 -570
package/dist/node/cli.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import{createLogger as F,defineConfig as C,searchForWorkspaceRoot as
|
|
2
|
+
import{createLogger as F,defineConfig as C,searchForWorkspaceRoot as U,mergeConfig as W,preview as O,createServer as A,build as L}from"vite";import{readFileSync as P,existsSync as v}from"fs";import i from"path";import{Command as T}from"commander";import{fileURLToPath as $}from"url";import{readFile as I,writeFile as H,rm as R,cp as M}from"fs/promises";import V from"@vitejs/plugin-vue";import J,{transformAssetUrls as B}from"vite-plugin-vuetify";import{config as G}from"dotenv";const y=new T("eodash"),c=x(),l=x(process.cwd());JSON.parse(P(i.join(l,"package.json"),"utf-8"));const S=JSON.parse(P(i.join(c,"package.json"),"utf-8"))??{},Y=["commander","vite","@vitejs/plugin-vue","vite-plugin-vuetify","axios","dotenv"],z=Object.keys(S?.dependencies).filter(e=>!Y.includes(e));y.version(S.version,"-v, --version","output the current version"),y.allowExcessArguments().option("--publicDir <path>","path to statically served assets folder").option("--no-publicDir","stop serving static assets").option("--outDir <path>","minified output folder").option("-e, --entryPoint <path>","file exporting `createEodash`").option("-w, --widgets <path>","folder that contains vue components as internal widgets").option("--cacheDir <path>","cache folder").option("-r, --runtime <path>","file exporting eodash client runtime config").option("-b, --base <path>","base public path").option("-p, --port <port>","serving port").option("-o, --open","open default browser when the server starts").option("-c, --config <path>","path to eodash server and build configuration file").option("--host [IP address]","specify which IP addresses the server should listen on").option("-l, --lib","builds eodash as a web component library").option("--no-lib","builds eodash as an SPA").option("--no-host","do not expose server to the network").parse(process.argv);const s=await Q(y.opts(),process.argv?.[2]),X=s.publicDir?i.resolve(l,s.publicDir):i.join(l,"./public"),b=i.join(l,"/src"),f=s.runtime?i.resolve(l,s.runtime):i.join(b,"./runtime.js"),m=s.entryPoint==="false"?!1:s.entryPoint?i.resolve(l,s.entryPoint):i.join(b,"/main.js"),D=s.widgets?i.resolve(l,s.widgets):i.join(b,"widgets"),E=i.join(l,"/.eodash"),w=s.outDir?i.resolve(l,s.outDir):i.join(E,"/dist"),K=s.cacheDir?i.resolve(l,s.cacheDir):i.join(E,"cache"),j=F(void 0,{prefix:"[eodash]"});async function Q(e,n){let r=e.config?i.resolve(l,e.config):i.join(l,"eodash.config.js"),t={};return v(r)?t=await import(r).then(o=>o.default instanceof Function?o.default():o.default).catch(o=>{console.error(o)}):r=null,{base:e.base??t?.base,port:Number(e.port??t?.[n]?.port),host:e.host??t?.[n]?.host,open:e.open??t?.[n]?.open,cacheDir:e.cacheDir??t?.cacheDir,entryPoint:e.entryPoint??t?.entryPoint,outDir:e.outDir??t?.outDir,publicDir:e.publicDir??t?.publicDir,runtime:e.runtime??t?.runtime,widgets:e.widgets??t?.widgets,lib:e.lib??t?.lib,vite:t.vite}}function x(e=import.meta.dirname??i.dirname($(import.meta.url))){if(e?.split("/").length)return v(i.resolve(e,"package.json"))?e:x(i.resolve(e,".."));throw new Error("no package root found from "+e)}const k=`
|
|
3
3
|
<!DOCTYPE html>
|
|
4
4
|
<html lang="en" style="overflow: hidden">
|
|
5
5
|
|
|
@@ -21,10 +21,10 @@ import{createLogger as F,defineConfig as C,searchForWorkspaceRoot as W,mergeConf
|
|
|
21
21
|
|
|
22
22
|
<body>
|
|
23
23
|
${s.lib?`<eo-dash style="height:100%;"/>
|
|
24
|
-
<script type="module" src="${
|
|
24
|
+
<script type="module" src="${i.resolve(`/@fs/${c}`,"core/client/asWebComponent.js")}"><\/script>
|
|
25
25
|
`:` <div id="app" style="height:100%;" />
|
|
26
|
-
<script type="module" src="${
|
|
26
|
+
<script type="module" src="${i.resolve(`/@fs/${c}`,"core/client/render.js")}"><\/script>
|
|
27
27
|
`}
|
|
28
28
|
</body>
|
|
29
|
-
</html>`;function Z(e={customElementFileName:"asWebComponent.js",stylePlaceHolder:"__VUE_CE_STYLES__"}){const{customElementFileName:n,stylePlaceHolder:r}=e;return{name:"vite-plugin-vue-custom-element-style-injector",enforce:"post",async transform(o
|
|
30
|
-
styles: ${r},`)),{code:p,map:null}}},generateBundle(o
|
|
29
|
+
</html>`;function Z(e={customElementFileName:"asWebComponent.js",stylePlaceHolder:"__VUE_CE_STYLES__"}){const{customElementFileName:n,stylePlaceHolder:r}=e;return{name:"vite-plugin-vue-custom-element-style-injector",enforce:"post",async transform(t,o){if(this.environment.mode!=="build")return;if(i.basename(o)===n){let p=t;return/defineCustomElement\s*\([^{]*\{[\s\S]*?styles\s*:/.test(t)||(p=t.replace(/(defineCustomElement\s*\(\s*[^,{]*,?\s*\{)/,`$1
|
|
30
|
+
styles: ${r},`)),{code:p,map:null}}},generateBundle(t,o){let a="",p=[];const u=[];for(const d in o){const h=o[d];if(h.type==="chunk"&&h.code.includes(r)){a=d;break}}for(const d in o){const h=o[d];if(q(d)&&h.type==="asset"){let g=h.source.toString();g=g.replaceAll(":root",":host"),p.push(g),u.push(d)}}o[a].code=o[a].code.replace(r,JSON.stringify(p)),u.forEach(d=>{delete o[d]})}}}function q(e){return/\.(css|less|sass|scss|styl|stylus|pcss|postcss|sss)(?:$|\?)/.test(e)}const _=C(async({mode:e,command:n})=>{const r=["VITE_","EODASH_"];return{base:s.base??"",cacheDir:K,plugins:[V({features:{customElement:n==="build"&&s.lib},template:{transformAssetUrls:B,compilerOptions:{isCustomElement:t=>!t.includes("v-")&&t.includes("-")}}}),J({autoImport:!0}),e==="development"&&{name:"inject-html",configureServer:ee},s.lib&&Z()],customLogger:j,define:{__userConfigExist__:!!m,...n==="build"&&s.lib?{"process.env":"import.meta.env"}:{"process.env":{},...te(r)}},envPrefix:r,resolve:{alias:{"@":i.join(c,"core/client"),"^":i.join(c,"widgets"),"user:widgets":D,...m&&{"user:config":m}},extensions:[".js",".json",".jsx",".mjs",".ts",".tsx",".vue"]},server:{allowedHosts:!0,warmup:{clientFiles:[i.join(c,"core/client/**"),m]},port:s.port??3e3,open:s.open,fs:{allow:[U(process.cwd())]},host:s.host},root:c,...e==="development"&&{optimizeDeps:{include:["webfontloader","vuetify","vue","pinia","stac-js","urijs","loglevel","vega","vega-lite","vega-embed","@eox/map","@eox/map/src/plugins/advancedLayersAndSources","@eox/layercontrol","@eox/drawtools","@eox/chart","@eox/jsonform","@eox/layout","@eox/itemfilter","@eox/timecontrol","@eox/stacinfo","color-legend-element","@eox/map","@eox/map/src/plugins/advancedLayersAndSources","@eox/map/src/plugins/globe","@eox/layercontrol","@eox/timecontrol","@eox/jsonform","@eox/layout","@eox/itemfilter","@eox/stacinfo","@eox/elements-utils","@eox/geosearch","@eox/feedback"],noDiscovery:!0}},publicDir:s.publicDir===!1?!1:X,build:{outDir:w,emptyOutDir:!0,target:"esnext",cssMinify:!0,...!s.lib&&n==="build"&&{manifest:!0,rollupOptions:{input:{main:i.join(c,"index.html"),templates:i.join(c,"templates/index.js")}}},...s.lib&&n==="build"&&{minify:!1,lib:{entry:i.join(c,"core/client/asWebComponent.js"),fileName:(t,o)=>o==="asWebComponent"?"eo-dash.js":"templates.js",cssFileName:"eo-dash",formats:["es"],name:"@eodash/eodash"},rollupOptions:{input:{asWebComponent:i.join(c,"core/client/asWebComponent.js"),templates:i.join(c,"templates/index.js")},external:t=>{const o=t.includes("vuetify")||t.endsWith(".css")||t.endsWith("styles"),a=z.some(u=>t.startsWith(u));return!o&&a||t==="user:config"&&!m},treeshake:{moduleSideEffects:!0,preset:"smallest"},onwarn(t,o){t.code!=="UNUSED_EXTERNAL_IMPORT"&&o(t)}}}}}}),N=C(async e=>s.vite?W(await _(e),s.vite):_(e));async function ee(e){const n=[f,i.join(D,"**/*.vue")];m&&n.push(m),e.watcher.add(n);let r="";const t=j.info;return j.info=(o,a)=>{if(o.includes("core")){const p=o.split("/")[0].split(" ");p.pop();const u=p.join(" ")+" "+r.replace(l,"");return t(u,a)}return t(o,a)},e.watcher.on("change",async o=>{r=o,o===f&&e.ws.send({type:"full-reload",path:o})}),()=>{e.middlewares.use(async(o,a,p)=>{if(o.originalUrl==="/@fs/config.js"||o.originalUrl==="/config.js"){a.statusCode=200,a.setHeader("Content-Type","text/javascript"),v(f)&&await I(f).then(u=>{a.write(u)}),a.end();return}if(o.url?.endsWith(".html")){a.statusCode=200,a.setHeader("Content-Type","text/html");const u=await e.transformIndexHtml(o.url,k,o.originalUrl);a.end(u);return}p()})}}function te(e){G({quiet:!0});const n={};for(const r in process.env)e.some(t=>r.startsWith(t))&&(n["process.env."+r]=`"${process.env[r]}"`);return n}const oe=async()=>{const e=await A(await N({mode:"development",command:"serve"}));await e.listen(),e.printUrls(),e.bindCLIShortcuts({print:!0})},ie=async()=>{const e=async()=>{const n=await N({mode:"production",command:"build"});await L(n),v(f)&&await M(f,i.join(w,"config.js"),{recursive:!0}).catch(r=>{console.error(r)})};if(s.lib)await e();else{const n=i.join(c,"/index.html");await H(n,k).then(async()=>{await e(),await R(n).catch(()=>{console.error("failed to remove index.html")})})}};async function se(){(await O({root:l,base:s.base??"",preview:{port:isNaN(s.port)?8080:s.port,open:s.open,host:s.host},build:{outDir:w}})).printUrls()}const ne=process.argv?.[2];(async()=>{switch(ne){case"dev":await oe();break;case"build":await ie();break;case"preview":await se();break;default:console.error("command not found");break}})();
|
package/dist/node/types.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export function useEodashRuntime(runtimeConfig?: string | undefined | (() => Promise<import("../types").Eodash>) | Function): Promise<
|
|
1
|
+
export function useEodashRuntime(runtimeConfig?: string | undefined | (() => Promise<import("../types").Eodash>) | Function): Promise<any>;
|
|
2
2
|
export function createEodash<T extends import("../types").Eodash>(config: T | ((store: typeof import("../store").default) => Promise<T>)): Promise<T>;
|
|
@@ -4,6 +4,46 @@ 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
|
+
type: string;
|
|
8
|
+
source: {
|
|
9
|
+
type: string;
|
|
10
|
+
normalize: boolean;
|
|
11
|
+
interpolate: boolean;
|
|
12
|
+
sources: {
|
|
13
|
+
attributions?: {} | undefined;
|
|
14
|
+
url: string;
|
|
15
|
+
}[];
|
|
16
|
+
};
|
|
17
|
+
properties: {
|
|
18
|
+
id: string;
|
|
19
|
+
title: string;
|
|
20
|
+
layerConfig: Record<string, unknown> | {
|
|
21
|
+
schema: any;
|
|
22
|
+
legend: any;
|
|
23
|
+
type: string;
|
|
24
|
+
} | undefined;
|
|
25
|
+
layerDatetime: Record<string, unknown> | undefined;
|
|
26
|
+
};
|
|
27
|
+
style: import("../types").EodashStyleJson | undefined;
|
|
28
|
+
} | {
|
|
29
|
+
style?: import("../types").EodashStyleJson | undefined;
|
|
30
|
+
type: string;
|
|
31
|
+
properties: {
|
|
32
|
+
id: string;
|
|
33
|
+
title: string;
|
|
34
|
+
layerConfig: Record<string, unknown> | {
|
|
35
|
+
schema: any;
|
|
36
|
+
legend: any;
|
|
37
|
+
type: string;
|
|
38
|
+
} | undefined;
|
|
39
|
+
layerDatetime: Record<string, unknown> | undefined;
|
|
40
|
+
};
|
|
41
|
+
source: {
|
|
42
|
+
type: string;
|
|
43
|
+
url: string;
|
|
44
|
+
bands: any;
|
|
45
|
+
};
|
|
46
|
+
} | {
|
|
7
47
|
interactions: never[];
|
|
8
48
|
style?: import("../types").EodashStyleJson | undefined;
|
|
9
49
|
type: string;
|
|
@@ -52,28 +92,6 @@ export class EodashCollection {
|
|
|
52
92
|
title: string;
|
|
53
93
|
layerDatetime: Record<string, unknown> | undefined;
|
|
54
94
|
};
|
|
55
|
-
} | {
|
|
56
|
-
type: string;
|
|
57
|
-
source: {
|
|
58
|
-
type: string;
|
|
59
|
-
normalize: boolean;
|
|
60
|
-
interpolate: boolean;
|
|
61
|
-
sources: {
|
|
62
|
-
attributions?: {} | undefined;
|
|
63
|
-
url: string;
|
|
64
|
-
}[];
|
|
65
|
-
};
|
|
66
|
-
properties: {
|
|
67
|
-
id: string;
|
|
68
|
-
title: string;
|
|
69
|
-
layerConfig: Record<string, unknown> | {
|
|
70
|
-
schema: any;
|
|
71
|
-
legend: any;
|
|
72
|
-
type: string;
|
|
73
|
-
} | undefined;
|
|
74
|
-
layerDatetime: Record<string, unknown> | undefined;
|
|
75
|
-
};
|
|
76
|
-
style: import("../types").EodashStyleJson | undefined;
|
|
77
95
|
})[]>;
|
|
78
96
|
/**
|
|
79
97
|
* Returns Observation points layer from a list of EodashCollections
|
|
@@ -145,12 +163,26 @@ export class EodashCollection {
|
|
|
145
163
|
fetchCollection(): Promise<import("stac-ts").StacCollection>;
|
|
146
164
|
/**
|
|
147
165
|
* Returns all item links sorted by datetime ascendingly
|
|
148
|
-
* @param {boolean} [fields=false] if true, fetch items from API with only properties
|
|
166
|
+
* @param {boolean} [fields=false] if true, fetch items from API with only properties.datetime to optimize performance
|
|
149
167
|
* @param {boolean} [first] - if true, returns the first page of items only (for API collections)
|
|
168
|
+
* @param {string | Date} [centerDatetime] - Date to center the search around if items exceed maxNumber
|
|
150
169
|
* @returns {Promise<import("stac-ts").StacLink[] | import("stac-ts").StacItem[] | undefined>}
|
|
151
170
|
*/
|
|
152
|
-
getItems(fields?: boolean, first?: boolean): Promise<import("stac-ts").StacLink[] | import("stac-ts").StacItem[] | undefined>;
|
|
153
|
-
|
|
171
|
+
getItems(fields?: boolean, first?: boolean, centerDatetime?: string | Date): Promise<import("stac-ts").StacLink[] | import("stac-ts").StacItem[] | undefined>;
|
|
172
|
+
/**
|
|
173
|
+
* Returns all available dates for the collection, sorted as the source
|
|
174
|
+
* provides. Tries the daily `pre-aggregation` link first (cheap, single
|
|
175
|
+
* request), falls back to fetching items via the API. Use anywhere the
|
|
176
|
+
* collection's date list is needed (date picker, mosaic time control,
|
|
177
|
+
* single-item time slider).
|
|
178
|
+
*
|
|
179
|
+
* NOTE: only the `daily` aggregation interval is consumed today. Other
|
|
180
|
+
* intervals (`monthly`, `hourly`) fall through to the API path.
|
|
181
|
+
*
|
|
182
|
+
* @param {string | Date} [centerDatetime]
|
|
183
|
+
* @returns {Promise<Date[]>}
|
|
184
|
+
*/
|
|
185
|
+
getDates(centerDatetime?: string | Date): Promise<Date[]>;
|
|
154
186
|
getExtent(): Promise<import("stac-ts").Extents | undefined>;
|
|
155
187
|
/**
|
|
156
188
|
* Get closest Item Link from a certain date,
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Builds a CQL2-text filter string from an eox-itemfilter filters record.
|
|
3
|
+
*
|
|
4
|
+
* Handles range, multiselect, and select filter types.
|
|
5
|
+
* - Strips "properties." prefix from keys (catalog eox-itemfilter convention).
|
|
6
|
+
* - Double-quotes property names that contain non-word characters (e.g. "eo:cloud_cover").
|
|
7
|
+
* - Skips catalog-only keys (e.g. "collection").
|
|
8
|
+
*
|
|
9
|
+
* Compatible with both TiTiler's `filter` param and the STAC API `filter` param
|
|
10
|
+
* (both accept CQL2-text).
|
|
11
|
+
*
|
|
12
|
+
* @param {import("../types").ItemFilterFilters | null | undefined} filters
|
|
13
|
+
* @returns {string}
|
|
14
|
+
*/
|
|
15
|
+
export function buildCqlFilter(filters: import("../types").ItemFilterFilters | null | undefined): string;
|
|
@@ -5,8 +5,49 @@
|
|
|
5
5
|
* @param {import("stac-ts").StacItem | import("stac-ts").StacCollection } stacObject
|
|
6
6
|
* @param {Record<string, unknown>} [layerDatetime]
|
|
7
7
|
* @param {object | null} [extraProperties]
|
|
8
|
+
* @param {import("stac-ts").StacCollection | null} [collection] - Used to fall back to a collection-level style link.
|
|
8
9
|
**/
|
|
9
|
-
export function createLayersFromAssets(collectionId: string, title: string, assets: Record<string, import("stac-ts").StacAsset>, stacObject: import("stac-ts").StacItem | import("stac-ts").StacCollection, layerDatetime?: Record<string, unknown>, extraProperties?: object | null): Promise<({
|
|
10
|
+
export function createLayersFromAssets(collectionId: string, title: string, assets: Record<string, import("stac-ts").StacAsset>, stacObject: import("stac-ts").StacItem | import("stac-ts").StacCollection, layerDatetime?: Record<string, unknown>, extraProperties?: object | null, collection?: import("stac-ts").StacCollection | null): Promise<({
|
|
11
|
+
type: string;
|
|
12
|
+
source: {
|
|
13
|
+
type: string;
|
|
14
|
+
normalize: boolean;
|
|
15
|
+
interpolate: boolean;
|
|
16
|
+
sources: {
|
|
17
|
+
attributions?: {} | undefined;
|
|
18
|
+
url: string;
|
|
19
|
+
}[];
|
|
20
|
+
};
|
|
21
|
+
properties: {
|
|
22
|
+
id: string;
|
|
23
|
+
title: string;
|
|
24
|
+
layerConfig: Record<string, unknown> | {
|
|
25
|
+
schema: any;
|
|
26
|
+
legend: any;
|
|
27
|
+
type: string;
|
|
28
|
+
} | undefined;
|
|
29
|
+
layerDatetime: Record<string, unknown> | undefined;
|
|
30
|
+
};
|
|
31
|
+
style: import("../types").EodashStyleJson | undefined;
|
|
32
|
+
} | {
|
|
33
|
+
style?: import("../types").EodashStyleJson | undefined;
|
|
34
|
+
type: string;
|
|
35
|
+
properties: {
|
|
36
|
+
id: string;
|
|
37
|
+
title: string;
|
|
38
|
+
layerConfig: Record<string, unknown> | {
|
|
39
|
+
schema: any;
|
|
40
|
+
legend: any;
|
|
41
|
+
type: string;
|
|
42
|
+
} | undefined;
|
|
43
|
+
layerDatetime: Record<string, unknown> | undefined;
|
|
44
|
+
};
|
|
45
|
+
source: {
|
|
46
|
+
type: string;
|
|
47
|
+
url: string;
|
|
48
|
+
bands: any;
|
|
49
|
+
};
|
|
50
|
+
} | {
|
|
10
51
|
interactions: never[];
|
|
11
52
|
style?: import("../types").EodashStyleJson | undefined;
|
|
12
53
|
type: string;
|
|
@@ -55,28 +96,6 @@ export function createLayersFromAssets(collectionId: string, title: string, asse
|
|
|
55
96
|
title: string;
|
|
56
97
|
layerDatetime: Record<string, unknown> | undefined;
|
|
57
98
|
};
|
|
58
|
-
} | {
|
|
59
|
-
type: string;
|
|
60
|
-
source: {
|
|
61
|
-
type: string;
|
|
62
|
-
normalize: boolean;
|
|
63
|
-
interpolate: boolean;
|
|
64
|
-
sources: {
|
|
65
|
-
attributions?: {} | undefined;
|
|
66
|
-
url: string;
|
|
67
|
-
}[];
|
|
68
|
-
};
|
|
69
|
-
properties: {
|
|
70
|
-
id: string;
|
|
71
|
-
title: string;
|
|
72
|
-
layerConfig: Record<string, unknown> | {
|
|
73
|
-
schema: any;
|
|
74
|
-
legend: any;
|
|
75
|
-
type: string;
|
|
76
|
-
} | undefined;
|
|
77
|
-
layerDatetime: Record<string, unknown> | undefined;
|
|
78
|
-
};
|
|
79
|
-
style: import("../types").EodashStyleJson | undefined;
|
|
80
99
|
})[]>;
|
|
81
100
|
export function createLayersFromLinks(collectionId: string, title: string, item: import("stac-ts").StacItem, layerDatetime?: Record<string, any>, extraProperties?: object | null, collection?: import("stac-ts").StacCollection): Promise<Record<string, any>[]>;
|
|
82
101
|
export function createLayerFromRender(rasterURL: string, collection: import("stac-ts").StacCollection | undefined | null, item: import("stac-ts").StacItem | undefined | null, extraProperties?: Record<string, any>): Promise<import("@eox/map/src/layers").EOxLayerType<"Tile", "XYZ">[]>;
|
|
@@ -42,6 +42,16 @@ export function extractLayerConfig(collectionId: string, style?: import("../type
|
|
|
42
42
|
* @param {string} basepath
|
|
43
43
|
*/
|
|
44
44
|
export function extractCollectionUrls(stacObject: import("stac-ts").StacCatalog | import("stac-ts").StacCollection | import("stac-ts").StacItem | null, basepath: string): string[];
|
|
45
|
+
/**
|
|
46
|
+
* Fetches the daily pre-aggregation data for a STAC collection if available.
|
|
47
|
+
* Returns the raw AggregationCollection,
|
|
48
|
+
* or null if no daily pre-aggregation link exists, or the fetch fails.
|
|
49
|
+
*
|
|
50
|
+
* @param {import("stac-ts").StacCollection | undefined} stacCollection
|
|
51
|
+
* @param {string} fallbackBaseUrl - base for relative href resolution when no `self` link is present
|
|
52
|
+
* @returns {Promise<any | null>}
|
|
53
|
+
*/
|
|
54
|
+
export function fetchPreAggregations(stacCollection: import("stac-ts").StacCollection | undefined, fallbackBaseUrl: string): Promise<any | null>;
|
|
45
55
|
/**
|
|
46
56
|
* Assigns projection code to the layer ID
|
|
47
57
|
* @param {import("stac-ts").StacItem} item
|
|
@@ -72,7 +82,7 @@ export function revokeCollectionBlobUrls(collection: import("../eodashSTAC/Eodas
|
|
|
72
82
|
*
|
|
73
83
|
* @param {import("stac-ts").StacLink[] | import("stac-ts").StacItem[] |undefined |null} [linksOrItems]
|
|
74
84
|
*/
|
|
75
|
-
export function getDatetimeProperty(linksOrItems?: import("stac-ts").StacLink[] | import("stac-ts").StacItem[] | undefined | null):
|
|
85
|
+
export function getDatetimeProperty(linksOrItems?: import("stac-ts").StacLink[] | import("stac-ts").StacItem[] | undefined | null): "datetime" | "start_datetime" | "end_datetime" | undefined;
|
|
76
86
|
/**
|
|
77
87
|
*
|
|
78
88
|
* @param {*} stacObject
|
|
@@ -86,8 +96,10 @@ export function isSTACItem(stacObject: any): stacObject is import("stac-ts").Sta
|
|
|
86
96
|
* @param {number} [limit=100] - The maximum number of items to fetch per request.
|
|
87
97
|
* @param {boolean} [returnFirst] - If true, only the first page of results will be returned.
|
|
88
98
|
* @param {number} [maxNumber=1000] - if the matched number of items exceed this, only the first page will be returned.
|
|
99
|
+
* @param {string | Date} [centerDatetime] - Date to center the search around if items exceed maxNumber
|
|
100
|
+
* @returns {Promise<import("stac-ts").StacItem[]>}
|
|
89
101
|
*/
|
|
90
|
-
export function fetchApiItems(itemsUrl: string, query?: string, limit?: number, returnFirst?: boolean, maxNumber?: number): Promise<import("stac-ts").StacItem[]>;
|
|
102
|
+
export function fetchApiItems(itemsUrl: string, query?: string, limit?: number, returnFirst?: boolean, maxNumber?: number, centerDatetime?: string | Date): Promise<import("stac-ts").StacItem[]>;
|
|
91
103
|
/**
|
|
92
104
|
* @param {import ("stac-ts").StacCollection | undefined | null} collection
|
|
93
105
|
* @returns {object}
|
|
@@ -98,9 +110,66 @@ export function extractLayerLegend(collection: import("stac-ts").StacCollection
|
|
|
98
110
|
* @returns {object}
|
|
99
111
|
*/
|
|
100
112
|
export function extractEoxLegendLink(link: import("stac-ts").StacLink): object;
|
|
113
|
+
/**
|
|
114
|
+
* Locate the first sub-schema whose `format` matches by walking `properties`
|
|
115
|
+
* and the `oneOf` / `allOf` / `anyOf` combinators. Returns the schema path
|
|
116
|
+
* (array of keys/indices) from the root schema to the matched node, or
|
|
117
|
+
* undefined if not found. Empty array means the input schema itself matched.
|
|
118
|
+
*
|
|
119
|
+
* @param {Record<string, any> | null | undefined} schema
|
|
120
|
+
* @param {string} [format="bands"]
|
|
121
|
+
* @returns {(string | number)[] | undefined}
|
|
122
|
+
*/
|
|
123
|
+
export function getBandsProperty(schema: Record<string, any> | null | undefined, format?: string): (string | number)[] | undefined;
|
|
124
|
+
/**
|
|
125
|
+
* Checks whether a GeoZarr layer's bands changed in the jsonform output and,
|
|
126
|
+
* if so, rebuilds the source with the new 3 selected bands.
|
|
127
|
+
* Gamma and rescale are handled automatically by `applyUpdatedStyles` via
|
|
128
|
+
* `updateStyleVariables` — this function only manages source reconstruction.
|
|
129
|
+
* Uses the existing source constructor to avoid import-version mismatches.
|
|
130
|
+
*
|
|
131
|
+
* @param {import("ol/layer/Layer").default} olLayer - Layer from layerConfig:change event
|
|
132
|
+
* @param {Record<string, any>} jsonformValue - Current jsonform output
|
|
133
|
+
* @returns {boolean} true if the source was rebuilt
|
|
134
|
+
*/
|
|
135
|
+
export function updateGeoZarrBands(olLayer: import("ol/layer/Layer").default, jsonformValue: Record<string, any>): boolean;
|
|
136
|
+
/**
|
|
137
|
+
* Applies titiler upscaling to an XYZ tile URL based on the matched endpoint config.
|
|
138
|
+
* - titiler v1: appends `@2x` to the `{y}` tile coordinate
|
|
139
|
+
* - titiler v2: adds `tilesize=512` query parameter (v2 removed the `@2x` suffix)
|
|
140
|
+
* Plain strings in the config default to v1 behavior for backward compatibility.
|
|
141
|
+
*
|
|
142
|
+
* @param {string} url - The XYZ tile URL template
|
|
143
|
+
* @param {Array<string | { url: string; titilerVersion?: 1 | 2 }>} upscalingEndpoints
|
|
144
|
+
* @returns {{ url: string; tileSize: [number, number] } | null} null if no endpoint matches
|
|
145
|
+
*/
|
|
146
|
+
export function applyTitilerUpscaling(url: string, upscalingEndpoints: Array<string | {
|
|
147
|
+
url: string;
|
|
148
|
+
titilerVersion?: 1 | 2;
|
|
149
|
+
}>): {
|
|
150
|
+
url: string;
|
|
151
|
+
tileSize: [number, number];
|
|
152
|
+
} | null;
|
|
153
|
+
/**
|
|
154
|
+
* Picks the render presets for a collection, preferring the collection's own
|
|
155
|
+
* STAC `renders` extension and falling back to client-provided config
|
|
156
|
+
*
|
|
157
|
+
* @param {import("stac-ts").StacCollection | null | undefined} collection
|
|
158
|
+
* @param {Record<string, Record<string, import("../types").Render>> | undefined} [configRenders]
|
|
159
|
+
* @returns {Record<string, import("../types").Render> | undefined}
|
|
160
|
+
*/
|
|
161
|
+
export function resolveRenders(collection: import("stac-ts").StacCollection | null | undefined, configRenders?: Record<string, Record<string, import("../types").Render>> | undefined): Record<string, import("../types").Render> | undefined;
|
|
162
|
+
/**
|
|
163
|
+
* Serializes an object into a TiTiler query string. Arrays join with commas;
|
|
164
|
+
* nested arrays repeat the key (e.g. `rescale: [[0,1]]` -> `rescale=0,1`);
|
|
165
|
+
* objects are JSON-encoded. Shared by the render-extension and mosaic paths.
|
|
166
|
+
* @param {Record<string,any>} obj
|
|
167
|
+
* @returns {string}
|
|
168
|
+
*/
|
|
169
|
+
export function encodeURLObject(obj: Record<string, any>): string;
|
|
101
170
|
export function sanitizeBbox(bbox: number[]): number[];
|
|
102
171
|
export function extractRoles(properties: Record<string, any>, linkOrAsset: import("stac-ts").StacLink | import("stac-ts").StacAsset): Record<string, any>;
|
|
103
|
-
export function fetchStyle(stacObject: import("stac-ts").StacItem | import("stac-ts").StacCollection, linkKey?: string | undefined, assetKey?: string | undefined): Promise<{
|
|
172
|
+
export function fetchStyle(stacObject: import("stac-ts").StacItem | import("stac-ts").StacCollection | null | undefined, linkKey?: string | undefined, assetKey?: string | undefined): Promise<{
|
|
104
173
|
"fill-color"?: import("ol/style/flat.js").ColorExpression | undefined;
|
|
105
174
|
"fill-pattern-src"?: import("ol/style/flat.js").StringExpression | undefined;
|
|
106
175
|
"fill-pattern-size"?: import("ol/style/flat.js").SizeExpression | undefined;
|
|
@@ -488,28 +557,17 @@ export function fetchStyle(stacObject: import("stac-ts").StacItem | import("stac
|
|
|
488
557
|
decimals?: number;
|
|
489
558
|
}[];
|
|
490
559
|
} | undefined>;
|
|
560
|
+
export function resolveStyle(item: import("stac-ts").StacItem | import("stac-ts").StacCollection, collection: import("stac-ts").StacCollection | null | undefined, linkKey?: string, assetKey?: string): Promise<import("../types").EodashStyleJson | undefined>;
|
|
491
561
|
export function fetchAllStyles(stacObject: import("stac-ts").StacItem | import("stac-ts").StacCollection): Promise<Array<import("../types").EodashStyleJson>>;
|
|
492
562
|
export function getProjectionCode(projection?: string | number | {
|
|
493
563
|
name: string;
|
|
494
564
|
def: string;
|
|
495
565
|
}): string;
|
|
496
|
-
export function extractLayerTimeValues(
|
|
497
|
-
layerDatetime: undefined;
|
|
498
|
-
timeControlValues: undefined;
|
|
499
|
-
} | {
|
|
500
|
-
layerDatetime: {
|
|
501
|
-
controlValues: string[];
|
|
502
|
-
currentStep: string;
|
|
503
|
-
slider: boolean;
|
|
504
|
-
navigation: boolean;
|
|
505
|
-
play: boolean;
|
|
506
|
-
displayFormat: string;
|
|
507
|
-
animateOnClickInterval: boolean;
|
|
508
|
-
};
|
|
566
|
+
export function extractLayerTimeValues(dates: Date[] | undefined, currentStep?: string | null): {
|
|
567
|
+
layerDatetime: Record<string, any> | undefined;
|
|
509
568
|
timeControlValues: {
|
|
510
569
|
date: string;
|
|
511
|
-
|
|
512
|
-
}[];
|
|
570
|
+
}[] | undefined;
|
|
513
571
|
};
|
|
514
572
|
export function findLayersByLayerPrefix(layers: import("@eox/map").EoxLayer[], referenceLayer: import("@eox/map").EoxLayer | undefined): import("@eox/map").EoxLayer[];
|
|
515
573
|
export function findLayer(layers: import("@eox/map").EoxLayer[], layer: string): import("@eox/map").EoxLayer | undefined;
|
|
@@ -520,3 +578,4 @@ export function createLayerID(collectionId: string, itemId: string, link: import
|
|
|
520
578
|
export function createAssetID(collectionId: string, itemId: string, index: number): string;
|
|
521
579
|
export function removeUnneededProperties(layers: Record<string, any>[]): Record<string, any>[];
|
|
522
580
|
export function addTooltipInteraction(layer: Record<string, any>, style?: import("../types").EodashStyleJson): void;
|
|
581
|
+
export function fetchSplitItems(itemsUrl: string, query: string, centerDatetime: string | Date, maxNumber: number): Promise<import("stac-ts").StacItem[]>;
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Modifies the layers collection to display the mosaic layer.
|
|
3
|
+
* @param {string} mosaicEndpoint - The TileJSON URL for the mosaic.
|
|
4
|
+
* @param {Record<string, string> | null} [params] - Query params forwarded to the tilejson URL.
|
|
5
|
+
*/
|
|
6
|
+
export function renderMosaic(mosaicEndpoint: string, params?: Record<string, string> | null): Promise<void>;
|
|
7
|
+
/**
|
|
8
|
+
* Updates the mosaic layer based on the current filters.
|
|
9
|
+
* @param {string | undefined | null} mosaicEndpoint - The TileJSON URL for the mosaic.
|
|
10
|
+
* @param {{ timeRange?: [string, string]; filters?: import("../types").ItemFilterFilters }} [queries]
|
|
11
|
+
*/
|
|
12
|
+
export function updateMosaicLayer(mosaicEndpoint: string | undefined | null, { timeRange, filters }?: {
|
|
13
|
+
timeRange?: [string, string];
|
|
14
|
+
filters?: import("../types").ItemFilterFilters;
|
|
15
|
+
}): Promise<void>;
|
|
16
|
+
/**
|
|
17
|
+
* Renders the latest mosaic layer stored in the shared mosaic state.
|
|
18
|
+
*/
|
|
19
|
+
export function renderLatestMosaic(): void;
|
|
20
|
+
/**
|
|
21
|
+
* @param {string} mosaicEndpoint - The TileJSON URL for the mosaic.
|
|
22
|
+
* @param {[string, string] | undefined} timeRange
|
|
23
|
+
*/
|
|
24
|
+
export function initMosaic(mosaicEndpoint: string, timeRange: [string, string] | undefined): Promise<void>;
|
|
25
|
+
/**
|
|
26
|
+
* Vue composable that initializes the mosaic layer and keeps it in sync with
|
|
27
|
+
* map zoom and layer updates.
|
|
28
|
+
* @param {string | null | undefined} mosaicEndpoint - Pass null/undefined to disable.
|
|
29
|
+
* @param {import("vue").Ref<[string, string]> | undefined} timeRange
|
|
30
|
+
* @param {string[]} [indicators] - If provided, mosaic only activates for these collection IDs.
|
|
31
|
+
*/
|
|
32
|
+
export function useInitMosaic(mosaicEndpoint: string | null | undefined, timeRange: import("vue").Ref<[string, string]> | undefined, indicators?: string[]): void;
|
|
33
|
+
/**
|
|
34
|
+
* Returns the OL-equivalent zoom from `mapPosition[2]`. In 2D the raw value
|
|
35
|
+
* is already the OL zoom. In globe mode the raw value is camera altitude in
|
|
36
|
+
* meters; convert it via eox-map's internal formula so callers can compare
|
|
37
|
+
* against a single (2D-style) threshold.
|
|
38
|
+
*
|
|
39
|
+
* @param {number} rawZ
|
|
40
|
+
* @returns {number}
|
|
41
|
+
*/
|
|
42
|
+
export function normalizeGlobeZoom(rawZ: number): number;
|
|
43
|
+
/**
|
|
44
|
+
* check whether the filtered dataset has any assets in the current 2D view
|
|
45
|
+
*/
|
|
46
|
+
export function checkMosaicDataInView(): Promise<void>;
|
|
47
|
+
export function useMosaicState(): {
|
|
48
|
+
latestLayer: import("vue").ShallowRef<Record<string, any> | null, Record<string, any> | null>;
|
|
49
|
+
query: import("vue").Ref<Record<string, string> | null, Record<string, string> | null>;
|
|
50
|
+
visibilityThreshold: import("vue").Ref<number, number>;
|
|
51
|
+
isItemView: import("vue").Ref<boolean, boolean>;
|
|
52
|
+
hasDataInView: import("vue").Ref<boolean, boolean>;
|
|
53
|
+
returnToOverview: import("@vueuse/core").UseEventBusReturn<unknown, any>;
|
|
54
|
+
mosaicEndpoint: import("vue").ComputedRef<string | null>;
|
|
55
|
+
};
|
|
56
|
+
export function useScheduleMosaicUpdate(): import("@vueuse/shared").UseDebounceFnReturn<(mosaicEndpoint: string | undefined | null, timeRange: [string, string] | undefined, filters?: import("../types").ItemFilterFilters) => void>;
|
|
@@ -1,40 +1,64 @@
|
|
|
1
1
|
export const useSTAcStore: import("pinia").StoreDefinition<"stac", Pick<{
|
|
2
2
|
stacEndpoint: import("vue").Ref<string | null, string | null>;
|
|
3
|
+
rasterEndpoint: import("vue").Ref<string | null, string | null>;
|
|
3
4
|
isApi: import("vue").Ref<boolean, boolean>;
|
|
4
5
|
stac: import("vue").Ref<import("stac-ts").StacLink[] | null, import("stac-ts").StacLink[] | null>;
|
|
5
6
|
init: (endpoint: import("../types").StacEndpoint) => void;
|
|
6
7
|
loadSTAC: (url?: string) => Promise<void>;
|
|
7
8
|
loadSelectedSTAC: (relativePath?: string, isPoi?: boolean, stacItem?: Object) => Promise<void>;
|
|
8
|
-
loadSelectedCompareSTAC: (relativePath?: string, isPOI?: boolean) => Promise<void>;
|
|
9
|
+
loadSelectedCompareSTAC: (relativePath?: string, isPOI?: boolean, stacItem?: Object) => Promise<void>;
|
|
9
10
|
resetSelectedCompareSTAC: () => Promise<void>;
|
|
10
11
|
selectedStac: import("vue").Ref<import("stac-ts").StacCollection | null, import("stac-ts").StacCollection | null>;
|
|
11
12
|
selectedCompareStac: import("vue").Ref<import("stac-ts").StacCollection | null, import("stac-ts").StacCollection | null>;
|
|
12
13
|
selectedItem: import("vue").Ref<import("stac-ts").StacLink | import("stac-ts").StacItem | null, import("stac-ts").StacLink | import("stac-ts").StacItem | null>;
|
|
13
|
-
|
|
14
|
-
|
|
14
|
+
selectedCompareItem: import("vue").Ref<import("stac-ts").StacLink | import("stac-ts").StacItem | null, import("stac-ts").StacLink | import("stac-ts").StacItem | null>;
|
|
15
|
+
supportedUpscalingEndpoints: import("vue").Ref<(string | {
|
|
16
|
+
url: string;
|
|
17
|
+
titilerVersion?: 1 | 2;
|
|
18
|
+
})[], (string | {
|
|
19
|
+
url: string;
|
|
20
|
+
titilerVersion?: 1 | 2;
|
|
21
|
+
})[]>;
|
|
22
|
+
}, "stac" | "stacEndpoint" | "rasterEndpoint" | "isApi" | "selectedStac" | "selectedCompareStac" | "selectedItem" | "selectedCompareItem" | "supportedUpscalingEndpoints">, Pick<{
|
|
15
23
|
stacEndpoint: import("vue").Ref<string | null, string | null>;
|
|
24
|
+
rasterEndpoint: import("vue").Ref<string | null, string | null>;
|
|
16
25
|
isApi: import("vue").Ref<boolean, boolean>;
|
|
17
26
|
stac: import("vue").Ref<import("stac-ts").StacLink[] | null, import("stac-ts").StacLink[] | null>;
|
|
18
27
|
init: (endpoint: import("../types").StacEndpoint) => void;
|
|
19
28
|
loadSTAC: (url?: string) => Promise<void>;
|
|
20
29
|
loadSelectedSTAC: (relativePath?: string, isPoi?: boolean, stacItem?: Object) => Promise<void>;
|
|
21
|
-
loadSelectedCompareSTAC: (relativePath?: string, isPOI?: boolean) => Promise<void>;
|
|
30
|
+
loadSelectedCompareSTAC: (relativePath?: string, isPOI?: boolean, stacItem?: Object) => Promise<void>;
|
|
22
31
|
resetSelectedCompareSTAC: () => Promise<void>;
|
|
23
32
|
selectedStac: import("vue").Ref<import("stac-ts").StacCollection | null, import("stac-ts").StacCollection | null>;
|
|
24
33
|
selectedCompareStac: import("vue").Ref<import("stac-ts").StacCollection | null, import("stac-ts").StacCollection | null>;
|
|
25
34
|
selectedItem: import("vue").Ref<import("stac-ts").StacLink | import("stac-ts").StacItem | null, import("stac-ts").StacLink | import("stac-ts").StacItem | null>;
|
|
26
|
-
|
|
35
|
+
selectedCompareItem: import("vue").Ref<import("stac-ts").StacLink | import("stac-ts").StacItem | null, import("stac-ts").StacLink | import("stac-ts").StacItem | null>;
|
|
36
|
+
supportedUpscalingEndpoints: import("vue").Ref<(string | {
|
|
37
|
+
url: string;
|
|
38
|
+
titilerVersion?: 1 | 2;
|
|
39
|
+
})[], (string | {
|
|
40
|
+
url: string;
|
|
41
|
+
titilerVersion?: 1 | 2;
|
|
42
|
+
})[]>;
|
|
27
43
|
}, never>, Pick<{
|
|
28
44
|
stacEndpoint: import("vue").Ref<string | null, string | null>;
|
|
45
|
+
rasterEndpoint: import("vue").Ref<string | null, string | null>;
|
|
29
46
|
isApi: import("vue").Ref<boolean, boolean>;
|
|
30
47
|
stac: import("vue").Ref<import("stac-ts").StacLink[] | null, import("stac-ts").StacLink[] | null>;
|
|
31
48
|
init: (endpoint: import("../types").StacEndpoint) => void;
|
|
32
49
|
loadSTAC: (url?: string) => Promise<void>;
|
|
33
50
|
loadSelectedSTAC: (relativePath?: string, isPoi?: boolean, stacItem?: Object) => Promise<void>;
|
|
34
|
-
loadSelectedCompareSTAC: (relativePath?: string, isPOI?: boolean) => Promise<void>;
|
|
51
|
+
loadSelectedCompareSTAC: (relativePath?: string, isPOI?: boolean, stacItem?: Object) => Promise<void>;
|
|
35
52
|
resetSelectedCompareSTAC: () => Promise<void>;
|
|
36
53
|
selectedStac: import("vue").Ref<import("stac-ts").StacCollection | null, import("stac-ts").StacCollection | null>;
|
|
37
54
|
selectedCompareStac: import("vue").Ref<import("stac-ts").StacCollection | null, import("stac-ts").StacCollection | null>;
|
|
38
55
|
selectedItem: import("vue").Ref<import("stac-ts").StacLink | import("stac-ts").StacItem | null, import("stac-ts").StacLink | import("stac-ts").StacItem | null>;
|
|
39
|
-
|
|
56
|
+
selectedCompareItem: import("vue").Ref<import("stac-ts").StacLink | import("stac-ts").StacItem | null, import("stac-ts").StacLink | import("stac-ts").StacItem | null>;
|
|
57
|
+
supportedUpscalingEndpoints: import("vue").Ref<(string | {
|
|
58
|
+
url: string;
|
|
59
|
+
titilerVersion?: 1 | 2;
|
|
60
|
+
})[], (string | {
|
|
61
|
+
url: string;
|
|
62
|
+
titilerVersion?: 1 | 2;
|
|
63
|
+
})[]>;
|
|
40
64
|
}, "init" | "loadSTAC" | "loadSelectedSTAC" | "loadSelectedCompareSTAC" | "resetSelectedCompareSTAC">>;
|
|
@@ -17,8 +17,10 @@ export const mapPosition: import("vue").Ref<(number | undefined)[]>;
|
|
|
17
17
|
export const registeredProjections: string[];
|
|
18
18
|
/** available projection to be rendered by `EodashMap` */
|
|
19
19
|
export const availableMapProjection: import("vue").Ref<string, string>;
|
|
20
|
-
/** @type {import("vue").Ref<import("@eox/map").EOxMap | null>} */
|
|
21
|
-
export const mapEl: import("vue").Ref<import("@eox/map").EOxMap
|
|
20
|
+
/** @type {import("vue").Ref<import("@eox/map").EOxMap & { mapUpdateId?: number } | null>} */
|
|
21
|
+
export const mapEl: import("vue").Ref<(import("@eox/map").EOxMap & {
|
|
22
|
+
mapUpdateId?: number;
|
|
23
|
+
}) | null>;
|
|
22
24
|
/** @type {import("vue").Ref<import("@eox/map").EOxMap | null>} */
|
|
23
25
|
export const mapCompareEl: import("vue").Ref<import("@eox/map").EOxMap | null>;
|
|
24
26
|
export const activeTemplate: import("vue").Ref<string, string>;
|
|
@@ -52,3 +54,23 @@ export const chartSpec: import("vue").Ref<import("vega-embed").VisualizationSpec
|
|
|
52
54
|
* @type {import("vue").Ref<import("vega-embed").VisualizationSpec | null>}
|
|
53
55
|
*/
|
|
54
56
|
export const compareChartSpec: import("vue").Ref<import("vega-embed").VisualizationSpec | null>;
|
|
57
|
+
/**
|
|
58
|
+
* Global loading state.
|
|
59
|
+
* - `loading.activeLoads` — increment/decrement to track concurrent loads
|
|
60
|
+
* - `loading.value` — derived boolean, true when `activeLoads > 0`
|
|
61
|
+
*/
|
|
62
|
+
export const loading: {
|
|
63
|
+
activeLoads: number;
|
|
64
|
+
readonly value: boolean;
|
|
65
|
+
};
|
|
66
|
+
/**
|
|
67
|
+
* Adapter allows external widgets to hook into tooltip property transformation
|
|
68
|
+
* @type {import("vue").Ref<((param: {key: string, value: any}, map?: string) => {key: string, value: any} | undefined) | null>}
|
|
69
|
+
*/
|
|
70
|
+
export const tooltipAdapter: import("vue").Ref<((param: {
|
|
71
|
+
key: string;
|
|
72
|
+
value: any;
|
|
73
|
+
}, map?: string) => {
|
|
74
|
+
key: string;
|
|
75
|
+
value: any;
|
|
76
|
+
} | undefined) | null>;
|