@czi-sds/mcp 0.16.0 → 0.17.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (164) hide show
  1. package/README.md +2 -1
  2. package/data/component-docs/Accordion.md +291 -0
  3. package/data/component-docs/Autocomplete.md +525 -0
  4. package/data/component-docs/Banner.md +231 -0
  5. package/data/component-docs/Button.md +224 -0
  6. package/data/component-docs/ButtonDropdown.md +256 -0
  7. package/data/component-docs/ButtonGroup.md +320 -0
  8. package/data/component-docs/ButtonToggle.md +397 -0
  9. package/data/component-docs/Callout.md +268 -0
  10. package/data/component-docs/CellBasic.md +122 -0
  11. package/data/component-docs/CellComponent.md +63 -0
  12. package/data/component-docs/CellHeader.md +128 -0
  13. package/data/component-docs/ComplexFilter.md +294 -0
  14. package/data/component-docs/ContentCard.md +406 -0
  15. package/data/component-docs/Dialog.md +651 -0
  16. package/data/component-docs/Dropdown.md +155 -0
  17. package/data/component-docs/DropdownMenu.md +949 -0
  18. package/data/component-docs/HeatmapChart.md +782 -0
  19. package/data/component-docs/Hero.md +363 -0
  20. package/data/component-docs/Icon.md +283 -0
  21. package/data/component-docs/InputCheckbox.md +205 -0
  22. package/data/component-docs/InputDropdown.md +482 -0
  23. package/data/component-docs/InputRadio.md +173 -0
  24. package/data/component-docs/InputSearch.md +81 -0
  25. package/data/component-docs/InputSlider.md +189 -0
  26. package/data/component-docs/InputText.md +110 -0
  27. package/data/component-docs/InputToggle.md +141 -0
  28. package/data/component-docs/IntentMessage.md +293 -0
  29. package/data/component-docs/Legend.md +442 -0
  30. package/data/component-docs/Link.md +23 -0
  31. package/data/component-docs/List.md +300 -0
  32. package/data/component-docs/LoadingIndicator.md +198 -0
  33. package/data/component-docs/Menu.md +298 -0
  34. package/data/component-docs/MenuItem.md +100 -0
  35. package/data/component-docs/NavigationFooter.md +165 -0
  36. package/data/component-docs/NavigationHeader.md +500 -0
  37. package/data/component-docs/NavigationJumpTo.md +414 -0
  38. package/data/component-docs/Notification.md +288 -0
  39. package/data/component-docs/Pagination.md +67 -0
  40. package/data/component-docs/Panel.md +636 -0
  41. package/data/component-docs/Popover.md +448 -0
  42. package/data/component-docs/PreComposedTable.md +2947 -0
  43. package/data/component-docs/SegmentedControl.md +396 -0
  44. package/data/component-docs/StackedBarChart.md +475 -0
  45. package/data/component-docs/Table.md +2000 -0
  46. package/data/component-docs/TableHeader.md +53 -0
  47. package/data/component-docs/TableRow.md +74 -0
  48. package/data/component-docs/Tabs.md +455 -0
  49. package/data/component-docs/Tag.md +647 -0
  50. package/data/component-docs/TagFilter.md +131 -0
  51. package/data/component-docs/Tooltip.md +561 -0
  52. package/data/component-docs/TooltipCondensed.md +203 -0
  53. package/data/component-docs/TooltipTable.md +145 -0
  54. package/data/component-docs/index.json +262 -0
  55. package/data/component-list.json +2 -5
  56. package/data/component-props/Accordion.json +31 -11
  57. package/data/component-props/Alert.json +3 -3
  58. package/data/component-props/Autocomplete.json +150 -15
  59. package/data/component-props/Banner.json +31 -17
  60. package/data/component-props/Button.json +45 -20
  61. package/data/component-props/ButtonDropdown.json +36 -17
  62. package/data/component-props/ButtonDropdownLegacy.json +11 -11
  63. package/data/component-props/ButtonGroup.json +32 -11
  64. package/data/component-props/ButtonIcon.json +10 -10
  65. package/data/component-props/ButtonLegacy.json +19 -19
  66. package/data/component-props/ButtonToggle.json +32 -19
  67. package/data/component-props/ButtonToggleLegacy.json +11 -11
  68. package/data/component-props/Callout.json +58 -17
  69. package/data/component-props/CellBasic.json +94 -41
  70. package/data/component-props/CellComponent.json +23 -7
  71. package/data/component-props/CellHeader.json +62 -19
  72. package/data/component-props/ComplexFilter.json +52 -21
  73. package/data/component-props/ContentCard.json +70 -47
  74. package/data/component-props/Dialog.json +47 -14
  75. package/data/component-props/Dropdown.json +68 -31
  76. package/data/component-props/DropdownMenu.json +128 -23
  77. package/data/component-props/HeatmapChart.json +88 -12
  78. package/data/component-props/Hero.json +80 -39
  79. package/data/component-props/Icon.json +20 -9
  80. package/data/component-props/InputCheckbox.json +36 -14
  81. package/data/component-props/InputDropdown.json +75 -27
  82. package/data/component-props/InputRadio.json +31 -13
  83. package/data/component-props/InputSearch.json +41 -18
  84. package/data/component-props/InputSlider.json +46 -19
  85. package/data/component-props/InputText.json +26 -19
  86. package/data/component-props/InputToggle.json +26 -9
  87. package/data/component-props/IntentMessage.json +38 -9
  88. package/data/component-props/Link.json +13 -7
  89. package/data/component-props/LoadingIndicator.json +11 -3
  90. package/data/component-props/MenuItem.json +38 -19
  91. package/data/component-props/MenuSelect.json +8 -8
  92. package/data/component-props/NavigationFooter.json +49 -19
  93. package/data/component-props/NavigationHeader.json +150 -37
  94. package/data/component-props/NavigationJumpTo.json +33 -7
  95. package/data/component-props/Notification.json +39 -21
  96. package/data/component-props/Pagination.json +39 -11
  97. package/data/component-props/Panel.json +62 -9
  98. package/data/component-props/Popover.json +80 -7
  99. package/data/component-props/PreComposedTable.json +99 -27
  100. package/data/component-props/SegmentedControl.json +42 -3
  101. package/data/component-props/StackedBarChart.json +116 -42
  102. package/data/component-props/TableRow.json +38 -19
  103. package/data/component-props/Tabs.json +66 -9
  104. package/data/component-props/Tag.json +34 -17
  105. package/data/component-props/TagFilter.json +10 -3
  106. package/data/component-props/Tooltip.json +49 -18
  107. package/data/component-props/TooltipCondensed.json +18 -9
  108. package/data/component-props/TooltipTable.json +17 -7
  109. package/data/resources/{zeroheight-rules.md → documentation-rules.md} +43 -30
  110. package/data/resources/figma-rules.md +2 -2
  111. package/dist/stdio.js +112 -208
  112. package/package.json +9 -5
  113. package/data/component-props/ButtonDropdownV2.json +0 -34
  114. package/data/component-props/ButtonNew.json +0 -47
  115. package/data/component-props/ButtonToggleV2.json +0 -44
  116. package/data/component-props/ButtonV2.json +0 -43
  117. package/data/zeroheight-cache.json +0 -10259
  118. package/data/zeroheight-exports/Accordion.md +0 -774
  119. package/data/zeroheight-exports/Banner.md +0 -691
  120. package/data/zeroheight-exports/Borders.md +0 -117
  121. package/data/zeroheight-exports/Buttons.md +0 -1854
  122. package/data/zeroheight-exports/Callout.md +0 -931
  123. package/data/zeroheight-exports/Colors.md +0 -1755
  124. package/data/zeroheight-exports/Content-Card.md +0 -309
  125. package/data/zeroheight-exports/Contributing-to-SDS.md +0 -98
  126. package/data/zeroheight-exports/Control-Inputs.md +0 -2818
  127. package/data/zeroheight-exports/Corners.md +0 -104
  128. package/data/zeroheight-exports/Cover-page.md +0 -3
  129. package/data/zeroheight-exports/Dialog.md +0 -1367
  130. package/data/zeroheight-exports/Downloads.md +0 -236
  131. package/data/zeroheight-exports/Drop-Shadows.md +0 -79
  132. package/data/zeroheight-exports/Dropdown-Input.md +0 -1776
  133. package/data/zeroheight-exports/Dropdown-Menus.md +0 -913
  134. package/data/zeroheight-exports/Element-Status-Tracker.md +0 -267
  135. package/data/zeroheight-exports/Field-Inputs.md +0 -1405
  136. package/data/zeroheight-exports/Filters.md +0 -1111
  137. package/data/zeroheight-exports/Getting-Started.md +0 -1157
  138. package/data/zeroheight-exports/Hero.md +0 -414
  139. package/data/zeroheight-exports/Icons.md +0 -2067
  140. package/data/zeroheight-exports/Intent.md +0 -86
  141. package/data/zeroheight-exports/Introduction-to-Bases.md +0 -35
  142. package/data/zeroheight-exports/Introduction-to-Cells.md +0 -35
  143. package/data/zeroheight-exports/Introduction-to-DNA.md +0 -35
  144. package/data/zeroheight-exports/Introduction-to-Genes.md +0 -35
  145. package/data/zeroheight-exports/Introduction.md +0 -115
  146. package/data/zeroheight-exports/Link.md +0 -432
  147. package/data/zeroheight-exports/Lists.md +0 -986
  148. package/data/zeroheight-exports/Loading-Indicator.md +0 -41
  149. package/data/zeroheight-exports/Navigation.md +0 -1190
  150. package/data/zeroheight-exports/Notification.md +0 -1038
  151. package/data/zeroheight-exports/Panel.md +0 -1030
  152. package/data/zeroheight-exports/README.md +0 -122
  153. package/data/zeroheight-exports/Responsive-Design.md +0 -330
  154. package/data/zeroheight-exports/Search-Input.md +0 -91
  155. package/data/zeroheight-exports/Search.md +0 -822
  156. package/data/zeroheight-exports/Segmented-Control.md +0 -609
  157. package/data/zeroheight-exports/Spacing.md +0 -297
  158. package/data/zeroheight-exports/Table.md +0 -5345
  159. package/data/zeroheight-exports/Tabs.md +0 -1324
  160. package/data/zeroheight-exports/Tags.md +0 -1545
  161. package/data/zeroheight-exports/Text-Link.md +0 -268
  162. package/data/zeroheight-exports/Theming.md +0 -362
  163. package/data/zeroheight-exports/Tooltips.md +0 -2015
  164. package/data/zeroheight-exports/Typography.md +0 -800
