@workday/canvas-kit-react 10.0.0-alpha.540-next.0 → 10.0.0-alpha.546-next.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 (219) hide show
  1. package/collection/index.ts +1 -0
  2. package/collection/lib/useBaseListModel.tsx +3 -3
  3. package/collection/lib/useListItemRegister.tsx +1 -1
  4. package/collection/lib/useListRenderItem.tsx +2 -2
  5. package/combobox/index.ts +11 -4
  6. package/combobox/lib/Combobox.tsx +1 -1
  7. package/combobox/lib/ComboboxCard.tsx +1 -1
  8. package/combobox/lib/ComboboxInput.tsx +2 -90
  9. package/combobox/lib/ComboboxMenu.tsx +4 -3
  10. package/combobox/lib/ComboboxMenuItem.tsx +9 -8
  11. package/combobox/lib/ComboboxMenuList.tsx +1 -1
  12. package/combobox/lib/ComboboxPopper.tsx +20 -0
  13. package/combobox/lib/hooks/index.ts +9 -0
  14. package/combobox/lib/hooks/useComboboxInput.ts +88 -0
  15. package/combobox/lib/hooks/useComboboxKeyboardTypeAhead.ts +127 -0
  16. package/combobox/lib/hooks/useComboboxListKeyboardHandler.ts +23 -0
  17. package/combobox/lib/{useComboboxModel.tsx → hooks/useComboboxModel.tsx} +6 -2
  18. package/combobox/lib/hooks/useComboboxMoveCursorToSelected.tsx +27 -0
  19. package/combobox/lib/hooks/useComboboxResetCursorToSelected.tsx +18 -0
  20. package/combobox/lib/hooks/useSetPopupWidth.ts +16 -0
  21. package/common/lib/utils/components.ts +284 -274
  22. package/common/lib/utils/models.ts +67 -84
  23. package/dist/commonjs/collection/index.d.ts +1 -0
  24. package/dist/commonjs/collection/index.d.ts.map +1 -1
  25. package/dist/commonjs/collection/index.js +3 -1
  26. package/dist/commonjs/collection/lib/useBaseListModel.d.ts +1 -1
  27. package/dist/commonjs/collection/lib/useBaseListModel.d.ts.map +1 -1
  28. package/dist/commonjs/collection/lib/useBaseListModel.js +2 -2
  29. package/dist/commonjs/collection/lib/useListItemRegister.js +2 -2
  30. package/dist/commonjs/collection/lib/useListRenderItem.js +2 -2
  31. package/dist/commonjs/combobox/index.d.ts +1 -4
  32. package/dist/commonjs/combobox/index.d.ts.map +1 -1
  33. package/dist/commonjs/combobox/index.js +11 -9
  34. package/dist/commonjs/combobox/lib/Combobox.d.ts +9 -3
  35. package/dist/commonjs/combobox/lib/Combobox.d.ts.map +1 -1
  36. package/dist/commonjs/combobox/lib/Combobox.js +2 -2
  37. package/dist/commonjs/combobox/lib/ComboboxCard.js +3 -3
  38. package/dist/commonjs/combobox/lib/ComboboxInput.d.ts +1 -106
  39. package/dist/commonjs/combobox/lib/ComboboxInput.d.ts.map +1 -1
  40. package/dist/commonjs/combobox/lib/ComboboxInput.js +4 -71
  41. package/dist/commonjs/combobox/lib/ComboboxMenu.d.ts +9 -3
  42. package/dist/commonjs/combobox/lib/ComboboxMenu.d.ts.map +1 -1
  43. package/dist/commonjs/combobox/lib/ComboboxMenu.js +5 -4
  44. package/dist/commonjs/combobox/lib/ComboboxMenuItem.d.ts +7 -1
  45. package/dist/commonjs/combobox/lib/ComboboxMenuItem.d.ts.map +1 -1
  46. package/dist/commonjs/combobox/lib/ComboboxMenuItem.js +7 -7
  47. package/dist/commonjs/combobox/lib/ComboboxMenuList.js +2 -2
  48. package/dist/commonjs/combobox/lib/ComboboxPopper.d.ts +97 -0
  49. package/dist/commonjs/combobox/lib/ComboboxPopper.d.ts.map +1 -0
  50. package/dist/commonjs/{select/lib/SelectOption.js → combobox/lib/ComboboxPopper.js} +12 -8
  51. package/dist/commonjs/combobox/lib/hooks/index.d.ts +10 -0
  52. package/dist/commonjs/combobox/lib/hooks/index.d.ts.map +1 -0
  53. package/dist/commonjs/combobox/lib/hooks/index.js +21 -0
  54. package/dist/commonjs/combobox/lib/hooks/useComboboxInput.d.ts +107 -0
  55. package/dist/commonjs/combobox/lib/hooks/useComboboxInput.d.ts.map +1 -0
  56. package/dist/commonjs/combobox/lib/hooks/useComboboxInput.js +74 -0
  57. package/dist/{es6/combobox/lib → commonjs/combobox/lib/hooks}/useComboboxInputOpenWithArrowKeys.d.ts +6 -6
  58. package/dist/commonjs/combobox/lib/hooks/useComboboxInputOpenWithArrowKeys.d.ts.map +1 -0
  59. package/dist/commonjs/combobox/lib/hooks/useComboboxKeyboardTypeAhead.d.ts +101 -0
  60. package/dist/commonjs/combobox/lib/hooks/useComboboxKeyboardTypeAhead.d.ts.map +1 -0
  61. package/dist/commonjs/combobox/lib/hooks/useComboboxKeyboardTypeAhead.js +109 -0
  62. package/dist/commonjs/combobox/lib/hooks/useComboboxListKeyboardHandler.d.ts +84 -0
  63. package/dist/commonjs/combobox/lib/hooks/useComboboxListKeyboardHandler.d.ts.map +1 -0
  64. package/dist/commonjs/combobox/lib/hooks/useComboboxListKeyboardHandler.js +22 -0
  65. package/dist/commonjs/combobox/lib/hooks/useComboboxLoader.d.ts.map +1 -0
  66. package/dist/commonjs/combobox/lib/{useComboboxModel.d.ts → hooks/useComboboxModel.d.ts} +196 -196
  67. package/dist/commonjs/combobox/lib/hooks/useComboboxModel.d.ts.map +1 -0
  68. package/dist/commonjs/combobox/lib/{useComboboxModel.js → hooks/useComboboxModel.js} +3 -2
  69. package/dist/commonjs/combobox/lib/hooks/useComboboxMoveCursorToSelected.d.ts +82 -0
  70. package/dist/commonjs/combobox/lib/hooks/useComboboxMoveCursorToSelected.d.ts.map +1 -0
  71. package/dist/commonjs/combobox/lib/hooks/useComboboxMoveCursorToSelected.js +33 -0
  72. package/dist/commonjs/combobox/lib/hooks/useComboboxResetCursorToSelected.d.ts +82 -0
  73. package/dist/commonjs/combobox/lib/hooks/useComboboxResetCursorToSelected.d.ts.map +1 -0
  74. package/dist/commonjs/combobox/lib/hooks/useComboboxResetCursorToSelected.js +23 -0
  75. package/dist/commonjs/combobox/lib/hooks/useSetPopupWidth.d.ts +82 -0
  76. package/dist/commonjs/combobox/lib/hooks/useSetPopupWidth.d.ts.map +1 -0
  77. package/dist/commonjs/combobox/lib/hooks/useSetPopupWidth.js +22 -0
  78. package/dist/commonjs/common/lib/utils/components.d.ts.map +1 -1
  79. package/dist/commonjs/common/lib/utils/models.d.ts +4 -4
  80. package/dist/commonjs/common/lib/utils/models.d.ts.map +1 -1
  81. package/dist/commonjs/common/lib/utils/models.js +7 -8
  82. package/dist/commonjs/form-field/lib/FormField.d.ts.map +1 -1
  83. package/dist/commonjs/form-field/lib/FormField.js +3 -2
  84. package/dist/commonjs/menu/lib/MenuPopper.d.ts.map +1 -1
  85. package/dist/commonjs/menu/lib/MenuPopper.js +10 -1
  86. package/dist/commonjs/popup/lib/PopupPopper.d.ts.map +1 -1
  87. package/dist/commonjs/popup/lib/PopupPopper.js +10 -1
  88. package/dist/commonjs/select/index.d.ts +1 -1
  89. package/dist/commonjs/select/index.d.ts.map +1 -1
  90. package/dist/commonjs/select/index.js +1 -1
  91. package/dist/commonjs/select/lib/Select.d.ts +2634 -18
  92. package/dist/commonjs/select/lib/Select.d.ts.map +1 -1
  93. package/dist/commonjs/select/lib/Select.js +141 -84
  94. package/dist/commonjs/select/lib/hooks/index.d.ts +4 -0
  95. package/dist/commonjs/select/lib/hooks/index.d.ts.map +1 -0
  96. package/dist/commonjs/select/lib/hooks/index.js +15 -0
  97. package/dist/commonjs/select/lib/hooks/useSelectCard.d.ts +83 -0
  98. package/dist/commonjs/select/lib/hooks/useSelectCard.d.ts.map +1 -0
  99. package/dist/commonjs/select/lib/hooks/useSelectCard.js +13 -0
  100. package/dist/commonjs/select/lib/hooks/useSelectInput.d.ts +112 -0
  101. package/dist/commonjs/select/lib/hooks/useSelectInput.d.ts.map +1 -0
  102. package/dist/commonjs/select/lib/hooks/useSelectInput.js +49 -0
  103. package/dist/commonjs/select/lib/hooks/useSelectModel.d.ts +1779 -0
  104. package/dist/commonjs/select/lib/hooks/useSelectModel.d.ts.map +1 -0
  105. package/dist/commonjs/select/lib/hooks/useSelectModel.js +32 -0
  106. package/dist/es6/collection/index.d.ts +1 -0
  107. package/dist/es6/collection/index.d.ts.map +1 -1
  108. package/dist/es6/collection/index.js +1 -0
  109. package/dist/es6/collection/lib/useBaseListModel.d.ts +1 -1
  110. package/dist/es6/collection/lib/useBaseListModel.d.ts.map +1 -1
  111. package/dist/es6/collection/lib/useBaseListModel.js +2 -2
  112. package/dist/es6/collection/lib/useListItemRegister.js +2 -2
  113. package/dist/es6/collection/lib/useListRenderItem.js +2 -2
  114. package/dist/es6/combobox/index.d.ts +1 -4
  115. package/dist/es6/combobox/index.d.ts.map +1 -1
  116. package/dist/es6/combobox/index.js +1 -4
  117. package/dist/es6/combobox/lib/Combobox.d.ts +9 -3
  118. package/dist/es6/combobox/lib/Combobox.d.ts.map +1 -1
  119. package/dist/es6/combobox/lib/Combobox.js +1 -1
  120. package/dist/es6/combobox/lib/ComboboxCard.js +1 -1
  121. package/dist/es6/combobox/lib/ComboboxInput.d.ts +1 -106
  122. package/dist/es6/combobox/lib/ComboboxInput.d.ts.map +1 -1
  123. package/dist/es6/combobox/lib/ComboboxInput.js +2 -69
  124. package/dist/es6/combobox/lib/ComboboxMenu.d.ts +9 -3
  125. package/dist/es6/combobox/lib/ComboboxMenu.d.ts.map +1 -1
  126. package/dist/es6/combobox/lib/ComboboxMenu.js +4 -3
  127. package/dist/es6/combobox/lib/ComboboxMenuItem.d.ts +7 -1
  128. package/dist/es6/combobox/lib/ComboboxMenuItem.d.ts.map +1 -1
  129. package/dist/es6/combobox/lib/ComboboxMenuItem.js +7 -7
  130. package/dist/es6/combobox/lib/ComboboxMenuList.js +1 -1
  131. package/dist/es6/combobox/lib/ComboboxPopper.d.ts +97 -0
  132. package/dist/es6/combobox/lib/ComboboxPopper.d.ts.map +1 -0
  133. package/dist/es6/combobox/lib/ComboboxPopper.js +12 -0
  134. package/dist/es6/combobox/lib/hooks/index.d.ts +10 -0
  135. package/dist/es6/combobox/lib/hooks/index.d.ts.map +1 -0
  136. package/dist/es6/combobox/lib/hooks/index.js +9 -0
  137. package/dist/es6/combobox/lib/hooks/useComboboxInput.d.ts +107 -0
  138. package/dist/es6/combobox/lib/hooks/useComboboxInput.d.ts.map +1 -0
  139. package/dist/es6/combobox/lib/hooks/useComboboxInput.js +68 -0
  140. package/dist/{commonjs/combobox/lib → es6/combobox/lib/hooks}/useComboboxInputOpenWithArrowKeys.d.ts +6 -6
  141. package/dist/es6/combobox/lib/hooks/useComboboxInputOpenWithArrowKeys.d.ts.map +1 -0
  142. package/dist/es6/combobox/lib/hooks/useComboboxKeyboardTypeAhead.d.ts +101 -0
  143. package/dist/es6/combobox/lib/hooks/useComboboxKeyboardTypeAhead.d.ts.map +1 -0
  144. package/dist/es6/combobox/lib/hooks/useComboboxKeyboardTypeAhead.js +103 -0
  145. package/dist/es6/combobox/lib/hooks/useComboboxListKeyboardHandler.d.ts +84 -0
  146. package/dist/es6/combobox/lib/hooks/useComboboxListKeyboardHandler.d.ts.map +1 -0
  147. package/dist/es6/combobox/lib/hooks/useComboboxListKeyboardHandler.js +19 -0
  148. package/dist/es6/combobox/lib/hooks/useComboboxLoader.d.ts.map +1 -0
  149. package/dist/es6/combobox/lib/{useComboboxModel.d.ts → hooks/useComboboxModel.d.ts} +196 -196
  150. package/dist/es6/combobox/lib/hooks/useComboboxModel.d.ts.map +1 -0
  151. package/dist/es6/combobox/lib/{useComboboxModel.js → hooks/useComboboxModel.js} +3 -2
  152. package/dist/es6/combobox/lib/hooks/useComboboxMoveCursorToSelected.d.ts +82 -0
  153. package/dist/es6/combobox/lib/hooks/useComboboxMoveCursorToSelected.d.ts.map +1 -0
  154. package/dist/es6/combobox/lib/hooks/useComboboxMoveCursorToSelected.js +27 -0
  155. package/dist/es6/combobox/lib/hooks/useComboboxResetCursorToSelected.d.ts +82 -0
  156. package/dist/es6/combobox/lib/hooks/useComboboxResetCursorToSelected.d.ts.map +1 -0
  157. package/dist/es6/combobox/lib/hooks/useComboboxResetCursorToSelected.js +17 -0
  158. package/dist/es6/combobox/lib/hooks/useSetPopupWidth.d.ts +82 -0
  159. package/dist/es6/combobox/lib/hooks/useSetPopupWidth.d.ts.map +1 -0
  160. package/dist/es6/combobox/lib/hooks/useSetPopupWidth.js +16 -0
  161. package/dist/es6/common/lib/utils/components.d.ts.map +1 -1
  162. package/dist/es6/common/lib/utils/models.d.ts +4 -4
  163. package/dist/es6/common/lib/utils/models.d.ts.map +1 -1
  164. package/dist/es6/common/lib/utils/models.js +7 -8
  165. package/dist/es6/form-field/lib/FormField.d.ts.map +1 -1
  166. package/dist/es6/form-field/lib/FormField.js +3 -2
  167. package/dist/es6/menu/lib/MenuPopper.d.ts.map +1 -1
  168. package/dist/es6/menu/lib/MenuPopper.js +10 -1
  169. package/dist/es6/popup/lib/PopupPopper.d.ts.map +1 -1
  170. package/dist/es6/popup/lib/PopupPopper.js +10 -1
  171. package/dist/es6/select/index.d.ts +1 -1
  172. package/dist/es6/select/index.d.ts.map +1 -1
  173. package/dist/es6/select/index.js +1 -1
  174. package/dist/es6/select/lib/Select.d.ts +2634 -18
  175. package/dist/es6/select/lib/Select.d.ts.map +1 -1
  176. package/dist/es6/select/lib/Select.js +139 -66
  177. package/dist/es6/select/lib/hooks/index.d.ts +4 -0
  178. package/dist/es6/select/lib/hooks/index.d.ts.map +1 -0
  179. package/dist/es6/select/lib/hooks/index.js +3 -0
  180. package/dist/es6/select/lib/hooks/useSelectCard.d.ts +83 -0
  181. package/dist/es6/select/lib/hooks/useSelectCard.d.ts.map +1 -0
  182. package/dist/es6/select/lib/hooks/useSelectCard.js +10 -0
  183. package/dist/es6/select/lib/hooks/useSelectInput.d.ts +112 -0
  184. package/dist/es6/select/lib/hooks/useSelectInput.d.ts.map +1 -0
  185. package/dist/es6/select/lib/hooks/useSelectInput.js +46 -0
  186. package/dist/es6/select/lib/hooks/useSelectModel.d.ts +1779 -0
  187. package/dist/es6/select/lib/hooks/useSelectModel.d.ts.map +1 -0
  188. package/dist/es6/select/lib/hooks/useSelectModel.js +29 -0
  189. package/form-field/lib/FormField.tsx +8 -2
  190. package/menu/lib/MenuPopper.tsx +14 -1
  191. package/package.json +4 -4
  192. package/popup/lib/Popper.tsx +1 -1
  193. package/popup/lib/PopupPopper.tsx +17 -1
  194. package/select/index.ts +1 -1
  195. package/select/lib/Select.tsx +175 -111
  196. package/select/lib/hooks/index.ts +3 -0
  197. package/select/lib/hooks/useSelectCard.ts +11 -0
  198. package/select/lib/hooks/useSelectInput.ts +74 -0
  199. package/select/lib/hooks/useSelectModel.tsx +30 -0
  200. package/dist/commonjs/combobox/lib/useComboboxInputOpenWithArrowKeys.d.ts.map +0 -1
  201. package/dist/commonjs/combobox/lib/useComboboxLoader.d.ts.map +0 -1
  202. package/dist/commonjs/combobox/lib/useComboboxModel.d.ts.map +0 -1
  203. package/dist/commonjs/select/lib/SelectOption.d.ts +0 -20
  204. package/dist/commonjs/select/lib/SelectOption.d.ts.map +0 -1
  205. package/dist/es6/combobox/lib/useComboboxInputOpenWithArrowKeys.d.ts.map +0 -1
  206. package/dist/es6/combobox/lib/useComboboxLoader.d.ts.map +0 -1
  207. package/dist/es6/combobox/lib/useComboboxModel.d.ts.map +0 -1
  208. package/dist/es6/select/lib/SelectOption.d.ts +0 -20
  209. package/dist/es6/select/lib/SelectOption.d.ts.map +0 -1
  210. package/dist/es6/select/lib/SelectOption.js +0 -7
  211. package/select/lib/SelectOption.tsx +0 -33
  212. /package/combobox/lib/{useComboboxInputOpenWithArrowKeys.ts → hooks/useComboboxInputOpenWithArrowKeys.ts} +0 -0
  213. /package/combobox/lib/{useComboboxLoader.ts → hooks/useComboboxLoader.ts} +0 -0
  214. /package/dist/commonjs/combobox/lib/{useComboboxInputOpenWithArrowKeys.js → hooks/useComboboxInputOpenWithArrowKeys.js} +0 -0
  215. /package/dist/commonjs/combobox/lib/{useComboboxLoader.d.ts → hooks/useComboboxLoader.d.ts} +0 -0
  216. /package/dist/commonjs/combobox/lib/{useComboboxLoader.js → hooks/useComboboxLoader.js} +0 -0
  217. /package/dist/es6/combobox/lib/{useComboboxInputOpenWithArrowKeys.js → hooks/useComboboxInputOpenWithArrowKeys.js} +0 -0
  218. /package/dist/es6/combobox/lib/{useComboboxLoader.d.ts → hooks/useComboboxLoader.d.ts} +0 -0
  219. /package/dist/es6/combobox/lib/{useComboboxLoader.js → hooks/useComboboxLoader.js} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"Select.d.ts","sourceRoot":"","sources":["../../../../select/lib/Select.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAGL,cAAc,EACd,SAAS,EAGT,SAAS,EACV,MAAM,kCAAkC,CAAC;AAI1C,OAAO,EAAC,YAAY,EAAC,MAAM,gBAAgB,CAAC;AAE5C,MAAM,WAAW,WAAY,SAAQ,SAAS,EAAE,cAAc;IAC5D;;OAEG;IACH,QAAQ,EAAE,KAAK,CAAC,YAAY,CAAC,YAAY,CAAC,GAAG,KAAK,CAAC,YAAY,CAAC,YAAY,CAAC,EAAE,CAAC;IAChF;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB;;OAEG;IACH,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC,iBAAiB,CAAC,KAAK,IAAI,CAAC;IAC7D;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AA0ED,eAAO,MAAM,MAAM;;CAiBjB,CAAC"}
