@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
package/dist/components/grid.mjs
CHANGED
|
@@ -2,8 +2,8 @@ import {
|
|
|
2
2
|
gridRecipe
|
|
3
3
|
} from "../chunk-KE7EIF6L.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 Grid = ({ asChild, ...props }) => {
|
|
16
|
-
const variants =
|
|
16
|
+
const [variants, rest] = extractVariantsFromProps(
|
|
17
|
+
props,
|
|
18
|
+
...gridRecipe.variants()
|
|
19
|
+
);
|
|
17
20
|
const grid = gridRecipe(variants);
|
|
18
21
|
const Comp = asChild ? Slot : defaultElement;
|
|
19
|
-
return /* @__PURE__ */ jsx(Comp, { ...
|
|
22
|
+
return /* @__PURE__ */ jsx(Comp, { ...rest, className: mergeClasses(grid, rest.className), children: rest.children });
|
|
20
23
|
};
|
|
21
24
|
export {
|
|
22
25
|
Grid
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/components/grid.tsx"],"sourcesContent":["import { GridVariants, gridRecipe } from \"@/theme/recipes/grid.css\";\nimport { ComponentProps } from \"@/types/component-props\";\nimport {
|
|
1
|
+
{"version":3,"sources":["../../src/components/grid.tsx"],"sourcesContent":["import { GridVariants, gridRecipe } from \"@/theme/recipes/grid.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 GridProps = ComponentProps<typeof defaultElement, GridVariants>;\n\nexport const Grid = ({ asChild, ...props }: GridProps) => {\n const [variants, rest] = extractVariantsFromProps(\n props,\n ...gridRecipe.variants(),\n );\n const grid = gridRecipe(variants);\n const Comp = asChild ? Slot : defaultElement;\n\n return (\n <Comp {...rest} className={mergeClasses(grid, rest.className)}>\n {rest.children}\n </Comp>\n );\n};\n"],"mappings":";;;;;;;;;;;AAIA,SAAS,YAAY;AAejB;AAbJ,IAAM,iBAAiB;AAIhB,IAAM,OAAO,CAAC,EAAE,SAAS,GAAG,MAAM,MAAiB;AACxD,QAAM,CAAC,UAAU,IAAI,IAAI;AAAA,IACvB;AAAA,IACA,GAAG,WAAW,SAAS;AAAA,EACzB;AACA,QAAM,OAAO,WAAW,QAAQ;AAChC,QAAM,OAAO,UAAU,OAAO;AAE9B,SACE,oBAAC,QAAM,GAAG,MAAM,WAAW,aAAa,MAAM,KAAK,SAAS,GACzD,eAAK,UACR;AAEJ;","names":[]}
|
|
@@ -7,4 +7,4 @@ declare const defaultElement = "button";
|
|
|
7
7
|
type IconButtonProps = ComponentProps<typeof defaultElement, IconButtonVariants>;
|
|
8
8
|
declare const IconButton: ({ asChild, ...props }: IconButtonProps) => react_jsx_runtime.JSX.Element;
|
|
9
9
|
|
|
10
|
-
export { IconButton };
|
|
10
|
+
export { IconButton, type IconButtonProps };
|
|
@@ -7,4 +7,4 @@ declare const defaultElement = "button";
|
|
|
7
7
|
type IconButtonProps = ComponentProps<typeof defaultElement, IconButtonVariants>;
|
|
8
8
|
declare const IconButton: ({ asChild, ...props }: IconButtonProps) => react_jsx_runtime.JSX.Element;
|
|
9
9
|
|
|
10
|
-
export { IconButton };
|
|
10
|
+
export { IconButton, type IconButtonProps };
|
|
@@ -28,9 +28,13 @@ module.exports = __toCommonJS(icon_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,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/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/icon-button.css.ts
|
|
@@ -62,17 +81,20 @@ var import_react_slot2 = require("@radix-ui/react-slot");
|
|
|
62
81
|
var import_jsx_runtime2 = require("react/jsx-runtime");
|
|
63
82
|
var defaultElement2 = "button";
|
|
64
83
|
var IconButton = ({ asChild, ...props }) => {
|
|
65
|
-
const variants =
|
|
84
|
+
const [variants, rest] = extractVariantsFromProps(
|
|
85
|
+
props,
|
|
86
|
+
...iconButtonRecipe.variants()
|
|
87
|
+
);
|
|
66
88
|
const iconButton = iconButtonRecipe(variants);
|
|
67
89
|
const Comp = asChild ? import_react_slot2.Slot : defaultElement2;
|
|
68
90
|
return /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(
|
|
69
91
|
Comp,
|
|
70
92
|
{
|
|
71
|
-
...
|
|
72
|
-
className: mergeClasses(iconButton,
|
|
73
|
-
disabled:
|
|
93
|
+
...rest,
|
|
94
|
+
className: mergeClasses(iconButton, rest.className),
|
|
95
|
+
disabled: rest.disabled || Boolean(variants.loading),
|
|
74
96
|
children: [
|
|
75
|
-
|
|
97
|
+
rest.children,
|
|
76
98
|
variants.loading && /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(Spinner, { style: { position: "absolute" } })
|
|
77
99
|
]
|
|
78
100
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/components/icon-button.tsx","../../src/theme/recipes/spinner.css.ts","../../src/utils/
|
|
1
|
+
{"version":3,"sources":["../../src/components/icon-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/icon-button.css.ts"],"sourcesContent":["import { Spinner } from \"@/components/spinner\";\nimport {\n IconButtonVariants,\n iconButtonRecipe,\n} from \"@/theme/recipes/icon-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 IconButtonProps = ComponentProps<\n typeof defaultElement,\n IconButtonVariants\n>;\n\nexport const IconButton = ({ asChild, ...props }: IconButtonProps) => {\n const [variants, rest] = extractVariantsFromProps(\n props,\n ...iconButtonRecipe.variants(),\n );\n const iconButton = iconButtonRecipe(variants);\n const Comp = asChild ? Slot : defaultElement;\n\n return (\n <Comp\n {...rest}\n className={mergeClasses(iconButton, 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/icon-button.css.ts.vanilla.css?source=#H4sIAAAAAAAAA8WVzW7bMAyA730K77YeVMRJf1L31PWy817AkCXaZqpIhkQnaYa9+yDZTtS0Xryi2BAgtiiK/Pgj+gqF0axoiYzO/fu38PoDBDaQ55v7xX7pZsnPiyThCivNkGDtskSAJrAPXtw0wC3XArJEGw1eVhgrwbItSqqzZNaJdszhHnWVDduF2fkdia5R/CVLUCvUwEoFQe6fzNUW9XNvozSaWMnXqIJ2DRbpIHe4hyxJr5tweNU6wvKFCaMJNMXAwUkNWNWUJamXmJa88MjfcCkDaXBLsCMmQRjLCY0+qrUOLHOgQNBRyLZQPCMx4g2rsaqVd8SEUcZmCVmuXcMt6AAeltgZ5Uol6Wy2dn6jVxet9apPfvVw8evialK1soyXBDYUbSzt020VUBoLn2OsNpueS7TW+Qgbg11dJtuQ6HihQHZEXDxX1rRaDhnecPuVdQvHnOIE3f88z9N7XcBSpi+ry0NH1lyarW8mB5TMwi9tdu9Yeewfd0c7+9llVKsxx8vIcdMd6GPXhhhXymxBhqbrUsFgA5rc0FDn8qIM962ak20PSUq7FL9pueQLrhtjifvuO2fY36c8HUzO+wYIRbdcYuuGkP0KWXoIc17VIczhinVa3pxjN5GWCFr9jPiT0iTS+UC6OEc6j8zjKOltpCXHSE+VJpEuBtLrzyG9i7RgjPRUaRLp9UB6c450EZlfjZIuI61yjPRU6RzphlvkmvKqNo4G4NuR6fBq/n7McjTExqaPgzXXhOKpGwaR0+/+7DHA8uMBZlwQbuCDHI/hcARS/QVI/7kcUO6m5HrKuD3B7XwcCKd07Rjhf6vZG5B/X7Xg4dXnYXnuNpetUtEtNN7Lb9uZ25EpCgAA';\nimport { createRuntimeFn as _7a468 } from '@vanilla-extract/recipes/createRuntimeFn';\nexport var iconButtonRecipe = _7a468({defaultClassName:'icon-button_iconButtonRecipe__v93z8s0',variantClassNames:{loading:{true:'icon-button_iconButtonRecipe_loading_true__v93z8s1'},size:{'1':'icon-button_iconButtonRecipe_size_1__v93z8s2','2':'icon-button_iconButtonRecipe_size_2__v93z8s3','3':'icon-button_iconButtonRecipe_size_3__v93z8s4','4':'icon-button_iconButtonRecipe_size_4__v93z8s5'},variant:{ghost:'icon-button_iconButtonRecipe_variant_ghost__v93z8s6',outline:'icon-button_iconButtonRecipe_variant_outline__v93z8s7'},round:{true:'icon-button_iconButtonRecipe_round_true__v93z8s8'}},defaultVariants:{size:'1',variant:'ghost'},compoundVariants:[]});"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACEA,6BAA0C;AACnC,IAAI,oBAAgB,uBAAAA,iBAAO,EAAC,kBAAiB,mCAAkC,mBAAkB,EAAC,MAAK,EAAC,KAAI,0CAAyC,KAAI,0CAAyC,KAAI,0CAAyC,KAAI,0CAAyC,KAAI,0CAAyC,KAAI,0CAAyC,KAAI,0CAAyC,KAAI,0CAAyC,KAAI,yCAAwC,EAAC,GAAE,iBAAgB,EAAC,MAAK,IAAG,GAAE,kBAAiB,CAAC,EAAC,CAAC;;;ACH9iB,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;;;ACEA,wBAAqB;AAkBjB;AAhBJ,IAAM,iBAAiB;AAOhB,IAAM,UAAU,CAAC,EAAE,SAAS,GAAG,MAAM,MAAoB;AAC9D,QAAM,CAAC,UAAU,IAAI,IAAI;AAAA,IACvB;AAAA,IACA,GAAG,cAAc,SAAS;AAAA,EAC5B;AACA,QAAM,UAAU,cAAc,QAAQ;AACtC,QAAM,OAAO,UAAU,yBAAO;AAE9B,SACE,4CAAC,QAAM,GAAG,MAAM,WAAW,aAAa,SAAS,KAAK,SAAS,GAC5D,eAAK,UACR;AAEJ;;;ACzBA,IAAAC,0BAA0C;AACnC,IAAI,uBAAmB,wBAAAC,iBAAO,EAAC,kBAAiB,yCAAwC,mBAAkB,EAAC,SAAQ,EAAC,MAAK,qDAAoD,GAAE,MAAK,EAAC,KAAI,gDAA+C,KAAI,gDAA+C,KAAI,gDAA+C,KAAI,+CAA8C,GAAE,SAAQ,EAAC,OAAM,uDAAsD,SAAQ,wDAAuD,GAAE,OAAM,EAAC,MAAK,mDAAkD,EAAC,GAAE,iBAAgB,EAAC,MAAK,KAAI,SAAQ,QAAO,GAAE,kBAAiB,CAAC,EAAC,CAAC;;;APM/oB,IAAAC,qBAAqB;AAkBjB,IAAAC,sBAAA;AAhBJ,IAAMC,kBAAiB;AAOhB,IAAM,aAAa,CAAC,EAAE,SAAS,GAAG,MAAM,MAAuB;AACpE,QAAM,CAAC,UAAU,IAAI,IAAI;AAAA,IACvB;AAAA,IACA,GAAG,iBAAiB,SAAS;AAAA,EAC/B;AACA,QAAM,aAAa,iBAAiB,QAAQ;AAC5C,QAAM,OAAO,UAAU,0BAAOA;AAE9B,SACE;AAAA,IAAC;AAAA;AAAA,MACE,GAAG;AAAA,MACJ,WAAW,aAAa,YAAY,KAAK,SAAS;AAAA,MAClD,UAAU,KAAK,YAAY,QAAQ,SAAS,OAAO;AAAA,MAElD;AAAA,aAAK;AAAA,QACL,SAAS,WAAW,6CAAC,WAAQ,OAAO,EAAE,UAAU,WAAW,GAAG;AAAA;AAAA;AAAA,EACjE;AAEJ;","names":["_7a468","import_createRuntimeFn","_7a468","import_react_slot","import_jsx_runtime","defaultElement"]}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import {
|
|
2
2
|
IconButton
|
|
3
|
-
} from "../chunk-
|
|
3
|
+
} from "../chunk-OZ2DHFQP.mjs";
|
|
4
4
|
import "../chunk-HNVVD3WS.mjs";
|
|
5
|
-
import "../chunk-
|
|
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
|
IconButton
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/components/label.tsx","../../src/theme/recipes/text.css.ts","../../src/theme/styles/label.css.ts","../../src/utils/merge-classes.ts"],"sourcesContent":["import { TextVariants, textRecipe } from \"@/theme/recipes/text.css\";\nimport { label } from \"@/theme/styles/label.css\";\nimport { mergeClasses } from \"@/utils/merge-classes\";\nimport * as LabelPrimitive from \"@radix-ui/react-label\";\n\ntype LabelSizeVariants = \"1\" | \"2\";\n\
|
|
1
|
+
{"version":3,"sources":["../../src/components/label.tsx","../../src/theme/recipes/text.css.ts","../../src/theme/styles/label.css.ts","../../src/utils/merge-classes.ts"],"sourcesContent":["import { TextVariants, textRecipe } from \"@/theme/recipes/text.css\";\nimport { label } from \"@/theme/styles/label.css\";\nimport { mergeClasses } from \"@/utils/merge-classes\";\nimport * as LabelPrimitive from \"@radix-ui/react-label\";\n\ntype LabelSizeVariants = \"1\" | \"2\";\n\nexport type LabelProps = LabelPrimitive.LabelProps &\n Omit<TextVariants, \"size\"> & {\n size?: LabelSizeVariants;\n };\n\nconst textSize: Record<LabelSizeVariants, TextVariants[\"size\"]> = {\n 1: \"3\",\n 2: \"4\",\n};\n\nexport const Label = ({ color, size = \"1\", weight, ...props }: LabelProps) => {\n const text = textRecipe({ color, size: textSize[size], weight });\n\n return (\n <LabelPrimitive.Root\n {...props}\n className={mergeClasses(text, label, props.className)}\n >\n {props.children}\n </LabelPrimitive.Root>\n );\n};\n","import 'src/theme/recipes/text.css.ts.vanilla.css?source=#H4sIAAAAAAAAA5XUzXKCMBAH8DtPkWM9xBHED/TYN6iHHpkQFsw0BJugFTt9905QFqajib2AJNnff5Zgpg2cm9Re3oCLA6Rp2K5MfDrPyHdAiBQK6B5EuW82JNwGhFRMl0JtyMw+FLVq6Ndt+sT0C6V26L0bMVRDeZRMp2mYqAzWeVSoCZadmBZMNVQdK9CCb0jDMrvaDhi7KhfmIFm7IZms+QfWFawSsh3HGdo1MaSIyTb4CaZ/W+O1rHV60KJiusVGw67Rbq5HDVRMNYK/2kFDbxX9PRmS+KcryQCvVT7OirxZWDP8GuXl4MoDrWuNWXNvVrf+eh1lQOTs6Zg1cvhKYm+IFXZ9Ub9B/H6EERdIQ8QXHd5tup0Zb/lOXMDQEMnEAUYILn1ghCBzgHMEVz5wjmDmAGME1z4wRtD1DhcIJj5wgWDuAJcIMh+4RPDBx9qBKwQzH7hCsHCAawS5D1wjWDrABMHcBw7/nv198HpEpsN5eIVhgP97iD4OqSAXxwozimcysKaPqJ0RWS1zDCifCbhV9PzB8r9d18CZewYAAA==';\nimport { createRuntimeFn as _7a468 } from '@vanilla-extract/recipes/createRuntimeFn';\nexport var textRecipe = _7a468({defaultClassName:'text_textRecipe__1y7s4vx0',variantClassNames:{color:{primary:'text_textRecipe_color_primary__1y7s4vx1',secondary:'text_textRecipe_color_secondary__1y7s4vx2',error:'text_textRecipe_color_error__1y7s4vx3',subtle:'text_textRecipe_color_subtle__1y7s4vx4'},size:{'1':'text_textRecipe_size_1__1y7s4vx5','2':'text_textRecipe_size_2__1y7s4vx6','3':'text_textRecipe_size_3__1y7s4vx7','4':'text_textRecipe_size_4__1y7s4vx8','5':'text_textRecipe_size_5__1y7s4vx9','6':'text_textRecipe_size_6__1y7s4vxa','7':'text_textRecipe_size_7__1y7s4vxb','8':'text_textRecipe_size_8__1y7s4vxc','9':'text_textRecipe_size_9__1y7s4vxd'},weight:{regular:'text_textRecipe_weight_regular__1y7s4vxe',medium:'text_textRecipe_weight_medium__1y7s4vxf',bold:'text_textRecipe_weight_bold__1y7s4vxg'}},defaultVariants:{size:'3'},compoundVariants:[]});","import 'src/theme/styles/label.css.ts.vanilla.css?source=LmxhYmVsX2xhYmVsX19yMW5rZ3EwIHsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICBjdXJzb3I6IGRlZmF1bHQ7Cn0=';\nexport var label = 'label_label__r1nkgq0';","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,iBAAa,uBAAAA,iBAAO,EAAC,kBAAiB,6BAA4B,mBAAkB,EAAC,OAAM,EAAC,SAAQ,2CAA0C,WAAU,6CAA4C,OAAM,yCAAwC,QAAO,yCAAwC,GAAE,MAAK,EAAC,KAAI,oCAAmC,KAAI,oCAAmC,KAAI,oCAAmC,KAAI,oCAAmC,KAAI,oCAAmC,KAAI,oCAAmC,KAAI,oCAAmC,KAAI,oCAAmC,KAAI,mCAAkC,GAAE,QAAO,EAAC,SAAQ,4CAA2C,QAAO,2CAA0C,MAAK,wCAAuC,EAAC,GAAE,iBAAgB,EAAC,MAAK,IAAG,GAAE,kBAAiB,CAAC,EAAC,CAAC;;;ACDv1B,IAAI,QAAQ;;;ACDZ,SAAS,gBAAgB,SAAyC;AACvE,SAAO,QAAQ,OAAO,CAAC,QAAuB,QAAQ,GAAG,CAAC,EAAE,KAAK,GAAG;AACtE;;;AHCA,qBAAgC;AAkB5B;AATJ,IAAM,WAA4D;AAAA,EAChE,GAAG;AAAA,EACH,GAAG;AACL;AAEO,IAAM,QAAQ,CAAC,EAAE,OAAO,OAAO,KAAK,QAAQ,GAAG,MAAM,MAAkB;AAC5E,QAAM,OAAO,WAAW,EAAE,OAAO,MAAM,SAAS,IAAI,GAAG,OAAO,CAAC;AAE/D,SACE;AAAA,IAAgB;AAAA,IAAf;AAAA,MACE,GAAG;AAAA,MACJ,WAAW,aAAa,MAAM,OAAO,MAAM,SAAS;AAAA,MAEnD,gBAAM;AAAA;AAAA,EACT;AAEJ;","names":["_7a468"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/components/label.tsx"],"sourcesContent":["import { TextVariants, textRecipe } from \"@/theme/recipes/text.css\";\nimport { label } from \"@/theme/styles/label.css\";\nimport { mergeClasses } from \"@/utils/merge-classes\";\nimport * as LabelPrimitive from \"@radix-ui/react-label\";\n\ntype LabelSizeVariants = \"1\" | \"2\";\n\
|
|
1
|
+
{"version":3,"sources":["../../src/components/label.tsx"],"sourcesContent":["import { TextVariants, textRecipe } from \"@/theme/recipes/text.css\";\nimport { label } from \"@/theme/styles/label.css\";\nimport { mergeClasses } from \"@/utils/merge-classes\";\nimport * as LabelPrimitive from \"@radix-ui/react-label\";\n\ntype LabelSizeVariants = \"1\" | \"2\";\n\nexport type LabelProps = LabelPrimitive.LabelProps &\n Omit<TextVariants, \"size\"> & {\n size?: LabelSizeVariants;\n };\n\nconst textSize: Record<LabelSizeVariants, TextVariants[\"size\"]> = {\n 1: \"3\",\n 2: \"4\",\n};\n\nexport const Label = ({ color, size = \"1\", weight, ...props }: LabelProps) => {\n const text = textRecipe({ color, size: textSize[size], weight });\n\n return (\n <LabelPrimitive.Root\n {...props}\n className={mergeClasses(text, label, props.className)}\n >\n {props.children}\n </LabelPrimitive.Root>\n );\n};\n"],"mappings":";;;;;;;;;;;AAGA,YAAY,oBAAoB;AAkB5B;AATJ,IAAM,WAA4D;AAAA,EAChE,GAAG;AAAA,EACH,GAAG;AACL;AAEO,IAAM,QAAQ,CAAC,EAAE,OAAO,OAAO,KAAK,QAAQ,GAAG,MAAM,MAAkB;AAC5E,QAAM,OAAO,WAAW,EAAE,OAAO,MAAM,SAAS,IAAI,GAAG,OAAO,CAAC;AAE/D,SACE;AAAA,IAAgB;AAAA,IAAf;AAAA,MACE,GAAG;AAAA,MACJ,WAAW,aAAa,MAAM,OAAO,MAAM,SAAS;AAAA,MAEnD,gBAAM;AAAA;AAAA,EACT;AAEJ;","names":[]}
|
package/dist/components/link.js
CHANGED
|
@@ -28,9 +28,13 @@ module.exports = __toCommonJS(link_exports);
|
|
|
28
28
|
var import_createRuntimeFn = require("@vanilla-extract/recipes/createRuntimeFn");
|
|
29
29
|
var linkRecipe = (0, import_createRuntimeFn.createRuntimeFn)({ defaultClassName: "link_linkRecipe__q6sfqz0", variantClassNames: { color: { primary: "link_linkRecipe_color_primary__q6sfqz1", secondary: "link_linkRecipe_color_secondary__q6sfqz2", error: "link_linkRecipe_color_error__q6sfqz3", subtle: "link_linkRecipe_color_subtle__q6sfqz4" } }, defaultVariants: {}, 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/link.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 = "a";
|
|
49
65
|
var Link = ({ asChild, ...props }) => {
|
|
50
|
-
const variants =
|
|
66
|
+
const [variants, rest] = extractVariantsFromProps(
|
|
67
|
+
props,
|
|
68
|
+
...linkRecipe.variants()
|
|
69
|
+
);
|
|
51
70
|
const link = linkRecipe(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(link, 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/link.tsx","../../src/theme/recipes/link.css.ts","../../src/utils/
|
|
1
|
+
{"version":3,"sources":["../../src/components/link.tsx","../../src/theme/recipes/link.css.ts","../../src/utils/omit.ts","../../src/utils/pick.ts","../../src/utils/extract-variants.ts","../../src/utils/merge-classes.ts"],"sourcesContent":["import { LinkVariants, linkRecipe } from \"@/theme/recipes/link.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 = \"a\";\n\nexport type LinkProps = ComponentProps<typeof defaultElement, LinkVariants>;\n\nexport const Link = ({ asChild, ...props }: LinkProps) => {\n const [variants, rest] = extractVariantsFromProps(\n props,\n ...linkRecipe.variants(),\n );\n const link = linkRecipe(variants);\n const Comp = asChild ? Slot : defaultElement;\n\n return (\n <Comp {...rest} className={mergeClasses(link, rest.className)}>\n {rest.children}\n </Comp>\n );\n};\n","import 'src/theme/recipes/link.css.ts.vanilla.css?source=#H4sIAAAAAAAAA52STW6DMBCF9zmFl4lUR4RUVUOXvUF7AGTMgEdxbGKb/LTK3Ss7QKkKpKmQjPWYefP54aVEtU398gYcK0jT/ZMt9h8R+ZwRwiSWiqKDnU0IB+XAvMwIKVmVkAMzc0ptxTjQVZquNiqD5zxa+IJCwolaYVBtExJ5RddOooKEKK3ACw5OjubAtWEOtaIDX2uVg/E61UVhwSVkXZ2GermW2iQElQCDzlfQI2RbdNSxigoshcRSuLbOlBmbRw/hCbhhhgBf88Plty+vjfVSpfEaxmW2HEswKTSvbcixOX13jvh6jla27iwhIVZLzPv6EXMnuuqpxKYwhD6ACRjDDl3MgzYhg7QyuGPm3Jqugl0TT3MRYMeUQ/7qRUubhva96S5IzPeLiX/4H7NRagtcq7zHHd/k7lq+d71xOdzN/gfDUX4wRpuWfX2TPZRf194IiO9mnjAaz7rOnOxu3eNNWM/z3vS0Ewp+N+qozeUL5NB1ldoEAAA=';\nimport { createRuntimeFn as _7a468 } from '@vanilla-extract/recipes/createRuntimeFn';\nexport var linkRecipe = _7a468({defaultClassName:'link_linkRecipe__q6sfqz0',variantClassNames:{color:{primary:'link_linkRecipe_color_primary__q6sfqz1',secondary:'link_linkRecipe_color_secondary__q6sfqz2',error:'link_linkRecipe_color_error__q6sfqz3',subtle:'link_linkRecipe_color_subtle__q6sfqz4'}},defaultVariants:{},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,iBAAa,uBAAAA,iBAAO,EAAC,kBAAiB,4BAA2B,mBAAkB,EAAC,OAAM,EAAC,SAAQ,0CAAyC,WAAU,4CAA2C,OAAM,wCAAuC,QAAO,wCAAuC,EAAC,GAAE,iBAAgB,CAAC,GAAE,kBAAiB,CAAC,EAAC,CAAC;;;ACF1U,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;;;ALEA,wBAAqB;AAejB;AAbJ,IAAM,iBAAiB;AAIhB,IAAM,OAAO,CAAC,EAAE,SAAS,GAAG,MAAM,MAAiB;AACxD,QAAM,CAAC,UAAU,IAAI,IAAI;AAAA,IACvB;AAAA,IACA,GAAG,WAAW,SAAS;AAAA,EACzB;AACA,QAAM,OAAO,WAAW,QAAQ;AAChC,QAAM,OAAO,UAAU,yBAAO;AAE9B,SACE,4CAAC,QAAM,GAAG,MAAM,WAAW,aAAa,MAAM,KAAK,SAAS,GACzD,eAAK,UACR;AAEJ;","names":["_7a468"]}
|
package/dist/components/link.mjs
CHANGED
|
@@ -2,8 +2,8 @@ import {
|
|
|
2
2
|
linkRecipe
|
|
3
3
|
} from "../chunk-JGZLOTH3.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 = "a";
|
|
15
15
|
var Link = ({ asChild, ...props }) => {
|
|
16
|
-
const variants =
|
|
16
|
+
const [variants, rest] = extractVariantsFromProps(
|
|
17
|
+
props,
|
|
18
|
+
...linkRecipe.variants()
|
|
19
|
+
);
|
|
17
20
|
const link = linkRecipe(variants);
|
|
18
21
|
const Comp = asChild ? Slot : defaultElement;
|
|
19
|
-
return /* @__PURE__ */ jsx(Comp, { ...
|
|
22
|
+
return /* @__PURE__ */ jsx(Comp, { ...rest, className: mergeClasses(link, rest.className), children: rest.children });
|
|
20
23
|
};
|
|
21
24
|
export {
|
|
22
25
|
Link
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/components/link.tsx"],"sourcesContent":["import { LinkVariants, linkRecipe } from \"@/theme/recipes/link.css\";\nimport { ComponentProps } from \"@/types/component-props\";\nimport {
|
|
1
|
+
{"version":3,"sources":["../../src/components/link.tsx"],"sourcesContent":["import { LinkVariants, linkRecipe } from \"@/theme/recipes/link.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 = \"a\";\n\nexport type LinkProps = ComponentProps<typeof defaultElement, LinkVariants>;\n\nexport const Link = ({ asChild, ...props }: LinkProps) => {\n const [variants, rest] = extractVariantsFromProps(\n props,\n ...linkRecipe.variants(),\n );\n const link = linkRecipe(variants);\n const Comp = asChild ? Slot : defaultElement;\n\n return (\n <Comp {...rest} className={mergeClasses(link, rest.className)}>\n {rest.children}\n </Comp>\n );\n};\n"],"mappings":";;;;;;;;;;;AAIA,SAAS,YAAY;AAejB;AAbJ,IAAM,iBAAiB;AAIhB,IAAM,OAAO,CAAC,EAAE,SAAS,GAAG,MAAM,MAAiB;AACxD,QAAM,CAAC,UAAU,IAAI,IAAI;AAAA,IACvB;AAAA,IACA,GAAG,WAAW,SAAS;AAAA,EACzB;AACA,QAAM,OAAO,WAAW,QAAQ;AAChC,QAAM,OAAO,UAAU,OAAO;AAE9B,SACE,oBAAC,QAAM,GAAG,MAAM,WAAW,aAAa,MAAM,KAAK,SAAS,GACzD,eAAK,UACR;AAEJ;","names":[]}
|
|
@@ -18,7 +18,9 @@ type MenuCheckboxItemProps = MenuPrimitive.MenuCheckboxItemProps;
|
|
|
18
18
|
declare const MenuCheckboxItem: ({ ...props }: MenuCheckboxItemProps) => react_jsx_runtime.JSX.Element;
|
|
19
19
|
type MenuLabelProps = MenuPrimitive.MenuLabelProps;
|
|
20
20
|
declare const MenuLabel: ({ ...props }: MenuLabelProps) => react_jsx_runtime.JSX.Element;
|
|
21
|
+
type MenuRadioGroupProps = MenuPrimitive.MenuRadioGroupProps;
|
|
21
22
|
declare const MenuRadioGroup: react.ForwardRefExoticComponent<MenuPrimitive.MenuRadioGroupProps & react.RefAttributes<HTMLDivElement>>;
|
|
23
|
+
type MenuGroupProps = MenuPrimitive.MenuGroupProps;
|
|
22
24
|
declare const MenuGroup: react.ForwardRefExoticComponent<MenuPrimitive.MenuGroupProps & react.RefAttributes<HTMLDivElement>>;
|
|
23
25
|
|
|
24
|
-
export { Menu, MenuCheckboxItem, MenuContent, MenuGroup, MenuItem, MenuLabel, MenuRadioGroup, MenuRadioItem, MenuSeparator };
|
|
26
|
+
export { Menu, MenuCheckboxItem, type MenuCheckboxItemProps, MenuContent, type MenuContentProps, MenuGroup, type MenuGroupProps, MenuItem, type MenuItemProps, MenuLabel, type MenuLabelProps, type MenuProps, MenuRadioGroup, type MenuRadioGroupProps, MenuRadioItem, type MenuRadioItemProps, MenuSeparator, type MenuSeparatorProps };
|
|
@@ -18,7 +18,9 @@ type MenuCheckboxItemProps = MenuPrimitive.MenuCheckboxItemProps;
|
|
|
18
18
|
declare const MenuCheckboxItem: ({ ...props }: MenuCheckboxItemProps) => react_jsx_runtime.JSX.Element;
|
|
19
19
|
type MenuLabelProps = MenuPrimitive.MenuLabelProps;
|
|
20
20
|
declare const MenuLabel: ({ ...props }: MenuLabelProps) => react_jsx_runtime.JSX.Element;
|
|
21
|
+
type MenuRadioGroupProps = MenuPrimitive.MenuRadioGroupProps;
|
|
21
22
|
declare const MenuRadioGroup: react.ForwardRefExoticComponent<MenuPrimitive.MenuRadioGroupProps & react.RefAttributes<HTMLDivElement>>;
|
|
23
|
+
type MenuGroupProps = MenuPrimitive.MenuGroupProps;
|
|
22
24
|
declare const MenuGroup: react.ForwardRefExoticComponent<MenuPrimitive.MenuGroupProps & react.RefAttributes<HTMLDivElement>>;
|
|
23
25
|
|
|
24
|
-
export { Menu, MenuCheckboxItem, MenuContent, MenuGroup, MenuItem, MenuLabel, MenuRadioGroup, MenuRadioItem, MenuSeparator };
|
|
26
|
+
export { Menu, MenuCheckboxItem, type MenuCheckboxItemProps, MenuContent, type MenuContentProps, MenuGroup, type MenuGroupProps, MenuItem, type MenuItemProps, MenuLabel, type MenuLabelProps, type MenuProps, MenuRadioGroup, type MenuRadioGroupProps, MenuRadioItem, type MenuRadioItemProps, MenuSeparator, type MenuSeparatorProps };
|
package/dist/components/menu.js
CHANGED
|
@@ -67,6 +67,15 @@ var flexRecipe = (0, import_createRuntimeFn.createRuntimeFn)(function() {
|
|
|
67
67
|
return x;
|
|
68
68
|
}());
|
|
69
69
|
|
|
70
|
+
// src/utils/omit.ts
|
|
71
|
+
function omit(obj, ...keys) {
|
|
72
|
+
const ret = { ...obj };
|
|
73
|
+
keys.forEach((key) => {
|
|
74
|
+
delete ret[key];
|
|
75
|
+
});
|
|
76
|
+
return ret;
|
|
77
|
+
}
|
|
78
|
+
|
|
70
79
|
// src/utils/pick.ts
|
|
71
80
|
function pick(obj, ...keys) {
|
|
72
81
|
const ret = {};
|
|
@@ -76,15 +85,25 @@ function pick(obj, ...keys) {
|
|
|
76
85
|
return ret;
|
|
77
86
|
}
|
|
78
87
|
|
|
88
|
+
// src/utils/extract-variants.ts
|
|
89
|
+
function extractVariantsFromProps(obj, ...keys) {
|
|
90
|
+
const variants = pick(obj, ...keys);
|
|
91
|
+
const rest = omit(obj, ...keys);
|
|
92
|
+
return [variants, rest];
|
|
93
|
+
}
|
|
94
|
+
|
|
79
95
|
// src/components/flex.tsx
|
|
80
96
|
var import_react_slot2 = require("@radix-ui/react-slot");
|
|
81
97
|
var import_jsx_runtime2 = require("react/jsx-runtime");
|
|
82
98
|
var defaultElement2 = "div";
|
|
83
99
|
var Flex = ({ asChild, ...props }) => {
|
|
84
|
-
const variants =
|
|
100
|
+
const [variants, rest] = extractVariantsFromProps(
|
|
101
|
+
props,
|
|
102
|
+
...flexRecipe.variants()
|
|
103
|
+
);
|
|
85
104
|
const flex = flexRecipe(variants);
|
|
86
105
|
const Comp = asChild ? import_react_slot2.Slot : defaultElement2;
|
|
87
|
-
return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(Comp, { ...
|
|
106
|
+
return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(Comp, { ...rest, className: mergeClasses(flex, rest.className), children: rest.children });
|
|
88
107
|
};
|
|
89
108
|
|
|
90
109
|
// src/theme/styles/menu.css.ts
|