@dative-gpi/foundation-core-components 1.1.12 → 1.1.14-fix-last

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.
@@ -41,7 +41,7 @@ import { defineComponent, ref, type PropType, computed } from "vue";
41
41
 
42
42
  import { EntityType } from "@dative-gpi/foundation-shared-domain/enums";
43
43
 
44
- import type { DashboardOrganisationFilters, DashboardOrganisationTypeFilters, DashboardShallowFilters, DeviceOrganisationFilters, FolderFilters, GroupFilters, GroupingFilters, LocationFilters, ModelFilters, SubgroupingFilters, UserOrganisationFilters } from "@dative-gpi/foundation-core-domain/models";
44
+ import type { DashboardExplorerElementFilters, DeviceOrganisationFilters, FolderFilters, GroupFilters, GroupingFilters, LocationFilters, ModelFilters, SubgroupingFilters, UserOrganisationFilters } from "@dative-gpi/foundation-core-domain/models";
45
45
 
46
46
  import FSEntityFieldUI from "@dative-gpi/foundation-shared-components/components/fields/FSEntityFieldUI.vue";
47
47
 
@@ -138,10 +138,8 @@ export default defineComponent({
138
138
  } satisfies DeviceOrganisationFilters;
139
139
  case EntityType.Dashboard:
140
140
  return {
141
- dashboardOrganisationsIds: props.modelValue,
142
- dashboardOrganisationTypesIds: props.modelValue,
143
- dashboardShallowsIds: props.modelValue
144
- } satisfies DashboardOrganisationFilters & DashboardOrganisationTypeFilters & DashboardShallowFilters;
141
+ dashboardExplorerElementsIds: props.modelValue,
142
+ } satisfies DashboardExplorerElementFilters;
145
143
  case EntityType.Group:
