@dative-gpi/foundation-shared-components 1.0.70 → 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 (296) hide show
  1. package/assets/images/map/snow.png +0 -0
  2. package/components/FSAccordionPanel.vue +40 -21
  3. package/components/FSBreadcrumbs.vue +21 -12
  4. package/components/FSButton.vue +11 -9
  5. package/components/FSCalendar.vue +50 -12
  6. package/components/FSCalendarTwin.vue +95 -43
  7. package/components/FSCard.vue +61 -9
  8. package/components/FSCardPlaceholder.vue +8 -5
  9. package/components/FSCheckbox.vue +5 -4
  10. package/components/FSChip.vue +73 -45
  11. package/components/FSChipGroup.vue +69 -0
  12. package/components/FSClickable.vue +11 -9
  13. package/components/FSClock.vue +30 -12
  14. package/components/FSCol.vue +11 -5
  15. package/components/FSDialog.vue +2 -1
  16. package/components/FSDialogContent.vue +12 -11
  17. package/components/FSDialogForm.vue +22 -2
  18. package/components/FSDialogFormBody.vue +50 -31
  19. package/components/FSDialogMenu.vue +17 -8
  20. package/components/FSDialogMultiFormBody.vue +23 -13
  21. package/components/FSDialogRemove.vue +7 -8
  22. package/components/FSDialogSubmit.vue +20 -11
  23. package/components/FSEditImageUI.vue +13 -5
  24. package/components/FSFadeOut.vue +53 -21
  25. package/components/FSForm.vue +10 -8
  26. package/components/FSGrid.vue +0 -1
  27. package/components/FSIcon.vue +2 -2
  28. package/components/FSIconCard.vue +68 -12
  29. package/components/FSInformationsMenu.vue +142 -0
  30. package/components/FSInstantPicker.vue +268 -0
  31. package/components/FSLink.vue +25 -9
  32. package/components/FSLoader.vue +28 -10
  33. package/components/FSMenu.vue +47 -0
  34. package/components/FSOptionGroup.vue +8 -8
  35. package/components/FSOptionItem.vue +4 -4
  36. package/components/FSOptionsMenu.vue +165 -0
  37. package/components/FSPagination.vue +1 -1
  38. package/components/FSPlayButtons.vue +72 -0
  39. package/components/FSProgressBar.vue +94 -0
  40. package/components/FSRadio.vue +5 -4
  41. package/components/FSRadioGroup.vue +3 -3
  42. package/components/FSRangePicker.vue +275 -0
  43. package/components/FSRangeSlider.vue +84 -0
  44. package/components/FSRouterLink.vue +42 -0
  45. package/components/FSSlideGroup.vue +9 -7
  46. package/components/FSSlider.vue +44 -79
  47. package/components/FSSpan.vue +22 -8
  48. package/components/FSSwitch.vue +44 -48
  49. package/components/FSTab.vue +15 -13
  50. package/components/FSTabs.vue +5 -2
  51. package/components/FSTag.vue +3 -3
  52. package/components/FSTagGroup.vue +6 -4
  53. package/components/FSText.vue +21 -8
  54. package/components/FSToggleSet.vue +7 -7
  55. package/components/FSTreeView.vue +107 -0
  56. package/components/FSWindow.vue +122 -5
  57. package/components/agenda/FSAgenda.vue +26 -7
  58. package/components/agenda/FSAgendaDialogCalendar.vue +2 -2
  59. package/components/agenda/FSAgendaHeader.vue +35 -10
  60. package/components/agenda/FSAgendaHorizontalEvent.vue +18 -6
  61. package/components/agenda/FSAgendaHoursRow.vue +48 -8
  62. package/components/agenda/FSAgendaVerticalEvent.vue +1 -1
  63. package/components/agenda/FSDayAgenda.vue +0 -1
  64. package/components/agenda/FSMonthAgenda.vue +1 -6
  65. package/components/agenda/FSSelectAgendaMode.vue +2 -2
  66. package/components/agenda/FSWeekAgenda.vue +5 -10
  67. package/components/autocompletes/FSAutoCompleteAddress.vue +25 -20
  68. package/components/autocompletes/FSAutocompleteLanguage.vue +7 -1
  69. package/components/autocompletes/FSAutocompleteTimeZone.vue +7 -1
  70. package/components/buttons/FSButtonAdd.vue +1 -1
  71. package/components/buttons/FSButtonAddLabel.vue +1 -1
  72. package/components/buttons/FSButtonCancel.vue +1 -1
  73. package/components/buttons/FSButtonCancelLabel.vue +1 -1
  74. package/components/buttons/FSButtonCheckbox.vue +4 -4
  75. package/components/buttons/FSButtonCopy.vue +1 -1
  76. package/components/buttons/FSButtonCopyLabel.vue +1 -1
  77. package/components/buttons/FSButtonDuplicate.vue +1 -1
  78. package/components/buttons/FSButtonDuplicateLabel.vue +1 -1
  79. package/components/buttons/FSButtonEdit.vue +1 -1
  80. package/components/buttons/FSButtonEditLabel.vue +1 -1
  81. package/components/buttons/FSButtonFile.vue +1 -1
  82. package/components/buttons/FSButtonFileLabel.vue +1 -1
  83. package/components/buttons/FSButtonNext.vue +1 -1
  84. package/components/buttons/FSButtonNextLabel.vue +1 -1
  85. package/components/buttons/FSButtonPrevious.vue +1 -1
  86. package/components/buttons/FSButtonPreviousLabel.vue +1 -1
  87. package/components/buttons/FSButtonRedo.vue +1 -1
  88. package/components/buttons/FSButtonRedoLabel.vue +1 -1
  89. package/components/buttons/FSButtonRemove.vue +1 -1
  90. package/components/buttons/FSButtonRemoveLabel.vue +1 -1
  91. package/components/buttons/FSButtonSave.vue +1 -1
  92. package/components/buttons/FSButtonSaveLabel.vue +1 -1
  93. package/components/buttons/FSButtonSearch.vue +1 -1
  94. package/components/buttons/FSButtonSearchLabel.vue +1 -1
  95. package/components/buttons/FSButtonUndo.vue +1 -1
  96. package/components/buttons/FSButtonUndoLabel.vue +1 -1
  97. package/components/buttons/FSButtonUpdate.vue +1 -1
  98. package/components/buttons/FSButtonUpdateLabel.vue +1 -1
  99. package/components/buttons/FSButtonValidate.vue +1 -1
  100. package/components/buttons/FSButtonValidateLabel.vue +1 -1
  101. package/components/calendar/FSSimpleCalendar.vue +145 -0
  102. package/components/calendar/FSSimpleCalendarHeader.vue +60 -0
  103. package/components/calendar/FSSimpleMonthSelector.vue +138 -0
  104. package/components/carousels/FSCarousel.vue +23 -0
  105. package/components/carousels/FSCarouselItem.vue +14 -0
  106. package/components/deviceOrganisations/FSConnectivity.vue +5 -3
  107. package/components/deviceOrganisations/FSStatus.vue +5 -3
  108. package/components/deviceOrganisations/FSStatusCard.vue +7 -9
  109. package/components/deviceOrganisations/FSStatusRichCard.vue +171 -0
  110. package/components/deviceOrganisations/FSWorstAlert.vue +24 -36
  111. package/components/deviceOrganisations/FSWorstAlertCard.vue +8 -47
  112. package/components/fields/FSAutocompleteField.vue +85 -82
  113. package/components/fields/FSAutocompleteTag.vue +1 -1
  114. package/components/fields/FSBaseField.vue +42 -25
  115. package/components/fields/FSClosableSearchField.vue +83 -0
  116. package/components/fields/FSColorField.vue +12 -10
  117. package/components/fields/FSCommentField.vue +28 -16
  118. package/components/fields/FSDateField.vue +13 -10
  119. package/components/fields/FSDateRangeField.vue +6 -5
  120. package/components/fields/FSDateTimeField.vue +14 -11
  121. package/components/fields/FSDateTimeRangeDialog.vue +160 -0
  122. package/components/fields/FSDateTimeRangeField.vue +23 -115
  123. package/components/fields/FSEntityFieldUI.vue +19 -16
  124. package/components/fields/FSGradientField.vue +5 -5
  125. package/components/fields/FSIconField.vue +16 -9
  126. package/components/fields/FSMapAddressField.vue +187 -0
  127. package/components/fields/FSNumberField.vue +8 -4
  128. package/components/fields/FSPasswordField.vue +7 -7
  129. package/components/fields/FSPoliciesValidationField.vue +101 -0
  130. package/components/fields/FSRichTextField.vue +78 -58
  131. package/components/fields/FSSearchField.vue +9 -115
  132. package/components/fields/FSSelectField.vue +69 -71
  133. package/components/fields/FSTagField.vue +9 -9
  134. package/components/fields/FSTermField.vue +69 -46
  135. package/components/fields/FSTextArea.vue +17 -11
  136. package/components/fields/FSTextField.vue +15 -10
  137. package/components/fields/FSTimeField.vue +14 -10
  138. package/components/fields/FSTimeRangeField.vue +117 -187
  139. package/components/fields/FSTimeStepField.vue +5 -5
  140. package/components/fields/FSTranslateField.vue +10 -10
  141. package/components/fields/FSTranslateRichTextField.vue +41 -20
  142. package/components/fields/FSTranslateTextArea.vue +10 -10
  143. package/components/fields/FSTreeViewField.vue +21 -19
  144. package/components/fields/periodicField/FSPeriodicDailyField.vue +7 -7
  145. package/components/fields/periodicField/FSPeriodicField.vue +15 -15
  146. package/components/fields/periodicField/FSPeriodicMonthlyField.vue +16 -16
  147. package/components/fields/periodicField/FSPeriodicWeeklyField.vue +28 -18
  148. package/components/fields/periodicField/FSPeriodicYearlyField.vue +12 -12
  149. package/components/lists/FSDataIteratorItem.vue +23 -67
  150. package/components/lists/FSDataTableUI.vue +194 -119
  151. package/components/lists/FSFilterButton.vue +14 -16
  152. package/components/lists/FSHeaderButton.vue +11 -9
  153. package/components/lists/FSHiddenButton.vue +9 -9
  154. package/components/lists/FSLoadDataTable.vue +10 -7
  155. package/components/lists/FSSimpleList.vue +95 -88
  156. package/components/lists/FSSimpleListItem.vue +131 -0
  157. package/components/map/FSMap.vue +144 -158
  158. package/components/map/FSMapFeatureGroup.vue +7 -1
  159. package/components/map/FSMapLayerButton.vue +3 -3
  160. package/components/map/FSMapMarker.vue +103 -42
  161. package/components/map/FSMapMarkerClusterGroup.vue +32 -7
  162. package/components/map/FSMapOverlay.vue +44 -24
  163. package/components/map/FSMapPolygon.vue +16 -4
  164. package/components/map/FSMapTileLayer.vue +26 -9
  165. package/components/map/layers.ts +0 -0
  166. package/components/selects/FSSelectAutoRefresh.vue +8 -8
  167. package/components/selects/FSSelectDashboardVariableType.vue +4 -3
  168. package/components/selects/FSSelectDateSetting.vue +2 -2
  169. package/components/selects/FSSelectDays.vue +8 -8
  170. package/components/selects/FSSelectListMode.vue +2 -2
  171. package/components/selects/FSSelectMapLayer.vue +68 -0
  172. package/components/selects/FSSelectMonths.vue +13 -13
  173. package/components/selects/chartSelectors/FSAggregationSelector.vue +52 -0
  174. package/components/selects/chartSelectors/FSAxisTypeSelector.vue +49 -0
  175. package/components/selects/chartSelectors/FSDisplayAsSelector.vue +53 -0
  176. package/components/selects/chartSelectors/FSFilterTypeSelector.vue +54 -0
  177. package/components/selects/chartSelectors/FSHeatmapRuleSelector.vue +54 -0
  178. package/components/selects/chartSelectors/FSOperationOnSelector.vue +53 -0
  179. package/components/selects/chartSelectors/FSPlanningTypeSelector.vue +53 -0
  180. package/components/selects/chartSelectors/FSSelectEntityType.vue +59 -0
  181. package/components/selects/chartSelectors/FSSerieTypeSelector.vue +53 -0
  182. package/components/tiles/FSAlertTileUI.vue +90 -0
  183. package/components/tiles/FSChartTileUI.vue +61 -52
  184. package/components/tiles/FSCommentTileUI.vue +38 -13
  185. package/components/tiles/FSDashboardOrganisationTypeTileUI.vue +14 -2
  186. package/components/tiles/FSDashboardShallowTileUI.vue +14 -2
  187. package/components/tiles/FSDeviceOrganisationTileUI.vue +0 -6
  188. package/components/tiles/FSEntityCountBadge.vue +83 -0
  189. package/components/tiles/FSFolderTileUI.vue +38 -4
  190. package/components/tiles/FSGroupTileUI.vue +32 -136
  191. package/components/tiles/FSGroupingTileUI.vue +52 -0
  192. package/components/tiles/FSLoadTile.vue +16 -10
  193. package/components/tiles/FSLocationTileUI.vue +50 -80
  194. package/components/tiles/FSServiceAccountOrganisationTileUI.vue +0 -6
  195. package/components/tiles/FSSimpleTileUI.vue +32 -27
  196. package/components/tiles/FSTile.vue +46 -39
  197. package/components/tiles/FSUserOrganisationTileUI.vue +1 -7
  198. package/components/tiles/FSUserTileUI.vue +119 -0
  199. package/components/toggleSets/FSToggleSetPosition.vue +1 -1
  200. package/components/views/FSBaseView.vue +64 -0
  201. package/components/views/FSEntityView.vue +12 -146
  202. package/components/views/FSSimpleView.vue +29 -0
  203. package/components/views/desktop/FSBaseDefaultDesktopView.vue +135 -0
  204. package/components/views/desktop/FSBaseDesktopView.vue +53 -0
  205. package/components/views/desktop/FSBaseEntityDesktopView.vue +211 -0
  206. package/components/views/mobile/FSBaseDefaultMobileView.vue +133 -0
  207. package/components/views/mobile/FSBaseEntityMobileView.vue +206 -0
  208. package/components/views/mobile/FSBaseMobileView.vue +53 -0
  209. package/composables/index.ts +1 -1
  210. package/composables/useAddress.ts +40 -8
  211. package/composables/useBreakpoints.ts +40 -4
  212. package/composables/useColors.ts +16 -7
  213. package/composables/useMapLayers.ts +69 -0
  214. package/composables/useSlots.ts +2 -1
  215. package/models/colors.ts +2 -1
  216. package/models/deviceAlerts.ts +1 -0
  217. package/models/index.ts +0 -1
  218. package/models/map.ts +12 -10
  219. package/models/rules.ts +5 -2
  220. package/models/tables.ts +2 -1
  221. package/models/variableNode.ts +8 -5
  222. package/package.json +5 -5
  223. package/styles/components/fs_agenda.scss +4 -0
  224. package/styles/components/fs_agenda_event.scss +1 -1
  225. package/styles/components/fs_agenda_hours_row.scss +0 -8
  226. package/styles/components/fs_autocomplete_field.scss +0 -13
  227. package/styles/components/fs_breadcrumbs.scss +18 -36
  228. package/styles/components/fs_button.scss +7 -5
  229. package/styles/components/fs_calendar.scss +1 -0
  230. package/styles/components/fs_card.scss +9 -0
  231. package/styles/components/fs_chip.scss +13 -7
  232. package/styles/components/fs_clickable.scss +16 -23
  233. package/styles/components/fs_clock.scss +0 -10
  234. package/styles/components/fs_col.scss +1 -1
  235. package/styles/components/fs_color_field.scss +0 -4
  236. package/styles/components/fs_data_table.scss +6 -9
  237. package/styles/components/fs_dialog.scss +4 -10
  238. package/styles/components/fs_dialog_menu.scss +4 -2
  239. package/styles/components/fs_draggable.scss +0 -5
  240. package/styles/components/fs_fade_out.scss +10 -2
  241. package/styles/components/fs_filter_button.scss +1 -1
  242. package/styles/components/fs_hidden_button.scss +2 -7
  243. package/styles/components/fs_image_card.scss +6 -4
  244. package/styles/components/fs_magic_config_field.scss +1 -2
  245. package/styles/components/fs_map.scss +57 -17
  246. package/styles/components/fs_meta_field.scss +3 -5
  247. package/styles/components/fs_password_field.scss +4 -2
  248. package/styles/components/fs_progress_bar.scss +14 -0
  249. package/styles/components/fs_radio.scss +0 -11
  250. package/styles/components/fs_rich_text_field.scss +1 -10
  251. package/styles/components/fs_select_field.scss +4 -13
  252. package/styles/components/fs_slide_group.scss +3 -1
  253. package/styles/components/fs_slider.scss +0 -40
  254. package/styles/components/fs_span.scss +17 -5
  255. package/styles/components/fs_status_rich_card.scss +6 -0
  256. package/styles/components/fs_tabs.scss +18 -37
  257. package/styles/components/fs_tag.scss +8 -22
  258. package/styles/components/fs_text_area.scss +2 -21
  259. package/styles/components/fs_tile.scss +0 -19
  260. package/styles/components/fs_window.scss +3 -1
  261. package/styles/components/fs_wrap_group.scss +3 -0
  262. package/styles/components/index.scss +2 -6
  263. package/styles/globals/index.scss +1 -5
  264. package/styles/globals/overrides.scss +26 -44
  265. package/styles/globals/scrollbars.scss +8 -0
  266. package/styles/globals/text_fonts.scss +18 -66
  267. package/styles/globals/touchscreen.scss +2 -2
  268. package/tools/alertsTools.ts +94 -18
  269. package/tools/chartsTools.ts +156 -16
  270. package/tools/index.ts +1 -0
  271. package/tools/reportsTools.ts +38 -0
  272. package/tools/timeRangeTools.ts +99 -40
  273. package/utils/badge.ts +9 -5
  274. package/utils/index.ts +2 -0
  275. package/utils/leafletMarkers.ts +4 -4
  276. package/utils/operations.ts +108 -0
  277. package/utils/picker.ts +40 -0
  278. package/utils/sort.ts +2 -2
  279. package/utils/time.ts +13 -13
  280. package/components/fields/FSMagicConfigField.vue +0 -163
  281. package/components/fields/FSMagicField.vue +0 -193
  282. package/components/fields/FSTimeSlotField.vue +0 -250
  283. package/components/views/FSEntityHeader.vue +0 -343
  284. package/components/views/FSListHeader.vue +0 -83
  285. package/components/views/FSListView.vue +0 -83
  286. package/components/views/FSSkeletonView.vue +0 -100
  287. package/composables/useMagicFieldProvider.ts +0 -23
  288. package/models/magicFields.ts +0 -10
  289. package/styles/components/fs_data_iterator_item.scss +0 -33
  290. package/styles/components/fs_icon_field.scss +0 -12
  291. package/styles/components/fs_search_field.scss +0 -3
  292. package/styles/components/fs_tag_field.scss +0 -8
  293. package/styles/components/fs_time_field.scss +0 -12
  294. package/styles/components/fs_timeslot_field.scss +0 -12
  295. package/styles/globals/breakpoints.scss +0 -20
  296. package/styles/globals/fixes.scss +0 -5
