boreal-ui 0.0.74 → 0.0.76

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 (37) hide show
  1. package/dist/core/Pager-B4hyIUdo.js.map +1 -1
  2. package/dist/core/Pager-wl7_umU4.cjs.map +1 -1
  3. package/dist/core/index.cjs.js +599 -131
  4. package/dist/core/index.cjs.js.map +1 -1
  5. package/dist/core/index.js +599 -131
  6. package/dist/core/index.js.map +1 -1
  7. package/dist/generated-docs/Typography.props.js +204 -0
  8. package/dist/next/Pager-DFKfUn1s.js.map +1 -1
  9. package/dist/next/Pager-DcibmVu1.cjs.map +1 -1
  10. package/dist/next/index.cjs.js +599 -131
  11. package/dist/next/index.cjs.js.map +1 -1
  12. package/dist/next/index.js +599 -131
  13. package/dist/next/index.js.map +1 -1
  14. package/dist/tsconfig.build.tsbuildinfo +1 -1
  15. package/dist/types/components/Pager/Pager.types.d.ts +2 -2
  16. package/dist/types/components/Pager/Pager.types.d.ts.map +1 -1
  17. package/dist/types/components/Pager/core/Pager.d.ts +2 -2
  18. package/dist/types/components/Pager/core/Pager.d.ts.map +1 -1
  19. package/dist/types/components/Pager/next/Pager.d.ts +2 -2
  20. package/dist/types/components/Pager/next/Pager.d.ts.map +1 -1
  21. package/dist/types/components/Typography/Typography.types.d.ts +75 -0
  22. package/dist/types/components/Typography/Typography.types.d.ts.map +1 -1
  23. package/dist/types/generated-docs/CheckBox.props.d.ts +7 -0
  24. package/dist/types/generated-docs/CheckBox.props.d.ts.map +1 -0
  25. package/dist/types/generated-docs/ChipGroup.props.d.ts +7 -0
  26. package/dist/types/generated-docs/ChipGroup.props.d.ts.map +1 -0
  27. package/dist/types/generated-docs/DateTimePicker.props.d.ts.map +1 -1
  28. package/dist/types/generated-docs/Dropdown.props.d.ts.map +1 -1
  29. package/dist/types/generated-docs/FileUpload.props.d.ts.map +1 -1
  30. package/dist/types/generated-docs/FormGroup.props.d.ts.map +1 -1
  31. package/dist/types/generated-docs/Pager.props.d.ts +7 -0
  32. package/dist/types/generated-docs/Pager.props.d.ts.map +1 -0
  33. package/dist/types/generated-docs/Popover.props.d.ts +7 -0
  34. package/dist/types/generated-docs/Popover.props.d.ts.map +1 -0
  35. package/dist/types/generated-docs/index.d.ts +4 -0
  36. package/dist/types/generated-docs/index.d.ts.map +1 -1
  37. package/package.json +1 -1
