@itwin/itwinui-react 1.48.0 → 2.0.0-dev.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 (267) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/README.md +4 -22
  3. package/cjs/core/Alert/Alert.d.ts +7 -6
  4. package/cjs/core/Alert/Alert.js +12 -7
  5. package/cjs/core/Avatar/Avatar.d.ts +69 -0
  6. package/cjs/core/{UserIcon/UserIcon.js → Avatar/Avatar.js} +15 -11
  7. package/cjs/core/Avatar/index.d.ts +4 -0
  8. package/cjs/core/{UserIcon → Avatar}/index.js +5 -4
  9. package/cjs/core/AvatarGroup/AvatarGroup.d.ts +70 -0
  10. package/cjs/core/{UserIconGroup/UserIconGroup.js → AvatarGroup/AvatarGroup.js} +23 -19
  11. package/cjs/core/AvatarGroup/index.d.ts +4 -0
  12. package/cjs/core/{UserIconGroup → AvatarGroup}/index.js +5 -4
  13. package/cjs/core/Badge/Badge.js +2 -4
  14. package/cjs/core/ButtonGroup/ButtonGroup.d.ts +1 -1
  15. package/cjs/core/Buttons/Button/Button.js +5 -14
  16. package/cjs/core/Buttons/DropdownButton/DropdownButton.js +1 -1
  17. package/cjs/core/Buttons/IconButton/IconButton.js +3 -9
  18. package/cjs/core/Buttons/IdeasButton/IdeasButton.js +1 -1
  19. package/cjs/core/Buttons/SplitButton/SplitButton.js +4 -6
  20. package/cjs/core/Checkbox/Checkbox.d.ts +1 -29
  21. package/cjs/core/Checkbox/Checkbox.js +3 -3
  22. package/cjs/core/ColorPicker/ColorBuilder.js +16 -27
  23. package/cjs/core/ColorPicker/ColorSwatch.d.ts +1 -1
  24. package/cjs/core/ColorPicker/ColorSwatch.js +1 -6
  25. package/cjs/core/ComboBox/ComboBoxDropdown.d.ts +1 -1
  26. package/cjs/core/ComboBox/ComboBoxMenu.js +2 -4
  27. package/cjs/core/Dialog/Dialog.d.ts +4 -4
  28. package/cjs/core/Dialog/Dialog.js +1 -1
  29. package/cjs/core/Dialog/DialogBackdrop.d.ts +1 -1
  30. package/cjs/core/Dialog/DialogBackdrop.js +5 -2
  31. package/cjs/core/Dialog/DialogMain.d.ts +1 -1
  32. package/cjs/core/Dialog/DialogMain.js +7 -1
  33. package/cjs/core/Dialog/DialogTitleBar.d.ts +1 -1
  34. package/cjs/core/ExpandableBlock/ExpandableBlock.js +4 -4
  35. package/cjs/core/Header/Header.d.ts +16 -6
  36. package/cjs/core/Header/Header.js +7 -9
  37. package/cjs/core/Header/HeaderBasicButton.d.ts +6 -0
  38. package/cjs/core/Header/HeaderBasicButton.js +52 -0
  39. package/cjs/core/Header/HeaderBreadcrumbs.js +6 -4
  40. package/cjs/core/Header/HeaderButton.d.ts +3 -2
  41. package/cjs/core/Header/HeaderButton.js +10 -18
  42. package/cjs/core/Header/HeaderDropdownButton.d.ts +6 -0
  43. package/cjs/core/Header/HeaderDropdownButton.js +56 -0
  44. package/cjs/core/Header/HeaderLogo.js +3 -3
  45. package/cjs/core/Header/HeaderSplitButton.d.ts +6 -0
  46. package/cjs/core/Header/HeaderSplitButton.js +56 -0
  47. package/cjs/core/Input/Input.d.ts +1 -1
  48. package/cjs/core/Input/Input.js +3 -4
  49. package/cjs/core/InputGroup/InputGroup.d.ts +1 -1
  50. package/cjs/core/InputGroup/InputGroup.js +1 -1
  51. package/cjs/core/Label/Label.d.ts +1 -1
  52. package/cjs/core/Label/Label.js +1 -1
  53. package/cjs/core/LabeledInput/LabeledInput.d.ts +2 -2
  54. package/cjs/core/LabeledInput/LabeledInput.js +1 -1
  55. package/cjs/core/LabeledSelect/LabeledSelect.d.ts +1 -1
  56. package/cjs/core/LabeledSelect/LabeledSelect.js +1 -1
  57. package/cjs/core/LabeledTextarea/LabeledTextarea.d.ts +1 -1
  58. package/cjs/core/LabeledTextarea/LabeledTextarea.js +1 -1
  59. package/cjs/core/Radio/Radio.d.ts +1 -29
  60. package/cjs/core/Radio/Radio.js +3 -3
  61. package/cjs/core/RadioTiles/RadioTileGroup.d.ts +1 -1
  62. package/cjs/core/RadioTiles/RadioTileGroup.js +1 -1
  63. package/cjs/core/Select/Select.d.ts +1 -1
  64. package/cjs/core/Select/Select.js +9 -12
  65. package/cjs/core/Select/SelectTag.d.ts +1 -1
  66. package/cjs/core/Select/SelectTag.js +1 -1
  67. package/cjs/core/SideNavigation/SidenavButton.js +1 -2
  68. package/cjs/core/Stepper/Stepper.d.ts +40 -0
  69. package/cjs/core/{Wizard/Wizard.js → Stepper/Stepper.js} +11 -28
  70. package/cjs/core/{Wizard/Step.d.ts → Stepper/StepperStep.d.ts} +6 -7
  71. package/cjs/core/{Wizard/Step.js → Stepper/StepperStep.js} +10 -10
  72. package/cjs/core/Stepper/Wizard.d.ts +46 -0
  73. package/cjs/core/Stepper/Wizard.js +55 -0
  74. package/cjs/core/Stepper/WorkflowDiagram.d.ts +6 -0
  75. package/cjs/core/Stepper/WorkflowDiagram.js +43 -0
  76. package/cjs/core/Stepper/WorkflowDiagramStep.d.ts +5 -0
  77. package/cjs/core/Stepper/WorkflowDiagramStep.js +42 -0
  78. package/cjs/core/Stepper/index.d.ts +8 -0
  79. package/cjs/core/{Wizard → Stepper}/index.js +5 -1
  80. package/cjs/core/Surface/Surface.js +2 -4
  81. package/cjs/core/Table/SubRowExpander.js +1 -1
  82. package/cjs/core/Table/Table.d.ts +5 -4
  83. package/cjs/core/Table/Table.js +30 -21
  84. package/cjs/core/Table/TableCell.js +4 -4
  85. package/cjs/core/Table/TablePaginator.js +14 -15
  86. package/cjs/core/Table/TableRowMemoized.d.ts +2 -0
  87. package/cjs/core/Table/TableRowMemoized.js +10 -13
  88. package/cjs/core/Table/cells/DefaultCell.js +4 -9
  89. package/cjs/core/Table/columns/actionColumn.js +1 -1
  90. package/cjs/core/Table/columns/expanderColumn.js +1 -1
  91. package/cjs/core/Table/filters/BaseFilter.js +1 -1
  92. package/cjs/core/Table/filters/FilterToggle.js +1 -1
  93. package/cjs/core/Table/hooks/useColumnDragAndDrop.js +4 -4
  94. package/cjs/core/Table/hooks/useResizeColumns.js +110 -106
  95. package/cjs/core/Tabs/Tab.d.ts +0 -8
  96. package/cjs/core/Tabs/Tab.js +1 -5
  97. package/cjs/core/Tabs/Tabs.js +8 -11
  98. package/cjs/core/Tabs/index.d.ts +2 -2
  99. package/cjs/core/Tabs/index.js +1 -2
  100. package/cjs/core/Textarea/Textarea.d.ts +1 -1
  101. package/cjs/core/Textarea/Textarea.js +2 -2
  102. package/cjs/core/ThemeProvider/ThemeProvider.d.ts +27 -17
  103. package/cjs/core/ThemeProvider/ThemeProvider.js +64 -7
  104. package/cjs/core/Tile/Tile.d.ts +19 -1
  105. package/cjs/core/Tile/Tile.js +35 -12
  106. package/cjs/core/Toast/Toast.d.ts +3 -3
  107. package/cjs/core/Toast/Toast.js +3 -3
  108. package/cjs/core/Toast/ToastWrapper.d.ts +1 -1
  109. package/cjs/core/Toast/ToastWrapper.js +1 -1
  110. package/cjs/core/Tree/TreeNode.js +1 -7
  111. package/cjs/core/index.d.ts +8 -8
  112. package/cjs/core/index.js +13 -10
  113. package/cjs/core/utils/components/Popover.d.ts +2 -2
  114. package/cjs/core/utils/components/Popover.js +1 -1
  115. package/cjs/core/utils/components/Resizer.d.ts +5 -0
  116. package/cjs/core/utils/components/Resizer.js +7 -1
  117. package/cjs/core/utils/components/VisuallyHidden.d.ts +1 -0
  118. package/cjs/core/utils/components/VisuallyHidden.js +1 -0
  119. package/cjs/core/utils/functions/colors.d.ts +1 -1
  120. package/cjs/core/utils/functions/colors.js +1 -1
  121. package/cjs/core/utils/functions/dom.js +1 -0
  122. package/cjs/core/utils/hooks/index.d.ts +1 -0
  123. package/cjs/core/utils/hooks/index.js +1 -0
  124. package/cjs/core/utils/hooks/useIsomorphicLayoutEffect.d.ts +7 -0
  125. package/cjs/core/utils/hooks/useIsomorphicLayoutEffect.js +17 -0
  126. package/cjs/core/utils/hooks/useMediaQuery.js +2 -1
  127. package/cjs/core/utils/hooks/useTheme.d.ts +20 -3
  128. package/cjs/core/utils/hooks/useTheme.js +57 -58
  129. package/esm/core/Alert/Alert.d.ts +7 -6
  130. package/esm/core/Alert/Alert.js +12 -7
  131. package/esm/core/Avatar/Avatar.d.ts +69 -0
  132. package/esm/core/{UserIcon/UserIcon.js → Avatar/Avatar.js} +13 -9
  133. package/esm/core/Avatar/index.d.ts +4 -0
  134. package/esm/core/{UserIcon → Avatar}/index.js +2 -2
  135. package/esm/core/AvatarGroup/AvatarGroup.d.ts +70 -0
  136. package/esm/core/{UserIconGroup/UserIconGroup.js → AvatarGroup/AvatarGroup.js} +21 -17
  137. package/esm/core/AvatarGroup/index.d.ts +4 -0
  138. package/esm/core/{UserIconGroup → AvatarGroup}/index.js +2 -2
  139. package/esm/core/Badge/Badge.js +3 -5
  140. package/esm/core/ButtonGroup/ButtonGroup.d.ts +1 -1
  141. package/esm/core/Buttons/Button/Button.js +5 -14
  142. package/esm/core/Buttons/DropdownButton/DropdownButton.js +1 -1
  143. package/esm/core/Buttons/IconButton/IconButton.js +3 -9
  144. package/esm/core/Buttons/IdeasButton/IdeasButton.js +1 -1
  145. package/esm/core/Buttons/SplitButton/SplitButton.js +4 -6
  146. package/esm/core/Checkbox/Checkbox.d.ts +1 -29
  147. package/esm/core/Checkbox/Checkbox.js +3 -3
  148. package/esm/core/ColorPicker/ColorBuilder.js +17 -28
  149. package/esm/core/ColorPicker/ColorSwatch.d.ts +1 -1
  150. package/esm/core/ColorPicker/ColorSwatch.js +2 -7
  151. package/esm/core/ComboBox/ComboBoxDropdown.d.ts +1 -1
  152. package/esm/core/ComboBox/ComboBoxMenu.js +2 -4
  153. package/esm/core/Dialog/Dialog.d.ts +4 -4
  154. package/esm/core/Dialog/Dialog.js +1 -1
  155. package/esm/core/Dialog/DialogBackdrop.d.ts +1 -1
  156. package/esm/core/Dialog/DialogBackdrop.js +5 -2
  157. package/esm/core/Dialog/DialogMain.d.ts +1 -1
  158. package/esm/core/Dialog/DialogMain.js +7 -1
  159. package/esm/core/Dialog/DialogTitleBar.d.ts +1 -1
  160. package/esm/core/ExpandableBlock/ExpandableBlock.js +4 -4
  161. package/esm/core/Header/Header.d.ts +16 -6
  162. package/esm/core/Header/Header.js +7 -9
  163. package/esm/core/Header/HeaderBasicButton.d.ts +6 -0
  164. package/esm/core/Header/HeaderBasicButton.js +46 -0
  165. package/esm/core/Header/HeaderBreadcrumbs.js +6 -4
  166. package/esm/core/Header/HeaderButton.d.ts +3 -2
  167. package/esm/core/Header/HeaderButton.js +10 -18
  168. package/esm/core/Header/HeaderDropdownButton.d.ts +6 -0
  169. package/esm/core/Header/HeaderDropdownButton.js +50 -0
  170. package/esm/core/Header/HeaderLogo.js +3 -3
  171. package/esm/core/Header/HeaderSplitButton.d.ts +6 -0
  172. package/esm/core/Header/HeaderSplitButton.js +50 -0
  173. package/esm/core/Input/Input.d.ts +1 -1
  174. package/esm/core/Input/Input.js +3 -4
  175. package/esm/core/InputGroup/InputGroup.d.ts +1 -1
  176. package/esm/core/InputGroup/InputGroup.js +1 -1
  177. package/esm/core/Label/Label.d.ts +1 -1
  178. package/esm/core/Label/Label.js +1 -1
  179. package/esm/core/LabeledInput/LabeledInput.d.ts +2 -2
  180. package/esm/core/LabeledInput/LabeledInput.js +1 -1
  181. package/esm/core/LabeledSelect/LabeledSelect.d.ts +1 -1
  182. package/esm/core/LabeledSelect/LabeledSelect.js +1 -1
  183. package/esm/core/LabeledTextarea/LabeledTextarea.d.ts +1 -1
  184. package/esm/core/LabeledTextarea/LabeledTextarea.js +1 -1
  185. package/esm/core/Radio/Radio.d.ts +1 -29
  186. package/esm/core/Radio/Radio.js +3 -3
  187. package/esm/core/RadioTiles/RadioTileGroup.d.ts +1 -1
  188. package/esm/core/RadioTiles/RadioTileGroup.js +1 -1
  189. package/esm/core/Select/Select.d.ts +1 -1
  190. package/esm/core/Select/Select.js +9 -12
  191. package/esm/core/Select/SelectTag.d.ts +1 -1
  192. package/esm/core/Select/SelectTag.js +1 -1
  193. package/esm/core/SideNavigation/SidenavButton.js +1 -2
  194. package/esm/core/Stepper/Stepper.d.ts +40 -0
  195. package/esm/core/{Wizard/Wizard.js → Stepper/Stepper.js} +10 -27
  196. package/esm/core/{Wizard/Step.d.ts → Stepper/StepperStep.d.ts} +6 -7
  197. package/esm/core/{Wizard/Step.js → Stepper/StepperStep.js} +8 -8
  198. package/esm/core/Stepper/Wizard.d.ts +46 -0
  199. package/esm/core/Stepper/Wizard.js +49 -0
  200. package/esm/core/Stepper/WorkflowDiagram.d.ts +6 -0
  201. package/esm/core/Stepper/WorkflowDiagram.js +37 -0
  202. package/esm/core/Stepper/WorkflowDiagramStep.d.ts +5 -0
  203. package/esm/core/Stepper/WorkflowDiagramStep.js +35 -0
  204. package/esm/core/Stepper/index.d.ts +8 -0
  205. package/esm/core/{Wizard → Stepper}/index.js +2 -0
  206. package/esm/core/Surface/Surface.js +3 -5
  207. package/esm/core/Table/SubRowExpander.js +1 -1
  208. package/esm/core/Table/Table.d.ts +5 -4
  209. package/esm/core/Table/Table.js +30 -21
  210. package/esm/core/Table/TableCell.js +4 -4
  211. package/esm/core/Table/TablePaginator.js +14 -15
  212. package/esm/core/Table/TableRowMemoized.d.ts +2 -0
  213. package/esm/core/Table/TableRowMemoized.js +10 -13
  214. package/esm/core/Table/cells/DefaultCell.js +4 -9
  215. package/esm/core/Table/columns/actionColumn.js +1 -1
  216. package/esm/core/Table/columns/expanderColumn.js +1 -1
  217. package/esm/core/Table/filters/BaseFilter.js +1 -1
  218. package/esm/core/Table/filters/FilterToggle.js +1 -1
  219. package/esm/core/Table/hooks/useColumnDragAndDrop.js +4 -4
  220. package/esm/core/Table/hooks/useResizeColumns.js +110 -106
  221. package/esm/core/Tabs/Tab.d.ts +0 -8
  222. package/esm/core/Tabs/Tab.js +0 -4
  223. package/esm/core/Tabs/Tabs.js +9 -12
  224. package/esm/core/Tabs/index.d.ts +2 -2
  225. package/esm/core/Tabs/index.js +1 -1
  226. package/esm/core/Textarea/Textarea.d.ts +1 -1
  227. package/esm/core/Textarea/Textarea.js +2 -2
  228. package/esm/core/ThemeProvider/ThemeProvider.d.ts +27 -17
  229. package/esm/core/ThemeProvider/ThemeProvider.js +64 -6
  230. package/esm/core/Tile/Tile.d.ts +19 -1
  231. package/esm/core/Tile/Tile.js +36 -13
  232. package/esm/core/Toast/Toast.d.ts +3 -3
  233. package/esm/core/Toast/Toast.js +3 -3
  234. package/esm/core/Toast/ToastWrapper.d.ts +1 -1
  235. package/esm/core/Toast/ToastWrapper.js +1 -1
  236. package/esm/core/Tree/TreeNode.js +2 -8
  237. package/esm/core/index.d.ts +8 -8
  238. package/esm/core/index.js +4 -4
  239. package/esm/core/utils/components/Popover.d.ts +2 -2
  240. package/esm/core/utils/components/Popover.js +1 -1
  241. package/esm/core/utils/components/Resizer.d.ts +5 -0
  242. package/esm/core/utils/components/Resizer.js +7 -1
  243. package/esm/core/utils/components/VisuallyHidden.d.ts +1 -0
  244. package/esm/core/utils/components/VisuallyHidden.js +1 -0
  245. package/esm/core/utils/functions/colors.d.ts +1 -1
  246. package/esm/core/utils/functions/colors.js +1 -1
  247. package/esm/core/utils/functions/dom.js +1 -0
  248. package/esm/core/utils/hooks/index.d.ts +1 -0
  249. package/esm/core/utils/hooks/index.js +1 -0
  250. package/esm/core/utils/hooks/useIsomorphicLayoutEffect.d.ts +7 -0
  251. package/esm/core/utils/hooks/useIsomorphicLayoutEffect.js +11 -0
  252. package/esm/core/utils/hooks/useMediaQuery.js +2 -1
  253. package/esm/core/utils/hooks/useTheme.d.ts +20 -3
  254. package/esm/core/utils/hooks/useTheme.js +56 -57
  255. package/package.json +3 -2
  256. package/cjs/core/UserIcon/UserIcon.d.ts +0 -57
  257. package/cjs/core/UserIcon/index.d.ts +0 -4
  258. package/cjs/core/UserIconGroup/UserIconGroup.d.ts +0 -62
  259. package/cjs/core/UserIconGroup/index.d.ts +0 -4
  260. package/cjs/core/Wizard/Wizard.d.ts +0 -54
  261. package/cjs/core/Wizard/index.d.ts +0 -4
  262. package/esm/core/UserIcon/UserIcon.d.ts +0 -57
  263. package/esm/core/UserIcon/index.d.ts +0 -4
  264. package/esm/core/UserIconGroup/UserIconGroup.d.ts +0 -62
  265. package/esm/core/UserIconGroup/index.d.ts +0 -4
  266. package/esm/core/Wizard/Wizard.d.ts +0 -54
  267. package/esm/core/Wizard/index.d.ts +0 -4
