lizaui 10.0.49 → 10.0.51
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/pagination/pagination.d.ts.map +1 -1
- package/dist/components/ui/confirmation.d.ts +2 -1
- package/dist/components/ui/confirmation.d.ts.map +1 -1
- package/dist/pagination/index.cjs.js +47 -47
- package/dist/pagination/index.cjs.js.map +1 -1
- package/dist/pagination/index.es.js +47 -47
- package/dist/pagination/index.es.js.map +1 -1
- package/dist/ui/index.cjs.js +71 -67
- package/dist/ui/index.cjs.js.map +1 -1
- package/dist/ui/index.es.js +71 -67
- package/dist/ui/index.es.js.map +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pagination.d.ts","sourceRoot":"","sources":["../../../src/components/pagination/pagination.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"pagination.d.ts","sourceRoot":"","sources":["../../../src/components/pagination/pagination.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAGxE,eAAO,MAAM,UAAU,GAAI,oGAgBxB,eAAe,4CAkHjB,CAAC"}
|
|
@@ -12,6 +12,7 @@ export interface AlertConfirmationProps {
|
|
|
12
12
|
buttonConfirmText?: string;
|
|
13
13
|
showButtonCancel?: boolean;
|
|
14
14
|
colorButtonConfirm?: ButtonVariantProps["color"];
|
|
15
|
+
radiusButtonConfirm?: ButtonVariantProps["radius"];
|
|
15
16
|
}
|
|
16
|
-
export declare const AlertConfirmation: ({ isOpen, title, description, body, loading, onConfirm, onCancel, onOpenChange, buttonCancelText, buttonConfirmText, colorButtonConfirm, showButtonCancel, }: AlertConfirmationProps) => import("react/jsx-runtime").JSX.Element;
|
|
17
|
+
export declare const AlertConfirmation: ({ isOpen, title, description, body, loading, onConfirm, onCancel, onOpenChange, buttonCancelText, buttonConfirmText, colorButtonConfirm, radiusButtonConfirm, showButtonCancel, }: AlertConfirmationProps) => import("react/jsx-runtime").JSX.Element;
|
|
17
18
|
//# sourceMappingURL=confirmation.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"confirmation.d.ts","sourceRoot":"","sources":["../../../src/components/ui/confirmation.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"confirmation.d.ts","sourceRoot":"","sources":["../../../src/components/ui/confirmation.tsx"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAG/D,MAAM,WAAW,sBAAsB;IACtC,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACxB,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC9B,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,kBAAkB,CAAC,EAAE,kBAAkB,CAAC,OAAO,CAAC,CAAC;IACjD,mBAAmB,CAAC,EAAE,kBAAkB,CAAC,QAAQ,CAAC,CAAC;CACnD;AAED,eAAO,MAAM,iBAAiB,GAAI,mLAc/B,sBAAsB,4CAsBxB,CAAC"}
|
|
@@ -2,14 +2,56 @@
|
|
|
2
2
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
3
|
const jsxRuntime = require("react/jsx-runtime");
|
|
4
4
|
const compilerRuntime = require("react/compiler-runtime");
|
|
5
|
-
const tailwindMerge = require("tailwind-merge");
|
|
6
|
-
const index = require("../chunks/index-L_sr2HRN.js");
|
|
7
|
-
const React = require("react");
|
|
8
5
|
const clsx = require("clsx");
|
|
6
|
+
const index = require("../chunks/index-L_sr2HRN.js");
|
|
7
|
+
const tailwindMerge = require("tailwind-merge");
|
|
9
8
|
require("../chunks/textarea-DJaQ_GRS.js");
|
|
10
9
|
require("../chunks/dialog-55xjXOqb.js");
|
|
10
|
+
const React = require("react");
|
|
11
11
|
const select = require("../chunks/select-B1rOycjs.js");
|
|
12
12
|
require("../chunks/button-CwK1ffNQ.js");
|
|
13
|
+
const FormatPagePagination = ({
|
|
14
|
+
page,
|
|
15
|
+
total,
|
|
16
|
+
siblings = 1
|
|
17
|
+
}) => {
|
|
18
|
+
const totalPageNoInArray = 7 + siblings;
|
|
19
|
+
if (totalPageNoInArray >= total) {
|
|
20
|
+
return Array.from({
|
|
21
|
+
length: total
|
|
22
|
+
}, (_, i) => i + 1);
|
|
23
|
+
}
|
|
24
|
+
const leftSiblingsIndex = Math.max(page - siblings, 1);
|
|
25
|
+
const rightSiblingsIndex = Math.min(page + siblings, total);
|
|
26
|
+
const showLeftDots = leftSiblingsIndex > 2;
|
|
27
|
+
const showRightDots = rightSiblingsIndex < total - 2;
|
|
28
|
+
if (!showLeftDots && showRightDots) {
|
|
29
|
+
const leftItemsCount = 3 + 2 * siblings;
|
|
30
|
+
const leftRange = Array.from({
|
|
31
|
+
length: leftItemsCount
|
|
32
|
+
}, (_, i) => i + 1);
|
|
33
|
+
return [...leftRange, "...", total];
|
|
34
|
+
} else if (showLeftDots && !showRightDots) {
|
|
35
|
+
const rightItemsCount = 3 + 2 * siblings;
|
|
36
|
+
const rightRange = Array.from({
|
|
37
|
+
length: rightItemsCount
|
|
38
|
+
}, (_, i) => total - rightItemsCount + i + 1);
|
|
39
|
+
return [1, "...", ...rightRange];
|
|
40
|
+
} else {
|
|
41
|
+
const middleRange = Array.from({
|
|
42
|
+
length: rightSiblingsIndex - leftSiblingsIndex + 1
|
|
43
|
+
}, (_, i) => leftSiblingsIndex + i);
|
|
44
|
+
return [1, "...", ...middleRange, "...", total];
|
|
45
|
+
}
|
|
46
|
+
};
|
|
47
|
+
const FormatLimitPagination = (data) => {
|
|
48
|
+
return data.map((el) => {
|
|
49
|
+
return {
|
|
50
|
+
id: el,
|
|
51
|
+
name: el
|
|
52
|
+
};
|
|
53
|
+
});
|
|
54
|
+
};
|
|
13
55
|
const PaginationItem = (t0) => {
|
|
14
56
|
const $ = compilerRuntime.c(16);
|
|
15
57
|
const {
|
|
@@ -85,48 +127,6 @@ const PaginationItem = (t0) => {
|
|
|
85
127
|
}
|
|
86
128
|
return t4;
|
|
87
129
|
};
|
|
88
|
-
const FormatPagePagination = ({
|
|
89
|
-
page,
|
|
90
|
-
total,
|
|
91
|
-
siblings = 1
|
|
92
|
-
}) => {
|
|
93
|
-
const totalPageNoInArray = 7 + siblings;
|
|
94
|
-
if (totalPageNoInArray >= total) {
|
|
95
|
-
return Array.from({
|
|
96
|
-
length: total
|
|
97
|
-
}, (_, i) => i + 1);
|
|
98
|
-
}
|
|
99
|
-
const leftSiblingsIndex = Math.max(page - siblings, 1);
|
|
100
|
-
const rightSiblingsIndex = Math.min(page + siblings, total);
|
|
101
|
-
const showLeftDots = leftSiblingsIndex > 2;
|
|
102
|
-
const showRightDots = rightSiblingsIndex < total - 2;
|
|
103
|
-
if (!showLeftDots && showRightDots) {
|
|
104
|
-
const leftItemsCount = 3 + 2 * siblings;
|
|
105
|
-
const leftRange = Array.from({
|
|
106
|
-
length: leftItemsCount
|
|
107
|
-
}, (_, i) => i + 1);
|
|
108
|
-
return [...leftRange, "...", total];
|
|
109
|
-
} else if (showLeftDots && !showRightDots) {
|
|
110
|
-
const rightItemsCount = 3 + 2 * siblings;
|
|
111
|
-
const rightRange = Array.from({
|
|
112
|
-
length: rightItemsCount
|
|
113
|
-
}, (_, i) => total - rightItemsCount + i + 1);
|
|
114
|
-
return [1, "...", ...rightRange];
|
|
115
|
-
} else {
|
|
116
|
-
const middleRange = Array.from({
|
|
117
|
-
length: rightSiblingsIndex - leftSiblingsIndex + 1
|
|
118
|
-
}, (_, i) => leftSiblingsIndex + i);
|
|
119
|
-
return [1, "...", ...middleRange, "...", total];
|
|
120
|
-
}
|
|
121
|
-
};
|
|
122
|
-
const FormatLimitPagination = (data) => {
|
|
123
|
-
return data.map((el) => {
|
|
124
|
-
return {
|
|
125
|
-
id: el,
|
|
126
|
-
name: el
|
|
127
|
-
};
|
|
128
|
-
});
|
|
129
|
-
};
|
|
130
130
|
const Pagination = (t0) => {
|
|
131
131
|
const $ = compilerRuntime.c(36);
|
|
132
132
|
const {
|
|
@@ -264,7 +264,7 @@ const Pagination = (t0) => {
|
|
|
264
264
|
":"
|
|
265
265
|
] }) }),
|
|
266
266
|
/* @__PURE__ */ jsxRuntime.jsxs(select.Select, { value: limit?.toString(), onValueChange: handleChangeSelect, children: [
|
|
267
|
-
/* @__PURE__ */ jsxRuntime.jsx(select.SelectTrigger, { className: "min-w-20", children: /* @__PURE__ */ jsxRuntime.jsx(select.SelectValue, { placeholder: "Select limit" }) }),
|
|
267
|
+
/* @__PURE__ */ jsxRuntime.jsx(select.SelectTrigger, { className: "min-w-20", radius: "full", children: /* @__PURE__ */ jsxRuntime.jsx(select.SelectValue, { placeholder: "Select limit" }) }),
|
|
268
268
|
/* @__PURE__ */ jsxRuntime.jsx(select.SelectContent, { children: /* @__PURE__ */ jsxRuntime.jsxs(select.SelectGroup, { children: [
|
|
269
269
|
/* @__PURE__ */ jsxRuntime.jsx(select.SelectLabel, { children: translate?.selectLimit || "Limites" }),
|
|
270
270
|
dataLimitFormat.map(_temp)
|
|
@@ -278,7 +278,7 @@ const Pagination = (t0) => {
|
|
|
278
278
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-default-500", children: total })
|
|
279
279
|
] })
|
|
280
280
|
] }) : null;
|
|
281
|
-
t10 = totalPagination > 1 && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-nowrap h-fit max-w-fit relative items-center overflow-visible gap-0 border border-input rounded-
|
|
281
|
+
t10 = totalPagination > 1 && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-nowrap h-fit max-w-fit relative items-center overflow-visible gap-0 border border-input rounded-full cursor-pointer dark:bg-default-100", children: [
|
|
282
282
|
/* @__PURE__ */ jsxRuntime.jsx(PaginationItem, { className: clsx(page === 1 && "cursor-no-drop", "rounded-tl-lg rounded-bl-lg "), onClick: handlePrev, children: /* @__PURE__ */ jsxRuntime.jsx(index.IoIosArrowBack, { className: tailwindMerge.twMerge("fill-default-500", clsx(page === 1 && "fill-default-300")) }) }),
|
|
283
283
|
dataPageFormat.map((el, i) => /* @__PURE__ */ jsxRuntime.jsx(PaginationItem, { text: el, active: page === el, color, onClick: () => handleChange(el), className: "border-l border-input " }, i)),
|
|
284
284
|
/* @__PURE__ */ jsxRuntime.jsx(PaginationItem, { className: clsx("border-l border-input rounded-tr-lg rounded-br-lg ", (page === totalPagination || totalPagination === 0) && "cursor-no-drop"), onClick: handleNext, children: /* @__PURE__ */ jsxRuntime.jsx(index.IoIosArrowBack, { className: tailwindMerge.twMerge("fill-default-500 transform rotate-180 ", clsx((page === totalPagination || totalPagination === 0) && "fill-default-300")) }) })
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs.js","sources":["../../src/components/pagination/pagination-item.tsx","../../src/components/pagination/function/index.ts","../../src/components/pagination/pagination.tsx","../../src/components/pagination/hook/use-pagination.tsx"],"sourcesContent":["import { twMerge } from \"tailwind-merge\";\nimport { type PaginationItemProps } from \"./interface/pagination.interface\";\nimport clsx from \"clsx\";\n\nexport const PaginationItem = ({ className, color = \"primary\", active, children, text, onClick }: PaginationItemProps) => {\n\tconst bgClass = clsx(\n\t\t{\n\t\t\t\"bg-primary\": color === \"primary\" && active,\n\t\t\t\"bg-success\": color === \"success\" && active,\n\t\t\t\"bg-danger\": color === \"danger\" && active,\n\t\t\t\"bg-warning\": color === \"warning\" && active,\n\t\t\t\"bg-default\": color === \"default\" && active,\n \"dark:hover:bg-default-200 dark:hover:text-default-800\": !active,\n\t\t},\n\t);\n\tconst colorClass = twMerge(\n\t\tclsx(\"text-sm\", {\n\t\t\t\"group-hover:text-primary-500 dark:group-hover:text-default-800\": color === \"primary\" && !active,\n\t\t\t\"group-hover:text-success-500 dark:group-hover:text-default-800\": color === \"success\" && !active,\n\t\t\t\"group-hover:text-danger-500 dark:group-hover:text-default-800\": color === \"danger\" && !active,\n\t\t\t\"group-hover:text-warning-500 dark:group-hover:text-default-800\": color === \"warning\" && !active,\n\t\t\t\"group-hover:text-default-500 dark:group-hover:text-default-800\": color === \"default\" && !active,\n\n\t\t\t\"text-default-foreground\": active && color === \"default\",\n\t\t\t\"text-primary-foreground\": active && color === \"primary\",\n\t\t\t\"text-success-foreground\": active && color === \"success\",\n\t\t\t\"text-danger-foreground\": active && color === \"danger\",\n\t\t\t\"text-warning-foreground\": active && color === \"warning\",\n\t\t}),\n\t);\n\n\treturn (\n\t\t<div className={twMerge(\"w-[33px] h-[32px] flex items-center justify-center group \", bgClass, className)} onClick={onClick}>\n\t\t\t{children || <p className={colorClass}>{text}</p>}\n\t\t</div>\n\t);\n};\n","import { type PaginationValueProps } from \"../interface/pagination-share.interface\";\n\nexport const FormatPagePagination = ({\n\tpage,\n\ttotal,\n\tsiblings = 1,\n}: PaginationValueProps) => {\n\tconst totalPageNoInArray = 7 + siblings;\n\n\tif (totalPageNoInArray >= total) {\n\t\treturn Array.from({ length: total }, (_, i) => i + 1);\n\t}\n\n\tconst leftSiblingsIndex = Math.max(page - siblings, 1);\n\tconst rightSiblingsIndex = Math.min(page + siblings, total);\n\n\tconst showLeftDots = leftSiblingsIndex > 2;\n\tconst showRightDots = rightSiblingsIndex < total - 2;\n\n\tif (!showLeftDots && showRightDots) {\n\t\tconst leftItemsCount = 3 + 2 * siblings;\n\t\tconst leftRange = Array.from({ length: leftItemsCount }, (_, i) => i + 1);\n\t\treturn [...leftRange, \"...\", total];\n\t} else if (showLeftDots && !showRightDots) {\n\t\tconst rightItemsCount = 3 + 2 * siblings;\n\t\tconst rightRange = Array.from(\n\t\t\t{ length: rightItemsCount },\n\t\t\t(_, i) => total - rightItemsCount + i + 1\n\t\t);\n\t\treturn [1, \"...\", ...rightRange];\n\t} else {\n\t\tconst middleRange = Array.from(\n\t\t\t{ length: rightSiblingsIndex - leftSiblingsIndex + 1 },\n\t\t\t(_, i) => leftSiblingsIndex + i\n\t\t);\n\t\treturn [1, \"...\", ...middleRange, \"...\", total];\n\t}\n};\n\nexport const FormatLimitPagination = (data: number[]) => {\n\treturn data.map((el) => {\n\t\treturn {\n\t\t\tid: el,\n\t\t\tname: el,\n\t\t};\n\t});\n};\n","import { twMerge } from \"tailwind-merge\";\nimport { IoIosArrowBack } from \"react-icons/io\";\nimport { PaginationItem } from \"./pagination-item\";\nimport { type PaginationProps } from \"./interface/pagination.interface\";\nimport { FormatLimitPagination, FormatPagePagination } from \"./function\";\nimport clsx from \"clsx\";\nimport { Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectTrigger, SelectValue } from \"../ui\";\n\nexport const Pagination = ({\n\tclassName,\n\tcolor = \"primary\",\n\n\ttotal,\n\tlimit = 20,\n\tpage = 1,\n\tsiblings = 1,\n\tisLimitSelect = true,\n\tdataLimit = [10, 15, 20, 50, 100, 200],\n\tonChange,\n\ttranslate = {\n\t\tselectLimit: \"Limites\",\n\t\trowPerPage: \"Filas por pagina\",\n\t\tof: \"de\",\n\t},\n}: PaginationProps) => {\n\tconst totalPagination = Math.ceil(total / limit);\n\n\tconst dataPageFormat = FormatPagePagination({\n\t\tlimit,\n\t\tpage,\n\t\tsiblings,\n\t\ttotal: totalPagination,\n\t});\n\tconst dataLimitFormat = FormatLimitPagination(dataLimit);\n\n\tconst handleChange = (value: number | string | null) => {\n\t\tif (value === \"...\" || value === null) return;\n\t\tif (onChange)\n\t\t\tonChange({\n\t\t\t\tlimit,\n\t\t\t\tpage: Number(value),\n\t\t\t});\n\t};\n\n\tconst handlePrev = () => {\n\t\tif (page === 1) return;\n\n\t\tif (onChange)\n\t\t\tonChange({\n\t\t\t\tlimit,\n\t\t\t\tpage: page - 1,\n\t\t\t});\n\t};\n\n\tconst handleNext = () => {\n\t\tif (page === totalPagination || totalPagination === 0) return;\n\n\t\tif (onChange)\n\t\t\tonChange({\n\t\t\t\tlimit,\n\t\t\t\tpage: page + 1,\n\t\t\t});\n\t};\n\n\tconst handleChangeSelect = (value: string) => {\n\t\tif (onChange)\n\t\t\tonChange({\n\t\t\t\tpage,\n\t\t\t\tlimit: value ? Number(value) : 20,\n\t\t\t});\n\t};\n\n\treturn (\n\t\t<div className={twMerge(\"flex justify-between gap-x-2 items-center\", className)}>\n\t\t\t{isLimitSelect ? (\n\t\t\t\t<div className=\"flex items-center gap-x-2.5\">\n\t\t\t\t\t<div>\n\t\t\t\t\t\t<span className=\"text-sm text-default-500\">{translate?.rowPerPage || \"Filas por pagina\"}:</span>\n\t\t\t\t\t</div>\n\n\t\t\t\t\t<Select value={limit?.toString()} onValueChange={handleChangeSelect}>\n\t\t\t\t\t\t<SelectTrigger className=\"min-w-20\">\n\t\t\t\t\t\t\t<SelectValue placeholder=\"Select limit\" />\n\t\t\t\t\t\t</SelectTrigger>\n\t\t\t\t\t\t<SelectContent>\n\t\t\t\t\t\t\t<SelectGroup>\n\t\t\t\t\t\t\t\t<SelectLabel>{translate?.selectLimit || \"Limites\"}</SelectLabel>\n\t\t\t\t\t\t\t\t{dataLimitFormat.map((item) => (\n\t\t\t\t\t\t\t\t\t<SelectItem key={item.id} value={item.id?.toString()}>\n\t\t\t\t\t\t\t\t\t\t{item.name}\n\t\t\t\t\t\t\t\t\t</SelectItem>\n\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t</SelectGroup>\n\t\t\t\t\t\t</SelectContent>\n\t\t\t\t\t</Select>\n\n\t\t\t\t\t<div className=\"text-sm text-default-500\">\n\t\t\t\t\t\t<span className=\"text-default-500\">{`${page} - ${limit}`}</span> {translate?.of || \"de\"}{\" \"}\n\t\t\t\t\t\t<span className=\"text-default-500\">{total}</span>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t) : null}\n\n\t\t\t{totalPagination > 1 && (\n\t\t\t\t<div className=\"flex flex-nowrap h-fit max-w-fit relative items-center overflow-visible gap-0 border border-input rounded-lg cursor-pointer dark:bg-default-100\">\n\t\t\t\t\t<PaginationItem className={clsx(page === 1 && \"cursor-no-drop\", \"rounded-tl-lg rounded-bl-lg \")} onClick={handlePrev}>\n\t\t\t\t\t\t<IoIosArrowBack className={twMerge(\"fill-default-500\", clsx(page === 1 && \"fill-default-300\"))} />\n\t\t\t\t\t</PaginationItem>\n\n\t\t\t\t\t{dataPageFormat.map((el, i) => (\n\t\t\t\t\t\t<PaginationItem\n\t\t\t\t\t\t\tkey={i}\n\t\t\t\t\t\t\ttext={el}\n\t\t\t\t\t\t\tactive={page === el}\n\t\t\t\t\t\t\tcolor={color}\n\t\t\t\t\t\t\tonClick={() => handleChange(el)}\n\t\t\t\t\t\t\tclassName=\"border-l border-input \"\n\t\t\t\t\t\t/>\n\t\t\t\t\t))}\n\n\t\t\t\t\t<PaginationItem\n\t\t\t\t\t\tclassName={clsx(\n\t\t\t\t\t\t\t\"border-l border-input rounded-tr-lg rounded-br-lg \",\n\t\t\t\t\t\t\t(page === totalPagination || totalPagination === 0) && \"cursor-no-drop\",\n\t\t\t\t\t\t)}\n\t\t\t\t\t\tonClick={handleNext}\n\t\t\t\t\t>\n\t\t\t\t\t\t<IoIosArrowBack\n\t\t\t\t\t\t\tclassName={twMerge(\n\t\t\t\t\t\t\t\t\"fill-default-500 transform rotate-180 \",\n\t\t\t\t\t\t\t\tclsx((page === totalPagination || totalPagination === 0) && \"fill-default-300\"),\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</PaginationItem>\n\t\t\t\t</div>\n\t\t\t)}\n\t\t</div>\n\t);\n};\n","import { useCallback, useState } from \"react\";\nimport { type PaginationHookProps, type UsePaginationProps } from \"../interface/pagination.interface\";\nimport { type PaginationSetValueProps } from \"../interface/pagination-share.interface\";\n\nexport const usePagination = ({ initialPage = 1, initialLimit = 20 }: UsePaginationProps): PaginationHookProps => {\n\tconst [pageCurrent, setPageCurrent] = useState<number>(initialPage);\n\tconst [limitCurrent, setLimitCurrent] = useState<number>(initialLimit);\n\n\tconst handleSetPagination = useCallback(\n\t\t({ page, limit }: PaginationSetValueProps) => {\n\t\t\tif (page !== pageCurrent) setPageCurrent(page);\n\t\t\tif (limit !== limitCurrent) setLimitCurrent(limit);\n\t\t},\n\t\t[limitCurrent, pageCurrent],\n\t);\n\n\treturn {\n\t\thandleSetPagination,\n\t\tpage: pageCurrent,\n\t\tlimit: limitCurrent,\n\t};\n};\n"],"names":["PaginationItem","t0","$","_c","className","color","t1","active","children","text","onClick","undefined","colorClass","t2","bgClass","clsx","t3","twMerge","jsx","t4","FormatPagePagination","page","total","siblings","totalPageNoInArray","Array","from","length","_","i","leftSiblingsIndex","Math","max","rightSiblingsIndex","min","showLeftDots","showRightDots","leftItemsCount","leftRange","rightItemsCount","rightRange","middleRange","FormatLimitPagination","data","map","el","id","name","Pagination","limit","isLimitSelect","t5","dataLimit","t6","onChange","translate","t7","t10","t8","t9","t11","selectLimit","rowPerPage","of","totalPagination","ceil","dataPageFormat","dataLimitFormat","t12","value","Number","handleChange","t13","handlePrev","t14","handleNext","t15","value_0","handleChangeSelect","jsxs","Select","toString","SelectTrigger","SelectValue","SelectContent","SelectGroup","SelectLabel","_temp","IoIosArrowBack","item","SelectItem","usePagination","initialPage","initialLimit","pageCurrent","setPageCurrent","useState","limitCurrent","setLimitCurrent","handleSetPagination"],"mappings":";;;;;;;;;;;;AAIO,MAAMA,iBAAiBC,CAAAA,OAAA;AAAA,QAAAC,IAAAC,gBAAAA,EAAA,EAAA;AAAC,QAAA;AAAA,IAAAC;AAAAA,IAAAC,OAAAC;AAAAA,IAAAC;AAAAA,IAAAC;AAAAA,IAAAC;AAAAA,IAAAC;AAAAA,EAAAA,IAAAT;AAAa,QAAAI,QAAAC,OAAAK,SAAA,YAAAL;AAAiB,MAAAM;AAAA,MAAAC;AAAA,MAAAX,EAAA,CAAA,MAAAK,UAAAL,SAAAE,aAAAF,EAAA,CAAA,MAAAG,OAAA;AAC5D,UAAAS,UAAgBC,KACf;AAAA,MAAA,cACeV,UAAU,aAAVE;AAAAA,MAA6B,cAC7BF,UAAU,aAAVE;AAAAA,MAA6B,aAC9BF,UAAU,YAAVE;AAAAA,MAA4B,cAC3BF,UAAU,aAAVE;AAAAA,MAA6B,cAC7BF,UAAU,aAAVE;AAAAA,MAA6B,yDACwB,CAACA;AAAAA,IAAAA,CAEtE;AAAE,QAAAS;AAAA,QAAAd,EAAA,CAAA,MAAAK,UAAAL,SAAAG,OAAA;AACiBW,YAAAC,cAAAA,QAClBF,KAAK,WAAW;AAAA,QAAA,kEACmDV,UAAU,aAAV,CAAwBE;AAAAA,QAAM,kEAC9BF,UAAU,aAAV,CAAwBE;AAAAA,QAAM,iEAC/BF,UAAU,YAAV,CAAuBE;AAAAA,QAAM,kEAC5BF,UAAU,aAAV,CAAwBE;AAAAA,QAAM,kEAC9BF,UAAU,aAAV,CAAwBE;AAAAA,QAAM,2BAErEA,UAAUF,UAAU;AAAA,QAAS,2BAC7BE,UAAUF,UAAU;AAAA,QAAS,2BAC7BE,UAAUF,UAAU;AAAA,QAAS,0BAC9BE,UAAUF,UAAU;AAAA,QAAQ,2BAC3BE,UAAUF,UAAU;AAAA,MAAA,CAC/C,CACF;AAACH,aAAAK;AAAAL,aAAAG;AAAAH,aAAAc;AAAAA,IAAA,OAAA;AAAAA,YAAAd,EAAA,CAAA;AAAA,IAAA;AAdDU,iBAAmBI;AAiBFH,SAAAI,cAAAA,QAAQ,6DAA6DH,SAASV,SAAS;AAACF,WAAAK;AAAAL,WAAAE;AAAAF,WAAAG;AAAAH,WAAAU;AAAAV,WAAAW;AAAAA,EAAA,OAAA;AAAAD,iBAAAV,EAAA,CAAA;AAAAW,SAAAX,EAAA,CAAA;AAAA,EAAA;AAAA,MAAAc;AAAA,MAAAd,EAAA,CAAA,MAAAM,YAAAN,SAAAU,cAAAV,EAAA,EAAA,MAAAO,MAAA;AACtGO,SAAAR,YAAYU,2BAAAA,IAAA,KAAA,EAAcN,WAAAA,YAAaH,UAAAA,MAAK;AAAIP,WAAAM;AAAAN,WAAAU;AAAAV,YAAAO;AAAAP,YAAAc;AAAAA,EAAA,OAAA;AAAAA,SAAAd,EAAA,EAAA;AAAA,EAAA;AAAA,MAAAiB;AAAA,MAAAjB,EAAA,EAAA,MAAAQ,WAAAR,UAAAW,MAAAX,EAAA,EAAA,MAAAc,IAAA;AADlDG,iDAAgB,WAAAN,IAAmGH,SACjHM,UAAAA,IACF;AAAMd,YAAAQ;AAAAR,YAAAW;AAAAX,YAAAc;AAAAd,YAAAiB;AAAAA,EAAA,OAAA;AAAAA,SAAAjB,EAAA,EAAA;AAAA,EAAA;AAAA,SAFNiB;AAEM;AChCD,MAAMC,uBAAuBA,CAAC;AAAA,EACpCC;AAAAA,EACAC;AAAAA,EACAC,WAAW;AACU,MAAM;AAC3B,QAAMC,qBAAqB,IAAID;AAE/B,MAAIC,sBAAsBF,OAAO;AAChC,WAAOG,MAAMC,KAAK;AAAA,MAAEC,QAAQL;AAAAA,IAAAA,GAAS,CAACM,GAAGC,MAAMA,IAAI,CAAC;AAAA,EACrD;AAEA,QAAMC,oBAAoBC,KAAKC,IAAIX,OAAOE,UAAU,CAAC;AACrD,QAAMU,qBAAqBF,KAAKG,IAAIb,OAAOE,UAAUD,KAAK;AAE1D,QAAMa,eAAeL,oBAAoB;AACzC,QAAMM,gBAAgBH,qBAAqBX,QAAQ;AAEnD,MAAI,CAACa,gBAAgBC,eAAe;AACnC,UAAMC,iBAAiB,IAAI,IAAId;AAC/B,UAAMe,YAAYb,MAAMC,KAAK;AAAA,MAAEC,QAAQU;AAAAA,IAAAA,GAAkB,CAACT,GAAGC,MAAMA,IAAI,CAAC;AACxE,WAAO,CAAC,GAAGS,WAAW,OAAOhB,KAAK;AAAA,EACnC,WAAWa,gBAAgB,CAACC,eAAe;AAC1C,UAAMG,kBAAkB,IAAI,IAAIhB;AAChC,UAAMiB,aAAaf,MAAMC,KACxB;AAAA,MAAEC,QAAQY;AAAAA,IAAAA,GACV,CAACX,GAAGC,MAAMP,QAAQiB,kBAAkBV,IAAI,CACzC;AACA,WAAO,CAAC,GAAG,OAAO,GAAGW,UAAU;AAAA,EAChC,OAAO;AACN,UAAMC,cAAchB,MAAMC,KACzB;AAAA,MAAEC,QAAQM,qBAAqBH,oBAAoB;AAAA,IAAA,GACnD,CAACF,GAAGC,MAAMC,oBAAoBD,CAC/B;AACA,WAAO,CAAC,GAAG,OAAO,GAAGY,aAAa,OAAOnB,KAAK;AAAA,EAC/C;AACD;AAEO,MAAMoB,wBAAwBA,CAACC,SAAmB;AACxD,SAAOA,KAAKC,IAAKC,CAAAA,OAAO;AACvB,WAAO;AAAA,MACNC,IAAID;AAAAA,MACJE,MAAMF;AAAAA,IAAAA;AAAAA,EAER,CAAC;AACF;ACtCO,MAAMG,aAAa/C,CAAAA,OAAA;AAAA,QAAAC,IAAAC,gBAAAA,EAAA,EAAA;AAAC,QAAA;AAAA,IAAAC;AAAAA,IAAAC,OAAAC;AAAAA,IAAAgB;AAAAA,IAAA2B,OAAApC;AAAAA,IAAAQ,MAAAL;AAAAA,IAAAO,UAAAJ;AAAAA,IAAA+B,eAAAC;AAAAA,IAAAC,WAAAC;AAAAA,IAAAC;AAAAA,IAAAC,WAAAC;AAAAA,EAAAA,IAAAvD;AAE1B,QAAAI,QAAAC,OAAAK,SAAA,YAAAL;AAGA,QAAA2C,QAAApC,OAAAF,SAAA,KAAAE;AACA,QAAAQ,OAAAL,OAAAL,SAAA,IAAAK;AACA,QAAAO,WAAAJ,OAAAR,SAAA,IAAAQ;AACA,QAAA+B,gBAAAC,OAAAxC,SAAA,OAAAwC;AAAoB,MAAAM;AAAA,MAAAC;AAAA,MAAAC;AAAA,MAAAzD,EAAA,CAAA,MAAAE,aAAAF,SAAAG,SAAAH,EAAA,CAAA,MAAAgD,iBAAAhD,SAAA+C,SAAA/C,EAAA,CAAA,MAAAoD,YAAApD,SAAAmB,QAAAnB,EAAA,CAAA,MAAAqB,YAAArB,EAAA,CAAA,MAAAmD,MAAAnD,EAAA,CAAA,MAAAsD,MAAAtD,SAAAoB,OAAA;AACpB,UAAA8B,YAAAC,OAAA1C,SAAA,CAAa,IAAI,IAAI,IAAI,IAAI,KAAK,GAAG,IAArC0C;AAAsC,QAAAO;AAAA,QAAA1D,UAAAsD,IAAA;AAEtCI,aAAAJ,OAAA7C,SAAA;AAAA,QAAAkD,aACc;AAAA,QAASC,YACV;AAAA,QAAkBC,IAC1B;AAAA,MAAA,IAHLP;AAICtD,cAAAsD;AAAAtD,cAAA0D;AAAAA,IAAA,OAAA;AAAAA,aAAA1D,EAAA,EAAA;AAAA,IAAA;AAJD,UAAAqD,YAAAK;AAMA,UAAAI,kBAAwBjC,KAAIkC,KAAM3C,QAAQ2B,KAAK;AAE/C,UAAAiB,iBAAuB9C,qBAAqB;AAAA,MAAAC;AAAAA,MAAAE;AAAAA,MAAAD,OAIpC0C;AAAAA,IAAAA,CACP;AACD,UAAAG,kBAAwBzB,sBAAsBU,SAAS;AAAE,QAAAgB;AAAA,QAAAlE,EAAA,EAAA,MAAA+C,SAAA/C,UAAAoD,UAAA;AAEpCc,YAAAC,CAAAA,UAAA;AACpB,YAAIA,UAAU,SAASA,UAAU,MAAI;AAAA;AAAA,QAAA;AACrC,YAAIf,UAAQ;AACXA,mBAAS;AAAA,YAAAL;AAAAA,YAAA5B,MAEFiD,OAAOD,KAAK;AAAA,UAAA,CAClB;AAAA,QAAC;AAAA,MAAC;AACJnE,cAAA+C;AAAA/C,cAAAoD;AAAApD,cAAAkE;AAAAA,IAAA,OAAA;AAAAA,YAAAlE,EAAA,EAAA;AAAA,IAAA;AAPD,UAAAqE,eAAqBH;AAOnB,QAAAI;AAAA,QAAAtE,EAAA,EAAA,MAAA+C,SAAA/C,UAAAoD,YAAApD,EAAA,EAAA,MAAAmB,MAAA;AAEiBmD,YAAAA,MAAA;AAClB,YAAInD,SAAS,GAAC;AAAA;AAAA,QAAA;AAEd,YAAIiC,UAAQ;AACXA,mBAAS;AAAA,YAAAL;AAAAA,YAAA5B,MAEFA,OAAO;AAAA,UAAA,CACb;AAAA,QAAC;AAAA,MAAC;AACJnB,cAAA+C;AAAA/C,cAAAoD;AAAApD,cAAAmB;AAAAnB,cAAAsE;AAAAA,IAAA,OAAA;AAAAA,YAAAtE,EAAA,EAAA;AAAA,IAAA;AARD,UAAAuE,aAAmBD;AAQjB,QAAAE;AAAA,QAAAxE,EAAA,EAAA,MAAA+C,SAAA/C,EAAA,EAAA,MAAAoD,YAAApD,EAAA,EAAA,MAAAmB,QAAAnB,UAAA8D,iBAAA;AAEiBU,YAAAA,MAAA;AAClB,YAAIrD,SAAS2C,mBAAmBA,oBAAoB,GAAC;AAAA;AAAA,QAAA;AAErD,YAAIV,UAAQ;AACXA,mBAAS;AAAA,YAAAL;AAAAA,YAAA5B,MAEFA,OAAO;AAAA,UAAA,CACb;AAAA,QAAC;AAAA,MAAC;AACJnB,cAAA+C;AAAA/C,cAAAoD;AAAApD,cAAAmB;AAAAnB,cAAA8D;AAAA9D,cAAAwE;AAAAA,IAAA,OAAA;AAAAA,YAAAxE,EAAA,EAAA;AAAA,IAAA;AARD,UAAAyE,aAAmBD;AAQjB,QAAAE;AAAA,QAAA1E,EAAA,EAAA,MAAAoD,YAAApD,UAAAmB,MAAA;AAEyBuD,YAAAC,CAAAA,YAAA;AAC1B,YAAIvB,UAAQ;AACXA,mBAAS;AAAA,YAAAjC;AAAAA,YAAA4B,OAEDoB,UAAQC,OAAOD,OAAU,IAAzB;AAAA,UAAA,CACP;AAAA,QAAC;AAAA,MAAC;AACJnE,cAAAoD;AAAApD,cAAAmB;AAAAnB,cAAA0E;AAAAA,IAAA,OAAA;AAAAA,YAAA1E,EAAA,EAAA;AAAA,IAAA;AAND,UAAA4E,qBAA2BF;AAMzB,QAAA1E,UAAAE,WAAA;AAGesD,WAAAzC,cAAAA,QAAQ,6CAA6Cb,SAAS;AAACF,cAAAE;AAAAF,cAAAwD;AAAAA,IAAA,OAAA;AAAAA,WAAAxD,EAAA,EAAA;AAAA,IAAA;AAC7EyD,SAAAT,gBACA6B,gCAAA,OAAA,EAAe,WAAA,+BACd,UAAA;AAAA,MAAA7D,wCACC,UAAA6D,2BAAAA,KAAA,QAAA,EAAgB,WAAA,4BAA4BxB,UAAAA;AAAAA,QAAAA,WAASO,cAAT;AAAA,QAA4C;AAAA,MAAA,EAAA,CAAC,EAAA,CAC1F;AAAA,sCAECkB,OAAAA,QAAA,EAAc,OAAA/B,OAAKgC,YAA6BH,eAAAA,oBAChD,UAAA;AAAA,QAAA5D,2BAAAA,IAACgE,OAAAA,iBAAwB,WAAA,YACxB,yCAACC,OAAAA,aAAA,EAAwB,aAAA,mBAC1B;AAAA,QACAjE,2BAAAA,IAACkE,OAAAA,eAAA,EACA,UAAAL,2BAAAA,KAACM,OAAAA,aAAA,EACA,UAAA;AAAA,UAAAnE,2BAAAA,IAACoE,OAAAA,aAAA,EAAa/B,UAAAA,WAASM,eAAT,WAAoC;AAAA,UACjDM,gBAAevB,IAAK2C,KAIpB;AAAA,QAAA,EAAA,CACF,EAAA,CACD;AAAA,MAAA,GACD;AAAA,MAEAR,2BAAAA,KAAA,OAAA,EAAe,WAAA,4BACd,UAAA;AAAA,QAAA7D,2BAAAA,IAAA,UAAgB,WAAA,oBAAoB,aAAGG,IAAI,MAAM4B,KAAK,GAAA,CAAG;AAAA,QAAO;AAAA,QAAEM,WAASQ,MAAT;AAAA;QAClE7C,2BAAAA,IAAA,QAAA,EAAgB,WAAA,oBAAoBI,UAAAA,MAAAA,CAAM;AAAA,MAAA,EAAA,CAC3C;AAAA,IAAA,EAAA,CACD,IA1BA;AA6BAmC,UAAAO,kBAAkB,KAClBe,2BAAAA,cAAe,WAAA,mJACd,UAAA;AAAA,MAAA7D,2BAAAA,IAAC,gBAAA,EAA0B,WAAAH,KAAKM,SAAS,KAAT,kBAAgC,8BAA8B,GAAYoD,qBACzG,yCAACe,sBAAA,EAA0B,WAAAvE,cAAAA,QAAQ,oBAAoBF,KAAKM,SAAS,KAAT,kBAAgC,CAAC,EAAA,CAAC,EAAA,CAC/F;AAAA,MAEC6C,eAActB,IAAK,CAAAC,IAAAhB,MACnBX,2BAAAA,IAAC,gBAAA,EAEM2B,MAAAA,IACE,QAAAxB,SAASwB,IACVxC,OACE,SAAA,MAAMkE,aAAa1B,EAAE,GACpB,WAAA,4BALLhB,EAON;AAAA,MAEDX,2BAAAA,IAAC,gBAAA,EACW,WAAAH,KACV,uDACCM,SAAS2C,mBAAmBA,oBAAoB,MAAjD,gBACD,GACSW,qBAET,yCAACa,MAAAA,gBAAA,EACW,WAAAvE,cAAAA,QACV,0CACAF,MAAMM,SAAS2C,mBAAmBA,oBAAoB,MAAjD,kBAAyE,CAC/E,EAAA,CAAC,EAAA,CAEH;AAAA,IAAA,GACD;AACA9D,WAAAE;AAAAF,WAAAG;AAAAH,WAAAgD;AAAAhD,WAAA+C;AAAA/C,WAAAoD;AAAApD,WAAAmB;AAAAnB,WAAAqB;AAAArB,WAAAmD;AAAAnD,WAAAsD;AAAAtD,WAAAoB;AAAApB,YAAAuD;AAAAvD,YAAAwD;AAAAxD,YAAAyD;AAAAA,EAAA,OAAA;AAAAF,UAAAvD,EAAA,EAAA;AAAAwD,SAAAxD,EAAA,EAAA;AAAAyD,SAAAzD,EAAA,EAAA;AAAA,EAAA;AAAA,MAAA0D;AAAA,MAAA1D,EAAA,EAAA,MAAAuD,OAAAvD,UAAAwD,MAAAxD,EAAA,EAAA,MAAAyD,IAAA;AA9DFC,UAAAmB,2BAAAA,KAAA,OAAA,EAAgB,WAAArB,IACdC,UAAAA;AAAAA,MAAAA;AAAAA,MA6BAF;AAAAA,IAAAA,GAiCF;AAAMvD,YAAAuD;AAAAvD,YAAAwD;AAAAxD,YAAAyD;AAAAzD,YAAA0D;AAAAA,EAAA,OAAA;AAAAA,UAAA1D,EAAA,EAAA;AAAA,EAAA;AAAA,SA/DN0D;AA+DM;AAhIkB,SAAA2B,MAAAE,MAAA;AAAA,SAgFjBvE,2BAAAA,IAACwE,OAAAA,YAAA,EAAgC,OAAAD,KAAI3C,IAAamC,YAChDQ,UAAAA,KAAI1C,KAAAA,GADW0C,KAAI3C,EAErB;AAAa;ACtFf,MAAM6C,gBAAgB1F,CAAAA,OAAA;AAAA,QAAAC,IAAAC,gBAAAA,EAAA,CAAA;AAAC,QAAA;AAAA,IAAAyF,aAAAtF;AAAAA,IAAAuF,cAAAhF;AAAAA,EAAAA,IAAAZ;AAAE,QAAA2F,cAAAtF,OAAAK,SAAA,IAAAL;AAAiB,QAAAuF,eAAAhF,OAAAF,SAAA,KAAAE;AAChD,QAAA,CAAAiF,aAAAC,cAAA,IAAsCC,MAAAA,SAAiBJ,WAAW;AAClE,QAAA,CAAAK,cAAAC,eAAA,IAAwCF,MAAAA,SAAiBH,YAAY;AAAE,MAAA7E;AAAA,MAAAd,EAAA,CAAA,MAAA+F,gBAAA/F,SAAA4F,aAAA;AAGtE9E,SAAAG,CAAAA,QAAA;AAAC,YAAA;AAAA,QAAAE;AAAAA,QAAA4B;AAAAA,MAAAA,IAAA9B;AACA,UAAIE,SAASyE,aAAW;AAAEC,uBAAe1E,IAAI;AAAA,MAAC;AAC9C,UAAI4B,UAAUgD,cAAY;AAAEC,wBAAgBjD,KAAK;AAAA,MAAC;AAAA,IAAC;AACnD/C,WAAA+F;AAAA/F,WAAA4F;AAAA5F,WAAAc;AAAAA,EAAA,OAAA;AAAAA,SAAAd,EAAA,CAAA;AAAA,EAAA;AAJF,QAAAiG,sBAA4BnF;AAM1B,MAAAG;AAAA,MAAAjB,EAAA,CAAA,MAAAiG,uBAAAjG,SAAA+F,gBAAA/F,EAAA,CAAA,MAAA4F,aAAA;AAEK3E,SAAA;AAAA,MAAAgF;AAAAA,MAAA9E,MAEAyE;AAAAA,MAAW7C,OACVgD;AAAAA,IAAAA;AACP/F,WAAAiG;AAAAjG,WAAA+F;AAAA/F,WAAA4F;AAAA5F,WAAAiB;AAAAA,EAAA,OAAA;AAAAA,SAAAjB,EAAA,CAAA;AAAA,EAAA;AAAA,SAJMiB;AAIN;;;"}
|
|
1
|
+
{"version":3,"file":"index.cjs.js","sources":["../../src/components/pagination/function/index.ts","../../src/components/pagination/pagination-item.tsx","../../src/components/pagination/pagination.tsx","../../src/components/pagination/hook/use-pagination.tsx"],"sourcesContent":["import { type PaginationValueProps } from \"../interface/pagination-share.interface\";\n\nexport const FormatPagePagination = ({\n\tpage,\n\ttotal,\n\tsiblings = 1,\n}: PaginationValueProps) => {\n\tconst totalPageNoInArray = 7 + siblings;\n\n\tif (totalPageNoInArray >= total) {\n\t\treturn Array.from({ length: total }, (_, i) => i + 1);\n\t}\n\n\tconst leftSiblingsIndex = Math.max(page - siblings, 1);\n\tconst rightSiblingsIndex = Math.min(page + siblings, total);\n\n\tconst showLeftDots = leftSiblingsIndex > 2;\n\tconst showRightDots = rightSiblingsIndex < total - 2;\n\n\tif (!showLeftDots && showRightDots) {\n\t\tconst leftItemsCount = 3 + 2 * siblings;\n\t\tconst leftRange = Array.from({ length: leftItemsCount }, (_, i) => i + 1);\n\t\treturn [...leftRange, \"...\", total];\n\t} else if (showLeftDots && !showRightDots) {\n\t\tconst rightItemsCount = 3 + 2 * siblings;\n\t\tconst rightRange = Array.from(\n\t\t\t{ length: rightItemsCount },\n\t\t\t(_, i) => total - rightItemsCount + i + 1\n\t\t);\n\t\treturn [1, \"...\", ...rightRange];\n\t} else {\n\t\tconst middleRange = Array.from(\n\t\t\t{ length: rightSiblingsIndex - leftSiblingsIndex + 1 },\n\t\t\t(_, i) => leftSiblingsIndex + i\n\t\t);\n\t\treturn [1, \"...\", ...middleRange, \"...\", total];\n\t}\n};\n\nexport const FormatLimitPagination = (data: number[]) => {\n\treturn data.map((el) => {\n\t\treturn {\n\t\t\tid: el,\n\t\t\tname: el,\n\t\t};\n\t});\n};\n","import { twMerge } from \"tailwind-merge\";\nimport { type PaginationItemProps } from \"./interface/pagination.interface\";\nimport clsx from \"clsx\";\n\nexport const PaginationItem = ({ className, color = \"primary\", active, children, text, onClick }: PaginationItemProps) => {\n\tconst bgClass = clsx(\n\t\t{\n\t\t\t\"bg-primary\": color === \"primary\" && active,\n\t\t\t\"bg-success\": color === \"success\" && active,\n\t\t\t\"bg-danger\": color === \"danger\" && active,\n\t\t\t\"bg-warning\": color === \"warning\" && active,\n\t\t\t\"bg-default\": color === \"default\" && active,\n \"dark:hover:bg-default-200 dark:hover:text-default-800\": !active,\n\t\t},\n\t);\n\tconst colorClass = twMerge(\n\t\tclsx(\"text-sm\", {\n\t\t\t\"group-hover:text-primary-500 dark:group-hover:text-default-800\": color === \"primary\" && !active,\n\t\t\t\"group-hover:text-success-500 dark:group-hover:text-default-800\": color === \"success\" && !active,\n\t\t\t\"group-hover:text-danger-500 dark:group-hover:text-default-800\": color === \"danger\" && !active,\n\t\t\t\"group-hover:text-warning-500 dark:group-hover:text-default-800\": color === \"warning\" && !active,\n\t\t\t\"group-hover:text-default-500 dark:group-hover:text-default-800\": color === \"default\" && !active,\n\n\t\t\t\"text-default-foreground\": active && color === \"default\",\n\t\t\t\"text-primary-foreground\": active && color === \"primary\",\n\t\t\t\"text-success-foreground\": active && color === \"success\",\n\t\t\t\"text-danger-foreground\": active && color === \"danger\",\n\t\t\t\"text-warning-foreground\": active && color === \"warning\",\n\t\t}),\n\t);\n\n\treturn (\n\t\t<div className={twMerge(\"w-[33px] h-[32px] flex items-center justify-center group \", bgClass, className)} onClick={onClick}>\n\t\t\t{children || <p className={colorClass}>{text}</p>}\n\t\t</div>\n\t);\n};\n","import clsx from \"clsx\";\nimport { IoIosArrowBack } from \"react-icons/io\";\nimport { twMerge } from \"tailwind-merge\";\nimport { Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectTrigger, SelectValue } from \"../ui\";\nimport { FormatLimitPagination, FormatPagePagination } from \"./function\";\nimport { type PaginationProps } from \"./interface/pagination.interface\";\nimport { PaginationItem } from \"./pagination-item\";\n\nexport const Pagination = ({\n\tclassName,\n\tcolor = \"primary\",\n\n\ttotal,\n\tlimit = 20,\n\tpage = 1,\n\tsiblings = 1,\n\tisLimitSelect = true,\n\tdataLimit = [10, 15, 20, 50, 100, 200],\n\tonChange,\n\ttranslate = {\n\t\tselectLimit: \"Limites\",\n\t\trowPerPage: \"Filas por pagina\",\n\t\tof: \"de\",\n\t},\n}: PaginationProps) => {\n\tconst totalPagination = Math.ceil(total / limit);\n\n\tconst dataPageFormat = FormatPagePagination({\n\t\tlimit,\n\t\tpage,\n\t\tsiblings,\n\t\ttotal: totalPagination,\n\t});\n\tconst dataLimitFormat = FormatLimitPagination(dataLimit);\n\n\tconst handleChange = (value: number | string | null) => {\n\t\tif (value === \"...\" || value === null) return;\n\t\tif (onChange)\n\t\t\tonChange({\n\t\t\t\tlimit,\n\t\t\t\tpage: Number(value),\n\t\t\t});\n\t};\n\n\tconst handlePrev = () => {\n\t\tif (page === 1) return;\n\n\t\tif (onChange)\n\t\t\tonChange({\n\t\t\t\tlimit,\n\t\t\t\tpage: page - 1,\n\t\t\t});\n\t};\n\n\tconst handleNext = () => {\n\t\tif (page === totalPagination || totalPagination === 0) return;\n\n\t\tif (onChange)\n\t\t\tonChange({\n\t\t\t\tlimit,\n\t\t\t\tpage: page + 1,\n\t\t\t});\n\t};\n\n\tconst handleChangeSelect = (value: string) => {\n\t\tif (onChange)\n\t\t\tonChange({\n\t\t\t\tpage,\n\t\t\t\tlimit: value ? Number(value) : 20,\n\t\t\t});\n\t};\n\n\treturn (\n\t\t<div className={twMerge(\"flex justify-between gap-x-2 items-center\", className)}>\n\t\t\t{isLimitSelect ? (\n\t\t\t\t<div className=\"flex items-center gap-x-2.5\">\n\t\t\t\t\t<div>\n\t\t\t\t\t\t<span className=\"text-sm text-default-500\">{translate?.rowPerPage || \"Filas por pagina\"}:</span>\n\t\t\t\t\t</div>\n\n\t\t\t\t\t<Select value={limit?.toString()} onValueChange={handleChangeSelect}>\n\t\t\t\t\t\t<SelectTrigger className=\"min-w-20\" radius=\"full\">\n\t\t\t\t\t\t\t<SelectValue placeholder=\"Select limit\" />\n\t\t\t\t\t\t</SelectTrigger>\n\t\t\t\t\t\t<SelectContent>\n\t\t\t\t\t\t\t<SelectGroup>\n\t\t\t\t\t\t\t\t<SelectLabel>{translate?.selectLimit || \"Limites\"}</SelectLabel>\n\t\t\t\t\t\t\t\t{dataLimitFormat.map((item) => (\n\t\t\t\t\t\t\t\t\t<SelectItem key={item.id} value={item.id?.toString()}>\n\t\t\t\t\t\t\t\t\t\t{item.name}\n\t\t\t\t\t\t\t\t\t</SelectItem>\n\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t</SelectGroup>\n\t\t\t\t\t\t</SelectContent>\n\t\t\t\t\t</Select>\n\n\t\t\t\t\t<div className=\"text-sm text-default-500\">\n\t\t\t\t\t\t<span className=\"text-default-500\">{`${page} - ${limit}`}</span> {translate?.of || \"de\"}{\" \"}\n\t\t\t\t\t\t<span className=\"text-default-500\">{total}</span>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t) : null}\n\n\t\t\t{totalPagination > 1 && (\n\t\t\t\t<div className=\"flex flex-nowrap h-fit max-w-fit relative items-center overflow-visible gap-0 border border-input rounded-full cursor-pointer dark:bg-default-100\">\n\t\t\t\t\t<PaginationItem className={clsx(page === 1 && \"cursor-no-drop\", \"rounded-tl-lg rounded-bl-lg \")} onClick={handlePrev}>\n\t\t\t\t\t\t<IoIosArrowBack className={twMerge(\"fill-default-500\", clsx(page === 1 && \"fill-default-300\"))} />\n\t\t\t\t\t</PaginationItem>\n\n\t\t\t\t\t{dataPageFormat.map((el, i) => (\n\t\t\t\t\t\t<PaginationItem\n\t\t\t\t\t\t\tkey={i}\n\t\t\t\t\t\t\ttext={el}\n\t\t\t\t\t\t\tactive={page === el}\n\t\t\t\t\t\t\tcolor={color}\n\t\t\t\t\t\t\tonClick={() => handleChange(el)}\n\t\t\t\t\t\t\tclassName=\"border-l border-input \"\n\t\t\t\t\t\t/>\n\t\t\t\t\t))}\n\n\t\t\t\t\t<PaginationItem\n\t\t\t\t\t\tclassName={clsx(\n\t\t\t\t\t\t\t\"border-l border-input rounded-tr-lg rounded-br-lg \",\n\t\t\t\t\t\t\t(page === totalPagination || totalPagination === 0) && \"cursor-no-drop\",\n\t\t\t\t\t\t)}\n\t\t\t\t\t\tonClick={handleNext}\n\t\t\t\t\t>\n\t\t\t\t\t\t<IoIosArrowBack\n\t\t\t\t\t\t\tclassName={twMerge(\n\t\t\t\t\t\t\t\t\"fill-default-500 transform rotate-180 \",\n\t\t\t\t\t\t\t\tclsx((page === totalPagination || totalPagination === 0) && \"fill-default-300\"),\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</PaginationItem>\n\t\t\t\t</div>\n\t\t\t)}\n\t\t</div>\n\t);\n};\n","import { useCallback, useState } from \"react\";\nimport { type PaginationHookProps, type UsePaginationProps } from \"../interface/pagination.interface\";\nimport { type PaginationSetValueProps } from \"../interface/pagination-share.interface\";\n\nexport const usePagination = ({ initialPage = 1, initialLimit = 20 }: UsePaginationProps): PaginationHookProps => {\n\tconst [pageCurrent, setPageCurrent] = useState<number>(initialPage);\n\tconst [limitCurrent, setLimitCurrent] = useState<number>(initialLimit);\n\n\tconst handleSetPagination = useCallback(\n\t\t({ page, limit }: PaginationSetValueProps) => {\n\t\t\tif (page !== pageCurrent) setPageCurrent(page);\n\t\t\tif (limit !== limitCurrent) setLimitCurrent(limit);\n\t\t},\n\t\t[limitCurrent, pageCurrent],\n\t);\n\n\treturn {\n\t\thandleSetPagination,\n\t\tpage: pageCurrent,\n\t\tlimit: limitCurrent,\n\t};\n};\n"],"names":["FormatPagePagination","page","total","siblings","totalPageNoInArray","Array","from","length","_","i","leftSiblingsIndex","Math","max","rightSiblingsIndex","min","showLeftDots","showRightDots","leftItemsCount","leftRange","rightItemsCount","rightRange","middleRange","FormatLimitPagination","data","map","el","id","name","PaginationItem","t0","$","_c","className","color","t1","active","children","text","onClick","undefined","colorClass","t2","bgClass","clsx","t3","twMerge","jsx","t4","Pagination","limit","isLimitSelect","t5","dataLimit","t6","onChange","translate","t7","t10","t8","t9","t11","selectLimit","rowPerPage","of","totalPagination","ceil","dataPageFormat","dataLimitFormat","t12","value","Number","handleChange","t13","handlePrev","t14","handleNext","t15","value_0","handleChangeSelect","jsxs","Select","toString","SelectTrigger","SelectValue","SelectContent","SelectGroup","SelectLabel","_temp","IoIosArrowBack","item","SelectItem","usePagination","initialPage","initialLimit","pageCurrent","setPageCurrent","useState","limitCurrent","setLimitCurrent","handleSetPagination"],"mappings":"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"}
|
|
@@ -1,13 +1,55 @@
|
|
|
1
1
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { c } from "react/compiler-runtime";
|
|
3
|
-
import { twMerge } from "tailwind-merge";
|
|
4
|
-
import { I as IoIosArrowBack } from "../chunks/index-yJWda6t6.js";
|
|
5
|
-
import { useState } from "react";
|
|
6
3
|
import clsx from "clsx";
|
|
4
|
+
import { I as IoIosArrowBack } from "../chunks/index-yJWda6t6.js";
|
|
5
|
+
import { twMerge } from "tailwind-merge";
|
|
7
6
|
import "../chunks/textarea-BnuHGUcU.js";
|
|
8
7
|
import "../chunks/dialog-DOIA0I8v.js";
|
|
8
|
+
import { useState } from "react";
|
|
9
9
|
import { S as Select, a as SelectTrigger, b as SelectValue, c as SelectContent, d as SelectGroup, e as SelectLabel, f as SelectItem } from "../chunks/select-BR83daEX.js";
|
|
10
10
|
import "../chunks/button-0fwvZJm9.js";
|
|
11
|
+
const FormatPagePagination = ({
|
|
12
|
+
page,
|
|
13
|
+
total,
|
|
14
|
+
siblings = 1
|
|
15
|
+
}) => {
|
|
16
|
+
const totalPageNoInArray = 7 + siblings;
|
|
17
|
+
if (totalPageNoInArray >= total) {
|
|
18
|
+
return Array.from({
|
|
19
|
+
length: total
|
|
20
|
+
}, (_, i) => i + 1);
|
|
21
|
+
}
|
|
22
|
+
const leftSiblingsIndex = Math.max(page - siblings, 1);
|
|
23
|
+
const rightSiblingsIndex = Math.min(page + siblings, total);
|
|
24
|
+
const showLeftDots = leftSiblingsIndex > 2;
|
|
25
|
+
const showRightDots = rightSiblingsIndex < total - 2;
|
|
26
|
+
if (!showLeftDots && showRightDots) {
|
|
27
|
+
const leftItemsCount = 3 + 2 * siblings;
|
|
28
|
+
const leftRange = Array.from({
|
|
29
|
+
length: leftItemsCount
|
|
30
|
+
}, (_, i) => i + 1);
|
|
31
|
+
return [...leftRange, "...", total];
|
|
32
|
+
} else if (showLeftDots && !showRightDots) {
|
|
33
|
+
const rightItemsCount = 3 + 2 * siblings;
|
|
34
|
+
const rightRange = Array.from({
|
|
35
|
+
length: rightItemsCount
|
|
36
|
+
}, (_, i) => total - rightItemsCount + i + 1);
|
|
37
|
+
return [1, "...", ...rightRange];
|
|
38
|
+
} else {
|
|
39
|
+
const middleRange = Array.from({
|
|
40
|
+
length: rightSiblingsIndex - leftSiblingsIndex + 1
|
|
41
|
+
}, (_, i) => leftSiblingsIndex + i);
|
|
42
|
+
return [1, "...", ...middleRange, "...", total];
|
|
43
|
+
}
|
|
44
|
+
};
|
|
45
|
+
const FormatLimitPagination = (data) => {
|
|
46
|
+
return data.map((el) => {
|
|
47
|
+
return {
|
|
48
|
+
id: el,
|
|
49
|
+
name: el
|
|
50
|
+
};
|
|
51
|
+
});
|
|
52
|
+
};
|
|
11
53
|
const PaginationItem = (t0) => {
|
|
12
54
|
const $ = c(16);
|
|
13
55
|
const {
|
|
@@ -83,48 +125,6 @@ const PaginationItem = (t0) => {
|
|
|
83
125
|
}
|
|
84
126
|
return t4;
|
|
85
127
|
};
|
|
86
|
-
const FormatPagePagination = ({
|
|
87
|
-
page,
|
|
88
|
-
total,
|
|
89
|
-
siblings = 1
|
|
90
|
-
}) => {
|
|
91
|
-
const totalPageNoInArray = 7 + siblings;
|
|
92
|
-
if (totalPageNoInArray >= total) {
|
|
93
|
-
return Array.from({
|
|
94
|
-
length: total
|
|
95
|
-
}, (_, i) => i + 1);
|
|
96
|
-
}
|
|
97
|
-
const leftSiblingsIndex = Math.max(page - siblings, 1);
|
|
98
|
-
const rightSiblingsIndex = Math.min(page + siblings, total);
|
|
99
|
-
const showLeftDots = leftSiblingsIndex > 2;
|
|
100
|
-
const showRightDots = rightSiblingsIndex < total - 2;
|
|
101
|
-
if (!showLeftDots && showRightDots) {
|
|
102
|
-
const leftItemsCount = 3 + 2 * siblings;
|
|
103
|
-
const leftRange = Array.from({
|
|
104
|
-
length: leftItemsCount
|
|
105
|
-
}, (_, i) => i + 1);
|
|
106
|
-
return [...leftRange, "...", total];
|
|
107
|
-
} else if (showLeftDots && !showRightDots) {
|
|
108
|
-
const rightItemsCount = 3 + 2 * siblings;
|
|
109
|
-
const rightRange = Array.from({
|
|
110
|
-
length: rightItemsCount
|
|
111
|
-
}, (_, i) => total - rightItemsCount + i + 1);
|
|
112
|
-
return [1, "...", ...rightRange];
|
|
113
|
-
} else {
|
|
114
|
-
const middleRange = Array.from({
|
|
115
|
-
length: rightSiblingsIndex - leftSiblingsIndex + 1
|
|
116
|
-
}, (_, i) => leftSiblingsIndex + i);
|
|
117
|
-
return [1, "...", ...middleRange, "...", total];
|
|
118
|
-
}
|
|
119
|
-
};
|
|
120
|
-
const FormatLimitPagination = (data) => {
|
|
121
|
-
return data.map((el) => {
|
|
122
|
-
return {
|
|
123
|
-
id: el,
|
|
124
|
-
name: el
|
|
125
|
-
};
|
|
126
|
-
});
|
|
127
|
-
};
|
|
128
128
|
const Pagination = (t0) => {
|
|
129
129
|
const $ = c(36);
|
|
130
130
|
const {
|
|
@@ -262,7 +262,7 @@ const Pagination = (t0) => {
|
|
|
262
262
|
":"
|
|
263
263
|
] }) }),
|
|
264
264
|
/* @__PURE__ */ jsxs(Select, { value: limit?.toString(), onValueChange: handleChangeSelect, children: [
|
|
265
|
-
/* @__PURE__ */ jsx(SelectTrigger, { className: "min-w-20", children: /* @__PURE__ */ jsx(SelectValue, { placeholder: "Select limit" }) }),
|
|
265
|
+
/* @__PURE__ */ jsx(SelectTrigger, { className: "min-w-20", radius: "full", children: /* @__PURE__ */ jsx(SelectValue, { placeholder: "Select limit" }) }),
|
|
266
266
|
/* @__PURE__ */ jsx(SelectContent, { children: /* @__PURE__ */ jsxs(SelectGroup, { children: [
|
|
267
267
|
/* @__PURE__ */ jsx(SelectLabel, { children: translate?.selectLimit || "Limites" }),
|
|
268
268
|
dataLimitFormat.map(_temp)
|
|
@@ -276,7 +276,7 @@ const Pagination = (t0) => {
|
|
|
276
276
|
/* @__PURE__ */ jsx("span", { className: "text-default-500", children: total })
|
|
277
277
|
] })
|
|
278
278
|
] }) : null;
|
|
279
|
-
t10 = totalPagination > 1 && /* @__PURE__ */ jsxs("div", { className: "flex flex-nowrap h-fit max-w-fit relative items-center overflow-visible gap-0 border border-input rounded-
|
|
279
|
+
t10 = totalPagination > 1 && /* @__PURE__ */ jsxs("div", { className: "flex flex-nowrap h-fit max-w-fit relative items-center overflow-visible gap-0 border border-input rounded-full cursor-pointer dark:bg-default-100", children: [
|
|
280
280
|
/* @__PURE__ */ jsx(PaginationItem, { className: clsx(page === 1 && "cursor-no-drop", "rounded-tl-lg rounded-bl-lg "), onClick: handlePrev, children: /* @__PURE__ */ jsx(IoIosArrowBack, { className: twMerge("fill-default-500", clsx(page === 1 && "fill-default-300")) }) }),
|
|
281
281
|
dataPageFormat.map((el, i) => /* @__PURE__ */ jsx(PaginationItem, { text: el, active: page === el, color, onClick: () => handleChange(el), className: "border-l border-input " }, i)),
|
|
282
282
|
/* @__PURE__ */ jsx(PaginationItem, { className: clsx("border-l border-input rounded-tr-lg rounded-br-lg ", (page === totalPagination || totalPagination === 0) && "cursor-no-drop"), onClick: handleNext, children: /* @__PURE__ */ jsx(IoIosArrowBack, { className: twMerge("fill-default-500 transform rotate-180 ", clsx((page === totalPagination || totalPagination === 0) && "fill-default-300")) }) })
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.es.js","sources":["../../src/components/pagination/pagination-item.tsx","../../src/components/pagination/function/index.ts","../../src/components/pagination/pagination.tsx","../../src/components/pagination/hook/use-pagination.tsx"],"sourcesContent":["import { twMerge } from \"tailwind-merge\";\nimport { type PaginationItemProps } from \"./interface/pagination.interface\";\nimport clsx from \"clsx\";\n\nexport const PaginationItem = ({ className, color = \"primary\", active, children, text, onClick }: PaginationItemProps) => {\n\tconst bgClass = clsx(\n\t\t{\n\t\t\t\"bg-primary\": color === \"primary\" && active,\n\t\t\t\"bg-success\": color === \"success\" && active,\n\t\t\t\"bg-danger\": color === \"danger\" && active,\n\t\t\t\"bg-warning\": color === \"warning\" && active,\n\t\t\t\"bg-default\": color === \"default\" && active,\n \"dark:hover:bg-default-200 dark:hover:text-default-800\": !active,\n\t\t},\n\t);\n\tconst colorClass = twMerge(\n\t\tclsx(\"text-sm\", {\n\t\t\t\"group-hover:text-primary-500 dark:group-hover:text-default-800\": color === \"primary\" && !active,\n\t\t\t\"group-hover:text-success-500 dark:group-hover:text-default-800\": color === \"success\" && !active,\n\t\t\t\"group-hover:text-danger-500 dark:group-hover:text-default-800\": color === \"danger\" && !active,\n\t\t\t\"group-hover:text-warning-500 dark:group-hover:text-default-800\": color === \"warning\" && !active,\n\t\t\t\"group-hover:text-default-500 dark:group-hover:text-default-800\": color === \"default\" && !active,\n\n\t\t\t\"text-default-foreground\": active && color === \"default\",\n\t\t\t\"text-primary-foreground\": active && color === \"primary\",\n\t\t\t\"text-success-foreground\": active && color === \"success\",\n\t\t\t\"text-danger-foreground\": active && color === \"danger\",\n\t\t\t\"text-warning-foreground\": active && color === \"warning\",\n\t\t}),\n\t);\n\n\treturn (\n\t\t<div className={twMerge(\"w-[33px] h-[32px] flex items-center justify-center group \", bgClass, className)} onClick={onClick}>\n\t\t\t{children || <p className={colorClass}>{text}</p>}\n\t\t</div>\n\t);\n};\n","import { type PaginationValueProps } from \"../interface/pagination-share.interface\";\n\nexport const FormatPagePagination = ({\n\tpage,\n\ttotal,\n\tsiblings = 1,\n}: PaginationValueProps) => {\n\tconst totalPageNoInArray = 7 + siblings;\n\n\tif (totalPageNoInArray >= total) {\n\t\treturn Array.from({ length: total }, (_, i) => i + 1);\n\t}\n\n\tconst leftSiblingsIndex = Math.max(page - siblings, 1);\n\tconst rightSiblingsIndex = Math.min(page + siblings, total);\n\n\tconst showLeftDots = leftSiblingsIndex > 2;\n\tconst showRightDots = rightSiblingsIndex < total - 2;\n\n\tif (!showLeftDots && showRightDots) {\n\t\tconst leftItemsCount = 3 + 2 * siblings;\n\t\tconst leftRange = Array.from({ length: leftItemsCount }, (_, i) => i + 1);\n\t\treturn [...leftRange, \"...\", total];\n\t} else if (showLeftDots && !showRightDots) {\n\t\tconst rightItemsCount = 3 + 2 * siblings;\n\t\tconst rightRange = Array.from(\n\t\t\t{ length: rightItemsCount },\n\t\t\t(_, i) => total - rightItemsCount + i + 1\n\t\t);\n\t\treturn [1, \"...\", ...rightRange];\n\t} else {\n\t\tconst middleRange = Array.from(\n\t\t\t{ length: rightSiblingsIndex - leftSiblingsIndex + 1 },\n\t\t\t(_, i) => leftSiblingsIndex + i\n\t\t);\n\t\treturn [1, \"...\", ...middleRange, \"...\", total];\n\t}\n};\n\nexport const FormatLimitPagination = (data: number[]) => {\n\treturn data.map((el) => {\n\t\treturn {\n\t\t\tid: el,\n\t\t\tname: el,\n\t\t};\n\t});\n};\n","import { twMerge } from \"tailwind-merge\";\nimport { IoIosArrowBack } from \"react-icons/io\";\nimport { PaginationItem } from \"./pagination-item\";\nimport { type PaginationProps } from \"./interface/pagination.interface\";\nimport { FormatLimitPagination, FormatPagePagination } from \"./function\";\nimport clsx from \"clsx\";\nimport { Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectTrigger, SelectValue } from \"../ui\";\n\nexport const Pagination = ({\n\tclassName,\n\tcolor = \"primary\",\n\n\ttotal,\n\tlimit = 20,\n\tpage = 1,\n\tsiblings = 1,\n\tisLimitSelect = true,\n\tdataLimit = [10, 15, 20, 50, 100, 200],\n\tonChange,\n\ttranslate = {\n\t\tselectLimit: \"Limites\",\n\t\trowPerPage: \"Filas por pagina\",\n\t\tof: \"de\",\n\t},\n}: PaginationProps) => {\n\tconst totalPagination = Math.ceil(total / limit);\n\n\tconst dataPageFormat = FormatPagePagination({\n\t\tlimit,\n\t\tpage,\n\t\tsiblings,\n\t\ttotal: totalPagination,\n\t});\n\tconst dataLimitFormat = FormatLimitPagination(dataLimit);\n\n\tconst handleChange = (value: number | string | null) => {\n\t\tif (value === \"...\" || value === null) return;\n\t\tif (onChange)\n\t\t\tonChange({\n\t\t\t\tlimit,\n\t\t\t\tpage: Number(value),\n\t\t\t});\n\t};\n\n\tconst handlePrev = () => {\n\t\tif (page === 1) return;\n\n\t\tif (onChange)\n\t\t\tonChange({\n\t\t\t\tlimit,\n\t\t\t\tpage: page - 1,\n\t\t\t});\n\t};\n\n\tconst handleNext = () => {\n\t\tif (page === totalPagination || totalPagination === 0) return;\n\n\t\tif (onChange)\n\t\t\tonChange({\n\t\t\t\tlimit,\n\t\t\t\tpage: page + 1,\n\t\t\t});\n\t};\n\n\tconst handleChangeSelect = (value: string) => {\n\t\tif (onChange)\n\t\t\tonChange({\n\t\t\t\tpage,\n\t\t\t\tlimit: value ? Number(value) : 20,\n\t\t\t});\n\t};\n\n\treturn (\n\t\t<div className={twMerge(\"flex justify-between gap-x-2 items-center\", className)}>\n\t\t\t{isLimitSelect ? (\n\t\t\t\t<div className=\"flex items-center gap-x-2.5\">\n\t\t\t\t\t<div>\n\t\t\t\t\t\t<span className=\"text-sm text-default-500\">{translate?.rowPerPage || \"Filas por pagina\"}:</span>\n\t\t\t\t\t</div>\n\n\t\t\t\t\t<Select value={limit?.toString()} onValueChange={handleChangeSelect}>\n\t\t\t\t\t\t<SelectTrigger className=\"min-w-20\">\n\t\t\t\t\t\t\t<SelectValue placeholder=\"Select limit\" />\n\t\t\t\t\t\t</SelectTrigger>\n\t\t\t\t\t\t<SelectContent>\n\t\t\t\t\t\t\t<SelectGroup>\n\t\t\t\t\t\t\t\t<SelectLabel>{translate?.selectLimit || \"Limites\"}</SelectLabel>\n\t\t\t\t\t\t\t\t{dataLimitFormat.map((item) => (\n\t\t\t\t\t\t\t\t\t<SelectItem key={item.id} value={item.id?.toString()}>\n\t\t\t\t\t\t\t\t\t\t{item.name}\n\t\t\t\t\t\t\t\t\t</SelectItem>\n\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t</SelectGroup>\n\t\t\t\t\t\t</SelectContent>\n\t\t\t\t\t</Select>\n\n\t\t\t\t\t<div className=\"text-sm text-default-500\">\n\t\t\t\t\t\t<span className=\"text-default-500\">{`${page} - ${limit}`}</span> {translate?.of || \"de\"}{\" \"}\n\t\t\t\t\t\t<span className=\"text-default-500\">{total}</span>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t) : null}\n\n\t\t\t{totalPagination > 1 && (\n\t\t\t\t<div className=\"flex flex-nowrap h-fit max-w-fit relative items-center overflow-visible gap-0 border border-input rounded-lg cursor-pointer dark:bg-default-100\">\n\t\t\t\t\t<PaginationItem className={clsx(page === 1 && \"cursor-no-drop\", \"rounded-tl-lg rounded-bl-lg \")} onClick={handlePrev}>\n\t\t\t\t\t\t<IoIosArrowBack className={twMerge(\"fill-default-500\", clsx(page === 1 && \"fill-default-300\"))} />\n\t\t\t\t\t</PaginationItem>\n\n\t\t\t\t\t{dataPageFormat.map((el, i) => (\n\t\t\t\t\t\t<PaginationItem\n\t\t\t\t\t\t\tkey={i}\n\t\t\t\t\t\t\ttext={el}\n\t\t\t\t\t\t\tactive={page === el}\n\t\t\t\t\t\t\tcolor={color}\n\t\t\t\t\t\t\tonClick={() => handleChange(el)}\n\t\t\t\t\t\t\tclassName=\"border-l border-input \"\n\t\t\t\t\t\t/>\n\t\t\t\t\t))}\n\n\t\t\t\t\t<PaginationItem\n\t\t\t\t\t\tclassName={clsx(\n\t\t\t\t\t\t\t\"border-l border-input rounded-tr-lg rounded-br-lg \",\n\t\t\t\t\t\t\t(page === totalPagination || totalPagination === 0) && \"cursor-no-drop\",\n\t\t\t\t\t\t)}\n\t\t\t\t\t\tonClick={handleNext}\n\t\t\t\t\t>\n\t\t\t\t\t\t<IoIosArrowBack\n\t\t\t\t\t\t\tclassName={twMerge(\n\t\t\t\t\t\t\t\t\"fill-default-500 transform rotate-180 \",\n\t\t\t\t\t\t\t\tclsx((page === totalPagination || totalPagination === 0) && \"fill-default-300\"),\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</PaginationItem>\n\t\t\t\t</div>\n\t\t\t)}\n\t\t</div>\n\t);\n};\n","import { useCallback, useState } from \"react\";\nimport { type PaginationHookProps, type UsePaginationProps } from \"../interface/pagination.interface\";\nimport { type PaginationSetValueProps } from \"../interface/pagination-share.interface\";\n\nexport const usePagination = ({ initialPage = 1, initialLimit = 20 }: UsePaginationProps): PaginationHookProps => {\n\tconst [pageCurrent, setPageCurrent] = useState<number>(initialPage);\n\tconst [limitCurrent, setLimitCurrent] = useState<number>(initialLimit);\n\n\tconst handleSetPagination = useCallback(\n\t\t({ page, limit }: PaginationSetValueProps) => {\n\t\t\tif (page !== pageCurrent) setPageCurrent(page);\n\t\t\tif (limit !== limitCurrent) setLimitCurrent(limit);\n\t\t},\n\t\t[limitCurrent, pageCurrent],\n\t);\n\n\treturn {\n\t\thandleSetPagination,\n\t\tpage: pageCurrent,\n\t\tlimit: limitCurrent,\n\t};\n};\n"],"names":["PaginationItem","t0","$","_c","className","color","t1","active","children","text","onClick","undefined","colorClass","t2","bgClass","clsx","t3","twMerge","t4","FormatPagePagination","page","total","siblings","totalPageNoInArray","Array","from","length","_","i","leftSiblingsIndex","Math","max","rightSiblingsIndex","min","showLeftDots","showRightDots","leftItemsCount","leftRange","rightItemsCount","rightRange","middleRange","FormatLimitPagination","data","map","el","id","name","Pagination","limit","isLimitSelect","t5","dataLimit","t6","onChange","translate","t7","t10","t8","t9","t11","selectLimit","rowPerPage","of","totalPagination","ceil","dataPageFormat","dataLimitFormat","t12","value","Number","handleChange","t13","handlePrev","t14","handleNext","t15","value_0","handleChangeSelect","toString","_temp","item","usePagination","initialPage","initialLimit","pageCurrent","setPageCurrent","useState","limitCurrent","setLimitCurrent","handleSetPagination"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.es.js","sources":["../../src/components/pagination/function/index.ts","../../src/components/pagination/pagination-item.tsx","../../src/components/pagination/pagination.tsx","../../src/components/pagination/hook/use-pagination.tsx"],"sourcesContent":["import { type PaginationValueProps } from \"../interface/pagination-share.interface\";\n\nexport const FormatPagePagination = ({\n\tpage,\n\ttotal,\n\tsiblings = 1,\n}: PaginationValueProps) => {\n\tconst totalPageNoInArray = 7 + siblings;\n\n\tif (totalPageNoInArray >= total) {\n\t\treturn Array.from({ length: total }, (_, i) => i + 1);\n\t}\n\n\tconst leftSiblingsIndex = Math.max(page - siblings, 1);\n\tconst rightSiblingsIndex = Math.min(page + siblings, total);\n\n\tconst showLeftDots = leftSiblingsIndex > 2;\n\tconst showRightDots = rightSiblingsIndex < total - 2;\n\n\tif (!showLeftDots && showRightDots) {\n\t\tconst leftItemsCount = 3 + 2 * siblings;\n\t\tconst leftRange = Array.from({ length: leftItemsCount }, (_, i) => i + 1);\n\t\treturn [...leftRange, \"...\", total];\n\t} else if (showLeftDots && !showRightDots) {\n\t\tconst rightItemsCount = 3 + 2 * siblings;\n\t\tconst rightRange = Array.from(\n\t\t\t{ length: rightItemsCount },\n\t\t\t(_, i) => total - rightItemsCount + i + 1\n\t\t);\n\t\treturn [1, \"...\", ...rightRange];\n\t} else {\n\t\tconst middleRange = Array.from(\n\t\t\t{ length: rightSiblingsIndex - leftSiblingsIndex + 1 },\n\t\t\t(_, i) => leftSiblingsIndex + i\n\t\t);\n\t\treturn [1, \"...\", ...middleRange, \"...\", total];\n\t}\n};\n\nexport const FormatLimitPagination = (data: number[]) => {\n\treturn data.map((el) => {\n\t\treturn {\n\t\t\tid: el,\n\t\t\tname: el,\n\t\t};\n\t});\n};\n","import { twMerge } from \"tailwind-merge\";\nimport { type PaginationItemProps } from \"./interface/pagination.interface\";\nimport clsx from \"clsx\";\n\nexport const PaginationItem = ({ className, color = \"primary\", active, children, text, onClick }: PaginationItemProps) => {\n\tconst bgClass = clsx(\n\t\t{\n\t\t\t\"bg-primary\": color === \"primary\" && active,\n\t\t\t\"bg-success\": color === \"success\" && active,\n\t\t\t\"bg-danger\": color === \"danger\" && active,\n\t\t\t\"bg-warning\": color === \"warning\" && active,\n\t\t\t\"bg-default\": color === \"default\" && active,\n \"dark:hover:bg-default-200 dark:hover:text-default-800\": !active,\n\t\t},\n\t);\n\tconst colorClass = twMerge(\n\t\tclsx(\"text-sm\", {\n\t\t\t\"group-hover:text-primary-500 dark:group-hover:text-default-800\": color === \"primary\" && !active,\n\t\t\t\"group-hover:text-success-500 dark:group-hover:text-default-800\": color === \"success\" && !active,\n\t\t\t\"group-hover:text-danger-500 dark:group-hover:text-default-800\": color === \"danger\" && !active,\n\t\t\t\"group-hover:text-warning-500 dark:group-hover:text-default-800\": color === \"warning\" && !active,\n\t\t\t\"group-hover:text-default-500 dark:group-hover:text-default-800\": color === \"default\" && !active,\n\n\t\t\t\"text-default-foreground\": active && color === \"default\",\n\t\t\t\"text-primary-foreground\": active && color === \"primary\",\n\t\t\t\"text-success-foreground\": active && color === \"success\",\n\t\t\t\"text-danger-foreground\": active && color === \"danger\",\n\t\t\t\"text-warning-foreground\": active && color === \"warning\",\n\t\t}),\n\t);\n\n\treturn (\n\t\t<div className={twMerge(\"w-[33px] h-[32px] flex items-center justify-center group \", bgClass, className)} onClick={onClick}>\n\t\t\t{children || <p className={colorClass}>{text}</p>}\n\t\t</div>\n\t);\n};\n","import clsx from \"clsx\";\nimport { IoIosArrowBack } from \"react-icons/io\";\nimport { twMerge } from \"tailwind-merge\";\nimport { Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectTrigger, SelectValue } from \"../ui\";\nimport { FormatLimitPagination, FormatPagePagination } from \"./function\";\nimport { type PaginationProps } from \"./interface/pagination.interface\";\nimport { PaginationItem } from \"./pagination-item\";\n\nexport const Pagination = ({\n\tclassName,\n\tcolor = \"primary\",\n\n\ttotal,\n\tlimit = 20,\n\tpage = 1,\n\tsiblings = 1,\n\tisLimitSelect = true,\n\tdataLimit = [10, 15, 20, 50, 100, 200],\n\tonChange,\n\ttranslate = {\n\t\tselectLimit: \"Limites\",\n\t\trowPerPage: \"Filas por pagina\",\n\t\tof: \"de\",\n\t},\n}: PaginationProps) => {\n\tconst totalPagination = Math.ceil(total / limit);\n\n\tconst dataPageFormat = FormatPagePagination({\n\t\tlimit,\n\t\tpage,\n\t\tsiblings,\n\t\ttotal: totalPagination,\n\t});\n\tconst dataLimitFormat = FormatLimitPagination(dataLimit);\n\n\tconst handleChange = (value: number | string | null) => {\n\t\tif (value === \"...\" || value === null) return;\n\t\tif (onChange)\n\t\t\tonChange({\n\t\t\t\tlimit,\n\t\t\t\tpage: Number(value),\n\t\t\t});\n\t};\n\n\tconst handlePrev = () => {\n\t\tif (page === 1) return;\n\n\t\tif (onChange)\n\t\t\tonChange({\n\t\t\t\tlimit,\n\t\t\t\tpage: page - 1,\n\t\t\t});\n\t};\n\n\tconst handleNext = () => {\n\t\tif (page === totalPagination || totalPagination === 0) return;\n\n\t\tif (onChange)\n\t\t\tonChange({\n\t\t\t\tlimit,\n\t\t\t\tpage: page + 1,\n\t\t\t});\n\t};\n\n\tconst handleChangeSelect = (value: string) => {\n\t\tif (onChange)\n\t\t\tonChange({\n\t\t\t\tpage,\n\t\t\t\tlimit: value ? Number(value) : 20,\n\t\t\t});\n\t};\n\n\treturn (\n\t\t<div className={twMerge(\"flex justify-between gap-x-2 items-center\", className)}>\n\t\t\t{isLimitSelect ? (\n\t\t\t\t<div className=\"flex items-center gap-x-2.5\">\n\t\t\t\t\t<div>\n\t\t\t\t\t\t<span className=\"text-sm text-default-500\">{translate?.rowPerPage || \"Filas por pagina\"}:</span>\n\t\t\t\t\t</div>\n\n\t\t\t\t\t<Select value={limit?.toString()} onValueChange={handleChangeSelect}>\n\t\t\t\t\t\t<SelectTrigger className=\"min-w-20\" radius=\"full\">\n\t\t\t\t\t\t\t<SelectValue placeholder=\"Select limit\" />\n\t\t\t\t\t\t</SelectTrigger>\n\t\t\t\t\t\t<SelectContent>\n\t\t\t\t\t\t\t<SelectGroup>\n\t\t\t\t\t\t\t\t<SelectLabel>{translate?.selectLimit || \"Limites\"}</SelectLabel>\n\t\t\t\t\t\t\t\t{dataLimitFormat.map((item) => (\n\t\t\t\t\t\t\t\t\t<SelectItem key={item.id} value={item.id?.toString()}>\n\t\t\t\t\t\t\t\t\t\t{item.name}\n\t\t\t\t\t\t\t\t\t</SelectItem>\n\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t</SelectGroup>\n\t\t\t\t\t\t</SelectContent>\n\t\t\t\t\t</Select>\n\n\t\t\t\t\t<div className=\"text-sm text-default-500\">\n\t\t\t\t\t\t<span className=\"text-default-500\">{`${page} - ${limit}`}</span> {translate?.of || \"de\"}{\" \"}\n\t\t\t\t\t\t<span className=\"text-default-500\">{total}</span>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t) : null}\n\n\t\t\t{totalPagination > 1 && (\n\t\t\t\t<div className=\"flex flex-nowrap h-fit max-w-fit relative items-center overflow-visible gap-0 border border-input rounded-full cursor-pointer dark:bg-default-100\">\n\t\t\t\t\t<PaginationItem className={clsx(page === 1 && \"cursor-no-drop\", \"rounded-tl-lg rounded-bl-lg \")} onClick={handlePrev}>\n\t\t\t\t\t\t<IoIosArrowBack className={twMerge(\"fill-default-500\", clsx(page === 1 && \"fill-default-300\"))} />\n\t\t\t\t\t</PaginationItem>\n\n\t\t\t\t\t{dataPageFormat.map((el, i) => (\n\t\t\t\t\t\t<PaginationItem\n\t\t\t\t\t\t\tkey={i}\n\t\t\t\t\t\t\ttext={el}\n\t\t\t\t\t\t\tactive={page === el}\n\t\t\t\t\t\t\tcolor={color}\n\t\t\t\t\t\t\tonClick={() => handleChange(el)}\n\t\t\t\t\t\t\tclassName=\"border-l border-input \"\n\t\t\t\t\t\t/>\n\t\t\t\t\t))}\n\n\t\t\t\t\t<PaginationItem\n\t\t\t\t\t\tclassName={clsx(\n\t\t\t\t\t\t\t\"border-l border-input rounded-tr-lg rounded-br-lg \",\n\t\t\t\t\t\t\t(page === totalPagination || totalPagination === 0) && \"cursor-no-drop\",\n\t\t\t\t\t\t)}\n\t\t\t\t\t\tonClick={handleNext}\n\t\t\t\t\t>\n\t\t\t\t\t\t<IoIosArrowBack\n\t\t\t\t\t\t\tclassName={twMerge(\n\t\t\t\t\t\t\t\t\"fill-default-500 transform rotate-180 \",\n\t\t\t\t\t\t\t\tclsx((page === totalPagination || totalPagination === 0) && \"fill-default-300\"),\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</PaginationItem>\n\t\t\t\t</div>\n\t\t\t)}\n\t\t</div>\n\t);\n};\n","import { useCallback, useState } from \"react\";\nimport { type PaginationHookProps, type UsePaginationProps } from \"../interface/pagination.interface\";\nimport { type PaginationSetValueProps } from \"../interface/pagination-share.interface\";\n\nexport const usePagination = ({ initialPage = 1, initialLimit = 20 }: UsePaginationProps): PaginationHookProps => {\n\tconst [pageCurrent, setPageCurrent] = useState<number>(initialPage);\n\tconst [limitCurrent, setLimitCurrent] = useState<number>(initialLimit);\n\n\tconst handleSetPagination = useCallback(\n\t\t({ page, limit }: PaginationSetValueProps) => {\n\t\t\tif (page !== pageCurrent) setPageCurrent(page);\n\t\t\tif (limit !== limitCurrent) setLimitCurrent(limit);\n\t\t},\n\t\t[limitCurrent, pageCurrent],\n\t);\n\n\treturn {\n\t\thandleSetPagination,\n\t\tpage: pageCurrent,\n\t\tlimit: limitCurrent,\n\t};\n};\n"],"names":["FormatPagePagination","page","total","siblings","totalPageNoInArray","Array","from","length","_","i","leftSiblingsIndex","Math","max","rightSiblingsIndex","min","showLeftDots","showRightDots","leftItemsCount","leftRange","rightItemsCount","rightRange","middleRange","FormatLimitPagination","data","map","el","id","name","PaginationItem","t0","$","_c","className","color","t1","active","children","text","onClick","undefined","colorClass","t2","bgClass","clsx","t3","twMerge","t4","Pagination","limit","isLimitSelect","t5","dataLimit","t6","onChange","translate","t7","t10","t8","t9","t11","selectLimit","rowPerPage","of","totalPagination","ceil","dataPageFormat","dataLimitFormat","t12","value","Number","handleChange","t13","handlePrev","t14","handleNext","t15","value_0","handleChangeSelect","toString","_temp","item","usePagination","initialPage","initialLimit","pageCurrent","setPageCurrent","useState","limitCurrent","setLimitCurrent","handleSetPagination"],"mappings":"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"}
|