@@ -0,0 +1,204 @@
1
+ /**
2
+ * AUTO-GENERATED FILE. DO NOT EDIT.
3
+ * Generated by scripts/generate-component-docs.cjs
4
+ */
5
+ export const typographyPropDocs = {
6
+ "name": "Typography",
7
+ "interfaceName": "TypographyProps",
8
+ "description": "",
9
+ "sourcePath": "src\\components\\Typography\\Typography.types.ts",
10
+ "props": [
11
+ {
12
+ "name": "align",
13
+ "type": "TypographyAlign",
14
+ "description": "Horizontal text alignment.",
15
+ "required": false,
16
+ "inherited": false,
17
+ "category": "props"
18
+ },
19
+ {
20
+ "name": "aria-atomic",
21
+ "type": "boolean",
22
+ "description": "Whether assistive technologies should present the entire updated region when part of a live region changes.",
23
+ "required": false,
24
+ "inherited": false,
25
+ "category": "aria"
26
+ },
27
+ {
28
+ "name": "aria-busy",
29
+ "type": "boolean",
30
+ "description": "Indicates whether the element is currently being updated, such as during loading.",
31
+ "required": false,
32
+ "inherited": false,
33
+ "category": "aria"
34
+ },
35
+ {
36
+ "name": "aria-describedby",
37
+ "type": "string",
38
+ "description": "References the id of another element that describes this element.",
39
+ "required": false,
40
+ "inherited": false,
41
+ "category": "aria"
42
+ },
43
+ {
44
+ "name": "aria-hidden",
45
+ "type": "boolean",
46
+ "description": "Whether the element should be hidden from assistive technologies.",
47
+ "required": false,
48
+ "inherited": false,
49
+ "category": "aria"
50
+ },
51
+ {
52
+ "name": "aria-label",
53
+ "type": "string",
54
+ "description": "Defines an accessible label for the element when a visible label is not sufficient.",
55
+ "required": false,
56
+ "inherited": false,
57
+ "category": "aria"
58
+ },
59
+ {
60
+ "name": "aria-labelledby",
61
+ "type": "string",
62
+ "description": "References the id of another element that labels this element.",
63
+ "required": false,
64
+ "inherited": false,
65
+ "category": "aria"
66
+ },
67
+ {
68
+ "name": "aria-live",
69
+ "type": "\"off\" | \"polite\" | \"assertive\"",
70
+ "description": "Indicates that the element will be updated and describes how updates should be announced.",
71
+ "required": false,
72
+ "inherited": false,
73
+ "category": "aria"
74
+ },
75
+ {
76
+ "name": "as",
77
+ "type": "ElementType",
78
+ "description": "The HTML element or custom component to render as. For example: `\"p\"`, `\"span\"`, `\"h1\"`, or a custom React component.",
79
+ "required": false,
80
+ "inherited": false,
81
+ "category": "props"
82
+ },
83
+ {
84
+ "name": "children",
85
+ "type": "ReactNode",
86
+ "description": "The content to render inside the typography component.",
87
+ "required": false,
88
+ "inherited": false,
89
+ "category": "props"
90
+ },
91
+ {
92
+ "name": "className",
93
+ "type": "string",
94
+ "description": "Optional custom CSS class name for the root element.",
95
+ "required": false,
96
+ "inherited": false,
97
+ "category": "styling"
98
+ },
99
+ {
100
+ "name": "id",
101
+ "type": "string",
102
+ "description": "Optional unique id for the root element.",
103
+ "required": false,
104
+ "inherited": false,
105
+ "category": "props"
106
+ },
107
+ {
108
+ "name": "italic",
109
+ "type": "boolean",
110
+ "description": "Whether the text should be displayed in italic style.",
111
+ "required": false,
112
+ "inherited": false,
113
+ "category": "props"
114
+ },
115
+ {
116
+ "name": "noWrap",
117
+ "type": "boolean",
118
+ "description": "Whether the text should remain on a single line without wrapping.",
119
+ "required": false,
120
+ "inherited": false,
121
+ "category": "props"
122
+ },
123
+ {
124
+ "name": "role",
125
+ "type": "AriaRole",
126
+ "description": "Optional ARIA role for the rendered element.",
127
+ "required": false,
128
+ "inherited": false,
129
+ "category": "aria"
130
+ },
131
+ {
132
+ "name": "srOnly",
133
+ "type": "boolean",
134
+ "description": "Whether the text should be visually hidden but still available to screen readers.",
135
+ "required": false,
136
+ "inherited": false,
137
+ "category": "props"
138
+ },
139
+ {
140
+ "name": "style",
141
+ "type": "CSSProperties",
142
+ "description": "Optional inline styles applied to the root element.",
143
+ "required": false,
144
+ "inherited": false,
145
+ "category": "props"
146
+ },
147
+ {
148
+ "name": "testId",
149
+ "type": "string",
150
+ "description": "Optional test id used for testing the component.",
151
+ "required": false,
152
+ "inherited": false,
153
+ "category": "props"
154
+ },
155
+ {
156
+ "name": "theme",
157
+ "type": "TypographyTheme",
158
+ "description": "Visual theme style applied to the typography.",
159
+ "required": false,
160
+ "inherited": false,
161
+ "category": "styling"
162
+ },
163
+ {
164
+ "name": "title",
165
+ "type": "string",
166
+ "description": "Advisory text for the element, typically shown as a tooltip on hover.",
167
+ "required": false,
168
+ "inherited": false,
169
+ "category": "props"
170
+ },
171
+ {
172
+ "name": "truncate",
173
+ "type": "boolean",
174
+ "description": "Whether overflowing text should be truncated, typically with an ellipsis.",
175
+ "required": false,
176
+ "inherited": false,
177
+ "category": "props"
178
+ },
179
+ {
180
+ "name": "underline",
181
+ "type": "boolean",
182
+ "description": "Whether the text should be underlined.",
183
+ "required": false,
184
+ "inherited": false,
185
+ "category": "props"
186
+ },
187
+ {
188
+ "name": "variant",
189
+ "type": "TypographyVariant",
190
+ "description": "Predefined typography style variant. Examples may include headings, body text, captions, or labels.",
191
+ "required": false,
192
+ "inherited": false,
193
+ "category": "props"
194
+ },
195
+ {
196
+ "name": "weight",
197
+ "type": "TypographyWeight",
198
+ "description": "Font weight of the text.",
199
+ "required": false,
200
+ "inherited": false,
201
+ "category": "props"
202
+ }
203
+ ]
204
+ };
@@ -1 +1 @@
1
- {"version":3,"file":"Pager-DFKfUn1s.js","sources":["../../src/Icons/ArrowLeftIcon.tsx","../../src/components/Pager/PagerBase.tsx","../../src/components/Pager/next/Pager.tsx"],"sourcesContent":["const ArrowLeftIcon: React.FC<React.SVGProps<SVGSVGElement>> = (props) => (\r\n <svg\r\n width=\"24px\"\r\n height=\"24px\"\r\n viewBox=\"0 0 24 24\"\r\n strokeWidth=\"1.5\"\r\n fill=\"none\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n color=\"currentColor\"\r\n {...props}\r\n >\r\n <path\r\n fillRule=\"evenodd\"\r\n clipRule=\"evenodd\"\r\n d=\"M15.287 18.6929C15.5673 18.5768 15.75 18.3033 15.75 18V5.99998C15.75 5.69663 15.5673 5.42315 15.287 5.30707C15.0068 5.19098 14.6842 5.25515 14.4697 5.46965L8.46967 11.4696C8.17678 11.7625 8.17678 12.2374 8.46967 12.5303L14.4697 18.5303C14.6842 18.7448 15.0068 18.809 15.287 18.6929Z\"\r\n fill=\"currentColor\"\r\n ></path>\r\n </svg>\r\n);\r\n\r\nexport default ArrowLeftIcon;\r\n","import React from \"react\";\r\nimport { ArrowLeftIcon, ArrowRightIcon } from \"../../Icons\";\r\nimport {\r\n getDefaultRounding,\r\n getDefaultShadow,\r\n getDefaultSize,\r\n getDefaultTheme,\r\n} from \"../../config/boreal-style-config\";\r\nimport { BasePagerProps } from \"./Pager.types\";\r\nimport { combineClassNames } from \"../../utils/classNames\";\r\nimport { capitalize } from \"../../utils/capitalize\";\r\n\r\nconst BasePager: React.FC<BasePagerProps> = ({\r\n totalItems,\r\n itemsPerPage,\r\n currentPage,\r\n serverControlled = false,\r\n onPageChange,\r\n className = \"\",\r\n size = getDefaultSize(),\r\n theme = getDefaultTheme(),\r\n rounding = getDefaultRounding(),\r\n shadow = getDefaultShadow(),\r\n state = \"\",\r\n \"aria-label\": ariaLabel = \"Pagination\",\r\n \"aria-describedby\": ariaDescribedBy,\r\n \"aria-labelledby\": ariaLabelledBy,\r\n \"page-list-aria-label\": pageListAriaLabel = \"Page list\",\r\n \"previous-button-aria-label\": previousButtonAriaLabel = \"Go to previous page\",\r\n \"next-button-aria-label\": nextButtonAriaLabel = \"Go to next page\",\r\n getPageAriaLabel = (pageNumber, isActive) =>\r\n isActive ? `Current page, page ${pageNumber}` : `Go to page ${pageNumber}`,\r\n getLiveRegionMessage = (activePage, totalPages) =>\r\n `Page ${activePage} of ${totalPages}`,\r\n liveRegionAriaLive = \"polite\",\r\n \"data-testid\": testId = \"pager\",\r\n Button,\r\n IconButton,\r\n classMap,\r\n}) => {\r\n const perPage = Math.max(1, itemsPerPage || 1);\r\n const totalPages = Math.max(1, Math.ceil(totalItems / perPage));\r\n const page = Math.min(Math.max(1, currentPage || 1), totalPages);\r\n\r\n const pages = serverControlled\r\n ? []\r\n : Array.from({ length: totalPages }, (_, i) => i + 1);\r\n\r\n const goTo = (p: number) => {\r\n const clamped = Math.min(Math.max(1, p), totalPages);\r\n if (clamped !== page) onPageChange(clamped);\r\n };\r\n\r\n const wrapperClass = combineClassNames(classMap.wrapper, className);\r\n\r\n const buttonBaseClass = combineClassNames(\r\n classMap.button,\r\n shadow && classMap[`shadow${capitalize(shadow)}`],\r\n rounding && classMap[`round${capitalize(rounding)}`],\r\n );\r\n\r\n const liveRegionId = `${testId}-status`;\r\n\r\n return (\r\n <nav\r\n aria-label={ariaLabelledBy ? undefined : ariaLabel}\r\n aria-labelledby={ariaLabelledBy}\r\n aria-describedby={ariaDescribedBy ?? liveRegionId}\r\n className={wrapperClass}\r\n data-testid={testId}\r\n >\r\n <p\r\n id={liveRegionId}\r\n className=\"sr_only\"\r\n aria-live={liveRegionAriaLive}\r\n aria-atomic=\"true\"\r\n data-testid={`${testId}-status`}\r\n >\r\n {getLiveRegionMessage(page, totalPages)}\r\n </p>\r\n\r\n <div className={classMap.controls}>\r\n <IconButton\r\n icon={ArrowLeftIcon}\r\n theme={theme}\r\n state={state}\r\n size={size}\r\n shadow={shadow}\r\n rounding={rounding}\r\n className={classMap.controlButton}\r\n disabled={page <= 1}\r\n aria-label={previousButtonAriaLabel}\r\n title=\"Previous page\"\r\n onClick={() => goTo(page - 1)}\r\n aria-controls={pageListAriaLabel ? `${testId}-page-list` : undefined}\r\n data-testid={`${testId}-prev`}\r\n type=\"button\"\r\n />\r\n </div>\r\n\r\n <ul\r\n id={`${testId}-page-list`}\r\n className={classMap.controls}\r\n aria-label={pageListAriaLabel}\r\n data-testid={`${testId}-page-list`}\r\n >\r\n {serverControlled ? (\r\n <li\r\n className={classMap.buttonWrapper}\r\n data-testid={`${testId}-page-${page}`}\r\n >\r\n <Button\r\n theme={theme}\r\n state={state}\r\n size={size}\r\n rounding={rounding}\r\n shadow={shadow}\r\n onClick={() => goTo(page)}\r\n aria-label={getPageAriaLabel(page, true)}\r\n aria-current=\"page\"\r\n aria-describedby={liveRegionId}\r\n disabled\r\n className={combineClassNames(buttonBaseClass, classMap.active)}\r\n data-testid={`${testId}-button-${page}`}\r\n type=\"button\"\r\n >\r\n {page}\r\n </Button>\r\n </li>\r\n ) : (\r\n pages.map((p) => {\r\n const isActive = p === page;\r\n\r\n return (\r\n <li\r\n key={p}\r\n className={classMap.buttonWrapper}\r\n data-testid={`${testId}-page-${p}`}\r\n >\r\n <Button\r\n theme={theme}\r\n state={state}\r\n size={size}\r\n rounding={rounding}\r\n shadow={shadow}\r\n onClick={() => goTo(p)}\r\n aria-label={getPageAriaLabel(p, isActive)}\r\n aria-current={isActive ? \"page\" : undefined}\r\n aria-describedby={isActive ? liveRegionId : undefined}\r\n disabled={isActive}\r\n className={combineClassNames(\r\n buttonBaseClass,\r\n isActive && classMap.active,\r\n )}\r\n data-testid={`${testId}-button-${p}`}\r\n type=\"button\"\r\n >\r\n {p}\r\n </Button>\r\n </li>\r\n );\r\n })\r\n )}\r\n </ul>\r\n\r\n <div className={classMap.controls}>\r\n <IconButton\r\n icon={ArrowRightIcon}\r\n theme={theme}\r\n state={state}\r\n rounding={rounding}\r\n shadow={shadow}\r\n size={size}\r\n className={classMap.controlButton}\r\n disabled={page >= totalPages}\r\n aria-label={nextButtonAriaLabel}\r\n title=\"Next page\"\r\n onClick={() => goTo(page + 1)}\r\n aria-controls={pageListAriaLabel ? `${testId}-page-list` : undefined}\r\n data-testid={`${testId}-next`}\r\n type=\"button\"\r\n />\r\n </div>\r\n </nav>\r\n );\r\n};\r\n\r\nBasePager.displayName = \"BasePager\";\r\nexport default BasePager;\r\n","\"use client\";\r\n\r\nimport React from \"react\";\r\nimport BasePager from \"../PagerBase\";\r\nimport { Button, IconButton } from \"@/index.next\";\r\nimport styles from \"./Pager.module.scss\";\r\nimport { PaginationProps } from \"../Pager.types\";\r\n\r\nconst Pager: React.FC<PaginationProps> = (props) => {\r\n return (\r\n <BasePager\r\n {...props}\r\n Button={Button}\r\n IconButton={IconButton}\r\n classMap={styles}\r\n />\r\n );\r\n};\r\nPager.displayName = \"Pager\";\r\nexport default Pager;\r\n"],"names":["Button","IconButton"],"mappings":";;;;;;;;AAAA,MAAM,gBAAyD,CAAC,UAC9D;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,OAAM;AAAA,IACN,QAAO;AAAA,IACP,SAAQ;AAAA,IACR,aAAY;AAAA,IACZ,MAAK;AAAA,IACL,OAAM;AAAA,IACN,OAAM;AAAA,IACL,GAAG;AAAA,IAEJ,UAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,UAAS;AAAA,QACT,UAAS;AAAA,QACT,GAAE;AAAA,QACF,MAAK;AAAA,MAAA;AAAA,IAAA;AAAA,EACN;AACH;ACLF,MAAM,YAAsC,CAAC;AAAA,EAC3C;AAAA,EACA;AAAA,EACA;AAAA,EACA,mBAAmB;AAAA,EACnB;AAAA,EACA,YAAY;AAAA,EACZ,OAAO,eAAA;AAAA,EACP,QAAQ,gBAAA;AAAA,EACR,WAAW,mBAAA;AAAA,EACX,SAAS,iBAAA;AAAA,EACT,QAAQ;AAAA,EACR,cAAc,YAAY;AAAA,EAC1B,oBAAoB;AAAA,EACpB,mBAAmB;AAAA,EACnB,wBAAwB,oBAAoB;AAAA,EAC5C,8BAA8B,0BAA0B;AAAA,EACxD,0BAA0B,sBAAsB;AAAA,EAChD,mBAAmB,CAAC,YAAY,aAC9B,WAAW,sBAAsB,UAAU,KAAK,cAAc,UAAU;AAAA,EAC1E,uBAAuB,CAAC,YAAY,eAClC,QAAQ,UAAU,OAAO,UAAU;AAAA,EACrC,qBAAqB;AAAA,EACrB,eAAe,SAAS;AAAA,EACxB,QAAAA;AAAA,EACA,YAAAC;AAAA,EACA;AACF,MAAM;AACJ,QAAM,UAAU,KAAK,IAAI,GAAG,gBAAgB,CAAC;AAC7C,QAAM,aAAa,KAAK,IAAI,GAAG,KAAK,KAAK,aAAa,OAAO,CAAC;AAC9D,QAAM,OAAO,KAAK,IAAI,KAAK,IAAI,GAAG,eAAe,CAAC,GAAG,UAAU;AAE/D,QAAM,QAAQ,mBACV,KACA,MAAM,KAAK,EAAE,QAAQ,WAAA,GAAc,CAAC,GAAG,MAAM,IAAI,CAAC;AAEtD,QAAM,OAAO,CAAC,MAAc;AAC1B,UAAM,UAAU,KAAK,IAAI,KAAK,IAAI,GAAG,CAAC,GAAG,UAAU;AACnD,QAAI,YAAY,KAAM,cAAa,OAAO;AAAA,EAC5C;AAEA,QAAM,eAAe,kBAAkB,SAAS,SAAS,SAAS;AAElE,QAAM,kBAAkB;AAAA,IACtB,SAAS;AAAA,IACT,UAAU,SAAS,SAAS,WAAW,MAAM,CAAC,EAAE;AAAA,IAChD,YAAY,SAAS,QAAQ,WAAW,QAAQ,CAAC,EAAE;AAAA,EAAA;AAGrD,QAAM,eAAe,GAAG,MAAM;AAE9B,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,cAAY,iBAAiB,SAAY;AAAA,MACzC,mBAAiB;AAAA,MACjB,oBAAkB,mBAAmB;AAAA,MACrC,WAAW;AAAA,MACX,eAAa;AAAA,MAEb,UAAA;AAAA,QAAA;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,IAAI;AAAA,YACJ,WAAU;AAAA,YACV,aAAW;AAAA,YACX,eAAY;AAAA,YACZ,eAAa,GAAG,MAAM;AAAA,YAErB,UAAA,qBAAqB,MAAM,UAAU;AAAA,UAAA;AAAA,QAAA;AAAA,QAGxC,oBAAC,OAAA,EAAI,WAAW,SAAS,UACvB,UAAA;AAAA,UAACA;AAAA,UAAA;AAAA,YACC,MAAM;AAAA,YACN;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA,WAAW,SAAS;AAAA,YACpB,UAAU,QAAQ;AAAA,YAClB,cAAY;AAAA,YACZ,OAAM;AAAA,YACN,SAAS,MAAM,KAAK,OAAO,CAAC;AAAA,YAC5B,iBAAe,oBAAoB,GAAG,MAAM,eAAe;AAAA,YAC3D,eAAa,GAAG,MAAM;AAAA,YACtB,MAAK;AAAA,UAAA;AAAA,QAAA,GAET;AAAA,QAEA;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,IAAI,GAAG,MAAM;AAAA,YACb,WAAW,SAAS;AAAA,YACpB,cAAY;AAAA,YACZ,eAAa,GAAG,MAAM;AAAA,YAErB,UAAA,mBACC;AAAA,cAAC;AAAA,cAAA;AAAA,gBACC,WAAW,SAAS;AAAA,gBACpB,eAAa,GAAG,MAAM,SAAS,IAAI;AAAA,gBAEnC,UAAA;AAAA,kBAACD;AAAA,kBAAA;AAAA,oBACC;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA,SAAS,MAAM,KAAK,IAAI;AAAA,oBACxB,cAAY,iBAAiB,MAAM,IAAI;AAAA,oBACvC,gBAAa;AAAA,oBACb,oBAAkB;AAAA,oBAClB,UAAQ;AAAA,oBACR,WAAW,kBAAkB,iBAAiB,SAAS,MAAM;AAAA,oBAC7D,eAAa,GAAG,MAAM,WAAW,IAAI;AAAA,oBACrC,MAAK;AAAA,oBAEJ,UAAA;AAAA,kBAAA;AAAA,gBAAA;AAAA,cACH;AAAA,YAAA,IAGF,MAAM,IAAI,CAAC,MAAM;AACf,oBAAM,WAAW,MAAM;AAEvB,qBACE;AAAA,gBAAC;AAAA,gBAAA;AAAA,kBAEC,WAAW,SAAS;AAAA,kBACpB,eAAa,GAAG,MAAM,SAAS,CAAC;AAAA,kBAEhC,UAAA;AAAA,oBAACA;AAAA,oBAAA;AAAA,sBACC;AAAA,sBACA;AAAA,sBACA;AAAA,sBACA;AAAA,sBACA;AAAA,sBACA,SAAS,MAAM,KAAK,CAAC;AAAA,sBACrB,cAAY,iBAAiB,GAAG,QAAQ;AAAA,sBACxC,gBAAc,WAAW,SAAS;AAAA,sBAClC,oBAAkB,WAAW,eAAe;AAAA,sBAC5C,UAAU;AAAA,sBACV,WAAW;AAAA,wBACT;AAAA,wBACA,YAAY,SAAS;AAAA,sBAAA;AAAA,sBAEvB,eAAa,GAAG,MAAM,WAAW,CAAC;AAAA,sBAClC,MAAK;AAAA,sBAEJ,UAAA;AAAA,oBAAA;AAAA,kBAAA;AAAA,gBACH;AAAA,gBAvBK;AAAA,cAAA;AAAA,YA0BX,CAAC;AAAA,UAAA;AAAA,QAAA;AAAA,QAIL,oBAAC,OAAA,EAAI,WAAW,SAAS,UACvB,UAAA;AAAA,UAACC;AAAA,UAAA;AAAA,YACC,MAAM;AAAA,YACN;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA,WAAW,SAAS;AAAA,YACpB,UAAU,QAAQ;AAAA,YAClB,cAAY;AAAA,YACZ,OAAM;AAAA,YACN,SAAS,MAAM,KAAK,OAAO,CAAC;AAAA,YAC5B,iBAAe,oBAAoB,GAAG,MAAM,eAAe;AAAA,YAC3D,eAAa,GAAG,MAAM;AAAA,YACtB,MAAK;AAAA,UAAA;AAAA,QAAA,EACP,CACF;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAGN;AAEA,UAAU,cAAc;;;;;;;;;;;ACnLxB,MAAM,QAAmC,CAAC,UAAU;AAClD,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACE,GAAG;AAAA,MACJ;AAAA,MACA;AAAA,MACA,UAAU;AAAA,IAAA;AAAA,EAAA;AAGhB;AACA,MAAM,cAAc;"}
1
+ {"version":3,"file":"Pager-DFKfUn1s.js","sources":["../../src/Icons/ArrowLeftIcon.tsx","../../src/components/Pager/PagerBase.tsx","../../src/components/Pager/next/Pager.tsx"],"sourcesContent":["const ArrowLeftIcon: React.FC<React.SVGProps<SVGSVGElement>> = (props) => (\r\n <svg\r\n width=\"24px\"\r\n height=\"24px\"\r\n viewBox=\"0 0 24 24\"\r\n strokeWidth=\"1.5\"\r\n fill=\"none\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n color=\"currentColor\"\r\n {...props}\r\n >\r\n <path\r\n fillRule=\"evenodd\"\r\n clipRule=\"evenodd\"\r\n d=\"M15.287 18.6929C15.5673 18.5768 15.75 18.3033 15.75 18V5.99998C15.75 5.69663 15.5673 5.42315 15.287 5.30707C15.0068 5.19098 14.6842 5.25515 14.4697 5.46965L8.46967 11.4696C8.17678 11.7625 8.17678 12.2374 8.46967 12.5303L14.4697 18.5303C14.6842 18.7448 15.0068 18.809 15.287 18.6929Z\"\r\n fill=\"currentColor\"\r\n ></path>\r\n </svg>\r\n);\r\n\r\nexport default ArrowLeftIcon;\r\n","import React from \"react\";\r\nimport { ArrowLeftIcon, ArrowRightIcon } from \"../../Icons\";\r\nimport {\r\n getDefaultRounding,\r\n getDefaultShadow,\r\n getDefaultSize,\r\n getDefaultTheme,\r\n} from \"../../config/boreal-style-config\";\r\nimport { BasePagerProps } from \"./Pager.types\";\r\nimport { combineClassNames } from \"../../utils/classNames\";\r\nimport { capitalize } from \"../../utils/capitalize\";\r\n\r\nconst BasePager: React.FC<BasePagerProps> = ({\r\n totalItems,\r\n itemsPerPage,\r\n currentPage,\r\n serverControlled = false,\r\n onPageChange,\r\n className = \"\",\r\n size = getDefaultSize(),\r\n theme = getDefaultTheme(),\r\n rounding = getDefaultRounding(),\r\n shadow = getDefaultShadow(),\r\n state = \"\",\r\n \"aria-label\": ariaLabel = \"Pagination\",\r\n \"aria-describedby\": ariaDescribedBy,\r\n \"aria-labelledby\": ariaLabelledBy,\r\n \"page-list-aria-label\": pageListAriaLabel = \"Page list\",\r\n \"previous-button-aria-label\": previousButtonAriaLabel = \"Go to previous page\",\r\n \"next-button-aria-label\": nextButtonAriaLabel = \"Go to next page\",\r\n getPageAriaLabel = (pageNumber, isActive) =>\r\n isActive ? `Current page, page ${pageNumber}` : `Go to page ${pageNumber}`,\r\n getLiveRegionMessage = (activePage, totalPages) =>\r\n `Page ${activePage} of ${totalPages}`,\r\n liveRegionAriaLive = \"polite\",\r\n \"data-testid\": testId = \"pager\",\r\n Button,\r\n IconButton,\r\n classMap,\r\n}) => {\r\n const perPage = Math.max(1, itemsPerPage || 1);\r\n const totalPages = Math.max(1, Math.ceil(totalItems / perPage));\r\n const page = Math.min(Math.max(1, currentPage || 1), totalPages);\r\n\r\n const pages = serverControlled\r\n ? []\r\n : Array.from({ length: totalPages }, (_, i) => i + 1);\r\n\r\n const goTo = (p: number) => {\r\n const clamped = Math.min(Math.max(1, p), totalPages);\r\n if (clamped !== page) onPageChange(clamped);\r\n };\r\n\r\n const wrapperClass = combineClassNames(classMap.wrapper, className);\r\n\r\n const buttonBaseClass = combineClassNames(\r\n classMap.button,\r\n shadow && classMap[`shadow${capitalize(shadow)}`],\r\n rounding && classMap[`round${capitalize(rounding)}`],\r\n );\r\n\r\n const liveRegionId = `${testId}-status`;\r\n\r\n return (\r\n <nav\r\n aria-label={ariaLabelledBy ? undefined : ariaLabel}\r\n aria-labelledby={ariaLabelledBy}\r\n aria-describedby={ariaDescribedBy ?? liveRegionId}\r\n className={wrapperClass}\r\n data-testid={testId}\r\n >\r\n <p\r\n id={liveRegionId}\r\n className=\"sr_only\"\r\n aria-live={liveRegionAriaLive}\r\n aria-atomic=\"true\"\r\n data-testid={`${testId}-status`}\r\n >\r\n {getLiveRegionMessage(page, totalPages)}\r\n </p>\r\n\r\n <div className={classMap.controls}>\r\n <IconButton\r\n icon={ArrowLeftIcon}\r\n theme={theme}\r\n state={state}\r\n size={size}\r\n shadow={shadow}\r\n rounding={rounding}\r\n className={classMap.controlButton}\r\n disabled={page <= 1}\r\n aria-label={previousButtonAriaLabel}\r\n title=\"Previous page\"\r\n onClick={() => goTo(page - 1)}\r\n aria-controls={pageListAriaLabel ? `${testId}-page-list` : undefined}\r\n data-testid={`${testId}-prev`}\r\n type=\"button\"\r\n />\r\n </div>\r\n\r\n <ul\r\n id={`${testId}-page-list`}\r\n className={classMap.controls}\r\n aria-label={pageListAriaLabel}\r\n data-testid={`${testId}-page-list`}\r\n >\r\n {serverControlled ? (\r\n <li\r\n className={classMap.buttonWrapper}\r\n data-testid={`${testId}-page-${page}`}\r\n >\r\n <Button\r\n theme={theme}\r\n state={state}\r\n size={size}\r\n rounding={rounding}\r\n shadow={shadow}\r\n onClick={() => goTo(page)}\r\n aria-label={getPageAriaLabel(page, true)}\r\n aria-current=\"page\"\r\n aria-describedby={liveRegionId}\r\n disabled\r\n className={combineClassNames(buttonBaseClass, classMap.active)}\r\n data-testid={`${testId}-button-${page}`}\r\n type=\"button\"\r\n >\r\n {page}\r\n </Button>\r\n </li>\r\n ) : (\r\n pages.map((p) => {\r\n const isActive = p === page;\r\n\r\n return (\r\n <li\r\n key={p}\r\n className={classMap.buttonWrapper}\r\n data-testid={`${testId}-page-${p}`}\r\n >\r\n <Button\r\n theme={theme}\r\n state={state}\r\n size={size}\r\n rounding={rounding}\r\n shadow={shadow}\r\n onClick={() => goTo(p)}\r\n aria-label={getPageAriaLabel(p, isActive)}\r\n aria-current={isActive ? \"page\" : undefined}\r\n aria-describedby={isActive ? liveRegionId : undefined}\r\n disabled={isActive}\r\n className={combineClassNames(\r\n buttonBaseClass,\r\n isActive && classMap.active,\r\n )}\r\n data-testid={`${testId}-button-${p}`}\r\n type=\"button\"\r\n >\r\n {p}\r\n </Button>\r\n </li>\r\n );\r\n })\r\n )}\r\n </ul>\r\n\r\n <div className={classMap.controls}>\r\n <IconButton\r\n icon={ArrowRightIcon}\r\n theme={theme}\r\n state={state}\r\n rounding={rounding}\r\n shadow={shadow}\r\n size={size}\r\n className={classMap.controlButton}\r\n disabled={page >= totalPages}\r\n aria-label={nextButtonAriaLabel}\r\n title=\"Next page\"\r\n onClick={() => goTo(page + 1)}\r\n aria-controls={pageListAriaLabel ? `${testId}-page-list` : undefined}\r\n data-testid={`${testId}-next`}\r\n type=\"button\"\r\n />\r\n </div>\r\n </nav>\r\n );\r\n};\r\n\r\nBasePager.displayName = \"BasePager\";\r\nexport default BasePager;\r\n","\"use client\";\r\n\r\nimport React from \"react\";\r\nimport BasePager from \"../PagerBase\";\r\nimport { Button, IconButton } from \"@/index.next\";\r\nimport styles from \"./Pager.module.scss\";\r\nimport { PagerProps } from \"../Pager.types\";\r\n\r\nconst Pager: React.FC<PagerProps> = (props) => {\r\n return (\r\n <BasePager\r\n {...props}\r\n Button={Button}\r\n IconButton={IconButton}\r\n classMap={styles}\r\n />\r\n );\r\n};\r\nPager.displayName = \"Pager\";\r\nexport default Pager;\r\n"],"names":["Button","IconButton"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Pager-DcibmVu1.cjs","sources":["../../src/Icons/ArrowLeftIcon.tsx","../../src/components/Pager/PagerBase.tsx","../../src/components/Pager/next/Pager.tsx"],"sourcesContent":["const ArrowLeftIcon: React.FC<React.SVGProps<SVGSVGElement>> = (props) => (\r\n <svg\r\n width=\"24px\"\r\n height=\"24px\"\r\n viewBox=\"0 0 24 24\"\r\n strokeWidth=\"1.5\"\r\n fill=\"none\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n color=\"currentColor\"\r\n {...props}\r\n >\r\n <path\r\n fillRule=\"evenodd\"\r\n clipRule=\"evenodd\"\r\n d=\"M15.287 18.6929C15.5673 18.5768 15.75 18.3033 15.75 18V5.99998C15.75 5.69663 15.5673 5.42315 15.287 5.30707C15.0068 5.19098 14.6842 5.25515 14.4697 5.46965L8.46967 11.4696C8.17678 11.7625 8.17678 12.2374 8.46967 12.5303L14.4697 18.5303C14.6842 18.7448 15.0068 18.809 15.287 18.6929Z\"\r\n fill=\"currentColor\"\r\n ></path>\r\n </svg>\r\n);\r\n\r\nexport default ArrowLeftIcon;\r\n","import React from \"react\";\r\nimport { ArrowLeftIcon, ArrowRightIcon } from \"../../Icons\";\r\nimport {\r\n getDefaultRounding,\r\n getDefaultShadow,\r\n getDefaultSize,\r\n getDefaultTheme,\r\n} from \"../../config/boreal-style-config\";\r\nimport { BasePagerProps } from \"./Pager.types\";\r\nimport { combineClassNames } from \"../../utils/classNames\";\r\nimport { capitalize } from \"../../utils/capitalize\";\r\n\r\nconst BasePager: React.FC<BasePagerProps> = ({\r\n totalItems,\r\n itemsPerPage,\r\n currentPage,\r\n serverControlled = false,\r\n onPageChange,\r\n className = \"\",\r\n size = getDefaultSize(),\r\n theme = getDefaultTheme(),\r\n rounding = getDefaultRounding(),\r\n shadow = getDefaultShadow(),\r\n state = \"\",\r\n \"aria-label\": ariaLabel = \"Pagination\",\r\n \"aria-describedby\": ariaDescribedBy,\r\n \"aria-labelledby\": ariaLabelledBy,\r\n \"page-list-aria-label\": pageListAriaLabel = \"Page list\",\r\n \"previous-button-aria-label\": previousButtonAriaLabel = \"Go to previous page\",\r\n \"next-button-aria-label\": nextButtonAriaLabel = \"Go to next page\",\r\n getPageAriaLabel = (pageNumber, isActive) =>\r\n isActive ? `Current page, page ${pageNumber}` : `Go to page ${pageNumber}`,\r\n getLiveRegionMessage = (activePage, totalPages) =>\r\n `Page ${activePage} of ${totalPages}`,\r\n liveRegionAriaLive = \"polite\",\r\n \"data-testid\": testId = \"pager\",\r\n Button,\r\n IconButton,\r\n classMap,\r\n}) => {\r\n const perPage = Math.max(1, itemsPerPage || 1);\r\n const totalPages = Math.max(1, Math.ceil(totalItems / perPage));\r\n const page = Math.min(Math.max(1, currentPage || 1), totalPages);\r\n\r\n const pages = serverControlled\r\n ? []\r\n : Array.from({ length: totalPages }, (_, i) => i + 1);\r\n\r\n const goTo = (p: number) => {\r\n const clamped = Math.min(Math.max(1, p), totalPages);\r\n if (clamped !== page) onPageChange(clamped);\r\n };\r\n\r\n const wrapperClass = combineClassNames(classMap.wrapper, className);\r\n\r\n const buttonBaseClass = combineClassNames(\r\n classMap.button,\r\n shadow && classMap[`shadow${capitalize(shadow)}`],\r\n rounding && classMap[`round${capitalize(rounding)}`],\r\n );\r\n\r\n const liveRegionId = `${testId}-status`;\r\n\r\n return (\r\n <nav\r\n aria-label={ariaLabelledBy ? undefined : ariaLabel}\r\n aria-labelledby={ariaLabelledBy}\r\n aria-describedby={ariaDescribedBy ?? liveRegionId}\r\n className={wrapperClass}\r\n data-testid={testId}\r\n >\r\n <p\r\n id={liveRegionId}\r\n className=\"sr_only\"\r\n aria-live={liveRegionAriaLive}\r\n aria-atomic=\"true\"\r\n data-testid={`${testId}-status`}\r\n >\r\n {getLiveRegionMessage(page, totalPages)}\r\n </p>\r\n\r\n <div className={classMap.controls}>\r\n <IconButton\r\n icon={ArrowLeftIcon}\r\n theme={theme}\r\n state={state}\r\n size={size}\r\n shadow={shadow}\r\n rounding={rounding}\r\n className={classMap.controlButton}\r\n disabled={page <= 1}\r\n aria-label={previousButtonAriaLabel}\r\n title=\"Previous page\"\r\n onClick={() => goTo(page - 1)}\r\n aria-controls={pageListAriaLabel ? `${testId}-page-list` : undefined}\r\n data-testid={`${testId}-prev`}\r\n type=\"button\"\r\n />\r\n </div>\r\n\r\n <ul\r\n id={`${testId}-page-list`}\r\n className={classMap.controls}\r\n aria-label={pageListAriaLabel}\r\n data-testid={`${testId}-page-list`}\r\n >\r\n {serverControlled ? (\r\n <li\r\n className={classMap.buttonWrapper}\r\n data-testid={`${testId}-page-${page}`}\r\n >\r\n <Button\r\n theme={theme}\r\n state={state}\r\n size={size}\r\n rounding={rounding}\r\n shadow={shadow}\r\n onClick={() => goTo(page)}\r\n aria-label={getPageAriaLabel(page, true)}\r\n aria-current=\"page\"\r\n aria-describedby={liveRegionId}\r\n disabled\r\n className={combineClassNames(buttonBaseClass, classMap.active)}\r\n data-testid={`${testId}-button-${page}`}\r\n type=\"button\"\r\n >\r\n {page}\r\n </Button>\r\n </li>\r\n ) : (\r\n pages.map((p) => {\r\n const isActive = p === page;\r\n\r\n return (\r\n <li\r\n key={p}\r\n className={classMap.buttonWrapper}\r\n data-testid={`${testId}-page-${p}`}\r\n >\r\n <Button\r\n theme={theme}\r\n state={state}\r\n size={size}\r\n rounding={rounding}\r\n shadow={shadow}\r\n onClick={() => goTo(p)}\r\n aria-label={getPageAriaLabel(p, isActive)}\r\n aria-current={isActive ? \"page\" : undefined}\r\n aria-describedby={isActive ? liveRegionId : undefined}\r\n disabled={isActive}\r\n className={combineClassNames(\r\n buttonBaseClass,\r\n isActive && classMap.active,\r\n )}\r\n data-testid={`${testId}-button-${p}`}\r\n type=\"button\"\r\n >\r\n {p}\r\n </Button>\r\n </li>\r\n );\r\n })\r\n )}\r\n </ul>\r\n\r\n <div className={classMap.controls}>\r\n <IconButton\r\n icon={ArrowRightIcon}\r\n theme={theme}\r\n state={state}\r\n rounding={rounding}\r\n shadow={shadow}\r\n size={size}\r\n className={classMap.controlButton}\r\n disabled={page >= totalPages}\r\n aria-label={nextButtonAriaLabel}\r\n title=\"Next page\"\r\n onClick={() => goTo(page + 1)}\r\n aria-controls={pageListAriaLabel ? `${testId}-page-list` : undefined}\r\n data-testid={`${testId}-next`}\r\n type=\"button\"\r\n />\r\n </div>\r\n </nav>\r\n );\r\n};\r\n\r\nBasePager.displayName = \"BasePager\";\r\nexport default BasePager;\r\n","\"use client\";\r\n\r\nimport React from \"react\";\r\nimport BasePager from \"../PagerBase\";\r\nimport { Button, IconButton } from \"@/index.next\";\r\nimport styles from \"./Pager.module.scss\";\r\nimport { PaginationProps } from \"../Pager.types\";\r\n\r\nconst Pager: React.FC<PaginationProps> = (props) => {\r\n return (\r\n <BasePager\r\n {...props}\r\n Button={Button}\r\n IconButton={IconButton}\r\n classMap={styles}\r\n />\r\n );\r\n};\r\nPager.displayName = \"Pager\";\r\nexport default Pager;\r\n"],"names":["jsx","getDefaultSize","getDefaultTheme","getDefaultRounding","getDefaultShadow","Button","IconButton","combineClassNames","capitalize","jsxs","ArrowRightIcon"],"mappings":"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"}
1
+ {"version":3,"file":"Pager-DcibmVu1.cjs","sources":["../../src/Icons/ArrowLeftIcon.tsx","../../src/components/Pager/PagerBase.tsx","../../src/components/Pager/next/Pager.tsx"],"sourcesContent":["const ArrowLeftIcon: React.FC<React.SVGProps<SVGSVGElement>> = (props) => (\r\n <svg\r\n width=\"24px\"\r\n height=\"24px\"\r\n viewBox=\"0 0 24 24\"\r\n strokeWidth=\"1.5\"\r\n fill=\"none\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n color=\"currentColor\"\r\n {...props}\r\n >\r\n <path\r\n fillRule=\"evenodd\"\r\n clipRule=\"evenodd\"\r\n d=\"M15.287 18.6929C15.5673 18.5768 15.75 18.3033 15.75 18V5.99998C15.75 5.69663 15.5673 5.42315 15.287 5.30707C15.0068 5.19098 14.6842 5.25515 14.4697 5.46965L8.46967 11.4696C8.17678 11.7625 8.17678 12.2374 8.46967 12.5303L14.4697 18.5303C14.6842 18.7448 15.0068 18.809 15.287 18.6929Z\"\r\n fill=\"currentColor\"\r\n ></path>\r\n </svg>\r\n);\r\n\r\nexport default ArrowLeftIcon;\r\n","import React from \"react\";\r\nimport { ArrowLeftIcon, ArrowRightIcon } from \"../../Icons\";\r\nimport {\r\n getDefaultRounding,\r\n getDefaultShadow,\r\n getDefaultSize,\r\n getDefaultTheme,\r\n} from \"../../config/boreal-style-config\";\r\nimport { BasePagerProps } from \"./Pager.types\";\r\nimport { combineClassNames } from \"../../utils/classNames\";\r\nimport { capitalize } from \"../../utils/capitalize\";\r\n\r\nconst BasePager: React.FC<BasePagerProps> = ({\r\n totalItems,\r\n itemsPerPage,\r\n currentPage,\r\n serverControlled = false,\r\n onPageChange,\r\n className = \"\",\r\n size = getDefaultSize(),\r\n theme = getDefaultTheme(),\r\n rounding = getDefaultRounding(),\r\n shadow = getDefaultShadow(),\r\n state = \"\",\r\n \"aria-label\": ariaLabel = \"Pagination\",\r\n \"aria-describedby\": ariaDescribedBy,\r\n \"aria-labelledby\": ariaLabelledBy,\r\n \"page-list-aria-label\": pageListAriaLabel = \"Page list\",\r\n \"previous-button-aria-label\": previousButtonAriaLabel = \"Go to previous page\",\r\n \"next-button-aria-label\": nextButtonAriaLabel = \"Go to next page\",\r\n getPageAriaLabel = (pageNumber, isActive) =>\r\n isActive ? `Current page, page ${pageNumber}` : `Go to page ${pageNumber}`,\r\n getLiveRegionMessage = (activePage, totalPages) =>\r\n `Page ${activePage} of ${totalPages}`,\r\n liveRegionAriaLive = \"polite\",\r\n \"data-testid\": testId = \"pager\",\r\n Button,\r\n IconButton,\r\n classMap,\r\n}) => {\r\n const perPage = Math.max(1, itemsPerPage || 1);\r\n const totalPages = Math.max(1, Math.ceil(totalItems / perPage));\r\n const page = Math.min(Math.max(1, currentPage || 1), totalPages);\r\n\r\n const pages = serverControlled\r\n ? []\r\n : Array.from({ length: totalPages }, (_, i) => i + 1);\r\n\r\n const goTo = (p: number) => {\r\n const clamped = Math.min(Math.max(1, p), totalPages);\r\n if (clamped !== page) onPageChange(clamped);\r\n };\r\n\r\n const wrapperClass = combineClassNames(classMap.wrapper, className);\r\n\r\n const buttonBaseClass = combineClassNames(\r\n classMap.button,\r\n shadow && classMap[`shadow${capitalize(shadow)}`],\r\n rounding && classMap[`round${capitalize(rounding)}`],\r\n );\r\n\r\n const liveRegionId = `${testId}-status`;\r\n\r\n return (\r\n <nav\r\n aria-label={ariaLabelledBy ? undefined : ariaLabel}\r\n aria-labelledby={ariaLabelledBy}\r\n aria-describedby={ariaDescribedBy ?? liveRegionId}\r\n className={wrapperClass}\r\n data-testid={testId}\r\n >\r\n <p\r\n id={liveRegionId}\r\n className=\"sr_only\"\r\n aria-live={liveRegionAriaLive}\r\n aria-atomic=\"true\"\r\n data-testid={`${testId}-status`}\r\n >\r\n {getLiveRegionMessage(page, totalPages)}\r\n </p>\r\n\r\n <div className={classMap.controls}>\r\n <IconButton\r\n icon={ArrowLeftIcon}\r\n theme={theme}\r\n state={state}\r\n size={size}\r\n shadow={shadow}\r\n rounding={rounding}\r\n className={classMap.controlButton}\r\n disabled={page <= 1}\r\n aria-label={previousButtonAriaLabel}\r\n title=\"Previous page\"\r\n onClick={() => goTo(page - 1)}\r\n aria-controls={pageListAriaLabel ? `${testId}-page-list` : undefined}\r\n data-testid={`${testId}-prev`}\r\n type=\"button\"\r\n />\r\n </div>\r\n\r\n <ul\r\n id={`${testId}-page-list`}\r\n className={classMap.controls}\r\n aria-label={pageListAriaLabel}\r\n data-testid={`${testId}-page-list`}\r\n >\r\n {serverControlled ? (\r\n <li\r\n className={classMap.buttonWrapper}\r\n data-testid={`${testId}-page-${page}`}\r\n >\r\n <Button\r\n theme={theme}\r\n state={state}\r\n size={size}\r\n rounding={rounding}\r\n shadow={shadow}\r\n onClick={() => goTo(page)}\r\n aria-label={getPageAriaLabel(page, true)}\r\n aria-current=\"page\"\r\n aria-describedby={liveRegionId}\r\n disabled\r\n className={combineClassNames(buttonBaseClass, classMap.active)}\r\n data-testid={`${testId}-button-${page}`}\r\n type=\"button\"\r\n >\r\n {page}\r\n </Button>\r\n </li>\r\n ) : (\r\n pages.map((p) => {\r\n const isActive = p === page;\r\n\r\n return (\r\n <li\r\n key={p}\r\n className={classMap.buttonWrapper}\r\n data-testid={`${testId}-page-${p}`}\r\n >\r\n <Button\r\n theme={theme}\r\n state={state}\r\n size={size}\r\n rounding={rounding}\r\n shadow={shadow}\r\n onClick={() => goTo(p)}\r\n aria-label={getPageAriaLabel(p, isActive)}\r\n aria-current={isActive ? \"page\" : undefined}\r\n aria-describedby={isActive ? liveRegionId : undefined}\r\n disabled={isActive}\r\n className={combineClassNames(\r\n buttonBaseClass,\r\n isActive && classMap.active,\r\n )}\r\n data-testid={`${testId}-button-${p}`}\r\n type=\"button\"\r\n >\r\n {p}\r\n </Button>\r\n </li>\r\n );\r\n })\r\n )}\r\n </ul>\r\n\r\n <div className={classMap.controls}>\r\n <IconButton\r\n icon={ArrowRightIcon}\r\n theme={theme}\r\n state={state}\r\n rounding={rounding}\r\n shadow={shadow}\r\n size={size}\r\n className={classMap.controlButton}\r\n disabled={page >= totalPages}\r\n aria-label={nextButtonAriaLabel}\r\n title=\"Next page\"\r\n onClick={() => goTo(page + 1)}\r\n aria-controls={pageListAriaLabel ? `${testId}-page-list` : undefined}\r\n data-testid={`${testId}-next`}\r\n type=\"button\"\r\n />\r\n </div>\r\n </nav>\r\n );\r\n};\r\n\r\nBasePager.displayName = \"BasePager\";\r\nexport default BasePager;\r\n","\"use client\";\r\n\r\nimport React from \"react\";\r\nimport BasePager from \"../PagerBase\";\r\nimport { Button, IconButton } from \"@/index.next\";\r\nimport styles from \"./Pager.module.scss\";\r\nimport { PagerProps } from \"../Pager.types\";\r\n\r\nconst Pager: React.FC<PagerProps> = (props) => {\r\n return (\r\n <BasePager\r\n {...props}\r\n Button={Button}\r\n IconButton={IconButton}\r\n classMap={styles}\r\n />\r\n );\r\n};\r\nPager.displayName = \"Pager\";\r\nexport default Pager;\r\n"],"names":["jsx","getDefaultSize","getDefaultTheme","getDefaultRounding","getDefaultShadow","Button","IconButton","combineClassNames","capitalize","jsxs","ArrowRightIcon"],"mappings":"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"}