@wordpress/components 25.16.0 → 26.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 (1208) hide show
  1. package/.stylelintrc.js +23 -0
  2. package/CHANGELOG.md +47 -0
  3. package/build/alignment-matrix-control/icon.js +1 -2
  4. package/build/alignment-matrix-control/icon.js.map +1 -1
  5. package/build/alignment-matrix-control/index.js +1 -2
  6. package/build/alignment-matrix-control/index.js.map +1 -1
  7. package/build/alignment-matrix-control/styles/alignment-matrix-control-icon-styles.js +4 -8
  8. package/build/alignment-matrix-control/styles/alignment-matrix-control-icon-styles.js.map +1 -1
  9. package/build/alignment-matrix-control/styles/alignment-matrix-control-styles.js +4 -8
  10. package/build/alignment-matrix-control/styles/alignment-matrix-control-styles.js.map +1 -1
  11. package/build/alignment-matrix-control/utils.js +3 -6
  12. package/build/alignment-matrix-control/utils.js.map +1 -1
  13. package/build/angle-picker-control/angle-circle.js +1 -2
  14. package/build/angle-picker-control/angle-circle.js.map +1 -1
  15. package/build/angle-picker-control/index.js +3 -15
  16. package/build/angle-picker-control/index.js.map +1 -1
  17. package/build/angle-picker-control/styles/angle-picker-control-styles.js +9 -27
  18. package/build/angle-picker-control/styles/angle-picker-control-styles.js.map +1 -1
  19. package/build/angle-picker-control/types.js.map +1 -1
  20. package/build/animate/index.js +1 -2
  21. package/build/animate/index.js.map +1 -1
  22. package/build/autocomplete/autocompleter-ui.native.js +1 -2
  23. package/build/autocomplete/autocompleter-ui.native.js.map +1 -1
  24. package/build/autocomplete/background-view.android.js +1 -2
  25. package/build/autocomplete/background-view.android.js.map +1 -1
  26. package/build/autocomplete/background-view.ios.js +1 -2
  27. package/build/autocomplete/background-view.ios.js.map +1 -1
  28. package/build/base-control/index.js +2 -4
  29. package/build/base-control/index.js.map +1 -1
  30. package/build/base-control/styles/base-control-styles.js +5 -10
  31. package/build/base-control/styles/base-control-styles.js.map +1 -1
  32. package/build/border-box-control/border-box-control/component.js +2 -4
  33. package/build/border-box-control/border-box-control/component.js.map +1 -1
  34. package/build/border-box-control/border-box-control/hook.js +2 -2
  35. package/build/border-box-control/border-box-control/hook.js.map +1 -1
  36. package/build/border-box-control/border-box-control-linked-button/component.js +1 -2
  37. package/build/border-box-control/border-box-control-linked-button/component.js.map +1 -1
  38. package/build/border-box-control/border-box-control-linked-button/hook.js +2 -2
  39. package/build/border-box-control/border-box-control-linked-button/hook.js.map +1 -1
  40. package/build/border-box-control/border-box-control-split-controls/component.js +1 -2
  41. package/build/border-box-control/border-box-control-split-controls/component.js.map +1 -1
  42. package/build/border-box-control/border-box-control-split-controls/hook.js +2 -2
  43. package/build/border-box-control/border-box-control-split-controls/hook.js.map +1 -1
  44. package/build/border-box-control/border-box-control-visualizer/component.js +1 -2
  45. package/build/border-box-control/border-box-control-visualizer/component.js.map +1 -1
  46. package/build/border-box-control/border-box-control-visualizer/hook.js +2 -2
  47. package/build/border-box-control/border-box-control-visualizer/hook.js.map +1 -1
  48. package/build/border-box-control/styles.js +3 -6
  49. package/build/border-box-control/styles.js.map +1 -1
  50. package/build/border-control/border-control/component.js +2 -4
  51. package/build/border-control/border-control/component.js.map +1 -1
  52. package/build/border-control/border-control/hook.js +2 -2
  53. package/build/border-control/border-control/hook.js.map +1 -1
  54. package/build/border-control/border-control-dropdown/component.js +1 -2
  55. package/build/border-control/border-control-dropdown/component.js.map +1 -1
  56. package/build/border-control/border-control-dropdown/hook.js +2 -2
  57. package/build/border-control/border-control-dropdown/hook.js.map +1 -1
  58. package/build/border-control/border-control-style-picker/component.js +1 -2
  59. package/build/border-control/border-control-style-picker/component.js.map +1 -1
  60. package/build/border-control/styles.js +7 -14
  61. package/build/border-control/styles.js.map +1 -1
  62. package/build/box-control/index.js +1 -2
  63. package/build/box-control/index.js.map +1 -1
  64. package/build/box-control/styles/box-control-icon-styles.js +6 -12
  65. package/build/box-control/styles/box-control-icon-styles.js.map +1 -1
  66. package/build/box-control/styles/box-control-styles.js +6 -12
  67. package/build/box-control/styles/box-control-styles.js.map +1 -1
  68. package/build/box-control/utils.js +4 -8
  69. package/build/box-control/utils.js.map +1 -1
  70. package/build/button/deprecated.js +1 -2
  71. package/build/button/deprecated.js.map +1 -1
  72. package/build/button/index.js +2 -4
  73. package/build/button/index.js.map +1 -1
  74. package/build/button/index.native.js +1 -3
  75. package/build/button/index.native.js.map +1 -1
  76. package/build/button-group/index.js +2 -4
  77. package/build/button-group/index.js.map +1 -1
  78. package/build/card/card/component.js +4 -6
  79. package/build/card/card/component.js.map +1 -1
  80. package/build/card/card/hook.js +2 -2
  81. package/build/card/card/hook.js.map +1 -1
  82. package/build/card/card-body/component.js +2 -4
  83. package/build/card/card-body/component.js.map +1 -1
  84. package/build/card/card-body/hook.js +2 -2
  85. package/build/card/card-body/hook.js.map +1 -1
  86. package/build/card/card-divider/component.js +2 -4
  87. package/build/card/card-divider/component.js.map +1 -1
  88. package/build/card/card-divider/hook.js +2 -2
  89. package/build/card/card-divider/hook.js.map +1 -1
  90. package/build/card/card-footer/component.js +2 -4
  91. package/build/card/card-footer/component.js.map +1 -1
  92. package/build/card/card-footer/hook.js +2 -2
  93. package/build/card/card-footer/hook.js.map +1 -1
  94. package/build/card/card-header/component.js +2 -4
  95. package/build/card/card-header/component.js.map +1 -1
  96. package/build/card/card-header/hook.js +2 -2
  97. package/build/card/card-header/hook.js.map +1 -1
  98. package/build/card/card-media/component.js +2 -4
  99. package/build/card/card-media/component.js.map +1 -1
  100. package/build/card/card-media/hook.js +2 -2
  101. package/build/card/card-media/hook.js.map +1 -1
  102. package/build/card/context.js +1 -2
  103. package/build/card/context.js.map +1 -1
  104. package/build/card/index.js +2 -2
  105. package/build/card/index.js.map +1 -1
  106. package/build/card/styles.js +14 -28
  107. package/build/card/styles.js.map +1 -1
  108. package/build/checkbox-control/index.js +1 -2
  109. package/build/checkbox-control/index.js.map +1 -1
  110. package/build/checkbox-control/types.js.map +1 -1
  111. package/build/circular-option-picker/circular-option-picker-context.js +1 -2
  112. package/build/circular-option-picker/circular-option-picker-context.js.map +1 -1
  113. package/build/circular-option-picker/circular-option-picker.js +1 -2
  114. package/build/circular-option-picker/circular-option-picker.js.map +1 -1
  115. package/build/circular-option-picker/index.js +1 -2
  116. package/build/circular-option-picker/index.js.map +1 -1
  117. package/build/color-control/index.native.js +1 -2
  118. package/build/color-control/index.native.js.map +1 -1
  119. package/build/color-indicator/index.js +2 -4
  120. package/build/color-indicator/index.js.map +1 -1
  121. package/build/color-indicator/index.native.js +1 -2
  122. package/build/color-indicator/index.native.js.map +1 -1
  123. package/build/color-palette/index.js +2 -4
  124. package/build/color-palette/index.js.map +1 -1
  125. package/build/color-palette/index.native.js +1 -2
  126. package/build/color-palette/index.native.js.map +1 -1
  127. package/build/color-palette/styles.js +1 -2
  128. package/build/color-palette/styles.js.map +1 -1
  129. package/build/color-picker/component.js +2 -4
  130. package/build/color-picker/component.js.map +1 -1
  131. package/build/color-picker/hsv-color-picker.native.js +1 -2
  132. package/build/color-picker/hsv-color-picker.native.js.map +1 -1
  133. package/build/color-picker/hue-picker.native.js +2 -2
  134. package/build/color-picker/hue-picker.native.js.map +1 -1
  135. package/build/color-picker/saturation-picker.native.js +2 -2
  136. package/build/color-picker/saturation-picker.native.js.map +1 -1
  137. package/build/color-picker/styles.js +8 -16
  138. package/build/color-picker/styles.js.map +1 -1
  139. package/build/combobox-control/index.js +2 -3
  140. package/build/combobox-control/index.js.map +1 -1
  141. package/build/combobox-control/styles.js +1 -2
  142. package/build/combobox-control/styles.js.map +1 -1
  143. package/build/composite/current/index.js +43 -0
  144. package/build/composite/current/index.js.map +1 -0
  145. package/build/composite/index.js +10 -24
  146. package/build/composite/index.js.map +1 -1
  147. package/build/composite/legacy/index.js +127 -0
  148. package/build/composite/legacy/index.js.map +1 -0
  149. package/build/composite/v2.js +10 -36
  150. package/build/composite/v2.js.map +1 -1
  151. package/build/confirm-dialog/component.js +6 -6
  152. package/build/confirm-dialog/component.js.map +1 -1
  153. package/build/confirm-dialog/styles.js +1 -2
  154. package/build/confirm-dialog/styles.js.map +1 -1
  155. package/build/context/constants.js +3 -6
  156. package/build/context/constants.js.map +1 -1
  157. package/build/context/context-system-provider.js +2 -4
  158. package/build/context/context-system-provider.js.map +1 -1
  159. package/build/context/get-styled-class-name-from-key.js +1 -2
  160. package/build/context/get-styled-class-name-from-key.js.map +1 -1
  161. package/build/context/wordpress-component.js.map +1 -1
  162. package/build/custom-gradient-picker/constants.js +5 -10
  163. package/build/custom-gradient-picker/constants.js.map +1 -1
  164. package/build/custom-gradient-picker/gradient-bar/constants.js +7 -14
  165. package/build/custom-gradient-picker/gradient-bar/constants.js.map +1 -1
  166. package/build/custom-gradient-picker/gradient-bar/control-points.js +1 -2
  167. package/build/custom-gradient-picker/gradient-bar/control-points.js.map +1 -1
  168. package/build/custom-gradient-picker/index.js +2 -17
  169. package/build/custom-gradient-picker/index.js.map +1 -1
  170. package/build/custom-gradient-picker/index.native.js +1 -2
  171. package/build/custom-gradient-picker/index.native.js.map +1 -1
  172. package/build/custom-gradient-picker/styles/custom-gradient-picker-styles.js +2 -4
  173. package/build/custom-gradient-picker/styles/custom-gradient-picker-styles.js.map +1 -1
  174. package/build/custom-gradient-picker/types.js.map +1 -1
  175. package/build/custom-select-control/index.js +1 -1
  176. package/build/custom-select-control/index.js.map +1 -1
  177. package/build/custom-select-control/styles.js +1 -2
  178. package/build/custom-select-control/styles.js.map +1 -1
  179. package/build/custom-select-control-v2/index.js +6 -5
  180. package/build/custom-select-control-v2/index.js.map +1 -1
  181. package/build/custom-select-control-v2/styles.js +6 -10
  182. package/build/custom-select-control-v2/styles.js.map +1 -1
  183. package/build/dashicon/index.js +1 -2
  184. package/build/dashicon/index.js.map +1 -1
  185. package/build/dashicon/index.native.js +3 -4
  186. package/build/dashicon/index.native.js.map +1 -1
  187. package/build/date-time/constants.js +1 -2
  188. package/build/date-time/constants.js.map +1 -1
  189. package/build/date-time/date/index.js +1 -2
  190. package/build/date-time/date/index.js.map +1 -1
  191. package/build/date-time/date/styles.js +6 -12
  192. package/build/date-time/date/styles.js.map +1 -1
  193. package/build/date-time/date-time/index.js +2 -4
  194. package/build/date-time/date-time/index.js.map +1 -1
  195. package/build/date-time/date-time/styles.js +1 -2
  196. package/build/date-time/date-time/styles.js.map +1 -1
  197. package/build/date-time/index.js +1 -2
  198. package/build/date-time/index.js.map +1 -1
  199. package/build/date-time/time/index.js +1 -2
  200. package/build/date-time/time/index.js.map +1 -1
  201. package/build/date-time/time/styles.js +10 -20
  202. package/build/date-time/time/styles.js.map +1 -1
  203. package/build/date-time/time/timezone.js +2 -3
  204. package/build/date-time/time/timezone.js.map +1 -1
  205. package/build/dimension-control/index.js +3 -4
  206. package/build/dimension-control/index.js.map +1 -1
  207. package/build/dimension-control/sizes.js +1 -2
  208. package/build/dimension-control/sizes.js.map +1 -1
  209. package/build/disabled/index.js +1 -2
  210. package/build/disabled/index.js.map +1 -1
  211. package/build/disabled/index.native.js +1 -2
  212. package/build/disabled/index.native.js.map +1 -1
  213. package/build/disabled/styles/disabled-styles.js +1 -2
  214. package/build/disabled/styles/disabled-styles.js.map +1 -1
  215. package/build/disclosure/index.js +4 -6
  216. package/build/disclosure/index.js.map +1 -1
  217. package/build/divider/component.js +4 -6
  218. package/build/divider/component.js.map +1 -1
  219. package/build/divider/styles.js +1 -2
  220. package/build/divider/styles.js.map +1 -1
  221. package/build/draggable/index.js +1 -2
  222. package/build/draggable/index.js.map +1 -1
  223. package/build/draggable/index.native.js +3 -4
  224. package/build/draggable/index.native.js.map +1 -1
  225. package/build/drop-zone/index.js +1 -2
  226. package/build/drop-zone/index.js.map +1 -1
  227. package/build/dropdown/dropdown-content-wrapper.js +2 -4
  228. package/build/dropdown/dropdown-content-wrapper.js.map +1 -1
  229. package/build/dropdown/index.js +2 -4
  230. package/build/dropdown/index.js.map +1 -1
  231. package/build/dropdown/index.native.js +1 -2
  232. package/build/dropdown/index.native.js.map +1 -1
  233. package/build/dropdown/styles.js +1 -2
  234. package/build/dropdown/styles.js.map +1 -1
  235. package/build/dropdown-menu/index.js +2 -4
  236. package/build/dropdown-menu/index.js.map +1 -1
  237. package/build/dropdown-menu/index.native.js +1 -2
  238. package/build/dropdown-menu/index.native.js.map +1 -1
  239. package/build/dropdown-menu-v2/index.js +11 -20
  240. package/build/dropdown-menu-v2/index.js.map +1 -1
  241. package/build/dropdown-menu-v2/styles.js +29 -42
  242. package/build/dropdown-menu-v2/styles.js.map +1 -1
  243. package/build/duotone-picker/color-list-picker/index.js +1 -2
  244. package/build/duotone-picker/color-list-picker/index.js.map +1 -1
  245. package/build/duotone-picker/duotone-picker.js +1 -2
  246. package/build/duotone-picker/duotone-picker.js.map +1 -1
  247. package/build/duotone-picker/duotone-swatch.js +1 -2
  248. package/build/duotone-picker/duotone-swatch.js.map +1 -1
  249. package/build/elevation/component.js +2 -4
  250. package/build/elevation/component.js.map +1 -1
  251. package/build/elevation/hook.js +2 -2
  252. package/build/elevation/hook.js.map +1 -1
  253. package/build/elevation/styles.js +1 -2
  254. package/build/elevation/styles.js.map +1 -1
  255. package/build/external-link/index.js +3 -5
  256. package/build/external-link/index.js.map +1 -1
  257. package/build/external-link/index.native.js +1 -2
  258. package/build/external-link/index.native.js.map +1 -1
  259. package/build/external-link/styles/external-link-styles.js +1 -2
  260. package/build/external-link/styles/external-link-styles.js.map +1 -1
  261. package/build/flex/context.js +1 -2
  262. package/build/flex/context.js.map +1 -1
  263. package/build/flex/flex/component.js +2 -4
  264. package/build/flex/flex/component.js.map +1 -1
  265. package/build/flex/flex/hook.js +2 -2
  266. package/build/flex/flex/hook.js.map +1 -1
  267. package/build/flex/flex-block/component.js +2 -4
  268. package/build/flex/flex-block/component.js.map +1 -1
  269. package/build/flex/flex-item/component.js +2 -4
  270. package/build/flex/flex-item/component.js.map +1 -1
  271. package/build/flex/flex-item/hook.js +2 -2
  272. package/build/flex/flex-item/hook.js.map +1 -1
  273. package/build/flex/index.js +2 -2
  274. package/build/flex/index.js.map +1 -1
  275. package/build/flex/styles.js +5 -10
  276. package/build/flex/styles.js.map +1 -1
  277. package/build/focal-point-picker/index.js +3 -4
  278. package/build/focal-point-picker/index.js.map +1 -1
  279. package/build/focal-point-picker/index.native.js +1 -3
  280. package/build/focal-point-picker/index.native.js.map +1 -1
  281. package/build/focal-point-picker/styles/focal-point-picker-style.js +37 -54
  282. package/build/focal-point-picker/styles/focal-point-picker-style.js.map +1 -1
  283. package/build/focal-point-picker/styles/focal-point-style.js +12 -4
  284. package/build/focal-point-picker/styles/focal-point-style.js.map +1 -1
  285. package/build/focal-point-picker/tooltip/index.native.js +1 -2
  286. package/build/focal-point-picker/tooltip/index.native.js.map +1 -1
  287. package/build/focal-point-picker/utils.js +1 -2
  288. package/build/focal-point-picker/utils.js.map +1 -1
  289. package/build/font-size-picker/constants.js +2 -4
  290. package/build/font-size-picker/constants.js.map +1 -1
  291. package/build/font-size-picker/font-size-picker-select.js +1 -2
  292. package/build/font-size-picker/font-size-picker-select.js.map +1 -1
  293. package/build/font-size-picker/font-size-picker-toggle-group.js +2 -4
  294. package/build/font-size-picker/font-size-picker-toggle-group.js.map +1 -1
  295. package/build/font-size-picker/index.js +6 -22
  296. package/build/font-size-picker/index.js.map +1 -1
  297. package/build/font-size-picker/index.native.js +3 -4
  298. package/build/font-size-picker/index.native.js.map +1 -1
  299. package/build/font-size-picker/styles.js +17 -29
  300. package/build/font-size-picker/styles.js.map +1 -1
  301. package/build/font-size-picker/types.js.map +1 -1
  302. package/build/footer-message-control/index.native.js +1 -2
  303. package/build/footer-message-control/index.native.js.map +1 -1
  304. package/build/form-file-upload/index.js +1 -2
  305. package/build/form-file-upload/index.js.map +1 -1
  306. package/build/form-toggle/index.js +1 -2
  307. package/build/form-toggle/index.js.map +1 -1
  308. package/build/form-token-field/index.js +2 -7
  309. package/build/form-token-field/index.js.map +1 -1
  310. package/build/form-token-field/styles.js +1 -2
  311. package/build/form-token-field/styles.js.map +1 -1
  312. package/build/form-token-field/suggestions-list.js +1 -2
  313. package/build/form-token-field/suggestions-list.js.map +1 -1
  314. package/build/form-token-field/token-input.js +2 -4
  315. package/build/form-token-field/token-input.js.map +1 -1
  316. package/build/gradient-picker/index.js +19 -43
  317. package/build/gradient-picker/index.js.map +1 -1
  318. package/build/gradient-picker/types.js.map +1 -1
  319. package/build/grid/component.js +2 -4
  320. package/build/grid/component.js.map +1 -1
  321. package/build/guide/index.js +1 -2
  322. package/build/guide/index.js.map +1 -1
  323. package/build/h-stack/component.js +2 -4
  324. package/build/h-stack/component.js.map +1 -1
  325. package/build/heading/component.js +2 -4
  326. package/build/heading/component.js.map +1 -1
  327. package/build/higher-order/navigate-regions/index.js +1 -2
  328. package/build/higher-order/navigate-regions/index.js.map +1 -1
  329. package/build/higher-order/with-constrained-tabbing/index.js +1 -2
  330. package/build/higher-order/with-constrained-tabbing/index.js.map +1 -1
  331. package/build/higher-order/with-focus-outside/index.js +1 -2
  332. package/build/higher-order/with-focus-outside/index.js.map +1 -1
  333. package/build/higher-order/with-focus-outside/index.native.js +1 -2
  334. package/build/higher-order/with-focus-outside/index.native.js.map +1 -1
  335. package/build/higher-order/with-focus-return/index.js +1 -2
  336. package/build/higher-order/with-focus-return/index.js.map +1 -1
  337. package/build/higher-order/with-notices/index.js +1 -2
  338. package/build/higher-order/with-notices/index.js.map +1 -1
  339. package/build/higher-order/with-spoken-messages/index.js +1 -2
  340. package/build/higher-order/with-spoken-messages/index.js.map +1 -1
  341. package/build/icon/index.js +1 -2
  342. package/build/icon/index.js.map +1 -1
  343. package/build/index.js +2 -2
  344. package/build/index.js.map +1 -1
  345. package/build/index.native.js +2 -2
  346. package/build/index.native.js.map +1 -1
  347. package/build/input-control/backdrop.js +3 -2
  348. package/build/input-control/backdrop.js.map +1 -1
  349. package/build/input-control/index.js +3 -5
  350. package/build/input-control/index.js.map +1 -1
  351. package/build/input-control/input-base.js +4 -3
  352. package/build/input-control/input-base.js.map +1 -1
  353. package/build/input-control/input-field.js +1 -2
  354. package/build/input-control/input-field.js.map +1 -1
  355. package/build/input-control/input-prefix-wrapper.js +2 -4
  356. package/build/input-control/input-prefix-wrapper.js.map +1 -1
  357. package/build/input-control/input-suffix-wrapper.js +2 -4
  358. package/build/input-control/input-suffix-wrapper.js.map +1 -1
  359. package/build/input-control/reducer/actions.js +11 -22
  360. package/build/input-control/reducer/actions.js.map +1 -1
  361. package/build/input-control/reducer/reducer.js +2 -2
  362. package/build/input-control/reducer/reducer.js.map +1 -1
  363. package/build/input-control/reducer/state.js +1 -2
  364. package/build/input-control/reducer/state.js.map +1 -1
  365. package/build/input-control/styles/input-control-styles.js +32 -37
  366. package/build/input-control/styles/input-control-styles.js.map +1 -1
  367. package/build/input-control/types.js.map +1 -1
  368. package/build/isolated-event-container/index.js +1 -2
  369. package/build/isolated-event-container/index.js.map +1 -1
  370. package/build/item-group/context.js +1 -2
  371. package/build/item-group/context.js.map +1 -1
  372. package/build/item-group/item/component.js +2 -4
  373. package/build/item-group/item/component.js.map +1 -1
  374. package/build/item-group/item/hook.js +2 -2
  375. package/build/item-group/item/hook.js.map +1 -1
  376. package/build/item-group/item-group/component.js +2 -4
  377. package/build/item-group/item-group/component.js.map +1 -1
  378. package/build/item-group/item-group/hook.js +2 -2
  379. package/build/item-group/item-group/hook.js.map +1 -1
  380. package/build/item-group/styles.js +13 -20
  381. package/build/item-group/styles.js.map +1 -1
  382. package/build/keyboard-shortcuts/index.js +1 -2
  383. package/build/keyboard-shortcuts/index.js.map +1 -1
  384. package/build/keyboard-shortcuts/index.native.js +1 -2
  385. package/build/keyboard-shortcuts/index.native.js.map +1 -1
  386. package/build/menu-group/index.js +1 -2
  387. package/build/menu-group/index.js.map +1 -1
  388. package/build/menu-item/index.js +2 -4
  389. package/build/menu-item/index.js.map +1 -1
  390. package/build/menu-items-choice/index.js +1 -2
  391. package/build/menu-items-choice/index.js.map +1 -1
  392. package/build/mobile/audio-player/index.native.js +1 -2
  393. package/build/mobile/audio-player/index.native.js.map +1 -1
  394. package/build/mobile/badge/index.native.js +1 -2
  395. package/build/mobile/badge/index.native.js.map +1 -1
  396. package/build/mobile/bottom-sheet/bottom-sheet-context.native.js +1 -2
  397. package/build/mobile/bottom-sheet/bottom-sheet-context.native.js.map +1 -1
  398. package/build/mobile/bottom-sheet/bottom-sheet-navigation/bottom-sheet-navigation-context.native.js +1 -2
  399. package/build/mobile/bottom-sheet/bottom-sheet-navigation/bottom-sheet-navigation-context.native.js.map +1 -1
  400. package/build/mobile/bottom-sheet/bottom-sheet-navigation/navigation-container.native.js +3 -4
  401. package/build/mobile/bottom-sheet/bottom-sheet-navigation/navigation-container.native.js.map +1 -1
  402. package/build/mobile/bottom-sheet/bottom-sheet-navigation/navigation-screen.native.js +1 -2
  403. package/build/mobile/bottom-sheet/bottom-sheet-navigation/navigation-screen.native.js.map +1 -1
  404. package/build/mobile/bottom-sheet/button.native.js +1 -2
  405. package/build/mobile/bottom-sheet/button.native.js.map +1 -1
  406. package/build/mobile/bottom-sheet/cell.native.js +1 -2
  407. package/build/mobile/bottom-sheet/cell.native.js.map +1 -1
  408. package/build/mobile/bottom-sheet/chevron-back.native.js +1 -2
  409. package/build/mobile/bottom-sheet/chevron-back.native.js.map +1 -1
  410. package/build/mobile/bottom-sheet/footer-message-cell.native.js +1 -2
  411. package/build/mobile/bottom-sheet/footer-message-cell.native.js.map +1 -1
  412. package/build/mobile/bottom-sheet/footer-message-link/footer-message-link.native.js +1 -2
  413. package/build/mobile/bottom-sheet/footer-message-link/footer-message-link.native.js.map +1 -1
  414. package/build/mobile/bottom-sheet/index.native.js +1 -2
  415. package/build/mobile/bottom-sheet/index.native.js.map +1 -1
  416. package/build/mobile/bottom-sheet/keyboard-avoiding-view.native.js +1 -2
  417. package/build/mobile/bottom-sheet/keyboard-avoiding-view.native.js.map +1 -1
  418. package/build/mobile/bottom-sheet/link-suggestion-item-cell.native.js +1 -2
  419. package/build/mobile/bottom-sheet/link-suggestion-item-cell.native.js.map +1 -1
  420. package/build/mobile/bottom-sheet/nav-bar/action-button.native.js +1 -2
  421. package/build/mobile/bottom-sheet/nav-bar/action-button.native.js.map +1 -1
  422. package/build/mobile/bottom-sheet/nav-bar/apply-button.native.js +1 -2
  423. package/build/mobile/bottom-sheet/nav-bar/apply-button.native.js.map +1 -1
  424. package/build/mobile/bottom-sheet/nav-bar/back-button.native.js +1 -2
  425. package/build/mobile/bottom-sheet/nav-bar/back-button.native.js.map +1 -1
  426. package/build/mobile/bottom-sheet/nav-bar/heading.native.js +1 -2
  427. package/build/mobile/bottom-sheet/nav-bar/heading.native.js.map +1 -1
  428. package/build/mobile/bottom-sheet/nav-bar/index.native.js +1 -2
  429. package/build/mobile/bottom-sheet/nav-bar/index.native.js.map +1 -1
  430. package/build/mobile/bottom-sheet/range-cell.native.js +1 -2
  431. package/build/mobile/bottom-sheet/range-cell.native.js.map +1 -1
  432. package/build/mobile/bottom-sheet/range-text-input.native.js +1 -2
  433. package/build/mobile/bottom-sheet/range-text-input.native.js.map +1 -1
  434. package/build/mobile/bottom-sheet/ripple.native.js +1 -2
  435. package/build/mobile/bottom-sheet/ripple.native.js.map +1 -1
  436. package/build/mobile/bottom-sheet/stepper-cell/index.native.js +1 -2
  437. package/build/mobile/bottom-sheet/stepper-cell/index.native.js.map +1 -1
  438. package/build/mobile/bottom-sheet/stepper-cell/stepper.android.js +1 -2
  439. package/build/mobile/bottom-sheet/stepper-cell/stepper.android.js.map +1 -1
  440. package/build/mobile/bottom-sheet/stepper-cell/stepper.ios.js +1 -2
  441. package/build/mobile/bottom-sheet/stepper-cell/stepper.ios.js.map +1 -1
  442. package/build/mobile/bottom-sheet/sub-sheet/index.native.js +1 -2
  443. package/build/mobile/bottom-sheet/sub-sheet/index.native.js.map +1 -1
  444. package/build/mobile/bottom-sheet-select-control/index.native.js +1 -2
  445. package/build/mobile/bottom-sheet-select-control/index.native.js.map +1 -1
  446. package/build/mobile/bottom-sheet-text-control/index.native.js +1 -2
  447. package/build/mobile/bottom-sheet-text-control/index.native.js.map +1 -1
  448. package/build/mobile/color-settings/gradient-picker-screen.native.js +1 -2
  449. package/build/mobile/color-settings/gradient-picker-screen.native.js.map +1 -1
  450. package/build/mobile/color-settings/index.native.js +1 -2
  451. package/build/mobile/color-settings/index.native.js.map +1 -1
  452. package/build/mobile/color-settings/palette.screen.native.js +1 -2
  453. package/build/mobile/color-settings/palette.screen.native.js.map +1 -1
  454. package/build/mobile/color-settings/picker-screen.native.js +1 -2
  455. package/build/mobile/color-settings/picker-screen.native.js.map +1 -1
  456. package/build/mobile/color-settings/utils.native.js +1 -2
  457. package/build/mobile/color-settings/utils.native.js.map +1 -1
  458. package/build/mobile/cycle-select-control/index.native.js +1 -2
  459. package/build/mobile/cycle-select-control/index.native.js.map +1 -1
  460. package/build/mobile/dashicons/index.native.js +3 -6
  461. package/build/mobile/dashicons/index.native.js.map +1 -1
  462. package/build/mobile/focal-point-settings-panel/index.native.js +1 -2
  463. package/build/mobile/focal-point-settings-panel/index.native.js.map +1 -1
  464. package/build/mobile/global-styles-context/index.native.js +1 -2
  465. package/build/mobile/global-styles-context/index.native.js.map +1 -1
  466. package/build/mobile/global-styles-context/utils.native.js +1 -2
  467. package/build/mobile/global-styles-context/utils.native.js.map +1 -1
  468. package/build/mobile/gradient/index.native.js +1 -2
  469. package/build/mobile/gradient/index.native.js.map +1 -1
  470. package/build/mobile/gridicons/index.native.js +8 -16
  471. package/build/mobile/gridicons/index.native.js.map +1 -1
  472. package/build/mobile/html-text-input/index.native.js +1 -2
  473. package/build/mobile/html-text-input/index.native.js.map +1 -1
  474. package/build/mobile/image/constants.js +1 -2
  475. package/build/mobile/image/constants.js.map +1 -1
  476. package/build/mobile/image/icon-customize.native.js +1 -2
  477. package/build/mobile/image/icon-customize.native.js.map +1 -1
  478. package/build/mobile/image/icon-retry.native.js +1 -2
  479. package/build/mobile/image/icon-retry.native.js.map +1 -1
  480. package/build/mobile/image/image-editing-button.native.js +1 -2
  481. package/build/mobile/image/image-editing-button.native.js.map +1 -1
  482. package/build/mobile/image/index.native.js +81 -7
  483. package/build/mobile/image/index.native.js.map +1 -1
  484. package/build/mobile/keyboard-avoiding-view/index.android.js +2 -4
  485. package/build/mobile/keyboard-avoiding-view/index.android.js.map +1 -1
  486. package/build/mobile/keyboard-avoiding-view/index.ios.js +1 -2
  487. package/build/mobile/keyboard-avoiding-view/index.ios.js.map +1 -1
  488. package/build/mobile/keyboard-aware-flat-list/index.android.js +1 -2
  489. package/build/mobile/keyboard-aware-flat-list/index.android.js.map +1 -1
  490. package/build/mobile/keyboard-aware-flat-list/index.ios.js +1 -2
  491. package/build/mobile/keyboard-aware-flat-list/index.ios.js.map +1 -1
  492. package/build/mobile/link-picker/link-picker-screen.native.js +1 -2
  493. package/build/mobile/link-picker/link-picker-screen.native.js.map +1 -1
  494. package/build/mobile/link-settings/index.native.js +1 -2
  495. package/build/mobile/link-settings/index.native.js.map +1 -1
  496. package/build/mobile/link-settings/link-rel.native.js +1 -2
  497. package/build/mobile/link-settings/link-rel.native.js.map +1 -1
  498. package/build/mobile/link-settings/link-settings-navigation.native.js +1 -2
  499. package/build/mobile/link-settings/link-settings-navigation.native.js.map +1 -1
  500. package/build/mobile/link-settings/link-settings-screen.native.js +1 -2
  501. package/build/mobile/link-settings/link-settings-screen.native.js.map +1 -1
  502. package/build/mobile/media-edit/index.native.js +3 -6
  503. package/build/mobile/media-edit/index.native.js.map +1 -1
  504. package/build/mobile/picker/index.ios.js +1 -2
  505. package/build/mobile/picker/index.ios.js.map +1 -1
  506. package/build/mobile/segmented-control/index.native.js +1 -2
  507. package/build/mobile/segmented-control/index.native.js.map +1 -1
  508. package/build/mobile/utils/alignments.native.js +3 -6
  509. package/build/mobile/utils/alignments.native.js.map +1 -1
  510. package/build/mobile/utils/get-px-from-css-unit.native.js +1 -2
  511. package/build/mobile/utils/get-px-from-css-unit.native.js.map +1 -1
  512. package/build/modal/index.js +4 -6
  513. package/build/modal/index.js.map +1 -1
  514. package/build/navigable-container/container.js +1 -2
  515. package/build/navigable-container/container.js.map +1 -1
  516. package/build/navigable-container/menu.js +2 -4
  517. package/build/navigable-container/menu.js.map +1 -1
  518. package/build/navigable-container/tabbable.js +2 -4
  519. package/build/navigable-container/tabbable.js.map +1 -1
  520. package/build/navigation/back-button/index.js +2 -4
  521. package/build/navigation/back-button/index.js.map +1 -1
  522. package/build/navigation/constants.js +2 -4
  523. package/build/navigation/constants.js.map +1 -1
  524. package/build/navigation/context.js +1 -2
  525. package/build/navigation/context.js.map +1 -1
  526. package/build/navigation/group/context.js +1 -2
  527. package/build/navigation/group/context.js.map +1 -1
  528. package/build/navigation/group/index.js +1 -2
  529. package/build/navigation/group/index.js.map +1 -1
  530. package/build/navigation/index.js +1 -2
  531. package/build/navigation/index.js.map +1 -1
  532. package/build/navigation/item/index.js +1 -2
  533. package/build/navigation/item/index.js.map +1 -1
  534. package/build/navigation/menu/context.js +1 -2
  535. package/build/navigation/menu/context.js.map +1 -1
  536. package/build/navigation/menu/index.js +1 -2
  537. package/build/navigation/menu/index.js.map +1 -1
  538. package/build/navigation/menu/menu-title-search.js +5 -8
  539. package/build/navigation/menu/menu-title-search.js.map +1 -1
  540. package/build/navigation/styles/navigation-styles.js +34 -47
  541. package/build/navigation/styles/navigation-styles.js.map +1 -1
  542. package/build/navigator/context.js +1 -2
  543. package/build/navigator/context.js.map +1 -1
  544. package/build/navigator/navigator-back-button/component.js +2 -4
  545. package/build/navigator/navigator-back-button/component.js.map +1 -1
  546. package/build/navigator/navigator-button/component.js +2 -4
  547. package/build/navigator/navigator-button/component.js.map +1 -1
  548. package/build/navigator/navigator-provider/component.js +4 -6
  549. package/build/navigator/navigator-provider/component.js.map +1 -1
  550. package/build/navigator/navigator-screen/component.js +4 -6
  551. package/build/navigator/navigator-screen/component.js.map +1 -1
  552. package/build/navigator/navigator-to-parent-button/component.js +2 -4
  553. package/build/navigator/navigator-to-parent-button/component.js.map +1 -1
  554. package/build/navigator/styles.js +1 -2
  555. package/build/navigator/styles.js.map +1 -1
  556. package/build/navigator/use-navigator.js +1 -2
  557. package/build/navigator/use-navigator.js.map +1 -1
  558. package/build/notice/index.js +1 -2
  559. package/build/notice/index.js.map +1 -1
  560. package/build/notice/index.native.js +1 -2
  561. package/build/notice/index.native.js.map +1 -1
  562. package/build/notice/list.js +1 -2
  563. package/build/notice/list.js.map +1 -1
  564. package/build/notice/list.native.js +1 -2
  565. package/build/notice/list.native.js.map +1 -1
  566. package/build/number-control/index.js +5 -7
  567. package/build/number-control/index.js.map +1 -1
  568. package/build/number-control/styles/number-control-styles.js +3 -6
  569. package/build/number-control/styles/number-control-styles.js.map +1 -1
  570. package/build/palette-edit/index.js +11 -17
  571. package/build/palette-edit/index.js.map +1 -1
  572. package/build/palette-edit/styles.js +50 -51
  573. package/build/palette-edit/styles.js.map +1 -1
  574. package/build/panel/actions.native.js +1 -2
  575. package/build/panel/actions.native.js.map +1 -1
  576. package/build/panel/body.js +2 -4
  577. package/build/panel/body.js.map +1 -1
  578. package/build/panel/body.native.js +1 -2
  579. package/build/panel/body.native.js.map +1 -1
  580. package/build/panel/bottom-separator-cover.native.js +1 -2
  581. package/build/panel/bottom-separator-cover.native.js.map +1 -1
  582. package/build/panel/header.js +1 -2
  583. package/build/panel/header.js.map +1 -1
  584. package/build/panel/index.js +2 -4
  585. package/build/panel/index.js.map +1 -1
  586. package/build/panel/row.js +2 -4
  587. package/build/panel/row.js.map +1 -1
  588. package/build/placeholder/index.js +1 -2
  589. package/build/placeholder/index.js.map +1 -1
  590. package/build/popover/index.js +5 -6
  591. package/build/popover/index.js.map +1 -1
  592. package/build/popover/types.js.map +1 -1
  593. package/build/private-apis.js +1 -2
  594. package/build/private-apis.js.map +1 -1
  595. package/build/private-apis.native.js +1 -2
  596. package/build/private-apis.native.js.map +1 -1
  597. package/build/progress-bar/index.js +4 -6
  598. package/build/progress-bar/index.js.map +1 -1
  599. package/build/progress-bar/styles.js +4 -8
  600. package/build/progress-bar/styles.js.map +1 -1
  601. package/build/query-controls/index.js +5 -6
  602. package/build/query-controls/index.js.map +1 -1
  603. package/build/query-controls/index.native.js +4 -5
  604. package/build/query-controls/index.native.js.map +1 -1
  605. package/build/radio-control/index.js +1 -2
  606. package/build/radio-control/index.js.map +1 -1
  607. package/build/radio-control/index.native.js +1 -2
  608. package/build/radio-control/index.native.js.map +1 -1
  609. package/build/radio-group/context.js +1 -2
  610. package/build/radio-group/context.js.map +1 -1
  611. package/build/radio-group/index.js +4 -6
  612. package/build/radio-group/index.js.map +1 -1
  613. package/build/radio-group/radio.js +4 -6
  614. package/build/radio-group/radio.js.map +1 -1
  615. package/build/range-control/index.js +2 -4
  616. package/build/range-control/index.js.map +1 -1
  617. package/build/range-control/index.native.js +1 -2
  618. package/build/range-control/index.native.js.map +1 -1
  619. package/build/range-control/input-range.js +1 -2
  620. package/build/range-control/input-range.js.map +1 -1
  621. package/build/range-control/styles/range-control-styles.js +15 -30
  622. package/build/range-control/styles/range-control-styles.js.map +1 -1
  623. package/build/resizable-box/index.js +2 -4
  624. package/build/resizable-box/index.js.map +1 -1
  625. package/build/resizable-box/index.native.js +1 -2
  626. package/build/resizable-box/index.native.js.map +1 -1
  627. package/build/resizable-box/resize-tooltip/index.js +1 -2
  628. package/build/resizable-box/resize-tooltip/index.js.map +1 -1
  629. package/build/resizable-box/resize-tooltip/label.js +1 -2
  630. package/build/resizable-box/resize-tooltip/label.js.map +1 -1
  631. package/build/resizable-box/resize-tooltip/styles/resize-tooltip.styles.js +9 -12
  632. package/build/resizable-box/resize-tooltip/styles/resize-tooltip.styles.js.map +1 -1
  633. package/build/resizable-box/resize-tooltip/utils.js +1 -2
  634. package/build/resizable-box/resize-tooltip/utils.js.map +1 -1
  635. package/build/responsive-wrapper/index.js +1 -2
  636. package/build/responsive-wrapper/index.js.map +1 -1
  637. package/build/sandbox/index.js +1 -2
  638. package/build/sandbox/index.js.map +1 -1
  639. package/build/sandbox/index.native.js +1 -2
  640. package/build/sandbox/index.native.js.map +1 -1
  641. package/build/scroll-lock/index.js +1 -2
  642. package/build/scroll-lock/index.js.map +1 -1
  643. package/build/scrollable/component.js +2 -4
  644. package/build/scrollable/component.js.map +1 -1
  645. package/build/scrollable/hook.js +2 -2
  646. package/build/scrollable/hook.js.map +1 -1
  647. package/build/scrollable/styles.js +7 -14
  648. package/build/scrollable/styles.js.map +1 -1
  649. package/build/search-control/index.js +68 -60
  650. package/build/search-control/index.js.map +1 -1
  651. package/build/search-control/index.native.js +1 -2
  652. package/build/search-control/index.native.js.map +1 -1
  653. package/build/search-control/styles.js +37 -0
  654. package/build/search-control/styles.js.map +1 -0
  655. package/build/search-control/types.js.map +1 -1
  656. package/build/select-control/chevron-down.js +1 -2
  657. package/build/select-control/chevron-down.js.map +1 -1
  658. package/build/select-control/index.js +3 -5
  659. package/build/select-control/index.js.map +1 -1
  660. package/build/select-control/index.native.js +2 -4
  661. package/build/select-control/index.native.js.map +1 -1
  662. package/build/select-control/styles/select-control-styles.js +4 -8
  663. package/build/select-control/styles/select-control-styles.js.map +1 -1
  664. package/build/shortcut/index.js +1 -2
  665. package/build/shortcut/index.js.map +1 -1
  666. package/build/slot-fill/bubbles-virtually/slot-fill-context.js +1 -2
  667. package/build/slot-fill/bubbles-virtually/slot-fill-context.js.map +1 -1
  668. package/build/slot-fill/bubbles-virtually/slot.js +1 -2
  669. package/build/slot-fill/bubbles-virtually/slot.js.map +1 -1
  670. package/build/slot-fill/context.js +2 -4
  671. package/build/slot-fill/context.js.map +1 -1
  672. package/build/slot-fill/index.js +1 -2
  673. package/build/slot-fill/index.js.map +1 -1
  674. package/build/slot-fill/provider.js +1 -2
  675. package/build/slot-fill/provider.js.map +1 -1
  676. package/build/slot-fill/slot.js +1 -2
  677. package/build/slot-fill/slot.js.map +1 -1
  678. package/build/slot-fill/use-slot.js +1 -2
  679. package/build/slot-fill/use-slot.js.map +1 -1
  680. package/build/snackbar/index.js +19 -9
  681. package/build/snackbar/index.js.map +1 -1
  682. package/build/snackbar/list.js +1 -2
  683. package/build/snackbar/list.js.map +1 -1
  684. package/build/spacer/component.js +2 -4
  685. package/build/spacer/component.js.map +1 -1
  686. package/build/spinner/index.js +2 -4
  687. package/build/spinner/index.js.map +1 -1
  688. package/build/spinner/styles.js +3 -6
  689. package/build/spinner/styles.js.map +1 -1
  690. package/build/style-provider/index.js +3 -4
  691. package/build/style-provider/index.js.map +1 -1
  692. package/build/surface/component.js +2 -4
  693. package/build/surface/component.js.map +1 -1
  694. package/build/surface/hook.js +2 -2
  695. package/build/surface/hook.js.map +1 -1
  696. package/build/surface/styles.js +5 -10
  697. package/build/surface/styles.js.map +1 -1
  698. package/build/tab-panel/index.js +4 -6
  699. package/build/tab-panel/index.js.map +1 -1
  700. package/build/tabs/context.js +1 -2
  701. package/build/tabs/context.js.map +1 -1
  702. package/build/tabs/index.js +23 -20
  703. package/build/tabs/index.js.map +1 -1
  704. package/build/tabs/styles.js +5 -8
  705. package/build/tabs/styles.js.map +1 -1
  706. package/build/tabs/tab.js +1 -2
  707. package/build/tabs/tab.js.map +1 -1
  708. package/build/tabs/tablist.js +25 -4
  709. package/build/tabs/tablist.js.map +1 -1
  710. package/build/tabs/tabpanel.js +1 -2
  711. package/build/tabs/tabpanel.js.map +1 -1
  712. package/build/text/component.js +2 -4
  713. package/build/text/component.js.map +1 -1
  714. package/build/text/hook.js +2 -2
  715. package/build/text/hook.js.map +1 -1
  716. package/build/text/index.native.js +1 -2
  717. package/build/text/index.native.js.map +1 -1
  718. package/build/text/styles/emotion-css.native.js +1 -2
  719. package/build/text/styles/emotion-css.native.js.map +1 -1
  720. package/build/text/styles/font-family.native.js +1 -2
  721. package/build/text/styles/font-family.native.js.map +1 -1
  722. package/build/text/styles.js +7 -14
  723. package/build/text/styles.js.map +1 -1
  724. package/build/text-control/index.js +2 -4
  725. package/build/text-control/index.js.map +1 -1
  726. package/build/text-control/index.native.js +1 -2
  727. package/build/text-control/index.native.js.map +1 -1
  728. package/build/text-highlight/index.js +1 -2
  729. package/build/text-highlight/index.js.map +1 -1
  730. package/build/textarea-control/index.js +2 -4
  731. package/build/textarea-control/index.js.map +1 -1
  732. package/build/textarea-control/index.native.js +1 -2
  733. package/build/textarea-control/index.native.js.map +1 -1
  734. package/build/textarea-control/styles/textarea-control-styles.js +1 -2
  735. package/build/textarea-control/styles/textarea-control-styles.js.map +1 -1
  736. package/build/theme/index.js +1 -2
  737. package/build/theme/index.js.map +1 -1
  738. package/build/theme/styles.js +1 -2
  739. package/build/theme/styles.js.map +1 -1
  740. package/build/tip/index.js +1 -2
  741. package/build/tip/index.js.map +1 -1
  742. package/build/toggle-control/index.js +1 -2
  743. package/build/toggle-control/index.js.map +1 -1
  744. package/build/toggle-control/index.native.js +1 -2
  745. package/build/toggle-control/index.native.js.map +1 -1
  746. package/build/toggle-group-control/context.js +1 -2
  747. package/build/toggle-group-control/context.js.map +1 -1
  748. package/build/toggle-group-control/toggle-group-control/as-button-group.js +1 -2
  749. package/build/toggle-group-control/toggle-group-control/as-button-group.js.map +1 -1
  750. package/build/toggle-group-control/toggle-group-control/as-radio-group.js +3 -4
  751. package/build/toggle-group-control/toggle-group-control/as-radio-group.js.map +1 -1
  752. package/build/toggle-group-control/toggle-group-control/component.js +7 -8
  753. package/build/toggle-group-control/toggle-group-control/component.js.map +1 -1
  754. package/build/toggle-group-control/toggle-group-control/styles.js +2 -4
  755. package/build/toggle-group-control/toggle-group-control/styles.js.map +1 -1
  756. package/build/toggle-group-control/toggle-group-control-option/component.js +2 -4
  757. package/build/toggle-group-control/toggle-group-control-option/component.js.map +1 -1
  758. package/build/toggle-group-control/toggle-group-control-option-base/component.js +3 -4
  759. package/build/toggle-group-control/toggle-group-control-option-base/component.js.map +1 -1
  760. package/build/toggle-group-control/toggle-group-control-option-base/styles.js +4 -8
  761. package/build/toggle-group-control/toggle-group-control-option-base/styles.js.map +1 -1
  762. package/build/toggle-group-control/toggle-group-control-option-icon/component.js +2 -4
  763. package/build/toggle-group-control/toggle-group-control-option-icon/component.js.map +1 -1
  764. package/build/toolbar/toolbar/index.js +2 -4
  765. package/build/toolbar/toolbar/index.js.map +1 -1
  766. package/build/toolbar/toolbar/toolbar-container.js +4 -6
  767. package/build/toolbar/toolbar/toolbar-container.js.map +1 -1
  768. package/build/toolbar/toolbar/toolbar-container.native.js +1 -2
  769. package/build/toolbar/toolbar/toolbar-container.native.js.map +1 -1
  770. package/build/toolbar/toolbar-button/index.js +2 -4
  771. package/build/toolbar/toolbar-button/index.js.map +1 -1
  772. package/build/toolbar/toolbar-button/toolbar-button-container.js +1 -2
  773. package/build/toolbar/toolbar-button/toolbar-button-container.js.map +1 -1
  774. package/build/toolbar/toolbar-context/index.js +1 -2
  775. package/build/toolbar/toolbar-context/index.js.map +1 -1
  776. package/build/toolbar/toolbar-dropdown-menu/index.js +1 -2
  777. package/build/toolbar/toolbar-dropdown-menu/index.js.map +1 -1
  778. package/build/toolbar/toolbar-group/index.js +1 -2
  779. package/build/toolbar/toolbar-group/index.js.map +1 -1
  780. package/build/toolbar/toolbar-group/toolbar-group-collapsed.js +1 -2
  781. package/build/toolbar/toolbar-group/toolbar-group-collapsed.js.map +1 -1
  782. package/build/toolbar/toolbar-group/toolbar-group-collapsed.native.js +1 -2
  783. package/build/toolbar/toolbar-group/toolbar-group-collapsed.native.js.map +1 -1
  784. package/build/toolbar/toolbar-group/toolbar-group-container.js +1 -2
  785. package/build/toolbar/toolbar-group/toolbar-group-container.js.map +1 -1
  786. package/build/toolbar/toolbar-group/toolbar-group-container.native.js +1 -2
  787. package/build/toolbar/toolbar-group/toolbar-group-container.native.js.map +1 -1
  788. package/build/toolbar/toolbar-item/index.js +3 -4
  789. package/build/toolbar/toolbar-item/index.js.map +1 -1
  790. package/build/toolbar/toolbar-item/index.native.js +1 -2
  791. package/build/toolbar/toolbar-item/index.native.js.map +1 -1
  792. package/build/tools-panel/context.js +1 -2
  793. package/build/tools-panel/context.js.map +1 -1
  794. package/build/tools-panel/styles.js +8 -16
  795. package/build/tools-panel/styles.js.map +1 -1
  796. package/build/tools-panel/tools-panel/component.js +2 -4
  797. package/build/tools-panel/tools-panel/component.js.map +1 -1
  798. package/build/tools-panel/tools-panel/hook.js +2 -2
  799. package/build/tools-panel/tools-panel/hook.js.map +1 -1
  800. package/build/tools-panel/tools-panel-header/component.js +1 -2
  801. package/build/tools-panel/tools-panel-header/component.js.map +1 -1
  802. package/build/tools-panel/tools-panel-header/hook.js +2 -2
  803. package/build/tools-panel/tools-panel-header/hook.js.map +1 -1
  804. package/build/tools-panel/tools-panel-item/component.js +2 -4
  805. package/build/tools-panel/tools-panel-item/component.js.map +1 -1
  806. package/build/tools-panel/tools-panel-item/hook.js +2 -2
  807. package/build/tools-panel/tools-panel-item/hook.js.map +1 -1
  808. package/build/tooltip/index.js +5 -8
  809. package/build/tooltip/index.js.map +1 -1
  810. package/build/tooltip/index.native.js +1 -2
  811. package/build/tooltip/index.native.js.map +1 -1
  812. package/build/tree-grid/cell.js +2 -4
  813. package/build/tree-grid/cell.js.map +1 -1
  814. package/build/tree-grid/index.js +2 -4
  815. package/build/tree-grid/index.js.map +1 -1
  816. package/build/tree-grid/item.js +2 -4
  817. package/build/tree-grid/item.js.map +1 -1
  818. package/build/tree-grid/roving-tab-index-context.js +1 -2
  819. package/build/tree-grid/roving-tab-index-context.js.map +1 -1
  820. package/build/tree-grid/roving-tab-index-item.js +2 -4
  821. package/build/tree-grid/roving-tab-index-item.js.map +1 -1
  822. package/build/tree-grid/row.js +2 -4
  823. package/build/tree-grid/row.js.map +1 -1
  824. package/build/tree-select/index.js +2 -3
  825. package/build/tree-select/index.js.map +1 -1
  826. package/build/truncate/component.js +2 -4
  827. package/build/truncate/component.js.map +1 -1
  828. package/build/truncate/hook.js +2 -2
  829. package/build/truncate/hook.js.map +1 -1
  830. package/build/truncate/styles.js +1 -2
  831. package/build/truncate/styles.js.map +1 -1
  832. package/build/truncate/utils.js +3 -6
  833. package/build/truncate/utils.js.map +1 -1
  834. package/build/unit-control/index.js +3 -5
  835. package/build/unit-control/index.js.map +1 -1
  836. package/build/unit-control/index.native.js +1 -2
  837. package/build/unit-control/index.native.js.map +1 -1
  838. package/build/unit-control/styles/unit-control-styles.js +3 -6
  839. package/build/unit-control/styles/unit-control-styles.js.map +1 -1
  840. package/build/unit-control/unit-select-control.js +1 -2
  841. package/build/unit-control/unit-select-control.js.map +1 -1
  842. package/build/unit-control/utils.js +3 -6
  843. package/build/unit-control/utils.js.map +1 -1
  844. package/build/utils/base-label.js +1 -2
  845. package/build/utils/base-label.js.map +1 -1
  846. package/build/utils/box-sizing.js +1 -2
  847. package/build/utils/box-sizing.js.map +1 -1
  848. package/build/utils/breakpoint-values.js +1 -2
  849. package/build/utils/breakpoint-values.js.map +1 -1
  850. package/build/utils/colors-values.js +44 -24
  851. package/build/utils/colors-values.js.map +1 -1
  852. package/build/utils/config-values.js +1 -2
  853. package/build/utils/config-values.js.map +1 -1
  854. package/build/utils/font-size.js +3 -6
  855. package/build/utils/font-size.js.map +1 -1
  856. package/build/utils/font-values.js +1 -2
  857. package/build/utils/font-values.js.map +1 -1
  858. package/build/utils/hooks/use-controlled-state.js +1 -2
  859. package/build/utils/hooks/use-controlled-state.js.map +1 -1
  860. package/build/utils/hooks/use-update-effect.js +2 -3
  861. package/build/utils/hooks/use-update-effect.js.map +1 -1
  862. package/build/utils/input/base.js +2 -4
  863. package/build/utils/input/base.js.map +1 -1
  864. package/build/utils/input/input-control.js +1 -2
  865. package/build/utils/input/input-control.js.map +1 -1
  866. package/build/utils/use-deprecated-props.js +1 -15
  867. package/build/utils/use-deprecated-props.js.map +1 -1
  868. package/build/utils/use-responsive-value.js +2 -3
  869. package/build/utils/use-responsive-value.js.map +1 -1
  870. package/build/v-stack/component.js +2 -4
  871. package/build/v-stack/component.js.map +1 -1
  872. package/build/view/component.js +2 -4
  873. package/build/view/component.js.map +1 -1
  874. package/build/visually-hidden/component.js +2 -4
  875. package/build/visually-hidden/component.js.map +1 -1
  876. package/build/visually-hidden/styles.js +1 -2
  877. package/build/visually-hidden/styles.js.map +1 -1
  878. package/build/z-stack/component.js +2 -4
  879. package/build/z-stack/component.js.map +1 -1
  880. package/build/z-stack/styles.js +2 -4
  881. package/build/z-stack/styles.js.map +1 -1
  882. package/build-module/angle-picker-control/index.js +3 -13
  883. package/build-module/angle-picker-control/index.js.map +1 -1
  884. package/build-module/angle-picker-control/styles/angle-picker-control-styles.js +5 -17
  885. package/build-module/angle-picker-control/styles/angle-picker-control-styles.js.map +1 -1
  886. package/build-module/angle-picker-control/types.js.map +1 -1
  887. package/build-module/button/index.native.js +0 -1
  888. package/build-module/button/index.native.js.map +1 -1
  889. package/build-module/checkbox-control/types.js.map +1 -1
  890. package/build-module/combobox-control/index.js +1 -2
  891. package/build-module/combobox-control/index.js.map +1 -1
  892. package/build-module/composite/current/index.js +15 -0
  893. package/build-module/composite/current/index.js.map +1 -0
  894. package/build-module/composite/index.js +6 -15
  895. package/build-module/composite/index.js.map +1 -1
  896. package/build-module/composite/legacy/index.js +117 -0
  897. package/build-module/composite/legacy/index.js.map +1 -0
  898. package/build-module/composite/v2.js +3 -13
  899. package/build-module/composite/v2.js.map +1 -1
  900. package/build-module/confirm-dialog/component.js +2 -0
  901. package/build-module/confirm-dialog/component.js.map +1 -1
  902. package/build-module/context/wordpress-component.js.map +1 -1
  903. package/build-module/custom-gradient-picker/index.js +2 -15
  904. package/build-module/custom-gradient-picker/index.js.map +1 -1
  905. package/build-module/custom-gradient-picker/types.js.map +1 -1
  906. package/build-module/custom-select-control/index.js +1 -1
  907. package/build-module/custom-select-control/index.js.map +1 -1
  908. package/build-module/custom-select-control-v2/index.js +3 -1
  909. package/build-module/custom-select-control-v2/index.js.map +1 -1
  910. package/build-module/date-time/time/timezone.js +1 -1
  911. package/build-module/date-time/time/timezone.js.map +1 -1
  912. package/build-module/dropdown-menu-v2/styles.js +14 -14
  913. package/build-module/dropdown-menu-v2/styles.js.map +1 -1
  914. package/build-module/external-link/index.js +1 -1
  915. package/build-module/focal-point-picker/index.js +2 -2
  916. package/build-module/focal-point-picker/index.js.map +1 -1
  917. package/build-module/focal-point-picker/index.native.js +0 -1
  918. package/build-module/focal-point-picker/index.native.js.map +1 -1
  919. package/build-module/focal-point-picker/styles/focal-point-picker-style.js +29 -37
  920. package/build-module/focal-point-picker/styles/focal-point-picker-style.js.map +1 -1
  921. package/build-module/focal-point-picker/styles/focal-point-style.js +10 -2
  922. package/build-module/focal-point-picker/styles/focal-point-style.js.map +1 -1
  923. package/build-module/font-size-picker/font-size-picker-toggle-group.js +1 -2
  924. package/build-module/font-size-picker/font-size-picker-toggle-group.js.map +1 -1
  925. package/build-module/font-size-picker/index.js +3 -17
  926. package/build-module/font-size-picker/index.js.map +1 -1
  927. package/build-module/font-size-picker/styles.js +14 -20
  928. package/build-module/font-size-picker/styles.js.map +1 -1
  929. package/build-module/font-size-picker/types.js.map +1 -1
  930. package/build-module/form-token-field/index.js +1 -6
  931. package/build-module/form-token-field/index.js.map +1 -1
  932. package/build-module/form-token-field/suggestions-list.js +0 -1
  933. package/build-module/form-token-field/suggestions-list.js.map +1 -1
  934. package/build-module/gradient-picker/index.js +18 -41
  935. package/build-module/gradient-picker/index.js.map +1 -1
  936. package/build-module/gradient-picker/types.js.map +1 -1
  937. package/build-module/input-control/backdrop.js +2 -0
  938. package/build-module/input-control/backdrop.js.map +1 -1
  939. package/build-module/input-control/index.js +1 -1
  940. package/build-module/input-control/index.js.map +1 -1
  941. package/build-module/input-control/input-base.js +6 -4
  942. package/build-module/input-control/input-base.js.map +1 -1
  943. package/build-module/input-control/styles/input-control-styles.js +25 -23
  944. package/build-module/input-control/styles/input-control-styles.js.map +1 -1
  945. package/build-module/input-control/types.js.map +1 -1
  946. package/build-module/isolated-event-container/index.js +0 -1
  947. package/build-module/isolated-event-container/index.js.map +1 -1
  948. package/build-module/item-group/styles.js +10 -10
  949. package/build-module/item-group/styles.js.map +1 -1
  950. package/build-module/mobile/image/index.native.js +83 -8
  951. package/build-module/mobile/image/index.native.js.map +1 -1
  952. package/build-module/navigation/menu/menu-title-search.js +4 -6
  953. package/build-module/navigation/menu/menu-title-search.js.map +1 -1
  954. package/build-module/navigation/styles/navigation-styles.js +23 -24
  955. package/build-module/navigation/styles/navigation-styles.js.map +1 -1
  956. package/build-module/number-control/index.js +1 -1
  957. package/build-module/number-control/index.js.map +1 -1
  958. package/build-module/palette-edit/index.js +10 -15
  959. package/build-module/palette-edit/index.js.map +1 -1
  960. package/build-module/palette-edit/styles.js +43 -33
  961. package/build-module/palette-edit/styles.js.map +1 -1
  962. package/build-module/popover/index.js +2 -0
  963. package/build-module/popover/index.js.map +1 -1
  964. package/build-module/popover/types.js.map +1 -1
  965. package/build-module/query-controls/index.js +5 -5
  966. package/build-module/query-controls/index.js.map +1 -1
  967. package/build-module/query-controls/index.native.js +4 -4
  968. package/build-module/query-controls/index.native.js.map +1 -1
  969. package/build-module/resizable-box/resize-tooltip/styles/resize-tooltip.styles.js +4 -4
  970. package/build-module/resizable-box/resize-tooltip/styles/resize-tooltip.styles.js.map +1 -1
  971. package/build-module/search-control/index.js +67 -57
  972. package/build-module/search-control/index.js.map +1 -1
  973. package/build-module/search-control/styles.js +29 -0
  974. package/build-module/search-control/styles.js.map +1 -0
  975. package/build-module/search-control/types.js.map +1 -1
  976. package/build-module/select-control/index.js +1 -1
  977. package/build-module/select-control/index.js.map +1 -1
  978. package/build-module/snackbar/index.js +18 -6
  979. package/build-module/snackbar/index.js.map +1 -1
  980. package/build-module/tabs/index.js +21 -17
  981. package/build-module/tabs/index.js.map +1 -1
  982. package/build-module/tabs/tablist.js +22 -0
  983. package/build-module/tabs/tablist.js.map +1 -1
  984. package/build-module/tree-select/index.js +1 -1
  985. package/build-module/tree-select/index.js.map +1 -1
  986. package/build-module/unit-control/index.js +1 -1
  987. package/build-module/unit-control/index.js.map +1 -1
  988. package/build-module/utils/colors-values.js +42 -19
  989. package/build-module/utils/colors-values.js.map +1 -1
  990. package/build-module/utils/hooks/use-update-effect.js +1 -1
  991. package/build-module/utils/hooks/use-update-effect.js.map +1 -1
  992. package/build-module/utils/use-deprecated-props.js +1 -13
  993. package/build-module/utils/use-deprecated-props.js.map +1 -1
  994. package/build-module/utils/use-responsive-value.js +2 -3
  995. package/build-module/utils/use-responsive-value.js.map +1 -1
  996. package/build-style/style-rtl.css +22 -109
  997. package/build-style/style.css +22 -109
  998. package/build-types/angle-picker-control/index.d.ts +0 -1
  999. package/build-types/angle-picker-control/index.d.ts.map +1 -1
  1000. package/build-types/angle-picker-control/styles/angle-picker-control-styles.d.ts +0 -6
  1001. package/build-types/angle-picker-control/styles/angle-picker-control-styles.d.ts.map +1 -1
  1002. package/build-types/angle-picker-control/types.d.ts +2 -0
  1003. package/build-types/angle-picker-control/types.d.ts.map +1 -1
  1004. package/build-types/button/stories/e2e/index.story.d.ts.map +1 -1
  1005. package/build-types/card/stories/index.story.d.ts +2 -2
  1006. package/build-types/checkbox-control/stories/index.story.d.ts +11 -0
  1007. package/build-types/checkbox-control/stories/index.story.d.ts.map +1 -1
  1008. package/build-types/checkbox-control/types.d.ts +2 -3
  1009. package/build-types/checkbox-control/types.d.ts.map +1 -1
  1010. package/build-types/color-palette/styles.d.ts +1 -1
  1011. package/build-types/combobox-control/index.d.ts.map +1 -1
  1012. package/build-types/composite/current/index.d.ts +12 -0
  1013. package/build-types/composite/current/index.d.ts.map +1 -0
  1014. package/build-types/composite/current/stories/index.story.d.ts +13 -0
  1015. package/build-types/composite/current/stories/index.story.d.ts.map +1 -0
  1016. package/build-types/composite/current/stories/utils.d.ts +15 -0
  1017. package/build-types/composite/current/stories/utils.d.ts.map +1 -0
  1018. package/build-types/composite/index.d.ts +1 -14
  1019. package/build-types/composite/index.d.ts.map +1 -1
  1020. package/build-types/composite/legacy/index.d.ts +84 -0
  1021. package/build-types/composite/legacy/index.d.ts.map +1 -0
  1022. package/build-types/composite/legacy/stories/index.story.d.ts +12 -0
  1023. package/build-types/composite/legacy/stories/index.story.d.ts.map +1 -0
  1024. package/build-types/composite/legacy/stories/utils.d.ts +15 -0
  1025. package/build-types/composite/legacy/stories/utils.d.ts.map +1 -0
  1026. package/build-types/composite/legacy/test/index.d.ts.map +1 -0
  1027. package/build-types/composite/v2.d.ts +1 -11
  1028. package/build-types/composite/v2.d.ts.map +1 -1
  1029. package/build-types/confirm-dialog/component.d.ts.map +1 -1
  1030. package/build-types/custom-gradient-picker/index.d.ts +1 -3
  1031. package/build-types/custom-gradient-picker/index.d.ts.map +1 -1
  1032. package/build-types/custom-gradient-picker/types.d.ts +2 -0
  1033. package/build-types/custom-gradient-picker/types.d.ts.map +1 -1
  1034. package/build-types/custom-select-control/index.d.ts.map +1 -1
  1035. package/build-types/custom-select-control/styles.d.ts +2 -2
  1036. package/build-types/custom-select-control-v2/index.d.ts.map +1 -1
  1037. package/build-types/custom-select-control-v2/stories/index.story.d.ts.map +1 -1
  1038. package/build-types/custom-select-control-v2/test/index.d.ts +2 -0
  1039. package/build-types/custom-select-control-v2/test/index.d.ts.map +1 -0
  1040. package/build-types/date-time/date/styles.d.ts +1 -1
  1041. package/build-types/dropdown-menu-v2/stories/index.story.d.ts.map +1 -1
  1042. package/build-types/focal-point-picker/styles/focal-point-picker-style.d.ts.map +1 -1
  1043. package/build-types/focal-point-picker/styles/focal-point-style.d.ts.map +1 -1
  1044. package/build-types/font-size-picker/font-size-picker-toggle-group.d.ts.map +1 -1
  1045. package/build-types/font-size-picker/index.d.ts.map +1 -1
  1046. package/build-types/font-size-picker/stories/index.story.d.ts.map +1 -1
  1047. package/build-types/font-size-picker/styles.d.ts +0 -6
  1048. package/build-types/font-size-picker/styles.d.ts.map +1 -1
  1049. package/build-types/font-size-picker/types.d.ts +3 -1
  1050. package/build-types/font-size-picker/types.d.ts.map +1 -1
  1051. package/build-types/form-token-field/index.d.ts.map +1 -1
  1052. package/build-types/gradient-picker/index.d.ts +1 -4
  1053. package/build-types/gradient-picker/index.d.ts.map +1 -1
  1054. package/build-types/gradient-picker/stories/index.story.d.ts.map +1 -1
  1055. package/build-types/gradient-picker/types.d.ts +2 -0
  1056. package/build-types/gradient-picker/types.d.ts.map +1 -1
  1057. package/build-types/heading/component.d.ts +1 -1
  1058. package/build-types/input-control/backdrop.d.ts +2 -1
  1059. package/build-types/input-control/backdrop.d.ts.map +1 -1
  1060. package/build-types/input-control/index.d.ts.map +1 -1
  1061. package/build-types/input-control/input-base.d.ts +1 -3
  1062. package/build-types/input-control/input-base.d.ts.map +1 -1
  1063. package/build-types/input-control/styles/input-control-styles.d.ts +1 -0
  1064. package/build-types/input-control/styles/input-control-styles.d.ts.map +1 -1
  1065. package/build-types/input-control/types.d.ts +7 -1
  1066. package/build-types/input-control/types.d.ts.map +1 -1
  1067. package/build-types/item-group/styles.d.ts.map +1 -1
  1068. package/build-types/navigation/styles/navigation-styles.d.ts +5 -12
  1069. package/build-types/navigation/styles/navigation-styles.d.ts.map +1 -1
  1070. package/build-types/number-control/index.d.ts.map +1 -1
  1071. package/build-types/palette-edit/index.d.ts.map +1 -1
  1072. package/build-types/palette-edit/stories/index.story.d.ts.map +1 -1
  1073. package/build-types/palette-edit/styles.d.ts +15 -21
  1074. package/build-types/palette-edit/styles.d.ts.map +1 -1
  1075. package/build-types/popover/index.d.ts.map +1 -1
  1076. package/build-types/popover/types.d.ts +9 -0
  1077. package/build-types/popover/types.d.ts.map +1 -1
  1078. package/build-types/progress-bar/stories/index.story.d.ts.map +1 -1
  1079. package/build-types/search-control/index.d.ts +4 -9
  1080. package/build-types/search-control/index.d.ts.map +1 -1
  1081. package/build-types/search-control/stories/index.story.d.ts +2 -18
  1082. package/build-types/search-control/stories/index.story.d.ts.map +1 -1
  1083. package/build-types/search-control/styles.d.ts +10 -0
  1084. package/build-types/search-control/styles.d.ts.map +1 -0
  1085. package/build-types/search-control/test/index.d.ts +2 -0
  1086. package/build-types/search-control/test/index.d.ts.map +1 -0
  1087. package/build-types/search-control/types.d.ts +34 -18
  1088. package/build-types/search-control/types.d.ts.map +1 -1
  1089. package/build-types/select-control/index.d.ts.map +1 -1
  1090. package/build-types/snackbar/index.d.ts.map +1 -1
  1091. package/build-types/tabs/index.d.ts.map +1 -1
  1092. package/build-types/tabs/stories/index.story.d.ts.map +1 -1
  1093. package/build-types/tabs/tablist.d.ts.map +1 -1
  1094. package/build-types/theme/stories/index.story.d.ts.map +1 -1
  1095. package/build-types/tree-select/index.d.ts.map +1 -1
  1096. package/build-types/unit-control/index.d.ts.map +1 -1
  1097. package/build-types/utils/colors-values.d.ts +28 -1
  1098. package/build-types/utils/colors-values.d.ts.map +1 -1
  1099. package/build-types/utils/hooks/use-update-effect.d.ts +1 -1
  1100. package/build-types/utils/use-deprecated-props.d.ts +1 -5
  1101. package/build-types/utils/use-deprecated-props.d.ts.map +1 -1
  1102. package/package.json +19 -20
  1103. package/src/angle-picker-control/README.md +0 -8
  1104. package/src/angle-picker-control/index.tsx +4 -23
  1105. package/src/angle-picker-control/stories/index.story.tsx +0 -3
  1106. package/src/angle-picker-control/styles/angle-picker-control-styles.tsx +0 -18
  1107. package/src/angle-picker-control/types.ts +2 -0
  1108. package/src/button/stories/e2e/index.story.tsx +6 -0
  1109. package/src/button/style.scss +17 -5
  1110. package/src/card/test/__snapshots__/index.tsx.snap +3 -3
  1111. package/src/checkbox-control/README.md +1 -2
  1112. package/src/checkbox-control/stories/index.story.tsx +44 -0
  1113. package/src/checkbox-control/test/index.tsx +2 -2
  1114. package/src/checkbox-control/types.ts +2 -3
  1115. package/src/combobox-control/index.tsx +1 -4
  1116. package/src/composite/current/index.ts +22 -0
  1117. package/src/composite/current/stories/index.story.tsx +86 -0
  1118. package/src/composite/current/stories/utils.tsx +61 -0
  1119. package/src/composite/index.ts +6 -21
  1120. package/src/composite/legacy/index.tsx +191 -0
  1121. package/src/composite/legacy/stories/index.story.tsx +205 -0
  1122. package/src/composite/legacy/stories/utils.tsx +67 -0
  1123. package/src/composite/legacy/test/index.tsx +579 -0
  1124. package/src/composite/v2.ts +3 -21
  1125. package/src/confirm-dialog/component.tsx +2 -0
  1126. package/src/context/wordpress-component.ts +1 -1
  1127. package/src/custom-gradient-picker/index.tsx +1 -22
  1128. package/src/custom-gradient-picker/stories/index.story.tsx +0 -3
  1129. package/src/custom-gradient-picker/style.scss +0 -7
  1130. package/src/custom-gradient-picker/types.ts +2 -0
  1131. package/src/custom-select-control/index.js +1 -5
  1132. package/src/custom-select-control-v2/index.tsx +2 -0
  1133. package/src/custom-select-control-v2/stories/index.story.tsx +1 -0
  1134. package/src/custom-select-control-v2/test/index.tsx +219 -0
  1135. package/src/date-time/time/timezone.tsx +1 -1
  1136. package/src/dimension-control/test/__snapshots__/index.test.js.snap +16 -16
  1137. package/src/divider/README.md +1 -1
  1138. package/src/dropdown-menu-v2/stories/index.story.tsx +1 -0
  1139. package/src/dropdown-menu-v2/styles.ts +1 -1
  1140. package/src/focal-point-picker/index.tsx +2 -2
  1141. package/src/focal-point-picker/styles/focal-point-picker-style.ts +26 -10
  1142. package/src/focal-point-picker/styles/focal-point-style.ts +21 -7
  1143. package/src/font-size-picker/README.md +0 -8
  1144. package/src/font-size-picker/font-size-picker-toggle-group.tsx +2 -9
  1145. package/src/font-size-picker/index.tsx +3 -21
  1146. package/src/font-size-picker/stories/index.story.tsx +0 -1
  1147. package/src/font-size-picker/styles.ts +0 -7
  1148. package/src/font-size-picker/test/index.tsx +16 -99
  1149. package/src/font-size-picker/types.ts +3 -1
  1150. package/src/form-token-field/index.tsx +1 -4
  1151. package/src/gradient-picker/README.md +0 -8
  1152. package/src/gradient-picker/index.tsx +32 -56
  1153. package/src/gradient-picker/stories/index.story.tsx +0 -1
  1154. package/src/gradient-picker/types.ts +2 -0
  1155. package/src/guide/style.scss +1 -1
  1156. package/src/input-control/backdrop.tsx +6 -1
  1157. package/src/input-control/index.tsx +1 -5
  1158. package/src/input-control/input-base.tsx +14 -7
  1159. package/src/input-control/styles/input-control-styles.tsx +6 -3
  1160. package/src/input-control/types.ts +10 -1
  1161. package/src/item-group/styles.ts +1 -4
  1162. package/src/mobile/image/index.native.js +117 -12
  1163. package/src/mobile/image/style.native.scss +6 -0
  1164. package/src/modal/style.scss +1 -1
  1165. package/src/navigation/menu/menu-title-search.tsx +6 -6
  1166. package/src/navigation/styles/navigation-styles.tsx +5 -27
  1167. package/src/number-control/index.tsx +1 -5
  1168. package/src/palette-edit/index.tsx +18 -16
  1169. package/src/palette-edit/stories/index.story.tsx +1 -0
  1170. package/src/palette-edit/{styles.js → styles.ts} +56 -13
  1171. package/src/palette-edit/test/index.tsx +2 -2
  1172. package/src/placeholder/style.scss +6 -5
  1173. package/src/popover/index.tsx +2 -0
  1174. package/src/popover/style.scss +1 -0
  1175. package/src/popover/test/index.tsx +250 -0
  1176. package/src/popover/types.ts +9 -0
  1177. package/src/progress-bar/stories/index.story.tsx +1 -0
  1178. package/src/query-controls/index.native.js +4 -4
  1179. package/src/query-controls/index.tsx +5 -5
  1180. package/src/resizable-box/resize-tooltip/styles/resize-tooltip.styles.ts +3 -3
  1181. package/src/search-control/README.md +23 -3
  1182. package/src/search-control/index.tsx +88 -70
  1183. package/src/search-control/stories/index.story.tsx +1 -1
  1184. package/src/search-control/styles.ts +42 -0
  1185. package/src/search-control/test/index.tsx +107 -0
  1186. package/src/search-control/types.ts +37 -22
  1187. package/src/select-control/index.tsx +1 -5
  1188. package/src/snackbar/index.tsx +19 -6
  1189. package/src/style.scss +0 -1
  1190. package/src/tabs/index.tsx +31 -27
  1191. package/src/tabs/stories/index.story.tsx +1 -0
  1192. package/src/tabs/tablist.tsx +19 -0
  1193. package/src/tabs/test/index.tsx +105 -49
  1194. package/src/theme/stories/index.story.tsx +1 -0
  1195. package/src/toggle-group-control/test/__snapshots__/index.tsx.snap +8 -8
  1196. package/src/toolbar/toolbar-button/README.md +2 -2
  1197. package/src/toolbar/toolbar-dropdown-menu/README.md +2 -2
  1198. package/src/toolbar/toolbar-item/README.md +2 -2
  1199. package/src/tree-select/index.tsx +1 -5
  1200. package/src/unit-control/index.tsx +1 -5
  1201. package/src/utils/colors-values.js +45 -23
  1202. package/src/utils/hooks/use-update-effect.js +1 -1
  1203. package/src/utils/use-deprecated-props.ts +1 -18
  1204. package/tsconfig.tsbuildinfo +1 -1
  1205. package/build-types/composite/test/index.d.ts.map +0 -1
  1206. package/src/composite/test/index.tsx +0 -576
  1207. package/src/search-control/style.scss +0 -71
  1208. /package/build-types/composite/{test → legacy/test}/index.d.ts +0 -0
