@dative-gpi/foundation-shared-components 0.1.120 → 1.0.1

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 (197) hide show
  1. package/assets/images/map/imagery.png +0 -0
  2. package/assets/images/map/map.png +0 -0
  3. package/components/FSAccordion.vue +2 -1
  4. package/components/FSAccordionPanel.vue +20 -1
  5. package/components/FSBadge.vue +7 -3
  6. package/components/FSBreadcrumbs.vue +4 -2
  7. package/components/FSButton.vue +15 -8
  8. package/components/FSCalendar.vue +5 -2
  9. package/components/FSCalendarTwin.vue +6 -3
  10. package/components/FSCard.vue +4 -2
  11. package/components/FSCardPlaceholder.vue +80 -0
  12. package/components/FSCheckbox.vue +10 -7
  13. package/components/FSChip.vue +4 -2
  14. package/components/FSClickable.vue +5 -3
  15. package/components/FSClock.vue +18 -4
  16. package/components/FSCol.vue +12 -5
  17. package/components/FSColor.vue +4 -2
  18. package/components/FSColorIcon.vue +5 -3
  19. package/components/FSDialog.vue +28 -87
  20. package/components/FSDialogContent.vue +133 -0
  21. package/components/FSDialogForm.vue +25 -236
  22. package/components/FSDialogFormBody.vue +273 -0
  23. package/components/FSDialogMenu.vue +5 -2
  24. package/components/FSDialogMultiForm.vue +21 -197
  25. package/components/FSDialogMultiFormBody.vue +231 -0
  26. package/components/FSDialogSubmit.vue +4 -2
  27. package/components/FSDivider.vue +6 -4
  28. package/components/FSEditImage.vue +16 -9
  29. package/components/FSErrorToast.vue +2 -1
  30. package/components/FSFadeOut.vue +1 -1
  31. package/components/FSForm.vue +7 -7
  32. package/components/FSGrid.vue +4 -2
  33. package/components/FSGridMosaic.vue +3 -2
  34. package/components/FSIcon.vue +3 -2
  35. package/components/FSIconCard.vue +10 -3
  36. package/components/FSIconCheck.vue +2 -1
  37. package/components/FSIconFlag.vue +2 -1
  38. package/components/FSImage.vue +2 -1
  39. package/components/FSImageCard.vue +72 -0
  40. package/components/FSLabel.vue +4 -2
  41. package/components/FSLink.vue +5 -3
  42. package/components/FSLoader.vue +2 -1
  43. package/components/FSOptionGroup.vue +28 -20
  44. package/components/FSOptionItem.vue +8 -18
  45. package/components/FSPagination.vue +4 -2
  46. package/components/FSRadio.vue +23 -11
  47. package/components/FSRadioGroup.vue +23 -10
  48. package/components/FSRow.vue +8 -1
  49. package/components/FSSlideGroup.vue +27 -6
  50. package/components/FSSlider.vue +4 -2
  51. package/components/FSSpan.vue +2 -1
  52. package/components/FSSwitch.vue +13 -10
  53. package/components/FSTab.vue +4 -2
  54. package/components/FSTabs.vue +5 -14
  55. package/components/FSTag.vue +11 -4
  56. package/components/FSTagGroup.vue +4 -2
  57. package/components/FSText.vue +4 -2
  58. package/components/FSToggleSet.vue +30 -17
  59. package/components/FSTooltip.vue +15 -4
  60. package/components/FSWindow.vue +2 -2
  61. package/components/FSWrapGroup.vue +2 -1
  62. package/components/autocompletes/FSAutoCompleteAddress.vue +104 -0
  63. package/components/autocompletes/FSAutocompleteLanguage.vue +18 -26
  64. package/components/autocompletes/FSAutocompleteTag.vue +138 -0
  65. package/components/autocompletes/FSAutocompleteTimeZone.vue +19 -30
  66. package/components/buttons/FSButtonAdd.vue +28 -0
  67. package/components/buttons/FSButtonAddIcon.vue +28 -0
  68. package/components/buttons/FSButtonAddLabel.vue +27 -0
  69. package/components/buttons/FSButtonAddMini.vue +27 -0
  70. package/components/buttons/FSButtonFile.vue +4 -4
  71. package/components/buttons/FSButtonFileIcon.vue +4 -4
  72. package/components/buttons/FSButtonFileLabel.vue +4 -4
  73. package/components/buttons/FSButtonFileMini.vue +4 -4
  74. package/components/deviceOrganisations/FSConnectivity.vue +3 -2
  75. package/components/deviceOrganisations/FSConnectivityCard.vue +3 -2
  76. package/components/deviceOrganisations/FSStatus.vue +3 -2
  77. package/components/deviceOrganisations/FSStatusCard.vue +3 -2
  78. package/components/deviceOrganisations/FSStatusesCarousel.vue +3 -2
  79. package/components/deviceOrganisations/FSStatusesRow.vue +3 -2
  80. package/components/deviceOrganisations/FSWorstAlert.vue +5 -4
  81. package/components/deviceOrganisations/FSWorstAlertCard.vue +4 -2
  82. package/components/fields/FSAutocompleteField.vue +219 -97
  83. package/components/fields/FSBaseField.vue +2 -1
  84. package/components/fields/FSColorField.vue +65 -94
  85. package/components/fields/FSDateField.vue +12 -25
  86. package/components/fields/FSDateRangeField.vue +15 -27
  87. package/components/fields/FSDateTimeField.vue +22 -32
  88. package/components/fields/FSDateTimeRangeField.vue +43 -51
  89. package/components/fields/FSGradientField.vue +143 -0
  90. package/components/fields/FSIconField.vue +9 -6
  91. package/components/fields/FSMagicConfigField.vue +154 -0
  92. package/components/fields/FSMagicField.vue +185 -0
  93. package/components/fields/FSNumberField.vue +3 -1
  94. package/components/fields/FSPasswordField.vue +10 -10
  95. package/components/fields/FSRichTextField.vue +136 -50
  96. package/components/fields/FSSearchField.vue +41 -62
  97. package/components/fields/FSSelectField.vue +148 -53
  98. package/components/fields/FSTagField.vue +19 -16
  99. package/components/fields/FSTermField.vue +192 -186
  100. package/components/fields/FSTextArea.vue +4 -4
  101. package/components/fields/FSTextField.vue +29 -6
  102. package/components/fields/FSTimeField.vue +55 -20
  103. package/components/fields/FSTimeSlotField.vue +6 -5
  104. package/components/fields/FSTranslateField.vue +234 -0
  105. package/components/fields/FSTranslateRichTextField.vue +185 -0
  106. package/components/fields/FSTreeViewField.vue +520 -0
  107. package/components/lists/FSDataIteratorItem.vue +18 -3
  108. package/components/lists/FSDataTableUI.vue +138 -51
  109. package/components/lists/FSFilterButton.vue +4 -2
  110. package/components/lists/FSHiddenButton.vue +4 -2
  111. package/components/map/FSMap.vue +598 -0
  112. package/components/map/FSMapEditPointAddressOverlay.vue +164 -0
  113. package/components/map/FSMapLayerButton.vue +77 -0
  114. package/components/map/FSMapOverlay.vue +150 -0
  115. package/components/selects/FSSelectAutoRefresh.vue +62 -0
  116. package/components/selects/FSSelectDashboardVariableType.vue +47 -0
  117. package/components/selects/FSSelectDateSetting.vue +39 -37
  118. package/components/selects/FSSelectDays.vue +62 -0
  119. package/components/tiles/FSDashboardOrganisationTileUI.vue +8 -8
  120. package/components/tiles/FSDashboardOrganisationTypeTileUI.vue +8 -8
  121. package/components/tiles/FSDashboardShallowTileUI.vue +8 -8
  122. package/components/tiles/FSDeviceOrganisationTileUI.vue +20 -15
  123. package/components/tiles/FSFolderTileUI.vue +7 -7
  124. package/components/tiles/FSGroupTileUI.vue +34 -27
  125. package/components/tiles/FSServiceAccountOrganisationTileUI.vue +142 -0
  126. package/components/tiles/{FSSimpleIconTileUI.vue → FSSimpleTileUI.vue} +48 -25
  127. package/components/tiles/FSTile.vue +51 -13
  128. package/components/tiles/FSUserOrganisationTileUI.vue +25 -34
  129. package/components/toggleSets/FSToggleSetPosition.vue +61 -0
  130. package/composables/index.ts +5 -1
  131. package/composables/useAddress.ts +158 -0
  132. package/composables/useAutocomplete.ts +4 -3
  133. package/composables/useColors.ts +8 -25
  134. package/composables/useDebounce.ts +2 -1
  135. package/composables/useMagicFieldProvider.ts +22 -0
  136. package/composables/useRules.ts +4 -12
  137. package/composables/useSlots.ts +65 -27
  138. package/composables/useTables.ts +29 -0
  139. package/composables/useTreeView.ts +48 -0
  140. package/elements/FSFormElement.ts +2 -1
  141. package/icons/flags/France.vue +21 -5
  142. package/icons/flags/Germany.vue +16 -4
  143. package/icons/flags/GreatBritain.vue +25 -6
  144. package/icons/flags/Italy.vue +21 -5
  145. package/icons/flags/Portugal.vue +225 -51
  146. package/icons/flags/Spain.vue +2781 -543
  147. package/icons/flags/UnitedStates.vue +31 -7
  148. package/icons/widgetTemplates/DevicesWidget.vue +189 -189
  149. package/icons/widgetTemplates/ProfileWidget.vue +9 -9
  150. package/icons/widgetTemplates/TextWidget.vue +6 -6
  151. package/models/breadcrumbs.ts +1 -1
  152. package/models/deviceAlerts.ts +1 -1
  153. package/models/deviceConnectivities.ts +1 -1
  154. package/models/index.ts +2 -0
  155. package/models/magicFields.ts +9 -0
  156. package/models/map.ts +18 -0
  157. package/models/richTextVariable.ts +5 -0
  158. package/models/rules.ts +11 -2
  159. package/models/tables.ts +30 -21
  160. package/models/variableNode.ts +104 -0
  161. package/package.json +21 -18
  162. package/plugins/colorPlugin.ts +2 -2
  163. package/plugins/index.ts +2 -1
  164. package/plugins/mapsPlugin.ts +37 -0
  165. package/shims-plugin.d.ts +2 -2
  166. package/shims-window.d.ts +3 -0
  167. package/styles/components/fs_button.scss +5 -0
  168. package/styles/components/fs_card.scss +0 -1
  169. package/styles/components/fs_col.scss +1 -0
  170. package/styles/components/fs_color_field.scss +12 -2
  171. package/styles/components/fs_data_iterator_item.scss +19 -6
  172. package/styles/components/fs_dialog.scss +12 -22
  173. package/styles/components/fs_gradient_field.scss +16 -0
  174. package/styles/components/fs_image_card.scss +18 -0
  175. package/styles/components/fs_magic_config_field.scss +13 -0
  176. package/styles/components/fs_map.scss +129 -0
  177. package/styles/components/fs_map_overlay.scss +38 -0
  178. package/styles/components/fs_meta_field.scss +6 -0
  179. package/styles/components/fs_option_group.scss +1 -0
  180. package/styles/components/fs_radio.scss +1 -1
  181. package/styles/components/fs_rich_text_field.scss +17 -5
  182. package/styles/components/fs_row.scss +1 -1
  183. package/styles/components/fs_select_field.scss +9 -14
  184. package/styles/components/fs_text.scss +1 -1
  185. package/styles/components/fs_time_field.scss +0 -4
  186. package/styles/components/fs_translate_field.scss +3 -0
  187. package/styles/components/fs_tree_view_field.scss +53 -0
  188. package/styles/components/index.scss +8 -1
  189. package/styles/globals/overrides.scss +54 -8
  190. package/styles/globals/scrollbars.scss +2 -2
  191. package/themes/default.ts +1 -1
  192. package/utils/gradient.ts +1601 -0
  193. package/utils/index.ts +3 -1
  194. package/utils/leafletMarkers.ts +23 -0
  195. package/utils/lexical.ts +3 -1
  196. package/components/selects/FSSelectTimeZone.vue +0 -67
  197. package/styles/components/fs_date_field.scss +0 -8
