@workday/canvas-kit-preview-react 8.0.0-alpha.254-next.23 → 8.0.0-alpha.428-next.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 (315) hide show
  1. package/color-picker/lib/ColorPicker.tsx +1 -1
  2. package/dist/commonjs/color-picker/lib/ColorPicker.js +25 -48
  3. package/dist/commonjs/color-picker/lib/parts/ColorReset.js +32 -23
  4. package/dist/commonjs/color-picker/lib/parts/SwatchBook.js +26 -39
  5. package/dist/commonjs/form-field/lib/FormField.d.ts +4 -10
  6. package/dist/commonjs/form-field/lib/FormField.d.ts.map +1 -1
  7. package/dist/commonjs/form-field/lib/FormField.js +10 -33
  8. package/dist/commonjs/form-field/lib/FormFieldHint.d.ts +1 -1
  9. package/dist/commonjs/form-field/lib/FormFieldHint.js +8 -31
  10. package/dist/commonjs/form-field/lib/FormFieldInput.d.ts +1 -1
  11. package/dist/commonjs/form-field/lib/FormFieldInput.js +6 -17
  12. package/dist/commonjs/form-field/lib/FormFieldLabel.d.ts +2 -8
  13. package/dist/commonjs/form-field/lib/FormFieldLabel.d.ts.map +1 -1
  14. package/dist/commonjs/form-field/lib/FormFieldLabel.js +8 -31
  15. package/dist/commonjs/form-field/lib/hooks/useFormFieldHint.d.ts +3 -5
  16. package/dist/commonjs/form-field/lib/hooks/useFormFieldHint.d.ts.map +1 -1
  17. package/dist/commonjs/form-field/lib/hooks/useFormFieldHint.js +4 -5
  18. package/dist/commonjs/form-field/lib/hooks/useFormFieldInput.d.ts +3 -5
  19. package/dist/commonjs/form-field/lib/hooks/useFormFieldInput.d.ts.map +1 -1
  20. package/dist/commonjs/form-field/lib/hooks/useFormFieldInput.js +5 -6
  21. package/dist/commonjs/form-field/lib/hooks/useFormFieldLabel.d.ts +3 -5
  22. package/dist/commonjs/form-field/lib/hooks/useFormFieldLabel.d.ts.map +1 -1
  23. package/dist/commonjs/form-field/lib/hooks/useFormFieldLabel.js +4 -5
  24. package/dist/commonjs/form-field/lib/hooks/useFormFieldModel.d.ts +2 -12
  25. package/dist/commonjs/form-field/lib/hooks/useFormFieldModel.d.ts.map +1 -1
  26. package/dist/commonjs/form-field/lib/hooks/useFormFieldModel.js +9 -19
  27. package/dist/commonjs/form-field/lib/hooks/useFormFieldOrientation.d.ts +4 -4
  28. package/dist/commonjs/form-field/lib/hooks/useFormFieldOrientation.d.ts.map +1 -1
  29. package/dist/commonjs/form-field/lib/hooks/useFormFieldOrientation.js +5 -5
  30. package/dist/commonjs/menu/lib/Menu.d.ts +16 -9
  31. package/dist/commonjs/menu/lib/Menu.d.ts.map +1 -1
  32. package/dist/commonjs/menu/lib/Menu.js +108 -132
  33. package/dist/commonjs/menu/lib/MenuItem.d.ts +17 -7
  34. package/dist/commonjs/menu/lib/MenuItem.d.ts.map +1 -1
  35. package/dist/commonjs/menu/lib/MenuItem.js +111 -114
  36. package/dist/commonjs/pill/lib/Pill.d.ts +103 -5
  37. package/dist/commonjs/pill/lib/Pill.d.ts.map +1 -1
  38. package/dist/commonjs/pill/lib/Pill.js +158 -64
  39. package/dist/commonjs/pill/lib/PillAvatar.js +6 -17
  40. package/dist/commonjs/pill/lib/PillCount.js +7 -30
  41. package/dist/commonjs/pill/lib/PillIcon.js +8 -31
  42. package/dist/commonjs/pill/lib/PillIconButton.js +13 -36
  43. package/dist/commonjs/pill/lib/PillLabel.js +10 -33
  44. package/dist/commonjs/pill/lib/usePillModel.js +8 -16
  45. package/dist/commonjs/segmented-control/index.d.ts +2 -0
  46. package/dist/commonjs/segmented-control/index.d.ts.map +1 -1
  47. package/dist/commonjs/segmented-control/index.js +4 -0
  48. package/dist/commonjs/segmented-control/lib/SegmentedControl.d.ts +267 -82
  49. package/dist/commonjs/segmented-control/lib/SegmentedControl.d.ts.map +1 -1
  50. package/dist/commonjs/segmented-control/lib/SegmentedControl.js +42 -7
  51. package/dist/commonjs/segmented-control/lib/SegmentedControlItem.d.ts +9 -5
  52. package/dist/commonjs/segmented-control/lib/SegmentedControlItem.d.ts.map +1 -1
  53. package/dist/commonjs/segmented-control/lib/SegmentedControlItem.js +24 -49
  54. package/dist/commonjs/segmented-control/lib/SegmentedControlList.d.ts +71 -2
  55. package/dist/commonjs/segmented-control/lib/SegmentedControlList.d.ts.map +1 -1
  56. package/dist/commonjs/segmented-control/lib/SegmentedControlList.js +15 -40
  57. package/dist/commonjs/segmented-control/lib/hooks/useSegmentedControlItem.d.ts +28 -9
  58. package/dist/commonjs/segmented-control/lib/hooks/useSegmentedControlItem.d.ts.map +1 -1
  59. package/dist/commonjs/segmented-control/lib/hooks/useSegmentedControlItem.js +8 -10
  60. package/dist/commonjs/segmented-control/lib/hooks/useSegmentedControlModel.d.ts +233 -83
  61. package/dist/commonjs/segmented-control/lib/hooks/useSegmentedControlModel.d.ts.map +1 -1
  62. package/dist/commonjs/segmented-control/lib/hooks/useSegmentedControlModel.js +33 -32
  63. package/dist/commonjs/select/lib/Select.js +147 -187
  64. package/dist/commonjs/select/lib/SelectBase.js +106 -101
  65. package/dist/commonjs/select/lib/SelectMenu.js +53 -84
  66. package/dist/commonjs/select/lib/SelectOption.js +33 -47
  67. package/dist/commonjs/select/lib/scrolling.js +6 -7
  68. package/dist/commonjs/select/lib/utils.js +4 -4
  69. package/dist/commonjs/side-panel/lib/SidePanel.d.ts +13 -26
  70. package/dist/commonjs/side-panel/lib/SidePanel.d.ts.map +1 -1
  71. package/dist/commonjs/side-panel/lib/SidePanel.js +95 -133
  72. package/dist/commonjs/side-panel/lib/SidePanelToggleButton.d.ts +17 -0
  73. package/dist/commonjs/side-panel/lib/SidePanelToggleButton.d.ts.map +1 -0
  74. package/dist/commonjs/side-panel/lib/SidePanelToggleButton.js +65 -0
  75. package/dist/commonjs/side-panel/lib/hooks.d.ts +20 -0
  76. package/dist/commonjs/side-panel/lib/hooks.d.ts.map +1 -1
  77. package/dist/commonjs/side-panel/lib/hooks.js +40 -21
  78. package/dist/commonjs/status-indicator/index.d.ts +2 -0
  79. package/dist/commonjs/status-indicator/index.d.ts.map +1 -1
  80. package/dist/commonjs/status-indicator/index.js +4 -0
  81. package/dist/commonjs/status-indicator/lib/StatusIndicator.d.ts +32 -8
  82. package/dist/commonjs/status-indicator/lib/StatusIndicator.d.ts.map +1 -1
  83. package/dist/commonjs/status-indicator/lib/StatusIndicator.js +37 -35
  84. package/dist/commonjs/status-indicator/lib/StatusIndicatorIcon.d.ts +10 -0
  85. package/dist/commonjs/status-indicator/lib/StatusIndicatorIcon.d.ts.map +1 -1
  86. package/dist/commonjs/status-indicator/lib/StatusIndicatorIcon.js +11 -23
  87. package/dist/commonjs/status-indicator/lib/StatusIndicatorLabel.js +5 -28
  88. package/dist/commonjs/status-indicator/lib/hooks/useStatusIndicatorModel.js +6 -15
  89. package/dist/commonjs/table/index.d.ts +2 -0
  90. package/dist/commonjs/table/index.d.ts.map +1 -0
  91. package/dist/commonjs/{text-area/lib/hooks → table}/index.js +1 -1
  92. package/dist/commonjs/table/lib/Table.d.ts +207 -0
  93. package/dist/commonjs/table/lib/Table.d.ts.map +1 -0
  94. package/dist/commonjs/table/lib/Table.js +229 -0
  95. package/dist/commonjs/table/lib/TableBody.d.ts +2 -0
  96. package/dist/commonjs/table/lib/TableBody.d.ts.map +1 -0
  97. package/dist/commonjs/table/lib/TableBody.js +35 -0
  98. package/dist/commonjs/table/lib/TableCaption.d.ts +2 -0
  99. package/dist/commonjs/table/lib/TableCaption.d.ts.map +1 -0
  100. package/dist/commonjs/table/lib/TableCaption.js +16 -0
  101. package/dist/commonjs/table/lib/TableCell.d.ts +2 -0
  102. package/dist/commonjs/table/lib/TableCell.d.ts.map +1 -0
  103. package/dist/commonjs/table/lib/TableCell.js +16 -0
  104. package/dist/commonjs/table/lib/TableFooter.d.ts +2 -0
  105. package/dist/commonjs/table/lib/TableFooter.d.ts.map +1 -0
  106. package/dist/commonjs/table/lib/TableFooter.js +15 -0
  107. package/dist/commonjs/table/lib/TableHead.d.ts +2 -0
  108. package/dist/commonjs/table/lib/TableHead.d.ts.map +1 -0
  109. package/dist/commonjs/table/lib/TableHead.js +23 -0
  110. package/dist/commonjs/table/lib/TableHeader.d.ts +2 -0
  111. package/dist/commonjs/table/lib/TableHeader.d.ts.map +1 -0
  112. package/dist/commonjs/table/lib/TableHeader.js +16 -0
  113. package/dist/commonjs/table/lib/TableRow.d.ts +2 -0
  114. package/dist/commonjs/table/lib/TableRow.d.ts.map +1 -0
  115. package/dist/commonjs/table/lib/TableRow.js +19 -0
  116. package/dist/commonjs/text-area/lib/TextArea.d.ts +2 -2
  117. package/dist/commonjs/text-area/lib/TextArea.d.ts.map +1 -1
  118. package/dist/commonjs/text-area/lib/TextArea.js +9 -33
  119. package/dist/commonjs/text-area/lib/TextAreaField.d.ts +1 -1
  120. package/dist/commonjs/text-area/lib/TextAreaField.d.ts.map +1 -1
  121. package/dist/commonjs/text-area/lib/TextAreaField.js +12 -36
  122. package/dist/commonjs/text-input/lib/TextInput.d.ts +4 -4
  123. package/dist/commonjs/text-input/lib/TextInput.d.ts.map +1 -1
  124. package/dist/commonjs/text-input/lib/TextInput.js +9 -33
  125. package/dist/commonjs/text-input/lib/TextInputField.d.ts +1 -1
  126. package/dist/commonjs/text-input/lib/TextInputField.d.ts.map +1 -1
  127. package/dist/commonjs/text-input/lib/TextInputField.js +13 -25
  128. package/dist/commonjs/text-input/lib/hooks/useTextInputField.d.ts +3 -5
  129. package/dist/commonjs/text-input/lib/hooks/useTextInputField.d.ts.map +1 -1
  130. package/dist/commonjs/text-input/lib/hooks/useTextInputField.js +3 -3
  131. package/dist/commonjs/text-input/lib/hooks/useTextInputModel.d.ts +1 -0
  132. package/dist/commonjs/text-input/lib/hooks/useTextInputModel.d.ts.map +1 -1
  133. package/dist/commonjs/text-input/lib/hooks/useTextInputModel.js +2 -1
  134. package/dist/es6/color-picker/lib/ColorPicker.js +16 -39
  135. package/dist/es6/color-picker/lib/parts/ColorReset.js +27 -18
  136. package/dist/es6/color-picker/lib/parts/SwatchBook.js +21 -34
  137. package/dist/es6/form-field/lib/FormField.d.ts +4 -10
  138. package/dist/es6/form-field/lib/FormField.d.ts.map +1 -1
  139. package/dist/es6/form-field/lib/FormField.js +5 -28
  140. package/dist/es6/form-field/lib/FormFieldHint.d.ts +1 -1
  141. package/dist/es6/form-field/lib/FormFieldHint.js +4 -27
  142. package/dist/es6/form-field/lib/FormFieldInput.d.ts +1 -1
  143. package/dist/es6/form-field/lib/FormFieldInput.js +3 -14
  144. package/dist/es6/form-field/lib/FormFieldLabel.d.ts +2 -8
  145. package/dist/es6/form-field/lib/FormFieldLabel.d.ts.map +1 -1
  146. package/dist/es6/form-field/lib/FormFieldLabel.js +5 -28
  147. package/dist/es6/form-field/lib/hooks/useFormFieldHint.d.ts +3 -5
  148. package/dist/es6/form-field/lib/hooks/useFormFieldHint.d.ts.map +1 -1
  149. package/dist/es6/form-field/lib/hooks/useFormFieldHint.js +2 -3
  150. package/dist/es6/form-field/lib/hooks/useFormFieldInput.d.ts +3 -5
  151. package/dist/es6/form-field/lib/hooks/useFormFieldInput.d.ts.map +1 -1
  152. package/dist/es6/form-field/lib/hooks/useFormFieldInput.js +3 -4
  153. package/dist/es6/form-field/lib/hooks/useFormFieldLabel.d.ts +3 -5
  154. package/dist/es6/form-field/lib/hooks/useFormFieldLabel.d.ts.map +1 -1
  155. package/dist/es6/form-field/lib/hooks/useFormFieldLabel.js +2 -3
  156. package/dist/es6/form-field/lib/hooks/useFormFieldModel.d.ts +2 -12
  157. package/dist/es6/form-field/lib/hooks/useFormFieldModel.d.ts.map +1 -1
  158. package/dist/es6/form-field/lib/hooks/useFormFieldModel.js +9 -19
  159. package/dist/es6/form-field/lib/hooks/useFormFieldOrientation.d.ts +4 -4
  160. package/dist/es6/form-field/lib/hooks/useFormFieldOrientation.d.ts.map +1 -1
  161. package/dist/es6/form-field/lib/hooks/useFormFieldOrientation.js +4 -4
  162. package/dist/es6/menu/lib/Menu.d.ts +16 -9
  163. package/dist/es6/menu/lib/Menu.d.ts.map +1 -1
  164. package/dist/es6/menu/lib/Menu.js +103 -128
  165. package/dist/es6/menu/lib/MenuItem.d.ts +17 -7
  166. package/dist/es6/menu/lib/MenuItem.d.ts.map +1 -1
  167. package/dist/es6/menu/lib/MenuItem.js +107 -111
  168. package/dist/es6/pill/lib/Pill.d.ts +103 -5
  169. package/dist/es6/pill/lib/Pill.d.ts.map +1 -1
  170. package/dist/es6/pill/lib/Pill.js +149 -55
  171. package/dist/es6/pill/lib/PillAvatar.js +3 -14
  172. package/dist/es6/pill/lib/PillCount.js +4 -27
  173. package/dist/es6/pill/lib/PillIcon.js +3 -26
  174. package/dist/es6/pill/lib/PillIconButton.js +7 -30
  175. package/dist/es6/pill/lib/PillLabel.js +5 -28
  176. package/dist/es6/pill/lib/usePillModel.js +8 -16
  177. package/dist/es6/segmented-control/index.d.ts +2 -0
  178. package/dist/es6/segmented-control/index.d.ts.map +1 -1
  179. package/dist/es6/segmented-control/index.js +2 -0
  180. package/dist/es6/segmented-control/lib/SegmentedControl.d.ts +267 -82
  181. package/dist/es6/segmented-control/lib/SegmentedControl.d.ts.map +1 -1
  182. package/dist/es6/segmented-control/lib/SegmentedControl.js +38 -3
  183. package/dist/es6/segmented-control/lib/SegmentedControlItem.d.ts +9 -5
  184. package/dist/es6/segmented-control/lib/SegmentedControlItem.d.ts.map +1 -1
  185. package/dist/es6/segmented-control/lib/SegmentedControlItem.js +17 -42
  186. package/dist/es6/segmented-control/lib/SegmentedControlList.d.ts +71 -2
  187. package/dist/es6/segmented-control/lib/SegmentedControlList.d.ts.map +1 -1
  188. package/dist/es6/segmented-control/lib/SegmentedControlList.js +9 -34
  189. package/dist/es6/segmented-control/lib/hooks/useSegmentedControlItem.d.ts +28 -9
  190. package/dist/es6/segmented-control/lib/hooks/useSegmentedControlItem.d.ts.map +1 -1
  191. package/dist/es6/segmented-control/lib/hooks/useSegmentedControlItem.js +5 -7
  192. package/dist/es6/segmented-control/lib/hooks/useSegmentedControlModel.d.ts +233 -83
  193. package/dist/es6/segmented-control/lib/hooks/useSegmentedControlModel.d.ts.map +1 -1
  194. package/dist/es6/segmented-control/lib/hooks/useSegmentedControlModel.js +31 -30
  195. package/dist/es6/select/lib/Select.js +144 -184
  196. package/dist/es6/select/lib/SelectBase.js +99 -94
  197. package/dist/es6/select/lib/SelectMenu.js +49 -80
  198. package/dist/es6/select/lib/SelectOption.js +30 -44
  199. package/dist/es6/select/lib/scrolling.js +6 -7
  200. package/dist/es6/select/lib/utils.js +4 -4
  201. package/dist/es6/side-panel/lib/SidePanel.d.ts +13 -26
  202. package/dist/es6/side-panel/lib/SidePanel.d.ts.map +1 -1
  203. package/dist/es6/side-panel/lib/SidePanel.js +93 -130
  204. package/dist/es6/side-panel/lib/SidePanelToggleButton.d.ts +17 -0
  205. package/dist/es6/side-panel/lib/SidePanelToggleButton.d.ts.map +1 -0
  206. package/dist/es6/side-panel/lib/SidePanelToggleButton.js +43 -0
  207. package/dist/es6/side-panel/lib/hooks.d.ts +20 -0
  208. package/dist/es6/side-panel/lib/hooks.d.ts.map +1 -1
  209. package/dist/es6/side-panel/lib/hooks.js +37 -18
  210. package/dist/es6/status-indicator/index.d.ts +2 -0
  211. package/dist/es6/status-indicator/index.d.ts.map +1 -1
  212. package/dist/es6/status-indicator/index.js +2 -0
  213. package/dist/es6/status-indicator/lib/StatusIndicator.d.ts +32 -8
  214. package/dist/es6/status-indicator/lib/StatusIndicator.d.ts.map +1 -1
  215. package/dist/es6/status-indicator/lib/StatusIndicator.js +33 -31
  216. package/dist/es6/status-indicator/lib/StatusIndicatorIcon.d.ts +10 -0
  217. package/dist/es6/status-indicator/lib/StatusIndicatorIcon.d.ts.map +1 -1
  218. package/dist/es6/status-indicator/lib/StatusIndicatorIcon.js +6 -18
  219. package/dist/es6/status-indicator/lib/StatusIndicatorLabel.js +3 -26
  220. package/dist/es6/status-indicator/lib/hooks/useStatusIndicatorModel.js +6 -15
  221. package/dist/es6/table/index.d.ts +2 -0
  222. package/dist/es6/table/index.d.ts.map +1 -0
  223. package/dist/es6/table/index.js +1 -0
  224. package/dist/es6/table/lib/Table.d.ts +207 -0
  225. package/dist/es6/table/lib/Table.d.ts.map +1 -0
  226. package/dist/es6/table/lib/Table.js +223 -0
  227. package/dist/es6/table/lib/TableBody.d.ts +2 -0
  228. package/dist/es6/table/lib/TableBody.d.ts.map +1 -0
  229. package/dist/es6/table/lib/TableBody.js +29 -0
  230. package/dist/es6/table/lib/TableCaption.d.ts +2 -0
  231. package/dist/es6/table/lib/TableCaption.d.ts.map +1 -0
  232. package/dist/es6/table/lib/TableCaption.js +10 -0
  233. package/dist/es6/table/lib/TableCell.d.ts +2 -0
  234. package/dist/es6/table/lib/TableCell.d.ts.map +1 -0
  235. package/dist/es6/table/lib/TableCell.js +10 -0
  236. package/dist/es6/table/lib/TableFooter.d.ts +2 -0
  237. package/dist/es6/table/lib/TableFooter.d.ts.map +1 -0
  238. package/dist/es6/table/lib/TableFooter.js +9 -0
  239. package/dist/es6/table/lib/TableHead.d.ts +2 -0
  240. package/dist/es6/table/lib/TableHead.d.ts.map +1 -0
  241. package/dist/es6/table/lib/TableHead.js +17 -0
  242. package/dist/es6/table/lib/TableHeader.d.ts +2 -0
  243. package/dist/es6/table/lib/TableHeader.d.ts.map +1 -0
  244. package/dist/es6/table/lib/TableHeader.js +10 -0
  245. package/dist/es6/table/lib/TableRow.d.ts +2 -0
  246. package/dist/es6/table/lib/TableRow.d.ts.map +1 -0
  247. package/dist/es6/table/lib/TableRow.js +13 -0
  248. package/dist/es6/text-area/lib/TextArea.d.ts +2 -2
  249. package/dist/es6/text-area/lib/TextArea.d.ts.map +1 -1
  250. package/dist/es6/text-area/lib/TextArea.js +7 -31
  251. package/dist/es6/text-area/lib/TextAreaField.d.ts +1 -1
  252. package/dist/es6/text-area/lib/TextAreaField.d.ts.map +1 -1
  253. package/dist/es6/text-area/lib/TextAreaField.js +9 -33
  254. package/dist/es6/text-input/lib/TextInput.d.ts +4 -4
  255. package/dist/es6/text-input/lib/TextInput.d.ts.map +1 -1
  256. package/dist/es6/text-input/lib/TextInput.js +7 -31
  257. package/dist/es6/text-input/lib/TextInputField.d.ts +1 -1
  258. package/dist/es6/text-input/lib/TextInputField.d.ts.map +1 -1
  259. package/dist/es6/text-input/lib/TextInputField.js +12 -24
  260. package/dist/es6/text-input/lib/hooks/useTextInputField.d.ts +3 -5
  261. package/dist/es6/text-input/lib/hooks/useTextInputField.d.ts.map +1 -1
  262. package/dist/es6/text-input/lib/hooks/useTextInputField.js +1 -1
  263. package/dist/es6/text-input/lib/hooks/useTextInputModel.d.ts +1 -0
  264. package/dist/es6/text-input/lib/hooks/useTextInputModel.d.ts.map +1 -1
  265. package/dist/es6/text-input/lib/hooks/useTextInputModel.js +2 -1
  266. package/form-field/lib/FormField.tsx +5 -10
  267. package/form-field/lib/FormFieldLabel.tsx +6 -11
  268. package/form-field/lib/hooks/useFormFieldModel.tsx +1 -3
  269. package/form-field/lib/hooks/useFormFieldOrientation.tsx +6 -6
  270. package/menu/lib/Menu.tsx +16 -9
  271. package/menu/lib/MenuItem.tsx +19 -8
  272. package/package.json +4 -5
  273. package/pill/lib/Pill.tsx +109 -10
  274. package/pill/lib/PillCount.tsx +1 -1
  275. package/pill/lib/PillIcon.tsx +1 -1
  276. package/segmented-control/index.ts +2 -0
  277. package/segmented-control/lib/SegmentedControl.tsx +36 -0
  278. package/segmented-control/lib/SegmentedControlList.tsx +1 -1
  279. package/segmented-control/lib/hooks/useSegmentedControlItem.tsx +1 -5
  280. package/side-panel/lib/SidePanel.tsx +119 -169
  281. package/side-panel/lib/SidePanelToggleButton.tsx +78 -0
  282. package/side-panel/lib/hooks.ts +20 -0
  283. package/status-indicator/index.ts +2 -0
  284. package/status-indicator/lib/StatusIndicator.tsx +32 -6
  285. package/status-indicator/lib/StatusIndicatorIcon.tsx +1 -1
  286. package/table/LICENSE +51 -0
  287. package/table/README.md +5 -0
  288. package/table/index.ts +1 -0
  289. package/table/lib/Table.tsx +236 -0
  290. package/table/lib/TableBody.tsx +35 -0
  291. package/table/lib/TableCaption.tsx +22 -0
  292. package/table/lib/TableCell.tsx +27 -0
  293. package/table/lib/TableFooter.tsx +14 -0
  294. package/table/lib/TableHead.tsx +23 -0
  295. package/table/lib/TableHeader.tsx +28 -0
  296. package/table/lib/TableRow.tsx +26 -0
  297. package/table/package.json +6 -0
  298. package/text-area/lib/TextArea.tsx +9 -6
  299. package/text-area/lib/TextAreaField.tsx +6 -2
  300. package/text-input/lib/TextInput.tsx +9 -6
  301. package/text-input/lib/TextInputField.tsx +9 -5
  302. package/text-input/lib/hooks/useTextInputModel.ts +1 -0
  303. package/dist/commonjs/text-area/lib/hooks/index.d.ts +0 -2
  304. package/dist/commonjs/text-area/lib/hooks/index.d.ts.map +0 -1
  305. package/dist/commonjs/text-area/lib/hooks/useTextAreaModel.d.ts +0 -28
  306. package/dist/commonjs/text-area/lib/hooks/useTextAreaModel.d.ts.map +0 -1
  307. package/dist/commonjs/text-area/lib/hooks/useTextAreaModel.js +0 -5
  308. package/dist/es6/text-area/lib/hooks/index.d.ts +0 -2
  309. package/dist/es6/text-area/lib/hooks/index.d.ts.map +0 -1
  310. package/dist/es6/text-area/lib/hooks/index.js +0 -1
  311. package/dist/es6/text-area/lib/hooks/useTextAreaModel.d.ts +0 -28
  312. package/dist/es6/text-area/lib/hooks/useTextAreaModel.d.ts.map +0 -1
  313. package/dist/es6/text-area/lib/hooks/useTextAreaModel.js +0 -2
  314. package/text-area/lib/hooks/index.ts +0 -1
  315. package/text-area/lib/hooks/useTextAreaModel.ts +0 -3
