lizaui 9.0.13 → 9.0.16
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/index.es.js +1 -1
- package/dist/calendar/index.es.js +1 -1
- package/dist/checkbox/index.es.js +1 -1
- package/dist/chunks/{button-CA3Y2GZ1.js → button-B0fpJrMg.js} +2 -2
- package/dist/chunks/{button-CA3Y2GZ1.js.map → button-B0fpJrMg.js.map} +1 -1
- package/dist/chunks/{checkbox-qzZKMLRN.js → checkbox-C1Sssumg.js} +2 -2
- package/dist/chunks/{checkbox-qzZKMLRN.js.map → checkbox-C1Sssumg.js.map} +1 -1
- package/dist/chunks/{floating-ui.dom-N5ROFCJy.js → floating-ui.dom-B9hvXzxg.js} +11 -1
- package/dist/chunks/{floating-ui.dom-N5ROFCJy.js.map → floating-ui.dom-B9hvXzxg.js.map} +1 -1
- package/dist/chunks/{floating-ui.dom-NqZWWqNg.js → floating-ui.dom-DRSBqyFN.js} +14 -4
- package/dist/chunks/{floating-ui.dom-NqZWWqNg.js.map → floating-ui.dom-DRSBqyFN.js.map} +1 -1
- package/dist/chunks/floating-ui.react-dom-BUZLdP4-.js +294 -0
- package/dist/chunks/floating-ui.react-dom-BUZLdP4-.js.map +1 -0
- package/dist/chunks/floating-ui.react-dom-CI1b2uK3.js +310 -0
- package/dist/chunks/floating-ui.react-dom-CI1b2uK3.js.map +1 -0
- package/dist/chunks/{index-DiC9dI6_.js → index-B4RTH1-D.js} +4 -4
- package/dist/chunks/{index-DiC9dI6_.js.map → index-B4RTH1-D.js.map} +1 -1
- package/dist/chunks/{scroll-area-CgJodNZ_.js → scroll-area-B-5YmafW.js} +27 -27
- package/dist/chunks/{scroll-area-CgJodNZ_.js.map → scroll-area-B-5YmafW.js.map} +1 -1
- package/dist/chunks/{scroll-area-BcM0NCEM.js → scroll-area-WNAy-5-i.js} +3 -3
- package/dist/chunks/{scroll-area-BcM0NCEM.js.map → scroll-area-WNAy-5-i.js.map} +1 -1
- package/dist/chunks/{select-DyihZY-4.js → select-C9BYUpJm.js} +439 -83
- package/dist/chunks/select-C9BYUpJm.js.map +1 -0
- package/dist/chunks/{select-DaKy-WhC.js → select-CLIZOVIj.js} +366 -10
- package/dist/chunks/select-CLIZOVIj.js.map +1 -0
- package/dist/chunks/{textarea-By2Vv44z.js → textarea-D2_KC-J4.js} +587 -36
- package/dist/chunks/textarea-D2_KC-J4.js.map +1 -0
- package/dist/chunks/{textarea-ClJsk9Gp.js → textarea-_HQpXiCX.js} +586 -35
- package/dist/chunks/textarea-_HQpXiCX.js.map +1 -0
- package/dist/chunks/tooltip-DgenLCkC.js +1921 -0
- package/dist/chunks/tooltip-DgenLCkC.js.map +1 -0
- package/dist/chunks/tooltip-nCIpADfj.js +1937 -0
- package/dist/chunks/tooltip-nCIpADfj.js.map +1 -0
- package/dist/components/tooltip/tooltip.d.ts +1 -1
- package/dist/components/tooltip/tooltip.d.ts.map +1 -1
- package/dist/divider/index.es.js +1 -1
- package/dist/modal/index.es.js +1 -1
- package/dist/pagination/index.cjs.js +2 -2
- package/dist/pagination/index.es.js +3 -3
- package/dist/phone-input/index.cjs.js +2 -2
- package/dist/phone-input/index.es.js +3 -3
- package/dist/select-input/index.cjs.js +1 -1
- package/dist/select-input/index.es.js +2 -2
- package/dist/table/index.cjs.js +1 -1
- package/dist/table/index.es.js +2 -2
- package/dist/time-input/index.cjs.js +1 -1
- package/dist/time-input/index.es.js +2 -2
- package/dist/tooltip/index.cjs.js +1 -1
- package/dist/tooltip/index.es.js +1 -1
- package/dist/ui/index.cjs.js +290 -292
- package/dist/ui/index.cjs.js.map +1 -1
- package/dist/ui/index.es.js +180 -182
- package/dist/ui/index.es.js.map +1 -1
- package/package.json +2 -2
- package/dist/chunks/index-CuySPbdY.js +0 -559
- package/dist/chunks/index-CuySPbdY.js.map +0 -1
- package/dist/chunks/index-DBDBh58Q.js +0 -575
- package/dist/chunks/index-DBDBh58Q.js.map +0 -1
- package/dist/chunks/index-DNSql2gU.js +0 -662
- package/dist/chunks/index-DNSql2gU.js.map +0 -1
- package/dist/chunks/index-DlZi5TkN.js +0 -646
- package/dist/chunks/index-DlZi5TkN.js.map +0 -1
- package/dist/chunks/select-DaKy-WhC.js.map +0 -1
- package/dist/chunks/select-DyihZY-4.js.map +0 -1
- package/dist/chunks/textarea-By2Vv44z.js.map +0 -1
- package/dist/chunks/textarea-ClJsk9Gp.js.map +0 -1
- package/dist/chunks/tooltip-D4UvkD2G.js +0 -525
- package/dist/chunks/tooltip-D4UvkD2G.js.map +0 -1
- package/dist/chunks/tooltip-WGeoFpGx.js +0 -541
- package/dist/chunks/tooltip-WGeoFpGx.js.map +0 -1
package/dist/button/index.es.js
CHANGED
|
@@ -14,7 +14,7 @@ import { twMerge } from "tailwind-merge";
|
|
|
14
14
|
import { v4 } from "uuid";
|
|
15
15
|
import { L as LabelError } from "../chunks/label-error-BTCuInp7.js";
|
|
16
16
|
import { c as cn } from "../chunks/utils-H80jjgLf.js";
|
|
17
|
-
import { B as Button } from "../chunks/button-
|
|
17
|
+
import { B as Button } from "../chunks/button-B0fpJrMg.js";
|
|
18
18
|
function FaArrowLeft(props) {
|
|
19
19
|
return GenIcon({ "attr": { "viewBox": "0 0 448 512" }, "child": [{ "tag": "path", "attr": { "d": "M9.4 233.4c-12.5 12.5-12.5 32.8 0 45.3l160 160c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L109.2 288 416 288c17.7 0 32-14.3 32-32s-14.3-32-32-32l-306.7 0L214.6 118.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-160 160z" }, "child": [] }] })(props);
|
|
20
20
|
}
|
|
@@ -6,7 +6,7 @@ import { t as tv } from "./tv-B0li4IsO.js";
|
|
|
6
6
|
import { c as collapseAdjacentVariantBorders, d as dataFocusVisibleClasses } from "./classes-D2Fdo0zM.js";
|
|
7
7
|
import { c as colorVariants } from "./variants-CrIs_I54.js";
|
|
8
8
|
import clsx from "clsx";
|
|
9
|
-
import { S as Slot } from "./index-
|
|
9
|
+
import { S as Slot } from "./index-B4RTH1-D.js";
|
|
10
10
|
import { u as useRipple, R as Ripple } from "./ripple-CYv_cXE4.js";
|
|
11
11
|
const button = tv({
|
|
12
12
|
base: [
|
|
@@ -544,4 +544,4 @@ export {
|
|
|
544
544
|
Button as B,
|
|
545
545
|
button as b
|
|
546
546
|
};
|
|
547
|
-
//# sourceMappingURL=button-
|
|
547
|
+
//# sourceMappingURL=button-B0fpJrMg.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"button-CA3Y2GZ1.js","sources":["../../src/theme/color/button.ts","../../src/components/button/use-button.ts","../../src/components/button/spinner.tsx","../../src/components/button/button.tsx"],"sourcesContent":["import { tv } from \"@/lib/tv\";\nimport type { VariantProps } from \"tailwind-variants\";\nimport { collapseAdjacentVariantBorders, dataFocusVisibleClasses } from \"../classes\";\nimport { colorVariants } from \"../variants\";\n\n/**\n * Button wrapper **Tailwind Variants** component\n *\n * const classNames = button({...})\n *\n * @example\n * <button\n * className={classNames())}\n * data-pressed={true/false}\n * data-hover={true/false}\n * data-focus={true/false}\n * data-focus-visible={true/false}\n * >\n * Button\n * </button>\n */\nconst button = tv({\n\tbase: [\n\t\t\"z-0\",\n \"cursor-pointer\",\n\t\t\"group\",\n\t\t\"relative\",\n\t\t\"inline-flex\",\n\t\t\"items-center\",\n\t\t\"justify-center\",\n\t\t\"box-border\",\n\t\t\"appearance-none\",\n\t\t\"outline-none\",\n\t\t\"select-none\",\n\t\t\"whitespace-nowrap\",\n\t\t\"min-w-max\",\n\t\t\"font-medium\",\n\t\t\"subpixel-antialiased\",\n\t\t\"overflow-hidden\",\n\t\t\"tap-highlight-transparent\",\n\t\t\"transform-gpu data-[pressed=true]:scale-[0.97]\",\n\t\t// focus ring\n\t\t...dataFocusVisibleClasses,\n\t],\n\tvariants: {\n\t\tvariant: {\n\t\t\tsolid: \"\",\n\t\t\tbordered: \"border-[2px] bg-transparent\",\n\t\t\tlight: \"bg-transparent\",\n\t\t\tflat: \"\",\n\t\t\tfaded: \"border-[2px]\",\n\t\t\tshadow: \"\",\n\t\t\tghost: \"border-[2px] bg-transparent\",\n\t\t},\n\t\tsize: {\n\t\t\tsm: \"px-3 min-w-16 h-8 text-tiny gap-2 rounded-sm\",\n\t\t\tmd: \"px-4 min-w-20 h-10 text-sm gap-2 rounded-md\",\n\t\t\tlg: \"px-6 min-w-24 h-12 text-md gap-3 rounded-lg\",\n\t\t},\n\t\tcolor: {\n\t\t\tdefault: \"\",\n\t\t\tprimary: \"\",\n\t\t\tsecondary: \"\",\n\t\t\tsuccess: \"\",\n\t\t\twarning: \"\",\n\t\t\tdanger: \"\",\n\t\t},\n\t\tradius: {\n\t\t\tnone: \"rounded-none\",\n\t\t\tsm: \"rounded-sm\",\n\t\t\tmd: \"rounded-md\",\n\t\t\tlg: \"rounded-lg\",\n\t\t\tfull: \"rounded-full\",\n\t\t},\n\t\tfullWidth: {\n\t\t\ttrue: \"w-full\",\n\t\t},\n\t\tisDisabled: {\n\t\t\ttrue: \"opacity-80 pointer-events-none\",\n\t\t},\n\t\tisInGroup: {\n\t\t\ttrue: \"[&:not(:first-child):not(:last-child)]:rounded-none\",\n\t\t},\n\t\tisIconOnly: {\n\t\t\ttrue: \"px-0 !gap-0\",\n\t\t\tfalse: \"[&>svg]:max-w-[theme(spacing.8)]\",\n\t\t},\n\t\tdisableAnimation: {\n\t\t\ttrue: \"!transition-none data-[pressed=true]:scale-100\",\n\t\t\tfalse: \"transition-transform-colors-opacity motion-reduce:transition-none\",\n\t\t},\n\t},\n\tdefaultVariants: {\n\t\tsize: \"md\",\n\t\tvariant: \"solid\",\n\t\tcolor: \"default\",\n\t\tfullWidth: false,\n\t\tisDisabled: false,\n\t\tisInGroup: false,\n\t},\n\tcompoundVariants: [\n\t\t// solid / color\n\t\t{\n\t\t\tvariant: \"solid\",\n\t\t\tcolor: \"default\",\n\t\t\tclass: colorVariants.solid.default,\n\t\t},\n\t\t{\n\t\t\tvariant: \"solid\",\n\t\t\tcolor: \"primary\",\n\t\t\tclass: colorVariants.solid.primary,\n\t\t},\n\t\t{\n\t\t\tvariant: \"solid\",\n\t\t\tcolor: \"secondary\",\n\t\t\tclass: colorVariants.solid.secondary,\n\t\t},\n\t\t{\n\t\t\tvariant: \"solid\",\n\t\t\tcolor: \"success\",\n\t\t\tclass: colorVariants.solid.success,\n\t\t},\n\t\t{\n\t\t\tvariant: \"solid\",\n\t\t\tcolor: \"warning\",\n\t\t\tclass: colorVariants.solid.warning,\n\t\t},\n\t\t{\n\t\t\tvariant: \"solid\",\n\t\t\tcolor: \"danger\",\n\t\t\tclass: colorVariants.solid.danger,\n\t\t},\n\t\t// shadow / color\n\t\t{\n\t\t\tvariant: \"shadow\",\n\t\t\tcolor: \"default\",\n\t\t\tclass: colorVariants.shadow.default,\n\t\t},\n\t\t{\n\t\t\tvariant: \"shadow\",\n\t\t\tcolor: \"primary\",\n\t\t\tclass: colorVariants.shadow.primary,\n\t\t},\n\t\t{\n\t\t\tvariant: \"shadow\",\n\t\t\tcolor: \"secondary\",\n\t\t\tclass: colorVariants.shadow.secondary,\n\t\t},\n\t\t{\n\t\t\tvariant: \"shadow\",\n\t\t\tcolor: \"success\",\n\t\t\tclass: colorVariants.shadow.success,\n\t\t},\n\t\t{\n\t\t\tvariant: \"shadow\",\n\t\t\tcolor: \"warning\",\n\t\t\tclass: colorVariants.shadow.warning,\n\t\t},\n\t\t{\n\t\t\tvariant: \"shadow\",\n\t\t\tcolor: \"danger\",\n\t\t\tclass: colorVariants.shadow.danger,\n\t\t},\n\t\t// bordered / color\n\t\t{\n\t\t\tvariant: \"bordered\",\n\t\t\tcolor: \"default\",\n\t\t\tclass: colorVariants.bordered.default,\n\t\t},\n\t\t{\n\t\t\tvariant: \"bordered\",\n\t\t\tcolor: \"primary\",\n\t\t\tclass: colorVariants.bordered.primary,\n\t\t},\n\t\t{\n\t\t\tvariant: \"bordered\",\n\t\t\tcolor: \"secondary\",\n\t\t\tclass: colorVariants.bordered.secondary,\n\t\t},\n\t\t{\n\t\t\tvariant: \"bordered\",\n\t\t\tcolor: \"success\",\n\t\t\tclass: colorVariants.bordered.success,\n\t\t},\n\t\t{\n\t\t\tvariant: \"bordered\",\n\t\t\tcolor: \"warning\",\n\t\t\tclass: colorVariants.bordered.warning,\n\t\t},\n\t\t{\n\t\t\tvariant: \"bordered\",\n\t\t\tcolor: \"danger\",\n\t\t\tclass: colorVariants.bordered.danger,\n\t\t},\n\t\t// flat / color\n\t\t{\n\t\t\tvariant: \"flat\",\n\t\t\tcolor: \"default\",\n\t\t\tclass: colorVariants.flat.default,\n\t\t},\n\t\t{\n\t\t\tvariant: \"flat\",\n\t\t\tcolor: \"primary\",\n\t\t\tclass: colorVariants.flat.primary,\n\t\t},\n\t\t{\n\t\t\tvariant: \"flat\",\n\t\t\tcolor: \"secondary\",\n\t\t\tclass: colorVariants.flat.secondary,\n\t\t},\n\t\t{\n\t\t\tvariant: \"flat\",\n\t\t\tcolor: \"success\",\n\t\t\tclass: colorVariants.flat.success,\n\t\t},\n\t\t{\n\t\t\tvariant: \"flat\",\n\t\t\tcolor: \"warning\",\n\t\t\tclass: colorVariants.flat.warning,\n\t\t},\n\t\t{\n\t\t\tvariant: \"flat\",\n\t\t\tcolor: \"danger\",\n\t\t\tclass: colorVariants.flat.danger,\n\t\t},\n\t\t// faded / color\n\t\t{\n\t\t\tvariant: \"faded\",\n\t\t\tcolor: \"default\",\n\t\t\tclass: colorVariants.faded.default,\n\t\t},\n\t\t{\n\t\t\tvariant: \"faded\",\n\t\t\tcolor: \"primary\",\n\t\t\tclass: colorVariants.faded.primary,\n\t\t},\n\t\t{\n\t\t\tvariant: \"faded\",\n\t\t\tcolor: \"secondary\",\n\t\t\tclass: colorVariants.faded.secondary,\n\t\t},\n\t\t{\n\t\t\tvariant: \"faded\",\n\t\t\tcolor: \"success\",\n\t\t\tclass: colorVariants.faded.success,\n\t\t},\n\t\t{\n\t\t\tvariant: \"faded\",\n\t\t\tcolor: \"warning\",\n\t\t\tclass: colorVariants.faded.warning,\n\t\t},\n\t\t{\n\t\t\tvariant: \"faded\",\n\t\t\tcolor: \"danger\",\n\t\t\tclass: colorVariants.faded.danger,\n\t\t},\n\t\t// light / color\n\t\t{\n\t\t\tvariant: \"light\",\n\t\t\tcolor: \"default\",\n\t\t\tclass: [colorVariants.light.default, \"data-[hover=true]:bg-default/40\"],\n\t\t},\n\t\t{\n\t\t\tvariant: \"light\",\n\t\t\tcolor: \"primary\",\n\t\t\tclass: [colorVariants.light.primary, \"data-[hover=true]:bg-primary/20\"],\n\t\t},\n\t\t{\n\t\t\tvariant: \"light\",\n\t\t\tcolor: \"secondary\",\n\t\t\tclass: [colorVariants.light.secondary, \"data-[hover=true]:bg-secondary/20\"],\n\t\t},\n\t\t{\n\t\t\tvariant: \"light\",\n\t\t\tcolor: \"success\",\n\t\t\tclass: [colorVariants.light.success, \"data-[hover=true]:bg-success/20\"],\n\t\t},\n\t\t{\n\t\t\tvariant: \"light\",\n\t\t\tcolor: \"warning\",\n\t\t\tclass: [colorVariants.light.warning, \"data-[hover=true]:bg-warning/20\"],\n\t\t},\n\t\t{\n\t\t\tvariant: \"light\",\n\t\t\tcolor: \"danger\",\n\t\t\tclass: [colorVariants.light.danger, \"data-[hover=true]:bg-danger/20\"],\n\t\t},\n\t\t// ghost / color\n\t\t{\n\t\t\tvariant: \"ghost\",\n\t\t\tcolor: \"default\",\n\t\t\tclass: [colorVariants.ghost.default, \"data-[hover=true]:!bg-default\"],\n\t\t},\n\t\t{\n\t\t\tvariant: \"ghost\",\n\t\t\tcolor: \"primary\",\n\t\t\tclass: [colorVariants.ghost.primary, \"data-[hover=true]:!bg-primary data-[hover=true]:!text-primary-foreground\"],\n\t\t},\n\t\t{\n\t\t\tvariant: \"ghost\",\n\t\t\tcolor: \"secondary\",\n\t\t\tclass: [colorVariants.ghost.secondary, \"data-[hover=true]:!bg-secondary data-[hover=true]:!text-secondary-foreground\"],\n\t\t},\n\t\t{\n\t\t\tvariant: \"ghost\",\n\t\t\tcolor: \"success\",\n\t\t\tclass: [colorVariants.ghost.success, \"data-[hover=true]:!bg-success data-[hover=true]:!text-success-foreground\"],\n\t\t},\n\t\t{\n\t\t\tvariant: \"ghost\",\n\t\t\tcolor: \"warning\",\n\t\t\tclass: [colorVariants.ghost.warning, \"data-[hover=true]:!bg-warning data-[hover=true]:!text-warning-foreground\"],\n\t\t},\n\t\t{\n\t\t\tvariant: \"ghost\",\n\t\t\tcolor: \"danger\",\n\t\t\tclass: [colorVariants.ghost.danger, \"data-[hover=true]:!bg-danger data-[hover=true]:!text-danger-foreground\"],\n\t\t},\n\t\t// isInGroup / radius / size <-- radius not provided\n\t\t{\n\t\t\tisInGroup: true,\n\t\t\tclass: \"rounded-none first:rounded-s-medium last:rounded-e-medium\",\n\t\t},\n\t\t{\n\t\t\tisInGroup: true,\n\t\t\tsize: \"sm\",\n\t\t\tclass: \"rounded-none first:rounded-s-small last:rounded-e-small\",\n\t\t},\n\t\t{\n\t\t\tisInGroup: true,\n\t\t\tsize: \"md\",\n\t\t\tclass: \"rounded-none first:rounded-s-medium last:rounded-e-medium\",\n\t\t},\n\t\t{\n\t\t\tisInGroup: true,\n\t\t\tsize: \"lg\",\n\t\t\tclass: \"rounded-none first:rounded-s-large last:rounded-e-large\",\n\t\t},\n\t\t{\n\t\t\tisInGroup: true,\n\t\t\tisRounded: true,\n\t\t\tclass: \"rounded-none first:rounded-s-full last:rounded-e-full\",\n\t\t},\n\t\t// isInGroup / radius <-- radius provided\n\t\t{\n\t\t\tisInGroup: true,\n\t\t\tradius: \"none\",\n\t\t\tclass: \"rounded-none first:rounded-s-none last:rounded-e-none\",\n\t\t},\n\t\t{\n\t\t\tisInGroup: true,\n\t\t\tradius: \"sm\",\n\t\t\tclass: \"rounded-none first:rounded-s-small last:rounded-e-small\",\n\t\t},\n\t\t{\n\t\t\tisInGroup: true,\n\t\t\tradius: \"md\",\n\t\t\tclass: \"rounded-none first:rounded-s-medium last:rounded-e-medium\",\n\t\t},\n\t\t{\n\t\t\tisInGroup: true,\n\t\t\tradius: \"lg\",\n\t\t\tclass: \"rounded-none first:rounded-s-large last:rounded-e-large\",\n\t\t},\n\t\t{\n\t\t\tisInGroup: true,\n\t\t\tradius: \"full\",\n\t\t\tclass: \"rounded-none first:rounded-s-full last:rounded-e-full\",\n\t\t},\n\t\t// isInGroup / bordered / ghost\n\t\t{\n\t\t\tisInGroup: true,\n\t\t\tvariant: [\"ghost\", \"bordered\"],\n\t\t\tcolor: \"default\",\n\t\t\tclassName: collapseAdjacentVariantBorders.default,\n\t\t},\n\t\t{\n\t\t\tisInGroup: true,\n\t\t\tvariant: [\"ghost\", \"bordered\"],\n\t\t\tcolor: \"primary\",\n\t\t\tclassName: collapseAdjacentVariantBorders.primary,\n\t\t},\n\t\t{\n\t\t\tisInGroup: true,\n\t\t\tvariant: [\"ghost\", \"bordered\"],\n\t\t\tcolor: \"secondary\",\n\t\t\tclassName: collapseAdjacentVariantBorders.secondary,\n\t\t},\n\t\t{\n\t\t\tisInGroup: true,\n\t\t\tvariant: [\"ghost\", \"bordered\"],\n\t\t\tcolor: \"success\",\n\t\t\tclassName: collapseAdjacentVariantBorders.success,\n\t\t},\n\t\t{\n\t\t\tisInGroup: true,\n\t\t\tvariant: [\"ghost\", \"bordered\"],\n\t\t\tcolor: \"warning\",\n\t\t\tclassName: collapseAdjacentVariantBorders.warning,\n\t\t},\n\t\t{\n\t\t\tisInGroup: true,\n\t\t\tvariant: [\"ghost\", \"bordered\"],\n\t\t\tcolor: \"danger\",\n\t\t\tclassName: collapseAdjacentVariantBorders.danger,\n\t\t},\n\t\t{\n\t\t\tisIconOnly: true,\n\t\t\tsize: \"sm\",\n\t\t\tclass: \"min-w-8 w-8 h-8\",\n\t\t},\n\t\t{\n\t\t\tisIconOnly: true,\n\t\t\tsize: \"md\",\n\t\t\tclass: \"min-w-10 w-10 h-10\",\n\t\t},\n\t\t{\n\t\t\tisIconOnly: true,\n\t\t\tsize: \"lg\",\n\t\t\tclass: \"min-w-12 w-12 h-12\",\n\t\t},\n\t\t// variant / hover\n\t\t{\n\t\t\tvariant: [\"solid\", \"faded\", \"flat\", \"bordered\", \"shadow\"],\n\t\t\tclass: \"hover:opacity-80\",\n\t\t},\n\t],\n});\n\nexport type ButtonVariantProps = VariantProps<typeof button>;\n\nexport { button };\n","import { dataAttr, useDOMRef, type ReactRef } from \"@/functions\";\nimport { button, type ButtonVariantProps } from \"@/theme/color/button\";\nimport type { SlotsToClasses } from \"@/types\";\nimport clsx from \"clsx\";\nimport { isValidElement, cloneElement, useMemo, useCallback, useId } from \"react\";\n\nimport { Slot } from \"@radix-ui/react-slot\";\nimport type { ReactNode, MouseEventHandler, HTMLAttributes } from \"react\";\nimport type { RippleProps } from \"../ripple/ripple\";\nimport { useRipple } from \"../ripple/use-ripple\";\n\nexport interface UseButtonProps extends ButtonVariantProps, Omit<HTMLAttributes<HTMLElement>, keyof ButtonVariantProps> {\n\tref?: ReactRef<HTMLButtonElement | null>;\n\tid?: string;\n\tclassNames?: SlotsToClasses<ReturnType<typeof button>>;\n\tclassName?: string;\n\tasChild?: boolean;\n\tchildren?: ReactNode;\n\tisIconOnly?: boolean;\n\tisLoading?: boolean;\n\tdisabled?: boolean;\n\tstartContent?: ReactNode;\n\tendContent?: ReactNode;\n\tspinner?: ReactNode;\n\tspinnerPlacement?: \"start\" | \"end\";\n type?: \"button\" | \"submit\" | \"reset\";\n}\n\nexport function useButton(props: UseButtonProps) {\n\tconst {\n\t\tid,\n\t\tclassNames,\n\t\tclassName,\n\t\tasChild,\n\t\tchildren,\n\t\tisLoading = false,\n\t\tdisabled = false,\n\t\tisIconOnly = false,\n\t\tonClick,\n\t\tstartContent: startContentProp,\n\t\tendContent: endContentProp,\n\t\tspinner = null,\n\t\tspinnerPlacement = \"start\",\n type = \"button\",\n\t\t...rest\n\t} = props;\n\n\tconst domRef = useDOMRef(props.ref);\n\tconst buttonId = useId();\n\tconst resolvedId = id || buttonId;\n\n\tconst { onPress: onRipplePressHandler, onClear: onClearRipple, ripples } = useRipple();\n\n\tconst styles = useMemo(\n\t\t() =>\n\t\t\tbutton({\n\t\t\t\tsize: props.size,\n\t\t\t\tcolor: props.color,\n\t\t\t\tvariant: props.variant,\n\t\t\t\tradius: props.radius,\n\t\t\t\tfullWidth: props.fullWidth,\n\t\t\t\tisDisabled: disabled || isLoading,\n\t\t\t\tdisableAnimation: props.disableAnimation,\n\t\t\t\tisIconOnly: isIconOnly,\n\t\t\t\tisInGroup: props.isInGroup,\n\t\t\t\tclassName,\n\t\t\t}),\n\t\t[props, className, disabled, isLoading, isIconOnly],\n\t);\n\n\tconst handleClick: MouseEventHandler<HTMLElement> = useCallback(\n\t\t(e) => {\n\t\t\tif (disabled) {\n\t\t\t\te.preventDefault();\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tonClick?.(e);\n\t\t},\n\t\t[onClick, disabled],\n\t);\n\n\tconst getIconClone = (icon: ReactNode) =>\n\t\tisValidElement(icon)\n\t\t\t? cloneElement(icon, {\n\t\t\t\t\t// \"aria-hidden\": true,\n\t\t\t\t\t// \"focusable\": false,\n\t\t\t })\n\t\t\t: null;\n\n\tconst startContent = getIconClone(startContentProp);\n\tconst endContent = getIconClone(endContentProp);\n\n\tconst handlePointerDown = (e: React.PointerEvent<HTMLButtonElement>) => {\n\t\tconst rect = e.currentTarget.getBoundingClientRect();\n\t\tconst customEvent = {\n\t\t\ttarget: e.currentTarget,\n\t\t\tx: e.clientX - rect.left,\n\t\t\ty: e.clientY - rect.top,\n\t\t};\n\n\t\tonRipplePressHandler(customEvent);\n\t};\n\n\tconst getButtonProps = () => ({\n\t\t\"className\": clsx(styles, classNames?.base),\n\t\t\"data-disabled\": dataAttr(disabled),\n\t\t\"data-loading\": dataAttr(isLoading),\n\t\t\"onClick\": handleClick,\n\t\t\"onPointerDown\": handlePointerDown,\n\t\t\"data-slot\": \"button\",\n\t\t\"aria-disabled\": disabled,\n\t\t\"id\": resolvedId,\n \"type\": type,\n\t\t...rest,\n\t});\n\n\tconst getRippleProps = useCallback<() => RippleProps>(() => ({ ripples, onClear: onClearRipple }), [ripples, onClearRipple]);\n\n\tconst Component = asChild ? Slot : \"button\";\n\n\treturn {\n\t\tdomRef,\n\t\tisIconOnly,\n\t\tComponent,\n\t\tchildren,\n\t\tisLoading,\n\t\tspinner,\n\t\tspinnerPlacement,\n\t\tstartContent,\n\t\tendContent,\n\t\tgetButtonProps,\n\t\tgetRippleProps,\n\t};\n}\n\nexport type UseButtonReturn = ReturnType<typeof useButton>;\n","const Spinner = () => {\n\treturn (\n\t\t<div aria-label=\"Loading\" className=\"relative inline-flex flex-col gap-2 items-center justify-center\">\n\t\t\t<div className=\"relative flex w-5 h-5\">\n\t\t\t\t<i className=\"absolute w-full h-full rounded-full border-2 border-b-current animate-spinner-ease-spin border-solid border-t-transparent border-l-transparent border-r-transparent\" />\n\t\t\t\t<i className=\"absolute w-full h-full rounded-full border-2 border-b-current opacity-75 animate-spinner-linear-spin border-dotted border-t-transparent border-l-transparent border-r-transparent\" />\n\t\t\t</div>\n\t\t</div>\n\t);\n};\nexport default Spinner;\n","import { forwardRef, useMemo } from \"react\";\nimport { useButton, type UseButtonProps } from \"./use-button\";\nimport Ripple from \"../ripple/ripple\";\nimport Spinner from \"./spinner\";\n\nexport interface ButtonProps extends UseButtonProps {}\n\nconst Button = forwardRef<HTMLButtonElement, ButtonProps>((props, ref) => {\n\tconst {\n\t\tComponent,\n\t\tdomRef,\n\t\tchildren,\n\t\tisIconOnly,\n\t\tisLoading,\n\t\tspinner,\n\t\tspinnerPlacement,\n\t\tstartContent,\n\t\tendContent,\n\t\tgetButtonProps,\n\t\tgetRippleProps,\n\t} = useButton({\n\t\t...props,\n\t\tref,\n\t});\n\n\tconst fallbackSpinner = useMemo(() => <Spinner />, []);\n\tconst finalSpinner = spinner ?? fallbackSpinner;\n\n\treturn (\n\t\t<Component {...getButtonProps()} ref={domRef}>\n\t\t\t{startContent}\n\t\t\t{isLoading && spinnerPlacement === \"start\" && finalSpinner}\n\t\t\t{isLoading && isIconOnly ? null : children}\n\t\t\t{isLoading && spinnerPlacement === \"end\" && finalSpinner}\n\t\t\t{endContent}\n\t\t\t<Ripple {...getRippleProps()} />\n\t\t</Component>\n\t);\n});\n\nButton.displayName = \"Custom.Button\";\n\nexport default Button;\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"button-B0fpJrMg.js","sources":["../../src/theme/color/button.ts","../../src/components/button/use-button.ts","../../src/components/button/spinner.tsx","../../src/components/button/button.tsx"],"sourcesContent":["import { tv } from \"@/lib/tv\";\nimport type { VariantProps } from \"tailwind-variants\";\nimport { collapseAdjacentVariantBorders, dataFocusVisibleClasses } from \"../classes\";\nimport { colorVariants } from \"../variants\";\n\n/**\n * Button wrapper **Tailwind Variants** component\n *\n * const classNames = button({...})\n *\n * @example\n * <button\n * className={classNames())}\n * data-pressed={true/false}\n * data-hover={true/false}\n * data-focus={true/false}\n * data-focus-visible={true/false}\n * >\n * Button\n * </button>\n */\nconst button = tv({\n\tbase: [\n\t\t\"z-0\",\n \"cursor-pointer\",\n\t\t\"group\",\n\t\t\"relative\",\n\t\t\"inline-flex\",\n\t\t\"items-center\",\n\t\t\"justify-center\",\n\t\t\"box-border\",\n\t\t\"appearance-none\",\n\t\t\"outline-none\",\n\t\t\"select-none\",\n\t\t\"whitespace-nowrap\",\n\t\t\"min-w-max\",\n\t\t\"font-medium\",\n\t\t\"subpixel-antialiased\",\n\t\t\"overflow-hidden\",\n\t\t\"tap-highlight-transparent\",\n\t\t\"transform-gpu data-[pressed=true]:scale-[0.97]\",\n\t\t// focus ring\n\t\t...dataFocusVisibleClasses,\n\t],\n\tvariants: {\n\t\tvariant: {\n\t\t\tsolid: \"\",\n\t\t\tbordered: \"border-[2px] bg-transparent\",\n\t\t\tlight: \"bg-transparent\",\n\t\t\tflat: \"\",\n\t\t\tfaded: \"border-[2px]\",\n\t\t\tshadow: \"\",\n\t\t\tghost: \"border-[2px] bg-transparent\",\n\t\t},\n\t\tsize: {\n\t\t\tsm: \"px-3 min-w-16 h-8 text-tiny gap-2 rounded-sm\",\n\t\t\tmd: \"px-4 min-w-20 h-10 text-sm gap-2 rounded-md\",\n\t\t\tlg: \"px-6 min-w-24 h-12 text-md gap-3 rounded-lg\",\n\t\t},\n\t\tcolor: {\n\t\t\tdefault: \"\",\n\t\t\tprimary: \"\",\n\t\t\tsecondary: \"\",\n\t\t\tsuccess: \"\",\n\t\t\twarning: \"\",\n\t\t\tdanger: \"\",\n\t\t},\n\t\tradius: {\n\t\t\tnone: \"rounded-none\",\n\t\t\tsm: \"rounded-sm\",\n\t\t\tmd: \"rounded-md\",\n\t\t\tlg: \"rounded-lg\",\n\t\t\tfull: \"rounded-full\",\n\t\t},\n\t\tfullWidth: {\n\t\t\ttrue: \"w-full\",\n\t\t},\n\t\tisDisabled: {\n\t\t\ttrue: \"opacity-80 pointer-events-none\",\n\t\t},\n\t\tisInGroup: {\n\t\t\ttrue: \"[&:not(:first-child):not(:last-child)]:rounded-none\",\n\t\t},\n\t\tisIconOnly: {\n\t\t\ttrue: \"px-0 !gap-0\",\n\t\t\tfalse: \"[&>svg]:max-w-[theme(spacing.8)]\",\n\t\t},\n\t\tdisableAnimation: {\n\t\t\ttrue: \"!transition-none data-[pressed=true]:scale-100\",\n\t\t\tfalse: \"transition-transform-colors-opacity motion-reduce:transition-none\",\n\t\t},\n\t},\n\tdefaultVariants: {\n\t\tsize: \"md\",\n\t\tvariant: \"solid\",\n\t\tcolor: \"default\",\n\t\tfullWidth: false,\n\t\tisDisabled: false,\n\t\tisInGroup: false,\n\t},\n\tcompoundVariants: [\n\t\t// solid / color\n\t\t{\n\t\t\tvariant: \"solid\",\n\t\t\tcolor: \"default\",\n\t\t\tclass: colorVariants.solid.default,\n\t\t},\n\t\t{\n\t\t\tvariant: \"solid\",\n\t\t\tcolor: \"primary\",\n\t\t\tclass: colorVariants.solid.primary,\n\t\t},\n\t\t{\n\t\t\tvariant: \"solid\",\n\t\t\tcolor: \"secondary\",\n\t\t\tclass: colorVariants.solid.secondary,\n\t\t},\n\t\t{\n\t\t\tvariant: \"solid\",\n\t\t\tcolor: \"success\",\n\t\t\tclass: colorVariants.solid.success,\n\t\t},\n\t\t{\n\t\t\tvariant: \"solid\",\n\t\t\tcolor: \"warning\",\n\t\t\tclass: colorVariants.solid.warning,\n\t\t},\n\t\t{\n\t\t\tvariant: \"solid\",\n\t\t\tcolor: \"danger\",\n\t\t\tclass: colorVariants.solid.danger,\n\t\t},\n\t\t// shadow / color\n\t\t{\n\t\t\tvariant: \"shadow\",\n\t\t\tcolor: \"default\",\n\t\t\tclass: colorVariants.shadow.default,\n\t\t},\n\t\t{\n\t\t\tvariant: \"shadow\",\n\t\t\tcolor: \"primary\",\n\t\t\tclass: colorVariants.shadow.primary,\n\t\t},\n\t\t{\n\t\t\tvariant: \"shadow\",\n\t\t\tcolor: \"secondary\",\n\t\t\tclass: colorVariants.shadow.secondary,\n\t\t},\n\t\t{\n\t\t\tvariant: \"shadow\",\n\t\t\tcolor: \"success\",\n\t\t\tclass: colorVariants.shadow.success,\n\t\t},\n\t\t{\n\t\t\tvariant: \"shadow\",\n\t\t\tcolor: \"warning\",\n\t\t\tclass: colorVariants.shadow.warning,\n\t\t},\n\t\t{\n\t\t\tvariant: \"shadow\",\n\t\t\tcolor: \"danger\",\n\t\t\tclass: colorVariants.shadow.danger,\n\t\t},\n\t\t// bordered / color\n\t\t{\n\t\t\tvariant: \"bordered\",\n\t\t\tcolor: \"default\",\n\t\t\tclass: colorVariants.bordered.default,\n\t\t},\n\t\t{\n\t\t\tvariant: \"bordered\",\n\t\t\tcolor: \"primary\",\n\t\t\tclass: colorVariants.bordered.primary,\n\t\t},\n\t\t{\n\t\t\tvariant: \"bordered\",\n\t\t\tcolor: \"secondary\",\n\t\t\tclass: colorVariants.bordered.secondary,\n\t\t},\n\t\t{\n\t\t\tvariant: \"bordered\",\n\t\t\tcolor: \"success\",\n\t\t\tclass: colorVariants.bordered.success,\n\t\t},\n\t\t{\n\t\t\tvariant: \"bordered\",\n\t\t\tcolor: \"warning\",\n\t\t\tclass: colorVariants.bordered.warning,\n\t\t},\n\t\t{\n\t\t\tvariant: \"bordered\",\n\t\t\tcolor: \"danger\",\n\t\t\tclass: colorVariants.bordered.danger,\n\t\t},\n\t\t// flat / color\n\t\t{\n\t\t\tvariant: \"flat\",\n\t\t\tcolor: \"default\",\n\t\t\tclass: colorVariants.flat.default,\n\t\t},\n\t\t{\n\t\t\tvariant: \"flat\",\n\t\t\tcolor: \"primary\",\n\t\t\tclass: colorVariants.flat.primary,\n\t\t},\n\t\t{\n\t\t\tvariant: \"flat\",\n\t\t\tcolor: \"secondary\",\n\t\t\tclass: colorVariants.flat.secondary,\n\t\t},\n\t\t{\n\t\t\tvariant: \"flat\",\n\t\t\tcolor: \"success\",\n\t\t\tclass: colorVariants.flat.success,\n\t\t},\n\t\t{\n\t\t\tvariant: \"flat\",\n\t\t\tcolor: \"warning\",\n\t\t\tclass: colorVariants.flat.warning,\n\t\t},\n\t\t{\n\t\t\tvariant: \"flat\",\n\t\t\tcolor: \"danger\",\n\t\t\tclass: colorVariants.flat.danger,\n\t\t},\n\t\t// faded / color\n\t\t{\n\t\t\tvariant: \"faded\",\n\t\t\tcolor: \"default\",\n\t\t\tclass: colorVariants.faded.default,\n\t\t},\n\t\t{\n\t\t\tvariant: \"faded\",\n\t\t\tcolor: \"primary\",\n\t\t\tclass: colorVariants.faded.primary,\n\t\t},\n\t\t{\n\t\t\tvariant: \"faded\",\n\t\t\tcolor: \"secondary\",\n\t\t\tclass: colorVariants.faded.secondary,\n\t\t},\n\t\t{\n\t\t\tvariant: \"faded\",\n\t\t\tcolor: \"success\",\n\t\t\tclass: colorVariants.faded.success,\n\t\t},\n\t\t{\n\t\t\tvariant: \"faded\",\n\t\t\tcolor: \"warning\",\n\t\t\tclass: colorVariants.faded.warning,\n\t\t},\n\t\t{\n\t\t\tvariant: \"faded\",\n\t\t\tcolor: \"danger\",\n\t\t\tclass: colorVariants.faded.danger,\n\t\t},\n\t\t// light / color\n\t\t{\n\t\t\tvariant: \"light\",\n\t\t\tcolor: \"default\",\n\t\t\tclass: [colorVariants.light.default, \"data-[hover=true]:bg-default/40\"],\n\t\t},\n\t\t{\n\t\t\tvariant: \"light\",\n\t\t\tcolor: \"primary\",\n\t\t\tclass: [colorVariants.light.primary, \"data-[hover=true]:bg-primary/20\"],\n\t\t},\n\t\t{\n\t\t\tvariant: \"light\",\n\t\t\tcolor: \"secondary\",\n\t\t\tclass: [colorVariants.light.secondary, \"data-[hover=true]:bg-secondary/20\"],\n\t\t},\n\t\t{\n\t\t\tvariant: \"light\",\n\t\t\tcolor: \"success\",\n\t\t\tclass: [colorVariants.light.success, \"data-[hover=true]:bg-success/20\"],\n\t\t},\n\t\t{\n\t\t\tvariant: \"light\",\n\t\t\tcolor: \"warning\",\n\t\t\tclass: [colorVariants.light.warning, \"data-[hover=true]:bg-warning/20\"],\n\t\t},\n\t\t{\n\t\t\tvariant: \"light\",\n\t\t\tcolor: \"danger\",\n\t\t\tclass: [colorVariants.light.danger, \"data-[hover=true]:bg-danger/20\"],\n\t\t},\n\t\t// ghost / color\n\t\t{\n\t\t\tvariant: \"ghost\",\n\t\t\tcolor: \"default\",\n\t\t\tclass: [colorVariants.ghost.default, \"data-[hover=true]:!bg-default\"],\n\t\t},\n\t\t{\n\t\t\tvariant: \"ghost\",\n\t\t\tcolor: \"primary\",\n\t\t\tclass: [colorVariants.ghost.primary, \"data-[hover=true]:!bg-primary data-[hover=true]:!text-primary-foreground\"],\n\t\t},\n\t\t{\n\t\t\tvariant: \"ghost\",\n\t\t\tcolor: \"secondary\",\n\t\t\tclass: [colorVariants.ghost.secondary, \"data-[hover=true]:!bg-secondary data-[hover=true]:!text-secondary-foreground\"],\n\t\t},\n\t\t{\n\t\t\tvariant: \"ghost\",\n\t\t\tcolor: \"success\",\n\t\t\tclass: [colorVariants.ghost.success, \"data-[hover=true]:!bg-success data-[hover=true]:!text-success-foreground\"],\n\t\t},\n\t\t{\n\t\t\tvariant: \"ghost\",\n\t\t\tcolor: \"warning\",\n\t\t\tclass: [colorVariants.ghost.warning, \"data-[hover=true]:!bg-warning data-[hover=true]:!text-warning-foreground\"],\n\t\t},\n\t\t{\n\t\t\tvariant: \"ghost\",\n\t\t\tcolor: \"danger\",\n\t\t\tclass: [colorVariants.ghost.danger, \"data-[hover=true]:!bg-danger data-[hover=true]:!text-danger-foreground\"],\n\t\t},\n\t\t// isInGroup / radius / size <-- radius not provided\n\t\t{\n\t\t\tisInGroup: true,\n\t\t\tclass: \"rounded-none first:rounded-s-medium last:rounded-e-medium\",\n\t\t},\n\t\t{\n\t\t\tisInGroup: true,\n\t\t\tsize: \"sm\",\n\t\t\tclass: \"rounded-none first:rounded-s-small last:rounded-e-small\",\n\t\t},\n\t\t{\n\t\t\tisInGroup: true,\n\t\t\tsize: \"md\",\n\t\t\tclass: \"rounded-none first:rounded-s-medium last:rounded-e-medium\",\n\t\t},\n\t\t{\n\t\t\tisInGroup: true,\n\t\t\tsize: \"lg\",\n\t\t\tclass: \"rounded-none first:rounded-s-large last:rounded-e-large\",\n\t\t},\n\t\t{\n\t\t\tisInGroup: true,\n\t\t\tisRounded: true,\n\t\t\tclass: \"rounded-none first:rounded-s-full last:rounded-e-full\",\n\t\t},\n\t\t// isInGroup / radius <-- radius provided\n\t\t{\n\t\t\tisInGroup: true,\n\t\t\tradius: \"none\",\n\t\t\tclass: \"rounded-none first:rounded-s-none last:rounded-e-none\",\n\t\t},\n\t\t{\n\t\t\tisInGroup: true,\n\t\t\tradius: \"sm\",\n\t\t\tclass: \"rounded-none first:rounded-s-small last:rounded-e-small\",\n\t\t},\n\t\t{\n\t\t\tisInGroup: true,\n\t\t\tradius: \"md\",\n\t\t\tclass: \"rounded-none first:rounded-s-medium last:rounded-e-medium\",\n\t\t},\n\t\t{\n\t\t\tisInGroup: true,\n\t\t\tradius: \"lg\",\n\t\t\tclass: \"rounded-none first:rounded-s-large last:rounded-e-large\",\n\t\t},\n\t\t{\n\t\t\tisInGroup: true,\n\t\t\tradius: \"full\",\n\t\t\tclass: \"rounded-none first:rounded-s-full last:rounded-e-full\",\n\t\t},\n\t\t// isInGroup / bordered / ghost\n\t\t{\n\t\t\tisInGroup: true,\n\t\t\tvariant: [\"ghost\", \"bordered\"],\n\t\t\tcolor: \"default\",\n\t\t\tclassName: collapseAdjacentVariantBorders.default,\n\t\t},\n\t\t{\n\t\t\tisInGroup: true,\n\t\t\tvariant: [\"ghost\", \"bordered\"],\n\t\t\tcolor: \"primary\",\n\t\t\tclassName: collapseAdjacentVariantBorders.primary,\n\t\t},\n\t\t{\n\t\t\tisInGroup: true,\n\t\t\tvariant: [\"ghost\", \"bordered\"],\n\t\t\tcolor: \"secondary\",\n\t\t\tclassName: collapseAdjacentVariantBorders.secondary,\n\t\t},\n\t\t{\n\t\t\tisInGroup: true,\n\t\t\tvariant: [\"ghost\", \"bordered\"],\n\t\t\tcolor: \"success\",\n\t\t\tclassName: collapseAdjacentVariantBorders.success,\n\t\t},\n\t\t{\n\t\t\tisInGroup: true,\n\t\t\tvariant: [\"ghost\", \"bordered\"],\n\t\t\tcolor: \"warning\",\n\t\t\tclassName: collapseAdjacentVariantBorders.warning,\n\t\t},\n\t\t{\n\t\t\tisInGroup: true,\n\t\t\tvariant: [\"ghost\", \"bordered\"],\n\t\t\tcolor: \"danger\",\n\t\t\tclassName: collapseAdjacentVariantBorders.danger,\n\t\t},\n\t\t{\n\t\t\tisIconOnly: true,\n\t\t\tsize: \"sm\",\n\t\t\tclass: \"min-w-8 w-8 h-8\",\n\t\t},\n\t\t{\n\t\t\tisIconOnly: true,\n\t\t\tsize: \"md\",\n\t\t\tclass: \"min-w-10 w-10 h-10\",\n\t\t},\n\t\t{\n\t\t\tisIconOnly: true,\n\t\t\tsize: \"lg\",\n\t\t\tclass: \"min-w-12 w-12 h-12\",\n\t\t},\n\t\t// variant / hover\n\t\t{\n\t\t\tvariant: [\"solid\", \"faded\", \"flat\", \"bordered\", \"shadow\"],\n\t\t\tclass: \"hover:opacity-80\",\n\t\t},\n\t],\n});\n\nexport type ButtonVariantProps = VariantProps<typeof button>;\n\nexport { button };\n","import { dataAttr, useDOMRef, type ReactRef } from \"@/functions\";\nimport { button, type ButtonVariantProps } from \"@/theme/color/button\";\nimport type { SlotsToClasses } from \"@/types\";\nimport clsx from \"clsx\";\nimport { isValidElement, cloneElement, useMemo, useCallback, useId } from \"react\";\n\nimport { Slot } from \"@radix-ui/react-slot\";\nimport type { ReactNode, MouseEventHandler, HTMLAttributes } from \"react\";\nimport type { RippleProps } from \"../ripple/ripple\";\nimport { useRipple } from \"../ripple/use-ripple\";\n\nexport interface UseButtonProps extends ButtonVariantProps, Omit<HTMLAttributes<HTMLElement>, keyof ButtonVariantProps> {\n\tref?: ReactRef<HTMLButtonElement | null>;\n\tid?: string;\n\tclassNames?: SlotsToClasses<ReturnType<typeof button>>;\n\tclassName?: string;\n\tasChild?: boolean;\n\tchildren?: ReactNode;\n\tisIconOnly?: boolean;\n\tisLoading?: boolean;\n\tdisabled?: boolean;\n\tstartContent?: ReactNode;\n\tendContent?: ReactNode;\n\tspinner?: ReactNode;\n\tspinnerPlacement?: \"start\" | \"end\";\n type?: \"button\" | \"submit\" | \"reset\";\n}\n\nexport function useButton(props: UseButtonProps) {\n\tconst {\n\t\tid,\n\t\tclassNames,\n\t\tclassName,\n\t\tasChild,\n\t\tchildren,\n\t\tisLoading = false,\n\t\tdisabled = false,\n\t\tisIconOnly = false,\n\t\tonClick,\n\t\tstartContent: startContentProp,\n\t\tendContent: endContentProp,\n\t\tspinner = null,\n\t\tspinnerPlacement = \"start\",\n type = \"button\",\n\t\t...rest\n\t} = props;\n\n\tconst domRef = useDOMRef(props.ref);\n\tconst buttonId = useId();\n\tconst resolvedId = id || buttonId;\n\n\tconst { onPress: onRipplePressHandler, onClear: onClearRipple, ripples } = useRipple();\n\n\tconst styles = useMemo(\n\t\t() =>\n\t\t\tbutton({\n\t\t\t\tsize: props.size,\n\t\t\t\tcolor: props.color,\n\t\t\t\tvariant: props.variant,\n\t\t\t\tradius: props.radius,\n\t\t\t\tfullWidth: props.fullWidth,\n\t\t\t\tisDisabled: disabled || isLoading,\n\t\t\t\tdisableAnimation: props.disableAnimation,\n\t\t\t\tisIconOnly: isIconOnly,\n\t\t\t\tisInGroup: props.isInGroup,\n\t\t\t\tclassName,\n\t\t\t}),\n\t\t[props, className, disabled, isLoading, isIconOnly],\n\t);\n\n\tconst handleClick: MouseEventHandler<HTMLElement> = useCallback(\n\t\t(e) => {\n\t\t\tif (disabled) {\n\t\t\t\te.preventDefault();\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tonClick?.(e);\n\t\t},\n\t\t[onClick, disabled],\n\t);\n\n\tconst getIconClone = (icon: ReactNode) =>\n\t\tisValidElement(icon)\n\t\t\t? cloneElement(icon, {\n\t\t\t\t\t// \"aria-hidden\": true,\n\t\t\t\t\t// \"focusable\": false,\n\t\t\t })\n\t\t\t: null;\n\n\tconst startContent = getIconClone(startContentProp);\n\tconst endContent = getIconClone(endContentProp);\n\n\tconst handlePointerDown = (e: React.PointerEvent<HTMLButtonElement>) => {\n\t\tconst rect = e.currentTarget.getBoundingClientRect();\n\t\tconst customEvent = {\n\t\t\ttarget: e.currentTarget,\n\t\t\tx: e.clientX - rect.left,\n\t\t\ty: e.clientY - rect.top,\n\t\t};\n\n\t\tonRipplePressHandler(customEvent);\n\t};\n\n\tconst getButtonProps = () => ({\n\t\t\"className\": clsx(styles, classNames?.base),\n\t\t\"data-disabled\": dataAttr(disabled),\n\t\t\"data-loading\": dataAttr(isLoading),\n\t\t\"onClick\": handleClick,\n\t\t\"onPointerDown\": handlePointerDown,\n\t\t\"data-slot\": \"button\",\n\t\t\"aria-disabled\": disabled,\n\t\t\"id\": resolvedId,\n \"type\": type,\n\t\t...rest,\n\t});\n\n\tconst getRippleProps = useCallback<() => RippleProps>(() => ({ ripples, onClear: onClearRipple }), [ripples, onClearRipple]);\n\n\tconst Component = asChild ? Slot : \"button\";\n\n\treturn {\n\t\tdomRef,\n\t\tisIconOnly,\n\t\tComponent,\n\t\tchildren,\n\t\tisLoading,\n\t\tspinner,\n\t\tspinnerPlacement,\n\t\tstartContent,\n\t\tendContent,\n\t\tgetButtonProps,\n\t\tgetRippleProps,\n\t};\n}\n\nexport type UseButtonReturn = ReturnType<typeof useButton>;\n","const Spinner = () => {\n\treturn (\n\t\t<div aria-label=\"Loading\" className=\"relative inline-flex flex-col gap-2 items-center justify-center\">\n\t\t\t<div className=\"relative flex w-5 h-5\">\n\t\t\t\t<i className=\"absolute w-full h-full rounded-full border-2 border-b-current animate-spinner-ease-spin border-solid border-t-transparent border-l-transparent border-r-transparent\" />\n\t\t\t\t<i className=\"absolute w-full h-full rounded-full border-2 border-b-current opacity-75 animate-spinner-linear-spin border-dotted border-t-transparent border-l-transparent border-r-transparent\" />\n\t\t\t</div>\n\t\t</div>\n\t);\n};\nexport default Spinner;\n","import { forwardRef, useMemo } from \"react\";\nimport { useButton, type UseButtonProps } from \"./use-button\";\nimport Ripple from \"../ripple/ripple\";\nimport Spinner from \"./spinner\";\n\nexport interface ButtonProps extends UseButtonProps {}\n\nconst Button = forwardRef<HTMLButtonElement, ButtonProps>((props, ref) => {\n\tconst {\n\t\tComponent,\n\t\tdomRef,\n\t\tchildren,\n\t\tisIconOnly,\n\t\tisLoading,\n\t\tspinner,\n\t\tspinnerPlacement,\n\t\tstartContent,\n\t\tendContent,\n\t\tgetButtonProps,\n\t\tgetRippleProps,\n\t} = useButton({\n\t\t...props,\n\t\tref,\n\t});\n\n\tconst fallbackSpinner = useMemo(() => <Spinner />, []);\n\tconst finalSpinner = spinner ?? fallbackSpinner;\n\n\treturn (\n\t\t<Component {...getButtonProps()} ref={domRef}>\n\t\t\t{startContent}\n\t\t\t{isLoading && spinnerPlacement === \"start\" && finalSpinner}\n\t\t\t{isLoading && isIconOnly ? null : children}\n\t\t\t{isLoading && spinnerPlacement === \"end\" && finalSpinner}\n\t\t\t{endContent}\n\t\t\t<Ripple {...getRippleProps()} />\n\t\t</Component>\n\t);\n});\n\nButton.displayName = \"Custom.Button\";\n\nexport default Button;\n"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { useRef, useId, useMemo, useCallback, forwardRef, cloneElement } from "react";
|
|
3
|
-
import { S as Slot } from "./index-
|
|
3
|
+
import { S as Slot } from "./index-B4RTH1-D.js";
|
|
4
4
|
import { t as tv } from "./tv-B0li4IsO.js";
|
|
5
5
|
import { h as hiddenInputClasses, g as groupDataFocusVisibleClasses } from "./classes-D2Fdo0zM.js";
|
|
6
6
|
import { d as dataAttr } from "./assertion-LpGn6Vzq.js";
|
|
@@ -328,4 +328,4 @@ export {
|
|
|
328
328
|
Checkbox as C,
|
|
329
329
|
CheckboxIcon as a
|
|
330
330
|
};
|
|
331
|
-
//# sourceMappingURL=checkbox-
|
|
331
|
+
//# sourceMappingURL=checkbox-C1Sssumg.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checkbox-qzZKMLRN.js","sources":["../../src/theme/color/checkbox.ts","../../src/components/checkbox/use-checkbox.ts","../../src/components/checkbox/checkbox-icon.tsx","../../src/components/checkbox/checkbox.tsx"],"sourcesContent":["import { tv } from \"@/lib/tv\";\nimport type { VariantProps } from \"tailwind-variants\";\nimport { groupDataFocusVisibleClasses, hiddenInputClasses } from \"../classes\";\n\n/**\n * Checkbox wrapper **Tailwind Variants** component\n *\n * const {base, wrapper, icon, label} = checkbox({...})\n *\n * @example\n * <label className={base())}>\n * // hidden input\n * <span className={wrapper()} aria-hidden=\"true\" data-selected={selected}>\n * <svg className={icon()}>\n * // check icon\n * </svg>\n * </span>\n * <span className={label()}>Label</span>\n * </label>\n */\nconst checkbox = tv({\n\tslots: {\n\t\tbase: \"group relative max-w-fit inline-flex items-center justify-start cursor-pointer tap-highlight-transparent p-2 -m-2 select-none\",\n\t\twrapper: [\n\t\t\t\"relative\",\n\t\t\t\"inline-flex\",\n\t\t\t\"items-center\",\n\t\t\t\"justify-center\",\n\t\t\t\"flex-shrink-0\",\n\t\t\t\"overflow-hidden\",\n\t\t\t// before\n\t\t\t\"before:content-['']\",\n\t\t\t\"before:absolute\",\n\t\t\t\"before:inset-0\",\n\t\t\t\"before:border-solid\",\n\t\t\t\"before:border-2\",\n\t\t\t\"before:box-border\",\n\t\t\t\"before:border-default\",\n\t\t\t// after\n\t\t\t\"after:content-['']\",\n\t\t\t\"after:absolute\",\n\t\t\t\"after:inset-0\",\n\t\t\t\"after:scale-50\",\n\t\t\t\"after:opacity-0\",\n\t\t\t\"after:origin-center\",\n\t\t\t\"group-data-[selected=true]:after:scale-100\",\n\t\t\t\"group-data-[selected=true]:after:opacity-100\",\n\t\t\t// hover\n\t\t\t\"group-data-[hover=true]:before:bg-default-100\",\n\t\t\t// focus ring\n\t\t\t...groupDataFocusVisibleClasses,\n\t\t],\n\t\thiddenInput: hiddenInputClasses,\n\t\ticon: \"z-10 w-4 h-3 opacity-0 group-data-[selected=true]:opacity-100 pointer-events-none\",\n\t\tlabel: \"relative text-foreground select-none\",\n\t},\n\tvariants: {\n\t\tcolor: {\n\t\t\tdefault: {\n\t\t\t\twrapper: \"after:bg-default after:text-default-foreground text-default-foreground\",\n\t\t\t},\n\t\t\tprimary: {\n\t\t\t\twrapper: \"after:bg-primary after:text-primary-foreground text-primary-foreground\",\n\t\t\t},\n\t\t\tsecondary: {\n\t\t\t\twrapper: \"after:bg-secondary after:text-secondary-foreground text-secondary-foreground\",\n\t\t\t},\n\t\t\tsuccess: {\n\t\t\t\twrapper: \"after:bg-success after:text-success-foreground text-success-foreground\",\n\t\t\t},\n\t\t\twarning: {\n\t\t\t\twrapper: \"after:bg-warning after:text-warning-foreground text-warning-foreground\",\n\t\t\t},\n\t\t\tdanger: {\n\t\t\t\twrapper: \"after:bg-danger after:text-danger-foreground text-danger-foreground\",\n\t\t\t},\n\t\t},\n\t\tsize: {\n\t\t\tsm: {\n\t\t\t\twrapper: [\n\t\t\t\t\t\"w-4 h-4 me-2\",\n\t\t\t\t\t\"rounded-[calc(theme(borderRadius.medium)*0.5)]\",\n\t\t\t\t\t\"before:rounded-[calc(theme(borderRadius.medium)*0.5)]\",\n\t\t\t\t\t\"after:rounded-[calc(theme(borderRadius.medium)*0.5)]\",\n\t\t\t\t],\n\t\t\t\tlabel: \"text-small\",\n\t\t\t\ticon: \"w-3 h-2\",\n\t\t\t},\n\t\t\tmd: {\n\t\t\t\twrapper: [\n\t\t\t\t\t\"w-5 h-5 me-2\",\n\t\t\t\t\t\"rounded-[calc(theme(borderRadius.medium)*0.6)]\",\n\t\t\t\t\t\"before:rounded-[calc(theme(borderRadius.medium)*0.6)]\",\n\t\t\t\t\t\"after:rounded-[calc(theme(borderRadius.medium)*0.6)]\",\n\t\t\t\t],\n\t\t\t\tlabel: \"text-medium\",\n\t\t\t\ticon: \"w-4 h-3\",\n\t\t\t},\n\t\t\tlg: {\n\t\t\t\twrapper: [\n\t\t\t\t\t\"w-6 h-6 me-2\",\n\t\t\t\t\t\"rounded-[calc(theme(borderRadius.medium)*0.7)]\",\n\t\t\t\t\t\"before:rounded-[calc(theme(borderRadius.medium)*0.7)]\",\n\t\t\t\t\t\"after:rounded-[calc(theme(borderRadius.medium)*0.7)]\",\n\t\t\t\t],\n\t\t\t\tlabel: \"text-large\",\n\t\t\t\ticon: \"w-5 h-4\",\n\t\t\t},\n\t\t},\n\t\tradius: {\n\t\t\tnone: {\n\t\t\t\twrapper: \"rounded-none before:rounded-none after:rounded-none\",\n\t\t\t},\n\t\t\tsm: {\n\t\t\t\twrapper: [\n\t\t\t\t\t\"rounded-[calc(theme(borderRadius.medium)*0.5)]\",\n\t\t\t\t\t\"before:rounded-[calc(theme(borderRadius.medium)*0.5)]\",\n\t\t\t\t\t\"after:rounded-[calc(theme(borderRadius.medium)*0.5)]\",\n\t\t\t\t],\n\t\t\t},\n\t\t\tmd: {\n\t\t\t\twrapper: [\n\t\t\t\t\t\"rounded-[calc(theme(borderRadius.medium)*0.6)]\",\n\t\t\t\t\t\"before:rounded-[calc(theme(borderRadius.medium)*0.6)]\",\n\t\t\t\t\t\"after:rounded-[calc(theme(borderRadius.medium)*0.6)]\",\n\t\t\t\t],\n\t\t\t},\n\t\t\tlg: {\n\t\t\t\twrapper: [\n\t\t\t\t\t\"rounded-[calc(theme(borderRadius.medium)*0.7)]\",\n\t\t\t\t\t\"before:rounded-[calc(theme(borderRadius.medium)*0.7)]\",\n\t\t\t\t\t\"after:rounded-[calc(theme(borderRadius.medium)*0.7)]\",\n\t\t\t\t],\n\t\t\t},\n\t\t\tfull: {\n\t\t\t\twrapper: \"rounded-full before:rounded-full after:rounded-full\",\n\t\t\t},\n\t\t},\n\t\tlineThrough: {\n\t\t\ttrue: {\n\t\t\t\tlabel: [\n\t\t\t\t\t\"inline-flex\",\n\t\t\t\t\t\"items-center\",\n\t\t\t\t\t\"justify-center\",\n\t\t\t\t\t\"before:content-['']\",\n\t\t\t\t\t\"before:absolute\",\n\t\t\t\t\t\"before:bg-foreground\",\n\t\t\t\t\t\"before:w-0\",\n\t\t\t\t\t\"before:h-0.5\",\n\t\t\t\t\t\"group-data-[selected=true]:opacity-60\",\n\t\t\t\t\t\"group-data-[selected=true]:before:w-full\",\n\t\t\t\t],\n\t\t\t},\n\t\t},\n\t\tdisabled: {\n\t\t\ttrue: {\n\t\t\t\tbase: \"opacity-80 pointer-events-none\",\n\t\t\t},\n\t\t},\n\t\tisInvalid: {\n\t\t\ttrue: {\n\t\t\t\twrapper: \"before:border-danger\",\n\t\t\t\tlabel: \"text-danger\",\n\t\t\t},\n\t\t},\n\t\tdisableAnimation: {\n\t\t\ttrue: {\n\t\t\t\twrapper: \"transition-none\",\n\t\t\t\ticon: \"transition-none\",\n\t\t\t\tlabel: \"transition-none\",\n\t\t\t},\n\t\t\tfalse: {\n\t\t\t\twrapper: [\n\t\t\t\t\t\"before:transition-colors\",\n\t\t\t\t\t\"group-data-[pressed=true]:scale-95\",\n\t\t\t\t\t\"transition-transform\",\n\t\t\t\t\t\"after:transition-transform-opacity\",\n\t\t\t\t\t\"after:!ease-linear\",\n\t\t\t\t\t\"after:!duration-200\",\n\t\t\t\t\t\"motion-reduce:transition-none\",\n\t\t\t\t],\n\t\t\t\ticon: \"transition-opacity motion-reduce:transition-none\",\n\t\t\t\tlabel: \"transition-colors-opacity before:transition-width motion-reduce:transition-none\",\n\t\t\t},\n\t\t},\n\t},\n\tdefaultVariants: {\n\t\tcolor: \"primary\",\n\t\tsize: \"md\",\n\t\tdisabled: false,\n\t\tlineThrough: false,\n\t},\n});\n\nexport type CheckboxVariantProps = VariantProps<typeof checkbox>;\nexport type CheckboxSlots = keyof ReturnType<typeof checkbox>;\n\nexport { checkbox };\n","import { useCallback, useId, useMemo, useRef, type ChangeEvent } from \"react\";\r\n\r\nimport { checkbox, type CheckboxSlots, type CheckboxVariantProps } from \"@/theme/color/checkbox\";\r\nimport type { SlotsToClasses } from \"@/types\";\r\nimport { dataAttr, mergeRefs } from \"@/functions\";\r\nimport clsx from \"clsx\";\r\n\r\nexport interface UseCheckboxProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, keyof CheckboxVariantProps>, CheckboxVariantProps {\r\n\tclassNames?: SlotsToClasses<CheckboxSlots>;\r\n\tclassName?: string;\r\n\ticon?: React.ReactNode | ((props: CheckboxIconProps) => React.ReactNode);\r\n\tchildren?: React.ReactNode;\r\n\tisIndeterminate?: boolean;\r\n\tref?: React.Ref<HTMLInputElement>;\r\n\terror?: string;\r\n\ttouched?: boolean;\r\n\trequired?: boolean;\r\n}\r\n\r\nexport interface CheckboxIconProps {\r\n\tid?: string;\r\n\tisSelected: boolean;\r\n\tisIndeterminate?: boolean;\r\n\tdisableAnimation?: boolean;\r\n\tclassName?: string;\r\n}\r\n\r\nexport function useCheckbox(props: UseCheckboxProps) {\r\n\tconst {\r\n\t\tid,\r\n\t\tclassNames,\r\n\t\tclassName,\r\n\t\ticon,\r\n\t\tchildren,\r\n\t\tdisabled,\r\n\t\trequired,\r\n\t\treadOnly,\r\n\t\tdefaultChecked,\r\n\t\tchecked,\r\n\t\terror,\r\n\t\ttouched,\r\n\t\tonChange,\r\n\t\tisIndeterminate = false,\r\n\t} = props;\r\n\r\n\tconst internalRef = useRef<HTMLInputElement>(null);\r\n\tconst inputId = useId();\r\n\tconst resolvedId = id || inputId;\r\n\r\n\tconst [isSelected] = useMemo(() => {\r\n\t\treturn [typeof checked === \"boolean\" ? checked : defaultChecked || false, () => {}];\r\n\t}, [checked, defaultChecked]);\r\n\r\n\tconst handleChange = useCallback(\r\n\t\t(e: ChangeEvent<HTMLInputElement>) => {\r\n\t\t\tif (readOnly || disabled) {\r\n\t\t\t\te.preventDefault();\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t\tonChange?.(e);\r\n\t\t},\r\n\t\t[onChange, readOnly, disabled],\r\n\t);\r\n\r\n\tconst slots = useMemo(\r\n\t\t() =>\r\n\t\t\tcheckbox({\r\n\t\t\t\tcolor: props.color,\r\n\t\t\t\tsize: props.size,\r\n\t\t\t\tradius: props.radius,\r\n\t\t\t\tlineThrough: props.lineThrough,\r\n\t\t\t\tdisabled: disabled,\r\n\t\t\t\tisInvalid: !!error && touched,\r\n\t\t\t\tdisableAnimation: props.disableAnimation,\r\n\t\t\t}),\r\n\t\t[props, disabled, error, touched],\r\n\t);\r\n\r\n\tconst getBaseProps = () => ({\r\n\t\t\"className\": slots.base({ class: clsx(classNames?.base, className) }),\r\n\t\t\"data-disabled\": dataAttr(disabled),\r\n\t\t\"data-selected\": dataAttr(isSelected || isIndeterminate),\r\n\t});\r\n\r\n\tconst getWrapperProps = () => ({\r\n\t\t\"aria-hidden\": true,\r\n\t\t\"className\": slots.wrapper({ class: classNames?.wrapper }),\r\n\t\t\"data-selected\": dataAttr(isSelected || isIndeterminate),\r\n\t});\r\n\r\n\tconst getInputProps = () => ({\r\n\t\tref: mergeRefs(internalRef, props.ref),\r\n\t\ttype: \"checkbox\",\r\n\t\tid: resolvedId,\r\n\t\tdefaultChecked: checked === undefined ? defaultChecked : undefined,\r\n\t\tchecked: checked !== undefined ? checked : undefined,\r\n\t\tdisabled,\r\n\t\trequired,\r\n\t\treadOnly,\r\n\t\tonChange: handleChange,\r\n\t\tclassName: slots.hiddenInput({ class: classNames?.hiddenInput }),\r\n\t});\r\n\r\n\tconst getLabelProps = () => ({\r\n\t\thtmlFor: resolvedId,\r\n\t\tclassName: slots.label({ class: classNames?.label }),\r\n\t});\r\n\r\n\tconst getIconProps = (): CheckboxIconProps => ({\r\n\t\tisSelected,\r\n\t\tisIndeterminate,\r\n\t\tdisableAnimation: props.disableAnimation,\r\n\t\tclassName: slots.icon({ class: classNames?.icon }),\r\n\t});\r\n\r\n\tconst Component = \"label\";\r\n\r\n\treturn {\r\n\t\tComponent,\r\n\t\ticon,\r\n\t\tchildren,\r\n\t\tisSelected,\r\n\t\tisIndeterminate,\r\n\t\tgetBaseProps,\r\n\t\tgetWrapperProps,\r\n\t\tgetInputProps,\r\n\t\tgetLabelProps,\r\n\t\tgetIconProps,\r\n\t};\r\n}\r\n\r\nexport type UseCheckboxReturn = ReturnType<typeof useCheckbox>;\r\n","import type { UseCheckboxReturn } from \"./use-checkbox\";\n\ntype CheckboxIconProps = Partial<ReturnType<UseCheckboxReturn[\"getIconProps\"]>>;\n\nfunction CheckIcon(props: CheckboxIconProps) {\n\tconst { isSelected, disableAnimation, ...otherProps } = props;\n\n\treturn (\n\t\t<svg\n\t\t\taria-hidden=\"true\"\n\t\t\tfill=\"none\"\n\t\t\trole=\"presentation\"\n\t\t\tstroke=\"currentColor\"\n\t\t\tstrokeDasharray={22}\n\t\t\tstrokeDashoffset={isSelected ? 44 : 66}\n\t\t\tstrokeLinecap=\"round\"\n\t\t\tstrokeLinejoin=\"round\"\n\t\t\tstrokeWidth={2}\n\t\t\tstyle={\n\t\t\t\t!disableAnimation && isSelected\n\t\t\t\t\t? {\n\t\t\t\t\t\t\ttransition: \"stroke-dashoffset 250ms linear 0.2s\",\n\t\t\t\t\t }\n\t\t\t\t\t: {}\n\t\t\t}\n\t\t\tviewBox=\"0 0 17 18\"\n\t\t\t{...otherProps}\n\t\t>\n\t\t\t<polyline points=\"1 9 7 14 15 4\" />\n\t\t</svg>\n\t);\n}\n\nfunction IndeterminateIcon(props: CheckboxIconProps) {\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tconst { isSelected, disableAnimation, ...otherProps } = props;\n\n\treturn (\n\t\t<svg stroke=\"currentColor\" strokeWidth={3} viewBox=\"0 0 24 24\" {...otherProps}>\n\t\t\t<line x1=\"21\" x2=\"3\" y1=\"12\" y2=\"12\" />\n\t\t</svg>\n\t);\n}\n\n/**\n * CheckboxIcon is used to visually indicate the checked or indeterminate\n * state of a checkbox.\n */\nexport function CheckboxIcon(props: CheckboxIconProps) {\n\tconst { isIndeterminate, ...otherProps } = props;\n\tconst BaseIcon = isIndeterminate ? IndeterminateIcon : CheckIcon;\n\n\treturn <BaseIcon {...otherProps} />;\n}\n","// checkbox.tsx\r\nimport { forwardRef } from \"react\";\r\nimport { cloneElement, type ReactElement } from \"react\";\r\nimport { Slot } from \"@radix-ui/react-slot\";\r\n\r\nimport { useCheckbox, type UseCheckboxProps } from \"./use-checkbox\";\r\nimport { CheckboxIcon } from \"./checkbox-icon\";\r\n\r\nexport interface CheckboxProps extends UseCheckboxProps {\r\n\tasChild?: boolean;\r\n}\r\n\r\nconst Checkbox = forwardRef<HTMLInputElement, CheckboxProps>((props, ref) => {\r\n\tconst { asChild = false, ...restProps } = props;\r\n\tconst {\r\n\t\tComponent,\r\n\t\tchildren,\r\n\t\ticon = <CheckboxIcon />,\r\n\t\tgetBaseProps,\r\n\t\tgetWrapperProps,\r\n\t\tgetInputProps,\r\n\t\tgetIconProps,\r\n\t\tgetLabelProps,\r\n\t} = useCheckbox({ ...restProps, ref });\r\n\r\n\tconst clonedIcon = typeof icon === \"function\" ? icon(getIconProps()) : cloneElement(icon as ReactElement, getIconProps());\r\n\r\n\tconst Wrapper = asChild ? Slot : Component;\r\n\r\n\treturn (\r\n\t\t<Wrapper {...getBaseProps()}>\r\n\t\t\t<input {...getInputProps()} ref={ref} />\r\n\t\t\t<span {...getWrapperProps()}>{clonedIcon}</span>\r\n\t\t\t{children && <span {...getLabelProps()}>{children}</span>}\r\n\t\t</Wrapper>\r\n\t);\r\n});\r\n\r\nCheckbox.displayName = \"Custom.Checkbox\";\r\n\r\nexport default Checkbox;\r\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"checkbox-C1Sssumg.js","sources":["../../src/theme/color/checkbox.ts","../../src/components/checkbox/use-checkbox.ts","../../src/components/checkbox/checkbox-icon.tsx","../../src/components/checkbox/checkbox.tsx"],"sourcesContent":["import { tv } from \"@/lib/tv\";\nimport type { VariantProps } from \"tailwind-variants\";\nimport { groupDataFocusVisibleClasses, hiddenInputClasses } from \"../classes\";\n\n/**\n * Checkbox wrapper **Tailwind Variants** component\n *\n * const {base, wrapper, icon, label} = checkbox({...})\n *\n * @example\n * <label className={base())}>\n * // hidden input\n * <span className={wrapper()} aria-hidden=\"true\" data-selected={selected}>\n * <svg className={icon()}>\n * // check icon\n * </svg>\n * </span>\n * <span className={label()}>Label</span>\n * </label>\n */\nconst checkbox = tv({\n\tslots: {\n\t\tbase: \"group relative max-w-fit inline-flex items-center justify-start cursor-pointer tap-highlight-transparent p-2 -m-2 select-none\",\n\t\twrapper: [\n\t\t\t\"relative\",\n\t\t\t\"inline-flex\",\n\t\t\t\"items-center\",\n\t\t\t\"justify-center\",\n\t\t\t\"flex-shrink-0\",\n\t\t\t\"overflow-hidden\",\n\t\t\t// before\n\t\t\t\"before:content-['']\",\n\t\t\t\"before:absolute\",\n\t\t\t\"before:inset-0\",\n\t\t\t\"before:border-solid\",\n\t\t\t\"before:border-2\",\n\t\t\t\"before:box-border\",\n\t\t\t\"before:border-default\",\n\t\t\t// after\n\t\t\t\"after:content-['']\",\n\t\t\t\"after:absolute\",\n\t\t\t\"after:inset-0\",\n\t\t\t\"after:scale-50\",\n\t\t\t\"after:opacity-0\",\n\t\t\t\"after:origin-center\",\n\t\t\t\"group-data-[selected=true]:after:scale-100\",\n\t\t\t\"group-data-[selected=true]:after:opacity-100\",\n\t\t\t// hover\n\t\t\t\"group-data-[hover=true]:before:bg-default-100\",\n\t\t\t// focus ring\n\t\t\t...groupDataFocusVisibleClasses,\n\t\t],\n\t\thiddenInput: hiddenInputClasses,\n\t\ticon: \"z-10 w-4 h-3 opacity-0 group-data-[selected=true]:opacity-100 pointer-events-none\",\n\t\tlabel: \"relative text-foreground select-none\",\n\t},\n\tvariants: {\n\t\tcolor: {\n\t\t\tdefault: {\n\t\t\t\twrapper: \"after:bg-default after:text-default-foreground text-default-foreground\",\n\t\t\t},\n\t\t\tprimary: {\n\t\t\t\twrapper: \"after:bg-primary after:text-primary-foreground text-primary-foreground\",\n\t\t\t},\n\t\t\tsecondary: {\n\t\t\t\twrapper: \"after:bg-secondary after:text-secondary-foreground text-secondary-foreground\",\n\t\t\t},\n\t\t\tsuccess: {\n\t\t\t\twrapper: \"after:bg-success after:text-success-foreground text-success-foreground\",\n\t\t\t},\n\t\t\twarning: {\n\t\t\t\twrapper: \"after:bg-warning after:text-warning-foreground text-warning-foreground\",\n\t\t\t},\n\t\t\tdanger: {\n\t\t\t\twrapper: \"after:bg-danger after:text-danger-foreground text-danger-foreground\",\n\t\t\t},\n\t\t},\n\t\tsize: {\n\t\t\tsm: {\n\t\t\t\twrapper: [\n\t\t\t\t\t\"w-4 h-4 me-2\",\n\t\t\t\t\t\"rounded-[calc(theme(borderRadius.medium)*0.5)]\",\n\t\t\t\t\t\"before:rounded-[calc(theme(borderRadius.medium)*0.5)]\",\n\t\t\t\t\t\"after:rounded-[calc(theme(borderRadius.medium)*0.5)]\",\n\t\t\t\t],\n\t\t\t\tlabel: \"text-small\",\n\t\t\t\ticon: \"w-3 h-2\",\n\t\t\t},\n\t\t\tmd: {\n\t\t\t\twrapper: [\n\t\t\t\t\t\"w-5 h-5 me-2\",\n\t\t\t\t\t\"rounded-[calc(theme(borderRadius.medium)*0.6)]\",\n\t\t\t\t\t\"before:rounded-[calc(theme(borderRadius.medium)*0.6)]\",\n\t\t\t\t\t\"after:rounded-[calc(theme(borderRadius.medium)*0.6)]\",\n\t\t\t\t],\n\t\t\t\tlabel: \"text-medium\",\n\t\t\t\ticon: \"w-4 h-3\",\n\t\t\t},\n\t\t\tlg: {\n\t\t\t\twrapper: [\n\t\t\t\t\t\"w-6 h-6 me-2\",\n\t\t\t\t\t\"rounded-[calc(theme(borderRadius.medium)*0.7)]\",\n\t\t\t\t\t\"before:rounded-[calc(theme(borderRadius.medium)*0.7)]\",\n\t\t\t\t\t\"after:rounded-[calc(theme(borderRadius.medium)*0.7)]\",\n\t\t\t\t],\n\t\t\t\tlabel: \"text-large\",\n\t\t\t\ticon: \"w-5 h-4\",\n\t\t\t},\n\t\t},\n\t\tradius: {\n\t\t\tnone: {\n\t\t\t\twrapper: \"rounded-none before:rounded-none after:rounded-none\",\n\t\t\t},\n\t\t\tsm: {\n\t\t\t\twrapper: [\n\t\t\t\t\t\"rounded-[calc(theme(borderRadius.medium)*0.5)]\",\n\t\t\t\t\t\"before:rounded-[calc(theme(borderRadius.medium)*0.5)]\",\n\t\t\t\t\t\"after:rounded-[calc(theme(borderRadius.medium)*0.5)]\",\n\t\t\t\t],\n\t\t\t},\n\t\t\tmd: {\n\t\t\t\twrapper: [\n\t\t\t\t\t\"rounded-[calc(theme(borderRadius.medium)*0.6)]\",\n\t\t\t\t\t\"before:rounded-[calc(theme(borderRadius.medium)*0.6)]\",\n\t\t\t\t\t\"after:rounded-[calc(theme(borderRadius.medium)*0.6)]\",\n\t\t\t\t],\n\t\t\t},\n\t\t\tlg: {\n\t\t\t\twrapper: [\n\t\t\t\t\t\"rounded-[calc(theme(borderRadius.medium)*0.7)]\",\n\t\t\t\t\t\"before:rounded-[calc(theme(borderRadius.medium)*0.7)]\",\n\t\t\t\t\t\"after:rounded-[calc(theme(borderRadius.medium)*0.7)]\",\n\t\t\t\t],\n\t\t\t},\n\t\t\tfull: {\n\t\t\t\twrapper: \"rounded-full before:rounded-full after:rounded-full\",\n\t\t\t},\n\t\t},\n\t\tlineThrough: {\n\t\t\ttrue: {\n\t\t\t\tlabel: [\n\t\t\t\t\t\"inline-flex\",\n\t\t\t\t\t\"items-center\",\n\t\t\t\t\t\"justify-center\",\n\t\t\t\t\t\"before:content-['']\",\n\t\t\t\t\t\"before:absolute\",\n\t\t\t\t\t\"before:bg-foreground\",\n\t\t\t\t\t\"before:w-0\",\n\t\t\t\t\t\"before:h-0.5\",\n\t\t\t\t\t\"group-data-[selected=true]:opacity-60\",\n\t\t\t\t\t\"group-data-[selected=true]:before:w-full\",\n\t\t\t\t],\n\t\t\t},\n\t\t},\n\t\tdisabled: {\n\t\t\ttrue: {\n\t\t\t\tbase: \"opacity-80 pointer-events-none\",\n\t\t\t},\n\t\t},\n\t\tisInvalid: {\n\t\t\ttrue: {\n\t\t\t\twrapper: \"before:border-danger\",\n\t\t\t\tlabel: \"text-danger\",\n\t\t\t},\n\t\t},\n\t\tdisableAnimation: {\n\t\t\ttrue: {\n\t\t\t\twrapper: \"transition-none\",\n\t\t\t\ticon: \"transition-none\",\n\t\t\t\tlabel: \"transition-none\",\n\t\t\t},\n\t\t\tfalse: {\n\t\t\t\twrapper: [\n\t\t\t\t\t\"before:transition-colors\",\n\t\t\t\t\t\"group-data-[pressed=true]:scale-95\",\n\t\t\t\t\t\"transition-transform\",\n\t\t\t\t\t\"after:transition-transform-opacity\",\n\t\t\t\t\t\"after:!ease-linear\",\n\t\t\t\t\t\"after:!duration-200\",\n\t\t\t\t\t\"motion-reduce:transition-none\",\n\t\t\t\t],\n\t\t\t\ticon: \"transition-opacity motion-reduce:transition-none\",\n\t\t\t\tlabel: \"transition-colors-opacity before:transition-width motion-reduce:transition-none\",\n\t\t\t},\n\t\t},\n\t},\n\tdefaultVariants: {\n\t\tcolor: \"primary\",\n\t\tsize: \"md\",\n\t\tdisabled: false,\n\t\tlineThrough: false,\n\t},\n});\n\nexport type CheckboxVariantProps = VariantProps<typeof checkbox>;\nexport type CheckboxSlots = keyof ReturnType<typeof checkbox>;\n\nexport { checkbox };\n","import { useCallback, useId, useMemo, useRef, type ChangeEvent } from \"react\";\r\n\r\nimport { checkbox, type CheckboxSlots, type CheckboxVariantProps } from \"@/theme/color/checkbox\";\r\nimport type { SlotsToClasses } from \"@/types\";\r\nimport { dataAttr, mergeRefs } from \"@/functions\";\r\nimport clsx from \"clsx\";\r\n\r\nexport interface UseCheckboxProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, keyof CheckboxVariantProps>, CheckboxVariantProps {\r\n\tclassNames?: SlotsToClasses<CheckboxSlots>;\r\n\tclassName?: string;\r\n\ticon?: React.ReactNode | ((props: CheckboxIconProps) => React.ReactNode);\r\n\tchildren?: React.ReactNode;\r\n\tisIndeterminate?: boolean;\r\n\tref?: React.Ref<HTMLInputElement>;\r\n\terror?: string;\r\n\ttouched?: boolean;\r\n\trequired?: boolean;\r\n}\r\n\r\nexport interface CheckboxIconProps {\r\n\tid?: string;\r\n\tisSelected: boolean;\r\n\tisIndeterminate?: boolean;\r\n\tdisableAnimation?: boolean;\r\n\tclassName?: string;\r\n}\r\n\r\nexport function useCheckbox(props: UseCheckboxProps) {\r\n\tconst {\r\n\t\tid,\r\n\t\tclassNames,\r\n\t\tclassName,\r\n\t\ticon,\r\n\t\tchildren,\r\n\t\tdisabled,\r\n\t\trequired,\r\n\t\treadOnly,\r\n\t\tdefaultChecked,\r\n\t\tchecked,\r\n\t\terror,\r\n\t\ttouched,\r\n\t\tonChange,\r\n\t\tisIndeterminate = false,\r\n\t} = props;\r\n\r\n\tconst internalRef = useRef<HTMLInputElement>(null);\r\n\tconst inputId = useId();\r\n\tconst resolvedId = id || inputId;\r\n\r\n\tconst [isSelected] = useMemo(() => {\r\n\t\treturn [typeof checked === \"boolean\" ? checked : defaultChecked || false, () => {}];\r\n\t}, [checked, defaultChecked]);\r\n\r\n\tconst handleChange = useCallback(\r\n\t\t(e: ChangeEvent<HTMLInputElement>) => {\r\n\t\t\tif (readOnly || disabled) {\r\n\t\t\t\te.preventDefault();\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t\tonChange?.(e);\r\n\t\t},\r\n\t\t[onChange, readOnly, disabled],\r\n\t);\r\n\r\n\tconst slots = useMemo(\r\n\t\t() =>\r\n\t\t\tcheckbox({\r\n\t\t\t\tcolor: props.color,\r\n\t\t\t\tsize: props.size,\r\n\t\t\t\tradius: props.radius,\r\n\t\t\t\tlineThrough: props.lineThrough,\r\n\t\t\t\tdisabled: disabled,\r\n\t\t\t\tisInvalid: !!error && touched,\r\n\t\t\t\tdisableAnimation: props.disableAnimation,\r\n\t\t\t}),\r\n\t\t[props, disabled, error, touched],\r\n\t);\r\n\r\n\tconst getBaseProps = () => ({\r\n\t\t\"className\": slots.base({ class: clsx(classNames?.base, className) }),\r\n\t\t\"data-disabled\": dataAttr(disabled),\r\n\t\t\"data-selected\": dataAttr(isSelected || isIndeterminate),\r\n\t});\r\n\r\n\tconst getWrapperProps = () => ({\r\n\t\t\"aria-hidden\": true,\r\n\t\t\"className\": slots.wrapper({ class: classNames?.wrapper }),\r\n\t\t\"data-selected\": dataAttr(isSelected || isIndeterminate),\r\n\t});\r\n\r\n\tconst getInputProps = () => ({\r\n\t\tref: mergeRefs(internalRef, props.ref),\r\n\t\ttype: \"checkbox\",\r\n\t\tid: resolvedId,\r\n\t\tdefaultChecked: checked === undefined ? defaultChecked : undefined,\r\n\t\tchecked: checked !== undefined ? checked : undefined,\r\n\t\tdisabled,\r\n\t\trequired,\r\n\t\treadOnly,\r\n\t\tonChange: handleChange,\r\n\t\tclassName: slots.hiddenInput({ class: classNames?.hiddenInput }),\r\n\t});\r\n\r\n\tconst getLabelProps = () => ({\r\n\t\thtmlFor: resolvedId,\r\n\t\tclassName: slots.label({ class: classNames?.label }),\r\n\t});\r\n\r\n\tconst getIconProps = (): CheckboxIconProps => ({\r\n\t\tisSelected,\r\n\t\tisIndeterminate,\r\n\t\tdisableAnimation: props.disableAnimation,\r\n\t\tclassName: slots.icon({ class: classNames?.icon }),\r\n\t});\r\n\r\n\tconst Component = \"label\";\r\n\r\n\treturn {\r\n\t\tComponent,\r\n\t\ticon,\r\n\t\tchildren,\r\n\t\tisSelected,\r\n\t\tisIndeterminate,\r\n\t\tgetBaseProps,\r\n\t\tgetWrapperProps,\r\n\t\tgetInputProps,\r\n\t\tgetLabelProps,\r\n\t\tgetIconProps,\r\n\t};\r\n}\r\n\r\nexport type UseCheckboxReturn = ReturnType<typeof useCheckbox>;\r\n","import type { UseCheckboxReturn } from \"./use-checkbox\";\n\ntype CheckboxIconProps = Partial<ReturnType<UseCheckboxReturn[\"getIconProps\"]>>;\n\nfunction CheckIcon(props: CheckboxIconProps) {\n\tconst { isSelected, disableAnimation, ...otherProps } = props;\n\n\treturn (\n\t\t<svg\n\t\t\taria-hidden=\"true\"\n\t\t\tfill=\"none\"\n\t\t\trole=\"presentation\"\n\t\t\tstroke=\"currentColor\"\n\t\t\tstrokeDasharray={22}\n\t\t\tstrokeDashoffset={isSelected ? 44 : 66}\n\t\t\tstrokeLinecap=\"round\"\n\t\t\tstrokeLinejoin=\"round\"\n\t\t\tstrokeWidth={2}\n\t\t\tstyle={\n\t\t\t\t!disableAnimation && isSelected\n\t\t\t\t\t? {\n\t\t\t\t\t\t\ttransition: \"stroke-dashoffset 250ms linear 0.2s\",\n\t\t\t\t\t }\n\t\t\t\t\t: {}\n\t\t\t}\n\t\t\tviewBox=\"0 0 17 18\"\n\t\t\t{...otherProps}\n\t\t>\n\t\t\t<polyline points=\"1 9 7 14 15 4\" />\n\t\t</svg>\n\t);\n}\n\nfunction IndeterminateIcon(props: CheckboxIconProps) {\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tconst { isSelected, disableAnimation, ...otherProps } = props;\n\n\treturn (\n\t\t<svg stroke=\"currentColor\" strokeWidth={3} viewBox=\"0 0 24 24\" {...otherProps}>\n\t\t\t<line x1=\"21\" x2=\"3\" y1=\"12\" y2=\"12\" />\n\t\t</svg>\n\t);\n}\n\n/**\n * CheckboxIcon is used to visually indicate the checked or indeterminate\n * state of a checkbox.\n */\nexport function CheckboxIcon(props: CheckboxIconProps) {\n\tconst { isIndeterminate, ...otherProps } = props;\n\tconst BaseIcon = isIndeterminate ? IndeterminateIcon : CheckIcon;\n\n\treturn <BaseIcon {...otherProps} />;\n}\n","// checkbox.tsx\r\nimport { forwardRef } from \"react\";\r\nimport { cloneElement, type ReactElement } from \"react\";\r\nimport { Slot } from \"@radix-ui/react-slot\";\r\n\r\nimport { useCheckbox, type UseCheckboxProps } from \"./use-checkbox\";\r\nimport { CheckboxIcon } from \"./checkbox-icon\";\r\n\r\nexport interface CheckboxProps extends UseCheckboxProps {\r\n\tasChild?: boolean;\r\n}\r\n\r\nconst Checkbox = forwardRef<HTMLInputElement, CheckboxProps>((props, ref) => {\r\n\tconst { asChild = false, ...restProps } = props;\r\n\tconst {\r\n\t\tComponent,\r\n\t\tchildren,\r\n\t\ticon = <CheckboxIcon />,\r\n\t\tgetBaseProps,\r\n\t\tgetWrapperProps,\r\n\t\tgetInputProps,\r\n\t\tgetIconProps,\r\n\t\tgetLabelProps,\r\n\t} = useCheckbox({ ...restProps, ref });\r\n\r\n\tconst clonedIcon = typeof icon === \"function\" ? icon(getIconProps()) : cloneElement(icon as ReactElement, getIconProps());\r\n\r\n\tconst Wrapper = asChild ? Slot : Component;\r\n\r\n\treturn (\r\n\t\t<Wrapper {...getBaseProps()}>\r\n\t\t\t<input {...getInputProps()} ref={ref} />\r\n\t\t\t<span {...getWrapperProps()}>{clonedIcon}</span>\r\n\t\t\t{children && <span {...getLabelProps()}>{children}</span>}\r\n\t\t</Wrapper>\r\n\t);\r\n});\r\n\r\nCheckbox.displayName = \"Custom.Checkbox\";\r\n\r\nexport default Checkbox;\r\n"],"names":[],"mappings":"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"}
|
|
@@ -1601,9 +1601,19 @@ exports.arrow = arrow;
|
|
|
1601
1601
|
exports.autoUpdate = autoUpdate;
|
|
1602
1602
|
exports.computePosition = computePosition;
|
|
1603
1603
|
exports.flip = flip;
|
|
1604
|
+
exports.getComputedStyle = getComputedStyle$1;
|
|
1605
|
+
exports.getOverflowAncestors = getOverflowAncestors;
|
|
1606
|
+
exports.getParentNode = getParentNode;
|
|
1607
|
+
exports.getWindow = getWindow;
|
|
1604
1608
|
exports.hide = hide;
|
|
1609
|
+
exports.isElement = isElement;
|
|
1610
|
+
exports.isHTMLElement = isHTMLElement;
|
|
1611
|
+
exports.isLastTraversableNode = isLastTraversableNode;
|
|
1612
|
+
exports.isNode = isNode;
|
|
1613
|
+
exports.isShadowRoot = isShadowRoot;
|
|
1614
|
+
exports.isWebKit = isWebKit;
|
|
1605
1615
|
exports.limitShift = limitShift;
|
|
1606
1616
|
exports.offset = offset;
|
|
1607
1617
|
exports.shift = shift;
|
|
1608
1618
|
exports.size = size;
|
|
1609
|
-
//# sourceMappingURL=floating-ui.dom-
|
|
1619
|
+
//# sourceMappingURL=floating-ui.dom-B9hvXzxg.js.map
|