@rarui/styles 1.0.0-rc.1 → 1.0.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.
@@ -1,331 +0,0 @@
1
- import { globalStyle, style } from "@vanilla-extract/css";
2
- import { recipe } from "@vanilla-extract/recipes";
3
- import { varsThemeBase } from "../../../themes";
4
- import { buttonVariants } from "./rarui-button.commons";
5
-
6
- export const button = recipe({
7
- base: {
8
- display: "flex",
9
- alignItems: "center",
10
- justifyContent: "center",
11
- width: "fit-content",
12
- textDecoration: "none",
13
- cursor: "pointer",
14
- boxSizing: "border-box",
15
- position: "relative",
16
- overflow: "hidden",
17
- gap: varsThemeBase.spacing["4xs"],
18
- fontWeight: varsThemeBase.fontWeight.semiBold,
19
- lineHeight: varsThemeBase.lineWeight.button.l,
20
- fontSize: varsThemeBase.fontSize.button.l,
21
- fontFamily: varsThemeBase.fontFamily.inter,
22
- borderRadius: varsThemeBase.shape.border.radius["2xs"],
23
- borderWidth: varsThemeBase.shape.border.width[1],
24
- borderStyle: "solid",
25
- borderColor: varsThemeBase.colors.surface.brand,
26
- ":disabled": {
27
- background: varsThemeBase.colors.surface.disabled,
28
- borderColor: varsThemeBase.colors.surface.disabled,
29
- color: varsThemeBase.colors.content.disabled,
30
- cursor: "not-allowed",
31
- },
32
- },
33
- variants: {
34
- appearance: {
35
- brand: {
36
- backgroundColor: varsThemeBase.colors.surface.brand,
37
- borderColor: varsThemeBase.colors.surface.brand,
38
- color: varsThemeBase.colors.content["on-brand"],
39
- },
40
- "brand-secondary": {
41
- backgroundColor: varsThemeBase.colors.surface["brand-secondary"],
42
- borderColor: varsThemeBase.colors.surface["brand-secondary"],
43
- color: varsThemeBase.colors.content["on-brand-secondary"],
44
- },
45
- danger: {
46
- backgroundColor: varsThemeBase.colors.surface.error,
47
- borderColor: varsThemeBase.colors.surface.error,
48
- color: varsThemeBase.colors.content["on-error"],
49
- },
50
- success: {
51
- backgroundColor: varsThemeBase.colors.surface.success,
52
- borderColor: varsThemeBase.colors.surface.success,
53
- color: varsThemeBase.colors.content["on-success"],
54
- },
55
- warning: {
56
- backgroundColor: varsThemeBase.colors.surface.warning,
57
- borderColor: varsThemeBase.colors.surface.warning,
58
- color: varsThemeBase.colors.content["on-warning"],
59
- },
60
- neutral: {
61
- backgroundColor: varsThemeBase.colors.surface.invert,
62
- borderColor: varsThemeBase.colors.surface.invert,
63
- color: varsThemeBase.colors.content.invert,
64
- },
65
- inverted: {
66
- backgroundColor: varsThemeBase.colors.surface.primary,
67
- borderColor: varsThemeBase.colors.surface.primary,
68
- color: varsThemeBase.colors.content.primary,
69
- },
70
- },
71
- size: {
72
- large: {
73
- padding: varsThemeBase.spacing.xs,
74
- height: "3rem",
75
- fontSize: varsThemeBase.fontSize.button.l,
76
- },
77
- medium: {
78
- padding: varsThemeBase.spacing.xs,
79
- height: "2.75rem",
80
- fontSize: varsThemeBase.fontSize.button.m,
81
- },
82
- small: {
83
- padding: varsThemeBase.spacing["3xs"],
84
- height: "2rem",
85
- fontSize: varsThemeBase.fontSize.button.s,
86
- },
87
- },
88
- variant: {
89
- solid: {},
90
- outlined: {
91
- backgroundColor: "transparent",
92
- },
93
- text: {
94
- backgroundColor: "transparent",
95
- textDecoration: "underline",
96
- border: "none",
97
- borderRadius: varsThemeBase.shape.border.radius.button,
98
- ":hover": {
99
- borderRadius: varsThemeBase.shape.border.radius.button,
100
- },
101
- ":active": {
102
- borderRadius: varsThemeBase.shape.border.radius.button,
103
- },
104
- },
105
- tonal: {
106
- border: "none",
107
- borderRadius: varsThemeBase.shape.border.radius.button,
108
- },
109
- },
110
- },
111
- compoundVariants: [
112
- // variant outlined
113
- {
114
- variants: {
115
- appearance: "brand",
116
- variant: "outlined",
117
- },
118
- style: {
119
- ...buttonVariants.outlined.brand,
120
- borderColor: varsThemeBase.colors.border.brand,
121
- },
122
- },
123
- {
124
- variants: {
125
- appearance: "brand-secondary",
126
- variant: "outlined",
127
- },
128
- style: {
129
- ...buttonVariants.outlined["brand-secondary"],
130
- borderColor: varsThemeBase.colors.border["brand-secondary"],
131
- },
132
- },
133
- {
134
- variants: {
135
- appearance: "danger",
136
- variant: "outlined",
137
- },
138
- style: {
139
- ...buttonVariants.outlined.danger,
140
- borderColor: varsThemeBase.colors.border.error,
141
- },
142
- },
143
- {
144
- variants: {
145
- appearance: "success",
146
- variant: "outlined",
147
- },
148
- style: {
149
- ...buttonVariants.outlined.success,
150
- borderColor: varsThemeBase.colors.border.success,
151
- },
152
- },
153
- {
154
- variants: {
155
- appearance: "warning",
156
- variant: "outlined",
157
- },
158
- style: {
159
- ...buttonVariants.outlined.warning,
160
- borderColor: varsThemeBase.colors.border.warning,
161
- },
162
- },
163
- {
164
- variants: {
165
- appearance: "neutral",
166
- variant: "outlined",
167
- },
168
- style: {
169
- ...buttonVariants.outlined.neutral,
170
- borderColor: varsThemeBase.colors.border.secondary,
171
- },
172
- },
173
- {
174
- variants: {
175
- appearance: "inverted",
176
- variant: "outlined",
177
- },
178
- style: {
179
- ...buttonVariants.outlined.inverted,
180
- borderColor: varsThemeBase.colors.border.invert,
181
- },
182
- },
183
- // variant text
184
- {
185
- variants: {
186
- appearance: "brand",
187
- variant: "text",
188
- },
189
- style: buttonVariants.text.brand,
190
- },
191
- {
192
- variants: {
193
- appearance: "brand-secondary",
194
- variant: "text",
195
- },
196
- style: buttonVariants.text["brand-secondary"],
197
- },
198
- {
199
- variants: {
200
- appearance: "danger",
201
- variant: "text",
202
- },
203
- style: buttonVariants.text.danger,
204
- },
205
- {
206
- variants: {
207
- appearance: "success",
208
- variant: "text",
209
- },
210
- style: buttonVariants.text.success,
211
- },
212
- {
213
- variants: {
214
- appearance: "warning",
215
- variant: "text",
216
- },
217
- style: buttonVariants.text.warning,
218
- },
219
- {
220
- variants: {
221
- appearance: "neutral",
222
- variant: "text",
223
- },
224
- style: {
225
- ...buttonVariants.text.neutral,
226
- },
227
- },
228
- {
229
- variants: {
230
- appearance: "inverted",
231
- variant: "text",
232
- },
233
- style: buttonVariants.text.inverted,
234
- },
235
- // variant tonal
236
- {
237
- variants: {
238
- appearance: "brand",
239
- variant: "tonal",
240
- },
241
- style: {
242
- ...buttonVariants.text.brand,
243
- backgroundColor: varsThemeBase.colors.surface["brand-subdued"],
244
- },
245
- },
246
- {
247
- variants: {
248
- appearance: "brand-secondary",
249
- variant: "tonal",
250
- },
251
- style: {
252
- ...buttonVariants.text["brand-secondary"],
253
- backgroundColor:
254
- varsThemeBase.colors.surface["brand-secondary-subdued"],
255
- },
256
- },
257
- {
258
- variants: {
259
- appearance: "danger",
260
- variant: "tonal",
261
- },
262
- style: {
263
- ...buttonVariants.text.danger,
264
- backgroundColor: varsThemeBase.colors.surface["error-subdued"],
265
- },
266
- },
267
- {
268
- variants: {
269
- appearance: "success",
270
- variant: "tonal",
271
- },
272
- style: {
273
- ...buttonVariants.text.success,
274
- backgroundColor: varsThemeBase.colors.surface["success-subdued"],
275
- },
276
- },
277
- {
278
- variants: {
279
- appearance: "warning",
280
- variant: "tonal",
281
- },
282
- style: {
283
- ...buttonVariants.text.warning,
284
- backgroundColor: varsThemeBase.colors.surface["warning-subdued"],
285
- },
286
- },
287
- {
288
- variants: {
289
- appearance: "neutral",
290
- variant: "tonal",
291
- },
292
- style: {
293
- ...buttonVariants.text.neutral,
294
- backgroundColor: varsThemeBase.colors.surface.secondary,
295
- },
296
- },
297
- {
298
- variants: {
299
- appearance: "brand",
300
- variant: "tonal",
301
- },
302
- style: {
303
- ...buttonVariants.text.brand,
304
- backgroundColor: varsThemeBase.colors.surface["invert-secondary"],
305
- },
306
- },
307
- ],
308
- });
309
-
310
- export const overlay = style({
311
- position: "absolute",
312
- top: -1,
313
- left: -1,
314
- bottom: -1,
315
- right: -1,
316
- pointerEvents: "none",
317
- opacity: 0,
318
- borderRadius: varsThemeBase.shape.border.radius["2xs"],
319
- });
320
-
321
- globalStyle(`${button()}:hover ${overlay}`, {
322
- opacity: 1,
323
- backgroundColor: varsThemeBase.colors.surface["on-brand-hover"],
324
- borderColor: varsThemeBase.colors.surface["on-brand-hover"],
325
- });
326
-
327
- globalStyle(`${button()}:active ${overlay}`, {
328
- opacity: 1,
329
- backgroundColor: varsThemeBase.colors.surface["on-brand-press"],
330
- borderColor: varsThemeBase.colors.surface["on-brand-press"],
331
- });
@@ -1,4 +0,0 @@
1
- import { RecipeVariants } from "@vanilla-extract/recipes";
2
- import { button } from "./rarui-button.css";
3
-
4
- export type ButtonVariants = RecipeVariants<typeof button>;
@@ -1,241 +0,0 @@
1
- import { createGlobalThemeContract } from "@vanilla-extract/css";
2
-
3
- export const vars = createGlobalThemeContract(
4
- {
5
- colors: {
6
- surface: {
7
- background: "",
8
- brand: "",
9
- "brand-hover": "",
10
- "brand-press": "",
11
- "brand-secondary": "",
12
- "brand-secondary-hover": "",
13
- "brand-secondary-press": "",
14
- "brand-secondary-subdued": "",
15
- "brand-subdued": "",
16
- disabled: "",
17
- error: "",
18
- "error-hover": "",
19
- "error-press": "",
20
- "error-subdued": "",
21
- hover: "",
22
- info: "",
23
- "info-hover": "",
24
- "info-press": "",
25
- "info-subdued": "",
26
- invert: "",
27
- "invert-disabled": "",
28
- "invert-hover": "",
29
- "invert-press": "",
30
- "invert-secondary": "",
31
- "on-brand-hover": "",
32
- "on-brand-press": "",
33
- "on-brand-secondary-hover": "",
34
- "on-brand-secondary-press": "",
35
- "on-error-hover": "",
36
- "on-error-press": "",
37
- "on-info-hover": "",
38
- "on-info-press": "",
39
- "on-success-hover": "",
40
- "on-success-press": "",
41
- "on-warning-hover": "",
42
- "on-warning-press": "",
43
- overlay: "",
44
- press: "",
45
- primary: "",
46
- secondary: "",
47
- success: "",
48
- "success-hover": "",
49
- "success-press": "",
50
- "success-subdued": "",
51
- warning: "",
52
- "warning-hover": "",
53
- "warning-press": "",
54
- "warning-subdued": "",
55
- },
56
- content: {
57
- brand: "",
58
- "brand-alt": "",
59
- "brand-secondary": "",
60
- disabled: "",
61
- error: "",
62
- info: "",
63
- invert: "",
64
- "invert-disabled": "",
65
- "invert-secondary": "",
66
- "on-brand": "",
67
- "on-brand-secondary": "",
68
- "on-error": "",
69
- "on-info": "",
70
- "on-success": "",
71
- "on-warning": "",
72
- primary: "",
73
- secondary: "",
74
- success: "",
75
- warning: "",
76
- "warning-alt": "",
77
- },
78
- border: {
79
- brand: "",
80
- "brand-alt": "",
81
- "brand-secondary": "",
82
- disabled: "",
83
- divider: "",
84
- error: "",
85
- info: "",
86
- invert: "",
87
- "invert-disabled": "",
88
- primary: "",
89
- secondary: "",
90
- subdued: "",
91
- success: "",
92
- warning: "",
93
- },
94
- },
95
- fontFamily: {
96
- inter: "",
97
- },
98
- fontSize: {
99
- hero: {
100
- caption: "",
101
- },
102
- body: {
103
- xxs: "",
104
- xs: "",
105
- s: "",
106
- m: "",
107
- l: "",
108
- xl: "",
109
- },
110
- heading: {
111
- xs: "",
112
- s: "",
113
- m: "",
114
- l: "",
115
- xl: "",
116
- },
117
- button: {
118
- s: "",
119
- m: "",
120
- l: "",
121
- },
122
- label: {
123
- s: "",
124
- m: "",
125
- l: "",
126
- },
127
- },
128
- fontWeight: {
129
- regular: "",
130
- medium: "",
131
- semiBold: "",
132
- bold: "",
133
- },
134
- lineWeight: {
135
- hero: {
136
- caption: "",
137
- },
138
- body: {
139
- xxs: "",
140
- xs: "",
141
- s: "",
142
- m: "",
143
- l: "",
144
- xl: "",
145
- },
146
- heading: {
147
- xs: "",
148
- s: "",
149
- m: "",
150
- l: "",
151
- xl: "",
152
- },
153
- button: {
154
- s: "",
155
- m: "",
156
- l: "",
157
- },
158
- label: {
159
- s: "",
160
- m: "",
161
- l: "",
162
- },
163
- },
164
- elevation: {
165
- none: "",
166
- top: {
167
- "1": "",
168
- "2": "",
169
- "3": "",
170
- "4": "",
171
- "5": "",
172
- },
173
- bottom: {
174
- "1": "",
175
- "2": "",
176
- "3": "",
177
- "4": "",
178
- "5": "",
179
- },
180
- },
181
- shape: {
182
- border: {
183
- radius: {
184
- none: "",
185
- "2xs": "",
186
- xs: "",
187
- sm: "",
188
- md: "",
189
- lg: "",
190
- xl: "",
191
- "2xl": "",
192
- pill: "",
193
- button: "",
194
- input: "",
195
- },
196
- width: {
197
- "1": "",
198
- "2": "",
199
- "3": "",
200
- "4": "",
201
- "5": "",
202
- },
203
- },
204
- },
205
- spacing: {
206
- "4xs": "",
207
- "3xs": "",
208
- "2xs": "",
209
- xs: "",
210
- s: "",
211
- md: "",
212
- lg: "",
213
- xl: "",
214
- "2xl": "",
215
- "3xl": "",
216
- "4xl": "",
217
- "5xl": "",
218
- "6xl": "",
219
- "7xl": "",
220
- "8xl": "",
221
- },
222
- zIndex: {
223
- 100: "",
224
- 200: "",
225
- 300: "",
226
- 400: "",
227
- 500: "",
228
- 600: "",
229
- 700: "",
230
- 800: "",
231
- 900: "",
232
- },
233
- breakpoint: {
234
- xs: "",
235
- md: "",
236
- lg: "",
237
- xl: "",
238
- },
239
- },
240
- (_value, path) => `rarui-${path.join("-")}`,
241
- );