@patternfly/react-core 5.3.0-prerelease.20 → 5.3.0-prerelease.22

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 (140) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/components/package.json +1 -1
  3. package/deprecated/package.json +1 -1
  4. package/dist/dynamic/components/AboutModal/package.json +1 -1
  5. package/dist/dynamic/components/Accordion/package.json +1 -1
  6. package/dist/dynamic/components/ActionList/package.json +1 -1
  7. package/dist/dynamic/components/Alert/package.json +1 -1
  8. package/dist/dynamic/components/Avatar/package.json +1 -1
  9. package/dist/dynamic/components/BackToTop/package.json +1 -1
  10. package/dist/dynamic/components/Backdrop/package.json +1 -1
  11. package/dist/dynamic/components/BackgroundImage/package.json +1 -1
  12. package/dist/dynamic/components/Badge/package.json +1 -1
  13. package/dist/dynamic/components/Banner/package.json +1 -1
  14. package/dist/dynamic/components/Brand/package.json +1 -1
  15. package/dist/dynamic/components/Breadcrumb/package.json +1 -1
  16. package/dist/dynamic/components/Button/package.json +1 -1
  17. package/dist/dynamic/components/CalendarMonth/package.json +1 -1
  18. package/dist/dynamic/components/Card/package.json +1 -1
  19. package/dist/dynamic/components/Checkbox/package.json +1 -1
  20. package/dist/dynamic/components/Chip/package.json +1 -1
  21. package/dist/dynamic/components/ClipboardCopy/package.json +1 -1
  22. package/dist/dynamic/components/CodeBlock/package.json +1 -1
  23. package/dist/dynamic/components/DataList/package.json +1 -1
  24. package/dist/dynamic/components/DatePicker/package.json +1 -1
  25. package/dist/dynamic/components/DescriptionList/package.json +1 -1
  26. package/dist/dynamic/components/Divider/package.json +1 -1
  27. package/dist/dynamic/components/DragDrop/package.json +1 -1
  28. package/dist/dynamic/components/Drawer/package.json +1 -1
  29. package/dist/dynamic/components/Dropdown/package.json +1 -1
  30. package/dist/dynamic/components/DualListSelector/package.json +1 -1
  31. package/dist/dynamic/components/EmptyState/package.json +1 -1
  32. package/dist/dynamic/components/ExpandableSection/package.json +1 -1
  33. package/dist/dynamic/components/FileUpload/package.json +1 -1
  34. package/dist/dynamic/components/Form/package.json +1 -1
  35. package/dist/dynamic/components/FormSelect/package.json +1 -1
  36. package/dist/dynamic/components/HelperText/package.json +1 -1
  37. package/dist/dynamic/components/Hint/package.json +1 -1
  38. package/dist/dynamic/components/Icon/package.json +1 -1
  39. package/dist/dynamic/components/InputGroup/package.json +1 -1
  40. package/dist/dynamic/components/JumpLinks/package.json +1 -1
  41. package/dist/dynamic/components/Label/package.json +1 -1
  42. package/dist/dynamic/components/List/package.json +1 -1
  43. package/dist/dynamic/components/LoginPage/package.json +1 -1
  44. package/dist/dynamic/components/Masthead/package.json +1 -1
  45. package/dist/dynamic/components/Menu/package.json +1 -1
  46. package/dist/dynamic/components/MenuToggle/package.json +1 -1
  47. package/dist/dynamic/components/Modal/package.json +1 -1
  48. package/dist/dynamic/components/MultipleFileUpload/package.json +1 -1
  49. package/dist/dynamic/components/Nav/package.json +1 -1
  50. package/dist/dynamic/components/NotificationBadge/package.json +1 -1
  51. package/dist/dynamic/components/NotificationDrawer/package.json +1 -1
  52. package/dist/dynamic/components/NumberInput/package.json +1 -1
  53. package/dist/dynamic/components/OverflowMenu/package.json +1 -1
  54. package/dist/dynamic/components/Page/package.json +1 -1
  55. package/dist/dynamic/components/Pagination/package.json +1 -1
  56. package/dist/dynamic/components/Panel/package.json +1 -1
  57. package/dist/dynamic/components/Popover/package.json +1 -1
  58. package/dist/dynamic/components/Progress/package.json +1 -1
  59. package/dist/dynamic/components/ProgressStepper/package.json +1 -1
  60. package/dist/dynamic/components/Radio/package.json +1 -1
  61. package/dist/dynamic/components/SearchInput/package.json +1 -1
  62. package/dist/dynamic/components/Select/package.json +1 -1
  63. package/dist/dynamic/components/Sidebar/package.json +1 -1
  64. package/dist/dynamic/components/SimpleList/package.json +1 -1
  65. package/dist/dynamic/components/Skeleton/package.json +1 -1
  66. package/dist/dynamic/components/SkipToContent/package.json +1 -1
  67. package/dist/dynamic/components/Slider/package.json +1 -1
  68. package/dist/dynamic/components/Spinner/package.json +1 -1
  69. package/dist/dynamic/components/Switch/package.json +1 -1
  70. package/dist/dynamic/components/Tabs/package.json +1 -1
  71. package/dist/dynamic/components/Text/package.json +1 -1
  72. package/dist/dynamic/components/TextArea/package.json +1 -1
  73. package/dist/dynamic/components/TextInput/package.json +1 -1
  74. package/dist/dynamic/components/TextInputGroup/package.json +1 -1
  75. package/dist/dynamic/components/Tile/package.json +1 -1
  76. package/dist/dynamic/components/TimePicker/package.json +1 -1
  77. package/dist/dynamic/components/Timestamp/package.json +1 -1
  78. package/dist/dynamic/components/Title/package.json +1 -1
  79. package/dist/dynamic/components/ToggleGroup/package.json +1 -1
  80. package/dist/dynamic/components/Toolbar/package.json +1 -1
  81. package/dist/dynamic/components/Tooltip/package.json +1 -1
  82. package/dist/dynamic/components/TreeView/package.json +1 -1
  83. package/dist/dynamic/components/Truncate/package.json +1 -1
  84. package/dist/dynamic/components/Wizard/hooks/package.json +1 -1
  85. package/dist/dynamic/components/Wizard/package.json +1 -1
  86. package/dist/dynamic/deprecated/components/ApplicationLauncher/package.json +1 -1
  87. package/dist/dynamic/deprecated/components/ContextSelector/package.json +1 -1
  88. package/dist/dynamic/deprecated/components/Dropdown/package.json +1 -1
  89. package/dist/dynamic/deprecated/components/OptionsMenu/package.json +1 -1
  90. package/dist/dynamic/deprecated/components/PageHeader/package.json +1 -1
  91. package/dist/dynamic/deprecated/components/Select/package.json +1 -1
  92. package/dist/dynamic/deprecated/components/Wizard/package.json +1 -1
  93. package/dist/dynamic/deprecated/components/package.json +1 -1
  94. package/dist/dynamic/helpers/FocusTrap/FocusTrap/package.json +1 -1
  95. package/dist/dynamic/helpers/GenerateId/GenerateId/package.json +1 -1
  96. package/dist/dynamic/helpers/KeyboardHandler/package.json +1 -1
  97. package/dist/dynamic/helpers/OUIA/ouia/package.json +1 -1
  98. package/dist/dynamic/helpers/Popper/Popper/package.json +1 -1
  99. package/dist/dynamic/helpers/constants/package.json +1 -1
  100. package/dist/dynamic/helpers/datetimeUtils/package.json +1 -1
  101. package/dist/dynamic/helpers/favorites/package.json +1 -1
  102. package/dist/dynamic/helpers/fileUtils/package.json +1 -1
  103. package/dist/dynamic/helpers/htmlConstants/package.json +1 -1
  104. package/dist/dynamic/helpers/package.json +1 -1
  105. package/dist/dynamic/helpers/resizeObserver/package.json +1 -1
  106. package/dist/dynamic/helpers/typeUtils/package.json +1 -1
  107. package/dist/dynamic/helpers/useInterval/package.json +1 -1
  108. package/dist/dynamic/helpers/useIsomorphicLayout/package.json +1 -1
  109. package/dist/dynamic/helpers/useUnmountEffect/package.json +1 -1
  110. package/dist/dynamic/helpers/util/package.json +1 -1
  111. package/dist/dynamic/layouts/Bullseye/package.json +1 -1
  112. package/dist/dynamic/layouts/Flex/package.json +1 -1
  113. package/dist/dynamic/layouts/Gallery/package.json +1 -1
  114. package/dist/dynamic/layouts/Grid/package.json +1 -1
  115. package/dist/dynamic/layouts/Level/package.json +1 -1
  116. package/dist/dynamic/layouts/Split/package.json +1 -1
  117. package/dist/dynamic/layouts/Stack/package.json +1 -1
  118. package/dist/dynamic/next/components/DualListSelector/package.json +1 -1
  119. package/dist/dynamic/next/components/Modal/package.json +1 -1
  120. package/dist/dynamic/next/components/package.json +1 -1
  121. package/dist/dynamic/styles/package.json +1 -1
  122. package/dist/esm/components/Label/Label.d.ts +2 -0
  123. package/dist/esm/components/Label/Label.d.ts.map +1 -1
  124. package/dist/esm/components/Label/Label.js +9 -8
  125. package/dist/esm/components/Label/Label.js.map +1 -1
  126. package/dist/js/components/Label/Label.d.ts +2 -0
  127. package/dist/js/components/Label/Label.d.ts.map +1 -1
  128. package/dist/js/components/Label/Label.js +9 -8
  129. package/dist/js/components/Label/Label.js.map +1 -1
  130. package/dist/umd/react-core.min.js +1 -1
  131. package/helpers/package.json +1 -1
  132. package/layouts/package.json +1 -1
  133. package/next/package.json +1 -1
  134. package/package.json +2 -2
  135. package/src/components/Label/Label.tsx +16 -5
  136. package/src/components/Label/examples/LabelCompact.tsx +19 -1
  137. package/src/components/Label/examples/LabelFilled.tsx +106 -16
  138. package/src/components/Label/examples/LabelOutline.tsx +168 -16
  139. package/src/demos/RTL/RTL.md +1 -1
  140. package/src/demos/RTL/examples/{PaginatedTable.jsx → PaginatedTable.tsx} +48 -22
