@oracle/oraclejet-preact 14.0.14 → 14.0.16

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 (1046) hide show
  1. package/amd/Badge-98a677f3.js +2 -0
  2. package/amd/{Badge-0be84246.js.map → Badge-98a677f3.js.map} +1 -1
  3. package/amd/BaseButton-174b82cf.js +2 -0
  4. package/amd/{BaseButton-c0bee435.js.map → BaseButton-174b82cf.js.map} +1 -1
  5. package/amd/Button-90c6e9f9.js +2 -0
  6. package/amd/{Button-88e2683c.js.map → Button-90c6e9f9.js.map} +1 -1
  7. package/amd/Chip-fc2e4a70.js +2 -0
  8. package/amd/{Chip-5f3711bc.js.map → Chip-fc2e4a70.js.map} +1 -1
  9. package/amd/ClearIcon-235a74a8.js +2 -0
  10. package/amd/{ClearIcon-6ec20bda.js.map → ClearIcon-235a74a8.js.map} +1 -1
  11. package/amd/{Collection-0cf06a50.js → Collection-9df1abea.js} +1 -1
  12. package/amd/{Collection-0cf06a50.js.map → Collection-9df1abea.js.map} +1 -1
  13. package/amd/ComponentMessage-3afec011.js +2 -0
  14. package/amd/{ComponentMessage-3628eb9f.js.map → ComponentMessage-3afec011.js.map} +1 -1
  15. package/amd/ComponentMessageContainer-bc250349.js +2 -0
  16. package/amd/{ComponentMessageContainer-a1d1e15e.js.map → ComponentMessageContainer-bc250349.js.map} +1 -1
  17. package/amd/{Divider-778cfef6.js → Divider-3fd74acf.js} +2 -2
  18. package/amd/{Divider-778cfef6.js.map → Divider-3fd74acf.js.map} +1 -1
  19. package/amd/{FilePicker-f364c3c4.js → FilePicker-12577518.js} +2 -2
  20. package/amd/{FilePicker-f364c3c4.js.map → FilePicker-12577518.js.map} +1 -1
  21. package/amd/Flex-09e74761.js +2 -0
  22. package/amd/{Flex-f59e8f9a.js.map → Flex-09e74761.js.map} +1 -1
  23. package/amd/{Floating-2283f974.js → Floating-0746d380.js} +2 -2
  24. package/amd/{Floating-2283f974.js.map → Floating-0746d380.js.map} +1 -1
  25. package/amd/FocusTrap-d3e74e81.js +2 -0
  26. package/amd/{FocusTrap-1a3d4176.js.map → FocusTrap-d3e74e81.js.map} +1 -1
  27. package/amd/FormControlUtils-dae9e648.js +2 -0
  28. package/amd/{FormControlUtils-a5f8e972.js.map → FormControlUtils-dae9e648.js.map} +1 -1
  29. package/amd/Heading-10fc3dc7.js +2 -0
  30. package/amd/{Heading-ab2bcb42.js.map → Heading-10fc3dc7.js.map} +1 -1
  31. package/amd/{HiddenAccessible-fcfef48f.js → HiddenAccessible-14957c32.js} +2 -2
  32. package/amd/{HiddenAccessible-fcfef48f.js.map → HiddenAccessible-14957c32.js.map} +1 -1
  33. package/amd/{HighlightText-0c90bb28.js → HighlightText-444c1227.js} +2 -2
  34. package/amd/{HighlightText-0c90bb28.js.map → HighlightText-444c1227.js.map} +1 -1
  35. package/amd/Icon-0f001e22.js +2 -0
  36. package/amd/{Icon-f239bdd4.js.map → Icon-0f001e22.js.map} +1 -1
  37. package/amd/Indexer-bbc07fbd.js +2 -0
  38. package/amd/{Indexer-0c3bb8b6.js.map → Indexer-bbc07fbd.js.map} +1 -1
  39. package/amd/InlineHelpSource-c2887059.js +2 -0
  40. package/amd/{InlineHelpSource-60143cb9.js.map → InlineHelpSource-c2887059.js.map} +1 -1
  41. package/amd/Link-b7446b22.js +2 -0
  42. package/amd/{Link-c804eabd.js.map → Link-b7446b22.js.map} +1 -1
  43. package/amd/List-e404fd42.js +2 -0
  44. package/amd/{List-ef2d7cb3.js.map → List-e404fd42.js.map} +1 -1
  45. package/amd/ListItemTextLayout-881bef6d.js +2 -0
  46. package/amd/{ListItemTextLayout-e4b8ff9d.js.map → ListItemTextLayout-881bef6d.js.map} +1 -1
  47. package/amd/{ListView-d08cd060.js → ListView-860d3563.js} +2 -2
  48. package/amd/{ListView-d08cd060.js.map → ListView-860d3563.js.map} +1 -1
  49. package/amd/{LoadMoreCollection-8378a9b8.js → LoadMoreCollection-298a8d03.js} +2 -2
  50. package/amd/{LoadMoreCollection-8378a9b8.js.map → LoadMoreCollection-298a8d03.js.map} +1 -1
  51. package/amd/Menu-0359c231.js +2 -0
  52. package/amd/{Menu-668ba0c6.js.map → Menu-0359c231.js.map} +1 -1
  53. package/amd/MenuDivider-c66ecaf2.js +2 -0
  54. package/amd/{MenuDivider-3d042815.js.map → MenuDivider-c66ecaf2.js.map} +1 -1
  55. package/amd/MenuItem-126abb70.js +2 -0
  56. package/amd/{MenuItem-f609dd6c.js.map → MenuItem-126abb70.js.map} +1 -1
  57. package/amd/{Message.types-2bd652fe.js → Message.types-07e4afec.js} +1 -1
  58. package/amd/{Message.types-2bd652fe.js.map → Message.types-07e4afec.js.map} +1 -1
  59. package/amd/MessageCloseButton-15992223.js +2 -0
  60. package/amd/{MessageCloseButton-81de07b6.js.map → MessageCloseButton-15992223.js.map} +1 -1
  61. package/amd/MessageDetail-e60f3a62.js +2 -0
  62. package/amd/{MessageDetail-6d596f28.js.map → MessageDetail-e60f3a62.js.map} +1 -1
  63. package/amd/{MessageFormattingUtils-c720f198.js → MessageFormattingUtils-3182a53c.js} +2 -2
  64. package/amd/{MessageFormattingUtils-c720f198.js.map → MessageFormattingUtils-3182a53c.js.map} +1 -1
  65. package/amd/MessageLayer-431527dc.js +2 -0
  66. package/amd/{MessageLayer-07b03424.js.map → MessageLayer-431527dc.js.map} +1 -1
  67. package/amd/MessageStartIcon-2b34bbc2.js +2 -0
  68. package/amd/{MessageStartIcon-35715e60.js.map → MessageStartIcon-2b34bbc2.js.map} +1 -1
  69. package/amd/MessageSummary-4be22c0e.js +2 -0
  70. package/amd/{MessageSummary-eb8190eb.js.map → MessageSummary-4be22c0e.js.map} +1 -1
  71. package/amd/MessageTimestamp-f06381d6.js +2 -0
  72. package/amd/{MessageTimestamp-c7dc22d9.js.map → MessageTimestamp-f06381d6.js.map} +1 -1
  73. package/amd/{MessageToast-f87f4808.js → MessageToast-6300e7d8.js} +2 -2
  74. package/amd/{MessageToast-f87f4808.js.map → MessageToast-6300e7d8.js.map} +1 -1
  75. package/amd/{MessageUtils-6a8ba9de.js → MessageUtils-8f1f842d.js} +2 -2
  76. package/amd/{MessageUtils-6a8ba9de.js.map → MessageUtils-8f1f842d.js.map} +1 -1
  77. package/amd/{MessagesManager-af292003.js → MessagesManager-f08bf90d.js} +2 -2
  78. package/amd/{MessagesManager-af292003.js.map → MessagesManager-f08bf90d.js.map} +1 -1
  79. package/amd/MeterCircle-f6b0caa9.js +2 -0
  80. package/amd/{MeterCircle-2c036469.js.map → MeterCircle-f6b0caa9.js.map} +1 -1
  81. package/amd/Modal-6ffcb075.js +2 -0
  82. package/amd/{Modal-57512b69.js.map → Modal-6ffcb075.js.map} +1 -1
  83. package/amd/{NumberInputText-9d8b9bf1.js → NumberInputText-f18531b0.js} +2 -2
  84. package/amd/{NumberInputText-9d8b9bf1.js.map → NumberInputText-f18531b0.js.map} +1 -1
  85. package/amd/PRIVATE_Collection.js +1 -1
  86. package/amd/PRIVATE_List.css +15 -15
  87. package/amd/PRIVATE_List.js +1 -1
  88. package/amd/PRIVATE_Message.css +27 -27
  89. package/amd/PRIVATE_Message.js +1 -1
  90. package/amd/PRIVATE_Message.js.map +1 -1
  91. package/amd/PRIVATE_MessageLayer.css +7 -7
  92. package/amd/PRIVATE_MessageLayer.js +1 -1
  93. package/amd/PRIVATE_Meter.js +1 -1
  94. package/amd/PRIVATE_SelectCommon.css +13 -13
  95. package/amd/PRIVATE_SelectCommon.js +1 -1
  96. package/amd/PRIVATE_SelectCommon.js.map +1 -1
  97. package/amd/PRIVATE_VirtualizedCollection.js +1 -1
  98. package/amd/ReadonlyTextFieldInput-56711dee.js +2 -0
  99. package/amd/{ReadonlyTextFieldInput-d60fe78e.js.map → ReadonlyTextFieldInput-56711dee.js.map} +1 -1
  100. package/amd/{SelectMenuItem-521e29a5.js → SelectMenuItem-d0495c89.js} +2 -2
  101. package/amd/{SelectMenuItem-521e29a5.js.map → SelectMenuItem-d0495c89.js.map} +1 -1
  102. package/amd/{SelectMultiple-112aec1d.js → SelectMultiple-1f77445b.js} +2 -2
  103. package/amd/{SelectMultiple-112aec1d.js.map → SelectMultiple-1f77445b.js.map} +1 -1
  104. package/amd/{SelectSingle-3114dcb1.js → SelectSingle-d6e91617.js} +2 -2
  105. package/amd/{SelectSingle-3114dcb1.js.map → SelectSingle-d6e91617.js.map} +1 -1
  106. package/amd/Skeleton-26929f8e.js +2 -0
  107. package/amd/{Skeleton-e36a6a22.js.map → Skeleton-26929f8e.js.map} +1 -1
  108. package/amd/{Spacer-65814616.js → Spacer-c770cd2b.js} +2 -2
  109. package/amd/{Spacer-65814616.js.map → Spacer-c770cd2b.js.map} +1 -1
  110. package/amd/SplitMenuButton-f8968c97.js +2 -0
  111. package/amd/{SplitMenuButton-746cd46d.js.map → SplitMenuButton-f8968c97.js.map} +1 -1
  112. package/amd/Text-5980e33c.js +2 -0
  113. package/amd/{Text-b8786e25.js.map → Text-5980e33c.js.map} +1 -1
  114. package/amd/TextArea-7342f2f7.js +2 -0
  115. package/amd/{TextArea-f47777d2.js.map → TextArea-7342f2f7.js.map} +1 -1
  116. package/amd/{TextAreaAutosize-79717122.js → TextAreaAutosize-701e6196.js} +2 -2
  117. package/amd/{TextAreaAutosize-79717122.js.map → TextAreaAutosize-701e6196.js.map} +1 -1
  118. package/amd/TextFieldInput-d18240f2.js +2 -0
  119. package/amd/{TextFieldInput-a4cae09b.js.map → TextFieldInput-d18240f2.js.map} +1 -1
  120. package/amd/UNSAFE_AspectRatio.css +1 -1
  121. package/amd/UNSAFE_AspectRatio.js +1 -1
  122. package/amd/UNSAFE_Avatar.css +8 -8
  123. package/amd/UNSAFE_Avatar.js +1 -1
  124. package/amd/UNSAFE_Avatar.js.map +1 -1
  125. package/amd/UNSAFE_Badge.css +13 -13
  126. package/amd/UNSAFE_Badge.js +1 -1
  127. package/amd/UNSAFE_BaseButton.css +15 -15
  128. package/amd/UNSAFE_BaseButton.js +1 -1
  129. package/amd/UNSAFE_Button.css +8 -8
  130. package/amd/UNSAFE_Button.js +1 -1
  131. package/amd/UNSAFE_Center.js +1 -1
  132. package/amd/UNSAFE_Chip.css +7 -7
  133. package/amd/UNSAFE_Chip.js +1 -1
  134. package/amd/UNSAFE_Collapsible.css +8 -8
  135. package/amd/UNSAFE_Collapsible.js +1 -1
  136. package/amd/UNSAFE_Collapsible.js.map +1 -1
  137. package/amd/UNSAFE_ComponentMessage.css +2 -2
  138. package/amd/UNSAFE_ComponentMessage.js +1 -1
  139. package/amd/UNSAFE_Divider.css +1 -1
  140. package/amd/UNSAFE_Divider.js +1 -1
  141. package/amd/UNSAFE_FilePicker.css +6 -6
  142. package/amd/UNSAFE_FilePicker.js +1 -1
  143. package/amd/UNSAFE_Flex.css +2 -2
  144. package/amd/UNSAFE_Flex.js +1 -1
  145. package/amd/UNSAFE_Floating.js +1 -1
  146. package/amd/UNSAFE_FocusTrap.css +2 -2
  147. package/amd/UNSAFE_FocusTrap.js +1 -1
  148. package/amd/UNSAFE_Grid.css +1 -1
  149. package/amd/UNSAFE_Grid.js +1 -1
  150. package/amd/UNSAFE_Heading.css +9 -9
  151. package/amd/UNSAFE_Heading.js +1 -1
  152. package/amd/UNSAFE_HiddenAccessible.css +1 -1
  153. package/amd/UNSAFE_HiddenAccessible.js +1 -1
  154. package/amd/UNSAFE_HighlightText.css +1 -1
  155. package/amd/UNSAFE_HighlightText.js +1 -1
  156. package/amd/UNSAFE_Icon.css +21 -21
  157. package/amd/UNSAFE_Icon.js +1 -1
  158. package/amd/UNSAFE_Icons.js +1 -1
  159. package/amd/UNSAFE_Indexer.css +7 -7
  160. package/amd/UNSAFE_Indexer.js +1 -1
  161. package/amd/UNSAFE_InputPassword.css +1 -1
  162. package/amd/UNSAFE_InputPassword.js +1 -1
  163. package/amd/UNSAFE_InputPassword.js.map +1 -1
  164. package/amd/UNSAFE_InputText.css +1 -1
  165. package/amd/UNSAFE_InputText.js +1 -1
  166. package/amd/UNSAFE_Label.css +13 -13
  167. package/amd/UNSAFE_Label.js +1 -1
  168. package/amd/UNSAFE_Label.js.map +1 -1
  169. package/amd/UNSAFE_LabelValueLayout.css +9 -9
  170. package/amd/UNSAFE_LabelValueLayout.js +1 -1
  171. package/amd/UNSAFE_LabelValueLayout.js.map +1 -1
  172. package/amd/UNSAFE_Link.css +5 -5
  173. package/amd/UNSAFE_Link.js +1 -1
  174. package/amd/UNSAFE_ListItemLayout.css +9 -9
  175. package/amd/UNSAFE_ListItemLayout.js +1 -1
  176. package/amd/UNSAFE_ListView.js +1 -1
  177. package/amd/UNSAFE_LiveRegion.css +1 -1
  178. package/amd/UNSAFE_LiveRegion.js +1 -1
  179. package/amd/UNSAFE_LiveRegion.js.map +1 -1
  180. package/amd/UNSAFE_LoadMoreCollection.js +1 -1
  181. package/amd/UNSAFE_Menu.css +17 -17
  182. package/amd/UNSAFE_Menu.js +1 -1
  183. package/amd/UNSAFE_MessageBanner.js +1 -1
  184. package/amd/UNSAFE_MessageToast.css +1 -1
  185. package/amd/UNSAFE_MessageToast.js +1 -1
  186. package/amd/UNSAFE_MeterBar.css +43 -43
  187. package/amd/UNSAFE_MeterBar.js +1 -1
  188. package/amd/UNSAFE_MeterBar.js.map +1 -1
  189. package/amd/UNSAFE_MeterCircle.css +46 -46
  190. package/amd/UNSAFE_MeterCircle.js +1 -1
  191. package/amd/UNSAFE_Modal.css +3 -3
  192. package/amd/UNSAFE_Modal.js +1 -1
  193. package/amd/UNSAFE_NumberInputText.js +1 -1
  194. package/amd/UNSAFE_PrefixSuffix.css +8 -8
  195. package/amd/UNSAFE_PrefixSuffix.js +1 -1
  196. package/amd/UNSAFE_PrefixSuffix.js.map +1 -1
  197. package/amd/UNSAFE_ProgressBar.css +6 -6
  198. package/amd/UNSAFE_ProgressBar.js +1 -1
  199. package/amd/UNSAFE_ProgressBar.js.map +1 -1
  200. package/amd/UNSAFE_ProgressCircle.css +6 -6
  201. package/amd/UNSAFE_ProgressCircle.js +1 -1
  202. package/amd/UNSAFE_ProgressCircle.js.map +1 -1
  203. package/amd/UNSAFE_RatingGauge.css +20 -20
  204. package/amd/UNSAFE_RatingGauge.js +1 -1
  205. package/amd/UNSAFE_RatingGauge.js.map +1 -1
  206. package/amd/UNSAFE_SelectMultiple.css +1 -1
  207. package/amd/UNSAFE_SelectMultiple.js +1 -1
  208. package/amd/UNSAFE_SelectSingle.js +1 -1
  209. package/amd/UNSAFE_Selector.css +5 -5
  210. package/amd/UNSAFE_Selector.js +1 -1
  211. package/amd/UNSAFE_Selector.js.map +1 -1
  212. package/amd/UNSAFE_Skeleton.css +1 -1
  213. package/amd/UNSAFE_Skeleton.js +1 -1
  214. package/amd/UNSAFE_Spacer.js +1 -1
  215. package/amd/UNSAFE_SplitMenuButton.css +5 -5
  216. package/amd/UNSAFE_SplitMenuButton.js +1 -1
  217. package/amd/UNSAFE_Text.css +25 -25
  218. package/amd/UNSAFE_Text.js +1 -1
  219. package/amd/UNSAFE_TextArea.css +3 -3
  220. package/amd/UNSAFE_TextArea.js +1 -1
  221. package/amd/UNSAFE_TextAreaAutosize.js +1 -1
  222. package/amd/UNSAFE_TextField.css +58 -58
  223. package/amd/UNSAFE_TextField.js +1 -1
  224. package/amd/UNSAFE_TextField.js.map +1 -1
  225. package/amd/UNSAFE_ThemedIcons.js +1 -1
  226. package/amd/UNSAFE_UserAssistance.css +8 -8
  227. package/amd/UNSAFE_UserAssistance.js +1 -1
  228. package/amd/UNSAFE_UserAssistance.js.map +1 -1
  229. package/amd/UNSAFE_View.js +1 -1
  230. package/amd/UNSAFE_VirtualizedListView.js +1 -1
  231. package/amd/{VirtualizedCollection-6f661aad.js → VirtualizedCollection-e1dc1d4d.js} +2 -2
  232. package/amd/{VirtualizedCollection-6f661aad.js.map → VirtualizedCollection-e1dc1d4d.js.map} +1 -1
  233. package/amd/{VirtualizedListView-4e250a9b.js → VirtualizedListView-8807f476.js} +2 -2
  234. package/amd/{VirtualizedListView-4e250a9b.js.map → VirtualizedListView-8807f476.js.map} +1 -1
  235. package/amd/{_curry1-dae9baa7.js → _curry1-e0cd66f4.js} +1 -1
  236. package/amd/{_curry1-dae9baa7.js.map → _curry1-e0cd66f4.js.map} +1 -1
  237. package/amd/{_curry2-be3541de.js → _curry2-1b99ddfe.js} +2 -2
  238. package/amd/{_curry2-be3541de.js.map → _curry2-1b99ddfe.js.map} +1 -1
  239. package/amd/_curry3-9b2d7c26.js +2 -0
  240. package/amd/{_curry3-092c8c32.js.map → _curry3-9b2d7c26.js.map} +1 -1
  241. package/amd/_has-710e4a41.js +2 -0
  242. package/amd/{_has-0f123a68.js.map → _has-710e4a41.js.map} +1 -1
  243. package/amd/{classNames-745408c7.js → classNames-ee48f57b.js} +1 -1
  244. package/amd/{classNames-745408c7.js.map → classNames-ee48f57b.js.map} +1 -1
  245. package/amd/{clientHints-a61109c7.js → clientHints-8af07605.js} +1 -1
  246. package/amd/{clientHints-a61109c7.js.map → clientHints-8af07605.js.map} +1 -1
  247. package/amd/flexbox-b1f9a1f0.js +2 -0
  248. package/amd/{flexbox-1e550203.js.map → flexbox-b1f9a1f0.js.map} +1 -1
  249. package/amd/flexitem-da0f34e5.js +2 -0
  250. package/amd/{flexitem-c8b9198a.js.map → flexitem-da0f34e5.js.map} +1 -1
  251. package/amd/hooks/PRIVATE_useDvtMeterEvents.js +1 -1
  252. package/amd/hooks/PRIVATE_useSingleSelection.js +1 -1
  253. package/amd/hooks/UNSAFE_useAnimation.js +1 -1
  254. package/amd/hooks/UNSAFE_useFloating.js +1 -1
  255. package/amd/hooks/UNSAFE_useFocusWithin.js +1 -1
  256. package/amd/hooks/UNSAFE_useFocusableTextField.js +1 -1
  257. package/amd/hooks/UNSAFE_usePrefixSuffix.js +1 -1
  258. package/amd/hooks/UNSAFE_useTextFieldInputHandlers.js +1 -1
  259. package/amd/hooks/UNSAFE_useTooltip.css +4 -4
  260. package/amd/hooks/UNSAFE_useTooltip.js +1 -1
  261. package/amd/hooks/UNSAFE_useTooltip.js.map +1 -1
  262. package/amd/{index-42ae4639.js → index-140c213a.js} +2 -2
  263. package/amd/{index-42ae4639.js.map → index-140c213a.js.map} +1 -1
  264. package/amd/{index-a8197f60.js → index-35690f89.js} +2 -2
  265. package/amd/{index-a8197f60.js.map → index-35690f89.js.map} +1 -1
  266. package/amd/{index-862af5af.js → index-c24bc5fd.js} +1 -1
  267. package/amd/{index-862af5af.js.map → index-c24bc5fd.js.map} +1 -1
  268. package/amd/{keys-6ad0ac73.js → keys-9f636d55.js} +2 -2
  269. package/amd/{keys-6ad0ac73.js.map → keys-9f636d55.js.map} +1 -1
  270. package/amd/{listViewSelectionTests-4a3bfa18.js → listViewSelectionTests-66deee7b.js} +2 -2
  271. package/amd/{listViewSelectionTests-4a3bfa18.js.map → listViewSelectionTests-66deee7b.js.map} +1 -1
  272. package/amd/{listViewTabbableModeTests-c57e90b3.js → listViewTabbableModeTests-acb40d01.js} +2 -2
  273. package/amd/{listViewTabbableModeTests-c57e90b3.js.map → listViewTabbableModeTests-acb40d01.js.map} +1 -1
  274. package/amd/{listViewTestFixtures-987dcfd9.js → listViewTestFixtures-4a27b46e.js} +1 -1
  275. package/amd/{listViewTestFixtures-987dcfd9.js.map → listViewTestFixtures-4a27b46e.js.map} +1 -1
  276. package/amd/{menuTestsUtils-b8d91a4d.js → menuTestsUtils-c0b774d1.js} +1 -1
  277. package/amd/{menuTestsUtils-b8d91a4d.js.map → menuTestsUtils-c0b774d1.js.map} +1 -1
  278. package/amd/{stringUtils-d817053c.js → stringUtils-064b3cbb.js} +1 -1
  279. package/amd/{stringUtils-d817053c.js.map → stringUtils-064b3cbb.js.map} +1 -1
  280. package/amd/{testHelpers-8c3bb20d.js → testHelpers-e44a79b0.js} +1 -1
  281. package/amd/{testHelpers-8c3bb20d.js.map → testHelpers-e44a79b0.js.map} +1 -1
  282. package/amd/{tslib.es6-30a906db.js → tslib.es6-925f910c.js} +1 -1
  283. package/amd/{tslib.es6-30a906db.js.map → tslib.es6-925f910c.js.map} +1 -1
  284. package/amd/{useAnimation-af00e362.js → useAnimation-002088aa.js} +2 -2
  285. package/amd/{useAnimation-af00e362.js.map → useAnimation-002088aa.js.map} +1 -1
  286. package/amd/{useFocusWithin-f1d5b8eb.js → useFocusWithin-ca350665.js} +1 -1
  287. package/amd/{useFocusWithin-f1d5b8eb.js.map → useFocusWithin-ca350665.js.map} +1 -1
  288. package/amd/{useSingleSelection-d5187708.js → useSingleSelection-853b0de4.js} +1 -1
  289. package/amd/{useSingleSelection-d5187708.js.map → useSingleSelection-853b0de4.js.map} +1 -1
  290. package/amd/utils/PRIVATE_clientHints.js +1 -1
  291. package/amd/utils/PRIVATE_tabbableUtils.js +1 -1
  292. package/amd/utils/UNSAFE_classNames.js +1 -1
  293. package/amd/utils/UNSAFE_interpolations/boxalignment.css +15 -15
  294. package/amd/utils/UNSAFE_interpolations/boxalignment.js +1 -1
  295. package/amd/utils/UNSAFE_interpolations/boxalignment.js.map +1 -1
  296. package/amd/utils/UNSAFE_interpolations/dimensions.js +1 -1
  297. package/amd/utils/UNSAFE_interpolations/flexbox.css +7 -7
  298. package/amd/utils/UNSAFE_interpolations/flexbox.js +1 -1
  299. package/amd/utils/UNSAFE_interpolations/flexitem.css +7 -7
  300. package/amd/utils/UNSAFE_interpolations/flexitem.js +1 -1
  301. package/amd/utils/UNSAFE_interpolations/text.css +3 -3
  302. package/amd/utils/UNSAFE_interpolations/text.js +1 -1
  303. package/amd/utils/UNSAFE_interpolations/text.js.map +1 -1
  304. package/amd/utils/UNSAFE_logger.js +1 -1
  305. package/amd/utils/UNSAFE_mergeInterpolations.js +1 -1
  306. package/amd/utils/UNSAFE_stringUtils.js +1 -1
  307. package/amd/utils/UNSAFE_units.js +1 -1
  308. package/cjs/{Badge-89fac227.js → Badge-77533dbe.js} +16 -16
  309. package/cjs/{Badge-89fac227.js.map → Badge-77533dbe.js.map} +1 -1
  310. package/cjs/{BaseButton-feee8469.js → BaseButton-f5073e18.js} +20 -20
  311. package/cjs/{BaseButton-feee8469.js.map → BaseButton-f5073e18.js.map} +1 -1
  312. package/cjs/{Button-b053de2d.js → Button-feff77e2.js} +13 -13
  313. package/cjs/{Button-b053de2d.js.map → Button-feff77e2.js.map} +1 -1
  314. package/cjs/{Chip-63a6a53f.js → Chip-fc282bb0.js} +10 -10
  315. package/cjs/{Chip-63a6a53f.js.map → Chip-fc282bb0.js.map} +1 -1
  316. package/cjs/{ClearIcon-ea06ed2b.js → ClearIcon-9e1b1dce.js} +3 -3
  317. package/cjs/{ClearIcon-ea06ed2b.js.map → ClearIcon-9e1b1dce.js.map} +1 -1
  318. package/cjs/{Collection-4fa01799.js → Collection-7201124c.js} +2 -2
  319. package/cjs/{Collection-4fa01799.js.map → Collection-7201124c.js.map} +1 -1
  320. package/cjs/{ComponentMessage-33d8263e.js → ComponentMessage-96a1b221.js} +8 -8
  321. package/cjs/{ComponentMessage-33d8263e.js.map → ComponentMessage-96a1b221.js.map} +1 -1
  322. package/cjs/{ComponentMessageContainer-bc1ae022.js → ComponentMessageContainer-7958fa7b.js} +5 -5
  323. package/cjs/{ComponentMessageContainer-bc1ae022.js.map → ComponentMessageContainer-7958fa7b.js.map} +1 -1
  324. package/cjs/{Divider-c8cf7389.js → Divider-22deb8f8.js} +3 -3
  325. package/cjs/{Divider-c8cf7389.js.map → Divider-22deb8f8.js.map} +1 -1
  326. package/cjs/{FilePicker-bb0ea408.js → FilePicker-1169d0f3.js} +14 -14
  327. package/cjs/{FilePicker-bb0ea408.js.map → FilePicker-1169d0f3.js.map} +1 -1
  328. package/cjs/{Flex-3c1d155f.js → Flex-3afbbffa.js} +8 -8
  329. package/cjs/{Flex-3c1d155f.js.map → Flex-3afbbffa.js.map} +1 -1
  330. package/cjs/{Floating-543a7b40.js → Floating-afc50077.js} +3 -3
  331. package/cjs/{Floating-543a7b40.js.map → Floating-afc50077.js.map} +1 -1
  332. package/cjs/{FocusTrap-0b8c7406.js → FocusTrap-b921a38b.js} +5 -5
  333. package/cjs/{FocusTrap-0b8c7406.js.map → FocusTrap-b921a38b.js.map} +1 -1
  334. package/cjs/{FormControlUtils-17832e47.js → FormControlUtils-f100aee2.js} +5 -5
  335. package/cjs/{FormControlUtils-17832e47.js.map → FormControlUtils-f100aee2.js.map} +1 -1
  336. package/cjs/{Heading-9e2e484f.js → Heading-59094467.js} +13 -13
  337. package/cjs/{Heading-9e2e484f.js.map → Heading-59094467.js.map} +1 -1
  338. package/cjs/{HiddenAccessible-a1be40c8.js → HiddenAccessible-4fa29af3.js} +3 -3
  339. package/cjs/{HiddenAccessible-a1be40c8.js.map → HiddenAccessible-4fa29af3.js.map} +1 -1
  340. package/cjs/{HighlightText-44c34d0f.js → HighlightText-e7ccf04d.js} +3 -3
  341. package/cjs/{HighlightText-44c34d0f.js.map → HighlightText-e7ccf04d.js.map} +1 -1
  342. package/cjs/{Icon-8499d3bb.js → Icon-a49ebedd.js} +25 -25
  343. package/cjs/{Icon-8499d3bb.js.map → Icon-a49ebedd.js.map} +1 -1
  344. package/cjs/{Indexer-45713b8a.js → Indexer-6f294388.js} +16 -16
  345. package/cjs/{Indexer-45713b8a.js.map → Indexer-6f294388.js.map} +1 -1
  346. package/cjs/{InlineHelpSource-50a43912.js → InlineHelpSource-10515ec0.js} +3 -3
  347. package/cjs/{InlineHelpSource-50a43912.js.map → InlineHelpSource-10515ec0.js.map} +1 -1
  348. package/cjs/{Link-353cc8fa.js → Link-9d6e338c.js} +8 -8
  349. package/cjs/{Link-353cc8fa.js.map → Link-9d6e338c.js.map} +1 -1
  350. package/cjs/{List-2ab9faf6.js → List-4cbe8669.js} +23 -23
  351. package/cjs/{List-2ab9faf6.js.map → List-4cbe8669.js.map} +1 -1
  352. package/cjs/{ListItemTextLayout-61648289.js → ListItemTextLayout-d11b0d7d.js} +13 -13
  353. package/cjs/{ListItemTextLayout-61648289.js.map → ListItemTextLayout-d11b0d7d.js.map} +1 -1
  354. package/cjs/{ListView-1a38e148.js → ListView-ebd0c084.js} +3 -3
  355. package/cjs/{ListView-1a38e148.js.map → ListView-ebd0c084.js.map} +1 -1
  356. package/cjs/{LoadMoreCollection-ce9bcc14.js → LoadMoreCollection-800c5624.js} +3 -3
  357. package/cjs/{LoadMoreCollection-ce9bcc14.js.map → LoadMoreCollection-800c5624.js.map} +1 -1
  358. package/cjs/{Menu-7021c0be.js → Menu-69f53409.js} +6 -6
  359. package/cjs/{Menu-7021c0be.js.map → Menu-69f53409.js.map} +1 -1
  360. package/cjs/{MenuDivider-d4843040.js → MenuDivider-dcf4a12b.js} +4 -4
  361. package/cjs/{MenuDivider-d4843040.js.map → MenuDivider-dcf4a12b.js.map} +1 -1
  362. package/cjs/{MenuItem-c3779680.js → MenuItem-c5a66d75.js} +19 -19
  363. package/cjs/{MenuItem-c3779680.js.map → MenuItem-c5a66d75.js.map} +1 -1
  364. package/cjs/{Message.types-5c8f1be2.js → Message.types-e76db407.js} +2 -2
  365. package/cjs/{Message.types-5c8f1be2.js.map → Message.types-e76db407.js.map} +1 -1
  366. package/cjs/{MessageCloseButton-e90c2d37.js → MessageCloseButton-9801c85a.js} +9 -9
  367. package/cjs/{MessageCloseButton-e90c2d37.js.map → MessageCloseButton-9801c85a.js.map} +1 -1
  368. package/cjs/{MessageDetail-3e18947e.js → MessageDetail-37c54079.js} +7 -7
  369. package/cjs/{MessageDetail-3e18947e.js.map → MessageDetail-37c54079.js.map} +1 -1
  370. package/cjs/{MessageFormattingUtils-80cc74a6.js → MessageFormattingUtils-61ee2965.js} +4 -4
  371. package/cjs/{MessageFormattingUtils-80cc74a6.js.map → MessageFormattingUtils-61ee2965.js.map} +1 -1
  372. package/cjs/{MessageLayer-4e959a67.js → MessageLayer-216dac9e.js} +11 -11
  373. package/cjs/{MessageLayer-4e959a67.js.map → MessageLayer-216dac9e.js.map} +1 -1
  374. package/cjs/{MessageStartIcon-89755479.js → MessageStartIcon-1ab3d2a7.js} +11 -11
  375. package/cjs/{MessageStartIcon-89755479.js.map → MessageStartIcon-1ab3d2a7.js.map} +1 -1
  376. package/cjs/{MessageSummary-8e8d93ad.js → MessageSummary-cb1056b6.js} +7 -7
  377. package/cjs/{MessageSummary-8e8d93ad.js.map → MessageSummary-cb1056b6.js.map} +1 -1
  378. package/cjs/{MessageTimestamp-35ff3932.js → MessageTimestamp-6c78b977.js} +5 -5
  379. package/cjs/{MessageTimestamp-35ff3932.js.map → MessageTimestamp-6c78b977.js.map} +1 -1
  380. package/cjs/{MessageToast-183f4b0a.js → MessageToast-e70cfeb3.js} +9 -9
  381. package/cjs/{MessageToast-183f4b0a.js.map → MessageToast-e70cfeb3.js.map} +1 -1
  382. package/cjs/{MessageUtils-9f6976ca.js → MessageUtils-329ed0ad.js} +3 -3
  383. package/cjs/{MessageUtils-9f6976ca.js.map → MessageUtils-329ed0ad.js.map} +1 -1
  384. package/cjs/{MessagesManager-dc384390.js → MessagesManager-4a1d6a6e.js} +4 -4
  385. package/cjs/{MessagesManager-dc384390.js.map → MessagesManager-4a1d6a6e.js.map} +1 -1
  386. package/cjs/{MeterCircle-f319ddc0.js → MeterCircle-2b4e0b82.js} +50 -50
  387. package/cjs/{MeterCircle-f319ddc0.js.map → MeterCircle-2b4e0b82.js.map} +1 -1
  388. package/cjs/{Modal-52f2aae3.js → Modal-5fe3d69e.js} +6 -6
  389. package/cjs/{Modal-52f2aae3.js.map → Modal-5fe3d69e.js.map} +1 -1
  390. package/cjs/{NumberInputText-0e652062.js → NumberInputText-e15fe165.js} +7 -7
  391. package/cjs/{NumberInputText-0e652062.js.map → NumberInputText-e15fe165.js.map} +1 -1
  392. package/cjs/PRIVATE_Collection.js +2 -2
  393. package/cjs/PRIVATE_List.js +23 -23
  394. package/cjs/PRIVATE_Message.js +41 -41
  395. package/cjs/PRIVATE_Message.js.map +1 -1
  396. package/cjs/PRIVATE_MessageLayer.js +12 -12
  397. package/cjs/PRIVATE_Meter.js +2 -2
  398. package/cjs/PRIVATE_SelectCommon.js +54 -54
  399. package/cjs/PRIVATE_SelectCommon.js.map +1 -1
  400. package/cjs/PRIVATE_TransitionGroup.js +1 -1
  401. package/cjs/PRIVATE_VirtualizedCollection.js +3 -3
  402. package/cjs/{ReadonlyTextFieldInput-ac526b40.js → ReadonlyTextFieldInput-c328835f.js} +13 -13
  403. package/cjs/{ReadonlyTextFieldInput-ac526b40.js.map → ReadonlyTextFieldInput-c328835f.js.map} +1 -1
  404. package/cjs/{SelectMenuItem-8b4d978c.js → SelectMenuItem-ebd8765f.js} +5 -5
  405. package/cjs/{SelectMenuItem-8b4d978c.js.map → SelectMenuItem-ebd8765f.js.map} +1 -1
  406. package/cjs/{SelectMultiple-23751744.js → SelectMultiple-8556e2fe.js} +8 -8
  407. package/cjs/{SelectMultiple-23751744.js.map → SelectMultiple-8556e2fe.js.map} +1 -1
  408. package/cjs/{SelectSingle-fb8692c8.js → SelectSingle-e3256ab0.js} +4 -4
  409. package/cjs/{SelectSingle-fb8692c8.js.map → SelectSingle-e3256ab0.js.map} +1 -1
  410. package/cjs/{Skeleton-6265b202.js → Skeleton-a3da3a6e.js} +5 -5
  411. package/cjs/{Skeleton-6265b202.js.map → Skeleton-a3da3a6e.js.map} +1 -1
  412. package/cjs/{Spacer-b25a14ce.js → Spacer-09202fe8.js} +4 -4
  413. package/cjs/{Spacer-b25a14ce.js.map → Spacer-09202fe8.js.map} +1 -1
  414. package/cjs/{SplitMenuButton-26087160.js → SplitMenuButton-d4d6c908.js} +14 -14
  415. package/cjs/{SplitMenuButton-26087160.js.map → SplitMenuButton-d4d6c908.js.map} +1 -1
  416. package/cjs/{Text-1afd9ceb.js → Text-17f30573.js} +28 -28
  417. package/cjs/{Text-1afd9ceb.js.map → Text-17f30573.js.map} +1 -1
  418. package/cjs/{TextArea-5d470fc8.js → TextArea-d66ca95c.js} +8 -8
  419. package/cjs/{TextArea-5d470fc8.js.map → TextArea-d66ca95c.js.map} +1 -1
  420. package/cjs/{TextAreaAutosize-97916b75.js → TextAreaAutosize-bcc62f1e.js} +5 -5
  421. package/cjs/{TextAreaAutosize-97916b75.js.map → TextAreaAutosize-bcc62f1e.js.map} +1 -1
  422. package/cjs/{TextFieldInput-a96befea.js → TextFieldInput-b7429629.js} +33 -33
  423. package/cjs/{TextFieldInput-a96befea.js.map → TextFieldInput-b7429629.js.map} +1 -1
  424. package/cjs/UNSAFE_AspectRatio.js +8 -8
  425. package/cjs/UNSAFE_AspectRatio.js.map +1 -1
  426. package/cjs/UNSAFE_Avatar.js +11 -11
  427. package/cjs/UNSAFE_Avatar.js.map +1 -1
  428. package/cjs/UNSAFE_Badge.js +3 -3
  429. package/cjs/UNSAFE_BaseButton.js +9 -9
  430. package/cjs/UNSAFE_Button.js +10 -10
  431. package/cjs/UNSAFE_Center.js +11 -11
  432. package/cjs/UNSAFE_Chip.js +3 -3
  433. package/cjs/UNSAFE_Collapsible.js +26 -26
  434. package/cjs/UNSAFE_Collapsible.js.map +1 -1
  435. package/cjs/UNSAFE_Collection.js +1 -1
  436. package/cjs/UNSAFE_ComponentMessage.js +33 -33
  437. package/cjs/UNSAFE_Divider.js +7 -7
  438. package/cjs/UNSAFE_EmptyList.js +1 -1
  439. package/cjs/UNSAFE_Environment.js +1 -1
  440. package/cjs/UNSAFE_FilePicker.js +14 -14
  441. package/cjs/UNSAFE_Flex.js +11 -11
  442. package/cjs/UNSAFE_Floating.js +3 -3
  443. package/cjs/UNSAFE_FocusTrap.js +6 -6
  444. package/cjs/UNSAFE_Grid.js +9 -9
  445. package/cjs/UNSAFE_Heading.js +9 -9
  446. package/cjs/UNSAFE_HiddenAccessible.js +2 -2
  447. package/cjs/UNSAFE_HighlightText.js +2 -2
  448. package/cjs/UNSAFE_Icon.js +7 -7
  449. package/cjs/UNSAFE_Icons.js +8 -8
  450. package/cjs/UNSAFE_Indexer.js +16 -16
  451. package/cjs/UNSAFE_InputPassword.js +40 -40
  452. package/cjs/UNSAFE_InputText.js +39 -39
  453. package/cjs/UNSAFE_Label.js +16 -16
  454. package/cjs/UNSAFE_Label.js.map +1 -1
  455. package/cjs/UNSAFE_LabelValueLayout.js +20 -20
  456. package/cjs/UNSAFE_LabelValueLayout.js.map +1 -1
  457. package/cjs/UNSAFE_Layer.js +1 -1
  458. package/cjs/UNSAFE_Link.js +3 -3
  459. package/cjs/UNSAFE_ListItemLayout.js +10 -10
  460. package/cjs/UNSAFE_ListView.js +24 -24
  461. package/cjs/UNSAFE_LiveRegion.js +2 -2
  462. package/cjs/UNSAFE_LiveRegion.js.map +1 -1
  463. package/cjs/UNSAFE_LoadMoreCollection.js +3 -3
  464. package/cjs/UNSAFE_Menu.js +15 -15
  465. package/cjs/UNSAFE_MessageBanner.js +30 -30
  466. package/cjs/UNSAFE_MessageToast.js +33 -33
  467. package/cjs/UNSAFE_MeterBar.js +49 -49
  468. package/cjs/UNSAFE_MeterBar.js.map +1 -1
  469. package/cjs/UNSAFE_MeterCircle.js +7 -7
  470. package/cjs/UNSAFE_Modal.js +7 -7
  471. package/cjs/UNSAFE_NumberInputText.js +39 -39
  472. package/cjs/UNSAFE_PrefixSuffix.js +10 -10
  473. package/cjs/UNSAFE_PrefixSuffix.js.map +1 -1
  474. package/cjs/UNSAFE_ProgressBar.js +9 -9
  475. package/cjs/UNSAFE_ProgressBar.js.map +1 -1
  476. package/cjs/UNSAFE_ProgressCircle.js +9 -9
  477. package/cjs/UNSAFE_ProgressCircle.js.map +1 -1
  478. package/cjs/UNSAFE_RatingGauge.js +26 -26
  479. package/cjs/UNSAFE_RatingGauge.js.map +1 -1
  480. package/cjs/UNSAFE_SelectMultiple.js +47 -47
  481. package/cjs/UNSAFE_SelectSingle.js +46 -46
  482. package/cjs/UNSAFE_Selector.js +22 -22
  483. package/cjs/UNSAFE_Skeleton.js +8 -8
  484. package/cjs/UNSAFE_Spacer.js +10 -10
  485. package/cjs/UNSAFE_SplitMenuButton.js +22 -22
  486. package/cjs/UNSAFE_Text.js +8 -8
  487. package/cjs/UNSAFE_TextArea.js +39 -39
  488. package/cjs/UNSAFE_TextAreaAutosize.js +40 -40
  489. package/cjs/UNSAFE_TextField.js +35 -35
  490. package/cjs/UNSAFE_TextField.js.map +1 -1
  491. package/cjs/UNSAFE_ThemedIcons.js +9 -9
  492. package/cjs/UNSAFE_UserAssistance.js +41 -41
  493. package/cjs/UNSAFE_UserAssistance.js.map +1 -1
  494. package/cjs/UNSAFE_View.js +9 -9
  495. package/cjs/UNSAFE_VirtualizedListView.js +24 -24
  496. package/cjs/UNSAFE_WindowOverlay.js +1 -1
  497. package/cjs/{VirtualizedCollection-d2afe62f.js → VirtualizedCollection-5364d049.js} +3 -3
  498. package/cjs/{VirtualizedCollection-d2afe62f.js.map → VirtualizedCollection-5364d049.js.map} +1 -1
  499. package/cjs/{VirtualizedListView-27d825ca.js → VirtualizedListView-8b4a189a.js} +3 -3
  500. package/cjs/{VirtualizedListView-27d825ca.js.map → VirtualizedListView-8b4a189a.js.map} +1 -1
  501. package/cjs/{_curry1-2ca42ac1.js → _curry1-929fa479.js} +2 -2
  502. package/cjs/{_curry1-2ca42ac1.js.map → _curry1-929fa479.js.map} +1 -1
  503. package/cjs/{_curry2-0ce9dfd3.js → _curry2-ad418b8f.js} +3 -3
  504. package/cjs/{_curry2-0ce9dfd3.js.map → _curry2-ad418b8f.js.map} +1 -1
  505. package/cjs/{_curry3-20134a4d.js → _curry3-de547f40.js} +4 -4
  506. package/cjs/{_curry3-20134a4d.js.map → _curry3-de547f40.js.map} +1 -1
  507. package/cjs/{_has-44378853.js → _has-bd83a5af.js} +3 -3
  508. package/cjs/{_has-44378853.js.map → _has-bd83a5af.js.map} +1 -1
  509. package/cjs/{classNames-c23b5e17.js → classNames-74b1faa1.js} +2 -2
  510. package/cjs/{classNames-c23b5e17.js.map → classNames-74b1faa1.js.map} +1 -1
  511. package/cjs/{clientHints-49087a7e.js → clientHints-f08e6824.js} +2 -2
  512. package/cjs/{clientHints-49087a7e.js.map → clientHints-f08e6824.js.map} +1 -1
  513. package/cjs/{flexbox-4478de27.js → flexbox-1749f9a9.js} +10 -10
  514. package/cjs/{flexbox-4478de27.js.map → flexbox-1749f9a9.js.map} +1 -1
  515. package/cjs/{flexitem-113e0240.js → flexitem-f0be1fa1.js} +10 -10
  516. package/cjs/{flexitem-113e0240.js.map → flexitem-f0be1fa1.js.map} +1 -1
  517. package/cjs/hooks/PRIVATE_useCollectionFocusRing.js +1 -1
  518. package/cjs/hooks/PRIVATE_useCurrentKey.js +1 -1
  519. package/cjs/hooks/PRIVATE_useDvtMeterEvents.js +6 -6
  520. package/cjs/hooks/PRIVATE_useItemAction.js +1 -1
  521. package/cjs/hooks/PRIVATE_useMessagesFocusManager.js +1 -1
  522. package/cjs/hooks/PRIVATE_useSelection.js +1 -1
  523. package/cjs/hooks/PRIVATE_useSingleSelection.js +2 -2
  524. package/cjs/hooks/PRIVATE_useTabbableModeSet.js +1 -1
  525. package/cjs/hooks/UNSAFE_useActionable.js +1 -1
  526. package/cjs/hooks/UNSAFE_useActive.js +1 -1
  527. package/cjs/hooks/UNSAFE_useAnimation.js +3 -3
  528. package/cjs/hooks/UNSAFE_useBreakpointValues.js +1 -1
  529. package/cjs/hooks/UNSAFE_useBreakpoints.js +1 -1
  530. package/cjs/hooks/UNSAFE_useClearIcon.js +1 -1
  531. package/cjs/hooks/UNSAFE_useColorScheme.js +1 -1
  532. package/cjs/hooks/UNSAFE_useContainerBreakpointValues.js +1 -1
  533. package/cjs/hooks/UNSAFE_useContainerBreakpoints.js +1 -1
  534. package/cjs/hooks/UNSAFE_useCurrentValueReducer.js +1 -1
  535. package/cjs/hooks/UNSAFE_useDebounce.js +1 -1
  536. package/cjs/hooks/UNSAFE_useFloating.js +2 -2
  537. package/cjs/hooks/UNSAFE_useFocus.js +1 -1
  538. package/cjs/hooks/UNSAFE_useFocusWithin.js +2 -2
  539. package/cjs/hooks/UNSAFE_useFocusableTextField.js +3 -3
  540. package/cjs/hooks/UNSAFE_useFormContext.js +1 -1
  541. package/cjs/hooks/UNSAFE_useFormFieldContext.js +1 -1
  542. package/cjs/hooks/UNSAFE_useFormVariantContext.js +1 -1
  543. package/cjs/hooks/UNSAFE_useHover.js +1 -1
  544. package/cjs/hooks/UNSAFE_useId.js +1 -1
  545. package/cjs/hooks/UNSAFE_useLengthFilter.js +1 -1
  546. package/cjs/hooks/UNSAFE_useLoadingIndicatorTimer.js +1 -1
  547. package/cjs/hooks/UNSAFE_useLongPress.js +1 -1
  548. package/cjs/hooks/UNSAFE_useMessagesContext.js +1 -1
  549. package/cjs/hooks/UNSAFE_useOutsideClick.js +1 -1
  550. package/cjs/hooks/UNSAFE_usePan.js +1 -1
  551. package/cjs/hooks/UNSAFE_usePrefixSuffix.js +2 -2
  552. package/cjs/hooks/UNSAFE_usePress.js +1 -1
  553. package/cjs/hooks/UNSAFE_useScale.js +1 -1
  554. package/cjs/hooks/UNSAFE_useSwipe.js +1 -1
  555. package/cjs/hooks/UNSAFE_useTabbableMode.js +1 -1
  556. package/cjs/hooks/UNSAFE_useTap.js +1 -1
  557. package/cjs/hooks/UNSAFE_useTextField.js +1 -1
  558. package/cjs/hooks/UNSAFE_useTextFieldInputHandlers.js +2 -2
  559. package/cjs/hooks/UNSAFE_useTheme.js +1 -1
  560. package/cjs/hooks/UNSAFE_useTimer.js +1 -1
  561. package/cjs/hooks/UNSAFE_useToggle.js +1 -1
  562. package/cjs/hooks/UNSAFE_useTooltip.js +10 -10
  563. package/cjs/hooks/UNSAFE_useTooltip.js.map +1 -1
  564. package/cjs/hooks/UNSAFE_useTouch.js +1 -1
  565. package/cjs/hooks/UNSAFE_useTranslationBundle.js +1 -1
  566. package/cjs/hooks/UNSAFE_useUncontrolledState.js +1 -1
  567. package/cjs/hooks/UNSAFE_useUser.js +1 -1
  568. package/cjs/hooks/UNSAFE_useViewportIntersect.js +1 -1
  569. package/cjs/{index-fa18fd05.js → index-3d1af0d6.js} +3 -3
  570. package/cjs/{index-fa18fd05.js.map → index-3d1af0d6.js.map} +1 -1
  571. package/cjs/{index-26cc7695.js → index-61432a7c.js} +2 -2
  572. package/cjs/{index-26cc7695.js.map → index-61432a7c.js.map} +1 -1
  573. package/cjs/{index-1b96b86a.js → index-83e44763.js} +3 -3
  574. package/cjs/{index-1b96b86a.js.map → index-83e44763.js.map} +1 -1
  575. package/cjs/{keys-f8953f38.js → keys-aa6a47f6.js} +4 -4
  576. package/cjs/{keys-f8953f38.js.map → keys-aa6a47f6.js.map} +1 -1
  577. package/cjs/{listViewSelectionTests-dec29806.js → listViewSelectionTests-99bed972.js} +4 -4
  578. package/cjs/{listViewSelectionTests-dec29806.js.map → listViewSelectionTests-99bed972.js.map} +1 -1
  579. package/cjs/{listViewTabbableModeTests-50c3a770.js → listViewTabbableModeTests-721aa316.js} +4 -4
  580. package/cjs/{listViewTabbableModeTests-50c3a770.js.map → listViewTabbableModeTests-721aa316.js.map} +1 -1
  581. package/cjs/{listViewTestFixtures-4f67a8b4.js → listViewTestFixtures-37a6f8c3.js} +2 -2
  582. package/cjs/{listViewTestFixtures-4f67a8b4.js.map → listViewTestFixtures-37a6f8c3.js.map} +1 -1
  583. package/cjs/{menuTestsUtils-65ffd0ea.js → menuTestsUtils-f80984f6.js} +2 -2
  584. package/cjs/{menuTestsUtils-65ffd0ea.js.map → menuTestsUtils-f80984f6.js.map} +1 -1
  585. package/cjs/resources/nls/ar/bundle.js +1 -1
  586. package/cjs/resources/nls/ar-XB/bundle.js +1 -1
  587. package/cjs/resources/nls/bg/bundle.js +1 -1
  588. package/cjs/resources/nls/bs/bundle.js +1 -1
  589. package/cjs/resources/nls/bs-Cyrl/bundle.js +1 -1
  590. package/cjs/resources/nls/bundle.js +1 -1
  591. package/cjs/resources/nls/cs/bundle.js +1 -1
  592. package/cjs/resources/nls/da/bundle.js +1 -1
  593. package/cjs/resources/nls/de/bundle.js +1 -1
  594. package/cjs/resources/nls/el/bundle.js +1 -1
  595. package/cjs/resources/nls/en/bundle.js +1 -1
  596. package/cjs/resources/nls/en-XA/bundle.js +1 -1
  597. package/cjs/resources/nls/en-XC/bundle.js +1 -1
  598. package/cjs/resources/nls/es/bundle.js +1 -1
  599. package/cjs/resources/nls/et/bundle.js +1 -1
  600. package/cjs/resources/nls/fi/bundle.js +1 -1
  601. package/cjs/resources/nls/fr/bundle.js +1 -1
  602. package/cjs/resources/nls/fr-CA/bundle.js +1 -1
  603. package/cjs/resources/nls/he/bundle.js +1 -1
  604. package/cjs/resources/nls/hr/bundle.js +1 -1
  605. package/cjs/resources/nls/hu/bundle.js +1 -1
  606. package/cjs/resources/nls/is/bundle.js +1 -1
  607. package/cjs/resources/nls/it/bundle.js +1 -1
  608. package/cjs/resources/nls/ja/bundle.js +1 -1
  609. package/cjs/resources/nls/ko/bundle.js +1 -1
  610. package/cjs/resources/nls/lt/bundle.js +1 -1
  611. package/cjs/resources/nls/lv/bundle.js +1 -1
  612. package/cjs/resources/nls/ms/bundle.js +1 -1
  613. package/cjs/resources/nls/nl/bundle.js +1 -1
  614. package/cjs/resources/nls/no/bundle.js +1 -1
  615. package/cjs/resources/nls/pl/bundle.js +1 -1
  616. package/cjs/resources/nls/pt/bundle.js +1 -1
  617. package/cjs/resources/nls/pt-PT/bundle.js +1 -1
  618. package/cjs/resources/nls/ro/bundle.js +1 -1
  619. package/cjs/resources/nls/ru/bundle.js +1 -1
  620. package/cjs/resources/nls/sk/bundle.js +1 -1
  621. package/cjs/resources/nls/sl/bundle.js +1 -1
  622. package/cjs/resources/nls/sr/bundle.js +1 -1
  623. package/cjs/resources/nls/sr-Latn/bundle.js +1 -1
  624. package/cjs/resources/nls/supportedLocales.js +1 -1
  625. package/cjs/resources/nls/sv/bundle.js +1 -1
  626. package/cjs/resources/nls/th/bundle.js +1 -1
  627. package/cjs/resources/nls/tr/bundle.js +1 -1
  628. package/cjs/resources/nls/uk/bundle.js +1 -1
  629. package/cjs/resources/nls/vi/bundle.js +1 -1
  630. package/cjs/resources/nls/zh-Hans/bundle.js +1 -1
  631. package/cjs/resources/nls/zh-Hant/bundle.js +1 -1
  632. package/cjs/{stringUtils-7911a543.js → stringUtils-f58c4e50.js} +2 -2
  633. package/cjs/{stringUtils-7911a543.js.map → stringUtils-f58c4e50.js.map} +1 -1
  634. package/cjs/{testHelpers-b383f2e1.js → testHelpers-eb0845df.js} +2 -2
  635. package/cjs/{testHelpers-b383f2e1.js.map → testHelpers-eb0845df.js.map} +1 -1
  636. package/cjs/translationBundle.js +1 -1
  637. package/cjs/{tslib.es6-de390ce8.js → tslib.es6-f2a4e02f.js} +2 -2
  638. package/cjs/{tslib.es6-de390ce8.js.map → tslib.es6-f2a4e02f.js.map} +1 -1
  639. package/cjs/{useAnimation-a037a900.js → useAnimation-49f08a98.js} +3 -3
  640. package/cjs/{useAnimation-a037a900.js.map → useAnimation-49f08a98.js.map} +1 -1
  641. package/cjs/{useFocusWithin-3562eae5.js → useFocusWithin-05b47c24.js} +2 -2
  642. package/cjs/{useFocusWithin-3562eae5.js.map → useFocusWithin-05b47c24.js.map} +1 -1
  643. package/cjs/{useSingleSelection-93c4f7d2.js → useSingleSelection-7d25635d.js} +2 -2
  644. package/cjs/{useSingleSelection-93c4f7d2.js.map → useSingleSelection-7d25635d.js.map} +1 -1
  645. package/cjs/utils/PRIVATE_clientHints.js +2 -2
  646. package/cjs/utils/PRIVATE_collectionUtils.js +1 -1
  647. package/cjs/utils/PRIVATE_dvtTestUtils.js +1 -1
  648. package/cjs/utils/PRIVATE_floatingUtils.js +1 -1
  649. package/cjs/utils/PRIVATE_meterUtils.js +1 -1
  650. package/cjs/utils/PRIVATE_refUtils.js +1 -1
  651. package/cjs/utils/PRIVATE_tabbableUtils.js +4 -4
  652. package/cjs/utils/PRIVATE_timer.js +1 -1
  653. package/cjs/utils/UNSAFE_arrayUtils.js +1 -1
  654. package/cjs/utils/UNSAFE_attributeUtils.js +1 -1
  655. package/cjs/utils/UNSAFE_classNames.js +2 -2
  656. package/cjs/utils/UNSAFE_componentUtils.js +1 -1
  657. package/cjs/utils/UNSAFE_dataProvider.js +1 -1
  658. package/cjs/utils/UNSAFE_filePickerUtils.js +1 -1
  659. package/cjs/utils/UNSAFE_getLocale.js +1 -1
  660. package/cjs/utils/UNSAFE_interpolations/aria.js +1 -1
  661. package/cjs/utils/UNSAFE_interpolations/borders.js +1 -1
  662. package/cjs/utils/UNSAFE_interpolations/boxalignment.js +19 -19
  663. package/cjs/utils/UNSAFE_interpolations/boxalignment.js.map +1 -1
  664. package/cjs/utils/UNSAFE_interpolations/colors.js +1 -1
  665. package/cjs/utils/UNSAFE_interpolations/dimensions.js +2 -2
  666. package/cjs/utils/UNSAFE_interpolations/flexbox.js +5 -5
  667. package/cjs/utils/UNSAFE_interpolations/flexitem.js +5 -5
  668. package/cjs/utils/UNSAFE_interpolations/grid.js +1 -1
  669. package/cjs/utils/UNSAFE_interpolations/griditem.js +1 -1
  670. package/cjs/utils/UNSAFE_interpolations/padding.js +1 -1
  671. package/cjs/utils/UNSAFE_interpolations/text.js +7 -7
  672. package/cjs/utils/UNSAFE_interpolations/text.js.map +1 -1
  673. package/cjs/utils/UNSAFE_keys.js +1 -1
  674. package/cjs/utils/UNSAFE_lengthFilter.js +1 -1
  675. package/cjs/utils/UNSAFE_logger.js +3 -3
  676. package/cjs/utils/UNSAFE_matchTranslationBundle.js +1 -1
  677. package/cjs/utils/UNSAFE_mergeInterpolations.js +6 -6
  678. package/cjs/utils/UNSAFE_mergeProps.js +1 -1
  679. package/cjs/utils/UNSAFE_meterTypes.js +1 -1
  680. package/cjs/utils/UNSAFE_roles.js +1 -1
  681. package/cjs/utils/UNSAFE_selectUtils.js +1 -1
  682. package/cjs/utils/UNSAFE_size.js +1 -1
  683. package/cjs/utils/UNSAFE_soundUtils.js +1 -1
  684. package/cjs/utils/UNSAFE_stringUtils.js +2 -2
  685. package/cjs/utils/UNSAFE_typeUtils.js +1 -1
  686. package/cjs/utils/UNSAFE_units.js +2 -2
  687. package/cjs/utils/UNSAFE_valueUpdateDetail.js +1 -1
  688. package/es/{ClearIcon-e16a82c6.js → ClearIcon-ed6494d1.js} +3 -3
  689. package/es/{ClearIcon-e16a82c6.js.map → ClearIcon-ed6494d1.js.map} +1 -1
  690. package/es/{LoadMoreCollection-c4f1754c.js → LoadMoreCollection-cf7aad2c.js} +2 -2
  691. package/es/{LoadMoreCollection-c4f1754c.js.map → LoadMoreCollection-cf7aad2c.js.map} +1 -1
  692. package/es/PRIVATE_Collection.js +1 -1
  693. package/es/PRIVATE_List.css +15 -15
  694. package/es/PRIVATE_List.js +24 -24
  695. package/es/PRIVATE_List.js.map +1 -1
  696. package/es/PRIVATE_Message.css +27 -27
  697. package/es/PRIVATE_Message.js +35 -35
  698. package/es/PRIVATE_Message.js.map +1 -1
  699. package/es/PRIVATE_MessageLayer.css +7 -7
  700. package/es/PRIVATE_MessageLayer.js +14 -14
  701. package/es/PRIVATE_MessageLayer.js.map +1 -1
  702. package/es/PRIVATE_Meter.js +2 -2
  703. package/es/PRIVATE_SelectCommon.css +13 -13
  704. package/es/PRIVATE_SelectCommon.js +22 -22
  705. package/es/PRIVATE_SelectCommon.js.map +1 -1
  706. package/es/PRIVATE_TransitionGroup.js +1 -1
  707. package/es/PRIVATE_VirtualizedCollection.js +1 -1
  708. package/es/UNSAFE_AspectRatio.css +1 -1
  709. package/es/UNSAFE_AspectRatio.js +7 -7
  710. package/es/UNSAFE_AspectRatio.js.map +1 -1
  711. package/es/UNSAFE_Avatar.css +8 -8
  712. package/es/UNSAFE_Avatar.js +10 -10
  713. package/es/UNSAFE_Avatar.js.map +1 -1
  714. package/es/UNSAFE_Badge.css +13 -13
  715. package/es/UNSAFE_Badge.js +14 -14
  716. package/es/UNSAFE_Badge.js.map +1 -1
  717. package/es/UNSAFE_BaseButton.css +15 -15
  718. package/es/UNSAFE_BaseButton.js +21 -21
  719. package/es/UNSAFE_BaseButton.js.map +1 -1
  720. package/es/UNSAFE_Button.css +8 -8
  721. package/es/UNSAFE_Button.js +14 -14
  722. package/es/UNSAFE_Button.js.map +1 -1
  723. package/es/UNSAFE_Center.js +7 -7
  724. package/es/UNSAFE_Chip.css +7 -7
  725. package/es/UNSAFE_Chip.js +8 -8
  726. package/es/UNSAFE_Chip.js.map +1 -1
  727. package/es/UNSAFE_Collapsible.css +8 -8
  728. package/es/UNSAFE_Collapsible.js +16 -16
  729. package/es/UNSAFE_Collapsible.js.map +1 -1
  730. package/es/UNSAFE_Collection.js +1 -1
  731. package/es/UNSAFE_ComponentMessage.css +2 -2
  732. package/es/UNSAFE_ComponentMessage.js +10 -10
  733. package/es/UNSAFE_ComponentMessage.js.map +1 -1
  734. package/es/UNSAFE_Divider.css +1 -1
  735. package/es/UNSAFE_Divider.js +6 -6
  736. package/es/UNSAFE_EmptyList.js +1 -1
  737. package/es/UNSAFE_Environment.js +1 -1
  738. package/es/UNSAFE_FilePicker.css +6 -6
  739. package/es/UNSAFE_FilePicker.js +13 -13
  740. package/es/UNSAFE_FilePicker.js.map +1 -1
  741. package/es/UNSAFE_Flex.css +2 -2
  742. package/es/UNSAFE_Flex.js +9 -9
  743. package/es/UNSAFE_Flex.js.map +1 -1
  744. package/es/UNSAFE_Floating.js +2 -2
  745. package/es/UNSAFE_FocusTrap.css +2 -2
  746. package/es/UNSAFE_FocusTrap.js +6 -6
  747. package/es/UNSAFE_FocusTrap.js.map +1 -1
  748. package/es/UNSAFE_Grid.css +1 -1
  749. package/es/UNSAFE_Grid.js +8 -8
  750. package/es/UNSAFE_Heading.css +9 -9
  751. package/es/UNSAFE_Heading.js +16 -16
  752. package/es/UNSAFE_Heading.js.map +1 -1
  753. package/es/UNSAFE_HiddenAccessible.css +1 -1
  754. package/es/UNSAFE_HiddenAccessible.js +2 -2
  755. package/es/UNSAFE_HiddenAccessible.js.map +1 -1
  756. package/es/UNSAFE_HighlightText.css +1 -1
  757. package/es/UNSAFE_HighlightText.js +2 -2
  758. package/es/UNSAFE_Icon.css +21 -21
  759. package/es/UNSAFE_Icon.js +24 -24
  760. package/es/UNSAFE_Icon.js.map +1 -1
  761. package/es/UNSAFE_Icons.js +3 -3
  762. package/es/UNSAFE_Indexer.css +7 -7
  763. package/es/UNSAFE_Indexer.js +15 -15
  764. package/es/UNSAFE_Indexer.js.map +1 -1
  765. package/es/UNSAFE_InputPassword.css +1 -1
  766. package/es/UNSAFE_InputPassword.js +10 -10
  767. package/es/UNSAFE_InputText.css +1 -1
  768. package/es/UNSAFE_InputText.js +9 -9
  769. package/es/UNSAFE_Label.css +13 -13
  770. package/es/UNSAFE_Label.js +15 -15
  771. package/es/UNSAFE_Label.js.map +1 -1
  772. package/es/UNSAFE_LabelValueLayout.css +9 -9
  773. package/es/UNSAFE_LabelValueLayout.js +16 -16
  774. package/es/UNSAFE_LabelValueLayout.js.map +1 -1
  775. package/es/UNSAFE_Layer.js +1 -1
  776. package/es/UNSAFE_Link.css +5 -5
  777. package/es/UNSAFE_Link.js +6 -6
  778. package/es/UNSAFE_Link.js.map +1 -1
  779. package/es/UNSAFE_ListItemLayout.css +9 -9
  780. package/es/UNSAFE_ListItemLayout.js +16 -16
  781. package/es/UNSAFE_ListItemLayout.js.map +1 -1
  782. package/es/UNSAFE_ListView.js +9 -9
  783. package/es/UNSAFE_LiveRegion.css +1 -1
  784. package/es/UNSAFE_LiveRegion.js +2 -2
  785. package/es/UNSAFE_LiveRegion.js.map +1 -1
  786. package/es/UNSAFE_LoadMoreCollection.js +2 -2
  787. package/es/UNSAFE_Menu.css +17 -17
  788. package/es/UNSAFE_Menu.js +24 -24
  789. package/es/UNSAFE_Menu.js.map +1 -1
  790. package/es/UNSAFE_MessageBanner.js +8 -8
  791. package/es/UNSAFE_MessageToast.css +1 -1
  792. package/es/UNSAFE_MessageToast.js +9 -9
  793. package/es/UNSAFE_MeterBar.css +43 -43
  794. package/es/UNSAFE_MeterBar.js +46 -46
  795. package/es/UNSAFE_MeterBar.js.map +1 -1
  796. package/es/UNSAFE_MeterCircle.css +46 -46
  797. package/es/UNSAFE_MeterCircle.js +49 -49
  798. package/es/UNSAFE_MeterCircle.js.map +1 -1
  799. package/es/UNSAFE_Modal.css +3 -3
  800. package/es/UNSAFE_Modal.js +7 -7
  801. package/es/UNSAFE_NumberInputText.js +8 -8
  802. package/es/UNSAFE_PrefixSuffix.css +8 -8
  803. package/es/UNSAFE_PrefixSuffix.js +9 -9
  804. package/es/UNSAFE_PrefixSuffix.js.map +1 -1
  805. package/es/UNSAFE_ProgressBar.css +6 -6
  806. package/es/UNSAFE_ProgressBar.js +8 -8
  807. package/es/UNSAFE_ProgressBar.js.map +1 -1
  808. package/es/UNSAFE_ProgressCircle.css +6 -6
  809. package/es/UNSAFE_ProgressCircle.js +8 -8
  810. package/es/UNSAFE_ProgressCircle.js.map +1 -1
  811. package/es/UNSAFE_RatingGauge.css +20 -20
  812. package/es/UNSAFE_RatingGauge.js +23 -23
  813. package/es/UNSAFE_RatingGauge.js.map +1 -1
  814. package/es/UNSAFE_SelectMultiple.css +1 -1
  815. package/es/UNSAFE_SelectMultiple.js +10 -10
  816. package/es/UNSAFE_SelectSingle.js +9 -9
  817. package/es/UNSAFE_Selector.css +5 -5
  818. package/es/UNSAFE_Selector.js +13 -13
  819. package/es/UNSAFE_Skeleton.css +1 -1
  820. package/es/UNSAFE_Skeleton.js +7 -7
  821. package/es/UNSAFE_Spacer.js +7 -7
  822. package/es/UNSAFE_SplitMenuButton.css +5 -5
  823. package/es/UNSAFE_SplitMenuButton.js +12 -12
  824. package/es/UNSAFE_SplitMenuButton.js.map +1 -1
  825. package/es/UNSAFE_Text.css +25 -25
  826. package/es/UNSAFE_Text.js +31 -31
  827. package/es/UNSAFE_Text.js.map +1 -1
  828. package/es/UNSAFE_TextArea.css +3 -3
  829. package/es/UNSAFE_TextArea.js +11 -11
  830. package/es/UNSAFE_TextArea.js.map +1 -1
  831. package/es/UNSAFE_TextAreaAutosize.js +8 -8
  832. package/es/UNSAFE_TextField.css +58 -58
  833. package/es/UNSAFE_TextField.js +65 -65
  834. package/es/UNSAFE_TextField.js.map +1 -1
  835. package/es/UNSAFE_ThemedIcons.js +3 -3
  836. package/es/UNSAFE_UserAssistance.css +8 -8
  837. package/es/UNSAFE_UserAssistance.js +16 -16
  838. package/es/UNSAFE_UserAssistance.js.map +1 -1
  839. package/es/UNSAFE_View.js +7 -7
  840. package/es/UNSAFE_VirtualizedListView.js +9 -9
  841. package/es/UNSAFE_WindowOverlay.js +1 -1
  842. package/es/{_curry1-2f301bdb.js → _curry1-5d38e450.js} +2 -2
  843. package/es/{_curry1-2f301bdb.js.map → _curry1-5d38e450.js.map} +1 -1
  844. package/es/{_curry2-4e43dbab.js → _curry2-a1037f65.js} +3 -3
  845. package/es/{_curry2-4e43dbab.js.map → _curry2-a1037f65.js.map} +1 -1
  846. package/es/{_curry3-aa76d681.js → _curry3-ef528106.js} +4 -4
  847. package/es/{_curry3-aa76d681.js.map → _curry3-ef528106.js.map} +1 -1
  848. package/es/{_has-b63da983.js → _has-37d50195.js} +3 -3
  849. package/es/{_has-b63da983.js.map → _has-37d50195.js.map} +1 -1
  850. package/es/hooks/PRIVATE_useCollectionFocusRing.js +1 -1
  851. package/es/hooks/PRIVATE_useCurrentKey.js +1 -1
  852. package/es/hooks/PRIVATE_useDvtMeterEvents.js +3 -3
  853. package/es/hooks/PRIVATE_useItemAction.js +1 -1
  854. package/es/hooks/PRIVATE_useMessagesFocusManager.js +1 -1
  855. package/es/hooks/PRIVATE_useSelection.js +1 -1
  856. package/es/hooks/PRIVATE_useSingleSelection.js +2 -2
  857. package/es/hooks/PRIVATE_useTabbableModeSet.js +1 -1
  858. package/es/hooks/UNSAFE_useActionable.js +1 -1
  859. package/es/hooks/UNSAFE_useActive.js +1 -1
  860. package/es/hooks/UNSAFE_useAnimation.js +2 -2
  861. package/es/hooks/UNSAFE_useBreakpointValues.js +1 -1
  862. package/es/hooks/UNSAFE_useBreakpoints.js +1 -1
  863. package/es/hooks/UNSAFE_useClearIcon.js +1 -1
  864. package/es/hooks/UNSAFE_useColorScheme.js +1 -1
  865. package/es/hooks/UNSAFE_useContainerBreakpointValues.js +1 -1
  866. package/es/hooks/UNSAFE_useContainerBreakpoints.js +1 -1
  867. package/es/hooks/UNSAFE_useCurrentValueReducer.js +1 -1
  868. package/es/hooks/UNSAFE_useDebounce.js +1 -1
  869. package/es/hooks/UNSAFE_useFloating.js +2 -2
  870. package/es/hooks/UNSAFE_useFocus.js +1 -1
  871. package/es/hooks/UNSAFE_useFocusWithin.js +1 -1
  872. package/es/hooks/UNSAFE_useFocusableTextField.js +2 -2
  873. package/es/hooks/UNSAFE_useFormContext.js +1 -1
  874. package/es/hooks/UNSAFE_useFormFieldContext.js +1 -1
  875. package/es/hooks/UNSAFE_useFormVariantContext.js +1 -1
  876. package/es/hooks/UNSAFE_useHover.js +1 -1
  877. package/es/hooks/UNSAFE_useId.js +1 -1
  878. package/es/hooks/UNSAFE_useLengthFilter.js +1 -1
  879. package/es/hooks/UNSAFE_useLoadingIndicatorTimer.js +1 -1
  880. package/es/hooks/UNSAFE_useLongPress.js +1 -1
  881. package/es/hooks/UNSAFE_useMessagesContext.js +1 -1
  882. package/es/hooks/UNSAFE_useOutsideClick.js +1 -1
  883. package/es/hooks/UNSAFE_usePan.js +1 -1
  884. package/es/hooks/UNSAFE_usePrefixSuffix.js +1 -1
  885. package/es/hooks/UNSAFE_usePress.js +1 -1
  886. package/es/hooks/UNSAFE_useScale.js +1 -1
  887. package/es/hooks/UNSAFE_useSwipe.js +1 -1
  888. package/es/hooks/UNSAFE_useTabbableMode.js +1 -1
  889. package/es/hooks/UNSAFE_useTap.js +1 -1
  890. package/es/hooks/UNSAFE_useTextField.js +1 -1
  891. package/es/hooks/UNSAFE_useTextFieldInputHandlers.js +1 -1
  892. package/es/hooks/UNSAFE_useTheme.js +1 -1
  893. package/es/hooks/UNSAFE_useTimer.js +1 -1
  894. package/es/hooks/UNSAFE_useToggle.js +1 -1
  895. package/es/hooks/UNSAFE_useTooltip.css +4 -4
  896. package/es/hooks/UNSAFE_useTooltip.js +7 -7
  897. package/es/hooks/UNSAFE_useTooltip.js.map +1 -1
  898. package/es/hooks/UNSAFE_useTouch.js +1 -1
  899. package/es/hooks/UNSAFE_useTranslationBundle.js +1 -1
  900. package/es/hooks/UNSAFE_useUncontrolledState.js +1 -1
  901. package/es/hooks/UNSAFE_useUser.js +1 -1
  902. package/es/hooks/UNSAFE_useViewportIntersect.js +1 -1
  903. package/es/{index-472e8b43.js → index-9b59ad75.js} +2 -2
  904. package/es/{index-472e8b43.js.map → index-9b59ad75.js.map} +1 -1
  905. package/es/{keys-0966af01.js → keys-99dfc798.js} +4 -4
  906. package/es/{keys-0966af01.js.map → keys-99dfc798.js.map} +1 -1
  907. package/es/resources/nls/ar/bundle.js +1 -1
  908. package/es/resources/nls/ar-XB/bundle.js +1 -1
  909. package/es/resources/nls/bg/bundle.js +1 -1
  910. package/es/resources/nls/bs/bundle.js +1 -1
  911. package/es/resources/nls/bs-Cyrl/bundle.js +1 -1
  912. package/es/resources/nls/bundle.js +1 -1
  913. package/es/resources/nls/cs/bundle.js +1 -1
  914. package/es/resources/nls/da/bundle.js +1 -1
  915. package/es/resources/nls/de/bundle.js +1 -1
  916. package/es/resources/nls/el/bundle.js +1 -1
  917. package/es/resources/nls/en/bundle.js +1 -1
  918. package/es/resources/nls/en-XA/bundle.js +1 -1
  919. package/es/resources/nls/en-XC/bundle.js +1 -1
  920. package/es/resources/nls/es/bundle.js +1 -1
  921. package/es/resources/nls/et/bundle.js +1 -1
  922. package/es/resources/nls/fi/bundle.js +1 -1
  923. package/es/resources/nls/fr/bundle.js +1 -1
  924. package/es/resources/nls/fr-CA/bundle.js +1 -1
  925. package/es/resources/nls/he/bundle.js +1 -1
  926. package/es/resources/nls/hr/bundle.js +1 -1
  927. package/es/resources/nls/hu/bundle.js +1 -1
  928. package/es/resources/nls/is/bundle.js +1 -1
  929. package/es/resources/nls/it/bundle.js +1 -1
  930. package/es/resources/nls/ja/bundle.js +1 -1
  931. package/es/resources/nls/ko/bundle.js +1 -1
  932. package/es/resources/nls/lt/bundle.js +1 -1
  933. package/es/resources/nls/lv/bundle.js +1 -1
  934. package/es/resources/nls/ms/bundle.js +1 -1
  935. package/es/resources/nls/nl/bundle.js +1 -1
  936. package/es/resources/nls/no/bundle.js +1 -1
  937. package/es/resources/nls/pl/bundle.js +1 -1
  938. package/es/resources/nls/pt/bundle.js +1 -1
  939. package/es/resources/nls/pt-PT/bundle.js +1 -1
  940. package/es/resources/nls/ro/bundle.js +1 -1
  941. package/es/resources/nls/ru/bundle.js +1 -1
  942. package/es/resources/nls/sk/bundle.js +1 -1
  943. package/es/resources/nls/sl/bundle.js +1 -1
  944. package/es/resources/nls/sr/bundle.js +1 -1
  945. package/es/resources/nls/sr-Latn/bundle.js +1 -1
  946. package/es/resources/nls/supportedLocales.js +1 -1
  947. package/es/resources/nls/sv/bundle.js +1 -1
  948. package/es/resources/nls/th/bundle.js +1 -1
  949. package/es/resources/nls/tr/bundle.js +1 -1
  950. package/es/resources/nls/uk/bundle.js +1 -1
  951. package/es/resources/nls/vi/bundle.js +1 -1
  952. package/es/resources/nls/zh-Hans/bundle.js +1 -1
  953. package/es/resources/nls/zh-Hant/bundle.js +1 -1
  954. package/es/translationBundle.js +1 -1
  955. package/es/{tslib.es6-d865de5b.js → tslib.es6-64463826.js} +2 -2
  956. package/es/{tslib.es6-d865de5b.js.map → tslib.es6-64463826.js.map} +1 -1
  957. package/es/{useSingleSelection-a03d3f4a.js → useSingleSelection-eec0e9e9.js} +2 -2
  958. package/es/{useSingleSelection-a03d3f4a.js.map → useSingleSelection-eec0e9e9.js.map} +1 -1
  959. package/es/utils/PRIVATE_clientHints.js +1 -1
  960. package/es/utils/PRIVATE_collectionUtils.js +1 -1
  961. package/es/utils/PRIVATE_dvtTestUtils.js +1 -1
  962. package/es/utils/PRIVATE_floatingUtils.js +1 -1
  963. package/es/utils/PRIVATE_meterUtils.js +1 -1
  964. package/es/utils/PRIVATE_refUtils.js +1 -1
  965. package/es/utils/PRIVATE_tabbableUtils.js +4 -4
  966. package/es/utils/PRIVATE_timer.js +1 -1
  967. package/es/utils/UNSAFE_arrayUtils.js +1 -1
  968. package/es/utils/UNSAFE_attributeUtils.js +1 -1
  969. package/es/utils/UNSAFE_classNames.js +1 -1
  970. package/es/utils/UNSAFE_componentUtils.js +1 -1
  971. package/es/utils/UNSAFE_dataProvider.js +1 -1
  972. package/es/utils/UNSAFE_filePickerUtils.js +1 -1
  973. package/es/utils/UNSAFE_getLocale.js +1 -1
  974. package/es/utils/UNSAFE_interpolations/aria.js +1 -1
  975. package/es/utils/UNSAFE_interpolations/borders.js +1 -1
  976. package/es/utils/UNSAFE_interpolations/boxalignment.css +15 -15
  977. package/es/utils/UNSAFE_interpolations/boxalignment.js +19 -19
  978. package/es/utils/UNSAFE_interpolations/boxalignment.js.map +1 -1
  979. package/es/utils/UNSAFE_interpolations/colors.js +1 -1
  980. package/es/utils/UNSAFE_interpolations/dimensions.js +2 -2
  981. package/es/utils/UNSAFE_interpolations/flexbox.css +7 -7
  982. package/es/utils/UNSAFE_interpolations/flexbox.js +11 -11
  983. package/es/utils/UNSAFE_interpolations/flexbox.js.map +1 -1
  984. package/es/utils/UNSAFE_interpolations/flexitem.css +7 -7
  985. package/es/utils/UNSAFE_interpolations/flexitem.js +11 -11
  986. package/es/utils/UNSAFE_interpolations/flexitem.js.map +1 -1
  987. package/es/utils/UNSAFE_interpolations/grid.js +1 -1
  988. package/es/utils/UNSAFE_interpolations/griditem.js +1 -1
  989. package/es/utils/UNSAFE_interpolations/padding.js +1 -1
  990. package/es/utils/UNSAFE_interpolations/text.css +3 -3
  991. package/es/utils/UNSAFE_interpolations/text.js +7 -7
  992. package/es/utils/UNSAFE_interpolations/text.js.map +1 -1
  993. package/es/utils/UNSAFE_keys.js +1 -1
  994. package/es/utils/UNSAFE_lengthFilter.js +1 -1
  995. package/es/utils/UNSAFE_logger.js +3 -3
  996. package/es/utils/UNSAFE_matchTranslationBundle.js +1 -1
  997. package/es/utils/UNSAFE_mergeInterpolations.js +5 -5
  998. package/es/utils/UNSAFE_mergeProps.js +1 -1
  999. package/es/utils/UNSAFE_meterTypes.js +1 -1
  1000. package/es/utils/UNSAFE_roles.js +1 -1
  1001. package/es/utils/UNSAFE_selectUtils.js +1 -1
  1002. package/es/utils/UNSAFE_size.js +1 -1
  1003. package/es/utils/UNSAFE_soundUtils.js +1 -1
  1004. package/es/utils/UNSAFE_stringUtils.js +1 -1
  1005. package/es/utils/UNSAFE_typeUtils.js +1 -1
  1006. package/es/utils/UNSAFE_units.js +1 -1
  1007. package/es/utils/UNSAFE_valueUpdateDetail.js +1 -1
  1008. package/package.json +1 -1
  1009. package/amd/Badge-0be84246.js +0 -2
  1010. package/amd/BaseButton-c0bee435.js +0 -2
  1011. package/amd/Button-88e2683c.js +0 -2
  1012. package/amd/Chip-5f3711bc.js +0 -2
  1013. package/amd/ClearIcon-6ec20bda.js +0 -2
  1014. package/amd/ComponentMessage-3628eb9f.js +0 -2
  1015. package/amd/ComponentMessageContainer-a1d1e15e.js +0 -2
  1016. package/amd/Flex-f59e8f9a.js +0 -2
  1017. package/amd/FocusTrap-1a3d4176.js +0 -2
  1018. package/amd/FormControlUtils-a5f8e972.js +0 -2
  1019. package/amd/Heading-ab2bcb42.js +0 -2
  1020. package/amd/Icon-f239bdd4.js +0 -2
  1021. package/amd/Indexer-0c3bb8b6.js +0 -2
  1022. package/amd/InlineHelpSource-60143cb9.js +0 -2
  1023. package/amd/Link-c804eabd.js +0 -2
  1024. package/amd/List-ef2d7cb3.js +0 -2
  1025. package/amd/ListItemTextLayout-e4b8ff9d.js +0 -2
  1026. package/amd/Menu-668ba0c6.js +0 -2
  1027. package/amd/MenuDivider-3d042815.js +0 -2
  1028. package/amd/MenuItem-f609dd6c.js +0 -2
  1029. package/amd/MessageCloseButton-81de07b6.js +0 -2
  1030. package/amd/MessageDetail-6d596f28.js +0 -2
  1031. package/amd/MessageLayer-07b03424.js +0 -2
  1032. package/amd/MessageStartIcon-35715e60.js +0 -2
  1033. package/amd/MessageSummary-eb8190eb.js +0 -2
  1034. package/amd/MessageTimestamp-c7dc22d9.js +0 -2
  1035. package/amd/MeterCircle-2c036469.js +0 -2
  1036. package/amd/Modal-57512b69.js +0 -2
  1037. package/amd/ReadonlyTextFieldInput-d60fe78e.js +0 -2
  1038. package/amd/Skeleton-e36a6a22.js +0 -2
  1039. package/amd/SplitMenuButton-746cd46d.js +0 -2
  1040. package/amd/Text-b8786e25.js +0 -2
  1041. package/amd/TextArea-f47777d2.js +0 -2
  1042. package/amd/TextFieldInput-a4cae09b.js +0 -2
  1043. package/amd/_curry3-092c8c32.js +0 -2
  1044. package/amd/_has-0f123a68.js +0 -2
  1045. package/amd/flexbox-1e550203.js +0 -2
  1046. package/amd/flexitem-c8b9198a.js +0 -2
