@procore/core-react 11.24.1 → 11.24.3

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 (733) hide show
  1. package/.eslintignore +4 -0
  2. package/.eslintrc.cjs +54 -0
  3. package/dist/Avatar/Avatar.d.ts +2 -2
  4. package/dist/Avatar/Avatar.js.map +1 -1
  5. package/dist/Avatar/Avatar.styles.d.ts +1 -1
  6. package/dist/Avatar/Avatar.styles.js +5 -5
  7. package/dist/Avatar/Avatar.styles.js.map +1 -1
  8. package/dist/Avatar/Avatar.types.d.ts +4 -4
  9. package/dist/Avatar/Avatar.types.js.map +1 -1
  10. package/dist/AvatarStack/AvatarStack.constants.d.ts +1 -1
  11. package/dist/AvatarStack/AvatarStack.constants.js.map +1 -1
  12. package/dist/AvatarStack/AvatarStack.d.ts +2 -2
  13. package/dist/AvatarStack/AvatarStack.js.map +1 -1
  14. package/dist/AvatarStack/AvatarStack.styles.d.ts +1 -1
  15. package/dist/AvatarStack/AvatarStack.styles.js +7 -7
  16. package/dist/AvatarStack/AvatarStack.styles.js.map +1 -1
  17. package/dist/Badge/Badge.d.ts +1 -1
  18. package/dist/Badge/Badge.js.map +1 -1
  19. package/dist/Badge/Badge.styles.d.ts +1 -1
  20. package/dist/Badge/Badge.styles.js +2 -2
  21. package/dist/Badge/Badge.styles.js.map +1 -1
  22. package/dist/Badge/Badge.types.d.ts +1 -1
  23. package/dist/Badge/Badge.types.js.map +1 -1
  24. package/dist/Banner/Banner.d.ts +2 -2
  25. package/dist/Banner/Banner.js.map +1 -1
  26. package/dist/Banner/Banner.styles.d.ts +2 -2
  27. package/dist/Banner/Banner.styles.js +10 -10
  28. package/dist/Banner/Banner.styles.js.map +1 -1
  29. package/dist/Banner/Banner.types.d.ts +1 -1
  30. package/dist/Banner/Banner.types.js.map +1 -1
  31. package/dist/Box/Box.d.ts +2 -2
  32. package/dist/Box/Box.js.map +1 -1
  33. package/dist/Box/Box.styles.d.ts +1 -1
  34. package/dist/Box/Box.styles.js +1 -1
  35. package/dist/Box/Box.styles.js.map +1 -1
  36. package/dist/Box/Box.types.d.ts +1 -1
  37. package/dist/Box/Box.types.js.map +1 -1
  38. package/dist/Breadcrumbs/Breadcrumbs.d.ts +2 -2
  39. package/dist/Breadcrumbs/Breadcrumbs.js.map +1 -1
  40. package/dist/Breadcrumbs/Breadcrumbs.styles.d.ts +1 -1
  41. package/dist/Breadcrumbs/Breadcrumbs.styles.js +4 -4
  42. package/dist/Breadcrumbs/Breadcrumbs.styles.js.map +1 -1
  43. package/dist/Breadcrumbs/Breadcrumbs.types.d.ts +1 -1
  44. package/dist/Breadcrumbs/Breadcrumbs.types.js.map +1 -1
  45. package/dist/Button/Button.d.ts +1 -1
  46. package/dist/Button/Button.js.map +1 -1
  47. package/dist/Button/Button.styles.d.ts +1 -1
  48. package/dist/Button/Button.styles.js +5 -5
  49. package/dist/Button/Button.styles.js.map +1 -1
  50. package/dist/Button/Button.types.d.ts +1 -1
  51. package/dist/Button/Button.types.js.map +1 -1
  52. package/dist/Button/index.d.ts +1 -1
  53. package/dist/Button/index.js.map +1 -1
  54. package/dist/Calendar/Calendar.d.ts +1 -1
  55. package/dist/Calendar/Calendar.js.map +1 -1
  56. package/dist/Calendar/Calendar.styles.js +8 -8
  57. package/dist/Calendar/Calendar.types.d.ts +2 -2
  58. package/dist/Calendar/Calendar.types.js.map +1 -1
  59. package/dist/Card/Card.d.ts +2 -2
  60. package/dist/Card/Card.js.map +1 -1
  61. package/dist/Card/Card.styles.d.ts +1 -1
  62. package/dist/Card/Card.styles.js +1 -1
  63. package/dist/Card/Card.styles.js.map +1 -1
  64. package/dist/Card/Card.types.d.ts +1 -1
  65. package/dist/Card/Card.types.js.map +1 -1
  66. package/dist/Checkbox/Checkbox.d.ts +1 -1
  67. package/dist/Checkbox/Checkbox.js.map +1 -1
  68. package/dist/Checkbox/Checkbox.styles.js +5 -5
  69. package/dist/Checkbox/Checkbox.types.d.ts +2 -2
  70. package/dist/Checkbox/Checkbox.types.js.map +1 -1
  71. package/dist/CheckboxGroup/CheckboxGroup.d.ts +2 -2
  72. package/dist/CheckboxGroup/CheckboxGroup.js.map +1 -1
  73. package/dist/CheckboxGroup/CheckboxGroup.types.d.ts +2 -2
  74. package/dist/CheckboxGroup/CheckboxGroup.types.js.map +1 -1
  75. package/dist/ClickOutside/ClickOutside.d.ts +1 -1
  76. package/dist/ClickOutside/ClickOutside.js.map +1 -1
  77. package/dist/ContactItem/ContactItem.d.ts +3 -3
  78. package/dist/ContactItem/ContactItem.js.map +1 -1
  79. package/dist/ContactItem/ContactItem.styles.js +5 -5
  80. package/dist/ContactItem/ContactItem.types.d.ts +2 -2
  81. package/dist/ContactItem/ContactItem.types.js.map +1 -1
  82. package/dist/Content/Content.d.ts +1 -1
  83. package/dist/Content/Content.js.map +1 -1
  84. package/dist/Content/Content.styles.js +2 -2
  85. package/dist/DateInput/DateInput.d.ts +1 -1
  86. package/dist/DateInput/DateInput.js.map +1 -1
  87. package/dist/DateInput/DateInput.styles.js +6 -6
  88. package/dist/DateInput/DateInput.types.d.ts +2 -2
  89. package/dist/DateInput/DateInput.types.js.map +1 -1
  90. package/dist/DateInput/index.js.map +1 -1
  91. package/dist/DateSelect/DateSelect.d.ts +1 -1
  92. package/dist/DateSelect/DateSelect.js.map +1 -1
  93. package/dist/DateSelect/DateSelect.types.d.ts +4 -4
  94. package/dist/DateSelect/DateSelect.types.js.map +1 -1
  95. package/dist/DetailPage/DetailPage.constants.d.ts +2 -2
  96. package/dist/DetailPage/DetailPage.constants.js.map +1 -1
  97. package/dist/DetailPage/DetailPage.d.ts +3 -3
  98. package/dist/DetailPage/DetailPage.js.map +1 -1
  99. package/dist/DetailPage/DetailPage.styles.js +7 -7
  100. package/dist/DetailPage/DetailPage.types.d.ts +3 -3
  101. package/dist/DetailPage/DetailPage.types.js.map +1 -1
  102. package/dist/Dropdown/Dropdown.d.ts +2 -2
  103. package/dist/Dropdown/Dropdown.js.map +1 -1
  104. package/dist/Dropdown/Dropdown.styles.d.ts +1 -1
  105. package/dist/Dropdown/Dropdown.styles.js +3 -3
  106. package/dist/Dropdown/Dropdown.styles.js.map +1 -1
  107. package/dist/Dropdown/Dropdown.types.d.ts +4 -4
  108. package/dist/Dropdown/Dropdown.types.js.map +1 -1
  109. package/dist/DropdownFlyout/DropdownFlyout.d.ts +1 -1
  110. package/dist/DropdownFlyout/DropdownFlyout.helpers.d.ts +1 -1
  111. package/dist/DropdownFlyout/DropdownFlyout.helpers.js.map +1 -1
  112. package/dist/DropdownFlyout/DropdownFlyout.js.map +1 -1
  113. package/dist/DropdownFlyout/DropdownFlyout.styles.js +4 -4
  114. package/dist/DropdownFlyout/DropdownFlyout.types.d.ts +4 -4
  115. package/dist/DropdownFlyout/DropdownFlyout.types.js.map +1 -1
  116. package/dist/DropdownFlyout/index.js.map +1 -1
  117. package/dist/DropdownFlyout/useDropdownFlyoutOverlay.d.ts +3 -3
  118. package/dist/DropdownFlyout/useDropdownFlyoutOverlay.js.map +1 -1
  119. package/dist/Dropzone/Dropzone.d.ts +2 -2
  120. package/dist/Dropzone/Dropzone.hooks.d.ts +1 -1
  121. package/dist/Dropzone/Dropzone.hooks.js.map +1 -1
  122. package/dist/Dropzone/Dropzone.js +1 -1
  123. package/dist/Dropzone/Dropzone.js.map +1 -1
  124. package/dist/Dropzone/Dropzone.styles.js +9 -9
  125. package/dist/Dropzone/Dropzone.types.d.ts +4 -3
  126. package/dist/Dropzone/Dropzone.types.js.map +1 -1
  127. package/dist/EmptyState/EmptyState.d.ts +2 -2
  128. package/dist/EmptyState/EmptyState.js.map +1 -1
  129. package/dist/EmptyState/EmptyState.styles.js +6 -6
  130. package/dist/EmptyState/EmptyState.types.d.ts +1 -1
  131. package/dist/EmptyState/EmptyState.types.js.map +1 -1
  132. package/dist/Field/Field.styles.js +3 -3
  133. package/dist/FileList/FileList.d.ts +2 -2
  134. package/dist/FileList/FileList.js.map +1 -1
  135. package/dist/FileList/FileList.styles.js +4 -4
  136. package/dist/FileSelect/FileExplorer/FileExplorer.d.ts +2 -2
  137. package/dist/FileSelect/FileExplorer/FileExplorer.js.map +1 -1
  138. package/dist/FileSelect/FileExplorer/FileExplorer.styles.js +9 -9
  139. package/dist/FileSelect/FileExplorer/FileExplorer.types.d.ts +2 -2
  140. package/dist/FileSelect/FileExplorer/FileExplorer.types.js.map +1 -1
  141. package/dist/FileSelect/FileExplorer/FileExplorerModal.d.ts +3 -3
  142. package/dist/FileSelect/FileExplorer/FileExplorerModal.js.map +1 -1
  143. package/dist/FileSelect/FileExplorer/FileExplorerSidebar.d.ts +1 -1
  144. package/dist/FileSelect/FileExplorer/FileExplorerSidebar.js.map +1 -1
  145. package/dist/FileSelect/FileExplorer/FileExplorerSidebar.styles.js +3 -3
  146. package/dist/FileSelect/FileExplorer/useSidebarNavigation.d.ts +1 -1
  147. package/dist/FileSelect/FileExplorer/useSidebarNavigation.js.map +1 -1
  148. package/dist/FileSelect/FileSelect.d.ts +3 -3
  149. package/dist/FileSelect/FileSelect.js.map +1 -1
  150. package/dist/FileSelect/FileSelect.styles.js +2 -2
  151. package/dist/FileSelect/FileSelect.types.d.ts +6 -6
  152. package/dist/FileSelect/FileSelect.types.js.map +1 -1
  153. package/dist/FileSelect/FileSelectDropzone/FileSelectDropzone.d.ts +1 -1
  154. package/dist/FileSelect/FileSelectDropzone/FileSelectDropzone.js.map +1 -1
  155. package/dist/FileSelect/FileSelectDropzone/FileSelectDropzone.styles.js +3 -3
  156. package/dist/FileSelect/FileSelectDropzone/FileSelectDropzone.types.d.ts +2 -2
  157. package/dist/FileSelect/FileSelectDropzone/FileSelectDropzone.types.js.map +1 -1
  158. package/dist/FileSelect/FileTokenList/FileToken.types.d.ts +1 -1
  159. package/dist/FileSelect/FileTokenList/FileToken.types.js.map +1 -1
  160. package/dist/FileSelect/FileTokenList/FileTokenList.d.ts +2 -2
  161. package/dist/FileSelect/FileTokenList/FileTokenList.js.map +1 -1
  162. package/dist/FileSelect/FileTokenList/FileTokenList.styles.js +2 -2
  163. package/dist/FileSelect/GridSource/GridSource.d.ts +2 -2
  164. package/dist/FileSelect/GridSource/GridSource.js.map +1 -1
  165. package/dist/FileSelect/GridSource/GridSource.styles.js +6 -6
  166. package/dist/FileSelect/GridSource/GridSource.types.d.ts +2 -2
  167. package/dist/FileSelect/GridSource/GridSource.types.js.map +1 -1
  168. package/dist/FileSelect/LocalSource/LocalSource.d.ts +1 -1
  169. package/dist/FileSelect/LocalSource/LocalSource.js.map +1 -1
  170. package/dist/FileSelect/LocalSource/LocalSource.styles.js +4 -4
  171. package/dist/FileSelect/LocalSource/LocalSource.types.d.ts +4 -4
  172. package/dist/FileSelect/LocalSource/LocalSource.types.js.map +1 -1
  173. package/dist/FileSelect/ProgressAnnouncer/ProgressAnnouncer.d.ts +1 -1
  174. package/dist/FileSelect/ProgressAnnouncer/ProgressAnnouncer.js.map +1 -1
  175. package/dist/FileSelect/ProgressAnnouncer/ProgressAnnouncer.types.d.ts +2 -2
  176. package/dist/FileSelect/ProgressAnnouncer/ProgressAnnouncer.types.js.map +1 -1
  177. package/dist/FileSelect/SourceItem/SourceItem.d.ts +1 -1
  178. package/dist/FileSelect/SourceItem/SourceItem.js.map +1 -1
  179. package/dist/FileSelect/SourceItem/SourceItem.styles.js +3 -3
  180. package/dist/FileSelect/ThumbnailList/ThumbnailList.d.ts +1 -1
  181. package/dist/FileSelect/ThumbnailList/ThumbnailList.js.map +1 -1
  182. package/dist/FileSelect/ThumbnailList/ThumbnailList.styles.js +6 -6
  183. package/dist/FileSelect/ThumbnailList/ThumbnailList.types.d.ts +1 -1
  184. package/dist/FileSelect/ThumbnailList/ThumbnailList.types.js.map +1 -1
  185. package/dist/FileSelect/TreeSource/TreeSource.d.ts +2 -2
  186. package/dist/FileSelect/TreeSource/TreeSource.js.map +1 -1
  187. package/dist/FileSelect/TreeSource/TreeSource.styles.js +1 -1
  188. package/dist/FileSelect/TreeSource/TreeSource.types.d.ts +1 -1
  189. package/dist/FileSelect/TreeSource/TreeSource.types.js.map +1 -1
  190. package/dist/FileSelect/storyHelpers.d.ts +1 -1
  191. package/dist/FileSelect/storyHelpers.js.map +1 -1
  192. package/dist/FileToken/FileToken.d.ts +2 -2
  193. package/dist/FileToken/FileToken.js.map +1 -1
  194. package/dist/FileToken/FileToken.styles.js +4 -4
  195. package/dist/FileToken/FileToken.types.d.ts +1 -1
  196. package/dist/FileToken/FileToken.types.js.map +1 -1
  197. package/dist/FilterToken/FilterToken.d.ts +2 -2
  198. package/dist/FilterToken/FilterToken.js.map +1 -1
  199. package/dist/FilterToken/FilterToken.styles.js +2 -2
  200. package/dist/FilterToken/index.d.ts +1 -1
  201. package/dist/FilterToken/index.js.map +1 -1
  202. package/dist/Flex/Flex.d.ts +2 -2
  203. package/dist/Flex/Flex.js.map +1 -1
  204. package/dist/Flex/Flex.types.d.ts +2 -2
  205. package/dist/Flex/Flex.types.js.map +1 -1
  206. package/dist/FlexList/FlexList.d.ts +2 -2
  207. package/dist/FlexList/FlexList.js.map +1 -1
  208. package/dist/FlexList/FlexList.styles.d.ts +1 -1
  209. package/dist/FlexList/FlexList.styles.js +1 -1
  210. package/dist/FlexList/FlexList.styles.js.map +1 -1
  211. package/dist/FlexList/FlexList.types.d.ts +2 -2
  212. package/dist/FlexList/FlexList.types.js.map +1 -1
  213. package/dist/Form/Form.d.ts +5 -5
  214. package/dist/Form/Form.js +82 -70
  215. package/dist/Form/Form.js.map +1 -1
  216. package/dist/Form/Form.styles.d.ts +1 -1
  217. package/dist/Form/Form.styles.js +15 -15
  218. package/dist/Form/Form.styles.js.map +1 -1
  219. package/dist/Form/Form.types.d.ts +14 -14
  220. package/dist/Form/Form.types.js.map +1 -1
  221. package/dist/Form/stories/util.d.ts +1 -1
  222. package/dist/Form/stories/util.js.map +1 -1
  223. package/dist/Grid/Grid.constants.d.ts +1 -1
  224. package/dist/Grid/Grid.constants.js.map +1 -1
  225. package/dist/Grid/Grid.d.ts +1 -1
  226. package/dist/Grid/Grid.js.map +1 -1
  227. package/dist/Grid/Grid.styles.d.ts +1 -1
  228. package/dist/Grid/Grid.styles.js +2 -2
  229. package/dist/Grid/Grid.styles.js.map +1 -1
  230. package/dist/Grid/Grid.types.d.ts +2 -2
  231. package/dist/Grid/Grid.types.js.map +1 -1
  232. package/dist/GroupSelect/GroupSelect.d.ts +2 -2
  233. package/dist/GroupSelect/GroupSelect.js.map +1 -1
  234. package/dist/GroupSelect/GroupSelect.styles.js +1 -1
  235. package/dist/GroupSelect/GroupSelect.types.d.ts +3 -3
  236. package/dist/GroupSelect/GroupSelect.types.js.map +1 -1
  237. package/dist/Input/Input.d.ts +2 -2
  238. package/dist/Input/Input.js.map +1 -1
  239. package/dist/Input/Input.styles.js +1 -1
  240. package/dist/Input/Input.types.d.ts +1 -1
  241. package/dist/Input/Input.types.js.map +1 -1
  242. package/dist/Link/Link.d.ts +1 -1
  243. package/dist/Link/Link.js.map +1 -1
  244. package/dist/Link/Link.styles.d.ts +1 -1
  245. package/dist/Link/Link.styles.js +1 -1
  246. package/dist/Link/Link.styles.js.map +1 -1
  247. package/dist/Link/Link.types.d.ts +1 -1
  248. package/dist/Link/Link.types.js.map +1 -1
  249. package/dist/ListPage/ListPage.d.ts +2 -2
  250. package/dist/ListPage/ListPage.js.map +1 -1
  251. package/dist/ListPage/ListPage.styles.js +8 -8
  252. package/dist/ListPage/ListPage.types.d.ts +1 -1
  253. package/dist/ListPage/ListPage.types.js.map +1 -1
  254. package/dist/Loader/Loader.d.ts +1 -1
  255. package/dist/Loader/Loader.js.map +1 -1
  256. package/dist/Loader/Loader.styles.js +2 -2
  257. package/dist/Loader/Loader.types.d.ts +1 -1
  258. package/dist/Loader/Loader.types.js.map +1 -1
  259. package/dist/Menu/Menu.d.ts +2 -2
  260. package/dist/Menu/Menu.js.map +1 -1
  261. package/dist/Menu/Menu.types.d.ts +7 -7
  262. package/dist/Menu/Menu.types.js.map +1 -1
  263. package/dist/MenuImperative/MenuImperative.d.ts +4 -4
  264. package/dist/MenuImperative/MenuImperative.js.map +1 -1
  265. package/dist/MenuImperative/MenuImperative.styles.js +10 -10
  266. package/dist/MenuImperative/MenuImperative.types.d.ts +4 -4
  267. package/dist/MenuImperative/MenuImperative.types.js.map +1 -1
  268. package/dist/MenuImperative/index.d.ts +1 -1
  269. package/dist/MenuImperative/index.js.map +1 -1
  270. package/dist/MenuImperative/sensors.d.ts +3 -3
  271. package/dist/MenuImperative/sensors.js.map +1 -1
  272. package/dist/Modal/Modal.d.ts +4 -4
  273. package/dist/Modal/Modal.js.map +1 -1
  274. package/dist/Modal/Modal.styles.d.ts +1 -1
  275. package/dist/Modal/Modal.styles.js +13 -13
  276. package/dist/Modal/Modal.styles.js.map +1 -1
  277. package/dist/Modal/Modal.types.d.ts +2 -2
  278. package/dist/Modal/Modal.types.js.map +1 -1
  279. package/dist/MultiSelect/MultiSelect.d.ts +1 -1
  280. package/dist/MultiSelect/MultiSelect.js.map +1 -1
  281. package/dist/MultiSelect/MultiSelect.styles.js +6 -6
  282. package/dist/MultiSelect/MultiSelect.types.d.ts +3 -3
  283. package/dist/MultiSelect/MultiSelect.types.js.map +1 -1
  284. package/dist/NextMenu/NextMenu.d.ts +1 -1
  285. package/dist/NextMenu/NextMenu.js.map +1 -1
  286. package/dist/NextMenu/NextMenu.styles.js +3 -3
  287. package/dist/NextMenu/NextMenu.types.d.ts +3 -3
  288. package/dist/NextMenu/NextMenu.types.js.map +1 -1
  289. package/dist/NextMenu/NextMenuItem.d.ts +1 -1
  290. package/dist/NextMenu/NextMenuItem.js.map +1 -1
  291. package/dist/NextTile/NextTile.d.ts +2 -2
  292. package/dist/NextTile/NextTile.js.map +1 -1
  293. package/dist/NextTile/NextTile.types.d.ts +2 -2
  294. package/dist/NextTile/NextTile.types.js.map +1 -1
  295. package/dist/Notation/Notation.d.ts +2 -2
  296. package/dist/Notation/Notation.js +1 -1
  297. package/dist/Notation/Notation.js.map +1 -1
  298. package/dist/Notation/Notation.types.d.ts +2 -2
  299. package/dist/Notation/Notation.types.js.map +1 -1
  300. package/dist/NumberInput/NumberInput.d.ts +2 -2
  301. package/dist/NumberInput/NumberInput.hooks.d.ts +1 -1
  302. package/dist/NumberInput/NumberInput.hooks.js.map +1 -1
  303. package/dist/NumberInput/NumberInput.js +3 -1
  304. package/dist/NumberInput/NumberInput.js.map +1 -1
  305. package/dist/NumberInput/NumberInput.styles.js +7 -7
  306. package/dist/NumberInput/NumberInput.types.d.ts +2 -2
  307. package/dist/NumberInput/NumberInput.types.js.map +1 -1
  308. package/dist/NumberInput/NumberInput.utils.d.ts +3 -2
  309. package/dist/NumberInput/NumberInput.utils.js.map +1 -1
  310. package/dist/Overlay/Overlay.d.ts +1 -1
  311. package/dist/Overlay/Overlay.js.map +1 -1
  312. package/dist/Overlay/OverlayArrow.d.ts +2 -2
  313. package/dist/Overlay/OverlayArrow.js.map +1 -1
  314. package/dist/Overlay/OverlayArrow.styles.js +1 -1
  315. package/dist/Overlay/useOverlay.d.ts +3 -3
  316. package/dist/Overlay/useOverlay.js.map +1 -1
  317. package/dist/OverlayTrigger/OverlayTrigger.d.ts +2 -2
  318. package/dist/OverlayTrigger/OverlayTrigger.js.map +1 -1
  319. package/dist/OverlayTrigger/OverlayTrigger.types.d.ts +4 -4
  320. package/dist/OverlayTrigger/OverlayTrigger.types.js.map +1 -1
  321. package/dist/OverlayTrigger/a11yPresets.d.ts +5 -4
  322. package/dist/OverlayTrigger/a11yPresets.js.map +1 -1
  323. package/dist/PageLayout/PageLayout.d.ts +3 -3
  324. package/dist/PageLayout/PageLayout.js.map +1 -1
  325. package/dist/PageLayout/PageLayout.styles.d.ts +1 -1
  326. package/dist/PageLayout/PageLayout.styles.js +13 -13
  327. package/dist/PageLayout/PageLayout.styles.js.map +1 -1
  328. package/dist/PageLayout/PageLayout.types.d.ts +1 -1
  329. package/dist/PageLayout/PageLayout.types.js.map +1 -1
  330. package/dist/Pagination/Pagination.d.ts +1 -1
  331. package/dist/Pagination/Pagination.js.map +1 -1
  332. package/dist/Pagination/Pagination.styles.js +5 -5
  333. package/dist/Pagination/Pagination.types.d.ts +2 -2
  334. package/dist/Pagination/Pagination.types.js.map +1 -1
  335. package/dist/Pagination/PaginationSelect.d.ts +1 -1
  336. package/dist/Pagination/PaginationSelect.js.map +1 -1
  337. package/dist/Panel/Panel.d.ts +3 -3
  338. package/dist/Panel/Panel.js.map +1 -1
  339. package/dist/Panel/Panel.styles.js +11 -11
  340. package/dist/Panel/Panel.types.d.ts +3 -3
  341. package/dist/Panel/Panel.types.js.map +1 -1
  342. package/dist/Pill/Pill.colorPalette.d.ts +1 -1
  343. package/dist/Pill/Pill.colorPalette.js.map +1 -1
  344. package/dist/Pill/Pill.d.ts +1 -1
  345. package/dist/Pill/Pill.js.map +1 -1
  346. package/dist/Pill/Pill.styles.d.ts +1 -1
  347. package/dist/Pill/Pill.styles.js +2 -2
  348. package/dist/Pill/Pill.styles.js.map +1 -1
  349. package/dist/PillSelect/PillSelect.d.ts +1 -1
  350. package/dist/PillSelect/PillSelect.js.map +1 -1
  351. package/dist/PillSelect/PillSelect.styles.js +4 -4
  352. package/dist/PillSelect/PillSelect.types.d.ts +2 -2
  353. package/dist/PillSelect/PillSelect.types.js.map +1 -1
  354. package/dist/Popover/Popover.d.ts +2 -2
  355. package/dist/Popover/Popover.js.map +1 -1
  356. package/dist/Popover/Popover.styles.d.ts +1 -1
  357. package/dist/Popover/Popover.styles.js +2 -2
  358. package/dist/Popover/Popover.styles.js.map +1 -1
  359. package/dist/Popover/Popover.types.d.ts +5 -5
  360. package/dist/Popover/Popover.types.js.map +1 -1
  361. package/dist/Portal/Portal.d.ts +1 -1
  362. package/dist/Portal/Portal.js.map +1 -1
  363. package/dist/Portal/Portal.styles.js +1 -1
  364. package/dist/Portal/Portal.types.d.ts +1 -1
  365. package/dist/Portal/Portal.types.js.map +1 -1
  366. package/dist/ProgressBar/ProgressBar.d.ts +1 -1
  367. package/dist/ProgressBar/ProgressBar.js.map +1 -1
  368. package/dist/ProgressBar/ProgressBar.styles.js +2 -2
  369. package/dist/ProgressBar/ProgressBar.types.d.ts +2 -2
  370. package/dist/ProgressBar/ProgressBar.types.js.map +1 -1
  371. package/dist/RadioButton/RadioButton.d.ts +1 -1
  372. package/dist/RadioButton/RadioButton.js.map +1 -1
  373. package/dist/RadioButton/RadioButton.styles.js +3 -3
  374. package/dist/RadioButton/RadioButton.types.d.ts +1 -1
  375. package/dist/RadioButton/RadioButton.types.js.map +1 -1
  376. package/dist/Required/Required.d.ts +1 -1
  377. package/dist/Required/Required.js.map +1 -1
  378. package/dist/Required/Required.styles.js +3 -3
  379. package/dist/Required/Required.types.d.ts +1 -1
  380. package/dist/Required/Required.types.js.map +1 -1
  381. package/dist/Search/Search.d.ts +1 -1
  382. package/dist/Search/Search.hooks.d.ts +1 -1
  383. package/dist/Search/Search.hooks.js.map +1 -1
  384. package/dist/Search/Search.js +1 -2
  385. package/dist/Search/Search.js.map +1 -1
  386. package/dist/Search/Search.styles.js +5 -5
  387. package/dist/Search/Search.types.d.ts +2 -2
  388. package/dist/Search/Search.types.js.map +1 -1
  389. package/dist/Section/Section.d.ts +2 -2
  390. package/dist/Section/Section.js.map +1 -1
  391. package/dist/Section/Section.styles.js +6 -6
  392. package/dist/Section/Section.types.d.ts +2 -2
  393. package/dist/Section/Section.types.js.map +1 -1
  394. package/dist/SegmentedController/SegmentedController.d.ts +1 -1
  395. package/dist/SegmentedController/SegmentedController.js.map +1 -1
  396. package/dist/SegmentedController/SegmentedController.styles.js +4 -4
  397. package/dist/SegmentedController/SegmentedController.types.d.ts +2 -2
  398. package/dist/SegmentedController/SegmentedController.types.js.map +1 -1
  399. package/dist/Select/Select.d.ts +2 -2
  400. package/dist/Select/Select.js.map +1 -1
  401. package/dist/Select/Select.styles.js +7 -7
  402. package/dist/Select/Select.types.d.ts +4 -4
  403. package/dist/Select/Select.types.js.map +1 -1
  404. package/dist/Select/index.d.ts +1 -1
  405. package/dist/Select/index.js.map +1 -1
  406. package/dist/Semantic/Semantic.d.ts +1 -1
  407. package/dist/Semantic/Semantic.js.map +1 -1
  408. package/dist/Semantic/Semantic.styles.d.ts +1 -1
  409. package/dist/Semantic/Semantic.styles.js +8 -8
  410. package/dist/Semantic/Semantic.styles.js.map +1 -1
  411. package/dist/Semantic/Semantic.types.d.ts +1 -1
  412. package/dist/Semantic/Semantic.types.js.map +1 -1
  413. package/dist/Sidebar/Sidebar.d.ts +1 -1
  414. package/dist/Sidebar/Sidebar.js.map +1 -1
  415. package/dist/Sidebar/Sidebar.styles.js +7 -7
  416. package/dist/Slider/Slider.d.ts +1 -1
  417. package/dist/Slider/Slider.js.map +1 -1
  418. package/dist/Slider/Slider.styles.js +5 -5
  419. package/dist/Slider/Slider.types.d.ts +1 -1
  420. package/dist/Slider/Slider.types.js.map +1 -1
  421. package/dist/Spinner/Spinner.d.ts +1 -1
  422. package/dist/Spinner/Spinner.js.map +1 -1
  423. package/dist/Spinner/Spinner.styles.d.ts +2 -2
  424. package/dist/Spinner/Spinner.styles.js +7 -7
  425. package/dist/Spinner/Spinner.styles.js.map +1 -1
  426. package/dist/Spinner/Spinner.types.d.ts +2 -2
  427. package/dist/Spinner/Spinner.types.js.map +1 -1
  428. package/dist/SuperSelect/SuperSelect.components.d.ts +2 -2
  429. package/dist/SuperSelect/SuperSelect.components.js.map +1 -1
  430. package/dist/SuperSelect/SuperSelect.d.ts +1 -1
  431. package/dist/SuperSelect/SuperSelect.js.map +1 -1
  432. package/dist/SuperSelect/SuperSelect.presets.styles.js +1 -1
  433. package/dist/SuperSelect/SuperSelect.styles.js +37 -37
  434. package/dist/SuperSelect/SuperSelect.types.d.ts +5 -5
  435. package/dist/SuperSelect/SuperSelect.types.js +1 -1
  436. package/dist/SuperSelect/SuperSelect.types.js.map +1 -1
  437. package/dist/SuperSelect/SuperSelect.utils.d.ts +1 -1
  438. package/dist/SuperSelect/SuperSelect.utils.js.map +1 -1
  439. package/dist/SuperSelect/index.d.ts +3 -3
  440. package/dist/SuperSelect/index.js +2 -2
  441. package/dist/SuperSelect/index.js.map +1 -1
  442. package/dist/SuperSelect/presets/contactsPreset.d.ts +1 -1
  443. package/dist/SuperSelect/presets/contactsPreset.js.map +1 -1
  444. package/dist/SuperSelect/presets/filterPreset.d.ts +1 -1
  445. package/dist/SuperSelect/presets/filterPreset.js.map +1 -1
  446. package/dist/SuperSelect/presets/index.d.ts +1 -1
  447. package/dist/SuperSelect/presets/index.js.map +1 -1
  448. package/dist/SuperSelect/presets/pillPreset.d.ts +1 -1
  449. package/dist/SuperSelect/presets/pillPreset.js.map +1 -1
  450. package/dist/SuperSelect/useSuperSelect.d.ts +2 -2
  451. package/dist/SuperSelect/useSuperSelect.js.map +1 -1
  452. package/dist/Switch/Switch.d.ts +2 -2
  453. package/dist/Switch/Switch.js.map +1 -1
  454. package/dist/Switch/Switch.styles.js +4 -4
  455. package/dist/Switch/Switch.types.d.ts +1 -1
  456. package/dist/Switch/Switch.types.js.map +1 -1
  457. package/dist/Table/Table.d.ts +3 -3
  458. package/dist/Table/Table.js +4 -4
  459. package/dist/Table/Table.js.map +1 -1
  460. package/dist/Table/Table.styles.d.ts +1 -1
  461. package/dist/Table/Table.styles.js +28 -28
  462. package/dist/Table/Table.styles.js.map +1 -1
  463. package/dist/Table/Table.types.d.ts +5 -5
  464. package/dist/Table/Table.types.js.map +1 -1
  465. package/dist/TableShelf/TableShelf.d.ts +1 -1
  466. package/dist/TableShelf/TableShelf.js.map +1 -1
  467. package/dist/TableShelf/TableShelf.styles.js +5 -5
  468. package/dist/Tabs/Tabs.d.ts +2 -2
  469. package/dist/Tabs/Tabs.js.map +1 -1
  470. package/dist/Tabs/Tabs.styles.js +8 -8
  471. package/dist/Tabs/Tabs.types.d.ts +4 -4
  472. package/dist/Tabs/Tabs.types.js.map +1 -1
  473. package/dist/Tearsheet/Tearsheet.constants.d.ts +1 -1
  474. package/dist/Tearsheet/Tearsheet.constants.js.map +1 -1
  475. package/dist/Tearsheet/Tearsheet.d.ts +1 -1
  476. package/dist/Tearsheet/Tearsheet.js.map +1 -1
  477. package/dist/Tearsheet/Tearsheet.styles.d.ts +1 -1
  478. package/dist/Tearsheet/Tearsheet.styles.js +6 -6
  479. package/dist/Tearsheet/Tearsheet.styles.js.map +1 -1
  480. package/dist/Tearsheet/Tearsheet.types.d.ts +1 -1
  481. package/dist/Tearsheet/Tearsheet.types.js.map +1 -1
  482. package/dist/Tearsheet/Tearsheet.util.d.ts +1 -1
  483. package/dist/Tearsheet/Tearsheet.util.js.map +1 -1
  484. package/dist/TextArea/TextArea.d.ts +2 -2
  485. package/dist/TextArea/TextArea.js.map +1 -1
  486. package/dist/TextArea/TextArea.styles.d.ts +1 -1
  487. package/dist/TextArea/TextArea.styles.js +1 -1
  488. package/dist/TextArea/TextArea.styles.js.map +1 -1
  489. package/dist/TextArea/TextArea.types.d.ts +1 -1
  490. package/dist/TextArea/TextArea.types.js.map +1 -1
  491. package/dist/TextEditor/TextEditor.d.ts +1 -1
  492. package/dist/TextEditor/TextEditor.js.map +1 -1
  493. package/dist/TextEditor/TextEditor.types.d.ts +3 -3
  494. package/dist/TextEditor/TextEditor.types.js.map +1 -1
  495. package/dist/TextEditorOutput/TextEditorOutput.d.ts +2 -2
  496. package/dist/TextEditorOutput/TextEditorOutput.js.map +1 -1
  497. package/dist/TextEditorOutput/TextEditorOutput.styles.js +1 -1
  498. package/dist/TextEditorOutput/TextEditorOutput.types.d.ts +2 -2
  499. package/dist/TextEditorOutput/TextEditorOutput.types.js.map +1 -1
  500. package/dist/Thumbnail/Thumbnail.d.ts +1 -1
  501. package/dist/Thumbnail/Thumbnail.hooks.d.ts +3 -3
  502. package/dist/Thumbnail/Thumbnail.hooks.js.map +1 -1
  503. package/dist/Thumbnail/Thumbnail.js.map +1 -1
  504. package/dist/Thumbnail/Thumbnail.styles.d.ts +2 -2
  505. package/dist/Thumbnail/Thumbnail.styles.js +17 -17
  506. package/dist/Thumbnail/Thumbnail.styles.js.map +1 -1
  507. package/dist/Thumbnail/Thumbnail.types.d.ts +5 -4
  508. package/dist/Thumbnail/Thumbnail.types.js.map +1 -1
  509. package/dist/Thumbnail/Thumbnail.utils.d.ts +1 -1
  510. package/dist/Thumbnail/Thumbnail.utils.js.map +1 -1
  511. package/dist/Thumbnail/ThumbnailCaption.d.ts +1 -1
  512. package/dist/Thumbnail/ThumbnailCaption.js.map +1 -1
  513. package/dist/Thumbnail/ThumbnailPreview.d.ts +1 -1
  514. package/dist/Thumbnail/ThumbnailPreview.js.map +1 -1
  515. package/dist/ThumbnailGrid/ThumbnailGrid.d.ts +2 -2
  516. package/dist/ThumbnailGrid/ThumbnailGrid.js +1 -1
  517. package/dist/ThumbnailGrid/ThumbnailGrid.js.map +1 -1
  518. package/dist/ThumbnailGrid/ThumbnailGrid.styles.js +9 -9
  519. package/dist/ThumbnailGrid/ThumbnailGrid.styles.js.map +1 -1
  520. package/dist/ThumbnailGrid/ThumbnailGrid.types.d.ts +1 -1
  521. package/dist/ThumbnailGrid/ThumbnailGrid.types.js.map +1 -1
  522. package/dist/TieredDropdown/TieredDropdown.helpers.d.ts +1 -1
  523. package/dist/TieredDropdown/TieredDropdown.helpers.js.map +1 -1
  524. package/dist/TieredDropdown/TieredDropdown.js.map +1 -1
  525. package/dist/TieredDropdown/TieredDropdown.types.d.ts +3 -3
  526. package/dist/TieredDropdown/TieredDropdown.types.js.map +1 -1
  527. package/dist/TieredSelect/LeafSelectionTieredSelect.d.ts +1 -1
  528. package/dist/TieredSelect/LeafSelectionTieredSelect.js.map +1 -1
  529. package/dist/TieredSelect/TierSelectionTieredSelect.d.ts +1 -1
  530. package/dist/TieredSelect/TierSelectionTieredSelect.js.map +1 -1
  531. package/dist/TieredSelect/TieredSelect.d.ts +2 -2
  532. package/dist/TieredSelect/TieredSelect.js.map +1 -1
  533. package/dist/TieredSelect/TieredSelect.styles.js +9 -9
  534. package/dist/TieredSelect/TieredSelect.types.d.ts +3 -3
  535. package/dist/TieredSelect/TieredSelect.types.js.map +1 -1
  536. package/dist/TieredSelect/TieredSelectMenu.d.ts +1 -1
  537. package/dist/TieredSelect/TieredSelectMenu.js.map +1 -1
  538. package/dist/Tile/Tile.d.ts +2 -2
  539. package/dist/Tile/Tile.js.map +1 -1
  540. package/dist/Tile/Tile.styles.d.ts +1 -1
  541. package/dist/Tile/Tile.styles.js +8 -8
  542. package/dist/Tile/Tile.styles.js.map +1 -1
  543. package/dist/Tile/Tile.types.d.ts +2 -2
  544. package/dist/Tile/Tile.types.js.map +1 -1
  545. package/dist/Title/Title.d.ts +2 -2
  546. package/dist/Title/Title.js.map +1 -1
  547. package/dist/Title/Title.styles.js +7 -7
  548. package/dist/Title/Title.types.d.ts +1 -1
  549. package/dist/Title/Title.types.js.map +1 -1
  550. package/dist/Toast/Toast.d.ts +2 -2
  551. package/dist/Toast/Toast.js.map +1 -1
  552. package/dist/Toast/Toast.styles.d.ts +1 -1
  553. package/dist/Toast/Toast.styles.js +3 -3
  554. package/dist/Toast/Toast.styles.js.map +1 -1
  555. package/dist/Toast/Toast.types.d.ts +1 -1
  556. package/dist/Toast/Toast.types.js.map +1 -1
  557. package/dist/ToggleButton/ToggleButton.d.ts +1 -1
  558. package/dist/ToggleButton/ToggleButton.js.map +1 -1
  559. package/dist/ToggleButton/ToggleButton.styles.js +1 -1
  560. package/dist/ToggleButton/ToggleButton.types.d.ts +2 -2
  561. package/dist/ToggleButton/ToggleButton.types.js.map +1 -1
  562. package/dist/Token/Token.d.ts +2 -2
  563. package/dist/Token/Token.js.map +1 -1
  564. package/dist/Token/Token.styles.js +3 -3
  565. package/dist/ToolHeader/ActionIcon.d.ts +1 -1
  566. package/dist/ToolHeader/ActionIcon.js.map +1 -1
  567. package/dist/ToolHeader/ActionIcon.types.d.ts +2 -2
  568. package/dist/ToolHeader/ActionIcon.types.js.map +1 -1
  569. package/dist/ToolHeader/ToolHeader.d.ts +2 -2
  570. package/dist/ToolHeader/ToolHeader.js.map +1 -1
  571. package/dist/ToolHeader/ToolHeader.styles.d.ts +1 -1
  572. package/dist/ToolHeader/ToolHeader.styles.js +6 -6
  573. package/dist/ToolHeader/ToolHeader.styles.js.map +1 -1
  574. package/dist/ToolHeader/ToolHeader.types.d.ts +2 -2
  575. package/dist/ToolHeader/ToolHeader.types.js.map +1 -1
  576. package/dist/Tooltip/Tooltip.d.ts +2 -2
  577. package/dist/Tooltip/Tooltip.js.map +1 -1
  578. package/dist/Tooltip/Tooltip.styles.js +2 -2
  579. package/dist/Tooltip/Tooltip.types.d.ts +3 -3
  580. package/dist/Tooltip/Tooltip.types.js.map +1 -1
  581. package/dist/Tree/Tree.d.ts +1 -1
  582. package/dist/Tree/Tree.hooks.d.ts +1 -1
  583. package/dist/Tree/Tree.hooks.js.map +1 -1
  584. package/dist/Tree/Tree.js.map +1 -1
  585. package/dist/Tree/Tree.styles.js +9 -9
  586. package/dist/Tree/Tree.types.d.ts +6 -6
  587. package/dist/Tree/Tree.types.js.map +1 -1
  588. package/dist/Typeahead/Typeahead.d.ts +1 -1
  589. package/dist/Typeahead/Typeahead.js.map +1 -1
  590. package/dist/Typeahead/Typeahead.styles.js +3 -3
  591. package/dist/Typography/Typography.d.ts +2 -2
  592. package/dist/Typography/Typography.js.map +1 -1
  593. package/dist/Typography/Typography.styles.d.ts +2 -2
  594. package/dist/Typography/Typography.styles.js +1 -1
  595. package/dist/Typography/Typography.styles.js.map +1 -1
  596. package/dist/Typography/Typography.table.story.js +2 -2
  597. package/dist/Typography/Typography.types.d.ts +2 -2
  598. package/dist/Typography/Typography.types.js.map +1 -1
  599. package/dist/Typography/index.d.ts +1 -1
  600. package/dist/Typography/index.js.map +1 -1
  601. package/dist/_hooks/Anchor.d.ts +3 -2
  602. package/dist/_hooks/Anchor.js.map +1 -1
  603. package/dist/_hooks/BoundingRect.d.ts +1 -1
  604. package/dist/_hooks/BoundingRect.js.map +1 -1
  605. package/dist/_hooks/ClickOutside.d.ts +1 -1
  606. package/dist/_hooks/ClickOutside.js.map +1 -1
  607. package/dist/_hooks/DateTime/DateTime.d.ts +1 -1
  608. package/dist/_hooks/DateTime/DateTime.js.map +1 -1
  609. package/dist/_hooks/DelayedCallback.d.ts +1 -1
  610. package/dist/_hooks/DelayedCallback.js.map +1 -1
  611. package/dist/_hooks/DelayedToggle.d.ts +2 -2
  612. package/dist/_hooks/DelayedToggle.js.map +1 -1
  613. package/dist/_hooks/Event.d.ts +1 -1
  614. package/dist/_hooks/Event.js.map +1 -1
  615. package/dist/_hooks/Hotkey.d.ts +1 -1
  616. package/dist/_hooks/Hotkey.js.map +1 -1
  617. package/dist/_hooks/I18n.d.ts +1 -1
  618. package/dist/_hooks/I18n.js.map +1 -1
  619. package/dist/_hooks/OverflowObserver/OverflowObserver.d.ts +1 -1
  620. package/dist/_hooks/OverflowObserver/OverflowObserver.js.map +1 -1
  621. package/dist/_hooks/Resize.d.ts +1 -1
  622. package/dist/_hooks/Resize.js.map +1 -1
  623. package/dist/_hooks/Scroll.d.ts +1 -1
  624. package/dist/_hooks/Scroll.js.map +1 -1
  625. package/dist/_hooks/Trigger.d.ts +1 -1
  626. package/dist/_hooks/Trigger.js.map +1 -1
  627. package/dist/_hooks/useFileUploader.d.ts +1 -1
  628. package/dist/_hooks/useFileUploader.js.map +1 -1
  629. package/dist/_styles/arrows.d.ts +1 -1
  630. package/dist/_styles/arrows.js.map +1 -1
  631. package/dist/_styles/mixins.d.ts +1 -1
  632. package/dist/_styles/mixins.js.map +1 -1
  633. package/dist/_styles/shadows.d.ts +1 -1
  634. package/dist/_styles/shadows.js.map +1 -1
  635. package/dist/_typedoc/Avatar/Avatar.types.json +20 -20
  636. package/dist/_typedoc/AvatarStack/AvatarStack.types.json +23 -23
  637. package/dist/_typedoc/Badge/Badge.types.json +6 -6
  638. package/dist/_typedoc/Banner/Banner.types.json +13 -13
  639. package/dist/_typedoc/Box/Box.types.json +68 -68
  640. package/dist/_typedoc/Breadcrumbs/Breadcrumbs.types.json +10 -10
  641. package/dist/_typedoc/Button/Button.types.json +11 -11
  642. package/dist/_typedoc/Calendar/Calendar.types.json +80 -80
  643. package/dist/_typedoc/Card/Card.types.json +6 -6
  644. package/dist/_typedoc/Checkbox/Checkbox.types.json +7 -7
  645. package/dist/_typedoc/ContactItem/ContactItem.types.json +9 -9
  646. package/dist/_typedoc/DateInput/DateInput.types.json +35 -35
  647. package/dist/_typedoc/DateSelect/DateSelect.types.json +13 -13
  648. package/dist/_typedoc/DetailPage/DetailPage.types.json +4 -4
  649. package/dist/_typedoc/Dropdown/Dropdown.types.json +37 -37
  650. package/dist/_typedoc/DropdownFlyout/DropdownFlyout.types.json +29 -29
  651. package/dist/_typedoc/Dropzone/Dropzone.types.json +41 -41
  652. package/dist/_typedoc/EmptyState/EmptyState.types.json +14 -14
  653. package/dist/_typedoc/FileList/FileList.types.json +9 -9
  654. package/dist/_typedoc/FileSelect/FileSelect.types.json +26 -26
  655. package/dist/_typedoc/FileSelect/GridSource/GridSource.types.json +20 -20
  656. package/dist/_typedoc/FileSelect/LocalSource/LocalSource.types.json +14 -14
  657. package/dist/_typedoc/FileSelect/TreeSource/TreeSource.types.json +9 -9
  658. package/dist/_typedoc/Flex/Flex.types.json +27 -27
  659. package/dist/_typedoc/FlexList/FlexList.types.json +30 -30
  660. package/dist/_typedoc/Form/Form.types.json +698 -698
  661. package/dist/_typedoc/Grid/Grid.types.json +8 -8
  662. package/dist/_typedoc/GroupSelect/GroupSelect.types.json +52 -52
  663. package/dist/_typedoc/Input/Input.types.json +2 -2
  664. package/dist/_typedoc/Link/Link.types.json +4 -4
  665. package/dist/_typedoc/ListPage/ListPage.types.json +13 -13
  666. package/dist/_typedoc/Menu/Menu.types.json +62 -62
  667. package/dist/_typedoc/MenuImperative/MenuImperative.types.json +74 -74
  668. package/dist/_typedoc/Modal/Modal.types.json +41 -41
  669. package/dist/_typedoc/MultiSelect/MultiSelect.types.json +31 -31
  670. package/dist/_typedoc/Notation/Notation.types.json +4 -4
  671. package/dist/_typedoc/NumberInput/NumberInput.types.json +38 -38
  672. package/dist/_typedoc/OverlayTrigger/OverlayTrigger.types.json +30 -30
  673. package/dist/_typedoc/PageLayout/PageLayout.types.json +22 -22
  674. package/dist/_typedoc/Pagination/Pagination.types.json +7 -7
  675. package/dist/_typedoc/Panel/Panel.types.json +27 -27
  676. package/dist/_typedoc/Pill/Pill.types.json +2 -2
  677. package/dist/_typedoc/PillSelect/PillSelect.types.json +46 -46
  678. package/dist/_typedoc/Popover/Popover.types.json +14 -14
  679. package/dist/_typedoc/ProgressBar/ProgressBar.types.json +6 -6
  680. package/dist/_typedoc/RadioButton/RadioButton.types.json +6 -6
  681. package/dist/_typedoc/Required/Required.types.json +5 -5
  682. package/dist/_typedoc/Search/Search.types.json +18 -18
  683. package/dist/_typedoc/Section/Section.types.json +14 -14
  684. package/dist/_typedoc/SegmentedController/SegmentedController.types.json +20 -20
  685. package/dist/_typedoc/Select/Select.types.json +55 -55
  686. package/dist/_typedoc/Slider/Slider.types.json +6 -6
  687. package/dist/_typedoc/Spinner/Spinner.types.json +9 -9
  688. package/dist/_typedoc/Switch/Switch.types.json +3 -3
  689. package/dist/_typedoc/Table/Table.types.json +96 -96
  690. package/dist/_typedoc/Tabs/Tabs.types.json +17 -17
  691. package/dist/_typedoc/Tearsheet/Tearsheet.types.json +16 -16
  692. package/dist/_typedoc/TextArea/TextArea.types.json +3 -3
  693. package/dist/_typedoc/TextEditor/TextEditor.types.json +9 -9
  694. package/dist/_typedoc/TextEditorOutput/TextEditorOutput.types.json +4 -4
  695. package/dist/_typedoc/Thumbnail/Thumbnail.types.json +19 -19
  696. package/dist/_typedoc/TieredDropdown/TieredDropdown.types.json +42 -42
  697. package/dist/_typedoc/TieredSelect/TieredSelect.types.json +28 -28
  698. package/dist/_typedoc/Tile/Tile.types.json +30 -30
  699. package/dist/_typedoc/Toast/Toast.types.json +4 -4
  700. package/dist/_typedoc/ToggleButton/ToggleButton.types.json +3 -3
  701. package/dist/_typedoc/Token/Token.types.json +4 -4
  702. package/dist/_typedoc/ToolHeader/ToolHeader.types.json +10 -10
  703. package/dist/_typedoc/Tooltip/Tooltip.types.json +13 -13
  704. package/dist/_typedoc/Tree/Tree.types.json +86 -86
  705. package/dist/_typedoc/Typeahead/Typeahead.types.json +2 -2
  706. package/dist/_typedoc/Typography/Typography.types.json +8 -8
  707. package/dist/_typedoc/_utils/types.json +3 -3
  708. package/dist/_utils/CalendarHelpers.d.ts +1 -1
  709. package/dist/_utils/CalendarHelpers.js +1 -1
  710. package/dist/_utils/CalendarHelpers.js.map +1 -1
  711. package/dist/_utils/TinyMCE.d.ts +2 -2
  712. package/dist/_utils/TinyMCE.js.map +1 -1
  713. package/dist/_utils/dateTime.js.map +1 -1
  714. package/dist/_utils/getAnchorPosition.d.ts +2 -2
  715. package/dist/_utils/getAnchorPosition.js.map +1 -1
  716. package/dist/_utils/isReactElement.d.ts +1 -1
  717. package/dist/_utils/isReactElement.js.map +1 -1
  718. package/dist/_utils/mergeRefs.d.ts +1 -1
  719. package/dist/_utils/mergeRefs.js.map +1 -1
  720. package/dist/_utils/placement.d.ts +1 -1
  721. package/dist/_utils/placement.js.map +1 -1
  722. package/dist/_utils/propsTypedoc.d.ts +12 -12
  723. package/dist/_utils/propsTypedoc.js +1 -12
  724. package/dist/_utils/propsTypedoc.js.map +1 -1
  725. package/dist/_utils/slotify.d.ts +1 -1
  726. package/dist/_utils/slotify.js.map +1 -1
  727. package/dist/_utils/triggerListeners.d.ts +2 -2
  728. package/dist/_utils/triggerListeners.js.map +1 -1
  729. package/dist/_utils/types.d.ts +1 -1
  730. package/dist/_utils/types.js.map +1 -1
  731. package/package.json +2 -2
  732. package/.eslintrc.json +0 -47
  733. package/dist/Link/Link.coverage.stories.d.ts +0 -8
