@zentauri-ui/zentauri-components 0.0.91 → 0.0.92

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 (167) hide show
  1. package/dist/chunk-BZSIXBA7.js +70 -0
  2. package/dist/chunk-BZSIXBA7.js.map +1 -0
  3. package/dist/chunk-E5UX537J.js +11 -0
  4. package/dist/chunk-E5UX537J.js.map +1 -0
  5. package/dist/chunk-MEWYFWBX.mjs +14 -0
  6. package/dist/chunk-MEWYFWBX.mjs.map +1 -0
  7. package/dist/chunk-VJHD7QZH.mjs +73 -0
  8. package/dist/chunk-VJHD7QZH.mjs.map +1 -0
  9. package/dist/ui/accordion.js +51 -57
  10. package/dist/ui/accordion.js.map +1 -1
  11. package/dist/ui/{accordion.cjs → accordion.mjs} +38 -67
  12. package/dist/ui/accordion.mjs.map +1 -0
  13. package/dist/ui/{alert.d.cts → alert.d.mts} +1 -1
  14. package/dist/ui/alert.d.ts +1 -1
  15. package/dist/ui/alert.js +40 -46
  16. package/dist/ui/alert.js.map +1 -1
  17. package/dist/ui/{alert.cjs → alert.mjs} +29 -66
  18. package/dist/ui/alert.mjs.map +1 -0
  19. package/dist/ui/{badge.d.cts → badge.d.mts} +1 -1
  20. package/dist/ui/badge.d.ts +1 -1
  21. package/dist/ui/badge.js +20 -26
  22. package/dist/ui/badge.js.map +1 -1
  23. package/dist/ui/{badge.cjs → badge.mjs} +17 -48
  24. package/dist/ui/badge.mjs.map +1 -0
  25. package/dist/ui/{buttons.d.cts → buttons.d.mts} +1 -1
  26. package/dist/ui/buttons.d.ts +1 -1
  27. package/dist/ui/buttons.js +18 -87
  28. package/dist/ui/buttons.js.map +1 -1
  29. package/dist/ui/buttons.mjs +109 -0
  30. package/dist/ui/buttons.mjs.map +1 -0
  31. package/dist/ui/{card.d.cts → card.d.mts} +1 -1
  32. package/dist/ui/card.d.ts +1 -1
  33. package/dist/ui/card.js +40 -46
  34. package/dist/ui/card.js.map +1 -1
  35. package/dist/ui/{card.cjs → card.mjs} +26 -65
  36. package/dist/ui/card.mjs.map +1 -0
  37. package/dist/ui/{divider.d.cts → divider.d.mts} +2 -2
  38. package/dist/ui/divider.d.ts +2 -2
  39. package/dist/ui/divider.js +30 -36
  40. package/dist/ui/divider.js.map +1 -1
  41. package/dist/ui/{divider.cjs → divider.mjs} +22 -55
  42. package/dist/ui/divider.mjs.map +1 -0
  43. package/dist/ui/{drawer.d.cts → drawer.d.mts} +3 -3
  44. package/dist/ui/drawer.d.ts +3 -3
  45. package/dist/ui/drawer.js +64 -70
  46. package/dist/ui/drawer.js.map +1 -1
  47. package/dist/ui/{drawer.cjs → drawer.mjs} +48 -77
  48. package/dist/ui/drawer.mjs.map +1 -0
  49. package/dist/ui/{dropdown.d.cts → dropdown.d.mts} +4 -4
  50. package/dist/ui/dropdown.d.ts +4 -4
  51. package/dist/ui/dropdown.js +43 -49
  52. package/dist/ui/dropdown.js.map +1 -1
  53. package/dist/ui/{dropdown.cjs → dropdown.mjs} +34 -62
  54. package/dist/ui/dropdown.mjs.map +1 -0
  55. package/dist/ui/{empty-state.d.cts → empty-state.d.mts} +1 -1
  56. package/dist/ui/empty-state.d.ts +1 -1
  57. package/dist/ui/empty-state.js +31 -37
  58. package/dist/ui/empty-state.js.map +1 -1
  59. package/dist/ui/empty-state.mjs +150 -0
  60. package/dist/ui/empty-state.mjs.map +1 -0
  61. package/dist/ui/{inputs.d.cts → inputs.d.mts} +2 -2
  62. package/dist/ui/inputs.d.ts +2 -2
  63. package/dist/ui/inputs.js +26 -32
  64. package/dist/ui/inputs.js.map +1 -1
  65. package/dist/ui/{inputs.cjs → inputs.mjs} +21 -51
  66. package/dist/ui/inputs.mjs.map +1 -0
  67. package/dist/ui/{modal.d.cts → modal.d.mts} +3 -3
  68. package/dist/ui/modal.d.ts +3 -3
  69. package/dist/ui/modal.js +69 -75
  70. package/dist/ui/modal.js.map +1 -1
  71. package/dist/ui/{modal.cjs → modal.mjs} +53 -79
  72. package/dist/ui/modal.mjs.map +1 -0
  73. package/dist/ui/{pagination.d.cts → pagination.d.mts} +3 -3
  74. package/dist/ui/pagination.d.ts +3 -3
  75. package/dist/ui/pagination.js +48 -117
  76. package/dist/ui/pagination.js.map +1 -1
  77. package/dist/ui/{pagination.cjs → pagination.mjs} +35 -131
  78. package/dist/ui/pagination.mjs.map +1 -0
  79. package/dist/ui/{progress.d.cts → progress.d.mts} +5 -5
  80. package/dist/ui/progress.d.ts +5 -5
  81. package/dist/ui/progress.js +37 -43
  82. package/dist/ui/progress.js.map +1 -1
  83. package/dist/ui/{progress.cjs → progress.mjs} +25 -60
  84. package/dist/ui/progress.mjs.map +1 -0
  85. package/dist/ui/{select.d.cts → select.d.mts} +4 -4
  86. package/dist/ui/select.d.ts +4 -4
  87. package/dist/ui/select.js +43 -49
  88. package/dist/ui/select.js.map +1 -1
  89. package/dist/ui/{select.cjs → select.mjs} +31 -68
  90. package/dist/ui/select.mjs.map +1 -0
  91. package/dist/ui/{skeleton.d.cts → skeleton.d.mts} +3 -3
  92. package/dist/ui/skeleton.d.ts +3 -3
  93. package/dist/ui/skeleton.js +45 -51
  94. package/dist/ui/skeleton.js.map +1 -1
  95. package/dist/ui/{skeleton.cjs → skeleton.mjs} +31 -67
  96. package/dist/ui/skeleton.mjs.map +1 -0
  97. package/dist/ui/{spinner.d.cts → spinner.d.mts} +3 -3
  98. package/dist/ui/spinner.d.ts +3 -3
  99. package/dist/ui/spinner.js +34 -40
  100. package/dist/ui/spinner.js.map +1 -1
  101. package/dist/ui/{spinner.cjs → spinner.mjs} +27 -57
  102. package/dist/ui/spinner.mjs.map +1 -0
  103. package/dist/ui/{table.d.cts → table.d.mts} +4 -4
  104. package/dist/ui/table.d.ts +4 -4
  105. package/dist/ui/table.js +43 -49
  106. package/dist/ui/table.js.map +1 -1
  107. package/dist/ui/{table.cjs → table.mjs} +26 -65
  108. package/dist/ui/table.mjs.map +1 -0
  109. package/dist/ui/{tabs.d.cts → tabs.d.mts} +1 -1
  110. package/dist/ui/tabs.d.ts +1 -1
  111. package/dist/ui/tabs.js +41 -47
  112. package/dist/ui/tabs.js.map +1 -1
  113. package/dist/ui/{tabs.cjs → tabs.mjs} +29 -59
  114. package/dist/ui/tabs.mjs.map +1 -0
  115. package/dist/ui/{toast.d.cts → toast.d.mts} +1 -1
  116. package/dist/ui/toast.d.ts +1 -1
  117. package/dist/ui/toast.js +57 -63
  118. package/dist/ui/toast.js.map +1 -1
  119. package/dist/ui/{toast.cjs → toast.mjs} +43 -74
  120. package/dist/ui/toast.mjs.map +1 -0
  121. package/dist/ui/{toggle.d.cts → toggle.d.mts} +1 -1
  122. package/dist/ui/toggle.d.ts +1 -1
  123. package/dist/ui/toggle.js +23 -29
  124. package/dist/ui/toggle.js.map +1 -1
  125. package/dist/ui/{toggle.cjs → toggle.mjs} +19 -50
  126. package/dist/ui/toggle.mjs.map +1 -0
  127. package/dist/ui/{tooltip.d.cts → tooltip.d.mts} +2 -2
  128. package/dist/ui/tooltip.d.ts +2 -2
  129. package/dist/ui/tooltip.js +29 -35
  130. package/dist/ui/tooltip.js.map +1 -1
  131. package/dist/ui/{tooltip.cjs → tooltip.mjs} +26 -58
  132. package/dist/ui/tooltip.mjs.map +1 -0
  133. package/dist/variants-Dd9pe-ov.d.mts +8 -0
  134. package/dist/variants-Dd9pe-ov.d.ts +8 -0
  135. package/package.json +10 -15
  136. package/dist/ui/accordion.cjs.map +0 -1
  137. package/dist/ui/alert.cjs.map +0 -1
  138. package/dist/ui/badge.cjs.map +0 -1
  139. package/dist/ui/buttons.cjs +0 -202
  140. package/dist/ui/buttons.cjs.map +0 -1
  141. package/dist/ui/card.cjs.map +0 -1
  142. package/dist/ui/divider.cjs.map +0 -1
  143. package/dist/ui/drawer.cjs.map +0 -1
  144. package/dist/ui/dropdown.cjs.map +0 -1
  145. package/dist/ui/empty-state.cjs +0 -186
  146. package/dist/ui/empty-state.cjs.map +0 -1
  147. package/dist/ui/index.cjs +0 -5764
  148. package/dist/ui/index.cjs.map +0 -1
  149. package/dist/ui/index.d.cts +0 -27
  150. package/dist/ui/index.d.ts +0 -27
  151. package/dist/ui/index.js +0 -5626
  152. package/dist/ui/index.js.map +0 -1
  153. package/dist/ui/inputs.cjs.map +0 -1
  154. package/dist/ui/modal.cjs.map +0 -1
  155. package/dist/ui/pagination.cjs.map +0 -1
  156. package/dist/ui/progress.cjs.map +0 -1
  157. package/dist/ui/select.cjs.map +0 -1
  158. package/dist/ui/skeleton.cjs.map +0 -1
  159. package/dist/ui/spinner.cjs.map +0 -1
  160. package/dist/ui/table.cjs.map +0 -1
  161. package/dist/ui/tabs.cjs.map +0 -1
  162. package/dist/ui/toast.cjs.map +0 -1
  163. package/dist/ui/toggle.cjs.map +0 -1
  164. package/dist/ui/tooltip.cjs.map +0 -1
  165. package/dist/variants-1Bx3BEeS.d.cts +0 -8
  166. package/dist/variants-1Bx3BEeS.d.ts +0 -8
  167. /package/dist/ui/{accordion.d.cts → accordion.d.mts} +0 -0
