@zentauri-ui/zentauri-components 0.0.92 → 1.0.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.
Files changed (112) hide show
  1. package/README.md +108 -38
  2. package/dist/chunk-B23TPTVG.mjs +11 -0
  3. package/dist/chunk-B23TPTVG.mjs.map +1 -0
  4. package/dist/{chunk-BZSIXBA7.js → chunk-BITDSQMR.js} +8 -6
  5. package/dist/chunk-BITDSQMR.js.map +1 -0
  6. package/dist/{chunk-VJHD7QZH.mjs → chunk-BORK3BJO.mjs} +4 -7
  7. package/dist/chunk-BORK3BJO.mjs.map +1 -0
  8. package/dist/chunk-WZ2GOU2J.js +13 -0
  9. package/dist/chunk-WZ2GOU2J.js.map +1 -0
  10. package/dist/ui/accordion.d.mts +1 -1
  11. package/dist/ui/accordion.d.ts +1 -1
  12. package/dist/ui/accordion.js +80 -61
  13. package/dist/ui/accordion.js.map +1 -1
  14. package/dist/ui/accordion.mjs +46 -39
  15. package/dist/ui/accordion.mjs.map +1 -1
  16. package/dist/ui/alert.d.mts +1 -1
  17. package/dist/ui/alert.d.ts +1 -1
  18. package/dist/ui/alert.js +57 -46
  19. package/dist/ui/alert.js.map +1 -1
  20. package/dist/ui/alert.mjs +28 -30
  21. package/dist/ui/alert.mjs.map +1 -1
  22. package/dist/ui/badge.js +20 -25
  23. package/dist/ui/badge.js.map +1 -1
  24. package/dist/ui/badge.mjs +8 -20
  25. package/dist/ui/badge.mjs.map +1 -1
  26. package/dist/ui/buttons.js +19 -21
  27. package/dist/ui/buttons.js.map +1 -1
  28. package/dist/ui/buttons.mjs +8 -18
  29. package/dist/ui/buttons.mjs.map +1 -1
  30. package/dist/ui/card.js +59 -54
  31. package/dist/ui/card.js.map +1 -1
  32. package/dist/ui/card.mjs +29 -39
  33. package/dist/ui/card.mjs.map +1 -1
  34. package/dist/ui/divider.js +39 -35
  35. package/dist/ui/divider.js.map +1 -1
  36. package/dist/ui/divider.mjs +18 -23
  37. package/dist/ui/divider.mjs.map +1 -1
  38. package/dist/ui/drawer.d.mts +1 -1
  39. package/dist/ui/drawer.d.ts +1 -1
  40. package/dist/ui/drawer.js +106 -73
  41. package/dist/ui/drawer.js.map +1 -1
  42. package/dist/ui/drawer.mjs +64 -45
  43. package/dist/ui/drawer.mjs.map +1 -1
  44. package/dist/ui/dropdown.js +42 -48
  45. package/dist/ui/dropdown.js.map +1 -1
  46. package/dist/ui/dropdown.mjs +13 -29
  47. package/dist/ui/dropdown.mjs.map +1 -1
  48. package/dist/ui/empty-state.d.mts +3 -3
  49. package/dist/ui/empty-state.d.ts +3 -3
  50. package/dist/ui/empty-state.js +83 -59
  51. package/dist/ui/empty-state.js.map +1 -1
  52. package/dist/ui/empty-state.mjs +64 -52
  53. package/dist/ui/empty-state.mjs.map +1 -1
  54. package/dist/ui/inputs.js +26 -31
  55. package/dist/ui/inputs.js.map +1 -1
  56. package/dist/ui/inputs.mjs +8 -19
  57. package/dist/ui/inputs.mjs.map +1 -1
  58. package/dist/ui/modal.d.mts +1 -1
  59. package/dist/ui/modal.d.ts +1 -1
  60. package/dist/ui/modal.js +116 -78
  61. package/dist/ui/modal.js.map +1 -1
  62. package/dist/ui/modal.mjs +74 -51
  63. package/dist/ui/modal.mjs.map +1 -1
  64. package/dist/ui/pagination.js +47 -60
  65. package/dist/ui/pagination.js.map +1 -1
  66. package/dist/ui/pagination.mjs +10 -32
  67. package/dist/ui/pagination.mjs.map +1 -1
  68. package/dist/ui/progress.js +70 -58
  69. package/dist/ui/progress.js.map +1 -1
  70. package/dist/ui/progress.mjs +44 -43
  71. package/dist/ui/progress.mjs.map +1 -1
  72. package/dist/ui/select.js +73 -81
  73. package/dist/ui/select.js.map +1 -1
  74. package/dist/ui/select.mjs +38 -59
  75. package/dist/ui/select.mjs.map +1 -1
  76. package/dist/ui/skeleton.js +45 -50
  77. package/dist/ui/skeleton.js.map +1 -1
  78. package/dist/ui/skeleton.mjs +8 -25
  79. package/dist/ui/skeleton.mjs.map +1 -1
  80. package/dist/ui/spinner.js +37 -38
  81. package/dist/ui/spinner.js.map +1 -1
  82. package/dist/ui/spinner.mjs +11 -18
  83. package/dist/ui/spinner.mjs.map +1 -1
  84. package/dist/ui/table.js +77 -79
  85. package/dist/ui/table.js.map +1 -1
  86. package/dist/ui/table.mjs +43 -60
  87. package/dist/ui/table.mjs.map +1 -1
  88. package/dist/ui/tabs.js +75 -75
  89. package/dist/ui/tabs.js.map +1 -1
  90. package/dist/ui/tabs.mjs +48 -59
  91. package/dist/ui/tabs.mjs.map +1 -1
  92. package/dist/ui/toast.d.mts +2 -2
  93. package/dist/ui/toast.d.ts +2 -2
  94. package/dist/ui/toast.js +111 -88
  95. package/dist/ui/toast.js.map +1 -1
  96. package/dist/ui/toast.mjs +77 -69
  97. package/dist/ui/toast.mjs.map +1 -1
  98. package/dist/ui/toggle.js +26 -28
  99. package/dist/ui/toggle.js.map +1 -1
  100. package/dist/ui/toggle.mjs +12 -21
  101. package/dist/ui/toggle.mjs.map +1 -1
  102. package/dist/ui/tooltip.js +29 -36
  103. package/dist/ui/tooltip.js.map +1 -1
  104. package/dist/ui/tooltip.mjs +8 -23
  105. package/dist/ui/tooltip.mjs.map +1 -1
  106. package/package.json +5 -3
  107. package/dist/chunk-BZSIXBA7.js.map +0 -1
  108. package/dist/chunk-E5UX537J.js +0 -11
  109. package/dist/chunk-E5UX537J.js.map +0 -1
  110. package/dist/chunk-MEWYFWBX.mjs +0 -14
  111. package/dist/chunk-MEWYFWBX.mjs.map +0 -1
  112. package/dist/chunk-VJHD7QZH.mjs.map +0 -1