@@ -1 +1 @@
1
- {"version":3,"file":"DetailPage.js","names":["React","Grid","Page","Section","SectionProvider","H1","addSubcomponents","gridConfig","StyledDetailPageBody","StyledDetailPageCard","StyledDetailPageFooter","StyledDetailPageFooterActions","StyledDetailPageFooterContent","StyledDetailPageFooterNotation","DetailPageViewContext","createContext","width","DetailPage_","forwardRef","_ref","ref","_ref$width","children","props","_objectWithoutProperties","_excluded","createElement","Provider","value","_extends","Heading","Body","_React$useContext","useContext","Row","Col","colWidth","colStart","offset","Footer","_ref2","_excluded2","FooterNotation","FooterActions","Actions","Card","displayName","DetailPage","Main","Header","Breadcrumbs","Banner","Title","Tabs","Aside"],"sources":["../../src/DetailPage/DetailPage.tsx"],"sourcesContent":["import React from 'react'\nimport { Grid } from '../Grid/Grid'\nimport { Page } from '../PageLayout/PageLayout'\nimport {\n PageComponentProps,\n PageFooterProps,\n} from '../PageLayout/PageLayout.types'\nimport { Section, SectionProvider } from '../Section/Section'\nimport { H1 } from '../Semantic/Semantic'\nimport { addSubcomponents } from '../_utils/addSubcomponents'\nimport { Props } from '../_utils/types'\nimport { gridConfig } from './DetailPage.constants'\nimport {\n StyledDetailPageBody,\n StyledDetailPageCard,\n StyledDetailPageFooter,\n StyledDetailPageFooterActions,\n StyledDetailPageFooterContent,\n StyledDetailPageFooterNotation,\n} from './DetailPage.styles'\nimport { DetailPageProps, DetailPageWidth } from './DetailPage.types'\n\nexport const DetailPageViewContext = React.createContext<{\n width: DetailPageWidth\n}>({\n width: 'md',\n})\n\nconst DetailPage_ = React.forwardRef<HTMLDivElement, DetailPageProps>(\n function DetailPage_({ width = 'md', children, ...props }, ref) {\n return (\n <DetailPageViewContext.Provider value={{ width }}>\n <Page ref={ref} {...props}>\n {children}\n </Page>\n </DetailPageViewContext.Provider>\n )\n }\n)\n\nexport const Heading = React.forwardRef<HTMLDivElement, Props>(function Heading(\n props,\n ref\n) {\n return <H1 ref={ref} {...props} />\n})\n\nexport const Body = React.forwardRef<HTMLDivElement, PageComponentProps>(\n function Body(props, ref) {\n const { width } = React.useContext(DetailPageViewContext)\n\n return (\n <Page.Body>\n <Grid.Row>\n <Grid.Col\n colWidth={gridConfig[width].width}\n colStart={gridConfig[width].offset}\n >\n <StyledDetailPageBody ref={ref} {...props} />\n </Grid.Col>\n </Grid.Row>\n </Page.Body>\n )\n }\n)\n\nexport const Footer = React.forwardRef<HTMLDivElement, PageFooterProps>(\n function Footer({ children, ...props }, ref) {\n return (\n <StyledDetailPageFooter ref={ref} {...props}>\n <StyledDetailPageFooterContent>\n {children}\n </StyledDetailPageFooterContent>\n </StyledDetailPageFooter>\n )\n }\n)\n\nexport const FooterNotation = React.forwardRef<HTMLDivElement, Props>(\n function FooterNotation(props, ref) {\n return <StyledDetailPageFooterNotation ref={ref} {...props} />\n }\n)\n\nexport const FooterActions = React.forwardRef<HTMLDivElement, Props>(\n function Actions(props, ref) {\n return <StyledDetailPageFooterActions ref={ref} {...props} />\n }\n)\n\nexport const Card = React.forwardRef<HTMLDivElement, Props>(function Card(\n props,\n ref\n) {\n return (\n <SectionProvider>\n <StyledDetailPageCard ref={ref} {...props} />\n </SectionProvider>\n )\n})\n\nDetailPage_.displayName = 'DetailPage'\nHeading.displayName = 'DetailPage.Heading'\nBody.displayName = 'DetailPage.Body'\nFooter.displayName = 'DetailPage.Footer'\nCard.displayName = 'DetailPage.Card'\n\n/**\n\n A detail page is used when an object is selected from a list page. The layout\n can adhere to varying predefined widths depending on use case.\n\n - DetailPage\n - DetailPage.Main\n - DetailPage.Header\n - DetailPage.Breadcrumbs\n - Breadcrumbs\n - DetailPage.Banner\n - Banner\n - DetailPage.Title\n - Title or H1\n - DetailPage.Tabs\n - Tabs\n - DetailPage.Body\n - DetailPage.Title\n - DetailPage.Banner\n - DetailPage.Card\n - DetailPage.Banner\n - DetailPage.Section\n - DetailPage.Section\n - DetailPage.Section\n - DetailPage.Footer\n - DetailPage.FooterNotation\n - DetailPage.FooterActions\n - Button\n - DetailPage.Aside\n - Panel\n\n @since 10.19.0\n\n @see [Storybook](https://procore.github.io/core/core-react/latest/?path=/story/demos-detailpage--edit)\n\n @see [Design Guidelines](https://design.procore.com/detail)\n\n */\nexport const DetailPage = addSubcomponents(\n {\n Main: Page.Main,\n Header: Page.Header,\n Breadcrumbs: Page.Breadcrumbs,\n Card,\n Banner: Page.Banner,\n Title: Page.Title,\n Heading,\n Tabs: Page.Tabs,\n Footer,\n FooterActions,\n FooterNotation,\n Section,\n Body,\n Aside: Page.Aside,\n },\n DetailPage_\n)\n"],"mappings":"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"}
1
+ {"version":3,"file":"DetailPage.js","names":["React","Grid","Page","Section","SectionProvider","H1","addSubcomponents","gridConfig","StyledDetailPageBody","StyledDetailPageCard","StyledDetailPageFooter","StyledDetailPageFooterActions","StyledDetailPageFooterContent","StyledDetailPageFooterNotation","DetailPageViewContext","createContext","width","DetailPage_","forwardRef","_ref","ref","_ref$width","children","props","_objectWithoutProperties","_excluded","createElement","Provider","value","_extends","Heading","Body","_React$useContext","useContext","Row","Col","colWidth","colStart","offset","Footer","_ref2","_excluded2","FooterNotation","FooterActions","Actions","Card","displayName","DetailPage","Main","Header","Breadcrumbs","Banner","Title","Tabs","Aside"],"sources":["../../src/DetailPage/DetailPage.tsx"],"sourcesContent":["import React from 'react'\nimport { Grid } from '../Grid/Grid'\nimport { Page } from '../PageLayout/PageLayout'\nimport type {\n PageComponentProps,\n PageFooterProps,\n} from '../PageLayout/PageLayout.types'\nimport { Section, SectionProvider } from '../Section/Section'\nimport { H1 } from '../Semantic/Semantic'\nimport { addSubcomponents } from '../_utils/addSubcomponents'\nimport type { Props } from '../_utils/types'\nimport { gridConfig } from './DetailPage.constants'\nimport {\n StyledDetailPageBody,\n StyledDetailPageCard,\n StyledDetailPageFooter,\n StyledDetailPageFooterActions,\n StyledDetailPageFooterContent,\n StyledDetailPageFooterNotation,\n} from './DetailPage.styles'\nimport type { DetailPageProps, DetailPageWidth } from './DetailPage.types'\n\nexport const DetailPageViewContext = React.createContext<{\n width: DetailPageWidth\n}>({\n width: 'md',\n})\n\nconst DetailPage_ = React.forwardRef<HTMLDivElement, DetailPageProps>(\n function DetailPage_({ width = 'md', children, ...props }, ref) {\n return (\n <DetailPageViewContext.Provider value={{ width }}>\n <Page ref={ref} {...props}>\n {children}\n </Page>\n </DetailPageViewContext.Provider>\n )\n }\n)\n\nexport const Heading = React.forwardRef<HTMLDivElement, Props>(function Heading(\n props,\n ref\n) {\n return <H1 ref={ref} {...props} />\n})\n\nexport const Body = React.forwardRef<HTMLDivElement, PageComponentProps>(\n function Body(props, ref) {\n const { width } = React.useContext(DetailPageViewContext)\n\n return (\n <Page.Body>\n <Grid.Row>\n <Grid.Col\n colWidth={gridConfig[width].width}\n colStart={gridConfig[width].offset}\n >\n <StyledDetailPageBody ref={ref} {...props} />\n </Grid.Col>\n </Grid.Row>\n </Page.Body>\n )\n }\n)\n\nexport const Footer = React.forwardRef<HTMLDivElement, PageFooterProps>(\n function Footer({ children, ...props }, ref) {\n return (\n <StyledDetailPageFooter ref={ref} {...props}>\n <StyledDetailPageFooterContent>\n {children}\n </StyledDetailPageFooterContent>\n </StyledDetailPageFooter>\n )\n }\n)\n\nexport const FooterNotation = React.forwardRef<HTMLDivElement, Props>(\n function FooterNotation(props, ref) {\n return <StyledDetailPageFooterNotation ref={ref} {...props} />\n }\n)\n\nexport const FooterActions = React.forwardRef<HTMLDivElement, Props>(\n function Actions(props, ref) {\n return <StyledDetailPageFooterActions ref={ref} {...props} />\n }\n)\n\nexport const Card = React.forwardRef<HTMLDivElement, Props>(function Card(\n props,\n ref\n) {\n return (\n <SectionProvider>\n <StyledDetailPageCard ref={ref} {...props} />\n </SectionProvider>\n )\n})\n\nDetailPage_.displayName = 'DetailPage'\nHeading.displayName = 'DetailPage.Heading'\nBody.displayName = 'DetailPage.Body'\nFooter.displayName = 'DetailPage.Footer'\nCard.displayName = 'DetailPage.Card'\n\n/**\n\n A detail page is used when an object is selected from a list page. The layout\n can adhere to varying predefined widths depending on use case.\n\n - DetailPage\n - DetailPage.Main\n - DetailPage.Header\n - DetailPage.Breadcrumbs\n - Breadcrumbs\n - DetailPage.Banner\n - Banner\n - DetailPage.Title\n - Title or H1\n - DetailPage.Tabs\n - Tabs\n - DetailPage.Body\n - DetailPage.Title\n - DetailPage.Banner\n - DetailPage.Card\n - DetailPage.Banner\n - DetailPage.Section\n - DetailPage.Section\n - DetailPage.Section\n - DetailPage.Footer\n - DetailPage.FooterNotation\n - DetailPage.FooterActions\n - Button\n - DetailPage.Aside\n - Panel\n\n @since 10.19.0\n\n @see [Storybook](https://procore.github.io/core/core-react/latest/?path=/story/demos-detailpage--edit)\n\n @see [Design Guidelines](https://design.procore.com/detail)\n\n */\nexport const DetailPage = addSubcomponents(\n {\n Main: Page.Main,\n Header: Page.Header,\n Breadcrumbs: Page.Breadcrumbs,\n Card,\n Banner: Page.Banner,\n Title: Page.Title,\n Heading,\n Tabs: Page.Tabs,\n Footer,\n FooterActions,\n FooterNotation,\n Section,\n Body,\n Aside: Page.Aside,\n },\n DetailPage_\n)\n"],"mappings":"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"}
@@ -8,31 +8,31 @@ import { colors } from '../_styles/colors';
8
8
  import { spacing } from '../_styles/spacing';