@@ -0,0 +1,38 @@
1
+ .fs-map-overlay-left {
2
+ position: absolute;
3
+ top: 0;
4
+ left: 0;
5
+ z-index: 950;
6
+ margin: 4px;
7
+
8
+ .fs-map-overlay-left-content {
9
+ max-height: var(--fs-map-overlay-max-height);
10
+ }
11
+ }
12
+
13
+ .fs-map-overlay-left-mobile {
14
+ position: absolute;
15
+ bottom: 0;
16
+ left: 0;
17
+ width: 100%;
18
+ z-index: 1050;
19
+ margin: 0;
20
+ transition: all 0.28s cubic-bezier(0.4, 0, 0.2, 1);
21
+ background-color: rgba(0, 0, 0, 0.2);
22
+ border-radius: 4px;
23
+
24
+ >* {
25
+ width: 100%;
26
+ height: var(--fs-map-overlay-card-height);
27
+ margin: 0;
28
+ transition: none;
29
+ }
30
+
31
+ .fs-map-overlay-left-mobile-content {
32
+ max-height: calc(100% - 20px);
33
+ }
34
+
35
+ .fs-fade-out {
36
+ transition: none;
37
+ }
38
+ }
@@ -0,0 +1,6 @@
1
+ // If the custom property value is a boolean or an icon, hide the FSTextField input value in a FSMetaField while on mobile
2
+ .fs-meta-field .v-field:has(.v-field__prepend-inner:not(:empty)) input {
3
+ @include mobile {
4
+ content-visibility: hidden;
5
+ }
6
+ }
@@ -1,6 +1,7 @@
1
1
  .fs-option-group {
2
2
  border-radius: var(--fs-option-group-border-radius) !important;
3
3
  border: var(--fs-option-group-border-size) solid !important;
4
+ background-color: var(--fs-option-group-background-color) !important;
4
5
  width: fit-content;
5
6
 
6
7
  border-color: var(--fs-option-group-border-color) !important;
@@ -3,7 +3,7 @@
3
3
  color: var(--fs-radio-radio-color) !important;
4
4
  }