146
144
  return {
147
145
  groupsIds: props.modelValue
@@ -65,7 +65,7 @@
65
65
  import { defineComponent, type PropType, computed } from "vue";
66
66
 
67
67
  import { EntityType } from "@dative-gpi/foundation-shared-domain/enums";
68
- import type { DashboardOrganisationFilters, DashboardOrganisationTypeFilters, DashboardShallowFilters, DeviceOrganisationFilters, FolderFilters, GroupFilters, GroupingFilters, LocationFilters, ModelFilters, SubgroupingFilters, UserOrganisationFilters } from "@dative-gpi/foundation-core-domain/models";
68
+ import type { DashboardExplorerElementFilters, DeviceOrganisationFilters, FolderFilters, GroupFilters, GroupingFilters, LocationFilters, ModelFilters, SubgroupingFilters, UserOrganisationFilters } from "@dative-gpi/foundation-core-domain/models";
69
69
 
70
70
  import { TABLES as T } from "../../utils";
71
71
 
@@ -124,10 +124,8 @@ export default defineComponent({
124
124
  } satisfies DeviceOrganisationFilters;
125
125
  case EntityType.Dashboard:
126
126
  return {
127
- dashboardOrganisationsIds: props.modelValue,
128
- dashboardOrganisationTypesIds: props.modelValue,
129
- dashboardShallowsIds: props.modelValue
130
- } satisfies DashboardOrganisationFilters & DashboardOrganisationTypeFilters & DashboardShallowFilters;
127
+ dashboardExplorerElementsIds: props.modelValue,
128
+ } satisfies DashboardExplorerElementFilters;
131
129
  case EntityType.Group:
132
130
  return {
133
131
  groupsIds: props.modelValue
@@ -191,9 +189,7 @@ export default defineComponent({
191
189
  };
192
190
  case EntityType.Dashboard:
193
191
  return {
194
- dashboardShallowsFilters: props.filters,
195
- dashboardOrganisationsFilters: props.filters,
196
- dashboardOrganisationTypeFetchFilter: props.filters,
192
+ dashboardExplorerElementsFilters: props.filters,
197
193
  ...attrs
198
194
  };
199
195
  case EntityType.Group:
@@ -62,9 +62,7 @@ export default defineComponent({
62
62
  case EntityType.Dashboard:
63
63
  return {
64
64
  ...attrs,
65
- dashboardOrganisationFilters : props.filters,
66
- dashboardOrganisationTypeFilters : props.filters,
67
- dashboardShallowFilters : props.filters
65
+ dashboardExplorerElementsFilters: props.filters
68
66
  };
69
67
  case EntityType.Folder:
70
68
  return {
@@ -55,9 +55,7 @@ export default defineComponent({
55
55
  case EntityType.Dashboard:
56
56
  return {
57
57
  ...attrs,
58
- dashboardOrganisationFilters : props.filters,
59
- dashboardOrganisationTypeFilters : props.filters,
60
- dashboardShallowFilters : props.filters
58
+ dashboardExplorerElementsFilters: props.filters
61
59
  };
62
60
  case EntityType.Folder:
63
61
  return {
@@ -0,0 +1,312 @@
1
+ <template>
2
+ <FSDataTable
3
+ defaultMode="iterator"
4
+ :loading="fetchingDashboardExplorerElements"
5
+ :singleSelect="$props.singleSelect"
6
+ :items="dashboardExplorerElements"
7
+ :selectable="$props.selectable"
8
+ :tableCode="$props.tableCode"
9
+ :itemTo="$props.itemTo"
10
+ :noSearch="$props.recursiveSearch"
11
+ :headersOptions="headersOptions"
12
+ :modelValue="$props.modelValue"
13
+ @update:modelValue="onUpdate"
14
+ v-model:search="search"
15
+ v-bind="$attrs"
16
+ >
17
+ <template
18
+ v-for="(_, name) in $slots"
19
+ v-slot:[name]="slotData"
20
+ >
21
+ <slot
22
+ :name="name"
23
+ v-bind="slotData"
24
+ />
25
+ </template>
26
+ <template
27
+ #header.imageId-title
28
+ >
29
+ <FSIcon>
30
+ mdi-panorama-variant-outline
31
+ </FSIcon>
32
+ </template>
33
+ <template
34
+ #item.imageId="{ item }"
35
+ >
36
+ <FSImage
37
+ v-if="item.imageId"
38
+ height="32px"
39
+ width="32px"
40
+ :imageId="item.imageId"
41
+ :thumbnail="true"
42
+ />
43
+ </template>
44
+ <template
45
+ #item.tags="{ item }"
46
+ >
47
+ <FSTagGroup
48
+ variant="slide"
49
+ :showRemove="false"
50
+ :tags="item.tags"
51
+ />
52
+ </template>
53
+ <template
54
+ #item.type="{ item }"
55
+ >
56
+ <FSDashboardExplorerElementTypeChip
57
+ :type="item.type"
58
+ />
59
+ </template>
60
+ <template
61
+ #item.icon="{ item }"
62
+ >
63
+ <FSIcon>
64
+ {{ item.icon }}
65
+ </FSIcon>
66
+ </template>
67
+ <template
68
+ #item.locked="{ item }"
69
+ >
70
+ <FSIconCheck
71
+ v-if="item.locked != null"
72
+ :value="item.locked"
73
+ />
74
+ </template>
75
+ <template
76
+ #item.tile="{ index, item, toggleSelect }"
77
+ >
78
+ <FSFolderTileUI
79
+ v-if="item.type === DashboardExplorerElementType.Folder"
80
+ :key="index"
81
+ :to="$props.itemTo && $props.itemTo(item)"
82
+ :imageId="item.imageId"
83
+ :icon="item.icon"
84
+ :label="item.label"
85
+ :code="item.code"
86
+ :bottomColor="item.colors"
87
+ :recursiveFoldersIds="item.recursiveFoldersIds"
88
+ :recursiveDashboardOrganisationsIds="item.recursiveDashboardOrganisationsIds"
89
+ :recursiveDashboardShallowsIds="item.recursiveDashboardShallowsIds"
90
+ :modelValue="isSelected(item.id)"
91
+ :selectable="$props.selectable"
92
+ @update:modelValue="toggleSelect(item)"
93
+ />
94
+ <FSDashboardOrganisationTileUI
95
+ v-if="item.type === DashboardExplorerElementType.DashboardOrganisation"
96
+ :key="index"
97
+ :to="$props.itemTo && $props.itemTo(item)"
98
+ :bottomColor="item.colors"
99
+ :imageId="item.imageId"
100
+ :icon="item.icon"
101
+ :label="item.label"
102
+ :code="item.code"
103
+ :modelValue="isSelected(item.id)"
104
+ :selectable="$props.selectable"
105
+ @update:modelValue="toggleSelect(item)"
106
+ />
107
+ <FSDashboardShallowTileUI
108
+ v-if="item.type === DashboardExplorerElementType.DashboardShallow"
109
+ :key="index"
110
+ :to="$props.itemTo && $props.itemTo(item)"
111
+ :bottomColor="item.colors"
112
+ :imageId="item.imageId"
113
+ :icon="item.icon"
114
+ :label="item.label"
115
+ :code="item.code"
116
+ :modelValue="isSelected(item.id)"
117
+ :selectable="$props.selectable"
118
+ @update:modelValue="toggleSelect(item)"
119
+ />
120
+ <FSDashboardOrganisationTypeTileUI
121
+ v-if="item.type === DashboardExplorerElementType.DashboardOrganisationType"
122
+ :key="index"
123
+ :to="$props.itemTo && $props.itemTo(item)"
124
+ :bottomColor="item.colors"
125
+ :imageId="item.imageId"
126
+ :icon="item.icon"
127
+ :label="item.label"
128
+ :code="item.code"
129
+ :modelValue="isSelected(item.id)"
130
+ :selectable="$props.selectable"
131
+ @update:modelValue="toggleSelect(item)"
132
+ />
133
+ </template>
134
+ </FSDataTable>
135
+ </template>
136
+
137
+ <script lang="ts">
138
+ import { computed, defineComponent, type PropType, ref, watch } from "vue";
139
+ import { type RouteLocation } from "vue-router";
140
+ import _ from "lodash";
141
+
142
+ import { DashboardExplorerElementType } from "@dative-gpi/foundation-shared-domain/enums";
143
+ import { useDashboardExplorerElements } from "@dative-gpi/foundation-core-services/composables";
144
+ import { type DashboardExplorerElementInfos, type DashboardExplorerElementFilters } from "@dative-gpi/foundation-core-domain/models";
145
+ import { dashboardExplorerElementTypeLabel } from "@dative-gpi/foundation-core-components/utils";
146
+ import { useDebounce } from "@dative-gpi/foundation-shared-components/composables";
147
+
148
+ import FSDashboardOrganisationTypeTileUI from "@dative-gpi/foundation-shared-components/components/tiles/FSDashboardOrganisationTypeTileUI.vue";
149
+ import FSDashboardOrganisationTileUI from "@dative-gpi/foundation-shared-components/components/tiles/FSDashboardOrganisationTileUI.vue";
150
+ import FSDashboardShallowTileUI from "@dative-gpi/foundation-shared-components/components/tiles/FSDashboardShallowTileUI.vue";
151
+ import FSFolderTileUI from "@dative-gpi/foundation-shared-components/components/tiles/FSFolderTileUI.vue";
152
+ import FSIconCheck from "@dative-gpi/foundation-shared-components/components/FSIconCheck.vue";
153
+ import FSTagGroup from "@dative-gpi/foundation-shared-components/components/FSTagGroup.vue";
154
+ import FSImage from "@dative-gpi/foundation-shared-components/components/FSImage.vue";
155
+ import FSIcon from "@dative-gpi/foundation-shared-components/components/FSIcon.vue";
156
+
157
+ import FSDashboardExplorerElementTypeChip from "./FSDashboardExplorerElementTypeChip.vue";
158
+ import FSDataTable from "../lists/FSDataTable.vue";
159
+
160
+ export default defineComponent({
161
+ name: "FSBaseDashboardsExplorer",
162
+ components: {
163
+ FSDashboardExplorerElementTypeChip,
164
+ FSDashboardOrganisationTypeTileUI,
165
+ FSDashboardOrganisationTileUI,
166
+ FSDashboardShallowTileUI,
167
+ FSFolderTileUI,
168
+ FSDataTable,
169
+ FSIconCheck,
170
+ FSTagGroup,
171
+ FSImage,
172
+ FSIcon
173
+ },
174
+ props: {
175
+ tableCode: {
176
+ type: String as PropType<string | null>,
177
+ required: false,
178
+ default: null
179
+ },
180
+ recursiveSearch: {
181
+ type: Boolean,
182
+ required: false,
183
+ default: true
184
+ },
185
+ parentId: {
186
+ type: String as PropType<string | null>,
187
+ required: false,
188
+ default: null
189
+ },
190
+ root: {
191
+ type: Boolean,
192
+ required: false,
193
+ default: true
194
+ },
195
+ allowedTypes: {
196
+ type: Array as PropType<DashboardExplorerElementType[]>,
197
+ required: false,
198
+ default: () => [
199
+ DashboardExplorerElementType.Folder,
200
+ DashboardExplorerElementType.DashboardOrganisation,
201
+ DashboardExplorerElementType.DashboardShallow,
202
+ DashboardExplorerElementType.DashboardOrganisationType
203
+ ]
204
+ },
205
+ itemTo: {
206
+ type: Function as PropType<(item: DashboardExplorerElementInfos) => Partial<RouteLocation>>,
207
+ required: false
208
+ },
209
+ selectable: {
210
+ type: Boolean,
211
+ required: false,
212
+ default: true
213
+ },
214
+ singleSelect: {
215
+ type: Boolean,
216
+ required: false,
217
+ default: false
218
+ },
219
+ modelValue: {
220
+ type: Array as PropType<string[]>,
221
+ default: () => [],
222
+ required: false
223
+ },
224
+ dashboardExplorerElementsFilters: {
225
+ type: Object as PropType<DashboardExplorerElementFilters>,
226
+ required: false,
227
+ default: () => ({})
228
+ }
229
+ },
230
+ inheritAttrs: false,
231
+ emits: ["update:modelValue", "update:types"],
232
+ setup(props, { emit }) {
233
+ const { entities, fetching: fetchingDashboardExplorerElements, getMany: getManyDashboardExplorerElements } = useDashboardExplorerElements();
234
+ const { debounce } = useDebounce();
235
+
236
+ const search = ref("");
237
+
238
+ const dashboardExplorerElements = computed((): DashboardExplorerElementInfos[] => {
239
+ return entities.value
240
+ .filter(e => props.allowedTypes.includes(e.type))
241
+ .sort((a, b) => a.type - b.type);
242
+ });
243
+
244
+ const headersOptions = computed(() => ({
245
+ type: {
246
+ fixedFilters: props.allowedTypes.map(t => ({
247
+ value: t,
248
+ text: dashboardExplorerElementTypeLabel(t)
249
+ })),
250
+ methodFilter: (value: DashboardExplorerElementType, type: DashboardExplorerElementType) => {
251
+ return value === type;
252
+ }
253
+ }
254
+ }));
255
+
256
+ const isSelected = (id: string): boolean => {
257
+ return props.modelValue.includes(id);
258
+ };
259
+
260
+ const onUpdate = (value: string[]): void => {
261
+ const types = value.map(id => entities.value.find(dee => dee.id === id)?.type);
262
+ emit("update:types", types);
263
+
264
+ emit("update:modelValue", value);
265
+ }
266
+
267
+ const fetch = () => {
268
+ if (props.recursiveSearch && search.value) {
269
+ getManyDashboardExplorerElements({
270
+ ancestorId: props.parentId,
271
+ search: search.value,
272
+ types: props.allowedTypes,
273
+ ...props.dashboardExplorerElementsFilters
274
+ });
275
+ }
276
+ else {
277
+ getManyDashboardExplorerElements({
278
+ parentId: props.parentId,
279
+ root: props.root,
280
+ types: props.allowedTypes,
281
+ ...props.dashboardExplorerElementsFilters
282
+ });
283
+ }
284
+ }
285
+
286
+ // Delay to wait before fetching after a search change
287
+ const debounceFetch = (): void => debounce(fetch, 1000);
288
+
289
+ watch([() => props.parentId, () => props.root, () => props.allowedTypes, () => props.dashboardExplorerElementsFilters], (next, previous) => {
290
+ if ((!next && !previous) || !_.isEqual(next, previous)) {
291
+ fetch();
292
+ }
293
+ }, { immediate: true });
294
+
295
+ watch(search, (next, previous) => {
296
+ if (props.recursiveSearch && next !== previous) {
297
+ debounceFetch();
298
+ }
299
+ });
300
+
301
+ return {
302
+ fetchingDashboardExplorerElements,
303
+ DashboardExplorerElementType,
304
+ dashboardExplorerElements,
305
+ headersOptions,
306
+ search,
307
+ isSelected,
308
+ onUpdate
309
+ };
310
+ }
311
+ });
312
+ </script>
@@ -0,0 +1,37 @@
1
+ <template>
2
+ <FSChip
3
+ :label="chipLabel"
4
+ :color="ColorEnum.Light"
5
+ />
6
+ </template>
7
+
8
+ <script lang="ts">
9
+ import { computed, defineComponent, type PropType } from "vue";
10
+
11
+ import type { DashboardExplorerElementType } from "@dative-gpi/foundation-shared-domain/enums";
12
+ import { dashboardExplorerElementTypeLabel } from "@dative-gpi/foundation-core-components/utils";
13
+
14
+ import FSChip from "@dative-gpi/foundation-shared-components/components/FSChip.vue";
15
+ import { ColorEnum } from "@dative-gpi/foundation-shared-components/models";
16
+
17
+ export default defineComponent({
18
+ name: "FSDashboardExplorerElementTypeChip",
19
+ components: {
20
+ FSChip
21
+ },
22
+ props: {
23
+ type: {
24
+ type: Number as PropType<DashboardExplorerElementType>,
25
+ required: true
26
+ }
27
+ },
28
+ setup(props) {
29
+ const chipLabel = computed(() => dashboardExplorerElementTypeLabel(props.type));
30
+
31
+ return {
32
+ chipLabel,
33
+ ColorEnum
34
+ };
35
+ }
36
+ });
37
+ </script>
@@ -70,11 +70,11 @@
70
70
  </FSRow>
71
71
  </template>
72
72
  <template
73
- #item.modelsLabels="{ item }"
73
+ #item.models="{ item }"
74
74
  >
75
75
  <FSTagGroup
76
76
  variant="slide"
77
- :tags="item.modelsLabels.map((d: any) => d.label)"
77
+ :tags="item.models.map((d: any) => d.label)"
78
78
  :showRemove="false"
79
79
  />
80
80
  </template>
@@ -109,7 +109,8 @@ import { getEnumEntries } from "@dative-gpi/foundation-shared-domain/tools";
109
109
  import { ColorEnum } from "@dative-gpi/foundation-shared-components/models";
110
110
  import { chartTypeLabel, chartIcon } from "@dative-gpi/foundation-shared-components/tools";
111
111
 
112
- import type { ChartModelLabel, ChartOrganisationTypeFilters, ChartOrganisationTypeInfos } from "@dative-gpi/foundation-core-domain/models";
112
+ import type { ModelInfos } from "@dative-gpi/foundation-core-domain/models";
113
+ import type { ChartOrganisationTypeFilters, ChartOrganisationTypeInfos } from "@dative-gpi/foundation-core-domain/models";
113
114
  import { useChartOrganisationTypes } from "@dative-gpi/foundation-core-services/composables";
114
115
 
115
116
  import FSChartTileUI from "@dative-gpi/foundation-shared-components/components/tiles/FSChartTileUI.vue";
@@ -168,8 +169,8 @@ export default defineComponent({
168
169
  const { entities: chartOrganisationTypes, fetching: fetchingChartOrganisationTypes, getMany: getManyChartOrganisationTypes } = useChartOrganisationTypes();
169
170
 
170
171
  const headersOptions = computed(() => ({
171
- modelsLabels: {
172
- fixedFilters: chartOrganisationTypes.value.map(c => c.modelsLabels).reduce((acc, models) => {
172
+ models: {
173
+ fixedFilters: chartOrganisationTypes.value.map(c => c.models).reduce((acc, models) => {
173
174
  for (const m of models) {
174
175
  if (!acc.map((m) => m.id).includes(m.id)) {
175
176
  acc.push(m);
@@ -183,7 +184,7 @@ export default defineComponent({
183
184
  value: '',
184
185
  text: '--'
185
186
  }),
186
- methodFilter: (value: string, items: ChartModelLabel[]) => (items.length == 0 && value == '') || (items.length > 0 && items.some(ml => ml.id == value))
187
+ methodFilter: (value: string, items: ModelInfos[]) => (items.length == 0 && value == '') || (items.length > 0 && items.some(ml => ml.id == value))
187
188
  },
188
189
  chartType: {
189
190
  fixedFilters: getEnumEntries(ChartType).map(e => ({
@@ -56,11 +56,11 @@
56
56
  />
57
57
  </template>
58
58
  <template
59
- #item.modelsLabels="{ item }"
59
+ #item.models="{ item }"
60
60
  >
61
61
  <FSTagGroup
62
62
  variant="slide"
63
- :tags="item.modelsLabels.map((d: any) => d.label)"
63
+ :tags="item.models.map((d: any) => d.label)"
64
64
  :showRemove="false"
65
65
  />
66
66
  </template>
@@ -109,7 +109,8 @@ import { getEnumEntries } from "@dative-gpi/foundation-shared-domain/tools";
109
109
  import { ColorEnum } from "@dative-gpi/foundation-shared-components/models";
110
110
  import { chartTypeLabel, chartIcon } from "@dative-gpi/foundation-shared-components/tools";
111
111
 
112
- import type { ChartModelLabel, ChartOrganisationFilters, ChartOrganisationInfos } from "@dative-gpi/foundation-core-domain/models";
112
+ import type { ModelInfos } from "@dative-gpi/foundation-core-domain/models";
113
+ import type { ChartOrganisationFilters, ChartOrganisationInfos } from "@dative-gpi/foundation-core-domain/models";
113
114
  import { useChartOrganisations } from "@dative-gpi/foundation-core-services/composables";
114
115
 
115
116
  import FSRow from "@dative-gpi/foundation-shared-components/components/FSRow.vue";
@@ -168,8 +169,8 @@ export default defineComponent({
168
169
  const { entities: chartOrganisations, fetching: fetchingChartOrganisations, getMany: getManyChartOrganisations } = useChartOrganisations();
169
170
 
170
171
  const headersOptions = computed(() => ({
171
- modelsLabels: {
172
- fixedFilters: chartOrganisations.value.map(c => c.modelsLabels).reduce((acc, models) => {
172
+ models: {
173
+ fixedFilters: chartOrganisations.value.map(c => c.models).reduce((acc, models) => {
173
174
  for (const m of models) {
174
175
  if (!acc.map((m) => m.id).includes(m.id)) {
175
176
  acc.push(m);
@@ -183,7 +184,7 @@ export default defineComponent({
183
184
  value: '',
184
185
  text: '--'
185
186
  }),
186
- methodFilter: (value: string, items: ChartModelLabel[]) => (items.length == 0 && value == '') || (items.length > 0 && items.some(ml => ml.id == value))
187
+ methodFilter: (value: string, items: ModelInfos[]) => (items.length == 0 && value == '') || (items.length > 0 && items.some(ml => ml.id == value))
187
188
  },
188
189
  chartType: {
189
190
  fixedFilters: getEnumEntries(ChartType).map(e => ({
@@ -68,14 +68,6 @@
68
68
  </FSText>
69
69
  </FSRow>
70
70
  </template>
71
- <template
72
- #item.modelsLabels="{ item }"
73
- >
74
- <FSTagGroup
75
- :showRemove="false"
76
- :tags="item.modelsLabels.map((d: any) => d.label)"
77
- />
78
- </template>
79
71
  <template
80
72
  #item.scope="{ item }"
81
73
  >
@@ -113,7 +105,8 @@ import { ChartOrigin, ChartType } from "@dative-gpi/foundation-shared-domain/enu
113
105
  import { getEnumEntries } from "@dative-gpi/foundation-shared-domain/tools";
114
106
  import { ColorEnum } from "@dative-gpi/foundation-shared-components/models";
115
107
 
116
- import type { ChartModelLabel, ChartOrganisationFilters, ChartOrganisationTypeFilters } from "@dative-gpi/foundation-core-domain/models";
108
+ import type { ModelInfos } from "@dative-gpi/foundation-core-domain/models";
109
+ import type { ChartOrganisationFilters, ChartOrganisationTypeFilters } from "@dative-gpi/foundation-core-domain/models";
117
110
  import { useChartOrganisations, useChartOrganisationTypes } from "@dative-gpi/foundation-core-services/composables";
118
111
 
119
112
  import FSChartTileUI from "@dative-gpi/foundation-shared-components/components/tiles/FSChartTileUI.vue";
@@ -199,7 +192,7 @@ export default defineComponent({
199
192
  tags: c.tags,
200
193
  multiple: c.multiple,
201
194
  chartType: c.chartType,
202
- modelsLabels: c.modelsLabels
195
+ models: c.models
203
196
  })).concat(chartOrganisationTypes.value.map(c => ({
204
197
  id: c.id,
205
198
  imageId: c.imageId,
@@ -214,13 +207,13 @@ export default defineComponent({
214
207
  tags: c.tags,
215
208
  multiple: c.multiple,
216
209
  chartType: c.chartType,
217
- modelsLabels: c.modelsLabels
210
+ models: c.models
218
211
  })));
219
212
  });
220
213
 
221
214
  const headersOptions = computed(() => ({
222
- modelsLabels: {
223
- fixedFilters: chartOrganisationTypes.value.map(c => c.modelsLabels).reduce((acc, models) => {
215
+ models: {
216
+ fixedFilters: chartOrganisationTypes.value.map(c => c.models).reduce((acc, models) => {
224
217
  for(const m of models){
225
218
  if(!acc.map((m) => m.id).includes(m.id)){
226
219
  acc.push(m);
@@ -234,7 +227,7 @@ export default defineComponent({
234
227
  value: '',
235
228
  text: '--'
236
229
  }),
237
- methodFilter: (value: string, items: ChartModelLabel[]) => (items.length == 0 && value == '') || (items.length > 0 && items.some(ml => ml.id == value))
230
+ methodFilter: (value: string, items: ModelInfos[]) => (items.length == 0 && value == '') || (items.length > 0 && items.some(ml => ml.id == value))
238
231
  },
239
232
  chartType: {
240
233
  fixedFilters: getEnumEntries(ChartType).map(e => ({