@iress-oss/ids-mcp-server 6.0.0-alpha.1-canary-20251204032753-fe18cab → 6.0.0-alpha.1-canary-20251204040305-3639454

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 (99) hide show
  1. package/generated/docs/components_components-alert-docs.md +1054 -0
  2. package/generated/docs/components_components-autocomplete-docs.md +3304 -0
  3. package/generated/docs/components_components-autocomplete-recipes-docs.md +98 -0
  4. package/generated/docs/components_components-badge-docs.md +312 -0
  5. package/generated/docs/components_components-button-docs.md +2339 -0
  6. package/generated/docs/components_components-buttongroup-docs.md +980 -0
  7. package/generated/docs/components_components-card-docs.md +1970 -0
  8. package/generated/docs/components_components-checkbox-docs.md +1083 -0
  9. package/generated/docs/components_components-checkboxgroup-docs.md +1597 -0
  10. package/generated/docs/components_components-checkboxgroup-recipes-docs.md +209 -0
  11. package/generated/docs/components_components-col-docs.md +755 -0
  12. package/generated/docs/components_components-container-docs.md +172 -0
  13. package/generated/docs/components_components-divider-docs.md +235 -0
  14. package/generated/docs/components_components-expander-docs.md +428 -0
  15. package/generated/docs/components_components-field-docs.md +3345 -0
  16. package/generated/docs/components_components-filter-docs.md +4091 -0
  17. package/generated/docs/components_components-hide-docs.md +450 -0
  18. package/generated/docs/components_components-icon-docs.md +1017 -0
  19. package/generated/docs/components_components-image-docs.md +168 -0
  20. package/generated/docs/components_components-inline-docs.md +1962 -0
  21. package/generated/docs/components_components-input-docs.md +1388 -0
  22. package/generated/docs/components_components-input-recipes-docs.md +349 -0
  23. package/generated/docs/components_components-inputcurrency-docs.md +636 -0
  24. package/generated/docs/components_components-inputcurrency-recipes-docs.md +208 -0
  25. package/generated/docs/components_components-introduction-docs.md +448 -0
  26. package/generated/docs/components_components-label-docs.md +229 -0
  27. package/generated/docs/components_components-link-docs.md +454 -0
  28. package/generated/docs/components_components-menu-docs.md +2219 -0
  29. package/generated/docs/components_components-menu-menuitem-docs.md +1455 -0
  30. package/generated/docs/components_components-modal-docs.md +2002 -0
  31. package/generated/docs/components_components-panel-docs.md +342 -0
  32. package/generated/docs/components_components-placeholder-docs.md +98 -0
  33. package/generated/docs/components_components-popover-docs.md +1631 -0
  34. package/generated/docs/components_components-popover-recipes-docs.md +537 -0
  35. package/generated/docs/components_components-progress-docs.md +128 -0
  36. package/generated/docs/components_components-provider-docs.md +123 -0
  37. package/generated/docs/components_components-radio-docs.md +499 -0
  38. package/generated/docs/components_components-radiogroup-docs.md +1573 -0
  39. package/generated/docs/components_components-readonly-docs.md +277 -0
  40. package/generated/docs/components_components-richselect-docs.md +6101 -0
  41. package/generated/docs/components_components-row-docs.md +2172 -0
  42. package/generated/docs/components_components-select-docs.md +1110 -0
  43. package/generated/docs/components_components-skeleton-docs.md +467 -0
  44. package/generated/docs/components_components-skeleton-recipes-docs.md +110 -0
  45. package/generated/docs/components_components-skiplink-docs.md +220 -0
  46. package/generated/docs/components_components-slideout-docs.md +1910 -0
  47. package/generated/docs/components_components-slider-docs.md +1284 -0
  48. package/generated/docs/components_components-spinner-docs.md +90 -0
  49. package/generated/docs/components_components-stack-docs.md +730 -0
  50. package/generated/docs/components_components-table-docs.md +4038 -0
  51. package/generated/docs/components_components-tabset-docs.md +955 -0
  52. package/generated/docs/components_components-tabset-tab-docs.md +342 -0
  53. package/generated/docs/components_components-tag-docs.md +410 -0
  54. package/generated/docs/components_components-text-docs.md +593 -0
  55. package/generated/docs/components_components-toaster-docs.md +451 -0
  56. package/generated/docs/components_components-toggle-docs.md +513 -0
  57. package/generated/docs/components_components-tooltip-docs.md +564 -0
  58. package/generated/docs/components_components-validationmessage-docs.md +608 -0
  59. package/generated/docs/components_contact-us-docs.md +9 -0
  60. package/generated/docs/components_foundations-accessibility-docs.md +33 -0
  61. package/generated/docs/components_foundations-consistency-docs.md +44 -0
  62. package/generated/docs/components_foundations-content-docs.md +18 -0
  63. package/generated/docs/components_foundations-introduction-docs.md +17 -0
  64. package/generated/docs/components_foundations-principles-docs.md +60 -0
  65. package/generated/docs/components_foundations-responsive-layout-docs.md +2692 -0
  66. package/generated/docs/components_foundations-user-experience-docs.md +53 -0
  67. package/generated/docs/components_foundations-visual-design-docs.md +39 -0
  68. package/generated/docs/components_foundations-z-index-stacking-docs.md +288 -0
  69. package/generated/docs/components_frequently-asked-questions-docs.md +44 -0
  70. package/generated/docs/components_get-started-develop-docs.md +47 -0
  71. package/generated/docs/components_get-started-using-storybook-docs.md +55 -0
  72. package/generated/docs/components_introduction-docs.md +85 -0
  73. package/generated/docs/components_patterns-form-docs.md +2469 -0
  74. package/generated/docs/components_patterns-form-recipes-docs.md +1597 -0
  75. package/generated/docs/components_patterns-introduction-docs.md +31 -0
  76. package/generated/docs/components_patterns-loading-docs.md +1908 -0
  77. package/generated/docs/components_patterns-shadow-docs.md +195 -0
  78. package/generated/docs/components_resources-code-katas-docs.md +25 -0
  79. package/generated/docs/components_resources-introduction-docs.md +28 -0
  80. package/generated/docs/components_resources-mcp-server-docs.md +23 -0
  81. package/generated/docs/components_resources-migration-guides-from-v4-to-v5-docs.md +142 -0
  82. package/generated/docs/components_styling-props-colour-docs.md +91 -0
  83. package/generated/docs/components_styling-props-elevation-docs.md +69 -0
  84. package/generated/docs/components_styling-props-radius-docs.md +63 -0
  85. package/generated/docs/components_styling-props-reference-docs.md +160 -0
  86. package/generated/docs/components_styling-props-screen-readers-docs.md +66 -0
  87. package/generated/docs/components_styling-props-sizing-docs.md +217 -0
  88. package/generated/docs/components_styling-props-spacing-docs.md +545 -0
  89. package/generated/docs/components_styling-props-typography-docs.md +66 -0
  90. package/generated/docs/components_versions-docs.md +14 -0
  91. package/generated/docs/guidelines.md +3083 -0
  92. package/generated/docs/introduction-docs.md +37 -0
  93. package/generated/docs/tokens_colour-docs.md +479 -0
  94. package/generated/docs/tokens_elevation-docs.md +39 -0
  95. package/generated/docs/tokens_introduction-docs.md +150 -0
  96. package/generated/docs/tokens_radius-docs.md +67 -0
  97. package/generated/docs/tokens_spacing-docs.md +87 -0
  98. package/generated/docs/tokens_typography-docs.md +305 -0
  99. package/package.json +2 -2
