@dative-gpi/foundation-shared-components 0.0.7 → 0.0.9

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 (139) hide show
  1. package/{models/FSButtons.ts → aliases/FSButton.ts} +24 -21
  2. package/aliases/index.ts +1 -0
  3. package/components/FSAutocompleteField.vue +207 -0
  4. package/components/FSBadge.vue +38 -0
  5. package/components/FSBreadcrumbs.vue +49 -55
  6. package/components/FSButton.vue +116 -101
  7. package/components/FSCalendar.vue +184 -0
  8. package/components/FSCalendarTwin.vue +412 -0
  9. package/components/FSCard.vue +77 -0
  10. package/components/FSCarousel.vue +63 -0
  11. package/components/FSCheckbox.vue +111 -104
  12. package/components/FSChip.vue +140 -0
  13. package/components/FSClock.vue +172 -0
  14. package/components/FSCol.vue +104 -98
  15. package/components/FSColor.vue +61 -64
  16. package/components/FSColorIcon.vue +67 -0
  17. package/components/FSContainer.vue +64 -0
  18. package/components/FSDateField.vue +211 -0
  19. package/components/FSDateRangeField.vue +225 -0
  20. package/components/FSDateTimeField.vue +257 -0
  21. package/components/FSDateTimeRangeField.vue +286 -0
  22. package/components/FSDialog.vue +103 -0
  23. package/components/FSDivider.vue +39 -0
  24. package/components/FSFadeOut.vue +49 -59
  25. package/components/FSFileButton.vue +245 -0
  26. package/components/FSHeaderButton.vue +17 -0
  27. package/components/FSIcon.vue +23 -23
  28. package/components/FSIconField.vue +232 -0
  29. package/components/FSImage.vue +142 -0
  30. package/components/FSLoadTile.vue +93 -0
  31. package/components/FSNumberField.vue +51 -53
  32. package/components/FSPasswordField.vue +99 -99
  33. package/components/FSRadio.vue +107 -110
  34. package/components/FSRadioGroup.vue +55 -57
  35. package/components/FSRemoveDialog.vue +123 -0
  36. package/components/FSRichTextField.vue +551 -0
  37. package/components/FSRow.vue +110 -104
  38. package/components/FSSearchField.vue +114 -105
  39. package/components/FSSelectField.vue +188 -0
  40. package/components/FSSlideGroup.vue +45 -49
  41. package/components/FSSlider.vue +130 -0
  42. package/components/FSSpan.vue +53 -37
  43. package/components/FSSubmitDialog.vue +165 -0
  44. package/components/FSSwitch.vue +110 -109
  45. package/components/FSTab.vue +61 -61
  46. package/components/FSTabs.vue +53 -55
  47. package/components/FSTag.vue +88 -84
  48. package/components/FSTagField.vue +183 -128
  49. package/components/FSTagGroup.vue +38 -45
  50. package/components/FSText.vue +74 -64
  51. package/components/FSTextArea.vue +209 -0
  52. package/components/FSTextField.vue +152 -149
  53. package/components/FSTile.vue +90 -0
  54. package/components/FSToggleSet.vue +282 -0
  55. package/components/FSTooltip.vue +21 -0
  56. package/components/FSWindow.vue +26 -16
  57. package/components/FSWrapGroup.vue +44 -47
  58. package/components/deviceOrganisations/FSConnectivity.vue +114 -0
  59. package/components/deviceOrganisations/FSStatus.vue +117 -0
  60. package/components/deviceOrganisations/FSStatusesCarousel.vue +105 -0
  61. package/components/deviceOrganisations/FSStatusesRow.vue +66 -0
  62. package/components/deviceOrganisations/FSWorstAlert.vue +165 -0
  63. package/components/lists/FSDataIteratorGroup.vue +7 -0
  64. package/components/lists/FSDataIteratorItem.vue +103 -0
  65. package/components/lists/FSDataTable.vue +964 -0
  66. package/components/lists/FSFilterButton.vue +176 -0
  67. package/components/lists/FSHeaderButton.vue +99 -0
  68. package/components/lists/FSHiddenButton.vue +79 -0
  69. package/components/tiles/FSDeviceOrganisationTileUI.vue +232 -0
  70. package/components/tiles/FSGroupTileUI.vue +192 -0
  71. package/composables/index.ts +2 -1
  72. package/composables/useBreakpoints.ts +33 -0
  73. package/composables/useColors.ts +53 -23
  74. package/composables/useSlots.ts +43 -0
  75. package/index.ts +6 -0
  76. package/models/breadcrumbs.ts +8 -0
  77. package/models/colors.ts +17 -0
  78. package/models/deviceAlerts.ts +10 -0
  79. package/models/deviceConnectivities.ts +11 -0
  80. package/models/deviceStatuses.ts +16 -0
  81. package/models/dispositions.ts +33 -0
  82. package/models/index.ts +9 -0
  83. package/models/modelStatuses.ts +11 -0
  84. package/models/rules.ts +50 -0
  85. package/models/toggleSets.ts +7 -0
  86. package/package.json +13 -4
  87. package/plugins/colorPlugin.ts +2 -2
  88. package/shims-plugin.d.ts +1 -1
  89. package/styles/components/fs_autocomplete_field.scss +123 -0
  90. package/styles/components/fs_button.scss +4 -14
  91. package/styles/components/fs_calendar.scss +138 -0
  92. package/styles/components/fs_card.scss +4 -0
  93. package/styles/components/fs_carousel.scss +4 -0
  94. package/styles/components/fs_chip.scss +33 -0
  95. package/styles/components/fs_clock.scss +43 -0
  96. package/styles/components/fs_col.scss +2 -0
  97. package/styles/components/fs_color_icon.scss +37 -0
  98. package/styles/components/fs_container.scss +16 -0
  99. package/styles/components/fs_data_iterator_item.scss +19 -0
  100. package/styles/components/fs_data_table.scss +97 -0
  101. package/styles/components/fs_date_field.scss +8 -0
  102. package/styles/components/fs_dialog.scss +30 -0
  103. package/styles/components/fs_divider.scss +5 -0
  104. package/styles/components/fs_fade_out.scss +10 -2
  105. package/styles/components/fs_filter_button.scss +12 -0
  106. package/styles/components/fs_header_button.scss +4 -0
  107. package/styles/components/fs_icon.scss +14 -4
  108. package/styles/components/fs_icon_field.scss +12 -0
  109. package/styles/components/fs_image.scss +7 -0
  110. package/styles/components/fs_load_tile.scss +49 -0
  111. package/styles/components/fs_password_field.scss +2 -2
  112. package/styles/components/fs_rich_text_field.scss +67 -0
  113. package/styles/components/fs_row.scss +4 -1
  114. package/styles/components/fs_select_field.scss +71 -0
  115. package/styles/components/fs_slide_group.scss +6 -0
  116. package/styles/components/fs_slider.scss +40 -0
  117. package/styles/components/fs_span.scss +8 -0
  118. package/styles/components/fs_submit_dialog.scss +9 -0
  119. package/styles/components/fs_tabs.scss +4 -0
  120. package/styles/components/fs_tag_field.scss +6 -8
  121. package/styles/components/fs_text_area.scss +105 -0
  122. package/styles/components/fs_text_field.scss +23 -15
  123. package/styles/components/fs_tile.scss +33 -0
  124. package/styles/components/fs_tooltip.scss +5 -0
  125. package/styles/components/fs_wrap_group.scss +7 -8
  126. package/styles/components/index.scss +26 -0
  127. package/styles/globals/breakpoints.scss +7 -0
  128. package/styles/globals/overrides.scss +20 -7
  129. package/styles/globals/text_fonts.scss +8 -8
  130. package/themes/default.ts +1 -11
  131. package/utils/css.ts +11 -0
  132. package/utils/icons.ts +75416 -0
  133. package/utils/index.ts +5 -0
  134. package/utils/levenshtein.ts +97 -0
  135. package/utils/lexical.ts +27 -0
  136. package/utils/sort.ts +9 -0
  137. package/composables/useTouch.ts +0 -9
  138. package/models/FSTags.ts +0 -8
  139. package/models/FSTextFields.ts +0 -17