@@ -32,9 +32,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
32
32
  exports.HeaderButton = void 0;
33
33
  var classnames_1 = __importDefault(require("classnames"));
34
34
  var react_1 = __importDefault(require("react"));
35
- var Buttons_1 = require("../Buttons");
36
35
  var utils_1 = require("../utils");
37
36
  require("@itwin/itwinui-css/css/header.css");
37
+ var HeaderSplitButton_1 = require("./HeaderSplitButton");
38
+ var HeaderDropdownButton_1 = require("./HeaderDropdownButton");
39
+ var HeaderBasicButton_1 = require("./HeaderBasicButton");
38
40
  var isSplitButton = function (props) {
39
41
  return !!props.menuItems && !!props.onClick;
40
42
  };
@@ -52,26 +54,16 @@ var isDropdownButton = function (props) {
52
54
  * <HeaderButton name='Project D' isActive />
53
55
  */
54
56
  exports.HeaderButton = react_1.default.forwardRef(function (props, ref) {
55
- var name = props.name, description = props.description, _a = props.isActive, isActive = _a === void 0 ? false : _a, className = props.className, startIcon = props.startIcon, menuItems = props.menuItems, rest = __rest(props, ["name", "description", "isActive", "className", "startIcon", "menuItems"]);
57
+ var name = props.name, description = props.description, _a = props.isActive, isActive = _a === void 0 ? false : _a, className = props.className, startIcon = props.startIcon, menuItems = props.menuItems, disabled = props.disabled, rest = __rest(props, ["name", "description", "isActive", "className", "startIcon", "menuItems", "disabled"]);
56
58
  (0, utils_1.useTheme)();
57
59
  var buttonProps = __assign(__assign({ startIcon: react_1.default.isValidElement(startIcon)
58
60
  ? react_1.default.cloneElement(startIcon, {
59
- className: (0, classnames_1.default)('iui-header-button-icon', startIcon.props.className),
61
+ className: (0, classnames_1.default)('iui-header-breadcrumb-button-icon', startIcon.props.className),
60
62
  })
61
- : undefined, styleType: 'borderless', className: (0, classnames_1.default)({
62
- 'iui-header-button': !isSplitButton(props),
63
- 'iui-header-split-button': isSplitButton(props),
64
- 'iui-header-dropdown-button': !isSplitButton(props) && isDropdownButton(props),
65
- 'iui-active': isActive,
66
- }, className), 'aria-current': isActive ? 'location' : undefined, children: (react_1.default.createElement(react_1.default.Fragment, null,
67
- react_1.default.createElement("div", null, name),
68
- description && react_1.default.createElement("div", { className: 'iui-description' }, description))), ref: ref }, (!!menuItems && { menuItems: menuItems })), rest);
69
- if (isSplitButton(buttonProps)) {
70
- return react_1.default.createElement(Buttons_1.SplitButton, __assign({}, buttonProps));
71
- }
72
- if (isDropdownButton(buttonProps)) {
73
- return react_1.default.createElement(Buttons_1.DropdownButton, __assign({}, buttonProps));
74
- }
75
- return react_1.default.createElement(Buttons_1.Button, __assign({}, buttonProps));
63
+ : undefined, className: className, children: (react_1.default.createElement("span", { className: 'iui-header-breadcrumb-button-text' },
64
+ react_1.default.createElement("span", { className: 'iui-header-breadcrumb-button-text-label' }, name),
65
+ description && (react_1.default.createElement("span", { className: 'iui-header-breadcrumb-button-text-sublabel' }, description)))), ref: ref, disabled: disabled }, (!!menuItems && { menuItems: menuItems })), rest);
66
+ var headerButton = isSplitButton(buttonProps) ? (react_1.default.createElement(HeaderSplitButton_1.HeaderSplitButton, __assign({}, buttonProps))) : isDropdownButton(buttonProps) ? (react_1.default.createElement(HeaderDropdownButton_1.HeaderDropdownButton, __assign({}, buttonProps))) : (react_1.default.createElement(HeaderBasicButton_1.HeaderBasicButton, __assign({}, buttonProps)));
67
+ return (react_1.default.createElement("li", { className: 'iui-header-breadcrumb-item', "aria-current": isActive ? 'location' : undefined, "aria-disabled": disabled ? 'true' : undefined }, headerButton));
76
68
  });
