@patternfly/react-docs 7.6.0-prerelease.8 → 7.6.0-prerelease.9

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 (163) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/LICENSE +21 -0
  3. package/package.json +12 -11
  4. package/patternfly-docs/generated/components/about-modal/react.js +0 -149
  5. package/patternfly-docs/generated/components/accordion/react.js +0 -262
  6. package/patternfly-docs/generated/components/action-list/react.js +0 -144
  7. package/patternfly-docs/generated/components/alert/react-demos.js +0 -56
  8. package/patternfly-docs/generated/components/alert/react.js +0 -1433
  9. package/patternfly-docs/generated/components/avatar/react.js +0 -166
  10. package/patternfly-docs/generated/components/back-to-top/react-demos.js +0 -60
  11. package/patternfly-docs/generated/components/back-to-top/react.js +0 -77
  12. package/patternfly-docs/generated/components/backdrop/react.js +0 -64
  13. package/patternfly-docs/generated/components/background-image/react.js +0 -62
  14. package/patternfly-docs/generated/components/badge/react.js +0 -97
  15. package/patternfly-docs/generated/components/banner/react-demos.js +0 -57
  16. package/patternfly-docs/generated/components/banner/react.js +0 -148
  17. package/patternfly-docs/generated/components/brand/react.js +0 -142
  18. package/patternfly-docs/generated/components/breadcrumb/react.js +0 -206
  19. package/patternfly-docs/generated/components/button/react-demos.js +0 -57
  20. package/patternfly-docs/generated/components/button/react.js +0 -826
  21. package/patternfly-docs/generated/components/card/react-demos.js +0 -201
  22. package/patternfly-docs/generated/components/card/react.js +0 -1015
  23. package/patternfly-docs/generated/components/charts/area-chart/-Victory.js +0 -1350
  24. package/patternfly-docs/generated/components/charts/bar-chart/-Victory.js +0 -1334
  25. package/patternfly-docs/generated/components/charts/box-plot-chart/-Victory.js +0 -1282
  26. package/patternfly-docs/generated/components/charts/bullet-chart/-Victory.js +0 -848
  27. package/patternfly-docs/generated/components/charts/colors-for-charts/-Victory.js +0 -192
  28. package/patternfly-docs/generated/components/charts/donut-chart/-Victory.js +0 -426
  29. package/patternfly-docs/generated/components/charts/donut-utilization-chart/-Victory.js +0 -804
  30. package/patternfly-docs/generated/components/charts/legends/-Victory.js +0 -3230
  31. package/patternfly-docs/generated/components/charts/line-chart/-Victory.js +0 -1178
  32. package/patternfly-docs/generated/components/charts/line-chart/ECharts.js +0 -525
  33. package/patternfly-docs/generated/components/charts/patterns/-Victory.js +0 -3382
  34. package/patternfly-docs/generated/components/charts/pie-chart/-Victory.js +0 -377
  35. package/patternfly-docs/generated/components/charts/resize-observer/-Victory.js +0 -2475
  36. package/patternfly-docs/generated/components/charts/sankey-chart/ECharts.js +0 -538
  37. package/patternfly-docs/generated/components/charts/scatter-chart/-Victory.js +0 -1551
  38. package/patternfly-docs/generated/components/charts/skeletons/-Victory.js +0 -4115
  39. package/patternfly-docs/generated/components/charts/sparkline-chart/-Victory.js +0 -955
  40. package/patternfly-docs/generated/components/charts/stack-chart/-Victory.js +0 -1173
  41. package/patternfly-docs/generated/components/charts/threshold-chart/-Victory.js +0 -1166
  42. package/patternfly-docs/generated/components/charts/tooltips/-Victory.js +0 -413
  43. package/patternfly-docs/generated/components/chip/react-deprecated.js +0 -323
  44. package/patternfly-docs/generated/components/clipboard-copy/react.js +0 -373
  45. package/patternfly-docs/generated/components/code-block/react.js +0 -148
  46. package/patternfly-docs/generated/components/code-editor/react.js +0 -659
  47. package/patternfly-docs/generated/components/compass/react-demos.js +0 -147
  48. package/patternfly-docs/generated/components/compass/react.js +0 -440
  49. package/patternfly-docs/generated/components/content/react.js +0 -248
  50. package/patternfly-docs/generated/components/data-list/react-demos.js +0 -90
  51. package/patternfly-docs/generated/components/data-list/react.js +0 -709
  52. package/patternfly-docs/generated/components/date-and-time/calendar-month/react.js +0 -283
  53. package/patternfly-docs/generated/components/date-and-time/date-and-time-picker/react-demos.js +0 -64
  54. package/patternfly-docs/generated/components/date-and-time/date-picker/react-demos.js +0 -83
  55. package/patternfly-docs/generated/components/date-and-time/date-picker/react.js +0 -395
  56. package/patternfly-docs/generated/components/date-and-time/time-picker/react.js +0 -241
  57. package/patternfly-docs/generated/components/description-list/react-demos.js +0 -58
  58. package/patternfly-docs/generated/components/description-list/react.js +0 -743
  59. package/patternfly-docs/generated/components/divider/react.js +0 -126
  60. package/patternfly-docs/generated/components/drag-and-drop/react-demos.js +0 -351
  61. package/patternfly-docs/generated/components/drag-and-drop/react-deprecated.js +0 -184
  62. package/patternfly-docs/generated/components/drag-and-drop/react.js +0 -137
  63. package/patternfly-docs/generated/components/drawer/react.js +0 -598
  64. package/patternfly-docs/generated/components/dual-list-selector/react-deprecated.js +0 -772
  65. package/patternfly-docs/generated/components/dual-list-selector/react.js +0 -594
  66. package/patternfly-docs/generated/components/empty-state/react.js +0 -199
  67. package/patternfly-docs/generated/components/expandable-section/react-demos.js +0 -65
  68. package/patternfly-docs/generated/components/expandable-section/react.js +0 -408
  69. package/patternfly-docs/generated/components/file-upload/multiple-file-upload/react-demos.js +0 -52
  70. package/patternfly-docs/generated/components/file-upload/multiple-file-upload/react.js +0 -398
  71. package/patternfly-docs/generated/components/file-upload/simple-file-upload/react.js +0 -749
  72. package/patternfly-docs/generated/components/forms/checkbox/react.js +0 -222
  73. package/patternfly-docs/generated/components/forms/form/react.js +0 -1106
  74. package/patternfly-docs/generated/components/forms/form-select/react.js +0 -208
  75. package/patternfly-docs/generated/components/forms/radio/react.js +0 -212
  76. package/patternfly-docs/generated/components/forms/text-area/react.js +0 -160
  77. package/patternfly-docs/generated/components/forms/text-input/react.js +0 -216
  78. package/patternfly-docs/generated/components/helper-text/react-demos.js +0 -180
  79. package/patternfly-docs/generated/components/helper-text/react.js +0 -164
  80. package/patternfly-docs/generated/components/hero/react.js +0 -88
  81. package/patternfly-docs/generated/components/hint/react.js +0 -169
  82. package/patternfly-docs/generated/components/icon/react.js +0 -215
  83. package/patternfly-docs/generated/components/input-group/react.js +0 -182
  84. package/patternfly-docs/generated/components/jump-links/react-demos.js +0 -154
  85. package/patternfly-docs/generated/components/jump-links/react.js +0 -212
  86. package/patternfly-docs/generated/components/label/react-demos.js +0 -57
  87. package/patternfly-docs/generated/components/label/react.js +0 -417
  88. package/patternfly-docs/generated/components/list/react.js +0 -175
  89. package/patternfly-docs/generated/components/login-page/react.js +0 -587
  90. package/patternfly-docs/generated/components/masthead/react-demos.js +0 -79
  91. package/patternfly-docs/generated/components/masthead/react.js +0 -291
  92. package/patternfly-docs/generated/components/menus/application-launcher/react-demos.js +0 -769
  93. package/patternfly-docs/generated/components/menus/context-selector/react-demos.js +0 -665
  94. package/patternfly-docs/generated/components/menus/custom-menus/react-demos.js +0 -187
  95. package/patternfly-docs/generated/components/menus/dropdown/react-templates.js +0 -163
  96. package/patternfly-docs/generated/components/menus/dropdown/react.js +0 -998
  97. package/patternfly-docs/generated/components/menus/menu/react.js +0 -1540
  98. package/patternfly-docs/generated/components/menus/menu-toggle/react.js +0 -747
  99. package/patternfly-docs/generated/components/menus/options-menu/react-demos.js +0 -508
  100. package/patternfly-docs/generated/components/menus/select/react-templates.js +0 -257
  101. package/patternfly-docs/generated/components/menus/select/react.js +0 -998
  102. package/patternfly-docs/generated/components/modal/react-deprecated.js +0 -554
  103. package/patternfly-docs/generated/components/modal/react.js +0 -597
  104. package/patternfly-docs/generated/components/navigation/react-demos.js +0 -356
  105. package/patternfly-docs/generated/components/navigation/react.js +0 -409
  106. package/patternfly-docs/generated/components/notification-badge/react.js +0 -196
  107. package/patternfly-docs/generated/components/notification-drawer/react-demos.js +0 -107
  108. package/patternfly-docs/generated/components/notification-drawer/react.js +0 -394
  109. package/patternfly-docs/generated/components/number-input/react.js +0 -210
  110. package/patternfly-docs/generated/components/overflow-menu/react.js +0 -274
  111. package/patternfly-docs/generated/components/page/react-demos.js +0 -149
  112. package/patternfly-docs/generated/components/page/react.js +0 -1352
  113. package/patternfly-docs/generated/components/pagination/react.js +0 -492
  114. package/patternfly-docs/generated/components/panel/react.js +0 -236
  115. package/patternfly-docs/generated/components/popover/react.js +0 -390
  116. package/patternfly-docs/generated/components/progress/react-demos.js +0 -59
  117. package/patternfly-docs/generated/components/progress/react.js +0 -283
  118. package/patternfly-docs/generated/components/progress-stepper/react-demos.js +0 -45
  119. package/patternfly-docs/generated/components/progress-stepper/react.js +0 -219
  120. package/patternfly-docs/generated/components/search-input/react-demos.js +0 -113
  121. package/patternfly-docs/generated/components/search-input/react.js +0 -263
  122. package/patternfly-docs/generated/components/sidebar/react.js +0 -236
  123. package/patternfly-docs/generated/components/simple-list/react.js +0 -200
  124. package/patternfly-docs/generated/components/skeleton/react-demos.js +0 -44
  125. package/patternfly-docs/generated/components/skeleton/react.js +0 -122
  126. package/patternfly-docs/generated/components/skip-to-content/react.js +0 -73
  127. package/patternfly-docs/generated/components/slider/react.js +0 -309
  128. package/patternfly-docs/generated/components/spinner/react.js +0 -111
  129. package/patternfly-docs/generated/components/switch/react.js +0 -163
  130. package/patternfly-docs/generated/components/table/react-demos.js +0 -355
  131. package/patternfly-docs/generated/components/table/react-deprecated.js +0 -1350
  132. package/patternfly-docs/generated/components/table/react.js +0 -3241
  133. package/patternfly-docs/generated/components/tabs/react-demos.js +0 -108
  134. package/patternfly-docs/generated/components/tabs/react.js +0 -1359
  135. package/patternfly-docs/generated/components/text-input-group/react-demos.js +0 -152
  136. package/patternfly-docs/generated/components/text-input-group/react.js +0 -278
  137. package/patternfly-docs/generated/components/tile/react-deprecated.js +0 -242
  138. package/patternfly-docs/generated/components/timestamp/react.js +0 -283
  139. package/patternfly-docs/generated/components/title/react.js +0 -94
  140. package/patternfly-docs/generated/components/toggle-group/react.js +0 -299
  141. package/patternfly-docs/generated/components/toolbar/react-demos.js +0 -66
  142. package/patternfly-docs/generated/components/toolbar/react.js +0 -932
  143. package/patternfly-docs/generated/components/tooltip/react.js +0 -241
  144. package/patternfly-docs/generated/components/tree-view/react.js +0 -429
  145. package/patternfly-docs/generated/components/truncate/react.js +0 -211
  146. package/patternfly-docs/generated/components/wizard/react-demos.js +0 -87
  147. package/patternfly-docs/generated/components/wizard/react-deprecated.js +0 -788
  148. package/patternfly-docs/generated/components/wizard/react.js +0 -986
  149. package/patternfly-docs/generated/developer-guides/open-ui-automation/react.js +0 -285
  150. package/patternfly-docs/generated/foundations-and-styles/layouts/bullseye/react.js +0 -70
  151. package/patternfly-docs/generated/foundations-and-styles/layouts/flex/react.js +0 -506
  152. package/patternfly-docs/generated/foundations-and-styles/layouts/gallery/react.js +0 -94
  153. package/patternfly-docs/generated/foundations-and-styles/layouts/grid/react.js +0 -272
  154. package/patternfly-docs/generated/foundations-and-styles/layouts/level/react.js +0 -87
  155. package/patternfly-docs/generated/foundations-and-styles/layouts/split/react.js +0 -124
  156. package/patternfly-docs/generated/foundations-and-styles/layouts/stack/react.js +0 -112
  157. package/patternfly-docs/generated/index.js +0 -1769
  158. package/patternfly-docs/generated/patterns/card-view/react-demos.js +0 -78
  159. package/patternfly-docs/generated/patterns/filters/react-demos.js +0 -141
  160. package/patternfly-docs/generated/patterns/password-generator/react-demos.js +0 -51
  161. package/patternfly-docs/generated/patterns/password-strength/react-demos.js +0 -61
  162. package/patternfly-docs/generated/patterns/primary-detail/react-demos.js +0 -124
  163. package/patternfly-docs/generated/patterns/right-to-left/react-demos.js +0 -81