@@ -0,0 +1,12 @@
1
+ .fs-icon-field-label {
2
+ color: var(--fs-icon-field-color);
3
+ }
4
+
5
+ .fs-icon-field-messages {
6
+ align-self: stretch;
7
+ color: var(--fs-icon-field-error-color);
8
+ }
9
+
10
+ .fs-icon-field-set {
11
+ max-width: 100%;
12
+ }
@@ -0,0 +1,7 @@
1
+ .fs-image {
2
+ border-radius: 4px;
3
+
4
+ &.v-responsive {
5
+ flex: 0 0 auto !important;
6
+ }
7
+ }
@@ -0,0 +1,49 @@
1
+ .fs-load-tile {
2
+ position: relative;
3
+ }
4
+
5
+ .fs-load-tile .v-skeleton-loader {
6
+ background-color: var(--fs-load-tile-background-color);
7
+
8
+ & .v-skeleton-loader__article {
9
+ gap: 8px;
10
+
11
+ @include web {
12
+ width: 204px;
13
+ height: 100px;
14
+ }
15
+
16
+ @include mobile {
17
+ width: 198px;
18
+ height: 90px;
19
+ }
20
+ }
21
+
22
+ & .v-skeleton-loader__heading {
23
+ margin: 0;
24
+ }
25
+
26
+ & .v-skeleton-loader__paragraph {
27
+ gap: 8px;
28
+ }
29
+
30
+ & .v-skeleton-loader__text {
31
+ margin: 0;
32
+ }
33
+
34
+ & .v-skeleton-loader__bone {
35
+ border-radius: 4px;
36
+ }
37
+
38
+ & .v-skeleton-loader__image {
39
+ @include web {
40
+ width: 100px;
41
+ height: 100px;
42
+ }
43
+
44
+ @include mobile {
45
+ width: 90px;
46
+ height: 90px;
47
+ }
48
+ }
49
+ }
@@ -1,10 +1,10 @@
1
1
  .fs-password-field-icon {
2
2
  opacity: 1 !important;
3
3
  cursor: var(--fs-password-field-cursor) !important;
4
- color: var(--fs-password-field-base-text) !important;
4
+ color: var(--fs-password-field-color) !important;
5
5
  transition: color 0.28s cubic-bezier(0.4, 0, 0.2, 1);
6
6
 
7
7
  &:hover {
8
- color: var(--fs-password-field-dark-text) !important;
8
+ color: var(--fs-password-field-hover-color) !important;
9
9
  }
10
10
  }
