@simplybusiness/mobius 9.3.4 → 10.1.0

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 (155) hide show
  1. package/CHANGELOG.md +30 -0
  2. package/dist/cjs/components/AddressLookup/AddressLookup.js +9 -4
  3. package/dist/cjs/components/AddressLookup/AddressLookup.js.map +2 -2
  4. package/dist/cjs/components/AddressLookup/index.js +9 -4
  5. package/dist/cjs/components/AddressLookup/index.js.map +2 -2
  6. package/dist/cjs/components/Checkbox/Checkbox.js +9 -4
  7. package/dist/cjs/components/Checkbox/Checkbox.js.map +2 -2
  8. package/dist/cjs/components/Checkbox/CheckboxGroup.js +9 -4
  9. package/dist/cjs/components/Checkbox/CheckboxGroup.js.map +2 -2
  10. package/dist/cjs/components/Checkbox/index.js +9 -4
  11. package/dist/cjs/components/Checkbox/index.js.map +2 -2
  12. package/dist/cjs/components/Combobox/Combobox.js +9 -4
  13. package/dist/cjs/components/Combobox/Combobox.js.map +2 -2
  14. package/dist/cjs/components/Combobox/index.js +9 -4
  15. package/dist/cjs/components/Combobox/index.js.map +2 -2
  16. package/dist/cjs/components/DateField/DateField.js +9 -4
  17. package/dist/cjs/components/DateField/DateField.js.map +2 -2
  18. package/dist/cjs/components/DateField/index.js +9 -4
  19. package/dist/cjs/components/DateField/index.js.map +2 -2
  20. package/dist/cjs/components/ErrorMessage/ErrorMessage.js +9 -4
  21. package/dist/cjs/components/ErrorMessage/ErrorMessage.js.map +2 -2
  22. package/dist/cjs/components/ErrorMessage/index.js +9 -4
  23. package/dist/cjs/components/ErrorMessage/index.js.map +2 -2
  24. package/dist/cjs/components/ExpandableText/ExpandableText.js +9 -4
  25. package/dist/cjs/components/ExpandableText/ExpandableText.js.map +2 -2
  26. package/dist/cjs/components/ExpandableText/index.js +9 -4
  27. package/dist/cjs/components/ExpandableText/index.js.map +2 -2
  28. package/dist/cjs/components/MaskedField/MaskedField.js +9 -4
  29. package/dist/cjs/components/MaskedField/MaskedField.js.map +2 -2
  30. package/dist/cjs/components/MaskedField/index.js +9 -4
  31. package/dist/cjs/components/MaskedField/index.js.map +2 -2
  32. package/dist/cjs/components/NumberField/NumberField.js +9 -4
  33. package/dist/cjs/components/NumberField/NumberField.js.map +2 -2
  34. package/dist/cjs/components/NumberField/index.js +9 -4
  35. package/dist/cjs/components/NumberField/index.js.map +2 -2
  36. package/dist/cjs/components/PasswordField/PasswordField.js +9 -4
  37. package/dist/cjs/components/PasswordField/PasswordField.js.map +2 -2
  38. package/dist/cjs/components/PasswordField/ShowHideButton.js +9 -4
  39. package/dist/cjs/components/PasswordField/ShowHideButton.js.map +2 -2
  40. package/dist/cjs/components/PasswordField/index.js +9 -4
  41. package/dist/cjs/components/PasswordField/index.js.map +2 -2
  42. package/dist/cjs/components/Radio/Radio.js +9 -4
  43. package/dist/cjs/components/Radio/Radio.js.map +2 -2
  44. package/dist/cjs/components/Radio/RadioGroup.js +9 -4
  45. package/dist/cjs/components/Radio/RadioGroup.js.map +2 -2
  46. package/dist/cjs/components/Radio/index.js +9 -4
  47. package/dist/cjs/components/Radio/index.js.map +2 -2
  48. package/dist/cjs/components/Select/Select.js +9 -4
  49. package/dist/cjs/components/Select/Select.js.map +2 -2
  50. package/dist/cjs/components/Select/index.js +9 -4
  51. package/dist/cjs/components/Select/index.js.map +2 -2
  52. package/dist/cjs/components/TextArea/TextArea.js +9 -4
  53. package/dist/cjs/components/TextArea/TextArea.js.map +2 -2
  54. package/dist/cjs/components/TextArea/index.js +9 -4
  55. package/dist/cjs/components/TextArea/index.js.map +2 -2
  56. package/dist/cjs/components/TextField/TextField.js +9 -4
  57. package/dist/cjs/components/TextField/TextField.js.map +2 -2
  58. package/dist/cjs/components/TextField/index.js +9 -4
  59. package/dist/cjs/components/TextField/index.js.map +2 -2
  60. package/dist/cjs/components/TextOrHTML/TextOrHTML.js +8 -3
  61. package/dist/cjs/components/TextOrHTML/TextOrHTML.js.map +2 -2
  62. package/dist/cjs/components/TextOrHTML/index.js +8 -3
  63. package/dist/cjs/components/TextOrHTML/index.js.map +2 -2
  64. package/dist/cjs/components/index.js +9 -4
  65. package/dist/cjs/components/index.js.map +2 -2
  66. package/dist/cjs/index.js +9 -4
  67. package/dist/cjs/index.js.map +2 -2
  68. package/dist/cjs/meta.json +100 -100
  69. package/dist/esm/{chunk-ZU3XMAWQ.js → chunk-C4BILMFX.js} +2 -2
  70. package/dist/esm/{chunk-HHJ4Y5JQ.js → chunk-QRHDVVRK.js} +9 -4
  71. package/dist/esm/chunk-QRHDVVRK.js.map +7 -0
  72. package/dist/esm/components/AddressLookup/AddressLookup.js +2 -2
  73. package/dist/esm/components/AddressLookup/index.js +2 -2
  74. package/dist/esm/components/Checkbox/Checkbox.js +2 -2
  75. package/dist/esm/components/Checkbox/CheckboxGroup.js +2 -2
  76. package/dist/esm/components/Checkbox/index.js +2 -2
  77. package/dist/esm/components/Combobox/Combobox.js +2 -2
  78. package/dist/esm/components/Combobox/index.js +2 -2
  79. package/dist/esm/components/DateField/DateField.js +2 -2
  80. package/dist/esm/components/DateField/index.js +2 -2
  81. package/dist/esm/components/ErrorMessage/ErrorMessage.js +2 -2
  82. package/dist/esm/components/ErrorMessage/index.js +2 -2
  83. package/dist/esm/components/ExpandableText/ExpandableText.js +2 -2
  84. package/dist/esm/components/ExpandableText/index.js +2 -2
  85. package/dist/esm/components/MaskedField/MaskedField.js +2 -2
  86. package/dist/esm/components/MaskedField/index.js +2 -2
  87. package/dist/esm/components/NumberField/NumberField.js +2 -2
  88. package/dist/esm/components/NumberField/index.js +2 -2
  89. package/dist/esm/components/PasswordField/PasswordField.js +2 -2
  90. package/dist/esm/components/PasswordField/ShowHideButton.js +2 -2
  91. package/dist/esm/components/PasswordField/index.js +2 -2
  92. package/dist/esm/components/Radio/Radio.js +2 -2
  93. package/dist/esm/components/Radio/RadioGroup.js +2 -2
  94. package/dist/esm/components/Radio/index.js +2 -2
  95. package/dist/esm/components/Select/Select.js +2 -2
  96. package/dist/esm/components/Select/index.js +2 -2
  97. package/dist/esm/components/TextArea/TextArea.js +2 -2
  98. package/dist/esm/components/TextArea/index.js +2 -2
  99. package/dist/esm/components/TextField/TextField.js +2 -2
  100. package/dist/esm/components/TextField/index.js +2 -2
  101. package/dist/esm/components/TextOrHTML/TextOrHTML.js +1 -1
  102. package/dist/esm/components/TextOrHTML/index.js +1 -1
  103. package/dist/esm/components/index.js +2 -2
  104. package/dist/esm/index.js +2 -2
  105. package/dist/esm/meta.json +73 -73
  106. package/dist/tsconfig.build.tsbuildinfo +1 -1
  107. package/dist/types/components/TextOrHTML/TextOrHTML.d.ts +3 -1
  108. package/package.json +2 -2
  109. package/src/components/Accordion/Accordion.css +79 -71
  110. package/src/components/Accordion/AccordionList.css +25 -23
  111. package/src/components/Alert/Alert.css +46 -44
  112. package/src/components/Box/Box.css +4 -2
  113. package/src/components/Breadcrumbs/Breadcrumbs.css +25 -23
  114. package/src/components/Button/Button.css +227 -219
  115. package/src/components/Button/Button.story.styles.css +9 -7
  116. package/src/components/Checkbox/Checkbox.css +106 -104
  117. package/src/components/Checkbox/CheckboxGroup.css +22 -20
  118. package/src/components/Combobox/Combobox.css +96 -94
  119. package/src/components/Container/Container.css +11 -9
  120. package/src/components/Divider/Divider.css +14 -12
  121. package/src/components/Drawer/Drawer.css +157 -155
  122. package/src/components/DropdownMenu/DropdownMenu.css +54 -52
  123. package/src/components/DropdownMenu/DropdownMenu.story.styles.css +11 -9
  124. package/src/components/ErrorMessage/ErrorMessage.css +30 -28
  125. package/src/components/ExpandableText/ExpandableText.css +11 -9
  126. package/src/components/Fieldset/Fieldset.css +13 -11
  127. package/src/components/Flex/Flex.css +5 -3
  128. package/src/components/Grid/Grid.story.styles.css +18 -16
  129. package/src/components/Icon/Icon.css +37 -35
  130. package/src/components/Label/Label.css +13 -11
  131. package/src/components/Link/Link.css +29 -27
  132. package/src/components/List/List.css +47 -45
  133. package/src/components/LoadingIndicator/LoadingIndicator.css +4 -2
  134. package/src/components/Modal/Modal.css +122 -120
  135. package/src/components/NumberField/NumberField.css +58 -56
  136. package/src/components/PasswordField/PasswordField.css +27 -25
  137. package/src/components/Popover/Popover.css +32 -30
  138. package/src/components/Popover/Popover.story.styles.css +24 -22
  139. package/src/components/Progress/Progress.css +25 -23
  140. package/src/components/Radio/Radio.css +167 -163
  141. package/src/components/Segment/Segment.css +163 -161
  142. package/src/components/Select/Select.css +82 -80
  143. package/src/components/Slider/Slider.css +113 -111
  144. package/src/components/Stack/Stack.css +24 -22
  145. package/src/components/Switch/Switch.css +58 -56
  146. package/src/components/Table/Table.css +52 -50
  147. package/src/components/Text/Text.css +92 -90
  148. package/src/components/TextArea/TextArea.css +41 -39
  149. package/src/components/TextField/TextField.css +132 -130
  150. package/src/components/TextOrHTML/TextOrHTML.test.tsx +95 -0
  151. package/src/components/TextOrHTML/TextOrHTML.tsx +13 -3
  152. package/src/components/Title/Title.css +32 -30
  153. package/src/components/Toast/Toast.css +234 -232
  154. package/dist/esm/chunk-HHJ4Y5JQ.js.map +0 -7
  155. /package/dist/esm/{chunk-ZU3XMAWQ.js.map → chunk-C4BILMFX.js.map} +0 -0