77
69
  exports.default = exports.HeaderButton;
@@ -0,0 +1,6 @@
1
+ import { PolymorphicForwardRefComponent } from '../utils';
2
+ import { DropdownButtonProps } from '../Buttons';
3
+ export declare type HeaderDropdownButtonProps = DropdownButtonProps;
4
+ declare type HeaderDropdownButtonComponent = PolymorphicForwardRefComponent<'button', HeaderDropdownButtonProps>;
5
+ export declare const HeaderDropdownButton: HeaderDropdownButtonComponent;
6
+ export default HeaderDropdownButton;
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __rest = (this && this.__rest) || function (s, e) {
14
+ var t = {};
15
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
16
+ t[p] = s[p];
17
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
18
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
19
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
20
+ t[p[i]] = s[p[i]];
21
+ }
22
+ return t;
23
+ };
24
+ var __importDefault = (this && this.__importDefault) || function (mod) {
25
+ return (mod && mod.__esModule) ? mod : { "default": mod };
26
+ };
27
+ Object.defineProperty(exports, "__esModule", { value: true });
28
+ exports.HeaderDropdownButton = void 0;
29
+ /*---------------------------------------------------------------------------------------------
30
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
31
+ * See LICENSE.md in the project root for license terms and full copyright notice.
32
+ *--------------------------------------------------------------------------------------------*/
33
+ var classnames_1 = __importDefault(require("classnames"));
34
+ var react_1 = __importDefault(require("react"));
35
+ var DropdownMenu_1 = require("../DropdownMenu");
36
+ var CaretDownSmall_1 = __importDefault(require("@itwin/itwinui-icons-react/cjs/icons/CaretDownSmall"));
37
+ var CaretUpSmall_1 = __importDefault(require("@itwin/itwinui-icons-react/cjs/icons/CaretUpSmall"));
38
+ var utils_1 = require("../utils");
39
+ var utils_2 = require("../utils");
40
+ var HeaderBasicButton_1 = require("./HeaderBasicButton");
41
+ exports.HeaderDropdownButton = react_1.default.forwardRef(function (props, ref) {
42
+ var menuItems = props.menuItems, className = props.className, children = props.children, rest = __rest(props, ["menuItems", "className", "children"]);
43
+ (0, utils_1.useTheme)();
44
+ var _a = react_1.default.useState(false), isMenuOpen = _a[0], setIsMenuOpen = _a[1];
45
+ var _b = react_1.default.useState(0), menuWidth = _b[0], setMenuWidth = _b[1];
46
+ var buttonRef = react_1.default.useRef(null);
47
+ var refs = (0, utils_2.useMergedRefs)(ref, buttonRef);
48
+ react_1.default.useEffect(function () {
49
+ if (buttonRef.current) {
50
+ setMenuWidth(buttonRef.current.offsetWidth);
51
+ }
52
+ }, [children]);
53
+ return (react_1.default.createElement(DropdownMenu_1.DropdownMenu, { menuItems: menuItems, style: { minWidth: menuWidth }, onShow: function () { return setIsMenuOpen(true); }, onHide: function () { return setIsMenuOpen(false); } },
54
+ react_1.default.createElement(HeaderBasicButton_1.HeaderBasicButton, __assign({ className: (0, classnames_1.default)('iui-header-breadcrumb-button', className), ref: refs, "aria-label": 'Dropdown', endIcon: isMenuOpen ? (react_1.default.createElement(CaretUpSmall_1.default, { className: 'iui-header-breadcrumb-button-dropdown-icon', "aria-hidden": true })) : (react_1.default.createElement(CaretDownSmall_1.default, { className: 'iui-header-breadcrumb-button-dropdown-icon', "aria-hidden": true })) }, rest), children)));
55
+ });
56
+ exports.default = exports.HeaderDropdownButton;
@@ -52,13 +52,13 @@ var HeaderLogo = function (props) {
52
52
  }
