@wordpress/components 20.0.0 → 21.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1021) hide show
  1. package/CHANGELOG.md +76 -0
  2. package/CONTRIBUTING.md +5 -56
  3. package/build/alignment-matrix-control/styles/alignment-matrix-control-styles.js +13 -13
  4. package/build/alignment-matrix-control/styles/alignment-matrix-control-styles.js.map +1 -1
  5. package/build/angle-picker-control/index.js +10 -0
  6. package/build/angle-picker-control/index.js.map +1 -1
  7. package/build/autocomplete/get-default-use-items.js +7 -1
  8. package/build/autocomplete/get-default-use-items.js.map +1 -1
  9. package/build/autocomplete/index.js +3 -1
  10. package/build/autocomplete/index.js.map +1 -1
  11. package/build/border-box-control/border-box-control/component.js +5 -1
  12. package/build/border-box-control/border-box-control/component.js.map +1 -1
  13. package/build/border-box-control/border-box-control-split-controls/component.js +5 -1
  14. package/build/border-box-control/border-box-control-split-controls/component.js.map +1 -1
  15. package/build/border-control/border-control-dropdown/component.js +2 -1
  16. package/build/border-control/border-control-dropdown/component.js.map +1 -1
  17. package/build/card/styles.js +17 -17
  18. package/build/card/styles.js.map +1 -1
  19. package/build/checkbox-control/index.js +3 -3
  20. package/build/checkbox-control/index.js.map +1 -1
  21. package/build/clipboard-button/index.js +16 -1
  22. package/build/clipboard-button/index.js.map +1 -1
  23. package/build/color-palette/index.js +7 -3
  24. package/build/color-palette/index.js.map +1 -1
  25. package/build/color-picker/input-with-slider.js +2 -1
  26. package/build/color-picker/input-with-slider.js.map +1 -1
  27. package/build/combobox-control/index.js +1 -1
  28. package/build/combobox-control/index.js.map +1 -1
  29. package/build/custom-gradient-picker/index.js +12 -1
  30. package/build/custom-gradient-picker/index.js.map +1 -1
  31. package/build/date-time/date/index.js +26 -7
  32. package/build/date-time/date/index.js.map +1 -1
  33. package/build/date-time/date/styles.js +22 -12
  34. package/build/date-time/date/styles.js.map +1 -1
  35. package/build/date-time/date-time/index.js +1 -3
  36. package/build/date-time/date-time/index.js.map +1 -1
  37. package/build/date-time/date-time/styles.js +19 -5
  38. package/build/date-time/date-time/styles.js.map +1 -1
  39. package/build/date-time/time/styles.js +12 -12
  40. package/build/date-time/time/styles.js.map +1 -1
  41. package/build/date-time/time/timezone.js +1 -1
  42. package/build/date-time/time/timezone.js.map +1 -1
  43. package/build/disabled/index.js +14 -6
  44. package/build/disabled/index.js.map +1 -1
  45. package/build/disabled/styles/disabled-styles.js +8 -18
  46. package/build/disabled/styles/disabled-styles.js.map +1 -1
  47. package/build/drop-zone/index.js +44 -9
  48. package/build/drop-zone/index.js.map +1 -1
  49. package/build/drop-zone/provider.js.map +1 -1
  50. package/build/drop-zone/types.js +6 -0
  51. package/build/drop-zone/types.js.map +1 -0
  52. package/build/dropdown-menu/index.js +1 -3
  53. package/build/dropdown-menu/index.js.map +1 -1
  54. package/build/dropdown-menu/index.native.js +0 -17
  55. package/build/dropdown-menu/index.native.js.map +1 -1
  56. package/build/flex/flex/hook.js +6 -30
  57. package/build/flex/flex/hook.js.map +1 -1
  58. package/build/focal-point-picker/controls.js +14 -9
  59. package/build/focal-point-picker/controls.js.map +1 -1
  60. package/build/focal-point-picker/focal-point.js +4 -6
  61. package/build/focal-point-picker/focal-point.js.map +1 -1
  62. package/build/focal-point-picker/grid.js +6 -35
  63. package/build/focal-point-picker/grid.js.map +1 -1
  64. package/build/focal-point-picker/index.js +225 -328
  65. package/build/focal-point-picker/index.js.map +1 -1
  66. package/build/focal-point-picker/media.js +5 -31
  67. package/build/focal-point-picker/media.js.map +1 -1
  68. package/build/focal-point-picker/styles/focal-point-picker-style.js +74 -45
  69. package/build/focal-point-picker/styles/focal-point-picker-style.js.map +1 -1
  70. package/build/focal-point-picker/styles/focal-point-style.js +12 -12
  71. package/build/focal-point-picker/styles/focal-point-style.js.map +1 -1
  72. package/build/focal-point-picker/types.js +6 -0
  73. package/build/focal-point-picker/types.js.map +1 -0
  74. package/build/focal-point-picker/utils.js +8 -12
  75. package/build/focal-point-picker/utils.js.map +1 -1
  76. package/build/focusable-iframe/index.js +6 -0
  77. package/build/focusable-iframe/index.js.map +1 -1
  78. package/build/font-size-picker/index.js +11 -0
  79. package/build/font-size-picker/index.js.map +1 -1
  80. package/build/font-size-picker/utils.js +1 -1
  81. package/build/font-size-picker/utils.js.map +1 -1
  82. package/build/form-file-upload/index.js +22 -2
  83. package/build/form-file-upload/index.js.map +1 -1
  84. package/build/form-file-upload/types.js +6 -0
  85. package/build/form-file-upload/types.js.map +1 -0
  86. package/build/form-toggle/index.js +1 -3
  87. package/build/form-toggle/index.js.map +1 -1
  88. package/build/form-token-field/index.js +4 -6
  89. package/build/form-token-field/index.js.map +1 -1
  90. package/build/form-token-field/suggestions-list.js +1 -3
  91. package/build/form-token-field/suggestions-list.js.map +1 -1
  92. package/build/gradient-picker/index.js +35 -25
  93. package/build/gradient-picker/index.js.map +1 -1
  94. package/build/guide/index.js +8 -6
  95. package/build/guide/index.js.map +1 -1
  96. package/build/higher-order/with-constrained-tabbing/index.js +1 -1
  97. package/build/higher-order/with-constrained-tabbing/index.js.map +1 -1
  98. package/build/higher-order/with-spoken-messages/index.js +2 -0
  99. package/build/higher-order/with-spoken-messages/index.js.map +1 -1
  100. package/build/icon/index.js +1 -2
  101. package/build/icon/index.js.map +1 -1
  102. package/build/input-control/input-base.js +3 -2
  103. package/build/input-control/input-base.js.map +1 -1
  104. package/build/input-control/label.js +2 -2
  105. package/build/input-control/label.js.map +1 -1
  106. package/build/input-control/styles/input-control-styles.js +41 -128
  107. package/build/input-control/styles/input-control-styles.js.map +1 -1
  108. package/build/isolated-event-container/index.js +4 -0
  109. package/build/isolated-event-container/index.js.map +1 -1
  110. package/build/mobile/global-styles-context/utils.native.js +1 -1
  111. package/build/mobile/global-styles-context/utils.native.js.map +1 -1
  112. package/build/modal/aria-helper.js +3 -10
  113. package/build/modal/aria-helper.js.map +1 -1
  114. package/build/navigable-container/container.js +5 -1
  115. package/build/navigable-container/container.js.map +1 -1
  116. package/build/navigable-container/menu.js +10 -12
  117. package/build/navigable-container/menu.js.map +1 -1
  118. package/build/navigable-container/tabbable.js +2 -4
  119. package/build/navigable-container/tabbable.js.map +1 -1
  120. package/build/navigation/menu/menu-title-search.js +1 -3
  121. package/build/navigation/menu/menu-title-search.js.map +1 -1
  122. package/build/navigator/navigator-button/hook.js +1 -1
  123. package/build/navigator/navigator-button/hook.js.map +1 -1
  124. package/build/navigator/navigator-screen/component.js +2 -2
  125. package/build/navigator/navigator-screen/component.js.map +1 -1
  126. package/build/number-control/index.js +29 -25
  127. package/build/number-control/index.js.map +1 -1
  128. package/build/number-control/types.js +6 -0
  129. package/build/number-control/types.js.map +1 -0
  130. package/build/palette-edit/index.js +6 -2
  131. package/build/palette-edit/index.js.map +1 -1
  132. package/build/placeholder/index.js +1 -3
  133. package/build/placeholder/index.js.map +1 -1
  134. package/build/popover/index.js +162 -181
  135. package/build/popover/index.js.map +1 -1
  136. package/build/popover/types.js +6 -0
  137. package/build/popover/types.js.map +1 -0
  138. package/build/popover/utils.js +119 -24
  139. package/build/popover/utils.js.map +1 -1
  140. package/build/radio-control/index.js +7 -4
  141. package/build/radio-control/index.js.map +1 -1
  142. package/build/range-control/index.js +4 -1
  143. package/build/range-control/index.js.map +1 -1
  144. package/build/range-control/styles/range-control-styles.js +33 -33
  145. package/build/range-control/styles/range-control-styles.js.map +1 -1
  146. package/build/sandbox/index.js +2 -2
  147. package/build/sandbox/index.js.map +1 -1
  148. package/build/search-control/index.js +38 -10
  149. package/build/search-control/index.js.map +1 -1
  150. package/build/search-control/types.js +6 -0
  151. package/build/search-control/types.js.map +1 -0
  152. package/build/select-control/index.native.js +2 -1
  153. package/build/select-control/index.native.js.map +1 -1
  154. package/build/tab-panel/index.js +48 -9
  155. package/build/tab-panel/index.js.map +1 -1
  156. package/build/tab-panel/types.js +6 -0
  157. package/build/tab-panel/types.js.map +1 -0
  158. package/build/text-control/index.js +2 -0
  159. package/build/text-control/index.js.map +1 -1
  160. package/build/text-highlight/index.js +4 -4
  161. package/build/text-highlight/index.js.map +1 -1
  162. package/build/textarea-control/index.js +3 -3
  163. package/build/textarea-control/index.js.map +1 -1
  164. package/build/toggle-control/index.js +44 -4
  165. package/build/toggle-control/index.js.map +1 -1
  166. package/build/toggle-control/types.js +6 -0
  167. package/build/toggle-control/types.js.map +1 -0
  168. package/build/toggle-group-control/toggle-group-control/component.js +3 -3
  169. package/build/toggle-group-control/toggle-group-control/component.js.map +1 -1
  170. package/build/toggle-group-control/toggle-group-control/styles.js +23 -8
  171. package/build/toggle-group-control/toggle-group-control/styles.js.map +1 -1
  172. package/build/toggle-group-control/toggle-group-control-option-icon/component.js +1 -1
  173. package/build/toggle-group-control/toggle-group-control-option-icon/component.js.map +1 -1
  174. package/build/tooltip/index.js +1 -1
  175. package/build/tooltip/index.js.map +1 -1
  176. package/build/ui/context/context-connect.js +31 -22
  177. package/build/ui/context/context-connect.js.map +1 -1
  178. package/build/ui/context/context-system-provider.js +4 -3
  179. package/build/ui/context/context-system-provider.js.map +1 -1
  180. package/build/unit-control/index.js +1 -1
  181. package/build/unit-control/index.js.map +1 -1
  182. package/build/unit-control/styles/unit-control-styles.js +9 -9
  183. package/build/unit-control/styles/unit-control-styles.js.map +1 -1
  184. package/build/utils/colors-values.js +2 -30
  185. package/build/utils/colors-values.js.map +1 -1
  186. package/build/utils/math.js +4 -4
  187. package/build/utils/math.js.map +1 -1
  188. package/build/utils/strings.js +13 -0
  189. package/build/utils/strings.js.map +1 -1
  190. package/build/utils/values.js +62 -6
  191. package/build/utils/values.js.map +1 -1
  192. package/build/view/component.js +6 -7
  193. package/build/view/component.js.map +1 -1
  194. package/build/view/types.js +6 -0
  195. package/build/view/types.js.map +1 -0
  196. package/build-module/alignment-matrix-control/styles/alignment-matrix-control-styles.js +13 -13
  197. package/build-module/alignment-matrix-control/styles/alignment-matrix-control-styles.js.map +1 -1
  198. package/build-module/angle-picker-control/index.js +9 -0
  199. package/build-module/angle-picker-control/index.js.map +1 -1
  200. package/build-module/autocomplete/get-default-use-items.js +6 -1
  201. package/build-module/autocomplete/get-default-use-items.js.map +1 -1
  202. package/build-module/autocomplete/index.js +2 -1
  203. package/build-module/autocomplete/index.js.map +1 -1
  204. package/build-module/border-box-control/border-box-control/component.js +5 -1
  205. package/build-module/border-box-control/border-box-control/component.js.map +1 -1
  206. package/build-module/border-box-control/border-box-control-split-controls/component.js +5 -1
  207. package/build-module/border-box-control/border-box-control-split-controls/component.js.map +1 -1
  208. package/build-module/border-control/border-control-dropdown/component.js +2 -1
  209. package/build-module/border-control/border-control-dropdown/component.js.map +1 -1
  210. package/build-module/card/styles.js +17 -17
  211. package/build-module/card/styles.js.map +1 -1
  212. package/build-module/checkbox-control/index.js +3 -3
  213. package/build-module/checkbox-control/index.js.map +1 -1
  214. package/build-module/clipboard-button/index.js +17 -1
  215. package/build-module/clipboard-button/index.js.map +1 -1
  216. package/build-module/color-palette/index.js +6 -3
  217. package/build-module/color-palette/index.js.map +1 -1
  218. package/build-module/color-picker/input-with-slider.js +2 -1
  219. package/build-module/color-picker/input-with-slider.js.map +1 -1
  220. package/build-module/combobox-control/index.js +1 -1
  221. package/build-module/combobox-control/index.js.map +1 -1
  222. package/build-module/custom-gradient-picker/index.js +11 -1
  223. package/build-module/custom-gradient-picker/index.js.map +1 -1
  224. package/build-module/date-time/date/index.js +29 -11
  225. package/build-module/date-time/date/index.js.map +1 -1
  226. package/build-module/date-time/date/styles.js +21 -5
  227. package/build-module/date-time/date/styles.js.map +1 -1
  228. package/build-module/date-time/date-time/index.js +2 -3
  229. package/build-module/date-time/date-time/index.js.map +1 -1
  230. package/build-module/date-time/date-time/styles.js +20 -1
  231. package/build-module/date-time/date-time/styles.js.map +1 -1
  232. package/build-module/date-time/time/styles.js +12 -12
  233. package/build-module/date-time/time/styles.js.map +1 -1
  234. package/build-module/date-time/time/timezone.js +1 -1
  235. package/build-module/date-time/time/timezone.js.map +1 -1
  236. package/build-module/disabled/index.js +16 -8
  237. package/build-module/disabled/index.js.map +1 -1
  238. package/build-module/disabled/styles/disabled-styles.js +6 -12
  239. package/build-module/disabled/styles/disabled-styles.js.map +1 -1
  240. package/build-module/drop-zone/index.js +40 -9
  241. package/build-module/drop-zone/index.js.map +1 -1
  242. package/build-module/drop-zone/provider.js.map +1 -1
  243. package/build-module/drop-zone/types.js +2 -0
  244. package/build-module/drop-zone/types.js.map +1 -0
  245. package/build-module/dropdown-menu/index.js +1 -2
  246. package/build-module/dropdown-menu/index.js.map +1 -1
  247. package/build-module/dropdown-menu/index.native.js +0 -16
  248. package/build-module/dropdown-menu/index.native.js.map +1 -1
  249. package/build-module/flex/flex/hook.js +7 -29
  250. package/build-module/flex/flex/hook.js.map +1 -1
  251. package/build-module/focal-point-picker/controls.js +15 -10
  252. package/build-module/focal-point-picker/controls.js.map +1 -1
  253. package/build-module/focal-point-picker/focal-point.js +4 -6
  254. package/build-module/focal-point-picker/focal-point.js.map +1 -1
  255. package/build-module/focal-point-picker/grid.js +6 -34
  256. package/build-module/focal-point-picker/grid.js.map +1 -1
  257. package/build-module/focal-point-picker/index.js +222 -324
  258. package/build-module/focal-point-picker/index.js.map +1 -1
  259. package/build-module/focal-point-picker/media.js +6 -34
  260. package/build-module/focal-point-picker/media.js.map +1 -1
  261. package/build-module/focal-point-picker/styles/focal-point-picker-style.js +71 -44
  262. package/build-module/focal-point-picker/styles/focal-point-picker-style.js.map +1 -1
  263. package/build-module/focal-point-picker/styles/focal-point-style.js +12 -12
  264. package/build-module/focal-point-picker/styles/focal-point-style.js.map +1 -1
  265. package/build-module/focal-point-picker/types.js +2 -0
  266. package/build-module/focal-point-picker/types.js.map +1 -0
  267. package/build-module/focal-point-picker/utils.js +8 -12
  268. package/build-module/focal-point-picker/utils.js.map +1 -1
  269. package/build-module/focusable-iframe/index.js +6 -0
  270. package/build-module/focusable-iframe/index.js.map +1 -1
  271. package/build-module/font-size-picker/index.js +10 -0
  272. package/build-module/font-size-picker/index.js.map +1 -1
  273. package/build-module/font-size-picker/utils.js +1 -1
  274. package/build-module/font-size-picker/utils.js.map +1 -1
  275. package/build-module/form-file-upload/index.js +21 -4
  276. package/build-module/form-file-upload/index.js.map +1 -1
  277. package/build-module/form-file-upload/types.js +2 -0
  278. package/build-module/form-file-upload/types.js.map +1 -0
  279. package/build-module/form-toggle/index.js +1 -3
  280. package/build-module/form-toggle/index.js.map +1 -1
  281. package/build-module/form-token-field/index.js +4 -5
  282. package/build-module/form-token-field/index.js.map +1 -1
  283. package/build-module/form-token-field/suggestions-list.js +1 -2
  284. package/build-module/form-token-field/suggestions-list.js.map +1 -1
  285. package/build-module/gradient-picker/index.js +34 -25
  286. package/build-module/gradient-picker/index.js.map +1 -1
  287. package/build-module/guide/index.js +8 -5
  288. package/build-module/guide/index.js.map +1 -1
  289. package/build-module/higher-order/with-constrained-tabbing/index.js +1 -1
  290. package/build-module/higher-order/with-constrained-tabbing/index.js.map +1 -1
  291. package/build-module/higher-order/with-spoken-messages/index.js +2 -0
  292. package/build-module/higher-order/with-spoken-messages/index.js.map +1 -1
  293. package/build-module/icon/index.js +1 -2
  294. package/build-module/icon/index.js.map +1 -1
  295. package/build-module/input-control/input-base.js +4 -3
  296. package/build-module/input-control/input-base.js.map +1 -1
  297. package/build-module/input-control/label.js +3 -3
  298. package/build-module/input-control/label.js.map +1 -1
  299. package/build-module/input-control/styles/input-control-styles.js +41 -127
  300. package/build-module/input-control/styles/input-control-styles.js.map +1 -1
  301. package/build-module/isolated-event-container/index.js +3 -0
  302. package/build-module/isolated-event-container/index.js.map +1 -1
  303. package/build-module/mobile/global-styles-context/utils.native.js +2 -2
  304. package/build-module/mobile/global-styles-context/utils.native.js.map +1 -1
  305. package/build-module/modal/aria-helper.js +3 -8
  306. package/build-module/modal/aria-helper.js.map +1 -1
  307. package/build-module/navigable-container/container.js +5 -1
  308. package/build-module/navigable-container/container.js.map +1 -1
  309. package/build-module/navigable-container/menu.js +10 -11
  310. package/build-module/navigable-container/menu.js.map +1 -1
  311. package/build-module/navigable-container/tabbable.js +2 -3
  312. package/build-module/navigable-container/tabbable.js.map +1 -1
  313. package/build-module/navigation/menu/menu-title-search.js +1 -2
  314. package/build-module/navigation/menu/menu-title-search.js.map +1 -1
  315. package/build-module/navigator/navigator-button/hook.js +1 -1
  316. package/build-module/navigator/navigator-button/hook.js.map +1 -1
  317. package/build-module/navigator/navigator-screen/component.js +2 -2
  318. package/build-module/navigator/navigator-screen/component.js.map +1 -1
  319. package/build-module/number-control/index.js +31 -23
  320. package/build-module/number-control/index.js.map +1 -1
  321. package/build-module/number-control/types.js +2 -0
  322. package/build-module/number-control/types.js.map +1 -0
  323. package/build-module/palette-edit/index.js +6 -2
  324. package/build-module/palette-edit/index.js.map +1 -1
  325. package/build-module/placeholder/index.js +1 -3
  326. package/build-module/placeholder/index.js.map +1 -1
  327. package/build-module/popover/index.js +164 -183
  328. package/build-module/popover/index.js.map +1 -1
  329. package/build-module/popover/types.js +2 -0
  330. package/build-module/popover/types.js.map +1 -0
  331. package/build-module/popover/utils.js +112 -23
  332. package/build-module/popover/utils.js.map +1 -1
  333. package/build-module/radio-control/index.js +7 -5
  334. package/build-module/radio-control/index.js.map +1 -1
  335. package/build-module/range-control/index.js +4 -1
  336. package/build-module/range-control/index.js.map +1 -1
  337. package/build-module/range-control/styles/range-control-styles.js +33 -33
  338. package/build-module/range-control/styles/range-control-styles.js.map +1 -1
  339. package/build-module/sandbox/index.js +2 -2
  340. package/build-module/sandbox/index.js.map +1 -1
  341. package/build-module/search-control/index.js +34 -7
  342. package/build-module/search-control/index.js.map +1 -1
  343. package/build-module/search-control/types.js +2 -0
  344. package/build-module/search-control/types.js.map +1 -0
  345. package/build-module/select-control/index.native.js +1 -1
  346. package/build-module/select-control/index.native.js.map +1 -1
  347. package/build-module/tab-panel/index.js +46 -10
  348. package/build-module/tab-panel/index.js.map +1 -1
  349. package/build-module/tab-panel/types.js +2 -0
  350. package/build-module/tab-panel/types.js.map +1 -0
  351. package/build-module/text-control/index.js +2 -0
  352. package/build-module/text-control/index.js.map +1 -1
  353. package/build-module/text-highlight/index.js +2 -5
  354. package/build-module/text-highlight/index.js.map +1 -1
  355. package/build-module/textarea-control/index.js +3 -3
  356. package/build-module/textarea-control/index.js.map +1 -1
  357. package/build-module/toggle-control/index.js +38 -4
  358. package/build-module/toggle-control/index.js.map +1 -1
  359. package/build-module/toggle-control/types.js +2 -0
  360. package/build-module/toggle-control/types.js.map +1 -0
  361. package/build-module/toggle-group-control/toggle-group-control/component.js +4 -3
  362. package/build-module/toggle-group-control/toggle-group-control/component.js.map +1 -1
  363. package/build-module/toggle-group-control/toggle-group-control/styles.js +20 -6
  364. package/build-module/toggle-group-control/toggle-group-control/styles.js.map +1 -1
  365. package/build-module/toggle-group-control/toggle-group-control-option-icon/component.js +1 -1
  366. package/build-module/toggle-group-control/toggle-group-control-option-icon/component.js.map +1 -1
  367. package/build-module/tooltip/index.js +1 -1
  368. package/build-module/tooltip/index.js.map +1 -1
  369. package/build-module/ui/context/context-connect.js +30 -23
  370. package/build-module/ui/context/context-connect.js.map +1 -1
  371. package/build-module/ui/context/context-system-provider.js +5 -4
  372. package/build-module/ui/context/context-system-provider.js.map +1 -1
  373. package/build-module/unit-control/index.js +1 -1
  374. package/build-module/unit-control/index.js.map +1 -1
  375. package/build-module/unit-control/styles/unit-control-styles.js +9 -9
  376. package/build-module/unit-control/styles/unit-control-styles.js.map +1 -1
  377. package/build-module/utils/colors-values.js +2 -30
  378. package/build-module/utils/colors-values.js.map +1 -1
  379. package/build-module/utils/math.js +4 -4
  380. package/build-module/utils/math.js.map +1 -1
  381. package/build-module/utils/strings.js +11 -0
  382. package/build-module/utils/strings.js.map +1 -1
  383. package/build-module/utils/values.js +48 -6
  384. package/build-module/utils/values.js.map +1 -1
  385. package/build-module/view/component.js +5 -8
  386. package/build-module/view/component.js.map +1 -1
  387. package/build-module/view/types.js +2 -0
  388. package/build-module/view/types.js.map +1 -0
  389. package/build-style/style-rtl.css +4 -49
  390. package/build-style/style.css +4 -49
  391. package/build-types/animation/index.d.ts +2 -0
  392. package/build-types/animation/index.d.ts.map +1 -0
  393. package/build-types/base-field/hook.d.ts +54 -55
  394. package/build-types/base-field/hook.d.ts.map +1 -1
  395. package/build-types/border-box-control/border-box-control/component.d.ts +10 -2
  396. package/build-types/border-box-control/border-box-control/component.d.ts.map +1 -1
  397. package/build-types/border-box-control/border-box-control/hook.d.ts +56 -57
  398. package/build-types/border-box-control/border-box-control/hook.d.ts.map +1 -1
  399. package/build-types/border-box-control/border-box-control-linked-button/component.d.ts +2 -1
  400. package/build-types/border-box-control/border-box-control-linked-button/component.d.ts.map +1 -1
  401. package/build-types/border-box-control/border-box-control-linked-button/hook.d.ts +55 -56
  402. package/build-types/border-box-control/border-box-control-linked-button/hook.d.ts.map +1 -1
  403. package/build-types/border-box-control/border-box-control-split-controls/component.d.ts +9 -2
  404. package/build-types/border-box-control/border-box-control-split-controls/component.d.ts.map +1 -1
  405. package/build-types/border-box-control/border-box-control-split-controls/hook.d.ts +56 -57
  406. package/build-types/border-box-control/border-box-control-split-controls/hook.d.ts.map +1 -1
  407. package/build-types/border-box-control/border-box-control-visualizer/component.d.ts +2 -1
  408. package/build-types/border-box-control/border-box-control-visualizer/component.d.ts.map +1 -1
  409. package/build-types/border-box-control/border-box-control-visualizer/hook.d.ts +55 -56
  410. package/build-types/border-box-control/border-box-control-visualizer/hook.d.ts.map +1 -1
  411. package/build-types/border-box-control/types.d.ts +5 -4
  412. package/build-types/border-box-control/types.d.ts.map +1 -1
  413. package/build-types/border-control/border-control/component.d.ts +14 -2
  414. package/build-types/border-control/border-control/component.d.ts.map +1 -1
  415. package/build-types/border-control/border-control/hook.d.ts +56 -57
  416. package/build-types/border-control/border-control/hook.d.ts.map +1 -1
  417. package/build-types/border-control/border-control-dropdown/component.d.ts +10 -2
  418. package/build-types/border-control/border-control-dropdown/component.d.ts.map +1 -1
  419. package/build-types/border-control/border-control-dropdown/hook.d.ts +56 -57
  420. package/build-types/border-control/border-control-dropdown/hook.d.ts.map +1 -1
  421. package/build-types/border-control/border-control-style-picker/component.d.ts +6 -2
  422. package/build-types/border-control/border-control-style-picker/component.d.ts.map +1 -1
  423. package/build-types/border-control/border-control-style-picker/hook.d.ts +55 -56
  424. package/build-types/border-control/border-control-style-picker/hook.d.ts.map +1 -1
  425. package/build-types/border-control/stories/index.d.ts +74 -6
  426. package/build-types/border-control/stories/index.d.ts.map +1 -1
  427. package/build-types/border-control/types.d.ts +6 -8
  428. package/build-types/border-control/types.d.ts.map +1 -1
  429. package/build-types/button-group/index.d.ts +1 -3
  430. package/build-types/button-group/index.d.ts.map +1 -1
  431. package/build-types/card/card/component.d.ts +9 -2
  432. package/build-types/card/card/component.d.ts.map +1 -1
  433. package/build-types/card/card/hook.d.ts +55 -56
  434. package/build-types/card/card/hook.d.ts.map +1 -1
  435. package/build-types/card/card-body/component.d.ts +9 -2
  436. package/build-types/card/card-body/component.d.ts.map +1 -1
  437. package/build-types/card/card-body/hook.d.ts +55 -56
  438. package/build-types/card/card-body/hook.d.ts.map +1 -1
  439. package/build-types/card/card-divider/component.d.ts +7 -2
  440. package/build-types/card/card-divider/component.d.ts.map +1 -1
  441. package/build-types/card/card-divider/hook.d.ts +55 -55
  442. package/build-types/card/card-footer/component.d.ts +11 -2
  443. package/build-types/card/card-footer/component.d.ts.map +1 -1
  444. package/build-types/card/card-footer/hook.d.ts +55 -56
  445. package/build-types/card/card-footer/hook.d.ts.map +1 -1
  446. package/build-types/card/card-header/component.d.ts +1 -1
  447. package/build-types/card/card-header/component.d.ts.map +1 -1
  448. package/build-types/card/card-header/hook.d.ts +55 -56
  449. package/build-types/card/card-header/hook.d.ts.map +1 -1
  450. package/build-types/card/card-media/component.d.ts +2 -1
  451. package/build-types/card/card-media/component.d.ts.map +1 -1
  452. package/build-types/card/card-media/hook.d.ts +55 -56
  453. package/build-types/card/card-media/hook.d.ts.map +1 -1
  454. package/build-types/checkbox-control/index.d.ts +1 -1
  455. package/build-types/checkbox-control/index.d.ts.map +1 -1
  456. package/build-types/checkbox-control/stories/index.d.ts.map +1 -1
  457. package/build-types/checkbox-control/types.d.ts +1 -1
  458. package/build-types/checkbox-control/types.d.ts.map +1 -1
  459. package/build-types/clipboard-button/index.d.ts +16 -0
  460. package/build-types/clipboard-button/index.d.ts.map +1 -0
  461. package/build-types/color-indicator/index.d.ts +1 -3
  462. package/build-types/color-indicator/index.d.ts.map +1 -1
  463. package/build-types/color-palette/index.d.ts.map +1 -1
  464. package/build-types/color-palette/styles.d.ts +1 -3
  465. package/build-types/color-palette/styles.d.ts.map +1 -1
  466. package/build-types/color-picker/component.d.ts +2 -1
  467. package/build-types/color-picker/component.d.ts.map +1 -1
  468. package/build-types/color-picker/input-with-slider.d.ts.map +1 -1
  469. package/build-types/color-picker/styles.d.ts +12 -25
  470. package/build-types/color-picker/styles.d.ts.map +1 -1
  471. package/build-types/composite/index.d.ts +2 -0
  472. package/build-types/composite/index.d.ts.map +1 -0
  473. package/build-types/confirm-dialog/component.d.ts +4 -8
  474. package/build-types/confirm-dialog/component.d.ts.map +1 -1
  475. package/build-types/date-time/date/index.d.ts +1 -1
  476. package/build-types/date-time/date/index.d.ts.map +1 -1
  477. package/build-types/date-time/date/styles.d.ts +8 -8
  478. package/build-types/date-time/date/styles.d.ts.map +1 -1
  479. package/build-types/date-time/date-time/index.d.ts.map +1 -1
  480. package/build-types/date-time/date-time/styles.d.ts +11 -0
  481. package/build-types/date-time/date-time/styles.d.ts.map +1 -1
  482. package/build-types/date-time/time/styles.d.ts +21 -43
  483. package/build-types/date-time/time/styles.d.ts.map +1 -1
  484. package/build-types/disabled/index.d.ts +1 -1
  485. package/build-types/disabled/index.d.ts.map +1 -1
  486. package/build-types/disabled/styles/disabled-styles.d.ts +1 -5
  487. package/build-types/disabled/styles/disabled-styles.d.ts.map +1 -1
  488. package/build-types/disclosure/index.d.ts +2 -0
  489. package/build-types/disclosure/index.d.ts.map +1 -0
  490. package/build-types/divider/component.d.ts +7 -2
  491. package/build-types/divider/component.d.ts.map +1 -1
  492. package/build-types/drop-zone/index.d.ts +29 -0
  493. package/build-types/drop-zone/index.d.ts.map +1 -0
  494. package/build-types/drop-zone/provider.d.ts +5 -0
  495. package/build-types/drop-zone/provider.d.ts.map +1 -0
  496. package/build-types/drop-zone/stories/index.d.ts +12 -0
  497. package/build-types/drop-zone/stories/index.d.ts.map +1 -0
  498. package/build-types/drop-zone/types.d.ts +29 -0
  499. package/build-types/drop-zone/types.d.ts.map +1 -0
  500. package/build-types/dropdown/dropdown-content-wrapper.d.ts +2 -1
  501. package/build-types/dropdown/dropdown-content-wrapper.d.ts.map +1 -1
  502. package/build-types/dropdown-menu/index.d.ts.map +1 -1
  503. package/build-types/elevation/component.d.ts +2 -1
  504. package/build-types/elevation/component.d.ts.map +1 -1
  505. package/build-types/elevation/hook.d.ts +54 -55
  506. package/build-types/elevation/hook.d.ts.map +1 -1
  507. package/build-types/external-link/index.d.ts +1 -1
  508. package/build-types/external-link/index.d.ts.map +1 -1
  509. package/build-types/external-link/styles/external-link-styles.d.ts +1 -1
  510. package/build-types/flex/flex/component.d.ts +2 -1
  511. package/build-types/flex/flex/component.d.ts.map +1 -1
  512. package/build-types/flex/flex/hook.d.ts +55 -56
  513. package/build-types/flex/flex/hook.d.ts.map +1 -1
  514. package/build-types/flex/flex-block/component.d.ts +2 -1
  515. package/build-types/flex/flex-block/component.d.ts.map +1 -1
  516. package/build-types/flex/flex-block/hook.d.ts +55 -56
  517. package/build-types/flex/flex-block/hook.d.ts.map +1 -1
  518. package/build-types/flex/flex-item/component.d.ts +2 -1
  519. package/build-types/flex/flex-item/component.d.ts.map +1 -1
  520. package/build-types/flex/flex-item/hook.d.ts +55 -56
  521. package/build-types/flex/flex-item/hook.d.ts.map +1 -1
  522. package/build-types/focal-point-picker/controls.d.ts +4 -0
  523. package/build-types/focal-point-picker/controls.d.ts.map +1 -0
  524. package/build-types/focal-point-picker/focal-point.d.ts +5 -0
  525. package/build-types/focal-point-picker/focal-point.d.ts.map +1 -0
  526. package/build-types/focal-point-picker/grid.d.ts +5 -0
  527. package/build-types/focal-point-picker/grid.d.ts.map +1 -0
  528. package/build-types/focal-point-picker/index.d.ts +51 -0
  529. package/build-types/focal-point-picker/index.d.ts.map +1 -0
  530. package/build-types/focal-point-picker/media.d.ts +4 -0
  531. package/build-types/focal-point-picker/media.d.ts.map +1 -0
  532. package/build-types/focal-point-picker/stories/index.d.ts +15 -0
  533. package/build-types/focal-point-picker/stories/index.d.ts.map +1 -0
  534. package/build-types/focal-point-picker/styles/focal-point-picker-style.d.ts +56 -0
  535. package/build-types/focal-point-picker/styles/focal-point-picker-style.d.ts.map +1 -0
  536. package/build-types/focal-point-picker/styles/focal-point-style.d.ts +19 -0
  537. package/build-types/focal-point-picker/styles/focal-point-style.d.ts.map +1 -0
  538. package/build-types/focal-point-picker/types.d.ts +79 -0
  539. package/build-types/focal-point-picker/types.d.ts.map +1 -0
  540. package/build-types/focal-point-picker/utils.d.ts +26 -0
  541. package/build-types/focal-point-picker/utils.d.ts.map +1 -0
  542. package/build-types/focusable-iframe/index.d.ts +8 -0
  543. package/build-types/focusable-iframe/index.d.ts.map +1 -0
  544. package/build-types/form-file-upload/index.d.ts +22 -0
  545. package/build-types/form-file-upload/index.d.ts.map +1 -0
  546. package/build-types/form-file-upload/stories/index.d.ts +23 -0
  547. package/build-types/form-file-upload/stories/index.d.ts.map +1 -0
  548. package/build-types/form-file-upload/test/index.d.ts +2 -0
  549. package/build-types/form-file-upload/test/index.d.ts.map +1 -0
  550. package/build-types/form-file-upload/types.d.ts +63 -0
  551. package/build-types/form-file-upload/types.d.ts.map +1 -0
  552. package/build-types/form-toggle/index.d.ts +1 -1
  553. package/build-types/form-toggle/index.d.ts.map +1 -1
  554. package/build-types/form-token-field/index.d.ts.map +1 -1
  555. package/build-types/form-token-field/styles.d.ts +1 -3
  556. package/build-types/form-token-field/styles.d.ts.map +1 -1
  557. package/build-types/form-token-field/suggestions-list.d.ts.map +1 -1
  558. package/build-types/form-token-field/token-input.d.ts +1 -3
  559. package/build-types/form-token-field/token-input.d.ts.map +1 -1
  560. package/build-types/grid/component.d.ts +2 -1
  561. package/build-types/grid/component.d.ts.map +1 -1
  562. package/build-types/grid/hook.d.ts +55 -56
  563. package/build-types/grid/hook.d.ts.map +1 -1
  564. package/build-types/h-stack/component.d.ts +5 -2
  565. package/build-types/h-stack/component.d.ts.map +1 -1
  566. package/build-types/h-stack/hook.d.ts +55 -56
  567. package/build-types/h-stack/hook.d.ts.map +1 -1
  568. package/build-types/heading/component.d.ts +4 -2
  569. package/build-types/heading/component.d.ts.map +1 -1
  570. package/build-types/heading/hook.d.ts +54 -55
  571. package/build-types/heading/hook.d.ts.map +1 -1
  572. package/build-types/higher-order/with-constrained-tabbing/index.d.ts +3 -0
  573. package/build-types/higher-order/with-constrained-tabbing/index.d.ts.map +1 -0
  574. package/build-types/higher-order/with-spoken-messages/index.d.ts +4 -0
  575. package/build-types/higher-order/with-spoken-messages/index.d.ts.map +1 -0
  576. package/build-types/input-control/index.d.ts +1 -1
  577. package/build-types/input-control/index.d.ts.map +1 -1
  578. package/build-types/input-control/input-base.d.ts.map +1 -1
  579. package/build-types/input-control/input-field.d.ts +1 -3
  580. package/build-types/input-control/input-field.d.ts.map +1 -1
  581. package/build-types/input-control/input-prefix-wrapper.d.ts +2 -1
  582. package/build-types/input-control/input-prefix-wrapper.d.ts.map +1 -1
  583. package/build-types/input-control/input-suffix-wrapper.d.ts +2 -1
  584. package/build-types/input-control/input-suffix-wrapper.d.ts.map +1 -1
  585. package/build-types/input-control/label.d.ts.map +1 -1
  586. package/build-types/input-control/stories/index.d.ts +5 -5
  587. package/build-types/input-control/stories/index.d.ts.map +1 -1
  588. package/build-types/input-control/styles/input-control-styles.d.ts +2 -6
  589. package/build-types/input-control/styles/input-control-styles.d.ts.map +1 -1
  590. package/build-types/input-control/types.d.ts +3 -0
  591. package/build-types/input-control/types.d.ts.map +1 -1
  592. package/build-types/isolated-event-container/index.d.ts +3 -0
  593. package/build-types/isolated-event-container/index.d.ts.map +1 -0
  594. package/build-types/item-group/item/component.d.ts +2 -1
  595. package/build-types/item-group/item/component.d.ts.map +1 -1
  596. package/build-types/item-group/item/hook.d.ts +54 -55
  597. package/build-types/item-group/item/hook.d.ts.map +1 -1
  598. package/build-types/item-group/item-group/component.d.ts +2 -1
  599. package/build-types/item-group/item-group/component.d.ts.map +1 -1
  600. package/build-types/item-group/item-group/hook.d.ts +54 -55
  601. package/build-types/item-group/item-group/hook.d.ts.map +1 -1
  602. package/build-types/mobile/inserter-button/sparkles.d.ts +3 -0
  603. package/build-types/mobile/inserter-button/sparkles.d.ts.map +1 -0
  604. package/build-types/modal/aria-helper.d.ts.map +1 -1
  605. package/build-types/navigable-container/menu.d.ts.map +1 -1
  606. package/build-types/navigable-container/tabbable.d.ts.map +1 -1
  607. package/build-types/navigator/navigator-back-button/component.d.ts +4 -2
  608. package/build-types/navigator/navigator-back-button/component.d.ts.map +1 -1
  609. package/build-types/navigator/navigator-back-button/hook.d.ts +59 -60
  610. package/build-types/navigator/navigator-back-button/hook.d.ts.map +1 -1
  611. package/build-types/navigator/navigator-button/component.d.ts +7 -2
  612. package/build-types/navigator/navigator-button/component.d.ts.map +1 -1
  613. package/build-types/navigator/navigator-button/hook.d.ts +59 -60
  614. package/build-types/navigator/navigator-button/hook.d.ts.map +1 -1
  615. package/build-types/navigator/navigator-provider/component.d.ts +2 -1
  616. package/build-types/navigator/navigator-provider/component.d.ts.map +1 -1
  617. package/build-types/navigator/navigator-screen/component.d.ts +1 -1
  618. package/build-types/navigator/navigator-screen/component.d.ts.map +1 -1
  619. package/build-types/number-control/index.d.ts +10 -28
  620. package/build-types/number-control/index.d.ts.map +1 -1
  621. package/build-types/number-control/styles/number-control-styles.d.ts +1 -1
  622. package/build-types/number-control/types.d.ts +72 -0
  623. package/build-types/number-control/types.d.ts.map +1 -0
  624. package/build-types/placeholder/index.d.ts +1 -1
  625. package/build-types/placeholder/index.d.ts.map +1 -1
  626. package/build-types/popover/index.d.ts +28 -25
  627. package/build-types/popover/index.d.ts.map +1 -1
  628. package/build-types/popover/stories/index.d.ts +12 -0
  629. package/build-types/popover/stories/index.d.ts.map +1 -0
  630. package/build-types/popover/types.d.ts +161 -0
  631. package/build-types/popover/types.d.ts.map +1 -0
  632. package/build-types/popover/utils.d.ts +42 -24
  633. package/build-types/popover/utils.d.ts.map +1 -1
  634. package/build-types/radio-context/index.d.ts +6 -0
  635. package/build-types/radio-context/index.d.ts.map +1 -0
  636. package/build-types/radio-control/index.d.ts +1 -1
  637. package/build-types/radio-control/index.d.ts.map +1 -1
  638. package/build-types/range-control/index.d.ts +2 -4
  639. package/build-types/range-control/index.d.ts.map +1 -1
  640. package/build-types/range-control/input-range.d.ts +2 -4
  641. package/build-types/range-control/input-range.d.ts.map +1 -1
  642. package/build-types/range-control/styles/range-control-styles.d.ts +5 -10
  643. package/build-types/range-control/styles/range-control-styles.d.ts.map +1 -1
  644. package/build-types/resizable-box/index.d.ts +1 -1
  645. package/build-types/resizable-box/resize-tooltip/index.d.ts +1 -1
  646. package/build-types/resizable-box/resize-tooltip/label.d.ts +1 -1
  647. package/build-types/resizable-box/resize-tooltip/styles/resize-tooltip.styles.d.ts +1 -3
  648. package/build-types/resizable-box/resize-tooltip/styles/resize-tooltip.styles.d.ts.map +1 -1
  649. package/build-types/scrollable/component.d.ts +2 -1
  650. package/build-types/scrollable/component.d.ts.map +1 -1
  651. package/build-types/scrollable/hook.d.ts +55 -56
  652. package/build-types/scrollable/hook.d.ts.map +1 -1
  653. package/build-types/search-control/index.d.ts +29 -0
  654. package/build-types/search-control/index.d.ts.map +1 -0
  655. package/build-types/search-control/stories/index.d.ts +47 -0
  656. package/build-types/search-control/stories/index.d.ts.map +1 -0
  657. package/build-types/search-control/types.d.ts +39 -0
  658. package/build-types/search-control/types.d.ts.map +1 -0
  659. package/build-types/select-control/index.d.ts +1 -3
  660. package/build-types/select-control/index.d.ts.map +1 -1
  661. package/build-types/select-control/stories/index.d.ts +2 -6
  662. package/build-types/select-control/stories/index.d.ts.map +1 -1
  663. package/build-types/select-control/styles/select-control-styles.d.ts +1 -3
  664. package/build-types/select-control/styles/select-control-styles.d.ts.map +1 -1
  665. package/build-types/spacer/component.d.ts +2 -1
  666. package/build-types/spacer/component.d.ts.map +1 -1
  667. package/build-types/spacer/hook.d.ts +55 -56
  668. package/build-types/spacer/hook.d.ts.map +1 -1
  669. package/build-types/spinner/index.d.ts +1 -3
  670. package/build-types/spinner/index.d.ts.map +1 -1
  671. package/build-types/surface/component.d.ts +2 -1
  672. package/build-types/surface/component.d.ts.map +1 -1
  673. package/build-types/surface/hook.d.ts +55 -56
  674. package/build-types/surface/hook.d.ts.map +1 -1
  675. package/build-types/tab-panel/index.d.ts +42 -0
  676. package/build-types/tab-panel/index.d.ts.map +1 -0
  677. package/build-types/tab-panel/stories/index.d.ts +12 -0
  678. package/build-types/tab-panel/stories/index.d.ts.map +1 -0
  679. package/build-types/tab-panel/test/index.d.ts +2 -0
  680. package/build-types/tab-panel/test/index.d.ts.map +1 -0
  681. package/build-types/tab-panel/types.d.ts +64 -0
  682. package/build-types/tab-panel/types.d.ts.map +1 -0
  683. package/build-types/text/component.d.ts +1 -1
  684. package/build-types/text/component.d.ts.map +1 -1
  685. package/build-types/text/hook.d.ts +55 -56
  686. package/build-types/text/hook.d.ts.map +1 -1
  687. package/build-types/text-control/index.d.ts +2 -4
  688. package/build-types/text-control/index.d.ts.map +1 -1
  689. package/build-types/text-control/types.d.ts +1 -1
  690. package/build-types/text-control/types.d.ts.map +1 -1
  691. package/build-types/text-highlight/index.d.ts +0 -3
  692. package/build-types/text-highlight/index.d.ts.map +1 -1
  693. package/build-types/textarea-control/index.d.ts +1 -1
  694. package/build-types/textarea-control/index.d.ts.map +1 -1
  695. package/build-types/textarea-control/types.d.ts +1 -1
  696. package/build-types/textarea-control/types.d.ts.map +1 -1
  697. package/build-types/toggle-control/index.d.ts +26 -0
  698. package/build-types/toggle-control/index.d.ts.map +1 -0
  699. package/build-types/toggle-control/stories/index.d.ts +13 -0
  700. package/build-types/toggle-control/stories/index.d.ts.map +1 -0
  701. package/build-types/toggle-control/test/index.d.ts +2 -0
  702. package/build-types/toggle-control/test/index.d.ts.map +1 -0
  703. package/build-types/toggle-control/types.d.ts +20 -0
  704. package/build-types/toggle-control/types.d.ts.map +1 -0
  705. package/build-types/toggle-group-control/stories/index.d.ts +4 -2
  706. package/build-types/toggle-group-control/stories/index.d.ts.map +1 -1
  707. package/build-types/toggle-group-control/toggle-group-control/component.d.ts +12 -2
  708. package/build-types/toggle-group-control/toggle-group-control/component.d.ts.map +1 -1
  709. package/build-types/toggle-group-control/toggle-group-control/styles.d.ts +4 -0
  710. package/build-types/toggle-group-control/toggle-group-control/styles.d.ts.map +1 -1
  711. package/build-types/toggle-group-control/toggle-group-control-option/component.d.ts +2 -4
  712. package/build-types/toggle-group-control/toggle-group-control-option/component.d.ts.map +1 -1
  713. package/build-types/toggle-group-control/toggle-group-control-option-base/component.d.ts +2 -1
  714. package/build-types/toggle-group-control/toggle-group-control-option-base/component.d.ts.map +1 -1
  715. package/build-types/toggle-group-control/toggle-group-control-option-icon/component.d.ts +3 -5
  716. package/build-types/toggle-group-control/toggle-group-control-option-icon/component.d.ts.map +1 -1
  717. package/build-types/toggle-group-control/types.d.ts +2 -2
  718. package/build-types/toggle-group-control/types.d.ts.map +1 -1
  719. package/build-types/tools-panel/tools-panel/component.d.ts +2 -1
  720. package/build-types/tools-panel/tools-panel/component.d.ts.map +1 -1
  721. package/build-types/tools-panel/tools-panel/hook.d.ts +55 -56
  722. package/build-types/tools-panel/tools-panel/hook.d.ts.map +1 -1
  723. package/build-types/tools-panel/tools-panel-header/component.d.ts +2 -1
  724. package/build-types/tools-panel/tools-panel-header/component.d.ts.map +1 -1
  725. package/build-types/tools-panel/tools-panel-header/hook.d.ts +55 -56
  726. package/build-types/tools-panel/tools-panel-header/hook.d.ts.map +1 -1
  727. package/build-types/tools-panel/tools-panel-item/component.d.ts +6 -2
  728. package/build-types/tools-panel/tools-panel-item/component.d.ts.map +1 -1
  729. package/build-types/tools-panel/tools-panel-item/hook.d.ts +55 -56
  730. package/build-types/tools-panel/tools-panel-item/hook.d.ts.map +1 -1
  731. package/build-types/truncate/component.d.ts +2 -1
  732. package/build-types/truncate/component.d.ts.map +1 -1
  733. package/build-types/truncate/hook.d.ts +55 -56
  734. package/build-types/truncate/hook.d.ts.map +1 -1
  735. package/build-types/ui/context/context-connect.d.ts +10 -9
  736. package/build-types/ui/context/context-connect.d.ts.map +1 -1
  737. package/build-types/ui/context/context-system-provider.d.ts.map +1 -1
  738. package/build-types/ui/context/test/context-connect.d.ts +2 -0
  739. package/build-types/ui/context/test/context-connect.d.ts.map +1 -0
  740. package/build-types/ui/context/test/wordpress-component.d.ts +2 -0
  741. package/build-types/ui/context/test/wordpress-component.d.ts.map +1 -0
  742. package/build-types/ui/context/wordpress-component.d.ts +8 -9
  743. package/build-types/ui/context/wordpress-component.d.ts.map +1 -1
  744. package/build-types/ui/control-group/component.d.ts +4 -1
  745. package/build-types/ui/control-group/component.d.ts.map +1 -1
  746. package/build-types/ui/control-group/hook.d.ts +55 -56
  747. package/build-types/ui/control-group/hook.d.ts.map +1 -1
  748. package/build-types/ui/control-label/component.d.ts +4 -1
  749. package/build-types/ui/control-label/component.d.ts.map +1 -1
  750. package/build-types/ui/control-label/hook.d.ts +55 -56
  751. package/build-types/ui/control-label/hook.d.ts.map +1 -1
  752. package/build-types/ui/form-group/form-group.d.ts +4 -8
  753. package/build-types/ui/form-group/form-group.d.ts.map +1 -1
  754. package/build-types/ui/form-group/use-form-group.d.ts +112 -114
  755. package/build-types/ui/form-group/use-form-group.d.ts.map +1 -1
  756. package/build-types/ui/shortcut/component.d.ts +2 -1
  757. package/build-types/ui/shortcut/component.d.ts.map +1 -1
  758. package/build-types/ui/spinner/component.d.ts +1 -1
  759. package/build-types/ui/tooltip/component.d.ts +11 -1
  760. package/build-types/ui/tooltip/component.d.ts.map +1 -1
  761. package/build-types/ui/tooltip/content.d.ts +7 -1
  762. package/build-types/ui/tooltip/styles.d.ts +1 -3
  763. package/build-types/ui/tooltip/styles.d.ts.map +1 -1
  764. package/build-types/unit-control/index.d.ts +2 -12
  765. package/build-types/unit-control/index.d.ts.map +1 -1
  766. package/build-types/unit-control/stories/index.d.ts.map +1 -1
  767. package/build-types/unit-control/styles/unit-control-styles.d.ts +5 -10
  768. package/build-types/unit-control/styles/unit-control-styles.d.ts.map +1 -1
  769. package/build-types/unit-control/types.d.ts +3 -35
  770. package/build-types/unit-control/types.d.ts.map +1 -1
  771. package/build-types/utils/colors-values.d.ts +0 -18
  772. package/build-types/utils/colors-values.d.ts.map +1 -1
  773. package/build-types/utils/math.d.ts +6 -6
  774. package/build-types/utils/math.d.ts.map +1 -1
  775. package/build-types/utils/strings.d.ts +8 -0
  776. package/build-types/utils/strings.d.ts.map +1 -1
  777. package/build-types/utils/values.d.ts +10 -8
  778. package/build-types/utils/values.d.ts.map +1 -1
  779. package/build-types/v-stack/component.d.ts +8 -2
  780. package/build-types/v-stack/component.d.ts.map +1 -1
  781. package/build-types/v-stack/hook.d.ts +55 -56
  782. package/build-types/v-stack/hook.d.ts.map +1 -1
  783. package/build-types/v-stack/stories/index.d.ts +8 -1
  784. package/build-types/v-stack/stories/index.d.ts.map +1 -1
  785. package/build-types/view/component.d.ts +8 -6
  786. package/build-types/view/component.d.ts.map +1 -1
  787. package/build-types/view/stories/index.d.ts +12 -0
  788. package/build-types/view/stories/index.d.ts.map +1 -0
  789. package/build-types/view/types.d.ts +8 -0
  790. package/build-types/view/types.d.ts.map +1 -0
  791. package/build-types/visually-hidden/component.d.ts +2 -1
  792. package/build-types/visually-hidden/component.d.ts.map +1 -1
  793. package/build-types/z-stack/component.d.ts +2 -1
  794. package/build-types/z-stack/component.d.ts.map +1 -1
  795. package/package.json +17 -17
  796. package/src/alignment-matrix-control/styles/alignment-matrix-control-styles.js +2 -1
  797. package/src/angle-picker-control/README.md +9 -1
  798. package/src/angle-picker-control/index.js +12 -0
  799. package/src/angle-picker-control/stories/index.js +3 -3
  800. package/src/autocomplete/get-default-use-items.js +6 -1
  801. package/src/autocomplete/index.js +2 -1
  802. package/src/base-field/test/__snapshots__/index.js.snap +3 -5
  803. package/src/border-box-control/border-box-control/component.tsx +9 -2
  804. package/src/border-box-control/border-box-control-split-controls/component.tsx +8 -2
  805. package/src/border-box-control/types.ts +5 -4
  806. package/src/border-control/border-control-dropdown/component.tsx +3 -8
  807. package/src/border-control/types.ts +7 -9
  808. package/src/card/styles.ts +1 -1
  809. package/src/card/test/__snapshots__/index.tsx.snap +39 -51
  810. package/src/checkbox-control/index.tsx +3 -6
  811. package/src/checkbox-control/stories/index.tsx +6 -2
  812. package/src/checkbox-control/types.ts +4 -1
  813. package/src/clipboard-button/index.js +13 -0
  814. package/src/color-palette/index.js +9 -6
  815. package/src/color-palette/style.scss +0 -14
  816. package/src/color-palette/test/__snapshots__/index.js.snap +78 -95
  817. package/src/color-picker/input-with-slider.tsx +1 -0
  818. package/src/combobox-control/index.js +1 -1
  819. package/src/combobox-control/test/index.js +311 -0
  820. package/src/custom-gradient-picker/index.js +13 -1
  821. package/src/custom-gradient-picker/stories/index.js +3 -0
  822. package/src/date-time/date/index.tsx +28 -8
  823. package/src/date-time/date/styles.ts +6 -0
  824. package/src/date-time/date/test/index.tsx +6 -2
  825. package/src/date-time/date-time/index.tsx +3 -4
  826. package/src/date-time/date-time/styles.ts +9 -0
  827. package/src/date-time/time/styles.ts +1 -0
  828. package/src/date-time/time/timezone.tsx +1 -1
  829. package/src/dimension-control/test/__snapshots__/index.test.js.snap +1122 -164
  830. package/src/dimension-control/test/index.test.js +29 -38
  831. package/src/disabled/index.tsx +27 -9
  832. package/src/disabled/styles/disabled-styles.tsx +2 -2
  833. package/src/disabled/test/index.tsx +38 -0
  834. package/src/drop-zone/README.md +3 -3
  835. package/src/drop-zone/{index.js → index.tsx} +48 -13
  836. package/src/drop-zone/{provider.js → provider.ts} +5 -1
  837. package/src/drop-zone/stories/index.tsx +30 -0
  838. package/src/drop-zone/types.ts +29 -0
  839. package/src/dropdown/README.md +6 -4
  840. package/src/dropdown/stories/index.js +1 -1
  841. package/src/dropdown-menu/index.js +1 -2
  842. package/src/dropdown-menu/index.native.js +0 -13
  843. package/src/dropdown-menu/test/index.js +54 -58
  844. package/src/flex/flex/hook.ts +5 -54
  845. package/src/flex/test/__snapshots__/index.tsx.snap +7 -15
  846. package/src/focal-point-picker/README.md +5 -8
  847. package/src/focal-point-picker/controls.tsx +94 -0
  848. package/src/focal-point-picker/{focal-point.js → focal-point.tsx} +6 -6
  849. package/src/focal-point-picker/grid.tsx +31 -0
  850. package/src/focal-point-picker/index.tsx +286 -0
  851. package/src/focal-point-picker/{media.js → media.tsx} +10 -28
  852. package/src/focal-point-picker/stories/index.tsx +93 -0
  853. package/src/focal-point-picker/styles/{focal-point-picker-style.js → focal-point-picker-style.ts} +35 -12
  854. package/src/focal-point-picker/styles/{focal-point-style.js → focal-point-style.ts} +2 -1
  855. package/src/focal-point-picker/test/index.js +28 -8
  856. package/src/focal-point-picker/types.ts +93 -0
  857. package/src/focal-point-picker/{utils.js → utils.ts} +11 -15
  858. package/src/focusable-iframe/index.js +5 -0
  859. package/src/font-size-picker/README.md +9 -0
  860. package/src/font-size-picker/index.js +9 -0
  861. package/src/font-size-picker/stories/index.js +3 -5
  862. package/src/font-size-picker/test/index.js +15 -2
  863. package/src/font-size-picker/test/utils.js +1 -2
  864. package/src/font-size-picker/utils.js +1 -1
  865. package/src/form-file-upload/README.md +6 -1
  866. package/src/form-file-upload/{index.js → index.tsx} +22 -4
  867. package/src/form-file-upload/stories/index.tsx +74 -0
  868. package/src/form-file-upload/test/{index.js → index.tsx} +7 -3
  869. package/src/form-file-upload/types.ts +63 -0
  870. package/src/form-toggle/index.tsx +1 -6
  871. package/src/form-token-field/index.tsx +4 -5
  872. package/src/form-token-field/suggestions-list.tsx +1 -2
  873. package/src/gradient-picker/README.md +9 -0
  874. package/src/gradient-picker/index.js +50 -47
  875. package/src/gradient-picker/stories/index.js +11 -0
  876. package/src/guide/index.js +6 -3
  877. package/src/guide/test/index.js +138 -1
  878. package/src/h-stack/test/__snapshots__/index.tsx.snap +3 -12
  879. package/src/higher-order/with-constrained-tabbing/index.js +1 -1
  880. package/src/higher-order/with-filters/test/__snapshots__/index.js.snap +87 -0
  881. package/src/higher-order/with-filters/test/index.js +20 -74
  882. package/src/higher-order/with-spoken-messages/index.js +2 -0
  883. package/src/icon/index.tsx +1 -1
  884. package/src/icon/stories/index.js +18 -0
  885. package/src/icon/test/index.js +32 -83
  886. package/src/input-control/input-base.tsx +9 -11
  887. package/src/input-control/label.tsx +9 -4
  888. package/src/input-control/styles/input-control-styles.tsx +0 -43
  889. package/src/input-control/types.ts +3 -0
  890. package/src/isolated-event-container/index.js +3 -0
  891. package/src/isolated-event-container/test/index.js +53 -11
  892. package/src/item-group/test/__snapshots__/index.js.snap +16 -16
  893. package/src/keyboard-shortcuts/test/index.js +16 -31
  894. package/src/menu-item/test/__snapshots__/index.js.snap +60 -62
  895. package/src/menu-item/test/index.js +30 -22
  896. package/src/mobile/global-styles-context/utils.native.js +7 -2
  897. package/src/modal/aria-helper.js +3 -8
  898. package/src/navigable-container/README.md +2 -0
  899. package/src/navigable-container/container.js +8 -1
  900. package/src/navigable-container/menu.js +14 -11
  901. package/src/navigable-container/stories/navigable-menu.js +49 -0
  902. package/src/navigable-container/stories/tabbable-container.js +40 -0
  903. package/src/navigable-container/tabbable.js +2 -3
  904. package/src/navigable-container/test/navigable-menu.js +277 -0
  905. package/src/navigable-container/test/tababble-container.js +175 -0
  906. package/src/navigation/menu/menu-title-search.js +1 -2
  907. package/src/navigator/navigator-button/hook.ts +1 -1
  908. package/src/navigator/navigator-screen/component.tsx +6 -1
  909. package/src/number-control/index.tsx +209 -0
  910. package/src/number-control/stories/index.js +6 -18
  911. package/src/number-control/types.ts +75 -0
  912. package/src/palette-edit/index.js +14 -10
  913. package/src/palette-edit/style.scss +3 -11
  914. package/src/panel/test/__snapshots__/header.js.snap +9 -0
  915. package/src/panel/test/__snapshots__/index.js.snap +17 -0
  916. package/src/panel/test/__snapshots__/row.js.snap +17 -0
  917. package/src/panel/test/header.js +30 -23
  918. package/src/panel/test/index.js +33 -25
  919. package/src/panel/test/row.js +18 -11
  920. package/src/placeholder/index.tsx +4 -5
  921. package/src/placeholder/style.scss +5 -4
  922. package/src/popover/README.md +83 -48
  923. package/src/popover/{index.js → index.tsx} +254 -202
  924. package/src/popover/stories/{index.js → index.tsx} +51 -55
  925. package/src/popover/types.ts +173 -0
  926. package/src/popover/utils.ts +230 -0
  927. package/src/radio-control/index.tsx +28 -29
  928. package/src/radio-control/style.scss +0 -17
  929. package/src/range-control/index.tsx +4 -1
  930. package/src/range-control/styles/range-control-styles.ts +8 -8
  931. package/src/sandbox/index.js +2 -2
  932. package/src/search-control/README.md +5 -3
  933. package/src/search-control/{index.js → index.tsx} +35 -7
  934. package/src/search-control/stories/index.tsx +66 -0
  935. package/src/search-control/types.ts +43 -0
  936. package/src/select-control/index.native.js +1 -1
  937. package/src/slot-fill/test/index.js +69 -12
  938. package/src/style.scss +0 -1
  939. package/src/surface/test/__snapshots__/index.tsx.snap +10 -10
  940. package/src/tab-panel/README.md +1 -2
  941. package/src/tab-panel/{index.js → index.tsx} +58 -13
  942. package/src/tab-panel/stories/index.tsx +37 -0
  943. package/src/tab-panel/test/index.tsx +120 -0
  944. package/src/tab-panel/types.ts +65 -0
  945. package/src/text-control/index.tsx +2 -0
  946. package/src/text-control/types.ts +5 -1
  947. package/src/text-highlight/index.tsx +1 -5
  948. package/src/textarea-control/index.tsx +3 -6
  949. package/src/textarea-control/types.ts +1 -1
  950. package/src/toggle-control/index.tsx +97 -0
  951. package/src/toggle-control/stories/index.tsx +58 -0
  952. package/src/toggle-control/test/index.tsx +53 -0
  953. package/src/toggle-control/types.ts +28 -0
  954. package/src/toggle-group-control/stories/index.tsx +10 -3
  955. package/src/toggle-group-control/test/__snapshots__/index.tsx.snap +62 -44
  956. package/src/toggle-group-control/toggle-group-control/component.tsx +6 -5
  957. package/src/toggle-group-control/toggle-group-control/styles.ts +5 -0
  958. package/src/toggle-group-control/toggle-group-control-option-icon/README.md +1 -1
  959. package/src/toggle-group-control/toggle-group-control-option-icon/component.tsx +1 -1
  960. package/src/toggle-group-control/types.ts +2 -2
  961. package/src/tooltip/index.js +1 -1
  962. package/src/ui/context/context-connect.ts +58 -31
  963. package/src/ui/context/context-system-provider.js +5 -4
  964. package/src/ui/context/test/context-connect.tsx +55 -0
  965. package/src/ui/context/test/wordpress-component.tsx +36 -0
  966. package/src/ui/context/wordpress-component.ts +18 -12
  967. package/src/ui/control-group/test/__snapshots__/index.js.snap +1 -4
  968. package/src/unit-control/index.tsx +1 -1
  969. package/src/unit-control/stories/index.tsx +7 -16
  970. package/src/unit-control/styles/unit-control-styles.ts +2 -2
  971. package/src/unit-control/test/__snapshots__/index.tsx.snap +4 -6
  972. package/src/unit-control/types.ts +3 -44
  973. package/src/utils/colors-values.js +2 -24
  974. package/src/utils/math.js +4 -4
  975. package/src/utils/strings.ts +11 -0
  976. package/src/utils/values.js +48 -6
  977. package/src/v-stack/test/__snapshots__/index.tsx.snap +3 -12
  978. package/src/view/{component.js → component.tsx} +13 -4
  979. package/src/view/stories/index.tsx +32 -0
  980. package/src/view/types.ts +6 -0
  981. package/tsconfig.json +39 -76
  982. package/tsconfig.tsbuildinfo +1 -1
  983. package/build/ui/__storybook-utils/example-grid.js +0 -88
  984. package/build/ui/__storybook-utils/example-grid.js.map +0 -1
  985. package/build/ui/__storybook-utils/index.js +0 -19
  986. package/build/ui/__storybook-utils/index.js.map +0 -1
  987. package/build/ui/__storybook-utils/page.js +0 -43
  988. package/build/ui/__storybook-utils/page.js.map +0 -1
  989. package/build/utils/keyboard.js +0 -41
  990. package/build/utils/keyboard.js.map +0 -1
  991. package/build-module/ui/__storybook-utils/example-grid.js +0 -69
  992. package/build-module/ui/__storybook-utils/example-grid.js.map +0 -1
  993. package/build-module/ui/__storybook-utils/index.js +0 -2
  994. package/build-module/ui/__storybook-utils/index.js.map +0 -1
  995. package/build-module/ui/__storybook-utils/page.js +0 -32
  996. package/build-module/ui/__storybook-utils/page.js.map +0 -1
  997. package/build-module/utils/keyboard.js +0 -33
  998. package/build-module/utils/keyboard.js.map +0 -1
  999. package/build-types/utils/keyboard.d.ts +0 -12
  1000. package/build-types/utils/keyboard.d.ts.map +0 -1
  1001. package/src/focal-point-picker/controls.js +0 -66
  1002. package/src/focal-point-picker/grid.js +0 -62
  1003. package/src/focal-point-picker/index.js +0 -344
  1004. package/src/focal-point-picker/stories/index.js +0 -76
  1005. package/src/guide/test/page-control.js +0 -40
  1006. package/src/navigable-container/test/menu.js +0 -310
  1007. package/src/navigable-container/test/tabbable.js +0 -158
  1008. package/src/number-control/index.js +0 -192
  1009. package/src/popover/utils.js +0 -107
  1010. package/src/search-control/stories/index.js +0 -39
  1011. package/src/tab-panel/stories/index.js +0 -39
  1012. package/src/tab-panel/test/index.js +0 -179
  1013. package/src/toggle-control/index.js +0 -55
  1014. package/src/toggle-control/stories/index.js +0 -64
  1015. package/src/toggle-control/style.scss +0 -14
  1016. package/src/toggle-control/test/index.js +0 -52
  1017. package/src/ui/__storybook-utils/example-grid.js +0 -61
  1018. package/src/ui/__storybook-utils/index.js +0 -1
  1019. package/src/ui/__storybook-utils/page.js +0 -29
  1020. package/src/utils/keyboard.js +0 -28
  1021. package/src/utils/test/keyboard.js +0 -34
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/form-token-field/index.tsx"],"names":["identity","value","FormTokenField","props","autoCapitalize","autoComplete","maxLength","placeholder","label","className","suggestions","maxSuggestions","displayTransform","saveTransform","token","trim","onChange","onInputChange","onFocus","undefined","isBorderless","disabled","tokenizeOnSpace","messages","added","removed","remove","__experimentalInvalid","__experimentalRenderItem","__experimentalExpandOnFocus","__experimentalValidateInput","__experimentalShowHowTo","__next36pxDefaultSize","__experimentalAutoSelectFirstMatch","instanceId","incompleteTokenValue","setIncompleteTokenValue","inputOffsetFromEnd","setInputOffsetFromEnd","isActive","setIsActive","isExpanded","setIsExpanded","selectedSuggestionIndex","setSelectedSuggestionIndex","selectedSuggestionScroll","setSelectedSuggestionScroll","prevSuggestions","prevValue","input","tokensAndInput","debouncedSpeak","speak","hasFocus","focus","suggestionsDidUpdate","updateSuggestions","current","ownerDocument","activeElement","onFocusHandler","event","target","onBlur","inputHasValidValue","onKeyDown","preventDefault","defaultPrevented","code","handleDeleteKey","deleteTokenBeforeInput","addCurrentToken","handleLeftArrowKey","handleUpArrowKey","handleRightArrowKey","handleDownArrowKey","deleteTokenAfterInput","handleEscapeKey","onKeyPress","charCode","handleCommaKey","onContainerTouched","onTokenClickRemove","deleteToken","onSuggestionHovered","suggestion","index","getMatchingSuggestions","indexOf","onSuggestionSelected","addNewToken","onInputChangeHandler","text","separator","items","split","tokenValue","length","addNewTokens","slice","_deleteToken","isInputEmpty","moveInputBeforePreviousToken","moveInputAfterNextToken","HTMLInputElement","moveInputToIndex","Math","max","prevInputOffsetFromEnd","min","getIndexOfInput","selectedSuggestion","getSelectedSuggestion","tokens","tokensToAdd","Set","map","filter","Boolean","valueContainsToken","newValue","splice","newTokens","item","getTokenValue","searchValue","_suggestions","_value","_maxSuggestions","_saveTransform","match","startsWithMatch","containsMatch","normalizedValue","includes","toLocaleLowerCase","forEach","push","concat","resetSelectedSuggestion","inputHasMinimumChars","matchingSuggestions","hasMatchingSuggestions","shouldExpandIfFocuses","message","renderTokensAndInput","components","renderToken","renderInput","status","termPosition","termsCount","title","onMouseEnter","onMouseLeave","inputProps","key","classes","tokenFieldProps","tabIndex","Object","assign"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { last, clone, map, some } from 'lodash';\nimport classnames from 'classnames';\nimport type { KeyboardEvent, MouseEvent, TouchEvent } from 'react';\n\n/**\n * WordPress dependencies\n */\nimport { useEffect, useRef, useState } from '@wordpress/element';\nimport { __, _n, sprintf } from '@wordpress/i18n';\nimport { useDebounce, useInstanceId, usePrevious } from '@wordpress/compose';\nimport { speak } from '@wordpress/a11y';\nimport isShallowEqual from '@wordpress/is-shallow-equal';\n\n/**\n * Internal dependencies\n */\nimport Token from './token';\nimport TokenInput from './token-input';\nimport { TokensAndInputWrapperFlex } from './styles';\nimport SuggestionsList from './suggestions-list';\nimport type { FormTokenFieldProps, TokenItem } from './types';\nimport { FlexItem } from '../flex';\nimport { StyledLabel } from '../base-control/styles/base-control-styles';\n\nconst identity = ( value: string ) => value;\n\n/**\n * A `FormTokenField` is a field similar to the tags and categories fields in the interim editor chrome,\n * or the \"to\" field in Mail on OS X. Tokens can be entered by typing them or selecting them from a list of suggested tokens.\n *\n * Up to one hundred suggestions that match what the user has typed so far will be shown from which the user can pick from (auto-complete).\n * Tokens are separated by the \",\" character. Suggestions can be selected with the up or down arrows and added with the tab or enter key.\n *\n * The `value` property is handled in a manner similar to controlled form components.\n * See [Forms](http://facebook.github.io/react/docs/forms.html) in the React Documentation for more information.\n */\nexport function FormTokenField( props: FormTokenFieldProps ) {\n\tconst {\n\t\tautoCapitalize,\n\t\tautoComplete,\n\t\tmaxLength,\n\t\tplaceholder,\n\t\tlabel = __( 'Add item' ),\n\t\tclassName,\n\t\tsuggestions = [],\n\t\tmaxSuggestions = 100,\n\t\tvalue = [],\n\t\tdisplayTransform = identity,\n\t\tsaveTransform = ( token ) => token.trim(),\n\t\tonChange = () => {},\n\t\tonInputChange = () => {},\n\t\tonFocus = undefined,\n\t\tisBorderless = false,\n\t\tdisabled = false,\n\t\ttokenizeOnSpace = false,\n\t\tmessages = {\n\t\t\tadded: __( 'Item added.' ),\n\t\t\tremoved: __( 'Item removed.' ),\n\t\t\tremove: __( 'Remove item' ),\n\t\t\t__experimentalInvalid: __( 'Invalid item' ),\n\t\t},\n\t\t__experimentalRenderItem,\n\t\t__experimentalExpandOnFocus = false,\n\t\t__experimentalValidateInput = () => true,\n\t\t__experimentalShowHowTo = true,\n\t\t__next36pxDefaultSize = false,\n\t\t__experimentalAutoSelectFirstMatch = false,\n\t} = props;\n\n\tconst instanceId = useInstanceId( FormTokenField );\n\n\t// We reset to these initial values again in the onBlur\n\tconst [ incompleteTokenValue, setIncompleteTokenValue ] = useState( '' );\n\tconst [ inputOffsetFromEnd, setInputOffsetFromEnd ] = useState( 0 );\n\tconst [ isActive, setIsActive ] = useState( false );\n\tconst [ isExpanded, setIsExpanded ] = useState( false );\n\tconst [ selectedSuggestionIndex, setSelectedSuggestionIndex ] =\n\t\tuseState( -1 );\n\tconst [ selectedSuggestionScroll, setSelectedSuggestionScroll ] =\n\t\tuseState( false );\n\n\tconst prevSuggestions = usePrevious< string[] >( suggestions );\n\tconst prevValue = usePrevious< ( string | TokenItem )[] >( value );\n\n\tconst input = useRef< HTMLInputElement >( null );\n\tconst tokensAndInput = useRef< HTMLInputElement >( null );\n\n\tconst debouncedSpeak = useDebounce( speak, 500 );\n\n\tuseEffect( () => {\n\t\t// Make sure to focus the input when the isActive state is true.\n\t\tif ( isActive && ! hasFocus() ) {\n\t\t\tfocus();\n\t\t}\n\t}, [ isActive ] );\n\n\tuseEffect( () => {\n\t\tconst suggestionsDidUpdate = ! isShallowEqual(\n\t\t\tsuggestions,\n\t\t\tprevSuggestions || []\n\t\t);\n\n\t\tif ( suggestionsDidUpdate || value !== prevValue ) {\n\t\t\tupdateSuggestions( suggestionsDidUpdate );\n\t\t}\n\n\t\t// TODO: updateSuggestions() should first be refactored so its actual deps are clearer.\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [ suggestions, prevSuggestions, value, prevValue ] );\n\n\tuseEffect( () => {\n\t\tupdateSuggestions();\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [ incompleteTokenValue ] );\n\n\tuseEffect( () => {\n\t\tupdateSuggestions();\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [ __experimentalAutoSelectFirstMatch ] );\n\n\tif ( disabled && isActive ) {\n\t\tsetIsActive( false );\n\t\tsetIncompleteTokenValue( '' );\n\t}\n\n\tfunction focus() {\n\t\tinput.current?.focus();\n\t}\n\n\tfunction hasFocus() {\n\t\treturn input.current === input.current?.ownerDocument.activeElement;\n\t}\n\n\tfunction onFocusHandler( event: FocusEvent ) {\n\t\t// If focus is on the input or on the container, set the isActive state to true.\n\t\tif ( hasFocus() || event.target === tokensAndInput.current ) {\n\t\t\tsetIsActive( true );\n\t\t\tsetIsExpanded( __experimentalExpandOnFocus || isExpanded );\n\t\t} else {\n\t\t\t/*\n\t\t\t * Otherwise, focus is on one of the token \"remove\" buttons and we\n\t\t\t * set the isActive state to false to prevent the input to be\n\t\t\t * re-focused, see componentDidUpdate().\n\t\t\t */\n\t\t\tsetIsActive( false );\n\t\t}\n\n\t\tif ( 'function' === typeof onFocus ) {\n\t\t\tonFocus( event );\n\t\t}\n\t}\n\n\tfunction onBlur() {\n\t\tif ( inputHasValidValue() ) {\n\t\t\tsetIsActive( false );\n\t\t} else {\n\t\t\t// Reset to initial state\n\t\t\tsetIncompleteTokenValue( '' );\n\t\t\tsetInputOffsetFromEnd( 0 );\n\t\t\tsetIsActive( false );\n\t\t\tsetIsExpanded( false );\n\t\t\tsetSelectedSuggestionIndex( -1 );\n\t\t\tsetSelectedSuggestionScroll( false );\n\t\t}\n\t}\n\n\tfunction onKeyDown( event: KeyboardEvent ) {\n\t\tlet preventDefault = false;\n\n\t\tif ( event.defaultPrevented ) {\n\t\t\treturn;\n\t\t}\n\t\tswitch ( event.code ) {\n\t\t\tcase 'Backspace':\n\t\t\t\tpreventDefault = handleDeleteKey( deleteTokenBeforeInput );\n\t\t\t\tbreak;\n\t\t\tcase 'Enter':\n\t\t\t\tpreventDefault = addCurrentToken();\n\t\t\t\tbreak;\n\t\t\tcase 'ArrowLeft':\n\t\t\t\tpreventDefault = handleLeftArrowKey();\n\t\t\t\tbreak;\n\t\t\tcase 'ArrowUp':\n\t\t\t\tpreventDefault = handleUpArrowKey();\n\t\t\t\tbreak;\n\t\t\tcase 'ArrowRight':\n\t\t\t\tpreventDefault = handleRightArrowKey();\n\t\t\t\tbreak;\n\t\t\tcase 'ArrowDown':\n\t\t\t\tpreventDefault = handleDownArrowKey();\n\t\t\t\tbreak;\n\t\t\tcase 'Delete':\n\t\t\t\tpreventDefault = handleDeleteKey( deleteTokenAfterInput );\n\t\t\t\tbreak;\n\t\t\tcase 'Space':\n\t\t\t\tif ( tokenizeOnSpace ) {\n\t\t\t\t\tpreventDefault = addCurrentToken();\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\tcase 'Escape':\n\t\t\t\tpreventDefault = handleEscapeKey( event );\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tbreak;\n\t\t}\n\n\t\tif ( preventDefault ) {\n\t\t\tevent.preventDefault();\n\t\t}\n\t}\n\n\tfunction onKeyPress( event: KeyboardEvent ) {\n\t\tlet preventDefault = false;\n\t\t// TODO: replace to event.code;\n\t\tswitch ( event.charCode ) {\n\t\t\tcase 44: // Comma.\n\t\t\t\tpreventDefault = handleCommaKey();\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tbreak;\n\t\t}\n\n\t\tif ( preventDefault ) {\n\t\t\tevent.preventDefault();\n\t\t}\n\t}\n\n\tfunction onContainerTouched( event: MouseEvent | TouchEvent ) {\n\t\t// Prevent clicking/touching the tokensAndInput container from blurring\n\t\t// the input and adding the current token.\n\t\tif ( event.target === tokensAndInput.current && isActive ) {\n\t\t\tevent.preventDefault();\n\t\t}\n\t}\n\n\tfunction onTokenClickRemove( event: { value: string } ) {\n\t\tdeleteToken( event.value );\n\t\tfocus();\n\t}\n\n\tfunction onSuggestionHovered( suggestion: string ) {\n\t\tconst index = getMatchingSuggestions().indexOf( suggestion );\n\n\t\tif ( index >= 0 ) {\n\t\t\tsetSelectedSuggestionIndex( index );\n\t\t\tsetSelectedSuggestionScroll( false );\n\t\t}\n\t}\n\n\tfunction onSuggestionSelected( suggestion: string ) {\n\t\taddNewToken( suggestion );\n\t}\n\n\tfunction onInputChangeHandler( event: { value: string } ) {\n\t\tconst text = event.value;\n\t\tconst separator = tokenizeOnSpace ? /[ ,\\t]+/ : /[,\\t]+/;\n\t\tconst items = text.split( separator );\n\t\tconst tokenValue = last( items ) || '';\n\n\t\tif ( items.length > 1 ) {\n\t\t\taddNewTokens( items.slice( 0, -1 ) );\n\t\t}\n\t\tsetIncompleteTokenValue( tokenValue );\n\t\tonInputChange( tokenValue );\n\t}\n\n\tfunction handleDeleteKey( _deleteToken: () => void ) {\n\t\tlet preventDefault = false;\n\t\tif ( hasFocus() && isInputEmpty() ) {\n\t\t\t_deleteToken();\n\t\t\tpreventDefault = true;\n\t\t}\n\n\t\treturn preventDefault;\n\t}\n\n\tfunction handleLeftArrowKey() {\n\t\tlet preventDefault = false;\n\t\tif ( isInputEmpty() ) {\n\t\t\tmoveInputBeforePreviousToken();\n\t\t\tpreventDefault = true;\n\t\t}\n\n\t\treturn preventDefault;\n\t}\n\n\tfunction handleRightArrowKey() {\n\t\tlet preventDefault = false;\n\t\tif ( isInputEmpty() ) {\n\t\t\tmoveInputAfterNextToken();\n\t\t\tpreventDefault = true;\n\t\t}\n\n\t\treturn preventDefault;\n\t}\n\n\tfunction handleUpArrowKey() {\n\t\tsetSelectedSuggestionIndex( ( index ) => {\n\t\t\treturn (\n\t\t\t\t( index === 0\n\t\t\t\t\t? getMatchingSuggestions(\n\t\t\t\t\t\t\tincompleteTokenValue,\n\t\t\t\t\t\t\tsuggestions,\n\t\t\t\t\t\t\tvalue,\n\t\t\t\t\t\t\tmaxSuggestions,\n\t\t\t\t\t\t\tsaveTransform\n\t\t\t\t\t ).length\n\t\t\t\t\t: index ) - 1\n\t\t\t);\n\t\t} );\n\t\tsetSelectedSuggestionScroll( true );\n\n\t\treturn true; // PreventDefault.\n\t}\n\n\tfunction handleDownArrowKey() {\n\t\tsetSelectedSuggestionIndex( ( index ) => {\n\t\t\treturn (\n\t\t\t\t( index + 1 ) %\n\t\t\t\tgetMatchingSuggestions(\n\t\t\t\t\tincompleteTokenValue,\n\t\t\t\t\tsuggestions,\n\t\t\t\t\tvalue,\n\t\t\t\t\tmaxSuggestions,\n\t\t\t\t\tsaveTransform\n\t\t\t\t).length\n\t\t\t);\n\t\t} );\n\n\t\tsetSelectedSuggestionScroll( true );\n\t\treturn true; // PreventDefault.\n\t}\n\n\tfunction handleEscapeKey( event: KeyboardEvent ) {\n\t\tif ( event.target instanceof HTMLInputElement ) {\n\t\t\tsetIncompleteTokenValue( event.target.value );\n\t\t\tsetIsExpanded( false );\n\t\t\tsetSelectedSuggestionIndex( -1 );\n\t\t\tsetSelectedSuggestionScroll( false );\n\t\t}\n\n\t\treturn true; // PreventDefault.\n\t}\n\n\tfunction handleCommaKey() {\n\t\tif ( inputHasValidValue() ) {\n\t\t\taddNewToken( incompleteTokenValue );\n\t\t}\n\n\t\treturn true; // PreventDefault.\n\t}\n\n\tfunction moveInputToIndex( index: number ) {\n\t\tsetInputOffsetFromEnd( value.length - Math.max( index, -1 ) - 1 );\n\t}\n\n\tfunction moveInputBeforePreviousToken() {\n\t\tsetInputOffsetFromEnd( ( prevInputOffsetFromEnd ) => {\n\t\t\treturn Math.min( prevInputOffsetFromEnd + 1, value.length );\n\t\t} );\n\t}\n\n\tfunction moveInputAfterNextToken() {\n\t\tsetInputOffsetFromEnd( ( prevInputOffsetFromEnd ) => {\n\t\t\treturn Math.max( prevInputOffsetFromEnd - 1, 0 );\n\t\t} );\n\t}\n\n\tfunction deleteTokenBeforeInput() {\n\t\tconst index = getIndexOfInput() - 1;\n\n\t\tif ( index > -1 ) {\n\t\t\tdeleteToken( value[ index ] );\n\t\t}\n\t}\n\n\tfunction deleteTokenAfterInput() {\n\t\tconst index = getIndexOfInput();\n\n\t\tif ( index < value.length ) {\n\t\t\tdeleteToken( value[ index ] );\n\t\t\t// Update input offset since it's the offset from the last token.\n\t\t\tmoveInputToIndex( index );\n\t\t}\n\t}\n\n\tfunction addCurrentToken() {\n\t\tlet preventDefault = false;\n\t\tconst selectedSuggestion = getSelectedSuggestion();\n\n\t\tif ( selectedSuggestion ) {\n\t\t\taddNewToken( selectedSuggestion );\n\t\t\tpreventDefault = true;\n\t\t} else if ( inputHasValidValue() ) {\n\t\t\taddNewToken( incompleteTokenValue );\n\t\t\tpreventDefault = true;\n\t\t}\n\n\t\treturn preventDefault;\n\t}\n\n\tfunction addNewTokens( tokens: string[] ) {\n\t\tconst tokensToAdd = [\n\t\t\t...new Set(\n\t\t\t\ttokens\n\t\t\t\t\t.map( saveTransform )\n\t\t\t\t\t.filter( Boolean )\n\t\t\t\t\t.filter( ( token ) => ! valueContainsToken( token ) )\n\t\t\t),\n\t\t];\n\n\t\tif ( tokensToAdd.length > 0 ) {\n\t\t\tconst newValue = clone( value );\n\t\t\tnewValue.splice( getIndexOfInput(), 0, ...tokensToAdd );\n\t\t\tonChange( newValue );\n\t\t}\n\t}\n\n\tfunction addNewToken( token: string ) {\n\t\tif ( ! __experimentalValidateInput( token ) ) {\n\t\t\tspeak( messages.__experimentalInvalid, 'assertive' );\n\t\t\treturn;\n\t\t}\n\t\taddNewTokens( [ token ] );\n\t\tspeak( messages.added, 'assertive' );\n\n\t\tsetIncompleteTokenValue( '' );\n\t\tsetSelectedSuggestionIndex( -1 );\n\t\tsetSelectedSuggestionScroll( false );\n\t\tsetIsExpanded( ! __experimentalExpandOnFocus );\n\n\t\tif ( isActive ) {\n\t\t\tfocus();\n\t\t}\n\t}\n\n\tfunction deleteToken( token: string | TokenItem ) {\n\t\tconst newTokens = value.filter( ( item ) => {\n\t\t\treturn getTokenValue( item ) !== getTokenValue( token );\n\t\t} );\n\t\tonChange( newTokens );\n\t\tspeak( messages.removed, 'assertive' );\n\t}\n\n\tfunction getTokenValue( token: { value: string } | string ) {\n\t\tif ( 'object' === typeof token ) {\n\t\t\treturn token.value;\n\t\t}\n\n\t\treturn token;\n\t}\n\n\tfunction getMatchingSuggestions(\n\t\tsearchValue = incompleteTokenValue,\n\t\t_suggestions = suggestions,\n\t\t_value = value,\n\t\t_maxSuggestions = maxSuggestions,\n\t\t_saveTransform = saveTransform\n\t) {\n\t\tlet match = _saveTransform( searchValue );\n\t\tconst startsWithMatch: string[] = [];\n\t\tconst containsMatch: string[] = [];\n\t\tconst normalizedValue = _value.map( ( item ) => {\n\t\t\tif ( typeof item === 'string' ) {\n\t\t\t\treturn item;\n\t\t\t}\n\t\t\treturn item.value;\n\t\t} );\n\n\t\tif ( match.length === 0 ) {\n\t\t\t_suggestions = _suggestions.filter(\n\t\t\t\t( suggestion ) => ! normalizedValue.includes( suggestion )\n\t\t\t);\n\t\t} else {\n\t\t\tmatch = match.toLocaleLowerCase();\n\n\t\t\t_suggestions.forEach( ( suggestion ) => {\n\t\t\t\tconst index = suggestion.toLocaleLowerCase().indexOf( match );\n\t\t\t\tif ( normalizedValue.indexOf( suggestion ) === -1 ) {\n\t\t\t\t\tif ( index === 0 ) {\n\t\t\t\t\t\tstartsWithMatch.push( suggestion );\n\t\t\t\t\t} else if ( index > 0 ) {\n\t\t\t\t\t\tcontainsMatch.push( suggestion );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} );\n\n\t\t\t_suggestions = startsWithMatch.concat( containsMatch );\n\t\t}\n\n\t\treturn _suggestions.slice( 0, _maxSuggestions );\n\t}\n\n\tfunction getSelectedSuggestion() {\n\t\tif ( selectedSuggestionIndex !== -1 ) {\n\t\t\treturn getMatchingSuggestions()[ selectedSuggestionIndex ];\n\t\t}\n\n\t\treturn undefined;\n\t}\n\n\tfunction valueContainsToken( token: string ) {\n\t\treturn some( value, ( item ) => {\n\t\t\treturn getTokenValue( token ) === getTokenValue( item );\n\t\t} );\n\t}\n\n\tfunction getIndexOfInput() {\n\t\treturn value.length - inputOffsetFromEnd;\n\t}\n\n\tfunction isInputEmpty() {\n\t\treturn incompleteTokenValue.length === 0;\n\t}\n\n\tfunction inputHasValidValue() {\n\t\treturn saveTransform( incompleteTokenValue ).length > 0;\n\t}\n\n\tfunction updateSuggestions( resetSelectedSuggestion = true ) {\n\t\tconst inputHasMinimumChars = incompleteTokenValue.trim().length > 1;\n\t\tconst matchingSuggestions =\n\t\t\tgetMatchingSuggestions( incompleteTokenValue );\n\t\tconst hasMatchingSuggestions = matchingSuggestions.length > 0;\n\n\t\tconst shouldExpandIfFocuses = hasFocus() && __experimentalExpandOnFocus;\n\t\tsetIsExpanded(\n\t\t\tshouldExpandIfFocuses ||\n\t\t\t\t( inputHasMinimumChars && hasMatchingSuggestions )\n\t\t);\n\n\t\tif ( resetSelectedSuggestion ) {\n\t\t\tif (\n\t\t\t\t__experimentalAutoSelectFirstMatch &&\n\t\t\t\tinputHasMinimumChars &&\n\t\t\t\thasMatchingSuggestions\n\t\t\t) {\n\t\t\t\tsetSelectedSuggestionIndex( 0 );\n\t\t\t\tsetSelectedSuggestionScroll( true );\n\t\t\t} else {\n\t\t\t\tsetSelectedSuggestionIndex( -1 );\n\t\t\t\tsetSelectedSuggestionScroll( false );\n\t\t\t}\n\t\t}\n\n\t\tif ( inputHasMinimumChars ) {\n\t\t\tconst message = hasMatchingSuggestions\n\t\t\t\t? sprintf(\n\t\t\t\t\t\t/* translators: %d: number of results. */\n\t\t\t\t\t\t_n(\n\t\t\t\t\t\t\t'%d result found, use up and down arrow keys to navigate.',\n\t\t\t\t\t\t\t'%d results found, use up and down arrow keys to navigate.',\n\t\t\t\t\t\t\tmatchingSuggestions.length\n\t\t\t\t\t\t),\n\t\t\t\t\t\tmatchingSuggestions.length\n\t\t\t\t )\n\t\t\t\t: __( 'No results.' );\n\n\t\t\tdebouncedSpeak( message, 'assertive' );\n\t\t}\n\t}\n\n\tfunction renderTokensAndInput() {\n\t\tconst components = map( value, renderToken );\n\t\tcomponents.splice( getIndexOfInput(), 0, renderInput() );\n\n\t\treturn components;\n\t}\n\n\tfunction renderToken(\n\t\ttoken: string | TokenItem,\n\t\tindex: number,\n\t\ttokens: ( string | TokenItem )[]\n\t) {\n\t\tconst _value = getTokenValue( token );\n\t\tconst status = typeof token !== 'string' ? token.status : undefined;\n\t\tconst termPosition = index + 1;\n\t\tconst termsCount = tokens.length;\n\n\t\treturn (\n\t\t\t<FlexItem key={ 'token-' + _value }>\n\t\t\t\t<Token\n\t\t\t\t\tvalue={ _value }\n\t\t\t\t\tstatus={ status }\n\t\t\t\t\ttitle={\n\t\t\t\t\t\ttypeof token !== 'string' ? token.title : undefined\n\t\t\t\t\t}\n\t\t\t\t\tdisplayTransform={ displayTransform }\n\t\t\t\t\tonClickRemove={ onTokenClickRemove }\n\t\t\t\t\tisBorderless={\n\t\t\t\t\t\t( typeof token !== 'string' && token.isBorderless ) ||\n\t\t\t\t\t\tisBorderless\n\t\t\t\t\t}\n\t\t\t\t\tonMouseEnter={\n\t\t\t\t\t\ttypeof token !== 'string'\n\t\t\t\t\t\t\t? token.onMouseEnter\n\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t}\n\t\t\t\t\tonMouseLeave={\n\t\t\t\t\t\ttypeof token !== 'string'\n\t\t\t\t\t\t\t? token.onMouseLeave\n\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t}\n\t\t\t\t\tdisabled={ 'error' !== status && disabled }\n\t\t\t\t\tmessages={ messages }\n\t\t\t\t\ttermsCount={ termsCount }\n\t\t\t\t\ttermPosition={ termPosition }\n\t\t\t\t/>\n\t\t\t</FlexItem>\n\t\t);\n\t}\n\n\tfunction renderInput() {\n\t\tconst inputProps = {\n\t\t\tinstanceId,\n\t\t\tautoCapitalize,\n\t\t\tautoComplete,\n\t\t\tplaceholder: value.length === 0 ? placeholder : '',\n\t\t\tkey: 'input',\n\t\t\tdisabled,\n\t\t\tvalue: incompleteTokenValue,\n\t\t\tonBlur,\n\t\t\tisExpanded,\n\t\t\tselectedSuggestionIndex,\n\t\t};\n\n\t\treturn (\n\t\t\t<TokenInput\n\t\t\t\t{ ...inputProps }\n\t\t\t\tonChange={\n\t\t\t\t\t! ( maxLength && value.length >= maxLength )\n\t\t\t\t\t\t? onInputChangeHandler\n\t\t\t\t\t\t: undefined\n\t\t\t\t}\n\t\t\t\tref={ input }\n\t\t\t/>\n\t\t);\n\t}\n\n\tconst classes = classnames(\n\t\tclassName,\n\t\t'components-form-token-field__input-container',\n\t\t{\n\t\t\t'is-active': isActive,\n\t\t\t'is-disabled': disabled,\n\t\t}\n\t);\n\n\tlet tokenFieldProps = {\n\t\tclassName: 'components-form-token-field',\n\t\ttabIndex: -1,\n\t};\n\tconst matchingSuggestions = getMatchingSuggestions();\n\n\tif ( ! disabled ) {\n\t\ttokenFieldProps = Object.assign( {}, tokenFieldProps, {\n\t\t\tonKeyDown,\n\t\t\tonKeyPress,\n\t\t\tonFocus: onFocusHandler,\n\t\t} );\n\t}\n\n\t// Disable reason: There is no appropriate role which describes the\n\t// input container intended accessible usability.\n\t// TODO: Refactor click detection to use blur to stop propagation.\n\t/* eslint-disable jsx-a11y/no-static-element-interactions */\n\treturn (\n\t\t<div { ...tokenFieldProps }>\n\t\t\t<StyledLabel\n\t\t\t\thtmlFor={ `components-form-token-input-${ instanceId }` }\n\t\t\t\tclassName=\"components-form-token-field__label\"\n\t\t\t>\n\t\t\t\t{ label }\n\t\t\t</StyledLabel>\n\t\t\t<div\n\t\t\t\tref={ tokensAndInput }\n\t\t\t\tclassName={ classes }\n\t\t\t\ttabIndex={ -1 }\n\t\t\t\tonMouseDown={ onContainerTouched }\n\t\t\t\tonTouchStart={ onContainerTouched }\n\t\t\t>\n\t\t\t\t<TokensAndInputWrapperFlex\n\t\t\t\t\tjustify=\"flex-start\"\n\t\t\t\t\talign=\"center\"\n\t\t\t\t\tgap={ 1 }\n\t\t\t\t\twrap={ true }\n\t\t\t\t\t__next36pxDefaultSize={ __next36pxDefaultSize }\n\t\t\t\t\thasTokens={ !! value.length }\n\t\t\t\t>\n\t\t\t\t\t{ renderTokensAndInput() }\n\t\t\t\t</TokensAndInputWrapperFlex>\n\t\t\t\t{ isExpanded && (\n\t\t\t\t\t<SuggestionsList\n\t\t\t\t\t\tinstanceId={ instanceId }\n\t\t\t\t\t\tmatch={ saveTransform( incompleteTokenValue ) }\n\t\t\t\t\t\tdisplayTransform={ displayTransform }\n\t\t\t\t\t\tsuggestions={ matchingSuggestions }\n\t\t\t\t\t\tselectedIndex={ selectedSuggestionIndex }\n\t\t\t\t\t\tscrollIntoView={ selectedSuggestionScroll }\n\t\t\t\t\t\tonHover={ onSuggestionHovered }\n\t\t\t\t\t\tonSelect={ onSuggestionSelected }\n\t\t\t\t\t\t__experimentalRenderItem={ __experimentalRenderItem }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t\t{ __experimentalShowHowTo && (\n\t\t\t\t<p\n\t\t\t\t\tid={ `components-form-token-suggestions-howto-${ instanceId }` }\n\t\t\t\t\tclassName=\"components-form-token-field__help\"\n\t\t\t\t>\n\t\t\t\t\t{ tokenizeOnSpace\n\t\t\t\t\t\t? __(\n\t\t\t\t\t\t\t\t'Separate with commas, spaces, or the Enter key.'\n\t\t\t\t\t\t )\n\t\t\t\t\t\t: __( 'Separate with commas or the Enter key.' ) }\n\t\t\t\t</p>\n\t\t\t) }\n\t\t</div>\n\t);\n\t/* eslint-enable jsx-a11y/no-static-element-interactions */\n}\n\nexport default FormTokenField;\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/form-token-field/index.tsx"],"names":["identity","value","FormTokenField","props","autoCapitalize","autoComplete","maxLength","placeholder","label","className","suggestions","maxSuggestions","displayTransform","saveTransform","token","trim","onChange","onInputChange","onFocus","undefined","isBorderless","disabled","tokenizeOnSpace","messages","added","removed","remove","__experimentalInvalid","__experimentalRenderItem","__experimentalExpandOnFocus","__experimentalValidateInput","__experimentalShowHowTo","__next36pxDefaultSize","__experimentalAutoSelectFirstMatch","instanceId","incompleteTokenValue","setIncompleteTokenValue","inputOffsetFromEnd","setInputOffsetFromEnd","isActive","setIsActive","isExpanded","setIsExpanded","selectedSuggestionIndex","setSelectedSuggestionIndex","selectedSuggestionScroll","setSelectedSuggestionScroll","prevSuggestions","prevValue","input","tokensAndInput","debouncedSpeak","speak","hasFocus","focus","suggestionsDidUpdate","updateSuggestions","current","ownerDocument","activeElement","onFocusHandler","event","target","onBlur","inputHasValidValue","onKeyDown","preventDefault","defaultPrevented","code","handleDeleteKey","deleteTokenBeforeInput","addCurrentToken","handleLeftArrowKey","handleUpArrowKey","handleRightArrowKey","handleDownArrowKey","deleteTokenAfterInput","handleEscapeKey","onKeyPress","charCode","handleCommaKey","onContainerTouched","onTokenClickRemove","deleteToken","onSuggestionHovered","suggestion","index","getMatchingSuggestions","indexOf","onSuggestionSelected","addNewToken","onInputChangeHandler","text","separator","items","split","tokenValue","length","addNewTokens","slice","_deleteToken","isInputEmpty","moveInputBeforePreviousToken","moveInputAfterNextToken","HTMLInputElement","moveInputToIndex","Math","max","prevInputOffsetFromEnd","min","getIndexOfInput","selectedSuggestion","getSelectedSuggestion","tokens","tokensToAdd","Set","map","filter","Boolean","valueContainsToken","newValue","splice","newTokens","item","getTokenValue","searchValue","_suggestions","_value","_maxSuggestions","_saveTransform","match","startsWithMatch","containsMatch","normalizedValue","includes","toLocaleLowerCase","forEach","push","concat","some","resetSelectedSuggestion","inputHasMinimumChars","matchingSuggestions","hasMatchingSuggestions","shouldExpandIfFocuses","message","renderTokensAndInput","components","renderToken","renderInput","status","termPosition","termsCount","title","onMouseEnter","onMouseLeave","inputProps","key","classes","tokenFieldProps","tabIndex","Object","assign"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport type { KeyboardEvent, MouseEvent, TouchEvent } from 'react';\n\n/**\n * WordPress dependencies\n */\nimport { useEffect, useRef, useState } from '@wordpress/element';\nimport { __, _n, sprintf } from '@wordpress/i18n';\nimport { useDebounce, useInstanceId, usePrevious } from '@wordpress/compose';\nimport { speak } from '@wordpress/a11y';\nimport isShallowEqual from '@wordpress/is-shallow-equal';\n\n/**\n * Internal dependencies\n */\nimport Token from './token';\nimport TokenInput from './token-input';\nimport { TokensAndInputWrapperFlex } from './styles';\nimport SuggestionsList from './suggestions-list';\nimport type { FormTokenFieldProps, TokenItem } from './types';\nimport { FlexItem } from '../flex';\nimport { StyledLabel } from '../base-control/styles/base-control-styles';\n\nconst identity = ( value: string ) => value;\n\n/**\n * A `FormTokenField` is a field similar to the tags and categories fields in the interim editor chrome,\n * or the \"to\" field in Mail on OS X. Tokens can be entered by typing them or selecting them from a list of suggested tokens.\n *\n * Up to one hundred suggestions that match what the user has typed so far will be shown from which the user can pick from (auto-complete).\n * Tokens are separated by the \",\" character. Suggestions can be selected with the up or down arrows and added with the tab or enter key.\n *\n * The `value` property is handled in a manner similar to controlled form components.\n * See [Forms](http://facebook.github.io/react/docs/forms.html) in the React Documentation for more information.\n */\nexport function FormTokenField( props: FormTokenFieldProps ) {\n\tconst {\n\t\tautoCapitalize,\n\t\tautoComplete,\n\t\tmaxLength,\n\t\tplaceholder,\n\t\tlabel = __( 'Add item' ),\n\t\tclassName,\n\t\tsuggestions = [],\n\t\tmaxSuggestions = 100,\n\t\tvalue = [],\n\t\tdisplayTransform = identity,\n\t\tsaveTransform = ( token ) => token.trim(),\n\t\tonChange = () => {},\n\t\tonInputChange = () => {},\n\t\tonFocus = undefined,\n\t\tisBorderless = false,\n\t\tdisabled = false,\n\t\ttokenizeOnSpace = false,\n\t\tmessages = {\n\t\t\tadded: __( 'Item added.' ),\n\t\t\tremoved: __( 'Item removed.' ),\n\t\t\tremove: __( 'Remove item' ),\n\t\t\t__experimentalInvalid: __( 'Invalid item' ),\n\t\t},\n\t\t__experimentalRenderItem,\n\t\t__experimentalExpandOnFocus = false,\n\t\t__experimentalValidateInput = () => true,\n\t\t__experimentalShowHowTo = true,\n\t\t__next36pxDefaultSize = false,\n\t\t__experimentalAutoSelectFirstMatch = false,\n\t} = props;\n\n\tconst instanceId = useInstanceId( FormTokenField );\n\n\t// We reset to these initial values again in the onBlur\n\tconst [ incompleteTokenValue, setIncompleteTokenValue ] = useState( '' );\n\tconst [ inputOffsetFromEnd, setInputOffsetFromEnd ] = useState( 0 );\n\tconst [ isActive, setIsActive ] = useState( false );\n\tconst [ isExpanded, setIsExpanded ] = useState( false );\n\tconst [ selectedSuggestionIndex, setSelectedSuggestionIndex ] =\n\t\tuseState( -1 );\n\tconst [ selectedSuggestionScroll, setSelectedSuggestionScroll ] =\n\t\tuseState( false );\n\n\tconst prevSuggestions = usePrevious< string[] >( suggestions );\n\tconst prevValue = usePrevious< ( string | TokenItem )[] >( value );\n\n\tconst input = useRef< HTMLInputElement >( null );\n\tconst tokensAndInput = useRef< HTMLInputElement >( null );\n\n\tconst debouncedSpeak = useDebounce( speak, 500 );\n\n\tuseEffect( () => {\n\t\t// Make sure to focus the input when the isActive state is true.\n\t\tif ( isActive && ! hasFocus() ) {\n\t\t\tfocus();\n\t\t}\n\t}, [ isActive ] );\n\n\tuseEffect( () => {\n\t\tconst suggestionsDidUpdate = ! isShallowEqual(\n\t\t\tsuggestions,\n\t\t\tprevSuggestions || []\n\t\t);\n\n\t\tif ( suggestionsDidUpdate || value !== prevValue ) {\n\t\t\tupdateSuggestions( suggestionsDidUpdate );\n\t\t}\n\n\t\t// TODO: updateSuggestions() should first be refactored so its actual deps are clearer.\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [ suggestions, prevSuggestions, value, prevValue ] );\n\n\tuseEffect( () => {\n\t\tupdateSuggestions();\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [ incompleteTokenValue ] );\n\n\tuseEffect( () => {\n\t\tupdateSuggestions();\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [ __experimentalAutoSelectFirstMatch ] );\n\n\tif ( disabled && isActive ) {\n\t\tsetIsActive( false );\n\t\tsetIncompleteTokenValue( '' );\n\t}\n\n\tfunction focus() {\n\t\tinput.current?.focus();\n\t}\n\n\tfunction hasFocus() {\n\t\treturn input.current === input.current?.ownerDocument.activeElement;\n\t}\n\n\tfunction onFocusHandler( event: FocusEvent ) {\n\t\t// If focus is on the input or on the container, set the isActive state to true.\n\t\tif ( hasFocus() || event.target === tokensAndInput.current ) {\n\t\t\tsetIsActive( true );\n\t\t\tsetIsExpanded( __experimentalExpandOnFocus || isExpanded );\n\t\t} else {\n\t\t\t/*\n\t\t\t * Otherwise, focus is on one of the token \"remove\" buttons and we\n\t\t\t * set the isActive state to false to prevent the input to be\n\t\t\t * re-focused, see componentDidUpdate().\n\t\t\t */\n\t\t\tsetIsActive( false );\n\t\t}\n\n\t\tif ( 'function' === typeof onFocus ) {\n\t\t\tonFocus( event );\n\t\t}\n\t}\n\n\tfunction onBlur() {\n\t\tif ( inputHasValidValue() ) {\n\t\t\tsetIsActive( false );\n\t\t} else {\n\t\t\t// Reset to initial state\n\t\t\tsetIncompleteTokenValue( '' );\n\t\t\tsetInputOffsetFromEnd( 0 );\n\t\t\tsetIsActive( false );\n\t\t\tsetIsExpanded( false );\n\t\t\tsetSelectedSuggestionIndex( -1 );\n\t\t\tsetSelectedSuggestionScroll( false );\n\t\t}\n\t}\n\n\tfunction onKeyDown( event: KeyboardEvent ) {\n\t\tlet preventDefault = false;\n\n\t\tif ( event.defaultPrevented ) {\n\t\t\treturn;\n\t\t}\n\t\tswitch ( event.code ) {\n\t\t\tcase 'Backspace':\n\t\t\t\tpreventDefault = handleDeleteKey( deleteTokenBeforeInput );\n\t\t\t\tbreak;\n\t\t\tcase 'Enter':\n\t\t\t\tpreventDefault = addCurrentToken();\n\t\t\t\tbreak;\n\t\t\tcase 'ArrowLeft':\n\t\t\t\tpreventDefault = handleLeftArrowKey();\n\t\t\t\tbreak;\n\t\t\tcase 'ArrowUp':\n\t\t\t\tpreventDefault = handleUpArrowKey();\n\t\t\t\tbreak;\n\t\t\tcase 'ArrowRight':\n\t\t\t\tpreventDefault = handleRightArrowKey();\n\t\t\t\tbreak;\n\t\t\tcase 'ArrowDown':\n\t\t\t\tpreventDefault = handleDownArrowKey();\n\t\t\t\tbreak;\n\t\t\tcase 'Delete':\n\t\t\t\tpreventDefault = handleDeleteKey( deleteTokenAfterInput );\n\t\t\t\tbreak;\n\t\t\tcase 'Space':\n\t\t\t\tif ( tokenizeOnSpace ) {\n\t\t\t\t\tpreventDefault = addCurrentToken();\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\tcase 'Escape':\n\t\t\t\tpreventDefault = handleEscapeKey( event );\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tbreak;\n\t\t}\n\n\t\tif ( preventDefault ) {\n\t\t\tevent.preventDefault();\n\t\t}\n\t}\n\n\tfunction onKeyPress( event: KeyboardEvent ) {\n\t\tlet preventDefault = false;\n\t\t// TODO: replace to event.code;\n\t\tswitch ( event.charCode ) {\n\t\t\tcase 44: // Comma.\n\t\t\t\tpreventDefault = handleCommaKey();\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tbreak;\n\t\t}\n\n\t\tif ( preventDefault ) {\n\t\t\tevent.preventDefault();\n\t\t}\n\t}\n\n\tfunction onContainerTouched( event: MouseEvent | TouchEvent ) {\n\t\t// Prevent clicking/touching the tokensAndInput container from blurring\n\t\t// the input and adding the current token.\n\t\tif ( event.target === tokensAndInput.current && isActive ) {\n\t\t\tevent.preventDefault();\n\t\t}\n\t}\n\n\tfunction onTokenClickRemove( event: { value: string } ) {\n\t\tdeleteToken( event.value );\n\t\tfocus();\n\t}\n\n\tfunction onSuggestionHovered( suggestion: string ) {\n\t\tconst index = getMatchingSuggestions().indexOf( suggestion );\n\n\t\tif ( index >= 0 ) {\n\t\t\tsetSelectedSuggestionIndex( index );\n\t\t\tsetSelectedSuggestionScroll( false );\n\t\t}\n\t}\n\n\tfunction onSuggestionSelected( suggestion: string ) {\n\t\taddNewToken( suggestion );\n\t}\n\n\tfunction onInputChangeHandler( event: { value: string } ) {\n\t\tconst text = event.value;\n\t\tconst separator = tokenizeOnSpace ? /[ ,\\t]+/ : /[,\\t]+/;\n\t\tconst items = text.split( separator );\n\t\tconst tokenValue = items[ items.length - 1 ] || '';\n\n\t\tif ( items.length > 1 ) {\n\t\t\taddNewTokens( items.slice( 0, -1 ) );\n\t\t}\n\t\tsetIncompleteTokenValue( tokenValue );\n\t\tonInputChange( tokenValue );\n\t}\n\n\tfunction handleDeleteKey( _deleteToken: () => void ) {\n\t\tlet preventDefault = false;\n\t\tif ( hasFocus() && isInputEmpty() ) {\n\t\t\t_deleteToken();\n\t\t\tpreventDefault = true;\n\t\t}\n\n\t\treturn preventDefault;\n\t}\n\n\tfunction handleLeftArrowKey() {\n\t\tlet preventDefault = false;\n\t\tif ( isInputEmpty() ) {\n\t\t\tmoveInputBeforePreviousToken();\n\t\t\tpreventDefault = true;\n\t\t}\n\n\t\treturn preventDefault;\n\t}\n\n\tfunction handleRightArrowKey() {\n\t\tlet preventDefault = false;\n\t\tif ( isInputEmpty() ) {\n\t\t\tmoveInputAfterNextToken();\n\t\t\tpreventDefault = true;\n\t\t}\n\n\t\treturn preventDefault;\n\t}\n\n\tfunction handleUpArrowKey() {\n\t\tsetSelectedSuggestionIndex( ( index ) => {\n\t\t\treturn (\n\t\t\t\t( index === 0\n\t\t\t\t\t? getMatchingSuggestions(\n\t\t\t\t\t\t\tincompleteTokenValue,\n\t\t\t\t\t\t\tsuggestions,\n\t\t\t\t\t\t\tvalue,\n\t\t\t\t\t\t\tmaxSuggestions,\n\t\t\t\t\t\t\tsaveTransform\n\t\t\t\t\t ).length\n\t\t\t\t\t: index ) - 1\n\t\t\t);\n\t\t} );\n\t\tsetSelectedSuggestionScroll( true );\n\n\t\treturn true; // PreventDefault.\n\t}\n\n\tfunction handleDownArrowKey() {\n\t\tsetSelectedSuggestionIndex( ( index ) => {\n\t\t\treturn (\n\t\t\t\t( index + 1 ) %\n\t\t\t\tgetMatchingSuggestions(\n\t\t\t\t\tincompleteTokenValue,\n\t\t\t\t\tsuggestions,\n\t\t\t\t\tvalue,\n\t\t\t\t\tmaxSuggestions,\n\t\t\t\t\tsaveTransform\n\t\t\t\t).length\n\t\t\t);\n\t\t} );\n\n\t\tsetSelectedSuggestionScroll( true );\n\t\treturn true; // PreventDefault.\n\t}\n\n\tfunction handleEscapeKey( event: KeyboardEvent ) {\n\t\tif ( event.target instanceof HTMLInputElement ) {\n\t\t\tsetIncompleteTokenValue( event.target.value );\n\t\t\tsetIsExpanded( false );\n\t\t\tsetSelectedSuggestionIndex( -1 );\n\t\t\tsetSelectedSuggestionScroll( false );\n\t\t}\n\n\t\treturn true; // PreventDefault.\n\t}\n\n\tfunction handleCommaKey() {\n\t\tif ( inputHasValidValue() ) {\n\t\t\taddNewToken( incompleteTokenValue );\n\t\t}\n\n\t\treturn true; // PreventDefault.\n\t}\n\n\tfunction moveInputToIndex( index: number ) {\n\t\tsetInputOffsetFromEnd( value.length - Math.max( index, -1 ) - 1 );\n\t}\n\n\tfunction moveInputBeforePreviousToken() {\n\t\tsetInputOffsetFromEnd( ( prevInputOffsetFromEnd ) => {\n\t\t\treturn Math.min( prevInputOffsetFromEnd + 1, value.length );\n\t\t} );\n\t}\n\n\tfunction moveInputAfterNextToken() {\n\t\tsetInputOffsetFromEnd( ( prevInputOffsetFromEnd ) => {\n\t\t\treturn Math.max( prevInputOffsetFromEnd - 1, 0 );\n\t\t} );\n\t}\n\n\tfunction deleteTokenBeforeInput() {\n\t\tconst index = getIndexOfInput() - 1;\n\n\t\tif ( index > -1 ) {\n\t\t\tdeleteToken( value[ index ] );\n\t\t}\n\t}\n\n\tfunction deleteTokenAfterInput() {\n\t\tconst index = getIndexOfInput();\n\n\t\tif ( index < value.length ) {\n\t\t\tdeleteToken( value[ index ] );\n\t\t\t// Update input offset since it's the offset from the last token.\n\t\t\tmoveInputToIndex( index );\n\t\t}\n\t}\n\n\tfunction addCurrentToken() {\n\t\tlet preventDefault = false;\n\t\tconst selectedSuggestion = getSelectedSuggestion();\n\n\t\tif ( selectedSuggestion ) {\n\t\t\taddNewToken( selectedSuggestion );\n\t\t\tpreventDefault = true;\n\t\t} else if ( inputHasValidValue() ) {\n\t\t\taddNewToken( incompleteTokenValue );\n\t\t\tpreventDefault = true;\n\t\t}\n\n\t\treturn preventDefault;\n\t}\n\n\tfunction addNewTokens( tokens: string[] ) {\n\t\tconst tokensToAdd = [\n\t\t\t...new Set(\n\t\t\t\ttokens\n\t\t\t\t\t.map( saveTransform )\n\t\t\t\t\t.filter( Boolean )\n\t\t\t\t\t.filter( ( token ) => ! valueContainsToken( token ) )\n\t\t\t),\n\t\t];\n\n\t\tif ( tokensToAdd.length > 0 ) {\n\t\t\tconst newValue = [ ...value ];\n\t\t\tnewValue.splice( getIndexOfInput(), 0, ...tokensToAdd );\n\t\t\tonChange( newValue );\n\t\t}\n\t}\n\n\tfunction addNewToken( token: string ) {\n\t\tif ( ! __experimentalValidateInput( token ) ) {\n\t\t\tspeak( messages.__experimentalInvalid, 'assertive' );\n\t\t\treturn;\n\t\t}\n\t\taddNewTokens( [ token ] );\n\t\tspeak( messages.added, 'assertive' );\n\n\t\tsetIncompleteTokenValue( '' );\n\t\tsetSelectedSuggestionIndex( -1 );\n\t\tsetSelectedSuggestionScroll( false );\n\t\tsetIsExpanded( ! __experimentalExpandOnFocus );\n\n\t\tif ( isActive ) {\n\t\t\tfocus();\n\t\t}\n\t}\n\n\tfunction deleteToken( token: string | TokenItem ) {\n\t\tconst newTokens = value.filter( ( item ) => {\n\t\t\treturn getTokenValue( item ) !== getTokenValue( token );\n\t\t} );\n\t\tonChange( newTokens );\n\t\tspeak( messages.removed, 'assertive' );\n\t}\n\n\tfunction getTokenValue( token: { value: string } | string ) {\n\t\tif ( 'object' === typeof token ) {\n\t\t\treturn token.value;\n\t\t}\n\n\t\treturn token;\n\t}\n\n\tfunction getMatchingSuggestions(\n\t\tsearchValue = incompleteTokenValue,\n\t\t_suggestions = suggestions,\n\t\t_value = value,\n\t\t_maxSuggestions = maxSuggestions,\n\t\t_saveTransform = saveTransform\n\t) {\n\t\tlet match = _saveTransform( searchValue );\n\t\tconst startsWithMatch: string[] = [];\n\t\tconst containsMatch: string[] = [];\n\t\tconst normalizedValue = _value.map( ( item ) => {\n\t\t\tif ( typeof item === 'string' ) {\n\t\t\t\treturn item;\n\t\t\t}\n\t\t\treturn item.value;\n\t\t} );\n\n\t\tif ( match.length === 0 ) {\n\t\t\t_suggestions = _suggestions.filter(\n\t\t\t\t( suggestion ) => ! normalizedValue.includes( suggestion )\n\t\t\t);\n\t\t} else {\n\t\t\tmatch = match.toLocaleLowerCase();\n\n\t\t\t_suggestions.forEach( ( suggestion ) => {\n\t\t\t\tconst index = suggestion.toLocaleLowerCase().indexOf( match );\n\t\t\t\tif ( normalizedValue.indexOf( suggestion ) === -1 ) {\n\t\t\t\t\tif ( index === 0 ) {\n\t\t\t\t\t\tstartsWithMatch.push( suggestion );\n\t\t\t\t\t} else if ( index > 0 ) {\n\t\t\t\t\t\tcontainsMatch.push( suggestion );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} );\n\n\t\t\t_suggestions = startsWithMatch.concat( containsMatch );\n\t\t}\n\n\t\treturn _suggestions.slice( 0, _maxSuggestions );\n\t}\n\n\tfunction getSelectedSuggestion() {\n\t\tif ( selectedSuggestionIndex !== -1 ) {\n\t\t\treturn getMatchingSuggestions()[ selectedSuggestionIndex ];\n\t\t}\n\n\t\treturn undefined;\n\t}\n\n\tfunction valueContainsToken( token: string ) {\n\t\treturn value.some( ( item ) => {\n\t\t\treturn getTokenValue( token ) === getTokenValue( item );\n\t\t} );\n\t}\n\n\tfunction getIndexOfInput() {\n\t\treturn value.length - inputOffsetFromEnd;\n\t}\n\n\tfunction isInputEmpty() {\n\t\treturn incompleteTokenValue.length === 0;\n\t}\n\n\tfunction inputHasValidValue() {\n\t\treturn saveTransform( incompleteTokenValue ).length > 0;\n\t}\n\n\tfunction updateSuggestions( resetSelectedSuggestion = true ) {\n\t\tconst inputHasMinimumChars = incompleteTokenValue.trim().length > 1;\n\t\tconst matchingSuggestions =\n\t\t\tgetMatchingSuggestions( incompleteTokenValue );\n\t\tconst hasMatchingSuggestions = matchingSuggestions.length > 0;\n\n\t\tconst shouldExpandIfFocuses = hasFocus() && __experimentalExpandOnFocus;\n\t\tsetIsExpanded(\n\t\t\tshouldExpandIfFocuses ||\n\t\t\t\t( inputHasMinimumChars && hasMatchingSuggestions )\n\t\t);\n\n\t\tif ( resetSelectedSuggestion ) {\n\t\t\tif (\n\t\t\t\t__experimentalAutoSelectFirstMatch &&\n\t\t\t\tinputHasMinimumChars &&\n\t\t\t\thasMatchingSuggestions\n\t\t\t) {\n\t\t\t\tsetSelectedSuggestionIndex( 0 );\n\t\t\t\tsetSelectedSuggestionScroll( true );\n\t\t\t} else {\n\t\t\t\tsetSelectedSuggestionIndex( -1 );\n\t\t\t\tsetSelectedSuggestionScroll( false );\n\t\t\t}\n\t\t}\n\n\t\tif ( inputHasMinimumChars ) {\n\t\t\tconst message = hasMatchingSuggestions\n\t\t\t\t? sprintf(\n\t\t\t\t\t\t/* translators: %d: number of results. */\n\t\t\t\t\t\t_n(\n\t\t\t\t\t\t\t'%d result found, use up and down arrow keys to navigate.',\n\t\t\t\t\t\t\t'%d results found, use up and down arrow keys to navigate.',\n\t\t\t\t\t\t\tmatchingSuggestions.length\n\t\t\t\t\t\t),\n\t\t\t\t\t\tmatchingSuggestions.length\n\t\t\t\t )\n\t\t\t\t: __( 'No results.' );\n\n\t\t\tdebouncedSpeak( message, 'assertive' );\n\t\t}\n\t}\n\n\tfunction renderTokensAndInput() {\n\t\tconst components = value.map( renderToken );\n\t\tcomponents.splice( getIndexOfInput(), 0, renderInput() );\n\n\t\treturn components;\n\t}\n\n\tfunction renderToken(\n\t\ttoken: string | TokenItem,\n\t\tindex: number,\n\t\ttokens: ( string | TokenItem )[]\n\t) {\n\t\tconst _value = getTokenValue( token );\n\t\tconst status = typeof token !== 'string' ? token.status : undefined;\n\t\tconst termPosition = index + 1;\n\t\tconst termsCount = tokens.length;\n\n\t\treturn (\n\t\t\t<FlexItem key={ 'token-' + _value }>\n\t\t\t\t<Token\n\t\t\t\t\tvalue={ _value }\n\t\t\t\t\tstatus={ status }\n\t\t\t\t\ttitle={\n\t\t\t\t\t\ttypeof token !== 'string' ? token.title : undefined\n\t\t\t\t\t}\n\t\t\t\t\tdisplayTransform={ displayTransform }\n\t\t\t\t\tonClickRemove={ onTokenClickRemove }\n\t\t\t\t\tisBorderless={\n\t\t\t\t\t\t( typeof token !== 'string' && token.isBorderless ) ||\n\t\t\t\t\t\tisBorderless\n\t\t\t\t\t}\n\t\t\t\t\tonMouseEnter={\n\t\t\t\t\t\ttypeof token !== 'string'\n\t\t\t\t\t\t\t? token.onMouseEnter\n\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t}\n\t\t\t\t\tonMouseLeave={\n\t\t\t\t\t\ttypeof token !== 'string'\n\t\t\t\t\t\t\t? token.onMouseLeave\n\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t}\n\t\t\t\t\tdisabled={ 'error' !== status && disabled }\n\t\t\t\t\tmessages={ messages }\n\t\t\t\t\ttermsCount={ termsCount }\n\t\t\t\t\ttermPosition={ termPosition }\n\t\t\t\t/>\n\t\t\t</FlexItem>\n\t\t);\n\t}\n\n\tfunction renderInput() {\n\t\tconst inputProps = {\n\t\t\tinstanceId,\n\t\t\tautoCapitalize,\n\t\t\tautoComplete,\n\t\t\tplaceholder: value.length === 0 ? placeholder : '',\n\t\t\tkey: 'input',\n\t\t\tdisabled,\n\t\t\tvalue: incompleteTokenValue,\n\t\t\tonBlur,\n\t\t\tisExpanded,\n\t\t\tselectedSuggestionIndex,\n\t\t};\n\n\t\treturn (\n\t\t\t<TokenInput\n\t\t\t\t{ ...inputProps }\n\t\t\t\tonChange={\n\t\t\t\t\t! ( maxLength && value.length >= maxLength )\n\t\t\t\t\t\t? onInputChangeHandler\n\t\t\t\t\t\t: undefined\n\t\t\t\t}\n\t\t\t\tref={ input }\n\t\t\t/>\n\t\t);\n\t}\n\n\tconst classes = classnames(\n\t\tclassName,\n\t\t'components-form-token-field__input-container',\n\t\t{\n\t\t\t'is-active': isActive,\n\t\t\t'is-disabled': disabled,\n\t\t}\n\t);\n\n\tlet tokenFieldProps = {\n\t\tclassName: 'components-form-token-field',\n\t\ttabIndex: -1,\n\t};\n\tconst matchingSuggestions = getMatchingSuggestions();\n\n\tif ( ! disabled ) {\n\t\ttokenFieldProps = Object.assign( {}, tokenFieldProps, {\n\t\t\tonKeyDown,\n\t\t\tonKeyPress,\n\t\t\tonFocus: onFocusHandler,\n\t\t} );\n\t}\n\n\t// Disable reason: There is no appropriate role which describes the\n\t// input container intended accessible usability.\n\t// TODO: Refactor click detection to use blur to stop propagation.\n\t/* eslint-disable jsx-a11y/no-static-element-interactions */\n\treturn (\n\t\t<div { ...tokenFieldProps }>\n\t\t\t<StyledLabel\n\t\t\t\thtmlFor={ `components-form-token-input-${ instanceId }` }\n\t\t\t\tclassName=\"components-form-token-field__label\"\n\t\t\t>\n\t\t\t\t{ label }\n\t\t\t</StyledLabel>\n\t\t\t<div\n\t\t\t\tref={ tokensAndInput }\n\t\t\t\tclassName={ classes }\n\t\t\t\ttabIndex={ -1 }\n\t\t\t\tonMouseDown={ onContainerTouched }\n\t\t\t\tonTouchStart={ onContainerTouched }\n\t\t\t>\n\t\t\t\t<TokensAndInputWrapperFlex\n\t\t\t\t\tjustify=\"flex-start\"\n\t\t\t\t\talign=\"center\"\n\t\t\t\t\tgap={ 1 }\n\t\t\t\t\twrap={ true }\n\t\t\t\t\t__next36pxDefaultSize={ __next36pxDefaultSize }\n\t\t\t\t\thasTokens={ !! value.length }\n\t\t\t\t>\n\t\t\t\t\t{ renderTokensAndInput() }\n\t\t\t\t</TokensAndInputWrapperFlex>\n\t\t\t\t{ isExpanded && (\n\t\t\t\t\t<SuggestionsList\n\t\t\t\t\t\tinstanceId={ instanceId }\n\t\t\t\t\t\tmatch={ saveTransform( incompleteTokenValue ) }\n\t\t\t\t\t\tdisplayTransform={ displayTransform }\n\t\t\t\t\t\tsuggestions={ matchingSuggestions }\n\t\t\t\t\t\tselectedIndex={ selectedSuggestionIndex }\n\t\t\t\t\t\tscrollIntoView={ selectedSuggestionScroll }\n\t\t\t\t\t\tonHover={ onSuggestionHovered }\n\t\t\t\t\t\tonSelect={ onSuggestionSelected }\n\t\t\t\t\t\t__experimentalRenderItem={ __experimentalRenderItem }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t\t{ __experimentalShowHowTo && (\n\t\t\t\t<p\n\t\t\t\t\tid={ `components-form-token-suggestions-howto-${ instanceId }` }\n\t\t\t\t\tclassName=\"components-form-token-field__help\"\n\t\t\t\t>\n\t\t\t\t\t{ tokenizeOnSpace\n\t\t\t\t\t\t? __(\n\t\t\t\t\t\t\t\t'Separate with commas, spaces, or the Enter key.'\n\t\t\t\t\t\t )\n\t\t\t\t\t\t: __( 'Separate with commas or the Enter key.' ) }\n\t\t\t\t</p>\n\t\t\t) }\n\t\t</div>\n\t);\n\t/* eslint-enable jsx-a11y/no-static-element-interactions */\n}\n\nexport default FormTokenField;\n"]}
@@ -10,8 +10,6 @@ exports.default = void 0;
10
10
 
11
11
  var _element = require("@wordpress/element");
12
12
 
13
- var _lodash = require("lodash");
14
-
15
13
  var _domScrollIntoView = _interopRequireDefault(require("dom-scroll-into-view"));
16
14
 
17
15
  var _classnames = _interopRequireDefault(require("classnames"));
@@ -100,7 +98,7 @@ function SuggestionsList(_ref) {
100
98
  className: "components-form-token-field__suggestions-list",
101
99
  id: `components-form-token-suggestions-${instanceId}`,
102
100
  role: "listbox"
103
- }, (0, _lodash.map)(suggestions, (suggestion, index) => {
101
+ }, suggestions.map((suggestion, index) => {
104
102
  const matchText = computeSuggestionMatch(suggestion);
105
103
  const className = (0, _classnames.default)('components-form-token-field__suggestion', {
106
104
  'is-selected': index === selectedIndex
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/form-token-field/suggestions-list.tsx"],"names":["handleMouseDown","e","preventDefault","SuggestionsList","selectedIndex","scrollIntoView","match","onHover","onSelect","suggestions","displayTransform","instanceId","__experimentalRenderItem","scrollingIntoView","setScrollingIntoView","listRef","listNode","id","children","onlyScrollIfNeeded","window","setTimeout","undefined","clearTimeout","handleHover","suggestion","handleClick","computeSuggestionMatch","matchText","toLocaleLowerCase","length","transformedSuggestion","indexOfMatch","indexOf","suggestionBeforeMatch","substring","suggestionMatch","suggestionAfterMatch","index","className","output","item","value"],"mappings":";;;;;;;;;;AAWA;;AARA;;AACA;;AACA;;AAOA;;AAZA;AACA;AACA;;AAMA;AACA;AACA;AASA,MAAMA,eAAkC,GAAKC,CAAF,IAAS;AACnD;AACAA,EAAAA,CAAC,CAACC,cAAF;AACA,CAHD;;AAKO,SAASC,eAAT,OAUwB;AAAA,MAV0C;AACxEC,IAAAA,aADwE;AAExEC,IAAAA,cAFwE;AAGxEC,IAAAA,KAHwE;AAIxEC,IAAAA,OAJwE;AAKxEC,IAAAA,QALwE;AAMxEC,IAAAA,WAAW,GAAG,EAN0D;AAOxEC,IAAAA,gBAPwE;AAQxEC,IAAAA,UARwE;AASxEC,IAAAA;AATwE,GAU1C;AAC9B,QAAM,CAAEC,iBAAF,EAAqBC,oBAArB,IAA8C,uBAAU,KAAV,CAApD;AAEA,QAAMC,OAAO,GAAG,2BACbC,QAAF,IAAgB;AACf;AACA;AACA,QAAIC,EAAJ;;AACA,QACCb,aAAa,GAAG,CAAC,CAAjB,IACAC,cADA,IAEAW,QAAQ,CAACE,QAAT,CAAmBd,aAAnB,CAHD,EAIE;AACDU,MAAAA,oBAAoB,CAAE,IAAF,CAApB;AACA,sCACCE,QAAQ,CAACE,QAAT,CAAmBd,aAAnB,CADD,EAECY,QAFD,EAGC;AACCG,QAAAA,kBAAkB,EAAE;AADrB,OAHD;AAOAF,MAAAA,EAAE,GAAGG,MAAM,CAACC,UAAP,CAAmB,MAAM;AAC7BP,QAAAA,oBAAoB,CAAE,KAAF,CAApB;AACA,OAFI,EAEF,GAFE,CAAL;AAGA;;AAED,WAAO,MAAM;AACZ,UAAKG,EAAE,KAAKK,SAAZ,EAAwB;AACvBF,QAAAA,MAAM,CAACG,YAAP,CAAqBN,EAArB;AACA;AACD,KAJD;AAKA,GA5Bc,EA6Bf,CAAEb,aAAF,EAAiBC,cAAjB,CA7Be,CAAhB;;AAgCA,QAAMmB,WAAW,GAAKC,UAAF,IAAqB;AACxC,WAAO,MAAM;AACZ,UAAK,CAAEZ,iBAAP,EAA2B;AAC1BN,QAAAA,OAAO,SAAP,IAAAA,OAAO,WAAP,YAAAA,OAAO,CAAIkB,UAAJ,CAAP;AACA;AACD,KAJD;AAKA,GAND;;AAQA,QAAMC,WAAW,GAAKD,UAAF,IAAqB;AACxC,WAAO,MAAM;AACZjB,MAAAA,QAAQ,SAAR,IAAAA,QAAQ,WAAR,YAAAA,QAAQ,CAAIiB,UAAJ,CAAR;AACA,KAFD;AAGA,GAJD;;AAMA,QAAME,sBAAsB,GAAKF,UAAF,IAAqB;AACnD,UAAMG,SAAS,GAAGlB,gBAAgB,CAAEJ,KAAF,CAAhB,CAA0BuB,iBAA1B,EAAlB;;AACA,QAAKD,SAAS,CAACE,MAAV,KAAqB,CAA1B,EAA8B;AAC7B,aAAO,IAAP;AACA;;AAED,UAAMC,qBAAqB,GAAGrB,gBAAgB,CAAEe,UAAF,CAA9C;AACA,UAAMO,YAAY,GAAGD,qBAAqB,CACxCF,iBADmB,GAEnBI,OAFmB,CAEVL,SAFU,CAArB;AAIA,WAAO;AACNM,MAAAA,qBAAqB,EAAEH,qBAAqB,CAACI,SAAtB,CACtB,CADsB,EAEtBH,YAFsB,CADjB;AAKNI,MAAAA,eAAe,EAAEL,qBAAqB,CAACI,SAAtB,CAChBH,YADgB,EAEhBA,YAAY,GAAGJ,SAAS,CAACE,MAFT,CALX;AASNO,MAAAA,oBAAoB,EAAEN,qBAAqB,CAACI,SAAtB,CACrBH,YAAY,GAAGJ,SAAS,CAACE,MADJ;AAThB,KAAP;AAaA,GAxBD;;AA0BA,SACC;AACC,IAAA,GAAG,EAAGf,OADP;AAEC,IAAA,SAAS,EAAC,+CAFX;AAGC,IAAA,EAAE,EAAI,qCAAqCJ,UAAY,EAHxD;AAIC,IAAA,IAAI,EAAC;AAJN,KAMG,iBAAKF,WAAL,EAAkB,CAAEgB,UAAF,EAAca,KAAd,KAAyB;AAC5C,UAAMV,SAAS,GAAGD,sBAAsB,CAAEF,UAAF,CAAxC;AACA,UAAMc,SAAS,GAAG,yBACjB,yCADiB,EAEjB;AACC,qBAAeD,KAAK,KAAKlC;AAD1B,KAFiB,CAAlB;AAOA,QAAIoC,MAAJ;;AAEA,QAAK,OAAO5B,wBAAP,KAAoC,UAAzC,EAAsD;AACrD4B,MAAAA,MAAM,GAAG5B,wBAAwB,CAAE;AAAE6B,QAAAA,IAAI,EAAEhB;AAAR,OAAF,CAAjC;AACA,KAFD,MAEO,IAAKG,SAAL,EAAiB;AACvBY,MAAAA,MAAM,GACL;AAAM,sBAAa9B,gBAAgB,CAAEe,UAAF;AAAnC,SACGG,SAAS,CAACM,qBADb,EAEC;AAAQ,QAAA,SAAS,EAAC;AAAlB,SACGN,SAAS,CAACQ,eADb,CAFD,EAKGR,SAAS,CAACS,oBALb,CADD;AASA,KAVM,MAUA;AACNG,MAAAA,MAAM,GAAG9B,gBAAgB,CAAEe,UAAF,CAAzB;AACA;AAED;;;AACA,WACC;AACC,MAAA,EAAE,EAAI,qCAAqCd,UAAY,IAAI2B,KAAO,EADnE;AAEC,MAAA,IAAI,EAAC,QAFN;AAGC,MAAA,SAAS,EAAGC,SAHb;AAIC,MAAA,GAAG,EACF,OAAOd,UAAP,KAAsB,QAAtB,IACA,WAAWA,UADX,GAEGA,UAFH,aAEGA,UAFH,uBAEGA,UAAU,CAAEiB,KAFf,GAGGhC,gBAAgB,CAAEe,UAAF,CARrB;AAUC,MAAA,WAAW,EAAGzB,eAVf;AAWC,MAAA,OAAO,EAAG0B,WAAW,CAAED,UAAF,CAXtB;AAYC,MAAA,YAAY,EAAGD,WAAW,CAAEC,UAAF,CAZ3B;AAaC,uBAAgBa,KAAK,KAAKlC;AAb3B,OAeGoC,MAfH,CADD;AAmBA;AACA,GAhDC,CANH,CADD;AA0DA;;eAEcrC,e","sourcesContent":["/**\n * External dependencies\n */\nimport { map } from 'lodash';\nimport scrollView from 'dom-scroll-into-view';\nimport classnames from 'classnames';\nimport type { MouseEventHandler, ReactNode } from 'react';\n\n/**\n * WordPress dependencies\n */\nimport { useState } from '@wordpress/element';\nimport { useRefEffect } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport type { SuggestionsListProps } from './types';\n\nconst handleMouseDown: MouseEventHandler = ( e ) => {\n\t// By preventing default here, we will not lose focus of <input> when clicking a suggestion.\n\te.preventDefault();\n};\n\nexport function SuggestionsList< T extends string | { value: string } >( {\n\tselectedIndex,\n\tscrollIntoView,\n\tmatch,\n\tonHover,\n\tonSelect,\n\tsuggestions = [],\n\tdisplayTransform,\n\tinstanceId,\n\t__experimentalRenderItem,\n}: SuggestionsListProps< T > ) {\n\tconst [ scrollingIntoView, setScrollingIntoView ] = useState( false );\n\n\tconst listRef = useRefEffect< HTMLUListElement >(\n\t\t( listNode ) => {\n\t\t\t// only have to worry about scrolling selected suggestion into view\n\t\t\t// when already expanded.\n\t\t\tlet id: number;\n\t\t\tif (\n\t\t\t\tselectedIndex > -1 &&\n\t\t\t\tscrollIntoView &&\n\t\t\t\tlistNode.children[ selectedIndex ]\n\t\t\t) {\n\t\t\t\tsetScrollingIntoView( true );\n\t\t\t\tscrollView(\n\t\t\t\t\tlistNode.children[ selectedIndex ] as HTMLLIElement,\n\t\t\t\t\tlistNode,\n\t\t\t\t\t{\n\t\t\t\t\t\tonlyScrollIfNeeded: true,\n\t\t\t\t\t}\n\t\t\t\t);\n\t\t\t\tid = window.setTimeout( () => {\n\t\t\t\t\tsetScrollingIntoView( false );\n\t\t\t\t}, 100 );\n\t\t\t}\n\n\t\t\treturn () => {\n\t\t\t\tif ( id !== undefined ) {\n\t\t\t\t\twindow.clearTimeout( id );\n\t\t\t\t}\n\t\t\t};\n\t\t},\n\t\t[ selectedIndex, scrollIntoView ]\n\t);\n\n\tconst handleHover = ( suggestion: T ) => {\n\t\treturn () => {\n\t\t\tif ( ! scrollingIntoView ) {\n\t\t\t\tonHover?.( suggestion );\n\t\t\t}\n\t\t};\n\t};\n\n\tconst handleClick = ( suggestion: T ) => {\n\t\treturn () => {\n\t\t\tonSelect?.( suggestion );\n\t\t};\n\t};\n\n\tconst computeSuggestionMatch = ( suggestion: T ) => {\n\t\tconst matchText = displayTransform( match ).toLocaleLowerCase();\n\t\tif ( matchText.length === 0 ) {\n\t\t\treturn null;\n\t\t}\n\n\t\tconst transformedSuggestion = displayTransform( suggestion );\n\t\tconst indexOfMatch = transformedSuggestion\n\t\t\t.toLocaleLowerCase()\n\t\t\t.indexOf( matchText );\n\n\t\treturn {\n\t\t\tsuggestionBeforeMatch: transformedSuggestion.substring(\n\t\t\t\t0,\n\t\t\t\tindexOfMatch\n\t\t\t),\n\t\t\tsuggestionMatch: transformedSuggestion.substring(\n\t\t\t\tindexOfMatch,\n\t\t\t\tindexOfMatch + matchText.length\n\t\t\t),\n\t\t\tsuggestionAfterMatch: transformedSuggestion.substring(\n\t\t\t\tindexOfMatch + matchText.length\n\t\t\t),\n\t\t};\n\t};\n\n\treturn (\n\t\t<ul\n\t\t\tref={ listRef }\n\t\t\tclassName=\"components-form-token-field__suggestions-list\"\n\t\t\tid={ `components-form-token-suggestions-${ instanceId }` }\n\t\t\trole=\"listbox\"\n\t\t>\n\t\t\t{ map( suggestions, ( suggestion, index ) => {\n\t\t\t\tconst matchText = computeSuggestionMatch( suggestion );\n\t\t\t\tconst className = classnames(\n\t\t\t\t\t'components-form-token-field__suggestion',\n\t\t\t\t\t{\n\t\t\t\t\t\t'is-selected': index === selectedIndex,\n\t\t\t\t\t}\n\t\t\t\t);\n\n\t\t\t\tlet output: ReactNode;\n\n\t\t\t\tif ( typeof __experimentalRenderItem === 'function' ) {\n\t\t\t\t\toutput = __experimentalRenderItem( { item: suggestion } );\n\t\t\t\t} else if ( matchText ) {\n\t\t\t\t\toutput = (\n\t\t\t\t\t\t<span aria-label={ displayTransform( suggestion ) }>\n\t\t\t\t\t\t\t{ matchText.suggestionBeforeMatch }\n\t\t\t\t\t\t\t<strong className=\"components-form-token-field__suggestion-match\">\n\t\t\t\t\t\t\t\t{ matchText.suggestionMatch }\n\t\t\t\t\t\t\t</strong>\n\t\t\t\t\t\t\t{ matchText.suggestionAfterMatch }\n\t\t\t\t\t\t</span>\n\t\t\t\t\t);\n\t\t\t\t} else {\n\t\t\t\t\toutput = displayTransform( suggestion );\n\t\t\t\t}\n\n\t\t\t\t/* eslint-disable jsx-a11y/click-events-have-key-events */\n\t\t\t\treturn (\n\t\t\t\t\t<li\n\t\t\t\t\t\tid={ `components-form-token-suggestions-${ instanceId }-${ index }` }\n\t\t\t\t\t\trole=\"option\"\n\t\t\t\t\t\tclassName={ className }\n\t\t\t\t\t\tkey={\n\t\t\t\t\t\t\ttypeof suggestion === 'object' &&\n\t\t\t\t\t\t\t'value' in suggestion\n\t\t\t\t\t\t\t\t? suggestion?.value\n\t\t\t\t\t\t\t\t: displayTransform( suggestion )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonMouseDown={ handleMouseDown }\n\t\t\t\t\t\tonClick={ handleClick( suggestion ) }\n\t\t\t\t\t\tonMouseEnter={ handleHover( suggestion ) }\n\t\t\t\t\t\taria-selected={ index === selectedIndex }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ output }\n\t\t\t\t\t</li>\n\t\t\t\t);\n\t\t\t\t/* eslint-enable jsx-a11y/click-events-have-key-events */\n\t\t\t} ) }\n\t\t</ul>\n\t);\n}\n\nexport default SuggestionsList;\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/form-token-field/suggestions-list.tsx"],"names":["handleMouseDown","e","preventDefault","SuggestionsList","selectedIndex","scrollIntoView","match","onHover","onSelect","suggestions","displayTransform","instanceId","__experimentalRenderItem","scrollingIntoView","setScrollingIntoView","listRef","listNode","id","children","onlyScrollIfNeeded","window","setTimeout","undefined","clearTimeout","handleHover","suggestion","handleClick","computeSuggestionMatch","matchText","toLocaleLowerCase","length","transformedSuggestion","indexOfMatch","indexOf","suggestionBeforeMatch","substring","suggestionMatch","suggestionAfterMatch","map","index","className","output","item","value"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport scrollView from 'dom-scroll-into-view';\nimport classnames from 'classnames';\nimport type { MouseEventHandler, ReactNode } from 'react';\n\n/**\n * WordPress dependencies\n */\nimport { useState } from '@wordpress/element';\nimport { useRefEffect } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport type { SuggestionsListProps } from './types';\n\nconst handleMouseDown: MouseEventHandler = ( e ) => {\n\t// By preventing default here, we will not lose focus of <input> when clicking a suggestion.\n\te.preventDefault();\n};\n\nexport function SuggestionsList< T extends string | { value: string } >( {\n\tselectedIndex,\n\tscrollIntoView,\n\tmatch,\n\tonHover,\n\tonSelect,\n\tsuggestions = [],\n\tdisplayTransform,\n\tinstanceId,\n\t__experimentalRenderItem,\n}: SuggestionsListProps< T > ) {\n\tconst [ scrollingIntoView, setScrollingIntoView ] = useState( false );\n\n\tconst listRef = useRefEffect< HTMLUListElement >(\n\t\t( listNode ) => {\n\t\t\t// only have to worry about scrolling selected suggestion into view\n\t\t\t// when already expanded.\n\t\t\tlet id: number;\n\t\t\tif (\n\t\t\t\tselectedIndex > -1 &&\n\t\t\t\tscrollIntoView &&\n\t\t\t\tlistNode.children[ selectedIndex ]\n\t\t\t) {\n\t\t\t\tsetScrollingIntoView( true );\n\t\t\t\tscrollView(\n\t\t\t\t\tlistNode.children[ selectedIndex ] as HTMLLIElement,\n\t\t\t\t\tlistNode,\n\t\t\t\t\t{\n\t\t\t\t\t\tonlyScrollIfNeeded: true,\n\t\t\t\t\t}\n\t\t\t\t);\n\t\t\t\tid = window.setTimeout( () => {\n\t\t\t\t\tsetScrollingIntoView( false );\n\t\t\t\t}, 100 );\n\t\t\t}\n\n\t\t\treturn () => {\n\t\t\t\tif ( id !== undefined ) {\n\t\t\t\t\twindow.clearTimeout( id );\n\t\t\t\t}\n\t\t\t};\n\t\t},\n\t\t[ selectedIndex, scrollIntoView ]\n\t);\n\n\tconst handleHover = ( suggestion: T ) => {\n\t\treturn () => {\n\t\t\tif ( ! scrollingIntoView ) {\n\t\t\t\tonHover?.( suggestion );\n\t\t\t}\n\t\t};\n\t};\n\n\tconst handleClick = ( suggestion: T ) => {\n\t\treturn () => {\n\t\t\tonSelect?.( suggestion );\n\t\t};\n\t};\n\n\tconst computeSuggestionMatch = ( suggestion: T ) => {\n\t\tconst matchText = displayTransform( match ).toLocaleLowerCase();\n\t\tif ( matchText.length === 0 ) {\n\t\t\treturn null;\n\t\t}\n\n\t\tconst transformedSuggestion = displayTransform( suggestion );\n\t\tconst indexOfMatch = transformedSuggestion\n\t\t\t.toLocaleLowerCase()\n\t\t\t.indexOf( matchText );\n\n\t\treturn {\n\t\t\tsuggestionBeforeMatch: transformedSuggestion.substring(\n\t\t\t\t0,\n\t\t\t\tindexOfMatch\n\t\t\t),\n\t\t\tsuggestionMatch: transformedSuggestion.substring(\n\t\t\t\tindexOfMatch,\n\t\t\t\tindexOfMatch + matchText.length\n\t\t\t),\n\t\t\tsuggestionAfterMatch: transformedSuggestion.substring(\n\t\t\t\tindexOfMatch + matchText.length\n\t\t\t),\n\t\t};\n\t};\n\n\treturn (\n\t\t<ul\n\t\t\tref={ listRef }\n\t\t\tclassName=\"components-form-token-field__suggestions-list\"\n\t\t\tid={ `components-form-token-suggestions-${ instanceId }` }\n\t\t\trole=\"listbox\"\n\t\t>\n\t\t\t{ suggestions.map( ( suggestion, index ) => {\n\t\t\t\tconst matchText = computeSuggestionMatch( suggestion );\n\t\t\t\tconst className = classnames(\n\t\t\t\t\t'components-form-token-field__suggestion',\n\t\t\t\t\t{\n\t\t\t\t\t\t'is-selected': index === selectedIndex,\n\t\t\t\t\t}\n\t\t\t\t);\n\n\t\t\t\tlet output: ReactNode;\n\n\t\t\t\tif ( typeof __experimentalRenderItem === 'function' ) {\n\t\t\t\t\toutput = __experimentalRenderItem( { item: suggestion } );\n\t\t\t\t} else if ( matchText ) {\n\t\t\t\t\toutput = (\n\t\t\t\t\t\t<span aria-label={ displayTransform( suggestion ) }>\n\t\t\t\t\t\t\t{ matchText.suggestionBeforeMatch }\n\t\t\t\t\t\t\t<strong className=\"components-form-token-field__suggestion-match\">\n\t\t\t\t\t\t\t\t{ matchText.suggestionMatch }\n\t\t\t\t\t\t\t</strong>\n\t\t\t\t\t\t\t{ matchText.suggestionAfterMatch }\n\t\t\t\t\t\t</span>\n\t\t\t\t\t);\n\t\t\t\t} else {\n\t\t\t\t\toutput = displayTransform( suggestion );\n\t\t\t\t}\n\n\t\t\t\t/* eslint-disable jsx-a11y/click-events-have-key-events */\n\t\t\t\treturn (\n\t\t\t\t\t<li\n\t\t\t\t\t\tid={ `components-form-token-suggestions-${ instanceId }-${ index }` }\n\t\t\t\t\t\trole=\"option\"\n\t\t\t\t\t\tclassName={ className }\n\t\t\t\t\t\tkey={\n\t\t\t\t\t\t\ttypeof suggestion === 'object' &&\n\t\t\t\t\t\t\t'value' in suggestion\n\t\t\t\t\t\t\t\t? suggestion?.value\n\t\t\t\t\t\t\t\t: displayTransform( suggestion )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonMouseDown={ handleMouseDown }\n\t\t\t\t\t\tonClick={ handleClick( suggestion ) }\n\t\t\t\t\t\tonMouseEnter={ handleHover( suggestion ) }\n\t\t\t\t\t\taria-selected={ index === selectedIndex }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ output }\n\t\t\t\t\t</li>\n\t\t\t\t);\n\t\t\t\t/* eslint-enable jsx-a11y/click-events-have-key-events */\n\t\t\t} ) }\n\t\t</ul>\n\t);\n}\n\nexport default SuggestionsList;\n"]}
@@ -15,6 +15,8 @@ var _lodash = require("lodash");
15
15
 
16
16
  var _i18n = require("@wordpress/i18n");
17
17
 
18
+ var _deprecated = _interopRequireDefault(require("@wordpress/deprecated"));
19
+
18
20
  var _circularOptionPicker = _interopRequireDefault(require("../circular-option-picker"));
19
21
 
20
22
  var _customGradientPicker = _interopRequireDefault(require("../custom-gradient-picker"));
@@ -43,8 +45,7 @@ function SingleOrigin(_ref) {
43
45
  gradients,
44
46
  onChange,
45
47
  value,
46
- actions,
47
- content
48
+ actions
48
49
  } = _ref;
49
50
  const gradientOptions = (0, _element.useMemo)(() => {
50
51
  return (0, _lodash.map)(gradients, _ref2 => {
@@ -73,7 +74,7 @@ function SingleOrigin(_ref) {
73
74
  className: className,
74
75
  options: gradientOptions,
75
76
  actions: actions
76
- }, content);
77
+ });
77
78
  }
78
79
 
79
80
  function MultipleOrigin(_ref3) {
@@ -83,8 +84,7 @@ function MultipleOrigin(_ref3) {
83
84
  gradients,
84
85
  onChange,
85
86
  value,
86
- actions,
87
- content
87
+ actions
88
88
  } = _ref3;
89
89
  return (0, _element.createElement)(_vStack.VStack, {
90
90
  spacing: 3,
@@ -103,8 +103,7 @@ function MultipleOrigin(_ref3) {
103
103
  onChange: onChange,
104
104
  value: value
105
105
  }, gradients.length === index + 1 ? {
106
- actions,
107
- content
106
+ actions
108
107
  } : {})));
109
108
  }));
110
109
  }
@@ -123,30 +122,41 @@ function GradientPicker(_ref5) {
123
122
  __experimentalIsRenderedInSidebar
124
123
  } = _ref5;
125
124
  const clearGradient = (0, _element.useCallback)(() => onChange(undefined), [onChange]);
126
- const Component = __experimentalHasMultipleOrigins && gradients !== null && gradients !== void 0 && gradients.length ? MultipleOrigin : SingleOrigin; // Can be removed when deprecation period is over
125
+ const Component = __experimentalHasMultipleOrigins && gradients !== null && gradients !== void 0 && gradients.length ? MultipleOrigin : SingleOrigin;
126
+
127
+ if (!__nextHasNoMargin) {
128
+ (0, _deprecated.default)('Outer margin styles for wp.components.GradientPicker', {
129
+ since: '6.1',
130
+ version: '6.4',
131
+ hint: 'Set the `__nextHasNoMargin` prop to true to start opting into the new styles, which will become the default in a future version'
132
+ });
133
+ }
127
134
 
128
135
  const deprecatedMarginSpacerProps = !__nextHasNoMargin ? {
129
- marginTop: 3
136
+ marginTop: !(gradients !== null && gradients !== void 0 && gradients.length) ? 3 : undefined,
137
+ marginBottom: !clearable ? 6 : 0
130
138
  } : {};
131
- return (0, _element.createElement)(Component, {
132
- className: className,
133
- clearable: clearable,
134
- clearGradient: clearGradient,
135
- gradients: gradients,
136
- onChange: onChange,
137
- value: value,
138
- actions: clearable && ((gradients === null || gradients === void 0 ? void 0 : gradients.length) || !disableCustomGradients) && (0, _element.createElement)(_circularOptionPicker.default.ButtonAction, {
139
- onClick: clearGradient
140
- }, (0, _i18n.__)('Clear')),
141
- content: !disableCustomGradients && (0, _element.createElement)(_spacer.Spacer, (0, _extends2.default)({
142
- marginTop: gradients !== null && gradients !== void 0 && gradients.length ? 3 : 0,
139
+ return (// Outmost Spacer wrapper can be removed when deprecation period is over
140
+ (0, _element.createElement)(_spacer.Spacer, (0, _extends2.default)({
143
141
  marginBottom: 0
144
- }, deprecatedMarginSpacerProps), (0, _element.createElement)(_customGradientPicker.default, {
145
- __nextHasNoMargin: __nextHasNoMargin,
142
+ }, deprecatedMarginSpacerProps), (0, _element.createElement)(_vStack.VStack, {
143
+ spacing: gradients !== null && gradients !== void 0 && gradients.length ? 4 : 0
144
+ }, !disableCustomGradients && (0, _element.createElement)(_customGradientPicker.default, {
145
+ __nextHasNoMargin: true,
146
146
  __experimentalIsRenderedInSidebar: __experimentalIsRenderedInSidebar,
147
147
  value: value,
148
148
  onChange: onChange
149
- }))
150
- });
149
+ }), ((gradients === null || gradients === void 0 ? void 0 : gradients.length) || clearable) && (0, _element.createElement)(Component, {
150
+ className: className,
151
+ clearable: clearable,
152
+ clearGradient: clearGradient,
153
+ gradients: gradients,
154
+ onChange: onChange,
155
+ value: value,
156
+ actions: clearable && !disableCustomGradients && (0, _element.createElement)(_circularOptionPicker.default.ButtonAction, {
157
+ onClick: clearGradient
158
+ }, (0, _i18n.__)('Clear'))
159
+ })))
160
+ );
151
161
  }
152
162
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/gradient-picker/index.js"],"names":["SingleOrigin","className","clearGradient","gradients","onChange","value","actions","content","gradientOptions","gradient","name","color","background","MultipleOrigin","map","index","gradientSet","length","GradientPicker","__nextHasNoMargin","clearable","disableCustomGradients","__experimentalHasMultipleOrigins","__experimentalIsRenderedInSidebar","undefined","Component","deprecatedMarginSpacerProps","marginTop"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { map } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useCallback, useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport CircularOptionPicker from '../circular-option-picker';\nimport CustomGradientPicker from '../custom-gradient-picker';\nimport { VStack } from '../v-stack';\nimport { ColorHeading } from '../color-palette/styles';\nimport { Spacer } from '../spacer';\n\nfunction SingleOrigin( {\n\tclassName,\n\tclearGradient,\n\tgradients,\n\tonChange,\n\tvalue,\n\tactions,\n\tcontent,\n} ) {\n\tconst gradientOptions = useMemo( () => {\n\t\treturn map( gradients, ( { gradient, name } ) => (\n\t\t\t<CircularOptionPicker.Option\n\t\t\t\tkey={ gradient }\n\t\t\t\tvalue={ gradient }\n\t\t\t\tisSelected={ value === gradient }\n\t\t\t\ttooltipText={\n\t\t\t\t\tname ||\n\t\t\t\t\t// translators: %s: gradient code e.g: \"linear-gradient(90deg, rgba(98,16,153,1) 0%, rgba(172,110,22,1) 100%);\".\n\t\t\t\t\tsprintf( __( 'Gradient code: %s' ), gradient )\n\t\t\t\t}\n\t\t\t\tstyle={ { color: 'rgba( 0,0,0,0 )', background: gradient } }\n\t\t\t\tonClick={\n\t\t\t\t\tvalue === gradient\n\t\t\t\t\t\t? clearGradient\n\t\t\t\t\t\t: () => onChange( gradient )\n\t\t\t\t}\n\t\t\t\taria-label={\n\t\t\t\t\tname\n\t\t\t\t\t\t? // translators: %s: The name of the gradient e.g: \"Angular red to blue\".\n\t\t\t\t\t\t sprintf( __( 'Gradient: %s' ), name )\n\t\t\t\t\t\t: // translators: %s: gradient code e.g: \"linear-gradient(90deg, rgba(98,16,153,1) 0%, rgba(172,110,22,1) 100%);\".\n\t\t\t\t\t\t sprintf( __( 'Gradient code: %s' ), gradient )\n\t\t\t\t}\n\t\t\t/>\n\t\t) );\n\t}, [ gradients, value, onChange, clearGradient ] );\n\treturn (\n\t\t<CircularOptionPicker\n\t\t\tclassName={ className }\n\t\t\toptions={ gradientOptions }\n\t\t\tactions={ actions }\n\t\t>\n\t\t\t{ content }\n\t\t</CircularOptionPicker>\n\t);\n}\n\nfunction MultipleOrigin( {\n\tclassName,\n\tclearGradient,\n\tgradients,\n\tonChange,\n\tvalue,\n\tactions,\n\tcontent,\n} ) {\n\treturn (\n\t\t<VStack spacing={ 3 } className={ className }>\n\t\t\t{ gradients.map( ( { name, gradients: gradientSet }, index ) => {\n\t\t\t\treturn (\n\t\t\t\t\t<VStack spacing={ 2 } key={ index }>\n\t\t\t\t\t\t<ColorHeading>{ name }</ColorHeading>\n\t\t\t\t\t\t<SingleOrigin\n\t\t\t\t\t\t\tclearGradient={ clearGradient }\n\t\t\t\t\t\t\tgradients={ gradientSet }\n\t\t\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\t\t\tvalue={ value }\n\t\t\t\t\t\t\t{ ...( gradients.length === index + 1\n\t\t\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t\t\tactions,\n\t\t\t\t\t\t\t\t\t\tcontent,\n\t\t\t\t\t\t\t\t }\n\t\t\t\t\t\t\t\t: {} ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</VStack>\n\t\t\t\t);\n\t\t\t} ) }\n\t\t</VStack>\n\t);\n}\n\nexport default function GradientPicker( {\n\t/** Start opting into the new margin-free styles that will become the default in a future version. */\n\t__nextHasNoMargin = false,\n\tclassName,\n\tgradients,\n\tonChange,\n\tvalue,\n\tclearable = true,\n\tdisableCustomGradients = false,\n\t__experimentalHasMultipleOrigins,\n\t__experimentalIsRenderedInSidebar,\n} ) {\n\tconst clearGradient = useCallback(\n\t\t() => onChange( undefined ),\n\t\t[ onChange ]\n\t);\n\tconst Component =\n\t\t__experimentalHasMultipleOrigins && gradients?.length\n\t\t\t? MultipleOrigin\n\t\t\t: SingleOrigin;\n\n\t// Can be removed when deprecation period is over\n\tconst deprecatedMarginSpacerProps = ! __nextHasNoMargin\n\t\t? { marginTop: 3 }\n\t\t: {};\n\n\treturn (\n\t\t<Component\n\t\t\tclassName={ className }\n\t\t\tclearable={ clearable }\n\t\t\tclearGradient={ clearGradient }\n\t\t\tgradients={ gradients }\n\t\t\tonChange={ onChange }\n\t\t\tvalue={ value }\n\t\t\tactions={\n\t\t\t\tclearable &&\n\t\t\t\t( gradients?.length || ! disableCustomGradients ) && (\n\t\t\t\t\t<CircularOptionPicker.ButtonAction\n\t\t\t\t\t\tonClick={ clearGradient }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Clear' ) }\n\t\t\t\t\t</CircularOptionPicker.ButtonAction>\n\t\t\t\t)\n\t\t\t}\n\t\t\tcontent={\n\t\t\t\t! disableCustomGradients && (\n\t\t\t\t\t<Spacer\n\t\t\t\t\t\tmarginTop={ gradients?.length ? 3 : 0 }\n\t\t\t\t\t\tmarginBottom={ 0 }\n\t\t\t\t\t\t{ ...deprecatedMarginSpacerProps }\n\t\t\t\t\t>\n\t\t\t\t\t\t<CustomGradientPicker\n\t\t\t\t\t\t\t__nextHasNoMargin={ __nextHasNoMargin }\n\t\t\t\t\t\t\t__experimentalIsRenderedInSidebar={\n\t\t\t\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tvalue={ value }\n\t\t\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</Spacer>\n\t\t\t\t)\n\t\t\t}\n\t\t/>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/gradient-picker/index.js"],"names":["SingleOrigin","className","clearGradient","gradients","onChange","value","actions","gradientOptions","gradient","name","color","background","MultipleOrigin","map","index","gradientSet","length","GradientPicker","__nextHasNoMargin","clearable","disableCustomGradients","__experimentalHasMultipleOrigins","__experimentalIsRenderedInSidebar","undefined","Component","since","version","hint","deprecatedMarginSpacerProps","marginTop","marginBottom"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { map } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useCallback, useMemo } from '@wordpress/element';\nimport deprecated from '@wordpress/deprecated';\n\n/**\n * Internal dependencies\n */\nimport CircularOptionPicker from '../circular-option-picker';\nimport CustomGradientPicker from '../custom-gradient-picker';\nimport { VStack } from '../v-stack';\nimport { ColorHeading } from '../color-palette/styles';\nimport { Spacer } from '../spacer';\n\nfunction SingleOrigin( {\n\tclassName,\n\tclearGradient,\n\tgradients,\n\tonChange,\n\tvalue,\n\tactions,\n} ) {\n\tconst gradientOptions = useMemo( () => {\n\t\treturn map( gradients, ( { gradient, name } ) => (\n\t\t\t<CircularOptionPicker.Option\n\t\t\t\tkey={ gradient }\n\t\t\t\tvalue={ gradient }\n\t\t\t\tisSelected={ value === gradient }\n\t\t\t\ttooltipText={\n\t\t\t\t\tname ||\n\t\t\t\t\t// translators: %s: gradient code e.g: \"linear-gradient(90deg, rgba(98,16,153,1) 0%, rgba(172,110,22,1) 100%);\".\n\t\t\t\t\tsprintf( __( 'Gradient code: %s' ), gradient )\n\t\t\t\t}\n\t\t\t\tstyle={ { color: 'rgba( 0,0,0,0 )', background: gradient } }\n\t\t\t\tonClick={\n\t\t\t\t\tvalue === gradient\n\t\t\t\t\t\t? clearGradient\n\t\t\t\t\t\t: () => onChange( gradient )\n\t\t\t\t}\n\t\t\t\taria-label={\n\t\t\t\t\tname\n\t\t\t\t\t\t? // translators: %s: The name of the gradient e.g: \"Angular red to blue\".\n\t\t\t\t\t\t sprintf( __( 'Gradient: %s' ), name )\n\t\t\t\t\t\t: // translators: %s: gradient code e.g: \"linear-gradient(90deg, rgba(98,16,153,1) 0%, rgba(172,110,22,1) 100%);\".\n\t\t\t\t\t\t sprintf( __( 'Gradient code: %s' ), gradient )\n\t\t\t\t}\n\t\t\t/>\n\t\t) );\n\t}, [ gradients, value, onChange, clearGradient ] );\n\treturn (\n\t\t<CircularOptionPicker\n\t\t\tclassName={ className }\n\t\t\toptions={ gradientOptions }\n\t\t\tactions={ actions }\n\t\t/>\n\t);\n}\n\nfunction MultipleOrigin( {\n\tclassName,\n\tclearGradient,\n\tgradients,\n\tonChange,\n\tvalue,\n\tactions,\n} ) {\n\treturn (\n\t\t<VStack spacing={ 3 } className={ className }>\n\t\t\t{ gradients.map( ( { name, gradients: gradientSet }, index ) => {\n\t\t\t\treturn (\n\t\t\t\t\t<VStack spacing={ 2 } key={ index }>\n\t\t\t\t\t\t<ColorHeading>{ name }</ColorHeading>\n\t\t\t\t\t\t<SingleOrigin\n\t\t\t\t\t\t\tclearGradient={ clearGradient }\n\t\t\t\t\t\t\tgradients={ gradientSet }\n\t\t\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\t\t\tvalue={ value }\n\t\t\t\t\t\t\t{ ...( gradients.length === index + 1\n\t\t\t\t\t\t\t\t? { actions }\n\t\t\t\t\t\t\t\t: {} ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</VStack>\n\t\t\t\t);\n\t\t\t} ) }\n\t\t</VStack>\n\t);\n}\n\nexport default function GradientPicker( {\n\t/** Start opting into the new margin-free styles that will become the default in a future version. */\n\t__nextHasNoMargin = false,\n\tclassName,\n\tgradients,\n\tonChange,\n\tvalue,\n\tclearable = true,\n\tdisableCustomGradients = false,\n\t__experimentalHasMultipleOrigins,\n\t__experimentalIsRenderedInSidebar,\n} ) {\n\tconst clearGradient = useCallback(\n\t\t() => onChange( undefined ),\n\t\t[ onChange ]\n\t);\n\tconst Component =\n\t\t__experimentalHasMultipleOrigins && gradients?.length\n\t\t\t? MultipleOrigin\n\t\t\t: SingleOrigin;\n\n\tif ( ! __nextHasNoMargin ) {\n\t\tdeprecated( 'Outer margin styles for wp.components.GradientPicker', {\n\t\t\tsince: '6.1',\n\t\t\tversion: '6.4',\n\t\t\thint: 'Set the `__nextHasNoMargin` prop to true to start opting into the new styles, which will become the default in a future version',\n\t\t} );\n\t}\n\n\tconst deprecatedMarginSpacerProps = ! __nextHasNoMargin\n\t\t? {\n\t\t\t\tmarginTop: ! gradients?.length ? 3 : undefined,\n\t\t\t\tmarginBottom: ! clearable ? 6 : 0,\n\t\t }\n\t\t: {};\n\n\treturn (\n\t\t// Outmost Spacer wrapper can be removed when deprecation period is over\n\t\t<Spacer marginBottom={ 0 } { ...deprecatedMarginSpacerProps }>\n\t\t\t<VStack spacing={ gradients?.length ? 4 : 0 }>\n\t\t\t\t{ ! disableCustomGradients && (\n\t\t\t\t\t<CustomGradientPicker\n\t\t\t\t\t\t__nextHasNoMargin\n\t\t\t\t\t\t__experimentalIsRenderedInSidebar={\n\t\t\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t\t\t}\n\t\t\t\t\t\tvalue={ value }\n\t\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ ( gradients?.length || clearable ) && (\n\t\t\t\t\t<Component\n\t\t\t\t\t\tclassName={ className }\n\t\t\t\t\t\tclearable={ clearable }\n\t\t\t\t\t\tclearGradient={ clearGradient }\n\t\t\t\t\t\tgradients={ gradients }\n\t\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\t\tvalue={ value }\n\t\t\t\t\t\tactions={\n\t\t\t\t\t\t\tclearable &&\n\t\t\t\t\t\t\t! disableCustomGradients && (\n\t\t\t\t\t\t\t\t<CircularOptionPicker.ButtonAction\n\t\t\t\t\t\t\t\t\tonClick={ clearGradient }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ __( 'Clear' ) }\n\t\t\t\t\t\t\t\t</CircularOptionPicker.ButtonAction>\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</VStack>\n\t\t</Spacer>\n\t);\n}\n"]}
@@ -15,8 +15,6 @@ var _deprecated = _interopRequireDefault(require("@wordpress/deprecated"));
15
15
 
16
16
  var _i18n = require("@wordpress/i18n");
17
17
 
18
- var _keycodes = require("@wordpress/keycodes");
19
-
20
18
  var _dom = require("@wordpress/dom");
21
19
 
22
20
  var _modal = _interopRequireDefault(require("../modal"));
@@ -95,10 +93,14 @@ function Guide(_ref) {
95
93
  contentLabel: contentLabel,
96
94
  onRequestClose: onFinish,
97
95
  onKeyDown: event => {
98
- if (event.keyCode === _keycodes.LEFT) {
99
- goBack();
100
- } else if (event.keyCode === _keycodes.RIGHT) {
101
- goForward();
96
+ if (event.code === 'ArrowLeft') {
97
+ goBack(); // Do not scroll the modal's contents.
98
+
99
+ event.preventDefault();
100
+ } else if (event.code === 'ArrowRight') {
101
+ goForward(); // Do not scroll the modal's contents.
102
+
103
+ event.preventDefault();
102
104
  }
103
105
  },
104
106
  ref: guideContainer
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/guide/index.js"],"names":["Guide","children","className","contentLabel","finishButtonText","onFinish","pages","guideContainer","currentPage","setCurrentPage","Children","count","since","alternative","current","tabbable","find","focus","map","child","content","canGoBack","canGoForward","length","goBack","goForward","event","keyCode","LEFT","RIGHT","image"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { useState, useEffect, Children, useRef } from '@wordpress/element';\nimport deprecated from '@wordpress/deprecated';\nimport { __ } from '@wordpress/i18n';\nimport { LEFT, RIGHT } from '@wordpress/keycodes';\nimport { focus } from '@wordpress/dom';\n\n/**\n * Internal dependencies\n */\nimport Modal from '../modal';\nimport Button from '../button';\nimport PageControl from './page-control';\n\nexport default function Guide( {\n\tchildren,\n\tclassName,\n\tcontentLabel,\n\tfinishButtonText,\n\tonFinish,\n\tpages = [],\n} ) {\n\tconst guideContainer = useRef();\n\tconst [ currentPage, setCurrentPage ] = useState( 0 );\n\n\tuseEffect( () => {\n\t\tif ( Children.count( children ) ) {\n\t\t\tdeprecated( 'Passing children to <Guide>', {\n\t\t\t\tsince: '5.5',\n\t\t\t\talternative: 'the `pages` prop',\n\t\t\t} );\n\t\t}\n\t}, [ children ] );\n\n\tuseEffect( () => {\n\t\t// Each time we change the current page, start from the first element of the page.\n\t\t// This also solves any focus loss that can happen.\n\t\tif ( guideContainer.current ) {\n\t\t\tfocus.tabbable.find( guideContainer.current )?.[ 0 ]?.focus();\n\t\t}\n\t}, [ currentPage ] );\n\n\tif ( Children.count( children ) ) {\n\t\tpages = Children.map( children, ( child ) => ( { content: child } ) );\n\t}\n\n\tconst canGoBack = currentPage > 0;\n\tconst canGoForward = currentPage < pages.length - 1;\n\n\tconst goBack = () => {\n\t\tif ( canGoBack ) {\n\t\t\tsetCurrentPage( currentPage - 1 );\n\t\t}\n\t};\n\n\tconst goForward = () => {\n\t\tif ( canGoForward ) {\n\t\t\tsetCurrentPage( currentPage + 1 );\n\t\t}\n\t};\n\n\tif ( pages.length === 0 ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<Modal\n\t\t\tclassName={ classnames( 'components-guide', className ) }\n\t\t\tcontentLabel={ contentLabel }\n\t\t\tonRequestClose={ onFinish }\n\t\t\tonKeyDown={ ( event ) => {\n\t\t\t\tif ( event.keyCode === LEFT ) {\n\t\t\t\t\tgoBack();\n\t\t\t\t} else if ( event.keyCode === RIGHT ) {\n\t\t\t\t\tgoForward();\n\t\t\t\t}\n\t\t\t} }\n\t\t\tref={ guideContainer }\n\t\t>\n\t\t\t<div className=\"components-guide__container\">\n\t\t\t\t<div className=\"components-guide__page\">\n\t\t\t\t\t{ pages[ currentPage ].image }\n\n\t\t\t\t\t{ pages.length > 1 && (\n\t\t\t\t\t\t<PageControl\n\t\t\t\t\t\t\tcurrentPage={ currentPage }\n\t\t\t\t\t\t\tnumberOfPages={ pages.length }\n\t\t\t\t\t\t\tsetCurrentPage={ setCurrentPage }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\n\t\t\t\t\t{ pages[ currentPage ].content }\n\t\t\t\t</div>\n\n\t\t\t\t<div className=\"components-guide__footer\">\n\t\t\t\t\t{ canGoBack && (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tclassName=\"components-guide__back-button\"\n\t\t\t\t\t\t\tonClick={ goBack }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Previous' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t) }\n\t\t\t\t\t{ canGoForward && (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tclassName=\"components-guide__forward-button\"\n\t\t\t\t\t\t\tonClick={ goForward }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Next' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t) }\n\t\t\t\t\t{ ! canGoForward && (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tclassName=\"components-guide__finish-button\"\n\t\t\t\t\t\t\tonClick={ onFinish }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ finishButtonText || __( 'Finish' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t) }\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</Modal>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/guide/index.js"],"names":["Guide","children","className","contentLabel","finishButtonText","onFinish","pages","guideContainer","currentPage","setCurrentPage","Children","count","since","alternative","current","tabbable","find","focus","map","child","content","canGoBack","canGoForward","length","goBack","goForward","event","code","preventDefault","image"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { useState, useEffect, Children, useRef } from '@wordpress/element';\nimport deprecated from '@wordpress/deprecated';\nimport { __ } from '@wordpress/i18n';\nimport { focus } from '@wordpress/dom';\n\n/**\n * Internal dependencies\n */\nimport Modal from '../modal';\nimport Button from '../button';\nimport PageControl from './page-control';\n\nexport default function Guide( {\n\tchildren,\n\tclassName,\n\tcontentLabel,\n\tfinishButtonText,\n\tonFinish,\n\tpages = [],\n} ) {\n\tconst guideContainer = useRef();\n\tconst [ currentPage, setCurrentPage ] = useState( 0 );\n\n\tuseEffect( () => {\n\t\tif ( Children.count( children ) ) {\n\t\t\tdeprecated( 'Passing children to <Guide>', {\n\t\t\t\tsince: '5.5',\n\t\t\t\talternative: 'the `pages` prop',\n\t\t\t} );\n\t\t}\n\t}, [ children ] );\n\n\tuseEffect( () => {\n\t\t// Each time we change the current page, start from the first element of the page.\n\t\t// This also solves any focus loss that can happen.\n\t\tif ( guideContainer.current ) {\n\t\t\tfocus.tabbable.find( guideContainer.current )?.[ 0 ]?.focus();\n\t\t}\n\t}, [ currentPage ] );\n\n\tif ( Children.count( children ) ) {\n\t\tpages = Children.map( children, ( child ) => ( { content: child } ) );\n\t}\n\n\tconst canGoBack = currentPage > 0;\n\tconst canGoForward = currentPage < pages.length - 1;\n\n\tconst goBack = () => {\n\t\tif ( canGoBack ) {\n\t\t\tsetCurrentPage( currentPage - 1 );\n\t\t}\n\t};\n\n\tconst goForward = () => {\n\t\tif ( canGoForward ) {\n\t\t\tsetCurrentPage( currentPage + 1 );\n\t\t}\n\t};\n\n\tif ( pages.length === 0 ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<Modal\n\t\t\tclassName={ classnames( 'components-guide', className ) }\n\t\t\tcontentLabel={ contentLabel }\n\t\t\tonRequestClose={ onFinish }\n\t\t\tonKeyDown={ ( event ) => {\n\t\t\t\tif ( event.code === 'ArrowLeft' ) {\n\t\t\t\t\tgoBack();\n\t\t\t\t\t// Do not scroll the modal's contents.\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t} else if ( event.code === 'ArrowRight' ) {\n\t\t\t\t\tgoForward();\n\t\t\t\t\t// Do not scroll the modal's contents.\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t}\n\t\t\t} }\n\t\t\tref={ guideContainer }\n\t\t>\n\t\t\t<div className=\"components-guide__container\">\n\t\t\t\t<div className=\"components-guide__page\">\n\t\t\t\t\t{ pages[ currentPage ].image }\n\n\t\t\t\t\t{ pages.length > 1 && (\n\t\t\t\t\t\t<PageControl\n\t\t\t\t\t\t\tcurrentPage={ currentPage }\n\t\t\t\t\t\t\tnumberOfPages={ pages.length }\n\t\t\t\t\t\t\tsetCurrentPage={ setCurrentPage }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\n\t\t\t\t\t{ pages[ currentPage ].content }\n\t\t\t\t</div>\n\n\t\t\t\t<div className=\"components-guide__footer\">\n\t\t\t\t\t{ canGoBack && (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tclassName=\"components-guide__back-button\"\n\t\t\t\t\t\t\tonClick={ goBack }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Previous' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t) }\n\t\t\t\t\t{ canGoForward && (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tclassName=\"components-guide__forward-button\"\n\t\t\t\t\t\t\tonClick={ goForward }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Next' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t) }\n\t\t\t\t\t{ ! canGoForward && (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tclassName=\"components-guide__finish-button\"\n\t\t\t\t\t\t\tonClick={ onFinish }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ finishButtonText || __( 'Finish' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t) }\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</Modal>\n\t);\n}\n"]}
@@ -16,7 +16,7 @@ const withConstrainedTabbing = (0, _compose.createHigherOrderComponent)(WrappedC
16
16
  const ref = (0, _compose.useConstrainedTabbing)();
17
17
  return (0, _element.createElement)("div", {
18
18
  ref: ref,
19
- tabIndex: "-1"
19
+ tabIndex: -1
20
20
  }, (0, _element.createElement)(WrappedComponent, props));
21
21
  }, 'withConstrainedTabbing');
22
22
  var _default = withConstrainedTabbing;
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/higher-order/with-constrained-tabbing/index.js"],"names":["withConstrainedTabbing","WrappedComponent","ComponentWithConstrainedTabbing","props","ref"],"mappings":";;;;;;;;;AAGA;;AAHA;AACA;AACA;AAMA,MAAMA,sBAAsB,GAAG,yCAC5BC,gBAAF,IACC,SAASC,+BAAT,CAA0CC,KAA1C,EAAkD;AACjD,QAAMC,GAAG,GAAG,qCAAZ;AACA,SACC;AAAK,IAAA,GAAG,EAAGA,GAAX;AAAiB,IAAA,QAAQ,EAAC;AAA1B,KACC,4BAAC,gBAAD,EAAuBD,KAAvB,CADD,CADD;AAKA,CAT4B,EAU9B,wBAV8B,CAA/B;eAaeH,sB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tcreateHigherOrderComponent,\n\tuseConstrainedTabbing,\n} from '@wordpress/compose';\n\nconst withConstrainedTabbing = createHigherOrderComponent(\n\t( WrappedComponent ) =>\n\t\tfunction ComponentWithConstrainedTabbing( props ) {\n\t\t\tconst ref = useConstrainedTabbing();\n\t\t\treturn (\n\t\t\t\t<div ref={ ref } tabIndex=\"-1\">\n\t\t\t\t\t<WrappedComponent { ...props } />\n\t\t\t\t</div>\n\t\t\t);\n\t\t},\n\t'withConstrainedTabbing'\n);\n\nexport default withConstrainedTabbing;\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/higher-order/with-constrained-tabbing/index.js"],"names":["withConstrainedTabbing","WrappedComponent","ComponentWithConstrainedTabbing","props","ref"],"mappings":";;;;;;;;;AAGA;;AAHA;AACA;AACA;AAMA,MAAMA,sBAAsB,GAAG,yCAC5BC,gBAAF,IACC,SAASC,+BAAT,CAA0CC,KAA1C,EAAkD;AACjD,QAAMC,GAAG,GAAG,qCAAZ;AACA,SACC;AAAK,IAAA,GAAG,EAAGA,GAAX;AAAiB,IAAA,QAAQ,EAAG,CAAC;AAA7B,KACC,4BAAC,gBAAD,EAAuBD,KAAvB,CADD,CADD;AAKA,CAT4B,EAU9B,wBAV8B,CAA/B;eAaeH,sB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tcreateHigherOrderComponent,\n\tuseConstrainedTabbing,\n} from '@wordpress/compose';\n\nconst withConstrainedTabbing = createHigherOrderComponent(\n\t( WrappedComponent ) =>\n\t\tfunction ComponentWithConstrainedTabbing( props ) {\n\t\t\tconst ref = useConstrainedTabbing();\n\t\t\treturn (\n\t\t\t\t<div ref={ ref } tabIndex={ -1 }>\n\t\t\t\t\t<WrappedComponent { ...props } />\n\t\t\t\t</div>\n\t\t\t);\n\t\t},\n\t'withConstrainedTabbing'\n);\n\nexport default withConstrainedTabbing;\n"]}
@@ -19,6 +19,8 @@ var _a11y = require("@wordpress/a11y");
19
19
  * WordPress dependencies
20
20
  */
21
21
 
22
+ /** @typedef {import('@wordpress/element').WPComponent} WPComponent */
23
+
22
24
  /**
23
25
  * A Higher Order Component used to be provide speak and debounced speak
24
26
  * functions.
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/higher-order/with-spoken-messages/index.js"],"names":["Component","props","speak"],"mappings":";;;;;;;;;;;;;AAGA;;AACA;;AAJA;AACA;AACA;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;eACe,yCACZA,SAAF,IAAmBC,KAAF,IAEf,4BAAC,SAAD,6BACMA,KADN;AAEC,EAAA,KAAK,EAAGC,WAFT;AAGC,EAAA,cAAc,EAAG,0BAAaA,WAAb,EAAoB,GAApB;AAHlB,GAHY,EASd,oBATc,C","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createHigherOrderComponent, useDebounce } from '@wordpress/compose';\nimport { speak } from '@wordpress/a11y';\n\n/**\n * A Higher Order Component used to be provide speak and debounced speak\n * functions.\n *\n * @see https://developer.wordpress.org/block-editor/packages/packages-a11y/#speak\n *\n * @param {WPComponent} Component The component to be wrapped.\n *\n * @return {WPComponent} The wrapped component.\n */\nexport default createHigherOrderComponent(\n\t( Component ) => ( props ) =>\n\t\t(\n\t\t\t<Component\n\t\t\t\t{ ...props }\n\t\t\t\tspeak={ speak }\n\t\t\t\tdebouncedSpeak={ useDebounce( speak, 500 ) }\n\t\t\t/>\n\t\t),\n\t'withSpokenMessages'\n);\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/higher-order/with-spoken-messages/index.js"],"names":["Component","props","speak"],"mappings":";;;;;;;;;;;;;AAGA;;AACA;;AAJA;AACA;AACA;;AAIA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;eACe,yCACZA,SAAF,IAAmBC,KAAF,IAEf,4BAAC,SAAD,6BACMA,KADN;AAEC,EAAA,KAAK,EAAGC,WAFT;AAGC,EAAA,cAAc,EAAG,0BAAaA,WAAb,EAAoB,GAApB;AAHlB,GAHY,EASd,oBATc,C","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createHigherOrderComponent, useDebounce } from '@wordpress/compose';\nimport { speak } from '@wordpress/a11y';\n\n/** @typedef {import('@wordpress/element').WPComponent} WPComponent */\n\n/**\n * A Higher Order Component used to be provide speak and debounced speak\n * functions.\n *\n * @see https://developer.wordpress.org/block-editor/packages/packages-a11y/#speak\n *\n * @param {WPComponent} Component The component to be wrapped.\n *\n * @return {WPComponent} The wrapped component.\n */\nexport default createHigherOrderComponent(\n\t( Component ) => ( props ) =>\n\t\t(\n\t\t\t<Component\n\t\t\t\t{ ...props }\n\t\t\t\tspeak={ speak }\n\t\t\t\tdebouncedSpeak={ useDebounce( speak, 500 ) }\n\t\t\t/>\n\t\t),\n\t'withSpokenMessages'\n);\n"]}
@@ -59,10 +59,9 @@ function Icon(_ref) {
59
59
  }
60
60
 
61
61
  if (icon && (icon.type === 'svg' || icon.type === _primitives.SVG)) {
62
- const appliedProps = {
62
+ const appliedProps = { ...icon.props,
63
63
  width: size,
64
64
  height: size,
65
- ...icon.props,
66
65
  ...additionalProps
67
66
  };
68
67
  return (0, _element.createElement)(_primitives.SVG, appliedProps);
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/icon/index.tsx"],"names":["Icon","icon","size","additionalProps","Dashicon","type","prototype","Component","SVG","appliedProps","width","height","props"],"mappings":";;;;;;;;;;;AAQA;;AAMA;;AAKA;;AAnBA;AACA;AACA;;AAGA;AACA;AACA;;AASA;AACA;AACA;AA8BA,SAASA,IAAT,OAIgB;AAAA,MAJI;AACnBC,IAAAA,IAAI,GAAG,IADY;AAEnBC,IAAAA,IAAI,GAAG,EAFY;AAGnB,OAAGC;AAHgB,GAIJ;;AACf,MAAK,aAAa,OAAOF,IAAzB,EAAgC;AAC/B,WACC,4BAAC,iBAAD;AACC,MAAA,IAAI,EAAGA;AADR,OAEQE,eAFR,EADD;AAMA;;AAED,MAAK,6BAAgBF,IAAhB,KAA0BG,sBAAaH,IAAI,CAACI,IAAjD,EAAwD;AACvD,WAAO,2BAAcJ,IAAd,EAAoB,EAC1B,GAAGE;AADuB,KAApB,CAAP;AAGA;;AAED,MAAK,eAAe,OAAOF,IAA3B,EAAkC;AACjC,QAAKA,IAAI,CAACK,SAAL,YAA0BC,kBAA/B,EAA2C;AAC1C,aAAO,4BAAeN,IAAf,EAAqB;AAC3BC,QAAAA,IAD2B;AAE3B,WAAGC;AAFwB,OAArB,CAAP;AAIA;;AAED,WAASF,IAAF,CAA+C;AACrDC,MAAAA,IADqD;AAErD,SAAGC;AAFkD,KAA/C,CAAP;AAIA;;AAED,MAAKF,IAAI,KAAMA,IAAI,CAACI,IAAL,KAAc,KAAd,IAAuBJ,IAAI,CAACI,IAAL,KAAcG,eAA3C,CAAT,EAA4D;AAC3D,UAAMC,YAAY,GAAG;AACpBC,MAAAA,KAAK,EAAER,IADa;AAEpBS,MAAAA,MAAM,EAAET,IAFY;AAGpB,SAAGD,IAAI,CAACW,KAHY;AAIpB,SAAGT;AAJiB,KAArB;AAOA,WAAO,4BAAC,eAAD,EAAUM,YAAV,CAAP;AACA;;AAED,MAAK,6BAAgBR,IAAhB,CAAL,EAA8B;AAC7B,WAAO,2BAAcA,IAAd,EAAoB;AAC1B;AACAC,MAAAA,IAF0B;AAG1B,SAAGC;AAHuB,KAApB,CAAP;AAKA;;AAED,SAAOF,IAAP;AACA;;eAEcD,I","sourcesContent":["/**\n * External dependencies\n */\nimport type { ComponentType, HTMLProps, SVGProps } from 'react';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tcloneElement,\n\tcreateElement,\n\tComponent,\n\tisValidElement,\n} from '@wordpress/element';\nimport { SVG } from '@wordpress/primitives';\n\n/**\n * Internal dependencies\n */\nimport Dashicon from '../dashicon';\nimport type { IconKey as DashiconIconKey } from '../dashicon/types';\n\nexport type IconType< P > = DashiconIconKey | ComponentType< P > | JSX.Element;\n\ninterface BaseProps< P > {\n\t/**\n\t * The icon to render. Supported values are: Dashicons (specified as\n\t * strings), functions, Component instances and `null`.\n\t *\n\t * @default null\n\t */\n\ticon?: IconType< P > | null;\n\t/**\n\t * The size (width and height) of the icon.\n\t *\n\t * @default 24\n\t */\n\tsize?: number;\n}\n\ntype AdditionalProps< T > = T extends ComponentType< infer U >\n\t? U\n\t: T extends DashiconIconKey\n\t? SVGProps< SVGSVGElement >\n\t: {};\n\nexport type Props< P > = BaseProps< P > & AdditionalProps< IconType< P > >;\n\nfunction Icon< P >( {\n\ticon = null,\n\tsize = 24,\n\t...additionalProps\n}: Props< P > ) {\n\tif ( 'string' === typeof icon ) {\n\t\treturn (\n\t\t\t<Dashicon\n\t\t\t\ticon={ icon }\n\t\t\t\t{ ...( additionalProps as HTMLProps< HTMLSpanElement > ) }\n\t\t\t/>\n\t\t);\n\t}\n\n\tif ( isValidElement( icon ) && Dashicon === icon.type ) {\n\t\treturn cloneElement( icon, {\n\t\t\t...additionalProps,\n\t\t} );\n\t}\n\n\tif ( 'function' === typeof icon ) {\n\t\tif ( icon.prototype instanceof Component ) {\n\t\t\treturn createElement( icon, {\n\t\t\t\tsize,\n\t\t\t\t...additionalProps,\n\t\t\t} as unknown as P );\n\t\t}\n\n\t\treturn ( icon as ( ...args: any[] ) => JSX.Element )( {\n\t\t\tsize,\n\t\t\t...additionalProps,\n\t\t} );\n\t}\n\n\tif ( icon && ( icon.type === 'svg' || icon.type === SVG ) ) {\n\t\tconst appliedProps = {\n\t\t\twidth: size,\n\t\t\theight: size,\n\t\t\t...icon.props,\n\t\t\t...additionalProps,\n\t\t};\n\n\t\treturn <SVG { ...appliedProps } />;\n\t}\n\n\tif ( isValidElement( icon ) ) {\n\t\treturn cloneElement( icon, {\n\t\t\t// @ts-ignore Just forwarding the size prop along\n\t\t\tsize,\n\t\t\t...additionalProps,\n\t\t} );\n\t}\n\n\treturn icon;\n}\n\nexport default Icon;\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/icon/index.tsx"],"names":["Icon","icon","size","additionalProps","Dashicon","type","prototype","Component","SVG","appliedProps","props","width","height"],"mappings":";;;;;;;;;;;AAQA;;AAMA;;AAKA;;AAnBA;AACA;AACA;;AAGA;AACA;AACA;;AASA;AACA;AACA;AA8BA,SAASA,IAAT,OAIgB;AAAA,MAJI;AACnBC,IAAAA,IAAI,GAAG,IADY;AAEnBC,IAAAA,IAAI,GAAG,EAFY;AAGnB,OAAGC;AAHgB,GAIJ;;AACf,MAAK,aAAa,OAAOF,IAAzB,EAAgC;AAC/B,WACC,4BAAC,iBAAD;AACC,MAAA,IAAI,EAAGA;AADR,OAEQE,eAFR,EADD;AAMA;;AAED,MAAK,6BAAgBF,IAAhB,KAA0BG,sBAAaH,IAAI,CAACI,IAAjD,EAAwD;AACvD,WAAO,2BAAcJ,IAAd,EAAoB,EAC1B,GAAGE;AADuB,KAApB,CAAP;AAGA;;AAED,MAAK,eAAe,OAAOF,IAA3B,EAAkC;AACjC,QAAKA,IAAI,CAACK,SAAL,YAA0BC,kBAA/B,EAA2C;AAC1C,aAAO,4BAAeN,IAAf,EAAqB;AAC3BC,QAAAA,IAD2B;AAE3B,WAAGC;AAFwB,OAArB,CAAP;AAIA;;AAED,WAASF,IAAF,CAA+C;AACrDC,MAAAA,IADqD;AAErD,SAAGC;AAFkD,KAA/C,CAAP;AAIA;;AAED,MAAKF,IAAI,KAAMA,IAAI,CAACI,IAAL,KAAc,KAAd,IAAuBJ,IAAI,CAACI,IAAL,KAAcG,eAA3C,CAAT,EAA4D;AAC3D,UAAMC,YAAY,GAAG,EACpB,GAAGR,IAAI,CAACS,KADY;AAEpBC,MAAAA,KAAK,EAAET,IAFa;AAGpBU,MAAAA,MAAM,EAAEV,IAHY;AAIpB,SAAGC;AAJiB,KAArB;AAOA,WAAO,4BAAC,eAAD,EAAUM,YAAV,CAAP;AACA;;AAED,MAAK,6BAAgBR,IAAhB,CAAL,EAA8B;AAC7B,WAAO,2BAAcA,IAAd,EAAoB;AAC1B;AACAC,MAAAA,IAF0B;AAG1B,SAAGC;AAHuB,KAApB,CAAP;AAKA;;AAED,SAAOF,IAAP;AACA;;eAEcD,I","sourcesContent":["/**\n * External dependencies\n */\nimport type { ComponentType, HTMLProps, SVGProps } from 'react';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tcloneElement,\n\tcreateElement,\n\tComponent,\n\tisValidElement,\n} from '@wordpress/element';\nimport { SVG } from '@wordpress/primitives';\n\n/**\n * Internal dependencies\n */\nimport Dashicon from '../dashicon';\nimport type { IconKey as DashiconIconKey } from '../dashicon/types';\n\nexport type IconType< P > = DashiconIconKey | ComponentType< P > | JSX.Element;\n\ninterface BaseProps< P > {\n\t/**\n\t * The icon to render. Supported values are: Dashicons (specified as\n\t * strings), functions, Component instances and `null`.\n\t *\n\t * @default null\n\t */\n\ticon?: IconType< P > | null;\n\t/**\n\t * The size (width and height) of the icon.\n\t *\n\t * @default 24\n\t */\n\tsize?: number;\n}\n\ntype AdditionalProps< T > = T extends ComponentType< infer U >\n\t? U\n\t: T extends DashiconIconKey\n\t? SVGProps< SVGSVGElement >\n\t: {};\n\nexport type Props< P > = BaseProps< P > & AdditionalProps< IconType< P > >;\n\nfunction Icon< P >( {\n\ticon = null,\n\tsize = 24,\n\t...additionalProps\n}: Props< P > ) {\n\tif ( 'string' === typeof icon ) {\n\t\treturn (\n\t\t\t<Dashicon\n\t\t\t\ticon={ icon }\n\t\t\t\t{ ...( additionalProps as HTMLProps< HTMLSpanElement > ) }\n\t\t\t/>\n\t\t);\n\t}\n\n\tif ( isValidElement( icon ) && Dashicon === icon.type ) {\n\t\treturn cloneElement( icon, {\n\t\t\t...additionalProps,\n\t\t} );\n\t}\n\n\tif ( 'function' === typeof icon ) {\n\t\tif ( icon.prototype instanceof Component ) {\n\t\t\treturn createElement( icon, {\n\t\t\t\tsize,\n\t\t\t\t...additionalProps,\n\t\t\t} as unknown as P );\n\t\t}\n\n\t\treturn ( icon as ( ...args: any[] ) => JSX.Element )( {\n\t\t\tsize,\n\t\t\t...additionalProps,\n\t\t} );\n\t}\n\n\tif ( icon && ( icon.type === 'svg' || icon.type === SVG ) ) {\n\t\tconst appliedProps = {\n\t\t\t...icon.props,\n\t\t\twidth: size,\n\t\t\theight: size,\n\t\t\t...additionalProps,\n\t\t};\n\n\t\treturn <SVG { ...appliedProps } />;\n\t}\n\n\tif ( isValidElement( icon ) ) {\n\t\treturn cloneElement( icon, {\n\t\t\t// @ts-ignore Just forwarding the size prop along\n\t\t\tsize,\n\t\t\t...additionalProps,\n\t\t} );\n\t}\n\n\treturn icon;\n}\n\nexport default Icon;\n"]}
@@ -101,15 +101,16 @@ function InputBase(_ref, ref) {
101
101
  return (// @ts-expect-error The `direction` prop from Flex (FlexDirection) conflicts with legacy SVGAttributes `direction` (string) that come from React intrinsic prop definitions.
102
102
  (0, _element.createElement)(_inputControlStyles.Root, (0, _extends2.default)({}, props, getUIFlexProps(labelPosition), {
103
103
  className: className,
104
+ gap: 2,
104
105
  isFocused: isFocused,
105
106
  labelPosition: labelPosition,
106
107
  ref: ref
107
- }), (0, _element.createElement)(_inputControlStyles.LabelWrapper, null, (0, _element.createElement)(_label.default, {
108
+ }), (0, _element.createElement)(_label.default, {
108
109
  className: "components-input-control__label",
109
110
  hideLabelFromVision: hideLabelFromVision,
110
111
  labelPosition: labelPosition,
111
112
  htmlFor: id
112
- }, label)), (0, _element.createElement)(_inputControlStyles.Container, {
113
+ }, label), (0, _element.createElement)(_inputControlStyles.Container, {
113
114
  __unstableInputWidth: __unstableInputWidth,
114
115
  className: "components-input-control__container",
115
116
  disabled: disabled,