1
+ {"version":3,"file":"Select.d.ts","sourceRoot":"","sources":["../../../../select/lib/Select.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAEL,YAAY,EAEZ,SAAS,EACV,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAC,QAAQ,EAAC,MAAM,oCAAoC,CAAC;AAE5D,OAAO,EAAa,SAAS,EAAC,MAAM,sCAAsC,CAAC;AAK3E,OAAO,EAAC,gBAAgB,EAAC,MAAM,8BAA8B,CAAC;AAE9D,MAAM,WAAW,gBAAiB,SAAQ,YAAY,CAAC,OAAO,SAAS,CAAC;IACtE;;;;OAIG;IACH,cAAc,CAAC,EAAE,gBAAgB,CAAC;CACnC;AACD,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAwBvB,CAAC;AAEF,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAWrB,CAAC;AAEH,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EASrB,CAAC;AAEH,MAAM,WAAW,WAAY,SAAQ,SAAS,EAAE,YAAY,CAAC,OAAO,QAAQ,CAAC;CAAG;AAChF;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAIf;;;;;;;;;;;;OAYG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;;;;;;;;;;OAaG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;;;;;;;;;;;;;;OAiBG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;;;;;;;;;;;;;;OAiBG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;;;;;;;;;;;;;;OAiBG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CASL,CAAC"}
@@ -1,96 +1,153 @@
1
1
  "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
- }) : (function(o, m, k, k2) {
6
- if (k2 === undefined) k2 = k;
7
- o[k2] = m[k];
8
- }));
9
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
- Object.defineProperty(o, "default", { enumerable: true, value: v });
11
- }) : function(o, v) {
12
- o["default"] = v;
13
- });
14
- var __importStar = (this && this.__importStar) || function (mod) {
15
- if (mod && mod.__esModule) return mod;
16
- var result = {};
17
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
- __setModuleDefault(result, mod);
19
- return result;
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
20
4
  };
