dgz-ui 1.4.8 → 1.4.9

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 (58) hide show
  1. package/dist/breadcrumb/index.cjs.js +1 -1
  2. package/dist/breadcrumb/index.es.js +1 -1
  3. package/dist/calendar/index.cjs.js +1 -1
  4. package/dist/calendar/index.es.js +1 -1
  5. package/dist/carousel/index.cjs.js +3 -3
  6. package/dist/carousel/index.cjs.js.map +1 -1
  7. package/dist/carousel/index.es.js +341 -340
  8. package/dist/carousel/index.es.js.map +1 -1
  9. package/dist/chunks/breadcrumb-BtO0mD2u.es.js +82 -0
  10. package/dist/chunks/breadcrumb-BtO0mD2u.es.js.map +1 -0
  11. package/dist/chunks/breadcrumb-DKVYizoh.cjs.js +2 -0
  12. package/dist/chunks/breadcrumb-DKVYizoh.cjs.js.map +1 -0
  13. package/dist/chunks/dialog-Cb_DS5IV.es.js +105 -0
  14. package/dist/chunks/dialog-Cb_DS5IV.es.js.map +1 -0
  15. package/dist/chunks/dialog-pRz31cHo.cjs.js +2 -0
  16. package/dist/chunks/dialog-pRz31cHo.cjs.js.map +1 -0
  17. package/dist/chunks/pagination-CJiUbpUN.cjs.js +2 -0
  18. package/dist/chunks/pagination-CJiUbpUN.cjs.js.map +1 -0
  19. package/dist/chunks/pagination-aJ9Z0Ux9.es.js +113 -0
  20. package/dist/chunks/pagination-aJ9Z0Ux9.es.js.map +1 -0
  21. package/dist/chunks/sheet-BXSDa9XT.cjs.js +2 -0
  22. package/dist/chunks/sheet-BXSDa9XT.cjs.js.map +1 -0
  23. package/dist/chunks/{sheet-to_YuZ1x.es.js → sheet-hwgCcvpv.es.js} +35 -33
  24. package/dist/chunks/sheet-hwgCcvpv.es.js.map +1 -0
  25. package/dist/chunks/{timepicker-tBjjq8Ap.es.js → timepicker-BdDhd6Ax.es.js} +99 -99
  26. package/dist/chunks/{timepicker-tBjjq8Ap.es.js.map → timepicker-BdDhd6Ax.es.js.map} +1 -1
  27. package/dist/chunks/{timepicker-Ba47st2A.cjs.js → timepicker-C67I2BIy.cjs.js} +3 -3
  28. package/dist/chunks/{timepicker-Ba47st2A.cjs.js.map → timepicker-C67I2BIy.cjs.js.map} +1 -1
  29. package/dist/dialog/index.cjs.js +1 -1
  30. package/dist/dialog/index.es.js +1 -1
  31. package/dist/index.cjs.js +1 -1
  32. package/dist/index.es.js +5 -5
  33. package/dist/pagination/index.cjs.js +1 -1
  34. package/dist/pagination/index.es.js +1 -1
  35. package/dist/sheet/index.cjs.js +1 -1
  36. package/dist/sheet/index.es.js +1 -1
  37. package/dist/types/ui/breadcrumb/breadcrumb.d.ts.map +1 -1
  38. package/dist/types/ui/calendar/datepicker.d.ts.map +1 -1
  39. package/dist/types/ui/carousel/carousel.d.ts.map +1 -1
  40. package/dist/types/ui/dialog/dialog.d.ts.map +1 -1
  41. package/dist/types/ui/pagination/pagination.d.ts.map +1 -1
  42. package/dist/types/ui/sheet/sheet.d.ts.map +1 -1
  43. package/package.json +1 -1
  44. package/dist/chunks/breadcrumb-BoUD4-AY.cjs.js +0 -2
  45. package/dist/chunks/breadcrumb-BoUD4-AY.cjs.js.map +0 -1
  46. package/dist/chunks/breadcrumb-CRK9Ctmz.es.js +0 -78
  47. package/dist/chunks/breadcrumb-CRK9Ctmz.es.js.map +0 -1
  48. package/dist/chunks/dialog-B3q0NLcE.es.js +0 -101
  49. package/dist/chunks/dialog-B3q0NLcE.es.js.map +0 -1
  50. package/dist/chunks/dialog-OejLEg29.cjs.js +0 -2
  51. package/dist/chunks/dialog-OejLEg29.cjs.js.map +0 -1
  52. package/dist/chunks/pagination-CLm98Oot.es.js +0 -103
  53. package/dist/chunks/pagination-CLm98Oot.es.js.map +0 -1
  54. package/dist/chunks/pagination-DsZd3LTv.cjs.js +0 -2
  55. package/dist/chunks/pagination-DsZd3LTv.cjs.js.map +0 -1
  56. package/dist/chunks/sheet-DvcqCxaD.cjs.js +0 -2
  57. package/dist/chunks/sheet-DvcqCxaD.cjs.js.map +0 -1
  58. package/dist/chunks/sheet-to_YuZ1x.es.js.map +0 -1
