rsuite 5.0.0-beta.7 → 5.0.2

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 (337) hide show
  1. package/CHANGELOG.md +52 -0
  2. package/DatePicker/styles/index.less +6 -2
  3. package/Grid/styles/index.less +1 -2
  4. package/IconButton/styles/index.less +1 -1
  5. package/MultiCascader/styles/index.less +3 -0
  6. package/README.md +17 -11
  7. package/Sidenav/styles/index.less +99 -37
  8. package/Table/styles/index.less +8 -0
  9. package/Uploader/styles/index.less +10 -0
  10. package/cjs/@types/common.d.ts +2 -1
  11. package/cjs/Animation/Collapse.js +8 -8
  12. package/cjs/AutoComplete/AutoComplete.js +10 -14
  13. package/cjs/Badge/Badge.js +6 -10
  14. package/cjs/Breadcrumb/Breadcrumb.js +8 -12
  15. package/cjs/Breadcrumb/BreadcrumbItem.js +4 -8
  16. package/cjs/Button/Button.js +6 -10
  17. package/cjs/ButtonGroup/ButtonGroup.js +6 -10
  18. package/cjs/Calendar/Calendar.js +4 -8
  19. package/cjs/Calendar/CalendarPanel.js +6 -10
  20. package/cjs/Calendar/Header.js +4 -8
  21. package/cjs/Calendar/MonthDropdown.js +10 -14
  22. package/cjs/Calendar/MonthDropdownItem.js +6 -10
  23. package/cjs/Calendar/Table.js +6 -10
  24. package/cjs/Calendar/TableHeaderRow.js +4 -7
  25. package/cjs/Calendar/TableRow.js +7 -11
  26. package/cjs/Calendar/TimeDropdown.js +4 -8
  27. package/cjs/Calendar/View.js +4 -8
  28. package/cjs/Carousel/Carousel.js +10 -14
  29. package/cjs/Cascader/Cascader.js +28 -26
  30. package/cjs/Cascader/DropdownMenu.js +19 -21
  31. package/cjs/CheckPicker/CheckPicker.js +33 -29
  32. package/cjs/CheckTreePicker/CheckTreeNode.js +4 -6
  33. package/cjs/CheckTreePicker/CheckTreePicker.js +47 -35
  34. package/cjs/Checkbox/Checkbox.js +8 -13
  35. package/cjs/CheckboxGroup/CheckboxGroup.d.ts +1 -12
  36. package/cjs/CheckboxGroup/CheckboxGroup.js +7 -13
  37. package/cjs/CheckboxGroup/CheckboxGroupContext.d.ts +13 -0
  38. package/cjs/CheckboxGroup/CheckboxGroupContext.js +12 -0
  39. package/cjs/CheckboxGroup/index.d.ts +4 -3
  40. package/cjs/CheckboxGroup/index.js +6 -4
  41. package/cjs/Col/Col.js +3 -2
  42. package/cjs/Container/Container.js +4 -7
  43. package/cjs/DatePicker/DatePicker.js +23 -20
  44. package/cjs/DatePicker/Toolbar.js +4 -8
  45. package/cjs/DateRangePicker/Calendar.d.ts +2 -1
  46. package/cjs/DateRangePicker/Calendar.js +15 -16
  47. package/cjs/DateRangePicker/DateRangePicker.d.ts +1 -1
  48. package/cjs/DateRangePicker/DateRangePicker.js +93 -73
  49. package/cjs/DateRangePicker/utils.d.ts +1 -1
  50. package/cjs/DateRangePicker/utils.js +9 -5
  51. package/cjs/Divider/Divider.js +4 -8
  52. package/cjs/Drawer/Drawer.js +8 -10
  53. package/cjs/Dropdown/Dropdown.js +39 -30
  54. package/cjs/Dropdown/DropdownContext.d.ts +4 -1
  55. package/cjs/Dropdown/DropdownItem.js +35 -12
  56. package/cjs/Dropdown/DropdownMenu.js +2 -6
  57. package/cjs/Dropdown/DropdownState.d.ts +37 -0
  58. package/cjs/Dropdown/DropdownState.js +66 -0
  59. package/cjs/Dropdown/DropdownToggle.js +4 -8
  60. package/cjs/FlexboxGrid/FlexboxGrid.js +8 -12
  61. package/cjs/FlexboxGrid/FlexboxGridItem.js +8 -12
  62. package/cjs/Form/Form.js +12 -16
  63. package/cjs/IconButton/IconButton.js +4 -8
  64. package/cjs/Input/Input.js +6 -10
  65. package/cjs/InputNumber/InputNumber.js +14 -18
  66. package/cjs/InputPicker/InputAutosize.js +2 -4
  67. package/cjs/InputPicker/InputPicker.js +32 -30
  68. package/cjs/List/List.js +12 -16
  69. package/cjs/List/ListItem.js +6 -10
  70. package/cjs/Loader/Loader.js +6 -10
  71. package/cjs/Menu/Menu.d.ts +0 -1
  72. package/cjs/Menu/Menu.js +3 -5
  73. package/cjs/Menu/MenuItem.js +1 -1
  74. package/cjs/Message/Message.js +8 -12
  75. package/cjs/Modal/Modal.d.ts +1 -10
  76. package/cjs/Modal/Modal.js +35 -27
  77. package/cjs/Modal/ModalBody.js +6 -10
  78. package/cjs/Modal/ModalContext.d.ts +12 -0
  79. package/cjs/Modal/ModalContext.js +12 -0
  80. package/cjs/Modal/ModalDialog.js +8 -8
  81. package/cjs/Modal/ModalHeader.js +8 -12
  82. package/cjs/Modal/ModalTitle.d.ts +3 -2
  83. package/cjs/Modal/ModalTitle.js +43 -4
  84. package/cjs/MultiCascader/DropdownMenu.js +21 -23
  85. package/cjs/MultiCascader/MultiCascader.js +34 -32
  86. package/cjs/Nav/Nav.js +6 -10
  87. package/cjs/Navbar/Navbar.js +6 -9
  88. package/cjs/Notification/Notification.js +6 -10
  89. package/cjs/Overlay/Modal.js +11 -18
  90. package/cjs/Overlay/Overlay.js +2 -5
  91. package/cjs/Overlay/OverlayTrigger.js +9 -9
  92. package/cjs/Overlay/Position.js +4 -8
  93. package/cjs/Pagination/Pagination.js +10 -13
  94. package/cjs/Pagination/PaginationButton.js +4 -8
  95. package/cjs/Pagination/PaginationGroup.js +11 -12
  96. package/cjs/Panel/Panel.js +6 -10
  97. package/cjs/PanelGroup/PanelGroup.js +4 -8
  98. package/cjs/Picker/DropdownMenu.js +2 -3
  99. package/cjs/Picker/DropdownMenuGroup.js +4 -8
  100. package/cjs/Picker/DropdownMenuItem.js +4 -8
  101. package/cjs/Picker/PickerToggle.js +7 -9
  102. package/cjs/Picker/propTypes.d.ts +2 -16
  103. package/cjs/Picker/propTypes.js +4 -17
  104. package/cjs/Picker/utils.js +13 -8
  105. package/cjs/Placeholder/PlaceholderGraph.js +6 -10
  106. package/cjs/Placeholder/PlaceholderGrid.js +12 -16
  107. package/cjs/Placeholder/PlaceholderParagraph.js +10 -14
  108. package/cjs/Popover/Popover.js +4 -8
  109. package/cjs/Progress/ProgressCircle.js +18 -22
  110. package/cjs/Progress/ProgressLine.js +8 -12
  111. package/cjs/Radio/Radio.js +6 -11
  112. package/cjs/RadioGroup/RadioGroup.js +6 -9
  113. package/cjs/RangeSlider/RangeSlider.js +17 -20
  114. package/cjs/Rate/Character.js +4 -7
  115. package/cjs/Rate/Rate.js +14 -18
  116. package/cjs/Ripple/Ripple.js +4 -8
  117. package/cjs/SelectPicker/SelectPicker.d.ts +1 -3
  118. package/cjs/SelectPicker/SelectPicker.js +31 -28
  119. package/cjs/Sidebar/Sidebar.js +6 -10
  120. package/cjs/Sidenav/Sidenav.js +8 -11
  121. package/cjs/Sidenav/SidenavDropdown.d.ts +6 -1
  122. package/cjs/Sidenav/SidenavDropdown.js +25 -20
  123. package/cjs/Sidenav/SidenavDropdownCollapse.js +2 -6
  124. package/cjs/Sidenav/SidenavDropdownItem.js +4 -8
  125. package/cjs/Sidenav/SidenavDropdownMenu.js +4 -8
  126. package/cjs/Sidenav/SidenavItem.js +4 -12
  127. package/cjs/Sidenav/SidenavToggle.js +4 -8
  128. package/cjs/Slider/Graduated.js +4 -8
  129. package/cjs/Slider/Handle.d.ts +2 -0
  130. package/cjs/Slider/Handle.js +23 -12
  131. package/cjs/Slider/Input.d.ts +3 -0
  132. package/cjs/Slider/Input.js +35 -0
  133. package/cjs/Slider/Mark.js +4 -8
  134. package/cjs/Slider/ProgressBar.js +4 -8
  135. package/cjs/Slider/Slider.d.ts +0 -3
  136. package/cjs/Slider/Slider.js +14 -22
  137. package/cjs/Steps/StepItem.js +4 -7
  138. package/cjs/Steps/Steps.js +8 -12
  139. package/cjs/Table/Table.d.ts +7 -7
  140. package/cjs/Table/Table.js +5 -5
  141. package/cjs/TagInput/index.js +4 -6
  142. package/cjs/TagPicker/index.d.ts +1 -1
  143. package/cjs/TagPicker/index.js +4 -6
  144. package/cjs/Timeline/Timeline.js +6 -11
  145. package/cjs/Timeline/TimelineItem.js +4 -8
  146. package/cjs/Toggle/Toggle.js +4 -8
  147. package/cjs/Tooltip/Tooltip.js +4 -8
  148. package/cjs/Tree/Tree.d.ts +6 -0
  149. package/cjs/TreePicker/TreeNode.js +4 -6
  150. package/cjs/TreePicker/TreePicker.js +38 -29
  151. package/cjs/Uploader/UploadFileItem.d.ts +2 -0
  152. package/cjs/Uploader/UploadFileItem.js +47 -35
  153. package/cjs/Uploader/UploadTrigger.js +4 -8
  154. package/cjs/Uploader/Uploader.d.ts +2 -0
  155. package/cjs/Uploader/Uploader.js +28 -29
  156. package/cjs/toaster/ToastContainer.js +6 -10
  157. package/cjs/utils/createComponent.d.ts +1 -2
  158. package/cjs/utils/createComponent.js +10 -13
  159. package/cjs/utils/dateUtils.d.ts +1 -0
  160. package/cjs/utils/dateUtils.js +5 -1
  161. package/cjs/utils/previewFile.d.ts +1 -0
  162. package/cjs/utils/previewFile.js +11 -0
  163. package/cjs/utils/useInternalId.d.ts +4 -0
  164. package/cjs/utils/useInternalId.js +24 -0
  165. package/cjs/utils/useUniqueId.d.ts +4 -2
  166. package/cjs/utils/useUniqueId.js +5 -3
  167. package/dist/rsuite-rtl.css +164 -75
  168. package/dist/rsuite-rtl.min.css +1 -1
  169. package/dist/rsuite-rtl.min.css.map +1 -1
  170. package/dist/rsuite.css +164 -75
  171. package/dist/rsuite.js +377 -377
  172. package/dist/rsuite.min.css +1 -1
  173. package/dist/rsuite.min.css.map +1 -1
  174. package/dist/rsuite.min.js +1 -1
  175. package/dist/rsuite.min.js.map +1 -1
  176. package/esm/@types/common.d.ts +2 -1
  177. package/esm/Animation/Collapse.js +8 -8
  178. package/esm/AutoComplete/AutoComplete.js +11 -14
  179. package/esm/Badge/Badge.js +6 -9
  180. package/esm/Breadcrumb/Breadcrumb.js +8 -11
  181. package/esm/Breadcrumb/BreadcrumbItem.js +4 -7
  182. package/esm/Button/Button.js +6 -9
  183. package/esm/ButtonGroup/ButtonGroup.js +6 -9
  184. package/esm/Calendar/Calendar.js +4 -7
  185. package/esm/Calendar/CalendarPanel.js +6 -9
  186. package/esm/Calendar/Header.js +4 -7
  187. package/esm/Calendar/MonthDropdown.js +10 -13
  188. package/esm/Calendar/MonthDropdownItem.js +6 -9
  189. package/esm/Calendar/Table.js +6 -9
  190. package/esm/Calendar/TableHeaderRow.js +4 -7
  191. package/esm/Calendar/TableRow.js +7 -10
  192. package/esm/Calendar/TimeDropdown.js +4 -7
  193. package/esm/Calendar/View.js +4 -7
  194. package/esm/Carousel/Carousel.js +10 -13
  195. package/esm/Cascader/Cascader.js +28 -26
  196. package/esm/Cascader/DropdownMenu.js +19 -21
  197. package/esm/CheckPicker/CheckPicker.js +33 -29
  198. package/esm/CheckTreePicker/CheckTreeNode.js +4 -6
  199. package/esm/CheckTreePicker/CheckTreePicker.js +47 -37
  200. package/esm/Checkbox/Checkbox.js +8 -12
  201. package/esm/CheckboxGroup/CheckboxGroup.d.ts +1 -12
  202. package/esm/CheckboxGroup/CheckboxGroup.js +5 -8
  203. package/esm/CheckboxGroup/CheckboxGroupContext.d.ts +13 -0
  204. package/esm/CheckboxGroup/CheckboxGroupContext.js +2 -0
  205. package/esm/CheckboxGroup/index.d.ts +4 -3
  206. package/esm/CheckboxGroup/index.js +2 -2
  207. package/esm/Col/Col.js +3 -2
  208. package/esm/Container/Container.js +4 -7
  209. package/esm/DatePicker/DatePicker.js +23 -21
  210. package/esm/DatePicker/Toolbar.js +5 -8
  211. package/esm/DateRangePicker/Calendar.d.ts +2 -1
  212. package/esm/DateRangePicker/Calendar.js +15 -15
  213. package/esm/DateRangePicker/DateRangePicker.d.ts +1 -1
  214. package/esm/DateRangePicker/DateRangePicker.js +62 -43
  215. package/esm/DateRangePicker/utils.d.ts +1 -1
  216. package/esm/DateRangePicker/utils.js +7 -3
  217. package/esm/Divider/Divider.js +4 -7
  218. package/esm/Drawer/Drawer.js +8 -9
  219. package/esm/Dropdown/Dropdown.js +39 -31
  220. package/esm/Dropdown/DropdownContext.d.ts +4 -1
  221. package/esm/Dropdown/DropdownItem.js +35 -14
  222. package/esm/Dropdown/DropdownMenu.js +3 -6
  223. package/esm/Dropdown/DropdownState.d.ts +37 -0
  224. package/esm/Dropdown/DropdownState.js +55 -0
  225. package/esm/Dropdown/DropdownToggle.js +4 -7
  226. package/esm/FlexboxGrid/FlexboxGrid.js +8 -11
  227. package/esm/FlexboxGrid/FlexboxGridItem.js +8 -11
  228. package/esm/Form/Form.js +12 -15
  229. package/esm/IconButton/IconButton.js +4 -7
  230. package/esm/Input/Input.js +6 -9
  231. package/esm/InputNumber/InputNumber.js +14 -17
  232. package/esm/InputPicker/InputAutosize.js +2 -4
  233. package/esm/InputPicker/InputPicker.js +32 -30
  234. package/esm/List/List.js +12 -15
  235. package/esm/List/ListItem.js +6 -9
  236. package/esm/Loader/Loader.js +6 -9
  237. package/esm/Menu/Menu.d.ts +0 -1
  238. package/esm/Menu/Menu.js +3 -5
  239. package/esm/Menu/MenuItem.js +1 -1
  240. package/esm/Message/Message.js +8 -11
  241. package/esm/Modal/Modal.d.ts +1 -10
  242. package/esm/Modal/Modal.js +31 -21
  243. package/esm/Modal/ModalBody.js +5 -8
  244. package/esm/Modal/ModalContext.d.ts +12 -0
  245. package/esm/Modal/ModalContext.js +2 -0
  246. package/esm/Modal/ModalDialog.js +8 -8
  247. package/esm/Modal/ModalHeader.js +7 -10
  248. package/esm/Modal/ModalTitle.d.ts +3 -2
  249. package/esm/Modal/ModalTitle.js +35 -4
  250. package/esm/MultiCascader/DropdownMenu.js +21 -23
  251. package/esm/MultiCascader/MultiCascader.js +34 -32
  252. package/esm/Nav/Nav.js +6 -9
  253. package/esm/Navbar/Navbar.js +6 -9
  254. package/esm/Notification/Notification.js +6 -9
  255. package/esm/Overlay/Modal.js +11 -18
  256. package/esm/Overlay/Overlay.js +2 -5
  257. package/esm/Overlay/OverlayTrigger.js +9 -9
  258. package/esm/Overlay/Position.js +4 -7
  259. package/esm/Pagination/Pagination.js +10 -13
  260. package/esm/Pagination/PaginationButton.js +4 -7
  261. package/esm/Pagination/PaginationGroup.js +10 -11
  262. package/esm/Panel/Panel.js +6 -9
  263. package/esm/PanelGroup/PanelGroup.js +4 -7
  264. package/esm/Picker/DropdownMenu.js +2 -3
  265. package/esm/Picker/DropdownMenuGroup.js +4 -7
  266. package/esm/Picker/DropdownMenuItem.js +4 -7
  267. package/esm/Picker/PickerToggle.js +7 -9
  268. package/esm/Picker/propTypes.d.ts +2 -16
  269. package/esm/Picker/propTypes.js +2 -13
  270. package/esm/Picker/utils.js +13 -8
  271. package/esm/Placeholder/PlaceholderGraph.js +6 -9
  272. package/esm/Placeholder/PlaceholderGrid.js +12 -15
  273. package/esm/Placeholder/PlaceholderParagraph.js +10 -13
  274. package/esm/Popover/Popover.js +4 -7
  275. package/esm/Progress/ProgressCircle.js +18 -21
  276. package/esm/Progress/ProgressLine.js +8 -11
  277. package/esm/Radio/Radio.js +6 -10
  278. package/esm/RadioGroup/RadioGroup.js +6 -9
  279. package/esm/RangeSlider/RangeSlider.js +17 -20
  280. package/esm/Rate/Character.js +4 -7
  281. package/esm/Rate/Rate.js +14 -17
  282. package/esm/Ripple/Ripple.js +4 -7
  283. package/esm/SelectPicker/SelectPicker.d.ts +1 -3
  284. package/esm/SelectPicker/SelectPicker.js +31 -28
  285. package/esm/Sidebar/Sidebar.js +6 -9
  286. package/esm/Sidenav/Sidenav.js +8 -11
  287. package/esm/Sidenav/SidenavDropdown.d.ts +6 -1
  288. package/esm/Sidenav/SidenavDropdown.js +24 -19
  289. package/esm/Sidenav/SidenavDropdownCollapse.js +2 -5
  290. package/esm/Sidenav/SidenavDropdownItem.js +5 -8
  291. package/esm/Sidenav/SidenavDropdownMenu.js +5 -8
  292. package/esm/Sidenav/SidenavItem.js +4 -10
  293. package/esm/Sidenav/SidenavToggle.js +4 -7
  294. package/esm/Slider/Graduated.js +4 -7
  295. package/esm/Slider/Handle.d.ts +2 -0
  296. package/esm/Slider/Handle.js +23 -12
  297. package/esm/Slider/Input.d.ts +3 -0
  298. package/esm/Slider/Input.js +23 -0
  299. package/esm/Slider/Mark.js +4 -7
  300. package/esm/Slider/ProgressBar.js +4 -7
  301. package/esm/Slider/Slider.d.ts +0 -3
  302. package/esm/Slider/Slider.js +14 -22
  303. package/esm/Steps/StepItem.js +4 -7
  304. package/esm/Steps/Steps.js +8 -11
  305. package/esm/Table/Table.d.ts +7 -7
  306. package/esm/Table/Table.js +5 -5
  307. package/esm/TagInput/index.js +4 -6
  308. package/esm/TagPicker/index.d.ts +1 -1
  309. package/esm/TagPicker/index.js +4 -6
  310. package/esm/Timeline/Timeline.js +6 -10
  311. package/esm/Timeline/TimelineItem.js +4 -7
  312. package/esm/Toggle/Toggle.js +5 -8
  313. package/esm/Tooltip/Tooltip.js +4 -7
  314. package/esm/Tree/Tree.d.ts +6 -0
  315. package/esm/TreePicker/TreeNode.js +4 -6
  316. package/esm/TreePicker/TreePicker.js +38 -31
  317. package/esm/Uploader/UploadFileItem.d.ts +2 -0
  318. package/esm/Uploader/UploadFileItem.js +47 -35
  319. package/esm/Uploader/UploadTrigger.js +4 -7
  320. package/esm/Uploader/Uploader.d.ts +2 -0
  321. package/esm/Uploader/Uploader.js +28 -28
  322. package/esm/toaster/ToastContainer.js +6 -9
  323. package/esm/utils/createComponent.d.ts +1 -2
  324. package/esm/utils/createComponent.js +10 -13
  325. package/esm/utils/dateUtils.d.ts +1 -0
  326. package/esm/utils/dateUtils.js +1 -0
  327. package/esm/utils/previewFile.d.ts +1 -0
  328. package/esm/utils/previewFile.js +9 -0
  329. package/esm/utils/useInternalId.d.ts +4 -0
  330. package/esm/utils/useInternalId.js +16 -0
  331. package/esm/utils/useUniqueId.d.ts +4 -2
  332. package/esm/utils/useUniqueId.js +5 -3
  333. package/package.json +4 -4
  334. package/styles/color-modes/dark.less +16 -0
  335. package/styles/color-modes/high-contrast.less +17 -0
  336. package/styles/color-modes/light.less +16 -0
  337. package/styles/variables.less +3 -1