@@ -0,0 +1,2692 @@
1
+ Responsive layout
2
+ =================
3
+
4
+ The Iress Design System (IDS) is built with responsive design principles in mind. This means that our components are designed to adapt to different screen sizes and orientations, ensuring a consistent user experience across devices.
5
+
6
+ Breakpoints
7
+ -----------
8
+
9
+ * Implement mobile-first responsive design
10
+ * Use consistent breakpoint values across all components
11
+ * Provide appropriate component variants for different screen sizes
12
+ * Consider content priority and progressive disclosure on smaller screens
13
+
14
+ [](./iframe.html?id=foundations-responsive-layout--breakpoints)
15
+
16
+ ### Breakpoints supported by IDS
17
+
18
+ | Size | Screen Width | Media Query | Active Viewport | Example Viewport |
19
+ | --- | --- | --- | --- | --- |
20
+ | xs | 0 - 575px | (min-width: 0) and (max-width: 575px) | 100% | 360px width |
21
+ | sm | 576px - 767px | (min-width: 576px) and (max-width: 767px) | 100% | 767px width |
22
+ | md | 768px - 1023px | (min-width: 768px) and (max-width: 1023px) | 100% | 962px width |
23
+ | lg | 1024px - 1199px | (min-width: 1024px) and (max-width: 1199px) | 100% | 1180px width |
24
+ | xl | 1200px - 1499px | (min-width: 1200px) and (max-width: 1499px) | 1280px | 1366px width |
25
+ | xxl | 1500px and above | (min-width: 1500px) | 1280px | 1920px width |
26
+
27
+ ```
28
+
29
+ <IressTable
30
+ caption\={<IressText element\="h3" textAlign\="left"\>Breakpoints supported by IDS</IressText\>}
31
+ rows\={\[
32
+ {
33
+ activeViewport: '100%',
34
+ exampleViewport: '360px width',
35
+ mediaQuery: '(min-width: 0) and (max-width: 575px)',
36
+ screenWidth: '0 - 575px',
37
+ size: 'xs'
38
+ },
39
+ {
40
+ activeViewport: '100%',
41
+ exampleViewport: '767px width',
42
+ mediaQuery: '(min-width: 576px) and (max-width: 767px)',
43
+ screenWidth: '576px - 767px',
44
+ size: 'sm'
45
+ },
46
+ {
47
+ activeViewport: '100%',
48
+ exampleViewport: '962px width',
49
+ mediaQuery: '(min-width: 768px) and (max-width: 1023px)',
50
+ screenWidth: '768px - 1023px',
51
+ size: 'md'
52
+ },
53
+ {
54
+ activeViewport: '100%',
55
+ exampleViewport: '1180px width',
56
+ mediaQuery: '(min-width: 1024px) and (max-width: 1199px)',
57
+ screenWidth: '1024px - 1199px',
58
+ size: 'lg'
59
+ },
60
+ {
61
+ activeViewport: '1280px',
62
+ exampleViewport: '1366px width',
63
+ mediaQuery: '(min-width: 1200px) and (max-width: 1499px)',
64
+ screenWidth: '1200px - 1499px',
65
+ size: 'xl'
66
+ },
67
+ {
68
+ activeViewport: '1280px',
69
+ exampleViewport: '1920px width',
70
+ mediaQuery: '(min-width: 1500px)',
71
+ screenWidth: '1500px and above',
72
+ size: 'xxl'
73
+ }
74
+ \]}
75
+ />
76
+
77
+ ```
78
+
79
+ #### Props
80
+
81
+ | Name | Description | Default | Control |
82
+ | --- | --- | --- | --- |
83
+ | alternate |
84
+ If set to true, the table will have alternating row colors. This is useful for improving readability in tables with many rows.
85
+
86
+ boolean
87
+
88
+
89
+
90
+ |
91
+
92
+ false
93
+
94
+ | Set boolean |
95
+ | caption\* |
96
+
97
+ Caption that describes the data in the table, required for accessibility.
98
+
99
+ ReactNode
100
+
101
+
102
+
103
+ | \- |
104
+
105
+ RAW
106
+
107
+ caption :
108
+
109
+ {
110
+
111
+ * $$typeof : Symbol(react.transitional.element)
112
+ * type : ({ className, ...restProps }) => { \_s(); const Component = useMemo( () => styled(restProps.element ?? "div", text), \[restProps.element\] ); return /\* @\_\_PURE\_\_ \*/ jsxDEV( Component, { ...restProps, className: cx(className, GlobalCSSClass.Text) }, void 0, false, { fileName: "/home/runner/work/design-system/design-system/packages/components/src/components/Text/Text.tsx", lineNumber: 46, columnNumber: 5 }, this ); }
113
+ * key : null
114
+ * props :
115
+
116
+ {...} 3 keys
117
+
118
+ * \_owner : null
119
+ * \_store :
120
+
121
+ {...} 0 keys
122
+
123
+
124
+ }
125
+
126
+
127
+
128
+
129
+
130
+
131
+
132
+ |
133
+ | children |
134
+
135
+ Multiple table elements can be passed as children. Used to create a static table, or add a `<tfoot />` element to a `rows` based table.
136
+
137
+ ReactNode
138
+
139
+
140
+
141
+ | \- | Set object |
142
+ | columns |
143
+
144
+ A mapping of columns to be displayed in the table. If not provided, it will be automatically regenerated from the row data.
145
+
146
+ TableColumn<TRow, TVal>\[\]
147
+
148
+ | \- | Set object |
149
+ | compact |
150
+
151
+ Compact view of the table, used for tables with a lot of data.
152
+
153
+ boolean
154
+
155
+
156
+
157
+ |
158
+
159
+ false
160
+
161
+ | Set boolean |
162
+ | empty |
163
+
164
+ Content to be show when there is no rowData (columns must also be provided).
165
+
166
+ ReactNode
167
+
168
+
169
+
170
+ | \- | Set object |
171
+ | hiddenCaption |
172
+
173
+ When set to true, the table caption will be visually hidden.
174
+
175
+ boolean
176
+
177
+
178
+
179
+ | \- | Set boolean |
180
+ | hiddenHeader |
181
+
182
+ When set to true, the table header (`<thead></thead>`) will be not be rendered. Only use with very simple tables.
183
+
184
+ boolean
185
+
186
+
187
+
188
+ | \- | Set boolean |
189
+ | hover |
190
+
191
+ When set to true, hovering over a row will trigger a UI change.
192
+
193
+ boolean
194
+
195
+
196
+
197
+ | \- | Set boolean |
198
+ | removeRowBorders |
199
+
200
+ If set to true, the table will not have borders between rows. This is useful for simpler tables where the row borders are not needed.
201
+
202
+ boolean
203
+
204
+
205
+
206
+ |
207
+
208
+ false
209
+
210
+ | Set boolean |
211
+ | rowProps |
212
+
213
+ Add additional props to the row element. Can be a props map or a function that returns an props map. The function is called with the row data.
214
+
215
+ TableRowsProps\['rowProps'\]
216
+
217
+ | \- | Set object |
218
+ | rows |
219
+
220
+ Each object in the array contains the data for a row.
221
+
222
+ TRow\[\]
223
+
224
+ | \[\] |
225
+
226
+ RAW
227
+
228
+ * rows :
229
+
230
+ \[
231
+
232
+ * 0 :
233
+
234
+ {...} 5 keys
235
+
236
+ * 1 :
237
+
238
+ {...} 5 keys
239
+
240
+ * 2 :
241
+
242
+ {...} 5 keys
243
+
244
+ * 3 :
245
+
246
+ {...} 5 keys
247
+
248
+ * 4 :
249
+
250
+ {...} 5 keys
251
+
252
+ * 5 :
253
+
254
+ {...} 5 keys
255
+
256
+
257
+ \]
258
+
259
+
260
+
261
+
262
+ |
263
+ | scope |
264
+
265
+ Defaults to 'row' - the first cell in the row is a `<th>`, otherwise it's a `<td>`.
266
+
267
+ union
268
+
269
+
270
+
271
+ | \- |
272
+
273
+ rowcol
274
+
275
+ |
276
+
277
+ ### Extra-small screens (`xs`)
278
+
279
+ [](./iframe.html?id=foundations-responsive-layout--xs)
280
+
281
+ **0 - 575px**
282
+ The mobile breakpoint is used for small mobile devices.
283
+
284
+ **Min screen width**
285
+
286
+ 0px
287
+
288
+ **Max screen width**
289
+
290
+ 575px
291
+
292
+ **Example viewport**
293
+
294
+ 100%
295
+
296
+ **Margin**
297
+
298
+ 16px
299
+
300
+ * * *
301
+
302
+ Grid example
303
+ ------------
304
+
305
+ To ensure the best usability and accessibility, please do not use grids with more than 4 columns maximum on extra small screens. For developers, this means the minimum span on mobile devices is 3.
306
+
307
+ You are currently viewing the **xl** breakpoint (1200px - 1499px). Resize your screen to view different breakpoints.
308
+
309
+ ```
310
+
311
+ <IressStack gap\="lg"\>
312
+ <IressInline
313
+ gap\="md"
314
+ verticalAlign\="bottom"
315
+ \>
316
+ <IressStack
317
+ gap\="xs"
318
+ maxWidth\="input.16"
319
+ \>
320
+ <React.Suspense\>
321
+ <React.Lazy />
322
+ </React.Suspense\>
323
+ <IressText\>
324
+ <strong\>
325
+ 0 - 575px </strong\>
326
+ <br />
327
+ The mobile breakpoint is used for small mobile devices. </IressText\>
328
+ </IressStack\>
329
+ <IressStack gap\="xs"\>
330
+ <IressInline gap\="sm"\>
331
+ <IressText element\="strong"\>
332
+ Min screen width </IressText\>
333
+ <IressText\>
334
+ 0px </IressText\>
335
+ </IressInline\>
336
+ <IressInline gap\="sm"\>
337
+ <IressText element\="strong"\>
338
+ Max screen width </IressText\>
339
+ <IressText\>
340
+ 575px </IressText\>
341
+ </IressInline\>
342
+ <IressInline gap\="sm"\>
343
+ <IressText element\="strong"\>
344
+ Example viewport </IressText\>
345
+ <IressText\>
346
+ 100% </IressText\>
347
+ </IressInline\>
348
+ <IressInline gap\="sm"\>
349
+ <IressText element\="strong"\>
350
+ Margin </IressText\>
351
+ <IressText\>
352
+ 16px </IressText\>
353
+ </IressInline\>
354
+ </IressStack\>
355
+ </IressInline\>
356
+ <IressDivider />
357
+ <IressText\>
358
+ <h2\>
359
+ Grid example </h2\>
360
+ <p\>
361
+ To ensure the best usability and accessibility, please do not use grids with more than 4 columns maximum on extra small screens. For developers, this means the minimum span on mobile devices is 3. </p\>
362
+ <IressPanel bg\="alt"\>
363
+ <kn renderLabel\="viewing" />
364
+ </IressPanel\>
365
+ </IressText\>
366
+ <IressContainer
367
+ style\={{
368
+ maxWidth: '360px'
369
+ }}
370
+ \>
371
+ <IressRow gutter\="md"\>
372
+ <IressCol span\={12}\>
373
+ <IressPlaceholder height\="5em" />
374
+ </IressCol\>
375
+ <IressCol span\={6}\>
376
+ <IressPlaceholder height\="5em" />
377
+ </IressCol\>
378
+ <IressCol span\={6}\>
379
+ <IressPlaceholder height\="5em" />
380
+ </IressCol\>
381
+ <IressCol span\={3}\>
382
+ <IressPlaceholder height\="5em" />
383
+ </IressCol\>
384
+ <IressCol span\={3}\>
385
+ <IressPlaceholder height\="5em" />
386
+ </IressCol\>
387
+ <IressCol span\={3}\>
388
+ <IressPlaceholder height\="5em" />
389
+ </IressCol\>
390
+ <IressCol span\={3}\>
391
+ <IressPlaceholder height\="5em" />
392
+ </IressCol\>
393
+ </IressRow\>
394
+ </IressContainer\>
395
+ </IressStack\>
396
+
397
+ ```
398
+
399
+ #### Props
400
+
401
+ | Name | Description | Default | Control |
402
+ | --- | --- | --- | --- |
403
+ | alternate |
404
+ If set to true, the table will have alternating row colors. This is useful for improving readability in tables with many rows.
405
+
406
+ boolean
407
+
408
+
409
+
410
+ |
411
+
412
+ false
413
+
414
+ | Set boolean |
415
+ | caption\* |
416
+
417
+ Caption that describes the data in the table, required for accessibility.
418
+
419
+ ReactNode
420
+
421
+
422
+
423
+ | \- |
424
+
425
+ "0 - 575px"
426
+
427
+ |
428
+ | children |
429
+
430
+ Multiple table elements can be passed as children. Used to create a static table, or add a `<tfoot />` element to a `rows` based table.
431
+
432
+ ReactNode
433
+
434
+
435
+
436
+ | \- | Set object |
437
+ | columns |
438
+
439
+ A mapping of columns to be displayed in the table. If not provided, it will be automatically regenerated from the row data.
440
+
441
+ TableColumn<TRow, TVal>\[\]
442
+
443
+ | \- | Set object |
444
+ | compact |
445
+
446
+ Compact view of the table, used for tables with a lot of data.
447
+
448
+ boolean
449
+
450
+
451
+
452
+ |
453
+
454
+ false
455
+
456
+ | Set boolean |
457
+ | empty |
458
+
459
+ Content to be show when there is no rowData (columns must also be provided).
460
+
461
+ ReactNode
462
+
463
+
464
+
465
+ | \- | Set object |
466
+ | hiddenCaption |
467
+
468
+ When set to true, the table caption will be visually hidden.
469
+
470
+ boolean
471
+
472
+
473
+
474
+ | \- | Set boolean |
475
+ | hiddenHeader |
476
+
477
+ When set to true, the table header (`<thead></thead>`) will be not be rendered. Only use with very simple tables.
478
+
479
+ boolean
480
+
481
+
482
+
483
+ | \- | Set boolean |
484
+ | hover |
485
+
486
+ When set to true, hovering over a row will trigger a UI change.
487
+
488
+ boolean
489
+
490
+
491
+
492
+ | \- | Set boolean |
493
+ | removeRowBorders |
494
+
495
+ If set to true, the table will not have borders between rows. This is useful for simpler tables where the row borders are not needed.
496
+
497
+ boolean
498
+
499
+
500
+
501
+ |
502
+
503
+ false
504
+
505
+ | Set boolean |
506
+ | rowProps |
507
+
508
+ Add additional props to the row element. Can be a props map or a function that returns an props map. The function is called with the row data.
509
+
510
+ TableRowsProps\['rowProps'\]
511
+
512
+ | \- | Set object |
513
+ | rows |
514
+
515
+ Each object in the array contains the data for a row.
516
+
517
+ TRow\[\]
518
+
519
+ | \[\] | Set object |
520
+ | scope |
521
+
522
+ Defaults to 'row' - the first cell in the row is a `<th>`, otherwise it's a `<td>`.
523
+
524
+ union
525
+
526
+
527
+
528
+ | \- |
529
+
530
+ rowcol
531
+
532
+ |
533
+
534
+ ### Small screens (`sm`)
535
+
536
+ [](./iframe.html?id=foundations-responsive-layout--sm)
537
+
538
+ **576px - 767px**
539
+ Small breakpoint, for larger mobile devices and tablet portrait.
540
+
541
+ **Min screen width**
542
+
543
+ 576px
544
+
545
+ **Max screen width**
546
+
547
+ 767px
548
+
549
+ **Example viewport**
550
+
551
+ 100%
552
+
553
+ **Margin**
554
+
555
+ 16px
556
+
557
+ * * *
558
+
559
+ Grid example
560
+ ------------
561
+
562
+ To ensure the best usability and accessibility, please do not use grids with more than 4 columns maximum on small screens. For developers, this means the minimum span on mobile devices is 3.
563
+
564
+ You are currently viewing the **xl** breakpoint (1200px - 1499px). Resize your screen to view different breakpoints.
565
+
566
+ ```
567
+
568
+ <IressStack gap\="lg"\>
569
+ <IressInline
570
+ gap\="md"
571
+ verticalAlign\="bottom"
572
+ \>
573
+ <IressStack
574
+ gap\="xs"
575
+ maxWidth\="input.16"
576
+ \>
577
+ <React.Suspense\>
578
+ <React.Lazy />
579
+ </React.Suspense\>
580
+ <IressText\>
581
+ <strong\>
582
+ 576px - 767px </strong\>
583
+ <br />
584
+ Small breakpoint, for larger mobile devices and tablet portrait. </IressText\>
585
+ </IressStack\>
586
+ <IressStack gap\="xs"\>
587
+ <IressInline gap\="sm"\>
588
+ <IressText element\="strong"\>
589
+ Min screen width </IressText\>
590
+ <IressText\>
591
+ 576px </IressText\>
592
+ </IressInline\>
593
+ <IressInline gap\="sm"\>
594
+ <IressText element\="strong"\>
595
+ Max screen width </IressText\>
596
+ <IressText\>
597
+ 767px </IressText\>
598
+ </IressInline\>
599
+ <IressInline gap\="sm"\>
600
+ <IressText element\="strong"\>
601
+ Example viewport </IressText\>
602
+ <IressText\>
603
+ 100% </IressText\>
604
+ </IressInline\>
605
+ <IressInline gap\="sm"\>
606
+ <IressText element\="strong"\>
607
+ Margin </IressText\>
608
+ <IressText\>
609
+ 16px </IressText\>
610
+ </IressInline\>
611
+ </IressStack\>
612
+ </IressInline\>
613
+ <IressDivider />
614
+ <IressText\>
615
+ <h2\>
616
+ Grid example </h2\>
617
+ <p\>
618
+ To ensure the best usability and accessibility, please do not use grids with more than 4 columns maximum on small screens. For developers, this means the minimum span on mobile devices is 3. </p\>
619
+ <IressPanel bg\="alt"\>
620
+ <kn renderLabel\="viewing" />
621
+ </IressPanel\>
622
+ </IressText\>
623
+ <IressContainer
624
+ style\={{
625
+ maxWidth: '767px'
626
+ }}
627
+ \>
628
+ <IressRow gutter\="md"\>
629
+ <IressCol
630
+ span\={{
631
+ base: 12,
632
+ sm: 12
633
+ }}
634
+ \>
635
+ <IressPlaceholder height\="5em" />
636
+ </IressCol\>
637
+ <IressCol
638
+ span\={{
639
+ base: 12,
640
+ sm: 6
641
+ }}
642
+ \>
643
+ <IressPlaceholder height\="5em" />
644
+ </IressCol\>
645
+ <IressCol
646
+ span\={{
647
+ base: 12,
648
+ sm: 6
649
+ }}
650
+ \>
651
+ <IressPlaceholder height\="5em" />
652
+ </IressCol\>
653
+ <IressCol
654
+ span\={{
655
+ base: 12,
656
+ sm: 3
657
+ }}
658
+ \>
659
+ <IressPlaceholder height\="5em" />
660
+ </IressCol\>
661
+ <IressCol
662
+ span\={{
663
+ base: 12,
664
+ sm: 3
665
+ }}
666
+ \>
667
+ <IressPlaceholder height\="5em" />
668
+ </IressCol\>
669
+ <IressCol
670
+ span\={{
671
+ base: 12,
672
+ sm: 3
673
+ }}
674
+ \>
675
+ <IressPlaceholder height\="5em" />
676
+ </IressCol\>
677
+ <IressCol
678
+ span\={{
679
+ base: 12,
680
+ sm: 3
681
+ }}
682
+ \>
683
+ <IressPlaceholder height\="5em" />
684
+ </IressCol\>
685
+ </IressRow\>
686
+ </IressContainer\>
687
+ </IressStack\>
688
+
689
+ ```
690
+
691
+ #### Props
692
+
693
+ | Name | Description | Default | Control |
694
+ | --- | --- | --- | --- |
695
+ | alternate |
696
+ If set to true, the table will have alternating row colors. This is useful for improving readability in tables with many rows.
697
+
698
+ boolean
699
+
700
+
701
+
702
+ |
703
+
704
+ false
705
+
706
+ | Set boolean |
707
+ | caption\* |
708
+
709
+ Caption that describes the data in the table, required for accessibility.
710
+
711
+ ReactNode
712
+
713
+
714
+
715
+ | \- |
716
+
717
+ "576px - 767px"
718
+
719
+ |
720
+ | children |
721
+
722
+ Multiple table elements can be passed as children. Used to create a static table, or add a `<tfoot />` element to a `rows` based table.
723
+
724
+ ReactNode
725
+
726
+
727
+
728
+ | \- | Set object |
729
+ | columns |
730
+
731
+ A mapping of columns to be displayed in the table. If not provided, it will be automatically regenerated from the row data.
732
+
733
+ TableColumn<TRow, TVal>\[\]
734
+
735
+ | \- | Set object |
736
+ | compact |
737
+
738
+ Compact view of the table, used for tables with a lot of data.
739
+
740
+ boolean
741
+
742
+
743
+
744
+ |
745
+
746
+ false
747
+
748
+ | Set boolean |
749
+ | empty |
750
+
751
+ Content to be show when there is no rowData (columns must also be provided).
752
+
753
+ ReactNode
754
+
755
+
756
+
757
+ | \- | Set object |
758
+ | hiddenCaption |
759
+
760
+ When set to true, the table caption will be visually hidden.
761
+
762
+ boolean
763
+
764
+
765
+
766
+ | \- | Set boolean |
767
+ | hiddenHeader |
768
+
769
+ When set to true, the table header (`<thead></thead>`) will be not be rendered. Only use with very simple tables.
770
+
771
+ boolean
772
+
773
+
774
+
775
+ | \- | Set boolean |
776
+ | hover |
777
+
778
+ When set to true, hovering over a row will trigger a UI change.
779
+
780
+ boolean
781
+
782
+
783
+
784
+ | \- | Set boolean |
785
+ | removeRowBorders |
786
+
787
+ If set to true, the table will not have borders between rows. This is useful for simpler tables where the row borders are not needed.
788
+
789
+ boolean
790
+
791
+
792
+
793
+ |
794
+
795
+ false
796
+
797
+ | Set boolean |
798
+ | rowProps |
799
+
800
+ Add additional props to the row element. Can be a props map or a function that returns an props map. The function is called with the row data.
801
+
802
+ TableRowsProps\['rowProps'\]
803
+
804
+ | \- | Set object |
805
+ | rows |
806
+
807
+ Each object in the array contains the data for a row.
808
+
809
+ TRow\[\]
810
+
811
+ | \[\] | Set object |
812
+ | scope |
813
+
814
+ Defaults to 'row' - the first cell in the row is a `<th>`, otherwise it's a `<td>`.
815
+
816
+ union
817
+
818
+
819
+
820
+ | \- |
821
+
822
+ rowcol
823
+
824
+ |
825
+
826
+ ### Medium screens (`md`)
827
+
828
+ [](./iframe.html?id=foundations-responsive-layout--md)
829
+
830
+ **768px - 1023px**
831
+ Medium breakpoint for tablets and small laptops such as Chromebooks.
832
+
833
+ **Min screen width**
834
+
835
+ 768px
836
+
837
+ **Max screen width**
838
+
839
+ 1023px
840
+
841
+ **Example viewport**
842
+
843
+ 100%
844
+
845
+ **Margin**
846
+
847
+ 16px
848
+
849
+ * * *
850
+
851
+ Grid example
852
+ ------------
853
+
854
+ To ensure the best usability and accessibility, please do not use grids with more than 6 columns maximum on medium screens. For developers, this means the minimum span on medium screems is 2.
855
+
856
+ You are currently viewing the **xl** breakpoint (1200px - 1499px). Resize your screen to view different breakpoints.
857
+
858
+ ```
859
+
860
+ <IressStack gap\="lg"\>
861
+ <IressInline
862
+ gap\="md"
863
+ verticalAlign\="bottom"
864
+ \>
865
+ <IressStack
866
+ gap\="xs"
867
+ maxWidth\="input.16"
868
+ \>
869
+ <React.Suspense\>
870
+ <React.Lazy />
871
+ </React.Suspense\>
872
+ <IressText\>
873
+ <strong\>
874
+ 768px - 1023px </strong\>
875
+ <br />
876
+ Medium breakpoint for tablets and small laptops such as Chromebooks. </IressText\>
877
+ </IressStack\>
878
+ <IressStack gap\="xs"\>
879
+ <IressInline gap\="sm"\>
880
+ <IressText element\="strong"\>
881
+ Min screen width </IressText\>
882
+ <IressText\>
883
+ 768px </IressText\>
884
+ </IressInline\>
885
+ <IressInline gap\="sm"\>
886
+ <IressText element\="strong"\>
887
+ Max screen width </IressText\>
888
+ <IressText\>
889
+ 1023px </IressText\>
890
+ </IressInline\>
891
+ <IressInline gap\="sm"\>
892
+ <IressText element\="strong"\>
893
+ Example viewport </IressText\>
894
+ <IressText\>
895
+ 100% </IressText\>
896
+ </IressInline\>
897
+ <IressInline gap\="sm"\>
898
+ <IressText element\="strong"\>
899
+ Margin </IressText\>
900
+ <IressText\>
901
+ 16px </IressText\>
902
+ </IressInline\>
903
+ </IressStack\>
904
+ </IressInline\>
905
+ <IressDivider />
906
+ <IressText\>
907
+ <h2\>
908
+ Grid example </h2\>
909
+ <p\>
910
+ To ensure the best usability and accessibility, please do not use grids with more than 6 columns maximum on medium screens. For developers, this means the minimum span on medium screems is 2. </p\>
911
+ <IressPanel bg\="alt"\>
912
+ <kn renderLabel\="viewing" />
913
+ </IressPanel\>
914
+ </IressText\>
915
+ <IressContainer
916
+ style\={{
917
+ maxWidth: '962px'
918
+ }}
919
+ \>
920
+ <IressRow gutter\="md"\>
921
+ <IressCol
922
+ span\={{
923
+ base: 12,
924
+ md: 12
925
+ }}
926
+ \>
927
+ <IressPlaceholder height\="5em" />
928
+ </IressCol\>
929
+ <IressCol
930
+ span\={{
931
+ base: 12,
932
+ md: 6
933
+ }}
934
+ \>
935
+ <IressPlaceholder height\="5em" />
936
+ </IressCol\>
937
+ <IressCol
938
+ span\={{
939
+ base: 12,
940
+ md: 6
941
+ }}
942
+ \>
943
+ <IressPlaceholder height\="5em" />
944
+ </IressCol\>
945
+ <IressCol
946
+ span\={{
947
+ base: 12,
948
+ md: 4
949
+ }}
950
+ \>
951
+ <IressPlaceholder height\="5em" />
952
+ </IressCol\>
953
+ <IressCol
954
+ span\={{
955
+ base: 12,
956
+ md: 4
957
+ }}
958
+ \>
959
+ <IressPlaceholder height\="5em" />
960
+ </IressCol\>
961
+ <IressCol
962
+ span\={{
963
+ base: 12,
964
+ md: 4
965
+ }}
966
+ \>
967
+ <IressPlaceholder height\="5em" />
968
+ </IressCol\>
969
+ <IressCol
970
+ span\={{
971
+ base: 12,
972
+ md: 2
973
+ }}
974
+ \>
975
+ <IressPlaceholder height\="5em" />
976
+ </IressCol\>
977
+ <IressCol
978
+ span\={{
979
+ base: 12,
980
+ md: 2
981
+ }}
982
+ \>
983
+ <IressPlaceholder height\="5em" />
984
+ </IressCol\>
985
+ <IressCol
986
+ span\={{
987
+ base: 12,
988
+ md: 2
989
+ }}
990
+ \>
991
+ <IressPlaceholder height\="5em" />
992
+ </IressCol\>
993
+ <IressCol
994
+ span\={{
995
+ base: 12,
996
+ md: 2
997
+ }}
998
+ \>
999
+ <IressPlaceholder height\="5em" />
1000
+ </IressCol\>
1001
+ <IressCol
1002
+ span\={{
1003
+ base: 12,
1004
+ md: 2
1005
+ }}
1006
+ \>
1007
+ <IressPlaceholder height\="5em" />
1008
+ </IressCol\>
1009
+ <IressCol
1010
+ span\={{
1011
+ base: 12,
1012
+ md: 2
1013
+ }}
1014
+ \>
1015
+ <IressPlaceholder height\="5em" />
1016
+ </IressCol\>
1017
+ </IressRow\>
1018
+ </IressContainer\>
1019
+ </IressStack\>
1020
+
1021
+ ```
1022
+
1023
+ #### Props
1024
+
1025
+ | Name | Description | Default | Control |
1026
+ | --- | --- | --- | --- |
1027
+ | alternate |
1028
+ If set to true, the table will have alternating row colors. This is useful for improving readability in tables with many rows.
1029
+
1030
+ boolean
1031
+
1032
+
1033
+
1034
+ |
1035
+
1036
+ false
1037
+
1038
+ | Set boolean |
1039
+ | caption\* |
1040
+
1041
+ Caption that describes the data in the table, required for accessibility.
1042
+
1043
+ ReactNode
1044
+
1045
+
1046
+
1047
+ | \- |
1048
+
1049
+ "768px - 1023px"
1050
+
1051
+ |
1052
+ | children |
1053
+
1054
+ Multiple table elements can be passed as children. Used to create a static table, or add a `<tfoot />` element to a `rows` based table.
1055
+
1056
+ ReactNode
1057
+
1058
+
1059
+
1060
+ | \- | Set object |
1061
+ | columns |
1062
+
1063
+ A mapping of columns to be displayed in the table. If not provided, it will be automatically regenerated from the row data.
1064
+
1065
+ TableColumn<TRow, TVal>\[\]
1066
+
1067
+ | \- | Set object |
1068
+ | compact |
1069
+
1070
+ Compact view of the table, used for tables with a lot of data.
1071
+
1072
+ boolean
1073
+
1074
+
1075
+
1076
+ |
1077
+
1078
+ false
1079
+
1080
+ | Set boolean |
1081
+ | empty |
1082
+
1083
+ Content to be show when there is no rowData (columns must also be provided).
1084
+
1085
+ ReactNode
1086
+
1087
+
1088
+
1089
+ | \- | Set object |
1090
+ | hiddenCaption |
1091
+
1092
+ When set to true, the table caption will be visually hidden.
1093
+
1094
+ boolean
1095
+
1096
+
1097
+
1098
+ | \- | Set boolean |
1099
+ | hiddenHeader |
1100
+
1101
+ When set to true, the table header (`<thead></thead>`) will be not be rendered. Only use with very simple tables.
1102
+
1103
+ boolean
1104
+
1105
+
1106
+
1107
+ | \- | Set boolean |
1108
+ | hover |
1109
+
1110
+ When set to true, hovering over a row will trigger a UI change.
1111
+
1112
+ boolean
1113
+
1114
+
1115
+
1116
+ | \- | Set boolean |
1117
+ | removeRowBorders |
1118
+
1119
+ If set to true, the table will not have borders between rows. This is useful for simpler tables where the row borders are not needed.
1120
+
1121
+ boolean
1122
+
1123
+
1124
+
1125
+ |
1126
+
1127
+ false
1128
+
1129
+ | Set boolean |
1130
+ | rowProps |
1131
+
1132
+ Add additional props to the row element. Can be a props map or a function that returns an props map. The function is called with the row data.
1133
+
1134
+ TableRowsProps\['rowProps'\]
1135
+
1136
+ | \- | Set object |
1137
+ | rows |
1138
+
1139
+ Each object in the array contains the data for a row.
1140
+
1141
+ TRow\[\]
1142
+
1143
+ | \[\] | Set object |
1144
+ | scope |
1145
+
1146
+ Defaults to 'row' - the first cell in the row is a `<th>`, otherwise it's a `<td>`.
1147
+
1148
+ union
1149
+
1150
+
1151
+
1152
+ | \- |
1153
+
1154
+ rowcol
1155
+
1156
+ |
1157
+
1158
+ ### Large screens (`lg`)
1159
+
1160
+ [](./iframe.html?id=foundations-responsive-layout--lg)
1161
+
1162
+ **1024px - 1199px**
1163
+ Large breakpoint for desktops and laptops, such as 13inch MacBooks.
1164
+
1165
+ **Min screen width**
1166
+
1167
+ 1024px
1168
+
1169
+ **Max screen width**
1170
+
1171
+ 1199px
1172
+
1173
+ **Example viewport**
1174
+
1175
+ 100%
1176
+
1177
+ **Margin**
1178
+
1179
+ 16px
1180
+
1181
+ * * *
1182
+
1183
+ Grid example
1184
+ ------------
1185
+
1186
+ From large screens onwards, all 12 columns of the grid can be used. For developers, this means the minimum span on large screens is 1.
1187
+
1188
+ You are currently viewing the **xl** breakpoint (1200px - 1499px). Resize your screen to view different breakpoints.
1189
+
1190
+ ```
1191
+
1192
+ <IressStack gap\="lg"\>
1193
+ <IressInline
1194
+ gap\="md"
1195
+ verticalAlign\="bottom"
1196
+ \>
1197
+ <IressStack
1198
+ gap\="xs"
1199
+ maxWidth\="input.16"
1200
+ \>
1201
+ <React.Suspense\>
1202
+ <React.Lazy />
1203
+ </React.Suspense\>
1204
+ <IressText\>
1205
+ <strong\>
1206
+ 1024px - 1199px </strong\>
1207
+ <br />
1208
+ Large breakpoint for desktops and laptops, such as 13inch MacBooks. </IressText\>
1209
+ </IressStack\>
1210
+ <IressStack gap\="xs"\>
1211
+ <IressInline gap\="sm"\>
1212
+ <IressText element\="strong"\>
1213
+ Min screen width </IressText\>
1214
+ <IressText\>
1215
+ 1024px </IressText\>
1216
+ </IressInline\>
1217
+ <IressInline gap\="sm"\>
1218
+ <IressText element\="strong"\>
1219
+ Max screen width </IressText\>
1220
+ <IressText\>
1221
+ 1199px </IressText\>
1222
+ </IressInline\>
1223
+ <IressInline gap\="sm"\>
1224
+ <IressText element\="strong"\>
1225
+ Example viewport </IressText\>
1226
+ <IressText\>
1227
+ 100% </IressText\>
1228
+ </IressInline\>
1229
+ <IressInline gap\="sm"\>
1230
+ <IressText element\="strong"\>
1231
+ Margin </IressText\>
1232
+ <IressText\>
1233
+ 16px </IressText\>
1234
+ </IressInline\>
1235
+ </IressStack\>
1236
+ </IressInline\>
1237
+ <IressDivider />
1238
+ <IressText\>
1239
+ <h2\>
1240
+ Grid example </h2\>
1241
+ <p\>
1242
+ From large screens onwards, all 12 columns of the grid can be used. For developers, this means the minimum span on large screens is 1. </p\>
1243
+ <IressPanel bg\="alt"\>
1244
+ <kn renderLabel\="viewing" />
1245
+ </IressPanel\>
1246
+ </IressText\>
1247
+ <IressContainer
1248
+ style\={{
1249
+ maxWidth: '1180px'
1250
+ }}
1251
+ \>
1252
+ <IressRow gutter\="md"\>
1253
+ <IressCol
1254
+ span\={{
1255
+ base: 12,
1256
+ lg: 12
1257
+ }}
1258
+ \>
1259
+ <IressPlaceholder height\="5em" />
1260
+ </IressCol\>
1261
+ <IressCol
1262
+ span\={{
1263
+ base: 12,
1264
+ lg: 6
1265
+ }}
1266
+ \>
1267
+ <IressPlaceholder height\="5em" />
1268
+ </IressCol\>
1269
+ <IressCol
1270
+ span\={{
1271
+ base: 12,
1272
+ lg: 6
1273
+ }}
1274
+ \>
1275
+ <IressPlaceholder height\="5em" />
1276
+ </IressCol\>
1277
+ <IressCol
1278
+ span\={{
1279
+ base: 12,
1280
+ lg: 4
1281
+ }}
1282
+ \>
1283
+ <IressPlaceholder height\="5em" />
1284
+ </IressCol\>
1285
+ <IressCol
1286
+ span\={{
1287
+ base: 12,
1288
+ lg: 4
1289
+ }}
1290
+ \>
1291
+ <IressPlaceholder height\="5em" />
1292
+ </IressCol\>
1293
+ <IressCol
1294
+ span\={{
1295
+ base: 12,
1296
+ lg: 4
1297
+ }}
1298
+ \>
1299
+ <IressPlaceholder height\="5em" />
1300
+ </IressCol\>
1301
+ <IressCol
1302
+ span\={{
1303
+ base: 12,
1304
+ lg: 2
1305
+ }}
1306
+ \>
1307
+ <IressPlaceholder height\="5em" />
1308
+ </IressCol\>
1309
+ <IressCol
1310
+ span\={{
1311
+ base: 12,
1312
+ lg: 2
1313
+ }}
1314
+ \>
1315
+ <IressPlaceholder height\="5em" />
1316
+ </IressCol\>
1317
+ <IressCol
1318
+ span\={{
1319
+ base: 12,
1320
+ lg: 2
1321
+ }}
1322
+ \>
1323
+ <IressPlaceholder height\="5em" />
1324
+ </IressCol\>
1325
+ <IressCol
1326
+ span\={{
1327
+ base: 12,
1328
+ lg: 2
1329
+ }}
1330
+ \>
1331
+ <IressPlaceholder height\="5em" />
1332
+ </IressCol\>
1333
+ <IressCol
1334
+ span\={{
1335
+ base: 12,
1336
+ lg: 2
1337
+ }}
1338
+ \>
1339
+ <IressPlaceholder height\="5em" />
1340
+ </IressCol\>
1341
+ <IressCol
1342
+ span\={{
1343
+ base: 12,
1344
+ lg: 2
1345
+ }}
1346
+ \>
1347
+ <IressPlaceholder height\="5em" />
1348
+ </IressCol\>
1349
+ <IressCol
1350
+ span\={{
1351
+ base: 12,
1352
+ lg: 1
1353
+ }}
1354
+ \>
1355
+ <IressPlaceholder height\="5em" />
1356
+ </IressCol\>
1357
+ <IressCol
1358
+ span\={{
1359
+ base: 12,
1360
+ lg: 1
1361
+ }}
1362
+ \>
1363
+ <IressPlaceholder height\="5em" />
1364
+ </IressCol\>
1365
+ <IressCol
1366
+ span\={{
1367
+ base: 12,
1368
+ lg: 1
1369
+ }}
1370
+ \>
1371
+ <IressPlaceholder height\="5em" />
1372
+ </IressCol\>
1373
+ <IressCol
1374
+ span\={{
1375
+ base: 12,
1376
+ lg: 1
1377
+ }}
1378
+ \>
1379
+ <IressPlaceholder height\="5em" />
1380
+ </IressCol\>
1381
+ <IressCol
1382
+ span\={{
1383
+ base: 12,
1384
+ lg: 1
1385
+ }}
1386
+ \>
1387
+ <IressPlaceholder height\="5em" />
1388
+ </IressCol\>
1389
+ <IressCol
1390
+ span\={{
1391
+ base: 12,
1392
+ lg: 1
1393
+ }}
1394
+ \>
1395
+ <IressPlaceholder height\="5em" />
1396
+ </IressCol\>
1397
+ <IressCol
1398
+ span\={{
1399
+ base: 12,
1400
+ lg: 1
1401
+ }}
1402
+ \>
1403
+ <IressPlaceholder height\="5em" />
1404
+ </IressCol\>
1405
+ <IressCol
1406
+ span\={{
1407
+ base: 12,
1408
+ lg: 1
1409
+ }}
1410
+ \>
1411
+ <IressPlaceholder height\="5em" />
1412
+ </IressCol\>
1413
+ <IressCol
1414
+ span\={{
1415
+ base: 12,
1416
+ lg: 1
1417
+ }}
1418
+ \>
1419
+ <IressPlaceholder height\="5em" />
1420
+ </IressCol\>
1421
+ <IressCol
1422
+ span\={{
1423
+ base: 12,
1424
+ lg: 1
1425
+ }}
1426
+ \>
1427
+ <IressPlaceholder height\="5em" />
1428
+ </IressCol\>
1429
+ <IressCol
1430
+ span\={{
1431
+ base: 12,
1432
+ lg: 1
1433
+ }}
1434
+ \>
1435
+ <IressPlaceholder height\="5em" />
1436
+ </IressCol\>
1437
+ <IressCol
1438
+ span\={{
1439
+ base: 12,
1440
+ lg: 1
1441
+ }}
1442
+ \>
1443
+ <IressPlaceholder height\="5em" />
1444
+ </IressCol\>
1445
+ </IressRow\>
1446
+ </IressContainer\>
1447
+ </IressStack\>
1448
+
1449
+ ```
1450
+
1451
+ #### Props
1452
+
1453
+ | Name | Description | Default | Control |
1454
+ | --- | --- | --- | --- |
1455
+ | alternate |
1456
+ If set to true, the table will have alternating row colors. This is useful for improving readability in tables with many rows.
1457
+
1458
+ boolean
1459
+
1460
+
1461
+
1462
+ |
1463
+
1464
+ false
1465
+
1466
+ | Set boolean |
1467
+ | caption\* |
1468
+
1469
+ Caption that describes the data in the table, required for accessibility.
1470
+
1471
+ ReactNode
1472
+
1473
+
1474
+
1475
+ | \- |
1476
+
1477
+ "1024px - 1199px"
1478
+
1479
+ |
1480
+ | children |
1481
+
1482
+ Multiple table elements can be passed as children. Used to create a static table, or add a `<tfoot />` element to a `rows` based table.
1483
+
1484
+ ReactNode
1485
+
1486
+
1487
+
1488
+ | \- | Set object |
1489
+ | columns |
1490
+
1491
+ A mapping of columns to be displayed in the table. If not provided, it will be automatically regenerated from the row data.
1492
+
1493
+ TableColumn<TRow, TVal>\[\]
1494
+
1495
+ | \- | Set object |
1496
+ | compact |
1497
+
1498
+ Compact view of the table, used for tables with a lot of data.
1499
+
1500
+ boolean
1501
+
1502
+
1503
+
1504
+ |
1505
+
1506
+ false
1507
+
1508
+ | Set boolean |
1509
+ | empty |
1510
+
1511
+ Content to be show when there is no rowData (columns must also be provided).
1512
+
1513
+ ReactNode
1514
+
1515
+
1516
+
1517
+ | \- | Set object |
1518
+ | hiddenCaption |
1519
+
1520
+ When set to true, the table caption will be visually hidden.
1521
+
1522
+ boolean
1523
+
1524
+
1525
+
1526
+ | \- | Set boolean |
1527
+ | hiddenHeader |
1528
+
1529
+ When set to true, the table header (`<thead></thead>`) will be not be rendered. Only use with very simple tables.
1530
+
1531
+ boolean
1532
+
1533
+
1534
+
1535
+ | \- | Set boolean |
1536
+ | hover |
1537
+
1538
+ When set to true, hovering over a row will trigger a UI change.
1539
+
1540
+ boolean
1541
+
1542
+
1543
+
1544
+ | \- | Set boolean |
1545
+ | removeRowBorders |
1546
+
1547
+ If set to true, the table will not have borders between rows. This is useful for simpler tables where the row borders are not needed.
1548
+
1549
+ boolean
1550
+
1551
+
1552
+
1553
+ |
1554
+
1555
+ false
1556
+
1557
+ | Set boolean |
1558
+ | rowProps |
1559
+
1560
+ Add additional props to the row element. Can be a props map or a function that returns an props map. The function is called with the row data.
1561
+
1562
+ TableRowsProps\['rowProps'\]
1563
+
1564
+ | \- | Set object |
1565
+ | rows |
1566
+
1567
+ Each object in the array contains the data for a row.
1568
+
1569
+ TRow\[\]
1570
+
1571
+ | \[\] | Set object |
1572
+ | scope |
1573
+
1574
+ Defaults to 'row' - the first cell in the row is a `<th>`, otherwise it's a `<td>`.
1575
+
1576
+ union
1577
+
1578
+
1579
+
1580
+ | \- |
1581
+
1582
+ rowcol
1583
+
1584
+ |
1585
+
1586
+ ### Extra-large screens (`xl`)
1587
+
1588
+ [](./iframe.html?id=foundations-responsive-layout--xl)
1589
+
1590
+ **1200px - 1499px**
1591
+ Large breakpoint for desktops and laptops, such as 15inch laptops and monitors.
1592
+
1593
+ **Min screen width**
1594
+
1595
+ 1200px
1596
+
1597
+ **Max screen width**
1598
+
1599
+ 1499px
1600
+
1601
+ **Example viewport**
1602
+
1603
+ 1280px
1604
+
1605
+ **Margin**
1606
+
1607
+ 16px
1608
+
1609
+ * * *
1610
+
1611
+ Grid example
1612
+ ------------
1613
+
1614
+ From large screens onwards, all 12 columns of the grid can be used. For developers, this means the minimum span on extra large screens is 1. At this screen the container max width is applied, but can be opted out by using the `fluid` prop. It is recommended to keep the max width in most scenarios to ensure optimal readability.
1615
+
1616
+ You are currently viewing the **xl** breakpoint (1200px - 1499px). Resize your screen to view different breakpoints.
1617
+
1618
+ ```
1619
+
1620
+ <IressStack gap\="lg"\>
1621
+ <IressInline
1622
+ gap\="md"
1623
+ verticalAlign\="bottom"
1624
+ \>
1625
+ <IressStack
1626
+ gap\="xs"
1627
+ maxWidth\="input.16"
1628
+ \>
1629
+ <React.Suspense\>
1630
+ <React.Lazy />
1631
+ </React.Suspense\>
1632
+ <IressText\>
1633
+ <strong\>
1634
+ 1200px - 1499px </strong\>
1635
+ <br />
1636
+ Large breakpoint for desktops and laptops, such as 15inch laptops and monitors. </IressText\>
1637
+ </IressStack\>
1638
+ <IressStack gap\="xs"\>
1639
+ <IressInline gap\="sm"\>
1640
+ <IressText element\="strong"\>
1641
+ Min screen width </IressText\>
1642
+ <IressText\>
1643
+ 1200px </IressText\>
1644
+ </IressInline\>
1645
+ <IressInline gap\="sm"\>
1646
+ <IressText element\="strong"\>
1647
+ Max screen width </IressText\>
1648
+ <IressText\>
1649
+ 1499px </IressText\>
1650
+ </IressInline\>
1651
+ <IressInline gap\="sm"\>
1652
+ <IressText element\="strong"\>
1653
+ Example viewport </IressText\>
1654
+ <IressText\>
1655
+ 1280px </IressText\>
1656
+ </IressInline\>
1657
+ <IressInline gap\="sm"\>
1658
+ <IressText element\="strong"\>
1659
+ Margin </IressText\>
1660
+ <IressText\>
1661
+ 16px </IressText\>
1662
+ </IressInline\>
1663
+ </IressStack\>
1664
+ </IressInline\>
1665
+ <IressDivider />
1666
+ <IressText\>
1667
+ <h2\>
1668
+ Grid example </h2\>
1669
+ <p\>
1670
+ From large screens onwards, all 12 columns of the grid can be used. For developers, this means the minimum span on extra large screens is 1. At this screen the container max width is applied, but can be opted out by using the{' '}
1671
+ <code\>
1672
+ fluid </code\>
1673
+ {' '}prop. It is recommended to keep the max width in most scenarios to ensure optimal readability.
1674
+ </p\>
1675
+ <IressPanel bg\="alt"\>
1676
+ <kn renderLabel\="viewing" />
1677
+ </IressPanel\>
1678
+ </IressText\>
1679
+ <IressContainer\>
1680
+ <IressRow gutter\="md"\>
1681
+ <IressCol
1682
+ span\={{
1683
+ base: 12,
1684
+ xl: 12
1685
+ }}
1686
+ \>
1687
+ <IressPlaceholder height\="5em" />
1688
+ </IressCol\>
1689
+ <IressCol
1690
+ span\={{
1691
+ base: 12,
1692
+ xl: 6
1693
+ }}
1694
+ \>
1695
+ <IressPlaceholder height\="5em" />
1696
+ </IressCol\>
1697
+ <IressCol
1698
+ span\={{
1699
+ base: 12,
1700
+ xl: 6
1701
+ }}
1702
+ \>
1703
+ <IressPlaceholder height\="5em" />
1704
+ </IressCol\>
1705
+ <IressCol
1706
+ span\={{
1707
+ base: 12,
1708
+ xl: 4
1709
+ }}
1710
+ \>
1711
+ <IressPlaceholder height\="5em" />
1712
+ </IressCol\>
1713
+ <IressCol
1714
+ span\={{
1715
+ base: 12,
1716
+ xl: 4
1717
+ }}
1718
+ \>
1719
+ <IressPlaceholder height\="5em" />
1720
+ </IressCol\>
1721
+ <IressCol
1722
+ span\={{
1723
+ base: 12,
1724
+ xl: 4
1725
+ }}
1726
+ \>
1727
+ <IressPlaceholder height\="5em" />
1728
+ </IressCol\>
1729
+ <IressCol
1730
+ span\={{
1731
+ base: 12,
1732
+ xl: 2
1733
+ }}
1734
+ \>
1735
+ <IressPlaceholder height\="5em" />
1736
+ </IressCol\>
1737
+ <IressCol
1738
+ span\={{
1739
+ base: 12,
1740
+ xl: 2
1741
+ }}
1742
+ \>
1743
+ <IressPlaceholder height\="5em" />
1744
+ </IressCol\>
1745
+ <IressCol
1746
+ span\={{
1747
+ base: 12,
1748
+ xl: 2
1749
+ }}
1750
+ \>
1751
+ <IressPlaceholder height\="5em" />
1752
+ </IressCol\>
1753
+ <IressCol
1754
+ span\={{
1755
+ base: 12,
1756
+ xl: 2
1757
+ }}
1758
+ \>
1759
+ <IressPlaceholder height\="5em" />
1760
+ </IressCol\>
1761
+ <IressCol
1762
+ span\={{
1763
+ base: 12,
1764
+ xl: 2
1765
+ }}
1766
+ \>
1767
+ <IressPlaceholder height\="5em" />
1768
+ </IressCol\>
1769
+ <IressCol
1770
+ span\={{
1771
+ base: 12,
1772
+ xl: 2
1773
+ }}
1774
+ \>
1775
+ <IressPlaceholder height\="5em" />
1776
+ </IressCol\>
1777
+ <IressCol
1778
+ span\={{
1779
+ base: 12,
1780
+ xl: 1
1781
+ }}
1782
+ \>
1783
+ <IressPlaceholder height\="5em" />
1784
+ </IressCol\>
1785
+ <IressCol
1786
+ span\={{
1787
+ base: 12,
1788
+ xl: 1
1789
+ }}
1790
+ \>
1791
+ <IressPlaceholder height\="5em" />
1792
+ </IressCol\>
1793
+ <IressCol
1794
+ span\={{
1795
+ base: 12,
1796
+ xl: 1
1797
+ }}
1798
+ \>
1799
+ <IressPlaceholder height\="5em" />
1800
+ </IressCol\>
1801
+ <IressCol
1802
+ span\={{
1803
+ base: 12,
1804
+ xl: 1
1805
+ }}
1806
+ \>
1807
+ <IressPlaceholder height\="5em" />
1808
+ </IressCol\>
1809
+ <IressCol
1810
+ span\={{
1811
+ base: 12,
1812
+ xl: 1
1813
+ }}
1814
+ \>
1815
+ <IressPlaceholder height\="5em" />
1816
+ </IressCol\>
1817
+ <IressCol
1818
+ span\={{
1819
+ base: 12,
1820
+ xl: 1
1821
+ }}
1822
+ \>
1823
+ <IressPlaceholder height\="5em" />
1824
+ </IressCol\>
1825
+ <IressCol
1826
+ span\={{
1827
+ base: 12,
1828
+ xl: 1
1829
+ }}
1830
+ \>
1831
+ <IressPlaceholder height\="5em" />
1832
+ </IressCol\>
1833
+ <IressCol
1834
+ span\={{
1835
+ base: 12,
1836
+ xl: 1
1837
+ }}
1838
+ \>
1839
+ <IressPlaceholder height\="5em" />
1840
+ </IressCol\>
1841
+ <IressCol
1842
+ span\={{
1843
+ base: 12,
1844
+ xl: 1
1845
+ }}
1846
+ \>
1847
+ <IressPlaceholder height\="5em" />
1848
+ </IressCol\>
1849
+ <IressCol
1850
+ span\={{
1851
+ base: 12,
1852
+ xl: 1
1853
+ }}
1854
+ \>
1855
+ <IressPlaceholder height\="5em" />
1856
+ </IressCol\>
1857
+ <IressCol
1858
+ span\={{
1859
+ base: 12,
1860
+ xl: 1
1861
+ }}
1862
+ \>
1863
+ <IressPlaceholder height\="5em" />
1864
+ </IressCol\>
1865
+ <IressCol
1866
+ span\={{
1867
+ base: 12,
1868
+ xl: 1
1869
+ }}
1870
+ \>
1871
+ <IressPlaceholder height\="5em" />
1872
+ </IressCol\>
1873
+ </IressRow\>
1874
+ </IressContainer\>
1875
+ </IressStack\>
1876
+
1877
+ ```
1878
+
1879
+ #### Props
1880
+
1881
+ | Name | Description | Default | Control |
1882
+ | --- | --- | --- | --- |
1883
+ | alternate |
1884
+ If set to true, the table will have alternating row colors. This is useful for improving readability in tables with many rows.
1885
+
1886
+ boolean
1887
+
1888
+
1889
+
1890
+ |
1891
+
1892
+ false
1893
+
1894
+ | Set boolean |
1895
+ | caption\* |
1896
+
1897
+ Caption that describes the data in the table, required for accessibility.
1898
+
1899
+ ReactNode
1900
+
1901
+
1902
+
1903
+ | \- |
1904
+
1905
+ "1200px - 1499px"
1906
+
1907
+ |
1908
+ | children |
1909
+
1910
+ Multiple table elements can be passed as children. Used to create a static table, or add a `<tfoot />` element to a `rows` based table.
1911
+
1912
+ ReactNode
1913
+
1914
+
1915
+
1916
+ | \- | Set object |
1917
+ | columns |
1918
+
1919
+ A mapping of columns to be displayed in the table. If not provided, it will be automatically regenerated from the row data.
1920
+
1921
+ TableColumn<TRow, TVal>\[\]
1922
+
1923
+ | \- | Set object |
1924
+ | compact |
1925
+
1926
+ Compact view of the table, used for tables with a lot of data.
1927
+
1928
+ boolean
1929
+
1930
+
1931
+
1932
+ |
1933
+
1934
+ false
1935
+
1936
+ | Set boolean |
1937
+ | empty |
1938
+
1939
+ Content to be show when there is no rowData (columns must also be provided).
1940
+
1941
+ ReactNode
1942
+
1943
+
1944
+
1945
+ | \- | Set object |
1946
+ | hiddenCaption |
1947
+
1948
+ When set to true, the table caption will be visually hidden.
1949
+
1950
+ boolean
1951
+
1952
+
1953
+
1954
+ | \- | Set boolean |
1955
+ | hiddenHeader |
1956
+
1957
+ When set to true, the table header (`<thead></thead>`) will be not be rendered. Only use with very simple tables.
1958
+
1959
+ boolean
1960
+
1961
+
1962
+
1963
+ | \- | Set boolean |
1964
+ | hover |
1965
+
1966
+ When set to true, hovering over a row will trigger a UI change.
1967
+
1968
+ boolean
1969
+
1970
+
1971
+
1972
+ | \- | Set boolean |
1973
+ | removeRowBorders |
1974
+
1975
+ If set to true, the table will not have borders between rows. This is useful for simpler tables where the row borders are not needed.
1976
+
1977
+ boolean
1978
+
1979
+
1980
+
1981
+ |
1982
+
1983
+ false
1984
+
1985
+ | Set boolean |
1986
+ | rowProps |
1987
+
1988
+ Add additional props to the row element. Can be a props map or a function that returns an props map. The function is called with the row data.
1989
+
1990
+ TableRowsProps\['rowProps'\]
1991
+
1992
+ | \- | Set object |
1993
+ | rows |
1994
+
1995
+ Each object in the array contains the data for a row.
1996
+
1997
+ TRow\[\]
1998
+
1999
+ | \[\] | Set object |
2000
+ | scope |
2001
+
2002
+ Defaults to 'row' - the first cell in the row is a `<th>`, otherwise it's a `<td>`.
2003
+
2004
+ union
2005
+
2006
+
2007
+
2008
+ | \- |
2009
+
2010
+ rowcol
2011
+
2012
+ |
2013
+
2014
+ ### Extremely large screens (`xxl`)
2015
+
2016
+ [](./iframe.html?id=foundations-responsive-layout--xxl)
2017
+
2018
+ **1500px and above**
2019
+ Extra-large breakpoint for modern desktop monitors and large laptops (17inch+).
2020
+
2021
+ **Min screen width**
2022
+
2023
+ 1500px
2024
+
2025
+ **Max screen width**
2026
+
2027
+ N/A
2028
+
2029
+ **Example viewport**
2030
+
2031
+ 1280px
2032
+
2033
+ **Margin**
2034
+
2035
+ 16px
2036
+
2037
+ * * *
2038
+
2039
+ Grid example
2040
+ ------------
2041
+
2042
+ From large screens onwards, all 12 columns of the grid can be used. For developers, this means the minimum span on extra large screens is 1. At this screen the container max width is applied, but can be opted out by using the `fluid` prop. It is recommended to keep the max width in most scenarios to ensure optimal readability.
2043
+
2044
+ You are currently viewing the **xl** breakpoint (1200px - 1499px). Resize your screen to view different breakpoints.
2045
+
2046
+ ```
2047
+
2048
+ <IressStack gap\="lg"\>
2049
+ <IressInline
2050
+ gap\="md"
2051
+ verticalAlign\="bottom"
2052
+ \>
2053
+ <IressStack
2054
+ gap\="xs"
2055
+ maxWidth\="input.16"
2056
+ \>
2057
+ <React.Suspense\>
2058
+ <React.Lazy />
2059
+ </React.Suspense\>
2060
+ <IressText\>
2061
+ <strong\>
2062
+ 1500px and above </strong\>
2063
+ <br />
2064
+ Extra-large breakpoint for modern desktop monitors and large laptops (17inch+). </IressText\>
2065
+ </IressStack\>
2066
+ <IressStack gap\="xs"\>
2067
+ <IressInline gap\="sm"\>
2068
+ <IressText element\="strong"\>
2069
+ Min screen width </IressText\>
2070
+ <IressText\>
2071
+ 1500px </IressText\>
2072
+ </IressInline\>
2073
+ <IressInline gap\="sm"\>
2074
+ <IressText element\="strong"\>
2075
+ Max screen width </IressText\>
2076
+ <IressText\>
2077
+ N/A </IressText\>
2078
+ </IressInline\>
2079
+ <IressInline gap\="sm"\>
2080
+ <IressText element\="strong"\>
2081
+ Example viewport </IressText\>
2082
+ <IressText\>
2083
+ 1280px </IressText\>
2084
+ </IressInline\>
2085
+ <IressInline gap\="sm"\>
2086
+ <IressText element\="strong"\>
2087
+ Margin </IressText\>
2088
+ <IressText\>
2089
+ 16px </IressText\>
2090
+ </IressInline\>
2091
+ </IressStack\>
2092
+ </IressInline\>
2093
+ <IressDivider />
2094
+ <IressText\>
2095
+ <h2\>
2096
+ Grid example </h2\>
2097
+ <p\>
2098
+ From large screens onwards, all 12 columns of the grid can be used. For developers, this means the minimum span on extra large screens is 1. At this screen the container max width is applied, but can be opted out by using the{' '}
2099
+ <code\>
2100
+ fluid </code\>
2101
+ {' '}prop. It is recommended to keep the max width in most scenarios to ensure optimal readability.
2102
+ </p\>
2103
+ <IressPanel bg\="alt"\>
2104
+ <kn renderLabel\="viewing" />
2105
+ </IressPanel\>
2106
+ </IressText\>
2107
+ <IressContainer\>
2108
+ <IressRow gutter\="md"\>
2109
+ <IressCol
2110
+ span\={{
2111
+ base: 12,
2112
+ xxl: 12
2113
+ }}
2114
+ \>
2115
+ <IressPlaceholder height\="5em" />
2116
+ </IressCol\>
2117
+ <IressCol
2118
+ span\={{
2119
+ base: 12,
2120
+ xxl: 6
2121
+ }}
2122
+ \>
2123
+ <IressPlaceholder height\="5em" />
2124
+ </IressCol\>
2125
+ <IressCol
2126
+ span\={{
2127
+ base: 12,
2128
+ xxl: 6
2129
+ }}
2130
+ \>
2131
+ <IressPlaceholder height\="5em" />
2132
+ </IressCol\>
2133
+ <IressCol
2134
+ span\={{
2135
+ base: 12,
2136
+ xxl: 4
2137
+ }}
2138
+ \>
2139
+ <IressPlaceholder height\="5em" />
2140
+ </IressCol\>
2141
+ <IressCol
2142
+ span\={{
2143
+ base: 12,
2144
+ xxl: 4
2145
+ }}
2146
+ \>
2147
+ <IressPlaceholder height\="5em" />
2148
+ </IressCol\>
2149
+ <IressCol
2150
+ span\={{
2151
+ base: 12,
2152
+ xxl: 4
2153
+ }}
2154
+ \>
2155
+ <IressPlaceholder height\="5em" />
2156
+ </IressCol\>
2157
+ <IressCol
2158
+ span\={{
2159
+ base: 12,
2160
+ xxl: 2
2161
+ }}
2162
+ \>
2163
+ <IressPlaceholder height\="5em" />
2164
+ </IressCol\>
2165
+ <IressCol
2166
+ span\={{
2167
+ base: 12,
2168
+ xxl: 2
2169
+ }}
2170
+ \>
2171
+ <IressPlaceholder height\="5em" />
2172
+ </IressCol\>
2173
+ <IressCol
2174
+ span\={{
2175
+ base: 12,
2176
+ xxl: 2
2177
+ }}
2178
+ \>
2179
+ <IressPlaceholder height\="5em" />
2180
+ </IressCol\>
2181
+ <IressCol
2182
+ span\={{
2183
+ base: 12,
2184
+ xxl: 2
2185
+ }}
2186
+ \>
2187
+ <IressPlaceholder height\="5em" />
2188
+ </IressCol\>
2189
+ <IressCol
2190
+ span\={{
2191
+ base: 12,
2192
+ xxl: 2
2193
+ }}
2194
+ \>
2195
+ <IressPlaceholder height\="5em" />
2196
+ </IressCol\>
2197
+ <IressCol
2198
+ span\={{
2199
+ base: 12,
2200
+ xxl: 2
2201
+ }}
2202
+ \>
2203
+ <IressPlaceholder height\="5em" />
2204
+ </IressCol\>
2205
+ <IressCol
2206
+ span\={{
2207
+ base: 12,
2208
+ xxl: 1
2209
+ }}
2210
+ \>
2211
+ <IressPlaceholder height\="5em" />
2212
+ </IressCol\>
2213
+ <IressCol
2214
+ span\={{
2215
+ base: 12,
2216
+ xxl: 1
2217
+ }}
2218
+ \>
2219
+ <IressPlaceholder height\="5em" />
2220
+ </IressCol\>
2221
+ <IressCol
2222
+ span\={{
2223
+ base: 12,
2224
+ xxl: 1
2225
+ }}
2226
+ \>
2227
+ <IressPlaceholder height\="5em" />
2228
+ </IressCol\>
2229
+ <IressCol
2230
+ span\={{
2231
+ base: 12,
2232
+ xxl: 1
2233
+ }}
2234
+ \>
2235
+ <IressPlaceholder height\="5em" />
2236
+ </IressCol\>
2237
+ <IressCol
2238
+ span\={{
2239
+ base: 12,
2240
+ xxl: 1
2241
+ }}
2242
+ \>
2243
+ <IressPlaceholder height\="5em" />
2244
+ </IressCol\>
2245
+ <IressCol
2246
+ span\={{
2247
+ base: 12,
2248
+ xxl: 1
2249
+ }}
2250
+ \>
2251
+ <IressPlaceholder height\="5em" />
2252
+ </IressCol\>
2253
+ <IressCol
2254
+ span\={{
2255
+ base: 12,
2256
+ xxl: 1
2257
+ }}
2258
+ \>
2259
+ <IressPlaceholder height\="5em" />
2260
+ </IressCol\>
2261
+ <IressCol
2262
+ span\={{
2263
+ base: 12,
2264
+ xxl: 1
2265
+ }}
2266
+ \>
2267
+ <IressPlaceholder height\="5em" />
2268
+ </IressCol\>
2269
+ <IressCol
2270
+ span\={{
2271
+ base: 12,
2272
+ xxl: 1
2273
+ }}
2274
+ \>
2275
+ <IressPlaceholder height\="5em" />
2276
+ </IressCol\>
2277
+ <IressCol
2278
+ span\={{
2279
+ base: 12,
2280
+ xxl: 1
2281
+ }}
2282
+ \>
2283
+ <IressPlaceholder height\="5em" />
2284
+ </IressCol\>
2285
+ <IressCol
2286
+ span\={{
2287
+ base: 12,
2288
+ xxl: 1
2289
+ }}
2290
+ \>
2291
+ <IressPlaceholder height\="5em" />
2292
+ </IressCol\>
2293
+ <IressCol
2294
+ span\={{
2295
+ base: 12,
2296
+ xxl: 1
2297
+ }}
2298
+ \>
2299
+ <IressPlaceholder height\="5em" />
2300
+ </IressCol\>
2301
+ </IressRow\>
2302
+ </IressContainer\>
2303
+ </IressStack\>
2304
+
2305
+ ```
2306
+
2307
+ #### Props
2308
+
2309
+ | Name | Description | Default | Control |
2310
+ | --- | --- | --- | --- |
2311
+ | alternate |
2312
+ If set to true, the table will have alternating row colors. This is useful for improving readability in tables with many rows.
2313
+
2314
+ boolean
2315
+
2316
+
2317
+
2318
+ |
2319
+
2320
+ false
2321
+
2322
+ | Set boolean |
2323
+ | caption\* |
2324
+
2325
+ Caption that describes the data in the table, required for accessibility.
2326
+
2327
+ ReactNode
2328
+
2329
+
2330
+
2331
+ | \- |
2332
+
2333
+ "1500px and above"
2334
+
2335
+ |
2336
+ | children |
2337
+
2338
+ Multiple table elements can be passed as children. Used to create a static table, or add a `<tfoot />` element to a `rows` based table.
2339
+
2340
+ ReactNode
2341
+
2342
+
2343
+
2344
+ | \- | Set object |
2345
+ | columns |
2346
+
2347
+ A mapping of columns to be displayed in the table. If not provided, it will be automatically regenerated from the row data.
2348
+
2349
+ TableColumn<TRow, TVal>\[\]
2350
+
2351
+ | \- | Set object |
2352
+ | compact |
2353
+
2354
+ Compact view of the table, used for tables with a lot of data.
2355
+
2356
+ boolean
2357
+
2358
+
2359
+
2360
+ |
2361
+
2362
+ false
2363
+
2364
+ | Set boolean |
2365
+ | empty |
2366
+
2367
+ Content to be show when there is no rowData (columns must also be provided).
2368
+
2369
+ ReactNode
2370
+
2371
+
2372
+
2373
+ | \- | Set object |
2374
+ | hiddenCaption |
2375
+
2376
+ When set to true, the table caption will be visually hidden.
2377
+
2378
+ boolean
2379
+
2380
+
2381
+
2382
+ | \- | Set boolean |
2383
+ | hiddenHeader |
2384
+
2385
+ When set to true, the table header (`<thead></thead>`) will be not be rendered. Only use with very simple tables.
2386
+
2387
+ boolean
2388
+
2389
+
2390
+
2391
+ | \- | Set boolean |
2392
+ | hover |
2393
+
2394
+ When set to true, hovering over a row will trigger a UI change.
2395
+
2396
+ boolean
2397
+
2398
+
2399
+
2400
+ | \- | Set boolean |
2401
+ | removeRowBorders |
2402
+
2403
+ If set to true, the table will not have borders between rows. This is useful for simpler tables where the row borders are not needed.
2404
+
2405
+ boolean
2406
+
2407
+
2408
+
2409
+ |
2410
+
2411
+ false
2412
+
2413
+ | Set boolean |
2414
+ | rowProps |
2415
+
2416
+ Add additional props to the row element. Can be a props map or a function that returns an props map. The function is called with the row data.
2417
+
2418
+ TableRowsProps\['rowProps'\]
2419
+
2420
+ | \- | Set object |
2421
+ | rows |
2422
+
2423
+ Each object in the array contains the data for a row.
2424
+
2425
+ TRow\[\]
2426
+
2427
+ | \[\] | Set object |
2428
+ | scope |
2429
+
2430
+ Defaults to 'row' - the first cell in the row is a `<th>`, otherwise it's a `<td>`.
2431
+
2432
+ union
2433
+
2434
+
2435
+
2436
+ | \- |
2437
+
2438
+ rowcol
2439
+
2440
+ |
2441
+
2442
+ * * *
2443
+
2444
+ For designers
2445
+ -------------
2446
+
2447
+ When designing for responsive layouts, consider how your designs will adapt to different screen sizes. Use the breakpoints defined in the design system to guide your layout decisions and ensure that your designs are flexible and adaptable.
2448
+
2449
+ ### Tips
2450
+
2451
+ 1. Use the example viewport sizes provided in the breakpoints table to show your designs at different screen widths.
2452
+ 2. Prioritise content based on screen size, ensuring that the most important information is easily accessible on smaller devices.
2453
+ 3. Reduce option counts on mobile devices where appropriate
2454
+ 4. Implement responsive navigation patterns
2455
+ 5. Adjust spacing and sizing for different contexts
2456
+ 6. Maintain usability across all supported devices
2457
+
2458
+ * * *
2459
+
2460
+ For developers
2461
+ --------------
2462
+
2463
+ If you are using the IDS components, the breakpoints have already been mapped out to their respective props. You can use props such as `gap` to change the visual properties of the component at certain breakpoints.
2464
+
2465
+ import { IressStack } from '@iress-oss/ids-components';
2466
+ <IressStack gap\={{ xs: 'spacing.100', md: 'spacing.200' }} />;
2467
+
2468
+ ```
2469
+
2470
+ ### Hooks
2471
+
2472
+ #### `useBreakpoint`
2473
+
2474
+ We also provide a `useBreakpoint` hook that allows you to access the current breakpoint in your components. This can be useful for conditionally rendering components based on the current screen size.
2475
+
2476
+ **Note:** It is best to use media queries for responsive styling. Most props that require responsive values already support breakpoints which map to CSS values. Only use the `useBreakpoint` hook when there is no other way to achieve the desired responsive behavior.
2477
+
2478
+ import { useBreakpoint } from '@iress-oss/ids-components';
2479
+ const MyComponent \= () \=> {
2480
+ const { breakpoint } \= useBreakpoint();
2481
+ return (
2482
+ <div\>
2483
+ {breakpoint \=== 'xs' && <p\>This is extra small screen</p\>}
2484
+ {breakpoint \=== 'md' && <p\>This is medium screen</p\>}
2485
+ </div\>
2486
+ );
2487
+ };
2488
+
2489
+ ```
2490
+
2491
+ #### `useResponsiveProps`
2492
+
2493
+ Another hook is `useResponsiveProps`, which allows you to define responsive properties that change based on the current breakpoint. This is particularly useful for completely changing components at various screen sizes.
2494
+
2495
+ **Note:** It is best to use media queries for responsive styling. Most props that require responsive values already support breakpoints which map to CSS values. Only use the `useResponsiveProps` hook when there is no other way to achieve the desired responsive behavior.
2496
+
2497
+ [](./iframe.html?id=foundations-responsive-layout--responsive-props)
2498
+
2499
+ `useResponsiveProps`
2500
+ --------------------
2501
+
2502
+ This example demonstrates a use case for `useResponsiveProps`, for changing the columns on a table based on the breakpoint.
2503
+
2504
+ Resize the screen to see the columns change
2505
+
2506
+ | Name | Age |
2507
+ | --- | --- |
2508
+ | Luke Skywalker | 19 |
2509
+ | Princess Leia | 19 |
2510
+ | Han Solo | 32 |
2511
+
2512
+ ```
2513
+
2514
+ export const ResponsiveTableColumns \= () \=> {
2515
+ const { value } \= useResponsiveProps({
2516
+ base: \[{ key: 'name', label: 'Name' }\],
2517
+ lg: \[
2518
+ { key: 'name', label: 'Name' },
2519
+ { key: 'age', label: 'Age' },
2520
+ \],
2521
+ });
2522
+ return (
2523
+ <IressTable
2524
+ caption\={
2525
+ <IressText textAlign\="left"\>
2526
+ <h2\>
2527
+ <code\>useResponsiveProps</code\>
2528
+ </h2\>
2529
+ <p\>
2530
+ This example demonstrates a use case for{' '}
2531
+ <code\>useResponsiveProps</code\>, for changing the columns on a table
2532
+ based on the breakpoint. </p\>
2533
+ <p\>Resize the screen to see the columns change</p\>
2534
+ </IressText\>
2535
+ }
2536
+ columns\={value}
2537
+ rows\={\[
2538
+ { name: 'Luke Skywalker', age: 19 },
2539
+ { name: 'Princess Leia', age: 19 },
2540
+ { name: 'Han Solo', age: 32 },
2541
+ \]}
2542
+ />
2543
+ );
2544
+ };
2545
+
2546
+ ```
2547
+
2548
+ #### Props
2549
+
2550
+ | Name | Description | Default | Control |
2551
+ | --- | --- | --- | --- |
2552
+ | alternate |
2553
+ If set to true, the table will have alternating row colors. This is useful for improving readability in tables with many rows.
2554
+
2555
+ boolean
2556
+
2557
+
2558
+
2559
+ |
2560
+
2561
+ false
2562
+
2563
+ | Set boolean |
2564
+ | caption\* |
2565
+
2566
+ Caption that describes the data in the table, required for accessibility.
2567
+
2568
+ ReactNode
2569
+
2570
+
2571
+
2572
+ | \- | Set object |
2573
+ | children |
2574
+
2575
+ Multiple table elements can be passed as children. Used to create a static table, or add a `<tfoot />` element to a `rows` based table.
2576
+
2577
+ ReactNode
2578
+
2579
+
2580
+
2581
+ | \- | Set object |
2582
+ | columns |
2583
+
2584
+ A mapping of columns to be displayed in the table. If not provided, it will be automatically regenerated from the row data.
2585
+
2586
+ TableColumn<TRow, TVal>\[\]
2587
+
2588
+ | \- | Set object |
2589
+ | compact |
2590
+
2591
+ Compact view of the table, used for tables with a lot of data.
2592
+
2593
+ boolean
2594
+
2595
+
2596
+
2597
+ |
2598
+
2599
+ false
2600
+
2601
+ | Set boolean |
2602
+ | empty |
2603
+
2604
+ Content to be show when there is no rowData (columns must also be provided).
2605
+
2606
+ ReactNode
2607
+
2608
+
2609
+
2610
+ | \- | Set object |
2611
+ | hiddenCaption |
2612
+
2613
+ When set to true, the table caption will be visually hidden.
2614
+
2615
+ boolean
2616
+
2617
+
2618
+
2619
+ | \- | Set boolean |
2620
+ | hiddenHeader |
2621
+
2622
+ When set to true, the table header (`<thead></thead>`) will be not be rendered. Only use with very simple tables.
2623
+
2624
+ boolean
2625
+
2626
+
2627
+
2628
+ | \- | Set boolean |
2629
+ | hover |
2630
+
2631
+ When set to true, hovering over a row will trigger a UI change.
2632
+
2633
+ boolean
2634
+
2635
+
2636
+
2637
+ | \- | Set boolean |
2638
+ | removeRowBorders |
2639
+
2640
+ If set to true, the table will not have borders between rows. This is useful for simpler tables where the row borders are not needed.
2641
+
2642
+ boolean
2643
+
2644
+
2645
+
2646
+ |
2647
+
2648
+ false
2649
+
2650
+ | Set boolean |
2651
+ | rowProps |
2652
+
2653
+ Add additional props to the row element. Can be a props map or a function that returns an props map. The function is called with the row data.
2654
+
2655
+ TableRowsProps\['rowProps'\]
2656
+
2657
+ | \- | Set object |
2658
+ | rows |
2659
+
2660
+ Each object in the array contains the data for a row.
2661
+
2662
+ TRow\[\]
2663
+
2664
+ | \[\] | Set object |
2665
+ | scope |
2666
+
2667
+ Defaults to 'row' - the first cell in the row is a `<th>`, otherwise it's a `<td>`.
2668
+
2669
+ union
2670
+
2671
+
2672
+
2673
+ | \- |
2674
+
2675
+ rowcol
2676
+
2677
+ |
2678
+
2679
+ ### Constant
2680
+
2681
+ You can also use the breakpoints directly in your CSS or styled components. The breakpoints are defined in the `@iress-oss/ids-components` package.
2682
+
2683
+ import { BREAKPOINT\_DETAILS } from '@iress-oss/ids-components';
2684
+ const css \= \`
2685
+ @media (${BREAKPOINT\_DETAILS.md.mediaQuery}}) {
2686
+ .my-class { padding: 20px; } }
2687
+ \`;
2688
+ <style\>{css}</style\>;
2689
+
2690
+ ```
2691
+
2692
+ The base grid size is exported as `GRID_SIZE` from the `@iress-oss/ids-components` package, in case you need to reference it in your own code.