@dative-gpi/foundation-core-components 1.0.69 → 1.0.71-groupings-2

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.
Files changed (84) hide show
  1. package/components/autocompletes/FSAutocompleteChart.vue +15 -8
  2. package/components/autocompletes/FSAutocompleteDashboard.vue +14 -6
  3. package/components/autocompletes/FSAutocompleteDashboardOrganisation.vue +7 -1
  4. package/components/autocompletes/FSAutocompleteDataCategory.vue +11 -5
  5. package/components/autocompletes/FSAutocompleteDataDefinition.vue +7 -1
  6. package/components/autocompletes/FSAutocompleteGroup.vue +7 -1
  7. package/components/autocompletes/FSAutocompleteGrouping.vue +105 -0
  8. package/components/autocompletes/FSAutocompleteLocation.vue +6 -0
  9. package/components/autocompletes/FSAutocompleteManufacturer.vue +8 -0
  10. package/components/autocompletes/FSAutocompleteModel.vue +9 -1
  11. package/components/autocompletes/FSAutocompleteOrganisationType.vue +7 -1
  12. package/components/autocompletes/FSAutocompleteRole.vue +14 -6
  13. package/components/autocompletes/FSAutocompleteServiceAccountRoleOrganisation.vue +7 -1
  14. package/components/autocompletes/FSAutocompleteUserOrganisation.vue +9 -1
  15. package/components/customProperties/FSMetaField.vue +35 -40
  16. package/components/customProperties/FSMetaFormContent.vue +4 -3
  17. package/components/customProperties/FSMetaHistory.vue +2 -2
  18. package/components/customProperties/helpers.ts +57 -165
  19. package/components/entities/FSBaseEntitiesList.vue +12 -2
  20. package/components/entities/FSDialogSelectEntities.vue +19 -2
  21. package/components/entities/FSEntityField.vue +68 -13
  22. package/components/entities/FSSelectEntitiesList.vue +40 -7
  23. package/components/explorers/FSBaseDevicesExplorer.vue +322 -0
  24. package/components/explorers/FSBaseFoldersExplorer.vue +99 -20
  25. package/components/fields/FSMagicConfigField.vue +171 -0
  26. package/components/fields/FSMagicField.vue +214 -0
  27. package/components/lists/FSDataTable.vue +22 -16
  28. package/components/lists/alerts/FSBaseAlertsList.vue +96 -106
  29. package/components/lists/alerts/FSButtonAcknowledgeAlert.vue +4 -4
  30. package/components/lists/authTokens/FSBaseAuthTokensList.vue +6 -4
  31. package/components/lists/chartOrganisationTypes/FSBaseChartOrganisationTypesList.vue +97 -34
  32. package/components/lists/chartOrganisations/FSBaseChartOrganisationsList.vue +98 -34
  33. package/components/lists/charts/FSBaseChartsList.vue +153 -64
  34. package/components/lists/comments/FSBaseCommentsList.vue +39 -23
  35. package/components/lists/connectivityScenarios/FSBaseConnectivityScenariosList.vue +128 -0
  36. package/components/lists/dashboardOrganisationTypes/FSBaseDashboardOrganisationTypesList.vue +41 -8
  37. package/components/lists/dashboards/FSBaseDashboardsList.vue +76 -16
  38. package/components/lists/dashboards/FSSimpleDashboardsList.vue +33 -7
  39. package/components/lists/dataCategories/FSBaseDataCategoriesList.vue +8 -6
  40. package/components/lists/dataDefinitions/FSBaseDataDefinitionsList.vue +8 -5
  41. package/components/lists/deviceOrganisations/FSBaseDeviceOrganisationsList.vue +70 -44
  42. package/components/lists/folders/FSBaseFoldersList.vue +27 -15
  43. package/components/lists/groupings/FSBaseGroupingsList.vue +125 -0
  44. package/components/lists/groups/FSBaseGroupsList.vue +13 -9
  45. package/components/lists/locations/FSBaseLocationsList.vue +17 -13
  46. package/components/lists/models/FSBaseModelsList.vue +10 -5
  47. package/components/lists/playlists/FSSimplePlaylistsList.vue +44 -0
  48. package/components/lists/roleOrganisationTypes/FSBaseRoleOrganisationTypesList.vue +6 -5
  49. package/components/lists/roleOrganisations/FSBaseRoleOrganisationsList.vue +6 -5
  50. package/components/lists/scenarioOrganisationTypes/FSBaseScenarioOrganisationTypesList.vue +45 -8
  51. package/components/lists/scenarioOrganisations/FSBaseScenarioOrganisationsList.vue +45 -7
  52. package/components/lists/scenarios/FSBaseScenariosList.vue +121 -86
  53. package/components/lists/serviceAccountOrganisations/FSBaseServiceAccountOrganisationsList.vue +10 -7
  54. package/components/lists/serviceAccountRoleOrganisations/{FSBaseServiceAccountRoleOrganisations.vue → FSBaseServiceAccountRoleOrganisationsList.vue} +6 -5
  55. package/components/lists/userOrganisations/FSBaseUserOrganisationsList.vue +10 -7
  56. package/components/lists/userOrganisations/FSChipUserOrganisationsList.vue +61 -0
  57. package/components/selects/FSPlotPerSelector.vue +94 -16
  58. package/components/tiles/FSChartTile.vue +71 -0
  59. package/components/tiles/FSDashboardOrganisationTile.vue +3 -3
  60. package/components/tiles/FSDashboardOrganisationTypeTile.vue +3 -3
  61. package/components/tiles/FSDashboardShallowTile.vue +3 -3
  62. package/components/tiles/FSDeviceOrganisationTile.vue +3 -3
  63. package/components/tiles/FSFolderTile.vue +7 -5
  64. package/components/tiles/FSGroupTile.vue +3 -3
  65. package/components/tiles/FSLocationTile.vue +5 -3
  66. package/components/tiles/FSModelTile.vue +64 -0
  67. package/components/tiles/FSServiceAccountOrganisationTile.vue +3 -3
  68. package/components/tiles/FSUserOrganisationTile.vue +3 -3
  69. package/components/treeviews/FSTreeViewGroup.vue +7 -1
  70. package/package.json +9 -9
  71. package/utils/dashboards.ts +4 -4
  72. package/utils/index.ts +0 -1
  73. package/utils/roles.ts +3 -3
  74. package/utils/users.ts +3 -3
  75. package/components/selects/FSAggregationSelector.vue +0 -51
  76. package/components/selects/FSAxisTypeSelector.vue +0 -48
  77. package/components/selects/FSDisplayAsSelector.vue +0 -52
  78. package/components/selects/FSFilterTypeSelector.vue +0 -53
  79. package/components/selects/FSHeatmapRuleSelector.vue +0 -52
  80. package/components/selects/FSOperationOnSelector.vue +0 -51
  81. package/components/selects/FSPlanningTypeSelector.vue +0 -51
  82. package/components/selects/FSSelectEntityType.vue +0 -59
  83. package/components/selects/FSSerieTypeSelector.vue +0 -51
  84. package/utils/charts.ts +0 -137