@@ -0,0 +1,67 @@
1
+ .fs-rich-text-field {
2
+ width: 100%;
3
+ outline: none !important;
4
+ border: 1px solid var(--fs-rich-text-field-border-color) !important;
5
+ border-radius: 4px !important;
6
+
7
+ min-height: var(--fs-rich-text-field-min-height);
8
+ color: var(--fs-rich-text-field-color);
9
+ margin: 2px 2px 2px 0 !important;
10
+
11
+
12
+ &:focus-within {
13
+ border-color: var(--fs-rich-text-field-active-border-color) !important;
14
+ }
15
+
16
+ @include web {
17
+ padding: 10px 12px !important;
18
+ }
19
+
20
+ @include mobile {
21
+ padding: 6px 16px !important;
22
+ }
23
+
24
+ }
25
+
26
+ .fs-rich-text-field-undo {
27
+ transition: color 0.28s cubic-bezier(0.4, 0, 0.2, 1) !important;
28
+ cursor: var(--fs-rich-text-field-undo-cursor);
29
+ }
30
+
31
+ .fs-rich-text-field-icon {
32
+ transition: color 0.28s cubic-bezier(0.4, 0, 0.2, 1) !important;
33
+ cursor: var(--fs-rich-text-field-icon-cursor);
34
+ }
35
+
36
+ .fs-rich-text-field-label {
37
+ color: var(--fs-rich-text-field-color);
38
+ }
39
+
40
+ .fs-rich-text-field-description {
41
+ color: var(--fs-rich-text-field-color);
42
+ }
43
+
44
+ .editor-text-underline {
45
+ text-decoration: underline;
46
+ }
47
+
48
+ .editor-text-bold {
49
+ font-weight: bold;
50
+ }
51
+
52
+ .editor-text-italic {
53
+ font-style: italic;
54
+ }
55
+
56
+ .editor-text-strikethrough {
57
+ text-decoration: line-through;
58
+ }
59
+
60
+ .editor-text-underline-strikethrough {
61
+ text-decoration: underline line-through;
62
+ }
63
+
64
+ .editor-link {
65
+ color: var(--fs-rich-text-field-link-color);
66
+ text-decoration: underline;
67
+ }
@@ -1,7 +1,10 @@
1
1
  .fs-row {
2
2
  display: flex;
3
3
  flex-wrap: var(--fs-row-flex-wrap);
4
+ padding: var(--fs-row-padding);
4
5
  gap: var(--fs-row-gap);
6
+ max-width: 100%;
7
+ max-height: 100%;
5
8
 
6
9
  &-top-left {
7
10
  align-items: flex-start;
@@ -86,6 +89,6 @@
86
89
  }
87
90
 
88
91
  &-fixed {
89
- width: var(--fs-row-height);
92
+ height: var(--fs-row-height);
90
93
  }
91
94
  }