@@ -1,14 +1,13 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
1
+ "use client";
2
+ 'use strict';
2
3
 
3
- var _chunkE5UX537Jjs = require('../chunk-E5UX537J.js');
4
+ var chunkWZ2GOU2J_js = require('../chunk-WZ2GOU2J.js');
5
+ var react = require('react');
6
+ var classVarianceAuthority = require('class-variance-authority');
7
+ var framerMotion = require('framer-motion');
8
+ var jsxRuntime = require('react/jsx-runtime');
4
9
 
5
- // src/ui/tooltip/tooltip.tsx
6
- var _react = require('react');
7
-
8
-
9
- // src/ui/tooltip/variants.ts
10
- var _classvarianceauthority = require('class-variance-authority');
11
- var tooltipVariants = _classvarianceauthority.cva.call(void 0,
10
+ var tooltipVariants = classVarianceAuthority.cva(
12
11
  "absolute z-50 rounded-md shadow-md transition-all duration-200 pointer-events-none",
13
12
  {
14
13
  variants: {
@@ -60,9 +59,6 @@ var tooltipVariants = _classvarianceauthority.cva.call(void 0,
60
59
  }
61
60
  );
62
61
 
63
- // src/ui/tooltip/tooltip.tsx
64
- var _framermotion = require('framer-motion');
65
-
66
62
  // src/ui/tooltip/animation.ts
67
63
  var tooltipAnimationPresets = {
68
64
  none: {},
@@ -77,12 +73,9 @@ var tooltipAnimationPresets = {
77
73
  transition: { duration: 0.15, ease: "easeIn" }
78
74
  }
79
75
  };
80
-
81
- // src/ui/tooltip/tooltip.tsx
82
- var _jsxruntime = require('react/jsx-runtime');
83
- var TooltipContext = _react.createContext.call(void 0, null);
76
+ var TooltipContext = react.createContext(null);
84
77
  var useTooltip = () => {
85
- const context = _react.useContext.call(void 0, TooltipContext);
78
+ const context = react.useContext(TooltipContext);
86
79
  if (!context) {
87
80
  throw new Error("Tooltip components must be used within Tooltip");
88
81
  }
@@ -96,32 +89,32 @@ var Tooltip = ({
96
89
  position = "top",
97
90
  delay = 100
98
91
  }) => {
99
- const [uncontrolledOpen, setUncontrolledOpen] = _react.useState.call(void 0, defaultOpen);
92
+ const [uncontrolledOpen, setUncontrolledOpen] = react.useState(defaultOpen);
100
93
  const isControlled = controlledOpen !== void 0;
101
94
  const open = isControlled ? controlledOpen : uncontrolledOpen;
102
- const setOpen = _react.useCallback.call(void 0,
95
+ const setOpen = react.useCallback(
103
96
  (value) => {
104
97
  if (!isControlled) setUncontrolledOpen(value);
105
- _optionalChain([onOpenChange, 'optionalCall', _ => _(value)]);
98
+ onOpenChange?.(value);
106
99
  },
107
100
  [isControlled, onOpenChange]
108
101
  );
109
- const showTimeoutRef = _react.useRef.call(void 0, null);
110
- const cancelDelayedOpen = _react.useCallback.call(void 0, () => {
102
+ const showTimeoutRef = react.useRef(null);
103
+ const cancelDelayedOpen = react.useCallback(() => {
111
104
  if (showTimeoutRef.current !== null) {
112
105
  clearTimeout(showTimeoutRef.current);
113
106
  showTimeoutRef.current = null;
114
107
  }
115
108
  }, []);
116
- const scheduleDelayedOpen = _react.useCallback.call(void 0, () => {
109
+ const scheduleDelayedOpen = react.useCallback(() => {
117
110
  cancelDelayedOpen();
118
111
  showTimeoutRef.current = setTimeout(() => {
119
112
  showTimeoutRef.current = null;
120
113
  setOpen(true);
121
114
  }, delay);
122
115
  }, [cancelDelayedOpen, delay, setOpen]);
123
- _react.useEffect.call(void 0, () => () => cancelDelayedOpen(), [cancelDelayedOpen]);
124
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
116
+ react.useEffect(() => () => cancelDelayedOpen(), [cancelDelayedOpen]);
117
+ return /* @__PURE__ */ jsxRuntime.jsx(
125
118
  TooltipContext.Provider,
126
119
  {
127
120
  value: {
@@ -132,7 +125,7 @@ var Tooltip = ({
132
125
  scheduleDelayedOpen,
133
126
  cancelDelayedOpen
134
127
  },
135
- children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "relative inline-block", children })
128
+ children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "relative inline-block", children })
136
129
  }
137
130
  );
138
131
  };
@@ -164,7 +157,7 @@ var TooltipTrigger = ({
164
157
  className,
165
158
  tabIndex: 0
166
159
  };
167
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { ...triggerProps, children });
160
+ return /* @__PURE__ */ jsxRuntime.jsx("span", { ...triggerProps, children });
168
161
  };
169
162
  var TooltipContent = ({
170
163
  children,
@@ -183,13 +176,13 @@ var TooltipContent = ({
183
176
  right: "left-full top-1/2 -translate-y-1/2 ml-2"
184
177
  };
185
178
  const motionProps = tooltipAnimationPresets[animation];
186
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
187
- _framermotion.motion.div,
179
+ return /* @__PURE__ */ jsxRuntime.jsx(
180
+ framerMotion.motion.div,
188
181
  {
189
182
  "data-open": open,
190
183
  role: "tooltip",
191
184
  ...motionProps,
192
- className: _chunkE5UX537Jjs.cn.call(void 0,
185
+ className: chunkWZ2GOU2J_js.cn(
193
186
  tooltipVariants({ variant, size, width }),
194
187
  positionStyles[position],
195
188
  className
@@ -199,10 +192,10 @@ var TooltipContent = ({
199
192
  );
200
193
  };
201
194
 
202
-
203
-
204
-
205
-
206
-
207
- exports.Tooltip = Tooltip; exports.TooltipContent = TooltipContent; exports.TooltipTrigger = TooltipTrigger; exports.tooltipVariants = tooltipVariants; exports.useTooltip = useTooltip;
195
+ exports.Tooltip = Tooltip;
196
+ exports.TooltipContent = TooltipContent;
197
+ exports.TooltipTrigger = TooltipTrigger;
198
+ exports.tooltipVariants = tooltipVariants;
199
+ exports.useTooltip = useTooltip;
200
+ //# sourceMappingURL=tooltip.js.map
208
201
  //# sourceMappingURL=tooltip.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["/Users/shubham/Desktop/Repos/NEXT%20JS/zentauri-ui/packages/components/dist/ui/tooltip.js"],"names":[],"mappings":"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","file":"/Users/shubham/Desktop/Repos/NEXT JS/zentauri-ui/packages/components/dist/ui/tooltip.js","sourcesContent":[null]}
1
+ {"version":3,"sources":["../../src/ui/tooltip/variants.ts","../../src/ui/tooltip/animation.ts","../../src/ui/tooltip/tooltip.tsx"],"names":["cva","createContext","useContext","useState","useCallback","useRef","useEffect","jsx","motion","cn"],"mappings":"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","file":"tooltip.js","sourcesContent":["import { cva } from \"class-variance-authority\";\n\nexport const tooltipVariants = cva(\n \"absolute z-50 rounded-md shadow-md transition-all duration-200 pointer-events-none\",\n {\n variants: {\n variant: {\n default: \"bg-black text-white\",\n outline: \"border bg-white text-black\",\n ghost: \"bg-gray-800 text-white/90\",\n glass: \"border border-white/15 bg-white/10 text-white backdrop-blur-md\",\n emerald: \"bg-emerald-600 text-white\",\n indigo: \"bg-indigo-600 text-white\",\n purple: \"bg-purple-600 text-white\",\n pink: \"bg-pink-600 text-white\",\n rose: \"bg-rose-600 text-white\",\n sky: \"bg-sky-600 text-white\",\n teal: \"bg-teal-600 text-white\",\n yellow: \"bg-yellow-600 text-white\",\n orange: \"bg-orange-600 text-white\",\n green: \"bg-green-600 text-white\",\n \"gradient-blue\":\n \"bg-gradient-to-r from-blue-600 to-purple-600 text-white\",\n \"gradient-green\":\n \"bg-gradient-to-r from-green-600 to-lime-600 text-white\",\n \"gradient-red\": \"bg-gradient-to-r from-red-600 to-pink-600 text-white\",\n \"gradient-yellow\":\n \"bg-gradient-to-r from-yellow-600 to-orange-600 text-white\",\n \"gradient-purple\":\n \"bg-gradient-to-r from-purple-600 to-pink-600 text-white\",\n \"gradient-teal\":\n \"bg-gradient-to-r from-teal-600 to-cyan-600 text-white\",\n \"gradient-indigo\":\n \"bg-gradient-to-r from-indigo-600 to-purple-600 text-white\",\n \"gradient-pink\":\n \"bg-gradient-to-r from-pink-600 to-rose-600 text-white\",\n \"gradient-orange\":\n \"bg-gradient-to-r from-orange-600 to-red-600 text-white\",\n },\n size: {\n sm: \"text-xs px-2 py-1\",\n md: \"text-sm px-3 py-1.5\",\n lg: \"text-base px-4 py-2\",\n },\n width: {\n fit: \"min-w-75 md:min-w-fit\",\n xs: \"min-w-75 md:min-w-xs\",\n sm: \"min-w-75 md:min-w-sm\",\n md: \"min-w-75 md:min-w-md\",\n lg: \"min-w-75 md:min-w-lg\",\n xl: \"min-w-75 md:min-w-xl\",\n \"2xl\": \"min-w-75 md:min-w-2xl\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"md\",\n width: \"xs\",\n },\n },\n);\n","import type { HTMLMotionProps } from \"framer-motion\";\nimport { TooltipAnimation } from \"./types\";\n\ntype TooltipPresetMotionProps = Pick<\n HTMLMotionProps<\"div\">,\n \"initial\" | \"animate\" | \"style\" | \"transition\"\n>;\n\nexport type TooltipAnimationPresets = Record<\n TooltipAnimation,\n TooltipPresetMotionProps\n>;\n\n/** Runs when TooltipContent mounts after open (e.g. trigger hover + delay), not viewport scroll. */\nexport const tooltipAnimationPresets: TooltipAnimationPresets = {\n none: {},\n fade: {\n initial: { opacity: 0 },\n animate: { opacity: 1 },\n transition: { duration: 0.15, ease: \"easeOut\" },\n },\n scale: {\n initial: { opacity: 0, scale: 0.96 },\n animate: { opacity: 1, scale: 1 },\n transition: { duration: 0.15, ease: \"easeIn\" },\n },\n};\n","\"use client\";\nimport { useCallback, useEffect, useRef, useState } from \"react\";\nimport type {\n TooltipProps,\n TooltipContextType,\n TooltipTriggerProps,\n TooltipContentProps,\n} from \"./types\";\n\nimport { createContext, useContext } from \"react\";\nimport { cn } from \"../../lib/utils\";\nimport { tooltipVariants } from \"./variants\";\nimport { motion } from \"framer-motion\";\nimport { tooltipAnimationPresets } from \"./animation\";\n\nexport const TooltipContext = createContext<TooltipContextType | null>(null);\n\nexport const useTooltip = () => {\n const context = useContext(TooltipContext);\n if (!context) {\n throw new Error(\"Tooltip components must be used within Tooltip\");\n }\n return context;\n};\nexport const Tooltip = ({\n children,\n defaultOpen = false,\n open: controlledOpen,\n onOpenChange,\n position = \"top\",\n delay = 100,\n}: TooltipProps) => {\n const [uncontrolledOpen, setUncontrolledOpen] = useState(defaultOpen);\n\n const isControlled = controlledOpen !== undefined;\n const open = isControlled ? controlledOpen : uncontrolledOpen;\n\n const setOpen = useCallback(\n (value: boolean) => {\n if (!isControlled) setUncontrolledOpen(value);\n onOpenChange?.(value);\n },\n [isControlled, onOpenChange],\n );\n\n const showTimeoutRef = useRef<ReturnType<typeof setTimeout> | null>(null);\n\n const cancelDelayedOpen = useCallback(() => {\n if (showTimeoutRef.current !== null) {\n clearTimeout(showTimeoutRef.current);\n showTimeoutRef.current = null;\n }\n }, []);\n\n const scheduleDelayedOpen = useCallback(() => {\n cancelDelayedOpen();\n showTimeoutRef.current = setTimeout(() => {\n showTimeoutRef.current = null;\n setOpen(true);\n }, delay);\n }, [cancelDelayedOpen, delay, setOpen]);\n\n useEffect(() => () => cancelDelayedOpen(), [cancelDelayedOpen]);\n\n return (\n <TooltipContext.Provider\n value={{\n open,\n setOpen,\n position,\n delay,\n scheduleDelayedOpen,\n cancelDelayedOpen,\n }}\n >\n <div className=\"relative inline-block\">{children}</div>\n </TooltipContext.Provider>\n );\n};\n\nexport const TooltipTrigger = ({\n children,\n className,\n}: TooltipTriggerProps) => {\n const { setOpen, scheduleDelayedOpen, cancelDelayedOpen } = useTooltip();\n\n const triggerProps = {\n onMouseEnter: () => scheduleDelayedOpen(),\n onMouseLeave: () => {\n cancelDelayedOpen();\n setOpen(false);\n },\n onFocus: () => {\n cancelDelayedOpen();\n setOpen(true);\n },\n onBlur: () => {\n cancelDelayedOpen();\n setOpen(false);\n },\n onKeyDown: (e: React.KeyboardEvent) => {\n if (e.key === \"Escape\") {\n cancelDelayedOpen();\n setOpen(false);\n }\n },\n className,\n tabIndex: 0,\n };\n\n return <span {...triggerProps}>{children}</span>;\n};\n\nexport const TooltipContent = ({\n children,\n className,\n variant,\n size,\n width,\n animation = \"none\",\n}: TooltipContentProps) => {\n const { open, position } = useTooltip();\n\n if (!open) return null;\n\n const positionStyles = {\n top: \"bottom-full mb-2\",\n bottom: \"top-full mt-2\",\n left: \"right-full top-1/2 -translate-y-1/2 mr-2\",\n right: \"left-full top-1/2 -translate-y-1/2 ml-2\",\n };\n\n const motionProps = tooltipAnimationPresets[animation];\n\n return (\n <motion.div\n data-open={open}\n role=\"tooltip\"\n {...motionProps}\n className={cn(\n tooltipVariants({ variant, size, width }),\n positionStyles[position],\n className,\n )}\n >\n {children}\n </motion.div>\n );\n};\n"]}
@@ -1,15 +1,10 @@
1
1
  "use client";
2
+ import { cn } from '../chunk-B23TPTVG.mjs';
3
+ import { createContext, useContext, useState, useCallback, useRef, useEffect } from 'react';
4
+ import { cva } from 'class-variance-authority';
5
+ import { motion } from 'framer-motion';
6
+ import { jsx } from 'react/jsx-runtime';
2
7
 
3
- import {
4
- cn
5
- } from "../chunk-MEWYFWBX.mjs";
6
-
7
- // src/ui/tooltip/tooltip.tsx
8
- import { useCallback, useEffect, useRef, useState } from "react";
9
- import { createContext, useContext } from "react";
10
-
11
- // src/ui/tooltip/variants.ts
12
- import { cva } from "class-variance-authority";
13
8
  var tooltipVariants = cva(
14
9
  "absolute z-50 rounded-md shadow-md transition-all duration-200 pointer-events-none",
15
10
  {
@@ -62,9 +57,6 @@ var tooltipVariants = cva(
62
57
  }
63
58
  );
64
59
 
65
- // src/ui/tooltip/tooltip.tsx
66
- import { motion } from "framer-motion";
67
-
68
60
  // src/ui/tooltip/animation.ts
69
61
  var tooltipAnimationPresets = {
70
62
  none: {},
@@ -79,9 +71,6 @@ var tooltipAnimationPresets = {
79
71
  transition: { duration: 0.15, ease: "easeIn" }
80
72
  }
81
73
  };
82
-
83
- // src/ui/tooltip/tooltip.tsx
84
- import { jsx } from "react/jsx-runtime";
85
74
  var TooltipContext = createContext(null);
86
75
  var useTooltip = () => {
87
76
  const context = useContext(TooltipContext);
@@ -200,11 +189,7 @@ var TooltipContent = ({
200
189
  }
201
190
  );
202
191
  };
203
- export {
204
- Tooltip,
205
- TooltipContent,
206
- TooltipTrigger,
207
- tooltipVariants,
208
- useTooltip
209
- };
192
+
193
+ export { Tooltip, TooltipContent, TooltipTrigger, tooltipVariants, useTooltip };
194
+ //# sourceMappingURL=tooltip.mjs.map
210
195
  //# sourceMappingURL=tooltip.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/ui/tooltip/tooltip.tsx","../../src/ui/tooltip/variants.ts","../../src/ui/tooltip/animation.ts"],"sourcesContent":["\"use client\";\nimport { useCallback, useEffect, useRef, useState } from \"react\";\nimport type {\n TooltipProps,\n TooltipContextType,\n TooltipTriggerProps,\n TooltipContentProps,\n} from \"./types\";\n\nimport { createContext, useContext } from \"react\";\nimport { cn } from \"../../lib/utils\";\nimport { tooltipVariants } from \"./variants\";\nimport { motion } from \"framer-motion\";\nimport { tooltipAnimationPresets } from \"./animation\";\n\nexport const TooltipContext = createContext<TooltipContextType | null>(null);\n\nexport const useTooltip = () => {\n const context = useContext(TooltipContext);\n if (!context) {\n throw new Error(\"Tooltip components must be used within Tooltip\");\n }\n return context;\n};\nexport const Tooltip = ({\n children,\n defaultOpen = false,\n open: controlledOpen,\n onOpenChange,\n position = \"top\",\n delay = 100,\n}: TooltipProps) => {\n const [uncontrolledOpen, setUncontrolledOpen] = useState(defaultOpen);\n\n const isControlled = controlledOpen !== undefined;\n const open = isControlled ? controlledOpen : uncontrolledOpen;\n\n const setOpen = useCallback(\n (value: boolean) => {\n if (!isControlled) setUncontrolledOpen(value);\n onOpenChange?.(value);\n },\n [isControlled, onOpenChange],\n );\n\n const showTimeoutRef = useRef<ReturnType<typeof setTimeout> | null>(null);\n\n const cancelDelayedOpen = useCallback(() => {\n if (showTimeoutRef.current !== null) {\n clearTimeout(showTimeoutRef.current);\n showTimeoutRef.current = null;\n }\n }, []);\n\n const scheduleDelayedOpen = useCallback(() => {\n cancelDelayedOpen();\n showTimeoutRef.current = setTimeout(() => {\n showTimeoutRef.current = null;\n setOpen(true);\n }, delay);\n }, [cancelDelayedOpen, delay, setOpen]);\n\n useEffect(() => () => cancelDelayedOpen(), [cancelDelayedOpen]);\n\n return (\n <TooltipContext.Provider\n value={{\n open,\n setOpen,\n position,\n delay,\n scheduleDelayedOpen,\n cancelDelayedOpen,\n }}\n >\n <div className=\"relative inline-block\">{children}</div>\n </TooltipContext.Provider>\n );\n};\n\nexport const TooltipTrigger = ({\n children,\n className,\n}: TooltipTriggerProps) => {\n const { setOpen, scheduleDelayedOpen, cancelDelayedOpen } = useTooltip();\n\n const triggerProps = {\n onMouseEnter: () => scheduleDelayedOpen(),\n onMouseLeave: () => {\n cancelDelayedOpen();\n setOpen(false);\n },\n onFocus: () => {\n cancelDelayedOpen();\n setOpen(true);\n },\n onBlur: () => {\n cancelDelayedOpen();\n setOpen(false);\n },\n onKeyDown: (e: React.KeyboardEvent) => {\n if (e.key === \"Escape\") {\n cancelDelayedOpen();\n setOpen(false);\n }\n },\n className,\n tabIndex: 0,\n };\n\n return <span {...triggerProps}>{children}</span>;\n};\n\nexport const TooltipContent = ({\n children,\n className,\n variant,\n size,\n width,\n animation = \"none\",\n}: TooltipContentProps) => {\n const { open, position } = useTooltip();\n\n if (!open) return null;\n\n const positionStyles = {\n top: \"bottom-full mb-2\",\n bottom: \"top-full mt-2\",\n left: \"right-full top-1/2 -translate-y-1/2 mr-2\",\n right: \"left-full top-1/2 -translate-y-1/2 ml-2\",\n };\n\n const motionProps = tooltipAnimationPresets[animation];\n\n return (\n <motion.div\n data-open={open}\n role=\"tooltip\"\n {...motionProps}\n className={cn(\n tooltipVariants({ variant, size, width }),\n positionStyles[position],\n className,\n )}\n >\n {children}\n </motion.div>\n );\n};\n","import { cva } from \"class-variance-authority\"\n\nexport const tooltipVariants = cva(\n \"absolute z-50 rounded-md shadow-md transition-all duration-200 pointer-events-none\",\n {\n variants: {\n variant: {\n default: \"bg-black text-white\",\n outline: \"border bg-white text-black\",\n ghost: \"bg-gray-800 text-white/90\",\n glass: \"border border-white/15 bg-white/10 text-white backdrop-blur-md\",\n emerald: \"bg-emerald-600 text-white\",\n indigo: \"bg-indigo-600 text-white\",\n purple: \"bg-purple-600 text-white\",\n pink: \"bg-pink-600 text-white\",\n rose: \"bg-rose-600 text-white\",\n sky: \"bg-sky-600 text-white\",\n teal: \"bg-teal-600 text-white\",\n yellow: \"bg-yellow-600 text-white\",\n orange: \"bg-orange-600 text-white\",\n green: \"bg-green-600 text-white\",\n \"gradient-blue\": \"bg-gradient-to-r from-blue-600 to-purple-600 text-white\",\n \"gradient-green\": \"bg-gradient-to-r from-green-600 to-lime-600 text-white\",\n \"gradient-red\": \"bg-gradient-to-r from-red-600 to-pink-600 text-white\",\n \"gradient-yellow\": \"bg-gradient-to-r from-yellow-600 to-orange-600 text-white\",\n \"gradient-purple\": \"bg-gradient-to-r from-purple-600 to-pink-600 text-white\",\n \"gradient-teal\": \"bg-gradient-to-r from-teal-600 to-cyan-600 text-white\",\n \"gradient-indigo\": \"bg-gradient-to-r from-indigo-600 to-purple-600 text-white\",\n \"gradient-pink\": \"bg-gradient-to-r from-pink-600 to-rose-600 text-white\",\n \"gradient-orange\": \"bg-gradient-to-r from-orange-600 to-red-600 text-white\",\n },\n size: {\n sm: \"text-xs px-2 py-1\",\n md: \"text-sm px-3 py-1.5\",\n lg: \"text-base px-4 py-2\",\n },\n width:{\n fit: \"min-w-75 md:min-w-fit\",\n xs: \"min-w-75 md:min-w-xs\",\n sm: \"min-w-75 md:min-w-sm\",\n md: \"min-w-75 md:min-w-md\",\n lg: \"min-w-75 md:min-w-lg\",\n xl: \"min-w-75 md:min-w-xl\",\n \"2xl\": \"min-w-75 md:min-w-2xl\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"md\",\n width: \"xs\",\n },\n }\n)","import type { HTMLMotionProps } from \"framer-motion\";\nimport { TooltipAnimation } from \"./types\";\n\ntype TooltipPresetMotionProps = Pick<\n HTMLMotionProps<\"div\">,\n \"initial\" | \"animate\" | \"style\" | \"transition\"\n>;\n\nexport type TooltipAnimationPresets = Record<TooltipAnimation, TooltipPresetMotionProps>;\n\n/** Runs when TooltipContent mounts after open (e.g. trigger hover + delay), not viewport scroll. */\nexport const tooltipAnimationPresets: TooltipAnimationPresets = {\n none: {},\n fade: {\n initial: { opacity: 0 },\n animate: { opacity: 1 },\n transition: { duration: 0.15, ease: \"easeOut\" },\n },\n scale: {\n initial: { opacity: 0, scale: 0.96 },\n animate: { opacity: 1, scale: 1 },\n transition: { duration: 0.15, ease: \"easeIn\" },\n },\n};\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../../src/ui/tooltip/variants.ts","../../src/ui/tooltip/animation.ts","../../src/ui/tooltip/tooltip.tsx"],"names":[],"mappings":"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","file":"tooltip.mjs","sourcesContent":["import { cva } from \"class-variance-authority\";\n\nexport const tooltipVariants = cva(\n \"absolute z-50 rounded-md shadow-md transition-all duration-200 pointer-events-none\",\n {\n variants: {\n variant: {\n default: \"bg-black text-white\",\n outline: \"border bg-white text-black\",\n ghost: \"bg-gray-800 text-white/90\",\n glass: \"border border-white/15 bg-white/10 text-white backdrop-blur-md\",\n emerald: \"bg-emerald-600 text-white\",\n indigo: \"bg-indigo-600 text-white\",\n purple: \"bg-purple-600 text-white\",\n pink: \"bg-pink-600 text-white\",\n rose: \"bg-rose-600 text-white\",\n sky: \"bg-sky-600 text-white\",\n teal: \"bg-teal-600 text-white\",\n yellow: \"bg-yellow-600 text-white\",\n orange: \"bg-orange-600 text-white\",\n green: \"bg-green-600 text-white\",\n \"gradient-blue\":\n \"bg-gradient-to-r from-blue-600 to-purple-600 text-white\",\n \"gradient-green\":\n \"bg-gradient-to-r from-green-600 to-lime-600 text-white\",\n \"gradient-red\": \"bg-gradient-to-r from-red-600 to-pink-600 text-white\",\n \"gradient-yellow\":\n \"bg-gradient-to-r from-yellow-600 to-orange-600 text-white\",\n \"gradient-purple\":\n \"bg-gradient-to-r from-purple-600 to-pink-600 text-white\",\n \"gradient-teal\":\n \"bg-gradient-to-r from-teal-600 to-cyan-600 text-white\",\n \"gradient-indigo\":\n \"bg-gradient-to-r from-indigo-600 to-purple-600 text-white\",\n \"gradient-pink\":\n \"bg-gradient-to-r from-pink-600 to-rose-600 text-white\",\n \"gradient-orange\":\n \"bg-gradient-to-r from-orange-600 to-red-600 text-white\",\n },\n size: {\n sm: \"text-xs px-2 py-1\",\n md: \"text-sm px-3 py-1.5\",\n lg: \"text-base px-4 py-2\",\n },\n width: {\n fit: \"min-w-75 md:min-w-fit\",\n xs: \"min-w-75 md:min-w-xs\",\n sm: \"min-w-75 md:min-w-sm\",\n md: \"min-w-75 md:min-w-md\",\n lg: \"min-w-75 md:min-w-lg\",\n xl: \"min-w-75 md:min-w-xl\",\n \"2xl\": \"min-w-75 md:min-w-2xl\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"md\",\n width: \"xs\",\n },\n },\n);\n","import type { HTMLMotionProps } from \"framer-motion\";\nimport { TooltipAnimation } from \"./types\";\n\ntype TooltipPresetMotionProps = Pick<\n HTMLMotionProps<\"div\">,\n \"initial\" | \"animate\" | \"style\" | \"transition\"\n>;\n\nexport type TooltipAnimationPresets = Record<\n TooltipAnimation,\n TooltipPresetMotionProps\n>;\n\n/** Runs when TooltipContent mounts after open (e.g. trigger hover + delay), not viewport scroll. */\nexport const tooltipAnimationPresets: TooltipAnimationPresets = {\n none: {},\n fade: {\n initial: { opacity: 0 },\n animate: { opacity: 1 },\n transition: { duration: 0.15, ease: \"easeOut\" },\n },\n scale: {\n initial: { opacity: 0, scale: 0.96 },\n animate: { opacity: 1, scale: 1 },\n transition: { duration: 0.15, ease: \"easeIn\" },\n },\n};\n","\"use client\";\nimport { useCallback, useEffect, useRef, useState } from \"react\";\nimport type {\n TooltipProps,\n TooltipContextType,\n TooltipTriggerProps,\n TooltipContentProps,\n} from \"./types\";\n\nimport { createContext, useContext } from \"react\";\nimport { cn } from \"../../lib/utils\";\nimport { tooltipVariants } from \"./variants\";\nimport { motion } from \"framer-motion\";\nimport { tooltipAnimationPresets } from \"./animation\";\n\nexport const TooltipContext = createContext<TooltipContextType | null>(null);\n\nexport const useTooltip = () => {\n const context = useContext(TooltipContext);\n if (!context) {\n throw new Error(\"Tooltip components must be used within Tooltip\");\n }\n return context;\n};\nexport const Tooltip = ({\n children,\n defaultOpen = false,\n open: controlledOpen,\n onOpenChange,\n position = \"top\",\n delay = 100,\n}: TooltipProps) => {\n const [uncontrolledOpen, setUncontrolledOpen] = useState(defaultOpen);\n\n const isControlled = controlledOpen !== undefined;\n const open = isControlled ? controlledOpen : uncontrolledOpen;\n\n const setOpen = useCallback(\n (value: boolean) => {\n if (!isControlled) setUncontrolledOpen(value);\n onOpenChange?.(value);\n },\n [isControlled, onOpenChange],\n );\n\n const showTimeoutRef = useRef<ReturnType<typeof setTimeout> | null>(null);\n\n const cancelDelayedOpen = useCallback(() => {\n if (showTimeoutRef.current !== null) {\n clearTimeout(showTimeoutRef.current);\n showTimeoutRef.current = null;\n }\n }, []);\n\n const scheduleDelayedOpen = useCallback(() => {\n cancelDelayedOpen();\n showTimeoutRef.current = setTimeout(() => {\n showTimeoutRef.current = null;\n setOpen(true);\n }, delay);\n }, [cancelDelayedOpen, delay, setOpen]);\n\n useEffect(() => () => cancelDelayedOpen(), [cancelDelayedOpen]);\n\n return (\n <TooltipContext.Provider\n value={{\n open,\n setOpen,\n position,\n delay,\n scheduleDelayedOpen,\n cancelDelayedOpen,\n }}\n >\n <div className=\"relative inline-block\">{children}</div>\n </TooltipContext.Provider>\n );\n};\n\nexport const TooltipTrigger = ({\n children,\n className,\n}: TooltipTriggerProps) => {\n const { setOpen, scheduleDelayedOpen, cancelDelayedOpen } = useTooltip();\n\n const triggerProps = {\n onMouseEnter: () => scheduleDelayedOpen(),\n onMouseLeave: () => {\n cancelDelayedOpen();\n setOpen(false);\n },\n onFocus: () => {\n cancelDelayedOpen();\n setOpen(true);\n },\n onBlur: () => {\n cancelDelayedOpen();\n setOpen(false);\n },\n onKeyDown: (e: React.KeyboardEvent) => {\n if (e.key === \"Escape\") {\n cancelDelayedOpen();\n setOpen(false);\n }\n },\n className,\n tabIndex: 0,\n };\n\n return <span {...triggerProps}>{children}</span>;\n};\n\nexport const TooltipContent = ({\n children,\n className,\n variant,\n size,\n width,\n animation = \"none\",\n}: TooltipContentProps) => {\n const { open, position } = useTooltip();\n\n if (!open) return null;\n\n const positionStyles = {\n top: \"bottom-full mb-2\",\n bottom: \"top-full mt-2\",\n left: \"right-full top-1/2 -translate-y-1/2 mr-2\",\n right: \"left-full top-1/2 -translate-y-1/2 ml-2\",\n };\n\n const motionProps = tooltipAnimationPresets[animation];\n\n return (\n <motion.div\n data-open={open}\n role=\"tooltip\"\n {...motionProps}\n className={cn(\n tooltipVariants({ variant, size, width }),\n positionStyles[position],\n className,\n )}\n >\n {children}\n </motion.div>\n );\n};\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zentauri-ui/zentauri-components",
3
- "version": "0.0.92",
3
+ "version": "1.0.0",
4
4
  "description": "A UI component library built with React and Tailwind CSS",
5
5
  "license": "MIT",
6
6
  "files": ["dist"],
@@ -11,8 +11,8 @@
11
11
  "exports": {
12
12
  "./ui/*": {
13
13
  "types": "./dist/ui/*.d.ts",
14
- "import": "./dist/ui/*.js",
15
- "require": "./dist/ui/*.cjs"
14
+ "import": "./dist/ui/*.mjs",
15
+ "require": "./dist/ui/*.js"
16
16
  }
17
17
  },
18
18
  "scripts": {
@@ -43,6 +43,8 @@
43
43
  "@types/react": "^19",
44
44
  "@types/react-dom": "^19",
45
45
  "jsdom": "^26.1.0",
46
+ "framer-motion": "^12.38.0",
47
+ "react-icons": "^5.6.0",
46
48
  "typescript": "^5",
47
49
  "vitest": "^4.1.4",
48
50
  "tsup": "^8.5.1"
@@ -1 +0,0 @@
1
- {"version":3,"sources":["/Users/shubham/Desktop/Repos/NEXT%20JS/zentauri-ui/packages/components/dist/chunk-BZSIXBA7.js"],"names":[],"mappings":"AAAA;AACA,kEAA8C;AAC9C,IAAI,eAAe,EAAE,yCAAG;AACxB,EAAE;AACF,IAAI,4EAA4E;AAChF,IAAI,6DAA6D;AACjE,IAAI,0GAA0G;AAC9G,IAAI,kDAAkD;AACtD,IAAI;AACJ,EAAE,CAAC;AACH,EAAE;AACF,IAAI,QAAQ,EAAE;AACd,MAAM,UAAU,EAAE;AAClB,QAAQ,OAAO,EAAE,kFAAkF;AACnG,QAAQ,SAAS,EAAE,+CAA+C;AAClE,QAAQ,WAAW,EAAE,0CAA0C;AAC/D,QAAQ,OAAO,EAAE,mEAAmE;AACpF,QAAQ,KAAK,EAAE,gDAAgD;AAC/D,QAAQ,IAAI,EAAE,iEAAiE;AAC/E,QAAQ,KAAK,EAAE,kFAAkF;AACjG,QAAQ,OAAO,EAAE,gDAAgD;AACjE,QAAQ,MAAM,EAAE,8CAA8C;AAC9D,QAAQ,MAAM,EAAE,8CAA8C;AAC9D,QAAQ,IAAI,EAAE,0CAA0C;AACxD,QAAQ,IAAI,EAAE,0CAA0C;AACxD,QAAQ,GAAG,EAAE,wCAAwC;AACrD,QAAQ,IAAI,EAAE,0CAA0C;AACxD,QAAQ,MAAM,EAAE,8CAA8C;AAC9D,QAAQ,MAAM,EAAE,8CAA8C;AAC9D,QAAQ,IAAI,EAAE,0CAA0C;AACxD,QAAQ,KAAK,EAAE,4CAA4C;AAC3D,QAAQ,MAAM,EAAE,8CAA8C;AAC9D,QAAQ,eAAe,EAAE,iGAAiG;AAC1H,QAAQ,gBAAgB,EAAE,+FAA+F;AACzH,QAAQ,cAAc,EAAE,2FAA2F;AACnH,QAAQ,iBAAiB,EAAE,qGAAqG;AAChI,QAAQ,iBAAiB,EAAE,iGAAiG;AAC5H,QAAQ,eAAe,EAAE,6FAA6F;AACtH,QAAQ,iBAAiB,EAAE,qGAAqG;AAChI,QAAQ,eAAe,EAAE,6FAA6F;AACtH,QAAQ,iBAAiB,EAAE;AAC3B,MAAM,CAAC;AACP,MAAM,IAAI,EAAE;AACZ,QAAQ,EAAE,EAAE,yBAAyB;AACrC,QAAQ,EAAE,EAAE,kBAAkB;AAC9B,QAAQ,EAAE,EAAE,6BAA6B;AACzC,QAAQ,EAAE,EAAE,2BAA2B;AACvC,QAAQ,KAAK,EAAE,mCAAmC;AAClD,QAAQ,KAAK,EAAE,qCAAqC;AACpD,QAAQ,KAAK,EAAE,sCAAsC;AACrD,QAAQ,KAAK,EAAE,sCAAsC;AACrD,QAAQ,KAAK,EAAE,sCAAsC;AACrD,QAAQ,KAAK,EAAE,sCAAsC;AACrD,QAAQ,KAAK,EAAE,6BAA6B;AAC5C,QAAQ,KAAK,EAAE,sCAAsC;AACrD,QAAQ,MAAM,EAAE,sCAAsC;AACtD,QAAQ,IAAI,EAAE;AACd,MAAM;AACN,IAAI,CAAC;AACL,IAAI,eAAe,EAAE;AACrB,MAAM,UAAU,EAAE,SAAS;AAC3B,MAAM,IAAI,EAAE;AACZ,IAAI;AACJ,EAAE;AACF,CAAC;AACD;AACA;AACE;AACF,wCAAC","file":"/Users/shubham/Desktop/Repos/NEXT JS/zentauri-ui/packages/components/dist/chunk-BZSIXBA7.js","sourcesContent":[null]}
@@ -1,11 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});// src/lib/utils.ts
2
- var _clsx = require('clsx');
3
- var _tailwindmerge = require('tailwind-merge');
4
- function cn(...inputs) {
5
- return _tailwindmerge.twMerge.call(void 0, _clsx.clsx.call(void 0, inputs));
6
- }
7
-
8
-
9
-
10
- exports.cn = cn;
11
- //# sourceMappingURL=chunk-E5UX537J.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["/Users/shubham/Desktop/Repos/NEXT%20JS/zentauri-ui/packages/components/dist/chunk-E5UX537J.js"],"names":[],"mappings":"AAAA;AACA,4BAA2B;AAC3B,+CAAwC;AACxC,SAAS,EAAE,CAAC,GAAG,MAAM,EAAE;AACvB,EAAE,OAAO,oCAAO,wBAAK,MAAO,CAAC,CAAC;AAC9B;AACA;AACA;AACE;AACF,gBAAC","file":"/Users/shubham/Desktop/Repos/NEXT JS/zentauri-ui/packages/components/dist/chunk-E5UX537J.js","sourcesContent":[null]}
@@ -1,14 +0,0 @@
1
- "use client";
2
-
3
-
4
- // src/lib/utils.ts
5
- import { clsx } from "clsx";
6
- import { twMerge } from "tailwind-merge";
7
- function cn(...inputs) {
8
- return twMerge(clsx(inputs));
9
- }
10
-
11
- export {
12
- cn
13
- };
14
- //# sourceMappingURL=chunk-MEWYFWBX.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/lib/utils.ts"],"sourcesContent":["import { type ClassValue, clsx } from \"clsx\";\nimport { twMerge } from \"tailwind-merge\";\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}"],"mappings":";;;;AAAA,SAA0B,YAAY;AACtC,SAAS,eAAe;AAEjB,SAAS,MAAM,QAAsB;AAC1C,SAAO,QAAQ,KAAK,MAAM,CAAC;AAC7B;","names":[]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/ui/buttons/variants.ts"],"sourcesContent":["import { cva } from \"class-variance-authority\";\n\nexport const buttonVariants = cva(\n [\n \"inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-xl\",\n \"text-sm font-medium ring-offset-slate-950 transition-colors\",\n \"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-slate-300 focus-visible:ring-offset-2\",\n \"disabled:pointer-events-none disabled:opacity-50\",\n \"select-none\",\n ],\n {\n variants: {\n appearance: {\n default:\n \"bg-slate-50 text-slate-950 shadow-[0_1px_2px_rgba(15,23,42,0.12)] hover:bg-white\",\n secondary: \"bg-slate-800 text-slate-50 hover:bg-slate-700\",\n destructive: \"bg-rose-600 text-white hover:bg-rose-600\",\n outline:\n \"border border-white/10 bg-white/5 text-slate-50 hover:bg-white/10\",\n ghost: \"bg-transparent text-slate-200 hover:bg-white/5\",\n link: \"bg-transparent text-cyan-300 underline-offset-4 hover:underline\",\n glass:\n \"border border-white/15 bg-white/10 text-white backdrop-blur-md hover:bg-white/15\",\n emerald: \"bg-emerald-600 text-white hover:bg-emerald-600\",\n indigo: \"bg-indigo-600 text-white hover:bg-indigo-600\",\n purple: \"bg-purple-600 text-white hover:bg-purple-600\",\n pink: \"bg-pink-600 text-white hover:bg-pink-600\",\n rose: \"bg-rose-600 text-white hover:bg-rose-600\",\n sky: \"bg-sky-600 text-white hover:bg-sky-600\",\n teal: \"bg-teal-600 text-white hover:bg-teal-600\",\n yellow: \"bg-yellow-600 text-white hover:bg-yellow-600\",\n orange: \"bg-orange-600 text-white hover:bg-orange-600\",\n gray: \"bg-gray-600 text-white hover:bg-gray-600\",\n amber: \"bg-amber-600 text-white hover:bg-amber-600\",\n violet: \"bg-violet-600 text-white hover:bg-violet-600\",\n \"gradient-blue\": \"bg-gradient-to-r from-blue-600 to-purple-600 text-white hover:from-blue-600 hover:to-purple-600\",\n \"gradient-green\": \"bg-gradient-to-r from-green-600 to-lime-600 text-white hover:from-green-600 hover:to-lime-600\",\n \"gradient-red\": \"bg-gradient-to-r from-red-600 to-pink-600 text-white hover:from-red-600 hover:to-pink-600\",\n \"gradient-yellow\": \"bg-gradient-to-r from-yellow-600 to-orange-600 text-white hover:from-yellow-600 hover:to-orange-600\",\n \"gradient-purple\": \"bg-gradient-to-r from-purple-600 to-pink-600 text-white hover:from-purple-600 hover:to-pink-600\",\n \"gradient-teal\": \"bg-gradient-to-r from-teal-600 to-cyan-600 text-white hover:from-teal-600 hover:to-cyan-600\",\n \"gradient-indigo\": \"bg-gradient-to-r from-indigo-600 to-purple-600 text-white hover:from-indigo-600 hover:to-purple-600\",\n \"gradient-pink\": \"bg-gradient-to-r from-pink-600 to-rose-600 text-white hover:from-pink-600 hover:to-rose-600\",\n \"gradient-orange\": \"bg-gradient-to-r from-orange-600 to-red-600 text-white hover:from-orange-600 hover:to-red-600\",\n },\n size: {\n sm: \"h-7 md:h-9 px-3 text-xs\",\n md: \"h-9 md:h-11 px-4\",\n lg: \"h-10 md:h-12 px-5 text-base\",\n xl: \"h-12 md:h-14 px-6 text-lg\",\n \"2xl\": \"h-14 md:h-16 px-6 md:px-8 text-xl\",\n \"3xl\": \"h-16 md:h-18 px-8 md:px-10 text-2xl\",\n \"4xl\": \"h-18 md:h-20 px-10 md:px-12 text-2xl\",\n \"5xl\": \"h-20 md:h-22 px-12 md:px-14 text-2xl\",\n \"6xl\": \"h-22 md:h-24 px-14 md:px-16 text-2xl\",\n \"7xl\": \"h-24 md:h-26 px-16 md:px-18 text-2xl\",\n \"8xl\": \"h-26 md:h-28 px-20 text-2xl\",\n \"9xl\": \"h-24 md:h-30 px-18 md:px-22 text-2xl\",\n \"10xl\": \"h-26 md:h-32 px-20 md:px-24 text-2xl\",\n icon: \"h-10 w-10\",\n },\n },\n defaultVariants: {\n appearance: \"default\",\n size: \"md\",\n },\n },\n);\n"],"mappings":";;;;AAAA,SAAS,WAAW;AAEb,IAAM,iBAAiB;AAAA,EAC5B;AAAA,IACE;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAAA,EACA;AAAA,IACE,UAAU;AAAA,MACR,YAAY;AAAA,QACV,SACE;AAAA,QACF,WAAW;AAAA,QACX,aAAa;AAAA,QACb,SACE;AAAA,QACF,OAAO;AAAA,QACP,MAAM;AAAA,QACN,OACE;AAAA,QACF,SAAS;AAAA,QACT,QAAQ;AAAA,QACR,QAAQ;AAAA,QACR,MAAM;AAAA,QACN,MAAM;AAAA,QACN,KAAK;AAAA,QACL,MAAM;AAAA,QACN,QAAQ;AAAA,QACR,QAAQ;AAAA,QACR,MAAM;AAAA,QACN,OAAO;AAAA,QACP,QAAQ;AAAA,QACR,iBAAiB;AAAA,QACjB,kBAAkB;AAAA,QAClB,gBAAgB;AAAA,QAChB,mBAAmB;AAAA,QACnB,mBAAmB;AAAA,QACnB,iBAAiB;AAAA,QACjB,mBAAmB;AAAA,QACnB,iBAAiB;AAAA,QACjB,mBAAmB;AAAA,MACrB;AAAA,MACA,MAAM;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,OAAO;AAAA,QACP,OAAO;AAAA,QACP,OAAO;AAAA,QACP,OAAO;AAAA,QACP,OAAO;AAAA,QACP,OAAO;AAAA,QACP,OAAO;AAAA,QACP,OAAO;AAAA,QACP,QAAQ;AAAA,QACR,MAAM;AAAA,MACR;AAAA,IACF;AAAA,IACA,iBAAiB;AAAA,MACf,YAAY;AAAA,MACZ,MAAM;AAAA,IACR;AAAA,EACF;AACF;","names":[]}