fulldev-ui 0.3.0-beta.3 → 0.3.2

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 (87) hide show
  1. package/.astro/settings.json +1 -1
  2. package/package.json +10 -5
  3. package/src/components/_Block.astro +0 -5
  4. package/src/components/_Component.astro +10 -8
  5. package/src/components/_archive/Body.astro +2 -2
  6. package/src/components/_archive/Nav.astro +12 -0
  7. package/src/components/_todo/Form.astro +1 -1
  8. package/src/components/_todo/Prose.astro +7 -7
  9. package/src/components/base/Badge.astro +20 -16
  10. package/src/components/base/Button.astro +21 -34
  11. package/src/components/base/Icon.astro +3 -2
  12. package/src/components/base/Image.astro +116 -42
  13. package/src/components/base/Logo.astro +1 -1
  14. package/src/components/base/Rating.astro +27 -25
  15. package/src/components/base/checkbox/Checkbox.astro +52 -0
  16. package/src/components/base/checkbox/CheckboxElement.astro +31 -0
  17. package/src/components/base/input/Input.astro +79 -0
  18. package/src/components/base/input/InputElement.astro +60 -0
  19. package/src/components/base/radio/Radio.astro +66 -0
  20. package/src/components/base/radio/RadioElement.astro +34 -0
  21. package/src/components/base/select/Select.astro +90 -0
  22. package/src/components/base/select/SelectElement.astro +56 -0
  23. package/src/components/base/select/SelectOption.astro +32 -0
  24. package/src/components/base/switch/Switch.astro +55 -0
  25. package/src/components/base/{Switch.astro → switch/SwitchElement.astro} +15 -13
  26. package/src/components/base/table/Table.astro +55 -0
  27. package/src/components/base/table/TableBody.astro +39 -0
  28. package/src/components/base/table/TableCell.astro +30 -0
  29. package/src/components/base/table/TableFooter.astro +48 -0
  30. package/src/components/base/table/TableHead.astro +31 -0
  31. package/src/components/base/table/TableHeader.astro +44 -0
  32. package/src/components/base/table/TableRow.astro +46 -0
  33. package/src/components/base/textarea/Textarea.astro +79 -0
  34. package/src/components/base/textarea/TextareaElement.astro +61 -0
  35. package/src/components/segment/Card.astro +28 -4
  36. package/src/components/segment/Footer.astro +88 -0
  37. package/src/components/segment/Header.astro +43 -13
  38. package/src/components/segment/Section.astro +60 -25
  39. package/src/components/segment/_regels.md +32 -0
  40. package/src/components/structure/Bento.astro +38 -0
  41. package/src/components/{segment → structure}/Box.astro +2 -12
  42. package/src/components/structure/Carousel.astro +55 -0
  43. package/src/components/structure/Column.astro +46 -0
  44. package/src/components/structure/Grid.astro +33 -0
  45. package/src/components/structure/Masonry.astro +42 -0
  46. package/src/components/structure/Row.astro +44 -0
  47. package/src/components/structure/Split.astro +54 -0
  48. package/src/components/structure/Spread.astro +45 -0
  49. package/src/components/structure/Wrap.astro +44 -0
  50. package/src/components/typography/Heading.astro +37 -28
  51. package/src/components/typography/Label.astro +4 -8
  52. package/src/components/typography/Link.astro +40 -12
  53. package/src/components/typography/List.astro +12 -13
  54. package/src/components/typography/ListItem.astro +11 -10
  55. package/src/components/typography/Paragraph.astro +4 -9
  56. package/src/components/typography/Tagline.astro +11 -10
  57. package/src/components/typography/Text.astro +5 -9
  58. package/src/css/color.scss +289 -0
  59. package/src/css/size.scss +293 -0
  60. package/src/css/space.scss +94 -0
  61. package/src/css/styles.css +1 -2
  62. package/src/index.ts +29 -11
  63. package/src/integration/tailwind.ts +34 -0
  64. package/src/integration/unocss.ts +38 -0
  65. package/src/components/_archive/Row.astro +0 -26
  66. package/src/components/_todo/Footer.astro +0 -66
  67. package/src/components/_todo/todo.md +0 -10
  68. package/src/components/base/Checkbox.astro +0 -41
  69. package/src/components/base/Input.astro +0 -59
  70. package/src/components/base/Radio.astro +0 -39
  71. package/src/components/base/Select.astro +0 -69
  72. package/src/components/base/SelectOption.astro +0 -27
  73. package/src/components/base/Textarea.astro +0 -34
  74. package/src/components/base/todo.md +0 -7
  75. package/src/components/segment/Deck.astro +0 -40
  76. package/src/components/segment/Group.astro +0 -29
  77. package/src/components/typography/todo.md +0 -3
  78. package/src/css/color.css +0 -88
  79. package/src/css/props/align.scss +0 -20
  80. package/src/css/props/frame.scss +0 -153
  81. package/src/css/props/mask +0 -1
  82. package/src/css/props/position.scss +0 -33
  83. package/src/css/props/ratio +0 -1
  84. package/src/css/props/structure.scss +0 -228
  85. package/src/css/props/variant.scss +0 -130
  86. package/src/css/radix.css +0 -281
  87. package/src/css/size.css +0 -334