53
53
  };
54
54
  (0, utils_1.useTheme)();
55
- return (react_1.default.createElement("div", __assign({ className: (0, classnames_1.default)('iui-header-logo', className), role: onClick && 'button', tabIndex: onClick && 0, onKeyDown: keyDownHandler, onClick: onClick }, rest),
55
+ return (react_1.default.createElement("div", __assign({ className: (0, classnames_1.default)('iui-header-brand', className), role: onClick && 'button', tabIndex: onClick && 0, onKeyDown: keyDownHandler, onClick: onClick }, rest),
56
56
  react_1.default.isValidElement(logo)
57
57
  ? react_1.default.cloneElement(logo, {
58
- className: (0, classnames_1.default)('iui-header-button-icon', logo.props.className),
58
+ className: (0, classnames_1.default)('iui-header-brand-icon', logo.props.className),
59
59
  })
60
60
  : undefined,
61
- children && react_1.default.createElement("span", { className: 'iui-label' }, children)));
61
+ children && react_1.default.createElement("span", { className: 'iui-header-brand-label' }, children)));
62
62
  };
63
63
  exports.HeaderLogo = HeaderLogo;
64
64
  exports.default = exports.HeaderLogo;
@@ -0,0 +1,6 @@
1
+ import { PolymorphicForwardRefComponent } from '../utils';
2
+ import { SplitButtonProps } from '../Buttons';
3
+ export declare type HeaderSplitButtonProps = SplitButtonProps;
4
+ declare type HeaderSplitButtonComponent = PolymorphicForwardRefComponent<'button', HeaderSplitButtonProps>;
5
+ export declare const HeaderSplitButton: HeaderSplitButtonComponent;
6
+ export default HeaderSplitButton;
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __rest = (this && this.__rest) || function (s, e) {
14
+ var t = {};
15
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
16
+ t[p] = s[p];
17
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
18
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
19
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
20
+ t[p[i]] = s[p[i]];
21
+ }
22
+ return t;
23
+ };
24
+ var __importDefault = (this && this.__importDefault) || function (mod) {
25
+ return (mod && mod.__esModule) ? mod : { "default": mod };
26
+ };
27
+ Object.defineProperty(exports, "__esModule", { value: true });
28
+ exports.HeaderSplitButton = void 0;
29
+ /*---------------------------------------------------------------------------------------------
30
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
31
+ * See LICENSE.md in the project root for license terms and full copyright notice.
32
+ *--------------------------------------------------------------------------------------------*/
33
+ var classnames_1 = __importDefault(require("classnames"));
34
+ var react_1 = __importDefault(require("react"));
35
+ var DropdownMenu_1 = require("../DropdownMenu");
36
+ var CaretDownSmall_1 = __importDefault(require("@itwin/itwinui-icons-react/cjs/icons/CaretDownSmall"));
37
+ var CaretUpSmall_1 = __importDefault(require("@itwin/itwinui-icons-react/cjs/icons/CaretUpSmall"));
38
+ var utils_1 = require("../utils");
39
+ var HeaderBasicButton_1 = require("./HeaderBasicButton");
40
+ exports.HeaderSplitButton = react_1.default.forwardRef(function (props, forwardedRef) {
41
+ var menuItems = props.menuItems, className = props.className, _a = props.menuPlacement, menuPlacement = _a === void 0 ? 'bottom-end' : _a, children = props.children, style = props.style, title = props.title, disabled = props.disabled, rest = __rest(props, ["menuItems", "className", "menuPlacement", "children", "style", "title", "disabled"]);
42
+ (0, utils_1.useTheme)();
43
+ var _b = react_1.default.useState(false), isMenuOpen = _b[0], setIsMenuOpen = _b[1];
44
+ var _c = react_1.default.useState(0), menuWidth = _c[0], setMenuWidth = _c[1];
45
+ var ref = react_1.default.useRef(null);
46
+ react_1.default.useEffect(function () {
47
+ if (ref.current) {
48
+ setMenuWidth(ref.current.offsetWidth);
49
+ }
50
+ }, [children]);
51
+ return (react_1.default.createElement("span", { className: (0, classnames_1.default)('iui-header-breadcrumb-button-wrapper', className), style: style, title: title, ref: ref },
52
+ react_1.default.createElement(HeaderBasicButton_1.HeaderBasicButton, __assign({ ref: forwardedRef, disabled: disabled }, rest), children),
53
+ react_1.default.createElement(DropdownMenu_1.DropdownMenu, { placement: menuPlacement, menuItems: menuItems, style: { minWidth: menuWidth }, onShow: react_1.default.useCallback(function () { return setIsMenuOpen(true); }, []), onHide: react_1.default.useCallback(function () { return setIsMenuOpen(false); }, []) },
54
+ react_1.default.createElement("button", { className: 'iui-header-breadcrumb-button iui-header-breadcrumb-button-split', disabled: disabled }, isMenuOpen ? (react_1.default.createElement(CaretUpSmall_1.default, { className: 'iui-header-breadcrumb-button-dropdown-icon', "aria-hidden": true })) : (react_1.default.createElement(CaretDownSmall_1.default, { className: 'iui-header-breadcrumb-button-dropdown-icon', "aria-hidden": true }))))));
55
+ });
56
+ exports.default = exports.HeaderSplitButton;
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import '@itwin/itwinui-css/css/inputs.css';
2
+ import '@itwin/itwinui-css/css/input.css';
3
3
  export declare type InputProps = {
4
4
  /**
5
5
  * Set focus on input element.
@@ -33,7 +33,7 @@ exports.Input = void 0;
33
33
  var classnames_1 = __importDefault(require("classnames"));
34
34
  var react_1 = __importDefault(require("react"));
35
35
  var utils_1 = require("../utils");
36
- require("@itwin/itwinui-css/css/inputs.css");
36
+ require("@itwin/itwinui-css/css/input.css");
37
37
  /**
38
38
  * Basic input component
39
39
  * @example
@@ -42,8 +42,7 @@ require("@itwin/itwinui-css/css/inputs.css");
42
42
  * <Input size='small' />
43
43
  */
44
44
  exports.Input = react_1.default.forwardRef(function (props, ref) {
45
- var _a;
46
- var _b = props.setFocus, setFocus = _b === void 0 ? false : _b, size = props.size, className = props.className, rest = __rest(props, ["setFocus", "size", "className"]);
45
+ var _a = props.setFocus, setFocus = _a === void 0 ? false : _a, size = props.size, className = props.className, rest = __rest(props, ["setFocus", "size", "className"]);
47
46
  (0, utils_1.useTheme)();
48
47
  var inputRef = react_1.default.useRef(null);
49
48
  var refs = (0, utils_1.useMergedRefs)(inputRef, ref);
@@ -52,6 +51,6 @@ exports.Input = react_1.default.forwardRef(function (props, ref) {
52
51
  inputRef.current.focus();
53
52
  }
54
53
  }, [setFocus]);
55
- return (react_1.default.createElement("input", __assign({ className: (0, classnames_1.default)('iui-input', (_a = {}, _a["iui-".concat(size)] = !!size, _a), className), ref: refs }, rest)));
54
+ return (react_1.default.createElement("input", __assign({ className: (0, classnames_1.default)('iui-input', className), "data-iui-size": size, ref: refs }, rest)));
56
55
  });
