@dative-gpi/foundation-shared-components 1.1.23 → 1.1.24-unit-formatter
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/components/FSAccordionPanel.vue +0 -2
- package/components/FSButton.vue +87 -43
- package/components/FSCard.vue +100 -208
- package/components/FSCardPlaceholder.vue +25 -29
- package/components/FSChip.vue +127 -54
- package/components/FSChipGroup.vue +23 -141
- package/components/FSClickable.vue +326 -24
- package/components/FSColor.vue +3 -3
- package/components/FSColorIcon.vue +0 -1
- package/components/FSDialogContent.vue +28 -39
- package/components/FSDialogFormBody.vue +0 -2
- package/components/FSDialogMenu.vue +1 -8
- package/components/FSDialogMultiFormBody.vue +5 -6
- package/components/FSDivider.vue +1 -5
- package/components/FSEditImageUI.vue +30 -21
- package/components/FSGridMosaic.vue +0 -2
- package/components/FSIconCard.vue +1 -3
- package/components/FSIconCheck.vue +0 -8
- package/components/FSImageCard.vue +4 -4
- package/components/FSInstantPicker.vue +0 -2
- package/components/FSLink.vue +13 -1
- package/components/FSOptionItem.vue +4 -4
- package/components/FSOptionsMenu.vue +6 -6
- package/components/FSPlayButtons.vue +9 -11
- package/components/FSProgressBar.vue +28 -142
- package/components/FSRangePicker.vue +0 -2
- package/components/FSRouterLink.vue +14 -84
- package/components/FSSlideGroup.vue +1 -5
- package/components/FSWindow.vue +0 -2
- package/components/agenda/FSAgendaHorizontalEvent.vue +4 -4
- package/components/agenda/FSAgendaVerticalEvent.vue +4 -4
- package/components/deviceOrganisations/FSStatusRichCard.vue +7 -4
- package/components/fields/FSAutocompleteField.vue +0 -1
- package/components/fields/FSEntityFieldUI.vue +0 -12
- package/components/fields/FSRichTextField.vue +0 -2
- package/components/lists/FSDataIteratorItem.vue +0 -2
- package/components/lists/FSDataTableUI.vue +0 -12
- package/components/lists/FSFilterButton.vue +23 -34
- package/components/lists/FSHeaderButton.vue +3 -6
- package/components/lists/FSTileList.vue +6 -23
- package/components/map/FSMap.vue +1 -1
- package/components/map/FSMapMarker.vue +3 -4
- package/components/selects/FSSelectMapLayer.vue +0 -5
- package/components/tiles/FSChartTileUI.vue +0 -2
- package/components/tiles/FSFolderTileUI.vue +2 -2
- package/components/tiles/FSLocationTileUI.vue +0 -2
- package/components/tiles/FSServiceAccountOrganisationTileUI.vue +0 -2
- package/components/tiles/FSTile.vue +64 -32
- package/components/tiles/FSUserOrganisationTileUI.vue +0 -2
- package/components/toggleSets/FSToggleSetPosition.vue +0 -5
- package/composables/useMapLayers.ts +0 -12
- package/models/index.ts +1 -2
- package/models/map.ts +1 -2
- package/models/tables.ts +0 -1
- package/package.json +4 -4
- package/styles/components/fs_button.scss +7 -1
- package/styles/components/fs_card.scss +4 -75
- package/styles/components/fs_chip.scss +29 -0
- package/styles/components/fs_clickable.scss +69 -0
- package/styles/components/fs_color_icon.scss +3 -0
- package/styles/components/fs_filter_button.scss +1 -6
- package/styles/components/fs_map.scss +1 -7
- package/styles/components/fs_progress_bar.scss +6 -62
- package/styles/components/index.scss +2 -1
- package/styles/globals/overrides.scss +1 -1
- package/assets/images/map/open-street-map.png +0 -0
- package/components/FSGroupingChip.vue +0 -115
- package/components/FSSnackbar.vue +0 -146
- package/components/FSSubgroupingChip.vue +0 -138
- package/components/fields/FSDurationField.vue +0 -184
- package/components/tiles/FSPlaylistTileUI.vue +0 -149
- package/components/tiles/FSSubgroupingTileUI.vue +0 -97
- package/models/variants.ts +0 -33
- package/styles/components/fs_snackbar.scss +0 -7
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
<template>
|
|
2
|
-
<
|
|
3
|
-
:
|
|
4
|
-
|
|
5
|
-
@click="
|
|
6
|
-
|
|
2
|
+
<router-link
|
|
3
|
+
:to="$props.to"
|
|
4
|
+
@auxclick="handleRoutingEvent($event, $props.to)"
|
|
5
|
+
@click="handleRoutingEvent($event, $props.to)"
|
|
6
|
+
v-bind="$attrs"
|
|
7
7
|
>
|
|
8
8
|
<template
|
|
9
9
|
v-for="(_, name) in $slots"
|
|
@@ -14,99 +14,29 @@
|
|
|
14
14
|
v-bind="{ ...slotData }"
|
|
15
15
|
/>
|
|
16
16
|
</template>
|
|
17
|
-
</
|
|
17
|
+
</router-link>
|
|
18
18
|
</template>
|
|
19
19
|
|
|
20
20
|
<script lang="ts">
|
|
21
|
-
import {
|
|
22
|
-
import {
|
|
21
|
+
import { defineComponent, type PropType } from "vue";
|
|
22
|
+
import { type RouteLocation } from "vue-router";
|
|
23
|
+
|
|
23
24
|
import { useRouting } from "@dative-gpi/foundation-shared-services/composables";
|
|
24
25
|
|
|
25
26
|
export default defineComponent({
|
|
26
27
|
name: "FSRouterLink",
|
|
27
28
|
props: {
|
|
28
29
|
to: {
|
|
29
|
-
type: Object as PropType<RouteLocation
|
|
30
|
-
|
|
31
|
-
},
|
|
32
|
-
href: {
|
|
33
|
-
type: String as PropType<string | null>,
|
|
34
|
-
default: null
|
|
35
|
-
},
|
|
36
|
-
passive: {
|
|
37
|
-
type: Boolean as PropType<boolean | null>,
|
|
38
|
-
default: null
|
|
39
|
-
},
|
|
40
|
-
type: {
|
|
41
|
-
type: String as PropType<"button" | "submit" | "reset">,
|
|
42
|
-
default: "button"
|
|
43
|
-
},
|
|
44
|
-
defaultWrapper: {
|
|
45
|
-
type: String as PropType<"div" | "a" | "button">,
|
|
46
|
-
default: "button"
|
|
47
|
-
},
|
|
48
|
-
passiveWrapper: {
|
|
49
|
-
type: String as PropType<"div" | "a" | "button">,
|
|
50
|
-
default: "div"
|
|
30
|
+
type: Object as PropType<RouteLocation>,
|
|
31
|
+
required: true
|
|
51
32
|
}
|
|
52
33
|
},
|
|
53
|
-
setup(
|
|
34
|
+
setup() {
|
|
54
35
|
const { handleRoutingEvent } = useRouting();
|
|
55
36
|
|
|
56
|
-
const actualPassive = computed(() => {
|
|
57
|
-
if (props.passive !== null) {return props.passive;}
|
|
58
|
-
return !props.to && !props.href && !attrs.onClick;
|
|
59
|
-
});
|
|
60
|
-
|
|
61
|
-
const wrapperComponent = computed(() => {
|
|
62
|
-
if (actualPassive.value) {
|
|
63
|
-
return props.passiveWrapper;
|
|
64
|
-
}
|
|
65
|
-
if (props.href) {
|
|
66
|
-
return "a";
|
|
67
|
-
}
|
|
68
|
-
if (props.to) {
|
|
69
|
-
return RouterLink;
|
|
70
|
-
}
|
|
71
|
-
return props.defaultWrapper;
|
|
72
|
-
});
|
|
73
|
-
|
|
74
|
-
const componentProps = computed(() => {
|
|
75
|
-
if (wrapperComponent.value === RouterLink) {
|
|
76
|
-
return { to: props.to };
|
|
77
|
-
} else if (wrapperComponent.value === "a") {
|
|
78
|
-
return { href: props.href };
|
|
79
|
-
} else if (wrapperComponent.value === "button") {
|
|
80
|
-
return { type: props.type };
|
|
81
|
-
} else {
|
|
82
|
-
return {};
|
|
83
|
-
}
|
|
84
|
-
});
|
|
85
|
-
|
|
86
|
-
const mergedProps = computed(() => ({
|
|
87
|
-
...componentProps.value,
|
|
88
|
-
...attrs
|
|
89
|
-
}));
|
|
90
|
-
|
|
91
|
-
const onClick = (event: MouseEvent) => {
|
|
92
|
-
if (props.to) {
|
|
93
|
-
handleRoutingEvent(event, props.to);
|
|
94
|
-
}
|
|
95
|
-
};
|
|
96
|
-
|
|
97
|
-
const onAuxClick = (event: MouseEvent) => {
|
|
98
|
-
if (props.to) {
|
|
99
|
-
handleRoutingEvent(event, props.to);
|
|
100
|
-
}
|
|
101
|
-
};
|
|
102
|
-
|
|
103
37
|
return {
|
|
104
|
-
|
|
105
|
-
mergedProps,
|
|
106
|
-
slots,
|
|
107
|
-
onClick,
|
|
108
|
-
onAuxClick
|
|
38
|
+
handleRoutingEvent
|
|
109
39
|
};
|
|
110
40
|
}
|
|
111
41
|
});
|
|
112
|
-
</script>
|
|
42
|
+
</script>
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
<v-slide-group
|
|
3
3
|
class="fs-slide-group"
|
|
4
4
|
ref="slideGroupRef"
|
|
5
|
-
:showArrows="
|
|
5
|
+
:showArrows="true"
|
|
6
6
|
:id="elementId"
|
|
7
7
|
:style="style"
|
|
8
8
|
v-bind="$attrs"
|
|
@@ -83,10 +83,6 @@ export default defineComponent({
|
|
|
83
83
|
type: Number,
|
|
84
84
|
required: false,
|
|
85
85
|
default: 250
|
|
86
|
-
},
|
|
87
|
-
showArrows: {
|
|
88
|
-
type: [Boolean, String] as PropType<boolean | string>,
|
|
89
|
-
default: true
|
|
90
86
|
}
|
|
91
87
|
},
|
|
92
88
|
setup(props) {
|
package/components/FSWindow.vue
CHANGED
|
@@ -85,7 +85,6 @@ import FSButton from "./FSButton.vue";
|
|
|
85
85
|
import FSCard from "./FSCard.vue";
|
|
86
86
|
import FSIcon from "./FSIcon.vue";
|
|
87
87
|
import FSText from "./FSText.vue";
|
|
88
|
-
import FSCol from "./FSCol.vue";
|
|
89
88
|
import FSRow from "./FSRow.vue";
|
|
90
89
|
|
|
91
90
|
export default defineComponent({
|
|
@@ -95,7 +94,6 @@ export default defineComponent({
|
|
|
95
94
|
FSCard,
|
|
96
95
|
FSIcon,
|
|
97
96
|
FSText,
|
|
98
|
-
FSCol,
|
|
99
97
|
FSRow
|
|
100
98
|
},
|
|
101
99
|
props: {
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
/>
|
|
30
30
|
</template>
|
|
31
31
|
</FSAgendaHorizontalEvent>
|
|
32
|
-
<
|
|
32
|
+
<FSClickable
|
|
33
33
|
v-if="$props.variant !== 'current' || $props.dayStart < $props.now"
|
|
34
34
|
:class="`fs-agenda-event fs-agenda-event-${$props.variant}`"
|
|
35
35
|
:variant="$props.variant === 'current' ? 'full' : 'standard'"
|
|
@@ -50,7 +50,7 @@
|
|
|
50
50
|
:variant="$props.variant"
|
|
51
51
|
:width="width"
|
|
52
52
|
/>
|
|
53
|
-
</
|
|
53
|
+
</FSClickable>
|
|
54
54
|
</template>
|
|
55
55
|
|
|
56
56
|
<script lang="ts">
|
|
@@ -58,13 +58,13 @@ import { defineComponent, computed, type StyleValue, type PropType } from 'vue';
|
|
|
58
58
|
|
|
59
59
|
import { useDateFormat } from "@dative-gpi/foundation-shared-services/composables";
|
|
60
60
|
|
|
61
|
-
import
|
|
61
|
+
import FSClickable from '../FSClickable.vue';
|
|
62
62
|
|
|
63
63
|
|
|
64
64
|
export default defineComponent({
|
|
65
65
|
name: 'FSAgendaHorizontalEvent',
|
|
66
66
|
components: {
|
|
67
|
-
|
|
67
|
+
FSClickable
|
|
68
68
|
},
|
|
69
69
|
emits: ['click'],
|
|
70
70
|
props: {
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
/>
|
|
29
29
|
</template>
|
|
30
30
|
</FSAgendaVerticalEvent>
|
|
31
|
-
<
|
|
31
|
+
<FSClickable
|
|
32
32
|
v-if="$props.variant !== 'current' || $props.dayStart < $props.now"
|
|
33
33
|
:class="`fs-agenda-event fs-agenda-vertical-event fs-agenda-event-${$props.variant}`"
|
|
34
34
|
:variant="$props.variant === 'current' ? 'full' : 'standard'"
|
|
@@ -48,7 +48,7 @@
|
|
|
48
48
|
:timeEnd="epochToShortTimeOnlyFormat($props.end)"
|
|
49
49
|
:variant="$props.variant"
|
|
50
50
|
/>
|
|
51
|
-
</
|
|
51
|
+
</FSClickable>
|
|
52
52
|
</template>
|
|
53
53
|
|
|
54
54
|
<script lang="ts">
|
|
@@ -56,12 +56,12 @@ import { defineComponent, computed, type StyleValue, type PropType } from 'vue';
|
|
|
56
56
|
|
|
57
57
|
import { useDateFormat } from "@dative-gpi/foundation-shared-services/composables";
|
|
58
58
|
|
|
59
|
-
import
|
|
59
|
+
import FSClickable from '../FSClickable.vue';
|
|
60
60
|
|
|
61
61
|
export default defineComponent({
|
|
62
62
|
name: 'FSAgendaVerticalEvent',
|
|
63
63
|
components: {
|
|
64
|
-
|
|
64
|
+
FSClickable
|
|
65
65
|
},
|
|
66
66
|
emits: ['click'],
|
|
67
67
|
props: {
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
<template>
|
|
2
|
-
<
|
|
2
|
+
<component
|
|
3
3
|
v-if="$props.modelStatus"
|
|
4
4
|
class="fs-status-rich-card"
|
|
5
5
|
topRightPadding="2px"
|
|
6
6
|
variant="standard"
|
|
7
|
+
:is="$attrs.onClick ? FSClickable : FSCard"
|
|
7
8
|
:padding="$props.padding"
|
|
8
9
|
:height="$props.height"
|
|
9
10
|
:width="$props.width"
|
|
@@ -49,7 +50,7 @@
|
|
|
49
50
|
v-bind="{ color }"
|
|
50
51
|
/>
|
|
51
52
|
</template>
|
|
52
|
-
</
|
|
53
|
+
</component>
|
|
53
54
|
</template>
|
|
54
55
|
|
|
55
56
|
<script lang="ts">
|
|
@@ -58,19 +59,19 @@ import { computed, defineComponent, type PropType, type StyleValue } from "vue";
|
|
|
58
59
|
import { ColorEnum, type FSDeviceStatusGroup, type FSModelStatus } from "@dative-gpi/foundation-shared-components/models";
|
|
59
60
|
import { useColors } from "@dative-gpi/foundation-shared-components/composables";
|
|
60
61
|
|
|
62
|
+
import FSClickable from "../FSClickable.vue";
|
|
61
63
|
import FSCard from "../FSCard.vue";
|
|
62
64
|
import FSIcon from "../FSChip.vue";
|
|
63
65
|
import FSText from "../FSText.vue";
|
|
64
|
-
import FSRow from "../FSRow.vue";
|
|
65
66
|
import FSCol from "../FSCol.vue";
|
|
66
67
|
|
|
67
68
|
export default defineComponent({
|
|
68
69
|
name: "FSStatusRichCard",
|
|
69
70
|
components: {
|
|
71
|
+
FSClickable,
|
|
70
72
|
FSCard,
|
|
71
73
|
FSIcon,
|
|
72
74
|
FSText,
|
|
73
|
-
FSRow,
|
|
74
75
|
FSCol
|
|
75
76
|
},
|
|
76
77
|
props: {
|
|
@@ -157,6 +158,8 @@ export default defineComponent({
|
|
|
157
158
|
}));
|
|
158
159
|
|
|
159
160
|
return {
|
|
161
|
+
FSClickable,
|
|
162
|
+
FSCard,
|
|
160
163
|
color,
|
|
161
164
|
style,
|
|
162
165
|
title,
|
|
@@ -233,14 +233,6 @@ export default defineComponent({
|
|
|
233
233
|
{
|
|
234
234
|
id: EntityType.Folder,
|
|
235
235
|
label: $tr("ui.common.folders", "Folders")
|
|
236
|
-
},
|
|
237
|
-
{
|
|
238
|
-
id: EntityType.Grouping,
|
|
239
|
-
label: $tr("ui.common.groupings", "Groupings")
|
|
240
|
-
},
|
|
241
|
-
{
|
|
242
|
-
id: EntityType.Subgrouping,
|
|
243
|
-
label: $tr("ui.common.subgroupings", "Categories")
|
|
244
236
|
}
|
|
245
237
|
];
|
|
246
238
|
|
|
@@ -267,10 +259,6 @@ export default defineComponent({
|
|
|
267
259
|
return "mdi-view-dashboard";
|
|
268
260
|
case EntityType.Folder:
|
|
269
261
|
return "mdi-folder";
|
|
270
|
-
case EntityType.Grouping:
|
|
271
|
-
return "mdi-chart-donut";
|
|
272
|
-
case EntityType.Subgrouping:
|
|
273
|
-
return "mdi-shape-outline";
|
|
274
262
|
default:
|
|
275
263
|
return "mdi-cube";
|
|
276
264
|
}
|
|
@@ -246,7 +246,6 @@ import FSTextField from "./FSTextField.vue";
|
|
|
246
246
|
import FSIcon from "../FSIcon.vue";
|
|
247
247
|
import FSCard from "../FSCard.vue";
|
|
248
248
|
import FSText from "../FSText.vue";
|
|
249
|
-
import FSSpan from "../FSSpan.vue";
|
|
250
249
|
import FSMenu from '../FSMenu.vue';
|
|
251
250
|
import FSCol from "../FSCol.vue";
|
|
252
251
|
import FSRow from "../FSRow.vue";
|
|
@@ -257,7 +256,6 @@ export default defineComponent({
|
|
|
257
256
|
FSAutoCompleteField,
|
|
258
257
|
FSTextField,
|
|
259
258
|
FSText,
|
|
260
|
-
FSSpan,
|
|
261
259
|
FSIcon,
|
|
262
260
|
FSCard,
|
|
263
261
|
FSMenu,
|
|
@@ -63,7 +63,6 @@ import { defineComponent, type PropType } from "vue";
|
|
|
63
63
|
import { type FSDataTableColumn } from "@dative-gpi/foundation-shared-components/models";
|
|
64
64
|
|
|
65
65
|
import FSRow from "../FSRow.vue";
|
|
66
|
-
import FSCol from "../FSCol.vue";
|
|
67
66
|
import FSText from "../FSText.vue";
|
|
68
67
|
import FSTile from '../tiles/FSTile.vue';
|
|
69
68
|
|
|
@@ -72,7 +71,6 @@ export default defineComponent({
|
|
|
72
71
|
components: {
|
|
73
72
|
FSTile,
|
|
74
73
|
FSText,
|
|
75
|
-
FSCol,
|
|
76
74
|
FSRow
|
|
77
75
|
},
|
|
78
76
|
props: {
|
|
@@ -97,14 +97,6 @@
|
|
|
97
97
|
:filters="filters[header.value]"
|
|
98
98
|
@update:filter="(value) => toggleFilter(header.value, value)"
|
|
99
99
|
>
|
|
100
|
-
<template
|
|
101
|
-
#custom="{ filter, toggle, variant }"
|
|
102
|
-
>
|
|
103
|
-
<slot
|
|
104
|
-
:name="`${filterSlot(header)}-custom`"
|
|
105
|
-
v-bind="{ filter, toggle, variant }"
|
|
106
|
-
/>
|
|
107
|
-
</template>
|
|
108
100
|
<template
|
|
109
101
|
#default="{ filter }"
|
|
110
102
|
>
|
|
@@ -749,12 +741,10 @@ import FSFilterButton from "./FSFilterButton.vue";
|
|
|
749
741
|
import FSHiddenButton from "./FSHiddenButton.vue";
|
|
750
742
|
import FSHeaderButton from "./FSHeaderButton.vue";
|
|
751
743
|
import FSOptionGroup from "../FSOptionGroup.vue";
|
|
752
|
-
import FSSlideGroup from "../FSSlideGroup.vue";
|
|
753
744
|
import FSToggleSet from "../FSToggleSet.vue";
|
|
754
745
|
import FSDraggable from "./FSDraggable.vue";
|
|
755
746
|
import FSCheckbox from "../FSCheckbox.vue";
|
|
756
747
|
import FSDivider from "../FSDivider.vue";
|
|
757
|
-
import FSButton from '../FSButton.vue';
|
|
758
748
|
import FSCard from "../FSCard.vue";
|
|
759
749
|
import FSChip from "../FSChip.vue";
|
|
760
750
|
import FSIcon from "../FSIcon.vue";
|
|
@@ -773,12 +763,10 @@ export default defineComponent({
|
|
|
773
763
|
FSSearchField,
|
|
774
764
|
FSSelectField,
|
|
775
765
|
FSOptionGroup,
|
|
776
|
-
FSSlideGroup,
|
|
777
766
|
FSDraggable,
|
|
778
767
|
FSToggleSet,
|
|
779
768
|
FSCheckbox,
|
|
780
769
|
FSDivider,
|
|
781
|
-
FSButton,
|
|
782
770
|
FSCard,
|
|
783
771
|
FSChip,
|
|
784
772
|
FSIcon,
|
|
@@ -40,7 +40,6 @@
|
|
|
40
40
|
:height="['30px', '24px']"
|
|
41
41
|
:variant="getAllVariant()"
|
|
42
42
|
:color="$props.color"
|
|
43
|
-
align="center-left"
|
|
44
43
|
:clickable="true"
|
|
45
44
|
@click="onToggleAll"
|
|
46
45
|
/>
|
|
@@ -57,35 +56,25 @@
|
|
|
57
56
|
<FSCol
|
|
58
57
|
gap="6px"
|
|
59
58
|
>
|
|
60
|
-
<
|
|
59
|
+
<FSChip
|
|
61
60
|
v-for="(filter, index) in searchedFilters"
|
|
61
|
+
class="fs-filter-button-chip"
|
|
62
|
+
:variant="getVariant(filter)"
|
|
63
|
+
:height="['30px', '24px']"
|
|
64
|
+
:color="$props.color"
|
|
65
|
+
:label="filter.text"
|
|
66
|
+
:clickable="true"
|
|
62
67
|
:key="index"
|
|
68
|
+
@click="() => onToggle(filter)"
|
|
63
69
|
>
|
|
64
|
-
<
|
|
65
|
-
|
|
66
|
-
v-bind="{ filter, toggle: () => onToggle(filter), variant: getVariant(filter) }"
|
|
70
|
+
<template
|
|
71
|
+
#default
|
|
67
72
|
>
|
|
68
|
-
<
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
:label="filter.text"
|
|
74
|
-
align="center-left"
|
|
75
|
-
:clickable="true"
|
|
76
|
-
:border="false"
|
|
77
|
-
@click="() => onToggle(filter)"
|
|
78
|
-
>
|
|
79
|
-
<template
|
|
80
|
-
#default
|
|
81
|
-
>
|
|
82
|
-
<slot
|
|
83
|
-
v-bind="{ filter }"
|
|
84
|
-
/>
|
|
85
|
-
</template>
|
|
86
|
-
</FSChip>
|
|
87
|
-
</slot>
|
|
88
|
-
</template>
|
|
73
|
+
<slot
|
|
74
|
+
v-bind="{ filter }"
|
|
75
|
+
/>
|
|
76
|
+
</template>
|
|
77
|
+
</FSChip>
|
|
89
78
|
</FSCol>
|
|
90
79
|
</FSFadeOut>
|
|
91
80
|
</FSCol>
|
|
@@ -96,7 +85,7 @@
|
|
|
96
85
|
<script lang="ts">
|
|
97
86
|
import { computed, defineComponent, type PropType, ref } from "vue";
|
|
98
87
|
|
|
99
|
-
import { type
|
|
88
|
+
import { type ColorBase, ColorEnum, type FSDataTableColumn, type FSDataTableFilter } from "@dative-gpi/foundation-shared-components/models";
|
|
100
89
|
import { useTranslations as useTranslationsProvider } from "@dative-gpi/bones-ui/composables";
|
|
101
90
|
|
|
102
91
|
import FSSearchField from "../fields/FSSearchField.vue";
|
|
@@ -164,21 +153,21 @@ export default defineComponent({
|
|
|
164
153
|
return props.filters;
|
|
165
154
|
});
|
|
166
155
|
|
|
167
|
-
const getVariant = (filter: FSDataTableFilter):
|
|
156
|
+
const getVariant = (filter: FSDataTableFilter): "standard" | "full" | "borderless" => {
|
|
168
157
|
if (singlePick.value || props.filters.filter(f => f.hidden).length > 0) {
|
|
169
158
|
if (filter.hidden) {
|
|
170
|
-
return
|
|
159
|
+
return "borderless";
|
|
171
160
|
}
|
|
172
|
-
return
|
|
161
|
+
return "full";
|
|
173
162
|
}
|
|
174
|
-
return
|
|
163
|
+
return "borderless";
|
|
175
164
|
};
|
|
176
165
|
|
|
177
|
-
const getAllVariant = ():
|
|
166
|
+
const getAllVariant = (): "standard" | "full" => {
|
|
178
167
|
if (singlePick.value || props.filters.filter(f => f.hidden).length > 0) {
|
|
179
|
-
return
|
|
168
|
+
return "standard";
|
|
180
169
|
}
|
|
181
|
-
return
|
|
170
|
+
return "full";
|
|
182
171
|
};
|
|
183
172
|
|
|
184
173
|
const onToggle = (filter: FSDataTableFilter): void => {
|
|
@@ -32,8 +32,7 @@
|
|
|
32
32
|
<FSChip
|
|
33
33
|
prependIcon="mdi-eye-off-outline"
|
|
34
34
|
class="fs-header-button-chip"
|
|
35
|
-
variant="
|
|
36
|
-
:border="false"
|
|
35
|
+
variant="borderless"
|
|
37
36
|
:label="$tr('data-table.hide-column', 'Hide column')"
|
|
38
37
|
:height="[30, 24]"
|
|
39
38
|
:clickable="true"
|
|
@@ -42,8 +41,7 @@
|
|
|
42
41
|
<FSChip
|
|
43
42
|
v-if="!$props.first"
|
|
44
43
|
class="fs-header-button-chip"
|
|
45
|
-
variant="
|
|
46
|
-
:border="false"
|
|
44
|
+
variant="borderless"
|
|
47
45
|
prependIcon="mdi-chevron-left"
|
|
48
46
|
:label="$tr('data-table.move-left', 'Move to the left')"
|
|
49
47
|
:height="[30, 24]"
|
|
@@ -53,8 +51,7 @@
|
|
|
53
51
|
<FSChip
|
|
54
52
|
v-if="!$props.last"
|
|
55
53
|
class="fs-header-button-chip"
|
|
56
|
-
variant="
|
|
57
|
-
:border="false"
|
|
54
|
+
variant="borderless"
|
|
58
55
|
prependIcon="mdi-chevron-right"
|
|
59
56
|
:label="$tr('data-table.move-right', 'Move to the right')"
|
|
60
57
|
:height="[30, 24]"
|
|
@@ -2,21 +2,12 @@
|
|
|
2
2
|
<FSCol
|
|
3
3
|
gap="12px"
|
|
4
4
|
>
|
|
5
|
-
<
|
|
6
|
-
v-if="$props.searchable
|
|
7
|
-
:
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
v-if="$props.searchable"
|
|
12
|
-
:hideHeader="true"
|
|
13
|
-
:modelValue="actualSearch"
|
|
14
|
-
@update:modelValue="onSearch"
|
|
15
|
-
/>
|
|
16
|
-
<slot
|
|
17
|
-
name="action"
|
|
18
|
-
/>
|
|
19
|
-
</FSRow>
|
|
5
|
+
<FSSearchField
|
|
6
|
+
v-if="$props.searchable"
|
|
7
|
+
:hideHeader="true"
|
|
8
|
+
:modelValue="actualSearch"
|
|
9
|
+
@update:modelValue="onSearch"
|
|
10
|
+
/>
|
|
20
11
|
<FSFadeOut
|
|
21
12
|
v-if="$props.direction == ListDirections.Column"
|
|
22
13
|
:maxHeight="$props.maxHeight"
|
|
@@ -118,13 +109,11 @@ import FSFadeOut from "../FSFadeOut.vue";
|
|
|
118
109
|
import FSSlideGroup from "../FSSlideGroup.vue"
|
|
119
110
|
import FSSearchField from "../fields/FSSearchField.vue";
|
|
120
111
|
import FSSimpleTileUI from "../tiles/FSSimpleTileUI.vue";
|
|
121
|
-
import FSRow from "../FSRow.vue";
|
|
122
112
|
|
|
123
113
|
export default defineComponent({
|
|
124
114
|
name: "FSTileList",
|
|
125
115
|
components: {
|
|
126
116
|
FSCol,
|
|
127
|
-
FSRow,
|
|
128
117
|
FSFadeOut,
|
|
129
118
|
FSLoader,
|
|
130
119
|
FSSlideGroup,
|
|
@@ -234,12 +223,6 @@ export default defineComponent({
|
|
|
234
223
|
actualSearch.value = value;
|
|
235
224
|
});
|
|
236
225
|
|
|
237
|
-
watch(() => props.singleSelect, () => {
|
|
238
|
-
if(props.singleSelect && props.modelValue.length > 1) {
|
|
239
|
-
emit("update:modelValue", []);
|
|
240
|
-
}
|
|
241
|
-
}, { immediate: true });
|
|
242
|
-
|
|
243
226
|
return {
|
|
244
227
|
actualSearch,
|
|
245
228
|
filteredItems,
|
package/components/map/FSMap.vue
CHANGED
|
@@ -389,7 +389,7 @@ export default defineComponent({
|
|
|
389
389
|
if(!map.value || !props.bounds) {
|
|
390
390
|
return;
|
|
391
391
|
}
|
|
392
|
-
fitBounds(props.bounds, { maxZoom:
|
|
392
|
+
fitBounds(props.bounds, { maxZoom: 14 });
|
|
393
393
|
});
|
|
394
394
|
|
|
395
395
|
watch(() => props.enableScrollWheelZoom, (newValue) => {
|
|
@@ -11,9 +11,8 @@ import { type Map, divIcon, type LatLng, marker, type Marker, type MarkerCluster
|
|
|
11
11
|
import { useColors } from "../../composables";
|
|
12
12
|
import { useRouting } from '@dative-gpi/foundation-shared-services/composables';
|
|
13
13
|
|
|
14
|
-
import { MAP, MARKERCLUSTERGROUP } from './keys';
|
|
15
|
-
import { ColorEnum, type ColorBase } from '@dative-gpi/foundation-shared-components/models';
|
|
16
14
|
import { gpsMarkerHtml, locationMarkerHtml, pinMarkerHtml } from '../../utils/leafletMarkers';
|
|
15
|
+
import { MAP, MARKERCLUSTERGROUP } from './keys';
|
|
17
16
|
|
|
18
17
|
export default {
|
|
19
18
|
name: 'FSMapMarker',
|
|
@@ -24,8 +23,8 @@ export default {
|
|
|
24
23
|
required: false
|
|
25
24
|
},
|
|
26
25
|
color: {
|
|
27
|
-
type: String
|
|
28
|
-
default:
|
|
26
|
+
type: String,
|
|
27
|
+
default: 'primary',
|
|
29
28
|
required: false
|
|
30
29
|
},
|
|
31
30
|
latlng: {
|
|
@@ -48,11 +48,6 @@ export default defineComponent({
|
|
|
48
48
|
icon: 'mdi-map',
|
|
49
49
|
label: $tr("ui.map-layer.map", "Map")
|
|
50
50
|
},
|
|
51
|
-
{
|
|
52
|
-
id: MapLayers.OpenStreetMap,
|
|
53
|
-
icon: 'mdi-map-plus',
|
|
54
|
-
label: $tr("ui.map-layer.open-street-map", "Open Street Map")
|
|
55
|
-
},
|
|
56
51
|
{
|
|
57
52
|
id: MapLayers.Imagery,
|
|
58
53
|
icon: 'mdi-satellite',
|
|
@@ -68,7 +68,6 @@ import { ApplicationScope, ChartType } from "@dative-gpi/foundation-shared-domai
|
|
|
68
68
|
import { chartIcon } from "@dative-gpi/foundation-shared-components/tools";
|
|
69
69
|
|
|
70
70
|
import FSImage from "../FSImage.vue";
|
|
71
|
-
import FSIcon from "../FSIcon.vue";
|
|
72
71
|
import FSTile from "./FSTile.vue";
|
|
73
72
|
import FSSpan from "../FSSpan.vue";
|
|
74
73
|
import FSRow from "../FSRow.vue";
|
|
@@ -81,7 +80,6 @@ export default defineComponent({
|
|
|
81
80
|
name: "FSChartTileUI",
|
|
82
81
|
components: {
|
|
83
82
|
FSImage,
|
|
84
|
-
FSIcon,
|
|
85
83
|
FSTile,
|
|
86
84
|
FSRow,
|
|
87
85
|
FSCol,
|
|
@@ -14,12 +14,12 @@
|
|
|
14
14
|
gap="6px"
|
|
15
15
|
>
|
|
16
16
|
<FSEntityCountBadge
|
|
17
|
-
:label="$tr('ui.common.folders', '
|
|
17
|
+
:label="$tr('ui.common.folders', 'Folder(s)')"
|
|
18
18
|
:count="$props.recursiveFoldersIds?.length ?? 0"
|
|
19
19
|
:color="ColorEnum.Primary"
|
|
20
20
|
/>
|
|
21
21
|
<FSEntityCountBadge
|
|
22
|
-
:label="$tr('ui.common.dashboards', '
|
|
22
|
+
:label="$tr('ui.common.dashboards', 'Dashboard(s)')"
|
|
23
23
|
:count="dashboardCount"
|
|
24
24
|
:color="ColorEnum.Success"
|
|
25
25
|
/>
|
|
@@ -60,7 +60,6 @@ import { type ColorBase, ColorEnum } from "@dative-gpi/foundation-shared-compone
|
|
|
60
60
|
|
|
61
61
|
import FSEntityCountBadge from './FSEntityCountBadge.vue';
|
|
62
62
|
import FSSimpleTileUI from './FSSimpleTileUI.vue';
|
|
63
|
-
import FSIcon from "../FSIcon.vue";
|
|
64
63
|
import FSColor from "../FSColor.vue";
|
|
65
64
|
import FSSpan from "../FSSpan.vue";
|
|
66
65
|
import FSCol from "../FSCol.vue";
|
|
@@ -71,7 +70,6 @@ export default defineComponent({
|
|
|
71
70
|
components: {
|
|
72
71
|
FSEntityCountBadge,
|
|
73
72
|
FSSimpleTileUI,
|
|
74
|
-
FSIcon,
|
|
75
73
|
FSColor,
|
|
76
74
|
FSSpan,
|
|
77
75
|
FSCol,
|