@wordpress/components 19.1.5 → 19.2.1-next.33ec3857e2.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 (384) hide show
  1. package/CHANGELOG.md +40 -3
  2. package/build/angle-picker-control/index.js +2 -0
  3. package/build/angle-picker-control/index.js.map +1 -1
  4. package/build/button/index.native.js +13 -3
  5. package/build/button/index.native.js.map +1 -1
  6. package/build/checkbox-control/index.js +1 -1
  7. package/build/checkbox-control/index.js.map +1 -1
  8. package/build/clipboard-button/index.js +1 -2
  9. package/build/clipboard-button/index.js.map +1 -1
  10. package/build/color-palette/index.js +12 -0
  11. package/build/color-palette/index.js.map +1 -1
  12. package/build/color-picker/color-display.js +4 -2
  13. package/build/color-picker/color-display.js.map +1 -1
  14. package/build/color-picker/hex-input.js +3 -1
  15. package/build/color-picker/hex-input.js.map +1 -1
  16. package/build/color-picker/input-with-slider.js +3 -1
  17. package/build/color-picker/input-with-slider.js.map +1 -1
  18. package/build/confirm-dialog/component.js +103 -0
  19. package/build/confirm-dialog/component.js.map +1 -0
  20. package/build/confirm-dialog/index.js +16 -0
  21. package/build/confirm-dialog/index.js.map +1 -0
  22. package/build/confirm-dialog/types.js +6 -0
  23. package/build/confirm-dialog/types.js.map +1 -0
  24. package/build/custom-gradient-picker/index.js +1 -0
  25. package/build/custom-gradient-picker/index.js.map +1 -1
  26. package/build/date-time/date.js +63 -86
  27. package/build/date-time/date.js.map +1 -1
  28. package/build/date-time/utils.js +32 -0
  29. package/build/date-time/utils.js.map +1 -0
  30. package/build/divider/component.js +8 -7
  31. package/build/divider/component.js.map +1 -1
  32. package/build/divider/styles.js +38 -13
  33. package/build/divider/styles.js.map +1 -1
  34. package/build/drop-zone/index.js +14 -6
  35. package/build/drop-zone/index.js.map +1 -1
  36. package/build/drop-zone/provider.js +1 -0
  37. package/build/drop-zone/provider.js.map +1 -1
  38. package/build/flyout/styles.js +2 -2
  39. package/build/flyout/styles.js.map +1 -1
  40. package/build/focusable-iframe/index.js +1 -0
  41. package/build/focusable-iframe/index.js.map +1 -1
  42. package/build/font-size-picker/index.js +10 -9
  43. package/build/font-size-picker/index.js.map +1 -1
  44. package/build/font-size-picker/utils.js +28 -17
  45. package/build/font-size-picker/utils.js.map +1 -1
  46. package/build/higher-order/with-focus-outside/index.js +2 -0
  47. package/build/higher-order/with-focus-outside/index.js.map +1 -1
  48. package/build/index.js +8 -0
  49. package/build/index.js.map +1 -1
  50. package/build/input-control/styles/input-control-styles.js +44 -32
  51. package/build/input-control/styles/input-control-styles.js.map +1 -1
  52. package/build/mobile/bottom-sheet/link-suggestion-item-cell.native.js +10 -3
  53. package/build/mobile/bottom-sheet/link-suggestion-item-cell.native.js.map +1 -1
  54. package/build/mobile/color-settings/index.native.js +4 -2
  55. package/build/mobile/color-settings/index.native.js.map +1 -1
  56. package/build/mobile/color-settings/palette.screen.native.js +7 -6
  57. package/build/mobile/color-settings/palette.screen.native.js.map +1 -1
  58. package/build/mobile/global-styles-context/utils.native.js +1 -1
  59. package/build/mobile/global-styles-context/utils.native.js.map +1 -1
  60. package/build/mobile/gridicons/index.native.js +3 -1
  61. package/build/mobile/gridicons/index.native.js.map +1 -1
  62. package/build/mobile/link-picker/index.native.js +45 -4
  63. package/build/mobile/link-picker/index.native.js.map +1 -1
  64. package/build/mobile/link-settings/index.native.js +10 -0
  65. package/build/mobile/link-settings/index.native.js.map +1 -1
  66. package/build/modal/aria-helper.js +2 -0
  67. package/build/modal/aria-helper.js.map +1 -1
  68. package/build/modal/index.js +17 -8
  69. package/build/modal/index.js.map +1 -1
  70. package/build/select-control/styles/select-control-styles.js +33 -9
  71. package/build/select-control/styles/select-control-styles.js.map +1 -1
  72. package/build/style-provider/index.js +2 -0
  73. package/build/style-provider/index.js.map +1 -1
  74. package/build/toggle-group-control/toggle-group-control/component.js +7 -2
  75. package/build/toggle-group-control/toggle-group-control/component.js.map +1 -1
  76. package/build/toggle-group-control/toggle-group-control/toggle-group-control-backdrop.js +25 -14
  77. package/build/toggle-group-control/toggle-group-control/toggle-group-control-backdrop.js.map +1 -1
  78. package/build/tools-panel/styles.js +12 -10
  79. package/build/tools-panel/styles.js.map +1 -1
  80. package/build/tools-panel/tools-panel/component.js +6 -8
  81. package/build/tools-panel/tools-panel/component.js.map +1 -1
  82. package/build/tools-panel/tools-panel/hook.js +48 -17
  83. package/build/tools-panel/tools-panel/hook.js.map +1 -1
  84. package/build/tools-panel/tools-panel-item/hook.js +5 -1
  85. package/build/tools-panel/tools-panel-item/hook.js.map +1 -1
  86. package/build/unit-control/styles/unit-control-styles.js +23 -41
  87. package/build/unit-control/styles/unit-control-styles.js.map +1 -1
  88. package/build/z-stack/component.js.map +1 -1
  89. package/build/z-stack/styles.js +10 -8
  90. package/build/z-stack/styles.js.map +1 -1
  91. package/build-module/angle-picker-control/index.js +2 -0
  92. package/build-module/angle-picker-control/index.js.map +1 -1
  93. package/build-module/button/index.native.js +13 -3
  94. package/build-module/button/index.native.js.map +1 -1
  95. package/build-module/checkbox-control/index.js +1 -1
  96. package/build-module/checkbox-control/index.js.map +1 -1
  97. package/build-module/clipboard-button/index.js +1 -2
  98. package/build-module/clipboard-button/index.js.map +1 -1
  99. package/build-module/color-palette/index.js +13 -1
  100. package/build-module/color-palette/index.js.map +1 -1
  101. package/build-module/color-picker/color-display.js +3 -2
  102. package/build-module/color-picker/color-display.js.map +1 -1
  103. package/build-module/color-picker/hex-input.js +2 -1
  104. package/build-module/color-picker/hex-input.js.map +1 -1
  105. package/build-module/color-picker/input-with-slider.js +2 -1
  106. package/build-module/color-picker/input-with-slider.js.map +1 -1
  107. package/build-module/confirm-dialog/component.js +84 -0
  108. package/build-module/confirm-dialog/component.js.map +1 -0
  109. package/build-module/confirm-dialog/index.js +6 -0
  110. package/build-module/confirm-dialog/index.js.map +1 -0
  111. package/build-module/confirm-dialog/types.js +2 -0
  112. package/build-module/confirm-dialog/types.js.map +1 -0
  113. package/build-module/custom-gradient-picker/index.js +1 -0
  114. package/build-module/custom-gradient-picker/index.js.map +1 -1
  115. package/build-module/date-time/date.js +63 -87
  116. package/build-module/date-time/date.js.map +1 -1
  117. package/build-module/date-time/utils.js +20 -0
  118. package/build-module/date-time/utils.js.map +1 -0
  119. package/build-module/divider/component.js +8 -7
  120. package/build-module/divider/component.js.map +1 -1
  121. package/build-module/divider/styles.js +37 -13
  122. package/build-module/divider/styles.js.map +1 -1
  123. package/build-module/drop-zone/index.js +14 -6
  124. package/build-module/drop-zone/index.js.map +1 -1
  125. package/build-module/drop-zone/provider.js +1 -0
  126. package/build-module/drop-zone/provider.js.map +1 -1
  127. package/build-module/flyout/styles.js +2 -2
  128. package/build-module/flyout/styles.js.map +1 -1
  129. package/build-module/focusable-iframe/index.js +1 -0
  130. package/build-module/focusable-iframe/index.js.map +1 -1
  131. package/build-module/font-size-picker/index.js +10 -9
  132. package/build-module/font-size-picker/index.js.map +1 -1
  133. package/build-module/font-size-picker/utils.js +28 -17
  134. package/build-module/font-size-picker/utils.js.map +1 -1
  135. package/build-module/higher-order/with-focus-outside/index.js +1 -0
  136. package/build-module/higher-order/with-focus-outside/index.js.map +1 -1
  137. package/build-module/index.js +1 -0
  138. package/build-module/index.js.map +1 -1
  139. package/build-module/input-control/styles/input-control-styles.js +44 -32
  140. package/build-module/input-control/styles/input-control-styles.js.map +1 -1
  141. package/build-module/mobile/bottom-sheet/link-suggestion-item-cell.native.js +10 -4
  142. package/build-module/mobile/bottom-sheet/link-suggestion-item-cell.native.js.map +1 -1
  143. package/build-module/mobile/color-settings/index.native.js +4 -2
  144. package/build-module/mobile/color-settings/index.native.js.map +1 -1
  145. package/build-module/mobile/color-settings/palette.screen.native.js +7 -6
  146. package/build-module/mobile/color-settings/palette.screen.native.js.map +1 -1
  147. package/build-module/mobile/global-styles-context/utils.native.js +1 -1
  148. package/build-module/mobile/global-styles-context/utils.native.js.map +1 -1
  149. package/build-module/mobile/gridicons/index.native.js +1 -0
  150. package/build-module/mobile/gridicons/index.native.js.map +1 -1
  151. package/build-module/mobile/link-picker/index.native.js +50 -8
  152. package/build-module/mobile/link-picker/index.native.js.map +1 -1
  153. package/build-module/mobile/link-settings/index.native.js +10 -0
  154. package/build-module/mobile/link-settings/index.native.js.map +1 -1
  155. package/build-module/modal/aria-helper.js +2 -0
  156. package/build-module/modal/aria-helper.js.map +1 -1
  157. package/build-module/modal/index.js +15 -8
  158. package/build-module/modal/index.js.map +1 -1
  159. package/build-module/select-control/styles/select-control-styles.js +33 -9
  160. package/build-module/select-control/styles/select-control-styles.js.map +1 -1
  161. package/build-module/style-provider/index.js +1 -0
  162. package/build-module/style-provider/index.js.map +1 -1
  163. package/build-module/toggle-group-control/toggle-group-control/component.js +8 -3
  164. package/build-module/toggle-group-control/toggle-group-control/component.js.map +1 -1
  165. package/build-module/toggle-group-control/toggle-group-control/toggle-group-control-backdrop.js +25 -14
  166. package/build-module/toggle-group-control/toggle-group-control/toggle-group-control-backdrop.js.map +1 -1
  167. package/build-module/tools-panel/styles.js +12 -11
  168. package/build-module/tools-panel/styles.js.map +1 -1
  169. package/build-module/tools-panel/tools-panel/component.js +5 -8
  170. package/build-module/tools-panel/tools-panel/component.js.map +1 -1
  171. package/build-module/tools-panel/tools-panel/hook.js +48 -17
  172. package/build-module/tools-panel/tools-panel/hook.js.map +1 -1
  173. package/build-module/tools-panel/tools-panel-item/hook.js +5 -1
  174. package/build-module/tools-panel/tools-panel-item/hook.js.map +1 -1
  175. package/build-module/unit-control/styles/unit-control-styles.js +23 -41
  176. package/build-module/unit-control/styles/unit-control-styles.js.map +1 -1
  177. package/build-module/z-stack/component.js.map +1 -1
  178. package/build-module/z-stack/styles.js +13 -8
  179. package/build-module/z-stack/styles.js.map +1 -1
  180. package/build-style/style-rtl.css +23 -11
  181. package/build-style/style.css +23 -11
  182. package/build-types/base-field/hook.d.ts +16 -16
  183. package/build-types/card/card/hook.d.ts +16 -16
  184. package/build-types/card/card-body/hook.d.ts +16 -16
  185. package/build-types/card/card-divider/hook.d.ts +18 -18
  186. package/build-types/card/card-footer/hook.d.ts +17 -17
  187. package/build-types/card/card-header/hook.d.ts +16 -16
  188. package/build-types/card/card-media/hook.d.ts +16 -16
  189. package/build-types/divider/component.d.ts +8 -7
  190. package/build-types/divider/component.d.ts.map +1 -1
  191. package/build-types/divider/styles.d.ts +2 -2
  192. package/build-types/divider/styles.d.ts.map +1 -1
  193. package/build-types/divider/types.d.ts +5 -5
  194. package/build-types/divider/types.d.ts.map +1 -1
  195. package/build-types/elevation/hook.d.ts +15 -15
  196. package/build-types/flex/flex/hook.d.ts +16 -16
  197. package/build-types/flex/flex-block/hook.d.ts +16 -16
  198. package/build-types/flex/flex-item/hook.d.ts +16 -16
  199. package/build-types/flyout/flyout/hook.d.ts +17 -17
  200. package/build-types/flyout/styles.d.ts +7 -9
  201. package/build-types/flyout/styles.d.ts.map +1 -1
  202. package/build-types/grid/hook.d.ts +16 -16
  203. package/build-types/h-stack/hook.d.ts +16 -16
  204. package/build-types/heading/hook.d.ts +16 -16
  205. package/build-types/input-control/index.d.ts +1 -1
  206. package/build-types/input-control/index.d.ts.map +1 -1
  207. package/build-types/input-control/input-field.d.ts +1 -1
  208. package/build-types/input-control/input-field.d.ts.map +1 -1
  209. package/build-types/input-control/styles/input-control-styles.d.ts +1 -2
  210. package/build-types/input-control/styles/input-control-styles.d.ts.map +1 -1
  211. package/build-types/input-control/types.d.ts +2 -1
  212. package/build-types/input-control/types.d.ts.map +1 -1
  213. package/build-types/item-group/item/hook.d.ts +16 -16
  214. package/build-types/item-group/item-group/hook.d.ts +16 -16
  215. package/build-types/number-control/styles/number-control-styles.d.ts +1 -1
  216. package/build-types/scrollable/hook.d.ts +16 -16
  217. package/build-types/select-control/styles/select-control-styles.d.ts.map +1 -1
  218. package/build-types/select-control/types.d.ts +1 -1
  219. package/build-types/select-control/types.d.ts.map +1 -1
  220. package/build-types/spacer/hook.d.ts +16 -16
  221. package/build-types/surface/hook.d.ts +16 -16
  222. package/build-types/text/hook.d.ts +16 -16
  223. package/build-types/toggle-group-control/toggle-group-control/component.d.ts.map +1 -1
  224. package/build-types/toggle-group-control/toggle-group-control/toggle-group-control-backdrop.d.ts.map +1 -1
  225. package/build-types/tools-panel/styles.d.ts.map +1 -1
  226. package/build-types/tools-panel/tools-panel/component.d.ts.map +1 -1
  227. package/build-types/tools-panel/tools-panel/hook.d.ts +16 -16
  228. package/build-types/tools-panel/tools-panel/hook.d.ts.map +1 -1
  229. package/build-types/tools-panel/tools-panel-header/hook.d.ts +16 -16
  230. package/build-types/tools-panel/tools-panel-item/hook.d.ts +16 -16
  231. package/build-types/tools-panel/tools-panel-item/hook.d.ts.map +1 -1
  232. package/build-types/tools-panel/types.d.ts +2 -1
  233. package/build-types/tools-panel/types.d.ts.map +1 -1
  234. package/build-types/truncate/hook.d.ts +16 -16
  235. package/build-types/ui/control-group/hook.d.ts +18 -18
  236. package/build-types/ui/control-label/hook.d.ts +16 -16
  237. package/build-types/ui/form-group/form-group.d.ts +4 -4
  238. package/build-types/ui/form-group/use-form-group.d.ts +55 -55
  239. package/build-types/unit-control/index.d.ts +1 -1
  240. package/build-types/unit-control/index.d.ts.map +1 -1
  241. package/build-types/unit-control/styles/unit-control-styles.d.ts +1 -0
  242. package/build-types/unit-control/styles/unit-control-styles.d.ts.map +1 -1
  243. package/build-types/unit-control/types.d.ts +2 -2
  244. package/build-types/unit-control/types.d.ts.map +1 -1
  245. package/build-types/v-stack/hook.d.ts +16 -16
  246. package/build-types/z-stack/component.d.ts +1 -1
  247. package/build-types/z-stack/styles.d.ts.map +1 -1
  248. package/package.json +21 -23
  249. package/src/alignment-matrix-control/stories/index.js +1 -1
  250. package/src/angle-picker-control/index.js +2 -0
  251. package/src/base-control/stories/index.js +1 -1
  252. package/src/button/index.native.js +15 -1
  253. package/src/button/stories/index.js +1 -1
  254. package/src/button/style.scss +14 -0
  255. package/src/card/card/README.md +3 -3
  256. package/src/card/stories/index.js +1 -1
  257. package/src/card/test/__snapshots__/index.js.snap +6 -6
  258. package/src/checkbox-control/index.js +1 -1
  259. package/src/checkbox-control/stories/index.js +1 -1
  260. package/src/clipboard-button/index.js +1 -2
  261. package/src/color-indicator/stories/index.js +1 -1
  262. package/src/color-indicator/style.scss +5 -8
  263. package/src/color-palette/index.js +10 -1
  264. package/src/color-palette/stories/index.js +1 -1
  265. package/src/color-palette/test/__snapshots__/index.js.snap +1 -0
  266. package/src/color-picker/color-display.tsx +3 -2
  267. package/src/color-picker/hex-input.tsx +2 -1
  268. package/src/color-picker/input-with-slider.tsx +2 -1
  269. package/src/color-picker/stories/index.js +1 -1
  270. package/src/combobox-control/README.md +2 -2
  271. package/src/confirm-dialog/README.md +128 -0
  272. package/src/confirm-dialog/component.tsx +114 -0
  273. package/src/confirm-dialog/index.tsx +6 -0
  274. package/src/confirm-dialog/stories/index.js +120 -0
  275. package/src/confirm-dialog/test/index.js +302 -0
  276. package/src/confirm-dialog/types.ts +26 -0
  277. package/src/custom-gradient-picker/index.js +1 -0
  278. package/src/custom-gradient-picker/style.scss +0 -4
  279. package/src/date-time/README.md +7 -0
  280. package/src/date-time/date.js +67 -84
  281. package/src/date-time/stories/index.js +1 -1
  282. package/src/date-time/stories/time.js +1 -1
  283. package/src/date-time/test/date.js +3 -29
  284. package/src/date-time/test/utils.js +32 -0
  285. package/src/date-time/utils.js +18 -0
  286. package/src/dimension-control/README.md +1 -1
  287. package/src/divider/README.md +33 -5
  288. package/src/divider/component.tsx +8 -7
  289. package/src/divider/stories/index.js +43 -17
  290. package/src/divider/styles.ts +53 -16
  291. package/src/divider/test/__snapshots__/index.js.snap +11 -11
  292. package/src/divider/test/index.js +4 -4
  293. package/src/divider/types.ts +5 -5
  294. package/src/drop-zone/index.js +14 -6
  295. package/src/drop-zone/provider.js +1 -0
  296. package/src/dropdown-menu/stories/index.js +1 -1
  297. package/src/duotone-picker/README.md +1 -1
  298. package/src/elevation/stories/index.js +1 -1
  299. package/src/external-link/stories/index.js +1 -1
  300. package/src/flyout/styles.ts +4 -2
  301. package/src/focusable-iframe/index.js +1 -0
  302. package/src/font-size-picker/index.js +27 -13
  303. package/src/font-size-picker/stories/index.js +63 -1
  304. package/src/font-size-picker/test/index.js +87 -0
  305. package/src/font-size-picker/test/util.js +74 -0
  306. package/src/font-size-picker/utils.js +31 -17
  307. package/src/form-token-field/stories/index.js +1 -1
  308. package/src/gradient-picker/stories/index.js +1 -1
  309. package/src/grid/stories/index.js +1 -1
  310. package/src/guide/stories/index.js +1 -1
  311. package/src/higher-order/with-focus-outside/index.js +2 -0
  312. package/src/icon/stories/index.js +1 -1
  313. package/src/index.js +1 -0
  314. package/src/input-control/stories/index.js +2 -1
  315. package/src/input-control/styles/input-control-styles.tsx +16 -6
  316. package/src/input-control/types.ts +3 -1
  317. package/src/item-group/stories/index.js +84 -2
  318. package/src/menu-item/README.md +2 -2
  319. package/src/mobile/bottom-sheet/link-suggestion-item-cell.native.js +6 -2
  320. package/src/mobile/color-settings/index.native.js +2 -0
  321. package/src/mobile/color-settings/palette.screen.native.js +8 -5
  322. package/src/mobile/color-settings/style.native.scss +1 -1
  323. package/src/mobile/global-styles-context/utils.native.js +1 -1
  324. package/src/mobile/gridicons/index.native.js +3 -3
  325. package/src/mobile/inserter-button/style.native.scss +1 -0
  326. package/src/mobile/link-picker/index.native.js +41 -7
  327. package/src/mobile/link-settings/index.native.js +11 -0
  328. package/src/mobile/link-settings/test/edit.native.js +432 -0
  329. package/src/modal/README.md +10 -0
  330. package/src/modal/aria-helper.js +2 -0
  331. package/src/modal/index.js +72 -55
  332. package/src/modal/stories/index.js +6 -1
  333. package/src/modal/style.scss +9 -0
  334. package/src/modal/test/index.js +11 -0
  335. package/src/navigation/README.md +0 -9
  336. package/src/notice/stories/index.js +1 -1
  337. package/src/number-control/stories/index.js +1 -1
  338. package/src/panel/stories/index.js +1 -1
  339. package/src/placeholder/stories/index.js +1 -1
  340. package/src/popover/stories/index.js +1 -1
  341. package/src/query-controls/README.md +138 -6
  342. package/src/radio-group/README.md +4 -1
  343. package/src/range-control/stories/index.js +1 -1
  344. package/src/resizable-box/stories/index.js +1 -1
  345. package/src/scrollable/stories/index.js +1 -1
  346. package/src/search-control/stories/index.js +1 -1
  347. package/src/select-control/stories/index.js +2 -1
  348. package/src/select-control/styles/select-control-styles.ts +25 -2
  349. package/src/select-control/types.ts +1 -1
  350. package/src/slot-fill/stories/index.js +1 -1
  351. package/src/snackbar/stories/index.js +1 -1
  352. package/src/spacer/stories/index.js +1 -1
  353. package/src/style-provider/index.js +2 -0
  354. package/src/surface/stories/index.js +1 -1
  355. package/src/tab-panel/stories/index.js +1 -1
  356. package/src/text-control/stories/index.js +1 -1
  357. package/src/text-highlight/stories/index.js +1 -1
  358. package/src/textarea-control/stories/index.js +1 -1
  359. package/src/tip/stories/index.js +1 -1
  360. package/src/toggle-control/stories/index.js +1 -1
  361. package/src/toggle-group-control/stories/index.js +1 -1
  362. package/src/toggle-group-control/toggle-group-control/component.tsx +7 -2
  363. package/src/toggle-group-control/toggle-group-control/toggle-group-control-backdrop.tsx +24 -9
  364. package/src/toolbar-button/stories/index.js +1 -1
  365. package/src/tools-panel/stories/index.js +237 -0
  366. package/src/tools-panel/styles.ts +41 -1
  367. package/src/tools-panel/test/index.js +234 -1
  368. package/src/tools-panel/tools-panel/README.md +9 -0
  369. package/src/tools-panel/tools-panel/component.tsx +2 -5
  370. package/src/tools-panel/tools-panel/hook.ts +50 -18
  371. package/src/tools-panel/tools-panel-item/hook.ts +5 -1
  372. package/src/tools-panel/types.ts +5 -1
  373. package/src/tooltip/stories/index.js +1 -1
  374. package/src/tree-select/stories/index.js +1 -1
  375. package/src/truncate/stories/index.js +1 -1
  376. package/src/unit-control/stories/index.js +19 -1
  377. package/src/unit-control/styles/unit-control-styles.ts +33 -46
  378. package/src/unit-control/types.ts +5 -2
  379. package/src/z-stack/README.md +1 -1
  380. package/src/z-stack/component.tsx +1 -1
  381. package/src/z-stack/stories/index.js +1 -1
  382. package/src/z-stack/styles.ts +7 -2
  383. package/tsconfig.json +6 -2
  384. package/tsconfig.tsbuildinfo +1 -1