@@ -1,7 +1,7 @@
1
1
  <template>
2
2
  <FSLoadTile
3
3
  v-if="getting"
4
- :editable="$props.editable"
4
+ :selectable="$props.selectable"
5
5
  :modelValue="modelValue"
6
6
  @update:modelValue="$emit('update:modelValue', $event)"
7
7
  />
@@ -12,7 +12,7 @@
12
12
  :roleLabel="entity.roleLabel"
13
13
  :roleIcon="entity.roleIcon"
14
14
  :admin="entity.admin"
15
- :editable="$props.editable"
15
+ :selectable="$props.selectable"
16
16
  :modelValue="modelValue"
17
17
  @update:modelValue="$emit('update:modelValue', $event)"
18
18
  v-bind="$attrs"
@@ -43,7 +43,7 @@ export default defineComponent({
43
43
  required: false,
44
44
  default: false
45
45
  },
46
- editable: {
46
+ selectable: {
47
47
  type: Boolean,
48
48
  required: false,
49
49
  default: true
@@ -1,5 +1,6 @@
1
1
  <template>
2
2
  <FSTreeViewField
3
+ :label="$props.label ?? $tr('ui.common.group', 'Group')"
3
4
  :multiple="$props.multiple"
4
5
  :loading="fetchingGroups"
5
6
  :items="groups"
@@ -55,7 +56,12 @@ export default defineComponent({
55
56
  type: Boolean,
56
57
  required: false,
57
58
  default: false
58
- }
59
+ },
60
+ label: {
61
+ type: String as PropType<string | null>,
62
+ required: false,
63
+ default: null
64
+ }
59
65
  },
60
66
  emits: ["update:modelValue"],
61
67
  setup(props, { emit }) {
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@dative-gpi/foundation-core-components",
3
3
  "sideEffects": false,
4
- "version": "1.0.69",
4
+ "version": "1.0.71-groupings-2",
5
5
  "description": "",
6
6
  "publishConfig": {
7
7
  "access": "public"
@@ -10,21 +10,21 @@
10
10
  "author": "",
11
11
  "license": "ISC",
12
12
  "dependencies": {
13
- "@dative-gpi/foundation-core-domain": "1.0.69",
14
- "@dative-gpi/foundation-core-services": "1.0.69",
15
- "@dative-gpi/foundation-shared-components": "1.0.69",
16
- "@dative-gpi/foundation-shared-domain": "1.0.69",
17
- "@dative-gpi/foundation-shared-services": "1.0.69"
13
+ "@dative-gpi/foundation-core-domain": "1.0.71-groupings-2",
14
+ "@dative-gpi/foundation-core-services": "1.0.71-groupings-2",
15
+ "@dative-gpi/foundation-shared-components": "1.0.71-groupings-2",
16
+ "@dative-gpi/foundation-shared-domain": "1.0.71-groupings-2",
17
+ "@dative-gpi/foundation-shared-services": "1.0.71-groupings-2"
18
18
  },
19
19
  "peerDependencies": {
20
- "@dative-gpi/bones-ui": "^0.0.75",
20
+ "@dative-gpi/bones-ui": "^1.0.0",
21
21
  "color": "^4.2.3",
22
- "vue": "^3.4.29"
22
+ "vue": "^3.4.38"
23
23
  },
24
24
  "devDependencies": {
25
25
  "@types/color": "3.0.6",
26
26
  "sass": "1.71.1",
27
27
  "sass-loader": "13.3.2"
28
28
  },
29
- "gitHead": "6ecedd781dfabf0bf696992e85f35d9ce69037b9"
29
+ "gitHead": "359bc8ff8d0c15bbfac671aef3e8c96eca3f87b9"
30
30
  }
@@ -7,10 +7,10 @@ const { $tr } = useTranslationsProvider();
7
7
 
8
8
  export const dashboardTypeLabel = (type: DashboardType): string => {
9
9
  switch (type) {
10
- case DashboardType.None: return $tr("ui.dashboard-type.none", "None");
11
- case DashboardType.Organisation:
12
- case DashboardType.Shallow: return $tr("ui.dashboard-type.organisation", "Custom");
13
- case DashboardType.OrganisationType: return $tr("ui.dashboard-type.organisation-type", "Shared");
10
+ case DashboardType.None: return $tr("ui.common.none", "None");
11
+ case DashboardType.Organisation: return $tr('ui.dashboard-type.shallow', 'Shallow copy');
12
+ case DashboardType.Shallow: return $tr("ui.common.custom", "Custom");
13
+ case DashboardType.OrganisationType: return $tr("ui.common.shared", "Shared");
14
14
  }
15
15
  };
16
16
 
package/utils/index.ts CHANGED
@@ -1,4 +1,3 @@
1
- export * from "./charts";
2
1
  export * from "./dashboards";
3
2
  export * from "./roles";
4
3
  export * from "./users";
package/utils/roles.ts CHANGED
@@ -6,9 +6,9 @@ const { $tr } = useTranslationsProvider();
6
6
 
7
7
  export const roleTypeLabel = (type: RoleType): string => {
8
8
  switch (type) {
9
- case RoleType.None: return $tr("ui.role-type.none", "None");
10
- case RoleType.Organisation: return $tr("ui.role-type.organisation", "Custom");
11
- case RoleType.OrganisationType: return $tr("ui.role-type.organisation-type", "Shared");
9
+ case RoleType.None: return $tr("ui.common.none", "None");
10
+ case RoleType.Organisation: return $tr("ui.common.custom", "Custom");
11
+ case RoleType.OrganisationType: return $tr("ui.common.shared", "Shared");
12
12
  }
13
13
  };
14
14
 
package/utils/users.ts CHANGED
@@ -5,9 +5,9 @@ const { $tr } = useTranslationsProvider();
5
5
 
6
6
  export const userTypeLabel = (type: UserType): string => {
7
7
  switch (type) {
8
- case UserType.User: return $tr("ui.user-type.user", "User");
9
- case UserType.ServiceAccount: return $tr("ui.user-type.service-account", "Service account");
10
- case UserType.Extension: return $tr("ui.user-type.extension", "Extension");
8
+ case UserType.User: return $tr("ui.common.user", "User");
9
+ case UserType.ServiceAccount: return $tr("ui.common.service-account", "Service account");
10
+ case UserType.Extension: return $tr("ui.common.extension", "Extension");
11
11
  default: return "";
12
12
  }
13
13
  };
@@ -1,51 +0,0 @@
1
- <template>
2
- <FSAutocompleteField
3
- :label="label ?? $tr('ui.common.aggregation-type','Aggregation')"
4
- :items="aggregationTypeItems"
5
- :modelValue="modelValue"
6
- @update:modelValue="$emit('update:modelValue', $event)"
7
- v-bind="$attrs"
8
- />
9
- </template>
10
-
11
- <script lang="ts">
12
- import { computed, defineComponent, type PropType } from "vue";
13
-
14
- import { AggregationType } from "@dative-gpi/foundation-shared-domain/enums";
15
-
16
- import {aggregationTypeLabel, getEnumEntries} from "../../utils";
17
-
18
- import FSAutocompleteField from "@dative-gpi/foundation-shared-components/components/fields/FSAutocompleteField.vue";
19
-
20
- export default defineComponent({
21
- components: {
22
- FSAutocompleteField
23
- },
24
- props: {
25
- modelValue : {
26
- type: Number as PropType<AggregationType>,
27
- required: false
28
- },
29
- label : {
30
- type: String,
31
- required: false
32
- }
33
- },
34
- emits: ['update:modelValue'],
35
- setup() {
36
-
37
- const aggregationTypeItems = computed(()=>{
38
- return getEnumEntries(AggregationType).filter(f=>f.value != AggregationType.None).map((f)=>{
39
- return {
40
- id: f.value,
41
- label: aggregationTypeLabel(f.value)
42
- }
43
- })
44
- });
45
-
46
- return {
47
- aggregationTypeItems
48
- }
49
- }
50
- })
51
- </script>
@@ -1,48 +0,0 @@
1
- <template>
2
- <FSToggleSet
3
- :hideHeader="true"
4
- :values="axisTypeItems"
5
- :modelValue="modelValue"
6
- @update:modelValue="$emit('update:modelValue', $event)"
7
- v-bind="$attrs"
8
- />
9
- </template>
10
-
11
- <script lang="ts">
12
- import { computed, defineComponent, type PropType } from "vue";
13
-
14
- import {AxisType} from "@dative-gpi/foundation-shared-domain/enums";
15
-
16
- import {axisTypeLabel, getEnumEntries} from "../../utils";
17
-
18
- import FSToggleSet from "@dative-gpi/foundation-shared-components/components/FSToggleSet.vue";
19
-
20
-
21
- export default defineComponent({
22
- components: {
23
- FSToggleSet
24
- },
25
- props: {
26
- modelValue: {
27
- type: Number as PropType<AxisType>,
28
- required: false
29
- }
30
- },
31
- emits: ['update:modelValue'],
32
- setup() {
33
-
34
- const axisTypeItems = computed(()=>{
35
- return getEnumEntries(AxisType).map((f)=>{
36
- return {
37
- id: f.value,
38
- label: axisTypeLabel(f.value)
39
- }
40
- })
41
- });
42
-
43
- return {
44
- axisTypeItems
45
- }
46
- }
47
- })
48
- </script>
@@ -1,52 +0,0 @@
1
- <template>
2
- <FSAutocompleteField
3
- :label="label ?? $tr('ui.common.display-as','Display as')"
4
- :items="displayAsItems"
5
- :modelValue="modelValue"
6
- @update:modelValue="$emit('update:modelValue', $event)"
7
- v-bind="$attrs"
8
- />
9
- </template>
10
-
11
- <script lang="ts">
12
- import { computed, defineComponent, type PropType } from "vue";
13
-
14
- import {DisplayAs} from "@dative-gpi/foundation-shared-domain/enums";
15
-
16
- import FSAutocompleteField from "@dative-gpi/foundation-shared-components/components/fields/FSAutocompleteField.vue";
17
-
18
- import {displayAsLabel, getEnumEntries} from "../../utils";
19
-
20
- export default defineComponent({
21
- components: {
22
- FSAutocompleteField
23
- },
24
- props: {
25
- modelValue: {
26
- type: Number as PropType<DisplayAs>,
27
- required: false
28
- },
29
- label: {
30
- type: String,
31
- required: false
32
- }
33
-
34
- },
35
- emits: ['update:modelValue'],
36
- setup() {
37
-
38
- const displayAsItems = computed(()=>{
39
- return getEnumEntries(DisplayAs).filter(f=>f.value != DisplayAs.None).map((f)=>{
40
- return {
41
- id: f.value,
42
- label: displayAsLabel(f.value)
43
- }
44
- })
45
- });
46
-
47
- return {
48
- displayAsItems,
49
- }
50
- }
51
- })
52
- </script>
@@ -1,53 +0,0 @@
1
- <template>
2
- <FSAutocompleteField
3
- :label="label ?? $tr('ui.common.filter-type','Filter type')"
4
- :toggleSet="true"
5
- :items="filterTypeItems"
6
- :modelValue="modelValue"
7
- @update:modelValue="$emit('update:modelValue', $event)"
8
- v-bind="$attrs"
9
- />
10
- </template>
11
-
12
- <script lang="ts">
13
- import { computed, defineComponent, type PropType } from "vue";
14
-
15
- import {FilterType} from "@dative-gpi/foundation-shared-domain/enums";
16
-
17
- import FSAutocompleteField from "@dative-gpi/foundation-shared-components/components/fields/FSAutocompleteField.vue";
18
-
19
- import {filterTypeLabel, getEnumEntries} from "../../utils";
20
-
21
- export default defineComponent({
22
- components: {
23
- FSAutocompleteField
24
- },
25
- props: {
26
- modelValue: {
27
- type: Number as PropType<FilterType>,
28
- required: false,
29
- default : FilterType.None
30
- },
31
- label: {
32
- type: String,
33
- required: false
34
- }
35
- },
36
- emits: ['update:modelValue'],
37
- setup() {
38
-
39
- const filterTypeItems = computed(()=>{
40
- return getEnumEntries(FilterType).filter(f=>f.value != FilterType.None).map((f)=>{
41
- return {
42
- id: f.value,
43
- label: filterTypeLabel(f.value)
44
- }
45
- })
46
- });
47
-
48
- return {
49
- filterTypeItems
50
- }
51
- }
52
- })
53
- </script>
@@ -1,52 +0,0 @@
1
- <template>
2
- <FSAutocompleteField
3
- :label="label ?? $tr('ui.common.heat-rule','Heat rule')"
4
- :items="heatmapRuleItems"
5
- :modelValue="modelValue"
6
- @update:modelValue="$emit('update:modelValue', $event)"
7
- v-bind="$attrs"
8
- />
9
- </template>
10
-
11
- <script lang="ts">
12
- import { computed, defineComponent, type PropType } from "vue";
13
-
14
- import {HeatmapRule} from "@dative-gpi/foundation-shared-domain/enums";
15
-
16
- import FSAutocompleteField from "@dative-gpi/foundation-shared-components/components/fields/FSAutocompleteField.vue";
17
-
18
- import {heatmapRuleLabel, getEnumEntries} from "../../utils";
19
-
20
- export default defineComponent({
21
- components: {
22
- FSAutocompleteField
23
- },
24
- props: {
25
- modelValue: {
26
- type: Number as PropType<HeatmapRule>,
27
- required: false
28
- },
29
- label: {
30
- type: String,
31
- required: false
32
- }
33
-
34
- },
35
- emits: ['update:modelValue'],
36
- setup() {
37
-
38
- const heatmapRuleItems = computed(()=>{
39
- return getEnumEntries(HeatmapRule).filter(f=>f.value != HeatmapRule.None).map((f)=>{
40
- return {
41
- id: f.value,
42
- label: heatmapRuleLabel(f.value)
43
- }
44
- })
45
- });
46
-
47
- return {
48
- heatmapRuleItems
49
- }
50
- }
51
- })
52
- </script>
@@ -1,51 +0,0 @@
1
- <template>
2
- <FSAutocompleteField
3
- :label="label ?? $tr('ui.common.operation-on','Operation on')"
4
- :items="operationOnItems"
5
- :modelValue="modelValue"
6
- @update:modelValue="$emit('update:modelValue', $event)"
7
- v-bind="$attrs"
8
- />
9
- </template>
10
-
11
- <script lang="ts">
12
- import { computed, defineComponent, type PropType } from "vue";
13
-
14
- import {OperationOn} from "@dative-gpi/foundation-shared-domain/enums";
15
-
16
- import FSAutocompleteField from "@dative-gpi/foundation-shared-components/components/fields/FSAutocompleteField.vue";
17
-
18
- import {operationOnLabel, getEnumEntries} from "../../utils";
19
-
20
- export default defineComponent({
21
- components: {
22
- FSAutocompleteField
23
- },
24
- props: {
25
- modelValue: {
26
- type: Number as PropType<OperationOn>,
27
- required: false
28
- },
29
- label : {
30
- type: String,
31
- required: false
32
- }
33
- },
34
- emits: ['update:modelValue'],
35
- setup() {
36
-
37
- const operationOnItems = computed(()=>{
38
- return getEnumEntries(OperationOn).filter(f=>f.value != OperationOn.None).map((f)=>{
39
- return {
40
- id: f.value,
41
- label: operationOnLabel(f.value)
42
- }
43
- })
44
- });
45
-
46
- return {
47
- operationOnItems
48
- }
49
- }
50
- })
51
- </script>
@@ -1,51 +0,0 @@
1
- <template>
2
- <FSAutocompleteField
3
- :label="label ?? $tr('ui.common.planning-type','Planning type')"
4
- :items="planningTypeItems"
5
- :modelValue="modelValue"
6
- @update:modelValue="$emit('update:modelValue', $event)"
7
- v-bind="$attrs"
8
- />
9
- </template>
10
-
11
- <script lang="ts">
12
- import { computed, defineComponent, type PropType } from "vue";
13
-
14
- import {PlanningType} from "@dative-gpi/foundation-shared-domain/enums";
15
-
16
- import FSAutocompleteField from "@dative-gpi/foundation-shared-components/components/fields/FSAutocompleteField.vue";
17
-
18
- import {planningTypeLabel, getEnumEntries} from "../../utils";
19
-
20
- export default defineComponent({
21
- components: {
22
- FSAutocompleteField
23
- },
24
- props: {
25
- modelValue: {
26
- type: Number as PropType<PlanningType>,
27
- required: false
28
- },
29
- label: {
30
- type: String,
31
- required: false
32
- }
33
- },
34
- emits: ['update:modelValue'],
35
- setup() {
36
-
37
- const planningTypeItems = computed(()=>{
38
- return getEnumEntries(PlanningType).filter(f=>f.value != PlanningType.None).map((f)=>{
39
- return {
40
- id: f.value,
41
- label: planningTypeLabel(f.value)
42
- }
43
- })
44
- });
45
-
46
- return {
47
- planningTypeItems
48
- }
49
- }
50
- })
51
- </script>
@@ -1,59 +0,0 @@
1
- <template>
2
- <FSSelectField
3
- :items="entityTypes"
4
- :clearable="false"
5
- :modelValue="$props.modelValue"
6
- @update:modelValue="$emit('update:modelValue', $event)"
7
- v-bind="$attrs"
8
- />
9
- </template>
10
-
11
- <script lang="ts">
12
- import type { PropType} from "vue";
13
- import { computed, defineComponent } from "vue";
14
-
15
- import { useTranslations as useTranslationsProvider } from "@dative-gpi/bones-ui/composables";
16
- import { EntityType } from "@dative-gpi/foundation-shared-domain/enums";
17
-
18
- import FSSelectField from "@dative-gpi/foundation-shared-components/components/fields/FSSelectField.vue";
19
-
20
- export default defineComponent({
21
- name: "FSSelectEntityType",
22
- components: {
23
- FSSelectField
24
- },
25
- props: {
26
- modelValue: {
27
- type: Number as PropType<EntityType>,
28
- required: false,
29
- default: EntityType.Device
30
- },
31
- useNone: {
32
- type: Boolean,
33
- required: false,
34
- default: false
35
- }
36
- },
37
- emits: ["update:modelValue"],
38
- setup(props) {
39
- const { $tr } = useTranslationsProvider();
40
-
41
- const entityTypes = computed((): { id: EntityType; label: string }[] => {
42
- const items = [
43
- { id: EntityType.Model, label: $tr("ui.entity-type.models", "Models") },
44
- { id: EntityType.Device, label: $tr("ui.entity-type.devices", "Devices") },
45
- { id: EntityType.Group, label: $tr("ui.entity-type.groups", "Groups") },
46
- { id: EntityType.Location, label: $tr("ui.entity-type.locations", "Locations") }
47
- ];
48
- if (props.useNone) {
49
- items.unshift({ id: EntityType.None, label: $tr("ui.entity-type.none", "None") });
50
- }
51
- return items;
52
- });
53
-
54
- return {
55
- entityTypes
56
- };
57
- }
58
- });
59
- </script>
@@ -1,51 +0,0 @@
1
- <template>
2
- <FSAutocompleteField
3
- :label="label ?? $tr('ui.common.serie-type','Serie type')"
4
- :items="serieTypeItems"
5
- :modelValue="modelValue"
6
- @update:modelValue="$emit('update:modelValue', $event)"
7
- v-bind="$attrs"
8
- />
9
- </template>
10
-
11
- <script lang="ts">
12
- import { computed, defineComponent, type PropType } from "vue";
13
-
14
- import {SerieType} from "@dative-gpi/foundation-shared-domain/enums";
15
-
16
- import FSAutocompleteField from "@dative-gpi/foundation-shared-components/components/fields/FSAutocompleteField.vue";
17
-
18
- import {serieTypeLabel, getEnumEntries} from "../../utils";
19
-
20
- export default defineComponent({
21
- components: {
22
- FSAutocompleteField
23
- },
24
- props: {
25
- modelValue: {
26
- type: Number as PropType<SerieType>,
27
- required: false
28
- },
29
- label: {
30
- type: String,
31
- required: false
32
- }
33
- },
34
- emits: ['update:modelValue'],
35
- setup() {
36
-
37
- const serieTypeItems = computed(()=>{
38
- return getEnumEntries(SerieType).filter(f=>f.value != SerieType.None).map((f)=>{
39
- return {
40
- id: f.value,
41
- label: serieTypeLabel(f.value)
42
- }
43
- })
44
- });
45
-
46
- return {
47
- serieTypeItems
48
- }
49
- }
50
- })
51
- </script>