@@ -2,57 +2,129 @@
2
2
  "PreComposedTable": {
3
3
  "props": {
4
4
  "border": {
5
- "type": "any",
6
- "isRequired": false
5
+ "defaultValue": true,
6
+ "description": "Draws the border around the scrolling table area",
7
+ "isRequired": false,
8
+ "type": "boolean"
7
9
  },
8
10
  "columns": {
9
- "type": "any",
10
- "isRequired": false
11
+ "description": "Column definitions that specify how data should be rendered and behave",
12
+ "isRequired": false,
13
+ "type": "ColumnDef<TData>[]"
11
14
  },
12
15
  "enableColumnFiltering": {
13
- "type": "any",
14
- "isRequired": false
16
+ "defaultValue": false,
17
+ "description": "Adds a filter row under the header. Each column gets a search input unless its meta supplies a filterComponent",
18
+ "isRequired": false,
19
+ "type": "boolean"
15
20
  },
16
21
  "enableGlobalFiltering": {
17
- "type": "any",
18
- "isRequired": false
22
+ "defaultValue": false,
23
+ "description": "Displays a search input that filters across all columns",
24
+ "isRequired": false,
25
+ "type": "boolean"
19
26
  },
20
27
  "enablePagination": {
21
- "type": "any",
22
- "isRequired": false
28
+ "defaultValue": false,
29
+ "description": "Enables pagination controls at the bottom of the table",
30
+ "isRequired": false,
31
+ "type": "boolean"
23
32
  },
24
33
  "enableRowSelection": {
25
- "type": "any",
26
- "isRequired": false
34
+ "defaultValue": false,
35
+ "description": "Adds a checkbox column with select-all. To control that column yourself, include one with the id \"SdsTableSelectColumn\" and it will be used instead of the generated one",
36
+ "isRequired": false,
37
+ "type": "boolean"
27
38
  },
28
39
  "enableSorting": {
29
- "type": "any",
30
- "isRequired": false
40
+ "defaultValue": false,
41
+ "description": "Makes column headers sortable, wiring each one's chevron and click handler for you",
42
+ "isRequired": false,
43
+ "type": "boolean"
31
44
  },
32
45
  "onRowSelect": {
33
- "type": "any",
34
- "isRequired": false
46
+ "description": "Callback triggered when row selection changes; receives array of selected row data",
47
+ "isRequired": false,
48
+ "type": "(selectedRows: TData[]) => void"
35
49
  },
36
50
  "paginationConfig": {
37
- "type": "any",
38
- "isRequired": false
51
+ "description": "Passed through to Pagination, plus a placement for the controls, which sit on the right by default. pageSize also sets the initial page size, which is 10 otherwise. Changing this object resets the table to the first page",
52
+ "isRequired": false,
53
+ "type": "Partial<PaginationProps> & { placement?: \"left\" | \"center\" | \"right\" }"
39
54
  },
40
55
  "shouldPinSelectRowToLeft": {
41
- "type": "any",
42
- "isRequired": false
56
+ "defaultValue": true,
57
+ "description": "Pins the row selection column to the left/right side of the table",
58
+ "isRequired": false,
59
+ "type": "boolean"
43
60
  },
44
61
  "sdsStyle": {
45
- "type": "any",
46
- "isRequired": false
62
+ "defaultValue": "lined",
63
+ "description": "Whether rows are separated by dividers or by alternating backgrounds",
64
+ "isRequired": false,
65
+ "type": "\"lined\" | \"striped\""
47
66
  },
48
67
  "tableOptions": {
49
- "type": "any",
50
- "isRequired": false
68
+ "description": "Escape hatch to the underlying TanStack table. Anything here is merged into its options, and a state you supply overrides the one the component keeps, which is how you drive sorting or pagination from outside. The row models and change handlers are always the component's own",
69
+ "isRequired": false,
70
+ "type": "Partial<Omit<TableOptions<TData>, \"data\" | \"columns\" | \"getCoreRowModel\">>"
51
71
  },
52
72
  "tableRowProps": {
53
- "type": "any",
54
- "isRequired": false
73
+ "description": "Additional props to pass to each table row component",
74
+ "isRequired": false,
75
+ "type": "Partial<TableRowProps>"
76
+ },
77
+ "data": {
78
+ "description": "Array of data objects to display in the table rows",
79
+ "isRequired": false,
80
+ "type": "TData[]"
81
+ },
82
+ "className": {
83
+ "description": "CSS class name to apply to the table container",
84
+ "isRequired": false,
85
+ "type": "string"
86
+ },
87
+ "style": {
88
+ "description": "Inline styles to apply to the table container",
89
+ "isRequired": false,
90
+ "type": "React.CSSProperties"
91
+ },
92
+ "tableWidth": {
93
+ "defaultValue": "100%",
94
+ "description": "Sets the width of the table container",
95
+ "isRequired": false,
96
+ "type": "string"
97
+ },
98
+ "pinning": {
99
+ "description": "Sticks the column to that edge while the table scrolls sideways, with a gradient at the edge once there is something hidden behind it",
100
+ "isRequired": false,
101
+ "type": "\"left\" | \"right\""
102
+ },
103
+ "verticalAlign": {
104
+ "description": "Vertical alignment of the column's cells",
105
+ "isRequired": false,
106
+ "type": "\"top\" | \"middle\" | \"bottom\""
107
+ },
108
+ "widthPercentage": {
109
+ "description": "The column's share of the table width, as a percentage rather than a fixed size",
110
+ "isRequired": false,
111
+ "type": "number"
112
+ },
113
+ "isGrow": {
114
+ "description": "Lets this column absorb whatever width the others leave over",
115
+ "isRequired": false,
116
+ "type": "boolean"
117
+ },
118
+ "headerCellProps": {
119
+ "description": "Props for the CellHeader generated from a string header, for tooltips, alignment or truncation",
120
+ "isRequired": false,
121
+ "type": "Partial<CellHeaderProps>"
122
+ },
123
+ "filterComponent": {
124
+ "description": "Replaces the default search input in this column's filter cell, for a select or a range instead",
125
+ "isRequired": false,
126
+ "type": "(props: { column: Column<TData>; table: Table<TData> }) => React.ReactNode"
55
127
  }
56
128
  }
57
129
  }