@@ -25,6 +25,11 @@ displaying by default through the `isShownByDefault` prop. Determining whether a
25
25
  child has a value is done via the `hasValue` function provided through the
26
26
  child's props.
27
27
 
28
+ Components that are not wrapped within a `ToolsPanelItem` are still rendered
29
+ however they will not be represented within, or controlled by, the `ToolsPanel`
30
+ menu. An example scenario that benefits from this could be displaying
31
+ introduction or help text within a panel.
32
+
28
33
  ## Usage
29
34
 
30
35
  ```jsx
@@ -51,6 +56,10 @@ export function DimensionPanel( props ) {
51
56
 
52
57
  return (
53
58
  <ToolsPanel label={ __( 'Dimensions' ) } resetAll={ resetAll }>
59
+ <p>
60
+ Select dimensions or spacing related settings from the menu for
61
+ additional controls.
62
+ </p>
54
63
  { ! isPaddingDisabled && (
55
64
  <ToolsPanelItem
56
65
  hasValue={ () => hasPaddingValue( props ) }
@@ -24,14 +24,11 @@ const ToolsPanel = (
24
24
  panelContext,
25
25
  resetAllItems,
26
26
  toggleItem,
27
- className,
27
+ ...toolsPanelProps
28
28
  } = useToolsPanel( props );
29
29
 
30
- // Props are not directly passed through to avoid exposing Grid props
31
- // until agreement has been reached on how ToolsPanel layout should be
32
- // handled.
33
30
  return (
34
- <Grid columns={ 2 } className={ className } ref={ forwardedRef }>
31
+ <Grid { ...toolsPanelProps } columns={ 2 } ref={ forwardedRef }>
35
32
  <ToolsPanelContext.Provider value={ panelContext }>
36
33
  <ToolsPanelHeader
37
34
  label={ label }
@@ -22,12 +22,21 @@ const DEFAULT_COLUMNS = 2;
22
22
  const generateMenuItems = ( {
23
23
  panelItems,
24
24
  shouldReset,
25
+ currentMenuItems,
25
26
  }: ToolsPanelMenuItemsConfig ) => {
26
27
  const menuItems: ToolsPanelMenuItems = { default: {}, optional: {} };
27
28
 
28
29
  panelItems.forEach( ( { hasValue, isShownByDefault, label } ) => {
29
30
  const group = isShownByDefault ? 'default' : 'optional';
30
- menuItems[ group ][ label ] = shouldReset ? false : hasValue();
31
+
32
+ // If a menu item for this label already exists, do not overwrite its value.
33
+ // This can cause default controls that have been flagged as customized to
34
+ // lose their value.
35
+ const existingItemValue = currentMenuItems?.[ group ]?.[ label ];
36
+ const value =
37
+ existingItemValue !== undefined ? existingItemValue : hasValue();
38
+
39
+ menuItems[ group ][ label ] = shouldReset ? false : value;
31
40
  } );
32
41
 
33
42
  return menuItems;
@@ -62,7 +71,19 @@ export function useToolsPanel(
62
71
  const [ panelItems, setPanelItems ] = useState< ToolsPanelItem[] >( [] );
63
72
 
64
73
  const registerPanelItem = ( item: ToolsPanelItem ) => {
65
- setPanelItems( ( items ) => [ ...items, item ] );
74
+ setPanelItems( ( items ) => {
75
+ const newItems = [ ...items ];
76
+ // If an item with this label is already registered, remove it first.
77
+ // This can happen when an item is moved between the default and optional
78
+ // groups.
79
+ const existingIndex = newItems.findIndex(
80
+ ( oldItem ) => oldItem.label === item.label
81
+ );
82
+ if ( existingIndex !== -1 ) {
83
+ newItems.splice( existingIndex, 1 );
84
+ }
85
+ return [ ...newItems, item ];
86
+ } );
66
87
  };
67
88
 
68
89
  // Panels need to deregister on unmount to avoid orphans in menu state.
@@ -72,11 +93,16 @@ export function useToolsPanel(
72
93
  // controls, e.g. both panels have a "padding" control, the
73
94
  // deregistration of the first panel doesn't occur until after the
74
95
  // registration of the next.
75
- const index = panelItems.findIndex( ( item ) => item.label === label );
76
-
77
- if ( index !== -1 ) {
78
- setPanelItems( ( items ) => items.splice( index, 1 ) );
79
- }
96
+ setPanelItems( ( items ) => {
97
+ const newItems = [ ...items ];
98
+ const index = newItems.findIndex(
99
+ ( item ) => item.label === label
100
+ );
101
+ if ( index !== -1 ) {
102
+ newItems.splice( index, 1 );
103
+ }
104
+ return newItems;
105
+ } );
80
106
  };
81
107
 
82
108
  // Manage and share display state of menu items representing child controls.
@@ -87,27 +113,33 @@ export function useToolsPanel(
87
113
 
88
114
  // Setup menuItems state as panel items register themselves.
89
115
  useEffect( () => {
90
- const items = generateMenuItems( {
91
- panelItems,
92
- shouldReset: false,
116
+ setMenuItems( ( prevState ) => {
117
+ const items = generateMenuItems( {
118
+ panelItems,
119
+ shouldReset: false,
120
+ currentMenuItems: prevState,
121
+ } );
122
+ return items;
93
123
  } );
94
- setMenuItems( items );
95
124
  }, [ panelItems ] );
96
125
 
97
126
  // Force a menu item to be checked.
98
127
  // This is intended for use with default panel items. They are displayed
99
128
  // separately to optional items and have different display states,
100
- //.we need to update that when their value is customized.
129
+ // we need to update that when their value is customized.
101
130
  const flagItemCustomization = (
102
131
  label: string,
103
132
  group: ToolsPanelMenuItemKey = 'default'
104
133
  ) => {
105
- setMenuItems( {
106
- ...menuItems,
107
- [ group ]: {
108
- ...menuItems[ group ],
109
- [ label ]: true,
110
- },
134
+ setMenuItems( ( items ) => {
135
+ const newState = {
136
+ ...items,
137
+ [ group ]: {
138
+ ...items[ group ],
139
+ [ label ]: true,
140
+ },
141
+ };
142
+ return newState;
111
143
  } );
112
144
  };
113
145
 
@@ -54,7 +54,11 @@ export function useToolsPanelItem(
54
54
  } );
55
55
  }
56
56
 
57
- return () => deregisterPanelItem( label );
57
+ return () => {
58
+ if ( currentPanelId === panelId ) {
59
+ deregisterPanelItem( label );
60
+ }
61
+ };
58
62
  }, [
59
63
  currentPanelId,
60
64
  panelId,
@@ -124,7 +124,10 @@ export type ToolsPanelContext = {
124
124
  hasMenuItems: boolean;
125
125
  registerPanelItem: ( item: ToolsPanelItem ) => void;
126
126
  deregisterPanelItem: ( label: string ) => void;
127
- flagItemCustomization: ( label: string ) => void;
127
+ flagItemCustomization: (
128
+ label: string,
129
+ group?: ToolsPanelMenuItemKey
130
+ ) => void;
128
131
  isResetting: boolean;
129
132
  shouldRenderPlaceholderItems: boolean;
130
133
  areAllOptionalControlsHidden: boolean;
@@ -139,4 +142,5 @@ export type ToolsPanelControlsGroupProps = {
139
142
  export type ToolsPanelMenuItemsConfig = {
140
143
  panelItems: ToolsPanelItem[];
141
144
  shouldReset: boolean;
145
+ currentMenuItems?: ToolsPanelMenuItems;
142
146
  };
@@ -18,7 +18,7 @@ export default {
18
18
  title: 'Components/ToolTip',
19
19
  component: Tooltip,
20
20
  parameters: {
21
- knobs: { disabled: false },
21
+ knobs: { disable: false },
22
22
  },
23
23
  };
24
24
 
@@ -17,7 +17,7 @@ export default {
17
17
  title: 'Components/TreeSelect',
18
18
  component: TreeSelect,
19
19
  parameters: {
20
- knobs: { disabled: false },
20
+ knobs: { disable: false },
21
21
  },
22
22
  };
23
23
 
@@ -12,7 +12,7 @@ export default {
12
12
  component: Truncate,
13
13
  title: 'Components (Experimental)/Truncate',
14
14
  parameters: {
15
- knobs: { disabled: false },
15
+ knobs: { disable: false },
16
16
  },
17
17
  };
18
18
 
@@ -19,7 +19,7 @@ export default {
19
19
  title: 'Components/UnitControl',
20
20
  component: UnitControl,
21
21
  parameters: {
22
- knobs: { disabled: false },
22
+ knobs: { disable: false },
23
23
  },
24
24
  };
25
25
 
@@ -45,6 +45,7 @@ function Example() {
45
45
  {
46
46
  default: 'default',
47
47
  small: 'small',
48
+ '__unstable-large': '__unstable-large',
48
49
  },
49
50
  'default'
50
51
  ),
@@ -67,6 +68,23 @@ export const _default = () => {
67
68
  return <Example />;
68
69
  };
69
70
 
71
+ export const WithSingleUnit = ( props ) => {
72
+ const [ value, setValue ] = useState( '10px' );
73
+ return (
74
+ <ControlWrapperView>
75
+ <UnitControl
76
+ { ...props }
77
+ value={ value }
78
+ onChange={ ( v ) => setValue( v ) }
79
+ />
80
+ </ControlWrapperView>
81
+ );
82
+ };
83
+ WithSingleUnit.args = {
84
+ label: 'Value',
85
+ units: CSS_UNITS.slice( 0, 1 ),
86
+ };
87
+
70
88
  export function WithCustomUnits() {
71
89
  const [ value, setValue ] = useState( '10km' );
72
90
 
@@ -18,6 +18,7 @@ type SelectProps = {
18
18
 
19
19
  type InputProps = {
20
20
  disableUnits?: boolean;
21
+ size: SelectSize;
21
22
  };
22
23
 
23
24
  export const Root = styled.div`