@@ -1,61 +1,25 @@
1
- var __extends = (this && this.__extends) || (function () {
2
- var extendStatics = function (d, b) {
3
- extendStatics = Object.setPrototypeOf ||
4
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
5
- function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
6
- return extendStatics(d, b);
7
- };
8
- return function (d, b) {
9
- extendStatics(d, b);
10
- function __() { this.constructor = d; }
11
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
12
- };
13
- })();
14
- var __assign = (this && this.__assign) || function () {
15
- __assign = Object.assign || function(t) {
16
- for (var s, i = 1, n = arguments.length; i < n; i++) {
17
- s = arguments[i];
18
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
19
- t[p] = s[p];
20
- }
21
- return t;
22
- };
23
- return __assign.apply(this, arguments);
24
- };
25
- var __rest = (this && this.__rest) || function (s, e) {
26
- var t = {};
27
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
28
- t[p] = s[p];
29
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
30
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
31
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
32
- t[p[i]] = s[p[i]];
33
- }
34
- return t;
35
- };
36
1
  import * as React from 'react';
37
2
  import { ErrorType, createComponent, useForkRef, generateUniqueId, } from '@workday/canvas-kit-react/common';
38
3
  import { menuAnimationDuration } from './SelectMenu';
39
4
  import { SelectBase } from './SelectBase';