@@ -0,0 +1,82 @@
1
+ import { jsx as s, jsxs as m } from "react/jsx-runtime";
2
+ import { r as o } from "./index-Br4MVOGV.es.js";
3
+ import * as t from "react";
4
+ import { useTranslation as l } from "react-i18next";
5
+ import { c as i } from "./index-D6dQK9i-.es.js";
6
+ import { E as c } from "./ellipsis-9FjKj8zv.es.js";
7
+ const n = t.forwardRef(({ ...a }, r) => /* @__PURE__ */ s("nav", { ref: r, "aria-label": "breadcrumb", ...a }));
8
+ n.displayName = "Breadcrumb";
9
+ const d = t.forwardRef(({ className: a, ...r }, e) => /* @__PURE__ */ s(
10
+ "ol",
11
+ {
12
+ ref: e,
13
+ className: i("flex flex-wrap items-center gap-1.5 break-words", a),
14
+ ...r
15
+ }
16
+ ));
17
+ d.displayName = "BreadcrumbList";
18
+ const p = t.forwardRef(({ className: a, ...r }, e) => /* @__PURE__ */ s(
19
+ "li",
20
+ {
21
+ ref: e,
22
+ className: i("inline-flex items-center gap-1.5", a),
23
+ ...r
24
+ }
25
+ ));
26
+ p.displayName = "BreadcrumbItem";
27
+ const f = t.forwardRef(({ className: a, ...r }, e) => /* @__PURE__ */ s(
28
+ "span",
29
+ {
30
+ ref: e,
31
+ role: "link",
32
+ "aria-disabled": "true",
33
+ "aria-current": "page",
34
+ className: i("text-foreground font-normal", a),
35
+ ...r
36
+ }
37
+ ));
38
+ f.displayName = "BreadcrumbPage";
39
+ const u = ({
40
+ children: a,
41
+ className: r,
42
+ ...e
43
+ }) => /* @__PURE__ */ s(
44
+ "li",
45
+ {
46
+ role: "presentation",
47
+ "aria-hidden": "true",
48
+ className: i("text-secondary [&>svg]:size-4", r),
49
+ ...e,
50
+ children: a ?? /* @__PURE__ */ s(o, { size: 20 })
51
+ }
52
+ );
53
+ u.displayName = "BreadcrumbSeparator";
54
+ const b = ({
55
+ className: a,
56
+ ...r
57
+ }) => {
58
+ const { t: e } = l();
59
+ return /* @__PURE__ */ m(
60
+ "span",
61
+ {
62
+ role: "presentation",
63
+ "aria-hidden": "true",
64
+ className: i("flex h-9 w-9 items-center justify-center", a),
65
+ ...r,
66
+ children: [
67
+ /* @__PURE__ */ s(c, { className: "h-4 w-4" }),
68
+ /* @__PURE__ */ s("span", { className: "sr-only", children: e("More") })
69
+ ]
70
+ }
71
+ );
72
+ };
73
+ b.displayName = "BreadcrumbEllipsis";
74
+ export {
75
+ n as B,
76
+ b as a,
77
+ p as b,
78
+ d as c,
79
+ f as d,
80
+ u as e
81
+ };
82
+ //# sourceMappingURL=breadcrumb-BtO0mD2u.es.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"breadcrumb-BtO0mD2u.es.js","sources":["../../src/ui/breadcrumb/breadcrumb.tsx"],"sourcesContent":["import { RiArrowRightSLine } from '@remixicon/react';\nimport { MoreHorizontal } from 'lucide-react';\nimport type { ReactNode } from 'react';\nimport * as React from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { cn } from '../../lib';\n\n/**\n * Represents a single breadcrumb item used to build breadcrumb trails.\n *\n * @property {string} path - The URL or path to navigate to.\n * @property {ReactNode} name - Display label for the breadcrumb item.\n * @property {boolean} [isActive] - Marks the current page item.\n */\nexport interface BreadcrumbInterface {\n path: string;\n name: ReactNode;\n isActive?: boolean;\n}\n\n/**\n * Root breadcrumb navigation component. Provides aria-label and forwards ref to a <nav> element.\n * @returns {JSX.Element} The rendered Breadcrumb component.\n * @component\n */\nconst Breadcrumb = React.forwardRef<\n HTMLElement,\n React.ComponentPropsWithoutRef<'nav'> & {\n separator?: React.ReactNode;\n }\n>(({ ...props }, ref) => <nav ref={ref} aria-label=\"breadcrumb\" {...props} />);\nBreadcrumb.displayName = 'Breadcrumb';\n\n/**\n * Ordered list that lays out breadcrumb items.\n * @returns {JSX.Element} The rendered BreadcrumbList component.\n * @component\n */\nconst BreadcrumbList = React.forwardRef<\n HTMLOListElement,\n React.ComponentPropsWithoutRef<'ol'>\n>(({ className, ...props }, ref) => (\n <ol\n ref={ref}\n className={cn('flex flex-wrap items-center gap-1.5 break-words', className)}\n {...props}\n />\n));\nBreadcrumbList.displayName = 'BreadcrumbList';\n\n/**\n * Single breadcrumb list item container.\n * @returns {JSX.Element} The rendered BreadcrumbItem component.\n * @component\n */\nconst BreadcrumbItem = React.forwardRef<\n HTMLLIElement,\n React.ComponentPropsWithoutRef<'li'>\n>(({ className, ...props }, ref) => (\n <li\n ref={ref}\n className={cn('inline-flex items-center gap-1.5', className)}\n {...props}\n />\n));\nBreadcrumbItem.displayName = 'BreadcrumbItem';\n\n/**\n * Non-clickable breadcrumb page indicator for the current route.\n * Renders a span with aria-current=\"page\".\n * @returns {JSX.Element} The rendered BreadcrumbPage component.\n * @component\n */\nconst BreadcrumbPage = React.forwardRef<\n HTMLSpanElement,\n React.ComponentPropsWithoutRef<'span'>\n>(({ className, ...props }, ref) => (\n <span\n ref={ref}\n role=\"link\"\n aria-disabled=\"true\"\n aria-current=\"page\"\n className={cn('text-foreground font-normal', className)}\n {...props}\n />\n));\nBreadcrumbPage.displayName = 'BreadcrumbPage';\n\n/**\n * Separator element displayed between breadcrumb items.\n * Defaults to a right arrow icon when no children are provided.\n * @returns {JSX.Element} The rendered BreadcrumbSeparator component.\n */\nconst BreadcrumbSeparator = ({\n children,\n className,\n ...props\n}: React.ComponentProps<'li'>) => (\n <li\n role=\"presentation\"\n aria-hidden=\"true\"\n className={cn('text-secondary [&>svg]:size-4', className)}\n {...props}\n >\n {children ?? <RiArrowRightSLine size={20} />}\n </li>\n);\nBreadcrumbSeparator.displayName = 'BreadcrumbSeparator';\n\n/**\n * Ellipsis component to indicate collapsed breadcrumb items.\n * @returns {JSX.Element} The rendered BreadcrumbEllipsis component.\n */\nconst BreadcrumbEllipsis = ({\n className,\n ...props\n}: React.ComponentProps<'span'>) => {\n const { t } = useTranslation();\n return (\n <span\n role=\"presentation\"\n aria-hidden=\"true\"\n className={cn('flex h-9 w-9 items-center justify-center', className)}\n {...props}\n >\n <MoreHorizontal className=\"h-4 w-4\" />\n <span className=\"sr-only\">{t('More')}</span>\n </span>\n );\n};\nBreadcrumbEllipsis.displayName = 'BreadcrumbEllipsis';\n\nexport {\n Breadcrumb,\n BreadcrumbEllipsis,\n BreadcrumbItem,\n BreadcrumbList,\n BreadcrumbPage,\n BreadcrumbSeparator,\n};\n"],"names":["Breadcrumb","React","props","ref","jsx","BreadcrumbList","className","cn","BreadcrumbItem","BreadcrumbPage","BreadcrumbSeparator","children","RiArrowRightSLine","BreadcrumbEllipsis","t","useTranslation","jsxs","MoreHorizontal"],"mappings":";;;;;;AAyBA,MAAMA,IAAaC,EAAM,WAKvB,CAAC,EAAE,GAAGC,EAAA,GAASC,MAAQ,gBAAAC,EAAC,SAAI,KAAAD,GAAU,cAAW,cAAc,GAAGD,GAAO,CAAE;AAC7EF,EAAW,cAAc;AAOzB,MAAMK,IAAiBJ,EAAM,WAG3B,CAAC,EAAE,WAAAK,GAAW,GAAGJ,EAAA,GAASC,MAC1B,gBAAAC;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,KAAAD;AAAA,IACA,WAAWI,EAAG,mDAAmDD,CAAS;AAAA,IACzE,GAAGJ;AAAA,EAAA;AACN,CACD;AACDG,EAAe,cAAc;AAO7B,MAAMG,IAAiBP,EAAM,WAG3B,CAAC,EAAE,WAAAK,GAAW,GAAGJ,EAAA,GAASC,MAC1B,gBAAAC;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,KAAAD;AAAA,IACA,WAAWI,EAAG,oCAAoCD,CAAS;AAAA,IAC1D,GAAGJ;AAAA,EAAA;AACN,CACD;AACDM,EAAe,cAAc;AAQ7B,MAAMC,IAAiBR,EAAM,WAG3B,CAAC,EAAE,WAAAK,GAAW,GAAGJ,EAAA,GAASC,MAC1B,gBAAAC;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,KAAAD;AAAA,IACA,MAAK;AAAA,IACL,iBAAc;AAAA,IACd,gBAAa;AAAA,IACb,WAAWI,EAAG,+BAA+BD,CAAS;AAAA,IACrD,GAAGJ;AAAA,EAAA;AACN,CACD;AACDO,EAAe,cAAc;AAO7B,MAAMC,IAAsB,CAAC;AAAA,EAC3B,UAAAC;AAAA,EACA,WAAAL;AAAA,EACA,GAAGJ;AACL,MACE,gBAAAE;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,MAAK;AAAA,IACL,eAAY;AAAA,IACZ,WAAWG,EAAG,iCAAiCD,CAAS;AAAA,IACvD,GAAGJ;AAAA,IAEH,UAAAS,KAAY,gBAAAP,EAACQ,GAAA,EAAkB,MAAM,GAAA,CAAI;AAAA,EAAA;AAC5C;AAEFF,EAAoB,cAAc;AAMlC,MAAMG,IAAqB,CAAC;AAAA,EAC1B,WAAAP;AAAA,EACA,GAAGJ;AACL,MAAoC;AAClC,QAAM,EAAE,GAAAY,EAAA,IAAMC,EAAA;AACd,SACE,gBAAAC;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,MAAK;AAAA,MACL,eAAY;AAAA,MACZ,WAAWT,EAAG,4CAA4CD,CAAS;AAAA,MAClE,GAAGJ;AAAA,MAEJ,UAAA;AAAA,QAAA,gBAAAE,EAACa,GAAA,EAAe,WAAU,UAAA,CAAU;AAAA,0BACnC,QAAA,EAAK,WAAU,WAAW,UAAAH,EAAE,MAAM,EAAA,CAAE;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAG3C;AACAD,EAAmB,cAAc;"}
@@ -0,0 +1,2 @@
1
+ "use strict";const s=require("react/jsx-runtime"),b=require("./index-is755vrc.cjs.js"),p=require("react"),f=require("react-i18next"),t=require("./index-BWS4jvS6.cjs.js"),x=require("./ellipsis-FJjSjEdP.cjs.js");function B(e){if(e&&e.__esModule)return e;const r=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const a in e)if(a!=="default"){const n=Object.getOwnPropertyDescriptor(e,a);Object.defineProperty(r,a,n.get?n:{enumerable:!0,get:()=>e[a]})}}return r.default=e,Object.freeze(r)}const c=B(p),i=c.forwardRef(({...e},r)=>s.jsx("nav",{ref:r,"aria-label":"breadcrumb",...e}));i.displayName="Breadcrumb";const l=c.forwardRef(({className:e,...r},a)=>s.jsx("ol",{ref:a,className:t.cn("flex flex-wrap items-center gap-1.5 break-words",e),...r}));l.displayName="BreadcrumbList";const d=c.forwardRef(({className:e,...r},a)=>s.jsx("li",{ref:a,className:t.cn("inline-flex items-center gap-1.5",e),...r}));d.displayName="BreadcrumbItem";const o=c.forwardRef(({className:e,...r},a)=>s.jsx("span",{ref:a,role:"link","aria-disabled":"true","aria-current":"page",className:t.cn("text-foreground font-normal",e),...r}));o.displayName="BreadcrumbPage";const u=({children:e,className:r,...a})=>s.jsx("li",{role:"presentation","aria-hidden":"true",className:t.cn("text-secondary [&>svg]:size-4",r),...a,children:e??s.jsx(b.r2,{size:20})});u.displayName="BreadcrumbSeparator";const m=({className:e,...r})=>{const{t:a}=f.useTranslation();return s.jsxs("span",{role:"presentation","aria-hidden":"true",className:t.cn("flex h-9 w-9 items-center justify-center",e),...r,children:[s.jsx(x.Ellipsis,{className:"h-4 w-4"}),s.jsx("span",{className:"sr-only",children:a("More")})]})};m.displayName="BreadcrumbEllipsis";exports.Breadcrumb=i;exports.BreadcrumbEllipsis=m;exports.BreadcrumbItem=d;exports.BreadcrumbList=l;exports.BreadcrumbPage=o;exports.BreadcrumbSeparator=u;
2
+ //# sourceMappingURL=breadcrumb-DKVYizoh.cjs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"breadcrumb-DKVYizoh.cjs.js","sources":["../../src/ui/breadcrumb/breadcrumb.tsx"],"sourcesContent":["import { RiArrowRightSLine } from '@remixicon/react';\nimport { MoreHorizontal } from 'lucide-react';\nimport type { ReactNode } from 'react';\nimport * as React from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { cn } from '../../lib';\n\n/**\n * Represents a single breadcrumb item used to build breadcrumb trails.\n *\n * @property {string} path - The URL or path to navigate to.\n * @property {ReactNode} name - Display label for the breadcrumb item.\n * @property {boolean} [isActive] - Marks the current page item.\n */\nexport interface BreadcrumbInterface {\n path: string;\n name: ReactNode;\n isActive?: boolean;\n}\n\n/**\n * Root breadcrumb navigation component. Provides aria-label and forwards ref to a <nav> element.\n * @returns {JSX.Element} The rendered Breadcrumb component.\n * @component\n */\nconst Breadcrumb = React.forwardRef<\n HTMLElement,\n React.ComponentPropsWithoutRef<'nav'> & {\n separator?: React.ReactNode;\n }\n>(({ ...props }, ref) => <nav ref={ref} aria-label=\"breadcrumb\" {...props} />);\nBreadcrumb.displayName = 'Breadcrumb';\n\n/**\n * Ordered list that lays out breadcrumb items.\n * @returns {JSX.Element} The rendered BreadcrumbList component.\n * @component\n */\nconst BreadcrumbList = React.forwardRef<\n HTMLOListElement,\n React.ComponentPropsWithoutRef<'ol'>\n>(({ className, ...props }, ref) => (\n <ol\n ref={ref}\n className={cn('flex flex-wrap items-center gap-1.5 break-words', className)}\n {...props}\n />\n));\nBreadcrumbList.displayName = 'BreadcrumbList';\n\n/**\n * Single breadcrumb list item container.\n * @returns {JSX.Element} The rendered BreadcrumbItem component.\n * @component\n */\nconst BreadcrumbItem = React.forwardRef<\n HTMLLIElement,\n React.ComponentPropsWithoutRef<'li'>\n>(({ className, ...props }, ref) => (\n <li\n ref={ref}\n className={cn('inline-flex items-center gap-1.5', className)}\n {...props}\n />\n));\nBreadcrumbItem.displayName = 'BreadcrumbItem';\n\n/**\n * Non-clickable breadcrumb page indicator for the current route.\n * Renders a span with aria-current=\"page\".\n * @returns {JSX.Element} The rendered BreadcrumbPage component.\n * @component\n */\nconst BreadcrumbPage = React.forwardRef<\n HTMLSpanElement,\n React.ComponentPropsWithoutRef<'span'>\n>(({ className, ...props }, ref) => (\n <span\n ref={ref}\n role=\"link\"\n aria-disabled=\"true\"\n aria-current=\"page\"\n className={cn('text-foreground font-normal', className)}\n {...props}\n />\n));\nBreadcrumbPage.displayName = 'BreadcrumbPage';\n\n/**\n * Separator element displayed between breadcrumb items.\n * Defaults to a right arrow icon when no children are provided.\n * @returns {JSX.Element} The rendered BreadcrumbSeparator component.\n */\nconst BreadcrumbSeparator = ({\n children,\n className,\n ...props\n}: React.ComponentProps<'li'>) => (\n <li\n role=\"presentation\"\n aria-hidden=\"true\"\n className={cn('text-secondary [&>svg]:size-4', className)}\n {...props}\n >\n {children ?? <RiArrowRightSLine size={20} />}\n </li>\n);\nBreadcrumbSeparator.displayName = 'BreadcrumbSeparator';\n\n/**\n * Ellipsis component to indicate collapsed breadcrumb items.\n * @returns {JSX.Element} The rendered BreadcrumbEllipsis component.\n */\nconst BreadcrumbEllipsis = ({\n className,\n ...props\n}: React.ComponentProps<'span'>) => {\n const { t } = useTranslation();\n return (\n <span\n role=\"presentation\"\n aria-hidden=\"true\"\n className={cn('flex h-9 w-9 items-center justify-center', className)}\n {...props}\n >\n <MoreHorizontal className=\"h-4 w-4\" />\n <span className=\"sr-only\">{t('More')}</span>\n </span>\n );\n};\nBreadcrumbEllipsis.displayName = 'BreadcrumbEllipsis';\n\nexport {\n Breadcrumb,\n BreadcrumbEllipsis,\n BreadcrumbItem,\n BreadcrumbList,\n BreadcrumbPage,\n BreadcrumbSeparator,\n};\n"],"names":["Breadcrumb","React","props","ref","jsx","BreadcrumbList","className","cn","BreadcrumbItem","BreadcrumbPage","BreadcrumbSeparator","children","RiArrowRightSLine","BreadcrumbEllipsis","t","useTranslation","jsxs","MoreHorizontal"],"mappings":"wgBAyBMA,EAAaC,EAAM,WAKvB,CAAC,CAAE,GAAGC,CAAA,EAASC,IAAQC,EAAAA,IAAC,OAAI,IAAAD,EAAU,aAAW,aAAc,GAAGD,EAAO,CAAE,EAC7EF,EAAW,YAAc,aAOzB,MAAMK,EAAiBJ,EAAM,WAG3B,CAAC,CAAE,UAAAK,EAAW,GAAGJ,CAAA,EAASC,IAC1BC,EAAAA,IAAC,KAAA,CACC,IAAAD,EACA,UAAWI,EAAAA,GAAG,kDAAmDD,CAAS,EACzE,GAAGJ,CAAA,CACN,CACD,EACDG,EAAe,YAAc,iBAO7B,MAAMG,EAAiBP,EAAM,WAG3B,CAAC,CAAE,UAAAK,EAAW,GAAGJ,CAAA,EAASC,IAC1BC,EAAAA,IAAC,KAAA,CACC,IAAAD,EACA,UAAWI,EAAAA,GAAG,mCAAoCD,CAAS,EAC1D,GAAGJ,CAAA,CACN,CACD,EACDM,EAAe,YAAc,iBAQ7B,MAAMC,EAAiBR,EAAM,WAG3B,CAAC,CAAE,UAAAK,EAAW,GAAGJ,CAAA,EAASC,IAC1BC,EAAAA,IAAC,OAAA,CACC,IAAAD,EACA,KAAK,OACL,gBAAc,OACd,eAAa,OACb,UAAWI,EAAAA,GAAG,8BAA+BD,CAAS,EACrD,GAAGJ,CAAA,CACN,CACD,EACDO,EAAe,YAAc,iBAO7B,MAAMC,EAAsB,CAAC,CAC3B,SAAAC,EACA,UAAAL,EACA,GAAGJ,CACL,IACEE,EAAAA,IAAC,KAAA,CACC,KAAK,eACL,cAAY,OACZ,UAAWG,EAAAA,GAAG,gCAAiCD,CAAS,EACvD,GAAGJ,EAEH,SAAAS,GAAYP,EAAAA,IAACQ,EAAAA,GAAA,CAAkB,KAAM,EAAA,CAAI,CAAA,CAC5C,EAEFF,EAAoB,YAAc,sBAMlC,MAAMG,EAAqB,CAAC,CAC1B,UAAAP,EACA,GAAGJ,CACL,IAAoC,CAClC,KAAM,CAAE,EAAAY,CAAA,EAAMC,iBAAA,EACd,OACEC,EAAAA,KAAC,OAAA,CACC,KAAK,eACL,cAAY,OACZ,UAAWT,EAAAA,GAAG,2CAA4CD,CAAS,EAClE,GAAGJ,EAEJ,SAAA,CAAAE,EAAAA,IAACa,EAAAA,SAAA,CAAe,UAAU,SAAA,CAAU,QACnC,OAAA,CAAK,UAAU,UAAW,SAAAH,EAAE,MAAM,CAAA,CAAE,CAAA,CAAA,CAAA,CAG3C,EACAD,EAAmB,YAAc"}
@@ -0,0 +1,105 @@
1
+ import { jsxs as l, jsx as t } from "react/jsx-runtime";
2
+ import { R as x, C as n, P as y, T as N, a as d, D as r, O as c, b as m } from "./index-xl-szYFX.es.js";
3
+ import * as i from "react";
4
+ import { useTranslation as D } from "react-i18next";
5
+ import { c as s } from "./index-D6dQK9i-.es.js";
6
+ import { X as b } from "./x-8d8XBbXN.es.js";
7
+ const F = x, H = N, h = y, X = n, f = i.forwardRef(({ className: a, ...e }, o) => /* @__PURE__ */ t(
8
+ c,
9
+ {
10
+ ref: o,
11
+ className: s(
12
+ "data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/80",
13
+ a
14
+ ),
15
+ ...e
16
+ }
17
+ ));
18
+ f.displayName = c.displayName;
19
+ const w = i.forwardRef(({ className: a, children: e, hasCloseButton: o, ...p }, g) => {
20
+ const { t: u } = D();
21
+ return /* @__PURE__ */ l(h, { children: [
22
+ /* @__PURE__ */ t(f, {}),
23
+ /* @__PURE__ */ l(
24
+ d,
25
+ {
26
+ ref: g,
27
+ className: s(
28
+ "bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] fixed top-[50%] left-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border p-6 shadow-lg duration-200 sm:rounded-lg",
29
+ a
30
+ ),
31
+ ...p,
32
+ children: [
33
+ e,
34
+ o && /* @__PURE__ */ l(n, { className: "ring-offset-background focus:ring-ring data-[state=open]:bg-accent data-[state=open]:text-muted-foreground absolute top-4 right-4 rounded-sm opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-none disabled:pointer-events-none", children: [
35
+ /* @__PURE__ */ t(b, { className: "size-4" }),
36
+ /* @__PURE__ */ t("span", { className: "sr-only", children: u("Close") })
37
+ ] })
38
+ ]
39
+ }
40
+ )
41
+ ] });
42
+ });
43
+ w.displayName = d.displayName;
44
+ const v = ({
45
+ className: a,
46
+ ...e
47
+ }) => /* @__PURE__ */ t(
48
+ "div",
49
+ {
50
+ className: s(
51
+ "flex flex-col space-y-1.5 text-center sm:text-left",
52
+ a
53
+ ),
54
+ ...e
55
+ }
56
+ );
57
+ v.displayName = "DialogHeader";
58
+ const C = ({
59
+ className: a,
60
+ ...e
61
+ }) => /* @__PURE__ */ t(
62
+ "div",
63
+ {
64
+ className: s(
65
+ "flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",
66
+ a
67
+ ),
68
+ ...e
69
+ }
70
+ );
71
+ C.displayName = "DialogFooter";
72
+ const R = i.forwardRef(({ className: a, ...e }, o) => /* @__PURE__ */ t(
73
+ m,
74
+ {
75
+ ref: o,
76
+ className: s(
77
+ "text-lg leading-none font-semibold tracking-tight",
78
+ a
79
+ ),
80
+ ...e
81
+ }
82
+ ));
83
+ R.displayName = m.displayName;
84
+ const T = i.forwardRef(({ className: a, ...e }, o) => /* @__PURE__ */ t(
85
+ r,
86
+ {
87
+ ref: o,
88
+ className: s("text-muted-foreground text-sm", a),
89
+ ...e
90
+ }
91
+ ));
92
+ T.displayName = r.displayName;
93
+ export {
94
+ F as D,
95
+ X as a,
96
+ w as b,
97
+ T as c,
98
+ C as d,
99
+ v as e,
100
+ f,
101
+ h as g,
102
+ R as h,
103
+ H as i
104
+ };
105
+ //# sourceMappingURL=dialog-Cb_DS5IV.es.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dialog-Cb_DS5IV.es.js","sources":["../../src/ui/dialog/dialog.tsx"],"sourcesContent":["import * as DialogPrimitive from '@radix-ui/react-dialog';\nimport { X } from 'lucide-react';\nimport * as React from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { cn } from '../../lib';\nimport type { ElementDataType } from '../../types';\n\n/**\n * Dialog primitives for building modal dialogs.\n * Use Dialog as the root, DialogTrigger to open, and DialogContent for the modal body.\n */\nconst Dialog = DialogPrimitive.Root;\n\nconst DialogTrigger = DialogPrimitive.Trigger;\n\nconst DialogPortal = DialogPrimitive.Portal;\n\nconst DialogClose = DialogPrimitive.Close;\n\n/**\n * Full-screen overlay that appears behind the dialog content.\n * @returns {JSX.Element} The rendered DialogOverlay component.\n */\nconst DialogOverlay = React.forwardRef<\n React.ElementRef<typeof DialogPrimitive.Overlay>,\n React.ComponentPropsWithoutRef<typeof DialogPrimitive.Overlay>\n>(({ className, ...props }, ref) => (\n <DialogPrimitive.Overlay\n ref={ref}\n className={cn(\n 'data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/80',\n className\n )}\n {...props}\n />\n));\nDialogOverlay.displayName = DialogPrimitive.Overlay.displayName;\n\nexport type DialogContentProps = React.ComponentPropsWithoutRef<\n typeof DialogPrimitive.Content\n> & {\n /**\n * If true, a close button will be rendered inside the dialog content.\n */\n hasCloseButton?: true;\n};\n\n/**\n * The main dialog content container positioned in the viewport center.\n * @returns {JSX.Element} The rendered DialogContent component.\n */\nconst DialogContent = React.forwardRef<\n React.ElementRef<typeof DialogPrimitive.Content>,\n DialogContentProps\n>(({ className, children, hasCloseButton, ...props }, ref) => {\n const { t } = useTranslation();\n return (\n <DialogPortal>\n <DialogOverlay />\n <DialogPrimitive.Content\n ref={ref}\n className={cn(\n 'bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] fixed top-[50%] left-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border p-6 shadow-lg duration-200 sm:rounded-lg',\n className\n )}\n {...props}\n >\n {children}\n {hasCloseButton && (\n <DialogPrimitive.Close className=\"ring-offset-background focus:ring-ring data-[state=open]:bg-accent data-[state=open]:text-muted-foreground absolute top-4 right-4 rounded-sm opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-none disabled:pointer-events-none\">\n <X className=\"size-4\" />\n <span className=\"sr-only\">{t('Close')}</span>\n </DialogPrimitive.Close>\n )}\n </DialogPrimitive.Content>\n </DialogPortal>\n );\n});\nDialogContent.displayName = DialogPrimitive.Content.displayName;\n\n/**\n * Container for dialog header content (title, actions).\n * @returns {JSX.Element} The rendered DialogHeader component.\n */\nconst DialogHeader = ({\n className,\n ...props\n}: React.HTMLAttributes<HTMLDivElement>) => (\n <div\n className={cn(\n 'flex flex-col space-y-1.5 text-center sm:text-left',\n className\n )}\n {...props}\n />\n);\nDialogHeader.displayName = 'DialogHeader';\n\n/**\n * Container for dialog footer actions.\n * @returns {JSX.Element} The rendered DialogFooter component.\n */\nconst DialogFooter = ({\n className,\n ...props\n}: React.HTMLAttributes<HTMLDivElement>) => (\n <div\n className={cn(\n 'flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2',\n className\n )}\n {...props}\n />\n);\nDialogFooter.displayName = 'DialogFooter';\n\n/**\n * DialogTitle - The accessible dialog title.\n * @returns {JSX.Element} The rendered DialogTitle component.\n */\nconst DialogTitle = React.forwardRef<\n React.ElementRef<typeof DialogPrimitive.Title>,\n React.ComponentPropsWithoutRef<typeof DialogPrimitive.Title>\n>(({ className, ...props }, ref) => (\n <DialogPrimitive.Title\n ref={ref}\n className={cn(\n 'text-lg leading-none font-semibold tracking-tight',\n className\n )}\n {...props}\n />\n));\nDialogTitle.displayName = DialogPrimitive.Title.displayName;\n\n/**\n * DialogDescription - Additional descriptive text for the dialog.\n * @returns {JSX.Element} The rendered DialogDescription component.\n */\nconst DialogDescription = React.forwardRef<\n React.ElementRef<typeof DialogPrimitive.Description>,\n React.ComponentPropsWithoutRef<typeof DialogPrimitive.Description>\n>(({ className, ...props }, ref) => (\n <DialogPrimitive.Description\n ref={ref}\n className={cn('text-muted-foreground text-sm', className)}\n {...props}\n />\n));\nDialogDescription.displayName = DialogPrimitive.Description.displayName;\n\n/**\n * Props aggregation for components that wrap Dialog primitives.\n * Useful for high-level components needing to forward props to specific Dialog parts.\n */\n/**\n * Props aggregation for components that wrap Dialog primitives.\n * Useful for high-level components needing to forward props to specific Dialog parts.\n * @property {React.ComponentPropsWithoutRef<typeof DialogTrigger> & ElementDataType} [triggerProps] - Props for the DialogTrigger component.\n * @property {React.ComponentPropsWithoutRef<typeof DialogContent> & ElementDataType} [contentProps] - Props for the DialogContent component.\n * @property {React.ComponentPropsWithoutRef<typeof DialogClose> & ElementDataType} [closeProps] - Props for the DialogClose component.\n */\ninterface DialogContainerProps {\n triggerProps?: React.ComponentPropsWithoutRef<typeof DialogTrigger> &\n ElementDataType;\n contentProps?: React.ComponentPropsWithoutRef<typeof DialogContent> &\n ElementDataType;\n closeProps?: React.ComponentPropsWithoutRef<typeof DialogClose> &\n ElementDataType;\n}\n\nexport {\n Dialog,\n DialogClose,\n DialogContent,\n DialogDescription,\n DialogFooter,\n DialogHeader,\n DialogOverlay,\n DialogPortal,\n DialogTitle,\n DialogTrigger,\n type DialogContainerProps,\n};\n"],"names":["Dialog","DialogPrimitive.Root","DialogTrigger","DialogPrimitive.Trigger","DialogPortal","DialogPrimitive.Portal","DialogClose","DialogPrimitive.Close","DialogOverlay","React","className","props","ref","jsx","DialogPrimitive.Overlay","cn","DialogContent","children","hasCloseButton","t","useTranslation","jsxs","DialogPrimitive.Content","X","DialogHeader","DialogFooter","DialogTitle","DialogPrimitive.Title","DialogDescription","DialogPrimitive.Description"],"mappings":";;;;;;AAWA,MAAMA,IAASC,GAETC,IAAgBC,GAEhBC,IAAeC,GAEfC,IAAcC,GAMdC,IAAgBC,EAAM,WAG1B,CAAC,EAAE,WAAAC,GAAW,GAAGC,EAAA,GAASC,MAC1B,gBAAAC;AAAA,EAACC;AAAAA,EAAA;AAAA,IACC,KAAAF;AAAA,IACA,WAAWG;AAAA,MACT;AAAA,MACAL;AAAA,IAAA;AAAA,IAED,GAAGC;AAAA,EAAA;AACN,CACD;AACDH,EAAc,cAAcM,EAAwB;AAepD,MAAME,IAAgBP,EAAM,WAG1B,CAAC,EAAE,WAAAC,GAAW,UAAAO,GAAU,gBAAAC,GAAgB,GAAGP,EAAA,GAASC,MAAQ;AAC5D,QAAM,EAAE,GAAAO,EAAA,IAAMC,EAAA;AACd,2BACGhB,GAAA,EACC,UAAA;AAAA,IAAA,gBAAAS,EAACL,GAAA,EAAc;AAAA,IACf,gBAAAa;AAAA,MAACC;AAAAA,MAAA;AAAA,QACC,KAAAV;AAAA,QACA,WAAWG;AAAA,UACT;AAAA,UACAL;AAAA,QAAA;AAAA,QAED,GAAGC;AAAA,QAEH,UAAA;AAAA,UAAAM;AAAA,UACAC,KACC,gBAAAG,EAACd,GAAA,EAAsB,WAAU,iRAC/B,UAAA;AAAA,YAAA,gBAAAM,EAACU,GAAA,EAAE,WAAU,SAAA,CAAS;AAAA,8BACrB,QAAA,EAAK,WAAU,WAAW,UAAAJ,EAAE,OAAO,EAAA,CAAE;AAAA,UAAA,EAAA,CACxC;AAAA,QAAA;AAAA,MAAA;AAAA,IAAA;AAAA,EAEJ,GACF;AAEJ,CAAC;AACDH,EAAc,cAAcM,EAAwB;AAMpD,MAAME,IAAe,CAAC;AAAA,EACpB,WAAAd;AAAA,EACA,GAAGC;AACL,MACE,gBAAAE;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,WAAWE;AAAA,MACT;AAAA,MACAL;AAAA,IAAA;AAAA,IAED,GAAGC;AAAA,EAAA;AACN;AAEFa,EAAa,cAAc;AAM3B,MAAMC,IAAe,CAAC;AAAA,EACpB,WAAAf;AAAA,EACA,GAAGC;AACL,MACE,gBAAAE;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,WAAWE;AAAA,MACT;AAAA,MACAL;AAAA,IAAA;AAAA,IAED,GAAGC;AAAA,EAAA;AACN;AAEFc,EAAa,cAAc;AAM3B,MAAMC,IAAcjB,EAAM,WAGxB,CAAC,EAAE,WAAAC,GAAW,GAAGC,EAAA,GAASC,MAC1B,gBAAAC;AAAA,EAACc;AAAAA,EAAA;AAAA,IACC,KAAAf;AAAA,IACA,WAAWG;AAAA,MACT;AAAA,MACAL;AAAA,IAAA;AAAA,IAED,GAAGC;AAAA,EAAA;AACN,CACD;AACDe,EAAY,cAAcC,EAAsB;AAMhD,MAAMC,IAAoBnB,EAAM,WAG9B,CAAC,EAAE,WAAAC,GAAW,GAAGC,EAAA,GAASC,MAC1B,gBAAAC;AAAA,EAACgB;AAAAA,EAAA;AAAA,IACC,KAAAjB;AAAA,IACA,WAAWG,EAAG,iCAAiCL,CAAS;AAAA,IACvD,GAAGC;AAAA,EAAA;AACN,CACD;AACDiB,EAAkB,cAAcC,EAA4B;"}
@@ -0,0 +1,2 @@
1
+ "use strict";const s=require("react/jsx-runtime"),a=require("./index-CtCzh8NB.cjs.js"),D=require("react"),y=require("react-i18next"),n=require("./index-BWS4jvS6.cjs.js"),N=require("./x-Ev63aQi_.cjs.js");function j(e){if(e&&e.__esModule)return e;const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const o in e)if(o!=="default"){const i=Object.getOwnPropertyDescriptor(e,o);Object.defineProperty(t,o,i.get?i:{enumerable:!0,get:()=>e[o]})}}return t.default=e,Object.freeze(t)}const l=j(D),b=a.Root,v=a.Trigger,d=a.Portal,w=a.Close,r=l.forwardRef(({className:e,...t},o)=>s.jsx(a.Overlay,{ref:o,className:n.cn("data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/80",e),...t}));r.displayName=a.Overlay.displayName;const c=l.forwardRef(({className:e,children:t,hasCloseButton:o,...i},p)=>{const{t:x}=y.useTranslation();return s.jsxs(d,{children:[s.jsx(r,{}),s.jsxs(a.Content,{ref:p,className:n.cn("bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] fixed top-[50%] left-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border p-6 shadow-lg duration-200 sm:rounded-lg",e),...i,children:[t,o&&s.jsxs(a.Close,{className:"ring-offset-background focus:ring-ring data-[state=open]:bg-accent data-[state=open]:text-muted-foreground absolute top-4 right-4 rounded-sm opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-none disabled:pointer-events-none",children:[s.jsx(N.X,{className:"size-4"}),s.jsx("span",{className:"sr-only",children:x("Close")})]})]})]})});c.displayName=a.Content.displayName;const g=({className:e,...t})=>s.jsx("div",{className:n.cn("flex flex-col space-y-1.5 text-center sm:text-left",e),...t});g.displayName="DialogHeader";const f=({className:e,...t})=>s.jsx("div",{className:n.cn("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",e),...t});f.displayName="DialogFooter";const u=l.forwardRef(({className:e,...t},o)=>s.jsx(a.Title,{ref:o,className:n.cn("text-lg leading-none font-semibold tracking-tight",e),...t}));u.displayName=a.Title.displayName;const m=l.forwardRef(({className:e,...t},o)=>s.jsx(a.Description,{ref:o,className:n.cn("text-muted-foreground text-sm",e),...t}));m.displayName=a.Description.displayName;exports.Dialog=b;exports.DialogClose=w;exports.DialogContent=c;exports.DialogDescription=m;exports.DialogFooter=f;exports.DialogHeader=g;exports.DialogOverlay=r;exports.DialogPortal=d;exports.DialogTitle=u;exports.DialogTrigger=v;
2
+ //# sourceMappingURL=dialog-pRz31cHo.cjs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dialog-pRz31cHo.cjs.js","sources":["../../src/ui/dialog/dialog.tsx"],"sourcesContent":["import * as DialogPrimitive from '@radix-ui/react-dialog';\nimport { X } from 'lucide-react';\nimport * as React from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { cn } from '../../lib';\nimport type { ElementDataType } from '../../types';\n\n/**\n * Dialog primitives for building modal dialogs.\n * Use Dialog as the root, DialogTrigger to open, and DialogContent for the modal body.\n */\nconst Dialog = DialogPrimitive.Root;\n\nconst DialogTrigger = DialogPrimitive.Trigger;\n\nconst DialogPortal = DialogPrimitive.Portal;\n\nconst DialogClose = DialogPrimitive.Close;\n\n/**\n * Full-screen overlay that appears behind the dialog content.\n * @returns {JSX.Element} The rendered DialogOverlay component.\n */\nconst DialogOverlay = React.forwardRef<\n React.ElementRef<typeof DialogPrimitive.Overlay>,\n React.ComponentPropsWithoutRef<typeof DialogPrimitive.Overlay>\n>(({ className, ...props }, ref) => (\n <DialogPrimitive.Overlay\n ref={ref}\n className={cn(\n 'data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/80',\n className\n )}\n {...props}\n />\n));\nDialogOverlay.displayName = DialogPrimitive.Overlay.displayName;\n\nexport type DialogContentProps = React.ComponentPropsWithoutRef<\n typeof DialogPrimitive.Content\n> & {\n /**\n * If true, a close button will be rendered inside the dialog content.\n */\n hasCloseButton?: true;\n};\n\n/**\n * The main dialog content container positioned in the viewport center.\n * @returns {JSX.Element} The rendered DialogContent component.\n */\nconst DialogContent = React.forwardRef<\n React.ElementRef<typeof DialogPrimitive.Content>,\n DialogContentProps\n>(({ className, children, hasCloseButton, ...props }, ref) => {\n const { t } = useTranslation();\n return (\n <DialogPortal>\n <DialogOverlay />\n <DialogPrimitive.Content\n ref={ref}\n className={cn(\n 'bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] fixed top-[50%] left-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border p-6 shadow-lg duration-200 sm:rounded-lg',\n className\n )}\n {...props}\n >\n {children}\n {hasCloseButton && (\n <DialogPrimitive.Close className=\"ring-offset-background focus:ring-ring data-[state=open]:bg-accent data-[state=open]:text-muted-foreground absolute top-4 right-4 rounded-sm opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-none disabled:pointer-events-none\">\n <X className=\"size-4\" />\n <span className=\"sr-only\">{t('Close')}</span>\n </DialogPrimitive.Close>\n )}\n </DialogPrimitive.Content>\n </DialogPortal>\n );\n});\nDialogContent.displayName = DialogPrimitive.Content.displayName;\n\n/**\n * Container for dialog header content (title, actions).\n * @returns {JSX.Element} The rendered DialogHeader component.\n */\nconst DialogHeader = ({\n className,\n ...props\n}: React.HTMLAttributes<HTMLDivElement>) => (\n <div\n className={cn(\n 'flex flex-col space-y-1.5 text-center sm:text-left',\n className\n )}\n {...props}\n />\n);\nDialogHeader.displayName = 'DialogHeader';\n\n/**\n * Container for dialog footer actions.\n * @returns {JSX.Element} The rendered DialogFooter component.\n */\nconst DialogFooter = ({\n className,\n ...props\n}: React.HTMLAttributes<HTMLDivElement>) => (\n <div\n className={cn(\n 'flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2',\n className\n )}\n {...props}\n />\n);\nDialogFooter.displayName = 'DialogFooter';\n\n/**\n * DialogTitle - The accessible dialog title.\n * @returns {JSX.Element} The rendered DialogTitle component.\n */\nconst DialogTitle = React.forwardRef<\n React.ElementRef<typeof DialogPrimitive.Title>,\n React.ComponentPropsWithoutRef<typeof DialogPrimitive.Title>\n>(({ className, ...props }, ref) => (\n <DialogPrimitive.Title\n ref={ref}\n className={cn(\n 'text-lg leading-none font-semibold tracking-tight',\n className\n )}\n {...props}\n />\n));\nDialogTitle.displayName = DialogPrimitive.Title.displayName;\n\n/**\n * DialogDescription - Additional descriptive text for the dialog.\n * @returns {JSX.Element} The rendered DialogDescription component.\n */\nconst DialogDescription = React.forwardRef<\n React.ElementRef<typeof DialogPrimitive.Description>,\n React.ComponentPropsWithoutRef<typeof DialogPrimitive.Description>\n>(({ className, ...props }, ref) => (\n <DialogPrimitive.Description\n ref={ref}\n className={cn('text-muted-foreground text-sm', className)}\n {...props}\n />\n));\nDialogDescription.displayName = DialogPrimitive.Description.displayName;\n\n/**\n * Props aggregation for components that wrap Dialog primitives.\n * Useful for high-level components needing to forward props to specific Dialog parts.\n */\n/**\n * Props aggregation for components that wrap Dialog primitives.\n * Useful for high-level components needing to forward props to specific Dialog parts.\n * @property {React.ComponentPropsWithoutRef<typeof DialogTrigger> & ElementDataType} [triggerProps] - Props for the DialogTrigger component.\n * @property {React.ComponentPropsWithoutRef<typeof DialogContent> & ElementDataType} [contentProps] - Props for the DialogContent component.\n * @property {React.ComponentPropsWithoutRef<typeof DialogClose> & ElementDataType} [closeProps] - Props for the DialogClose component.\n */\ninterface DialogContainerProps {\n triggerProps?: React.ComponentPropsWithoutRef<typeof DialogTrigger> &\n ElementDataType;\n contentProps?: React.ComponentPropsWithoutRef<typeof DialogContent> &\n ElementDataType;\n closeProps?: React.ComponentPropsWithoutRef<typeof DialogClose> &\n ElementDataType;\n}\n\nexport {\n Dialog,\n DialogClose,\n DialogContent,\n DialogDescription,\n DialogFooter,\n DialogHeader,\n DialogOverlay,\n DialogPortal,\n DialogTitle,\n DialogTrigger,\n type DialogContainerProps,\n};\n"],"names":["Dialog","DialogPrimitive.Root","DialogTrigger","DialogPrimitive.Trigger","DialogPortal","DialogPrimitive.Portal","DialogClose","DialogPrimitive.Close","DialogOverlay","React","className","props","ref","jsx","DialogPrimitive.Overlay","cn","DialogContent","children","hasCloseButton","t","useTranslation","jsxs","DialogPrimitive.Content","X","DialogHeader","DialogFooter","DialogTitle","DialogPrimitive.Title","DialogDescription","DialogPrimitive.Description"],"mappings":"igBAWMA,EAASC,EAAAA,KAETC,EAAgBC,EAAAA,QAEhBC,EAAeC,EAAAA,OAEfC,EAAcC,EAAAA,MAMdC,EAAgBC,EAAM,WAG1B,CAAC,CAAE,UAAAC,EAAW,GAAGC,CAAA,EAASC,IAC1BC,EAAAA,IAACC,EAAAA,QAAA,CACC,IAAAF,EACA,UAAWG,EAAAA,GACT,yJACAL,CAAA,EAED,GAAGC,CAAA,CACN,CACD,EACDH,EAAc,YAAcM,EAAAA,QAAwB,YAepD,MAAME,EAAgBP,EAAM,WAG1B,CAAC,CAAE,UAAAC,EAAW,SAAAO,EAAU,eAAAC,EAAgB,GAAGP,CAAA,EAASC,IAAQ,CAC5D,KAAM,CAAE,EAAAO,CAAA,EAAMC,iBAAA,EACd,cACGhB,EAAA,CACC,SAAA,CAAAS,EAAAA,IAACL,EAAA,EAAc,EACfa,EAAAA,KAACC,EAAAA,QAAA,CACC,IAAAV,EACA,UAAWG,EAAAA,GACT,8fACAL,CAAA,EAED,GAAGC,EAEH,SAAA,CAAAM,EACAC,GACCG,EAAAA,KAACd,EAAAA,MAAA,CAAsB,UAAU,gRAC/B,SAAA,CAAAM,EAAAA,IAACU,EAAAA,EAAA,CAAE,UAAU,QAAA,CAAS,QACrB,OAAA,CAAK,UAAU,UAAW,SAAAJ,EAAE,OAAO,CAAA,CAAE,CAAA,CAAA,CACxC,CAAA,CAAA,CAAA,CAEJ,EACF,CAEJ,CAAC,EACDH,EAAc,YAAcM,EAAAA,QAAwB,YAMpD,MAAME,EAAe,CAAC,CACpB,UAAAd,EACA,GAAGC,CACL,IACEE,EAAAA,IAAC,MAAA,CACC,UAAWE,EAAAA,GACT,qDACAL,CAAA,EAED,GAAGC,CAAA,CACN,EAEFa,EAAa,YAAc,eAM3B,MAAMC,EAAe,CAAC,CACpB,UAAAf,EACA,GAAGC,CACL,IACEE,EAAAA,IAAC,MAAA,CACC,UAAWE,EAAAA,GACT,gEACAL,CAAA,EAED,GAAGC,CAAA,CACN,EAEFc,EAAa,YAAc,eAM3B,MAAMC,EAAcjB,EAAM,WAGxB,CAAC,CAAE,UAAAC,EAAW,GAAGC,CAAA,EAASC,IAC1BC,EAAAA,IAACc,EAAAA,MAAA,CACC,IAAAf,EACA,UAAWG,EAAAA,GACT,oDACAL,CAAA,EAED,GAAGC,CAAA,CACN,CACD,EACDe,EAAY,YAAcC,EAAAA,MAAsB,YAMhD,MAAMC,EAAoBnB,EAAM,WAG9B,CAAC,CAAE,UAAAC,EAAW,GAAGC,CAAA,EAASC,IAC1BC,EAAAA,IAACgB,EAAAA,YAAA,CACC,IAAAjB,EACA,UAAWG,EAAAA,GAAG,gCAAiCL,CAAS,EACvD,GAAGC,CAAA,CACN,CACD,EACDiB,EAAkB,YAAcC,EAAAA,YAA4B"}
@@ -0,0 +1,2 @@
1
+ "use strict";const t=require("react/jsx-runtime"),d=require("react"),r=require("react-i18next"),i=require("./index-BWS4jvS6.cjs.js"),f=require("./button-DLexbK7C.cjs.js"),x=require("./ellipsis-FJjSjEdP.cjs.js"),N=require("./chevron-right-BxyusM7v.cjs.js"),j=require("./chevron-left-B_pqqZqr.cjs.js");function h(n){if(n&&n.__esModule)return n;const a=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(n){for(const e in n)if(e!=="default"){const s=Object.getOwnPropertyDescriptor(n,e);Object.defineProperty(a,e,s.get?s:{enumerable:!0,get:()=>n[e]})}}return a.default=n,Object.freeze(a)}const c=h(d),l=({className:n,...a})=>t.jsx("nav",{role:"navigation","aria-label":"pagination",className:i.cn("flex w-full justify-center",n),...a});l.displayName="Pagination";const u=c.forwardRef(({className:n,...a},e)=>t.jsx("ul",{ref:e,className:i.cn("flex flex-row items-center gap-1",n),...a}));u.displayName="PaginationContent";const g=c.forwardRef(({className:n,...a},e)=>t.jsx("li",{ref:e,className:i.cn("",n),...a}));g.displayName="PaginationItem";const o=({className:n,isActive:a,size:e="icon",...s})=>t.jsx("a",{"aria-current":a?"page":void 0,className:i.cn(f.buttonVariants({variant:a?"tertiary":"ghost",size:e}),"cursor-pointer",n),...s});o.displayName="PaginationLink";const p=({className:n,...a})=>{const{t:e}=r.useTranslation();return t.jsx(o,{"aria-label":e("Go to previous page"),size:"default",className:i.cn("gap-1 px-2.5",n),...a,children:t.jsx(j.ChevronLeft,{className:"h-4 w-4"})})};p.displayName="PaginationPrevious";const m=({className:n,...a})=>{const{t:e}=r.useTranslation();return t.jsx(o,{"aria-label":e("Go to next page"),size:"default",className:i.cn("gap-1 px-2.5",n),...a,children:t.jsx(N.ChevronRight,{className:"h-4 w-4"})})};m.displayName="PaginationNext";const P=({className:n,...a})=>{const{t:e}=r.useTranslation();return t.jsxs("span",{"aria-hidden":!0,className:i.cn("flex h-9 w-9 items-center justify-center",n),...a,children:[t.jsx(x.Ellipsis,{className:"h-4 w-4"}),t.jsx("span",{className:"sr-only",children:e("More pages")})]})};P.displayName="PaginationEllipsis";exports.Pagination=l;exports.PaginationContent=u;exports.PaginationEllipsis=P;exports.PaginationItem=g;exports.PaginationLink=o;exports.PaginationNext=m;exports.PaginationPrevious=p;
2
+ //# sourceMappingURL=pagination-CJiUbpUN.cjs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pagination-CJiUbpUN.cjs.js","sources":["../../src/ui/pagination/pagination.tsx"],"sourcesContent":["import { ChevronLeft, ChevronRight, MoreHorizontal } from 'lucide-react';\nimport * as React from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { cn } from '../../lib';\nimport { type ButtonProps, buttonVariants } from '../button';\n\n/**\n * Pagination - Navigation component for paginated content.\n * @returns {JSX.Element} The rendered Pagination component.\n * @param {object} props - The properties for the component.\n * @param {string} [props.className] - Additional classes for the pagination component.\n */\nconst Pagination = ({ className, ...props }: React.ComponentProps<'nav'>) => (\n <nav\n role=\"navigation\"\n aria-label=\"pagination\"\n className={cn('flex w-full justify-center', className)}\n {...props}\n />\n);\nPagination.displayName = 'Pagination';\n\n/**\n * PaginationContent - Wrapper list for pagination items.\n * @returns {JSX.Element} The rendered PaginationContent component.\n * @param {object} props - The properties for the component.\n * @param {string} [props.className] - Additional classes for the pagination content component.\n */\nconst PaginationContent = React.forwardRef<\n HTMLUListElement,\n React.ComponentProps<'ul'>\n>(({ className, ...props }, ref) => (\n <ul\n ref={ref}\n className={cn('flex flex-row items-center gap-1', className)}\n {...props}\n />\n));\nPaginationContent.displayName = 'PaginationContent';\n\n/**\n * PaginationItem - List item wrapper.\n * @returns {JSX.Element} The rendered PaginationItem component.\n * @param {object} props - The properties for the component.\n * @param {string} [props.className] - Additional classes for the pagination item component.\n */\nconst PaginationItem = React.forwardRef<\n HTMLLIElement,\n React.ComponentProps<'li'>\n>(({ className, ...props }, ref) => (\n <li ref={ref} className={cn('', className)} {...props} />\n));\nPaginationItem.displayName = 'PaginationItem';\n\n/**\n * Props for PaginationLink.\n * @property {boolean} [isActive] - Marks the current page.\n * @property {'lg'|'default'|'sm'|'xs'|'icon'} [size] - Button size forwarded to Button variants.\n */\ntype PaginationLinkProps = {\n isActive?: boolean;\n} & Pick<ButtonProps, 'size'> &\n React.ComponentProps<'a'>;\n\n/**\n * PaginationLink - A styled anchor used as a pagination control.\n * @returns {JSX.Element} The rendered PaginationLink component.\n * @param {object} props - The properties for the component.\n * @param {string} [props.className] - Additional classes for the pagination link component.\n * @param {boolean} [props.isActive] - Marks the current page.\n * @param {string} [props.size] - The size of the pagination link.\n */\nconst PaginationLink = ({\n className,\n isActive,\n size = 'icon',\n ...props\n}: PaginationLinkProps) => (\n <a\n aria-current={isActive ? 'page' : undefined}\n className={cn(\n buttonVariants({\n variant: isActive ? 'tertiary' : 'ghost',\n size,\n }),\n 'cursor-pointer',\n className\n )}\n {...props}\n />\n);\nPaginationLink.displayName = 'PaginationLink';\n\n/**\n * PaginationPrevious - Button to navigate to previous page.\n * @returns {JSX.Element} The rendered PaginationPrevious component.\n * @param {object} props - The properties for the component.\n * @param {string} [props.className] - Additional classes for the pagination previous component.\n */\nconst PaginationPrevious = ({\n className,\n ...props\n}: React.ComponentProps<typeof PaginationLink>) => {\n const { t } = useTranslation();\n return (\n <PaginationLink\n aria-label={t('Go to previous page')}\n size=\"default\"\n className={cn('gap-1 px-2.5', className)}\n {...props}\n >\n <ChevronLeft className=\"h-4 w-4\" />\n </PaginationLink>\n );\n};\nPaginationPrevious.displayName = 'PaginationPrevious';\n\n/**\n * PaginationNext - Button to navigate to next page.\n * @returns {JSX.Element} The rendered PaginationNext component.\n * @param {object} props - The properties for the component.\n * @param {string} [props.className] - Additional classes for the pagination next component.\n */\nconst PaginationNext = ({\n className,\n ...props\n}: React.ComponentProps<typeof PaginationLink>) => {\n const { t } = useTranslation();\n return (\n <PaginationLink\n aria-label={t('Go to next page')}\n size=\"default\"\n className={cn('gap-1 px-2.5', className)}\n {...props}\n >\n <ChevronRight className=\"h-4 w-4\" />\n </PaginationLink>\n );\n};\nPaginationNext.displayName = 'PaginationNext';\n\n/**\n * PaginationEllipsis - Non-interactive indicator for collapsed pages.\n * @returns {JSX.Element} The rendered PaginationEllipsis component.\n * @param {object} props - The properties for the component.\n * @param {string} [props.className] - Additional classes for the pagination ellipsis component.\n */\nconst PaginationEllipsis = ({\n className,\n ...props\n}: React.ComponentProps<'span'>) => {\n const { t } = useTranslation();\n return (\n <span\n aria-hidden\n className={cn('flex h-9 w-9 items-center justify-center', className)}\n {...props}\n >\n <MoreHorizontal className=\"h-4 w-4\" />\n <span className=\"sr-only\">{t('More pages')}</span>\n </span>\n );\n};\nPaginationEllipsis.displayName = 'PaginationEllipsis';\n\nexport {\n Pagination,\n PaginationContent,\n PaginationEllipsis,\n PaginationItem,\n PaginationLink,\n PaginationNext,\n PaginationPrevious,\n};\n"],"names":["Pagination","className","props","jsx","cn","PaginationContent","React","ref","PaginationItem","PaginationLink","isActive","size","buttonVariants","PaginationPrevious","t","useTranslation","ChevronLeft","PaginationNext","ChevronRight","PaginationEllipsis","jsxs","MoreHorizontal"],"mappings":"kmBAYMA,EAAa,CAAC,CAAE,UAAAC,EAAW,GAAGC,KAClCC,EAAAA,IAAC,MAAA,CACC,KAAK,aACL,aAAW,aACX,UAAWC,EAAAA,GAAG,6BAA8BH,CAAS,EACpD,GAAGC,CAAA,CACN,EAEFF,EAAW,YAAc,aAQzB,MAAMK,EAAoBC,EAAM,WAG9B,CAAC,CAAE,UAAAL,EAAW,GAAGC,CAAA,EAASK,IAC1BJ,EAAAA,IAAC,KAAA,CACC,IAAAI,EACA,UAAWH,EAAAA,GAAG,mCAAoCH,CAAS,EAC1D,GAAGC,CAAA,CACN,CACD,EACDG,EAAkB,YAAc,oBAQhC,MAAMG,EAAiBF,EAAM,WAG3B,CAAC,CAAE,UAAAL,EAAW,GAAGC,GAASK,UACzB,KAAA,CAAG,IAAAA,EAAU,UAAWH,EAAAA,GAAG,GAAIH,CAAS,EAAI,GAAGC,EAAO,CACxD,EACDM,EAAe,YAAc,iBAoB7B,MAAMC,EAAiB,CAAC,CACtB,UAAAR,EACA,SAAAS,EACA,KAAAC,EAAO,OACP,GAAGT,CACL,IACEC,EAAAA,IAAC,IAAA,CACC,eAAcO,EAAW,OAAS,OAClC,UAAWN,EAAAA,GACTQ,iBAAe,CACb,QAASF,EAAW,WAAa,QACjC,KAAAC,CAAA,CACD,EACD,iBACAV,CAAA,EAED,GAAGC,CAAA,CACN,EAEFO,EAAe,YAAc,iBAQ7B,MAAMI,EAAqB,CAAC,CAC1B,UAAAZ,EACA,GAAGC,CACL,IAAmD,CACjD,KAAM,CAAE,EAAAY,CAAA,EAAMC,iBAAA,EACd,OACEZ,EAAAA,IAACM,EAAA,CACC,aAAYK,EAAE,qBAAqB,EACnC,KAAK,UACL,UAAWV,EAAAA,GAAG,eAAgBH,CAAS,EACtC,GAAGC,EAEJ,SAAAC,EAAAA,IAACa,EAAAA,YAAA,CAAY,UAAU,SAAA,CAAU,CAAA,CAAA,CAGvC,EACAH,EAAmB,YAAc,qBAQjC,MAAMI,EAAiB,CAAC,CACtB,UAAAhB,EACA,GAAGC,CACL,IAAmD,CACjD,KAAM,CAAE,EAAAY,CAAA,EAAMC,iBAAA,EACd,OACEZ,EAAAA,IAACM,EAAA,CACC,aAAYK,EAAE,iBAAiB,EAC/B,KAAK,UACL,UAAWV,EAAAA,GAAG,eAAgBH,CAAS,EACtC,GAAGC,EAEJ,SAAAC,EAAAA,IAACe,EAAAA,aAAA,CAAa,UAAU,SAAA,CAAU,CAAA,CAAA,CAGxC,EACAD,EAAe,YAAc,iBAQ7B,MAAME,EAAqB,CAAC,CAC1B,UAAAlB,EACA,GAAGC,CACL,IAAoC,CAClC,KAAM,CAAE,EAAAY,CAAA,EAAMC,iBAAA,EACd,OACEK,EAAAA,KAAC,OAAA,CACC,cAAW,GACX,UAAWhB,EAAAA,GAAG,2CAA4CH,CAAS,EAClE,GAAGC,EAEJ,SAAA,CAAAC,EAAAA,IAACkB,EAAAA,SAAA,CAAe,UAAU,SAAA,CAAU,QACnC,OAAA,CAAK,UAAU,UAAW,SAAAP,EAAE,YAAY,CAAA,CAAE,CAAA,CAAA,CAAA,CAGjD,EACAK,EAAmB,YAAc"}
@@ -0,0 +1,113 @@
1
+ import { jsx as n, jsxs as m } from "react/jsx-runtime";
2
+ import * as r from "react";
3
+ import { useTranslation as e } from "react-i18next";
4
+ import { c as t } from "./index-D6dQK9i-.es.js";
5
+ import { b as c } from "./button-Bmtxy091.es.js";
6
+ import { E as p } from "./ellipsis-9FjKj8zv.es.js";
7
+ import { C as g } from "./chevron-right-BNG-Ugyb.es.js";
8
+ import { C as f } from "./chevron-left-CfOUdNQ0.es.js";
9
+ const N = ({ className: i, ...a }) => /* @__PURE__ */ n(
10
+ "nav",
11
+ {
12
+ role: "navigation",
13
+ "aria-label": "pagination",
14
+ className: t("flex w-full justify-center", i),
15
+ ...a
16
+ }
17
+ );
18
+ N.displayName = "Pagination";
19
+ const d = r.forwardRef(({ className: i, ...a }, s) => /* @__PURE__ */ n(
20
+ "ul",
21
+ {
22
+ ref: s,
23
+ className: t("flex flex-row items-center gap-1", i),
24
+ ...a
25
+ }
26
+ ));
27
+ d.displayName = "PaginationContent";
28
+ const u = r.forwardRef(({ className: i, ...a }, s) => /* @__PURE__ */ n("li", { ref: s, className: t("", i), ...a }));
29
+ u.displayName = "PaginationItem";
30
+ const o = ({
31
+ className: i,
32
+ isActive: a,
33
+ size: s = "icon",
34
+ ...l
35
+ }) => /* @__PURE__ */ n(
36
+ "a",
37
+ {
38
+ "aria-current": a ? "page" : void 0,
39
+ className: t(
40
+ c({
41
+ variant: a ? "tertiary" : "ghost",
42
+ size: s
43
+ }),
44
+ "cursor-pointer",
45
+ i
46
+ ),
47
+ ...l
48
+ }
49
+ );
50
+ o.displayName = "PaginationLink";
51
+ const P = ({
52
+ className: i,
53
+ ...a
54
+ }) => {
55
+ const { t: s } = e();
56
+ return /* @__PURE__ */ n(
57
+ o,
58
+ {
59
+ "aria-label": s("Go to previous page"),
60
+ size: "default",
61
+ className: t("gap-1 px-2.5", i),
62
+ ...a,
63
+ children: /* @__PURE__ */ n(f, { className: "h-4 w-4" })
64
+ }
65
+ );
66
+ };
67
+ P.displayName = "PaginationPrevious";
68
+ const h = ({
69
+ className: i,
70
+ ...a
71
+ }) => {
72
+ const { t: s } = e();
73
+ return /* @__PURE__ */ n(
74
+ o,
75
+ {
76
+ "aria-label": s("Go to next page"),
77
+ size: "default",
78
+ className: t("gap-1 px-2.5", i),
79
+ ...a,
80
+ children: /* @__PURE__ */ n(g, { className: "h-4 w-4" })
81
+ }
82
+ );
83
+ };
84
+ h.displayName = "PaginationNext";
85
+ const x = ({
86
+ className: i,
87
+ ...a
88
+ }) => {
89
+ const { t: s } = e();
90
+ return /* @__PURE__ */ m(
91
+ "span",
92
+ {
93
+ "aria-hidden": !0,
94
+ className: t("flex h-9 w-9 items-center justify-center", i),
95
+ ...a,
96
+ children: [
97
+ /* @__PURE__ */ n(p, { className: "h-4 w-4" }),
98
+ /* @__PURE__ */ n("span", { className: "sr-only", children: s("More pages") })
99
+ ]
100
+ }
101
+ );
102
+ };
103
+ x.displayName = "PaginationEllipsis";
104
+ export {
105
+ N as P,
106
+ d as a,
107
+ x as b,
108
+ u as c,
109
+ o as d,
110
+ h as e,
111
+ P as f
112
+ };
113
+ //# sourceMappingURL=pagination-aJ9Z0Ux9.es.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pagination-aJ9Z0Ux9.es.js","sources":["../../src/ui/pagination/pagination.tsx"],"sourcesContent":["import { ChevronLeft, ChevronRight, MoreHorizontal } from 'lucide-react';\nimport * as React from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { cn } from '../../lib';\nimport { type ButtonProps, buttonVariants } from '../button';\n\n/**\n * Pagination - Navigation component for paginated content.\n * @returns {JSX.Element} The rendered Pagination component.\n * @param {object} props - The properties for the component.\n * @param {string} [props.className] - Additional classes for the pagination component.\n */\nconst Pagination = ({ className, ...props }: React.ComponentProps<'nav'>) => (\n <nav\n role=\"navigation\"\n aria-label=\"pagination\"\n className={cn('flex w-full justify-center', className)}\n {...props}\n />\n);\nPagination.displayName = 'Pagination';\n\n/**\n * PaginationContent - Wrapper list for pagination items.\n * @returns {JSX.Element} The rendered PaginationContent component.\n * @param {object} props - The properties for the component.\n * @param {string} [props.className] - Additional classes for the pagination content component.\n */\nconst PaginationContent = React.forwardRef<\n HTMLUListElement,\n React.ComponentProps<'ul'>\n>(({ className, ...props }, ref) => (\n <ul\n ref={ref}\n className={cn('flex flex-row items-center gap-1', className)}\n {...props}\n />\n));\nPaginationContent.displayName = 'PaginationContent';\n\n/**\n * PaginationItem - List item wrapper.\n * @returns {JSX.Element} The rendered PaginationItem component.\n * @param {object} props - The properties for the component.\n * @param {string} [props.className] - Additional classes for the pagination item component.\n */\nconst PaginationItem = React.forwardRef<\n HTMLLIElement,\n React.ComponentProps<'li'>\n>(({ className, ...props }, ref) => (\n <li ref={ref} className={cn('', className)} {...props} />\n));\nPaginationItem.displayName = 'PaginationItem';\n\n/**\n * Props for PaginationLink.\n * @property {boolean} [isActive] - Marks the current page.\n * @property {'lg'|'default'|'sm'|'xs'|'icon'} [size] - Button size forwarded to Button variants.\n */\ntype PaginationLinkProps = {\n isActive?: boolean;\n} & Pick<ButtonProps, 'size'> &\n React.ComponentProps<'a'>;\n\n/**\n * PaginationLink - A styled anchor used as a pagination control.\n * @returns {JSX.Element} The rendered PaginationLink component.\n * @param {object} props - The properties for the component.\n * @param {string} [props.className] - Additional classes for the pagination link component.\n * @param {boolean} [props.isActive] - Marks the current page.\n * @param {string} [props.size] - The size of the pagination link.\n */\nconst PaginationLink = ({\n className,\n isActive,\n size = 'icon',\n ...props\n}: PaginationLinkProps) => (\n <a\n aria-current={isActive ? 'page' : undefined}\n className={cn(\n buttonVariants({\n variant: isActive ? 'tertiary' : 'ghost',\n size,\n }),\n 'cursor-pointer',\n className\n )}\n {...props}\n />\n);\nPaginationLink.displayName = 'PaginationLink';\n\n/**\n * PaginationPrevious - Button to navigate to previous page.\n * @returns {JSX.Element} The rendered PaginationPrevious component.\n * @param {object} props - The properties for the component.\n * @param {string} [props.className] - Additional classes for the pagination previous component.\n */\nconst PaginationPrevious = ({\n className,\n ...props\n}: React.ComponentProps<typeof PaginationLink>) => {\n const { t } = useTranslation();\n return (\n <PaginationLink\n aria-label={t('Go to previous page')}\n size=\"default\"\n className={cn('gap-1 px-2.5', className)}\n {...props}\n >\n <ChevronLeft className=\"h-4 w-4\" />\n </PaginationLink>\n );\n};\nPaginationPrevious.displayName = 'PaginationPrevious';\n\n/**\n * PaginationNext - Button to navigate to next page.\n * @returns {JSX.Element} The rendered PaginationNext component.\n * @param {object} props - The properties for the component.\n * @param {string} [props.className] - Additional classes for the pagination next component.\n */\nconst PaginationNext = ({\n className,\n ...props\n}: React.ComponentProps<typeof PaginationLink>) => {\n const { t } = useTranslation();\n return (\n <PaginationLink\n aria-label={t('Go to next page')}\n size=\"default\"\n className={cn('gap-1 px-2.5', className)}\n {...props}\n >\n <ChevronRight className=\"h-4 w-4\" />\n </PaginationLink>\n );\n};\nPaginationNext.displayName = 'PaginationNext';\n\n/**\n * PaginationEllipsis - Non-interactive indicator for collapsed pages.\n * @returns {JSX.Element} The rendered PaginationEllipsis component.\n * @param {object} props - The properties for the component.\n * @param {string} [props.className] - Additional classes for the pagination ellipsis component.\n */\nconst PaginationEllipsis = ({\n className,\n ...props\n}: React.ComponentProps<'span'>) => {\n const { t } = useTranslation();\n return (\n <span\n aria-hidden\n className={cn('flex h-9 w-9 items-center justify-center', className)}\n {...props}\n >\n <MoreHorizontal className=\"h-4 w-4\" />\n <span className=\"sr-only\">{t('More pages')}</span>\n </span>\n );\n};\nPaginationEllipsis.displayName = 'PaginationEllipsis';\n\nexport {\n Pagination,\n PaginationContent,\n PaginationEllipsis,\n PaginationItem,\n PaginationLink,\n PaginationNext,\n PaginationPrevious,\n};\n"],"names":["Pagination","className","props","jsx","cn","PaginationContent","React","ref","PaginationItem","PaginationLink","isActive","size","buttonVariants","PaginationPrevious","t","useTranslation","ChevronLeft","PaginationNext","ChevronRight","PaginationEllipsis","jsxs","MoreHorizontal"],"mappings":";;;;;;;;AAYA,MAAMA,IAAa,CAAC,EAAE,WAAAC,GAAW,GAAGC,QAClC,gBAAAC;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,MAAK;AAAA,IACL,cAAW;AAAA,IACX,WAAWC,EAAG,8BAA8BH,CAAS;AAAA,IACpD,GAAGC;AAAA,EAAA;AACN;AAEFF,EAAW,cAAc;AAQzB,MAAMK,IAAoBC,EAAM,WAG9B,CAAC,EAAE,WAAAL,GAAW,GAAGC,EAAA,GAASK,MAC1B,gBAAAJ;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,KAAAI;AAAA,IACA,WAAWH,EAAG,oCAAoCH,CAAS;AAAA,IAC1D,GAAGC;AAAA,EAAA;AACN,CACD;AACDG,EAAkB,cAAc;AAQhC,MAAMG,IAAiBF,EAAM,WAG3B,CAAC,EAAE,WAAAL,GAAW,GAAGC,KAASK,wBACzB,MAAA,EAAG,KAAAA,GAAU,WAAWH,EAAG,IAAIH,CAAS,GAAI,GAAGC,GAAO,CACxD;AACDM,EAAe,cAAc;AAoB7B,MAAMC,IAAiB,CAAC;AAAA,EACtB,WAAAR;AAAA,EACA,UAAAS;AAAA,EACA,MAAAC,IAAO;AAAA,EACP,GAAGT;AACL,MACE,gBAAAC;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,gBAAcO,IAAW,SAAS;AAAA,IAClC,WAAWN;AAAA,MACTQ,EAAe;AAAA,QACb,SAASF,IAAW,aAAa;AAAA,QACjC,MAAAC;AAAA,MAAA,CACD;AAAA,MACD;AAAA,MACAV;AAAA,IAAA;AAAA,IAED,GAAGC;AAAA,EAAA;AACN;AAEFO,EAAe,cAAc;AAQ7B,MAAMI,IAAqB,CAAC;AAAA,EAC1B,WAAAZ;AAAA,EACA,GAAGC;AACL,MAAmD;AACjD,QAAM,EAAE,GAAAY,EAAA,IAAMC,EAAA;AACd,SACE,gBAAAZ;AAAA,IAACM;AAAA,IAAA;AAAA,MACC,cAAYK,EAAE,qBAAqB;AAAA,MACnC,MAAK;AAAA,MACL,WAAWV,EAAG,gBAAgBH,CAAS;AAAA,MACtC,GAAGC;AAAA,MAEJ,UAAA,gBAAAC,EAACa,GAAA,EAAY,WAAU,UAAA,CAAU;AAAA,IAAA;AAAA,EAAA;AAGvC;AACAH,EAAmB,cAAc;AAQjC,MAAMI,IAAiB,CAAC;AAAA,EACtB,WAAAhB;AAAA,EACA,GAAGC;AACL,MAAmD;AACjD,QAAM,EAAE,GAAAY,EAAA,IAAMC,EAAA;AACd,SACE,gBAAAZ;AAAA,IAACM;AAAA,IAAA;AAAA,MACC,cAAYK,EAAE,iBAAiB;AAAA,MAC/B,MAAK;AAAA,MACL,WAAWV,EAAG,gBAAgBH,CAAS;AAAA,MACtC,GAAGC;AAAA,MAEJ,UAAA,gBAAAC,EAACe,GAAA,EAAa,WAAU,UAAA,CAAU;AAAA,IAAA;AAAA,EAAA;AAGxC;AACAD,EAAe,cAAc;AAQ7B,MAAME,IAAqB,CAAC;AAAA,EAC1B,WAAAlB;AAAA,EACA,GAAGC;AACL,MAAoC;AAClC,QAAM,EAAE,GAAAY,EAAA,IAAMC,EAAA;AACd,SACE,gBAAAK;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,eAAW;AAAA,MACX,WAAWhB,EAAG,4CAA4CH,CAAS;AAAA,MAClE,GAAGC;AAAA,MAEJ,UAAA;AAAA,QAAA,gBAAAC,EAACkB,GAAA,EAAe,WAAU,UAAA,CAAU;AAAA,0BACnC,QAAA,EAAK,WAAU,WAAW,UAAAP,EAAE,YAAY,EAAA,CAAE;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAGjD;AACAK,EAAmB,cAAc;"}
@@ -0,0 +1,2 @@
1
+ "use strict";const e=require("react/jsx-runtime"),s=require("./index-CtCzh8NB.cjs.js");require("react");const l=require("react-i18next"),o=require("./index-BWS4jvS6.cjs.js"),d=require("./x-Ev63aQi_.cjs.js");function c({...t}){return e.jsx(s.Root,{"data-slot":"sheet",...t})}function u({...t}){return e.jsx(s.Trigger,{"data-slot":"sheet-trigger",...t})}function h({...t}){return e.jsx(s.Close,{"data-slot":"sheet-close",...t})}function f({...t}){return e.jsx(s.Portal,{"data-slot":"sheet-portal",...t})}function x({className:t,...a}){return e.jsx(s.Overlay,{"data-slot":"sheet-overlay",className:o.cn("data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/80",t),...a})}function m({className:t,children:a,side:n="right",...r}){const{t:i}=l.useTranslation();return e.jsxs(f,{children:[e.jsx(x,{}),e.jsxs(s.Content,{"data-slot":"sheet-content",className:o.cn("data-[state=open]:animate-in data-[state=closed]:animate-out fixed z-50 flex flex-col gap-4 shadow-lg transition ease-in-out data-[state=closed]:duration-300 data-[state=open]:duration-500",n==="right"&&"data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right inset-y-0 right-0 h-full w-3/4 border-l sm:max-w-sm",n==="left"&&"data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left inset-y-0 left-0 h-full w-3/4 border-r sm:max-w-sm",n==="top"&&"data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top inset-x-0 top-0 h-auto border-b",n==="bottom"&&"data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom inset-x-0 bottom-0 h-auto border-t",t),...r,children:[a,e.jsxs(s.Close,{className:"absolute top-4 right-4 rounded-xs opacity-70 ring-offset-white transition-opacity hover:opacity-100 focus:ring-2 focus:ring-neutral-950 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none data-[state=open]:bg-neutral-100 dark:ring-offset-neutral-950 dark:focus:ring-neutral-300 dark:data-[state=open]:bg-neutral-800",children:[e.jsx(d.X,{className:"size-4"}),e.jsx("span",{className:"sr-only",children:i("Close")})]})]})]})}function p({className:t,...a}){return e.jsx("div",{"data-slot":"sheet-header",className:o.cn("flex flex-col gap-1.5 p-4",t),...a})}function g({className:t,...a}){return e.jsx("div",{"data-slot":"sheet-footer",className:o.cn("mt-auto flex flex-col gap-2 p-4",t),...a})}function S({className:t,...a}){return e.jsx(s.Title,{"data-slot":"sheet-title",className:o.cn("font-semibold text-neutral-950 dark:text-neutral-50",t),...a})}function b({className:t,...a}){return e.jsx(s.Description,{"data-slot":"sheet-description",className:o.cn("text-sm text-neutral-500 dark:text-neutral-400",t),...a})}exports.Sheet=c;exports.SheetClose=h;exports.SheetContent=m;exports.SheetDescription=b;exports.SheetFooter=g;exports.SheetHeader=p;exports.SheetTitle=S;exports.SheetTrigger=u;
2
+ //# sourceMappingURL=sheet-BXSDa9XT.cjs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sheet-BXSDa9XT.cjs.js","sources":["../../src/ui/sheet/sheet.tsx"],"sourcesContent":["'use client';\n\nimport * as SheetPrimitive from '@radix-ui/react-dialog';\nimport { XIcon } from 'lucide-react';\nimport * as React from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { cn } from '../../lib';\n\n/**\n * Sheet - Drawer-style dialog built on Radix Dialog primitives.\n *\n * @param {React.ComponentProps<typeof SheetPrimitive.Root>} props - Props for the component.\n */\nfunction Sheet({ ...props }: React.ComponentProps<typeof SheetPrimitive.Root>) {\n return <SheetPrimitive.Root data-slot=\"sheet\" {...props} />;\n}\n\n/**\n * SheetTrigger - Element that opens the Sheet when interacted with.\n *\n * @param {React.ComponentProps<typeof SheetPrimitive.Trigger>} props - Props for the component.\n */\nfunction SheetTrigger({\n ...props\n}: React.ComponentProps<typeof SheetPrimitive.Trigger>) {\n return <SheetPrimitive.Trigger data-slot=\"sheet-trigger\" {...props} />;\n}\n\n/**\n * SheetClose - Element that closes the Sheet.\n *\n * @param {React.ComponentProps<typeof SheetPrimitive.Close>} props - Props for the component.\n */\nfunction SheetClose({\n ...props\n}: React.ComponentProps<typeof SheetPrimitive.Close>) {\n return <SheetPrimitive.Close data-slot=\"sheet-close\" {...props} />;\n}\n\n/**\n * SheetPortal - Renders sheet content in a React Portal.\n *\n * @param {React.ComponentProps<typeof SheetPrimitive.Portal>} props - Props for the component.\n */\nfunction SheetPortal({\n ...props\n}: React.ComponentProps<typeof SheetPrimitive.Portal>) {\n return <SheetPrimitive.Portal data-slot=\"sheet-portal\" {...props} />;\n}\n\n/**\n * SheetOverlay - Full-screen overlay behind the Sheet content.\n *\n * @param {object} props - The properties for the component.\n * @param {string} [props.className] - Additional classes for the sheet overlay.\n */\nfunction SheetOverlay({\n className,\n ...props\n}: React.ComponentProps<typeof SheetPrimitive.Overlay>) {\n return (\n <SheetPrimitive.Overlay\n data-slot=\"sheet-overlay\"\n className={cn(\n 'data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/80',\n className\n )}\n {...props}\n />\n );\n}\n\n/**\n * SheetContent - The sliding panel content. Configurable side.\n *\n * @param {object} props - The properties for the component.\n * @param {string} [props.className] - Additional classes for the sheet content.\n * @param {React.ReactNode} [props.children] - The content to be rendered inside the sheet.\n * @param {'top' | 'right' | 'bottom' | 'left'} [props.side='right'] - The side of the screen where the sheet will appear.\n */\nfunction SheetContent({\n className,\n children,\n side = 'right',\n ...props\n}: React.ComponentProps<typeof SheetPrimitive.Content> & {\n side?: 'top' | 'right' | 'bottom' | 'left';\n}) {\n const { t } = useTranslation();\n return (\n <SheetPortal>\n <SheetOverlay />\n <SheetPrimitive.Content\n data-slot=\"sheet-content\"\n className={cn(\n 'data-[state=open]:animate-in data-[state=closed]:animate-out fixed z-50 flex flex-col gap-4 shadow-lg transition ease-in-out data-[state=closed]:duration-300 data-[state=open]:duration-500',\n side === 'right' &&\n 'data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right inset-y-0 right-0 h-full w-3/4 border-l sm:max-w-sm',\n side === 'left' &&\n 'data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left inset-y-0 left-0 h-full w-3/4 border-r sm:max-w-sm',\n side === 'top' &&\n 'data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top inset-x-0 top-0 h-auto border-b',\n side === 'bottom' &&\n 'data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom inset-x-0 bottom-0 h-auto border-t',\n className\n )}\n {...props}\n >\n {children}\n <SheetPrimitive.Close className=\"absolute top-4 right-4 rounded-xs opacity-70 ring-offset-white transition-opacity hover:opacity-100 focus:ring-2 focus:ring-neutral-950 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none data-[state=open]:bg-neutral-100 dark:ring-offset-neutral-950 dark:focus:ring-neutral-300 dark:data-[state=open]:bg-neutral-800\">\n <XIcon className=\"size-4\" />\n <span className=\"sr-only\">{t('Close')}</span>\n </SheetPrimitive.Close>\n </SheetPrimitive.Content>\n </SheetPortal>\n );\n}\n\n/**\n * SheetHeader - Header area inside the Sheet.\n *\n * @param {object} props - The properties for the component.\n * @param {string} [props.className] - Additional classes for the sheet header.\n */\nfunction SheetHeader({ className, ...props }: React.ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"sheet-header\"\n className={cn('flex flex-col gap-1.5 p-4', className)}\n {...props}\n />\n );\n}\n\n/**\n * SheetFooter - Footer area inside the Sheet.\n *\n * @param {object} props - The properties for the component.\n * @param {string} [props.className] - Additional classes for the sheet footer.\n */\nfunction SheetFooter({ className, ...props }: React.ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"sheet-footer\"\n className={cn('mt-auto flex flex-col gap-2 p-4', className)}\n {...props}\n />\n );\n}\n\n/**\n * SheetTitle - Accessible title for the Sheet.\n *\n * @param {object} props - The properties for the component.\n * @param {string} [props.className] - Additional classes for the sheet title.\n */\nfunction SheetTitle({\n className,\n ...props\n}: React.ComponentProps<typeof SheetPrimitive.Title>) {\n return (\n <SheetPrimitive.Title\n data-slot=\"sheet-title\"\n className={cn(\n 'font-semibold text-neutral-950 dark:text-neutral-50',\n className\n )}\n {...props}\n />\n );\n}\n\n/**\n * SheetDescription - Additional descriptive text for the Sheet.\n *\n * @param {object} props - The properties for the component.\n * @param {string} [props.className] - Additional classes for the sheet description.\n */\nfunction SheetDescription({\n className,\n ...props\n}: React.ComponentProps<typeof SheetPrimitive.Description>) {\n return (\n <SheetPrimitive.Description\n data-slot=\"sheet-description\"\n className={cn(\n 'text-sm text-neutral-500 dark:text-neutral-400',\n className\n )}\n {...props}\n />\n );\n}\n\nexport {\n Sheet,\n SheetClose,\n SheetContent,\n SheetDescription,\n SheetFooter,\n SheetHeader,\n SheetTitle,\n SheetTrigger,\n};\n"],"names":["Sheet","props","SheetPrimitive.Root","SheetTrigger","SheetPrimitive.Trigger","SheetClose","SheetPrimitive.Close","SheetPortal","SheetPrimitive.Portal","SheetOverlay","className","jsx","SheetPrimitive.Overlay","cn","SheetContent","children","side","t","useTranslation","jsxs","SheetPrimitive.Content","XIcon","SheetHeader","SheetFooter","SheetTitle","SheetPrimitive.Title","SheetDescription","SheetPrimitive.Description"],"mappings":"+MAaA,SAASA,EAAM,CAAE,GAAGC,GAA2D,CAC7E,aAAQC,EAAAA,KAAA,CAAoB,YAAU,QAAS,GAAGD,EAAO,CAC3D,CAOA,SAASE,EAAa,CACpB,GAAGF,CACL,EAAwD,CACtD,aAAQG,EAAAA,QAAA,CAAuB,YAAU,gBAAiB,GAAGH,EAAO,CACtE,CAOA,SAASI,EAAW,CAClB,GAAGJ,CACL,EAAsD,CACpD,aAAQK,EAAAA,MAAA,CAAqB,YAAU,cAAe,GAAGL,EAAO,CAClE,CAOA,SAASM,EAAY,CACnB,GAAGN,CACL,EAAuD,CACrD,aAAQO,EAAAA,OAAA,CAAsB,YAAU,eAAgB,GAAGP,EAAO,CACpE,CAQA,SAASQ,EAAa,CACpB,UAAAC,EACA,GAAGT,CACL,EAAwD,CACtD,OACEU,EAAAA,IAACC,EAAAA,QAAA,CACC,YAAU,gBACV,UAAWC,EAAAA,GACT,yJACAH,CAAA,EAED,GAAGT,CAAA,CAAA,CAGV,CAUA,SAASa,EAAa,CACpB,UAAAJ,EACA,SAAAK,EACA,KAAAC,EAAO,QACP,GAAGf,CACL,EAEG,CACD,KAAM,CAAE,EAAAgB,CAAA,EAAMC,iBAAA,EACd,cACGX,EAAA,CACC,SAAA,CAAAI,EAAAA,IAACF,EAAA,EAAa,EACdU,EAAAA,KAACC,EAAAA,QAAA,CACC,YAAU,gBACV,UAAWP,EAAAA,GACT,+LACAG,IAAS,SACP,mIACFA,IAAS,QACP,gIACFA,IAAS,OACP,2GACFA,IAAS,UACP,oHACFN,CAAA,EAED,GAAGT,EAEH,SAAA,CAAAc,EACDI,EAAAA,KAACb,EAAAA,MAAA,CAAqB,UAAU,gVAC9B,SAAA,CAAAK,EAAAA,IAACU,EAAAA,EAAA,CAAM,UAAU,QAAA,CAAS,QACzB,OAAA,CAAK,UAAU,UAAW,SAAAJ,EAAE,OAAO,CAAA,CAAE,CAAA,CAAA,CACxC,CAAA,CAAA,CAAA,CACF,EACF,CAEJ,CAQA,SAASK,EAAY,CAAE,UAAAZ,EAAW,GAAGT,GAAsC,CACzE,OACEU,EAAAA,IAAC,MAAA,CACC,YAAU,eACV,UAAWE,EAAAA,GAAG,4BAA6BH,CAAS,EACnD,GAAGT,CAAA,CAAA,CAGV,CAQA,SAASsB,EAAY,CAAE,UAAAb,EAAW,GAAGT,GAAsC,CACzE,OACEU,EAAAA,IAAC,MAAA,CACC,YAAU,eACV,UAAWE,EAAAA,GAAG,kCAAmCH,CAAS,EACzD,GAAGT,CAAA,CAAA,CAGV,CAQA,SAASuB,EAAW,CAClB,UAAAd,EACA,GAAGT,CACL,EAAsD,CACpD,OACEU,EAAAA,IAACc,EAAAA,MAAA,CACC,YAAU,cACV,UAAWZ,EAAAA,GACT,sDACAH,CAAA,EAED,GAAGT,CAAA,CAAA,CAGV,CAQA,SAASyB,EAAiB,CACxB,UAAAhB,EACA,GAAGT,CACL,EAA4D,CAC1D,OACEU,EAAAA,IAACgB,EAAAA,YAAA,CACC,YAAU,oBACV,UAAWd,EAAAA,GACT,iDACAH,CAAA,EAED,GAAGT,CAAA,CAAA,CAGV"}
@@ -1,32 +1,33 @@
1
1
  import { jsx as e, jsxs as n } from "react/jsx-runtime";
