@wordpress/components 23.1.0 → 23.3.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 (623) hide show
  1. package/CHANGELOG.md +53 -0
  2. package/CONTRIBUTING.md +1 -1
  3. package/LICENSE.md +1 -1
  4. package/build/alignment-matrix-control/utils.js +2 -2
  5. package/build/alignment-matrix-control/utils.js.map +1 -1
  6. package/build/autocomplete/autocompleter-ui.js +1 -3
  7. package/build/autocomplete/autocompleter-ui.js.map +1 -1
  8. package/build/border-box-control/border-box-control-linked-button/component.js.map +1 -1
  9. package/build/border-box-control/border-box-control-linked-button/hook.js.map +1 -1
  10. package/build/border-control/border-control-dropdown/component.js +8 -4
  11. package/build/border-control/border-control-dropdown/component.js.map +1 -1
  12. package/build/button/deprecated.js +8 -6
  13. package/build/button/deprecated.js.map +1 -1
  14. package/build/button/index.js +52 -23
  15. package/build/button/index.js.map +1 -1
  16. package/build/button/types.js +6 -0
  17. package/build/button/types.js.map +1 -0
  18. package/build/color-list-picker/index.js.map +1 -1
  19. package/build/color-list-picker/types.js +6 -0
  20. package/build/color-list-picker/types.js.map +1 -0
  21. package/build/color-palette/index.js +9 -61
  22. package/build/color-palette/index.js.map +1 -1
  23. package/build/color-palette/index.native.js +24 -9
  24. package/build/color-palette/index.native.js.map +1 -1
  25. package/build/color-palette/utils.js +103 -0
  26. package/build/color-palette/utils.js.map +1 -0
  27. package/build/color-picker/component.js +1 -0
  28. package/build/color-picker/component.js.map +1 -1
  29. package/build/color-picker/styles.js +8 -10
  30. package/build/color-picker/styles.js.map +1 -1
  31. package/build/combobox-control/index.js +5 -1
  32. package/build/combobox-control/index.js.map +1 -1
  33. package/build/custom-gradient-picker/gradient-bar/utils.js +1 -1
  34. package/build/custom-gradient-picker/gradient-bar/utils.js.map +1 -1
  35. package/build/date-time/date/index.js.map +1 -1
  36. package/build/dropdown/index.js +20 -8
  37. package/build/dropdown/index.js.map +1 -1
  38. package/build/focal-point-picker/utils.js +1 -1
  39. package/build/focal-point-picker/utils.js.map +1 -1
  40. package/build/form-token-field/token.js +1 -1
  41. package/build/form-token-field/token.js.map +1 -1
  42. package/build/gradient-picker/index.js +9 -1
  43. package/build/gradient-picker/index.js.map +1 -1
  44. package/build/h-stack/component.js +0 -1
  45. package/build/h-stack/component.js.map +1 -1
  46. package/build/index.js +7 -17
  47. package/build/index.js.map +1 -1
  48. package/build/index.native.js +8 -18
  49. package/build/index.native.js.map +1 -1
  50. package/build/input-control/input-field.js +4 -2
  51. package/build/input-control/input-field.js.map +1 -1
  52. package/build/item-group/item/component.js +27 -3
  53. package/build/item-group/item/component.js.map +1 -1
  54. package/build/item-group/item-group/component.js +26 -3
  55. package/build/item-group/item-group/component.js.map +1 -1
  56. package/build/item-group/styles.js +14 -14
  57. package/build/item-group/styles.js.map +1 -1
  58. package/build/keyboard-shortcuts/index.js +44 -16
  59. package/build/keyboard-shortcuts/index.js.map +1 -1
  60. package/build/keyboard-shortcuts/types.js +6 -0
  61. package/build/keyboard-shortcuts/types.js.map +1 -0
  62. package/build/modal/index.js +1 -1
  63. package/build/modal/index.js.map +1 -1
  64. package/build/notice/index.js +16 -18
  65. package/build/notice/index.js.map +1 -1
  66. package/build/notice/list.js +23 -8
  67. package/build/notice/list.js.map +1 -1
  68. package/build/notice/types.js +6 -0
  69. package/build/notice/types.js.map +1 -0
  70. package/build/number-control/index.js +1 -1
  71. package/build/number-control/index.js.map +1 -1
  72. package/build/panel/row.js +5 -3
  73. package/build/panel/row.js.map +1 -1
  74. package/build/query-controls/author-select.js +7 -3
  75. package/build/query-controls/author-select.js.map +1 -1
  76. package/build/query-controls/category-select.js +7 -3
  77. package/build/query-controls/category-select.js.map +1 -1
  78. package/build/query-controls/index.js +69 -20
  79. package/build/query-controls/index.js.map +1 -1
  80. package/build/query-controls/terms.js +4 -3
  81. package/build/query-controls/terms.js.map +1 -1
  82. package/build/query-controls/types.js +6 -0
  83. package/build/query-controls/types.js.map +1 -0
  84. package/build/resizable-box/index.js +5 -4
  85. package/build/resizable-box/index.js.map +1 -1
  86. package/build/responsive-wrapper/index.js +18 -1
  87. package/build/responsive-wrapper/index.js.map +1 -1
  88. package/build/responsive-wrapper/types.js +6 -0
  89. package/build/responsive-wrapper/types.js.map +1 -0
  90. package/build/sandbox/index.js +35 -24
  91. package/build/sandbox/index.js.map +1 -1
  92. package/build/sandbox/types.js +6 -0
  93. package/build/sandbox/types.js.map +1 -0
  94. package/build/slot-fill/bubbles-virtually/fill.js +1 -0
  95. package/build/slot-fill/bubbles-virtually/fill.js.map +1 -1
  96. package/build/slot-fill/slot.js +1 -0
  97. package/build/slot-fill/slot.js.map +1 -1
  98. package/build/slot-fill/use-slot.js +1 -11
  99. package/build/slot-fill/use-slot.js.map +1 -1
  100. package/build/snackbar/index.js.map +1 -1
  101. package/build/snackbar/list.js.map +1 -1
  102. package/build/tab-panel/index.js +40 -7
  103. package/build/tab-panel/index.js.map +1 -1
  104. package/build/toolbar/index.js +42 -60
  105. package/build/toolbar/index.js.map +1 -1
  106. package/build/toolbar/toolbar/index.js +74 -0
  107. package/build/toolbar/toolbar/index.js.map +1 -0
  108. package/build/toolbar/{toolbar-container.js → toolbar/toolbar-container.js} +0 -0
  109. package/build/toolbar/toolbar/toolbar-container.js.map +1 -0
  110. package/build/toolbar/{toolbar-container.native.js → toolbar/toolbar-container.native.js} +0 -0
  111. package/build/toolbar/toolbar/toolbar-container.native.js.map +1 -0
  112. package/build/{toolbar-button → toolbar/toolbar-button}/index.js +1 -1
  113. package/build/toolbar/toolbar-button/index.js.map +1 -0
  114. package/build/{toolbar-button → toolbar/toolbar-button}/toolbar-button-container.js +0 -0
  115. package/build/toolbar/toolbar-button/toolbar-button-container.js.map +1 -0
  116. package/build/{toolbar-button → toolbar/toolbar-button}/toolbar-button-container.native.js +0 -0
  117. package/build/toolbar/toolbar-button/toolbar-button-container.native.js.map +1 -0
  118. package/build/{toolbar-context → toolbar/toolbar-context}/index.js +0 -0
  119. package/build/toolbar/toolbar-context/index.js.map +1 -0
  120. package/build/{toolbar-dropdown-menu → toolbar/toolbar-dropdown-menu}/index.js +1 -1
  121. package/build/toolbar/toolbar-dropdown-menu/index.js.map +1 -0
  122. package/build/{toolbar-group → toolbar/toolbar-group}/index.js +0 -0
  123. package/build/toolbar/toolbar-group/index.js.map +1 -0
  124. package/build/{toolbar-group → toolbar/toolbar-group}/toolbar-group-collapsed.js +1 -1
  125. package/build/toolbar/toolbar-group/toolbar-group-collapsed.js.map +1 -0
  126. package/build/{toolbar-group → toolbar/toolbar-group}/toolbar-group-collapsed.native.js +1 -1
  127. package/build/toolbar/toolbar-group/toolbar-group-collapsed.native.js.map +1 -0
  128. package/build/{toolbar-group → toolbar/toolbar-group}/toolbar-group-container.js +0 -0
  129. package/build/toolbar/toolbar-group/toolbar-group-container.js.map +1 -0
  130. package/build/{toolbar-group → toolbar/toolbar-group}/toolbar-group-container.native.js +0 -0
  131. package/build/toolbar/toolbar-group/toolbar-group-container.native.js.map +1 -0
  132. package/build/{toolbar-item → toolbar/toolbar-item}/index.js +0 -0
  133. package/build/toolbar/toolbar-item/index.js.map +1 -0
  134. package/build/{toolbar-item → toolbar/toolbar-item}/index.native.js +0 -0
  135. package/build/toolbar/toolbar-item/index.native.js.map +1 -0
  136. package/build/tree-grid/index.js +4 -4
  137. package/build/tree-grid/index.js.map +1 -1
  138. package/build/tree-select/index.js +2 -6
  139. package/build/tree-select/index.js.map +1 -1
  140. package/build-module/alignment-matrix-control/utils.js +2 -2
  141. package/build-module/alignment-matrix-control/utils.js.map +1 -1
  142. package/build-module/autocomplete/autocompleter-ui.js +1 -2
  143. package/build-module/autocomplete/autocompleter-ui.js.map +1 -1
  144. package/build-module/border-box-control/border-box-control-linked-button/component.js.map +1 -1
  145. package/build-module/border-box-control/border-box-control-linked-button/hook.js.map +1 -1
  146. package/build-module/border-control/border-control-dropdown/component.js +7 -4
  147. package/build-module/border-control/border-control-dropdown/component.js.map +1 -1
  148. package/build-module/button/deprecated.js +8 -5
  149. package/build-module/button/deprecated.js.map +1 -1
  150. package/build-module/button/index.js +51 -22
  151. package/build-module/button/index.js.map +1 -1
  152. package/build-module/button/types.js +2 -0
  153. package/build-module/button/types.js.map +1 -0
  154. package/build-module/color-list-picker/index.js.map +1 -1
  155. package/build-module/color-list-picker/types.js +2 -0
  156. package/build-module/color-list-picker/types.js.map +1 -0
  157. package/build-module/color-palette/index.js +7 -54
  158. package/build-module/color-palette/index.js.map +1 -1
  159. package/build-module/color-palette/index.native.js +24 -8
  160. package/build-module/color-palette/index.native.js.map +1 -1
  161. package/build-module/color-palette/utils.js +79 -0
  162. package/build-module/color-palette/utils.js.map +1 -0
  163. package/build-module/color-picker/component.js +1 -0
  164. package/build-module/color-picker/component.js.map +1 -1
  165. package/build-module/color-picker/styles.js +8 -9
  166. package/build-module/color-picker/styles.js.map +1 -1
  167. package/build-module/combobox-control/index.js +5 -1
  168. package/build-module/combobox-control/index.js.map +1 -1
  169. package/build-module/custom-gradient-picker/gradient-bar/utils.js +1 -1
  170. package/build-module/custom-gradient-picker/gradient-bar/utils.js.map +1 -1
  171. package/build-module/date-time/date/index.js +1 -1
  172. package/build-module/date-time/date/index.js.map +1 -1
  173. package/build-module/dropdown/index.js +19 -8
  174. package/build-module/dropdown/index.js.map +1 -1
  175. package/build-module/focal-point-picker/utils.js +1 -1
  176. package/build-module/focal-point-picker/utils.js.map +1 -1
  177. package/build-module/form-token-field/token.js +1 -1
  178. package/build-module/form-token-field/token.js.map +1 -1
  179. package/build-module/gradient-picker/index.js +9 -2
  180. package/build-module/gradient-picker/index.js.map +1 -1
  181. package/build-module/h-stack/component.js +0 -1
  182. package/build-module/h-stack/component.js.map +1 -1
  183. package/build-module/index.js +1 -6
  184. package/build-module/index.js.map +1 -1
  185. package/build-module/index.native.js +1 -6
  186. package/build-module/index.native.js.map +1 -1
  187. package/build-module/input-control/input-field.js +4 -2
  188. package/build-module/input-control/input-field.js.map +1 -1
  189. package/build-module/item-group/item/component.js +26 -2
  190. package/build-module/item-group/item/component.js.map +1 -1
  191. package/build-module/item-group/item-group/component.js +25 -2
  192. package/build-module/item-group/item-group/component.js.map +1 -1
  193. package/build-module/item-group/styles.js +14 -14
  194. package/build-module/item-group/styles.js.map +1 -1
  195. package/build-module/keyboard-shortcuts/index.js +48 -16
  196. package/build-module/keyboard-shortcuts/index.js.map +1 -1
  197. package/build-module/keyboard-shortcuts/types.js +2 -0
  198. package/build-module/keyboard-shortcuts/types.js.map +1 -0
  199. package/build-module/modal/index.js +1 -1
  200. package/build-module/modal/index.js.map +1 -1
  201. package/build-module/notice/index.js +14 -15
  202. package/build-module/notice/index.js.map +1 -1
  203. package/build-module/notice/list.js +23 -8
  204. package/build-module/notice/list.js.map +1 -1
  205. package/build-module/notice/types.js +2 -0
  206. package/build-module/notice/types.js.map +1 -0
  207. package/build-module/number-control/index.js +1 -1
  208. package/build-module/number-control/index.js.map +1 -1
  209. package/build-module/panel/row.js +5 -3
  210. package/build-module/panel/row.js.map +1 -1
  211. package/build-module/query-controls/author-select.js +7 -3
  212. package/build-module/query-controls/author-select.js.map +1 -1
  213. package/build-module/query-controls/category-select.js +8 -4
  214. package/build-module/query-controls/category-select.js.map +1 -1
  215. package/build-module/query-controls/index.js +65 -20
  216. package/build-module/query-controls/index.js.map +1 -1
  217. package/build-module/query-controls/terms.js +8 -4
  218. package/build-module/query-controls/terms.js.map +1 -1
  219. package/build-module/query-controls/types.js +2 -0
  220. package/build-module/query-controls/types.js.map +1 -0
  221. package/build-module/resizable-box/index.js +3 -2
  222. package/build-module/resizable-box/index.js.map +1 -1
  223. package/build-module/responsive-wrapper/index.js +20 -1
  224. package/build-module/responsive-wrapper/index.js.map +1 -1
  225. package/build-module/responsive-wrapper/types.js +2 -0
  226. package/build-module/responsive-wrapper/types.js.map +1 -0
  227. package/build-module/sandbox/index.js +37 -23
  228. package/build-module/sandbox/index.js.map +1 -1
  229. package/build-module/sandbox/types.js +2 -0
  230. package/build-module/sandbox/types.js.map +1 -0
  231. package/build-module/slot-fill/bubbles-virtually/fill.js +1 -0
  232. package/build-module/slot-fill/bubbles-virtually/fill.js.map +1 -1
  233. package/build-module/slot-fill/slot.js +1 -0
  234. package/build-module/slot-fill/slot.js.map +1 -1
  235. package/build-module/slot-fill/use-slot.js +2 -12
  236. package/build-module/slot-fill/use-slot.js.map +1 -1
  237. package/build-module/snackbar/index.js.map +1 -1
  238. package/build-module/snackbar/list.js.map +1 -1
  239. package/build-module/tab-panel/index.js +40 -7
  240. package/build-module/tab-panel/index.js.map +1 -1
  241. package/build-module/toolbar/index.js +6 -58
  242. package/build-module/toolbar/index.js.map +1 -1
  243. package/build-module/toolbar/toolbar/index.js +59 -0
  244. package/build-module/toolbar/toolbar/index.js.map +1 -0
  245. package/build-module/toolbar/{toolbar-container.js → toolbar/toolbar-container.js} +0 -0
  246. package/{build → build-module/toolbar}/toolbar/toolbar-container.js.map +1 -1
  247. package/build-module/toolbar/{toolbar-container.native.js → toolbar/toolbar-container.native.js} +0 -0
  248. package/build-module/toolbar/toolbar/toolbar-container.native.js.map +1 -0
  249. package/build-module/{toolbar-button → toolbar/toolbar-button}/index.js +1 -1
  250. package/build-module/toolbar/toolbar-button/index.js.map +1 -0
  251. package/build-module/{toolbar-button → toolbar/toolbar-button}/toolbar-button-container.js +0 -0
  252. package/build-module/toolbar/toolbar-button/toolbar-button-container.js.map +1 -0
  253. package/build-module/{toolbar-button → toolbar/toolbar-button}/toolbar-button-container.native.js +0 -0
  254. package/build-module/toolbar/toolbar-button/toolbar-button-container.native.js.map +1 -0
  255. package/build-module/{toolbar-context → toolbar/toolbar-context}/index.js +0 -0
  256. package/build-module/toolbar/toolbar-context/index.js.map +1 -0
  257. package/build-module/{toolbar-dropdown-menu → toolbar/toolbar-dropdown-menu}/index.js +1 -1
  258. package/build-module/toolbar/toolbar-dropdown-menu/index.js.map +1 -0
  259. package/build-module/{toolbar-group → toolbar/toolbar-group}/index.js +0 -0
  260. package/build-module/toolbar/toolbar-group/index.js.map +1 -0
  261. package/build-module/{toolbar-group → toolbar/toolbar-group}/toolbar-group-collapsed.js +1 -1
  262. package/build-module/toolbar/toolbar-group/toolbar-group-collapsed.js.map +1 -0
  263. package/build-module/{toolbar-group → toolbar/toolbar-group}/toolbar-group-collapsed.native.js +1 -1
  264. package/build-module/toolbar/toolbar-group/toolbar-group-collapsed.native.js.map +1 -0
  265. package/build-module/{toolbar-group → toolbar/toolbar-group}/toolbar-group-container.js +0 -0
  266. package/build-module/toolbar/toolbar-group/toolbar-group-container.js.map +1 -0
  267. package/build-module/{toolbar-group → toolbar/toolbar-group}/toolbar-group-container.native.js +0 -0
  268. package/build-module/toolbar/toolbar-group/toolbar-group-container.native.js.map +1 -0
  269. package/build-module/{toolbar-item → toolbar/toolbar-item}/index.js +0 -0
  270. package/build-module/toolbar/toolbar-item/index.js.map +1 -0
  271. package/build-module/{toolbar-item → toolbar/toolbar-item}/index.native.js +0 -0
  272. package/build-module/toolbar/toolbar-item/index.native.js.map +1 -0
  273. package/build-module/tree-grid/index.js +4 -4
  274. package/build-module/tree-grid/index.js.map +1 -1
  275. package/build-module/tree-select/index.js +2 -6
  276. package/build-module/tree-select/index.js.map +1 -1
  277. package/build-style/style-rtl.css +6 -1
  278. package/build-style/style.css +6 -1
  279. package/build-types/border-box-control/border-box-control/hook.d.ts +1 -1
  280. package/build-types/border-box-control/border-box-control-linked-button/component.d.ts +1 -1
  281. package/build-types/border-box-control/border-box-control-linked-button/hook.d.ts +171 -160
  282. package/build-types/border-box-control/border-box-control-linked-button/hook.d.ts.map +1 -1
  283. package/build-types/border-box-control/border-box-control-split-controls/hook.d.ts +1 -1
  284. package/build-types/border-control/border-control/hook.d.ts +1 -1
  285. package/build-types/border-control/border-control-dropdown/component.d.ts.map +1 -1
  286. package/build-types/border-control/border-control-dropdown/hook.d.ts +1 -1
  287. package/build-types/button/deprecated.d.ts +143 -7
  288. package/build-types/button/deprecated.d.ts.map +1 -1
  289. package/build-types/button/index.d.ts +20 -3
  290. package/build-types/button/index.d.ts.map +1 -1
  291. package/build-types/button/stories/index.d.ts +20 -0
  292. package/build-types/button/stories/index.d.ts.map +1 -0
  293. package/build-types/button/test/index.d.ts +2 -0
  294. package/build-types/button/test/index.d.ts.map +1 -0
  295. package/build-types/button/types.d.ts +134 -0
  296. package/build-types/button/types.d.ts.map +1 -0
  297. package/build-types/color-list-picker/index.d.ts +5 -0
  298. package/build-types/color-list-picker/index.d.ts.map +1 -0
  299. package/build-types/color-list-picker/types.d.ts +42 -0
  300. package/build-types/color-list-picker/types.d.ts.map +1 -0
  301. package/build-types/color-palette/index.d.ts +2 -4
  302. package/build-types/color-palette/index.d.ts.map +1 -1
  303. package/build-types/color-palette/stories/index.d.ts +2 -2
  304. package/build-types/color-palette/styles.d.ts +1 -1
  305. package/build-types/color-palette/types.d.ts +1 -1
  306. package/build-types/color-palette/types.d.ts.map +1 -1
  307. package/build-types/color-palette/utils.d.ts +14 -0
  308. package/build-types/color-palette/utils.d.ts.map +1 -0
  309. package/build-types/color-picker/component.d.ts.map +1 -1
  310. package/build-types/color-picker/styles.d.ts +2 -2
  311. package/build-types/color-picker/styles.d.ts.map +1 -1
  312. package/build-types/dashicon/types.d.ts +0 -4
  313. package/build-types/dashicon/types.d.ts.map +1 -1
  314. package/build-types/date-time/date/index.d.ts.map +1 -1
  315. package/build-types/date-time/date/styles.d.ts +3 -3
  316. package/build-types/dropdown/index.d.ts +4 -4
  317. package/build-types/dropdown/index.d.ts.map +1 -1
  318. package/build-types/dropdown/stories/index.d.ts.map +1 -1
  319. package/build-types/dropdown/types.d.ts +9 -10
  320. package/build-types/dropdown/types.d.ts.map +1 -1
  321. package/build-types/focal-point-picker/utils.d.ts.map +1 -1
  322. package/build-types/font-size-picker/styles.d.ts +2 -2
  323. package/build-types/h-stack/component.d.ts +0 -1
  324. package/build-types/h-stack/component.d.ts.map +1 -1
  325. package/build-types/input-control/input-field.d.ts.map +1 -1
  326. package/build-types/item-group/item/component.d.ts +24 -2
  327. package/build-types/item-group/item/component.d.ts.map +1 -1
  328. package/build-types/item-group/item-group/component.d.ts +23 -2
  329. package/build-types/item-group/item-group/component.d.ts.map +1 -1
  330. package/build-types/item-group/stories/index.d.ts +15 -0
  331. package/build-types/item-group/stories/index.d.ts.map +1 -0
  332. package/build-types/item-group/styles.d.ts.map +1 -1
  333. package/build-types/keyboard-shortcuts/index.d.ts +38 -0
  334. package/build-types/keyboard-shortcuts/index.d.ts.map +1 -0
  335. package/build-types/keyboard-shortcuts/stories/index.d.ts +12 -0
  336. package/build-types/keyboard-shortcuts/stories/index.d.ts.map +1 -0
  337. package/build-types/keyboard-shortcuts/test/index.d.ts +2 -0
  338. package/build-types/keyboard-shortcuts/test/index.d.ts.map +1 -0
  339. package/build-types/keyboard-shortcuts/types.d.ts +48 -0
  340. package/build-types/keyboard-shortcuts/types.d.ts.map +1 -0
  341. package/build-types/modal/index.d.ts.map +1 -1
  342. package/build-types/navigator/navigator-back-button/component.d.ts +1 -1
  343. package/build-types/navigator/navigator-back-button/hook.d.ts +2 -2
  344. package/build-types/navigator/navigator-button/component.d.ts +1 -1
  345. package/build-types/navigator/navigator-button/hook.d.ts +2 -2
  346. package/build-types/notice/index.d.ts +16 -0
  347. package/build-types/notice/index.d.ts.map +1 -0
  348. package/build-types/notice/list.d.ts +32 -0
  349. package/build-types/notice/list.d.ts.map +1 -0
  350. package/build-types/notice/stories/index.d.ts +17 -0
  351. package/build-types/notice/stories/index.d.ts.map +1 -0
  352. package/build-types/notice/test/index.d.ts +2 -0
  353. package/build-types/notice/test/index.d.ts.map +1 -0
  354. package/build-types/notice/test/list.d.ts +2 -0
  355. package/build-types/notice/test/list.d.ts.map +1 -0
  356. package/build-types/notice/types.d.ts +128 -0
  357. package/build-types/notice/types.d.ts.map +1 -0
  358. package/build-types/number-control/styles/number-control-styles.d.ts +2 -2
  359. package/build-types/number-control/styles/number-control-styles.d.ts.map +1 -1
  360. package/build-types/placeholder/stories/index.d.ts.map +1 -1
  361. package/build-types/query-controls/author-select.d.ts +4 -0
  362. package/build-types/query-controls/author-select.d.ts.map +1 -0
  363. package/build-types/query-controls/category-select.d.ts +4 -0
  364. package/build-types/query-controls/category-select.d.ts.map +1 -0
  365. package/build-types/query-controls/index.d.ts +30 -0
  366. package/build-types/query-controls/index.d.ts.map +1 -0
  367. package/build-types/query-controls/stories/index.d.ts +13 -0
  368. package/build-types/query-controls/stories/index.d.ts.map +1 -0
  369. package/build-types/query-controls/terms.d.ts +13 -0
  370. package/build-types/query-controls/terms.d.ts.map +1 -0
  371. package/build-types/query-controls/test/terms.d.ts +2 -0
  372. package/build-types/query-controls/test/terms.d.ts.map +1 -0
  373. package/build-types/query-controls/types.d.ts +131 -0
  374. package/build-types/query-controls/types.d.ts.map +1 -0
  375. package/build-types/range-control/index.d.ts +1 -1
  376. package/build-types/resizable-box/index.d.ts +6 -7
  377. package/build-types/resizable-box/index.d.ts.map +1 -1
  378. package/build-types/resizable-box/stories/index.d.ts +61 -0
  379. package/build-types/resizable-box/stories/index.d.ts.map +1 -0
  380. package/build-types/responsive-wrapper/index.d.ts +24 -0
  381. package/build-types/responsive-wrapper/index.d.ts.map +1 -0
  382. package/build-types/responsive-wrapper/stories/index.d.ts +12 -0
  383. package/build-types/responsive-wrapper/stories/index.d.ts.map +1 -0
  384. package/build-types/responsive-wrapper/types.d.ts +22 -0
  385. package/build-types/responsive-wrapper/types.d.ts.map +1 -0
  386. package/build-types/sandbox/index.d.ts +19 -0
  387. package/build-types/sandbox/index.d.ts.map +1 -0
  388. package/build-types/sandbox/stories/index.d.ts +12 -0
  389. package/build-types/sandbox/stories/index.d.ts.map +1 -0
  390. package/build-types/sandbox/test/index.d.ts +2 -0
  391. package/build-types/sandbox/test/index.d.ts.map +1 -0
  392. package/build-types/sandbox/types.d.ts +36 -0
  393. package/build-types/sandbox/types.d.ts.map +1 -0
  394. package/build-types/slot-fill/bubbles-virtually/fill.d.ts.map +1 -1
  395. package/build-types/slot-fill/use-slot.d.ts.map +1 -1
  396. package/build-types/snackbar/index.d.ts +9 -2
  397. package/build-types/snackbar/index.d.ts.map +1 -1
  398. package/build-types/snackbar/list.d.ts.map +1 -1
  399. package/build-types/snackbar/types.d.ts +15 -88
  400. package/build-types/snackbar/types.d.ts.map +1 -1
  401. package/build-types/tab-panel/index.d.ts.map +1 -1
  402. package/build-types/tab-panel/stories/index.d.ts +1 -0
  403. package/build-types/tab-panel/stories/index.d.ts.map +1 -1
  404. package/build-types/tab-panel/types.d.ts +11 -5
  405. package/build-types/tab-panel/types.d.ts.map +1 -1
  406. package/build-types/toggle-group-control/stories/index.d.ts.map +1 -1
  407. package/build-types/tree-select/index.d.ts.map +1 -1
  408. package/build-types/ui/form-group/form-group.d.ts +2 -2
  409. package/package.json +18 -17
  410. package/src/alignment-matrix-control/utils.tsx +2 -2
  411. package/src/autocomplete/autocompleter-ui.js +1 -2
  412. package/src/autocomplete/test/index.js +1 -5
  413. package/src/border-box-control/border-box-control-linked-button/component.tsx +1 -1
  414. package/src/border-box-control/border-box-control-linked-button/hook.ts +1 -1
  415. package/src/border-control/border-control-dropdown/component.tsx +9 -8
  416. package/src/box-control/test/index.js +11 -35
  417. package/src/button/README.md +49 -55
  418. package/src/button/{deprecated.js → deprecated.tsx} +19 -4
  419. package/src/button/{index.js → index.tsx} +95 -34
  420. package/src/button/stories/index.tsx +106 -0
  421. package/src/button/style.scss +3 -2
  422. package/src/button/test/{index.js → index.tsx} +30 -7
  423. package/src/button/types.ts +138 -0
  424. package/src/checkbox-control/test/index.tsx +1 -5
  425. package/src/color-list-picker/{index.js → index.tsx} +3 -2
  426. package/src/color-list-picker/types.ts +46 -0
  427. package/src/color-palette/README.md +1 -1
  428. package/src/color-palette/index.native.js +11 -4
  429. package/src/color-palette/index.tsx +11 -67
  430. package/src/color-palette/test/index.tsx +4 -14
  431. package/src/color-palette/test/utils.ts +1 -1
  432. package/src/color-palette/types.ts +1 -1
  433. package/src/color-palette/utils.ts +98 -0
  434. package/src/color-picker/component.tsx +1 -0
  435. package/src/color-picker/stories/index.js +20 -60
  436. package/src/color-picker/styles.ts +0 -5
  437. package/src/color-picker/test/index.js +6 -15
  438. package/src/combobox-control/index.js +9 -1
  439. package/src/combobox-control/test/index.js +1 -6
  440. package/src/confirm-dialog/test/index.js +9 -29
  441. package/src/custom-gradient-picker/gradient-bar/utils.js +1 -1
  442. package/src/dashicon/types.ts +0 -6
  443. package/src/date-time/date/index.tsx +2 -1
  444. package/src/date-time/date/test/index.tsx +2 -8
  445. package/src/date-time/time/test/index.tsx +9 -29
  446. package/src/dimension-control/test/index.test.js +2 -8
  447. package/src/disabled/test/index.tsx +1 -5
  448. package/src/draggable/test/index.native.js +4 -4
  449. package/src/dropdown/README.md +1 -8
  450. package/src/dropdown/index.tsx +17 -6
  451. package/src/dropdown/stories/index.tsx +3 -3
  452. package/src/dropdown/test/index.tsx +2 -8
  453. package/src/dropdown/types.ts +9 -10
  454. package/src/dropdown-menu/README.md +1 -1
  455. package/src/dropdown-menu/stories/index.js +96 -27
  456. package/src/dropdown-menu/test/index.js +2 -8
  457. package/src/external-link/test/index.tsx +1 -6
  458. package/src/focal-point-picker/stories/index.tsx +1 -1
  459. package/src/focal-point-picker/test/index.js +3 -11
  460. package/src/focal-point-picker/utils.ts +4 -1
  461. package/src/font-size-picker/test/index.tsx +14 -44
  462. package/src/form-file-upload/test/index.tsx +2 -17
  463. package/src/form-toggle/test/index.tsx +1 -5
  464. package/src/form-token-field/test/index.tsx +80 -163
  465. package/src/form-token-field/token.tsx +1 -1
  466. package/src/gradient-picker/index.js +15 -4
  467. package/src/guide/stories/index.js +14 -41
  468. package/src/guide/test/index.js +5 -17
  469. package/src/h-stack/component.tsx +0 -1
  470. package/src/higher-order/with-filters/test/index.js +24 -24
  471. package/src/higher-order/with-focus-outside/test/index.js +11 -25
  472. package/src/higher-order/with-focus-return/test/index.js +1 -5
  473. package/src/index.js +8 -6
  474. package/src/index.native.js +8 -6
  475. package/src/input-control/input-field.tsx +3 -1
  476. package/src/input-control/test/index.js +1 -6
  477. package/src/isolated-event-container/test/index.js +2 -8
  478. package/src/item-group/item/component.tsx +26 -2
  479. package/src/item-group/item-group/component.tsx +25 -2
  480. package/src/item-group/stories/index.tsx +103 -0
  481. package/src/item-group/styles.ts +1 -0
  482. package/src/item-group/test/__snapshots__/index.js.snap +11 -10
  483. package/src/keyboard-shortcuts/README.md +1 -1
  484. package/src/keyboard-shortcuts/index.tsx +93 -0
  485. package/src/keyboard-shortcuts/stories/index.tsx +60 -0
  486. package/src/keyboard-shortcuts/test/{index.js → index.tsx} +16 -6
  487. package/src/keyboard-shortcuts/types.ts +51 -0
  488. package/src/modal/index.tsx +1 -2
  489. package/src/navigable-container/test/navigable-menu.js +5 -17
  490. package/src/navigable-container/test/tababble-container.js +3 -11
  491. package/src/navigation/test/index.js +3 -11
  492. package/src/navigator/test/index.tsx +6 -20
  493. package/src/notice/README.md +89 -42
  494. package/src/notice/{index.js → index.tsx} +28 -20
  495. package/src/notice/list.tsx +72 -0
  496. package/src/notice/stories/index.tsx +119 -0
  497. package/src/notice/test/__snapshots__/{index.js.snap → index.tsx.snap} +0 -0
  498. package/src/notice/test/{index.js → index.tsx} +7 -4
  499. package/src/notice/test/{list.js → list.tsx} +0 -0
  500. package/src/notice/types.ts +136 -0
  501. package/src/number-control/index.tsx +1 -1
  502. package/src/number-control/test/index.tsx +28 -86
  503. package/src/panel/row.js +3 -3
  504. package/src/panel/stories/index.js +62 -80
  505. package/src/panel/test/body.js +2 -8
  506. package/src/placeholder/stories/index.tsx +1 -0
  507. package/src/placeholder/style.scss +1 -1
  508. package/src/query-controls/README.md +56 -56
  509. package/src/query-controls/author-select.tsx +37 -0
  510. package/src/query-controls/category-select.tsx +46 -0
  511. package/src/query-controls/index.tsx +192 -0
  512. package/src/query-controls/stories/index.tsx +205 -0
  513. package/src/query-controls/terms.ts +57 -0
  514. package/src/query-controls/test/{terms.js → terms.ts} +36 -20
  515. package/src/query-controls/types.ts +150 -0
  516. package/src/resizable-box/README.md +2 -2
  517. package/src/resizable-box/index.tsx +7 -6
  518. package/src/resizable-box/stories/index.tsx +92 -0
  519. package/src/responsive-wrapper/README.md +29 -0
  520. package/src/responsive-wrapper/{index.js → index.tsx} +23 -2
  521. package/src/responsive-wrapper/stories/index.tsx +38 -0
  522. package/src/responsive-wrapper/types.ts +20 -0
  523. package/src/sandbox/README.md +45 -2
  524. package/src/sandbox/{index.js → index.tsx} +47 -24
  525. package/src/sandbox/stories/index.tsx +32 -0
  526. package/src/sandbox/test/{index.js → index.tsx} +9 -4
  527. package/src/sandbox/types.ts +34 -0
  528. package/src/select-control/test/select-control.tsx +1 -6
  529. package/src/slot-fill/bubbles-virtually/fill.js +1 -0
  530. package/src/slot-fill/slot.js +1 -1
  531. package/src/slot-fill/stories/index.js +12 -17
  532. package/src/slot-fill/use-slot.js +6 -16
  533. package/src/snackbar/index.tsx +6 -5
  534. package/src/snackbar/list.tsx +4 -2
  535. package/src/snackbar/types.ts +18 -92
  536. package/src/style.scss +3 -3
  537. package/src/tab-panel/README.md +1 -0
  538. package/src/tab-panel/index.tsx +42 -6
  539. package/src/tab-panel/stories/index.tsx +20 -0
  540. package/src/tab-panel/style.scss +8 -0
  541. package/src/tab-panel/test/index.tsx +124 -7
  542. package/src/tab-panel/types.ts +11 -5
  543. package/src/theme/test/index.tsx +4 -4
  544. package/src/toggle-group-control/stories/index.tsx +1 -0
  545. package/src/toggle-group-control/test/index.tsx +7 -23
  546. package/src/toolbar/index.js +6 -52
  547. package/src/toolbar/stories/index.js +71 -75
  548. package/src/toolbar/test/index.js +1 -2
  549. package/src/{toolbar-group/test/index.js → toolbar/test/toolbar-group.js} +1 -1
  550. package/src/toolbar/{README.md → toolbar/README.md} +0 -0
  551. package/src/toolbar/toolbar/index.js +52 -0
  552. package/src/toolbar/{style.native.scss → toolbar/style.native.scss} +0 -0
  553. package/src/toolbar/{style.scss → toolbar/style.scss} +0 -0
  554. package/src/toolbar/{toolbar-container.js → toolbar/toolbar-container.js} +0 -0
  555. package/src/toolbar/{toolbar-container.native.js → toolbar/toolbar-container.native.js} +0 -0
  556. package/src/{toolbar-button → toolbar/toolbar-button}/README.md +0 -0
  557. package/src/{toolbar-button → toolbar/toolbar-button}/index.js +1 -1
  558. package/src/{toolbar-button → toolbar/toolbar-button}/style.scss +0 -0
  559. package/src/{toolbar-button → toolbar/toolbar-button}/toolbar-button-container.js +0 -0
  560. package/src/{toolbar-button → toolbar/toolbar-button}/toolbar-button-container.native.js +0 -0
  561. package/src/{toolbar-context → toolbar/toolbar-context}/index.js +0 -0
  562. package/src/{toolbar-dropdown-menu → toolbar/toolbar-dropdown-menu}/README.md +0 -0
  563. package/src/{toolbar-dropdown-menu → toolbar/toolbar-dropdown-menu}/index.js +1 -1
  564. package/src/{toolbar-group → toolbar/toolbar-group}/README.md +0 -0
  565. package/src/{toolbar-group → toolbar/toolbar-group}/index.js +0 -0
  566. package/src/{toolbar-group → toolbar/toolbar-group}/style.native.scss +0 -0
  567. package/src/{toolbar-group → toolbar/toolbar-group}/style.scss +0 -0
  568. package/src/{toolbar-group → toolbar/toolbar-group}/toolbar-group-collapsed.js +1 -1
  569. package/src/{toolbar-group → toolbar/toolbar-group}/toolbar-group-collapsed.native.js +1 -1
  570. package/src/{toolbar-group → toolbar/toolbar-group}/toolbar-group-container.js +0 -0
  571. package/src/{toolbar-group → toolbar/toolbar-group}/toolbar-group-container.native.js +0 -0
  572. package/src/{toolbar-item → toolbar/toolbar-item}/README.md +0 -0
  573. package/src/{toolbar-item → toolbar/toolbar-item}/index.js +0 -0
  574. package/src/{toolbar-item → toolbar/toolbar-item}/index.native.js +0 -0
  575. package/src/tools-panel/stories/index.js +3 -0
  576. package/src/tools-panel/test/index.js +1 -1
  577. package/src/tree-grid/index.js +3 -5
  578. package/src/tree-select/index.tsx +3 -6
  579. package/src/ui/context/test/context-connect.tsx +2 -0
  580. package/src/ui/context/test/wordpress-component.tsx +2 -0
  581. package/src/unit-control/test/index.tsx +21 -74
  582. package/src/utils/hooks/test/use-latest-ref.js +15 -18
  583. package/tsconfig.json +1 -11
  584. package/tsconfig.tsbuildinfo +1 -1
  585. package/build/toolbar/toolbar-container.native.js.map +0 -1
  586. package/build/toolbar-button/index.js.map +0 -1
  587. package/build/toolbar-button/toolbar-button-container.js.map +0 -1
  588. package/build/toolbar-button/toolbar-button-container.native.js.map +0 -1
  589. package/build/toolbar-context/index.js.map +0 -1
  590. package/build/toolbar-dropdown-menu/index.js.map +0 -1
  591. package/build/toolbar-group/index.js.map +0 -1
  592. package/build/toolbar-group/toolbar-group-collapsed.js.map +0 -1
  593. package/build/toolbar-group/toolbar-group-collapsed.native.js.map +0 -1
  594. package/build/toolbar-group/toolbar-group-container.js.map +0 -1
  595. package/build/toolbar-group/toolbar-group-container.native.js.map +0 -1
  596. package/build/toolbar-item/index.js.map +0 -1
  597. package/build/toolbar-item/index.native.js.map +0 -1
  598. package/build-module/toolbar/toolbar-container.js.map +0 -1
  599. package/build-module/toolbar/toolbar-container.native.js.map +0 -1
  600. package/build-module/toolbar-button/index.js.map +0 -1
  601. package/build-module/toolbar-button/toolbar-button-container.js.map +0 -1
  602. package/build-module/toolbar-button/toolbar-button-container.native.js.map +0 -1
  603. package/build-module/toolbar-context/index.js.map +0 -1
  604. package/build-module/toolbar-dropdown-menu/index.js.map +0 -1
  605. package/build-module/toolbar-group/index.js.map +0 -1
  606. package/build-module/toolbar-group/toolbar-group-collapsed.js.map +0 -1
  607. package/build-module/toolbar-group/toolbar-group-collapsed.native.js.map +0 -1
  608. package/build-module/toolbar-group/toolbar-group-container.js.map +0 -1
  609. package/build-module/toolbar-group/toolbar-group-container.native.js.map +0 -1
  610. package/build-module/toolbar-item/index.js.map +0 -1
  611. package/build-module/toolbar-item/index.native.js.map +0 -1
  612. package/src/button/stories/index.js +0 -179
  613. package/src/item-group/stories/index.js +0 -270
  614. package/src/keyboard-shortcuts/index.js +0 -56
  615. package/src/notice/list.js +0 -48
  616. package/src/notice/stories/index.js +0 -74
  617. package/src/query-controls/author-select.js +0 -23
  618. package/src/query-controls/category-select.js +0 -31
  619. package/src/query-controls/index.js +0 -121
  620. package/src/query-controls/terms.js +0 -40
  621. package/src/resizable-box/stories/index.js +0 -97
  622. package/src/toolbar-button/stories/index.js +0 -33
  623. package/src/toolbar-group/stories/index.js +0 -33
