@wordpress/components 19.0.0 → 19.0.4

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 (1440) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/CONTRIBUTING.md +12 -12
  3. package/README.md +1 -0
  4. package/build/alignment-matrix-control/cell.js +6 -5
  5. package/build/alignment-matrix-control/cell.js.map +1 -1
  6. package/build/alignment-matrix-control/icon.js +9 -8
  7. package/build/alignment-matrix-control/icon.js.map +1 -1
  8. package/build/alignment-matrix-control/index.js +11 -10
  9. package/build/alignment-matrix-control/index.js.map +1 -1
  10. package/build/alignment-matrix-control/styles/alignment-matrix-control-icon-styles.js +9 -7
  11. package/build/alignment-matrix-control/styles/alignment-matrix-control-icon-styles.js.map +1 -1
  12. package/build/alignment-matrix-control/styles/alignment-matrix-control-styles.js +9 -7
  13. package/build/alignment-matrix-control/styles/alignment-matrix-control-styles.js.map +1 -1
  14. package/build/alignment-matrix-control/utils.js +5 -4
  15. package/build/alignment-matrix-control/utils.js.map +1 -1
  16. package/build/angle-picker-control/angle-circle.js +6 -5
  17. package/build/angle-picker-control/angle-circle.js.map +1 -1
  18. package/build/angle-picker-control/index.js +11 -7
  19. package/build/angle-picker-control/index.js.map +1 -1
  20. package/build/angle-picker-control/styles/angle-picker-control-styles.js +5 -5
  21. package/build/angle-picker-control/styles/angle-picker-control-styles.js.map +1 -1
  22. package/build/animate/index.js +7 -6
  23. package/build/animate/index.js.map +1 -1
  24. package/build/animation/index.js +6 -6
  25. package/build/autocomplete/autocompleter-ui.js +13 -12
  26. package/build/autocomplete/autocompleter-ui.js.map +1 -1
  27. package/build/autocomplete/autocompleter-ui.native.js +15 -12
  28. package/build/autocomplete/autocompleter-ui.native.js.map +1 -1
  29. package/build/autocomplete/background-view.android.js +4 -3
  30. package/build/autocomplete/background-view.android.js.map +1 -1
  31. package/build/autocomplete/background-view.ios.js +4 -3
  32. package/build/autocomplete/background-view.ios.js.map +1 -1
  33. package/build/autocomplete/get-default-use-items.js +3 -1
  34. package/build/autocomplete/get-default-use-items.js.map +1 -1
  35. package/build/autocomplete/index.js +20 -17
  36. package/build/autocomplete/index.js.map +1 -1
  37. package/build/base-control/index.js +15 -13
  38. package/build/base-control/index.js.map +1 -1
  39. package/build/base-control/index.native.js +6 -5
  40. package/build/base-control/index.native.js.map +1 -1
  41. package/build/base-control/styles/base-control-styles.js +1 -1
  42. package/build/base-field/hook.js +4 -2
  43. package/build/base-field/hook.js.map +1 -1
  44. package/build/base-field/styles.js +1 -1
  45. package/build/box-control/all-input-control.js +12 -11
  46. package/build/box-control/all-input-control.js.map +1 -1
  47. package/build/box-control/axial-input-controls.js +13 -11
  48. package/build/box-control/axial-input-controls.js.map +1 -1
  49. package/build/box-control/icon.js +8 -6
  50. package/build/box-control/icon.js.map +1 -1
  51. package/build/box-control/index.js +22 -18
  52. package/build/box-control/index.js.map +1 -1
  53. package/build/box-control/input-controls.js +17 -14
  54. package/build/box-control/input-controls.js.map +1 -1
  55. package/build/box-control/linked-button.js +5 -4
  56. package/build/box-control/linked-button.js.map +1 -1
  57. package/build/box-control/styles/box-control-icon-styles.js +5 -4
  58. package/build/box-control/styles/box-control-icon-styles.js.map +1 -1
  59. package/build/box-control/styles/box-control-styles.js +13 -10
  60. package/build/box-control/styles/box-control-styles.js.map +1 -1
  61. package/build/box-control/styles/box-control-visualizer-styles.js +12 -8
  62. package/build/box-control/styles/box-control-visualizer-styles.js.map +1 -1
  63. package/build/box-control/unit-control.js +22 -18
  64. package/build/box-control/unit-control.js.map +1 -1
  65. package/build/box-control/utils.js +10 -6
  66. package/build/box-control/utils.js.map +1 -1
  67. package/build/box-control/visualizer.js +32 -26
  68. package/build/box-control/visualizer.js.map +1 -1
  69. package/build/button/deprecated.js +8 -7
  70. package/build/button/deprecated.js.map +1 -1
  71. package/build/button/index.js +10 -9
  72. package/build/button/index.js.map +1 -1
  73. package/build/button-group/index.js +5 -4
  74. package/build/button-group/index.js.map +1 -1
  75. package/build/card/card/component.js +4 -2
  76. package/build/card/card/component.js.map +1 -1
  77. package/build/card/card/hook.js +11 -7
  78. package/build/card/card/hook.js.map +1 -1
  79. package/build/card/card-body/hook.js +4 -2
  80. package/build/card/card-body/hook.js.map +1 -1
  81. package/build/card/card-divider/hook.js +4 -2
  82. package/build/card/card-divider/hook.js.map +1 -1
  83. package/build/card/card-footer/hook.js +4 -2
  84. package/build/card/card-footer/hook.js.map +1 -1
  85. package/build/card/card-header/hook.js +4 -2
  86. package/build/card/card-header/hook.js.map +1 -1
  87. package/build/card/card-media/hook.js +4 -2
  88. package/build/card/card-media/hook.js.map +1 -1
  89. package/build/card/index.js +24 -22
  90. package/build/card/index.js.map +1 -1
  91. package/build/card/styles.js +1 -1
  92. package/build/card/types.js +4 -0
  93. package/build/checkbox-control/index.js +11 -9
  94. package/build/checkbox-control/index.js.map +1 -1
  95. package/build/circular-option-picker/index.js +40 -33
  96. package/build/circular-option-picker/index.js.map +1 -1
  97. package/build/clipboard-button/index.js +9 -8
  98. package/build/clipboard-button/index.js.map +1 -1
  99. package/build/color-control/index.native.js +8 -7
  100. package/build/color-control/index.native.js.map +1 -1
  101. package/build/color-edit/index.js +203 -209
  102. package/build/color-edit/index.js.map +1 -1
  103. package/build/color-edit/styles.js +112 -0
  104. package/build/color-edit/styles.js.map +1 -0
  105. package/build/color-indicator/index.js +13 -10
  106. package/build/color-indicator/index.js.map +1 -1
  107. package/build/color-indicator/index.native.js +12 -10
  108. package/build/color-indicator/index.native.js.map +1 -1
  109. package/build/color-list-picker/index.js +22 -15
  110. package/build/color-list-picker/index.js.map +1 -1
  111. package/build/color-palette/index.js +102 -29
  112. package/build/color-palette/index.js.map +1 -1
  113. package/build/color-palette/index.native.js +23 -20
  114. package/build/color-palette/index.native.js.map +1 -1
  115. package/build/color-palette/styles.js +31 -0
  116. package/build/color-palette/styles.js.map +1 -0
  117. package/build/color-picker/color-display.js +35 -27
  118. package/build/color-picker/color-display.js.map +1 -1
  119. package/build/color-picker/color-input.js +7 -6
  120. package/build/color-picker/color-input.js.map +1 -1
  121. package/build/color-picker/component.js +7 -18
  122. package/build/color-picker/component.js.map +1 -1
  123. package/build/color-picker/hex-input.js +7 -5
  124. package/build/color-picker/hex-input.js.map +1 -1
  125. package/build/color-picker/hsl-input.js +6 -5
  126. package/build/color-picker/hsl-input.js.map +1 -1
  127. package/build/color-picker/index.native.js +23 -20
  128. package/build/color-picker/index.native.js.map +1 -1
  129. package/build/color-picker/input-with-slider.js +9 -8
  130. package/build/color-picker/input-with-slider.js.map +1 -1
  131. package/build/color-picker/picker.js +9 -8
  132. package/build/color-picker/picker.js.map +1 -1
  133. package/build/color-picker/rgb-input.js +6 -5
  134. package/build/color-picker/rgb-input.js.map +1 -1
  135. package/build/color-picker/styles.js +1 -1
  136. package/build/color-picker/types.js +4 -0
  137. package/build/combobox-control/index.js +17 -15
  138. package/build/combobox-control/index.js.map +1 -1
  139. package/build/custom-gradient-bar/constants.js +1 -1
  140. package/build/custom-gradient-bar/control-points.js +120 -108
  141. package/build/custom-gradient-bar/control-points.js.map +1 -1
  142. package/build/custom-gradient-bar/index.js +13 -11
  143. package/build/custom-gradient-bar/index.js.map +1 -1
  144. package/build/custom-gradient-bar/utils.js +9 -7
  145. package/build/custom-gradient-bar/utils.js.map +1 -1
  146. package/build/custom-gradient-picker/constants.js +1 -1
  147. package/build/custom-gradient-picker/index.js +17 -14
  148. package/build/custom-gradient-picker/index.js.map +1 -1
  149. package/build/custom-gradient-picker/index.native.js +6 -5
  150. package/build/custom-gradient-picker/index.native.js.map +1 -1
  151. package/build/custom-gradient-picker/serializer.js +20 -16
  152. package/build/custom-gradient-picker/serializer.js.map +1 -1
  153. package/build/custom-gradient-picker/styles/custom-gradient-picker-styles.js +1 -1
  154. package/build/custom-gradient-picker/utils.js +7 -6
  155. package/build/custom-gradient-picker/utils.js.map +1 -1
  156. package/build/custom-select-control/index.js +22 -18
  157. package/build/custom-select-control/index.js.map +1 -1
  158. package/build/dashicon/index.js +6 -5
  159. package/build/dashicon/index.js.map +1 -1
  160. package/build/dashicon/index.native.js +9 -6
  161. package/build/dashicon/index.native.js.map +1 -1
  162. package/build/dashicon/types.js +4 -0
  163. package/build/date-time/date.js +5 -4
  164. package/build/date-time/date.js.map +1 -1
  165. package/build/date-time/index.js +9 -8
  166. package/build/date-time/index.js.map +1 -1
  167. package/build/date-time/time.js +14 -11
  168. package/build/date-time/time.js.map +1 -1
  169. package/build/dimension-control/index.js +14 -9
  170. package/build/dimension-control/index.js.map +1 -1
  171. package/build/dimension-control/sizes.js +1 -1
  172. package/build/disabled/index.js +8 -6
  173. package/build/disabled/index.js.map +1 -1
  174. package/build/disabled/index.native.js +4 -3
  175. package/build/disabled/index.native.js.map +1 -1
  176. package/build/divider/styles.js +7 -5
  177. package/build/divider/styles.js.map +1 -1
  178. package/build/divider/types.js +4 -0
  179. package/build/draggable/index.js +13 -11
  180. package/build/draggable/index.js.map +1 -1
  181. package/build/drop-zone/index.js +8 -7
  182. package/build/drop-zone/index.js.map +1 -1
  183. package/build/drop-zone/provider.js +4 -3
  184. package/build/drop-zone/provider.js.map +1 -1
  185. package/build/dropdown/index.js +14 -13
  186. package/build/dropdown/index.js.map +1 -1
  187. package/build/dropdown-menu/index.js +9 -5
  188. package/build/dropdown-menu/index.js.map +1 -1
  189. package/build/dropdown-menu/index.native.js +26 -19
  190. package/build/dropdown-menu/index.native.js.map +1 -1
  191. package/build/duotone-picker/custom-duotone-bar.js +5 -5
  192. package/build/duotone-picker/custom-duotone-bar.js.map +1 -1
  193. package/build/duotone-picker/duotone-picker.js +16 -13
  194. package/build/duotone-picker/duotone-picker.js.map +1 -1
  195. package/build/duotone-picker/duotone-swatch.js +4 -3
  196. package/build/duotone-picker/duotone-swatch.js.map +1 -1
  197. package/build/duotone-picker/utils.js +29 -16
  198. package/build/duotone-picker/utils.js.map +1 -1
  199. package/build/elevation/hook.js +4 -2
  200. package/build/elevation/hook.js.map +1 -1
  201. package/build/elevation/types.js +4 -0
  202. package/build/external-link/index.js +8 -7
  203. package/build/external-link/index.js.map +1 -1
  204. package/build/external-link/index.native.js +5 -4
  205. package/build/external-link/index.native.js.map +1 -1
  206. package/build/flex/flex/hook.js +10 -6
  207. package/build/flex/flex/hook.js.map +1 -1
  208. package/build/flex/flex-item/hook.js +4 -2
  209. package/build/flex/flex-item/hook.js.map +1 -1
  210. package/build/flex/index.js +12 -10
  211. package/build/flex/index.js.map +1 -1
  212. package/build/flex/styles.js +1 -1
  213. package/build/flex/types.js +4 -0
  214. package/build/flyout/styles.js +5 -3
  215. package/build/flyout/styles.js.map +1 -1
  216. package/build/flyout/types.js +4 -0
  217. package/build/flyout/utils.js +4 -3
  218. package/build/flyout/utils.js.map +1 -1
  219. package/build/focal-point-picker/controls.js +8 -7
  220. package/build/focal-point-picker/controls.js.map +1 -1
  221. package/build/focal-point-picker/focal-point.js +8 -7
  222. package/build/focal-point-picker/focal-point.js.map +1 -1
  223. package/build/focal-point-picker/focal-point.native.js +6 -5
  224. package/build/focal-point-picker/focal-point.native.js.map +1 -1
  225. package/build/focal-point-picker/grid.js +6 -5
  226. package/build/focal-point-picker/grid.js.map +1 -1
  227. package/build/focal-point-picker/index.js +2 -1
  228. package/build/focal-point-picker/index.js.map +1 -1
  229. package/build/focal-point-picker/media.js +19 -16
  230. package/build/focal-point-picker/media.js.map +1 -1
  231. package/build/focal-point-picker/styles/focal-point-picker-style.js +8 -5
  232. package/build/focal-point-picker/styles/focal-point-picker-style.js.map +1 -1
  233. package/build/focal-point-picker/styles/focal-point-style.js +7 -4
  234. package/build/focal-point-picker/styles/focal-point-style.js.map +1 -1
  235. package/build/focal-point-picker/tooltip/index.native.js +18 -15
  236. package/build/focal-point-picker/tooltip/index.native.js.map +1 -1
  237. package/build/focal-point-picker/utils.js +6 -4
  238. package/build/focal-point-picker/utils.js.map +1 -1
  239. package/build/focusable-iframe/index.js +5 -4
  240. package/build/focusable-iframe/index.js.map +1 -1
  241. package/build/font-size-picker/index.js +24 -17
  242. package/build/font-size-picker/index.js.map +1 -1
  243. package/build/font-size-picker/index.native.js +11 -8
  244. package/build/font-size-picker/index.native.js.map +1 -1
  245. package/build/font-size-picker/utils.js +22 -18
  246. package/build/font-size-picker/utils.js.map +1 -1
  247. package/build/footer-message-control/index.native.js +3 -2
  248. package/build/footer-message-control/index.native.js.map +1 -1
  249. package/build/form-file-upload/index.js +9 -8
  250. package/build/form-file-upload/index.js.map +1 -1
  251. package/build/form-toggle/index.js +9 -8
  252. package/build/form-toggle/index.js.map +1 -1
  253. package/build/form-token-field/index.js +8 -2
  254. package/build/form-token-field/index.js.map +1 -1
  255. package/build/form-token-field/token.js +15 -14
  256. package/build/form-token-field/token.js.map +1 -1
  257. package/build/gradient-picker/index.js +99 -32
  258. package/build/gradient-picker/index.js.map +1 -1
  259. package/build/grid/types.js +4 -0
  260. package/build/guide/icons.js +16 -13
  261. package/build/guide/icons.js.map +1 -1
  262. package/build/guide/index.js +9 -8
  263. package/build/guide/index.js.map +1 -1
  264. package/build/guide/page-control.js +6 -5
  265. package/build/guide/page-control.js.map +1 -1
  266. package/build/h-stack/types.js +4 -0
  267. package/build/h-stack/utils.js +3 -1
  268. package/build/h-stack/utils.js.map +1 -1
  269. package/build/higher-order/navigate-regions/index.js +20 -14
  270. package/build/higher-order/navigate-regions/index.js.map +1 -1
  271. package/build/higher-order/with-focus-return/index.js +18 -14
  272. package/build/higher-order/with-focus-return/index.js.map +1 -1
  273. package/build/icon/index.js +7 -5
  274. package/build/icon/index.js.map +1 -1
  275. package/build/index.js +314 -312
  276. package/build/index.js.map +1 -1
  277. package/build/index.native.js +227 -216
  278. package/build/index.native.js.map +1 -1
  279. package/build/input-control/backdrop.js +5 -4
  280. package/build/input-control/backdrop.js.map +1 -1
  281. package/build/input-control/index.js +20 -19
  282. package/build/input-control/index.js.map +1 -1
  283. package/build/input-control/input-base.js +16 -15
  284. package/build/input-control/input-base.js.map +1 -1
  285. package/build/input-control/input-field.js +24 -23
  286. package/build/input-control/input-field.js.map +1 -1
  287. package/build/input-control/label.js +7 -6
  288. package/build/input-control/label.js.map +1 -1
  289. package/build/input-control/reducer/actions.js +1 -1
  290. package/build/input-control/reducer/reducer.js +20 -7
  291. package/build/input-control/reducer/reducer.js.map +1 -1
  292. package/build/input-control/reducer/state.js +1 -1
  293. package/build/input-control/styles/input-control-styles.js +49 -37
  294. package/build/input-control/styles/input-control-styles.js.map +1 -1
  295. package/build/input-control/types.js +4 -0
  296. package/build/isolated-event-container/index.js +5 -4
  297. package/build/isolated-event-container/index.js.map +1 -1
  298. package/build/item-group/item/hook.js +4 -2
  299. package/build/item-group/item/hook.js.map +1 -1
  300. package/build/item-group/item-group/hook.js +4 -2
  301. package/build/item-group/item-group/hook.js.map +1 -1
  302. package/build/item-group/styles.js +1 -1
  303. package/build/item-group/types.js +4 -0
  304. package/build/keyboard-shortcuts/index.js +15 -13
  305. package/build/keyboard-shortcuts/index.js.map +1 -1
  306. package/build/menu-items-choice/index.js +7 -6
  307. package/build/menu-items-choice/index.js.map +1 -1
  308. package/build/mobile/audio-player/index.native.js +8 -7
  309. package/build/mobile/audio-player/index.native.js.map +1 -1
  310. package/build/mobile/badge/index.native.js +6 -5
  311. package/build/mobile/badge/index.native.js.map +1 -1
  312. package/build/mobile/bottom-sheet/bottom-sheet-context.native.js +1 -1
  313. package/build/mobile/bottom-sheet/bottom-sheet-navigation/bottom-sheet-navigation-context.native.js +1 -1
  314. package/build/mobile/bottom-sheet/bottom-sheet-navigation/navigation-container.native.js +12 -10
  315. package/build/mobile/bottom-sheet/bottom-sheet-navigation/navigation-container.native.js.map +1 -1
  316. package/build/mobile/bottom-sheet/bottom-sheet-navigation/navigation-screen.native.js +12 -9
  317. package/build/mobile/bottom-sheet/bottom-sheet-navigation/navigation-screen.native.js.map +1 -1
  318. package/build/mobile/bottom-sheet/button.native.js +21 -18
  319. package/build/mobile/bottom-sheet/button.native.js.map +1 -1
  320. package/build/mobile/bottom-sheet/cell.native.js +4 -2
  321. package/build/mobile/bottom-sheet/cell.native.js.map +1 -1
  322. package/build/mobile/bottom-sheet/footer-message-cell.native.js +5 -4
  323. package/build/mobile/bottom-sheet/footer-message-cell.native.js.map +1 -1
  324. package/build/mobile/bottom-sheet/footer-message-link/footer-message-link.native.js +5 -4
  325. package/build/mobile/bottom-sheet/footer-message-link/footer-message-link.native.js.map +1 -1
  326. package/build/mobile/bottom-sheet/index.native.js +24 -17
  327. package/build/mobile/bottom-sheet/index.native.js.map +1 -1
  328. package/build/mobile/bottom-sheet/link-cell.native.js +9 -7
  329. package/build/mobile/bottom-sheet/link-cell.native.js.map +1 -1
  330. package/build/mobile/bottom-sheet/link-suggestion-item-cell.native.js +5 -4
  331. package/build/mobile/bottom-sheet/link-suggestion-item-cell.native.js.map +1 -1
  332. package/build/mobile/bottom-sheet/nav-bar/action-button.native.js +7 -6
  333. package/build/mobile/bottom-sheet/nav-bar/action-button.native.js.map +1 -1
  334. package/build/mobile/bottom-sheet/nav-bar/apply-button.native.js +4 -3
  335. package/build/mobile/bottom-sheet/nav-bar/apply-button.native.js.map +1 -1
  336. package/build/mobile/bottom-sheet/nav-bar/back-button.native.js +15 -12
  337. package/build/mobile/bottom-sheet/nav-bar/back-button.native.js.map +1 -1
  338. package/build/mobile/bottom-sheet/nav-bar/heading.native.js +4 -3
  339. package/build/mobile/bottom-sheet/nav-bar/heading.native.js.map +1 -1
  340. package/build/mobile/bottom-sheet/nav-bar/index.native.js +4 -3
  341. package/build/mobile/bottom-sheet/nav-bar/index.native.js.map +1 -1
  342. package/build/mobile/bottom-sheet/range-text-input.native.js +6 -5
  343. package/build/mobile/bottom-sheet/range-text-input.native.js.map +1 -1
  344. package/build/mobile/bottom-sheet/ripple.native.js +11 -10
  345. package/build/mobile/bottom-sheet/ripple.native.js.map +1 -1
  346. package/build/mobile/bottom-sheet/stepper-cell/index.native.js +2 -1
  347. package/build/mobile/bottom-sheet/stepper-cell/index.native.js.map +1 -1
  348. package/build/mobile/bottom-sheet/stepper-cell/stepper.android.js +12 -11
  349. package/build/mobile/bottom-sheet/stepper-cell/stepper.android.js.map +1 -1
  350. package/build/mobile/bottom-sheet/stepper-cell/stepper.ios.js +12 -11
  351. package/build/mobile/bottom-sheet/stepper-cell/stepper.ios.js.map +1 -1
  352. package/build/mobile/bottom-sheet/sub-sheet/index.native.js +7 -6
  353. package/build/mobile/bottom-sheet/sub-sheet/index.native.js.map +1 -1
  354. package/build/mobile/bottom-sheet-select-control/index.native.js +8 -7
  355. package/build/mobile/bottom-sheet-select-control/index.native.js.map +1 -1
  356. package/build/mobile/bottom-sheet-text-control/index.native.js +9 -8
  357. package/build/mobile/bottom-sheet-text-control/index.native.js.map +1 -1
  358. package/build/mobile/clipboard/index.native.js +1 -1
  359. package/build/mobile/color-settings/index.native.js +11 -10
  360. package/build/mobile/color-settings/index.native.js.map +1 -1
  361. package/build/mobile/cycle-select-control/index.native.js +12 -11
  362. package/build/mobile/cycle-select-control/index.native.js.map +1 -1
  363. package/build/mobile/dashicons/index.native.js +1 -1
  364. package/build/mobile/focal-point-settings-panel/index.native.js +7 -6
  365. package/build/mobile/focal-point-settings-panel/index.native.js.map +1 -1
  366. package/build/mobile/global-styles-context/index.native.js +1 -1
  367. package/build/mobile/global-styles-context/utils.native.js +9 -7
  368. package/build/mobile/global-styles-context/utils.native.js.map +1 -1
  369. package/build/mobile/gradient/index.native.js +14 -13
  370. package/build/mobile/gradient/index.native.js.map +1 -1
  371. package/build/mobile/gridicons/index.native.js +1 -1
  372. package/build/mobile/html-text-input/container.android.js +12 -9
  373. package/build/mobile/html-text-input/container.android.js.map +1 -1
  374. package/build/mobile/image/image-editing-button.native.js +26 -22
  375. package/build/mobile/image/image-editing-button.native.js.map +1 -1
  376. package/build/mobile/image/index.native.js +23 -22
  377. package/build/mobile/image/index.native.js.map +1 -1
  378. package/build/mobile/keyboard-avoiding-view/index.ios.js +29 -22
  379. package/build/mobile/keyboard-avoiding-view/index.ios.js.map +1 -1
  380. package/build/mobile/keyboard-aware-flat-list/index.ios.js +46 -43
  381. package/build/mobile/keyboard-aware-flat-list/index.ios.js.map +1 -1
  382. package/build/mobile/layout-animation/index.native.js +3 -1
  383. package/build/mobile/layout-animation/index.native.js.map +1 -1
  384. package/build/mobile/link-picker/index.native.js +13 -11
  385. package/build/mobile/link-picker/index.native.js.map +1 -1
  386. package/build/mobile/link-picker/link-picker-results.native.js +48 -34
  387. package/build/mobile/link-picker/link-picker-results.native.js.map +1 -1
  388. package/build/mobile/link-picker/link-picker-screen.native.js +9 -7
  389. package/build/mobile/link-picker/link-picker-screen.native.js.map +1 -1
  390. package/build/mobile/link-settings/image-link-destinations-screen.native.js +141 -0
  391. package/build/mobile/link-settings/image-link-destinations-screen.native.js.map +1 -0
  392. package/build/mobile/link-settings/index.native.js +59 -57
  393. package/build/mobile/link-settings/index.native.js.map +1 -1
  394. package/build/mobile/link-settings/link-settings-navigation.native.js +1 -0
  395. package/build/mobile/link-settings/link-settings-navigation.native.js.map +1 -1
  396. package/build/mobile/link-settings/link-settings-screen.native.js +11 -5
  397. package/build/mobile/link-settings/link-settings-screen.native.js.map +1 -1
  398. package/build/mobile/media-edit/index.native.js +1 -1
  399. package/build/mobile/picker/index.android.js +4 -2
  400. package/build/mobile/picker/index.android.js.map +1 -1
  401. package/build/mobile/picker/index.ios.js +6 -3
  402. package/build/mobile/picker/index.ios.js.map +1 -1
  403. package/build/mobile/readable-content-view/index.native.js +12 -9
  404. package/build/mobile/readable-content-view/index.native.js.map +1 -1
  405. package/build/mobile/segmented-control/index.native.js +16 -14
  406. package/build/mobile/segmented-control/index.native.js.map +1 -1
  407. package/build/mobile/utils/alignments.native.js +1 -1
  408. package/build/mobile/utils/index.native.js +2 -1
  409. package/build/mobile/utils/index.native.js.map +1 -1
  410. package/build/mobile/utils/use-unit-converter-to-mobile.native.js +5 -4
  411. package/build/mobile/utils/use-unit-converter-to-mobile.native.js.map +1 -1
  412. package/build/modal/aria-helper.js +1 -1
  413. package/build/modal/index.js +40 -30
  414. package/build/modal/index.js.map +1 -1
  415. package/build/navigable-container/menu.js +7 -5
  416. package/build/navigable-container/menu.js.map +1 -1
  417. package/build/navigable-container/tabbable.js +6 -4
  418. package/build/navigable-container/tabbable.js.map +1 -1
  419. package/build/navigation/back-button/index.js +8 -7
  420. package/build/navigation/back-button/index.js.map +1 -1
  421. package/build/navigation/group/index.js +7 -7
  422. package/build/navigation/group/index.js.map +1 -1
  423. package/build/navigation/index.js +11 -8
  424. package/build/navigation/index.js.map +1 -1
  425. package/build/navigation/menu/menu-title-search.js +16 -34
  426. package/build/navigation/menu/menu-title-search.js.map +1 -1
  427. package/build/navigation/menu/menu-title.js +10 -9
  428. package/build/navigation/menu/menu-title.js.map +1 -1
  429. package/build/navigation/menu/search-no-results-found.js +4 -3
  430. package/build/navigation/menu/search-no-results-found.js.map +1 -1
  431. package/build/navigation/styles/navigation-styles.js +34 -29
  432. package/build/navigation/styles/navigation-styles.js.map +1 -1
  433. package/build/navigator/types.js +4 -0
  434. package/build/notice/index.js +26 -24
  435. package/build/notice/index.js.map +1 -1
  436. package/build/notice/index.native.js +7 -6
  437. package/build/notice/index.native.js.map +1 -1
  438. package/build/notice/list.js +8 -6
  439. package/build/notice/list.js.map +1 -1
  440. package/build/number-control/index.js +22 -19
  441. package/build/number-control/index.js.map +1 -1
  442. package/build/number-control/styles/number-control-styles.js +4 -3
  443. package/build/number-control/styles/number-control-styles.js.map +1 -1
  444. package/build/panel/actions.native.js +10 -8
  445. package/build/panel/actions.native.js.map +1 -1
  446. package/build/panel/body.js +19 -17
  447. package/build/panel/body.js.map +1 -1
  448. package/build/panel/body.native.js +7 -6
  449. package/build/panel/body.native.js.map +1 -1
  450. package/build/panel/bottom-separator-cover.native.js +4 -3
  451. package/build/panel/bottom-separator-cover.native.js.map +1 -1
  452. package/build/panel/header.js +5 -4
  453. package/build/panel/header.js.map +1 -1
  454. package/build/panel/index.js +6 -5
  455. package/build/panel/index.js.map +1 -1
  456. package/build/panel/row.js +10 -7
  457. package/build/panel/row.js.map +1 -1
  458. package/build/placeholder/index.js +12 -11
  459. package/build/placeholder/index.js.map +1 -1
  460. package/build/popover/index.js +49 -39
  461. package/build/popover/index.js.map +1 -1
  462. package/build/popover/utils.js +10 -2
  463. package/build/popover/utils.js.map +1 -1
  464. package/build/query-controls/author-select.js +8 -7
  465. package/build/query-controls/author-select.js.map +1 -1
  466. package/build/query-controls/category-select.js +9 -8
  467. package/build/query-controls/category-select.js.map +1 -1
  468. package/build/query-controls/index.js +19 -18
  469. package/build/query-controls/index.js.map +1 -1
  470. package/build/query-controls/index.native.js +14 -13
  471. package/build/query-controls/index.native.js.map +1 -1
  472. package/build/radio/index.js +6 -5
  473. package/build/radio/index.js.map +1 -1
  474. package/build/radio-control/index.js +11 -10
  475. package/build/radio-control/index.js.map +1 -1
  476. package/build/radio-control/index.native.js +7 -6
  477. package/build/radio-control/index.native.js.map +1 -1
  478. package/build/radio-group/index.js +9 -8
  479. package/build/radio-group/index.js.map +1 -1
  480. package/build/range-control/index.js +33 -32
  481. package/build/range-control/index.js.map +1 -1
  482. package/build/range-control/index.native.js +20 -18
  483. package/build/range-control/index.native.js.map +1 -1
  484. package/build/range-control/input-range.js +11 -10
  485. package/build/range-control/input-range.js.map +1 -1
  486. package/build/range-control/mark.js +8 -7
  487. package/build/range-control/mark.js.map +1 -1
  488. package/build/range-control/rail.js +29 -24
  489. package/build/range-control/rail.js.map +1 -1
  490. package/build/range-control/styles/range-control-styles.js +81 -63
  491. package/build/range-control/styles/range-control-styles.js.map +1 -1
  492. package/build/range-control/tooltip.js +17 -15
  493. package/build/range-control/tooltip.js.map +1 -1
  494. package/build/range-control/utils.js +15 -13
  495. package/build/range-control/utils.js.map +1 -1
  496. package/build/resizable-box/index.js +9 -8
  497. package/build/resizable-box/index.js.map +1 -1
  498. package/build/resizable-box/resize-tooltip/index.js +13 -12
  499. package/build/resizable-box/resize-tooltip/index.js.map +1 -1
  500. package/build/resizable-box/resize-tooltip/label.js +7 -6
  501. package/build/resizable-box/resize-tooltip/label.js.map +1 -1
  502. package/build/resizable-box/resize-tooltip/styles/resize-tooltip.styles.js +1 -1
  503. package/build/resizable-box/resize-tooltip/utils.js +20 -17
  504. package/build/resizable-box/resize-tooltip/utils.js.map +1 -1
  505. package/build/responsive-wrapper/index.js +7 -6
  506. package/build/responsive-wrapper/index.js.map +1 -1
  507. package/build/sandbox/index.js +12 -9
  508. package/build/sandbox/index.js.map +1 -1
  509. package/build/sandbox/index.native.js +15 -13
  510. package/build/sandbox/index.native.js.map +1 -1
  511. package/build/scrollable/hook.js +4 -2
  512. package/build/scrollable/hook.js.map +1 -1
  513. package/build/scrollable/styles.js +1 -1
  514. package/build/scrollable/types.js +4 -0
  515. package/build/search-control/index.js +45 -21
  516. package/build/search-control/index.js.map +1 -1
  517. package/build/search-control/index.native.js +6 -5
  518. package/build/search-control/index.native.js.map +1 -1
  519. package/build/select-control/index.js +33 -26
  520. package/build/select-control/index.js.map +1 -1
  521. package/build/select-control/index.native.js +12 -11
  522. package/build/select-control/index.native.js.map +1 -1
  523. package/build/select-control/styles/select-control-styles.js +13 -10
  524. package/build/select-control/styles/select-control-styles.js.map +1 -1
  525. package/build/select-control/types.js +4 -0
  526. package/build/shortcut/index.js +6 -4
  527. package/build/shortcut/index.js.map +1 -1
  528. package/build/slot-fill/bubbles-virtually/fill.js +5 -4
  529. package/build/slot-fill/bubbles-virtually/fill.js.map +1 -1
  530. package/build/slot-fill/bubbles-virtually/slot-fill-provider.js +4 -3
  531. package/build/slot-fill/bubbles-virtually/slot-fill-provider.js.map +1 -1
  532. package/build/slot-fill/bubbles-virtually/slot.js +7 -6
  533. package/build/slot-fill/bubbles-virtually/slot.js.map +1 -1
  534. package/build/slot-fill/fill.js +17 -13
  535. package/build/slot-fill/fill.js.map +1 -1
  536. package/build/slot-fill/index.js +12 -9
  537. package/build/slot-fill/index.js.map +1 -1
  538. package/build/slot-fill/index.native.js +2 -2
  539. package/build/slot-fill/slot.js +12 -9
  540. package/build/slot-fill/slot.js.map +1 -1
  541. package/build/snackbar/index.js +22 -20
  542. package/build/snackbar/index.js.map +1 -1
  543. package/build/snackbar/list.js +7 -6
  544. package/build/snackbar/list.js.map +1 -1
  545. package/build/spacer/types.js +4 -0
  546. package/build/style-provider/index.js +10 -6
  547. package/build/style-provider/index.js.map +1 -1
  548. package/build/style-provider/index.native.js +4 -3
  549. package/build/style-provider/index.native.js.map +1 -1
  550. package/build/surface/hook.js +4 -2
  551. package/build/surface/hook.js.map +1 -1
  552. package/build/surface/styles.js +9 -7
  553. package/build/surface/styles.js.map +1 -1
  554. package/build/surface/types.js +4 -0
  555. package/build/swatch/index.js +4 -3
  556. package/build/swatch/index.js.map +1 -1
  557. package/build/tab-panel/index.js +27 -23
  558. package/build/tab-panel/index.js.map +1 -1
  559. package/build/text/hook.js +4 -2
  560. package/build/text/hook.js.map +1 -1
  561. package/build/text/styles/text-mixins.native.js +3 -1
  562. package/build/text/styles/text-mixins.native.js.map +1 -1
  563. package/build/text/styles.js +8 -8
  564. package/build/text/styles.js.map +1 -1
  565. package/build/text/types.js +4 -0
  566. package/build/text/utils.js +17 -16
  567. package/build/text/utils.js.map +1 -1
  568. package/build/text-control/index.js +13 -12
  569. package/build/text-control/index.js.map +1 -1
  570. package/build/text-control/index.native.js +13 -12
  571. package/build/text-control/index.native.js.map +1 -1
  572. package/build/text-highlight/index.js +5 -4
  573. package/build/text-highlight/index.js.map +1 -1
  574. package/build/textarea-control/index.js +11 -10
  575. package/build/textarea-control/index.js.map +1 -1
  576. package/build/textarea-control/index.native.js +8 -7
  577. package/build/textarea-control/index.native.js.map +1 -1
  578. package/build/toggle-control/index.js +10 -8
  579. package/build/toggle-control/index.js.map +1 -1
  580. package/build/toggle-control/index.native.js +10 -9
  581. package/build/toggle-control/index.native.js.map +1 -1
  582. package/build/toggle-group-control/context.js +1 -1
  583. package/build/toggle-group-control/toggle-group-control/component.js +4 -2
  584. package/build/toggle-group-control/toggle-group-control/component.js.map +1 -1
  585. package/build/toggle-group-control/toggle-group-control/styles.js +1 -1
  586. package/build/toggle-group-control/toggle-group-control/toggle-group-control-backdrop.js +7 -6
  587. package/build/toggle-group-control/toggle-group-control/toggle-group-control-backdrop.js.map +1 -1
  588. package/build/toggle-group-control/toggle-group-control-option/component.js +4 -2
  589. package/build/toggle-group-control/toggle-group-control-option/component.js.map +1 -1
  590. package/build/toggle-group-control/toggle-group-control-option/styles.js +1 -1
  591. package/build/toggle-group-control/types.js +4 -0
  592. package/build/toolbar/index.js +7 -5
  593. package/build/toolbar/index.js.map +1 -1
  594. package/build/toolbar/toolbar-container.js +5 -4
  595. package/build/toolbar/toolbar-container.js.map +1 -1
  596. package/build/toolbar/toolbar-container.native.js +6 -3
  597. package/build/toolbar/toolbar-container.native.js.map +1 -1
  598. package/build/toolbar-button/index.js +11 -10
  599. package/build/toolbar-button/index.js.map +1 -1
  600. package/build/toolbar-group/index.js +9 -8
  601. package/build/toolbar-group/index.js.map +1 -1
  602. package/build/toolbar-group/toolbar-group-collapsed.js +6 -5
  603. package/build/toolbar-group/toolbar-group-collapsed.js.map +1 -1
  604. package/build/toolbar-group/toolbar-group-collapsed.native.js +7 -6
  605. package/build/toolbar-group/toolbar-group-collapsed.native.js.map +1 -1
  606. package/build/toolbar-group/toolbar-group-container.js +10 -7
  607. package/build/toolbar-group/toolbar-group-container.js.map +1 -1
  608. package/build/toolbar-group/toolbar-group-container.native.js +10 -7
  609. package/build/toolbar-group/toolbar-group-container.native.js.map +1 -1
  610. package/build/toolbar-item/index.js +6 -5
  611. package/build/toolbar-item/index.js.map +1 -1
  612. package/build/toolbar-item/index.native.js +6 -4
  613. package/build/toolbar-item/index.native.js.map +1 -1
  614. package/build/tools-panel/index.js +4 -4
  615. package/build/tools-panel/styles.js +19 -24
  616. package/build/tools-panel/styles.js.map +1 -1
  617. package/build/tools-panel/tools-panel/component.js +10 -7
  618. package/build/tools-panel/tools-panel/component.js.map +1 -1
  619. package/build/tools-panel/tools-panel/hook.js +24 -14
  620. package/build/tools-panel/tools-panel/hook.js.map +1 -1
  621. package/build/tools-panel/tools-panel-header/component.js +41 -29
  622. package/build/tools-panel/tools-panel-header/component.js.map +1 -1
  623. package/build/tools-panel/tools-panel-header/hook.js +4 -2
  624. package/build/tools-panel/tools-panel-header/hook.js.map +1 -1
  625. package/build/tools-panel/tools-panel-item/hook.js +4 -2
  626. package/build/tools-panel/tools-panel-item/hook.js.map +1 -1
  627. package/build/tools-panel/types.js +4 -0
  628. package/build/tooltip/index.js +52 -41
  629. package/build/tooltip/index.js.map +1 -1
  630. package/build/tooltip/index.native.js +16 -13
  631. package/build/tooltip/index.native.js.map +1 -1
  632. package/build/tree-grid/cell.js +6 -5
  633. package/build/tree-grid/cell.js.map +1 -1
  634. package/build/tree-grid/index.js +13 -12
  635. package/build/tree-grid/index.js.map +1 -1
  636. package/build/tree-grid/item.js +5 -4
  637. package/build/tree-grid/item.js.map +1 -1
  638. package/build/tree-grid/roving-tab-index-context.js +1 -1
  639. package/build/tree-grid/roving-tab-index-item.js +6 -5
  640. package/build/tree-grid/roving-tab-index-item.js.map +1 -1
  641. package/build/tree-grid/roving-tab-index.js +4 -3
  642. package/build/tree-grid/roving-tab-index.js.map +1 -1
  643. package/build/tree-grid/row.js +9 -8
  644. package/build/tree-grid/row.js.map +1 -1
  645. package/build/tree-select/index.js +11 -9
  646. package/build/tree-select/index.js.map +1 -1
  647. package/build/truncate/hook.js +4 -2
  648. package/build/truncate/hook.js.map +1 -1
  649. package/build/truncate/types.js +4 -0
  650. package/build/truncate/utils.js +5 -3
  651. package/build/truncate/utils.js.map +1 -1
  652. package/build/ui/__storybook-utils/example-grid.js +40 -30
  653. package/build/ui/__storybook-utils/example-grid.js.map +1 -1
  654. package/build/ui/__storybook-utils/page.js +5 -4
  655. package/build/ui/__storybook-utils/page.js.map +1 -1
  656. package/build/ui/context/constants.js +1 -1
  657. package/build/ui/context/context-connect.js +3 -1
  658. package/build/ui/context/context-connect.js.map +1 -1
  659. package/build/ui/context/context-system-provider.js +10 -8
  660. package/build/ui/context/context-system-provider.js.map +1 -1
  661. package/build/ui/context/index.js +6 -6
  662. package/build/ui/context/utils.js +1 -1
  663. package/build/ui/context/wordpress-component.js +4 -0
  664. package/build/ui/control-group/hook.js +4 -2
  665. package/build/ui/control-group/hook.js.map +1 -1
  666. package/build/ui/control-group/styles.js +1 -1
  667. package/build/ui/control-group/types.js +4 -0
  668. package/build/ui/control-label/hook.js +4 -2
  669. package/build/ui/control-label/hook.js.map +1 -1
  670. package/build/ui/control-label/styles.js +1 -1
  671. package/build/ui/control-label/types.js +4 -0
  672. package/build/ui/form-group/form-group-content.js +13 -12
  673. package/build/ui/form-group/form-group-content.js.map +1 -1
  674. package/build/ui/form-group/form-group-help.js +4 -3
  675. package/build/ui/form-group/form-group-help.js.map +1 -1
  676. package/build/ui/form-group/form-group-label.js +7 -6
  677. package/build/ui/form-group/form-group-label.js.map +1 -1
  678. package/build/ui/form-group/types.js +4 -0
  679. package/build/ui/form-group/use-form-group.js +4 -2
  680. package/build/ui/form-group/use-form-group.js.map +1 -1
  681. package/build/ui/spinner/styles.js +1 -1
  682. package/build/ui/tooltip/content.js +4 -2
  683. package/build/ui/tooltip/content.js.map +1 -1
  684. package/build/ui/tooltip/styles.js +5 -3
  685. package/build/ui/tooltip/styles.js.map +1 -1
  686. package/build/ui/tooltip/types.js +4 -0
  687. package/build/ui/utils/font-size.js +7 -3
  688. package/build/ui/utils/font-size.js.map +1 -1
  689. package/build/ui/utils/get-high-dpi.js +5 -1
  690. package/build/ui/utils/get-high-dpi.js.map +1 -1
  691. package/build/ui/utils/types.js +4 -0
  692. package/build/ui/utils/use-responsive-value.js +5 -3
  693. package/build/ui/utils/use-responsive-value.js.map +1 -1
  694. package/build/unit-control/index.js +25 -22
  695. package/build/unit-control/index.js.map +1 -1
  696. package/build/unit-control/index.native.js +17 -16
  697. package/build/unit-control/index.native.js.map +1 -1
  698. package/build/unit-control/styles/unit-control-styles.js +13 -10
  699. package/build/unit-control/styles/unit-control-styles.js.map +1 -1
  700. package/build/unit-control/types.js +4 -0
  701. package/build/unit-control/unit-select-control.js +11 -9
  702. package/build/unit-control/unit-select-control.js.map +1 -1
  703. package/build/unit-control/utils.js +20 -13
  704. package/build/unit-control/utils.js.map +1 -1
  705. package/build/utils/browsers.js +10 -2
  706. package/build/utils/browsers.js.map +1 -1
  707. package/build/utils/colors-values.js +1 -1
  708. package/build/utils/colors.js +3 -1
  709. package/build/utils/colors.js.map +1 -1
  710. package/build/utils/hooks/emotion.d.js +4 -0
  711. package/build/utils/hooks/index.js +12 -4
  712. package/build/utils/hooks/index.js.map +1 -1
  713. package/build/utils/hooks/use-combined-ref.js +32 -0
  714. package/build/utils/hooks/use-combined-ref.js.map +1 -0
  715. package/build/utils/hooks/use-controlled-state.js +2 -1
  716. package/build/utils/hooks/use-controlled-state.js.map +1 -1
  717. package/build/utils/hooks/use-controlled-value.js +6 -5
  718. package/build/utils/hooks/use-controlled-value.js.map +1 -1
  719. package/build/utils/hooks/use-cx.js +5 -1
  720. package/build/utils/hooks/use-cx.js.map +1 -1
  721. package/build/utils/input/base.js +1 -1
  722. package/build/utils/math.js +19 -7
  723. package/build/utils/math.js.map +1 -1
  724. package/build/utils/reduce-motion.js +2 -1
  725. package/build/utils/reduce-motion.js.map +1 -1
  726. package/build/utils/rtl.js +6 -3
  727. package/build/utils/rtl.js.map +1 -1
  728. package/build/utils/style-mixins.js +12 -12
  729. package/build/utils/types.js +4 -0
  730. package/build/utils/unit-values.js +1 -1
  731. package/build/utils/values.js +10 -6
  732. package/build/utils/values.js.map +1 -1
  733. package/build/v-stack/types.js +4 -0
  734. package/build/z-stack/styles.js +24 -15
  735. package/build/z-stack/styles.js.map +1 -1
  736. package/build-module/alignment-matrix-control/cell.js +6 -5
  737. package/build-module/alignment-matrix-control/cell.js.map +1 -1
  738. package/build-module/alignment-matrix-control/icon.js +9 -8
  739. package/build-module/alignment-matrix-control/icon.js.map +1 -1
  740. package/build-module/alignment-matrix-control/index.js +11 -10
  741. package/build-module/alignment-matrix-control/index.js.map +1 -1
  742. package/build-module/alignment-matrix-control/styles/alignment-matrix-control-icon-styles.js +8 -6
  743. package/build-module/alignment-matrix-control/styles/alignment-matrix-control-icon-styles.js.map +1 -1
  744. package/build-module/alignment-matrix-control/styles/alignment-matrix-control-styles.js +8 -6
  745. package/build-module/alignment-matrix-control/styles/alignment-matrix-control-styles.js.map +1 -1
  746. package/build-module/alignment-matrix-control/utils.js +2 -1
  747. package/build-module/alignment-matrix-control/utils.js.map +1 -1
  748. package/build-module/angle-picker-control/angle-circle.js +6 -5
  749. package/build-module/angle-picker-control/angle-circle.js.map +1 -1
  750. package/build-module/angle-picker-control/index.js +11 -7
  751. package/build-module/angle-picker-control/index.js.map +1 -1
  752. package/build-module/angle-picker-control/styles/angle-picker-control-styles.js +4 -4
  753. package/build-module/angle-picker-control/styles/angle-picker-control-styles.js.map +1 -1
  754. package/build-module/animate/index.js +6 -5
  755. package/build-module/animate/index.js.map +1 -1
  756. package/build-module/autocomplete/autocompleter-ui.js +13 -12
  757. package/build-module/autocomplete/autocompleter-ui.js.map +1 -1
  758. package/build-module/autocomplete/autocompleter-ui.native.js +14 -11
  759. package/build-module/autocomplete/autocompleter-ui.native.js.map +1 -1
  760. package/build-module/autocomplete/background-view.android.js +4 -3
  761. package/build-module/autocomplete/background-view.android.js.map +1 -1
  762. package/build-module/autocomplete/background-view.ios.js +4 -3
  763. package/build-module/autocomplete/background-view.ios.js.map +1 -1
  764. package/build-module/autocomplete/get-default-use-items.js +3 -1
  765. package/build-module/autocomplete/get-default-use-items.js.map +1 -1
  766. package/build-module/autocomplete/index.js +19 -16
  767. package/build-module/autocomplete/index.js.map +1 -1
  768. package/build-module/base-control/index.js +15 -13
  769. package/build-module/base-control/index.js.map +1 -1
  770. package/build-module/base-control/index.native.js +6 -5
  771. package/build-module/base-control/index.native.js.map +1 -1
  772. package/build-module/box-control/all-input-control.js +12 -11
  773. package/build-module/box-control/all-input-control.js.map +1 -1
  774. package/build-module/box-control/axial-input-controls.js +13 -11
  775. package/build-module/box-control/axial-input-controls.js.map +1 -1
  776. package/build-module/box-control/icon.js +8 -6
  777. package/build-module/box-control/icon.js.map +1 -1
  778. package/build-module/box-control/index.js +22 -18
  779. package/build-module/box-control/index.js.map +1 -1
  780. package/build-module/box-control/input-controls.js +17 -14
  781. package/build-module/box-control/input-controls.js.map +1 -1
  782. package/build-module/box-control/linked-button.js +5 -4
  783. package/build-module/box-control/linked-button.js.map +1 -1
  784. package/build-module/box-control/styles/box-control-icon-styles.js +4 -3
  785. package/build-module/box-control/styles/box-control-icon-styles.js.map +1 -1
  786. package/build-module/box-control/styles/box-control-styles.js +12 -9
  787. package/build-module/box-control/styles/box-control-styles.js.map +1 -1
  788. package/build-module/box-control/styles/box-control-visualizer-styles.js +11 -7
  789. package/build-module/box-control/styles/box-control-visualizer-styles.js.map +1 -1
  790. package/build-module/box-control/unit-control.js +22 -18
  791. package/build-module/box-control/unit-control.js.map +1 -1
  792. package/build-module/box-control/utils.js +6 -2
  793. package/build-module/box-control/utils.js.map +1 -1
  794. package/build-module/box-control/visualizer.js +32 -26
  795. package/build-module/box-control/visualizer.js.map +1 -1
  796. package/build-module/button/deprecated.js +8 -7
  797. package/build-module/button/deprecated.js.map +1 -1
  798. package/build-module/button/index.js +10 -9
  799. package/build-module/button/index.js.map +1 -1
  800. package/build-module/button-group/index.js +5 -4
  801. package/build-module/button-group/index.js.map +1 -1
  802. package/build-module/card/card/hook.js +7 -5
  803. package/build-module/card/card/hook.js.map +1 -1
  804. package/build-module/card/types.js +1 -1
  805. package/build-module/checkbox-control/index.js +11 -9
  806. package/build-module/checkbox-control/index.js.map +1 -1
  807. package/build-module/circular-option-picker/index.js +40 -33
  808. package/build-module/circular-option-picker/index.js.map +1 -1
  809. package/build-module/clipboard-button/index.js +9 -8
  810. package/build-module/clipboard-button/index.js.map +1 -1
  811. package/build-module/color-control/index.native.js +8 -7
  812. package/build-module/color-control/index.native.js.map +1 -1
  813. package/build-module/color-edit/index.js +197 -210
  814. package/build-module/color-edit/index.js.map +1 -1
  815. package/build-module/color-edit/styles.js +90 -0
  816. package/build-module/color-edit/styles.js.map +1 -0
  817. package/build-module/color-indicator/index.js +13 -10
  818. package/build-module/color-indicator/index.js.map +1 -1
  819. package/build-module/color-indicator/index.native.js +12 -10
  820. package/build-module/color-indicator/index.native.js.map +1 -1
  821. package/build-module/color-list-picker/index.js +22 -15
  822. package/build-module/color-list-picker/index.js.map +1 -1
  823. package/build-module/color-palette/index.js +101 -30
  824. package/build-module/color-palette/index.js.map +1 -1
  825. package/build-module/color-palette/index.native.js +23 -20
  826. package/build-module/color-palette/index.native.js.map +1 -1
  827. package/build-module/color-palette/styles.js +27 -0
  828. package/build-module/color-palette/styles.js.map +1 -0
  829. package/build-module/color-picker/color-display.js +35 -27
  830. package/build-module/color-picker/color-display.js.map +1 -1
  831. package/build-module/color-picker/color-input.js +7 -6
  832. package/build-module/color-picker/color-input.js.map +1 -1
  833. package/build-module/color-picker/component.js +7 -16
  834. package/build-module/color-picker/component.js.map +1 -1
  835. package/build-module/color-picker/hex-input.js +7 -5
  836. package/build-module/color-picker/hex-input.js.map +1 -1
  837. package/build-module/color-picker/hsl-input.js +6 -5
  838. package/build-module/color-picker/hsl-input.js.map +1 -1
  839. package/build-module/color-picker/index.native.js +23 -20
  840. package/build-module/color-picker/index.native.js.map +1 -1
  841. package/build-module/color-picker/input-with-slider.js +9 -8
  842. package/build-module/color-picker/input-with-slider.js.map +1 -1
  843. package/build-module/color-picker/picker.js +10 -9
  844. package/build-module/color-picker/picker.js.map +1 -1
  845. package/build-module/color-picker/rgb-input.js +6 -5
  846. package/build-module/color-picker/rgb-input.js.map +1 -1
  847. package/build-module/color-picker/types.js +1 -1
  848. package/build-module/combobox-control/index.js +17 -15
  849. package/build-module/combobox-control/index.js.map +1 -1
  850. package/build-module/custom-gradient-bar/control-points.js +118 -106
  851. package/build-module/custom-gradient-bar/control-points.js.map +1 -1
  852. package/build-module/custom-gradient-bar/index.js +13 -11
  853. package/build-module/custom-gradient-bar/index.js.map +1 -1
  854. package/build-module/custom-gradient-bar/utils.js +6 -4
  855. package/build-module/custom-gradient-bar/utils.js.map +1 -1
  856. package/build-module/custom-gradient-picker/index.js +17 -14
  857. package/build-module/custom-gradient-picker/index.js.map +1 -1
  858. package/build-module/custom-gradient-picker/index.native.js +6 -5
  859. package/build-module/custom-gradient-picker/index.native.js.map +1 -1
  860. package/build-module/custom-gradient-picker/serializer.js +18 -14
  861. package/build-module/custom-gradient-picker/serializer.js.map +1 -1
  862. package/build-module/custom-gradient-picker/utils.js +5 -4
  863. package/build-module/custom-gradient-picker/utils.js.map +1 -1
  864. package/build-module/custom-select-control/index.js +22 -18
  865. package/build-module/custom-select-control/index.js.map +1 -1
  866. package/build-module/dashicon/index.js +6 -5
  867. package/build-module/dashicon/index.js.map +1 -1
  868. package/build-module/dashicon/index.native.js +5 -4
  869. package/build-module/dashicon/index.native.js.map +1 -1
  870. package/build-module/dashicon/types.js +1 -1
  871. package/build-module/date-time/date.js +5 -4
  872. package/build-module/date-time/date.js.map +1 -1
  873. package/build-module/date-time/index.js +9 -8
  874. package/build-module/date-time/index.js.map +1 -1
  875. package/build-module/date-time/time.js +14 -11
  876. package/build-module/date-time/time.js.map +1 -1
  877. package/build-module/dimension-control/index.js +10 -7
  878. package/build-module/dimension-control/index.js.map +1 -1
  879. package/build-module/disabled/index.js +8 -6
  880. package/build-module/disabled/index.js.map +1 -1
  881. package/build-module/disabled/index.native.js +4 -3
  882. package/build-module/disabled/index.native.js.map +1 -1
  883. package/build-module/divider/styles.js +7 -5
  884. package/build-module/divider/styles.js.map +1 -1
  885. package/build-module/divider/types.js +1 -1
  886. package/build-module/draggable/index.js +13 -11
  887. package/build-module/draggable/index.js.map +1 -1
  888. package/build-module/drop-zone/index.js +8 -7
  889. package/build-module/drop-zone/index.js.map +1 -1
  890. package/build-module/drop-zone/provider.js +4 -3
  891. package/build-module/drop-zone/provider.js.map +1 -1
  892. package/build-module/dropdown/index.js +14 -13
  893. package/build-module/dropdown/index.js.map +1 -1
  894. package/build-module/dropdown-menu/index.js +9 -5
  895. package/build-module/dropdown-menu/index.js.map +1 -1
  896. package/build-module/dropdown-menu/index.native.js +26 -19
  897. package/build-module/dropdown-menu/index.native.js.map +1 -1
  898. package/build-module/duotone-picker/custom-duotone-bar.js +5 -5
  899. package/build-module/duotone-picker/custom-duotone-bar.js.map +1 -1
  900. package/build-module/duotone-picker/duotone-picker.js +16 -13
  901. package/build-module/duotone-picker/duotone-picker.js.map +1 -1
  902. package/build-module/duotone-picker/duotone-swatch.js +4 -3
  903. package/build-module/duotone-picker/duotone-swatch.js.map +1 -1
  904. package/build-module/duotone-picker/utils.js +27 -14
  905. package/build-module/duotone-picker/utils.js.map +1 -1
  906. package/build-module/elevation/types.js +1 -1
  907. package/build-module/external-link/index.js +8 -7
  908. package/build-module/external-link/index.js.map +1 -1
  909. package/build-module/external-link/index.native.js +5 -4
  910. package/build-module/external-link/index.native.js.map +1 -1
  911. package/build-module/flex/flex/hook.js +6 -4
  912. package/build-module/flex/flex/hook.js.map +1 -1
  913. package/build-module/flex/types.js +1 -1
  914. package/build-module/flyout/types.js +1 -1
  915. package/build-module/flyout/utils.js +4 -3
  916. package/build-module/flyout/utils.js.map +1 -1
  917. package/build-module/focal-point-picker/controls.js +8 -7
  918. package/build-module/focal-point-picker/controls.js.map +1 -1
  919. package/build-module/focal-point-picker/focal-point.js +8 -7
  920. package/build-module/focal-point-picker/focal-point.js.map +1 -1
  921. package/build-module/focal-point-picker/focal-point.native.js +6 -5
  922. package/build-module/focal-point-picker/focal-point.native.js.map +1 -1
  923. package/build-module/focal-point-picker/grid.js +6 -5
  924. package/build-module/focal-point-picker/grid.js.map +1 -1
  925. package/build-module/focal-point-picker/index.js +2 -1
  926. package/build-module/focal-point-picker/index.js.map +1 -1
  927. package/build-module/focal-point-picker/media.js +19 -16
  928. package/build-module/focal-point-picker/media.js.map +1 -1
  929. package/build-module/focal-point-picker/styles/focal-point-picker-style.js +7 -4
  930. package/build-module/focal-point-picker/styles/focal-point-picker-style.js.map +1 -1
  931. package/build-module/focal-point-picker/styles/focal-point-style.js +6 -3
  932. package/build-module/focal-point-picker/styles/focal-point-style.js.map +1 -1
  933. package/build-module/focal-point-picker/tooltip/index.native.js +18 -15
  934. package/build-module/focal-point-picker/tooltip/index.native.js.map +1 -1
  935. package/build-module/focal-point-picker/utils.js +4 -2
  936. package/build-module/focal-point-picker/utils.js.map +1 -1
  937. package/build-module/focusable-iframe/index.js +5 -4
  938. package/build-module/focusable-iframe/index.js.map +1 -1
  939. package/build-module/font-size-picker/index.js +20 -15
  940. package/build-module/font-size-picker/index.js.map +1 -1
  941. package/build-module/font-size-picker/index.native.js +7 -6
  942. package/build-module/font-size-picker/index.native.js.map +1 -1
  943. package/build-module/font-size-picker/utils.js +19 -15
  944. package/build-module/font-size-picker/utils.js.map +1 -1
  945. package/build-module/footer-message-control/index.native.js +3 -2
  946. package/build-module/footer-message-control/index.native.js.map +1 -1
  947. package/build-module/form-file-upload/index.js +9 -8
  948. package/build-module/form-file-upload/index.js.map +1 -1
  949. package/build-module/form-toggle/index.js +9 -8
  950. package/build-module/form-toggle/index.js.map +1 -1
  951. package/build-module/form-token-field/index.js +8 -2
  952. package/build-module/form-token-field/index.js.map +1 -1
  953. package/build-module/form-token-field/token.js +15 -14
  954. package/build-module/form-token-field/token.js.map +1 -1
  955. package/build-module/gradient-picker/index.js +97 -32
  956. package/build-module/gradient-picker/index.js.map +1 -1
  957. package/build-module/grid/types.js +1 -1
  958. package/build-module/guide/icons.js +16 -13
  959. package/build-module/guide/icons.js.map +1 -1
  960. package/build-module/guide/index.js +9 -8
  961. package/build-module/guide/index.js.map +1 -1
  962. package/build-module/guide/page-control.js +6 -5
  963. package/build-module/guide/page-control.js.map +1 -1
  964. package/build-module/h-stack/types.js +1 -1
  965. package/build-module/h-stack/utils.js +3 -1
  966. package/build-module/h-stack/utils.js.map +1 -1
  967. package/build-module/higher-order/navigate-regions/index.js +19 -13
  968. package/build-module/higher-order/navigate-regions/index.js.map +1 -1
  969. package/build-module/higher-order/with-focus-return/index.js +17 -13
  970. package/build-module/higher-order/with-focus-return/index.js.map +1 -1
  971. package/build-module/icon/index.js +7 -5
  972. package/build-module/icon/index.js.map +1 -1
  973. package/build-module/index.native.js +1 -0
  974. package/build-module/index.native.js.map +1 -1
  975. package/build-module/input-control/backdrop.js +5 -4
  976. package/build-module/input-control/backdrop.js.map +1 -1
  977. package/build-module/input-control/index.js +20 -19
  978. package/build-module/input-control/index.js.map +1 -1
  979. package/build-module/input-control/input-base.js +16 -15
  980. package/build-module/input-control/input-base.js.map +1 -1
  981. package/build-module/input-control/input-field.js +24 -23
  982. package/build-module/input-control/input-field.js.map +1 -1
  983. package/build-module/input-control/label.js +7 -6
  984. package/build-module/input-control/label.js.map +1 -1
  985. package/build-module/input-control/reducer/reducer.js +15 -4
  986. package/build-module/input-control/reducer/reducer.js.map +1 -1
  987. package/build-module/input-control/styles/input-control-styles.js +48 -36
  988. package/build-module/input-control/styles/input-control-styles.js.map +1 -1
  989. package/build-module/input-control/types.js +1 -1
  990. package/build-module/isolated-event-container/index.js +5 -4
  991. package/build-module/isolated-event-container/index.js.map +1 -1
  992. package/build-module/item-group/types.js +1 -1
  993. package/build-module/keyboard-shortcuts/index.js +15 -13
  994. package/build-module/keyboard-shortcuts/index.js.map +1 -1
  995. package/build-module/menu-items-choice/index.js +7 -6
  996. package/build-module/menu-items-choice/index.js.map +1 -1
  997. package/build-module/mobile/audio-player/index.native.js +8 -7
  998. package/build-module/mobile/audio-player/index.native.js.map +1 -1
  999. package/build-module/mobile/badge/index.native.js +6 -5
  1000. package/build-module/mobile/badge/index.native.js.map +1 -1
  1001. package/build-module/mobile/bottom-sheet/bottom-sheet-navigation/navigation-container.native.js +12 -10
  1002. package/build-module/mobile/bottom-sheet/bottom-sheet-navigation/navigation-container.native.js.map +1 -1
  1003. package/build-module/mobile/bottom-sheet/bottom-sheet-navigation/navigation-screen.native.js +12 -9
  1004. package/build-module/mobile/bottom-sheet/bottom-sheet-navigation/navigation-screen.native.js.map +1 -1
  1005. package/build-module/mobile/bottom-sheet/button.native.js +21 -18
  1006. package/build-module/mobile/bottom-sheet/button.native.js.map +1 -1
  1007. package/build-module/mobile/bottom-sheet/cell.native.js +4 -2
  1008. package/build-module/mobile/bottom-sheet/cell.native.js.map +1 -1
  1009. package/build-module/mobile/bottom-sheet/footer-message-cell.native.js +5 -4
  1010. package/build-module/mobile/bottom-sheet/footer-message-cell.native.js.map +1 -1
  1011. package/build-module/mobile/bottom-sheet/footer-message-link/footer-message-link.native.js +5 -4
  1012. package/build-module/mobile/bottom-sheet/footer-message-link/footer-message-link.native.js.map +1 -1
  1013. package/build-module/mobile/bottom-sheet/index.native.js +24 -17
  1014. package/build-module/mobile/bottom-sheet/index.native.js.map +1 -1
  1015. package/build-module/mobile/bottom-sheet/link-cell.native.js +9 -7
  1016. package/build-module/mobile/bottom-sheet/link-cell.native.js.map +1 -1
  1017. package/build-module/mobile/bottom-sheet/link-suggestion-item-cell.native.js +5 -4
  1018. package/build-module/mobile/bottom-sheet/link-suggestion-item-cell.native.js.map +1 -1
  1019. package/build-module/mobile/bottom-sheet/nav-bar/action-button.native.js +7 -6
  1020. package/build-module/mobile/bottom-sheet/nav-bar/action-button.native.js.map +1 -1
  1021. package/build-module/mobile/bottom-sheet/nav-bar/apply-button.native.js +4 -3
  1022. package/build-module/mobile/bottom-sheet/nav-bar/apply-button.native.js.map +1 -1
  1023. package/build-module/mobile/bottom-sheet/nav-bar/back-button.native.js +15 -12
  1024. package/build-module/mobile/bottom-sheet/nav-bar/back-button.native.js.map +1 -1
  1025. package/build-module/mobile/bottom-sheet/nav-bar/heading.native.js +4 -3
  1026. package/build-module/mobile/bottom-sheet/nav-bar/heading.native.js.map +1 -1
  1027. package/build-module/mobile/bottom-sheet/nav-bar/index.native.js +4 -3
  1028. package/build-module/mobile/bottom-sheet/nav-bar/index.native.js.map +1 -1
  1029. package/build-module/mobile/bottom-sheet/range-text-input.native.js +6 -5
  1030. package/build-module/mobile/bottom-sheet/range-text-input.native.js.map +1 -1
  1031. package/build-module/mobile/bottom-sheet/ripple.native.js +11 -10
  1032. package/build-module/mobile/bottom-sheet/ripple.native.js.map +1 -1
  1033. package/build-module/mobile/bottom-sheet/stepper-cell/index.native.js +2 -1
  1034. package/build-module/mobile/bottom-sheet/stepper-cell/index.native.js.map +1 -1
  1035. package/build-module/mobile/bottom-sheet/stepper-cell/stepper.android.js +12 -11
  1036. package/build-module/mobile/bottom-sheet/stepper-cell/stepper.android.js.map +1 -1
  1037. package/build-module/mobile/bottom-sheet/stepper-cell/stepper.ios.js +12 -11
  1038. package/build-module/mobile/bottom-sheet/stepper-cell/stepper.ios.js.map +1 -1
  1039. package/build-module/mobile/bottom-sheet/sub-sheet/index.native.js +7 -6
  1040. package/build-module/mobile/bottom-sheet/sub-sheet/index.native.js.map +1 -1
  1041. package/build-module/mobile/bottom-sheet-select-control/index.native.js +8 -7
  1042. package/build-module/mobile/bottom-sheet-select-control/index.native.js.map +1 -1
  1043. package/build-module/mobile/bottom-sheet-text-control/index.native.js +9 -8
  1044. package/build-module/mobile/bottom-sheet-text-control/index.native.js.map +1 -1
  1045. package/build-module/mobile/color-settings/index.native.js +11 -10
  1046. package/build-module/mobile/color-settings/index.native.js.map +1 -1
  1047. package/build-module/mobile/cycle-select-control/index.native.js +12 -11
  1048. package/build-module/mobile/cycle-select-control/index.native.js.map +1 -1
  1049. package/build-module/mobile/focal-point-settings-panel/index.native.js +7 -6
  1050. package/build-module/mobile/focal-point-settings-panel/index.native.js.map +1 -1
  1051. package/build-module/mobile/global-styles-context/utils.native.js +5 -3
  1052. package/build-module/mobile/global-styles-context/utils.native.js.map +1 -1
  1053. package/build-module/mobile/gradient/index.native.js +11 -10
  1054. package/build-module/mobile/gradient/index.native.js.map +1 -1
  1055. package/build-module/mobile/html-text-input/container.android.js +12 -9
  1056. package/build-module/mobile/html-text-input/container.android.js.map +1 -1
  1057. package/build-module/mobile/image/image-editing-button.native.js +26 -22
  1058. package/build-module/mobile/image/image-editing-button.native.js.map +1 -1
  1059. package/build-module/mobile/image/index.native.js +23 -22
  1060. package/build-module/mobile/image/index.native.js.map +1 -1
  1061. package/build-module/mobile/keyboard-avoiding-view/index.ios.js +29 -22
  1062. package/build-module/mobile/keyboard-avoiding-view/index.ios.js.map +1 -1
  1063. package/build-module/mobile/keyboard-aware-flat-list/index.ios.js +46 -43
  1064. package/build-module/mobile/keyboard-aware-flat-list/index.ios.js.map +1 -1
  1065. package/build-module/mobile/layout-animation/index.native.js +2 -1
  1066. package/build-module/mobile/layout-animation/index.native.js.map +1 -1
  1067. package/build-module/mobile/link-picker/index.native.js +12 -10
  1068. package/build-module/mobile/link-picker/index.native.js.map +1 -1
  1069. package/build-module/mobile/link-picker/link-picker-results.native.js +48 -34
  1070. package/build-module/mobile/link-picker/link-picker-results.native.js.map +1 -1
  1071. package/build-module/mobile/link-picker/link-picker-screen.native.js +9 -7
  1072. package/build-module/mobile/link-picker/link-picker-screen.native.js.map +1 -1
  1073. package/build-module/mobile/link-settings/image-link-destinations-screen.native.js +122 -0
  1074. package/build-module/mobile/link-settings/image-link-destinations-screen.native.js.map +1 -0
  1075. package/build-module/mobile/link-settings/index.native.js +59 -57
  1076. package/build-module/mobile/link-settings/index.native.js.map +1 -1
  1077. package/build-module/mobile/link-settings/link-settings-navigation.native.js +1 -0
  1078. package/build-module/mobile/link-settings/link-settings-navigation.native.js.map +1 -1
  1079. package/build-module/mobile/link-settings/link-settings-screen.native.js +11 -5
  1080. package/build-module/mobile/link-settings/link-settings-screen.native.js.map +1 -1
  1081. package/build-module/mobile/picker/index.android.js +4 -2
  1082. package/build-module/mobile/picker/index.android.js.map +1 -1
  1083. package/build-module/mobile/picker/index.ios.js +6 -3
  1084. package/build-module/mobile/picker/index.ios.js.map +1 -1
  1085. package/build-module/mobile/readable-content-view/index.native.js +11 -9
  1086. package/build-module/mobile/readable-content-view/index.native.js.map +1 -1
  1087. package/build-module/mobile/segmented-control/index.native.js +16 -14
  1088. package/build-module/mobile/segmented-control/index.native.js.map +1 -1
  1089. package/build-module/mobile/utils/index.native.js +2 -1
  1090. package/build-module/mobile/utils/index.native.js.map +1 -1
  1091. package/build-module/mobile/utils/use-unit-converter-to-mobile.native.js +4 -3
  1092. package/build-module/mobile/utils/use-unit-converter-to-mobile.native.js.map +1 -1
  1093. package/build-module/modal/index.js +35 -28
  1094. package/build-module/modal/index.js.map +1 -1
  1095. package/build-module/navigable-container/menu.js +7 -5
  1096. package/build-module/navigable-container/menu.js.map +1 -1
  1097. package/build-module/navigable-container/tabbable.js +6 -4
  1098. package/build-module/navigable-container/tabbable.js.map +1 -1
  1099. package/build-module/navigation/back-button/index.js +8 -7
  1100. package/build-module/navigation/back-button/index.js.map +1 -1
  1101. package/build-module/navigation/group/index.js +7 -7
  1102. package/build-module/navigation/group/index.js.map +1 -1
  1103. package/build-module/navigation/index.js +11 -8
  1104. package/build-module/navigation/index.js.map +1 -1
  1105. package/build-module/navigation/menu/menu-title-search.js +16 -31
  1106. package/build-module/navigation/menu/menu-title-search.js.map +1 -1
  1107. package/build-module/navigation/menu/menu-title.js +11 -10
  1108. package/build-module/navigation/menu/menu-title.js.map +1 -1
  1109. package/build-module/navigation/menu/search-no-results-found.js +4 -3
  1110. package/build-module/navigation/menu/search-no-results-found.js.map +1 -1
  1111. package/build-module/navigation/styles/navigation-styles.js +31 -27
  1112. package/build-module/navigation/styles/navigation-styles.js.map +1 -1
  1113. package/build-module/navigator/types.js +1 -1
  1114. package/build-module/notice/index.js +26 -24
  1115. package/build-module/notice/index.js.map +1 -1
  1116. package/build-module/notice/index.native.js +7 -6
  1117. package/build-module/notice/index.native.js.map +1 -1
  1118. package/build-module/notice/list.js +8 -6
  1119. package/build-module/notice/list.js.map +1 -1
  1120. package/build-module/number-control/index.js +18 -17
  1121. package/build-module/number-control/index.js.map +1 -1
  1122. package/build-module/number-control/styles/number-control-styles.js +4 -3
  1123. package/build-module/number-control/styles/number-control-styles.js.map +1 -1
  1124. package/build-module/panel/actions.native.js +10 -8
  1125. package/build-module/panel/actions.native.js.map +1 -1
  1126. package/build-module/panel/body.js +19 -17
  1127. package/build-module/panel/body.js.map +1 -1
  1128. package/build-module/panel/body.native.js +7 -6
  1129. package/build-module/panel/body.native.js.map +1 -1
  1130. package/build-module/panel/bottom-separator-cover.native.js +4 -3
  1131. package/build-module/panel/bottom-separator-cover.native.js.map +1 -1
  1132. package/build-module/panel/header.js +5 -4
  1133. package/build-module/panel/header.js.map +1 -1
  1134. package/build-module/panel/index.js +6 -5
  1135. package/build-module/panel/index.js.map +1 -1
  1136. package/build-module/panel/row.js +10 -7
  1137. package/build-module/panel/row.js.map +1 -1
  1138. package/build-module/placeholder/index.js +12 -11
  1139. package/build-module/placeholder/index.js.map +1 -1
  1140. package/build-module/popover/index.js +49 -39
  1141. package/build-module/popover/index.js.map +1 -1
  1142. package/build-module/popover/utils.js +9 -1
  1143. package/build-module/popover/utils.js.map +1 -1
  1144. package/build-module/query-controls/author-select.js +8 -7
  1145. package/build-module/query-controls/author-select.js.map +1 -1
  1146. package/build-module/query-controls/category-select.js +9 -8
  1147. package/build-module/query-controls/category-select.js.map +1 -1
  1148. package/build-module/query-controls/index.js +19 -18
  1149. package/build-module/query-controls/index.js.map +1 -1
  1150. package/build-module/query-controls/index.native.js +14 -13
  1151. package/build-module/query-controls/index.native.js.map +1 -1
  1152. package/build-module/radio/index.js +6 -5
  1153. package/build-module/radio/index.js.map +1 -1
  1154. package/build-module/radio-control/index.js +11 -10
  1155. package/build-module/radio-control/index.js.map +1 -1
  1156. package/build-module/radio-control/index.native.js +7 -6
  1157. package/build-module/radio-control/index.native.js.map +1 -1
  1158. package/build-module/radio-group/index.js +9 -8
  1159. package/build-module/radio-group/index.js.map +1 -1
  1160. package/build-module/range-control/index.js +33 -32
  1161. package/build-module/range-control/index.js.map +1 -1
  1162. package/build-module/range-control/index.native.js +20 -18
  1163. package/build-module/range-control/index.native.js.map +1 -1
  1164. package/build-module/range-control/input-range.js +11 -10
  1165. package/build-module/range-control/input-range.js.map +1 -1
  1166. package/build-module/range-control/mark.js +8 -7
  1167. package/build-module/range-control/mark.js.map +1 -1
  1168. package/build-module/range-control/rail.js +29 -24
  1169. package/build-module/range-control/rail.js.map +1 -1
  1170. package/build-module/range-control/styles/range-control-styles.js +81 -63
  1171. package/build-module/range-control/styles/range-control-styles.js.map +1 -1
  1172. package/build-module/range-control/tooltip.js +17 -15
  1173. package/build-module/range-control/tooltip.js.map +1 -1
  1174. package/build-module/range-control/utils.js +15 -13
  1175. package/build-module/range-control/utils.js.map +1 -1
  1176. package/build-module/resizable-box/index.js +9 -8
  1177. package/build-module/resizable-box/index.js.map +1 -1
  1178. package/build-module/resizable-box/resize-tooltip/index.js +13 -12
  1179. package/build-module/resizable-box/resize-tooltip/index.js.map +1 -1
  1180. package/build-module/resizable-box/resize-tooltip/label.js +7 -6
  1181. package/build-module/resizable-box/resize-tooltip/label.js.map +1 -1
  1182. package/build-module/resizable-box/resize-tooltip/utils.js +19 -16
  1183. package/build-module/resizable-box/resize-tooltip/utils.js.map +1 -1
  1184. package/build-module/responsive-wrapper/index.js +7 -6
  1185. package/build-module/responsive-wrapper/index.js.map +1 -1
  1186. package/build-module/sandbox/index.js +12 -9
  1187. package/build-module/sandbox/index.js.map +1 -1
  1188. package/build-module/sandbox/index.native.js +15 -13
  1189. package/build-module/sandbox/index.native.js.map +1 -1
  1190. package/build-module/scrollable/types.js +1 -1
  1191. package/build-module/search-control/index.js +44 -22
  1192. package/build-module/search-control/index.js.map +1 -1
  1193. package/build-module/search-control/index.native.js +6 -5
  1194. package/build-module/search-control/index.native.js.map +1 -1
  1195. package/build-module/select-control/index.js +33 -26
  1196. package/build-module/select-control/index.js.map +1 -1
  1197. package/build-module/select-control/index.native.js +12 -11
  1198. package/build-module/select-control/index.native.js.map +1 -1
  1199. package/build-module/select-control/styles/select-control-styles.js +12 -9
  1200. package/build-module/select-control/styles/select-control-styles.js.map +1 -1
  1201. package/build-module/select-control/types.js +1 -1
  1202. package/build-module/shortcut/index.js +6 -4
  1203. package/build-module/shortcut/index.js.map +1 -1
  1204. package/build-module/slot-fill/bubbles-virtually/fill.js +5 -4
  1205. package/build-module/slot-fill/bubbles-virtually/fill.js.map +1 -1
  1206. package/build-module/slot-fill/bubbles-virtually/slot-fill-provider.js +4 -3
  1207. package/build-module/slot-fill/bubbles-virtually/slot-fill-provider.js.map +1 -1
  1208. package/build-module/slot-fill/bubbles-virtually/slot.js +7 -6
  1209. package/build-module/slot-fill/bubbles-virtually/slot.js.map +1 -1
  1210. package/build-module/slot-fill/fill.js +17 -13
  1211. package/build-module/slot-fill/fill.js.map +1 -1
  1212. package/build-module/slot-fill/index.js +11 -8
  1213. package/build-module/slot-fill/index.js.map +1 -1
  1214. package/build-module/slot-fill/slot.js +12 -9
  1215. package/build-module/slot-fill/slot.js.map +1 -1
  1216. package/build-module/snackbar/index.js +22 -20
  1217. package/build-module/snackbar/index.js.map +1 -1
  1218. package/build-module/snackbar/list.js +7 -6
  1219. package/build-module/snackbar/list.js.map +1 -1
  1220. package/build-module/spacer/types.js +1 -1
  1221. package/build-module/style-provider/index.js +6 -4
  1222. package/build-module/style-provider/index.js.map +1 -1
  1223. package/build-module/style-provider/index.native.js +4 -3
  1224. package/build-module/style-provider/index.native.js.map +1 -1
  1225. package/build-module/surface/styles.js +7 -6
  1226. package/build-module/surface/styles.js.map +1 -1
  1227. package/build-module/surface/types.js +1 -1
  1228. package/build-module/swatch/index.js +4 -3
  1229. package/build-module/swatch/index.js.map +1 -1
  1230. package/build-module/tab-panel/index.js +26 -22
  1231. package/build-module/tab-panel/index.js.map +1 -1
  1232. package/build-module/text/styles/text-mixins.native.js +3 -1
  1233. package/build-module/text/styles/text-mixins.native.js.map +1 -1
  1234. package/build-module/text/styles.js +7 -7
  1235. package/build-module/text/styles.js.map +1 -1
  1236. package/build-module/text/types.js +1 -1
  1237. package/build-module/text/utils.js +17 -16
  1238. package/build-module/text/utils.js.map +1 -1
  1239. package/build-module/text-control/index.js +13 -12
  1240. package/build-module/text-control/index.js.map +1 -1
  1241. package/build-module/text-control/index.native.js +13 -12
  1242. package/build-module/text-control/index.native.js.map +1 -1
  1243. package/build-module/text-highlight/index.js +5 -4
  1244. package/build-module/text-highlight/index.js.map +1 -1
  1245. package/build-module/textarea-control/index.js +11 -10
  1246. package/build-module/textarea-control/index.js.map +1 -1
  1247. package/build-module/textarea-control/index.native.js +8 -7
  1248. package/build-module/textarea-control/index.native.js.map +1 -1
  1249. package/build-module/toggle-control/index.js +10 -8
  1250. package/build-module/toggle-control/index.js.map +1 -1
  1251. package/build-module/toggle-control/index.native.js +10 -9
  1252. package/build-module/toggle-control/index.native.js.map +1 -1
  1253. package/build-module/toggle-group-control/toggle-group-control/toggle-group-control-backdrop.js +7 -6
  1254. package/build-module/toggle-group-control/toggle-group-control/toggle-group-control-backdrop.js.map +1 -1
  1255. package/build-module/toggle-group-control/types.js +1 -1
  1256. package/build-module/toolbar/index.js +7 -5
  1257. package/build-module/toolbar/index.js.map +1 -1
  1258. package/build-module/toolbar/toolbar-container.js +5 -4
  1259. package/build-module/toolbar/toolbar-container.js.map +1 -1
  1260. package/build-module/toolbar/toolbar-container.native.js +6 -3
  1261. package/build-module/toolbar/toolbar-container.native.js.map +1 -1
  1262. package/build-module/toolbar-button/index.js +11 -10
  1263. package/build-module/toolbar-button/index.js.map +1 -1
  1264. package/build-module/toolbar-group/index.js +9 -8
  1265. package/build-module/toolbar-group/index.js.map +1 -1
  1266. package/build-module/toolbar-group/toolbar-group-collapsed.js +6 -5
  1267. package/build-module/toolbar-group/toolbar-group-collapsed.js.map +1 -1
  1268. package/build-module/toolbar-group/toolbar-group-collapsed.native.js +7 -6
  1269. package/build-module/toolbar-group/toolbar-group-collapsed.native.js.map +1 -1
  1270. package/build-module/toolbar-group/toolbar-group-container.js +10 -7
  1271. package/build-module/toolbar-group/toolbar-group-container.js.map +1 -1
  1272. package/build-module/toolbar-group/toolbar-group-container.native.js +10 -7
  1273. package/build-module/toolbar-group/toolbar-group-container.native.js.map +1 -1
  1274. package/build-module/toolbar-item/index.js +6 -5
  1275. package/build-module/toolbar-item/index.js.map +1 -1
  1276. package/build-module/toolbar-item/index.native.js +6 -4
  1277. package/build-module/toolbar-item/index.native.js.map +1 -1
  1278. package/build-module/tools-panel/styles.js +16 -23
  1279. package/build-module/tools-panel/styles.js.map +1 -1
  1280. package/build-module/tools-panel/tools-panel/component.js +10 -6
  1281. package/build-module/tools-panel/tools-panel/component.js.map +1 -1
  1282. package/build-module/tools-panel/tools-panel/hook.js +19 -12
  1283. package/build-module/tools-panel/tools-panel/hook.js.map +1 -1
  1284. package/build-module/tools-panel/tools-panel-header/component.js +41 -29
  1285. package/build-module/tools-panel/tools-panel-header/component.js.map +1 -1
  1286. package/build-module/tools-panel/types.js +1 -1
  1287. package/build-module/tooltip/index.js +52 -41
  1288. package/build-module/tooltip/index.js.map +1 -1
  1289. package/build-module/tooltip/index.native.js +16 -13
  1290. package/build-module/tooltip/index.native.js.map +1 -1
  1291. package/build-module/tree-grid/cell.js +6 -5
  1292. package/build-module/tree-grid/cell.js.map +1 -1
  1293. package/build-module/tree-grid/index.js +7 -6
  1294. package/build-module/tree-grid/index.js.map +1 -1
  1295. package/build-module/tree-grid/item.js +5 -4
  1296. package/build-module/tree-grid/item.js.map +1 -1
  1297. package/build-module/tree-grid/roving-tab-index-item.js +6 -5
  1298. package/build-module/tree-grid/roving-tab-index-item.js.map +1 -1
  1299. package/build-module/tree-grid/roving-tab-index.js +4 -3
  1300. package/build-module/tree-grid/roving-tab-index.js.map +1 -1
  1301. package/build-module/tree-grid/row.js +9 -8
  1302. package/build-module/tree-grid/row.js.map +1 -1
  1303. package/build-module/tree-select/index.js +11 -9
  1304. package/build-module/tree-select/index.js.map +1 -1
  1305. package/build-module/truncate/types.js +1 -1
  1306. package/build-module/truncate/utils.js +3 -1
  1307. package/build-module/truncate/utils.js.map +1 -1
  1308. package/build-module/ui/__storybook-utils/example-grid.js +40 -30
  1309. package/build-module/ui/__storybook-utils/example-grid.js.map +1 -1
  1310. package/build-module/ui/__storybook-utils/page.js +5 -4
  1311. package/build-module/ui/__storybook-utils/page.js.map +1 -1
  1312. package/build-module/ui/context/context-connect.js +3 -1
  1313. package/build-module/ui/context/context-connect.js.map +1 -1
  1314. package/build-module/ui/context/context-system-provider.js +9 -7
  1315. package/build-module/ui/context/context-system-provider.js.map +1 -1
  1316. package/build-module/ui/context/wordpress-component.js +1 -1
  1317. package/build-module/ui/control-group/types.js +1 -1
  1318. package/build-module/ui/control-label/types.js +1 -1
  1319. package/build-module/ui/form-group/form-group-content.js +13 -12
  1320. package/build-module/ui/form-group/form-group-content.js.map +1 -1
  1321. package/build-module/ui/form-group/form-group-help.js +4 -3
  1322. package/build-module/ui/form-group/form-group-help.js.map +1 -1
  1323. package/build-module/ui/form-group/form-group-label.js +7 -6
  1324. package/build-module/ui/form-group/form-group-label.js.map +1 -1
  1325. package/build-module/ui/form-group/types.js +1 -1
  1326. package/build-module/ui/tooltip/types.js +1 -1
  1327. package/build-module/ui/utils/font-size.js +6 -2
  1328. package/build-module/ui/utils/font-size.js.map +1 -1
  1329. package/build-module/ui/utils/get-high-dpi.js +5 -1
  1330. package/build-module/ui/utils/get-high-dpi.js.map +1 -1
  1331. package/build-module/ui/utils/types.js +1 -1
  1332. package/build-module/ui/utils/use-responsive-value.js +4 -2
  1333. package/build-module/ui/utils/use-responsive-value.js.map +1 -1
  1334. package/build-module/unit-control/index.js +20 -19
  1335. package/build-module/unit-control/index.js.map +1 -1
  1336. package/build-module/unit-control/index.native.js +16 -15
  1337. package/build-module/unit-control/index.native.js.map +1 -1
  1338. package/build-module/unit-control/styles/unit-control-styles.js +12 -9
  1339. package/build-module/unit-control/styles/unit-control-styles.js.map +1 -1
  1340. package/build-module/unit-control/types.js +1 -1
  1341. package/build-module/unit-control/unit-select-control.js +11 -9
  1342. package/build-module/unit-control/unit-select-control.js.map +1 -1
  1343. package/build-module/unit-control/utils.js +14 -8
  1344. package/build-module/unit-control/utils.js.map +1 -1
  1345. package/build-module/utils/browsers.js +10 -2
  1346. package/build-module/utils/browsers.js.map +1 -1
  1347. package/build-module/utils/colors.js +3 -1
  1348. package/build-module/utils/colors.js.map +1 -1
  1349. package/build-module/utils/hooks/emotion.d.js +1 -1
  1350. package/build-module/utils/hooks/index.js +1 -0
  1351. package/build-module/utils/hooks/index.js.map +1 -1
  1352. package/build-module/utils/hooks/use-combined-ref.js +29 -0
  1353. package/build-module/utils/hooks/use-combined-ref.js.map +1 -0
  1354. package/build-module/utils/hooks/use-controlled-state.js +2 -1
  1355. package/build-module/utils/hooks/use-controlled-state.js.map +1 -1
  1356. package/build-module/utils/hooks/use-controlled-value.js +6 -5
  1357. package/build-module/utils/hooks/use-controlled-value.js.map +1 -1
  1358. package/build-module/utils/hooks/use-cx.js +5 -1
  1359. package/build-module/utils/hooks/use-cx.js.map +1 -1
  1360. package/build-module/utils/math.js +17 -5
  1361. package/build-module/utils/math.js.map +1 -1
  1362. package/build-module/utils/reduce-motion.js +2 -1
  1363. package/build-module/utils/reduce-motion.js.map +1 -1
  1364. package/build-module/utils/rtl.js +5 -2
  1365. package/build-module/utils/rtl.js.map +1 -1
  1366. package/build-module/utils/types.js +1 -1
  1367. package/build-module/utils/values.js +9 -5
  1368. package/build-module/utils/values.js.map +1 -1
  1369. package/build-module/v-stack/types.js +1 -1
  1370. package/build-module/z-stack/styles.js +23 -14
  1371. package/build-module/z-stack/styles.js.map +1 -1
  1372. package/build-style/style-rtl.css +39 -51
  1373. package/build-style/style.css +39 -51
  1374. package/build-types/range-control/styles/range-control-styles.d.ts.map +1 -1
  1375. package/build-types/tools-panel/styles.d.ts +1 -1
  1376. package/build-types/tools-panel/styles.d.ts.map +1 -1
  1377. package/build-types/tools-panel/tools-panel/component.d.ts.map +1 -1
  1378. package/build-types/tools-panel/tools-panel/hook.d.ts.map +1 -1
  1379. package/build-types/tools-panel/tools-panel-header/component.d.ts.map +1 -1
  1380. package/build-types/utils/hooks/index.d.ts +1 -0
  1381. package/build-types/utils/hooks/use-combined-ref.d.ts +8 -0
  1382. package/build-types/utils/hooks/use-combined-ref.d.ts.map +1 -0
  1383. package/package.json +16 -16
  1384. package/src/angle-picker-control/index.js +3 -1
  1385. package/src/angle-picker-control/styles/angle-picker-control-styles.js +2 -2
  1386. package/src/base-control/index.js +1 -1
  1387. package/src/circular-option-picker/style.scss +3 -5
  1388. package/src/color-edit/index.js +248 -274
  1389. package/src/color-edit/style.scss +4 -45
  1390. package/src/color-edit/styles.js +97 -0
  1391. package/src/color-list-picker/index.js +5 -0
  1392. package/src/color-list-picker/style.scss +4 -0
  1393. package/src/color-palette/index.js +90 -26
  1394. package/src/color-palette/style.scss +18 -0
  1395. package/src/color-palette/styles.js +19 -0
  1396. package/src/color-palette/test/__snapshots__/index.js.snap +448 -414
  1397. package/src/color-picker/component.tsx +6 -17
  1398. package/src/color-picker/picker.tsx +6 -4
  1399. package/src/color-picker/test/index.js +0 -15
  1400. package/src/duotone-picker/custom-duotone-bar.js +0 -1
  1401. package/src/duotone-picker/duotone-picker.js +1 -0
  1402. package/src/gradient-picker/index.js +79 -11
  1403. package/src/heading/test/__snapshots__/index.js.snap +1 -1
  1404. package/src/index.native.js +1 -0
  1405. package/src/mobile/bottom-sheet/cell.native.js +7 -2
  1406. package/src/mobile/bottom-sheet/cellStyles.android.scss +5 -1
  1407. package/src/mobile/bottom-sheet/cellStyles.ios.scss +5 -1
  1408. package/src/mobile/bottom-sheet/link-cell.native.js +10 -3
  1409. package/src/mobile/global-styles-context/test/fixtures/theme.native.js +4 -4
  1410. package/src/mobile/global-styles-context/utils.native.js +1 -1
  1411. package/src/mobile/link-settings/image-link-destinations-screen.native.js +148 -0
  1412. package/src/mobile/link-settings/index.native.js +3 -2
  1413. package/src/mobile/link-settings/link-settings-navigation.native.js +1 -0
  1414. package/src/mobile/link-settings/link-settings-screen.native.js +6 -2
  1415. package/src/mobile/link-settings/style.native.scss +17 -0
  1416. package/src/mobile/picker/index.android.js +2 -1
  1417. package/src/modal/README.md +8 -0
  1418. package/src/modal/index.js +60 -45
  1419. package/src/modal/style.scss +5 -0
  1420. package/src/navigation/group/index.js +1 -2
  1421. package/src/navigation/menu/menu-title-search.js +11 -26
  1422. package/src/navigation/menu/menu-title.js +4 -4
  1423. package/src/navigation/styles/navigation-styles.js +29 -52
  1424. package/src/popover/index.js +2 -2
  1425. package/src/range-control/styles/range-control-styles.js +4 -1
  1426. package/src/resizable-box/style.scss +5 -0
  1427. package/src/search-control/index.js +47 -23
  1428. package/src/style.scss +1 -0
  1429. package/src/text/styles.js +1 -1
  1430. package/src/text/test/__snapshots__/index.js.snap +2 -2
  1431. package/src/tools-panel/stories/index.js +21 -19
  1432. package/src/tools-panel/styles.ts +18 -26
  1433. package/src/tools-panel/tools-panel/component.tsx +7 -4
  1434. package/src/tools-panel/tools-panel/hook.ts +4 -1
  1435. package/src/tools-panel/tools-panel-header/component.tsx +1 -0
  1436. package/src/ui/control-label/test/__snapshots__/index.js.snap +3 -3
  1437. package/src/ui/form-group/test/__snapshots__/index.js.snap +2 -2
  1438. package/src/utils/hooks/index.js +1 -0
  1439. package/src/utils/hooks/use-combined-ref.ts +29 -0
  1440. package/tsconfig.tsbuildinfo +1 -1
