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.
Files changed (84) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/README.md +37 -0
  3. package/dist/components/command/command.cjs +55 -34
  4. package/dist/components/command/command.cjs.map +1 -1
  5. package/dist/components/command/command.d.cts +1 -0
  6. package/dist/components/command/command.d.ts +1 -0
  7. package/dist/components/command/command.js +55 -34
  8. package/dist/components/command/command.js.map +1 -1
  9. package/dist/components/data-toolbar/data-toolbar.cjs +141 -0
  10. package/dist/components/data-toolbar/data-toolbar.cjs.map +1 -0
  11. package/dist/components/data-toolbar/data-toolbar.d.cts +50 -0
  12. package/dist/components/data-toolbar/data-toolbar.d.ts +50 -0
  13. package/dist/components/data-toolbar/data-toolbar.js +132 -0
  14. package/dist/components/data-toolbar/data-toolbar.js.map +1 -0
  15. package/dist/components/data-toolbar/index.d.cts +2 -0
  16. package/dist/components/data-toolbar/index.d.ts +2 -0
  17. package/dist/components/data-view/data-view.cjs +33 -1
  18. package/dist/components/data-view/data-view.cjs.map +1 -1
  19. package/dist/components/data-view/data-view.d.cts +12 -1
  20. package/dist/components/data-view/data-view.d.ts +12 -1
  21. package/dist/components/data-view/data-view.js +31 -2
  22. package/dist/components/data-view/data-view.js.map +1 -1
  23. package/dist/components/data-view/index.d.cts +2 -2
  24. package/dist/components/data-view/index.d.ts +2 -2
  25. package/dist/components/list/list.cjs +3 -1
  26. package/dist/components/list/list.cjs.map +1 -1
  27. package/dist/components/list/list.d.cts +3 -1
  28. package/dist/components/list/list.d.ts +3 -1
  29. package/dist/components/list/list.js +3 -1
  30. package/dist/components/list/list.js.map +1 -1
  31. package/dist/components/pagination/index.d.cts +2 -2
  32. package/dist/components/pagination/index.d.ts +2 -2
  33. package/dist/components/pagination/pagination.cjs +122 -21
  34. package/dist/components/pagination/pagination.cjs.map +1 -1
  35. package/dist/components/pagination/pagination.d.cts +25 -13
  36. package/dist/components/pagination/pagination.d.ts +25 -13
  37. package/dist/components/pagination/pagination.js +122 -23
  38. package/dist/components/pagination/pagination.js.map +1 -1
  39. package/dist/components/table/index.d.cts +2 -2
  40. package/dist/components/table/index.d.ts +2 -2
  41. package/dist/components/table/table.cjs +265 -46
  42. package/dist/components/table/table.cjs.map +1 -1
  43. package/dist/components/table/table.d.cts +41 -8
  44. package/dist/components/table/table.d.ts +41 -8
  45. package/dist/components/table/table.js +264 -48
  46. package/dist/components/table/table.js.map +1 -1
  47. package/dist/components/tree-view/index.d.cts +2 -2
  48. package/dist/components/tree-view/index.d.ts +2 -2
  49. package/dist/components/tree-view/tree-view.cjs +60 -3
  50. package/dist/components/tree-view/tree-view.cjs.map +1 -1
  51. package/dist/components/tree-view/tree-view.d.cts +12 -1
  52. package/dist/components/tree-view/tree-view.d.ts +12 -1
  53. package/dist/components/tree-view/tree-view.js +58 -4
  54. package/dist/components/tree-view/tree-view.js.map +1 -1
  55. package/dist/index.cjs +22 -0
  56. package/dist/index.d.cts +7 -5
  57. package/dist/index.d.ts +7 -5
  58. package/dist/index.js +6 -5
  59. package/dist/styled-system/recipes/data-toolbar.cjs +40 -0
  60. package/dist/styled-system/recipes/data-toolbar.cjs.map +1 -0
  61. package/dist/styled-system/recipes/data-toolbar.js +40 -0
  62. package/dist/styled-system/recipes/data-toolbar.js.map +1 -0
  63. package/dist/styled-system/recipes/data-view.cjs +3 -0
  64. package/dist/styled-system/recipes/data-view.cjs.map +1 -1
  65. package/dist/styled-system/recipes/data-view.js +3 -0
  66. package/dist/styled-system/recipes/data-view.js.map +1 -1
  67. package/dist/styled-system/recipes/list.cjs +7 -1
  68. package/dist/styled-system/recipes/list.cjs.map +1 -1
  69. package/dist/styled-system/recipes/list.js +7 -1
  70. package/dist/styled-system/recipes/list.js.map +1 -1
  71. package/dist/styled-system/recipes/pagination.cjs +9 -1
  72. package/dist/styled-system/recipes/pagination.cjs.map +1 -1
  73. package/dist/styled-system/recipes/pagination.js +9 -1
  74. package/dist/styled-system/recipes/pagination.js.map +1 -1
  75. package/dist/styled-system/recipes/table.cjs +15 -2
  76. package/dist/styled-system/recipes/table.cjs.map +1 -1
  77. package/dist/styled-system/recipes/table.js +15 -2
  78. package/dist/styled-system/recipes/table.js.map +1 -1
  79. package/dist/styled-system/recipes/tree-view.cjs +4 -1
  80. package/dist/styled-system/recipes/tree-view.cjs.map +1 -1
  81. package/dist/styled-system/recipes/tree-view.js +4 -1
  82. package/dist/styled-system/recipes/tree-view.js.map +1 -1
  83. package/dist/styles.css +237 -1
  84. 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
- /** A navigation landmark for moving between pages of a result set. */
7
- const PaginationRoot = forwardRef(function PaginationRoot({ "aria-label": ariaLabel, className, ...props }, ref) {
8
- return /* @__PURE__ */ jsx("nav", {
9
- ...props,
10
- "aria-label": ariaLabel ?? "Pagination",
11
- ref,
12
- className: cx(pagination().root, className),
13
- "data-jaci-component": "pagination",
14
- "data-slot": "pagination"
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 = false, "aria-current": ariaCurrent, className, disabled = false, href, onClick, slot, tabIndex, ...props }, ref) {
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
- /** A directional link to the preceding page. */
75
- const PaginationPrevious = forwardRef(function PaginationPrevious({ "aria-label": ariaLabel, children, rel, ...props }, ref) {
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
- /** A directional link to the following page. */
89
- const PaginationNext = forwardRef(function PaginationNext({ "aria-label": ariaLabel, children, rel, ...props }, ref) {
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
- /** A non-interactive marker for omitted page ranges. */
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 };