@@ -1 +1 @@
1
- {"version":3,"names":["Ariakit","css","keyframes","COLORS","font","rtl","CONFIG","space","Icon","Truncate","ANIMATION_PARAMS","SLIDE_AMOUNT","DURATION","EASING","CONTENT_WRAPPER_PADDING","ITEM_PADDING_BLOCK","ITEM_PADDING_INLINE","DEFAULT_BORDER_COLOR","gray","DIVIDER_COLOR","TOOLBAR_VARIANT_BORDER_COLOR","DEFAULT_BOX_SHADOW","borderWidth","popoverShadow","TOOLBAR_VARIANT_BOX_SHADOW","GRID_TEMPLATE_COLS","slideUpAndFade","opacity","transform","slideRightAndFade","slideDownAndFade","slideLeftAndFade","DropdownMenu","_styled","Menu","process","env","NODE_ENV","target","label","ui","background","props","variant","baseItem","radiusBlockUi","textDisabled","theme","accent","white","DropdownMenuItem","MenuItem","DropdownMenuCheckboxItem","MenuItemCheckbox","DropdownMenuRadioItem","MenuItemRadio","ItemPrefixWrapper","DropdownMenuItemContentWrapper","DropdownMenuItemChildrenWrapper","ItemSuffixWrapper","DropdownMenuGroup","MenuGroup","name","styles","map","toString","_EMOTION_STRINGIFIED_CSS_ERROR__","DropdownMenuSeparator","MenuSeparator","SubmenuChevronIcon","DropdownMenuItemLabel","DropdownMenuItemHelpText"],"sources":["@wordpress/components/src/dropdown-menu-v2/styles.ts"],"sourcesContent":["/**\n * External dependencies\n */\n// eslint-disable-next-line no-restricted-imports\nimport * as Ariakit from '@ariakit/react';\nimport { css, keyframes } from '@emotion/react';\nimport styled from '@emotion/styled';\n\n/**\n * Internal dependencies\n */\nimport { COLORS, font, rtl, CONFIG } from '../utils';\nimport { space } from '../utils/space';\nimport Icon from '../icon';\nimport { Truncate } from '../truncate';\nimport type { DropdownMenuContext } from './types';\n\nconst ANIMATION_PARAMS = {\n\tSLIDE_AMOUNT: '2px',\n\tDURATION: '400ms',\n\tEASING: 'cubic-bezier( 0.16, 1, 0.3, 1 )',\n};\n\nconst CONTENT_WRAPPER_PADDING = space( 1 );\nconst ITEM_PADDING_BLOCK = space( 2 );\nconst ITEM_PADDING_INLINE = space( 3 );\n\n// TODO:\n// - those values are different from saved variables?\n// - should bring this into the config, and make themeable\n// - border color and divider color are different?\nconst DEFAULT_BORDER_COLOR = COLORS.gray[ 300 ];\nconst DIVIDER_COLOR = COLORS.gray[ 200 ];\nconst TOOLBAR_VARIANT_BORDER_COLOR = COLORS.gray[ '900' ];\nconst DEFAULT_BOX_SHADOW = `0 0 0 ${ CONFIG.borderWidth } ${ DEFAULT_BORDER_COLOR }, ${ CONFIG.popoverShadow }`;\nconst TOOLBAR_VARIANT_BOX_SHADOW = `0 0 0 ${ CONFIG.borderWidth } ${ TOOLBAR_VARIANT_BORDER_COLOR }`;\n\nconst GRID_TEMPLATE_COLS = 'minmax( 0, max-content ) 1fr';\n\nconst slideUpAndFade = keyframes( {\n\t'0%': {\n\t\topacity: 0,\n\t\ttransform: `translateY(${ ANIMATION_PARAMS.SLIDE_AMOUNT })`,\n\t},\n\t'100%': { opacity: 1, transform: 'translateY(0)' },\n} );\n\nconst slideRightAndFade = keyframes( {\n\t'0%': {\n\t\topacity: 0,\n\t\ttransform: `translateX(-${ ANIMATION_PARAMS.SLIDE_AMOUNT })`,\n\t},\n\t'100%': { opacity: 1, transform: 'translateX(0)' },\n} );\n\nconst slideDownAndFade = keyframes( {\n\t'0%': {\n\t\topacity: 0,\n\t\ttransform: `translateY(-${ ANIMATION_PARAMS.SLIDE_AMOUNT })`,\n\t},\n\t'100%': { opacity: 1, transform: 'translateY(0)' },\n} );\n\nconst slideLeftAndFade = keyframes( {\n\t'0%': {\n\t\topacity: 0,\n\t\ttransform: `translateX(${ ANIMATION_PARAMS.SLIDE_AMOUNT })`,\n\t},\n\t'100%': { opacity: 1, transform: 'translateX(0)' },\n} );\n\nexport const DropdownMenu = styled( Ariakit.Menu )<\n\tPick< DropdownMenuContext, 'variant' >\n>`\n\tposition: relative;\n\t/* Same as popover component */\n\t/* TODO: is there a way to read the sass variable? */\n\tz-index: 1000000;\n\n\tdisplay: grid;\n\tgrid-template-columns: ${ GRID_TEMPLATE_COLS };\n\tgrid-template-rows: auto;\n\n\tbox-sizing: border-box;\n\tmin-width: 160px;\n\tmax-width: 320px;\n\tmax-height: var( --popover-available-height );\n\tpadding: ${ CONTENT_WRAPPER_PADDING };\n\n\tbackground-color: ${ COLORS.ui.background };\n\tborder-radius: 4px;\n\t${ ( props ) => css`\n\t\tbox-shadow: ${ props.variant === 'toolbar'\n\t\t\t? TOOLBAR_VARIANT_BOX_SHADOW\n\t\t\t: DEFAULT_BOX_SHADOW };\n\t` }\n\n\toverscroll-behavior: contain;\n\toverflow: auto;\n\n\t/* Only visible in Windows High Contrast mode */\n\toutline: 2px solid transparent !important;\n\n\t/* Animation */\n\tanimation-duration: ${ ANIMATION_PARAMS.DURATION };\n\tanimation-timing-function: ${ ANIMATION_PARAMS.EASING };\n\twill-change: transform, opacity;\n\t/* Default animation.*/\n\tanimation-name: ${ slideDownAndFade };\n\n\t&[data-side='right'] {\n\t\tanimation-name: ${ slideLeftAndFade };\n\t}\n\t&[data-side='bottom'] {\n\t\tanimation-name: ${ slideUpAndFade };\n\t}\n\t&[data-side='left'] {\n\t\tanimation-name: ${ slideRightAndFade };\n\t}\n\t@media ( prefers-reduced-motion ) {\n\t\tanimation-duration: 0s;\n\t}\n`;\n\nconst baseItem = css`\n\tall: unset;\n\n\tposition: relative;\n\tmin-height: ${ space( 10 ) };\n\tbox-sizing: border-box;\n\n\t/* Occupy the width of all grid columns (ie. full width) */\n\tgrid-column: 1 / -1;\n\n\tdisplay: grid;\n\tgrid-template-columns: ${ GRID_TEMPLATE_COLS };\n\talign-items: center;\n\n\t@supports ( grid-template-columns: subgrid ) {\n\t\t/*\n\t\t * Define a grid layout which inherits the same columns configuration\n\t\t * from the parent layout (ie. subgrid). This allows the menu\n\t\t * to synchronize the indentation of all its items.\n\t\t */\n\t\tgrid-template-columns: subgrid;\n\t}\n\n\tfont-size: ${ font( 'default.fontSize' ) };\n\tfont-family: inherit;\n\tfont-weight: normal;\n\tline-height: 20px;\n\n\tcolor: ${ COLORS.gray[ 900 ] };\n\tborder-radius: ${ CONFIG.radiusBlockUi };\n\n\tpadding-block: ${ ITEM_PADDING_BLOCK };\n\tpadding-inline: ${ ITEM_PADDING_INLINE };\n\n\t/*\n\t * Make sure that, when an item is scrolled into view (eg. while using the\n\t * keyboard to move focus), the whole item comes into view\n\t */\n\tscroll-margin: ${ CONTENT_WRAPPER_PADDING };\n\n\tuser-select: none;\n\toutline: none;\n\n\t&[aria-disabled='true'] {\n\t\tcolor: ${ COLORS.ui.textDisabled };\n\t\tcursor: not-allowed;\n\t}\n\n\t/* Hover */\n\t&[data-active-item]:not( [data-focus-visible] ):not(\n\t\t\t[aria-disabled='true']\n\t\t) {\n\t\tbackground-color: ${ COLORS.theme.accent };\n\t\tcolor: ${ COLORS.white };\n\t}\n\n\t/* Keyboard focus (focus-visible) */\n\t&[data-focus-visible] {\n\t\tbox-shadow: 0 0 0 1.5px var( --wp-admin-theme-color );\n\n\t\t/* Only visible in Windows High Contrast mode */\n\t\toutline: 2px solid transparent;\n\t}\n\n\t/* Active (ie. pressed, mouse down) */\n\t&:active,\n\t&[data-active] {\n\t\t/* TODO: should there be a visual active state? */\n\t}\n\n\t/* When the item is the trigger of an open submenu */\n\t${ DropdownMenu }:not(:focus) &:not(:focus)[aria-expanded=\"true\"] {\n\t\tbackground-color: ${ COLORS.gray[ 100 ] };\n\t\tcolor: ${ COLORS.gray[ 900 ] };\n\t}\n\n\tsvg {\n\t\tfill: currentColor;\n\t}\n`;\n\nexport const DropdownMenuItem = styled( Ariakit.MenuItem )`\n\t${ baseItem };\n`;\n\nexport const DropdownMenuCheckboxItem = styled( Ariakit.MenuItemCheckbox )`\n\t${ baseItem };\n`;\n\nexport const DropdownMenuRadioItem = styled( Ariakit.MenuItemRadio )`\n\t${ baseItem };\n`;\n\nexport const ItemPrefixWrapper = styled.span`\n\t/* Always occupy the first column, even when auto-collapsing */\n\tgrid-column: 1;\n\n\t/*\n\t * Even when the item is not checked, occupy the same screen space to avoid\n\t * the space collapside when no items are checked.\n\t */\n\t${ DropdownMenuCheckboxItem } > &,\n\t${ DropdownMenuRadioItem } > & {\n\t\t/* Same width as the check icons */\n\t\tmin-width: ${ space( 6 ) };\n\t}\n\n\t${ DropdownMenuCheckboxItem } > &,\n\t${ DropdownMenuRadioItem } > &,\n\t&:not( :empty ) {\n\t\tmargin-inline-end: ${ space( 2 ) };\n\t}\n\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\n\tcolor: ${ COLORS.gray[ '700' ] };\n\n\t/*\n\t* When the parent menu item is active, except when it's a non-focused/hovered\n\t* submenu trigger (in that case, color should not be inherited)\n\t*/\n\t[data-active-item]:not( [data-focus-visible] ) > &,\n\t/* When the parent menu item is disabled */\n\t[aria-disabled='true'] > & {\n\t\tcolor: inherit;\n\t}\n`;\n\nexport const DropdownMenuItemContentWrapper = styled.div`\n\t/*\n\t * Always occupy the second column, since the first column\n\t * is taken by the prefix wrapper (when displayed).\n\t */\n\tgrid-column: 2;\n\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: space-between;\n\tgap: ${ space( 3 ) };\n\n\tpointer-events: none;\n`;\n\nexport const DropdownMenuItemChildrenWrapper = styled.div`\n\tflex: 1;\n\n\tdisplay: inline-flex;\n\tflex-direction: column;\n\tgap: ${ space( 1 ) };\n`;\n\nexport const ItemSuffixWrapper = styled.span`\n\tflex: 0 1 fit-content;\n\tmin-width: 0;\n\twidth: fit-content;\n\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\tgap: ${ space( 3 ) };\n\n\tcolor: ${ COLORS.gray[ '700' ] };\n\n\t/*\n\t * When the parent menu item is active, except when it's a non-focused/hovered\n\t * submenu trigger (in that case, color should not be inherited)\n\t */\n\t[data-active-item]:not( [data-focus-visible] ) *:not(${ DropdownMenu }) &,\n\t/* When the parent menu item is disabled */\n\t[aria-disabled='true'] *:not(${ DropdownMenu }) & {\n\t\tcolor: inherit;\n\t}\n`;\n\nexport const DropdownMenuGroup = styled( Ariakit.MenuGroup )`\n\t/* Ignore this element when calculating the layout. Useful for subgrid */\n\tdisplay: contents;\n`;\n\nexport const DropdownMenuSeparator = styled( Ariakit.MenuSeparator )<\n\tPick< DropdownMenuContext, 'variant' >\n>`\n\t/* Occupy the width of all grid columns (ie. full width) */\n\tgrid-column: 1 / -1;\n\n\tborder: none;\n\theight: ${ CONFIG.borderWidth };\n\tbackground-color: ${ ( props ) =>\n\t\tprops.variant === 'toolbar'\n\t\t\t? TOOLBAR_VARIANT_BORDER_COLOR\n\t\t\t: DIVIDER_COLOR };\n\t/* Align with menu items' content */\n\tmargin-block: ${ space( 2 ) };\n\tmargin-inline: ${ ITEM_PADDING_INLINE };\n\n\t/* Only visible in Windows High Contrast mode */\n\toutline: 2px solid transparent;\n`;\n\nexport const SubmenuChevronIcon = styled( Icon )`\n\twidth: ${ space( 1.5 ) };\n\t${ rtl(\n\t\t{\n\t\t\ttransform: `scaleX(1)`,\n\t\t},\n\t\t{\n\t\t\ttransform: `scaleX(-1)`,\n\t\t}\n\t) };\n`;\n\nexport const DropdownMenuItemLabel = styled( Truncate )`\n\tfont-size: ${ font( 'default.fontSize' ) };\n\tline-height: 20px;\n\tcolor: inherit;\n`;\n\nexport const DropdownMenuItemHelpText = styled( Truncate )`\n\tfont-size: ${ font( 'helpText.fontSize' ) };\n\tline-height: 16px;\n\tcolor: ${ COLORS.gray[ '700' ] };\n\n\t[data-active-item]:not( [data-focus-visible] ) *:not( ${ DropdownMenu } ) &,\n\t[aria-disabled='true'] *:not( ${ DropdownMenu } ) & {\n\t\tcolor: inherit;\n\t}\n`;\n"],"mappings":"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"}
1
+ {"version":3,"names":["Ariakit","css","keyframes","COLORS","font","rtl","CONFIG","space","Icon","Truncate","ANIMATION_PARAMS","SLIDE_AMOUNT","DURATION","EASING","CONTENT_WRAPPER_PADDING","ITEM_PADDING_BLOCK","ITEM_PADDING_INLINE","DEFAULT_BORDER_COLOR","gray","DIVIDER_COLOR","TOOLBAR_VARIANT_BORDER_COLOR","DEFAULT_BOX_SHADOW","borderWidth","popoverShadow","TOOLBAR_VARIANT_BOX_SHADOW","GRID_TEMPLATE_COLS","slideUpAndFade","opacity","transform","slideRightAndFade","slideDownAndFade","slideLeftAndFade","DropdownMenu","_styled","Menu","process","env","NODE_ENV","target","label","ui","background","props","variant","baseItem","radiusBlockUi","textDisabled","theme","accent","white","DropdownMenuItem","MenuItem","DropdownMenuCheckboxItem","MenuItemCheckbox","DropdownMenuRadioItem","MenuItemRadio","ItemPrefixWrapper","DropdownMenuItemContentWrapper","DropdownMenuItemChildrenWrapper","ItemSuffixWrapper","DropdownMenuGroup","MenuGroup","name","styles","map","toString","_EMOTION_STRINGIFIED_CSS_ERROR__","DropdownMenuSeparator","MenuSeparator","SubmenuChevronIcon","DropdownMenuItemLabel","DropdownMenuItemHelpText"],"sources":["@wordpress/components/src/dropdown-menu-v2/styles.ts"],"sourcesContent":["/**\n * External dependencies\n */\n// eslint-disable-next-line no-restricted-imports\nimport * as Ariakit from '@ariakit/react';\nimport { css, keyframes } from '@emotion/react';\nimport styled from '@emotion/styled';\n\n/**\n * Internal dependencies\n */\nimport { COLORS, font, rtl, CONFIG } from '../utils';\nimport { space } from '../utils/space';\nimport Icon from '../icon';\nimport { Truncate } from '../truncate';\nimport type { DropdownMenuContext } from './types';\n\nconst ANIMATION_PARAMS = {\n\tSLIDE_AMOUNT: '2px',\n\tDURATION: '400ms',\n\tEASING: 'cubic-bezier( 0.16, 1, 0.3, 1 )',\n};\n\nconst CONTENT_WRAPPER_PADDING = space( 1 );\nconst ITEM_PADDING_BLOCK = space( 2 );\nconst ITEM_PADDING_INLINE = space( 3 );\n\n// TODO:\n// - those values are different from saved variables?\n// - should bring this into the config, and make themeable\n// - border color and divider color are different?\nconst DEFAULT_BORDER_COLOR = COLORS.gray[ 300 ];\nconst DIVIDER_COLOR = COLORS.gray[ 200 ];\nconst TOOLBAR_VARIANT_BORDER_COLOR = COLORS.gray[ '900' ];\nconst DEFAULT_BOX_SHADOW = `0 0 0 ${ CONFIG.borderWidth } ${ DEFAULT_BORDER_COLOR }, ${ CONFIG.popoverShadow }`;\nconst TOOLBAR_VARIANT_BOX_SHADOW = `0 0 0 ${ CONFIG.borderWidth } ${ TOOLBAR_VARIANT_BORDER_COLOR }`;\n\nconst GRID_TEMPLATE_COLS = 'minmax( 0, max-content ) 1fr';\n\nconst slideUpAndFade = keyframes( {\n\t'0%': {\n\t\topacity: 0,\n\t\ttransform: `translateY(${ ANIMATION_PARAMS.SLIDE_AMOUNT })`,\n\t},\n\t'100%': { opacity: 1, transform: 'translateY(0)' },\n} );\n\nconst slideRightAndFade = keyframes( {\n\t'0%': {\n\t\topacity: 0,\n\t\ttransform: `translateX(-${ ANIMATION_PARAMS.SLIDE_AMOUNT })`,\n\t},\n\t'100%': { opacity: 1, transform: 'translateX(0)' },\n} );\n\nconst slideDownAndFade = keyframes( {\n\t'0%': {\n\t\topacity: 0,\n\t\ttransform: `translateY(-${ ANIMATION_PARAMS.SLIDE_AMOUNT })`,\n\t},\n\t'100%': { opacity: 1, transform: 'translateY(0)' },\n} );\n\nconst slideLeftAndFade = keyframes( {\n\t'0%': {\n\t\topacity: 0,\n\t\ttransform: `translateX(${ ANIMATION_PARAMS.SLIDE_AMOUNT })`,\n\t},\n\t'100%': { opacity: 1, transform: 'translateX(0)' },\n} );\n\nexport const DropdownMenu = styled( Ariakit.Menu )<\n\tPick< DropdownMenuContext, 'variant' >\n>`\n\tposition: relative;\n\t/* Same as popover component */\n\t/* TODO: is there a way to read the sass variable? */\n\tz-index: 1000000;\n\n\tdisplay: grid;\n\tgrid-template-columns: ${ GRID_TEMPLATE_COLS };\n\tgrid-template-rows: auto;\n\n\tbox-sizing: border-box;\n\tmin-width: 160px;\n\tmax-width: 320px;\n\tmax-height: var( --popover-available-height );\n\tpadding: ${ CONTENT_WRAPPER_PADDING };\n\n\tbackground-color: ${ COLORS.ui.background };\n\tborder-radius: 4px;\n\t${ ( props ) => css`\n\t\tbox-shadow: ${ props.variant === 'toolbar'\n\t\t\t? TOOLBAR_VARIANT_BOX_SHADOW\n\t\t\t: DEFAULT_BOX_SHADOW };\n\t` }\n\n\toverscroll-behavior: contain;\n\toverflow: auto;\n\n\t/* Only visible in Windows High Contrast mode */\n\toutline: 2px solid transparent !important;\n\n\t/* Animation */\n\tanimation-duration: ${ ANIMATION_PARAMS.DURATION };\n\tanimation-timing-function: ${ ANIMATION_PARAMS.EASING };\n\twill-change: transform, opacity;\n\t/* Default animation.*/\n\tanimation-name: ${ slideDownAndFade };\n\n\t&[data-side='right'] {\n\t\tanimation-name: ${ slideLeftAndFade };\n\t}\n\t&[data-side='bottom'] {\n\t\tanimation-name: ${ slideUpAndFade };\n\t}\n\t&[data-side='left'] {\n\t\tanimation-name: ${ slideRightAndFade };\n\t}\n\t@media ( prefers-reduced-motion ) {\n\t\tanimation-duration: 0s;\n\t}\n`;\n\nconst baseItem = css`\n\tall: unset;\n\n\tposition: relative;\n\tmin-height: ${ space( 10 ) };\n\tbox-sizing: border-box;\n\n\t/* Occupy the width of all grid columns (ie. full width) */\n\tgrid-column: 1 / -1;\n\n\tdisplay: grid;\n\tgrid-template-columns: ${ GRID_TEMPLATE_COLS };\n\talign-items: center;\n\n\t@supports ( grid-template-columns: subgrid ) {\n\t\t/*\n\t\t * Define a grid layout which inherits the same columns configuration\n\t\t * from the parent layout (ie. subgrid). This allows the menu\n\t\t * to synchronize the indentation of all its items.\n\t\t */\n\t\tgrid-template-columns: subgrid;\n\t}\n\n\tfont-size: ${ font( 'default.fontSize' ) };\n\tfont-family: inherit;\n\tfont-weight: normal;\n\tline-height: 20px;\n\n\tcolor: ${ COLORS.gray[ 900 ] };\n\tborder-radius: ${ CONFIG.radiusBlockUi };\n\n\tpadding-block: ${ ITEM_PADDING_BLOCK };\n\tpadding-inline: ${ ITEM_PADDING_INLINE };\n\n\t/*\n\t * Make sure that, when an item is scrolled into view (eg. while using the\n\t * keyboard to move focus), the whole item comes into view\n\t */\n\tscroll-margin: ${ CONTENT_WRAPPER_PADDING };\n\n\tuser-select: none;\n\toutline: none;\n\n\t&[aria-disabled='true'] {\n\t\tcolor: ${ COLORS.ui.textDisabled };\n\t\tcursor: not-allowed;\n\t}\n\n\t/* Hover */\n\t&[data-active-item]:not( [data-focus-visible] ):not(\n\t\t\t[aria-disabled='true']\n\t\t) {\n\t\tbackground-color: ${ COLORS.theme.accent };\n\t\tcolor: ${ COLORS.white };\n\t}\n\n\t/* Keyboard focus (focus-visible) */\n\t&[data-focus-visible] {\n\t\tbox-shadow: 0 0 0 1.5px ${ COLORS.theme.accent };\n\n\t\t/* Only visible in Windows High Contrast mode */\n\t\toutline: 2px solid transparent;\n\t}\n\n\t/* Active (ie. pressed, mouse down) */\n\t&:active,\n\t&[data-active] {\n\t\t/* TODO: should there be a visual active state? */\n\t}\n\n\t/* When the item is the trigger of an open submenu */\n\t${ DropdownMenu }:not(:focus) &:not(:focus)[aria-expanded=\"true\"] {\n\t\tbackground-color: ${ COLORS.gray[ 100 ] };\n\t\tcolor: ${ COLORS.gray[ 900 ] };\n\t}\n\n\tsvg {\n\t\tfill: currentColor;\n\t}\n`;\n\nexport const DropdownMenuItem = styled( Ariakit.MenuItem )`\n\t${ baseItem };\n`;\n\nexport const DropdownMenuCheckboxItem = styled( Ariakit.MenuItemCheckbox )`\n\t${ baseItem };\n`;\n\nexport const DropdownMenuRadioItem = styled( Ariakit.MenuItemRadio )`\n\t${ baseItem };\n`;\n\nexport const ItemPrefixWrapper = styled.span`\n\t/* Always occupy the first column, even when auto-collapsing */\n\tgrid-column: 1;\n\n\t/*\n\t * Even when the item is not checked, occupy the same screen space to avoid\n\t * the space collapside when no items are checked.\n\t */\n\t${ DropdownMenuCheckboxItem } > &,\n\t${ DropdownMenuRadioItem } > & {\n\t\t/* Same width as the check icons */\n\t\tmin-width: ${ space( 6 ) };\n\t}\n\n\t${ DropdownMenuCheckboxItem } > &,\n\t${ DropdownMenuRadioItem } > &,\n\t&:not( :empty ) {\n\t\tmargin-inline-end: ${ space( 2 ) };\n\t}\n\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\n\tcolor: ${ COLORS.gray[ '700' ] };\n\n\t/*\n\t* When the parent menu item is active, except when it's a non-focused/hovered\n\t* submenu trigger (in that case, color should not be inherited)\n\t*/\n\t[data-active-item]:not( [data-focus-visible] ) > &,\n\t/* When the parent menu item is disabled */\n\t[aria-disabled='true'] > & {\n\t\tcolor: inherit;\n\t}\n`;\n\nexport const DropdownMenuItemContentWrapper = styled.div`\n\t/*\n\t * Always occupy the second column, since the first column\n\t * is taken by the prefix wrapper (when displayed).\n\t */\n\tgrid-column: 2;\n\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: space-between;\n\tgap: ${ space( 3 ) };\n\n\tpointer-events: none;\n`;\n\nexport const DropdownMenuItemChildrenWrapper = styled.div`\n\tflex: 1;\n\n\tdisplay: inline-flex;\n\tflex-direction: column;\n\tgap: ${ space( 1 ) };\n`;\n\nexport const ItemSuffixWrapper = styled.span`\n\tflex: 0 1 fit-content;\n\tmin-width: 0;\n\twidth: fit-content;\n\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\tgap: ${ space( 3 ) };\n\n\tcolor: ${ COLORS.gray[ '700' ] };\n\n\t/*\n\t * When the parent menu item is active, except when it's a non-focused/hovered\n\t * submenu trigger (in that case, color should not be inherited)\n\t */\n\t[data-active-item]:not( [data-focus-visible] ) *:not(${ DropdownMenu }) &,\n\t/* When the parent menu item is disabled */\n\t[aria-disabled='true'] *:not(${ DropdownMenu }) & {\n\t\tcolor: inherit;\n\t}\n`;\n\nexport const DropdownMenuGroup = styled( Ariakit.MenuGroup )`\n\t/* Ignore this element when calculating the layout. Useful for subgrid */\n\tdisplay: contents;\n`;\n\nexport const DropdownMenuSeparator = styled( Ariakit.MenuSeparator )<\n\tPick< DropdownMenuContext, 'variant' >\n>`\n\t/* Occupy the width of all grid columns (ie. full width) */\n\tgrid-column: 1 / -1;\n\n\tborder: none;\n\theight: ${ CONFIG.borderWidth };\n\tbackground-color: ${ ( props ) =>\n\t\tprops.variant === 'toolbar'\n\t\t\t? TOOLBAR_VARIANT_BORDER_COLOR\n\t\t\t: DIVIDER_COLOR };\n\t/* Align with menu items' content */\n\tmargin-block: ${ space( 2 ) };\n\tmargin-inline: ${ ITEM_PADDING_INLINE };\n\n\t/* Only visible in Windows High Contrast mode */\n\toutline: 2px solid transparent;\n`;\n\nexport const SubmenuChevronIcon = styled( Icon )`\n\twidth: ${ space( 1.5 ) };\n\t${ rtl(\n\t\t{\n\t\t\ttransform: `scaleX(1)`,\n\t\t},\n\t\t{\n\t\t\ttransform: `scaleX(-1)`,\n\t\t}\n\t) };\n`;\n\nexport const DropdownMenuItemLabel = styled( Truncate )`\n\tfont-size: ${ font( 'default.fontSize' ) };\n\tline-height: 20px;\n\tcolor: inherit;\n`;\n\nexport const DropdownMenuItemHelpText = styled( Truncate )`\n\tfont-size: ${ font( 'helpText.fontSize' ) };\n\tline-height: 16px;\n\tcolor: ${ COLORS.gray[ '700' ] };\n\n\t[data-active-item]:not( [data-focus-visible] ) *:not( ${ DropdownMenu } ) &,\n\t[aria-disabled='true'] *:not( ${ DropdownMenu } ) & {\n\t\tcolor: inherit;\n\t}\n`;\n"],"mappings":"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"}
@@ -37,7 +37,7 @@ function UnforwardedExternalLink(props, ref) {
37
37
  props.onClick(event);
38
38
  }
