fina-react-ds 1.0.40 → 1.0.43

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 (67) hide show
  1. package/dist/components/alert-dialog.js +1 -166
  2. package/dist/components/alert.js +1 -73
  3. package/dist/components/avatar.js +1 -58
  4. package/dist/components/badge.js +1 -44
  5. package/dist/components/button.js +1 -153
  6. package/dist/components/calendar.js +1 -205
  7. package/dist/components/card.js +1 -99
  8. package/dist/components/checkbox.js +1 -34
  9. package/dist/components/data-loader.js +1 -24
  10. package/dist/components/date-picker.js +1 -64
  11. package/dist/components/dialog.js +1 -145
  12. package/dist/components/dropdown-menu.js +1 -248
  13. package/dist/components/file-uploader.js +1 -108
  14. package/dist/components/form-color-picker.js +1 -29
  15. package/dist/components/form-date.js +1 -30
  16. package/dist/components/form-file-uploader.js +1 -32
  17. package/dist/components/form-image-uploader.js +1 -40
  18. package/dist/components/form-input.js +1 -35
  19. package/dist/components/form-select.js +1 -51
  20. package/dist/components/form-switch.js +1 -35
  21. package/dist/components/form-textarea.js +1 -35
  22. package/dist/components/form.js +1 -110
  23. package/dist/components/hover-card.js +1 -43
  24. package/dist/components/image-uploader.js +1 -130
  25. package/dist/components/index.js +1 -200
  26. package/dist/components/input.js +1 -26
  27. package/dist/components/label.js +1 -32
  28. package/dist/components/mode-toggle.js +1 -26
  29. package/dist/components/pagination.js +1 -128
  30. package/dist/components/password-rules-checker.js +1 -44
  31. package/dist/components/popover.js +1 -50
  32. package/dist/components/select.js +1 -53
  33. package/dist/components/separator.js +1 -29
  34. package/dist/components/sheet.js +1 -160
  35. package/dist/components/sidebar.js +1 -624
  36. package/dist/components/simple-pagination.js +1 -34
  37. package/dist/components/simple-tooltip.js +1 -17
  38. package/dist/components/skeleton.js +1 -18
  39. package/dist/components/sonner.js +1 -24
  40. package/dist/components/switch.js +1 -34
  41. package/dist/components/table.js +1 -124
  42. package/dist/components/tabs.js +1 -73
  43. package/dist/components/textarea.js +1 -23
  44. package/dist/components/tooltip.js +1 -61
  45. package/dist/hooks/index.js +1 -4
  46. package/dist/hooks/use-mobile.js +1 -17
  47. package/dist/lib/arrays.js +1 -7
  48. package/dist/lib/dates.js +1 -21
  49. package/dist/lib/http.js +1 -56
  50. package/dist/lib/index.js +1 -27
  51. package/dist/lib/strings.js +1 -6
  52. package/dist/lib/utils.js +2 -31
  53. package/dist/lib/yup.js +1 -88
  54. package/dist/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/locale/_lib/buildFormatLongFn.js +1 -12
  55. package/dist/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/locale/_lib/buildLocalizeFn.js +1 -21
  56. package/dist/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/locale/_lib/buildMatchFn.js +1 -36
  57. package/dist/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/locale/_lib/buildMatchPatternFn.js +1 -18
  58. package/dist/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/locale/fr/_lib/formatDistance.js +1 -72
  59. package/dist/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/locale/fr/_lib/formatLong.js +1 -33
  60. package/dist/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/locale/fr/_lib/formatRelative.js +1 -13
  61. package/dist/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/locale/fr/_lib/localize.js +1 -123
  62. package/dist/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/locale/fr/_lib/match.js +1 -112
  63. package/dist/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/locale/fr.js +1 -21
  64. package/dist/providers/loader-provider.js +1 -34
  65. package/dist/providers/theme-provider.js +1 -45
  66. package/package.json +15 -9
  67. package/dist/index.js +0 -225
