@wordpress/block-editor 8.0.16 → 8.1.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 (436) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/LICENSE.md +1 -1
  3. package/README.md +12 -1
  4. package/build/components/block-caption/index.native.js +14 -3
  5. package/build/components/block-caption/index.native.js.map +1 -1
  6. package/build/components/block-edit/index.js +9 -0
  7. package/build/components/block-edit/index.js.map +1 -1
  8. package/build/components/block-inspector/index.js +8 -20
  9. package/build/components/block-inspector/index.js.map +1 -1
  10. package/build/components/block-list-appender/index.js +3 -11
  11. package/build/components/block-list-appender/index.js.map +1 -1
  12. package/build/components/block-media-update-progress/index.native.js +2 -1
  13. package/build/components/block-media-update-progress/index.native.js.map +1 -1
  14. package/build/components/block-preview/auto.js +10 -2
  15. package/build/components/block-preview/auto.js.map +1 -1
  16. package/build/components/block-settings/container.native.js +2 -1
  17. package/build/components/block-settings/container.native.js.map +1 -1
  18. package/build/components/block-styles/index.js +110 -134
  19. package/build/components/block-styles/index.js.map +1 -1
  20. package/build/components/block-styles/menu-items.js +63 -0
  21. package/build/components/block-styles/menu-items.js.map +1 -0
  22. package/build/components/block-styles/preview-panel.js +45 -0
  23. package/build/components/block-styles/preview-panel.js.map +1 -0
  24. package/build/components/block-styles/preview.native.js +2 -2
  25. package/build/components/block-styles/preview.native.js.map +1 -1
  26. package/build/components/block-styles/use-styles-for-block.js +119 -0
  27. package/build/components/block-styles/use-styles-for-block.js.map +1 -0
  28. package/build/components/block-styles/utils.js +39 -0
  29. package/build/components/block-styles/utils.js.map +1 -1
  30. package/build/components/block-switcher/block-styles-menu.js +3 -23
  31. package/build/components/block-switcher/block-styles-menu.js.map +1 -1
  32. package/build/components/block-tools/back-compat.js +2 -1
  33. package/build/components/block-tools/back-compat.js.map +1 -1
  34. package/build/components/block-tools/block-selection-button.js +5 -1
  35. package/build/components/block-tools/block-selection-button.js.map +1 -1
  36. package/build/components/block-tools/insertion-point.js +11 -1
  37. package/build/components/block-tools/insertion-point.js.map +1 -1
  38. package/build/components/block-types-list/index.native.js +2 -2
  39. package/build/components/block-types-list/index.native.js.map +1 -1
  40. package/build/components/button-block-appender/index.js +2 -1
  41. package/build/components/button-block-appender/index.js.map +1 -1
  42. package/build/components/colors-gradients/dropdown.js +88 -0
  43. package/build/components/colors-gradients/dropdown.js.map +1 -0
  44. package/build/components/colors-gradients/panel-color-gradient-settings.js +6 -5
  45. package/build/components/colors-gradients/panel-color-gradient-settings.js.map +1 -1
  46. package/build/components/colors-gradients/panel-color-gradient-settings.native.js +6 -3
  47. package/build/components/colors-gradients/panel-color-gradient-settings.native.js.map +1 -1
  48. package/build/components/contrast-checker/index.js +34 -9
  49. package/build/components/contrast-checker/index.js.map +1 -1
  50. package/build/components/contrast-checker/index.native.js +108 -0
  51. package/build/components/contrast-checker/index.native.js.map +1 -0
  52. package/build/components/default-block-appender/index.js +16 -19
  53. package/build/components/default-block-appender/index.js.map +1 -1
  54. package/build/components/default-style-picker/index.js +18 -3
  55. package/build/components/default-style-picker/index.js.map +1 -1
  56. package/build/components/iframe/index.js +4 -5
  57. package/build/components/iframe/index.js.map +1 -1
  58. package/build/components/index.js +18 -9
  59. package/build/components/index.js.map +1 -1
  60. package/build/components/index.native.js +9 -0
  61. package/build/components/index.native.js.map +1 -1
  62. package/build/components/inner-blocks/default-block-appender.js +2 -4
  63. package/build/components/inner-blocks/default-block-appender.js.map +1 -1
  64. package/build/components/inner-blocks/use-nested-settings-update.js +16 -14
  65. package/build/components/inner-blocks/use-nested-settings-update.js.map +1 -1
  66. package/build/components/inserter/index.js +61 -3
  67. package/build/components/inserter/index.js.map +1 -1
  68. package/build/components/inserter/index.native.js +1 -1
  69. package/build/components/inserter/index.native.js.map +1 -1
  70. package/build/components/inserter/library.js +5 -3
  71. package/build/components/inserter/library.js.map +1 -1
  72. package/build/components/inserter/menu.js +11 -3
  73. package/build/components/inserter/menu.js.map +1 -1
  74. package/build/components/inserter/tabs.native.js +7 -4
  75. package/build/components/inserter/tabs.native.js.map +1 -1
  76. package/build/components/inspector-controls/block-support-slot-container.js +2 -1
  77. package/build/components/inspector-controls/block-support-slot-container.js.map +1 -1
  78. package/build/components/inspector-controls/block-support-tools-panel.js +11 -43
  79. package/build/components/inspector-controls/block-support-tools-panel.js.map +1 -1
  80. package/build/components/inspector-controls/fill.native.js +3 -5
  81. package/build/components/inspector-controls/fill.native.js.map +1 -1
  82. package/build/components/inspector-controls/groups.js +2 -0
  83. package/build/components/inspector-controls/groups.js.map +1 -1
  84. package/build/components/inspector-controls/slot.js +1 -3
  85. package/build/components/inspector-controls/slot.js.map +1 -1
  86. package/build/components/letter-spacing-control/index.js +6 -6
  87. package/build/components/letter-spacing-control/index.js.map +1 -1
  88. package/build/components/link-control/link-preview.js +1 -1
  89. package/build/components/link-control/link-preview.js.map +1 -1
  90. package/build/components/link-control/search-item.js +11 -1
  91. package/build/components/link-control/search-item.js.map +1 -1
  92. package/build/components/link-control/search-results.js +2 -1
  93. package/build/components/link-control/search-results.js.map +1 -1
  94. package/build/components/link-control/use-search-handler.js +18 -5
  95. package/build/components/link-control/use-search-handler.js.map +1 -1
  96. package/build/components/list-view/block-select-button.js +23 -3
  97. package/build/components/list-view/block-select-button.js.map +1 -1
  98. package/build/components/list-view/block.js +8 -0
  99. package/build/components/list-view/block.js.map +1 -1
  100. package/build/components/media-placeholder/index.js +2 -0
  101. package/build/components/media-placeholder/index.js.map +1 -1
  102. package/build/components/media-replace-flow/index.js +32 -6
  103. package/build/components/media-replace-flow/index.js.map +1 -1
  104. package/build/components/media-upload-progress/index.native.js +2 -1
  105. package/build/components/media-upload-progress/index.native.js.map +1 -1
  106. package/build/components/panel-color-settings/index.js +7 -3
  107. package/build/components/panel-color-settings/index.js.map +1 -1
  108. package/build/components/provider/block-refs-provider.js +4 -1
  109. package/build/components/provider/block-refs-provider.js.map +1 -1
  110. package/build/components/rich-text/file-paste-handler.js +1 -1
  111. package/build/components/rich-text/file-paste-handler.js.map +1 -1
  112. package/build/components/rich-text/prevent-event-discovery.js +33 -0
  113. package/build/components/rich-text/prevent-event-discovery.js.map +1 -0
  114. package/build/components/rich-text/use-input-rules.js +3 -1
  115. package/build/components/rich-text/use-input-rules.js.map +1 -1
  116. package/build/components/selection-scroll-into-view/index.js +2 -1
  117. package/build/components/selection-scroll-into-view/index.js.map +1 -1
  118. package/build/components/use-display-block-controls/index.native.js +45 -0
  119. package/build/components/use-display-block-controls/index.native.js.map +1 -0
  120. package/build/components/use-on-block-drop/index.js +7 -3
  121. package/build/components/use-on-block-drop/index.js.map +1 -1
  122. package/build/components/writing-flow/use-multi-selection.js +3 -1
  123. package/build/components/writing-flow/use-multi-selection.js.map +1 -1
  124. package/build/hooks/border-color.js +74 -10
  125. package/build/hooks/border-color.js.map +1 -1
  126. package/build/hooks/border-radius.js +47 -0
  127. package/build/hooks/border-radius.js.map +1 -1
  128. package/build/hooks/border-style.js +41 -0
  129. package/build/hooks/border-style.js.map +1 -1
  130. package/build/hooks/border-width.js +70 -31
  131. package/build/hooks/border-width.js.map +1 -1
  132. package/build/hooks/border.js +81 -11
  133. package/build/hooks/border.js.map +1 -1
  134. package/build/hooks/color-panel.js +4 -1
  135. package/build/hooks/color-panel.js.map +1 -1
  136. package/build/hooks/color-panel.native.js +77 -0
  137. package/build/hooks/color-panel.native.js.map +1 -0
  138. package/build/hooks/color.js +6 -5
  139. package/build/hooks/color.js.map +1 -1
  140. package/build/hooks/index.native.js +2 -0
  141. package/build/hooks/index.native.js.map +1 -1
  142. package/build/hooks/layout.native.js +20 -0
  143. package/build/hooks/layout.native.js.map +1 -0
  144. package/build/hooks/letter-spacing.js +1 -1
  145. package/build/hooks/letter-spacing.js.map +1 -1
  146. package/build/hooks/typography.js +1 -1
  147. package/build/hooks/typography.js.map +1 -1
  148. package/build/store/actions.js +1 -2
  149. package/build/store/actions.js.map +1 -1
  150. package/build/store/defaults.js +5 -1
  151. package/build/store/defaults.js.map +1 -1
  152. package/build/store/defaults.native.js +2 -6
  153. package/build/store/defaults.native.js.map +1 -1
  154. package/build/store/selectors.js +10 -5
  155. package/build/store/selectors.js.map +1 -1
  156. package/build/utils/get-paste-event-data.js +1 -1
  157. package/build/utils/get-paste-event-data.js.map +1 -1
  158. package/build/utils/parse-css-unit-to-px.js +1 -1
  159. package/build/utils/parse-css-unit-to-px.js.map +1 -1
  160. package/build-module/components/block-caption/index.native.js +13 -3
  161. package/build-module/components/block-caption/index.native.js.map +1 -1
  162. package/build-module/components/block-edit/index.js +9 -0
  163. package/build-module/components/block-edit/index.js.map +1 -1
  164. package/build-module/components/block-inspector/index.js +8 -20
  165. package/build-module/components/block-inspector/index.js.map +1 -1
  166. package/build-module/components/block-list-appender/index.js +3 -10
  167. package/build-module/components/block-list-appender/index.js.map +1 -1
  168. package/build-module/components/block-media-update-progress/index.native.js +2 -1
  169. package/build-module/components/block-media-update-progress/index.native.js.map +1 -1
  170. package/build-module/components/block-preview/auto.js +10 -2
  171. package/build-module/components/block-preview/auto.js.map +1 -1
  172. package/build-module/components/block-settings/container.native.js +2 -1
  173. package/build-module/components/block-settings/container.native.js.map +1 -1
  174. package/build-module/components/block-styles/index.js +112 -133
  175. package/build-module/components/block-styles/index.js.map +1 -1
  176. package/build-module/components/block-styles/menu-items.js +50 -0
  177. package/build-module/components/block-styles/menu-items.js.map +1 -0
  178. package/build-module/components/block-styles/preview-panel.js +35 -0
  179. package/build-module/components/block-styles/preview-panel.js.map +1 -0
  180. package/build-module/components/block-styles/preview.native.js +2 -2
  181. package/build-module/components/block-styles/preview.native.js.map +1 -1
  182. package/build-module/components/block-styles/use-styles-for-block.js +107 -0
  183. package/build-module/components/block-styles/use-styles-for-block.js.map +1 -0
  184. package/build-module/components/block-styles/utils.js +34 -0
  185. package/build-module/components/block-styles/utils.js.map +1 -1
  186. package/build-module/components/block-switcher/block-styles-menu.js +3 -21
  187. package/build-module/components/block-switcher/block-styles-menu.js.map +1 -1
  188. package/build-module/components/block-tools/back-compat.js +2 -1
  189. package/build-module/components/block-tools/back-compat.js.map +1 -1
  190. package/build-module/components/block-tools/block-selection-button.js +5 -1
  191. package/build-module/components/block-tools/block-selection-button.js.map +1 -1
  192. package/build-module/components/block-tools/insertion-point.js +11 -1
  193. package/build-module/components/block-tools/insertion-point.js.map +1 -1
  194. package/build-module/components/block-types-list/index.native.js +2 -2
  195. package/build-module/components/block-types-list/index.native.js.map +1 -1
  196. package/build-module/components/button-block-appender/index.js +2 -1
  197. package/build-module/components/button-block-appender/index.js.map +1 -1
  198. package/build-module/components/colors-gradients/dropdown.js +75 -0
  199. package/build-module/components/colors-gradients/dropdown.js.map +1 -0
  200. package/build-module/components/colors-gradients/panel-color-gradient-settings.js +8 -7
  201. package/build-module/components/colors-gradients/panel-color-gradient-settings.js.map +1 -1
  202. package/build-module/components/colors-gradients/panel-color-gradient-settings.native.js +7 -4
  203. package/build-module/components/colors-gradients/panel-color-gradient-settings.native.js.map +1 -1
  204. package/build-module/components/contrast-checker/index.js +34 -9
  205. package/build-module/components/contrast-checker/index.js.map +1 -1
  206. package/build-module/components/contrast-checker/index.native.js +90 -0
  207. package/build-module/components/contrast-checker/index.native.js.map +1 -0
  208. package/build-module/components/default-block-appender/index.js +15 -18
  209. package/build-module/components/default-block-appender/index.js.map +1 -1
  210. package/build-module/components/default-style-picker/index.js +17 -3
  211. package/build-module/components/default-style-picker/index.js.map +1 -1
  212. package/build-module/components/iframe/index.js +4 -5
  213. package/build-module/components/iframe/index.js.map +1 -1
  214. package/build-module/components/index.js +2 -1
  215. package/build-module/components/index.js.map +1 -1
  216. package/build-module/components/index.native.js +1 -0
  217. package/build-module/components/index.native.js.map +1 -1
  218. package/build-module/components/inner-blocks/default-block-appender.js +2 -4
  219. package/build-module/components/inner-blocks/default-block-appender.js.map +1 -1
  220. package/build-module/components/inner-blocks/use-nested-settings-update.js +16 -14
  221. package/build-module/components/inner-blocks/use-nested-settings-update.js.map +1 -1
  222. package/build-module/components/inserter/index.js +61 -3
  223. package/build-module/components/inserter/index.js.map +1 -1
  224. package/build-module/components/inserter/index.native.js +2 -2
  225. package/build-module/components/inserter/index.native.js.map +1 -1
  226. package/build-module/components/inserter/library.js +5 -3
  227. package/build-module/components/inserter/library.js.map +1 -1
  228. package/build-module/components/inserter/menu.js +11 -4
  229. package/build-module/components/inserter/menu.js.map +1 -1
  230. package/build-module/components/inserter/tabs.native.js +7 -4
  231. package/build-module/components/inserter/tabs.native.js.map +1 -1
  232. package/build-module/components/inspector-controls/block-support-slot-container.js +2 -1
  233. package/build-module/components/inspector-controls/block-support-slot-container.js.map +1 -1
  234. package/build-module/components/inspector-controls/block-support-tools-panel.js +12 -43
  235. package/build-module/components/inspector-controls/block-support-tools-panel.js.map +1 -1
  236. package/build-module/components/inspector-controls/fill.native.js +3 -5
  237. package/build-module/components/inspector-controls/fill.native.js.map +1 -1
  238. package/build-module/components/inspector-controls/groups.js +2 -0
  239. package/build-module/components/inspector-controls/groups.js.map +1 -1
  240. package/build-module/components/inspector-controls/slot.js +1 -3
  241. package/build-module/components/inspector-controls/slot.js.map +1 -1
  242. package/build-module/components/letter-spacing-control/index.js +6 -6
  243. package/build-module/components/letter-spacing-control/index.js.map +1 -1
  244. package/build-module/components/link-control/link-preview.js +1 -1
  245. package/build-module/components/link-control/link-preview.js.map +1 -1
  246. package/build-module/components/link-control/search-item.js +11 -1
  247. package/build-module/components/link-control/search-item.js.map +1 -1
  248. package/build-module/components/link-control/search-results.js +2 -1
  249. package/build-module/components/link-control/search-results.js.map +1 -1
  250. package/build-module/components/link-control/use-search-handler.js +18 -5
  251. package/build-module/components/link-control/use-search-handler.js.map +1 -1
  252. package/build-module/components/list-view/block-select-button.js +22 -3
  253. package/build-module/components/list-view/block-select-button.js.map +1 -1
  254. package/build-module/components/list-view/block.js +6 -0
  255. package/build-module/components/list-view/block.js.map +1 -1
  256. package/build-module/components/media-placeholder/index.js +2 -0
  257. package/build-module/components/media-placeholder/index.js.map +1 -1
  258. package/build-module/components/media-replace-flow/index.js +32 -6
  259. package/build-module/components/media-replace-flow/index.js.map +1 -1
  260. package/build-module/components/media-upload-progress/index.native.js +2 -1
  261. package/build-module/components/media-upload-progress/index.native.js.map +1 -1
  262. package/build-module/components/panel-color-settings/index.js +7 -3
  263. package/build-module/components/panel-color-settings/index.js.map +1 -1
  264. package/build-module/components/provider/block-refs-provider.js +4 -1
  265. package/build-module/components/provider/block-refs-provider.js.map +1 -1
  266. package/build-module/components/rich-text/file-paste-handler.js +1 -1
  267. package/build-module/components/rich-text/file-paste-handler.js.map +1 -1
  268. package/build-module/components/rich-text/prevent-event-discovery.js +25 -0
  269. package/build-module/components/rich-text/prevent-event-discovery.js.map +1 -0
  270. package/build-module/components/rich-text/use-input-rules.js +2 -1
  271. package/build-module/components/rich-text/use-input-rules.js.map +1 -1
  272. package/build-module/components/selection-scroll-into-view/index.js +2 -1
  273. package/build-module/components/selection-scroll-into-view/index.js.map +1 -1
  274. package/build-module/components/use-display-block-controls/index.native.js +34 -0
  275. package/build-module/components/use-display-block-controls/index.native.js.map +1 -0
  276. package/build-module/components/use-on-block-drop/index.js +7 -3
  277. package/build-module/components/use-on-block-drop/index.js.map +1 -1
  278. package/build-module/components/writing-flow/use-multi-selection.js +3 -4
  279. package/build-module/components/writing-flow/use-multi-selection.js.map +1 -1
  280. package/build-module/hooks/border-color.js +72 -12
  281. package/build-module/hooks/border-color.js.map +1 -1
  282. package/build-module/hooks/border-radius.js +42 -0
  283. package/build-module/hooks/border-radius.js.map +1 -1
  284. package/build-module/hooks/border-style.js +36 -0
  285. package/build-module/hooks/border-style.js.map +1 -1
  286. package/build-module/hooks/border-width.js +66 -32
  287. package/build-module/hooks/border-width.js.map +1 -1
  288. package/build-module/hooks/border.js +80 -12
  289. package/build-module/hooks/border.js.map +1 -1
  290. package/build-module/hooks/color-panel.js +4 -1
  291. package/build-module/hooks/color-panel.js.map +1 -1
  292. package/build-module/hooks/color-panel.native.js +62 -0
  293. package/build-module/hooks/color-panel.native.js.map +1 -0
  294. package/build-module/hooks/color.js +6 -5
  295. package/build-module/hooks/color.js.map +1 -1
  296. package/build-module/hooks/index.native.js +1 -0
  297. package/build-module/hooks/index.native.js.map +1 -1
  298. package/build-module/hooks/layout.native.js +16 -0
  299. package/build-module/hooks/layout.native.js.map +1 -0
  300. package/build-module/hooks/letter-spacing.js +1 -1
  301. package/build-module/hooks/letter-spacing.js.map +1 -1
  302. package/build-module/hooks/typography.js +1 -1
  303. package/build-module/hooks/typography.js.map +1 -1
  304. package/build-module/store/actions.js +1 -2
  305. package/build-module/store/actions.js.map +1 -1
  306. package/build-module/store/defaults.js +5 -1
  307. package/build-module/store/defaults.js.map +1 -1
  308. package/build-module/store/defaults.native.js +2 -5
  309. package/build-module/store/defaults.native.js.map +1 -1
  310. package/build-module/store/selectors.js +10 -5
  311. package/build-module/store/selectors.js.map +1 -1
  312. package/build-module/utils/get-paste-event-data.js +1 -1
  313. package/build-module/utils/get-paste-event-data.js.map +1 -1
  314. package/build-module/utils/parse-css-unit-to-px.js +1 -1
  315. package/build-module/utils/parse-css-unit-to-px.js.map +1 -1
  316. package/build-style/style-rtl.css +226 -181
  317. package/build-style/style.css +226 -181
  318. package/package.json +31 -27
  319. package/src/components/block-caption/index.native.js +22 -4
  320. package/src/components/block-card/README.md +1 -1
  321. package/src/components/block-edit/index.js +8 -0
  322. package/src/components/block-edit/test/edit.native.js +10 -9
  323. package/src/components/block-inspector/index.js +9 -16
  324. package/src/components/block-list-appender/index.js +5 -21
  325. package/src/components/block-media-update-progress/index.native.js +1 -1
  326. package/src/components/block-media-update-progress/test/index.native.js +136 -93
  327. package/src/components/block-mover/test/__snapshots__/index.native.js.snap +108 -47
  328. package/src/components/block-mover/test/index.native.js +5 -5
  329. package/src/components/block-preview/README.md +14 -26
  330. package/src/components/block-preview/auto.js +7 -2
  331. package/src/components/block-preview/test/index.js +2 -0
  332. package/src/components/block-settings/container.native.js +1 -0
  333. package/src/components/block-styles/index.js +125 -145
  334. package/src/components/block-styles/menu-items.js +49 -0
  335. package/src/components/block-styles/preview-panel.js +36 -0
  336. package/src/components/block-styles/preview.native.js +5 -2
  337. package/src/components/block-styles/style.scss +59 -51
  338. package/src/components/block-styles/test/{index.js → utils.js} +60 -1
  339. package/src/components/block-styles/use-styles-for-block.js +99 -0
  340. package/src/components/block-styles/utils.js +39 -0
  341. package/src/components/block-switcher/block-styles-menu.js +3 -38
  342. package/src/components/block-tools/back-compat.js +1 -0
  343. package/src/components/block-tools/block-selection-button.js +7 -1
  344. package/src/components/block-tools/insertion-point.js +10 -1
  345. package/src/components/block-types-list/index.native.js +5 -2
  346. package/src/components/border-radius-control/style.scss +1 -1
  347. package/src/components/border-style-control/style.scss +0 -1
  348. package/src/components/button-block-appender/index.js +1 -0
  349. package/src/components/color-palette/test/__snapshots__/control.js.snap +9 -4
  350. package/src/components/colors-gradients/dropdown.js +96 -0
  351. package/src/components/colors-gradients/panel-color-gradient-settings.js +23 -19
  352. package/src/components/colors-gradients/panel-color-gradient-settings.native.js +13 -2
  353. package/src/components/colors-gradients/style.scss +59 -5
  354. package/src/components/contrast-checker/README.md +3 -1
  355. package/src/components/contrast-checker/index.js +48 -20
  356. package/src/components/contrast-checker/index.native.js +113 -0
  357. package/src/components/contrast-checker/style.native.scss +26 -0
  358. package/src/components/contrast-checker/test/index.js +65 -0
  359. package/src/components/default-block-appender/index.js +17 -24
  360. package/src/components/default-block-appender/style.scss +4 -0
  361. package/src/components/default-block-appender/test/__snapshots__/index.js.snap +12 -24
  362. package/src/components/default-block-appender/test/index.js +4 -14
  363. package/src/components/default-style-picker/index.js +18 -6
  364. package/src/components/iframe/index.js +7 -3
  365. package/src/components/index.js +2 -1
  366. package/src/components/index.native.js +1 -0
  367. package/src/components/inner-blocks/README.md +2 -0
  368. package/src/components/inner-blocks/default-block-appender.js +2 -7
  369. package/src/components/inner-blocks/use-nested-settings-update.js +16 -14
  370. package/src/components/inserter/index.js +77 -5
  371. package/src/components/inserter/index.native.js +2 -2
  372. package/src/components/inserter/library.js +17 -12
  373. package/src/components/inserter/menu.js +31 -13
  374. package/src/components/inserter/tabs.native.js +5 -4
  375. package/src/components/inserter/test/block-types-tab.native.js +9 -10
  376. package/src/components/inserter/test/index.native.js +3 -7
  377. package/src/components/inserter/test/reusable-blocks-tab.native.js +8 -10
  378. package/src/components/inspector-controls/block-support-slot-container.js +3 -1
  379. package/src/components/inspector-controls/block-support-tools-panel.js +39 -58
  380. package/src/components/inspector-controls/fill.native.js +4 -3
  381. package/src/components/inspector-controls/groups.js +2 -0
  382. package/src/components/inspector-controls/slot.js +2 -7
  383. package/src/components/letter-spacing-control/index.js +6 -6
  384. package/src/components/link-control/README.md +1 -1
  385. package/src/components/link-control/link-preview.js +1 -1
  386. package/src/components/link-control/search-item.js +11 -2
  387. package/src/components/link-control/search-results.js +1 -0
  388. package/src/components/link-control/style.scss +2 -1
  389. package/src/components/link-control/test/index.js +4 -0
  390. package/src/components/link-control/use-search-handler.js +25 -4
  391. package/src/components/list-view/block-select-button.js +20 -1
  392. package/src/components/list-view/block.js +10 -0
  393. package/src/components/media-placeholder/index.js +2 -0
  394. package/src/components/media-replace-flow/index.js +35 -5
  395. package/src/components/media-upload/test/index.native.js +28 -47
  396. package/src/components/media-upload-progress/index.native.js +1 -0
  397. package/src/components/media-upload-progress/test/index.native.js +60 -47
  398. package/src/components/panel-color-settings/index.js +8 -4
  399. package/src/components/provider/block-refs-provider.js +4 -1
  400. package/src/components/rich-text/file-paste-handler.js +3 -1
  401. package/src/components/rich-text/prevent-event-discovery.js +23 -0
  402. package/src/components/rich-text/use-input-rules.js +2 -1
  403. package/src/components/selection-scroll-into-view/index.js +1 -0
  404. package/src/components/url-input/README.md +5 -0
  405. package/src/components/use-display-block-controls/index.native.js +38 -0
  406. package/src/components/use-on-block-drop/index.js +7 -3
  407. package/src/components/writing-flow/test/use-multi-selection.js +36 -0
  408. package/src/components/writing-flow/use-multi-selection.js +12 -9
  409. package/src/hooks/border-color.js +69 -9
  410. package/src/hooks/border-radius.js +32 -0
  411. package/src/hooks/border-style.js +26 -0
  412. package/src/hooks/border-width.js +56 -32
  413. package/src/hooks/border.js +115 -20
  414. package/src/hooks/border.scss +3 -17
  415. package/src/hooks/color-panel.js +3 -0
  416. package/src/hooks/color-panel.native.js +63 -0
  417. package/src/hooks/color.js +8 -7
  418. package/src/hooks/dimensions.scss +5 -0
  419. package/src/hooks/index.native.js +1 -0
  420. package/src/hooks/layout.native.js +23 -0
  421. package/src/hooks/letter-spacing.js +1 -1
  422. package/src/hooks/typography.js +1 -1
  423. package/src/store/actions.js +1 -2
  424. package/src/store/defaults.js +2 -0
  425. package/src/store/defaults.native.js +2 -6
  426. package/src/store/selectors.js +10 -5
  427. package/src/style.scss +4 -3
  428. package/src/utils/get-paste-event-data.js +1 -1
  429. package/src/utils/parse-css-unit-to-px.js +1 -1
  430. package/src/utils/test/parse-css-unit-to-px.js +3 -0
  431. package/tsconfig.tsbuildinfo +1 -1
  432. package/build/components/use-canvas-click-redirect/index.js +0 -66
  433. package/build/components/use-canvas-click-redirect/index.js.map +0 -1
  434. package/build-module/components/use-canvas-click-redirect/index.js +0 -54
  435. package/build-module/components/use-canvas-click-redirect/index.js.map +0 -1
  436. package/src/components/use-canvas-click-redirect/index.js +0 -57
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/utils/get-paste-event-data.js"],"names":["createBlobURL","getFilesFromDataTransfer","getPasteEventData","clipboardData","plainText","html","getData","error1","error2","files","filter","type","test","length","map","file","join"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,aAAT,QAA8B,iBAA9B;AACA,SAASC,wBAAT,QAAyC,gBAAzC;AAEA,OAAO,SAASC,iBAAT,OAAgD;AAAA,MAApB;AAAEC,IAAAA;AAAF,GAAoB;AACtD,MAAIC,SAAS,GAAG,EAAhB;AACA,MAAIC,IAAI,GAAG,EAAX,CAFsD,CAItD;AACA;AACA;;AACA,MAAI;AACHD,IAAAA,SAAS,GAAGD,aAAa,CAACG,OAAd,CAAuB,YAAvB,CAAZ;AACAD,IAAAA,IAAI,GAAGF,aAAa,CAACG,OAAd,CAAuB,WAAvB,CAAP;AACA,GAHD,CAGE,OAAQC,MAAR,EAAiB;AAClB,QAAI;AACHF,MAAAA,IAAI,GAAGF,aAAa,CAACG,OAAd,CAAuB,MAAvB,CAAP;AACA,KAFD,CAEE,OAAQE,MAAR,EAAiB;AAClB;AACA;AACA;AACA;AACA;AACD;;AAED,QAAMC,KAAK,GAAGR,wBAAwB,CACrCE,aADqC,CAAxB,CAEZO,MAFY,CAEJ;AAAA,QAAE;AAAEC,MAAAA;AAAF,KAAF;AAAA,WAAgB,6BAA6BC,IAA7B,CAAmCD,IAAnC,CAAhB;AAAA,GAFI,CAAd,CArBsD,CAyBtD;AACA;;AACA,MAAKF,KAAK,CAACI,MAAN,IAAgB,CAAER,IAAvB,EAA8B;AAC7BA,IAAAA,IAAI,GAAGI,KAAK,CACVK,GADK,CACEC,IAAF,IAAa,aAAaf,aAAa,CAAEe,IAAF,CAAU,IADjD,EAELC,IAFK,CAEC,EAFD,CAAP;AAGAZ,IAAAA,SAAS,GAAG,EAAZ;AACA;;AAED,SAAO;AAAEC,IAAAA,IAAF;AAAQD,IAAAA;AAAR,GAAP;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createBlobURL } from '@wordpress/blob';\nimport { getFilesFromDataTransfer } from '@wordpress/dom';\n\nexport function getPasteEventData( { clipboardData } ) {\n\tlet plainText = '';\n\tlet html = '';\n\n\t// IE11 only supports `Text` as an argument for `getData` and will\n\t// otherwise throw an invalid argument error, so we try the standard\n\t// arguments first, then fallback to `Text` if they fail.\n\ttry {\n\t\tplainText = clipboardData.getData( 'text/plain' );\n\t\thtml = clipboardData.getData( 'text/html' );\n\t} catch ( error1 ) {\n\t\ttry {\n\t\t\thtml = clipboardData.getData( 'Text' );\n\t\t} catch ( error2 ) {\n\t\t\t// Some browsers like UC Browser paste plain text by default and\n\t\t\t// don't support clipboardData at all, so allow default\n\t\t\t// behaviour.\n\t\t\treturn;\n\t\t}\n\t}\n\n\tconst files = getFilesFromDataTransfer(\n\t\tclipboardData\n\t).filter( ( { type } ) => /^image\\/(?:jpe?g|png|gif)$/.test( type ) );\n\n\t// Only process files if no HTML is present.\n\t// A pasted file may have the URL as plain text.\n\tif ( files.length && ! html ) {\n\t\thtml = files\n\t\t\t.map( ( file ) => `<img src=\"${ createBlobURL( file ) }\">` )\n\t\t\t.join( '' );\n\t\tplainText = '';\n\t}\n\n\treturn { html, plainText };\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-editor/src/utils/get-paste-event-data.js"],"names":["createBlobURL","getFilesFromDataTransfer","getPasteEventData","clipboardData","plainText","html","getData","error1","error2","files","filter","type","test","length","map","file","join"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,aAAT,QAA8B,iBAA9B;AACA,SAASC,wBAAT,QAAyC,gBAAzC;AAEA,OAAO,SAASC,iBAAT,OAAgD;AAAA,MAApB;AAAEC,IAAAA;AAAF,GAAoB;AACtD,MAAIC,SAAS,GAAG,EAAhB;AACA,MAAIC,IAAI,GAAG,EAAX,CAFsD,CAItD;AACA;AACA;;AACA,MAAI;AACHD,IAAAA,SAAS,GAAGD,aAAa,CAACG,OAAd,CAAuB,YAAvB,CAAZ;AACAD,IAAAA,IAAI,GAAGF,aAAa,CAACG,OAAd,CAAuB,WAAvB,CAAP;AACA,GAHD,CAGE,OAAQC,MAAR,EAAiB;AAClB,QAAI;AACHF,MAAAA,IAAI,GAAGF,aAAa,CAACG,OAAd,CAAuB,MAAvB,CAAP;AACA,KAFD,CAEE,OAAQE,MAAR,EAAiB;AAClB;AACA;AACA;AACA;AACA;AACD;;AAED,QAAMC,KAAK,GAAGR,wBAAwB,CACrCE,aADqC,CAAxB,CAEZO,MAFY,CAEJ;AAAA,QAAE;AAAEC,MAAAA;AAAF,KAAF;AAAA,WAAgB,kCAAkCC,IAAlC,CAAwCD,IAAxC,CAAhB;AAAA,GAFI,CAAd,CArBsD,CAyBtD;AACA;;AACA,MAAKF,KAAK,CAACI,MAAN,IAAgB,CAAER,IAAvB,EAA8B;AAC7BA,IAAAA,IAAI,GAAGI,KAAK,CACVK,GADK,CACEC,IAAF,IAAa,aAAaf,aAAa,CAAEe,IAAF,CAAU,IADjD,EAELC,IAFK,CAEC,EAFD,CAAP;AAGAZ,IAAAA,SAAS,GAAG,EAAZ;AACA;;AAED,SAAO;AAAEC,IAAAA,IAAF;AAAQD,IAAAA;AAAR,GAAP;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createBlobURL } from '@wordpress/blob';\nimport { getFilesFromDataTransfer } from '@wordpress/dom';\n\nexport function getPasteEventData( { clipboardData } ) {\n\tlet plainText = '';\n\tlet html = '';\n\n\t// IE11 only supports `Text` as an argument for `getData` and will\n\t// otherwise throw an invalid argument error, so we try the standard\n\t// arguments first, then fallback to `Text` if they fail.\n\ttry {\n\t\tplainText = clipboardData.getData( 'text/plain' );\n\t\thtml = clipboardData.getData( 'text/html' );\n\t} catch ( error1 ) {\n\t\ttry {\n\t\t\thtml = clipboardData.getData( 'Text' );\n\t\t} catch ( error2 ) {\n\t\t\t// Some browsers like UC Browser paste plain text by default and\n\t\t\t// don't support clipboardData at all, so allow default\n\t\t\t// behaviour.\n\t\t\treturn;\n\t\t}\n\t}\n\n\tconst files = getFilesFromDataTransfer(\n\t\tclipboardData\n\t).filter( ( { type } ) => /^image\\/(?:jpe?g|png|gif|webp)$/.test( type ) );\n\n\t// Only process files if no HTML is present.\n\t// A pasted file may have the URL as plain text.\n\tif ( files.length && ! html ) {\n\t\thtml = files\n\t\t\t.map( ( file ) => `<img src=\"${ createBlobURL( file ) }\">` )\n\t\t\t.join( '' );\n\t\tplainText = '';\n\t}\n\n\treturn { html, plainText };\n}\n"]}
@@ -5,7 +5,7 @@
5
5
  * @return {Object} parsedUnit
6
6
  */
7
7
  function parseUnit(cssUnit) {
8
- const match = cssUnit === null || cssUnit === void 0 ? void 0 : cssUnit.trim().match(/^(0?[-.]?\d+)(r?e[m|x]|v[h|w|min|max]+|p[x|t|c]|[c|m]m|%|in|ch|Q|lh)$/);
8
+ const match = cssUnit === null || cssUnit === void 0 ? void 0 : cssUnit.trim().match(/^(0?[-.]?\d*\.?\d+)(r?e[m|x]|v[h|w|min|max]+|p[x|t|c]|[c|m]m|%|in|ch|Q|lh)$/);
9
9
 
10
10
  if (!isNaN(cssUnit) && !isNaN(parseFloat(cssUnit))) {
11
11
  return {
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/utils/parse-css-unit-to-px.js"],"names":["parseUnit","cssUnit","match","trim","isNaN","parseFloat","value","unit","undefined","calculate","expression","Function","getFunctionUnitValue","functionUnitValue","options","functionUnit","split","filter","Boolean","units","slice","map","getPxFromCssUnit","Math","min","max","length","parseUnitFunction","currentCssUnit","regExp","matches","exec","replace","isMathExpression","i","includes","evalMathExpression","errorFound","cssUnitsBits","parsedUnit","toFixed","convertParsedUnitToPx","PIXELS_PER_INCH","ONE_PERCENT","defaultProperties","fontSize","lineHeight","width","height","type","setOptions","Object","assign","relativeUnits","em","rem","vh","vw","vmin","vmax","ch","ex","lh","absoluteUnits","in","cm","mm","pt","pc","px","Q","Number","isFinite","cache","memoizedGetPxFromCssUnit","hash","hashOptions","hasOwnProperty"],"mappings":"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","sourcesContent":["/**\n * Converts string to object { value, unit }.\n *\n * @param {string} cssUnit\n * @return {Object} parsedUnit\n */\nfunction parseUnit( cssUnit ) {\n\tconst match = cssUnit\n\t\t?.trim()\n\t\t.match(\n\t\t\t/^(0?[-.]?\\d+)(r?e[m|x]|v[h|w|min|max]+|p[x|t|c]|[c|m]m|%|in|ch|Q|lh)$/\n\t\t);\n\tif ( ! isNaN( cssUnit ) && ! isNaN( parseFloat( cssUnit ) ) ) {\n\t\treturn { value: parseFloat( cssUnit ), unit: 'px' };\n\t}\n\treturn match\n\t\t? { value: parseFloat( match[ 1 ] ) || match[ 1 ], unit: match[ 2 ] }\n\t\t: { value: cssUnit, unit: undefined };\n}\n/**\n * Evaluate a math expression.\n *\n * @param {string} expression\n * @return {number} evaluated expression.\n */\nfunction calculate( expression ) {\n\treturn Function( `'use strict'; return (${ expression })` )();\n}\n\n/**\n * Calculates the css function value for the supported css functions such as max, min, clamp and calc.\n *\n * @param {string} functionUnitValue string should be in a particular format (for example min(12px,12px) ) no nested loops.\n * @param {Object} options\n * @return {string} unit containing the unit in PX.\n */\nfunction getFunctionUnitValue( functionUnitValue, options ) {\n\tconst functionUnit = functionUnitValue.split( /[(),]/g ).filter( Boolean );\n\n\tconst units = functionUnit\n\t\t.slice( 1 )\n\t\t.map( ( unit ) => parseUnit( getPxFromCssUnit( unit, options ) ).value )\n\t\t.filter( Boolean );\n\n\tswitch ( functionUnit[ 0 ] ) {\n\t\tcase 'min':\n\t\t\treturn Math.min( ...units ) + 'px';\n\t\tcase 'max':\n\t\t\treturn Math.max( ...units ) + 'px';\n\t\tcase 'clamp':\n\t\t\tif ( units.length !== 3 ) {\n\t\t\t\treturn null;\n\t\t\t}\n\t\t\tif ( units[ 1 ] < units[ 0 ] ) {\n\t\t\t\treturn units[ 0 ] + 'px';\n\t\t\t}\n\t\t\tif ( units[ 1 ] > units[ 2 ] ) {\n\t\t\t\treturn units[ 2 ] + 'px';\n\t\t\t}\n\t\t\treturn units[ 1 ] + 'px';\n\t\tcase 'calc':\n\t\t\treturn units[ 0 ] + 'px';\n\t}\n}\n\n/**\n * Take a css function such as min, max, calc, clamp and returns parsedUnit\n *\n * How this works for the nested function is that it first replaces the inner function call.\n * Then it tackles the outer onces.\n * So for example: min( max(25px, 35px), 40px )\n * in the first pass we would replace max(25px, 35px) with 35px.\n * then we would try to evaluate min( 35px, 40px )\n * and then finally return 35px.\n *\n * @param {string} cssUnit\n * @return {Object} parsedUnit object.\n */\nfunction parseUnitFunction( cssUnit ) {\n\twhile ( true ) {\n\t\tconst currentCssUnit = cssUnit;\n\t\tconst regExp = /(max|min|calc|clamp)\\(([^()]*)\\)/g;\n\t\tconst matches = regExp.exec( cssUnit ) || [];\n\t\tif ( matches[ 0 ] ) {\n\t\t\tconst functionUnitValue = getFunctionUnitValue( matches[ 0 ] );\n\t\t\tcssUnit = cssUnit.replace( matches[ 0 ], functionUnitValue );\n\t\t}\n\n\t\t// if the unit hasn't been modified or we have a single value break free.\n\t\tif ( cssUnit === currentCssUnit || parseFloat( cssUnit ) ) {\n\t\t\tbreak;\n\t\t}\n\t}\n\n\treturn parseUnit( cssUnit );\n}\n/**\n * Return true if we think this is a math expression.\n *\n * @param {string} cssUnit the cssUnit value being evaluted.\n * @return {boolean} Whether the cssUnit is a math expression.\n */\nfunction isMathExpression( cssUnit ) {\n\tfor ( let i = 0; i < cssUnit.length; i++ ) {\n\t\tif ( [ '+', '-', '/', '*' ].includes( cssUnit[ i ] ) ) {\n\t\t\treturn true;\n\t\t}\n\t}\n\treturn false;\n}\n/**\n * Evaluates the math expression and return a px value.\n *\n * @param {string} cssUnit the cssUnit value being evaluted.\n * @return {string} return a converfted value to px.\n */\nfunction evalMathExpression( cssUnit ) {\n\tlet errorFound = false;\n\t// Convert every part of the expression to px values.\n\tconst cssUnitsBits = cssUnit.split( /[+-/*/]/g ).filter( Boolean );\n\tfor ( const unit of cssUnitsBits ) {\n\t\t// Standardize the unit to px and extract the value.\n\t\tconst parsedUnit = parseUnit( getPxFromCssUnit( unit ) );\n\t\tif ( ! parseFloat( parsedUnit.value ) ) {\n\t\t\terrorFound = true;\n\t\t\t// end early since we are dealing with a null value.\n\t\t\tbreak;\n\t\t}\n\t\tcssUnit = cssUnit.replace( unit, parsedUnit.value );\n\t}\n\n\treturn errorFound ? null : calculate( cssUnit ).toFixed( 0 ) + 'px';\n}\n\n/**\n * Convert a parsedUnit object to px value.\n *\n * @param {Object} parsedUnit\n * @param {Object} options\n * @return {string} or {null} returns the converted with in a px value format.\n */\nfunction convertParsedUnitToPx( parsedUnit, options ) {\n\tconst PIXELS_PER_INCH = 96;\n\tconst ONE_PERCENT = 0.01;\n\n\tconst defaultProperties = {\n\t\tfontSize: 16,\n\t\tlineHeight: 16,\n\t\twidth: 375,\n\t\theight: 812,\n\t\ttype: 'font',\n\t};\n\n\tconst setOptions = Object.assign( {}, defaultProperties, options );\n\n\tconst relativeUnits = {\n\t\tem: setOptions.fontSize,\n\t\trem: setOptions.fontSize,\n\t\tvh: setOptions.height * ONE_PERCENT,\n\t\tvw: setOptions.width * ONE_PERCENT,\n\t\tvmin:\n\t\t\t( setOptions.width < setOptions.height\n\t\t\t\t? setOptions.width\n\t\t\t\t: setOptions.height ) * ONE_PERCENT,\n\t\tvmax:\n\t\t\t( setOptions.width > setOptions.height\n\t\t\t\t? setOptions.width\n\t\t\t\t: setOptions.height ) * ONE_PERCENT,\n\t\t'%':\n\t\t\t( setOptions.type === 'font'\n\t\t\t\t? setOptions.fontSize\n\t\t\t\t: setOptions.width ) * ONE_PERCENT,\n\t\tch: 8, // The advance measure (width) of the glyph \"0\" of the element's font. Approximate\n\t\tex: 7.15625, // x-height of the element's font. Approximate\n\t\tlh: setOptions.lineHeight,\n\t};\n\n\tconst absoluteUnits = {\n\t\tin: PIXELS_PER_INCH,\n\t\tcm: PIXELS_PER_INCH / 2.54,\n\t\tmm: PIXELS_PER_INCH / 25.4,\n\t\tpt: PIXELS_PER_INCH / 72,\n\t\tpc: PIXELS_PER_INCH / 6,\n\t\tpx: 1,\n\t\tQ: PIXELS_PER_INCH / 2.54 / 40,\n\t};\n\n\tif ( relativeUnits[ parsedUnit.unit ] ) {\n\t\treturn (\n\t\t\t( relativeUnits[ parsedUnit.unit ] * parsedUnit.value ).toFixed(\n\t\t\t\t0\n\t\t\t) + 'px'\n\t\t);\n\t}\n\n\tif ( absoluteUnits[ parsedUnit.unit ] ) {\n\t\treturn (\n\t\t\t( absoluteUnits[ parsedUnit.unit ] * parsedUnit.value ).toFixed(\n\t\t\t\t0\n\t\t\t) + 'px'\n\t\t);\n\t}\n\n\treturn null;\n}\n\n/**\n * Returns the px value of a cssUnit.\n *\n * @param {string} cssUnit\n * @param {Object} options\n * @return {string} returns the cssUnit value in a simple px format.\n */\nexport function getPxFromCssUnit( cssUnit, options = {} ) {\n\tif ( Number.isFinite( cssUnit ) ) {\n\t\treturn cssUnit.toFixed( 0 ) + 'px';\n\t}\n\tif ( cssUnit === undefined ) {\n\t\treturn null;\n\t}\n\tlet parsedUnit = parseUnit( cssUnit );\n\n\tif ( ! parsedUnit.unit ) {\n\t\tparsedUnit = parseUnitFunction( cssUnit, options );\n\t}\n\n\tif ( isMathExpression( cssUnit ) && ! parsedUnit.unit ) {\n\t\treturn evalMathExpression( cssUnit );\n\t}\n\n\treturn convertParsedUnitToPx( parsedUnit, options );\n}\n\n// Use simple cache.\nconst cache = {};\n/**\n * Returns the px value of a cssUnit. The memoized version of getPxFromCssUnit;\n *\n * @param {string} cssUnit\n * @param {Object} options\n * @return {string} returns the cssUnit value in a simple px format.\n */\nfunction memoizedGetPxFromCssUnit( cssUnit, options = {} ) {\n\tconst hash = cssUnit + hashOptions( options );\n\n\tif ( ! cache[ hash ] ) {\n\t\tcache[ hash ] = getPxFromCssUnit( cssUnit, options );\n\t}\n\treturn cache[ hash ];\n}\n\nfunction hashOptions( options ) {\n\tlet hash = '';\n\tif ( options.hasOwnProperty( 'fontSize' ) ) {\n\t\thash = ':' + options.width;\n\t}\n\tif ( options.hasOwnProperty( 'lineHeight' ) ) {\n\t\thash = ':' + options.lineHeight;\n\t}\n\tif ( options.hasOwnProperty( 'width' ) ) {\n\t\thash = ':' + options.width;\n\t}\n\tif ( options.hasOwnProperty( 'height' ) ) {\n\t\thash = ':' + options.height;\n\t}\n\tif ( options.hasOwnProperty( 'type' ) ) {\n\t\thash = ':' + options.type;\n\t}\n\treturn hash;\n}\n\nexport default memoizedGetPxFromCssUnit;\n"]}
1
+ {"version":3,"sources":["@wordpress/block-editor/src/utils/parse-css-unit-to-px.js"],"names":["parseUnit","cssUnit","match","trim","isNaN","parseFloat","value","unit","undefined","calculate","expression","Function","getFunctionUnitValue","functionUnitValue","options","functionUnit","split","filter","Boolean","units","slice","map","getPxFromCssUnit","Math","min","max","length","parseUnitFunction","currentCssUnit","regExp","matches","exec","replace","isMathExpression","i","includes","evalMathExpression","errorFound","cssUnitsBits","parsedUnit","toFixed","convertParsedUnitToPx","PIXELS_PER_INCH","ONE_PERCENT","defaultProperties","fontSize","lineHeight","width","height","type","setOptions","Object","assign","relativeUnits","em","rem","vh","vw","vmin","vmax","ch","ex","lh","absoluteUnits","in","cm","mm","pt","pc","px","Q","Number","isFinite","cache","memoizedGetPxFromCssUnit","hash","hashOptions","hasOwnProperty"],"mappings":"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","sourcesContent":["/**\n * Converts string to object { value, unit }.\n *\n * @param {string} cssUnit\n * @return {Object} parsedUnit\n */\nfunction parseUnit( cssUnit ) {\n\tconst match = cssUnit\n\t\t?.trim()\n\t\t.match(\n\t\t\t/^(0?[-.]?\\d*\\.?\\d+)(r?e[m|x]|v[h|w|min|max]+|p[x|t|c]|[c|m]m|%|in|ch|Q|lh)$/\n\t\t);\n\tif ( ! isNaN( cssUnit ) && ! isNaN( parseFloat( cssUnit ) ) ) {\n\t\treturn { value: parseFloat( cssUnit ), unit: 'px' };\n\t}\n\treturn match\n\t\t? { value: parseFloat( match[ 1 ] ) || match[ 1 ], unit: match[ 2 ] }\n\t\t: { value: cssUnit, unit: undefined };\n}\n/**\n * Evaluate a math expression.\n *\n * @param {string} expression\n * @return {number} evaluated expression.\n */\nfunction calculate( expression ) {\n\treturn Function( `'use strict'; return (${ expression })` )();\n}\n\n/**\n * Calculates the css function value for the supported css functions such as max, min, clamp and calc.\n *\n * @param {string} functionUnitValue string should be in a particular format (for example min(12px,12px) ) no nested loops.\n * @param {Object} options\n * @return {string} unit containing the unit in PX.\n */\nfunction getFunctionUnitValue( functionUnitValue, options ) {\n\tconst functionUnit = functionUnitValue.split( /[(),]/g ).filter( Boolean );\n\n\tconst units = functionUnit\n\t\t.slice( 1 )\n\t\t.map( ( unit ) => parseUnit( getPxFromCssUnit( unit, options ) ).value )\n\t\t.filter( Boolean );\n\n\tswitch ( functionUnit[ 0 ] ) {\n\t\tcase 'min':\n\t\t\treturn Math.min( ...units ) + 'px';\n\t\tcase 'max':\n\t\t\treturn Math.max( ...units ) + 'px';\n\t\tcase 'clamp':\n\t\t\tif ( units.length !== 3 ) {\n\t\t\t\treturn null;\n\t\t\t}\n\t\t\tif ( units[ 1 ] < units[ 0 ] ) {\n\t\t\t\treturn units[ 0 ] + 'px';\n\t\t\t}\n\t\t\tif ( units[ 1 ] > units[ 2 ] ) {\n\t\t\t\treturn units[ 2 ] + 'px';\n\t\t\t}\n\t\t\treturn units[ 1 ] + 'px';\n\t\tcase 'calc':\n\t\t\treturn units[ 0 ] + 'px';\n\t}\n}\n\n/**\n * Take a css function such as min, max, calc, clamp and returns parsedUnit\n *\n * How this works for the nested function is that it first replaces the inner function call.\n * Then it tackles the outer onces.\n * So for example: min( max(25px, 35px), 40px )\n * in the first pass we would replace max(25px, 35px) with 35px.\n * then we would try to evaluate min( 35px, 40px )\n * and then finally return 35px.\n *\n * @param {string} cssUnit\n * @return {Object} parsedUnit object.\n */\nfunction parseUnitFunction( cssUnit ) {\n\twhile ( true ) {\n\t\tconst currentCssUnit = cssUnit;\n\t\tconst regExp = /(max|min|calc|clamp)\\(([^()]*)\\)/g;\n\t\tconst matches = regExp.exec( cssUnit ) || [];\n\t\tif ( matches[ 0 ] ) {\n\t\t\tconst functionUnitValue = getFunctionUnitValue( matches[ 0 ] );\n\t\t\tcssUnit = cssUnit.replace( matches[ 0 ], functionUnitValue );\n\t\t}\n\n\t\t// if the unit hasn't been modified or we have a single value break free.\n\t\tif ( cssUnit === currentCssUnit || parseFloat( cssUnit ) ) {\n\t\t\tbreak;\n\t\t}\n\t}\n\n\treturn parseUnit( cssUnit );\n}\n/**\n * Return true if we think this is a math expression.\n *\n * @param {string} cssUnit the cssUnit value being evaluted.\n * @return {boolean} Whether the cssUnit is a math expression.\n */\nfunction isMathExpression( cssUnit ) {\n\tfor ( let i = 0; i < cssUnit.length; i++ ) {\n\t\tif ( [ '+', '-', '/', '*' ].includes( cssUnit[ i ] ) ) {\n\t\t\treturn true;\n\t\t}\n\t}\n\treturn false;\n}\n/**\n * Evaluates the math expression and return a px value.\n *\n * @param {string} cssUnit the cssUnit value being evaluted.\n * @return {string} return a converfted value to px.\n */\nfunction evalMathExpression( cssUnit ) {\n\tlet errorFound = false;\n\t// Convert every part of the expression to px values.\n\tconst cssUnitsBits = cssUnit.split( /[+-/*/]/g ).filter( Boolean );\n\tfor ( const unit of cssUnitsBits ) {\n\t\t// Standardize the unit to px and extract the value.\n\t\tconst parsedUnit = parseUnit( getPxFromCssUnit( unit ) );\n\t\tif ( ! parseFloat( parsedUnit.value ) ) {\n\t\t\terrorFound = true;\n\t\t\t// end early since we are dealing with a null value.\n\t\t\tbreak;\n\t\t}\n\t\tcssUnit = cssUnit.replace( unit, parsedUnit.value );\n\t}\n\n\treturn errorFound ? null : calculate( cssUnit ).toFixed( 0 ) + 'px';\n}\n\n/**\n * Convert a parsedUnit object to px value.\n *\n * @param {Object} parsedUnit\n * @param {Object} options\n * @return {string} or {null} returns the converted with in a px value format.\n */\nfunction convertParsedUnitToPx( parsedUnit, options ) {\n\tconst PIXELS_PER_INCH = 96;\n\tconst ONE_PERCENT = 0.01;\n\n\tconst defaultProperties = {\n\t\tfontSize: 16,\n\t\tlineHeight: 16,\n\t\twidth: 375,\n\t\theight: 812,\n\t\ttype: 'font',\n\t};\n\n\tconst setOptions = Object.assign( {}, defaultProperties, options );\n\n\tconst relativeUnits = {\n\t\tem: setOptions.fontSize,\n\t\trem: setOptions.fontSize,\n\t\tvh: setOptions.height * ONE_PERCENT,\n\t\tvw: setOptions.width * ONE_PERCENT,\n\t\tvmin:\n\t\t\t( setOptions.width < setOptions.height\n\t\t\t\t? setOptions.width\n\t\t\t\t: setOptions.height ) * ONE_PERCENT,\n\t\tvmax:\n\t\t\t( setOptions.width > setOptions.height\n\t\t\t\t? setOptions.width\n\t\t\t\t: setOptions.height ) * ONE_PERCENT,\n\t\t'%':\n\t\t\t( setOptions.type === 'font'\n\t\t\t\t? setOptions.fontSize\n\t\t\t\t: setOptions.width ) * ONE_PERCENT,\n\t\tch: 8, // The advance measure (width) of the glyph \"0\" of the element's font. Approximate\n\t\tex: 7.15625, // x-height of the element's font. Approximate\n\t\tlh: setOptions.lineHeight,\n\t};\n\n\tconst absoluteUnits = {\n\t\tin: PIXELS_PER_INCH,\n\t\tcm: PIXELS_PER_INCH / 2.54,\n\t\tmm: PIXELS_PER_INCH / 25.4,\n\t\tpt: PIXELS_PER_INCH / 72,\n\t\tpc: PIXELS_PER_INCH / 6,\n\t\tpx: 1,\n\t\tQ: PIXELS_PER_INCH / 2.54 / 40,\n\t};\n\n\tif ( relativeUnits[ parsedUnit.unit ] ) {\n\t\treturn (\n\t\t\t( relativeUnits[ parsedUnit.unit ] * parsedUnit.value ).toFixed(\n\t\t\t\t0\n\t\t\t) + 'px'\n\t\t);\n\t}\n\n\tif ( absoluteUnits[ parsedUnit.unit ] ) {\n\t\treturn (\n\t\t\t( absoluteUnits[ parsedUnit.unit ] * parsedUnit.value ).toFixed(\n\t\t\t\t0\n\t\t\t) + 'px'\n\t\t);\n\t}\n\n\treturn null;\n}\n\n/**\n * Returns the px value of a cssUnit.\n *\n * @param {string} cssUnit\n * @param {Object} options\n * @return {string} returns the cssUnit value in a simple px format.\n */\nexport function getPxFromCssUnit( cssUnit, options = {} ) {\n\tif ( Number.isFinite( cssUnit ) ) {\n\t\treturn cssUnit.toFixed( 0 ) + 'px';\n\t}\n\tif ( cssUnit === undefined ) {\n\t\treturn null;\n\t}\n\tlet parsedUnit = parseUnit( cssUnit );\n\n\tif ( ! parsedUnit.unit ) {\n\t\tparsedUnit = parseUnitFunction( cssUnit, options );\n\t}\n\n\tif ( isMathExpression( cssUnit ) && ! parsedUnit.unit ) {\n\t\treturn evalMathExpression( cssUnit );\n\t}\n\n\treturn convertParsedUnitToPx( parsedUnit, options );\n}\n\n// Use simple cache.\nconst cache = {};\n/**\n * Returns the px value of a cssUnit. The memoized version of getPxFromCssUnit;\n *\n * @param {string} cssUnit\n * @param {Object} options\n * @return {string} returns the cssUnit value in a simple px format.\n */\nfunction memoizedGetPxFromCssUnit( cssUnit, options = {} ) {\n\tconst hash = cssUnit + hashOptions( options );\n\n\tif ( ! cache[ hash ] ) {\n\t\tcache[ hash ] = getPxFromCssUnit( cssUnit, options );\n\t}\n\treturn cache[ hash ];\n}\n\nfunction hashOptions( options ) {\n\tlet hash = '';\n\tif ( options.hasOwnProperty( 'fontSize' ) ) {\n\t\thash = ':' + options.width;\n\t}\n\tif ( options.hasOwnProperty( 'lineHeight' ) ) {\n\t\thash = ':' + options.lineHeight;\n\t}\n\tif ( options.hasOwnProperty( 'width' ) ) {\n\t\thash = ':' + options.width;\n\t}\n\tif ( options.hasOwnProperty( 'height' ) ) {\n\t\thash = ':' + options.height;\n\t}\n\tif ( options.hasOwnProperty( 'type' ) ) {\n\t\thash = ':' + options.type;\n\t}\n\treturn hash;\n}\n\nexport default memoizedGetPxFromCssUnit;\n"]}
@@ -1206,62 +1206,65 @@
1206
1206
  padding: 0;
1207
1207
  }
1208
1208
 
1209
- .block-editor-block-styles {
1210
- display: flex;
1211
- flex-wrap: wrap;
1212
- justify-content: space-between;
1209
+ .block-editor-block-styles + .default-style-picker__default-switcher {
1210
+ margin-top: 16px;
1213
1211
  }
1214
1212
 
1215
- .block-editor-block-styles__item {
1216
- width: calc(50% - 4px);
1217
- margin: 4px 0;
1218
- flex-shrink: 0;
1219
- cursor: pointer;
1220
- overflow: hidden;
1221
- border-radius: 2px;
1222
- padding: 6px;
1223
- display: flex;
1224
- flex-direction: column;
1225
- }
1226
- .block-editor-block-styles__item:focus {
1227
- box-shadow: 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);
1228
- outline: 2px solid transparent;
1213
+ .block-editor-block-styles__preview-panel {
1214
+ display: none;
1215
+ position: absolute;
1216
+ left: 16px;
1217
+ right: auto;
1218
+ z-index: 90;
1229
1219
  }
1230
- .block-editor-block-styles__item:hover .block-editor-block-styles__item-preview {
1231
- border-color: var(--wp-admin-theme-color);
1220
+ @media (min-width: 782px) {
1221
+ .block-editor-block-styles__preview-panel {
1222
+ display: block;
1223
+ }
1232
1224
  }
1233
- .block-editor-block-styles__item.is-active .block-editor-block-styles__item-label {
1234
- font-weight: bold;
1225
+ .block-editor-block-styles__preview-panel .block-editor-inserter__preview-container {
1226
+ right: auto;
1227
+ left: auto;
1228
+ top: auto;
1229
+ position: static;
1235
1230
  }
1236
- .block-editor-block-styles__item.is-active .block-editor-block-styles__item-preview {
1231
+ .block-editor-block-styles__preview-panel .block-editor-block-card__title.block-editor-block-card__title {
1237
1232
  margin: 0;
1238
- border: 2px solid #1e1e1e;
1239
1233
  }
1240
- .block-editor-block-styles__item .block-editor-block-preview__container {
1241
- cursor: inherit;
1234
+ .block-editor-block-styles__preview-panel .block-editor-block-icon {
1235
+ display: none;
1242
1236
  }
1243
1237
 
1244
- .block-editor-block-styles__item-preview {
1245
- outline: 1px solid transparent;
1246
- padding: 0;
1247
- margin: 2px;
1248
- border-radius: 2px;
1238
+ .block-editor-block-styles__variants {
1249
1239
  display: flex;
1250
- overflow: hidden;
1251
- background: #fff;
1252
- align-items: center;
1253
- flex-grow: 1;
1254
- min-height: 80px;
1255
- max-height: 160px;
1240
+ flex-wrap: wrap;
1241
+ justify-content: space-between;
1242
+ gap: 8px;
1256
1243
  }
1257
-
1258
- .block-editor-block-switcher__styles__menugroup {
1259
- position: relative;
1244
+ .block-editor-block-styles__variants .block-editor-block-styles__item {
1245
+ color: #2f2f2f;
1246
+ box-shadow: inset 0 0 0 1px #ccc;
1247
+ display: inline-block;
1248
+ width: calc(50% - 4px);
1249
+ }
1250
+ .block-editor-block-styles__variants .block-editor-block-styles__item:focus, .block-editor-block-styles__variants .block-editor-block-styles__item:hover {
1251
+ color: var(--wp-admin-theme-color);
1252
+ box-shadow: inset 0 0 0 2px var(--wp-admin-theme-color);
1253
+ }
1254
+ .block-editor-block-styles__variants .block-editor-block-styles__item.is-active, .block-editor-block-styles__variants .block-editor-block-styles__item.is-active:hover {
1255
+ background-color: #2f2f2f;
1256
+ box-shadow: none;
1257
+ }
1258
+ .block-editor-block-styles__variants .block-editor-block-styles__item.is-active .block-editor-block-styles__item-text, .block-editor-block-styles__variants .block-editor-block-styles__item.is-active:hover .block-editor-block-styles__item-text {
1259
+ color: #fff;
1260
+ }
1261
+ .block-editor-block-styles__variants .block-editor-block-styles__item.is-active:focus {
1262
+ box-shadow: inset 0 0 0 1px #fff, 0 0 0 2px var(--wp-admin-theme-color);
1260
1263
  }
1261
1264
 
1262
- .block-editor-block-styles__item-label {
1263
- text-align: center;
1264
- padding: 4px 0;
1265
+ .block-editor-block-styles__block-preview-container,
1266
+ .block-editor-block-styles__block-preview-container * {
1267
+ box-sizing: border-box !important;
1265
1268
  }
1266
1269
 
1267
1270
  .block-editor-block-switcher {
@@ -1668,7 +1671,7 @@
1668
1671
  margin-bottom: 12px;
1669
1672
  }
1670
1673
  .components-border-radius-control legend {
1671
- padding-bottom: 4px;
1674
+ margin-bottom: 8px;
1672
1675
  }
1673
1676
  .components-border-radius-control .components-border-radius-control__wrapper {
1674
1677
  display: flex;
@@ -1718,7 +1721,6 @@
1718
1721
  }
1719
1722
  .components-border-style-control .components-border-style-control__buttons {
1720
1723
  display: inline-flex;
1721
- margin-bottom: 24px;
1722
1724
  }
1723
1725
  .components-border-style-control .components-border-style-control__buttons .components-button.has-icon {
1724
1726
  min-width: 30px;
@@ -1757,11 +1759,17 @@
1757
1759
  margin-bottom: 12px;
1758
1760
  }
1759
1761
 
1760
- .block-editor-panel-color-gradient-settings .component-color-indicator {
1761
- vertical-align: text-bottom;
1762
+ .block-editor-panel-color-gradient-settings .block-editor-panel-color-gradient-settings__panel-title {
1763
+ display: flex;
1764
+ gap: 8px;
1762
1765
  }
1763
- .block-editor-panel-color-gradient-settings__panel-title .component-color-indicator {
1764
- display: inline-block;
1766
+ .block-editor-panel-color-gradient-settings .block-editor-panel-color-gradient-settings__panel-title .component-color-indicator {
1767
+ width: 12px;
1768
+ height: 12px;
1769
+ align-self: center;
1770
+ }
1771
+ .block-editor-panel-color-gradient-settings .block-editor-panel-color-gradient-settings__panel-title .component-color-indicator:first-child {
1772
+ margin-right: 12px;
1765
1773
  }
1766
1774
  .block-editor-panel-color-gradient-settings.is-opened .block-editor-panel-color-gradient-settings__panel-title .component-color-indicator {
1767
1775
  display: none;
@@ -1776,6 +1784,44 @@
1776
1784
  .block-editor-block-inspector .block-editor-panel-color-gradient-settings .components-base-control {
1777
1785
  margin-bottom: inherit;
1778
1786
  }
1787
+ .block-editor-panel-color-gradient-settings .block-editor-panel-color-gradient-settings__dropdown {
1788
+ display: block;
1789
+ }
1790
+
1791
+ .block-editor-panel-color-gradient-settings__dropdown {
1792
+ width: 100%;
1793
+ }
1794
+
1795
+ .block-editor-panel-color-gradient-settings__dropdown-content .components-popover__content > div {
1796
+ width: 280px;
1797
+ }
1798
+
1799
+ @media (min-width: 782px) {
1800
+ .block-editor-panel-color-gradient-settings__dropdown-content .components-popover__content {
1801
+ margin-left: 156px !important;
1802
+ }
1803
+ .block-editor-panel-color-gradient-settings__dropdown-content.is-from-top .components-popover__content {
1804
+ margin-top: -60px !important;
1805
+ }
1806
+ .block-editor-panel-color-gradient-settings__dropdown-content.is-from-bottom .components-popover__content {
1807
+ margin-bottom: -60px !important;
1808
+ }
1809
+ }
1810
+ .block-editor-panel-color-gradient-settings__dropdown:last-child > div {
1811
+ border-bottom-width: 0;
1812
+ }
1813
+
1814
+ .block-editor-panel-color-gradient-settings__item {
1815
+ padding-top: 12px !important;
1816
+ padding-bottom: 12px !important;
1817
+ }
1818
+ .block-editor-panel-color-gradient-settings__item .block-editor-panel-color-gradient-settings__color-indicator {
1819
+ background: linear-gradient(45deg, transparent 48%, #ddd 48%, #ddd 52%, transparent 52%);
1820
+ }
1821
+ .block-editor-panel-color-gradient-settings__item.is-open {
1822
+ background: #f0f0f0;
1823
+ color: var(--wp-admin-theme-color);
1824
+ }
1779
1825
 
1780
1826
  .block-editor-contrast-checker > .components-notice {
1781
1827
  margin: 0;
@@ -1873,6 +1919,10 @@
1873
1919
  display: flex;
1874
1920
  }
1875
1921
 
1922
+ .block-editor-default-block-appender__content {
1923
+ cursor: text;
1924
+ }
1925
+
1876
1926
  .block-editor-duotone-control__popover > .components-popover__content > div {
1877
1927
  padding: 16px;
1878
1928
  width: 280px;
@@ -1907,6 +1957,119 @@
1907
1957
  text-transform: capitalize;
1908
1958
  }
1909
1959
 
1960
+ .block-editor-image-size-control {
1961
+ margin-bottom: 1em;
1962
+ }
1963
+ .block-editor-image-size-control .block-editor-image-size-control__row {
1964
+ display: flex;
1965
+ justify-content: space-between;
1966
+ }
1967
+ .block-editor-image-size-control .block-editor-image-size-control__row .block-editor-image-size-control__width,
1968
+ .block-editor-image-size-control .block-editor-image-size-control__row .block-editor-image-size-control__height {
1969
+ margin-bottom: 0.5em;
1970
+ }
1971
+ .block-editor-image-size-control .block-editor-image-size-control__row .block-editor-image-size-control__width input,
1972
+ .block-editor-image-size-control .block-editor-image-size-control__row .block-editor-image-size-control__height input {
1973
+ line-height: 1.25;
1974
+ }
1975
+ .block-editor-image-size-control .block-editor-image-size-control__row .block-editor-image-size-control__width {
1976
+ margin-left: 5px;
1977
+ }
1978
+ .block-editor-image-size-control .block-editor-image-size-control__row .block-editor-image-size-control__height {
1979
+ margin-right: 5px;
1980
+ }
1981
+
1982
+ .block-editor-block-list__layout.has-overlay::after {
1983
+ content: "";
1984
+ position: absolute;
1985
+ top: 0;
1986
+ left: 0;
1987
+ bottom: 0;
1988
+ right: 0;
1989
+ z-index: 60;
1990
+ }
1991
+
1992
+ .block-editor-block-types-list__list-item {
1993
+ display: block;
1994
+ width: 33.33%;
1995
+ padding: 0;
1996
+ margin: 0;
1997
+ }
1998
+
1999
+ .components-button.block-editor-block-types-list__item {
2000
+ display: flex;
2001
+ flex-direction: column;
2002
+ width: 100%;
2003
+ font-size: 13px;
2004
+ color: #1e1e1e;
2005
+ padding: 8px;
2006
+ align-items: stretch;
2007
+ justify-content: center;
2008
+ cursor: pointer;
2009
+ background: transparent;
2010
+ word-break: break-word;
2011
+ border-radius: 2px;
2012
+ transition: all 0.05s ease-in-out;
2013
+ position: relative;
2014
+ height: auto;
2015
+ }
2016
+ @media (prefers-reduced-motion: reduce) {
2017
+ .components-button.block-editor-block-types-list__item {
2018
+ transition-duration: 0s;
2019
+ transition-delay: 0s;
2020
+ }
2021
+ }
2022
+ .components-button.block-editor-block-types-list__item:disabled {
2023
+ opacity: 0.6;
2024
+ cursor: default;
2025
+ }
2026
+ .components-button.block-editor-block-types-list__item:not(:disabled):hover {
2027
+ color: var(--wp-admin-theme-color) !important;
2028
+ }
2029
+ .components-button.block-editor-block-types-list__item:not(:disabled):focus {
2030
+ box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);
2031
+ }
2032
+ .components-button.block-editor-block-types-list__item:not(:disabled).is-active {
2033
+ color: #fff;
2034
+ background: #1e1e1e;
2035
+ outline: 2px solid transparent;
2036
+ outline-offset: -2px;
2037
+ }
2038
+
2039
+ .block-editor-block-types-list__item-icon {
2040
+ padding: 12px 20px;
2041
+ border-radius: 2px;
2042
+ color: #1e1e1e;
2043
+ transition: all 0.05s ease-in-out;
2044
+ }
2045
+ @media (prefers-reduced-motion: reduce) {
2046
+ .block-editor-block-types-list__item-icon {
2047
+ transition-duration: 0s;
2048
+ transition-delay: 0s;
2049
+ }
2050
+ }
2051
+ .block-editor-block-types-list__item-icon .block-editor-block-icon {
2052
+ margin-right: auto;
2053
+ margin-left: auto;
2054
+ }
2055
+ .block-editor-block-types-list__item-icon svg {
2056
+ transition: all 0.15s ease-out;
2057
+ }
2058
+ @media (prefers-reduced-motion: reduce) {
2059
+ .block-editor-block-types-list__item-icon svg {
2060
+ transition-duration: 0s;
2061
+ transition-delay: 0s;
2062
+ }
2063
+ }
2064
+ .block-editor-block-types-list__list-item[draggable=true] .block-editor-block-types-list__item-icon {
2065
+ cursor: grab;
2066
+ }
2067
+
2068
+ .block-editor-block-types-list__item-title {
2069
+ padding: 4px 2px 8px;
2070
+ font-size: 12px;
2071
+ }
2072
+
1910
2073
  .items-justified-left {
1911
2074
  justify-content: flex-start;
1912
2075
  }
@@ -1923,6 +2086,14 @@
1923
2086
  justify-content: space-between;
1924
2087
  }
1925
2088
 
2089
+ .block-editor-line-height-control {
2090
+ margin-bottom: 24px;
2091
+ }
2092
+ .block-editor-line-height-control input {
2093
+ display: block;
2094
+ max-width: 60px;
2095
+ }
2096
+
1926
2097
  @keyframes loadingpulse {
1927
2098
  0% {
1928
2099
  opacity: 1;
@@ -2200,6 +2371,7 @@
2200
2371
  font-size: 0.9em;
2201
2372
  background-color: #f0f0f0;
2202
2373
  border-radius: 2px;
2374
+ white-space: nowrap;
2203
2375
  }
2204
2376
  .block-editor-link-control__search-item .block-editor-link-control__search-item-description {
2205
2377
  padding-top: 12px;
@@ -2378,127 +2550,6 @@
2378
2550
  flex-shrink: 0;
2379
2551
  }
2380
2552
 
2381
- .block-editor-line-height-control {
2382
- margin-bottom: 24px;
2383
- }
2384
- .block-editor-line-height-control input {
2385
- display: block;
2386
- max-width: 60px;
2387
- }
2388
-
2389
- .block-editor-image-size-control {
2390
- margin-bottom: 1em;
2391
- }
2392
- .block-editor-image-size-control .block-editor-image-size-control__row {
2393
- display: flex;
2394
- justify-content: space-between;
2395
- }
2396
- .block-editor-image-size-control .block-editor-image-size-control__row .block-editor-image-size-control__width,
2397
- .block-editor-image-size-control .block-editor-image-size-control__row .block-editor-image-size-control__height {
2398
- margin-bottom: 0.5em;
2399
- }
2400
- .block-editor-image-size-control .block-editor-image-size-control__row .block-editor-image-size-control__width input,
2401
- .block-editor-image-size-control .block-editor-image-size-control__row .block-editor-image-size-control__height input {
2402
- line-height: 1.25;
2403
- }
2404
- .block-editor-image-size-control .block-editor-image-size-control__row .block-editor-image-size-control__width {
2405
- margin-left: 5px;
2406
- }
2407
- .block-editor-image-size-control .block-editor-image-size-control__row .block-editor-image-size-control__height {
2408
- margin-right: 5px;
2409
- }
2410
-
2411
- .block-editor-block-list__layout.has-overlay::after {
2412
- content: "";
2413
- position: absolute;
2414
- top: 0;
2415
- left: 0;
2416
- bottom: 0;
2417
- right: 0;
2418
- z-index: 60;
2419
- }
2420
-
2421
- .block-editor-block-types-list__list-item {
2422
- display: block;
2423
- width: 33.33%;
2424
- padding: 0;
2425
- margin: 0;
2426
- }
2427
-
2428
- .components-button.block-editor-block-types-list__item {
2429
- display: flex;
2430
- flex-direction: column;
2431
- width: 100%;
2432
- font-size: 13px;
2433
- color: #1e1e1e;
2434
- padding: 8px;
2435
- align-items: stretch;
2436
- justify-content: center;
2437
- cursor: pointer;
2438
- background: transparent;
2439
- word-break: break-word;
2440
- border-radius: 2px;
2441
- transition: all 0.05s ease-in-out;
2442
- position: relative;
2443
- height: auto;
2444
- }
2445
- @media (prefers-reduced-motion: reduce) {
2446
- .components-button.block-editor-block-types-list__item {
2447
- transition-duration: 0s;
2448
- transition-delay: 0s;
2449
- }
2450
- }
2451
- .components-button.block-editor-block-types-list__item:disabled {
2452
- opacity: 0.6;
2453
- cursor: default;
2454
- }
2455
- .components-button.block-editor-block-types-list__item:not(:disabled):hover {
2456
- color: var(--wp-admin-theme-color) !important;
2457
- }
2458
- .components-button.block-editor-block-types-list__item:not(:disabled):focus {
2459
- box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);
2460
- }
2461
- .components-button.block-editor-block-types-list__item:not(:disabled).is-active {
2462
- color: #fff;
2463
- background: #1e1e1e;
2464
- outline: 2px solid transparent;
2465
- outline-offset: -2px;
2466
- }
2467
-
2468
- .block-editor-block-types-list__item-icon {
2469
- padding: 12px 20px;
2470
- border-radius: 2px;
2471
- color: #1e1e1e;
2472
- transition: all 0.05s ease-in-out;
2473
- }
2474
- @media (prefers-reduced-motion: reduce) {
2475
- .block-editor-block-types-list__item-icon {
2476
- transition-duration: 0s;
2477
- transition-delay: 0s;
2478
- }
2479
- }
2480
- .block-editor-block-types-list__item-icon .block-editor-block-icon {
2481
- margin-right: auto;
2482
- margin-left: auto;
2483
- }
2484
- .block-editor-block-types-list__item-icon svg {
2485
- transition: all 0.15s ease-out;
2486
- }
2487
- @media (prefers-reduced-motion: reduce) {
2488
- .block-editor-block-types-list__item-icon svg {
2489
- transition-duration: 0s;
2490
- transition-delay: 0s;
2491
- }
2492
- }
2493
- .block-editor-block-types-list__list-item[draggable=true] .block-editor-block-types-list__item-icon {
2494
- cursor: grab;
2495
- }
2496
-
2497
- .block-editor-block-types-list__item-title {
2498
- padding: 4px 2px 8px;
2499
- font-size: 12px;
2500
- }
2501
-
2502
2553
  .block-editor-list-view-tree {
2503
2554
  width: 100%;
2504
2555
  border-collapse: collapse;
@@ -3528,18 +3579,12 @@ figcaption.block-editor-rich-text__editable [data-rich-text-placeholder]::before
3528
3579
  margin-bottom: 8px;
3529
3580
  }
3530
3581
 
3531
- .block-editor-hooks__border-controls .block-editor-hooks__border-controls-row {
3532
- display: flex;
3533
- justify-content: space-between;
3534
- }
3535
- .block-editor-hooks__border-controls .block-editor-hooks__border-controls-row > * {
3536
- width: calc(50% - 8px);
3537
- }
3538
- .block-editor-hooks__border-controls .components-unit-control-wrapper {
3539
- margin-bottom: 24px;
3582
+ .border-block-support-panel .single-column {
3583
+ grid-column: span 1;
3540
3584
  }
3541
- .block-editor-hooks__border-controls .components-unit-control-wrapper:last-child {
3542
- margin-bottom: 8px;
3585
+
3586
+ .dimensions-block-support-panel .single-column {
3587
+ grid-column: span 1;
3543
3588
  }
3544
3589
 
3545
3590
  .typography-block-support-panel .components-font-appearance-control,