@@ -17,6 +17,8 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
17
17
 
18
18
  var _omit = _interopRequireDefault(require("lodash/omit"));
19
19
 
20
+ var _pick = _interopRequireDefault(require("lodash/pick"));
21
+
20
22
  var _DropdownMenu = _interopRequireDefault(require("./DropdownMenu"));
21
23
 
22
24
  var _utils = require("../utils");
@@ -47,33 +49,32 @@ var _SidenavDropdown = _interopRequireDefault(require("../Sidenav/SidenavDropdow
47
49
 
48
50
  var _NavContext = _interopRequireDefault(require("../Nav/NavContext"));
49
51
 
50
- var defaultProps = {
51
- as: 'div',
52
- classPrefix: 'dropdown',
53
- placement: 'bottomStart',
54
- trigger: 'click'
55
- };
52
+ var _DropdownState = require("./DropdownState");
53
+
56
54
  /**
57
55
  * The <Dropdown> API
58
56
  * When used inside <Sidenav>, renders a <TreeviewRootItem>;
59
57
  * Otherwise renders a <MenuRoot>
60
58
  */
61
-
62
59
  var Dropdown = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
63
60
  var activeKey = props.activeKey,
64
61
  onSelectProp = props.onSelect,
65
62
  rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["activeKey", "onSelect"]);
66
- var Component = rest.as,
63
+ var _rest$as = rest.as,
64
+ Component = _rest$as === void 0 ? 'div' : _rest$as,
67
65
  title = rest.title,
68
66
  onClose = rest.onClose,
69
67
  onOpen = rest.onOpen,
70
68
  onToggle = rest.onToggle,
71
69
  eventKey = rest.eventKey,
72
- trigger = rest.trigger,
73
- placement = rest.placement,
70
+ _rest$trigger = rest.trigger,
71
+ trigger = _rest$trigger === void 0 ? 'click' : _rest$trigger,
72
+ _rest$placement = rest.placement,
73
+ placement = _rest$placement === void 0 ? 'bottomStart' : _rest$placement,
74
74
  toggleAs = rest.toggleAs,
75
75
  toggleClassName = rest.toggleClassName,
76
- classPrefix = rest.classPrefix,
76
+ _rest$classPrefix = rest.classPrefix,
77
+ classPrefix = _rest$classPrefix === void 0 ? 'dropdown' : _rest$classPrefix,
77
78
  className = rest.className,
78
79
  disabled = rest.disabled,
79
80
  children = rest.children,
@@ -124,14 +125,29 @@ var Dropdown = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
124
125
  }, [trigger]);
