@jenesei-software/jenesei-kit-react 2.3.1 → 2.3.2
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/build/area-outside.cjs.js +1 -1
- package/build/area-outside.es.js +1 -1
- package/build/area-preview.cjs.js +1 -1
- package/build/area-preview.es.js +1 -1
- package/build/area-skeleton.cjs.js +1 -1
- package/build/area-skeleton.es.js +1 -1
- package/build/button-6CFvwtSz.cjs +3 -0
- package/build/button-6CFvwtSz.cjs.map +1 -0
- package/build/button-D6Bg00Uh.js +120 -0
- package/build/button-D6Bg00Uh.js.map +1 -0
- package/build/{checkbox-Bxt8K0ZY.cjs → checkbox-9ue4f3-6.cjs} +2 -2
- package/build/{checkbox-Bxt8K0ZY.cjs.map → checkbox-9ue4f3-6.cjs.map} +1 -1
- package/build/{checkbox-DPkXe4_5.js → checkbox-TW5VSNui.js} +3 -3
- package/build/{checkbox-DPkXe4_5.js.map → checkbox-TW5VSNui.js.map} +1 -1
- package/build/component-button.cjs.js +1 -1
- package/build/component-button.es.js +1 -1
- package/build/component-checkbox.cjs.js +1 -1
- package/build/component-checkbox.es.js +1 -1
- package/build/component-date-picker.cjs.js +1 -1
- package/build/component-date-picker.es.js +1 -1
- package/build/component-icon.cjs.js +1 -1
- package/build/component-icon.es.js +1 -1
- package/build/component-input-otp.cjs.js +1 -1
- package/build/component-input-otp.es.js +1 -1
- package/build/component-input.cjs.js +1 -1
- package/build/component-input.es.js +1 -1
- package/build/component-pagination.cjs.js +1 -1
- package/build/component-pagination.es.js +1 -1
- package/build/component-popover.cjs.js +1 -1
- package/build/component-popover.es.js +1 -1
- package/build/component-select.cjs.js +1 -1
- package/build/component-select.es.js +1 -1
- package/build/component-textarea.cjs.js +1 -1
- package/build/component-textarea.es.js +1 -1
- package/build/component-toggle.cjs.js +1 -1
- package/build/component-toggle.es.js +1 -1
- package/build/component-tooltip.cjs.js +1 -1
- package/build/component-tooltip.es.js +1 -1
- package/build/component-typography.cjs.js +1 -1
- package/build/component-typography.es.js +1 -1
- package/build/components/button/component.d.ts +1 -2
- package/build/components/select/component.types.d.ts +1 -0
- package/build/components-error.cjs.js +1 -1
- package/build/components-error.es.js +1 -1
- package/build/{context-app-Dsa1tKlU.cjs → context-app-29ajupjq.cjs} +2 -2
- package/build/{context-app-Dsa1tKlU.cjs.map → context-app-29ajupjq.cjs.map} +1 -1
- package/build/{context-app-C9XoarPw.js → context-app-CxNgCfd2.js} +2 -2
- package/build/{context-app-C9XoarPw.js.map → context-app-CxNgCfd2.js.map} +1 -1
- package/build/context-app.cjs.js +1 -1
- package/build/context-app.es.js +1 -1
- package/build/{context-dialog-DctdSBC8.cjs → context-dialog-BLb0fPJw.cjs} +2 -2
- package/build/{context-dialog-DctdSBC8.cjs.map → context-dialog-BLb0fPJw.cjs.map} +1 -1
- package/build/{context-dialog-DzwL2ElF.js → context-dialog-IYNzoNOe.js} +2 -2
- package/build/{context-dialog-DzwL2ElF.js.map → context-dialog-IYNzoNOe.js.map} +1 -1
- package/build/context-dialog.cjs.js +1 -1
- package/build/context-dialog.es.js +1 -1
- package/build/{context-sonner-Dqw0jhwT.cjs → context-sonner-B-eO7pwI.cjs} +2 -2
- package/build/{context-sonner-Dqw0jhwT.cjs.map → context-sonner-B-eO7pwI.cjs.map} +1 -1
- package/build/{context-sonner-MO6uE8y0.js → context-sonner-CtCttHLD.js} +3 -3
- package/build/{context-sonner-MO6uE8y0.js.map → context-sonner-CtCttHLD.js.map} +1 -1
- package/build/context-sonner.cjs.js +1 -1
- package/build/context-sonner.es.js +1 -1
- package/build/{date-picker-ATktGA1c.cjs → date-picker-9rpPgP0a.cjs} +2 -2
- package/build/{date-picker-ATktGA1c.cjs.map → date-picker-9rpPgP0a.cjs.map} +1 -1
- package/build/{date-picker-D81n3KbO.js → date-picker-BvKtH7lp.js} +6 -6
- package/build/{date-picker-D81n3KbO.js.map → date-picker-BvKtH7lp.js.map} +1 -1
- package/build/{error-BdFba_yV.cjs → error-aQfsl_Kl.cjs} +1 -1
- package/build/{error-BdFba_yV.cjs.map → error-aQfsl_Kl.cjs.map} +1 -1
- package/build/{error-BFb2NCum.js → error-iaB6e_aq.js} +1 -1
- package/build/{error-BFb2NCum.js.map → error-iaB6e_aq.js.map} +1 -1
- package/build/hooks/use-fps/index.d.ts +2 -0
- package/build/hooks/use-fps/use.d.ts +2 -0
- package/build/hooks/use-fps/use.types.d.ts +10 -0
- package/build/hooks-use-deep-compare-memoize.cjs.js +1 -1
- package/build/hooks-use-deep-compare-memoize.es.js +1 -1
- package/build/hooks-use-deep-memo.cjs.js +1 -1
- package/build/hooks-use-deep-memo.es.js +1 -1
- package/build/hooks-use-fps.cjs.js +3 -0
- package/build/hooks-use-fps.cjs.js.map +1 -0
- package/build/hooks-use-fps.d.ts +2 -0
- package/build/hooks-use-fps.es.js +46 -0
- package/build/hooks-use-fps.es.js.map +1 -0
- package/build/{icon-Ddkbk3-m.cjs → icon-DyjaxKWq.cjs} +2 -2
- package/build/{icon-Ddkbk3-m.cjs.map → icon-DyjaxKWq.cjs.map} +1 -1
- package/build/{icon-D2w7GViT.js → icon-Y-IZxLXB.js} +2 -2
- package/build/{icon-D2w7GViT.js.map → icon-Y-IZxLXB.js.map} +1 -1
- package/build/index.cjs.js +1 -1
- package/build/index.d.ts +1 -0
- package/build/index.es.js +46 -44
- package/build/{input-B9ceeR9v.js → input-Buf_HFGH.js} +34 -30
- package/build/{input-B9ceeR9v.js.map → input-Buf_HFGH.js.map} +1 -1
- package/build/{input-CmdwwrV2.cjs → input-DMm67Wyr.cjs} +3 -3
- package/build/{input-CmdwwrV2.cjs.map → input-DMm67Wyr.cjs.map} +1 -1
- package/build/input-otp-MDjIcfVu.cjs +3 -0
- package/build/input-otp-MDjIcfVu.cjs.map +1 -0
- package/build/{input-otp-CeMGm5Xq.js → input-otp-q4zKk_nP.js} +26 -26
- package/build/input-otp-q4zKk_nP.js.map +1 -0
- package/build/{isEqual-0jZ23Bb6.js → isEqual-BHn_Fkkw.js} +1 -1
- package/build/{isEqual-0jZ23Bb6.js.map → isEqual-BHn_Fkkw.js.map} +1 -1
- package/build/{isEqual-BA0P9-C8.cjs → isEqual-Q-mEN2md.cjs} +1 -1
- package/build/{isEqual-BA0P9-C8.cjs.map → isEqual-Q-mEN2md.cjs.map} +1 -1
- package/build/{outside-CXyCk8h1.cjs → outside-BP81eKu0.cjs} +2 -2
- package/build/{outside-CXyCk8h1.cjs.map → outside-BP81eKu0.cjs.map} +1 -1
- package/build/{outside-DopxX0PZ.js → outside-_oOot7z3.js} +6 -6
- package/build/{outside-DopxX0PZ.js.map → outside-_oOot7z3.js.map} +1 -1
- package/build/{pagination-BluJtJl7.js → pagination-BFTnpYCz.js} +33 -23
- package/build/pagination-BFTnpYCz.js.map +1 -0
- package/build/pagination-ZXl2fVKZ.cjs +3 -0
- package/build/pagination-ZXl2fVKZ.cjs.map +1 -0
- package/build/{popover-DHWcQVp1.js → popover--NOw9qfd.js} +1 -1
- package/build/{popover-DHWcQVp1.js.map → popover--NOw9qfd.js.map} +1 -1
- package/build/{popover-DQkn4RWI.cjs → popover-B1KASIeD.cjs} +1 -1
- package/build/{popover-DQkn4RWI.cjs.map → popover-B1KASIeD.cjs.map} +1 -1
- package/build/{preview-Bc2qdyd4.js → preview-C-mtYSGG.js} +20 -20
- package/build/preview-C-mtYSGG.js.map +1 -0
- package/build/preview-p2i9Ju3I.cjs +3 -0
- package/build/preview-p2i9Ju3I.cjs.map +1 -0
- package/build/select-7yVS14II.cjs +9 -0
- package/build/select-7yVS14II.cjs.map +1 -0
- package/build/{select-CCbtkj6f.js → select-BdGRG7zf.js} +1069 -1054
- package/build/select-BdGRG7zf.js.map +1 -0
- package/build/skeleton-BfOHjRgT.cjs +3 -0
- package/build/skeleton-BfOHjRgT.cjs.map +1 -0
- package/build/skeleton-wRSg85X7.js +39 -0
- package/build/skeleton-wRSg85X7.js.map +1 -0
- package/build/{textarea-DInJb6Lz.cjs → textarea-Bm3ki2-6.cjs} +2 -2
- package/build/{textarea-DInJb6Lz.cjs.map → textarea-Bm3ki2-6.cjs.map} +1 -1
- package/build/{textarea-jIGZ0JdP.js → textarea-DLZq4RT-.js} +2 -2
- package/build/{textarea-jIGZ0JdP.js.map → textarea-DLZq4RT-.js.map} +1 -1
- package/build/{toggle-D1nXs-LD.js → toggle-Bzru0yZw.js} +2 -2
- package/build/{toggle-D1nXs-LD.js.map → toggle-Bzru0yZw.js.map} +1 -1
- package/build/{toggle-BEmUm0of.cjs → toggle-CdUVhH0Z.cjs} +2 -2
- package/build/{toggle-BEmUm0of.cjs.map → toggle-CdUVhH0Z.cjs.map} +1 -1
- package/build/{typography-BKp4OAQI.cjs → typography-DzYrzZZb.cjs} +2 -2
- package/build/{typography-BKp4OAQI.cjs.map → typography-DzYrzZZb.cjs.map} +1 -1
- package/build/{typography-07KEDl9_.js → typography-Tebu6c9L.js} +2 -2
- package/build/{typography-07KEDl9_.js.map → typography-Tebu6c9L.js.map} +1 -1
- package/package.json +7 -1
- package/build/button-C1w25-Hk.js +0 -102
- package/build/button-C1w25-Hk.js.map +0 -1
- package/build/button-CHEeSypf.cjs +0 -3
- package/build/button-CHEeSypf.cjs.map +0 -1
- package/build/input-otp-CJfZoWd7.cjs +0 -3
- package/build/input-otp-CJfZoWd7.cjs.map +0 -1
- package/build/input-otp-CeMGm5Xq.js.map +0 -1
- package/build/pagination-BluJtJl7.js.map +0 -1
- package/build/pagination-VMAFNidU.cjs +0 -3
- package/build/pagination-VMAFNidU.cjs.map +0 -1
- package/build/preview-BLu-NOv2.cjs +0 -3
- package/build/preview-BLu-NOv2.cjs.map +0 -1
- package/build/preview-Bc2qdyd4.js.map +0 -1
- package/build/select-CCbtkj6f.js.map +0 -1
- package/build/select-CGXyVf57.cjs +0 -9
- package/build/select-CGXyVf57.cjs.map +0 -1
- package/build/skeleton-Bh6zA5iB.js +0 -39
- package/build/skeleton-Bh6zA5iB.js.map +0 -1
- package/build/skeleton-DmaXsm9C.cjs +0 -3
- package/build/skeleton-DmaXsm9C.cjs.map +0 -1
|
@@ -1,39 +1,49 @@
|
|
|
1
|
-
import { t as
|
|
2
|
-
import { t as
|
|
3
|
-
import { t as
|
|
1
|
+
import { t as I } from "./proxy-BFHkqO7P.js";
|
|
2
|
+
import { t as b } from "./AnimatePresence-BWc2vFe-.js";
|
|
3
|
+
import { t as u } from "./component-DGfyD5-u.js";
|
|
4
4
|
import "./component-stack.es.js";
|
|
5
|
-
import { t as a } from "./button-
|
|
6
|
-
import { jsx as e, jsxs as
|
|
7
|
-
import { useCallback as
|
|
5
|
+
import { t as a } from "./button-D6Bg00Uh.js";
|
|
6
|
+
import { jsx as e, jsxs as v } from "react/jsx-runtime";
|
|
7
|
+
import { useCallback as x, useMemo as i } from "react";
|
|
8
8
|
var N = (t) => {
|
|
9
|
-
const l = i(() => t.index === 0 && !t.isInfinity, [t.index, t.isInfinity]),
|
|
9
|
+
const l = i(() => t.index === 0 && !t.isInfinity, [t.index, t.isInfinity]), d = i(() => t.index === t.length - 1 && !t.isInfinity, [
|
|
10
10
|
t.index,
|
|
11
11
|
t.isInfinity,
|
|
12
12
|
t.length
|
|
13
|
-
]),
|
|
13
|
+
]), c = i(() => t.gap ?? 12, [t.gap]), h = i(() => t.lengthData ?? {}, [t.lengthData]), f = x(() => {
|
|
14
14
|
t.index === 0 ? t.isInfinity && t.changeIndex(t.length - 1) : t.changeIndex(t.index - 1);
|
|
15
|
-
}, [
|
|
15
|
+
}, [
|
|
16
|
+
t.index,
|
|
17
|
+
t.isInfinity,
|
|
18
|
+
t.length,
|
|
19
|
+
t.changeIndex
|
|
20
|
+
]), m = x(() => {
|
|
16
21
|
t.index === t.length - 1 ? t.isInfinity && t.changeIndex(0) : t.changeIndex(t.index + 1);
|
|
17
|
-
}, [
|
|
18
|
-
|
|
19
|
-
|
|
22
|
+
}, [
|
|
23
|
+
t.index,
|
|
24
|
+
t.isInfinity,
|
|
25
|
+
t.length,
|
|
26
|
+
t.changeIndex
|
|
27
|
+
]), y = i(() => {
|
|
28
|
+
const g = Math.floor(t.viewQuantity / 2), n = Math.max(0, Math.min(t.index - g, t.length - t.viewQuantity)), o = Math.min(t.length, n + t.viewQuantity);
|
|
29
|
+
return Array.from({ length: o - n }, (C, s) => n + s);
|
|
20
30
|
}, [
|
|
21
31
|
t.index,
|
|
22
32
|
t.viewQuantity,
|
|
23
33
|
t.length
|
|
24
34
|
]);
|
|
25
|
-
return /* @__PURE__ */
|
|
35
|
+
return /* @__PURE__ */ v(u, {
|
|
26
36
|
className: t.className,
|
|
27
37
|
style: {
|
|
28
38
|
height: "fit-content",
|
|
29
|
-
gap: `${
|
|
39
|
+
gap: `${c}px`,
|
|
30
40
|
...t.style
|
|
31
41
|
},
|
|
32
42
|
children: [
|
|
33
43
|
/* @__PURE__ */ e(a, {
|
|
34
44
|
isDisabled: l,
|
|
35
45
|
isHidden: l,
|
|
36
|
-
onClick:
|
|
46
|
+
onClick: f,
|
|
37
47
|
...t.buttonControl,
|
|
38
48
|
icons: [{
|
|
39
49
|
type: "id",
|
|
@@ -44,18 +54,18 @@ var N = (t) => {
|
|
|
44
54
|
}],
|
|
45
55
|
children: !t.buttonControl.isWidthAsHeight && t.locale.prev
|
|
46
56
|
}),
|
|
47
|
-
/* @__PURE__ */ e(
|
|
57
|
+
/* @__PURE__ */ e(u, {
|
|
48
58
|
sx: {
|
|
49
59
|
width: "fit-content",
|
|
50
60
|
height: "fit-content",
|
|
51
61
|
display: "flex",
|
|
52
|
-
gap: `${
|
|
62
|
+
gap: `${c}px`,
|
|
53
63
|
alignItems: "center",
|
|
54
64
|
justifyContent: "flex-start"
|
|
55
65
|
},
|
|
56
|
-
children: Array.from({ length: t.length }).map((
|
|
66
|
+
children: Array.from({ length: t.length }).map((g, n) => /* @__PURE__ */ e(b, {
|
|
57
67
|
mode: "popLayout",
|
|
58
|
-
children:
|
|
68
|
+
children: y.includes(n) && /* @__PURE__ */ e(I.div, {
|
|
59
69
|
layout: !0,
|
|
60
70
|
initial: {
|
|
61
71
|
opacity: 0,
|
|
@@ -88,9 +98,9 @@ var N = (t) => {
|
|
|
88
98
|
}, n))
|
|
89
99
|
}),
|
|
90
100
|
/* @__PURE__ */ e(a, {
|
|
91
|
-
isDisabled:
|
|
92
|
-
isHidden:
|
|
93
|
-
onClick:
|
|
101
|
+
isDisabled: d,
|
|
102
|
+
isHidden: d,
|
|
103
|
+
onClick: m,
|
|
94
104
|
...t.buttonControl,
|
|
95
105
|
icons: [{
|
|
96
106
|
type: "id",
|
|
@@ -107,4 +117,4 @@ export {
|
|
|
107
117
|
N as t
|
|
108
118
|
};
|
|
109
119
|
|
|
110
|
-
//# sourceMappingURL=pagination-
|
|
120
|
+
//# sourceMappingURL=pagination-BFTnpYCz.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pagination-BFTnpYCz.js","names":[],"sources":["../src/components/pagination/component.tsx"],"sourcesContent":["import { Button } from '@local/components/button';\nimport { Stack } from '@local/components/stack';\n\nimport { AnimatePresence, motion } from 'framer-motion';\nimport { FC, useCallback, useMemo } from 'react';\n\nimport { DEFAULT_COMPONENT_PAGINATION_GAP } from './component.constants';\nimport { IPagination } from './component.types';\n\nexport const Pagination: FC<IPagination> = (props) => {\n const isDisabledPrevious = useMemo(() => props.index === 0 && !props.isInfinity, [props.index, props.isInfinity]);\n const isDisabledNext = useMemo(\n () => props.index === props.length - 1 && !props.isInfinity,\n [props.index, props.isInfinity, props.length],\n );\n\n const gap = useMemo(() => props.gap ?? DEFAULT_COMPONENT_PAGINATION_GAP, [props.gap]);\n const lengthData = useMemo(() => props.lengthData ?? {}, [props.lengthData]);\n const handlePrevious = useCallback(() => {\n if (props.index === 0) {\n if (props.isInfinity) {\n props.changeIndex(props.length - 1);\n }\n } else {\n props.changeIndex(props.index - 1);\n }\n }, [props.index, props.isInfinity, props.length, props.changeIndex]);\n\n const handleNext = useCallback(() => {\n if (props.index === props.length - 1) {\n if (props.isInfinity) {\n props.changeIndex(0);\n }\n } else {\n props.changeIndex(props.index + 1);\n }\n }, [props.index, props.isInfinity, props.length, props.changeIndex]);\n\n const visibleButtons = useMemo(() => {\n const half = Math.floor(props.viewQuantity / 2);\n const start = Math.max(0, Math.min(props.index - half, props.length - props.viewQuantity));\n const end = Math.min(props.length, start + props.viewQuantity);\n return Array.from({ length: end - start }, (_, i) => start + i);\n }, [props.index, props.viewQuantity, props.length]);\n\n return (\n <Stack\n className={props.className}\n style={{\n height: 'fit-content',\n gap: `${gap}px`,\n ...props.style,\n }}\n >\n <Button\n isDisabled={isDisabledPrevious}\n isHidden={isDisabledPrevious}\n onClick={handlePrevious}\n {...props.buttonControl}\n icons={[\n {\n type: 'id',\n size: 'large',\n name: 'Arrow2',\n order: -1,\n turn: 90,\n },\n ]}\n >\n {!props.buttonControl.isWidthAsHeight && props.locale.prev}\n </Button>\n\n <Stack\n sx={{\n width: 'fit-content',\n height: 'fit-content',\n display: 'flex',\n gap: `${gap}px`,\n alignItems: 'center',\n justifyContent: 'flex-start',\n }}\n >\n {Array.from({ length: props.length }).map((_, i) => {\n const isVisible = visibleButtons.includes(i);\n return (\n <AnimatePresence key={i} mode='popLayout'>\n {isVisible && (\n <motion.div\n layout\n initial={{ opacity: 0, scale: 0.95 }}\n animate={{ opacity: 1, scale: 1 }}\n exit={{ opacity: 0, scale: 0.95, transition: { duration: 0.1, ease: 'easeInOut' } }}\n transition={{\n default: { duration: 0.1, ease: 'easeOut' },\n }}\n >\n <Button\n isWidthAsHeight\n {...(i === props.index ? props.buttonCount.active : props.buttonCount.inactive)}\n {...lengthData?.[i]}\n onClick={() => props.changeIndex(i)}\n >\n {lengthData?.[i]?.icons?.length ? null : i + 1}\n </Button>\n </motion.div>\n )}\n </AnimatePresence>\n );\n })}\n </Stack>\n\n <Button\n isDisabled={isDisabledNext}\n isHidden={isDisabledNext}\n onClick={handleNext}\n {...props.buttonControl}\n icons={[\n {\n type: 'id',\n size: 'large',\n name: 'Arrow2',\n turn: -90,\n },\n ]}\n >\n {!props.buttonControl.isWidthAsHeight && props.locale.next}\n </Button>\n </Stack>\n );\n};\n"],"mappings":"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"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
const q=require("./chunk-Dd8m0Ver.cjs"),f=require("./proxy-BDese6Pb.cjs"),m=require("./AnimatePresence-DeKd4Eek.cjs"),g=require("./component-CbJ_P8yq.cjs");require("./component-stack.cjs.js");const a=require("./button-6CFvwtSz.cjs");let t=require("react/jsx-runtime"),i=require("react");var I=e=>{const l=(0,i.useMemo)(()=>e.index===0&&!e.isInfinity,[e.index,e.isInfinity]),c=(0,i.useMemo)(()=>e.index===e.length-1&&!e.isInfinity,[e.index,e.isInfinity,e.length]),u=(0,i.useMemo)(()=>e.gap??12,[e.gap]),d=(0,i.useMemo)(()=>e.lengthData??{},[e.lengthData]),x=(0,i.useCallback)(()=>{e.index===0?e.isInfinity&&e.changeIndex(e.length-1):e.changeIndex(e.index-1)},[e.index,e.isInfinity,e.length,e.changeIndex]),s=(0,i.useCallback)(()=>{e.index===e.length-1?e.isInfinity&&e.changeIndex(0):e.changeIndex(e.index+1)},[e.index,e.isInfinity,e.length,e.changeIndex]),r=(0,i.useMemo)(()=>{const h=Math.floor(e.viewQuantity/2),n=Math.max(0,Math.min(e.index-h,e.length-e.viewQuantity)),o=Math.min(e.length,n+e.viewQuantity);return Array.from({length:o-n},(b,y)=>n+y)},[e.index,e.viewQuantity,e.length]);return(0,t.jsxs)(g.Stack,{className:e.className,style:{height:"fit-content",gap:`${u}px`,...e.style},children:[(0,t.jsx)(a.Button,{isDisabled:l,isHidden:l,onClick:x,...e.buttonControl,icons:[{type:"id",size:"large",name:"Arrow2",order:-1,turn:90}],children:!e.buttonControl.isWidthAsHeight&&e.locale.prev}),(0,t.jsx)(g.Stack,{sx:{width:"fit-content",height:"fit-content",display:"flex",gap:`${u}px`,alignItems:"center",justifyContent:"flex-start"},children:Array.from({length:e.length}).map((h,n)=>(0,t.jsx)(m.AnimatePresence,{mode:"popLayout",children:r.includes(n)&&(0,t.jsx)(f.motion.div,{layout:!0,initial:{opacity:0,scale:.95},animate:{opacity:1,scale:1},exit:{opacity:0,scale:.95,transition:{duration:.1,ease:"easeInOut"}},transition:{default:{duration:.1,ease:"easeOut"}},children:(0,t.jsx)(a.Button,{isWidthAsHeight:!0,...n===e.index?e.buttonCount.active:e.buttonCount.inactive,...d?.[n],onClick:()=>e.changeIndex(n),children:d?.[n]?.icons?.length?null:n+1})})},n))}),(0,t.jsx)(a.Button,{isDisabled:c,isHidden:c,onClick:s,...e.buttonControl,icons:[{type:"id",size:"large",name:"Arrow2",turn:-90}],children:!e.buttonControl.isWidthAsHeight&&e.locale.next})]})};Object.defineProperty(exports,"Pagination",{enumerable:!0,get:function(){return I}});
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=pagination-ZXl2fVKZ.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pagination-ZXl2fVKZ.cjs","names":[],"sources":["../src/components/pagination/component.tsx"],"sourcesContent":["import { Button } from '@local/components/button';\nimport { Stack } from '@local/components/stack';\n\nimport { AnimatePresence, motion } from 'framer-motion';\nimport { FC, useCallback, useMemo } from 'react';\n\nimport { DEFAULT_COMPONENT_PAGINATION_GAP } from './component.constants';\nimport { IPagination } from './component.types';\n\nexport const Pagination: FC<IPagination> = (props) => {\n const isDisabledPrevious = useMemo(() => props.index === 0 && !props.isInfinity, [props.index, props.isInfinity]);\n const isDisabledNext = useMemo(\n () => props.index === props.length - 1 && !props.isInfinity,\n [props.index, props.isInfinity, props.length],\n );\n\n const gap = useMemo(() => props.gap ?? DEFAULT_COMPONENT_PAGINATION_GAP, [props.gap]);\n const lengthData = useMemo(() => props.lengthData ?? {}, [props.lengthData]);\n const handlePrevious = useCallback(() => {\n if (props.index === 0) {\n if (props.isInfinity) {\n props.changeIndex(props.length - 1);\n }\n } else {\n props.changeIndex(props.index - 1);\n }\n }, [props.index, props.isInfinity, props.length, props.changeIndex]);\n\n const handleNext = useCallback(() => {\n if (props.index === props.length - 1) {\n if (props.isInfinity) {\n props.changeIndex(0);\n }\n } else {\n props.changeIndex(props.index + 1);\n }\n }, [props.index, props.isInfinity, props.length, props.changeIndex]);\n\n const visibleButtons = useMemo(() => {\n const half = Math.floor(props.viewQuantity / 2);\n const start = Math.max(0, Math.min(props.index - half, props.length - props.viewQuantity));\n const end = Math.min(props.length, start + props.viewQuantity);\n return Array.from({ length: end - start }, (_, i) => start + i);\n }, [props.index, props.viewQuantity, props.length]);\n\n return (\n <Stack\n className={props.className}\n style={{\n height: 'fit-content',\n gap: `${gap}px`,\n ...props.style,\n }}\n >\n <Button\n isDisabled={isDisabledPrevious}\n isHidden={isDisabledPrevious}\n onClick={handlePrevious}\n {...props.buttonControl}\n icons={[\n {\n type: 'id',\n size: 'large',\n name: 'Arrow2',\n order: -1,\n turn: 90,\n },\n ]}\n >\n {!props.buttonControl.isWidthAsHeight && props.locale.prev}\n </Button>\n\n <Stack\n sx={{\n width: 'fit-content',\n height: 'fit-content',\n display: 'flex',\n gap: `${gap}px`,\n alignItems: 'center',\n justifyContent: 'flex-start',\n }}\n >\n {Array.from({ length: props.length }).map((_, i) => {\n const isVisible = visibleButtons.includes(i);\n return (\n <AnimatePresence key={i} mode='popLayout'>\n {isVisible && (\n <motion.div\n layout\n initial={{ opacity: 0, scale: 0.95 }}\n animate={{ opacity: 1, scale: 1 }}\n exit={{ opacity: 0, scale: 0.95, transition: { duration: 0.1, ease: 'easeInOut' } }}\n transition={{\n default: { duration: 0.1, ease: 'easeOut' },\n }}\n >\n <Button\n isWidthAsHeight\n {...(i === props.index ? props.buttonCount.active : props.buttonCount.inactive)}\n {...lengthData?.[i]}\n onClick={() => props.changeIndex(i)}\n >\n {lengthData?.[i]?.icons?.length ? null : i + 1}\n </Button>\n </motion.div>\n )}\n </AnimatePresence>\n );\n })}\n </Stack>\n\n <Button\n isDisabled={isDisabledNext}\n isHidden={isDisabledNext}\n onClick={handleNext}\n {...props.buttonControl}\n icons={[\n {\n type: 'id',\n size: 'large',\n name: 'Arrow2',\n turn: -90,\n },\n ]}\n >\n {!props.buttonControl.isWidthAsHeight && props.locale.next}\n </Button>\n </Stack>\n );\n};\n"],"mappings":"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"}
|