5
5
 
6
- .fs-radio-label {
6
+ .fs-radio-label {
7
7
  cursor: var(--fs-radio-cursor) !important;
8
8
  color: var(--fs-radio-color) !important;
9
9
  user-select: none;
@@ -1,19 +1,31 @@
1
1
  .fs-rich-text-field {
2
2
  width: 100%;
3
- min-width: 240px;
4
- outline: none !important;
3
+ min-width: 120px;
5
4
  border: 1px solid var(--fs-rich-text-field-border-color) !important;
6
5
  border-radius: 4px !important;
7
6
 
8
- min-height: var(--fs-rich-text-field-min-height);
9
- color: var(--fs-rich-text-field-color);
7
+
10
8
  margin: 2px 2px 2px 0 !important;
11
9
 
10
+ .fs-rich-text-field-content {
11
+ color: var(--fs-rich-text-field-color);
12
+ width: 100%;
13
+ min-height: var(--fs-rich-text-field-min-height);
14
+ outline: none !important;
15
+ }
16
+
17
+ .fs-richtextfield-node-variable {
18
+ .fs-rich-text-field-node-variable-code {
19
+ background-color: var(--fs-rich-text-field-variable-backgroundcolor);
20
+ color: var(--fs-rich-text-field-variable-color);
21
+ border-radius: 4px;
22
+ }
23
+ }
12
24
 
13
25
  &:focus-within {
14
26
  border-color: var(--fs-rich-text-field-active-border-color) !important;
15
27
  }
16
-
28
+
17
29
  @include web {
18
30
  padding: 10px 12px !important;
19
31
  }
@@ -1,10 +1,10 @@
1
1
  .fs-row {
2
2
  display: flex;
3
+ overflow-x: var(--fs-row-overflow);
3
4
  flex-wrap: var(--fs-row-flex-wrap);
4
5
  padding: var(--fs-row-padding);
5
6
  gap: var(--fs-row-gap);
6
7
  max-width: 100%;
7
- max-height: 100%;
8
8
 
9
9
  &-top-left {
10
10
  align-items: flex-start;
@@ -1,5 +1,6 @@
1
1
  .fs-select-field > .v-input__control > .v-field {
2
2
  border: 1px solid var(--fs-select-field-border-color) !important;
3
+ background-color: var(--fs-select-field-background-color) !important;
3
4
  cursor: var(--fs-select-field-cursor) !important;
4
5
 
5
6
  &--error {
@@ -33,21 +34,15 @@
33
34
  color: var(--fs-select-field-color);
34
35
  }
35
36
 
36
- .v-overlay-container > .v-overlay > .v-select__content {
37
- box-shadow: 0px 5px 8px 0px #00000029;
38
- max-width: none !important;
39
- border-radius: 4px;
40
-
41
- & > .v-list {
42
- @extend .fs-hide-y-scrollbar;
37
+ .v-overlay-container > .v-overlay > .v-select__content > .v-list {
38
+ @extend .fs-hide-y-scrollbar;
43
39
 
44
- background-color: var(--fs-select-field-background-color);
45
- padding: 2px 8px 2px 16px;
46
- border-radius: 4px;
40
+ background-color: var(--fs-select-field-background-color);
41
+ padding: 2px 8px 2px 16px;
42
+ border-radius: 4px;
47
43
 
48
- & .v-list-item {
49
- border-radius: 4px !important;
50
- margin-top: 2px !important;
51
- }
44
+ & .v-list-item {
45
+ border-radius: 4px !important;
46
+ margin-top: 2px !important;
52
47
  }
53
48
  }
@@ -1,5 +1,5 @@
1
1
  .fs-text {
2
- color: var(--fs-text-color);
2
+ color: var(--fs-text-color) !important;
3
3
 
4
4
  @extend .fs-span;
5
5
  }
@@ -1,7 +1,3 @@
1
- .fs-time-field-select {
2
- min-width: 180px;
3
- }
4
-
5
1
  .fs-time-field-label {
6
2
  color: var(--fs-time-field-color);
7
3
  }
@@ -0,0 +1,3 @@
1
+ .fs-translate-field-label {
2
+ color: var(--fs-translate-field-color);
3
+ }
@@ -0,0 +1,53 @@
1
+ .fs-tree-view-field > .v-input__control > .v-field > .v-field__field > .v-field__input {
2
+ cursor: var(--fs-tree-view-field-cursor) !important;
3
+ }
4
+
5
+ .v-overlay__content > .v-treeview {
6
+ max-height: 310px !important;
7
+ }
8
+
9
+ .v-treeview.v-list {
10
+ @extend .fs-hide-y-scrollbar;
11
+
12
+ background-color: var(--fs-select-field-background-color);
13
+ padding: 2px 8px 2px 16px;
14
+ border-radius: 4px;
15
+
16
+ & .v-list-item {
17
+ border-radius: 4px !important;
18
+ margin-top: 2px;
19
+ }
20
+ }
21
+
22
+ .v-treeview-item:has(.v-list-item__prepend > .fs-tree-view-item-selected) > .v-list-item__overlay {
23
+ opacity: calc(var(--v-activated-opacity) * var(--v-theme-overlay-multiplier)) !important;
24
+ }
25
+
26
+ .v-treeview-item:not(:has(.v-list-item__prepend > .fs-tree-view-item-selected)) > .v-list-item__overlay {
27
+ display: none;
28
+ }
29
+
30
+ .fs-dialog-menu {
31
+ .v-treeview.v-list {
32
+ display: flex;
33
+ flex-direction: column;
34
+ padding: 0px !important;
35
+ gap: 12px !important;
36
+ }
37
+
38
+ .v-treeview-item {
39
+ cursor: default;
40
+ padding-inline: 0px !important;
41
+ min-height: 20px !important;
42
+ padding: 0px !important;
43
+ margin: 0px !important;
44
+
45
+ & > .v-list-item__overlay {
46
+ display: none;
47
+ }
48
+
49
+ & > .v-ripple__container {
50
+ display: none;
51
+ }
52
+ }
53
+ }
@@ -15,7 +15,6 @@
15
15
  @import "fs_color_icon.scss";
16
16
  @import "fs_data_table.scss";
17
17
  @import "fs_data_iterator_item.scss";
18
- @import "fs_date_field.scss";
19
18
  @import "fs_dialog_menu.scss";
20
19
  @import "fs_dialog.scss";
21
20
  @import "fs_divider.scss";
@@ -25,17 +24,23 @@
25
24
  @import "fs_fade_out.scss";
26
25
  @import "fs_filter_button.scss";
27
26
  @import "fs_form.scss";
27
+ @import "fs_gradient_field.scss";
28
28
  @import "fs_grid.scss";
29
29
  @import "fs_header_button.scss";
30
30
  @import "fs_hidden_button.scss";
31
31
  @import "fs_icon_field.scss";
32
32
  @import "fs_icon.scss";
33
33
  @import "fs_image.scss";
34
+ @import "fs_image_card.scss";
34
35
  @import "fs_label.scss";
35
36
  @import "fs_link.scss";
36
37
  @import "fs_load_data_table.scss";
37
38
  @import "fs_load_tile.scss";
38
39
  @import "fs_loader.scss";
40
+ @import "fs_magic_config_field.scss";
41
+ @import "fs_map_overlay.scss";
42
+ @import "fs_map.scss";
43
+ @import "fs_meta_field.scss";
39
44
  @import "fs_option_group.scss";
40
45
  @import "fs_pagination.scss";
41
46
  @import "fs_password_field.scss";
@@ -57,5 +62,7 @@
57
62
  @import "fs_time_field.scss";
58
63
  @import "fs_timeslot_field.scss";
59
64
  @import "fs_tooltip.scss";
65
+ @import "fs_translate_field.scss";
66
+ @import "fs_tree_view_field.scss";
60
67
  @import "fs_window.scss";
61
68
  @import "fs_wrap_group.scss";
@@ -3,6 +3,12 @@
3
3
  display: none;
4
4
  }
5
5
 
6
+ // Otherwise a v-progress-circular has the size of its parent and can trigger the vertical scroll when spinning
7
+ .v-progress-circular > svg {
8
+ height: fit-content;
9
+ width: fit-content;
10
+ }
11
+
6
12
  // No default hover effect on switches and others, no limited opacity, no limited width...
7
13
  .v-selection-control {
8
14
  min-height: 0 !important;
@@ -34,8 +40,13 @@
34
40
  flex: 0 0 auto;
35
41
  }
36
42
 
37
- &:not(.v-checkbox):not(.v-slider):not(.fs-small-input) {
38
- min-width: 150px;
43
+ &:not(.v-checkbox):not(.v-slider):not(.fs-small-input):not(.fs-number-field) {
44
+ min-width: 120px;
45
+ width: 100%;
46
+ }
47
+
48
+ &.fs-number-field {
49
+ min-width: 80px;
39
50
  width: 100%;
40
51
  }
41
52
 
@@ -49,12 +60,20 @@
49
60
  }
50
61
  }
51
62
 
52
- & .v-input__prepend {
63
+ &:has(.v-input__control):has(.v-input__append) > .v-input__append {
64
+ margin-inline-start: 8px !important;
65
+ }
66
+
67
+ &:not(:has(.v-input__control)):has(.v-input__append) > .v-input__append {
68
+ margin-inline-start: 0 !important;
69
+ }
70
+
71
+ &:has(.v-input__control):has(.v-input__prepend) > .v-input__prepend {
53
72
  margin-inline-end: 8px !important;
54
73
  }
55
74
 
56
- & .v-input__append {
57
- margin-inline-start: 8px !important;
75
+ &:not(:has(.v-input__control)):has(.v-input__prepend) > .v-input__prepend {
76
+ margin-inline-end: 0 !important;
58
77
  }
59
78
 
60
79
  & > .v-input__control > .v-field {
@@ -65,6 +84,10 @@
65
84
  margin-inline: 0px;
66
85
  padding-top: 0px;
67
86
  height: 100%;
87
+
88
+ & > .v-icon {
89
+ opacity: 1 !important;
90
+ }
68
91
  }
69
92
 
70
93
  & > .v-field__outline {
@@ -73,15 +96,14 @@
73
96
  }
74
97
 
75
98
  &:not(.fs-text-area) > .v-input__control > .v-field {
76
- padding: 0 16px !important;
99
+ padding: 0 12px 0 16px !important;
77
100
 
78
101
  & > .v-field__field > .v-field__input {
79
102
  @extend .text-body;
80
103
 
81
- padding-inline: 0px !important;
82
104
  padding-bottom: 0px !important;
105
+ padding-inline: 0px !important;
83
106
  padding-top: 0px !important;
84
- align-items: center;
85
107
  flex-wrap: nowrap;
86
108
  overflow: hidden;
87
109
 
@@ -98,11 +120,34 @@
98
120
  }
99
121
  }
100
122
 
123
+ // If there is a prepend, it has a padding on the right and an opacity of 100%
124
+ .v-field__prepend-inner:not(:empty) {
125
+ padding-inline-end: 4px !important;
126
+
127
+ & > .v-icon {
128
+ opacity: 1 !important;
129
+ }
130
+ }
131
+
132
+ // If there is an append, it has a padding on the left and an opacity of 100%
133
+ .v-field__append-inner:not(:empty) {
134
+ padding-inline-start: 4px !important;
135
+
136
+ & > .v-icon {
137
+ opacity: 1 !important;
138
+ }
139
+ }
140
+
101
141
  // No input messages allowed
102
142
  .v-input__details {
103
143
  display: none !important;
104
144
  }
105
145
 
146
+ // Ellipsis on input of all fields
147
+ input {
148
+ text-overflow: ellipsis;
149
+ }
150
+
106
151
  // No up / down buttons in input field of type number
107
152
  input[type=number] {
108
153
  -moz-appearance: textfield;
@@ -128,6 +173,7 @@ $nthOverlay: 25;
128
173
  .fs-slide-group {
129
174
  max-width: 100%;
130
175
 
176
+ // To avoid borders clipping
131
177
  & > .v-slide-group__container > .v-slide-group__content {
132
178
  margin: 0 2px 1px 0 !important;
133
179
  }
@@ -12,7 +12,7 @@
12
12
 
13
13
  @include clickscreen {
14
14
  .fs-hide-x-scrollbar {
15
- overflow-x: scroll;
15
+ overflow-x: scroll !important;
16
16
 
17
17
  &::-webkit-scrollbar {
18
18
  height: 8px;
@@ -28,7 +28,7 @@
28
28
  }
29
29
 
30
30
  .fs-hide-y-scrollbar {
31
- overflow-y: scroll;
31
+ overflow-y: scroll !important;
32
32
 
33
33
  &::-webkit-scrollbar {
34
34
  width: 8px;
package/themes/default.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { ThemeDefinition } from "vuetify";
1
+ import type { ThemeDefinition } from "vuetify";
2
2
 
3
3
  export const DefaultTheme: ThemeDefinition = {
4
4
  dark: false,