125
126
  var parentMenu = (0, _react.useContext)(_MenuContext.default);
126
127
  var sidenav = (0, _react.useContext)(_Sidenav.SidenavContext);
127
- var navbar = (0, _react.useContext)(_Navbar.NavbarContext); // Render a disclosure when inside expanded <Sidenav>
128
+ var navbar = (0, _react.useContext)(_Navbar.NavbarContext);
129
+
130
+ var _useReducer = (0, _react.useReducer)(_DropdownState.reducer, _DropdownState.initialState),
131
+ items = _useReducer[0].items,
132
+ dispatch = _useReducer[1];
133
+
134
+ var hasSelectedItem = (0, _react.useMemo)(function () {
135
+ return items.some(function (item) {
136
+ return item.props.selected;
137
+ });
138
+ }, [items]);
139
+ var dropdownContextValue = (0, _react.useMemo)(function () {
140
+ return {
141
+ activeKey: activeKey,
142
+ onSelect: emitSelect,
143
+ hasSelectedItem: hasSelectedItem,
144
+ dispatch: dispatch
145
+ };
146
+ }, [activeKey, emitSelect, hasSelectedItem, dispatch]); // Render a disclosure when inside expanded <Sidenav>
128
147
 
129
148
  if (sidenav !== null && sidenav !== void 0 && sidenav.expanded) {
130
149
  return /*#__PURE__*/_react.default.createElement(_DropdownContext.default.Provider, {
131
- value: {
132
- activeKey: activeKey,
133
- onSelect: emitSelect
134
- }
150
+ value: dropdownContextValue
135
151
  }, /*#__PURE__*/_react.default.createElement(_SidenavDropdown.default, (0, _extends2.default)({
136
152
  ref: ref
137
153
  }, rest)));
@@ -140,10 +156,7 @@ var Dropdown = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
140
156
 
141
157
  if (navbar) {
142
158
  return /*#__PURE__*/_react.default.createElement(_DropdownContext.default.Provider, {
143
- value: {
144
- activeKey: activeKey,
145
- onSelect: emitSelect
146
- }
159
+ value: dropdownContextValue
147
160
  }, /*#__PURE__*/_react.default.createElement(_Disclosure.default, {
148
161
  hideOnClickOutside: true
149
162
  }, function (_ref, containerRef) {
@@ -183,7 +196,7 @@ var Dropdown = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
183
196
  className: toggleClassName,
184
197
  placement: placement,
185
198
  disabled: disabled
186
- }, (0, _omit.default)(menuButtonProps, ['open']), toggleProps), title);
199
+ }, (0, _omit.default)(menuButtonProps, ['open']), (0, _omit.default)(toggleProps, ['data-testid'])), title);
187
200
  };