@@ -4,7 +4,7 @@
4
4
  :description="$props.description"
5
5
  :hideHeader="$props.hideHeader"
6
6
  :required="$props.required"
7
- :editable="$props.editable"
7
+ :disabled="$props.disabled"
8
8
  :messages="messages"
9
9
  >
10
10
  <template
@@ -26,8 +26,8 @@
26
26
  :hideDetails="true"
27
27
  :noResize="true"
28
28
  :autoGrow="$props.autoGrow"
29
- :readonly="!$props.editable"
30
- :clearable="$props.clearable && $props.editable && !!$props.modelValue"
29
+ :disabled="$props.disabled"
30
+ :clearable="$props.clearable && !$props.disabled && !!$props.modelValue"
31
31
  :rules="$props.rules"
32
32
  :validateOn="validateOn"
33
33
  :modelValue="$props.modelValue"
@@ -50,7 +50,7 @@
50
50
  align="center-center"
51
51
  >
52
52
  <FSButton
53
- v-if="$props.clearable && $props.editable && !!$props.modelValue"
53
+ v-if="$props.clearable && !$props.disabled && !!$props.modelValue"
54
54
  icon="mdi-close"
55
55
  variant="icon"
56
56
  :color="ColorEnum.Dark"
@@ -128,16 +128,16 @@ export default defineComponent({
128
128
  required: false,
129
129
  default: true
130
130
  },
131
- editable: {
131
+ disabled: {
132
132
  type: Boolean,
133
133
  required: false,
134
- default: true
134
+ default: false
135
135
  }
136
136
  },
137
137
  emits: ["update:modelValue"],
138
138
  setup(props) {
139
+ const { fontStyles, isMobileSized } = useBreakpoints();
139
140
  const { validateOn, getMessages } = useRules();
140
- const { isMobileSized } = useBreakpoints();
141
141
  const { getColors } = useColors();
142
142
  const { slots } = useSlots();
143
143
 
@@ -152,7 +152,7 @@ export default defineComponent({
152
152
  let fieldHeight: string | undefined = undefined;
153
153
  if (!props.autoGrow) {
154
154
  const base = isMobileSized.value ? 34 : 38;
155
- const row = isMobileSized.value ? 14 : 16;
155
+ const row = isMobileSized.value ? 18 : 20;
156
156
  if (props.rows > 1) {
157
157
  height = `${base + (props.rows - 1) * row}px`;
158
158
  }
@@ -161,14 +161,17 @@ export default defineComponent({
161
161
  }
162
162
  fieldHeight = `${props.rows * row}px`;
163
163
  }
164
- if (!props.editable) {
164
+ if (props.disabled) {
165
165
  return {
166
166
  "--fs-text-area-cursor" : "default",
167
167
  "--fs-text-area-border-color" : lights.base,
168
168
  "--fs-text-area-color" : lights.dark,
169
169
  "--fs-text-area-active-border-color": lights.base,
170
170
  "--fs-text-area-height" : height,
171
- "--fs-text-area-field-height" : fieldHeight
171
+ "--fs-text-area-field-height" : fieldHeight,
172
+ "--fs-text-area-padding" : isMobileSized.value ? "10px 16px" : "11px 16px",
173
+ "--fs-base-field-input-height" : isMobileSized.value ? "34px" : "38px",
174
+ ...fontStyles.value
172
175
  };
173
176
  }
174
177
  return {
@@ -178,7 +181,10 @@ export default defineComponent({
178
181
  "--fs-text-area-active-border-color": darks.dark,
179
182
  "--fs-text-area-error-border-color" : errors.base,
180
183
  "--fs-text-area-height" : height,
181
- "--fs-text-area-field-height" : fieldHeight
184
+ "--fs-text-area-field-height" : fieldHeight,
185
+ "--fs-text-area-padding" : isMobileSized.value ? "10px 16px" : "11px 16px",
186
+ "--fs-base-field-input-height" : isMobileSized.value ? "34px" : "38px",
187
+ ...fontStyles.value
182
188
  };
183
189
  });
184
190
 
@@ -4,7 +4,7 @@
4
4
  :description="$props.description"
5
5
  :hideHeader="$props.hideHeader"
6
6
  :required="$props.required"
7
- :editable="$props.editable"
7
+ :disabled="$props.disabled"
8
8
  :messages="messages"
9
9
  >
10
10
  <template
@@ -32,8 +32,8 @@
32
32
  :type="$props.type"
33
33
  :persistentClear="true"
34
34
  :hideDetails="true"
35
- :readonly="!$props.editable"
36
- :clearable="$props.clearable && $props.editable && !!$props.modelValue"
35
+ :disabled="$props.disabled"
36
+ :clearable="$props.clearable && !$props.disabled && !!$props.modelValue"
37
37
  :rules="$props.rules"
38
38
  :validateOn="validateOn"
39
39
  :modelValue="$props.modelValue"
@@ -56,7 +56,7 @@
56
56
  name="clear"
57
57
  >
58
58
  <FSButton
59
- v-if="$props.clearable && $props.editable && !!$props.modelValue"
59
+ v-if="$props.clearable && !$props.disabled && !!$props.modelValue"
60
60
  icon="mdi-close"
61
61
  variant="icon"
62
62
  :color="ColorEnum.Dark"
@@ -71,7 +71,7 @@
71
71
  <script lang="ts">
72
72
  import { computed, defineComponent, type PropType, type StyleValue } from "vue";
73
73
 
74
- import { useColors, useRules, useSlots } from "@dative-gpi/foundation-shared-components/composables";
74
+ import { useBreakpoints, useColors, useRules, useSlots } from "@dative-gpi/foundation-shared-components/composables";
75
75
  import { ColorEnum } from "@dative-gpi/foundation-shared-components/models";
76
76
 
77
77
  import FSBaseField from "./FSBaseField.vue";
@@ -129,14 +129,15 @@ export default defineComponent({
129
129
  required: false,
130
130
  default: true
131
131
  },
132
- editable: {
132
+ disabled: {
133
133
  type: Boolean,
134
134
  required: false,
135
- default: true
135
+ default: false
136
136
  }
137
137
  },
138
138
  emits: ["update:modelValue"],
139
139
  setup(props) {
140
+ const { fontStyles, isMobileSized } = useBreakpoints();
140
141
  const { validateOn, getMessages } = useRules();
141
142
  const { getColors } = useColors();
142
143
  const { slots } = useSlots();
@@ -149,12 +150,14 @@ export default defineComponent({
149
150
  const darks = getColors(ColorEnum.Dark);
150
151
 
151
152
  const style = computed((): StyleValue => {
152
- if (!props.editable) {
153
+ if (props.disabled) {
153
154
  return {
154
155
  "--fs-text-field-cursor" : "default",
155
156
  "--fs-text-field-border-color" : lights.base,
156
157
  "--fs-text-field-color" : lights.dark,
157
- "--fs-text-field-active-border-color": lights.base
158
+ "--fs-text-field-active-border-color": lights.base,
159
+ "--fs-base-field-input-height" : isMobileSized.value ? "34px" : "38px",
160
+ ...fontStyles.value
158
161
  };
159
162
  }
160
163
  return {
@@ -162,7 +165,9 @@ export default defineComponent({
162
165
  "--fs-text-field-border-color" : lights.dark,
163
166
  "--fs-text-field-color" : darks.base,
164
167
  "--fs-text-field-active-border-color": darks.dark,
165
- "--fs-text-field-error-border-color" : errors.base
168
+ "--fs-text-field-error-border-color" : errors.base,
169
+ "--fs-base-field-input-height" : isMobileSized.value ? "34px" : "38px",
170
+ ...fontStyles.value
166
171
  };
167
172
  });
168
173
 
@@ -3,14 +3,14 @@
3
3
  :description="$props.description"
4
4
  :hideHeader="$props.hideHeader"
5
5
  :required="$props.required"
6
- :editable="$props.editable"
6
+ :disabled="$props.disabled"
7
7
  :label="$props.label"
8
8
  :messages="messages"
9
9
  >
10
10
  <FSRow>
11
11
  <FSNumberField
12
12
  :validationValue="$props.modelValue"
13
- :editable="$props.editable"
13
+ :disabled="$props.disabled"
14
14
  :validateOn="validateOn"
15
15
  :rules="$props.rules"
16
16
  :hideHeader="true"
@@ -31,7 +31,7 @@
31
31
  </FSNumberField>
32
32
  <FSSelectField
33
33
  class="fs-time-field-select"
34
- :editable="$props.editable"
34
+ :disabled="$props.disabled"
35
35
  :hideHeader="true"
36
36
  :clearable="false"
37
37
  :items="timeScale"
@@ -53,7 +53,7 @@
53
53
  </template>
54
54
 
55
55
  <script lang="ts">
56
- import { computed, defineComponent, type PropType, ref, watch } from "vue";
56
+ import { computed, defineComponent, type PropType, ref, watch, type StyleValue } from "vue";
57
57
 
58
58
  import { useColors, useRules, useSlots } from "@dative-gpi/foundation-shared-components/composables";
59
59
  import { getTimeScaleIndex, timeScale } from "@dative-gpi/foundation-shared-components/utils";
@@ -108,10 +108,10 @@ export default defineComponent({
108
108
  required: false,
109
109
  default: null
110
110
  },
111
- editable: {
111
+ disabled: {
112
112
  type: Boolean,
113
113
  required: false,
114
- default: true
114
+ default: false
115
115
  }
116
116
  },
117
117
  emits: ["update:modelValue"],
@@ -131,7 +131,7 @@ export default defineComponent({
131
131
  const selectedUnit = ref(timeScale[0]);
132
132
 
133
133
  const style = computed((): StyleValue => {
134
- if (!props.editable) {
134
+ if (props.disabled) {
135
135
  return {
136
136
  "--fs-time-field-cursor" : "default",
137
137
  "--fs-time-field-border-color" : lights.base,
@@ -153,14 +153,14 @@ export default defineComponent({
153
153
  return Object.keys(slots).filter(k => k.startsWith("number-")).reduce((acc, key) => {
154
154
  acc[key.substring("number-".length)] = slots[key];
155
155
  return acc;
156
- }, {});
156
+ }, {} as Record<string, any>);
157
157
  });
158
158
 
159
159
  const selectSlots = computed((): any => {
160
160
  return Object.keys(slots).filter(k => k.startsWith("select-")).reduce((acc, key) => {
161
161
  acc[key.substring("select-".length)] = slots[key];
162
162
  return acc;
163
- }, {});
163
+ }, {} as Record<string, any>);
164
164
  });
165
165
 
166
166
  const messages = computed((): string[] => props.messages ?? getMessages(props.modelValue, props.rules));
@@ -171,7 +171,11 @@ export default defineComponent({
171
171
  };
172
172
 
173
173
  const onSubmitTimeScale = (value: number): void => {
174
- selectedUnit.value = timeScale.find((item) => item.id === value);
174
+ const newUnit = timeScale.find((item) => item.id === value);
175
+ if(!newUnit) {
176
+ return;
177
+ }
178
+ selectedUnit.value = newUnit;
175
179
  emit("update:modelValue", innerTime.value * selectedUnit.value.id);
176
180
  };
177
181