21
5
  Object.defineProperty(exports, "__esModule", { value: true });
22
- exports.Select = void 0;
23
- const React = __importStar(require("react"));
6
+ exports.Select = exports.SelectCard = exports.SelectItem = exports.SelectInput = void 0;
7
+ const react_1 = __importDefault(require("react"));
24
8
  const common_1 = require("@workday/canvas-kit-react/common");
25
- const tokens_1 = require("@workday/canvas-kit-react/tokens");
26
- const canvas_system_icons_web_1 = require("@workday/canvas-system-icons-web");
9
+ const combobox_1 = require("@workday/canvas-kit-react/combobox");
10
+ const text_input_1 = require("@workday/canvas-kit-react/text-input");
27
11
  const icon_1 = require("@workday/canvas-kit-react/icon");
28
- const StyledSelect = common_1.styled('select')({
29
- ...tokens_1.type.levels.subtext.large,
30
- border: `1px solid ${tokens_1.inputColors.border}`,
31
- display: 'block',
32
- backgroundColor: tokens_1.inputColors.background,
33
- borderRadius: tokens_1.borderRadius.m,
34
- boxSizing: 'border-box',
35
- height: tokens_1.space.xl,
36
- minWidth: 280,
37
- transition: '0.2s box-shadow, 0.2s border-color',
38
- padding: tokens_1.space.xxs,
39
- margin: 0,
40
- MozAppearance: 'none',
41
- WebkitAppearance: 'none',
42
- '&::placeholder': {
43
- color: tokens_1.inputColors.placeholder,
44
- },
45
- '&:hover': {
46
- borderColor: tokens_1.inputColors.hoverBorder,
47
- },
48
- '&:focus:not([disabled])': {
49
- borderColor: tokens_1.inputColors.focusBorder,
50
- boxShadow: `inset 0 0 0 1px ${tokens_1.inputColors.focusBorder}`,
51
- outline: 'none',
52
- },
53
- '&:disabled': {
54
- backgroundColor: tokens_1.inputColors.disabled.background,
55
- borderColor: tokens_1.inputColors.disabled.border,
56
- color: tokens_1.inputColors.disabled.text,
57
- '&::placeholder': {
58
- color: tokens_1.inputColors.disabled.text,
59
- },
60
- },
61
- }, ({ error }) => ({
62
- ...common_1.errorRing(error),
63
- }), ({ grow }) => grow && {
64
- width: '100%',
12
+ const canvas_system_icons_web_1 = require("@workday/canvas-system-icons-web");
13
+ const hooks_1 = require("./hooks");
14
+ const useSelectInput_1 = require("./hooks/useSelectInput");
15
+ exports.SelectInput = common_1.createSubcomponent(text_input_1.TextInput)({
16
+ modelHook: hooks_1.useSelectModel,
17
+ elemPropsHook: useSelectInput_1.useSelectInput,
18
+ })(({ placeholder = 'Choose an option', inputStartIcon, ...elemProps }, Element, model) => {
19
+ return (react_1.default.createElement(text_input_1.InputGroup, null,
20
+ inputStartIcon && model.state.selectedIds.length > 0 && (react_1.default.createElement(text_input_1.InputGroup.InnerStart, { pointerEvents: "none" },
21
+ react_1.default.createElement(icon_1.SystemIcon, { icon: inputStartIcon }))),
22
+ react_1.default.createElement(text_input_1.InputGroup.Input, Object.assign({ as: Element, placeholder: placeholder, style: { caretColor: 'transparent', cursor: 'default' } }, elemProps)),
23
+ react_1.default.createElement(text_input_1.InputGroup.InnerEnd, { position: "absolute", pointerEvents: "none" },
24
+ react_1.default.createElement(icon_1.SystemIcon, { icon: canvas_system_icons_web_1.caretDownSmallIcon }))));
65
25
  });
66
- const SelectDropdownIcon = common_1.styled(icon_1.SystemIcon)({
67
- position: 'absolute',
68
- top: tokens_1.space.xxxs,
69
- right: tokens_1.space.xxxs,
70
- padding: tokens_1.space.xxxs,
71
- pointerEvents: 'none',
72
- '& path': {
73
- transition: '100ms fill',
26
+ exports.SelectItem = common_1.createSubcomponent('li')({
27
+ modelHook: hooks_1.useSelectModel,
28
+ subComponents: {
29
+ Icon: combobox_1.Combobox.Menu.Item.Icon,
74
30
  },
31
+ })(({ children, ...elemProps }, Element, _model) => {
32
+ return (react_1.default.createElement(combobox_1.Combobox.Menu.Item, Object.assign({ role: "option", as: Element }, elemProps), children));
75
33
  });
76
- const SelectWrapper = common_1.styled('div')({
77
- position: 'relative',
78
- }, ({ grow }) => ({
79
- display: grow ? 'block' : 'inline-block',
80
- }), ({ disabled }) => ({
81
- '& span': {
82
- backgroundColor: disabled ? tokens_1.colors.soap100 : tokens_1.colors.frenchVanilla100,
83
- },
84
- '&:hover path': {
85
- fill: disabled ? undefined : tokens_1.colors.licorice500,
86
- },
87
- }));
88
- exports.Select = common_1.createComponent('select')({
34
+ exports.SelectCard = common_1.createSubcomponent('div')({
35
+ modelHook: hooks_1.useSelectModel,
36
+ elemPropsHook: hooks_1.useSelectCard,
37
+ })(({ children, ...elemProps }, Element) => {
38
+ return (react_1.default.createElement(combobox_1.Combobox.Menu.Card, Object.assign({ maxHeight: 300, as: Element }, elemProps), children));
39
+ });
40
+ /**
41
+ * Use `Select` to allow users to choose an option from a list or type characters to select a matching option.
42
+ *
43
+ * **Note: `Select` must wrap `FormField` and `FormField` must wrap all `Select` children to ensure proper accessibility. **
44
+ *
45
+ * ```tsx
46
+ * <Select items={options}>
47
+ * <FormField label="Your Label">
48
+ * <Select.Input onChange={e => handleChange(e)} id="contact-select" />
49
+ * <Select.Popper>
50
+ * <Select.Card>
51
+ * <Select.List>
52
+ * {item => <Select.Item>{item.id}</Select.Item>}
53
+ * </Select.List>
54
+ * </Select.Card>
55
+ * </Select.Popper>
56
+ * </FormField>
57
+ * </Select>
58
+ * ```
59
+ */
60
+ exports.Select = common_1.createContainer()({
89
61
  displayName: 'Select',
90
- Component: ({ disabled = false, grow, children, ...elemProps }, ref, Element) => (React.createElement(SelectWrapper, { grow: grow, disabled: disabled },
91
- React.createElement(StyledSelect, Object.assign({ as: Element, disabled: disabled, grow: grow, ref: ref }, elemProps), children),
92
- React.createElement(SelectDropdownIcon, { icon: canvas_system_icons_web_1.caretDownSmallIcon, color: disabled ? tokens_1.colors.licorice100 : tokens_1.colors.licorice200, colorHover: disabled ? tokens_1.colors.licorice100 : tokens_1.colors.licorice500 }))),
62
+ modelHook: hooks_1.useSelectModel,
93
63
  subComponents: {
94
- ErrorType: common_1.ErrorType,
64
+ /**
65
+ * `Select.Input` renders a {@link ComboboxMenu Combobox.Input} that handles keyboard navigation and interaction defined by [WAI](https://www.w3.org/WAI/ARIA/apg/patterns/combobox/examples/combobox-select-only/).
66
+ * This component can either be [controlled or uncontrolled](https://react.dev/learn/sharing-state-between-components#controlled-and-uncontrolled-components).
67
+ *
68
+ * ```tsx
69
+ * <Select items={options}>
70
+ * <FormField label="Contact">
71
+ * <Select.Input onChange={(event) => handleChange(event)}>
72
+ * ...
73
+ * </FormField>
74
+ * </Select>
75
+ * ```
76
+ */
77
+ Input: exports.SelectInput,
78
+ /**
79
+ * `Select.Popper` renders a {@link ComboboxPopper Combobox.Menu.Popper}. You have access to all `Popper` props.
80
+ *
81
+ * ```tsx
82
+ * <Select item={options}>
83
+ * <FormField label="Your Label">
84
+ * <Select.Input onChange={(event) => handleChange(event)}>
85
+ * <Select.Popper>
86
+ * ...
87
+ * </Select.Popper>
88
+ * </FormField>
89
+ * </Select>
90
+ * ```
91
+ */
92
+ Popper: combobox_1.Combobox.Menu.Popper,
93
+ /**
94
+ * `Select.Card` renders a {@link ComboboxCard Combobox.Card}. You have access to all `Card` props.
95
+ *
96
+ * **Note: The card will be the width of its corresponding `Select.Input`**.
97
+ *
98
+ * ```tsx
99
+ * <Select item={options}>
100
+ * <FormField label="Your Label">
101
+ * <Select.Input onChange={(event) => handleChange(event)}>
102
+ * <Select.Popper>
103
+ * <Select.Card>
104
+ * ...
105
+ * </Select.Card>
106
+ * </Select.Popper>
107
+ * </FormField>
108
+ * </Select>
109
+ * ```
110
+ */
111
+ Card: exports.SelectCard,
112
+ /**
113
+ * `Select.List` renders a {@link ComboboxMenuList Combobox.Menu.List}. You have access to all `ListBox` props.
114
+ *
115
+ * ```tsx
116
+ * <Select item={options}>
117
+ * <FormField label="Your Label">
118
+ * <Select.Input onChange={(event) => handleChange(event)}>
119
+ * <Select.Popper>
120
+ * <Select.Card>
121
+ * <Select.List>
122
+ * {(item) => <Select.Item>{item}</Select.Item>}
123
+ * </Select.List
124
+ * </Select.Card>
125
+ * </Select.Popper>
126
+ * </FormField>
127
+ * </Select>
128
+ * ```
129
+ */
130
+ List: combobox_1.Combobox.Menu.List,
131
+ /**
132
+ * `Select.Item` renders a {@link ComboboxMenuItem Combobox.Menu.Item} with aria role of `option`. You can optionally render a `Icon`.
133
+ *
134
+ * ```tsx
135
+ * <Select item={options}>
136
+ * <FormField label="Your Label">
137
+ * <Select.Input onChange={(event) => handleChange(event)}>
138
+ * <Select.Popper>
139
+ * <Select.Card>
140
+ * <Select.List>
141
+ * {(item) => <Select.Item><Select.Item.Icon icon={icon} />{item}</Select.Item>}
142
+ * </Select.List
143
+ * </Select.Card>
144
+ * </Select.Popper>
145
+ * </FormField>
146
+ * </Select>
147
+ * ```
148
+ */
149
+ Item: exports.SelectItem,
95
150
  },
151
+ })(({ children, ...elemProps }, _, model) => {
152
+ return (react_1.default.createElement(combobox_1.Combobox, Object.assign({ model: model }, elemProps), children));
96
153
  });
@@ -0,0 +1,4 @@
1
+ export * from './useSelectModel';
2
+ export * from './useSelectInput';
3
+ export * from './useSelectCard';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../select/lib/hooks/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
10
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
11
+ };
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ __exportStar(require("./useSelectModel"), exports);
14
+ __exportStar(require("./useSelectInput"), exports);
15
+ __exportStar(require("./useSelectCard"), exports);
@@ -0,0 +1,83 @@
1
+ /**
2
+ * Sets the width of the ` SelectCard` to the `Select.Input` width.
3
+ */
4
+ export declare const useSelectCard: import("@workday/canvas-kit-react/common").BehaviorHook<{
5
+ state: {
6
+ stackRef: import("react").RefObject<HTMLDivElement>;
7
+ targetRef: import("react").RefObject<HTMLButtonElement>;
8
+ initialFocusRef: import("react").RefObject<any> | undefined;
9
+ returnFocusRef: import("react").RefObject<any> | undefined;
10
+ placement: import("@popperjs/core").Placement;
11
+ id: string;
12
+ visibility: "hidden" | "visible";
13
+ selectedIds: string[] | "all";
14
+ unselectedIds: string[];
15
+ cursorId: string;
16
+ columnCount: number;
17
+ pageSizeRef: import("react").MutableRefObject<number>;
18
+ cursorIndexRef: {
19
+ readonly current: number;
20
+ };
21
+ UNSTABLE_virtual: {
22
+ virtualItems: import("../../../collection/lib/react-virtual").VirtualItem[];
23
+ totalSize: number;
24
+ scrollToOffset: (index: number, options?: import("../../../collection/lib/react-virtual").ScrollToOffsetOptions | undefined) => void;
25
+ scrollToIndex: (index: number, options?: import("../../../collection/lib/react-virtual").ScrollToIndexOptions | undefined) => void;
26
+ measure: () => void;
27
+ };
28
+ UNSTABLE_defaultItemHeight: number;
29
+ containerRef: import("react").RefObject<HTMLDivElement>;
30
+ orientation: "horizontal" | "vertical";
31
+ indexRef: import("react").MutableRefObject<number>;
32
+ nonInteractiveIds: string[];
33
+ isVirtualized: boolean;
34
+ items: import("../../..").Item<any>[];
35
+ mode: "multiple" | "single";
36
+ value: string | undefined;
37
+ inputRef: import("react").RefObject<HTMLInputElement>;
38
+ width: number;
39
+ };
40
+ events: {
41
+ setWidth(width: number): void;
42
+ updatePlacement(data: {
43
+ placement: import("@popperjs/core").Placement;
44
+ }): void;
45
+ show(event?: Event | import("react").SyntheticEvent<Element, Event> | undefined): void;
46
+ hide(event?: Event | import("react").SyntheticEvent<Element, Event> | undefined): void;
47
+ select(data: {
48
+ id: string;
49
+ }): void;
50
+ selectAll(): void;
51
+ unselectAll(): void;
52
+ goTo(data: {
53
+ id: string;
54
+ }): void;
55
+ goToNext(): void;
56
+ goToPrevious(): void;
57
+ goToPreviousRow(): void;
58
+ goToNextRow(): void;
59
+ goToFirst(): void;
60
+ goToLast(): void;
61
+ goToFirstOfRow(): void;
62
+ goToLastOfRow(): void;
63
+ goToNextPage(): void;
64
+ goToPreviousPage(): void;
65
+ registerItem(data: {
66
+ item: any;
67
+ textValue: string;
68
+ }): void;
69
+ unregisterItem(data: {
70
+ id: string;
71
+ }): void;
72
+ updateItemHeight(data: {
73
+ value: number;
74
+ }): void;
75
+ };
76
+ onChange: (event: import("react").ChangeEvent<HTMLInputElement>) => void;
77
+ selection: import("../../../collection/lib/useSelectionListModel").SelectionManager;
78
+ navigation: import("../../../collection/lib/useCursorListModel").NavigationManager;
79
+ getId: (item: any) => string;
80
+ }, {
81
+ readonly width: number;
82
+ }>;
83
+ //# sourceMappingURL=useSelectCard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useSelectCard.d.ts","sourceRoot":"","sources":["../../../../../select/lib/hooks/useSelectCard.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAIxB,CAAC"}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useSelectCard = void 0;
4
+ const common_1 = require("@workday/canvas-kit-react/common");
5
+ const useSelectModel_1 = require("./useSelectModel");
6
+ /**
7
+ * Sets the width of the ` SelectCard` to the `Select.Input` width.
8
+ */
9
+ exports.useSelectCard = common_1.createElemPropsHook(useSelectModel_1.useSelectModel)(model => {
10
+ return {
11
+ width: model.state.width,
12
+ };
13
+ });
@@ -0,0 +1,112 @@
1
+ import React from 'react';
2
+ /**
3
+ * `useSelectInput` extends {@link useComboboxInput useComboboxInput} and {@link useComboboxKeyboardTypeAhead useComboboxKeyboardTypeAhead} and adds type ahead functionality and Select-specific [keyboard support](https://www.w3.org/WAI/ARIA/apg/patterns/combobox/examples/combobox-select-only/).
4
+ */
5
+ export declare const useSelectInput: import("@workday/canvas-kit-react/common").BehaviorHook<{
6
+ state: {
7
+ stackRef: React.RefObject<HTMLDivElement>;
8
+ targetRef: React.RefObject<HTMLButtonElement>;
9
+ initialFocusRef: React.RefObject<any> | undefined;
10
+ returnFocusRef: React.RefObject<any> | undefined;
11
+ placement: import("@popperjs/core").Placement;
12
+ id: string;
13
+ visibility: "hidden" | "visible";
14
+ selectedIds: string[] | "all";
15
+ unselectedIds: string[];
16
+ cursorId: string;
17
+ columnCount: number;
18
+ pageSizeRef: React.MutableRefObject<number>;
19
+ cursorIndexRef: {
20
+ readonly current: number;
21
+ };
22
+ UNSTABLE_virtual: {
23
+ virtualItems: import("../../../collection/lib/react-virtual").VirtualItem[];
24
+ totalSize: number;
25
+ scrollToOffset: (index: number, options?: import("../../../collection/lib/react-virtual").ScrollToOffsetOptions | undefined) => void;
26
+ scrollToIndex: (index: number, options?: import("../../../collection/lib/react-virtual").ScrollToIndexOptions | undefined) => void;
27
+ measure: () => void;
28
+ };
29
+ UNSTABLE_defaultItemHeight: number;
30
+ containerRef: React.RefObject<HTMLDivElement>;
31
+ orientation: "horizontal" | "vertical";
32
+ indexRef: React.MutableRefObject<number>;
33
+ nonInteractiveIds: string[];
34
+ isVirtualized: boolean;
35
+ items: import("../../..").Item<any>[];
36
+ mode: "multiple" | "single";
37
+ value: string | undefined;
38
+ inputRef: React.RefObject<HTMLInputElement>;
39
+ width: number;
40
+ };
41
+ events: {
42
+ setWidth(width: number): void;
43
+ updatePlacement(data: {
44
+ placement: import("@popperjs/core").Placement;
45
+ }): void;
46
+ show(event?: Event | React.SyntheticEvent<Element, Event> | undefined): void;
47
+ hide(event?: Event | React.SyntheticEvent<Element, Event> | undefined): void;
48
+ select(data: {
49
+ id: string;
50
+ }): void;
51
+ selectAll(): void;
52
+ unselectAll(): void;
53
+ goTo(data: {
54
+ id: string;
55
+ }): void;
56
+ goToNext(): void;
57
+ goToPrevious(): void;
58
+ goToPreviousRow(): void;
59
+ goToNextRow(): void;
60
+ goToFirst(): void;
61
+ goToLast(): void;
62
+ goToFirstOfRow(): void;
63
+ goToLastOfRow(): void;
64
+ goToNextPage(): void;
65
+ goToPreviousPage(): void;
66
+ registerItem(data: {
67
+ item: any;
68
+ textValue: string;
69
+ }): void;
70
+ unregisterItem(data: {
71
+ id: string;
72
+ }): void;
73
+ updateItemHeight(data: {
74
+ value: number;
75
+ }): void;
76
+ };
77
+ onChange: (event: React.ChangeEvent<HTMLInputElement>) => void;
78
+ selection: import("../../../collection/lib/useSelectionListModel").SelectionManager;
79
+ navigation: import("../../../collection/lib/useCursorListModel").NavigationManager;
80
+ getId: (item: any) => string;
81
+ }, {
82
+ readonly onKeyDown: (event: React.KeyboardEvent) => void;
83
+ readonly ref: (instance: HTMLInputElement | null) => void;
84
+ readonly autoComplete: "off";
85
+ readonly defaultValue: string | undefined;
86
+ } & {
87
+ onKeyDown(event: React.KeyboardEvent<Element>): void;
88
+ keySofar: string;
89
+ } & {
90
+ readonly onKeyDown: (event: React.KeyboardEvent<Element>) => void;
91
+ readonly onBlur: (event: React.FocusEvent<Element, Element>) => void;
92
+ readonly onChange: (event: React.ChangeEvent<HTMLInputElement>) => void;
93
+ readonly onClick: (event: React.MouseEvent<Element, MouseEvent>) => void;
94
+ readonly value: string | undefined;
95
+ readonly role: "combobox";
96
+ readonly 'aria-haspopup': true;
97
+ readonly 'aria-expanded': boolean;
98
+ readonly 'aria-autocomplete': "list";
99
+ readonly 'aria-controls': `${string}-list`;
100
+ readonly id: string;
101
+ readonly ref: (instance: unknown) => void;
102
+ } & {
103
+ onKeyDown(event: React.KeyboardEvent<Element>): void;
104
+ } & {
105
+ 'aria-activedescendant': string | undefined;
106
+ } & {
107
+ onKeyDown(event: React.KeyboardEvent<Element>): void;
108
+ } & {
109
+ ref: (instance: unknown) => void;
110
+ onClick: (event: React.MouseEvent<Element, MouseEvent>) => void;
111
+ }>;
112
+ //# sourceMappingURL=useSelectInput.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useSelectInput.d.ts","sourceRoot":"","sources":["../../../../../select/lib/hooks/useSelectInput.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAgB1B;;GAEG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gCAkBJ,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoCzC,CAAC"}
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useSelectInput = void 0;
4
+ const common_1 = require("@workday/canvas-kit-react/common");
5
+ const combobox_1 = require("@workday/canvas-kit-react/combobox");
6
+ const useSelectModel_1 = require("./useSelectModel");
7
+ /**
8
+ * `useSelectInput` extends {@link useComboboxInput useComboboxInput} and {@link useComboboxKeyboardTypeAhead useComboboxKeyboardTypeAhead} and adds type ahead functionality and Select-specific [keyboard support](https://www.w3.org/WAI/ARIA/apg/patterns/combobox/examples/combobox-select-only/).
9
+ */
10
+ exports.useSelectInput = common_1.composeHooks(common_1.createElemPropsHook(useSelectModel_1.useSelectModel)((model, ref, elemProps = {}) => {
11
+ const { localRef, elementRef } = common_1.useLocalRef(common_1.useForkRef(ref, ref));
12
+ common_1.useResizeObserver({
13
+ ref: localRef,
14
+ onResize: data => {
15
+ if (model.state.visibility === 'visible') {
16
+ // Width of the Input + 2px border + 8px padding
17
+ const calculatedWidth = data.width ? data.width + 42 + 8 : 0;
18
+ model.events.setWidth(calculatedWidth);
19
+ }
20
+ },
21
+ });
22
+ return {
23
+ onKeyDown(event) {
24
+ // Prevent the keys from being enter in the input
25
+ if (event.key !== 'Tab') {
26
+ event.preventDefault();
27
+ }
28
+ // Select should open if Spacebar is typed and nothing has been typed AND the menu is hidden
29
+ if (event.key === 'Spacebar' ||
30
+ (event.key === ' ' && model.state.visibility === 'hidden' && (elemProps === null || elemProps === void 0 ? void 0 : elemProps.keySofar) === '')) {
31
+ model.events.show();
32
+ }
33
+ // if the menu is visible
34
+ if ((event.key === 'Spacebar' || event.key === ' ') &&
35
+ model.state.visibility === 'visible') {
36
+ // If key so far is empty, they're done typing, select the item where the cursor is located and hide the menu
37
+ if ((elemProps === null || elemProps === void 0 ? void 0 : elemProps.keySofar) === '') {
38
+ model.events.select({
39
+ id: model.state.cursorId,
40
+ });
41
+ model.events.hide();
42
+ }
43
+ }
44
+ },
45
+ ref: elementRef,
46
+ autoComplete: 'off',
47
+ defaultValue: model.state.selectedIds[0] || model.state.value,
48
+ };
49
+ }), combobox_1.useComboboxKeyboardTypeAhead, combobox_1.useComboboxResetCursorToSelected, combobox_1.useComboboxMoveCursorToSelected, combobox_1.useComboboxInput);