@rokkit/themes 1.0.3 → 1.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.
- package/README.md +11 -19
- package/build.mjs +5 -21
- package/package.json +23 -132
- package/src/base/carousel.css +1 -2
- package/src/base/density.css +3 -3
- package/src/base/gradient-border.css +32 -0
- package/src/base/index.css +3 -0
- package/src/base/input.css +9 -5
- package/src/base/item.css +13 -0
- package/src/base/layout.css +17 -0
- package/src/base/nav-content.css +3 -3
- package/src/base/radius.css +41 -0
- package/src/base/stepper.css +9 -14
- package/src/frosted/button.css +6 -11
- package/src/frosted/card.css +5 -9
- package/src/frosted/dropdown.css +5 -10
- package/src/frosted/floating-action.css +2 -2
- package/src/frosted/input.css +2 -3
- package/src/frosted/list.css +25 -0
- package/src/frosted/menu.css +4 -8
- package/src/frosted/range.css +2 -2
- package/src/frosted/select.css +1 -1
- package/src/frosted/step-indicator.css +1 -2
- package/src/frosted/switch.css +2 -3
- package/src/frosted/timeline.css +1 -2
- package/src/index.css +2 -0
- package/src/index.js +0 -1
- package/src/material/floating-action.css +2 -2
- package/src/material/list.css +14 -0
- package/src/material/range.css +2 -2
- package/src/material/select.css +1 -1
- package/src/material/step-indicator.css +1 -2
- package/src/material/switch.css +1 -1
- package/src/material/tabs.css +2 -2
- package/src/material/timeline.css +1 -2
- package/src/material/toggle.css +2 -2
- package/src/minimal/floating-action.css +1 -1
- package/src/minimal/list.css +14 -0
- package/src/minimal/select.css +1 -13
- package/src/rokkit/floating-action.css +5 -5
- package/src/rokkit/floating-navigation.css +1 -1
- package/src/rokkit/index.css +0 -1
- package/src/rokkit/input.css +1 -1
- package/src/rokkit/list.css +25 -0
- package/src/rokkit/range.css +2 -2
- package/src/rokkit/select.css +1 -1
- package/src/rokkit/step-indicator.css +1 -2
- package/src/rokkit/swatch.css +1 -1
- package/src/rokkit/switch.css +1 -1
- package/src/rokkit/timeline.css +1 -2
- package/src/rokkit/upload-progress.css +4 -4
- package/src/zen-sumi/button.css +176 -0
- package/src/zen-sumi/card.css +104 -0
- package/src/zen-sumi/chart.css +41 -0
- package/src/zen-sumi/dropdown.css +53 -0
- package/src/zen-sumi/floating-action.css +68 -0
- package/src/zen-sumi/floating-navigation.css +74 -0
- package/src/{grada-ui → zen-sumi}/index.css +25 -30
- package/src/zen-sumi/input.css +145 -0
- package/src/zen-sumi/list.css +128 -0
- package/src/zen-sumi/menu.css +91 -0
- package/src/zen-sumi/message.css +37 -0
- package/src/zen-sumi/range.css +62 -0
- package/src/zen-sumi/search-filter.css +49 -0
- package/src/zen-sumi/select.css +160 -0
- package/src/zen-sumi/status-list.css +66 -0
- package/src/zen-sumi/step-indicator.css +40 -0
- package/src/zen-sumi/swatch.css +21 -0
- package/src/zen-sumi/switch.css +34 -0
- package/src/zen-sumi/table.css +118 -0
- package/src/zen-sumi/tabs.css +78 -0
- package/src/zen-sumi/timeline.css +46 -0
- package/src/zen-sumi/toc.css +22 -0
- package/src/zen-sumi/toggle.css +51 -0
- package/src/zen-sumi/toolbar.css +86 -0
- package/src/zen-sumi/tree.css +137 -0
- package/dist/ant-design.css +0 -2129
- package/dist/base.css +0 -6378
- package/dist/bits-ui.css +0 -2113
- package/dist/carbon.css +0 -2123
- package/dist/daisy-ui.css +0 -2138
- package/dist/frosted.css +0 -1953
- package/dist/grada-ui.css +0 -1915
- package/dist/index.css +0 -27231
- package/dist/material.css +0 -1924
- package/dist/minimal.css +0 -1978
- package/dist/rokkit.css +0 -2471
- package/dist/shadcn.css +0 -2099
- package/src/ant-design/button.css +0 -190
- package/src/ant-design/card.css +0 -100
- package/src/ant-design/chart.css +0 -34
- package/src/ant-design/connector.css +0 -11
- package/src/ant-design/dropdown.css +0 -50
- package/src/ant-design/floating-action.css +0 -63
- package/src/ant-design/floating-navigation.css +0 -70
- package/src/ant-design/grid.css +0 -46
- package/src/ant-design/index.css +0 -35
- package/src/ant-design/input.css +0 -151
- package/src/ant-design/list.css +0 -126
- package/src/ant-design/menu.css +0 -88
- package/src/ant-design/message.css +0 -35
- package/src/ant-design/range.css +0 -61
- package/src/ant-design/search-filter.css +0 -49
- package/src/ant-design/select.css +0 -158
- package/src/ant-design/status-list.css +0 -66
- package/src/ant-design/step-indicator.css +0 -38
- package/src/ant-design/switch.css +0 -29
- package/src/ant-design/table.css +0 -91
- package/src/ant-design/tabs.css +0 -153
- package/src/ant-design/timeline.css +0 -45
- package/src/ant-design/toc.css +0 -18
- package/src/ant-design/toggle.css +0 -48
- package/src/ant-design/toolbar.css +0 -85
- package/src/ant-design/tree.css +0 -137
- package/src/ant-design/upload-progress.css +0 -102
- package/src/ant-design/upload-target.css +0 -50
- package/src/bits-ui/button.css +0 -176
- package/src/bits-ui/card.css +0 -99
- package/src/bits-ui/chart.css +0 -34
- package/src/bits-ui/connector.css +0 -11
- package/src/bits-ui/dropdown.css +0 -50
- package/src/bits-ui/floating-action.css +0 -63
- package/src/bits-ui/floating-navigation.css +0 -70
- package/src/bits-ui/grid.css +0 -46
- package/src/bits-ui/index.css +0 -35
- package/src/bits-ui/input.css +0 -154
- package/src/bits-ui/list.css +0 -126
- package/src/bits-ui/menu.css +0 -88
- package/src/bits-ui/message.css +0 -35
- package/src/bits-ui/range.css +0 -61
- package/src/bits-ui/search-filter.css +0 -49
- package/src/bits-ui/select.css +0 -158
- package/src/bits-ui/status-list.css +0 -66
- package/src/bits-ui/step-indicator.css +0 -40
- package/src/bits-ui/switch.css +0 -29
- package/src/bits-ui/table.css +0 -89
- package/src/bits-ui/tabs.css +0 -151
- package/src/bits-ui/timeline.css +0 -45
- package/src/bits-ui/toc.css +0 -18
- package/src/bits-ui/toggle.css +0 -48
- package/src/bits-ui/toolbar.css +0 -85
- package/src/bits-ui/tree.css +0 -135
- package/src/bits-ui/upload-progress.css +0 -102
- package/src/bits-ui/upload-target.css +0 -50
- package/src/carbon/button.css +0 -186
- package/src/carbon/card.css +0 -97
- package/src/carbon/chart.css +0 -34
- package/src/carbon/connector.css +0 -11
- package/src/carbon/dropdown.css +0 -50
- package/src/carbon/floating-action.css +0 -63
- package/src/carbon/floating-navigation.css +0 -70
- package/src/carbon/grid.css +0 -46
- package/src/carbon/index.css +0 -34
- package/src/carbon/input.css +0 -148
- package/src/carbon/list.css +0 -124
- package/src/carbon/menu.css +0 -88
- package/src/carbon/message.css +0 -37
- package/src/carbon/range.css +0 -61
- package/src/carbon/search-filter.css +0 -49
- package/src/carbon/select.css +0 -158
- package/src/carbon/status-list.css +0 -66
- package/src/carbon/step-indicator.css +0 -40
- package/src/carbon/switch.css +0 -31
- package/src/carbon/table.css +0 -93
- package/src/carbon/tabs.css +0 -151
- package/src/carbon/timeline.css +0 -45
- package/src/carbon/toc.css +0 -22
- package/src/carbon/toggle.css +0 -48
- package/src/carbon/toolbar.css +0 -84
- package/src/carbon/tree.css +0 -135
- package/src/carbon/upload-progress.css +0 -102
- package/src/carbon/upload-target.css +0 -50
- package/src/daisy-ui/button.css +0 -196
- package/src/daisy-ui/card.css +0 -99
- package/src/daisy-ui/chart.css +0 -34
- package/src/daisy-ui/connector.css +0 -11
- package/src/daisy-ui/dropdown.css +0 -50
- package/src/daisy-ui/floating-action.css +0 -63
- package/src/daisy-ui/floating-navigation.css +0 -70
- package/src/daisy-ui/grid.css +0 -46
- package/src/daisy-ui/index.css +0 -34
- package/src/daisy-ui/input.css +0 -148
- package/src/daisy-ui/list.css +0 -127
- package/src/daisy-ui/menu.css +0 -88
- package/src/daisy-ui/message.css +0 -37
- package/src/daisy-ui/range.css +0 -61
- package/src/daisy-ui/search-filter.css +0 -49
- package/src/daisy-ui/select.css +0 -158
- package/src/daisy-ui/status-list.css +0 -66
- package/src/daisy-ui/step-indicator.css +0 -37
- package/src/daisy-ui/switch.css +0 -31
- package/src/daisy-ui/table.css +0 -91
- package/src/daisy-ui/tabs.css +0 -153
- package/src/daisy-ui/timeline.css +0 -45
- package/src/daisy-ui/toc.css +0 -22
- package/src/daisy-ui/toggle.css +0 -48
- package/src/daisy-ui/toolbar.css +0 -85
- package/src/daisy-ui/tree.css +0 -137
- package/src/daisy-ui/upload-progress.css +0 -102
- package/src/daisy-ui/upload-target.css +0 -50
- package/src/grada-ui/button.css +0 -249
- package/src/grada-ui/card.css +0 -96
- package/src/grada-ui/chart.css +0 -34
- package/src/grada-ui/dropdown.css +0 -58
- package/src/grada-ui/floating-action.css +0 -66
- package/src/grada-ui/floating-navigation.css +0 -69
- package/src/grada-ui/input.css +0 -154
- package/src/grada-ui/list.css +0 -124
- package/src/grada-ui/menu.css +0 -81
- package/src/grada-ui/message.css +0 -48
- package/src/grada-ui/range.css +0 -59
- package/src/grada-ui/search-filter.css +0 -47
- package/src/grada-ui/select.css +0 -190
- package/src/grada-ui/status-list.css +0 -66
- package/src/grada-ui/step-indicator.css +0 -37
- package/src/grada-ui/switch.css +0 -35
- package/src/grada-ui/table.css +0 -79
- package/src/grada-ui/tabs.css +0 -59
- package/src/grada-ui/timeline.css +0 -46
- package/src/grada-ui/toc.css +0 -24
- package/src/grada-ui/toggle.css +0 -47
- package/src/grada-ui/toolbar.css +0 -91
- package/src/grada-ui/tree.css +0 -100
- package/src/rokkit/stack.css +0 -6
- package/src/shadcn/button.css +0 -175
- package/src/shadcn/card.css +0 -99
- package/src/shadcn/chart.css +0 -34
- package/src/shadcn/connector.css +0 -11
- package/src/shadcn/dropdown.css +0 -50
- package/src/shadcn/floating-action.css +0 -63
- package/src/shadcn/floating-navigation.css +0 -70
- package/src/shadcn/grid.css +0 -46
- package/src/shadcn/index.css +0 -35
- package/src/shadcn/input.css +0 -143
- package/src/shadcn/list.css +0 -124
- package/src/shadcn/menu.css +0 -88
- package/src/shadcn/message.css +0 -35
- package/src/shadcn/range.css +0 -61
- package/src/shadcn/search-filter.css +0 -49
- package/src/shadcn/select.css +0 -158
- package/src/shadcn/status-list.css +0 -66
- package/src/shadcn/step-indicator.css +0 -37
- package/src/shadcn/switch.css +0 -31
- package/src/shadcn/table.css +0 -89
- package/src/shadcn/tabs.css +0 -151
- package/src/shadcn/timeline.css +0 -45
- package/src/shadcn/toc.css +0 -20
- package/src/shadcn/toggle.css +0 -48
- package/src/shadcn/toolbar.css +0 -84
- package/src/shadcn/tree.css +0 -135
- package/src/shadcn/upload-progress.css +0 -102
- package/src/shadcn/upload-target.css +0 -50
package/README.md
CHANGED
|
@@ -16,19 +16,14 @@ bun add @rokkit/themes
|
|
|
16
16
|
|
|
17
17
|
Available themes:
|
|
18
18
|
|
|
19
|
-
| Theme
|
|
20
|
-
|
|
|
21
|
-
| `rokkit`
|
|
22
|
-
| `minimal`
|
|
23
|
-
| `material`
|
|
24
|
-
| `frosted`
|
|
25
|
-
| `
|
|
26
|
-
| `
|
|
27
|
-
| `bits-ui` | Rounded-lg and shadow-sm |
|
|
28
|
-
| `carbon` | Square corners and bottom-border inputs |
|
|
29
|
-
| `ant-design` | Thin borders and dense layout |
|
|
30
|
-
| `grada-ui` | Coral/purple gradient identity |
|
|
31
|
-
| `base` | Structural styles only (layout and positioning, no visual treatment) |
|
|
19
|
+
| Theme | Description |
|
|
20
|
+
| ---------- | -------------------------------------------------------------------- |
|
|
21
|
+
| `rokkit` | Default — gradients and glowing borders |
|
|
22
|
+
| `minimal` | Clean and subtle |
|
|
23
|
+
| `material` | Elevation and shadows |
|
|
24
|
+
| `frosted` | Frosted glass and blur |
|
|
25
|
+
| `zen-sumi` | Ink on paper — no shadows, no gradients |
|
|
26
|
+
| `base` | Structural styles only (layout and positioning, no visual treatment) |
|
|
32
27
|
|
|
33
28
|
## Usage
|
|
34
29
|
|
|
@@ -54,6 +49,8 @@ import '@rokkit/themes'
|
|
|
54
49
|
@import '@rokkit/themes/material.css';
|
|
55
50
|
/* or */
|
|
56
51
|
@import '@rokkit/themes/frosted.css';
|
|
52
|
+
/* or */
|
|
53
|
+
@import '@rokkit/themes/zen-sumi.css';
|
|
57
54
|
```
|
|
58
55
|
|
|
59
56
|
### Base structural styles only
|
|
@@ -108,12 +105,7 @@ src/
|
|
|
108
105
|
minimal/ -- Clean + subtle theme
|
|
109
106
|
material/ -- Elevation + shadows theme
|
|
110
107
|
frosted/ -- Frosted glass + blur theme
|
|
111
|
-
|
|
112
|
-
daisy-ui/ -- Rounded-full + bold fills theme
|
|
113
|
-
bits-ui/ -- Rounded-lg + shadow-sm theme
|
|
114
|
-
carbon/ -- Square + bottom-border inputs theme
|
|
115
|
-
ant-design/ -- Thin borders + dense layout theme
|
|
116
|
-
grada-ui/ -- Coral/purple gradient identity theme
|
|
108
|
+
zen-sumi/ -- Ink on paper theme (no shadows, no gradients)
|
|
117
109
|
index.css -- Full bundle entry point
|
|
118
110
|
```
|
|
119
111
|
|
package/build.mjs
CHANGED
|
@@ -49,14 +49,7 @@ const uno = await createGenerator({
|
|
|
49
49
|
...theme.getShortcuts('warning'),
|
|
50
50
|
...theme.getShortcuts('danger'),
|
|
51
51
|
...theme.getShortcuts('error'),
|
|
52
|
-
...theme.getShortcuts('info')
|
|
53
|
-
[/^text-on-primary(\/\d+)?$/, ([, end]) => `text-surface-50${end || ''}`],
|
|
54
|
-
[/^text-on-secondary(\/\d+)?$/, ([, end]) => `text-surface-50${end || ''}`],
|
|
55
|
-
[/^text-on-info(\/\d+)?$/, ([, end]) => `text-surface-50${end || ''}`],
|
|
56
|
-
[/^text-on-success(\/\d+)?$/, ([, end]) => `text-surface-50${end || ''}`],
|
|
57
|
-
[/^text-on-warning(\/\d+)?$/, ([, end]) => `text-surface-50${end || ''}`],
|
|
58
|
-
[/^text-on-error(\/\d+)?$/, ([, end]) => `text-surface-50${end || ''}`],
|
|
59
|
-
[/^text-on-surface(\/\d+)?$/, ([, end]) => `text-surface-50${end || ''}`]
|
|
52
|
+
...theme.getShortcuts('info')
|
|
60
53
|
],
|
|
61
54
|
theme: {
|
|
62
55
|
colors: theme.getColorRules()
|
|
@@ -190,7 +183,7 @@ async function buildFile(inputPath, outputName, label) {
|
|
|
190
183
|
const fullCSS = resolveImports(inputPath)
|
|
191
184
|
const compiled = await processCSS(fullCSS, outputName)
|
|
192
185
|
const fixed = fixModeSelectors(compiled)
|
|
193
|
-
writeFileSync(join(distDir, outputName), fixed, 'utf-8')
|
|
186
|
+
writeFileSync(join(distDir, outputName), fixed, 'utf-8') // nosemgrep: javascript.lang.security.audit.path-traversal.path-join-resolve-traversal.path-join-resolve-traversal — outputName is derived from a hardcoded string array, not user input
|
|
194
187
|
console.log(`✓ dist/${outputName} (${label})`)
|
|
195
188
|
}
|
|
196
189
|
|
|
@@ -213,12 +206,7 @@ async function build() {
|
|
|
213
206
|
['minimal', 'clean + subtle'],
|
|
214
207
|
['material', 'elevation + shadows'],
|
|
215
208
|
['frosted', 'frosted glass + blur'],
|
|
216
|
-
['
|
|
217
|
-
['shadcn', 'flat borders + ring focus'],
|
|
218
|
-
['daisy-ui', 'rounded-full + bold fills'],
|
|
219
|
-
['bits-ui', 'rounded-lg + shadow-sm'],
|
|
220
|
-
['carbon', 'square + bottom-border inputs'],
|
|
221
|
-
['ant-design', 'thin borders + dense layout']
|
|
209
|
+
['zen-sumi', 'ink on paper — no shadows, no gradients']
|
|
222
210
|
]) {
|
|
223
211
|
await buildFile(join(srcDir, name, 'index.css'), `${name}.css`, label)
|
|
224
212
|
}
|
|
@@ -230,13 +218,9 @@ async function build() {
|
|
|
230
218
|
'minimal',
|
|
231
219
|
'material',
|
|
232
220
|
'frosted',
|
|
233
|
-
'
|
|
234
|
-
'shadcn',
|
|
235
|
-
'daisy-ui',
|
|
236
|
-
'bits-ui',
|
|
237
|
-
'carbon',
|
|
238
|
-
'ant-design'
|
|
221
|
+
'zen-sumi'
|
|
239
222
|
]
|
|
223
|
+
// nosemgrep: javascript.lang.security.audit.path-traversal.path-join-resolve-traversal.path-join-resolve-traversal — name is from a hardcoded string array, not user input
|
|
240
224
|
const bundleParts = allThemes.map((name) => readFileSync(join(distDir, `${name}.css`), 'utf-8'))
|
|
241
225
|
writeFileSync(join(distDir, 'index.css'), bundleParts.join('\n'), 'utf-8')
|
|
242
226
|
console.log('✓ dist/index.css (full bundle)')
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rokkit/themes",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.5",
|
|
4
4
|
"description": "Theme styles for @rokkit/ui components",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -18,97 +18,29 @@
|
|
|
18
18
|
"style": "./src/index.css",
|
|
19
19
|
"default": "./src/index.css"
|
|
20
20
|
},
|
|
21
|
-
"./
|
|
22
|
-
"style": "./
|
|
23
|
-
"default": "./
|
|
24
|
-
},
|
|
25
|
-
"./dist/base": {
|
|
26
|
-
"style": "./dist/base.css",
|
|
27
|
-
"default": "./dist/base.css"
|
|
28
|
-
},
|
|
29
|
-
"./dist/rokkit": {
|
|
30
|
-
"style": "./dist/rokkit.css",
|
|
31
|
-
"default": "./dist/rokkit.css"
|
|
32
|
-
},
|
|
33
|
-
"./dist/minimal": {
|
|
34
|
-
"style": "./dist/minimal.css",
|
|
35
|
-
"default": "./dist/minimal.css"
|
|
36
|
-
},
|
|
37
|
-
"./dist/material": {
|
|
38
|
-
"style": "./dist/material.css",
|
|
39
|
-
"default": "./dist/material.css"
|
|
40
|
-
},
|
|
41
|
-
"./dist/frosted": {
|
|
42
|
-
"style": "./dist/frosted.css",
|
|
43
|
-
"default": "./dist/frosted.css"
|
|
44
|
-
},
|
|
45
|
-
"./dist/grada-ui": {
|
|
46
|
-
"style": "./dist/grada-ui.css",
|
|
47
|
-
"default": "./dist/grada-ui.css"
|
|
48
|
-
},
|
|
49
|
-
"./dist/daisy-ui": {
|
|
50
|
-
"style": "./dist/daisy-ui.css",
|
|
51
|
-
"default": "./dist/daisy-ui.css"
|
|
52
|
-
},
|
|
53
|
-
"./dist/shadcn": {
|
|
54
|
-
"style": "./dist/shadcn.css",
|
|
55
|
-
"default": "./dist/shadcn.css"
|
|
56
|
-
},
|
|
57
|
-
"./dist/bits-ui": {
|
|
58
|
-
"style": "./dist/bits-ui.css",
|
|
59
|
-
"default": "./dist/bits-ui.css"
|
|
60
|
-
},
|
|
61
|
-
"./dist/carbon": {
|
|
62
|
-
"style": "./dist/carbon.css",
|
|
63
|
-
"default": "./dist/carbon.css"
|
|
64
|
-
},
|
|
65
|
-
"./dist/ant-design": {
|
|
66
|
-
"style": "./dist/ant-design.css",
|
|
67
|
-
"default": "./dist/ant-design.css"
|
|
68
|
-
},
|
|
69
|
-
"./base.css": {
|
|
70
|
-
"style": "./dist/base.css",
|
|
71
|
-
"default": "./dist/base.css"
|
|
21
|
+
"./base.css": {
|
|
22
|
+
"style": "./src/base/index.css",
|
|
23
|
+
"default": "./src/base/index.css"
|
|
72
24
|
},
|
|
73
25
|
"./rokkit.css": {
|
|
74
|
-
"style": "./
|
|
75
|
-
"default": "./
|
|
26
|
+
"style": "./src/rokkit/index.css",
|
|
27
|
+
"default": "./src/rokkit/index.css"
|
|
76
28
|
},
|
|
77
29
|
"./minimal.css": {
|
|
78
|
-
"style": "./
|
|
79
|
-
"default": "./
|
|
30
|
+
"style": "./src/minimal/index.css",
|
|
31
|
+
"default": "./src/minimal/index.css"
|
|
80
32
|
},
|
|
81
33
|
"./material.css": {
|
|
82
|
-
"style": "./
|
|
83
|
-
"default": "./
|
|
34
|
+
"style": "./src/material/index.css",
|
|
35
|
+
"default": "./src/material/index.css"
|
|
84
36
|
},
|
|
85
37
|
"./frosted.css": {
|
|
86
|
-
"style": "./
|
|
87
|
-
"default": "./
|
|
88
|
-
},
|
|
89
|
-
"./grada-ui.css": {
|
|
90
|
-
"style": "./dist/grada-ui.css",
|
|
91
|
-
"default": "./dist/grada-ui.css"
|
|
92
|
-
},
|
|
93
|
-
"./daisy-ui.css": {
|
|
94
|
-
"style": "./dist/daisy-ui.css",
|
|
95
|
-
"default": "./dist/daisy-ui.css"
|
|
96
|
-
},
|
|
97
|
-
"./shadcn.css": {
|
|
98
|
-
"style": "./dist/shadcn.css",
|
|
99
|
-
"default": "./dist/shadcn.css"
|
|
100
|
-
},
|
|
101
|
-
"./bits-ui.css": {
|
|
102
|
-
"style": "./dist/bits-ui.css",
|
|
103
|
-
"default": "./dist/bits-ui.css"
|
|
104
|
-
},
|
|
105
|
-
"./carbon.css": {
|
|
106
|
-
"style": "./dist/carbon.css",
|
|
107
|
-
"default": "./dist/carbon.css"
|
|
38
|
+
"style": "./src/frosted/index.css",
|
|
39
|
+
"default": "./src/frosted/index.css"
|
|
108
40
|
},
|
|
109
|
-
"./
|
|
110
|
-
"style": "./
|
|
111
|
-
"default": "./
|
|
41
|
+
"./zen-sumi.css": {
|
|
42
|
+
"style": "./src/zen-sumi/index.css",
|
|
43
|
+
"default": "./src/zen-sumi/index.css"
|
|
112
44
|
},
|
|
113
45
|
"./base": {
|
|
114
46
|
"style": "./src/base/index.css",
|
|
@@ -150,69 +82,28 @@
|
|
|
150
82
|
"style": "./src/frosted/*.css",
|
|
151
83
|
"default": "./src/frosted/*.css"
|
|
152
84
|
},
|
|
153
|
-
"./
|
|
154
|
-
"style": "./src/
|
|
155
|
-
"default": "./src/
|
|
156
|
-
},
|
|
157
|
-
"./grada-ui/*": {
|
|
158
|
-
"style": "./src/grada-ui/*.css",
|
|
159
|
-
"default": "./src/grada-ui/*.css"
|
|
160
|
-
},
|
|
161
|
-
"./daisy-ui": {
|
|
162
|
-
"style": "./src/daisy-ui/index.css",
|
|
163
|
-
"default": "./src/daisy-ui/index.css"
|
|
164
|
-
},
|
|
165
|
-
"./daisy-ui/*": {
|
|
166
|
-
"style": "./src/daisy-ui/*.css",
|
|
167
|
-
"default": "./src/daisy-ui/*.css"
|
|
168
|
-
},
|
|
169
|
-
"./shadcn": {
|
|
170
|
-
"style": "./src/shadcn/index.css",
|
|
171
|
-
"default": "./src/shadcn/index.css"
|
|
172
|
-
},
|
|
173
|
-
"./shadcn/*": {
|
|
174
|
-
"style": "./src/shadcn/*.css",
|
|
175
|
-
"default": "./src/shadcn/*.css"
|
|
176
|
-
},
|
|
177
|
-
"./bits-ui": {
|
|
178
|
-
"style": "./src/bits-ui/index.css",
|
|
179
|
-
"default": "./src/bits-ui/index.css"
|
|
180
|
-
},
|
|
181
|
-
"./bits-ui/*": {
|
|
182
|
-
"style": "./src/bits-ui/*.css",
|
|
183
|
-
"default": "./src/bits-ui/*.css"
|
|
184
|
-
},
|
|
185
|
-
"./carbon": {
|
|
186
|
-
"style": "./src/carbon/index.css",
|
|
187
|
-
"default": "./src/carbon/index.css"
|
|
188
|
-
},
|
|
189
|
-
"./carbon/*": {
|
|
190
|
-
"style": "./src/carbon/*.css",
|
|
191
|
-
"default": "./src/carbon/*.css"
|
|
192
|
-
},
|
|
193
|
-
"./ant-design": {
|
|
194
|
-
"style": "./src/ant-design/index.css",
|
|
195
|
-
"default": "./src/ant-design/index.css"
|
|
85
|
+
"./zen-sumi": {
|
|
86
|
+
"style": "./src/zen-sumi/index.css",
|
|
87
|
+
"default": "./src/zen-sumi/index.css"
|
|
196
88
|
},
|
|
197
|
-
"./
|
|
198
|
-
"style": "./src/
|
|
199
|
-
"default": "./src/
|
|
89
|
+
"./zen-sumi/*": {
|
|
90
|
+
"style": "./src/zen-sumi/*.css",
|
|
91
|
+
"default": "./src/zen-sumi/*.css"
|
|
200
92
|
}
|
|
201
93
|
},
|
|
202
94
|
"files": [
|
|
203
95
|
"src",
|
|
204
|
-
"dist",
|
|
205
96
|
"build.mjs",
|
|
206
97
|
"README.md",
|
|
207
98
|
"LICENSE"
|
|
208
99
|
],
|
|
209
100
|
"scripts": {
|
|
210
|
-
"prepublishOnly": "cp ../../LICENSE .
|
|
101
|
+
"prepublishOnly": "cp ../../LICENSE .",
|
|
211
102
|
"postpublish": "rm -f LICENSE",
|
|
212
103
|
"build": "bun run build.mjs"
|
|
213
104
|
},
|
|
214
105
|
"dependencies": {
|
|
215
|
-
"@rokkit/core": "1.0.
|
|
106
|
+
"@rokkit/core": "1.0.5"
|
|
216
107
|
},
|
|
217
108
|
"devDependencies": {
|
|
218
109
|
"magic-string": "^0.30.21",
|
package/src/base/carousel.css
CHANGED
package/src/base/density.css
CHANGED
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
--density-line-height: 1.5;
|
|
20
20
|
--density-icon-size: 1.25rem;
|
|
21
21
|
--density-border-width: 1px;
|
|
22
|
-
--density-radius-base: var(--radius-md
|
|
22
|
+
--density-radius-base: var(--radius-md);
|
|
23
23
|
}
|
|
24
24
|
|
|
25
25
|
[data-density='compact'] {
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
--density-line-height: 1.375;
|
|
34
34
|
--density-icon-size: 1rem;
|
|
35
35
|
--density-border-width: 1px;
|
|
36
|
-
--density-radius-base: var(--radius-sm
|
|
36
|
+
--density-radius-base: var(--radius-sm);
|
|
37
37
|
}
|
|
38
38
|
|
|
39
39
|
[data-density='cozy'] {
|
|
@@ -47,5 +47,5 @@
|
|
|
47
47
|
--density-line-height: 1.75;
|
|
48
48
|
--density-icon-size: 1.5rem;
|
|
49
49
|
--density-border-width: 1px;
|
|
50
|
-
--density-radius-base: var(--radius-lg
|
|
50
|
+
--density-radius-base: var(--radius-lg);
|
|
51
51
|
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Gradient Border Wrapper — Base Structural CSS
|
|
3
|
+
*
|
|
4
|
+
* Usage:
|
|
5
|
+
* <div data-gradient-border>
|
|
6
|
+
* <div data-gradient-border-inner>content</div>
|
|
7
|
+
* </div>
|
|
8
|
+
*
|
|
9
|
+
* Themes set the gradient on [data-gradient-border] background.
|
|
10
|
+
* Non-gradient themes set background: transparent and use regular border.
|
|
11
|
+
*/
|
|
12
|
+
|
|
13
|
+
[data-gradient-border] {
|
|
14
|
+
padding: var(--density-border-width, 1px);
|
|
15
|
+
border-radius: var(--density-radius-base, var(--radius-md));
|
|
16
|
+
background: var(--gradient-border-bg, transparent);
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
[data-gradient-border-inner] {
|
|
20
|
+
border-radius: calc(var(--density-radius-base, var(--radius-md)) - var(--density-border-width, 1px));
|
|
21
|
+
background: var(--gradient-border-inner-bg, inherit);
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
/* Fallback: when no gradient, use a standard border */
|
|
25
|
+
[data-gradient-border]:not([style*='--gradient-border-bg']) {
|
|
26
|
+
padding: 0;
|
|
27
|
+
border: var(--density-border-width, 1px) solid var(--gradient-border-color, currentColor);
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
[data-gradient-border]:not([style*='--gradient-border-bg']) [data-gradient-border-inner] {
|
|
31
|
+
border-radius: var(--density-radius-base, var(--radius-md));
|
|
32
|
+
}
|
package/src/base/index.css
CHANGED
package/src/base/input.css
CHANGED
|
@@ -192,13 +192,17 @@ button[data-form-reset]:disabled {
|
|
|
192
192
|
@apply focus:outline-none;
|
|
193
193
|
}
|
|
194
194
|
|
|
195
|
-
/* Range slider thumb */
|
|
195
|
+
/* Range slider thumb — theme layer sets --range-thumb via @apply on [data-range-thumb] */
|
|
196
|
+
input[type='range'] {
|
|
197
|
+
--range-thumb: var(--color-primary);
|
|
198
|
+
}
|
|
199
|
+
|
|
196
200
|
input[type='range']::-webkit-slider-thumb {
|
|
197
201
|
appearance: none;
|
|
198
202
|
height: 16px;
|
|
199
203
|
width: 16px;
|
|
200
204
|
border-radius: 50%;
|
|
201
|
-
background:
|
|
205
|
+
background: var(--range-thumb);
|
|
202
206
|
cursor: pointer;
|
|
203
207
|
}
|
|
204
208
|
|
|
@@ -206,7 +210,7 @@ input[type='range']::-moz-range-thumb {
|
|
|
206
210
|
height: 16px;
|
|
207
211
|
width: 16px;
|
|
208
212
|
border-radius: 50%;
|
|
209
|
-
background:
|
|
213
|
+
background: var(--range-thumb);
|
|
210
214
|
cursor: pointer;
|
|
211
215
|
border: none;
|
|
212
216
|
}
|
|
@@ -246,7 +250,7 @@ input[type='radio'] {
|
|
|
246
250
|
}
|
|
247
251
|
|
|
248
252
|
input[type='radio']:checked {
|
|
249
|
-
border-
|
|
253
|
+
@apply border-primary-z5 text-primary-z5;
|
|
250
254
|
}
|
|
251
255
|
|
|
252
256
|
input[type='radio']:checked::before {
|
|
@@ -255,7 +259,7 @@ input[type='radio']:checked::before {
|
|
|
255
259
|
width: 0.5rem;
|
|
256
260
|
height: 0.5rem;
|
|
257
261
|
border-radius: 50%;
|
|
258
|
-
background:
|
|
262
|
+
background: currentColor;
|
|
259
263
|
position: absolute;
|
|
260
264
|
top: 50%;
|
|
261
265
|
left: 50%;
|
package/src/base/item.css
CHANGED
|
@@ -13,6 +13,19 @@
|
|
|
13
13
|
flex-shrink: 0;
|
|
14
14
|
}
|
|
15
15
|
|
|
16
|
+
|
|
17
|
+
/* =============================================================================
|
|
18
|
+
Item Icon — Literal (kanji, emoji, text)
|
|
19
|
+
============================================================================= */
|
|
20
|
+
|
|
21
|
+
[data-item-icon-literal] {
|
|
22
|
+
flex-shrink: 0;
|
|
23
|
+
width: var(--density-icon-size, 1.25rem);
|
|
24
|
+
text-align: center;
|
|
25
|
+
line-height: 1;
|
|
26
|
+
font-size: var(--density-icon-size, 1.25rem);
|
|
27
|
+
}
|
|
28
|
+
|
|
16
29
|
/* =============================================================================
|
|
17
30
|
Item Avatar
|
|
18
31
|
============================================================================= */
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Layout Tokens — App-Level Spacing
|
|
3
|
+
*
|
|
4
|
+
* Structural layout dimensions for app shells.
|
|
5
|
+
* Override per-app by redefining these custom properties.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
:root {
|
|
9
|
+
--layout-sidebar-width: 240px;
|
|
10
|
+
--layout-sidebar-collapsed: 64px;
|
|
11
|
+
--layout-header-height: 56px;
|
|
12
|
+
--layout-content-max-width: 1280px;
|
|
13
|
+
--layout-section-gap: 2rem;
|
|
14
|
+
--layout-section-padding: 1.5rem;
|
|
15
|
+
--layout-content-padding: 2rem;
|
|
16
|
+
--layout-card-gap: 1rem;
|
|
17
|
+
}
|
package/src/base/nav-content.css
CHANGED
|
@@ -21,11 +21,11 @@
|
|
|
21
21
|
|
|
22
22
|
[data-nav-content][data-orientation='horizontal'] [data-nav-content-nav] {
|
|
23
23
|
width: var(--nav-size, 280px);
|
|
24
|
-
border-
|
|
24
|
+
@apply border-r border-surface-z3;
|
|
25
25
|
}
|
|
26
26
|
|
|
27
27
|
[data-nav-content][data-orientation='vertical'] [data-nav-content-nav] {
|
|
28
|
-
border-
|
|
28
|
+
@apply border-b border-surface-z3;
|
|
29
29
|
}
|
|
30
30
|
|
|
31
31
|
[data-nav-content-main] {
|
|
@@ -43,6 +43,6 @@
|
|
|
43
43
|
[data-nav-content][data-collapsible][data-orientation='horizontal'] [data-nav-content-nav] {
|
|
44
44
|
width: 100%;
|
|
45
45
|
border-right: none;
|
|
46
|
-
border-
|
|
46
|
+
@apply border-b border-surface-z3;
|
|
47
47
|
}
|
|
48
48
|
}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Roundedness Axis — CSS Custom Property Scale
|
|
3
|
+
*
|
|
4
|
+
* Decoupled from density. Place data-radius on any container;
|
|
5
|
+
* descendants inherit automatically.
|
|
6
|
+
*
|
|
7
|
+
* Presets: sharp → soft (default) → rounded → pill
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
:root,
|
|
11
|
+
[data-radius='soft'] {
|
|
12
|
+
--radius-sm: 0.125rem;
|
|
13
|
+
--radius-md: 0.375rem;
|
|
14
|
+
--radius-lg: 0.625rem;
|
|
15
|
+
--radius-xl: 0.75rem;
|
|
16
|
+
--radius-full: 9999px;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
[data-radius='sharp'] {
|
|
20
|
+
--radius-sm: 0;
|
|
21
|
+
--radius-md: 0;
|
|
22
|
+
--radius-lg: 0;
|
|
23
|
+
--radius-xl: 0;
|
|
24
|
+
--radius-full: 9999px;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
[data-radius='rounded'] {
|
|
28
|
+
--radius-sm: 0.25rem;
|
|
29
|
+
--radius-md: 0.5rem;
|
|
30
|
+
--radius-lg: 0.75rem;
|
|
31
|
+
--radius-xl: 1rem;
|
|
32
|
+
--radius-full: 9999px;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
[data-radius='pill'] {
|
|
36
|
+
--radius-sm: 9999px;
|
|
37
|
+
--radius-md: 9999px;
|
|
38
|
+
--radius-lg: 9999px;
|
|
39
|
+
--radius-xl: 9999px;
|
|
40
|
+
--radius-full: 9999px;
|
|
41
|
+
}
|
package/src/base/stepper.css
CHANGED
|
@@ -47,32 +47,28 @@
|
|
|
47
47
|
}
|
|
48
48
|
|
|
49
49
|
[data-stepper-step][data-completed] [data-stepper-circle] {
|
|
50
|
-
|
|
51
|
-
border-color: var(--color-primary-500, #3b82f6);
|
|
52
|
-
color: white;
|
|
50
|
+
@apply bg-primary-z5 border-primary-z5 text-surface-z0;
|
|
53
51
|
}
|
|
54
52
|
|
|
55
53
|
[data-stepper-step][data-active] [data-stepper-circle] {
|
|
56
|
-
border-
|
|
57
|
-
color: var(--color-primary-500, #3b82f6);
|
|
58
|
-
box-shadow: 0 0 0 3px color-mix(in srgb, var(--color-primary-500, #3b82f6) 20%, transparent);
|
|
54
|
+
@apply border-primary-z5 text-primary-z5 ring-primary-z5/20 ring-3;
|
|
59
55
|
}
|
|
60
56
|
|
|
61
57
|
/* ─── Connector line ─── */
|
|
62
58
|
|
|
63
59
|
[data-stepper-connector] {
|
|
60
|
+
@apply bg-surface-z3;
|
|
64
61
|
flex: 1;
|
|
65
62
|
height: 2px;
|
|
66
63
|
min-width: 2rem;
|
|
67
64
|
align-self: center;
|
|
68
65
|
/* Vertically center with the circle (half of 2.5rem) */
|
|
69
66
|
margin-top: 1.25rem;
|
|
70
|
-
background-color: var(--color-surface-300, #d1d5db);
|
|
71
67
|
transition: background-color 0.2s ease;
|
|
72
68
|
}
|
|
73
69
|
|
|
74
70
|
[data-stepper-connector][data-completed] {
|
|
75
|
-
|
|
71
|
+
@apply bg-primary-z5;
|
|
76
72
|
}
|
|
77
73
|
|
|
78
74
|
/* Vertical orientation connectors */
|
|
@@ -104,10 +100,12 @@
|
|
|
104
100
|
}
|
|
105
101
|
|
|
106
102
|
[data-stepper-dot] {
|
|
103
|
+
@apply border-surface-z4;
|
|
107
104
|
width: 0.5rem;
|
|
108
105
|
height: 0.5rem;
|
|
109
106
|
border-radius: 9999px;
|
|
110
|
-
border: 1px
|
|
107
|
+
border-width: 1px;
|
|
108
|
+
border-style: solid;
|
|
111
109
|
background: transparent;
|
|
112
110
|
cursor: pointer;
|
|
113
111
|
padding: 0;
|
|
@@ -122,14 +120,11 @@
|
|
|
122
120
|
}
|
|
123
121
|
|
|
124
122
|
[data-stepper-dot][data-completed] {
|
|
125
|
-
|
|
126
|
-
border-color: var(--color-primary-500, #3b82f6);
|
|
123
|
+
@apply bg-primary-z5 border-primary-z5;
|
|
127
124
|
}
|
|
128
125
|
|
|
129
126
|
[data-stepper-dot][data-active] {
|
|
130
|
-
border-
|
|
131
|
-
background-color: var(--color-primary-500, #3b82f6);
|
|
132
|
-
box-shadow: 0 0 0 2px color-mix(in srgb, var(--color-primary-500, #3b82f6) 25%, transparent);
|
|
127
|
+
@apply bg-primary-z5 border-primary-z5 ring-primary-z5/25 ring-2;
|
|
133
128
|
}
|
|
134
129
|
|
|
135
130
|
/* ─── Content area ─── */
|
package/src/frosted/button.css
CHANGED
|
@@ -13,8 +13,7 @@
|
|
|
13
13
|
[data-style='frosted'] [data-button]:not([data-style])[data-variant='default'],
|
|
14
14
|
[data-style='frosted'] [data-button][data-style='default']:not([data-variant]),
|
|
15
15
|
[data-style='frosted'] [data-button]:not([data-style]):not([data-variant]) {
|
|
16
|
-
@apply text-surface-z9 border backdrop-blur-xl;
|
|
17
|
-
background: color-mix(in srgb, var(--color-surface-z4, #888) 28%, transparent);
|
|
16
|
+
@apply text-surface-z9 border backdrop-blur-xl bg-surface-z4/28;
|
|
18
17
|
border-color: rgba(255, 255, 255, 0.22);
|
|
19
18
|
box-shadow:
|
|
20
19
|
inset 0 1px 0 rgba(255, 255, 255, 0.2),
|
|
@@ -23,8 +22,7 @@
|
|
|
23
22
|
|
|
24
23
|
[data-style='frosted'] [data-button][data-style='default'][data-variant='primary'],
|
|
25
24
|
[data-style='frosted'] [data-button]:not([data-style])[data-variant='primary'] {
|
|
26
|
-
@apply text-on-primary border backdrop-blur-xl;
|
|
27
|
-
background: color-mix(in srgb, var(--color-primary-500, #6366f1) 60%, transparent);
|
|
25
|
+
@apply text-on-primary border backdrop-blur-xl bg-primary-z5/60;
|
|
28
26
|
border-color: rgba(255, 255, 255, 0.25);
|
|
29
27
|
box-shadow:
|
|
30
28
|
inset 0 1px 0 rgba(255, 255, 255, 0.25),
|
|
@@ -33,8 +31,7 @@
|
|
|
33
31
|
|
|
34
32
|
[data-style='frosted'] [data-button][data-style='default'][data-variant='secondary'],
|
|
35
33
|
[data-style='frosted'] [data-button]:not([data-style])[data-variant='secondary'] {
|
|
36
|
-
@apply text-on-secondary border backdrop-blur-xl;
|
|
37
|
-
background: color-mix(in srgb, var(--color-secondary-500, #ec4899) 60%, transparent);
|
|
34
|
+
@apply text-on-secondary border backdrop-blur-xl bg-secondary-z5/60;
|
|
38
35
|
border-color: rgba(255, 255, 255, 0.25);
|
|
39
36
|
box-shadow:
|
|
40
37
|
inset 0 1px 0 rgba(255, 255, 255, 0.25),
|
|
@@ -43,8 +40,7 @@
|
|
|
43
40
|
|
|
44
41
|
[data-style='frosted'] [data-button][data-style='default'][data-variant='accent'],
|
|
45
42
|
[data-style='frosted'] [data-button]:not([data-style])[data-variant='accent'] {
|
|
46
|
-
@apply text-on-accent border backdrop-blur-xl;
|
|
47
|
-
background: color-mix(in srgb, var(--color-accent-500, #f59e0b) 60%, transparent);
|
|
43
|
+
@apply text-on-accent border backdrop-blur-xl bg-accent-z5/60;
|
|
48
44
|
border-color: rgba(255, 255, 255, 0.25);
|
|
49
45
|
box-shadow:
|
|
50
46
|
inset 0 1px 0 rgba(255, 255, 255, 0.25),
|
|
@@ -53,8 +49,7 @@
|
|
|
53
49
|
|
|
54
50
|
[data-style='frosted'] [data-button][data-style='default'][data-variant='danger'],
|
|
55
51
|
[data-style='frosted'] [data-button]:not([data-style])[data-variant='danger'] {
|
|
56
|
-
@apply text-on-danger border backdrop-blur-xl;
|
|
57
|
-
background: color-mix(in srgb, var(--color-danger-500, #ef4444) 60%, transparent);
|
|
52
|
+
@apply text-on-danger border backdrop-blur-xl bg-danger-z5/60;
|
|
58
53
|
border-color: rgba(255, 255, 255, 0.25);
|
|
59
54
|
box-shadow:
|
|
60
55
|
inset 0 1px 0 rgba(255, 255, 255, 0.25),
|
|
@@ -196,7 +191,7 @@
|
|
|
196
191
|
|
|
197
192
|
[data-style='frosted'] [data-button][data-style='default']:hover:not(:disabled):not([data-disabled]),
|
|
198
193
|
[data-style='frosted'] [data-button]:not([data-style]):hover:not(:disabled):not([data-disabled]) {
|
|
199
|
-
|
|
194
|
+
@apply bg-surface-z4/38;
|
|
200
195
|
border-color: rgba(255, 255, 255, 0.3);
|
|
201
196
|
box-shadow:
|
|
202
197
|
inset 0 1px 0 rgba(255, 255, 255, 0.28),
|