2
- import { R as i, C as r, a as d, D as u, b as c, T as f, P as h, O as m } from "./index-xl-szYFX.es.js";
2
+ import { R as d, C as r, a as u, D as c, b as f, T as m, P as h, O as p } from "./index-xl-szYFX.es.js";
3
3
  import "react";
4
+ import { useTranslation as g } from "react-i18next";
4
5
  import { c as o } from "./index-D6dQK9i-.es.js";
5
- import { X as p } from "./x-8d8XBbXN.es.js";
6
- function k({ ...t }) {
7
- return /* @__PURE__ */ e(i, { "data-slot": "sheet", ...t });
6
+ import { X as x } from "./x-8d8XBbXN.es.js";
7
+ function T({ ...t }) {
8
+ return /* @__PURE__ */ e(d, { "data-slot": "sheet", ...t });
8
9
  }
9
- function w({
10
+ function z({
10
11
  ...t
11
12
  }) {
12
- return /* @__PURE__ */ e(f, { "data-slot": "sheet-trigger", ...t });
13
+ return /* @__PURE__ */ e(m, { "data-slot": "sheet-trigger", ...t });
13
14
  }
14
- function C({
15
+ function D({
15
16
  ...t
16
17
  }) {
17
18
  return /* @__PURE__ */ e(r, { "data-slot": "sheet-close", ...t });
18
19
  }
19
- function g({
20
+ function b({
20
21
  ...t
21
22
  }) {
22
23
  return /* @__PURE__ */ e(h, { "data-slot": "sheet-portal", ...t });
23
24
  }
24
- function x({
25
+ function S({
25
26
  className: t,
26
27
  ...a
27
28
  }) {
28
29
  return /* @__PURE__ */ e(
29
- m,
30
+ p,
30
31
  {
31
32
  "data-slot": "sheet-overlay",
32
33
  className: o(
@@ -37,16 +38,17 @@ function x({
37
38
  }
38
39
  );
39
40
  }
40
- function T({
41
+ function O({
41
42
  className: t,
42
43
  children: a,
43
44
  side: s = "right",
44
- ...l
45
+ ...i
45
46
  }) {
46
- return /* @__PURE__ */ n(g, { children: [
47
- /* @__PURE__ */ e(x, {}),
47
+ const { t: l } = g();
48
+ return /* @__PURE__ */ n(b, { children: [
49
+ /* @__PURE__ */ e(S, {}),
48
50
  /* @__PURE__ */ n(
49
- d,
51
+ u,
50
52
  {
51
53
  "data-slot": "sheet-content",
52
54
  className: o(
@@ -57,19 +59,19 @@ function T({
57
59
  s === "bottom" && "data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom inset-x-0 bottom-0 h-auto border-t",
58
60
  t
59
61
  ),
60
- ...l,
62
+ ...i,
61
63
  children: [
62
64
  a,
63
65
  /* @__PURE__ */ n(r, { className: "absolute top-4 right-4 rounded-xs opacity-70 ring-offset-white transition-opacity hover:opacity-100 focus:ring-2 focus:ring-neutral-950 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none data-[state=open]:bg-neutral-100 dark:ring-offset-neutral-950 dark:focus:ring-neutral-300 dark:data-[state=open]:bg-neutral-800", children: [
64
- /* @__PURE__ */ e(p, { className: "size-4" }),
65
- /* @__PURE__ */ e("span", { className: "sr-only", children: "Close" })
66
+ /* @__PURE__ */ e(x, { className: "size-4" }),
67
+ /* @__PURE__ */ e("span", { className: "sr-only", children: l("Close") })
66
68
  ] })
67
69
  ]
68
70
  }
69
71
  )
70
72
  ] });
71
73
  }
72
- function z({ className: t, ...a }) {
74
+ function P({ className: t, ...a }) {
73
75
  return /* @__PURE__ */ e(
74
76
  "div",
75
77
  {
@@ -79,7 +81,7 @@ function z({ className: t, ...a }) {
79
81
  }
80
82
  );
81
83
  }
82
- function D({ className: t, ...a }) {
84
+ function j({ className: t, ...a }) {
83
85
  return /* @__PURE__ */ e(
84
86
  "div",
85
87
  {
@@ -89,12 +91,12 @@ function D({ className: t, ...a }) {
89
91
  }
90
92
  );
91
93
  }
92
- function O({
94
+ function R({
93
95
  className: t,
94
96
  ...a
95
97
  }) {
96
98
  return /* @__PURE__ */ e(
97
- c,
99
+ f,
98
100
  {
99
101
  "data-slot": "sheet-title",
100
102
  className: o(
@@ -105,12 +107,12 @@ function O({
105
107
  }
106
108
  );
107
109
  }
108
- function P({
110
+ function F({
109
111
  className: t,
110
112
  ...a
111
113
  }) {
112
114
  return /* @__PURE__ */ e(
113
- u,
115
+ c,
114
116
  {
115
117
  "data-slot": "sheet-description",
116
118
  className: o(
@@ -122,13 +124,13 @@ function P({
122
124
  );
123
125
  }
124
126
  export {
125
- k as S,
126
- C as a,
127
- T as b,
128
- P as c,
129
- D as d,
130
- z as e,
131
- O as f,
132
- w as g
127
+ T as S,
128
+ D as a,
129
+ O as b,
130
+ F as c,
131
+ j as d,
132
+ P as e,
133
+ R as f,
134
+ z as g
133
135
  };
134
- //# sourceMappingURL=sheet-to_YuZ1x.es.js.map
136
+ //# sourceMappingURL=sheet-hwgCcvpv.es.js.map