jaci-ui 0.4.0 → 0.5.0
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/CHANGELOG.md +8 -0
- package/README.md +37 -0
- package/dist/components/command/command.cjs +55 -34
- package/dist/components/command/command.cjs.map +1 -1
- package/dist/components/command/command.d.cts +1 -0
- package/dist/components/command/command.d.ts +1 -0
- package/dist/components/command/command.js +55 -34
- package/dist/components/command/command.js.map +1 -1
- package/dist/components/data-toolbar/data-toolbar.cjs +141 -0
- package/dist/components/data-toolbar/data-toolbar.cjs.map +1 -0
- package/dist/components/data-toolbar/data-toolbar.d.cts +50 -0
- package/dist/components/data-toolbar/data-toolbar.d.ts +50 -0
- package/dist/components/data-toolbar/data-toolbar.js +132 -0
- package/dist/components/data-toolbar/data-toolbar.js.map +1 -0
- package/dist/components/data-toolbar/index.d.cts +2 -0
- package/dist/components/data-toolbar/index.d.ts +2 -0
- package/dist/components/data-view/data-view.cjs +33 -1
- package/dist/components/data-view/data-view.cjs.map +1 -1
- package/dist/components/data-view/data-view.d.cts +12 -1
- package/dist/components/data-view/data-view.d.ts +12 -1
- package/dist/components/data-view/data-view.js +31 -2
- package/dist/components/data-view/data-view.js.map +1 -1
- package/dist/components/data-view/index.d.cts +2 -2
- package/dist/components/data-view/index.d.ts +2 -2
- package/dist/components/list/list.cjs +3 -1
- package/dist/components/list/list.cjs.map +1 -1
- package/dist/components/list/list.d.cts +3 -1
- package/dist/components/list/list.d.ts +3 -1
- package/dist/components/list/list.js +3 -1
- package/dist/components/list/list.js.map +1 -1
- package/dist/components/pagination/index.d.cts +2 -2
- package/dist/components/pagination/index.d.ts +2 -2
- package/dist/components/pagination/pagination.cjs +122 -21
- package/dist/components/pagination/pagination.cjs.map +1 -1
- package/dist/components/pagination/pagination.d.cts +25 -13
- package/dist/components/pagination/pagination.d.ts +25 -13
- package/dist/components/pagination/pagination.js +122 -23
- package/dist/components/pagination/pagination.js.map +1 -1
- package/dist/components/table/index.d.cts +2 -2
- package/dist/components/table/index.d.ts +2 -2
- package/dist/components/table/table.cjs +265 -46
- package/dist/components/table/table.cjs.map +1 -1
- package/dist/components/table/table.d.cts +41 -8
- package/dist/components/table/table.d.ts +41 -8
- package/dist/components/table/table.js +264 -48
- package/dist/components/table/table.js.map +1 -1
- package/dist/components/tree-view/index.d.cts +2 -2
- package/dist/components/tree-view/index.d.ts +2 -2
- package/dist/components/tree-view/tree-view.cjs +60 -3
- package/dist/components/tree-view/tree-view.cjs.map +1 -1
- package/dist/components/tree-view/tree-view.d.cts +12 -1
- package/dist/components/tree-view/tree-view.d.ts +12 -1
- package/dist/components/tree-view/tree-view.js +58 -4
- package/dist/components/tree-view/tree-view.js.map +1 -1
- package/dist/index.cjs +22 -0
- package/dist/index.d.cts +7 -5
- package/dist/index.d.ts +7 -5
- package/dist/index.js +6 -5
- package/dist/styled-system/recipes/data-toolbar.cjs +40 -0
- package/dist/styled-system/recipes/data-toolbar.cjs.map +1 -0
- package/dist/styled-system/recipes/data-toolbar.js +40 -0
- package/dist/styled-system/recipes/data-toolbar.js.map +1 -0
- package/dist/styled-system/recipes/data-view.cjs +3 -0
- package/dist/styled-system/recipes/data-view.cjs.map +1 -1
- package/dist/styled-system/recipes/data-view.js +3 -0
- package/dist/styled-system/recipes/data-view.js.map +1 -1
- package/dist/styled-system/recipes/list.cjs +7 -1
- package/dist/styled-system/recipes/list.cjs.map +1 -1
- package/dist/styled-system/recipes/list.js +7 -1
- package/dist/styled-system/recipes/list.js.map +1 -1
- package/dist/styled-system/recipes/pagination.cjs +9 -1
- package/dist/styled-system/recipes/pagination.cjs.map +1 -1
- package/dist/styled-system/recipes/pagination.js +9 -1
- package/dist/styled-system/recipes/pagination.js.map +1 -1
- package/dist/styled-system/recipes/table.cjs +15 -2
- package/dist/styled-system/recipes/table.cjs.map +1 -1
- package/dist/styled-system/recipes/table.js +15 -2
- package/dist/styled-system/recipes/table.js.map +1 -1
- package/dist/styled-system/recipes/tree-view.cjs +4 -1
- package/dist/styled-system/recipes/tree-view.cjs.map +1 -1
- package/dist/styled-system/recipes/tree-view.js +4 -1
- package/dist/styled-system/recipes/tree-view.js.map +1 -1
- package/dist/styles.css +237 -1
- package/package.json +1 -1
|
@@ -1,29 +1,65 @@
|
|
|
1
|
+
"use client";
|
|
1
2
|
import { cx } from "../../styled-system/css/cx.js";
|
|
2
3
|
import { pagination } from "../../styled-system/recipes/pagination.js";
|
|
3
|
-
import { forwardRef } from "react";
|
|
4
|
+
import { createContext, forwardRef, useCallback, useContext, useMemo, useState } from "react";
|
|
4
5
|
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
5
6
|
//#region src/components/pagination/pagination.tsx
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
return
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
7
|
+
const PaginationContext = createContext(null);
|
|
8
|
+
function usePaginationContext() {
|
|
9
|
+
return useContext(PaginationContext);
|
|
10
|
+
}
|
|
11
|
+
const PaginationRoot = forwardRef(function PaginationRoot({ children, "aria-label": ariaLabel, className, defaultPage = 1, density = "comfortable", onPageChange, page: controlledPage, pageCount, showFirstLast = false, siblingCount = 1, ...props }, ref) {
|
|
12
|
+
const [uncontrolledPage, setUncontrolledPage] = useState(defaultPage);
|
|
13
|
+
const page = pageCount ? Math.min(Math.max(controlledPage ?? uncontrolledPage, 1), pageCount) : controlledPage;
|
|
14
|
+
const goTo = useCallback((nextPage) => {
|
|
15
|
+
if (!pageCount) return;
|
|
16
|
+
const next = Math.min(Math.max(nextPage, 1), pageCount);
|
|
17
|
+
if (controlledPage === void 0) setUncontrolledPage(next);
|
|
18
|
+
onPageChange?.(next);
|
|
19
|
+
}, [
|
|
20
|
+
controlledPage,
|
|
21
|
+
onPageChange,
|
|
22
|
+
pageCount
|
|
23
|
+
]);
|
|
24
|
+
const context = useMemo(() => ({
|
|
25
|
+
density,
|
|
26
|
+
goTo,
|
|
27
|
+
page,
|
|
28
|
+
pageCount
|
|
29
|
+
}), [
|
|
30
|
+
density,
|
|
31
|
+
goTo,
|
|
32
|
+
page,
|
|
33
|
+
pageCount
|
|
34
|
+
]);
|
|
35
|
+
return /* @__PURE__ */ jsx(PaginationContext.Provider, {
|
|
36
|
+
value: context,
|
|
37
|
+
children: /* @__PURE__ */ jsx("nav", {
|
|
38
|
+
...props,
|
|
39
|
+
"aria-label": ariaLabel ?? "Pagination",
|
|
40
|
+
ref,
|
|
41
|
+
className: cx(pagination({ density }).root, className),
|
|
42
|
+
"data-density": density,
|
|
43
|
+
"data-jaci-component": "pagination",
|
|
44
|
+
"data-slot": "pagination",
|
|
45
|
+
children: children ?? (pageCount ? /* @__PURE__ */ jsx(PaginationGenerated, {
|
|
46
|
+
page: page ?? 1,
|
|
47
|
+
pageCount,
|
|
48
|
+
showFirstLast,
|
|
49
|
+
siblingCount
|
|
50
|
+
}) : null)
|
|
51
|
+
})
|
|
15
52
|
});
|
|
16
53
|
});
|
|
17
|
-
/** An unordered list of page controls. */
|
|
18
54
|
const PaginationList = forwardRef(function PaginationList({ className, ...props }, ref) {
|
|
55
|
+
const context = usePaginationContext();
|
|
19
56
|
return /* @__PURE__ */ jsx("ul", {
|
|
20
57
|
...props,
|
|
21
58
|
ref,
|
|
22
|
-
className: cx(pagination().list, className),
|
|
59
|
+
className: cx(pagination({ density: context?.density }).list, className),
|
|
23
60
|
"data-slot": "pagination-list"
|
|
24
61
|
});
|
|
25
62
|
});
|
|
26
|
-
/** A list item that wraps a page link, direction control, or ellipsis. */
|
|
27
63
|
const PaginationItem = forwardRef(function PaginationItem({ className, ...props }, ref) {
|
|
28
64
|
return /* @__PURE__ */ jsx("li", {
|
|
29
65
|
...props,
|
|
@@ -32,24 +68,31 @@ const PaginationItem = forwardRef(function PaginationItem({ className, ...props
|
|
|
32
68
|
"data-slot": "pagination-item"
|
|
33
69
|
});
|
|
34
70
|
});
|
|
35
|
-
function getAnchorClassName(active, disabled, slot) {
|
|
71
|
+
function getAnchorClassName(active, disabled, density, slot) {
|
|
36
72
|
const styles = pagination({
|
|
37
73
|
active,
|
|
74
|
+
density,
|
|
38
75
|
disabled
|
|
39
76
|
});
|
|
40
77
|
if (slot === "pagination-previous") return cx(styles.link, styles.previous);
|
|
41
78
|
if (slot === "pagination-next") return cx(styles.link, styles.next);
|
|
79
|
+
if (slot === "pagination-first") return cx(styles.link, styles.first);
|
|
80
|
+
if (slot === "pagination-last") return cx(styles.link, styles.last);
|
|
42
81
|
return styles.link;
|
|
43
82
|
}
|
|
44
|
-
const PaginationAnchor = forwardRef(function PaginationAnchor({ active
|
|
83
|
+
const PaginationAnchor = forwardRef(function PaginationAnchor({ active: activeProp, "aria-current": ariaCurrent, className, disabled: disabledProp = false, href, onClick, page, slot, tabIndex, ...props }, ref) {
|
|
84
|
+
const context = usePaginationContext();
|
|
85
|
+
const active = activeProp ?? (page !== void 0 && context?.page === page);
|
|
86
|
+
const disabled = Boolean(disabledProp || page !== void 0 && context?.pageCount === 1);
|
|
45
87
|
return /* @__PURE__ */ jsx("a", {
|
|
46
88
|
...props,
|
|
47
89
|
"aria-current": ariaCurrent ?? (active ? "page" : void 0),
|
|
48
90
|
"aria-disabled": disabled || void 0,
|
|
49
91
|
ref,
|
|
50
|
-
className: cx(getAnchorClassName(active, disabled, slot), className),
|
|
92
|
+
className: cx(getAnchorClassName(Boolean(active), disabled, context?.density, slot), className),
|
|
51
93
|
"data-active": active || void 0,
|
|
52
94
|
"data-disabled": disabled || void 0,
|
|
95
|
+
"data-page": page,
|
|
53
96
|
"data-slot": slot,
|
|
54
97
|
href: disabled ? void 0 : href,
|
|
55
98
|
onClick: (event) => {
|
|
@@ -58,12 +101,15 @@ const PaginationAnchor = forwardRef(function PaginationAnchor({ active = false,
|
|
|
58
101
|
event.stopPropagation();
|
|
59
102
|
return;
|
|
60
103
|
}
|
|
104
|
+
if (page !== void 0 && context?.pageCount) {
|
|
105
|
+
event.preventDefault();
|
|
106
|
+
context.goTo(page);
|
|
107
|
+
}
|
|
61
108
|
onClick?.(event);
|
|
62
109
|
},
|
|
63
110
|
tabIndex: disabled ? -1 : tabIndex
|
|
64
111
|
});
|
|
65
112
|
});
|
|
66
|
-
/** A link to a numbered page. Set `active` on the current destination. */
|
|
67
113
|
const PaginationLink = forwardRef(function PaginationLink(props, ref) {
|
|
68
114
|
return /* @__PURE__ */ jsx(PaginationAnchor, {
|
|
69
115
|
...props,
|
|
@@ -71,11 +117,14 @@ const PaginationLink = forwardRef(function PaginationLink(props, ref) {
|
|
|
71
117
|
slot: "pagination-link"
|
|
72
118
|
});
|
|
73
119
|
});
|
|
74
|
-
|
|
75
|
-
const
|
|
120
|
+
const PaginationPrevious = forwardRef(function PaginationPrevious({ "aria-label": ariaLabel, children, page, rel, ...props }, ref) {
|
|
121
|
+
const context = usePaginationContext();
|
|
122
|
+
const targetPage = page ?? (context?.page ? context.page - 1 : void 0);
|
|
76
123
|
return /* @__PURE__ */ jsx(PaginationAnchor, {
|
|
77
124
|
...props,
|
|
78
125
|
"aria-label": ariaLabel ?? "Go to previous page",
|
|
126
|
+
disabled: props.disabled ?? (targetPage !== void 0 && targetPage < 1),
|
|
127
|
+
page: targetPage,
|
|
79
128
|
ref,
|
|
80
129
|
rel: rel ?? "prev",
|
|
81
130
|
slot: "pagination-previous",
|
|
@@ -85,11 +134,14 @@ const PaginationPrevious = forwardRef(function PaginationPrevious({ "aria-label"
|
|
|
85
134
|
}), /* @__PURE__ */ jsx("span", { children: "Previous" })] })
|
|
86
135
|
});
|
|
87
136
|
});
|
|
88
|
-
|
|
89
|
-
const
|
|
137
|
+
const PaginationNext = forwardRef(function PaginationNext({ "aria-label": ariaLabel, children, page, rel, ...props }, ref) {
|
|
138
|
+
const context = usePaginationContext();
|
|
139
|
+
const targetPage = page ?? (context?.page ? context.page + 1 : void 0);
|
|
90
140
|
return /* @__PURE__ */ jsx(PaginationAnchor, {
|
|
91
141
|
...props,
|
|
92
142
|
"aria-label": ariaLabel ?? "Go to next page",
|
|
143
|
+
disabled: props.disabled ?? (targetPage !== void 0 && targetPage > (context?.pageCount ?? Infinity)),
|
|
144
|
+
page: targetPage,
|
|
93
145
|
ref,
|
|
94
146
|
rel: rel ?? "next",
|
|
95
147
|
slot: "pagination-next",
|
|
@@ -99,7 +151,27 @@ const PaginationNext = forwardRef(function PaginationNext({ "aria-label": ariaLa
|
|
|
99
151
|
})] })
|
|
100
152
|
});
|
|
101
153
|
});
|
|
102
|
-
|
|
154
|
+
const PaginationFirst = forwardRef(function PaginationFirst({ "aria-label": ariaLabel, children, page, ...props }, ref) {
|
|
155
|
+
return /* @__PURE__ */ jsx(PaginationAnchor, {
|
|
156
|
+
...props,
|
|
157
|
+
"aria-label": ariaLabel ?? "Go to first page",
|
|
158
|
+
page: page ?? 1,
|
|
159
|
+
ref,
|
|
160
|
+
slot: "pagination-first",
|
|
161
|
+
children: children ?? "First"
|
|
162
|
+
});
|
|
163
|
+
});
|
|
164
|
+
const PaginationLast = forwardRef(function PaginationLast({ "aria-label": ariaLabel, children, page, ...props }, ref) {
|
|
165
|
+
const context = usePaginationContext();
|
|
166
|
+
return /* @__PURE__ */ jsx(PaginationAnchor, {
|
|
167
|
+
...props,
|
|
168
|
+
"aria-label": ariaLabel ?? "Go to last page",
|
|
169
|
+
page: page ?? context?.pageCount,
|
|
170
|
+
ref,
|
|
171
|
+
slot: "pagination-last",
|
|
172
|
+
children: children ?? "Last"
|
|
173
|
+
});
|
|
174
|
+
});
|
|
103
175
|
const PaginationEllipsis = forwardRef(function PaginationEllipsis({ children = "…", className, ...props }, ref) {
|
|
104
176
|
return /* @__PURE__ */ jsx("span", {
|
|
105
177
|
...props,
|
|
@@ -110,16 +182,43 @@ const PaginationEllipsis = forwardRef(function PaginationEllipsis({ children = "
|
|
|
110
182
|
children
|
|
111
183
|
});
|
|
112
184
|
});
|
|
185
|
+
function getPageItems(page, pageCount, siblingCount) {
|
|
186
|
+
const visible = /* @__PURE__ */ new Set([1, pageCount]);
|
|
187
|
+
for (let index = page - siblingCount; index <= page + siblingCount; index += 1) if (index > 0 && index <= pageCount) visible.add(index);
|
|
188
|
+
const pages = [...visible].sort((left, right) => left - right);
|
|
189
|
+
const items = [];
|
|
190
|
+
pages.forEach((value, index) => {
|
|
191
|
+
const previous = pages[index - 1];
|
|
192
|
+
if (previous !== void 0 && value - previous > 1) items.push("ellipsis");
|
|
193
|
+
items.push(value);
|
|
194
|
+
});
|
|
195
|
+
return items;
|
|
196
|
+
}
|
|
197
|
+
function PaginationGenerated({ page, pageCount, showFirstLast, siblingCount }) {
|
|
198
|
+
const pageItems = getPageItems(page, pageCount, siblingCount);
|
|
199
|
+
return /* @__PURE__ */ jsxs(PaginationList, { children: [
|
|
200
|
+
showFirstLast ? /* @__PURE__ */ jsx(PaginationItem, { children: /* @__PURE__ */ jsx(PaginationFirst, { disabled: page <= 1 }) }) : null,
|
|
201
|
+
/* @__PURE__ */ jsx(PaginationItem, { children: /* @__PURE__ */ jsx(PaginationPrevious, { disabled: page <= 1 }) }),
|
|
202
|
+
pageItems.map((item, index) => item === "ellipsis" ? /* @__PURE__ */ jsx(PaginationItem, { children: /* @__PURE__ */ jsx(PaginationEllipsis, {}) }, `ellipsis-${pageItems.slice(0, index).filter((value) => value === "ellipsis").length + 1}`) : /* @__PURE__ */ jsx(PaginationItem, { children: /* @__PURE__ */ jsx(PaginationLink, {
|
|
203
|
+
page: item,
|
|
204
|
+
children: item
|
|
205
|
+
}) }, item)),
|
|
206
|
+
/* @__PURE__ */ jsx(PaginationItem, { children: /* @__PURE__ */ jsx(PaginationNext, { disabled: page >= pageCount }) }),
|
|
207
|
+
showFirstLast ? /* @__PURE__ */ jsx(PaginationItem, { children: /* @__PURE__ */ jsx(PaginationLast, { disabled: page >= pageCount }) }) : null
|
|
208
|
+
] });
|
|
209
|
+
}
|
|
113
210
|
const Pagination = {
|
|
114
211
|
Root: PaginationRoot,
|
|
115
212
|
List: PaginationList,
|
|
116
213
|
Item: PaginationItem,
|
|
117
214
|
Link: PaginationLink,
|
|
215
|
+
First: PaginationFirst,
|
|
118
216
|
Previous: PaginationPrevious,
|
|
119
217
|
Next: PaginationNext,
|
|
218
|
+
Last: PaginationLast,
|
|
120
219
|
Ellipsis: PaginationEllipsis
|
|
121
220
|
};
|
|
122
221
|
//#endregion
|
|
123
|
-
export { Pagination, PaginationEllipsis, PaginationItem, PaginationLink, PaginationList, PaginationNext, PaginationPrevious, PaginationRoot };
|
|
222
|
+
export { Pagination, PaginationEllipsis, PaginationFirst, PaginationItem, PaginationLast, PaginationLink, PaginationList, PaginationNext, PaginationPrevious, PaginationRoot };
|
|
124
223
|
|
|
125
224
|
//# sourceMappingURL=pagination.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pagination.js","names":[],"sources":["../../../src/components/pagination/pagination.tsx"],"sourcesContent":["import { forwardRef } from \"react\";\nimport type { ComponentPropsWithoutRef, ReactNode } from \"react\";\n\nimport { cx } from \"../../styled-system/css\";\nimport { pagination } from \"../../styled-system/recipes\";\n\nexport type PaginationRootProps = ComponentPropsWithoutRef<\"nav\">;\n\n/** A navigation landmark for moving between pages of a result set. */\nexport const PaginationRoot = forwardRef<HTMLElement, PaginationRootProps>(function PaginationRoot(\n { \"aria-label\": ariaLabel, className, ...props },\n ref,\n) {\n return (\n <nav\n {...props}\n aria-label={ariaLabel ?? \"Pagination\"}\n ref={ref}\n className={cx(pagination().root, className)}\n data-jaci-component=\"pagination\"\n data-slot=\"pagination\"\n />\n );\n});\n\nexport type PaginationListProps = ComponentPropsWithoutRef<\"ul\">;\n\n/** An unordered list of page controls. */\nexport const PaginationList = forwardRef<HTMLUListElement, PaginationListProps>(\n function PaginationList({ className, ...props }, ref) {\n return (\n <ul\n {...props}\n ref={ref}\n className={cx(pagination().list, className)}\n data-slot=\"pagination-list\"\n />\n );\n },\n);\n\nexport type PaginationItemProps = ComponentPropsWithoutRef<\"li\">;\n\n/** A list item that wraps a page link, direction control, or ellipsis. */\nexport const PaginationItem = forwardRef<HTMLLIElement, PaginationItemProps>(\n function PaginationItem({ className, ...props }, ref) {\n return (\n <li\n {...props}\n ref={ref}\n className={cx(pagination().item, className)}\n data-slot=\"pagination-item\"\n />\n );\n },\n);\n\nexport interface PaginationLinkProps extends ComponentPropsWithoutRef<\"a\"> {\n /** Marks the link as the current page. */\n active?: boolean;\n /** Presents a non-navigable control when no destination is available. */\n disabled?: boolean;\n}\n\ntype PaginationAnchorSlot = \"pagination-link\" | \"pagination-previous\" | \"pagination-next\";\n\ninterface PaginationAnchorProps extends PaginationLinkProps {\n children?: ReactNode;\n slot: PaginationAnchorSlot;\n}\n\nfunction getAnchorClassName(active: boolean, disabled: boolean, slot: PaginationAnchorSlot) {\n const styles = pagination({ active, disabled });\n\n if (slot === \"pagination-previous\") {\n return cx(styles.link, styles.previous);\n }\n\n if (slot === \"pagination-next\") {\n return cx(styles.link, styles.next);\n }\n\n return styles.link;\n}\n\nconst PaginationAnchor = forwardRef<HTMLAnchorElement, PaginationAnchorProps>(\n function PaginationAnchor(\n {\n active = false,\n \"aria-current\": ariaCurrent,\n className,\n disabled = false,\n href,\n onClick,\n slot,\n tabIndex,\n ...props\n },\n ref,\n ) {\n return (\n <a\n {...props}\n aria-current={ariaCurrent ?? (active ? \"page\" : undefined)}\n aria-disabled={disabled || undefined}\n ref={ref}\n className={cx(getAnchorClassName(active, disabled, slot), className)}\n data-active={active || undefined}\n data-disabled={disabled || undefined}\n data-slot={slot}\n href={disabled ? undefined : href}\n onClick={(event) => {\n if (disabled) {\n event.preventDefault();\n event.stopPropagation();\n return;\n }\n\n onClick?.(event);\n }}\n tabIndex={disabled ? -1 : tabIndex}\n />\n );\n },\n);\n\n/** A link to a numbered page. Set `active` on the current destination. */\nexport const PaginationLink = forwardRef<HTMLAnchorElement, PaginationLinkProps>(\n function PaginationLink(props, ref) {\n return <PaginationAnchor {...props} ref={ref} slot=\"pagination-link\" />;\n },\n);\n\nexport interface PaginationPreviousProps extends PaginationLinkProps {\n children?: ReactNode;\n}\n\n/** A directional link to the preceding page. */\nexport const PaginationPrevious = forwardRef<HTMLAnchorElement, PaginationPreviousProps>(\n function PaginationPrevious({ \"aria-label\": ariaLabel, children, rel, ...props }, ref) {\n return (\n <PaginationAnchor\n {...props}\n aria-label={ariaLabel ?? \"Go to previous page\"}\n ref={ref}\n rel={rel ?? \"prev\"}\n slot=\"pagination-previous\"\n >\n {children ?? (\n <>\n <span aria-hidden=\"true\">‹</span>\n <span>Previous</span>\n </>\n )}\n </PaginationAnchor>\n );\n },\n);\n\nexport interface PaginationNextProps extends PaginationLinkProps {\n children?: ReactNode;\n}\n\n/** A directional link to the following page. */\nexport const PaginationNext = forwardRef<HTMLAnchorElement, PaginationNextProps>(\n function PaginationNext({ \"aria-label\": ariaLabel, children, rel, ...props }, ref) {\n return (\n <PaginationAnchor\n {...props}\n aria-label={ariaLabel ?? \"Go to next page\"}\n ref={ref}\n rel={rel ?? \"next\"}\n slot=\"pagination-next\"\n >\n {children ?? (\n <>\n <span>Next</span>\n <span aria-hidden=\"true\">›</span>\n </>\n )}\n </PaginationAnchor>\n );\n },\n);\n\nexport type PaginationEllipsisProps = ComponentPropsWithoutRef<\"span\">;\n\n/** A non-interactive marker for omitted page ranges. */\nexport const PaginationEllipsis = forwardRef<HTMLSpanElement, PaginationEllipsisProps>(\n function PaginationEllipsis({ children = \"…\", className, ...props }, ref) {\n return (\n <span\n {...props}\n aria-hidden=\"true\"\n ref={ref}\n className={cx(pagination().ellipsis, className)}\n data-slot=\"pagination-ellipsis\"\n >\n {children}\n </span>\n );\n },\n);\n\nexport const Pagination = {\n Root: PaginationRoot,\n List: PaginationList,\n Item: PaginationItem,\n Link: PaginationLink,\n Previous: PaginationPrevious,\n Next: PaginationNext,\n Ellipsis: PaginationEllipsis,\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"pagination.js","names":[],"sources":["../../../src/components/pagination/pagination.tsx"],"sourcesContent":["\"use client\";\n\nimport { createContext, forwardRef, useCallback, useContext, useMemo, useState } from \"react\";\nimport type { ComponentPropsWithoutRef, ReactNode } from \"react\";\n\nimport { cx } from \"../../styled-system/css\";\nimport { pagination } from \"../../styled-system/recipes\";\n\nexport type PaginationDensity = \"compact\" | \"comfortable\";\n\ninterface PaginationContextValue {\n density: PaginationDensity;\n goTo: (page: number) => void;\n page: number | undefined;\n pageCount: number | undefined;\n}\n\nconst PaginationContext = createContext<PaginationContextValue | null>(null);\n\nfunction usePaginationContext() {\n return useContext(PaginationContext);\n}\n\nexport interface PaginationRootProps extends Omit<ComponentPropsWithoutRef<\"nav\">, \"children\"> {\n children?: ReactNode;\n defaultPage?: number;\n density?: PaginationDensity;\n onPageChange?: (page: number) => void;\n page?: number;\n pageCount?: number;\n showFirstLast?: boolean;\n siblingCount?: number;\n}\n\nexport const PaginationRoot = forwardRef<HTMLElement, PaginationRootProps>(function PaginationRoot(\n {\n children,\n \"aria-label\": ariaLabel,\n className,\n defaultPage = 1,\n density = \"comfortable\",\n onPageChange,\n page: controlledPage,\n pageCount,\n showFirstLast = false,\n siblingCount = 1,\n ...props\n },\n ref,\n) {\n const [uncontrolledPage, setUncontrolledPage] = useState(defaultPage);\n const page = pageCount\n ? Math.min(Math.max(controlledPage ?? uncontrolledPage, 1), pageCount)\n : controlledPage;\n const goTo = useCallback(\n (nextPage: number) => {\n if (!pageCount) return;\n const next = Math.min(Math.max(nextPage, 1), pageCount);\n if (controlledPage === undefined) setUncontrolledPage(next);\n onPageChange?.(next);\n },\n [controlledPage, onPageChange, pageCount],\n );\n const context = useMemo(\n () => ({ density, goTo, page, pageCount }),\n [density, goTo, page, pageCount],\n );\n\n return (\n <PaginationContext.Provider value={context}>\n <nav\n {...props}\n aria-label={ariaLabel ?? \"Pagination\"}\n ref={ref}\n className={cx(pagination({ density }).root, className)}\n data-density={density}\n data-jaci-component=\"pagination\"\n data-slot=\"pagination\"\n >\n {children ??\n (pageCount ? (\n <PaginationGenerated\n page={page ?? 1}\n pageCount={pageCount}\n showFirstLast={showFirstLast}\n siblingCount={siblingCount}\n />\n ) : null)}\n </nav>\n </PaginationContext.Provider>\n );\n});\n\nexport type PaginationListProps = ComponentPropsWithoutRef<\"ul\">;\nexport const PaginationList = forwardRef<HTMLUListElement, PaginationListProps>(\n function PaginationList({ className, ...props }, ref) {\n const context = usePaginationContext();\n return (\n <ul\n {...props}\n ref={ref}\n className={cx(pagination({ density: context?.density }).list, className)}\n data-slot=\"pagination-list\"\n />\n );\n },\n);\n\nexport type PaginationItemProps = ComponentPropsWithoutRef<\"li\">;\nexport const PaginationItem = forwardRef<HTMLLIElement, PaginationItemProps>(\n function PaginationItem({ className, ...props }, ref) {\n return (\n <li\n {...props}\n ref={ref}\n className={cx(pagination().item, className)}\n data-slot=\"pagination-item\"\n />\n );\n },\n);\n\nexport interface PaginationLinkProps extends ComponentPropsWithoutRef<\"a\"> {\n active?: boolean;\n disabled?: boolean;\n page?: number | undefined;\n}\n\ntype PaginationAnchorSlot =\n | \"pagination-link\"\n | \"pagination-first\"\n | \"pagination-last\"\n | \"pagination-previous\"\n | \"pagination-next\";\n\ninterface PaginationAnchorProps extends PaginationLinkProps {\n slot: PaginationAnchorSlot;\n}\n\nfunction getAnchorClassName(\n active: boolean,\n disabled: boolean,\n density: PaginationDensity | undefined,\n slot: PaginationAnchorSlot,\n) {\n const styles = pagination({ active, density, disabled });\n if (slot === \"pagination-previous\") return cx(styles.link, styles.previous);\n if (slot === \"pagination-next\") return cx(styles.link, styles.next);\n if (slot === \"pagination-first\") return cx(styles.link, styles.first);\n if (slot === \"pagination-last\") return cx(styles.link, styles.last);\n return styles.link;\n}\n\nconst PaginationAnchor = forwardRef<HTMLAnchorElement, PaginationAnchorProps>(\n function PaginationAnchor(\n {\n active: activeProp,\n \"aria-current\": ariaCurrent,\n className,\n disabled: disabledProp = false,\n href,\n onClick,\n page,\n slot,\n tabIndex,\n ...props\n },\n ref,\n ) {\n const context = usePaginationContext();\n const active = activeProp ?? (page !== undefined && context?.page === page);\n const disabled = Boolean(disabledProp || (page !== undefined && context?.pageCount === 1));\n return (\n <a\n {...props}\n aria-current={ariaCurrent ?? (active ? \"page\" : undefined)}\n aria-disabled={disabled || undefined}\n ref={ref}\n className={cx(\n getAnchorClassName(Boolean(active), disabled, context?.density, slot),\n className,\n )}\n data-active={active || undefined}\n data-disabled={disabled || undefined}\n data-page={page}\n data-slot={slot}\n href={disabled ? undefined : href}\n onClick={(event) => {\n if (disabled) {\n event.preventDefault();\n event.stopPropagation();\n return;\n }\n if (page !== undefined && context?.pageCount) {\n event.preventDefault();\n context.goTo(page);\n }\n onClick?.(event);\n }}\n tabIndex={disabled ? -1 : tabIndex}\n />\n );\n },\n);\n\nexport const PaginationLink = forwardRef<HTMLAnchorElement, PaginationLinkProps>(\n function PaginationLink(props, ref) {\n return <PaginationAnchor {...props} ref={ref} slot=\"pagination-link\" />;\n },\n);\n\nexport interface PaginationPreviousProps extends PaginationLinkProps {\n children?: ReactNode;\n}\nexport const PaginationPrevious = forwardRef<HTMLAnchorElement, PaginationPreviousProps>(\n function PaginationPrevious({ \"aria-label\": ariaLabel, children, page, rel, ...props }, ref) {\n const context = usePaginationContext();\n const targetPage = page ?? (context?.page ? context.page - 1 : undefined);\n return (\n <PaginationAnchor\n {...props}\n aria-label={ariaLabel ?? \"Go to previous page\"}\n disabled={props.disabled ?? (targetPage !== undefined && targetPage < 1)}\n page={targetPage}\n ref={ref}\n rel={rel ?? \"prev\"}\n slot=\"pagination-previous\"\n >\n {children ?? (\n <>\n <span aria-hidden=\"true\">‹</span>\n <span>Previous</span>\n </>\n )}\n </PaginationAnchor>\n );\n },\n);\n\nexport interface PaginationNextProps extends PaginationLinkProps {\n children?: ReactNode;\n}\nexport const PaginationNext = forwardRef<HTMLAnchorElement, PaginationNextProps>(\n function PaginationNext({ \"aria-label\": ariaLabel, children, page, rel, ...props }, ref) {\n const context = usePaginationContext();\n const targetPage = page ?? (context?.page ? context.page + 1 : undefined);\n return (\n <PaginationAnchor\n {...props}\n aria-label={ariaLabel ?? \"Go to next page\"}\n disabled={\n props.disabled ??\n (targetPage !== undefined && targetPage > (context?.pageCount ?? Infinity))\n }\n page={targetPage}\n ref={ref}\n rel={rel ?? \"next\"}\n slot=\"pagination-next\"\n >\n {children ?? (\n <>\n <span>Next</span>\n <span aria-hidden=\"true\">›</span>\n </>\n )}\n </PaginationAnchor>\n );\n },\n);\n\nexport interface PaginationFirstProps extends PaginationLinkProps {\n children?: ReactNode;\n}\nexport const PaginationFirst = forwardRef<HTMLAnchorElement, PaginationFirstProps>(\n function PaginationFirst({ \"aria-label\": ariaLabel, children, page, ...props }, ref) {\n return (\n <PaginationAnchor\n {...props}\n aria-label={ariaLabel ?? \"Go to first page\"}\n page={page ?? 1}\n ref={ref}\n slot=\"pagination-first\"\n >\n {children ?? \"First\"}\n </PaginationAnchor>\n );\n },\n);\n\nexport interface PaginationLastProps extends PaginationLinkProps {\n children?: ReactNode;\n}\nexport const PaginationLast = forwardRef<HTMLAnchorElement, PaginationLastProps>(\n function PaginationLast({ \"aria-label\": ariaLabel, children, page, ...props }, ref) {\n const context = usePaginationContext();\n return (\n <PaginationAnchor\n {...props}\n aria-label={ariaLabel ?? \"Go to last page\"}\n page={page ?? context?.pageCount}\n ref={ref}\n slot=\"pagination-last\"\n >\n {children ?? \"Last\"}\n </PaginationAnchor>\n );\n },\n);\n\nexport type PaginationEllipsisProps = ComponentPropsWithoutRef<\"span\">;\nexport const PaginationEllipsis = forwardRef<HTMLSpanElement, PaginationEllipsisProps>(\n function PaginationEllipsis({ children = \"…\", className, ...props }, ref) {\n return (\n <span\n {...props}\n aria-hidden=\"true\"\n ref={ref}\n className={cx(pagination().ellipsis, className)}\n data-slot=\"pagination-ellipsis\"\n >\n {children}\n </span>\n );\n },\n);\n\ntype PaginationPageItem = number | \"ellipsis\";\n\nfunction getPageItems(page: number, pageCount: number, siblingCount: number): PaginationPageItem[] {\n const visible = new Set<number>([1, pageCount]);\n for (let index = page - siblingCount; index <= page + siblingCount; index += 1) {\n if (index > 0 && index <= pageCount) visible.add(index);\n }\n const pages = [...visible].sort((left, right) => left - right);\n const items: PaginationPageItem[] = [];\n pages.forEach((value, index) => {\n const previous = pages[index - 1];\n if (previous !== undefined && value - previous > 1) items.push(\"ellipsis\");\n items.push(value);\n });\n return items;\n}\n\nfunction PaginationGenerated({\n page,\n pageCount,\n showFirstLast,\n siblingCount,\n}: {\n page: number;\n pageCount: number;\n showFirstLast: boolean;\n siblingCount: number;\n}) {\n const pageItems = getPageItems(page, pageCount, siblingCount);\n return (\n <PaginationList>\n {showFirstLast ? (\n <PaginationItem>\n <PaginationFirst disabled={page <= 1} />\n </PaginationItem>\n ) : null}\n <PaginationItem>\n <PaginationPrevious disabled={page <= 1} />\n </PaginationItem>\n {pageItems.map((item, index) =>\n item === \"ellipsis\" ? (\n <PaginationItem\n key={`ellipsis-${pageItems.slice(0, index).filter((value) => value === \"ellipsis\").length + 1}`}\n >\n <PaginationEllipsis />\n </PaginationItem>\n ) : (\n <PaginationItem key={item}>\n <PaginationLink page={item}>{item}</PaginationLink>\n </PaginationItem>\n ),\n )}\n <PaginationItem>\n <PaginationNext disabled={page >= pageCount} />\n </PaginationItem>\n {showFirstLast ? (\n <PaginationItem>\n <PaginationLast disabled={page >= pageCount} />\n </PaginationItem>\n ) : null}\n </PaginationList>\n );\n}\n\nexport const Pagination = {\n Root: PaginationRoot,\n List: PaginationList,\n Item: PaginationItem,\n Link: PaginationLink,\n First: PaginationFirst,\n Previous: PaginationPrevious,\n Next: PaginationNext,\n Last: PaginationLast,\n Ellipsis: PaginationEllipsis,\n};\n"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { Table, TableBody, TableBodyProps, TableCaption, TableCaptionProps, TableCell, TableCellProps, TableContainer, TableContainerProps, TableDensity, TableEmpty, TableEmptyProps, TableFooter, TableFooterProps, TableHead, TableHeadProps, TableHeader, TableHeaderProps, TableRoot, TableRootProps, TableRow, TableRowProps, TableSelectionCell, TableSelectionCellProps, TableSelectionHeader, TableSelectionHeaderProps, TableSortDirection } from "./table.cjs";
|
|
2
|
-
export { Table, TableBody, type TableBodyProps, TableCaption, type TableCaptionProps, TableCell, type TableCellProps, TableContainer, type TableContainerProps, type TableDensity, TableEmpty, type TableEmptyProps, TableFooter, type TableFooterProps, TableHead, type TableHeadProps, TableHeader, type TableHeaderProps, TableRoot, type TableRootProps, TableRow, type TableRowProps, TableSelectionCell, type TableSelectionCellProps, TableSelectionHeader, type TableSelectionHeaderProps, type TableSortDirection };
|
|
1
|
+
import { Table, TableAlignment, TableBody, TableBodyProps, TableCaption, TableCaptionProps, TableCell, TableCellProps, TableContainer, TableContainerProps, TableDensity, TableDescription, TableDescriptionProps, TableEmpty, TableEmptyProps, TableError, TableErrorProps, TableFooter, TableFooterProps, TableHead, TableHeadProps, TableHeader, TableHeaderProps, TableHideBelow, TableLoading, TableLoadingProps, TableRoot, TableRootProps, TableRow, TableRowProps, TableSelectionCell, TableSelectionCellProps, TableSelectionHeader, TableSelectionHeaderProps, TableSelectionMode, TableSortDirection, TableSortState, TableStatus } from "./table.cjs";
|
|
2
|
+
export { Table, type TableAlignment, TableBody, type TableBodyProps, TableCaption, type TableCaptionProps, TableCell, type TableCellProps, TableContainer, type TableContainerProps, type TableDensity, TableDescription, type TableDescriptionProps, TableEmpty, type TableEmptyProps, TableError, type TableErrorProps, TableFooter, type TableFooterProps, TableHead, type TableHeadProps, TableHeader, type TableHeaderProps, type TableHideBelow, TableLoading, type TableLoadingProps, TableRoot, type TableRootProps, TableRow, type TableRowProps, TableSelectionCell, type TableSelectionCellProps, TableSelectionHeader, type TableSelectionHeaderProps, type TableSelectionMode, type TableSortDirection, type TableSortState, type TableStatus };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { Table, TableBody, TableBodyProps, TableCaption, TableCaptionProps, TableCell, TableCellProps, TableContainer, TableContainerProps, TableDensity, TableEmpty, TableEmptyProps, TableFooter, TableFooterProps, TableHead, TableHeadProps, TableHeader, TableHeaderProps, TableRoot, TableRootProps, TableRow, TableRowProps, TableSelectionCell, TableSelectionCellProps, TableSelectionHeader, TableSelectionHeaderProps, TableSortDirection } from "./table.js";
|
|
2
|
-
export { Table, TableBody, type TableBodyProps, TableCaption, type TableCaptionProps, TableCell, type TableCellProps, TableContainer, type TableContainerProps, type TableDensity, TableEmpty, type TableEmptyProps, TableFooter, type TableFooterProps, TableHead, type TableHeadProps, TableHeader, type TableHeaderProps, TableRoot, type TableRootProps, TableRow, type TableRowProps, TableSelectionCell, type TableSelectionCellProps, TableSelectionHeader, type TableSelectionHeaderProps, type TableSortDirection };
|
|
1
|
+
import { Table, TableAlignment, TableBody, TableBodyProps, TableCaption, TableCaptionProps, TableCell, TableCellProps, TableContainer, TableContainerProps, TableDensity, TableDescription, TableDescriptionProps, TableEmpty, TableEmptyProps, TableError, TableErrorProps, TableFooter, TableFooterProps, TableHead, TableHeadProps, TableHeader, TableHeaderProps, TableHideBelow, TableLoading, TableLoadingProps, TableRoot, TableRootProps, TableRow, TableRowProps, TableSelectionCell, TableSelectionCellProps, TableSelectionHeader, TableSelectionHeaderProps, TableSelectionMode, TableSortDirection, TableSortState, TableStatus } from "./table.js";
|
|
2
|
+
export { Table, type TableAlignment, TableBody, type TableBodyProps, TableCaption, type TableCaptionProps, TableCell, type TableCellProps, TableContainer, type TableContainerProps, type TableDensity, TableDescription, type TableDescriptionProps, TableEmpty, type TableEmptyProps, TableError, type TableErrorProps, TableFooter, type TableFooterProps, TableHead, type TableHeadProps, TableHeader, type TableHeaderProps, type TableHideBelow, TableLoading, type TableLoadingProps, TableRoot, type TableRootProps, TableRow, type TableRowProps, TableSelectionCell, type TableSelectionCellProps, TableSelectionHeader, type TableSelectionHeaderProps, type TableSelectionMode, type TableSortDirection, type TableSortState, type TableStatus };
|