9
9
  export var StyledDetailPage = /*#__PURE__*/styled.div.withConfig({
10
10
  displayName: "StyledDetailPage",
11
- componentId: "core-11_24_1__sc-cytnlo-0"
11
+ componentId: "core-11_24_3__sc-cytnlo-0"
12
12
  })(["background-color:", ";height:100%;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:space-between;"], colors.gray96);
13
13
  export var StyledDetailPageBody = /*#__PURE__*/styled.div.withConfig({
14
14
  displayName: "StyledDetailPageBody",
15
- componentId: "core-11_24_1__sc-cytnlo-1"
15
+ componentId: "core-11_24_3__sc-cytnlo-1"
16
16
  })(["padding-bottom:", "px;> ", ":first-child,> ", "{margin-top:", "px;}"], spacing.xl, StyledPageBanner, StyledPageTitle, spacing.xl);
17
17
  export var StyledDetailPageFooterNotation = /*#__PURE__*/styled.div.withConfig({
18
18
  displayName: "StyledDetailPageFooterNotation",
19
- componentId: "core-11_24_1__sc-cytnlo-2"
19
+ componentId: "core-11_24_3__sc-cytnlo-2"
20
20
  })(["flex-grow:1;z-index:1;"]);
21
21
  export var StyledDetailPageFooter = /*#__PURE__*/styled(Page.Footer).withConfig({
22
22
  displayName: "StyledDetailPageFooter",
23
- componentId: "core-11_24_1__sc-cytnlo-3"
23
+ componentId: "core-11_24_3__sc-cytnlo-3"
24
24
  })(["display:flex;padding:", "px 0;background-color:", ";justify-content:center;"], spacing.lg, colors.white);
