@wordpress/components 21.3.0 → 22.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (612) hide show
  1. package/CHANGELOG.md +65 -1
  2. package/build/angle-picker-control/index.js +1 -1
  3. package/build/angle-picker-control/index.js.map +1 -1
  4. package/build/autocomplete/autocompleter-ui.js +28 -2
  5. package/build/autocomplete/autocompleter-ui.js.map +1 -1
  6. package/build/border-box-control/border-box-control/component.js +63 -15
  7. package/build/border-box-control/border-box-control/component.js.map +1 -1
  8. package/build/border-box-control/border-box-control/hook.js +7 -3
  9. package/build/border-box-control/border-box-control/hook.js.map +1 -1
  10. package/build/border-box-control/border-box-control-linked-button/hook.js +3 -3
  11. package/build/border-box-control/border-box-control-linked-button/hook.js.map +1 -1
  12. package/build/border-box-control/border-box-control-split-controls/component.js +3 -3
  13. package/build/border-box-control/border-box-control-split-controls/component.js.map +1 -1
  14. package/build/border-box-control/border-box-control-split-controls/hook.js +8 -11
  15. package/build/border-box-control/border-box-control-split-controls/hook.js.map +1 -1
  16. package/build/border-box-control/border-box-control-visualizer/hook.js +3 -7
  17. package/build/border-box-control/border-box-control-visualizer/hook.js.map +1 -1
  18. package/build/border-box-control/styles.js +34 -34
  19. package/build/border-box-control/styles.js.map +1 -1
  20. package/build/border-control/border-control/component.js +5 -4
  21. package/build/border-control/border-control/component.js.map +1 -1
  22. package/build/border-control/border-control/hook.js +12 -5
  23. package/build/border-control/border-control/hook.js.map +1 -1
  24. package/build/border-control/border-control-dropdown/hook.js +5 -5
  25. package/build/border-control/border-control-dropdown/hook.js.map +1 -1
  26. package/build/border-control/styles.js +19 -34
  27. package/build/border-control/styles.js.map +1 -1
  28. package/build/box-control/index.js +6 -2
  29. package/build/box-control/index.js.map +1 -1
  30. package/build/circular-option-picker/index.js +14 -14
  31. package/build/circular-option-picker/index.js.map +1 -1
  32. package/build/color-palette/index.js +83 -30
  33. package/build/color-palette/index.js.map +1 -1
  34. package/build/color-palette/styles.js +3 -3
  35. package/build/color-palette/styles.js.map +1 -1
  36. package/build/color-palette/types.js +6 -0
  37. package/build/color-palette/types.js.map +1 -0
  38. package/build/color-picker/input-with-slider.js +1 -1
  39. package/build/color-picker/input-with-slider.js.map +1 -1
  40. package/build/custom-gradient-picker/gradient-bar/index.js +1 -3
  41. package/build/custom-gradient-picker/gradient-bar/index.js.map +1 -1
  42. package/build/custom-select-control/index.js +8 -4
  43. package/build/custom-select-control/index.js.map +1 -1
  44. package/build/date-time/date-time/index.js +2 -0
  45. package/build/date-time/date-time/index.js.map +1 -1
  46. package/build/date-time/time/index.js +4 -4
  47. package/build/date-time/time/index.js.map +1 -1
  48. package/build/disabled/index.js +8 -1
  49. package/build/disabled/index.js.map +1 -1
  50. package/build/external-link/index.js +13 -2
  51. package/build/external-link/index.js.map +1 -1
  52. package/build/focusable-iframe/index.js +0 -1
  53. package/build/focusable-iframe/index.js.map +1 -1
  54. package/build/font-size-picker/index.js +61 -48
  55. package/build/font-size-picker/index.js.map +1 -1
  56. package/build/font-size-picker/utils.js +0 -21
  57. package/build/font-size-picker/utils.js.map +1 -1
  58. package/build/form-file-upload/index.js.map +1 -1
  59. package/build/higher-order/with-filters/index.js +1 -7
  60. package/build/higher-order/with-filters/index.js.map +1 -1
  61. package/build/index.js +7 -1
  62. package/build/index.js.map +1 -1
  63. package/build/input-control/index.js +2 -0
  64. package/build/input-control/index.js.map +1 -1
  65. package/build/input-control/input-base.js +1 -1
  66. package/build/input-control/input-base.js.map +1 -1
  67. package/build/input-control/styles/input-control-styles.js +21 -21
  68. package/build/input-control/styles/input-control-styles.js.map +1 -1
  69. package/build/isolated-event-container/index.js +5 -9
  70. package/build/isolated-event-container/index.js.map +1 -1
  71. package/build/item-group/styles.js +10 -10
  72. package/build/item-group/styles.js.map +1 -1
  73. package/build/navigator/navigator-screen/component.js +20 -14
  74. package/build/navigator/navigator-screen/component.js.map +1 -1
  75. package/build/number-control/index.js +82 -22
  76. package/build/number-control/index.js.map +1 -1
  77. package/build/number-control/styles/number-control-styles.js +36 -6
  78. package/build/number-control/styles/number-control-styles.js.map +1 -1
  79. package/build/popover/index.js +15 -29
  80. package/build/popover/index.js.map +1 -1
  81. package/build/radio-group/index.js +7 -1
  82. package/build/radio-group/index.js.map +1 -1
  83. package/build/{radio → radio-group/radio}/index.js +7 -1
  84. package/build/radio-group/radio/index.js.map +1 -0
  85. package/build/{radio-context → radio-group/radio-context}/index.js +0 -0
  86. package/build/radio-group/radio-context/index.js.map +1 -0
  87. package/build/slot-fill/bubbles-virtually/fill.js +9 -5
  88. package/build/slot-fill/bubbles-virtually/fill.js.map +1 -1
  89. package/build/slot-fill/bubbles-virtually/slot.js +13 -8
  90. package/build/slot-fill/bubbles-virtually/slot.js.map +1 -1
  91. package/build/slot-fill/bubbles-virtually/use-slot.js +15 -9
  92. package/build/slot-fill/bubbles-virtually/use-slot.js.map +1 -1
  93. package/build/slot-fill/fill.js +12 -4
  94. package/build/slot-fill/fill.js.map +1 -1
  95. package/build/slot-fill/use-slot.js +3 -1
  96. package/build/slot-fill/use-slot.js.map +1 -1
  97. package/build/snackbar/index.js +1 -1
  98. package/build/snackbar/index.js.map +1 -1
  99. package/build/tab-panel/index.js +2 -6
  100. package/build/tab-panel/index.js.map +1 -1
  101. package/build/text-control/index.js +0 -2
  102. package/build/text-control/index.js.map +1 -1
  103. package/build/toggle-control/index.js +15 -3
  104. package/build/toggle-control/index.js.map +1 -1
  105. package/build/toggle-group-control/toggle-group-control/as-button-group.js +90 -0
  106. package/build/toggle-group-control/toggle-group-control/as-button-group.js.map +1 -0
  107. package/build/toggle-group-control/toggle-group-control/as-radio-group.js +90 -0
  108. package/build/toggle-group-control/toggle-group-control/as-radio-group.js.map +1 -0
  109. package/build/toggle-group-control/toggle-group-control/component.js +21 -50
  110. package/build/toggle-group-control/toggle-group-control/component.js.map +1 -1
  111. package/build/toggle-group-control/toggle-group-control/styles.js +8 -8
  112. package/build/toggle-group-control/toggle-group-control/styles.js.map +1 -1
  113. package/build/toggle-group-control/toggle-group-control-option-base/component.js +39 -17
  114. package/build/toggle-group-control/toggle-group-control-option-base/component.js.map +1 -1
  115. package/build/toggle-group-control/toggle-group-control-option-base/styles.js +23 -23
  116. package/build/toggle-group-control/toggle-group-control-option-base/styles.js.map +1 -1
  117. package/build/toolbar-dropdown-menu/index.js +1 -1
  118. package/build/toolbar-dropdown-menu/index.js.map +1 -1
  119. package/build/ui/context/context-system-provider.js +9 -22
  120. package/build/ui/context/context-system-provider.js.map +1 -1
  121. package/build/unit-control/index.js +7 -9
  122. package/build/unit-control/index.js.map +1 -1
  123. package/build/unit-control/styles/unit-control-styles.js +15 -25
  124. package/build/unit-control/styles/unit-control-styles.js.map +1 -1
  125. package/build/utils/config-values.js +0 -1
  126. package/build/utils/config-values.js.map +1 -1
  127. package/build/utils/hooks/use-update-effect.js +5 -1
  128. package/build/utils/hooks/use-update-effect.js.map +1 -1
  129. package/build-module/angle-picker-control/index.js +1 -1
  130. package/build-module/angle-picker-control/index.js.map +1 -1
  131. package/build-module/autocomplete/autocompleter-ui.js +29 -3
  132. package/build-module/autocomplete/autocompleter-ui.js.map +1 -1
  133. package/build-module/border-box-control/border-box-control/component.js +61 -13
  134. package/build-module/border-box-control/border-box-control/component.js.map +1 -1
  135. package/build-module/border-box-control/border-box-control/hook.js +7 -3
  136. package/build-module/border-box-control/border-box-control/hook.js.map +1 -1
  137. package/build-module/border-box-control/border-box-control-linked-button/hook.js +3 -3
  138. package/build-module/border-box-control/border-box-control-linked-button/hook.js.map +1 -1
  139. package/build-module/border-box-control/border-box-control-split-controls/component.js +3 -3
  140. package/build-module/border-box-control/border-box-control-split-controls/component.js.map +1 -1
  141. package/build-module/border-box-control/border-box-control-split-controls/hook.js +9 -10
  142. package/build-module/border-box-control/border-box-control-split-controls/hook.js.map +1 -1
  143. package/build-module/border-box-control/border-box-control-visualizer/hook.js +4 -6
  144. package/build-module/border-box-control/border-box-control-visualizer/hook.js.map +1 -1
  145. package/build-module/border-box-control/styles.js +26 -28
  146. package/build-module/border-box-control/styles.js.map +1 -1
  147. package/build-module/border-control/border-control/component.js +5 -4
  148. package/build-module/border-control/border-control/component.js.map +1 -1
  149. package/build-module/border-control/border-control/hook.js +12 -5
  150. package/build-module/border-control/border-control/hook.js.map +1 -1
  151. package/build-module/border-control/border-control-dropdown/hook.js +5 -5
  152. package/build-module/border-control/border-control-dropdown/hook.js.map +1 -1
  153. package/build-module/border-control/styles.js +20 -36
  154. package/build-module/border-control/styles.js.map +1 -1
  155. package/build-module/box-control/index.js +6 -2
  156. package/build-module/box-control/index.js.map +1 -1
  157. package/build-module/circular-option-picker/index.js +14 -14
  158. package/build-module/circular-option-picker/index.js.map +1 -1
  159. package/build-module/color-palette/index.js +81 -28
  160. package/build-module/color-palette/index.js.map +1 -1
  161. package/build-module/color-palette/styles.js +3 -3
  162. package/build-module/color-palette/styles.js.map +1 -1
  163. package/build-module/color-palette/types.js +2 -0
  164. package/build-module/color-palette/types.js.map +1 -0
  165. package/build-module/color-picker/input-with-slider.js +1 -1
  166. package/build-module/color-picker/input-with-slider.js.map +1 -1
  167. package/build-module/custom-gradient-picker/gradient-bar/index.js +1 -2
  168. package/build-module/custom-gradient-picker/gradient-bar/index.js.map +1 -1
  169. package/build-module/custom-select-control/index.js +8 -4
  170. package/build-module/custom-select-control/index.js.map +1 -1
  171. package/build-module/date-time/date-time/index.js +2 -0
  172. package/build-module/date-time/date-time/index.js.map +1 -1
  173. package/build-module/date-time/time/index.js +4 -4
  174. package/build-module/date-time/time/index.js.map +1 -1
  175. package/build-module/disabled/index.js +8 -1
  176. package/build-module/disabled/index.js.map +1 -1
  177. package/build-module/external-link/index.js +13 -2
  178. package/build-module/external-link/index.js.map +1 -1
  179. package/build-module/focusable-iframe/index.js +0 -1
  180. package/build-module/focusable-iframe/index.js.map +1 -1
  181. package/build-module/font-size-picker/index.js +65 -50
  182. package/build-module/font-size-picker/index.js.map +1 -1
  183. package/build-module/font-size-picker/utils.js +0 -19
  184. package/build-module/font-size-picker/utils.js.map +1 -1
  185. package/build-module/form-file-upload/index.js.map +1 -1
  186. package/build-module/higher-order/with-filters/index.js +1 -6
  187. package/build-module/higher-order/with-filters/index.js.map +1 -1
  188. package/build-module/index.js +2 -2
  189. package/build-module/index.js.map +1 -1
  190. package/build-module/input-control/index.js +2 -0
  191. package/build-module/input-control/index.js.map +1 -1
  192. package/build-module/input-control/input-base.js +1 -1
  193. package/build-module/input-control/input-base.js.map +1 -1
  194. package/build-module/input-control/styles/input-control-styles.js +21 -21
  195. package/build-module/input-control/styles/input-control-styles.js.map +1 -1
  196. package/build-module/isolated-event-container/index.js +7 -9
  197. package/build-module/isolated-event-container/index.js.map +1 -1
  198. package/build-module/item-group/styles.js +10 -10
  199. package/build-module/item-group/styles.js.map +1 -1
  200. package/build-module/navigator/navigator-screen/component.js +20 -4
  201. package/build-module/navigator/navigator-screen/component.js.map +1 -1
  202. package/build-module/number-control/index.js +81 -26
  203. package/build-module/number-control/index.js.map +1 -1
  204. package/build-module/number-control/styles/number-control-styles.js +30 -4
  205. package/build-module/number-control/styles/number-control-styles.js.map +1 -1
  206. package/build-module/popover/index.js +15 -29
  207. package/build-module/popover/index.js.map +1 -1
  208. package/build-module/radio-group/index.js +6 -1
  209. package/build-module/radio-group/index.js.map +1 -1
  210. package/build-module/{radio → radio-group/radio}/index.js +6 -1
  211. package/build-module/radio-group/radio/index.js.map +1 -0
  212. package/build-module/{radio-context → radio-group/radio-context}/index.js +0 -0
  213. package/build-module/radio-group/radio-context/index.js.map +1 -0
  214. package/build-module/slot-fill/bubbles-virtually/fill.js +9 -5
  215. package/build-module/slot-fill/bubbles-virtually/fill.js.map +1 -1
  216. package/build-module/slot-fill/bubbles-virtually/slot.js +13 -8
  217. package/build-module/slot-fill/bubbles-virtually/slot.js.map +1 -1
  218. package/build-module/slot-fill/bubbles-virtually/use-slot.js +15 -9
  219. package/build-module/slot-fill/bubbles-virtually/use-slot.js.map +1 -1
  220. package/build-module/slot-fill/fill.js +12 -4
  221. package/build-module/slot-fill/fill.js.map +1 -1
  222. package/build-module/slot-fill/use-slot.js +3 -1
  223. package/build-module/slot-fill/use-slot.js.map +1 -1
  224. package/build-module/snackbar/index.js +1 -1
  225. package/build-module/snackbar/index.js.map +1 -1
  226. package/build-module/tab-panel/index.js +2 -6
  227. package/build-module/tab-panel/index.js.map +1 -1
  228. package/build-module/text-control/index.js +0 -2
  229. package/build-module/text-control/index.js.map +1 -1
  230. package/build-module/toggle-control/index.js +15 -3
  231. package/build-module/toggle-control/index.js.map +1 -1
  232. package/build-module/toggle-group-control/toggle-group-control/as-button-group.js +76 -0
  233. package/build-module/toggle-group-control/toggle-group-control/as-button-group.js.map +1 -0
  234. package/build-module/toggle-group-control/toggle-group-control/as-radio-group.js +75 -0
  235. package/build-module/toggle-group-control/toggle-group-control/as-radio-group.js.map +1 -0
  236. package/build-module/toggle-group-control/toggle-group-control/component.js +19 -49
  237. package/build-module/toggle-group-control/toggle-group-control/component.js.map +1 -1
  238. package/build-module/toggle-group-control/toggle-group-control/styles.js +7 -6
  239. package/build-module/toggle-group-control/toggle-group-control/styles.js.map +1 -1
  240. package/build-module/toggle-group-control/toggle-group-control-option-base/component.js +39 -17
  241. package/build-module/toggle-group-control/toggle-group-control-option-base/component.js.map +1 -1
  242. package/build-module/toggle-group-control/toggle-group-control-option-base/styles.js +21 -18
  243. package/build-module/toggle-group-control/toggle-group-control-option-base/styles.js.map +1 -1
  244. package/build-module/toolbar-dropdown-menu/index.js +1 -1
  245. package/build-module/toolbar-dropdown-menu/index.js.map +1 -1
  246. package/build-module/ui/context/context-system-provider.js +6 -20
  247. package/build-module/ui/context/context-system-provider.js.map +1 -1
  248. package/build-module/unit-control/index.js +8 -10
  249. package/build-module/unit-control/index.js.map +1 -1
  250. package/build-module/unit-control/styles/unit-control-styles.js +8 -24
  251. package/build-module/unit-control/styles/unit-control-styles.js.map +1 -1
  252. package/build-module/utils/config-values.js +0 -1
  253. package/build-module/utils/config-values.js.map +1 -1
  254. package/build-module/utils/hooks/use-update-effect.js +5 -1
  255. package/build-module/utils/hooks/use-update-effect.js.map +1 -1
  256. package/build-style/style-rtl.css +21 -41
  257. package/build-style/style.css +19 -39
  258. package/build-types/base-field/hook.d.ts +11 -11
  259. package/build-types/border-box-control/border-box-control/component.d.ts +53 -4
  260. package/build-types/border-box-control/border-box-control/component.d.ts.map +1 -1
  261. package/build-types/border-box-control/border-box-control/hook.d.ts +13 -12
  262. package/build-types/border-box-control/border-box-control/hook.d.ts.map +1 -1
  263. package/build-types/border-box-control/border-box-control-linked-button/hook.d.ts +12 -12
  264. package/build-types/border-box-control/border-box-control-linked-button/hook.d.ts.map +1 -1
  265. package/build-types/border-box-control/border-box-control-split-controls/component.d.ts +1 -1
  266. package/build-types/border-box-control/border-box-control-split-controls/component.d.ts.map +1 -1
  267. package/build-types/border-box-control/border-box-control-split-controls/hook.d.ts +12 -12
  268. package/build-types/border-box-control/border-box-control-split-controls/hook.d.ts.map +1 -1
  269. package/build-types/border-box-control/border-box-control-visualizer/hook.d.ts +12 -12
  270. package/build-types/border-box-control/border-box-control-visualizer/hook.d.ts.map +1 -1
  271. package/build-types/border-box-control/stories/index.d.ts +17 -0
  272. package/build-types/border-box-control/stories/index.d.ts.map +1 -0
  273. package/build-types/border-box-control/styles.d.ts +7 -6
  274. package/build-types/border-box-control/styles.d.ts.map +1 -1
  275. package/build-types/border-box-control/types.d.ts +12 -16
  276. package/build-types/border-box-control/types.d.ts.map +1 -1
  277. package/build-types/border-control/border-control/component.d.ts +1 -1
  278. package/build-types/border-control/border-control/component.d.ts.map +1 -1
  279. package/build-types/border-control/border-control/hook.d.ts +13 -13
  280. package/build-types/border-control/border-control/hook.d.ts.map +1 -1
  281. package/build-types/border-control/border-control-dropdown/component.d.ts +1 -1
  282. package/build-types/border-control/border-control-dropdown/hook.d.ts +11 -11
  283. package/build-types/border-control/border-control-dropdown/hook.d.ts.map +1 -1
  284. package/build-types/border-control/border-control-style-picker/hook.d.ts +11 -11
  285. package/build-types/border-control/stories/index.d.ts +6 -6
  286. package/build-types/border-control/stories/index.d.ts.map +1 -1
  287. package/build-types/border-control/styles.d.ts +3 -3
  288. package/build-types/border-control/styles.d.ts.map +1 -1
  289. package/build-types/border-control/types.d.ts +7 -9
  290. package/build-types/border-control/types.d.ts.map +1 -1
  291. package/build-types/card/card/hook.d.ts +12 -12
  292. package/build-types/card/card-body/hook.d.ts +12 -12
  293. package/build-types/card/card-divider/hook.d.ts +13 -13
  294. package/build-types/card/card-footer/hook.d.ts +12 -12
  295. package/build-types/card/card-header/hook.d.ts +12 -12
  296. package/build-types/card/card-media/hook.d.ts +12 -12
  297. package/build-types/card/stories/index.d.ts.map +1 -1
  298. package/build-types/circular-option-picker/index.d.ts +4 -24
  299. package/build-types/circular-option-picker/index.d.ts.map +1 -1
  300. package/build-types/color-palette/index.d.ts +33 -18
  301. package/build-types/color-palette/index.d.ts.map +1 -1
  302. package/build-types/color-palette/stories/index.d.ts +21 -0
  303. package/build-types/color-palette/stories/index.d.ts.map +1 -0
  304. package/build-types/color-palette/styles.d.ts +3 -2
  305. package/build-types/color-palette/styles.d.ts.map +1 -1
  306. package/build-types/color-palette/test/index.d.ts +2 -0
  307. package/build-types/color-palette/test/index.d.ts.map +1 -0
  308. package/build-types/color-palette/types.d.ts +86 -0
  309. package/build-types/color-palette/types.d.ts.map +1 -0
  310. package/build-types/color-picker/styles.d.ts +5 -4
  311. package/build-types/color-picker/styles.d.ts.map +1 -1
  312. package/build-types/confirm-dialog/component.d.ts +4 -4
  313. package/build-types/custom-select-control/index.d.ts +1 -12
  314. package/build-types/custom-select-control/index.d.ts.map +1 -1
  315. package/build-types/custom-select-control/styles.d.ts +3 -1
  316. package/build-types/custom-select-control/styles.d.ts.map +1 -1
  317. package/build-types/date-time/date/styles.d.ts +3 -3
  318. package/build-types/date-time/date-time/index.d.ts +2 -0
  319. package/build-types/date-time/date-time/index.d.ts.map +1 -1
  320. package/build-types/date-time/date-time/styles.d.ts +3 -3
  321. package/build-types/date-time/stories/date-time.d.ts.map +1 -1
  322. package/build-types/date-time/time/styles.d.ts +8 -4
  323. package/build-types/date-time/time/styles.d.ts.map +1 -1
  324. package/build-types/disabled/index.d.ts +8 -1
  325. package/build-types/disabled/index.d.ts.map +1 -1
  326. package/build-types/elevation/hook.d.ts +12 -12
  327. package/build-types/external-link/index.d.ts.map +1 -1
  328. package/build-types/external-link/styles/external-link-styles.d.ts +1 -1
  329. package/build-types/external-link/test/index.d.ts +2 -0
  330. package/build-types/external-link/test/index.d.ts.map +1 -0
  331. package/build-types/flex/flex/hook.d.ts +12 -12
  332. package/build-types/flex/flex-block/hook.d.ts +12 -12
  333. package/build-types/flex/flex-item/hook.d.ts +12 -12
  334. package/build-types/focal-point-picker/styles/focal-point-picker-style.d.ts +2 -2
  335. package/build-types/focal-point-picker/styles/focal-point-style.d.ts +3 -3
  336. package/build-types/focusable-iframe/index.d.ts.map +1 -1
  337. package/build-types/font-size-picker/index.d.ts.map +1 -1
  338. package/build-types/font-size-picker/types.d.ts +1 -1
  339. package/build-types/font-size-picker/utils.d.ts +0 -8
  340. package/build-types/font-size-picker/utils.d.ts.map +1 -1
  341. package/build-types/form-file-upload/index.d.ts.map +1 -1
  342. package/build-types/form-file-upload/types.d.ts +5 -4
  343. package/build-types/form-file-upload/types.d.ts.map +1 -1
  344. package/build-types/grid/hook.d.ts +12 -12
  345. package/build-types/h-stack/component.d.ts +1 -1
  346. package/build-types/h-stack/hook.d.ts +12 -12
  347. package/build-types/heading/hook.d.ts +12 -12
  348. package/build-types/input-control/index.d.ts +1 -1
  349. package/build-types/input-control/index.d.ts.map +1 -1
  350. package/build-types/input-control/input-base.d.ts +5 -2
  351. package/build-types/input-control/input-base.d.ts.map +1 -1
  352. package/build-types/input-control/styles/input-control-styles.d.ts.map +1 -1
  353. package/build-types/input-control/types.d.ts +3 -8
  354. package/build-types/input-control/types.d.ts.map +1 -1
  355. package/build-types/input-control/utils.d.ts +1 -1
  356. package/build-types/isolated-event-container/index.d.ts +3 -2
  357. package/build-types/isolated-event-container/index.d.ts.map +1 -1
  358. package/build-types/item-group/item/hook.d.ts +13 -13
  359. package/build-types/item-group/item-group/hook.d.ts +13 -13
  360. package/build-types/navigator/navigator-back-button/hook.d.ts +13 -13
  361. package/build-types/navigator/navigator-button/hook.d.ts +13 -13
  362. package/build-types/navigator/navigator-screen/component.d.ts.map +1 -1
  363. package/build-types/number-control/index.d.ts +2 -4
  364. package/build-types/number-control/index.d.ts.map +1 -1
  365. package/build-types/number-control/styles/number-control-styles.d.ts +5 -0
  366. package/build-types/number-control/styles/number-control-styles.d.ts.map +1 -1
  367. package/build-types/number-control/types.d.ts +12 -0
  368. package/build-types/number-control/types.d.ts.map +1 -1
  369. package/build-types/popover/index.d.ts +1 -1
  370. package/build-types/popover/index.d.ts.map +1 -1
  371. package/build-types/popover/stories/e2e/index.d.ts +1 -1
  372. package/build-types/popover/stories/index.d.ts +2 -0
  373. package/build-types/popover/stories/index.d.ts.map +1 -1
  374. package/build-types/popover/types.d.ts +18 -14
  375. package/build-types/popover/types.d.ts.map +1 -1
  376. package/build-types/radio-group/index.d.ts +10 -0
  377. package/build-types/radio-group/index.d.ts.map +1 -0
  378. package/build-types/radio-group/radio/index.d.ts +7 -0
  379. package/build-types/radio-group/radio/index.d.ts.map +1 -0
  380. package/build-types/{radio-context → radio-group/radio-context}/index.d.ts +0 -0
  381. package/build-types/radio-group/radio-context/index.d.ts.map +1 -0
  382. package/build-types/range-control/index.d.ts +1 -1
  383. package/build-types/range-control/styles/range-control-styles.d.ts +2 -1
  384. package/build-types/range-control/styles/range-control-styles.d.ts.map +1 -1
  385. package/build-types/resizable-box/index.d.ts +1 -1
  386. package/build-types/resizable-box/resize-tooltip/index.d.ts +1 -1
  387. package/build-types/resizable-box/resize-tooltip/label.d.ts +1 -1
  388. package/build-types/scrollable/hook.d.ts +12 -12
  389. package/build-types/search-control/index.d.ts +2 -2
  390. package/build-types/search-control/stories/index.d.ts +4 -4
  391. package/build-types/select-control/stories/index.d.ts.map +1 -1
  392. package/build-types/slot-fill/bubbles-virtually/use-slot.d.ts.map +1 -1
  393. package/build-types/slot-fill/fill.d.ts.map +1 -1
  394. package/build-types/slot-fill/use-slot.d.ts.map +1 -1
  395. package/build-types/spacer/hook.d.ts +12 -12
  396. package/build-types/spinner/index.d.ts +1 -1
  397. package/build-types/surface/hook.d.ts +12 -12
  398. package/build-types/tab-panel/index.d.ts.map +1 -1
  399. package/build-types/text/hook.d.ts +12 -12
  400. package/build-types/text-control/index.d.ts +2 -4
  401. package/build-types/text-control/index.d.ts.map +1 -1
  402. package/build-types/text-control/stories/index.d.ts.map +1 -1
  403. package/build-types/toggle-control/index.d.ts.map +1 -1
  404. package/build-types/toggle-control/types.d.ts +2 -1
  405. package/build-types/toggle-control/types.d.ts.map +1 -1
  406. package/build-types/toggle-group-control/stories/index.d.ts +2 -2
  407. package/build-types/toggle-group-control/stories/index.d.ts.map +1 -1
  408. package/build-types/toggle-group-control/toggle-group-control/as-button-group.d.ts +6 -0
  409. package/build-types/toggle-group-control/toggle-group-control/as-button-group.d.ts.map +1 -0
  410. package/build-types/toggle-group-control/toggle-group-control/as-radio-group.d.ts +6 -0
  411. package/build-types/toggle-group-control/toggle-group-control/as-radio-group.d.ts.map +1 -0
  412. package/build-types/toggle-group-control/toggle-group-control/component.d.ts +2 -2
  413. package/build-types/toggle-group-control/toggle-group-control/component.d.ts.map +1 -1
  414. package/build-types/toggle-group-control/toggle-group-control/styles.d.ts +2 -2
  415. package/build-types/toggle-group-control/toggle-group-control/styles.d.ts.map +1 -1
  416. package/build-types/toggle-group-control/toggle-group-control-option-base/component.d.ts.map +1 -1
  417. package/build-types/toggle-group-control/toggle-group-control-option-base/styles.d.ts +4 -7
  418. package/build-types/toggle-group-control/toggle-group-control-option-base/styles.d.ts.map +1 -1
  419. package/build-types/toggle-group-control/toggle-group-control-option-icon/component.d.ts +1 -1
  420. package/build-types/toggle-group-control/types.d.ts +19 -14
  421. package/build-types/toggle-group-control/types.d.ts.map +1 -1
  422. package/build-types/tools-panel/tools-panel/hook.d.ts +12 -12
  423. package/build-types/tools-panel/tools-panel-header/hook.d.ts +12 -12
  424. package/build-types/tools-panel/tools-panel-item/hook.d.ts +12 -12
  425. package/build-types/truncate/hook.d.ts +12 -12
  426. package/build-types/ui/context/context-system-provider.d.ts.map +1 -1
  427. package/build-types/ui/control-group/hook.d.ts +12 -12
  428. package/build-types/ui/control-label/component.d.ts +1 -1
  429. package/build-types/ui/control-label/hook.d.ts +12 -12
  430. package/build-types/ui/form-group/form-group.d.ts +4 -4
  431. package/build-types/ui/form-group/use-form-group.d.ts +28 -28
  432. package/build-types/unit-control/index.d.ts +2 -2
  433. package/build-types/unit-control/index.d.ts.map +1 -1
  434. package/build-types/unit-control/styles/unit-control-styles.d.ts +2 -5
  435. package/build-types/unit-control/styles/unit-control-styles.d.ts.map +1 -1
  436. package/build-types/unit-control/types.d.ts +3 -3
  437. package/build-types/unit-control/types.d.ts.map +1 -1
  438. package/build-types/utils/config-values.d.ts +0 -1
  439. package/build-types/utils/hooks/use-update-effect.d.ts.map +1 -1
  440. package/build-types/utils/types.d.ts +0 -14
  441. package/build-types/utils/types.d.ts.map +1 -1
  442. package/build-types/v-stack/component.d.ts +2 -2
  443. package/build-types/v-stack/hook.d.ts +12 -12
  444. package/build-types/v-stack/stories/index.d.ts +2 -2
  445. package/package.json +17 -17
  446. package/src/angle-picker-control/index.js +1 -1
  447. package/src/angle-picker-control/stories/index.js +3 -0
  448. package/src/autocomplete/autocompleter-ui.js +29 -2
  449. package/src/autocomplete/test/index.js +89 -0
  450. package/src/border-box-control/border-box-control/README.md +8 -0
  451. package/src/border-box-control/border-box-control/component.tsx +64 -13
  452. package/src/border-box-control/border-box-control/hook.ts +7 -2
  453. package/src/border-box-control/border-box-control-linked-button/hook.ts +3 -6
  454. package/src/border-box-control/border-box-control-split-controls/component.tsx +3 -6
  455. package/src/border-box-control/border-box-control-split-controls/hook.ts +11 -14
  456. package/src/border-box-control/border-box-control-visualizer/hook.ts +4 -7
  457. package/src/border-box-control/stories/index.tsx +90 -0
  458. package/src/border-box-control/styles.ts +28 -22
  459. package/src/border-box-control/test/index.js +287 -122
  460. package/src/border-box-control/types.ts +12 -16
  461. package/src/border-control/border-control/README.md +8 -0
  462. package/src/border-control/border-control/component.tsx +4 -3
  463. package/src/border-control/border-control/hook.ts +10 -6
  464. package/src/border-control/border-control-dropdown/hook.ts +5 -7
  465. package/src/border-control/stories/index.tsx +12 -14
  466. package/src/border-control/styles.ts +20 -23
  467. package/src/border-control/test/index.js +139 -96
  468. package/src/border-control/types.ts +7 -9
  469. package/src/box-control/README.md +14 -0
  470. package/src/box-control/index.js +4 -0
  471. package/src/box-control/stories/index.js +8 -27
  472. package/src/button/README.md +2 -15
  473. package/src/button/stories/index.js +109 -178
  474. package/src/button/style.scss +17 -54
  475. package/src/card/stories/index.tsx +27 -31
  476. package/src/card/test/__snapshots__/index.tsx.snap +36 -35
  477. package/src/card/test/index.tsx +2 -6
  478. package/src/circular-option-picker/index.js +14 -20
  479. package/src/color-palette/README.md +51 -49
  480. package/src/color-palette/{index.js → index.tsx} +132 -51
  481. package/src/color-palette/stories/{index.js → index.tsx} +38 -27
  482. package/src/color-palette/style.scss +2 -2
  483. package/src/color-palette/{styles.js → styles.ts} +0 -0
  484. package/src/color-palette/test/__snapshots__/{index.js.snap → index.tsx.snap} +0 -0
  485. package/src/color-palette/test/{index.js → index.tsx} +1 -1
  486. package/src/color-palette/types.ts +93 -0
  487. package/src/color-picker/input-with-slider.tsx +1 -1
  488. package/src/custom-gradient-picker/gradient-bar/index.js +1 -3
  489. package/src/custom-select-control/README.md +14 -0
  490. package/src/custom-select-control/index.js +22 -15
  491. package/src/date-time/date-time/index.tsx +2 -0
  492. package/src/date-time/stories/date-time.tsx +4 -0
  493. package/src/date-time/time/index.tsx +4 -4
  494. package/src/dimension-control/test/__snapshots__/index.test.js.snap +4 -0
  495. package/src/disabled/README.md +2 -0
  496. package/src/disabled/index.tsx +8 -1
  497. package/src/disabled/test/index.tsx +0 -5
  498. package/src/external-link/index.tsx +14 -6
  499. package/src/external-link/test/index.tsx +106 -0
  500. package/src/focusable-iframe/index.js +0 -1
  501. package/src/font-size-picker/README.md +3 -3
  502. package/src/font-size-picker/index.tsx +152 -142
  503. package/src/font-size-picker/test/index.tsx +447 -174
  504. package/src/font-size-picker/test/utils.ts +1 -45
  505. package/src/font-size-picker/types.ts +1 -1
  506. package/src/font-size-picker/utils.ts +0 -22
  507. package/src/form-file-upload/README.md +1 -3
  508. package/src/form-file-upload/index.tsx +1 -0
  509. package/src/form-file-upload/types.ts +5 -4
  510. package/src/form-toggle/test/__snapshots__/index.tsx.snap +15 -13
  511. package/src/form-toggle/test/index.tsx +1 -1
  512. package/src/h-stack/test/__snapshots__/index.tsx.snap +36 -30
  513. package/src/h-stack/test/index.tsx +3 -3
  514. package/src/higher-order/with-filters/index.js +4 -9
  515. package/src/index.js +2 -1
  516. package/src/input-control/index.tsx +2 -0
  517. package/src/input-control/input-base.tsx +3 -3
  518. package/src/input-control/styles/input-control-styles.tsx +1 -0
  519. package/src/input-control/types.ts +4 -11
  520. package/src/isolated-event-container/index.tsx +32 -0
  521. package/src/item-group/styles.ts +1 -1
  522. package/src/item-group/test/__snapshots__/index.js.snap +90 -85
  523. package/src/item-group/test/index.js +7 -17
  524. package/src/navigator/navigator-screen/component.tsx +20 -3
  525. package/src/number-control/README.md +9 -4
  526. package/src/number-control/index.tsx +100 -33
  527. package/src/number-control/styles/number-control-styles.js +26 -1
  528. package/src/number-control/test/index.js +50 -0
  529. package/src/number-control/types.ts +12 -0
  530. package/src/popover/README.md +12 -7
  531. package/src/popover/index.tsx +20 -30
  532. package/src/popover/stories/index.tsx +29 -1
  533. package/src/popover/style.scss +9 -0
  534. package/src/popover/types.ts +18 -15
  535. package/src/radio-group/README.md +4 -0
  536. package/src/radio-group/index.js +6 -1
  537. package/src/{radio → radio-group/radio}/index.js +6 -1
  538. package/src/{radio-context → radio-group/radio-context}/index.js +0 -0
  539. package/src/radio-group/stories/index.js +11 -2
  540. package/src/sandbox/test/index.js +2 -2
  541. package/src/select-control/stories/index.tsx +9 -4
  542. package/src/slot-fill/bubbles-virtually/fill.js +5 -5
  543. package/src/slot-fill/bubbles-virtually/slot.js +10 -8
  544. package/src/slot-fill/bubbles-virtually/use-slot.js +15 -9
  545. package/src/slot-fill/fill.js +12 -2
  546. package/src/slot-fill/use-slot.js +3 -0
  547. package/src/snackbar/index.js +1 -1
  548. package/src/surface/test/__snapshots__/index.tsx.snap +58 -46
  549. package/src/surface/test/index.tsx +6 -16
  550. package/src/tab-panel/index.tsx +2 -3
  551. package/src/tab-panel/test/index.tsx +78 -1
  552. package/src/text/test/__snapshots__/index.tsx.snap +19 -15
  553. package/src/text/test/index.tsx +2 -2
  554. package/src/text-control/index.tsx +0 -2
  555. package/src/text-control/stories/index.tsx +5 -6
  556. package/src/toggle-control/README.md +6 -4
  557. package/src/toggle-control/index.tsx +13 -2
  558. package/src/toggle-control/types.ts +2 -4
  559. package/src/toggle-group-control/stories/index.tsx +4 -4
  560. package/src/toggle-group-control/test/__snapshots__/index.tsx.snap +219 -160
  561. package/src/toggle-group-control/test/index.tsx +129 -2
  562. package/src/toggle-group-control/toggle-group-control/as-button-group.tsx +103 -0
  563. package/src/toggle-group-control/toggle-group-control/as-radio-group.tsx +99 -0
  564. package/src/toggle-group-control/toggle-group-control/component.tsx +29 -74
  565. package/src/toggle-group-control/toggle-group-control/styles.ts +12 -10
  566. package/src/toggle-group-control/toggle-group-control-option-base/component.tsx +49 -25
  567. package/src/toggle-group-control/toggle-group-control-option-base/styles.ts +39 -19
  568. package/src/toggle-group-control/types.ts +75 -63
  569. package/src/toolbar-dropdown-menu/index.js +1 -1
  570. package/src/tools-panel/stories/index.js +0 -1
  571. package/src/tools-panel/stories/tools-panel-with-item-group-slot.js +0 -1
  572. package/src/tree-grid/test/__snapshots__/cell.js.snap +20 -18
  573. package/src/tree-grid/test/__snapshots__/roving-tab-index.js.snap +3 -1
  574. package/src/tree-grid/test/__snapshots__/row.js.snap +33 -29
  575. package/src/tree-grid/test/cell.js +1 -1
  576. package/src/tree-grid/test/roving-tab-index.js +1 -1
  577. package/src/tree-grid/test/row.js +2 -2
  578. package/src/ui/context/context-system-provider.js +5 -18
  579. package/src/ui/context/test/__snapshots__/context-system-provider.js.snap +23 -17
  580. package/src/ui/context/test/context-system-provider.js +3 -3
  581. package/src/ui/control-group/test/__snapshots__/index.js.snap +18 -16
  582. package/src/ui/control-group/test/index.js +1 -1
  583. package/src/ui/control-label/test/__snapshots__/index.js.snap +27 -21
  584. package/src/ui/control-label/test/index.js +3 -3
  585. package/src/ui/form-group/test/__snapshots__/index.js.snap +34 -30
  586. package/src/ui/form-group/test/index.js +2 -2
  587. package/src/ui/shortcut/test/__snapshots__/index.js.snap +1 -1
  588. package/src/ui/shortcut/test/index.js +1 -1
  589. package/src/ui/spinner/test/__snapshots__/index.js.snap +75 -73
  590. package/src/ui/spinner/test/index.js +3 -7
  591. package/src/unit-control/index.tsx +29 -30
  592. package/src/unit-control/styles/unit-control-styles.ts +6 -12
  593. package/src/unit-control/test/utils.ts +43 -0
  594. package/src/unit-control/types.ts +5 -6
  595. package/src/utils/config-values.js +0 -1
  596. package/src/utils/hooks/use-update-effect.js +5 -1
  597. package/src/utils/types.ts +0 -15
  598. package/src/v-stack/test/__snapshots__/index.tsx.snap +36 -30
  599. package/src/v-stack/test/index.tsx +3 -3
  600. package/src/view/test/__snapshots__/index.js.snap +34 -24
  601. package/src/view/test/index.js +5 -5
  602. package/tsconfig.json +0 -2
  603. package/tsconfig.tsbuildinfo +1 -1
  604. package/build/radio/index.js.map +0 -1
  605. package/build/radio-context/index.js.map +0 -1
  606. package/build-module/radio/index.js.map +0 -1
  607. package/build-module/radio-context/index.js.map +0 -1
  608. package/build-types/radio-context/index.d.ts.map +0 -1
  609. package/src/border-box-control/stories/index.js +0 -106
  610. package/src/form-file-upload/stories/index.js +0 -51
  611. package/src/isolated-event-container/index.js +0 -28
  612. package/src/radio/stories/index.js +0 -20