@@ -0,0 +1,293 @@
1
+ :root {
2
+ --space-sm-1: 3px;
3
+ --space-sm-2: 6px;
4
+ --space-sm-3: 9px;
5
+ --space-sm-4: 12px;
6
+ --space-sm-5: 24px;
7
+ --space-sm-6: 48px;
8
+ --space-sm-7: 72px;
9
+
10
+ --space-md-1: 4px;
11
+ --space-md-2: 8px;
12
+ --space-md-3: 12px;
13
+ --space-md-4: 16px;
14
+ --space-md-5: 32px;
15
+ --space-md-6: 64px;
16
+ --space-md-7: 96px;
17
+
18
+ --space-lg-1: 5px;
19
+ --space-lg-2: 10px;
20
+ --space-lg-3: 15px;
21
+ --space-lg-4: 20px;
22
+ --space-lg-5: 40px;
23
+ --space-lg-6: 80px;
24
+ --space-lg-7: 120px;
25
+
26
+ --text-xs-1: 12px;
27
+ --text-xs-2: 12px;
28
+ --text-xs-3: 12px;
29
+ --text-xs-4: 14px;
30
+ --text-xs-5: 16px;
31
+ --text-xs-6: 18px;
32
+ --text-xs-7: 20px;
33
+
34
+ --text-sm-1: 12px;
35
+ --text-sm-2: 14px;
36
+ --text-sm-3: 14px;
37
+ --text-sm-4: 16px;
38
+ --text-sm-5: 18px;
39
+ --text-sm-6: 20px;
40
+ --text-sm-7: 24px;
41
+
42
+ --text-md-1: 14px;
43
+ --text-md-2: 16px;
44
+ --text-md-3: 16px;
45
+ --text-md-4: 18px;
46
+ --text-md-5: 20px;
47
+ --text-md-6: 24px;
48
+ --text-md-7: 30px;
49
+
50
+ --text-lg-1: 16px;
51
+ --text-lg-2: 18px;
52
+ --text-lg-3: 18px;
53
+ --text-lg-4: 20px;
54
+ --text-lg-5: 24px;
55
+ --text-lg-6: 30px;
56
+ --text-lg-7: 36px;
57
+
58
+ --text-xl-1: 16px;
59
+ --text-xl-2: 18px;
60
+ --text-xl-3: 20px;
61
+ --text-xl-4: 24px;
62
+ --text-xl-5: 30px;
63
+ --text-xl-6: 36px;
64
+ --text-xl-7: 48px;
65
+
66
+ @media (min-width: 768px) {
67
+ --text-xs-3: 14px;
68
+ --text-xs-4: 16px;
69
+ --text-xs-5: 18px;
70
+ --text-xs-6: 20px;
71
+ --text-xs-7: 24px;
72
+
73
+ --text-sm-3: 16px;
74
+ --text-sm-4: 18px;
75
+ --text-sm-5: 20px;
76
+ --text-sm-6: 24px;
77
+ --text-sm-7: 30px;
78
+
79
+ --text-md-3: 18px;
80
+ --text-md-4: 20px;
81
+ --text-md-5: 24px;
82
+ --text-md-6: 30px;
83
+ --text-md-7: 36px;
84
+
85
+ --text-lg-3: 20px;
86
+ --text-lg-4: 24px;
87
+ --text-lg-5: 30px;
88
+ --text-lg-6: 36px;
89
+ --text-lg-7: 48px;
90
+
91
+ --text-xl-2: 20px;
92
+ --text-xl-3: 24px;
93
+ --text-xl-4: 30px;
94
+ --text-xl-5: 36px;
95
+ --text-xl-6: 48px;
96
+ --text-xl-7: 60px;
97
+ }
98
+ }
99
+
100
+ .compact {
101
+ --space-sm-1: 3px;
102
+ --space-sm-2: 6px;
103
+ --space-sm-3: 7.5px;
104
+ --space-sm-4: 9px;
105
+ --space-sm-5: 12px;
106
+ --space-sm-6: 15px;
107
+ --space-sm-7: 18px;
108
+
109
+ --space-md-1: 4px;
110
+ --space-md-2: 8px;
111
+ --space-md-3: 10px;
112
+ --space-md-4: 12px;
113
+ --space-md-5: 16px;
114
+ --space-md-6: 20px;
115
+ --space-md-7: 24px;
116
+
117
+ --space-lg-1: 5px;
118
+ --space-lg-2: 10px;
119
+ --space-lg-3: 12.5px;
120
+ --space-lg-4: 15px;
121
+ --space-lg-5: 20px;
122
+ --space-lg-6: 25px;
123
+ --space-lg-7: 30px;
124
+
125
+ --text-xs-1: 12px;
126
+ --text-xs-2: 12px;
127
+ --text-xs-3: 12px;
128
+ --text-xs-4: 14px;
129
+ --text-xs-5: 16px;
130
+ --text-xs-6: 18px;
131
+ --text-xs-7: 20px;
132
+
133
+ --text-sm-1: 12px;
134
+ --text-sm-2: 14px;
135
+ --text-sm-3: 14px;
136
+ --text-sm-4: 16px;
137
+ --text-sm-5: 18px;
138
+ --text-sm-6: 20px;
139
+ --text-sm-7: 24px;
140
+
141
+ --text-md-1: 14px;
142
+ --text-md-2: 16px;
143
+ --text-md-3: 16px;
144
+ --text-md-4: 18px;
145
+ --text-md-5: 20px;
146
+ --text-md-6: 24px;
147
+ --text-md-7: 30px;
148
+
149
+ --text-lg-1: 16px;
150
+ --text-lg-2: 18px;
151
+ --text-lg-3: 18px;
152
+ --text-lg-4: 20px;
153
+ --text-lg-5: 24px;
154
+ --text-lg-6: 30px;
155
+ --text-lg-7: 30px;
156
+
157
+ --text-xl-1: 16px;
158
+ --text-xl-2: 18px;
159
+ --text-xl-3: 20px;
160
+ --text-xl-4: 24px;
161
+ --text-xl-5: 30px;
162
+ --text-xl-6: 30px;
163
+ --text-xl-7: 30px;
164
+ }
165
+
166
+ /* --------------------------- */
167
+ /* Generate sizes */
168
+ /* --------------------------- */
169
+
170
+ @mixin selector($selector,
171
+ $selectors: $selector) {
172
+ #{$selectors},
173
+ #{$selector},
174
+ #{$selector}
175
+ .compact:not(#{$selector} [class*='size-'] .compact):not(
176
+ #{$selector} [class*='size-'].compact
177
+ ) {
178
+ @content;
179
+ }
180
+ }
181
+
182
+ @include selector('.size-xs') {
183
+ --space-1: var(--space-sm-1);
184
+ --space-2: var(--space-sm-2);
185
+ --space-3: var(--space-sm-3);
186
+ --space-4: var(--space-sm-4);
187
+ --space-5: var(--space-sm-5);
188
+ --space-6: var(--space-sm-6);
189
+ --space-7: var(--space-sm-7);
190
+
191
+ --radius-1: calc(var(--border-radius, 1) * var(--space-sm-1));
192
+ --radius-2: calc(var(--border-radius, 1) * var(--space-sm-2));
193
+ --radius-3: calc(var(--border-radius, 1) * var(--space-sm-3));
194
+
195
+ --text-1: var(--text-xs-1);
196
+ --text-2: var(--text-xs-2);
197
+ --text-3: var(--text-xs-3);
198
+ --text-4: var(--text-xs-4);
199
+ --text-5: var(--text-xs-5);
200
+ --text-6: var(--text-xs-6);
201
+ --text-7: var(--text-xs-7);
202
+ }
203
+
204
+ @include selector('.size-sm') {
205
+ --space-1: var(--space-sm-1);
206
+ --space-2: var(--space-sm-2);
207
+ --space-3: var(--space-sm-3);
208
+ --space-4: var(--space-sm-4);
209
+ --space-5: var(--space-sm-5);
210
+ --space-6: var(--space-sm-6);
211
+ --space-7: var(--space-sm-7);
212
+
213
+ --radius-1: calc(var(--border-radius, 1) * var(--space-sm-1));
214
+ --radius-2: calc(var(--border-radius, 1) * var(--space-sm-2));
215
+ --radius-3: calc(var(--border-radius, 1) * var(--space-sm-3));
216
+
217
+ --text-1: var(--text-sm-1);
218
+ --text-2: var(--text-sm-2);
219
+ --text-3: var(--text-sm-3);
220
+ --text-4: var(--text-sm-4);
221
+ --text-5: var(--text-sm-5);
222
+ --text-6: var(--text-sm-6);
223
+ --text-7: var(--text-sm-7);
224
+ }
225
+
226
+ @include selector(
227
+ '.size-md',
228
+ ':where(:root), :where(.compact)'
229
+ ) {
230
+ --space-1: var(--space-md-1);
231
+ --space-2: var(--space-md-2);
232
+ --space-3: var(--space-md-3);
233
+ --space-4: var(--space-md-4);
234
+ --space-5: var(--space-md-5);
235
+ --space-6: var(--space-md-6);
236
+ --space-7: var(--space-md-7);
237
+
238
+ --radius-1: calc(var(--border-radius, 1) * var(--space-md-1));
239
+ --radius-2: calc(var(--border-radius, 1) * var(--space-md-2));
240
+ --radius-3: calc(var(--border-radius, 1) * var(--space-md-3));
241
+
242
+ --text-1: var(--text-md-1);
243
+ --text-2: var(--text-md-2);
244
+ --text-3: var(--text-md-3);
245
+ --text-4: var(--text-md-4);
246
+ --text-5: var(--text-md-5);
247
+ --text-6: var(--text-md-6);
248
+ --text-7: var(--text-md-7);
249
+ }
250
+
251
+ @include selector('.size-lg') {
252
+ --space-1: var(--space-lg-1);
253
+ --space-2: var(--space-lg-2);
254
+ --space-3: var(--space-lg-3);
255
+ --space-4: var(--space-lg-4);
256
+ --space-5: var(--space-lg-5);
257
+ --space-6: var(--space-lg-6);
258
+ --space-7: var(--space-lg-7);
259
+
260
+ --radius-1: calc(var(--border-radius, 1) * var(--space-lg-1));
261
+ --radius-2: calc(var(--border-radius, 1) * var(--space-lg-2));
262
+ --radius-3: calc(var(--border-radius, 1) * var(--space-lg-3));
263
+
264
+ --text-1: var(--text-lg-1);
265
+ --text-2: var(--text-lg-2);
266
+ --text-3: var(--text-lg-3);
267
+ --text-4: var(--text-lg-4);
268
+ --text-5: var(--text-lg-5);
269
+ --text-6: var(--text-lg-6);
270
+ --text-7: var(--text-lg-7);
271
+ }
272
+
273
+ @include selector('.size-xl') {
274
+ --space-1: var(--space-lg-1);
275
+ --space-2: var(--space-lg-2);
276
+ --space-3: var(--space-lg-3);
277
+ --space-4: var(--space-lg-4);
278
+ --space-5: var(--space-lg-5);
279
+ --space-6: var(--space-lg-6);
280
+ --space-7: var(--space-lg-7);
281
+
282
+ --radius-1: calc(var(--border-radius, 1) * var(--space-lg-1));
283
+ --radius-2: calc(var(--border-radius, 1) * var(--space-lg-2));
284
+ --radius-3: calc(var(--border-radius, 1) * var(--space-lg-3));
285
+
286
+ --text-1: var(--text-xl-1);
287
+ --text-2: var(--text-xl-2);
288
+ --text-3: var(--text-xl-3);
289
+ --text-4: var(--text-xl-4);
290
+ --text-5: var(--text-xl-5);
291
+ --text-6: var(--text-xl-6);
292
+ --text-7: var(--text-xl-7);
293
+ }
@@ -0,0 +1,94 @@
1
+ @mixin space-x {
2
+ > {
3
+ .full + .full {
4
+ margin-left: var(--space-6);
5
+ }
6
+
7
+ .full + .group,
8
+ .full + .row,
9
+ .full + .wrap,
10
+ .full + .button,
11
+ .full + .switch {
12
+ margin-left: var(--space-5);
13
+ }
14
+
15
+ .full + .heading,
16
+ .full + .link,
17
+ .full + .list,
18
+ .full + .paragraph,
19
+ .full + .text,
20
+ .full + .tagline,
21
+ .full + .input,
22
+ .full + .badge,
23
+ .full + .rating {
24
+ margin-left: var(--space-4);
25
+ }
26
+
27
+ .paragraph + .paragraph,
28
+ .text + .text,
29
+ .button + .button,
30
+ .input + .button {
31
+ margin-left: var(--space-3);
32
+ }
33
+
34
+ .full + .label,
35
+ .label + .full {
36
+ margin-left: var(--space-2);
37
+ }
38
+
39
+ .image + .full,
40
+ .icon + .full {
41
+ margin-left: var(--space-6);
42
+ }
43
+ }
44
+ }
45
+
46
+ @mixin space-y {
47
+ > {
48
+ .full + .full {
49
+ margin-top: var(--space-6);
50
+ }
51
+
52
+ .full + .group,
53
+ .full + .row,
54
+ .full + .wrap,
55
+ .full + .button,
56
+ .full + .switch {
57
+ margin-top: var(--space-5);
58
+ }
59
+
60
+ .full + .heading,
61
+ .full + .label,
62
+ .full + .link,
63
+ .full + .list,
64
+ .full + .paragraph,
65
+ .full + .text,
66
+ .full + .tagline,
67
+ .full + .input,
68
+ .full + .textarea,
69
+ .full + .select,
70
+ .full + .badge,
71
+ .full + .rating {
72
+ margin-top: var(--space-4);
73
+ }
74
+
75
+ .paragraph + .paragraph,
76
+ .text + .text,
77
+ .button:not(.variant-link) + .button:not(.variant-link),
78
+ .input + .button {
79
+ margin-top: var(--space-3);
80
+ }
81
+
82
+ .label + .input,
83
+ .variant-link + .variant-link,
84
+ .label + .textarea,
85
+ .label + .select {
86
+ margin-top: var(--space-2);
87
+ }
88
+
89
+ .image + .full,
90
+ .icon + .full {
91
+ margin-top: var(--space-6);
92
+ }
93
+ }
94
+ }
@@ -1,9 +1,8 @@
1
1
  :root,