@@ -24,15 +24,27 @@ export const LabelOutline: React.FunctionComponent = () => {
24
24
  </Label>{' '}
25
25
  <Label variant="outline" href="#outline" onClose={() => Function.prototype}>
26
26
  Grey link removable
27
- </Label>
27
+ </Label>{' '}
28
28
  <Label variant="outline" onClick={() => logColor('grey')}>
29
29
  Grey clickable
30
30
  </Label>{' '}
31
31
  <Label variant="outline" onClick={() => logColor('grey')} onClose={() => Function.prototype}>
32
32
  Grey clickable removable
33
- </Label>
33
+ </Label>{' '}
34
34
  <Label variant="outline" icon={<InfoCircleIcon />} onClose={() => Function.prototype} textMaxWidth="16ch">
35
35
  Grey label with icon that overflows
36
+ </Label>{' '}
37
+ <Label variant="outline" isDisabled icon={<InfoCircleIcon />} href="#filled" onClose={() => Function.prototype}>
38
+ Grey link removable (disabled)
39
+ </Label>{' '}
40
+ <Label
41
+ variant="outline"
42
+ isDisabled
43
+ icon={<InfoCircleIcon />}
44
+ onClick={() => logColor('grey')}
45
+ onClose={() => Function.prototype}
46
+ >
47
+ Grey clickable removable (disabled)
36
48
  </Label>
37
49
  <br />
38
50
  <br />
@@ -53,13 +65,13 @@ export const LabelOutline: React.FunctionComponent = () => {
53
65
  </Label>{' '}
54
66
  <Label variant="outline" color="blue" href="#outline" onClose={() => Function.prototype}>
55
67
  Blue link removable
56
- </Label>
68
+ </Label>{' '}
57
69
  <Label variant="outline" color="blue" onClick={() => logColor('blue')}>
58
70
  Blue clickable
59
71
  </Label>{' '}
60
72
  <Label variant="outline" color="blue" onClick={() => logColor('blue')} onClose={() => Function.prototype}>
61
73
  Blue clickable removable
62
- </Label>
74
+ </Label>{' '}
63
75
  <Label
64
76
  variant="outline"
65
77
  color="blue"
@@ -68,6 +80,26 @@ export const LabelOutline: React.FunctionComponent = () => {
68
80
  textMaxWidth="16ch"
69
81
  >
70
82
  Blue label with icon that overflows
83
+ </Label>{' '}
84
+ <Label
85
+ variant="outline"
86
+ color="blue"
87
+ isDisabled
88
+ icon={<InfoCircleIcon />}
89
+ href="#filled"
90
+ onClose={() => Function.prototype}
91
+ >
92
+ Blue link removable (disabled)
93
+ </Label>{' '}
94
+ <Label
95
+ variant="outline"
96
+ color="blue"
97
+ isDisabled
98
+ icon={<InfoCircleIcon />}
99
+ onClick={() => logColor('blue')}
100
+ onClose={() => Function.prototype}
101
+ >
102
+ Blue clickable removable (disabled)
71
103
  </Label>
72
104
  <br />
73
105
  <br />
@@ -88,13 +120,13 @@ export const LabelOutline: React.FunctionComponent = () => {
88
120
  </Label>{' '}
89
121
  <Label variant="outline" color="green" href="#outline" onClose={() => Function.prototype}>
90
122
  Green link removable
91
- </Label>
123
+ </Label>{' '}
92
124
  <Label variant="outline" color="green" onClick={() => logColor('green')}>
93
125
  Green clickable
94
126
  </Label>{' '}
95
127
  <Label variant="outline" color="green" onClick={() => logColor('green')} onClose={() => Function.prototype}>
96
128
  Green clickable removable
97
- </Label>
129
+ </Label>{' '}
98
130
  <Label
99
131
  variant="outline"
100
132
  color="green"
@@ -103,6 +135,26 @@ export const LabelOutline: React.FunctionComponent = () => {
103
135
  textMaxWidth="16ch"
104
136
  >
105
137
  Green label with icon that overflows
138
+ </Label>{' '}
139
+ <Label
140
+ variant="outline"
141
+ color="green"
142
+ isDisabled
143
+ icon={<InfoCircleIcon />}
144
+ href="#filled"
145
+ onClose={() => Function.prototype}
146
+ >
147
+ Green link removable (disabled)
148
+ </Label>{' '}
149
+ <Label
150
+ variant="outline"
151
+ color="green"
152
+ isDisabled
153
+ icon={<InfoCircleIcon />}
154
+ onClick={() => logColor('green')}
155
+ onClose={() => Function.prototype}
156
+ >
157
+ Green clickable removable (disabled)
106
158
  </Label>
107
159
  <br />
108
160
  <br />
@@ -123,13 +175,13 @@ export const LabelOutline: React.FunctionComponent = () => {
123
175
  </Label>{' '}
124
176
  <Label variant="outline" color="orange" href="#outline" onClose={() => Function.prototype}>
125
177
  Orange link removable
126
- </Label>
178
+ </Label>{' '}
127
179
  <Label variant="outline" color="orange" onClick={() => logColor('orange')}>
128
180
  Orange clickable
129
181
  </Label>{' '}
130
182
  <Label variant="outline" color="orange" onClick={() => logColor('orange')} onClose={() => Function.prototype}>
131
183
  Orange clickable removable
132
- </Label>
184
+ </Label>{' '}
133
185
  <Label
134
186
  variant="outline"
135
187
  color="orange"
@@ -138,6 +190,26 @@ export const LabelOutline: React.FunctionComponent = () => {
138
190
  textMaxWidth="16ch"
139
191
  >
140
192
  Orange label with icon that overflows
193
+ </Label>{' '}
194
+ <Label
195
+ variant="outline"
196
+ color="orange"
197
+ isDisabled
198
+ icon={<InfoCircleIcon />}
199
+ href="#filled"
200
+ onClose={() => Function.prototype}
201
+ >
202
+ Orange link removable (disabled)
203
+ </Label>{' '}
204
+ <Label
205
+ variant="outline"
206
+ color="orange"
207
+ isDisabled
208
+ icon={<InfoCircleIcon />}
209
+ onClick={() => logColor('orange')}
210
+ onClose={() => Function.prototype}
211
+ >
212
+ Orange clickable removable (disabled)
141
213
  </Label>
142
214
  <br />
143
215
  <br />
@@ -158,13 +230,13 @@ export const LabelOutline: React.FunctionComponent = () => {
158
230
  </Label>{' '}
159
231
  <Label variant="outline" color="red" href="#outline" onClose={() => Function.prototype}>
160
232
  Red link removable
161
- </Label>
233
+ </Label>{' '}
162
234
  <Label variant="outline" color="red" onClick={() => logColor('red')}>
163
235
  Red clickable
164
236
  </Label>{' '}
165
237
  <Label variant="outline" color="red" onClick={() => logColor('red')} onClose={() => Function.prototype}>
166
238
  Red clickable removable
167
- </Label>
239
+ </Label>{' '}
168
240
  <Label
169
241
  variant="outline"
170
242
  color="red"
@@ -173,6 +245,26 @@ export const LabelOutline: React.FunctionComponent = () => {
173
245
  textMaxWidth="16ch"
174
246
  >
175
247
  Red label with icon that overflows
248
+ </Label>{' '}
249
+ <Label
250
+ variant="outline"
251
+ color="red"
252
+ isDisabled
253
+ icon={<InfoCircleIcon />}
254
+ href="#filled"
255
+ onClose={() => Function.prototype}
256
+ >
257
+ Red link removable (disabled)
258
+ </Label>{' '}
259
+ <Label
260
+ variant="outline"
261
+ color="red"
262
+ isDisabled
263
+ icon={<InfoCircleIcon />}
264
+ onClick={() => logColor('red')}
265
+ onClose={() => Function.prototype}
266
+ >
267
+ Red clickable removable (disabled)
176
268
  </Label>
177
269
  <br />
178
270
  <br />
@@ -193,13 +285,13 @@ export const LabelOutline: React.FunctionComponent = () => {
193
285
  </Label>{' '}
194
286
  <Label variant="outline" color="purple" href="#outline" onClose={() => Function.prototype}>
195
287
  Purple link removable
196
- </Label>
288
+ </Label>{' '}
197
289
  <Label variant="outline" color="purple" onClick={() => logColor('purple')}>
198
290
  Purple clickable
199
291
  </Label>{' '}
200
292
  <Label variant="outline" color="purple" onClick={() => logColor('purple')} onClose={() => Function.prototype}>
201
293
  Purple clickable removable
202
- </Label>
294
+ </Label>{' '}
203
295
  <Label
204
296
  variant="outline"
205
297
  color="purple"
@@ -208,6 +300,26 @@ export const LabelOutline: React.FunctionComponent = () => {
208
300
  textMaxWidth="16ch"
209
301
  >
210
302
  Purple label with icon that overflows
303
+ </Label>{' '}
304
+ <Label
305
+ variant="outline"
306
+ color="purple"
307
+ isDisabled
308
+ icon={<InfoCircleIcon />}
309
+ href="#filled"
310
+ onClose={() => Function.prototype}
311
+ >
312
+ Purple link removable (disabled)
313
+ </Label>{' '}
314
+ <Label
315
+ variant="outline"
316
+ color="purple"
317
+ isDisabled
318
+ icon={<InfoCircleIcon />}
319
+ onClick={() => logColor('purple')}
320
+ onClose={() => Function.prototype}
321
+ >
322
+ Purple clickable removable (disabled)
211
323
  </Label>
212
324
  <br />
213
325
  <br />
@@ -228,13 +340,13 @@ export const LabelOutline: React.FunctionComponent = () => {
228
340
  </Label>{' '}
229
341
  <Label variant="outline" color="cyan" href="#outline" onClose={() => Function.prototype}>
230
342
  Cyan link removable
231
- </Label>
343
+ </Label>{' '}
232
344
  <Label variant="outline" color="cyan" onClick={() => logColor('cyan')}>
233
345
  Cyan clickable
234
346
  </Label>{' '}
235
347
  <Label variant="outline" color="cyan" onClick={() => logColor('cyan')} onClose={() => Function.prototype}>
236
348
  Cyan clickable removable
237
- </Label>
349
+ </Label>{' '}
238
350
  <Label
239
351
  variant="outline"
240
352
  color="cyan"
@@ -243,6 +355,26 @@ export const LabelOutline: React.FunctionComponent = () => {
243
355
  textMaxWidth="16ch"
244
356
  >
245
357
  Cyan label with icon that overflows
358
+ </Label>{' '}
359
+ <Label
360
+ variant="outline"
361
+ color="cyan"
362
+ isDisabled
363
+ icon={<InfoCircleIcon />}
364
+ href="#filled"
365
+ onClose={() => Function.prototype}
366
+ >
367
+ Cyan link removable (disabled)
368
+ </Label>{' '}
369
+ <Label
370
+ variant="outline"
371
+ color="cyan"
372
+ isDisabled
373
+ icon={<InfoCircleIcon />}
374
+ onClick={() => logColor('cyan')}
375
+ onClose={() => Function.prototype}
376
+ >
377
+ Cyan clickable removable (disabled)
246
378
  </Label>
247
379
  <br />
248
380
  <br />
@@ -263,13 +395,13 @@ export const LabelOutline: React.FunctionComponent = () => {
263
395
  </Label>{' '}
264
396
  <Label variant="outline" color="gold" href="#outline" onClose={() => Function.prototype}>
265
397
  Gold link removable
266
- </Label>
398
+ </Label>{' '}
267
399
  <Label variant="outline" color="gold" onClick={() => logColor('gold')}>
268
400
  Gold clickable
269
401
  </Label>{' '}
270
402
  <Label variant="outline" color="gold" onClick={() => logColor('gold')} onClose={() => Function.prototype}>
271
403
  Gold clickable removable
272
- </Label>
404
+ </Label>{' '}
273
405
  <Label
274
406
  variant="outline"
275
407
  color="gold"
@@ -278,6 +410,26 @@ export const LabelOutline: React.FunctionComponent = () => {
278
410
  textMaxWidth="16ch"
279
411
  >
280
412
  Gold label with icon that overflows
413
+ </Label>{' '}
414
+ <Label
415
+ variant="outline"
416
+ color="gold"
417
+ isDisabled
418
+ icon={<InfoCircleIcon />}
419
+ href="#filled"
420
+ onClose={() => Function.prototype}
421
+ >
422
+ Gold link removable (disabled)
423
+ </Label>{' '}
424
+ <Label
425
+ variant="outline"
426
+ color="gold"
427
+ isDisabled
428
+ icon={<InfoCircleIcon />}
429
+ onClick={() => logColor('gold')}
430
+ onClose={() => Function.prototype}
431
+ >
432
+ Gold clickable removable (disabled)
281
433
  </Label>
282
434
  </React.Fragment>
283
435
  );
@@ -26,6 +26,6 @@ This demonstrates how the UI adapts to the writing mode of the page.
26
26
 
27
27
  ### Paginated table
28
28
 
29
- ```js file="./examples/PaginatedTable.jsx" isFullscreen
29
+ ```js file="./examples/PaginatedTable.tsx" isFullscreen
30
30
 
31
31
  ```
@@ -58,10 +58,22 @@ import EllipsisVIcon from '@patternfly/react-icons/dist/esm/icons/ellipsis-v-ico
58
58
  import HandPaperIcon from '@patternfly/react-icons/dist/esm/icons/hand-paper-icon';
59
59
  import imgAvatar from '@patternfly/react-core/src/components/assets/avatarImg.svg';
60
60
 
61
- export const PaginatedTableAction = () => {
62
- const [translation, setTranslation] = React.useState(translationsEn);
63
- const [page, setPage] = React.useState(1);
64
- const [perPage, setPerPage] = React.useState(10);
61
+ interface Row {
62
+ name: string;
63
+ status: string;
64
+ location: string;
65
+ lastModified: string;
66
+ url: string;
67
+ }
68
+
69
+ interface Translation {
70
+ [key: string]: any;
71
+ }
72
+
73
+ export const PaginatedTableAction: React.FunctionComponent = () => {
74
+ const [translation, setTranslation] = React.useState<Translation>(translationsEn);
75
+ const [page, setPage] = React.useState<number>(1);
76
+ const [perPage, setPerPage] = React.useState<number>(10);
65
77
 
66
78
  const columns = [
67
79
  translation.table.columns.servers,
@@ -71,13 +83,13 @@ export const PaginatedTableAction = () => {
71
83
  translation.table.columns.url
72
84
  ];
73
85
 
74
- const numRows = 25;
75
- const getRandomInteger = (min, max) => Math.floor(Math.random() * (max - min + 1)) + min;
86
+ const numRows: number = 25;
87
+ const getRandomInteger = (min: number, max: number) => Math.floor(Math.random() * (max - min + 1)) + min;
76
88
  const createRows = () => {
77
- const rows = [];
89
+ const rows: Row[] = [];
78
90
  for (let i = 0; i < numRows; i++) {
79
91
  const num = i + 1;
80
- const rowObj = {
92
+ const rowObj: Row = {
81
93
  name: translation.table.rows.node + num,
82
94
  status: [
83
95
  translation.table.rows.status.stopped,
@@ -110,14 +122,14 @@ export const PaginatedTableAction = () => {
110
122
 
111
123
  const rows = createRows();
112
124
  const [managedRows, setManagedRows] = React.useState(rows);
113
- const [paginatedRows, setPaginatedRows] = React.useState(rows.slice(0, 10));
114
- const [isDirRTL, setIsDirRTL] = React.useState(false);
125
+ const [paginatedRows, setPaginatedRows] = React.useState<Row[]>(rows.slice(0, 10));
126
+ const [isDirRTL, setIsDirRTL] = React.useState<boolean>(false);
115
127
 
116
- const capitalize = (input) => input[0].toUpperCase() + input.substring(1);
128
+ const capitalize = (input: string) => input[0].toUpperCase() + input.substring(1);
117
129
 
118
130
  const switchTranslation = () => {
119
131
  setIsDirRTL((prevIsDirRTL) => !prevIsDirRTL);
120
- setTranslation((prevTranslation) => (prevTranslation === translationsEn ? translationsHe : translationsEn));
132
+ setTranslation((prevTranslation: string) => (prevTranslation === translationsEn ? translationsHe : translationsEn));
121
133
  };
122
134
 
123
135
  React.useEffect(() => {
@@ -133,17 +145,29 @@ export const PaginatedTableAction = () => {
133
145
 
134
146
  // Pagination logic
135
147
 
136
- const handleSetPage = (_evt, newPage, _perPage, startIdx, endIdx) => {
148
+ const handleSetPage = (
149
+ _evt: React.MouseEvent | React.KeyboardEvent | MouseEvent,
150
+ newPage: number,
151
+ _perPage: number | undefined,
152
+ startIdx: number | undefined,
153
+ endIdx: number | undefined
154
+ ) => {
137
155
  setPaginatedRows(managedRows.slice(startIdx, endIdx));
138
156
  setPage(newPage);
139
157
  };
140
158
 
141
- const handlePerPageSelect = (_evt, newPerPage, _newPage, startIdx, endIdx) => {
159
+ const handlePerPageSelect = (
160
+ _evt: React.MouseEvent | React.KeyboardEvent | MouseEvent,
161
+ newPerPage: number,
162
+ _newPage: number,
163
+ startIdx: number | undefined,
164
+ endIdx: number | undefined
165
+ ) => {
142
166
  setPaginatedRows(managedRows.slice(startIdx, endIdx));
143
167
  setPerPage(newPerPage);
144
168
  };
145
169
 
146
- const renderPagination = (variant) => {
170
+ const renderPagination = (variant: PaginationVariant) => {
147
171
  const { pagination } = translation;
148
172
 
149
173
  return (
@@ -181,7 +205,7 @@ export const PaginatedTableAction = () => {
181
205
  }
182
206
  };
183
207
 
184
- const renderLabel = (labelText) => {
208
+ const renderLabel = (labelText: string) => {
185
209
  switch (labelText) {
186
210
  case 'Running':
187
211
  case 'רץ':
@@ -280,9 +304,9 @@ export const PaginatedTableAction = () => {
280
304
  </PageSidebar>
281
305
  );
282
306
 
283
- const [isDropdownOpen, setIsDropdownOpen] = React.useState(false);
284
- const [isKebabDropdownOpen, setIsKebabDropdownOpen] = React.useState(false);
285
- const [isFullKebabDropdownOpen, setIsFullKebabDropdownOpen] = React.useState(false);
307
+ const [isDropdownOpen, setIsDropdownOpen] = React.useState<boolean>(false);
308
+ const [isKebabDropdownOpen, setIsKebabDropdownOpen] = React.useState<boolean>(false);
309
+ const [isFullKebabDropdownOpen, setIsFullKebabDropdownOpen] = React.useState<boolean>(false);
286
310
 
287
311
  const kebabDropdownItems = (
288
312
  <>
@@ -434,15 +458,17 @@ export const PaginatedTableAction = () => {
434
458
  </Masthead>
435
459
  );
436
460
 
461
+ const breadcrumbItemsLength = Object.keys(breadcrumbItems).length;
462
+
437
463
  return (
438
464
  <React.Fragment>
439
465
  <Page sidebar={sidebar} header={masthead} isManagedSidebar>
440
466
  <PageBreadcrumb>
441
467
  <Breadcrumb aria-label={translation.breadcrumbs.ariaLabel || undefined}>
442
- {Object.keys(breadcrumbItems).map((key, idx, arr) => (
468
+ {Object.keys(breadcrumbItems).map((key: string, idx: number, arr: string[]) => (
443
469
  <BreadcrumbItem key={idx} isActive={arr.length - 1 === idx} to={`${breadcrumbItems[key].url}`}>
444
470
  {translation.breadcrumbs[key]}
445
- {breadcrumbItems.length}
471
+ {breadcrumbItemsLength}
446
472
  </BreadcrumbItem>
447
473
  ))}
448
474
  </Breadcrumb>
@@ -465,7 +491,7 @@ export const PaginatedTableAction = () => {
465
491
  </Tr>
466
492
  </Thead>
467
493
  <Tbody>
468
- {paginatedRows.map((row, rowIndex) => (
494
+ {paginatedRows.map((row: Row, rowIndex: number) => (
469
495
  <Tr key={rowIndex}>
470
496
  <>
471
497
  {Object.entries(row).map(([key, value]) => {