ropav 0.0.3 → 0.0.5

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 (49) hide show
  1. package/README.md +11 -2
  2. package/dist/base.css +52 -12
  3. package/dist/button.css +18 -1
  4. package/dist/button.js +2 -22
  5. package/dist/button.js.map +1 -1
  6. package/dist/card.css +88 -0
  7. package/dist/card.js +71 -0
  8. package/dist/card.js.map +1 -0
  9. package/dist/checkbox.css +21 -6
  10. package/dist/checkbox.js +11 -33
  11. package/dist/checkbox.js.map +1 -1
  12. package/dist/components/button/types.d.ts +1 -1
  13. package/dist/components/card/card.d.ts +21 -0
  14. package/dist/components/card/index.d.ts +2 -0
  15. package/dist/components/card/index.js +2 -0
  16. package/dist/components/card/types.d.ts +11 -0
  17. package/dist/components/checkbox/types.d.ts +1 -1
  18. package/dist/components/field/field.d.ts +35 -0
  19. package/dist/components/field/index.d.ts +2 -0
  20. package/dist/components/field/index.js +2 -0
  21. package/dist/components/field/types.d.ts +21 -0
  22. package/dist/components/icon-button/icon-button.d.ts +21 -0
  23. package/dist/components/icon-button/index.d.ts +2 -0
  24. package/dist/components/icon-button/index.js +2 -0
  25. package/dist/components/icon-button/types.d.ts +15 -0
  26. package/dist/components/radio/types.d.ts +1 -1
  27. package/dist/components/switch/types.d.ts +1 -1
  28. package/dist/field.css +40 -0
  29. package/dist/field.js +128 -0
  30. package/dist/field.js.map +1 -0
  31. package/dist/icon-button.css +339 -0
  32. package/dist/icon-button.js +63 -0
  33. package/dist/icon-button.js.map +1 -0
  34. package/dist/index.d.ts +3 -0
  35. package/dist/index.js +4 -1
  36. package/dist/input.css +25 -15
  37. package/dist/loader-circle.js +14 -0
  38. package/dist/loader-circle.js.map +1 -0
  39. package/dist/radio.css +9 -5
  40. package/dist/radio.js.map +1 -1
  41. package/dist/select.css +24 -14
  42. package/dist/select.js +11 -33
  43. package/dist/select.js.map +1 -1
  44. package/dist/switch.css +16 -7
  45. package/dist/textarea.css +24 -14
  46. package/package.json +15 -2
  47. package/src/styles/_mixins.scss +3 -3
  48. package/src/styles/_tokens.scss +53 -11
  49. package/src/styles/_variables.scss +4 -1
package/dist/switch.css CHANGED
@@ -1,18 +1,24 @@
1
1
  .rp-switch[data-v-aeef0d94] {
2
- --_switch-color: var(--rp-color-primary);
2
+ --_switch-color: var(--rp-color-control-selected-bg);
3
3
  --_switch-font-size: var(--rp-font-size-base);
4
4
  --_track-w: 40px;
5
5
  --_track-h: 22px;
6
6
  --_thumb-size: 18px;
7
7
  --_thumb-offset: 2px;
8
- --_track-bg: var(--rp-color-border);
9
- --_thumb-bg: #ffffff;
8
+ --_track-bg: var(--rp-color-control-track-bg);
9
+ --_thumb-bg: var(--rp-color-control-thumb-bg);
10
+ --_switch-invalid-border: var(--rp-color-danger);
11
+ --_switch-invalid-ring: color-mix(in srgb, var(--rp-color-danger) 32%, transparent);
10
12
  display: inline-flex;
11
13
  align-items: center;
12
14
  cursor: pointer;
13
15
  font-family: var(--rp-font-family);
14
16
  user-select: none;
15
17
  }
18
+ html.dark .rp-switch[data-v-aeef0d94] {
19
+ --_switch-invalid-border: var(--rp-color-danger-fg);
20
+ --_switch-invalid-ring: color-mix(in srgb, var(--rp-color-danger-fg) 32%, transparent);
21
+ }
16
22
  .rp-switch--disabled[data-v-aeef0d94] {
17
23
  opacity: var(--rp-opacity-disabled);
18
24
  cursor: not-allowed;
@@ -21,9 +27,6 @@
21
27
  gap: var(--rp-spacing-2);
22
28
  font-size: var(--_switch-font-size);
23
29
  }
