@oracle/oraclejet-preact 14.0.7 → 14.0.8

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 (1420) hide show
  1. package/amd/Badge-5724474e.js +2 -0
  2. package/amd/{Badge-3a3bc336.js.map → Badge-5724474e.js.map} +1 -1
  3. package/amd/BaseButton-19147e28.js +2 -0
  4. package/amd/{BaseButton-20a653f3.js.map → BaseButton-19147e28.js.map} +1 -1
  5. package/amd/Button-a416ba53.js +2 -0
  6. package/{cjs/Button-6d645302.js.map → amd/Button-a416ba53.js.map} +1 -1
  7. package/amd/Chip-131e9a76.js +2 -0
  8. package/{cjs/Chip-a6ecbefc.js.map → amd/Chip-131e9a76.js.map} +1 -1
  9. package/amd/ClearIcon-598a77ae.js +2 -0
  10. package/amd/{ClearIcon-27a5c275.js.map → ClearIcon-598a77ae.js.map} +1 -1
  11. package/amd/Collection-ee1012a2.js +2 -0
  12. package/amd/{Collection-55b75a82.js.map → Collection-ee1012a2.js.map} +1 -1
  13. package/amd/ComponentMessage-630becdf.js +2 -0
  14. package/amd/{ComponentMessage-5603259e.js.map → ComponentMessage-630becdf.js.map} +1 -1
  15. package/amd/ComponentMessageContainer-11b0304c.js +2 -0
  16. package/{cjs/ComponentMessageContainer-c0c21e1b.js.map → amd/ComponentMessageContainer-11b0304c.js.map} +1 -1
  17. package/amd/Divider-09385658.js +2 -0
  18. package/amd/{Divider-8cd412fd.js.map → Divider-09385658.js.map} +1 -1
  19. package/amd/FilePicker-8bf23b98.js +2 -0
  20. package/amd/{FilePicker-bb70dacb.js.map → FilePicker-8bf23b98.js.map} +1 -1
  21. package/amd/Flex-1da2d394.js +2 -0
  22. package/amd/{Flex-7762d39c.js.map → Flex-1da2d394.js.map} +1 -1
  23. package/amd/Floating-de2b8be5.js +2 -0
  24. package/amd/{Floating-08ac18d2.js.map → Floating-de2b8be5.js.map} +1 -1
  25. package/amd/FocusTrap-e0295e15.js +2 -0
  26. package/amd/{FocusTrap-420f2714.js.map → FocusTrap-e0295e15.js.map} +1 -1
  27. package/amd/FormControlUtils-32ad4902.js +2 -0
  28. package/amd/{FormControlUtils-802d298a.js.map → FormControlUtils-32ad4902.js.map} +1 -1
  29. package/amd/Heading-120a3ae0.js +2 -0
  30. package/amd/{Heading-431829e1.js.map → Heading-120a3ae0.js.map} +1 -1
  31. package/amd/HiddenAccessible-f6ee2f4a.js +2 -0
  32. package/amd/{HiddenAccessible-1dadf91a.js.map → HiddenAccessible-f6ee2f4a.js.map} +1 -1
  33. package/amd/HighlightText-a38e20af.js +2 -0
  34. package/{cjs/HighlightText-10042675.js.map → amd/HighlightText-a38e20af.js.map} +1 -1
  35. package/amd/Icon-4e765cae.js +2 -0
  36. package/amd/{Icon-a6ef6699.js.map → Icon-4e765cae.js.map} +1 -1
  37. package/amd/Indexer-8b8eb94e.js +2 -0
  38. package/amd/{Indexer-81bf2fe0.js.map → Indexer-8b8eb94e.js.map} +1 -1
  39. package/amd/InlineHelpSource-3291084b.js +2 -0
  40. package/amd/{InlineHelpSource-8a22f914.js.map → InlineHelpSource-3291084b.js.map} +1 -1
  41. package/amd/Link-306d51c0.js +2 -0
  42. package/amd/{Link-3169fd72.js.map → Link-306d51c0.js.map} +1 -1
  43. package/amd/List-83ce5c9c.js +2 -0
  44. package/amd/{List-26b59d92.js.map → List-83ce5c9c.js.map} +1 -1
  45. package/amd/ListItemTextLayout-8798fb7e.js +2 -0
  46. package/amd/{ListItemTextLayout-f6a3d721.js.map → ListItemTextLayout-8798fb7e.js.map} +1 -1
  47. package/amd/ListView-8087b353.js +2 -0
  48. package/amd/{ListView-3b9a3235.js.map → ListView-8087b353.js.map} +1 -1
  49. package/amd/LoadMoreCollection-5b5f55ef.js +2 -0
  50. package/amd/{LoadMoreCollection-b7513141.js.map → LoadMoreCollection-5b5f55ef.js.map} +1 -1
  51. package/amd/Menu-4dd5d2e3.js +2 -0
  52. package/amd/Menu-4dd5d2e3.js.map +1 -0
  53. package/amd/MenuDivider-464a70a6.js +2 -0
  54. package/amd/{MenuDivider-b9309ceb.js.map → MenuDivider-464a70a6.js.map} +1 -1
  55. package/amd/MenuItem-ffc681a1.js +2 -0
  56. package/amd/MenuItem-ffc681a1.js.map +1 -0
  57. package/amd/Message.types-4b8afc3d.js +2 -0
  58. package/amd/{Message.types-3ff18727.js.map → Message.types-4b8afc3d.js.map} +1 -1
  59. package/amd/MessageCloseButton-60db7be7.js +2 -0
  60. package/{cjs/MessageCloseButton-a8d04f54.js.map → amd/MessageCloseButton-60db7be7.js.map} +1 -1
  61. package/amd/MessageDetail-7918d7e4.js +2 -0
  62. package/amd/{MessageDetail-dd86fa2b.js.map → MessageDetail-7918d7e4.js.map} +1 -1
  63. package/amd/MessageFormattingUtils-4063485a.js +2 -0
  64. package/amd/{MessageFormattingUtils-0ffdac02.js.map → MessageFormattingUtils-4063485a.js.map} +1 -1
  65. package/amd/MessageLayer-4140b1c0.js +2 -0
  66. package/amd/{MessageLayer-6da93adb.js.map → MessageLayer-4140b1c0.js.map} +1 -1
  67. package/amd/MessageStartIcon-637c962e.js +2 -0
  68. package/amd/{MessageStartIcon-1b57b659.js.map → MessageStartIcon-637c962e.js.map} +1 -1
  69. package/amd/MessageSummary-6fe541fe.js +2 -0
  70. package/amd/{MessageSummary-cf0af1b2.js.map → MessageSummary-6fe541fe.js.map} +1 -1
  71. package/amd/MessageTimestamp-6dc78d5b.js +2 -0
  72. package/amd/{MessageTimestamp-0e995235.js.map → MessageTimestamp-6dc78d5b.js.map} +1 -1
  73. package/amd/MessageToast-3b6c3553.js +2 -0
  74. package/amd/{MessageToast-e0f94cbe.js.map → MessageToast-3b6c3553.js.map} +1 -1
  75. package/amd/MessageUtils-e57bb07e.js +2 -0
  76. package/amd/{MessageUtils-0bf10cfa.js.map → MessageUtils-e57bb07e.js.map} +1 -1
  77. package/amd/MessagesManager-e92eb23e.js +2 -0
  78. package/amd/{MessagesManager-da52103a.js.map → MessagesManager-e92eb23e.js.map} +1 -1
  79. package/amd/MeterCircle-29aed493.js +2 -0
  80. package/amd/{MeterCircle-bb948163.js.map → MeterCircle-29aed493.js.map} +1 -1
  81. package/amd/Modal-f5c8b81a.js +2 -0
  82. package/amd/{Modal-be0762b5.js.map → Modal-f5c8b81a.js.map} +1 -1
  83. package/amd/NumberInputText-d2242856.js +2 -0
  84. package/amd/{NumberInputText-d762d134.js.map → NumberInputText-d2242856.js.map} +1 -1
  85. package/amd/PRIVATE_Collection.js +1 -17
  86. package/amd/PRIVATE_Collection.js.map +1 -1
  87. package/amd/PRIVATE_List.css +17 -18
  88. package/amd/PRIVATE_List.js +1 -18
  89. package/amd/PRIVATE_List.js.map +1 -1
  90. package/amd/PRIVATE_Message.css +34 -35
  91. package/amd/PRIVATE_Message.js +1 -278
  92. package/amd/PRIVATE_Message.js.map +1 -1
  93. package/amd/PRIVATE_MessageLayer.css +7 -8
  94. package/amd/PRIVATE_MessageLayer.js +1 -12
  95. package/amd/PRIVATE_MessageLayer.js.map +1 -1
  96. package/amd/PRIVATE_Meter.js +1 -66
  97. package/amd/PRIVATE_Meter.js.map +1 -1
  98. package/amd/PRIVATE_SelectCommon.css +18 -19
  99. package/amd/PRIVATE_SelectCommon.js +1 -632
  100. package/amd/PRIVATE_SelectCommon.js.map +1 -1
  101. package/amd/PRIVATE_TransitionGroup.js +1 -414
  102. package/amd/PRIVATE_TransitionGroup.js.map +1 -1
  103. package/amd/PRIVATE_VirtualizedCollection.js +1 -19
  104. package/amd/PRIVATE_VirtualizedCollection.js.map +1 -1
  105. package/amd/ReadonlyTextFieldInput-09a96f71.js +2 -0
  106. package/amd/{ReadonlyTextFieldInput-4583f049.js.map → ReadonlyTextFieldInput-09a96f71.js.map} +1 -1
  107. package/amd/SelectMenuItem-b51f3b63.js +2 -0
  108. package/amd/SelectMenuItem-b51f3b63.js.map +1 -0
  109. package/amd/SelectMultiple-9482da87.js +2 -0
  110. package/amd/SelectMultiple-9482da87.js.map +1 -0
  111. package/amd/SelectSingle-890f5264.js +2 -0
  112. package/amd/SelectSingle-890f5264.js.map +1 -0
  113. package/amd/Skeleton-748d8598.js +2 -0
  114. package/amd/{Skeleton-d0383726.js.map → Skeleton-748d8598.js.map} +1 -1
  115. package/amd/Spacer-0a0ef1ce.js +2 -0
  116. package/amd/{Spacer-165e178f.js.map → Spacer-0a0ef1ce.js.map} +1 -1
  117. package/amd/SplitMenuButton-e90e3154.js +2 -0
  118. package/amd/{SplitMenuButton-df0ee526.js.map → SplitMenuButton-e90e3154.js.map} +1 -1
  119. package/amd/Text-75ed9308.js +2 -0
  120. package/amd/{Text-de291c3f.js.map → Text-75ed9308.js.map} +1 -1
  121. package/amd/TextArea-ee29bc17.js +2 -0
  122. package/amd/{TextArea-25fa8171.js.map → TextArea-ee29bc17.js.map} +1 -1
  123. package/amd/TextAreaAutosize-0ce799de.js +2 -0
  124. package/amd/{TextAreaAutosize-370b4a47.js.map → TextAreaAutosize-0ce799de.js.map} +1 -1
  125. package/amd/TextFieldInput-794a6202.js +2 -0
  126. package/{cjs/TextFieldInput-f2f3f0a0.js.map → amd/TextFieldInput-794a6202.js.map} +1 -1
  127. package/amd/UNSAFE_AspectRatio.css +1 -2
  128. package/amd/UNSAFE_AspectRatio.js +1 -79
  129. package/amd/UNSAFE_AspectRatio.js.map +1 -1
  130. package/amd/UNSAFE_Avatar.css +8 -9
  131. package/amd/UNSAFE_Avatar.js +1 -106
  132. package/amd/UNSAFE_Avatar.js.map +1 -1
  133. package/amd/UNSAFE_Badge.css +13 -14
  134. package/amd/UNSAFE_Badge.js +1 -11
  135. package/amd/UNSAFE_Badge.js.map +1 -1
  136. package/amd/UNSAFE_BaseButton.css +15 -16
  137. package/amd/UNSAFE_BaseButton.js +1 -11
  138. package/amd/UNSAFE_BaseButton.js.map +1 -1
  139. package/amd/UNSAFE_Button.css +8 -9
  140. package/amd/UNSAFE_Button.js +1 -12
  141. package/amd/UNSAFE_Button.js.map +1 -1
  142. package/amd/UNSAFE_Center.js +1 -28
  143. package/amd/UNSAFE_Center.js.map +1 -1
  144. package/amd/UNSAFE_Chip.css +7 -8
  145. package/amd/UNSAFE_Chip.js +1 -11
  146. package/amd/UNSAFE_Chip.js.map +1 -1
  147. package/amd/UNSAFE_Collapsible.css +9 -10
  148. package/amd/UNSAFE_Collapsible.js +1 -226
  149. package/amd/UNSAFE_Collapsible.js.map +1 -1
  150. package/amd/UNSAFE_Collection.js +1 -13
  151. package/amd/UNSAFE_Collection.js.map +1 -1
  152. package/amd/UNSAFE_ComponentMessage.css +3 -4
  153. package/amd/UNSAFE_ComponentMessage.js +1 -12
  154. package/amd/UNSAFE_ComponentMessage.js.map +1 -1
  155. package/amd/UNSAFE_Divider.css +1 -2
  156. package/amd/UNSAFE_Divider.js +1 -11
  157. package/amd/UNSAFE_Divider.js.map +1 -1
  158. package/amd/UNSAFE_EmptyList.js +1 -16
  159. package/amd/UNSAFE_EmptyList.js.map +1 -1
  160. package/amd/UNSAFE_Environment.js +1 -84
  161. package/amd/UNSAFE_Environment.js.map +1 -1
  162. package/amd/UNSAFE_FilePicker.css +6 -7
  163. package/amd/UNSAFE_FilePicker.js +1 -11
  164. package/amd/UNSAFE_FilePicker.js.map +1 -1
  165. package/amd/UNSAFE_Flex.css +2 -3
  166. package/amd/UNSAFE_Flex.js +1 -11
  167. package/amd/UNSAFE_Flex.js.map +1 -1
  168. package/amd/UNSAFE_Floating.js +1 -11
  169. package/amd/UNSAFE_Floating.js.map +1 -1
  170. package/amd/UNSAFE_FocusTrap.css +3 -4
  171. package/amd/UNSAFE_FocusTrap.js +1 -17
  172. package/amd/UNSAFE_FocusTrap.js.map +1 -1
  173. package/amd/UNSAFE_Grid.css +1 -2
  174. package/amd/UNSAFE_Grid.js +1 -37
  175. package/amd/UNSAFE_Grid.js.map +1 -1
  176. package/amd/UNSAFE_Heading.css +9 -10
  177. package/amd/UNSAFE_Heading.js +1 -13
  178. package/amd/UNSAFE_Heading.js.map +1 -1
  179. package/amd/UNSAFE_HiddenAccessible.css +1 -2
  180. package/amd/UNSAFE_HiddenAccessible.js +1 -17
  181. package/amd/UNSAFE_HiddenAccessible.js.map +1 -1
  182. package/amd/UNSAFE_HighlightText.css +1 -2
  183. package/amd/UNSAFE_HighlightText.js +1 -17
  184. package/amd/UNSAFE_HighlightText.js.map +1 -1
  185. package/amd/UNSAFE_Icon.css +21 -22
  186. package/amd/UNSAFE_Icon.js +1 -28
  187. package/amd/UNSAFE_Icon.js.map +1 -1
  188. package/amd/UNSAFE_Icons.js +1 -26
  189. package/amd/UNSAFE_Icons.js.map +1 -1
  190. package/amd/UNSAFE_Indexer.css +8 -9
  191. package/amd/UNSAFE_Indexer.js +1 -18
  192. package/amd/UNSAFE_Indexer.js.map +1 -1
  193. package/amd/UNSAFE_InputPassword.css +1 -2
  194. package/amd/UNSAFE_InputPassword.js +1 -139
  195. package/amd/UNSAFE_InputPassword.js.map +1 -1
  196. package/amd/UNSAFE_InputText.css +1 -2
  197. package/amd/UNSAFE_InputText.js +1 -114
  198. package/amd/UNSAFE_InputText.js.map +1 -1
  199. package/amd/UNSAFE_Label.css +13 -14
  200. package/amd/UNSAFE_Label.js +1 -77
  201. package/amd/UNSAFE_Label.js.map +1 -1
  202. package/amd/UNSAFE_LabelValueLayout.css +9 -10
  203. package/amd/UNSAFE_LabelValueLayout.js +1 -85
  204. package/amd/UNSAFE_LabelValueLayout.js.map +1 -1
  205. package/amd/UNSAFE_Layer.js +1 -66
  206. package/amd/UNSAFE_Layer.js.map +1 -1
  207. package/amd/UNSAFE_Link.css +5 -6
  208. package/amd/UNSAFE_Link.js +1 -11
  209. package/amd/UNSAFE_Link.js.map +1 -1
  210. package/amd/UNSAFE_ListItemLayout.css +10 -11
  211. package/amd/UNSAFE_ListItemLayout.js +1 -13
  212. package/amd/UNSAFE_ListItemLayout.js.map +1 -1
  213. package/amd/UNSAFE_ListView.js +1 -17
  214. package/amd/UNSAFE_ListView.js.map +1 -1
  215. package/amd/UNSAFE_LiveRegion.css +1 -2
  216. package/amd/UNSAFE_LiveRegion.js +1 -60
  217. package/amd/UNSAFE_LiveRegion.js.map +1 -1
  218. package/amd/UNSAFE_LoadMoreCollection.js +1 -17
  219. package/amd/UNSAFE_LoadMoreCollection.js.map +1 -1
  220. package/amd/UNSAFE_Menu.css +19 -20
  221. package/amd/UNSAFE_Menu.js +1 -13
  222. package/amd/UNSAFE_Menu.js.map +1 -1
  223. package/amd/UNSAFE_MessageBanner.js +1 -183
  224. package/amd/UNSAFE_MessageBanner.js.map +1 -1
  225. package/amd/UNSAFE_MessageToast.css +1 -2
  226. package/amd/UNSAFE_MessageToast.js +1 -17
  227. package/amd/UNSAFE_MessageToast.js.map +1 -1
  228. package/amd/UNSAFE_MeterBar.css +45 -46
  229. package/amd/UNSAFE_MeterBar.js +1 -327
  230. package/amd/UNSAFE_MeterBar.js.map +1 -1
  231. package/amd/UNSAFE_MeterCircle.css +47 -48
  232. package/amd/UNSAFE_MeterCircle.js +1 -11
  233. package/amd/UNSAFE_MeterCircle.js.map +1 -1
  234. package/amd/UNSAFE_Modal.css +5 -6
  235. package/amd/UNSAFE_Modal.js +1 -11
  236. package/amd/UNSAFE_Modal.js.map +1 -1
  237. package/amd/UNSAFE_NumberInputText.js +1 -17
  238. package/amd/UNSAFE_NumberInputText.js.map +1 -1
  239. package/amd/UNSAFE_PrefixSuffix.css +8 -9
  240. package/amd/UNSAFE_PrefixSuffix.js +1 -50
  241. package/amd/UNSAFE_PrefixSuffix.js.map +1 -1
  242. package/amd/UNSAFE_ProgressBar.css +6 -7
  243. package/amd/UNSAFE_ProgressBar.js +1 -90
  244. package/amd/UNSAFE_ProgressBar.js.map +1 -1
  245. package/amd/UNSAFE_ProgressCircle.css +6 -7
  246. package/amd/UNSAFE_ProgressCircle.js +1 -85
  247. package/amd/UNSAFE_ProgressCircle.js.map +1 -1
  248. package/amd/UNSAFE_RatingGauge.css +22 -23
  249. package/amd/UNSAFE_RatingGauge.js +1 -358
  250. package/amd/UNSAFE_RatingGauge.js.map +1 -1
  251. package/amd/UNSAFE_SelectMultiple.css +1 -2
  252. package/amd/UNSAFE_SelectMultiple.js +1 -17
  253. package/amd/UNSAFE_SelectMultiple.js.map +1 -1
  254. package/amd/UNSAFE_SelectSingle.js +1 -17
  255. package/amd/UNSAFE_SelectSingle.js.map +1 -1
  256. package/amd/UNSAFE_Selector.css +5 -6
  257. package/amd/UNSAFE_Selector.js +1 -107
  258. package/amd/UNSAFE_Selector.js.map +1 -1
  259. package/amd/UNSAFE_Skeleton.css +1 -2
  260. package/amd/UNSAFE_Skeleton.js +1 -17
  261. package/amd/UNSAFE_Skeleton.js.map +1 -1
  262. package/amd/UNSAFE_Spacer.js +1 -11
  263. package/amd/UNSAFE_Spacer.js.map +1 -1
  264. package/amd/UNSAFE_SplitMenuButton.css +5 -6
  265. package/amd/UNSAFE_SplitMenuButton.js +1 -11
  266. package/amd/UNSAFE_SplitMenuButton.js.map +1 -1
  267. package/amd/UNSAFE_Text.css +25 -26
  268. package/amd/UNSAFE_Text.js +1 -11
  269. package/amd/UNSAFE_Text.js.map +1 -1
  270. package/amd/UNSAFE_TextArea.css +3 -4
  271. package/amd/UNSAFE_TextArea.js +1 -12
  272. package/amd/UNSAFE_TextArea.js.map +1 -1
  273. package/amd/UNSAFE_TextAreaAutosize.js +1 -11
  274. package/amd/UNSAFE_TextAreaAutosize.js.map +1 -1
  275. package/amd/UNSAFE_TextField.css +62 -63
  276. package/amd/UNSAFE_TextField.js +1 -190
  277. package/amd/UNSAFE_TextField.js.map +1 -1
  278. package/amd/UNSAFE_ThemedIcons.js +1 -26
  279. package/amd/UNSAFE_ThemedIcons.js.map +1 -1
  280. package/amd/UNSAFE_UserAssistance.css +11 -12
  281. package/amd/UNSAFE_UserAssistance.js +1 -85
  282. package/amd/UNSAFE_UserAssistance.js.map +1 -1
  283. package/amd/UNSAFE_View.js +1 -29
  284. package/amd/UNSAFE_View.js.map +1 -1
  285. package/amd/UNSAFE_VirtualizedListView.js +1 -17
  286. package/amd/UNSAFE_VirtualizedListView.js.map +1 -1
  287. package/amd/UNSAFE_WindowOverlay.js +1 -20
  288. package/amd/UNSAFE_WindowOverlay.js.map +1 -1
  289. package/amd/VirtualizedCollection-3e679d7c.js +2 -0
  290. package/amd/{VirtualizedCollection-63815bce.js.map → VirtualizedCollection-3e679d7c.js.map} +1 -1
  291. package/amd/VirtualizedListView-c67c59cc.js +2 -0
  292. package/amd/{VirtualizedListView-fb2a18dd.js.map → VirtualizedListView-c67c59cc.js.map} +1 -1
  293. package/amd/_curry1-bee77b02.js +2 -0
  294. package/amd/_curry1-bee77b02.js.map +1 -0
  295. package/amd/_curry2-fcaaab1b.js +2 -0
  296. package/amd/_curry2-fcaaab1b.js.map +1 -0
  297. package/amd/_curry3-e03383af.js +2 -0
  298. package/amd/_curry3-e03383af.js.map +1 -0
  299. package/amd/_has-cc9d7306.js +2 -0
  300. package/amd/_has-cc9d7306.js.map +1 -0
  301. package/amd/classNames-d0ddb6e6.js +2 -0
  302. package/amd/{classNames-027de734.js.map → classNames-d0ddb6e6.js.map} +1 -1
  303. package/amd/clientHints-688646f4.js +2 -0
  304. package/amd/{clientHints-361cde40.js.map → clientHints-688646f4.js.map} +1 -1
  305. package/amd/flexbox-0663919c.js +2 -0
  306. package/amd/{flexbox-4dd0bbb4.js.map → flexbox-0663919c.js.map} +1 -1
  307. package/amd/flexitem-323dec38.js +2 -0
  308. package/amd/{flexitem-7363d040.js.map → flexitem-323dec38.js.map} +1 -1
  309. package/amd/hooks/PRIVATE_useCollectionFocusRing.js +1 -72
  310. package/amd/hooks/PRIVATE_useCollectionFocusRing.js.map +1 -1
  311. package/amd/hooks/PRIVATE_useCurrentKey.js +1 -68
  312. package/amd/hooks/PRIVATE_useCurrentKey.js.map +1 -1
  313. package/amd/hooks/PRIVATE_useDvtMeterEvents.js +1 -162
  314. package/amd/hooks/PRIVATE_useDvtMeterEvents.js.map +1 -1
  315. package/amd/hooks/PRIVATE_useItemAction.js +1 -62
  316. package/amd/hooks/PRIVATE_useItemAction.js.map +1 -1
  317. package/amd/hooks/PRIVATE_useMessagesFocusManager.js +1 -351
  318. package/amd/hooks/PRIVATE_useMessagesFocusManager.js.map +1 -1
  319. package/amd/hooks/PRIVATE_useSelection.js +1 -173
  320. package/amd/hooks/PRIVATE_useSelection.js.map +1 -1
  321. package/amd/hooks/PRIVATE_useSingleSelection.js +1 -11
  322. package/amd/hooks/PRIVATE_useSingleSelection.js.map +1 -1
  323. package/amd/hooks/PRIVATE_useTabbableModeSet.js +1 -85
  324. package/amd/hooks/PRIVATE_useTabbableModeSet.js.map +1 -1
  325. package/amd/hooks/UNSAFE_useActionable.js +1 -39
  326. package/amd/hooks/UNSAFE_useActionable.js.map +1 -1
  327. package/amd/hooks/UNSAFE_useActive.js +1 -83
  328. package/amd/hooks/UNSAFE_useActive.js.map +1 -1
  329. package/amd/hooks/UNSAFE_useAnimation.js +1 -11
  330. package/amd/hooks/UNSAFE_useAnimation.js.map +1 -1
  331. package/amd/hooks/UNSAFE_useBreakpointValues.js +1 -25
  332. package/amd/hooks/UNSAFE_useBreakpointValues.js.map +1 -1
  333. package/amd/hooks/UNSAFE_useBreakpoints.js +1 -52
  334. package/amd/hooks/UNSAFE_useBreakpoints.js.map +1 -1
  335. package/amd/hooks/UNSAFE_useClearIcon.js +1 -22
  336. package/amd/hooks/UNSAFE_useClearIcon.js.map +1 -1
  337. package/amd/hooks/UNSAFE_useColorScheme.js +1 -28
  338. package/amd/hooks/UNSAFE_useColorScheme.js.map +1 -1
  339. package/amd/hooks/UNSAFE_useContainerBreakpointValues.js +1 -23
  340. package/amd/hooks/UNSAFE_useContainerBreakpointValues.js.map +1 -1
  341. package/amd/hooks/UNSAFE_useContainerBreakpoints.js +1 -45
  342. package/amd/hooks/UNSAFE_useContainerBreakpoints.js.map +1 -1
  343. package/amd/hooks/UNSAFE_useCurrentValueReducer.js +1 -60
  344. package/amd/hooks/UNSAFE_useCurrentValueReducer.js.map +1 -1
  345. package/amd/hooks/UNSAFE_useDebounce.js +1 -46
  346. package/amd/hooks/UNSAFE_useDebounce.js.map +1 -1
  347. package/amd/hooks/UNSAFE_useFloating.js +1 -20
  348. package/amd/hooks/UNSAFE_useFloating.js.map +1 -1
  349. package/amd/hooks/UNSAFE_useFocus.js +1 -35
  350. package/amd/hooks/UNSAFE_useFocus.js.map +1 -1
  351. package/amd/hooks/UNSAFE_useFocusWithin.js +1 -11
  352. package/amd/hooks/UNSAFE_useFocusWithin.js.map +1 -1
  353. package/amd/hooks/UNSAFE_useFocusableTextField.js +1 -68
  354. package/amd/hooks/UNSAFE_useFocusableTextField.js.map +1 -1
  355. package/amd/hooks/UNSAFE_useFormContext.js +1 -38
  356. package/amd/hooks/UNSAFE_useFormContext.js.map +1 -1
  357. package/amd/hooks/UNSAFE_useFormFieldContext.js +1 -31
  358. package/amd/hooks/UNSAFE_useFormFieldContext.js.map +1 -1
  359. package/amd/hooks/UNSAFE_useFormVariantContext.js +1 -25
  360. package/amd/hooks/UNSAFE_useFormVariantContext.js.map +1 -1
  361. package/amd/hooks/UNSAFE_useHover.js +1 -64
  362. package/amd/hooks/UNSAFE_useHover.js.map +1 -1
  363. package/amd/hooks/UNSAFE_useId.js +1 -31
  364. package/amd/hooks/UNSAFE_useId.js.map +1 -1
  365. package/amd/hooks/UNSAFE_useLengthFilter.js +1 -56
  366. package/amd/hooks/UNSAFE_useLengthFilter.js.map +1 -1
  367. package/amd/hooks/UNSAFE_useLoadingIndicatorTimer.js +1 -39
  368. package/amd/hooks/UNSAFE_useLoadingIndicatorTimer.js.map +1 -1
  369. package/amd/hooks/UNSAFE_useLongPress.js +1 -69
  370. package/amd/hooks/UNSAFE_useLongPress.js.map +1 -1
  371. package/amd/hooks/UNSAFE_useMessagesContext.js +1 -47
  372. package/amd/hooks/UNSAFE_useMessagesContext.js.map +1 -1
  373. package/amd/hooks/UNSAFE_useOutsideClick.js +1 -54
  374. package/amd/hooks/UNSAFE_useOutsideClick.js.map +1 -1
  375. package/amd/hooks/UNSAFE_usePan.js +1 -104
  376. package/amd/hooks/UNSAFE_usePan.js.map +1 -1
  377. package/amd/hooks/UNSAFE_usePrefixSuffix.js +1 -59
  378. package/amd/hooks/UNSAFE_usePrefixSuffix.js.map +1 -1
  379. package/amd/hooks/UNSAFE_usePress.js +1 -153
  380. package/amd/hooks/UNSAFE_usePress.js.map +1 -1
  381. package/amd/hooks/UNSAFE_useScale.js +1 -28
  382. package/amd/hooks/UNSAFE_useScale.js.map +1 -1
  383. package/amd/hooks/UNSAFE_useSwipe.js +1 -94
  384. package/amd/hooks/UNSAFE_useSwipe.js.map +1 -1
  385. package/amd/hooks/UNSAFE_useTabbableMode.js +1 -47
  386. package/amd/hooks/UNSAFE_useTabbableMode.js.map +1 -1
  387. package/amd/hooks/UNSAFE_useTap.js +1 -75
  388. package/amd/hooks/UNSAFE_useTap.js.map +1 -1
  389. package/amd/hooks/UNSAFE_useTextField.js +1 -97
  390. package/amd/hooks/UNSAFE_useTextField.js.map +1 -1
  391. package/amd/hooks/UNSAFE_useTextFieldInputHandlers.js +1 -91
  392. package/amd/hooks/UNSAFE_useTextFieldInputHandlers.js.map +1 -1
  393. package/amd/hooks/UNSAFE_useTheme.js +1 -28
  394. package/amd/hooks/UNSAFE_useTheme.js.map +1 -1
  395. package/amd/hooks/UNSAFE_useTimer.js +1 -62
  396. package/amd/hooks/UNSAFE_useTimer.js.map +1 -1
  397. package/amd/hooks/UNSAFE_useToggle.js +1 -35
  398. package/amd/hooks/UNSAFE_useToggle.js.map +1 -1
  399. package/amd/hooks/UNSAFE_useTooltip.css +4 -5
  400. package/amd/hooks/UNSAFE_useTooltip.js +1 -350
  401. package/amd/hooks/UNSAFE_useTooltip.js.map +1 -1
  402. package/amd/hooks/UNSAFE_useTouch.js +1 -35
  403. package/amd/hooks/UNSAFE_useTouch.js.map +1 -1
  404. package/amd/hooks/UNSAFE_useTranslationBundle.js +1 -38
  405. package/amd/hooks/UNSAFE_useTranslationBundle.js.map +1 -1
  406. package/amd/hooks/UNSAFE_useUncontrolledState.js +1 -72
  407. package/amd/hooks/UNSAFE_useUncontrolledState.js.map +1 -1
  408. package/amd/hooks/UNSAFE_useUser.js +1 -28
  409. package/amd/hooks/UNSAFE_useUser.js.map +1 -1
  410. package/amd/hooks/UNSAFE_useViewportIntersect.js +1 -70
  411. package/amd/hooks/UNSAFE_useViewportIntersect.js.map +1 -1
  412. package/amd/index-2f61a0e0.js +2 -0
  413. package/amd/index-2f61a0e0.js.map +1 -0
  414. package/amd/index-6871cdf1.js +2 -0
  415. package/amd/index-6871cdf1.js.map +1 -0
  416. package/amd/index-d54f6449.js +2 -0
  417. package/amd/{index-5920700b.js.map → index-d54f6449.js.map} +1 -1
  418. package/amd/keys-fc8999ee.js +2 -0
  419. package/amd/{keys-a09501ab.js.map → keys-fc8999ee.js.map} +1 -1
  420. package/amd/listViewSelectionTests-aa9ca732.js +2 -0
  421. package/amd/listViewSelectionTests-aa9ca732.js.map +1 -0
  422. package/amd/listViewTabbableModeTests-ef3b4208.js +2 -0
  423. package/amd/listViewTabbableModeTests-ef3b4208.js.map +1 -0
  424. package/amd/listViewTestFixtures-c3b87a89.js +2 -0
  425. package/amd/listViewTestFixtures-c3b87a89.js.map +1 -0
  426. package/amd/menuTestsUtils-b874ce47.js +2 -0
  427. package/amd/{menuTestsUtils-6da02810.js.map → menuTestsUtils-b874ce47.js.map} +1 -1
  428. package/amd/resources/nls/ar/bundle.js +1 -57
  429. package/amd/resources/nls/ar/bundle.js.map +1 -1
  430. package/amd/resources/nls/ar-XB/bundle.js +1 -57
  431. package/amd/resources/nls/ar-XB/bundle.js.map +1 -1
  432. package/amd/resources/nls/bg/bundle.js +1 -57
  433. package/amd/resources/nls/bg/bundle.js.map +1 -1
  434. package/amd/resources/nls/bs/bundle.js +1 -57
  435. package/amd/resources/nls/bs/bundle.js.map +1 -1
  436. package/amd/resources/nls/bs-Cyrl/bundle.js +1 -57
  437. package/amd/resources/nls/bs-Cyrl/bundle.js.map +1 -1
  438. package/amd/resources/nls/bundle.js +1 -57
  439. package/amd/resources/nls/bundle.js.map +1 -1
  440. package/amd/resources/nls/cs/bundle.js +1 -57
  441. package/amd/resources/nls/cs/bundle.js.map +1 -1
  442. package/amd/resources/nls/da/bundle.js +1 -57
  443. package/amd/resources/nls/da/bundle.js.map +1 -1
  444. package/amd/resources/nls/de/bundle.js +1 -57
  445. package/amd/resources/nls/de/bundle.js.map +1 -1
  446. package/amd/resources/nls/el/bundle.js +1 -57
  447. package/amd/resources/nls/el/bundle.js.map +1 -1
  448. package/amd/resources/nls/en/bundle.js +1 -57
  449. package/amd/resources/nls/en/bundle.js.map +1 -1
  450. package/amd/resources/nls/en-XA/bundle.js +1 -57
  451. package/amd/resources/nls/en-XA/bundle.js.map +1 -1
  452. package/amd/resources/nls/en-XC/bundle.js +1 -77
  453. package/amd/resources/nls/en-XC/bundle.js.map +1 -1
  454. package/amd/resources/nls/es/bundle.js +1 -57
  455. package/amd/resources/nls/es/bundle.js.map +1 -1
  456. package/amd/resources/nls/et/bundle.js +1 -57
  457. package/amd/resources/nls/et/bundle.js.map +1 -1
  458. package/amd/resources/nls/fi/bundle.js +1 -57
  459. package/amd/resources/nls/fi/bundle.js.map +1 -1
  460. package/amd/resources/nls/fr/bundle.js +1 -57
  461. package/amd/resources/nls/fr/bundle.js.map +1 -1
  462. package/amd/resources/nls/fr-CA/bundle.js +1 -57
  463. package/amd/resources/nls/fr-CA/bundle.js.map +1 -1
  464. package/amd/resources/nls/he/bundle.js +1 -57
  465. package/amd/resources/nls/he/bundle.js.map +1 -1
  466. package/amd/resources/nls/hr/bundle.js +1 -57
  467. package/amd/resources/nls/hr/bundle.js.map +1 -1
  468. package/amd/resources/nls/hu/bundle.js +1 -57
  469. package/amd/resources/nls/hu/bundle.js.map +1 -1
  470. package/amd/resources/nls/is/bundle.js +1 -57
  471. package/amd/resources/nls/is/bundle.js.map +1 -1
  472. package/amd/resources/nls/it/bundle.js +1 -57
  473. package/amd/resources/nls/it/bundle.js.map +1 -1
  474. package/amd/resources/nls/ja/bundle.js +1 -57
  475. package/amd/resources/nls/ja/bundle.js.map +1 -1
  476. package/amd/resources/nls/ko/bundle.js +1 -57
  477. package/amd/resources/nls/ko/bundle.js.map +1 -1
  478. package/amd/resources/nls/lt/bundle.js +1 -57
  479. package/amd/resources/nls/lt/bundle.js.map +1 -1
  480. package/amd/resources/nls/lv/bundle.js +1 -57
  481. package/amd/resources/nls/lv/bundle.js.map +1 -1
  482. package/amd/resources/nls/ms/bundle.js +1 -57
  483. package/amd/resources/nls/ms/bundle.js.map +1 -1
  484. package/amd/resources/nls/nl/bundle.js +1 -57
  485. package/amd/resources/nls/nl/bundle.js.map +1 -1
  486. package/amd/resources/nls/no/bundle.js +1 -57
  487. package/amd/resources/nls/no/bundle.js.map +1 -1
  488. package/amd/resources/nls/pl/bundle.js +1 -57
  489. package/amd/resources/nls/pl/bundle.js.map +1 -1
  490. package/amd/resources/nls/pt/bundle.js +1 -57
  491. package/amd/resources/nls/pt/bundle.js.map +1 -1
  492. package/amd/resources/nls/pt-PT/bundle.js +1 -57
  493. package/amd/resources/nls/pt-PT/bundle.js.map +1 -1
  494. package/amd/resources/nls/ro/bundle.js +1 -57
  495. package/amd/resources/nls/ro/bundle.js.map +1 -1
  496. package/amd/resources/nls/ru/bundle.js +1 -57
  497. package/amd/resources/nls/ru/bundle.js.map +1 -1
  498. package/amd/resources/nls/sk/bundle.js +1 -57
  499. package/amd/resources/nls/sk/bundle.js.map +1 -1
  500. package/amd/resources/nls/sl/bundle.js +1 -57
  501. package/amd/resources/nls/sl/bundle.js.map +1 -1
  502. package/amd/resources/nls/sr/bundle.js +1 -57
  503. package/amd/resources/nls/sr/bundle.js.map +1 -1
  504. package/amd/resources/nls/sr-Latn/bundle.js +1 -57
  505. package/amd/resources/nls/sr-Latn/bundle.js.map +1 -1
  506. package/amd/resources/nls/supportedLocales.js +1 -57
  507. package/amd/resources/nls/supportedLocales.js.map +1 -1
  508. package/amd/resources/nls/sv/bundle.js +1 -57
  509. package/amd/resources/nls/sv/bundle.js.map +1 -1
  510. package/amd/resources/nls/th/bundle.js +1 -57
  511. package/amd/resources/nls/th/bundle.js.map +1 -1
  512. package/amd/resources/nls/tr/bundle.js +1 -57
  513. package/amd/resources/nls/tr/bundle.js.map +1 -1
  514. package/amd/resources/nls/uk/bundle.js +1 -57
  515. package/amd/resources/nls/uk/bundle.js.map +1 -1
  516. package/amd/resources/nls/vi/bundle.js +1 -57
  517. package/amd/resources/nls/vi/bundle.js.map +1 -1
  518. package/amd/resources/nls/zh-Hans/bundle.js +1 -57
  519. package/amd/resources/nls/zh-Hans/bundle.js.map +1 -1
  520. package/amd/resources/nls/zh-Hant/bundle.js +1 -57
  521. package/amd/resources/nls/zh-Hant/bundle.js.map +1 -1
  522. package/amd/stringUtils-51e08a5f.js +2 -0
  523. package/amd/{stringUtils-9311a716.js.map → stringUtils-51e08a5f.js.map} +1 -1
  524. package/amd/testHelpers-05b2968d.js +2 -0
  525. package/amd/{testHelpers-9267074b.js.map → testHelpers-05b2968d.js.map} +1 -1
  526. package/amd/translationBundle.js +1 -73
  527. package/amd/translationBundle.js.map +1 -1
  528. package/amd/tslib.es6-f5cdfdde.js +2 -0
  529. package/amd/tslib.es6-f5cdfdde.js.map +1 -0
  530. package/amd/useAnimation-5f1db993.js +2 -0
  531. package/amd/{useAnimation-2f572e0c.js.map → useAnimation-5f1db993.js.map} +1 -1
  532. package/amd/useFocusWithin-d0e9c924.js +2 -0
  533. package/amd/{useFocusWithin-a88e3e32.js.map → useFocusWithin-d0e9c924.js.map} +1 -1
  534. package/amd/useSingleSelection-50253b6a.js +2 -0
  535. package/amd/{useSingleSelection-7081cc84.js.map → useSingleSelection-50253b6a.js.map} +1 -1
  536. package/amd/utils/PRIVATE_clientHints.js +1 -11
  537. package/amd/utils/PRIVATE_clientHints.js.map +1 -1
  538. package/amd/utils/PRIVATE_collectionUtils.js +1 -83
  539. package/amd/utils/PRIVATE_collectionUtils.js.map +1 -1
  540. package/amd/utils/PRIVATE_dvtTestUtils.js +1 -77
  541. package/amd/utils/PRIVATE_dvtTestUtils.js.map +1 -1
  542. package/amd/utils/PRIVATE_floatingUtils.js +1 -70
  543. package/amd/utils/PRIVATE_floatingUtils.js.map +1 -1
  544. package/amd/utils/PRIVATE_meterUtils.js +1 -340
  545. package/amd/utils/PRIVATE_meterUtils.js.map +1 -1
  546. package/amd/utils/PRIVATE_refUtils.js +1 -38
  547. package/amd/utils/PRIVATE_refUtils.js.map +1 -1
  548. package/amd/utils/PRIVATE_tabbableUtils.js +1 -669
  549. package/amd/utils/PRIVATE_tabbableUtils.js.map +1 -1
  550. package/amd/utils/PRIVATE_timer.js +1 -101
  551. package/amd/utils/PRIVATE_timer.js.map +1 -1
  552. package/amd/utils/UNSAFE_arrayUtils.js +1 -28
  553. package/amd/utils/UNSAFE_arrayUtils.js.map +1 -1
  554. package/amd/utils/UNSAFE_attributeUtils.js +1 -13
  555. package/amd/utils/UNSAFE_attributeUtils.js.map +1 -1
  556. package/amd/utils/UNSAFE_classNames.js +1 -11
  557. package/amd/utils/UNSAFE_classNames.js.map +1 -1
  558. package/amd/utils/UNSAFE_componentUtils.js +1 -32
  559. package/amd/utils/UNSAFE_componentUtils.js.map +1 -1
  560. package/amd/utils/UNSAFE_dataProvider.js +1 -21
  561. package/amd/utils/UNSAFE_dataProvider.js.map +1 -1
  562. package/amd/utils/UNSAFE_filePickerUtils.js +1 -37
  563. package/amd/utils/UNSAFE_filePickerUtils.js.map +1 -1
  564. package/amd/utils/UNSAFE_getLocale.js +1 -33
  565. package/amd/utils/UNSAFE_getLocale.js.map +1 -1
  566. package/amd/utils/UNSAFE_interpolations/aria.js +1 -22
  567. package/amd/utils/UNSAFE_interpolations/aria.js.map +1 -1
  568. package/amd/utils/UNSAFE_interpolations/borders.js +1 -42
  569. package/amd/utils/UNSAFE_interpolations/borders.js.map +1 -1
  570. package/amd/utils/UNSAFE_interpolations/boxalignment.css +15 -16
  571. package/amd/utils/UNSAFE_interpolations/boxalignment.js +1 -62
  572. package/amd/utils/UNSAFE_interpolations/boxalignment.js.map +1 -1
  573. package/amd/utils/UNSAFE_interpolations/colors.js +1 -22
  574. package/amd/utils/UNSAFE_interpolations/colors.js.map +1 -1
  575. package/amd/utils/UNSAFE_interpolations/dimensions.js +1 -89
  576. package/amd/utils/UNSAFE_interpolations/dimensions.js.map +1 -1
  577. package/amd/utils/UNSAFE_interpolations/flexbox.css +7 -8
  578. package/amd/utils/UNSAFE_interpolations/flexbox.js +1 -14
  579. package/amd/utils/UNSAFE_interpolations/flexbox.js.map +1 -1
  580. package/amd/utils/UNSAFE_interpolations/flexitem.css +7 -8
  581. package/amd/utils/UNSAFE_interpolations/flexitem.js +1 -13
  582. package/amd/utils/UNSAFE_interpolations/flexitem.js.map +1 -1
  583. package/amd/utils/UNSAFE_interpolations/grid.js +1 -22
  584. package/amd/utils/UNSAFE_interpolations/grid.js.map +1 -1
  585. package/amd/utils/UNSAFE_interpolations/griditem.js +1 -17
  586. package/amd/utils/UNSAFE_interpolations/griditem.js.map +1 -1
  587. package/amd/utils/UNSAFE_interpolations/padding.js +1 -50
  588. package/amd/utils/UNSAFE_interpolations/padding.js.map +1 -1
  589. package/amd/utils/UNSAFE_interpolations/text.css +3 -4
  590. package/amd/utils/UNSAFE_interpolations/text.js +1 -29
  591. package/amd/utils/UNSAFE_interpolations/text.js.map +1 -1
  592. package/amd/utils/UNSAFE_keys.js +1 -80
  593. package/amd/utils/UNSAFE_keys.js.map +1 -1
  594. package/amd/utils/UNSAFE_lengthFilter.js +1 -71
  595. package/amd/utils/UNSAFE_lengthFilter.js.map +1 -1
  596. package/amd/utils/UNSAFE_logger.js +1 -64
  597. package/amd/utils/UNSAFE_logger.js.map +1 -1
  598. package/amd/utils/UNSAFE_matchTranslationBundle.js +1 -57
  599. package/amd/utils/UNSAFE_matchTranslationBundle.js.map +1 -1
  600. package/amd/utils/UNSAFE_mergeInterpolations.js +1 -111
  601. package/amd/utils/UNSAFE_mergeInterpolations.js.map +1 -1
  602. package/amd/utils/UNSAFE_mergeProps.js +1 -91
  603. package/amd/utils/UNSAFE_mergeProps.js.map +1 -1
  604. package/amd/utils/UNSAFE_meterTypes.js +1 -13
  605. package/amd/utils/UNSAFE_meterTypes.js.map +1 -1
  606. package/amd/utils/UNSAFE_roles.js +1 -107
  607. package/amd/utils/UNSAFE_roles.js.map +1 -1
  608. package/amd/utils/UNSAFE_selectUtils.js +1 -13
  609. package/amd/utils/UNSAFE_selectUtils.js.map +1 -1
  610. package/amd/utils/UNSAFE_size.js +1 -53
  611. package/amd/utils/UNSAFE_size.js.map +1 -1
  612. package/amd/utils/UNSAFE_soundUtils.js +1 -98
  613. package/amd/utils/UNSAFE_soundUtils.js.map +1 -1
  614. package/amd/utils/UNSAFE_stringUtils.js +1 -21
  615. package/amd/utils/UNSAFE_stringUtils.js.map +1 -1
  616. package/amd/utils/UNSAFE_typeUtils.js +1 -7
  617. package/amd/utils/UNSAFE_typeUtils.js.map +1 -1
  618. package/amd/utils/UNSAFE_units.js +1 -22
  619. package/amd/utils/UNSAFE_units.js.map +1 -1
  620. package/amd/utils/UNSAFE_valueUpdateDetail.js +1 -7
  621. package/amd/utils/UNSAFE_valueUpdateDetail.js.map +1 -1
  622. package/cjs/{Badge-a39fc1b1.js → Badge-45a5c41c.js} +16 -16
  623. package/cjs/{Badge-a39fc1b1.js.map → Badge-45a5c41c.js.map} +1 -1
  624. package/cjs/{BaseButton-15adcc04.js → BaseButton-d8abe97c.js} +20 -20
  625. package/cjs/{BaseButton-15adcc04.js.map → BaseButton-d8abe97c.js.map} +1 -1
  626. package/cjs/{Button-6d645302.js → Button-ab4e7bfd.js} +13 -13
  627. package/{amd/Button-87280b4a.js.map → cjs/Button-ab4e7bfd.js.map} +1 -1
  628. package/cjs/{Chip-a6ecbefc.js → Chip-936edd4e.js} +10 -10
  629. package/{amd/Chip-8cd23568.js.map → cjs/Chip-936edd4e.js.map} +1 -1
  630. package/cjs/{ClearIcon-f04de939.js → ClearIcon-c555c76b.js} +3 -3
  631. package/cjs/{ClearIcon-f04de939.js.map → ClearIcon-c555c76b.js.map} +1 -1
  632. package/cjs/{Collection-134eaf28.js → Collection-8154de56.js} +2 -2
  633. package/cjs/{Collection-134eaf28.js.map → Collection-8154de56.js.map} +1 -1
  634. package/cjs/{ComponentMessage-d765b28b.js → ComponentMessage-0a03714e.js} +8 -8
  635. package/cjs/{ComponentMessage-d765b28b.js.map → ComponentMessage-0a03714e.js.map} +1 -1
  636. package/cjs/{ComponentMessageContainer-c0c21e1b.js → ComponentMessageContainer-19ea5452.js} +5 -5
  637. package/{amd/ComponentMessageContainer-a00ec42c.js.map → cjs/ComponentMessageContainer-19ea5452.js.map} +1 -1
  638. package/cjs/{Divider-2042aba9.js → Divider-0a07ce80.js} +3 -3
  639. package/cjs/{Divider-2042aba9.js.map → Divider-0a07ce80.js.map} +1 -1
  640. package/cjs/{FilePicker-d7a4de7a.js → FilePicker-7727424f.js} +14 -14
  641. package/cjs/{FilePicker-d7a4de7a.js.map → FilePicker-7727424f.js.map} +1 -1
  642. package/cjs/{Flex-260323e0.js → Flex-e8364ea2.js} +8 -8
  643. package/cjs/{Flex-260323e0.js.map → Flex-e8364ea2.js.map} +1 -1
  644. package/cjs/{Floating-d2046aed.js → Floating-fc130f9e.js} +3 -3
  645. package/cjs/{Floating-d2046aed.js.map → Floating-fc130f9e.js.map} +1 -1
  646. package/cjs/{FocusTrap-df4bf064.js → FocusTrap-6e5c36e5.js} +5 -5
  647. package/cjs/{FocusTrap-df4bf064.js.map → FocusTrap-6e5c36e5.js.map} +1 -1
  648. package/cjs/{FormControlUtils-c6a4dc4b.js → FormControlUtils-234c8b45.js} +5 -5
  649. package/cjs/{FormControlUtils-c6a4dc4b.js.map → FormControlUtils-234c8b45.js.map} +1 -1
  650. package/cjs/{Heading-aa545fbc.js → Heading-f594b629.js} +13 -13
  651. package/cjs/{Heading-aa545fbc.js.map → Heading-f594b629.js.map} +1 -1
  652. package/cjs/{HiddenAccessible-f8c4113f.js → HiddenAccessible-130e8b30.js} +3 -3
  653. package/cjs/{HiddenAccessible-f8c4113f.js.map → HiddenAccessible-130e8b30.js.map} +1 -1
  654. package/cjs/{HighlightText-10042675.js → HighlightText-d30cac54.js} +3 -3
  655. package/{amd/HighlightText-9d200a5d.js.map → cjs/HighlightText-d30cac54.js.map} +1 -1
  656. package/cjs/{Icon-742d4479.js → Icon-acbc21a8.js} +25 -25
  657. package/cjs/{Icon-742d4479.js.map → Icon-acbc21a8.js.map} +1 -1
  658. package/cjs/{Indexer-0c98d91e.js → Indexer-a81ed1f9.js} +16 -16
  659. package/cjs/{Indexer-0c98d91e.js.map → Indexer-a81ed1f9.js.map} +1 -1
  660. package/cjs/{InlineHelpSource-e98e803d.js → InlineHelpSource-10adb22d.js} +3 -3
  661. package/cjs/{InlineHelpSource-e98e803d.js.map → InlineHelpSource-10adb22d.js.map} +1 -1
  662. package/cjs/{Link-a955e5a1.js → Link-12fe652f.js} +8 -8
  663. package/cjs/{Link-a955e5a1.js.map → Link-12fe652f.js.map} +1 -1
  664. package/cjs/{List-d9e06dfd.js → List-26cf47b1.js} +23 -23
  665. package/cjs/{List-d9e06dfd.js.map → List-26cf47b1.js.map} +1 -1
  666. package/cjs/{ListItemTextLayout-7fefca37.js → ListItemTextLayout-d309c3a9.js} +13 -13
  667. package/cjs/{ListItemTextLayout-7fefca37.js.map → ListItemTextLayout-d309c3a9.js.map} +1 -1
  668. package/cjs/{ListView-05ed6c8a.js → ListView-30ef9d52.js} +3 -3
  669. package/cjs/{ListView-05ed6c8a.js.map → ListView-30ef9d52.js.map} +1 -1
  670. package/cjs/{LoadMoreCollection-9479dcd1.js → LoadMoreCollection-60ec118d.js} +3 -3
  671. package/cjs/{LoadMoreCollection-9479dcd1.js.map → LoadMoreCollection-60ec118d.js.map} +1 -1
  672. package/cjs/{Menu-7a63d78b.js → Menu-8ee7cb3f.js} +6 -6
  673. package/cjs/{Menu-7a63d78b.js.map → Menu-8ee7cb3f.js.map} +1 -1
  674. package/cjs/{MenuDivider-164b9d81.js → MenuDivider-8ba18718.js} +4 -4
  675. package/cjs/{MenuDivider-164b9d81.js.map → MenuDivider-8ba18718.js.map} +1 -1
  676. package/cjs/{MenuItem-068e6546.js → MenuItem-67d1c17e.js} +19 -19
  677. package/cjs/{MenuItem-068e6546.js.map → MenuItem-67d1c17e.js.map} +1 -1
  678. package/cjs/{Message.types-cb49247a.js → Message.types-4050b933.js} +2 -2
  679. package/cjs/{Message.types-cb49247a.js.map → Message.types-4050b933.js.map} +1 -1
  680. package/cjs/{MessageCloseButton-a8d04f54.js → MessageCloseButton-a88ec1f0.js} +9 -9
  681. package/{amd/MessageCloseButton-51697635.js.map → cjs/MessageCloseButton-a88ec1f0.js.map} +1 -1
  682. package/cjs/{MessageDetail-ccca445b.js → MessageDetail-3b7b1e71.js} +7 -7
  683. package/cjs/{MessageDetail-ccca445b.js.map → MessageDetail-3b7b1e71.js.map} +1 -1
  684. package/cjs/{MessageFormattingUtils-221fcd80.js → MessageFormattingUtils-d2e689ee.js} +4 -4
  685. package/cjs/{MessageFormattingUtils-221fcd80.js.map → MessageFormattingUtils-d2e689ee.js.map} +1 -1
  686. package/cjs/{MessageLayer-b1319d82.js → MessageLayer-0569119f.js} +11 -11
  687. package/cjs/{MessageLayer-b1319d82.js.map → MessageLayer-0569119f.js.map} +1 -1
  688. package/cjs/{MessageStartIcon-b8097181.js → MessageStartIcon-8b6bb219.js} +11 -11
  689. package/cjs/{MessageStartIcon-b8097181.js.map → MessageStartIcon-8b6bb219.js.map} +1 -1
  690. package/cjs/{MessageSummary-3f9315a9.js → MessageSummary-e6f5a488.js} +7 -7
  691. package/cjs/{MessageSummary-3f9315a9.js.map → MessageSummary-e6f5a488.js.map} +1 -1
  692. package/cjs/{MessageTimestamp-d54dc4a3.js → MessageTimestamp-42957e93.js} +5 -5
  693. package/cjs/{MessageTimestamp-d54dc4a3.js.map → MessageTimestamp-42957e93.js.map} +1 -1
  694. package/cjs/{MessageToast-ac565264.js → MessageToast-bca9cd41.js} +9 -9
  695. package/cjs/{MessageToast-ac565264.js.map → MessageToast-bca9cd41.js.map} +1 -1
  696. package/cjs/{MessageUtils-3dcdf495.js → MessageUtils-0835327e.js} +3 -3
  697. package/cjs/{MessageUtils-3dcdf495.js.map → MessageUtils-0835327e.js.map} +1 -1
  698. package/cjs/{MessagesManager-c3a0893a.js → MessagesManager-644faed4.js} +4 -4
  699. package/cjs/{MessagesManager-c3a0893a.js.map → MessagesManager-644faed4.js.map} +1 -1
  700. package/cjs/{MeterCircle-7ec0b5f5.js → MeterCircle-4445b848.js} +50 -50
  701. package/cjs/{MeterCircle-7ec0b5f5.js.map → MeterCircle-4445b848.js.map} +1 -1
  702. package/cjs/{Modal-0c4cc690.js → Modal-a33c4ea6.js} +6 -6
  703. package/cjs/{Modal-0c4cc690.js.map → Modal-a33c4ea6.js.map} +1 -1
  704. package/cjs/{NumberInputText-40fe1cbf.js → NumberInputText-3aae98e5.js} +7 -7
  705. package/cjs/{NumberInputText-40fe1cbf.js.map → NumberInputText-3aae98e5.js.map} +1 -1
  706. package/cjs/PRIVATE_Collection.js +2 -2
  707. package/cjs/PRIVATE_List.js +23 -23
  708. package/cjs/PRIVATE_Message.js +41 -41
  709. package/cjs/PRIVATE_Message.js.map +1 -1
  710. package/cjs/PRIVATE_MessageLayer.js +12 -12
  711. package/cjs/PRIVATE_Meter.js +2 -2
  712. package/cjs/PRIVATE_SelectCommon.js +54 -54
  713. package/cjs/PRIVATE_SelectCommon.js.map +1 -1
  714. package/cjs/PRIVATE_TransitionGroup.js +1 -1
  715. package/cjs/PRIVATE_VirtualizedCollection.js +3 -3
  716. package/cjs/{ReadonlyTextFieldInput-45dae724.js → ReadonlyTextFieldInput-ae8ca3d3.js} +13 -13
  717. package/cjs/{ReadonlyTextFieldInput-45dae724.js.map → ReadonlyTextFieldInput-ae8ca3d3.js.map} +1 -1
  718. package/cjs/{SelectMenuItem-fa0edf72.js → SelectMenuItem-2f4daaa1.js} +5 -5
  719. package/cjs/{SelectMenuItem-fa0edf72.js.map → SelectMenuItem-2f4daaa1.js.map} +1 -1
  720. package/cjs/{SelectMultiple-c809adb7.js → SelectMultiple-2384c07d.js} +8 -8
  721. package/cjs/{SelectMultiple-c809adb7.js.map → SelectMultiple-2384c07d.js.map} +1 -1
  722. package/cjs/{SelectSingle-e7cd9118.js → SelectSingle-11856321.js} +4 -4
  723. package/cjs/{SelectSingle-e7cd9118.js.map → SelectSingle-11856321.js.map} +1 -1
  724. package/cjs/{Skeleton-f60eec1f.js → Skeleton-6deacbc3.js} +5 -5
  725. package/cjs/{Skeleton-f60eec1f.js.map → Skeleton-6deacbc3.js.map} +1 -1
  726. package/cjs/{Spacer-f9d398f3.js → Spacer-5841ebd4.js} +4 -4
  727. package/cjs/{Spacer-f9d398f3.js.map → Spacer-5841ebd4.js.map} +1 -1
  728. package/cjs/{SplitMenuButton-f67550f5.js → SplitMenuButton-8a3edcbe.js} +14 -14
  729. package/cjs/{SplitMenuButton-f67550f5.js.map → SplitMenuButton-8a3edcbe.js.map} +1 -1
  730. package/cjs/{Text-4f2d62c9.js → Text-7302d155.js} +28 -28
  731. package/cjs/{Text-4f2d62c9.js.map → Text-7302d155.js.map} +1 -1
  732. package/cjs/{TextArea-e12574f9.js → TextArea-d378b949.js} +8 -8
  733. package/cjs/{TextArea-e12574f9.js.map → TextArea-d378b949.js.map} +1 -1
  734. package/cjs/{TextAreaAutosize-c0bf9ebd.js → TextAreaAutosize-3fcd1605.js} +5 -5
  735. package/cjs/{TextAreaAutosize-c0bf9ebd.js.map → TextAreaAutosize-3fcd1605.js.map} +1 -1
  736. package/cjs/{TextFieldInput-f2f3f0a0.js → TextFieldInput-890e3951.js} +33 -33
  737. package/{amd/TextFieldInput-312fb211.js.map → cjs/TextFieldInput-890e3951.js.map} +1 -1
  738. package/cjs/UNSAFE_AspectRatio.js +8 -8
  739. package/cjs/UNSAFE_AspectRatio.js.map +1 -1
  740. package/cjs/UNSAFE_Avatar.js +11 -11
  741. package/cjs/UNSAFE_Avatar.js.map +1 -1
  742. package/cjs/UNSAFE_Badge.js +3 -3
  743. package/cjs/UNSAFE_BaseButton.js +9 -9
  744. package/cjs/UNSAFE_Button.js +10 -10
  745. package/cjs/UNSAFE_Center.js +11 -11
  746. package/cjs/UNSAFE_Chip.js +3 -3
  747. package/cjs/UNSAFE_Collapsible.js +26 -26
  748. package/cjs/UNSAFE_Collapsible.js.map +1 -1
  749. package/cjs/UNSAFE_Collection.js +1 -1
  750. package/cjs/UNSAFE_ComponentMessage.js +33 -33
  751. package/cjs/UNSAFE_Divider.js +7 -7
  752. package/cjs/UNSAFE_EmptyList.js +1 -1
  753. package/cjs/UNSAFE_Environment.js +1 -1
  754. package/cjs/UNSAFE_FilePicker.js +14 -14
  755. package/cjs/UNSAFE_Flex.js +11 -11
  756. package/cjs/UNSAFE_Floating.js +3 -3
  757. package/cjs/UNSAFE_FocusTrap.js +6 -6
  758. package/cjs/UNSAFE_Grid.js +9 -9
  759. package/cjs/UNSAFE_Grid.js.map +1 -1
  760. package/cjs/UNSAFE_Heading.js +9 -9
  761. package/cjs/UNSAFE_HiddenAccessible.js +2 -2
  762. package/cjs/UNSAFE_HighlightText.js +2 -2
  763. package/cjs/UNSAFE_Icon.js +7 -7
  764. package/cjs/UNSAFE_Icons.js +8 -8
  765. package/cjs/UNSAFE_Indexer.js +16 -16
  766. package/cjs/UNSAFE_InputPassword.js +40 -40
  767. package/cjs/UNSAFE_InputText.js +39 -39
  768. package/cjs/UNSAFE_Label.js +16 -16
  769. package/cjs/UNSAFE_Label.js.map +1 -1
  770. package/cjs/UNSAFE_LabelValueLayout.js +20 -20
  771. package/cjs/UNSAFE_LabelValueLayout.js.map +1 -1
  772. package/cjs/UNSAFE_Layer.js +1 -1
  773. package/cjs/UNSAFE_Link.js +3 -3
  774. package/cjs/UNSAFE_ListItemLayout.js +10 -10
  775. package/cjs/UNSAFE_ListView.js +24 -24
  776. package/cjs/UNSAFE_LiveRegion.js +2 -2
  777. package/cjs/UNSAFE_LiveRegion.js.map +1 -1
  778. package/cjs/UNSAFE_LoadMoreCollection.js +3 -3
  779. package/cjs/UNSAFE_Menu.js +15 -15
  780. package/cjs/UNSAFE_MessageBanner.js +30 -30
  781. package/cjs/UNSAFE_MessageToast.js +33 -33
  782. package/cjs/UNSAFE_MeterBar.js +49 -49
  783. package/cjs/UNSAFE_MeterBar.js.map +1 -1
  784. package/cjs/UNSAFE_MeterCircle.js +7 -7
  785. package/cjs/UNSAFE_Modal.js +7 -7
  786. package/cjs/UNSAFE_NumberInputText.js +39 -39
  787. package/cjs/UNSAFE_PrefixSuffix.js +10 -10
  788. package/cjs/UNSAFE_PrefixSuffix.js.map +1 -1
  789. package/cjs/UNSAFE_ProgressBar.js +9 -9
  790. package/cjs/UNSAFE_ProgressBar.js.map +1 -1
  791. package/cjs/UNSAFE_ProgressCircle.js +9 -9
  792. package/cjs/UNSAFE_ProgressCircle.js.map +1 -1
  793. package/cjs/UNSAFE_RatingGauge.js +26 -26
  794. package/cjs/UNSAFE_RatingGauge.js.map +1 -1
  795. package/cjs/UNSAFE_SelectMultiple.js +47 -47
  796. package/cjs/UNSAFE_SelectSingle.js +46 -46
  797. package/cjs/UNSAFE_Selector.js +22 -22
  798. package/cjs/UNSAFE_Selector.js.map +1 -1
  799. package/cjs/UNSAFE_Skeleton.js +8 -8
  800. package/cjs/UNSAFE_Spacer.js +10 -10
  801. package/cjs/UNSAFE_SplitMenuButton.js +22 -22
  802. package/cjs/UNSAFE_Text.js +8 -8
  803. package/cjs/UNSAFE_TextArea.js +39 -39
  804. package/cjs/UNSAFE_TextAreaAutosize.js +40 -40
  805. package/cjs/UNSAFE_TextField.js +35 -35
  806. package/cjs/UNSAFE_TextField.js.map +1 -1
  807. package/cjs/UNSAFE_ThemedIcons.js +9 -9
  808. package/cjs/UNSAFE_UserAssistance.js +41 -41
  809. package/cjs/UNSAFE_UserAssistance.js.map +1 -1
  810. package/cjs/UNSAFE_View.js +9 -9
  811. package/cjs/UNSAFE_VirtualizedListView.js +24 -24
  812. package/cjs/UNSAFE_WindowOverlay.js +1 -1
  813. package/cjs/{VirtualizedCollection-b345dec7.js → VirtualizedCollection-0a9f9c5f.js} +3 -3
  814. package/cjs/{VirtualizedCollection-b345dec7.js.map → VirtualizedCollection-0a9f9c5f.js.map} +1 -1
  815. package/cjs/{VirtualizedListView-b13ea090.js → VirtualizedListView-2c7d2a50.js} +3 -3
  816. package/cjs/{VirtualizedListView-b13ea090.js.map → VirtualizedListView-2c7d2a50.js.map} +1 -1
  817. package/cjs/{_curry1-8d2120e1.js → _curry1-13802dcb.js} +2 -2
  818. package/cjs/{_curry1-8d2120e1.js.map → _curry1-13802dcb.js.map} +1 -1
  819. package/cjs/{_curry2-e0541fa2.js → _curry2-d9882f03.js} +3 -3
  820. package/cjs/{_curry2-e0541fa2.js.map → _curry2-d9882f03.js.map} +1 -1
  821. package/cjs/{_curry3-4bf8f0ff.js → _curry3-b2cf661d.js} +4 -4
  822. package/cjs/{_curry3-4bf8f0ff.js.map → _curry3-b2cf661d.js.map} +1 -1
  823. package/cjs/{_has-0c6632fb.js → _has-7e450434.js} +3 -3
  824. package/cjs/{_has-0c6632fb.js.map → _has-7e450434.js.map} +1 -1
  825. package/cjs/{classNames-da349ca2.js → classNames-ce915c07.js} +2 -2
  826. package/cjs/{classNames-da349ca2.js.map → classNames-ce915c07.js.map} +1 -1
  827. package/cjs/{clientHints-1ea8f1df.js → clientHints-429ec118.js} +2 -2
  828. package/cjs/{clientHints-1ea8f1df.js.map → clientHints-429ec118.js.map} +1 -1
  829. package/cjs/{flexbox-f40d228f.js → flexbox-08bfdfa8.js} +10 -10
  830. package/cjs/{flexbox-f40d228f.js.map → flexbox-08bfdfa8.js.map} +1 -1
  831. package/cjs/{flexitem-540999d4.js → flexitem-44fbf03a.js} +10 -10
  832. package/cjs/{flexitem-540999d4.js.map → flexitem-44fbf03a.js.map} +1 -1
  833. package/cjs/hooks/PRIVATE_useCollectionFocusRing.js +1 -1
  834. package/cjs/hooks/PRIVATE_useCurrentKey.js +1 -1
  835. package/cjs/hooks/PRIVATE_useDvtMeterEvents.js +6 -6
  836. package/cjs/hooks/PRIVATE_useItemAction.js +1 -1
  837. package/cjs/hooks/PRIVATE_useMessagesFocusManager.js +1 -1
  838. package/cjs/hooks/PRIVATE_useSelection.js +1 -1
  839. package/cjs/hooks/PRIVATE_useSingleSelection.js +2 -2
  840. package/cjs/hooks/PRIVATE_useTabbableModeSet.js +1 -1
  841. package/cjs/hooks/UNSAFE_useActionable.js +1 -1
  842. package/cjs/hooks/UNSAFE_useActive.js +1 -1
  843. package/cjs/hooks/UNSAFE_useAnimation.js +3 -3
  844. package/cjs/hooks/UNSAFE_useBreakpointValues.js +1 -1
  845. package/cjs/hooks/UNSAFE_useBreakpoints.js +1 -1
  846. package/cjs/hooks/UNSAFE_useClearIcon.js +1 -1
  847. package/cjs/hooks/UNSAFE_useColorScheme.js +1 -1
  848. package/cjs/hooks/UNSAFE_useContainerBreakpointValues.js +1 -1
  849. package/cjs/hooks/UNSAFE_useContainerBreakpoints.js +1 -1
  850. package/cjs/hooks/UNSAFE_useCurrentValueReducer.js +1 -1
  851. package/cjs/hooks/UNSAFE_useDebounce.js +1 -1
  852. package/cjs/hooks/UNSAFE_useFloating.js +2 -2
  853. package/cjs/hooks/UNSAFE_useFocus.js +1 -1
  854. package/cjs/hooks/UNSAFE_useFocusWithin.js +2 -2
  855. package/cjs/hooks/UNSAFE_useFocusableTextField.js +3 -3
  856. package/cjs/hooks/UNSAFE_useFormContext.js +1 -1
  857. package/cjs/hooks/UNSAFE_useFormFieldContext.js +1 -1
  858. package/cjs/hooks/UNSAFE_useFormVariantContext.js +1 -1
  859. package/cjs/hooks/UNSAFE_useHover.js +1 -1
  860. package/cjs/hooks/UNSAFE_useId.js +1 -1
  861. package/cjs/hooks/UNSAFE_useLengthFilter.js +1 -1
  862. package/cjs/hooks/UNSAFE_useLoadingIndicatorTimer.js +1 -1
  863. package/cjs/hooks/UNSAFE_useLongPress.js +1 -1
  864. package/cjs/hooks/UNSAFE_useMessagesContext.js +1 -1
  865. package/cjs/hooks/UNSAFE_useOutsideClick.js +1 -1
  866. package/cjs/hooks/UNSAFE_usePan.js +1 -1
  867. package/cjs/hooks/UNSAFE_usePrefixSuffix.js +2 -2
  868. package/cjs/hooks/UNSAFE_usePress.js +1 -1
  869. package/cjs/hooks/UNSAFE_useScale.js +1 -1
  870. package/cjs/hooks/UNSAFE_useSwipe.js +1 -1
  871. package/cjs/hooks/UNSAFE_useTabbableMode.js +1 -1
  872. package/cjs/hooks/UNSAFE_useTap.js +1 -1
  873. package/cjs/hooks/UNSAFE_useTextField.js +1 -1
  874. package/cjs/hooks/UNSAFE_useTextFieldInputHandlers.js +2 -2
  875. package/cjs/hooks/UNSAFE_useTheme.js +1 -1
  876. package/cjs/hooks/UNSAFE_useTimer.js +1 -1
  877. package/cjs/hooks/UNSAFE_useToggle.js +1 -1
  878. package/cjs/hooks/UNSAFE_useTooltip.js +10 -10
  879. package/cjs/hooks/UNSAFE_useTooltip.js.map +1 -1
  880. package/cjs/hooks/UNSAFE_useTouch.js +1 -1
  881. package/cjs/hooks/UNSAFE_useTranslationBundle.js +1 -1
  882. package/cjs/hooks/UNSAFE_useUncontrolledState.js +1 -1
  883. package/cjs/hooks/UNSAFE_useUser.js +1 -1
  884. package/cjs/hooks/UNSAFE_useViewportIntersect.js +1 -1
  885. package/cjs/{index-6cd66e43.js → index-11d50917.js} +3 -3
  886. package/cjs/{index-6cd66e43.js.map → index-11d50917.js.map} +1 -1
  887. package/cjs/{index-1a8d3228.js → index-3ccf46fc.js} +2 -2
  888. package/cjs/{index-1a8d3228.js.map → index-3ccf46fc.js.map} +1 -1
  889. package/cjs/{index-f35479e8.js → index-95880e1d.js} +3 -3
  890. package/cjs/{index-f35479e8.js.map → index-95880e1d.js.map} +1 -1
  891. package/cjs/{keys-dcecff11.js → keys-18213309.js} +4 -4
  892. package/cjs/{keys-dcecff11.js.map → keys-18213309.js.map} +1 -1
  893. package/cjs/{listViewSelectionTests-8543d0be.js → listViewSelectionTests-a8960d17.js} +4 -4
  894. package/cjs/{listViewSelectionTests-8543d0be.js.map → listViewSelectionTests-a8960d17.js.map} +1 -1
  895. package/cjs/{listViewTabbableModeTests-088e3919.js → listViewTabbableModeTests-a1a93b4a.js} +4 -4
  896. package/cjs/{listViewTabbableModeTests-088e3919.js.map → listViewTabbableModeTests-a1a93b4a.js.map} +1 -1
  897. package/cjs/{listViewTestFixtures-78bedae0.js → listViewTestFixtures-abead9a6.js} +2 -2
  898. package/cjs/{listViewTestFixtures-78bedae0.js.map → listViewTestFixtures-abead9a6.js.map} +1 -1
  899. package/cjs/{menuTestsUtils-216ea1a0.js → menuTestsUtils-f1fdf60d.js} +2 -2
  900. package/cjs/{menuTestsUtils-216ea1a0.js.map → menuTestsUtils-f1fdf60d.js.map} +1 -1
  901. package/cjs/resources/nls/ar/bundle.js +1 -1
  902. package/cjs/resources/nls/ar-XB/bundle.js +1 -1
  903. package/cjs/resources/nls/bg/bundle.js +1 -1
  904. package/cjs/resources/nls/bs/bundle.js +1 -1
  905. package/cjs/resources/nls/bs-Cyrl/bundle.js +1 -1
  906. package/cjs/resources/nls/bundle.js +1 -1
  907. package/cjs/resources/nls/cs/bundle.js +1 -1
  908. package/cjs/resources/nls/da/bundle.js +1 -1
  909. package/cjs/resources/nls/de/bundle.js +1 -1
  910. package/cjs/resources/nls/el/bundle.js +1 -1
  911. package/cjs/resources/nls/en/bundle.js +1 -1
  912. package/cjs/resources/nls/en-XA/bundle.js +1 -1
  913. package/cjs/resources/nls/en-XC/bundle.js +1 -1
  914. package/cjs/resources/nls/es/bundle.js +1 -1
  915. package/cjs/resources/nls/et/bundle.js +1 -1
  916. package/cjs/resources/nls/fi/bundle.js +1 -1
  917. package/cjs/resources/nls/fr/bundle.js +1 -1
  918. package/cjs/resources/nls/fr-CA/bundle.js +1 -1
  919. package/cjs/resources/nls/he/bundle.js +1 -1
  920. package/cjs/resources/nls/hr/bundle.js +1 -1
  921. package/cjs/resources/nls/hu/bundle.js +1 -1
  922. package/cjs/resources/nls/is/bundle.js +1 -1
  923. package/cjs/resources/nls/it/bundle.js +1 -1
  924. package/cjs/resources/nls/ja/bundle.js +1 -1
  925. package/cjs/resources/nls/ko/bundle.js +1 -1
  926. package/cjs/resources/nls/lt/bundle.js +1 -1
  927. package/cjs/resources/nls/lv/bundle.js +1 -1
  928. package/cjs/resources/nls/ms/bundle.js +1 -1
  929. package/cjs/resources/nls/nl/bundle.js +1 -1
  930. package/cjs/resources/nls/no/bundle.js +1 -1
  931. package/cjs/resources/nls/pl/bundle.js +1 -1
  932. package/cjs/resources/nls/pt/bundle.js +1 -1
  933. package/cjs/resources/nls/pt-PT/bundle.js +1 -1
  934. package/cjs/resources/nls/ro/bundle.js +1 -1
  935. package/cjs/resources/nls/ru/bundle.js +1 -1
  936. package/cjs/resources/nls/sk/bundle.js +1 -1
  937. package/cjs/resources/nls/sl/bundle.js +1 -1
  938. package/cjs/resources/nls/sr/bundle.js +1 -1
  939. package/cjs/resources/nls/sr-Latn/bundle.js +1 -1
  940. package/cjs/resources/nls/supportedLocales.js +1 -1
  941. package/cjs/resources/nls/sv/bundle.js +1 -1
  942. package/cjs/resources/nls/th/bundle.js +1 -1
  943. package/cjs/resources/nls/tr/bundle.js +1 -1
  944. package/cjs/resources/nls/uk/bundle.js +1 -1
  945. package/cjs/resources/nls/vi/bundle.js +1 -1
  946. package/cjs/resources/nls/zh-Hans/bundle.js +1 -1
  947. package/cjs/resources/nls/zh-Hant/bundle.js +1 -1
  948. package/cjs/{stringUtils-4323b5f4.js → stringUtils-124d71a2.js} +2 -2
  949. package/cjs/{stringUtils-4323b5f4.js.map → stringUtils-124d71a2.js.map} +1 -1
  950. package/cjs/{testHelpers-6f2545dd.js → testHelpers-19c0f230.js} +2 -2
  951. package/cjs/{testHelpers-6f2545dd.js.map → testHelpers-19c0f230.js.map} +1 -1
  952. package/cjs/translationBundle.js +1 -1
  953. package/cjs/{tslib.es6-cd419f8d.js → tslib.es6-269818ea.js} +2 -2
  954. package/cjs/{tslib.es6-cd419f8d.js.map → tslib.es6-269818ea.js.map} +1 -1
  955. package/cjs/{useAnimation-64f648d2.js → useAnimation-a1133121.js} +3 -3
  956. package/cjs/{useAnimation-64f648d2.js.map → useAnimation-a1133121.js.map} +1 -1
  957. package/cjs/{useFocusWithin-4b3e579b.js → useFocusWithin-78dc5295.js} +2 -2
  958. package/cjs/{useFocusWithin-4b3e579b.js.map → useFocusWithin-78dc5295.js.map} +1 -1
  959. package/cjs/{useSingleSelection-e0d38657.js → useSingleSelection-b4e1d32b.js} +2 -2
  960. package/cjs/{useSingleSelection-e0d38657.js.map → useSingleSelection-b4e1d32b.js.map} +1 -1
  961. package/cjs/utils/PRIVATE_clientHints.js +2 -2
  962. package/cjs/utils/PRIVATE_collectionUtils.js +1 -1
  963. package/cjs/utils/PRIVATE_dvtTestUtils.js +1 -1
  964. package/cjs/utils/PRIVATE_floatingUtils.js +1 -1
  965. package/cjs/utils/PRIVATE_meterUtils.js +1 -1
  966. package/cjs/utils/PRIVATE_refUtils.js +1 -1
  967. package/cjs/utils/PRIVATE_tabbableUtils.js +4 -4
  968. package/cjs/utils/PRIVATE_timer.js +1 -1
  969. package/cjs/utils/UNSAFE_arrayUtils.js +1 -1
  970. package/cjs/utils/UNSAFE_attributeUtils.js +1 -1
  971. package/cjs/utils/UNSAFE_classNames.js +2 -2
  972. package/cjs/utils/UNSAFE_componentUtils.js +1 -1
  973. package/cjs/utils/UNSAFE_dataProvider.js +1 -1
  974. package/cjs/utils/UNSAFE_filePickerUtils.js +1 -1
  975. package/cjs/utils/UNSAFE_getLocale.js +1 -1
  976. package/cjs/utils/UNSAFE_interpolations/aria.js +1 -1
  977. package/cjs/utils/UNSAFE_interpolations/borders.js +1 -1
  978. package/cjs/utils/UNSAFE_interpolations/boxalignment.js +19 -19
  979. package/cjs/utils/UNSAFE_interpolations/boxalignment.js.map +1 -1
  980. package/cjs/utils/UNSAFE_interpolations/colors.js +1 -1
  981. package/cjs/utils/UNSAFE_interpolations/dimensions.js +2 -2
  982. package/cjs/utils/UNSAFE_interpolations/flexbox.js +5 -5
  983. package/cjs/utils/UNSAFE_interpolations/flexitem.js +5 -5
  984. package/cjs/utils/UNSAFE_interpolations/grid.js +1 -1
  985. package/cjs/utils/UNSAFE_interpolations/griditem.js +1 -1
  986. package/cjs/utils/UNSAFE_interpolations/padding.js +1 -1
  987. package/cjs/utils/UNSAFE_interpolations/text.js +7 -7
  988. package/cjs/utils/UNSAFE_interpolations/text.js.map +1 -1
  989. package/cjs/utils/UNSAFE_keys.js +1 -1
  990. package/cjs/utils/UNSAFE_lengthFilter.js +1 -1
  991. package/cjs/utils/UNSAFE_logger.js +3 -3
  992. package/cjs/utils/UNSAFE_matchTranslationBundle.js +1 -1
  993. package/cjs/utils/UNSAFE_mergeInterpolations.js +6 -6
  994. package/cjs/utils/UNSAFE_mergeProps.js +1 -1
  995. package/cjs/utils/UNSAFE_meterTypes.js +1 -1
  996. package/cjs/utils/UNSAFE_roles.js +1 -1
  997. package/cjs/utils/UNSAFE_selectUtils.js +1 -1
  998. package/cjs/utils/UNSAFE_size.js +1 -1
  999. package/cjs/utils/UNSAFE_soundUtils.js +1 -1
  1000. package/cjs/utils/UNSAFE_stringUtils.js +2 -2
  1001. package/cjs/utils/UNSAFE_typeUtils.js +1 -1
  1002. package/cjs/utils/UNSAFE_units.js +2 -2
  1003. package/cjs/utils/UNSAFE_valueUpdateDetail.js +1 -1
  1004. package/es/{ClearIcon-82a14f55.js → ClearIcon-07fe2eb7.js} +3 -3
  1005. package/es/{ClearIcon-82a14f55.js.map → ClearIcon-07fe2eb7.js.map} +1 -1
  1006. package/es/{LoadMoreCollection-f47b4050.js → LoadMoreCollection-069b9e84.js} +2 -2
  1007. package/es/{LoadMoreCollection-f47b4050.js.map → LoadMoreCollection-069b9e84.js.map} +1 -1
  1008. package/es/PRIVATE_Collection.js +1 -1
  1009. package/es/PRIVATE_List.css +17 -18
  1010. package/es/PRIVATE_List.js +24 -24
  1011. package/es/PRIVATE_List.js.map +1 -1
  1012. package/es/PRIVATE_Message.css +34 -35
  1013. package/es/PRIVATE_Message.js +35 -35
  1014. package/es/PRIVATE_Message.js.map +1 -1
  1015. package/es/PRIVATE_MessageLayer.css +7 -8
  1016. package/es/PRIVATE_MessageLayer.js +14 -14
  1017. package/es/PRIVATE_MessageLayer.js.map +1 -1
  1018. package/es/PRIVATE_Meter.js +2 -2
  1019. package/es/PRIVATE_SelectCommon.css +18 -19
  1020. package/es/PRIVATE_SelectCommon.js +22 -22
  1021. package/es/PRIVATE_SelectCommon.js.map +1 -1
  1022. package/es/PRIVATE_TransitionGroup.js +1 -1
  1023. package/es/PRIVATE_VirtualizedCollection.js +1 -1
  1024. package/es/UNSAFE_AspectRatio.css +1 -2
  1025. package/es/UNSAFE_AspectRatio.js +7 -7
  1026. package/es/UNSAFE_AspectRatio.js.map +1 -1
  1027. package/es/UNSAFE_Avatar.css +8 -9
  1028. package/es/UNSAFE_Avatar.js +10 -10
  1029. package/es/UNSAFE_Avatar.js.map +1 -1
  1030. package/es/UNSAFE_Badge.css +13 -14
  1031. package/es/UNSAFE_Badge.js +14 -14
  1032. package/es/UNSAFE_Badge.js.map +1 -1
  1033. package/es/UNSAFE_BaseButton.css +15 -16
  1034. package/es/UNSAFE_BaseButton.js +21 -21
  1035. package/es/UNSAFE_BaseButton.js.map +1 -1
  1036. package/es/UNSAFE_Button.css +8 -9
  1037. package/es/UNSAFE_Button.js +14 -14
  1038. package/es/UNSAFE_Button.js.map +1 -1
  1039. package/es/UNSAFE_Center.js +7 -7
  1040. package/es/UNSAFE_Chip.css +7 -8
  1041. package/es/UNSAFE_Chip.js +8 -8
  1042. package/es/UNSAFE_Chip.js.map +1 -1
  1043. package/es/UNSAFE_Collapsible.css +9 -10
  1044. package/es/UNSAFE_Collapsible.js +16 -16
  1045. package/es/UNSAFE_Collapsible.js.map +1 -1
  1046. package/es/UNSAFE_Collection.js +1 -1
  1047. package/es/UNSAFE_ComponentMessage.css +3 -4
  1048. package/es/UNSAFE_ComponentMessage.js +10 -10
  1049. package/es/UNSAFE_ComponentMessage.js.map +1 -1
  1050. package/es/UNSAFE_Divider.css +1 -2
  1051. package/es/UNSAFE_Divider.js +6 -6
  1052. package/es/UNSAFE_EmptyList.js +1 -1
  1053. package/es/UNSAFE_Environment.js +1 -1
  1054. package/es/UNSAFE_FilePicker.css +6 -7
  1055. package/es/UNSAFE_FilePicker.js +13 -13
  1056. package/es/UNSAFE_FilePicker.js.map +1 -1
  1057. package/es/UNSAFE_Flex.css +2 -3
  1058. package/es/UNSAFE_Flex.js +9 -9
  1059. package/es/UNSAFE_Flex.js.map +1 -1
  1060. package/es/UNSAFE_Floating.js +2 -2
  1061. package/es/UNSAFE_FocusTrap.css +3 -4
  1062. package/es/UNSAFE_FocusTrap.js +6 -6
  1063. package/es/UNSAFE_FocusTrap.js.map +1 -1
  1064. package/es/UNSAFE_Grid.css +1 -2
  1065. package/es/UNSAFE_Grid.js +8 -8
  1066. package/es/UNSAFE_Grid.js.map +1 -1
  1067. package/es/UNSAFE_Heading.css +9 -10
  1068. package/es/UNSAFE_Heading.js +16 -16
  1069. package/es/UNSAFE_Heading.js.map +1 -1
  1070. package/es/UNSAFE_HiddenAccessible.css +1 -2
  1071. package/es/UNSAFE_HiddenAccessible.js +2 -2
  1072. package/es/UNSAFE_HiddenAccessible.js.map +1 -1
  1073. package/es/UNSAFE_HighlightText.css +1 -2
  1074. package/es/UNSAFE_HighlightText.js +2 -2
  1075. package/es/UNSAFE_HighlightText.js.map +1 -1
  1076. package/es/UNSAFE_Icon.css +21 -22
  1077. package/es/UNSAFE_Icon.js +24 -24
  1078. package/es/UNSAFE_Icon.js.map +1 -1
  1079. package/es/UNSAFE_Icons.js +3 -3
  1080. package/es/UNSAFE_Indexer.css +8 -9
  1081. package/es/UNSAFE_Indexer.js +15 -15
  1082. package/es/UNSAFE_Indexer.js.map +1 -1
  1083. package/es/UNSAFE_InputPassword.css +1 -2
  1084. package/es/UNSAFE_InputPassword.js +10 -10
  1085. package/es/UNSAFE_InputText.css +1 -2
  1086. package/es/UNSAFE_InputText.js +9 -9
  1087. package/es/UNSAFE_Label.css +13 -14
  1088. package/es/UNSAFE_Label.js +15 -15
  1089. package/es/UNSAFE_Label.js.map +1 -1
  1090. package/es/UNSAFE_LabelValueLayout.css +9 -10
  1091. package/es/UNSAFE_LabelValueLayout.js +16 -16
  1092. package/es/UNSAFE_LabelValueLayout.js.map +1 -1
  1093. package/es/UNSAFE_Layer.js +1 -1
  1094. package/es/UNSAFE_Link.css +5 -6
  1095. package/es/UNSAFE_Link.js +6 -6
  1096. package/es/UNSAFE_Link.js.map +1 -1
  1097. package/es/UNSAFE_ListItemLayout.css +10 -11
  1098. package/es/UNSAFE_ListItemLayout.js +16 -16
  1099. package/es/UNSAFE_ListItemLayout.js.map +1 -1
  1100. package/es/UNSAFE_ListView.js +9 -9
  1101. package/es/UNSAFE_LiveRegion.css +1 -2
  1102. package/es/UNSAFE_LiveRegion.js +2 -2
  1103. package/es/UNSAFE_LiveRegion.js.map +1 -1
  1104. package/es/UNSAFE_LoadMoreCollection.js +2 -2
  1105. package/es/UNSAFE_Menu.css +19 -20
  1106. package/es/UNSAFE_Menu.js +24 -24
  1107. package/es/UNSAFE_Menu.js.map +1 -1
  1108. package/es/UNSAFE_MessageBanner.js +8 -8
  1109. package/es/UNSAFE_MessageToast.css +1 -2
  1110. package/es/UNSAFE_MessageToast.js +9 -9
  1111. package/es/UNSAFE_MeterBar.css +45 -46
  1112. package/es/UNSAFE_MeterBar.js +46 -46
  1113. package/es/UNSAFE_MeterBar.js.map +1 -1
  1114. package/es/UNSAFE_MeterCircle.css +47 -48
  1115. package/es/UNSAFE_MeterCircle.js +49 -49
  1116. package/es/UNSAFE_MeterCircle.js.map +1 -1
  1117. package/es/UNSAFE_Modal.css +5 -6
  1118. package/es/UNSAFE_Modal.js +7 -7
  1119. package/es/UNSAFE_NumberInputText.js +8 -8
  1120. package/es/UNSAFE_PrefixSuffix.css +8 -9
  1121. package/es/UNSAFE_PrefixSuffix.js +9 -9
  1122. package/es/UNSAFE_PrefixSuffix.js.map +1 -1
  1123. package/es/UNSAFE_ProgressBar.css +6 -7
  1124. package/es/UNSAFE_ProgressBar.js +8 -8
  1125. package/es/UNSAFE_ProgressBar.js.map +1 -1
  1126. package/es/UNSAFE_ProgressCircle.css +6 -7
  1127. package/es/UNSAFE_ProgressCircle.js +8 -8
  1128. package/es/UNSAFE_ProgressCircle.js.map +1 -1
  1129. package/es/UNSAFE_RatingGauge.css +22 -23
  1130. package/es/UNSAFE_RatingGauge.js +23 -23
  1131. package/es/UNSAFE_RatingGauge.js.map +1 -1
  1132. package/es/UNSAFE_SelectMultiple.css +1 -2
  1133. package/es/UNSAFE_SelectMultiple.js +10 -10
  1134. package/es/UNSAFE_SelectMultiple.js.map +1 -1
  1135. package/es/UNSAFE_SelectSingle.js +9 -9
  1136. package/es/UNSAFE_Selector.css +5 -6
  1137. package/es/UNSAFE_Selector.js +13 -13
  1138. package/es/UNSAFE_Selector.js.map +1 -1
  1139. package/es/UNSAFE_Skeleton.css +1 -2
  1140. package/es/UNSAFE_Skeleton.js +7 -7
  1141. package/es/UNSAFE_Spacer.js +7 -7
  1142. package/es/UNSAFE_SplitMenuButton.css +5 -6
  1143. package/es/UNSAFE_SplitMenuButton.js +12 -12
  1144. package/es/UNSAFE_SplitMenuButton.js.map +1 -1
  1145. package/es/UNSAFE_Text.css +25 -26
  1146. package/es/UNSAFE_Text.js +31 -31
  1147. package/es/UNSAFE_Text.js.map +1 -1
  1148. package/es/UNSAFE_TextArea.css +3 -4
  1149. package/es/UNSAFE_TextArea.js +11 -11
  1150. package/es/UNSAFE_TextArea.js.map +1 -1
  1151. package/es/UNSAFE_TextAreaAutosize.js +8 -8
  1152. package/es/UNSAFE_TextField.css +62 -63
  1153. package/es/UNSAFE_TextField.js +65 -65
  1154. package/es/UNSAFE_TextField.js.map +1 -1
  1155. package/es/UNSAFE_ThemedIcons.js +3 -3
  1156. package/es/UNSAFE_UserAssistance.css +11 -12
  1157. package/es/UNSAFE_UserAssistance.js +16 -16
  1158. package/es/UNSAFE_UserAssistance.js.map +1 -1
  1159. package/es/UNSAFE_View.js +7 -7
  1160. package/es/UNSAFE_VirtualizedListView.js +9 -9
  1161. package/es/UNSAFE_WindowOverlay.js +1 -1
  1162. package/es/{_curry1-dfb64835.js → _curry1-5c89b5f3.js} +2 -2
  1163. package/es/{_curry1-dfb64835.js.map → _curry1-5c89b5f3.js.map} +1 -1
  1164. package/es/{_curry2-b60c1ab2.js → _curry2-507af694.js} +3 -3
  1165. package/es/{_curry2-b60c1ab2.js.map → _curry2-507af694.js.map} +1 -1
  1166. package/es/{_curry3-645b514e.js → _curry3-fe4078e6.js} +4 -4
  1167. package/es/{_curry3-645b514e.js.map → _curry3-fe4078e6.js.map} +1 -1
  1168. package/es/{_has-47f27295.js → _has-54177c6b.js} +3 -3
  1169. package/es/{_has-47f27295.js.map → _has-54177c6b.js.map} +1 -1
  1170. package/es/hooks/PRIVATE_useCollectionFocusRing.js +1 -1
  1171. package/es/hooks/PRIVATE_useCurrentKey.js +1 -1
  1172. package/es/hooks/PRIVATE_useDvtMeterEvents.js +3 -3
  1173. package/es/hooks/PRIVATE_useItemAction.js +1 -1
  1174. package/es/hooks/PRIVATE_useMessagesFocusManager.js +1 -1
  1175. package/es/hooks/PRIVATE_useSelection.js +1 -1
  1176. package/es/hooks/PRIVATE_useSingleSelection.js +2 -2
  1177. package/es/hooks/PRIVATE_useTabbableModeSet.js +1 -1
  1178. package/es/hooks/UNSAFE_useActionable.js +1 -1
  1179. package/es/hooks/UNSAFE_useActive.js +1 -1
  1180. package/es/hooks/UNSAFE_useAnimation.js +2 -2
  1181. package/es/hooks/UNSAFE_useBreakpointValues.js +1 -1
  1182. package/es/hooks/UNSAFE_useBreakpoints.js +1 -1
  1183. package/es/hooks/UNSAFE_useClearIcon.js +1 -1
  1184. package/es/hooks/UNSAFE_useColorScheme.js +1 -1
  1185. package/es/hooks/UNSAFE_useContainerBreakpointValues.js +1 -1
  1186. package/es/hooks/UNSAFE_useContainerBreakpoints.js +1 -1
  1187. package/es/hooks/UNSAFE_useCurrentValueReducer.js +1 -1
  1188. package/es/hooks/UNSAFE_useDebounce.js +1 -1
  1189. package/es/hooks/UNSAFE_useFloating.js +2 -2
  1190. package/es/hooks/UNSAFE_useFocus.js +1 -1
  1191. package/es/hooks/UNSAFE_useFocusWithin.js +1 -1
  1192. package/es/hooks/UNSAFE_useFocusableTextField.js +2 -2
  1193. package/es/hooks/UNSAFE_useFormContext.js +1 -1
  1194. package/es/hooks/UNSAFE_useFormFieldContext.js +1 -1
  1195. package/es/hooks/UNSAFE_useFormVariantContext.js +1 -1
  1196. package/es/hooks/UNSAFE_useHover.js +1 -1
  1197. package/es/hooks/UNSAFE_useId.js +1 -1
  1198. package/es/hooks/UNSAFE_useLengthFilter.js +1 -1
  1199. package/es/hooks/UNSAFE_useLoadingIndicatorTimer.js +1 -1
  1200. package/es/hooks/UNSAFE_useLongPress.js +1 -1
  1201. package/es/hooks/UNSAFE_useMessagesContext.js +1 -1
  1202. package/es/hooks/UNSAFE_useOutsideClick.js +1 -1
  1203. package/es/hooks/UNSAFE_usePan.js +1 -1
  1204. package/es/hooks/UNSAFE_usePrefixSuffix.js +1 -1
  1205. package/es/hooks/UNSAFE_usePress.js +1 -1
  1206. package/es/hooks/UNSAFE_useScale.js +1 -1
  1207. package/es/hooks/UNSAFE_useSwipe.js +1 -1
  1208. package/es/hooks/UNSAFE_useTabbableMode.js +1 -1
  1209. package/es/hooks/UNSAFE_useTap.js +1 -1
  1210. package/es/hooks/UNSAFE_useTextField.js +1 -1
  1211. package/es/hooks/UNSAFE_useTextFieldInputHandlers.js +1 -1
  1212. package/es/hooks/UNSAFE_useTheme.js +1 -1
  1213. package/es/hooks/UNSAFE_useTimer.js +1 -1
  1214. package/es/hooks/UNSAFE_useToggle.js +1 -1
  1215. package/es/hooks/UNSAFE_useTooltip.css +4 -5
  1216. package/es/hooks/UNSAFE_useTooltip.js +7 -7
  1217. package/es/hooks/UNSAFE_useTooltip.js.map +1 -1
  1218. package/es/hooks/UNSAFE_useTouch.js +1 -1
  1219. package/es/hooks/UNSAFE_useTranslationBundle.js +1 -1
  1220. package/es/hooks/UNSAFE_useUncontrolledState.js +1 -1
  1221. package/es/hooks/UNSAFE_useUser.js +1 -1
  1222. package/es/hooks/UNSAFE_useViewportIntersect.js +1 -1
  1223. package/es/{index-4d0e7777.js → index-0a1ecf07.js} +2 -2
  1224. package/es/{index-4d0e7777.js.map → index-0a1ecf07.js.map} +1 -1
  1225. package/es/{keys-1907eb95.js → keys-79ba493e.js} +4 -4
  1226. package/es/{keys-1907eb95.js.map → keys-79ba493e.js.map} +1 -1
  1227. package/es/resources/nls/ar/bundle.js +1 -1
  1228. package/es/resources/nls/ar-XB/bundle.js +1 -1
  1229. package/es/resources/nls/bg/bundle.js +1 -1
  1230. package/es/resources/nls/bs/bundle.js +1 -1
  1231. package/es/resources/nls/bs-Cyrl/bundle.js +1 -1
  1232. package/es/resources/nls/bundle.js +1 -1
  1233. package/es/resources/nls/cs/bundle.js +1 -1
  1234. package/es/resources/nls/da/bundle.js +1 -1
  1235. package/es/resources/nls/de/bundle.js +1 -1
  1236. package/es/resources/nls/el/bundle.js +1 -1
  1237. package/es/resources/nls/en/bundle.js +1 -1
  1238. package/es/resources/nls/en-XA/bundle.js +1 -1
  1239. package/es/resources/nls/en-XC/bundle.js +1 -1
  1240. package/es/resources/nls/es/bundle.js +1 -1
  1241. package/es/resources/nls/et/bundle.js +1 -1
  1242. package/es/resources/nls/fi/bundle.js +1 -1
  1243. package/es/resources/nls/fr/bundle.js +1 -1
  1244. package/es/resources/nls/fr-CA/bundle.js +1 -1
  1245. package/es/resources/nls/he/bundle.js +1 -1
  1246. package/es/resources/nls/hr/bundle.js +1 -1
  1247. package/es/resources/nls/hu/bundle.js +1 -1
  1248. package/es/resources/nls/is/bundle.js +1 -1
  1249. package/es/resources/nls/it/bundle.js +1 -1
  1250. package/es/resources/nls/ja/bundle.js +1 -1
  1251. package/es/resources/nls/ko/bundle.js +1 -1
  1252. package/es/resources/nls/lt/bundle.js +1 -1
  1253. package/es/resources/nls/lv/bundle.js +1 -1
  1254. package/es/resources/nls/ms/bundle.js +1 -1
  1255. package/es/resources/nls/nl/bundle.js +1 -1
  1256. package/es/resources/nls/no/bundle.js +1 -1
  1257. package/es/resources/nls/pl/bundle.js +1 -1
  1258. package/es/resources/nls/pt/bundle.js +1 -1
  1259. package/es/resources/nls/pt-PT/bundle.js +1 -1
  1260. package/es/resources/nls/ro/bundle.js +1 -1
  1261. package/es/resources/nls/ru/bundle.js +1 -1
  1262. package/es/resources/nls/sk/bundle.js +1 -1
  1263. package/es/resources/nls/sl/bundle.js +1 -1
  1264. package/es/resources/nls/sr/bundle.js +1 -1
  1265. package/es/resources/nls/sr-Latn/bundle.js +1 -1
  1266. package/es/resources/nls/supportedLocales.js +1 -1
  1267. package/es/resources/nls/sv/bundle.js +1 -1
  1268. package/es/resources/nls/th/bundle.js +1 -1
  1269. package/es/resources/nls/tr/bundle.js +1 -1
  1270. package/es/resources/nls/uk/bundle.js +1 -1
  1271. package/es/resources/nls/vi/bundle.js +1 -1
  1272. package/es/resources/nls/zh-Hans/bundle.js +1 -1
  1273. package/es/resources/nls/zh-Hant/bundle.js +1 -1
  1274. package/es/translationBundle.js +1 -1
  1275. package/es/{tslib.es6-bf96b795.js → tslib.es6-b2c04651.js} +2 -2
  1276. package/es/{tslib.es6-bf96b795.js.map → tslib.es6-b2c04651.js.map} +1 -1
  1277. package/es/{useSingleSelection-8eaee995.js → useSingleSelection-a8b0f6cc.js} +2 -2
  1278. package/es/{useSingleSelection-8eaee995.js.map → useSingleSelection-a8b0f6cc.js.map} +1 -1
  1279. package/es/utils/PRIVATE_clientHints.js +1 -1
  1280. package/es/utils/PRIVATE_collectionUtils.js +1 -1
  1281. package/es/utils/PRIVATE_dvtTestUtils.js +1 -1
  1282. package/es/utils/PRIVATE_floatingUtils.js +1 -1
  1283. package/es/utils/PRIVATE_meterUtils.js +1 -1
  1284. package/es/utils/PRIVATE_refUtils.js +1 -1
  1285. package/es/utils/PRIVATE_tabbableUtils.js +4 -4
  1286. package/es/utils/PRIVATE_timer.js +1 -1
  1287. package/es/utils/UNSAFE_arrayUtils.js +1 -1
  1288. package/es/utils/UNSAFE_attributeUtils.js +1 -1
  1289. package/es/utils/UNSAFE_classNames.js +1 -1
  1290. package/es/utils/UNSAFE_componentUtils.js +1 -1
  1291. package/es/utils/UNSAFE_dataProvider.js +1 -1
  1292. package/es/utils/UNSAFE_filePickerUtils.js +1 -1
  1293. package/es/utils/UNSAFE_getLocale.js +1 -1
  1294. package/es/utils/UNSAFE_interpolations/aria.js +1 -1
  1295. package/es/utils/UNSAFE_interpolations/borders.js +1 -1
  1296. package/es/utils/UNSAFE_interpolations/boxalignment.css +15 -16
  1297. package/es/utils/UNSAFE_interpolations/boxalignment.js +19 -19
  1298. package/es/utils/UNSAFE_interpolations/boxalignment.js.map +1 -1
  1299. package/es/utils/UNSAFE_interpolations/colors.js +1 -1
  1300. package/es/utils/UNSAFE_interpolations/dimensions.js +2 -2
  1301. package/es/utils/UNSAFE_interpolations/flexbox.css +7 -8
  1302. package/es/utils/UNSAFE_interpolations/flexbox.js +11 -11
  1303. package/es/utils/UNSAFE_interpolations/flexbox.js.map +1 -1
  1304. package/es/utils/UNSAFE_interpolations/flexitem.css +7 -8
  1305. package/es/utils/UNSAFE_interpolations/flexitem.js +11 -11
  1306. package/es/utils/UNSAFE_interpolations/flexitem.js.map +1 -1
  1307. package/es/utils/UNSAFE_interpolations/grid.js +1 -1
  1308. package/es/utils/UNSAFE_interpolations/griditem.js +1 -1
  1309. package/es/utils/UNSAFE_interpolations/padding.js +1 -1
  1310. package/es/utils/UNSAFE_interpolations/text.css +3 -4
  1311. package/es/utils/UNSAFE_interpolations/text.js +7 -7
  1312. package/es/utils/UNSAFE_interpolations/text.js.map +1 -1
  1313. package/es/utils/UNSAFE_keys.js +1 -1
  1314. package/es/utils/UNSAFE_lengthFilter.js +1 -1
  1315. package/es/utils/UNSAFE_logger.js +3 -3
  1316. package/es/utils/UNSAFE_matchTranslationBundle.js +1 -1
  1317. package/es/utils/UNSAFE_mergeInterpolations.js +5 -5
  1318. package/es/utils/UNSAFE_mergeProps.js +1 -1
  1319. package/es/utils/UNSAFE_meterTypes.js +1 -1
  1320. package/es/utils/UNSAFE_roles.js +1 -1
  1321. package/es/utils/UNSAFE_selectUtils.js +1 -1
  1322. package/es/utils/UNSAFE_size.js +1 -1
  1323. package/es/utils/UNSAFE_soundUtils.js +1 -1
  1324. package/es/utils/UNSAFE_stringUtils.js +1 -1
  1325. package/es/utils/UNSAFE_typeUtils.js +1 -1
  1326. package/es/utils/UNSAFE_units.js +1 -1
  1327. package/es/utils/UNSAFE_valueUpdateDetail.js +1 -1
  1328. package/package.json +1 -1
  1329. package/amd/Badge-3a3bc336.js +0 -40
  1330. package/amd/BaseButton-20a653f3.js +0 -148
  1331. package/amd/Button-87280b4a.js +0 -68
  1332. package/amd/Chip-8cd23568.js +0 -55
  1333. package/amd/ClearIcon-27a5c275.js +0 -58
  1334. package/amd/Collection-55b75a82.js +0 -18
  1335. package/amd/ComponentMessage-5603259e.js +0 -44
  1336. package/amd/ComponentMessageContainer-a00ec42c.js +0 -50
  1337. package/amd/Divider-8cd412fd.js +0 -34
  1338. package/amd/FilePicker-bb70dacb.js +0 -582
  1339. package/amd/Flex-7762d39c.js +0 -35
  1340. package/amd/Floating-08ac18d2.js +0 -310
  1341. package/amd/FocusTrap-420f2714.js +0 -143
  1342. package/amd/FormControlUtils-802d298a.js +0 -21
  1343. package/amd/Heading-431829e1.js +0 -72
  1344. package/amd/HiddenAccessible-1dadf91a.js +0 -25
  1345. package/amd/HighlightText-9d200a5d.js +0 -48
  1346. package/amd/Icon-a6ef6699.js +0 -99
  1347. package/amd/Indexer-81bf2fe0.js +0 -512
  1348. package/amd/InlineHelpSource-8a22f914.js +0 -32
  1349. package/amd/Link-3169fd72.js +0 -42
  1350. package/amd/List-26b59d92.js +0 -670
  1351. package/amd/ListItemTextLayout-f6a3d721.js +0 -211
  1352. package/amd/ListView-3b9a3235.js +0 -16
  1353. package/amd/LoadMoreCollection-b7513141.js +0 -63
  1354. package/amd/Menu-94ddd429.js +0 -302
  1355. package/amd/Menu-94ddd429.js.map +0 -1
  1356. package/amd/MenuDivider-b9309ceb.js +0 -19
  1357. package/amd/MenuItem-c263a7c0.js +0 -154
  1358. package/amd/MenuItem-c263a7c0.js.map +0 -1
  1359. package/amd/Message.types-3ff18727.js +0 -11
  1360. package/amd/MessageCloseButton-51697635.js +0 -44
  1361. package/amd/MessageDetail-dd86fa2b.js +0 -61
  1362. package/amd/MessageFormattingUtils-0ffdac02.js +0 -103
  1363. package/amd/MessageLayer-6da93adb.js +0 -80
  1364. package/amd/MessageStartIcon-1b57b659.js +0 -63
  1365. package/amd/MessageSummary-cf0af1b2.js +0 -37
  1366. package/amd/MessageTimestamp-0e995235.js +0 -36
  1367. package/amd/MessageToast-e0f94cbe.js +0 -307
  1368. package/amd/MessageUtils-0bf10cfa.js +0 -137
  1369. package/amd/MessagesManager-da52103a.js +0 -110
  1370. package/amd/MeterCircle-bb948163.js +0 -547
  1371. package/amd/Modal-be0762b5.js +0 -109
  1372. package/amd/NumberInputText-d762d134.js +0 -252
  1373. package/amd/ReadonlyTextFieldInput-4583f049.js +0 -111
  1374. package/amd/SelectMenuItem-2412de22.js +0 -60
  1375. package/amd/SelectMenuItem-2412de22.js.map +0 -1
  1376. package/amd/SelectMultiple-d1b4cc77.js +0 -485
  1377. package/amd/SelectMultiple-d1b4cc77.js.map +0 -1
  1378. package/amd/SelectSingle-01b25bff.js +0 -354
  1379. package/amd/SelectSingle-01b25bff.js.map +0 -1
  1380. package/amd/Skeleton-d0383726.js +0 -39
  1381. package/amd/Spacer-165e178f.js +0 -16
  1382. package/amd/SplitMenuButton-df0ee526.js +0 -184
  1383. package/amd/Text-de291c3f.js +0 -100
  1384. package/amd/TextArea-25fa8171.js +0 -133
  1385. package/amd/TextAreaAutosize-370b4a47.js +0 -161
  1386. package/amd/TextFieldInput-312fb211.js +0 -172
  1387. package/amd/VirtualizedCollection-63815bce.js +0 -181
  1388. package/amd/VirtualizedListView-fb2a18dd.js +0 -16
  1389. package/amd/_curry1-645b9927.js +0 -70
  1390. package/amd/_curry1-645b9927.js.map +0 -1
  1391. package/amd/_curry2-93924f19.js +0 -42
  1392. package/amd/_curry2-93924f19.js.map +0 -1
  1393. package/amd/_curry3-4cc6f6ba.js +0 -60
  1394. package/amd/_curry3-4cc6f6ba.js.map +0 -1
  1395. package/amd/_has-cce283ad.js +0 -14
  1396. package/amd/_has-cce283ad.js.map +0 -1
  1397. package/amd/classNames-027de734.js +0 -19
  1398. package/amd/clientHints-361cde40.js +0 -156
  1399. package/amd/flexbox-4dd0bbb4.js +0 -41
  1400. package/amd/flexitem-7363d040.js +0 -41
  1401. package/amd/index-5920700b.js +0 -76
  1402. package/amd/index-e9199379.js +0 -1661
  1403. package/amd/index-e9199379.js.map +0 -1
  1404. package/amd/index-f54bad63.js +0 -64
  1405. package/amd/index-f54bad63.js.map +0 -1
  1406. package/amd/keys-a09501ab.js +0 -105
  1407. package/amd/listViewSelectionTests-70a5b510.js +0 -1385
  1408. package/amd/listViewSelectionTests-70a5b510.js.map +0 -1
  1409. package/amd/listViewTabbableModeTests-a91e8816.js +0 -112
  1410. package/amd/listViewTabbableModeTests-a91e8816.js.map +0 -1
  1411. package/amd/listViewTestFixtures-98d95a1d.js +0 -46
  1412. package/amd/listViewTestFixtures-98d95a1d.js.map +0 -1
  1413. package/amd/menuTestsUtils-6da02810.js +0 -41
  1414. package/amd/stringUtils-9311a716.js +0 -92
  1415. package/amd/testHelpers-9267074b.js +0 -37
  1416. package/amd/tslib.es6-71b1ba5b.js +0 -437
  1417. package/amd/tslib.es6-71b1ba5b.js.map +0 -1
  1418. package/amd/useAnimation-2f572e0c.js +0 -247
  1419. package/amd/useFocusWithin-a88e3e32.js +0 -50
  1420. package/amd/useSingleSelection-7081cc84.js +0 -43