39
39
  };
40
- return (/* eslint-disable react/jsx-no-target-blank */
40
+ return /* eslint-disable react/jsx-no-target-blank */(
41
41
  createElement("a", {
42
42
  ...additionalProps,
43
43
  className: classes,
@@ -208,8 +208,8 @@ export function FocalPointPicker({
208
208
  onChange?.(getFinalValue(value));
209
209
  };
210
210
  const focalPointPosition = {
211
- left: x * bounds.width,
212
- top: y * bounds.height
211
+ left: x !== undefined ? x * bounds.width : 0.5 * bounds.width,
212
+ top: y !== undefined ? y * bounds.height : 0.5 * bounds.height
213
213
  };
214
214
  const classes = classnames('components-focal-point-picker-control', className);
215
215
  const instanceId = useInstanceId(FocalPointPicker);
@@ -1 +1 @@
1
- {"version":3,"names":["classnames","__","useEffect","useRef","useState","__experimentalUseDragging","useDragging","useInstanceId","useIsomorphicLayoutEffect","BaseControl","Controls","FocalPoint","Grid","Media","MediaWrapper","MediaContainer","INITIAL_BOUNDS","useUpdateEffect","GRID_OVERLAY_TIMEOUT","FocalPointPicker","__nextHasNoMarginBottom","__next40pxDefaultSize","autoPlay","className","help","label","onChange","onDrag","onDragEnd","onDragStart","resolvePoint","url","value","valueProp","x","y","restProps","point","setPoint","showGridOverlay","setShowGridOverlay","startDrag","endDrag","isDragging","event","dragAreaRef","current","focus","getValueWithinDragArea","onDragMove","preventDefault","bounds","setBounds","refUpdateBounds","clientWidth","width","clientHeight","height","updateBounds","defaultView","ownerDocument","addEventListener","removeEventListener","clientX","clientY","shiftKey","top","left","getBoundingClientRect","nextX","nextY","Math","round","getFinalValue","_resolvePoint","resolvedValue","max","min","roundToTwoDecimalPlaces","n","arrowKeyStep","code","includes","step","delta","axis","focalPointPosition","classes","instanceId","id","timeout","window","setTimeout","clearTimeout","createElement","onKeyDown","onMouseDown","onBlur","ref","role","tabIndex","showOverlay","alt","onLoad","src","hasHelpText"],"sources":["@wordpress/components/src/focal-point-picker/index.tsx"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useEffect, useRef, useState } from '@wordpress/element';\nimport {\n\t__experimentalUseDragging as useDragging,\n\tuseInstanceId,\n\tuseIsomorphicLayoutEffect,\n} from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport BaseControl from '../base-control';\nimport Controls from './controls';\nimport FocalPoint from './focal-point';\nimport Grid from './grid';\nimport Media from './media';\nimport {\n\tMediaWrapper,\n\tMediaContainer,\n} from './styles/focal-point-picker-style';\nimport { INITIAL_BOUNDS } from './utils';\nimport { useUpdateEffect } from '../utils/hooks';\nimport type { WordPressComponentProps } from '../context/wordpress-component';\nimport type {\n\tFocalPoint as FocalPointType,\n\tFocalPointPickerProps,\n} from './types';\nimport type { KeyboardEventHandler } from 'react';\n\nconst GRID_OVERLAY_TIMEOUT = 600;\n\n/**\n * Focal Point Picker is a component which creates a UI for identifying the most important visual point of an image.\n *\n * This component addresses a specific problem: with large background images it is common to see undesirable crops,\n * especially when viewing on smaller viewports such as mobile phones. This component allows the selection of\n * the point with the most important visual information and returns it as a pair of numbers between 0 and 1.\n * This value can be easily converted into the CSS `background-position` attribute, and will ensure that the\n * focal point is never cropped out, regardless of viewport.\n *\n * - Example focal point picker value: `{ x: 0.5, y: 0.1 }`\n * - Corresponding CSS: `background-position: 50% 10%;`\n *\n * ```jsx\n * import { FocalPointPicker } from '@wordpress/components';\n * import { useState } from '@wordpress/element';\n *\n * const Example = () => {\n * \tconst [ focalPoint, setFocalPoint ] = useState( {\n * \t\tx: 0.5,\n * \t\ty: 0.5,\n * \t} );\n *\n * \tconst url = '/path/to/image';\n *\n * \t// Example function to render the CSS styles based on Focal Point Picker value\n * \tconst style = {\n * \t\tbackgroundImage: `url(${ url })`,\n * \t\tbackgroundPosition: `${ focalPoint.x * 100 }% ${ focalPoint.y * 100 }%`,\n * \t};\n *\n * \treturn (\n * \t\t<>\n * \t\t\t<FocalPointPicker\n * \t\t\t\turl={ url }\n * \t\t\t\tvalue={ focalPoint }\n * \t\t\t\tonDragStart={ setFocalPoint }\n * \t\t\t\tonDrag={ setFocalPoint }\n * \t\t\t\tonChange={ setFocalPoint }\n * \t\t\t/>\n * \t\t\t<div style={ style } />\n * \t\t</>\n * \t);\n * };\n * ```\n */\nexport function FocalPointPicker( {\n\t__nextHasNoMarginBottom,\n\t__next40pxDefaultSize = false,\n\tautoPlay = true,\n\tclassName,\n\thelp,\n\tlabel,\n\tonChange,\n\tonDrag,\n\tonDragEnd,\n\tonDragStart,\n\tresolvePoint,\n\turl,\n\tvalue: valueProp = {\n\t\tx: 0.5,\n\t\ty: 0.5,\n\t},\n\t...restProps\n}: WordPressComponentProps< FocalPointPickerProps, 'div', false > ) {\n\tconst [ point, setPoint ] = useState( valueProp );\n\tconst [ showGridOverlay, setShowGridOverlay ] = useState( false );\n\n\tconst { startDrag, endDrag, isDragging } = useDragging( {\n\t\tonDragStart: ( event ) => {\n\t\t\tdragAreaRef.current?.focus();\n\t\t\tconst value = getValueWithinDragArea( event );\n\n\t\t\t// `value` can technically be undefined if getValueWithinDragArea() is\n\t\t\t// called before dragAreaRef is set, but this shouldn't happen in reality.\n\t\t\tif ( ! value ) return;\n\n\t\t\tonDragStart?.( value, event );\n\t\t\tsetPoint( value );\n\t\t},\n\t\tonDragMove: ( event ) => {\n\t\t\t// Prevents text-selection when dragging.\n\t\t\tevent.preventDefault();\n\t\t\tconst value = getValueWithinDragArea( event );\n\t\t\tif ( ! value ) return;\n\t\t\tonDrag?.( value, event );\n\t\t\tsetPoint( value );\n\t\t},\n\t\tonDragEnd: () => {\n\t\t\tonDragEnd?.();\n\t\t\tonChange?.( point );\n\t\t},\n\t} );\n\n\t// Uses the internal point while dragging or else the value from props.\n\tconst { x, y } = isDragging ? point : valueProp;\n\n\tconst dragAreaRef = useRef< HTMLDivElement >( null );\n\tconst [ bounds, setBounds ] = useState( INITIAL_BOUNDS );\n\tconst refUpdateBounds = useRef( () => {\n\t\tif ( ! dragAreaRef.current ) return;\n\n\t\tconst { clientWidth: width, clientHeight: height } =\n\t\t\tdragAreaRef.current;\n\t\t// Falls back to initial bounds if the ref has no size. Since styles\n\t\t// give the drag area dimensions even when the media has not loaded\n\t\t// this should only happen in unit tests (jsdom).\n\t\tsetBounds(\n\t\t\twidth > 0 && height > 0 ? { width, height } : { ...INITIAL_BOUNDS }\n\t\t);\n\t} );\n\n\tuseEffect( () => {\n\t\tconst updateBounds = refUpdateBounds.current;\n\t\tif ( ! dragAreaRef.current ) return;\n\n\t\tconst { defaultView } = dragAreaRef.current.ownerDocument;\n\t\tdefaultView?.addEventListener( 'resize', updateBounds );\n\t\treturn () => defaultView?.removeEventListener( 'resize', updateBounds );\n\t}, [] );\n\n\t// Updates the bounds to cover cases of unspecified media or load failures.\n\tuseIsomorphicLayoutEffect( () => void refUpdateBounds.current(), [] );\n\n\t// TODO: Consider refactoring getValueWithinDragArea() into a pure function.\n\t// https://github.com/WordPress/gutenberg/pull/43872#discussion_r963455173\n\tconst getValueWithinDragArea = ( {\n\t\tclientX,\n\t\tclientY,\n\t\tshiftKey,\n\t}: {\n\t\tclientX: number;\n\t\tclientY: number;\n\t\tshiftKey: boolean;\n\t} ) => {\n\t\tif ( ! dragAreaRef.current ) return;\n\n\t\tconst { top, left } = dragAreaRef.current.getBoundingClientRect();\n\t\tlet nextX = ( clientX - left ) / bounds.width;\n\t\tlet nextY = ( clientY - top ) / bounds.height;\n\t\t// Enables holding shift to jump values by 10%.\n\t\tif ( shiftKey ) {\n\t\t\tnextX = Math.round( nextX / 0.1 ) * 0.1;\n\t\t\tnextY = Math.round( nextY / 0.1 ) * 0.1;\n\t\t}\n\t\treturn getFinalValue( { x: nextX, y: nextY } );\n\t};\n\n\tconst getFinalValue = ( value: FocalPointType ): FocalPointType => {\n\t\tconst resolvedValue = resolvePoint?.( value ) ?? value;\n\t\tresolvedValue.x = Math.max( 0, Math.min( resolvedValue.x, 1 ) );\n\t\tresolvedValue.y = Math.max( 0, Math.min( resolvedValue.y, 1 ) );\n\t\tconst roundToTwoDecimalPlaces = ( n: number ) =>\n\t\t\tMath.round( n * 1e2 ) / 1e2;\n\n\t\treturn {\n\t\t\tx: roundToTwoDecimalPlaces( resolvedValue.x ),\n\t\t\ty: roundToTwoDecimalPlaces( resolvedValue.y ),\n\t\t};\n\t};\n\n\tconst arrowKeyStep: KeyboardEventHandler< HTMLDivElement > = ( event ) => {\n\t\tconst { code, shiftKey } = event;\n\t\tif (\n\t\t\t! [ 'ArrowUp', 'ArrowDown', 'ArrowLeft', 'ArrowRight' ].includes(\n\t\t\t\tcode\n\t\t\t)\n\t\t)\n\t\t\treturn;\n\n\t\tevent.preventDefault();\n\t\tconst value = { x, y };\n\t\tconst step = shiftKey ? 0.1 : 0.01;\n\t\tconst delta =\n\t\t\tcode === 'ArrowUp' || code === 'ArrowLeft' ? -1 * step : step;\n\t\tconst axis = code === 'ArrowUp' || code === 'ArrowDown' ? 'y' : 'x';\n\t\tvalue[ axis ] = value[ axis ] + delta;\n\t\tonChange?.( getFinalValue( value ) );\n\t};\n\n\tconst focalPointPosition = {\n\t\tleft: x * bounds.width,\n\t\ttop: y * bounds.height,\n\t};\n\n\tconst classes = classnames(\n\t\t'components-focal-point-picker-control',\n\t\tclassName\n\t);\n\n\tconst instanceId = useInstanceId( FocalPointPicker );\n\tconst id = `inspector-focal-point-picker-control-${ instanceId }`;\n\n\tuseUpdateEffect( () => {\n\t\tsetShowGridOverlay( true );\n\t\tconst timeout = window.setTimeout( () => {\n\t\t\tsetShowGridOverlay( false );\n\t\t}, GRID_OVERLAY_TIMEOUT );\n\n\t\treturn () => window.clearTimeout( timeout );\n\t}, [ x, y ] );\n\n\treturn (\n\t\t<BaseControl\n\t\t\t{ ...restProps }\n\t\t\t__nextHasNoMarginBottom={ __nextHasNoMarginBottom }\n\t\t\tlabel={ label }\n\t\t\tid={ id }\n\t\t\thelp={ help }\n\t\t\tclassName={ classes }\n\t\t>\n\t\t\t<MediaWrapper className=\"components-focal-point-picker-wrapper\">\n\t\t\t\t<MediaContainer\n\t\t\t\t\tclassName=\"components-focal-point-picker\"\n\t\t\t\t\tonKeyDown={ arrowKeyStep }\n\t\t\t\t\tonMouseDown={ startDrag }\n\t\t\t\t\tonBlur={ () => {\n\t\t\t\t\t\tif ( isDragging ) endDrag();\n\t\t\t\t\t} }\n\t\t\t\t\tref={ dragAreaRef }\n\t\t\t\t\trole=\"button\"\n\t\t\t\t\ttabIndex={ -1 }\n\t\t\t\t>\n\t\t\t\t\t<Grid bounds={ bounds } showOverlay={ showGridOverlay } />\n\t\t\t\t\t<Media\n\t\t\t\t\t\talt={ __( 'Media preview' ) }\n\t\t\t\t\t\tautoPlay={ autoPlay }\n\t\t\t\t\t\tonLoad={ refUpdateBounds.current }\n\t\t\t\t\t\tsrc={ url }\n\t\t\t\t\t/>\n\t\t\t\t\t<FocalPoint\n\t\t\t\t\t\t{ ...focalPointPosition }\n\t\t\t\t\t\tisDragging={ isDragging }\n\t\t\t\t\t/>\n\t\t\t\t</MediaContainer>\n\t\t\t</MediaWrapper>\n\t\t\t<Controls\n\t\t\t\t__nextHasNoMarginBottom={ __nextHasNoMarginBottom }\n\t\t\t\t__next40pxDefaultSize={ __next40pxDefaultSize }\n\t\t\t\thasHelpText={ !! help }\n\t\t\t\tpoint={ { x, y } }\n\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\tonChange?.( getFinalValue( value ) );\n\t\t\t\t} }\n\t\t\t/>\n\t\t</BaseControl>\n\t);\n}\n\nexport default FocalPointPicker;\n"],"mappings":"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"}
1
+ {"version":3,"names":["classnames","__","useEffect","useRef","useState","__experimentalUseDragging","useDragging","useInstanceId","useIsomorphicLayoutEffect","BaseControl","Controls","FocalPoint","Grid","Media","MediaWrapper","MediaContainer","INITIAL_BOUNDS","useUpdateEffect","GRID_OVERLAY_TIMEOUT","FocalPointPicker","__nextHasNoMarginBottom","__next40pxDefaultSize","autoPlay","className","help","label","onChange","onDrag","onDragEnd","onDragStart","resolvePoint","url","value","valueProp","x","y","restProps","point","setPoint","showGridOverlay","setShowGridOverlay","startDrag","endDrag","isDragging","event","dragAreaRef","current","focus","getValueWithinDragArea","onDragMove","preventDefault","bounds","setBounds","refUpdateBounds","clientWidth","width","clientHeight","height","updateBounds","defaultView","ownerDocument","addEventListener","removeEventListener","clientX","clientY","shiftKey","top","left","getBoundingClientRect","nextX","nextY","Math","round","getFinalValue","_resolvePoint","resolvedValue","max","min","roundToTwoDecimalPlaces","n","arrowKeyStep","code","includes","step","delta","axis","focalPointPosition","undefined","classes","instanceId","id","timeout","window","setTimeout","clearTimeout","createElement","onKeyDown","onMouseDown","onBlur","ref","role","tabIndex","showOverlay","alt","onLoad","src","hasHelpText"],"sources":["@wordpress/components/src/focal-point-picker/index.tsx"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useEffect, useRef, useState } from '@wordpress/element';\nimport {\n\t__experimentalUseDragging as useDragging,\n\tuseInstanceId,\n\tuseIsomorphicLayoutEffect,\n} from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport BaseControl from '../base-control';\nimport Controls from './controls';\nimport FocalPoint from './focal-point';\nimport Grid from './grid';\nimport Media from './media';\nimport {\n\tMediaWrapper,\n\tMediaContainer,\n} from './styles/focal-point-picker-style';\nimport { INITIAL_BOUNDS } from './utils';\nimport { useUpdateEffect } from '../utils/hooks';\nimport type { WordPressComponentProps } from '../context/wordpress-component';\nimport type {\n\tFocalPoint as FocalPointType,\n\tFocalPointPickerProps,\n} from './types';\nimport type { KeyboardEventHandler } from 'react';\n\nconst GRID_OVERLAY_TIMEOUT = 600;\n\n/**\n * Focal Point Picker is a component which creates a UI for identifying the most important visual point of an image.\n *\n * This component addresses a specific problem: with large background images it is common to see undesirable crops,\n * especially when viewing on smaller viewports such as mobile phones. This component allows the selection of\n * the point with the most important visual information and returns it as a pair of numbers between 0 and 1.\n * This value can be easily converted into the CSS `background-position` attribute, and will ensure that the\n * focal point is never cropped out, regardless of viewport.\n *\n * - Example focal point picker value: `{ x: 0.5, y: 0.1 }`\n * - Corresponding CSS: `background-position: 50% 10%;`\n *\n * ```jsx\n * import { FocalPointPicker } from '@wordpress/components';\n * import { useState } from '@wordpress/element';\n *\n * const Example = () => {\n * \tconst [ focalPoint, setFocalPoint ] = useState( {\n * \t\tx: 0.5,\n * \t\ty: 0.5,\n * \t} );\n *\n * \tconst url = '/path/to/image';\n *\n * \t// Example function to render the CSS styles based on Focal Point Picker value\n * \tconst style = {\n * \t\tbackgroundImage: `url(${ url })`,\n * \t\tbackgroundPosition: `${ focalPoint.x * 100 }% ${ focalPoint.y * 100 }%`,\n * \t};\n *\n * \treturn (\n * \t\t<>\n * \t\t\t<FocalPointPicker\n * \t\t\t\turl={ url }\n * \t\t\t\tvalue={ focalPoint }\n * \t\t\t\tonDragStart={ setFocalPoint }\n * \t\t\t\tonDrag={ setFocalPoint }\n * \t\t\t\tonChange={ setFocalPoint }\n * \t\t\t/>\n * \t\t\t<div style={ style } />\n * \t\t</>\n * \t);\n * };\n * ```\n */\nexport function FocalPointPicker( {\n\t__nextHasNoMarginBottom,\n\t__next40pxDefaultSize = false,\n\tautoPlay = true,\n\tclassName,\n\thelp,\n\tlabel,\n\tonChange,\n\tonDrag,\n\tonDragEnd,\n\tonDragStart,\n\tresolvePoint,\n\turl,\n\tvalue: valueProp = {\n\t\tx: 0.5,\n\t\ty: 0.5,\n\t},\n\t...restProps\n}: WordPressComponentProps< FocalPointPickerProps, 'div', false > ) {\n\tconst [ point, setPoint ] = useState( valueProp );\n\tconst [ showGridOverlay, setShowGridOverlay ] = useState( false );\n\n\tconst { startDrag, endDrag, isDragging } = useDragging( {\n\t\tonDragStart: ( event ) => {\n\t\t\tdragAreaRef.current?.focus();\n\t\t\tconst value = getValueWithinDragArea( event );\n\n\t\t\t// `value` can technically be undefined if getValueWithinDragArea() is\n\t\t\t// called before dragAreaRef is set, but this shouldn't happen in reality.\n\t\t\tif ( ! value ) return;\n\n\t\t\tonDragStart?.( value, event );\n\t\t\tsetPoint( value );\n\t\t},\n\t\tonDragMove: ( event ) => {\n\t\t\t// Prevents text-selection when dragging.\n\t\t\tevent.preventDefault();\n\t\t\tconst value = getValueWithinDragArea( event );\n\t\t\tif ( ! value ) return;\n\t\t\tonDrag?.( value, event );\n\t\t\tsetPoint( value );\n\t\t},\n\t\tonDragEnd: () => {\n\t\t\tonDragEnd?.();\n\t\t\tonChange?.( point );\n\t\t},\n\t} );\n\n\t// Uses the internal point while dragging or else the value from props.\n\tconst { x, y } = isDragging ? point : valueProp;\n\n\tconst dragAreaRef = useRef< HTMLDivElement >( null );\n\tconst [ bounds, setBounds ] = useState( INITIAL_BOUNDS );\n\tconst refUpdateBounds = useRef( () => {\n\t\tif ( ! dragAreaRef.current ) return;\n\n\t\tconst { clientWidth: width, clientHeight: height } =\n\t\t\tdragAreaRef.current;\n\t\t// Falls back to initial bounds if the ref has no size. Since styles\n\t\t// give the drag area dimensions even when the media has not loaded\n\t\t// this should only happen in unit tests (jsdom).\n\t\tsetBounds(\n\t\t\twidth > 0 && height > 0 ? { width, height } : { ...INITIAL_BOUNDS }\n\t\t);\n\t} );\n\n\tuseEffect( () => {\n\t\tconst updateBounds = refUpdateBounds.current;\n\t\tif ( ! dragAreaRef.current ) return;\n\n\t\tconst { defaultView } = dragAreaRef.current.ownerDocument;\n\t\tdefaultView?.addEventListener( 'resize', updateBounds );\n\t\treturn () => defaultView?.removeEventListener( 'resize', updateBounds );\n\t}, [] );\n\n\t// Updates the bounds to cover cases of unspecified media or load failures.\n\tuseIsomorphicLayoutEffect( () => void refUpdateBounds.current(), [] );\n\n\t// TODO: Consider refactoring getValueWithinDragArea() into a pure function.\n\t// https://github.com/WordPress/gutenberg/pull/43872#discussion_r963455173\n\tconst getValueWithinDragArea = ( {\n\t\tclientX,\n\t\tclientY,\n\t\tshiftKey,\n\t}: {\n\t\tclientX: number;\n\t\tclientY: number;\n\t\tshiftKey: boolean;\n\t} ) => {\n\t\tif ( ! dragAreaRef.current ) return;\n\n\t\tconst { top, left } = dragAreaRef.current.getBoundingClientRect();\n\t\tlet nextX = ( clientX - left ) / bounds.width;\n\t\tlet nextY = ( clientY - top ) / bounds.height;\n\t\t// Enables holding shift to jump values by 10%.\n\t\tif ( shiftKey ) {\n\t\t\tnextX = Math.round( nextX / 0.1 ) * 0.1;\n\t\t\tnextY = Math.round( nextY / 0.1 ) * 0.1;\n\t\t}\n\t\treturn getFinalValue( { x: nextX, y: nextY } );\n\t};\n\n\tconst getFinalValue = ( value: FocalPointType ): FocalPointType => {\n\t\tconst resolvedValue = resolvePoint?.( value ) ?? value;\n\t\tresolvedValue.x = Math.max( 0, Math.min( resolvedValue.x, 1 ) );\n\t\tresolvedValue.y = Math.max( 0, Math.min( resolvedValue.y, 1 ) );\n\t\tconst roundToTwoDecimalPlaces = ( n: number ) =>\n\t\t\tMath.round( n * 1e2 ) / 1e2;\n\n\t\treturn {\n\t\t\tx: roundToTwoDecimalPlaces( resolvedValue.x ),\n\t\t\ty: roundToTwoDecimalPlaces( resolvedValue.y ),\n\t\t};\n\t};\n\n\tconst arrowKeyStep: KeyboardEventHandler< HTMLDivElement > = ( event ) => {\n\t\tconst { code, shiftKey } = event;\n\t\tif (\n\t\t\t! [ 'ArrowUp', 'ArrowDown', 'ArrowLeft', 'ArrowRight' ].includes(\n\t\t\t\tcode\n\t\t\t)\n\t\t)\n\t\t\treturn;\n\n\t\tevent.preventDefault();\n\t\tconst value = { x, y };\n\t\tconst step = shiftKey ? 0.1 : 0.01;\n\t\tconst delta =\n\t\t\tcode === 'ArrowUp' || code === 'ArrowLeft' ? -1 * step : step;\n\t\tconst axis = code === 'ArrowUp' || code === 'ArrowDown' ? 'y' : 'x';\n\t\tvalue[ axis ] = value[ axis ] + delta;\n\t\tonChange?.( getFinalValue( value ) );\n\t};\n\n\tconst focalPointPosition = {\n\t\tleft: x !== undefined ? x * bounds.width : 0.5 * bounds.width,\n\t\ttop: y !== undefined ? y * bounds.height : 0.5 * bounds.height,\n\t};\n\n\tconst classes = classnames(\n\t\t'components-focal-point-picker-control',\n\t\tclassName\n\t);\n\n\tconst instanceId = useInstanceId( FocalPointPicker );\n\tconst id = `inspector-focal-point-picker-control-${ instanceId }`;\n\n\tuseUpdateEffect( () => {\n\t\tsetShowGridOverlay( true );\n\t\tconst timeout = window.setTimeout( () => {\n\t\t\tsetShowGridOverlay( false );\n\t\t}, GRID_OVERLAY_TIMEOUT );\n\n\t\treturn () => window.clearTimeout( timeout );\n\t}, [ x, y ] );\n\n\treturn (\n\t\t<BaseControl\n\t\t\t{ ...restProps }\n\t\t\t__nextHasNoMarginBottom={ __nextHasNoMarginBottom }\n\t\t\tlabel={ label }\n\t\t\tid={ id }\n\t\t\thelp={ help }\n\t\t\tclassName={ classes }\n\t\t>\n\t\t\t<MediaWrapper className=\"components-focal-point-picker-wrapper\">\n\t\t\t\t<MediaContainer\n\t\t\t\t\tclassName=\"components-focal-point-picker\"\n\t\t\t\t\tonKeyDown={ arrowKeyStep }\n\t\t\t\t\tonMouseDown={ startDrag }\n\t\t\t\t\tonBlur={ () => {\n\t\t\t\t\t\tif ( isDragging ) endDrag();\n\t\t\t\t\t} }\n\t\t\t\t\tref={ dragAreaRef }\n\t\t\t\t\trole=\"button\"\n\t\t\t\t\ttabIndex={ -1 }\n\t\t\t\t>\n\t\t\t\t\t<Grid bounds={ bounds } showOverlay={ showGridOverlay } />\n\t\t\t\t\t<Media\n\t\t\t\t\t\talt={ __( 'Media preview' ) }\n\t\t\t\t\t\tautoPlay={ autoPlay }\n\t\t\t\t\t\tonLoad={ refUpdateBounds.current }\n\t\t\t\t\t\tsrc={ url }\n\t\t\t\t\t/>\n\t\t\t\t\t<FocalPoint\n\t\t\t\t\t\t{ ...focalPointPosition }\n\t\t\t\t\t\tisDragging={ isDragging }\n\t\t\t\t\t/>\n\t\t\t\t</MediaContainer>\n\t\t\t</MediaWrapper>\n\t\t\t<Controls\n\t\t\t\t__nextHasNoMarginBottom={ __nextHasNoMarginBottom }\n\t\t\t\t__next40pxDefaultSize={ __next40pxDefaultSize }\n\t\t\t\thasHelpText={ !! help }\n\t\t\t\tpoint={ { x, y } }\n\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\tonChange?.( getFinalValue( value ) );\n\t\t\t\t} }\n\t\t\t/>\n\t\t</BaseControl>\n\t);\n}\n\nexport default FocalPointPicker;\n"],"mappings":"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"}
@@ -92,7 +92,6 @@ function FocalPointPicker(props) {
92
92
  }); // Set cursor to tap location.
93
93
  pan.extractOffset(); // Set offset to current value.
94
94
  },
95
-
96
95
  // Move cursor to match delta drag.
97
96
  onPanResponderMove: Animated.event([null, {
98
97
  dx: pan.x,
@@ -1 +1 @@
1
- {"version":3,"names":["Animated","PanResponder","StyleSheet","View","Video","requestFocalPointPickerTooltipShown","setFocalPointPickerTooltipShown","__","Image","UnitControl","useRef","useState","useMemo","useEffect","usePreferredColorSchemeStyle","FocalPoint","Tooltip","styles","isVideoType","clamp","MIN_POSITION_VALUE","MAX_POSITION_VALUE","FOCAL_POINT_UNITS","default","label","value","FocalPointPicker","props","focalPoint","onChange","shouldEnableBottomSheetScroll","url","isVideo","containerSize","setContainerSize","sliderKey","setSliderKey","displayPlaceholder","setDisplayPlaceholder","videoNaturalSize","setVideoNaturalSize","tooltipVisible","setTooltipVisible","locationPageOffsetX","locationPageOffsetY","videoRef","tooltipShown","pan","ValueXY","current","setValue","x","width","y","height","panResponder","create","onStartShouldSetPanResponder","onStartShouldSetPanResponderCapture","onMoveShouldSetPanResponder","onMoveShouldSetPanResponderCapture","onPanResponderGrant","event","locationX","locationY","pageX","pageY","nativeEvent","extractOffset","onPanResponderMove","dx","dy","useNativeDriver","onPanResponderRelease","flattenOffset","toFixed","prevState","mediaBackground","mediaBackgroundDark","imagePreviewStyles","mediaPlaceholder","image","videoPreviewStyles","aspectRatio","opacity","video","focalPointGroupStyles","focalPointGroup","transform","translateX","interpolate","inputRange","outputRange","extrapolate","translateY","FOCAL_POINT_SIZE","focalPointStyles","flatten","marginLeft","marginTop","onTooltipPress","onMediaLayout","layout","onImageDataLoad","onVideoLoad","naturalSize","seek","onXCoordinateChange","onYCoordinateChange","createElement","style","container","onPress","visible","media","panHandlers","onLayout","mediaContainer","editButton","highlightSelected","isSelected","muted","paused","disableFocus","onLoad","ref","resizeMode","source","uri","pointerEvents","Label","text","yOffset","testID","key","max","min","unit","units","Math","round"],"sources":["@wordpress/components/src/focal-point-picker/index.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { Animated, PanResponder, StyleSheet, View } from 'react-native';\nimport Video from 'react-native-video';\n\n/**\n * WordPress dependencies\n */\nimport {\n\trequestFocalPointPickerTooltipShown,\n\tsetFocalPointPickerTooltipShown,\n} from '@wordpress/react-native-bridge';\nimport { __ } from '@wordpress/i18n';\nimport { Image, UnitControl } from '@wordpress/components';\nimport { useRef, useState, useMemo, useEffect } from '@wordpress/element';\nimport { usePreferredColorSchemeStyle } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport FocalPoint from './focal-point';\nimport Tooltip from './tooltip';\nimport styles from './style.scss';\nimport { isVideoType } from './utils';\nimport { clamp } from '../utils/math';\n\nconst MIN_POSITION_VALUE = 0;\nconst MAX_POSITION_VALUE = 100;\nconst FOCAL_POINT_UNITS = [ { default: 50, label: '%', value: '%' } ];\n\nfunction FocalPointPicker( props ) {\n\tconst { focalPoint, onChange, shouldEnableBottomSheetScroll, url } = props;\n\n\tconst isVideo = isVideoType( url );\n\n\tconst [ containerSize, setContainerSize ] = useState( null );\n\tconst [ sliderKey, setSliderKey ] = useState( 0 );\n\tconst [ displayPlaceholder, setDisplayPlaceholder ] = useState( true );\n\tconst [ videoNaturalSize, setVideoNaturalSize ] = useState( null );\n\tconst [ tooltipVisible, setTooltipVisible ] = useState( false );\n\n\tconst locationPageOffsetX = useRef();\n\tconst locationPageOffsetY = useRef();\n\tconst videoRef = useRef( null );\n\n\tuseEffect( () => {\n\t\trequestFocalPointPickerTooltipShown( ( tooltipShown ) => {\n\t\t\tif ( ! tooltipShown ) {\n\t\t\t\tsetTooltipVisible( true );\n\t\t\t\tsetFocalPointPickerTooltipShown( true );\n\t\t\t}\n\t\t} );\n\t}, [] );\n\n\t// Animated coordinates for drag handle.\n\tconst pan = useRef( new Animated.ValueXY() ).current;\n\n\t/**\n\t * Set drag handle position anytime focal point coordinates change.\n\t * E.g. initial render, dragging range sliders.\n\t */\n\tuseEffect( () => {\n\t\tif ( containerSize ) {\n\t\t\tpan.setValue( {\n\t\t\t\tx: focalPoint.x * containerSize.width,\n\t\t\t\ty: focalPoint.y * containerSize.height,\n\t\t\t} );\n\t\t}\n\t}, [ focalPoint, containerSize, pan ] );\n\n\t// Pan responder to manage drag handle interactivity.\n\tconst panResponder = useMemo(\n\t\t() =>\n\t\t\tPanResponder.create( {\n\t\t\t\tonStartShouldSetPanResponder: () => true,\n\t\t\t\tonStartShouldSetPanResponderCapture: () => true,\n\t\t\t\tonMoveShouldSetPanResponder: () => true,\n\t\t\t\tonMoveShouldSetPanResponderCapture: () => true,\n\n\t\t\t\tonPanResponderGrant: ( event ) => {\n\t\t\t\t\tshouldEnableBottomSheetScroll( false );\n\t\t\t\t\tconst {\n\t\t\t\t\t\tlocationX: x,\n\t\t\t\t\t\tlocationY: y,\n\t\t\t\t\t\tpageX,\n\t\t\t\t\t\tpageY,\n\t\t\t\t\t} = event.nativeEvent;\n\t\t\t\t\tlocationPageOffsetX.current = pageX - x;\n\t\t\t\t\tlocationPageOffsetY.current = pageY - y;\n\t\t\t\t\tpan.setValue( { x, y } ); // Set cursor to tap location.\n\t\t\t\t\tpan.extractOffset(); // Set offset to current value.\n\t\t\t\t},\n\t\t\t\t// Move cursor to match delta drag.\n\t\t\t\tonPanResponderMove: Animated.event(\n\t\t\t\t\t[ null, { dx: pan.x, dy: pan.y } ],\n\t\t\t\t\t{ useNativeDriver: false }\n\t\t\t\t),\n\t\t\t\tonPanResponderRelease: ( event ) => {\n\t\t\t\t\tshouldEnableBottomSheetScroll( true );\n\t\t\t\t\tpan.flattenOffset(); // Flatten offset into value.\n\t\t\t\t\tconst { pageX, pageY } = event.nativeEvent;\n\t\t\t\t\t// Ideally, x and y below are merely locationX and locationY from the\n\t\t\t\t\t// nativeEvent. However, we are required to compute these relative\n\t\t\t\t\t// coordinates to workaround a bug affecting Android's PanResponder.\n\t\t\t\t\t// Specifically, dragging the handle outside the bounds of the image\n\t\t\t\t\t// results in inaccurate locationX and locationY coordinates to be\n\t\t\t\t\t// reported. https://github.com/facebook/react-native/issues/15290#issuecomment-435494944\n\t\t\t\t\tconst x = pageX - locationPageOffsetX.current;\n\t\t\t\t\tconst y = pageY - locationPageOffsetY.current;\n\t\t\t\t\tonChange( {\n\t\t\t\t\t\tx: clamp( x / containerSize?.width, 0, 1 ).toFixed( 2 ),\n\t\t\t\t\t\ty: clamp( y / containerSize?.height, 0, 1 ).toFixed(\n\t\t\t\t\t\t\t2\n\t\t\t\t\t\t),\n\t\t\t\t\t} );\n\t\t\t\t\t// Slider (child of RangeCell) is uncontrolled, so we must increment a\n\t\t\t\t\t// key to re-mount and sync the pan gesture values to the sliders\n\t\t\t\t\t// https://github.com/callstack/react-native-slider/tree/v3.0.3#value\n\t\t\t\t\tsetSliderKey( ( prevState ) => prevState + 1 );\n\t\t\t\t},\n\t\t\t} ),\n\t\t[ containerSize, pan, onChange, shouldEnableBottomSheetScroll ]\n\t);\n\n\tconst mediaBackground = usePreferredColorSchemeStyle(\n\t\tstyles.mediaBackground,\n\t\tstyles.mediaBackgroundDark\n\t);\n\tconst imagePreviewStyles = [\n\t\tdisplayPlaceholder && styles.mediaPlaceholder,\n\t\tstyles.image,\n\t];\n\tconst videoPreviewStyles = [\n\t\t{\n\t\t\taspectRatio:\n\t\t\t\tvideoNaturalSize &&\n\t\t\t\tvideoNaturalSize.width / videoNaturalSize.height,\n\t\t\t// Hide Video component since it has black background while loading the source\n\t\t\topacity: displayPlaceholder ? 0 : 1,\n\t\t},\n\t\tstyles.video,\n\t\tdisplayPlaceholder && styles.mediaPlaceholder,\n\t];\n\tconst focalPointGroupStyles = [\n\t\tstyles.focalPointGroup,\n\t\t{\n\t\t\ttransform: [\n\t\t\t\t{\n\t\t\t\t\ttranslateX: pan.x.interpolate( {\n\t\t\t\t\t\tinputRange: [ 0, containerSize?.width || 0 ],\n\t\t\t\t\t\toutputRange: [ 0, containerSize?.width || 0 ],\n\t\t\t\t\t\textrapolate: 'clamp',\n\t\t\t\t\t} ),\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\ttranslateY: pan.y.interpolate( {\n\t\t\t\t\t\tinputRange: [ 0, containerSize?.height || 0 ],\n\t\t\t\t\t\toutputRange: [ 0, containerSize?.height || 0 ],\n\t\t\t\t\t\textrapolate: 'clamp',\n\t\t\t\t\t} ),\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t];\n\tconst FOCAL_POINT_SIZE = 50;\n\tconst focalPointStyles = StyleSheet.flatten( [\n\t\tstyles.focalPoint,\n\t\t{\n\t\t\theight: FOCAL_POINT_SIZE,\n\t\t\tmarginLeft: -( FOCAL_POINT_SIZE / 2 ),\n\t\t\tmarginTop: -( FOCAL_POINT_SIZE / 2 ),\n\t\t\twidth: FOCAL_POINT_SIZE,\n\t\t},\n\t] );\n\n\tconst onTooltipPress = () => setTooltipVisible( false );\n\tconst onMediaLayout = ( event ) => {\n\t\tconst { height, width } = event.nativeEvent.layout;\n\n\t\tif (\n\t\t\twidth !== 0 &&\n\t\t\theight !== 0 &&\n\t\t\t( containerSize?.width !== width ||\n\t\t\t\tcontainerSize?.height !== height )\n\t\t) {\n\t\t\tsetContainerSize( { width, height } );\n\t\t}\n\t};\n\tconst onImageDataLoad = () => setDisplayPlaceholder( false );\n\tconst onVideoLoad = ( event ) => {\n\t\tconst { height, width } = event.naturalSize;\n\t\tsetVideoNaturalSize( { height, width } );\n\t\tsetDisplayPlaceholder( false );\n\t\t// Avoid invisible, paused video on Android, presumably related to\n\t\t// https://github.com/react-native-video/react-native-video/issues/1979\n\t\tvideoRef?.current.seek( 0 );\n\t};\n\tconst onXCoordinateChange = ( x ) =>\n\t\tonChange( { x: ( x / 100 ).toFixed( 2 ) } );\n\tconst onYCoordinateChange = ( y ) =>\n\t\tonChange( { y: ( y / 100 ).toFixed( 2 ) } );\n\n\treturn (\n\t\t<View style={ styles.container }>\n\t\t\t<Tooltip onPress={ onTooltipPress } visible={ tooltipVisible }>\n\t\t\t\t<View style={ [ styles.media, mediaBackground ] }>\n\t\t\t\t\t<View\n\t\t\t\t\t\t{ ...panResponder.panHandlers }\n\t\t\t\t\t\tonLayout={ onMediaLayout }\n\t\t\t\t\t\tstyle={ styles.mediaContainer }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ ! isVideo && (\n\t\t\t\t\t\t\t<Image\n\t\t\t\t\t\t\t\teditButton={ false }\n\t\t\t\t\t\t\t\thighlightSelected={ false }\n\t\t\t\t\t\t\t\tisSelected={ ! displayPlaceholder }\n\t\t\t\t\t\t\t\theight=\"100%\"\n\t\t\t\t\t\t\t\turl={ url }\n\t\t\t\t\t\t\t\tstyle={ imagePreviewStyles }\n\t\t\t\t\t\t\t\tonImageDataLoad={ onImageDataLoad }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ isVideo && (\n\t\t\t\t\t\t\t<Video\n\t\t\t\t\t\t\t\tmuted\n\t\t\t\t\t\t\t\tpaused\n\t\t\t\t\t\t\t\tdisableFocus\n\t\t\t\t\t\t\t\tonLoad={ onVideoLoad }\n\t\t\t\t\t\t\t\tref={ videoRef }\n\t\t\t\t\t\t\t\tresizeMode=\"contain\"\n\t\t\t\t\t\t\t\tsource={ { uri: url } }\n\t\t\t\t\t\t\t\tstyle={ videoPreviewStyles }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ ! displayPlaceholder && (\n\t\t\t\t\t\t\t<Animated.View\n\t\t\t\t\t\t\t\tpointerEvents=\"none\"\n\t\t\t\t\t\t\t\tstyle={ focalPointGroupStyles }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<Tooltip.Label\n\t\t\t\t\t\t\t\t\ttext={ __( 'Drag to adjust focal point' ) }\n\t\t\t\t\t\t\t\t\tyOffset={ -( FOCAL_POINT_SIZE / 2 ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<FocalPoint\n\t\t\t\t\t\t\t\t\theight={ focalPointStyles.height }\n\t\t\t\t\t\t\t\t\tstyle={ focalPointStyles }\n\t\t\t\t\t\t\t\t\ttestID=\"focal-point-picker-handle\"\n\t\t\t\t\t\t\t\t\twidth={ focalPointStyles.width }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</Animated.View>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</View>\n\t\t\t\t</View>\n\t\t\t\t<UnitControl\n\t\t\t\t\tkey={ `xAxis-${ sliderKey }` }\n\t\t\t\t\tlabel={ __( 'X-Axis Position' ) }\n\t\t\t\t\tmax={ MAX_POSITION_VALUE }\n\t\t\t\t\tmin={ MIN_POSITION_VALUE }\n\t\t\t\t\tonChange={ onXCoordinateChange }\n\t\t\t\t\tunit=\"%\"\n\t\t\t\t\tunits={ FOCAL_POINT_UNITS }\n\t\t\t\t\tvalue={ Math.round( focalPoint.x * 100 ) }\n\t\t\t\t/>\n\t\t\t\t<UnitControl\n\t\t\t\t\tkey={ `yAxis-${ sliderKey }` }\n\t\t\t\t\tlabel={ __( 'Y-Axis Position' ) }\n\t\t\t\t\tmax={ MAX_POSITION_VALUE }\n\t\t\t\t\tmin={ MIN_POSITION_VALUE }\n\t\t\t\t\tonChange={ onYCoordinateChange }\n\t\t\t\t\tunit=\"%\"\n\t\t\t\t\tunits={ FOCAL_POINT_UNITS }\n\t\t\t\t\tvalue={ Math.round( focalPoint.y * 100 ) }\n\t\t\t\t/>\n\t\t\t</Tooltip>\n\t\t</View>\n\t);\n}\n\nexport default FocalPointPicker;\n"],"mappings":"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"}
1
+ {"version":3,"names":["Animated","PanResponder","StyleSheet","View","Video","requestFocalPointPickerTooltipShown","setFocalPointPickerTooltipShown","__","Image","UnitControl","useRef","useState","useMemo","useEffect","usePreferredColorSchemeStyle","FocalPoint","Tooltip","styles","isVideoType","clamp","MIN_POSITION_VALUE","MAX_POSITION_VALUE","FOCAL_POINT_UNITS","default","label","value","FocalPointPicker","props","focalPoint","onChange","shouldEnableBottomSheetScroll","url","isVideo","containerSize","setContainerSize","sliderKey","setSliderKey","displayPlaceholder","setDisplayPlaceholder","videoNaturalSize","setVideoNaturalSize","tooltipVisible","setTooltipVisible","locationPageOffsetX","locationPageOffsetY","videoRef","tooltipShown","pan","ValueXY","current","setValue","x","width","y","height","panResponder","create","onStartShouldSetPanResponder","onStartShouldSetPanResponderCapture","onMoveShouldSetPanResponder","onMoveShouldSetPanResponderCapture","onPanResponderGrant","event","locationX","locationY","pageX","pageY","nativeEvent","extractOffset","onPanResponderMove","dx","dy","useNativeDriver","onPanResponderRelease","flattenOffset","toFixed","prevState","mediaBackground","mediaBackgroundDark","imagePreviewStyles","mediaPlaceholder","image","videoPreviewStyles","aspectRatio","opacity","video","focalPointGroupStyles","focalPointGroup","transform","translateX","interpolate","inputRange","outputRange","extrapolate","translateY","FOCAL_POINT_SIZE","focalPointStyles","flatten","marginLeft","marginTop","onTooltipPress","onMediaLayout","layout","onImageDataLoad","onVideoLoad","naturalSize","seek","onXCoordinateChange","onYCoordinateChange","createElement","style","container","onPress","visible","media","panHandlers","onLayout","mediaContainer","editButton","highlightSelected","isSelected","muted","paused","disableFocus","onLoad","ref","resizeMode","source","uri","pointerEvents","Label","text","yOffset","testID","key","max","min","unit","units","Math","round"],"sources":["@wordpress/components/src/focal-point-picker/index.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { Animated, PanResponder, StyleSheet, View } from 'react-native';\nimport Video from 'react-native-video';\n\n/**\n * WordPress dependencies\n */\nimport {\n\trequestFocalPointPickerTooltipShown,\n\tsetFocalPointPickerTooltipShown,\n} from '@wordpress/react-native-bridge';\nimport { __ } from '@wordpress/i18n';\nimport { Image, UnitControl } from '@wordpress/components';\nimport { useRef, useState, useMemo, useEffect } from '@wordpress/element';\nimport { usePreferredColorSchemeStyle } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport FocalPoint from './focal-point';\nimport Tooltip from './tooltip';\nimport styles from './style.scss';\nimport { isVideoType } from './utils';\nimport { clamp } from '../utils/math';\n\nconst MIN_POSITION_VALUE = 0;\nconst MAX_POSITION_VALUE = 100;\nconst FOCAL_POINT_UNITS = [ { default: 50, label: '%', value: '%' } ];\n\nfunction FocalPointPicker( props ) {\n\tconst { focalPoint, onChange, shouldEnableBottomSheetScroll, url } = props;\n\n\tconst isVideo = isVideoType( url );\n\n\tconst [ containerSize, setContainerSize ] = useState( null );\n\tconst [ sliderKey, setSliderKey ] = useState( 0 );\n\tconst [ displayPlaceholder, setDisplayPlaceholder ] = useState( true );\n\tconst [ videoNaturalSize, setVideoNaturalSize ] = useState( null );\n\tconst [ tooltipVisible, setTooltipVisible ] = useState( false );\n\n\tconst locationPageOffsetX = useRef();\n\tconst locationPageOffsetY = useRef();\n\tconst videoRef = useRef( null );\n\n\tuseEffect( () => {\n\t\trequestFocalPointPickerTooltipShown( ( tooltipShown ) => {\n\t\t\tif ( ! tooltipShown ) {\n\t\t\t\tsetTooltipVisible( true );\n\t\t\t\tsetFocalPointPickerTooltipShown( true );\n\t\t\t}\n\t\t} );\n\t}, [] );\n\n\t// Animated coordinates for drag handle.\n\tconst pan = useRef( new Animated.ValueXY() ).current;\n\n\t/**\n\t * Set drag handle position anytime focal point coordinates change.\n\t * E.g. initial render, dragging range sliders.\n\t */\n\tuseEffect( () => {\n\t\tif ( containerSize ) {\n\t\t\tpan.setValue( {\n\t\t\t\tx: focalPoint.x * containerSize.width,\n\t\t\t\ty: focalPoint.y * containerSize.height,\n\t\t\t} );\n\t\t}\n\t}, [ focalPoint, containerSize, pan ] );\n\n\t// Pan responder to manage drag handle interactivity.\n\tconst panResponder = useMemo(\n\t\t() =>\n\t\t\tPanResponder.create( {\n\t\t\t\tonStartShouldSetPanResponder: () => true,\n\t\t\t\tonStartShouldSetPanResponderCapture: () => true,\n\t\t\t\tonMoveShouldSetPanResponder: () => true,\n\t\t\t\tonMoveShouldSetPanResponderCapture: () => true,\n\n\t\t\t\tonPanResponderGrant: ( event ) => {\n\t\t\t\t\tshouldEnableBottomSheetScroll( false );\n\t\t\t\t\tconst {\n\t\t\t\t\t\tlocationX: x,\n\t\t\t\t\t\tlocationY: y,\n\t\t\t\t\t\tpageX,\n\t\t\t\t\t\tpageY,\n\t\t\t\t\t} = event.nativeEvent;\n\t\t\t\t\tlocationPageOffsetX.current = pageX - x;\n\t\t\t\t\tlocationPageOffsetY.current = pageY - y;\n\t\t\t\t\tpan.setValue( { x, y } ); // Set cursor to tap location.\n\t\t\t\t\tpan.extractOffset(); // Set offset to current value.\n\t\t\t\t},\n\t\t\t\t// Move cursor to match delta drag.\n\t\t\t\tonPanResponderMove: Animated.event(\n\t\t\t\t\t[ null, { dx: pan.x, dy: pan.y } ],\n\t\t\t\t\t{ useNativeDriver: false }\n\t\t\t\t),\n\t\t\t\tonPanResponderRelease: ( event ) => {\n\t\t\t\t\tshouldEnableBottomSheetScroll( true );\n\t\t\t\t\tpan.flattenOffset(); // Flatten offset into value.\n\t\t\t\t\tconst { pageX, pageY } = event.nativeEvent;\n\t\t\t\t\t// Ideally, x and y below are merely locationX and locationY from the\n\t\t\t\t\t// nativeEvent. However, we are required to compute these relative\n\t\t\t\t\t// coordinates to workaround a bug affecting Android's PanResponder.\n\t\t\t\t\t// Specifically, dragging the handle outside the bounds of the image\n\t\t\t\t\t// results in inaccurate locationX and locationY coordinates to be\n\t\t\t\t\t// reported. https://github.com/facebook/react-native/issues/15290#issuecomment-435494944\n\t\t\t\t\tconst x = pageX - locationPageOffsetX.current;\n\t\t\t\t\tconst y = pageY - locationPageOffsetY.current;\n\t\t\t\t\tonChange( {\n\t\t\t\t\t\tx: clamp( x / containerSize?.width, 0, 1 ).toFixed( 2 ),\n\t\t\t\t\t\ty: clamp( y / containerSize?.height, 0, 1 ).toFixed(\n\t\t\t\t\t\t\t2\n\t\t\t\t\t\t),\n\t\t\t\t\t} );\n\t\t\t\t\t// Slider (child of RangeCell) is uncontrolled, so we must increment a\n\t\t\t\t\t// key to re-mount and sync the pan gesture values to the sliders\n\t\t\t\t\t// https://github.com/callstack/react-native-slider/tree/v3.0.3#value\n\t\t\t\t\tsetSliderKey( ( prevState ) => prevState + 1 );\n\t\t\t\t},\n\t\t\t} ),\n\t\t[ containerSize, pan, onChange, shouldEnableBottomSheetScroll ]\n\t);\n\n\tconst mediaBackground = usePreferredColorSchemeStyle(\n\t\tstyles.mediaBackground,\n\t\tstyles.mediaBackgroundDark\n\t);\n\tconst imagePreviewStyles = [\n\t\tdisplayPlaceholder && styles.mediaPlaceholder,\n\t\tstyles.image,\n\t];\n\tconst videoPreviewStyles = [\n\t\t{\n\t\t\taspectRatio:\n\t\t\t\tvideoNaturalSize &&\n\t\t\t\tvideoNaturalSize.width / videoNaturalSize.height,\n\t\t\t// Hide Video component since it has black background while loading the source\n\t\t\topacity: displayPlaceholder ? 0 : 1,\n\t\t},\n\t\tstyles.video,\n\t\tdisplayPlaceholder && styles.mediaPlaceholder,\n\t];\n\tconst focalPointGroupStyles = [\n\t\tstyles.focalPointGroup,\n\t\t{\n\t\t\ttransform: [\n\t\t\t\t{\n\t\t\t\t\ttranslateX: pan.x.interpolate( {\n\t\t\t\t\t\tinputRange: [ 0, containerSize?.width || 0 ],\n\t\t\t\t\t\toutputRange: [ 0, containerSize?.width || 0 ],\n\t\t\t\t\t\textrapolate: 'clamp',\n\t\t\t\t\t} ),\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\ttranslateY: pan.y.interpolate( {\n\t\t\t\t\t\tinputRange: [ 0, containerSize?.height || 0 ],\n\t\t\t\t\t\toutputRange: [ 0, containerSize?.height || 0 ],\n\t\t\t\t\t\textrapolate: 'clamp',\n\t\t\t\t\t} ),\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t];\n\tconst FOCAL_POINT_SIZE = 50;\n\tconst focalPointStyles = StyleSheet.flatten( [\n\t\tstyles.focalPoint,\n\t\t{\n\t\t\theight: FOCAL_POINT_SIZE,\n\t\t\tmarginLeft: -( FOCAL_POINT_SIZE / 2 ),\n\t\t\tmarginTop: -( FOCAL_POINT_SIZE / 2 ),\n\t\t\twidth: FOCAL_POINT_SIZE,\n\t\t},\n\t] );\n\n\tconst onTooltipPress = () => setTooltipVisible( false );\n\tconst onMediaLayout = ( event ) => {\n\t\tconst { height, width } = event.nativeEvent.layout;\n\n\t\tif (\n\t\t\twidth !== 0 &&\n\t\t\theight !== 0 &&\n\t\t\t( containerSize?.width !== width ||\n\t\t\t\tcontainerSize?.height !== height )\n\t\t) {\n\t\t\tsetContainerSize( { width, height } );\n\t\t}\n\t};\n\tconst onImageDataLoad = () => setDisplayPlaceholder( false );\n\tconst onVideoLoad = ( event ) => {\n\t\tconst { height, width } = event.naturalSize;\n\t\tsetVideoNaturalSize( { height, width } );\n\t\tsetDisplayPlaceholder( false );\n\t\t// Avoid invisible, paused video on Android, presumably related to\n\t\t// https://github.com/react-native-video/react-native-video/issues/1979\n\t\tvideoRef?.current.seek( 0 );\n\t};\n\tconst onXCoordinateChange = ( x ) =>\n\t\tonChange( { x: ( x / 100 ).toFixed( 2 ) } );\n\tconst onYCoordinateChange = ( y ) =>\n\t\tonChange( { y: ( y / 100 ).toFixed( 2 ) } );\n\n\treturn (\n\t\t<View style={ styles.container }>\n\t\t\t<Tooltip onPress={ onTooltipPress } visible={ tooltipVisible }>\n\t\t\t\t<View style={ [ styles.media, mediaBackground ] }>\n\t\t\t\t\t<View\n\t\t\t\t\t\t{ ...panResponder.panHandlers }\n\t\t\t\t\t\tonLayout={ onMediaLayout }\n\t\t\t\t\t\tstyle={ styles.mediaContainer }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ ! isVideo && (\n\t\t\t\t\t\t\t<Image\n\t\t\t\t\t\t\t\teditButton={ false }\n\t\t\t\t\t\t\t\thighlightSelected={ false }\n\t\t\t\t\t\t\t\tisSelected={ ! displayPlaceholder }\n\t\t\t\t\t\t\t\theight=\"100%\"\n\t\t\t\t\t\t\t\turl={ url }\n\t\t\t\t\t\t\t\tstyle={ imagePreviewStyles }\n\t\t\t\t\t\t\t\tonImageDataLoad={ onImageDataLoad }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ isVideo && (\n\t\t\t\t\t\t\t<Video\n\t\t\t\t\t\t\t\tmuted\n\t\t\t\t\t\t\t\tpaused\n\t\t\t\t\t\t\t\tdisableFocus\n\t\t\t\t\t\t\t\tonLoad={ onVideoLoad }\n\t\t\t\t\t\t\t\tref={ videoRef }\n\t\t\t\t\t\t\t\tresizeMode=\"contain\"\n\t\t\t\t\t\t\t\tsource={ { uri: url } }\n\t\t\t\t\t\t\t\tstyle={ videoPreviewStyles }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ ! displayPlaceholder && (\n\t\t\t\t\t\t\t<Animated.View\n\t\t\t\t\t\t\t\tpointerEvents=\"none\"\n\t\t\t\t\t\t\t\tstyle={ focalPointGroupStyles }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<Tooltip.Label\n\t\t\t\t\t\t\t\t\ttext={ __( 'Drag to adjust focal point' ) }\n\t\t\t\t\t\t\t\t\tyOffset={ -( FOCAL_POINT_SIZE / 2 ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<FocalPoint\n\t\t\t\t\t\t\t\t\theight={ focalPointStyles.height }\n\t\t\t\t\t\t\t\t\tstyle={ focalPointStyles }\n\t\t\t\t\t\t\t\t\ttestID=\"focal-point-picker-handle\"\n\t\t\t\t\t\t\t\t\twidth={ focalPointStyles.width }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</Animated.View>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</View>\n\t\t\t\t</View>\n\t\t\t\t<UnitControl\n\t\t\t\t\tkey={ `xAxis-${ sliderKey }` }\n\t\t\t\t\tlabel={ __( 'X-Axis Position' ) }\n\t\t\t\t\tmax={ MAX_POSITION_VALUE }\n\t\t\t\t\tmin={ MIN_POSITION_VALUE }\n\t\t\t\t\tonChange={ onXCoordinateChange }\n\t\t\t\t\tunit=\"%\"\n\t\t\t\t\tunits={ FOCAL_POINT_UNITS }\n\t\t\t\t\tvalue={ Math.round( focalPoint.x * 100 ) }\n\t\t\t\t/>\n\t\t\t\t<UnitControl\n\t\t\t\t\tkey={ `yAxis-${ sliderKey }` }\n\t\t\t\t\tlabel={ __( 'Y-Axis Position' ) }\n\t\t\t\t\tmax={ MAX_POSITION_VALUE }\n\t\t\t\t\tmin={ MIN_POSITION_VALUE }\n\t\t\t\t\tonChange={ onYCoordinateChange }\n\t\t\t\t\tunit=\"%\"\n\t\t\t\t\tunits={ FOCAL_POINT_UNITS }\n\t\t\t\t\tvalue={ Math.round( focalPoint.y * 100 ) }\n\t\t\t\t/>\n\t\t\t</Tooltip>\n\t\t</View>\n\t);\n}\n\nexport default FocalPointPicker;\n"],"mappings":"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"}