@zentauri-ui/zentauri-components 1.4.6 → 1.4.41
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 +1 -64
- package/cli/registry.json +1 -3
- package/package.json +3 -3
- package/dist/ui/search/filter-search-suggestions.d.ts +0 -15
- package/dist/ui/search/filter-search-suggestions.d.ts.map +0 -1
- package/dist/ui/search/index.d.ts +0 -7
- package/dist/ui/search/index.d.ts.map +0 -1
- package/dist/ui/search/search-bar.d.ts +0 -6
- package/dist/ui/search/search-bar.d.ts.map +0 -1
- package/dist/ui/search/search-suggestion-list.d.ts +0 -6
- package/dist/ui/search/search-suggestion-list.d.ts.map +0 -1
- package/dist/ui/search/search-suggestion-utils.d.ts +0 -6
- package/dist/ui/search/search-suggestion-utils.d.ts.map +0 -1
- package/dist/ui/search/types.d.ts +0 -44
- package/dist/ui/search/types.d.ts.map +0 -1
- package/dist/ui/search.js +0 -199
- package/dist/ui/search.js.map +0 -1
- package/dist/ui/search.mjs +0 -194
- package/dist/ui/search.mjs.map +0 -1
- package/dist/ui/typography/blockquote-base.d.ts +0 -6
- package/dist/ui/typography/blockquote-base.d.ts.map +0 -1
- package/dist/ui/typography/blockquote.d.ts +0 -6
- package/dist/ui/typography/blockquote.d.ts.map +0 -1
- package/dist/ui/typography/code-block-base.d.ts +0 -6
- package/dist/ui/typography/code-block-base.d.ts.map +0 -1
- package/dist/ui/typography/code-block.d.ts +0 -6
- package/dist/ui/typography/code-block.d.ts.map +0 -1
- package/dist/ui/typography/heading-base.d.ts +0 -6
- package/dist/ui/typography/heading-base.d.ts.map +0 -1
- package/dist/ui/typography/heading.d.ts +0 -6
- package/dist/ui/typography/heading.d.ts.map +0 -1
- package/dist/ui/typography/index.d.ts +0 -9
- package/dist/ui/typography/index.d.ts.map +0 -1
- package/dist/ui/typography/inline-code-base.d.ts +0 -6
- package/dist/ui/typography/inline-code-base.d.ts.map +0 -1
- package/dist/ui/typography/inline-code.d.ts +0 -6
- package/dist/ui/typography/inline-code.d.ts.map +0 -1
- package/dist/ui/typography/list-base.d.ts +0 -10
- package/dist/ui/typography/list-base.d.ts.map +0 -1
- package/dist/ui/typography/list.d.ts +0 -12
- package/dist/ui/typography/list.d.ts.map +0 -1
- package/dist/ui/typography/text-base.d.ts +0 -6
- package/dist/ui/typography/text-base.d.ts.map +0 -1
- package/dist/ui/typography/text.d.ts +0 -6
- package/dist/ui/typography/text.d.ts.map +0 -1
- package/dist/ui/typography/types.d.ts +0 -56
- package/dist/ui/typography/types.d.ts.map +0 -1
- package/dist/ui/typography/variants.d.ts +0 -16
- package/dist/ui/typography/variants.d.ts.map +0 -1
- package/dist/ui/typography.js +0 -334
- package/dist/ui/typography.js.map +0 -1
- package/dist/ui/typography.mjs +0 -321
- package/dist/ui/typography.mjs.map +0 -1
- package/src/ui/search/filter-search-suggestions.test.ts +0 -48
- package/src/ui/search/filter-search-suggestions.ts +0 -43
- package/src/ui/search/index.ts +0 -11
- package/src/ui/search/search-bar.tsx +0 -83
- package/src/ui/search/search-suggestion-list.tsx +0 -103
- package/src/ui/search/search-suggestion-utils.test.ts +0 -9
- package/src/ui/search/search-suggestion-utils.ts +0 -8
- package/src/ui/search/types.ts +0 -52
- package/src/ui/typography/blockquote-base.tsx +0 -39
- package/src/ui/typography/blockquote.tsx +0 -8
- package/src/ui/typography/code-block-base.tsx +0 -37
- package/src/ui/typography/code-block.tsx +0 -8
- package/src/ui/typography/heading-base.tsx +0 -59
- package/src/ui/typography/heading.tsx +0 -8
- package/src/ui/typography/index.ts +0 -28
- package/src/ui/typography/inline-code-base.tsx +0 -27
- package/src/ui/typography/inline-code.tsx +0 -8
- package/src/ui/typography/list-base.tsx +0 -88
- package/src/ui/typography/list.tsx +0 -15
- package/src/ui/typography/text-base.tsx +0 -43
- package/src/ui/typography/text.tsx +0 -8
- package/src/ui/typography/types.ts +0 -90
- package/src/ui/typography/typography.test.tsx +0 -80
- package/src/ui/typography/variants.ts +0 -72
package/dist/ui/typography.js
DELETED
|
@@ -1,334 +0,0 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
'use strict';
|
|
3
|
-
|
|
4
|
-
var chunkUOZYPWDZ_js = require('../chunk-UOZYPWDZ.js');
|
|
5
|
-
var classVarianceAuthority = require('class-variance-authority');
|
|
6
|
-
var jsxRuntime = require('react/jsx-runtime');
|
|
7
|
-
|
|
8
|
-
var typographyToneVariants = classVarianceAuthority.cva("", {
|
|
9
|
-
variants: {
|
|
10
|
-
tone: {
|
|
11
|
-
default: "text-slate-50 border-white/15",
|
|
12
|
-
muted: "text-slate-400 border-white/15",
|
|
13
|
-
primary: "text-cyan-300 border-cyan-300/40",
|
|
14
|
-
secondary: "text-slate-300 border-white/15",
|
|
15
|
-
accent: "text-violet-300 border-violet-300/40",
|
|
16
|
-
destructive: "text-rose-400 border-rose-300/40",
|
|
17
|
-
info: "text-sky-300 border-sky-300/40",
|
|
18
|
-
success: "text-emerald-300 border-emerald-300/40",
|
|
19
|
-
warning: "text-amber-300 border-amber-300/40",
|
|
20
|
-
error: "text-red-300 border-red-300/40",
|
|
21
|
-
"gradient-pink-violet": "bg-linear-to-r from-pink-400 to-violet-400 bg-clip-text text-transparent w-fit",
|
|
22
|
-
"gradient-cyan-violet": "bg-linear-to-r from-cyan-400 to-violet-400 bg-clip-text text-transparent w-fit",
|
|
23
|
-
"gradient-cyan-blue": "bg-linear-to-r from-cyan-400 to-blue-400 bg-clip-text text-transparent w-fit",
|
|
24
|
-
"gradient-cyan-green": "bg-linear-to-r from-cyan-400 to-green-400 bg-clip-text text-transparent w-fit",
|
|
25
|
-
"gradient-cyan-orange": "bg-linear-to-r from-cyan-400 to-orange-400 bg-clip-text text-transparent w-fit",
|
|
26
|
-
"gradient-cyan-red": "bg-linear-to-r from-cyan-400 to-red-400 bg-clip-text text-transparent w-fit",
|
|
27
|
-
"gradient-cyan-purple": "bg-linear-to-r from-cyan-400 to-purple-400 bg-clip-text text-transparent w-fit",
|
|
28
|
-
"gradient-cyan-pink": "bg-linear-to-r from-cyan-400 to-pink-400 bg-clip-text text-transparent w-fit"
|
|
29
|
-
}
|
|
30
|
-
},
|
|
31
|
-
defaultVariants: {
|
|
32
|
-
tone: "default"
|
|
33
|
-
}
|
|
34
|
-
});
|
|
35
|
-
var headingLevelVariants = classVarianceAuthority.cva("scroll-m-20", {
|
|
36
|
-
variants: {
|
|
37
|
-
level: {
|
|
38
|
-
1: "text-4xl font-bold tracking-tight md:text-5xl",
|
|
39
|
-
2: "text-3xl font-semibold tracking-tight",
|
|
40
|
-
3: "text-2xl font-semibold tracking-tight",
|
|
41
|
-
4: "text-xl font-semibold tracking-tight",
|
|
42
|
-
5: "text-lg font-medium",
|
|
43
|
-
6: "text-base font-medium"
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
});
|
|
47
|
-
var textSizeVariants = classVarianceAuthority.cva("", {
|
|
48
|
-
variants: {
|
|
49
|
-
size: {
|
|
50
|
-
sm: "text-sm leading-relaxed",
|
|
51
|
-
base: "text-base leading-relaxed",
|
|
52
|
-
lg: "text-lg leading-relaxed"
|
|
53
|
-
}
|
|
54
|
-
},
|
|
55
|
-
defaultVariants: {
|
|
56
|
-
size: "base"
|
|
57
|
-
}
|
|
58
|
-
});
|
|
59
|
-
var unorderedListMarkerVariants = classVarianceAuthority.cva("space-y-2 pl-5", {
|
|
60
|
-
variants: {
|
|
61
|
-
marker: {
|
|
62
|
-
disc: "list-disc",
|
|
63
|
-
circle: "[list-style-type:circle]",
|
|
64
|
-
none: "list-none pl-0"
|
|
65
|
-
}
|
|
66
|
-
},
|
|
67
|
-
defaultVariants: {
|
|
68
|
-
marker: "disc"
|
|
69
|
-
}
|
|
70
|
-
});
|
|
71
|
-
var orderedListVariants = classVarianceAuthority.cva("list-decimal space-y-2 pl-5");
|
|
72
|
-
var HEADING_TAGS = {
|
|
73
|
-
1: "h1",
|
|
74
|
-
2: "h2",
|
|
75
|
-
3: "h3",
|
|
76
|
-
4: "h4",
|
|
77
|
-
5: "h5",
|
|
78
|
-
6: "h6"
|
|
79
|
-
};
|
|
80
|
-
var HeadingBase = (props) => {
|
|
81
|
-
const {
|
|
82
|
-
level,
|
|
83
|
-
displayLevel,
|
|
84
|
-
tone,
|
|
85
|
-
bold,
|
|
86
|
-
italic,
|
|
87
|
-
underline,
|
|
88
|
-
strikethrough,
|
|
89
|
-
ref,
|
|
90
|
-
className,
|
|
91
|
-
children,
|
|
92
|
-
...rest
|
|
93
|
-
} = props;
|
|
94
|
-
const Tag = HEADING_TAGS[level];
|
|
95
|
-
const scale = displayLevel ?? level;
|
|
96
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
97
|
-
Tag,
|
|
98
|
-
{
|
|
99
|
-
ref,
|
|
100
|
-
"data-slot": "typography-heading",
|
|
101
|
-
"data-level": level,
|
|
102
|
-
className: chunkUOZYPWDZ_js.cn(
|
|
103
|
-
typographyToneVariants({ tone }),
|
|
104
|
-
headingLevelVariants({ level: scale }),
|
|
105
|
-
bold && "font-bold",
|
|
106
|
-
italic && "italic",
|
|
107
|
-
underline && "underline underline-offset-4",
|
|
108
|
-
strikethrough && "line-through",
|
|
109
|
-
className
|
|
110
|
-
),
|
|
111
|
-
...rest,
|
|
112
|
-
children
|
|
113
|
-
}
|
|
114
|
-
);
|
|
115
|
-
};
|
|
116
|
-
HeadingBase.displayName = "Heading";
|
|
117
|
-
var Heading = (props) => {
|
|
118
|
-
return /* @__PURE__ */ jsxRuntime.jsx(HeadingBase, { ...props });
|
|
119
|
-
};
|
|
120
|
-
Heading.displayName = "Heading";
|
|
121
|
-
var TextBase = (props) => {
|
|
122
|
-
const {
|
|
123
|
-
as = "p",
|
|
124
|
-
size = "base",
|
|
125
|
-
tone,
|
|
126
|
-
bold,
|
|
127
|
-
italic,
|
|
128
|
-
underline,
|
|
129
|
-
strikethrough,
|
|
130
|
-
highlight,
|
|
131
|
-
className,
|
|
132
|
-
children,
|
|
133
|
-
...rest
|
|
134
|
-
} = props;
|
|
135
|
-
const Component = as;
|
|
136
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
137
|
-
Component,
|
|
138
|
-
{
|
|
139
|
-
"data-slot": "typography-text",
|
|
140
|
-
className: chunkUOZYPWDZ_js.cn(
|
|
141
|
-
typographyToneVariants({ tone }),
|
|
142
|
-
textSizeVariants({ size }),
|
|
143
|
-
bold && "font-semibold",
|
|
144
|
-
italic && "italic",
|
|
145
|
-
underline && "underline underline-offset-2",
|
|
146
|
-
strikethrough && "line-through",
|
|
147
|
-
highlight && "rounded bg-amber-400/15 px-0.5",
|
|
148
|
-
className
|
|
149
|
-
),
|
|
150
|
-
...rest,
|
|
151
|
-
children
|
|
152
|
-
}
|
|
153
|
-
);
|
|
154
|
-
};
|
|
155
|
-
TextBase.displayName = "Text";
|
|
156
|
-
var Text = (props) => {
|
|
157
|
-
return /* @__PURE__ */ jsxRuntime.jsx(TextBase, { ...props });
|
|
158
|
-
};
|
|
159
|
-
Text.displayName = "Text";
|
|
160
|
-
function ListBase(props) {
|
|
161
|
-
if ("ordered" in props && props.ordered === true) {
|
|
162
|
-
const {
|
|
163
|
-
tone: tone2,
|
|
164
|
-
className: className2,
|
|
165
|
-
children: children2,
|
|
166
|
-
ref: ref2,
|
|
167
|
-
ordered: ordered2,
|
|
168
|
-
marker: marker2,
|
|
169
|
-
...rest2
|
|
170
|
-
} = props;
|
|
171
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
172
|
-
"ol",
|
|
173
|
-
{
|
|
174
|
-
ref: ref2,
|
|
175
|
-
"data-slot": "typography-list",
|
|
176
|
-
"data-list-type": "ordered",
|
|
177
|
-
className: chunkUOZYPWDZ_js.cn(
|
|
178
|
-
typographyToneVariants({ tone: tone2 }),
|
|
179
|
-
orderedListVariants(),
|
|
180
|
-
className2
|
|
181
|
-
),
|
|
182
|
-
...rest2,
|
|
183
|
-
children: children2
|
|
184
|
-
}
|
|
185
|
-
);
|
|
186
|
-
}
|
|
187
|
-
const {
|
|
188
|
-
marker = "disc",
|
|
189
|
-
tone,
|
|
190
|
-
className,
|
|
191
|
-
children,
|
|
192
|
-
ref,
|
|
193
|
-
ordered,
|
|
194
|
-
...rest
|
|
195
|
-
} = props;
|
|
196
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
197
|
-
"ul",
|
|
198
|
-
{
|
|
199
|
-
ref,
|
|
200
|
-
"data-slot": "typography-list",
|
|
201
|
-
"data-list-type": "unordered",
|
|
202
|
-
className: chunkUOZYPWDZ_js.cn(
|
|
203
|
-
typographyToneVariants({ tone }),
|
|
204
|
-
unorderedListMarkerVariants({ marker }),
|
|
205
|
-
className
|
|
206
|
-
),
|
|
207
|
-
...rest,
|
|
208
|
-
children
|
|
209
|
-
}
|
|
210
|
-
);
|
|
211
|
-
}
|
|
212
|
-
ListBase.displayName = "List";
|
|
213
|
-
function ListItemBase(props) {
|
|
214
|
-
const { className, children, ref, ...rest } = props;
|
|
215
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
216
|
-
"li",
|
|
217
|
-
{
|
|
218
|
-
ref,
|
|
219
|
-
"data-slot": "typography-list-item",
|
|
220
|
-
className: chunkUOZYPWDZ_js.cn("leading-relaxed", className),
|
|
221
|
-
...rest,
|
|
222
|
-
children
|
|
223
|
-
}
|
|
224
|
-
);
|
|
225
|
-
}
|
|
226
|
-
ListItemBase.displayName = "ListItem";
|
|
227
|
-
var ListItem = ListItemBase;
|
|
228
|
-
function ListRoot(props) {
|
|
229
|
-
return /* @__PURE__ */ jsxRuntime.jsx(ListBase, { ...props });
|
|
230
|
-
}
|
|
231
|
-
var List = Object.assign(ListRoot, {
|
|
232
|
-
Item: ListItem
|
|
233
|
-
});
|
|
234
|
-
ListRoot.displayName = "List";
|
|
235
|
-
var BlockquoteBase = (props) => {
|
|
236
|
-
const {
|
|
237
|
-
tone,
|
|
238
|
-
attribution,
|
|
239
|
-
className,
|
|
240
|
-
children,
|
|
241
|
-
ref,
|
|
242
|
-
...rest
|
|
243
|
-
} = props;
|
|
244
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
245
|
-
"blockquote",
|
|
246
|
-
{
|
|
247
|
-
ref,
|
|
248
|
-
"data-slot": "typography-blockquote",
|
|
249
|
-
className: chunkUOZYPWDZ_js.cn(
|
|
250
|
-
typographyToneVariants({ tone }),
|
|
251
|
-
"border-l-4 py-1 pl-4 italic",
|
|
252
|
-
className
|
|
253
|
-
),
|
|
254
|
-
...rest,
|
|
255
|
-
children: [
|
|
256
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "space-y-2 leading-relaxed", children }),
|
|
257
|
-
attribution ? /* @__PURE__ */ jsxRuntime.jsx("footer", { className: "mt-3 text-sm not-italic", children: /* @__PURE__ */ jsxRuntime.jsx("cite", { children: attribution }) }) : null
|
|
258
|
-
]
|
|
259
|
-
}
|
|
260
|
-
);
|
|
261
|
-
};
|
|
262
|
-
BlockquoteBase.displayName = "Blockquote";
|
|
263
|
-
var Blockquote = (props) => {
|
|
264
|
-
return /* @__PURE__ */ jsxRuntime.jsx(BlockquoteBase, { ...props });
|
|
265
|
-
};
|
|
266
|
-
Blockquote.displayName = "Blockquote";
|
|
267
|
-
var InlineCodeBase = (props) => {
|
|
268
|
-
const { tone, className, children, ref, ...rest } = props;
|
|
269
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
270
|
-
"code",
|
|
271
|
-
{
|
|
272
|
-
ref,
|
|
273
|
-
"data-slot": "typography-inline-code",
|
|
274
|
-
className: chunkUOZYPWDZ_js.cn(
|
|
275
|
-
typographyToneVariants({ tone }),
|
|
276
|
-
"rounded-md border border-white/10 bg-white/6 px-1.5 py-0.5 font-mono text-[0.925em] font-normal",
|
|
277
|
-
className
|
|
278
|
-
),
|
|
279
|
-
...rest,
|
|
280
|
-
children
|
|
281
|
-
}
|
|
282
|
-
);
|
|
283
|
-
};
|
|
284
|
-
InlineCodeBase.displayName = "InlineCode";
|
|
285
|
-
var InlineCode = (props) => {
|
|
286
|
-
return /* @__PURE__ */ jsxRuntime.jsx(InlineCodeBase, { ...props });
|
|
287
|
-
};
|
|
288
|
-
InlineCode.displayName = "InlineCode";
|
|
289
|
-
var CodeBlockBase = (props) => {
|
|
290
|
-
const {
|
|
291
|
-
tone,
|
|
292
|
-
language,
|
|
293
|
-
className,
|
|
294
|
-
children,
|
|
295
|
-
ref,
|
|
296
|
-
...rest
|
|
297
|
-
} = props;
|
|
298
|
-
const ariaLabel = language ? `Code sample (${language})` : "Code sample";
|
|
299
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
300
|
-
"pre",
|
|
301
|
-
{
|
|
302
|
-
ref,
|
|
303
|
-
"data-slot": "typography-code-block",
|
|
304
|
-
"aria-label": ariaLabel,
|
|
305
|
-
className: chunkUOZYPWDZ_js.cn(
|
|
306
|
-
typographyToneVariants({ tone }),
|
|
307
|
-
"overflow-x-auto rounded-xl border border-white/10 bg-slate-950/80 p-4 text-sm leading-relaxed shadow-inner shadow-slate-950/40",
|
|
308
|
-
className
|
|
309
|
-
),
|
|
310
|
-
...rest,
|
|
311
|
-
children: /* @__PURE__ */ jsxRuntime.jsx("code", { className: "font-mono text-[0.95em]", children })
|
|
312
|
-
}
|
|
313
|
-
);
|
|
314
|
-
};
|
|
315
|
-
CodeBlockBase.displayName = "CodeBlock";
|
|
316
|
-
var CodeBlock = (props) => {
|
|
317
|
-
return /* @__PURE__ */ jsxRuntime.jsx(CodeBlockBase, { ...props });
|
|
318
|
-
};
|
|
319
|
-
CodeBlock.displayName = "CodeBlock";
|
|
320
|
-
|
|
321
|
-
exports.Blockquote = Blockquote;
|
|
322
|
-
exports.CodeBlock = CodeBlock;
|
|
323
|
-
exports.Heading = Heading;
|
|
324
|
-
exports.InlineCode = InlineCode;
|
|
325
|
-
exports.List = List;
|
|
326
|
-
exports.ListItem = ListItem;
|
|
327
|
-
exports.Text = Text;
|
|
328
|
-
exports.headingLevelVariants = headingLevelVariants;
|
|
329
|
-
exports.orderedListVariants = orderedListVariants;
|
|
330
|
-
exports.textSizeVariants = textSizeVariants;
|
|
331
|
-
exports.typographyToneVariants = typographyToneVariants;
|
|
332
|
-
exports.unorderedListMarkerVariants = unorderedListMarkerVariants;
|
|
333
|
-
//# sourceMappingURL=typography.js.map
|
|
334
|
-
//# sourceMappingURL=typography.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/ui/typography/variants.ts","../../src/ui/typography/heading-base.tsx","../../src/ui/typography/heading.tsx","../../src/ui/typography/text-base.tsx","../../src/ui/typography/text.tsx","../../src/ui/typography/list-base.tsx","../../src/ui/typography/list.tsx","../../src/ui/typography/blockquote-base.tsx","../../src/ui/typography/blockquote.tsx","../../src/ui/typography/inline-code-base.tsx","../../src/ui/typography/inline-code.tsx","../../src/ui/typography/code-block-base.tsx","../../src/ui/typography/code-block.tsx"],"names":["cva","jsx","cn","tone","className","children","ref","ordered","marker","rest","jsxs"],"mappings":"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","file":"typography.js","sourcesContent":["import { cva } from \"class-variance-authority\";\n\n/** Semantic text colors aligned with slate/cyan/violet accents used across the kit (dark-first). */\nexport const typographyToneVariants = cva(\"\", {\n variants: {\n tone: {\n default: \"text-slate-50 border-white/15\",\n muted: \"text-slate-400 border-white/15\",\n primary: \"text-cyan-300 border-cyan-300/40\",\n secondary: \"text-slate-300 border-white/15\",\n accent: \"text-violet-300 border-violet-300/40\",\n destructive: \"text-rose-400 border-rose-300/40\",\n info: \"text-sky-300 border-sky-300/40\",\n success: \"text-emerald-300 border-emerald-300/40\",\n warning: \"text-amber-300 border-amber-300/40\",\n error: \"text-red-300 border-red-300/40\",\n \"gradient-pink-violet\": \"bg-linear-to-r from-pink-400 to-violet-400 bg-clip-text text-transparent w-fit\",\n \"gradient-cyan-violet\": \"bg-linear-to-r from-cyan-400 to-violet-400 bg-clip-text text-transparent w-fit\",\n \"gradient-cyan-blue\": \"bg-linear-to-r from-cyan-400 to-blue-400 bg-clip-text text-transparent w-fit\",\n \"gradient-cyan-green\": \"bg-linear-to-r from-cyan-400 to-green-400 bg-clip-text text-transparent w-fit\",\n \"gradient-cyan-orange\": \"bg-linear-to-r from-cyan-400 to-orange-400 bg-clip-text text-transparent w-fit\",\n \"gradient-cyan-red\": \"bg-linear-to-r from-cyan-400 to-red-400 bg-clip-text text-transparent w-fit\",\n \"gradient-cyan-purple\": \"bg-linear-to-r from-cyan-400 to-purple-400 bg-clip-text text-transparent w-fit\",\n \"gradient-cyan-pink\": \"bg-linear-to-r from-cyan-400 to-pink-400 bg-clip-text text-transparent w-fit\",\n },\n },\n defaultVariants: {\n tone: \"default\",\n },\n});\n\nexport const headingLevelVariants = cva(\"scroll-m-20\", {\n variants: {\n level: {\n 1: \"text-4xl font-bold tracking-tight md:text-5xl\",\n 2: \"text-3xl font-semibold tracking-tight\",\n 3: \"text-2xl font-semibold tracking-tight\",\n 4: \"text-xl font-semibold tracking-tight\",\n 5: \"text-lg font-medium\",\n 6: \"text-base font-medium\",\n },\n },\n});\n\nexport const textSizeVariants = cva(\"\", {\n variants: {\n size: {\n sm: \"text-sm leading-relaxed\",\n base: \"text-base leading-relaxed\",\n lg: \"text-lg leading-relaxed\",\n },\n },\n defaultVariants: {\n size: \"base\",\n },\n});\n\n/** Marker style for unordered lists; ignored when `ordered` is true (decimal numbering). */\nexport const unorderedListMarkerVariants = cva(\"space-y-2 pl-5\", {\n variants: {\n marker: {\n disc: \"list-disc\",\n circle: \"[list-style-type:circle]\",\n none: \"list-none pl-0\",\n },\n },\n defaultVariants: {\n marker: \"disc\",\n },\n});\n\nexport const orderedListVariants = cva(\"list-decimal space-y-2 pl-5\");\n","import { forwardRef } from \"react\";\n\nimport { cn } from \"../../lib/utils\";\n\nimport type { HeadingProps } from \"./types\";\nimport {\n headingLevelVariants,\n typographyToneVariants,\n} from \"./variants\";\n\nconst HEADING_TAGS = {\n 1: \"h1\",\n 2: \"h2\",\n 3: \"h3\",\n 4: \"h4\",\n 5: \"h5\",\n 6: \"h6\",\n} as const;\n\nexport const HeadingBase = (props: HeadingProps) => {\n const {\n level,\n displayLevel,\n tone,\n bold,\n italic,\n underline,\n strikethrough,\n ref,\n className,\n children,\n ...rest\n } = props;\n\n const Tag = HEADING_TAGS[level];\n const scale = displayLevel ?? level;\n\n return (\n <Tag\n ref={ref}\n data-slot=\"typography-heading\"\n data-level={level}\n className={cn(\n typographyToneVariants({ tone }),\n headingLevelVariants({ level: scale }),\n bold && \"font-bold\",\n italic && \"italic\",\n underline && \"underline underline-offset-4\",\n strikethrough && \"line-through\",\n className,\n )}\n {...rest}\n >\n {children}\n </Tag>\n );\n};\n\nHeadingBase.displayName = \"Heading\";\n","import { HeadingBase } from \"./heading-base\";\nimport type { HeadingProps } from \"./types\";\n\nexport const Heading = (props: HeadingProps) => {\n return <HeadingBase {...props} />;\n};\n\nHeading.displayName = \"Heading\";\n","import { cn } from \"../../lib/utils\";\n\nimport type { TextProps } from \"./types\";\nimport { textSizeVariants, typographyToneVariants } from \"./variants\";\n\nexport const TextBase = (props: TextProps) => {\n const {\n as = \"p\",\n size = \"base\",\n tone,\n bold,\n italic,\n underline,\n strikethrough,\n highlight,\n className,\n children,\n ...rest\n } = props;\n\n const Component = as;\n\n return (\n <Component\n data-slot=\"typography-text\"\n className={cn(\n typographyToneVariants({ tone }),\n textSizeVariants({ size }),\n bold && \"font-semibold\",\n italic && \"italic\",\n underline && \"underline underline-offset-2\",\n strikethrough && \"line-through\",\n highlight && \"rounded bg-amber-400/15 px-0.5\",\n className,\n )}\n {...rest}\n >\n {children}\n </Component>\n );\n};\n\nTextBase.displayName = \"Text\";\n","import { TextBase } from \"./text-base\";\nimport type { TextProps } from \"./types\";\n\nexport const Text = (props: TextProps) => {\n return <TextBase {...props} />;\n};\n\nText.displayName = \"Text\";\n","import { cn } from \"../../lib/utils\";\n\nimport type { ListProps, ListItemProps } from \"./types\";\nimport {\n orderedListVariants,\n typographyToneVariants,\n unorderedListMarkerVariants,\n} from \"./variants\";\n\nexport function ListBase(props: ListProps) {\n if (\"ordered\" in props && props.ordered === true) {\n const {\n tone,\n className,\n children,\n ref,\n ordered,\n marker,\n ...rest\n } = props;\n\n void ordered;\n void marker;\n\n return (\n <ol\n ref={ref}\n data-slot=\"typography-list\"\n data-list-type=\"ordered\"\n className={cn(\n typographyToneVariants({ tone }),\n orderedListVariants(),\n className,\n )}\n {...rest}\n >\n {children}\n </ol>\n );\n }\n\n const {\n marker = \"disc\",\n tone,\n className,\n children,\n ref,\n ordered,\n ...rest\n } = props;\n\n void ordered;\n\n return (\n <ul\n ref={ref}\n data-slot=\"typography-list\"\n data-list-type=\"unordered\"\n className={cn(\n typographyToneVariants({ tone }),\n unorderedListMarkerVariants({ marker }),\n className,\n )}\n {...rest}\n >\n {children}\n </ul>\n );\n}\n\nListBase.displayName = \"List\";\n\nexport function ListItemBase(props: ListItemProps) {\n const { className, children, ref, ...rest } = props;\n\n return (\n <li\n ref={ref}\n data-slot=\"typography-list-item\"\n className={cn(\"leading-relaxed\", className)}\n {...rest}\n >\n {children}\n </li>\n );\n}\n\nListItemBase.displayName = \"ListItem\";\n","import type { ListProps } from \"./types\";\n\nimport { ListBase, ListItemBase } from \"./list-base\";\n\nexport const ListItem = ListItemBase;\n\nfunction ListRoot(props: ListProps) {\n return <ListBase {...props} />;\n}\n\nexport const List = Object.assign(ListRoot, {\n Item: ListItem,\n});\n\nListRoot.displayName = \"List\";\n","import { forwardRef } from \"react\";\n\nimport { cn } from \"../../lib/utils\";\n\nimport type { BlockquoteProps } from \"./types\";\nimport { typographyToneVariants } from \"./variants\";\n\nexport const BlockquoteBase = (props: BlockquoteProps) => {\n const {\n tone,\n attribution,\n className,\n children,\n ref,\n ...rest\n } = props;\n\n return (\n <blockquote\n ref={ref}\n data-slot=\"typography-blockquote\"\n className={cn(\n typographyToneVariants({ tone }),\n \"border-l-4 py-1 pl-4 italic\",\n className,\n )}\n {...rest}\n >\n <div className=\"space-y-2 leading-relaxed\">{children}</div>\n {attribution ? (\n <footer className=\"mt-3 text-sm not-italic\">\n <cite>{attribution}</cite>\n </footer>\n ) : null}\n </blockquote>\n );\n};\n\nBlockquoteBase.displayName = \"Blockquote\";\n","import { BlockquoteBase } from \"./blockquote-base\";\nimport type { BlockquoteProps } from \"./types\";\n\nexport const Blockquote = (props: BlockquoteProps) => {\n return <BlockquoteBase {...props} />;\n};\n\nBlockquote.displayName = \"Blockquote\";\n","import { forwardRef } from \"react\";\n\nimport { cn } from \"../../lib/utils\";\n\nimport type { InlineCodeProps } from \"./types\";\nimport { typographyToneVariants } from \"./variants\";\n\nexport const InlineCodeBase = (props: InlineCodeProps) => {\n const { tone, className, children, ref, ...rest } = props;\n\n return (\n <code\n ref={ref}\n data-slot=\"typography-inline-code\"\n className={cn(\n typographyToneVariants({ tone }),\n \"rounded-md border border-white/10 bg-white/6 px-1.5 py-0.5 font-mono text-[0.925em] font-normal\",\n className,\n )}\n {...rest}\n >\n {children}\n </code>\n );\n};\n\nInlineCodeBase.displayName = \"InlineCode\";\n","import { InlineCodeBase } from \"./inline-code-base\";\nimport type { InlineCodeProps } from \"./types\";\n\nexport const InlineCode = (props: InlineCodeProps) => {\n return <InlineCodeBase {...props} />;\n};\n\nInlineCode.displayName = \"InlineCode\";\n","import { forwardRef } from \"react\";\n\nimport { cn } from \"../../lib/utils\";\n\nimport type { CodeBlockProps } from \"./types\";\nimport { typographyToneVariants } from \"./variants\";\n\nexport const CodeBlockBase = (props: CodeBlockProps) => {\n const {\n tone,\n language,\n className,\n children,\n ref,\n ...rest\n } = props;\n\n const ariaLabel = language ? `Code sample (${language})` : \"Code sample\";\n\n return (\n <pre\n ref={ref}\n data-slot=\"typography-code-block\"\n aria-label={ariaLabel}\n className={cn(\n typographyToneVariants({ tone }),\n \"overflow-x-auto rounded-xl border border-white/10 bg-slate-950/80 p-4 text-sm leading-relaxed shadow-inner shadow-slate-950/40\",\n className,\n )}\n {...rest}\n >\n <code className=\"font-mono text-[0.95em]\">{children}</code>\n </pre>\n );\n};\n\nCodeBlockBase.displayName = \"CodeBlock\";\n","import { CodeBlockBase } from \"./code-block-base\";\nimport type { CodeBlockProps } from \"./types\";\n\nexport const CodeBlock = (props: CodeBlockProps) => {\n return <CodeBlockBase {...props} />;\n};\n\nCodeBlock.displayName = \"CodeBlock\";\n"]}
|
package/dist/ui/typography.mjs
DELETED
|
@@ -1,321 +0,0 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
import { cn } from '../chunk-DFEZH7TC.mjs';
|
|
3
|
-
import { cva } from 'class-variance-authority';
|
|
4
|
-
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
5
|
-
|
|
6
|
-
var typographyToneVariants = cva("", {
|
|
7
|
-
variants: {
|
|
8
|
-
tone: {
|
|
9
|
-
default: "text-slate-50 border-white/15",
|
|
10
|
-
muted: "text-slate-400 border-white/15",
|
|
11
|
-
primary: "text-cyan-300 border-cyan-300/40",
|
|
12
|
-
secondary: "text-slate-300 border-white/15",
|
|
13
|
-
accent: "text-violet-300 border-violet-300/40",
|
|
14
|
-
destructive: "text-rose-400 border-rose-300/40",
|
|
15
|
-
info: "text-sky-300 border-sky-300/40",
|
|
16
|
-
success: "text-emerald-300 border-emerald-300/40",
|
|
17
|
-
warning: "text-amber-300 border-amber-300/40",
|
|
18
|
-
error: "text-red-300 border-red-300/40",
|
|
19
|
-
"gradient-pink-violet": "bg-linear-to-r from-pink-400 to-violet-400 bg-clip-text text-transparent w-fit",
|
|
20
|
-
"gradient-cyan-violet": "bg-linear-to-r from-cyan-400 to-violet-400 bg-clip-text text-transparent w-fit",
|
|
21
|
-
"gradient-cyan-blue": "bg-linear-to-r from-cyan-400 to-blue-400 bg-clip-text text-transparent w-fit",
|
|
22
|
-
"gradient-cyan-green": "bg-linear-to-r from-cyan-400 to-green-400 bg-clip-text text-transparent w-fit",
|
|
23
|
-
"gradient-cyan-orange": "bg-linear-to-r from-cyan-400 to-orange-400 bg-clip-text text-transparent w-fit",
|
|
24
|
-
"gradient-cyan-red": "bg-linear-to-r from-cyan-400 to-red-400 bg-clip-text text-transparent w-fit",
|
|
25
|
-
"gradient-cyan-purple": "bg-linear-to-r from-cyan-400 to-purple-400 bg-clip-text text-transparent w-fit",
|
|
26
|
-
"gradient-cyan-pink": "bg-linear-to-r from-cyan-400 to-pink-400 bg-clip-text text-transparent w-fit"
|
|
27
|
-
}
|
|
28
|
-
},
|
|
29
|
-
defaultVariants: {
|
|
30
|
-
tone: "default"
|
|
31
|
-
}
|
|
32
|
-
});
|
|
33
|
-
var headingLevelVariants = cva("scroll-m-20", {
|
|
34
|
-
variants: {
|
|
35
|
-
level: {
|
|
36
|
-
1: "text-4xl font-bold tracking-tight md:text-5xl",
|
|
37
|
-
2: "text-3xl font-semibold tracking-tight",
|
|
38
|
-
3: "text-2xl font-semibold tracking-tight",
|
|
39
|
-
4: "text-xl font-semibold tracking-tight",
|
|
40
|
-
5: "text-lg font-medium",
|
|
41
|
-
6: "text-base font-medium"
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
});
|
|
45
|
-
var textSizeVariants = cva("", {
|
|
46
|
-
variants: {
|
|
47
|
-
size: {
|
|
48
|
-
sm: "text-sm leading-relaxed",
|
|
49
|
-
base: "text-base leading-relaxed",
|
|
50
|
-
lg: "text-lg leading-relaxed"
|
|
51
|
-
}
|
|
52
|
-
},
|
|
53
|
-
defaultVariants: {
|
|
54
|
-
size: "base"
|
|
55
|
-
}
|
|
56
|
-
});
|
|
57
|
-
var unorderedListMarkerVariants = cva("space-y-2 pl-5", {
|
|
58
|
-
variants: {
|
|
59
|
-
marker: {
|
|
60
|
-
disc: "list-disc",
|
|
61
|
-
circle: "[list-style-type:circle]",
|
|
62
|
-
none: "list-none pl-0"
|
|
63
|
-
}
|
|
64
|
-
},
|
|
65
|
-
defaultVariants: {
|
|
66
|
-
marker: "disc"
|
|
67
|
-
}
|
|
68
|
-
});
|
|
69
|
-
var orderedListVariants = cva("list-decimal space-y-2 pl-5");
|
|
70
|
-
var HEADING_TAGS = {
|
|
71
|
-
1: "h1",
|
|
72
|
-
2: "h2",
|
|
73
|
-
3: "h3",
|
|
74
|
-
4: "h4",
|
|
75
|
-
5: "h5",
|
|
76
|
-
6: "h6"
|
|
77
|
-
};
|
|
78
|
-
var HeadingBase = (props) => {
|
|
79
|
-
const {
|
|
80
|
-
level,
|
|
81
|
-
displayLevel,
|
|
82
|
-
tone,
|
|
83
|
-
bold,
|
|
84
|
-
italic,
|
|
85
|
-
underline,
|
|
86
|
-
strikethrough,
|
|
87
|
-
ref,
|
|
88
|
-
className,
|
|
89
|
-
children,
|
|
90
|
-
...rest
|
|
91
|
-
} = props;
|
|
92
|
-
const Tag = HEADING_TAGS[level];
|
|
93
|
-
const scale = displayLevel ?? level;
|
|
94
|
-
return /* @__PURE__ */ jsx(
|
|
95
|
-
Tag,
|
|
96
|
-
{
|
|
97
|
-
ref,
|
|
98
|
-
"data-slot": "typography-heading",
|
|
99
|
-
"data-level": level,
|
|
100
|
-
className: cn(
|
|
101
|
-
typographyToneVariants({ tone }),
|
|
102
|
-
headingLevelVariants({ level: scale }),
|
|
103
|
-
bold && "font-bold",
|
|
104
|
-
italic && "italic",
|
|
105
|
-
underline && "underline underline-offset-4",
|
|
106
|
-
strikethrough && "line-through",
|
|
107
|
-
className
|
|
108
|
-
),
|
|
109
|
-
...rest,
|
|
110
|
-
children
|
|
111
|
-
}
|
|
112
|
-
);
|
|
113
|
-
};
|
|
114
|
-
HeadingBase.displayName = "Heading";
|
|
115
|
-
var Heading = (props) => {
|
|
116
|
-
return /* @__PURE__ */ jsx(HeadingBase, { ...props });
|
|
117
|
-
};
|
|
118
|
-
Heading.displayName = "Heading";
|
|
119
|
-
var TextBase = (props) => {
|
|
120
|
-
const {
|
|
121
|
-
as = "p",
|
|
122
|
-
size = "base",
|
|
123
|
-
tone,
|
|
124
|
-
bold,
|
|
125
|
-
italic,
|
|
126
|
-
underline,
|
|
127
|
-
strikethrough,
|
|
128
|
-
highlight,
|
|
129
|
-
className,
|
|
130
|
-
children,
|
|
131
|
-
...rest
|
|
132
|
-
} = props;
|
|
133
|
-
const Component = as;
|
|
134
|
-
return /* @__PURE__ */ jsx(
|
|
135
|
-
Component,
|
|
136
|
-
{
|
|
137
|
-
"data-slot": "typography-text",
|
|
138
|
-
className: cn(
|
|
139
|
-
typographyToneVariants({ tone }),
|
|
140
|
-
textSizeVariants({ size }),
|
|
141
|
-
bold && "font-semibold",
|
|
142
|
-
italic && "italic",
|
|
143
|
-
underline && "underline underline-offset-2",
|
|
144
|
-
strikethrough && "line-through",
|
|
145
|
-
highlight && "rounded bg-amber-400/15 px-0.5",
|
|
146
|
-
className
|
|
147
|
-
),
|
|
148
|
-
...rest,
|
|
149
|
-
children
|
|
150
|
-
}
|
|
151
|
-
);
|
|
152
|
-
};
|
|
153
|
-
TextBase.displayName = "Text";
|
|
154
|
-
var Text = (props) => {
|
|
155
|
-
return /* @__PURE__ */ jsx(TextBase, { ...props });
|
|
156
|
-
};
|
|
157
|
-
Text.displayName = "Text";
|
|
158
|
-
function ListBase(props) {
|
|
159
|
-
if ("ordered" in props && props.ordered === true) {
|
|
160
|
-
const {
|
|
161
|
-
tone: tone2,
|
|
162
|
-
className: className2,
|
|
163
|
-
children: children2,
|
|
164
|
-
ref: ref2,
|
|
165
|
-
ordered: ordered2,
|
|
166
|
-
marker: marker2,
|
|
167
|
-
...rest2
|
|
168
|
-
} = props;
|
|
169
|
-
return /* @__PURE__ */ jsx(
|
|
170
|
-
"ol",
|
|
171
|
-
{
|
|
172
|
-
ref: ref2,
|
|
173
|
-
"data-slot": "typography-list",
|
|
174
|
-
"data-list-type": "ordered",
|
|
175
|
-
className: cn(
|
|
176
|
-
typographyToneVariants({ tone: tone2 }),
|
|
177
|
-
orderedListVariants(),
|
|
178
|
-
className2
|
|
179
|
-
),
|
|
180
|
-
...rest2,
|
|
181
|
-
children: children2
|
|
182
|
-
}
|
|
183
|
-
);
|
|
184
|
-
}
|
|
185
|
-
const {
|
|
186
|
-
marker = "disc",
|
|
187
|
-
tone,
|
|
188
|
-
className,
|
|
189
|
-
children,
|
|
190
|
-
ref,
|
|
191
|
-
ordered,
|
|
192
|
-
...rest
|
|
193
|
-
} = props;
|
|
194
|
-
return /* @__PURE__ */ jsx(
|
|
195
|
-
"ul",
|
|
196
|
-
{
|
|
197
|
-
ref,
|
|
198
|
-
"data-slot": "typography-list",
|
|
199
|
-
"data-list-type": "unordered",
|
|
200
|
-
className: cn(
|
|
201
|
-
typographyToneVariants({ tone }),
|
|
202
|
-
unorderedListMarkerVariants({ marker }),
|
|
203
|
-
className
|
|
204
|
-
),
|
|
205
|
-
...rest,
|
|
206
|
-
children
|
|
207
|
-
}
|
|
208
|
-
);
|
|
209
|
-
}
|
|
210
|
-
ListBase.displayName = "List";
|
|
211
|
-
function ListItemBase(props) {
|
|
212
|
-
const { className, children, ref, ...rest } = props;
|
|
213
|
-
return /* @__PURE__ */ jsx(
|
|
214
|
-
"li",
|
|
215
|
-
{
|
|
216
|
-
ref,
|
|
217
|
-
"data-slot": "typography-list-item",
|
|
218
|
-
className: cn("leading-relaxed", className),
|
|
219
|
-
...rest,
|
|
220
|
-
children
|
|
221
|
-
}
|
|
222
|
-
);
|
|
223
|
-
}
|
|
224
|
-
ListItemBase.displayName = "ListItem";
|
|
225
|
-
var ListItem = ListItemBase;
|
|
226
|
-
function ListRoot(props) {
|
|
227
|
-
return /* @__PURE__ */ jsx(ListBase, { ...props });
|
|
228
|
-
}
|
|
229
|
-
var List = Object.assign(ListRoot, {
|
|
230
|
-
Item: ListItem
|
|
231
|
-
});
|
|
232
|
-
ListRoot.displayName = "List";
|
|
233
|
-
var BlockquoteBase = (props) => {
|
|
234
|
-
const {
|
|
235
|
-
tone,
|
|
236
|
-
attribution,
|
|
237
|
-
className,
|
|
238
|
-
children,
|
|
239
|
-
ref,
|
|
240
|
-
...rest
|
|
241
|
-
} = props;
|
|
242
|
-
return /* @__PURE__ */ jsxs(
|
|
243
|
-
"blockquote",
|
|
244
|
-
{
|
|
245
|
-
ref,
|
|
246
|
-
"data-slot": "typography-blockquote",
|
|
247
|
-
className: cn(
|
|
248
|
-
typographyToneVariants({ tone }),
|
|
249
|
-
"border-l-4 py-1 pl-4 italic",
|
|
250
|
-
className
|
|
251
|
-
),
|
|
252
|
-
...rest,
|
|
253
|
-
children: [
|
|
254
|
-
/* @__PURE__ */ jsx("div", { className: "space-y-2 leading-relaxed", children }),
|
|
255
|
-
attribution ? /* @__PURE__ */ jsx("footer", { className: "mt-3 text-sm not-italic", children: /* @__PURE__ */ jsx("cite", { children: attribution }) }) : null
|
|
256
|
-
]
|
|
257
|
-
}
|
|
258
|
-
);
|
|
259
|
-
};
|
|
260
|
-
BlockquoteBase.displayName = "Blockquote";
|
|
261
|
-
var Blockquote = (props) => {
|
|
262
|
-
return /* @__PURE__ */ jsx(BlockquoteBase, { ...props });
|
|
263
|
-
};
|
|
264
|
-
Blockquote.displayName = "Blockquote";
|
|
265
|
-
var InlineCodeBase = (props) => {
|
|
266
|
-
const { tone, className, children, ref, ...rest } = props;
|
|
267
|
-
return /* @__PURE__ */ jsx(
|
|
268
|
-
"code",
|
|
269
|
-
{
|
|
270
|
-
ref,
|
|
271
|
-
"data-slot": "typography-inline-code",
|
|
272
|
-
className: cn(
|
|
273
|
-
typographyToneVariants({ tone }),
|
|
274
|
-
"rounded-md border border-white/10 bg-white/6 px-1.5 py-0.5 font-mono text-[0.925em] font-normal",
|
|
275
|
-
className
|
|
276
|
-
),
|
|
277
|
-
...rest,
|
|
278
|
-
children
|
|
279
|
-
}
|
|
280
|
-
);
|
|
281
|
-
};
|
|
282
|
-
InlineCodeBase.displayName = "InlineCode";
|
|
283
|
-
var InlineCode = (props) => {
|
|
284
|
-
return /* @__PURE__ */ jsx(InlineCodeBase, { ...props });
|
|
285
|
-
};
|
|
286
|
-
InlineCode.displayName = "InlineCode";
|
|
287
|
-
var CodeBlockBase = (props) => {
|
|
288
|
-
const {
|
|
289
|
-
tone,
|
|
290
|
-
language,
|
|
291
|
-
className,
|
|
292
|
-
children,
|
|
293
|
-
ref,
|
|
294
|
-
...rest
|
|
295
|
-
} = props;
|
|
296
|
-
const ariaLabel = language ? `Code sample (${language})` : "Code sample";
|
|
297
|
-
return /* @__PURE__ */ jsx(
|
|
298
|
-
"pre",
|
|
299
|
-
{
|
|
300
|
-
ref,
|
|
301
|
-
"data-slot": "typography-code-block",
|
|
302
|
-
"aria-label": ariaLabel,
|
|
303
|
-
className: cn(
|
|
304
|
-
typographyToneVariants({ tone }),
|
|
305
|
-
"overflow-x-auto rounded-xl border border-white/10 bg-slate-950/80 p-4 text-sm leading-relaxed shadow-inner shadow-slate-950/40",
|
|
306
|
-
className
|
|
307
|
-
),
|
|
308
|
-
...rest,
|
|
309
|
-
children: /* @__PURE__ */ jsx("code", { className: "font-mono text-[0.95em]", children })
|
|
310
|
-
}
|
|
311
|
-
);
|
|
312
|
-
};
|
|
313
|
-
CodeBlockBase.displayName = "CodeBlock";
|
|
314
|
-
var CodeBlock = (props) => {
|
|
315
|
-
return /* @__PURE__ */ jsx(CodeBlockBase, { ...props });
|
|
316
|
-
};
|
|
317
|
-
CodeBlock.displayName = "CodeBlock";
|
|
318
|
-
|
|
319
|
-
export { Blockquote, CodeBlock, Heading, InlineCode, List, ListItem, Text, headingLevelVariants, orderedListVariants, textSizeVariants, typographyToneVariants, unorderedListMarkerVariants };
|
|
320
|
-
//# sourceMappingURL=typography.mjs.map
|
|
321
|
-
//# sourceMappingURL=typography.mjs.map
|