@@ -38,23 +38,25 @@ exports[`props should render alignLabel 1`] = `
38
38
  }
39
39
  }
40
40
 
41
- <div
42
- class="components-form-group emotion-0 emotion-1"
43
- data-wp-c16t="true"
44
- data-wp-component="FormGroup"
45
- >
46
- <label
47
- class="components-truncate components-text components-control-label emotion-2 emotion-1"
41
+ <div>
42
+ <div
43
+ class="components-form-group emotion-0 emotion-1"
48
44
  data-wp-c16t="true"
49
- data-wp-component="ControlLabel"
50
- for="fname"
45
+ data-wp-component="FormGroup"
51
46
  >
52
- First name
53
- </label>
54
- <input
55
- id="fname"
56
- type="text"
57
- />
47
+ <label
48
+ class="components-truncate components-text components-control-label emotion-2 emotion-1"
49
+ data-wp-c16t="true"
50
+ data-wp-component="ControlLabel"
51
+ for="fname"
52
+ >
53
+ First name
54
+ </label>
55
+ <input
56
+ id="fname"
57
+ type="text"
58
+ />
59
+ </div>
58
60
  </div>
59
61
  `;
60
62
 
@@ -96,22 +98,24 @@ exports[`props should render vertically 1`] = `
96
98
  }
97
99
  }
98
100
 
99
- <div
100
- class="components-form-group emotion-0 emotion-1"
101
- data-wp-c16t="true"
102
- data-wp-component="FormGroup"
103
- >
104
- <label
105
- class="components-truncate components-text components-control-label emotion-2 emotion-1"
101
+ <div>
102
+ <div
103
+ class="components-form-group emotion-0 emotion-1"
106
104
  data-wp-c16t="true"
107
- data-wp-component="ControlLabel"
108
- for="fname"
105
+ data-wp-component="FormGroup"
109
106
  >
110
- First name
111
- </label>
112
- <input
113
- id="fname"
114
- type="text"
115
- />
107
+ <label
108
+ class="components-truncate components-text components-control-label emotion-2 emotion-1"
109
+ data-wp-c16t="true"
110
+ data-wp-component="ControlLabel"
111
+ for="fname"
112
+ >
113
+ First name
114
+ </label>
115
+ <input
116
+ id="fname"
117
+ type="text"
118
+ />
119
+ </div>
116
120
  </div>
117
121
  `;