2
2
  .full {
3
3
  --transition: cubic-bezier(0.4, 0, 0.2, 1) 0.15s;
4
- --border-width: 1px;
5
4
 
6
- --font-family: 'IBM Plex Sans', sans-serif;
5
+ --font-family: 'Raleway', sans-serif;
7
6
  --font-weight: 400;
8
7
 
9
8
  --text-heading-font-family: var(--font-family);
package/src/index.ts CHANGED
@@ -4,18 +4,28 @@ export * from './schemas/collection'
4
4
  // Base components
5
5
  export { default as Badge } from './components/base/Badge.astro'
6
6
  export { default as Button } from './components/base/Button.astro'
7
- export { default as Checkbox } from './components/base/Checkbox.astro'
8
7
  export { default as Icon } from './components/base/Icon.astro'
9
8
  export { default as Image } from './components/base/Image.astro'
10
- export { default as Input } from './components/base/Input.astro'
11
9
  export { default as Logo } from './components/base/Logo.astro'
12
- export { default as Radio } from './components/base/Radio.astro'
13
10
  export { default as Rating } from './components/base/Rating.astro'
14
- export { default as Select } from './components/base/Select.astro'
15
- export { default as SelectOption } from './components/base/SelectOption.astro'
16
- export { default as Switch } from './components/base/Switch.astro'
17
- export { default as Textarea } from './components/base/Textarea.astro'
18
11
  export { default as Video } from './components/base/Video.astro'
12
+ export { default as Checkbox } from './components/base/checkbox/Checkbox.astro'
13
+ export { default as Input } from './components/base/input/Input.astro'
14
+ export { default as InputElement } from './components/base/input/InputElement.astro'
15
+ export { default as Radio } from './components/base/radio/Radio.astro'
16
+ export { default as Select } from './components/base/select/Select.astro'
17
+ export { default as SelectElement } from './components/base/select/SelectElement.astro'
18
+ export { default as SelectOption } from './components/base/select/SelectOption.astro'
19
+ export { default as Switch } from './components/base/switch/Switch.astro'
20
+ export { default as Table } from './components/base/table/Table.astro'
21
+ export { default as TableBody } from './components/base/table/TableBody.astro'
22
+ export { default as TableCell } from './components/base/table/TableCell.astro'
23
+ export { default as TableFooter } from './components/base/table/TableFooter.astro'
24
+ export { default as TableHead } from './components/base/table/TableHead.astro'
25
+ export { default as TableHeader } from './components/base/table/TableHeader.astro'
26
+ export { default as TableRow } from './components/base/table/TableRow.astro'
27
+ export { default as Textarea } from './components/base/textarea/Textarea.astro'
28
+ export { default as TextareaElement } from './components/base/textarea/TextareaElement.astro'
19
29
 
20
30
  // Typography components
21
31
  export { default as Heading } from './components/typography/Heading.astro'
@@ -31,17 +41,25 @@ export { default as Text } from './components/typography/Text.astro'
31
41
  export { default as Body } from './components/_archive/Body.astro'
32
42
  export { default as Main } from './components/_archive/Main.astro'
33
43
  export { default as Nav } from './components/_archive/Nav.astro'
34
- export { default as Footer } from './components/_todo/Footer.astro'
35
44
  export { default as Form } from './components/_todo/Form.astro'
36
45
  export { default as Prose } from './components/_todo/Prose.astro'
37
46
  export { default as Writeup } from './components/_todo/Writeup.astro'
38
- export { default as Box } from './components/segment/Box.astro'
39
47
  export { default as Card } from './components/segment/Card.astro'
40
- export { default as Deck } from './components/segment/Deck.astro'
41
- export { default as Group } from './components/segment/Group.astro'
48
+ export { default as Footer } from './components/segment/Footer.astro'
42
49
  export { default as Header } from './components/segment/Header.astro'
43
50
  export { default as Section } from './components/segment/Section.astro'
44
51
 
52
+ // Structure components
53
+ export { default as Bento } from './components/structure/Bento.astro'
54
+ export { default as Carousel } from './components/structure/Carousel.astro'
55
+ export { default as Column } from './components/structure/Column.astro'
56
+ export { default as Grid } from './components/structure/Grid.astro'
57
+ export { default as Masonry } from './components/structure/Masonry.astro'
58
+ export { default as Row } from './components/structure/Row.astro'
59
+ export { default as Split } from './components/structure/Split.astro'
60
+ export { default as Spread } from './components/structure/Spread.astro'
61
+ export { default as Wrap } from './components/structure/Wrap.astro'
62
+
45
63
  // Utility components
46
64
  export { default as Block } from './components/_Block.astro'
47
65
  export { default as Blocks } from './components/_Blocks.astro'
@@ -0,0 +1,34 @@
1
+ import plugin from 'tailwindcss/plugin'
2
+
3
+ export default plugin(() => {}, {
4
+ theme: {
5
+ spacing: {
6
+ 'space-1': 'var(--space-1)',
7
+ 'space-2': 'var(--space-2)',
8
+ 'space-3': 'var(--space-3)',
9
+ 'space-4': 'var(--space-4)',
10
+ 'space-5': 'var(--space-5)',
11
+ 'space-6': 'var(--space-6)',
12
+ 'space-7': 'var(--space-7)',
13
+ },
14
+ borderRadius: {
15
+ 1: 'var(--radius-1)',
16
+ 2: 'var(--radius-2)',
17
+ 3: 'var(--radius-3)',
18
+ },
19
+ fontSize: {
20
+ 1: 'var(--text-1)',
21
+ 2: 'var(--text-2)',
22
+ 3: 'var(--text-3)',
23
+ 4: 'var(--text-4)',
24
+ 5: 'var(--text-5)',
25
+ 6: 'var(--text-6)',
26
+ 7: 'var(--text-7)',
27
+ },
28
+ colors: {
29
+ background: 'var(--background)',
30
+ text: 'var(--text)',
31
+ border: 'var(--border)',
32
+ },
33
+ },
34
+ })
@@ -0,0 +1,38 @@
1
+ import { definePreset, presetUno } from 'unocss'
2
+
3
+ export default definePreset((options?: any) => {
4
+ return {
5
+ name: 'fullUI',
6
+ presets: [presetUno()],
7
+ theme: {
8
+ spacing: {
9
+ 'space-1': 'var(--space-1)',
10
+ 'space-2': 'var(--space-2)',
11
+ 'space-3': 'var(--space-3)',
12
+ 'space-4': 'var(--space-4)',
13
+ 'space-5': 'var(--space-5)',
14
+ 'space-6': 'var(--space-6)',
15
+ 'space-7': 'var(--space-7)',
16
+ },
17
+ borderRadius: {
18
+ 1: 'var(--radius-1)',
19
+ 2: 'var(--radius-2)',
20
+ 3: 'var(--radius-3)',
21
+ },
22
+ fontSize: {
23
+ 1: 'var(--text-1)',
24
+ 2: 'var(--text-2)',
25
+ 3: 'var(--text-3)',
26
+ 4: 'var(--text-4)',
27
+ 5: 'var(--text-5)',
28
+ 6: 'var(--text-6)',
29
+ 7: 'var(--text-7)',
30
+ },
31
+ colors: {
32
+ background: 'var(--background)',
33
+ text: 'var(--text)',
34
+ border: 'var(--border)',
35
+ },
36
+ },
37
+ }
38
+ })
@@ -1,26 +0,0 @@
1
- ---
2
- import type { ComponentProps, HTMLTag, Polymorphic } from 'astro/types'
3
- import Component from '../_Component.astro'
4
-
5
- type Props<As extends HTMLTag = 'div'> = Polymorphic<{ as: As }> &
6
- ComponentProps<typeof Component>
7
-
8
- const { ...rest } = Astro.props
9
- ---
10
-
11
- <Component
12
- class:list={['row']}
13
- {...rest}
14
- >
15
- <slot />
16
- </Component>
17
-
18
- <style is:global lang="scss">
19
- @import '../../css/utils.scss';
20
-
21
- @include component('row') {
22
- display: flex;
23
- align-items: center;
24
- gap: var(--space-4);
25
- }
26
- </style>
@@ -1,66 +0,0 @@
1
- ---
2
- import type { ComponentProps, HTMLTag, Polymorphic } from 'astro/types'
3
- import Component from '../_Component.astro'
4
-
5
- type Props<As extends HTMLTag = 'footer'> = Polymorphic<{ as: As }> &
6
- ComponentProps<typeof Component> & {
7
- structure?: 'spread'
8
- position?: 'relative' | 'sticky' | 'fixed' | 'absolute'
9
- variant?: 'base' | 'raised'
10
- frame?: 'wrapper' | 'container' | 'panel'
11
- align?: 'start' | 'center' | 'end'
12
- }
13
-
14
- const {
15
- as = 'footer',
16
- density = 'base',
17
- frame = 'wrapper',
18
- ...rest
19
- } = Astro.props
20
- ---
21
-
22
- <Component
23
- class:list={['footer']}
24
- {as}
25
- {density}
26
- {frame}
27
- {...rest}
28
- >
29
- <slot />
30
- </Component>
31
-
32
- <style is:global lang="scss">
33
- @import '../../css/utils.scss';
34
-
35
- @include component('footer') {
36
- --inner: var(--element-3);
37
-
38
- display: flex;
39
- top: 0;
40
- right: 0;
41
- left: 0;
42
- justify-content: space-between;
43
- align-items: center;
44
- z-index: 10;
45
- background: var(--background);
46
- padding-top: var(--element-3);
47
- padding-bottom: var(--element-3);
48
- width: 100%;
49
-
50
- // &.panel {
51
- // margin-top: var(--inner);
52
- // }
53
-
54
- &.position-fixed {
55
- position: fixed;
56
- }
57
-
58
- &.position-absolute {
59
- position: absolute;
60
- }
61
-
62
- &.position-sticky {
63
- position: sticky;
64
- }
65
- }
66
- </style>
@@ -1,10 +0,0 @@
1
- # Chores
2
-
3
- # New components
4
- - Footer
5
- - Header
6
- - Nav
7
- - Prose
8
- - Writeup
9
- - Join
10
- - Pile
@@ -1,41 +0,0 @@
1
- ---
2
- import type { ComponentProps } from 'astro/types'
3
-
4
- type Props = ComponentProps<typeof Component>
5
-
6
- const { as = 'input', type = 'checkbox', name, ...rest } = Astro.props
7
- ---
8
-
9
- <Component
10
- class:list={['checkbox']}
11
- if={true}
12
- {as}
13
- type="checkbox"
14
- {...rest}
15
- />
16
-
17
- <style is:global lang="scss">
18
- @import '../../css/utils.scss';
19
-
20
- @include component('checkbox') {
21
- display: block;
22
- border-width: var(--border-width);
23
- border-color: var(--border-color);
24
- border-radius: var(--full-border-radius-2);
25
- background: var(--background);
26
- min-width: var(--element-2);
27
- color: var(--color);
28
- accent-color: var(--10);
29
- font-size: var(--text-body);
30
-
31
- &:hover {
32
- border: var(--border-color-hover);
33
- background: var(--background-hover);
34
- }
35
-
36
- &:active {
37
- border: var(--border-color-active);
38
- background: var(--background-active);
39
- }
40
- }
41
- </style>