@@ -1,492 +0,0 @@
1
- import React from 'react';
2
- import { AutoLinkHeader, Example, Link as PatternflyThemeLink } from '@patternfly/documentation-framework/components';
3
- import { Fragment, useState, useRef, useLayoutEffect } from 'react';
4
- import srcImportsticky from './react/sticky.png';
5
- const pageData = {
6
- "id": "Pagination",
7
- "section": "components",
8
- "subsection": "",
9
- "deprecated": false,
10
- "template": false,
11
- "beta": false,
12
- "demo": false,
13
- "newImplementationLink": false,
14
- "source": "react",
15
- "tabName": null,
16
- "slug": "/components/pagination/react",
17
- "sourceLink": "https://github.com/patternfly/patternfly-react/blob/main/packages/react-core/src/components/Pagination/examples/Pagination.md",
18
- "relPath": "packages/react-core/src/components/Pagination/examples/Pagination.md",
19
- "propComponents": [
20
- {
21
- "name": "Pagination",
22
- "description": "The main pagination component.",
23
- "props": [
24
- {
25
- "name": "children",
26
- "type": "React.ReactNode",
27
- "description": "What should be rendered inside the pagination."
28
- },
29
- {
30
- "name": "className",
31
- "type": "string",
32
- "description": "Additional classes for the pagination container.",
33
- "defaultValue": "''"
34
- },
35
- {
36
- "name": "dropDirection",
37
- "type": "'up' | 'down'",
38
- "description": "Direction of dropdown context menu."
39
- },
40
- {
41
- "name": "firstPage",
42
- "type": "number",
43
- "description": "Page to start at.",
44
- "defaultValue": "1"
45
- },
46
- {
47
- "name": "inset",
48
- "type": "{\n default?: 'insetNone' | 'insetSm' | 'insetMd' | 'insetLg' | 'insetXl' | 'inset2xl';\n sm?: 'insetNone' | 'insetSm' | 'insetMd' | 'insetLg' | 'insetXl' | 'inset2xl';\n md?: 'insetNone' | 'insetSm' | 'insetMd' | 'insetLg' | 'insetXl' | 'inset2xl';\n lg?: 'insetNone' | 'insetSm' | 'insetMd' | 'insetLg' | 'insetXl' | 'inset2xl';\n xl?: 'insetNone' | 'insetSm' | 'insetMd' | 'insetLg' | 'insetXl' | 'inset2xl';\n '2xl'?: 'insetNone' | 'insetSm' | 'insetMd' | 'insetLg' | 'insetXl' | 'inset2xl';\n}",
49
- "description": "Insets at various breakpoints."
50
- },
51
- {
52
- "name": "isCompact",
53
- "type": "boolean",
54
- "description": "Flag indicating if pagination is compact.",
55
- "defaultValue": "false"
56
- },
57
- {
58
- "name": "isDisabled",
59
- "type": "boolean",
60
- "description": "Flag indicating if pagination is disabled.",
61
- "defaultValue": "false"
62
- },
63
- {
64
- "name": "isLastFullPageShown",
65
- "type": "boolean",
66
- "description": "Indicate whether to show last full page of results when user selects perPage value\ngreater than remaining rows.",
67
- "defaultValue": "false"
68
- },
69
- {
70
- "name": "isStatic",
71
- "type": "boolean",
72
- "description": "Flag indicating if pagination should not be sticky on mobile.",
73
- "defaultValue": "false"
74
- },
75
- {
76
- "name": "isSticky",
77
- "type": "boolean",
78
- "description": "Flag indicating if pagination should stick to its position (based on variant). For dynamic sticky control, use isStickyBase\nand isStickyStuck instead.",
79
- "defaultValue": "false"
80
- },
81
- {
82
- "name": "isStickyBase",
83
- "type": "boolean",
84
- "description": "Flag indicating the pagination should have sticky positioning relative to its container.",
85
- "defaultValue": "false",
86
- "beta": true
87
- },
88
- {
89
- "name": "isStickyStuck",
90
- "type": "boolean",
91
- "description": "Flag indicating the pagination should have stuck styling, when the pagination is not at the top (for top variant) or bottom (for bottom variant) of the scroll container.",
92
- "defaultValue": "false",
93
- "beta": true
94
- },
95
- {
96
- "name": "itemCount",
97
- "type": "number",
98
- "description": "Total number of items."
99
- },
100
- {
101
- "name": "itemsEnd",
102
- "type": "number",
103
- "description": "Last index of items on current page.",
104
- "defaultValue": "null"
105
- },
106
- {
107
- "name": "itemsStart",
108
- "type": "number",
109
- "description": "First index of items on current page.",
110
- "defaultValue": "null"
111
- },
112
- {
113
- "name": "menuAppendTo",
114
- "type": "HTMLElement | (() => HTMLElement) | 'inline'",
115
- "description": "The container to append the pagination options menu to.",
116
- "beta": true
117
- },
118
- {
119
- "name": "offset",
120
- "type": "number",
121
- "description": "Start index of rows to display, used in place of providing page.",
122
- "defaultValue": "null"
123
- },
124
- {
125
- "name": "onFirstClick",
126
- "type": "(event: React.SyntheticEvent<HTMLButtonElement>, page: number) => void",
127
- "description": "Function called when user clicks on navigate to first page.",
128
- "defaultValue": "() => undefined"
129
- },
130
- {
131
- "name": "onLastClick",
132
- "type": "(event: React.SyntheticEvent<HTMLButtonElement>, page: number) => void",
133
- "description": "Function called when user clicks on navigate to last page.",
134
- "defaultValue": "() => undefined"
135
- },
136
- {
137
- "name": "onNextClick",
138
- "type": "(event: React.SyntheticEvent<HTMLButtonElement>, page: number) => void",
139
- "description": "Function called when user clicks on navigate to next page.",
140
- "defaultValue": "() => undefined"
141
- },
142
- {
143
- "name": "onPageInput",
144
- "type": "(event: React.KeyboardEvent<HTMLInputElement>, page: number) => void",
145
- "description": "Function called when user inputs page number.",
146
- "defaultValue": "() => undefined"
147
- },
148
- {
149
- "name": "onPerPageSelect",
150
- "type": "(\n event: React.MouseEvent | React.KeyboardEvent | MouseEvent,\n newPerPage: number,\n newPage: number,\n startIdx?: number,\n endIdx?: number\n) => void",
151
- "description": "Function called when user selects number of items per page.",
152
- "defaultValue": "() => undefined"
153
- },
154
- {
155
- "name": "onPreviousClick",
156
- "type": "(event: React.SyntheticEvent<HTMLButtonElement>, page: number) => void",
157
- "description": "Function called when user clicks on navigate to previous page.",
158
- "defaultValue": "() => undefined"
159
- },
160
- {
161
- "name": "onSetPage",
162
- "type": "(\n event: React.MouseEvent | React.KeyboardEvent | MouseEvent,\n newPage: number,\n perPage?: number,\n startIdx?: number,\n endIdx?: number\n) => void",
163
- "description": "Function called when user sets page.",
164
- "defaultValue": "() => undefined"
165
- },
166
- {
167
- "name": "ouiaId",
168
- "type": "number | string",
169
- "description": "Value to overwrite the randomly generated data-ouia-component-id."
170
- },
171
- {
172
- "name": "ouiaSafe",
173
- "type": "boolean",
174
- "description": "Set the value of data-ouia-safe. Only set to true when the component is in a static state, i.e. no animations are occurring. At all other times, this value must be false.",
175
- "defaultValue": "true"
176
- },
177
- {
178
- "name": "page",
179
- "type": "number",
180
- "description": "Current page number.",
181
- "defaultValue": "1"
182
- },
183
- {
184
- "name": "perPage",
185
- "type": "number",
186
- "description": "Number of items per page.",
187
- "defaultValue": "defaultPerPageOptions[0].value"
188
- },
189
- {
190
- "name": "perPageOptions",
191
- "type": "PerPageOptions[]",
192
- "description": "Array of the number of items per page options.",
193
- "defaultValue": "[\n {\n title: '10',\n value: 10\n },\n {\n title: '20',\n value: 20\n },\n {\n title: '50',\n value: 50\n },\n {\n title: '100',\n value: 100\n }\n]"
194
- },
195
- {
196
- "name": "titles",
197
- "type": "PaginationTitles",
198
- "description": "Object with titles to display in pagination.",
199
- "defaultValue": "{\n items: '',\n page: '',\n pages: '',\n itemsPerPage: 'Items per page',\n perPageSuffix: 'per page',\n toFirstPageAriaLabel: 'Go to first page',\n toPreviousPageAriaLabel: 'Go to previous page',\n toLastPageAriaLabel: 'Go to last page',\n toNextPageAriaLabel: 'Go to next page',\n optionsToggleAriaLabel: '',\n currPageAriaLabel: 'Current page',\n paginationAriaLabel: 'Pagination',\n ofWord: 'of'\n}"
200
- },
201
- {
202
- "name": "toggleTemplate",
203
- "type": "((props: PaginationToggleTemplateProps) => React.ReactElement<any>) | string",
204
- "description": "This will be shown in pagination toggle span. You can use firstIndex, lastIndex,\nitemCount, itemsTitle, and/or ofWord props."
205
- },
206
- {
207
- "name": "usePageInsets",
208
- "type": "boolean",
209
- "description": "Flag indicating that pagination should use page insets."
210
- },
211
- {
212
- "name": "variant",
213
- "type": "'top' | 'bottom' | PaginationVariant",
214
- "description": "Position where pagination is rendered.",
215
- "defaultValue": "PaginationVariant.top"
216
- },
217
- {
218
- "name": "widgetId",
219
- "type": "string",
220
- "description": "Id to identify widget on page.",
221
- "defaultValue": "'options-menu'"
222
- }
223
- ]
224
- },
225
- {
226
- "name": "PaginationTitles",
227
- "description": "Properties to customize various pagination titles. The following properties should be\npassed into the pagination component's title property.",
228
- "props": [
229
- {
230
- "name": "currPageAriaLabel",
231
- "type": "string",
232
- "description": "Accessible label for the input displaying the current page."
233
- },
234
- {
235
- "name": "items",
236
- "type": "string",
237
- "description": "The type or title of the items being paginated."
238
- },
239
- {
240
- "name": "itemsPerPage",
241
- "type": "string",
242
- "description": "The title of the pagination options menu."
243
- },
244
- {
245
- "name": "ofWord",
246
- "type": "string",
247
- "description": "Label for the English word \"of\"."
248
- },
249
- {
250
- "name": "optionsToggleAriaLabel",
251
- "type": "string",
252
- "description": "Accessible label for the options toggle."
253
- },
254
- {
255
- "name": "page",
256
- "type": "string",
257
- "description": "The title of a page displayed beside the page number."
258
- },
259
- {
260
- "name": "pages",
261
- "type": "string",
262
- "description": "The title of a page displayed beside the page number (plural form)."
263
- },
264
- {
265
- "name": "paginationAriaLabel",
266
- "type": "string",
267
- "description": "Accessible label for the pagination component."
268
- },
269
- {
270
- "name": "perPageSuffix",
271
- "type": "string",
272
- "description": "The suffix to be displayed after each option on the options menu dropdown."
273
- },
274
- {
275
- "name": "toFirstPageAriaLabel",
276
- "type": "string",
277
- "description": "Accessible label for the button which moves to the first page."
278
- },
279
- {
280
- "name": "toLastPageAriaLabel",
281
- "type": "string",
282
- "description": "Accessible label for the button which moves to the last page."
283
- },
284
- {
285
- "name": "toNextPageAriaLabel",
286
- "type": "string",
287
- "description": "Accessible label for the button which moves to the next page."
288
- },
289
- {
290
- "name": "toPreviousPageAriaLabel",
291
- "type": "string",
292
- "description": "Accessible label for the button which moves to the previous page."
293
- }
294
- ]
295
- },
296
- {
297
- "name": "PerPageOptions",
298
- "description": "Properties to customize the content and behavior of the pagination dropdown options. These\nproperties should be passed into the pagination component's perPageOptions property.",
299
- "props": [
300
- {
301
- "name": "title",
302
- "type": "string",
303
- "description": "The text title of the option, which is rendered inside the pagination dropdown menu."
304
- },
305
- {
306
- "name": "value",
307
- "type": "number",
308
- "description": "The value of the option, which determines how many items are displayed per page."
309
- }
310
- ]
311
- },
312
- {
313
- "name": "PaginationToggleTemplateProps",
314
- "description": "",
315
- "props": [
316
- {
317
- "name": "firstIndex",
318
- "type": "number",
319
- "description": "The first index of the items being paginated"
320
- },
321
- {
322
- "name": "itemCount",
323
- "type": "number",
324
- "description": "The total number of items being paginated"
325
- },
326
- {
327
- "name": "itemsTitle",
328
- "type": "string",
329
- "description": "The type or title of the items being paginated"
330
- },
331
- {
332
- "name": "lastIndex",
333
- "type": "number",
334
- "description": "The last index of the items being paginated"
335
- },
336
- {
337
- "name": "ofWord",
338
- "type": "React.ReactNode",
339
- "description": "The word that joins the index and itemCount/itemsTitle"
340
- }
341
- ]
342
- }
343
- ],
344
- "cssPrefix": [
345
- "pf-v6-c-pagination"
346
- ],
347
- "examples": [
348
- "Top",
349
- "Bottom",
350
- "Indeterminate",
351
- "Disabled",
352
- "No items",
353
- "One page",
354
- "Compact",
355
- "Offset",
356
- "Inset"
357
- ],
358
- "fullscreenExamples": [
359
- "Sticky",
360
- "Dynamic sticky top",
361
- "Dynamic sticky bottom"
362
- ]
363
- };
364
- pageData.liveContext = {
365
- Fragment,
366
- useState,
367
- useRef,
368
- useLayoutEffect
369
- };
370
- pageData.examples = {
371
- 'Top': props =>
372
- <Example {...pageData} {...props} {...{"code":"import { useState } from 'react';\nimport { Pagination } from '@patternfly/react-core';\n\nexport const PaginationTop: React.FunctionComponent = () => {\n const [page, setPage] = useState(1);\n const [perPage, setPerPage] = useState(20);\n\n const onSetPage = (_event: React.MouseEvent | React.KeyboardEvent | MouseEvent, newPage: number) => {\n setPage(newPage);\n };\n\n const onPerPageSelect = (\n _event: React.MouseEvent | React.KeyboardEvent | MouseEvent,\n newPerPage: number,\n newPage: number\n ) => {\n setPerPage(newPerPage);\n setPage(newPage);\n };\n\n return (\n <Pagination\n itemCount={523}\n perPage={perPage}\n page={page}\n onSetPage={onSetPage}\n widgetId=\"top-example\"\n onPerPageSelect={onPerPageSelect}\n ouiaId=\"PaginationTop\"\n />\n );\n};\n","title":"Top","lang":"ts","className":""}}>
373
-
374
- </Example>,
375
- 'Bottom': props =>
376
- <Example {...pageData} {...props} {...{"code":"import { useState } from 'react';\nimport { Pagination, PaginationVariant } from '@patternfly/react-core';\n\nexport const PaginationBottom: React.FunctionComponent = () => {\n const [page, setPage] = useState(1);\n const [perPage, setPerPage] = useState(10);\n\n const onSetPage = (_event: React.MouseEvent | React.KeyboardEvent | MouseEvent, newPage: number) => {\n setPage(newPage);\n };\n\n const onPerPageSelect = (\n _event: React.MouseEvent | React.KeyboardEvent | MouseEvent,\n newPerPage: number,\n newPage: number\n ) => {\n setPerPage(newPerPage);\n setPage(newPage);\n };\n\n return (\n <Pagination\n itemCount={333}\n widgetId=\"bottom-example\"\n perPage={perPage}\n page={page}\n variant={PaginationVariant.bottom}\n onSetPage={onSetPage}\n onPerPageSelect={onPerPageSelect}\n />\n );\n};\n","title":"Bottom","lang":"ts","className":""}}>
377
-
378
- </Example>,
379
- 'Indeterminate': props =>
380
- <Example {...pageData} {...props} {...{"code":"import { Fragment, useState } from 'react';\nimport { Pagination } from '@patternfly/react-core';\n\nexport const PaginationIndeterminate: React.FunctionComponent = () => {\n const [page, setPage] = useState(1);\n const [perPage, setPerPage] = useState(20);\n\n const onSetPage = (_event: React.MouseEvent | React.KeyboardEvent | MouseEvent, newPage: number) => {\n setPage(newPage);\n };\n\n const onPerPageSelect = (\n _event: React.MouseEvent | React.KeyboardEvent | MouseEvent,\n newPerPage: number,\n newPage: number\n ) => {\n setPerPage(newPerPage);\n setPage(newPage);\n };\n\n return (\n <Pagination\n toggleTemplate={({ firstIndex, lastIndex }) => (\n <Fragment>\n <b>\n {firstIndex} - {lastIndex}\n </b>\n of\n <b>many</b>\n </Fragment>\n )}\n widgetId=\"indeterminate-example\"\n perPage={perPage}\n page={page}\n onSetPage={onSetPage}\n onPerPageSelect={onPerPageSelect}\n />\n );\n};\n","title":"Indeterminate","lang":"ts","className":""}}>
381
-
382
- <p {...{"className":"pf-v6-c-content--p pf-m-editorial ws-p "}}>
383
- {`By not passing `}
384
-
385
- <code {...{"className":"ws-code "}}>
386
- {`itemCount`}
387
- </code>
388
- {` and passing `}
389
-
390
- <code {...{"className":"ws-code "}}>
391
- {`toggleTemplate`}
392
- </code>
393
- {` you can customize the toggle with text.`}
394
- </p>
395
- </Example>,
396
- 'Disabled': props =>
397
- <Example {...pageData} {...props} {...{"code":"import { useState } from 'react';\nimport { Pagination } from '@patternfly/react-core';\n\nexport const PaginationDisabled: React.FunctionComponent = () => {\n const [page, setPage] = useState(1);\n const [perPage, setPerPage] = useState(20);\n\n const onSetPage = (_event: React.MouseEvent | React.KeyboardEvent | MouseEvent, newPage: number) => {\n setPage(newPage);\n };\n\n const onPerPageSelect = (\n _event: React.MouseEvent | React.KeyboardEvent | MouseEvent,\n newPerPage: number,\n newPage: number\n ) => {\n setPerPage(newPerPage);\n setPage(newPage);\n };\n\n return (\n <Pagination\n itemCount={523}\n perPage={perPage}\n page={page}\n onSetPage={onSetPage}\n widgetId=\"disabled-example\"\n onPerPageSelect={onPerPageSelect}\n isDisabled\n />\n );\n};\n","title":"Disabled","lang":"ts","className":""}}>
398
-
399
- </Example>,
400
- 'No items': props =>
401
- <Example {...pageData} {...props} {...{"code":"import { useState } from 'react';\nimport { Pagination } from '@patternfly/react-core';\n\nexport const PaginationNoItems: React.FunctionComponent = () => {\n const [page, setPage] = useState(1);\n const [perPage, setPerPage] = useState(20);\n\n const onSetPage = (_event: React.MouseEvent | React.KeyboardEvent | MouseEvent, newPage: number) => {\n setPage(newPage);\n };\n\n const onPerPageSelect = (\n _event: React.MouseEvent | React.KeyboardEvent | MouseEvent,\n newPerPage: number,\n newPage: number\n ) => {\n setPerPage(newPerPage);\n setPage(newPage);\n };\n\n return (\n <Pagination\n itemCount={0}\n perPage={perPage}\n page={page}\n onSetPage={onSetPage}\n widgetId=\"no-items-example\"\n onPerPageSelect={onPerPageSelect}\n />\n );\n};\n","title":"No items","lang":"ts","className":""}}>
402
-
403
- </Example>,
404
- 'One page': props =>
405
- <Example {...pageData} {...props} {...{"code":"import { useState } from 'react';\nimport { Pagination } from '@patternfly/react-core';\n\nexport const PaginationOnePage: React.FunctionComponent = () => {\n const [page, setPage] = useState(1);\n const [perPage, setPerPage] = useState(20);\n\n const onSetPage = (_event: React.MouseEvent | React.KeyboardEvent | MouseEvent, newPage: number) => {\n setPage(newPage);\n };\n\n const onPerPageSelect = (\n _event: React.MouseEvent | React.KeyboardEvent | MouseEvent,\n newPerPage: number,\n newPage: number\n ) => {\n setPerPage(newPerPage);\n setPage(newPage);\n };\n\n return (\n <Pagination\n itemCount={15}\n perPage={perPage}\n page={page}\n onSetPage={onSetPage}\n widgetId=\"one-page-example\"\n onPerPageSelect={onPerPageSelect}\n />\n );\n};\n","title":"One page","lang":"ts","className":""}}>
406
-
407
- </Example>,
408
- 'Compact': props =>
409
- <Example {...pageData} {...props} {...{"code":"import { useState } from 'react';\nimport { Pagination } from '@patternfly/react-core';\n\nexport const PaginationCompact: React.FunctionComponent = () => {\n const [page, setPage] = useState(1);\n const [perPage, setPerPage] = useState(20);\n\n const onSetPage = (_event: React.MouseEvent | React.KeyboardEvent | MouseEvent, newPage: number) => {\n setPage(newPage);\n };\n\n const onPerPageSelect = (\n _event: React.MouseEvent | React.KeyboardEvent | MouseEvent,\n newPerPage: number,\n newPage: number\n ) => {\n setPerPage(newPerPage);\n setPage(newPage);\n };\n\n return (\n <Pagination\n itemCount={523}\n perPage={perPage}\n page={page}\n onSetPage={onSetPage}\n widgetId=\"compact-example\"\n onPerPageSelect={onPerPageSelect}\n isCompact\n />\n );\n};\n","title":"Compact","lang":"ts","className":""}}>
410
-
411
- </Example>,
412
- 'Offset': props =>
413
- <Example {...pageData} {...props} {...{"code":"import { useState } from 'react';\nimport { Pagination } from '@patternfly/react-core';\n\nexport const PaginationOffset: React.FunctionComponent = () => {\n const [offset, setOffset] = useState(7);\n const [perPage, setPerPage] = useState(20);\n\n const onSetPage = (\n _event: React.MouseEvent | React.KeyboardEvent | MouseEvent,\n newPage: number,\n _perPage: number | undefined,\n startIdx: number | undefined\n ) => {\n setOffset(startIdx || 0);\n };\n const onPerPageSelect = (_event: React.MouseEvent | React.KeyboardEvent | MouseEvent, newPerPage: number) => {\n setPerPage(newPerPage);\n setOffset(0);\n };\n\n return (\n <Pagination\n itemCount={523}\n perPage={perPage}\n offset={offset}\n onSetPage={onSetPage}\n widgetId=\"offset-pagination-example\"\n onPerPageSelect={onPerPageSelect}\n ouiaId=\"PaginationOffset\"\n />\n );\n};\n","title":"Offset","lang":"ts","className":""}}>
414
-
415
- </Example>,
416
- 'Sticky': props =>
417
- <Example {...pageData} {...props} thumbnail={srcImportsticky} {...{"code":"import { Fragment, useState } from 'react';\nimport { Pagination, PaginationVariant, Gallery, GalleryItem, Card, CardBody } from '@patternfly/react-core';\n\nexport const PaginationSticky: React.FunctionComponent = () => {\n const [page, setPage] = useState(1);\n const [perPage, setPerPage] = useState(100);\n const [isTopSticky, setIsTopSticky] = useState(true);\n const itemCount = 523;\n\n const onToggleSticky = () => {\n setIsTopSticky((prev) => !prev);\n };\n\n const onSetPage = (_event: React.MouseEvent | React.KeyboardEvent | MouseEvent, newPage: number) => {\n setPage(newPage);\n };\n\n const onPerPageSelect = (\n _event: React.MouseEvent | React.KeyboardEvent | MouseEvent,\n newPerPage: number,\n newPage: number\n ) => {\n setPerPage(newPerPage);\n setPage(newPage);\n };\n\n const buildCards = () => {\n const numberOfCards = (page - 1) * perPage + perPage - 1 >= itemCount ? itemCount - (page - 1) * perPage : perPage;\n\n return Array.from({ length: numberOfCards }).map((_value, index) => (\n <GalleryItem key={index}>\n <Card>\n <CardBody>This is a card</CardBody>\n </Card>\n </GalleryItem>\n ));\n };\n\n return isTopSticky ? (\n <Fragment>\n <Pagination\n itemCount={itemCount}\n perPage={perPage}\n page={page}\n onSetPage={onSetPage}\n widgetId=\"pagination-options-menu-top\"\n onPerPageSelect={onPerPageSelect}\n isSticky\n >\n <button onClick={onToggleSticky}>Toggle to bottom position</button>\n </Pagination>\n <Gallery hasGutter>{buildCards()}</Gallery>\n </Fragment>\n ) : (\n <Fragment>\n <Gallery hasGutter>{buildCards()}</Gallery>\n <Pagination\n itemCount={itemCount}\n perPage={perPage}\n page={page}\n onSetPage={onSetPage}\n widgetId=\"pagination-options-menu-top\"\n onPerPageSelect={onPerPageSelect}\n isSticky\n variant={PaginationVariant.bottom}\n >\n <button onClick={onToggleSticky}>Toggle to top position</button>\n </Pagination>\n </Fragment>\n );\n};\n","title":"Sticky","lang":"ts","isFullscreen":true,"className":""}}>
418
-
419
- </Example>,
420
- 'Dynamic sticky top': props =>
421
- <Example {...pageData} {...props} {...{"code":"import { useLayoutEffect, useState, useRef } from 'react';\nimport { Pagination, Gallery, GalleryItem, Card, CardBody } from '@patternfly/react-core';\n\nconst useIsStuckFromScrollParent = ({\n shouldTrack,\n scrollParentRef\n}: {\n /** Indicates whether to track the scroll top position of the scroll parent element */\n shouldTrack: boolean;\n /** Reference to the scroll parent element */\n scrollParentRef: React.RefObject<any>;\n}): boolean => {\n const [isStuck, setIsStuck] = useState(false);\n\n useLayoutEffect(() => {\n if (!shouldTrack) {\n setIsStuck(false);\n return;\n }\n\n const scrollElement = scrollParentRef.current;\n if (!scrollElement) {\n setIsStuck(false);\n return;\n }\n\n const syncFromScroll = () => {\n setIsStuck(scrollElement.scrollTop > 0);\n };\n syncFromScroll();\n scrollElement.addEventListener('scroll', syncFromScroll, { passive: true });\n return () => scrollElement.removeEventListener('scroll', syncFromScroll);\n }, [shouldTrack, scrollParentRef]);\n\n return isStuck;\n};\n\nexport const PaginationDynamicStickyTop: React.FunctionComponent = () => {\n const scrollParentRef = useRef<HTMLDivElement>(null);\n const isStickyStuck = useIsStuckFromScrollParent({ shouldTrack: true, scrollParentRef });\n const [page, setPage] = useState(1);\n const [perPage, setPerPage] = useState(50);\n const itemCount = 523;\n\n const onSetPage = (_event: React.MouseEvent | React.KeyboardEvent | MouseEvent, newPage: number) => {\n setPage(newPage);\n };\n\n const onPerPageSelect = (\n _event: React.MouseEvent | React.KeyboardEvent | MouseEvent,\n newPerPage: number,\n newPage: number\n ) => {\n setPerPage(newPerPage);\n setPage(newPage);\n };\n\n const buildCards = () => {\n const numberOfCards = (page - 1) * perPage + perPage - 1 >= itemCount ? itemCount - (page - 1) * perPage : perPage;\n\n return Array.from({ length: numberOfCards }).map((_value, index) => (\n <GalleryItem key={index}>\n <Card>\n <CardBody>This is card {(page - 1) * perPage + index + 1}</CardBody>\n </Card>\n </GalleryItem>\n ));\n };\n\n return (\n <div ref={scrollParentRef} style={{ overflowY: 'scroll', height: '400px' }}>\n <Pagination\n itemCount={itemCount}\n perPage={perPage}\n page={page}\n onSetPage={onSetPage}\n widgetId=\"dynamic-sticky-top-example\"\n onPerPageSelect={onPerPageSelect}\n isStickyBase\n isStickyStuck={isStickyStuck}\n />\n <Gallery hasGutter>{buildCards()}</Gallery>\n </div>\n );\n};\n","title":"Dynamic sticky top","lang":"ts","isFullscreen":true,"className":""}}>
422
-
423
- <p {...{"className":"pf-v6-c-content--p pf-m-editorial ws-p "}}>
424
- {`Pagination can be made sticky via two properties: `}
425
-
426
- <code {...{"className":"ws-code "}}>
427
- {`isStickyBase`}
428
- </code>
429
- {`, which allows separate control of the sticky position, and `}
430
-
431
- <code {...{"className":"ws-code "}}>
432
- {`isStickyStuck`}
433
- </code>
434
- {`, which applies the sticky styling. In this example, `}
435
-
436
- <code {...{"className":"ws-code "}}>
437
- {`isStickyStuck`}
438
- </code>
439
- {` is only applied when the pagination is not at the top of the scroll parent container.`}
440
- </p>
441
- </Example>,
442
- 'Dynamic sticky bottom': props =>
443
- <Example {...pageData} {...props} {...{"code":"import { useLayoutEffect, useState, useRef } from 'react';\nimport { Pagination, PaginationVariant, Gallery, GalleryItem, Card, CardBody } from '@patternfly/react-core';\n\nconst useIsStuckFromScrollParent = ({\n shouldTrack,\n scrollParentRef\n}: {\n /** Indicates whether to track the scroll top position of the scroll parent element */\n shouldTrack: boolean;\n /** Reference to the scroll parent element */\n scrollParentRef: React.RefObject<any>;\n}): boolean => {\n const [isStuck, setIsStuck] = useState(false);\n\n useLayoutEffect(() => {\n if (!shouldTrack) {\n setIsStuck(false);\n return;\n }\n\n const scrollElement = scrollParentRef.current;\n if (!scrollElement) {\n setIsStuck(false);\n return;\n }\n\n const syncFromScroll = () => {\n setIsStuck(scrollElement.scrollTop + scrollElement.clientHeight < scrollElement.scrollHeight);\n };\n syncFromScroll();\n scrollElement.addEventListener('scroll', syncFromScroll, { passive: true });\n return () => scrollElement.removeEventListener('scroll', syncFromScroll);\n }, [shouldTrack, scrollParentRef]);\n\n return isStuck;\n};\n\nexport const PaginationDynamicStickyBottom: React.FunctionComponent = () => {\n const scrollParentRef = useRef<HTMLDivElement>(null);\n const isStickyStuck = useIsStuckFromScrollParent({ shouldTrack: true, scrollParentRef });\n const [page, setPage] = useState(1);\n const [perPage, setPerPage] = useState(50);\n const itemCount = 523;\n\n const onSetPage = (_event: React.MouseEvent | React.KeyboardEvent | MouseEvent, newPage: number) => {\n setPage(newPage);\n };\n\n const onPerPageSelect = (\n _event: React.MouseEvent | React.KeyboardEvent | MouseEvent,\n newPerPage: number,\n newPage: number\n ) => {\n setPerPage(newPerPage);\n setPage(newPage);\n };\n\n const buildCards = () => {\n const numberOfCards = (page - 1) * perPage + perPage - 1 >= itemCount ? itemCount - (page - 1) * perPage : perPage;\n\n return Array.from({ length: numberOfCards }).map((_value, index) => (\n <GalleryItem key={index}>\n <Card>\n <CardBody>This is card {(page - 1) * perPage + index + 1}</CardBody>\n </Card>\n </GalleryItem>\n ));\n };\n\n return (\n <div ref={scrollParentRef} style={{ overflowY: 'scroll', height: '400px' }}>\n <Gallery hasGutter>{buildCards()}</Gallery>\n <Pagination\n itemCount={itemCount}\n perPage={perPage}\n page={page}\n onSetPage={onSetPage}\n widgetId=\"dynamic-sticky-bottom-example\"\n onPerPageSelect={onPerPageSelect}\n variant={PaginationVariant.bottom}\n isStickyBase\n isStickyStuck={isStickyStuck}\n />\n </div>\n );\n};\n","title":"Dynamic sticky bottom","lang":"ts","isFullscreen":true,"className":""}}>
444
-
445
- <p {...{"className":"pf-v6-c-content--p pf-m-editorial ws-p "}}>
446
- {`Bottom pagination can be made sticky via two properties: `}
447
-
448
- <code {...{"className":"ws-code "}}>
449
- {`isStickyBase`}
450
- </code>
451
- {`, which allows separate control of the sticky position, and `}
452
-
453
- <code {...{"className":"ws-code "}}>
454
- {`isStickyStuck`}
455
- </code>
456
- {`, which applies the sticky styling. In this example, `}
457
-
458
- <code {...{"className":"ws-code "}}>
459
- {`isStickyStuck`}
460
- </code>
461
- {` is only applied when the pagination is not at the bottom of the scroll parent container.`}
462
- </p>
463
- </Example>,
464
- 'Inset': props =>
465
- <Example {...pageData} {...props} {...{"code":"import { useState } from 'react';\nimport { Pagination } from '@patternfly/react-core';\n\nexport const PaginationInset: React.FunctionComponent = () => {\n const [page, setPage] = useState(1);\n const [perPage, setPerPage] = useState(20);\n\n const onSetPage = (_event: React.MouseEvent | React.KeyboardEvent | MouseEvent, newPage: number) => {\n setPage(newPage);\n };\n\n const onPerPageSelect = (\n _event: React.MouseEvent | React.KeyboardEvent | MouseEvent,\n newPerPage: number,\n newPage: number\n ) => {\n setPerPage(newPerPage);\n setPage(newPage);\n };\n\n return (\n <Pagination\n itemCount={523}\n perPage={perPage}\n page={page}\n onSetPage={onSetPage}\n widgetId=\"inset-example\"\n onPerPageSelect={onPerPageSelect}\n inset={{\n default: 'insetNone',\n md: 'insetMd',\n lg: 'inset2xl'\n }}\n />\n );\n};\n","title":"Inset","lang":"ts","className":""}}>
466
-
467
- </Example>
468
- };
469
-
470
- const Component = () => (
471
- <React.Fragment>
472
- <AutoLinkHeader {...{"id":"examples","headingLevel":"h2","className":"ws-title ws-h2"}}>
473
- {`Examples`}
474
- </AutoLinkHeader>
475
- {React.createElement(pageData.examples["Top"])}
476
- {React.createElement(pageData.examples["Bottom"])}
477
- {React.createElement(pageData.examples["Indeterminate"])}
478
- {React.createElement(pageData.examples["Disabled"])}
479
- {React.createElement(pageData.examples["No items"])}
480
- {React.createElement(pageData.examples["One page"])}
481
- {React.createElement(pageData.examples["Compact"])}
482
- {React.createElement(pageData.examples["Offset"])}
483
- {React.createElement(pageData.examples["Sticky"])}
484
- {React.createElement(pageData.examples["Dynamic sticky top"])}
485
- {React.createElement(pageData.examples["Dynamic sticky bottom"])}
486
- {React.createElement(pageData.examples["Inset"])}
487
- </React.Fragment>
488
- );
489
- Component.displayName = 'ComponentsPaginationReactDocs';
490
- Component.pageData = pageData;
491
-
492
- export default Component;