package/dist/ui/modal.js CHANGED
@@ -1,30 +1,24 @@
1
- "use client";
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } 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; }
2
2
 
3
+ var _chunkE5UX537Jjs = require('../chunk-E5UX537J.js');
3
4
 
4
5
  // src/ui/modal/modal.tsx
5
- import {
6
- AnimatePresence,
7
- motion,
8
- useReducedMotion
9
- } from "framer-motion";
10
- import {
11
- createContext,
12
- useCallback,
13
- useContext,
14
- useEffect,
15
- useId,
16
- useMemo,
17
- useRef,
18
- useState
19
- } from "react";
20
- import { createPortal } from "react-dom";
21
6
 
22
- // src/lib/utils.ts
23
- import { clsx } from "clsx";
24
- import { twMerge } from "tailwind-merge";
25
- function cn(...inputs) {
26
- return twMerge(clsx(inputs));
27
- }
7
+
8
+
9
+
10
+ var _framermotion = require('framer-motion');
11
+
12
+
13
+
14
+
15
+
16
+
17
+
18
+
19
+
20
+ var _react = require('react');
21
+ var _reactdom = require('react-dom');
28
22
 
29
23
  // src/ui/modal/animations.ts
30
24
  var modalOverlayAnimationPresets = {
@@ -56,11 +50,11 @@ var modalOverlayAnimationPresets = {
56
50
  };
57
51
 
58
52
  // src/ui/modal/variants.ts
59
- import { cva } from "class-variance-authority";
60
- var modalOverlayVariants = cva(
53
+ var _classvarianceauthority = require('class-variance-authority');
54
+ var modalOverlayVariants = _classvarianceauthority.cva.call(void 0,
61
55
  "fixed inset-0 z-50 bg-slate-950/70 backdrop-blur-sm data-[state=open]:animate-in"
62
56
  );
63
- var modalTriggerVariants = cva(
57
+ var modalTriggerVariants = _classvarianceauthority.cva.call(void 0,
64
58
  "relative inline-flex shrink-0 cursor-pointer rounded-md border",
65
59
  {
66
60
  variants: {
@@ -95,7 +89,7 @@ var modalTriggerVariants = cva(
95
89
  }
96
90
  }
97
91
  );
98
- var modalContentVariants = cva(
92
+ var modalContentVariants = _classvarianceauthority.cva.call(void 0,
99
93
  "fixed left-1/2 z-50 w-[calc(100%-2rem)] max-h-[min(90vh,720px)] translate-x-[-50%] overflow-y-auto border border-white/10 bg-slate-950 p-6 text-slate-50 shadow-[0_24px_80px_rgba(15,23,42,0.55)] focus:outline-none",
100
94
  {
101
95
  variants: {
@@ -146,10 +140,10 @@ var modalContentVariants = cva(
146
140
  );
147
141
 
148
142
  // src/ui/modal/modal.tsx
149
- import { jsx, jsxs } from "react/jsx-runtime";
150
- var ModalContext = createContext(null);
143
+ var _jsxruntime = require('react/jsx-runtime');
144
+ var ModalContext = _react.createContext.call(void 0, null);
151
145
  function useModalContext(component) {
152
- const ctx = useContext(ModalContext);
146
+ const ctx = _react.useContext.call(void 0, ModalContext);
153
147
  if (!ctx) {
154
148
  throw new Error(`${component} must be used within <Modal>`);
155
149
  }
@@ -157,7 +151,7 @@ function useModalContext(component) {
157
151
  }
158
152
  var FOCUSABLE_SELECTOR = 'a[href], button:not([disabled]), textarea, input, select, [tabindex]:not([tabindex="-1"])';
159
153
  function useBodyScrollLock(locked) {
160
- useEffect(() => {
154
+ _react.useEffect.call(void 0, () => {
161
155
  if (!locked) {
162
156
  return;
163
157
  }
@@ -170,22 +164,22 @@ function useBodyScrollLock(locked) {
170
164
  }
171
165
  function Modal({ open, defaultOpen = false, onOpenChange, children }) {
172
166
  const isControlled = open !== void 0;
173
- const [uncontrolledOpen, setUncontrolledOpen] = useState(defaultOpen);
167
+ const [uncontrolledOpen, setUncontrolledOpen] = _react.useState.call(void 0, defaultOpen);
174
168
  const resolvedOpen = isControlled ? Boolean(open) : uncontrolledOpen;
175
- const setOpen = useCallback(
169
+ const setOpen = _react.useCallback.call(void 0,
176
170
  (next) => {
177
171
  if (!isControlled) {
178
172
  setUncontrolledOpen(next);
179
173
  }
180
- onOpenChange?.(next);
174
+ _optionalChain([onOpenChange, 'optionalCall', _ => _(next)]);
181
175
  },
182
176
  [isControlled, onOpenChange]
183
177
  );
184
- const baseId = useId();
178
+ const baseId = _react.useId.call(void 0, );
185
179
  const titleId = `${baseId}-title`;
186
180
  const descriptionId = `${baseId}-description`;
187
- const contentRef = useRef(null);
188
- const ctx = useMemo(
181
+ const contentRef = _react.useRef.call(void 0, null);
182
+ const ctx = _react.useMemo.call(void 0,
189
183
  () => ({
190
184
  open: resolvedOpen,
191
185
  setOpen,
@@ -195,20 +189,20 @@ function Modal({ open, defaultOpen = false, onOpenChange, children }) {
195
189
  }),
196
190
  [descriptionId, resolvedOpen, setOpen, titleId]
197
191
  );
198
- return /* @__PURE__ */ jsx(ModalContext.Provider, { value: ctx, children });
192
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ModalContext.Provider, { value: ctx, children });
199
193
  }
200
194
  Modal.displayName = "Modal";
201
195
  function ModalTrigger({ className, children, appearance, onClick, ref, ...rest }) {
202
196
  const { setOpen } = useModalContext("ModalTrigger");
203
- return /* @__PURE__ */ jsx(
197
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
204
198
  "button",
205
199
  {
206
200
  ref,
207
201
  type: "button",
208
202
  "data-slot": "modal-trigger",
209
- className: cn(modalTriggerVariants({ appearance }), className),
203
+ className: _chunkE5UX537Jjs.cn.call(void 0, modalTriggerVariants({ appearance }), className),
210
204
  onClick: (event) => {
211
- onClick?.(event);
205
+ _optionalChain([onClick, 'optionalCall', _2 => _2(event)]);
212
206
  if (!event.defaultPrevented) {
213
207
  setOpen(true);
214
208
  }
@@ -231,11 +225,11 @@ function ModalContent({
231
225
  style
232
226
  }) {
233
227
  const { open, setOpen, titleId, descriptionId, contentRef } = useModalContext("ModalContent");
234
- const reduceMotion = useReducedMotion();
228
+ const reduceMotion = _framermotion.useReducedMotion.call(void 0, );
235
229
  const overlayMotion = modalOverlayAnimationPresets[reduceMotion ? "fade" : animation];
236
230
  const panelMotion = modalOverlayAnimationPresets[reduceMotion ? "fade" : animation];
237
231
  useBodyScrollLock(open);
238
- useEffect(() => {
232
+ _react.useEffect.call(void 0, () => {
239
233
  if (!open) {
240
234
  return;
241
235
  }
@@ -247,7 +241,7 @@ function ModalContent({
247
241
  window.addEventListener("keydown", handleKeyDown);
248
242
  return () => window.removeEventListener("keydown", handleKeyDown);
249
243
  }, [open, setOpen]);
250
- useEffect(() => {
244
+ _react.useEffect.call(void 0, () => {
251
245
  if (!open) {
252
246
  return;
253
247
  }
@@ -258,7 +252,7 @@ function ModalContent({
258
252
  const focusables = Array.from(
259
253
  node.querySelectorAll(FOCUSABLE_SELECTOR)
260
254
  ).filter((element) => element.offsetParent !== null || element === node);
261
- const target = focusables[0] ?? node;
255
+ const target = _nullishCoalesce(focusables[0], () => ( node));
262
256
  const previouslyFocused = document.activeElement;
263
257
  target.focus();
264
258
  const handleFocusIn = (event) => {
@@ -270,17 +264,17 @@ function ModalContent({
270
264
  document.addEventListener("focusin", handleFocusIn);
271
265
  return () => {
272
266
  document.removeEventListener("focusin", handleFocusIn);
273
- previouslyFocused?.focus?.();
267
+ _optionalChain([previouslyFocused, 'optionalAccess', _3 => _3.focus, 'optionalCall', _4 => _4()]);
274
268
  };
275
269
  }, [contentRef, open]);
276
270
  const portalTarget = typeof document !== "undefined" ? document.body : null;
277
271
  if (!portalTarget) {
278
272
  return null;
279
273
  }
280
- return createPortal(
281
- /* @__PURE__ */ jsx(AnimatePresence, { children: open ? /* @__PURE__ */ jsxs("div", { className: "fixed inset-0 z-50", "data-slot": "modal-portal", children: [
282
- /* @__PURE__ */ jsx(
283
- motion.button,
274
+ return _reactdom.createPortal.call(void 0,
275
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _framermotion.AnimatePresence, { children: open ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "fixed inset-0 z-50", "data-slot": "modal-portal", children: [
276
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
277
+ _framermotion.motion.button,
284
278
  {
285
279
  type: "button",
286
280
  "aria-hidden": true,
@@ -294,8 +288,8 @@ function ModalContent({
294
288
  transition: overlayMotion.transition
295
289
  }
296
290
  ),
297
- /* @__PURE__ */ jsx(
298
- motion.div,
291
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
292
+ _framermotion.motion.div,
299
293
  {
300
294
  ref: (node) => {
301
295
  contentRef.current = node;
@@ -311,7 +305,7 @@ function ModalContent({
311
305
  "aria-describedby": descriptionId,
312
306
  "data-slot": "modal-content",
313
307
  tabIndex: -1,
314
- className: cn(modalContentVariants({ size, position, appearance }), className),
308
+ className: _chunkE5UX537Jjs.cn.call(void 0, modalContentVariants({ size, position, appearance }), className),
315
309
  initial: animation === "none" ? false : panelMotion.initial,
316
310
  animate: animation === "none" ? void 0 : panelMotion.animate,
317
311
  exit: animation === "none" ? void 0 : panelMotion.exit,
@@ -327,58 +321,58 @@ function ModalContent({
327
321
  }
328
322
  ModalContent.displayName = "ModalContent";
329
323
  function ModalHeader({ className, children }) {
330
- return /* @__PURE__ */ jsx("header", { "data-slot": "modal-header", className: cn("mb-4 flex flex-col gap-2", className), children });
324
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "header", { "data-slot": "modal-header", className: _chunkE5UX537Jjs.cn.call(void 0, "mb-4 flex flex-col gap-2", className), children });
331
325
  }
332
326
  ModalHeader.displayName = "ModalHeader";
333
327
  function ModalBody({ className, children }) {
334
- return /* @__PURE__ */ jsx("div", { "data-slot": "modal-body", className: cn("text-sm text-slate-300", className), children });
328
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "data-slot": "modal-body", className: _chunkE5UX537Jjs.cn.call(void 0, "text-sm text-slate-300", className), children });
335
329
  }
336
330
  ModalBody.displayName = "ModalBody";
337
331
  function ModalFooter({ className, children }) {
338
- return /* @__PURE__ */ jsx("footer", { "data-slot": "modal-footer", className: cn("mt-6 flex justify-end gap-2", className), children });
332
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "footer", { "data-slot": "modal-footer", className: _chunkE5UX537Jjs.cn.call(void 0, "mt-6 flex justify-end gap-2", className), children });
339
333
  }
340
334
  ModalFooter.displayName = "ModalFooter";
341
335
  function ModalTitle({ className, children }) {
342
336
  const { titleId } = useModalContext("ModalTitle");
343
- return /* @__PURE__ */ jsx("h2", { id: titleId, "data-slot": "modal-title", className: cn("text-lg font-semibold", className), children });
337
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { id: titleId, "data-slot": "modal-title", className: _chunkE5UX537Jjs.cn.call(void 0, "text-lg font-semibold", className), children });
344
338
  }
345
339
  ModalTitle.displayName = "ModalTitle";
346
340
  function ModalDescription({ className, children }) {
347
341
  const { descriptionId } = useModalContext("ModalDescription");
348
- return /* @__PURE__ */ jsx("p", { id: descriptionId, "data-slot": "modal-description", className: cn("text-sm text-slate-400", className), children });
342
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { id: descriptionId, "data-slot": "modal-description", className: _chunkE5UX537Jjs.cn.call(void 0, "text-sm text-slate-400", className), children });
349
343
  }
350
344
  ModalDescription.displayName = "ModalDescription";
351
345
  function ModalClose({ className, children, ...rest }) {
352
346
  const { setOpen } = useModalContext("ModalClose");
353
- return /* @__PURE__ */ jsx(
347
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
354
348
  "button",
355
349
  {
356
350
  type: "button",
357
351
  "data-slot": "modal-close",
358
- className: cn(
352
+ className: _chunkE5UX537Jjs.cn.call(void 0,
359
353
  "absolute right-4 top-4 inline-flex size-9 items-center justify-center rounded-md text-slate-200 transition hover:bg-white/10 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-white/30",
360
354
  className
361
355
  ),
362
356
  "aria-label": "Close dialog",
363
357
  onClick: () => setOpen(false),
364
358
  ...rest,
365
- children: children ?? "\xD7"
359
+ children: _nullishCoalesce(children, () => ( "\xD7"))
366
360
  }
367
361
  );
368
362
  }
369
363
  ModalClose.displayName = "ModalClose";
370
- export {
371
- Modal,
372
- ModalBody,
373
- ModalClose,
374
- ModalContent,
375
- ModalDescription,
376
- ModalFooter,
377
- ModalHeader,
378
- ModalTitle,
379
- ModalTrigger,
380
- modalContentVariants,
381
- modalOverlayAnimationPresets,
382
- modalOverlayVariants
383
- };
364
+
365
+
366
+
367
+
368
+
369
+
370
+
371
+
372
+
373
+
374
+
375
+
376
+
377
+ exports.Modal = Modal; exports.ModalBody = ModalBody; exports.ModalClose = ModalClose; exports.ModalContent = ModalContent; exports.ModalDescription = ModalDescription; exports.ModalFooter = ModalFooter; exports.ModalHeader = ModalHeader; exports.ModalTitle = ModalTitle; exports.ModalTrigger = ModalTrigger; exports.modalContentVariants = modalContentVariants; exports.modalOverlayAnimationPresets = modalOverlayAnimationPresets; exports.modalOverlayVariants = modalOverlayVariants;
384
378
  //# sourceMappingURL=modal.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/ui/modal/modal.tsx","../../src/lib/utils.ts","../../src/ui/modal/animations.ts","../../src/ui/modal/variants.ts"],"sourcesContent":["\"use client\";\n\nimport {\n AnimatePresence,\n motion,\n useReducedMotion,\n} from \"framer-motion\";\nimport {\n createContext,\n useCallback,\n useContext,\n useEffect,\n useId,\n useMemo,\n useRef,\n useState,\n} from \"react\";\nimport { createPortal } from \"react-dom\";\n\nimport { cn } from \"../../lib/utils\";\n\nimport { modalOverlayAnimationPresets } from \"./animations\";\nimport type {\n ModalContentProps,\n ModalProps,\n ModalSectionProps,\n ModalTriggerProps,\n} from \"./types\";\nimport { modalContentVariants, modalOverlayVariants, modalTriggerVariants } from \"./variants\";\n\ntype ModalCtx = {\n open: boolean;\n setOpen: (next: boolean) => void;\n titleId: string;\n descriptionId: string;\n contentRef: React.RefObject<HTMLDivElement | null>;\n};\n\nconst ModalContext = createContext<ModalCtx | null>(null);\n\nfunction useModalContext(component: string): ModalCtx {\n const ctx = useContext(ModalContext);\n if (!ctx) {\n throw new Error(`${component} must be used within <Modal>`);\n }\n return ctx;\n}\n\nconst FOCUSABLE_SELECTOR =\n 'a[href], button:not([disabled]), textarea, input, select, [tabindex]:not([tabindex=\"-1\"])';\n\nfunction useBodyScrollLock(locked: boolean) {\n useEffect(() => {\n if (!locked) {\n return;\n }\n const previousOverflow = document.body.style.overflow;\n document.body.style.overflow = \"hidden\";\n return () => {\n document.body.style.overflow = previousOverflow;\n };\n }, [locked]);\n}\n\nexport function Modal({ open, defaultOpen = false, onOpenChange, children }: ModalProps) {\n const isControlled = open !== undefined;\n const [uncontrolledOpen, setUncontrolledOpen] = useState(defaultOpen);\n const resolvedOpen = isControlled ? Boolean(open) : uncontrolledOpen;\n\n const setOpen = useCallback(\n (next: boolean) => {\n if (!isControlled) {\n setUncontrolledOpen(next);\n }\n onOpenChange?.(next);\n },\n [isControlled, onOpenChange],\n );\n\n const baseId = useId();\n const titleId = `${baseId}-title`;\n const descriptionId = `${baseId}-description`;\n const contentRef = useRef<HTMLDivElement | null>(null);\n\n const ctx = useMemo(\n () => ({\n open: resolvedOpen,\n setOpen,\n titleId,\n descriptionId,\n contentRef,\n }),\n [descriptionId, resolvedOpen, setOpen, titleId],\n );\n\n return <ModalContext.Provider value={ctx}>{children}</ModalContext.Provider>;\n}\n\nModal.displayName = \"Modal\";\n\nexport function ModalTrigger({ className, children, appearance, onClick, ref, ...rest }: ModalTriggerProps) {\n const { setOpen } = useModalContext(\"ModalTrigger\");\n return (\n <button\n ref={ref}\n type=\"button\"\n data-slot=\"modal-trigger\"\n className={cn(modalTriggerVariants({ appearance }), className)}\n onClick={(event) => {\n onClick?.(event);\n if (!event.defaultPrevented) {\n setOpen(true);\n }\n }}\n {...rest}\n >\n {children}\n </button>\n );\n}\n\nModalTrigger.displayName = \"ModalTrigger\";\n\nexport function ModalContent({\n className,\n size,\n position,\n appearance,\n animation = \"scale\",\n children,\n ref,\n id,\n style,\n}: ModalContentProps) {\n const { open, setOpen, titleId, descriptionId, contentRef } = useModalContext(\"ModalContent\");\n const reduceMotion = useReducedMotion();\n const overlayMotion = modalOverlayAnimationPresets[reduceMotion ? \"fade\" : animation];\n const panelMotion = modalOverlayAnimationPresets[reduceMotion ? \"fade\" : animation];\n\n useBodyScrollLock(open);\n\n useEffect(() => {\n if (!open) {\n return;\n }\n const handleKeyDown = (event: KeyboardEvent) => {\n if (event.key === \"Escape\") {\n setOpen(false);\n }\n };\n window.addEventListener(\"keydown\", handleKeyDown);\n return () => window.removeEventListener(\"keydown\", handleKeyDown);\n }, [open, setOpen]);\n\n useEffect(() => {\n if (!open) {\n return;\n }\n const node = contentRef.current;\n if (!node) {\n return;\n }\n const focusables = Array.from(\n node.querySelectorAll<HTMLElement>(FOCUSABLE_SELECTOR),\n ).filter((element) => element.offsetParent !== null || element === node);\n const target = focusables[0] ?? node;\n const previouslyFocused = document.activeElement as HTMLElement | null;\n target.focus();\n\n const handleFocusIn = (event: FocusEvent) => {\n if (!node.contains(event.target as Node)) {\n event.stopPropagation();\n target.focus();\n }\n };\n document.addEventListener(\"focusin\", handleFocusIn);\n return () => {\n document.removeEventListener(\"focusin\", handleFocusIn);\n previouslyFocused?.focus?.();\n };\n }, [contentRef, open]);\n\n const portalTarget = typeof document !== \"undefined\" ? document.body : null;\n\n if (!portalTarget) {\n return null;\n }\n\n return createPortal(\n <AnimatePresence>\n {open ? (\n <div className=\"fixed inset-0 z-50\" data-slot=\"modal-portal\">\n <motion.button\n type=\"button\"\n aria-hidden\n tabIndex={-1}\n data-slot=\"modal-overlay\"\n className={modalOverlayVariants()}\n onClick={() => setOpen(false)}\n initial={animation === \"none\" ? false : overlayMotion.initial}\n animate={animation === \"none\" ? undefined : overlayMotion.animate}\n exit={animation === \"none\" ? undefined : overlayMotion.exit}\n transition={overlayMotion.transition}\n />\n <motion.div\n ref={(node) => {\n contentRef.current = node;\n if (typeof ref === \"function\") {\n ref(node);\n } else if (ref) {\n (ref as React.RefObject<HTMLDivElement | null>).current = node;\n }\n }}\n role=\"dialog\"\n aria-modal=\"true\"\n aria-labelledby={titleId}\n aria-describedby={descriptionId}\n data-slot=\"modal-content\"\n tabIndex={-1}\n className={cn(modalContentVariants({ size, position, appearance }), className)}\n initial={animation === \"none\" ? false : panelMotion.initial}\n animate={animation === \"none\" ? undefined : panelMotion.animate}\n exit={animation === \"none\" ? undefined : panelMotion.exit}\n transition={panelMotion.transition}\n id={id}\n style={style}\n >\n {children}\n </motion.div>\n </div>\n ) : null}\n </AnimatePresence>,\n portalTarget,\n );\n}\n\nModalContent.displayName = \"ModalContent\";\n\nexport function ModalHeader({ className, children }: ModalSectionProps) {\n return (\n <header data-slot=\"modal-header\" className={cn(\"mb-4 flex flex-col gap-2\", className)}>\n {children}\n </header>\n );\n}\n\nModalHeader.displayName = \"ModalHeader\";\n\nexport function ModalBody({ className, children }: ModalSectionProps) {\n return (\n <div data-slot=\"modal-body\" className={cn(\"text-sm text-slate-300\", className)}>\n {children}\n </div>\n );\n}\n\nModalBody.displayName = \"ModalBody\";\n\nexport function ModalFooter({ className, children }: ModalSectionProps) {\n return (\n <footer data-slot=\"modal-footer\" className={cn(\"mt-6 flex justify-end gap-2\", className)}>\n {children}\n </footer>\n );\n}\n\nModalFooter.displayName = \"ModalFooter\";\n\nexport function ModalTitle({ className, children }: ModalSectionProps) {\n const { titleId } = useModalContext(\"ModalTitle\");\n return (\n <h2 id={titleId} data-slot=\"modal-title\" className={cn(\"text-lg font-semibold\", className)}>\n {children}\n </h2>\n );\n}\n\nModalTitle.displayName = \"ModalTitle\";\n\nexport function ModalDescription({ className, children }: ModalSectionProps) {\n const { descriptionId } = useModalContext(\"ModalDescription\");\n return (\n <p id={descriptionId} data-slot=\"modal-description\" className={cn(\"text-sm text-slate-400\", className)}>\n {children}\n </p>\n );\n}\n\nModalDescription.displayName = \"ModalDescription\";\n\nexport function ModalClose({ className, children, ...rest }: ModalSectionProps) {\n const { setOpen } = useModalContext(\"ModalClose\");\n return (\n <button\n type=\"button\"\n data-slot=\"modal-close\"\n className={cn(\n \"absolute right-4 top-4 inline-flex size-9 items-center justify-center rounded-md text-slate-200 transition hover:bg-white/10 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-white/30\",\n className,\n )}\n aria-label=\"Close dialog\"\n onClick={() => setOpen(false)}\n {...rest}\n >\n {children ?? \"×\"}\n </button>\n );\n}\n\nModalClose.displayName = \"ModalClose\";\n","import { type ClassValue, clsx } from \"clsx\";\nimport { twMerge } from \"tailwind-merge\";\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}","import type { HTMLMotionProps } from \"framer-motion\";\n\nimport type { ModalAnimation } from \"./types\";\n\ntype ModalPresetMotionProps = Pick<\n HTMLMotionProps<\"div\">,\n \"initial\" | \"animate\" | \"exit\" | \"transition\"\n>;\n\nexport type ModalAnimationPresets = Record<ModalAnimation, ModalPresetMotionProps>;\n\nexport const modalOverlayAnimationPresets: ModalAnimationPresets = {\n none: {},\n fade: {\n initial: { opacity: 0 },\n animate: { opacity: 1 },\n exit: { opacity: 0 },\n transition: { duration: 0.2 },\n },\n scale: {\n initial: { opacity: 0, scale: 0.96 },\n animate: { opacity: 1, scale: 1 },\n exit: { opacity: 0, scale: 0.96 },\n transition: { type: \"spring\", stiffness: 420, damping: 32 },\n },\n \"slide-up\": {\n initial: { opacity: 0, y: 24 },\n animate: { opacity: 1, y: 0 },\n exit: { opacity: 0, y: 16 },\n transition: { type: \"spring\", stiffness: 380, damping: 30 },\n },\n \"slide-down\": {\n initial: { opacity: 0, y: -24 },\n animate: { opacity: 1, y: 0 },\n exit: { opacity: 0, y: -16 },\n transition: { type: \"spring\", stiffness: 380, damping: 30 },\n },\n};\n","import { cva } from \"class-variance-authority\";\n\nexport const modalOverlayVariants = cva(\n \"fixed inset-0 z-50 bg-slate-950/70 backdrop-blur-sm data-[state=open]:animate-in\",\n);\n\nexport const modalTriggerVariants = cva(\n \"relative inline-flex shrink-0 cursor-pointer rounded-md border\",\n {\n variants: {\n appearance: {\n default: \"bg-slate-950\",\n glass: \"border-white/15 bg-slate-950/70 backdrop-blur-xl\",\n sky: \"border-sky-600 bg-sky-950/70 backdrop-blur-xl\",\n rose: \"border-rose-600 bg-rose-950/70 backdrop-blur-xl\",\n purple: \"border-purple-600 bg-purple-950/70 backdrop-blur-xl\",\n pink: \"border-pink-600 bg-pink-950/70 backdrop-blur-xl\",\n orange: \"border-orange-600 bg-orange-950/70 backdrop-blur-xl\",\n yellow: \"border-yellow-600 bg-yellow-950/70 backdrop-blur-xl\",\n teal: \"border-teal-600 bg-teal-950/70 backdrop-blur-xl\",\n indigo: \"border-indigo-600 bg-indigo-950/70 backdrop-blur-xl\",\n emerald: \"border-emerald-600 bg-emerald-950/70 backdrop-blur-xl\",\n gray: \"border-gray-600 bg-gray-950/70 backdrop-blur-xl\",\n amber: \"border-amber-600 bg-amber-950/70 backdrop-blur-xl\",\n violet: \"border-violet-600 bg-violet-950/70 backdrop-blur-xl\",\n \"gradient-blue\": \"border-gradient-to-r from-blue-600 to-purple-600 bg-gradient-to-r from-blue-950/70 to-purple-950/70 backdrop-blur-xl\",\n \"gradient-green\": \"border-gradient-to-r from-green-600 to-lime-600 bg-gradient-to-r from-green-950/70 to-lime-950/70 backdrop-blur-xl\",\n \"gradient-red\": \"border-gradient-to-r from-red-600 to-pink-600 bg-gradient-to-r from-red-950/70 to-pink-950/70 backdrop-blur-xl\",\n \"gradient-yellow\": \"border-gradient-to-r from-yellow-600 to-orange-600 bg-gradient-to-r from-yellow-950/70 to-orange-950/70 backdrop-blur-xl\",\n \"gradient-purple\": \"border-gradient-to-r from-purple-600 to-pink-600 bg-gradient-to-r from-purple-950/70 to-pink-950/70 backdrop-blur-xl\",\n \"gradient-teal\": \"border-gradient-to-r from-teal-600 to-cyan-600 bg-gradient-to-r from-teal-950/70 to-cyan-950/70 backdrop-blur-xl\",\n \"gradient-indigo\": \"border-gradient-to-r from-indigo-600 to-purple-600 bg-gradient-to-r from-indigo-950/70 to-purple-950/70 backdrop-blur-xl\",\n \"gradient-pink\": \"border-gradient-to-r from-pink-600 to-rose-600 bg-gradient-to-r from-pink-950/70 to-rose-950/70 backdrop-blur-xl\",\n \"gradient-orange\": \"border-gradient-to-r from-orange-600 to-red-600 bg-gradient-to-r from-orange-950/70 to-red-950/70 backdrop-blur-xl\",\n },\n },\n defaultVariants: {\n appearance: \"default\",\n },\n },\n);\n\nexport const modalContentVariants = cva(\n \"fixed left-1/2 z-50 w-[calc(100%-2rem)] max-h-[min(90vh,720px)] translate-x-[-50%] overflow-y-auto border border-white/10 bg-slate-950 p-6 text-slate-50 shadow-[0_24px_80px_rgba(15,23,42,0.55)] focus:outline-none\",\n {\n variants: {\n size: {\n sm: \"max-w-md\",\n md: \"max-w-lg\",\n lg: \"max-w-2xl\",\n xl: \"max-w-4xl\",\n full: \"max-w-[calc(100%-2rem)]\",\n },\n position: {\n center: \"top-1/2 translate-y-[-50%]\",\n top: \"top-10 translate-y-0\",\n bottom: \"bottom-10 translate-y-0\",\n },\n appearance: {\n default: \"bg-slate-950\",\n glass: \"border-white/15 bg-slate-950/70 backdrop-blur-xl\",\n sky: \"border-sky-600 bg-sky-950/70 backdrop-blur-xl\",\n rose: \"border-rose-600 bg-rose-950/70 backdrop-blur-xl\",\n purple: \"border-purple-600 bg-purple-950/70 backdrop-blur-xl\",\n pink: \"border-pink-600 bg-pink-950/70 backdrop-blur-xl\",\n orange: \"border-orange-600 bg-orange-950/70 backdrop-blur-xl\",\n yellow: \"border-yellow-600 bg-yellow-950/70 backdrop-blur-xl\",\n teal: \"border-teal-600 bg-teal-950/70 backdrop-blur-xl\",\n indigo: \"border-indigo-600 bg-indigo-950/70 backdrop-blur-xl\",\n emerald: \"border-emerald-600 bg-emerald-950/70 backdrop-blur-xl\",\n gray: \"border-gray-600 bg-gray-950/70 backdrop-blur-xl\",\n amber: \"border-amber-600 bg-amber-950/70 backdrop-blur-xl\",\n violet: \"border-violet-600 bg-violet-950/70 backdrop-blur-xl\",\n \"gradient-blue\": \"border-gradient-to-r from-blue-600 to-purple-600 bg-gradient-to-r from-blue-950/70 to-purple-950/70 backdrop-blur-xl\",\n \"gradient-green\": \"border-gradient-to-r from-green-600 to-lime-600 bg-gradient-to-r from-green-950/70 to-lime-950/70 backdrop-blur-xl\",\n \"gradient-red\": \"border-gradient-to-r from-red-600 to-pink-600 bg-gradient-to-r from-red-950/70 to-pink-950/70 backdrop-blur-xl\",\n \"gradient-yellow\": \"border-gradient-to-r from-yellow-600 to-orange-600 bg-gradient-to-r from-yellow-950/70 to-orange-950/70 backdrop-blur-xl\",\n \"gradient-purple\": \"border-gradient-to-r from-purple-600 to-pink-600 bg-gradient-to-r from-purple-950/70 to-pink-950/70 backdrop-blur-xl\",\n \"gradient-teal\": \"border-gradient-to-r from-teal-600 to-cyan-600 bg-gradient-to-r from-teal-950/70 to-cyan-950/70 backdrop-blur-xl\",\n \"gradient-indigo\": \"border-gradient-to-r from-indigo-600 to-purple-600 bg-gradient-to-r from-indigo-950/70 to-purple-950/70 backdrop-blur-xl\",\n \"gradient-pink\": \"border-gradient-to-r from-pink-600 to-rose-600 bg-gradient-to-r from-pink-950/70 to-rose-950/70 backdrop-blur-xl\",\n \"gradient-orange\": \"border-gradient-to-r from-orange-600 to-red-600 bg-gradient-to-r from-orange-950/70 to-red-950/70 backdrop-blur-xl\",\n },\n },\n defaultVariants: {\n size: \"md\",\n position: \"center\",\n appearance: \"default\",\n },\n },\n);\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["/Users/shubham/Desktop/Repos/NEXT%20JS/zentauri-ui/packages/components/dist/ui/modal.js"],"names":[],"mappings":"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AAC,GAAG,EAAE;AACZ,IAAI,MAAM,IAAI,KAAK,CAAC,CAAC,EAAA;AACA,EAAA;AACA,EAAA;AACA;AACA;AACA;AACA,EAAA;AACA,IAAA;AACA,MAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,IAAA;AACA,EAAA;AACA;AACA;AACA,EAAA;AACA,EAAA;AACA,EAAA;AACA,EAAA;AACA,IAAA;AACA,MAAA;AACA,QAAA;AACA,MAAA;AACA,sBAAA;AACA,IAAA;AACA,IAAA;AACA,EAAA;AACA,EAAA;AACA,EAAA;AACA,EAAA;AACA,EAAA;AACA,EAAA;AACA,IAAA;AACA,MAAA;AACA,MAAA;AACA,MAAA;AACA,MAAA;AACA,MAAA;AACA,IAAA;AACA,IAAA;AACA,EAAA;AACA,EAAA;AACA;AACA;AACA;AACA,EAAA;AACA,EAAA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,MAAA;AACA,MAAA;AACA,MAAA;AACA,MAAA;AACA,wBAAA;AACA,QAAA;AACA,UAAA;AACA,QAAA;AACA,MAAA;AACA,MAAA;AACA,MAAA;AACA,IAAA;AACA,EAAA;AACA;AACA;AACA;AACA,EAAA;AACA,EAAA;AACA,EAAA;AACA,EAAA;AACA,EAAA;AACA,EAAA;AACA,EAAA;AACA,EAAA;AACA,EAAA;AACA;AACA,EAAA;AACA,EAAA;AACA,EAAA;AACA,EAAA;AACA,EAAA;AACA,EAAA;AACA,IAAA;AACA,MAAA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,QAAA;AACA,MAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,EAAA;AACA,EAAA;AACA,IAAA;AACA,MAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,QAAA;AACA,QAAA;AACA,MAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,sBAAA;AACA,IAAA;AACA,EAAA;AACA,EAAA;AACA,EAAA;AACA,IAAA;AACA,EAAA;AACA,EAAA;AACA,oBAAA;AACA,sBAAA;AACA,QAAA;AACA,QAAA;AACA,UAAA;AACA,UAAA;AACA,UAAA;AACA,UAAA;AACA,UAAA;AACA,UAAA;AACA,UAAA;AACA,UAAA;AACA,UAAA;AACA,UAAA;AACA,QAAA;AACA,MAAA;AACA,sBAAA;AACA,QAAA;AACA,QAAA;AACA,UAAA;AACA,YAAA;AACA,YAAA;AACA,cAAA;AACA,YAAA;AACA,cAAA;AACA,YAAA;AACA,UAAA;AACA,UAAA;AACA,UAAA;AACA,UAAA;AACA,UAAA;AACA,UAAA;AACA,UAAA;AACA,UAAA;AACA,UAAA;AACA,UAAA;AACA,UAAA;AACA,UAAA;AACA,UAAA;AACA,UAAA;AACA,UAAA;AACA,QAAA;AACA,MAAA;AACA,IAAA;AACA,IAAA;AACA,EAAA;AACA;AACA;AACA;AACA,EAAA;AACA;AACA;AACA;AACA,EAAA;AACA;AACA;AACA;AACA,EAAA;AACA;AACA;AACA;AACA,EAAA;AACA,EAAA;AACA;AACA;AACA;AACA,EAAA;AACA,EAAA;AACA;AACA;AACA;AACA,EAAA;AACA,EAAA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,MAAA;AACA,MAAA;AACA,QAAA;AACA,QAAA;AACA,MAAA;AACA,MAAA;AACA,MAAA;AACA,MAAA;AACA,MAAA;AACA,IAAA;AACA,EAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"/Users/shubham/Desktop/Repos/NEXT JS/zentauri-ui/packages/components/dist/ui/modal.js","sourcesContent":[null]}
@@ -1,51 +1,26 @@
1
- "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
1
+ "use client";
19
2
 
20
- // src/ui/modal/index.ts
21
- var modal_exports = {};
22
- __export(modal_exports, {
23
- Modal: () => Modal,
24
- ModalBody: () => ModalBody,
25
- ModalClose: () => ModalClose,
26
- ModalContent: () => ModalContent,
27
- ModalDescription: () => ModalDescription,
28
- ModalFooter: () => ModalFooter,
29
- ModalHeader: () => ModalHeader,
30
- ModalTitle: () => ModalTitle,
31
- ModalTrigger: () => ModalTrigger,
32
- modalContentVariants: () => modalContentVariants,
33
- modalOverlayAnimationPresets: () => modalOverlayAnimationPresets,
34
- modalOverlayVariants: () => modalOverlayVariants
35
- });
36
- module.exports = __toCommonJS(modal_exports);
3
+ import {
4
+ cn
5
+ } from "../chunk-MEWYFWBX.mjs";
37
6
 
38
7
  // src/ui/modal/modal.tsx
39
- var import_framer_motion = require("framer-motion");
40
- var import_react = require("react");
41
- var import_react_dom = require("react-dom");
42
-
43
- // src/lib/utils.ts
44
- var import_clsx = require("clsx");
45
- var import_tailwind_merge = require("tailwind-merge");
46
- function cn(...inputs) {
47
- return (0, import_tailwind_merge.twMerge)((0, import_clsx.clsx)(inputs));
48
- }
8
+ import {
9
+ AnimatePresence,
10
+ motion,
11
+ useReducedMotion
12
+ } from "framer-motion";
13
+ import {
14
+ createContext,
15
+ useCallback,
16
+ useContext,
17
+ useEffect,
18
+ useId,
19
+ useMemo,
20
+ useRef,
21
+ useState
22
+ } from "react";
23
+ import { createPortal } from "react-dom";
49
24
 
50
25
  // src/ui/modal/animations.ts
51
26
  var modalOverlayAnimationPresets = {
@@ -77,11 +52,11 @@ var modalOverlayAnimationPresets = {
77
52
  };
78
53
 
79
54
  // src/ui/modal/variants.ts
80
- var import_class_variance_authority = require("class-variance-authority");
81
- var modalOverlayVariants = (0, import_class_variance_authority.cva)(
55
+ import { cva } from "class-variance-authority";
56
+ var modalOverlayVariants = cva(
82
57
  "fixed inset-0 z-50 bg-slate-950/70 backdrop-blur-sm data-[state=open]:animate-in"
83
58
  );
84
- var modalTriggerVariants = (0, import_class_variance_authority.cva)(
59
+ var modalTriggerVariants = cva(
85
60
  "relative inline-flex shrink-0 cursor-pointer rounded-md border",
86
61
  {
87
62
  variants: {
@@ -116,7 +91,7 @@ var modalTriggerVariants = (0, import_class_variance_authority.cva)(
116
91
  }
117
92
  }
118
93
  );
119
- var modalContentVariants = (0, import_class_variance_authority.cva)(
94
+ var modalContentVariants = cva(
120
95
  "fixed left-1/2 z-50 w-[calc(100%-2rem)] max-h-[min(90vh,720px)] translate-x-[-50%] overflow-y-auto border border-white/10 bg-slate-950 p-6 text-slate-50 shadow-[0_24px_80px_rgba(15,23,42,0.55)] focus:outline-none",
121
96
  {
122
97
  variants: {
@@ -167,10 +142,10 @@ var modalContentVariants = (0, import_class_variance_authority.cva)(
167
142
  );
168
143
 
169
144
  // src/ui/modal/modal.tsx
170
- var import_jsx_runtime = require("react/jsx-runtime");
171
- var ModalContext = (0, import_react.createContext)(null);
145
+ import { jsx, jsxs } from "react/jsx-runtime";
146
+ var ModalContext = createContext(null);
172
147
  function useModalContext(component) {
173
- const ctx = (0, import_react.useContext)(ModalContext);
148
+ const ctx = useContext(ModalContext);
174
149
  if (!ctx) {
175
150
  throw new Error(`${component} must be used within <Modal>`);
176
151
  }
@@ -178,7 +153,7 @@ function useModalContext(component) {
178
153
  }
179
154
  var FOCUSABLE_SELECTOR = 'a[href], button:not([disabled]), textarea, input, select, [tabindex]:not([tabindex="-1"])';
180
155
  function useBodyScrollLock(locked) {
181
- (0, import_react.useEffect)(() => {
156
+ useEffect(() => {
182
157
  if (!locked) {
183
158
  return;
184
159
  }
@@ -191,9 +166,9 @@ function useBodyScrollLock(locked) {
191
166
  }
192
167
  function Modal({ open, defaultOpen = false, onOpenChange, children }) {
193
168
  const isControlled = open !== void 0;
194
- const [uncontrolledOpen, setUncontrolledOpen] = (0, import_react.useState)(defaultOpen);
169
+ const [uncontrolledOpen, setUncontrolledOpen] = useState(defaultOpen);
195
170
  const resolvedOpen = isControlled ? Boolean(open) : uncontrolledOpen;
196
- const setOpen = (0, import_react.useCallback)(
171
+ const setOpen = useCallback(
197
172
  (next) => {
198
173
  if (!isControlled) {
199
174
  setUncontrolledOpen(next);
@@ -202,11 +177,11 @@ function Modal({ open, defaultOpen = false, onOpenChange, children }) {
202
177
  },
203
178
  [isControlled, onOpenChange]
204
179
  );
205
- const baseId = (0, import_react.useId)();
180
+ const baseId = useId();
206
181
  const titleId = `${baseId}-title`;
207
182
  const descriptionId = `${baseId}-description`;
208
- const contentRef = (0, import_react.useRef)(null);
209
- const ctx = (0, import_react.useMemo)(
183
+ const contentRef = useRef(null);
184
+ const ctx = useMemo(
210
185
  () => ({
211
186
  open: resolvedOpen,
212
187
  setOpen,
@@ -216,12 +191,12 @@ function Modal({ open, defaultOpen = false, onOpenChange, children }) {
216
191
  }),
217
192
  [descriptionId, resolvedOpen, setOpen, titleId]
218
193
  );
219
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ModalContext.Provider, { value: ctx, children });
194
+ return /* @__PURE__ */ jsx(ModalContext.Provider, { value: ctx, children });
220
195
  }
221
196
  Modal.displayName = "Modal";
222
197
  function ModalTrigger({ className, children, appearance, onClick, ref, ...rest }) {
223
198
  const { setOpen } = useModalContext("ModalTrigger");
224
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
199
+ return /* @__PURE__ */ jsx(
225
200
  "button",
226
201
  {
227
202
  ref,
@@ -252,11 +227,11 @@ function ModalContent({
252
227
  style
253
228
  }) {
254
229
  const { open, setOpen, titleId, descriptionId, contentRef } = useModalContext("ModalContent");
255
- const reduceMotion = (0, import_framer_motion.useReducedMotion)();
230
+ const reduceMotion = useReducedMotion();
256
231
  const overlayMotion = modalOverlayAnimationPresets[reduceMotion ? "fade" : animation];
257
232
  const panelMotion = modalOverlayAnimationPresets[reduceMotion ? "fade" : animation];
258
233
  useBodyScrollLock(open);
259
- (0, import_react.useEffect)(() => {
234
+ useEffect(() => {
260
235
  if (!open) {
261
236
  return;
262
237
  }
@@ -268,7 +243,7 @@ function ModalContent({
268
243
  window.addEventListener("keydown", handleKeyDown);
269
244
  return () => window.removeEventListener("keydown", handleKeyDown);
270
245
  }, [open, setOpen]);
271
- (0, import_react.useEffect)(() => {
246
+ useEffect(() => {
272
247
  if (!open) {
273
248
  return;
274
249
  }
@@ -298,10 +273,10 @@ function ModalContent({
298
273
  if (!portalTarget) {
299
274
  return null;
300
275
  }
301
- return (0, import_react_dom.createPortal)(
302
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_framer_motion.AnimatePresence, { children: open ? /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "fixed inset-0 z-50", "data-slot": "modal-portal", children: [
303
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
304
- import_framer_motion.motion.button,
276
+ return createPortal(
277
+ /* @__PURE__ */ jsx(AnimatePresence, { children: open ? /* @__PURE__ */ jsxs("div", { className: "fixed inset-0 z-50", "data-slot": "modal-portal", children: [
278
+ /* @__PURE__ */ jsx(
279
+ motion.button,
305
280
  {
306
281
  type: "button",
307
282
  "aria-hidden": true,
@@ -315,8 +290,8 @@ function ModalContent({
315
290
  transition: overlayMotion.transition
316
291
  }
317
292
  ),
318
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
319
- import_framer_motion.motion.div,
293
+ /* @__PURE__ */ jsx(
294
+ motion.div,
320
295
  {
321
296
  ref: (node) => {
322
297
  contentRef.current = node;
@@ -348,30 +323,30 @@ function ModalContent({
348
323
  }
349
324
  ModalContent.displayName = "ModalContent";
350
325
  function ModalHeader({ className, children }) {
351
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("header", { "data-slot": "modal-header", className: cn("mb-4 flex flex-col gap-2", className), children });
326
+ return /* @__PURE__ */ jsx("header", { "data-slot": "modal-header", className: cn("mb-4 flex flex-col gap-2", className), children });
352
327
  }
353
328
  ModalHeader.displayName = "ModalHeader";
354
329
  function ModalBody({ className, children }) {
355
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { "data-slot": "modal-body", className: cn("text-sm text-slate-300", className), children });
330
+ return /* @__PURE__ */ jsx("div", { "data-slot": "modal-body", className: cn("text-sm text-slate-300", className), children });
356
331
  }
357
332
  ModalBody.displayName = "ModalBody";
358
333
  function ModalFooter({ className, children }) {
359
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("footer", { "data-slot": "modal-footer", className: cn("mt-6 flex justify-end gap-2", className), children });
334
+ return /* @__PURE__ */ jsx("footer", { "data-slot": "modal-footer", className: cn("mt-6 flex justify-end gap-2", className), children });
360
335
  }
361
336
  ModalFooter.displayName = "ModalFooter";
362
337
  function ModalTitle({ className, children }) {
363
338
  const { titleId } = useModalContext("ModalTitle");
364
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("h2", { id: titleId, "data-slot": "modal-title", className: cn("text-lg font-semibold", className), children });
339
+ return /* @__PURE__ */ jsx("h2", { id: titleId, "data-slot": "modal-title", className: cn("text-lg font-semibold", className), children });
365
340
  }
366
341
  ModalTitle.displayName = "ModalTitle";
367
342
  function ModalDescription({ className, children }) {
368
343
  const { descriptionId } = useModalContext("ModalDescription");
369
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("p", { id: descriptionId, "data-slot": "modal-description", className: cn("text-sm text-slate-400", className), children });
344
+ return /* @__PURE__ */ jsx("p", { id: descriptionId, "data-slot": "modal-description", className: cn("text-sm text-slate-400", className), children });
370
345
  }
371
346
  ModalDescription.displayName = "ModalDescription";
372
347
  function ModalClose({ className, children, ...rest }) {
373
348
  const { setOpen } = useModalContext("ModalClose");
374
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
349
+ return /* @__PURE__ */ jsx(
375
350
  "button",
376
351
  {
377
352
  type: "button",
@@ -388,8 +363,7 @@ function ModalClose({ className, children, ...rest }) {
388
363
  );
389
364
  }
390
365
  ModalClose.displayName = "ModalClose";
391
- // Annotate the CommonJS export names for ESM import in node:
392
- 0 && (module.exports = {
366
+ export {
393
367
  Modal,
394
368
  ModalBody,
395
369
  ModalClose,
@@ -402,5 +376,5 @@ ModalClose.displayName = "ModalClose";
402
376
  modalContentVariants,
403
377
  modalOverlayAnimationPresets,
404
378
  modalOverlayVariants
405
- });
406
- //# sourceMappingURL=modal.cjs.map
379
+ };
380
+ //# sourceMappingURL=modal.mjs.map