@@ -0,0 +1,71 @@
1
+ .fs-select-field {
2
+ padding: 0px !important;
3
+ width: 100%;
4
+
5
+ & > .v-input__control > .v-field {
6
+ border: 1px solid var(--fs-select-field-border-color) !important;
7
+ cursor: var(--fs-select-field-cursor) !important;
8
+ border-radius: 4px !important;
9
+ padding: 0 16px !important;
10
+ gap: 8px;
11
+
12
+ &--error {
13
+ border-color: var(--fs-select-field-error-border-color) !important;
14
+ }
15
+
16
+ &:not(.v-field--error):focus-within {
17
+ border-color: var(--fs-select-field-active-border-color) !important;
18
+ }
19
+
20
+ & > .v-field__outline {
21
+ display: none;
22
+ }
23
+
24
+ & > .v-field__field > .v-field__input {
25
+ @extend .text-body;
26
+
27
+ padding-inline: 0 !important;
28
+ color: var(--fs-select-field-color);
29
+ cursor: var(--fs-select-field-cursor) !important;
30
+
31
+ @include web {
32
+ min-height: 38px !important;
33
+ height: 38px !important;
34
+ }
35
+
36
+ @include mobile {
37
+ min-height: 34px !important;
38
+ height: 34px !important;
39
+ }
40
+
41
+ & > .v-select__selection {
42
+ height: 100%;
43
+ }
44
+ }
45
+
46
+ & > .v-field__clearable {
47
+ margin-inline: 0px;
48
+ }
49
+
50
+ & > .v-field__append-inner {
51
+ color: var(--fs-select-field-color);
52
+
53
+ & > i {
54
+ margin-inline-start: 0px;
55
+ }
56
+ }
57
+ }
58
+ }
59
+
60
+ .fs-select-field-label {
61
+ color: var(--fs-select-field-color);
62
+ }
63
+
64
+ .fs-select-field-messages {
65
+ align-self: stretch;
66
+ color: var(--fs-select-field-error-color);
67
+ }
68
+
69
+ .fs-select-field-description {
70
+ color: var(--fs-select-field-color);
71
+ }
@@ -0,0 +1,6 @@
1
+ .fs-slide-group {
2
+ & > .v-slide-group__container > .v-slide-group__content {
3
+ padding: var(--fs-group-padding);
4
+ gap: var(--fs-group-gap);
5
+ }
6
+ }
@@ -0,0 +1,40 @@
1
+ .fs-slider {
2
+ padding: 0px !important;
3
+ width: calc(100% - 16px);
4
+
5
+ & .v-slider__container {
6
+ cursor: var(--fs-slider-cursor);
7
+ opacity: 1 !important;
8
+ }
9
+
10
+ & .v-slider-track__background {
11
+ background-color: var(--fs-slider-track-color);
12
+ height: 6px !important;
13
+ opacity: 1;
14
+ }
15
+
16
+ & .v-slider-track__fill {
17
+ display: none;
18
+ }
19
+
20
+ & .v-slider-track__tick {
21
+ background-color: var(--fs-slider-thumb-color);
22
+ border-radius: 50%;
23
+ }
24
+
25
+ & .v-slider-thumb {
26
+ color: var(--fs-slider-thumb-color);
27
+
28
+ &__surface:before {
29
+ display: none;
30
+ }
31
+ }
32
+ }
33
+
34
+ .fs-slider-label {
35
+ color: var(--fs-slider-color);
36
+ }
37
+
38
+ .fs-slider-description {
39
+ color: var(--fs-slider-color);
40
+ }
@@ -1,5 +1,13 @@
1
1
  .fs-span {
2
2
  padding-inline-end: 2px;
3
+ max-width: 100%;
4
+ }
5
+
6
+ .fs-span-line-clamp {
7
+ overflow: hidden;
8
+ display: -webkit-box;
9
+ -webkit-box-orient: vertical;
10
+ -webkit-line-clamp: 2;
3
11
  }
4
12
 