188
201
 
189
202
  if (parentMenu) {
@@ -199,16 +212,13 @@ var Dropdown = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
199
212
  className: mergeNavItemClassNames(toggleClassName, withNavItemClassPrefix({
200
213
  focus: active
201
214
  }))
202
- }, menuButtonProps, (0, _omit.default)(menuitemProps, ['onClick']), toggleProps), title);
215
+ }, menuButtonProps, (0, _omit.default)(menuitemProps, ['onClick']), (0, _omit.default)(toggleProps, 'data-testid')), title);
203
216
  });
204
217
  };
205
218
  }
206
219
 
207
220
  return /*#__PURE__*/_react.default.createElement(_DropdownContext.default.Provider, {
208
- value: {
209
- activeKey: activeKey,
210
- onSelect: emitSelect
211
- }
221
+ value: dropdownContextValue
212
222
  }, /*#__PURE__*/_react.default.createElement(_Menu.default, {
213
223
  menuButtonText: title,
214
224
  renderMenuButton: renderMenuButton,
@@ -216,7 +226,7 @@ var Dropdown = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
216
226
  renderMenuPopup: function renderMenuPopup(_ref4, popupRef) {
217
227
  var open = _ref4.open,
218
228
  popupProps = (0, _objectWithoutPropertiesLoose2.default)(_ref4, ["open"]);
219
- var menuClassName = mergeMenuClassName(className, withMenuClassPrefix()); // When inside a collapsed <Sidenav>, render a header in menu
229
+ var menuClassName = mergeMenuClassName(className, withMenuClassPrefix({})); // When inside a collapsed <Sidenav>, render a header in menu
220
230
 
221
231
  var showHeader = !!sidenav;
222
232
  return /*#__PURE__*/_react.default.createElement("ul", (0, _extends2.default)({
@@ -243,11 +253,11 @@ var Dropdown = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
243
253
 
244
254
  var open = _ref5.open,
245
255
  menuContainer = (0, _objectWithoutPropertiesLoose2.default)(_ref5, ["open"]);
246
- var classes = merge(className, withClassPrefix((_withClassPrefix2 = {}, _withClassPrefix2["placement-" + (0, _kebabCase.default)((0, _utils.placementPolyfill)(placement))] = !!placement, _withClassPrefix2.disabled = disabled, _withClassPrefix2.open = open, _withClassPrefix2.submenu = !!parentMenu, _withClassPrefix2)));
256
+ var classes = merge(className, withClassPrefix((_withClassPrefix2 = {}, _withClassPrefix2["placement-" + (0, _kebabCase.default)((0, _utils.placementPolyfill)(placement))] = !!placement, _withClassPrefix2.disabled = disabled, _withClassPrefix2.open = open, _withClassPrefix2.submenu = !!parentMenu, _withClassPrefix2['selected-within'] = hasSelectedItem, _withClassPrefix2)));
247
257
  return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({
248
258
  ref: (0, _utils.mergeRefs)(ref, menuContainerRef),
249
259
  className: classes
250
- }, menuContainer, {
260
+ }, menuContainer, (0, _pick.default)(toggleProps, ['data-testid']), {
251
261
  style: style
252
262
  }));
253
263
  }));
@@ -256,7 +266,6 @@ var Dropdown = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
256
266
  Dropdown.Item = _DropdownItem.default;
257
267
  Dropdown.Menu = _DropdownMenu.default;
258
268
  Dropdown.displayName = 'Dropdown';
259
- Dropdown.defaultProps = defaultProps;
260
269
  Dropdown.propTypes = {
261
270
  activeKey: _propTypes.default.any,
262
271
  classPrefix: _propTypes.default.string,
@@ -1,7 +1,10 @@
1
- import React from 'react';
1
+ import React, { Dispatch } from 'react';
2
+ import { DropdownAction } from './DropdownState';
2
3
  export interface DropdownContextProps {
3
4
  activeKey?: string;
4
5
  onSelect: (eventKey: string, event: React.SyntheticEvent) => void;
6
+ hasSelectedItem?: boolean;
7
+ dispatch?: Dispatch<DropdownAction>;
5
8
  }
6
9
  declare const DropdownContext: React.Context<DropdownContextProps>;
7
10
  export default DropdownContext;
@@ -37,24 +37,25 @@ var _SafeAnchor = _interopRequireDefault(require("../SafeAnchor"));
37
37
 
38
38
  var _NavContext = _interopRequireDefault(require("../Nav/NavContext"));
39
39
 
40
- var defaultProps = {
41
- as: 'li',
42
- classPrefix: 'dropdown-item'
43
- };
40
+ var _useInternalId = _interopRequireDefault(require("../utils/useInternalId"));
41
+
42
+ var _DropdownState = require("./DropdownState");
43
+
44
44
  /**
45
45
  * The <Dropdown.Item> API
46
46
  * When used inside <Sidenav>, renders a <TreeviewItem>
47
47
  * Otherwise renders a <MenuItem>
48
48
  */
49
-
50
49
  var DropdownItem = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
51
- var classPrefix = props.classPrefix,
50
+ var _props$classPrefix = props.classPrefix,
51
+ classPrefix = _props$classPrefix === void 0 ? 'dropdown-item' : _props$classPrefix,
52
52
  className = props.className,
53
53
  activeProp = props.active,
54
54
  eventKey = props.eventKey,
55
55
  onSelect = props.onSelect,
56
56
  icon = props.icon,
57
57
  rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["classPrefix", "className", "active", "eventKey", "onSelect", "icon"]);
58
+ var internalId = (0, _useInternalId.default)('DropdownItem');
58
59
  var nav = (0, _react.useContext)(_NavContext.default);
59
60
  var dropdown = (0, _react.useContext)(_DropdownContext.default);
60
61
 
@@ -82,6 +83,29 @@ var DropdownItem = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
82
83
  });
83
84
  handleSelectItem === null || handleSelectItem === void 0 ? void 0 : handleSelectItem(event);
84
85
  }, [dispatchDisclosure, handleSelectItem]);