25
25
  export var StyledDetailPageFooterActions = /*#__PURE__*/styled(Box).withConfig({
26
26
  displayName: "StyledDetailPageFooterActions",
27
- componentId: "core-11_24_1__sc-cytnlo-4"
27
+ componentId: "core-11_24_3__sc-cytnlo-4"
28
28
  })(["", ""], getActions());
29
29
  var maxFooterContentWidth = 1920;
30
30
  export var StyledDetailPageFooterContent = /*#__PURE__*/styled.div.withConfig({
31
31
  displayName: "StyledDetailPageFooterContent",
32
- componentId: "core-11_24_1__sc-cytnlo-5"
32
+ componentId: "core-11_24_3__sc-cytnlo-5"
33
33
  })(["width:100%;align-items:center;display:flex;justify-content:flex-end;padding:0 ", "px;max-width:", "px;"], spacing.xl, maxFooterContentWidth);
34
34
  export var StyledDetailPageCard = /*#__PURE__*/styled(Card).withConfig({
35
35
  displayName: "StyledDetailPageCard",
36
- componentId: "core-11_24_1__sc-cytnlo-6"
36
+ componentId: "core-11_24_3__sc-cytnlo-6"
37
37
  })(["margin-top:", "px;width:100%;& > ", "{padding:", "px ", "px 0 ", "px;max-width:100%;&:empty{padding:0;}}& > ", " + ", " > ", "{border-top:0;}> .", ":first-child + .", ",> ", " + .", " + .", "{margin-top:", "px;}"], spacing.xl, StyledPageBanner, spacing.xl, spacing.xl, spacing.xl, StyledPageBanner, StyledSection, StyledSectionInner, sectionClassnames.levelAnonymous, sectionClassnames.level(2), StyledPageBanner, sectionClassnames.levelAnonymous, sectionClassnames.level(2), spacing.xxl * -1);
38
38
  //# sourceMappingURL=DetailPage.styles.js.map
@@ -1,6 +1,6 @@
1
- import { PageAsideProps, PageHeaderProps } from '../PageLayout/PageLayout.types';
2
- import { SectionProps } from '../Section/Section.types';
3
- import { Props } from '../_utils/types';
1
+ import type { PageAsideProps, PageHeaderProps } from '../PageLayout/PageLayout.types';
2
+ import type { SectionProps } from '../Section/Section.types';
3
+ import type { Props } from '../_utils/types';
4
4
  export declare type DetailPageWidth = 'md' | 'lg' | 'xl' | 'block';
5
5
  export interface DetailPageProps extends Props {
6
6
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"DetailPage.types.js","names":[],"sources":["../../src/DetailPage/DetailPage.types.ts"],"sourcesContent":["import { PageAsideProps, PageHeaderProps } from '../PageLayout/PageLayout.types'\nimport { SectionProps } from '../Section/Section.types'\nimport { Props } from '../_utils/types'\n\nexport type DetailPageWidth = 'md' | 'lg' | 'xl' | 'block'\n\nexport interface DetailPageProps extends Props {\n /**\n * @description Width of the content\n * @since 10.19.0\n */\n width?: DetailPageWidth\n}\nexport interface DetailPageAsideProps extends PageAsideProps {}\n\nexport interface DetailPageHeaderProps extends PageHeaderProps {}\n\nexport interface DetailPageSectionProps extends SectionProps {}\n"],"mappings":""}
1
+ {"version":3,"file":"DetailPage.types.js","names":[],"sources":["../../src/DetailPage/DetailPage.types.ts"],"sourcesContent":["import type {\n PageAsideProps,\n PageHeaderProps,\n} from '../PageLayout/PageLayout.types'\nimport type { SectionProps } from '../Section/Section.types'\nimport type { Props } from '../_utils/types'\n\nexport type DetailPageWidth = 'md' | 'lg' | 'xl' | 'block'\n\nexport interface DetailPageProps extends Props {\n /**\n * @description Width of the content\n * @since 10.19.0\n */\n width?: DetailPageWidth\n}\nexport interface DetailPageAsideProps extends PageAsideProps {}\n\nexport interface DetailPageHeaderProps extends PageHeaderProps {}\n\nexport interface DetailPageSectionProps extends SectionProps {}\n"],"mappings":""}
@@ -1,7 +1,7 @@
1
1
  import React from 'react';
2
- import { MenuItemProps } from '../MenuImperative/MenuImperative.types';
2
+ import type { MenuItemProps } from '../MenuImperative/MenuImperative.types';
3
3
  import { useOverlayTriggerContext } from '../OverlayTrigger/OverlayTrigger';
4
- import { ConsumerProps, DropdownButtonProps, DropdownProps } from './Dropdown.types';
4
+ import type { ConsumerProps, DropdownButtonProps, DropdownProps } from './Dropdown.types';
5
5
  export declare const DropdownButton: React.ForwardRefExoticComponent<DropdownButtonProps & React.RefAttributes<HTMLButtonElement>>;
6
6
  export declare const useDropdownContext: typeof useOverlayTriggerContext;
7
7
  export declare function DropdownConsumer({ children }: ConsumerProps): JSX.Element;