@@ -25,25 +25,26 @@ import UnitSelectControl from './unit-select-control';
25
25
  import { CSS_UNITS, getParsedValue, getUnitsWithCurrentUnit, getValidParsedUnit } from './utils';
26
26
  import { useControlledState } from '../utils/hooks';
27
27
 
28
- function UnitControl({
29
- __unstableStateReducer: stateReducer = state => state,
30
- autoComplete = 'off',
31
- className,
32
- disabled = false,
33
- disableUnits = false,
34
- isPressEnterToChange = false,
35
- isResetValueOnUnitChange = false,
36
- isUnitSelectTabbable = true,
37
- label,
38
- onChange = noop,
39
- onUnitChange = noop,
40
- size = 'default',
41
- style,
42
- unit: unitProp,
43
- units: unitsProp = CSS_UNITS,
44
- value: valueProp,
45
- ...props
46
- }, forwardedRef) {
28
+ function UnitControl(_ref, forwardedRef) {
29
+ let {
30
+ __unstableStateReducer: stateReducer = state => state,
31
+ autoComplete = 'off',
32
+ className,
33
+ disabled = false,
34
+ disableUnits = false,
35
+ isPressEnterToChange = false,
36
+ isResetValueOnUnitChange = false,
37
+ isUnitSelectTabbable = true,
38
+ label,
39
+ onChange = noop,
40
+ onUnitChange = noop,
41
+ size = 'default',
42
+ style,
43
+ unit: unitProp,
44
+ units: unitsProp = CSS_UNITS,
45
+ value: valueProp,
46
+ ...props
47
+ } = _ref;
47
48
  const units = useMemo(() => getUnitsWithCurrentUnit(valueProp, unitProp, unitsProp), [valueProp, unitProp, unitsProp]);
48
49
  const [value, initialUnit] = getParsedValue(valueProp, unitProp, units);
49
50
  const [unit, setUnit] = useControlledState(unitProp, {
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/unit-control/index.tsx"],"names":["noop","omit","classnames","forwardRef","useMemo","useRef","__","ENTER","inputControlActionTypes","composeStateReducers","Root","ValueInput","UnitSelectControl","CSS_UNITS","getParsedValue","getUnitsWithCurrentUnit","getValidParsedUnit","useControlledState","UnitControl","__unstableStateReducer","stateReducer","state","autoComplete","className","disabled","disableUnits","isPressEnterToChange","isResetValueOnUnitChange","isUnitSelectTabbable","label","onChange","onUnitChange","size","style","unit","unitProp","units","unitsProp","value","valueProp","props","forwardedRef","initialUnit","setUnit","initial","fallback","refParsedValue","classes","handleOnChange","next","changeProps","join","handleOnUnitChange","data","nextValue","default","undefined","mayUpdateUnit","event","isNaN","Number","currentTarget","current","parsedValue","parsedUnit","toString","Array","isArray","find","option","handleOnBlur","handleOnKeyDown","keyCode","unitControlStateReducer","action","type","COMMIT","inputSuffix","step","activeUnit","ForwardedUnitControl","parseUnit","useCustomUnits"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\n// eslint-disable-next-line no-restricted-imports\nimport type {\n\tFocusEventHandler,\n\tKeyboardEvent,\n\tRef,\n\tSyntheticEvent,\n} from 'react';\nimport { noop, omit } from 'lodash';\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { forwardRef, useMemo, useRef } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport { ENTER } from '@wordpress/keycodes';\n\n/**\n * Internal dependencies\n */\nimport type { WordPressComponentProps } from '../ui/context';\nimport * as inputControlActionTypes from '../input-control/reducer/actions';\nimport { composeStateReducers } from '../input-control/reducer/reducer';\nimport { Root, ValueInput } from './styles/unit-control-styles';\nimport UnitSelectControl from './unit-select-control';\nimport {\n\tCSS_UNITS,\n\tgetParsedValue,\n\tgetUnitsWithCurrentUnit,\n\tgetValidParsedUnit,\n} from './utils';\nimport { useControlledState } from '../utils/hooks';\nimport type { UnitControlProps, UnitControlOnChangeCallback } from './types';\nimport type { StateReducer } from '../input-control/reducer/state';\n\nfunction UnitControl(\n\t{\n\t\t__unstableStateReducer: stateReducer = ( state ) => state,\n\t\tautoComplete = 'off',\n\t\tclassName,\n\t\tdisabled = false,\n\t\tdisableUnits = false,\n\t\tisPressEnterToChange = false,\n\t\tisResetValueOnUnitChange = false,\n\t\tisUnitSelectTabbable = true,\n\t\tlabel,\n\t\tonChange = noop,\n\t\tonUnitChange = noop,\n\t\tsize = 'default',\n\t\tstyle,\n\t\tunit: unitProp,\n\t\tunits: unitsProp = CSS_UNITS,\n\t\tvalue: valueProp,\n\t\t...props\n\t}: WordPressComponentProps< UnitControlProps, 'input', false >,\n\tforwardedRef: Ref< any >\n) {\n\tconst units = useMemo(\n\t\t() => getUnitsWithCurrentUnit( valueProp, unitProp, unitsProp ),\n\t\t[ valueProp, unitProp, unitsProp ]\n\t);\n\tconst [ value, initialUnit ] = getParsedValue( valueProp, unitProp, units );\n\tconst [ unit, setUnit ] = useControlledState< string | undefined >(\n\t\tunitProp,\n\t\t{\n\t\t\tinitial: initialUnit,\n\t\t\tfallback: '',\n\t\t}\n\t);\n\n\t// Stores parsed value for hand-off in state reducer\n\tconst refParsedValue = useRef< string | null >( null );\n\n\tconst classes = classnames( 'components-unit-control', className );\n\n\tconst handleOnChange: UnitControlOnChangeCallback = (\n\t\tnext,\n\t\tchangeProps\n\t) => {\n\t\tif ( next === '' ) {\n\t\t\tonChange( '', changeProps );\n\t\t\treturn;\n\t\t}\n\n\t\t/*\n\t\t * Customizing the onChange callback.\n\t\t * This allows as to broadcast a combined value+unit to onChange.\n\t\t */\n\t\tnext = getValidParsedUnit( next, units, value, unit ).join( '' );\n\n\t\tonChange( next, changeProps );\n\t};\n\n\tconst handleOnUnitChange: UnitControlOnChangeCallback = (\n\t\tnext,\n\t\tchangeProps\n\t) => {\n\t\tconst { data } = changeProps;\n\n\t\tlet nextValue = `${ value }${ next }`;\n\n\t\tif ( isResetValueOnUnitChange && data?.default !== undefined ) {\n\t\t\tnextValue = `${ data.default }${ next }`;\n\t\t}\n\n\t\tonChange( nextValue, changeProps );\n\t\tonUnitChange( next, changeProps );\n\n\t\tsetUnit( next );\n\t};\n\n\tconst mayUpdateUnit = ( event: SyntheticEvent< HTMLInputElement > ) => {\n\t\tif ( ! isNaN( Number( event.currentTarget.value ) ) ) {\n\t\t\trefParsedValue.current = null;\n\t\t\treturn;\n\t\t}\n\t\tconst [ parsedValue, parsedUnit ] = getValidParsedUnit(\n\t\t\tevent.currentTarget.value,\n\t\t\tunits,\n\t\t\tvalue,\n\t\t\tunit\n\t\t);\n\n\t\trefParsedValue.current = parsedValue.toString();\n\n\t\tif ( isPressEnterToChange && parsedUnit !== unit ) {\n\t\t\tconst data = Array.isArray( units )\n\t\t\t\t? units.find( ( option ) => option.value === parsedUnit )\n\t\t\t\t: undefined;\n\t\t\tconst changeProps = { event, data };\n\n\t\t\tonChange( `${ parsedValue }${ parsedUnit }`, changeProps );\n\t\t\tonUnitChange( parsedUnit, changeProps );\n\n\t\t\tsetUnit( parsedUnit );\n\t\t}\n\t};\n\n\tconst handleOnBlur: FocusEventHandler< HTMLInputElement > = mayUpdateUnit;\n\n\tconst handleOnKeyDown = ( event: KeyboardEvent< HTMLInputElement > ) => {\n\t\tconst { keyCode } = event;\n\t\tif ( keyCode === ENTER ) {\n\t\t\tmayUpdateUnit( event );\n\t\t}\n\t};\n\n\t/**\n\t * \"Middleware\" function that intercepts updates from InputControl.\n\t * This allows us to tap into actions to transform the (next) state for\n\t * InputControl.\n\t *\n\t * @param state State from InputControl\n\t * @param action Action triggering state change\n\t * @return The updated state to apply to InputControl\n\t */\n\tconst unitControlStateReducer: StateReducer = ( state, action ) => {\n\t\t/*\n\t\t * On commits (when pressing ENTER and on blur if\n\t\t * isPressEnterToChange is true), if a parse has been performed\n\t\t * then use that result to update the state.\n\t\t */\n\t\tif ( action.type === inputControlActionTypes.COMMIT ) {\n\t\t\tif ( refParsedValue.current !== null ) {\n\t\t\t\tstate.value = refParsedValue.current;\n\t\t\t\trefParsedValue.current = null;\n\t\t\t}\n\t\t}\n\n\t\treturn state;\n\t};\n\n\tconst inputSuffix = ! disableUnits ? (\n\t\t<UnitSelectControl\n\t\t\taria-label={ __( 'Select unit' ) }\n\t\t\tdisabled={ disabled }\n\t\t\tisUnitSelectTabbable={ isUnitSelectTabbable }\n\t\t\tonChange={ handleOnUnitChange }\n\t\t\tsize={ size }\n\t\t\tunit={ unit }\n\t\t\tunits={ units }\n\t\t/>\n\t) : null;\n\n\tlet step = props.step;\n\n\t/*\n\t * If no step prop has been passed, lookup the active unit and\n\t * try to get step from `units`, or default to a value of `1`\n\t */\n\tif ( ! step && units ) {\n\t\tconst activeUnit = units.find( ( option ) => option.value === unit );\n\t\tstep = activeUnit?.step ?? 1;\n\t}\n\n\treturn (\n\t\t<Root className=\"components-unit-control-wrapper\" style={ style }>\n\t\t\t<ValueInput\n\t\t\t\taria-label={ label }\n\t\t\t\ttype={ isPressEnterToChange ? 'text' : 'number' }\n\t\t\t\t{ ...omit( props, [ 'children' ] ) }\n\t\t\t\tautoComplete={ autoComplete }\n\t\t\t\tclassName={ classes }\n\t\t\t\tdisabled={ disabled }\n\t\t\t\tdisableUnits={ disableUnits }\n\t\t\t\tisPressEnterToChange={ isPressEnterToChange }\n\t\t\t\tlabel={ label }\n\t\t\t\tonBlur={ handleOnBlur }\n\t\t\t\tonKeyDown={ handleOnKeyDown }\n\t\t\t\tonChange={ handleOnChange }\n\t\t\t\tref={ forwardedRef }\n\t\t\t\tsize={ size }\n\t\t\t\tsuffix={ inputSuffix }\n\t\t\t\tvalue={ value }\n\t\t\t\tstep={ step }\n\t\t\t\t__unstableStateReducer={ composeStateReducers(\n\t\t\t\t\tunitControlStateReducer,\n\t\t\t\t\tstateReducer\n\t\t\t\t) }\n\t\t\t/>\n\t\t</Root>\n\t);\n}\n\n/**\n * `UnitControl` allows the user to set a value as well as a unit (e.g. `px`).\n *\n *\n * @example\n * ```jsx\n * import { __experimentalUnitControl as UnitControl } from '@wordpress/components';\n * import { useState } from '@wordpress/element';\n *\n * const Example = () => {\n * const [ value, setValue ] = useState( '10px' );\n *\n * return <UnitControl onChange={ setValue } value={ value } />;\n * };\n * ```\n */\nconst ForwardedUnitControl = forwardRef( UnitControl );\n\nexport { parseUnit, useCustomUnits } from './utils';\nexport default ForwardedUnitControl;\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/unit-control/index.tsx"],"names":["noop","omit","classnames","forwardRef","useMemo","useRef","__","ENTER","inputControlActionTypes","composeStateReducers","Root","ValueInput","UnitSelectControl","CSS_UNITS","getParsedValue","getUnitsWithCurrentUnit","getValidParsedUnit","useControlledState","UnitControl","forwardedRef","__unstableStateReducer","stateReducer","state","autoComplete","className","disabled","disableUnits","isPressEnterToChange","isResetValueOnUnitChange","isUnitSelectTabbable","label","onChange","onUnitChange","size","style","unit","unitProp","units","unitsProp","value","valueProp","props","initialUnit","setUnit","initial","fallback","refParsedValue","classes","handleOnChange","next","changeProps","join","handleOnUnitChange","data","nextValue","default","undefined","mayUpdateUnit","event","isNaN","Number","currentTarget","current","parsedValue","parsedUnit","toString","Array","isArray","find","option","handleOnBlur","handleOnKeyDown","keyCode","unitControlStateReducer","action","type","COMMIT","inputSuffix","step","activeUnit","ForwardedUnitControl","parseUnit","useCustomUnits"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\n// eslint-disable-next-line no-restricted-imports\nimport type {\n\tFocusEventHandler,\n\tKeyboardEvent,\n\tRef,\n\tSyntheticEvent,\n} from 'react';\nimport { noop, omit } from 'lodash';\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { forwardRef, useMemo, useRef } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport { ENTER } from '@wordpress/keycodes';\n\n/**\n * Internal dependencies\n */\nimport type { WordPressComponentProps } from '../ui/context';\nimport * as inputControlActionTypes from '../input-control/reducer/actions';\nimport { composeStateReducers } from '../input-control/reducer/reducer';\nimport { Root, ValueInput } from './styles/unit-control-styles';\nimport UnitSelectControl from './unit-select-control';\nimport {\n\tCSS_UNITS,\n\tgetParsedValue,\n\tgetUnitsWithCurrentUnit,\n\tgetValidParsedUnit,\n} from './utils';\nimport { useControlledState } from '../utils/hooks';\nimport type { UnitControlProps, UnitControlOnChangeCallback } from './types';\nimport type { StateReducer } from '../input-control/reducer/state';\n\nfunction UnitControl(\n\t{\n\t\t__unstableStateReducer: stateReducer = ( state ) => state,\n\t\tautoComplete = 'off',\n\t\tclassName,\n\t\tdisabled = false,\n\t\tdisableUnits = false,\n\t\tisPressEnterToChange = false,\n\t\tisResetValueOnUnitChange = false,\n\t\tisUnitSelectTabbable = true,\n\t\tlabel,\n\t\tonChange = noop,\n\t\tonUnitChange = noop,\n\t\tsize = 'default',\n\t\tstyle,\n\t\tunit: unitProp,\n\t\tunits: unitsProp = CSS_UNITS,\n\t\tvalue: valueProp,\n\t\t...props\n\t}: WordPressComponentProps< UnitControlProps, 'input', false >,\n\tforwardedRef: Ref< any >\n) {\n\tconst units = useMemo(\n\t\t() => getUnitsWithCurrentUnit( valueProp, unitProp, unitsProp ),\n\t\t[ valueProp, unitProp, unitsProp ]\n\t);\n\tconst [ value, initialUnit ] = getParsedValue( valueProp, unitProp, units );\n\tconst [ unit, setUnit ] = useControlledState< string | undefined >(\n\t\tunitProp,\n\t\t{\n\t\t\tinitial: initialUnit,\n\t\t\tfallback: '',\n\t\t}\n\t);\n\n\t// Stores parsed value for hand-off in state reducer\n\tconst refParsedValue = useRef< string | null >( null );\n\n\tconst classes = classnames( 'components-unit-control', className );\n\n\tconst handleOnChange: UnitControlOnChangeCallback = (\n\t\tnext,\n\t\tchangeProps\n\t) => {\n\t\tif ( next === '' ) {\n\t\t\tonChange( '', changeProps );\n\t\t\treturn;\n\t\t}\n\n\t\t/*\n\t\t * Customizing the onChange callback.\n\t\t * This allows as to broadcast a combined value+unit to onChange.\n\t\t */\n\t\tnext = getValidParsedUnit( next, units, value, unit ).join( '' );\n\n\t\tonChange( next, changeProps );\n\t};\n\n\tconst handleOnUnitChange: UnitControlOnChangeCallback = (\n\t\tnext,\n\t\tchangeProps\n\t) => {\n\t\tconst { data } = changeProps;\n\n\t\tlet nextValue = `${ value }${ next }`;\n\n\t\tif ( isResetValueOnUnitChange && data?.default !== undefined ) {\n\t\t\tnextValue = `${ data.default }${ next }`;\n\t\t}\n\n\t\tonChange( nextValue, changeProps );\n\t\tonUnitChange( next, changeProps );\n\n\t\tsetUnit( next );\n\t};\n\n\tconst mayUpdateUnit = ( event: SyntheticEvent< HTMLInputElement > ) => {\n\t\tif ( ! isNaN( Number( event.currentTarget.value ) ) ) {\n\t\t\trefParsedValue.current = null;\n\t\t\treturn;\n\t\t}\n\t\tconst [ parsedValue, parsedUnit ] = getValidParsedUnit(\n\t\t\tevent.currentTarget.value,\n\t\t\tunits,\n\t\t\tvalue,\n\t\t\tunit\n\t\t);\n\n\t\trefParsedValue.current = parsedValue.toString();\n\n\t\tif ( isPressEnterToChange && parsedUnit !== unit ) {\n\t\t\tconst data = Array.isArray( units )\n\t\t\t\t? units.find( ( option ) => option.value === parsedUnit )\n\t\t\t\t: undefined;\n\t\t\tconst changeProps = { event, data };\n\n\t\t\tonChange( `${ parsedValue }${ parsedUnit }`, changeProps );\n\t\t\tonUnitChange( parsedUnit, changeProps );\n\n\t\t\tsetUnit( parsedUnit );\n\t\t}\n\t};\n\n\tconst handleOnBlur: FocusEventHandler< HTMLInputElement > = mayUpdateUnit;\n\n\tconst handleOnKeyDown = ( event: KeyboardEvent< HTMLInputElement > ) => {\n\t\tconst { keyCode } = event;\n\t\tif ( keyCode === ENTER ) {\n\t\t\tmayUpdateUnit( event );\n\t\t}\n\t};\n\n\t/**\n\t * \"Middleware\" function that intercepts updates from InputControl.\n\t * This allows us to tap into actions to transform the (next) state for\n\t * InputControl.\n\t *\n\t * @param state State from InputControl\n\t * @param action Action triggering state change\n\t * @return The updated state to apply to InputControl\n\t */\n\tconst unitControlStateReducer: StateReducer = ( state, action ) => {\n\t\t/*\n\t\t * On commits (when pressing ENTER and on blur if\n\t\t * isPressEnterToChange is true), if a parse has been performed\n\t\t * then use that result to update the state.\n\t\t */\n\t\tif ( action.type === inputControlActionTypes.COMMIT ) {\n\t\t\tif ( refParsedValue.current !== null ) {\n\t\t\t\tstate.value = refParsedValue.current;\n\t\t\t\trefParsedValue.current = null;\n\t\t\t}\n\t\t}\n\n\t\treturn state;\n\t};\n\n\tconst inputSuffix = ! disableUnits ? (\n\t\t<UnitSelectControl\n\t\t\taria-label={ __( 'Select unit' ) }\n\t\t\tdisabled={ disabled }\n\t\t\tisUnitSelectTabbable={ isUnitSelectTabbable }\n\t\t\tonChange={ handleOnUnitChange }\n\t\t\tsize={ size }\n\t\t\tunit={ unit }\n\t\t\tunits={ units }\n\t\t/>\n\t) : null;\n\n\tlet step = props.step;\n\n\t/*\n\t * If no step prop has been passed, lookup the active unit and\n\t * try to get step from `units`, or default to a value of `1`\n\t */\n\tif ( ! step && units ) {\n\t\tconst activeUnit = units.find( ( option ) => option.value === unit );\n\t\tstep = activeUnit?.step ?? 1;\n\t}\n\n\treturn (\n\t\t<Root className=\"components-unit-control-wrapper\" style={ style }>\n\t\t\t<ValueInput\n\t\t\t\taria-label={ label }\n\t\t\t\ttype={ isPressEnterToChange ? 'text' : 'number' }\n\t\t\t\t{ ...omit( props, [ 'children' ] ) }\n\t\t\t\tautoComplete={ autoComplete }\n\t\t\t\tclassName={ classes }\n\t\t\t\tdisabled={ disabled }\n\t\t\t\tdisableUnits={ disableUnits }\n\t\t\t\tisPressEnterToChange={ isPressEnterToChange }\n\t\t\t\tlabel={ label }\n\t\t\t\tonBlur={ handleOnBlur }\n\t\t\t\tonKeyDown={ handleOnKeyDown }\n\t\t\t\tonChange={ handleOnChange }\n\t\t\t\tref={ forwardedRef }\n\t\t\t\tsize={ size }\n\t\t\t\tsuffix={ inputSuffix }\n\t\t\t\tvalue={ value }\n\t\t\t\tstep={ step }\n\t\t\t\t__unstableStateReducer={ composeStateReducers(\n\t\t\t\t\tunitControlStateReducer,\n\t\t\t\t\tstateReducer\n\t\t\t\t) }\n\t\t\t/>\n\t\t</Root>\n\t);\n}\n\n/**\n * `UnitControl` allows the user to set a value as well as a unit (e.g. `px`).\n *\n *\n * @example\n * ```jsx\n * import { __experimentalUnitControl as UnitControl } from '@wordpress/components';\n * import { useState } from '@wordpress/element';\n *\n * const Example = () => {\n * const [ value, setValue ] = useState( '10px' );\n *\n * return <UnitControl onChange={ setValue } value={ value } />;\n * };\n * ```\n */\nconst ForwardedUnitControl = forwardRef( UnitControl );\n\nexport { parseUnit, useCustomUnits } from './utils';\nexport default ForwardedUnitControl;\n"]}
@@ -22,21 +22,22 @@ import { useRef, useCallback, useMemo, memo } from '@wordpress/element';
22
22
  import { withPreferredColorScheme } from '@wordpress/compose';
23
23
  import { __, sprintf } from '@wordpress/i18n';
24
24
 
25
- function UnitControl({
26
- currentInput,
27
- label,
28
- value,
29
- onChange,
30
- onUnitChange,
31
- initialPosition,
32
- min,
33
- max,
34
- separatorType,
35
- units = CSS_UNITS,
36
- unit,
37
- getStylesFromColorScheme,
38
- ...props
39
- }) {
25
+ function UnitControl(_ref) {
26
+ let {
27
+ currentInput,
28
+ label,
29
+ value,
30
+ onChange,
31
+ onUnitChange,
32
+ initialPosition,
33
+ min,
34
+ max,
35
+ separatorType,
36
+ units = CSS_UNITS,
37
+ unit,
38
+ getStylesFromColorScheme,
39
+ ...props
40
+ } = _ref;
40
41
  const pickerRef = useRef();
41
42
  const anchorNodeRef = useRef();
42
43
  const onPickerPresent = useCallback(() => {
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/unit-control/index.native.js"],"names":["Text","View","TouchableWithoutFeedback","Platform","findNodeHandle","RangeCell","StepperCell","Picker","styles","CSS_UNITS","hasUnits","parseA11yLabelForUnit","useRef","useCallback","useMemo","memo","withPreferredColorScheme","__","sprintf","UnitControl","currentInput","label","value","onChange","onUnitChange","initialPosition","min","max","separatorType","units","unit","getStylesFromColorScheme","props","pickerRef","anchorNodeRef","onPickerPresent","current","presentPicker","currentInputValue","initialControlValue","isFinite","unitButtonTextStyle","unitButtonText","unitButtonTextDark","accessibilityLabel","accessibilityHint","OS","renderUnitButton","unitButton","length","getAnchor","undefined","getDecimal","step","stepToString","splitStep","toString","split","renderUnitPicker","unitMenu","activeUnit","find","option","decimalNum","useCustomUnits"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport {\n\tText,\n\tView,\n\tTouchableWithoutFeedback,\n\tPlatform,\n\tfindNodeHandle,\n} from 'react-native';\n\n/**\n * Internal dependencies\n */\nimport RangeCell from '../mobile/bottom-sheet/range-cell';\nimport StepperCell from '../mobile/bottom-sheet/stepper-cell';\nimport Picker from '../mobile/picker';\nimport styles from './style.scss';\nimport { CSS_UNITS, hasUnits, parseA11yLabelForUnit } from './utils';\n\n/**\n * WordPress dependencies\n */\nimport { useRef, useCallback, useMemo, memo } from '@wordpress/element';\nimport { withPreferredColorScheme } from '@wordpress/compose';\nimport { __, sprintf } from '@wordpress/i18n';\n\nfunction UnitControl( {\n\tcurrentInput,\n\tlabel,\n\tvalue,\n\tonChange,\n\tonUnitChange,\n\tinitialPosition,\n\tmin,\n\tmax,\n\tseparatorType,\n\tunits = CSS_UNITS,\n\tunit,\n\tgetStylesFromColorScheme,\n\t...props\n} ) {\n\tconst pickerRef = useRef();\n\tconst anchorNodeRef = useRef();\n\n\tconst onPickerPresent = useCallback( () => {\n\t\tif ( pickerRef?.current ) {\n\t\t\tpickerRef.current.presentPicker();\n\t\t}\n\t}, [ pickerRef?.current ] );\n\n\tconst currentInputValue = currentInput === null ? value : currentInput;\n\tconst initialControlValue = isFinite( currentInputValue )\n\t\t? currentInputValue\n\t\t: initialPosition;\n\n\tconst unitButtonTextStyle = getStylesFromColorScheme(\n\t\tstyles.unitButtonText,\n\t\tstyles.unitButtonTextDark\n\t);\n\n\t/* translators: accessibility text. Inform about current unit value. %s: Current unit value. */\n\tconst accessibilityLabel = sprintf( __( 'Current unit is %s' ), unit );\n\n\tconst accessibilityHint =\n\t\tPlatform.OS === 'ios'\n\t\t\t? __( 'Double tap to open Action Sheet with available options' )\n\t\t\t: __( 'Double tap to open Bottom Sheet with available options' );\n\n\tconst renderUnitButton = useMemo( () => {\n\t\tconst unitButton = (\n\t\t\t<View style={ styles.unitButton }>\n\t\t\t\t<Text style={ unitButtonTextStyle }>{ unit }</Text>\n\t\t\t</View>\n\t\t);\n\n\t\tif ( hasUnits( units ) && units?.length > 1 ) {\n\t\t\treturn (\n\t\t\t\t<TouchableWithoutFeedback\n\t\t\t\t\tonPress={ onPickerPresent }\n\t\t\t\t\taccessibilityLabel={ accessibilityLabel }\n\t\t\t\t\taccessibilityRole=\"button\"\n\t\t\t\t\taccessibilityHint={ accessibilityHint }\n\t\t\t\t>\n\t\t\t\t\t{ unitButton }\n\t\t\t\t</TouchableWithoutFeedback>\n\t\t\t);\n\t\t}\n\n\t\treturn unitButton;\n\t}, [\n\t\tonPickerPresent,\n\t\taccessibilityLabel,\n\t\taccessibilityHint,\n\t\tunitButtonTextStyle,\n\t\tunit,\n\t\tunits,\n\t] );\n\n\tconst getAnchor = useCallback(\n\t\t() =>\n\t\t\tanchorNodeRef?.current\n\t\t\t\t? findNodeHandle( anchorNodeRef?.current )\n\t\t\t\t: undefined,\n\t\t[ anchorNodeRef?.current ]\n\t);\n\n\tconst getDecimal = ( step ) => {\n\t\t// Return the decimal offset based on the step size.\n\t\t// if step size is 0.1 we expect the offset to be 1.\n\t\t// for example 12 + 0.1 we would expect the see 12.1 (not 12.10 or 12 );\n\t\t// steps are defined in the CSS_UNITS and they vary from unit to unit.\n\t\tconst stepToString = step;\n\t\tconst splitStep = stepToString.toString().split( '.' );\n\t\treturn splitStep[ 1 ] ? splitStep[ 1 ].length : 0;\n\t};\n\n\tconst renderUnitPicker = useCallback( () => {\n\t\tif ( units === false ) {\n\t\t\treturn null;\n\t\t}\n\t\treturn (\n\t\t\t<View style={ styles.unitMenu } ref={ anchorNodeRef }>\n\t\t\t\t{ renderUnitButton }\n\t\t\t\t{ hasUnits( units ) && units?.length > 1 ? (\n\t\t\t\t\t<Picker\n\t\t\t\t\t\tref={ pickerRef }\n\t\t\t\t\t\toptions={ units }\n\t\t\t\t\t\tonChange={ onUnitChange }\n\t\t\t\t\t\thideCancelButton\n\t\t\t\t\t\tleftAlign\n\t\t\t\t\t\tgetAnchor={ getAnchor }\n\t\t\t\t\t/>\n\t\t\t\t) : null }\n\t\t\t</View>\n\t\t);\n\t}, [ pickerRef, units, onUnitChange, getAnchor, renderUnitButton ] );\n\n\tlet step = props.step;\n\n\t/*\n\t * If no step prop has been passed, lookup the active unit and\n\t * try to get step from `units`, or default to a value of `1`\n\t */\n\tif ( ! step && units ) {\n\t\tconst activeUnit = units.find( ( option ) => option.value === unit );\n\t\tstep = activeUnit?.step ?? 1;\n\t}\n\n\tconst decimalNum = getDecimal( step );\n\n\treturn (\n\t\t<>\n\t\t\t{ unit !== '%' ? (\n\t\t\t\t<StepperCell\n\t\t\t\t\tlabel={ label }\n\t\t\t\t\tmax={ max }\n\t\t\t\t\tmin={ min }\n\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\tseparatorType={ separatorType }\n\t\t\t\t\tvalue={ value }\n\t\t\t\t\tstep={ step }\n\t\t\t\t\tdefaultValue={ initialControlValue }\n\t\t\t\t\tshouldDisplayTextInput\n\t\t\t\t\tdecimalNum={ decimalNum }\n\t\t\t\t\topenUnitPicker={ onPickerPresent }\n\t\t\t\t\tunitLabel={ parseA11yLabelForUnit( unit ) }\n\t\t\t\t\t{ ...props }\n\t\t\t\t>\n\t\t\t\t\t{ renderUnitPicker() }\n\t\t\t\t</StepperCell>\n\t\t\t) : (\n\t\t\t\t<RangeCell\n\t\t\t\t\tlabel={ label }\n\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\tminimumValue={ min }\n\t\t\t\t\tmaximumValue={ max }\n\t\t\t\t\tvalue={ value }\n\t\t\t\t\tstep={ step }\n\t\t\t\t\tunit={ unit }\n\t\t\t\t\tdefaultValue={ initialControlValue }\n\t\t\t\t\tseparatorType={ separatorType }\n\t\t\t\t\tdecimalNum={ decimalNum }\n\t\t\t\t\topenUnitPicker={ onPickerPresent }\n\t\t\t\t\tunitLabel={ parseA11yLabelForUnit( unit ) }\n\t\t\t\t\t{ ...props }\n\t\t\t\t>\n\t\t\t\t\t{ renderUnitPicker() }\n\t\t\t\t</RangeCell>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nexport { useCustomUnits } from './utils';\nexport default memo( withPreferredColorScheme( UnitControl ) );\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/unit-control/index.native.js"],"names":["Text","View","TouchableWithoutFeedback","Platform","findNodeHandle","RangeCell","StepperCell","Picker","styles","CSS_UNITS","hasUnits","parseA11yLabelForUnit","useRef","useCallback","useMemo","memo","withPreferredColorScheme","__","sprintf","UnitControl","currentInput","label","value","onChange","onUnitChange","initialPosition","min","max","separatorType","units","unit","getStylesFromColorScheme","props","pickerRef","anchorNodeRef","onPickerPresent","current","presentPicker","currentInputValue","initialControlValue","isFinite","unitButtonTextStyle","unitButtonText","unitButtonTextDark","accessibilityLabel","accessibilityHint","OS","renderUnitButton","unitButton","length","getAnchor","undefined","getDecimal","step","stepToString","splitStep","toString","split","renderUnitPicker","unitMenu","activeUnit","find","option","decimalNum","useCustomUnits"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport {\n\tText,\n\tView,\n\tTouchableWithoutFeedback,\n\tPlatform,\n\tfindNodeHandle,\n} from 'react-native';\n\n/**\n * Internal dependencies\n */\nimport RangeCell from '../mobile/bottom-sheet/range-cell';\nimport StepperCell from '../mobile/bottom-sheet/stepper-cell';\nimport Picker from '../mobile/picker';\nimport styles from './style.scss';\nimport { CSS_UNITS, hasUnits, parseA11yLabelForUnit } from './utils';\n\n/**\n * WordPress dependencies\n */\nimport { useRef, useCallback, useMemo, memo } from '@wordpress/element';\nimport { withPreferredColorScheme } from '@wordpress/compose';\nimport { __, sprintf } from '@wordpress/i18n';\n\nfunction UnitControl( {\n\tcurrentInput,\n\tlabel,\n\tvalue,\n\tonChange,\n\tonUnitChange,\n\tinitialPosition,\n\tmin,\n\tmax,\n\tseparatorType,\n\tunits = CSS_UNITS,\n\tunit,\n\tgetStylesFromColorScheme,\n\t...props\n} ) {\n\tconst pickerRef = useRef();\n\tconst anchorNodeRef = useRef();\n\n\tconst onPickerPresent = useCallback( () => {\n\t\tif ( pickerRef?.current ) {\n\t\t\tpickerRef.current.presentPicker();\n\t\t}\n\t}, [ pickerRef?.current ] );\n\n\tconst currentInputValue = currentInput === null ? value : currentInput;\n\tconst initialControlValue = isFinite( currentInputValue )\n\t\t? currentInputValue\n\t\t: initialPosition;\n\n\tconst unitButtonTextStyle = getStylesFromColorScheme(\n\t\tstyles.unitButtonText,\n\t\tstyles.unitButtonTextDark\n\t);\n\n\t/* translators: accessibility text. Inform about current unit value. %s: Current unit value. */\n\tconst accessibilityLabel = sprintf( __( 'Current unit is %s' ), unit );\n\n\tconst accessibilityHint =\n\t\tPlatform.OS === 'ios'\n\t\t\t? __( 'Double tap to open Action Sheet with available options' )\n\t\t\t: __( 'Double tap to open Bottom Sheet with available options' );\n\n\tconst renderUnitButton = useMemo( () => {\n\t\tconst unitButton = (\n\t\t\t<View style={ styles.unitButton }>\n\t\t\t\t<Text style={ unitButtonTextStyle }>{ unit }</Text>\n\t\t\t</View>\n\t\t);\n\n\t\tif ( hasUnits( units ) && units?.length > 1 ) {\n\t\t\treturn (\n\t\t\t\t<TouchableWithoutFeedback\n\t\t\t\t\tonPress={ onPickerPresent }\n\t\t\t\t\taccessibilityLabel={ accessibilityLabel }\n\t\t\t\t\taccessibilityRole=\"button\"\n\t\t\t\t\taccessibilityHint={ accessibilityHint }\n\t\t\t\t>\n\t\t\t\t\t{ unitButton }\n\t\t\t\t</TouchableWithoutFeedback>\n\t\t\t);\n\t\t}\n\n\t\treturn unitButton;\n\t}, [\n\t\tonPickerPresent,\n\t\taccessibilityLabel,\n\t\taccessibilityHint,\n\t\tunitButtonTextStyle,\n\t\tunit,\n\t\tunits,\n\t] );\n\n\tconst getAnchor = useCallback(\n\t\t() =>\n\t\t\tanchorNodeRef?.current\n\t\t\t\t? findNodeHandle( anchorNodeRef?.current )\n\t\t\t\t: undefined,\n\t\t[ anchorNodeRef?.current ]\n\t);\n\n\tconst getDecimal = ( step ) => {\n\t\t// Return the decimal offset based on the step size.\n\t\t// if step size is 0.1 we expect the offset to be 1.\n\t\t// for example 12 + 0.1 we would expect the see 12.1 (not 12.10 or 12 );\n\t\t// steps are defined in the CSS_UNITS and they vary from unit to unit.\n\t\tconst stepToString = step;\n\t\tconst splitStep = stepToString.toString().split( '.' );\n\t\treturn splitStep[ 1 ] ? splitStep[ 1 ].length : 0;\n\t};\n\n\tconst renderUnitPicker = useCallback( () => {\n\t\tif ( units === false ) {\n\t\t\treturn null;\n\t\t}\n\t\treturn (\n\t\t\t<View style={ styles.unitMenu } ref={ anchorNodeRef }>\n\t\t\t\t{ renderUnitButton }\n\t\t\t\t{ hasUnits( units ) && units?.length > 1 ? (\n\t\t\t\t\t<Picker\n\t\t\t\t\t\tref={ pickerRef }\n\t\t\t\t\t\toptions={ units }\n\t\t\t\t\t\tonChange={ onUnitChange }\n\t\t\t\t\t\thideCancelButton\n\t\t\t\t\t\tleftAlign\n\t\t\t\t\t\tgetAnchor={ getAnchor }\n\t\t\t\t\t/>\n\t\t\t\t) : null }\n\t\t\t</View>\n\t\t);\n\t}, [ pickerRef, units, onUnitChange, getAnchor, renderUnitButton ] );\n\n\tlet step = props.step;\n\n\t/*\n\t * If no step prop has been passed, lookup the active unit and\n\t * try to get step from `units`, or default to a value of `1`\n\t */\n\tif ( ! step && units ) {\n\t\tconst activeUnit = units.find( ( option ) => option.value === unit );\n\t\tstep = activeUnit?.step ?? 1;\n\t}\n\n\tconst decimalNum = getDecimal( step );\n\n\treturn (\n\t\t<>\n\t\t\t{ unit !== '%' ? (\n\t\t\t\t<StepperCell\n\t\t\t\t\tlabel={ label }\n\t\t\t\t\tmax={ max }\n\t\t\t\t\tmin={ min }\n\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\tseparatorType={ separatorType }\n\t\t\t\t\tvalue={ value }\n\t\t\t\t\tstep={ step }\n\t\t\t\t\tdefaultValue={ initialControlValue }\n\t\t\t\t\tshouldDisplayTextInput\n\t\t\t\t\tdecimalNum={ decimalNum }\n\t\t\t\t\topenUnitPicker={ onPickerPresent }\n\t\t\t\t\tunitLabel={ parseA11yLabelForUnit( unit ) }\n\t\t\t\t\t{ ...props }\n\t\t\t\t>\n\t\t\t\t\t{ renderUnitPicker() }\n\t\t\t\t</StepperCell>\n\t\t\t) : (\n\t\t\t\t<RangeCell\n\t\t\t\t\tlabel={ label }\n\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\tminimumValue={ min }\n\t\t\t\t\tmaximumValue={ max }\n\t\t\t\t\tvalue={ value }\n\t\t\t\t\tstep={ step }\n\t\t\t\t\tunit={ unit }\n\t\t\t\t\tdefaultValue={ initialControlValue }\n\t\t\t\t\tseparatorType={ separatorType }\n\t\t\t\t\tdecimalNum={ decimalNum }\n\t\t\t\t\topenUnitPicker={ onPickerPresent }\n\t\t\t\t\tunitLabel={ parseA11yLabelForUnit( unit ) }\n\t\t\t\t\t{ ...props }\n\t\t\t\t>\n\t\t\t\t\t{ renderUnitPicker() }\n\t\t\t\t</RangeCell>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nexport { useCustomUnits } from './utils';\nexport default memo( withPreferredColorScheme( UnitControl ) );\n"]}
@@ -27,9 +27,10 @@ export const Root = _styled("div", process.env.NODE_ENV === "production" ? {
27
27
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
28
28
  });
29
29
 
30
- const paddingStyles = ({
31
- disableUnits
32
- }) => {
30
+ const paddingStyles = _ref2 => {
31
+ let {
32
+ disableUnits
33
+ } = _ref2;
33
34
  const value = disableUnits ? 3 : 24;
34
35
  return /*#__PURE__*/css(rtl({
35
36
  paddingRight: value
@@ -46,9 +47,10 @@ var _ref = process.env.NODE_ENV === "production" ? {
46
47
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
47
48
  };
48
49
 
49
- const arrowStyles = ({
50
- disableUnits
51
- }) => {
50
+ const arrowStyles = _ref3 => {
51
+ let {
52
+ disableUnits
53
+ } = _ref3;
52
54
  if (disableUnits) return '';
53
55
  return _ref;
54
56
  }; // TODO: Resolve need to use &&& to increase specificity
@@ -62,9 +64,10 @@ export const ValueInput = /*#__PURE__*/_styled(NumberControl, process.env.NODE_E
62
64
  label: "ValueInput"
63
65
  })("&&&{input{appearance:none;-moz-appearance:textfield;display:block;width:100%;", arrowStyles, ";", paddingStyles, ";}}" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkB3b3JkcHJlc3MvY29tcG9uZW50cy9zcmMvdW5pdC1jb250cm9sL3N0eWxlcy91bml0LWNvbnRyb2wtc3R5bGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWtEaUQiLCJmaWxlIjoiQHdvcmRwcmVzcy9jb21wb25lbnRzL3NyYy91bml0LWNvbnRyb2wvc3R5bGVzL3VuaXQtY29udHJvbC1zdHlsZXMudHMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEV4dGVybmFsIGRlcGVuZGVuY2llc1xuICovXG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG4vKipcbiAqIEludGVybmFsIGRlcGVuZGVuY2llc1xuICovXG5pbXBvcnQgeyBDT0xPUlMsIHJ0bCB9IGZyb20gJy4uLy4uL3V0aWxzJztcbmltcG9ydCBOdW1iZXJDb250cm9sIGZyb20gJy4uLy4uL251bWJlci1jb250cm9sJztcbmltcG9ydCB0eXBlIHsgU2VsZWN0U2l6ZSB9IGZyb20gJy4uL3R5cGVzJztcblxuLy8gVXNpbmcgYHNlbGVjdFNpemVgIGluc3RlYWQgb2YgYHNpemVgIHRvIGF2b2lkIGEgdHlwZSBjb25mbGljdCB3aXRoIHRoZVxuLy8gYHNpemVgIEhUTUwgYXR0cmlidXRlIG9mIHRoZSBgc2VsZWN0YCBlbGVtZW50LlxudHlwZSBTZWxlY3RQcm9wcyA9IHtcblx0c2VsZWN0U2l6ZTogU2VsZWN0U2l6ZTtcbn07XG5cbnR5cGUgSW5wdXRQcm9wcyA9IHtcblx0ZGlzYWJsZVVuaXRzPzogYm9vbGVhbjtcbn07XG5cbmV4cG9ydCBjb25zdCBSb290ID0gc3R5bGVkLmRpdmBcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuYDtcblxuY29uc3QgcGFkZGluZ1N0eWxlcyA9ICggeyBkaXNhYmxlVW5pdHMgfTogSW5wdXRQcm9wcyApID0+IHtcblx0Y29uc3QgdmFsdWUgPSBkaXNhYmxlVW5pdHMgPyAzIDogMjQ7XG5cblx0cmV0dXJuIGNzc2Bcblx0XHQkeyBydGwoIHsgcGFkZGluZ1JpZ2h0OiB2YWx1ZSB9ICkoKSB9O1xuXHRgO1xufTtcblxuY29uc3QgYXJyb3dTdHlsZXMgPSAoIHsgZGlzYWJsZVVuaXRzIH06IElucHV0UHJvcHMgKSA9PiB7XG5cdGlmICggZGlzYWJsZVVuaXRzICkgcmV0dXJuICcnO1xuXG5cdHJldHVybiBjc3NgXG5cdFx0Jjo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbixcblx0XHQmOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uIHtcblx0XHRcdC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcblx0XHRcdG1hcmdpbjogMDtcblx0XHR9XG5cdGA7XG59O1xuXG4vLyBUT0RPOiBSZXNvbHZlIG5lZWQgdG8gdXNlICYmJiB0byBpbmNyZWFzZSBzcGVjaWZpY2l0eVxuLy8gaHR0cHM6Ly9naXRodWIuY29tL1dvcmRQcmVzcy9ndXRlbmJlcmcvaXNzdWVzLzE4NDgzXG5cbmV4cG9ydCBjb25zdCBWYWx1ZUlucHV0ID0gc3R5bGVkKCBOdW1iZXJDb250cm9sIClgXG5cdCYmJiB7XG5cdFx0aW5wdXQge1xuXHRcdFx0YXBwZWFyYW5jZTogbm9uZTtcblx0XHRcdC1tb3otYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHR3aWR0aDogMTAwJTtcblxuXHRcdFx0JHsgYXJyb3dTdHlsZXMgfTtcblx0XHRcdCR7IHBhZGRpbmdTdHlsZXMgfTtcblx0XHR9XG5cdH1cbmA7XG5cbmNvbnN0IHVuaXRTaXplU3R5bGVzID0gKCB7IHNlbGVjdFNpemUgfTogU2VsZWN0UHJvcHMgKSA9PiB7XG5cdGNvbnN0IHNpemVzID0ge1xuXHRcdGRlZmF1bHQ6IHtcblx0XHRcdGhlaWdodDogMjgsXG5cdFx0XHRsaW5lSGVpZ2h0OiAnMjRweCcsXG5cdFx0XHRtaW5IZWlnaHQ6IDI4LFxuXHRcdFx0dG9wOiAxLFxuXHRcdH0sXG5cdFx0c21hbGw6IHtcblx0XHRcdGhlaWdodDogMjIsXG5cdFx0XHRsaW5lSGVpZ2h0OiAnMThweCcsXG5cdFx0XHRtaW5IZWlnaHQ6IDIyLFxuXHRcdFx0dG9wOiAxLFxuXHRcdH0sXG5cdH07XG5cblx0cmV0dXJuIGNzcyggc2l6ZXNbIHNlbGVjdFNpemUgXSApO1xufTtcblxuY29uc3QgYmFzZVVuaXRMYWJlbFN0eWxlcyA9ICggcHJvcHM6IFNlbGVjdFByb3BzICkgPT4ge1xuXHRyZXR1cm4gY3NzYFxuXHRcdGFwcGVhcmFuY2U6IG5vbmU7XG5cdFx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cdFx0Ym9yZGVyLXJhZGl1czogMnB4O1xuXHRcdGJvcmRlcjogbm9uZTtcblx0XHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRcdGNvbG9yOiAkeyBDT0xPUlMuZGFya0dyYXlbIDUwMCBdIH07XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0Zm9udC1zaXplOiA4cHg7XG5cdFx0bGluZS1oZWlnaHQ6IDE7XG5cdFx0bGV0dGVyLXNwYWNpbmc6IC0wLjVweDtcblx0XHRvdXRsaW5lOiBub25lO1xuXHRcdHBhZGRpbmc6IDJweCAxcHg7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRleHQtYWxpZ24tbGFzdDogY2VudGVyO1xuXHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0d2lkdGg6IDIwcHg7XG5cblx0XHQkeyBydGwoIHsgYm9yZGVyVG9wTGVmdFJhZGl1czogMCwgYm9yZGVyQm90dG9tTGVmdFJhZGl1czogMCB9ICkoKSB9XG5cdFx0JHsgcnRsKCB7IHJpZ2h0OiAwIH0gKSgpIH1cblx0XHQkeyB1bml0U2l6ZVN0eWxlcyggcHJvcHMgKSB9XG5cdGA7XG59O1xuXG5leHBvcnQgY29uc3QgVW5pdExhYmVsID0gc3R5bGVkLmRpdjwgU2VsZWN0UHJvcHMgPmBcblx0JiYmIHtcblx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcblxuXHRcdCR7IGJhc2VVbml0TGFiZWxTdHlsZXMgfTtcblx0fVxuYDtcblxuZXhwb3J0IGNvbnN0IFVuaXRTZWxlY3QgPSBzdHlsZWQuc2VsZWN0PCBTZWxlY3RQcm9wcyA+YFxuXHQmJiYge1xuXHRcdCR7IGJhc2VVbml0TGFiZWxTdHlsZXMgfTtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0Ym9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG5cblx0XHQmOmhvdmVyIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICR7IENPTE9SUy5saWdodEdyYXlbIDMwMCBdIH07XG5cdFx0fVxuXG5cdFx0Jjpmb2N1cyB7XG5cdFx0XHRib3JkZXItY29sb3I6ICR7IENPTE9SUy51aS5ib3JkZXJGb2N1cyB9O1xuXHRcdFx0b3V0bGluZTogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuXHRcdFx0b3V0bGluZS1vZmZzZXQ6IDA7XG5cdFx0fVxuXG5cdFx0JjpkaXNhYmxlZCB7XG5cdFx0XHRjdXJzb3I6IGluaXRpYWw7XG5cblx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHRcdH1cblx0XHR9XG5cdH1cbmA7XG4iXX0= */"));
64
66
 
65
- const unitSizeStyles = ({
66
- selectSize
67
- }) => {
67
+ const unitSizeStyles = _ref4 => {
68
+ let {
69
+ selectSize
70
+ } = _ref4;
68
71
  const sizes = {
69
72
  default: {
70
73
  height: 28,
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/unit-control/styles/unit-control-styles.ts"],"names":["css","COLORS","rtl","NumberControl","Root","paddingStyles","disableUnits","value","paddingRight","arrowStyles","ValueInput","unitSizeStyles","selectSize","sizes","default","height","lineHeight","minHeight","top","small","baseUnitLabelStyles","props","darkGray","borderTopLeftRadius","borderBottomLeftRadius","right","UnitLabel","UnitSelect","lightGray","ui","borderFocus"],"mappings":";;;;AAAA;AACA;AACA;AACA,SAASA,GAAT,QAAoB,gBAApB;;AAEA;AACA;AACA;AACA,SAASC,MAAT,EAAiBC,GAAjB,QAA4B,aAA5B;AACA,OAAOC,aAAP,MAA0B,sBAA1B;AAaA,OAAO,MAAMC,IAAI;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAAV;;AAKP,MAAMC,aAAa,GAAG,CAAE;AAAEC,EAAAA;AAAF,CAAF,KAAoC;AACzD,QAAMC,KAAK,GAAGD,YAAY,GAAG,CAAH,GAAO,EAAjC;AAEA,sBAAON,GAAP,CACIE,GAAG,CAAE;AAAEM,IAAAA,YAAY,EAAED;AAAhB,GAAF,CAAH,EADJ;AAGA,CAND;;;;;;;;;;;;AAQA,MAAME,WAAW,GAAG,CAAE;AAAEH,EAAAA;AAAF,CAAF,KAAoC;AACvD,MAAKA,YAAL,EAAoB,OAAO,EAAP;AAEpB;AAOA,CAVD,C,CAYA;AACA;;;AAEA,OAAO,MAAMI,UAAU,GAAG,qBAAQP,aAAR;AAAA;AAAA;AAAA;AAAA;AAAA,EAAH,kFAQjBM,WARiB,OASjBJ,aATiB,m2IAAhB;;AAcP,MAAMM,cAAc,GAAG,CAAE;AAAEC,EAAAA;AAAF,CAAF,KAAmC;AACzD,QAAMC,KAAK,GAAG;AACbC,IAAAA,OAAO,EAAE;AACRC,MAAAA,MAAM,EAAE,EADA;AAERC,MAAAA,UAAU,EAAE,MAFJ;AAGRC,MAAAA,SAAS,EAAE,EAHH;AAIRC,MAAAA,GAAG,EAAE;AAJG,KADI;AAObC,IAAAA,KAAK,EAAE;AACNJ,MAAAA,MAAM,EAAE,EADF;AAENC,MAAAA,UAAU,EAAE,MAFN;AAGNC,MAAAA,SAAS,EAAE,EAHL;AAINC,MAAAA,GAAG,EAAE;AAJC;AAPM,GAAd;AAeA,sBAAOlB,GAAG,CAAEa,KAAK,CAAED,UAAF,CAAP,g6IAAV;AACA,CAjBD;;AAmBA,MAAMQ,mBAAmB,GAAKC,KAAF,IAA0B;AACrD,sBAAOrB,GAAP,sGAMWC,MAAM,CAACqB,QAAP,CAAiB,GAAjB,CANX,iLAkBIpB,GAAG,CAAE;AAAEqB,IAAAA,mBAAmB,EAAE,CAAvB;AAA0BC,IAAAA,sBAAsB,EAAE;AAAlD,GAAF,CAAH,EAlBJ,OAmBItB,GAAG,CAAE;AAAEuB,IAAAA,KAAK,EAAE;AAAT,GAAF,CAAH,EAnBJ,OAoBId,cAAc,CAAEU,KAAF,CApBlB;AAsBA,CAvBD;;AAyBA,OAAO,MAAMK,SAAS;AAAA;AAAA;AAAA;AAAA;AAAA,+BAIjBN,mBAJiB,k2IAAf;AAQP,OAAO,MAAMO,UAAU;AAAA;AAAA;AAAA;AAAA;AAAA,WAElBP,mBAFkB,4EAOCnB,MAAM,CAAC2B,SAAP,CAAkB,GAAlB,CAPD,6BAWH3B,MAAM,CAAC4B,EAAP,CAAUC,WAXP,m9IAAhB","sourcesContent":["/**\n * External dependencies\n */\nimport { css } from '@emotion/react';\nimport styled from '@emotion/styled';\n/**\n * Internal dependencies\n */\nimport { COLORS, rtl } from '../../utils';\nimport NumberControl from '../../number-control';\nimport type { SelectSize } from '../types';\n\n// Using `selectSize` instead of `size` to avoid a type conflict with the\n// `size` HTML attribute of the `select` element.\ntype SelectProps = {\n\tselectSize: SelectSize;\n};\n\ntype InputProps = {\n\tdisableUnits?: boolean;\n};\n\nexport const Root = styled.div`\n\tbox-sizing: border-box;\n\tposition: relative;\n`;\n\nconst paddingStyles = ( { disableUnits }: InputProps ) => {\n\tconst value = disableUnits ? 3 : 24;\n\n\treturn css`\n\t\t${ rtl( { paddingRight: value } )() };\n\t`;\n};\n\nconst arrowStyles = ( { disableUnits }: InputProps ) => {\n\tif ( disableUnits ) return '';\n\n\treturn css`\n\t\t&::-webkit-outer-spin-button,\n\t\t&::-webkit-inner-spin-button {\n\t\t\t-webkit-appearance: none;\n\t\t\tmargin: 0;\n\t\t}\n\t`;\n};\n\n// TODO: Resolve need to use &&& to increase specificity\n// https://github.com/WordPress/gutenberg/issues/18483\n\nexport const ValueInput = styled( NumberControl )`\n\t&&& {\n\t\tinput {\n\t\t\tappearance: none;\n\t\t\t-moz-appearance: textfield;\n\t\t\tdisplay: block;\n\t\t\twidth: 100%;\n\n\t\t\t${ arrowStyles };\n\t\t\t${ paddingStyles };\n\t\t}\n\t}\n`;\n\nconst unitSizeStyles = ( { selectSize }: SelectProps ) => {\n\tconst sizes = {\n\t\tdefault: {\n\t\t\theight: 28,\n\t\t\tlineHeight: '24px',\n\t\t\tminHeight: 28,\n\t\t\ttop: 1,\n\t\t},\n\t\tsmall: {\n\t\t\theight: 22,\n\t\t\tlineHeight: '18px',\n\t\t\tminHeight: 22,\n\t\t\ttop: 1,\n\t\t},\n\t};\n\n\treturn css( sizes[ selectSize ] );\n};\n\nconst baseUnitLabelStyles = ( props: SelectProps ) => {\n\treturn css`\n\t\tappearance: none;\n\t\tbackground: transparent;\n\t\tborder-radius: 2px;\n\t\tborder: none;\n\t\tbox-sizing: border-box;\n\t\tcolor: ${ COLORS.darkGray[ 500 ] };\n\t\tdisplay: block;\n\t\tfont-size: 8px;\n\t\tline-height: 1;\n\t\tletter-spacing: -0.5px;\n\t\toutline: none;\n\t\tpadding: 2px 1px;\n\t\tposition: absolute;\n\t\ttext-align-last: center;\n\t\ttext-transform: uppercase;\n\t\twidth: 20px;\n\n\t\t${ rtl( { borderTopLeftRadius: 0, borderBottomLeftRadius: 0 } )() }\n\t\t${ rtl( { right: 0 } )() }\n\t\t${ unitSizeStyles( props ) }\n\t`;\n};\n\nexport const UnitLabel = styled.div< SelectProps >`\n\t&&& {\n\t\tpointer-events: none;\n\n\t\t${ baseUnitLabelStyles };\n\t}\n`;\n\nexport const UnitSelect = styled.select< SelectProps >`\n\t&&& {\n\t\t${ baseUnitLabelStyles };\n\t\tcursor: pointer;\n\t\tborder: 1px solid transparent;\n\n\t\t&:hover {\n\t\t\tbackground-color: ${ COLORS.lightGray[ 300 ] };\n\t\t}\n\n\t\t&:focus {\n\t\t\tborder-color: ${ COLORS.ui.borderFocus };\n\t\t\toutline: 2px solid transparent;\n\t\t\toutline-offset: 0;\n\t\t}\n\n\t\t&:disabled {\n\t\t\tcursor: initial;\n\n\t\t\t&:hover {\n\t\t\t\tbackground-color: transparent;\n\t\t\t}\n\t\t}\n\t}\n`;\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/unit-control/styles/unit-control-styles.ts"],"names":["css","COLORS","rtl","NumberControl","Root","paddingStyles","disableUnits","value","paddingRight","arrowStyles","ValueInput","unitSizeStyles","selectSize","sizes","default","height","lineHeight","minHeight","top","small","baseUnitLabelStyles","props","darkGray","borderTopLeftRadius","borderBottomLeftRadius","right","UnitLabel","UnitSelect","lightGray","ui","borderFocus"],"mappings":";;;;AAAA;AACA;AACA;AACA,SAASA,GAAT,QAAoB,gBAApB;;AAEA;AACA;AACA;AACA,SAASC,MAAT,EAAiBC,GAAjB,QAA4B,aAA5B;AACA,OAAOC,aAAP,MAA0B,sBAA1B;AAaA,OAAO,MAAMC,IAAI;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAAV;;AAKP,MAAMC,aAAa,GAAG,SAAoC;AAAA,MAAlC;AAAEC,IAAAA;AAAF,GAAkC;AACzD,QAAMC,KAAK,GAAGD,YAAY,GAAG,CAAH,GAAO,EAAjC;AAEA,sBAAON,GAAP,CACIE,GAAG,CAAE;AAAEM,IAAAA,YAAY,EAAED;AAAhB,GAAF,CAAH,EADJ;AAGA,CAND;;;;;;;;;;;;AAQA,MAAME,WAAW,GAAG,SAAoC;AAAA,MAAlC;AAAEH,IAAAA;AAAF,GAAkC;AACvD,MAAKA,YAAL,EAAoB,OAAO,EAAP;AAEpB;AAOA,CAVD,C,CAYA;AACA;;;AAEA,OAAO,MAAMI,UAAU,GAAG,qBAAQP,aAAR;AAAA;AAAA;AAAA;AAAA;AAAA,EAAH,kFAQjBM,WARiB,OASjBJ,aATiB,m2IAAhB;;AAcP,MAAMM,cAAc,GAAG,SAAmC;AAAA,MAAjC;AAAEC,IAAAA;AAAF,GAAiC;AACzD,QAAMC,KAAK,GAAG;AACbC,IAAAA,OAAO,EAAE;AACRC,MAAAA,MAAM,EAAE,EADA;AAERC,MAAAA,UAAU,EAAE,MAFJ;AAGRC,MAAAA,SAAS,EAAE,EAHH;AAIRC,MAAAA,GAAG,EAAE;AAJG,KADI;AAObC,IAAAA,KAAK,EAAE;AACNJ,MAAAA,MAAM,EAAE,EADF;AAENC,MAAAA,UAAU,EAAE,MAFN;AAGNC,MAAAA,SAAS,EAAE,EAHL;AAINC,MAAAA,GAAG,EAAE;AAJC;AAPM,GAAd;AAeA,sBAAOlB,GAAG,CAAEa,KAAK,CAAED,UAAF,CAAP,g6IAAV;AACA,CAjBD;;AAmBA,MAAMQ,mBAAmB,GAAKC,KAAF,IAA0B;AACrD,sBAAOrB,GAAP,sGAMWC,MAAM,CAACqB,QAAP,CAAiB,GAAjB,CANX,iLAkBIpB,GAAG,CAAE;AAAEqB,IAAAA,mBAAmB,EAAE,CAAvB;AAA0BC,IAAAA,sBAAsB,EAAE;AAAlD,GAAF,CAAH,EAlBJ,OAmBItB,GAAG,CAAE;AAAEuB,IAAAA,KAAK,EAAE;AAAT,GAAF,CAAH,EAnBJ,OAoBId,cAAc,CAAEU,KAAF,CApBlB;AAsBA,CAvBD;;AAyBA,OAAO,MAAMK,SAAS;AAAA;AAAA;AAAA;AAAA;AAAA,+BAIjBN,mBAJiB,k2IAAf;AAQP,OAAO,MAAMO,UAAU;AAAA;AAAA;AAAA;AAAA;AAAA,WAElBP,mBAFkB,4EAOCnB,MAAM,CAAC2B,SAAP,CAAkB,GAAlB,CAPD,6BAWH3B,MAAM,CAAC4B,EAAP,CAAUC,WAXP,m9IAAhB","sourcesContent":["/**\n * External dependencies\n */\nimport { css } from '@emotion/react';\nimport styled from '@emotion/styled';\n/**\n * Internal dependencies\n */\nimport { COLORS, rtl } from '../../utils';\nimport NumberControl from '../../number-control';\nimport type { SelectSize } from '../types';\n\n// Using `selectSize` instead of `size` to avoid a type conflict with the\n// `size` HTML attribute of the `select` element.\ntype SelectProps = {\n\tselectSize: SelectSize;\n};\n\ntype InputProps = {\n\tdisableUnits?: boolean;\n};\n\nexport const Root = styled.div`\n\tbox-sizing: border-box;\n\tposition: relative;\n`;\n\nconst paddingStyles = ( { disableUnits }: InputProps ) => {\n\tconst value = disableUnits ? 3 : 24;\n\n\treturn css`\n\t\t${ rtl( { paddingRight: value } )() };\n\t`;\n};\n\nconst arrowStyles = ( { disableUnits }: InputProps ) => {\n\tif ( disableUnits ) return '';\n\n\treturn css`\n\t\t&::-webkit-outer-spin-button,\n\t\t&::-webkit-inner-spin-button {\n\t\t\t-webkit-appearance: none;\n\t\t\tmargin: 0;\n\t\t}\n\t`;\n};\n\n// TODO: Resolve need to use &&& to increase specificity\n// https://github.com/WordPress/gutenberg/issues/18483\n\nexport const ValueInput = styled( NumberControl )`\n\t&&& {\n\t\tinput {\n\t\t\tappearance: none;\n\t\t\t-moz-appearance: textfield;\n\t\t\tdisplay: block;\n\t\t\twidth: 100%;\n\n\t\t\t${ arrowStyles };\n\t\t\t${ paddingStyles };\n\t\t}\n\t}\n`;\n\nconst unitSizeStyles = ( { selectSize }: SelectProps ) => {\n\tconst sizes = {\n\t\tdefault: {\n\t\t\theight: 28,\n\t\t\tlineHeight: '24px',\n\t\t\tminHeight: 28,\n\t\t\ttop: 1,\n\t\t},\n\t\tsmall: {\n\t\t\theight: 22,\n\t\t\tlineHeight: '18px',\n\t\t\tminHeight: 22,\n\t\t\ttop: 1,\n\t\t},\n\t};\n\n\treturn css( sizes[ selectSize ] );\n};\n\nconst baseUnitLabelStyles = ( props: SelectProps ) => {\n\treturn css`\n\t\tappearance: none;\n\t\tbackground: transparent;\n\t\tborder-radius: 2px;\n\t\tborder: none;\n\t\tbox-sizing: border-box;\n\t\tcolor: ${ COLORS.darkGray[ 500 ] };\n\t\tdisplay: block;\n\t\tfont-size: 8px;\n\t\tline-height: 1;\n\t\tletter-spacing: -0.5px;\n\t\toutline: none;\n\t\tpadding: 2px 1px;\n\t\tposition: absolute;\n\t\ttext-align-last: center;\n\t\ttext-transform: uppercase;\n\t\twidth: 20px;\n\n\t\t${ rtl( { borderTopLeftRadius: 0, borderBottomLeftRadius: 0 } )() }\n\t\t${ rtl( { right: 0 } )() }\n\t\t${ unitSizeStyles( props ) }\n\t`;\n};\n\nexport const UnitLabel = styled.div< SelectProps >`\n\t&&& {\n\t\tpointer-events: none;\n\n\t\t${ baseUnitLabelStyles };\n\t}\n`;\n\nexport const UnitSelect = styled.select< SelectProps >`\n\t&&& {\n\t\t${ baseUnitLabelStyles };\n\t\tcursor: pointer;\n\t\tborder: 1px solid transparent;\n\n\t\t&:hover {\n\t\t\tbackground-color: ${ COLORS.lightGray[ 300 ] };\n\t\t}\n\n\t\t&:focus {\n\t\t\tborder-color: ${ COLORS.ui.borderFocus };\n\t\t\toutline: 2px solid transparent;\n\t\t\toutline-offset: 0;\n\t\t}\n\n\t\t&:disabled {\n\t\t\tcursor: initial;\n\n\t\t\t&:hover {\n\t\t\t\tbackground-color: transparent;\n\t\t\t}\n\t\t}\n\t}\n`;\n"]}
@@ -1,2 +1,2 @@
1
-
1
+ export {};
2
2
  //# sourceMappingURL=types.js.map
@@ -9,15 +9,17 @@ import classnames from 'classnames'; // eslint-disable-next-line no-restricted-i
9
9
 
10
10
  import { UnitSelect, UnitLabel } from './styles/unit-control-styles';
11
11
  import { CSS_UNITS, hasUnits } from './utils';
12
- export default function UnitSelectControl({
13
- className,
14
- isUnitSelectTabbable: isTabbable = true,
15
- onChange = noop,
16
- size = 'default',
17
- unit = 'px',
18
- units = CSS_UNITS,
19
- ...props
20
- }) {
12
+ export default function UnitSelectControl(_ref) {
13
+ let {
14
+ className,
15
+ isUnitSelectTabbable: isTabbable = true,
16
+ onChange = noop,
17
+ size = 'default',
18
+ unit = 'px',
19
+ units = CSS_UNITS,
20
+ ...props
21
+ } = _ref;
22
+
21
23
  if (!units || !hasUnits(units) || (units === null || units === void 0 ? void 0 : units.length) === 1) {
22
24
  return createElement(UnitLabel, {
23
25
  className: "components-unit-control__unit-label",
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/unit-control/unit-select-control.tsx"],"names":["noop","classnames","UnitSelect","UnitLabel","CSS_UNITS","hasUnits","UnitSelectControl","className","isUnitSelectTabbable","isTabbable","onChange","size","unit","units","props","length","handleOnChange","event","value","unitValue","target","data","find","option","classes","undefined","map","label"],"mappings":";;;AAAA;AACA;AACA;AACA,SAASA,IAAT,QAAqB,QAArB;AACA,OAAOC,UAAP,MAAuB,YAAvB,C,CACA;;AAOA,SAASC,UAAT,EAAqBC,SAArB,QAAsC,8BAAtC;AACA,SAASC,SAAT,EAAoBC,QAApB,QAAoC,SAApC;AAGA,eAAe,SAASC,iBAAT,CAA4B;AAC1CC,EAAAA,SAD0C;AAE1CC,EAAAA,oBAAoB,EAAEC,UAAU,GAAG,IAFO;AAG1CC,EAAAA,QAAQ,GAAGV,IAH+B;AAI1CW,EAAAA,IAAI,GAAG,SAJmC;AAK1CC,EAAAA,IAAI,GAAG,IALmC;AAM1CC,EAAAA,KAAK,GAAGT,SANkC;AAO1C,KAAGU;AAPuC,CAA5B,EAQyD;AACvE,MAAK,CAAED,KAAF,IAAW,CAAER,QAAQ,CAAEQ,KAAF,CAArB,IAAkC,CAAAA,KAAK,SAAL,IAAAA,KAAK,WAAL,YAAAA,KAAK,CAAEE,MAAP,MAAkB,CAAzD,EAA6D;AAC5D,WACC,cAAC,SAAD;AACC,MAAA,SAAS,EAAC,qCADX;AAEC,MAAA,UAAU,EAAGJ;AAFd,OAIGC,IAJH,CADD;AAQA;;AAED,QAAMI,cAAc,GAAKC,KAAF,IAA+C;AACrE,UAAM;AAAEC,MAAAA,KAAK,EAAEC;AAAT,QAAuBF,KAAK,CAACG,MAAnC;AACA,UAAMC,IAAI,GAAGR,KAAK,CAACS,IAAN,CAAcC,MAAF,IAAcA,MAAM,CAACL,KAAP,KAAiBC,SAA3C,CAAb;AAEAT,IAAAA,QAAQ,CAAES,SAAF,EAAa;AAAEF,MAAAA,KAAF;AAASI,MAAAA;AAAT,KAAb,CAAR;AACA,GALD;;AAOA,QAAMG,OAAO,GAAGvB,UAAU,CAAE,iCAAF,EAAqCM,SAArC,CAA1B;AAEA,SACC,cAAC,UAAD;AACC,IAAA,SAAS,EAAGiB,OADb;AAEC,IAAA,QAAQ,EAAGR,cAFZ;AAGC,IAAA,UAAU,EAAGL,IAHd;AAIC,IAAA,QAAQ,EAAGF,UAAU,GAAGgB,SAAH,GAAe,CAAC,CAJtC;AAKC,IAAA,KAAK,EAAGb;AALT,KAMME,KANN,GAQGD,KAAK,CAACa,GAAN,CAAaH,MAAF,IACZ;AAAQ,IAAA,KAAK,EAAGA,MAAM,CAACL,KAAvB;AAA+B,IAAA,GAAG,EAAGK,MAAM,CAACL;AAA5C,KACGK,MAAM,CAACI,KADV,CADC,CARH,CADD;AAgBA","sourcesContent":["/**\n * External dependencies\n */\nimport { noop } from 'lodash';\nimport classnames from 'classnames';\n// eslint-disable-next-line no-restricted-imports\nimport type { ChangeEvent } from 'react';\n\n/**\n * Internal dependencies\n */\nimport type { WordPressComponentProps } from '../ui/context';\nimport { UnitSelect, UnitLabel } from './styles/unit-control-styles';\nimport { CSS_UNITS, hasUnits } from './utils';\nimport type { UnitSelectControlProps } from './types';\n\nexport default function UnitSelectControl( {\n\tclassName,\n\tisUnitSelectTabbable: isTabbable = true,\n\tonChange = noop,\n\tsize = 'default',\n\tunit = 'px',\n\tunits = CSS_UNITS,\n\t...props\n}: WordPressComponentProps< UnitSelectControlProps, 'select', false > ) {\n\tif ( ! units || ! hasUnits( units ) || units?.length === 1 ) {\n\t\treturn (\n\t\t\t<UnitLabel\n\t\t\t\tclassName=\"components-unit-control__unit-label\"\n\t\t\t\tselectSize={ size }\n\t\t\t>\n\t\t\t\t{ unit }\n\t\t\t</UnitLabel>\n\t\t);\n\t}\n\n\tconst handleOnChange = ( event: ChangeEvent< HTMLSelectElement > ) => {\n\t\tconst { value: unitValue } = event.target;\n\t\tconst data = units.find( ( option ) => option.value === unitValue );\n\n\t\tonChange( unitValue, { event, data } );\n\t};\n\n\tconst classes = classnames( 'components-unit-control__select', className );\n\n\treturn (\n\t\t<UnitSelect\n\t\t\tclassName={ classes }\n\t\t\tonChange={ handleOnChange }\n\t\t\tselectSize={ size }\n\t\t\ttabIndex={ isTabbable ? undefined : -1 }\n\t\t\tvalue={ unit }\n\t\t\t{ ...props }\n\t\t>\n\t\t\t{ units.map( ( option ) => (\n\t\t\t\t<option value={ option.value } key={ option.value }>\n\t\t\t\t\t{ option.label }\n\t\t\t\t</option>\n\t\t\t) ) }\n\t\t</UnitSelect>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/unit-control/unit-select-control.tsx"],"names":["noop","classnames","UnitSelect","UnitLabel","CSS_UNITS","hasUnits","UnitSelectControl","className","isUnitSelectTabbable","isTabbable","onChange","size","unit","units","props","length","handleOnChange","event","value","unitValue","target","data","find","option","classes","undefined","map","label"],"mappings":";;;AAAA;AACA;AACA;AACA,SAASA,IAAT,QAAqB,QAArB;AACA,OAAOC,UAAP,MAAuB,YAAvB,C,CACA;;AAOA,SAASC,UAAT,EAAqBC,SAArB,QAAsC,8BAAtC;AACA,SAASC,SAAT,EAAoBC,QAApB,QAAoC,SAApC;AAGA,eAAe,SAASC,iBAAT,OAQyD;AAAA,MAR7B;AAC1CC,IAAAA,SAD0C;AAE1CC,IAAAA,oBAAoB,EAAEC,UAAU,GAAG,IAFO;AAG1CC,IAAAA,QAAQ,GAAGV,IAH+B;AAI1CW,IAAAA,IAAI,GAAG,SAJmC;AAK1CC,IAAAA,IAAI,GAAG,IALmC;AAM1CC,IAAAA,KAAK,GAAGT,SANkC;AAO1C,OAAGU;AAPuC,GAQ6B;;AACvE,MAAK,CAAED,KAAF,IAAW,CAAER,QAAQ,CAAEQ,KAAF,CAArB,IAAkC,CAAAA,KAAK,SAAL,IAAAA,KAAK,WAAL,YAAAA,KAAK,CAAEE,MAAP,MAAkB,CAAzD,EAA6D;AAC5D,WACC,cAAC,SAAD;AACC,MAAA,SAAS,EAAC,qCADX;AAEC,MAAA,UAAU,EAAGJ;AAFd,OAIGC,IAJH,CADD;AAQA;;AAED,QAAMI,cAAc,GAAKC,KAAF,IAA+C;AACrE,UAAM;AAAEC,MAAAA,KAAK,EAAEC;AAAT,QAAuBF,KAAK,CAACG,MAAnC;AACA,UAAMC,IAAI,GAAGR,KAAK,CAACS,IAAN,CAAcC,MAAF,IAAcA,MAAM,CAACL,KAAP,KAAiBC,SAA3C,CAAb;AAEAT,IAAAA,QAAQ,CAAES,SAAF,EAAa;AAAEF,MAAAA,KAAF;AAASI,MAAAA;AAAT,KAAb,CAAR;AACA,GALD;;AAOA,QAAMG,OAAO,GAAGvB,UAAU,CAAE,iCAAF,EAAqCM,SAArC,CAA1B;AAEA,SACC,cAAC,UAAD;AACC,IAAA,SAAS,EAAGiB,OADb;AAEC,IAAA,QAAQ,EAAGR,cAFZ;AAGC,IAAA,UAAU,EAAGL,IAHd;AAIC,IAAA,QAAQ,EAAGF,UAAU,GAAGgB,SAAH,GAAe,CAAC,CAJtC;AAKC,IAAA,KAAK,EAAGb;AALT,KAMME,KANN,GAQGD,KAAK,CAACa,GAAN,CAAaH,MAAF,IACZ;AAAQ,IAAA,KAAK,EAAGA,MAAM,CAACL,KAAvB;AAA+B,IAAA,GAAG,EAAGK,MAAM,CAACL;AAA5C,KACGK,MAAM,CAACI,KADV,CADC,CARH,CADD;AAgBA","sourcesContent":["/**\n * External dependencies\n */\nimport { noop } from 'lodash';\nimport classnames from 'classnames';\n// eslint-disable-next-line no-restricted-imports\nimport type { ChangeEvent } from 'react';\n\n/**\n * Internal dependencies\n */\nimport type { WordPressComponentProps } from '../ui/context';\nimport { UnitSelect, UnitLabel } from './styles/unit-control-styles';\nimport { CSS_UNITS, hasUnits } from './utils';\nimport type { UnitSelectControlProps } from './types';\n\nexport default function UnitSelectControl( {\n\tclassName,\n\tisUnitSelectTabbable: isTabbable = true,\n\tonChange = noop,\n\tsize = 'default',\n\tunit = 'px',\n\tunits = CSS_UNITS,\n\t...props\n}: WordPressComponentProps< UnitSelectControlProps, 'select', false > ) {\n\tif ( ! units || ! hasUnits( units ) || units?.length === 1 ) {\n\t\treturn (\n\t\t\t<UnitLabel\n\t\t\t\tclassName=\"components-unit-control__unit-label\"\n\t\t\t\tselectSize={ size }\n\t\t\t>\n\t\t\t\t{ unit }\n\t\t\t</UnitLabel>\n\t\t);\n\t}\n\n\tconst handleOnChange = ( event: ChangeEvent< HTMLSelectElement > ) => {\n\t\tconst { value: unitValue } = event.target;\n\t\tconst data = units.find( ( option ) => option.value === unitValue );\n\n\t\tonChange( unitValue, { event, data } );\n\t};\n\n\tconst classes = classnames( 'components-unit-control__select', className );\n\n\treturn (\n\t\t<UnitSelect\n\t\t\tclassName={ classes }\n\t\t\tonChange={ handleOnChange }\n\t\t\tselectSize={ size }\n\t\t\ttabIndex={ isTabbable ? undefined : -1 }\n\t\t\tvalue={ unit }\n\t\t\t{ ...props }\n\t\t>\n\t\t\t{ units.map( ( option ) => (\n\t\t\t\t<option value={ option.value } key={ option.value }>\n\t\t\t\t\t{ option.label }\n\t\t\t\t</option>\n\t\t\t) ) }\n\t\t</UnitSelect>\n\t);\n}\n"]}
@@ -161,7 +161,8 @@ export function hasUnits(units) {
161
161
  * @return The extracted number and unit.
162
162
  */
163
163
 
164
- export function parseUnit(initialValue, units = ALL_CSS_UNITS) {
164
+ export function parseUnit(initialValue) {
165
+ let units = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : ALL_CSS_UNITS;
165
166
  const value = String(initialValue).trim();
166
167
  let num = parseFloat(value);
167
168
  num = isNaN(num) ? '' : num;
@@ -234,7 +235,9 @@ export function parseA11yLabelForUnit(unit) {
234
235
  * @return Filtered units based on settings.
235
236
  */
236
237
 
237
- export function filterUnitsWithSettings(unitSetting = [], units) {
238
+ export function filterUnitsWithSettings() {
239
+ let unitSetting = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
240
+ let units = arguments.length > 1 ? arguments[1] : undefined;
238
241
  return Array.isArray(units) ? units.filter(unit => {
239
242
  return unitSetting.includes(unit.value);
240
243
  }) : [];
@@ -252,11 +255,12 @@ export function filterUnitsWithSettings(unitSetting = [], units) {
252
255
  * @return Filtered units based on settings.
253
256
  */
254
257
 
255
- export const useCustomUnits = ({
256
- units,
257
- availableUnits,
258
- defaultValues
259
- }) => {
258
+ export const useCustomUnits = _ref => {
259
+ let {
260
+ units,
261
+ availableUnits,
262
+ defaultValues
263
+ } = _ref;
260
264
  units = units || ALL_CSS_UNITS;
261
265
  const usedUnits = filterUnitsWithSettings(!availableUnits ? [] : availableUnits, units);
262
266
 
@@ -285,7 +289,9 @@ export const useCustomUnits = ({
285
289
  * @return A collection of units containing the unit for the current value.
286
290
  */
287
291
 
288
- export function getUnitsWithCurrentUnit(currentValue, legacyUnit, units = ALL_CSS_UNITS) {
292
+ export function getUnitsWithCurrentUnit(currentValue, legacyUnit) {
293
+ let units = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : ALL_CSS_UNITS;
294
+
289
295
  if (!Array.isArray(units)) {
290
296
  return units;
291
297
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/unit-control/utils.ts"],"names":["__","_x","Platform","isWeb","OS","allUnits","px","value","label","default","a11yLabel","step","em","rem","vw","vh","vmin","vmax","ch","ex","cm","mm","in","pc","pt","ALL_CSS_UNITS","Object","values","CSS_UNITS","DEFAULT_UNIT","getParsedValue","unit","units","initialValue","parseUnit","hasUnits","Array","isArray","length","String","trim","num","parseFloat","isNaN","unitMatch","match","undefined","toLowerCase","find","item","getValidParsedUnit","next","fallbackValue","fallbackUnit","parsedValue","parsedUnit","baseValue","baseUnit","Number","isFinite","parseA11yLabelForUnit","filterUnitsWithSettings","unitSetting","filter","includes","useCustomUnits","availableUnits","defaultValues","usedUnits","forEach","i","getUnitsWithCurrentUnit","currentValue","legacyUnit","unitsWithCurrentUnit","currentUnit","some","unshift"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, _x } from '@wordpress/i18n';\nimport { Platform } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport type { Value, WPUnitControlUnit, WPUnitControlUnitList } from './types';\n\nconst isWeb = Platform.OS === 'web';\n\nconst allUnits: Record< string, WPUnitControlUnit > = {\n\tpx: {\n\t\tvalue: 'px',\n\t\tlabel: isWeb ? 'px' : __( 'Pixels (px)' ),\n\t\tdefault: '',\n\t\ta11yLabel: __( 'Pixels (px)' ),\n\t\tstep: 1,\n\t},\n\t'%': {\n\t\tvalue: '%',\n\t\tlabel: isWeb ? '%' : __( 'Percentage (%)' ),\n\t\tdefault: '',\n\t\ta11yLabel: __( 'Percent (%)' ),\n\t\tstep: 0.1,\n\t},\n\tem: {\n\t\tvalue: 'em',\n\t\tlabel: isWeb ? 'em' : __( 'Relative to parent font size (em)' ),\n\t\tdefault: '',\n\t\ta11yLabel: _x( 'ems', 'Relative to parent font size (em)' ),\n\t\tstep: 0.01,\n\t},\n\trem: {\n\t\tvalue: 'rem',\n\t\tlabel: isWeb ? 'rem' : __( 'Relative to root font size (rem)' ),\n\t\tdefault: '',\n\t\ta11yLabel: _x( 'rems', 'Relative to root font size (rem)' ),\n\t\tstep: 0.01,\n\t},\n\tvw: {\n\t\tvalue: 'vw',\n\t\tlabel: isWeb ? 'vw' : __( 'Viewport width (vw)' ),\n\t\tdefault: '',\n\t\ta11yLabel: __( 'Viewport width (vw)' ),\n\t\tstep: 0.1,\n\t},\n\tvh: {\n\t\tvalue: 'vh',\n\t\tlabel: isWeb ? 'vh' : __( 'Viewport height (vh)' ),\n\t\tdefault: '',\n\t\ta11yLabel: __( 'Viewport height (vh)' ),\n\t\tstep: 0.1,\n\t},\n\tvmin: {\n\t\tvalue: 'vmin',\n\t\tlabel: isWeb ? 'vmin' : __( 'Viewport smallest dimension (vmin)' ),\n\t\tdefault: '',\n\t\ta11yLabel: __( 'Viewport smallest dimension (vmin)' ),\n\t\tstep: 0.1,\n\t},\n\tvmax: {\n\t\tvalue: 'vmax',\n\t\tlabel: isWeb ? 'vmax' : __( 'Viewport largest dimension (vmax)' ),\n\t\tdefault: '',\n\t\ta11yLabel: __( 'Viewport largest dimension (vmax)' ),\n\t\tstep: 0.1,\n\t},\n\tch: {\n\t\tvalue: 'ch',\n\t\tlabel: isWeb ? 'ch' : __( 'Width of the zero (0) character (ch)' ),\n\t\tdefault: '',\n\t\ta11yLabel: __( 'Width of the zero (0) character (ch)' ),\n\t\tstep: 0.01,\n\t},\n\tex: {\n\t\tvalue: 'ex',\n\t\tlabel: isWeb ? 'ex' : __( 'x-height of the font (ex)' ),\n\t\tdefault: '',\n\t\ta11yLabel: __( 'x-height of the font (ex)' ),\n\t\tstep: 0.01,\n\t},\n\tcm: {\n\t\tvalue: 'cm',\n\t\tlabel: isWeb ? 'cm' : __( 'Centimeters (cm)' ),\n\t\tdefault: '',\n\t\ta11yLabel: __( 'Centimeters (cm)' ),\n\t\tstep: 0.001,\n\t},\n\tmm: {\n\t\tvalue: 'mm',\n\t\tlabel: isWeb ? 'mm' : __( 'Millimeters (mm)' ),\n\t\tdefault: '',\n\t\ta11yLabel: __( 'Millimeters (mm)' ),\n\t\tstep: 0.1,\n\t},\n\tin: {\n\t\tvalue: 'in',\n\t\tlabel: isWeb ? 'in' : __( 'Inches (in)' ),\n\t\tdefault: '',\n\t\ta11yLabel: __( 'Inches (in)' ),\n\t\tstep: 0.001,\n\t},\n\tpc: {\n\t\tvalue: 'pc',\n\t\tlabel: isWeb ? 'pc' : __( 'Picas (pc)' ),\n\t\tdefault: '',\n\t\ta11yLabel: __( 'Picas (pc)' ),\n\t\tstep: 1,\n\t},\n\tpt: {\n\t\tvalue: 'pt',\n\t\tlabel: isWeb ? 'pt' : __( 'Points (pt)' ),\n\t\tdefault: '',\n\t\ta11yLabel: __( 'Points (pt)' ),\n\t\tstep: 1,\n\t},\n};\n\n/**\n * An array of all available CSS length units.\n */\nexport const ALL_CSS_UNITS = Object.values( allUnits );\n\n/**\n * Units of measurements. `a11yLabel` is used by screenreaders.\n */\nexport const CSS_UNITS = [\n\tallUnits.px,\n\tallUnits[ '%' ],\n\tallUnits.em,\n\tallUnits.rem,\n\tallUnits.vw,\n\tallUnits.vh,\n];\n\nexport const DEFAULT_UNIT = allUnits.px;\n\n/**\n * Handles legacy value + unit handling.\n * This component use to manage both incoming value and units separately.\n *\n * Moving forward, ideally the value should be a string that contains both\n * the value and unit, example: '10px'\n *\n * @param value Value\n * @param unit Unit value\n * @param units Units to derive from.\n * @return The extracted number and unit.\n */\nexport function getParsedValue(\n\tvalue: Value,\n\tunit?: string,\n\tunits?: WPUnitControlUnitList\n): [ Value, string | undefined ] {\n\tconst initialValue = unit ? `${ value }${ unit }` : value;\n\n\treturn parseUnit( initialValue, units );\n}\n\n/**\n * Checks if units are defined.\n *\n * @param units Units to check.\n * @return Whether units are defined.\n */\nexport function hasUnits( units: WPUnitControlUnitList ): boolean {\n\treturn Array.isArray( units ) && !! units.length;\n}\n\n/**\n * Parses a number and unit from a value.\n *\n * @param initialValue Value to parse\n * @param units Units to derive from.\n * @return The extracted number and unit.\n */\nexport function parseUnit(\n\tinitialValue: Value | undefined,\n\tunits: WPUnitControlUnitList = ALL_CSS_UNITS\n): [ Value, string | undefined ] {\n\tconst value = String( initialValue ).trim();\n\n\tlet num: Value = parseFloat( value );\n\tnum = isNaN( num ) ? '' : num;\n\n\tconst unitMatch = value.match( /[\\d.\\-\\+]*\\s*(.*)/ );\n\n\tlet unit: string | undefined =\n\t\tunitMatch?.[ 1 ] !== undefined ? unitMatch[ 1 ] : '';\n\tunit = unit.toLowerCase();\n\n\tif ( hasUnits( units ) && units !== false ) {\n\t\tconst match = units.find( ( item ) => item.value === unit );\n\t\tunit = match?.value;\n\t} else {\n\t\tunit = DEFAULT_UNIT.value;\n\t}\n\n\treturn [ num, unit ];\n}\n\n/**\n * Parses a number and unit from a value. Validates parsed value, using fallback\n * value if invalid.\n *\n * @param next The next value.\n * @param units Units to derive from.\n * @param fallbackValue The fallback value.\n * @param fallbackUnit The fallback value.\n * @return The extracted value and unit.\n */\nexport function getValidParsedUnit(\n\tnext: Value | undefined,\n\tunits: WPUnitControlUnitList,\n\tfallbackValue: Value,\n\tfallbackUnit: string | undefined\n): [ Value, string | undefined ] {\n\tconst [ parsedValue, parsedUnit ] = parseUnit( next, units );\n\tlet baseValue = parsedValue;\n\tlet baseUnit: string | undefined;\n\n\t// The parsed value from `parseUnit` should now be either a\n\t// real number or an empty string. If not, use the fallback value.\n\tif ( ! Number.isFinite( parsedValue ) || parsedValue === '' ) {\n\t\tbaseValue = fallbackValue;\n\t}\n\n\tbaseUnit = parsedUnit || fallbackUnit;\n\n\t/**\n\t * If no unit is found, attempt to use the first value from the collection\n\t * of units as a default fallback.\n\t */\n\tif ( Array.isArray( units ) && hasUnits( units ) && ! baseUnit ) {\n\t\tbaseUnit = units[ 0 ]?.value;\n\t}\n\n\treturn [ baseValue, baseUnit ];\n}\n\n/**\n * Takes a unit value and finds the matching accessibility label for the\n * unit abbreviation.\n *\n * @param unit Unit value (example: px)\n * @return a11y label for the unit abbreviation\n */\nexport function parseA11yLabelForUnit( unit: string ): string | undefined {\n\tconst match = ALL_CSS_UNITS.find( ( item ) => item.value === unit );\n\treturn match?.a11yLabel ? match?.a11yLabel : match?.value;\n}\n\n/**\n * Filters available units based on values defined by the unit setting/property.\n *\n * @param unitSetting Collection of preferred unit value strings.\n * @param units Collection of available unit objects.\n *\n * @return Filtered units based on settings.\n */\nexport function filterUnitsWithSettings(\n\tunitSetting: Array< string > = [],\n\tunits: WPUnitControlUnitList\n): Array< WPUnitControlUnit > {\n\treturn Array.isArray( units )\n\t\t? units.filter( ( unit ) => {\n\t\t\t\treturn unitSetting.includes( unit.value );\n\t\t } )\n\t\t: [];\n}\n\n/**\n * Custom hook to retrieve and consolidate units setting from add_theme_support().\n * TODO: ideally this hook shouldn't be needed\n * https://github.com/WordPress/gutenberg/pull/31822#discussion_r633280823\n *\n * @param args An object containing units, settingPath & defaultUnits.\n * @param args.units Collection of all potentially available units.\n * @param args.availableUnits Collection of unit value strings for filtering available units.\n * @param args.defaultValues Collection of default values for defined units. Example: { px: '350', em: '15' }.\n *\n * @return Filtered units based on settings.\n */\nexport const useCustomUnits = ( {\n\tunits,\n\tavailableUnits,\n\tdefaultValues,\n}: {\n\tunits?: WPUnitControlUnitList;\n\tavailableUnits?: Array< string >;\n\tdefaultValues: Record< string, Value >;\n} ): WPUnitControlUnitList => {\n\tunits = units || ALL_CSS_UNITS;\n\tconst usedUnits = filterUnitsWithSettings(\n\t\t! availableUnits ? [] : availableUnits,\n\t\tunits\n\t);\n\n\tif ( defaultValues ) {\n\t\tusedUnits.forEach( ( unit, i ) => {\n\t\t\tif ( defaultValues[ unit.value ] ) {\n\t\t\t\tusedUnits[ i ].default = defaultValues[ unit.value ];\n\t\t\t}\n\t\t} );\n\t}\n\n\treturn usedUnits.length === 0 ? false : usedUnits;\n};\n\n/**\n * Get available units with the unit for the currently selected value\n * prepended if it is not available in the list of units.\n *\n * This is useful to ensure that the current value's unit is always\n * accurately displayed in the UI, even if the intention is to hide\n * the availability of that unit.\n *\n * @param currentValue Selected value to parse.\n * @param legacyUnit Legacy unit value, if currentValue needs it appended.\n * @param units List of available units.\n *\n * @return A collection of units containing the unit for the current value.\n */\nexport function getUnitsWithCurrentUnit(\n\tcurrentValue: Value,\n\tlegacyUnit: string | undefined,\n\tunits: WPUnitControlUnitList = ALL_CSS_UNITS\n): WPUnitControlUnitList {\n\tif ( ! Array.isArray( units ) ) {\n\t\treturn units;\n\t}\n\n\tconst unitsWithCurrentUnit = [ ...units ];\n\tconst [ , currentUnit ] = getParsedValue(\n\t\tcurrentValue,\n\t\tlegacyUnit,\n\t\tALL_CSS_UNITS\n\t);\n\n\tif (\n\t\tcurrentUnit &&\n\t\t! unitsWithCurrentUnit.some( ( unit ) => unit.value === currentUnit )\n\t) {\n\t\tif ( allUnits[ currentUnit ] ) {\n\t\t\tunitsWithCurrentUnit.unshift( allUnits[ currentUnit ] );\n\t\t}\n\t}\n\n\treturn unitsWithCurrentUnit;\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/unit-control/utils.ts"],"names":["__","_x","Platform","isWeb","OS","allUnits","px","value","label","default","a11yLabel","step","em","rem","vw","vh","vmin","vmax","ch","ex","cm","mm","in","pc","pt","ALL_CSS_UNITS","Object","values","CSS_UNITS","DEFAULT_UNIT","getParsedValue","unit","units","initialValue","parseUnit","hasUnits","Array","isArray","length","String","trim","num","parseFloat","isNaN","unitMatch","match","undefined","toLowerCase","find","item","getValidParsedUnit","next","fallbackValue","fallbackUnit","parsedValue","parsedUnit","baseValue","baseUnit","Number","isFinite","parseA11yLabelForUnit","filterUnitsWithSettings","unitSetting","filter","includes","useCustomUnits","availableUnits","defaultValues","usedUnits","forEach","i","getUnitsWithCurrentUnit","currentValue","legacyUnit","unitsWithCurrentUnit","currentUnit","some","unshift"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, _x } from '@wordpress/i18n';\nimport { Platform } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport type { Value, WPUnitControlUnit, WPUnitControlUnitList } from './types';\n\nconst isWeb = Platform.OS === 'web';\n\nconst allUnits: Record< string, WPUnitControlUnit > = {\n\tpx: {\n\t\tvalue: 'px',\n\t\tlabel: isWeb ? 'px' : __( 'Pixels (px)' ),\n\t\tdefault: '',\n\t\ta11yLabel: __( 'Pixels (px)' ),\n\t\tstep: 1,\n\t},\n\t'%': {\n\t\tvalue: '%',\n\t\tlabel: isWeb ? '%' : __( 'Percentage (%)' ),\n\t\tdefault: '',\n\t\ta11yLabel: __( 'Percent (%)' ),\n\t\tstep: 0.1,\n\t},\n\tem: {\n\t\tvalue: 'em',\n\t\tlabel: isWeb ? 'em' : __( 'Relative to parent font size (em)' ),\n\t\tdefault: '',\n\t\ta11yLabel: _x( 'ems', 'Relative to parent font size (em)' ),\n\t\tstep: 0.01,\n\t},\n\trem: {\n\t\tvalue: 'rem',\n\t\tlabel: isWeb ? 'rem' : __( 'Relative to root font size (rem)' ),\n\t\tdefault: '',\n\t\ta11yLabel: _x( 'rems', 'Relative to root font size (rem)' ),\n\t\tstep: 0.01,\n\t},\n\tvw: {\n\t\tvalue: 'vw',\n\t\tlabel: isWeb ? 'vw' : __( 'Viewport width (vw)' ),\n\t\tdefault: '',\n\t\ta11yLabel: __( 'Viewport width (vw)' ),\n\t\tstep: 0.1,\n\t},\n\tvh: {\n\t\tvalue: 'vh',\n\t\tlabel: isWeb ? 'vh' : __( 'Viewport height (vh)' ),\n\t\tdefault: '',\n\t\ta11yLabel: __( 'Viewport height (vh)' ),\n\t\tstep: 0.1,\n\t},\n\tvmin: {\n\t\tvalue: 'vmin',\n\t\tlabel: isWeb ? 'vmin' : __( 'Viewport smallest dimension (vmin)' ),\n\t\tdefault: '',\n\t\ta11yLabel: __( 'Viewport smallest dimension (vmin)' ),\n\t\tstep: 0.1,\n\t},\n\tvmax: {\n\t\tvalue: 'vmax',\n\t\tlabel: isWeb ? 'vmax' : __( 'Viewport largest dimension (vmax)' ),\n\t\tdefault: '',\n\t\ta11yLabel: __( 'Viewport largest dimension (vmax)' ),\n\t\tstep: 0.1,\n\t},\n\tch: {\n\t\tvalue: 'ch',\n\t\tlabel: isWeb ? 'ch' : __( 'Width of the zero (0) character (ch)' ),\n\t\tdefault: '',\n\t\ta11yLabel: __( 'Width of the zero (0) character (ch)' ),\n\t\tstep: 0.01,\n\t},\n\tex: {\n\t\tvalue: 'ex',\n\t\tlabel: isWeb ? 'ex' : __( 'x-height of the font (ex)' ),\n\t\tdefault: '',\n\t\ta11yLabel: __( 'x-height of the font (ex)' ),\n\t\tstep: 0.01,\n\t},\n\tcm: {\n\t\tvalue: 'cm',\n\t\tlabel: isWeb ? 'cm' : __( 'Centimeters (cm)' ),\n\t\tdefault: '',\n\t\ta11yLabel: __( 'Centimeters (cm)' ),\n\t\tstep: 0.001,\n\t},\n\tmm: {\n\t\tvalue: 'mm',\n\t\tlabel: isWeb ? 'mm' : __( 'Millimeters (mm)' ),\n\t\tdefault: '',\n\t\ta11yLabel: __( 'Millimeters (mm)' ),\n\t\tstep: 0.1,\n\t},\n\tin: {\n\t\tvalue: 'in',\n\t\tlabel: isWeb ? 'in' : __( 'Inches (in)' ),\n\t\tdefault: '',\n\t\ta11yLabel: __( 'Inches (in)' ),\n\t\tstep: 0.001,\n\t},\n\tpc: {\n\t\tvalue: 'pc',\n\t\tlabel: isWeb ? 'pc' : __( 'Picas (pc)' ),\n\t\tdefault: '',\n\t\ta11yLabel: __( 'Picas (pc)' ),\n\t\tstep: 1,\n\t},\n\tpt: {\n\t\tvalue: 'pt',\n\t\tlabel: isWeb ? 'pt' : __( 'Points (pt)' ),\n\t\tdefault: '',\n\t\ta11yLabel: __( 'Points (pt)' ),\n\t\tstep: 1,\n\t},\n};\n\n/**\n * An array of all available CSS length units.\n */\nexport const ALL_CSS_UNITS = Object.values( allUnits );\n\n/**\n * Units of measurements. `a11yLabel` is used by screenreaders.\n */\nexport const CSS_UNITS = [\n\tallUnits.px,\n\tallUnits[ '%' ],\n\tallUnits.em,\n\tallUnits.rem,\n\tallUnits.vw,\n\tallUnits.vh,\n];\n\nexport const DEFAULT_UNIT = allUnits.px;\n\n/**\n * Handles legacy value + unit handling.\n * This component use to manage both incoming value and units separately.\n *\n * Moving forward, ideally the value should be a string that contains both\n * the value and unit, example: '10px'\n *\n * @param value Value\n * @param unit Unit value\n * @param units Units to derive from.\n * @return The extracted number and unit.\n */\nexport function getParsedValue(\n\tvalue: Value,\n\tunit?: string,\n\tunits?: WPUnitControlUnitList\n): [ Value, string | undefined ] {\n\tconst initialValue = unit ? `${ value }${ unit }` : value;\n\n\treturn parseUnit( initialValue, units );\n}\n\n/**\n * Checks if units are defined.\n *\n * @param units Units to check.\n * @return Whether units are defined.\n */\nexport function hasUnits( units: WPUnitControlUnitList ): boolean {\n\treturn Array.isArray( units ) && !! units.length;\n}\n\n/**\n * Parses a number and unit from a value.\n *\n * @param initialValue Value to parse\n * @param units Units to derive from.\n * @return The extracted number and unit.\n */\nexport function parseUnit(\n\tinitialValue: Value | undefined,\n\tunits: WPUnitControlUnitList = ALL_CSS_UNITS\n): [ Value, string | undefined ] {\n\tconst value = String( initialValue ).trim();\n\n\tlet num: Value = parseFloat( value );\n\tnum = isNaN( num ) ? '' : num;\n\n\tconst unitMatch = value.match( /[\\d.\\-\\+]*\\s*(.*)/ );\n\n\tlet unit: string | undefined =\n\t\tunitMatch?.[ 1 ] !== undefined ? unitMatch[ 1 ] : '';\n\tunit = unit.toLowerCase();\n\n\tif ( hasUnits( units ) && units !== false ) {\n\t\tconst match = units.find( ( item ) => item.value === unit );\n\t\tunit = match?.value;\n\t} else {\n\t\tunit = DEFAULT_UNIT.value;\n\t}\n\n\treturn [ num, unit ];\n}\n\n/**\n * Parses a number and unit from a value. Validates parsed value, using fallback\n * value if invalid.\n *\n * @param next The next value.\n * @param units Units to derive from.\n * @param fallbackValue The fallback value.\n * @param fallbackUnit The fallback value.\n * @return The extracted value and unit.\n */\nexport function getValidParsedUnit(\n\tnext: Value | undefined,\n\tunits: WPUnitControlUnitList,\n\tfallbackValue: Value,\n\tfallbackUnit: string | undefined\n): [ Value, string | undefined ] {\n\tconst [ parsedValue, parsedUnit ] = parseUnit( next, units );\n\tlet baseValue = parsedValue;\n\tlet baseUnit: string | undefined;\n\n\t// The parsed value from `parseUnit` should now be either a\n\t// real number or an empty string. If not, use the fallback value.\n\tif ( ! Number.isFinite( parsedValue ) || parsedValue === '' ) {\n\t\tbaseValue = fallbackValue;\n\t}\n\n\tbaseUnit = parsedUnit || fallbackUnit;\n\n\t/**\n\t * If no unit is found, attempt to use the first value from the collection\n\t * of units as a default fallback.\n\t */\n\tif ( Array.isArray( units ) && hasUnits( units ) && ! baseUnit ) {\n\t\tbaseUnit = units[ 0 ]?.value;\n\t}\n\n\treturn [ baseValue, baseUnit ];\n}\n\n/**\n * Takes a unit value and finds the matching accessibility label for the\n * unit abbreviation.\n *\n * @param unit Unit value (example: px)\n * @return a11y label for the unit abbreviation\n */\nexport function parseA11yLabelForUnit( unit: string ): string | undefined {\n\tconst match = ALL_CSS_UNITS.find( ( item ) => item.value === unit );\n\treturn match?.a11yLabel ? match?.a11yLabel : match?.value;\n}\n\n/**\n * Filters available units based on values defined by the unit setting/property.\n *\n * @param unitSetting Collection of preferred unit value strings.\n * @param units Collection of available unit objects.\n *\n * @return Filtered units based on settings.\n */\nexport function filterUnitsWithSettings(\n\tunitSetting: Array< string > = [],\n\tunits: WPUnitControlUnitList\n): Array< WPUnitControlUnit > {\n\treturn Array.isArray( units )\n\t\t? units.filter( ( unit ) => {\n\t\t\t\treturn unitSetting.includes( unit.value );\n\t\t } )\n\t\t: [];\n}\n\n/**\n * Custom hook to retrieve and consolidate units setting from add_theme_support().\n * TODO: ideally this hook shouldn't be needed\n * https://github.com/WordPress/gutenberg/pull/31822#discussion_r633280823\n *\n * @param args An object containing units, settingPath & defaultUnits.\n * @param args.units Collection of all potentially available units.\n * @param args.availableUnits Collection of unit value strings for filtering available units.\n * @param args.defaultValues Collection of default values for defined units. Example: { px: '350', em: '15' }.\n *\n * @return Filtered units based on settings.\n */\nexport const useCustomUnits = ( {\n\tunits,\n\tavailableUnits,\n\tdefaultValues,\n}: {\n\tunits?: WPUnitControlUnitList;\n\tavailableUnits?: Array< string >;\n\tdefaultValues: Record< string, Value >;\n} ): WPUnitControlUnitList => {\n\tunits = units || ALL_CSS_UNITS;\n\tconst usedUnits = filterUnitsWithSettings(\n\t\t! availableUnits ? [] : availableUnits,\n\t\tunits\n\t);\n\n\tif ( defaultValues ) {\n\t\tusedUnits.forEach( ( unit, i ) => {\n\t\t\tif ( defaultValues[ unit.value ] ) {\n\t\t\t\tusedUnits[ i ].default = defaultValues[ unit.value ];\n\t\t\t}\n\t\t} );\n\t}\n\n\treturn usedUnits.length === 0 ? false : usedUnits;\n};\n\n/**\n * Get available units with the unit for the currently selected value\n * prepended if it is not available in the list of units.\n *\n * This is useful to ensure that the current value's unit is always\n * accurately displayed in the UI, even if the intention is to hide\n * the availability of that unit.\n *\n * @param currentValue Selected value to parse.\n * @param legacyUnit Legacy unit value, if currentValue needs it appended.\n * @param units List of available units.\n *\n * @return A collection of units containing the unit for the current value.\n */\nexport function getUnitsWithCurrentUnit(\n\tcurrentValue: Value,\n\tlegacyUnit: string | undefined,\n\tunits: WPUnitControlUnitList = ALL_CSS_UNITS\n): WPUnitControlUnitList {\n\tif ( ! Array.isArray( units ) ) {\n\t\treturn units;\n\t}\n\n\tconst unitsWithCurrentUnit = [ ...units ];\n\tconst [ , currentUnit ] = getParsedValue(\n\t\tcurrentValue,\n\t\tlegacyUnit,\n\t\tALL_CSS_UNITS\n\t);\n\n\tif (\n\t\tcurrentUnit &&\n\t\t! unitsWithCurrentUnit.some( ( unit ) => unit.value === currentUnit )\n\t) {\n\t\tif ( allUnits[ currentUnit ] ) {\n\t\t\tunitsWithCurrentUnit.unshift( allUnits[ currentUnit ] );\n\t\t}\n\t}\n\n\treturn unitsWithCurrentUnit;\n}\n"]}
@@ -9,7 +9,11 @@ import { css } from '@emotion/react';
9
9
  * @param {import('@emotion/css/create-instance').CSSInterpolation[]} interpolations
10
10
  */
11
11
 
12
- export function firefoxOnly(strings, ...interpolations) {
12
+ export function firefoxOnly(strings) {
13
+ for (var _len = arguments.length, interpolations = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
14
+ interpolations[_key - 1] = arguments[_key];
15
+ }
16
+
13
17
  const interpolatedStyles = /*#__PURE__*/css(strings, ...interpolations);
14
18
  return /*#__PURE__*/css("@-moz-document url-prefix(){", interpolatedStyles, ";}" + (process.env.NODE_ENV === "production" ? "" : ";label:firefoxOnly;"), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkB3b3JkcHJlc3MvY29tcG9uZW50cy9zcmMvdXRpbHMvYnJvd3NlcnMuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBYVciLCJmaWxlIjoiQHdvcmRwcmVzcy9jb21wb25lbnRzL3NyYy91dGlscy9icm93c2Vycy5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogRXh0ZXJuYWwgZGVwZW5kZW5jaWVzXG4gKi9cbmltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0JztcblxuLyogZXNsaW50LWRpc2FibGUganNkb2Mvbm8tdW5kZWZpbmVkLXR5cGVzICovXG4vKipcbiAqIEBwYXJhbSB7VGVtcGxhdGVTdHJpbmdzQXJyYXl9ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJpbmdzXG4gKiBAcGFyYW0ge2ltcG9ydCgnQGVtb3Rpb24vY3NzL2NyZWF0ZS1pbnN0YW5jZScpLkNTU0ludGVycG9sYXRpb25bXX0gaW50ZXJwb2xhdGlvbnNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZpcmVmb3hPbmx5KCBzdHJpbmdzLCAuLi5pbnRlcnBvbGF0aW9ucyApIHtcblx0Y29uc3QgaW50ZXJwb2xhdGVkU3R5bGVzID0gY3NzKCBzdHJpbmdzLCAuLi5pbnRlcnBvbGF0aW9ucyApO1xuXG5cdHJldHVybiBjc3NgXG5cdFx0QC1tb3otZG9jdW1lbnQgdXJsLXByZWZpeCgpIHtcblx0XHRcdCR7IGludGVycG9sYXRlZFN0eWxlcyB9O1xuXHRcdH1cblx0YDtcbn1cblxuLyoqXG4gKiBAcGFyYW0ge1RlbXBsYXRlU3RyaW5nc0FycmF5fSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RyaW5nc1xuICogQHBhcmFtIHtpbXBvcnQoJ0BlbW90aW9uL2Nzcy9jcmVhdGUtaW5zdGFuY2UnKS5DU1NJbnRlcnBvbGF0aW9uW119IGludGVycG9sYXRpb25zXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBzYWZhcmlPbmx5KCBzdHJpbmdzLCAuLi5pbnRlcnBvbGF0aW9ucyApIHtcblx0Y29uc3QgaW50ZXJwb2xhdGVkU3R5bGVzID0gY3NzKCBzdHJpbmdzLCAuLi5pbnRlcnBvbGF0aW9ucyApO1xuXG5cdHJldHVybiBjc3NgXG5cdFx0QG1lZGlhIG5vdCBhbGwgYW5kICggbWluLXJlc29sdXRpb246IDAuMDAxZHBjbSApIHtcblx0XHRcdEBzdXBwb3J0cyAoIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZSApIHtcblx0XHRcdFx0JHsgaW50ZXJwb2xhdGVkU3R5bGVzIH1cblx0XHRcdH1cblx0XHR9XG5cdGA7XG59XG4vKiBlc2xpbnQtZW5hYmxlIGpzZG9jL25vLXVuZGVmaW5lZC10eXBlcyAqL1xuIl19 */");
15
19
  }
@@ -18,7 +22,11 @@ export function firefoxOnly(strings, ...interpolations) {
18
22
  * @param {import('@emotion/css/create-instance').CSSInterpolation[]} interpolations
19
23
  */
20
24
 
21
- export function safariOnly(strings, ...interpolations) {
25
+ export function safariOnly(strings) {
26
+ for (var _len2 = arguments.length, interpolations = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {
27
+ interpolations[_key2 - 1] = arguments[_key2];
28
+ }
29
+
22
30
  const interpolatedStyles = /*#__PURE__*/css(strings, ...interpolations);
23
31
  return /*#__PURE__*/css("@media not all and ( min-resolution: 0.001dpcm ){@supports ( -webkit-appearance: none ){", interpolatedStyles, ";}}" + (process.env.NODE_ENV === "production" ? "" : ";label:safariOnly;"), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkB3b3JkcHJlc3MvY29tcG9uZW50cy9zcmMvdXRpbHMvYnJvd3NlcnMuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBMkJXIiwiZmlsZSI6IkB3b3JkcHJlc3MvY29tcG9uZW50cy9zcmMvdXRpbHMvYnJvd3NlcnMuanMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEV4dGVybmFsIGRlcGVuZGVuY2llc1xuICovXG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5cbi8qIGVzbGludC1kaXNhYmxlIGpzZG9jL25vLXVuZGVmaW5lZC10eXBlcyAqL1xuLyoqXG4gKiBAcGFyYW0ge1RlbXBsYXRlU3RyaW5nc0FycmF5fSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RyaW5nc1xuICogQHBhcmFtIHtpbXBvcnQoJ0BlbW90aW9uL2Nzcy9jcmVhdGUtaW5zdGFuY2UnKS5DU1NJbnRlcnBvbGF0aW9uW119IGludGVycG9sYXRpb25zXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmaXJlZm94T25seSggc3RyaW5ncywgLi4uaW50ZXJwb2xhdGlvbnMgKSB7XG5cdGNvbnN0IGludGVycG9sYXRlZFN0eWxlcyA9IGNzcyggc3RyaW5ncywgLi4uaW50ZXJwb2xhdGlvbnMgKTtcblxuXHRyZXR1cm4gY3NzYFxuXHRcdEAtbW96LWRvY3VtZW50IHVybC1wcmVmaXgoKSB7XG5cdFx0XHQkeyBpbnRlcnBvbGF0ZWRTdHlsZXMgfTtcblx0XHR9XG5cdGA7XG59XG5cbi8qKlxuICogQHBhcmFtIHtUZW1wbGF0ZVN0cmluZ3NBcnJheX0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cmluZ3NcbiAqIEBwYXJhbSB7aW1wb3J0KCdAZW1vdGlvbi9jc3MvY3JlYXRlLWluc3RhbmNlJykuQ1NTSW50ZXJwb2xhdGlvbltdfSBpbnRlcnBvbGF0aW9uc1xuICovXG5leHBvcnQgZnVuY3Rpb24gc2FmYXJpT25seSggc3RyaW5ncywgLi4uaW50ZXJwb2xhdGlvbnMgKSB7XG5cdGNvbnN0IGludGVycG9sYXRlZFN0eWxlcyA9IGNzcyggc3RyaW5ncywgLi4uaW50ZXJwb2xhdGlvbnMgKTtcblxuXHRyZXR1cm4gY3NzYFxuXHRcdEBtZWRpYSBub3QgYWxsIGFuZCAoIG1pbi1yZXNvbHV0aW9uOiAwLjAwMWRwY20gKSB7XG5cdFx0XHRAc3VwcG9ydHMgKCAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmUgKSB7XG5cdFx0XHRcdCR7IGludGVycG9sYXRlZFN0eWxlcyB9XG5cdFx0XHR9XG5cdFx0fVxuXHRgO1xufVxuLyogZXNsaW50LWVuYWJsZSBqc2RvYy9uby11bmRlZmluZWQtdHlwZXMgKi9cbiJdfQ== */");
24
32
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/utils/browsers.js"],"names":["css","firefoxOnly","strings","interpolations","interpolatedStyles","safariOnly"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,GAAT,QAAoB,gBAApB;AAEA;;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASC,WAAT,CAAsBC,OAAtB,EAA+B,GAAGC,cAAlC,EAAmD;AACzD,QAAMC,kBAAkB,gBAAGJ,GAAG,CAAEE,OAAF,EAAW,GAAGC,cAAd,CAA9B;AAEA,sBAAOH,GAAP,iCAEKI,kBAFL;AAKA;AAED;AACA;AACA;AACA;;AACA,OAAO,SAASC,UAAT,CAAqBH,OAArB,EAA8B,GAAGC,cAAjC,EAAkD;AACxD,QAAMC,kBAAkB,gBAAGJ,GAAG,CAAEE,OAAF,EAAW,GAAGC,cAAd,CAA9B;AAEA,sBAAOH,GAAP,6FAGMI,kBAHN;AAOA;AACD","sourcesContent":["/**\n * External dependencies\n */\nimport { css } from '@emotion/react';\n\n/* eslint-disable jsdoc/no-undefined-types */\n/**\n * @param {TemplateStringsArray} strings\n * @param {import('@emotion/css/create-instance').CSSInterpolation[]} interpolations\n */\nexport function firefoxOnly( strings, ...interpolations ) {\n\tconst interpolatedStyles = css( strings, ...interpolations );\n\n\treturn css`\n\t\t@-moz-document url-prefix() {\n\t\t\t${ interpolatedStyles };\n\t\t}\n\t`;\n}\n\n/**\n * @param {TemplateStringsArray} strings\n * @param {import('@emotion/css/create-instance').CSSInterpolation[]} interpolations\n */\nexport function safariOnly( strings, ...interpolations ) {\n\tconst interpolatedStyles = css( strings, ...interpolations );\n\n\treturn css`\n\t\t@media not all and ( min-resolution: 0.001dpcm ) {\n\t\t\t@supports ( -webkit-appearance: none ) {\n\t\t\t\t${ interpolatedStyles }\n\t\t\t}\n\t\t}\n\t`;\n}\n/* eslint-enable jsdoc/no-undefined-types */\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/utils/browsers.js"],"names":["css","firefoxOnly","strings","interpolations","interpolatedStyles","safariOnly"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,GAAT,QAAoB,gBAApB;AAEA;;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASC,WAAT,CAAsBC,OAAtB,EAAmD;AAAA,oCAAjBC,cAAiB;AAAjBA,IAAAA,cAAiB;AAAA;;AACzD,QAAMC,kBAAkB,gBAAGJ,GAAG,CAAEE,OAAF,EAAW,GAAGC,cAAd,CAA9B;AAEA,sBAAOH,GAAP,iCAEKI,kBAFL;AAKA;AAED;AACA;AACA;AACA;;AACA,OAAO,SAASC,UAAT,CAAqBH,OAArB,EAAkD;AAAA,qCAAjBC,cAAiB;AAAjBA,IAAAA,cAAiB;AAAA;;AACxD,QAAMC,kBAAkB,gBAAGJ,GAAG,CAAEE,OAAF,EAAW,GAAGC,cAAd,CAA9B;AAEA,sBAAOH,GAAP,6FAGMI,kBAHN;AAOA;AACD","sourcesContent":["/**\n * External dependencies\n */\nimport { css } from '@emotion/react';\n\n/* eslint-disable jsdoc/no-undefined-types */\n/**\n * @param {TemplateStringsArray} strings\n * @param {import('@emotion/css/create-instance').CSSInterpolation[]} interpolations\n */\nexport function firefoxOnly( strings, ...interpolations ) {\n\tconst interpolatedStyles = css( strings, ...interpolations );\n\n\treturn css`\n\t\t@-moz-document url-prefix() {\n\t\t\t${ interpolatedStyles };\n\t\t}\n\t`;\n}\n\n/**\n * @param {TemplateStringsArray} strings\n * @param {import('@emotion/css/create-instance').CSSInterpolation[]} interpolations\n */\nexport function safariOnly( strings, ...interpolations ) {\n\tconst interpolatedStyles = css( strings, ...interpolations );\n\n\treturn css`\n\t\t@media not all and ( min-resolution: 0.001dpcm ) {\n\t\t\t@supports ( -webkit-appearance: none ) {\n\t\t\t\t${ interpolatedStyles }\n\t\t\t}\n\t\t}\n\t`;\n}\n/* eslint-enable jsdoc/no-undefined-types */\n"]}
@@ -16,7 +16,9 @@ extend([namesPlugin]);
16
16
  * // rgba(0, 0, 0, 0.5)
17
17
  */
18
18
 
19
- export function rgba(hexValue = '', alpha = 1) {
19
+ export function rgba() {
20
+ let hexValue = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
21
+ let alpha = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;
20
22
  return colord(hexValue).alpha(alpha).toRgbString();
21
23
  }
22
24
  //# sourceMappingURL=colors.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/utils/colors.js"],"names":["colord","extend","namesPlugin","rgba","hexValue","alpha","toRgbString"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,MAAT,EAAiBC,MAAjB,QAA+B,QAA/B;AACA,OAAOC,WAAP,MAAwB,sBAAxB;AAEAD,MAAM,CAAE,CAAEC,WAAF,CAAF,CAAN;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASC,IAAT,CAAeC,QAAQ,GAAG,EAA1B,EAA8BC,KAAK,GAAG,CAAtC,EAA0C;AAChD,SAAOL,MAAM,CAAEI,QAAF,CAAN,CAAmBC,KAAnB,CAA0BA,KAA1B,EAAkCC,WAAlC,EAAP;AACA","sourcesContent":["/**\n * External dependencies\n */\nimport { colord, extend } from 'colord';\nimport namesPlugin from 'colord/plugins/names';\n\nextend( [ namesPlugin ] );\n\n/**\n * Generating a CSS compliant rgba() color value.\n *\n * @param {string} hexValue The hex value to convert to rgba().\n * @param {number} alpha The alpha value for opacity.\n * @return {string} The converted rgba() color value.\n *\n * @example\n * rgba( '#000000', 0.5 )\n * // rgba(0, 0, 0, 0.5)\n */\nexport function rgba( hexValue = '', alpha = 1 ) {\n\treturn colord( hexValue ).alpha( alpha ).toRgbString();\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/utils/colors.js"],"names":["colord","extend","namesPlugin","rgba","hexValue","alpha","toRgbString"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,MAAT,EAAiBC,MAAjB,QAA+B,QAA/B;AACA,OAAOC,WAAP,MAAwB,sBAAxB;AAEAD,MAAM,CAAE,CAAEC,WAAF,CAAF,CAAN;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASC,IAAT,GAA0C;AAAA,MAA3BC,QAA2B,uEAAhB,EAAgB;AAAA,MAAZC,KAAY,uEAAJ,CAAI;AAChD,SAAOL,MAAM,CAAEI,QAAF,CAAN,CAAmBC,KAAnB,CAA0BA,KAA1B,EAAkCC,WAAlC,EAAP;AACA","sourcesContent":["/**\n * External dependencies\n */\nimport { colord, extend } from 'colord';\nimport namesPlugin from 'colord/plugins/names';\n\nextend( [ namesPlugin ] );\n\n/**\n * Generating a CSS compliant rgba() color value.\n *\n * @param {string} hexValue The hex value to convert to rgba().\n * @param {number} alpha The alpha value for opacity.\n * @return {string} The converted rgba() color value.\n *\n * @example\n * rgba( '#000000', 0.5 )\n * // rgba(0, 0, 0, 0.5)\n */\nexport function rgba( hexValue = '', alpha = 1 ) {\n\treturn colord( hexValue ).alpha( alpha ).toRgbString();\n}\n"]}
@@ -1,2 +1,2 @@
1
-
1
+ export {};
2
2
  //# sourceMappingURL=emotion.d.js.map
@@ -1,5 +1,6 @@
1
1
  export { default as useControlledState } from './use-controlled-state';
2
2
  export { default as useUpdateEffect } from './use-update-effect';
3
+ export { useCombinedRef } from './use-combined-ref';
3
4
  export { useControlledValue } from './use-controlled-value';
4
5
  export { useCx } from './use-cx';
5
6
  export { useLatestRef } from './use-latest-ref';
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/utils/hooks/index.js"],"names":["default","useControlledState","useUpdateEffect","useControlledValue","useCx","useLatestRef"],"mappings":"AAAA,SAASA,OAAO,IAAIC,kBAApB,QAA8C,wBAA9C;AACA,SAASD,OAAO,IAAIE,eAApB,QAA2C,qBAA3C;AACA,SAASC,kBAAT,QAAmC,wBAAnC;AACA,SAASC,KAAT,QAAsB,UAAtB;AACA,SAASC,YAAT,QAA6B,kBAA7B","sourcesContent":["export { default as useControlledState } from './use-controlled-state';\nexport { default as useUpdateEffect } from './use-update-effect';\nexport { useControlledValue } from './use-controlled-value';\nexport { useCx } from './use-cx';\nexport { useLatestRef } from './use-latest-ref';\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/utils/hooks/index.js"],"names":["default","useControlledState","useUpdateEffect","useCombinedRef","useControlledValue","useCx","useLatestRef"],"mappings":"AAAA,SAASA,OAAO,IAAIC,kBAApB,QAA8C,wBAA9C;AACA,SAASD,OAAO,IAAIE,eAApB,QAA2C,qBAA3C;AACA,SAASC,cAAT,QAA+B,oBAA/B;AACA,SAASC,kBAAT,QAAmC,wBAAnC;AACA,SAASC,KAAT,QAAsB,UAAtB;AACA,SAASC,YAAT,QAA6B,kBAA7B","sourcesContent":["export { default as useControlledState } from './use-controlled-state';\nexport { default as useUpdateEffect } from './use-update-effect';\nexport { useCombinedRef } from './use-combined-ref';\nexport { useControlledValue } from './use-controlled-value';\nexport { useCx } from './use-cx';\nexport { useLatestRef } from './use-latest-ref';\n"]}