86
+ var selected = activeProp || !(0, _isNil.default)(eventKey) && ((0, _utils.shallowEqual)(dropdown === null || dropdown === void 0 ? void 0 : dropdown.activeKey, eventKey) || (0, _utils.shallowEqual)(nav === null || nav === void 0 ? void 0 : nav.activeKey, eventKey));
87
+ var dispatch = dropdown === null || dropdown === void 0 ? void 0 : dropdown.dispatch;
88
+ (0, _react.useEffect)(function () {
89
+ if (dispatch) {
90
+ dispatch({
91
+ type: _DropdownState.DropdownActionType.RegisterItem,
92
+ payload: {
93
+ id: internalId,
94
+ props: {
95
+ selected: selected
96
+ }
97
+ }
98
+ });
99
+ return function () {
100
+ dispatch({
101
+ type: _DropdownState.DropdownActionType.UnregisterItem,
102
+ payload: {
103
+ id: internalId
104
+ }
105
+ });
106
+ };
107
+ }
108
+ }, [internalId, selected, dispatch]);
85
109
 
86
110
  if (sidenav !== null && sidenav !== void 0 && sidenav.expanded) {
87
111
  return /*#__PURE__*/_react.default.createElement(_SidenavDropdownItem.default, (0, _extends2.default)({
@@ -89,8 +113,8 @@ var DropdownItem = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
89
113
  }, props));
90
114
  }