40
5
  import { getCorrectedIndexByValue } from './utils';
41
- var SelectContainer = /** @class */ (function (_super) {
42
- __extends(SelectContainer, _super);
43
- function SelectContainer(props) {
44
- var _this = _super.call(this, props) || this;
45
- _this.state = {
6
+ class SelectContainer extends React.Component {
7
+ constructor(props) {
8
+ super(props);
9
+ this.state = {
46
10
  focusedOptionIndex: 0,
47
11
  menuVisibility: 'closed',
48
12
  };
49
- _this.localButtonRef = React.createRef();
50
- _this.inputRef = React.createRef();
51
- _this.menuRef = React.createRef();
13
+ this.localButtonRef = React.createRef();
14
+ this.inputRef = React.createRef();
15
+ this.menuRef = React.createRef();
52
16
  // For type-ahead functionality
53
- _this.keysSoFar = '';
54
- _this.clearKeysSoFarTimeout = 500;
17
+ this.keysSoFar = '';
18
+ this.clearKeysSoFarTimeout = 500;
55
19
  // Cached values
56
- _this.normalizedOptions = [];
57
- _this.areOptionsDefined = function () {
58
- var options = _this.props.options;
20
+ this.normalizedOptions = [];
21
+ this.areOptionsDefined = () => {
22
+ const { options } = this.props;
59
23
  if (!options || options.length === 0) {
60
24
  return false;
61
25
  }
@@ -64,15 +28,15 @@ var SelectContainer = /** @class */ (function (_super) {
64
28
  // Store normalized options since the options prop can take on multiple
65
29
  // forms: an array of strings or an array of objects (sometimes with
66
30
  // arbitrary keys)
67
- _this.setNormalizedOptions = function () {
68
- var options = _this.props.options;
31
+ this.setNormalizedOptions = () => {
32
+ const { options } = this.props;
69
33
  // Abort if options weren't defined
70
- if (!_this.areOptionsDefined()) {
34
+ if (!this.areOptionsDefined()) {
71
35
  return;
72
36
  }
73
- _this.normalizedOptions = options.map(function (option) {
74
- var data = {};
75
- var disabled, id, label, value;
37
+ this.normalizedOptions = options.map(option => {
38
+ let data = {};
39
+ let disabled, id, label, value;
76
40
  if (typeof option === 'string') {
77
41
  disabled = false;
78
42
  id = generateUniqueId();
@@ -87,21 +51,19 @@ var SelectContainer = /** @class */ (function (_super) {
87
51
  label = option.label || option.value;
88
52
  }
89
53
  return {
90
- data: data,
91
- disabled: disabled,
92
- id: id,
93
- label: label,
94
- value: value,
54
+ data,
55
+ disabled,
56
+ id,
57
+ label,
58
+ value,
95
59
  };
96
60
  });
97
61
  };
98
- _this.getIndexByStartString = function (startIndex, startString, endIndex, ignoreDisabled) {
99
- if (endIndex === void 0) { endIndex = _this.normalizedOptions.length; }
100
- if (ignoreDisabled === void 0) { ignoreDisabled = true; }
101
- for (var i = startIndex; i < endIndex; i++) {
102
- var label = _this.normalizedOptions[i].label.toLowerCase();
62
+ this.getIndexByStartString = (startIndex, startString, endIndex = this.normalizedOptions.length, ignoreDisabled = true) => {
63
+ for (let i = startIndex; i < endIndex; i++) {
64
+ const label = this.normalizedOptions[i].label.toLowerCase();
103
65
  if (label.indexOf(startString.toLowerCase()) === 0) {
104
- if (!ignoreDisabled || (ignoreDisabled && !_this.normalizedOptions[i].disabled)) {
66
+ if (!ignoreDisabled || (ignoreDisabled && !this.normalizedOptions[i].disabled)) {
105
67
  return i;
106
68
  }
107
69
  }
@@ -117,64 +79,64 @@ var SelectContainer = /** @class */ (function (_super) {
117
79
  // Up/Down key means "focus the first enabled option above/below the currently
118
80
  // focused option", or pressing the Home/End key means "focus the first/last
119
81
  // enabled option on the menu."
120
- _this.focusNextEnabledOption = function (startIndex, direction) {
82
+ this.focusNextEnabledOption = (startIndex, direction) => {
121
83
  // Ensure direction is non-zero
122
84
  if (direction === 0) {
123
85
  return;
124
86
  }
125
- var numOptions = _this.normalizedOptions.length;
126
- var currentIndex = startIndex;
87
+ const numOptions = this.normalizedOptions.length;
88
+ let currentIndex = startIndex;
127
89
  // Check if currentIndex refers to an enabled option. If not, keep moving
128
90
  // the index in the prescribed direction until we find an enabled option.
129
91
  while (currentIndex >= 0 &&
130
92
  currentIndex < numOptions &&
131
- _this.normalizedOptions[currentIndex].disabled) {
93
+ this.normalizedOptions[currentIndex].disabled) {
132
94
  currentIndex += direction;
133
95
  }
134
96
  // Update the focused index only if currentIndex is inbounds and
135
97
  // refers to an enabled option
136
98
  if (currentIndex >= 0 &&
137
99
  currentIndex < numOptions &&
138
- !_this.normalizedOptions[currentIndex].disabled) {
139
- _this.setState({ focusedOptionIndex: currentIndex });
100
+ !this.normalizedOptions[currentIndex].disabled) {
101
+ this.setState({ focusedOptionIndex: currentIndex });
140
102
  }
141
103
  };
142
- _this.updateStateFromValue = function () {
143
- _this.setState({
144
- focusedOptionIndex: getCorrectedIndexByValue(_this.normalizedOptions, _this.props.value),
104
+ this.updateStateFromValue = () => {
105
+ this.setState({
106
+ focusedOptionIndex: getCorrectedIndexByValue(this.normalizedOptions, this.props.value),
145
107
  });
146
108
  };
147
- _this.focusButton = function () {
148
- if (_this.localButtonRef.current) {
149
- _this.localButtonRef.current.focus();
109
+ this.focusButton = () => {
110
+ if (this.localButtonRef.current) {
111
+ this.localButtonRef.current.focus();
150
112
  }
151
113
  };
152
- _this.setMenuAnimationTimeout = function (callback) {
153
- if (_this.menuAnimationTimer) {
154
- clearTimeout(_this.menuAnimationTimer);
114
+ this.setMenuAnimationTimeout = (callback) => {
115
+ if (this.menuAnimationTimer) {
116
+ clearTimeout(this.menuAnimationTimer);
155
117
  }
156
- _this.menuAnimationTimer = setTimeout(callback, menuAnimationDuration);
118
+ this.menuAnimationTimer = setTimeout(callback, menuAnimationDuration);
157
119
  };
158
- _this.openMenu = function () {
159
- _this.setState({ menuVisibility: 'opening' });
160
- _this.setMenuAnimationTimeout(function () {
161
- _this.setState({ menuVisibility: 'opened' });
120
+ this.openMenu = () => {
121
+ this.setState({ menuVisibility: 'opening' });
122
+ this.setMenuAnimationTimeout(() => {
123
+ this.setState({ menuVisibility: 'opened' });
162
124
  });
163
125
  };
164
- _this.closeMenu = function () {
165
- _this.setState({ menuVisibility: 'closing' });
166
- _this.setMenuAnimationTimeout(function () {
167
- _this.setState({
126
+ this.closeMenu = () => {
127
+ this.setState({ menuVisibility: 'closing' });
128
+ this.setMenuAnimationTimeout(() => {
129
+ this.setState({
168
130
  // Reset the focused option to the currently selected option in case
169
131
  // the user focused a different option but chose not to select it. The
170
132
  // next time the menu opens, focus should begin on the selected option.
171
- focusedOptionIndex: getCorrectedIndexByValue(_this.normalizedOptions, _this.props.value),
133
+ focusedOptionIndex: getCorrectedIndexByValue(this.normalizedOptions, this.props.value),
172
134
  menuVisibility: 'closed',
173
135
  });
174
136
  });
175
137
  };
176
- _this.toggleMenu = function (open) {
177
- var menuVisibility = _this.state.menuVisibility;
138
+ this.toggleMenu = (open) => {
139
+ const { menuVisibility } = this.state;
178
140
  if (open) {
179
141
  switch (menuVisibility) {
180
142
  // We're opening a menu which is currently closed: set the menu state
@@ -182,14 +144,14 @@ var SelectContainer = /** @class */ (function (_super) {
182
144
  // from 0 opacity in the open state to the targeted 1.0 opacity in
183
145
  // the opening state.
184
146
  case 'closed':
185
- _this.setState({ menuVisibility: 'open' }, _this.openMenu);
147
+ this.setState({ menuVisibility: 'open' }, this.openMenu);
186
148
  break;
187
149
  // We're opening a menu which is in the process of closing. Since the
188
150
  // menu isn't closed, there's no need to set the open state: kick off
189
151
  // openMenu immediately.
190
152
  case 'close':
191
153
  case 'closing':
192
- _this.openMenu();
154
+ this.openMenu();
193
155
  break;
194
156
  // Otherwise, we're opening a menu is already opened or in the process of
195
157
  // opening; no need to do anything further.
@@ -202,14 +164,14 @@ var SelectContainer = /** @class */ (function (_super) {
202
164
  // We're closing a menu which is currently opened: set the menu state to
203
165
  // close before kicking off closeMenu.
204
166
  case 'opened':
205
- _this.setState({ menuVisibility: 'close' }, _this.closeMenu);
167
+ this.setState({ menuVisibility: 'close' }, this.closeMenu);
206
168
  break;
207
169
  // We're closing a menu which is in the process of opening. Since the
208
170
  // menu isn't opened, there's no need to set the close state: kick off
209
171
  // closeMenu immediately.
210
172
  case 'open':
211
173
  case 'opening':
212
- _this.closeMenu();
174
+ this.closeMenu();
213
175
  break;
214
176
  // Otherwise, we're closing a menu which is already closed or in the process
215
177
  // of closing; no need to do anything further.
@@ -222,28 +184,28 @@ var SelectContainer = /** @class */ (function (_super) {
222
184
  // In order for Select to be usable as a controlled component, we
223
185
  // need to programmatically change the value of the SelectInput
224
186
  // in such a way that triggers its change event
225
- _this.fireChangeEvent = function (value) {
226
- if (_this.inputRef && _this.inputRef.current) {
227
- var nativeInputValue = Object.getOwnPropertyDescriptor(Object.getPrototypeOf(_this.inputRef.current), 'value');
187
+ this.fireChangeEvent = (value) => {
188
+ if (this.inputRef && this.inputRef.current) {
189
+ const nativeInputValue = Object.getOwnPropertyDescriptor(Object.getPrototypeOf(this.inputRef.current), 'value');
228
190
  if (nativeInputValue && nativeInputValue.set) {
229
- nativeInputValue.set.call(_this.inputRef.current, value);
191
+ nativeInputValue.set.call(this.inputRef.current, value);
230
192
  }
231
- var event_1;
193
+ let event;
232
194
  if (typeof Event === 'function') {
233
195
  // Modern browsers
234
- event_1 = new Event('change', { bubbles: true });
196
+ event = new Event('change', { bubbles: true });
235
197
  }
236
198
  else {
237
199
  // IE 11
238
- event_1 = document.createEvent('Event');
239
- event_1.initEvent('change', true, true);
200
+ event = document.createEvent('Event');
201
+ event.initEvent('change', true, true);
240
202
  }
241
- _this.inputRef.current.dispatchEvent(event_1);
203
+ this.inputRef.current.dispatchEvent(event);
242
204
  }
243
205
  };
244
- _this.handleKeyboardTypeAhead = function (key, numOptions) {
206
+ this.handleKeyboardTypeAhead = (key, numOptions) => {
245
207
  // Abort immediately if the menu is the process of closing
246
- if (_this.state.menuVisibility === 'closing') {
208
+ if (this.state.menuVisibility === 'closing') {
247
209
  return;
248
210
  }
249
211
  // Set the starting point of the search to one of two locations
@@ -260,45 +222,45 @@ var SelectContainer = /** @class */ (function (_super) {
260
222
  // "San Francisco" as you type "san " (because "san " still matches
261
223
  // "San Francisco") and then advances focus to "San Jose" after you
262
224
  // type the "j" at the end.
263
- var start = _this.keysSoFar.length === 0
264
- ? _this.state.focusedOptionIndex + 1
265
- : _this.state.focusedOptionIndex;
225
+ let start = this.keysSoFar.length === 0
226
+ ? this.state.focusedOptionIndex + 1
227
+ : this.state.focusedOptionIndex;
266
228
  // If the starting point is beyond the list of options, reset it
267
229
  // to the beginning of the list
268
230
  start = start === numOptions ? 0 : start;
269
- _this.keysSoFar += key;
270
- _this.startClearKeysSoFarTimer();
231
+ this.keysSoFar += key;
232
+ this.startClearKeysSoFarTimer();
271
233
  // First, look for a match from start to end
272
- var matchIndex;
273
- matchIndex = _this.getIndexByStartString(start, _this.keysSoFar);
234
+ let matchIndex;
235
+ matchIndex = this.getIndexByStartString(start, this.keysSoFar);
274
236
  // If a match isn't found between start and end, wrap the search
275
237
  // around and search again from the beginning (0) to start
276
238
  if (matchIndex === -1) {
277
- matchIndex = _this.getIndexByStartString(0, _this.keysSoFar, start);
239
+ matchIndex = this.getIndexByStartString(0, this.keysSoFar, start);
278
240
  }
279
241
  // A match was found...
280
242
  if (matchIndex > -1) {
281
- if (_this.state.menuVisibility === 'closed') {
243
+ if (this.state.menuVisibility === 'closed') {
282
244
  // If the menu is closed, fire the change event
283
- _this.fireChangeEvent(_this.normalizedOptions[matchIndex].value);
245
+ this.fireChangeEvent(this.normalizedOptions[matchIndex].value);
284
246
  }
285
247
  else {
286
248
  // Otherwise the menu is visible (or at least partially visible);
287
249
  // focus the matched option
288
- _this.setState({ focusedOptionIndex: matchIndex });
250
+ this.setState({ focusedOptionIndex: matchIndex });
289
251
  }
290
252
  }
291
253
  };
292
- _this.startClearKeysSoFarTimer = function () {
293
- if (_this.clearKeysSoFarTimer) {
294
- clearTimeout(_this.clearKeysSoFarTimer);
254
+ this.startClearKeysSoFarTimer = () => {
255
+ if (this.clearKeysSoFarTimer) {
256
+ clearTimeout(this.clearKeysSoFarTimer);
295
257
  }
296
- _this.clearKeysSoFarTimer = setTimeout(function () {
297
- _this.keysSoFar = '';
298
- }, _this.clearKeysSoFarTimeout);
258
+ this.clearKeysSoFarTimer = setTimeout(() => {
259
+ this.keysSoFar = '';
260
+ }, this.clearKeysSoFarTimeout);
299
261
  };
300
- _this.handleClick = function (event) {
301
- var menuVisibility = _this.state.menuVisibility;
262
+ this.handleClick = (event) => {
263
+ const { menuVisibility } = this.state;
302
264
  switch (menuVisibility) {
303
265
  // If we click the button while the menu is in the process of closing,
304
266
  // we want to toggle the menu back on. However, we also need to focus
@@ -306,48 +268,48 @@ var SelectContainer = /** @class */ (function (_super) {
306
268
  // callback (because the menu already exists).
307
269
  case 'close':
308
270
  case 'closing':
309
- if (_this.menuRef.current) {
310
- _this.menuRef.current.focus();
271
+ if (this.menuRef.current) {
272
+ this.menuRef.current.focus();
311
273
  }
312
- _this.toggleMenu(true);
274
+ this.toggleMenu(true);
313
275
  break;
314
276
  case 'closed':
315
- _this.toggleMenu(true);
277
+ this.toggleMenu(true);
316
278
  break;
317
279
  // Otherwise, the menu is opened or in the process of opening; toggle
318
280
  // the menu off.
319
281
  default:
320
- _this.toggleMenu(false);
282
+ this.toggleMenu(false);
321
283
  break;
322
284
  }
323
285
  };
324
- _this.handleOptionSelection = function (index) {
286
+ this.handleOptionSelection = (index) => {
325
287
  // Abort if a disabled option was clicked (we ignore these clicks)
326
- if (_this.normalizedOptions[index].disabled) {
288
+ if (this.normalizedOptions[index].disabled) {
327
289
  return;
328
290
  }
329
291
  // Toggle menu off, shift focus back to the button, and fire change event
330
- _this.toggleMenu(false);
331
- _this.focusButton();
332
- _this.fireChangeEvent(_this.normalizedOptions[index].value);
292
+ this.toggleMenu(false);
293
+ this.focusButton();
294
+ this.fireChangeEvent(this.normalizedOptions[index].value);
333
295
  };
334
- _this.handleMenuCloseOnKeyPress = function () {
296
+ this.handleMenuCloseOnKeyPress = () => {
335
297
  // Toggle menu off and shift focus back to the button
336
- _this.handleClose();
337
- _this.focusButton();
298
+ this.handleClose();
299
+ this.focusButton();
338
300
  };
339
- _this.handleClose = function () {
340
- _this.toggleMenu(false);
301
+ this.handleClose = () => {
302
+ this.toggleMenu(false);
341
303
  };
342
- _this.handleKeyDown = function (event) {
343
- var options = _this.props.options;
344
- var numOptions = options.length;
345
- var _a = _this.state, focusedOptionIndex = _a.focusedOptionIndex, menuVisibility = _a.menuVisibility;
346
- var isShortcut = false;
304
+ this.handleKeyDown = (event) => {
305
+ const { options } = this.props;
306
+ const numOptions = options.length;
307
+ const { focusedOptionIndex, menuVisibility } = this.state;
308
+ let isShortcut = false;
347
309
  // Check for type-ahead first
348
310
  if (event.key.length === 1 && event.key.match(/\S/)) {
349
311
  isShortcut = true;
350
- _this.handleKeyboardTypeAhead(event.key, numOptions);
312
+ this.handleKeyboardTypeAhead(event.key, numOptions);
351
313
  }
352
314
  else {
353
315
  switch (event.key) {
@@ -357,25 +319,25 @@ var SelectContainer = /** @class */ (function (_super) {
357
319
  case 'Down': // IE/Edge specific value
358
320
  isShortcut = true;
359
321
  if (menuVisibility === 'closed' || menuVisibility === 'closing') {
360
- _this.toggleMenu(true);
322
+ this.toggleMenu(true);
361
323
  }
362
324
  else {
363
- var direction_1 = event.key === 'ArrowUp' || event.key === 'Up' ? -1 : 1;
364
- var startIndex_1 = focusedOptionIndex + direction_1;
365
- _this.focusNextEnabledOption(startIndex_1, direction_1);
325
+ const direction = event.key === 'ArrowUp' || event.key === 'Up' ? -1 : 1;
326
+ const startIndex = focusedOptionIndex + direction;
327
+ this.focusNextEnabledOption(startIndex, direction);
366
328
  }
367
329
  break;
368
330
  case 'Home':
369
331
  case 'End':
370
332
  isShortcut = true;
371
- var direction = event.key === 'Home' ? 1 : -1;
372
- var startIndex = event.key === 'Home' ? 0 : numOptions - 1;
373
- _this.focusNextEnabledOption(startIndex, direction);
333
+ const direction = event.key === 'Home' ? 1 : -1;
334
+ const startIndex = event.key === 'Home' ? 0 : numOptions - 1;
335
+ this.focusNextEnabledOption(startIndex, direction);
374
336
  break;
375
337
  case 'Tab':
376
338
  if (menuVisibility !== 'closed') {
377
339
  isShortcut = true;
378
- _this.handleMenuCloseOnKeyPress();
340
+ this.handleMenuCloseOnKeyPress();
379
341
  }
380
342
  break;
381
343
  case 'Spacebar':
@@ -383,14 +345,14 @@ var SelectContainer = /** @class */ (function (_super) {
383
345
  isShortcut = true;
384
346
  // If the user is in the middle of typing a string, treat
385
347
  // space key as type-ahead rather than option selection
386
- if (_this.keysSoFar !== '') {
387
- _this.handleKeyboardTypeAhead(' ', numOptions);
348
+ if (this.keysSoFar !== '') {
349
+ this.handleKeyboardTypeAhead(' ', numOptions);
388
350
  }
389
351
  else if (menuVisibility === 'closed' || menuVisibility === 'closing') {
390
- _this.toggleMenu(true);
352
+ this.toggleMenu(true);
391
353
  }
392
354
  else {
393
- _this.handleOptionSelection(focusedOptionIndex);
355
+ this.handleOptionSelection(focusedOptionIndex);
394
356
  }
395
357
  break;
396
358
  case 'Enter':
@@ -400,7 +362,7 @@ var SelectContainer = /** @class */ (function (_super) {
400
362
  isShortcut = false;
401
363
  }
402
364
  else {
403
- _this.handleOptionSelection(focusedOptionIndex);
365
+ this.handleOptionSelection(focusedOptionIndex);
404
366
  }
405
367
  break;
406
368
  default:
@@ -421,7 +383,7 @@ var SelectContainer = /** @class */ (function (_super) {
421
383
  event.preventDefault();
422
384
  }
423
385
  };
424
- _this.setNormalizedOptions();
386
+ this.setNormalizedOptions();
425
387
  // We need a local ref (RefObject) to the Select component's underlying
426
388
  // button to manage focus within the component and to serve as its Popper
427
389
  // Menu's anchorElement. If the buttonRef prop (to be forwarded to the
@@ -440,14 +402,13 @@ var SelectContainer = /** @class */ (function (_super) {
440
402
  // or call buttonRef with the underlying button element if it was a
441
403
  // callback ref.
442
404
  // eslint-disable-next-line react-hooks/rules-of-hooks
443
- _this.forwardedButtonRef = useForkRef(props.buttonRef, _this.localButtonRef);
444
- return _this;
405
+ this.forwardedButtonRef = useForkRef(props.buttonRef, this.localButtonRef);
445
406
  }
446
- SelectContainer.prototype.componentDidMount = function () {
407
+ componentDidMount() {
447
408
  this.updateStateFromValue();
448
- };
449
- SelectContainer.prototype.componentDidUpdate = function (prevProps) {
450
- var _a = this.props, options = _a.options, value = _a.value;
409
+ }
410
+ componentDidUpdate(prevProps) {
411
+ const { options, value } = this.props;
451
412
  if (options !== prevProps.options) {
452
413
  this.setNormalizedOptions();
453
414
  this.updateStateFromValue();
@@ -455,8 +416,8 @@ var SelectContainer = /** @class */ (function (_super) {
455
416
  if (value !== prevProps.value) {
456
417
  this.updateStateFromValue();
457
418
  }
458
- };
459
- SelectContainer.prototype.componentWillUnmount = function () {
419
+ }
420
+ componentWillUnmount() {
460
421
  // Clear timers
461
422
  if (this.menuAnimationTimer) {
462
423
  clearTimeout(this.menuAnimationTimer);
@@ -464,14 +425,14 @@ var SelectContainer = /** @class */ (function (_super) {
464
425
  if (this.clearKeysSoFarTimer) {
465
426
  clearTimeout(this.clearKeysSoFarTimer);
466
427
  }
467
- };
468
- SelectContainer.prototype.render = function () {
469
- var _a = this.props, value = _a.value,
428
+ }
429
+ render() {
430
+ const { value,
470
431
  // Strip props we don't want to pass down from elemProps
471
- buttonRef = _a.buttonRef, options = _a.options, onKeyDown = _a.onKeyDown, elemProps = __rest(_a, ["value", "buttonRef", "options", "onKeyDown"]);
472
- var _b = this.state, focusedOptionIndex = _b.focusedOptionIndex, menuVisibility = _b.menuVisibility;
432
+ buttonRef, options, onKeyDown, ...elemProps } = this.props;
433
+ const { focusedOptionIndex, menuVisibility } = this.state;
473
434
  // Don't pass in event handlers if options weren't defined
474
- var eventHandlers = this.areOptionsDefined()
435
+ const eventHandlers = this.areOptionsDefined()
475
436
  ? {
476
437
  onClick: this.handleClick,
477
438
  onKeyDown: this.handleKeyDown,
@@ -479,18 +440,17 @@ var SelectContainer = /** @class */ (function (_super) {
479
440
  onOptionSelection: this.handleOptionSelection,
480
441
  }
481
442
  : {};
482
- return (React.createElement(SelectBase, __assign({ forwardedButtonRef: this.forwardedButtonRef, localButtonRef: this.localButtonRef, focusedOptionIndex: focusedOptionIndex, inputRef: this.inputRef, menuRef: this.menuRef, menuVisibility: menuVisibility, options: this.normalizedOptions, value: value }, eventHandlers, elemProps)));
483
- };
484
- SelectContainer.ErrorType = ErrorType;
485
- return SelectContainer;
486
- }(React.Component));
487
- export var Select = createComponent('button')({
443
+ return (React.createElement(SelectBase, Object.assign({ forwardedButtonRef: this.forwardedButtonRef, localButtonRef: this.localButtonRef, focusedOptionIndex: focusedOptionIndex, inputRef: this.inputRef, menuRef: this.menuRef, menuVisibility: menuVisibility, options: this.normalizedOptions, value: value }, eventHandlers, elemProps)));
444
+ }
445
+ }
446
+ SelectContainer.ErrorType = ErrorType;
447
+ export const Select = createComponent('button')({
488
448
  displayName: 'Select',
489
- Component: function (props, ref, Element) { return (
449
+ Component: (props, ref, Element) => (
490
450
  // Select is still a class component, so we render a renamed version of it
491
451
  // (SelectContainer) and pass it ref and Element
492
- React.createElement(SelectContainer, __assign({ as: Element, buttonRef: ref }, props))); },
452
+ React.createElement(SelectContainer, Object.assign({ as: Element, buttonRef: ref }, props))),
493
453
  subComponents: {
494
- ErrorType: ErrorType,
454
+ ErrorType,
495
455
  },
496
456
  });