24
- html.dark .rp-switch[data-v-aeef0d94] {
25
- --_thumb-bg: var(--rp-color-surface-inverted);
26
- }
27
30
  .rp-switch__native[data-v-aeef0d94] {
28
31
  position: absolute;
29
32
  width: 1px;
@@ -55,9 +58,12 @@ html.dark .rp-switch[data-v-aeef0d94] {
55
58
  background-color: var(--_switch-color);
56
59
  }
57
60
  .rp-switch--invalid .rp-switch__track[data-v-aeef0d94] {
58
- outline: var(--rp-border-width-thin) solid var(--rp-color-danger-fg);
61
+ outline: var(--rp-border-width-thin) solid var(--_switch-invalid-border);
59
62
  outline-offset: var(--_thumb-offset);
60
63
  }
64
+ .rp-switch--invalid .rp-switch__native:focus-visible + .rp-switch__track[data-v-aeef0d94] {
65
+ box-shadow: 0 0 0 var(--rp-border-width-medium) var(--_switch-invalid-ring);
66
+ }
61
67
  .rp-switch__thumb[data-v-aeef0d94] {
62
68
  position: absolute;
63
69
  left: var(--_thumb-offset);
@@ -93,6 +99,9 @@ html.dark .rp-switch[data-v-aeef0d94] {
93
99
  .rp-switch--color-info[data-v-aeef0d94] {
94
100
  --_switch-color: var(--rp-color-info);
95
101
  }
102
+ .rp-switch--color-neutral[data-v-aeef0d94] {
103
+ --_switch-color: var(--rp-color-neutral);
104
+ }
96
105
  .rp-switch--size-xs[data-v-aeef0d94] {
97
106
  --_track-w: 28px;
98
107
  --_track-h: 16px;
package/dist/textarea.css CHANGED
@@ -3,20 +3,24 @@
3
3
  --_rp-textarea-padding-x: var(--rp-spacing-3);
4
4
  --_rp-textarea-font-size: var(--rp-font-size-base);
5
5
  --_rp-textarea-radius: var(--rp-radius-sm);
6
+ --_rp-textarea-valid-border: var(--rp-color-success-border-hover);
7
+ --_rp-textarea-valid-ring: color-mix(in srgb, var(--rp-color-success) 32%, transparent);
8
+ --_rp-textarea-invalid-border: var(--rp-color-danger);
9
+ --_rp-textarea-invalid-ring: color-mix(in srgb, var(--rp-color-danger) 32%, transparent);
6
10
  display: inline-flex;
7
11
  box-sizing: border-box;
8
12
  font-family: var(--rp-font-family);
9
13
  font-weight: var(--rp-font-weight-normal);
10
- background-color: var(--rp-color-button-default-bg);
11
- border: var(--rp-border-width-thin) solid var(--rp-color-border);
14
+ background-color: var(--rp-color-control-bg);
15
+ border: var(--rp-border-width-thin) solid var(--rp-color-control-border);
12
16
  cursor: text;
13
17
  transition: border-color var(--rp-transition-fast), box-shadow var(--rp-transition-fast);
14
18
  }
15
19
  .rp-textarea[data-v-2c68871d]:hover:not(.rp-textarea--disabled):not(.rp-textarea--invalid):not(.rp-textarea--valid) {
16
- border-color: var(--rp-color-border-hover);
20
+ border-color: var(--rp-color-control-border-hover);
17
21
  }
18
22
  .rp-textarea[data-v-2c68871d]:focus-within:not(.rp-textarea--disabled):not(.rp-textarea--invalid):not(.rp-textarea--valid) {
19
- border-color: var(--rp-color-primary);
23
+ border-color: var(--rp-color-control-border-focus);
20
24
  box-shadow: 0 0 0 var(--rp-border-width-medium) var(--rp-color-focus-ring);
21
25
  }
22
26
  .rp-textarea[data-v-2c68871d] {
@@ -50,7 +54,7 @@
50
54
  --_rp-textarea-font-size: var(--rp-font-size-lg);
51
55
  }
52
56
  .rp-textarea--radius-xs[data-v-2c68871d] {
53
- --_rp-textarea-radius: var(--rp-radius-sm);
57
+ --_rp-textarea-radius: var(--rp-radius-xs);
54
58
  }
55
59
  .rp-textarea--radius-sm[data-v-2c68871d] {
56
60
  --_rp-textarea-radius: var(--rp-radius-sm);
@@ -64,26 +68,32 @@
64
68
  .rp-textarea--radius-xl[data-v-2c68871d] {
65
69
  --_rp-textarea-radius: var(--rp-radius-xl);
66
70
  }
71
+ html.dark .rp-textarea[data-v-2c68871d] {
72
+ --_rp-textarea-valid-border: var(--rp-color-success-fg);
73
+ --_rp-textarea-valid-ring: color-mix(in srgb, var(--rp-color-success-fg) 32%, transparent);
74
+ --_rp-textarea-invalid-border: var(--rp-color-danger-fg);
75
+ --_rp-textarea-invalid-ring: color-mix(in srgb, var(--rp-color-danger-fg) 32%, transparent);
76
+ }
67
77
  .rp-textarea--disabled[data-v-2c68871d] {
68
78
  opacity: var(--rp-opacity-disabled);
69
79
  cursor: not-allowed;
70
80
  }
71
81
  .rp-textarea--valid[data-v-2c68871d] {
72
- border-color: var(--rp-color-success-fg);
82
+ border-color: var(--_rp-textarea-valid-border);
73
83
  }
74
84
  .rp-textarea--valid[data-v-2c68871d]:focus-within:not(.rp-textarea--disabled) {
75
- border-color: var(--rp-color-success-fg);
76
- box-shadow: 0 0 0 var(--rp-border-width-medium) color-mix(in srgb, var(--rp-color-success-fg) 32%, transparent);
85
+ border-color: var(--_rp-textarea-valid-border);
86
+ box-shadow: 0 0 0 var(--rp-border-width-medium) var(--_rp-textarea-valid-ring);
77
87
  }
78
88
  .rp-textarea--invalid[data-v-2c68871d] {
79
- border-color: var(--rp-color-danger-fg);
89
+ border-color: var(--_rp-textarea-invalid-border);
80
90
  }
81
91
  .rp-textarea--invalid[data-v-2c68871d]:focus-within:not(.rp-textarea--disabled) {
82
- border-color: var(--rp-color-danger-fg);
83
- box-shadow: 0 0 0 var(--rp-border-width-medium) color-mix(in srgb, var(--rp-color-danger-fg) 32%, transparent);
92
+ border-color: var(--_rp-textarea-invalid-border);
93
+ box-shadow: 0 0 0 var(--rp-border-width-medium) var(--_rp-textarea-invalid-ring);
84
94
  }
85
95
  .rp-textarea--readonly[data-v-2c68871d] {
86
- background-color: var(--rp-color-surface-muted);
96
+ background-color: var(--rp-color-control-readonly-bg);
87
97
  }
88
98
  .rp-textarea__native[data-v-2c68871d] {
89
99
  box-sizing: border-box;
@@ -95,11 +105,11 @@
95
105
  outline: none;
96
106
  background: transparent;
97
107
  font: inherit;
98
- color: var(--rp-color-text);
108
+ color: var(--rp-color-control-fg);
99
109
  line-height: var(--rp-line-height-relaxed);
100
110
  }
101
111
  .rp-textarea__native[data-v-2c68871d]::placeholder {
102
- color: var(--rp-color-text-secondary);
112
+ color: var(--rp-color-control-placeholder);
103
113
  }
104
114
  .rp-textarea__native[data-v-2c68871d]:disabled {
105
115
  cursor: not-allowed;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ropav",
3
- "version": "0.0.3",
3
+ "version": "0.0.5",
4
4
  "type": "module",
5
5
  "packageManager": "pnpm@11.9.0",
6
6
  "engines": {
@@ -25,10 +25,22 @@
25
25
  "types": "./dist/components/button/index.d.ts",
26
26
  "import": "./dist/components/button/index.js"
27
27
  },
28
+ "./card": {
29
+ "types": "./dist/components/card/index.d.ts",
30
+ "import": "./dist/components/card/index.js"
31
+ },
28
32
  "./checkbox": {
29
33
  "types": "./dist/components/checkbox/index.d.ts",
30
34
  "import": "./dist/components/checkbox/index.js"
31
35
  },
36
+ "./field": {
37
+ "types": "./dist/components/field/index.d.ts",
38
+ "import": "./dist/components/field/index.js"
39
+ },
40
+ "./icon-button": {
41
+ "types": "./dist/components/icon-button/index.d.ts",
42
+ "import": "./dist/components/icon-button/index.js"
43
+ },
32
44
  "./input": {
33
45
  "types": "./dist/components/input/index.d.ts",
34
46
  "import": "./dist/components/input/index.js"
@@ -56,7 +68,7 @@
56
68
  "dev": "pnpm run storybook",
57
69
  "tokens:build": "style-dictionary build --config scripts/tokens.config.mjs --silent",
58
70
  "tokens:check": "node scripts/check-tokens.mjs",
59
- "typecheck": "vue-tsc -b tsconfig.app.json tsconfig.node.json",
71
+ "typecheck": "vue-tsc -b tsconfig.app.json tsconfig.node.json tsconfig.test.json",
60
72
  "typecheck:storybook": "vue-tsc -p tsconfig.storybook.json --noEmit",
61
73
  "lint": "oxlint",
62
74
  "lint:fix": "oxlint --fix",
@@ -86,6 +98,7 @@
86
98
  "@types/node": "^25.9.4",
87
99
  "@vitejs/plugin-vue": "^6.0.7",
88
100
  "@vitest/browser-playwright": "^4.1.9",
101
+ "@vue/compiler-vapor": "3.6.0-beta.17",
89
102
  "@vue/tsconfig": "^0.9.1",
90
103
  "bumpp": "^11.1.0",
91
104
  "jsdom": "^29.1.1",
@@ -104,7 +104,7 @@
104
104
  }
105
105
 
106
106
  @mixin semantic-colors($var-name) {
107
- @each $name in primary, secondary, success, warning, danger, info {
107
+ @each $name in primary, secondary, success, warning, danger, info, neutral {
108
108
  &--#{$name} {
109
109
  #{$var-name}: var(--rp-color-#{$name}-fg);
110
110
  }
@@ -112,7 +112,7 @@
112
112
  }
113
113
 
114
114
  @mixin semantic-color-pair($color-var, $foreground-var) {
115
- @each $name in primary, secondary, success, warning, danger, info {
115
+ @each $name in primary, secondary, success, warning, danger, info, neutral {
116
116
  &--#{$name} {
117
117
  #{$color-var}: var(--rp-color-#{$name});
118
118
  #{$foreground-var}: var(--rp-color-on-#{$name});
@@ -121,7 +121,7 @@
121
121
  }
122
122
 
123
123
  @mixin semantic-state-colors($prefix) {
124
- @each $name in primary, secondary, success, warning, danger, info {
124
+ @each $name in primary, secondary, success, warning, danger, info, neutral {
125
125
  &--#{$name} {
126
126
  #{$prefix}-bg: var(--rp-color-#{$name});
127
127
  #{$prefix}-bg-hover: var(--rp-color-#{$name}-hover);
@@ -14,29 +14,43 @@
14
14
  --rp-color-warning : #{$color-warning};
15
15
  --rp-color-danger : #{$color-danger};
16
16
  --rp-color-info : #{$color-info};
17
+ --rp-color-neutral : #{$color-neutral};
17
18
  --rp-color-text : #{$color-text};
18
19
  --rp-color-text-secondary : #{$color-text-secondary};
19
20
  --rp-color-text-disabled : #{$color-text-disabled};
20
21
  --rp-color-text-inverted : #{$color-white};
21
22
  --rp-color-background : #{$color-background};
22
- --rp-color-surface : #{$color-white};
23
+ --rp-color-surface : #{$color-gray-1};
23
24
  --rp-color-surface-raised : #{$color-white};
24
25
  --rp-color-surface-muted : #{$color-gray-2};
25
26
  --rp-color-surface-hover : #{$color-gray-3};
26
- --rp-color-button-default-bg : #{$color-gray-2};
27
- --rp-color-button-default-bg-hover : #{$color-gray-3};
27
+ --rp-color-button-default-bg : var(--rp-color-surface);
28
+ --rp-color-button-default-bg-hover : var(--rp-color-surface-hover);
28
29
  --rp-color-button-default-bg-active : #{$color-gray-4};
29
30
  --rp-color-surface-inverted : #{$color-gray-12};
30
31
  --rp-color-overlay : rgba(17, 17, 17, 0.55);
31
32
  --rp-color-border : #{$color-border};
32
33
  --rp-color-border-hover : #{$color-border-hover};
33
34
  --rp-color-focus-ring : color-mix(in srgb, var(--rp-color-primary) 32%, transparent);
35
+ --rp-color-control-bg : var(--rp-color-surface);
36
+ --rp-color-control-readonly-bg : var(--rp-color-surface-muted);
37
+ --rp-color-control-fg : var(--rp-color-text);
38
+ --rp-color-control-placeholder : var(--rp-color-text-secondary);
39
+ --rp-color-control-icon : var(--rp-color-text-secondary);
40
+ --rp-color-control-border : var(--rp-color-border);
41
+ --rp-color-control-border-hover : var(--rp-color-border-hover);
42
+ --rp-color-control-border-focus : var(--rp-color-primary);
43
+ --rp-color-control-track-bg : var(--rp-color-border);
44
+ --rp-color-control-thumb-bg : #{$color-white};
45
+ --rp-color-control-selected-bg : var(--rp-color-primary);
46
+ --rp-color-control-selected-fg : var(--rp-color-on-primary);
34
47
  --rp-color-on-primary : #{$color-on-primary};
35
48
  --rp-color-on-secondary : #{$color-on-secondary};
36
49
  --rp-color-on-success : #{$color-on-success};
37
50
  --rp-color-on-warning : #{$color-on-warning};
38
51
  --rp-color-on-danger : #{$color-on-danger};
39
52
  --rp-color-on-info : #{$color-on-info};
53
+ --rp-color-on-neutral : #{$color-on-neutral};
40
54
  --rp-color-primary-hover : color-mix(in srgb, var(--rp-color-primary) 90%, #{$color-black});
41
55
  --rp-color-primary-active : color-mix(in srgb, var(--rp-color-primary) 80%, #{$color-black});
42
56
  --rp-color-primary-subtle-bg : #e6f4fe;
@@ -85,6 +99,14 @@
85
99
  --rp-color-info-border : #7dcedc;
86
100
  --rp-color-info-border-hover : #3db9cf;
87
101
  --rp-color-info-fg : #0d3c48;
102
+ --rp-color-neutral-hover : color-mix(in srgb, var(--rp-color-neutral) 90%, #{$color-black});
103
+ --rp-color-neutral-active : color-mix(in srgb, var(--rp-color-neutral) 80%, #{$color-black});
104
+ --rp-color-neutral-subtle-bg : #f0f0f0;
105
+ --rp-color-neutral-subtle-bg-hover : #e8e8e8;
106
+ --rp-color-neutral-subtle-bg-active : #e0e0e0;
107
+ --rp-color-neutral-border : #cecece;
108
+ --rp-color-neutral-border-hover : #bbbbbb;
109
+ --rp-color-neutral-fg : #202020;
88
110
 
89
111
  // Font sizes
90
112
  --rp-font-size-xs : #{$font-size-xs};
@@ -122,6 +144,7 @@
122
144
 
123
145
  // Border radius
124
146
  --rp-radius-none: #{$radius-none};
147
+ --rp-radius-xs : #{$radius-xs};
125
148
  --rp-radius-sm : #{$radius-sm};
126
149
  --rp-radius-md : #{$radius-md};
127
150
  --rp-radius-lg : #{$radius-lg};
@@ -137,6 +160,9 @@
137
160
  --rp-size-control-md: #{$size-control-md};
138
161
  --rp-size-control-lg: #{$size-control-lg};
139
162
 
163
+ // Opacity
164
+ --rp-opacity-disabled: #{$opacity-disabled};
165
+
140
166
  // Shadows
141
167
  --rp-shadow-sm : #{$shadow-sm};
142
168
  --rp-shadow-base: #{$shadow-base};
@@ -156,19 +182,29 @@ html.dark {
156
182
  --rp-color-text-secondary : #b4b4b4;
157
183
  --rp-color-text-disabled : #6e6e6e;
158
184
  --rp-color-text-inverted : #{$color-gray-12};
159
- --rp-color-background : #111111;
160
- --rp-color-surface : #111111;
161
- --rp-color-surface-raised : #191919;
162
- --rp-color-surface-muted : #191919;
163
- --rp-color-surface-hover : #222222;
164
- --rp-color-button-default-bg : #191919;
165
- --rp-color-button-default-bg-hover : #222222;
166
- --rp-color-button-default-bg-active : #2a2a2a;
185
+ --rp-color-background : #191919;
186
+ --rp-color-surface : #222222;
187
+ --rp-color-surface-raised : #2a2a2a;
188
+ --rp-color-surface-muted : #222222;
189
+ --rp-color-surface-hover : #2a2a2a;
190
+ --rp-color-button-default-bg : var(--rp-color-surface);
191
+ --rp-color-button-default-bg-hover : var(--rp-color-surface-hover);
192
+ --rp-color-button-default-bg-active : #313131;
167
193
  --rp-color-surface-inverted : #{$color-gray-2};
168
194
  --rp-color-overlay : rgba(17, 17, 17, 0.75);
169
195
  --rp-color-border : #3a3a3a;
170
196
  --rp-color-border-hover : #606060;
171
197
  --rp-color-focus-ring : color-mix(in srgb, var(--rp-color-primary) 45%, transparent);
198
+ --rp-color-control-bg : var(--rp-color-surface);
199
+ --rp-color-control-readonly-bg : var(--rp-color-surface-muted);
200
+ --rp-color-control-fg : #eeeeee;
201
+ --rp-color-control-placeholder : #6e6e6e;
202
+ --rp-color-control-icon : #b4b4b4;
203
+ --rp-color-control-border : #3a3a3a;
204
+ --rp-color-control-border-hover : #606060;
205
+ --rp-color-control-border-focus : var(--rp-color-primary);
206
+ --rp-color-control-track-bg : var(--rp-color-border);
207
+ --rp-color-control-thumb-bg : var(--rp-color-surface-inverted);
172
208
  --rp-color-primary-subtle-bg : #0d2847;
173
209
  --rp-color-primary-subtle-bg-hover : #003362;
174
210
  --rp-color-primary-subtle-bg-active : #004074;
@@ -205,6 +241,12 @@ html.dark {
205
241
  --rp-color-info-border : #12677e;
206
242
  --rp-color-info-border-hover : #11809c;
207
243
  --rp-color-info-fg : #4ccce6;
244
+ --rp-color-neutral-subtle-bg : #222222;
245
+ --rp-color-neutral-subtle-bg-hover : #2a2a2a;
246
+ --rp-color-neutral-subtle-bg-active : #313131;
247
+ --rp-color-neutral-border : #484848;
248
+ --rp-color-neutral-border-hover : #606060;
249
+ --rp-color-neutral-fg : #eeeeee;
208
250
 
209
251
  // Shadows
210
252
  --rp-shadow-sm : 0 1px 2px 0 rgba(0, 0, 0, 0.3);
@@ -11,6 +11,7 @@ $color-success : #218358 !default;
11
11
  $color-warning : #cc4e00 !default;
12
12
  $color-danger : #ce2c31 !default;
13
13
  $color-info : #107d98 !default;
14
+ $color-neutral : #646464 !default;
14
15
  $color-white : #ffffff !default;
15
16
  $color-black : #111111 !default;
16
17
  $color-gray-1 : #fcfcfc !default;
@@ -28,7 +29,7 @@ $color-gray-12 : #202020 !default;
28
29
  $color-text : $color-gray-12 !default;
29
30
  $color-text-secondary: $color-gray-11 !default;
30
31
  $color-text-disabled : $color-gray-9 !default;
31
- $color-background : $color-white !default;
32
+ $color-background : $color-gray-2 !default;
32
33
  $color-border : $color-gray-6 !default;
33
34
  $color-border-hover : $color-gray-8 !default;
34
35
  $color-on-primary : $color-white !default;
@@ -37,6 +38,7 @@ $color-on-success : $color-white !default;
37
38
  $color-on-warning : $color-white !default;
38
39
  $color-on-danger : $color-white !default;
39
40
  $color-on-info : $color-white !default;
41
+ $color-on-neutral : $color-white !default;
40
42
 
41
43
  // Font sizes
42
44
  $font-size-xs : 0.75rem !default;
@@ -74,6 +76,7 @@ $spacing-12: 3rem !default;
74
76
 
75
77
  // Border radius
76
78
  $radius-none: 0 !default;
79
+ $radius-xs : 0.25rem !default;
77
80
  $radius-sm : 0.375rem !default;
78
81
  $radius-md : 0.75rem !default;
79
82
  $radius-lg : 1rem !default;