@eodash/eodash 5.0.0-rc.2.2 → 5.0.0-rc.2.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/core/client/components/EodashOverlay.vue +56 -0
- package/core/client/components/Footer.vue +1 -15
- package/core/client/composables/EodashMap.js +1 -0
- package/core/client/eodash.js +4 -7
- package/core/client/eodashSTAC/EodashCollection.js +62 -31
- package/core/client/eodashSTAC/createLayers.js +21 -2
- package/core/client/eodashSTAC/helpers.js +1 -2
- package/core/client/utils/states.js +43 -0
- package/core/client/views/Dashboard.vue +4 -1
- package/dist/client/{DashboardLayout-ByVMURpM.js → DashboardLayout-Reny_s87.js} +2 -2
- package/dist/client/{DynamicWebComponent-BRQQ5AXV.js → DynamicWebComponent-DQPKIscC.js} +1 -1
- package/dist/client/{EodashDatePicker-DyLo_JUC.js → EodashDatePicker-E5GjnQQ2.js} +2 -2
- package/dist/client/{EodashItemFilter-BR572AaH.js → EodashItemFilter-DN77Uqgg.js} +1 -1
- package/dist/client/{EodashLayerControl-C_mi-Hoo.js → EodashLayerControl-DduVhg2O.js} +10 -3
- package/dist/client/{EodashLayoutSwitcher-D4ooLbys.js → EodashLayoutSwitcher-CeNnYuaC.js} +2 -2
- package/dist/client/{EodashMap-CGFv4e85.js → EodashMap-C3bgcNJk.js} +9 -3
- package/dist/client/{EodashMapBtns-_M7SW7Is.js → EodashMapBtns-B73UApEn.js} +4 -4
- package/dist/client/{EodashProcess-ZQAMi9Pc.js → EodashProcess-IQPnj17j.js} +14 -14
- package/dist/client/{EodashStacInfo-CwOCcsGl.js → EodashStacInfo-CeZqI75-.js} +1 -1
- package/dist/client/{EodashTools-C_X0RPIp.js → EodashTools-CAE604ZJ.js} +4 -4
- package/dist/client/{ExportState-DNUSRJSJ.js → ExportState-DXw8Dwvk.js} +4 -4
- package/dist/client/Footer-Bl9tQTyj.js +119 -0
- package/dist/client/{Header-BcHAtFqr.js → Header-qH_kBs-u.js} +3 -3
- package/dist/client/{MobileLayout-CUHZFLDY.js → MobileLayout-Du5n5XyY.js} +5 -5
- package/dist/client/{PopUp-CEmhdNIj.js → PopUp-B12NWJHU.js} +3 -3
- package/dist/client/{VImg-Cdaw92OV.js → VImg-CjsuV4n9.js} +2 -2
- package/dist/client/{VMain-B7G2T3Zv.js → VMain-B11EjLm6.js} +1 -1
- package/dist/client/{VOverlay-Mf1pOmgW.js → VOverlay-CLR2s8AQ.js} +3 -3
- package/dist/client/{VTooltip-9810qjB2.js → VTooltip-DqyE5_aG.js} +3 -3
- package/dist/client/{WidgetsContainer-GUwXMh9d.js → WidgetsContainer-YI9ZycgC.js} +1 -1
- package/dist/client/{asWebComponent--e4yqM3f.js → asWebComponent-DBkwthjq.js} +217 -59
- package/dist/client/eo-dash.css +2 -2
- package/dist/client/eo-dash.js +1 -1
- package/dist/client/{forwardRefs-B9UH8QZK.js → forwardRefs-BTYtR3pq.js} +1 -1
- package/dist/client/{index-D-lbt2my.js → index-BhfdO0rU.js} +1 -1
- package/dist/client/{transition-CTjQmgIS.js → transition-B79onGGb.js} +1 -1
- package/dist/types/core/client/components/EodashOverlay.vue.d.ts +2 -0
- package/dist/types/core/client/eodashSTAC/EodashCollection.d.ts +36 -7
- package/dist/types/core/client/eodashSTAC/createLayers.d.ts +20 -0
- package/dist/types/core/client/eodashSTAC/helpers.d.ts +4 -10
- package/dist/types/core/client/utils/states.d.ts +43 -0
- package/package.json +1 -1
- package/widgets/EodashLayerControl.vue +7 -0
- package/widgets/EodashMap.vue +7 -1
- package/widgets/EodashProcess.vue +13 -13
- package/dist/client/Footer-FUp1Te0L.js +0 -141
package/dist/client/eo-dash.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { aX as EodashConstructor, aY as register, aZ as store } from './asWebComponent
|
|
1
|
+
export { aX as EodashConstructor, aY as register, aZ as store } from './asWebComponent-DBkwthjq.js';
|
|
2
2
|
import 'vue';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { shallowRef, computed, watch } from 'vue';
|
|
2
|
-
import { p as propsFactory, aI as getCurrentInstance } from './asWebComponent
|
|
2
|
+
import { p as propsFactory, aI as getCurrentInstance } from './asWebComponent-DBkwthjq.js';
|
|
3
3
|
|
|
4
4
|
class Box {
|
|
5
5
|
constructor(_ref) {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { TransitionGroup, Transition, h, camelize } from 'vue';
|
|
2
|
-
import { g as genericComponent, p as propsFactory } from './asWebComponent
|
|
2
|
+
import { g as genericComponent, p as propsFactory } from './asWebComponent-DBkwthjq.js';
|
|
3
3
|
|
|
4
4
|
// Utilities
|
|
5
5
|
const makeTransitionProps = propsFactory({
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
declare const _default: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
2
|
+
export default _default;
|
|
@@ -4,12 +4,31 @@ export class EodashCollection {
|
|
|
4
4
|
*
|
|
5
5
|
* @param {import("stac-ts").StacCollection} indicator */
|
|
6
6
|
static getIndicatorLayers(indicator: import("stac-ts").StacCollection): Promise<(Record<string, any> | {
|
|
7
|
+
interactions: never[];
|
|
8
|
+
style?: import("../types").EodashStyleJson | undefined;
|
|
9
|
+
type: string;
|
|
10
|
+
source: {
|
|
11
|
+
type: string;
|
|
12
|
+
url: string;
|
|
13
|
+
format: string;
|
|
14
|
+
attributions: unknown;
|
|
15
|
+
};
|
|
16
|
+
properties: {
|
|
17
|
+
layerConfig?: {
|
|
18
|
+
style: import("../types").EodashStyleJson | undefined;
|
|
19
|
+
} | undefined;
|
|
20
|
+
id: string;
|
|
21
|
+
title: string;
|
|
22
|
+
layerDatetime: Record<string, unknown> | undefined;
|
|
23
|
+
};
|
|
24
|
+
} | {
|
|
7
25
|
style?: import("../types").EodashStyleJson | undefined;
|
|
8
26
|
type: string;
|
|
9
27
|
source: {
|
|
10
28
|
type: string;
|
|
11
29
|
url: string | undefined;
|
|
12
30
|
format: string;
|
|
31
|
+
attributions: {}[];
|
|
13
32
|
};
|
|
14
33
|
properties: {
|
|
15
34
|
layerConfig?: {
|
|
@@ -27,6 +46,7 @@ export class EodashCollection {
|
|
|
27
46
|
interpolate: boolean;
|
|
28
47
|
sources: {
|
|
29
48
|
url: string;
|
|
49
|
+
attributions: unknown;
|
|
30
50
|
}[];
|
|
31
51
|
};
|
|
32
52
|
properties: {
|
|
@@ -54,13 +74,22 @@ export class EodashCollection {
|
|
|
54
74
|
url: string;
|
|
55
75
|
format: string;
|
|
56
76
|
};
|
|
57
|
-
style: {
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
}
|
|
77
|
+
style: ({
|
|
78
|
+
filter: (string | (string | number)[])[];
|
|
79
|
+
style: {
|
|
80
|
+
"icon-src": string;
|
|
81
|
+
};
|
|
82
|
+
else?: boolean | undefined;
|
|
83
|
+
} | {
|
|
84
|
+
else: boolean;
|
|
85
|
+
style: {
|
|
86
|
+
"circle-radius": number;
|
|
87
|
+
"circle-fill-color": string;
|
|
88
|
+
"circle-stroke-color": string;
|
|
89
|
+
"fill-color": string;
|
|
90
|
+
"stroke-color": string;
|
|
91
|
+
};
|
|
92
|
+
})[];
|
|
64
93
|
interactions: never[];
|
|
65
94
|
} | null;
|
|
66
95
|
/** @param {string} collectionUrl */
|
|
@@ -9,12 +9,31 @@
|
|
|
9
9
|
* @param {object | null} [extraProperties]
|
|
10
10
|
**/
|
|
11
11
|
export function createLayersFromAssets(collectionId: string, title: string, assets: Record<string, import("stac-ts").StacAsset>, item: import("stac-ts").StacItem, style?: import("../types").EodashStyleJson, layerConfig?: Record<string, unknown>, layerDatetime?: Record<string, unknown>, extraProperties?: object | null): Promise<({
|
|
12
|
+
interactions: never[];
|
|
13
|
+
style?: import("../types").EodashStyleJson | undefined;
|
|
14
|
+
type: string;
|
|
15
|
+
source: {
|
|
16
|
+
type: string;
|
|
17
|
+
url: string;
|
|
18
|
+
format: string;
|
|
19
|
+
attributions: unknown;
|
|
20
|
+
};
|
|
21
|
+
properties: {
|
|
22
|
+
layerConfig?: {
|
|
23
|
+
style: import("../types").EodashStyleJson | undefined;
|
|
24
|
+
} | undefined;
|
|
25
|
+
id: string;
|
|
26
|
+
title: string;
|
|
27
|
+
layerDatetime: Record<string, unknown> | undefined;
|
|
28
|
+
};
|
|
29
|
+
} | {
|
|
12
30
|
style?: import("../types").EodashStyleJson | undefined;
|
|
13
31
|
type: string;
|
|
14
32
|
source: {
|
|
15
33
|
type: string;
|
|
16
34
|
url: string | undefined;
|
|
17
35
|
format: string;
|
|
36
|
+
attributions: {}[];
|
|
18
37
|
};
|
|
19
38
|
properties: {
|
|
20
39
|
layerConfig?: {
|
|
@@ -32,6 +51,7 @@ export function createLayersFromAssets(collectionId: string, title: string, asse
|
|
|
32
51
|
interpolate: boolean;
|
|
33
52
|
sources: {
|
|
34
53
|
url: string;
|
|
54
|
+
attributions: unknown;
|
|
35
55
|
}[];
|
|
36
56
|
};
|
|
37
57
|
properties: {
|
|
@@ -52,7 +52,7 @@ export function assignProjID(item: import("stac-ts").StacItem, linkOrAsset: impo
|
|
|
52
52
|
* @param {string[]} geojsonUrls
|
|
53
53
|
*/
|
|
54
54
|
export function mergeGeojsons(geojsonUrls: string[]): Promise<string | undefined>;
|
|
55
|
-
export function extractRoles(properties: Record<string, any>, linkOrAsset: import("stac-ts").StacLink | import("stac-ts").StacAsset):
|
|
55
|
+
export function extractRoles(properties: Record<string, any>, linkOrAsset: import("stac-ts").StacLink | import("stac-ts").StacAsset): Record<string, any>;
|
|
56
56
|
export function fetchStyle(item: import("stac-ts").StacItem, itemUrl: string): Promise<{
|
|
57
57
|
filter?: import("ol/expr/expression.js").ExpressionValue | undefined;
|
|
58
58
|
"icon-src"?: string | undefined;
|
|
@@ -67,13 +67,7 @@ export function fetchStyle(item: import("stac-ts").StacItem, itemUrl: string): P
|
|
|
67
67
|
"icon-scale"?: import("ol/size.js").Size | import("ol/expr/expression.js").ExpressionValue | undefined;
|
|
68
68
|
"icon-width"?: import("ol/expr/expression.js").ExpressionValue | undefined;
|
|
69
69
|
"icon-height"?: import("ol/expr/expression.js").ExpressionValue | undefined;
|
|
70
|
-
"icon-rotation"?: import("ol/expr/expression.js"
|
|
71
|
-
* Removes the layer with the id provided and injects an array of layers in its position
|
|
72
|
-
* @param {Record<string,any>[]} currentLayers
|
|
73
|
-
* @param {string} oldLayer - id of the layer to be replaced
|
|
74
|
-
* @param {Record<string,any>[]} newLayers - array of layers to replace the old layer
|
|
75
|
-
* @returns {Record<string,any>[] | undefined}
|
|
76
|
-
*/).ExpressionValue | undefined;
|
|
70
|
+
"icon-rotation"?: import("ol/expr/expression.js").ExpressionValue | undefined;
|
|
77
71
|
"icon-rotate-with-view"?: boolean | undefined;
|
|
78
72
|
"icon-offset"?: number[] | import("ol/expr/expression.js").ExpressionValue | undefined;
|
|
79
73
|
"icon-offset-origin"?: import("ol/style/Icon.js").IconOrigin | undefined;
|
|
@@ -90,7 +84,7 @@ export function fetchStyle(item: import("stac-ts").StacItem, itemUrl: string): P
|
|
|
90
84
|
"stroke-pattern-offset"?: number[] | import("ol/expr/expression.js").ExpressionValue | undefined;
|
|
91
85
|
"stroke-pattern-offset-origin"?: import("ol/style/Icon.js").IconOrigin | undefined;
|
|
92
86
|
"stroke-pattern-size"?: import("ol/size.js").Size | import("ol/expr/expression.js").ExpressionValue | undefined;
|
|
93
|
-
"stroke-pattern-spacing"?: import("ol/expr/expression.js").ExpressionValue | undefined;
|
|
87
|
+
"stroke-pattern-spacing"?: import("ol/expr/expression.js" /** @type {import("../types").EodashStyleJson} */).ExpressionValue | undefined;
|
|
94
88
|
"fill-color"?: import("ol/style/webgl.js").ColorExpression | undefined;
|
|
95
89
|
"fill-pattern-src"?: string | undefined;
|
|
96
90
|
"fill-pattern-offset"?: number[] | import("ol/expr/expression.js").ExpressionValue | undefined;
|
|
@@ -101,7 +95,7 @@ export function fetchStyle(item: import("stac-ts").StacItem, itemUrl: string): P
|
|
|
101
95
|
"circle-stroke-color"?: import("ol/style/webgl.js").ColorExpression | undefined;
|
|
102
96
|
"circle-stroke-width"?: import("ol/expr/expression.js").ExpressionValue | undefined;
|
|
103
97
|
"circle-opacity"?: import("ol/expr/expression.js").ExpressionValue | undefined;
|
|
104
|
-
"circle-displacement"?: number[] | import("ol/expr/expression.js"
|
|
98
|
+
"circle-displacement"?: number[] | import("ol/expr/expression.js").ExpressionValue[] | undefined;
|
|
105
99
|
"circle-scale"?: import("ol/size.js").Size | import("ol/expr/expression.js").ExpressionValue | import("ol/expr/expression.js").ExpressionValue[] | undefined;
|
|
106
100
|
"circle-rotation"?: import("ol/expr/expression.js").ExpressionValue | undefined;
|
|
107
101
|
"circle-rotate-with-view"?: boolean | undefined;
|
|
@@ -25,3 +25,46 @@ export const layerControlFormValue: import("vue").Ref<Record<string, any> | unde
|
|
|
25
25
|
* STAC indicators color palette, defaults to Bank-Wong palette
|
|
26
26
|
* @type {string[]} */
|
|
27
27
|
export const collectionsPalette: string[];
|
|
28
|
+
export namespace dataThemesBrands {
|
|
29
|
+
namespace agriculture {
|
|
30
|
+
export { mdiBarley as icon };
|
|
31
|
+
export let color: string;
|
|
32
|
+
}
|
|
33
|
+
namespace water {
|
|
34
|
+
export { mdiWater as icon };
|
|
35
|
+
let color_1: string;
|
|
36
|
+
export { color_1 as color };
|
|
37
|
+
}
|
|
38
|
+
namespace land {
|
|
39
|
+
export { mdiImageFilterHdr as icon };
|
|
40
|
+
let color_2: string;
|
|
41
|
+
export { color_2 as color };
|
|
42
|
+
}
|
|
43
|
+
namespace health {
|
|
44
|
+
export { mdiHospitalBoxOutline as icon };
|
|
45
|
+
let color_3: string;
|
|
46
|
+
export { color_3 as color };
|
|
47
|
+
}
|
|
48
|
+
namespace combined {
|
|
49
|
+
export { mdiSetCenter as icon };
|
|
50
|
+
let color_4: string;
|
|
51
|
+
export { color_4 as color };
|
|
52
|
+
}
|
|
53
|
+
namespace air {
|
|
54
|
+
export { mdiWeatherWindy as icon };
|
|
55
|
+
let color_5: string;
|
|
56
|
+
export { color_5 as color };
|
|
57
|
+
}
|
|
58
|
+
namespace economy {
|
|
59
|
+
export { mdiCurrencyEur as icon };
|
|
60
|
+
let color_6: string;
|
|
61
|
+
export { color_6 as color };
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
import { mdiBarley } from "@mdi/js";
|
|
65
|
+
import { mdiWater } from "@mdi/js";
|
|
66
|
+
import { mdiImageFilterHdr } from "@mdi/js";
|
|
67
|
+
import { mdiHospitalBoxOutline } from "@mdi/js";
|
|
68
|
+
import { mdiSetCenter } from "@mdi/js";
|
|
69
|
+
import { mdiWeatherWindy } from "@mdi/js";
|
|
70
|
+
import { mdiCurrencyEur } from "@mdi/js";
|
package/package.json
CHANGED
|
@@ -10,6 +10,7 @@
|
|
|
10
10
|
style="--eox-background-color: transparent"
|
|
11
11
|
ref="eoxLayercontrol"
|
|
12
12
|
@layerConfig:change="onLayerConfigChange"
|
|
13
|
+
.styleOverride="styleOverride"
|
|
13
14
|
/>
|
|
14
15
|
</span>
|
|
15
16
|
</template>
|
|
@@ -120,4 +121,10 @@ const debouncedHandleDateTime = (evt) => {
|
|
|
120
121
|
const onLayerConfigChange = (evt) => {
|
|
121
122
|
layerControlFormValue.value = evt.detail.jsonformValue;
|
|
122
123
|
};
|
|
124
|
+
|
|
125
|
+
const styleOverride = `
|
|
126
|
+
input[type="range"] {
|
|
127
|
+
background:transparent !important;
|
|
128
|
+
}
|
|
129
|
+
`;
|
|
123
130
|
</script>
|
package/widgets/EodashMap.vue
CHANGED
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
.center="initialCenter"
|
|
13
13
|
.zoom="initialZoom"
|
|
14
14
|
.layers="eoxMapLayers"
|
|
15
|
+
.controls="controls"
|
|
15
16
|
>
|
|
16
17
|
<eox-map-tooltip
|
|
17
18
|
:style="tooltipStyles"
|
|
@@ -70,7 +71,12 @@ const props = defineProps({
|
|
|
70
71
|
|
|
71
72
|
/** @type {import("vue").Ref<Exclude<import("@/types").EodashStyleJson["tooltip"], undefined>>} */
|
|
72
73
|
const tooltipProperties = ref([]);
|
|
73
|
-
|
|
74
|
+
/** @type {import("@eox/map").EOxMap["controls"]} */
|
|
75
|
+
const controls = {
|
|
76
|
+
Attribution: {
|
|
77
|
+
collapsible: true,
|
|
78
|
+
},
|
|
79
|
+
};
|
|
74
80
|
const initialCenter = toRaw([
|
|
75
81
|
mapPosition.value?.[0] ?? props.center?.[0],
|
|
76
82
|
mapPosition.value?.[1] ?? props.center?.[1],
|
|
@@ -110,7 +110,19 @@ const downloadResults = () => {
|
|
|
110
110
|
};
|
|
111
111
|
onMounted(async () => {
|
|
112
112
|
// wait for the layers to be rendered
|
|
113
|
-
if (mapEl.value?.layers.length
|
|
113
|
+
if (mapEl.value?.layers.length > 1) {
|
|
114
|
+
await initProcess({
|
|
115
|
+
//@ts-expect-error TODO
|
|
116
|
+
selectedStac,
|
|
117
|
+
jsonformEl,
|
|
118
|
+
jsonformSchema,
|
|
119
|
+
chartSpec,
|
|
120
|
+
isProcessed,
|
|
121
|
+
processResults,
|
|
122
|
+
loading,
|
|
123
|
+
isPolling,
|
|
124
|
+
});
|
|
125
|
+
} else {
|
|
114
126
|
layersEvents.once(async () => {
|
|
115
127
|
await initProcess({
|
|
116
128
|
//@ts-expect-error TODO
|
|
@@ -124,18 +136,6 @@ onMounted(async () => {
|
|
|
124
136
|
isPolling,
|
|
125
137
|
});
|
|
126
138
|
});
|
|
127
|
-
} else {
|
|
128
|
-
await initProcess({
|
|
129
|
-
//@ts-expect-error TODO
|
|
130
|
-
selectedStac,
|
|
131
|
-
jsonformEl,
|
|
132
|
-
jsonformSchema,
|
|
133
|
-
chartSpec,
|
|
134
|
-
isProcessed,
|
|
135
|
-
processResults,
|
|
136
|
-
loading,
|
|
137
|
-
isPolling,
|
|
138
|
-
});
|
|
139
139
|
}
|
|
140
140
|
});
|
|
141
141
|
|
|
@@ -1,141 +0,0 @@
|
|
|
1
|
-
import { ref, toRef, shallowRef, computed, createVNode, watchEffect, inject, openBlock, createBlock, unref, withCtx, createElementVNode, toDisplayString, createTextVNode } from 'vue';
|
|
2
|
-
import { p as propsFactory, K as makeBorderProps, b as makeComponentProps, L as makeElevationProps, T as makeLayoutItemProps, M as makeRoundedProps, c as makeTagProps, d as makeThemeProps, g as genericComponent, e as provideTheme, C as useBackgroundColor, N as useBorder, O as useElevation, P as useRounded, v as useResizeObserver, U as useToggleScope, a as useRender, q as convertToUnit, W as useLayoutItem, _ as _export_sfc, X as eodashKey, t as useDisplay } from './asWebComponent--e4yqM3f.js';
|
|
3
|
-
|
|
4
|
-
const makeVFooterProps = propsFactory({
|
|
5
|
-
app: Boolean,
|
|
6
|
-
color: String,
|
|
7
|
-
height: {
|
|
8
|
-
type: [Number, String],
|
|
9
|
-
default: 'auto'
|
|
10
|
-
},
|
|
11
|
-
...makeBorderProps(),
|
|
12
|
-
...makeComponentProps(),
|
|
13
|
-
...makeElevationProps(),
|
|
14
|
-
...makeLayoutItemProps(),
|
|
15
|
-
...makeRoundedProps(),
|
|
16
|
-
...makeTagProps({
|
|
17
|
-
tag: 'footer'
|
|
18
|
-
}),
|
|
19
|
-
...makeThemeProps()
|
|
20
|
-
}, 'VFooter');
|
|
21
|
-
const VFooter = genericComponent()({
|
|
22
|
-
name: 'VFooter',
|
|
23
|
-
props: makeVFooterProps(),
|
|
24
|
-
setup(props, _ref) {
|
|
25
|
-
let {
|
|
26
|
-
slots
|
|
27
|
-
} = _ref;
|
|
28
|
-
const layoutItemStyles = ref();
|
|
29
|
-
const {
|
|
30
|
-
themeClasses
|
|
31
|
-
} = provideTheme(props);
|
|
32
|
-
const {
|
|
33
|
-
backgroundColorClasses,
|
|
34
|
-
backgroundColorStyles
|
|
35
|
-
} = useBackgroundColor(toRef(props, 'color'));
|
|
36
|
-
const {
|
|
37
|
-
borderClasses
|
|
38
|
-
} = useBorder(props);
|
|
39
|
-
const {
|
|
40
|
-
elevationClasses
|
|
41
|
-
} = useElevation(props);
|
|
42
|
-
const {
|
|
43
|
-
roundedClasses
|
|
44
|
-
} = useRounded(props);
|
|
45
|
-
const autoHeight = shallowRef(32);
|
|
46
|
-
const {
|
|
47
|
-
resizeRef
|
|
48
|
-
} = useResizeObserver(entries => {
|
|
49
|
-
if (!entries.length) return;
|
|
50
|
-
autoHeight.value = entries[0].target.clientHeight;
|
|
51
|
-
});
|
|
52
|
-
const height = computed(() => props.height === 'auto' ? autoHeight.value : parseInt(props.height, 10));
|
|
53
|
-
useToggleScope(() => props.app, () => {
|
|
54
|
-
const layout = useLayoutItem({
|
|
55
|
-
id: props.name,
|
|
56
|
-
order: computed(() => parseInt(props.order, 10)),
|
|
57
|
-
position: computed(() => 'bottom'),
|
|
58
|
-
layoutSize: height,
|
|
59
|
-
elementSize: computed(() => props.height === 'auto' ? undefined : height.value),
|
|
60
|
-
active: computed(() => props.app),
|
|
61
|
-
absolute: toRef(props, 'absolute')
|
|
62
|
-
});
|
|
63
|
-
watchEffect(() => {
|
|
64
|
-
layoutItemStyles.value = layout.layoutItemStyles.value;
|
|
65
|
-
});
|
|
66
|
-
});
|
|
67
|
-
useRender(() => createVNode(props.tag, {
|
|
68
|
-
"ref": resizeRef,
|
|
69
|
-
"class": ['v-footer', themeClasses.value, backgroundColorClasses.value, borderClasses.value, elevationClasses.value, roundedClasses.value, props.class],
|
|
70
|
-
"style": [backgroundColorStyles.value, props.app ? layoutItemStyles.value : {
|
|
71
|
-
height: convertToUnit(props.height)
|
|
72
|
-
}, props.style]
|
|
73
|
-
}, slots));
|
|
74
|
-
return {};
|
|
75
|
-
}
|
|
76
|
-
});
|
|
77
|
-
|
|
78
|
-
const _hoisted_1 = { class: "pt-0 footer-text" };
|
|
79
|
-
const _hoisted_2 = {
|
|
80
|
-
href: "https://eox.at",
|
|
81
|
-
target: "_blank",
|
|
82
|
-
class: "text-white"
|
|
83
|
-
};
|
|
84
|
-
const _hoisted_3 = ["src"];
|
|
85
|
-
|
|
86
|
-
/**
|
|
87
|
-
* Footer template ref
|
|
88
|
-
*
|
|
89
|
-
* @type {import("vue").Ref<
|
|
90
|
-
* import("vuetify/lib/components/index.mjs").VFooter | null
|
|
91
|
-
* >}
|
|
92
|
-
*/
|
|
93
|
-
const eoxLogo = `<svg width="100%" height="100%" viewBox="0 0 355 85" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:1.41421;"><g id="ink_ext_XXXXXX"><path id="path5076" d="M152.986,40.52l-0.75,-0.019l-0.737,-0.056l-0.725,-0.093l-0.713,-0.127l-0.7,-0.162l-0.7,-0.196l-0.675,-0.228l-0.65,-0.261l-0.65,-0.292l-0.625,-0.319l-0.612,-0.352l-0.588,-0.377l-0.562,-0.407l-0.55,-0.431l-0.538,-0.457l-0.5,-0.481l-0.487,-0.505l-0.45,-0.528l-0.438,-0.55l-0.4,-0.57l-0.375,-0.59l-0.35,-0.609l-0.325,-0.627l-0.287,-0.645l-0.263,-0.66l-0.225,-0.676l-0.2,-0.69l-0.162,-0.704l-0.125,-0.717l-0.1,-0.728l-0.05,-0.739l-0.025,-0.748c0,-8.023 6.512,-14.532 14.537,-14.532c8.038,0 14.538,6.509 14.538,14.532c0,8.036 -6.5,14.544 -14.538,14.544Z" style="fill:none;"/><path id="path5078" d="M165.748,-0.002c-42.009,0 -76.06,18.985 -76.06,42.402c0,13.268 10.921,25.102 28.021,32.875c-8.081,-5.487 -13.403,-12.973 -14.584,-21.859c-2.685,-20.186 16.83,-40.82 45.148,-49.615c-14.687,6.665 -24.923,21.427 -24.923,38.599c0,23.218 18.648,42.046 41.773,42.383c-0.037,0.005 -0.087,0.015 -0.137,0.02c0.263,0 0.512,0.009 0.762,0.009c42.013,0 76.076,-18.984 76.076,-42.412c0,-13.261 -10.937,-25.097 -28.037,-32.871l0.75,0.522l0.736,0.531l0.713,0.543l0.7,0.555l0.687,0.566l0.664,0.578l0.649,0.588l0.625,0.6l0.613,0.609l0.588,0.621l0.574,0.631l0.562,0.643l0.538,0.652l0.513,0.662l0.5,0.672l0.475,0.684l0.449,0.693l0.438,0.703l0.425,0.713l0.387,0.723l0.375,0.73l0.352,0.74l0.336,0.75l0.3,0.76l0.287,0.77l0.264,0.777l0.25,0.787l0.211,0.795l0.188,0.805l0.175,0.812l0.151,0.82l0.125,0.831c2.675,20.19 -16.838,40.825 -45.151,49.619c14.688,-6.665 24.926,-21.426 24.926,-38.614c0,-23.202 -18.65,-42.026 -41.775,-42.367c0.05,-0.005 0.1,-0.015 0.15,-0.025c-0.262,0 -0.526,-0.01 -0.789,-0.01Zm-13.248,11.314c7.817,0 14.25,6.433 14.25,14.25c0,0.001 0,0.001 0,0.001c0,7.817 -6.433,14.249 -14.25,14.249c-7.817,0 -14.25,-6.432 -14.25,-14.249c0,-0.001 0,-0.001 0,-0.001c0,-7.817 6.433,-14.25 14.25,-14.25Z" style="fill:#fff;fill-rule:nonzero;"/><path id="path5080" d="M213.786,9.529l0.75,0.521l0.738,0.532l0.712,0.544l0.7,0.555l0.688,0.566l0.662,0.577l0.65,0.588l0.625,0.6l0.613,0.61l0.587,0.62l0.575,0.631l0.563,0.643l0.537,0.652l0.513,0.663l0.5,0.672l0.475,0.684l0.45,0.692l0.437,0.703l0.425,0.712l0.388,0.723l0.375,0.731l0.35,0.741l0.337,0.75l0.3,0.76l0.288,0.769l0.262,0.777l0.25,0.786l0.213,0.797l0.187,0.804l0.175,0.812l0.15,0.821l0.125,0.83c2.675,20.19 -16.837,40.825 -45.15,49.619c14.688,-6.665 24.925,-21.426 24.925,-38.614c0,-23.202 -18.65,-42.025 -41.775,-42.367c0.05,-0.005 0.1,-0.015 0.15,-0.025c-0.262,0 -0.525,-0.01 -0.787,-0.01c-42.01,0 -76.062,18.985 -76.062,42.402c0,13.268 10.922,25.103 28.022,32.876c-8.081,-5.487 -13.403,-12.973 -14.584,-21.859c-2.685,-20.187 16.831,-40.82 45.149,-49.615c-14.688,6.665 -24.925,21.426 -24.925,38.598c0,23.218 18.65,42.046 41.775,42.383c-0.038,0.005 -0.088,0.015 -0.138,0.02c0.263,0 0.513,0.01 0.763,0.01c42.012,-0.001 76.075,-18.985 76.075,-42.413c0,-13.261 -10.938,-25.097 -28.038,-32.871Z" style="fill:none;"/><path id="path5082" d="M354.323,82.586l-41.999,-42.002l38.524,-38.515l-29.913,0l-23.562,23.559l-23.563,-23.559l-29.924,0l38.525,38.515l-42,42.002l29.913,0l27.049,-27.046l27.05,27.046l29.9,0" style="fill:#fff;fill-rule:nonzero;"/><path id="path5084" d="M354.323,82.586l-41.999,-42.002l38.524,-38.515l-29.913,0l-23.562,23.559l-23.563,-23.559l-29.924,0l38.525,38.515l-42,42.002l29.913,0l27.049,-27.046l27.05,27.046l29.9,0Z" style="fill:none;"/><path id="path5086" d="M0,2.069l75.033,0l0,16.489l-51.629,0l0,14.931l40.258,0l0,16.495l-40.258,0l0,16.05l53.124,0l0,16.488l-76.528,0l0,-80.453" style="fill:#fff;fill-rule:nonzero;"/><path id="path5088" d="M0,2.069l75.033,0l0,16.489l-51.629,0l0,14.931l40.258,0l0,16.495l-40.258,0l0,16.05l53.124,0l0,16.488l-76.528,0l0,-80.453Z" style="fill:none;"/></g></svg>`;
|
|
94
|
-
|
|
95
|
-
const _sfc_main = {
|
|
96
|
-
__name: 'Footer',
|
|
97
|
-
setup(__props) {
|
|
98
|
-
|
|
99
|
-
const footer = ref(null);
|
|
100
|
-
const eodash = /** @type {import("@/types").Eodash} */ (inject(eodashKey));
|
|
101
|
-
|
|
102
|
-
const { mdAndDown } = useDisplay();
|
|
103
|
-
const base64Logo = window.btoa(eoxLogo);
|
|
104
|
-
|
|
105
|
-
return (_ctx, _cache) => {
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
return (openBlock(), createBlock(VFooter, {
|
|
109
|
-
ref_key: "footer",
|
|
110
|
-
ref: footer,
|
|
111
|
-
height: unref(mdAndDown) ? '48px' : 'auto',
|
|
112
|
-
color: "secondary",
|
|
113
|
-
app: "",
|
|
114
|
-
class: "d-flex justify-space-between"
|
|
115
|
-
}, {
|
|
116
|
-
default: withCtx(() => [
|
|
117
|
-
createElementVNode("p", _hoisted_1, toDisplayString(unref(eodash).brand.footerText ?? ""), 1 /* TEXT */),
|
|
118
|
-
createElementVNode("div", null, [
|
|
119
|
-
_cache[0] || (_cache[0] = createElementVNode("a", {
|
|
120
|
-
href: "https://github.com/eodash/eodash",
|
|
121
|
-
class: "text-white",
|
|
122
|
-
target: "_blank"
|
|
123
|
-
}, "eodash", -1 /* HOISTED */)),
|
|
124
|
-
_cache[1] || (_cache[1] = createTextVNode(" by ")),
|
|
125
|
-
createElementVNode("a", _hoisted_2, [
|
|
126
|
-
createElementVNode("img", {
|
|
127
|
-
src: `data:image/svg+xml;base64,${unref(base64Logo)}`,
|
|
128
|
-
height: "11px"
|
|
129
|
-
}, null, 8 /* PROPS */, _hoisted_3)
|
|
130
|
-
])
|
|
131
|
-
])
|
|
132
|
-
]),
|
|
133
|
-
_: 1 /* STABLE */
|
|
134
|
-
}, 8 /* PROPS */, ["height"]))
|
|
135
|
-
}
|
|
136
|
-
}
|
|
137
|
-
|
|
138
|
-
};
|
|
139
|
-
const Footer = /*#__PURE__*/_export_sfc(_sfc_main, [['__scopeId',"data-v-7ea19f1b"]]);
|
|
140
|
-
|
|
141
|
-
export { Footer as default };
|