@rokkit/themes 1.1.1 → 1.1.4

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rokkit/themes",
3
- "version": "1.1.1",
3
+ "version": "1.1.4",
4
4
  "description": "Theme styles for @rokkit/ui components",
5
5
  "repository": {
6
6
  "type": "git",
@@ -103,10 +103,10 @@
103
103
  "build": "bun run build.mjs"
104
104
  },
105
105
  "dependencies": {
106
- "@rokkit/core": "1.1.1"
106
+ "@rokkit/core": "1.1.4"
107
107
  },
108
108
  "devDependencies": {
109
- "@rokkit/unocss": "1.1.1",
109
+ "@rokkit/unocss": "1.1.4",
110
110
  "magic-string": "^0.30.21",
111
111
  "unocss": "^66.5.1"
112
112
  },
@@ -111,6 +111,107 @@
111
111
  vertical-align: middle;
112
112
  }
113
113
 
114
+ /* =============================================================================
115
+ Tree Table — hierarchy cell layout
116
+ ============================================================================= */
117
+
118
+ /* Hierarchy cell hosts the connector prefix + chevron + label inline so a
119
+ row stays a single line regardless of nesting depth. */
120
+ [data-tree-table] [data-table-cell][data-hierarchy='true'] {
121
+ display: flex;
122
+ align-items: center;
123
+ gap: 0.375rem;
124
+ white-space: nowrap;
125
+ }
126
+
127
+ [data-tree-table-cell-prefix] {
128
+ display: inline-flex;
129
+ align-items: center;
130
+ flex-shrink: 0;
131
+ }
132
+
133
+ /* Lock the connector slot width to match the toggle button so every
134
+ row indents by the same step regardless of whether the slot holds a
135
+ chevron, a connector line, or the empty placeholder. */
136
+ [data-tree-table] [data-connector] {
137
+ width: 1.25rem;
138
+ min-height: 1.5rem;
139
+ }
140
+
141
+ /* Placeholder used in the toggle slot for non-expandable (leaf) rows
142
+ so the label X-position lines up vertically across rows regardless
143
+ of whether the row has a chevron. Same box as the toggle button. */
144
+ [data-tree-table-empty] {
145
+ display: inline-block;
146
+ width: 1.25rem;
147
+ height: 1.25rem;
148
+ flex-shrink: 0;
149
+ }
150
+
151
+ /* Connector lines — broaden the Tree-component rules so the lines also
152
+ appear inside a tree-table. */
153
+ [data-tree-table]:not([data-line-style='none']) [data-connector-v] {
154
+ border-right-width: 1px;
155
+ }
156
+ [data-tree-table]:not([data-line-style='none']) [data-connector-h] {
157
+ border-bottom-width: 1px;
158
+ }
159
+ [data-tree-table]:not([data-line-style='none']) [data-connector-corner] {
160
+ border-bottom-width: 1px;
161
+ border-right-width: 1px;
162
+ }
163
+ [data-tree-table][data-line-style='solid'] [data-connector-v] {
164
+ border-right-style: solid;
165
+ }
166
+ [data-tree-table][data-line-style='solid'] [data-connector-h] {
167
+ border-bottom-style: solid;
168
+ }
169
+ [data-tree-table][data-line-style='solid'] [data-connector-corner] {
170
+ border-bottom-style: solid;
171
+ border-right-style: solid;
172
+ }
173
+ [data-tree-table][data-line-style='dashed'] [data-connector-v] {
174
+ border-right-style: dashed;
175
+ }
176
+ [data-tree-table][data-line-style='dashed'] [data-connector-h] {
177
+ border-bottom-style: dashed;
178
+ }
179
+ [data-tree-table][data-line-style='dotted'] [data-connector-v] {
180
+ border-right-style: dotted;
181
+ }
182
+ [data-tree-table][data-line-style='dotted'] [data-connector-h] {
183
+ border-bottom-style: dotted;
184
+ }
185
+
186
+ /* Toggle button is square, borderless, fills the connector slot.
187
+ Sized to match the connector visual rhythm — no extra row height. */
188
+ [data-tree-table-toggle] {
189
+ display: inline-flex;
190
+ align-items: center;
191
+ justify-content: center;
192
+ width: 1.25rem;
193
+ height: 1.25rem;
194
+ padding: 0;
195
+ background: transparent;
196
+ border: 0;
197
+ color: inherit;
198
+ cursor: pointer;
199
+ border-radius: 0.25rem;
200
+ }
201
+
202
+ [data-tree-table-toggle]:hover {
203
+ background: var(--paper-mute);
204
+ }
205
+
206
+ [data-tree-table-toggle]:focus-visible {
207
+ outline: 2px solid var(--focus-ring);
208
+ outline-offset: 1px;
209
+ }
210
+
211
+ /* Tree-table rows pick up data-tree-level from the component — use it as
212
+ a hook for theme-specific connector tinting, not for indent (the
213
+ Connector spans already provide indentation). */
214
+
114
215
  /* =============================================================================
115
216
  Empty State
116
217
  ============================================================================= */
@@ -160,5 +160,5 @@
160
160
  /* Placeholders */
161
161
  [data-style='material'] [data-input-root] input::placeholder,
162
162
  [data-style='material'] [data-input-root] textarea::placeholder {
163
- @apply text-paper-edge;
163
+ @apply text-ink-soft;
164
164
  }
@@ -167,5 +167,5 @@
167
167
  /* Placeholders */
168
168
  [data-style='minimal'] [data-input-root] input::placeholder,
169
169
  [data-style='minimal'] [data-input-root] textarea::placeholder {
170
- @apply text-paper-mute;
170
+ @apply text-ink-soft;
171
171
  }
@@ -167,5 +167,5 @@
167
167
  /* Placeholders */
168
168
  [data-style='zen-sumi'] [data-input-root] input::placeholder,
169
169
  [data-style='zen-sumi'] [data-input-root] textarea::placeholder {
170
- color: var(--color-surface-z4);
170
+ @apply text-ink-soft;
171
171
  }
@@ -17,7 +17,7 @@
17
17
  }
18
18
 
19
19
  [data-style='zen-sumi'] [data-search-input]::placeholder {
20
- @apply text-paper-edge;
20
+ @apply text-ink-soft;
21
21
  }
22
22
 
23
23
  /* =============================================================================
@@ -152,7 +152,7 @@
152
152
  }
153
153
 
154
154
  [data-style='zen-sumi'] [data-select-filter-input]::placeholder {
155
- @apply text-paper-edge;
155
+ @apply text-ink-soft;
156
156
  }
157
157
 
158
158
  [data-style='zen-sumi'] [data-select-empty] {