@@ -1,34 +1 @@
1
- var N = Object.defineProperty;
2
- var t = (s, n) => N(s, "name", { value: n, configurable: !0 });
3
- import { jsx as i, jsxs as a } from "react/jsx-runtime";
4
- import { Pagination as j, PaginationContent as A, PaginationItem as l, PaginationPrevious as E, PaginationEllipsis as v, PaginationLink as d, PaginationNext as I } from "./pagination.js";
5
- function q({
6
- lastPage: s,
7
- currentPage: n,
8
- onPaginate: h,
9
- neightborsPages: k = 3
10
- }) {
11
- const r = /* @__PURE__ */ t(() => {
12
- h(n === 1 ? 1 : n - 1);
13
- }, "previous"), C = /* @__PURE__ */ t(() => {
14
- h(n === s ? n : n + 1);
15
- }, "next"), m = [], x = [];
16
- let p = n, f = n;
17
- for (let o = 1; o <= k; o++) {
18
- const c = n - o, e = n + o;
19
- c >= 1 && (m.push(c), f = c), e <= s && (x.push(e), p = e);
20
- }
21
- return /* @__PURE__ */ i(j, { children: /* @__PURE__ */ a(A, { children: [
22
- n > 1 && /* @__PURE__ */ i(l, { children: /* @__PURE__ */ i(E, { onClick: r }) }),
23
- f > 1 && /* @__PURE__ */ i(l, { children: /* @__PURE__ */ i(v, {}) }),
24
- m.reverse().map((o) => /* @__PURE__ */ i(l, { children: /* @__PURE__ */ i(d, { onClick: /* @__PURE__ */ t(() => h(o), "onClick"), children: o }) }, o)),
25
- /* @__PURE__ */ i(l, { children: /* @__PURE__ */ i(d, { isActive: !0, children: n }) }),
26
- x.map((o) => /* @__PURE__ */ i(l, { children: /* @__PURE__ */ i(d, { onClick: /* @__PURE__ */ t(() => h(o), "onClick"), children: o }) }, o)),
27
- p < s && /* @__PURE__ */ i(l, { children: /* @__PURE__ */ i(v, {}) }),
28
- n < s && /* @__PURE__ */ i(l, { children: /* @__PURE__ */ i(I, { onClick: C }) })
29
- ] }) });
30
- }
31
- t(q, "SimplePagination");
32
- export {
33
- q as SimplePagination
34
- };
1
+ var N=Object.defineProperty;var t=(s,n)=>N(s,"name",{value:n,configurable:!0});import{jsx as i,jsxs as a}from"react/jsx-runtime";import{Pagination as j,PaginationContent as A,PaginationItem as l,PaginationPrevious as E,PaginationEllipsis as v,PaginationLink as d,PaginationNext as I}from"./pagination.js";function q({lastPage:s,currentPage:n,onPaginate:h,neightborsPages:k=3}){const r=t(()=>{h(n===1?1:n-1)},"previous"),C=t(()=>{h(n===s?n:n+1)},"next"),m=[],x=[];let p=n,f=n;for(let o=1;o<=k;o++){const c=n-o,e=n+o;c>=1&&(m.push(c),f=c),e<=s&&(x.push(e),p=e)}return i(j,{children:a(A,{children:[n>1&&i(l,{children:i(E,{onClick:r})}),f>1&&i(l,{children:i(v,{})}),m.reverse().map(o=>i(l,{children:i(d,{onClick:t(()=>h(o),"onClick"),children:o})},o)),i(l,{children:i(d,{isActive:!0,children:n})}),x.map(o=>i(l,{children:i(d,{onClick:t(()=>h(o),"onClick"),children:o})},o)),p<s&&i(l,{children:i(v,{})}),n<s&&i(l,{children:i(I,{onClick:C})})]})})}t(q,"SimplePagination");export{q as SimplePagination};
@@ -1,17 +1 @@
1
- var e = Object.defineProperty;
2
- var r = (o, i) => e(o, "name", { value: i, configurable: !0 });
3
- import { jsxs as l, jsx as t } from "react/jsx-runtime";
4
- import { Tooltip as p, TooltipTrigger as n, TooltipContent as m } from "./tooltip.js";
5
- function d({
6
- title: o,
7
- children: i
8
- }) {
9
- return /* @__PURE__ */ l(p, { children: [
10
- /* @__PURE__ */ t(n, { asChild: !0, children: i }),
11
- /* @__PURE__ */ t(m, { children: o })
12
- ] });
13
- }
14
- r(d, "SimpleTooltip");
15
- export {
16
- d as SimpleTooltip
17
- };
1
+ var e=Object.defineProperty;var r=(o,i)=>e(o,"name",{value:i,configurable:!0});import{jsxs as l,jsx as t}from"react/jsx-runtime";import{Tooltip as p,TooltipTrigger as n,TooltipContent as m}from"./tooltip.js";function d({title:o,children:i}){return l(p,{children:[t(n,{asChild:!0,children:i}),t(m,{children:o})]})}r(d,"SimpleTooltip");export{d as SimpleTooltip};
@@ -1,18 +1 @@
1
- var n = Object.defineProperty;
2
- var o = (e, t) => n(e, "name", { value: t, configurable: !0 });
3
- import { jsx as r } from "react/jsx-runtime";
4
- import { cn as a } from "../lib/utils.js";
5
- function d({ className: e, ...t }) {
6
- return /* @__PURE__ */ r(
7
- "div",
8
- {
9
- "data-slot": "skeleton",
10
- className: a("bg-accent animate-pulse rounded-md", e),
11
- ...t
12
- }
13
- );
14
- }
15
- o(d, "Skeleton");
16
- export {
17
- d as Skeleton
18
- };
1
+ var n=Object.defineProperty;var o=(e,t)=>n(e,"name",{value:t,configurable:!0});import{jsx as r}from"react/jsx-runtime";import{cn as a}from"../lib/utils.js";function d({className:e,...t}){return r("div",{"data-slot":"skeleton",className:a("bg-accent animate-pulse rounded-md",e),...t})}o(d,"Skeleton");export{d as Skeleton};
@@ -1,24 +1 @@
1
- var t = Object.defineProperty;
2
- var e = (r, o) => t(r, "name", { value: o, configurable: !0 });
3
- import { jsx as s } from "react/jsx-runtime";
4
- import { useTheme as a } from "next-themes";
5
- import { Toaster as m } from "sonner";
6
- const f = /* @__PURE__ */ e(({ ...r }) => {
7
- const { theme: o = "system" } = a();
8
- return /* @__PURE__ */ s(
9
- m,
10
- {
11
- theme: o,
12
- className: "toaster group",
13
- style: {
14
- "--normal-bg": "var(--popover)",
15
- "--normal-text": "var(--popover-foreground)",
16
- "--normal-border": "var(--border)"
17
- },
18
- ...r
19
- }
20
- );
21
- }, "Toaster");
22
- export {
23
- f as Toaster
24
- };
1
+ var t=Object.defineProperty;var e=(r,o)=>t(r,"name",{value:o,configurable:!0});import{jsx as s}from"react/jsx-runtime";import{useTheme as a}from"next-themes";import{Toaster as m}from"sonner";const f=e(({...r})=>{const{theme:o="system"}=a();return s(m,{theme:o,className:"toaster group",style:{"--normal-bg":"var(--popover)","--normal-text":"var(--popover-foreground)","--normal-border":"var(--border)"},...r})},"Toaster");export{f as Toaster};
@@ -1,34 +1 @@
1
- var o = Object.defineProperty;
2
- var r = (t, e) => o(t, "name", { value: e, configurable: !0 });
3
- import { jsx as a } from "react/jsx-runtime";
4
- import { Switch as i } from "radix-ui";
5
- import { cn as n } from "../lib/utils.js";
6
- function u({
7
- className: t,
8
- ...e
9
- }) {
10
- return /* @__PURE__ */ a(
11
- i.Root,
12
- {
13
- "data-slot": "switch",
14
- className: n(
15
- "peer data-[state=checked]:bg-primary data-[state=unchecked]:bg-input-border focus-visible:border-ring focus-visible:ring-ring/50 inline-flex h-[1.15rem] w-8 shrink-0 items-center rounded-full border border-transparent shadow-xs transition-all outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",
16
- t
17
- ),
18
- ...e,
19
- children: /* @__PURE__ */ a(
20
- i.Thumb,
21
- {
22
- "data-slot": "switch-thumb",
23
- className: n(
24
- "bg-input dark:bg-foreground pointer-events-none block size-4 rounded-full ring-0 transition-transform data-[state=checked]:translate-x-[calc(100%-2px)] data-[state=unchecked]:translate-x-0"
25
- )
26
- }
27
- )
28
- }
29
- );
30
- }
31
- r(u, "Switch");
32
- export {
33
- u as Switch
34
- };
1
+ var o=Object.defineProperty;var r=(t,e)=>o(t,"name",{value:e,configurable:!0});import{jsx as a}from"react/jsx-runtime";import{Switch as i}from"radix-ui";import{cn as n}from"../lib/utils.js";function u({className:t,...e}){return a(i.Root,{"data-slot":"switch",className:n("peer data-[state=checked]:bg-primary data-[state=unchecked]:bg-input-border focus-visible:border-ring focus-visible:ring-ring/50 inline-flex h-[1.15rem] w-8 shrink-0 items-center rounded-full border border-transparent shadow-xs transition-all outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",t),...e,children:a(i.Thumb,{"data-slot":"switch-thumb",className:n("bg-input dark:bg-foreground pointer-events-none block size-4 rounded-full ring-0 transition-transform data-[state=checked]:translate-x-[calc(100%-2px)] data-[state=unchecked]:translate-x-0")})})}r(u,"Switch");export{u as Switch};
@@ -1,124 +1 @@
1
- var r = Object.defineProperty;
2
- var a = (t, e) => r(t, "name", { value: e, configurable: !0 });
3
- import { jsx as o } from "react/jsx-runtime";
4
- import { cn as l } from "../lib/utils.js";
5
- function b({ className: t, ...e }) {
6
- return /* @__PURE__ */ o(
7
- "div",
8
- {
9
- "data-slot": "table-container",
10
- className: "relative w-full overflow-x-auto",
11
- children: /* @__PURE__ */ o(
12
- "table",
13
- {
14
- "data-slot": "table",
15
- className: l("w-full caption-bottom text-sm", t),
16
- ...e
17
- }
18
- )
19
- }
20
- );
21
- }
22
- a(b, "Table");
23
- function d({ className: t, ...e }) {
24
- return /* @__PURE__ */ o(
25
- "thead",
26
- {
27
- "data-slot": "table-header",
28
- className: l("[&_tr]:border-b", t),
29
- ...e
30
- }
31
- );
32
- }
33
- a(d, "TableHeader");
34
- function i({ className: t, ...e }) {
35
- return /* @__PURE__ */ o(
36
- "tbody",
37
- {
38
- "data-slot": "table-body",
39
- className: l("[&_tr:last-child]:border-0", t),
40
- ...e
41
- }
42
- );
43
- }
44
- a(i, "TableBody");
45
- function m({ className: t, ...e }) {
46
- return /* @__PURE__ */ o(
47
- "tfoot",
48
- {
49
- "data-slot": "table-footer",
50
- className: l(
51
- "bg-accent/50 border-t font-medium [&>tr]:last:border-b-0",
52
- t
53
- ),
54
- ...e
55
- }
56
- );
57
- }
58
- a(m, "TableFooter");
59
- function u({ className: t, ...e }) {
60
- return /* @__PURE__ */ o(
61
- "tr",
62
- {
63
- "data-slot": "table-row",
64
- className: l(
65
- "hover:bg-accent/50 data-[state=selected]:bg-accent border-b transition-colors",
66
- t
67
- ),
68
- ...e
69
- }
70
- );
71
- }
72
- a(u, "TableRow");
73
- function f({ className: t, ...e }) {
74
- return /* @__PURE__ */ o(
75
- "th",
76
- {
77
- "data-slot": "table-head",
78
- className: l(
79
- "text-foreground h-10 px-2 text-left align-middle font-medium whitespace-nowrap [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]",
80
- t
81
- ),
82
- ...e
83
- }
84
- );
85
- }
86
- a(f, "TableHead");
87
- function p({ className: t, ...e }) {
88
- return /* @__PURE__ */ o(
89
- "td",
90
- {
91
- "data-slot": "table-cell",
92
- className: l(
93
- "p-2 align-middle whitespace-nowrap [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]",
94
- t
95
- ),
96
- ...e
97
- }
98
- );
99
- }
100
- a(p, "TableCell");
101
- function h({
102
- className: t,
103
- ...e
104
- }) {
105
- return /* @__PURE__ */ o(
106
- "caption",
107
- {
108
- "data-slot": "table-caption",
109
- className: l("text-muted mt-4 text-sm", t),
110
- ...e
111
- }
112
- );
113
- }
114
- a(h, "TableCaption");
115
- export {
116
- b as Table,
117
- i as TableBody,
118
- h as TableCaption,
119
- p as TableCell,
120
- m as TableFooter,
121
- f as TableHead,
122
- d as TableHeader,
123
- u as TableRow
124
- };
1
+ var r=Object.defineProperty;var a=(t,e)=>r(t,"name",{value:e,configurable:!0});import{jsx as o}from"react/jsx-runtime";import{cn as l}from"../lib/utils.js";function b({className:t,...e}){return o("div",{"data-slot":"table-container",className:"relative w-full overflow-x-auto",children:o("table",{"data-slot":"table",className:l("w-full caption-bottom text-sm",t),...e})})}a(b,"Table");function d({className:t,...e}){return o("thead",{"data-slot":"table-header",className:l("[&_tr]:border-b",t),...e})}a(d,"TableHeader");function i({className:t,...e}){return o("tbody",{"data-slot":"table-body",className:l("[&_tr:last-child]:border-0",t),...e})}a(i,"TableBody");function m({className:t,...e}){return o("tfoot",{"data-slot":"table-footer",className:l("bg-accent/50 border-t font-medium [&>tr]:last:border-b-0",t),...e})}a(m,"TableFooter");function u({className:t,...e}){return o("tr",{"data-slot":"table-row",className:l("hover:bg-accent/50 data-[state=selected]:bg-accent border-b transition-colors",t),...e})}a(u,"TableRow");function f({className:t,...e}){return o("th",{"data-slot":"table-head",className:l("text-foreground h-10 px-2 text-left align-middle font-medium whitespace-nowrap [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]",t),...e})}a(f,"TableHead");function p({className:t,...e}){return o("td",{"data-slot":"table-cell",className:l("p-2 align-middle whitespace-nowrap [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]",t),...e})}a(p,"TableCell");function h({className:t,...e}){return o("caption",{"data-slot":"table-caption",className:l("text-muted mt-4 text-sm",t),...e})}a(h,"TableCaption");export{b as Table,i as TableBody,h as TableCaption,p as TableCell,m as TableFooter,f as TableHead,d as TableHeader,u as TableRow};
@@ -1,73 +1 @@
1
- var n = Object.defineProperty;
2
- var s = (t, e) => n(t, "name", { value: e, configurable: !0 });
3
- import { jsx as a } from "react/jsx-runtime";
4
- import { Tabs as r } from "radix-ui";
5
- import { cn as i } from "../lib/utils.js";
6
- function u({
7
- className: t,
8
- ...e
9
- }) {
10
- return /* @__PURE__ */ a(
11
- r.Root,
12
- {
13
- "data-slot": "tabs",
14
- className: i("flex flex-col gap-2", t),
15
- ...e
16
- }
17
- );
18
- }
19
- s(u, "Tabs");
20
- function b({
21
- className: t,
22
- ...e
23
- }) {
24
- return /* @__PURE__ */ a(
25
- r.List,
26
- {
27
- "data-slot": "tabs-list",
28
- className: i(
29
- "bg-tabs text-muted inline-flex h-9 w-fit items-center justify-center rounded-lg p-[3px]",
30
- t
31
- ),
32
- ...e
33
- }
34
- );
35
- }
36
- s(b, "TabsList");
37
- function f({
38
- className: t,
39
- ...e
40
- }) {
41
- return /* @__PURE__ */ a(
42
- r.Trigger,
43
- {
44
- "data-slot": "tabs-trigger",
45
- className: i(
46
- "cursor-pointer data-[state=active]:bg-primary data-[state=active]:text-primary-foreground focus-visible:border-ring focus-visible:ring-primary/50 focus-visible:outline-ring dark:data-[state=active]:border-input text-foreground inline-flex h-[calc(100%-1px)] flex-1 items-center justify-center gap-1.5 rounded-md border border-transparent px-2 py-1 text-sm font-medium whitespace-nowrap transition-[color,box-shadow] focus-visible:ring-[3px] focus-visible:outline-1 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:shadow-sm [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
47
- t
48
- ),
49
- ...e
50
- }
51
- );
52
- }
53
- s(f, "TabsTrigger");
54
- function p({
55
- className: t,
56
- ...e
57
- }) {
58
- return /* @__PURE__ */ a(
59
- r.Content,
60
- {
61
- "data-slot": "tabs-content",
62
- className: i("flex-1 outline-none", t),
63
- ...e
64
- }
65
- );
66
- }
67
- s(p, "TabsContent");
68
- export {
69
- u as Tabs,
70
- p as TabsContent,
71
- b as TabsList,
72
- f as TabsTrigger
73
- };
1
+ var n=Object.defineProperty;var s=(t,e)=>n(t,"name",{value:e,configurable:!0});import{jsx as a}from"react/jsx-runtime";import{Tabs as r}from"radix-ui";import{cn as i}from"../lib/utils.js";function u({className:t,...e}){return a(r.Root,{"data-slot":"tabs",className:i("flex flex-col gap-2",t),...e})}s(u,"Tabs");function b({className:t,...e}){return a(r.List,{"data-slot":"tabs-list",className:i("bg-tabs text-muted inline-flex h-9 w-fit items-center justify-center rounded-lg p-[3px]",t),...e})}s(b,"TabsList");function f({className:t,...e}){return a(r.Trigger,{"data-slot":"tabs-trigger",className:i("cursor-pointer data-[state=active]:bg-primary data-[state=active]:text-primary-foreground focus-visible:border-ring focus-visible:ring-primary/50 focus-visible:outline-ring dark:data-[state=active]:border-input text-foreground inline-flex h-[calc(100%-1px)] flex-1 items-center justify-center gap-1.5 rounded-md border border-transparent px-2 py-1 text-sm font-medium whitespace-nowrap transition-[color,box-shadow] focus-visible:ring-[3px] focus-visible:outline-1 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:shadow-sm [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",t),...e})}s(f,"TabsTrigger");function p({className:t,...e}){return a(r.Content,{"data-slot":"tabs-content",className:i("flex-1 outline-none",t),...e})}s(p,"TabsContent");export{u as Tabs,p as TabsContent,b as TabsList,f as TabsTrigger};
@@ -1,23 +1 @@
1
- var t = Object.defineProperty;
2
- var i = (e, r) => t(e, "name", { value: r, configurable: !0 });
3
- import { jsx as o } from "react/jsx-runtime";
4
- import { cn as a } from "../lib/utils.js";
5
- function l({ className: e, ...r }) {
6
- return /* @__PURE__ */ o(
7
- "textarea",
8
- {
9
- "data-slot": "textarea",
10
- className: a(
11
- "bg-input border-input-border placeholder:text-placeholder flex field-sizing-content min-h-16 w-full rounded-md border px-3 py-2 text-base shadow-xs transition-[color,box-shadow] outline-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",
12
- "focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]",
13
- "aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",
14
- e
15
- ),
16
- ...r
17
- }
18
- );
19
- }
20
- i(l, "Textarea");
21
- export {
22
- l as Textarea
23
- };
1
+ var t=Object.defineProperty;var i=(e,r)=>t(e,"name",{value:r,configurable:!0});import{jsx as o}from"react/jsx-runtime";import{cn as a}from"../lib/utils.js";function l({className:e,...r}){return o("textarea",{"data-slot":"textarea",className:a("bg-input border-input-border placeholder:text-placeholder flex field-sizing-content min-h-16 w-full rounded-md border px-3 py-2 text-base shadow-xs transition-[color,box-shadow] outline-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm","focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]","aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",e),...r})}i(l,"Textarea");export{l as Textarea};
@@ -1,61 +1 @@
1
- var n = Object.defineProperty;
2
- var e = (t, r) => n(t, "name", { value: r, configurable: !0 });
3
- import { jsx as i, jsxs as l } from "react/jsx-runtime";
4
- import { Tooltip as o } from "radix-ui";
5
- import { cn as s } from "../lib/utils.js";
6
- function p({
7
- delayDuration: t = 0,
8
- ...r
9
- }) {
10
- return /* @__PURE__ */ i(
11
- o.Provider,
12
- {
13
- "data-slot": "tooltip-provider",
14
- delayDuration: t,
15
- ...r
16
- }
17
- );
18
- }
19
- e(p, "TooltipProvider");
20
- function g({
21
- ...t
22
- }) {
23
- return /* @__PURE__ */ i(p, { children: /* @__PURE__ */ i(o.Root, { "data-slot": "tooltip", ...t }) });
24
- }
25
- e(g, "Tooltip");
26
- function x({
27
- ...t
28
- }) {
29
- return /* @__PURE__ */ i(o.Trigger, { "data-slot": "tooltip-trigger", ...t });
30
- }
31
- e(x, "TooltipTrigger");
32
- function T({
33
- className: t,
34
- sideOffset: r = 0,
35
- children: a,
36
- ...d
37
- }) {
38
- return /* @__PURE__ */ i(o.Portal, { children: /* @__PURE__ */ l(
39
- o.Content,
40
- {
41
- "data-slot": "tooltip-content",
42
- sideOffset: r,
43
- className: s(
44
- "bg-dark text-dark-foreground animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-fit origin-(--radix-tooltip-content-transform-origin) rounded-md px-3 py-1.5 text-xs text-balance",
45
- t
46
- ),
47
- ...d,
48
- children: [
49
- a,
50
- /* @__PURE__ */ i(o.Arrow, { className: "bg-dark fill-dark z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px]" })
51
- ]
52
- }
53
- ) });
54
- }
55
- e(T, "TooltipContent");
56
- export {
57
- g as Tooltip,
58
- T as TooltipContent,
59
- p as TooltipProvider,
60
- x as TooltipTrigger
61
- };
1
+ var n=Object.defineProperty;var e=(t,r)=>n(t,"name",{value:r,configurable:!0});import{jsx as i,jsxs as l}from"react/jsx-runtime";import{Tooltip as o}from"radix-ui";import{cn as s}from"../lib/utils.js";function p({delayDuration:t=0,...r}){return i(o.Provider,{"data-slot":"tooltip-provider",delayDuration:t,...r})}e(p,"TooltipProvider");function g({...t}){return i(p,{children:i(o.Root,{"data-slot":"tooltip",...t})})}e(g,"Tooltip");function x({...t}){return i(o.Trigger,{"data-slot":"tooltip-trigger",...t})}e(x,"TooltipTrigger");function T({className:t,sideOffset:r=0,children:a,...d}){return i(o.Portal,{children:l(o.Content,{"data-slot":"tooltip-content",sideOffset:r,className:s("bg-dark text-dark-foreground animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-fit origin-(--radix-tooltip-content-transform-origin) rounded-md px-3 py-1.5 text-xs text-balance",t),...d,children:[a,i(o.Arrow,{className:"bg-dark fill-dark z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px]"})]})})}e(T,"TooltipContent");export{g as Tooltip,T as TooltipContent,p as TooltipProvider,x as TooltipTrigger};
@@ -1,4 +1 @@
1
- import { useIsMobile as r } from "./use-mobile.js";
2
- export {
3
- r as useIsMobile
4
- };
1
+ import{useIsMobile as r}from"./use-mobile.js";export{r as useIsMobile};
@@ -1,17 +1 @@
1
- var a = Object.defineProperty;
2
- var t = (n, e) => a(n, "name", { value: e, configurable: !0 });
3
- import * as r from "react";
4
- const i = 768;
5
- function d() {
6
- const [n, e] = r.useState(void 0);
7
- return r.useEffect(() => {
8
- const o = window.matchMedia(`(max-width: ${i - 1}px)`), s = /* @__PURE__ */ t(() => {
9
- e(window.innerWidth < i);
10
- }, "onChange");
11
- return o.addEventListener("change", s), e(window.innerWidth < i), () => o.removeEventListener("change", s);
12
- }, []), !!n;
13
- }
14
- t(d, "useIsMobile");
15
- export {
16
- d as useIsMobile
17
- };
1
+ var a=Object.defineProperty;var t=(n,e)=>a(n,"name",{value:e,configurable:!0});import*as r from"react";const i=768;function d(){const[n,e]=r.useState(void 0);return r.useEffect(()=>{const o=window.matchMedia(`(max-width: ${i-1}px)`),s=t(()=>{e(window.innerWidth<i)},"onChange");return o.addEventListener("change",s),e(window.innerWidth<i),()=>o.removeEventListener("change",s)},[]),!!n}t(d,"useIsMobile");export{d as useIsMobile};
@@ -1,7 +1 @@
1
- var u = Object.defineProperty;
2
- var c = (r, t) => u(r, "name", { value: t, configurable: !0 });
3
- const f = /* @__PURE__ */ c((r, t, s = "asc") => r.sort((e, n) => e[t].toLowerCase() < n[t].toLowerCase() ? s === "asc" ? -1 : 1 : e[t].toLowerCase() > n[t].toLowerCase() ? s === "asc" ? 1 : -1 : 0), "orderByText"), i = /* @__PURE__ */ c((r, t, s = "asc") => r.sort((e, n) => e[t] < n[t] ? s === "asc" ? -1 : 1 : e[t] > n[t] ? s === "asc" ? 1 : -1 : 0), "orderBy");
4
- export {
5
- i as orderBy,
6
- f as orderByText
7
- };
1
+ var u=Object.defineProperty;var c=(r,t)=>u(r,"name",{value:t,configurable:!0});const f=c((r,t,s="asc")=>r.sort((e,n)=>e[t].toLowerCase()<n[t].toLowerCase()?s==="asc"?-1:1:e[t].toLowerCase()>n[t].toLowerCase()?s==="asc"?1:-1:0),"orderByText"),i=c((r,t,s="asc")=>r.sort((e,n)=>e[t]<n[t]?s==="asc"?-1:1:e[t]>n[t]?s==="asc"?1:-1:0),"orderBy");export{i as orderBy,f as orderByText};
package/dist/lib/dates.js CHANGED
@@ -1,21 +1 @@
1
- var o = Object.defineProperty;
2
- var l = (r, a) => o(r, "name", { value: a, configurable: !0 });
3
- import { format as e } from "date-fns";
4
- import { fr as y } from "../node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/locale/fr.js";
5
- const i = /* @__PURE__ */ l((r, a) => {
6
- switch (a) {
7
- case "api":
8
- return e(r, "yyyy-MM-dd", { locale: y });
9
- case "displayDate":
10
- return e(r, "dd/MM/yyyy", { locale: y });
11
- case "displayDateTime":
12
- return e(r, "dd/MM/yyyy HH:mm", { locale: y });
13
- case "displayTime":
14
- return e(r, "HH:mm", { locale: y });
15
- default:
16
- return e(r, a, { locale: y });
17
- }
18
- }, "formatDate");
19
- export {
20
- i as formatDate
21
- };
1
+ var o=Object.defineProperty;var l=(r,a)=>o(r,"name",{value:a,configurable:!0});import{format as e}from"date-fns";import{fr as y}from"../node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/locale/fr.js";const i=l((r,a)=>{switch(a){case"api":return e(r,"yyyy-MM-dd",{locale:y});case"displayDate":return e(r,"dd/MM/yyyy",{locale:y});case"displayDateTime":return e(r,"dd/MM/yyyy HH:mm",{locale:y});case"displayTime":return e(r,"HH:mm",{locale:y});default:return e(r,a,{locale:y})}},"formatDate");export{i as formatDate};
package/dist/lib/http.js CHANGED
@@ -1,56 +1 @@
1
- var p = Object.defineProperty;
2
- var n = (t, r) => p(t, "name", { value: r, configurable: !0 });
3
- import m from "qs";
4
- const h = /* @__PURE__ */ n((t) => t != null, "valueExists"), j = /* @__PURE__ */ n((t, r) => {
5
- if (t) {
6
- if (t instanceof FormData)
7
- return t;
8
- if (r) {
9
- const a = new FormData();
10
- return Object.keys(t).forEach((e) => {
11
- if (Array.isArray(t[e]))
12
- for (const s of t[e])
13
- a.append(`${e}[]`, s || "");
14
- else
15
- a.append(e, h(t[e]) ? t[e] : "");
16
- }), a;
17
- }
18
- return JSON.stringify(t);
19
- }
20
- }, "formatBodyForRequest"), d = /* @__PURE__ */ n((t, r = null) => {
21
- let a = t;
22
- return r && (a += `?${m.stringify(r, { encode: !1 })}`), a;
23
- }, "formatUrlForRequest"), v = /* @__PURE__ */ n(async (t, r, a = null, e = null, s = null, i = !1) => {
24
- const u = new Headers({
25
- Accept: "application/json",
26
- ...s
27
- });
28
- !i && !(e instanceof FormData) && u.append("Content-Type", "application/json");
29
- const l = {
30
- method: t,
31
- headers: u,
32
- body: j(e, i)
33
- };
34
- let o = null;
35
- const c = await fetch(
36
- d(r, a),
37
- l
38
- ).catch((f) => (o = f, null));
39
- return o ? Promise.reject(o) : g(c);
40
- }, "requestApi"), g = /* @__PURE__ */ n(async (t) => {
41
- if (t.status === 204)
42
- return Promise.resolve(null);
43
- const r = await (t.headers.get("Content-Type") === "application/json" ? t.json() : t.blob()).catch(() => "Response parsing error");
44
- return t.status >= 200 && t.status < 300 ? Promise.resolve(r) : t.status >= 400 && t.status <= 500 ? Promise.reject({
45
- status: t.status,
46
- raw: r,
47
- message: r
48
- }) : Promise.reject({
49
- status: t.status,
50
- raw: "",
51
- message: ""
52
- });
53
- }, "handleResponse");
54
- export {
55
- v as requestApi
56
- };
1
+ var p=Object.defineProperty;var n=(t,r)=>p(t,"name",{value:r,configurable:!0});import m from"qs";const h=n(t=>t!=null,"valueExists"),j=n((t,r)=>{if(t){if(t instanceof FormData)return t;if(r){const a=new FormData;return Object.keys(t).forEach(e=>{if(Array.isArray(t[e]))for(const s of t[e])a.append(`${e}[]`,s||"");else a.append(e,h(t[e])?t[e]:"")}),a}return JSON.stringify(t)}},"formatBodyForRequest"),d=n((t,r=null)=>{let a=t;return r&&(a+=`?${m.stringify(r,{encode:!1})}`),a},"formatUrlForRequest"),v=n(async(t,r,a=null,e=null,s=null,i=!1)=>{const u=new Headers({Accept:"application/json",...s});!i&&!(e instanceof FormData)&&u.append("Content-Type","application/json");const l={method:t,headers:u,body:j(e,i)};let o=null;const c=await fetch(d(r,a),l).catch(f=>(o=f,null));return o?Promise.reject(o):g(c)},"requestApi"),g=n(async t=>{if(t.status===204)return Promise.resolve(null);const r=await(t.headers.get("Content-Type")==="application/json"?t.json():t.blob()).catch(()=>"Response parsing error");return t.status>=200&&t.status<300?Promise.resolve(r):t.status>=400&&t.status<=500?Promise.reject({status:t.status,raw:r,message:r}):Promise.reject({status:t.status,raw:"",message:""})},"handleResponse");export{v as requestApi};
package/dist/lib/index.js CHANGED
@@ -1,27 +1 @@
1
- import { formatDate as e } from "./dates.js";
2
- import { requestApi as a } from "./http.js";
3
- import { isNullOrEmptyString as p } from "./strings.js";
4
- import { orderBy as f, orderByText as x } from "./arrays.js";
5
- import { apiErrorDescription as n, cn as s, manageApiFormErrors as y } from "./utils.js";
6
- import { addMethod as l, array as b, boolean as g, date as u, lazy as E, mixed as h, number as A, object as B, reach as D, ref as j, string as q } from "./yup.js";
7
- export {
8
- l as addMethod,
9
- n as apiErrorDescription,
10
- b as array,
11
- g as boolean,
12
- s as cn,
13
- u as date,
14
- e as formatDate,
15
- p as isNullOrEmptyString,
16
- E as lazy,
17
- y as manageApiFormErrors,
18
- h as mixed,
19
- A as number,
20
- B as object,
21
- f as orderBy,
22
- x as orderByText,
23
- D as reach,
24
- j as ref,
25
- a as requestApi,
26
- q as string
27
- };
1
+ import{formatDate as e}from"./dates.js";import{requestApi as a}from"./http.js";import{isNullOrEmptyString as p}from"./strings.js";import{orderBy as f,orderByText as x}from"./arrays.js";import{apiErrorDescription as n,cn as s,manageApiFormErrors as y}from"./utils.js";import{addMethod as l,array as b,boolean as g,date as u,lazy as E,mixed as h,number as A,object as B,reach as D,ref as j,string as q}from"./yup.js";export{l as addMethod,n as apiErrorDescription,b as array,g as boolean,s as cn,u as date,e as formatDate,p as isNullOrEmptyString,E as lazy,y as manageApiFormErrors,h as mixed,A as number,B as object,f as orderBy,x as orderByText,D as reach,j as ref,a as requestApi,q as string};
@@ -1,6 +1 @@
1
- var n = Object.defineProperty;
2
- var t = (r, i) => n(r, "name", { value: i, configurable: !0 });
3
- const l = /* @__PURE__ */ t((r) => r == null || r.trim() === "", "isNullOrEmptyString");
4
- export {
5
- l as isNullOrEmptyString
6
- };
1
+ var n=Object.defineProperty;var t=(r,i)=>n(r,"name",{value:i,configurable:!0});const l=t(r=>r==null||r.trim()==="","isNullOrEmptyString");export{l as isNullOrEmptyString};
package/dist/lib/utils.js CHANGED
@@ -1,31 +1,2 @@
1
- var a = Object.defineProperty;
2
- var t = (r, e) => a(r, "name", { value: e, configurable: !0 });
3
- import { clsx as c } from "clsx";
4
- import { twMerge as f } from "tailwind-merge";
5
- const w = /* @__PURE__ */ t((...r) => f(c(r)), "cn"), y = /* @__PURE__ */ t((r) => {
6
- let e = "Une erreur est survenue";
7
- return r.status === 400 ? e = "Données invalides" : typeof r.raw == "object" && r.raw.error && (e = r.raw.error), e;
8
- }, "apiErrorDescription"), E = /* @__PURE__ */ t((r, e) => {
9
- if (r.status === 400 && e && typeof r.raw == "object") {
10
- let i = !0;
11
- Object.entries(r.raw).forEach(([n, s]) => {
12
- let o = "";
13
- Array.isArray(s) ? o = s.join(`
14
- `) : o = s, e.setError(
15
- n,
16
- {
17
- type: "server",
18
- message: o
19
- },
20
- {
21
- shouldFocus: i
22
- }
23
- ), i = !1;
24
- });
25
- }
26
- }, "manageApiFormErrors");
27
- export {
28
- y as apiErrorDescription,
29
- w as cn,
30
- E as manageApiFormErrors
31
- };
1
+ var a=Object.defineProperty;var t=(r,e)=>a(r,"name",{value:e,configurable:!0});import{clsx as c}from"clsx";import{twMerge as f}from"tailwind-merge";const w=t((...r)=>f(c(r)),"cn"),y=t(r=>{let e="Une erreur est survenue";return r.status===400?e="Données invalides":typeof r.raw=="object"&&r.raw.error&&(e=r.raw.error),e},"apiErrorDescription"),E=t((r,e)=>{if(r.status===400&&e&&typeof r.raw=="object"){let i=!0;Object.entries(r.raw).forEach(([n,s])=>{let o="";Array.isArray(s)?o=s.join(`
2
+ `):o=s,e.setError(n,{type:"server",message:o},{shouldFocus:i}),i=!1})}},"manageApiFormErrors");export{y as apiErrorDescription,w as cn,E as manageApiFormErrors};