@@ -1,52 +1,121 @@
1
- /**
2
- * External dependencies
3
- */
4
- import { text, boolean } from '@storybook/addon-knobs';
5
-
6
1
  /**
7
2
  * Internal dependencies
8
3
  */
9
4
  import DropdownMenu from '../';
5
+ import { MenuGroup, MenuItem } from '../../';
10
6
 
11
7
  /**
12
8
  * WordPress dependencies
13
9
  */
14
- import { menu, arrowUp, arrowDown } from '@wordpress/icons';
10
+ import {
11
+ menu,
12
+ arrowUp,
13
+ arrowDown,
14
+ chevronDown,
15
+ more,
16
+ trash,
17
+ } from '@wordpress/icons';
15
18
 
16
19
  export default {
17
20
  title: 'Components/DropdownMenu',
18
21
  component: DropdownMenu,
22
+ argTypes: {
23
+ className: { control: { type: 'text' } },
24
+ children: { control: { type: null } },
25
+ disableOpenOnArrowDown: { control: { type: 'boolean' } },
26
+ icon: {
27
+ options: [ 'menu', 'chevronDown', 'more' ],
28
+ mapping: { menu, chevronDown, more },
29
+ control: { type: 'select' },
30
+ },
31
+ menuProps: {
32
+ control: { type: 'object' },
33
+ },
34
+ noIcons: { control: { type: 'boolean' } },
35
+ popoverProps: {
36
+ control: { type: 'object' },
37
+ },
38
+ text: { control: { type: 'text' } },
39
+ toggleProps: {
40
+ control: { type: 'object' },
41
+ },
42
+ },
19
43
  parameters: {
20
- knobs: { disable: false },
44
+ controls: { expanded: true },
45
+ docs: { source: { state: 'open' } },
21
46
  },
22
47
  };
