@bestow-ui/react 0.1.0 → 0.2.1
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/dist/index.cjs +309 -18
- package/dist/index.cjs.map +1 -1
- package/dist/index.css +555 -150
- package/dist/index.css.map +1 -1
- package/dist/index.d.cts +145 -2
- package/dist/index.d.ts +145 -2
- package/dist/index.js +292 -18
- package/dist/index.js.map +1 -1
- package/package.json +8 -3
package/dist/index.cjs
CHANGED
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
"use strict";
|
|
3
|
+
var __create = Object.create;
|
|
3
4
|
var __defProp = Object.defineProperty;
|
|
4
5
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
6
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
7
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
6
8
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
9
|
var __export = (target, all) => {
|
|
8
10
|
for (var name in all)
|
|
@@ -16,6 +18,14 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
16
18
|
}
|
|
17
19
|
return to;
|
|
18
20
|
};
|
|
21
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
22
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
23
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
24
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
25
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
26
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
27
|
+
mod
|
|
28
|
+
));
|
|
19
29
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
20
30
|
|
|
21
31
|
// src/index.ts
|
|
@@ -24,19 +34,26 @@ __export(index_exports, {
|
|
|
24
34
|
Button: () => Button,
|
|
25
35
|
Checkbox: () => Checkbox,
|
|
26
36
|
Input: () => Input,
|
|
37
|
+
Modal: () => Modal,
|
|
38
|
+
ModalClose: () => ModalClose,
|
|
39
|
+
Select: () => Select,
|
|
27
40
|
Stack: () => Stack,
|
|
28
41
|
TextField: () => TextField,
|
|
29
42
|
ThemeProvider: () => ThemeProvider,
|
|
43
|
+
ToastProvider: () => ToastProvider,
|
|
44
|
+
Tooltip: () => Tooltip,
|
|
30
45
|
Typography: () => Typography,
|
|
31
46
|
themeClass: () => themeClass,
|
|
47
|
+
usePortalClassName: () => usePortalClassName,
|
|
32
48
|
useTheme: () => useTheme,
|
|
49
|
+
useToast: () => useToast,
|
|
33
50
|
vars: () => vars
|
|
34
51
|
});
|
|
35
52
|
module.exports = __toCommonJS(index_exports);
|
|
36
53
|
|
|
37
54
|
// src/theme/contract.css.ts
|
|
38
|
-
var themeClass = { light: "
|
|
39
|
-
var vars = { space: { "0": "var(--tkagtb0)", "1": "var(--tkagtb1)", "2": "var(--tkagtb2)", "3": "var(--tkagtb3)", "4": "var(--tkagtb4)", "5": "var(--tkagtb5)", "6": "var(--tkagtb6)", "8": "var(--tkagtb7)", "10": "var(--tkagtb8)", "12": "var(--tkagtb9)", "16": "var(--tkagtba)" }, radius: { none: "var(--tkagtbb)", sm: "var(--tkagtbc)", md: "var(--tkagtbd)", lg: "var(--tkagtbe)", xl: "var(--tkagtbf)", full: "var(--tkagtbg)" }, font: { family: { sans: "var(--tkagtbh)", mono: "var(--tkagtbi)" }, size: { xs: "var(--tkagtbj)", sm: "var(--tkagtbk)", md: "var(--tkagtbl)", lg: "var(--tkagtbm)", xl: "var(--tkagtbn)", "2xl": "var(--tkagtbo)", "3xl": "var(--tkagtbp)", "4xl": "var(--tkagtbq)" }, weight: { regular: "var(--tkagtbr)", medium: "var(--tkagtbs)", semibold: "var(--tkagtbt)", bold: "var(--tkagtbu)" }, lineHeight: { tight: "var(--tkagtbv)", normal: "var(--tkagtbw)", relaxed: "var(--tkagtbx)" } }, shadow: { sm: "var(--tkagtby)", md: "var(--tkagtbz)", lg: "var(--tkagtb10)" }, duration: { fast: "var(--tkagtb11)", normal: "var(--tkagtb12)", slow: "var(--tkagtb13)" }, color: { bg: { "default": "var(--
|
|
55
|
+
var themeClass = { light: "tkagtb29", dark: "tkagtb2a" };
|
|
56
|
+
var vars = { space: { "0": "var(--tkagtb0)", "1": "var(--tkagtb1)", "2": "var(--tkagtb2)", "3": "var(--tkagtb3)", "4": "var(--tkagtb4)", "5": "var(--tkagtb5)", "6": "var(--tkagtb6)", "8": "var(--tkagtb7)", "10": "var(--tkagtb8)", "12": "var(--tkagtb9)", "16": "var(--tkagtba)" }, radius: { none: "var(--tkagtbb)", sm: "var(--tkagtbc)", md: "var(--tkagtbd)", lg: "var(--tkagtbe)", xl: "var(--tkagtbf)", full: "var(--tkagtbg)" }, font: { family: { sans: "var(--tkagtbh)", mono: "var(--tkagtbi)" }, size: { xs: "var(--tkagtbj)", sm: "var(--tkagtbk)", md: "var(--tkagtbl)", lg: "var(--tkagtbm)", xl: "var(--tkagtbn)", "2xl": "var(--tkagtbo)", "3xl": "var(--tkagtbp)", "4xl": "var(--tkagtbq)" }, weight: { regular: "var(--tkagtbr)", medium: "var(--tkagtbs)", semibold: "var(--tkagtbt)", bold: "var(--tkagtbu)" }, lineHeight: { tight: "var(--tkagtbv)", normal: "var(--tkagtbw)", relaxed: "var(--tkagtbx)" } }, shadow: { sm: "var(--tkagtby)", md: "var(--tkagtbz)", lg: "var(--tkagtb10)" }, duration: { fast: "var(--tkagtb11)", normal: "var(--tkagtb12)", slow: "var(--tkagtb13)" }, zIndex: { dropdown: "var(--tkagtb14)", overlay: "var(--tkagtb15)", modal: "var(--tkagtb16)", toast: "var(--tkagtb17)", tooltip: "var(--tkagtb18)" }, color: { bg: { "default": "var(--tkagtb19)", subtle: "var(--tkagtb1a)", muted: "var(--tkagtb1b)", inverse: "var(--tkagtb1c)", overlay: "var(--tkagtb1d)" }, fg: { "default": "var(--tkagtb1e)", muted: "var(--tkagtb1f)", subtle: "var(--tkagtb1g)", inverse: "var(--tkagtb1h)" }, border: { "default": "var(--tkagtb1i)", strong: "var(--tkagtb1j)", focus: "var(--tkagtb1k)" }, primary: { solid: "var(--tkagtb1l)", solidHover: "var(--tkagtb1m)", contrast: "var(--tkagtb1n)", subtle: "var(--tkagtb1o)", subtleHover: "var(--tkagtb1p)", text: "var(--tkagtb1q)" }, neutral: { solid: "var(--tkagtb1r)", solidHover: "var(--tkagtb1s)", contrast: "var(--tkagtb1t)", subtle: "var(--tkagtb1u)", subtleHover: "var(--tkagtb1v)", text: "var(--tkagtb1w)" }, danger: { solid: "var(--tkagtb1x)", solidHover: "var(--tkagtb1y)", contrast: "var(--tkagtb1z)", subtle: "var(--tkagtb20)", subtleHover: "var(--tkagtb21)", text: "var(--tkagtb22)" }, success: { solid: "var(--tkagtb23)", solidHover: "var(--tkagtb24)", contrast: "var(--tkagtb25)", subtle: "var(--tkagtb26)", subtleHover: "var(--tkagtb27)", text: "var(--tkagtb28)" } } };
|
|
40
57
|
|
|
41
58
|
// src/theme/ThemeProvider.tsx
|
|
42
59
|
var import_react = require("react");
|
|
@@ -47,7 +64,8 @@ function cx(...classNames) {
|
|
|
47
64
|
}
|
|
48
65
|
|
|
49
66
|
// src/theme/ThemeProvider.css.ts
|
|
50
|
-
var
|
|
67
|
+
var portal = "sfyhlv0";
|
|
68
|
+
var root = "sfyhlv1 sfyhlv0";
|
|
51
69
|
|
|
52
70
|
// src/theme/ThemeProvider.tsx
|
|
53
71
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
@@ -58,6 +76,9 @@ var ThemeProvider = (0, import_react.forwardRef)(function ThemeProvider2({ theme
|
|
|
58
76
|
function useTheme() {
|
|
59
77
|
return (0, import_react.useContext)(ThemeContext);
|
|
60
78
|
}
|
|
79
|
+
function usePortalClassName() {
|
|
80
|
+
return cx(themeClass[useTheme()], portal);
|
|
81
|
+
}
|
|
61
82
|
|
|
62
83
|
// src/components/Button/Button.tsx
|
|
63
84
|
var import_react2 = require("react");
|
|
@@ -91,10 +112,10 @@ var import_react3 = require("react");
|
|
|
91
112
|
|
|
92
113
|
// src/utils/mergeRefs.ts
|
|
93
114
|
function mergeRefs(...refs) {
|
|
94
|
-
return (
|
|
115
|
+
return (value2) => {
|
|
95
116
|
for (const ref of refs) {
|
|
96
|
-
if (typeof ref === "function") ref(
|
|
97
|
-
else if (ref) ref.current =
|
|
117
|
+
if (typeof ref === "function") ref(value2);
|
|
118
|
+
else if (ref) ref.current = value2;
|
|
98
119
|
}
|
|
99
120
|
};
|
|
100
121
|
}
|
|
@@ -203,17 +224,176 @@ var TextField = (0, import_react5.forwardRef)(function TextField2({ label: label
|
|
|
203
224
|
] });
|
|
204
225
|
});
|
|
205
226
|
|
|
206
|
-
// src/components/
|
|
227
|
+
// src/components/Modal/Modal.tsx
|
|
228
|
+
var Dialog = __toESM(require("@radix-ui/react-dialog"), 1);
|
|
229
|
+
var import_icons = require("@bestow-ui/icons");
|
|
230
|
+
|
|
231
|
+
// src/components/Modal/Modal.css.ts
|
|
232
|
+
var import_createRuntimeFn4 = require("@vanilla-extract/recipes/createRuntimeFn");
|
|
233
|
+
var body = "_1pdsmv0a";
|
|
234
|
+
var closeButton = "_1pdsmv09";
|
|
235
|
+
var content = (0, import_createRuntimeFn4.createRuntimeFn)({ defaultClassName: "_1pdsmv01", variantClassNames: { size: { sm: "_1pdsmv02", md: "_1pdsmv03", lg: "_1pdsmv04" } }, defaultVariants: { size: "md" }, compoundVariants: [] });
|
|
236
|
+
var description = "_1pdsmv08";
|
|
237
|
+
var footer = "_1pdsmv0b";
|
|
238
|
+
var header = "_1pdsmv05";
|
|
239
|
+
var headings = "_1pdsmv06";
|
|
240
|
+
var overlay = "_1pdsmv00";
|
|
241
|
+
var title = "_1pdsmv07";
|
|
242
|
+
|
|
243
|
+
// src/components/Modal/Modal.tsx
|
|
244
|
+
var import_jsx_runtime6 = require("react/jsx-runtime");
|
|
245
|
+
function Modal({
|
|
246
|
+
open,
|
|
247
|
+
defaultOpen,
|
|
248
|
+
onOpenChange,
|
|
249
|
+
trigger: trigger2,
|
|
250
|
+
title: title3,
|
|
251
|
+
description: description3,
|
|
252
|
+
children,
|
|
253
|
+
footer: footer2,
|
|
254
|
+
size,
|
|
255
|
+
hideCloseButton = false,
|
|
256
|
+
closeOnOverlayClick = true,
|
|
257
|
+
className
|
|
258
|
+
}) {
|
|
259
|
+
const portalClassName = usePortalClassName();
|
|
260
|
+
return /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(Dialog.Root, { open, defaultOpen, onOpenChange, children: [
|
|
261
|
+
trigger2 && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(Dialog.Trigger, { asChild: true, children: trigger2 }),
|
|
262
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(Dialog.Portal, { children: [
|
|
263
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)(Dialog.Overlay, { className: cx(portalClassName, overlay) }),
|
|
264
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(
|
|
265
|
+
Dialog.Content,
|
|
266
|
+
{
|
|
267
|
+
className: cx(portalClassName, content({ size }), className),
|
|
268
|
+
onPointerDownOutside: closeOnOverlayClick ? void 0 : (event) => event.preventDefault(),
|
|
269
|
+
...description3 ? {} : { "aria-describedby": void 0 },
|
|
270
|
+
children: [
|
|
271
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: header, children: [
|
|
272
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: headings, children: [
|
|
273
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)(Dialog.Title, { className: title, children: title3 }),
|
|
274
|
+
description3 && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(Dialog.Description, { className: description, children: description3 })
|
|
275
|
+
] }),
|
|
276
|
+
!hideCloseButton && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(Dialog.Close, { className: closeButton, "aria-label": "\uB2EB\uAE30", children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_icons.XIcon, { size: 16 }) })
|
|
277
|
+
] }),
|
|
278
|
+
children && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("div", { className: body, children }),
|
|
279
|
+
footer2 && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("div", { className: footer, children: footer2 })
|
|
280
|
+
]
|
|
281
|
+
}
|
|
282
|
+
)
|
|
283
|
+
] })
|
|
284
|
+
] });
|
|
285
|
+
}
|
|
286
|
+
var ModalClose = Dialog.Close;
|
|
287
|
+
|
|
288
|
+
// src/components/Select/Select.tsx
|
|
289
|
+
var RadixSelect = __toESM(require("@radix-ui/react-select"), 1);
|
|
207
290
|
var import_react6 = require("react");
|
|
291
|
+
var import_icons2 = require("@bestow-ui/icons");
|
|
292
|
+
|
|
293
|
+
// src/components/Select/Select.css.ts
|
|
294
|
+
var content2 = "_1kx81e83";
|
|
295
|
+
var icon2 = "_1kx81e82";
|
|
296
|
+
var item = "_1kx81e85";
|
|
297
|
+
var itemIndicator = "_1kx81e86";
|
|
298
|
+
var trigger = "_1kx81e80";
|
|
299
|
+
var value = "_1kx81e81";
|
|
300
|
+
var viewport = "_1kx81e84";
|
|
301
|
+
|
|
302
|
+
// src/components/Select/Select.tsx
|
|
303
|
+
var import_jsx_runtime7 = require("react/jsx-runtime");
|
|
304
|
+
var Select = (0, import_react6.forwardRef)(function Select2({
|
|
305
|
+
options,
|
|
306
|
+
value: value2,
|
|
307
|
+
defaultValue,
|
|
308
|
+
onValueChange,
|
|
309
|
+
placeholder,
|
|
310
|
+
label: label2,
|
|
311
|
+
helperText: helperText2,
|
|
312
|
+
error,
|
|
313
|
+
size,
|
|
314
|
+
fullWidth,
|
|
315
|
+
disabled,
|
|
316
|
+
required,
|
|
317
|
+
name,
|
|
318
|
+
id,
|
|
319
|
+
"aria-label": ariaLabel,
|
|
320
|
+
className
|
|
321
|
+
}, ref) {
|
|
322
|
+
const generatedId = (0, import_react6.useId)();
|
|
323
|
+
const triggerId = id ?? generatedId;
|
|
324
|
+
const helperId = helperText2 ? `${triggerId}-helper` : void 0;
|
|
325
|
+
const portalClassName = usePortalClassName();
|
|
326
|
+
return /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)("div", { className: cx(field, fullWidth && fieldFullWidth), children: [
|
|
327
|
+
label2 && /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)("label", { htmlFor: triggerId, className: label, children: [
|
|
328
|
+
label2,
|
|
329
|
+
required && /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("span", { className: requiredMark, "aria-hidden": true, children: "*" })
|
|
330
|
+
] }),
|
|
331
|
+
/* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(
|
|
332
|
+
RadixSelect.Root,
|
|
333
|
+
{
|
|
334
|
+
value: value2,
|
|
335
|
+
defaultValue,
|
|
336
|
+
onValueChange,
|
|
337
|
+
disabled,
|
|
338
|
+
required,
|
|
339
|
+
name,
|
|
340
|
+
children: [
|
|
341
|
+
/* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(
|
|
342
|
+
RadixSelect.Trigger,
|
|
343
|
+
{
|
|
344
|
+
ref,
|
|
345
|
+
id: triggerId,
|
|
346
|
+
"aria-label": ariaLabel,
|
|
347
|
+
"aria-invalid": error || void 0,
|
|
348
|
+
"aria-describedby": helperId,
|
|
349
|
+
"data-invalid": error || void 0,
|
|
350
|
+
className: cx(root3({ size, fullWidth }), trigger, className),
|
|
351
|
+
children: [
|
|
352
|
+
/* @__PURE__ */ (0, import_jsx_runtime7.jsx)("span", { className: value, children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(RadixSelect.Value, { placeholder }) }),
|
|
353
|
+
/* @__PURE__ */ (0, import_jsx_runtime7.jsx)(RadixSelect.Icon, { className: icon2, children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(import_icons2.ChevronDownIcon, { size: 16 }) })
|
|
354
|
+
]
|
|
355
|
+
}
|
|
356
|
+
),
|
|
357
|
+
/* @__PURE__ */ (0, import_jsx_runtime7.jsx)(RadixSelect.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
|
|
358
|
+
RadixSelect.Content,
|
|
359
|
+
{
|
|
360
|
+
position: "popper",
|
|
361
|
+
sideOffset: 4,
|
|
362
|
+
collisionPadding: 8,
|
|
363
|
+
className: cx(portalClassName, content2),
|
|
364
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(RadixSelect.Viewport, { className: viewport, children: options.map((option) => /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(
|
|
365
|
+
RadixSelect.Item,
|
|
366
|
+
{
|
|
367
|
+
value: option.value,
|
|
368
|
+
disabled: option.disabled,
|
|
369
|
+
className: item,
|
|
370
|
+
children: [
|
|
371
|
+
/* @__PURE__ */ (0, import_jsx_runtime7.jsx)(RadixSelect.ItemText, { children: option.label }),
|
|
372
|
+
/* @__PURE__ */ (0, import_jsx_runtime7.jsx)(RadixSelect.ItemIndicator, { className: itemIndicator, children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(import_icons2.CheckIcon, { size: 16 }) })
|
|
373
|
+
]
|
|
374
|
+
},
|
|
375
|
+
option.value
|
|
376
|
+
)) })
|
|
377
|
+
}
|
|
378
|
+
) })
|
|
379
|
+
]
|
|
380
|
+
}
|
|
381
|
+
),
|
|
382
|
+
helperText2 && /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("p", { id: helperId, className: helperText({ error }), children: helperText2 })
|
|
383
|
+
] });
|
|
384
|
+
});
|
|
385
|
+
|
|
386
|
+
// src/components/Stack/Stack.tsx
|
|
387
|
+
var import_react7 = require("react");
|
|
208
388
|
|
|
209
389
|
// src/components/Stack/Stack.css.ts
|
|
210
|
-
var
|
|
211
|
-
var stack = (0,
|
|
390
|
+
var import_createRuntimeFn5 = require("@vanilla-extract/recipes/createRuntimeFn");
|
|
391
|
+
var stack = (0, import_createRuntimeFn5.createRuntimeFn)({ defaultClassName: "_1jz9hj90", variantClassNames: { direction: { row: "_1jz9hj91", column: "_1jz9hj92", "row-reverse": "_1jz9hj93", "column-reverse": "_1jz9hj94" }, gap: { "0": "_1jz9hj95", "1": "_1jz9hj96", "2": "_1jz9hj97", "3": "_1jz9hj98", "4": "_1jz9hj99", "5": "_1jz9hj9a", "6": "_1jz9hj9b", "8": "_1jz9hj9c", "10": "_1jz9hj9d", "12": "_1jz9hj9e", "16": "_1jz9hj9f" }, align: { start: "_1jz9hj9g", center: "_1jz9hj9h", end: "_1jz9hj9i", stretch: "_1jz9hj9j", baseline: "_1jz9hj9k" }, justify: { start: "_1jz9hj9l", center: "_1jz9hj9m", end: "_1jz9hj9n", between: "_1jz9hj9o", around: "_1jz9hj9p", evenly: "_1jz9hj9q" }, wrap: { true: "_1jz9hj9r" } }, defaultVariants: { direction: "column" }, compoundVariants: [] });
|
|
212
392
|
|
|
213
393
|
// src/components/Stack/Stack.tsx
|
|
214
|
-
var
|
|
215
|
-
var Stack = (0,
|
|
216
|
-
return /* @__PURE__ */ (0,
|
|
394
|
+
var import_jsx_runtime8 = require("react/jsx-runtime");
|
|
395
|
+
var Stack = (0, import_react7.forwardRef)(function Stack2({ as: Component = "div", direction, gap, align, justify, wrap, className, ...rest }, ref) {
|
|
396
|
+
return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
|
|
217
397
|
Component,
|
|
218
398
|
{
|
|
219
399
|
ref,
|
|
@@ -223,15 +403,119 @@ var Stack = (0, import_react6.forwardRef)(function Stack2({ as: Component = "div
|
|
|
223
403
|
);
|
|
224
404
|
});
|
|
225
405
|
|
|
406
|
+
// src/components/Toast/Toast.tsx
|
|
407
|
+
var RadixToast = __toESM(require("@radix-ui/react-toast"), 1);
|
|
408
|
+
var import_react8 = require("react");
|
|
409
|
+
var import_icons3 = require("@bestow-ui/icons");
|
|
410
|
+
|
|
411
|
+
// src/components/Toast/Toast.css.ts
|
|
412
|
+
var import_createRuntimeFn6 = require("@vanilla-extract/recipes/createRuntimeFn");
|
|
413
|
+
var action = "_1g11zvx7";
|
|
414
|
+
var close = "_1g11zvx8";
|
|
415
|
+
var description2 = "_1g11zvx6";
|
|
416
|
+
var title2 = "_1g11zvx5";
|
|
417
|
+
var toast = (0, import_createRuntimeFn6.createRuntimeFn)({ defaultClassName: "_1g11zvx1", variantClassNames: { variant: { "default": "_1g11zvx2", success: "_1g11zvx3", danger: "_1g11zvx4" } }, defaultVariants: { variant: "default" }, compoundVariants: [] });
|
|
418
|
+
var viewport2 = "_1g11zvx0";
|
|
419
|
+
|
|
420
|
+
// src/components/Toast/Toast.tsx
|
|
421
|
+
var import_jsx_runtime9 = require("react/jsx-runtime");
|
|
422
|
+
var REMOVE_DELAY = 500;
|
|
423
|
+
var ToastContext = (0, import_react8.createContext)(null);
|
|
424
|
+
function ToastProvider({ children, duration = 5e3, label: label2 = "\uC54C\uB9BC" }) {
|
|
425
|
+
const [toasts, setToasts] = (0, import_react8.useState)([]);
|
|
426
|
+
const nextId = (0, import_react8.useRef)(0);
|
|
427
|
+
const portalClassName = usePortalClassName();
|
|
428
|
+
const toast2 = (0, import_react8.useCallback)((options) => {
|
|
429
|
+
const id = nextId.current++;
|
|
430
|
+
setToasts((prev) => [...prev, { ...options, id, open: true }]);
|
|
431
|
+
return id;
|
|
432
|
+
}, []);
|
|
433
|
+
const dismiss = (0, import_react8.useCallback)((id) => {
|
|
434
|
+
const isTarget = (t) => id === void 0 || t.id === id;
|
|
435
|
+
setToasts((prev) => prev.map((t) => isTarget(t) ? { ...t, open: false } : t));
|
|
436
|
+
setTimeout(() => setToasts((prev) => prev.filter((t) => t.open || !isTarget(t))), REMOVE_DELAY);
|
|
437
|
+
}, []);
|
|
438
|
+
const value2 = (0, import_react8.useMemo)(() => ({ toast: toast2, dismiss }), [toast2, dismiss]);
|
|
439
|
+
return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(ToastContext.Provider, { value: value2, children: /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(RadixToast.Provider, { duration, label: label2, swipeDirection: "right", children: [
|
|
440
|
+
children,
|
|
441
|
+
toasts.map(({ id, open, title: title3, description: description3, variant, duration: itemDuration, action: action2 }) => /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(
|
|
442
|
+
RadixToast.Root,
|
|
443
|
+
{
|
|
444
|
+
open,
|
|
445
|
+
duration: itemDuration,
|
|
446
|
+
onOpenChange: (nextOpen) => {
|
|
447
|
+
if (!nextOpen) dismiss(id);
|
|
448
|
+
},
|
|
449
|
+
className: toast({ variant }),
|
|
450
|
+
children: [
|
|
451
|
+
/* @__PURE__ */ (0, import_jsx_runtime9.jsx)(RadixToast.Title, { className: title2, children: title3 }),
|
|
452
|
+
description3 && /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(RadixToast.Description, { className: description2, children: description3 }),
|
|
453
|
+
action2 && /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(RadixToast.Action, { asChild: true, altText: action2.altText ?? action2.label, className: action, children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(Button, { size: "sm", variant: "soft", color: "neutral", onClick: action2.onClick, children: action2.label }) }),
|
|
454
|
+
/* @__PURE__ */ (0, import_jsx_runtime9.jsx)(RadixToast.Close, { className: close, "aria-label": "\uB2EB\uAE30", children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(import_icons3.XIcon, { size: 16 }) })
|
|
455
|
+
]
|
|
456
|
+
},
|
|
457
|
+
id
|
|
458
|
+
)),
|
|
459
|
+
/* @__PURE__ */ (0, import_jsx_runtime9.jsx)(RadixToast.Viewport, { className: cx(portalClassName, viewport2) })
|
|
460
|
+
] }) });
|
|
461
|
+
}
|
|
462
|
+
function useToast() {
|
|
463
|
+
const context = (0, import_react8.useContext)(ToastContext);
|
|
464
|
+
if (!context) throw new Error("useToast \uB294 ToastProvider \uC548\uC5D0\uC11C \uC0AC\uC6A9\uD574\uC57C \uD569\uB2C8\uB2E4.");
|
|
465
|
+
return context;
|
|
466
|
+
}
|
|
467
|
+
|
|
468
|
+
// src/components/Tooltip/Tooltip.tsx
|
|
469
|
+
var RadixTooltip = __toESM(require("@radix-ui/react-tooltip"), 1);
|
|
470
|
+
|
|
471
|
+
// src/components/Tooltip/Tooltip.css.ts
|
|
472
|
+
var arrow = "z7rufs1";
|
|
473
|
+
var content3 = "z7rufs0";
|
|
474
|
+
|
|
475
|
+
// src/components/Tooltip/Tooltip.tsx
|
|
476
|
+
var import_jsx_runtime10 = require("react/jsx-runtime");
|
|
477
|
+
function Tooltip({
|
|
478
|
+
content: content4,
|
|
479
|
+
children,
|
|
480
|
+
side = "top",
|
|
481
|
+
align = "center",
|
|
482
|
+
delay = 300,
|
|
483
|
+
open,
|
|
484
|
+
defaultOpen,
|
|
485
|
+
onOpenChange,
|
|
486
|
+
disabled,
|
|
487
|
+
className
|
|
488
|
+
}) {
|
|
489
|
+
const portalClassName = usePortalClassName();
|
|
490
|
+
if (disabled || content4 == null || content4 === "") return children;
|
|
491
|
+
return /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(RadixTooltip.Provider, { delayDuration: delay, children: /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)(RadixTooltip.Root, { open, defaultOpen, onOpenChange, children: [
|
|
492
|
+
/* @__PURE__ */ (0, import_jsx_runtime10.jsx)(RadixTooltip.Trigger, { asChild: true, children }),
|
|
493
|
+
/* @__PURE__ */ (0, import_jsx_runtime10.jsx)(RadixTooltip.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)(
|
|
494
|
+
RadixTooltip.Content,
|
|
495
|
+
{
|
|
496
|
+
side,
|
|
497
|
+
align,
|
|
498
|
+
sideOffset: 6,
|
|
499
|
+
collisionPadding: 8,
|
|
500
|
+
className: cx(portalClassName, content3, className),
|
|
501
|
+
children: [
|
|
502
|
+
content4,
|
|
503
|
+
/* @__PURE__ */ (0, import_jsx_runtime10.jsx)(RadixTooltip.Arrow, { className: arrow, width: 10, height: 5 })
|
|
504
|
+
]
|
|
505
|
+
}
|
|
506
|
+
) })
|
|
507
|
+
] }) });
|
|
508
|
+
}
|
|
509
|
+
|
|
226
510
|
// src/components/Typography/Typography.tsx
|
|
227
|
-
var
|
|
511
|
+
var import_react9 = require("react");
|
|
228
512
|
|
|
229
513
|
// src/components/Typography/Typography.css.ts
|
|
230
|
-
var
|
|
231
|
-
var typography = (0,
|
|
514
|
+
var import_createRuntimeFn7 = require("@vanilla-extract/recipes/createRuntimeFn");
|
|
515
|
+
var typography = (0, import_createRuntimeFn7.createRuntimeFn)({ defaultClassName: "kiolio0", variantClassNames: { variant: { display: "kiolio1", h1: "kiolio2", h2: "kiolio3", h3: "kiolio4", h4: "kiolio5", "body-lg": "kiolio6", body: "kiolio7", "body-sm": "kiolio8", caption: "kiolio9" }, color: { "default": "kiolioa", muted: "kioliob", subtle: "kiolioc", primary: "kioliod", danger: "kiolioe", success: "kioliof", inherit: "kioliog" }, weight: { regular: "kiolioh", medium: "kiolioi", semibold: "kiolioj", bold: "kioliok" }, align: { start: "kioliol", center: "kioliom", end: "kiolion" }, truncate: { true: "kiolioo" } }, defaultVariants: { variant: "body", color: "default" }, compoundVariants: [] });
|
|
232
516
|
|
|
233
517
|
// src/components/Typography/Typography.tsx
|
|
234
|
-
var
|
|
518
|
+
var import_jsx_runtime11 = require("react/jsx-runtime");
|
|
235
519
|
var defaultElement = {
|
|
236
520
|
display: "h1",
|
|
237
521
|
h1: "h1",
|
|
@@ -243,9 +527,9 @@ var defaultElement = {
|
|
|
243
527
|
"body-sm": "p",
|
|
244
528
|
caption: "span"
|
|
245
529
|
};
|
|
246
|
-
var Typography = (0,
|
|
530
|
+
var Typography = (0, import_react9.forwardRef)(function Typography2({ variant = "body", as, color, weight, align, truncate, className, ...rest }, ref) {
|
|
247
531
|
const Component = as ?? defaultElement[variant];
|
|
248
|
-
return /* @__PURE__ */ (0,
|
|
532
|
+
return /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
249
533
|
Component,
|
|
250
534
|
{
|
|
251
535
|
ref,
|
|
@@ -259,12 +543,19 @@ var Typography = (0, import_react7.forwardRef)(function Typography2({ variant =
|
|
|
259
543
|
Button,
|
|
260
544
|
Checkbox,
|
|
261
545
|
Input,
|
|
546
|
+
Modal,
|
|
547
|
+
ModalClose,
|
|
548
|
+
Select,
|
|
262
549
|
Stack,
|
|
263
550
|
TextField,
|
|
264
551
|
ThemeProvider,
|
|
552
|
+
ToastProvider,
|
|
553
|
+
Tooltip,
|
|
265
554
|
Typography,
|
|
266
555
|
themeClass,
|
|
556
|
+
usePortalClassName,
|
|
267
557
|
useTheme,
|
|
558
|
+
useToast,
|
|
268
559
|
vars
|
|
269
560
|
});
|
|
270
561
|
//# sourceMappingURL=index.cjs.map
|