@@ -1,200 +1,202 @@
1
- /* stylelint-disable no-descending-specificity, no-duplicate-selectors -- complex component with nested groups */
2
- /*-----------------------------------------------------------------------------
3
- Wrapper around select and dropdown icon
4
- ----------------------------------------------------------------------------*/
5
- .mobius-segment-group {
6
- box-sizing: border-box;
7
- display: flex;
8
- flex-direction: column;
9
- border: var(--segment-border);
10
- border-radius: var(--radius-2);
11
- margin-bottom: var(--size-sm);
12
-
13
- /* Horizontal stack */
14
- &.--is-horizontal {
15
- flex-direction: row;
16
- }
17
-
18
- /* Margins around SegmentGroup */
19
- & .mobius-segment-group.gap-size-xs,
20
- &.gap-size-xs {
21
- margin: var(--size-xs);
22
- }
1
+ @layer atoms {
2
+ /* stylelint-disable no-descending-specificity, no-duplicate-selectors -- complex component with nested groups */
3
+ /*-----------------------------------------------------------------------------
4
+ Wrapper around select and dropdown icon
5
+ ----------------------------------------------------------------------------*/
6
+ .mobius-segment-group {
7
+ box-sizing: border-box;
8
+ display: flex;
9
+ flex-direction: column;
10
+ border: var(--segment-border);
11
+ border-radius: var(--radius-2);
12
+ margin-bottom: var(--size-sm);
13
+
14
+ /* Horizontal stack */
15
+ &.--is-horizontal {
16
+ flex-direction: row;
17
+ }
23
18
 
24
- & .mobius-segment-group.gap-size-s,
25
- &.gap-size-s {
26
- margin: var(--size-sm);
27
- }
19
+ /* Margins around SegmentGroup */
20
+ & .mobius-segment-group.gap-size-xs,
21
+ &.gap-size-xs {
22
+ margin: var(--size-xs);
23
+ }
28
24
 
29
- & .mobius-segment-group.gap-size-m,
30
- &.gap-size-m {
31
- margin: var(--size-md);
32
- }
25
+ & .mobius-segment-group.gap-size-s,
26
+ &.gap-size-s {
27
+ margin: var(--size-sm);
28
+ }
33
29
 
34
- & .mobius-segment-group.gap-size-l,
35
- &.gap-size-l {
36
- margin: var(--size-lm);
37
- }
30
+ & .mobius-segment-group.gap-size-m,
31
+ &.gap-size-m {
32
+ margin: var(--size-md);
33
+ }
38
34
 
39
- & .mobius-segment-group.gap-size-xl,
40
- &.gap-size-xl {
41
- margin: var(--size-xl);
42
- }
35
+ & .mobius-segment-group.gap-size-l,
36
+ &.gap-size-l {
37
+ margin: var(--size-lm);
38
+ }
43
39
 
44
- & .mobius-segment-group.gap-size-xxl,
45
- &.gap-size-xxl {
46
- margin: var(--size-xxl);
47
- }
40
+ & .mobius-segment-group.gap-size-xl,
41
+ &.gap-size-xl {
42
+ margin: var(--size-xl);
43
+ }
48
44
 
49
- /* Groups of vertically attached elements */
50
- & > .mobius-segment {
51
- border: none;
52
- border-top: var(--segment-border);
53
- }
45
+ & .mobius-segment-group.gap-size-xxl,
46
+ &.gap-size-xxl {
47
+ margin: var(--size-xxl);
48
+ }
54
49
 
55
- &:not(.--is-horizontal) {
50
+ /* Groups of vertically attached elements */
56
51
  & > .mobius-segment {
57
- &:first-child {
58
- border-top: none;
59
- border-radius: var(--radius-2);
52
+ border: none;
53
+ border-top: var(--segment-border);
54
+ }
55
+
56
+ &:not(.--is-horizontal) {
57
+ & > .mobius-segment {
58
+ &:first-child {
59
+ border-top: none;
60
+ border-radius: var(--radius-2);
61
+ }
62
+
63
+ &:not(:first-child):not(:last-child) {
64
+ border-radius: 0;
65
+ border-bottom: 0;
66
+ }
67
+
68
+ &:last-child {
69
+ border-top-left-radius: 0;
70
+ border-top-right-radius: 0;
71
+ }
60
72
  }
73
+ }
61
74
 
62
- &:not(:first-child):not(:last-child) {
75
+ /* Groups of horizontally attached elements */
76
+ &.--is-horizontal {
77
+ & > .mobius-segment,
78
+ & > .mobius-segment-group {
79
+ border: none;
63
80
  border-radius: 0;
64
- border-bottom: 0;
81
+ border-left: var(--segment-border);
65
82
  }
66
83
 
67
- &:last-child {
68
- border-top-left-radius: 0;
84
+ & > .mobius-segment:first-child,
85
+ & > .mobius-segment-group:first-child {
86
+ border-left: 0;
69
87
  border-top-right-radius: 0;
88
+ border-bottom-right-radius: 0;
70
89
  }
71
- }
72
- }
73
90
 
74
- /* Groups of horizontally attached elements */
75
- &.--is-horizontal {
76
- & > .mobius-segment,
77
- & > .mobius-segment-group {
78
- border: none;
79
- border-radius: 0;
80
- border-left: var(--segment-border);
81
- }
91
+ & > .mobius-segment:not(:first-child):not(:last-child) {
92
+ border-right: 0;
93
+ border-radius: 0;
94
+ }
82
95
 
83
- & > .mobius-segment:first-child,
84
- & > .mobius-segment-group:first-child {
85
- border-left: 0;
86
- border-top-right-radius: 0;
87
- border-bottom-right-radius: 0;
96
+ & > .mobius-segment:last-child {
97
+ border-top-left-radius: 0;
98
+ border-bottom-left-radius: 0;
99
+ }
88
100
  }
89
101
 
90
- & > .mobius-segment:not(:first-child):not(:last-child) {
91
- border-right: 0;
92
- border-radius: 0;
93
- }
102
+ /* Nested Groups: don't double up on borders */
103
+ & .mobius-segment-group {
104
+ border-top: none;
105
+ margin-top: 0;
106
+ margin-bottom: 0;
107
+ flex: 1;
94
108
 
95
- & > .mobius-segment:last-child {
96
- border-top-left-radius: 0;
97
- border-bottom-left-radius: 0;
109
+ & > .mobius-segment-group.--is-horizontal {
110
+ border-radius: 0;
111
+ border: 0;
112
+ border-top: var(--segment-border);
113
+ margin: 0;
114
+ }
115
+
116
+ &:not(.--is-horizontal)
117
+ > .mobius-segment-group:not(.--is-horizontal)
118
+ .mobius-segment:first-child {
119
+ border-top: var(--segment-border);
120
+ }
121
+ /* NOTE: We may need a similar rule for horizontally
122
+ nested Segments inside groups for a left border */
98
123
  }
99
124
  }
100
125
 
101
- /* Nested Groups: don't double up on borders */
102
- & .mobius-segment-group {
103
- border-top: none;
104
- margin-top: 0;
105
- margin-bottom: 0;
106
- flex: 1;
107
-
108
- & > .mobius-segment-group.--is-horizontal {
109
- border-radius: 0;
110
- border: 0;
111
- border-top: var(--segment-border);
126
+ .mobius-segment {
127
+ box-sizing: border-box;
128
+ display: flex;
129
+ flex-direction: column;
130
+ align-items: flex-start;
131
+ width: 100%;
132
+ border: var(--segment-border);
133
+ border-radius: var(--radius-2);
134
+ padding: var(--size-sm);
135
+
136
+ /* Remove text margins from inner text atoms */
137
+ & .mobius-text,
138
+ & .mobius-text.--is-h1,
139
+ & .mobius-text.--is-h2,
140
+ & .mobius-text.--is-h3,
141
+ & .mobius-text.--is-h4 {
112
142
  margin: 0;
113
143
  }
114
144
 
115
- &:not(.--is-horizontal)
116
- > .mobius-segment-group:not(.--is-horizontal)
117
- .mobius-segment:first-child {
118
- border-top: var(--segment-border);
145
+ & h1,
146
+ & h2,
147
+ & h3,
148
+ & h4,
149
+ & p {
150
+ margin: 0;
119
151
  }
120
- /* NOTE: We may need a similar rule for horizontally
121
- nested Segments inside groups for a left border */
122
- }
123
- }
124
-
125
- .mobius-segment {
126
- box-sizing: border-box;
127
- display: flex;
128
- flex-direction: column;
129
- align-items: flex-start;
130
- width: 100%;
131
- border: var(--segment-border);
132
- border-radius: var(--radius-2);
133
- padding: var(--size-sm);
134
-
135
- /* Remove text margins from inner text atoms */
136
- & .mobius-text,
137
- & .mobius-text.--is-h1,
138
- & .mobius-text.--is-h2,
139
- & .mobius-text.--is-h3,
140
- & .mobius-text.--is-h4 {
141
- margin: 0;
142
- }
143
152
 
144
- & h1,
145
- & h2,
146
- & h3,
147
- & h4,
148
- & p {
149
- margin: 0;
150
- }
153
+ & .mobius-text.--is-p {
154
+ line-height: var(--font-size-lead);
155
+ }
151
156
 
152
- & .mobius-text.--is-p {
153
- line-height: var(--font-size-lead);
154
- }
157
+ /* Colours */
158
+ &.subtle {
159
+ background-color: var(--color-border-light);
160
+ }
155
161
 
156
- /* Colours */
157
- &.subtle {
158
- background-color: var(--color-border-light);
159
- }
162
+ &.grey {
163
+ background-color: var(--color-background-light);
164
+ }
160
165
 
161
- &.grey {
162
- background-color: var(--color-background-light);
163
- }
166
+ &.primary {
167
+ background-color: var(--color-primary);
168
+ }
164
169
 
165
- &.primary {
166
- background-color: var(--color-primary);
167
- }
170
+ &.secondary {
171
+ background-color: var(--color-secondary);
172
+ }
168
173
 
169
- &.secondary {
170
- background-color: var(--color-secondary);
171
- }
174
+ &.inverted {
175
+ color: var(--color-text-inverted);
176
+ }
172
177
 
173
- &.inverted {
174
- color: var(--color-text-inverted);
175
- }
178
+ /* Last child inside a Segment should have no bottom margin */
179
+ & .mobius-text-field:last-child,
180
+ & .mobius-checkbox:last-child,
181
+ & .mobius-radio-group:last-child,
182
+ & .mobius-text-area:last-child,
183
+ & .mobius-select__outer:last-child {
184
+ margin-bottom: 0 !important;
185
+ }
176
186
 
177
- /* Last child inside a Segment should have no bottom margin */
178
- & .mobius-text-field:last-child,
179
- & .mobius-checkbox:last-child,
180
- & .mobius-radio-group:last-child,
181
- & .mobius-text-area:last-child,
182
- & .mobius-select__outer:last-child {
183
- margin-bottom: 0 !important;
187
+ /* Nested Groups inside Segments:
188
+ make full width and remove bottom margin*/
189
+ & .mobius-segment-group {
190
+ width: 100%;
191
+ margin-bottom: 0;
192
+ }
184
193
  }
185
194
 
186
- /* Nested Groups inside Segments:
187
- make full width and remove bottom margin*/
188
- & .mobius-segment-group {
189
- width: 100%;
190
- margin-bottom: 0;
195
+ /* Heading */
196
+ .mobius-segment__heading {
197
+ box-sizing: border-box;
198
+ font-size: var(--font-size-regular);
199
+ margin: 0;
200
+ margin-bottom: var(--size-sm);
191
201
  }
192
202
  }
193
-
194
- /* Heading */
195
- .mobius-segment__heading {
196
- box-sizing: border-box;
197
- font-size: var(--font-size-regular);
198
- margin: 0;
199
- margin-bottom: var(--size-sm);
200
- }
@@ -1,97 +1,99 @@
1
- .mobius-select__outer {
2
- box-sizing: border-box;
3
- width: 100%;
1
+ @layer atoms {
2
+ .mobius-select__outer {
3
+ box-sizing: border-box;
4
+ width: 100%;
4
5
 
5
- & > :where(.mobius-label.--is-optional)::after {
6
- content: " (optional)";
6
+ & > :where(.mobius-label.--is-optional)::after {
7
+ content: " (optional)";
8
+ }
7
9
  }
8
- }
9
-
10
- .mobius-select__wrapper {
11
- box-sizing: border-box;
12
- display: flex;
13
- align-items: center;
14
- position: relative;
15
- max-width: var(--select-wrapper-max-width);
16
- }
17
10
 
18
- .mobius-select {
19
- box-sizing: border-box;
20
- width: 100%;
21
- padding: var(--input-field-padding);
22
- padding-right: var(--size-xxl);
23
- font-family: var(--font-family);
24
- font-size: var(--font-size-regular);
25
- color: var(--color-text);
26
- border: var(--border-default);
27
- border-radius: var(--input-border-radius);
28
- background-color: var(--color-background-input);
29
- outline: 0;
30
- appearance: none;
31
- white-space: nowrap;
32
- text-overflow: ellipsis;
11
+ .mobius-select__wrapper {
12
+ box-sizing: border-box;
13
+ display: flex;
14
+ align-items: center;
15
+ position: relative;
16
+ max-width: var(--select-wrapper-max-width);
17
+ }
33
18
 
34
- /* Hack for placeholder option: only works for required */
35
- & option {
19
+ .mobius-select {
20
+ box-sizing: border-box;
21
+ width: 100%;
22
+ padding: var(--input-field-padding);
23
+ padding-right: var(--size-xxl);
24
+ font-family: var(--font-family);
25
+ font-size: var(--font-size-regular);
36
26
  color: var(--color-text);
37
- }
27
+ border: var(--border-default);
28
+ border-radius: var(--input-border-radius);
29
+ background-color: var(--color-background-input);
30
+ outline: 0;
31
+ appearance: none;
32
+ white-space: nowrap;
33
+ text-overflow: ellipsis;
38
34
 
39
- & option[disabled][selected] {
40
- color: var(--color-text-medium);
41
- }
35
+ /* Hack for placeholder option: only works for required */
36
+ & option {
37
+ color: var(--color-text);
38
+ }
42
39
 
43
- &:invalid {
44
- color: var(--color-text-medium);
45
- }
40
+ & option[disabled][selected] {
41
+ color: var(--color-text-medium);
42
+ }
46
43
 
47
- /* Disabled */
48
- &.--is-disabled {
49
- background-color: var(--color-background-light);
50
- border-color: var(--color-border-medium);
51
- color: var(--color-text-light);
52
- cursor: not-allowed;
53
- }
44
+ &:invalid {
45
+ color: var(--color-text-medium);
46
+ }
54
47
 
55
- /* Focused */
56
- &:focus-visible {
57
- border-color: var(--color-primary);
58
- background-color: var(--color-background-input-active);
59
- box-shadow: var(--box-shadow-default);
60
- }
48
+ /* Disabled */
49
+ &.--is-disabled {
50
+ background-color: var(--color-background-light);
51
+ border-color: var(--color-border-medium);
52
+ color: var(--color-text-light);
53
+ cursor: not-allowed;
54
+ }
61
55
 
62
- /* Hovered */
63
- &:not(.--is-invalid):not(.--is-disabled):hover {
64
- border-color: var(--color-primary);
65
- background-color: var(--color-background-input-active);
66
- }
56
+ /* Focused */
57
+ &:focus-visible {
58
+ border-color: var(--color-primary);
59
+ background-color: var(--color-background-input-active);
60
+ box-shadow: var(--box-shadow-default);
61
+ }
67
62
 
68
- /* Invalid */
69
- &.--is-invalid {
70
- border-color: var(--color-error);
71
- background-color: var(--color-error-background);
72
- color: var(--color-error);
63
+ /* Hovered */
64
+ &:not(.--is-invalid):not(.--is-disabled):hover {
65
+ border-color: var(--color-primary);
66
+ background-color: var(--color-background-input-active);
67
+ }
68
+
69
+ /* Invalid */
70
+ &.--is-invalid {
71
+ border-color: var(--color-error);
72
+ background-color: var(--color-error-background);
73
+ color: var(--color-error);
74
+ }
73
75
  }
74
- }
75
76
 
76
- .mobius-select__icon {
77
- box-sizing: border-box;
78
- display: flex;
79
- align-items: center;
80
- justify-content: center;
81
- position: absolute;
82
- right: 2px;
83
- height: 100%;
84
- width: var(--size-xxl);
85
- padding: var(--size-md);
86
- border-radius: var(--radius-1);
87
- pointer-events: none;
88
- color: var(--color-primary-light);
77
+ .mobius-select__icon {
78
+ box-sizing: border-box;
79
+ display: flex;
80
+ align-items: center;
81
+ justify-content: center;
82
+ position: absolute;
83
+ right: 2px;
84
+ height: 100%;
85
+ width: var(--size-xxl);
86
+ padding: var(--size-md);
87
+ border-radius: var(--radius-1);
88
+ pointer-events: none;
89
+ color: var(--color-primary-light);
89
90
 
90
- &.--is-disabled {
91
- color: var(--color-text-light);
92
- }
91
+ &.--is-disabled {
92
+ color: var(--color-text-light);
93
+ }
93
94
 
94
- &.--is-invalid {
95
- color: var(--color-error);
95
+ &.--is-invalid {
96
+ color: var(--color-error);
97
+ }
96
98
  }
97
99
  }