5
13
  .fs-span-ellipsis {
@@ -0,0 +1,9 @@
1
+ .fs-submit-dialog {
2
+ min-width: 35vw !important;
3
+ }
4
+
5
+ .fs-submit-dialog-actions {
6
+ position: sticky;
7
+ right: 8px;
8
+ bottom: 8px;
9
+ }
@@ -15,6 +15,8 @@
15
15
  padding: 0 16px;
16
16
  border-bottom: 1px solid var(--fs-group-color) !important;
17
17
  color: var(--fs-group-color) !important;
18
+ display: flex;
19
+ align-items: center;
18
20
 
19
21
  & .fs-tab-label {
20
22
  @extend .text-button;
@@ -49,6 +51,8 @@
49
51
  border-radius: 4px;
50
52
  background-color: var(--fs-tab-tag-background-color);
51
53
  color: var(--fs-tab-tag-color);
54
+ display: flex;
55
+ align-items: center;
52
56
 
53
57
  @include web {
54
58
  min-width: 28px;
@@ -1,10 +1,8 @@
1
- .fs-tag-field-icon {
2
- opacity: 1 !important;
3
- cursor: var(--fs-tag-field-cursor) !important;
4
- color: var(--fs-tag-field-base-text) !important;
5
- transition: color 0.28s cubic-bezier(0.4, 0, 0.2, 1);
1
+ .fs-tag-field-label {
2
+ color: var(--fs-tag-field-color);
3
+ }
6
4
 
7
- &:hover {
8
- color: var(--fs-tag-field-dark-text) !important;
9
- }
5
+ .fs-tag-field-messages {
6
+ align-self: stretch;
7
+ color: var(--fs-tag-field-error-color);
10
8
  }
@@ -0,0 +1,105 @@
1
+ .fs-text-area:not(.fs-text-area-auto-grow) {
2
+ padding: 0px !important;
3
+ width: 100%;
4
+
5
+ & > .v-input__control > .v-field {
6
+ border: 1px solid var(--fs-text-area-border-color) !important;
7
+ border-radius: 4px !important;
8
+ padding: 0 !important;
9
+
10
+ &--error {
11
+ border-color: var(--fs-text-area-error-border-color) !important;
12
+ }
13
+
14
+ &:not(.v-field--error):focus-within {
15
+ border-color: var(--fs-text-area-active-border-color) !important;
16
+ }
17
+
18
+ & > .v-field__outline {
19
+ display: none;
20
+ }
21
+
22
+ & > .v-field__field > .v-field__input {
23
+ @extend .text-body;
24
+
25
+ @extend .fs-hide-y-scrollbar;
26
+
27
+ mask-image: none !important;
28
+ -webkit-mask-image: none !important;
29
+
30
+ padding-inline: 0 !important;
31
+ margin: 2px 2px 2px 0 !important;
32
+ cursor: var(--fs-text-area-cursor) !important;
33
+ min-height: var(--fs-text-area-min-height);
34
+ height: var(--fs-text-area-height);
35
+ color: var(--fs-text-area-color);
36
+
37
+ @include web {
38
+ padding: 12px 0 12px 16px !important;
39
+ }
40
+
41
+ @include mobile {
42
+ padding: 7px 0 7px 16px !important;
43
+ }
44
+ }
45
+ }
46
+ }
47
+
48
+ .fs-text-area-auto-grow {
49
+ padding: 0px !important;
50
+ width: 100%;
51
+
52
+ & > .v-input__control > .v-field {
53
+ border: 1px solid var(--fs-text-area-border-color) !important;
54
+ border-radius: 4px !important;
55
+ padding: 0 !important;
56
+
57
+ &--error {
58
+ border-color: var(--fs-text-area-error-border-color) !important;
59
+ }
60
+
61
+ &:not(.v-field--error):focus-within {
62
+ border-color: var(--fs-text-area-active-border-color) !important;
63
+ }
64
+
65
+ & > .v-field__outline {
66
+ display: none;
67
+ }
68
+
69
+ & > .v-field__field > .v-field__input {
70
+ @extend .text-body;
71
+
72
+ @extend .fs-hide-y-scrollbar;
73
+
74
+ mask-image: none !important;
75
+ -webkit-mask-image: none !important;
76
+
77
+ padding-inline: 0 !important;
78
+ margin: 2px 2px 2px 0 !important;
79
+ cursor: var(--fs-text-area-cursor) !important;
80
+ height: var(--fs-text-area-height);
81
+ color: var(--fs-text-area-color);
82
+
83
+ @include web {
84
+ padding: 12px 0 12px 16px !important;
85
+ }
86
+
87
+ @include mobile {
88
+ padding: 7px 0 7px 16px !important;
89
+ }
90
+ }
91
+ }
92
+ }
93
+
94
+ .fs-text-area-label {
95
+ color: var(--fs-text-area-color);
96
+ }
97
+
98
+ .fs-text-area-messages {
99
+ align-self: stretch;
100
+ color: var(--fs-text-area-error-color);
101
+ }
102
+
103
+ .fs-text-area-description {
104
+ color: var(--fs-text-area-color);
105
+ }
@@ -4,8 +4,10 @@
4
4
 
5
5
  & > .v-input__control > .v-field {
6
6
  border: 1px solid var(--fs-text-field-border-color) !important;
7
+ cursor: var(--fs-text-field-cursor) !important;
7
8
  border-radius: 4px !important;
8
9
  padding: 0 16px !important;
10
+ gap: 8px;
9
11
 
10
12
  &--error {
11
13
  border-color: var(--fs-text-field-error-border-color) !important;
@@ -19,23 +21,29 @@
19
21
  display: none;
20
22
  }
21
23
 
22
- & > .v-field__field > input {
23
- @extend .text-body;
24
-
25
- padding-inline: 0 !important;
26
- cursor: var(--fs-text-field-cursor) !important;
27
- color: var(--fs-text-field-color);
28
-
29
- @include web {
30
- min-height: 46px !important;
31
- height: 46px !important;
32
- }
33
-
34
- @include mobile {
35
- min-height: 34px !important;
36
- height: 34px !important;
24
+ & > .v-field__field {
25
+ & > input {
26
+ @extend .text-body;
27
+
28
+ padding-inline: 0 !important;
29
+ color: var(--fs-text-field-color);
30
+ cursor: var(--fs-select-field-cursor) !important;
31
+
32
+ @include web {
33
+ min-height: 38px !important;
34
+ height: 38px !important;
35
+ }
36
+
37
+ @include mobile {
38
+ min-height: 34px !important;
39
+ height: 34px !important;
40
+ }
37
41
  }
38
42
  }
43
+
44
+ & > .v-field__clearable {
45
+ margin-inline: 0px;
46
+ }
39
47
  }
40
48
  }
41
49
 
@@ -0,0 +1,33 @@
1
+ .fs-tile {
2
+ position: relative;
3
+ border-bottom-left-radius: 0px !important;
4
+ border-bottom-right-radius: 0px !important;
5
+ }
6
+
7
+ .fs-tile-bottom {
8
+ position: absolute;
9
+ bottom: -1px;
10
+ left: -1px;
11
+ width: calc(100% + 2px);
12
+ height: 3px;
13
+ background: var(--fs-tile-border-color);
14
+ }
15
+
16
+ .fs-tile-checkbox {
17
+ border-radius: 4px;
18
+ position: absolute;
19
+ align-items: center;
20
+ justify-content: center;
21
+ top: 1px;
22
+ right: 1px;
23
+
24
+ @include web {
25
+ width: 40px;
26
+ height: 40px;
27
+ }
28
+
29
+ @include mobile {
30
+ width: 32px;
31
+ height: 32px;
32
+ }
33
+ }
@@ -0,0 +1,5 @@
1
+ .fs-tooltip > .v-overlay__content {
2
+ background: none !important;
3
+ color: initial !important;
4
+ padding: 0 !important;
5
+ }
@@ -1,12 +1,11 @@
1
+ .fs-wrap-group {
2
+ & > .v-slide-group__container > .v-slide-group__content {
3
+ padding: var(--fs-group-padding);
4
+ gap: var(--fs-group-gap);
1
5
 
2
- @include clickscreen {
3
- .fs-wrap-group {
4
- & .v-slide-group__container .v-slide-group__content {
5
- flex: 0 1 auto !important;
6
-
7
- & .fs-row {
8
- flex-wrap: wrap !important;
9
- }
6
+ @include clickscreen {
7
+ flex: 0 1 auto;
8
+ flex-wrap: wrap;
10
9
  }
11
10
  }
12
11
  }
@@ -1,18 +1,44 @@
1
+ @import "fs_autocomplete_field.scss";
1
2
  @import "fs_breadcrumbs.scss";
2
3
  @import "fs_button.scss";
4
+ @import "fs_calendar.scss";
5
+ @import "fs_card.scss";
6
+ @import "fs_carousel.scss";
3
7
  @import "fs_checkbox.scss";
8
+ @import "fs_chip.scss";
9
+ @import "fs_clock.scss";
4
10
  @import "fs_col.scss";
5
11
  @import "fs_color.scss";
12
+ @import "fs_color_icon.scss";
13
+ @import "fs_container.scss";
14
+ @import "fs_data_table.scss";
15
+ @import "fs_data_iterator_item.scss";
16
+ @import "fs_date_field.scss";
17
+ @import "fs_dialog.scss";
18
+ @import "fs_divider.scss";
6
19
  @import "fs_fade_out.scss";
20
+ @import "fs_filter_button.scss";
21
+ @import "fs_header_button.scss";
22
+ @import "fs_icon_field.scss";
7
23
  @import "fs_icon.scss";
24
+ @import "fs_image.scss";
25
+ @import "fs_load_tile.scss";
8
26
  @import "fs_password_field.scss";
9
27
  @import "fs_radio.scss";
28
+ @import "fs_rich_text_field.scss";
10
29
  @import "fs_row.scss";
30
+ @import "fs_select_field.scss";
31
+ @import "fs_slide_group.scss";
32
+ @import "fs_slider.scss";
11
33
  @import "fs_span.scss";
34
+ @import "fs_submit_dialog.scss";
12
35
  @import "fs_switch.scss";
13
36
  @import "fs_tag.scss";
14
37
  @import "fs_tabs.scss";
15
38
  @import "fs_tag_field.scss";
39
+ @import "fs_text_area.scss";
16
40
  @import "fs_text_field.scss";
17
41
  @import "fs_text.scss";
42
+ @import "fs_tile.scss";
43
+ @import "fs_tooltip.scss";
18
44
  @import "fs_wrap_group.scss";
@@ -1,5 +1,12 @@
1
+ $extra-small-breakpoint: 599px;
1
2
  $mobile-breakpoint: 1264px;
2
3
 
4
+ @mixin extra-small {
5
+ @media only screen and (max-width: $extra-small-breakpoint) {
6
+ @content;
7
+ }
8
+ }
9
+
3
10
  @mixin mobile {
4
11
  @media only screen and (max-width: $mobile-breakpoint) {
5
12
  @content;
@@ -30,34 +30,47 @@ input[type=number]::-webkit-outer-spin-button {
30
30
  margin: 0;
31
31
  }
32
32
 
33
+ .v-overlay__content {
34
+ min-width: 0 !important;
35
+ }
36
+
33
37
  /***** Applies to all slide groups (FSTabs, FSSlideGroup, FSWrapGroup) *****/
34
38
 
35
39
  // On touchscreen, hide arrows
36
40
  // Otherwise show small ones with base text color
37
41
  .v-slide-group__prev,
38
42
  .v-slide-group__next {
39
- transition: background-color 0.28s cubic-bezier(0.4, 0, 0.2, 1);
43
+ color: var(--fs-group-color);
40
44
  min-width: 24px !important;
41
45
  width: 24px !important;
42
46
  flex: 1 1 0 !important;
43
- color: var(--fs-group-color);
44
47
 
45
48
  @include touchscreen {
46
49
  display: none !important;
47
50
  }
48
51
  }
49
52
 
50
- // Light background color & dark text color on arrows when hovered
53
+ // Change color on arrows when hovered
51
54
  .v-slide-group__prev:hover,
52
55
  .v-slide-group__next:hover {
53
- background-color: var(--fs-group-hover-background-color);
54
56
  color: var(--fs-group-hover-color);
55
57
  }
56
58
 
57
- // Light text color on arrows when disabled
59
+ // remove arrows when disabled
58
60
  .v-slide-group__prev--disabled,
59
61
  .v-slide-group__next--disabled {
60
- color: var(--fs-group-disabled-color) !important;
62
+ display: none !important;
63
+ }
64
+
65
+ // Badges are totally overriden
66
+ .v-badge__badge {
67
+ align-items: center !important;
68
+ justify-content: center !important;
69
+ padding: 3px 4px 3px 4px !important;
70
+ font-size: 10px !important;
71
+ font-weight: 900;
72
+ min-width: 16px !important;
73
+ height: 16px !important;
61
74
  }
62
75
 
63
- /***************************************************************************/
76
+ /***************************************************************************/