91
115
 
92
- var menuitemSelected = activeProp || !(0, _isNil.default)(eventKey) && ((0, _utils.shallowEqual)(dropdown === null || dropdown === void 0 ? void 0 : dropdown.activeKey, eventKey) || (0, _utils.shallowEqual)(nav === null || nav === void 0 ? void 0 : nav.activeKey, eventKey));
93
- var Component = rest.as,
116
+ var _rest$as = rest.as,
117
+ Component = _rest$as === void 0 ? 'li' : _rest$as,
94
118
  divider = rest.divider,
95
119
  panel = rest.panel,
96
120
  children = rest.children,
@@ -119,7 +143,7 @@ var DropdownItem = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
119
143
  disabled: disabled,
120
144
  divider: divider,
121
145
  panel: panel,
122
- active: menuitemSelected
146
+ active: selected
123
147
  }));
124
148
  var dataAttributes = {
125
149
  'data-event-key': eventKey
@@ -132,7 +156,7 @@ var DropdownItem = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
132
156
  return /*#__PURE__*/_react.default.createElement("li", null, /*#__PURE__*/_react.default.createElement(_SafeAnchor.default, (0, _extends2.default)({
133
157
  ref: ref,
134
158
  className: classes,
135
- "aria-current": menuitemSelected || undefined
159
+ "aria-current": selected || undefined
136
160
  }, dataAttributes, restProps, {
137
161
  onClick: (0, _utils.createChainedFunction)(handleClickNavbarDropdownItem, restProps.onClick)
138
162
  }), icon && /*#__PURE__*/_react.default.cloneElement(icon, {
@@ -141,7 +165,7 @@ var DropdownItem = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
141
165
  }
142
166
 
143
167
  return /*#__PURE__*/_react.default.createElement(_MenuItem.default, {
144
- selected: menuitemSelected,
168
+ selected: selected,
145
169
  disabled: disabled,
146
170
  onActivate: handleSelectItem
147
171
  }, function (_ref2, menuitemRef) {
@@ -174,7 +198,6 @@ var DropdownItem = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
174
198
  });
175
199
 
176
200
  DropdownItem.displayName = 'Dropdown.Item';
177
- DropdownItem.defaultProps = defaultProps;
178
201
  DropdownItem.propTypes = {
179
202
  as: _propTypes.default.elementType,
180
203
  divider: _propTypes.default.bool,
@@ -41,9 +41,6 @@ var _SidenavDropdownMenu = _interopRequireDefault(require("../Sidenav/SidenavDro
41
41
 
42
42
  var _templateObject, _templateObject2;
43
43
 
44
- var defaultProps = {
45
- classPrefix: 'dropdown-menu'
46
- };
47
44
  /**
48
45
  * The <Dropdown.Menu> API
49
46
  *
@@ -62,14 +59,14 @@ var defaultProps = {
62
59
  * </Dropdown.Menu>
63
60
  * </Dropdown>
64
61
  */
65
-
66
62
  var DropdownMenu = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
67
63
  var onToggle = props.onToggle,
68
64
  eventKey = props.eventKey,
69
65
  title = props.title,
70
66
  activeKey = props.activeKey,
71
67
  onSelect = props.onSelect,
72
- classPrefix = props.classPrefix,
68
+ _props$classPrefix = props.classPrefix,
69
+ classPrefix = _props$classPrefix === void 0 ? 'dropdown-menu' : _props$classPrefix,
73
70
  children = props.children,
74
71
  rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["onToggle", "eventKey", "title", "activeKey", "onSelect", "classPrefix", "children"]);
75
72
  var dropdown = (0, _react.useContext)(_DropdownContext.default);
@@ -195,7 +192,6 @@ var DropdownMenu = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
195
192
  });
196
193
 
197
194
  DropdownMenu.displayName = 'Dropdown.Menu';
198
- DropdownMenu.defaultProps = defaultProps;
199
195
  DropdownMenu.propTypes = {
200
196
  active: _propTypes.default.bool,
201
197
  activeKey: _propTypes.default.any,
@@ -0,0 +1,37 @@
1
+ interface DropdownItemState {
2
+ /**
3
+ * Internal ID
4
+ */
5
+ id: string;
6
+ /**
7
+ *
8
+ */
9
+ props: {
10
+ selected: boolean;
11
+ };
12
+ }
13
+ interface DropdownState {
14
+ items: DropdownItemState[];
15
+ }
16
+ export declare const initialState: DropdownState;
17
+ export declare enum DropdownActionType {
18
+ RegisterItem = 0,
19
+ UnregisterItem = 1,
20
+ UpdateItem = 2
21
+ }
22
+ export declare type DropdownAction = {
23
+ type: DropdownActionType.RegisterItem;
24
+ payload: {
25
+ id: string;
26
+ props: {
27
+ selected: boolean;
28
+ };
29
+ };
30
+ } | {
31
+ type: DropdownActionType.UnregisterItem;
32
+ payload: {
33
+ id: string;
34
+ };
35
+ };
36
+ export declare function reducer(state: DropdownState, action: DropdownAction): DropdownState;
37
+ export {};
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ exports.__esModule = true;
6
+ exports.reducer = reducer;
7
+ exports.DropdownActionType = exports.initialState = void 0;
8
+
9
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
10
+
11
+ var initialState = {
12
+ items: []
13
+ };
14
+ exports.initialState = initialState;
15
+ var DropdownActionType;
16
+ exports.DropdownActionType = DropdownActionType;
17
+
18
+ (function (DropdownActionType) {
19
+ DropdownActionType[DropdownActionType["RegisterItem"] = 0] = "RegisterItem";
20
+ DropdownActionType[DropdownActionType["UnregisterItem"] = 1] = "UnregisterItem";
21
+ DropdownActionType[DropdownActionType["UpdateItem"] = 2] = "UpdateItem";
22
+ })(DropdownActionType || (exports.DropdownActionType = DropdownActionType = {}));
23
+
24
+ function reducer(state, action) {
25
+ if (state === void 0) {
26
+ state = initialState;
27
+ }
28
+
29
+ switch (action.type) {
30
+ case DropdownActionType.RegisterItem:
31
+ if (state.items.find(function (item) {
32
+ return item.id === action.payload.id;
33
+ })) {
34
+ return (0, _extends2.default)({}, state, {
35
+ items: state.items.map(function (item) {
36
+ if (item.id === action.payload.id) {
37
+ return (0, _extends2.default)({}, item, {
38
+ props: (0, _extends2.default)({}, item.props, {
39
+ selected: action.payload.props.selected
40
+ })
41
+ });
42
+ }
43
+
44
+ return item;
45
+ })
46
+ });
47
+ }
48
+
49
+ return (0, _extends2.default)({}, state, {
50
+ items: [].concat(state.items, [{
51
+ id: action.payload.id,
52
+ props: action.payload.props
53
+ }])
54
+ });
55
+
56
+ case DropdownActionType.UnregisterItem:
57
+ return (0, _extends2.default)({}, state, {
58
+ items: state.items.filter(function (item) {
59
+ return item.id !== action.payload.id;
60
+ })
61
+ });
62
+
63
+ default:
64
+ return state;
65
+ }
66
+ }
@@ -23,15 +23,12 @@ var _useToggleCaret = _interopRequireDefault(require("../utils/useToggleCaret"))
23
23
 
24
24
  var _Sidenav = require("../Sidenav/Sidenav");
25
25
 
26
- var defaultProps = {
27
- as: _Button.default,
28
- classPrefix: 'dropdown-toggle'
29
- };
30
-
31
26
  var DropdownToggle = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
32
- var Component = props.as,
27
+ var _props$as = props.as,
28
+ Component = _props$as === void 0 ? _Button.default : _props$as,
33
29
  className = props.className,
34
- classPrefix = props.classPrefix,
30
+ _props$classPrefix = props.classPrefix,
31
+ classPrefix = _props$classPrefix === void 0 ? 'dropdown-toggle' : _props$classPrefix,
35
32
  renderToggle = props.renderToggle,
36
33
  children = props.children,
37
34
  icon = props.icon,
@@ -65,7 +62,6 @@ var DropdownToggle = /*#__PURE__*/_react.default.forwardRef(function (props, ref
65
62
  });
66
63
 
67
64
  DropdownToggle.displayName = 'DropdownToggle';
68
- DropdownToggle.defaultProps = defaultProps;
69
65
  DropdownToggle.propTypes = {
70
66
  className: _propTypes.default.string,
71
67
  children: _propTypes.default.node,
@@ -17,19 +17,16 @@ var _utils = require("../utils");
17
17
 
18
18
  var _FlexboxGridItem = _interopRequireDefault(require("./FlexboxGridItem"));
19
19
 
20
- var defaultProps = {
21
- as: 'div',
22
- classPrefix: 'flex-box-grid',
23
- align: 'top',
24
- justify: 'start'
25
- };
26
-
27
20
  var FlexboxGrid = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
28
- var Component = props.as,
21
+ var _props$as = props.as,
22
+ Component = _props$as === void 0 ? 'div' : _props$as,
29
23
  className = props.className,
30
- classPrefix = props.classPrefix,
31
- align = props.align,
32
- justify = props.justify,
24
+ _props$classPrefix = props.classPrefix,
25
+ classPrefix = _props$classPrefix === void 0 ? 'flex-box-grid' : _props$classPrefix,
26
+ _props$align = props.align,
27
+ align = _props$align === void 0 ? 'top' : _props$align,
28
+ _props$justify = props.justify,
29
+ justify = _props$justify === void 0 ? 'start' : _props$justify,
33
30
  rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["as", "className", "classPrefix", "align", "justify"]);
34
31
 
35
32
  var _useClassNames = (0, _utils.useClassNames)(classPrefix),
@@ -45,7 +42,6 @@ var FlexboxGrid = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
45
42
 
46
43
  FlexboxGrid.Item = _FlexboxGridItem.default;
47
44
  FlexboxGrid.displayName = 'FlexboxGrid';
48
- FlexboxGrid.defaultProps = defaultProps;
49
45
  FlexboxGrid.propTypes = {
50
46
  className: _propTypes.default.string,
51
47
  classPrefix: _propTypes.default.string,
@@ -15,21 +15,18 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
15
15
 
16
16
  var _utils = require("../utils");
17
17
 
18
- var defaultProps = {
19
- as: 'div',
20
- classPrefix: 'flex-box-grid-item',
21
- colspan: 0,
22
- order: 0
23
- };
24
-
25
18
  var FlexboxGridItem = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
26
19
  var _withClassPrefix;
27
20
 
28
- var Component = props.as,
21
+ var _props$as = props.as,
22
+ Component = _props$as === void 0 ? 'div' : _props$as,
29
23
  className = props.className,
30
- classPrefix = props.classPrefix,
31
- colspan = props.colspan,
32
- order = props.order,
24
+ _props$classPrefix = props.classPrefix,
25
+ classPrefix = _props$classPrefix === void 0 ? 'flex-box-grid-item' : _props$classPrefix,
26
+ _props$colspan = props.colspan,
27
+ colspan = _props$colspan === void 0 ? 0 : _props$colspan,
28
+ _props$order = props.order,
29
+ order = _props$order === void 0 ? 0 : _props$order,
33
30
  rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["as", "className", "classPrefix", "colspan", "order"]);
34
31
 
35
32
  var _useClassNames = (0, _utils.useClassNames)(classPrefix),
@@ -45,7 +42,6 @@ var FlexboxGridItem = /*#__PURE__*/_react.default.forwardRef(function (props, re
45
42
  });
46
43
 
47
44
  FlexboxGridItem.displayName = 'FlexboxGridItem';
48
- FlexboxGridItem.defaultProps = defaultProps;
49
45
  FlexboxGridItem.propTypes = {
50
46
  as: _propTypes.default.elementType,
51
47
  className: _propTypes.default.string,
package/cjs/Form/Form.js CHANGED
@@ -35,25 +35,22 @@ var _FormGroup = _interopRequireDefault(require("../FormGroup"));
35
35
 
36
36
  var _FormHelpText = _interopRequireDefault(require("../FormHelpText"));
37
37
 
38
- var defaultProps = {
39
- checkTrigger: 'change',
40
- classPrefix: 'form',
41
- errorFromContext: true,
42
- formDefaultValue: {},
43
- layout: 'vertical',
44
- model: (0, _schemaTyped.SchemaModel)({})
45
- };
46
-
47
38
  var Form = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
48
- var checkTrigger = props.checkTrigger,
49
- classPrefix = props.classPrefix,
50
- errorFromContext = props.errorFromContext,
51
- formDefaultValue = props.formDefaultValue,
39
+ var _props$checkTrigger = props.checkTrigger,
40
+ checkTrigger = _props$checkTrigger === void 0 ? 'change' : _props$checkTrigger,
41
+ _props$classPrefix = props.classPrefix,
42
+ classPrefix = _props$classPrefix === void 0 ? 'form' : _props$classPrefix,
43
+ _props$errorFromConte = props.errorFromContext,
44
+ errorFromContext = _props$errorFromConte === void 0 ? true : _props$errorFromConte,
45
+ _props$formDefaultVal = props.formDefaultValue,
46
+ formDefaultValue = _props$formDefaultVal === void 0 ? {} : _props$formDefaultVal,
52
47
  formValue = props.formValue,
53
48
  formError = props.formError,
54
49
  fluid = props.fluid,
55
- layout = props.layout,
56
- model = props.model,
50
+ _props$layout = props.layout,
51
+ layout = _props$layout === void 0 ? 'vertical' : _props$layout,
52
+ _props$model = props.model,
53
+ model = _props$model === void 0 ? (0, _schemaTyped.SchemaModel)({}) : _props$model,
57
54
  readOnly = props.readOnly,
58
55
  plaintext = props.plaintext,
59
56
  className = props.className,
@@ -287,7 +284,6 @@ Form.Group = _FormGroup.default;
287
284
  Form.HelpText = _FormHelpText.default;
288
285
  Form.Control = _FormControl.default;
289
286
  Form.displayName = 'Form';
290
- Form.defaultProps = defaultProps;
291
287
  Form.propTypes = {
292
288
  className: _propTypes.default.string,
293
289
  classPrefix: _propTypes.default.string,
@@ -17,17 +17,14 @@ var _Button = _interopRequireDefault(require("../Button"));
17
17
 
18
18
  var _utils = require("../utils");
19
19
 
20
- var defaultProps = {
21
- classPrefix: 'btn-icon',
22
- placement: 'left'
23
- };
24
-
25
20
  var IconButton = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
26
21
  var icon = props.icon,
27
- placement = props.placement,
22
+ _props$placement = props.placement,
23
+ placement = _props$placement === void 0 ? 'left' : _props$placement,
28
24
  children = props.children,
29
25
  circle = props.circle,
30
- classPrefix = props.classPrefix,
26
+ _props$classPrefix = props.classPrefix,
27
+ classPrefix = _props$classPrefix === void 0 ? 'btn-icon' : _props$classPrefix,
31
28
  className = props.className,
32
29
  rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["icon", "placement", "children", "circle", "classPrefix", "className"]);
33
30
 
@@ -46,7 +43,6 @@ var IconButton = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
46
43
  });
47
44
 
48
45
  IconButton.displayName = 'IconButton';
49
- IconButton.defaultProps = defaultProps;
50
46
  IconButton.propTypes = {
51
47
  className: _propTypes.default.string,
52
48
  icon: _propTypes.default.any,
@@ -23,17 +23,14 @@ var _Plaintext = _interopRequireDefault(require("../Plaintext"));
23
23
 
24
24
  var _utils = require("../utils");
25
25
 
26
- var defaultProps = {
27
- as: 'input',
28
- classPrefix: 'input',
29
- type: 'text'
30
- };
31
-
32
26
  var Input = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
33
27
  var className = props.className,
34
- classPrefix = props.classPrefix,
35
- Component = props.as,
36
- type = props.type,
28
+ _props$classPrefix = props.classPrefix,
29
+ classPrefix = _props$classPrefix === void 0 ? 'input' : _props$classPrefix,
30
+ _props$as = props.as,
31
+ Component = _props$as === void 0 ? 'input' : _props$as,
32
+ _props$type = props.type,
33
+ type = _props$type === void 0 ? 'text' : _props$type,
37
34
  disabled = props.disabled,
38
35
  value = props.value,
39
36
  defaultValue = props.defaultValue,
@@ -102,7 +99,6 @@ var Input = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
102
99
  });
103
100
 
104
101
  Input.displayName = 'Input';
105
- Input.defaultProps = defaultProps;
106
102
  Input.propTypes = {
107
103
  type: _propTypes.default.string,
108
104
  as: _propTypes.default.elementType,