23
48
 
24
- export const _default = () => {
25
- const label = text( 'Label', 'Select a direction.' );
26
- const firstMenuItemLabel = text( 'First Menu Item Label', 'Up' );
27
- const secondMenuItemLabel = text( 'First Menu Item Label', 'Down' );
28
- const toggleButtonTootip = boolean(
29
- 'Show tooltip on a toggle button',
30
- true
31
- );
49
+ const Template = ( props ) => (
50
+ <div style={ { height: 150 } }>
51
+ <DropdownMenu { ...props } />
52
+ </div>
53
+ );
32
54
 
33
- const controls = [
55
+ export const Default = Template.bind( {} );
56
+ Default.args = {
57
+ label: 'Select a direction.',
58
+ icon: menu,
59
+ controls: [
34
60
  {
35
- title: firstMenuItemLabel,
61
+ title: 'First Menu Item Label',
36
62
  icon: arrowUp,
63
+ // eslint-disable-next-line no-console
64
+ onClick: () => console.log( 'up!' ),
37
65
  },
38
66
  {
39
- title: secondMenuItemLabel,
67
+ title: 'Second Menu Item Label',
40
68
  icon: arrowDown,
69
+ // eslint-disable-next-line no-console
70
+ onClick: () => console.log( 'down!' ),
41
71
  },
42
- ];
72
+ ],
73
+ };
43
74
 
44
- return (
45
- <DropdownMenu
46
- icon={ menu }
47
- label={ label }
48
- controls={ controls }
49
- toggleProps={ { showTooltip: toggleButtonTootip } }
50
- />
51
- );
75
+ export const WithChildren = Template.bind( {} );
76
+ // Adding custom source because Storybook is not able to show the contents of
77
+ // the `children` prop correctly in the code snippet.
78
+ WithChildren.parameters = {
79
+ docs: {
80
+ source: {
81
+ code: `<DropdownMenu label="Select a direction." icon={ more }>
82
+ <MenuGroup>
83
+ <MenuItem icon={ arrowUp } onClick={ onClose }>
84
+ Move Up
85
+ </MenuItem>
86
+ <MenuItem icon={ arrowDown } onClick={ onClose }>
87
+ Move Down
88
+ </MenuItem>
89
+ </MenuGroup>
90
+ <MenuGroup>
91
+ <MenuItem icon={ trash } onClick={ onClose }>
92
+ Remove
93
+ </MenuItem>
94
+ </MenuGroup>
95
+ </DropdownMenu>`,
96
+ language: 'jsx',
97
+ type: 'auto',
98
+ },
99
+ },
100
+ };
101
+ WithChildren.args = {
102
+ label: 'Select a direction.',
103
+ icon: more,
104
+ children: ( { onClose } ) => (
105
+ <>
106
+ <MenuGroup>
107
+ <MenuItem icon={ arrowUp } onClick={ onClose }>
108
+ Move Up
109
+ </MenuItem>
110
+ <MenuItem icon={ arrowDown } onClick={ onClose }>
111
+ Move Down
112
+ </MenuItem>
113
+ </MenuGroup>
114
+ <MenuGroup>
115
+ <MenuItem icon={ trash } onClick={ onClose }>
116
+ Remove
117
+ </MenuItem>
118
+ </MenuGroup>
119
+ </>
120
+ ),
52
121
  };
@@ -15,8 +15,6 @@ import { arrowLeft, arrowRight, arrowUp, arrowDown } from '@wordpress/icons';
15
15
  import DropdownMenu from '../';
16
16
  import { MenuItem } from '../../';
17
17
 
18
- jest.useFakeTimers();
19
-
20
18
  describe( 'DropdownMenu', () => {
21
19
  it( 'should not render when neither controls nor children are assigned', () => {
22
20
  render( <DropdownMenu /> );
@@ -33,9 +31,7 @@ describe( 'DropdownMenu', () => {
33
31
  } );
34
32
 
35
33
  it( 'should open menu when pressing arrow down on the toggle and the controls prop is used to define menu items', async () => {
36
- const user = userEvent.setup( {
37
- advanceTimers: jest.advanceTimersByTime,
38
- } );
34
+ const user = userEvent.setup();
39
35
 
40
36
  const controls = [
41
37
  {
@@ -82,9 +78,7 @@ describe( 'DropdownMenu', () => {
82
78
  } );
83
79
 
84
80
  it( 'should open menu when pressing arrow down on the toggle and the children prop is used to define menu items', async () => {
85
- const user = userEvent.setup( {
86
- advanceTimers: jest.advanceTimersByTime,
87
- } );
81
+ const user = userEvent.setup();
88
82
 
89
83
  render(
90
84
  <DropdownMenu
@@ -9,12 +9,7 @@ import userEvent from '@testing-library/user-event';
9
9
  */
10
10
  import { ExternalLink } from '..';
11
11
 
12
- jest.useFakeTimers();
13
-
14
- const setupUser = () =>
15
- userEvent.setup( {
16
- advanceTimers: jest.advanceTimersByTime,
17
- } );
12
+ const setupUser = () => userEvent.setup();
18
13
 
19
14
  describe( 'ExternalLink', () => {
20
15
  test( 'should call function passed in onClick handler when clicking the link', async () => {
@@ -59,7 +59,7 @@ Image.args = {
59
59
  export const Video = Template.bind( {} );
60
60
  Video.args = {
61
61
  ...Default.args,
62
- url: 'https://interactive-examples.mdn.mozilla.net/media/examples/flower.webm',
62
+ url: 'data:video/mp4;base64,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',
63
63
  };
64
64
 
65
65
  export const Snapping = Template.bind( {} );
@@ -9,14 +9,10 @@ import userEvent from '@testing-library/user-event';
9
9
  */
10
10
  import Picker from '..';
11
11
 
12
- jest.useFakeTimers();
13
-
14
12
  describe( 'FocalPointPicker', () => {
15
13
  describe( 'focus and blur', () => {
16
14
  it( 'clicking the draggable area should focus it', async () => {
17
- const user = userEvent.setup( {
18
- advanceTimers: jest.advanceTimersByTime,
19
- } );
15
+ const user = userEvent.setup();
20
16
 
21
17
  const mockOnChange = jest.fn();
22
18
 
@@ -89,9 +85,7 @@ describe( 'FocalPointPicker', () => {
89
85
 
90
86
  describe( 'resolvePoint handling', () => {
91
87
  it( 'should allow value altering', async () => {
92
- const user = userEvent.setup( {
93
- advanceTimers: jest.advanceTimersByTime,
94
- } );
88
+ const user = userEvent.setup();
95
89
 
96
90
  const spyChange = jest.fn();
97
91
  const spy = jest.fn();
@@ -131,9 +125,7 @@ describe( 'FocalPointPicker', () => {
131
125
  expect( xInput.value ).toBe( '93' );
132
126
  } );
133
127
  it( 'call onChange with the expected values', async () => {
134
- const user = userEvent.setup( {
135
- advanceTimers: jest.advanceTimersByTime,
136
- } );
128
+ const user = userEvent.setup();
137
129
 
138
130
  const spyChange = jest.fn();
139
131
  render(
@@ -35,7 +35,10 @@ export function getExtension( filename = '' ): string {
35
35
  */
36
36
  export function isVideoType( filename: string = '' ): boolean {
37
37
  if ( ! filename ) return false;
38
- return VIDEO_EXTENSIONS.includes( getExtension( filename ) );
38
+ return (
39
+ filename.startsWith( 'data:video/' ) ||
40
+ VIDEO_EXTENSIONS.includes( getExtension( filename ) )
41
+ );
39
42
  }
40
43
 
41
44
  /**
@@ -10,8 +10,6 @@ import userEvent from '@testing-library/user-event';
10
10
  import FontSizePicker from '../';
11
11
  import type { FontSize } from '../types';
12
12
 
13
- jest.useFakeTimers();
14
-
15
13
  describe( 'FontSizePicker', () => {
16
14
  test.each( [
17
15
  // Use units when initial value uses units.
@@ -21,9 +19,7 @@ describe( 'FontSizePicker', () => {
21
19
  ] )(
22
20
  'should call onChange( $expectedValue ) after user types 80 when value is $value',
23
21
  async ( { value, expectedValue } ) => {
24
- const user = userEvent.setup( {
25
- advanceTimers: jest.advanceTimersByTime,
26
- } );
22
+ const user = userEvent.setup();
27
23
  const onChange = jest.fn();
28
24
  render(
29
25
  <FontSizePicker
@@ -48,9 +44,7 @@ describe( 'FontSizePicker', () => {
48
44
  ] )(
49
45
  'should call onChange( $expectedValue ) after user types 80 when first font size is $firstFontSize',
50
46
  async ( { firstFontSize, expectedValue } ) => {
51
- const user = userEvent.setup( {
52
- advanceTimers: jest.advanceTimersByTime,
53
- } );
47
+ const user = userEvent.setup();
54
48
  const onChange = jest.fn();
55
49
  render(
56
50
  <FontSizePicker
@@ -104,9 +98,7 @@ describe( 'FontSizePicker', () => {
104
98
  ];
105
99
 
106
100
  it( 'displays a select control', async () => {
107
- const user = userEvent.setup( {
108
- advanceTimers: jest.advanceTimersByTime,
109
- } );
101
+ const user = userEvent.setup();
110
102
  render(
111
103
  <FontSizePicker
112
104
  __nextHasNoMarginBottom
@@ -162,9 +154,7 @@ describe( 'FontSizePicker', () => {
162
154
  ] )(
163
155
  'calls onChange( $expectedArguments ) when $option is selected',
164
156
  async ( { option, value, expectedArguments } ) => {
165
- const user = userEvent.setup( {
166
- advanceTimers: jest.advanceTimersByTime,
167
- } );
157
+ const user = userEvent.setup();
168
158
  const onChange = jest.fn();
169
159
  render(
170
160
  <FontSizePicker
@@ -224,9 +214,7 @@ describe( 'FontSizePicker', () => {
224
214
  ];
225
215
 
226
216
  it( 'displays a select control', async () => {
227
- const user = userEvent.setup( {
228
- advanceTimers: jest.advanceTimersByTime,
229
- } );
217
+ const user = userEvent.setup();
230
218
  render(
231
219
  <FontSizePicker
232
220
  __nextHasNoMarginBottom
@@ -323,9 +311,7 @@ describe( 'FontSizePicker', () => {
323
311
  ] )(
324
312
  'calls onChange( $expectedValue ) when $option is selected',
325
313
  async ( { option, value, expectedArguments } ) => {
326
- const user = userEvent.setup( {
327
- advanceTimers: jest.advanceTimersByTime,
328
- } );
314
+ const user = userEvent.setup();
329
315
  const onChange = jest.fn();
330
316
  render(
331
317
  <FontSizePicker
@@ -421,9 +407,7 @@ describe( 'FontSizePicker', () => {
421
407
  );
422
408
 
423
409
  it( 'calls onChange when a font size is selected', async () => {
424
- const user = userEvent.setup( {
425
- advanceTimers: jest.advanceTimersByTime,
426
- } );
410
+ const user = userEvent.setup();
427
411
  const onChange = jest.fn();
428
412
  render(
429
413
  <FontSizePicker
@@ -523,9 +507,7 @@ describe( 'FontSizePicker', () => {
523
507
  ] )(
524
508
  'calls onChange( $expectedArguments ) when $radio is selected',
525
509
  async ( { radio, expectedArguments } ) => {
526
- const user = userEvent.setup( {
527
- advanceTimers: jest.advanceTimersByTime,
528
- } );
510
+ const user = userEvent.setup();
529
511
  const onChange = jest.fn();
530
512
  render(
531
513
  <FontSizePicker
@@ -580,9 +562,7 @@ describe( 'FontSizePicker', () => {
580
562
 
581
563
  function commonSelectTests( fontSizes: FontSize[] ) {
582
564
  it( 'shows custom input when Custom is selected', async () => {
583
- const user = userEvent.setup( {
584
- advanceTimers: jest.advanceTimersByTime,
585
- } );
565
+ const user = userEvent.setup();
586
566
  const onChange = jest.fn();
587
567
  render(
588
568
  <FontSizePicker
@@ -615,9 +595,7 @@ describe( 'FontSizePicker', () => {
615
595
  } );
616
596
 
617
597
  it( 'allows custom values by default', async () => {
618
- const user = userEvent.setup( {
619
- advanceTimers: jest.advanceTimersByTime,
620
- } );
598
+ const user = userEvent.setup();
621
599
  const onChange = jest.fn();
622
600
  render(
623
601
  <FontSizePicker
@@ -648,9 +626,7 @@ describe( 'FontSizePicker', () => {
648
626
  } );
649
627
 
650
628
  it( 'does not display a slider by default', async () => {
651
- const user = userEvent.setup( {
652
- advanceTimers: jest.advanceTimersByTime,
653
- } );
629
+ const user = userEvent.setup();
654
630
  render(
655
631
  <FontSizePicker
656
632
  __nextHasNoMarginBottom
@@ -666,9 +642,7 @@ describe( 'FontSizePicker', () => {
666
642
  } );
667
643
 
668
644
  it( 'allows a slider to be used when withSlider is set', async () => {
669
- const user = userEvent.setup( {
670
- advanceTimers: jest.advanceTimersByTime,
671
- } );
645
+ const user = userEvent.setup();
672
646
  const onChange = jest.fn();
673
647
  render(
674
648
  <FontSizePicker
@@ -690,9 +664,7 @@ describe( 'FontSizePicker', () => {
690
664
  } );
691
665
 
692
666
  it( 'allows reset by default', async () => {
693
- const user = userEvent.setup( {
694
- advanceTimers: jest.advanceTimersByTime,
695
- } );
667
+ const user = userEvent.setup();
696
668
  const onChange = jest.fn();
697
669
  render(
698
670
  <FontSizePicker
@@ -711,9 +683,7 @@ describe( 'FontSizePicker', () => {
711
683
  } );
712
684
 
713
685
  it( 'does not allow reset when withReset is false', async () => {
714
- const user = userEvent.setup( {
715
- advanceTimers: jest.advanceTimersByTime,
716
- } );
686
+ const user = userEvent.setup();
717
687
  render(
718
688
  <FontSizePicker
719
689
  __nextHasNoMarginBottom
@@ -14,8 +14,6 @@ import FormFileUpload from '..';
14
14
  */
15
15
  const { File } = window;
16
16
 
17
- jest.useFakeTimers();
18
-
19
17
  // @testing-library/user-event considers changing <input type="file"> to a string as a change, but it do not occur on real browsers, so the comparisons will be against this result
20
18
  const fakePath = expect.objectContaining( {
21
19
  target: expect.objectContaining( {
@@ -24,15 +22,6 @@ const fakePath = expect.objectContaining( {
24
22
  } );
25
23
 
26
24
  describe( 'FormFileUpload', () => {
27
- beforeEach( () => {
28
- jest.useFakeTimers();
29
- } );
30
-
31
- afterEach( () => {
32
- jest.runOnlyPendingTimers();
33
- jest.useRealTimers();
34
- } );
35
-
36
25
  it( 'should show an Icon Button and a hidden input', () => {
37
26
  render(
38
27
  <FormFileUpload onChange={ () => {} }>
@@ -47,9 +36,7 @@ describe( 'FormFileUpload', () => {
47
36
  } );
48
37
 
49
38
  it( 'should not fire a change event after selecting the same file', async () => {
50
- const user = userEvent.setup( {
51
- advanceTimers: jest.advanceTimersByTime,
52
- } );
39
+ const user = userEvent.setup();
53
40
 
54
41
  const onChange = jest.fn();
55
42
 
@@ -74,9 +61,7 @@ describe( 'FormFileUpload', () => {
74
61
  } );
75
62
 
76
63
  it( 'should fire a change event after selecting the same file if the value was reset in between', async () => {
77
- const user = userEvent.setup( {
78
- advanceTimers: jest.advanceTimersByTime,
79
- } );
64
+ const user = userEvent.setup();
80
65
 
81
66
  const onChange = jest.fn();
82
67
 
@@ -15,8 +15,6 @@ import { useState } from '@wordpress/element';
15
15
  import FormToggle, { noop } from '..';
16
16
  import type { FormToggleProps } from '../types';
17
17
 
18
- jest.useFakeTimers();
19
-
20
18
  const getInput = () => screen.getByRole( 'checkbox' ) as HTMLInputElement;
21
19
 
22
20
  const ControlledFormToggle = ( { onChange }: FormToggleProps ) => {
@@ -81,9 +79,7 @@ describe( 'FormToggle', () => {
81
79
 
82
80
  describe( 'Value', () => {
83
81
  it( 'should flip the checked property when clicked', async () => {
84
- const user = userEvent.setup( {
85
- advanceTimers: jest.advanceTimersByTime,
86
- } );
82
+ const user = userEvent.setup();
87
83
 
88
84
  const onChange = jest.fn();
89
85
  render( <ControlledFormToggle onChange={ onChange } /> );