@@ -67,7 +67,7 @@ describe( 'props', () => {
67
67
  </FormGroup>
68
68
  );
69
69
 
70
- expect( container.firstChild ).toMatchSnapshot();
70
+ expect( container ).toMatchSnapshot();
71
71
  } );
72
72
 
73
73
  test( 'should render vertically', () => {
@@ -77,7 +77,7 @@ describe( 'props', () => {
77
77
  </FormGroup>
78
78
  );
79
79
 
80
- expect( container.firstChild ).toMatchSnapshot();
80
+ expect( container ).toMatchSnapshot();
81
81
  } );
82
82
  } );
83
83
  /* eslint-enable no-restricted-syntax */
@@ -10,4 +10,4 @@ exports[`Shortcut should render a span with the shortcut text 1`] = `
10
10
  </span>
11
11
  `;
12
12
 
13
- exports[`Shortcut should render null when no shortcut is provided 1`] = `null`;
13
+ exports[`Shortcut should render null when no shortcut is provided 1`] = `<div />`;
@@ -11,7 +11,7 @@ import { Shortcut } from '..';
11
11
  describe( 'Shortcut', () => {
12
12
  it( 'should render null when no shortcut is provided', () => {
13
13
  const { container } = render( <Shortcut /> );
14
- expect( container.firstChild ).toMatchSnapshot();
14
+ expect( container ).toMatchSnapshot();
15
15
  } );
16
16
 
17
17
  it( 'should render a span with the shortcut text', () => {
@@ -5,19 +5,19 @@ Snapshot Diff:
5
5
  - First value
6
6
  + Second value
7
7
 
8
- @@ -10,11 +10,11 @@
9
- class="css-1rq9ofd-BarsWrapperView e1s9yo7h1"
10
- style="transform: scale(0.4444444444444444);"
11
- >
12
- <div
13
- class="css-tada40-BarsView e1s9yo7h0"
14
- - style="color: blue;"
15
- + style="color: rgb(30, 30, 30);"
8
+ @@ -11,11 +11,11 @@
9
+ class="css-1rq9ofd-BarsWrapperView e1s9yo7h1"
10
+ style="transform: scale(0.4444444444444444);"
16
11
  >
17
12
  <div
18
- class="InnerBar1"
19
- />
20
- <div
13
+ class="css-tada40-BarsView e1s9yo7h0"
14
+ - style="color: blue;"
15
+ + style="color: rgb(30, 30, 30);"
16
+ >
17
+ <div
18
+ class="InnerBar1"
19
+ />
20
+ <div
21
21
  `;
22
22
 
23
23
  exports[`props should render correctly 1`] = `
@@ -179,58 +179,60 @@ exports[`props should render correctly 1`] = `
179
179
  transform: rotate( 330deg ) translate( 0, -130% );
180
180
  }
181
181
 
182
- <div
183
- aria-busy="true"
184
- class="components-spinner emotion-0 emotion-1"
185
- data-wp-c16t="true"
186
- data-wp-component="Spinner"
187
- style="height: 16px; width: 16px;"
188
- >
182
+ <div>
189
183
  <div
190
- aria-hidden="true"
191
- class="emotion-2 emotion-3"
192
- style="transform: scale(0.4444444444444444);"
184
+ aria-busy="true"
185
+ class="components-spinner emotion-0 emotion-1"
186
+ data-wp-c16t="true"
187
+ data-wp-component="Spinner"
188
+ style="height: 16px; width: 16px;"
193
189
  >
194
190
  <div
195
- class="emotion-4 emotion-5"
196
- style="color: rgb(30, 30, 30);"
191
+ aria-hidden="true"
192
+ class="emotion-2 emotion-3"
193
+ style="transform: scale(0.4444444444444444);"
197
194
  >
198
195
  <div
199
- class="InnerBar1"
200
- />
201
- <div
202
- class="InnerBar2"
203
- />
204
- <div
205
- class="InnerBar3"
206
- />
207
- <div
208
- class="InnerBar4"
209
- />
210
- <div
211
- class="InnerBar5"
212
- />
213
- <div
214
- class="InnerBar6"
215
- />
216
- <div
217
- class="InnerBar7"
218
- />
219
- <div
220
- class="InnerBar8"
221
- />
222
- <div
223
- class="InnerBar9"
224
- />
225
- <div
226
- class="InnerBar10"
227
- />
228
- <div
229
- class="InnerBar11"
230
- />
231
- <div
232
- class="InnerBar12"
233
- />
196
+ class="emotion-4 emotion-5"
197
+ style="color: rgb(30, 30, 30);"
198
+ >
199
+ <div
200
+ class="InnerBar1"
201
+ />
202
+ <div
203
+ class="InnerBar2"
204
+ />
205
+ <div
206
+ class="InnerBar3"
207
+ />
208
+ <div
209
+ class="InnerBar4"
210
+ />
211
+ <div
212
+ class="InnerBar5"
213
+ />
214
+ <div
215
+ class="InnerBar6"
216
+ />
217
+ <div
218
+ class="InnerBar7"
219
+ />
220
+ <div
221
+ class="InnerBar8"
222
+ />
223
+ <div
224
+ class="InnerBar9"
225
+ />
226
+ <div
227
+ class="InnerBar10"
228
+ />
229
+ <div
230
+ class="InnerBar11"
231
+ />
232
+ <div
233
+ class="InnerBar12"
234
+ />
235
+ </div>
234
236
  </div>
235
237
  </div>
236
238
  </div>
@@ -241,23 +243,23 @@ Snapshot Diff:
241
243
  - First value
242
244
  + Second value
243
245
 
244
- @@ -1,16 +1,16 @@
245
- <div
246
- aria-busy="true"
247
- class="components-spinner css-14ywscc-ContainerView e1s9yo7h2"
248
- data-wp-c16t="true"
249
- data-wp-component="Spinner"
250
- - style="height: 31px; width: 31px;"
251
- + style="height: 16px; width: 16px;"
252
- >
246
+ @@ -2,16 +2,16 @@
253
247
  <div
254
- aria-hidden="true"
255
- class="css-1rq9ofd-BarsWrapperView e1s9yo7h1"
256
- - style="transform: scale(0.8611111111111112);"
257
- + style="transform: scale(0.4444444444444444);"
248
+ aria-busy="true"
249
+ class="components-spinner css-14ywscc-ContainerView e1s9yo7h2"
250
+ data-wp-c16t="true"
251
+ data-wp-component="Spinner"
252
+ - style="height: 31px; width: 31px;"
253
+ + style="height: 16px; width: 16px;"
258
254
  >
259
255
  <div
260
- class="css-tada40-BarsView e1s9yo7h0"
261
- style="color: rgb(30, 30, 30);"
256
+ aria-hidden="true"
257
+ class="css-1rq9ofd-BarsWrapperView e1s9yo7h1"
258
+ - style="transform: scale(0.8611111111111112);"
259
+ + style="transform: scale(0.4444444444444444);"
262
260
  >
261
+ <div
262
+ class="css-tada40-BarsView e1s9yo7h0"
263
+ style="color: rgb(30, 30, 30);"
264
+ >
263
265
  `;
@@ -11,7 +11,7 @@ import { Spinner } from '..';
11
11
  describe( 'props', () => {
12
12
  test( 'should render correctly', () => {
13
13
  const { container } = render( <Spinner /> );
14
- expect( container.firstChild ).toMatchSnapshot();
14
+ expect( container ).toMatchSnapshot();
15
15
  } );
16
16
 
17
17
  test( 'should render color', () => {
@@ -19,9 +19,7 @@ describe( 'props', () => {
19
19
  const { container: secondRenderContainer } = render(
20
20
  <Spinner color="blue" />
21
21
  );
22
- expect( secondRenderContainer.firstChild ).toMatchDiffSnapshot(
23
- container.firstChild
24
- );
22
+ expect( secondRenderContainer ).toMatchDiffSnapshot( container );
25
23
  } );
26
24
 
27
25
  test( 'should render size', () => {
@@ -29,8 +27,6 @@ describe( 'props', () => {
29
27
  const { container: secondRenderContainer } = render(
30
28
  <Spinner size={ 31 } />
31
29
  );
32
- expect( secondRenderContainer.firstChild ).toMatchDiffSnapshot(
33
- container.firstChild
34
- );
30
+ expect( secondRenderContainer ).toMatchDiffSnapshot( container );
35
31
  } );
36
32
  } );
@@ -6,8 +6,6 @@ import type {
6
6
  KeyboardEvent,
7
7
  ForwardedRef,
8
8
  SyntheticEvent,
9
- ChangeEvent,
10
- PointerEvent,
11
9
  } from 'react';
12
10
  import classnames from 'classnames';
13
11
 
@@ -23,7 +21,7 @@ import { __ } from '@wordpress/i18n';
23
21
  */
24
22
  import type { WordPressComponentProps } from '../ui/context';
25
23
  import * as inputControlActionTypes from '../input-control/reducer/actions';
26
- import { Root, ValueInput } from './styles/unit-control-styles';
24
+ import { ValueInput } from './styles/unit-control-styles';
27
25
  import UnitSelectControl from './unit-select-control';
28
26
  import {
29
27
  CSS_UNITS,
@@ -58,7 +56,6 @@ function UnforwardedUnitControl(
58
56
  onChange: onChangeProp,
59
57
  onUnitChange,
60
58
  size = 'default',
61
- style,
62
59
  unit: unitProp,
63
60
  units: unitsProp = CSS_UNITS,
64
61
  value: valueProp,
@@ -105,14 +102,18 @@ function UnforwardedUnitControl(
105
102
  // Stores parsed value for hand-off in state reducer.
106
103
  const refParsedQuantity = useRef< number | undefined >( undefined );
107
104
 
108
- const classes = classnames( 'components-unit-control', className );
105
+ const classes = classnames(
106
+ 'components-unit-control',
107
+ // This class is added for legacy purposes to maintain it on the outer
108
+ // wrapper. See: https://github.com/WordPress/gutenberg/pull/45139
109
+ 'components-unit-control-wrapper',
110
+ className
111
+ );
109
112
 
110
113
  const handleOnQuantityChange = (
111
114
  nextQuantityValue: number | string | undefined,
112
115
  changeProps: {
113
- event:
114
- | ChangeEvent< HTMLInputElement >
115
- | PointerEvent< HTMLInputElement >;
116
+ event: SyntheticEvent;
116
117
  }
117
118
  ) => {
118
119
  if (
@@ -177,7 +178,7 @@ function UnforwardedUnitControl(
177
178
  : undefined;
178
179
  const changeProps = { event, data };
179
180
 
180
- // The `onChange` callback already gets called, no need to call it explicitely.
181
+ // The `onChange` callback already gets called, no need to call it explicitly.
181
182
  onUnitChange?.( validParsedUnit, changeProps );
182
183
 
183
184
  setUnit( validParsedUnit );
@@ -258,27 +259,25 @@ function UnforwardedUnitControl(
258
259
  }
259
260
 
260
261
  return (
261
- <Root className="components-unit-control-wrapper" style={ style }>
262
- <ValueInput
263
- type={ isPressEnterToChange ? 'text' : 'number' }
264
- { ...props }
265
- autoComplete={ autoComplete }
266
- className={ classes }
267
- disabled={ disabled }
268
- hideHTMLArrows
269
- isPressEnterToChange={ isPressEnterToChange }
270
- label={ label }
271
- onBlur={ handleOnBlur }
272
- onKeyDown={ handleOnKeyDown }
273
- onChange={ handleOnQuantityChange }
274
- ref={ forwardedRef }
275
- size={ size }
276
- suffix={ inputSuffix }
277
- value={ parsedQuantity ?? '' }
278
- step={ step }
279
- __unstableStateReducer={ stateReducer }
280
- />
281
- </Root>
262
+ <ValueInput
263
+ type={ isPressEnterToChange ? 'text' : 'number' }
264
+ { ...props }
265
+ autoComplete={ autoComplete }
266
+ className={ classes }
267
+ disabled={ disabled }
268
+ spinControls="none"
269
+ isPressEnterToChange={ isPressEnterToChange }
270
+ label={ label }
271
+ onBlur={ handleOnBlur }
272
+ onKeyDown={ handleOnKeyDown }
273
+ onChange={ handleOnQuantityChange }
274
+ ref={ forwardedRef }
275
+ size={ size }
276
+ suffix={ inputSuffix }
277
+ value={ parsedQuantity ?? '' }
278
+ step={ step }
279
+ __unstableStateReducer={ stateReducer }
280
+ />
282
281
  );
283
282
  }
284
283
 
@@ -18,16 +18,6 @@ type SelectProps = {
18
18
  selectSize: SelectSize;
19
19
  };
20
20
 
21
- export const Root = styled.div`
22
- box-sizing: border-box;
23
- position: relative;
24
-
25
- /* Target the InputControl's backdrop and make focus styles smoother. */
26
- &&& ${ BackdropUI } {
27
- transition: box-shadow 0.1s linear;
28
- }
29
- `;
30
-
31
21
  // TODO: Resolve need to use &&& to increase specificity
32
22
  // https://github.com/WordPress/gutenberg/issues/18483
33
23
 
@@ -37,6 +27,10 @@ export const ValueInput = styled( NumberControl )`
37
27
  display: block;
38
28
  width: 100%;
39
29
  }
30
+
31
+ ${ BackdropUI } {
32
+ transition: box-shadow 0.1s linear;
33
+ }
40
34
  }
41
35
  `;
42
36
 
@@ -129,8 +123,8 @@ const unitSelectSizes = ( { selectSize = 'default' }: SelectProps ) => {
129
123
  };
130
124
 
131
125
  export const UnitSelect = styled.select< SelectProps >`
132
- // The && counteracts <select> styles in WP forms.css
133
- && {
126
+ // The &&& counteracts <select> styles in WP forms.css
127
+ &&& {
134
128
  appearance: none;
135
129
  background: transparent;
136
130
  border-radius: 2px;
@@ -6,6 +6,7 @@ import {
6
6
  useCustomUnits,
7
7
  getValidParsedQuantityAndUnit,
8
8
  getUnitsWithCurrentUnit,
9
+ parseQuantityAndUnitFromRawValue,
9
10
  } from '../utils';
10
11
  import type { WPUnitControlUnit } from '../types';
11
12
 
@@ -242,4 +243,46 @@ describe( 'UnitControl utils', () => {
242
243
  expect( result ).toEqual( limitedUnits );
243
244
  } );
244
245
  } );
246
+
247
+ describe( 'parseQuantityAndUnitFromRawValue', () => {
248
+ const cases: [
249
+ number | string | undefined,
250
+ number | undefined,
251
+ string | undefined
252
+ ][] = [
253
+ // Test undefined.
254
+ [ undefined, undefined, undefined ],
255
+ // Test integers and non-integers.
256
+ [ 1, 1, undefined ],
257
+ [ 1.25, 1.25, undefined ],
258
+ [ '123', 123, undefined ],
259
+ [ '1.5', 1.5, undefined ],
260
+ [ '0.75', 0.75, undefined ],
261
+ // Valid simple CSS values.
262
+ [ '20px', 20, 'px' ],
263
+ [ '0.8em', 0.8, 'em' ],
264
+ [ '2rem', 2, 'rem' ],
265
+ [ '1.4vw', 1.4, 'vw' ],
266
+ [ '0.4vh', 0.4, 'vh' ],
267
+ [ '-5px', -5, 'px' ],
268
+ // Complex CSS values that shouldn't parse.
269
+ [ 'abs(-15px)', undefined, undefined ],
270
+ [ 'calc(10px + 1)', undefined, undefined ],
271
+ [ 'clamp(2.5rem, 4vw, 3rem)', undefined, undefined ],
272
+ [ 'max(4.5em, 3vh)', undefined, undefined ],
273
+ [ 'min(10px, 1rem)', undefined, undefined ],
274
+ [ 'minmax(30px, auto)', undefined, undefined ],
275
+ [ 'var(--wp--font-size)', undefined, undefined ],
276
+ ];
277
+
278
+ test.each( cases )(
279
+ 'given %p as argument, returns value = %p and unit = %p',
280
+ ( rawValue, expectedQuantity, expectedUnit ) => {
281
+ const [ quantity, unit ] =
282
+ parseQuantityAndUnitFromRawValue( rawValue );
283
+ expect( quantity ).toBe( expectedQuantity );
284
+ expect( unit ).toBe( expectedUnit );
285
+ }
286
+ );
287
+ } );
245
288
  } );
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * External dependencies
3
3
  */
4
- import type { FocusEventHandler, SyntheticEvent } from 'react';
4
+ import type { FocusEventHandler } from 'react';
5
5
 
6
6
  /**
7
7
  * Internal dependencies
@@ -38,10 +38,9 @@ export type WPUnitControlUnit = {
38
38
  step?: number;
39
39
  };
40
40
 
41
- export type UnitControlOnChangeCallback = InputChangeCallback<
42
- SyntheticEvent< HTMLSelectElement | HTMLInputElement >,
43
- { data?: WPUnitControlUnit }
44
- >;
41
+ export type UnitControlOnChangeCallback = InputChangeCallback< {
42
+ data?: WPUnitControlUnit;
43
+ } >;
45
44
 
46
45
  export type UnitSelectControlProps = Pick< InputControlProps, 'size' > & {
47
46
  /**
@@ -67,7 +66,7 @@ export type UnitSelectControlProps = Pick< InputControlProps, 'size' > & {
67
66
  };
68
67
 
69
68
  export type UnitControlProps = Omit< UnitSelectControlProps, 'unit' > &
70
- Omit< NumberControlProps, 'hideHTMLArrows' | 'suffix' | 'type' > & {
69
+ Omit< NumberControlProps, 'spinControls' | 'suffix' | 'type' > & {
71
70
  /**
72
71
  * If `true`, the unit `<select>` is hidden.
73
72
  *
@@ -33,7 +33,6 @@ const TOGGLE_GROUP_CONTROL_PROPS = {
33
33
  toggleGroupControlBackdropBackgroundColor:
34
34
  CONTROL_PROPS.controlSurfaceColor,
35
35
  toggleGroupControlBackdropBorderColor: COLORS.ui.border,
36
- toggleGroupControlBackdropBoxShadow: 'transparent',
37
36
  toggleGroupControlButtonColorActive: CONTROL_PROPS.controlBackgroundColor,
38
37
  };
39
38
 
@@ -13,13 +13,17 @@ import { useRef, useEffect } from '@wordpress/element';
13
13
  */
14
14
  function useUpdateEffect( effect, deps ) {
15
15
  const mounted = useRef( false );
16
-
17
16
  useEffect( () => {
18
17
  if ( mounted.current ) {
19
18
  return effect();
20
19
  }
21
20
  mounted.current = true;
22
21
  return undefined;
22
+ // Disable reasons:
23
+ // 1. This hook needs to pass a dep list that isn't an array literal
24
+ // 2. `effect` is missing from the array, and will need to be added carefully to avoid additional warnings
25
+ // see https://github.com/WordPress/gutenberg/pull/41166
26
+ // eslint-disable-next-line react-hooks/exhaustive-deps
23
27
  }, deps );
24
28
  }
25
29
 
@@ -7,21 +7,6 @@ export type SizeRangeDefault =
7
7
 
8
8
  export type SizeRangeReduced = 'large' | 'medium' | 'small';
9
9
 
10
- export type FormElementProps< V > = {
11
- /**
12
- * The default (initial) state to use if `value` is undefined.
13
- */
14
- defaultValue?: V;
15
- /**
16
- * Determines if element is disabled.
17
- */
18
- disabled?: boolean;
19
- /**
20
- * Label for the form element.
21
- */
22
- label?: string;
23
- };
24
-
25
10
  export type PopperPlacement =
26
11
  | 'auto'
27
12
  | 'auto-start'