@dxos/ui-theme 0.8.4-main.74a063c4e0 → 0.8.4-main.765dc60934
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/LICENSE +102 -5
- package/README.md +1 -1
- package/dist/lib/browser/index.mjs +98 -88
- package/dist/lib/browser/index.mjs.map +4 -4
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/node-esm/index.mjs +98 -88
- package/dist/lib/node-esm/index.mjs.map +4 -4
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/plugin/node-cjs/main.css +146 -105
- package/dist/plugin/node-cjs/main.css.map +2 -2
- package/dist/plugin/node-cjs/meta.json +1 -1
- package/dist/plugin/node-esm/main.css +146 -105
- package/dist/plugin/node-esm/main.css.map +2 -2
- package/dist/plugin/node-esm/meta.json +1 -1
- package/dist/plugin/node-esm/plugins/ThemePlugin.mjs.map +2 -2
- package/dist/types/src/Theme.stories.d.ts.map +1 -1
- package/dist/types/src/defs.d.ts +1 -1
- package/dist/types/src/defs.d.ts.map +1 -1
- package/dist/types/src/fragments/density.d.ts +1 -4
- package/dist/types/src/fragments/density.d.ts.map +1 -1
- package/dist/types/src/fragments/hover.d.ts +0 -1
- package/dist/types/src/fragments/hover.d.ts.map +1 -1
- package/dist/types/src/fragments/text.d.ts +0 -1
- package/dist/types/src/fragments/text.d.ts.map +1 -1
- package/dist/types/src/plugins/ThemePlugin.d.ts +1 -1
- package/dist/types/src/plugins/ThemePlugin.d.ts.map +1 -1
- package/dist/types/src/theme/components/button.d.ts +2 -2
- package/dist/types/src/theme/components/button.d.ts.map +1 -1
- package/dist/types/src/theme/components/card.d.ts.map +1 -1
- package/dist/types/src/theme/components/dialog.d.ts.map +1 -1
- package/dist/types/src/theme/components/icon-button.d.ts +1 -0
- package/dist/types/src/theme/components/icon-button.d.ts.map +1 -1
- package/dist/types/src/theme/components/input.d.ts +8 -8
- package/dist/types/src/theme/components/input.d.ts.map +1 -1
- package/dist/types/src/theme/components/main.d.ts.map +1 -1
- package/dist/types/src/theme/components/scroll-area.d.ts.map +1 -1
- package/dist/types/src/theme/primitives/column.d.ts +22 -5
- package/dist/types/src/theme/primitives/column.d.ts.map +1 -1
- package/dist/types/src/theme/primitives/panel.d.ts.map +1 -1
- package/dist/types/src/theme/theme.d.ts.map +1 -1
- package/dist/types/src/util/hash-styles.d.ts +1 -1
- package/dist/types/src/util/hash-styles.d.ts.map +1 -1
- package/dist/types/src/util/mx.d.ts +25 -4
- package/dist/types/src/util/mx.d.ts.map +1 -1
- package/dist/types/src/util/size.d.ts.map +1 -1
- package/dist/types/src/util/valence.d.ts +2 -2
- package/dist/types/src/util/valence.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +11 -19
- package/src/Theme.stories.tsx +5 -5
- package/src/css/DESIGN_SYSTEM.md +159 -0
- package/src/css/base/base.css +2 -2
- package/src/css/components/button.css +2 -2
- package/src/css/components/checkbox.css +1 -1
- package/src/css/components/focus.css +12 -12
- package/src/css/components/panel.css +45 -45
- package/src/css/components/selected.css +61 -15
- package/src/css/components/selected.md +101 -0
- package/src/css/components/surface.css +4 -4
- package/src/css/components/tag.css +25 -23
- package/src/css/layout/size.css +16 -3
- package/src/css/theme/animation.css +31 -0
- package/src/css/theme/semantic.css +36 -40
- package/src/css/theme/spacing.css +8 -8
- package/src/css/theme/styles.css +22 -22
- package/src/css/utilities.css +48 -6
- package/src/defs.ts +1 -1
- package/src/fragments/AUDIT.md +0 -3
- package/src/fragments/density.ts +8 -5
- package/src/fragments/hover.ts +0 -2
- package/src/fragments/text.ts +1 -1
- package/src/main.css +38 -4
- package/src/theme/components/button.ts +2 -2
- package/src/theme/components/card.ts +5 -1
- package/src/theme/components/dialog.ts +5 -3
- package/src/theme/components/focus.ts +2 -2
- package/src/theme/components/icon-button.ts +6 -3
- package/src/theme/components/input.ts +9 -9
- package/src/theme/components/message.ts +5 -5
- package/src/theme/components/popover.ts +1 -1
- package/src/theme/components/scroll-area.ts +10 -5
- package/src/theme/components/select.ts +1 -1
- package/src/theme/components/tooltip.ts +1 -1
- package/src/theme/primitives/column.ts +44 -20
- package/src/util/hash-styles.ts +19 -19
- package/src/util/mx.ts +12 -6
package/LICENSE
CHANGED
|
@@ -1,8 +1,105 @@
|
|
|
1
|
-
|
|
2
|
-
Copyright (c) 2022 DXOS
|
|
1
|
+
# Functional Source License, Version 1.1, ALv2 Future License
|
|
3
2
|
|
|
4
|
-
|
|
3
|
+
## Abbreviation
|
|
5
4
|
|
|
6
|
-
|
|
5
|
+
FSL-1.1-Apache-2.0
|
|
7
6
|
|
|
8
|
-
|
|
7
|
+
## Notice
|
|
8
|
+
|
|
9
|
+
Copyright 2026 DXOS
|
|
10
|
+
|
|
11
|
+
## Terms and Conditions
|
|
12
|
+
|
|
13
|
+
### Licensor ("We")
|
|
14
|
+
|
|
15
|
+
The party offering the Software under these Terms and Conditions.
|
|
16
|
+
|
|
17
|
+
### The Software
|
|
18
|
+
|
|
19
|
+
The "Software" is each version of the software that we make available under
|
|
20
|
+
these Terms and Conditions, as indicated by our inclusion of these Terms and
|
|
21
|
+
Conditions with the Software.
|
|
22
|
+
|
|
23
|
+
### License Grant
|
|
24
|
+
|
|
25
|
+
Subject to your compliance with this License Grant and the Patents,
|
|
26
|
+
Redistribution and Trademark clauses below, we hereby grant you the right to
|
|
27
|
+
use, copy, modify, create derivative works, publicly perform, publicly display
|
|
28
|
+
and redistribute the Software for any Permitted Purpose identified below.
|
|
29
|
+
|
|
30
|
+
### Permitted Purpose
|
|
31
|
+
|
|
32
|
+
A Permitted Purpose is any purpose other than a Competing Use. A Competing Use
|
|
33
|
+
means making the Software available to others in a commercial product or
|
|
34
|
+
service that:
|
|
35
|
+
|
|
36
|
+
1. substitutes for the Software;
|
|
37
|
+
|
|
38
|
+
2. substitutes for any other product or service we offer using the Software
|
|
39
|
+
that exists as of the date we make the Software available; or
|
|
40
|
+
|
|
41
|
+
3. offers the same or substantially similar functionality as the Software.
|
|
42
|
+
|
|
43
|
+
Permitted Purposes specifically include using the Software:
|
|
44
|
+
|
|
45
|
+
1. for your internal use and access;
|
|
46
|
+
|
|
47
|
+
2. for non-commercial education;
|
|
48
|
+
|
|
49
|
+
3. for non-commercial research; and
|
|
50
|
+
|
|
51
|
+
4. in connection with professional services that you provide to a licensee
|
|
52
|
+
using the Software in accordance with these Terms and Conditions.
|
|
53
|
+
|
|
54
|
+
### Patents
|
|
55
|
+
|
|
56
|
+
To the extent your use for a Permitted Purpose would necessarily infringe our
|
|
57
|
+
patents, the license grant above includes a license under our patents. If you
|
|
58
|
+
make a claim against any party that the Software infringes or contributes to
|
|
59
|
+
the infringement of any patent, then your patent license to the Software ends
|
|
60
|
+
immediately.
|
|
61
|
+
|
|
62
|
+
### Redistribution
|
|
63
|
+
|
|
64
|
+
The Terms and Conditions apply to all copies, modifications and derivatives of
|
|
65
|
+
the Software.
|
|
66
|
+
|
|
67
|
+
If you redistribute any copies, modifications or derivatives of the Software,
|
|
68
|
+
you must include a copy of or a link to these Terms and Conditions and not
|
|
69
|
+
remove any copyright notices provided in or with the Software.
|
|
70
|
+
|
|
71
|
+
### Disclaimer
|
|
72
|
+
|
|
73
|
+
THE SOFTWARE IS PROVIDED "AS IS" AND WITHOUT WARRANTIES OF ANY KIND, EXPRESS OR
|
|
74
|
+
IMPLIED, INCLUDING WITHOUT LIMITATION WARRANTIES OF FITNESS FOR A PARTICULAR
|
|
75
|
+
PURPOSE, MERCHANTABILITY, TITLE OR NON-INFRINGEMENT.
|
|
76
|
+
|
|
77
|
+
IN NO EVENT WILL WE HAVE ANY LIABILITY TO YOU ARISING OUT OF OR RELATED TO THE
|
|
78
|
+
SOFTWARE, INCLUDING INDIRECT, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES,
|
|
79
|
+
EVEN IF WE HAVE BEEN INFORMED OF THEIR POSSIBILITY IN ADVANCE.
|
|
80
|
+
|
|
81
|
+
### Trademarks
|
|
82
|
+
|
|
83
|
+
Except for displaying the License Details and identifying us as the origin of
|
|
84
|
+
the Software, you have no right under these Terms and Conditions to use our
|
|
85
|
+
trademarks, trade names, service marks or product names.
|
|
86
|
+
|
|
87
|
+
## Grant of Future License
|
|
88
|
+
|
|
89
|
+
We hereby irrevocably grant you an additional license to use the Software under
|
|
90
|
+
the Apache License, Version 2.0 that is effective on the second anniversary of
|
|
91
|
+
the date we make the Software available. On or after that date, you may use the
|
|
92
|
+
Software under the Apache License, Version 2.0, in which case the following
|
|
93
|
+
will apply:
|
|
94
|
+
|
|
95
|
+
Licensed under the Apache License, Version 2.0 (the "License"); you may not use
|
|
96
|
+
this file except in compliance with the License.
|
|
97
|
+
|
|
98
|
+
You may obtain a copy of the License at
|
|
99
|
+
|
|
100
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
|
101
|
+
|
|
102
|
+
Unless required by applicable law or agreed to in writing, software distributed
|
|
103
|
+
under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
|
|
104
|
+
CONDITIONS OF ANY KIND, either express or implied. See the License for the
|
|
105
|
+
specific language governing permissions and limitations under the License.
|
package/README.md
CHANGED
|
@@ -22,4 +22,4 @@ pnpm i @dxos/ui-theme
|
|
|
22
22
|
|
|
23
23
|
Your ideas, issues, and code are most welcome. Please take a look at our [community code of conduct](https://github.com/dxos/dxos/blob/main/CODE_OF_CONDUCT.md), the [issue guide](https://github.com/dxos/dxos/blob/main/CONTRIBUTING.md#submitting-issues), and the [PR contribution guide](https://github.com/dxos/dxos/blob/main/CONTRIBUTING.md#submitting-prs).
|
|
24
24
|
|
|
25
|
-
License: [
|
|
25
|
+
License: [FSL-1.1-Apache-2.0](./LICENSE) Copyright 2022 © DXOS
|
|
@@ -35,7 +35,7 @@ var hueShades = [
|
|
|
35
35
|
var roles = [
|
|
36
36
|
"fill",
|
|
37
37
|
"surface",
|
|
38
|
-
"
|
|
38
|
+
"foreground",
|
|
39
39
|
"text",
|
|
40
40
|
"border"
|
|
41
41
|
];
|
|
@@ -46,18 +46,18 @@ var cardMinBlockSize = 18;
|
|
|
46
46
|
var cardMaxBlockSize = 30;
|
|
47
47
|
|
|
48
48
|
// src/fragments/density.ts
|
|
49
|
-
var coarseBlockSize = "min-h-[2.5rem]";
|
|
50
|
-
var coarseDimensions = `${coarseBlockSize} px-3`;
|
|
51
49
|
var fineBlockSize = "min-h-[2.5rem] pointer-fine:min-h-[2rem]";
|
|
50
|
+
var coarseBlockSize = "min-h-[2.5rem]";
|
|
52
51
|
var fineDimensions = `${fineBlockSize} px-2`;
|
|
53
|
-
var
|
|
52
|
+
var coarseDimensions = `${coarseBlockSize} px-3`;
|
|
53
|
+
var densityDimensions = (density = "fine") => density === "fine" ? fineDimensions : coarseDimensions;
|
|
54
|
+
var densityBlockSize = (density = "fine") => density === "fine" ? fineBlockSize : coarseBlockSize;
|
|
54
55
|
|
|
55
56
|
// src/fragments/disabled.ts
|
|
56
57
|
var staticDisabled = "opacity-40 cursor-not-allowed shadow-none";
|
|
57
58
|
var dataDisabled = "data-[disabled]:opacity-40 data-[disabled]:cursor-not-allowed";
|
|
58
59
|
|
|
59
60
|
// src/fragments/hover.ts
|
|
60
|
-
var subtleHover = "hover:bg-hover-overlay";
|
|
61
61
|
var ghostHover = "hover:bg-hover-surface";
|
|
62
62
|
var ghostFocusWithin = "focus-within:bg-hover-surface";
|
|
63
63
|
var hoverableControls = "[--controls-opacity:1] hover-hover:[--controls-opacity:0] hover-hover:hover:[--controls-opacity:1]";
|
|
@@ -68,7 +68,6 @@ var hoverableOpenControlItem = "hover-hover:aria-[expanded=true]:[--controls-opa
|
|
|
68
68
|
var hoverableControlItem = "opacity-(--controls-opacity)";
|
|
69
69
|
|
|
70
70
|
// src/fragments/text.ts
|
|
71
|
-
var descriptionTextPrimary = "text-sm font-normal text-base-surface-text";
|
|
72
71
|
var descriptionMessage = "text-description border border-dashed border-separator rounded-sm p-4";
|
|
73
72
|
|
|
74
73
|
// src/util/elevation.ts
|
|
@@ -109,7 +108,7 @@ var neutral = {
|
|
|
109
108
|
hue: "neutral",
|
|
110
109
|
fill: "bg-neutral-fill",
|
|
111
110
|
surface: "bg-neutral-surface",
|
|
112
|
-
|
|
111
|
+
foreground: "text-neutral-foreground",
|
|
113
112
|
text: "text-neutral-text",
|
|
114
113
|
border: "border-neutral-border"
|
|
115
114
|
};
|
|
@@ -118,7 +117,7 @@ var styles = [
|
|
|
118
117
|
hue: "red",
|
|
119
118
|
fill: "bg-red-fill",
|
|
120
119
|
surface: "bg-red-surface",
|
|
121
|
-
|
|
120
|
+
foreground: "text-red-foreground",
|
|
122
121
|
text: "text-red-text",
|
|
123
122
|
border: "border-red-border"
|
|
124
123
|
},
|
|
@@ -126,7 +125,7 @@ var styles = [
|
|
|
126
125
|
hue: "orange",
|
|
127
126
|
fill: "bg-orange-fill",
|
|
128
127
|
surface: "bg-orange-surface",
|
|
129
|
-
|
|
128
|
+
foreground: "text-orange-foreground",
|
|
130
129
|
text: "text-orange-text",
|
|
131
130
|
border: "border-orange-border"
|
|
132
131
|
},
|
|
@@ -134,7 +133,7 @@ var styles = [
|
|
|
134
133
|
hue: "amber",
|
|
135
134
|
fill: "bg-amber-fill",
|
|
136
135
|
surface: "bg-amber-surface",
|
|
137
|
-
|
|
136
|
+
foreground: "text-amber-foreground",
|
|
138
137
|
text: "text-amber-text",
|
|
139
138
|
border: "border-amber-border"
|
|
140
139
|
},
|
|
@@ -142,7 +141,7 @@ var styles = [
|
|
|
142
141
|
hue: "yellow",
|
|
143
142
|
fill: "bg-yellow-fill",
|
|
144
143
|
surface: "bg-yellow-surface",
|
|
145
|
-
|
|
144
|
+
foreground: "text-yellow-foreground",
|
|
146
145
|
text: "text-yellow-text",
|
|
147
146
|
border: "border-yellow-border"
|
|
148
147
|
},
|
|
@@ -150,7 +149,7 @@ var styles = [
|
|
|
150
149
|
hue: "lime",
|
|
151
150
|
fill: "bg-lime-fill",
|
|
152
151
|
surface: "bg-lime-surface",
|
|
153
|
-
|
|
152
|
+
foreground: "text-lime-foreground",
|
|
154
153
|
text: "text-lime-text",
|
|
155
154
|
border: "border-lime-border"
|
|
156
155
|
},
|
|
@@ -158,7 +157,7 @@ var styles = [
|
|
|
158
157
|
hue: "green",
|
|
159
158
|
fill: "bg-green-fill",
|
|
160
159
|
surface: "bg-green-surface",
|
|
161
|
-
|
|
160
|
+
foreground: "text-green-foreground",
|
|
162
161
|
text: "text-green-text",
|
|
163
162
|
border: "border-green-border"
|
|
164
163
|
},
|
|
@@ -166,7 +165,7 @@ var styles = [
|
|
|
166
165
|
hue: "emerald",
|
|
167
166
|
fill: "bg-emerald-fill",
|
|
168
167
|
surface: "bg-emerald-surface",
|
|
169
|
-
|
|
168
|
+
foreground: "text-emerald-foreground",
|
|
170
169
|
text: "text-emerald-text",
|
|
171
170
|
border: "border-emerald-border"
|
|
172
171
|
},
|
|
@@ -174,7 +173,7 @@ var styles = [
|
|
|
174
173
|
hue: "teal",
|
|
175
174
|
fill: "bg-teal-fill",
|
|
176
175
|
surface: "bg-teal-surface",
|
|
177
|
-
|
|
176
|
+
foreground: "text-teal-foreground",
|
|
178
177
|
text: "text-teal-text",
|
|
179
178
|
border: "border-teal-border"
|
|
180
179
|
},
|
|
@@ -182,7 +181,7 @@ var styles = [
|
|
|
182
181
|
hue: "cyan",
|
|
183
182
|
fill: "bg-cyan-fill",
|
|
184
183
|
surface: "bg-cyan-surface",
|
|
185
|
-
|
|
184
|
+
foreground: "text-cyan-foreground",
|
|
186
185
|
text: "text-cyan-text",
|
|
187
186
|
border: "border-cyan-border"
|
|
188
187
|
},
|
|
@@ -190,7 +189,7 @@ var styles = [
|
|
|
190
189
|
hue: "sky",
|
|
191
190
|
fill: "bg-sky-fill",
|
|
192
191
|
surface: "bg-sky-surface",
|
|
193
|
-
|
|
192
|
+
foreground: "text-sky-foreground",
|
|
194
193
|
text: "text-sky-text",
|
|
195
194
|
border: "border-sky-border"
|
|
196
195
|
},
|
|
@@ -198,7 +197,7 @@ var styles = [
|
|
|
198
197
|
hue: "blue",
|
|
199
198
|
fill: "bg-blue-fill",
|
|
200
199
|
surface: "bg-blue-surface",
|
|
201
|
-
|
|
200
|
+
foreground: "text-blue-foreground",
|
|
202
201
|
text: "text-blue-text",
|
|
203
202
|
border: "border-blue-border"
|
|
204
203
|
},
|
|
@@ -206,7 +205,7 @@ var styles = [
|
|
|
206
205
|
hue: "indigo",
|
|
207
206
|
fill: "bg-indigo-fill",
|
|
208
207
|
surface: "bg-indigo-surface",
|
|
209
|
-
|
|
208
|
+
foreground: "text-indigo-foreground",
|
|
210
209
|
text: "text-indigo-text",
|
|
211
210
|
border: "border-indigo-border"
|
|
212
211
|
},
|
|
@@ -214,7 +213,7 @@ var styles = [
|
|
|
214
213
|
hue: "violet",
|
|
215
214
|
fill: "bg-violet-fill",
|
|
216
215
|
surface: "bg-violet-surface",
|
|
217
|
-
|
|
216
|
+
foreground: "text-violet-foreground",
|
|
218
217
|
text: "text-violet-text",
|
|
219
218
|
border: "border-violet-border"
|
|
220
219
|
},
|
|
@@ -222,7 +221,7 @@ var styles = [
|
|
|
222
221
|
hue: "purple",
|
|
223
222
|
fill: "bg-purple-fill",
|
|
224
223
|
surface: "bg-purple-surface",
|
|
225
|
-
|
|
224
|
+
foreground: "text-purple-foreground",
|
|
226
225
|
text: "text-purple-text",
|
|
227
226
|
border: "border-purple-border"
|
|
228
227
|
},
|
|
@@ -230,7 +229,7 @@ var styles = [
|
|
|
230
229
|
hue: "fuchsia",
|
|
231
230
|
fill: "bg-fuchsia-fill",
|
|
232
231
|
surface: "bg-fuchsia-surface",
|
|
233
|
-
|
|
232
|
+
foreground: "text-fuchsia-foreground",
|
|
234
233
|
text: "text-fuchsia-text",
|
|
235
234
|
border: "border-fuchsia-border"
|
|
236
235
|
},
|
|
@@ -238,7 +237,7 @@ var styles = [
|
|
|
238
237
|
hue: "pink",
|
|
239
238
|
fill: "bg-pink-fill",
|
|
240
239
|
surface: "bg-pink-surface",
|
|
241
|
-
|
|
240
|
+
foreground: "text-pink-foreground",
|
|
242
241
|
text: "text-pink-text",
|
|
243
242
|
border: "border-pink-border"
|
|
244
243
|
},
|
|
@@ -246,7 +245,7 @@ var styles = [
|
|
|
246
245
|
hue: "rose",
|
|
247
246
|
fill: "bg-rose-fill",
|
|
248
247
|
surface: "bg-rose-surface",
|
|
249
|
-
|
|
248
|
+
foreground: "text-rose-foreground",
|
|
250
249
|
text: "text-rose-text",
|
|
251
250
|
border: "border-rose-border"
|
|
252
251
|
}
|
|
@@ -315,12 +314,18 @@ var mx = extendTailwindMerge({
|
|
|
315
314
|
}
|
|
316
315
|
}
|
|
317
316
|
});
|
|
318
|
-
var composableProps = ({ className, classNames, role, ...props }, { classNames: defaultClassNames, ...defaults } = {}) => ({
|
|
317
|
+
var composableProps = ({ className, classNames, role, style, ...props }, { classNames: defaultClassNames, ...defaults } = {}) => ({
|
|
319
318
|
// Default props.
|
|
320
319
|
...defaults,
|
|
321
|
-
// Spread supplied props
|
|
322
|
-
role: role ?? defaults.role ?? "none",
|
|
320
|
+
// Spread supplied props.
|
|
323
321
|
...props,
|
|
322
|
+
// Prefer explicit role, then defaults role, then 'none'.
|
|
323
|
+
role: role ?? defaults.role ?? "none",
|
|
324
|
+
// Merge styles.
|
|
325
|
+
style: {
|
|
326
|
+
...defaults.style,
|
|
327
|
+
...style
|
|
328
|
+
},
|
|
324
329
|
// Compose classnames.
|
|
325
330
|
className: mx(defaultClassNames, className, classNames)
|
|
326
331
|
});
|
|
@@ -335,12 +340,7 @@ function slottable(render) {
|
|
|
335
340
|
warn = true;
|
|
336
341
|
log.warn("slot child is not composable; create it with composable() or slottable()", {
|
|
337
342
|
child: child.type.displayName ?? child.type.name
|
|
338
|
-
}, {
|
|
339
|
-
F: __dxlog_file,
|
|
340
|
-
L: 119,
|
|
341
|
-
S: this,
|
|
342
|
-
C: (f, a) => f(...a)
|
|
343
|
-
});
|
|
343
|
+
}, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 100, S: this });
|
|
344
344
|
}
|
|
345
345
|
} catch {
|
|
346
346
|
}
|
|
@@ -612,7 +612,7 @@ var breadcrumbTheme = {
|
|
|
612
612
|
var cardRoot = ({ border, fullWidth }, ...etc) => mx("dx-card dx-card-min-width dx-card-max-width min-h-(--dx-rail-item) group/card relative overflow-hidden", border && "bg-card-surface border border-separator dark:border-subdued-separator rounded-xs dx-focus-ring-group-y-indicator", fullWidth && "max-w-none!", ...etc);
|
|
613
613
|
var cardToolbar = (_, ...etc) => mx("dx-card__toolbar dx-density-fine bg-transparent p-0! gap-0! col-span-3 grid! grid-cols-subgrid! [contain:none]", ...etc);
|
|
614
614
|
var cardTitle = (_props, ...etc) => mx("dx-card__title grow truncate", ...etc);
|
|
615
|
-
var cardContent = (_props, ...etc) => mx("dx-card__content contents
|
|
615
|
+
var cardContent = (_props, ...etc) => mx("dx-card__content contents pb-1 last:pb-0", ...etc);
|
|
616
616
|
var cardHeading = ({ variant = "default" }, ...etc) => mx("dx-card__heading", variant === "default" && "py-1", variant === "subtitle" && "py-2 text-xs text-description font-medium uppercase", ...etc);
|
|
617
617
|
var cardText = ({ variant = "default", truncate: _truncate }, ...etc) => mx("dx-card__text items-center overflow-hidden", variant === "default" && "py-1", variant === "description" && "py-1.5 text-description", ...etc);
|
|
618
618
|
var cardTextSpan = ({ variant = "default", truncate }, ...etc) => mx(variant === "description" && "text-sm text-description line-clamp-3", truncate && "truncate", ...etc);
|
|
@@ -622,12 +622,14 @@ var cardAction = (_props, ...etc) => mx("dx-card__acztion col-span-3 !grid grid-
|
|
|
622
622
|
var cardActionLabel = (_props, ...etc) => mx("dx-card__action-label min-w-0 flex-1 truncate", ...etc);
|
|
623
623
|
var cardLink = (_props, ...etc) => mx("dx-card__link col-span-3 !grid grid-cols-subgrid group p-0! dx-button dx-focus-ring min-h-1!", ...etc);
|
|
624
624
|
var cardLinkLabel = (_props, ...etc) => mx("dx-card__link-label min-w-0 flex-1 truncate", ...etc);
|
|
625
|
+
var cardRow = (_, ...etc) => mx("dx-card__row col-span-3 grid grid-cols-subgrid", ...etc);
|
|
625
626
|
var cardIconBlock = ({ padding }, ...etc) => mx("dx-card__icon-block grid h-[var(--dx-rail-item)] w-[var(--dx-rail-item)] place-items-center", padding && "[&>*]:p-1", ...etc);
|
|
626
627
|
var cardTheme = {
|
|
627
628
|
root: cardRoot,
|
|
628
629
|
toolbar: cardToolbar,
|
|
629
630
|
title: cardTitle,
|
|
630
631
|
content: cardContent,
|
|
632
|
+
row: cardRow,
|
|
631
633
|
heading: cardHeading,
|
|
632
634
|
text: cardText,
|
|
633
635
|
"text-span": cardTextSpan,
|
|
@@ -641,8 +643,8 @@ var cardTheme = {
|
|
|
641
643
|
};
|
|
642
644
|
|
|
643
645
|
// src/theme/components/button.ts
|
|
644
|
-
var primaryButtonColors = "text-accent-
|
|
645
|
-
var staticDefaultButtonColors = "bg-input-surface text-input-
|
|
646
|
+
var primaryButtonColors = "text-accent-foreground bg-accent-surface hover:bg-accent-surface-hover aria-pressed:bg-primary-500 dark:aria-pressed:bg-primary-500 data-[state=open]:bg-primary-500 dark:data-[state=open]:bg-primary-500 aria-checked:bg-primary-500 dark:aria-checked:bg-primary-500 aria-checked:text-primary-100";
|
|
647
|
+
var staticDefaultButtonColors = "bg-input-surface text-input-foreground";
|
|
646
648
|
var defaultButtonColors = mx(staticDefaultButtonColors, "data-[state=open]:bg-input-surface aria-pressed:text-accent-text aria-pressed:bg-base-surface aria-checked:text-accent-text aria-checked:bg-base-surface");
|
|
647
649
|
var ghostButtonColors = mx(ghostHover, "hover:text-inherit data-[state=open]:bg-input-surface aria-pressed:text-accent-text aria-pressed:bg-base-surface aria-checked:text-accent-text aria-checked:bg-base-surface");
|
|
648
650
|
var buttonRoot = (_props, ...etc) => {
|
|
@@ -656,6 +658,35 @@ var buttonTheme = {
|
|
|
656
658
|
group: buttonGroup
|
|
657
659
|
};
|
|
658
660
|
|
|
661
|
+
// src/theme/primitives/column.ts
|
|
662
|
+
var withColumn = {
|
|
663
|
+
/** Centers element in the Column grid via --dx-col. No-op outside Column or inside ScrollArea. */
|
|
664
|
+
center: () => "[grid-column:var(--dx-col,auto)]",
|
|
665
|
+
/** Propagates the Column grid to children via subgrid. No-op outside Column.
|
|
666
|
+
* Direct children default to center column unless they are a dx-container (ScrollArea). */
|
|
667
|
+
propagate: () => "[.dx-column-root_&]:col-span-full [.dx-column-root_&]:grid [.dx-column-root_&]:grid-cols-subgrid [.dx-column-root_&]:[&>*:not(.dx-container)]:[grid-column:var(--dx-col,auto)]",
|
|
668
|
+
/** Resets --dx-col after consuming --gutter. Applied by ScrollArea.Viewport. */
|
|
669
|
+
consumed: () => "[--dx-col:auto]"
|
|
670
|
+
};
|
|
671
|
+
var columnRoot = (_, ...etc) => {
|
|
672
|
+
return mx("dx-column-root grid", ...etc);
|
|
673
|
+
};
|
|
674
|
+
var columnRow = (_, ...etc) => {
|
|
675
|
+
return mx("col-span-3 grid grid-cols-subgrid", ...etc);
|
|
676
|
+
};
|
|
677
|
+
var columnBleed = (_, ...etc) => {
|
|
678
|
+
return mx("col-span-full grid grid-cols-subgrid min-h-0", ...etc);
|
|
679
|
+
};
|
|
680
|
+
var columnCenter = (_, ...etc) => {
|
|
681
|
+
return mx(withColumn.center(), "min-h-0", ...etc);
|
|
682
|
+
};
|
|
683
|
+
var columnTheme = {
|
|
684
|
+
root: columnRoot,
|
|
685
|
+
row: columnRow,
|
|
686
|
+
bleed: columnBleed,
|
|
687
|
+
center: columnCenter
|
|
688
|
+
};
|
|
689
|
+
|
|
659
690
|
// src/theme/components/dialog.ts
|
|
660
691
|
var sizeMap2 = {
|
|
661
692
|
sm: "md:max-w-[24rem]",
|
|
@@ -667,9 +698,9 @@ var dialogOverlay = (_props, ...etc) => mx("dx-dialog__overlay", ...etc);
|
|
|
667
698
|
var dialogContent = ({ inOverlayLayout, size = "md" }, ...etc) => {
|
|
668
699
|
return mx("@container", "dx-dialog__content dx-focus-ring dx-modal-surface dx-density-coarse py-4", !inOverlayLayout && "fixed z-50 top-[50%] left-[50%] -translate-x-[50%] -translate-y-[50%]", sizeMap2[size], ...etc);
|
|
669
700
|
};
|
|
670
|
-
var dialogHeader = (_props, ...etc) => mx("dx-dialog__header flex pb-4 items-center justify-between", ...etc);
|
|
671
|
-
var dialogBody = (_props, ...etc) => mx("dx-dialog__body", ...etc);
|
|
672
|
-
var dialogActionBar = (_props, ...etc) => mx("dx-dialog__actionbar flex items-center pt-4 gap-2 dx-density-coarse", ...etc);
|
|
701
|
+
var dialogHeader = (_props, ...etc) => mx("dx-dialog__header flex pb-4 items-center justify-between", withColumn.center(), ...etc);
|
|
702
|
+
var dialogBody = (_props, ...etc) => mx("dx-dialog__body dx-expander", withColumn.propagate(), ...etc);
|
|
703
|
+
var dialogActionBar = (_props, ...etc) => mx("dx-dialog__actionbar flex items-center pt-4 gap-2 dx-density-coarse", withColumn.center(), ...etc);
|
|
673
704
|
var dialogTitle = ({ srOnly }, ...etc) => mx("dx-dialog__title", srOnly && "sr-only", ...etc);
|
|
674
705
|
var dialogDescription = ({ srOnly }, ...etc) => mx("dx-dialog__description", "text-description", srOnly && "sr-only", ...etc);
|
|
675
706
|
var dialogTheme = {
|
|
@@ -683,7 +714,7 @@ var dialogTheme = {
|
|
|
683
714
|
};
|
|
684
715
|
|
|
685
716
|
// src/theme/components/focus.ts
|
|
686
|
-
var focusRing = ({ border }, ...etc) => mx("dx-ring-pseudo outline-hidden", "focus:after:ring-
|
|
717
|
+
var focusRing = ({ border }, ...etc) => mx("dx-ring-pseudo outline-hidden", "focus:after:ring-focus-ring-subtle", "data-[focus-state=active]:after:ring-focus-ring-subtle", "data-[focus-state=error]:after:ring-rose-500", border && "border border-separator", ...etc);
|
|
687
718
|
var focusTheme = {
|
|
688
719
|
group: focusRing,
|
|
689
720
|
item: focusRing
|
|
@@ -698,8 +729,8 @@ var iconTheme = {
|
|
|
698
729
|
};
|
|
699
730
|
|
|
700
731
|
// src/theme/components/icon-button.ts
|
|
701
|
-
var iconButtonRoot = ({ iconOnly }, ...etc) => {
|
|
702
|
-
return mx("px-1.5", !iconOnly && "gap-
|
|
732
|
+
var iconButtonRoot = ({ iconOnly, square }, ...etc) => {
|
|
733
|
+
return mx("px-1.5", !iconOnly && "gap-1.5", square && "aspect-square", ...etc);
|
|
703
734
|
};
|
|
704
735
|
var iconButtonTheme = {
|
|
705
736
|
root: iconButtonRoot
|
|
@@ -724,22 +755,22 @@ var inputValence = (valence) => {
|
|
|
724
755
|
}
|
|
725
756
|
};
|
|
726
757
|
var sharedSubduedInputStyles = (props) => [
|
|
727
|
-
"py-0 w-full bg-transparent text-current placeholder-placeholder",
|
|
728
758
|
'[[data-drag-autoscroll="active"]_&]:pointer-events-none',
|
|
729
|
-
|
|
759
|
+
"py-0 w-full bg-transparent text-current placeholder-placeholder",
|
|
730
760
|
"dx-focus-subdued",
|
|
761
|
+
densityDimensions(props.density),
|
|
731
762
|
props.disabled && staticDisabled
|
|
732
763
|
];
|
|
733
764
|
var sharedDefaultInputStyles = (props) => [
|
|
734
|
-
"py-0 w-full text-base-surface-text rounded-xs placeholder-placeholder",
|
|
735
765
|
'[[data-drag-autoscroll="active"]_&]:pointer-events-none',
|
|
766
|
+
"py-0 w-full text-base-foreground rounded-xs placeholder-placeholder",
|
|
736
767
|
textInputSurfaceFocus,
|
|
737
|
-
props.density
|
|
768
|
+
densityDimensions(props.density),
|
|
738
769
|
props.disabled ? staticDisabled : textInputSurfaceHover
|
|
739
770
|
];
|
|
740
771
|
var sharedStaticInputStyles = (props) => [
|
|
741
|
-
"py-0 w-full text-base-surface-text rounded-xs placeholder-placeholder",
|
|
742
772
|
'[[data-drag-autoscroll="active"]_&]:pointer-events-none',
|
|
773
|
+
"py-0 w-full text-base-foreground rounded-xs placeholder-placeholder",
|
|
743
774
|
textInputSurfaceFocus,
|
|
744
775
|
textInputSurfaceHover,
|
|
745
776
|
props.focused && "bg-attention-surface",
|
|
@@ -763,7 +794,7 @@ var inputSwitch = ({ size = 5, disabled }, ...etc) => mx(
|
|
|
763
794
|
);
|
|
764
795
|
var inputSwitchThumb = ({ size = 5 }, ...etc) => mx(getSize(size === "px" ? "px" : size - 2), "block bg-white rounded-full transition-transform duration-100 will-change-transform data-[state=checked]:translate-x-[100%]", ...etc);
|
|
765
796
|
var inputWithSegmentsInput = (props, ...etc) => mx("font-mono selection:bg-transparent mx-auto", props.density === "fine" ? "text-base pointer-fine:text-sm" : "text-lg", props.disabled && "cursor-not-allowed", ...etc);
|
|
766
|
-
var inputSegment = (props, ...etc) => mx("flex items-center justify-center font-mono", props.density === "fine" ? "size-10 pointer-fine:size-8 rounded-xs" : "size-12 rounded-xs", "bg-input-surface text-base-
|
|
797
|
+
var inputSegment = (props, ...etc) => mx("flex items-center justify-center font-mono", props.density === "fine" ? "size-10 pointer-fine:size-8 rounded-xs" : "size-12 rounded-xs", "bg-input-surface text-base-foreground transition-colors border border-separator", "data-[focused]:bg-attention-surface data-[focused]:border-focus-ring-subtle", "data-[focused]:ring-2 data-[focused]:ring-offset-0 data-[focused]:ring-focus-ring-subtle", inputValence(props.validationValence), props.disabled && staticDisabled, ...etc);
|
|
767
798
|
var inputLabel = (props, ...etc) => mx("block", inputTextLabel, props.srOnly && "sr-only", ...etc);
|
|
768
799
|
var inputDescription = (props, ...etc) => mx("text-description", props.srOnly && "sr-only", ...etc);
|
|
769
800
|
var inputDescriptionAndValidation = (props, ...etc) => mx("leading-none my-1.5", props.srOnly && "sr-only", ...etc);
|
|
@@ -849,19 +880,19 @@ var menuTheme = {
|
|
|
849
880
|
|
|
850
881
|
// src/theme/components/message.ts
|
|
851
882
|
var messageRoot = ({ valence }, etc) => {
|
|
852
|
-
return mx("grid grid-cols-[
|
|
883
|
+
return mx("grid grid-cols-[2rem_1fr_2rem] p-1 rounded-sm", messageValence(valence), etc);
|
|
853
884
|
};
|
|
854
885
|
var messageHeader = (_, etc) => {
|
|
855
|
-
return mx("col-span-
|
|
886
|
+
return mx("col-span-full grid grid-cols-subgrid items-center", etc);
|
|
856
887
|
};
|
|
857
888
|
var messageTitle = (_, etc) => {
|
|
858
|
-
return mx("col-start-2
|
|
889
|
+
return mx("col-start-2 truncate", etc);
|
|
859
890
|
};
|
|
860
891
|
var messageIcon = (_, etc) => {
|
|
861
|
-
return mx("col-start-1", etc);
|
|
892
|
+
return mx("col-start-1 grid place-items-center", etc);
|
|
862
893
|
};
|
|
863
894
|
var messageContent = (_, etc) => {
|
|
864
|
-
return mx("grid grid-cols-subgrid
|
|
895
|
+
return mx("col-start-2 grid grid-cols-subgrid inline first:font-medium", etc);
|
|
865
896
|
};
|
|
866
897
|
var messageTheme = {
|
|
867
898
|
root: messageRoot,
|
|
@@ -878,7 +909,7 @@ var popoverContent = ({ elevation }, ...etc) => mx("dx-modal-surface border bord
|
|
|
878
909
|
elevation,
|
|
879
910
|
level: "menu"
|
|
880
911
|
}), "dx-focus-ring", ...etc);
|
|
881
|
-
var popoverViewport = ({ constrainBlock, constrainInline }, ...etc) => mx("
|
|
912
|
+
var popoverViewport = ({ constrainBlock, constrainInline }, ...etc) => mx("grid grid-rows-[1fr] min-h-0 min-w-popover-min-width", (constrainBlock || constrainInline) && "overflow-hidden", constrainBlock && "max-h-(--radix-popover-content-available-height)", constrainBlock && "max-h-[min(var(--radix-popover-content-available-height),calc(100dvh-var(--spacing-screen-border)*2))]", constrainInline && "max-w-(--radix-popover-content-available-width)", ...etc);
|
|
882
913
|
var popoverArrow = (_props, ...etc) => mx("fill-separator", ...etc);
|
|
883
914
|
var popoverTheme = {
|
|
884
915
|
content: popoverContent,
|
|
@@ -903,14 +934,17 @@ var scrollAreaRoot = ({ orientation }, ...etc) => mx(
|
|
|
903
934
|
orientation === "vertical" && "group/scroll-v flex flex-col",
|
|
904
935
|
orientation === "horizontal" && "group/scroll-h flex",
|
|
905
936
|
orientation === "all" && "group/scroll-all",
|
|
906
|
-
// Apply col-span-full only when inside a Column.Root grid (detected via dx-column marker).
|
|
907
|
-
"[.dx-
|
|
937
|
+
// Apply col-span-full only when inside a Column.Root grid (detected via dx-column-root marker).
|
|
938
|
+
"[.dx-column-root_&]:col-span-full",
|
|
908
939
|
...etc
|
|
909
940
|
);
|
|
910
|
-
var scrollAreaViewport = ({ orientation, centered, padding, snap,
|
|
941
|
+
var scrollAreaViewport = ({ orientation, centered, padding, snap, autoHide }, ...etc) => {
|
|
911
942
|
return mx(
|
|
912
|
-
"h-
|
|
913
|
-
|
|
943
|
+
"flex-1 min-h-0 w-full",
|
|
944
|
+
// Reset --dx-col so nested components don't try to grid-position themselves.
|
|
945
|
+
// ScrollArea has already consumed --gutter for padding.
|
|
946
|
+
withColumn.consumed(),
|
|
947
|
+
orientation === "vertical" && "overflow-y-scroll",
|
|
914
948
|
orientation === "horizontal" && "flex overflow-x-scroll overscroll-x-contain",
|
|
915
949
|
orientation === "all" && "overflow-scroll",
|
|
916
950
|
"[&::-webkit-scrollbar-corner]:bg-transparent",
|
|
@@ -959,7 +993,7 @@ var selectContent = ({ elevation }, ...etc) => {
|
|
|
959
993
|
}), ...etc);
|
|
960
994
|
};
|
|
961
995
|
var selectViewport = (_props, ...etc) => mx(...etc);
|
|
962
|
-
var selectItem = (_props, ...etc) => mx("flex items-center min-h-[2rem] px-3 py-1 gap-2", "text-base-
|
|
996
|
+
var selectItem = (_props, ...etc) => mx("flex items-center min-h-[2rem] px-3 py-1 gap-2", "text-base-foreground leading-none select-none outline-hidden", "[&>svg]:invisible [&[data-state=checked]>svg]:visible", "dx-highlighted", ...etc);
|
|
963
997
|
var selectItemIndicator = (_props, ...etc) => mx("items-center", ...etc);
|
|
964
998
|
var selectArrow = (_props, ...etc) => mx("fill-separator", ...etc);
|
|
965
999
|
var selectSeparator = (_props, ...etc) => mx("self-stretch border-b my-1 border-separator", ...etc);
|
|
@@ -1045,7 +1079,7 @@ var toolbarTheme = {
|
|
|
1045
1079
|
};
|
|
1046
1080
|
|
|
1047
1081
|
// src/theme/components/tooltip.ts
|
|
1048
|
-
var tooltipContent = ({ elevation }, ...etc) => mx("inline-flex items-center p-1 max-w-64 text-sm bg-inverse-surface text-inverse-
|
|
1082
|
+
var tooltipContent = ({ elevation }, ...etc) => mx("inline-flex items-center p-1 max-w-64 text-sm bg-inverse-surface text-inverse-foreground rounded-sm", surfaceShadow({
|
|
1049
1083
|
elevation: "positioned"
|
|
1050
1084
|
}), surfaceZIndex({
|
|
1051
1085
|
elevation,
|
|
@@ -1101,26 +1135,6 @@ var treegridTheme = {
|
|
|
1101
1135
|
cell: treegridCell
|
|
1102
1136
|
};
|
|
1103
1137
|
|
|
1104
|
-
// src/theme/primitives/column.ts
|
|
1105
|
-
var columnRoot = (_, ...etc) => {
|
|
1106
|
-
return mx("dx-column grid", ...etc);
|
|
1107
|
-
};
|
|
1108
|
-
var columnContent = (_, ...etc) => {
|
|
1109
|
-
return mx("col-span-full grid grid-cols-subgrid min-h-0 [&>:not(.dx-container)]:col-start-2", ...etc);
|
|
1110
|
-
};
|
|
1111
|
-
var columnViewport = (_, ...etc) => {
|
|
1112
|
-
return mx(...etc);
|
|
1113
|
-
};
|
|
1114
|
-
var columnRow = ({ fullWidth, center }, ...etc) => {
|
|
1115
|
-
return mx("col-span-3 grid grid-cols-subgrid", fullWidth ? "col-span-3" : center && "col-start-2 col-span-1", ...etc);
|
|
1116
|
-
};
|
|
1117
|
-
var columnTheme = {
|
|
1118
|
-
root: columnRoot,
|
|
1119
|
-
content: columnContent,
|
|
1120
|
-
viewport: columnViewport,
|
|
1121
|
-
row: columnRow
|
|
1122
|
-
};
|
|
1123
|
-
|
|
1124
1138
|
// src/theme/primitives/panel.ts
|
|
1125
1139
|
var sizes = {
|
|
1126
1140
|
lg: "h-(--dx-topbar-size)",
|
|
@@ -1217,8 +1231,6 @@ export {
|
|
|
1217
1231
|
cardMinBlockSize,
|
|
1218
1232
|
cardMinInlineSize,
|
|
1219
1233
|
cardTheme,
|
|
1220
|
-
coarseBlockSize,
|
|
1221
|
-
coarseDimensions,
|
|
1222
1234
|
columnTheme,
|
|
1223
1235
|
composable,
|
|
1224
1236
|
composableProps,
|
|
@@ -1227,8 +1239,8 @@ export {
|
|
|
1227
1239
|
defaultTheme,
|
|
1228
1240
|
defaultTx,
|
|
1229
1241
|
densityBlockSize,
|
|
1242
|
+
densityDimensions,
|
|
1230
1243
|
descriptionMessage,
|
|
1231
|
-
descriptionTextPrimary,
|
|
1232
1244
|
dialogActionBar,
|
|
1233
1245
|
dialogBody,
|
|
1234
1246
|
dialogContent,
|
|
@@ -1237,8 +1249,6 @@ export {
|
|
|
1237
1249
|
dialogOverlay,
|
|
1238
1250
|
dialogTheme,
|
|
1239
1251
|
dialogTitle,
|
|
1240
|
-
fineBlockSize,
|
|
1241
|
-
fineDimensions,
|
|
1242
1252
|
focusTheme,
|
|
1243
1253
|
getHashHue,
|
|
1244
1254
|
getHashStyles,
|
|
@@ -1331,7 +1341,6 @@ export {
|
|
|
1331
1341
|
statusBar,
|
|
1332
1342
|
statusRoot,
|
|
1333
1343
|
statusTheme,
|
|
1334
|
-
subtleHover,
|
|
1335
1344
|
surfaceShadow,
|
|
1336
1345
|
surfaceZIndex,
|
|
1337
1346
|
tagRoot,
|
|
@@ -1355,6 +1364,7 @@ export {
|
|
|
1355
1364
|
treegridCell,
|
|
1356
1365
|
treegridRoot,
|
|
1357
1366
|
treegridRow,
|
|
1358
|
-
treegridTheme
|
|
1367
|
+
treegridTheme,
|
|
1368
|
+
withColumn
|
|
1359
1369
|
};
|
|
1360
1370
|
//# sourceMappingURL=index.mjs.map
|