58
- }
130
+ }
@@ -2,9 +2,48 @@
2
2
  "SegmentedControl": {
3
3
  "props": {
4
4
  "buttonDefinition": {
5
- "type": "SingleButtonDefinition[]",
6
- "isRequired": true
5
+ "defaultValue": "- (required)",
6
+ "description": "One entry per segment, in the order they appear. The shape is described in the table below.",
7
+ "isRequired": true,
8
+ "type": "SingleButtonDefinition[]"
9
+ },
10
+ "onChange": {
11
+ "description": "Callback fired when the value changes.\n@param event The event source of the callback.\n@param value of the selected buttons. When `exclusive` is true\nthis is a single value; when false an array of selected values. If no value\nis selected and `exclusive` is true the value is null; when false an empty array.",
12
+ "isRequired": false,
13
+ "type": "function"
14
+ },
15
+ "aria-label": {
16
+ "defaultValue": "Segmented Control",
17
+ "description": "Defines a string value that labels the current element.\n@see aria-labelledby.",
18
+ "isRequired": false,
19
+ "type": "string"
20
+ },
21
+ "icon": {
22
+ "description": "An SDS icon name, drawn at the small size, or an SVG element of your own for artwork SDS does not carry. Size an element you pass to 16px and fill it with currentColor so it follows the selection.",
23
+ "isRequired": false,
24
+ "type": "keyof IconNameToSizes | React.ReactElement"
25
+ },
26
+ "label": {
27
+ "description": "Text for the segment, used instead of an icon. It becomes the segment's accessible name and the tooltip's fallback text.",
28
+ "isRequired": false,
29
+ "type": "string"
30
+ },
31
+ "shouldShowTooltip": {
32
+ "defaultValue": true,
33
+ "description": "Whether the segment has a tooltip. Worth turning off for a labelled segment, whose tooltip would only repeat the label.",
34
+ "isRequired": false,
35
+ "type": "boolean"
36
+ },
37
+ "tooltipProps": {
38
+ "description": "Passed to the segment's Tooltip, so it takes a title, a subtitle, a placement, and the rest of the Tooltip API. Without a title, the tooltip falls back to the label or the value. Note that the title is not used as the segment's accessible name.",
39
+ "isRequired": false,
40
+ "type": "Partial<Omit<TooltipProps, \"children\">>"
41
+ },
42
+ "tooltipText": {
43
+ "description": "Deprecated in favour of tooltipProps, and logs a warning. It sets the tooltip's title, overriding tooltipProps.title when both are given, and it is the one tooltip prop that also sets the segment's accessible name.",
44
+ "isRequired": false,
45
+ "type": "string"
7
46
  }
8
47
  }
9
48
  }