57
56
  exports.default = exports.Input;
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  import { CommonProps } from '../utils';
3
- import '@itwin/itwinui-css/css/inputs.css';
3
+ import '@itwin/itwinui-css/css/utils.css';
4
4
  export declare type InputGroupProps = {
5
5
  /**
6
6
  * Label of the group.
@@ -32,7 +32,7 @@ exports.InputGroup = void 0;
32
32
  *--------------------------------------------------------------------------------------------*/
33
33
  var react_1 = __importDefault(require("react"));
34
34
  var utils_1 = require("../utils");
35
- require("@itwin/itwinui-css/css/inputs.css");
35
+ require("@itwin/itwinui-css/css/utils.css");
36
36
  /**
37
37
  * Group Checkbox/Radio components together
38
38
  * @example
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import '@itwin/itwinui-css/css/inputs.css';
2
+ import '@itwin/itwinui-css/css/utils.css';
3
3
  declare type LabelOwnProps<T extends React.ElementType = 'label'> = {
4
4
  /**
5
5
  * What element should the label be rendered as?
@@ -33,7 +33,7 @@ exports.Label = void 0;
33
33
  var react_1 = __importDefault(require("react"));
34
34
  var classnames_1 = __importDefault(require("classnames"));
35
35
  var utils_1 = require("../utils");
36
- require("@itwin/itwinui-css/css/inputs.css");
36
+ require("@itwin/itwinui-css/css/utils.css");
37
37
  /**
38
38
  * A standalone label to be used with input components (using `htmlFor`).
39
39
  * Can be rendered as any element, e.g. span, using the `as` prop.
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  import { InputProps } from '../Input/Input';
3
- import '@itwin/itwinui-css/css/inputs.css';
3
+ import '@itwin/itwinui-css/css/input.css';
4
4
  export declare type LabeledInputProps = {
5
5
  /**
6
6
  * Label of the input.
@@ -93,7 +93,7 @@ export declare const LabeledInput: React.ForwardRefExoticComponent<{
93
93
  *
94
94
  * Defaults to 'block' if `displayStyle` is `default`, else 'inline'.
95
95
  */
96
- iconDisplayStyle?: "block" | "inline" | undefined;
96
+ iconDisplayStyle?: "inline" | "block" | undefined;
97
97
  } & {
98
98
  setFocus?: boolean | undefined;
99
99
  size?: "small" | "large" | undefined;
@@ -33,7 +33,7 @@ exports.LabeledInput = void 0;
33
33
  var react_1 = __importDefault(require("react"));
34
34
  var Input_1 = require("../Input/Input");
35
35
  var utils_1 = require("../utils");
36
- require("@itwin/itwinui-css/css/inputs.css");
36
+ require("@itwin/itwinui-css/css/input.css");
37
37
  /**
38
38
  * Basic labeled input component
39
39
  * @example
@@ -1,7 +1,7 @@
1
1
  import React from 'react';
2
2
  import { SelectProps } from '../Select/Select';
3
3
  import { LabeledInputProps } from '../LabeledInput';
4
- import '@itwin/itwinui-css/css/inputs.css';
4
+ import '@itwin/itwinui-css/css/select.css';
5
5
  export declare type LabeledSelectProps<T> = {
6
6
  /**
7
7
  * Label of the select.
@@ -33,7 +33,7 @@ exports.LabeledSelect = void 0;
33
33
  var react_1 = __importDefault(require("react"));
34
34
  var Select_1 = require("../Select");
35
35
  var utils_1 = require("../utils");
36
- require("@itwin/itwinui-css/css/inputs.css");
36
+ require("@itwin/itwinui-css/css/select.css");
37
37
  /**
38
38
  * Labeled select component to select value from options.
39
39
  * @example
@@ -1,7 +1,7 @@
1
1
  import React from 'react';
2
2
  import { TextareaProps } from '../Textarea/Textarea';
3
3
  import { LabeledInputProps } from '../LabeledInput';
4
- import '@itwin/itwinui-css/css/inputs.css';
4
+ import '@itwin/itwinui-css/css/input.css';
5
5
  export declare type LabeledTextareaProps = {
6
6
  /**
7
7
  * Label for the textarea.
@@ -33,7 +33,7 @@ exports.LabeledTextarea = void 0;
33
33
  var react_1 = __importDefault(require("react"));
34
34
  var utils_1 = require("../utils");
35
35
  var Textarea_1 = require("../Textarea");
36
- require("@itwin/itwinui-css/css/inputs.css");
36
+ require("@itwin/itwinui-css/css/input.css");
37
37
  /**
38
38
  * Textarea wrapper that allows for additional styling and labelling
39
39
  * @example
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import '@itwin/itwinui-css/css/inputs.css';
2
+ import '@itwin/itwinui-css/css/radio.css';
3
3
  export declare type RadioProps = {
4
4
  /**
5
5
  * Label of the radio.
@@ -9,20 +9,6 @@ export declare type RadioProps = {
9
9
  * Status of the radio.
10
10
  */
11
11
  status?: 'positive' | 'warning' | 'negative';
12
- /**
13
- * Custom CSS class name for the checkmark element.
14
- *
15
- * @deprecated As of 1.32.0, this is applied on the actual radio `<input>` element.
16
- * The checkmark has been moved into a pseudo-element.
17
- */
18
- checkmarkClassName?: string;
19
- /**
20
- * Custom CSS Style for the checkmark element.
21
- *
22
- * @deprecated As of 1.32.0, this is applied on the actual radio `<input>` element.
23
- * The checkmark has been moved into a pseudo-element.
24
- */
25
- checkmarkStyle?: React.CSSProperties;
26
12
  /**
27
13
  * Set focus on radio element.
28
14
  * @default false
@@ -48,20 +34,6 @@ export declare const Radio: React.ForwardRefExoticComponent<{
48
34
  * Status of the radio.
49
35
  */
50
36
  status?: "positive" | "warning" | "negative" | undefined;
51
- /**
52
- * Custom CSS class name for the checkmark element.
53
- *
54
- * @deprecated As of 1.32.0, this is applied on the actual radio `<input>` element.
55
- * The checkmark has been moved into a pseudo-element.
56
- */
57
- checkmarkClassName?: string | undefined;
58
- /**
59
- * Custom CSS Style for the checkmark element.
60
- *
61
- * @deprecated As of 1.32.0, this is applied on the actual radio `<input>` element.
62
- * The checkmark has been moved into a pseudo-element.
63
- */
64
- checkmarkStyle?: React.CSSProperties | undefined;
65
37
  /**
66
38
  * Set focus on radio element.
67
39
  * @default false
@@ -33,7 +33,7 @@ exports.Radio = void 0;
33
33
  var classnames_1 = __importDefault(require("classnames"));
34
34
  var react_1 = __importDefault(require("react"));
35
35
  var utils_1 = require("../utils");
36
- require("@itwin/itwinui-css/css/inputs.css");
36
+ require("@itwin/itwinui-css/css/radio.css");
37
37
  /**
38
38
  * Basic radio input component
39
39
  * @example
@@ -46,7 +46,7 @@ require("@itwin/itwinui-css/css/inputs.css");
46
46
  */
47
47
  exports.Radio = react_1.default.forwardRef(function (props, ref) {
48
48
  var _a, _b;
49
- var className = props.className, _c = props.disabled, disabled = _c === void 0 ? false : _c, label = props.label, status = props.status, style = props.style, checkmarkClassName = props.checkmarkClassName, checkmarkStyle = props.checkmarkStyle, _d = props.setFocus, setFocus = _d === void 0 ? false : _d, rest = __rest(props, ["className", "disabled", "label", "status", "style", "checkmarkClassName", "checkmarkStyle", "setFocus"]);
49
+ var className = props.className, _c = props.disabled, disabled = _c === void 0 ? false : _c, label = props.label, status = props.status, style = props.style, _d = props.setFocus, setFocus = _d === void 0 ? false : _d, rest = __rest(props, ["className", "disabled", "label", "status", "style", "setFocus"]);
50
50
  (0, utils_1.useTheme)();
51
51
  var inputElementRef = react_1.default.useRef(null);
52
52
  var refs = (0, utils_1.useMergedRefs)(inputElementRef, ref);
@@ -55,7 +55,7 @@ exports.Radio = react_1.default.forwardRef(function (props, ref) {
55
55
  inputElementRef.current.focus();
56
56
  }
57
57
  }, [setFocus]);
58
- var radio = (react_1.default.createElement("input", __assign({ className: (0, classnames_1.default)('iui-radio', className && (_a = {}, _a[className] = !label, _a), checkmarkClassName), style: __assign(__assign({}, (!label && style)), checkmarkStyle), disabled: disabled, type: 'radio', ref: refs }, rest)));
58
+ var radio = (react_1.default.createElement("input", __assign({ className: (0, classnames_1.default)('iui-radio', className && (_a = {}, _a[className] = !label, _a)), style: !label ? style : undefined, disabled: disabled, type: 'radio', ref: refs }, rest)));
59
59
  return !label ? (radio) : (react_1.default.createElement("label", { className: (0, classnames_1.default)('iui-radio-wrapper', (_b = { 'iui-disabled': disabled }, _b["iui-".concat(status)] = !!status, _b), className), style: style },
60
60
  radio,
61
61
  label && react_1.default.createElement("span", { className: 'iui-radio-label' }, label)));
@@ -1,6 +1,6 @@
1
1
  /// <reference types="react" />
2
2
  import { InputGroupProps } from '../InputGroup';
3
- import '@itwin/itwinui-css/css/inputs.css';
3
+ import '@itwin/itwinui-css/css/radio-tile.css';
4
4
  export declare type RadioTileGroupProps = Omit<InputGroupProps, 'displayStyle' | 'disabled'>;
5
5
  /**
6
6
  * RadioTileGroup component to group RadioTile components together
@@ -32,7 +32,7 @@ exports.RadioTileGroup = void 0;
32
32
  *--------------------------------------------------------------------------------------------*/
33
33
  var react_1 = __importDefault(require("react"));
34
34
  var InputGroup_1 = require("../InputGroup");
35
- require("@itwin/itwinui-css/css/inputs.css");
35
+ require("@itwin/itwinui-css/css/radio-tile.css");
36
36
  var utils_1 = require("../utils");
37
37
  /**
38
38
  * RadioTileGroup component to group RadioTile components together
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  import { PopoverProps, CommonProps } from '../utils';
3
- import '@itwin/itwinui-css/css/inputs.css';
3
+ import '@itwin/itwinui-css/css/select.css';
4
4
  export declare type ItemRendererProps = {
5
5
  /**
6
6
  * Close handler that closes the dropdown.
@@ -35,7 +35,7 @@ var classnames_1 = __importDefault(require("classnames"));
35
35
  var DropdownMenu_1 = require("../DropdownMenu");
36
36
  var MenuItem_1 = require("../Menu/MenuItem");
37
37
  var utils_1 = require("../utils");
38
- require("@itwin/itwinui-css/css/inputs.css");
38
+ require("@itwin/itwinui-css/css/select.css");
39
39
  var CaretDownSmall_1 = __importDefault(require("@itwin/itwinui-icons-react/cjs/icons/CaretDownSmall"));
40
40
  var SelectTag_1 = __importDefault(require("./SelectTag"));
41
41
  var isMultipleEnabled = function (variable, multiple) {
@@ -96,14 +96,13 @@ var isSingleOnChange = function (onChange, multiple) {
96
96
  */
97
97
  var Select = function (props) {
98
98
  var _a;
99
- var _b;
100
- var options = props.options, value = props.value, onChange = props.onChange, placeholder = props.placeholder, _c = props.disabled, disabled = _c === void 0 ? false : _c, size = props.size, _d = props.setFocus, setFocus = _d === void 0 ? false : _d, itemRenderer = props.itemRenderer, selectedItemRenderer = props.selectedItemRenderer, className = props.className, style = props.style, menuClassName = props.menuClassName, menuStyle = props.menuStyle, onShow = props.onShow, onHide = props.onHide, popoverProps = props.popoverProps, _e = props.multiple, multiple = _e === void 0 ? false : _e, rest = __rest(props, ["options", "value", "onChange", "placeholder", "disabled", "size", "setFocus", "itemRenderer", "selectedItemRenderer", "className", "style", "menuClassName", "menuStyle", "onShow", "onHide", "popoverProps", "multiple"]);
99
+ var options = props.options, value = props.value, onChange = props.onChange, placeholder = props.placeholder, _b = props.disabled, disabled = _b === void 0 ? false : _b, size = props.size, _c = props.setFocus, setFocus = _c === void 0 ? false : _c, itemRenderer = props.itemRenderer, selectedItemRenderer = props.selectedItemRenderer, className = props.className, style = props.style, menuClassName = props.menuClassName, menuStyle = props.menuStyle, onShow = props.onShow, onHide = props.onHide, popoverProps = props.popoverProps, _d = props.multiple, multiple = _d === void 0 ? false : _d, rest = __rest(props, ["options", "value", "onChange", "placeholder", "disabled", "size", "setFocus", "itemRenderer", "selectedItemRenderer", "className", "style", "menuClassName", "menuStyle", "onShow", "onHide", "popoverProps", "multiple"]);
101
100
  (0, utils_1.useTheme)();
102
- var _f = react_1.default.useState((_b = popoverProps === null || popoverProps === void 0 ? void 0 : popoverProps.visible) !== null && _b !== void 0 ? _b : false), isOpen = _f[0], setIsOpen = _f[1];
101
+ var _e = react_1.default.useState((_a = popoverProps === null || popoverProps === void 0 ? void 0 : popoverProps.visible) !== null && _a !== void 0 ? _a : false), isOpen = _e[0], setIsOpen = _e[1];
103
102
  react_1.default.useEffect(function () {
104
103
  setIsOpen(function (open) { var _a; return (_a = popoverProps === null || popoverProps === void 0 ? void 0 : popoverProps.visible) !== null && _a !== void 0 ? _a : open; });
105
104
  }, [popoverProps]);
106
- var _g = react_1.default.useState(0), minWidth = _g[0], setMinWidth = _g[1];
105
+ var _f = react_1.default.useState(0), minWidth = _f[0], setMinWidth = _f[1];
107
106
  var toggle = function () { return setIsOpen(function (open) { return !open; }); };
108
107
  var selectRef = react_1.default.useRef(null);
109
108
  var toggleButtonRef = react_1.default.useRef(null);
@@ -177,19 +176,17 @@ var Select = function (props) {
177
176
  return react_1.default.createElement(SelectTag_1.default, { key: item.label, label: item.label });
178
177
  }, []);
179
178
  return (react_1.default.createElement("div", __assign({ className: (0, classnames_1.default)('iui-input-with-icon', className), "aria-expanded": isOpen, "aria-haspopup": 'listbox', style: style }, rest),
180
- react_1.default.createElement(DropdownMenu_1.DropdownMenu, __assign({ menuItems: menuItems, placement: 'bottom-start', className: (0, classnames_1.default)('iui-scroll', menuClassName), style: __assign({ minWidth: minWidth, maxWidth: "min(".concat(minWidth * 2, "px, 90vw)"), maxHeight: 315 }, menuStyle), role: 'listbox', onShow: onShowHandler, onHide: onHideHandler, disabled: disabled }, popoverProps, { visible: isOpen, onClickOutside: function (_, _a) {
179
+ react_1.default.createElement(DropdownMenu_1.DropdownMenu, __assign({ menuItems: menuItems, placement: 'bottom-start', className: (0, classnames_1.default)('iui-scroll', menuClassName), style: __assign({ minWidth: minWidth, maxWidth: "min(".concat(minWidth * 2, "px, 90vw)") }, menuStyle), role: 'listbox', onShow: onShowHandler, onHide: onHideHandler, disabled: disabled }, popoverProps, { visible: isOpen, onClickOutside: function (_, _a) {
181
180
  var _b;
182
181
  var target = _a.target;
183
182
  if (!((_b = toggleButtonRef.current) === null || _b === void 0 ? void 0 : _b.contains(target))) {
184
183
  setIsOpen(false);
185
184
  }
186
185
  } }),
187
- react_1.default.createElement("div", { ref: selectRef, className: (0, classnames_1.default)('iui-select-button', (_a = {
188
- 'iui-placeholder': (!selectedItems || selectedItems.length === 0) && !!placeholder,
189
- 'iui-disabled': disabled
190
- },
191
- _a["iui-".concat(size)] = !!size,
192
- _a)), onClick: function () { return !disabled && toggle(); }, onKeyDown: function (e) { return !disabled && onKeyDown(e, toggle); }, tabIndex: !disabled ? 0 : undefined },
186
+ react_1.default.createElement("div", { ref: selectRef, className: (0, classnames_1.default)('iui-select-button', {
187
+ 'iui-placeholder': (!selectedItems || selectedItems.length === 0) && !!placeholder,
188
+ 'iui-disabled': disabled,
189
+ }), "data-iui-size": size, onClick: function () { return !disabled && toggle(); }, onKeyDown: function (e) { return !disabled && onKeyDown(e, toggle); }, tabIndex: !disabled ? 0 : undefined },
193
190
  (!selectedItems || selectedItems.length === 0) && (react_1.default.createElement("span", { className: 'iui-content' }, placeholder)),
194
191
  isMultipleEnabled(selectedItems, multiple) ? (react_1.default.createElement(MultipleSelectButton, { selectedItems: selectedItems, selectedItemsRenderer: selectedItemRenderer, tagRenderer: tagRenderer })) : (react_1.default.createElement(SingleSelectButton, { selectedItem: selectedItems, selectedItemRenderer: selectedItemRenderer })))),
195
192
  react_1.default.createElement("span", { ref: toggleButtonRef, className: (0, classnames_1.default)('iui-end-icon', {
@@ -1,6 +1,6 @@
1
1
  /// <reference types="react" />
2
2
  import { CommonProps } from '../utils';
3
- import '@itwin/itwinui-css/css/inputs.css';
3
+ import '@itwin/itwinui-css/css/select.css';
4
4
  export declare type SelectTagProps = {
5
5
  /**
6
6
  * Text inside the tag.
@@ -33,7 +33,7 @@ exports.SelectTag = void 0;
33
33
  var classnames_1 = __importDefault(require("classnames"));
34
34
  var react_1 = __importDefault(require("react"));
35
35
  var utils_1 = require("../utils");
36
- require("@itwin/itwinui-css/css/inputs.css");
36
+ require("@itwin/itwinui-css/css/select.css");
37
37
  /**
38
38
  * Tag for showing selected value in `Select`.
39
39
  * @private
@@ -43,8 +43,7 @@ exports.SidenavButton = react_1.default.forwardRef(function (props, ref) {
43
43
  var className = props.className, children = props.children, _a = props.isActive, isActive = _a === void 0 ? false : _a, _b = props.disabled, disabled = _b === void 0 ? false : _b, _c = props.isSubmenuOpen, isSubmenuOpen = _c === void 0 ? false : _c, rest = __rest(props, ["className", "children", "isActive", "disabled", "isSubmenuOpen"]);
44
44
  (0, utils_1.useTheme)();
45
45
  return (react_1.default.createElement(Buttons_1.Button, __assign({ className: (0, classnames_1.default)('iui-sidenav-button', {
46
- 'iui-active': isActive,
47
46
  'iui-submenu-open': isSubmenuOpen,
48
- }, className), size: 'large', disabled: disabled, ref: ref }, rest), children));
47
+ }, className), "data-iui-active": isActive, size: 'large', disabled: disabled, ref: ref }, rest), children));
49
48
  });
50
49
  exports.default = exports.SidenavButton;
@@ -0,0 +1,40 @@
1
+ import React from 'react';
2
+ import '@itwin/itwinui-css/css/stepper.css';
3
+ export declare type StepperLocalization = {
4
+ stepsCountLabel: (currentStep: number, totalSteps: number) => string;
5
+ };
6
+ export declare type StepProperties = {
7
+ /**
8
+ * The title/label of the step.
9
+ */
10
+ name: string;
11
+ /**
12
+ * A tooltip giving detailed description to this step.
13
+ */
14
+ description?: string;
15
+ };
16
+ export declare type StepperProps = {
17
+ /**
18
+ * Current step index, 0 - based.
19
+ */
20
+ currentStep?: number;
21
+ /**
22
+ * An array of step objects.
23
+ */
24
+ steps: StepProperties[];
25
+ /**
26
+ * The type of Stepper to display.
27
+ * @default 'default'
28
+ */
29
+ type?: 'default' | 'long';
30
+ /**
31
+ * Option to provide localized strings.
32
+ */
33
+ localization?: StepperLocalization;
34
+ /**
35
+ * Click handler on completed step.
36
+ */
37
+ onStepClick?: (clickedIndex: number) => void;
38
+ };
39
+ export declare const Stepper: React.ForwardRefExoticComponent<StepperProps & React.RefAttributes<HTMLDivElement>>;
40
+ export default Stepper;