@@ -1 +1 @@
1
- {"version":3,"file":"Dropdown.js","names":["CaretDown","CaretUp","EllipsisVertical","classNames","React","MenuImperative","useMenuImperativeControlNavigation","OverlayTrigger","useOverlayTriggerContext","useI18nContext","addSubcomponents","mergeRefs","StyledDropdownButton","StyledDropdownMenu","StyledDropdownSpinner","noop","isFunction","obj","isOpen","_ref","_ref$open","open","Item","forwardRef","_ref2","ref","_ref2$restoreFocus","restoreFocus","props","_objectWithoutProperties","_excluded","createElement","_extends","DropdownButton","_ref3","children","className","_ref3$arrow","arrow","_ref3$loading","loading","_ref3$open","_ref3$focus","focus","_ref3$variant","variant","_excluded2","caret","size","icon","undefined","iconRight","$loading","DropdownMenu","_ref4","footer","i18nScope","menuRef","onSearch_","onSearch","_ref4$onSelect","onSelect","onSelect_","id","overlayTriggerContext","_React$useState","useState","_React$useState2","_slicedToArray","search","setSearch","_useMenuImperativeCon","Boolean","menuId","menuProps","menuNavigationTriggerProps","selection","hide","e","target","value","useEffect","_menuRef$current","current","highlightFirst","onKeyDown","key","stopPropagation","shadowStrength","role","Search","onChange","Options","Footer","Dropdown_","Dropdown","_ref5","afterHide_","afterHide","afterShow","beforeHide","beforeShow","error","_ref5$i18nScope","label","_ref5$onKeyDown","_ref5$onSelect","_ref5$placement","placement","_ref5$restoreFocusOnH","restoreFocusOnHide","_ref5$variant","_ref5$hasTabbableElem","hasTabbableElements","_excluded3","useRef","buttonRef","isDialog","_buttonRef$current","I18n","ariaLabel","t","concat","passA11yPropsToOverlay","autoFocus","overlay","useDropdownContext","DropdownConsumer","_ref6","displayName","Group"],"sources":["../../src/Dropdown/Dropdown.tsx"],"sourcesContent":["import { CaretDown, CaretUp, EllipsisVertical } from '@procore/core-icons/dist'\nimport classNames from 'classnames'\nimport React from 'react'\nimport {\n MenuImperative,\n useMenuImperativeControlNavigation,\n} from '../MenuImperative/MenuImperative'\nimport {\n MenuItemProps,\n MenuRef,\n Selection,\n} from '../MenuImperative/MenuImperative.types'\nimport {\n OverlayTrigger,\n useOverlayTriggerContext,\n} from '../OverlayTrigger/OverlayTrigger'\nimport { useI18nContext } from '../_hooks/I18n'\nimport { addSubcomponents } from '../_utils/addSubcomponents'\nimport { mergeRefs } from '../_utils/mergeRefs'\nimport {\n StyledDropdownButton,\n StyledDropdownMenu,\n StyledDropdownSpinner,\n} from './Dropdown.styles'\nimport {\n ConsumerProps,\n DropdownButtonProps,\n DropdownMenuProps,\n DropdownProps,\n} from './Dropdown.types'\n\nfunction noop() {}\nfunction isFunction(obj: any) {\n return typeof obj === 'function'\n}\nfunction isOpen({ open = false }) {\n return open\n}\n\nconst Item = React.forwardRef<HTMLDivElement, MenuItemProps>(function Item(\n { restoreFocus = false, ...props },\n ref\n) {\n return (\n <MenuImperative.Item ref={ref} restoreFocus={restoreFocus} {...props} />\n )\n}) as typeof MenuImperative.Item\n\nexport const DropdownButton = React.forwardRef<\n HTMLButtonElement,\n DropdownButtonProps\n>(function DropdownButton(\n {\n children,\n className,\n arrow = false,\n loading = false,\n open = false,\n focus = false,\n variant = 'secondary',\n ...props\n },\n ref\n) {\n const caret =\n arrow && (open ? <CaretUp size=\"sm\" /> : <CaretDown size=\"sm\" />)\n\n const icon = loading ? (\n <StyledDropdownSpinner\n size=\"xs\"\n variant={variant === 'primary' ? 'light' : ''}\n />\n ) : (\n caret\n )\n\n return (\n <StyledDropdownButton\n {...props}\n className={classNames(className, {\n focus: isFunction(focus) ? (focus as Function)({ open }) : focus,\n })}\n aria-busy={loading || undefined}\n iconRight={icon}\n $loading={loading}\n variant={variant}\n ref={ref}\n >\n {children}\n </StyledDropdownButton>\n )\n})\n\nconst DropdownMenu = React.forwardRef<HTMLDivElement, DropdownMenuProps>(\n function DropdownMenu(\n {\n children,\n footer,\n i18nScope,\n menuRef,\n onSearch: onSearch_,\n onSelect: onSelect_ = noop,\n id,\n },\n ref\n ) {\n const overlayTriggerContext = useOverlayTriggerContext()\n\n const [search, setSearch] = React.useState('')\n const { menuProps, menuNavigationTriggerProps } =\n useMenuImperativeControlNavigation(menuRef, Boolean(onSearch_), {\n menuId: id,\n })\n\n function onSelect(selection: Selection) {\n overlayTriggerContext.hide({ restoreFocus: selection.restoreFocus })\n\n onSelect_(selection)\n }\n\n function onSearch(e: React.ChangeEvent<HTMLInputElement>) {\n setSearch(e.target.value)\n\n onSearch_?.(e)\n }\n\n React.useEffect(\n function () {\n menuRef.current?.highlightFirst()\n },\n [menuRef, search]\n )\n\n function onKeyDown(e: React.KeyboardEvent<HTMLInputElement>) {\n // This is disconnected from the OverlayTrigger closing on Escape.\n // Closing a dropdown with Escape will not close a Modal, because stopP.\n // It is called only once because the menu component is unmounted.\n // The next Escape will propagate.\n if (e.key === 'Escape' || e.key === 'Esc') {\n // only let parent listeners (modal, overlay) know when empty\n e.stopPropagation()\n }\n }\n\n return (\n <StyledDropdownMenu ref={ref} shadowStrength={2}>\n <MenuImperative\n {...menuProps}\n ref={menuRef}\n onKeyDown={onKeyDown}\n onSelect={onSelect}\n role=\"menu\"\n >\n {onSearch_ && (\n <MenuImperative.Search\n {...menuNavigationTriggerProps}\n onChange={onSearch}\n i18nScope={i18nScope}\n />\n )}\n <MenuImperative.Options>{children}</MenuImperative.Options>\n {footer && <MenuImperative.Footer>{footer}</MenuImperative.Footer>}\n </MenuImperative>\n </StyledDropdownMenu>\n )\n }\n)\n\n/**\n\n Dropdowns display a list of actions in a menu that opens and closes. We use\n dropdowns most commonly to trigger an action or to redirect the user to\n a new page or modal.\n\n @since 10.19.0\n\n @see [Storybook](https://procore.github.io/core/core-react/latest/?path=/story/demos-dropdown--demo)\n\n @see [Design Guidelines](https://design.procore.com/dropdown)\n\n */\nconst Dropdown_ = React.forwardRef<HTMLButtonElement, DropdownProps>(\n function Dropdown(\n {\n afterHide: afterHide_,\n afterShow,\n beforeHide,\n beforeShow,\n children,\n error,\n footer,\n i18nScope = 'core.dropdown',\n icon,\n label,\n onKeyDown = noop,\n onSearch,\n onSelect = noop,\n placement = 'bottom-left',\n restoreFocusOnHide = false,\n variant = 'secondary',\n hasTabbableElements = false,\n ...props\n },\n ref\n ) {\n const menuRef = React.useRef<MenuRef>(null)\n const buttonRef = React.useRef<HTMLButtonElement>(null)\n const isDialog = Boolean(onSearch) || hasTabbableElements\n\n function afterHide(e: Event | undefined) {\n // @ts-expect-error\n if (e?.key === 'Escape' || e?.restoreFocus) {\n buttonRef.current?.focus()\n }\n\n afterHide_?.(e)\n\n onSearch?.({\n target: { value: '' },\n } as React.ChangeEvent<HTMLInputElement>)\n }\n\n const I18n = useI18nContext()\n\n const ariaLabel =\n props['aria-label'] ||\n label ||\n I18n.t(`core.dropdown.${props.loading ? 'loading' : 'moreOptions'}`)\n\n return (\n <OverlayTrigger\n role={isDialog ? 'dialog' : 'menu'}\n passA11yPropsToOverlay={!isDialog}\n autoFocus\n afterHide={afterHide}\n afterShow={afterShow}\n beforeHide={beforeHide}\n beforeShow={beforeShow}\n overlay={\n <DropdownMenu\n footer={footer}\n i18nScope={i18nScope}\n menuRef={menuRef}\n onSearch={onSearch}\n onSelect={onSelect}\n >\n {children}\n </DropdownMenu>\n }\n placement={placement}\n ref={mergeRefs(ref, buttonRef)}\n restoreFocusOnHide={restoreFocusOnHide}\n >\n <DropdownButton\n {...props}\n aria-label={ariaLabel}\n arrow={label !== undefined}\n focus={onSearch ? false : isOpen}\n icon={\n props.loading && !label ? undefined : !icon && !label ? (\n <EllipsisVertical />\n ) : (\n icon\n )\n }\n onKeyDown={onKeyDown}\n variant={variant}\n >\n {label}\n </DropdownButton>\n </OverlayTrigger>\n )\n }\n)\n\nexport const useDropdownContext = useOverlayTriggerContext\n\nexport function DropdownConsumer({ children }: ConsumerProps) {\n return children(useDropdownContext())\n}\n\nDropdown_.displayName = 'Dropdown'\n\nItem.displayName = 'Dropdown.Item'\n\nexport const Dropdown = addSubcomponents(\n {\n Item,\n Group: MenuImperative.Group,\n },\n Dropdown_\n)\n"],"mappings":"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"}
1
+ {"version":3,"file":"Dropdown.js","names":["CaretDown","CaretUp","EllipsisVertical","classNames","React","MenuImperative","useMenuImperativeControlNavigation","OverlayTrigger","useOverlayTriggerContext","useI18nContext","addSubcomponents","mergeRefs","StyledDropdownButton","StyledDropdownMenu","StyledDropdownSpinner","noop","isFunction","obj","isOpen","_ref","_ref$open","open","Item","forwardRef","_ref2","ref","_ref2$restoreFocus","restoreFocus","props","_objectWithoutProperties","_excluded","createElement","_extends","DropdownButton","_ref3","children","className","_ref3$arrow","arrow","_ref3$loading","loading","_ref3$open","_ref3$focus","focus","_ref3$variant","variant","_excluded2","caret","size","icon","undefined","iconRight","$loading","DropdownMenu","_ref4","footer","i18nScope","menuRef","onSearch_","onSearch","_ref4$onSelect","onSelect","onSelect_","id","overlayTriggerContext","_React$useState","useState","_React$useState2","_slicedToArray","search","setSearch","_useMenuImperativeCon","Boolean","menuId","menuProps","menuNavigationTriggerProps","selection","hide","e","target","value","useEffect","_menuRef$current","current","highlightFirst","onKeyDown","key","stopPropagation","shadowStrength","role","Search","onChange","Options","Footer","Dropdown_","Dropdown","_ref5","afterHide_","afterHide","afterShow","beforeHide","beforeShow","error","_ref5$i18nScope","label","_ref5$onKeyDown","_ref5$onSelect","_ref5$placement","placement","_ref5$restoreFocusOnH","restoreFocusOnHide","_ref5$variant","_ref5$hasTabbableElem","hasTabbableElements","_excluded3","useRef","buttonRef","isDialog","_buttonRef$current","I18n","ariaLabel","t","concat","passA11yPropsToOverlay","autoFocus","overlay","useDropdownContext","DropdownConsumer","_ref6","displayName","Group"],"sources":["../../src/Dropdown/Dropdown.tsx"],"sourcesContent":["import { CaretDown, CaretUp, EllipsisVertical } from '@procore/core-icons/dist'\nimport classNames from 'classnames'\nimport React from 'react'\nimport {\n MenuImperative,\n useMenuImperativeControlNavigation,\n} from '../MenuImperative/MenuImperative'\nimport type {\n MenuItemProps,\n MenuRef,\n Selection,\n} from '../MenuImperative/MenuImperative.types'\nimport {\n OverlayTrigger,\n useOverlayTriggerContext,\n} from '../OverlayTrigger/OverlayTrigger'\nimport { useI18nContext } from '../_hooks/I18n'\nimport { addSubcomponents } from '../_utils/addSubcomponents'\nimport { mergeRefs } from '../_utils/mergeRefs'\nimport {\n StyledDropdownButton,\n StyledDropdownMenu,\n StyledDropdownSpinner,\n} from './Dropdown.styles'\nimport type {\n ConsumerProps,\n DropdownButtonProps,\n DropdownMenuProps,\n DropdownProps,\n} from './Dropdown.types'\n\nfunction noop() {}\nfunction isFunction(obj: any) {\n return typeof obj === 'function'\n}\nfunction isOpen({ open = false }) {\n return open\n}\n\nconst Item = React.forwardRef<HTMLDivElement, MenuItemProps>(function Item(\n { restoreFocus = false, ...props },\n ref\n) {\n return (\n <MenuImperative.Item ref={ref} restoreFocus={restoreFocus} {...props} />\n )\n}) as typeof MenuImperative.Item\n\nexport const DropdownButton = React.forwardRef<\n HTMLButtonElement,\n DropdownButtonProps\n>(function DropdownButton(\n {\n children,\n className,\n arrow = false,\n loading = false,\n open = false,\n focus = false,\n variant = 'secondary',\n ...props\n },\n ref\n) {\n const caret =\n arrow && (open ? <CaretUp size=\"sm\" /> : <CaretDown size=\"sm\" />)\n\n const icon = loading ? (\n <StyledDropdownSpinner\n size=\"xs\"\n variant={variant === 'primary' ? 'light' : ''}\n />\n ) : (\n caret\n )\n\n return (\n <StyledDropdownButton\n {...props}\n className={classNames(className, {\n focus: isFunction(focus) ? (focus as Function)({ open }) : focus,\n })}\n aria-busy={loading || undefined}\n iconRight={icon}\n $loading={loading}\n variant={variant}\n ref={ref}\n >\n {children}\n </StyledDropdownButton>\n )\n})\n\nconst DropdownMenu = React.forwardRef<HTMLDivElement, DropdownMenuProps>(\n function DropdownMenu(\n {\n children,\n footer,\n i18nScope,\n menuRef,\n onSearch: onSearch_,\n onSelect: onSelect_ = noop,\n id,\n },\n ref\n ) {\n const overlayTriggerContext = useOverlayTriggerContext()\n\n const [search, setSearch] = React.useState('')\n const { menuProps, menuNavigationTriggerProps } =\n useMenuImperativeControlNavigation(menuRef, Boolean(onSearch_), {\n menuId: id,\n })\n\n function onSelect(selection: Selection) {\n overlayTriggerContext.hide({ restoreFocus: selection.restoreFocus })\n\n onSelect_(selection)\n }\n\n function onSearch(e: React.ChangeEvent<HTMLInputElement>) {\n setSearch(e.target.value)\n\n onSearch_?.(e)\n }\n\n React.useEffect(\n function () {\n menuRef.current?.highlightFirst()\n },\n [menuRef, search]\n )\n\n function onKeyDown(e: React.KeyboardEvent<HTMLInputElement>) {\n // This is disconnected from the OverlayTrigger closing on Escape.\n // Closing a dropdown with Escape will not close a Modal, because stopP.\n // It is called only once because the menu component is unmounted.\n // The next Escape will propagate.\n if (e.key === 'Escape' || e.key === 'Esc') {\n // only let parent listeners (modal, overlay) know when empty\n e.stopPropagation()\n }\n }\n\n return (\n <StyledDropdownMenu ref={ref} shadowStrength={2}>\n <MenuImperative\n {...menuProps}\n ref={menuRef}\n onKeyDown={onKeyDown}\n onSelect={onSelect}\n role=\"menu\"\n >\n {onSearch_ && (\n <MenuImperative.Search\n {...menuNavigationTriggerProps}\n onChange={onSearch}\n i18nScope={i18nScope}\n />\n )}\n <MenuImperative.Options>{children}</MenuImperative.Options>\n {footer && <MenuImperative.Footer>{footer}</MenuImperative.Footer>}\n </MenuImperative>\n </StyledDropdownMenu>\n )\n }\n)\n\n/**\n\n Dropdowns display a list of actions in a menu that opens and closes. We use\n dropdowns most commonly to trigger an action or to redirect the user to\n a new page or modal.\n\n @since 10.19.0\n\n @see [Storybook](https://procore.github.io/core/core-react/latest/?path=/story/demos-dropdown--demo)\n\n @see [Design Guidelines](https://design.procore.com/dropdown)\n\n */\nconst Dropdown_ = React.forwardRef<HTMLButtonElement, DropdownProps>(\n function Dropdown(\n {\n afterHide: afterHide_,\n afterShow,\n beforeHide,\n beforeShow,\n children,\n error,\n footer,\n i18nScope = 'core.dropdown',\n icon,\n label,\n onKeyDown = noop,\n onSearch,\n onSelect = noop,\n placement = 'bottom-left',\n restoreFocusOnHide = false,\n variant = 'secondary',\n hasTabbableElements = false,\n ...props\n },\n ref\n ) {\n const menuRef = React.useRef<MenuRef>(null)\n const buttonRef = React.useRef<HTMLButtonElement>(null)\n const isDialog = Boolean(onSearch) || hasTabbableElements\n\n function afterHide(e: Event | undefined) {\n // @ts-expect-error\n if (e?.key === 'Escape' || e?.restoreFocus) {\n buttonRef.current?.focus()\n }\n\n afterHide_?.(e)\n\n onSearch?.({\n target: { value: '' },\n } as React.ChangeEvent<HTMLInputElement>)\n }\n\n const I18n = useI18nContext()\n\n const ariaLabel =\n props['aria-label'] ||\n label ||\n I18n.t(`core.dropdown.${props.loading ? 'loading' : 'moreOptions'}`)\n\n return (\n <OverlayTrigger\n role={isDialog ? 'dialog' : 'menu'}\n passA11yPropsToOverlay={!isDialog}\n autoFocus\n afterHide={afterHide}\n afterShow={afterShow}\n beforeHide={beforeHide}\n beforeShow={beforeShow}\n overlay={\n <DropdownMenu\n footer={footer}\n i18nScope={i18nScope}\n menuRef={menuRef}\n onSearch={onSearch}\n onSelect={onSelect}\n >\n {children}\n </DropdownMenu>\n }\n placement={placement}\n ref={mergeRefs(ref, buttonRef)}\n restoreFocusOnHide={restoreFocusOnHide}\n >\n <DropdownButton\n {...props}\n aria-label={ariaLabel}\n arrow={label !== undefined}\n focus={onSearch ? false : isOpen}\n icon={\n props.loading && !label ? undefined : !icon && !label ? (\n <EllipsisVertical />\n ) : (\n icon\n )\n }\n onKeyDown={onKeyDown}\n variant={variant}\n >\n {label}\n </DropdownButton>\n </OverlayTrigger>\n )\n }\n)\n\nexport const useDropdownContext = useOverlayTriggerContext\n\nexport function DropdownConsumer({ children }: ConsumerProps) {\n return children(useDropdownContext())\n}\n\nDropdown_.displayName = 'Dropdown'\n\nItem.displayName = 'Dropdown.Item'\n\nexport const Dropdown = addSubcomponents(\n {\n Item,\n Group: MenuImperative.Group,\n },\n Dropdown_\n)\n"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  /// <reference types="react" />
2
- import { ButtonVariant } from '../Button/Button.types';
2
+ import type { ButtonVariant } from '../Button/Button.types';
3
3
  export declare const StyledDropdownMenu: import("styled-components").StyledComponent<import("react").ForwardRefExoticComponent<import("../_utils/types").DivAttributes & import("..").CardProps & import("react").RefAttributes<HTMLDivElement>>, any, {}, never>;
4
4
  export declare const StyledDropdownSpinner: import("styled-components").StyledComponent<import("react").ForwardRefExoticComponent<import("..").SpinnerProps & import("react").RefAttributes<HTMLDivElement>>, any, {}, never>;
5
5
  export declare const StyledDropdownButton: import("styled-components").StyledComponent<import("react").ForwardRefExoticComponent<import("../Button/Button.types").ButtonProps & import("react").RefAttributes<HTMLButtonElement>>, any, {
@@ -5,15 +5,15 @@ import { Card } from '../Card/Card';
5
5
  import { Spinner } from '../Spinner/Spinner';
6
6
  export var StyledDropdownMenu = /*#__PURE__*/styled(Card).withConfig({
7
7
  displayName: "StyledDropdownMenu",
8
- componentId: "core-11_24_1__sc-ufsy2q-0"
8
+ componentId: "core-11_24_3__sc-ufsy2q-0"
9
9
  })(["display:flex;max-height:40vh;max-width:248px;min-width:inherit;"]);
10
10
  export var StyledDropdownSpinner = /*#__PURE__*/styled(Spinner).withConfig({
11
11
  displayName: "StyledDropdownSpinner",
12
- componentId: "core-11_24_1__sc-ufsy2q-1"
12
+ componentId: "core-11_24_3__sc-ufsy2q-1"
13
13
  })(["margin:0 6px;"]);
14
14
  export var StyledDropdownButton = /*#__PURE__*/styled(Button).withConfig({
15
15
  displayName: "StyledDropdownButton",
16
- componentId: "core-11_24_1__sc-ufsy2q-2"
16
+ componentId: "core-11_24_3__sc-ufsy2q-2"
17
17
  })(["pointer-events:", ";", ""], function (_ref) {
18
18
  var disabled = _ref.disabled,
19
19
  $loading = _ref.$loading;
@@ -1 +1 @@
1
- {"version":3,"file":"Dropdown.styles.js","names":["styled","css","Button","getBGColor","Card","Spinner","StyledDropdownMenu","withConfig","displayName","componentId","StyledDropdownSpinner","StyledDropdownButton","_ref","disabled","$loading","_ref2","variant","hover"],"sources":["../../src/Dropdown/Dropdown.styles.tsx"],"sourcesContent":["import styled, { css } from 'styled-components'\nimport { Button } from '../Button/Button'\nimport { getBGColor } from '../Button/Button.styles'\nimport { ButtonVariant } from '../Button/Button.types'\nimport { Card } from '../Card/Card'\nimport { Spinner } from '../Spinner/Spinner'\n\nexport const StyledDropdownMenu = styled(Card)`\n display: flex;\n max-height: 40vh;\n max-width: 248px;\n min-width: inherit;\n`\n\nexport const StyledDropdownSpinner = styled(Spinner)`\n margin: 0 6px; // TODO one-off\n`\n\nexport const StyledDropdownButton = styled(Button)<{\n $loading: boolean\n variant: ButtonVariant\n}>`\n pointer-events: ${({ disabled, $loading }) =>\n disabled || $loading ? 'none' : 'inherit'};\n\n ${({ $loading, variant }) => {\n if ($loading) {\n return css`\n background: ${getBGColor(variant).hover};\n `\n }\n }}\n`\n"],"mappings":"AAAA,OAAOA,MAAM,IAAIC,GAAG,QAAQ,mBAAmB;AAC/C,SAASC,MAAM,QAAQ,kBAAkB;AACzC,SAASC,UAAU,QAAQ,yBAAyB;AAEpD,SAASC,IAAI,QAAQ,cAAc;AACnC,SAASC,OAAO,QAAQ,oBAAoB;AAE5C,OAAO,IAAMC,kBAAkB,gBAAGN,MAAM,CAACI,IAAI,CAAC,CAAAG,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,uEAK7C;AAED,OAAO,IAAMC,qBAAqB,gBAAGV,MAAM,CAACK,OAAO,CAAC,CAAAE,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,qBAEnD;AAED,OAAO,IAAME,oBAAoB,gBAAGX,MAAM,CAACE,MAAM,CAAC,CAAAK,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,iCAI9B,UAAAG,IAAA;EAAA,IAAGC,QAAQ,GAAAD,IAAA,CAARC,QAAQ;IAAEC,QAAQ,GAAAF,IAAA,CAARE,QAAQ;EAAA,OACrCD,QAAQ,IAAIC,QAAQ,GAAG,MAAM,GAAG,SAAS;AAAA,GAEzC,UAAAC,KAAA,EAA2B;EAAA,IAAxBD,QAAQ,GAAAC,KAAA,CAARD,QAAQ;IAAEE,OAAO,GAAAD,KAAA,CAAPC,OAAO;EACpB,IAAIF,QAAQ,EAAE;IACZ,OAAOb,GAAG,uBACME,UAAU,CAACa,OAAO,CAAC,CAACC,KAAK;EAE3C;AACF,CAAC,CACF"}
1
+ {"version":3,"file":"Dropdown.styles.js","names":["styled","css","Button","getBGColor","Card","Spinner","StyledDropdownMenu","withConfig","displayName","componentId","StyledDropdownSpinner","StyledDropdownButton","_ref","disabled","$loading","_ref2","variant","hover"],"sources":["../../src/Dropdown/Dropdown.styles.tsx"],"sourcesContent":["import styled, { css } from 'styled-components'\nimport { Button } from '../Button/Button'\nimport { getBGColor } from '../Button/Button.styles'\nimport type { ButtonVariant } from '../Button/Button.types'\nimport { Card } from '../Card/Card'\nimport { Spinner } from '../Spinner/Spinner'\n\nexport const StyledDropdownMenu = styled(Card)`\n display: flex;\n max-height: 40vh;\n max-width: 248px;\n min-width: inherit;\n`\n\nexport const StyledDropdownSpinner = styled(Spinner)`\n margin: 0 6px; // TODO one-off\n`\n\nexport const StyledDropdownButton = styled(Button)<{\n $loading: boolean\n variant: ButtonVariant\n}>`\n pointer-events: ${({ disabled, $loading }) =>\n disabled || $loading ? 'none' : 'inherit'};\n\n ${({ $loading, variant }) => {\n if ($loading) {\n return css`\n background: ${getBGColor(variant).hover};\n `\n }\n }}\n`\n"],"mappings":"AAAA,OAAOA,MAAM,IAAIC,GAAG,QAAQ,mBAAmB;AAC/C,SAASC,MAAM,QAAQ,kBAAkB;AACzC,SAASC,UAAU,QAAQ,yBAAyB;AAEpD,SAASC,IAAI,QAAQ,cAAc;AACnC,SAASC,OAAO,QAAQ,oBAAoB;AAE5C,OAAO,IAAMC,kBAAkB,gBAAGN,MAAM,CAACI,IAAI,CAAC,CAAAG,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,uEAK7C;AAED,OAAO,IAAMC,qBAAqB,gBAAGV,MAAM,CAACK,OAAO,CAAC,CAAAE,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,qBAEnD;AAED,OAAO,IAAME,oBAAoB,gBAAGX,MAAM,CAACE,MAAM,CAAC,CAAAK,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,iCAI9B,UAAAG,IAAA;EAAA,IAAGC,QAAQ,GAAAD,IAAA,CAARC,QAAQ;IAAEC,QAAQ,GAAAF,IAAA,CAARE,QAAQ;EAAA,OACrCD,QAAQ,IAAIC,QAAQ,GAAG,MAAM,GAAG,SAAS;AAAA,GAEzC,UAAAC,KAAA,EAA2B;EAAA,IAAxBD,QAAQ,GAAAC,KAAA,CAARD,QAAQ;IAAEE,OAAO,GAAAD,KAAA,CAAPC,OAAO;EACpB,IAAIF,QAAQ,EAAE;IACZ,OAAOb,GAAG,uBACME,UAAU,CAACa,OAAO,CAAC,CAACC,KAAK;EAE3C;AACF,CAAC,CACF"}
@@ -1,8 +1,8 @@
1
1
  /// <reference types="react" />
2
- import { ButtonProps } from '../Button/Button.types';
3
- import { MenuRef, Selection } from '../MenuImperative/MenuImperative.types';
4
- import { OverlayTriggerProps } from '../OverlayTrigger/OverlayTrigger.types';
5
- import { Placement } from '../_utils/types';
2
+ import type { ButtonProps } from '../Button/Button.types';
3
+ import type { MenuRef, Selection } from '../MenuImperative/MenuImperative.types';
4
+ import type { OverlayTriggerProps } from '../OverlayTrigger/OverlayTrigger.types';
5
+ import type { Placement } from '../_utils/types';
6
6
  declare type HTMLButtonProps = React.ComponentPropsWithoutRef<'button'>;
7
7
  declare type HTMLDivProps = React.ComponentPropsWithoutRef<'div'>;
8
8
  export declare type DropdownPlacement = Extract<Placement, 'bottom' | 'bottom-left' | 'bottom-right' | 'top' | 'top-left' | 'top-right'>;
@@ -1 +1 @@
1
- {"version":3,"file":"Dropdown.types.js","names":[],"sources":["../../src/Dropdown/Dropdown.types.ts"],"sourcesContent":["import { ButtonProps } from '../Button/Button.types'\nimport { MenuRef, Selection } from '../MenuImperative/MenuImperative.types'\nimport { OverlayTriggerProps } from '../OverlayTrigger/OverlayTrigger.types'\nimport { Placement } from '../_utils/types'\n\ntype HTMLButtonProps = React.ComponentPropsWithoutRef<'button'>\n\ntype HTMLDivProps = React.ComponentPropsWithoutRef<'div'>\n\nexport type DropdownPlacement = Extract<\n Placement,\n 'bottom' | 'bottom-left' | 'bottom-right' | 'top' | 'top-left' | 'top-right'\n>\n\nexport interface DropdownProps extends Omit<HTMLButtonProps, 'onSelect'> {\n /**\n * @since 10.19.0\n */\n afterHide?: OverlayTriggerProps['afterHide']\n /**\n * @since 10.19.0\n */\n afterShow?: OverlayTriggerProps['afterShow']\n /**\n * @since 10.19.0\n */\n beforeHide?: OverlayTriggerProps['beforeHide']\n /**\n * @since 10.19.0\n */\n beforeShow?: OverlayTriggerProps['beforeShow']\n /**\n * @since 10.19.0\n */\n block?: ButtonProps['block']\n /**\n * @since 10.19.0\n */\n className?: ButtonProps['className']\n /**\n * @since 10.19.0\n */\n disabled?: ButtonProps['disabled']\n /**\n * @since 10.19.0\n */\n error?: boolean\n\n /**\n * Content to render in a footer.\n * @since 10.19.0\n */\n footer?: React.ReactNode\n /**\n * The i18n key to use for the dropdowns's configurable strings.\n * Defaults to using the core library's default strings.\n * @since 10.19.0\n */\n i18nScope?: string\n /**\n * @remarks string icons have been deprecated, please pass a component from `@procore/core-icons`\n * @since 10.19.0\n */\n icon?: ButtonProps['icon']\n /**\n * The button text.\n * @since 10.19.0\n */\n label?: string\n /**\n * @since 10.19.0\n */\n loading?: ButtonProps['loading']\n\n /**\n * Adds a search bar to the dropdown.\n * @since 10.19.0\n */\n onSearch?: (event: React.ChangeEvent<HTMLInputElement>) => void\n\n /**\n * <div>\n * <div>Callback for selecting an item from the menu\n * <CodeBlock>\n * { '({ event: ReactEvent, item: Menu.Item.props.item, group: bool }) => void' }\n * </CodeBlock>\n * </div>\n * <div>\n * <Code>item</Code> will be the <Code>item</Code> prop supplied to the{' '}\n * <Code>Item</Code> component\n * </div>\n * </div>\n * @since 10.19.0\n */\n onSelect?: (selection: Selection) => void\n\n /**\n * The placement of the overlay.\n * @default 'bottom-left'\n * @since 10.19.0\n */\n placement?: DropdownPlacement\n /**\n * If focus should return to the button after selection.\n * @ally Dropdowns hold no value and take an action. Focus is expected\n * to be moved from a Dropdown to something else, to continue the user flow .\n * If all actions are inert and does not move focus, set this to `true`.\n * If some actions are inert consider using `restoreFocus` on `Dropdown.Item`.\n * Closing Dropdown via `Escape` always restores focus.\n * @default false\n * @since 11.13.0\n */\n restoreFocusOnHide?: OverlayTriggerProps['restoreFocusOnHide']\n /**\n * The button size\n * @default 'md'\n * @since 10.19.0\n */\n size?: ButtonProps['size']\n /**\n * @since 10.19.0\n */\n trigger?: OverlayTriggerProps['trigger']\n /**\n * @since 10.19.0\n */\n type?: ButtonProps['type']\n\n /**\n * @default 'secondary'\n * @since 10.19.0\n */\n variant?: ButtonProps['variant']\n /**\n * Whether to act as modal dialog.\n * Should be used when Dropdown has tabbable elements (e.g. buttons in footer).\n * @default 'false'\n * @since 11.5.0\n */\n hasTabbableElements?: boolean\n}\n\nexport interface DropdownButtonProps extends ButtonProps {\n /**\n * Shows the arrow when activated\n * @since 10.19.0\n */\n arrow?: boolean\n /**\n * Shows the button spinner\n * @since 10.19.0\n */\n loading?: boolean\n /**\n * Changes the direction of the arrow if shown\n * @since 10.19.0\n */\n open?: boolean\n /**\n * @since 11.9.0\n * If the component should apply a focus appeareance. This is\n * not DOM focus management, and purely visual.\n */\n focus?: boolean | ((obj: { open: boolean }) => boolean)\n}\n\nexport interface DropdownMenuProps extends Omit<HTMLDivProps, 'onSelect'> {\n /**\n * @since 10.19.0\n */\n footer?: React.ReactNode\n /**\n * @since 10.19.0\n */\n menuRef: React.RefObject<MenuRef>\n /**\n * @since 10.19.0\n */\n i18nScope?: string\n /**\n * @since 10.19.0\n */\n onSearch?: (event: React.ChangeEvent<HTMLInputElement>) => void\n /**\n * @since 10.19.0\n */\n onSelect?: (selection: Selection) => void\n}\n\nexport interface ConsumerProps {\n /**\n * @since 10.19.0\n */\n children: (api: any) => JSX.Element\n}\n"],"mappings":""}
1
+ {"version":3,"file":"Dropdown.types.js","names":[],"sources":["../../src/Dropdown/Dropdown.types.ts"],"sourcesContent":["import type { ButtonProps } from '../Button/Button.types'\nimport type { MenuRef, Selection } from '../MenuImperative/MenuImperative.types'\nimport type { OverlayTriggerProps } from '../OverlayTrigger/OverlayTrigger.types'\nimport type { Placement } from '../_utils/types'\n\ntype HTMLButtonProps = React.ComponentPropsWithoutRef<'button'>\n\ntype HTMLDivProps = React.ComponentPropsWithoutRef<'div'>\n\nexport type DropdownPlacement = Extract<\n Placement,\n 'bottom' | 'bottom-left' | 'bottom-right' | 'top' | 'top-left' | 'top-right'\n>\n\nexport interface DropdownProps extends Omit<HTMLButtonProps, 'onSelect'> {\n /**\n * @since 10.19.0\n */\n afterHide?: OverlayTriggerProps['afterHide']\n /**\n * @since 10.19.0\n */\n afterShow?: OverlayTriggerProps['afterShow']\n /**\n * @since 10.19.0\n */\n beforeHide?: OverlayTriggerProps['beforeHide']\n /**\n * @since 10.19.0\n */\n beforeShow?: OverlayTriggerProps['beforeShow']\n /**\n * @since 10.19.0\n */\n block?: ButtonProps['block']\n /**\n * @since 10.19.0\n */\n className?: ButtonProps['className']\n /**\n * @since 10.19.0\n */\n disabled?: ButtonProps['disabled']\n /**\n * @since 10.19.0\n */\n error?: boolean\n\n /**\n * Content to render in a footer.\n * @since 10.19.0\n */\n footer?: React.ReactNode\n /**\n * The i18n key to use for the dropdowns's configurable strings.\n * Defaults to using the core library's default strings.\n * @since 10.19.0\n */\n i18nScope?: string\n /**\n * @remarks string icons have been deprecated, please pass a component from `@procore/core-icons`\n * @since 10.19.0\n */\n icon?: ButtonProps['icon']\n /**\n * The button text.\n * @since 10.19.0\n */\n label?: string\n /**\n * @since 10.19.0\n */\n loading?: ButtonProps['loading']\n\n /**\n * Adds a search bar to the dropdown.\n * @since 10.19.0\n */\n onSearch?: (event: React.ChangeEvent<HTMLInputElement>) => void\n\n /**\n * <div>\n * <div>Callback for selecting an item from the menu\n * <CodeBlock>\n * { '({ event: ReactEvent, item: Menu.Item.props.item, group: bool }) => void' }\n * </CodeBlock>\n * </div>\n * <div>\n * <Code>item</Code> will be the <Code>item</Code> prop supplied to the{' '}\n * <Code>Item</Code> component\n * </div>\n * </div>\n * @since 10.19.0\n */\n onSelect?: (selection: Selection) => void\n\n /**\n * The placement of the overlay.\n * @default 'bottom-left'\n * @since 10.19.0\n */\n placement?: DropdownPlacement\n /**\n * If focus should return to the button after selection.\n * @ally Dropdowns hold no value and take an action. Focus is expected\n * to be moved from a Dropdown to something else, to continue the user flow .\n * If all actions are inert and does not move focus, set this to `true`.\n * If some actions are inert consider using `restoreFocus` on `Dropdown.Item`.\n * Closing Dropdown via `Escape` always restores focus.\n * @default false\n * @since 11.13.0\n */\n restoreFocusOnHide?: OverlayTriggerProps['restoreFocusOnHide']\n /**\n * The button size\n * @default 'md'\n * @since 10.19.0\n */\n size?: ButtonProps['size']\n /**\n * @since 10.19.0\n */\n trigger?: OverlayTriggerProps['trigger']\n /**\n * @since 10.19.0\n */\n type?: ButtonProps['type']\n\n /**\n * @default 'secondary'\n * @since 10.19.0\n */\n variant?: ButtonProps['variant']\n /**\n * Whether to act as modal dialog.\n * Should be used when Dropdown has tabbable elements (e.g. buttons in footer).\n * @default 'false'\n * @since 11.5.0\n */\n hasTabbableElements?: boolean\n}\n\nexport interface DropdownButtonProps extends ButtonProps {\n /**\n * Shows the arrow when activated\n * @since 10.19.0\n */\n arrow?: boolean\n /**\n * Shows the button spinner\n * @since 10.19.0\n */\n loading?: boolean\n /**\n * Changes the direction of the arrow if shown\n * @since 10.19.0\n */\n open?: boolean\n /**\n * @since 11.9.0\n * If the component should apply a focus appeareance. This is\n * not DOM focus management, and purely visual.\n */\n focus?: boolean | ((obj: { open: boolean }) => boolean)\n}\n\nexport interface DropdownMenuProps extends Omit<HTMLDivProps, 'onSelect'> {\n /**\n * @since 10.19.0\n */\n footer?: React.ReactNode\n /**\n * @since 10.19.0\n */\n menuRef: React.RefObject<MenuRef>\n /**\n * @since 10.19.0\n */\n i18nScope?: string\n /**\n * @since 10.19.0\n */\n onSearch?: (event: React.ChangeEvent<HTMLInputElement>) => void\n /**\n * @since 10.19.0\n */\n onSelect?: (selection: Selection) => void\n}\n\nexport interface ConsumerProps {\n /**\n * @since 10.19.0\n */\n children: (api: any) => JSX.Element\n}\n"],"mappings":""}
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { DropdownFlyoutProps, FlyoutCaptionProps, FlyoutItemProps, FlyoutListProps } from './DropdownFlyout.types';
2
+ import type { DropdownFlyoutProps, FlyoutCaptionProps, FlyoutItemProps, FlyoutListProps } from './DropdownFlyout.types';
3
3
  export declare const FlyoutCaption: React.ForwardRefExoticComponent<FlyoutCaptionProps & React.RefAttributes<HTMLDivElement>>;
4
4
  export declare function FlyoutItem({ option }: FlyoutItemProps): JSX.Element;
5
5
  export declare function FlyoutList({ options, placement, referenceEl, overlayRef: overlayElRef, offset, }: FlyoutListProps): JSX.Element;
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { DropdownFlyoutProps, DropdownOption, FlyoutOption } from './DropdownFlyout.types';
2
+ import type { DropdownFlyoutProps, DropdownOption, FlyoutOption } from './DropdownFlyout.types';
3
3
  export declare function noop(): void;
4
4
  export declare function returnFalse(): boolean;
5
5
  export declare function hasChildren(option: DropdownOption): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"DropdownFlyout.helpers.js","names":["React","ulid","StyledDropdownFlyoutExpandIcon","StyledDropdownFlyoutLabel","rootId","noop","returnFalse","getFirst","arr","isRootOption","optionId","hasChildren","option","Array","isArray","children","reducer","state","action","type","_objectSpread","highlighted","expanded","concat","_toConsumableArray","collectParentIds","options","id","isOpen","isMouseOver","isFocused","findById","initialValue","arguments","length","undefined","reduce","result","current","transformOption","parentId","acc","updatedOption","origin","useDropdownFlyout","_ref","flyoutOptions","_ref$onClick","onClick","_onClick","_onKeyDown","onKeyDown","_React$useReducer","useReducer","_React$useReducer2","_slicedToArray","_React$useReducer2$","dispatch","setMouseOver","useCallback","setFocused","isExpanded","includes","isHighlighted","parentIds","isCorrectId","some","findOptionById","expand","collapse","highlight","traversingHighlight","item","tier","optionIndex","findIndex","nextIndex","prevIndex","parentOption","closeDropdown","closeSelectedDropdown","e","composedPath","node","_dataset","dataset","flyout","openDropdown","key","preventDefault","_e$stopPropagation","stopPropagation","call","_e$stopPropagation2","defaultOptionRenderer","createElement","Fragment","label","DropdownFlyoutContext","createContext","optionRenderer","useDropdownFlyoutContext","useContext"],"sources":["../../src/DropdownFlyout/DropdownFlyout.helpers.tsx"],"sourcesContent":["import React from 'react'\nimport { ulid } from 'ulid'\nimport {\n StyledDropdownFlyoutExpandIcon,\n StyledDropdownFlyoutLabel,\n} from './DropdownFlyout.styles'\nimport {\n Action,\n DropdownFlyoutProps,\n DropdownOption,\n FlyoutOption,\n FlyoutOptionId,\n rootId,\n State,\n} from './DropdownFlyout.types'\n\nexport function noop() {}\n\nexport function returnFalse() {\n return false\n}\n\nfunction getFirst<T extends any>(arr: T[]) {\n return arr[0]\n}\nfunction isRootOption(optionId: FlyoutOptionId) {\n return optionId === rootId\n}\n\nexport function hasChildren(option: DropdownOption) {\n return Array.isArray(option.children)\n}\n\nfunction reducer(state: State, action: Action): State {\n switch (action.type) {\n case 'highlight':\n return {\n ...state,\n highlighted: action.option,\n }\n case 'expand':\n return {\n ...state,\n highlighted: action.option,\n expanded: [\n ...collectParentIds(state.options, action.option.id),\n action.option.id,\n ],\n }\n case 'collapse':\n return {\n ...state,\n highlighted: action.option,\n expanded: collectParentIds(state.options, action.option.id),\n }\n case 'close':\n return {\n ...state,\n expanded: [],\n highlighted: getFirst(state.options),\n isOpen: false,\n }\n case 'open':\n return {\n ...state,\n isOpen: true,\n }\n case 'setMouseOver':\n return {\n ...state,\n isMouseOver: action.isMouseOver,\n }\n case 'setFocused':\n return {\n ...state,\n isFocused: action.isFocused,\n }\n default:\n return state\n }\n}\n\nfunction findById(\n options: FlyoutOption[],\n optionId: FlyoutOption['id'],\n initialValue: FlyoutOption = getFirst(options)\n): FlyoutOption {\n return options.reduce((result, current) => {\n if (current.id === optionId) {\n return current\n }\n\n if (current.children) {\n return findById(current.children, optionId, result)\n }\n\n return result\n }, initialValue)\n}\n\nexport function transformOption(\n options: DropdownOption[],\n parentId: FlyoutOption['parentId']\n): FlyoutOption[] {\n return options.reduce<FlyoutOption[]>((acc, option) => {\n const id = ulid()\n const updatedOption = {\n id,\n parentId,\n origin: option,\n ...(Array.isArray(option.children) && {\n children: transformOption(option.children, id),\n }),\n }\n\n return [...acc, updatedOption]\n }, [])\n}\n\nfunction collectParentIds(\n options: FlyoutOption[],\n optionId: FlyoutOption['id']\n): FlyoutOption['id'][] {\n const option = findById(options, optionId)\n\n if (!isRootOption(option.parentId)) {\n return [...collectParentIds(options, option.parentId), option.parentId]\n }\n return [option.parentId]\n}\n\nexport function useDropdownFlyout({\n flyoutOptions,\n onClick: _onClick = noop,\n onKeyDown: _onKeyDown,\n}: Pick<DropdownFlyoutProps, 'onClick' | 'onKeyDown'> & {\n flyoutOptions: FlyoutOption[]\n}) {\n const [\n { options, expanded, highlighted, isOpen, isMouseOver, isFocused },\n dispatch,\n ] = React.useReducer(reducer, {\n options: flyoutOptions,\n expanded: [],\n highlighted: getFirst(flyoutOptions),\n isMouseOver: false,\n isFocused: false,\n isOpen: false,\n })\n\n const setMouseOver = React.useCallback(\n (isMouseOver: boolean) => dispatch({ type: 'setMouseOver', isMouseOver }),\n []\n )\n\n const setFocused = React.useCallback(\n (isFocused: boolean) => dispatch({ type: 'setFocused', isFocused }),\n []\n )\n\n const isExpanded = (option: FlyoutOption) => expanded.includes(option.id)\n\n const isHighlighted = (option: FlyoutOption): boolean => {\n const parentIds = collectParentIds(options, highlighted.id)\n const isCorrectId =\n option.id === highlighted.id || parentIds.some((id) => id === option.id)\n return (isMouseOver || isFocused) && isCorrectId\n }\n\n const findOptionById = React.useCallback(\n (id: FlyoutOptionId) => findById(options, id),\n [options]\n )\n\n const expand = React.useCallback(\n (option: FlyoutOption) =>\n dispatch({\n type: 'expand',\n option,\n }),\n []\n )\n\n const collapse = React.useCallback(\n (option: FlyoutOption) =>\n dispatch({\n type: 'collapse',\n option,\n }),\n []\n )\n\n const highlight = React.useCallback(\n (option: FlyoutOption) =>\n dispatch({\n type: 'highlight',\n option,\n }),\n []\n )\n\n const traversingHighlight = React.useCallback(\n (item: 'next' | 'prev' | 'children' | 'parent') => {\n const tier = isRootOption(highlighted.parentId)\n ? options\n : findOptionById(highlighted.parentId).children || []\n const optionIndex = tier.findIndex((item) => item.id === highlighted.id)\n\n switch (item) {\n case 'next':\n const nextIndex = optionIndex + 1 >= tier.length ? 0 : optionIndex + 1\n\n highlight(tier[nextIndex])\n break\n case 'prev':\n const prevIndex =\n optionIndex - 1 < 0 ? tier.length - 1 : optionIndex - 1\n\n highlight(tier[prevIndex])\n break\n case 'children':\n if (Array.isArray(highlighted.children)) {\n expand(highlighted)\n\n highlight(getFirst(highlighted.children))\n }\n break\n case 'parent':\n if (!isRootOption(highlighted.parentId)) {\n const parentOption = findOptionById(highlighted.parentId)\n collapse(parentOption)\n }\n break\n default:\n return\n }\n },\n [options, findOptionById, collapse, highlighted, expand, highlight]\n )\n\n const closeDropdown = React.useCallback(() => {\n dispatch({ type: 'close' })\n }, [])\n\n const closeSelectedDropdown = React.useCallback(\n (e: Event | React.FocusEvent) => {\n if (\n e &&\n e.type === 'click' &&\n !(e as MouseEvent)\n .composedPath()\n .some((node) => (node as HTMLElement).dataset?.flyout)\n ) {\n dispatch({ type: 'close' })\n }\n },\n []\n )\n\n const openDropdown = React.useCallback(() => {\n dispatch({ type: 'open' })\n }, [])\n\n const onClick = React.useCallback(\n (option: FlyoutOption) => {\n if (!hasChildren(option.origin)) {\n _onClick(option.origin)\n closeDropdown()\n }\n },\n [_onClick, closeDropdown]\n )\n\n const onKeyDown = React.useCallback(\n (e: React.KeyboardEvent<HTMLDivElement>) => {\n const { key } = e\n\n switch (key) {\n case 'Enter':\n e.preventDefault()\n if (!isOpen && isFocused) {\n openDropdown()\n } else {\n if (hasChildren(highlighted.origin)) {\n traversingHighlight('children')\n } else {\n onClick(highlighted)\n }\n }\n break\n case 'Escape':\n case 'Esc':\n e.preventDefault()\n if (isRootOption(highlighted.parentId)) {\n if (isOpen) {\n e.stopPropagation?.()\n }\n closeDropdown()\n } else {\n e.stopPropagation?.()\n traversingHighlight('parent')\n }\n break\n case 'ArrowDown':\n case 'Down':\n e.preventDefault()\n traversingHighlight('next')\n break\n case 'ArrowUp':\n case 'Up':\n e.preventDefault()\n traversingHighlight('prev')\n break\n }\n _onKeyDown?.(e)\n },\n [\n closeDropdown,\n openDropdown,\n traversingHighlight,\n highlighted,\n isOpen,\n isFocused,\n onClick,\n _onKeyDown,\n ]\n )\n\n return {\n isFocused,\n isMouseOver,\n isOpen,\n options,\n expanded,\n highlighted,\n expand,\n collapse,\n isHighlighted,\n isExpanded,\n closeDropdown,\n closeSelectedDropdown,\n openDropdown,\n onKeyDown,\n onClick,\n setMouseOver,\n setFocused,\n }\n}\n\nexport function defaultOptionRenderer(option: DropdownOption) {\n return (\n <>\n <StyledDropdownFlyoutLabel>{option.label}</StyledDropdownFlyoutLabel>\n {hasChildren(option) && (\n <StyledDropdownFlyoutExpandIcon data-qa=\"core-dropdown-flyout-option-expand-icon\" />\n )}\n </>\n )\n}\n\nexport const DropdownFlyoutContext = React.createContext<{\n onClick: (option: FlyoutOption) => void\n\n expand: (option: FlyoutOption) => void\n collapse: (option: FlyoutOption) => void\n optionRenderer: (option: DropdownOption) => React.ReactNode\n\n isExpanded: (option: FlyoutOption) => boolean\n isHighlighted: (option: FlyoutOption) => boolean\n}>({\n onClick: noop,\n\n expand: noop,\n collapse: noop,\n optionRenderer: defaultOptionRenderer,\n\n isExpanded: returnFalse,\n isHighlighted: returnFalse,\n})\n\nexport const useDropdownFlyoutContext = () =>\n React.useContext(DropdownFlyoutContext)\n"],"mappings":"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"}
1
+ {"version":3,"file":"DropdownFlyout.helpers.js","names":["React","ulid","StyledDropdownFlyoutExpandIcon","StyledDropdownFlyoutLabel","rootId","noop","returnFalse","getFirst","arr","isRootOption","optionId","hasChildren","option","Array","isArray","children","reducer","state","action","type","_objectSpread","highlighted","expanded","concat","_toConsumableArray","collectParentIds","options","id","isOpen","isMouseOver","isFocused","findById","initialValue","arguments","length","undefined","reduce","result","current","transformOption","parentId","acc","updatedOption","origin","useDropdownFlyout","_ref","flyoutOptions","_ref$onClick","onClick","_onClick","_onKeyDown","onKeyDown","_React$useReducer","useReducer","_React$useReducer2","_slicedToArray","_React$useReducer2$","dispatch","setMouseOver","useCallback","setFocused","isExpanded","includes","isHighlighted","parentIds","isCorrectId","some","findOptionById","expand","collapse","highlight","traversingHighlight","item","tier","optionIndex","findIndex","nextIndex","prevIndex","parentOption","closeDropdown","closeSelectedDropdown","e","composedPath","node","_dataset","dataset","flyout","openDropdown","key","preventDefault","_e$stopPropagation","stopPropagation","call","_e$stopPropagation2","defaultOptionRenderer","createElement","Fragment","label","DropdownFlyoutContext","createContext","optionRenderer","useDropdownFlyoutContext","useContext"],"sources":["../../src/DropdownFlyout/DropdownFlyout.helpers.tsx"],"sourcesContent":["import React from 'react'\nimport { ulid } from 'ulid'\nimport {\n StyledDropdownFlyoutExpandIcon,\n StyledDropdownFlyoutLabel,\n} from './DropdownFlyout.styles'\nimport type {\n Action,\n DropdownFlyoutProps,\n DropdownOption,\n FlyoutOption,\n FlyoutOptionId,\n State,\n} from './DropdownFlyout.types'\nimport { rootId } from './DropdownFlyout.types'\n\nexport function noop() {}\n\nexport function returnFalse() {\n return false\n}\n\nfunction getFirst<T extends any>(arr: T[]) {\n return arr[0]\n}\nfunction isRootOption(optionId: FlyoutOptionId) {\n return optionId === rootId\n}\n\nexport function hasChildren(option: DropdownOption) {\n return Array.isArray(option.children)\n}\n\nfunction reducer(state: State, action: Action): State {\n switch (action.type) {\n case 'highlight':\n return {\n ...state,\n highlighted: action.option,\n }\n case 'expand':\n return {\n ...state,\n highlighted: action.option,\n expanded: [\n ...collectParentIds(state.options, action.option.id),\n action.option.id,\n ],\n }\n case 'collapse':\n return {\n ...state,\n highlighted: action.option,\n expanded: collectParentIds(state.options, action.option.id),\n }\n case 'close':\n return {\n ...state,\n expanded: [],\n highlighted: getFirst(state.options),\n isOpen: false,\n }\n case 'open':\n return {\n ...state,\n isOpen: true,\n }\n case 'setMouseOver':\n return {\n ...state,\n isMouseOver: action.isMouseOver,\n }\n case 'setFocused':\n return {\n ...state,\n isFocused: action.isFocused,\n }\n default:\n return state\n }\n}\n\nfunction findById(\n options: FlyoutOption[],\n optionId: FlyoutOption['id'],\n initialValue: FlyoutOption = getFirst(options)\n): FlyoutOption {\n return options.reduce((result, current) => {\n if (current.id === optionId) {\n return current\n }\n\n if (current.children) {\n return findById(current.children, optionId, result)\n }\n\n return result\n }, initialValue)\n}\n\nexport function transformOption(\n options: DropdownOption[],\n parentId: FlyoutOption['parentId']\n): FlyoutOption[] {\n return options.reduce<FlyoutOption[]>((acc, option) => {\n const id = ulid()\n const updatedOption = {\n id,\n parentId,\n origin: option,\n ...(Array.isArray(option.children) && {\n children: transformOption(option.children, id),\n }),\n }\n\n return [...acc, updatedOption]\n }, [])\n}\n\nfunction collectParentIds(\n options: FlyoutOption[],\n optionId: FlyoutOption['id']\n): FlyoutOption['id'][] {\n const option = findById(options, optionId)\n\n if (!isRootOption(option.parentId)) {\n return [...collectParentIds(options, option.parentId), option.parentId]\n }\n return [option.parentId]\n}\n\nexport function useDropdownFlyout({\n flyoutOptions,\n onClick: _onClick = noop,\n onKeyDown: _onKeyDown,\n}: Pick<DropdownFlyoutProps, 'onClick' | 'onKeyDown'> & {\n flyoutOptions: FlyoutOption[]\n}) {\n const [\n { options, expanded, highlighted, isOpen, isMouseOver, isFocused },\n dispatch,\n ] = React.useReducer(reducer, {\n options: flyoutOptions,\n expanded: [],\n highlighted: getFirst(flyoutOptions),\n isMouseOver: false,\n isFocused: false,\n isOpen: false,\n })\n\n const setMouseOver = React.useCallback(\n (isMouseOver: boolean) => dispatch({ type: 'setMouseOver', isMouseOver }),\n []\n )\n\n const setFocused = React.useCallback(\n (isFocused: boolean) => dispatch({ type: 'setFocused', isFocused }),\n []\n )\n\n const isExpanded = (option: FlyoutOption) => expanded.includes(option.id)\n\n const isHighlighted = (option: FlyoutOption): boolean => {\n const parentIds = collectParentIds(options, highlighted.id)\n const isCorrectId =\n option.id === highlighted.id || parentIds.some((id) => id === option.id)\n return (isMouseOver || isFocused) && isCorrectId\n }\n\n const findOptionById = React.useCallback(\n (id: FlyoutOptionId) => findById(options, id),\n [options]\n )\n\n const expand = React.useCallback(\n (option: FlyoutOption) =>\n dispatch({\n type: 'expand',\n option,\n }),\n []\n )\n\n const collapse = React.useCallback(\n (option: FlyoutOption) =>\n dispatch({\n type: 'collapse',\n option,\n }),\n []\n )\n\n const highlight = React.useCallback(\n (option: FlyoutOption) =>\n dispatch({\n type: 'highlight',\n option,\n }),\n []\n )\n\n const traversingHighlight = React.useCallback(\n (item: 'next' | 'prev' | 'children' | 'parent') => {\n const tier = isRootOption(highlighted.parentId)\n ? options\n : findOptionById(highlighted.parentId).children || []\n const optionIndex = tier.findIndex((item) => item.id === highlighted.id)\n\n switch (item) {\n case 'next':\n const nextIndex = optionIndex + 1 >= tier.length ? 0 : optionIndex + 1\n\n highlight(tier[nextIndex])\n break\n case 'prev':\n const prevIndex =\n optionIndex - 1 < 0 ? tier.length - 1 : optionIndex - 1\n\n highlight(tier[prevIndex])\n break\n case 'children':\n if (Array.isArray(highlighted.children)) {\n expand(highlighted)\n\n highlight(getFirst(highlighted.children))\n }\n break\n case 'parent':\n if (!isRootOption(highlighted.parentId)) {\n const parentOption = findOptionById(highlighted.parentId)\n collapse(parentOption)\n }\n break\n default:\n return\n }\n },\n [options, findOptionById, collapse, highlighted, expand, highlight]\n )\n\n const closeDropdown = React.useCallback(() => {\n dispatch({ type: 'close' })\n }, [])\n\n const closeSelectedDropdown = React.useCallback(\n (e: Event | React.FocusEvent) => {\n if (\n e &&\n e.type === 'click' &&\n !(e as MouseEvent)\n .composedPath()\n .some((node) => (node as HTMLElement).dataset?.flyout)\n ) {\n dispatch({ type: 'close' })\n }\n },\n []\n )\n\n const openDropdown = React.useCallback(() => {\n dispatch({ type: 'open' })\n }, [])\n\n const onClick = React.useCallback(\n (option: FlyoutOption) => {\n if (!hasChildren(option.origin)) {\n _onClick(option.origin)\n closeDropdown()\n }\n },\n [_onClick, closeDropdown]\n )\n\n const onKeyDown = React.useCallback(\n (e: React.KeyboardEvent<HTMLDivElement>) => {\n const { key } = e\n\n switch (key) {\n case 'Enter':\n e.preventDefault()\n if (!isOpen && isFocused) {\n openDropdown()\n } else {\n if (hasChildren(highlighted.origin)) {\n traversingHighlight('children')\n } else {\n onClick(highlighted)\n }\n }\n break\n case 'Escape':\n case 'Esc':\n e.preventDefault()\n if (isRootOption(highlighted.parentId)) {\n if (isOpen) {\n e.stopPropagation?.()\n }\n closeDropdown()\n } else {\n e.stopPropagation?.()\n traversingHighlight('parent')\n }\n break\n case 'ArrowDown':\n case 'Down':\n e.preventDefault()\n traversingHighlight('next')\n break\n case 'ArrowUp':\n case 'Up':\n e.preventDefault()\n traversingHighlight('prev')\n break\n }\n _onKeyDown?.(e)\n },\n [\n closeDropdown,\n openDropdown,\n traversingHighlight,\n highlighted,\n isOpen,\n isFocused,\n onClick,\n _onKeyDown,\n ]\n )\n\n return {\n isFocused,\n isMouseOver,\n isOpen,\n options,\n expanded,\n highlighted,\n expand,\n collapse,\n isHighlighted,\n isExpanded,\n closeDropdown,\n closeSelectedDropdown,\n openDropdown,\n onKeyDown,\n onClick,\n setMouseOver,\n setFocused,\n }\n}\n\nexport function defaultOptionRenderer(option: DropdownOption) {\n return (\n <>\n <StyledDropdownFlyoutLabel>{option.label}</StyledDropdownFlyoutLabel>\n {hasChildren(option) && (\n <StyledDropdownFlyoutExpandIcon data-qa=\"core-dropdown-flyout-option-expand-icon\" />\n )}\n </>\n )\n}\n\nexport const DropdownFlyoutContext = React.createContext<{\n onClick: (option: FlyoutOption) => void\n\n expand: (option: FlyoutOption) => void\n collapse: (option: FlyoutOption) => void\n optionRenderer: (option: DropdownOption) => React.ReactNode\n\n isExpanded: (option: FlyoutOption) => boolean\n isHighlighted: (option: FlyoutOption) => boolean\n}>({\n onClick: noop,\n\n expand: noop,\n collapse: noop,\n optionRenderer: defaultOptionRenderer,\n\n isExpanded: returnFalse,\n isHighlighted: returnFalse,\n})\n\nexport const useDropdownFlyoutContext = () =>\n React.useContext(DropdownFlyoutContext)\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"DropdownFlyout.js","names":["EllipsisVertical","React","Card","DropdownButton","Portal","useClickOutside","useI18nContext","mergeRefs","defaultOptionRenderer","DropdownFlyoutContext","noop","transformOption","useDropdownFlyout","useDropdownFlyoutContext","StyledDropdownFlyout","StyledDropdownFlyoutItem","rootId","useDropdownFlyoutOverlay","FlyoutCaption","forwardRef","_ref","ref","option","highlighted","optionRenderer","props","_objectWithoutProperties","_excluded","createElement","_extends","displayName","FlyoutItem","_ref2","overlayElRef","useRef","_useDropdownFlyoutCon","isHighlighted","isExpanded","_onClick","onClick","expand","collapse","onMouseEnter","useCallback","onMouseLeave","e","relatedTarget","Node","current","contains","_React$useState","useState","_React$useState2","_slicedToArray","referenceEl","setReferenceEl","Fragment","origin","Array","isArray","children","FlyoutList","options","overlayRef","placement","_ref3","_ref3$offset","offset","_useDropdownFlyoutOve","mainAxis","overlayStyle","referenceRef","useEffect","shadowStrength","style","map","key","id","DefaultButton","_ref4","icon","_excluded2","loading","undefined","arrow","Boolean","Children","count","DropdownFlyout","_ref5","disabled","label","_options","_ref5$onClick","_ref5$optionRenderer","_ref5$placement","_onKeyDown","onKeyDown","onFocus_","onFocus","onBlur_","onBlur","onMouseDown_","onMouseDown","onMouseEnter_","onMouseLeave_","size","_ref5$variant","variant","_excluded3","innerRef","containerRef","targetRef","flyoutOptions","useMemo","_useDropdownFlyout","closeSelectedDropdown","openDropdown","isOpen","setMouseOver","setFocused","onClickOutside","refs","element","I18n","ariaLabel","t","concat","trigger","isValidElement","_containerRef$current","target","dataset","flyout","preventDefault","_targetRef$current","focus","_React$useState3","_React$useState4","cloneElement","_trigger$props$onClic","_trigger$props","call","tabIndex","Provider","value"],"sources":["../../src/DropdownFlyout/DropdownFlyout.tsx"],"sourcesContent":["import { EllipsisVertical } from '@procore/core-icons/dist'\nimport React, { MouseEvent } from 'react'\nimport { ButtonProps } from '../Button/Button.types'\nimport { Card } from '../Card/Card'\nimport { DropdownButton } from '../Dropdown/Dropdown'\nimport { Portal } from '../Portal'\nimport { useClickOutside } from '../_hooks/ClickOutside'\nimport { useI18nContext } from '../_hooks/I18n'\nimport { mergeRefs } from '../_utils/mergeRefs'\nimport { ReactElementWithRef } from '../_utils/types'\nimport {\n defaultOptionRenderer,\n DropdownFlyoutContext,\n noop,\n transformOption,\n useDropdownFlyout,\n useDropdownFlyoutContext,\n} from './DropdownFlyout.helpers'\nimport {\n StyledDropdownFlyout,\n StyledDropdownFlyoutItem,\n} from './DropdownFlyout.styles'\nimport {\n DropdownFlyoutProps,\n FlyoutCaptionProps,\n FlyoutItemProps,\n FlyoutListProps,\n rootId,\n} from './DropdownFlyout.types'\nimport { useDropdownFlyoutOverlay } from './useDropdownFlyoutOverlay'\n\nexport const FlyoutCaption = React.forwardRef<\n HTMLDivElement,\n FlyoutCaptionProps\n>(function FlyoutCaption(\n { option, highlighted, optionRenderer, ...props },\n ref\n) {\n return (\n <StyledDropdownFlyoutItem\n {...props}\n ref={ref}\n data-highlighted={highlighted}\n data-flyout\n >\n {optionRenderer(option)}\n </StyledDropdownFlyoutItem>\n )\n})\n\nFlyoutCaption.displayName = 'FlyoutCaption'\n\nexport function FlyoutItem({ option }: FlyoutItemProps) {\n const overlayElRef = React.useRef<HTMLDivElement>(null)\n const {\n isHighlighted,\n isExpanded,\n onClick: _onClick,\n expand,\n collapse,\n optionRenderer,\n } = useDropdownFlyoutContext()\n\n const onMouseEnter = React.useCallback(() => expand(option), [option, expand])\n const onMouseLeave = React.useCallback(\n (e: React.MouseEvent<HTMLDivElement>) => {\n if (\n e.relatedTarget instanceof Node &&\n overlayElRef.current &&\n !overlayElRef.current.contains(e.relatedTarget as Node)\n ) {\n collapse(option)\n }\n },\n [collapse, option]\n )\n\n const onClick = React.useCallback(() => _onClick(option), [_onClick, option])\n\n const [referenceEl, setReferenceEl] = React.useState<HTMLElement | null>(null)\n\n return (\n <>\n <FlyoutCaption\n ref={setReferenceEl}\n option={option.origin}\n onClick={onClick}\n optionRenderer={optionRenderer}\n highlighted={isHighlighted(option)}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n />\n {Array.isArray(option.children) && isExpanded(option) ? (\n <Portal>\n <FlyoutList\n referenceEl={referenceEl}\n options={option.children}\n overlayRef={overlayElRef}\n placement=\"right-top\"\n />\n </Portal>\n ) : null}\n </>\n )\n}\n\nexport function FlyoutList({\n options,\n placement,\n referenceEl,\n overlayRef: overlayElRef,\n offset = 0,\n}: FlyoutListProps) {\n const { overlayStyle, referenceRef, overlayRef } = useDropdownFlyoutOverlay({\n placement,\n offset: { mainAxis: offset },\n })\n\n React.useEffect(() => {\n referenceRef(referenceEl)\n }, [referenceEl, referenceRef])\n\n return (\n <Card\n ref={mergeRefs(overlayRef, overlayElRef)}\n shadowStrength={2}\n style={overlayStyle}\n >\n <StyledDropdownFlyout>\n {options.map((option) => (\n <FlyoutItem key={option.id} option={option} />\n ))}\n </StyledDropdownFlyout>\n </Card>\n )\n}\n\nconst DefaultButton = React.forwardRef<HTMLButtonElement, ButtonProps>(\n function DefaultButton({ children, icon, ...props }, ref) {\n return (\n <DropdownButton\n {...props}\n icon={\n props.loading ? undefined : !icon && !children ? (\n <EllipsisVertical />\n ) : (\n icon\n )\n }\n arrow={Boolean(React.Children.count(children))}\n ref={ref}\n >\n {children}\n </DropdownButton>\n )\n }\n)\n\n/**\n\n The dropdown flyout allows for additional menu items to be nested within\n parent items, which allows more menu options for users.\n @a11y WARN: DropdownFlyotus hold no value and take an action. Focus is expected\n to be moved from a Dropdown to something else, to continue the user flow.\n If the action is inert and does not move focus, this is left to be added\n by the consumer.\n @since 10.19.0\n\n @see [Storybook](https://procore.github.io/core/core-react/latest/?path=/story/demos-dropdownflyout--demo)\n\n @see [Design Guidelines](https://design.procore.com/dropdown-flyout)\n\n */\nexport const DropdownFlyout = React.forwardRef<\n HTMLDivElement,\n DropdownFlyoutProps\n>(function DropdownFlyout(\n {\n disabled,\n icon,\n label,\n loading,\n options: _options,\n onClick: _onClick = noop,\n optionRenderer = defaultOptionRenderer,\n children,\n placement = 'right-bottom',\n onKeyDown: _onKeyDown,\n onFocus: onFocus_,\n onBlur: onBlur_,\n onMouseDown: onMouseDown_,\n onMouseEnter: onMouseEnter_,\n onMouseLeave: onMouseLeave_,\n size,\n variant = 'secondary',\n ...props\n },\n ref\n) {\n const innerRef = React.useRef<HTMLDivElement>(null)\n const containerRef = (ref as React.RefObject<HTMLInputElement>) || innerRef\n const overlayElRef = React.useRef<HTMLDivElement>(null)\n const targetRef = React.useRef<HTMLElement>(null)\n\n const flyoutOptions = React.useMemo(\n () => transformOption(_options, rootId),\n [_options]\n )\n\n const {\n options,\n collapse,\n expand,\n closeSelectedDropdown,\n openDropdown,\n isOpen,\n onClick,\n onKeyDown,\n setMouseOver,\n setFocused,\n isExpanded,\n isHighlighted,\n } = useDropdownFlyout({\n flyoutOptions,\n onClick: _onClick,\n onKeyDown: _onKeyDown,\n })\n\n useClickOutside({\n onClickOutside: isOpen ? closeSelectedDropdown : noop,\n refs: [containerRef],\n })\n\n const element =\n typeof children === 'function' ? children({ isOpen }) : children\n\n const I18n = useI18nContext()\n\n const ariaLabel =\n props['aria-label'] ||\n label ||\n I18n.t(`core.dropdown.${loading ? 'loading' : 'moreOptions'}`)\n\n const trigger: ReactElementWithRef = React.isValidElement(element) ? (\n element\n ) : (\n <DefaultButton\n aria-label={ariaLabel}\n children={label}\n disabled={disabled}\n loading={loading}\n icon={icon}\n size={size}\n variant={variant}\n />\n )\n\n function onBlur(e: React.FocusEvent<HTMLDivElement>) {\n setFocused(false)\n closeSelectedDropdown(e)\n onBlur_?.(e)\n }\n\n function onFocus(e: React.FocusEvent<HTMLDivElement>) {\n setFocused(true)\n onFocus_?.(e)\n }\n\n function onMouseDown(e: React.MouseEvent<HTMLDivElement>) {\n // Discard firing of blur event\n // when click was inside the dropdown\n if ((e.target as HTMLElement).dataset.flyout) {\n e.preventDefault()\n return\n }\n if (e.target instanceof Node && containerRef.current?.contains(e.target)) {\n e.preventDefault()\n targetRef.current?.focus()\n }\n onMouseDown_?.(e)\n }\n\n function onMouseLeave(e: React.MouseEvent<HTMLDivElement>) {\n setMouseOver(false)\n onMouseLeave_?.(e)\n }\n\n function onMouseEnter(e: React.MouseEvent<HTMLDivElement>) {\n setMouseOver(true)\n onMouseEnter_?.(e)\n }\n\n const [referenceEl, setReferenceEl] = React.useState<HTMLElement | null>(null)\n\n return (\n <div\n {...props}\n aria-label={undefined}\n ref={containerRef}\n onKeyDown={onKeyDown}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n onFocus={onFocus}\n onMouseDown={onMouseDown}\n onBlur={onBlur}\n >\n {React.cloneElement(trigger, {\n ref: trigger.ref\n ? mergeRefs(trigger.ref, targetRef, setReferenceEl)\n : mergeRefs(targetRef, setReferenceEl),\n onClick: (e: MouseEvent<HTMLElement, 'click'>) => {\n trigger.props.onClick?.(e)\n openDropdown()\n },\n tabIndex: 0,\n })}\n <DropdownFlyoutContext.Provider\n value={{\n expand,\n collapse,\n onClick,\n isExpanded,\n isHighlighted,\n optionRenderer,\n }}\n >\n {isOpen && (\n <Portal>\n <FlyoutList\n options={options}\n overlayRef={overlayElRef}\n placement={placement}\n referenceEl={referenceEl}\n offset={4}\n />\n </Portal>\n )}\n </DropdownFlyoutContext.Provider>\n </div>\n )\n})\n"],"mappings":"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"}
1
+ {"version":3,"file":"DropdownFlyout.js","names":["EllipsisVertical","React","Card","DropdownButton","Portal","useClickOutside","useI18nContext","mergeRefs","defaultOptionRenderer","DropdownFlyoutContext","noop","transformOption","useDropdownFlyout","useDropdownFlyoutContext","StyledDropdownFlyout","StyledDropdownFlyoutItem","rootId","useDropdownFlyoutOverlay","FlyoutCaption","forwardRef","_ref","ref","option","highlighted","optionRenderer","props","_objectWithoutProperties","_excluded","createElement","_extends","displayName","FlyoutItem","_ref2","overlayElRef","useRef","_useDropdownFlyoutCon","isHighlighted","isExpanded","_onClick","onClick","expand","collapse","onMouseEnter","useCallback","onMouseLeave","e","relatedTarget","Node","current","contains","_React$useState","useState","_React$useState2","_slicedToArray","referenceEl","setReferenceEl","Fragment","origin","Array","isArray","children","FlyoutList","options","overlayRef","placement","_ref3","_ref3$offset","offset","_useDropdownFlyoutOve","mainAxis","overlayStyle","referenceRef","useEffect","shadowStrength","style","map","key","id","DefaultButton","_ref4","icon","_excluded2","loading","undefined","arrow","Boolean","Children","count","DropdownFlyout","_ref5","disabled","label","_options","_ref5$onClick","_ref5$optionRenderer","_ref5$placement","_onKeyDown","onKeyDown","onFocus_","onFocus","onBlur_","onBlur","onMouseDown_","onMouseDown","onMouseEnter_","onMouseLeave_","size","_ref5$variant","variant","_excluded3","innerRef","containerRef","targetRef","flyoutOptions","useMemo","_useDropdownFlyout","closeSelectedDropdown","openDropdown","isOpen","setMouseOver","setFocused","onClickOutside","refs","element","I18n","ariaLabel","t","concat","trigger","isValidElement","_containerRef$current","target","dataset","flyout","preventDefault","_targetRef$current","focus","_React$useState3","_React$useState4","cloneElement","_trigger$props$onClic","_trigger$props","call","tabIndex","Provider","value"],"sources":["../../src/DropdownFlyout/DropdownFlyout.tsx"],"sourcesContent":["import { EllipsisVertical } from '@procore/core-icons/dist'\nimport type { MouseEvent } from 'react'\nimport React from 'react'\nimport type { ButtonProps } from '../Button/Button.types'\nimport { Card } from '../Card/Card'\nimport { DropdownButton } from '../Dropdown/Dropdown'\nimport { Portal } from '../Portal'\nimport { useClickOutside } from '../_hooks/ClickOutside'\nimport { useI18nContext } from '../_hooks/I18n'\nimport { mergeRefs } from '../_utils/mergeRefs'\nimport type { ReactElementWithRef } from '../_utils/types'\nimport {\n defaultOptionRenderer,\n DropdownFlyoutContext,\n noop,\n transformOption,\n useDropdownFlyout,\n useDropdownFlyoutContext,\n} from './DropdownFlyout.helpers'\nimport {\n StyledDropdownFlyout,\n StyledDropdownFlyoutItem,\n} from './DropdownFlyout.styles'\nimport type {\n DropdownFlyoutProps,\n FlyoutCaptionProps,\n FlyoutItemProps,\n FlyoutListProps,\n} from './DropdownFlyout.types'\nimport { rootId } from './DropdownFlyout.types'\nimport { useDropdownFlyoutOverlay } from './useDropdownFlyoutOverlay'\n\nexport const FlyoutCaption = React.forwardRef<\n HTMLDivElement,\n FlyoutCaptionProps\n>(function FlyoutCaption(\n { option, highlighted, optionRenderer, ...props },\n ref\n) {\n return (\n <StyledDropdownFlyoutItem\n {...props}\n ref={ref}\n data-highlighted={highlighted}\n data-flyout\n >\n {optionRenderer(option)}\n </StyledDropdownFlyoutItem>\n )\n})\n\nFlyoutCaption.displayName = 'FlyoutCaption'\n\nexport function FlyoutItem({ option }: FlyoutItemProps) {\n const overlayElRef = React.useRef<HTMLDivElement>(null)\n const {\n isHighlighted,\n isExpanded,\n onClick: _onClick,\n expand,\n collapse,\n optionRenderer,\n } = useDropdownFlyoutContext()\n\n const onMouseEnter = React.useCallback(() => expand(option), [option, expand])\n const onMouseLeave = React.useCallback(\n (e: React.MouseEvent<HTMLDivElement>) => {\n if (\n e.relatedTarget instanceof Node &&\n overlayElRef.current &&\n !overlayElRef.current.contains(e.relatedTarget as Node)\n ) {\n collapse(option)\n }\n },\n [collapse, option]\n )\n\n const onClick = React.useCallback(() => _onClick(option), [_onClick, option])\n\n const [referenceEl, setReferenceEl] = React.useState<HTMLElement | null>(null)\n\n return (\n <>\n <FlyoutCaption\n ref={setReferenceEl}\n option={option.origin}\n onClick={onClick}\n optionRenderer={optionRenderer}\n highlighted={isHighlighted(option)}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n />\n {Array.isArray(option.children) && isExpanded(option) ? (\n <Portal>\n <FlyoutList\n referenceEl={referenceEl}\n options={option.children}\n overlayRef={overlayElRef}\n placement=\"right-top\"\n />\n </Portal>\n ) : null}\n </>\n )\n}\n\nexport function FlyoutList({\n options,\n placement,\n referenceEl,\n overlayRef: overlayElRef,\n offset = 0,\n}: FlyoutListProps) {\n const { overlayStyle, referenceRef, overlayRef } = useDropdownFlyoutOverlay({\n placement,\n offset: { mainAxis: offset },\n })\n\n React.useEffect(() => {\n referenceRef(referenceEl)\n }, [referenceEl, referenceRef])\n\n return (\n <Card\n ref={mergeRefs(overlayRef, overlayElRef)}\n shadowStrength={2}\n style={overlayStyle}\n >\n <StyledDropdownFlyout>\n {options.map((option) => (\n <FlyoutItem key={option.id} option={option} />\n ))}\n </StyledDropdownFlyout>\n </Card>\n )\n}\n\nconst DefaultButton = React.forwardRef<HTMLButtonElement, ButtonProps>(\n function DefaultButton({ children, icon, ...props }, ref) {\n return (\n <DropdownButton\n {...props}\n icon={\n props.loading ? undefined : !icon && !children ? (\n <EllipsisVertical />\n ) : (\n icon\n )\n }\n arrow={Boolean(React.Children.count(children))}\n ref={ref}\n >\n {children}\n </DropdownButton>\n )\n }\n)\n\n/**\n\n The dropdown flyout allows for additional menu items to be nested within\n parent items, which allows more menu options for users.\n @a11y WARN: DropdownFlyotus hold no value and take an action. Focus is expected\n to be moved from a Dropdown to something else, to continue the user flow.\n If the action is inert and does not move focus, this is left to be added\n by the consumer.\n @since 10.19.0\n\n @see [Storybook](https://procore.github.io/core/core-react/latest/?path=/story/demos-dropdownflyout--demo)\n\n @see [Design Guidelines](https://design.procore.com/dropdown-flyout)\n\n */\nexport const DropdownFlyout = React.forwardRef<\n HTMLDivElement,\n DropdownFlyoutProps\n>(function DropdownFlyout(\n {\n disabled,\n icon,\n label,\n loading,\n options: _options,\n onClick: _onClick = noop,\n optionRenderer = defaultOptionRenderer,\n children,\n placement = 'right-bottom',\n onKeyDown: _onKeyDown,\n onFocus: onFocus_,\n onBlur: onBlur_,\n onMouseDown: onMouseDown_,\n onMouseEnter: onMouseEnter_,\n onMouseLeave: onMouseLeave_,\n size,\n variant = 'secondary',\n ...props\n },\n ref\n) {\n const innerRef = React.useRef<HTMLDivElement>(null)\n const containerRef = (ref as React.RefObject<HTMLInputElement>) || innerRef\n const overlayElRef = React.useRef<HTMLDivElement>(null)\n const targetRef = React.useRef<HTMLElement>(null)\n\n const flyoutOptions = React.useMemo(\n () => transformOption(_options, rootId),\n [_options]\n )\n\n const {\n options,\n collapse,\n expand,\n closeSelectedDropdown,\n openDropdown,\n isOpen,\n onClick,\n onKeyDown,\n setMouseOver,\n setFocused,\n isExpanded,\n isHighlighted,\n } = useDropdownFlyout({\n flyoutOptions,\n onClick: _onClick,\n onKeyDown: _onKeyDown,\n })\n\n useClickOutside({\n onClickOutside: isOpen ? closeSelectedDropdown : noop,\n refs: [containerRef],\n })\n\n const element =\n typeof children === 'function' ? children({ isOpen }) : children\n\n const I18n = useI18nContext()\n\n const ariaLabel =\n props['aria-label'] ||\n label ||\n I18n.t(`core.dropdown.${loading ? 'loading' : 'moreOptions'}`)\n\n const trigger: ReactElementWithRef = React.isValidElement(element) ? (\n element\n ) : (\n <DefaultButton\n aria-label={ariaLabel}\n children={label}\n disabled={disabled}\n loading={loading}\n icon={icon}\n size={size}\n variant={variant}\n />\n )\n\n function onBlur(e: React.FocusEvent<HTMLDivElement>) {\n setFocused(false)\n closeSelectedDropdown(e)\n onBlur_?.(e)\n }\n\n function onFocus(e: React.FocusEvent<HTMLDivElement>) {\n setFocused(true)\n onFocus_?.(e)\n }\n\n function onMouseDown(e: React.MouseEvent<HTMLDivElement>) {\n // Discard firing of blur event\n // when click was inside the dropdown\n if ((e.target as HTMLElement).dataset.flyout) {\n e.preventDefault()\n return\n }\n if (e.target instanceof Node && containerRef.current?.contains(e.target)) {\n e.preventDefault()\n targetRef.current?.focus()\n }\n onMouseDown_?.(e)\n }\n\n function onMouseLeave(e: React.MouseEvent<HTMLDivElement>) {\n setMouseOver(false)\n onMouseLeave_?.(e)\n }\n\n function onMouseEnter(e: React.MouseEvent<HTMLDivElement>) {\n setMouseOver(true)\n onMouseEnter_?.(e)\n }\n\n const [referenceEl, setReferenceEl] = React.useState<HTMLElement | null>(null)\n\n return (\n <div\n {...props}\n aria-label={undefined}\n ref={containerRef}\n onKeyDown={onKeyDown}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n onFocus={onFocus}\n onMouseDown={onMouseDown}\n onBlur={onBlur}\n >\n {React.cloneElement(trigger, {\n ref: trigger.ref\n ? mergeRefs(trigger.ref, targetRef, setReferenceEl)\n : mergeRefs(targetRef, setReferenceEl),\n onClick: (e: MouseEvent<HTMLElement, 'click'>) => {\n trigger.props.onClick?.(e)\n openDropdown()\n },\n tabIndex: 0,\n })}\n <DropdownFlyoutContext.Provider\n value={{\n expand,\n collapse,\n onClick,\n isExpanded,\n isHighlighted,\n optionRenderer,\n }}\n >\n {isOpen && (\n <Portal>\n <FlyoutList\n options={options}\n overlayRef={overlayElRef}\n placement={placement}\n referenceEl={referenceEl}\n offset={4}\n />\n </Portal>\n )}\n </DropdownFlyoutContext.Provider>\n </div>\n )\n})\n"],"mappings":"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"}
@@ -6,18 +6,18 @@ import { getEllipsis } from '../_styles/mixins';
6
6
  import { spacing } from '../_styles/spacing';
7
7
  export var StyledDropdownFlyout = /*#__PURE__*/styled.div.withConfig({
8
8
  displayName: "StyledDropdownFlyout",
9
- componentId: "core-11_24_1__sc-1i79jsg-0"
9
+ componentId: "core-11_24_3__sc-1i79jsg-0"
10
10
  })(["display:flex;flex-wrap:wrap;flex-direction:column;width:100%;max-height:855px;padding:", "px 0;"], spacing.sm);
11
11
  export var StyledDropdownFlyoutItem = /*#__PURE__*/styled.div.withConfig({
12
12
  displayName: "StyledDropdownFlyoutItem",
13
- componentId: "core-11_24_1__sc-1i79jsg-1"
13
+ componentId: "core-11_24_3__sc-1i79jsg-1"
14
14
  })(["display:flex;justify-content:space-between;cursor:pointer;width:100%;padding:", "px ", "px;color:", ";", " &[data-highlighted='true'],&:hover{background-color:", ";}"], spacing.xs, spacing.lg, colors.gray20, getTypographyIntent('body'), colors.gray96);
15
15
  export var StyledDropdownFlyoutLabel = /*#__PURE__*/styled.span.withConfig({
16
16
  displayName: "StyledDropdownFlyoutLabel",
17
- componentId: "core-11_24_1__sc-1i79jsg-2"
17
+ componentId: "core-11_24_3__sc-1i79jsg-2"
18
18
  })(["", ""], getEllipsis());
19
19
  export var StyledDropdownFlyoutExpandIcon = /*#__PURE__*/styled.span.withConfig({
20
20
  displayName: "StyledDropdownFlyoutExpandIcon",
21
- componentId: "core-11_24_1__sc-1i79jsg-3"
21
+ componentId: "core-11_24_3__sc-1i79jsg-3"
22
22
  })(["position:relative;display:inline-flex;align-self:center;flex-shrink:0;margin-left:", "px;white-space:nowrap;", ""], spacing.lg, arrowRight(4, 'black'));
23
23
  //# sourceMappingURL=DropdownFlyout.styles.js.map
@@ -1,7 +1,7 @@
1
- import { Ref } from 'react';
2
- import { DropdownProps } from '../Dropdown/Dropdown.types';
3
- import { OverlayProps } from '../Overlay/Overlay';
4
- import { DivAttributes, Placement, Props } from '../_utils/types';
1
+ import type { Ref } from 'react';
2
+ import type { DropdownProps } from '../Dropdown/Dropdown.types';
3
+ import type { OverlayProps } from '../Overlay/Overlay';
4
+ import type { DivAttributes, Placement, Props } from '../_utils/types';
5
5
  export declare const rootId = "ROOT_ID";
6
6
  export declare type Action = {
7
7
  type: 'highlight';
@@ -1 +1 @@
1
- {"version":3,"file":"DropdownFlyout.types.js","names":["rootId"],"sources":["../../src/DropdownFlyout/DropdownFlyout.types.ts"],"sourcesContent":["import { Ref } from 'react'\nimport { DropdownProps } from '../Dropdown/Dropdown.types'\nimport { OverlayProps } from '../Overlay/Overlay'\nimport { DivAttributes, Placement, Props } from '../_utils/types'\n\nexport const rootId = 'ROOT_ID'\n\nexport type Action =\n | { type: 'highlight'; option: FlyoutOption }\n | { type: 'expand'; option: FlyoutOption }\n | { type: 'collapse'; option: FlyoutOption }\n | { type: 'close' }\n | { type: 'open' }\n | { type: 'setMouseOver'; isMouseOver: boolean }\n | { type: 'setFocused'; isFocused: boolean }\n\ntype ExpandedItem = FlyoutOptionId\n\nexport type State = {\n highlighted: FlyoutOption\n expanded: ExpandedItem[]\n options: FlyoutOption[]\n isMouseOver: boolean\n isFocused: boolean\n isOpen: boolean\n}\n\nexport interface DropdownOption {\n value: any\n label: string\n children?: DropdownOption[]\n}\n\ntype OptionId = string\nexport interface FlyoutOption {\n /**\n * @since 10.19.0\n */\n id: OptionId\n /**\n * @since 10.19.0\n */\n parentId: OptionId | typeof rootId\n /**\n * @since 10.19.0\n */\n origin: DropdownOption\n /**\n * @since 10.19.0\n */\n children?: FlyoutOption[]\n}\n\nexport type FlyoutOptionId = FlyoutOption['id'] | typeof rootId\n\nexport interface FlyoutCaptionProps extends DivAttributes {\n option: DropdownOption\n highlighted: boolean\n optionRenderer: (option: DropdownOption) => React.ReactNode\n}\n\nexport interface FlyoutListProps extends DivAttributes {\n options: FlyoutOption[]\n overlayRef: Ref<HTMLDivElement>\n placement: Placement\n referenceEl: HTMLElement | null\n offset?: number\n}\n\nexport interface DropdownFlyoutProps extends Omit<DivAttributes, 'onClick'> {\n /**\n * @since 10.19.0\n */\n disabled?: DropdownProps['disabled']\n\n /**\n * The text of the button.\n * @since 10.19.0\n */\n label?: DropdownProps['label']\n /**\n * @since 10.19.0\n */\n loading?: DropdownProps['loading']\n\n /**\n * The icon of the button.\n * @since 10.19.0\n */\n icon?: DropdownProps['icon']\n\n /**\n * <div>\n * Data of the dropdown options - <Code>Option[]</Code>\n * <CodeBlock>\n * {`type Option = { label: string; children?: Option[] }`}\n * </CodeBlock>\n * </div>\n * @since 10.19.0\n */\n options: DropdownOption[]\n\n /**\n * <div>\n * Callback for click on dropdown option\n * <CodeBlock>{'(option: Option) => void'}</CodeBlock>\n * </div>\n * @since 10.19.0\n */\n onClick?: (option: DropdownOption) => void\n\n /**\n * <div>\n * Render prop to specify custom dropdown option content\n * <CodeBlock>{'(option: Option) => ReactNode'}</CodeBlock>\n * </div>\n * @since 10.19.0\n */\n optionRenderer?: (option: DropdownOption) => React.ReactNode\n\n /**\n * @default 'right-bottom'\n * @since 10.19.0\n */\n placement?: OverlayProps['placement']\n\n /**\n * The button size\n * @default 'md'\n * @since 10.19.0\n */\n size?: DropdownProps['size']\n\n /**\n * @default 'secondary'\n * @since 10.19.0\n */\n variant?: DropdownProps['variant']\n}\n\nexport interface FlyoutItemProps extends Props {\n option: FlyoutOption\n}\n"],"mappings":"AAKA,OAAO,IAAMA,MAAM,GAAG,SAAS"}
1
+ {"version":3,"file":"DropdownFlyout.types.js","names":["rootId"],"sources":["../../src/DropdownFlyout/DropdownFlyout.types.ts"],"sourcesContent":["import type { Ref } from 'react'\nimport type { DropdownProps } from '../Dropdown/Dropdown.types'\nimport type { OverlayProps } from '../Overlay/Overlay'\nimport type { DivAttributes, Placement, Props } from '../_utils/types'\n\nexport const rootId = 'ROOT_ID'\n\nexport type Action =\n | { type: 'highlight'; option: FlyoutOption }\n | { type: 'expand'; option: FlyoutOption }\n | { type: 'collapse'; option: FlyoutOption }\n | { type: 'close' }\n | { type: 'open' }\n | { type: 'setMouseOver'; isMouseOver: boolean }\n | { type: 'setFocused'; isFocused: boolean }\n\ntype ExpandedItem = FlyoutOptionId\n\nexport type State = {\n highlighted: FlyoutOption\n expanded: ExpandedItem[]\n options: FlyoutOption[]\n isMouseOver: boolean\n isFocused: boolean\n isOpen: boolean\n}\n\nexport interface DropdownOption {\n value: any\n label: string\n children?: DropdownOption[]\n}\n\ntype OptionId = string\nexport interface FlyoutOption {\n /**\n * @since 10.19.0\n */\n id: OptionId\n /**\n * @since 10.19.0\n */\n parentId: OptionId | typeof rootId\n /**\n * @since 10.19.0\n */\n origin: DropdownOption\n /**\n * @since 10.19.0\n */\n children?: FlyoutOption[]\n}\n\nexport type FlyoutOptionId = FlyoutOption['id'] | typeof rootId\n\nexport interface FlyoutCaptionProps extends DivAttributes {\n option: DropdownOption\n highlighted: boolean\n optionRenderer: (option: DropdownOption) => React.ReactNode\n}\n\nexport interface FlyoutListProps extends DivAttributes {\n options: FlyoutOption[]\n overlayRef: Ref<HTMLDivElement>\n placement: Placement\n referenceEl: HTMLElement | null\n offset?: number\n}\n\nexport interface DropdownFlyoutProps extends Omit<DivAttributes, 'onClick'> {\n /**\n * @since 10.19.0\n */\n disabled?: DropdownProps['disabled']\n\n /**\n * The text of the button.\n * @since 10.19.0\n */\n label?: DropdownProps['label']\n /**\n * @since 10.19.0\n */\n loading?: DropdownProps['loading']\n\n /**\n * The icon of the button.\n * @since 10.19.0\n */\n icon?: DropdownProps['icon']\n\n /**\n * <div>\n * Data of the dropdown options - <Code>Option[]</Code>\n * <CodeBlock>\n * {`type Option = { label: string; children?: Option[] }`}\n * </CodeBlock>\n * </div>\n * @since 10.19.0\n */\n options: DropdownOption[]\n\n /**\n * <div>\n * Callback for click on dropdown option\n * <CodeBlock>{'(option: Option) => void'}</CodeBlock>\n * </div>\n * @since 10.19.0\n */\n onClick?: (option: DropdownOption) => void\n\n /**\n * <div>\n * Render prop to specify custom dropdown option content\n * <CodeBlock>{'(option: Option) => ReactNode'}</CodeBlock>\n * </div>\n * @since 10.19.0\n */\n optionRenderer?: (option: DropdownOption) => React.ReactNode\n\n /**\n * @default 'right-bottom'\n * @since 10.19.0\n */\n placement?: OverlayProps['placement']\n\n /**\n * The button size\n * @default 'md'\n * @since 10.19.0\n */\n size?: DropdownProps['size']\n\n /**\n * @default 'secondary'\n * @since 10.19.0\n */\n variant?: DropdownProps['variant']\n}\n\nexport interface FlyoutItemProps extends Props {\n option: FlyoutOption\n}\n"],"mappings":"AAKA,OAAO,IAAMA,MAAM,GAAG,SAAS"}