@@ -1 +1 @@
1
- {"version":3,"file":"Icon-a6ef6699.js","sources":["../../src/UNSAFE_Icon/Icon.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 { JSX, Fragment } from 'preact';\nimport { cssProps } from '@oracle/oraclejet-cssprops';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { useTooltip } from '../hooks/UNSAFE_useTooltip';\n\ntype IntrinsicProps = JSX.SVGAttributes<SVGSVGElement>;\n\ntype Props = Pick<IntrinsicProps, 'viewBox' | 'children'> & {\n /**\n * The size of the component. Defaults to '1em', which means the font size of the parent is used.\n */\n size?: keyof typeof sizeStyles;\n /**\n * The color of the component. Defaults to 'currentColor', which behaves like the CSS 'currentColor' value.\n */\n color?: keyof typeof colorStyles;\n /**\n * A label to be used for accessibility purposes.\n */\n accessibleLabel?: string;\n};\n\nexport const Icon = ({\n size = '1em',\n color = 'currentColor',\n accessibleLabel = '',\n viewBox = 'none',\n children\n}: Props) => (\n <Svg\n height=\"1em\"\n width=\"1em\"\n viewBox={viewBox}\n accessibleLabel={accessibleLabel}\n class={classNames([colorStyles[color], sizeStyles[size]])}>\n {children}\n </Svg>\n);\n\ntype BaseSvgProps = Pick<IntrinsicProps, 'height' | 'width' | 'viewBox' | 'class' | 'children'>;\ntype SvgProps = BaseSvgProps & {\n accessibleLabel: string;\n};\n\nconst Svg = ({ accessibleLabel, ...otherProps }: SvgProps) =>\n accessibleLabel ? (\n <SemanticSvg accessibleLabel={accessibleLabel} {...otherProps} />\n ) : (\n <DecorativeSvg {...otherProps} />\n );\n\nconst DecorativeSvg = (props: BaseSvgProps) => <svg {...props} />;\n\nconst SemanticSvg = ({ accessibleLabel, children, ...props }: SvgProps) => {\n const { tooltipContent, tooltipProps } = useTooltip({\n text: accessibleLabel,\n anchor: {\n x: 'element',\n y: 'element'\n },\n position: 'bottom',\n offset: {\n mainAxis: 8, // redwood tooltip design spec\n crossAxis: 0\n }\n });\n\n return (\n <Fragment>\n <svg role=\"img\" {...props} {...tooltipProps} aria-label={accessibleLabel}>\n {children}\n </svg>\n {tooltipContent}\n </Fragment>\n );\n};\n\n// TODO: Remove this and refactor as necessary to uptake\n// the dimensions type and values when they're available.\n// See JET-50717\nconst sizeStyles = {\n '1em': cssProps`${{\n fontSize: '1em'\n }}`,\n '1x': cssProps`${{\n fontSize: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-spacing-1x)'\n }}`,\n '2x': cssProps`${{\n fontSize: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-spacing-2x)'\n }}`,\n '3x': cssProps`${{\n fontSize: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-spacing-3x)'\n }}`,\n '4x': cssProps`${{\n fontSize: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-spacing-4x)'\n }}`,\n '5x': cssProps`${{\n fontSize: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-spacing-5x)'\n }}`,\n '6x': cssProps`${{\n fontSize: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-spacing-6x)'\n }}`,\n '7x': cssProps`${{\n fontSize: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-spacing-7x)'\n }}`,\n '8x': cssProps`${{\n fontSize: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-spacing-8x)'\n }}`,\n '9x': cssProps`${{\n fontSize: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-spacing-9x)'\n }}`,\n '10x': cssProps`${{\n fontSize: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-spacing-10x)'\n }}`,\n '11x': cssProps`${{\n fontSize: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-spacing-11x)'\n }}`,\n '12x': cssProps`${{\n fontSize: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-spacing-12x)'\n }}`\n};\n\nconst colorStyles = {\n primary: cssProps`${{\n color: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-text-color-primary)'\n }}`,\n secondary: cssProps`${{\n color: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-text-color-secondary)'\n }}`,\n disabled: cssProps`${{\n color: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-text-color-disabled)'\n }}`,\n danger: cssProps`${{\n color: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-danger-3)'\n }}`,\n warning: cssProps`${{\n color: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-warning-3)'\n }}`,\n success: cssProps`${{\n color: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-success-3)'\n }}`,\n info: cssProps`${{\n color: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-info-3)'\n }}`,\n currentColor: cssProps`${{\n color: 'currentColor'\n }}`\n};\n"],"names":["Icon","size","color","accessibleLabel","viewBox","children","_jsx","Svg","Object","assign","height","width","class","classNames","colorStyles","sizeStyles","_a","otherProps","__rest","DecorativeSvg","props","SemanticSvg","tooltipContent","tooltipProps","useTooltip","text","anchor","x","y","position","offset","mainAxis","crossAxis"],"mappings":";;;AA6BA,UAAAA,IAAA,GAAA,CAAA;IAAAC,EAAAA,IAAA,GAAA,KAAA;IAAAC,EAAAA,KAAA,GAAA,cAAA;IAAAC,EAAAA,eAAA,GAAA,EAAA;IAAAC,EAAAA,OAAA,GAAA,MAAA;IAAAC,EAAAA,QAAAA;IAAA,CAAA,KAAAC,cAAA,CAAAC,GAAA,EAAAC,MAAA,CAAAC,MAAA,CAAA;IAAAC,EAAAA,MAAA,EAAA,KAAA;IAAAC,EAAAA,KAAA,EAAA,KAAA;IAAAP,EAAAA,OAAA,EAAAA,OAAA;IAAAD,EAAAA,eAAA,EAAAA,eAAA;IAAAS,EAAAA,KAAA,EAAAC,qBAAA,CAAA,CAAAC,WAAA,CAAAZ,KAAA,CAAA,EAAAa,UAAA,CAAAd,IAAA,CAAA,CAAA,CAAA;IAAA,CAAA,EAAA;IAAAI,EAAAA,QAAA,EAAAA,QAAAA;IAAA,CAAA,CAAA,EAAA;;IAsBA,MAAAE,GAAA,GAAAS,EAAA,IAAA;MAAa,IAAA;IAAAb,IAAAA,eAAAA;IAAA,GAAA,GAAAa,EAAA;UAAAC,UAAA,GAAAC,gBAAA,CAAAF,EAAA,EAAA,CAAA,iBAAA,CAAA,CAAA,CAAA;;;;;KAAb,CAAA;;IAOA,MAAAG,aAAA,GAAAC,KAAA,IAAAd,cAAA,CAAA,KAAA,EAAAE,MAAA,CAAAC,MAAA,CAAA,EAAA,EAAAW,KAAA,CAAA,CAAA,CAAA;;IAEA,MAAAC,WAAA,GAAAL,EAAA,IAAA;;;;;;;MACE,MAAA;QAAAM,cAAA;IAAAC,IAAAA,YAAAA;IAAA,GAAA,GAAAC,kCAAA,CAAA;IACEC,IAAAA,IAAA,EAAAtB,eADF;IAEEuB,IAAAA,MAAA,EAAA;IACEC,MAAAA,CAAA,EAAA,SADF;IAEEC,MAAAA,CAAA,EAAA,SAAA;SAJJ;IAMEC,IAAAA,QAAA,EAAA,QANF;IAOEC,IAAAA,MAAA,EAAA;IACEC,MAAAA,QAAA,EAAA,CADF;IAEEC,MAAAA,SAAA,EAAA,CAAA;IAFF,KAAA;IAPF,GAAA,CAAA,CAAA;;;;;;;;;;IAqBF,CAtBA;IAyBA;IACA;;;IACA,MAAAjB,UAAA,GAAA;WAAA,EAAA,aAAA;UAAA,EAAA,WAAA;UAAA,EAAA,YAAA;UAAA,EAAA,YAAA;UAAA,EAAA,YAAA;UAAA,EAAA,YAAA;UAAA,EAAA,YAAA;UAAA,EAAA,aAAA;UAAA,EAAA,aAAA;UAAA,EAAA,aAAA;WAAA,EAAA,cAAA;WAAA,EAAA,cAAA;;IAAA,CAAA,CAAA;IA0CA,MAAAD,WAAA,GAAA;eAAA,gBAAA;iBAAA,mBAAA;gBAAA,iBAAA;cAAA,eAAA;eAAA,gBAAA;eAAA,gBAAA;YAAA,cAAA;;IAAA,CAAA;;;;;;;;;;;"}
1
+ {"version":3,"file":"Icon-4e765cae.js","sources":["../../src/UNSAFE_Icon/Icon.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 { JSX, Fragment } from 'preact';\nimport { cssProps } from '@oracle/oraclejet-cssprops';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { useTooltip } from '../hooks/UNSAFE_useTooltip';\n\ntype IntrinsicProps = JSX.SVGAttributes<SVGSVGElement>;\n\ntype Props = Pick<IntrinsicProps, 'viewBox' | 'children'> & {\n /**\n * The size of the component. Defaults to '1em', which means the font size of the parent is used.\n */\n size?: keyof typeof sizeStyles;\n /**\n * The color of the component. Defaults to 'currentColor', which behaves like the CSS 'currentColor' value.\n */\n color?: keyof typeof colorStyles;\n /**\n * A label to be used for accessibility purposes.\n */\n accessibleLabel?: string;\n};\n\nexport const Icon = ({\n size = '1em',\n color = 'currentColor',\n accessibleLabel = '',\n viewBox = 'none',\n children\n}: Props) => (\n <Svg\n height=\"1em\"\n width=\"1em\"\n viewBox={viewBox}\n accessibleLabel={accessibleLabel}\n class={classNames([colorStyles[color], sizeStyles[size]])}>\n {children}\n </Svg>\n);\n\ntype BaseSvgProps = Pick<IntrinsicProps, 'height' | 'width' | 'viewBox' | 'class' | 'children'>;\ntype SvgProps = BaseSvgProps & {\n accessibleLabel: string;\n};\n\nconst Svg = ({ accessibleLabel, ...otherProps }: SvgProps) =>\n accessibleLabel ? (\n <SemanticSvg accessibleLabel={accessibleLabel} {...otherProps} />\n ) : (\n <DecorativeSvg {...otherProps} />\n );\n\nconst DecorativeSvg = (props: BaseSvgProps) => <svg {...props} />;\n\nconst SemanticSvg = ({ accessibleLabel, children, ...props }: SvgProps) => {\n const { tooltipContent, tooltipProps } = useTooltip({\n text: accessibleLabel,\n anchor: {\n x: 'element',\n y: 'element'\n },\n position: 'bottom',\n offset: {\n mainAxis: 8, // redwood tooltip design spec\n crossAxis: 0\n }\n });\n\n return (\n <Fragment>\n <svg role=\"img\" {...props} {...tooltipProps} aria-label={accessibleLabel}>\n {children}\n </svg>\n {tooltipContent}\n </Fragment>\n );\n};\n\n// TODO: Remove this and refactor as necessary to uptake\n// the dimensions type and values when they're available.\n// See JET-50717\nconst sizeStyles = {\n '1em': cssProps`${{\n fontSize: '1em'\n }}`,\n '1x': cssProps`${{\n fontSize: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-spacing-1x)'\n }}`,\n '2x': cssProps`${{\n fontSize: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-spacing-2x)'\n }}`,\n '3x': cssProps`${{\n fontSize: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-spacing-3x)'\n }}`,\n '4x': cssProps`${{\n fontSize: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-spacing-4x)'\n }}`,\n '5x': cssProps`${{\n fontSize: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-spacing-5x)'\n }}`,\n '6x': cssProps`${{\n fontSize: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-spacing-6x)'\n }}`,\n '7x': cssProps`${{\n fontSize: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-spacing-7x)'\n }}`,\n '8x': cssProps`${{\n fontSize: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-spacing-8x)'\n }}`,\n '9x': cssProps`${{\n fontSize: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-spacing-9x)'\n }}`,\n '10x': cssProps`${{\n fontSize: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-spacing-10x)'\n }}`,\n '11x': cssProps`${{\n fontSize: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-spacing-11x)'\n }}`,\n '12x': cssProps`${{\n fontSize: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-spacing-12x)'\n }}`\n};\n\nconst colorStyles = {\n primary: cssProps`${{\n color: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-text-color-primary)'\n }}`,\n secondary: cssProps`${{\n color: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-text-color-secondary)'\n }}`,\n disabled: cssProps`${{\n color: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-text-color-disabled)'\n }}`,\n danger: cssProps`${{\n color: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-danger-3)'\n }}`,\n warning: cssProps`${{\n color: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-warning-3)'\n }}`,\n success: cssProps`${{\n color: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-success-3)'\n }}`,\n info: cssProps`${{\n color: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-info-3)'\n }}`,\n currentColor: cssProps`${{\n color: 'currentColor'\n }}`\n};\n"],"names":["Icon","Svg","_a","accessibleLabel","otherProps","__rest","DecorativeSvg","props","_jsx","Object","assign","SemanticSvg","tooltipContent","tooltipProps","useTooltip","text","anchor","x","y","position","offset","mainAxis","crossAxis","sizeStyles","colorStyles","size","color","viewBox","children","height","width","class","classNames"],"mappings":"yMA6BAA,MAsBAC,EAAAC,IAAa,IAAAC,gBAAAA,GAAAD,EAAAE,EAAAC,EAAAA,OAAAH,EAAA,CAAA,yGAObI,EAAAC,GAAAC,EAAAA,IAAA,MAAAC,OAAAC,OAAA,GAAAH,IAEAI,EAAAT,qFACE,MAAAU,eAAAA,EAAAC,aAAAA,GAAAC,aAAA,CACEC,KAAAZ,EACAa,OAAA,CACEC,EAAA,UACAC,EAAA,WAEFC,SAAA,SACAC,OAAA,CACEC,SAAA,EACAC,UAAA,0HAiBNC,EAAA,OAAA,gBAAA,cAAA,cAAA,cAAA,cAAA,gBAAA,cAAA,cAAA,gBAAA,iBAAA,eAAA,wBA0CAC,EAAA,SAAA,mBAAA,oBAAA,gBAAA,iBAAA,iBAAA,gBAAA,2CApGA,EAAAC,KAAAA,EAAA,MAAAC,MAAAA,EAAA,eAAAvB,gBAAAA,EAAA,GAAAwB,QAAAA,EAAA,OAAAC,SAAAA,KAAApB,MAAAP,EAAAQ,OAAAC,OAAA,CAAAmB,OAAA,MAAAC,MAAA,MAAAH,QAAAA,EAAAxB,gBAAAA,EAAA4B,MAAAC,EAAAA,WAAA,CAAAR,EAAAE,GAAAH,EAAAE,MAAA,CAAAG,SAAAA"}
@@ -0,0 +1,2 @@
1
+ define(["exports","preact/jsx-runtime","preact","preact/hooks","./UNSAFE_Flex",'module',"./utils/UNSAFE_mergeProps","./useSingleSelection-50253b6a","./hooks/PRIVATE_useCurrentKey","./hooks/PRIVATE_useCollectionFocusRing","./utils/PRIVATE_collectionUtils","./utils/PRIVATE_clientHints","./hooks/UNSAFE_useId","./hooks/UNSAFE_useTranslationBundle","./UNSAFE_HiddenAccessible","./PRIVATE_Collection","./tslib.es6-f5cdfdde","./utils/UNSAFE_classNames","preact/compat","./classNames-d0ddb6e6","./Flex-1da2d394","./Collection-ee1012a2","./HiddenAccessible-f6ee2f4a","./clientHints-688646f4"],function(e,t,s,n,r,a,i,l,c,o,u,d,y,f,k,x,b,j,v,g,h,O,_,N){"use strict";const R=Object.freeze({key:"__others__",label:"#"}),m="_19n24pk",E="ed0nm6",p="_1rz99zj",T="_1akmfky",w="."+m,A="_8w8m5n",S=v.forwardRef((e,s)=>{const n=f.useTranslationBundle("@oracle/oraclejet-preact"),{context:r,selectedKey:a}=e,i=r.data.key===a,l=F(e,s),c=g.classNames([l.class,r.data.isDisabled&&E,i&&T]),o=r.data.label||r.data.key,u=r.data.isDisabled?n.indexer_disabledLabel({SECTION:`${o}`}):`${o}`;return t.jsx("li",Object.assign({},l,{class:c,"data-oj-valuetext":u,"data-oj-disabled":r.data.isDisabled},{children:r.data.label||r.data.key}))});function F({context:e,currentKey:t,valueNow:s,isFocusRingVisible:n},r){const a=e.data.key===t,i=g.classNames([m,a&&n&&p]);return Object.assign(Object.assign({},a&&{ref:r}),{key:e.data.key,class:i,"data-oj-key":e.data.key,"data-oj-key-type":typeof e.data.key,"data-oj-valuenow":s,isFocusRingVisible:!!n})}const I=v.forwardRef((e,n)=>{var{lastValueNow:r}=e,a=b.__rest(e,["lastValueNow"]);const i=Object.assign(Object.assign({},a),{ref:n});return t.jsxs(s.Fragment,{children:[t.jsx(S,Object.assign({},i)),t.jsx(C,Object.assign({},i,{ref:n,context:{index:-1,data:R},valueNow:r}))]})}),C=v.forwardRef((e,s)=>{const{context:n,selectedKey:r}=e,a=F(e,s),i=n.data.key===r,l=g.classNames([a.class,i&&T]),c=R.label;return t.jsx("li",Object.assign({},a,{class:l,"data-oj-valuetext":c},{children:n.data.label}))}),P=v.forwardRef((e,s)=>{const n=f.useTranslationBundle("@oracle/oraclejet-preact"),{context:r,sections:a}=e,i=F(e,s),{from:l,to:c}=V(e);if(!K(r.index,l,c))return null;const o=a[l].label||a[l].key,u=a[c].label||a[c].key,d=g.classNames([A]),y=n.indexer_separatorLabel({FROM_SECTION:`${o}`,TO_SECTION:`${u}`});return t.jsx("li",Object.assign({},i,{"data-oj-valuetext":y},{children:t.jsx(h.Flex,Object.assign({align:"center",justify:"center"},{children:t.jsx("div",{class:d})}))}))});function V({context:e,sectionsPerTruncation:t,last:s}){const n=e.index-e.index%t+1;let r=n+t-2;return r=r>=s?s-1:r,{from:n,to:r}}function K(e,t,s){return e===Math.floor((t+s)/2)}const H="_1fte6st",U="h4rzow",z=[{key:"A"},{key:"B"},{key:"C"},{key:"D"},{key:"E"},{key:"F"},{key:"G"},{key:"H"},{key:"I"},{key:"J"},{key:"K"},{key:"L"},{key:"M"},{key:"N"},{key:"O"},{key:"P"},{key:"Q"},{key:"R"},{key:"S"},{key:"T"},{key:"U"},{key:"V"},{key:"W"},{key:"X"},{key:"Y"},{key:"Z"}];const B=(e,t,s)=>e===t.current?void 0===s?null:s:u.keyExtractor(e,w),D=(e,t,s)=>{if(e.value===R.key)t({value:R.key});else{t({value:s.find(t=>t.key===e.value).key})}},M=(e,t,s,n,r,a,i)=>{if(0===e||0===t)return;const l=e/t,c=s-1;if(l<2)r!==c&&(a(c),i(n));else if(l>s||s-l<.01)r>1&&(a(1),i(n));else{const e=$(l,c);e!==r&&e<s&&(a(e),i(n))}},$=(e,t)=>{e-=2,e/=2;const s=Math.round(t/e)+1,n=t%s,r=Math.floor(t/s)+(n>1?1:0);let a=t-(r-1)*s,i=s;for(;i>a;)i-=1,a=t-(r-1)*i;return i!=s&&(i+=1),i};function L(e){const t=N.getClientHints().deviceType;return"phone"===t||"tablet"===t?e.indexer_touchInstructionText():e.indexer_keyboardInstructionText()}e.Indexer=function({sections:e=z,value:r,onCommit:a=(()=>{})}){var d;const k=n.useRef(null),x=n.useRef(null),b=s.createRef(),[j,v]=n.useState(null===(d=e[0])||void 0===d?void 0:d.key),[g,N]=n.useState(-1),R=n.useRef(-1),m=n.useRef(0),E=y.useId(),[p,T]=o.useCollectionFocusRing(e=>{var t;return!!(null===(t=k.current)||void 0===t?void 0:t.contains(e))},["ArrowUp","ArrowDown"]),{currentKeyProps:A}=c.useCurrentKey(e=>u.keyExtractor(e,w),u.getPrevNextKey(k.current,j,!0,w),u.getPrevNextKey(k.current,j,!1,w),j,e=>v(e.value)),{selectionProps:F}=l.useSingleSelection(e=>B(e,x,j),void 0,t=>D(t,a,e)),C=n.useCallback(t=>{var s;for(const n of t)M(n.contentRect.height,m.current,e.length,null===(s=e[0])||void 0===s?void 0:s.key,g,N,v)},[e,g]);n.useEffect(()=>{var e,t,s,n;x.current&&(x.current.setAttribute("aria-valuemax",R.current+1+""),x.current.setAttribute("aria-valuetext",(null===(t=null===(e=b.current)||void 0===e?void 0:e.dataset)||void 0===t?void 0:t.ojValuetext)||""),x.current.setAttribute("aria-valuenow",(null===(n=null===(s=b.current)||void 0===s?void 0:s.dataset)||void 0===n?void 0:n.ojValuenow)||"")),R.current=-1}),n.useEffect(()=>{var t,s;const n=k.current;n&&(m.current=(null===(t=n.querySelector("li"))||void 0===t?void 0:t.offsetHeight)||0,M(n.offsetHeight,m.current,e.length,null===(s=e[0])||void 0===s?void 0:s.key,g,N,v))},[e,g]),n.useEffect(()=>{const e=k.current;if(e){const t=new ResizeObserver(e=>{C(e)});return t.observe(e),()=>{t.unobserve(e)}}},[g,C]);const $=f.useTranslationBundle("@oracle/oraclejet-preact");return t.jsxs("div",Object.assign({ref:k,class:H},{children:[t.jsx(h.Flex,Object.assign({align:"center",width:"6x",height:"100%"},{children:t.jsx("ul",Object.assign({},i.mergeProps(A,T,F),{ref:x,tabIndex:0,"aria-label":"Indexer","aria-orientation":"vertical","aria-valuemin":"0","aria-describedby":E,role:"slider",class:U},{children:t.jsx(O.Collection,Object.assign({items:e},{children:s=>{const n=e.length-1;R.current+=1;const a={context:s,ref:b,currentKey:j,selectedKey:r,valueNow:R.current,isFocusRingVisible:!!p};if(s.index===n)return t.jsx(I,Object.assign({},a,{lastValueNow:R.current+1}));if(g<=1||s.index%g==0)return t.jsx(S,Object.assign({},a));const i=Object.assign(Object.assign({},a),{sectionsPerTruncation:g,last:n,sections:e});return function(e){const{from:t,to:s}=V(e);return K(e.context.index,t,s)}(i)?t.jsx(P,Object.assign({},i)):(R.current-=1,null)}}))}))})),t.jsx(_.HiddenAccessible,{children:t.jsx("span",Object.assign({id:E},{children:L($)}))})]}))},e.SECTION_OTHERS=R});
2
+ //# sourceMappingURL=Indexer-8b8eb94e.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Indexer-81bf2fe0.js","sources":["../../src/UNSAFE_Indexer/IndexerItems.tsx","../../src/UNSAFE_Indexer/Indexer.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 { Fragment } from 'preact';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { cssProps } from '@oracle/oraclejet-cssprops';\nimport { Flex } from '../UNSAFE_Flex';\nimport { useTranslationBundle } from '../hooks/UNSAFE_useTranslationBundle';\nimport type { BundleType } from '../resources/nls/bundle';\nimport { ItemContext } from 'src/UNSAFE_Collection';\nimport { forwardRef, ForwardedRef } from 'preact/compat';\n\n/**\n * Type of a section\n */\nexport type Section<K> = {\n /**\n * The key of each section\n */\n key: K;\n /**\n * The label of each section\n */\n label?: string;\n /**\n * A property that indicates whether the section\n * is disabled or not. Typically, when Indexer is\n * used with ListView, a disabled section implies\n * that there's no corresponding items in the ListView\n */\n isDisabled?: boolean;\n};\n\n/**\n * The others section variable that application could use\n * to compare value\n */\n// const translations = useTranslationBundle<BundleType>('@oracle/oraclejet-preact');\nexport const SECTION_OTHERS: Section<string> = Object.freeze({\n key: '__others__',\n label: '#'\n});\n\nconst liStyles = {\n base: cssProps`${{\n textAlign: 'center',\n height: '1rem',\n width: '1.5rem',\n color: 'var(--oj-c-PRIVATE-DO-NOT-USE-indexer-text-color)',\n fontSize: 'var(--oj-c-PRIVATE-DO-NOT-USE-indexer-font-size)',\n lineHeight: '1rem'\n }}`,\n disabled: cssProps`${{\n color: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-text-color-disabled)'\n }}`,\n focused: cssProps`${{\n outlineStyle: 'dotted',\n outlineWidth: '1px',\n outlineColor: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-focus-border-color)',\n outlineOffset: '-1px'\n }}`,\n selected: cssProps`${{\n fontWeight: 'bold'\n }}`\n};\n\nconst ITEM_STYLE_CLASS = liStyles.base;\nexport const ITEM_SELECTOR = '.' + ITEM_STYLE_CLASS;\n\nconst dotStyles = {\n base: cssProps`${{\n '&::after': {\n content: '\"\\u25cf\"'\n }\n }}`\n};\n\nexport type SectionProps<K> = {\n context: ItemContext<Section<K>>;\n currentKey: K;\n selectedKey: K;\n valueNow: number; // the index of an item within currently visible sections\n isFocusRingVisible: boolean;\n};\n\nexport const SectionItem = forwardRef(\n <K extends string | number>(props: SectionProps<K>, ref: ForwardedRef<HTMLLIElement>) => {\n const translations = useTranslationBundle<BundleType>('@oracle/oraclejet-preact');\n\n const { context, selectedKey } = props;\n const isSelected = context.data.key === selectedKey;\n const commonProps = getCommonProps(props, ref);\n\n const itemClasses = classNames([\n commonProps.class,\n context.data.isDisabled && liStyles.disabled,\n isSelected && liStyles.selected\n ]);\n\n const sectionLabel = context.data.label || context.data.key;\n const valueText = context.data.isDisabled\n ? translations.indexer_disabledLabel({ SECTION: `${sectionLabel}` })\n : `${sectionLabel}`;\n\n return (\n <li\n {...commonProps}\n class={itemClasses}\n data-oj-valuetext={valueText}\n data-oj-disabled={context.data.isDisabled}>\n {context.data.label || context.data.key}\n </li>\n );\n }\n);\n\nfunction getCommonProps<K>(\n { context, currentKey, valueNow, isFocusRingVisible }: SectionProps<K>,\n ref: ForwardedRef<HTMLLIElement>\n) {\n const isCurrent = context.data.key === currentKey;\n const classes = classNames([liStyles.base, isCurrent && isFocusRingVisible && liStyles.focused]);\n return {\n ...(isCurrent && { ref }),\n key: context.data.key,\n class: classes,\n 'data-oj-key': context.data.key,\n 'data-oj-key-type': typeof context.data.key,\n 'data-oj-valuenow': valueNow,\n isFocusRingVisible: !!isFocusRingVisible\n };\n}\n\ntype LastSectionProps<K> = SectionProps<K> & {\n lastValueNow: number;\n};\n\n// render the last section, that contains the last character and others character\nexport const LastSectionItem = forwardRef(\n <K extends string | number>(\n { lastValueNow, ...sectionProps }: LastSectionProps<K>,\n ref: ForwardedRef<HTMLLIElement>\n ) => {\n const commonProps = { ...sectionProps, ref };\n return (\n <Fragment>\n <SectionItem {...commonProps} />\n <OthersItem\n {...commonProps}\n ref={ref}\n context={{ index: -1, data: SECTION_OTHERS } as ItemContext<Section<K>>}\n valueNow={lastValueNow}\n />\n </Fragment>\n );\n }\n);\n\nconst OthersItem = forwardRef(<K,>(props: SectionProps<K>, ref: ForwardedRef<HTMLLIElement>) => {\n const { context, selectedKey } = props;\n const commonProps = getCommonProps(props, ref);\n\n const isSelected = context.data.key === selectedKey;\n const othersClasses = classNames([commonProps.class, isSelected && liStyles.selected]);\n const othersValueText = SECTION_OTHERS.label;\n\n return (\n <li {...commonProps} class={othersClasses} data-oj-valuetext={othersValueText}>\n {context.data.label}\n </li>\n );\n});\n\ntype SeparatorProps<K> = SectionProps<K> & {\n sectionsPerTruncation: number;\n last: number;\n sections: Section<K>[];\n};\n\nexport const SeparatorItem = forwardRef(\n <K extends string | number>(props: SeparatorProps<K>, ref: ForwardedRef<HTMLLIElement>) => {\n const translations = useTranslationBundle<BundleType>('@oracle/oraclejet-preact');\n\n const { context, sections } = props;\n const commonProps = getCommonProps(props, ref);\n const { from, to } = getSeparatorRange(props);\n\n if (!isInSeparatorMiddle(context.index, from, to)) {\n return null;\n }\n\n const fromText = sections[from].label || sections[from].key;\n const toText = sections[to].label || sections[to].key;\n const separatorClasses = classNames([dotStyles.base]);\n\n const separatorValueText = translations.indexer_separatorLabel({\n FROM_SECTION: `${fromText}`,\n TO_SECTION: `${toText}`\n });\n\n return (\n <li {...commonProps} data-oj-valuetext={separatorValueText}>\n <Flex align=\"center\" justify=\"center\">\n <div class={separatorClasses}></div>\n </Flex>\n </li>\n );\n }\n);\n\nexport function hasSeparator<K>(props: SeparatorProps<K>) {\n const { from, to } = getSeparatorRange(props);\n return isInSeparatorMiddle(props.context.index, from, to);\n}\n\nfunction getSeparatorRange<K>({ context, sectionsPerTruncation, last }: SeparatorProps<K>) {\n const from = context.index - (context.index % sectionsPerTruncation) + 1;\n let to = from + sectionsPerTruncation - 2;\n to = to >= last ? last - 1 : to;\n\n return { from, to };\n}\n\nfunction isInSeparatorMiddle(index: number, from: number, to: number) {\n return index === Math.floor((from + to) / 2);\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 */\nimport { ComponentChildren, createRef, RefObject } from 'preact';\nimport { useEffect, useRef, useState, StateUpdater, useCallback } from 'preact/hooks';\nimport { Flex } from '../UNSAFE_Flex';\nimport { cssProps } from '@oracle/oraclejet-cssprops';\nimport { mergeProps } from '../utils/UNSAFE_mergeProps';\nimport { useSingleSelection } from '../hooks/PRIVATE_useSingleSelection/useSingleSelection';\nimport { useCurrentKey } from '../hooks/PRIVATE_useCurrentKey';\nimport { useCollectionFocusRing } from '../hooks/PRIVATE_useCollectionFocusRing';\nimport { keyExtractor, getPrevNextKey } from '../utils/PRIVATE_collectionUtils';\nimport { getClientHints } from '../utils/PRIVATE_clientHints';\nimport { useId } from '../hooks/UNSAFE_useId';\nimport { useTranslationBundle } from '../hooks/UNSAFE_useTranslationBundle';\nimport type { BundleType } from '../resources/nls/bundle';\nimport { HiddenAccessible } from '../UNSAFE_HiddenAccessible';\nimport { ItemContext, CurrentKeyDetail, SingleSelectionDetail } from '../UNSAFE_Collection';\nimport { Collection } from '../PRIVATE_Collection';\nimport {\n Section,\n SectionItem,\n LastSectionItem,\n SeparatorItem,\n SECTION_OTHERS,\n hasSeparator,\n ITEM_SELECTOR\n} from './IndexerItems';\n\nexport type CommitDetail<K> = {\n value: K;\n};\n\ntype Props<K> = {\n /**\n * An array of sections, the default sections is an\n * array of 26 English alphabets and the # others character\n */\n sections?: Section<K>[];\n\n /**\n * The currently selected Section\n */\n value?: K;\n\n /**\n * A function that will be invoked when selection happens,\n * no matter the Section was selected before or not.\n */\n onCommit?: (detail: CommitDetail<K>) => void;\n};\n\nconst styles = {\n base: cssProps`${{\n height: '100%'\n }}`\n};\n\nconst ulStyles = {\n base: cssProps`${{\n listStyleType: 'none',\n margin: '0px',\n marginTop: 'auto', // prevent cutoff in small screen\n marginBottom: 'auto', // prevent cutoff in small screen\n paddingTop: '0',\n paddingBottom: '0',\n paddingLeft: '0',\n paddingRight: '0',\n outlineStyle: 'none'\n }}`\n};\n\nconst defaultSections: Section<string>[] = [\n { key: 'A' },\n { key: 'B' },\n { key: 'C' },\n { key: 'D' },\n { key: 'E' },\n { key: 'F' },\n { key: 'G' },\n { key: 'H' },\n { key: 'I' },\n { key: 'J' },\n { key: 'K' },\n { key: 'L' },\n { key: 'M' },\n { key: 'N' },\n { key: 'O' },\n { key: 'P' },\n { key: 'Q' },\n { key: 'R' },\n { key: 'S' },\n { key: 'T' },\n { key: 'U' },\n { key: 'V' },\n { key: 'W' },\n { key: 'X' },\n { key: 'Y' },\n { key: 'Z' }\n];\n\n/**\n * Pure Preact based component that consumes Collection component\n * and renders an indexer.\n */\nexport function Indexer<K extends string | number>({\n sections = defaultSections as Section<K>[],\n value,\n onCommit = () => {}\n}: Props<K>) {\n const rootRef = useRef<HTMLDivElement>(null);\n const ulRef = useRef<HTMLUListElement>(null);\n const currElementRef = createRef<HTMLLIElement>();\n const [current, setCurrent] = useState<K | undefined>(sections[0]?.key);\n // the number of sections in each truncation\n const [sectionsPerTruncation, setSectionsPerTruncation] = useState<number>(-1);\n // the total number of rendered sections and separators\n const renderedSectionsCount = useRef<number>(-1);\n const itemHeightRef = useRef<number>(0);\n // the id for aria describedby\n const uniqueId = useId();\n\n const [showFocusRing, focusRingProps] = useCollectionFocusRing(\n (elem: Element | null) => {\n return !!rootRef.current?.contains(elem);\n },\n ['ArrowUp', 'ArrowDown']\n );\n\n const { currentKeyProps } = useCurrentKey(\n (element) => keyExtractor(element, ITEM_SELECTOR),\n getPrevNextKey(rootRef.current, current, true, ITEM_SELECTOR),\n getPrevNextKey(rootRef.current, current, false, ITEM_SELECTOR),\n current,\n (detail: CurrentKeyDetail<K>) => setCurrent(detail.value)\n );\n\n const { selectionProps } = useSingleSelection(\n (element) => handleKeyExtract(element, ulRef, current as K),\n // pass in undefined so onCommit handler will be called\n // no matter whether the Section was selected before or not\n undefined,\n (detail: SingleSelectionDetail<K>) => handleSelection(detail, onCommit, sections)\n );\n\n /**\n * Item renderer that will return a section item or a section separator\n * based on the sectionsPerTruncation and item context index.\n * @param context item context\n */\n const itemRenderer = (context: ItemContext<Section<K>>): ComponentChildren => {\n const last = sections.length - 1;\n renderedSectionsCount.current += 1;\n\n const commonProps = {\n context,\n ref: currElementRef,\n currentKey: current as K,\n selectedKey: value as K,\n valueNow: renderedSectionsCount.current,\n isFocusRingVisible: !!showFocusRing\n };\n\n // render the last and the others character, they are always present\n if (context.index === last) {\n return <LastSectionItem {...commonProps} lastValueNow={renderedSectionsCount.current + 1} />;\n }\n\n // render a section, in the non-truncation case or when it is the first in a truncation\n if (sectionsPerTruncation <= 1 || context.index % sectionsPerTruncation === 0) {\n return <SectionItem {...commonProps} />;\n }\n\n // render the separator in the middle of a truncation\n const separatorProps = { ...commonProps, sectionsPerTruncation, last, sections };\n if (hasSeparator(separatorProps)) {\n return <SeparatorItem {...separatorProps} />;\n }\n\n // remove the count for truncated sections\n renderedSectionsCount.current -= 1;\n\n return null;\n };\n\n // truncate the Indexer during resize\n const handleResize = useCallback(\n (entries: ResizeObserverEntry[]) => {\n for (const entry of entries) {\n updateSectionsPerTruncation(\n entry.contentRect.height,\n itemHeightRef.current,\n sections.length,\n sections[0]?.key,\n sectionsPerTruncation,\n setSectionsPerTruncation,\n setCurrent\n );\n }\n },\n [sections, sectionsPerTruncation]\n );\n\n useEffect(() => {\n if (ulRef.current) {\n // Get aria values from IndexerItem to update aria values on Indexer ul element\n ulRef.current.setAttribute('aria-valuemax', renderedSectionsCount.current + 1 + '');\n ulRef.current.setAttribute(\n 'aria-valuetext',\n currElementRef.current?.dataset?.['ojValuetext'] || ''\n );\n ulRef.current.setAttribute(\n 'aria-valuenow',\n currElementRef.current?.dataset?.['ojValuenow'] || ''\n );\n }\n renderedSectionsCount.current = -1;\n });\n\n /**\n * Set up the initial values for sectionsPerTruncation and event listeners\n */\n useEffect(() => {\n const root = rootRef.current;\n if (root) {\n itemHeightRef.current = root.querySelector('li')?.offsetHeight || 0;\n updateSectionsPerTruncation(\n root.offsetHeight,\n itemHeightRef.current,\n sections.length,\n sections[0]?.key,\n sectionsPerTruncation,\n setSectionsPerTruncation,\n setCurrent\n );\n }\n }, [sections, sectionsPerTruncation]);\n\n /**\n * Set up resize observer and refresh the resize observer when\n * sectionsPerTruncation is changed, otherwise it will only have the\n * old copy of sectionsPerTruncation.\n */\n useEffect(() => {\n const root = rootRef.current;\n if (root) {\n const resizeObserver = new ResizeObserver((entries: ResizeObserverEntry[]) => {\n handleResize(entries);\n });\n resizeObserver.observe(root);\n return () => {\n resizeObserver.unobserve(root);\n };\n }\n return undefined;\n }, [sectionsPerTruncation, handleResize]);\n\n const translations = useTranslationBundle<BundleType>('@oracle/oraclejet-preact');\n\n return (\n <div ref={rootRef} class={styles.base}>\n <Flex align=\"center\" width=\"6x\" height=\"100%\">\n <ul\n {...mergeProps(currentKeyProps, focusRingProps, selectionProps)}\n ref={ulRef}\n tabIndex={0}\n aria-label=\"Indexer\"\n aria-orientation=\"vertical\"\n aria-valuemin=\"0\"\n aria-describedby={uniqueId}\n role=\"slider\"\n class={ulStyles.base}>\n <Collection items={sections}>{itemRenderer}</Collection>\n </ul>\n </Flex>\n <HiddenAccessible>\n <span id={uniqueId}>{getIndexerDescription(translations)}</span>\n </HiddenAccessible>\n </div>\n );\n}\n\n// A function to extract key for selection\nconst handleKeyExtract = <K extends string | number>(\n element: HTMLElement,\n rootRef: RefObject<HTMLElement>,\n current: K\n) => {\n if (element === rootRef.current) {\n return current === undefined ? null : current;\n }\n return keyExtractor(element, ITEM_SELECTOR) as K;\n};\n\nconst handleSelection = <K extends string | number>(\n detail: SingleSelectionDetail<K>,\n onCommit: (value: CommitDetail<K>) => void,\n sections: Section<K>[]\n) => {\n if (detail.value === SECTION_OTHERS.key) {\n onCommit({ value: SECTION_OTHERS.key as K });\n } else {\n const selectedSection = sections.find((section) => section.key === detail.value) as Section<K>;\n onCommit({ value: selectedSection.key as K });\n }\n};\n\n/**\n * A function that calculates the section count, based on\n * the container height and the number of sections\n * @param height height of Indexer container\n */\nconst updateSectionsPerTruncation = <K extends string | number>(\n height: number,\n itemHeight: number,\n sectionsLength: number,\n firstSectionKey: K,\n sectionsPerTruncation: number,\n setSectionsPerTruncation: StateUpdater<number>,\n setCurrent: StateUpdater<K | undefined>\n) => {\n if (height === 0 || itemHeight === 0) {\n return;\n }\n\n const maxSections = height / itemHeight;\n const last = sectionsLength - 1;\n\n // when the container size is too small to hold two sections\n if (maxSections < 2) {\n if (sectionsPerTruncation !== last) {\n setSectionsPerTruncation(last);\n setCurrent(firstSectionKey);\n }\n\n // no truncation\n // compare with < 0.01 for the deviation from calculation, when sectionsLength and maxSections\n // are about the same, maxNum === sectionsLength doesn't work\n } else if (maxSections > sectionsLength || sectionsLength - maxSections < 0.01) {\n if (sectionsPerTruncation > 1) {\n setSectionsPerTruncation(1);\n setCurrent(firstSectionKey);\n }\n\n // need truncation\n } else {\n const tempSectionCount = findSectionCount(maxSections, last);\n if (tempSectionCount !== sectionsPerTruncation && tempSectionCount < sectionsLength) {\n setSectionsPerTruncation(tempSectionCount);\n setCurrent(firstSectionKey);\n }\n }\n};\n\n/**\n * A helper function to find the best section count\n * in a truncation\n *\n * @param maxSections maximum number of sections allowed in a truncation\n * @param last the index of last section\n */\nconst findSectionCount = (maxSections: number, last: number) => {\n // need truncation\n maxSections -= 2; // minus the last character and the others character\n maxSections /= 2; // each truncation has a section and a separator\n\n const newSectionCount = Math.round(last / maxSections) + 1;\n const truncationLeftover = last % newSectionCount;\n const truncationCount = Math.floor(last / newSectionCount) + (truncationLeftover > 1 ? 1 : 0);\n\n // When the sectionCount becomes greater, it will result in\n // same truncations but with different sections appearing.\n // The following is to find the best sectionCount in this case\n // and prevent unnecessary truncations.\n let tempLeftover = last - (truncationCount - 1) * newSectionCount;\n let tempSectionCount = newSectionCount;\n while (tempSectionCount > tempLeftover) {\n tempSectionCount -= 1;\n tempLeftover = last - (truncationCount - 1) * tempSectionCount;\n }\n if (tempSectionCount != newSectionCount) {\n tempSectionCount += 1;\n }\n\n return tempSectionCount;\n};\n\n/**\n * Helper function to find the aria description for Indexer,\n * based on whether current device is a mobile device\n */\nfunction getIndexerDescription(translations: any) {\n const deviceType = getClientHints().deviceType;\n if (deviceType === 'phone' || deviceType === 'tablet') {\n return translations.indexer_touchInstructionText();\n } else {\n return translations.indexer_keyboardInstructionText();\n }\n}\n"],"names":["SECTION_OTHERS","Object","freeze","key","label","liStyles","ITEM_STYLE_CLASS","base","ITEM_SELECTOR","dotStyles","SectionItem","forwardRef","props","ref","translations","useTranslationBundle","context","selectedKey","commonProps","class","data","isDisabled","disabled","sectionLabel","valueText","indexer_disabledLabel","SECTION","_jsx","assign","itemClasses","children","getCommonProps","currentKey","valueNow","isFocusRingVisible","classes","classNames","isCurrent","focused","LastSectionItem","_a","lastValueNow","sectionProps","__rest","_jsxs","Fragment","OthersItem","index","othersClasses","isSelected","selected","othersValueText","SeparatorItem","sections","fromText","from","toText","to","separatorValueText","indexer_separatorLabel","hasSeparator","isInSeparatorMiddle","getSeparatorRange","sectionsPerTruncation","last","Math","floor","styles","ulStyles","defaultSections","Indexer","value","onCommit","rootRef","useRef","ulRef","currElementRef","createRef","current","setCurrent","useState","renderedSectionsCount","itemHeightRef","uniqueId","useId","contains","elem","selectionProps","useSingleSelection","element","handleKeyExtract","undefined","detail","handleSelection","itemRenderer","length","separatorProps","handleResize","useCallback","entries","entry","updateSectionsPerTruncation","contentRect","height","setSectionsPerTruncation","setAttribute","root","querySelector","offsetHeight","resizeObserver","observe","unobserve","Flex","align","width","mergeProps","currentKeyProps","focusRingProps","tabIndex","role","Collection","items","HiddenAccessible","id","getIndexerDescription","keyExtractor","selectedSection","find","section","itemHeight","sectionsLength","firstSectionKey","maxSections","tempSectionCount","findSectionCount","newSectionCount","round","truncationLeftover","deviceType","getClientHints","indexer_touchInstructionText","indexer_keyboardInstructionText"],"mappings":"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"}
1
+ {"version":3,"file":"Indexer-8b8eb94e.js","sources":["../../src/UNSAFE_Indexer/IndexerItems.tsx","../../src/UNSAFE_Indexer/Indexer.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 { Fragment } from 'preact';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { cssProps } from '@oracle/oraclejet-cssprops';\nimport { Flex } from '../UNSAFE_Flex';\nimport { useTranslationBundle } from '../hooks/UNSAFE_useTranslationBundle';\nimport type { BundleType } from '../resources/nls/bundle';\nimport { ItemContext } from 'src/UNSAFE_Collection';\nimport { forwardRef, ForwardedRef } from 'preact/compat';\n\n/**\n * Type of a section\n */\nexport type Section<K> = {\n /**\n * The key of each section\n */\n key: K;\n /**\n * The label of each section\n */\n label?: string;\n /**\n * A property that indicates whether the section\n * is disabled or not. Typically, when Indexer is\n * used with ListView, a disabled section implies\n * that there's no corresponding items in the ListView\n */\n isDisabled?: boolean;\n};\n\n/**\n * The others section variable that application could use\n * to compare value\n */\n// const translations = useTranslationBundle<BundleType>('@oracle/oraclejet-preact');\nexport const SECTION_OTHERS: Section<string> = Object.freeze({\n key: '__others__',\n label: '#'\n});\n\nconst liStyles = {\n base: cssProps`${{\n textAlign: 'center',\n height: '1rem',\n width: '1.5rem',\n color: 'var(--oj-c-PRIVATE-DO-NOT-USE-indexer-text-color)',\n fontSize: 'var(--oj-c-PRIVATE-DO-NOT-USE-indexer-font-size)',\n lineHeight: '1rem'\n }}`,\n disabled: cssProps`${{\n color: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-text-color-disabled)'\n }}`,\n focused: cssProps`${{\n outlineStyle: 'dotted',\n outlineWidth: '1px',\n outlineColor: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-focus-border-color)',\n outlineOffset: '-1px'\n }}`,\n selected: cssProps`${{\n fontWeight: 'bold'\n }}`\n};\n\nconst ITEM_STYLE_CLASS = liStyles.base;\nexport const ITEM_SELECTOR = '.' + ITEM_STYLE_CLASS;\n\nconst dotStyles = {\n base: cssProps`${{\n '&::after': {\n content: '\"\\u25cf\"'\n }\n }}`\n};\n\nexport type SectionProps<K> = {\n context: ItemContext<Section<K>>;\n currentKey: K;\n selectedKey: K;\n valueNow: number; // the index of an item within currently visible sections\n isFocusRingVisible: boolean;\n};\n\nexport const SectionItem = forwardRef(\n <K extends string | number>(props: SectionProps<K>, ref: ForwardedRef<HTMLLIElement>) => {\n const translations = useTranslationBundle<BundleType>('@oracle/oraclejet-preact');\n\n const { context, selectedKey } = props;\n const isSelected = context.data.key === selectedKey;\n const commonProps = getCommonProps(props, ref);\n\n const itemClasses = classNames([\n commonProps.class,\n context.data.isDisabled && liStyles.disabled,\n isSelected && liStyles.selected\n ]);\n\n const sectionLabel = context.data.label || context.data.key;\n const valueText = context.data.isDisabled\n ? translations.indexer_disabledLabel({ SECTION: `${sectionLabel}` })\n : `${sectionLabel}`;\n\n return (\n <li\n {...commonProps}\n class={itemClasses}\n data-oj-valuetext={valueText}\n data-oj-disabled={context.data.isDisabled}>\n {context.data.label || context.data.key}\n </li>\n );\n }\n);\n\nfunction getCommonProps<K>(\n { context, currentKey, valueNow, isFocusRingVisible }: SectionProps<K>,\n ref: ForwardedRef<HTMLLIElement>\n) {\n const isCurrent = context.data.key === currentKey;\n const classes = classNames([liStyles.base, isCurrent && isFocusRingVisible && liStyles.focused]);\n return {\n ...(isCurrent && { ref }),\n key: context.data.key,\n class: classes,\n 'data-oj-key': context.data.key,\n 'data-oj-key-type': typeof context.data.key,\n 'data-oj-valuenow': valueNow,\n isFocusRingVisible: !!isFocusRingVisible\n };\n}\n\ntype LastSectionProps<K> = SectionProps<K> & {\n lastValueNow: number;\n};\n\n// render the last section, that contains the last character and others character\nexport const LastSectionItem = forwardRef(\n <K extends string | number>(\n { lastValueNow, ...sectionProps }: LastSectionProps<K>,\n ref: ForwardedRef<HTMLLIElement>\n ) => {\n const commonProps = { ...sectionProps, ref };\n return (\n <Fragment>\n <SectionItem {...commonProps} />\n <OthersItem\n {...commonProps}\n ref={ref}\n context={{ index: -1, data: SECTION_OTHERS } as ItemContext<Section<K>>}\n valueNow={lastValueNow}\n />\n </Fragment>\n );\n }\n);\n\nconst OthersItem = forwardRef(<K,>(props: SectionProps<K>, ref: ForwardedRef<HTMLLIElement>) => {\n const { context, selectedKey } = props;\n const commonProps = getCommonProps(props, ref);\n\n const isSelected = context.data.key === selectedKey;\n const othersClasses = classNames([commonProps.class, isSelected && liStyles.selected]);\n const othersValueText = SECTION_OTHERS.label;\n\n return (\n <li {...commonProps} class={othersClasses} data-oj-valuetext={othersValueText}>\n {context.data.label}\n </li>\n );\n});\n\ntype SeparatorProps<K> = SectionProps<K> & {\n sectionsPerTruncation: number;\n last: number;\n sections: Section<K>[];\n};\n\nexport const SeparatorItem = forwardRef(\n <K extends string | number>(props: SeparatorProps<K>, ref: ForwardedRef<HTMLLIElement>) => {\n const translations = useTranslationBundle<BundleType>('@oracle/oraclejet-preact');\n\n const { context, sections } = props;\n const commonProps = getCommonProps(props, ref);\n const { from, to } = getSeparatorRange(props);\n\n if (!isInSeparatorMiddle(context.index, from, to)) {\n return null;\n }\n\n const fromText = sections[from].label || sections[from].key;\n const toText = sections[to].label || sections[to].key;\n const separatorClasses = classNames([dotStyles.base]);\n\n const separatorValueText = translations.indexer_separatorLabel({\n FROM_SECTION: `${fromText}`,\n TO_SECTION: `${toText}`\n });\n\n return (\n <li {...commonProps} data-oj-valuetext={separatorValueText}>\n <Flex align=\"center\" justify=\"center\">\n <div class={separatorClasses}></div>\n </Flex>\n </li>\n );\n }\n);\n\nexport function hasSeparator<K>(props: SeparatorProps<K>) {\n const { from, to } = getSeparatorRange(props);\n return isInSeparatorMiddle(props.context.index, from, to);\n}\n\nfunction getSeparatorRange<K>({ context, sectionsPerTruncation, last }: SeparatorProps<K>) {\n const from = context.index - (context.index % sectionsPerTruncation) + 1;\n let to = from + sectionsPerTruncation - 2;\n to = to >= last ? last - 1 : to;\n\n return { from, to };\n}\n\nfunction isInSeparatorMiddle(index: number, from: number, to: number) {\n return index === Math.floor((from + to) / 2);\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 */\nimport { ComponentChildren, createRef, RefObject } from 'preact';\nimport { useEffect, useRef, useState, StateUpdater, useCallback } from 'preact/hooks';\nimport { Flex } from '../UNSAFE_Flex';\nimport { cssProps } from '@oracle/oraclejet-cssprops';\nimport { mergeProps } from '../utils/UNSAFE_mergeProps';\nimport { useSingleSelection } from '../hooks/PRIVATE_useSingleSelection/useSingleSelection';\nimport { useCurrentKey } from '../hooks/PRIVATE_useCurrentKey';\nimport { useCollectionFocusRing } from '../hooks/PRIVATE_useCollectionFocusRing';\nimport { keyExtractor, getPrevNextKey } from '../utils/PRIVATE_collectionUtils';\nimport { getClientHints } from '../utils/PRIVATE_clientHints';\nimport { useId } from '../hooks/UNSAFE_useId';\nimport { useTranslationBundle } from '../hooks/UNSAFE_useTranslationBundle';\nimport type { BundleType } from '../resources/nls/bundle';\nimport { HiddenAccessible } from '../UNSAFE_HiddenAccessible';\nimport { ItemContext, CurrentKeyDetail, SingleSelectionDetail } from '../UNSAFE_Collection';\nimport { Collection } from '../PRIVATE_Collection';\nimport {\n Section,\n SectionItem,\n LastSectionItem,\n SeparatorItem,\n SECTION_OTHERS,\n hasSeparator,\n ITEM_SELECTOR\n} from './IndexerItems';\n\nexport type CommitDetail<K> = {\n value: K;\n};\n\ntype Props<K> = {\n /**\n * An array of sections, the default sections is an\n * array of 26 English alphabets and the # others character\n */\n sections?: Section<K>[];\n\n /**\n * The currently selected Section\n */\n value?: K;\n\n /**\n * A function that will be invoked when selection happens,\n * no matter the Section was selected before or not.\n */\n onCommit?: (detail: CommitDetail<K>) => void;\n};\n\nconst styles = {\n base: cssProps`${{\n height: '100%'\n }}`\n};\n\nconst ulStyles = {\n base: cssProps`${{\n listStyleType: 'none',\n margin: '0px',\n marginTop: 'auto', // prevent cutoff in small screen\n marginBottom: 'auto', // prevent cutoff in small screen\n paddingTop: '0',\n paddingBottom: '0',\n paddingLeft: '0',\n paddingRight: '0',\n outlineStyle: 'none'\n }}`\n};\n\nconst defaultSections: Section<string>[] = [\n { key: 'A' },\n { key: 'B' },\n { key: 'C' },\n { key: 'D' },\n { key: 'E' },\n { key: 'F' },\n { key: 'G' },\n { key: 'H' },\n { key: 'I' },\n { key: 'J' },\n { key: 'K' },\n { key: 'L' },\n { key: 'M' },\n { key: 'N' },\n { key: 'O' },\n { key: 'P' },\n { key: 'Q' },\n { key: 'R' },\n { key: 'S' },\n { key: 'T' },\n { key: 'U' },\n { key: 'V' },\n { key: 'W' },\n { key: 'X' },\n { key: 'Y' },\n { key: 'Z' }\n];\n\n/**\n * Pure Preact based component that consumes Collection component\n * and renders an indexer.\n */\nexport function Indexer<K extends string | number>({\n sections = defaultSections as Section<K>[],\n value,\n onCommit = () => {}\n}: Props<K>) {\n const rootRef = useRef<HTMLDivElement>(null);\n const ulRef = useRef<HTMLUListElement>(null);\n const currElementRef = createRef<HTMLLIElement>();\n const [current, setCurrent] = useState<K | undefined>(sections[0]?.key);\n // the number of sections in each truncation\n const [sectionsPerTruncation, setSectionsPerTruncation] = useState<number>(-1);\n // the total number of rendered sections and separators\n const renderedSectionsCount = useRef<number>(-1);\n const itemHeightRef = useRef<number>(0);\n // the id for aria describedby\n const uniqueId = useId();\n\n const [showFocusRing, focusRingProps] = useCollectionFocusRing(\n (elem: Element | null) => {\n return !!rootRef.current?.contains(elem);\n },\n ['ArrowUp', 'ArrowDown']\n );\n\n const { currentKeyProps } = useCurrentKey(\n (element) => keyExtractor(element, ITEM_SELECTOR),\n getPrevNextKey(rootRef.current, current, true, ITEM_SELECTOR),\n getPrevNextKey(rootRef.current, current, false, ITEM_SELECTOR),\n current,\n (detail: CurrentKeyDetail<K>) => setCurrent(detail.value)\n );\n\n const { selectionProps } = useSingleSelection(\n (element) => handleKeyExtract(element, ulRef, current as K),\n // pass in undefined so onCommit handler will be called\n // no matter whether the Section was selected before or not\n undefined,\n (detail: SingleSelectionDetail<K>) => handleSelection(detail, onCommit, sections)\n );\n\n /**\n * Item renderer that will return a section item or a section separator\n * based on the sectionsPerTruncation and item context index.\n * @param context item context\n */\n const itemRenderer = (context: ItemContext<Section<K>>): ComponentChildren => {\n const last = sections.length - 1;\n renderedSectionsCount.current += 1;\n\n const commonProps = {\n context,\n ref: currElementRef,\n currentKey: current as K,\n selectedKey: value as K,\n valueNow: renderedSectionsCount.current,\n isFocusRingVisible: !!showFocusRing\n };\n\n // render the last and the others character, they are always present\n if (context.index === last) {\n return <LastSectionItem {...commonProps} lastValueNow={renderedSectionsCount.current + 1} />;\n }\n\n // render a section, in the non-truncation case or when it is the first in a truncation\n if (sectionsPerTruncation <= 1 || context.index % sectionsPerTruncation === 0) {\n return <SectionItem {...commonProps} />;\n }\n\n // render the separator in the middle of a truncation\n const separatorProps = { ...commonProps, sectionsPerTruncation, last, sections };\n if (hasSeparator(separatorProps)) {\n return <SeparatorItem {...separatorProps} />;\n }\n\n // remove the count for truncated sections\n renderedSectionsCount.current -= 1;\n\n return null;\n };\n\n // truncate the Indexer during resize\n const handleResize = useCallback(\n (entries: ResizeObserverEntry[]) => {\n for (const entry of entries) {\n updateSectionsPerTruncation(\n entry.contentRect.height,\n itemHeightRef.current,\n sections.length,\n sections[0]?.key,\n sectionsPerTruncation,\n setSectionsPerTruncation,\n setCurrent\n );\n }\n },\n [sections, sectionsPerTruncation]\n );\n\n useEffect(() => {\n if (ulRef.current) {\n // Get aria values from IndexerItem to update aria values on Indexer ul element\n ulRef.current.setAttribute('aria-valuemax', renderedSectionsCount.current + 1 + '');\n ulRef.current.setAttribute(\n 'aria-valuetext',\n currElementRef.current?.dataset?.['ojValuetext'] || ''\n );\n ulRef.current.setAttribute(\n 'aria-valuenow',\n currElementRef.current?.dataset?.['ojValuenow'] || ''\n );\n }\n renderedSectionsCount.current = -1;\n });\n\n /**\n * Set up the initial values for sectionsPerTruncation and event listeners\n */\n useEffect(() => {\n const root = rootRef.current;\n if (root) {\n itemHeightRef.current = root.querySelector('li')?.offsetHeight || 0;\n updateSectionsPerTruncation(\n root.offsetHeight,\n itemHeightRef.current,\n sections.length,\n sections[0]?.key,\n sectionsPerTruncation,\n setSectionsPerTruncation,\n setCurrent\n );\n }\n }, [sections, sectionsPerTruncation]);\n\n /**\n * Set up resize observer and refresh the resize observer when\n * sectionsPerTruncation is changed, otherwise it will only have the\n * old copy of sectionsPerTruncation.\n */\n useEffect(() => {\n const root = rootRef.current;\n if (root) {\n const resizeObserver = new ResizeObserver((entries: ResizeObserverEntry[]) => {\n handleResize(entries);\n });\n resizeObserver.observe(root);\n return () => {\n resizeObserver.unobserve(root);\n };\n }\n return undefined;\n }, [sectionsPerTruncation, handleResize]);\n\n const translations = useTranslationBundle<BundleType>('@oracle/oraclejet-preact');\n\n return (\n <div ref={rootRef} class={styles.base}>\n <Flex align=\"center\" width=\"6x\" height=\"100%\">\n <ul\n {...mergeProps(currentKeyProps, focusRingProps, selectionProps)}\n ref={ulRef}\n tabIndex={0}\n aria-label=\"Indexer\"\n aria-orientation=\"vertical\"\n aria-valuemin=\"0\"\n aria-describedby={uniqueId}\n role=\"slider\"\n class={ulStyles.base}>\n <Collection items={sections}>{itemRenderer}</Collection>\n </ul>\n </Flex>\n <HiddenAccessible>\n <span id={uniqueId}>{getIndexerDescription(translations)}</span>\n </HiddenAccessible>\n </div>\n );\n}\n\n// A function to extract key for selection\nconst handleKeyExtract = <K extends string | number>(\n element: HTMLElement,\n rootRef: RefObject<HTMLElement>,\n current: K\n) => {\n if (element === rootRef.current) {\n return current === undefined ? null : current;\n }\n return keyExtractor(element, ITEM_SELECTOR) as K;\n};\n\nconst handleSelection = <K extends string | number>(\n detail: SingleSelectionDetail<K>,\n onCommit: (value: CommitDetail<K>) => void,\n sections: Section<K>[]\n) => {\n if (detail.value === SECTION_OTHERS.key) {\n onCommit({ value: SECTION_OTHERS.key as K });\n } else {\n const selectedSection = sections.find((section) => section.key === detail.value) as Section<K>;\n onCommit({ value: selectedSection.key as K });\n }\n};\n\n/**\n * A function that calculates the section count, based on\n * the container height and the number of sections\n * @param height height of Indexer container\n */\nconst updateSectionsPerTruncation = <K extends string | number>(\n height: number,\n itemHeight: number,\n sectionsLength: number,\n firstSectionKey: K,\n sectionsPerTruncation: number,\n setSectionsPerTruncation: StateUpdater<number>,\n setCurrent: StateUpdater<K | undefined>\n) => {\n if (height === 0 || itemHeight === 0) {\n return;\n }\n\n const maxSections = height / itemHeight;\n const last = sectionsLength - 1;\n\n // when the container size is too small to hold two sections\n if (maxSections < 2) {\n if (sectionsPerTruncation !== last) {\n setSectionsPerTruncation(last);\n setCurrent(firstSectionKey);\n }\n\n // no truncation\n // compare with < 0.01 for the deviation from calculation, when sectionsLength and maxSections\n // are about the same, maxNum === sectionsLength doesn't work\n } else if (maxSections > sectionsLength || sectionsLength - maxSections < 0.01) {\n if (sectionsPerTruncation > 1) {\n setSectionsPerTruncation(1);\n setCurrent(firstSectionKey);\n }\n\n // need truncation\n } else {\n const tempSectionCount = findSectionCount(maxSections, last);\n if (tempSectionCount !== sectionsPerTruncation && tempSectionCount < sectionsLength) {\n setSectionsPerTruncation(tempSectionCount);\n setCurrent(firstSectionKey);\n }\n }\n};\n\n/**\n * A helper function to find the best section count\n * in a truncation\n *\n * @param maxSections maximum number of sections allowed in a truncation\n * @param last the index of last section\n */\nconst findSectionCount = (maxSections: number, last: number) => {\n // need truncation\n maxSections -= 2; // minus the last character and the others character\n maxSections /= 2; // each truncation has a section and a separator\n\n const newSectionCount = Math.round(last / maxSections) + 1;\n const truncationLeftover = last % newSectionCount;\n const truncationCount = Math.floor(last / newSectionCount) + (truncationLeftover > 1 ? 1 : 0);\n\n // When the sectionCount becomes greater, it will result in\n // same truncations but with different sections appearing.\n // The following is to find the best sectionCount in this case\n // and prevent unnecessary truncations.\n let tempLeftover = last - (truncationCount - 1) * newSectionCount;\n let tempSectionCount = newSectionCount;\n while (tempSectionCount > tempLeftover) {\n tempSectionCount -= 1;\n tempLeftover = last - (truncationCount - 1) * tempSectionCount;\n }\n if (tempSectionCount != newSectionCount) {\n tempSectionCount += 1;\n }\n\n return tempSectionCount;\n};\n\n/**\n * Helper function to find the aria description for Indexer,\n * based on whether current device is a mobile device\n */\nfunction getIndexerDescription(translations: any) {\n const deviceType = getClientHints().deviceType;\n if (deviceType === 'phone' || deviceType === 'tablet') {\n return translations.indexer_touchInstructionText();\n } else {\n return translations.indexer_keyboardInstructionText();\n }\n}\n"],"names":["SECTION_OTHERS","Object","freeze","key","label","liStyles","ITEM_SELECTOR","dotStyles","SectionItem","forwardRef","props","ref","translations","useTranslationBundle","context","selectedKey","commonProps","class","data","isDisabled","sectionLabel","valueText","indexer_disabledLabel","SECTION","_jsx","assign","itemClasses","children","getCommonProps","currentKey","valueNow","isFocusRingVisible","classes","classNames","isCurrent","LastSectionItem","_a","lastValueNow","sectionProps","__rest","_jsxs","Fragment","OthersItem","index","othersClasses","isSelected","othersValueText","SeparatorItem","sections","fromText","from","toText","to","separatorValueText","indexer_separatorLabel","getSeparatorRange","sectionsPerTruncation","last","isInSeparatorMiddle","Math","floor","styles","ulStyles","defaultSections","handleKeyExtract","element","rootRef","current","keyExtractor","handleSelection","detail","onCommit","value","find","section","updateSectionsPerTruncation","height","itemHeight","sectionsLength","firstSectionKey","setSectionsPerTruncation","setCurrent","maxSections","tempSectionCount","findSectionCount","newSectionCount","round","truncationLeftover","getIndexerDescription","deviceType","getClientHints","indexer_touchInstructionText","indexer_keyboardInstructionText","useRef","ulRef","currElementRef","createRef","useState","renderedSectionsCount","itemHeightRef","uniqueId","useId","contains","elem","selectionProps","useSingleSelection","undefined","handleResize","useCallback","entries","entry","contentRect","length","setAttribute","root","querySelector","offsetHeight","resizeObserver","observe","unobserve","jsx","Flex","align","width","mergeProps","currentKeyProps","focusRingProps","tabIndex","role","Collection","items","hasSeparator","separatorProps","HiddenAccessible","id"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ define(["exports","preact/jsx-runtime",'module',"./hooks/UNSAFE_useTabbableMode","./hooks/UNSAFE_useTranslationBundle"],function(e,s,a,n,r){"use strict";e.InlineHelpSource=function({children:e,source:a}){const l=r.useTranslationBundle("@oracle/oraclejet-preact").userAssistance_learnMore();e=null!=e?e:l;const{isTabbable:o,tabbableModeProps:t}=n.useTabbableMode();return s.jsx("a",Object.assign({class:"_1diipk5",target:"_blank",href:a},!o&&t,{children:e}))}});
2
+ //# sourceMappingURL=InlineHelpSource-3291084b.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"InlineHelpSource-8a22f914.js","sources":["../../src/UNSAFE_UserAssistance/InlineHelpSource.tsx"],"sourcesContent":["import { cssProps } from '@oracle/oraclejet-cssprops';\nimport { useTabbableMode } from '../hooks/UNSAFE_useTabbableMode';\nimport { useTranslationBundle } from '../hooks/UNSAFE_useTranslationBundle';\nimport { BundleType } from '../resources/nls/bundle';\n\nconst rootStyles = cssProps`${{\n color: 'var(--oj-c-PRIVATE-DO-NOT-USE-link-text-color)',\n lineHeight: 'inherit',\n textDecorationLine: 'var(--oj-c-PRIVATE-DO-NOT-USE-link-text-decoration-line)',\n cursor: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-cursor-clickable)',\n\n '&:visited': {\n color: 'var(--oj-c-PRIVATE-DO-NOT-USE-link-text-color-visited)'\n },\n\n '&:active': {\n color: 'var(--oj-c-PRIVATE-DO-NOT-USE-link-text-color-active)'\n },\n\n '&:hover': {\n textDecorationLine: 'var(--oj-c-PRIVATE-DO-NOT-USE-link-text-decoration-line-hover)',\n\n transitionProperty: 'text-decoration',\n transitionDuration: 'var(--oj-c-PRIVATE-DO-NOT-USE-animation-duration-long)'\n },\n\n // TODO: use cross-browser supported focus strategy\n '&:focus-visible': {\n outlineColor: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-focus-border-color)',\n outlineStyle: 'dotted',\n outlineWidth: '1px',\n outlineOffset: '-1px'\n }\n}}`;\n\ntype Props = {\n children?: string;\n source: string;\n};\n\nexport function InlineHelpSource({ children, source }: Props) {\n const translations = useTranslationBundle<BundleType>('@oracle/oraclejet-preact');\n const userAssistance_learnMoreStr = translations.userAssistance_learnMore();\n children = children ?? userAssistance_learnMoreStr;\n // JET-52914 - Implement Tabbable mode API contract in InputText\n // if not tabbable, spread tabbableModeProps on component\n const { isTabbable, tabbableModeProps } = useTabbableMode();\n // TODO: Implement and use a preact Link component instead of using an anchor tag\n return (\n <a class={rootStyles} target=\"_blank\" href={source} {...(!isTabbable && tabbableModeProps)}>\n {children}\n </a>\n );\n}\n"],"names":["rootStyles","InlineHelpSource","children","source","translations","useTranslationBundle","userAssistance_learnMoreStr","userAssistance_learnMore"],"mappings":";;;IAKA,MAAAA,UAAA,GAAA,oBAAA,CAAA;IAmCA,SAAAC,gBAAA,CAAA;MAAAC,QAAA;IAAAC,EAAAA,MAAAA;IAAA,CAAA,EAAA;IACE,EAAA,MAAAC,YAAA,GAAAC,sDAAA,CAAA,0BAAA,CAAA,CAAA;IACA,EAAA,MAAAC,2BAAA,GAAAF,YAAA,CAAAG,wBAAA,EAAA,CAAA;mGAFF;;;;;;yDAAA;;;;;;;;;IAaA;;;;;;;;;;;"}
1
+ {"version":3,"file":"InlineHelpSource-3291084b.js","sources":["../../src/UNSAFE_UserAssistance/InlineHelpSource.tsx"],"sourcesContent":["import { cssProps } from '@oracle/oraclejet-cssprops';\nimport { useTabbableMode } from '../hooks/UNSAFE_useTabbableMode';\nimport { useTranslationBundle } from '../hooks/UNSAFE_useTranslationBundle';\nimport { BundleType } from '../resources/nls/bundle';\n\nconst rootStyles = cssProps`${{\n color: 'var(--oj-c-PRIVATE-DO-NOT-USE-link-text-color)',\n lineHeight: 'inherit',\n textDecorationLine: 'var(--oj-c-PRIVATE-DO-NOT-USE-link-text-decoration-line)',\n cursor: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-cursor-clickable)',\n\n '&:visited': {\n color: 'var(--oj-c-PRIVATE-DO-NOT-USE-link-text-color-visited)'\n },\n\n '&:active': {\n color: 'var(--oj-c-PRIVATE-DO-NOT-USE-link-text-color-active)'\n },\n\n '&:hover': {\n textDecorationLine: 'var(--oj-c-PRIVATE-DO-NOT-USE-link-text-decoration-line-hover)',\n\n transitionProperty: 'text-decoration',\n transitionDuration: 'var(--oj-c-PRIVATE-DO-NOT-USE-animation-duration-long)'\n },\n\n // TODO: use cross-browser supported focus strategy\n '&:focus-visible': {\n outlineColor: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-focus-border-color)',\n outlineStyle: 'dotted',\n outlineWidth: '1px',\n outlineOffset: '-1px'\n }\n}}`;\n\ntype Props = {\n children?: string;\n source: string;\n};\n\nexport function InlineHelpSource({ children, source }: Props) {\n const translations = useTranslationBundle<BundleType>('@oracle/oraclejet-preact');\n const userAssistance_learnMoreStr = translations.userAssistance_learnMore();\n children = children ?? userAssistance_learnMoreStr;\n // JET-52914 - Implement Tabbable mode API contract in InputText\n // if not tabbable, spread tabbableModeProps on component\n const { isTabbable, tabbableModeProps } = useTabbableMode();\n // TODO: Implement and use a preact Link component instead of using an anchor tag\n return (\n <a class={rootStyles} target=\"_blank\" href={source} {...(!isTabbable && tabbableModeProps)}>\n {children}\n </a>\n );\n}\n"],"names":["children","source","userAssistance_learnMoreStr","useTranslationBundle","userAssistance_learnMore"],"mappings":"6KAwCA,UAAAA,SAAAA,EAAAC,OAAAA,IACE,MACAC,EADAC,uBAAA,4BACAC,2IArCF"}
@@ -0,0 +1,2 @@
1
+ define(["exports","preact/jsx-runtime",'module',"./utils/UNSAFE_classNames","./hooks/UNSAFE_usePress","./classNames-d0ddb6e6"],function(e,s,a,t,l,n){"use strict";const r={default:"_17b1b83",primary:"_1y0xmi9",secondary:"_2y99jy",standalone:"_14uwg9i",embedded:"_1h32ucq"},i=()=>{};e.Link=function({href:e,variant:a="default",placement:t="standalone",target:d,ariaLabelledBy:c,children:u,onClick:o}){const f=n.classNames([r.default,r[t],"default"!==a&&r[a]]),{pressProps:b}=l.usePress(null!=o?o:i);return s.jsx("a",Object.assign({href:e,"aria-labelledby":c,target:d},b,{class:f},{children:u}))}});
2
+ //# sourceMappingURL=Link-306d51c0.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Link-3169fd72.js","sources":["../../src/UNSAFE_Link/Link.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 { ComponentChildren } from 'preact';\nimport { cssProps } from '@oracle/oraclejet-cssprops';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { usePress } from '../hooks/UNSAFE_usePress';\n\ntype Props = {\n /**\n * Sets the URL that the hyperlink points to.\n */\n href: string;\n\n /**\n * Sets the variant.\n */\n variant?: 'default' | 'primary' | 'secondary';\n\n /**\n * Sets the placement.\n */\n placement?: 'standalone' | 'embedded';\n\n /**\n * Sets the target.\n */\n target?: string;\n\n /**\n * One or more ids (separated by spaces) of elements that label the Link.\n */\n ariaLabelledBy?: string;\n\n /**\n * Triggered when a link is clicked, whether by keyboard, mouse, or touch events.\n */\n onClick?: (event: Event) => void;\n\n /**\n * Specifies the children\n */\n children?: ComponentChildren;\n};\n\nconst styles = {\n default: cssProps`${{\n display: 'inline',\n color: 'var(--oj-c-link-text-color)',\n textDecorationColor: 'var(--oj-c-link-text-color)',\n textDecorationThickness: '1px',\n textUnderlineOffset: 'var(--oj-c-link-text-underline-offset)',\n cursor: 'var( --oj-c-PRIVATE-DO-NOT-USE-core-cursor-clickable)',\n '&:visited': { color: '--oj-c-link-text-color-visited' },\n '&:active': { color: '--oj-c-link-text-color-active' },\n '&:focus-visible': {\n outlineColor: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-focus-border-color)',\n outlineStyle: 'dotted',\n outlineWidth: '1px',\n outlineOffset: '1px'\n }\n }}`,\n primary: cssProps`${{\n '--oj-c-link-text-color': 'var(--oj-c-PRIVATE-DO-NOT-USE-core-text-color-primary)',\n '--oj-c-link-text-color-visited': 'var(--oj-c-PRIVATE-DO-NOT-USE-core-text-color-primary)',\n '--oj-c-link-text-color-active': 'var(--oj-c-PRIVATE-DO-NOT-USE-core-text-color-primary)'\n }}`,\n secondary: cssProps`${{\n '--oj-c-link-text-color': 'var(--oj-c-PRIVATE-DO-NOT-USE-core-text-color-secondary)',\n '--oj-c-link-text-color-visited': 'var(--oj-c-PRIVATE-DO-NOT-USE-core-text-color-secondary)',\n '--oj-c-link-text-color-active': 'var(--oj-c-PRIVATE-DO-NOT-USE-core-text-color-secondary)'\n }}`,\n standalone: cssProps`${{\n textDecorationLine: 'var(--oj-c-link-standalone-text-decoration)',\n '&:hover': { textDecorationLine: 'var(--oj-c-link-standalone-text-decoration-hover)' },\n '&:active': { textDecorationLine: 'var(--oj-c-link-standalone-text-decoration-hover)' }\n }}`,\n embedded: cssProps`${{\n textDecorationLine: 'var(--oj-c-link-embedded-text-decoration)',\n '&:hover': { textDecorationLine: 'var(--oj-c-link-embedded-text-decoration-hover)' },\n '&:active': { textDecorationLine: 'var(--oj-c-link-embedded-text-decoration-hover)' }\n }}`\n};\n\nconst noop = () => {};\n\nexport function Link({\n href,\n variant = 'default',\n placement = 'standalone',\n target,\n ariaLabelledBy,\n children,\n onClick\n}: Props) {\n const linkClass = classNames([\n styles.default,\n styles[placement],\n variant !== 'default' && styles[variant]\n ]);\n const { pressProps } = usePress(onClick ?? noop);\n return (\n <a\n href={href}\n aria-labelledby={ariaLabelledBy}\n target={target}\n {...pressProps}\n class={linkClass}>\n {children}\n </a>\n );\n}\n"],"names":["styles","noop","Link","href","variant","placement","target","ariaLabelledBy","children","onClick","default","pressProps","usePress"],"mappings":";;;IAiDA,MAAAA,MAAA,GAAA;eAAA,iBAAA;eAAA,gBAAA;iBAAA,kBAAA;kBAAA,oBAAA;;IAAA,CAAA,CAAA;;IAuCA,MAAAC,IAAA,GAAA,MAAA,EAAA,CAAA;;IAEA,SAAAC,IAAA,CAAA;MAAAC,IAAA;IAAAC,EAAAA,OAAA,GAAA,SAAA;IAAAC,EAAAA,SAAA,GAAA,YAAA;MAAAC,MAAA;MAAAC,cAAA;MAAAC,QAAA;IAAAC,EAAAA,OAAAA;IAAA,CAAA,EAAA;+CAUIT,MAAA,CAAAU,4BAEAN,OAAA,KAAA,SAAA,IAAAJ,MAAA,CAAAI,OAAA;MAEF,MAAA;IAAAO,IAAAA,UAAAA;IAAA,GAAA,GAAAC,8BAAA,CAAAH,OAAA,KAAA,IAAA,IAAAA,OAAA,KAAA,KAAA,CAAA,GAAAA,OAAA,GAAAR,IAAA,CAAA,CAAA;;;;;;;;;;IAWF;;;;;;;;;;;"}
1
+ {"version":3,"file":"Link-306d51c0.js","sources":["../../src/UNSAFE_Link/Link.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 { ComponentChildren } from 'preact';\nimport { cssProps } from '@oracle/oraclejet-cssprops';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { usePress } from '../hooks/UNSAFE_usePress';\n\ntype Props = {\n /**\n * Sets the URL that the hyperlink points to.\n */\n href: string;\n\n /**\n * Sets the variant.\n */\n variant?: 'default' | 'primary' | 'secondary';\n\n /**\n * Sets the placement.\n */\n placement?: 'standalone' | 'embedded';\n\n /**\n * Sets the target.\n */\n target?: string;\n\n /**\n * One or more ids (separated by spaces) of elements that label the Link.\n */\n ariaLabelledBy?: string;\n\n /**\n * Triggered when a link is clicked, whether by keyboard, mouse, or touch events.\n */\n onClick?: (event: Event) => void;\n\n /**\n * Specifies the children\n */\n children?: ComponentChildren;\n};\n\nconst styles = {\n default: cssProps`${{\n display: 'inline',\n color: 'var(--oj-c-link-text-color)',\n textDecorationColor: 'var(--oj-c-link-text-color)',\n textDecorationThickness: '1px',\n textUnderlineOffset: 'var(--oj-c-link-text-underline-offset)',\n cursor: 'var( --oj-c-PRIVATE-DO-NOT-USE-core-cursor-clickable)',\n '&:visited': { color: '--oj-c-link-text-color-visited' },\n '&:active': { color: '--oj-c-link-text-color-active' },\n '&:focus-visible': {\n outlineColor: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-focus-border-color)',\n outlineStyle: 'dotted',\n outlineWidth: '1px',\n outlineOffset: '1px'\n }\n }}`,\n primary: cssProps`${{\n '--oj-c-link-text-color': 'var(--oj-c-PRIVATE-DO-NOT-USE-core-text-color-primary)',\n '--oj-c-link-text-color-visited': 'var(--oj-c-PRIVATE-DO-NOT-USE-core-text-color-primary)',\n '--oj-c-link-text-color-active': 'var(--oj-c-PRIVATE-DO-NOT-USE-core-text-color-primary)'\n }}`,\n secondary: cssProps`${{\n '--oj-c-link-text-color': 'var(--oj-c-PRIVATE-DO-NOT-USE-core-text-color-secondary)',\n '--oj-c-link-text-color-visited': 'var(--oj-c-PRIVATE-DO-NOT-USE-core-text-color-secondary)',\n '--oj-c-link-text-color-active': 'var(--oj-c-PRIVATE-DO-NOT-USE-core-text-color-secondary)'\n }}`,\n standalone: cssProps`${{\n textDecorationLine: 'var(--oj-c-link-standalone-text-decoration)',\n '&:hover': { textDecorationLine: 'var(--oj-c-link-standalone-text-decoration-hover)' },\n '&:active': { textDecorationLine: 'var(--oj-c-link-standalone-text-decoration-hover)' }\n }}`,\n embedded: cssProps`${{\n textDecorationLine: 'var(--oj-c-link-embedded-text-decoration)',\n '&:hover': { textDecorationLine: 'var(--oj-c-link-embedded-text-decoration-hover)' },\n '&:active': { textDecorationLine: 'var(--oj-c-link-embedded-text-decoration-hover)' }\n }}`\n};\n\nconst noop = () => {};\n\nexport function Link({\n href,\n variant = 'default',\n placement = 'standalone',\n target,\n ariaLabelledBy,\n children,\n onClick\n}: Props) {\n const linkClass = classNames([\n styles.default,\n styles[placement],\n variant !== 'default' && styles[variant]\n ]);\n const { pressProps } = usePress(onClick ?? noop);\n return (\n <a\n href={href}\n aria-labelledby={ariaLabelledBy}\n target={target}\n {...pressProps}\n class={linkClass}>\n {children}\n </a>\n );\n}\n"],"names":["styles","noop","href","variant","placement","target","ariaLabelledBy","children","onClick","default","pressProps","usePress"],"mappings":"mKAiDA,MAAAA,EAAA,SAAA,mBAAA,qBAAA,qBAAA,gCAuCAC,EAAA,cAEA,UAAAC,KAAAA,EAAAC,QAAAA,EAAA,UAAAC,UAAAA,EAAA,aAAAC,OAAAA,EAAAC,eAAAA,EAAAC,SAAAA,EAAAC,QAAAA,0BAUIR,EAAAS,aAEA,YAAAN,GAAAH,EAAAG,MAEFO,WAAAA,GAAAC,EAAAA,SAAAH,MAAAA,EAAAA,EAAAP"}
@@ -0,0 +1,2 @@
1
+ define(["exports","preact/jsx-runtime","preact/hooks",'module',"./utils/UNSAFE_classNames","./utils/UNSAFE_mergeProps","./utils/UNSAFE_keys","./LoadMoreCollection-5b5f55ef","./PRIVATE_VirtualizedCollection","./hooks/UNSAFE_useTabbableMode","./UNSAFE_FocusTrap","./hooks/UNSAFE_useId","./classNames-d0ddb6e6","./FocusTrap-e0295e15","./hooks/PRIVATE_useSelection","./hooks/PRIVATE_useCurrentKey","./hooks/PRIVATE_useCollectionFocusRing","./hooks/PRIVATE_useTabbableModeSet","./hooks/PRIVATE_useItemAction","./UNSAFE_Skeleton","./UNSAFE_Flex","./utils/PRIVATE_collectionUtils","./UNSAFE_Selector","./VirtualizedCollection-3e679d7c","./Flex-1da2d394","./Skeleton-748d8598"],function(e,t,n,i,o,s,l,r,a,c,u,d,g,m,f,b,v,y,x,h,p,k,S,j,A,C){"use strict";const E=e=>{switch(e){case"listbox":return{list:"listbox",item:"presentation",cell:"option"};case"treegrid":return{list:"treegrid",item:"row",cell:"gridcell"};default:return{list:"grid",item:"row",cell:"gridcell"}}},T="oj-listview-item",w=".oj-listview-item",_="_41cleo",F="_10wom9e",R="_1fa3xnt",I="_1e76mqy",z="hz2ve7",K="_1tvavxx",P="_19erz8h",V="l1e0h",N="_1mdalge",M="fksoz0",O="_1nwjcc6";function U({children:e,itemKey:i,itemIndex:o,isFocused:s,isFocusRingVisible:l,isGridlineVisible:r,isSelected:a,isTopGridlineVisible:u=!1,isTabbable:f=!1,role:b,selectionMode:v,suggestion:y,currentItemVariant:x}){const h=n.useRef(null),p=n.useMemo(()=>E(b),[b]),k="option"===p.cell?{role:p.cell,"aria-posinset":o+1,"aria-setsize":-1}:{role:p.cell},S=g.classNames([_,T,s&&l&&N,r&&F,u&&R,L(v,a)&&!a&&I,a&&z,a&&"single"===v&&K,"end"===y&&!r&&!(a&&"single"===v)&&P,"highlight"===x&&s&&!a&&V]),j=g.classNames([M,"multiple"===v&&O]);return t.jsx("div",Object.assign({"aria-rowindex":o+1,"data-oj-key":i,class:S,ref:h,role:p.item},y&&{"data-oj-suggestion":!0},"number"==typeof i&&{"data-oj-key-type":"number"},{children:t.jsx("div",Object.assign({id:d.useId(),class:j,"aria-posinset":o+1,"aria-setsize":-1,onKeyDown:e=>{!f||"ArrowDown"!==e.key&&"ArrowUp"!==e.key||e.stopPropagation()},"aria-colindex":1,"aria-selected":"none"!==v?a:void 0},k,{children:t.jsx(c.TabbableModeContext.Provider,Object.assign({value:{isTabbable:f}},{children:t.jsx(m.FocusTrap,Object.assign({isDisabled:!f,restoreFocusRef:!1},{children:e}))}))}))}))}const L=(e,t)=>"none"!==e&&("multiple"===e||!t),D="sidhfr";function H({children:e,minimumCount:i=1}){const[o,s]=n.useState(!1);n.useEffect(()=>{setTimeout(()=>{s(!0)},50)},[]);const l=g.classNames([D]);return o&&e?t.jsx("div",Object.assign({class:l,role:"presentation"},{children:[...Array(i)].map((t,n)=>e(n))})):null}const q="wgzfnv",B="oryy4o",G="_16ne2zx";const Y=e=>{const t=null==e?void 0:e.data,n=$(t);if(0===n)return null;return t.slice(0,n).reduce((e,t,i)=>{const o=t.metadata.key;return i===n-1?e.set(o,"end"):e.set(o,!0),e},new Map)},$=e=>{if(!e)return 0;const t=e.findIndex(e=>!e.metadata.suggestion);return-1===t?0:t},J=(e,t)=>{if(e&&t){const n=t.getBoundingClientRect(),i=e.getBoundingClientRect();i.bottom>n.bottom?t.scrollTop=t.scrollTop+(i.bottom-n.bottom):i.top<n.top&&(t.scrollTop=t.scrollTop-(n.top-i.top))}},Q=(e,t)=>null!=t?t:{scroller:()=>e.current},W={all:!1,keys:new Set},X=(e,t)=>{const n=t.data.map(e=>e.metadata.key),i=n.indexOf(e.value.start),o=n.indexOf(e.value.end),s=Math.min(i,o),l=Math.max(i,o);return-1===s?{offset:0,count:t.totalSize}:n.slice(s,l+1)};function Z({sparkleHeight:e}){if(e<=0)return null;const n=e+"px",i=g.classNames([B]),o=g.classNames([G]);return t.jsx("div",Object.assign({class:o},{children:t.jsx("div",{class:i,style:{height:n}})}),"sparkle")}const ee=t.jsx(H,Object.assign({minimumCount:25},{children:()=>t.jsx(A.Flex,Object.assign({height:"12x",align:"center"},{children:t.jsx(C.Skeleton,{height:"4x"})}))})),te=t.jsx(H,Object.assign({minimumCount:3},{children:()=>t.jsx(A.Flex,Object.assign({height:"12x",align:"center"},{children:t.jsx(C.Skeleton,{height:"4x"})}))})),ne=(e,t)=>{if(t){const n=Math.min(t.offset,e.offset+e.totalSize),i=n-e.offset;i>0&&(e={offset:n,data:e.data.slice(i,i+t.count),totalSize:e.totalSize,sizePrecision:e.sizePrecision})}return e};e.List=function({accessibleSummary:e,allowTabbableMode:i=!0,children:o,currentKey:a,data:c,gridlines:u,loadingIndicator:d=ee,onCurrentKeyChange:m,onLoadRange:h,onSelectionChange:p,onItemAction:A,rangeExtractor:C,role:T="grid",selectedKeys:_=W,selectionMode:F="none",viewportConfig:R,currentItemVariant:I="none",isVirtualized:z=!0}){const K=n.useRef(null),P=n.useMemo(()=>E(T),[T]),V=n.useRef(),N=n.useRef(),M=n.useRef(),[O,L]=n.useState(0),D="none"===F?void 0:"multiple"===F,H=null===c?void 0:"exact"===c.sizePrecision?c.totalSize:-1,B=g.classNames([q]),{currentKeyProps:G}=b.useCurrentKey(e=>k.keyExtractor(e,w),k.getPrevNextKey(K.current,a,!0,w),k.getPrevNextKey(K.current,a,!1,w),a,m),$=e=>{var t;return!!(null===(t=K.current)||void 0===t?void 0:t.contains(e))},[ie,oe]=v.useCollectionFocusRing($,["ArrowUp","ArrowDown"]);let se=!1;const[le,re]=y.useTabbableModeSet($,e=>k.keyExtractor(e,w),a,(e,t)=>{var n;(null===e||$(e))&&(t?(se=!0,setTimeout(()=>{var e;null===(e=K.current)||void 0===e||e.focus()},0)):null===(n=K.current)||void 0===n||n.focus())},e=>{m&&m({value:e})});n.useEffect(()=>{if(null!=a&&K.current){const e=k.findElementByKey(K.current,a,w);if(e){const t=null==R?void 0:R.scroller();J(e,null!=t?t:K.current);const n=e.querySelector(`[role=${P.cell}]`);n&&K.current.setAttribute("aria-activedescendant",n.id)}}},[a,c,P.cell,R]);const ae=n.useCallback(e=>{p&&(!1===e.value.all&&e.value.keys.size>0&&(V.current=Array.from(e.value.keys.values()).pop()),p(e))},[V,p]),ce=n.useCallback(e=>{if(c&&p){const t=X(e,c);Array.isArray(t)?p({value:{all:!1,keys:new Set(t)},target:null}):(N.current={detail:e,range:{offset:c.offset,count:c.data.length}},h(t))}},[c,p,h]),ue=n.useCallback(()=>{if(K.current&&m&&(!i||le(void 0))){const e=M.current||k.getFirstVisibleKey(K.current,w);l.isKeyDefined(e)&&m({value:e})}},[i,m,le]),de=n.useCallback(e=>{var t,n;const i=k.keyExtractor(e.target,w);i&&"checkbox"===(null===(t=e.relatedTarget)||void 0===t?void 0:t.getAttribute("type"))&&(null===(n=K.current)||void 0===n||n.focus(),m&&i&&m({value:i}))},[m]),ge=n.useCallback(e=>{!l.isKeyDefined(a)&&m&&ue(),!i&&de(e)},[i,a,ue,de,m]),{selectionProps:me}=f.useSelection(e=>e===K.current?void 0===a?null:a:k.keyExtractor(e,w),_,F,!1,"replace",ae,V.current,a,(e,t)=>k.getPrevNextKey(K.current,e,t,w),e=>{if(K.current){const t=k.findElementByKey(K.current,e,w);if(t){const e=null==R?void 0:R.scroller();J(t,null!=e?e:K.current)}}},ce);if(c&&void 0!==N.current&&p){const e=X(N.current.detail,c);Array.isArray(e)&&p({value:{all:!1,keys:new Set(e)},target:null});const t=N.current?N.current.range:{offset:c.offset,count:c.data.length};c=ne(c,t),N.current=void 0,h(t)}const fe=n.useMemo(()=>Y(c),[c]),be=t.jsx(Z,{sparkleHeight:O}),ve=x.useItemAction(a,c,A,w);n.useEffect(()=>{var e,t;if(fe){const n=null===(e=K.current)||void 0===e?void 0:e.querySelector("."+j.PLACEHOLDER_STYLE_CLASS);let i=(null==n?void 0:n.offsetHeight)||0;const o=null===(t=K.current)||void 0===t?void 0:t.querySelectorAll("[data-oj-suggestion]");null==o||o.forEach(e=>i+=e.offsetHeight),L(i)}},[fe]);const ye=n.useCallback(e=>{const n="multiple"===F?()=>t.jsx(S.Selector,{onChange:ae,rowKey:e.data.metadata.key,selectedKeys:_}):void 0;return{index:e.index,data:e.data.data,metadata:e.data.metadata,selector:n}},[F,_,ae]),xe=e=>{const n=ye(e),s=null==fe?void 0:fe.get(n.metadata.key),r=i&&le(n.metadata.key),d=a===n.metadata.key&&!r,g=l.containsKey(_,n.metadata.key);return t.jsx(U,Object.assign({isFocused:d,isFocusRingVisible:ie&&!se,isGridlineVisible:(m=n.index,"visible"===(null==u?void 0:u.item)&&(m+1!==(null==c?void 0:c.totalSize)||"visible"===(null==u?void 0:u.bottom))),isSelected:g,isTabbable:i&&le(n.metadata.key),itemIndex:n.index,itemKey:n.metadata.key,role:T,selectionMode:F,currentItemVariant:I},s&&{suggestion:s},0===n.index&&{isTopGridlineVisible:"visible"===(null==u?void 0:u.item)&&"visible"===(null==u?void 0:u.top)},{children:o(n)}),n.metadata.key);var m};R=Q(K,R);const he=z?t.jsx(j.VirtualizedCollection,Object.assign({data:c,itemSelector:w,loadMoreIndicator:te,onLoadRange:h,rangeExtractor:C,suggestions:be,viewportConfig:R},{children:xe})):t.jsx(r.LoadMoreCollection,Object.assign({data:c,loadMoreIndicator:te,onLoadRange:h,suggestions:be,viewportConfig:R},{children:xe})),pe=n.useCallback(e=>{const t=k.keyExtractor(e.target,w);l.isKeyDefined(t)&&(M.current=t)},[]);return t.jsx("div",Object.assign({},s.mergeProps(i?re:{},G,oe,me,ve,{onFocus:ge,onPointerDown:pe}),{role:T,"aria-rowcount":H,"aria-colcount":1,ref:K,class:B,tabIndex:0,"aria-label":e,"aria-multiselectable":D},{children:null==c?d:he}))},e.SkeletonContainer=H});
2
+ //# sourceMappingURL=List-83ce5c9c.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"List-26b59d92.js","sources":["../../src/PRIVATE_List/ListRoles.ts","../../src/PRIVATE_List/ListItem.tsx","../../src/PRIVATE_List/SkeletonContainer.tsx","../../src/PRIVATE_List/List.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 */\n\nimport { Roles } from '../UNSAFE_ListView';\n\n/**\n * List Roles need to be kept in matching sets, this module encapsulates the sets\n *\n * @param ariaRole\n * @returns matching, valid set of roles\n */\n\nconst getListViewRoles = (ariaRole: Roles) => {\n switch (ariaRole) {\n case 'listbox':\n return { list: 'listbox', item: 'presentation', cell: 'option' };\n case 'treegrid':\n return { list: 'treegrid', item: 'row', cell: 'gridcell' };\n default:\n return { list: 'grid', item: 'row', cell: 'gridcell' };\n }\n};\n\nexport { getListViewRoles };\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 */\nimport { ComponentChildren } from 'preact';\nimport { useRef, useMemo } from 'preact/hooks';\nimport { cssProps } from '@oracle/oraclejet-cssprops';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { TabbableModeContext } from '../hooks/UNSAFE_useTabbableMode';\nimport { SelectionMode, CurrentItemVariant } from '../UNSAFE_Collection';\nimport { FocusTrap } from '../UNSAFE_FocusTrap';\nimport { useId } from '../hooks/UNSAFE_useId';\nimport { Roles } from '../UNSAFE_ListView';\nimport { getListViewRoles } from './ListRoles';\n\n// default style class for items in ListView\nexport const ITEM_STYLE_CLASS = 'oj-listview-item';\nexport const ITEM_SELECTOR = '.' + ITEM_STYLE_CLASS;\n\nconst styles = {\n base: cssProps`${{\n display: 'flex',\n alignItems: 'center',\n minHeight: 'var(--oj-collection-list-row-height)',\n boxSizing: 'border-box',\n backgroundImage:\n 'linear-gradient(var(--oj-c-PRIVATE-DO-NOT-USE-core-divider-color),var(--oj-c-PRIVATE-DO-NOT-USE-core-divider-color))',\n backgroundSize: 0,\n backgroundPosition: '0 100%',\n backgroundRepeat: 'no-repeat',\n borderTop: '1px solid transparent'\n }}`,\n gridlines: cssProps`${{\n backgroundSize: '100% 1px'\n }}`,\n gridlineTop: cssProps`${{\n backgroundImage: `linear-gradient(var(--oj-c-PRIVATE-DO-NOT-USE-core-divider-color),var(--oj-c-PRIVATE-DO-NOT-USE-core-divider-color)),\n linear-gradient(var(--oj-c-PRIVATE-DO-NOT-USE-core-divider-color),var(--oj-c-PRIVATE-DO-NOT-USE-core-divider-color))`,\n backgroundPosition: '0 100%, 0 -1px',\n backgroundSize: '100% 1px, 100% 1px'\n }}`,\n selectable: cssProps`${{\n '&:hover': {\n backgroundColor: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-bg-color-hover);'\n }\n }}`,\n selected: cssProps`${{\n backgroundColor: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-bg-color-selected)'\n }}`,\n selectedSingle: cssProps`${{\n borderTop: '1px solid var(--oj-c-PRIVATE-DO-NOT-USE-core-border-color-selected)',\n boxShadow: 'inset 0 -1px var(--oj-c-PRIVATE-DO-NOT-USE-core-border-color-selected)'\n }}`,\n suggestionEnd: cssProps`${{\n backgroundSize: '100% 1px'\n }}`,\n highlight: cssProps`${{\n backgroundColor: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-bg-color-hover);'\n }}`,\n focused: cssProps`${{\n outlineStyle: 'dotted',\n outlineWidth: '1px',\n outlineColor: 'var(---oj-c-PRIVATE-DO-NOT-USE-core-focus-border-color)',\n outlineOffset: '-1px'\n }}`\n};\n\nconst cellStyles = {\n base: cssProps`${{\n flexGrow: '1'\n }}`,\n checkboxContainer: cssProps`${{\n display: 'flex'\n }}`\n};\n\n/**\n * Props for the ListViewItem Component\n */\nexport type Props<K> = {\n children: ComponentChildren;\n itemKey: K;\n itemIndex: number;\n isFocused: boolean;\n isFocusRingVisible: boolean;\n isGridlineVisible: boolean;\n isSelected: boolean;\n isTopGridlineVisible?: boolean;\n isTabbable?: boolean;\n role: Roles;\n selectionMode: SelectionMode;\n suggestion?: 'end' | true;\n currentItemVariant?: CurrentItemVariant;\n};\n\n/**\n * The internal component used to render a single item in ListView.\n */\nexport function ListViewItem<K extends string | number>({\n children,\n itemKey,\n itemIndex,\n isFocused,\n isFocusRingVisible,\n isGridlineVisible,\n isSelected,\n isTopGridlineVisible = false,\n isTabbable = false,\n role,\n selectionMode,\n suggestion,\n currentItemVariant\n}: Props<K>) {\n const rootRef = useRef<HTMLDivElement>(null);\n\n const roles = useMemo(() => getListViewRoles(role), [role]);\n\n // some roles come with related aria attributes which need to be set\n const cellRoleAttributes =\n roles.cell === 'option'\n ? {\n role: roles.cell,\n 'aria-posinset': itemIndex + 1,\n 'aria-setsize': -1\n }\n : {\n role: roles.cell\n };\n\n // don't bubble Arrow Up and Down events to parent when in isTabbable mode\n // this bubbling causes the outer CollectionFocus ring to change index while in the isTabbable mode.\n const handleKeyDown = (event: KeyboardEvent) => {\n if (isTabbable && (event.key === 'ArrowDown' || event.key === 'ArrowUp')) {\n event.stopPropagation();\n }\n };\n\n const classes = classNames([\n styles.base,\n ITEM_STYLE_CLASS,\n isFocused && isFocusRingVisible && styles.focused,\n isGridlineVisible && styles.gridlines,\n isTopGridlineVisible && styles.gridlineTop,\n isSelectable(selectionMode, isSelected) && !isSelected && styles.selectable,\n isSelected && styles.selected,\n isSelected && selectionMode === 'single' && styles.selectedSingle,\n suggestion === 'end' &&\n !isGridlineVisible &&\n !(isSelected && selectionMode === 'single') &&\n styles.suggestionEnd,\n currentItemVariant === 'highlight' && isFocused && !isSelected && styles.highlight\n ]);\n\n const cellClasses = classNames([\n cellStyles.base,\n selectionMode === 'multiple' && cellStyles.checkboxContainer\n ]);\n\n // todo: use translated text for selector\n // note cannot put focus on gridcell div since JAWS will not read the aria-rowindex\n // correctly, so unfortunately needed another div\n return (\n <div\n aria-rowindex={itemIndex + 1}\n data-oj-key={itemKey}\n class={classes}\n ref={rootRef}\n role={roles.item}\n {...(suggestion && { 'data-oj-suggestion': true })}\n {...(typeof itemKey === 'number' && { 'data-oj-key-type': 'number' })}>\n <div\n id={useId()}\n class={cellClasses}\n aria-posinset={itemIndex + 1}\n aria-setsize={-1}\n onKeyDown={handleKeyDown}\n aria-colindex={1}\n aria-selected={selectionMode !== 'none' ? isSelected : undefined}\n {...cellRoleAttributes}>\n <TabbableModeContext.Provider value={{ isTabbable }}>\n <FocusTrap isDisabled={!isTabbable} restoreFocusRef={false}>\n {children}\n </FocusTrap>\n </TabbableModeContext.Provider>\n </div>\n </div>\n );\n}\n\n/**\n * Helper method to determine whether item is selectable\n * @returns true if item is selectable (show hover effect), false otherwise\n */\nconst isSelectable = (selectionMode: SelectionMode, isItemSelected: boolean) => {\n return selectionMode !== 'none' && (selectionMode === 'multiple' || !isItemSelected);\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 */\nimport { ComponentChildren } from 'preact';\nimport { useState, useEffect } from 'preact/hooks';\nimport { cssProps } from '@oracle/oraclejet-cssprops';\nimport { classNames } from '../utils/UNSAFE_classNames';\n\ntype Props = {\n /**\n * Allows to pass and access the properties from child elements\n **/\n children?: (index: number) => ComponentChildren;\n /**\n * Allows to specify number of skeletons to be rendered on initial load\n **/\n minimumCount?: number;\n};\n\nconst containerStyle = {\n base: cssProps`${{\n height: '100%',\n overflowX: 'hidden',\n overflowY: 'hidden'\n }}`\n};\n\n/**\n * Allows to specify the time delay for rendering the component\n **/\nconst timerValue = 50;\n\n/**\n * SkeletonContainer renders 'minimumCount' number of skeletons\n * of the variant specified from its child element - Skeleton's prop after\n * 'timerValue' ms delay\n **/\nexport function SkeletonContainer({ children, minimumCount = 1 }: Props) {\n const [isVisible, setIsVisible] = useState(false);\n\n useEffect(() => {\n setTimeout(() => {\n setIsVisible(true);\n }, timerValue);\n }, []);\n\n const containerClasses = classNames([containerStyle.base]);\n return isVisible && children ? (\n <div class={containerClasses} role=\"presentation\">\n {[...Array(minimumCount)].map((_element, index) => children(index))}\n </div>\n ) : null;\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 */\nimport { RefObject } from 'preact';\nimport { useRef, useCallback, useEffect, useState, useMemo } from 'preact/hooks';\nimport { cssProps } from '@oracle/oraclejet-cssprops';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { mergeProps } from '../utils/UNSAFE_mergeProps';\nimport { containsKey, Keys, isKeyDefined } from '../utils/UNSAFE_keys';\nimport { DataState, ItemContext, Metadata, Range, SelectionDetail } from '../UNSAFE_Collection';\nimport { LoadMoreCollection } from '../UNSAFE_LoadMoreCollection/LoadMoreCollection';\nimport { VirtualizedCollection, PLACEHOLDER_STYLE_CLASS } from '../PRIVATE_VirtualizedCollection';\nimport { ViewportConfig } from '../hooks/UNSAFE_useViewportIntersect';\nimport { ListViewItem, ITEM_SELECTOR } from './ListItem';\nimport { SelectionRangeDetail, useSelection } from '../hooks/PRIVATE_useSelection';\nimport { useCurrentKey } from '../hooks/PRIVATE_useCurrentKey';\nimport { useCollectionFocusRing } from '../hooks/PRIVATE_useCollectionFocusRing';\nimport { useTabbableModeSet } from '../hooks/PRIVATE_useTabbableModeSet';\nimport { useItemAction } from '../hooks/PRIVATE_useItemAction';\nimport { SkeletonContainer } from './SkeletonContainer';\nimport { Skeleton } from '../UNSAFE_Skeleton';\nimport { Flex } from '../UNSAFE_Flex';\nimport {\n getFirstVisibleKey,\n getPrevNextKey,\n findElementByKey,\n keyExtractor\n} from '../utils/PRIVATE_collectionUtils';\nimport { Selector } from '../UNSAFE_Selector';\nimport { Props } from '../UNSAFE_ListView';\nimport { getListViewRoles } from './ListRoles';\n\nconst styles = {\n base: cssProps`${{\n height: '100%',\n userSelect: 'none',\n overflowY: 'inherit',\n '&:focus': {\n outlineStyle: 'none'\n }\n }}`\n};\n\nconst sparkleStyles = {\n base: cssProps`${{\n position: 'absolute',\n top: 0,\n width: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-spacing-1x)',\n zIndex: 1,\n display: 'block',\n backgroundImage: 'var(--oj-c-PRIVATE-DO-NOT-USE-collection-sparkle-img)',\n backgroundRepeat: 'no-repeat',\n backgroundSize: '100% 100%'\n }}`,\n container: cssProps`${{\n position: 'relative'\n }}`\n};\n\n/**\n * Component that renders items as a flat list.\n * In order to maximize performance, only items that are visible in the viewport are rendered.\n */\nexport function List<K extends string | number, D>({\n accessibleSummary,\n allowTabbableMode = true,\n children,\n currentKey,\n data,\n gridlines,\n loadingIndicator = defaultLoadingIndicator,\n onCurrentKeyChange,\n onLoadRange,\n onSelectionChange,\n onItemAction,\n rangeExtractor,\n role = 'grid',\n selectedKeys = emptyKeys as Keys<K>,\n selectionMode = 'none',\n viewportConfig,\n currentItemVariant = 'none',\n isVirtualized = true\n}: Props<K, D>) {\n const rootRef = useRef<HTMLDivElement>(null);\n const listRoles = useMemo(() => getListViewRoles(role), [role]);\n\n // tracking the anchor key which is used for shift+click selection\n const anchorKey = useRef<K | undefined>();\n\n // tracking pending selection/current key that is not in current data\n const pendingSelection = useRef<{ detail: SelectionRangeDetail<K>; range: Range }>();\n const pendingCurrentKey = useRef<K>();\n\n // tracking sparkle height\n const [sparkleHeight, setSparkleHeight] = useState<number>(0);\n\n const showGridline = (index: number) => {\n // show bottom gridlines for each item, and for the last item if specified\n return (\n gridlines?.item === 'visible' &&\n (index + 1 !== data?.totalSize || gridlines?.bottom === 'visible')\n );\n };\n\n const showGridlineTop = () => {\n // show the top gridline for the first item\n return gridlines?.item === 'visible' && gridlines?.top === 'visible';\n };\n\n const ariaMultiSelectable = selectionMode === 'none' ? undefined : selectionMode === 'multiple';\n const ariaRowCount =\n data === null ? undefined : data.sizePrecision === 'exact' ? data.totalSize : -1;\n\n const classes = classNames([styles.base]);\n\n const { currentKeyProps } = useCurrentKey(\n (element) => keyExtractor(element, ITEM_SELECTOR),\n getPrevNextKey(rootRef.current, currentKey, true, ITEM_SELECTOR),\n getPrevNextKey(rootRef.current, currentKey, false, ITEM_SELECTOR),\n currentKey,\n onCurrentKeyChange\n );\n\n const listViewContains = (elem: Element | null) => {\n return !!rootRef.current?.contains(elem);\n };\n\n const [showFocusRing, focusRingProps] = useCollectionFocusRing(listViewContains, [\n 'ArrowUp',\n 'ArrowDown'\n ]);\n\n let pendingFocusRingChange = false;\n const [isCurrentTabbableKey, tabbableModeProps] = useTabbableModeSet(\n listViewContains,\n (element) => keyExtractor(element, ITEM_SELECTOR) as K,\n currentKey,\n // handle clean-up on disabling of the mode\n (target: EventTarget | null, isKeyboardEvent) => {\n if (target === null || listViewContains(target as Element)) {\n // delay focus reset for keyboard disable so focus is reset to ListView after the FocusTrap blur lifecycle completes.\n // pointer initiated changes will fire the onBlur organically and delaying the focus, just generates an unwanted second blur\n if (isKeyboardEvent) {\n // do not show a focus ring during this timeOut\n pendingFocusRingChange = true;\n setTimeout(() => {\n rootRef.current?.focus();\n }, 0);\n } else {\n rootRef.current?.focus();\n }\n }\n },\n // set currentKey when mode is enabled\n (key: K) => {\n onCurrentKeyChange && onCurrentKeyChange({ value: key });\n }\n );\n\n useEffect(() => {\n if (currentKey != null && rootRef.current) {\n const elem = findElementByKey(rootRef.current, currentKey, ITEM_SELECTOR);\n if (elem) {\n const scroller = viewportConfig?.scroller();\n // make sure item is visible\n scrollToVisible(elem, scroller != null ? scroller : rootRef.current);\n const cell = elem.querySelector(`[role=${listRoles.cell}]`);\n // update aria-activedescendant for screenreader\n if (cell) {\n rootRef.current.setAttribute('aria-activedescendant', cell.id);\n }\n }\n }\n // listen to data because the current item would re-render when the virtualizer\n // is fetching data or updating the data, i.e. the id of current item would be updated,\n // so the currentKey itself couldn't guarantee the root has latest aria-activedescendant\n }, [currentKey, data, listRoles.cell, viewportConfig]);\n\n const handleSelectionChange = useCallback(\n (detail: SelectionDetail<K>) => {\n if (onSelectionChange) {\n if (detail.value.all === false && detail.value.keys.size > 0) {\n // the last key selected by a user gesture is the anchor key\n anchorKey.current = Array.from(detail.value.keys.values()).pop();\n }\n onSelectionChange(detail);\n }\n },\n [anchorKey, onSelectionChange]\n );\n\n const handleSelectionRangeChange = useCallback(\n (detail: SelectionRangeDetail<K>) => {\n if (data && onSelectionChange) {\n const value = handleSelectionRange(detail, data);\n if (Array.isArray(value)) {\n onSelectionChange({ value: { all: false, keys: new Set(value) }, target: null });\n } else {\n pendingSelection.current = {\n detail: detail,\n range: { offset: data.offset, count: data.data.length }\n };\n onLoadRange(value);\n }\n }\n },\n [data, onSelectionChange, onLoadRange]\n );\n\n const handleInitialFocus = useCallback(() => {\n if (\n rootRef.current &&\n onCurrentKeyChange &&\n (!allowTabbableMode || isCurrentTabbableKey(undefined))\n ) {\n const firstKey =\n pendingCurrentKey.current || (getFirstVisibleKey(rootRef.current, ITEM_SELECTOR) as K);\n if (isKeyDefined(firstKey)) {\n onCurrentKeyChange({ value: firstKey });\n }\n }\n }, [allowTabbableMode, onCurrentKeyChange, isCurrentTabbableKey]);\n\n /**\n * Used by allowTabbableMode = false, to prevent focus from getting onto checkboxes on click\n * @param event\n */\n const handleSelectorFocusCapture = useCallback(\n (event: FocusEvent) => {\n const key = keyExtractor(event.target as HTMLElement, ITEM_SELECTOR);\n if (key && (event.relatedTarget as HTMLElement)?.getAttribute('type') === 'checkbox') {\n rootRef.current?.focus();\n if (onCurrentKeyChange && key) {\n onCurrentKeyChange({ value: key as K });\n }\n }\n },\n [onCurrentKeyChange]\n );\n\n const handleFocus = useCallback(\n (event: FocusEvent) => {\n !isKeyDefined(currentKey) && onCurrentKeyChange && handleInitialFocus();\n !allowTabbableMode && handleSelectorFocusCapture(event);\n },\n [\n allowTabbableMode,\n currentKey,\n handleInitialFocus,\n handleSelectorFocusCapture,\n onCurrentKeyChange\n ]\n );\n\n const { selectionProps } = useSelection(\n (element: HTMLElement) => {\n if (element === rootRef.current) {\n return currentKey === undefined ? null : currentKey;\n }\n return keyExtractor(element, ITEM_SELECTOR) as K;\n },\n selectedKeys,\n selectionMode,\n false,\n 'replace',\n handleSelectionChange,\n anchorKey.current,\n currentKey,\n (currentKey: K | undefined, isPrev: boolean) =>\n getPrevNextKey(rootRef.current, currentKey, isPrev, ITEM_SELECTOR),\n (key: K) => {\n if (rootRef.current) {\n const elem = findElementByKey(rootRef.current, key, ITEM_SELECTOR);\n if (elem) {\n const scroller = viewportConfig?.scroller();\n scrollToVisible(elem, scroller != null ? scroller : rootRef.current);\n }\n }\n },\n handleSelectionRangeChange\n );\n\n if (data && pendingSelection.current !== undefined && onSelectionChange) {\n const keys = handleSelectionRange(pendingSelection.current.detail, data);\n if (Array.isArray(keys)) {\n onSelectionChange({ value: { all: false, keys: new Set(keys) }, target: null });\n }\n const range = pendingSelection.current\n ? pendingSelection.current.range\n : { offset: data.offset, count: data.data.length };\n data = adjustDataState(data, range);\n pendingSelection.current = undefined;\n onLoadRange(range);\n }\n\n const suggestions = useMemo(() => findSuggestions(data), [data]);\n\n // TODO: check suggestions before Sparkle would cause a scrolling issue\n const sparkleIndicator = <Sparkle sparkleHeight={sparkleHeight}></Sparkle>;\n\n const itemActionProps = useItemAction(currentKey, data, onItemAction, ITEM_SELECTOR);\n\n useEffect(() => {\n // update sparkleHeight only when we have suggestions\n // avoid unnecessary iterating through elements\n if (suggestions) {\n const placeholder = rootRef.current?.querySelector(\n '.' + PLACEHOLDER_STYLE_CLASS\n ) as HTMLElement;\n let height = placeholder?.offsetHeight || 0;\n const suggestionItems = rootRef.current?.querySelectorAll('[data-oj-suggestion]');\n suggestionItems?.forEach((item) => (height += (item as HTMLElement).offsetHeight));\n setSparkleHeight(height);\n }\n }, [suggestions]);\n\n // returns an ListItemContext based on ItemContext (added metadata and selector)\n const getItemContext = useCallback(\n (context: ItemContext<{ data: D; metadata: Metadata<K> }>) => {\n const selectorRenderer =\n selectionMode === 'multiple'\n ? () => (\n <Selector\n onChange={handleSelectionChange}\n rowKey={context.data.metadata.key}\n selectedKeys={selectedKeys}></Selector>\n )\n : undefined;\n\n return {\n index: context.index,\n data: context.data.data,\n metadata: context.data.metadata,\n selector: selectorRenderer\n };\n },\n [selectionMode, selectedKeys, handleSelectionChange]\n );\n\n const childrenComponent = (context: ItemContext<{ data: D; metadata: Metadata<K> }>) => {\n const listItemContext = getItemContext(context);\n const suggestion = suggestions?.get(listItemContext.metadata.key);\n const isTabbable = allowTabbableMode && isCurrentTabbableKey(listItemContext.metadata.key);\n const isFocused = currentKey === listItemContext.metadata.key && !isTabbable;\n const isSelected = containsKey(selectedKeys, listItemContext.metadata.key);\n return (\n <ListViewItem\n key={listItemContext.metadata.key}\n isFocused={isFocused}\n isFocusRingVisible={showFocusRing && !pendingFocusRingChange}\n isGridlineVisible={showGridline(listItemContext.index)}\n isSelected={isSelected}\n isTabbable={allowTabbableMode && isCurrentTabbableKey(listItemContext.metadata.key)}\n itemIndex={listItemContext.index}\n itemKey={listItemContext.metadata.key}\n role={role}\n selectionMode={selectionMode}\n currentItemVariant={currentItemVariant}\n {...(suggestion && { suggestion })}\n {...(listItemContext.index === 0 && { isTopGridlineVisible: showGridlineTop() })}>\n {children(listItemContext)}\n </ListViewItem>\n );\n };\n\n viewportConfig = getViewportConfig(rootRef, viewportConfig);\n const collectionComponent = isVirtualized ? (\n <VirtualizedCollection\n data={data}\n itemSelector={ITEM_SELECTOR}\n loadMoreIndicator={defaultLoadMoreIndicator}\n onLoadRange={onLoadRange}\n rangeExtractor={rangeExtractor}\n suggestions={sparkleIndicator}\n viewportConfig={viewportConfig}>\n {childrenComponent}\n </VirtualizedCollection>\n ) : (\n <LoadMoreCollection\n data={data}\n loadMoreIndicator={defaultLoadMoreIndicator}\n onLoadRange={onLoadRange}\n suggestions={sparkleIndicator}\n viewportConfig={viewportConfig}>\n {childrenComponent}\n </LoadMoreCollection>\n );\n\n /**\n * Need to track pointer down element to set currentItem when initial focus happens\n */\n const handlePointerDown = useCallback((event: PointerEvent) => {\n const key = keyExtractor(event.target as HTMLElement, ITEM_SELECTOR);\n if (isKeyDefined(key)) pendingCurrentKey.current = key as K;\n }, []);\n\n // if data is not specified, listview should show loading indicator\n // todo: replace placeholder with actual SkeletonContainer component (Ash is working on)\n return (\n <div\n {...mergeProps(\n allowTabbableMode ? tabbableModeProps : {},\n currentKeyProps,\n focusRingProps,\n selectionProps,\n itemActionProps,\n { onFocus: handleFocus, onPointerDown: handlePointerDown }\n )}\n role={role}\n aria-rowcount={ariaRowCount}\n aria-colcount={1}\n ref={rootRef}\n class={classes}\n tabIndex={0}\n aria-label={accessibleSummary}\n aria-multiselectable={ariaMultiSelectable}>\n {data == null ? loadingIndicator : collectionComponent}\n </div>\n );\n}\n\n/**\n * A helper function that finds the data with suggestions, and\n * returns the corresponding keys\n * @param dataState\n */\nconst findSuggestions = <K, D>(dataState?: DataState<K, D> | null) => {\n const data = dataState?.data;\n const count = getSuggestionsCount(data);\n if (count === 0) {\n return null;\n }\n\n const suggestionsData = data!.slice(0, count);\n return suggestionsData.reduce((suggestions, value, index) => {\n const key = value.metadata.key;\n\n if (index === count - 1) {\n suggestions.set(key, 'end');\n } else {\n suggestions.set(key, true);\n }\n\n return suggestions;\n }, new Map<K, 'end' | true>());\n};\n\n/**\n * A helper function that finds the number of suggestions\n * @param data\n */\nconst getSuggestionsCount = <K, D>(data?: DataState<K, D>['data']) => {\n if (!data) {\n return 0;\n }\n\n const index = data.findIndex((value) => !value.metadata.suggestion);\n return index === -1 ? 0 : index;\n};\n\n/**\n * A helper function to make sure specified elem is visible in the specified container\n */\nconst scrollToVisible = (elem: Element, scroller: Element) => {\n if (elem && scroller) {\n const scrollerBounds = scroller.getBoundingClientRect();\n const elemBounds = elem.getBoundingClientRect();\n if (elemBounds.bottom > scrollerBounds.bottom) {\n scroller.scrollTop = scroller.scrollTop + (elemBounds.bottom - scrollerBounds.bottom);\n } else if (elemBounds.top < scrollerBounds.top) {\n scroller.scrollTop = scroller.scrollTop - (scrollerBounds.top - elemBounds.top);\n }\n }\n};\n\nconst getViewportConfig = (rootRef: RefObject<HTMLElement>, config?: ViewportConfig) => {\n return (\n config ?? {\n scroller: () => {\n return rootRef.current;\n }\n }\n );\n};\n\nconst emptyKeys = { all: false, keys: new Set() };\n\nconst handleSelectionRange = <K, D>(\n detail: SelectionRangeDetail<K>,\n dataState: DataState<K, D>\n) => {\n const keys = dataState.data.map((value: { data: D; metadata: Metadata<K> }) => {\n return value.metadata.key;\n });\n const startIndex = keys.indexOf(detail.value.start);\n const endIndex = keys.indexOf(detail.value.end);\n const minIndex = Math.min(startIndex, endIndex);\n const maxIndex = Math.max(startIndex, endIndex);\n if (minIndex === -1) {\n // return a range to fetch so we can find all the keys, maxIndex should not be -1\n return { offset: 0, count: dataState.totalSize };\n } else {\n // range of keys are in the current viewport, return them\n return keys.slice(minIndex, maxIndex + 1);\n }\n};\n\n/**\n * A sparkle component for smart suggestion indicator in ListView\n * @param sparkleHeight the height of sparkle\n */\nexport function Sparkle({ sparkleHeight }: { sparkleHeight: number }) {\n if (sparkleHeight <= 0) {\n return null;\n }\n\n const height = sparkleHeight + 'px';\n const sparkleClasses = classNames([sparkleStyles.base]);\n const containerClasses = classNames([sparkleStyles.container]);\n\n return (\n <div key=\"sparkle\" class={containerClasses}>\n <div class={sparkleClasses} style={{ height }}></div>\n </div>\n );\n}\n\nconst defaultLoadingIndicator = (\n <SkeletonContainer minimumCount={25}>\n {() => {\n return (\n <Flex height=\"12x\" align=\"center\">\n <Skeleton height=\"4x\" />\n </Flex>\n );\n }}\n </SkeletonContainer>\n);\n\nconst defaultLoadMoreIndicator = (\n <SkeletonContainer minimumCount={3}>\n {() => {\n return (\n <Flex height=\"12x\" align=\"center\">\n <Skeleton height=\"4x\" />\n </Flex>\n );\n }}\n </SkeletonContainer>\n);\n\n/**\n * Adjust the DataState as needed if it contains more than needed for the specified range\n */\nconst adjustDataState = <K, D>(dataState: DataState<K, D>, range: Range | null) => {\n if (range) {\n // prevent range offset from being larger than the data state\n const safeRangeOffset = Math.min(range.offset, dataState.offset + dataState.totalSize);\n const diff = safeRangeOffset - dataState.offset;\n if (diff > 0) {\n dataState = {\n offset: safeRangeOffset,\n data: dataState.data.slice(diff, diff + range.count),\n totalSize: dataState.totalSize,\n sizePrecision: dataState.sizePrecision\n };\n }\n }\n return dataState;\n};\n"],"names":["ITEM_STYLE_CLASS","ITEM_SELECTOR","styles","cellStyles","ListViewItem","children","itemKey","itemIndex","isFocused","isFocusRingVisible","isGridlineVisible","isSelected","isTopGridlineVisible","isTabbable","role","selectionMode","suggestion","currentItemVariant","rootRef","useRef","roles","useMemo","getListViewRoles","cellRoleAttributes","cell","handleKeyDown","event","key","base","focused","selectedSingle","suggestionEnd","checkboxContainer","isSelectable","isItemSelected","containerStyle","timerValue","SkeletonContainer","minimumCount","sparkleStyles","List","accessibleSummary","allowTabbableMode","currentKey","data","gridlines","loadingIndicator","defaultLoadingIndicator","onCurrentKeyChange","onLoadRange","onSelectionChange","onItemAction","rangeExtractor","selectedKeys","emptyKeys","viewportConfig","isVirtualized","listRoles","anchorKey","pendingSelection","pendingCurrentKey","showGridline","index","ariaMultiSelectable","undefined","ariaRowCount","sizePrecision","totalSize","listViewContains","elem","_a","current","contains","target","isKeyboardEvent","focus","findElementByKey","scrollToVisible","scroller","querySelector","handleSelectionChange","useCallback","detail","value","all","keys","size","Array","from","values","pop","handleSelectionRangeChange","isArray","range","offset","count","length","handleInitialFocus","firstKey","getFirstVisibleKey","isKeyDefined","handleSelectorFocusCapture","relatedTarget","getAttribute","_b","handleFocus","element","keyExtractor","isPrev","getPrevNextKey","handleSelectionRange","adjustDataState","suggestions","findSuggestions","itemActionProps","useItemAction","placeholder","PLACEHOLDER_STYLE_CLASS","height","offsetHeight","getItemContext","context","selectorRenderer","metadata","selector","childrenComponent","listItemContext","get","isCurrentTabbableKey","containsKey","getViewportConfig","collectionComponent","_jsx","VirtualizedCollection","Object","assign","itemSelector","loadMoreIndicator","defaultLoadMoreIndicator","sparkleIndicator","LoadMoreCollection","handlePointerDown","mergeProps","tabbableModeProps","currentKeyProps","focusRingProps","selectionProps","onFocus","onPointerDown","ref","class","classes","tabIndex","dataState","getSuggestionsCount","set","Map","findIndex","scrollerBounds","getBoundingClientRect","elemBounds","bottom","scrollTop","top","config","Set","startIndex","indexOf","start","endIndex","end","minIndex","Sparkle","sparkleHeight","safeRangeOffset","Math","min","diff","slice"],"mappings":"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"}
1
+ {"version":3,"file":"List-83ce5c9c.js","sources":["../../src/PRIVATE_List/ListRoles.ts","../../src/PRIVATE_List/ListItem.tsx","../../src/PRIVATE_List/SkeletonContainer.tsx","../../src/PRIVATE_List/List.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 */\n\nimport { Roles } from '../UNSAFE_ListView';\n\n/**\n * List Roles need to be kept in matching sets, this module encapsulates the sets\n *\n * @param ariaRole\n * @returns matching, valid set of roles\n */\n\nconst getListViewRoles = (ariaRole: Roles) => {\n switch (ariaRole) {\n case 'listbox':\n return { list: 'listbox', item: 'presentation', cell: 'option' };\n case 'treegrid':\n return { list: 'treegrid', item: 'row', cell: 'gridcell' };\n default:\n return { list: 'grid', item: 'row', cell: 'gridcell' };\n }\n};\n\nexport { getListViewRoles };\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 */\nimport { ComponentChildren } from 'preact';\nimport { useRef, useMemo } from 'preact/hooks';\nimport { cssProps } from '@oracle/oraclejet-cssprops';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { TabbableModeContext } from '../hooks/UNSAFE_useTabbableMode';\nimport { SelectionMode, CurrentItemVariant } from '../UNSAFE_Collection';\nimport { FocusTrap } from '../UNSAFE_FocusTrap';\nimport { useId } from '../hooks/UNSAFE_useId';\nimport { Roles } from '../UNSAFE_ListView';\nimport { getListViewRoles } from './ListRoles';\n\n// default style class for items in ListView\nexport const ITEM_STYLE_CLASS = 'oj-listview-item';\nexport const ITEM_SELECTOR = '.' + ITEM_STYLE_CLASS;\n\nconst styles = {\n base: cssProps`${{\n display: 'flex',\n alignItems: 'center',\n minHeight: 'var(--oj-collection-list-row-height)',\n boxSizing: 'border-box',\n backgroundImage:\n 'linear-gradient(var(--oj-c-PRIVATE-DO-NOT-USE-core-divider-color),var(--oj-c-PRIVATE-DO-NOT-USE-core-divider-color))',\n backgroundSize: 0,\n backgroundPosition: '0 100%',\n backgroundRepeat: 'no-repeat',\n borderTop: '1px solid transparent'\n }}`,\n gridlines: cssProps`${{\n backgroundSize: '100% 1px'\n }}`,\n gridlineTop: cssProps`${{\n backgroundImage: `linear-gradient(var(--oj-c-PRIVATE-DO-NOT-USE-core-divider-color),var(--oj-c-PRIVATE-DO-NOT-USE-core-divider-color)),\n linear-gradient(var(--oj-c-PRIVATE-DO-NOT-USE-core-divider-color),var(--oj-c-PRIVATE-DO-NOT-USE-core-divider-color))`,\n backgroundPosition: '0 100%, 0 -1px',\n backgroundSize: '100% 1px, 100% 1px'\n }}`,\n selectable: cssProps`${{\n '&:hover': {\n backgroundColor: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-bg-color-hover);'\n }\n }}`,\n selected: cssProps`${{\n backgroundColor: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-bg-color-selected)'\n }}`,\n selectedSingle: cssProps`${{\n borderTop: '1px solid var(--oj-c-PRIVATE-DO-NOT-USE-core-border-color-selected)',\n boxShadow: 'inset 0 -1px var(--oj-c-PRIVATE-DO-NOT-USE-core-border-color-selected)'\n }}`,\n suggestionEnd: cssProps`${{\n backgroundSize: '100% 1px'\n }}`,\n highlight: cssProps`${{\n backgroundColor: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-bg-color-hover);'\n }}`,\n focused: cssProps`${{\n outlineStyle: 'dotted',\n outlineWidth: '1px',\n outlineColor: 'var(---oj-c-PRIVATE-DO-NOT-USE-core-focus-border-color)',\n outlineOffset: '-1px'\n }}`\n};\n\nconst cellStyles = {\n base: cssProps`${{\n flexGrow: '1'\n }}`,\n checkboxContainer: cssProps`${{\n display: 'flex'\n }}`\n};\n\n/**\n * Props for the ListViewItem Component\n */\nexport type Props<K> = {\n children: ComponentChildren;\n itemKey: K;\n itemIndex: number;\n isFocused: boolean;\n isFocusRingVisible: boolean;\n isGridlineVisible: boolean;\n isSelected: boolean;\n isTopGridlineVisible?: boolean;\n isTabbable?: boolean;\n role: Roles;\n selectionMode: SelectionMode;\n suggestion?: 'end' | true;\n currentItemVariant?: CurrentItemVariant;\n};\n\n/**\n * The internal component used to render a single item in ListView.\n */\nexport function ListViewItem<K extends string | number>({\n children,\n itemKey,\n itemIndex,\n isFocused,\n isFocusRingVisible,\n isGridlineVisible,\n isSelected,\n isTopGridlineVisible = false,\n isTabbable = false,\n role,\n selectionMode,\n suggestion,\n currentItemVariant\n}: Props<K>) {\n const rootRef = useRef<HTMLDivElement>(null);\n\n const roles = useMemo(() => getListViewRoles(role), [role]);\n\n // some roles come with related aria attributes which need to be set\n const cellRoleAttributes =\n roles.cell === 'option'\n ? {\n role: roles.cell,\n 'aria-posinset': itemIndex + 1,\n 'aria-setsize': -1\n }\n : {\n role: roles.cell\n };\n\n // don't bubble Arrow Up and Down events to parent when in isTabbable mode\n // this bubbling causes the outer CollectionFocus ring to change index while in the isTabbable mode.\n const handleKeyDown = (event: KeyboardEvent) => {\n if (isTabbable && (event.key === 'ArrowDown' || event.key === 'ArrowUp')) {\n event.stopPropagation();\n }\n };\n\n const classes = classNames([\n styles.base,\n ITEM_STYLE_CLASS,\n isFocused && isFocusRingVisible && styles.focused,\n isGridlineVisible && styles.gridlines,\n isTopGridlineVisible && styles.gridlineTop,\n isSelectable(selectionMode, isSelected) && !isSelected && styles.selectable,\n isSelected && styles.selected,\n isSelected && selectionMode === 'single' && styles.selectedSingle,\n suggestion === 'end' &&\n !isGridlineVisible &&\n !(isSelected && selectionMode === 'single') &&\n styles.suggestionEnd,\n currentItemVariant === 'highlight' && isFocused && !isSelected && styles.highlight\n ]);\n\n const cellClasses = classNames([\n cellStyles.base,\n selectionMode === 'multiple' && cellStyles.checkboxContainer\n ]);\n\n // todo: use translated text for selector\n // note cannot put focus on gridcell div since JAWS will not read the aria-rowindex\n // correctly, so unfortunately needed another div\n return (\n <div\n aria-rowindex={itemIndex + 1}\n data-oj-key={itemKey}\n class={classes}\n ref={rootRef}\n role={roles.item}\n {...(suggestion && { 'data-oj-suggestion': true })}\n {...(typeof itemKey === 'number' && { 'data-oj-key-type': 'number' })}>\n <div\n id={useId()}\n class={cellClasses}\n aria-posinset={itemIndex + 1}\n aria-setsize={-1}\n onKeyDown={handleKeyDown}\n aria-colindex={1}\n aria-selected={selectionMode !== 'none' ? isSelected : undefined}\n {...cellRoleAttributes}>\n <TabbableModeContext.Provider value={{ isTabbable }}>\n <FocusTrap isDisabled={!isTabbable} restoreFocusRef={false}>\n {children}\n </FocusTrap>\n </TabbableModeContext.Provider>\n </div>\n </div>\n );\n}\n\n/**\n * Helper method to determine whether item is selectable\n * @returns true if item is selectable (show hover effect), false otherwise\n */\nconst isSelectable = (selectionMode: SelectionMode, isItemSelected: boolean) => {\n return selectionMode !== 'none' && (selectionMode === 'multiple' || !isItemSelected);\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 */\nimport { ComponentChildren } from 'preact';\nimport { useState, useEffect } from 'preact/hooks';\nimport { cssProps } from '@oracle/oraclejet-cssprops';\nimport { classNames } from '../utils/UNSAFE_classNames';\n\ntype Props = {\n /**\n * Allows to pass and access the properties from child elements\n **/\n children?: (index: number) => ComponentChildren;\n /**\n * Allows to specify number of skeletons to be rendered on initial load\n **/\n minimumCount?: number;\n};\n\nconst containerStyle = {\n base: cssProps`${{\n height: '100%',\n overflowX: 'hidden',\n overflowY: 'hidden'\n }}`\n};\n\n/**\n * Allows to specify the time delay for rendering the component\n **/\nconst timerValue = 50;\n\n/**\n * SkeletonContainer renders 'minimumCount' number of skeletons\n * of the variant specified from its child element - Skeleton's prop after\n * 'timerValue' ms delay\n **/\nexport function SkeletonContainer({ children, minimumCount = 1 }: Props) {\n const [isVisible, setIsVisible] = useState(false);\n\n useEffect(() => {\n setTimeout(() => {\n setIsVisible(true);\n }, timerValue);\n }, []);\n\n const containerClasses = classNames([containerStyle.base]);\n return isVisible && children ? (\n <div class={containerClasses} role=\"presentation\">\n {[...Array(minimumCount)].map((_element, index) => children(index))}\n </div>\n ) : null;\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 */\nimport { RefObject } from 'preact';\nimport { useRef, useCallback, useEffect, useState, useMemo } from 'preact/hooks';\nimport { cssProps } from '@oracle/oraclejet-cssprops';\nimport { classNames } from '../utils/UNSAFE_classNames';\nimport { mergeProps } from '../utils/UNSAFE_mergeProps';\nimport { containsKey, Keys, isKeyDefined } from '../utils/UNSAFE_keys';\nimport { DataState, ItemContext, Metadata, Range, SelectionDetail } from '../UNSAFE_Collection';\nimport { LoadMoreCollection } from '../UNSAFE_LoadMoreCollection/LoadMoreCollection';\nimport { VirtualizedCollection, PLACEHOLDER_STYLE_CLASS } from '../PRIVATE_VirtualizedCollection';\nimport { ViewportConfig } from '../hooks/UNSAFE_useViewportIntersect';\nimport { ListViewItem, ITEM_SELECTOR } from './ListItem';\nimport { SelectionRangeDetail, useSelection } from '../hooks/PRIVATE_useSelection';\nimport { useCurrentKey } from '../hooks/PRIVATE_useCurrentKey';\nimport { useCollectionFocusRing } from '../hooks/PRIVATE_useCollectionFocusRing';\nimport { useTabbableModeSet } from '../hooks/PRIVATE_useTabbableModeSet';\nimport { useItemAction } from '../hooks/PRIVATE_useItemAction';\nimport { SkeletonContainer } from './SkeletonContainer';\nimport { Skeleton } from '../UNSAFE_Skeleton';\nimport { Flex } from '../UNSAFE_Flex';\nimport {\n getFirstVisibleKey,\n getPrevNextKey,\n findElementByKey,\n keyExtractor\n} from '../utils/PRIVATE_collectionUtils';\nimport { Selector } from '../UNSAFE_Selector';\nimport { Props } from '../UNSAFE_ListView';\nimport { getListViewRoles } from './ListRoles';\n\nconst styles = {\n base: cssProps`${{\n height: '100%',\n userSelect: 'none',\n overflowY: 'inherit',\n '&:focus': {\n outlineStyle: 'none'\n }\n }}`\n};\n\nconst sparkleStyles = {\n base: cssProps`${{\n position: 'absolute',\n top: 0,\n width: 'var(--oj-c-PRIVATE-DO-NOT-USE-core-spacing-1x)',\n zIndex: 1,\n display: 'block',\n backgroundImage: 'var(--oj-c-PRIVATE-DO-NOT-USE-collection-sparkle-img)',\n backgroundRepeat: 'no-repeat',\n backgroundSize: '100% 100%'\n }}`,\n container: cssProps`${{\n position: 'relative'\n }}`\n};\n\n/**\n * Component that renders items as a flat list.\n * In order to maximize performance, only items that are visible in the viewport are rendered.\n */\nexport function List<K extends string | number, D>({\n accessibleSummary,\n allowTabbableMode = true,\n children,\n currentKey,\n data,\n gridlines,\n loadingIndicator = defaultLoadingIndicator,\n onCurrentKeyChange,\n onLoadRange,\n onSelectionChange,\n onItemAction,\n rangeExtractor,\n role = 'grid',\n selectedKeys = emptyKeys as Keys<K>,\n selectionMode = 'none',\n viewportConfig,\n currentItemVariant = 'none',\n isVirtualized = true\n}: Props<K, D>) {\n const rootRef = useRef<HTMLDivElement>(null);\n const listRoles = useMemo(() => getListViewRoles(role), [role]);\n\n // tracking the anchor key which is used for shift+click selection\n const anchorKey = useRef<K | undefined>();\n\n // tracking pending selection/current key that is not in current data\n const pendingSelection = useRef<{ detail: SelectionRangeDetail<K>; range: Range }>();\n const pendingCurrentKey = useRef<K>();\n\n // tracking sparkle height\n const [sparkleHeight, setSparkleHeight] = useState<number>(0);\n\n const showGridline = (index: number) => {\n // show bottom gridlines for each item, and for the last item if specified\n return (\n gridlines?.item === 'visible' &&\n (index + 1 !== data?.totalSize || gridlines?.bottom === 'visible')\n );\n };\n\n const showGridlineTop = () => {\n // show the top gridline for the first item\n return gridlines?.item === 'visible' && gridlines?.top === 'visible';\n };\n\n const ariaMultiSelectable = selectionMode === 'none' ? undefined : selectionMode === 'multiple';\n const ariaRowCount =\n data === null ? undefined : data.sizePrecision === 'exact' ? data.totalSize : -1;\n\n const classes = classNames([styles.base]);\n\n const { currentKeyProps } = useCurrentKey(\n (element) => keyExtractor(element, ITEM_SELECTOR),\n getPrevNextKey(rootRef.current, currentKey, true, ITEM_SELECTOR),\n getPrevNextKey(rootRef.current, currentKey, false, ITEM_SELECTOR),\n currentKey,\n onCurrentKeyChange\n );\n\n const listViewContains = (elem: Element | null) => {\n return !!rootRef.current?.contains(elem);\n };\n\n const [showFocusRing, focusRingProps] = useCollectionFocusRing(listViewContains, [\n 'ArrowUp',\n 'ArrowDown'\n ]);\n\n let pendingFocusRingChange = false;\n const [isCurrentTabbableKey, tabbableModeProps] = useTabbableModeSet(\n listViewContains,\n (element) => keyExtractor(element, ITEM_SELECTOR) as K,\n currentKey,\n // handle clean-up on disabling of the mode\n (target: EventTarget | null, isKeyboardEvent) => {\n if (target === null || listViewContains(target as Element)) {\n // delay focus reset for keyboard disable so focus is reset to ListView after the FocusTrap blur lifecycle completes.\n // pointer initiated changes will fire the onBlur organically and delaying the focus, just generates an unwanted second blur\n if (isKeyboardEvent) {\n // do not show a focus ring during this timeOut\n pendingFocusRingChange = true;\n setTimeout(() => {\n rootRef.current?.focus();\n }, 0);\n } else {\n rootRef.current?.focus();\n }\n }\n },\n // set currentKey when mode is enabled\n (key: K) => {\n onCurrentKeyChange && onCurrentKeyChange({ value: key });\n }\n );\n\n useEffect(() => {\n if (currentKey != null && rootRef.current) {\n const elem = findElementByKey(rootRef.current, currentKey, ITEM_SELECTOR);\n if (elem) {\n const scroller = viewportConfig?.scroller();\n // make sure item is visible\n scrollToVisible(elem, scroller != null ? scroller : rootRef.current);\n const cell = elem.querySelector(`[role=${listRoles.cell}]`);\n // update aria-activedescendant for screenreader\n if (cell) {\n rootRef.current.setAttribute('aria-activedescendant', cell.id);\n }\n }\n }\n // listen to data because the current item would re-render when the virtualizer\n // is fetching data or updating the data, i.e. the id of current item would be updated,\n // so the currentKey itself couldn't guarantee the root has latest aria-activedescendant\n }, [currentKey, data, listRoles.cell, viewportConfig]);\n\n const handleSelectionChange = useCallback(\n (detail: SelectionDetail<K>) => {\n if (onSelectionChange) {\n if (detail.value.all === false && detail.value.keys.size > 0) {\n // the last key selected by a user gesture is the anchor key\n anchorKey.current = Array.from(detail.value.keys.values()).pop();\n }\n onSelectionChange(detail);\n }\n },\n [anchorKey, onSelectionChange]\n );\n\n const handleSelectionRangeChange = useCallback(\n (detail: SelectionRangeDetail<K>) => {\n if (data && onSelectionChange) {\n const value = handleSelectionRange(detail, data);\n if (Array.isArray(value)) {\n onSelectionChange({ value: { all: false, keys: new Set(value) }, target: null });\n } else {\n pendingSelection.current = {\n detail: detail,\n range: { offset: data.offset, count: data.data.length }\n };\n onLoadRange(value);\n }\n }\n },\n [data, onSelectionChange, onLoadRange]\n );\n\n const handleInitialFocus = useCallback(() => {\n if (\n rootRef.current &&\n onCurrentKeyChange &&\n (!allowTabbableMode || isCurrentTabbableKey(undefined))\n ) {\n const firstKey =\n pendingCurrentKey.current || (getFirstVisibleKey(rootRef.current, ITEM_SELECTOR) as K);\n if (isKeyDefined(firstKey)) {\n onCurrentKeyChange({ value: firstKey });\n }\n }\n }, [allowTabbableMode, onCurrentKeyChange, isCurrentTabbableKey]);\n\n /**\n * Used by allowTabbableMode = false, to prevent focus from getting onto checkboxes on click\n * @param event\n */\n const handleSelectorFocusCapture = useCallback(\n (event: FocusEvent) => {\n const key = keyExtractor(event.target as HTMLElement, ITEM_SELECTOR);\n if (key && (event.relatedTarget as HTMLElement)?.getAttribute('type') === 'checkbox') {\n rootRef.current?.focus();\n if (onCurrentKeyChange && key) {\n onCurrentKeyChange({ value: key as K });\n }\n }\n },\n [onCurrentKeyChange]\n );\n\n const handleFocus = useCallback(\n (event: FocusEvent) => {\n !isKeyDefined(currentKey) && onCurrentKeyChange && handleInitialFocus();\n !allowTabbableMode && handleSelectorFocusCapture(event);\n },\n [\n allowTabbableMode,\n currentKey,\n handleInitialFocus,\n handleSelectorFocusCapture,\n onCurrentKeyChange\n ]\n );\n\n const { selectionProps } = useSelection(\n (element: HTMLElement) => {\n if (element === rootRef.current) {\n return currentKey === undefined ? null : currentKey;\n }\n return keyExtractor(element, ITEM_SELECTOR) as K;\n },\n selectedKeys,\n selectionMode,\n false,\n 'replace',\n handleSelectionChange,\n anchorKey.current,\n currentKey,\n (currentKey: K | undefined, isPrev: boolean) =>\n getPrevNextKey(rootRef.current, currentKey, isPrev, ITEM_SELECTOR),\n (key: K) => {\n if (rootRef.current) {\n const elem = findElementByKey(rootRef.current, key, ITEM_SELECTOR);\n if (elem) {\n const scroller = viewportConfig?.scroller();\n scrollToVisible(elem, scroller != null ? scroller : rootRef.current);\n }\n }\n },\n handleSelectionRangeChange\n );\n\n if (data && pendingSelection.current !== undefined && onSelectionChange) {\n const keys = handleSelectionRange(pendingSelection.current.detail, data);\n if (Array.isArray(keys)) {\n onSelectionChange({ value: { all: false, keys: new Set(keys) }, target: null });\n }\n const range = pendingSelection.current\n ? pendingSelection.current.range\n : { offset: data.offset, count: data.data.length };\n data = adjustDataState(data, range);\n pendingSelection.current = undefined;\n onLoadRange(range);\n }\n\n const suggestions = useMemo(() => findSuggestions(data), [data]);\n\n // TODO: check suggestions before Sparkle would cause a scrolling issue\n const sparkleIndicator = <Sparkle sparkleHeight={sparkleHeight}></Sparkle>;\n\n const itemActionProps = useItemAction(currentKey, data, onItemAction, ITEM_SELECTOR);\n\n useEffect(() => {\n // update sparkleHeight only when we have suggestions\n // avoid unnecessary iterating through elements\n if (suggestions) {\n const placeholder = rootRef.current?.querySelector(\n '.' + PLACEHOLDER_STYLE_CLASS\n ) as HTMLElement;\n let height = placeholder?.offsetHeight || 0;\n const suggestionItems = rootRef.current?.querySelectorAll('[data-oj-suggestion]');\n suggestionItems?.forEach((item) => (height += (item as HTMLElement).offsetHeight));\n setSparkleHeight(height);\n }\n }, [suggestions]);\n\n // returns an ListItemContext based on ItemContext (added metadata and selector)\n const getItemContext = useCallback(\n (context: ItemContext<{ data: D; metadata: Metadata<K> }>) => {\n const selectorRenderer =\n selectionMode === 'multiple'\n ? () => (\n <Selector\n onChange={handleSelectionChange}\n rowKey={context.data.metadata.key}\n selectedKeys={selectedKeys}></Selector>\n )\n : undefined;\n\n return {\n index: context.index,\n data: context.data.data,\n metadata: context.data.metadata,\n selector: selectorRenderer\n };\n },\n [selectionMode, selectedKeys, handleSelectionChange]\n );\n\n const childrenComponent = (context: ItemContext<{ data: D; metadata: Metadata<K> }>) => {\n const listItemContext = getItemContext(context);\n const suggestion = suggestions?.get(listItemContext.metadata.key);\n const isTabbable = allowTabbableMode && isCurrentTabbableKey(listItemContext.metadata.key);\n const isFocused = currentKey === listItemContext.metadata.key && !isTabbable;\n const isSelected = containsKey(selectedKeys, listItemContext.metadata.key);\n return (\n <ListViewItem\n key={listItemContext.metadata.key}\n isFocused={isFocused}\n isFocusRingVisible={showFocusRing && !pendingFocusRingChange}\n isGridlineVisible={showGridline(listItemContext.index)}\n isSelected={isSelected}\n isTabbable={allowTabbableMode && isCurrentTabbableKey(listItemContext.metadata.key)}\n itemIndex={listItemContext.index}\n itemKey={listItemContext.metadata.key}\n role={role}\n selectionMode={selectionMode}\n currentItemVariant={currentItemVariant}\n {...(suggestion && { suggestion })}\n {...(listItemContext.index === 0 && { isTopGridlineVisible: showGridlineTop() })}>\n {children(listItemContext)}\n </ListViewItem>\n );\n };\n\n viewportConfig = getViewportConfig(rootRef, viewportConfig);\n const collectionComponent = isVirtualized ? (\n <VirtualizedCollection\n data={data}\n itemSelector={ITEM_SELECTOR}\n loadMoreIndicator={defaultLoadMoreIndicator}\n onLoadRange={onLoadRange}\n rangeExtractor={rangeExtractor}\n suggestions={sparkleIndicator}\n viewportConfig={viewportConfig}>\n {childrenComponent}\n </VirtualizedCollection>\n ) : (\n <LoadMoreCollection\n data={data}\n loadMoreIndicator={defaultLoadMoreIndicator}\n onLoadRange={onLoadRange}\n suggestions={sparkleIndicator}\n viewportConfig={viewportConfig}>\n {childrenComponent}\n </LoadMoreCollection>\n );\n\n /**\n * Need to track pointer down element to set currentItem when initial focus happens\n */\n const handlePointerDown = useCallback((event: PointerEvent) => {\n const key = keyExtractor(event.target as HTMLElement, ITEM_SELECTOR);\n if (isKeyDefined(key)) pendingCurrentKey.current = key as K;\n }, []);\n\n // if data is not specified, listview should show loading indicator\n // todo: replace placeholder with actual SkeletonContainer component (Ash is working on)\n return (\n <div\n {...mergeProps(\n allowTabbableMode ? tabbableModeProps : {},\n currentKeyProps,\n focusRingProps,\n selectionProps,\n itemActionProps,\n { onFocus: handleFocus, onPointerDown: handlePointerDown }\n )}\n role={role}\n aria-rowcount={ariaRowCount}\n aria-colcount={1}\n ref={rootRef}\n class={classes}\n tabIndex={0}\n aria-label={accessibleSummary}\n aria-multiselectable={ariaMultiSelectable}>\n {data == null ? loadingIndicator : collectionComponent}\n </div>\n );\n}\n\n/**\n * A helper function that finds the data with suggestions, and\n * returns the corresponding keys\n * @param dataState\n */\nconst findSuggestions = <K, D>(dataState?: DataState<K, D> | null) => {\n const data = dataState?.data;\n const count = getSuggestionsCount(data);\n if (count === 0) {\n return null;\n }\n\n const suggestionsData = data!.slice(0, count);\n return suggestionsData.reduce((suggestions, value, index) => {\n const key = value.metadata.key;\n\n if (index === count - 1) {\n suggestions.set(key, 'end');\n } else {\n suggestions.set(key, true);\n }\n\n return suggestions;\n }, new Map<K, 'end' | true>());\n};\n\n/**\n * A helper function that finds the number of suggestions\n * @param data\n */\nconst getSuggestionsCount = <K, D>(data?: DataState<K, D>['data']) => {\n if (!data) {\n return 0;\n }\n\n const index = data.findIndex((value) => !value.metadata.suggestion);\n return index === -1 ? 0 : index;\n};\n\n/**\n * A helper function to make sure specified elem is visible in the specified container\n */\nconst scrollToVisible = (elem: Element, scroller: Element) => {\n if (elem && scroller) {\n const scrollerBounds = scroller.getBoundingClientRect();\n const elemBounds = elem.getBoundingClientRect();\n if (elemBounds.bottom > scrollerBounds.bottom) {\n scroller.scrollTop = scroller.scrollTop + (elemBounds.bottom - scrollerBounds.bottom);\n } else if (elemBounds.top < scrollerBounds.top) {\n scroller.scrollTop = scroller.scrollTop - (scrollerBounds.top - elemBounds.top);\n }\n }\n};\n\nconst getViewportConfig = (rootRef: RefObject<HTMLElement>, config?: ViewportConfig) => {\n return (\n config ?? {\n scroller: () => {\n return rootRef.current;\n }\n }\n );\n};\n\nconst emptyKeys = { all: false, keys: new Set() };\n\nconst handleSelectionRange = <K, D>(\n detail: SelectionRangeDetail<K>,\n dataState: DataState<K, D>\n) => {\n const keys = dataState.data.map((value: { data: D; metadata: Metadata<K> }) => {\n return value.metadata.key;\n });\n const startIndex = keys.indexOf(detail.value.start);\n const endIndex = keys.indexOf(detail.value.end);\n const minIndex = Math.min(startIndex, endIndex);\n const maxIndex = Math.max(startIndex, endIndex);\n if (minIndex === -1) {\n // return a range to fetch so we can find all the keys, maxIndex should not be -1\n return { offset: 0, count: dataState.totalSize };\n } else {\n // range of keys are in the current viewport, return them\n return keys.slice(minIndex, maxIndex + 1);\n }\n};\n\n/**\n * A sparkle component for smart suggestion indicator in ListView\n * @param sparkleHeight the height of sparkle\n */\nexport function Sparkle({ sparkleHeight }: { sparkleHeight: number }) {\n if (sparkleHeight <= 0) {\n return null;\n }\n\n const height = sparkleHeight + 'px';\n const sparkleClasses = classNames([sparkleStyles.base]);\n const containerClasses = classNames([sparkleStyles.container]);\n\n return (\n <div key=\"sparkle\" class={containerClasses}>\n <div class={sparkleClasses} style={{ height }}></div>\n </div>\n );\n}\n\nconst defaultLoadingIndicator = (\n <SkeletonContainer minimumCount={25}>\n {() => {\n return (\n <Flex height=\"12x\" align=\"center\">\n <Skeleton height=\"4x\" />\n </Flex>\n );\n }}\n </SkeletonContainer>\n);\n\nconst defaultLoadMoreIndicator = (\n <SkeletonContainer minimumCount={3}>\n {() => {\n return (\n <Flex height=\"12x\" align=\"center\">\n <Skeleton height=\"4x\" />\n </Flex>\n );\n }}\n </SkeletonContainer>\n);\n\n/**\n * Adjust the DataState as needed if it contains more than needed for the specified range\n */\nconst adjustDataState = <K, D>(dataState: DataState<K, D>, range: Range | null) => {\n if (range) {\n // prevent range offset from being larger than the data state\n const safeRangeOffset = Math.min(range.offset, dataState.offset + dataState.totalSize);\n const diff = safeRangeOffset - dataState.offset;\n if (diff > 0) {\n dataState = {\n offset: safeRangeOffset,\n data: dataState.data.slice(diff, diff + range.count),\n totalSize: dataState.totalSize,\n sizePrecision: dataState.sizePrecision\n };\n }\n }\n return dataState;\n};\n"],"names":["getListViewRoles","ariaRole","list","item","cell","ITEM_STYLE_CLASS","ITEM_SELECTOR","styles","cellStyles","ListViewItem","children","itemKey","itemIndex","isFocused","isFocusRingVisible","isGridlineVisible","isSelected","isTopGridlineVisible","isTabbable","role","selectionMode","suggestion","currentItemVariant","rootRef","useRef","roles","useMemo","cellRoleAttributes","event","key","isSelectable","isItemSelected","containerStyle","SkeletonContainer","minimumCount","sparkleStyles","findSuggestions","dataState","count","getSuggestionsCount","data","value","metadata","index","suggestions","set","Map","findIndex","scrollToVisible","elem","scroller","scrollerBounds","getBoundingClientRect","elemBounds","bottom","scrollTop","top","getViewportConfig","config","emptyKeys","all","keys","Set","handleSelectionRange","detail","startIndex","indexOf","start","endIndex","end","minIndex","Sparkle","sparkleHeight","height","defaultLoadingIndicator","_jsx","jsx","Object","assign","defaultLoadMoreIndicator","adjustDataState","range","safeRangeOffset","Math","min","offset","totalSize","diff","slice","accessibleSummary","allowTabbableMode","currentKey","gridlines","loadingIndicator","onCurrentKeyChange","onLoadRange","onSelectionChange","onItemAction","rangeExtractor","selectedKeys","viewportConfig","isVirtualized","listRoles","anchorKey","pendingSelection","pendingCurrentKey","ariaMultiSelectable","undefined","ariaRowCount","sizePrecision","listViewContains","_a","current","contains","target","isKeyboardEvent","focus","findElementByKey","querySelector","handleSelectionChange","useCallback","size","Array","from","values","pop","handleSelectionRangeChange","isArray","length","handleInitialFocus","firstKey","getFirstVisibleKey","isKeyDefined","handleSelectorFocusCapture","relatedTarget","getAttribute","_b","handleFocus","element","keyExtractor","isPrev","getPrevNextKey","itemActionProps","useItemAction","placeholder","PLACEHOLDER_STYLE_CLASS","offsetHeight","getItemContext","context","selectorRenderer","selector","childrenComponent","listItemContext","get","isCurrentTabbableKey","containsKey","collectionComponent","VirtualizedCollection","itemSelector","loadMoreIndicator","sparkleIndicator","LoadMoreCollection","handlePointerDown","mergeProps","tabbableModeProps","currentKeyProps","focusRingProps","selectionProps","onFocus","onPointerDown","ref","class","classes","tabIndex"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ define(["exports","preact/jsx-runtime",'module',"./UNSAFE_Grid","./utils/UNSAFE_classNames","./classNames-d0ddb6e6","./UNSAFE_Text","./hooks/UNSAFE_useTabbableMode","./Text-75ed9308"],function(s,e,a,i,n,r,t,c,l){"use strict";const d="_1kw3ep3",o="_1wugetk",j="_1pg8xv",m="kjogs4";const x={primary:"primary",secondary:"primary",tertiary:"secondary",quaternary:"secondary",overline:"secondary",metadata:"secondary"},h={primary:"md",secondary:"sm",tertiary:"xs",quaternary:"sm",overline:"xs",metadata:"sm"},u={primary:void 0,secondary:2,tertiary:2,quaternary:2,overline:1,metadata:1};function v({children:s,variant:a}){const{isTabbable:i}=c.useTabbableMode(),n=e.jsx(l.Text,Object.assign({variant:x[a],size:h[a],lineClamp:u[a]},{children:s}));return i?e.jsx("div",Object.assign({tabIndex:0},{children:n})):n}s.ListItemLayout=function({children:s,selector:a,leading:n,primary:t,secondary:c,tertiary:l,overline:x,metadata:h,trailing:u,action:v,quaternary:b,navigation:y}){const{columnsTemplate:g,firstCell:p,secondCell:N,lastCell:O,hasSecondRow:T}=function(s,a,i,n,t,c,l){const x=[];let h=null;s&&(x.push("auto"),h=e.jsx("div",Object.assign({className:d},{children:s})));let u=null;a&&(x.push("auto"),u=e.jsx("div",Object.assign({className:o},{children:a})));x.push("1fr");let v=null;(i||n||t||l)&&(x.push("auto"),v=e.jsxs("div",Object.assign({className:m},{children:[e.jsx("div",Object.assign({className:r.classNames([o,i?j:""])},{children:i})),e.jsx("div",Object.assign({className:r.classNames([o,n?j:""])},{children:n})),e.jsx("div",Object.assign({className:r.classNames([o,t?j:""])},{children:t}))]})));const b=x.join(" ");return{columnsTemplate:b,firstCell:h,secondCell:u,lastCell:v,hasSecondRow:!(!c&&!l)}}(a,n,h,u,v,b,y),_=s?e.jsx("div",Object.assign({className:"_1q5891u"},{children:s})):e.jsxs("div",Object.assign({className:"_1wn4m20"},{children:[e.jsx("div",{children:x}),e.jsx("div",{children:t}),e.jsx("div",{children:c}),e.jsx("div",{children:l})]})),f=T?[p&&e.jsx("span",{children:" "}),N&&e.jsx("span",{children:" "}),e.jsx("div",Object.assign({className:"_4vbve"},{children:b})),O&&e.jsx("div",Object.assign({className:"j7mhh5"},{children:y}))]:null;return e.jsxs(i.Grid,Object.assign({gap:"4x",gridTemplateColumns:g},{children:[p,N,e.jsx("div",Object.assign({className:o},{children:_})),O,f]}))},s.ListItemText=v,s.ListItemTextLayout=function({primary:s,secondary:a,tertiary:i,overline:n}){return e.jsxs("div",Object.assign({className:"_9f6prc"},{children:[e.jsx(v,Object.assign({variant:"overline"},{children:n})),e.jsx(v,Object.assign({variant:"primary"},{children:s})),e.jsx(v,Object.assign({variant:"secondary"},{children:a})),e.jsx(v,Object.assign({variant:"tertiary"},{children:i}))]}))}});
2
+ //# sourceMappingURL=ListItemTextLayout-8798fb7e.js.map