@@ -25,11 +26,21 @@ export const Root = styled.div`
25
26
  position: relative;
26
27
  `;
27
28
 
28
- const paddingStyles = ( { disableUnits }: InputProps ) => {
29
- const value = disableUnits ? 3 : 24;
29
+ const paddingStyles = ( { disableUnits, size }: InputProps ) => {
30
+ const paddings = {
31
+ default: {
32
+ paddingRight: 8,
33
+ },
34
+ small: {
35
+ paddingRight: 8,
36
+ },
37
+ '__unstable-large': {
38
+ paddingRight: disableUnits ? 16 : 8,
39
+ },
40
+ };
30
41
 
31
42
  return css`
32
- ${ rtl( { paddingRight: value } )() };
43
+ ${ rtl( paddings[ size ] )() };
33
44
  `;
34
45
  };
35
46
 
@@ -62,49 +73,24 @@ export const ValueInput = styled( NumberControl )`
62
73
  }
63
74
  `;
64
75
 
65
- const unitSizeStyles = ( { selectSize }: SelectProps ) => {
66
- const sizes = {
67
- default: {
68
- height: 28,
69
- lineHeight: '24px',
70
- minHeight: 28,
71
- top: 1,
72
- },
73
- small: {
74
- height: 22,
75
- lineHeight: '18px',
76
- minHeight: 22,
77
- top: 1,
78
- },
79
- };
80
-
81
- return css( sizes[ selectSize ] );
82
- };
83
-
84
- const baseUnitLabelStyles = ( props: SelectProps ) => {
85
- return css`
86
- appearance: none;
87
- background: transparent;
88
- border-radius: 2px;
89
- border: none;
90
- box-sizing: border-box;
91
- color: ${ COLORS.darkGray[ 500 ] };
92
- display: block;
93
- font-size: 8px;
94
- line-height: 1;
95
- letter-spacing: -0.5px;
96
- outline: none;
97
- padding: 2px 1px;
98
- position: absolute;
99
- text-align-last: center;
100
- text-transform: uppercase;
101
- width: 20px;
102
-
103
- ${ rtl( { borderTopLeftRadius: 0, borderBottomLeftRadius: 0 } )() }
104
- ${ rtl( { right: 0 } )() }
105
- ${ unitSizeStyles( props ) }
106
- `;
107
- };
76
+ const baseUnitLabelStyles = css`
77
+ appearance: none;
78
+ background: transparent;
79
+ border-radius: 2px;
80
+ border: none;
81
+ box-sizing: border-box;
82
+ color: ${ COLORS.darkGray[ 500 ] };
83
+ display: block;
84
+ font-size: 8px;
85
+ letter-spacing: -0.5px;
86
+ outline: none;
87
+ padding: 2px 1px;
88
+ text-align-last: center;
89
+ text-transform: uppercase;
90
+ width: 20px;
91
+
92
+ ${ rtl( { borderTopLeftRadius: 0, borderBottomLeftRadius: 0 } )() }
93
+ `;
108
94
 
109
95
  export const UnitLabel = styled.div< SelectProps >`
110
96
  &&& {
@@ -119,6 +105,7 @@ export const UnitSelect = styled.select< SelectProps >`
119
105
  ${ baseUnitLabelStyles };
120
106
  cursor: pointer;
121
107
  border: 1px solid transparent;
108
+ height: 100%;
122
109
 
123
110
  &:hover {
124
111
  background-color: ${ COLORS.lightGray[ 300 ] };
@@ -8,11 +8,14 @@ import type { SyntheticEvent } from 'react';
8
8
  * Internal dependencies
9
9
  */
10
10
  import type { StateReducer } from '../input-control/reducer/state';
11
- import type { InputChangeCallback } from '../input-control/types';
11
+ import type {
12
+ InputChangeCallback,
13
+ Size as InputSize,
14
+ } from '../input-control/types';
12
15
 
13
16
  export type Value = number | string;
14
17
 
15
- export type SelectSize = 'default' | 'small';
18
+ export type SelectSize = InputSize;
16
19
 
17
20
  export type WPUnitControlUnit = {
18
21
  /**
@@ -34,7 +34,7 @@ Reverse the layer ordering. When `true`, the first child has the lowest `z-index
34
34
 
35
35
  ### `offset`: `number`
36
36
 
37
- The amount of space between each child element. Defaults to `0`.
37
+ The amount of space between each child element. Defaults to `0`. Its value is automatically inverted (i.e. from positive to negative, and viceversa) when switching from LTR to RTL.
38
38
 
39
39
  ### `children`: `ReactNode`
40
40
 
@@ -31,7 +31,7 @@ export interface ZStackProps {
31
31
  */
32
32
  isReversed?: boolean;
33
33
  /**
34
- * The amount of offset between each child element.
34
+ * The amount of offset between each child element. The amount of space between each child element. Defaults to `0`. Its value is automatically inverted (i.e. from positive to negative, and viceversa) when switching from LTR to RTL.
35
35
  *
36
36
  * @default 0
37
37
  */
@@ -15,7 +15,7 @@ export default {
15
15
  component: ZStack,
16
16
  title: 'Components (Experimental)/ZStack',
17
17
  parameters: {
18
- knobs: { disabled: false },
18
+ knobs: { disable: false },
19
19
  },
20
20
  };
21
21
 
@@ -4,6 +4,11 @@
4
4
  import { css } from '@emotion/react';
5
5
  import styled from '@emotion/styled';
6
6
 
7
+ /**
8
+ * Internal dependencies
9
+ */
10
+ import { rtl } from '../utils';
11
+
7
12
  export const ZStackView = styled.div`
8
13
  display: flex;
9
14
  position: relative;
@@ -16,8 +21,8 @@ export const ZStackChildView = styled.div< {
16
21
  } >`
17
22
  ${ ( { isLayered, offsetAmount } ) =>
18
23
  isLayered
19
- ? css( { marginLeft: offsetAmount } )
20
- : css( { right: offsetAmount * -1 } ) }
24
+ ? css( rtl( { marginLeft: offsetAmount } )() )
25
+ : css( rtl( { right: offsetAmount * -1 } )() ) }
21
26
 
22
27
  ${ ( { isLayered } ) =>
23
28
  isLayered ? positionAbsolute : positionRelative }
package/tsconfig.json CHANGED
@@ -28,6 +28,7 @@
28
28
  "src/base-field/**/*",
29
29
  "src/button/**/*",
30
30
  "src/card/**/*",
31
+ "src/confirm-dialog/**/*",
31
32
  "src/dashicon/**/*",
32
33
  "src/disabled/**/*",
33
34
  "src/divider/**/*",
@@ -41,11 +42,13 @@
41
42
  "src/grid/**/*",
42
43
  "src/h-stack/**/*",
43
44
  "src/heading/**/*",
44
- "src/item-group/**/*",
45
- "src/input-control/**/*",
45
+ "src/higher-order/with-focus-outside/**/*",
46
46
  "src/icon/**/*",
47
+ "src/input-control/**/*",
48
+ "src/item-group/**/*",
47
49
  "src/menu-item/**/*",
48
50
  "src/menu-group/**/*",
51
+ "src/modal/**/*",
49
52
  "src/navigable-container/**/*",
50
53
  "src/navigator/**/*",
51
54
  "src/number-control/**/*",
@@ -57,6 +60,7 @@
57
60
  "src/select-control/**/*",
58
61
  "src/shortcut/**/*",
59
62
  "src/slot-fill/**/*",
63
+ "src/style-provider/**/*",
60
64
  "src/spacer/**/*",
61
65
  "src/spinner/**/*",
62
66
  "src/surface/**/*",