10
- }
49
+ }
@@ -2,94 +2,168 @@
2
2
  "StackedBarChart": {
3
3
  "props": {
4
4
  "badge": {
5
- "type": "string",
5
+ "defaultValue": "the selection count",
6
+ "description": "Overrides the badge text, which otherwise counts the data and the selection\n(\"7\", or \"3 of 7\").",
6
7
  "isRequired": false,
7
- "description": "Badge text to display next to the title\nIf not provided, defaults to showing item count based on selection:\n- No selection: total count (e.g., \"5\")\n- Partial selection: selected count (e.g., \"3 of 5\")\n- All selected: \"All\""
8
+ "type": "string"
8
9
  },
9
10
  "hideBadge": {
10
- "type": "\"false\" | \"true\"",
11
+ "defaultValue": false,
12
+ "description": "Removes the badge, leaving the title on its own.",
11
13
  "isRequired": false,
12
- "description": "Hide the badge when true",
13
- "defaultValue": false
14
+ "type": "boolean"
14
15
  },
15
16
  "barHeight": {
16
- "type": "number",
17
+ "defaultValue": 16,
18
+ "description": "Height of the bar in pixels. Values below 1 are clamped to 1, so the bar\ncannot disappear.",
17
19
  "isRequired": false,
18
- "description": "Height of the bar in pixels (minimum 1px)",
19
- "defaultValue": 16
20
+ "type": "number"
20
21
  },
21
22
  "data": {
22
- "type": "StackedBarChartDataItem[]",
23
+ "defaultValue": "- (required)",
24
+ "description": "The segments, in the order they are drawn.",
23
25
  "isRequired": true,
24
- "description": "Array of data items to display in the stacked bar"
26
+ "type": "StackedBarChartDataItem[]"
25
27
  },
26
28
  "maxAmount": {
27
- "type": "number",
29
+ "defaultValue": "sum of values",
30
+ "description": "Cumulative mode only. The value the full bar represents. Any difference\nbetween it and the sum of the data is drawn as the Remaining segment.",
28
31
  "isRequired": false,
29
- "description": "Maximum amount for the bar (used only in \"cumulative\" mode)\nIf not provided, defaults to sum of all values (no remaining segment)\nIf provided and sum < maxAmount, shows gray \"remaining\" segment"
32
+ "type": "number"
30
33
  },
31
34
  "mode": {
32
- "type": "\"proportional\" | \"cumulative\"",
35
+ "defaultValue": "proportional",
36
+ "description": "Whether the bar shows a breakdown of the data (segments always fill it) or\nprogress towards maxAmount.",
33
37
  "isRequired": false,
34
- "description": "Chart mode - controls how segments are calculated\n- \"proportional\": Segments fill entire bar (100%), proportional to their values\n- \"cumulative\": Segments sized based on actual values relative to maxAmount",
35
- "defaultValue": "proportional"
38
+ "type": "\"proportional\" | \"cumulative\""
36
39
  },
37
40
  "legendValueFormat": {
38
- "type": "\"percentage\" | \"count\"",
41
+ "defaultValue": "percentage",
42
+ "description": "\"percentage\" shows the segment's share of the bar, rounded. \"count\" shows\nthe raw value followed by the item's unit, or the chart's unit if the item\nhas none.",
39
43
  "isRequired": false,
40
- "description": "Format for legend values\n- \"percentage\": Shows percentage of the item in the bar chart (e.g., \"20%\")\n- \"count\": Shows the count from the data object with the unit defined by the unit prop",
41
- "defaultValue": "percentage"
44
+ "type": "\"count\" | \"percentage\""
42
45
  },
43
46
  "selectionBehavior": {
44
- "type": "\"dim\" | \"hide\"",
47
+ "defaultValue": "dim",
48
+ "description": "What a selection does to the unselected segments: fade them to 20% opacity,\nor drop them from the bar and let the rest take the space.",
45
49
  "isRequired": false,
46
- "description": "Behavior to apply when items are selected\n- \"dim\": Non-selected segments become semi-transparent (20% opacity)\n- \"hide\": Non-selected segments are hidden from the bar chart",
47
- "defaultValue": "dim"
50
+ "type": "\"dim\" | \"hide\""
48
51
  },
49
52
  "remainingLabel": {
50
- "type": "string",
53
+ "defaultValue": "Remaining",
54
+ "description": "Name of the grey gap segment in cumulative mode.",
51
55
  "isRequired": false,
52
- "description": "Label for the remaining/unknown segment in cumulative mode",
53
- "defaultValue": "Remaining"
56
+ "type": "string"
54
57
  },
55
58
  "remainingUnit": {
56
- "type": "string",
59
+ "defaultValue": "the charts unit",
60
+ "description": "A unit for the Remaining segment's value alone.",
57
61
  "isRequired": false,
58
- "description": "Unit to display with the remaining segment value in cumulative mode\nIf not provided, uses the unit from the first data item (if available)"
62
+ "type": "string"
59
63
  },
60
64
  "showLegend": {
61
- "type": "\"false\" | \"true\"",
65
+ "defaultValue": true,
66
+ "description": "Draws the legend below the bar. It is the only place segment names appear,\nand the only part of the chart a keyboard can reach.",
62
67
  "isRequired": false,
63
- "description": "Whether to show the legend below the chart",
64
- "defaultValue": true
68
+ "type": "boolean"
65
69
  },
66
70
  "showLegendValues": {
67
- "type": "\"false\" | \"true\"",
71
+ "defaultValue": true,
72
+ "description": "Shows each item's value beside its name in the legend.",
68
73
  "isRequired": false,
69
- "description": "Whether to show percentage values in the legend",
70
- "defaultValue": true
74
+ "type": "boolean"
71
75
  },
72
76
  "title": {
73
- "type": "string",
77
+ "description": "A heading above the bar. It is also what makes room for the badge; with no\ntitle, no badge is drawn.",
74
78
  "isRequired": false,
75
- "description": "Title to display above the chart"
79
+ "type": "string"
76
80
  },
77
81
  "unit": {
78
- "type": "string",
82
+ "description": "The unit appended to counted values, for items that do not carry one of\ntheir own.",
79
83
  "isRequired": false,
80
- "description": "Global unit to display with values in cumulative mode (e.g., \"GB\", \"datasets\", \"K\")\nIndividual data items can override this with their own unit property\nOnly shown when mode is \"cumulative\""
84
+ "type": "string"
81
85
  },
82
86
  "width": {
83
- "type": "\"string\" | \"number\"",
87
+ "defaultValue": "100%",
88
+ "description": "Any CSS width; a number is read as pixels. It sets the width of the whole\nchart, legend included.",
84
89
  "isRequired": false,
85
- "description": "Width of the chart - accepts any CSS width value (e.g., \"100%\", \"20vw\", \"300px\", or number for pixels)",
86
- "defaultValue": "100%"
90
+ "type": "string | number"
87
91
  },
88
92
  "colorGeneratorOptions": {
89
- "type": "DiscreteColorGeneratorOptions",
93
+ "description": "Tunes the generated palette (start hue, rotations, lightness range, gamma).\nItems with their own color are untouched by it.",
90
94
  "isRequired": false,
91
- "description": "Options for the color generator"
95
+ "type": "DiscreteColorGeneratorOptions"
96
+ },
97
+ "selectedIndices": {
98
+ "defaultValue": [],
99
+ "description": "Indices into data that are currently selected. The chart is controlled: it\ndraws this and never changes it.",
100
+ "isRequired": false,
101
+ "type": "number[]"
102
+ },
103
+ "onSelectionChange": {
104
+ "description": "Called with the next selection when a segment or legend item is clicked.\nWithout it, clicking selects nothing.",
105
+ "isRequired": false,
106
+ "type": "(selectedIndices: number[], selectedData: StackedBarChartDataItem[]) => void"
107
+ },
108
+ "onSegmentClick": {
109
+ "description": "Fires on a segment click, alongside any selection change rather than\ninstead of it.",
110
+ "isRequired": false,
111
+ "type": "(item: StackedBarChartDataItem, index: number) => void"
112
+ },
113
+ "onLegendItemClick": {
114
+ "description": "The same, for a click on a legend item.",
115
+ "isRequired": false,
116
+ "type": "(item: StackedBarChartDataItem, index: number) => void"
117
+ },
118
+ "onSegmentMouseEnter": {
119
+ "description": "Called when the pointer enters a segment. The chart already syncs its own\nhover highlight between bar and legend, so this is for driving something\noutside it.",
120
+ "isRequired": false,
121
+ "type": "(item: StackedBarChartDataItem, index: number) => void"
122
+ },
123
+ "onSegmentMouseLeave": {
124
+ "description": "Called when the pointer leaves a segment.",
125
+ "isRequired": false,
126
+ "type": "(item: StackedBarChartDataItem, index: number) => void"
127
+ },
128
+ "onLegendItemMouseEnter": {
129
+ "description": "Called when the pointer enters a legend item.",
130
+ "isRequired": false,
131
+ "type": "(item: StackedBarChartDataItem, index: number) => void"
132
+ },
133
+ "onLegendItemMouseLeave": {
134
+ "description": "Called when the pointer leaves a legend item.",
135
+ "isRequired": false,
136
+ "type": "(item: StackedBarChartDataItem, index: number) => void"
137
+ },
138
+ "name": {
139
+ "defaultValue": "- (required)",
140
+ "description": "The segment's label in the legend, and the key the animations track it by. Must be unique within the chart.",
141
+ "isRequired": false,
142
+ "type": "string"
143
+ },
144
+ "value": {
145
+ "defaultValue": "- (required)",
146
+ "description": "The quantity the segment stands for.",
147
+ "isRequired": false,
148
+ "type": "number"
149
+ },
150
+ "color": {
151
+ "defaultValue": "generated",
152
+ "description": "Any CSS color. Without it the segment takes a generated palette color, which can shift as categories come and go.",
153
+ "isRequired": false,
154
+ "type": "string"
155
+ },
156
+ "disabled": {
157
+ "defaultValue": false,
158
+ "description": "Takes the segment and its legend item out of every interaction: no hover, no tooltip, no selection.",
159
+ "isRequired": false,
160
+ "type": "boolean"
161
+ },
162
+ "tooltip": {
163
+ "description": "Content for a TooltipTable shown above the segment on hover. Use it for the breakdown behind the number; a segment without it has no tooltip.",
164
+ "isRequired": false,
165
+ "type": "TooltipTableContentProps"
92
166
  }
93
167
  }
94
168
  }