@@ -1 +1 @@
1
- {"version":3,"file":"SelectMultiple-112aec1d.js","sources":["../../src/UNSAFE_SelectMultiple/SelectedValuesCount.tsx","../../src/UNSAFE_SelectMultiple/useDisplayValues.ts","../../src/UNSAFE_SelectMultiple/useSelectMultiple.ts","../../src/UNSAFE_SelectMultiple/useSelectedOnlyData.ts","../../src/UNSAFE_SelectMultiple/SelectMultiple.tsx"],"sourcesContent":["import { ComponentProps } from 'preact';\nimport { cssProps } from '@oracle/oraclejet-cssprops';\nimport { Chip } from '../UNSAFE_Chip';\nimport { useTranslationBundle } from '../hooks/UNSAFE_useTranslationBundle';\nimport { BundleType } from '../resources/nls/bundle';\n\nconst rootStyles = cssProps`${{\n display: 'inline-flex'\n}}`;\n\ntype PickedPropsFromChip = Pick<\n ComponentProps<typeof Chip>,\n 'accessibleLabel' | 'isDisabled' | 'isSelected' | 'onToggle'\n>;\n\ntype Props = PickedPropsFromChip & {\n count?: number;\n onKeyDown?: (event: KeyboardEvent) => void;\n onKeyUp?: (event: KeyboardEvent) => void;\n onMouseDown?: (event: MouseEvent) => void;\n};\n\n// This component renders a badge showing the number of selected values\nexport function SelectedValuesCount({\n accessibleLabel,\n count = 0,\n onKeyDown,\n onKeyUp,\n onMouseDown,\n ...passThroughProps\n}: Props) {\n const translations = useTranslationBundle<BundleType>('@oracle/oraclejet-preact');\n const instructions = translations.selectMultiple_showSelectedValues();\n const accLabel = accessibleLabel ? `${accessibleLabel}. ` : '';\n\n const ninetyNinePlus = translations.selectMultiple_countPlus({ COUNT: `99` });\n // The Chip shows the number of values selected or 99+ if the number is over 99.\n const chipCount = count > 99 ? `${ninetyNinePlus}` : `${count}`;\n // The screenreader will hear what the number of selected values is along with instructions\n // like Click to see the full list.\n const valuesSelectedText = translations.selectMultiple_valuesSelected({\n VALUE_COUNT: `${count}`\n });\n const label = `${accLabel}${valuesSelectedText} ${instructions}`;\n return (\n <div class={rootStyles} onKeyDown={onKeyDown} onKeyUp={onKeyUp} onMouseDown={onMouseDown}>\n <Chip accessibleLabel={label} {...passThroughProps}>\n {chipCount}\n </Chip>\n </div>\n );\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { useMemo } from 'preact/hooks';\nimport { useTranslationBundle } from '../hooks/UNSAFE_useTranslationBundle';\nimport { BundleType } from '../resources/nls/bundle';\nimport { Item } from '../utils/UNSAFE_dataProvider';\nimport { ItemTextType } from '../utils/UNSAFE_selectUtils';\nimport { renderItemText } from '../PRIVATE_SelectCommon';\n\nexport function useDisplayValues<K, D>(\n itemText: ItemTextType<K, D>,\n valueItems?: Item<K, D>[]\n): string {\n const translations = useTranslationBundle<BundleType>('@oracle/oraclejet-preact');\n const separator = translations.plural_separator();\n\n // create the text displayed in the field from the selected values\n const concatenatedDisplayValues = useMemo(() => {\n if (valueItems === undefined) {\n return '';\n }\n const displayValues = _createDisplayValues(itemText, valueItems);\n const concatDisplayValues = _concatDisplayValues(displayValues, separator);\n return concatDisplayValues;\n }, [valueItems, itemText]);\n\n return concatenatedDisplayValues;\n}\n\nfunction _concatDisplayValues(displayValues: Set<string>, separator: string) {\n return Array.from(displayValues.values()).join(separator);\n}\n\nfunction _createDisplayValues<K, D>(itemText: ItemTextType<K, D>, selectedItems?: Item<K, D>[]) {\n const arValues = selectedItems ? [...selectedItems?.values()] : [];\n const mapFunc = (itemContext: Item<K, D>) => renderItemText(itemContext, itemText);\n const mappedArray = arValues.map(mapFunc);\n return new Set<string>(mappedArray as string[]);\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { ComponentProps } from 'preact';\nimport { MutableRef, useCallback, useEffect, useMemo, useRef, useState } from 'preact/hooks';\nimport { DataState, SelectionDetail } from '../UNSAFE_Collection';\nimport { Item } from '../utils/UNSAFE_dataProvider';\nimport { mergeProps } from '../utils/UNSAFE_mergeProps';\nimport { ValueUpdateDetail } from '../utils/UNSAFE_valueUpdateDetail';\nimport { isControlOrFunctionKey, KEYS, useSelectCommon } from '../PRIVATE_SelectCommon';\nimport { SelectMultiple } from './SelectMultiple';\nimport { SelectedValuesCount } from './SelectedValuesCount';\nimport { useSelectedOnlyData } from './useSelectedOnlyData';\n\ntype PickedPropsFromSelectMultiple = Pick<\n ComponentProps<typeof SelectMultiple>,\n 'isDisabled' | 'isReadonly' | 'onFilter' | 'onLoadRange'\n>;\ntype UseSelectMultipleProps<K, D> = PickedPropsFromSelectMultiple & {\n data?: DataState<K, D> | null;\n inputRef: MutableRef<HTMLInputElement>;\n isFocused?: boolean;\n onCommit: (detail: ValueUpdateDetail<Set<K>>) => void;\n valueItems?: Item<K, D>[];\n};\n\ntype SelectedValuesCountToggleType = ComponentProps<typeof SelectedValuesCount>['onToggle'];\ntype SelectedValuesCountToggleDetailType = Parameters<\n Exclude<SelectedValuesCountToggleType, undefined>\n>[0];\n\n/**\n * Hook that manages SelectMultiple state and behavior. This hook creates state variables and\n * event listeners, returning properties to apply to components internally rendered by\n * SelectMultiple, as well as state information.\n *\n * @param data Specifies data for the dropdown list.\n * @param inputRef Ref to the input element.\n * @param isDisabled Specifies whether the component is disabled.\n * @param isFocused Specifies whether the component has focus.\n * @param isReadonly Specifies whether the component is readonly.\n * @param onCommit Callback invoked when the selected values are committed.\n * @param onFilter Callback function to trigger loading data for the dropdown list,\n * which may or may not be filtered by user entered text.\n * @param onLoadRange Callback function to handle when the viewport of the dropdown list has\n * changed, including the case where the user scrolls to the end of the list and there are more\n * items to load. The function should set a new DataState on the component for the specified\n * range.\n * @param valueItems Specifies the keys, data, and optional metadata for the selected values.\n *\n * @returns Properties to apply to internal components that SelectMultiple renders, and component\n * state.\n */\nexport function useSelectMultiple<K, D>({\n data: propData,\n inputRef,\n isDisabled,\n isFocused: propIsFocused,\n isReadonly,\n onCommit,\n onFilter,\n onLoadRange: propOnLoadRange,\n valueItems\n}: UseSelectMultipleProps<K, D>) {\n const [isDropdownSelectedOnlyView, setDropdownSelectedOnlyView] = useState(false);\n\n const selectedValuesCount = valueItems?.length;\n const hasSelectedValuesCount =\n (selectedValuesCount !== undefined && selectedValuesCount > 0) || isDropdownSelectedOnlyView;\n\n // show only the selected values in the dropdown if isDropdownSelectedOnlyView is true,\n // otherwise show the full data set\n // TODO: We may need to revisit this for hierarchical data because the selected valueItems\n // won't have any information about ancestor group nodes, and we should probably show selected\n // items in context within the hierarchy. Also, the order of the items in the selected-only\n // view right now follows the order in which they were selected, not the order in which they\n // would appear in the full data set. This may be more of a problem for hierarchical data\n // if items have to appear within the correct group ancestors. We may need to move\n // construction of the selected-only DataState out of the component to the consuming code,\n // and take a callback that we can call as a notification that the app should provide this\n // special DataState to us (kind of like onLoadRange). Note that we may also need an\n // enhancement on the DataProvider API to be able to specify a filterCriterion to filter by\n // the selected keys through a fetchFirst call, because a regular fetchByKeys call would\n // still return results in the order in which the keys were specified and would not return\n // data for the ancestor group nodes.\n const selectedOnlyDataProps = useSelectedOnlyData<K, D>({\n isDropdownSelectedOnlyView,\n valueItems\n });\n const data = isDropdownSelectedOnlyView ? selectedOnlyDataProps.data : propData;\n const onLoadRange = isDropdownSelectedOnlyView\n ? selectedOnlyDataProps.onLoadRange\n : propOnLoadRange;\n\n const {\n currentRow,\n dropdownRef,\n handleDropdownArrowClick,\n handleDropdownAutoDismiss: baseHandleDropdownAutoDismiss,\n handleInput,\n handleMainFieldKeyDown: baseHandleMainFieldKeyDown,\n handleMainFieldKeyUp,\n handleUpDownArrowKeys,\n isDropdownOpen,\n isFocused,\n isUserFiltering,\n mainFieldRef,\n onCurrentKeyChange,\n onMouseDown,\n searchText,\n selectedKeys,\n setCurrentRow,\n setDropdownOpen,\n setSelectedKeys,\n userInput\n } = useSelectCommon<K, D>({\n data,\n inputRef,\n isFocused: propIsFocused,\n onFilter\n });\n\n const removeDropdown = useCallback(() => {\n dropdownRef.current?.parentElement?.removeChild(dropdownRef.current);\n }, []);\n\n const myHandleDropdownAutoDismiss = useCallback(\n (event?: Event) => {\n if (isDropdownOpen) {\n if (event?.type === 'keydown') {\n const keyboardEvent = event as KeyboardEvent;\n switch (keyboardEvent.code) {\n case KEYS.TAB:\n // Put focus on an element in the main field, but don't kill the event, so that\n // the browser can naturally transfer focus to the next focusable item relative\n // to the element in the main field.\n if (keyboardEvent.shiftKey || !hasSelectedValuesCount) {\n inputRef.current?.focus();\n } else {\n chipRef.current?.focus();\n }\n\n // Remove the dropdown immediately, without waiting for a rerender based on changing\n // state, so that the open dropdown cannot get focus when the browser handles the\n // Tab key.\n removeDropdown();\n break;\n default:\n break;\n }\n }\n }\n },\n [hasSelectedValuesCount, isDropdownOpen]\n );\n\n const myHandleMainFieldKeyDown = useCallback(\n (event: KeyboardEvent) => {\n // const target = event.target as HTMLElement;\n // ignore control key and function key\n if (isControlOrFunctionKey(event)) {\n return;\n }\n\n switch (event.code) {\n case KEYS.TAB:\n if (isDropdownOpen && (event.shiftKey || (!hasSelectedValuesCount && !event.shiftKey))) {\n // Remove the dropdown immediately, without waiting for a rerender based on changing\n // state, so that the open dropdown cannot get focus when the browser handles the\n // Tab key.\n removeDropdown();\n\n setDropdownOpen(false);\n }\n\n // JET-53183 - core pack compat: stop propagation of handled events\n // we don't want a parent collection component to jump focus to the next cell and skip\n // over the selected values count chip\n if (hasSelectedValuesCount && !event.shiftKey) {\n event.stopPropagation();\n }\n break;\n\n default:\n break;\n }\n },\n [hasSelectedValuesCount, isDropdownOpen]\n );\n\n // when the array of valueItems changes, pull out the new set of selectedKeys\n useEffect(() => {\n const keys = valueItems?.reduce((accumKeys, currentItem) => {\n accumKeys.add(currentItem.key);\n return accumKeys;\n }, new Set<K>());\n setSelectedKeys(keys);\n }, [valueItems]);\n\n const chipRef = useRef<HTMLElement | null>(null);\n useEffect(() => {\n chipRef.current =\n hasSelectedValuesCount && mainFieldRef.current\n ? mainFieldRef.current.querySelector('[role=\"switch\"]')\n : null;\n }, [hasSelectedValuesCount, isDisabled, isReadonly]);\n\n const handleSelectedValuesCountKeyDown = useCallback(\n (event: KeyboardEvent) => {\n switch (event.code) {\n case KEYS.TAB:\n if (isDropdownOpen && !event.shiftKey) {\n // Remove the dropdown immediately, without waiting for a rerender based on changing\n // state, so that the open dropdown cannot get focus when the browser handles the\n // Tab key.\n removeDropdown();\n\n setDropdownOpen(false);\n }\n\n // JET-53183 - core pack compat: stop propagation of handled events\n // we don't want a parent collection component to jump focus to the next cell and skip\n // over the input\n if (event.shiftKey) {\n event.stopPropagation();\n }\n break;\n\n case KEYS.UP:\n case KEYS.DOWN:\n // prevent the page from scrolling\n event.preventDefault();\n break;\n\n case KEYS.ESC:\n if (isDropdownOpen) {\n setDropdownOpen(false);\n\n event.preventDefault();\n\n // JET-53183 - core pack compat: stop propagation of handled events\n // we don't want a parent collection component to stop editing the row when we close\n // the dropdown\n event.stopPropagation();\n }\n break;\n\n case KEYS.ENTER:\n // JET-53183 - core pack compat: stop propagation of handled events\n // we don't want a parent collection component to move focus to the next row when\n // we toggle between the full and selected only list in the dropdown\n event.stopPropagation();\n break;\n\n default:\n break;\n }\n },\n [isDropdownOpen]\n );\n\n const handleSelectedValuesCountKeyUp = useCallback(\n (event: KeyboardEvent) => {\n switch (event.code) {\n case KEYS.UP:\n case KEYS.DOWN:\n handleUpDownArrowKeys(event);\n break;\n\n default:\n break;\n }\n },\n [handleUpDownArrowKeys]\n );\n\n const handleSelectedValuesCountMouseDown = useCallback((event: MouseEvent) => {\n // call preventDefault so that the dropdown doesn't open showing the full list on mousedown\n // on the chip before switching to show only the selected values on mouseup when the click\n // is handled\n event.preventDefault();\n // explicitly focus the input because it won't happen naturally due to preventDefault()\n inputRef.current?.focus();\n }, []);\n\n const handleSelectedValuesCountToggle = useCallback(\n (detail: SelectedValuesCountToggleDetailType) => {\n if (!isDropdownOpen) {\n setDropdownOpen(true);\n }\n\n const value = detail.value ?? false;\n if (value !== isDropdownSelectedOnlyView) {\n setDropdownSelectedOnlyView(value);\n }\n },\n [isDropdownOpen, isDropdownSelectedOnlyView]\n );\n\n // when the dropdown closes, automatically turn off isDropdownSelectedOnlyView\n useEffect(() => {\n if (!isDropdownOpen && isDropdownSelectedOnlyView) {\n setDropdownSelectedOnlyView(false);\n }\n }, [isDropdownOpen, isDropdownSelectedOnlyView]);\n\n const onSelectionChange = useCallback(\n (detail: SelectionDetail<K>) => {\n const newKeys = new Set(detail.value.keys?.values());\n // update the selectedKeys so that the selection visual state of the collection\n // updates immediately while waiting for new valueItems to be set\n setSelectedKeys(newKeys);\n // call the onCommit callback so that the consuming code can update the valueItems\n onCommit?.({ value: newKeys, previousValue: selectedKeys });\n },\n [onCommit, selectedKeys]\n );\n\n const dropdownEventHandlers = useMemo(() => {\n return mergeProps(\n { onAutoDismiss: baseHandleDropdownAutoDismiss },\n { onAutoDismiss: myHandleDropdownAutoDismiss }\n );\n }, [baseHandleDropdownAutoDismiss, myHandleDropdownAutoDismiss]);\n\n const inputEventHandlers = useMemo(() => {\n return mergeProps(\n {\n onInput: handleInput,\n onKeyDown: baseHandleMainFieldKeyDown,\n onKeyUp: handleMainFieldKeyUp\n },\n { onKeyDown: myHandleMainFieldKeyDown }\n );\n }, [baseHandleMainFieldKeyDown, handleInput, handleMainFieldKeyUp, myHandleMainFieldKeyDown]);\n\n useEffect(() => {\n // clear the current item when the dropdown opens\n if (isDropdownOpen) {\n setCurrentRow({ rowKey: undefined });\n }\n }, [isDropdownOpen]);\n\n return {\n collectionProps: {\n currentKey: currentRow.rowKey,\n onCurrentKeyChange,\n onSelectionChange,\n selectedKeys\n },\n data,\n dropdownArrowEventHandlers: {\n onClick: handleDropdownArrowClick\n },\n dropdownEventHandlers,\n dropdownRef,\n hasSelectedValuesCount,\n inputEventHandlers,\n inputRef,\n isDropdownOpen,\n isDropdownSelectedOnlyView,\n isFocused,\n isUserFiltering,\n mainFieldRef,\n mouseProps: isDisabled || isReadonly ? {} : { onMouseDown },\n onLoadRange,\n searchText,\n selectedValuesCountProps: {\n onKeyDown: handleSelectedValuesCountKeyDown,\n onKeyUp: handleSelectedValuesCountKeyUp,\n onMouseDown: handleSelectedValuesCountMouseDown,\n onToggle: handleSelectedValuesCountToggle\n },\n userInput\n };\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { useMemo } from 'preact/hooks';\nimport { DataState } from 'src/UNSAFE_Collection';\nimport { Item } from '../utils/UNSAFE_dataProvider';\n\ntype Props<K, D> = {\n isDropdownSelectedOnlyView?: boolean;\n valueItems?: Item<K, D>[];\n};\n\n/**\n * Get the data to show in the dropdown for the selected-only view.\n * @param isDropdownSelectedOnlyView Whether the component is showing only selected\n * values in the dropdown: true if so, false if not.\n * @param valueItems The keys, data, and optional metadata for the selected values.\n * @returns An object with data and onLoadRange properties that can be passed on to the\n * list in the dropdown.\n */\nexport function useSelectedOnlyData<K, D>({ isDropdownSelectedOnlyView, valueItems }: Props<K, D>) {\n // Need to specify type of useMemo here so the return statement below doesn't show a type error\n // related to the sizePrecision prop on DataState:\n // Type 'string' is not assignable to type '\"exact\" | \"atLeast\"'.\n // Note that useMemo here only depends on isDropdownSelectedOnlyView because we only want to\n // recalculate when that value changes. While the selected only view is shown, we want the\n // data set to remain static with the set of valueItems as of the time the view was changed to\n // only show selected items so that the user can deselect and reselect items.\n // If useMemo depended on the valueItems too, then the data set would change as the user\n // deselected items, which means those items would disappear from the dropdown and the user\n // could not reselect them.\n const selectedOnlyViewDataState = useMemo<DataState<K, D> | undefined>(() => {\n return !isDropdownSelectedOnlyView || !valueItems || valueItems.length === 0\n ? undefined\n : {\n offset: 0,\n totalSize: valueItems?.length ?? 0,\n sizePrecision: 'exact',\n data: valueItems.map((valueItem: Item<K, D>) => {\n return { data: valueItem.data, metadata: valueItem.metadata ?? { key: valueItem.key } };\n })\n };\n }, [isDropdownSelectedOnlyView]);\n\n return {\n data: selectedOnlyViewDataState,\n onLoadRange: undefined\n };\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { ComponentProps, Fragment, Ref } from 'preact';\nimport { forwardRef } from 'preact/compat';\nimport { MutableRef } from 'preact/hooks';\nimport { FocusableHandle, useFocusableTextField } from '../hooks/UNSAFE_useFocusableTextField';\nimport { useFormContext } from '../hooks/UNSAFE_useFormContext';\nimport { FormFieldContext } from '../hooks/UNSAFE_useFormFieldContext';\nimport { useLoadingIndicatorTimer } from '../hooks/UNSAFE_useLoadingIndicatorTimer';\nimport { useTextField } from '../hooks/UNSAFE_useTextField';\nimport { DataState } from '../UNSAFE_Collection';\nimport { Flex } from '../UNSAFE_Flex';\nimport { Label } from '../UNSAFE_Label';\nimport { ListView } from '../UNSAFE_ListView';\nimport { LiveRegion } from '../UNSAFE_LiveRegion';\nimport {\n ReadonlyTextField,\n ReadonlyTextFieldInput,\n TextField,\n TextFieldInput\n} from '../UNSAFE_TextField';\nimport { InlineUserAssistance } from '../UNSAFE_UserAssistance';\nimport { Item } from '../utils/UNSAFE_dataProvider';\nimport { Size } from '../utils/UNSAFE_size';\nimport { ValueUpdateDetail } from '../utils/UNSAFE_valueUpdateDetail';\nimport {\n DefaultList,\n Dropdown,\n DropdownArrow,\n DropdownList,\n DropdownUserAssistance,\n EmptyResults,\n isBeforeDataFetch,\n isMobile\n} from '../PRIVATE_SelectCommon';\nimport { ItemTextType } from '../utils/UNSAFE_selectUtils';\nimport { SelectedValuesCount } from './SelectedValuesCount';\nimport { useDisplayValues } from './useDisplayValues';\nimport { useSelectMultiple } from './useSelectMultiple';\nimport { useTranslationBundle } from '../hooks/UNSAFE_useTranslationBundle';\nimport { BundleType } from '../resources/nls/bundle';\n\ntype TextFieldInputProps = ComponentProps<typeof TextFieldInput>;\ntype InlineUserAssistanceProps = ComponentProps<typeof InlineUserAssistance>;\n\ntype Props<K extends string | number, D extends Record<string, any>> = {\n /**\n * The ID of an element (or space separated IDs of multiple elements) that\n * describes the input.\n */\n ariaDescribedBy?: TextFieldInputProps['ariaDescribedBy'];\n /**\n * Text to provide guidance to help the user understand what data to enter or select.\n */\n assistiveText?: InlineUserAssistanceProps['assistiveText'];\n /**\n * Specifies data for the dropdown list.\n *\n * Note that the <code>itemText</code> property allows for customizing the rendering\n * of each data item.\n */\n data?: DataState<K, D> | null;\n /**\n * Help source URL associated with the component.\n */\n helpSourceLink?: InlineUserAssistanceProps['helpSourceLink'];\n /**\n * Custom text to be rendered for the <code>helpSourceLink</code>.\n */\n helpSourceText?: InlineUserAssistanceProps['helpSourceText'];\n /**\n * Specifies whether the component is disabled.\n */\n isDisabled?: boolean;\n /**\n * Specifies whether the component is waiting for <code>valueItems</code> to load.\n * While loading, SelectMultiple will show the progressive loading indicator in the text field.\n */\n isLoading?: boolean;\n /**\n * Specifies whether the component is readonly.\n */\n isReadonly?: boolean;\n /**\n * Specifies for accessibility purposes whether a value is required.\n *\n * Setting this property to <code>false</code> means that a value is not required to be\n * selected by the user. Setting this property to <code>true</code> means that a value\n * is required to be selected by the user.\n */\n isRequired?: TextFieldInputProps['isRequired'];\n /**\n * Specifies whether to show an indicator on screen that a value is required, for example\n * before the user has selected a value.\n */\n isRequiredShown?: InlineUserAssistanceProps['isRequiredShown'];\n /**\n * Specifies how to get the text string to render for a data item.\n * This property can be set to either:\n * <ul>\n * <li>a string that specifies the name of a top level data attribute to render as text, or</li>\n * <li>a callback function that takes a properties object and returns the text string to\n * display.</li>\n * </ul>\n *\n * This text will be rendered for the selected <code>valueItems</code> of the component.\n * It will also be rendered for each item in the dropdown. When rendered for the\n * dropdown items, default matching search term highlighting will still be applied.\n */\n itemText: ItemTextType<K, D>;\n /**\n * Specifies the label associated with the field.\n */\n label: string;\n /**\n * Specifies where the label is positioned relative to the field.\n */\n labelEdge?: 'inside' | 'start' | 'top' | 'none';\n /**\n * Specifies the width of the label when <code>labelEdge</code> is <code>\"start\"</code>\n */\n labelStartWidth?: Size;\n /**\n * Messages to show on screen that are associated with the component.\n */\n messages?: InlineUserAssistanceProps['messages'];\n /**\n * A short hint to display before the user selects or enters a value.\n */\n placeholder?: TextFieldInputProps['placeholder'];\n /**\n * Specifies how to align text within the field.\n */\n textAlign?: TextFieldInputProps['textAlign'];\n /**\n * Specifies the density of the user assistance presentation. It can be set to:\n * <ul>\n * <li><code>'efficient'</code>: Show inline and reserve space to prevent layout reflow when user\n * assistance text is displayed.</li>\n * <li><code>'reflow'</code>: Show inline. Layout will reflow when text is displayed.</li>\n * </ul>\n */\n userAssistanceDensity?: InlineUserAssistanceProps['userAssistanceDensity'];\n /**\n * Specifies the keys, data, and optional metadata for the selected values.\n */\n valueItems?: Item<K, D>[];\n /**\n * The style variant of the component.\n */\n variant?: TextFieldInputProps['variant'];\n /**\n * The type of virtual keyboard to display for entering a value on mobile browsers.\n * This property has no effect on desktop browsers.\n */\n virtualKeyboard?: 'auto' | 'email' | 'number' | 'search' | 'tel' | 'text' | 'url';\n /**\n * Callback invoked when the user commits the selected values.\n *\n * The function should set a new array as the <code>valueItems</code> property.\n */\n onCommit: (detail: ValueUpdateDetail<Set<K>>) => void;\n /**\n * Callback function to trigger loading data for the dropdown list, which may or may not be\n * filtered by user entered search text.\n *\n * The function should set a new <code>DataState</code> as the <code>data</code> property.\n */\n onFilter?: ({ searchText }: { searchText?: string }) => void;\n /**\n * Callback function to handle when the viewport of the dropdown list has changed, for example\n * by scrolling, including the case where the user scrolls to the end of the list and there are\n * more items to load.\n *\n * The function should set a new <code>DataState</code> for the specified range as the\n * <code>data</code> property.\n */\n onLoadRange?: ComponentProps<typeof ListView>['onLoadRange'];\n};\n\n/**\n * A SelectMultiple is a dropdown list that supports multiple selection and search filtering.\n */\nexport const SelectMultiple = forwardRef(\n <K extends string | number, D extends Record<string, any>>(\n {\n ariaDescribedBy,\n assistiveText,\n data: propData,\n helpSourceLink,\n helpSourceText,\n isDisabled: propIsDisabled,\n isLoading: propIsLoading,\n isReadonly: propIsReadonly,\n isRequired,\n isRequiredShown,\n itemText,\n label,\n labelEdge: propLabelEdge,\n labelStartWidth: propLabelStartWidth,\n messages,\n onCommit,\n onFilter,\n onLoadRange: propOnLoadRange,\n placeholder,\n textAlign: propTextAlign,\n userAssistanceDensity: propUserAssistanceDensity,\n valueItems,\n variant = 'default',\n virtualKeyboard\n }: Props<K, D>,\n ref?: Ref<FocusableHandle>\n ) => {\n const {\n isDisabled: isFormDisabled,\n isReadonly: isFormReadonly,\n labelEdge: formLabelEdge,\n labelStartWidth: formLabelStartWidth,\n textAlign: formTextAlign,\n userAssistanceDensity: formUserAssistanceDensity\n } = useFormContext();\n // default to FormContext values if component properties are not specified\n const isDisabled = propIsDisabled ?? isFormDisabled;\n const isReadonly = propIsReadonly ?? isFormReadonly;\n const labelEdge = propLabelEdge ?? formLabelEdge;\n const labelStartWidth = propLabelStartWidth ?? formLabelStartWidth;\n const textAlign = propTextAlign ?? formTextAlign;\n const userAssistanceDensity = propUserAssistanceDensity ?? formUserAssistanceDensity;\n\n const {\n enabledElementRef,\n focusProps,\n isFocused: origIsFocused,\n readonlyElementRef\n } = useFocusableTextField<HTMLInputElement, HTMLDivElement>({ isDisabled, isReadonly, ref });\n\n const {\n collectionProps,\n data,\n dropdownArrowEventHandlers,\n dropdownEventHandlers,\n dropdownRef,\n hasSelectedValuesCount,\n inputEventHandlers,\n isDropdownOpen,\n isDropdownSelectedOnlyView,\n isFocused,\n isUserFiltering,\n mainFieldRef,\n mouseProps,\n onLoadRange,\n searchText,\n selectedValuesCountProps,\n userInput\n } = useSelectMultiple<K, D>({\n data: propData,\n inputRef: enabledElementRef as MutableRef<HTMLInputElement>,\n isDisabled,\n isFocused: origIsFocused,\n isReadonly,\n onCommit,\n onFilter,\n onLoadRange: propOnLoadRange,\n valueItems\n });\n\n // The incoming propIsLoading tells us that we are in a loading state, but we don't want to\n // show the loading indicator until after a delay, because showing it immediately could result\n // in unwanted flashing. The isLoading var below will be set to true by useLoadingIndicatorTimer\n // after the delay, when the timer expires, at which point we should show the loading indicator.\n // If propIsLoading is set to false before the timer expires, then the timer will be cancelled\n // and no loading indicator will be shown.\n // (ListView detects its loading state by checking data === null. While it would be nice for\n // us to be consistent and check valueItems === null, we need to use a separate isLoading prop.\n // If valueItems === null triggers our loading state, then the selections in the dropdown\n // are cleared for that period of time, which is undesirable.)\n const isLoading = useLoadingIndicatorTimer(propIsLoading ?? false);\n\n const {\n baseId,\n formFieldContext,\n inputProps,\n labelProps,\n textFieldProps,\n userAssistanceProps\n } = useTextField({\n ariaDescribedBy,\n isDisabled,\n isFocused,\n isLoading,\n isReadonly,\n labelEdge,\n messages,\n styleVariant: variant,\n value: valueItems !== undefined && valueItems.length > 0 ? true : undefined\n });\n\n const dropdownId = `${baseId}-dropdown`;\n\n const displayValue = useDisplayValues(itemText, valueItems);\n\n const labelComp = labelEdge !== 'none' ? <Label {...labelProps}>{label}</Label> : undefined;\n\n const fieldLabelProps = {\n label: labelEdge !== 'none' ? labelComp : undefined,\n labelEdge: labelEdge !== 'none' ? labelEdge : undefined,\n labelStartWidth: labelEdge !== 'none' ? labelStartWidth : undefined\n };\n\n const ariaLabel = labelEdge === 'none' ? label : undefined;\n\n const inlineUserAssistance =\n isDisabled || isReadonly ? (\n // save space for user assistance if density is 'efficient', even though we don't\n // render user assistance for disabled or readonly fields\n userAssistanceDensity !== 'efficient' ? undefined : (\n <InlineUserAssistance\n userAssistanceDensity={userAssistanceDensity}\n {...userAssistanceProps}\n />\n )\n ) : (\n <InlineUserAssistance\n assistiveText={assistiveText}\n fieldLabel={label}\n helpSourceLink={helpSourceLink}\n helpSourceText={helpSourceText}\n messages={messages}\n isRequiredShown={isRequiredShown}\n userAssistanceDensity={userAssistanceDensity}\n {...userAssistanceProps}\n />\n );\n\n const translations = useTranslationBundle<BundleType>('@oracle/oraclejet-preact');\n\n if (isReadonly) {\n return (\n <FormFieldContext.Provider value={formFieldContext}>\n <ReadonlyTextField\n role=\"presentation\"\n inlineUserAssistance={inlineUserAssistance}\n onBlur={focusProps.onfocusout}\n onFocus={focusProps.onfocusin}\n {...fieldLabelProps}>\n <ReadonlyTextFieldInput\n ariaDescribedBy={ariaDescribedBy}\n ariaLabel={ariaLabel}\n ariaLabelledBy={labelProps.id}\n as=\"div\"\n elementRef={readonlyElementRef}\n hasInsideLabel={label !== undefined && labelEdge === 'inside'}\n textAlign={textAlign}\n value={displayValue}\n />\n </ReadonlyTextField>\n </FormFieldContext.Provider>\n );\n }\n\n const isDataFetched = data !== undefined && data !== null && !isBeforeDataFetch<K, D>(data);\n const hasInsideLabel = labelComp !== undefined && labelEdge === 'inside';\n const liveRegionText =\n isDropdownOpen && isDataFetched\n ? data?.totalSize === 0\n ? translations.select_noMatchesFound()\n : data?.totalSize === 1\n ? translations.select_oneMatchFound()\n : data?.sizePrecision === 'exact'\n ? translations.select_sizeMatchesFound({ TOTAL_SIZE: `${data?.totalSize}` })\n : translations.select_sizeOrMoreMatchesFound({ TOTAL_SIZE: `${data?.totalSize}` })\n : '';\n\n const mainContent = (\n <Fragment>\n <TextFieldInput\n ariaAutoComplete=\"list\"\n ariaControls={dropdownId}\n ariaExpanded={isDropdownOpen}\n ariaLabel={ariaLabel}\n autoComplete=\"off\"\n hasInsideLabel={hasInsideLabel}\n inputRef={enabledElementRef}\n isRequired={isRequired}\n // onCommit={handleCommit}\n {...inputEventHandlers}\n placeholder={placeholder}\n role=\"combobox\"\n spellcheck={false}\n textAlign={textAlign}\n type={isMobile() ? (virtualKeyboard === 'auto' ? 'search' : virtualKeyboard) : undefined}\n value={isUserFiltering ? userInput : displayValue}\n {...inputProps}\n />\n <LiveRegion>{liveRegionText}</LiveRegion>\n </Fragment>\n );\n\n const dropdownArrow = (\n <DropdownArrow\n isDisabled={isDisabled}\n size={hasInsideLabel ? 'md' : 'sm'}\n {...dropdownArrowEventHandlers}\n />\n );\n const selectedValuesCount = valueItems?.length;\n const endContent = isLoading ? undefined : !hasSelectedValuesCount ? (\n dropdownArrow\n ) : (\n <Flex align=\"center\" justify=\"center\" gap={[0, '1x']}>\n <SelectedValuesCount\n accessibleLabel={label}\n count={selectedValuesCount}\n isDisabled={isDisabled}\n isSelected={isDropdownSelectedOnlyView}\n {...selectedValuesCountProps}\n />\n {dropdownArrow}\n </Flex>\n );\n\n const dropdownInlineUserAssistance =\n isDropdownOpen &&\n !isDisabled &&\n !isReadonly &&\n (assistiveText || helpSourceLink) &&\n (userAssistanceDensity === 'efficient' || userAssistanceDensity === 'reflow') ? (\n <DropdownUserAssistance\n assistiveText={assistiveText}\n fieldLabel={label}\n helpSourceLink={helpSourceLink}\n helpSourceText={helpSourceText}\n userAssistanceDensity={userAssistanceDensity}\n />\n ) : undefined;\n\n const isEmptyResults = isDataFetched && data?.totalSize === 0;\n const dropdownListContent = isEmptyResults ? (\n <EmptyResults />\n ) : (\n <DefaultList<K, D>\n {...collectionProps}\n accessibleSummary={label ?? ''}\n data={data}\n itemText={itemText}\n onLoadRange={onLoadRange}\n searchText={\n isDropdownSelectedOnlyView ? undefined : isUserFiltering ? searchText : undefined\n }\n selectionMode=\"multiple\"\n />\n );\n\n return (\n <Fragment>\n <FormFieldContext.Provider value={formFieldContext}>\n <TextField\n endContent={endContent}\n inlineUserAssistance={inlineUserAssistance}\n mainContent={mainContent}\n mainFieldRef={mainFieldRef}\n onBlur={focusProps?.onfocusout}\n onFocus={focusProps?.onfocusin}\n {...textFieldProps}\n {...fieldLabelProps}\n {...mouseProps}></TextField>\n </FormFieldContext.Provider>\n <Dropdown\n dropdownRef={dropdownRef}\n id={dropdownId}\n isOpen={\n isDropdownOpen &&\n data !== undefined &&\n (data === null || data.totalSize > 0 || isBeforeDataFetch<K, D>(data) || isEmptyResults)\n }\n anchorRef={mainFieldRef}\n {...dropdownEventHandlers}>\n <DropdownList\n hasBottomGap={dropdownInlineUserAssistance === undefined}\n isLoading={data === null}>\n {dropdownListContent}\n </DropdownList>\n {dropdownInlineUserAssistance}\n </Dropdown>\n </Fragment>\n );\n }\n);\n"],"names":["SelectedValuesCount","_a","accessibleLabel","count","onKeyDown","onKeyUp","onMouseDown","passThroughProps","__rest","translations","useTranslationBundle","instructions","selectMultiple_showSelectedValues","accLabel","ninetyNinePlus","selectMultiple_countPlus","COUNT","chipCount","selectMultiple_valuesSelected","_jsx","Object","assign","class","children","jsx","Chip","label","useDisplayValues","itemText","valueItems","separator","plural_separator","concatenatedDisplayValues","useMemo","undefined","displayValues","selectedItems","arValues","values","mapFunc","itemContext","renderItemText","mappedArray","map","Set","_createDisplayValues","concatDisplayValues","Array","from","join","_concatDisplayValues","useSelectMultiple","data","propData","inputRef","isDisabled","isFocused","propIsFocused","isReadonly","onCommit","onFilter","onLoadRange","propOnLoadRange","isDropdownSelectedOnlyView","setDropdownSelectedOnlyView","useState","selectedValuesCount","length","hasSelectedValuesCount","selectedOnlyDataProps","offset","totalSize","sizePrecision","valueItem","metadata","key","useSelectedOnlyData","currentRow","dropdownRef","handleDropdownArrowClick","handleDropdownAutoDismiss","baseHandleDropdownAutoDismiss","handleInput","handleMainFieldKeyDown","baseHandleMainFieldKeyDown","handleMainFieldKeyUp","handleUpDownArrowKeys","isDropdownOpen","isUserFiltering","mainFieldRef","onCurrentKeyChange","searchText","selectedKeys","setCurrentRow","setDropdownOpen","setSelectedKeys","userInput","useSelectCommon","removeDropdown","useCallback","_b","current","parentElement","removeChild","myHandleDropdownAutoDismiss","event","type","keyboardEvent","code","KEYS","TAB","shiftKey","focus","chipRef","myHandleMainFieldKeyDown","isControlOrFunctionKey","stopPropagation","useEffect","keys","reduce","accumKeys","currentItem","add","useRef","querySelector","handleSelectedValuesCountKeyDown","UP","DOWN","preventDefault","ESC","ENTER","handleSelectedValuesCountKeyUp","handleSelectedValuesCountMouseDown","handleSelectedValuesCountToggle","detail","value","onSelectionChange","newKeys","previousValue","dropdownEventHandlers","mergeProps","onAutoDismiss","inputEventHandlers","onInput","rowKey","collectionProps","currentKey","dropdownArrowEventHandlers","onClick","mouseProps","selectedValuesCountProps","onToggle","SelectMultiple","forwardRef","ariaDescribedBy","assistiveText","helpSourceLink","helpSourceText","propIsDisabled","isLoading","propIsLoading","propIsReadonly","isRequired","isRequiredShown","labelEdge","propLabelEdge","labelStartWidth","propLabelStartWidth","messages","placeholder","textAlign","propTextAlign","userAssistanceDensity","propUserAssistanceDensity","variant","virtualKeyboard","ref","isFormDisabled","isFormReadonly","formLabelEdge","formLabelStartWidth","formTextAlign","formUserAssistanceDensity","useFormContext","enabledElementRef","focusProps","origIsFocused","readonlyElementRef","useFocusableTextField","useLoadingIndicatorTimer","baseId","formFieldContext","inputProps","labelProps","textFieldProps","userAssistanceProps","useTextField","styleVariant","dropdownId","displayValue","labelComp","Label","fieldLabelProps","ariaLabel","inlineUserAssistance","InlineUserAssistance","fieldLabel","FormFieldContext","Provider","ReadonlyTextField","role","onBlur","onfocusout","onFocus","onfocusin","ReadonlyTextFieldInput","ariaLabelledBy","id","as","elementRef","hasInsideLabel","isDataFetched","isBeforeDataFetch","liveRegionText","select_noMatchesFound","select_oneMatchFound","select_sizeMatchesFound","TOTAL_SIZE","select_sizeOrMoreMatchesFound","mainContent","_jsxs","jsxs","Fragment","TextFieldInput","ariaAutoComplete","ariaControls","ariaExpanded","autoComplete","spellcheck","isMobile","LiveRegion","dropdownArrow","DropdownArrow","size","endContent","Flex","align","justify","gap","isSelected","dropdownInlineUserAssistance","DropdownUserAssistance","isEmptyResults","dropdownListContent","EmptyResults","DefaultList","accessibleSummary","selectionMode","TextField","Dropdown","isOpen","anchorRef","DropdownList","hasBottomGap"],"mappings":"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"}
1
+ {"version":3,"file":"SelectMultiple-1f77445b.js","sources":["../../src/UNSAFE_SelectMultiple/SelectedValuesCount.tsx","../../src/UNSAFE_SelectMultiple/useDisplayValues.ts","../../src/UNSAFE_SelectMultiple/useSelectMultiple.ts","../../src/UNSAFE_SelectMultiple/useSelectedOnlyData.ts","../../src/UNSAFE_SelectMultiple/SelectMultiple.tsx"],"sourcesContent":["import { ComponentProps } from 'preact';\nimport { cssProps } from '@oracle/oraclejet-cssprops';\nimport { Chip } from '../UNSAFE_Chip';\nimport { useTranslationBundle } from '../hooks/UNSAFE_useTranslationBundle';\nimport { BundleType } from '../resources/nls/bundle';\n\nconst rootStyles = cssProps`${{\n display: 'inline-flex'\n}}`;\n\ntype PickedPropsFromChip = Pick<\n ComponentProps<typeof Chip>,\n 'accessibleLabel' | 'isDisabled' | 'isSelected' | 'onToggle'\n>;\n\ntype Props = PickedPropsFromChip & {\n count?: number;\n onKeyDown?: (event: KeyboardEvent) => void;\n onKeyUp?: (event: KeyboardEvent) => void;\n onMouseDown?: (event: MouseEvent) => void;\n};\n\n// This component renders a badge showing the number of selected values\nexport function SelectedValuesCount({\n accessibleLabel,\n count = 0,\n onKeyDown,\n onKeyUp,\n onMouseDown,\n ...passThroughProps\n}: Props) {\n const translations = useTranslationBundle<BundleType>('@oracle/oraclejet-preact');\n const instructions = translations.selectMultiple_showSelectedValues();\n const accLabel = accessibleLabel ? `${accessibleLabel}. ` : '';\n\n const ninetyNinePlus = translations.selectMultiple_countPlus({ COUNT: `99` });\n // The Chip shows the number of values selected or 99+ if the number is over 99.\n const chipCount = count > 99 ? `${ninetyNinePlus}` : `${count}`;\n // The screenreader will hear what the number of selected values is along with instructions\n // like Click to see the full list.\n const valuesSelectedText = translations.selectMultiple_valuesSelected({\n VALUE_COUNT: `${count}`\n });\n const label = `${accLabel}${valuesSelectedText} ${instructions}`;\n return (\n <div class={rootStyles} onKeyDown={onKeyDown} onKeyUp={onKeyUp} onMouseDown={onMouseDown}>\n <Chip accessibleLabel={label} {...passThroughProps}>\n {chipCount}\n </Chip>\n </div>\n );\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { useMemo } from 'preact/hooks';\nimport { useTranslationBundle } from '../hooks/UNSAFE_useTranslationBundle';\nimport { BundleType } from '../resources/nls/bundle';\nimport { Item } from '../utils/UNSAFE_dataProvider';\nimport { ItemTextType } from '../utils/UNSAFE_selectUtils';\nimport { renderItemText } from '../PRIVATE_SelectCommon';\n\nexport function useDisplayValues<K, D>(\n itemText: ItemTextType<K, D>,\n valueItems?: Item<K, D>[]\n): string {\n const translations = useTranslationBundle<BundleType>('@oracle/oraclejet-preact');\n const separator = translations.plural_separator();\n\n // create the text displayed in the field from the selected values\n const concatenatedDisplayValues = useMemo(() => {\n if (valueItems === undefined) {\n return '';\n }\n const displayValues = _createDisplayValues(itemText, valueItems);\n const concatDisplayValues = _concatDisplayValues(displayValues, separator);\n return concatDisplayValues;\n }, [valueItems, itemText]);\n\n return concatenatedDisplayValues;\n}\n\nfunction _concatDisplayValues(displayValues: Set<string>, separator: string) {\n return Array.from(displayValues.values()).join(separator);\n}\n\nfunction _createDisplayValues<K, D>(itemText: ItemTextType<K, D>, selectedItems?: Item<K, D>[]) {\n const arValues = selectedItems ? [...selectedItems?.values()] : [];\n const mapFunc = (itemContext: Item<K, D>) => renderItemText(itemContext, itemText);\n const mappedArray = arValues.map(mapFunc);\n return new Set<string>(mappedArray as string[]);\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { ComponentProps } from 'preact';\nimport { MutableRef, useCallback, useEffect, useMemo, useRef, useState } from 'preact/hooks';\nimport { DataState, SelectionDetail } from '../UNSAFE_Collection';\nimport { Item } from '../utils/UNSAFE_dataProvider';\nimport { mergeProps } from '../utils/UNSAFE_mergeProps';\nimport { ValueUpdateDetail } from '../utils/UNSAFE_valueUpdateDetail';\nimport { isControlOrFunctionKey, KEYS, useSelectCommon } from '../PRIVATE_SelectCommon';\nimport { SelectMultiple } from './SelectMultiple';\nimport { SelectedValuesCount } from './SelectedValuesCount';\nimport { useSelectedOnlyData } from './useSelectedOnlyData';\n\ntype PickedPropsFromSelectMultiple = Pick<\n ComponentProps<typeof SelectMultiple>,\n 'isDisabled' | 'isReadonly' | 'onFilter' | 'onLoadRange'\n>;\ntype UseSelectMultipleProps<K, D> = PickedPropsFromSelectMultiple & {\n data?: DataState<K, D> | null;\n inputRef: MutableRef<HTMLInputElement>;\n isFocused?: boolean;\n onCommit: (detail: ValueUpdateDetail<Set<K>>) => void;\n valueItems?: Item<K, D>[];\n};\n\ntype SelectedValuesCountToggleType = ComponentProps<typeof SelectedValuesCount>['onToggle'];\ntype SelectedValuesCountToggleDetailType = Parameters<\n Exclude<SelectedValuesCountToggleType, undefined>\n>[0];\n\n/**\n * Hook that manages SelectMultiple state and behavior. This hook creates state variables and\n * event listeners, returning properties to apply to components internally rendered by\n * SelectMultiple, as well as state information.\n *\n * @param data Specifies data for the dropdown list.\n * @param inputRef Ref to the input element.\n * @param isDisabled Specifies whether the component is disabled.\n * @param isFocused Specifies whether the component has focus.\n * @param isReadonly Specifies whether the component is readonly.\n * @param onCommit Callback invoked when the selected values are committed.\n * @param onFilter Callback function to trigger loading data for the dropdown list,\n * which may or may not be filtered by user entered text.\n * @param onLoadRange Callback function to handle when the viewport of the dropdown list has\n * changed, including the case where the user scrolls to the end of the list and there are more\n * items to load. The function should set a new DataState on the component for the specified\n * range.\n * @param valueItems Specifies the keys, data, and optional metadata for the selected values.\n *\n * @returns Properties to apply to internal components that SelectMultiple renders, and component\n * state.\n */\nexport function useSelectMultiple<K, D>({\n data: propData,\n inputRef,\n isDisabled,\n isFocused: propIsFocused,\n isReadonly,\n onCommit,\n onFilter,\n onLoadRange: propOnLoadRange,\n valueItems\n}: UseSelectMultipleProps<K, D>) {\n const [isDropdownSelectedOnlyView, setDropdownSelectedOnlyView] = useState(false);\n\n const selectedValuesCount = valueItems?.length;\n const hasSelectedValuesCount =\n (selectedValuesCount !== undefined && selectedValuesCount > 0) || isDropdownSelectedOnlyView;\n\n // show only the selected values in the dropdown if isDropdownSelectedOnlyView is true,\n // otherwise show the full data set\n // TODO: We may need to revisit this for hierarchical data because the selected valueItems\n // won't have any information about ancestor group nodes, and we should probably show selected\n // items in context within the hierarchy. Also, the order of the items in the selected-only\n // view right now follows the order in which they were selected, not the order in which they\n // would appear in the full data set. This may be more of a problem for hierarchical data\n // if items have to appear within the correct group ancestors. We may need to move\n // construction of the selected-only DataState out of the component to the consuming code,\n // and take a callback that we can call as a notification that the app should provide this\n // special DataState to us (kind of like onLoadRange). Note that we may also need an\n // enhancement on the DataProvider API to be able to specify a filterCriterion to filter by\n // the selected keys through a fetchFirst call, because a regular fetchByKeys call would\n // still return results in the order in which the keys were specified and would not return\n // data for the ancestor group nodes.\n const selectedOnlyDataProps = useSelectedOnlyData<K, D>({\n isDropdownSelectedOnlyView,\n valueItems\n });\n const data = isDropdownSelectedOnlyView ? selectedOnlyDataProps.data : propData;\n const onLoadRange = isDropdownSelectedOnlyView\n ? selectedOnlyDataProps.onLoadRange\n : propOnLoadRange;\n\n const {\n currentRow,\n dropdownRef,\n handleDropdownArrowClick,\n handleDropdownAutoDismiss: baseHandleDropdownAutoDismiss,\n handleInput,\n handleMainFieldKeyDown: baseHandleMainFieldKeyDown,\n handleMainFieldKeyUp,\n handleUpDownArrowKeys,\n isDropdownOpen,\n isFocused,\n isUserFiltering,\n mainFieldRef,\n onCurrentKeyChange,\n onMouseDown,\n searchText,\n selectedKeys,\n setCurrentRow,\n setDropdownOpen,\n setSelectedKeys,\n userInput\n } = useSelectCommon<K, D>({\n data,\n inputRef,\n isFocused: propIsFocused,\n onFilter\n });\n\n const removeDropdown = useCallback(() => {\n dropdownRef.current?.parentElement?.removeChild(dropdownRef.current);\n }, []);\n\n const myHandleDropdownAutoDismiss = useCallback(\n (event?: Event) => {\n if (isDropdownOpen) {\n if (event?.type === 'keydown') {\n const keyboardEvent = event as KeyboardEvent;\n switch (keyboardEvent.code) {\n case KEYS.TAB:\n // Put focus on an element in the main field, but don't kill the event, so that\n // the browser can naturally transfer focus to the next focusable item relative\n // to the element in the main field.\n if (keyboardEvent.shiftKey || !hasSelectedValuesCount) {\n inputRef.current?.focus();\n } else {\n chipRef.current?.focus();\n }\n\n // Remove the dropdown immediately, without waiting for a rerender based on changing\n // state, so that the open dropdown cannot get focus when the browser handles the\n // Tab key.\n removeDropdown();\n break;\n default:\n break;\n }\n }\n }\n },\n [hasSelectedValuesCount, isDropdownOpen]\n );\n\n const myHandleMainFieldKeyDown = useCallback(\n (event: KeyboardEvent) => {\n // const target = event.target as HTMLElement;\n // ignore control key and function key\n if (isControlOrFunctionKey(event)) {\n return;\n }\n\n switch (event.code) {\n case KEYS.TAB:\n if (isDropdownOpen && (event.shiftKey || (!hasSelectedValuesCount && !event.shiftKey))) {\n // Remove the dropdown immediately, without waiting for a rerender based on changing\n // state, so that the open dropdown cannot get focus when the browser handles the\n // Tab key.\n removeDropdown();\n\n setDropdownOpen(false);\n }\n\n // JET-53183 - core pack compat: stop propagation of handled events\n // we don't want a parent collection component to jump focus to the next cell and skip\n // over the selected values count chip\n if (hasSelectedValuesCount && !event.shiftKey) {\n event.stopPropagation();\n }\n break;\n\n default:\n break;\n }\n },\n [hasSelectedValuesCount, isDropdownOpen]\n );\n\n // when the array of valueItems changes, pull out the new set of selectedKeys\n useEffect(() => {\n const keys = valueItems?.reduce((accumKeys, currentItem) => {\n accumKeys.add(currentItem.key);\n return accumKeys;\n }, new Set<K>());\n setSelectedKeys(keys);\n }, [valueItems]);\n\n const chipRef = useRef<HTMLElement | null>(null);\n useEffect(() => {\n chipRef.current =\n hasSelectedValuesCount && mainFieldRef.current\n ? mainFieldRef.current.querySelector('[role=\"switch\"]')\n : null;\n }, [hasSelectedValuesCount, isDisabled, isReadonly]);\n\n const handleSelectedValuesCountKeyDown = useCallback(\n (event: KeyboardEvent) => {\n switch (event.code) {\n case KEYS.TAB:\n if (isDropdownOpen && !event.shiftKey) {\n // Remove the dropdown immediately, without waiting for a rerender based on changing\n // state, so that the open dropdown cannot get focus when the browser handles the\n // Tab key.\n removeDropdown();\n\n setDropdownOpen(false);\n }\n\n // JET-53183 - core pack compat: stop propagation of handled events\n // we don't want a parent collection component to jump focus to the next cell and skip\n // over the input\n if (event.shiftKey) {\n event.stopPropagation();\n }\n break;\n\n case KEYS.UP:\n case KEYS.DOWN:\n // prevent the page from scrolling\n event.preventDefault();\n break;\n\n case KEYS.ESC:\n if (isDropdownOpen) {\n setDropdownOpen(false);\n\n event.preventDefault();\n\n // JET-53183 - core pack compat: stop propagation of handled events\n // we don't want a parent collection component to stop editing the row when we close\n // the dropdown\n event.stopPropagation();\n }\n break;\n\n case KEYS.ENTER:\n // JET-53183 - core pack compat: stop propagation of handled events\n // we don't want a parent collection component to move focus to the next row when\n // we toggle between the full and selected only list in the dropdown\n event.stopPropagation();\n break;\n\n default:\n break;\n }\n },\n [isDropdownOpen]\n );\n\n const handleSelectedValuesCountKeyUp = useCallback(\n (event: KeyboardEvent) => {\n switch (event.code) {\n case KEYS.UP:\n case KEYS.DOWN:\n handleUpDownArrowKeys(event);\n break;\n\n default:\n break;\n }\n },\n [handleUpDownArrowKeys]\n );\n\n const handleSelectedValuesCountMouseDown = useCallback((event: MouseEvent) => {\n // call preventDefault so that the dropdown doesn't open showing the full list on mousedown\n // on the chip before switching to show only the selected values on mouseup when the click\n // is handled\n event.preventDefault();\n // explicitly focus the input because it won't happen naturally due to preventDefault()\n inputRef.current?.focus();\n }, []);\n\n const handleSelectedValuesCountToggle = useCallback(\n (detail: SelectedValuesCountToggleDetailType) => {\n if (!isDropdownOpen) {\n setDropdownOpen(true);\n }\n\n const value = detail.value ?? false;\n if (value !== isDropdownSelectedOnlyView) {\n setDropdownSelectedOnlyView(value);\n }\n },\n [isDropdownOpen, isDropdownSelectedOnlyView]\n );\n\n // when the dropdown closes, automatically turn off isDropdownSelectedOnlyView\n useEffect(() => {\n if (!isDropdownOpen && isDropdownSelectedOnlyView) {\n setDropdownSelectedOnlyView(false);\n }\n }, [isDropdownOpen, isDropdownSelectedOnlyView]);\n\n const onSelectionChange = useCallback(\n (detail: SelectionDetail<K>) => {\n const newKeys = new Set(detail.value.keys?.values());\n // update the selectedKeys so that the selection visual state of the collection\n // updates immediately while waiting for new valueItems to be set\n setSelectedKeys(newKeys);\n // call the onCommit callback so that the consuming code can update the valueItems\n onCommit?.({ value: newKeys, previousValue: selectedKeys });\n },\n [onCommit, selectedKeys]\n );\n\n const dropdownEventHandlers = useMemo(() => {\n return mergeProps(\n { onAutoDismiss: baseHandleDropdownAutoDismiss },\n { onAutoDismiss: myHandleDropdownAutoDismiss }\n );\n }, [baseHandleDropdownAutoDismiss, myHandleDropdownAutoDismiss]);\n\n const inputEventHandlers = useMemo(() => {\n return mergeProps(\n {\n onInput: handleInput,\n onKeyDown: baseHandleMainFieldKeyDown,\n onKeyUp: handleMainFieldKeyUp\n },\n { onKeyDown: myHandleMainFieldKeyDown }\n );\n }, [baseHandleMainFieldKeyDown, handleInput, handleMainFieldKeyUp, myHandleMainFieldKeyDown]);\n\n useEffect(() => {\n // clear the current item when the dropdown opens\n if (isDropdownOpen) {\n setCurrentRow({ rowKey: undefined });\n }\n }, [isDropdownOpen]);\n\n return {\n collectionProps: {\n currentKey: currentRow.rowKey,\n onCurrentKeyChange,\n onSelectionChange,\n selectedKeys\n },\n data,\n dropdownArrowEventHandlers: {\n onClick: handleDropdownArrowClick\n },\n dropdownEventHandlers,\n dropdownRef,\n hasSelectedValuesCount,\n inputEventHandlers,\n inputRef,\n isDropdownOpen,\n isDropdownSelectedOnlyView,\n isFocused,\n isUserFiltering,\n mainFieldRef,\n mouseProps: isDisabled || isReadonly ? {} : { onMouseDown },\n onLoadRange,\n searchText,\n selectedValuesCountProps: {\n onKeyDown: handleSelectedValuesCountKeyDown,\n onKeyUp: handleSelectedValuesCountKeyUp,\n onMouseDown: handleSelectedValuesCountMouseDown,\n onToggle: handleSelectedValuesCountToggle\n },\n userInput\n };\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { useMemo } from 'preact/hooks';\nimport { DataState } from 'src/UNSAFE_Collection';\nimport { Item } from '../utils/UNSAFE_dataProvider';\n\ntype Props<K, D> = {\n isDropdownSelectedOnlyView?: boolean;\n valueItems?: Item<K, D>[];\n};\n\n/**\n * Get the data to show in the dropdown for the selected-only view.\n * @param isDropdownSelectedOnlyView Whether the component is showing only selected\n * values in the dropdown: true if so, false if not.\n * @param valueItems The keys, data, and optional metadata for the selected values.\n * @returns An object with data and onLoadRange properties that can be passed on to the\n * list in the dropdown.\n */\nexport function useSelectedOnlyData<K, D>({ isDropdownSelectedOnlyView, valueItems }: Props<K, D>) {\n // Need to specify type of useMemo here so the return statement below doesn't show a type error\n // related to the sizePrecision prop on DataState:\n // Type 'string' is not assignable to type '\"exact\" | \"atLeast\"'.\n // Note that useMemo here only depends on isDropdownSelectedOnlyView because we only want to\n // recalculate when that value changes. While the selected only view is shown, we want the\n // data set to remain static with the set of valueItems as of the time the view was changed to\n // only show selected items so that the user can deselect and reselect items.\n // If useMemo depended on the valueItems too, then the data set would change as the user\n // deselected items, which means those items would disappear from the dropdown and the user\n // could not reselect them.\n const selectedOnlyViewDataState = useMemo<DataState<K, D> | undefined>(() => {\n return !isDropdownSelectedOnlyView || !valueItems || valueItems.length === 0\n ? undefined\n : {\n offset: 0,\n totalSize: valueItems?.length ?? 0,\n sizePrecision: 'exact',\n data: valueItems.map((valueItem: Item<K, D>) => {\n return { data: valueItem.data, metadata: valueItem.metadata ?? { key: valueItem.key } };\n })\n };\n }, [isDropdownSelectedOnlyView]);\n\n return {\n data: selectedOnlyViewDataState,\n onLoadRange: undefined\n };\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { ComponentProps, Fragment, Ref } from 'preact';\nimport { forwardRef } from 'preact/compat';\nimport { MutableRef } from 'preact/hooks';\nimport { FocusableHandle, useFocusableTextField } from '../hooks/UNSAFE_useFocusableTextField';\nimport { useFormContext } from '../hooks/UNSAFE_useFormContext';\nimport { FormFieldContext } from '../hooks/UNSAFE_useFormFieldContext';\nimport { useLoadingIndicatorTimer } from '../hooks/UNSAFE_useLoadingIndicatorTimer';\nimport { useTextField } from '../hooks/UNSAFE_useTextField';\nimport { DataState } from '../UNSAFE_Collection';\nimport { Flex } from '../UNSAFE_Flex';\nimport { Label } from '../UNSAFE_Label';\nimport { ListView } from '../UNSAFE_ListView';\nimport { LiveRegion } from '../UNSAFE_LiveRegion';\nimport {\n ReadonlyTextField,\n ReadonlyTextFieldInput,\n TextField,\n TextFieldInput\n} from '../UNSAFE_TextField';\nimport { InlineUserAssistance } from '../UNSAFE_UserAssistance';\nimport { Item } from '../utils/UNSAFE_dataProvider';\nimport { Size } from '../utils/UNSAFE_size';\nimport { ValueUpdateDetail } from '../utils/UNSAFE_valueUpdateDetail';\nimport {\n DefaultList,\n Dropdown,\n DropdownArrow,\n DropdownList,\n DropdownUserAssistance,\n EmptyResults,\n isBeforeDataFetch,\n isMobile\n} from '../PRIVATE_SelectCommon';\nimport { ItemTextType } from '../utils/UNSAFE_selectUtils';\nimport { SelectedValuesCount } from './SelectedValuesCount';\nimport { useDisplayValues } from './useDisplayValues';\nimport { useSelectMultiple } from './useSelectMultiple';\nimport { useTranslationBundle } from '../hooks/UNSAFE_useTranslationBundle';\nimport { BundleType } from '../resources/nls/bundle';\n\ntype TextFieldInputProps = ComponentProps<typeof TextFieldInput>;\ntype InlineUserAssistanceProps = ComponentProps<typeof InlineUserAssistance>;\n\ntype Props<K extends string | number, D extends Record<string, any>> = {\n /**\n * The ID of an element (or space separated IDs of multiple elements) that\n * describes the input.\n */\n ariaDescribedBy?: TextFieldInputProps['ariaDescribedBy'];\n /**\n * Text to provide guidance to help the user understand what data to enter or select.\n */\n assistiveText?: InlineUserAssistanceProps['assistiveText'];\n /**\n * Specifies data for the dropdown list.\n *\n * Note that the <code>itemText</code> property allows for customizing the rendering\n * of each data item.\n */\n data?: DataState<K, D> | null;\n /**\n * Help source URL associated with the component.\n */\n helpSourceLink?: InlineUserAssistanceProps['helpSourceLink'];\n /**\n * Custom text to be rendered for the <code>helpSourceLink</code>.\n */\n helpSourceText?: InlineUserAssistanceProps['helpSourceText'];\n /**\n * Specifies whether the component is disabled.\n */\n isDisabled?: boolean;\n /**\n * Specifies whether the component is waiting for <code>valueItems</code> to load.\n * While loading, SelectMultiple will show the progressive loading indicator in the text field.\n */\n isLoading?: boolean;\n /**\n * Specifies whether the component is readonly.\n */\n isReadonly?: boolean;\n /**\n * Specifies for accessibility purposes whether a value is required.\n *\n * Setting this property to <code>false</code> means that a value is not required to be\n * selected by the user. Setting this property to <code>true</code> means that a value\n * is required to be selected by the user.\n */\n isRequired?: TextFieldInputProps['isRequired'];\n /**\n * Specifies whether to show an indicator on screen that a value is required, for example\n * before the user has selected a value.\n */\n isRequiredShown?: InlineUserAssistanceProps['isRequiredShown'];\n /**\n * Specifies how to get the text string to render for a data item.\n * This property can be set to either:\n * <ul>\n * <li>a string that specifies the name of a top level data attribute to render as text, or</li>\n * <li>a callback function that takes a properties object and returns the text string to\n * display.</li>\n * </ul>\n *\n * This text will be rendered for the selected <code>valueItems</code> of the component.\n * It will also be rendered for each item in the dropdown. When rendered for the\n * dropdown items, default matching search term highlighting will still be applied.\n */\n itemText: ItemTextType<K, D>;\n /**\n * Specifies the label associated with the field.\n */\n label: string;\n /**\n * Specifies where the label is positioned relative to the field.\n */\n labelEdge?: 'inside' | 'start' | 'top' | 'none';\n /**\n * Specifies the width of the label when <code>labelEdge</code> is <code>\"start\"</code>\n */\n labelStartWidth?: Size;\n /**\n * Messages to show on screen that are associated with the component.\n */\n messages?: InlineUserAssistanceProps['messages'];\n /**\n * A short hint to display before the user selects or enters a value.\n */\n placeholder?: TextFieldInputProps['placeholder'];\n /**\n * Specifies how to align text within the field.\n */\n textAlign?: TextFieldInputProps['textAlign'];\n /**\n * Specifies the density of the user assistance presentation. It can be set to:\n * <ul>\n * <li><code>'efficient'</code>: Show inline and reserve space to prevent layout reflow when user\n * assistance text is displayed.</li>\n * <li><code>'reflow'</code>: Show inline. Layout will reflow when text is displayed.</li>\n * </ul>\n */\n userAssistanceDensity?: InlineUserAssistanceProps['userAssistanceDensity'];\n /**\n * Specifies the keys, data, and optional metadata for the selected values.\n */\n valueItems?: Item<K, D>[];\n /**\n * The style variant of the component.\n */\n variant?: TextFieldInputProps['variant'];\n /**\n * The type of virtual keyboard to display for entering a value on mobile browsers.\n * This property has no effect on desktop browsers.\n */\n virtualKeyboard?: 'auto' | 'email' | 'number' | 'search' | 'tel' | 'text' | 'url';\n /**\n * Callback invoked when the user commits the selected values.\n *\n * The function should set a new array as the <code>valueItems</code> property.\n */\n onCommit: (detail: ValueUpdateDetail<Set<K>>) => void;\n /**\n * Callback function to trigger loading data for the dropdown list, which may or may not be\n * filtered by user entered search text.\n *\n * The function should set a new <code>DataState</code> as the <code>data</code> property.\n */\n onFilter?: ({ searchText }: { searchText?: string }) => void;\n /**\n * Callback function to handle when the viewport of the dropdown list has changed, for example\n * by scrolling, including the case where the user scrolls to the end of the list and there are\n * more items to load.\n *\n * The function should set a new <code>DataState</code> for the specified range as the\n * <code>data</code> property.\n */\n onLoadRange?: ComponentProps<typeof ListView>['onLoadRange'];\n};\n\n/**\n * A SelectMultiple is a dropdown list that supports multiple selection and search filtering.\n */\nexport const SelectMultiple = forwardRef(\n <K extends string | number, D extends Record<string, any>>(\n {\n ariaDescribedBy,\n assistiveText,\n data: propData,\n helpSourceLink,\n helpSourceText,\n isDisabled: propIsDisabled,\n isLoading: propIsLoading,\n isReadonly: propIsReadonly,\n isRequired,\n isRequiredShown,\n itemText,\n label,\n labelEdge: propLabelEdge,\n labelStartWidth: propLabelStartWidth,\n messages,\n onCommit,\n onFilter,\n onLoadRange: propOnLoadRange,\n placeholder,\n textAlign: propTextAlign,\n userAssistanceDensity: propUserAssistanceDensity,\n valueItems,\n variant = 'default',\n virtualKeyboard\n }: Props<K, D>,\n ref?: Ref<FocusableHandle>\n ) => {\n const {\n isDisabled: isFormDisabled,\n isReadonly: isFormReadonly,\n labelEdge: formLabelEdge,\n labelStartWidth: formLabelStartWidth,\n textAlign: formTextAlign,\n userAssistanceDensity: formUserAssistanceDensity\n } = useFormContext();\n // default to FormContext values if component properties are not specified\n const isDisabled = propIsDisabled ?? isFormDisabled;\n const isReadonly = propIsReadonly ?? isFormReadonly;\n const labelEdge = propLabelEdge ?? formLabelEdge;\n const labelStartWidth = propLabelStartWidth ?? formLabelStartWidth;\n const textAlign = propTextAlign ?? formTextAlign;\n const userAssistanceDensity = propUserAssistanceDensity ?? formUserAssistanceDensity;\n\n const {\n enabledElementRef,\n focusProps,\n isFocused: origIsFocused,\n readonlyElementRef\n } = useFocusableTextField<HTMLInputElement, HTMLDivElement>({ isDisabled, isReadonly, ref });\n\n const {\n collectionProps,\n data,\n dropdownArrowEventHandlers,\n dropdownEventHandlers,\n dropdownRef,\n hasSelectedValuesCount,\n inputEventHandlers,\n isDropdownOpen,\n isDropdownSelectedOnlyView,\n isFocused,\n isUserFiltering,\n mainFieldRef,\n mouseProps,\n onLoadRange,\n searchText,\n selectedValuesCountProps,\n userInput\n } = useSelectMultiple<K, D>({\n data: propData,\n inputRef: enabledElementRef as MutableRef<HTMLInputElement>,\n isDisabled,\n isFocused: origIsFocused,\n isReadonly,\n onCommit,\n onFilter,\n onLoadRange: propOnLoadRange,\n valueItems\n });\n\n // The incoming propIsLoading tells us that we are in a loading state, but we don't want to\n // show the loading indicator until after a delay, because showing it immediately could result\n // in unwanted flashing. The isLoading var below will be set to true by useLoadingIndicatorTimer\n // after the delay, when the timer expires, at which point we should show the loading indicator.\n // If propIsLoading is set to false before the timer expires, then the timer will be cancelled\n // and no loading indicator will be shown.\n // (ListView detects its loading state by checking data === null. While it would be nice for\n // us to be consistent and check valueItems === null, we need to use a separate isLoading prop.\n // If valueItems === null triggers our loading state, then the selections in the dropdown\n // are cleared for that period of time, which is undesirable.)\n const isLoading = useLoadingIndicatorTimer(propIsLoading ?? false);\n\n const {\n baseId,\n formFieldContext,\n inputProps,\n labelProps,\n textFieldProps,\n userAssistanceProps\n } = useTextField({\n ariaDescribedBy,\n isDisabled,\n isFocused,\n isLoading,\n isReadonly,\n labelEdge,\n messages,\n styleVariant: variant,\n value: valueItems !== undefined && valueItems.length > 0 ? true : undefined\n });\n\n const dropdownId = `${baseId}-dropdown`;\n\n const displayValue = useDisplayValues(itemText, valueItems);\n\n const labelComp = labelEdge !== 'none' ? <Label {...labelProps}>{label}</Label> : undefined;\n\n const fieldLabelProps = {\n label: labelEdge !== 'none' ? labelComp : undefined,\n labelEdge: labelEdge !== 'none' ? labelEdge : undefined,\n labelStartWidth: labelEdge !== 'none' ? labelStartWidth : undefined\n };\n\n const ariaLabel = labelEdge === 'none' ? label : undefined;\n\n const inlineUserAssistance =\n isDisabled || isReadonly ? (\n // save space for user assistance if density is 'efficient', even though we don't\n // render user assistance for disabled or readonly fields\n userAssistanceDensity !== 'efficient' ? undefined : (\n <InlineUserAssistance\n userAssistanceDensity={userAssistanceDensity}\n {...userAssistanceProps}\n />\n )\n ) : (\n <InlineUserAssistance\n assistiveText={assistiveText}\n fieldLabel={label}\n helpSourceLink={helpSourceLink}\n helpSourceText={helpSourceText}\n messages={messages}\n isRequiredShown={isRequiredShown}\n userAssistanceDensity={userAssistanceDensity}\n {...userAssistanceProps}\n />\n );\n\n const translations = useTranslationBundle<BundleType>('@oracle/oraclejet-preact');\n\n if (isReadonly) {\n return (\n <FormFieldContext.Provider value={formFieldContext}>\n <ReadonlyTextField\n role=\"presentation\"\n inlineUserAssistance={inlineUserAssistance}\n onBlur={focusProps.onfocusout}\n onFocus={focusProps.onfocusin}\n {...fieldLabelProps}>\n <ReadonlyTextFieldInput\n ariaDescribedBy={ariaDescribedBy}\n ariaLabel={ariaLabel}\n ariaLabelledBy={labelProps.id}\n as=\"div\"\n elementRef={readonlyElementRef}\n hasInsideLabel={label !== undefined && labelEdge === 'inside'}\n textAlign={textAlign}\n value={displayValue}\n />\n </ReadonlyTextField>\n </FormFieldContext.Provider>\n );\n }\n\n const isDataFetched = data !== undefined && data !== null && !isBeforeDataFetch<K, D>(data);\n const hasInsideLabel = labelComp !== undefined && labelEdge === 'inside';\n const liveRegionText =\n isDropdownOpen && isDataFetched\n ? data?.totalSize === 0\n ? translations.select_noMatchesFound()\n : data?.totalSize === 1\n ? translations.select_oneMatchFound()\n : data?.sizePrecision === 'exact'\n ? translations.select_sizeMatchesFound({ TOTAL_SIZE: `${data?.totalSize}` })\n : translations.select_sizeOrMoreMatchesFound({ TOTAL_SIZE: `${data?.totalSize}` })\n : '';\n\n const mainContent = (\n <Fragment>\n <TextFieldInput\n ariaAutoComplete=\"list\"\n ariaControls={dropdownId}\n ariaExpanded={isDropdownOpen}\n ariaLabel={ariaLabel}\n autoComplete=\"off\"\n hasInsideLabel={hasInsideLabel}\n inputRef={enabledElementRef}\n isRequired={isRequired}\n // onCommit={handleCommit}\n {...inputEventHandlers}\n placeholder={placeholder}\n role=\"combobox\"\n spellcheck={false}\n textAlign={textAlign}\n type={isMobile() ? (virtualKeyboard === 'auto' ? 'search' : virtualKeyboard) : undefined}\n value={isUserFiltering ? userInput : displayValue}\n {...inputProps}\n />\n <LiveRegion>{liveRegionText}</LiveRegion>\n </Fragment>\n );\n\n const dropdownArrow = (\n <DropdownArrow\n isDisabled={isDisabled}\n size={hasInsideLabel ? 'md' : 'sm'}\n {...dropdownArrowEventHandlers}\n />\n );\n const selectedValuesCount = valueItems?.length;\n const endContent = isLoading ? undefined : !hasSelectedValuesCount ? (\n dropdownArrow\n ) : (\n <Flex align=\"center\" justify=\"center\" gap={[0, '1x']}>\n <SelectedValuesCount\n accessibleLabel={label}\n count={selectedValuesCount}\n isDisabled={isDisabled}\n isSelected={isDropdownSelectedOnlyView}\n {...selectedValuesCountProps}\n />\n {dropdownArrow}\n </Flex>\n );\n\n const dropdownInlineUserAssistance =\n isDropdownOpen &&\n !isDisabled &&\n !isReadonly &&\n (assistiveText || helpSourceLink) &&\n (userAssistanceDensity === 'efficient' || userAssistanceDensity === 'reflow') ? (\n <DropdownUserAssistance\n assistiveText={assistiveText}\n fieldLabel={label}\n helpSourceLink={helpSourceLink}\n helpSourceText={helpSourceText}\n userAssistanceDensity={userAssistanceDensity}\n />\n ) : undefined;\n\n const isEmptyResults = isDataFetched && data?.totalSize === 0;\n const dropdownListContent = isEmptyResults ? (\n <EmptyResults />\n ) : (\n <DefaultList<K, D>\n {...collectionProps}\n accessibleSummary={label ?? ''}\n data={data}\n itemText={itemText}\n onLoadRange={onLoadRange}\n searchText={\n isDropdownSelectedOnlyView ? undefined : isUserFiltering ? searchText : undefined\n }\n selectionMode=\"multiple\"\n />\n );\n\n return (\n <Fragment>\n <FormFieldContext.Provider value={formFieldContext}>\n <TextField\n endContent={endContent}\n inlineUserAssistance={inlineUserAssistance}\n mainContent={mainContent}\n mainFieldRef={mainFieldRef}\n onBlur={focusProps?.onfocusout}\n onFocus={focusProps?.onfocusin}\n {...textFieldProps}\n {...fieldLabelProps}\n {...mouseProps}></TextField>\n </FormFieldContext.Provider>\n <Dropdown\n dropdownRef={dropdownRef}\n id={dropdownId}\n isOpen={\n isDropdownOpen &&\n data !== undefined &&\n (data === null || data.totalSize > 0 || isBeforeDataFetch<K, D>(data) || isEmptyResults)\n }\n anchorRef={mainFieldRef}\n {...dropdownEventHandlers}>\n <DropdownList\n hasBottomGap={dropdownInlineUserAssistance === undefined}\n isLoading={data === null}>\n {dropdownListContent}\n </DropdownList>\n {dropdownInlineUserAssistance}\n </Dropdown>\n </Fragment>\n );\n }\n);\n"],"names":["SelectedValuesCount","_a","accessibleLabel","count","onKeyDown","onKeyUp","onMouseDown","passThroughProps","__rest","translations","useTranslationBundle","instructions","selectMultiple_showSelectedValues","accLabel","ninetyNinePlus","selectMultiple_countPlus","COUNT","chipCount","selectMultiple_valuesSelected","_jsx","Object","assign","class","children","jsx","Chip","label","useDisplayValues","itemText","valueItems","separator","plural_separator","concatenatedDisplayValues","useMemo","undefined","displayValues","selectedItems","arValues","values","mapFunc","itemContext","renderItemText","mappedArray","map","Set","_createDisplayValues","concatDisplayValues","Array","from","join","_concatDisplayValues","useSelectMultiple","data","propData","inputRef","isDisabled","isFocused","propIsFocused","isReadonly","onCommit","onFilter","onLoadRange","propOnLoadRange","isDropdownSelectedOnlyView","setDropdownSelectedOnlyView","useState","selectedValuesCount","length","hasSelectedValuesCount","selectedOnlyDataProps","offset","totalSize","sizePrecision","valueItem","metadata","key","useSelectedOnlyData","currentRow","dropdownRef","handleDropdownArrowClick","handleDropdownAutoDismiss","baseHandleDropdownAutoDismiss","handleInput","handleMainFieldKeyDown","baseHandleMainFieldKeyDown","handleMainFieldKeyUp","handleUpDownArrowKeys","isDropdownOpen","isUserFiltering","mainFieldRef","onCurrentKeyChange","searchText","selectedKeys","setCurrentRow","setDropdownOpen","setSelectedKeys","userInput","useSelectCommon","removeDropdown","useCallback","_b","current","parentElement","removeChild","myHandleDropdownAutoDismiss","event","type","keyboardEvent","code","KEYS","TAB","shiftKey","focus","chipRef","myHandleMainFieldKeyDown","isControlOrFunctionKey","stopPropagation","useEffect","keys","reduce","accumKeys","currentItem","add","useRef","querySelector","handleSelectedValuesCountKeyDown","UP","DOWN","preventDefault","ESC","ENTER","handleSelectedValuesCountKeyUp","handleSelectedValuesCountMouseDown","handleSelectedValuesCountToggle","detail","value","onSelectionChange","newKeys","previousValue","dropdownEventHandlers","mergeProps","onAutoDismiss","inputEventHandlers","onInput","rowKey","collectionProps","currentKey","dropdownArrowEventHandlers","onClick","mouseProps","selectedValuesCountProps","onToggle","SelectMultiple","forwardRef","ariaDescribedBy","assistiveText","helpSourceLink","helpSourceText","propIsDisabled","isLoading","propIsLoading","propIsReadonly","isRequired","isRequiredShown","labelEdge","propLabelEdge","labelStartWidth","propLabelStartWidth","messages","placeholder","textAlign","propTextAlign","userAssistanceDensity","propUserAssistanceDensity","variant","virtualKeyboard","ref","isFormDisabled","isFormReadonly","formLabelEdge","formLabelStartWidth","formTextAlign","formUserAssistanceDensity","useFormContext","enabledElementRef","focusProps","origIsFocused","readonlyElementRef","useFocusableTextField","useLoadingIndicatorTimer","baseId","formFieldContext","inputProps","labelProps","textFieldProps","userAssistanceProps","useTextField","styleVariant","dropdownId","displayValue","labelComp","Label","fieldLabelProps","ariaLabel","inlineUserAssistance","InlineUserAssistance","fieldLabel","FormFieldContext","Provider","ReadonlyTextField","role","onBlur","onfocusout","onFocus","onfocusin","ReadonlyTextFieldInput","ariaLabelledBy","id","as","elementRef","hasInsideLabel","isDataFetched","isBeforeDataFetch","liveRegionText","select_noMatchesFound","select_oneMatchFound","select_sizeMatchesFound","TOTAL_SIZE","select_sizeOrMoreMatchesFound","mainContent","_jsxs","jsxs","Fragment","TextFieldInput","ariaAutoComplete","ariaControls","ariaExpanded","autoComplete","spellcheck","isMobile","LiveRegion","dropdownArrow","DropdownArrow","size","endContent","Flex","align","justify","gap","isSelected","dropdownInlineUserAssistance","DropdownUserAssistance","isEmptyResults","dropdownListContent","EmptyResults","DefaultList","accessibleSummary","selectionMode","TextField","Dropdown","isOpen","anchorRef","DropdownList","hasBottomGap"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- define(["exports","preact/jsx-runtime","preact","preact/compat","./hooks/UNSAFE_useFocusableTextField","./hooks/UNSAFE_useFormContext","./hooks/UNSAFE_useFormFieldContext","./hooks/UNSAFE_useLoadingIndicatorTimer","./hooks/UNSAFE_useTextField","./UNSAFE_Label","./UNSAFE_LiveRegion","./UNSAFE_TextField","./UNSAFE_UserAssistance","./PRIVATE_SelectCommon","preact/hooks","./utils/UNSAFE_mergeProps","./hooks/UNSAFE_useTranslationBundle","./ReadonlyTextFieldInput-d60fe78e","./TextFieldInput-a4cae09b"],function(e,n,o,s,i,t,l,a,r,d,u,c,v,p,F,m,f,h,b){"use strict";const x=s.forwardRef(({ariaDescribedBy:e,assistiveText:s,data:x,helpSourceLink:y,helpSourceText:w,isDisabled:g,isLoading:S,isReadonly:R,isRequired:A,isRequiredShown:E,itemText:D,label:T,labelEdge:C,labelStartWidth:j,messages:k,onCommit:K,onFilter:I,onLoadRange:L,placeholder:U,textAlign:O,userAssistanceDensity:_,valueItem:P,variant:M="default",virtualKeyboard:B},N)=>{const{isDisabled:z,isReadonly:H,labelEdge:q,labelStartWidth:V,textAlign:W,userAssistanceDensity:Y}=t.useFormContext(),$=null!=g?g:z,Z=null!=R?R:H,G=null!=C?C:q,J=null!=j?j:V,Q=null!=O?O:W,X=null!=_?_:Y,{enabledElementRef:ee,focusProps:ne,isFocused:oe,readonlyElementRef:se}=i.useFocusableTextField({isDisabled:$,isReadonly:Z,ref:N}),{collectionProps:ie,dropdownArrowEventHandlers:te,dropdownEventHandlers:le,dropdownRef:ae,inputEventHandlers:re,isDropdownOpen:de,isFocused:ue,isUserFiltering:ce,mainFieldRef:ve,mouseProps:pe,searchText:Fe,userInput:me}=function({data:e,inputRef:n,isDisabled:o,isFocused:s,isReadonly:i,onCommit:t,onFilter:l,valueItem:a}){const{currentRow:r,dropdownRef:d,handleDropdownArrowClick:u,handleDropdownAutoDismiss:c,handleInput:v,handleMainFieldKeyDown:f,handleMainFieldKeyUp:h,isDropdownOpen:b,isFocused:x,isUserFiltering:y,mainFieldRef:w,onCurrentKeyChange:g,onMouseDown:S,searchText:R,selectedKeys:A,setCurrentRow:E,setDropdownOpen:D,setSelectedKeys:T,stopFiltering:C,userInput:j}=p.useSelectCommon({data:e,inputRef:n,isFocused:s,onFilter:l}),k=F.useRef(e),K=F.useRef(b),I=F.useRef(R),L=F.useCallback(e=>{null==t||t({value:e,previousValue:void 0!==a?a.key:void 0})},[t,a]),U=F.useCallback(()=>{D(!1),T(new Set),L(void 0)},[L]),O=F.useCallback(()=>!(!y||""!==j||void 0===a||(U(),0)),[U,y,j,a]);F.useEffect(()=>{x||O()},[x]);const _=F.useCallback(()=>{var e;null===(e=n.current)||void 0===e||e.focus()},[]),P=F.useCallback(()=>{var e,n;null===(n=null===(e=d.current)||void 0===e?void 0:e.parentElement)||void 0===n||n.removeChild(d.current)},[]),M=F.useCallback(e=>{b&&"keydown"===(null==e?void 0:e.type)&&e.code===p.KEYS.TAB&&(void 0!==r&&void 0!==r.rowKey&&(T(new Set([r.rowKey])),L(r.rowKey)),_(),P())},[r,_,b,L]),B=F.useCallback(n=>{var o,s;if(!p.isControlOrFunctionKey(n))switch(n.code){case p.KEYS.TAB:!O()&&b&&null!=e&&e.data.length>0&&(void 0!==r&&void 0!==r.rowKey?(T(new Set([r.rowKey])),L(r.rowKey)):L(null!==(o=null==a?void 0:a.key)&&void 0!==o?o:void 0)),P(),D(!1);break;case p.KEYS.ENTER:!O()&&b&&null!=e&&e.data.length>0&&(D(!1),C(),void 0!==r&&void 0!==r.rowKey?(T(new Set([r.rowKey])),L(r.rowKey)):L(null!==(s=null==a?void 0:a.key)&&void 0!==s?s:void 0))}},[O,r,e,b,L,a]);F.useEffect(()=>{T(void 0===a?void 0:new Set([a.key]))},[a]);const N=F.useCallback(e=>{_(),D(!1),C();const n=e.context.metadata.key;T(new Set([n])),L(n)},[_,L]);F.useEffect(()=>{e!==k.current&&b&&y&&null!=e&&0===e.offset&&e.data.length>0&&E({rowKey:void 0!==R&&(null==R?void 0:R.length)>0?e.data[0].metadata.key:void 0})},[e,b,y,R]),F.useEffect(()=>{b!==K.current&&(!b||y&&void 0!==R&&0!==R.length||E({rowKey:void 0}))},[b,y,R]);const z=F.useMemo(()=>m.mergeProps({onAutoDismiss:c},{onAutoDismiss:M}),[c,M]),H=F.useMemo(()=>m.mergeProps({onInput:v,onKeyDown:f,onKeyUp:h},{onKeyDown:B}),[f,v,h,B]);return F.useEffect(()=>{k.current=e,K.current=b,I.current=R}),{collectionProps:{currentKey:r.rowKey,onCurrentKeyChange:g,onItemAction:N,selectedKeys:A},dropdownArrowEventHandlers:{onClick:u},dropdownEventHandlers:z,dropdownRef:d,inputEventHandlers:H,inputRef:n,isDropdownOpen:b,isFocused:x,isUserFiltering:y,mainFieldRef:w,mouseProps:o||i?{}:{onMouseDown:S},searchText:R,userInput:j}}({data:x,inputRef:ee,isDisabled:$,isFocused:oe,isReadonly:Z,onCommit:K,onFilter:I,valueItem:P}),fe=a.useLoadingIndicatorTimer(null!=S&&S),{baseId:he,formFieldContext:be,inputProps:xe,labelProps:ye,textFieldProps:we,userAssistanceProps:ge}=r.useTextField({ariaDescribedBy:e,isDisabled:$,isFocused:ue,isLoading:fe,isReadonly:Z,labelEdge:G,messages:k,styleVariant:M,value:void 0!==P||void 0}),Se=`${he}-dropdown`,Re=function(e,n){return F.useMemo(()=>{var o;return void 0===n?"":null!==(o=p.renderItemText(n,e))&&void 0!==o?o:""},[n,e])}(D,P),Ae="none"!==G?n.jsx(d.Label,Object.assign({},ye,{children:T})):void 0,Ee={label:"none"!==G?Ae:void 0,labelEdge:"none"!==G?G:void 0,labelStartWidth:"none"!==G?J:void 0},De="none"===G?T:void 0,Te=$||Z?"efficient"!==X?void 0:n.jsx(v.InlineUserAssistance,Object.assign({userAssistanceDensity:X},ge)):n.jsx(v.InlineUserAssistance,Object.assign({assistiveText:s,fieldLabel:T,helpSourceLink:y,helpSourceText:w,messages:k,isRequiredShown:E,userAssistanceDensity:X},ge)),Ce=f.useTranslationBundle("@oracle/oraclejet-preact");if(Z)return n.jsx(l.FormFieldContext.Provider,Object.assign({value:be},{children:n.jsx(c.ReadonlyTextField,Object.assign({role:"presentation",inlineUserAssistance:Te,onBlur:ne.onfocusout,onFocus:ne.onfocusin},Ee,{children:n.jsx(h.ReadonlyTextFieldInput,{ariaDescribedBy:e,ariaLabel:De,ariaLabelledBy:ye.id,as:"div",elementRef:se,hasInsideLabel:void 0!==T&&"inside"===G,textAlign:Q,value:Re})}))}));const je=null!=x&&!p.isBeforeDataFetch(x),ke=void 0!==Ae&&"inside"===G,Ke=de&&je?0===(null==x?void 0:x.totalSize)?Ce.select_noMatchesFound():1===(null==x?void 0:x.totalSize)?Ce.select_oneMatchFound():"exact"===(null==x?void 0:x.sizePrecision)?Ce.select_sizeMatchesFound({TOTAL_SIZE:`${null==x?void 0:x.totalSize}`}):Ce.select_sizeOrMoreMatchesFound({TOTAL_SIZE:`${null==x?void 0:x.totalSize}`}):"",Ie=n.jsxs(o.Fragment,{children:[n.jsx(b.TextFieldInput,Object.assign({ariaAutoComplete:"list",ariaControls:Se,ariaExpanded:de,ariaLabel:De,autoComplete:"off",hasInsideLabel:ke,inputRef:ee,isRequired:A},re,{placeholder:U,role:"combobox",spellcheck:!1,textAlign:Q,type:p.isMobile()?"auto"===B?"search":B:void 0,value:ce?me:Re},xe)),n.jsx(u.LiveRegion,{children:Ke})]}),Le=n.jsx(p.DropdownArrow,Object.assign({isDisabled:$,size:ke?"md":"sm"},te)),Ue=!de||$||Z||!s&&!y||"efficient"!==X&&"reflow"!==X?void 0:n.jsx(p.DropdownUserAssistance,{assistiveText:s,fieldLabel:T,helpSourceLink:y,helpSourceText:w,userAssistanceDensity:X}),Oe=je&&0===(null==x?void 0:x.totalSize),_e=Oe?n.jsx(p.EmptyResults,{}):n.jsx(p.DefaultList,Object.assign({},ie,{accessibleSummary:null!=T?T:"",currentItemVariant:"highlight",data:x,itemText:D,onLoadRange:L,searchText:ce?Fe:void 0,selectionMode:"single"}));return n.jsxs(o.Fragment,{children:[n.jsx(l.FormFieldContext.Provider,Object.assign({value:be},{children:n.jsx(c.TextField,Object.assign({endContent:fe?void 0:Le,inlineUserAssistance:Te,mainContent:Ie,mainFieldRef:ve,onBlur:null==ne?void 0:ne.onfocusout,onFocus:null==ne?void 0:ne.onfocusin},we,Ee,pe))})),n.jsxs(p.Dropdown,Object.assign({dropdownRef:ae,id:Se,isOpen:de&&void 0!==x&&(null===x||x.totalSize>0||p.isBeforeDataFetch(x)||Oe),anchorRef:ve},le,{children:[n.jsx(p.DropdownList,Object.assign({hasBottomGap:void 0===Ue,isLoading:null===x},{children:_e})),Ue]}))]})});e.SelectSingle=x});
2
- //# sourceMappingURL=SelectSingle-3114dcb1.js.map
1
+ define(["exports","preact/jsx-runtime","preact","preact/compat","./hooks/UNSAFE_useFocusableTextField","./hooks/UNSAFE_useFormContext","./hooks/UNSAFE_useFormFieldContext","./hooks/UNSAFE_useLoadingIndicatorTimer","./hooks/UNSAFE_useTextField","./UNSAFE_Label","./UNSAFE_LiveRegion","./UNSAFE_TextField","./UNSAFE_UserAssistance","./PRIVATE_SelectCommon","preact/hooks","./utils/UNSAFE_mergeProps","./hooks/UNSAFE_useTranslationBundle","./ReadonlyTextFieldInput-56711dee","./TextFieldInput-d18240f2"],function(e,n,o,s,i,t,l,a,r,d,u,c,v,p,F,m,f,h,b){"use strict";const x=s.forwardRef(({ariaDescribedBy:e,assistiveText:s,data:x,helpSourceLink:y,helpSourceText:w,isDisabled:g,isLoading:S,isReadonly:R,isRequired:A,isRequiredShown:E,itemText:D,label:T,labelEdge:C,labelStartWidth:j,messages:k,onCommit:K,onFilter:I,onLoadRange:L,placeholder:U,textAlign:O,userAssistanceDensity:_,valueItem:P,variant:M="default",virtualKeyboard:B},N)=>{const{isDisabled:z,isReadonly:H,labelEdge:q,labelStartWidth:V,textAlign:W,userAssistanceDensity:Y}=t.useFormContext(),$=null!=g?g:z,Z=null!=R?R:H,G=null!=C?C:q,J=null!=j?j:V,Q=null!=O?O:W,X=null!=_?_:Y,{enabledElementRef:ee,focusProps:ne,isFocused:oe,readonlyElementRef:se}=i.useFocusableTextField({isDisabled:$,isReadonly:Z,ref:N}),{collectionProps:ie,dropdownArrowEventHandlers:te,dropdownEventHandlers:le,dropdownRef:ae,inputEventHandlers:re,isDropdownOpen:de,isFocused:ue,isUserFiltering:ce,mainFieldRef:ve,mouseProps:pe,searchText:Fe,userInput:me}=function({data:e,inputRef:n,isDisabled:o,isFocused:s,isReadonly:i,onCommit:t,onFilter:l,valueItem:a}){const{currentRow:r,dropdownRef:d,handleDropdownArrowClick:u,handleDropdownAutoDismiss:c,handleInput:v,handleMainFieldKeyDown:f,handleMainFieldKeyUp:h,isDropdownOpen:b,isFocused:x,isUserFiltering:y,mainFieldRef:w,onCurrentKeyChange:g,onMouseDown:S,searchText:R,selectedKeys:A,setCurrentRow:E,setDropdownOpen:D,setSelectedKeys:T,stopFiltering:C,userInput:j}=p.useSelectCommon({data:e,inputRef:n,isFocused:s,onFilter:l}),k=F.useRef(e),K=F.useRef(b),I=F.useRef(R),L=F.useCallback(e=>{null==t||t({value:e,previousValue:void 0!==a?a.key:void 0})},[t,a]),U=F.useCallback(()=>{D(!1),T(new Set),L(void 0)},[L]),O=F.useCallback(()=>!(!y||""!==j||void 0===a||(U(),0)),[U,y,j,a]);F.useEffect(()=>{x||O()},[x]);const _=F.useCallback(()=>{var e;null===(e=n.current)||void 0===e||e.focus()},[]),P=F.useCallback(()=>{var e,n;null===(n=null===(e=d.current)||void 0===e?void 0:e.parentElement)||void 0===n||n.removeChild(d.current)},[]),M=F.useCallback(e=>{b&&"keydown"===(null==e?void 0:e.type)&&e.code===p.KEYS.TAB&&(void 0!==r&&void 0!==r.rowKey&&(T(new Set([r.rowKey])),L(r.rowKey)),_(),P())},[r,_,b,L]),B=F.useCallback(n=>{var o,s;if(!p.isControlOrFunctionKey(n))switch(n.code){case p.KEYS.TAB:!O()&&b&&null!=e&&e.data.length>0&&(void 0!==r&&void 0!==r.rowKey?(T(new Set([r.rowKey])),L(r.rowKey)):L(null!==(o=null==a?void 0:a.key)&&void 0!==o?o:void 0)),P(),D(!1);break;case p.KEYS.ENTER:!O()&&b&&null!=e&&e.data.length>0&&(D(!1),C(),void 0!==r&&void 0!==r.rowKey?(T(new Set([r.rowKey])),L(r.rowKey)):L(null!==(s=null==a?void 0:a.key)&&void 0!==s?s:void 0))}},[O,r,e,b,L,a]);F.useEffect(()=>{T(void 0===a?void 0:new Set([a.key]))},[a]);const N=F.useCallback(e=>{_(),D(!1),C();const n=e.context.metadata.key;T(new Set([n])),L(n)},[_,L]);F.useEffect(()=>{e!==k.current&&b&&y&&null!=e&&0===e.offset&&e.data.length>0&&E({rowKey:void 0!==R&&(null==R?void 0:R.length)>0?e.data[0].metadata.key:void 0})},[e,b,y,R]),F.useEffect(()=>{b!==K.current&&(!b||y&&void 0!==R&&0!==R.length||E({rowKey:void 0}))},[b,y,R]);const z=F.useMemo(()=>m.mergeProps({onAutoDismiss:c},{onAutoDismiss:M}),[c,M]),H=F.useMemo(()=>m.mergeProps({onInput:v,onKeyDown:f,onKeyUp:h},{onKeyDown:B}),[f,v,h,B]);return F.useEffect(()=>{k.current=e,K.current=b,I.current=R}),{collectionProps:{currentKey:r.rowKey,onCurrentKeyChange:g,onItemAction:N,selectedKeys:A},dropdownArrowEventHandlers:{onClick:u},dropdownEventHandlers:z,dropdownRef:d,inputEventHandlers:H,inputRef:n,isDropdownOpen:b,isFocused:x,isUserFiltering:y,mainFieldRef:w,mouseProps:o||i?{}:{onMouseDown:S},searchText:R,userInput:j}}({data:x,inputRef:ee,isDisabled:$,isFocused:oe,isReadonly:Z,onCommit:K,onFilter:I,valueItem:P}),fe=a.useLoadingIndicatorTimer(null!=S&&S),{baseId:he,formFieldContext:be,inputProps:xe,labelProps:ye,textFieldProps:we,userAssistanceProps:ge}=r.useTextField({ariaDescribedBy:e,isDisabled:$,isFocused:ue,isLoading:fe,isReadonly:Z,labelEdge:G,messages:k,styleVariant:M,value:void 0!==P||void 0}),Se=`${he}-dropdown`,Re=function(e,n){return F.useMemo(()=>{var o;return void 0===n?"":null!==(o=p.renderItemText(n,e))&&void 0!==o?o:""},[n,e])}(D,P),Ae="none"!==G?n.jsx(d.Label,Object.assign({},ye,{children:T})):void 0,Ee={label:"none"!==G?Ae:void 0,labelEdge:"none"!==G?G:void 0,labelStartWidth:"none"!==G?J:void 0},De="none"===G?T:void 0,Te=$||Z?"efficient"!==X?void 0:n.jsx(v.InlineUserAssistance,Object.assign({userAssistanceDensity:X},ge)):n.jsx(v.InlineUserAssistance,Object.assign({assistiveText:s,fieldLabel:T,helpSourceLink:y,helpSourceText:w,messages:k,isRequiredShown:E,userAssistanceDensity:X},ge)),Ce=f.useTranslationBundle("@oracle/oraclejet-preact");if(Z)return n.jsx(l.FormFieldContext.Provider,Object.assign({value:be},{children:n.jsx(c.ReadonlyTextField,Object.assign({role:"presentation",inlineUserAssistance:Te,onBlur:ne.onfocusout,onFocus:ne.onfocusin},Ee,{children:n.jsx(h.ReadonlyTextFieldInput,{ariaDescribedBy:e,ariaLabel:De,ariaLabelledBy:ye.id,as:"div",elementRef:se,hasInsideLabel:void 0!==T&&"inside"===G,textAlign:Q,value:Re})}))}));const je=null!=x&&!p.isBeforeDataFetch(x),ke=void 0!==Ae&&"inside"===G,Ke=de&&je?0===(null==x?void 0:x.totalSize)?Ce.select_noMatchesFound():1===(null==x?void 0:x.totalSize)?Ce.select_oneMatchFound():"exact"===(null==x?void 0:x.sizePrecision)?Ce.select_sizeMatchesFound({TOTAL_SIZE:`${null==x?void 0:x.totalSize}`}):Ce.select_sizeOrMoreMatchesFound({TOTAL_SIZE:`${null==x?void 0:x.totalSize}`}):"",Ie=n.jsxs(o.Fragment,{children:[n.jsx(b.TextFieldInput,Object.assign({ariaAutoComplete:"list",ariaControls:Se,ariaExpanded:de,ariaLabel:De,autoComplete:"off",hasInsideLabel:ke,inputRef:ee,isRequired:A},re,{placeholder:U,role:"combobox",spellcheck:!1,textAlign:Q,type:p.isMobile()?"auto"===B?"search":B:void 0,value:ce?me:Re},xe)),n.jsx(u.LiveRegion,{children:Ke})]}),Le=n.jsx(p.DropdownArrow,Object.assign({isDisabled:$,size:ke?"md":"sm"},te)),Ue=!de||$||Z||!s&&!y||"efficient"!==X&&"reflow"!==X?void 0:n.jsx(p.DropdownUserAssistance,{assistiveText:s,fieldLabel:T,helpSourceLink:y,helpSourceText:w,userAssistanceDensity:X}),Oe=je&&0===(null==x?void 0:x.totalSize),_e=Oe?n.jsx(p.EmptyResults,{}):n.jsx(p.DefaultList,Object.assign({},ie,{accessibleSummary:null!=T?T:"",currentItemVariant:"highlight",data:x,itemText:D,onLoadRange:L,searchText:ce?Fe:void 0,selectionMode:"single"}));return n.jsxs(o.Fragment,{children:[n.jsx(l.FormFieldContext.Provider,Object.assign({value:be},{children:n.jsx(c.TextField,Object.assign({endContent:fe?void 0:Le,inlineUserAssistance:Te,mainContent:Ie,mainFieldRef:ve,onBlur:null==ne?void 0:ne.onfocusout,onFocus:null==ne?void 0:ne.onfocusin},we,Ee,pe))})),n.jsxs(p.Dropdown,Object.assign({dropdownRef:ae,id:Se,isOpen:de&&void 0!==x&&(null===x||x.totalSize>0||p.isBeforeDataFetch(x)||Oe),anchorRef:ve},le,{children:[n.jsx(p.DropdownList,Object.assign({hasBottomGap:void 0===Ue,isLoading:null===x},{children:_e})),Ue]}))]})});e.SelectSingle=x});
2
+ //# sourceMappingURL=SelectSingle-d6e91617.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SelectSingle-3114dcb1.js","sources":["../../src/UNSAFE_SelectSingle/SelectSingle.tsx","../../src/UNSAFE_SelectSingle/useSelectSingle.ts","../../src/UNSAFE_SelectSingle/useDisplayValue.ts"],"sourcesContent":["/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { ComponentProps, Fragment, Ref } from 'preact';\nimport { forwardRef } from 'preact/compat';\nimport { MutableRef } from 'preact/hooks';\nimport { FocusableHandle, useFocusableTextField } from '../hooks/UNSAFE_useFocusableTextField';\nimport { useFormContext } from '../hooks/UNSAFE_useFormContext';\nimport { FormFieldContext } from '../hooks/UNSAFE_useFormFieldContext';\nimport { useLoadingIndicatorTimer } from '../hooks/UNSAFE_useLoadingIndicatorTimer';\nimport { useTextField } from '../hooks/UNSAFE_useTextField';\nimport { DataState } from '../UNSAFE_Collection';\nimport { Label } from '../UNSAFE_Label';\nimport { ListView } from '../UNSAFE_ListView';\nimport { LiveRegion } from '../UNSAFE_LiveRegion';\nimport {\n ReadonlyTextField,\n ReadonlyTextFieldInput,\n TextField,\n TextFieldInput\n} from '../UNSAFE_TextField';\nimport { InlineUserAssistance } from '../UNSAFE_UserAssistance';\nimport { Item } from '../utils/UNSAFE_dataProvider';\nimport { Size } from '../utils/UNSAFE_size';\nimport { ValueUpdateDetail } from '../utils/UNSAFE_valueUpdateDetail';\nimport {\n DefaultList,\n Dropdown,\n DropdownArrow,\n DropdownList,\n DropdownUserAssistance,\n EmptyResults,\n isBeforeDataFetch,\n isMobile\n} from '../PRIVATE_SelectCommon';\nimport { ItemTextType } from '../utils/UNSAFE_selectUtils';\nimport { useDisplayValue } from './useDisplayValue';\nimport { useSelectSingle } from './useSelectSingle';\nimport { useTranslationBundle } from '../hooks/UNSAFE_useTranslationBundle';\nimport { BundleType } from '../resources/nls/bundle';\n\ntype TextFieldInputProps = ComponentProps<typeof TextFieldInput>;\ntype InlineUserAssistanceProps = ComponentProps<typeof InlineUserAssistance>;\n\ntype Props<K extends string | number, D extends Record<string, any>> = {\n /**\n * The ID of an element (or space separated IDs of multiple elements) that\n * describes the input.\n */\n ariaDescribedBy?: TextFieldInputProps['ariaDescribedBy'];\n /**\n * Text to provide guidance to help the user understand what data to enter or select.\n */\n assistiveText?: InlineUserAssistanceProps['assistiveText'];\n /**\n * Specifies data for the dropdown list.\n *\n * Note that the <code>itemText</code> property allows for customizing the rendering\n * of each data item.\n */\n data?: DataState<K, D> | null;\n /**\n * Help source URL associated with the component.\n */\n helpSourceLink?: InlineUserAssistanceProps['helpSourceLink'];\n /**\n * Custom text to be rendered for the <code>helpSourceLink</code>.\n */\n helpSourceText?: InlineUserAssistanceProps['helpSourceText'];\n /**\n * Specifies whether the component is disabled.\n */\n isDisabled?: boolean;\n /**\n * Specifies whether the component is waiting for <code>valueItems</code> to load.\n * While loading, SelectSingle will show the progressive loading indicator in the text field.\n */\n isLoading?: boolean;\n /**\n * Specifies whether the component is readonly.\n */\n isReadonly?: boolean;\n /**\n * Specifies for accessibility purposes whether a value is required.\n *\n * Setting this property to <code>false</code> means that a value is not required to be\n * selected by the user. Setting this property to <code>true</code> means that a value\n * is required to be selected by the user.\n */\n isRequired?: TextFieldInputProps['isRequired'];\n /**\n * Specifies whether to show an indicator on screen that a value is required, for example\n * before the user has selected a value.\n */\n isRequiredShown?: InlineUserAssistanceProps['isRequiredShown'];\n /**\n * Specifies how to get the text string to render for a data item.\n * This property can be set to either:\n * <ul>\n * <li>a string that specifies the name of a top level data attribute to render as text, or</li>\n * <li>a callback function that takes a properties object and returns the text string to\n * display.</li>\n * </ul>\n *\n * This text will be rendered for the selected <code>valueItems</code> of the component.\n * It will also be rendered for each item in the dropdown. When rendered for the\n * dropdown items, default matching search term highlighting will still be applied.\n */\n itemText: ItemTextType<K, D>;\n /**\n * Specifies the label associated with the field.\n */\n label: string;\n /**\n * Specifies where the label is positioned relative to the field.\n */\n labelEdge?: 'inside' | 'start' | 'top' | 'none';\n /**\n * Specifies the width of the label when <code>labelEdge</code> is <code>\"start\"</code>\n */\n labelStartWidth?: Size;\n /**\n * Messages to show on screen that are associated with the component.\n */\n messages?: InlineUserAssistanceProps['messages'];\n /**\n * A short hint to display before the user selects or enters a value.\n */\n placeholder?: TextFieldInputProps['placeholder'];\n /**\n * Specifies how to align text within the field.\n */\n textAlign?: TextFieldInputProps['textAlign'];\n /**\n * Specifies the density of the user assistance presentation. It can be set to:\n * <ul>\n * <li><code>'efficient'</code>: Show inline and reserve space to prevent layout reflow when user\n * assistance text is displayed.</li>\n * <li><code>'reflow'</code>: Show inline. Layout will reflow when text is displayed.</li>\n * </ul>\n */\n userAssistanceDensity?: InlineUserAssistanceProps['userAssistanceDensity'];\n /**\n * Specifies the key, data, and optional metadata for the selected value.\n */\n valueItem?: Item<K, D>;\n /**\n * The style variant of the component.\n */\n variant?: TextFieldInputProps['variant'];\n /**\n * The type of virtual keyboard to display for entering a value on mobile browsers.\n * This property has no effect on desktop browsers.\n */\n virtualKeyboard?: 'auto' | 'email' | 'number' | 'search' | 'tel' | 'text' | 'url';\n /**\n * Callback invoked when the user commits the selected value.\n *\n * The function should set a new <code>valueItem</code> property.\n */\n onCommit: (detail: ValueUpdateDetail<K>) => void;\n /**\n * Callback function to trigger loading data for the dropdown list, which may or may not be\n * filtered by user entered search text.\n *\n * The function should set a new <code>DataState</code> as the <code>data</code> property.\n */\n onFilter?: ({ searchText }: { searchText?: string }) => void;\n /**\n * Callback function to handle when the viewport of the dropdown list has changed, for example\n * by scrolling, including the case where the user scrolls to the end of the list and there are\n * more items to load.\n *\n * The function should set a new <code>DataState</code> for the specified range as the\n * <code>data</code> property.\n */\n onLoadRange?: ComponentProps<typeof ListView>['onLoadRange'];\n};\n\n/**\n * A SelectSingle is a dropdown list that supports single selection and search filtering.\n */\nexport const SelectSingle = forwardRef(\n <K extends string | number, D extends Record<string, any>>(\n {\n ariaDescribedBy,\n assistiveText,\n data,\n helpSourceLink,\n helpSourceText,\n isDisabled: propIsDisabled,\n isLoading: propIsLoading,\n isReadonly: propIsReadonly,\n isRequired,\n isRequiredShown,\n itemText,\n label,\n labelEdge: propLabelEdge,\n labelStartWidth: propLabelStartWidth,\n messages,\n onCommit,\n onFilter,\n onLoadRange,\n placeholder,\n textAlign: propTextAlign,\n userAssistanceDensity: propUserAssistanceDensity,\n valueItem,\n variant = 'default',\n virtualKeyboard\n }: Props<K, D>,\n ref?: Ref<FocusableHandle>\n ) => {\n const {\n isDisabled: isFormDisabled,\n isReadonly: isFormReadonly,\n labelEdge: formLabelEdge,\n labelStartWidth: formLabelStartWidth,\n textAlign: formTextAlign,\n userAssistanceDensity: formUserAssistanceDensity\n } = useFormContext();\n // default to FormContext values if component properties are not specified\n const isDisabled = propIsDisabled ?? isFormDisabled;\n const isReadonly = propIsReadonly ?? isFormReadonly;\n const labelEdge = propLabelEdge ?? formLabelEdge;\n const labelStartWidth = propLabelStartWidth ?? formLabelStartWidth;\n const textAlign = propTextAlign ?? formTextAlign;\n const userAssistanceDensity = propUserAssistanceDensity ?? formUserAssistanceDensity;\n\n const {\n enabledElementRef,\n focusProps,\n isFocused: origIsFocused,\n readonlyElementRef\n } = useFocusableTextField<HTMLInputElement, HTMLDivElement>({ isDisabled, isReadonly, ref });\n\n const {\n collectionProps,\n dropdownArrowEventHandlers,\n dropdownEventHandlers,\n dropdownRef,\n inputEventHandlers,\n isDropdownOpen,\n isFocused,\n isUserFiltering,\n mainFieldRef,\n mouseProps,\n searchText,\n userInput\n } = useSelectSingle<K, D>({\n data,\n inputRef: enabledElementRef as MutableRef<HTMLInputElement>,\n isDisabled,\n isFocused: origIsFocused,\n isReadonly,\n onCommit,\n onFilter,\n valueItem\n });\n\n // The incoming propIsLoading tells us that we are in a loading state, but we don't want to\n // show the loading indicator until after a delay, because showing it immediately could result\n // in unwanted flashing. The isLoading var below will be set to true by useLoadingIndicatorTimer\n // after the delay, when the timer expires, at which point we should show the loading indicator.\n // If propIsLoading is set to false before the timer expires, then the timer will be cancelled\n // and no loading indicator will be shown.\n // (ListView detects its loading state by checking data === null. While it would be nice for\n // us to be consistent and check valueItems === null, we need to use a separate isLoading prop.\n // If valueItems === null triggers our loading state, then the selections in the dropdown\n // are cleared for that period of time, which is undesirable.)\n const isLoading = useLoadingIndicatorTimer(propIsLoading ?? false);\n\n const {\n baseId,\n formFieldContext,\n inputProps,\n labelProps,\n textFieldProps,\n userAssistanceProps\n } = useTextField({\n ariaDescribedBy,\n isDisabled,\n isFocused,\n isLoading,\n isReadonly,\n labelEdge,\n messages,\n styleVariant: variant,\n value: valueItem !== undefined ? true : undefined\n });\n\n const dropdownId = `${baseId}-dropdown`;\n\n const displayValue = useDisplayValue(itemText, valueItem);\n\n const labelComp = labelEdge !== 'none' ? <Label {...labelProps}>{label}</Label> : undefined;\n\n const fieldLabelProps = {\n label: labelEdge !== 'none' ? labelComp : undefined,\n labelEdge: labelEdge !== 'none' ? labelEdge : undefined,\n labelStartWidth: labelEdge !== 'none' ? labelStartWidth : undefined\n };\n\n const ariaLabel = labelEdge === 'none' ? label : undefined;\n\n const inlineUserAssistance =\n isDisabled || isReadonly ? (\n // save space for user assistance if density is 'efficient', even though we don't\n // render user assistance for disabled or readonly fields\n userAssistanceDensity !== 'efficient' ? undefined : (\n <InlineUserAssistance\n userAssistanceDensity={userAssistanceDensity}\n {...userAssistanceProps}\n />\n )\n ) : (\n <InlineUserAssistance\n assistiveText={assistiveText}\n fieldLabel={label}\n helpSourceLink={helpSourceLink}\n helpSourceText={helpSourceText}\n messages={messages}\n isRequiredShown={isRequiredShown}\n userAssistanceDensity={userAssistanceDensity}\n {...userAssistanceProps}\n />\n );\n\n const translations = useTranslationBundle<BundleType>('@oracle/oraclejet-preact');\n\n if (isReadonly) {\n return (\n <FormFieldContext.Provider value={formFieldContext}>\n <ReadonlyTextField\n role=\"presentation\"\n inlineUserAssistance={inlineUserAssistance}\n onBlur={focusProps.onfocusout}\n onFocus={focusProps.onfocusin}\n {...fieldLabelProps}>\n <ReadonlyTextFieldInput\n ariaDescribedBy={ariaDescribedBy}\n ariaLabel={ariaLabel}\n ariaLabelledBy={labelProps.id}\n as=\"div\"\n elementRef={readonlyElementRef}\n hasInsideLabel={label !== undefined && labelEdge === 'inside'}\n textAlign={textAlign}\n value={displayValue}\n />\n </ReadonlyTextField>\n </FormFieldContext.Provider>\n );\n }\n\n const isDataFetched = data !== undefined && data !== null && !isBeforeDataFetch<K, D>(data);\n const hasInsideLabel = labelComp !== undefined && labelEdge === 'inside';\n const liveRegionText =\n isDropdownOpen && isDataFetched\n ? data?.totalSize === 0\n ? translations.select_noMatchesFound()\n : data?.totalSize === 1\n ? translations.select_oneMatchFound()\n : data?.sizePrecision === 'exact'\n ? translations.select_sizeMatchesFound({ TOTAL_SIZE: `${data?.totalSize}` })\n : translations.select_sizeOrMoreMatchesFound({ TOTAL_SIZE: `${data?.totalSize}` })\n : '';\n\n const mainContent = (\n <Fragment>\n <TextFieldInput\n ariaAutoComplete=\"list\"\n ariaControls={dropdownId}\n ariaExpanded={isDropdownOpen}\n ariaLabel={ariaLabel}\n autoComplete=\"off\"\n hasInsideLabel={hasInsideLabel}\n inputRef={enabledElementRef}\n isRequired={isRequired}\n // onCommit={handleCommit}\n {...inputEventHandlers}\n placeholder={placeholder}\n role=\"combobox\"\n spellcheck={false}\n textAlign={textAlign}\n type={isMobile() ? (virtualKeyboard === 'auto' ? 'search' : virtualKeyboard) : undefined}\n value={isUserFiltering ? userInput : displayValue}\n {...inputProps}\n />\n <LiveRegion>{liveRegionText}</LiveRegion>\n </Fragment>\n );\n\n const dropdownArrow = (\n <DropdownArrow\n isDisabled={isDisabled}\n size={hasInsideLabel ? 'md' : 'sm'}\n {...dropdownArrowEventHandlers}\n />\n );\n\n const dropdownInlineUserAssistance =\n isDropdownOpen &&\n !isDisabled &&\n !isReadonly &&\n (assistiveText || helpSourceLink) &&\n (userAssistanceDensity === 'efficient' || userAssistanceDensity === 'reflow') ? (\n <DropdownUserAssistance\n assistiveText={assistiveText}\n fieldLabel={label}\n helpSourceLink={helpSourceLink}\n helpSourceText={helpSourceText}\n userAssistanceDensity={userAssistanceDensity}\n />\n ) : undefined;\n\n const isEmptyResults = isDataFetched && data?.totalSize === 0;\n const dropdownListContent = isEmptyResults ? (\n <EmptyResults />\n ) : (\n <DefaultList<K, D>\n {...collectionProps}\n accessibleSummary={label ?? ''}\n currentItemVariant=\"highlight\"\n data={data}\n itemText={itemText}\n onLoadRange={onLoadRange}\n searchText={isUserFiltering ? searchText : undefined}\n selectionMode=\"single\"\n />\n );\n\n return (\n <Fragment>\n <FormFieldContext.Provider value={formFieldContext}>\n <TextField\n endContent={isLoading ? undefined : dropdownArrow}\n inlineUserAssistance={inlineUserAssistance}\n mainContent={mainContent}\n mainFieldRef={mainFieldRef}\n onBlur={focusProps?.onfocusout}\n onFocus={focusProps?.onfocusin}\n {...textFieldProps}\n {...fieldLabelProps}\n {...mouseProps}\n />\n </FormFieldContext.Provider>\n <Dropdown\n dropdownRef={dropdownRef}\n id={dropdownId}\n isOpen={\n isDropdownOpen &&\n data !== undefined &&\n (data === null || data.totalSize > 0 || isBeforeDataFetch<K, D>(data) || isEmptyResults)\n }\n anchorRef={mainFieldRef}\n {...dropdownEventHandlers}>\n <DropdownList\n hasBottomGap={dropdownInlineUserAssistance === undefined}\n isLoading={data === null}>\n {dropdownListContent}\n </DropdownList>\n {dropdownInlineUserAssistance}\n </Dropdown>\n </Fragment>\n );\n }\n);\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { ComponentProps } from 'preact';\nimport { MutableRef, useCallback, useEffect, useMemo, useRef } from 'preact/hooks';\nimport { DataState, ItemActionDetail } from '../UNSAFE_Collection';\nimport { Item } from '../utils/UNSAFE_dataProvider';\nimport { mergeProps } from '../utils/UNSAFE_mergeProps';\nimport { ValueUpdateDetail } from '../utils/UNSAFE_valueUpdateDetail';\nimport { isControlOrFunctionKey, KEYS, useSelectCommon } from '../PRIVATE_SelectCommon';\nimport { SelectSingle } from './SelectSingle';\n\ntype PickedPropsFromSelectSingle = Pick<\n ComponentProps<typeof SelectSingle>,\n 'isDisabled' | 'isReadonly' | 'onFilter'\n>;\ntype UseSelectSingleProps<K, D> = PickedPropsFromSelectSingle & {\n data?: DataState<K, D> | null;\n inputRef: MutableRef<HTMLInputElement>;\n isFocused?: boolean;\n onCommit: (detail: ValueUpdateDetail<K>) => void;\n valueItem?: Item<K, D>;\n};\n\n/**\n * Hook that manages SelectSingle state and behavior. This hook creates state variables and\n * event listeners, returning properties to apply to components internally rendered by\n * SelectSingle, as well as state information.\n *\n * @param data Specifies data for the dropdown list.\n * @param inputRef Ref to the input element.\n * @param isDisabled Specifies whether the component is disabled.\n * @param isFocused Specifies whether the component has focus.\n * @param isReadonly Specifies whether the component is readonly.\n * @param onCommit Callback invoked when the selected value is committed.\n * @param onFilter Callback function to trigger loading data for the dropdown list,\n * which may or may not be filtered by user entered text.\n * @param valueItem Specifies the key, data, and optional metadata for the selected value.\n *\n * @returns Properties to apply to internal components that SelectSingle renders, and component\n * state.\n */\nexport function useSelectSingle<K, D>({\n data,\n inputRef,\n isDisabled,\n isFocused: propIsFocused,\n isReadonly,\n onCommit: propOnCommit,\n onFilter,\n valueItem\n}: UseSelectSingleProps<K, D>) {\n const {\n currentRow,\n dropdownRef,\n handleDropdownArrowClick,\n handleDropdownAutoDismiss: baseHandleDropdownAutoDismiss,\n handleInput,\n handleMainFieldKeyDown: baseHandleMainFieldKeyDown,\n handleMainFieldKeyUp,\n isDropdownOpen,\n isFocused,\n isUserFiltering,\n mainFieldRef,\n onCurrentKeyChange,\n onMouseDown,\n searchText,\n selectedKeys,\n setCurrentRow,\n setDropdownOpen,\n setSelectedKeys,\n stopFiltering,\n userInput\n } = useSelectCommon<K, D>({\n data,\n inputRef,\n isFocused: propIsFocused,\n onFilter\n });\n\n // refs used by some of the effects below to determine whether the effect needs to run,\n // for when the list of dependencies is longer than what we want the trigger to actually be\n const prevDataRef = useRef(data);\n const prevDropdownOpenRef = useRef(isDropdownOpen);\n const prevSearchText = useRef(searchText);\n\n const onCommit = useCallback(\n (value?: K) => {\n propOnCommit?.({\n value: value,\n previousValue: valueItem !== undefined ? valueItem.key : undefined\n });\n },\n [propOnCommit, valueItem]\n );\n\n const clearValue = useCallback(() => {\n setDropdownOpen(false);\n\n setSelectedKeys(new Set<K>());\n\n // call the onCommit callback so that the consuming code can update the valueItem\n onCommit(undefined);\n }, [onCommit]);\n\n const clearValueIfNeeded = useCallback(() => {\n if (isUserFiltering && userInput === '' && valueItem !== undefined) {\n clearValue();\n return true;\n }\n return false;\n }, [clearValue, isUserFiltering, userInput, valueItem]);\n\n // when the field loses focus, check to see if we need to clear the value\n useEffect(() => {\n if (!isFocused) {\n clearValueIfNeeded();\n }\n // only run when focus changes, at which point the current value of clearValueIfNeeded will\n // be used\n }, [isFocused]);\n\n const focusInput = useCallback(() => {\n inputRef.current?.focus();\n }, []);\n\n const removeDropdown = useCallback(() => {\n dropdownRef.current?.parentElement?.removeChild(dropdownRef.current);\n }, []);\n\n const myHandleDropdownAutoDismiss = useCallback(\n (event?: Event) => {\n if (isDropdownOpen) {\n if (event?.type === 'keydown') {\n const keyboardEvent = event as KeyboardEvent;\n switch (keyboardEvent.code) {\n case KEYS.TAB:\n // if there is a currentRow in the dropdown, select it and commit it\n if (currentRow !== undefined && currentRow.rowKey !== undefined) {\n setSelectedKeys(new Set<K>([currentRow.rowKey]));\n onCommit(currentRow.rowKey);\n }\n\n // Put focus on an element in the main field, but don't kill the event, so that\n // the browser can naturally transfer focus to the next focusable item relative\n // to the element in the main field.\n focusInput();\n\n // Remove the dropdown immediately, without waiting for a rerender based on changing\n // state, so that the open dropdown cannot get focus when the browser handles the\n // Tab key.\n removeDropdown();\n break;\n default:\n break;\n }\n }\n }\n },\n [currentRow, focusInput, isDropdownOpen, onCommit]\n );\n\n const myHandleMainFieldKeyDown = useCallback(\n (event: KeyboardEvent) => {\n // ignore control key and function key\n if (isControlOrFunctionKey(event)) {\n return;\n }\n\n switch (event.code) {\n case KEYS.TAB:\n // check whether we need to clear the value;\n // if not, check whether we need to select the current item\n const isValueClearedTab = clearValueIfNeeded();\n if (!isValueClearedTab && isDropdownOpen && data != null && data.data.length > 0) {\n // if there is a currentRow in the dropdown (meaning a highlighted item that would\n // have keyboard focus if the dropdown list had physical focus, which may be different\n // from the currently selected item), select it and commit it;\n // otherwise commit the currently selected value again so that a valueAction event\n // will be fired\n if (currentRow !== undefined && currentRow.rowKey !== undefined) {\n setSelectedKeys(new Set<K>([currentRow.rowKey]));\n onCommit(currentRow.rowKey);\n } else {\n onCommit(valueItem?.key ?? undefined);\n }\n }\n\n // Remove the dropdown immediately, without waiting for a rerender based on changing\n // state, so that the open dropdown cannot get focus when the browser handles the\n // Tab key.\n removeDropdown();\n\n setDropdownOpen(false);\n break;\n\n case KEYS.ENTER:\n // check whether we need to clear the value;\n // if not, check whether we need to select the current item\n const isValueCleared = clearValueIfNeeded();\n if (!isValueCleared && isDropdownOpen && data != null && data.data.length > 0) {\n setDropdownOpen(false);\n\n // after selecting a value, the user is no longer actively filtering, so update related\n // state accordingly so that the newly selected value appears in the field\n stopFiltering();\n\n // if there is a currentRow in the dropdown, select it and commit it;\n // otherwise commit the currently selected value again\n if (currentRow !== undefined && currentRow.rowKey !== undefined) {\n setSelectedKeys(new Set<K>([currentRow.rowKey]));\n onCommit(currentRow.rowKey);\n } else {\n onCommit(valueItem?.key ?? undefined);\n }\n }\n break;\n\n default:\n break;\n }\n },\n [clearValueIfNeeded, currentRow, data, isDropdownOpen, onCommit, valueItem]\n );\n\n // when the valueItem changes, save the new selectedKeys\n useEffect(() => {\n setSelectedKeys(valueItem === undefined ? undefined : new Set([valueItem.key]));\n }, [valueItem]);\n\n const onItemAction = useCallback(\n (detail: ItemActionDetail<K, D>) => {\n focusInput();\n setDropdownOpen(false);\n\n // after selecting a value, the user is no longer actively filtering, so update related\n // state accordingly so that the newly selected value appears in the field\n stopFiltering();\n\n const newKey = detail.context.metadata.key;\n // update the selectedKeys so that the selection visual state of the collection\n // updates immediately while waiting for a new valueItem to be set\n setSelectedKeys(new Set([newKey]));\n // call the onCommit callback so that the consuming code can update the valueItem\n onCommit(newKey);\n },\n [focusInput, onCommit]\n );\n\n useEffect(() => {\n // only run this effect when data changes because we need to wait for the new set of\n // filtered data to be set before highlighting the first result\n if (data === prevDataRef.current) {\n return;\n }\n\n // when filtering, set the first result of the filtered data set to be the current item\n // (check the data offset so we don't try to highlight again if the user scrolls through\n // the list and more data is fetched)\n if (\n isDropdownOpen &&\n isUserFiltering &&\n data != null &&\n data.offset === 0 &&\n data.data.length > 0\n ) {\n // if there are results and search text, highlight the first row, otherwise clear\n // an existing highlight\n setCurrentRow({\n rowKey:\n searchText !== undefined && searchText?.length > 0 ? data.data[0].metadata.key : undefined\n });\n }\n }, [data, isDropdownOpen, isUserFiltering, searchText]);\n\n useEffect(() => {\n // only run this effect when the state of the dropdown changes\n if (isDropdownOpen === prevDropdownOpenRef.current) {\n return;\n }\n\n // clear the current item when the dropdown opens if there is no filter text\n if (\n isDropdownOpen &&\n (!isUserFiltering || searchText === undefined || searchText.length === 0)\n ) {\n setCurrentRow({ rowKey: undefined });\n }\n }, [isDropdownOpen, isUserFiltering, searchText]);\n\n const dropdownEventHandlers = useMemo(() => {\n return mergeProps(\n { onAutoDismiss: baseHandleDropdownAutoDismiss },\n { onAutoDismiss: myHandleDropdownAutoDismiss }\n );\n }, [baseHandleDropdownAutoDismiss, myHandleDropdownAutoDismiss]);\n\n const inputEventHandlers = useMemo(() => {\n return mergeProps(\n {\n onInput: handleInput,\n onKeyDown: baseHandleMainFieldKeyDown,\n onKeyUp: handleMainFieldKeyUp\n },\n { onKeyDown: myHandleMainFieldKeyDown }\n );\n }, [baseHandleMainFieldKeyDown, handleInput, handleMainFieldKeyUp, myHandleMainFieldKeyDown]);\n\n // update refs used in some of the above effects in a useEffect on every render so that they\n // update after the above effects run\n useEffect(() => {\n prevDataRef.current = data;\n prevDropdownOpenRef.current = isDropdownOpen;\n prevSearchText.current = searchText;\n });\n\n return {\n collectionProps: {\n currentKey: currentRow.rowKey,\n onCurrentKeyChange,\n onItemAction,\n selectedKeys\n },\n dropdownArrowEventHandlers: {\n onClick: handleDropdownArrowClick\n },\n dropdownEventHandlers,\n dropdownRef,\n inputEventHandlers,\n inputRef,\n isDropdownOpen,\n isFocused,\n isUserFiltering,\n mainFieldRef,\n mouseProps: isDisabled || isReadonly ? {} : { onMouseDown },\n searchText,\n userInput\n };\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { useMemo } from 'preact/hooks';\nimport { Item } from '../utils/UNSAFE_dataProvider';\nimport { ItemTextType } from '../utils/UNSAFE_selectUtils';\nimport { renderItemText } from '../PRIVATE_SelectCommon';\n\nexport function useDisplayValue<K, D>(\n itemText: ItemTextType<K, D>,\n valueItem?: Item<K, D>\n): string {\n // create the text displayed in the field from the selected value\n const displayValue = useMemo(() => {\n return valueItem === undefined ? '' : renderItemText(valueItem, itemText) ?? '';\n }, [valueItem, itemText]);\n\n return displayValue;\n}\n"],"names":["SelectSingle","forwardRef","ariaDescribedBy","assistiveText","data","helpSourceLink","helpSourceText","isDisabled","propIsDisabled","isLoading","propIsLoading","isReadonly","propIsReadonly","isRequired","isRequiredShown","itemText","label","labelEdge","propLabelEdge","labelStartWidth","propLabelStartWidth","messages","onCommit","onFilter","onLoadRange","placeholder","textAlign","propTextAlign","userAssistanceDensity","propUserAssistanceDensity","valueItem","variant","virtualKeyboard","ref","isFormDisabled","isFormReadonly","formLabelEdge","formLabelStartWidth","formTextAlign","formUserAssistanceDensity","useFormContext","enabledElementRef","focusProps","isFocused","origIsFocused","readonlyElementRef","useFocusableTextField","collectionProps","dropdownArrowEventHandlers","dropdownEventHandlers","dropdownRef","inputEventHandlers","isDropdownOpen","isUserFiltering","mainFieldRef","mouseProps","searchText","userInput","inputRef","propIsFocused","propOnCommit","currentRow","handleDropdownArrowClick","handleDropdownAutoDismiss","baseHandleDropdownAutoDismiss","handleInput","handleMainFieldKeyDown","baseHandleMainFieldKeyDown","handleMainFieldKeyUp","onCurrentKeyChange","onMouseDown","selectedKeys","setCurrentRow","setDropdownOpen","setSelectedKeys","stopFiltering","useSelectCommon","prevDataRef","useRef","prevDropdownOpenRef","prevSearchText","useCallback","value","previousValue","undefined","key","clearValue","Set","clearValueIfNeeded","useEffect","focusInput","_a","current","focus","removeDropdown","_b","parentElement","removeChild","myHandleDropdownAutoDismiss","event","type","code","KEYS","TAB","rowKey","myHandleMainFieldKeyDown","isControlOrFunctionKey","length","ENTER","onItemAction","detail","newKey","context","metadata","offset","useMemo","mergeProps","onAutoDismiss","onInput","onKeyDown","onKeyUp","currentKey","onClick","useSelectSingle","useLoadingIndicatorTimer","baseId","formFieldContext","inputProps","labelProps","textFieldProps","userAssistanceProps","useTextField","styleVariant","dropdownId","displayValue","renderItemText","useDisplayValue","labelComp","_jsx","Label","Object","assign","fieldLabelProps","ariaLabel","inlineUserAssistance","jsx","InlineUserAssistance","fieldLabel","translations","useTranslationBundle","FormFieldContext","Provider","children","ReadonlyTextField","role","onBlur","onfocusout","onFocus","onfocusin","ReadonlyTextFieldInput","ariaLabelledBy","id","as","elementRef","hasInsideLabel","isDataFetched","isBeforeDataFetch","liveRegionText","totalSize","select_noMatchesFound","select_oneMatchFound","sizePrecision","select_sizeMatchesFound","TOTAL_SIZE","select_sizeOrMoreMatchesFound","mainContent","_jsxs","jsxs","Fragment","TextFieldInput","ariaAutoComplete","ariaControls","ariaExpanded","autoComplete","spellcheck","isMobile","LiveRegion","dropdownArrow","DropdownArrow","size","dropdownInlineUserAssistance","DropdownUserAssistance","isEmptyResults","dropdownListContent","EmptyResults","DefaultList","accessibleSummary","currentItemVariant","selectionMode","TextField","endContent","Dropdown","isOpen","anchorRef","DropdownList","hasBottomGap"],"mappings":"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"}
1
+ {"version":3,"file":"SelectSingle-d6e91617.js","sources":["../../src/UNSAFE_SelectSingle/SelectSingle.tsx","../../src/UNSAFE_SelectSingle/useSelectSingle.ts","../../src/UNSAFE_SelectSingle/useDisplayValue.ts"],"sourcesContent":["/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { ComponentProps, Fragment, Ref } from 'preact';\nimport { forwardRef } from 'preact/compat';\nimport { MutableRef } from 'preact/hooks';\nimport { FocusableHandle, useFocusableTextField } from '../hooks/UNSAFE_useFocusableTextField';\nimport { useFormContext } from '../hooks/UNSAFE_useFormContext';\nimport { FormFieldContext } from '../hooks/UNSAFE_useFormFieldContext';\nimport { useLoadingIndicatorTimer } from '../hooks/UNSAFE_useLoadingIndicatorTimer';\nimport { useTextField } from '../hooks/UNSAFE_useTextField';\nimport { DataState } from '../UNSAFE_Collection';\nimport { Label } from '../UNSAFE_Label';\nimport { ListView } from '../UNSAFE_ListView';\nimport { LiveRegion } from '../UNSAFE_LiveRegion';\nimport {\n ReadonlyTextField,\n ReadonlyTextFieldInput,\n TextField,\n TextFieldInput\n} from '../UNSAFE_TextField';\nimport { InlineUserAssistance } from '../UNSAFE_UserAssistance';\nimport { Item } from '../utils/UNSAFE_dataProvider';\nimport { Size } from '../utils/UNSAFE_size';\nimport { ValueUpdateDetail } from '../utils/UNSAFE_valueUpdateDetail';\nimport {\n DefaultList,\n Dropdown,\n DropdownArrow,\n DropdownList,\n DropdownUserAssistance,\n EmptyResults,\n isBeforeDataFetch,\n isMobile\n} from '../PRIVATE_SelectCommon';\nimport { ItemTextType } from '../utils/UNSAFE_selectUtils';\nimport { useDisplayValue } from './useDisplayValue';\nimport { useSelectSingle } from './useSelectSingle';\nimport { useTranslationBundle } from '../hooks/UNSAFE_useTranslationBundle';\nimport { BundleType } from '../resources/nls/bundle';\n\ntype TextFieldInputProps = ComponentProps<typeof TextFieldInput>;\ntype InlineUserAssistanceProps = ComponentProps<typeof InlineUserAssistance>;\n\ntype Props<K extends string | number, D extends Record<string, any>> = {\n /**\n * The ID of an element (or space separated IDs of multiple elements) that\n * describes the input.\n */\n ariaDescribedBy?: TextFieldInputProps['ariaDescribedBy'];\n /**\n * Text to provide guidance to help the user understand what data to enter or select.\n */\n assistiveText?: InlineUserAssistanceProps['assistiveText'];\n /**\n * Specifies data for the dropdown list.\n *\n * Note that the <code>itemText</code> property allows for customizing the rendering\n * of each data item.\n */\n data?: DataState<K, D> | null;\n /**\n * Help source URL associated with the component.\n */\n helpSourceLink?: InlineUserAssistanceProps['helpSourceLink'];\n /**\n * Custom text to be rendered for the <code>helpSourceLink</code>.\n */\n helpSourceText?: InlineUserAssistanceProps['helpSourceText'];\n /**\n * Specifies whether the component is disabled.\n */\n isDisabled?: boolean;\n /**\n * Specifies whether the component is waiting for <code>valueItems</code> to load.\n * While loading, SelectSingle will show the progressive loading indicator in the text field.\n */\n isLoading?: boolean;\n /**\n * Specifies whether the component is readonly.\n */\n isReadonly?: boolean;\n /**\n * Specifies for accessibility purposes whether a value is required.\n *\n * Setting this property to <code>false</code> means that a value is not required to be\n * selected by the user. Setting this property to <code>true</code> means that a value\n * is required to be selected by the user.\n */\n isRequired?: TextFieldInputProps['isRequired'];\n /**\n * Specifies whether to show an indicator on screen that a value is required, for example\n * before the user has selected a value.\n */\n isRequiredShown?: InlineUserAssistanceProps['isRequiredShown'];\n /**\n * Specifies how to get the text string to render for a data item.\n * This property can be set to either:\n * <ul>\n * <li>a string that specifies the name of a top level data attribute to render as text, or</li>\n * <li>a callback function that takes a properties object and returns the text string to\n * display.</li>\n * </ul>\n *\n * This text will be rendered for the selected <code>valueItems</code> of the component.\n * It will also be rendered for each item in the dropdown. When rendered for the\n * dropdown items, default matching search term highlighting will still be applied.\n */\n itemText: ItemTextType<K, D>;\n /**\n * Specifies the label associated with the field.\n */\n label: string;\n /**\n * Specifies where the label is positioned relative to the field.\n */\n labelEdge?: 'inside' | 'start' | 'top' | 'none';\n /**\n * Specifies the width of the label when <code>labelEdge</code> is <code>\"start\"</code>\n */\n labelStartWidth?: Size;\n /**\n * Messages to show on screen that are associated with the component.\n */\n messages?: InlineUserAssistanceProps['messages'];\n /**\n * A short hint to display before the user selects or enters a value.\n */\n placeholder?: TextFieldInputProps['placeholder'];\n /**\n * Specifies how to align text within the field.\n */\n textAlign?: TextFieldInputProps['textAlign'];\n /**\n * Specifies the density of the user assistance presentation. It can be set to:\n * <ul>\n * <li><code>'efficient'</code>: Show inline and reserve space to prevent layout reflow when user\n * assistance text is displayed.</li>\n * <li><code>'reflow'</code>: Show inline. Layout will reflow when text is displayed.</li>\n * </ul>\n */\n userAssistanceDensity?: InlineUserAssistanceProps['userAssistanceDensity'];\n /**\n * Specifies the key, data, and optional metadata for the selected value.\n */\n valueItem?: Item<K, D>;\n /**\n * The style variant of the component.\n */\n variant?: TextFieldInputProps['variant'];\n /**\n * The type of virtual keyboard to display for entering a value on mobile browsers.\n * This property has no effect on desktop browsers.\n */\n virtualKeyboard?: 'auto' | 'email' | 'number' | 'search' | 'tel' | 'text' | 'url';\n /**\n * Callback invoked when the user commits the selected value.\n *\n * The function should set a new <code>valueItem</code> property.\n */\n onCommit: (detail: ValueUpdateDetail<K>) => void;\n /**\n * Callback function to trigger loading data for the dropdown list, which may or may not be\n * filtered by user entered search text.\n *\n * The function should set a new <code>DataState</code> as the <code>data</code> property.\n */\n onFilter?: ({ searchText }: { searchText?: string }) => void;\n /**\n * Callback function to handle when the viewport of the dropdown list has changed, for example\n * by scrolling, including the case where the user scrolls to the end of the list and there are\n * more items to load.\n *\n * The function should set a new <code>DataState</code> for the specified range as the\n * <code>data</code> property.\n */\n onLoadRange?: ComponentProps<typeof ListView>['onLoadRange'];\n};\n\n/**\n * A SelectSingle is a dropdown list that supports single selection and search filtering.\n */\nexport const SelectSingle = forwardRef(\n <K extends string | number, D extends Record<string, any>>(\n {\n ariaDescribedBy,\n assistiveText,\n data,\n helpSourceLink,\n helpSourceText,\n isDisabled: propIsDisabled,\n isLoading: propIsLoading,\n isReadonly: propIsReadonly,\n isRequired,\n isRequiredShown,\n itemText,\n label,\n labelEdge: propLabelEdge,\n labelStartWidth: propLabelStartWidth,\n messages,\n onCommit,\n onFilter,\n onLoadRange,\n placeholder,\n textAlign: propTextAlign,\n userAssistanceDensity: propUserAssistanceDensity,\n valueItem,\n variant = 'default',\n virtualKeyboard\n }: Props<K, D>,\n ref?: Ref<FocusableHandle>\n ) => {\n const {\n isDisabled: isFormDisabled,\n isReadonly: isFormReadonly,\n labelEdge: formLabelEdge,\n labelStartWidth: formLabelStartWidth,\n textAlign: formTextAlign,\n userAssistanceDensity: formUserAssistanceDensity\n } = useFormContext();\n // default to FormContext values if component properties are not specified\n const isDisabled = propIsDisabled ?? isFormDisabled;\n const isReadonly = propIsReadonly ?? isFormReadonly;\n const labelEdge = propLabelEdge ?? formLabelEdge;\n const labelStartWidth = propLabelStartWidth ?? formLabelStartWidth;\n const textAlign = propTextAlign ?? formTextAlign;\n const userAssistanceDensity = propUserAssistanceDensity ?? formUserAssistanceDensity;\n\n const {\n enabledElementRef,\n focusProps,\n isFocused: origIsFocused,\n readonlyElementRef\n } = useFocusableTextField<HTMLInputElement, HTMLDivElement>({ isDisabled, isReadonly, ref });\n\n const {\n collectionProps,\n dropdownArrowEventHandlers,\n dropdownEventHandlers,\n dropdownRef,\n inputEventHandlers,\n isDropdownOpen,\n isFocused,\n isUserFiltering,\n mainFieldRef,\n mouseProps,\n searchText,\n userInput\n } = useSelectSingle<K, D>({\n data,\n inputRef: enabledElementRef as MutableRef<HTMLInputElement>,\n isDisabled,\n isFocused: origIsFocused,\n isReadonly,\n onCommit,\n onFilter,\n valueItem\n });\n\n // The incoming propIsLoading tells us that we are in a loading state, but we don't want to\n // show the loading indicator until after a delay, because showing it immediately could result\n // in unwanted flashing. The isLoading var below will be set to true by useLoadingIndicatorTimer\n // after the delay, when the timer expires, at which point we should show the loading indicator.\n // If propIsLoading is set to false before the timer expires, then the timer will be cancelled\n // and no loading indicator will be shown.\n // (ListView detects its loading state by checking data === null. While it would be nice for\n // us to be consistent and check valueItems === null, we need to use a separate isLoading prop.\n // If valueItems === null triggers our loading state, then the selections in the dropdown\n // are cleared for that period of time, which is undesirable.)\n const isLoading = useLoadingIndicatorTimer(propIsLoading ?? false);\n\n const {\n baseId,\n formFieldContext,\n inputProps,\n labelProps,\n textFieldProps,\n userAssistanceProps\n } = useTextField({\n ariaDescribedBy,\n isDisabled,\n isFocused,\n isLoading,\n isReadonly,\n labelEdge,\n messages,\n styleVariant: variant,\n value: valueItem !== undefined ? true : undefined\n });\n\n const dropdownId = `${baseId}-dropdown`;\n\n const displayValue = useDisplayValue(itemText, valueItem);\n\n const labelComp = labelEdge !== 'none' ? <Label {...labelProps}>{label}</Label> : undefined;\n\n const fieldLabelProps = {\n label: labelEdge !== 'none' ? labelComp : undefined,\n labelEdge: labelEdge !== 'none' ? labelEdge : undefined,\n labelStartWidth: labelEdge !== 'none' ? labelStartWidth : undefined\n };\n\n const ariaLabel = labelEdge === 'none' ? label : undefined;\n\n const inlineUserAssistance =\n isDisabled || isReadonly ? (\n // save space for user assistance if density is 'efficient', even though we don't\n // render user assistance for disabled or readonly fields\n userAssistanceDensity !== 'efficient' ? undefined : (\n <InlineUserAssistance\n userAssistanceDensity={userAssistanceDensity}\n {...userAssistanceProps}\n />\n )\n ) : (\n <InlineUserAssistance\n assistiveText={assistiveText}\n fieldLabel={label}\n helpSourceLink={helpSourceLink}\n helpSourceText={helpSourceText}\n messages={messages}\n isRequiredShown={isRequiredShown}\n userAssistanceDensity={userAssistanceDensity}\n {...userAssistanceProps}\n />\n );\n\n const translations = useTranslationBundle<BundleType>('@oracle/oraclejet-preact');\n\n if (isReadonly) {\n return (\n <FormFieldContext.Provider value={formFieldContext}>\n <ReadonlyTextField\n role=\"presentation\"\n inlineUserAssistance={inlineUserAssistance}\n onBlur={focusProps.onfocusout}\n onFocus={focusProps.onfocusin}\n {...fieldLabelProps}>\n <ReadonlyTextFieldInput\n ariaDescribedBy={ariaDescribedBy}\n ariaLabel={ariaLabel}\n ariaLabelledBy={labelProps.id}\n as=\"div\"\n elementRef={readonlyElementRef}\n hasInsideLabel={label !== undefined && labelEdge === 'inside'}\n textAlign={textAlign}\n value={displayValue}\n />\n </ReadonlyTextField>\n </FormFieldContext.Provider>\n );\n }\n\n const isDataFetched = data !== undefined && data !== null && !isBeforeDataFetch<K, D>(data);\n const hasInsideLabel = labelComp !== undefined && labelEdge === 'inside';\n const liveRegionText =\n isDropdownOpen && isDataFetched\n ? data?.totalSize === 0\n ? translations.select_noMatchesFound()\n : data?.totalSize === 1\n ? translations.select_oneMatchFound()\n : data?.sizePrecision === 'exact'\n ? translations.select_sizeMatchesFound({ TOTAL_SIZE: `${data?.totalSize}` })\n : translations.select_sizeOrMoreMatchesFound({ TOTAL_SIZE: `${data?.totalSize}` })\n : '';\n\n const mainContent = (\n <Fragment>\n <TextFieldInput\n ariaAutoComplete=\"list\"\n ariaControls={dropdownId}\n ariaExpanded={isDropdownOpen}\n ariaLabel={ariaLabel}\n autoComplete=\"off\"\n hasInsideLabel={hasInsideLabel}\n inputRef={enabledElementRef}\n isRequired={isRequired}\n // onCommit={handleCommit}\n {...inputEventHandlers}\n placeholder={placeholder}\n role=\"combobox\"\n spellcheck={false}\n textAlign={textAlign}\n type={isMobile() ? (virtualKeyboard === 'auto' ? 'search' : virtualKeyboard) : undefined}\n value={isUserFiltering ? userInput : displayValue}\n {...inputProps}\n />\n <LiveRegion>{liveRegionText}</LiveRegion>\n </Fragment>\n );\n\n const dropdownArrow = (\n <DropdownArrow\n isDisabled={isDisabled}\n size={hasInsideLabel ? 'md' : 'sm'}\n {...dropdownArrowEventHandlers}\n />\n );\n\n const dropdownInlineUserAssistance =\n isDropdownOpen &&\n !isDisabled &&\n !isReadonly &&\n (assistiveText || helpSourceLink) &&\n (userAssistanceDensity === 'efficient' || userAssistanceDensity === 'reflow') ? (\n <DropdownUserAssistance\n assistiveText={assistiveText}\n fieldLabel={label}\n helpSourceLink={helpSourceLink}\n helpSourceText={helpSourceText}\n userAssistanceDensity={userAssistanceDensity}\n />\n ) : undefined;\n\n const isEmptyResults = isDataFetched && data?.totalSize === 0;\n const dropdownListContent = isEmptyResults ? (\n <EmptyResults />\n ) : (\n <DefaultList<K, D>\n {...collectionProps}\n accessibleSummary={label ?? ''}\n currentItemVariant=\"highlight\"\n data={data}\n itemText={itemText}\n onLoadRange={onLoadRange}\n searchText={isUserFiltering ? searchText : undefined}\n selectionMode=\"single\"\n />\n );\n\n return (\n <Fragment>\n <FormFieldContext.Provider value={formFieldContext}>\n <TextField\n endContent={isLoading ? undefined : dropdownArrow}\n inlineUserAssistance={inlineUserAssistance}\n mainContent={mainContent}\n mainFieldRef={mainFieldRef}\n onBlur={focusProps?.onfocusout}\n onFocus={focusProps?.onfocusin}\n {...textFieldProps}\n {...fieldLabelProps}\n {...mouseProps}\n />\n </FormFieldContext.Provider>\n <Dropdown\n dropdownRef={dropdownRef}\n id={dropdownId}\n isOpen={\n isDropdownOpen &&\n data !== undefined &&\n (data === null || data.totalSize > 0 || isBeforeDataFetch<K, D>(data) || isEmptyResults)\n }\n anchorRef={mainFieldRef}\n {...dropdownEventHandlers}>\n <DropdownList\n hasBottomGap={dropdownInlineUserAssistance === undefined}\n isLoading={data === null}>\n {dropdownListContent}\n </DropdownList>\n {dropdownInlineUserAssistance}\n </Dropdown>\n </Fragment>\n );\n }\n);\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { ComponentProps } from 'preact';\nimport { MutableRef, useCallback, useEffect, useMemo, useRef } from 'preact/hooks';\nimport { DataState, ItemActionDetail } from '../UNSAFE_Collection';\nimport { Item } from '../utils/UNSAFE_dataProvider';\nimport { mergeProps } from '../utils/UNSAFE_mergeProps';\nimport { ValueUpdateDetail } from '../utils/UNSAFE_valueUpdateDetail';\nimport { isControlOrFunctionKey, KEYS, useSelectCommon } from '../PRIVATE_SelectCommon';\nimport { SelectSingle } from './SelectSingle';\n\ntype PickedPropsFromSelectSingle = Pick<\n ComponentProps<typeof SelectSingle>,\n 'isDisabled' | 'isReadonly' | 'onFilter'\n>;\ntype UseSelectSingleProps<K, D> = PickedPropsFromSelectSingle & {\n data?: DataState<K, D> | null;\n inputRef: MutableRef<HTMLInputElement>;\n isFocused?: boolean;\n onCommit: (detail: ValueUpdateDetail<K>) => void;\n valueItem?: Item<K, D>;\n};\n\n/**\n * Hook that manages SelectSingle state and behavior. This hook creates state variables and\n * event listeners, returning properties to apply to components internally rendered by\n * SelectSingle, as well as state information.\n *\n * @param data Specifies data for the dropdown list.\n * @param inputRef Ref to the input element.\n * @param isDisabled Specifies whether the component is disabled.\n * @param isFocused Specifies whether the component has focus.\n * @param isReadonly Specifies whether the component is readonly.\n * @param onCommit Callback invoked when the selected value is committed.\n * @param onFilter Callback function to trigger loading data for the dropdown list,\n * which may or may not be filtered by user entered text.\n * @param valueItem Specifies the key, data, and optional metadata for the selected value.\n *\n * @returns Properties to apply to internal components that SelectSingle renders, and component\n * state.\n */\nexport function useSelectSingle<K, D>({\n data,\n inputRef,\n isDisabled,\n isFocused: propIsFocused,\n isReadonly,\n onCommit: propOnCommit,\n onFilter,\n valueItem\n}: UseSelectSingleProps<K, D>) {\n const {\n currentRow,\n dropdownRef,\n handleDropdownArrowClick,\n handleDropdownAutoDismiss: baseHandleDropdownAutoDismiss,\n handleInput,\n handleMainFieldKeyDown: baseHandleMainFieldKeyDown,\n handleMainFieldKeyUp,\n isDropdownOpen,\n isFocused,\n isUserFiltering,\n mainFieldRef,\n onCurrentKeyChange,\n onMouseDown,\n searchText,\n selectedKeys,\n setCurrentRow,\n setDropdownOpen,\n setSelectedKeys,\n stopFiltering,\n userInput\n } = useSelectCommon<K, D>({\n data,\n inputRef,\n isFocused: propIsFocused,\n onFilter\n });\n\n // refs used by some of the effects below to determine whether the effect needs to run,\n // for when the list of dependencies is longer than what we want the trigger to actually be\n const prevDataRef = useRef(data);\n const prevDropdownOpenRef = useRef(isDropdownOpen);\n const prevSearchText = useRef(searchText);\n\n const onCommit = useCallback(\n (value?: K) => {\n propOnCommit?.({\n value: value,\n previousValue: valueItem !== undefined ? valueItem.key : undefined\n });\n },\n [propOnCommit, valueItem]\n );\n\n const clearValue = useCallback(() => {\n setDropdownOpen(false);\n\n setSelectedKeys(new Set<K>());\n\n // call the onCommit callback so that the consuming code can update the valueItem\n onCommit(undefined);\n }, [onCommit]);\n\n const clearValueIfNeeded = useCallback(() => {\n if (isUserFiltering && userInput === '' && valueItem !== undefined) {\n clearValue();\n return true;\n }\n return false;\n }, [clearValue, isUserFiltering, userInput, valueItem]);\n\n // when the field loses focus, check to see if we need to clear the value\n useEffect(() => {\n if (!isFocused) {\n clearValueIfNeeded();\n }\n // only run when focus changes, at which point the current value of clearValueIfNeeded will\n // be used\n }, [isFocused]);\n\n const focusInput = useCallback(() => {\n inputRef.current?.focus();\n }, []);\n\n const removeDropdown = useCallback(() => {\n dropdownRef.current?.parentElement?.removeChild(dropdownRef.current);\n }, []);\n\n const myHandleDropdownAutoDismiss = useCallback(\n (event?: Event) => {\n if (isDropdownOpen) {\n if (event?.type === 'keydown') {\n const keyboardEvent = event as KeyboardEvent;\n switch (keyboardEvent.code) {\n case KEYS.TAB:\n // if there is a currentRow in the dropdown, select it and commit it\n if (currentRow !== undefined && currentRow.rowKey !== undefined) {\n setSelectedKeys(new Set<K>([currentRow.rowKey]));\n onCommit(currentRow.rowKey);\n }\n\n // Put focus on an element in the main field, but don't kill the event, so that\n // the browser can naturally transfer focus to the next focusable item relative\n // to the element in the main field.\n focusInput();\n\n // Remove the dropdown immediately, without waiting for a rerender based on changing\n // state, so that the open dropdown cannot get focus when the browser handles the\n // Tab key.\n removeDropdown();\n break;\n default:\n break;\n }\n }\n }\n },\n [currentRow, focusInput, isDropdownOpen, onCommit]\n );\n\n const myHandleMainFieldKeyDown = useCallback(\n (event: KeyboardEvent) => {\n // ignore control key and function key\n if (isControlOrFunctionKey(event)) {\n return;\n }\n\n switch (event.code) {\n case KEYS.TAB:\n // check whether we need to clear the value;\n // if not, check whether we need to select the current item\n const isValueClearedTab = clearValueIfNeeded();\n if (!isValueClearedTab && isDropdownOpen && data != null && data.data.length > 0) {\n // if there is a currentRow in the dropdown (meaning a highlighted item that would\n // have keyboard focus if the dropdown list had physical focus, which may be different\n // from the currently selected item), select it and commit it;\n // otherwise commit the currently selected value again so that a valueAction event\n // will be fired\n if (currentRow !== undefined && currentRow.rowKey !== undefined) {\n setSelectedKeys(new Set<K>([currentRow.rowKey]));\n onCommit(currentRow.rowKey);\n } else {\n onCommit(valueItem?.key ?? undefined);\n }\n }\n\n // Remove the dropdown immediately, without waiting for a rerender based on changing\n // state, so that the open dropdown cannot get focus when the browser handles the\n // Tab key.\n removeDropdown();\n\n setDropdownOpen(false);\n break;\n\n case KEYS.ENTER:\n // check whether we need to clear the value;\n // if not, check whether we need to select the current item\n const isValueCleared = clearValueIfNeeded();\n if (!isValueCleared && isDropdownOpen && data != null && data.data.length > 0) {\n setDropdownOpen(false);\n\n // after selecting a value, the user is no longer actively filtering, so update related\n // state accordingly so that the newly selected value appears in the field\n stopFiltering();\n\n // if there is a currentRow in the dropdown, select it and commit it;\n // otherwise commit the currently selected value again\n if (currentRow !== undefined && currentRow.rowKey !== undefined) {\n setSelectedKeys(new Set<K>([currentRow.rowKey]));\n onCommit(currentRow.rowKey);\n } else {\n onCommit(valueItem?.key ?? undefined);\n }\n }\n break;\n\n default:\n break;\n }\n },\n [clearValueIfNeeded, currentRow, data, isDropdownOpen, onCommit, valueItem]\n );\n\n // when the valueItem changes, save the new selectedKeys\n useEffect(() => {\n setSelectedKeys(valueItem === undefined ? undefined : new Set([valueItem.key]));\n }, [valueItem]);\n\n const onItemAction = useCallback(\n (detail: ItemActionDetail<K, D>) => {\n focusInput();\n setDropdownOpen(false);\n\n // after selecting a value, the user is no longer actively filtering, so update related\n // state accordingly so that the newly selected value appears in the field\n stopFiltering();\n\n const newKey = detail.context.metadata.key;\n // update the selectedKeys so that the selection visual state of the collection\n // updates immediately while waiting for a new valueItem to be set\n setSelectedKeys(new Set([newKey]));\n // call the onCommit callback so that the consuming code can update the valueItem\n onCommit(newKey);\n },\n [focusInput, onCommit]\n );\n\n useEffect(() => {\n // only run this effect when data changes because we need to wait for the new set of\n // filtered data to be set before highlighting the first result\n if (data === prevDataRef.current) {\n return;\n }\n\n // when filtering, set the first result of the filtered data set to be the current item\n // (check the data offset so we don't try to highlight again if the user scrolls through\n // the list and more data is fetched)\n if (\n isDropdownOpen &&\n isUserFiltering &&\n data != null &&\n data.offset === 0 &&\n data.data.length > 0\n ) {\n // if there are results and search text, highlight the first row, otherwise clear\n // an existing highlight\n setCurrentRow({\n rowKey:\n searchText !== undefined && searchText?.length > 0 ? data.data[0].metadata.key : undefined\n });\n }\n }, [data, isDropdownOpen, isUserFiltering, searchText]);\n\n useEffect(() => {\n // only run this effect when the state of the dropdown changes\n if (isDropdownOpen === prevDropdownOpenRef.current) {\n return;\n }\n\n // clear the current item when the dropdown opens if there is no filter text\n if (\n isDropdownOpen &&\n (!isUserFiltering || searchText === undefined || searchText.length === 0)\n ) {\n setCurrentRow({ rowKey: undefined });\n }\n }, [isDropdownOpen, isUserFiltering, searchText]);\n\n const dropdownEventHandlers = useMemo(() => {\n return mergeProps(\n { onAutoDismiss: baseHandleDropdownAutoDismiss },\n { onAutoDismiss: myHandleDropdownAutoDismiss }\n );\n }, [baseHandleDropdownAutoDismiss, myHandleDropdownAutoDismiss]);\n\n const inputEventHandlers = useMemo(() => {\n return mergeProps(\n {\n onInput: handleInput,\n onKeyDown: baseHandleMainFieldKeyDown,\n onKeyUp: handleMainFieldKeyUp\n },\n { onKeyDown: myHandleMainFieldKeyDown }\n );\n }, [baseHandleMainFieldKeyDown, handleInput, handleMainFieldKeyUp, myHandleMainFieldKeyDown]);\n\n // update refs used in some of the above effects in a useEffect on every render so that they\n // update after the above effects run\n useEffect(() => {\n prevDataRef.current = data;\n prevDropdownOpenRef.current = isDropdownOpen;\n prevSearchText.current = searchText;\n });\n\n return {\n collectionProps: {\n currentKey: currentRow.rowKey,\n onCurrentKeyChange,\n onItemAction,\n selectedKeys\n },\n dropdownArrowEventHandlers: {\n onClick: handleDropdownArrowClick\n },\n dropdownEventHandlers,\n dropdownRef,\n inputEventHandlers,\n inputRef,\n isDropdownOpen,\n isFocused,\n isUserFiltering,\n mainFieldRef,\n mouseProps: isDisabled || isReadonly ? {} : { onMouseDown },\n searchText,\n userInput\n };\n}\n","/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\n\nimport { useMemo } from 'preact/hooks';\nimport { Item } from '../utils/UNSAFE_dataProvider';\nimport { ItemTextType } from '../utils/UNSAFE_selectUtils';\nimport { renderItemText } from '../PRIVATE_SelectCommon';\n\nexport function useDisplayValue<K, D>(\n itemText: ItemTextType<K, D>,\n valueItem?: Item<K, D>\n): string {\n // create the text displayed in the field from the selected value\n const displayValue = useMemo(() => {\n return valueItem === undefined ? '' : renderItemText(valueItem, itemText) ?? '';\n }, [valueItem, itemText]);\n\n return displayValue;\n}\n"],"names":["SelectSingle","forwardRef","ariaDescribedBy","assistiveText","data","helpSourceLink","helpSourceText","isDisabled","propIsDisabled","isLoading","propIsLoading","isReadonly","propIsReadonly","isRequired","isRequiredShown","itemText","label","labelEdge","propLabelEdge","labelStartWidth","propLabelStartWidth","messages","onCommit","onFilter","onLoadRange","placeholder","textAlign","propTextAlign","userAssistanceDensity","propUserAssistanceDensity","valueItem","variant","virtualKeyboard","ref","isFormDisabled","isFormReadonly","formLabelEdge","formLabelStartWidth","formTextAlign","formUserAssistanceDensity","useFormContext","enabledElementRef","focusProps","isFocused","origIsFocused","readonlyElementRef","useFocusableTextField","collectionProps","dropdownArrowEventHandlers","dropdownEventHandlers","dropdownRef","inputEventHandlers","isDropdownOpen","isUserFiltering","mainFieldRef","mouseProps","searchText","userInput","inputRef","propIsFocused","propOnCommit","currentRow","handleDropdownArrowClick","handleDropdownAutoDismiss","baseHandleDropdownAutoDismiss","handleInput","handleMainFieldKeyDown","baseHandleMainFieldKeyDown","handleMainFieldKeyUp","onCurrentKeyChange","onMouseDown","selectedKeys","setCurrentRow","setDropdownOpen","setSelectedKeys","stopFiltering","useSelectCommon","prevDataRef","useRef","prevDropdownOpenRef","prevSearchText","useCallback","value","previousValue","undefined","key","clearValue","Set","clearValueIfNeeded","useEffect","focusInput","_a","current","focus","removeDropdown","_b","parentElement","removeChild","myHandleDropdownAutoDismiss","event","type","code","KEYS","TAB","rowKey","myHandleMainFieldKeyDown","isControlOrFunctionKey","length","ENTER","onItemAction","detail","newKey","context","metadata","offset","useMemo","mergeProps","onAutoDismiss","onInput","onKeyDown","onKeyUp","currentKey","onClick","useSelectSingle","useLoadingIndicatorTimer","baseId","formFieldContext","inputProps","labelProps","textFieldProps","userAssistanceProps","useTextField","styleVariant","dropdownId","displayValue","renderItemText","useDisplayValue","labelComp","_jsx","Label","Object","assign","fieldLabelProps","ariaLabel","inlineUserAssistance","jsx","InlineUserAssistance","fieldLabel","translations","useTranslationBundle","FormFieldContext","Provider","children","ReadonlyTextField","role","onBlur","onfocusout","onFocus","onfocusin","ReadonlyTextFieldInput","ariaLabelledBy","id","as","elementRef","hasInsideLabel","isDataFetched","isBeforeDataFetch","liveRegionText","totalSize","select_noMatchesFound","select_oneMatchFound","sizePrecision","select_sizeMatchesFound","TOTAL_SIZE","select_sizeOrMoreMatchesFound","mainContent","_jsxs","jsxs","Fragment","TextFieldInput","ariaAutoComplete","ariaControls","ariaExpanded","autoComplete","spellcheck","isMobile","LiveRegion","dropdownArrow","DropdownArrow","size","dropdownInlineUserAssistance","DropdownUserAssistance","isEmptyResults","dropdownListContent","EmptyResults","DefaultList","accessibleSummary","currentItemVariant","selectionMode","TextField","endContent","Dropdown","isOpen","anchorRef","DropdownList","hasBottomGap"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ define(["exports","./tslib.es6-925f910c","preact/jsx-runtime",'module',"./utils/UNSAFE_classNames","./utils/UNSAFE_interpolations/dimensions","./utils/UNSAFE_mergeInterpolations","./utils/UNSAFE_interpolations/borders","./utils/UNSAFE_arrayUtils","./classNames-ee48f57b"],function(s,t,e,r,i,a,n,o,l,c){"use strict";const u=l.stringLiteralArray(["height","width"]),d=l.stringLiteralArray(["borderRadius"]),m=Array.from(u,s=>a.dimensionInterpolations[s]),b=Array.from(d,s=>o.borderInterpolations[s]),p=[...Object.values(b),...Object.values(m)],A=n.mergeInterpolations(p),N="gxopja";s.Skeleton=function(s){var r=t.__rest(s,[]);const i=A(Object.assign({width:"100%",borderRadius:0},r)),a=c.classNames([N]);return e.jsx("div",{style:i,class:a})}});
2
+ //# sourceMappingURL=Skeleton-26929f8e.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Skeleton-e36a6a22.js","sources":["../../src/UNSAFE_Skeleton/Skeleton.tsx"],"sourcesContent":["/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\nimport { cssProps } from '@oracle/oraclejet-cssprops';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { dimensionInterpolations } from '../utils/UNSAFE_interpolations/dimensions';\nimport type { DimensionProps } from '../utils/UNSAFE_interpolations/dimensions';\nimport { mergeInterpolations } from '../utils/UNSAFE_mergeInterpolations';\nimport { borderInterpolations } from '../utils/UNSAFE_interpolations/borders';\nimport type { BorderProps } from '../utils/UNSAFE_interpolations/borders';\nimport { stringLiteralArray } from '../utils/UNSAFE_arrayUtils';\nimport { WithRequired } from '../utils/UNSAFE_typeUtils';\n\nconst dimensions = stringLiteralArray(['height', 'width']);\ntype Dimension = typeof dimensions[number];\nconst border = stringLiteralArray(['borderRadius']);\ntype BorderRadius = typeof border[number];\n\n// This component has some StyleInterpolationProps. Those are the height and width properties of the SkeletonProps.\ntype StyleInterpolationProps = Pick<DimensionProps, Dimension>;\n// This component has some BorderRadiusProps, which is the borderRadius property of the SkeletonProps.\ntype BorderRadiusProps = Pick<BorderProps, BorderRadius>;\n//This type has StyleInterpolationProps and BorderRadiusProps with the height prop made required.\ntype SkeletonProps = WithRequired<StyleInterpolationProps, 'height'> & BorderRadiusProps;\n\n// Create an array [dimensionInterpolations['height'], dimensionInterpolations['width']]\nconst skeletonDimensionInterpolation = Array.from(dimensions, (x) => dimensionInterpolations[x]);\nconst borderRadiusInterpolation = Array.from(border, (x) => borderInterpolations[x]);\nconst interpolations = [\n ...Object.values(borderRadiusInterpolation),\n ...Object.values(skeletonDimensionInterpolation)\n];\n\nconst SkeletonInterpolations = mergeInterpolations<SkeletonProps>(interpolations);\n\n/* Styling for skeleton main (loop) animation */\nconst animationSkeletonStyle = {\n base: cssProps`${{\n animationName: 'var(--oj-c-PRIVATE-DO-NOT-USE-private-preact-skeleton-animation-name)',\n animationIterationCount: 'infinite',\n animationDirection: 'alternate',\n animationDuration: '1.5s'\n }}`\n};\n\n/**\n * Skeleton component allows the appropriate skeleton to be rendered based on the\n * property values\n **/\nexport function Skeleton({ ...props }: SkeletonProps) {\n const skeletonDimensions = SkeletonInterpolations({ width: '100%', borderRadius: 0, ...props });\n const itemClasses = classNames([animationSkeletonStyle.base]);\n return <div style={skeletonDimensions} class={itemClasses} />;\n}\n"],"names":["dimensions","stringLiteralArray","border","skeletonDimensionInterpolation","Array","from","x","dimensionInterpolations","borderRadiusInterpolation","borderInterpolations","interpolations","Object","values","SkeletonInterpolations","mergeInterpolations","animationSkeletonStyle","_a","skeletonDimensions","assign","width","borderRadius","props"],"mappings":"4TAiBA,MAAAA,EAAAC,EAAAA,mBAAA,CAAA,SAAA,UAEAC,EAAAD,EAAAA,mBAAA,CAAA,iBAWAE,EAAAC,MAAAC,KAAAL,EAAAM,GAAAC,EAAAA,wBAAAD,IACAE,EAAAJ,MAAAC,KAAAH,EAAAI,GAAAG,EAAAA,qBAAAH,IACAI,EAAA,IACEC,OAAAC,OAAAJ,MACAG,OAAAC,OAAAT,IAGFU,EAAAC,EAAAA,oBAAAJ,GAGAK,sBAaA,SAAAC,wBACE,MAAAC,EAAAJ,EAAAF,OAAAO,OAAA,CAAAC,MAAA,OAAAC,aAAA,GAAAC"}
1
+ {"version":3,"file":"Skeleton-26929f8e.js","sources":["../../src/UNSAFE_Skeleton/Skeleton.tsx"],"sourcesContent":["/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\nimport { cssProps } from '@oracle/oraclejet-cssprops';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { dimensionInterpolations } from '../utils/UNSAFE_interpolations/dimensions';\nimport type { DimensionProps } from '../utils/UNSAFE_interpolations/dimensions';\nimport { mergeInterpolations } from '../utils/UNSAFE_mergeInterpolations';\nimport { borderInterpolations } from '../utils/UNSAFE_interpolations/borders';\nimport type { BorderProps } from '../utils/UNSAFE_interpolations/borders';\nimport { stringLiteralArray } from '../utils/UNSAFE_arrayUtils';\nimport { WithRequired } from '../utils/UNSAFE_typeUtils';\n\nconst dimensions = stringLiteralArray(['height', 'width']);\ntype Dimension = typeof dimensions[number];\nconst border = stringLiteralArray(['borderRadius']);\ntype BorderRadius = typeof border[number];\n\n// This component has some StyleInterpolationProps. Those are the height and width properties of the SkeletonProps.\ntype StyleInterpolationProps = Pick<DimensionProps, Dimension>;\n// This component has some BorderRadiusProps, which is the borderRadius property of the SkeletonProps.\ntype BorderRadiusProps = Pick<BorderProps, BorderRadius>;\n//This type has StyleInterpolationProps and BorderRadiusProps with the height prop made required.\ntype SkeletonProps = WithRequired<StyleInterpolationProps, 'height'> & BorderRadiusProps;\n\n// Create an array [dimensionInterpolations['height'], dimensionInterpolations['width']]\nconst skeletonDimensionInterpolation = Array.from(dimensions, (x) => dimensionInterpolations[x]);\nconst borderRadiusInterpolation = Array.from(border, (x) => borderInterpolations[x]);\nconst interpolations = [\n ...Object.values(borderRadiusInterpolation),\n ...Object.values(skeletonDimensionInterpolation)\n];\n\nconst SkeletonInterpolations = mergeInterpolations<SkeletonProps>(interpolations);\n\n/* Styling for skeleton main (loop) animation */\nconst animationSkeletonStyle = {\n base: cssProps`${{\n animationName: 'var(--oj-c-PRIVATE-DO-NOT-USE-private-preact-skeleton-animation-name)',\n animationIterationCount: 'infinite',\n animationDirection: 'alternate',\n animationDuration: '1.5s'\n }}`\n};\n\n/**\n * Skeleton component allows the appropriate skeleton to be rendered based on the\n * property values\n **/\nexport function Skeleton({ ...props }: SkeletonProps) {\n const skeletonDimensions = SkeletonInterpolations({ width: '100%', borderRadius: 0, ...props });\n const itemClasses = classNames([animationSkeletonStyle.base]);\n return <div style={skeletonDimensions} class={itemClasses} />;\n}\n"],"names":["dimensions","stringLiteralArray","border","skeletonDimensionInterpolation","Array","from","x","dimensionInterpolations","borderRadiusInterpolation","borderInterpolations","interpolations","Object","values","SkeletonInterpolations","mergeInterpolations","animationSkeletonStyle","_a","skeletonDimensions","assign","width","borderRadius","props"],"mappings":"4TAiBA,MAAAA,EAAAC,EAAAA,mBAAA,CAAA,SAAA,UAEAC,EAAAD,EAAAA,mBAAA,CAAA,iBAWAE,EAAAC,MAAAC,KAAAL,EAAAM,GAAAC,EAAAA,wBAAAD,IACAE,EAAAJ,MAAAC,KAAAH,EAAAI,GAAAG,EAAAA,qBAAAH,IACAI,EAAA,IACEC,OAAAC,OAAAJ,MACAG,OAAAC,OAAAT,IAGFU,EAAAC,EAAAA,oBAAAJ,GAGAK,sBAaA,SAAAC,wBACE,MAAAC,EAAAJ,EAAAF,OAAAO,OAAA,CAAAC,MAAA,OAAAC,aAAA,GAAAC"}
@@ -1,2 +1,2 @@
1
- define(["exports","./tslib.es6-30a906db","preact/jsx-runtime","./utils/UNSAFE_interpolations/dimensions","./utils/UNSAFE_mergeInterpolations","./utils/UNSAFE_interpolations/flexitem","./flexitem-c8b9198a"],function(e,t,s,i,n,l,o){"use strict";const r=[...Object.values(i.dimensionInterpolations),o.flexitemInterpolations.flex],a=n.mergeInterpolations(r);e.Spacer=e=>{var i=t.__rest(e,[]);const n=a(i),{class:l}=n,o=t.__rest(n,["class"]);return s.jsx("div",{class:l,style:o})}});
2
- //# sourceMappingURL=Spacer-65814616.js.map
1
+ define(["exports","./tslib.es6-925f910c","preact/jsx-runtime","./utils/UNSAFE_interpolations/dimensions","./utils/UNSAFE_mergeInterpolations","./utils/UNSAFE_interpolations/flexitem","./flexitem-da0f34e5"],function(e,t,s,i,n,l,o){"use strict";const r=[...Object.values(i.dimensionInterpolations),o.flexitemInterpolations.flex],a=n.mergeInterpolations(r);e.Spacer=e=>{var i=t.__rest(e,[]);const n=a(i),{class:l}=n,o=t.__rest(n,["class"]);return s.jsx("div",{class:l,style:o})}});
2
+ //# sourceMappingURL=Spacer-c770cd2b.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Spacer-65814616.js","sources":["../../src/UNSAFE_Spacer/Spacer.tsx"],"sourcesContent":["/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * Licensed under The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\nimport { dimensionInterpolations } from '../utils/UNSAFE_interpolations/dimensions';\nimport type { DimensionProps } from '../utils/UNSAFE_interpolations/dimensions';\nimport { mergeInterpolations } from '../utils/UNSAFE_mergeInterpolations';\nimport { flexitemInterpolations } from '../utils/UNSAFE_interpolations/flexitem';\nimport type { FlexitemProps } from '../utils/UNSAFE_interpolations/flexitem';\n\ntype StyleProps = DimensionProps & Pick<FlexitemProps, 'flex'>;\n\ntype Props = StyleProps;\n\nconst interpolations = [...Object.values(dimensionInterpolations), flexitemInterpolations.flex];\n\nconst styleInterpolations = mergeInterpolations<Props>(interpolations);\n\nexport const Spacer = ({ ...props }: Props) => {\n const { class: cls, ...styles } = styleInterpolations(props);\n return <div class={cls} style={styles}></div>;\n};\n"],"names":["interpolations","Object","values","dimensionInterpolations","flexitemInterpolations","flex","styleInterpolations","mergeInterpolations","_a","props","__rest","_b","class","cls","styles","_jsx","style"],"mappings":"mPAiBA,MAAMA,EAAiB,IAAIC,OAAOC,OAAOC,EAAAA,yBAA0BC,EAAAA,uBAAuBC,MAEpFC,EAAsBC,EAAAA,oBAA2BP,YAEhCQ,QAAKC,EAAKC,EAAAA,OAAAF,EAAV,IACrB,MAAMG,EAA4BL,EAAoBG,IAA9CG,MAAOC,KAAQC,EAAjBJ,EAAAA,OAAAC,EAAA,CAAA,UACN,OAAOI,EAAAA,IAAA,MAAA,CAAKH,MAAOC,EAAKG,MAAOF"}
1
+ {"version":3,"file":"Spacer-c770cd2b.js","sources":["../../src/UNSAFE_Spacer/Spacer.tsx"],"sourcesContent":["/**\n * @license\n * Copyright (c) %FIRST_YEAR% %CURRENT_YEAR%, Oracle and/or its affiliates.\n * Licensed under The Universal Permissive License (UPL), Version 1.0\n * as shown at https://oss.oracle.com/licenses/upl/\n * @ignore\n */\nimport { dimensionInterpolations } from '../utils/UNSAFE_interpolations/dimensions';\nimport type { DimensionProps } from '../utils/UNSAFE_interpolations/dimensions';\nimport { mergeInterpolations } from '../utils/UNSAFE_mergeInterpolations';\nimport { flexitemInterpolations } from '../utils/UNSAFE_interpolations/flexitem';\nimport type { FlexitemProps } from '../utils/UNSAFE_interpolations/flexitem';\n\ntype StyleProps = DimensionProps & Pick<FlexitemProps, 'flex'>;\n\ntype Props = StyleProps;\n\nconst interpolations = [...Object.values(dimensionInterpolations), flexitemInterpolations.flex];\n\nconst styleInterpolations = mergeInterpolations<Props>(interpolations);\n\nexport const Spacer = ({ ...props }: Props) => {\n const { class: cls, ...styles } = styleInterpolations(props);\n return <div class={cls} style={styles}></div>;\n};\n"],"names":["interpolations","Object","values","dimensionInterpolations","flexitemInterpolations","flex","styleInterpolations","mergeInterpolations","_a","props","__rest","_b","class","cls","styles","_jsx","style"],"mappings":"mPAiBA,MAAMA,EAAiB,IAAIC,OAAOC,OAAOC,EAAAA,yBAA0BC,EAAAA,uBAAuBC,MAEpFC,EAAsBC,EAAAA,oBAA2BP,YAEhCQ,QAAKC,EAAKC,EAAAA,OAAAF,EAAV,IACrB,MAAMG,EAA4BL,EAAoBG,IAA9CG,MAAOC,KAAQC,EAAjBJ,EAAAA,OAAAC,EAAA,CAAA,UACN,OAAOI,EAAAA,IAAA,MAAA,CAAKH,MAAOC,EAAKG,MAAOF"}