@nayhoo/ui 0.12.1 → 0.14.0
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/{button.css-CxDH431y.d.mts → button.css-BLr4KDtC.d.mts} +3 -0
- package/dist/{button.css-CxDH431y.d.ts → button.css-BLr4KDtC.d.ts} +3 -0
- package/dist/chunk-4A7WL3BM.mjs +12 -0
- package/dist/chunk-4A7WL3BM.mjs.map +1 -0
- package/dist/{chunk-HNOMBFLC.mjs → chunk-67WEB6LY.mjs} +8 -5
- package/dist/chunk-67WEB6LY.mjs.map +1 -0
- package/dist/{chunk-C53FYO65.mjs → chunk-FQX4V5DP.mjs} +8 -5
- package/dist/chunk-FQX4V5DP.mjs.map +1 -0
- package/dist/chunk-HGLO5LDS.mjs +1 -0
- package/dist/{chunk-OCXG5SMA.mjs → chunk-KYAQZHQ5.mjs} +8 -5
- package/dist/chunk-KYAQZHQ5.mjs.map +1 -0
- package/dist/{chunk-WPNBONR3.mjs → chunk-LSB5JVS2.mjs} +1 -1
- package/dist/chunk-LSB5JVS2.mjs.map +1 -0
- package/dist/{chunk-YJWLCDJE.mjs → chunk-M7HASIMW.mjs} +8 -5
- package/dist/chunk-M7HASIMW.mjs.map +1 -0
- package/dist/{chunk-OKNO3BFR.mjs → chunk-OZ2DHFQP.mjs} +12 -9
- package/dist/chunk-OZ2DHFQP.mjs.map +1 -0
- package/dist/{chunk-REMVSAGR.mjs → chunk-P2VEMZGS.mjs} +6 -2
- package/dist/chunk-P2VEMZGS.mjs.map +1 -0
- package/dist/chunk-UPZYS6TE.mjs +31 -0
- package/dist/chunk-UPZYS6TE.mjs.map +1 -0
- package/dist/{chunk-5VVYRZDU.mjs → chunk-ZSB4NTM3.mjs} +13 -10
- package/dist/chunk-ZSB4NTM3.mjs.map +1 -0
- package/dist/components/avatar.d.mts +1 -1
- package/dist/components/avatar.d.ts +1 -1
- package/dist/components/avatar.js +34 -9
- package/dist/components/avatar.js.map +1 -1
- package/dist/components/avatar.mjs +19 -15
- package/dist/components/avatar.mjs.map +1 -1
- package/dist/components/badge.d.mts +1 -1
- package/dist/components/badge.d.ts +1 -1
- package/dist/components/badge.js +24 -5
- package/dist/components/badge.js.map +1 -1
- package/dist/components/badge.mjs +7 -4
- package/dist/components/badge.mjs.map +1 -1
- package/dist/components/box.d.mts +1 -1
- package/dist/components/box.d.ts +1 -1
- package/dist/components/box.js.map +1 -1
- package/dist/components/box.mjs +1 -1
- package/dist/components/button.css +54 -48
- package/dist/components/button.css.map +1 -1
- package/dist/components/button.d.mts +1 -1
- package/dist/components/button.d.ts +1 -1
- package/dist/components/button.js +33 -11
- package/dist/components/button.js.map +1 -1
- package/dist/components/button.mjs +4 -4
- package/dist/components/card.d.mts +1 -1
- package/dist/components/card.d.ts +1 -1
- package/dist/components/card.js.map +1 -1
- package/dist/components/card.mjs.map +1 -1
- package/dist/components/checkbox.d.mts +1 -1
- package/dist/components/checkbox.d.ts +1 -1
- package/dist/components/checkbox.js +26 -6
- package/dist/components/checkbox.js.map +1 -1
- package/dist/components/checkbox.mjs +9 -5
- package/dist/components/checkbox.mjs.map +1 -1
- package/dist/components/container.d.mts +1 -1
- package/dist/components/container.d.ts +1 -1
- package/dist/components/container.js +24 -5
- package/dist/components/container.js.map +1 -1
- package/dist/components/container.mjs +7 -4
- package/dist/components/container.mjs.map +1 -1
- package/dist/components/dropdown-menu.d.mts +5 -1
- package/dist/components/dropdown-menu.d.ts +5 -1
- package/dist/components/dropdown-menu.js +21 -2
- package/dist/components/dropdown-menu.js.map +1 -1
- package/dist/components/dropdown-menu.mjs +3 -3
- package/dist/components/dropdown-menu.mjs.map +1 -1
- package/dist/components/flex.d.mts +1 -1
- package/dist/components/flex.d.ts +1 -1
- package/dist/components/flex.js +24 -5
- package/dist/components/flex.js.map +1 -1
- package/dist/components/flex.mjs +2 -2
- package/dist/components/form.d.mts +4 -1
- package/dist/components/form.d.ts +4 -1
- package/dist/components/form.js +26 -7
- package/dist/components/form.js.map +1 -1
- package/dist/components/form.mjs +9 -6
- package/dist/components/form.mjs.map +1 -1
- package/dist/components/grid.d.mts +1 -1
- package/dist/components/grid.d.ts +1 -1
- package/dist/components/grid.js +24 -5
- package/dist/components/grid.js.map +1 -1
- package/dist/components/grid.mjs +7 -4
- package/dist/components/grid.mjs.map +1 -1
- package/dist/components/icon-button.d.mts +1 -1
- package/dist/components/icon-button.d.ts +1 -1
- package/dist/components/icon-button.js +32 -10
- package/dist/components/icon-button.js.map +1 -1
- package/dist/components/icon-button.mjs +3 -3
- package/dist/components/label.d.mts +1 -1
- package/dist/components/label.d.ts +1 -1
- package/dist/components/label.js.map +1 -1
- package/dist/components/label.mjs.map +1 -1
- package/dist/components/link.d.mts +1 -1
- package/dist/components/link.d.ts +1 -1
- package/dist/components/link.js +24 -5
- package/dist/components/link.js.map +1 -1
- package/dist/components/link.mjs +7 -4
- package/dist/components/link.mjs.map +1 -1
- package/dist/components/menu.d.mts +3 -1
- package/dist/components/menu.d.ts +3 -1
- package/dist/components/menu.js +21 -2
- package/dist/components/menu.js.map +1 -1
- package/dist/components/menu.mjs +3 -3
- package/dist/components/menu.mjs.map +1 -1
- package/dist/components/panel.d.mts +1 -1
- package/dist/components/panel.d.ts +1 -1
- package/dist/components/panel.js.map +1 -1
- package/dist/components/panel.mjs.map +1 -1
- package/dist/components/paragraph.d.mts +1 -1
- package/dist/components/paragraph.d.ts +1 -1
- package/dist/components/paragraph.js.map +1 -1
- package/dist/components/paragraph.mjs.map +1 -1
- package/dist/components/popover.d.mts +4 -1
- package/dist/components/popover.d.ts +4 -1
- package/dist/components/popover.js.map +1 -1
- package/dist/components/popover.mjs +2 -2
- package/dist/components/popover.mjs.map +1 -1
- package/dist/components/select.css +54 -48
- package/dist/components/select.css.map +1 -1
- package/dist/components/select.d.mts +4 -2
- package/dist/components/select.d.ts +4 -2
- package/dist/components/select.js +30 -8
- package/dist/components/select.js.map +1 -1
- package/dist/components/select.mjs +4 -4
- package/dist/components/select.mjs.map +1 -1
- package/dist/components/separator.d.mts +1 -1
- package/dist/components/separator.d.ts +1 -1
- package/dist/components/separator.js.map +1 -1
- package/dist/components/separator.mjs.map +1 -1
- package/dist/components/skeleton.d.mts +1 -1
- package/dist/components/skeleton.d.ts +1 -1
- package/dist/components/skeleton.js +24 -5
- package/dist/components/skeleton.js.map +1 -1
- package/dist/components/skeleton.mjs +7 -4
- package/dist/components/skeleton.mjs.map +1 -1
- package/dist/components/spinner.d.mts +1 -1
- package/dist/components/spinner.d.ts +1 -1
- package/dist/components/spinner.js +24 -5
- package/dist/components/spinner.js.map +1 -1
- package/dist/components/spinner.mjs +2 -2
- package/dist/components/status.d.mts +1 -1
- package/dist/components/status.d.ts +1 -1
- package/dist/components/status.js +24 -5
- package/dist/components/status.js.map +1 -1
- package/dist/components/status.mjs +2 -2
- package/dist/components/switch.d.mts +1 -1
- package/dist/components/switch.d.ts +1 -1
- package/dist/components/switch.js +31 -9
- package/dist/components/switch.js.map +1 -1
- package/dist/components/switch.mjs +14 -8
- package/dist/components/switch.mjs.map +1 -1
- package/dist/components/text-field.d.mts +1 -1
- package/dist/components/text-field.d.ts +1 -1
- package/dist/components/text-field.js +24 -5
- package/dist/components/text-field.js.map +1 -1
- package/dist/components/text-field.mjs +7 -4
- package/dist/components/text-field.mjs.map +1 -1
- package/dist/components/text.d.mts +1 -1
- package/dist/components/text.d.ts +1 -1
- package/dist/components/text.js +24 -5
- package/dist/components/text.js.map +1 -1
- package/dist/components/text.mjs +2 -2
- package/dist/components/tooltip.d.mts +1 -1
- package/dist/components/tooltip.d.ts +1 -1
- package/dist/components/tooltip.js +28 -6
- package/dist/components/tooltip.js.map +1 -1
- package/dist/components/tooltip.mjs +11 -8
- package/dist/components/tooltip.mjs.map +1 -1
- package/dist/providers/index.css +54 -48
- package/dist/providers/index.css.map +1 -1
- package/dist/providers/index.d.mts +1 -4
- package/dist/providers/index.d.ts +1 -4
- package/dist/providers/index.js +46 -18
- package/dist/providers/index.js.map +1 -1
- package/dist/providers/index.mjs +6 -6
- package/dist/system-theme-BSCk6DG2.d.mts +5 -0
- package/dist/system-theme-BSCk6DG2.d.ts +5 -0
- package/dist/theme/index.css +189 -173
- package/dist/theme/index.css.map +1 -1
- package/dist/theme/index.d.mts +4 -2
- package/dist/theme/index.d.ts +4 -2
- package/dist/theme/index.js +6 -1
- package/dist/theme/index.js.map +1 -1
- package/dist/theme/index.mjs +4 -2
- package/dist/theme/index.mjs.map +1 -1
- package/dist/types/index.d.mts +2 -0
- package/dist/types/index.d.ts +2 -0
- package/dist/types/index.js +19 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/index.mjs +1 -0
- package/dist/types/index.mjs.map +1 -0
- package/dist/utils/index.d.mts +11 -1
- package/dist/utils/index.d.ts +11 -1
- package/dist/utils/index.js +23 -3
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/index.mjs +6 -2
- package/package.json +5 -1
- package/dist/chunk-4N6P3Y54.mjs +0 -13
- package/dist/chunk-4N6P3Y54.mjs.map +0 -1
- package/dist/chunk-5VVYRZDU.mjs.map +0 -1
- package/dist/chunk-66WXCRN4.mjs +0 -12
- package/dist/chunk-66WXCRN4.mjs.map +0 -1
- package/dist/chunk-C53FYO65.mjs.map +0 -1
- package/dist/chunk-CYDWEPFL.mjs +0 -1
- package/dist/chunk-HNOMBFLC.mjs.map +0 -1
- package/dist/chunk-OCXG5SMA.mjs.map +0 -1
- package/dist/chunk-OKNO3BFR.mjs.map +0 -1
- package/dist/chunk-REMVSAGR.mjs.map +0 -1
- package/dist/chunk-WPNBONR3.mjs.map +0 -1
- package/dist/chunk-YJWLCDJE.mjs.map +0 -1
- /package/dist/{chunk-CYDWEPFL.mjs.map → chunk-HGLO5LDS.mjs.map} +0 -0
|
@@ -28,9 +28,13 @@ module.exports = __toCommonJS(button_exports);
|
|
|
28
28
|
var import_createRuntimeFn = require("@vanilla-extract/recipes/createRuntimeFn");
|
|
29
29
|
var spinnerRecipe = (0, import_createRuntimeFn.createRuntimeFn)({ defaultClassName: "spinner_spinnerRecipe__15xzcy90", variantClassNames: { size: { "1": "spinner_spinnerRecipe_size_1__15xzcy91", "2": "spinner_spinnerRecipe_size_2__15xzcy92", "3": "spinner_spinnerRecipe_size_3__15xzcy93", "4": "spinner_spinnerRecipe_size_4__15xzcy94", "5": "spinner_spinnerRecipe_size_5__15xzcy95", "6": "spinner_spinnerRecipe_size_6__15xzcy96", "7": "spinner_spinnerRecipe_size_7__15xzcy97", "8": "spinner_spinnerRecipe_size_8__15xzcy98", "9": "spinner_spinnerRecipe_size_9__15xzcy99" } }, defaultVariants: { size: "3" }, compoundVariants: [] });
|
|
30
30
|
|
|
31
|
-
// src/utils/
|
|
32
|
-
function
|
|
33
|
-
|
|
31
|
+
// src/utils/omit.ts
|
|
32
|
+
function omit(obj, ...keys) {
|
|
33
|
+
const ret = { ...obj };
|
|
34
|
+
keys.forEach((key) => {
|
|
35
|
+
delete ret[key];
|
|
36
|
+
});
|
|
37
|
+
return ret;
|
|
34
38
|
}
|
|
35
39
|
|
|
36
40
|
// src/utils/pick.ts
|
|
@@ -42,21 +46,36 @@ function pick(obj, ...keys) {
|
|
|
42
46
|
return ret;
|
|
43
47
|
}
|
|
44
48
|
|
|
49
|
+
// src/utils/extract-variants.ts
|
|
50
|
+
function extractVariantsFromProps(obj, ...keys) {
|
|
51
|
+
const variants = pick(obj, ...keys);
|
|
52
|
+
const rest = omit(obj, ...keys);
|
|
53
|
+
return [variants, rest];
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
// src/utils/merge-classes.ts
|
|
57
|
+
function mergeClasses(...classes) {
|
|
58
|
+
return classes.filter((cls) => Boolean(cls)).join(" ");
|
|
59
|
+
}
|
|
60
|
+
|
|
45
61
|
// src/components/spinner.tsx
|
|
46
62
|
var import_react_slot = require("@radix-ui/react-slot");
|
|
47
63
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
48
64
|
var defaultElement = "div";
|
|
49
65
|
var Spinner = ({ asChild, ...props }) => {
|
|
50
|
-
const variants =
|
|
66
|
+
const [variants, rest] = extractVariantsFromProps(
|
|
67
|
+
props,
|
|
68
|
+
...spinnerRecipe.variants()
|
|
69
|
+
);
|
|
51
70
|
const spinner = spinnerRecipe(variants);
|
|
52
71
|
const Comp = asChild ? import_react_slot.Slot : defaultElement;
|
|
53
|
-
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Comp, { ...
|
|
72
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Comp, { ...rest, className: mergeClasses(spinner, rest.className), children: rest.children });
|
|
54
73
|
};
|
|
55
74
|
|
|
56
75
|
// src/theme/recipes/button.css.ts
|
|
57
76
|
var import_createRuntimeFn2 = require("homemade-recipes/createRuntimeFn");
|
|
58
77
|
var buttonRecipe = (0, import_createRuntimeFn2.createRuntimeFn)(function() {
|
|
59
|
-
var x = { defaultClassName: "button__hi3ya00", variantClassNames: { fullWidth: { true: "button_fullWidth_true__hi3ya01" }, loading: { true: "
|
|
78
|
+
var x = { defaultClassName: "button__hi3ya00", variantClassNames: { fullWidth: { true: "button_fullWidth_true__hi3ya01", false: "button_fullWidth_false__hi3ya02" }, loading: { true: "button_loading_true__hi3ya03" }, size: { "1": "button_size_1__hi3ya04", "2": "button_size_2__hi3ya05", "3": "button_size_3__hi3ya06" }, variant: { primary: "button_variant_primary__hi3ya07", secondary: "button_variant_secondary__hi3ya08", outline: "button_variant_outline__hi3ya09", ghost: "button_variant_ghost__hi3ya0a", error: "button_variant_error__hi3ya0b", success: "button_variant_success__hi3ya0c" }, round: { true: "button_round_true__hi3ya0d" } }, defaultVariants: { size: "2", variant: "primary" }, compoundVariants: [], responsiveVariantClassNames: { initial: void 0, sm: { fullWidth: { true: "button_fullWidth_sm_true__hi3ya0e", false: "button_fullWidth_sm_false__hi3ya0f" }, loading: { true: "button_loading_sm_true__hi3ya0g" }, size: { "1": "button_size_sm_1__hi3ya0h", "2": "button_size_sm_2__hi3ya0i", "3": "button_size_sm_3__hi3ya0j" }, variant: { primary: "button_variant_sm_primary__hi3ya0k", secondary: "button_variant_sm_secondary__hi3ya0l", outline: "button_variant_sm_outline__hi3ya0m", ghost: "button_variant_sm_ghost__hi3ya0n", error: "button_variant_sm_error__hi3ya0o", success: "button_variant_sm_success__hi3ya0p" }, round: { true: "button_round_sm_true__hi3ya0q" } } }, conditionNames: ["sm"], conditions: { xs: "520px", sm: "768px", md: "1024px", lg: "1280px", xl: "1640px" }, identifier: "homemade-recipe__lb053z0", cssCache: [] };
|
|
60
79
|
x.responsiveVariantClassNames.initial = x.variantClassNames;
|
|
61
80
|
return x;
|
|
62
81
|
}());
|
|
@@ -66,17 +85,20 @@ var import_react_slot2 = require("@radix-ui/react-slot");
|
|
|
66
85
|
var import_jsx_runtime2 = require("react/jsx-runtime");
|
|
67
86
|
var defaultElement2 = "button";
|
|
68
87
|
var Button = ({ asChild, ...props }) => {
|
|
69
|
-
const variants =
|
|
88
|
+
const [variants, rest] = extractVariantsFromProps(
|
|
89
|
+
props,
|
|
90
|
+
...buttonRecipe.variants()
|
|
91
|
+
);
|
|
70
92
|
const button = buttonRecipe(variants);
|
|
71
93
|
const Comp = asChild ? import_react_slot2.Slot : defaultElement2;
|
|
72
94
|
return /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(
|
|
73
95
|
Comp,
|
|
74
96
|
{
|
|
75
|
-
...
|
|
76
|
-
className: mergeClasses(button,
|
|
77
|
-
disabled:
|
|
97
|
+
...rest,
|
|
98
|
+
className: mergeClasses(button, rest.className),
|
|
99
|
+
disabled: rest.disabled || Boolean(variants.loading),
|
|
78
100
|
children: [
|
|
79
|
-
|
|
101
|
+
rest.children,
|
|
80
102
|
variants.loading && /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(Spinner, { style: { position: "absolute" } })
|
|
81
103
|
]
|
|
82
104
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/components/button.tsx","../../src/theme/recipes/spinner.css.ts","../../src/utils/merge-classes.ts","../../src/utils/pick.ts","../../src/components/spinner.tsx","../../src/theme/recipes/button.css.ts"],"sourcesContent":["import { Spinner } from \"@/components/spinner\";\nimport { ButtonVariants, buttonRecipe } from \"@/theme/recipes/button.css\";\nimport { ComponentProps } from \"@/types/component-props\";\nimport { mergeClasses } from \"@/utils/merge-classes\";\nimport { pick } from \"@/utils/pick\";\nimport { Slot } from \"@radix-ui/react-slot\";\n\nconst defaultElement = \"button\";\n\nexport type ButtonProps = ComponentProps<typeof defaultElement, ButtonVariants>;\n\nexport const Button = ({ asChild, ...props }: ButtonProps) => {\n const variants = pick(props, ...buttonRecipe.variants());\n const button = buttonRecipe(variants);\n const Comp = asChild ? Slot : defaultElement;\n\n return (\n <Comp\n {...props}\n className={mergeClasses(button, props.className)}\n disabled={props.disabled || Boolean(variants.loading)}\n >\n {props.children}\n {variants.loading && <Spinner style={{ position: \"absolute\" }} />}\n </Comp>\n );\n};\n","import 'src/theme/animations/spin.css.ts.vanilla.css?source=QGtleWZyYW1lcyBzcGluX3NwaW5fXzkxZzI5NTAgewogIHRvIHsKICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7CiAgfQp9';\nimport 'src/theme/recipes/spinner.css.ts.vanilla.css?source=#H4sIAAAAAAAAA33P327CIBTH8fs+BZfbRY30jxa93BvsBQgtWE9SoQHc1MV3X+ocI2SHGxuT7/l9wsrNoLWy/Pl9VwPMinPaXm7Dla3JV0GI0HASHozekSV7tJwzOlasXZNV58gEWglLQB9Ag1f7gpDeWKnsjtD5QpyZQJIPYV/KcjCTsa50k/Dq57fhnDLdq07S6/T6d1taIeHsds/D5R+U1py1DAfVqOMDb+YYHM7WKu3fFnFf3IvV/491cFOchjfTx5uPCsaj/7WXxJU0cruH+wnSH/NRnq0CW6FsFS0yjE2jPFsHtkbZOloUGJtGebYJbIOyTbTYY2wa5dk2sC3KttHigLFplGc3gd2g7CZalBibRnl2G9gtym6jRYWxaZRnu8B2KNtFiweMTaM8ywLLUJZFiyPGptH9G0PpMC4bBQAA';\nimport { createRuntimeFn as _7a468 } from '@vanilla-extract/recipes/createRuntimeFn';\nexport var spinnerRecipe = _7a468({defaultClassName:'spinner_spinnerRecipe__15xzcy90',variantClassNames:{size:{'1':'spinner_spinnerRecipe_size_1__15xzcy91','2':'spinner_spinnerRecipe_size_2__15xzcy92','3':'spinner_spinnerRecipe_size_3__15xzcy93','4':'spinner_spinnerRecipe_size_4__15xzcy94','5':'spinner_spinnerRecipe_size_5__15xzcy95','6':'spinner_spinnerRecipe_size_6__15xzcy96','7':'spinner_spinnerRecipe_size_7__15xzcy97','8':'spinner_spinnerRecipe_size_8__15xzcy98','9':'spinner_spinnerRecipe_size_9__15xzcy99'}},defaultVariants:{size:'3'},compoundVariants:[]});","export function mergeClasses(...classes: (string | undefined)[]): string {\n return classes.filter((cls): cls is string => Boolean(cls)).join(\" \");\n}\n","/**\n * https://stackoverflow.com/a/47232883\n */\nexport function pick<T, K extends keyof T>(obj: T, ...keys: K[]): Pick<T, K> {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const ret: any = {};\n keys.forEach((key) => {\n ret[key] = obj[key];\n });\n\n return ret;\n}\n","import { SpinnerVariants, spinnerRecipe } from \"@/theme/recipes/spinner.css\";\nimport { ComponentProps } from \"@/types/component-props\";\nimport { mergeClasses } from \"@/utils/merge-classes\";\nimport { pick } from \"@/utils/pick\";\nimport { Slot } from \"@radix-ui/react-slot\";\n\nconst defaultElement = \"div\";\n\ntype SpinnerProps = ComponentProps<typeof defaultElement, SpinnerVariants>;\n\nexport const Spinner = ({ asChild, ...props }: SpinnerProps) => {\n const variants = pick(props, ...spinnerRecipe.variants());\n const spinner = spinnerRecipe(variants);\n const Comp = asChild ? Slot : defaultElement;\n\n return (\n <Comp {...props} className={mergeClasses(spinner, props.className)}>\n {props.children}\n </Comp>\n );\n};\n","import 'src/theme/recipes/button.css.ts.vanilla.css?source=#H4sIAAAAAAAAA71XTW+kOBC9z69gDyMl0nrU3cnkg73saC5zn8McW8YU4ARsZJv+yCr/fWUDjaFpsEkraqlJO1X1ivdMmfctqpTibLvN6N0Rr1bBf1+CAOd5GFRMgvrH/KIpQ1RBIcOAAFMg9HLED0jSN8rSMIi4iEGgiB/0fyoJAknIgagwYJyBXoypLHN8DAPKcsoAJTmYYH1FMhOUvYbBSq+8VFLR5IgIZwqYsjHRHqJXqpDCJcpomuU0zRQiPOciDEQa4ZvV3+Zza0pzplCCC5ofw2CHxQ1CekkiBQe13a6fWQRP8SahXfQedEU7+o9ZkaiAmFaFlcW7rB0WFDOFWFWAoCQMFI6qHAu9IHWUEphJqihnoSY3WK9W+h/vX74N6A/DCBIuwMhwieGxNJwoEL5ZGd81SaQSUnNYclpzPRIdU4mjHOIaBZPXVPCKxS39NWXmh0Qyxwrq782Js/Xx5fa0czIc873eDRJUsDKfdXkYqfKjuTx2dd5qfWeAnyzgsk5o7pJxhXCe8z3Eerm5aQQ7YEq2W7ZjIKny/A+NVbZVooKWkLXhYa/XQy3oVzsl5zimLO0lbGqm66bNjiixAKaCv2hRcqEwU3YJSd9gu26T7xptjZ4Cx7SS7Z3rXxStu62ZZuZus95e1uUk+m5FERNV4lh3inJIutgSE0CWcL1I0Ss7GmqeCo1oP0m/TQddn88m1AwDl1YHzGxaZu7nmNlYhehFZh6sqHiGmbsudo6ZYegEM11odIkZvfSrGUhWw8nunJ+7lp/v1+Hn0YqCGX7uT7F3c/wMQyf46ULJ9M4Zttox0wzqbSlogcWxpehhcqRJKDBTlPysJ0yT2167rjYkPx9L08lr66kl0qlVa2gva9h6rkjhBomJojv4AKa1VwkbxZRAOIst1EcfuFN295elSzNpPAvY2sSpY9P+6owgWwrF2BXYX6MRZEsnM4TOkXml9HPX4j5dALSON7cTf9BbjXGab+NP8bAXf/KtNn/pXAsycYP0p93C/GGSLdDxbZZmXKoW8tmF8bkan8DUAPAzeAIhuGghsQ+Wyay/7blxmJ0bVqI9L+DeoUF/ESw0e0YcXcD8BbDQ7LnwNj6RKkJAyhYv8hpEdW57tRSA+RN1kNxTYfxEHba6YGb3MS0tYPxEPYNcMK37mJYi0D9RTame8SBzb4Da4FjvTNzU+1c7XhxIIgBYgFkc3BSUocbwPD48lYdbU/jcJsmih187xoFXCoJ3K7f1S4NMaDJnTFO/lnn9lUXnnZKmipd7cvVPPg7Ky0N5uSgPHzVO1slOpfNknRsGV0vlY6q8bJWXsfK2VuOUnRxWdj3Kzl2Wj8/yclpeXsvDbfXJOk3AYmgraMvalWzXx4yXc9fWaXEtB+aObR0b17JiF8HPPMaLH66TJ/u4K/Pof4l0DvbMp4MlAjr4tIstDPzK60XkgWG7jmVzbmuJMjOOxB17iSZz5uQies8W5a5yOBX7TBIHyJ9KYc/YFH6gk0ZvudVz7HWJQhOezxV1iToT5u/yvOu7HOY55uZc4Md8oHPXi06JaUPojr3ofJh2hn3w2h0ObBaff4EdsYi68Pv/bTN6ukAeAAA=';\nimport { createRuntimeFn as _dc746 } from 'homemade-recipes/createRuntimeFn';\nexport var buttonRecipe = _dc746((function(){var x={defaultClassName:'button__hi3ya00',variantClassNames:{fullWidth:{true:'button_fullWidth_true__hi3ya01'},loading:{true:'button_loading_true__hi3ya02'},size:{'1':'button_size_1__hi3ya03','2':'button_size_2__hi3ya04','3':'button_size_3__hi3ya05'},variant:{primary:'button_variant_primary__hi3ya06',secondary:'button_variant_secondary__hi3ya07',outline:'button_variant_outline__hi3ya08',ghost:'button_variant_ghost__hi3ya09',error:'button_variant_error__hi3ya0a',success:'button_variant_success__hi3ya0b'},round:{true:'button_round_true__hi3ya0c'}},defaultVariants:{size:'2',variant:'primary'},compoundVariants:[],responsiveVariantClassNames:{initial:undefined,sm:{fullWidth:{true:'button_fullWidth_sm_true__hi3ya0d'},loading:{true:'button_loading_sm_true__hi3ya0e'},size:{'1':'button_size_sm_1__hi3ya0f','2':'button_size_sm_2__hi3ya0g','3':'button_size_sm_3__hi3ya0h'},variant:{primary:'button_variant_sm_primary__hi3ya0i',secondary:'button_variant_sm_secondary__hi3ya0j',outline:'button_variant_sm_outline__hi3ya0k',ghost:'button_variant_sm_ghost__hi3ya0l',error:'button_variant_sm_error__hi3ya0m',success:'button_variant_sm_success__hi3ya0n'},round:{true:'button_round_sm_true__hi3ya0o'}}},conditionNames:['sm'],conditions:{xs:'520px',sm:'768px',md:'1024px',lg:'1280px',xl:'1640px'},identifier:'homemade-recipe__lb053z0',cssCache:[]};x.responsiveVariantClassNames.initial=x.variantClassNames;return x;}()));"],"mappings":"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","names":["_7a468","import_createRuntimeFn","_dc746","import_react_slot","import_jsx_runtime","defaultElement"]}
|
|
1
|
+
{"version":3,"sources":["../../src/components/button.tsx","../../src/theme/recipes/spinner.css.ts","../../src/utils/omit.ts","../../src/utils/pick.ts","../../src/utils/extract-variants.ts","../../src/utils/merge-classes.ts","../../src/components/spinner.tsx","../../src/theme/recipes/button.css.ts"],"sourcesContent":["import { Spinner } from \"@/components/spinner\";\nimport { ButtonVariants, buttonRecipe } from \"@/theme/recipes/button.css\";\nimport { ComponentProps } from \"@/types/component-props\";\nimport { extractVariantsFromProps } from \"@/utils/extract-variants\";\nimport { mergeClasses } from \"@/utils/merge-classes\";\nimport { Slot } from \"@radix-ui/react-slot\";\n\nconst defaultElement = \"button\";\n\nexport type ButtonProps = ComponentProps<typeof defaultElement, ButtonVariants>;\n\nexport const Button = ({ asChild, ...props }: ButtonProps) => {\n const [variants, rest] = extractVariantsFromProps(\n props,\n ...buttonRecipe.variants(),\n );\n const button = buttonRecipe(variants);\n const Comp = asChild ? Slot : defaultElement;\n\n return (\n <Comp\n {...rest}\n className={mergeClasses(button, rest.className)}\n disabled={rest.disabled || Boolean(variants.loading)}\n >\n {rest.children}\n {variants.loading && <Spinner style={{ position: \"absolute\" }} />}\n </Comp>\n );\n};\n","import 'src/theme/animations/spin.css.ts.vanilla.css?source=QGtleWZyYW1lcyBzcGluX3NwaW5fXzkxZzI5NTAgewogIHRvIHsKICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7CiAgfQp9';\nimport 'src/theme/recipes/spinner.css.ts.vanilla.css?source=#H4sIAAAAAAAAA33P327CIBTH8fs+BZfbRY30jxa93BvsBQgtWE9SoQHc1MV3X+ocI2SHGxuT7/l9wsrNoLWy/Pl9VwPMinPaXm7Dla3JV0GI0HASHozekSV7tJwzOlasXZNV58gEWglLQB9Ag1f7gpDeWKnsjtD5QpyZQJIPYV/KcjCTsa50k/Dq57fhnDLdq07S6/T6d1taIeHsds/D5R+U1py1DAfVqOMDb+YYHM7WKu3fFnFf3IvV/491cFOchjfTx5uPCsaj/7WXxJU0cruH+wnSH/NRnq0CW6FsFS0yjE2jPFsHtkbZOloUGJtGebYJbIOyTbTYY2wa5dk2sC3KttHigLFplGc3gd2g7CZalBibRnl2G9gtym6jRYWxaZRnu8B2KNtFiweMTaM8ywLLUJZFiyPGptH9G0PpMC4bBQAA';\nimport { createRuntimeFn as _7a468 } from '@vanilla-extract/recipes/createRuntimeFn';\nexport var spinnerRecipe = _7a468({defaultClassName:'spinner_spinnerRecipe__15xzcy90',variantClassNames:{size:{'1':'spinner_spinnerRecipe_size_1__15xzcy91','2':'spinner_spinnerRecipe_size_2__15xzcy92','3':'spinner_spinnerRecipe_size_3__15xzcy93','4':'spinner_spinnerRecipe_size_4__15xzcy94','5':'spinner_spinnerRecipe_size_5__15xzcy95','6':'spinner_spinnerRecipe_size_6__15xzcy96','7':'spinner_spinnerRecipe_size_7__15xzcy97','8':'spinner_spinnerRecipe_size_8__15xzcy98','9':'spinner_spinnerRecipe_size_9__15xzcy99'}},defaultVariants:{size:'3'},compoundVariants:[]});","export function omit<T, K extends keyof T>(obj: T, ...keys: K[]): Omit<T, K> {\n const ret = { ...obj };\n keys.forEach((key) => {\n delete ret[key];\n });\n\n return ret;\n}\n","/**\n * https://stackoverflow.com/a/47232883\n */\nexport function pick<T, K extends keyof T>(obj: T, ...keys: K[]): Pick<T, K> {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const ret: any = {};\n keys.forEach((key) => {\n ret[key] = obj[key];\n });\n\n return ret;\n}\n","import { omit } from \"./omit\";\nimport { pick } from \"./pick\";\n\n/**\n * TODO\n * @param obj\n * @param keys\n * @returns [variants, props]\n */\nexport function extractVariantsFromProps<T, K extends keyof T>(\n obj: T,\n ...keys: K[]\n): [Pick<T, K>, Omit<T, K>] {\n const variants = pick(obj, ...keys);\n const rest = omit(obj, ...keys);\n\n return [variants, rest];\n}\n","export function mergeClasses(...classes: (string | undefined)[]): string {\n return classes.filter((cls): cls is string => Boolean(cls)).join(\" \");\n}\n","import { SpinnerVariants, spinnerRecipe } from \"@/theme/recipes/spinner.css\";\nimport { ComponentProps } from \"@/types/component-props\";\nimport { extractVariantsFromProps } from \"@/utils/extract-variants\";\nimport { mergeClasses } from \"@/utils/merge-classes\";\nimport { Slot } from \"@radix-ui/react-slot\";\n\nconst defaultElement = \"div\";\n\nexport type SpinnerProps = ComponentProps<\n typeof defaultElement,\n SpinnerVariants\n>;\n\nexport const Spinner = ({ asChild, ...props }: SpinnerProps) => {\n const [variants, rest] = extractVariantsFromProps(\n props,\n ...spinnerRecipe.variants(),\n );\n const spinner = spinnerRecipe(variants);\n const Comp = asChild ? Slot : defaultElement;\n\n return (\n <Comp {...rest} className={mergeClasses(spinner, rest.className)}>\n {rest.children}\n </Comp>\n );\n};\n","import 'src/theme/recipes/button.css.ts.vanilla.css?source=#H4sIAAAAAAAAA71YTW/jNhC9769QDwUSoFzYzm4+1EsXvey9hz0aFDWSmFCkSlKOnSL/vSAlWZQsW6RiBAasiJ6ZN3ozHOrla1JrLfh2W9C7A16tov++RBFmLI5qrkD/ae9ozhHVUKo4IsA1SLOciD1S9I3yPI4SIVOQKBF780utQCIFDIiOIy44mMWUqorhQxxRzigHlDGwxuaKVCEpf4mjlVl5rpWm2QERwTVw7WKiV0heqEYaV6igecFoXmhEBBMyjmSe4JvVH/Zza0MLrlGGS8oOcbTD8gYhs6SQhr3ebtdPPIHHdJPR3voVTETX+pddUaiElNal4yV6rx2WFHONeF2CpCSONE5qhqVZUMZKS8wV1VTw2JAbrVcr88P7l68j+uM4gUxIsGU4x/CUG840yFCvQuxaJ1JLZTisBG24nrBOqcIJg7RBweQll6LmaUd/Q5m9UUgxrKH53hw5Wx+eb4+dU+BUvJpuUKCjlf2sq/1ElB/t5aGP89bUdwb40QGuGof2KbnQCDMmXiE1y+1DI9gB16pr2Z6BrGbsF011sdWyho6QteXh1azHpqC/T7tkmKmjz8b1aTdY78QETinPByh3TXmaJ7VtVGEJXEe/0bISUmM+CKHoG2zXnfO3tiFsE0ic0lp1dJk7itZ9P+eFpagYbAATTqHvjhWxVhVOTaaIQdbbVpgAcqo9sJSDsJOmdisZRHf7/WMz6PN8sqZ2gvikOmJm0zHzfY6ZjROInmXm3rFKZ5i5623nmBmbXmCmN03OMWOWfrZTzEk4253yc9fxc38dfh4cK5jh59vR9m6On7HpBX56U3K5c8ap9sy0031bSVpieegoerg4BxWUmGtK/m7GUuvbXfusNoSdzrLLzmtn1xLllaoz6Zcl7OwrUvpBYqLpDj6A6fQq4ZOYCojgqYP6GAJ39O7/curSTprAAG5t0twz6fDqTCA7FUqxL3B4jSaQnTrZIXSKLGpt9l2H+3QG0Dne/F4TRrk1GMf5Nr2Lx7mEk++k+dP4OpCZH2Q47Q7mD+vsgE63WV4IpTtI7MP4XIxPYGoE+Bk8gZRCdpBJCJb1bL7dubGfnRuOozsv4JtHguFFcNDcGXHwAQsvgIPmzoW36YlUEwJKdXgkaBA1vt3VqQDMn6gj50EVpk/UcaoLZvYQ06kFTJ+oJ5ALpvUQ06kIDE9UG2ogPNK5N0AjcZx3JmHj/WVkMo4UkQA8wjyNbkrKUat4Hu4fq/2tDXwqlFQ5wG+ecySwouj9nO9AZ2VD5+O/MlzvTm2NcPPWdUZyDWPZl2dV9sqraKMEaS9f9RWiv4IUWJAGC1Bh02QdxRidJ+tUbvgKshBJFiTKgmRZsDCbpuyoz56vR9mpRgtRaUE6LUipBWi1IVnH+VmORclLx9qVRNvHZJt31s5Zcy395o/tHDrXEnJnwU8UCgvD9VJ0H9d0AfkvKZ2HuAvJYEkBPVTe2RRGaqc8izySe9cRfN5pLanMjJ7xx15SkzlpcxZ9IKq4bzm8gn0miSPkT6VwIItEGOhFmbhcKHrmuqRCFxSjL+qS6lyQjufn3VAjVYFjbk5DfkxFeme96JS4LCf9sRedD5d15RC80ZYjmfXv/AvshMA0gd//B6jO1lmzHgAA';\nimport { createRuntimeFn as _dc746 } from 'homemade-recipes/createRuntimeFn';\nexport var buttonRecipe = _dc746((function(){var x={defaultClassName:'button__hi3ya00',variantClassNames:{fullWidth:{true:'button_fullWidth_true__hi3ya01',false:'button_fullWidth_false__hi3ya02'},loading:{true:'button_loading_true__hi3ya03'},size:{'1':'button_size_1__hi3ya04','2':'button_size_2__hi3ya05','3':'button_size_3__hi3ya06'},variant:{primary:'button_variant_primary__hi3ya07',secondary:'button_variant_secondary__hi3ya08',outline:'button_variant_outline__hi3ya09',ghost:'button_variant_ghost__hi3ya0a',error:'button_variant_error__hi3ya0b',success:'button_variant_success__hi3ya0c'},round:{true:'button_round_true__hi3ya0d'}},defaultVariants:{size:'2',variant:'primary'},compoundVariants:[],responsiveVariantClassNames:{initial:undefined,sm:{fullWidth:{true:'button_fullWidth_sm_true__hi3ya0e',false:'button_fullWidth_sm_false__hi3ya0f'},loading:{true:'button_loading_sm_true__hi3ya0g'},size:{'1':'button_size_sm_1__hi3ya0h','2':'button_size_sm_2__hi3ya0i','3':'button_size_sm_3__hi3ya0j'},variant:{primary:'button_variant_sm_primary__hi3ya0k',secondary:'button_variant_sm_secondary__hi3ya0l',outline:'button_variant_sm_outline__hi3ya0m',ghost:'button_variant_sm_ghost__hi3ya0n',error:'button_variant_sm_error__hi3ya0o',success:'button_variant_sm_success__hi3ya0p'},round:{true:'button_round_sm_true__hi3ya0q'}}},conditionNames:['sm'],conditions:{xs:'520px',sm:'768px',md:'1024px',lg:'1280px',xl:'1640px'},identifier:'homemade-recipe__lb053z0',cssCache:[]};x.responsiveVariantClassNames.initial=x.variantClassNames;return x;}()));"],"mappings":"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","names":["_7a468","import_createRuntimeFn","_dc746","import_react_slot","import_jsx_runtime","defaultElement"]}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import {
|
|
2
2
|
Button
|
|
3
|
-
} from "../chunk-
|
|
4
|
-
import "../chunk-
|
|
5
|
-
import "../chunk-
|
|
3
|
+
} from "../chunk-ZSB4NTM3.mjs";
|
|
4
|
+
import "../chunk-4A7WL3BM.mjs";
|
|
5
|
+
import "../chunk-67WEB6LY.mjs";
|
|
6
6
|
import "../chunk-47YGQSLM.mjs";
|
|
7
|
-
import "../chunk-
|
|
7
|
+
import "../chunk-UPZYS6TE.mjs";
|
|
8
8
|
import "../chunk-7EGQM3ZL.mjs";
|
|
9
9
|
export {
|
|
10
10
|
Button
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/components/card.tsx","../../src/theme/styles/card.css.ts","../../src/utils/merge-classes.ts"],"sourcesContent":["import { card } from \"@/theme/styles/card.css\";\nimport { ComponentProps } from \"@/types/component-props\";\nimport { mergeClasses } from \"@/utils/merge-classes\";\nimport { Slot } from \"@radix-ui/react-slot\";\n\nconst defaultElement = \"div\";\n\
|
|
1
|
+
{"version":3,"sources":["../../src/components/card.tsx","../../src/theme/styles/card.css.ts","../../src/utils/merge-classes.ts"],"sourcesContent":["import { card } from \"@/theme/styles/card.css\";\nimport { ComponentProps } from \"@/types/component-props\";\nimport { mergeClasses } from \"@/utils/merge-classes\";\nimport { Slot } from \"@radix-ui/react-slot\";\n\nconst defaultElement = \"div\";\n\nexport type CardProps = ComponentProps<typeof defaultElement>;\n\nexport const Card = ({ asChild, ...props }: CardProps) => {\n const Comp = asChild ? Slot : defaultElement;\n\n return (\n <Comp {...props} className={mergeClasses(card, props.className)}>\n {props.children}\n </Comp>\n );\n};\n","import 'src/theme/styles/panel.css.ts.vanilla.css?source=LnBhbmVsX3BhbmVsX19naDlzdXowIHsKICBjb2xvcjogdmFyKC0tc2VtYW50aWNDb2xvcnMtc3VyZmFjZVRleHRDb250cmFzdF9fMTluYmU4ZDJmOSk7CiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2VtYW50aWNDb2xvcnMtc3VyZmFjZV9fMTluYmU4ZDJmOCk7CiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaWktM19fMTluYmU4ZDJnaik7CiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMXB4IHZhcigtLXNlbWFudGljQ29sb3JzLWxpbmVfXzE5bmJlOGQyZmUpOwp9';\nimport 'src/theme/styles/card.css.ts.vanilla.css?source=LmNhcmRfY2FyZF9fMWs0OTIyMCB7CiAgcGFkZGluZzogdmFyKC0tc3BhY2UtNV9fMTluYmU4ZDQpIHZhcigtLXNwYWNlLTVfXzE5bmJlOGQ0KSB2YXIoLS1zcGFjZS02X18xOW5iZThkNSkgdmFyKC0tc3BhY2UtNV9fMTluYmU4ZDQpOwp9';\nexport var card = 'card_card__1k49220 panel_panel__gh9suz0';","export function mergeClasses(...classes: (string | undefined)[]): string {\n return classes.filter((cls): cls is string => Boolean(cls)).join(\" \");\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACEO,IAAI,OAAO;;;ACFX,SAAS,gBAAgB,SAAyC;AACvE,SAAO,QAAQ,OAAO,CAAC,QAAuB,QAAQ,GAAG,CAAC,EAAE,KAAK,GAAG;AACtE;;;AFCA,wBAAqB;AAUjB;AARJ,IAAM,iBAAiB;AAIhB,IAAM,OAAO,CAAC,EAAE,SAAS,GAAG,MAAM,MAAiB;AACxD,QAAM,OAAO,UAAU,yBAAO;AAE9B,SACE,4CAAC,QAAM,GAAG,OAAO,WAAW,aAAa,MAAM,MAAM,SAAS,GAC3D,gBAAM,UACT;AAEJ;","names":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/components/card.tsx"],"sourcesContent":["import { card } from \"@/theme/styles/card.css\";\nimport { ComponentProps } from \"@/types/component-props\";\nimport { mergeClasses } from \"@/utils/merge-classes\";\nimport { Slot } from \"@radix-ui/react-slot\";\n\nconst defaultElement = \"div\";\n\
|
|
1
|
+
{"version":3,"sources":["../../src/components/card.tsx"],"sourcesContent":["import { card } from \"@/theme/styles/card.css\";\nimport { ComponentProps } from \"@/types/component-props\";\nimport { mergeClasses } from \"@/utils/merge-classes\";\nimport { Slot } from \"@radix-ui/react-slot\";\n\nconst defaultElement = \"div\";\n\nexport type CardProps = ComponentProps<typeof defaultElement>;\n\nexport const Card = ({ asChild, ...props }: CardProps) => {\n const Comp = asChild ? Slot : defaultElement;\n\n return (\n <Comp {...props} className={mergeClasses(card, props.className)}>\n {props.children}\n </Comp>\n );\n};\n"],"mappings":";;;;;;;;;AAGA,SAAS,YAAY;AAUjB;AARJ,IAAM,iBAAiB;AAIhB,IAAM,OAAO,CAAC,EAAE,SAAS,GAAG,MAAM,MAAiB;AACxD,QAAM,OAAO,UAAU,OAAO;AAE9B,SACE,oBAAC,QAAM,GAAG,OAAO,WAAW,aAAa,MAAM,MAAM,SAAS,GAC3D,gBAAM,UACT;AAEJ;","names":[]}
|
|
@@ -41,9 +41,13 @@ var checkboxRecipe = (0, import_createRuntimeFn.createRuntimeFn)({ defaultClassN
|
|
|
41
41
|
// src/theme/styles/checkbox.css.ts
|
|
42
42
|
var checkboxIndicator = "checkbox_checkboxIndicator__z3c6170";
|
|
43
43
|
|
|
44
|
-
// src/utils/
|
|
45
|
-
function
|
|
46
|
-
|
|
44
|
+
// src/utils/omit.ts
|
|
45
|
+
function omit(obj, ...keys) {
|
|
46
|
+
const ret = { ...obj };
|
|
47
|
+
keys.forEach((key) => {
|
|
48
|
+
delete ret[key];
|
|
49
|
+
});
|
|
50
|
+
return ret;
|
|
47
51
|
}
|
|
48
52
|
|
|
49
53
|
// src/utils/pick.ts
|
|
@@ -55,17 +59,33 @@ function pick(obj, ...keys) {
|
|
|
55
59
|
return ret;
|
|
56
60
|
}
|
|
57
61
|
|
|
62
|
+
// src/utils/extract-variants.ts
|
|
63
|
+
function extractVariantsFromProps(obj, ...keys) {
|
|
64
|
+
const variants = pick(obj, ...keys);
|
|
65
|
+
const rest = omit(obj, ...keys);
|
|
66
|
+
return [variants, rest];
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
// src/utils/merge-classes.ts
|
|
70
|
+
function mergeClasses(...classes) {
|
|
71
|
+
return classes.filter((cls) => Boolean(cls)).join(" ");
|
|
72
|
+
}
|
|
73
|
+
|
|
58
74
|
// src/components/checkbox.tsx
|
|
59
75
|
var CheckboxPrimitive = __toESM(require("@radix-ui/react-checkbox"));
|
|
60
76
|
var import_react_icons = require("@radix-ui/react-icons");
|
|
61
77
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
62
78
|
var Checkbox = ({ ...props }) => {
|
|
63
|
-
const
|
|
79
|
+
const [variants, rest] = extractVariantsFromProps(
|
|
80
|
+
props,
|
|
81
|
+
...checkboxRecipe.variants()
|
|
82
|
+
);
|
|
83
|
+
const checkbox = checkboxRecipe(variants);
|
|
64
84
|
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
65
85
|
CheckboxPrimitive.Root,
|
|
66
86
|
{
|
|
67
|
-
...
|
|
68
|
-
className: mergeClasses(checkbox,
|
|
87
|
+
...rest,
|
|
88
|
+
className: mergeClasses(checkbox, rest.className),
|
|
69
89
|
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(CheckboxPrimitive.CheckboxIndicator, { className: checkboxIndicator, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react_icons.CheckIcon, {}) })
|
|
70
90
|
}
|
|
71
91
|
);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/components/checkbox.tsx","../../src/theme/recipes/checkbox.css.ts","../../src/theme/styles/checkbox.css.ts","../../src/utils/
|
|
1
|
+
{"version":3,"sources":["../../src/components/checkbox.tsx","../../src/theme/recipes/checkbox.css.ts","../../src/theme/styles/checkbox.css.ts","../../src/utils/omit.ts","../../src/utils/pick.ts","../../src/utils/extract-variants.ts","../../src/utils/merge-classes.ts"],"sourcesContent":["import { CheckboxVariants, checkboxRecipe } from \"@/theme/recipes/checkbox.css\";\nimport { checkboxIndicator } from \"@/theme/styles/checkbox.css\";\nimport { extractVariantsFromProps } from \"@/utils/extract-variants\";\nimport { mergeClasses } from \"@/utils/merge-classes\";\nimport * as CheckboxPrimitive from \"@radix-ui/react-checkbox\";\nimport { CheckIcon } from \"@radix-ui/react-icons\";\n\nexport type CheckboxProps = CheckboxPrimitive.CheckboxProps & CheckboxVariants;\n\nexport const Checkbox = ({ ...props }: CheckboxProps) => {\n const [variants, rest] = extractVariantsFromProps(\n props,\n ...checkboxRecipe.variants(),\n );\n\n const checkbox = checkboxRecipe(variants);\n\n return (\n <CheckboxPrimitive.Root\n {...rest}\n className={mergeClasses(checkbox, rest.className)}\n >\n <CheckboxPrimitive.CheckboxIndicator className={checkboxIndicator}>\n <CheckIcon />\n </CheckboxPrimitive.CheckboxIndicator>\n </CheckboxPrimitive.Root>\n );\n};\n","import 'src/theme/recipes/checkbox.css.ts.vanilla.css?source=#H4sIAAAAAAAAA5WSz44bIQzG73kKjrtSWWVSVWrJsZee9wVGBjzghpgRMJs/q757Be1sRm2TZsUFzOfPP2yejEez0/HYz5tnNDRi37uTP/u0Fq8rISAEJSbOWLYrIXQ8ykxnYqeEjslikjoe682UMcmMAU1RgiPjtiWTY0kF91kJg1wwtfA4IiRggxeppTwGOClBHIhRDgGb7/cpFxpO0kQuyGVp03QeyfmiRFcje0iOWIl1PcSpVMWlxAjWNvJ2LQ+od1RkgVF6cj5UH2liiEmJ5DQ8rD+09fj2cA82HiphxiLWbXXjUbxAepAy4x64kPlaHbKspfu++8IaP9vNgM0lvmAaQvXwZC3ydvVj9fS/MShf09owNJidS3FiO4P+s3ZJwHmEhFy+1dwFx/B4X80hmim3mn+08Z5kpXGICX8hX/kxd/nAUOaXv98m0xn7bnbrms2BbPFvXaMzZvnx0h0HbUrzl7qt+k2RwNKUZ3E9kewWYn+74Q1yM0NurkF+Wjiaq5B/q25AbhZiqpA/AT6rIHMQBAAA';\nimport { createRuntimeFn as _7a468 } from '@vanilla-extract/recipes/createRuntimeFn';\nexport var checkboxRecipe = _7a468({defaultClassName:'checkbox_checkboxRecipe__gyhzhr0',variantClassNames:{size:{'1':'checkbox_checkboxRecipe_size_1__gyhzhr1','2':'checkbox_checkboxRecipe_size_2__gyhzhr2'}},defaultVariants:{size:'1'},compoundVariants:[]});","import 'src/theme/styles/checkbox.css.ts.vanilla.css?source=LmNoZWNrYm94X2NoZWNrYm94SW5kaWNhdG9yX196M2M2MTcwIHsKICBhbGlnbi1pdGVtczogY2VudGVyOwogIGRpc3BsYXk6IGZsZXg7CiAgaGVpZ2h0OiAxMDAlOwogIGp1c3RpZnktY29udGVudDogY2VudGVyOwogIHdpZHRoOiAxMDAlOwp9';\nexport var checkboxIndicator = 'checkbox_checkboxIndicator__z3c6170';","export function omit<T, K extends keyof T>(obj: T, ...keys: K[]): Omit<T, K> {\n const ret = { ...obj };\n keys.forEach((key) => {\n delete ret[key];\n });\n\n return ret;\n}\n","/**\n * https://stackoverflow.com/a/47232883\n */\nexport function pick<T, K extends keyof T>(obj: T, ...keys: K[]): Pick<T, K> {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const ret: any = {};\n keys.forEach((key) => {\n ret[key] = obj[key];\n });\n\n return ret;\n}\n","import { omit } from \"./omit\";\nimport { pick } from \"./pick\";\n\n/**\n * TODO\n * @param obj\n * @param keys\n * @returns [variants, props]\n */\nexport function extractVariantsFromProps<T, K extends keyof T>(\n obj: T,\n ...keys: K[]\n): [Pick<T, K>, Omit<T, K>] {\n const variants = pick(obj, ...keys);\n const rest = omit(obj, ...keys);\n\n return [variants, rest];\n}\n","export function mergeClasses(...classes: (string | undefined)[]): string {\n return classes.filter((cls): cls is string => Boolean(cls)).join(\" \");\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACCA,6BAA0C;AACnC,IAAI,qBAAiB,uBAAAA,iBAAO,EAAC,kBAAiB,oCAAmC,mBAAkB,EAAC,MAAK,EAAC,KAAI,2CAA0C,KAAI,0CAAyC,EAAC,GAAE,iBAAgB,EAAC,MAAK,IAAG,GAAE,kBAAiB,CAAC,EAAC,CAAC;;;ACDvP,IAAI,oBAAoB;;;ACDxB,SAAS,KAA2B,QAAW,MAAuB;AAC3E,QAAM,MAAM,EAAE,GAAG,IAAI;AACrB,OAAK,QAAQ,CAAC,QAAQ;AACpB,WAAO,IAAI,GAAG;AAAA,EAChB,CAAC;AAED,SAAO;AACT;;;ACJO,SAAS,KAA2B,QAAW,MAAuB;AAE3E,QAAM,MAAW,CAAC;AAClB,OAAK,QAAQ,CAAC,QAAQ;AACpB,QAAI,GAAG,IAAI,IAAI,GAAG;AAAA,EACpB,CAAC;AAED,SAAO;AACT;;;ACFO,SAAS,yBACd,QACG,MACuB;AAC1B,QAAM,WAAW,KAAK,KAAK,GAAG,IAAI;AAClC,QAAM,OAAO,KAAK,KAAK,GAAG,IAAI;AAE9B,SAAO,CAAC,UAAU,IAAI;AACxB;;;ACjBO,SAAS,gBAAgB,SAAyC;AACvE,SAAO,QAAQ,OAAO,CAAC,QAAuB,QAAQ,GAAG,CAAC,EAAE,KAAK,GAAG;AACtE;;;ANEA,wBAAmC;AACnC,yBAA0B;AAkBlB;AAdD,IAAM,WAAW,CAAC,EAAE,GAAG,MAAM,MAAqB;AACvD,QAAM,CAAC,UAAU,IAAI,IAAI;AAAA,IACvB;AAAA,IACA,GAAG,eAAe,SAAS;AAAA,EAC7B;AAEA,QAAM,WAAW,eAAe,QAAQ;AAExC,SACE;AAAA,IAAmB;AAAA,IAAlB;AAAA,MACE,GAAG;AAAA,MACJ,WAAW,aAAa,UAAU,KAAK,SAAS;AAAA,MAEhD,sDAAmB,qCAAlB,EAAoC,WAAW,mBAC9C,sDAAC,gCAAU,GACb;AAAA;AAAA,EACF;AAEJ;","names":["_7a468"]}
|
|
@@ -3,8 +3,8 @@ import {
|
|
|
3
3
|
checkboxRecipe
|
|
4
4
|
} from "../chunk-5ZOT2LOO.mjs";
|
|
5
5
|
import {
|
|
6
|
-
|
|
7
|
-
} from "../chunk-
|
|
6
|
+
extractVariantsFromProps
|
|
7
|
+
} from "../chunk-UPZYS6TE.mjs";
|
|
8
8
|
import {
|
|
9
9
|
mergeClasses
|
|
10
10
|
} from "../chunk-7EGQM3ZL.mjs";
|
|
@@ -14,12 +14,16 @@ import * as CheckboxPrimitive from "@radix-ui/react-checkbox";
|
|
|
14
14
|
import { CheckIcon } from "@radix-ui/react-icons";
|
|
15
15
|
import { jsx } from "react/jsx-runtime";
|
|
16
16
|
var Checkbox = ({ ...props }) => {
|
|
17
|
-
const
|
|
17
|
+
const [variants, rest] = extractVariantsFromProps(
|
|
18
|
+
props,
|
|
19
|
+
...checkboxRecipe.variants()
|
|
20
|
+
);
|
|
21
|
+
const checkbox = checkboxRecipe(variants);
|
|
18
22
|
return /* @__PURE__ */ jsx(
|
|
19
23
|
CheckboxPrimitive.Root,
|
|
20
24
|
{
|
|
21
|
-
...
|
|
22
|
-
className: mergeClasses(checkbox,
|
|
25
|
+
...rest,
|
|
26
|
+
className: mergeClasses(checkbox, rest.className),
|
|
23
27
|
children: /* @__PURE__ */ jsx(CheckboxPrimitive.CheckboxIndicator, { className: checkboxIndicator, children: /* @__PURE__ */ jsx(CheckIcon, {}) })
|
|
24
28
|
}
|
|
25
29
|
);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/components/checkbox.tsx"],"sourcesContent":["import { CheckboxVariants, checkboxRecipe } from \"@/theme/recipes/checkbox.css\";\nimport { checkboxIndicator } from \"@/theme/styles/checkbox.css\";\nimport {
|
|
1
|
+
{"version":3,"sources":["../../src/components/checkbox.tsx"],"sourcesContent":["import { CheckboxVariants, checkboxRecipe } from \"@/theme/recipes/checkbox.css\";\nimport { checkboxIndicator } from \"@/theme/styles/checkbox.css\";\nimport { extractVariantsFromProps } from \"@/utils/extract-variants\";\nimport { mergeClasses } from \"@/utils/merge-classes\";\nimport * as CheckboxPrimitive from \"@radix-ui/react-checkbox\";\nimport { CheckIcon } from \"@radix-ui/react-icons\";\n\nexport type CheckboxProps = CheckboxPrimitive.CheckboxProps & CheckboxVariants;\n\nexport const Checkbox = ({ ...props }: CheckboxProps) => {\n const [variants, rest] = extractVariantsFromProps(\n props,\n ...checkboxRecipe.variants(),\n );\n\n const checkbox = checkboxRecipe(variants);\n\n return (\n <CheckboxPrimitive.Root\n {...rest}\n className={mergeClasses(checkbox, rest.className)}\n >\n <CheckboxPrimitive.CheckboxIndicator className={checkboxIndicator}>\n <CheckIcon />\n </CheckboxPrimitive.CheckboxIndicator>\n </CheckboxPrimitive.Root>\n );\n};\n"],"mappings":";;;;;;;;;;;;AAIA,YAAY,uBAAuB;AACnC,SAAS,iBAAiB;AAkBlB;AAdD,IAAM,WAAW,CAAC,EAAE,GAAG,MAAM,MAAqB;AACvD,QAAM,CAAC,UAAU,IAAI,IAAI;AAAA,IACvB;AAAA,IACA,GAAG,eAAe,SAAS;AAAA,EAC7B;AAEA,QAAM,WAAW,eAAe,QAAQ;AAExC,SACE;AAAA,IAAmB;AAAA,IAAlB;AAAA,MACE,GAAG;AAAA,MACJ,WAAW,aAAa,UAAU,KAAK,SAAS;AAAA,MAEhD,8BAAmB,qCAAlB,EAAoC,WAAW,mBAC9C,8BAAC,aAAU,GACb;AAAA;AAAA,EACF;AAEJ;","names":[]}
|
|
@@ -7,4 +7,4 @@ declare const defaultElement = "div";
|
|
|
7
7
|
type ContainerProps = ComponentProps<typeof defaultElement, ContainerVariants>;
|
|
8
8
|
declare const Container: ({ asChild, ...props }: ContainerProps) => react_jsx_runtime.JSX.Element;
|
|
9
9
|
|
|
10
|
-
export { Container };
|
|
10
|
+
export { Container, type ContainerProps };
|
|
@@ -7,4 +7,4 @@ declare const defaultElement = "div";
|
|
|
7
7
|
type ContainerProps = ComponentProps<typeof defaultElement, ContainerVariants>;
|
|
8
8
|
declare const Container: ({ asChild, ...props }: ContainerProps) => react_jsx_runtime.JSX.Element;
|
|
9
9
|
|
|
10
|
-
export { Container };
|
|
10
|
+
export { Container, type ContainerProps };
|
|
@@ -28,9 +28,13 @@ module.exports = __toCommonJS(container_exports);
|
|
|
28
28
|
var import_createRuntimeFn = require("@vanilla-extract/recipes/createRuntimeFn");
|
|
29
29
|
var containerRecipe = (0, import_createRuntimeFn.createRuntimeFn)({ defaultClassName: "container_containerRecipe__1mebzt0", variantClassNames: { size: { "1": "container_containerRecipe_size_1__1mebzt1", "2": "container_containerRecipe_size_2__1mebzt2", "3": "container_containerRecipe_size_3__1mebzt3", "4": "container_containerRecipe_size_4__1mebzt4" } }, defaultVariants: { size: "4" }, compoundVariants: [] });
|
|
30
30
|
|
|
31
|
-
// src/utils/
|
|
32
|
-
function
|
|
33
|
-
|
|
31
|
+
// src/utils/omit.ts
|
|
32
|
+
function omit(obj, ...keys) {
|
|
33
|
+
const ret = { ...obj };
|
|
34
|
+
keys.forEach((key) => {
|
|
35
|
+
delete ret[key];
|
|
36
|
+
});
|
|
37
|
+
return ret;
|
|
34
38
|
}
|
|
35
39
|
|
|
36
40
|
// src/utils/pick.ts
|
|
@@ -42,15 +46,30 @@ function pick(obj, ...keys) {
|
|
|
42
46
|
return ret;
|
|
43
47
|
}
|
|
44
48
|
|
|
49
|
+
// src/utils/extract-variants.ts
|
|
50
|
+
function extractVariantsFromProps(obj, ...keys) {
|
|
51
|
+
const variants = pick(obj, ...keys);
|
|
52
|
+
const rest = omit(obj, ...keys);
|
|
53
|
+
return [variants, rest];
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
// src/utils/merge-classes.ts
|
|
57
|
+
function mergeClasses(...classes) {
|
|
58
|
+
return classes.filter((cls) => Boolean(cls)).join(" ");
|
|
59
|
+
}
|
|
60
|
+
|
|
45
61
|
// src/components/container.tsx
|
|
46
62
|
var import_react_slot = require("@radix-ui/react-slot");
|
|
47
63
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
48
64
|
var defaultElement = "div";
|
|
49
65
|
var Container = ({ asChild, ...props }) => {
|
|
50
|
-
const variants =
|
|
66
|
+
const [variants, rest] = extractVariantsFromProps(
|
|
67
|
+
props,
|
|
68
|
+
...containerRecipe.variants()
|
|
69
|
+
);
|
|
51
70
|
const container = containerRecipe(variants);
|
|
52
71
|
const Comp = asChild ? import_react_slot.Slot : defaultElement;
|
|
53
|
-
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Comp, { ...
|
|
72
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Comp, { ...rest, className: mergeClasses(container, rest.className), children: rest.children });
|
|
54
73
|
};
|
|
55
74
|
// Annotate the CommonJS export names for ESM import in node:
|
|
56
75
|
0 && (module.exports = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/components/container.tsx","../../src/theme/recipes/container.css.ts","../../src/utils/
|
|
1
|
+
{"version":3,"sources":["../../src/components/container.tsx","../../src/theme/recipes/container.css.ts","../../src/utils/omit.ts","../../src/utils/pick.ts","../../src/utils/extract-variants.ts","../../src/utils/merge-classes.ts"],"sourcesContent":["import {\n ContainerVariants,\n containerRecipe,\n} from \"@/theme/recipes/container.css\";\nimport { ComponentProps } from \"@/types/component-props\";\nimport { extractVariantsFromProps } from \"@/utils/extract-variants\";\nimport { mergeClasses } from \"@/utils/merge-classes\";\nimport { Slot } from \"@radix-ui/react-slot\";\n\nconst defaultElement = \"div\";\n\nexport type ContainerProps = ComponentProps<\n typeof defaultElement,\n ContainerVariants\n>;\n\nexport const Container = ({ asChild, ...props }: ContainerProps) => {\n const [variants, rest] = extractVariantsFromProps(\n props,\n ...containerRecipe.variants(),\n );\n const container = containerRecipe(variants);\n const Comp = asChild ? Slot : defaultElement;\n\n return (\n <Comp {...rest} className={mergeClasses(container, rest.className)}>\n {rest.children}\n </Comp>\n );\n};\n","import 'src/theme/recipes/container.css.ts.vanilla.css?source=LmNvbnRhaW5lcl9jb250YWluZXJSZWNpcGVfXzFtZWJ6dDAgewogIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgZmxleC1zaHJpbms6IDA7CiAgbWFyZ2luLWxlZnQ6IGF1dG87CiAgbWFyZ2luLXJpZ2h0OiBhdXRvOwogIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2UtNV9fMTluYmU4ZDQpOwogIHBhZGRpbmctcmlnaHQ6IHZhcigtLXNwYWNlLTVfXzE5bmJlOGQ0KTsKfQouY29udGFpbmVyX2NvbnRhaW5lclJlY2lwZV9zaXplXzFfXzFtZWJ6dDEgewogIG1heC13aWR0aDogNDMwcHg7Cn0KLmNvbnRhaW5lcl9jb250YWluZXJSZWNpcGVfc2l6ZV8yX18xbWVienQyIHsKICBtYXgtd2lkdGg6IDcxNXB4Owp9Ci5jb250YWluZXJfY29udGFpbmVyUmVjaXBlX3NpemVfM19fMW1lYnp0MyB7CiAgbWF4LXdpZHRoOiAxMTQ1cHg7Cn0KLmNvbnRhaW5lcl9jb250YWluZXJSZWNpcGVfc2l6ZV80X18xbWVienQ0IHsKICBtYXgtd2lkdGg6IG5vbmU7Cn0=';\nimport { createRuntimeFn as _7a468 } from '@vanilla-extract/recipes/createRuntimeFn';\nexport var containerRecipe = _7a468({defaultClassName:'container_containerRecipe__1mebzt0',variantClassNames:{size:{'1':'container_containerRecipe_size_1__1mebzt1','2':'container_containerRecipe_size_2__1mebzt2','3':'container_containerRecipe_size_3__1mebzt3','4':'container_containerRecipe_size_4__1mebzt4'}},defaultVariants:{size:'4'},compoundVariants:[]});","export function omit<T, K extends keyof T>(obj: T, ...keys: K[]): Omit<T, K> {\n const ret = { ...obj };\n keys.forEach((key) => {\n delete ret[key];\n });\n\n return ret;\n}\n","/**\n * https://stackoverflow.com/a/47232883\n */\nexport function pick<T, K extends keyof T>(obj: T, ...keys: K[]): Pick<T, K> {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const ret: any = {};\n keys.forEach((key) => {\n ret[key] = obj[key];\n });\n\n return ret;\n}\n","import { omit } from \"./omit\";\nimport { pick } from \"./pick\";\n\n/**\n * TODO\n * @param obj\n * @param keys\n * @returns [variants, props]\n */\nexport function extractVariantsFromProps<T, K extends keyof T>(\n obj: T,\n ...keys: K[]\n): [Pick<T, K>, Omit<T, K>] {\n const variants = pick(obj, ...keys);\n const rest = omit(obj, ...keys);\n\n return [variants, rest];\n}\n","export function mergeClasses(...classes: (string | undefined)[]): string {\n return classes.filter((cls): cls is string => Boolean(cls)).join(\" \");\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACCA,6BAA0C;AACnC,IAAI,sBAAkB,uBAAAA,iBAAO,EAAC,kBAAiB,sCAAqC,mBAAkB,EAAC,MAAK,EAAC,KAAI,6CAA4C,KAAI,6CAA4C,KAAI,6CAA4C,KAAI,4CAA2C,EAAC,GAAE,iBAAgB,EAAC,MAAK,IAAG,GAAE,kBAAiB,CAAC,EAAC,CAAC;;;ACF9V,SAAS,KAA2B,QAAW,MAAuB;AAC3E,QAAM,MAAM,EAAE,GAAG,IAAI;AACrB,OAAK,QAAQ,CAAC,QAAQ;AACpB,WAAO,IAAI,GAAG;AAAA,EAChB,CAAC;AAED,SAAO;AACT;;;ACJO,SAAS,KAA2B,QAAW,MAAuB;AAE3E,QAAM,MAAW,CAAC;AAClB,OAAK,QAAQ,CAAC,QAAQ;AACpB,QAAI,GAAG,IAAI,IAAI,GAAG;AAAA,EACpB,CAAC;AAED,SAAO;AACT;;;ACFO,SAAS,yBACd,QACG,MACuB;AAC1B,QAAM,WAAW,KAAK,KAAK,GAAG,IAAI;AAClC,QAAM,OAAO,KAAK,KAAK,GAAG,IAAI;AAE9B,SAAO,CAAC,UAAU,IAAI;AACxB;;;ACjBO,SAAS,gBAAgB,SAAyC;AACvE,SAAO,QAAQ,OAAO,CAAC,QAAuB,QAAQ,GAAG,CAAC,EAAE,KAAK,GAAG;AACtE;;;ALKA,wBAAqB;AAkBjB;AAhBJ,IAAM,iBAAiB;AAOhB,IAAM,YAAY,CAAC,EAAE,SAAS,GAAG,MAAM,MAAsB;AAClE,QAAM,CAAC,UAAU,IAAI,IAAI;AAAA,IACvB;AAAA,IACA,GAAG,gBAAgB,SAAS;AAAA,EAC9B;AACA,QAAM,YAAY,gBAAgB,QAAQ;AAC1C,QAAM,OAAO,UAAU,yBAAO;AAE9B,SACE,4CAAC,QAAM,GAAG,MAAM,WAAW,aAAa,WAAW,KAAK,SAAS,GAC9D,eAAK,UACR;AAEJ;","names":["_7a468"]}
|
|
@@ -2,8 +2,8 @@ import {
|
|
|
2
2
|
containerRecipe
|
|
3
3
|
} from "../chunk-PUW3KNR3.mjs";
|
|
4
4
|
import {
|
|
5
|
-
|
|
6
|
-
} from "../chunk-
|
|
5
|
+
extractVariantsFromProps
|
|
6
|
+
} from "../chunk-UPZYS6TE.mjs";
|
|
7
7
|
import {
|
|
8
8
|
mergeClasses
|
|
9
9
|
} from "../chunk-7EGQM3ZL.mjs";
|
|
@@ -13,10 +13,13 @@ import { Slot } from "@radix-ui/react-slot";
|
|
|
13
13
|
import { jsx } from "react/jsx-runtime";
|
|
14
14
|
var defaultElement = "div";
|
|
15
15
|
var Container = ({ asChild, ...props }) => {
|
|
16
|
-
const variants =
|
|
16
|
+
const [variants, rest] = extractVariantsFromProps(
|
|
17
|
+
props,
|
|
18
|
+
...containerRecipe.variants()
|
|
19
|
+
);
|
|
17
20
|
const container = containerRecipe(variants);
|
|
18
21
|
const Comp = asChild ? Slot : defaultElement;
|
|
19
|
-
return /* @__PURE__ */ jsx(Comp, { ...
|
|
22
|
+
return /* @__PURE__ */ jsx(Comp, { ...rest, className: mergeClasses(container, rest.className), children: rest.children });
|
|
20
23
|
};
|
|
21
24
|
export {
|
|
22
25
|
Container
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/components/container.tsx"],"sourcesContent":["import {\n ContainerVariants,\n containerRecipe,\n} from \"@/theme/recipes/container.css\";\nimport { ComponentProps } from \"@/types/component-props\";\nimport {
|
|
1
|
+
{"version":3,"sources":["../../src/components/container.tsx"],"sourcesContent":["import {\n ContainerVariants,\n containerRecipe,\n} from \"@/theme/recipes/container.css\";\nimport { ComponentProps } from \"@/types/component-props\";\nimport { extractVariantsFromProps } from \"@/utils/extract-variants\";\nimport { mergeClasses } from \"@/utils/merge-classes\";\nimport { Slot } from \"@radix-ui/react-slot\";\n\nconst defaultElement = \"div\";\n\nexport type ContainerProps = ComponentProps<\n typeof defaultElement,\n ContainerVariants\n>;\n\nexport const Container = ({ asChild, ...props }: ContainerProps) => {\n const [variants, rest] = extractVariantsFromProps(\n props,\n ...containerRecipe.variants(),\n );\n const container = containerRecipe(variants);\n const Comp = asChild ? Slot : defaultElement;\n\n return (\n <Comp {...rest} className={mergeClasses(container, rest.className)}>\n {rest.children}\n </Comp>\n );\n};\n"],"mappings":";;;;;;;;;;;AAOA,SAAS,YAAY;AAkBjB;AAhBJ,IAAM,iBAAiB;AAOhB,IAAM,YAAY,CAAC,EAAE,SAAS,GAAG,MAAM,MAAsB;AAClE,QAAM,CAAC,UAAU,IAAI,IAAI;AAAA,IACvB;AAAA,IACA,GAAG,gBAAgB,SAAS;AAAA,EAC9B;AACA,QAAM,YAAY,gBAAgB,QAAQ;AAC1C,QAAM,OAAO,UAAU,OAAO;AAE9B,SACE,oBAAC,QAAM,GAAG,MAAM,WAAW,aAAa,WAAW,KAAK,SAAS,GAC9D,eAAK,UACR;AAEJ;","names":[]}
|
|
@@ -2,12 +2,15 @@ import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
|
2
2
|
import * as react from 'react';
|
|
3
3
|
import * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu';
|
|
4
4
|
|
|
5
|
+
type DropdownMenuProps = DropdownMenuPrimitive.DropdownMenuProps;
|
|
5
6
|
declare const DropdownMenu: react.FC<DropdownMenuPrimitive.DropdownMenuProps>;
|
|
7
|
+
type DropdownMenuTriggerProps = DropdownMenuPrimitive.DropdownMenuTriggerProps;
|
|
6
8
|
declare const DropdownMenuTrigger: react.ForwardRefExoticComponent<DropdownMenuPrimitive.DropdownMenuTriggerProps & react.RefAttributes<HTMLButtonElement>>;
|
|
7
9
|
type DropdownMenuContentProps = DropdownMenuPrimitive.DropdownMenuContentProps;
|
|
8
10
|
declare const DropdownMenuContent: ({ ...props }: DropdownMenuContentProps) => react_jsx_runtime.JSX.Element;
|
|
9
11
|
type DropdownMenuItemProps = DropdownMenuPrimitive.DropdownMenuItemProps;
|
|
10
12
|
declare const DropdownMenuItem: ({ ...props }: DropdownMenuItemProps) => react_jsx_runtime.JSX.Element;
|
|
13
|
+
type DropdownMenuGroupProps = DropdownMenuPrimitive.DropdownMenuGroupProps;
|
|
11
14
|
declare const DropdownMenuGroup: react.ForwardRefExoticComponent<DropdownMenuPrimitive.DropdownMenuGroupProps & react.RefAttributes<HTMLDivElement>>;
|
|
12
15
|
type DropdownMenuLabelProps = DropdownMenuPrimitive.DropdownMenuLabelProps;
|
|
13
16
|
declare const DropdownMenuLabel: ({ ...props }: DropdownMenuLabelProps) => react_jsx_runtime.JSX.Element;
|
|
@@ -15,8 +18,9 @@ type DropdownMenuSeparatorProps = DropdownMenuPrimitive.DropdownMenuSeparatorPro
|
|
|
15
18
|
declare const DropdownMenuSeparator: ({ ...props }: DropdownMenuSeparatorProps) => react_jsx_runtime.JSX.Element;
|
|
16
19
|
type DropdownMenuCheckboxItemProps = DropdownMenuPrimitive.DropdownMenuCheckboxItemProps;
|
|
17
20
|
declare const DropdownMenuCheckboxItem: ({ ...props }: DropdownMenuCheckboxItemProps) => react_jsx_runtime.JSX.Element;
|
|
21
|
+
type DropdownMenuRadioGroupProps = DropdownMenuPrimitive.DropdownMenuRadioGroupProps;
|
|
18
22
|
declare const DropdownMenuRadioGroup: react.ForwardRefExoticComponent<DropdownMenuPrimitive.DropdownMenuRadioGroupProps & react.RefAttributes<HTMLDivElement>>;
|
|
19
23
|
type DropdownMenuRadioItemProps = DropdownMenuPrimitive.DropdownMenuRadioItemProps;
|
|
20
24
|
declare const DropdownMenuRadioItem: ({ children, ...props }: DropdownMenuRadioItemProps) => react_jsx_runtime.JSX.Element;
|
|
21
25
|
|
|
22
|
-
export { DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuTrigger };
|
|
26
|
+
export { DropdownMenu, DropdownMenuCheckboxItem, type DropdownMenuCheckboxItemProps, DropdownMenuContent, type DropdownMenuContentProps, DropdownMenuGroup, type DropdownMenuGroupProps, DropdownMenuItem, type DropdownMenuItemProps, DropdownMenuLabel, type DropdownMenuLabelProps, type DropdownMenuProps, DropdownMenuRadioGroup, type DropdownMenuRadioGroupProps, DropdownMenuRadioItem, type DropdownMenuRadioItemProps, DropdownMenuSeparator, type DropdownMenuSeparatorProps, DropdownMenuTrigger, type DropdownMenuTriggerProps };
|
|
@@ -2,12 +2,15 @@ import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
|
2
2
|
import * as react from 'react';
|
|
3
3
|
import * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu';
|
|
4
4
|
|
|
5
|
+
type DropdownMenuProps = DropdownMenuPrimitive.DropdownMenuProps;
|
|
5
6
|
declare const DropdownMenu: react.FC<DropdownMenuPrimitive.DropdownMenuProps>;
|
|
7
|
+
type DropdownMenuTriggerProps = DropdownMenuPrimitive.DropdownMenuTriggerProps;
|
|
6
8
|
declare const DropdownMenuTrigger: react.ForwardRefExoticComponent<DropdownMenuPrimitive.DropdownMenuTriggerProps & react.RefAttributes<HTMLButtonElement>>;
|
|
7
9
|
type DropdownMenuContentProps = DropdownMenuPrimitive.DropdownMenuContentProps;
|
|
8
10
|
declare const DropdownMenuContent: ({ ...props }: DropdownMenuContentProps) => react_jsx_runtime.JSX.Element;
|
|
9
11
|
type DropdownMenuItemProps = DropdownMenuPrimitive.DropdownMenuItemProps;
|
|
10
12
|
declare const DropdownMenuItem: ({ ...props }: DropdownMenuItemProps) => react_jsx_runtime.JSX.Element;
|
|
13
|
+
type DropdownMenuGroupProps = DropdownMenuPrimitive.DropdownMenuGroupProps;
|
|
11
14
|
declare const DropdownMenuGroup: react.ForwardRefExoticComponent<DropdownMenuPrimitive.DropdownMenuGroupProps & react.RefAttributes<HTMLDivElement>>;
|
|
12
15
|
type DropdownMenuLabelProps = DropdownMenuPrimitive.DropdownMenuLabelProps;
|
|
13
16
|
declare const DropdownMenuLabel: ({ ...props }: DropdownMenuLabelProps) => react_jsx_runtime.JSX.Element;
|
|
@@ -15,8 +18,9 @@ type DropdownMenuSeparatorProps = DropdownMenuPrimitive.DropdownMenuSeparatorPro
|
|
|
15
18
|
declare const DropdownMenuSeparator: ({ ...props }: DropdownMenuSeparatorProps) => react_jsx_runtime.JSX.Element;
|
|
16
19
|
type DropdownMenuCheckboxItemProps = DropdownMenuPrimitive.DropdownMenuCheckboxItemProps;
|
|
17
20
|
declare const DropdownMenuCheckboxItem: ({ ...props }: DropdownMenuCheckboxItemProps) => react_jsx_runtime.JSX.Element;
|
|
21
|
+
type DropdownMenuRadioGroupProps = DropdownMenuPrimitive.DropdownMenuRadioGroupProps;
|
|
18
22
|
declare const DropdownMenuRadioGroup: react.ForwardRefExoticComponent<DropdownMenuPrimitive.DropdownMenuRadioGroupProps & react.RefAttributes<HTMLDivElement>>;
|
|
19
23
|
type DropdownMenuRadioItemProps = DropdownMenuPrimitive.DropdownMenuRadioItemProps;
|
|
20
24
|
declare const DropdownMenuRadioItem: ({ children, ...props }: DropdownMenuRadioItemProps) => react_jsx_runtime.JSX.Element;
|
|
21
25
|
|
|
22
|
-
export { DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuTrigger };
|
|
26
|
+
export { DropdownMenu, DropdownMenuCheckboxItem, type DropdownMenuCheckboxItemProps, DropdownMenuContent, type DropdownMenuContentProps, DropdownMenuGroup, type DropdownMenuGroupProps, DropdownMenuItem, type DropdownMenuItemProps, DropdownMenuLabel, type DropdownMenuLabelProps, type DropdownMenuProps, DropdownMenuRadioGroup, type DropdownMenuRadioGroupProps, DropdownMenuRadioItem, type DropdownMenuRadioItemProps, DropdownMenuSeparator, type DropdownMenuSeparatorProps, DropdownMenuTrigger, type DropdownMenuTriggerProps };
|
|
@@ -68,6 +68,15 @@ var flexRecipe = (0, import_createRuntimeFn.createRuntimeFn)(function() {
|
|
|
68
68
|
return x;
|
|
69
69
|
}());
|
|
70
70
|
|
|
71
|
+
// src/utils/omit.ts
|
|
72
|
+
function omit(obj, ...keys) {
|
|
73
|
+
const ret = { ...obj };
|
|
74
|
+
keys.forEach((key) => {
|
|
75
|
+
delete ret[key];
|
|
76
|
+
});
|
|
77
|
+
return ret;
|
|
78
|
+
}
|
|
79
|
+
|
|
71
80
|
// src/utils/pick.ts
|
|
72
81
|
function pick(obj, ...keys) {
|
|
73
82
|
const ret = {};
|
|
@@ -77,15 +86,25 @@ function pick(obj, ...keys) {
|
|
|
77
86
|
return ret;
|
|
78
87
|
}
|
|
79
88
|
|
|
89
|
+
// src/utils/extract-variants.ts
|
|
90
|
+
function extractVariantsFromProps(obj, ...keys) {
|
|
91
|
+
const variants = pick(obj, ...keys);
|
|
92
|
+
const rest = omit(obj, ...keys);
|
|
93
|
+
return [variants, rest];
|
|
94
|
+
}
|
|
95
|
+
|
|
80
96
|
// src/components/flex.tsx
|
|
81
97
|
var import_react_slot2 = require("@radix-ui/react-slot");
|
|
82
98
|
var import_jsx_runtime2 = require("react/jsx-runtime");
|
|
83
99
|
var defaultElement2 = "div";
|
|
84
100
|
var Flex = ({ asChild, ...props }) => {
|
|
85
|
-
const variants =
|
|
101
|
+
const [variants, rest] = extractVariantsFromProps(
|
|
102
|
+
props,
|
|
103
|
+
...flexRecipe.variants()
|
|
104
|
+
);
|
|
86
105
|
const flex = flexRecipe(variants);
|
|
87
106
|
const Comp = asChild ? import_react_slot2.Slot : defaultElement2;
|
|
88
|
-
return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(Comp, { ...
|
|
107
|
+
return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(Comp, { ...rest, className: mergeClasses(flex, rest.className), children: rest.children });
|
|
89
108
|
};
|
|
90
109
|
|
|
91
110
|
// src/theme/styles/menu.css.ts
|