95
- }
169
+ }
@@ -2,41 +2,60 @@
2
2
  "TableRow": {
3
3
  "props": {
4
4
  "disabled": {
5
- "type": "\"false\" | \"true\"",
6
- "isRequired": false
5
+ "defaultValue": false,
6
+ "description": "Grays the row out and stops pointer events inside its CellComponents, so controls in the row cannot be used. Tags and icons in the row are dimmed to match.",
7
+ "isRequired": false,
8
+ "type": "boolean"
7
9
  },
8
10
  "hover": {
9
- "type": "\"false\" | \"true\"",
10
- "isRequired": false
11
+ "defaultValue": true,
12
+ "description": "Gives the row a hover background, and is also required for its tooltip to appear. TableHeader sets it to false for the header row.",
13
+ "isRequired": false,
14
+ "type": "boolean"
11
15
  },
12
16
  "rowHeight": {
13
- "type": "number",
14
- "isRequired": false
17
+ "description": "Caps the row's height, in pixels.",
18
+ "isRequired": false,
19
+ "type": "number"
15
20
  },
16
21
  "selected": {
17
- "type": "\"false\" | \"true\"",
18
- "isRequired": false
22
+ "defaultValue": false,
23
+ "description": "Gives the row's cells the accent surface used for selection. It is styling only; it sets no ARIA state.",
24
+ "isRequired": false,
25
+ "type": "boolean"
19
26
  },
20
27
  "shouldShowTooltipOnHover": {
21
- "type": "\"false\" | \"true\"",
22
- "isRequired": false
28
+ "defaultValue": true,
29
+ "description": "Wraps the row in a Tooltip, but only while hover is also true. On its own it shows nothing: a row tooltip needs tooltipText as well.",
30
+ "isRequired": false,
31
+ "type": "boolean"
23
32
  },
24
33
  "tooltipProps": {
25
- "type": "TooltipProps",
26
- "isRequired": false
34
+ "description": "Passed to the Tooltip, and overrides the defaults the row sets (arrow, dark style).",
35
+ "isRequired": false,
36
+ "type": "TooltipProps"
27
37
  },
28
38
  "tooltipSubtitle": {
29
- "type": "string",
30
- "isRequired": false
39
+ "description": "A second line below the tooltip's title.",
40
+ "isRequired": false,
41
+ "type": "string"
31
42
  },
32
43
  "tooltipText": {
33
- "type": "string",
34
- "isRequired": false
44
+ "description": "The tooltip's title.",
45
+ "isRequired": false,
46
+ "type": "string"
35
47
  },
36
48
  "useDivider": {
37
- "type": "\"false\" | \"true\"",
38
- "isRequired": false
49
+ "defaultValue": true,
50
+ "description": "Draws the 1px divider along the bottom of the row.",
51
+ "isRequired": false,
52
+ "type": "boolean"
53
+ },
54
+ "children": {
55
+ "description": "Required. The row's cells.",
56
+ "isRequired": false,
57
+ "type": "React.ReactNode"
39
58
  }
40
59
  }
41
60
  }
42
- }
61
+ }
@@ -1,18 +1,75 @@
1
1
  {
2
2
  "Tabs": {
3
3
  "props": {
4
- "items": {
5
- "type": "any",
6
- "isRequired": false
7
- },
8
4
  "sdsSize": {
9
- "type": "any",
10
- "isRequired": false
5
+ "defaultValue": "large",
6
+ "description": "The size of the label text on every tab in the group, and the spacing around the group.",
7
+ "isRequired": false,
8
+ "type": "\"large\" | \"small\""
11
9
  },
12
10
  "underlined": {
13
- "type": "any",
14
- "isRequired": false
11
+ "defaultValue": false,
12
+ "description": "Draws a divider along the full width of the group, below the tabs; the selected tab's indicator sits on top of it.",
13
+ "isRequired": false,
14
+ "type": "boolean"
15
+ },
16
+ "selectionFollowsFocus": {
17
+ "defaultValue": false,
18
+ "description": "MUI's prop for selecting a tab as soon as the arrow keys reach it, instead of waiting for Space or Enter.",
19
+ "isRequired": false,
20
+ "type": "boolean"
21
+ }
22
+ }
23
+ },
24
+ "Tab": {
25
+ "props": {
26
+ "children": {
27
+ "defaultValue": "- (required)",
28
+ "description": "This prop isn't supported.\nUse the `component` prop if you need to change the children structure.",
29
+ "isRequired": false,
30
+ "type": "null"
31
+ },
32
+ "onChange": {
33
+ "description": "Runs when a tab is selected, with that tab's value. Write it back to value, or the group will keep showing the same tab.",
34
+ "isRequired": false,
35
+ "type": "FormEventHandler<HTMLDivElement>"
36
+ },
37
+ "aria-label": {
38
+ "description": "Defines a string value that labels the current element.\n@see aria-labelledby.",
39
+ "isRequired": false,
40
+ "type": "string"
41
+ },
42
+ "label": {
43
+ "description": "The label element.",
44
+ "isRequired": false,
45
+ "type": "ReactNode"
46
+ },
47
+ "count": {
48
+ "description": "A value drawn after the label: a number, a string, or a component. 0 is drawn rather than dropped, and whatever renders joins the tab's accessible name.",
49
+ "isRequired": false,
50
+ "type": "ReactNode"
51
+ },
52
+ "disabled": {
53
+ "defaultValue": false,
54
+ "description": "If `true`, the component is disabled.",
55
+ "isRequired": false,
56
+ "type": "boolean"
57
+ },
58
+ "id": {
59
+ "description": "The tab's id, for a panel's aria-labelledby to point at. Not generated for you.",
60
+ "isRequired": false,
61
+ "type": "string"
62
+ },
63
+ "aria-controls": {
64
+ "description": "Identifies the element (or elements) whose contents or presence are controlled by the current element.\n@see aria-owns.",
65
+ "isRequired": false,
66
+ "type": "string"
67
+ },
68
+ "selected": {
69
+ "description": "Set by the group from its value, and used to draw the label in semibold. Not something to pass yourself.",
70
+ "isRequired": false,
71
+ "type": "boolean"
15
72
  }
16
73
  }
17
74
  }
18
- }
75
+ }