@wordpress/block-editor 14.4.0 → 14.5.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 (817) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/README.md +6 -2
  3. package/build/autocompleters/block.js.map +1 -1
  4. package/build/components/background-image-control/index.js +1 -1
  5. package/build/components/background-image-control/index.js.map +1 -1
  6. package/build/components/block-controls/slot.js.map +1 -1
  7. package/build/components/block-controls/slot.native.js.map +1 -1
  8. package/build/components/block-draggable/draggable-chip.js +1 -1
  9. package/build/components/block-draggable/draggable-chip.js.map +1 -1
  10. package/build/components/block-list/block-invalid-warning.native.js +1 -1
  11. package/build/components/block-list/block-invalid-warning.native.js.map +1 -1
  12. package/build/components/block-list/block-list-item.native.js.map +1 -1
  13. package/build/components/block-list/block.js.map +1 -1
  14. package/build/components/block-list/index.js +1 -0
  15. package/build/components/block-list/index.js.map +1 -1
  16. package/build/components/block-list/index.native.js.map +1 -1
  17. package/build/components/block-list/use-block-props/index.js.map +1 -1
  18. package/build/components/block-list/use-block-props/use-selected-block-event-handlers.js +14 -6
  19. package/build/components/block-list/use-block-props/use-selected-block-event-handlers.js.map +1 -1
  20. package/build/components/block-list/zoom-out-separator.js +10 -7
  21. package/build/components/block-list/zoom-out-separator.js.map +1 -1
  22. package/build/components/block-lock/modal.js +1 -1
  23. package/build/components/block-lock/modal.js.map +1 -1
  24. package/build/components/block-mover/button.js.map +1 -1
  25. package/build/components/block-parent-selector/index.js +1 -1
  26. package/build/components/block-parent-selector/index.js.map +1 -1
  27. package/build/components/block-pattern-setup/index.js.map +1 -1
  28. package/build/components/block-patterns-list/index.js.map +1 -1
  29. package/build/components/block-popover/index.js +45 -2
  30. package/build/components/block-popover/index.js.map +1 -1
  31. package/build/components/block-preview/auto.js +1 -4
  32. package/build/components/block-preview/auto.js.map +1 -1
  33. package/build/components/block-preview/index.js.map +1 -1
  34. package/build/components/block-rename/modal.js +2 -2
  35. package/build/components/block-rename/modal.js.map +1 -1
  36. package/build/components/block-settings-menu/block-parent-selector-menu-item.js +1 -1
  37. package/build/components/block-settings-menu/block-parent-selector-menu-item.js.map +1 -1
  38. package/build/components/block-switcher/block-transformations-menu.native.js +1 -1
  39. package/build/components/block-switcher/block-transformations-menu.native.js.map +1 -1
  40. package/build/components/block-switcher/index.js +2 -1
  41. package/build/components/block-switcher/index.js.map +1 -1
  42. package/build/components/block-switcher/pattern-transformations-menu.js.map +1 -1
  43. package/build/components/block-switcher/use-transformed-patterns.js +1 -0
  44. package/build/components/block-switcher/use-transformed-patterns.js.map +1 -1
  45. package/build/components/block-switcher/utils.js +1 -0
  46. package/build/components/block-switcher/utils.js.map +1 -1
  47. package/build/components/block-toolbar/index.js.map +1 -1
  48. package/build/components/block-tools/index.js +0 -7
  49. package/build/components/block-tools/index.js.map +1 -1
  50. package/build/components/block-tools/insertion-point.js.map +1 -1
  51. package/build/components/block-tools/use-show-block-tools.js +7 -3
  52. package/build/components/block-tools/use-show-block-tools.js.map +1 -1
  53. package/build/components/block-tools/zoom-out-popover.js +3 -2
  54. package/build/components/block-tools/zoom-out-popover.js.map +1 -1
  55. package/build/components/block-tools/zoom-out-toolbar.js +3 -20
  56. package/build/components/block-tools/zoom-out-toolbar.js.map +1 -1
  57. package/build/components/block-types-list/index.js.map +1 -1
  58. package/build/components/block-types-list/index.native.js.map +1 -1
  59. package/build/components/block-variation-transforms/index.js +3 -2
  60. package/build/components/block-variation-transforms/index.js.map +1 -1
  61. package/build/components/border-radius-control/index.js.map +1 -1
  62. package/build/components/border-radius-control/utils.js.map +1 -1
  63. package/build/components/button-block-appender/index.js.map +1 -1
  64. package/build/components/color-style-selector/index.js.map +1 -1
  65. package/build/components/colors/utils.js.map +1 -1
  66. package/build/components/colors/with-colors.js.map +1 -1
  67. package/build/components/colors-gradients/panel-color-gradient-settings.native.js.map +1 -1
  68. package/build/components/date-format-picker/index.js +1 -0
  69. package/build/components/date-format-picker/index.js.map +1 -1
  70. package/build/components/duotone/utils.js.map +1 -1
  71. package/build/components/duotone-control/index.js.map +1 -1
  72. package/build/components/font-sizes/fluid-utils.js.map +1 -1
  73. package/build/components/font-sizes/utils.js.map +1 -1
  74. package/build/components/font-sizes/with-font-sizes.js.map +1 -1
  75. package/build/components/global-styles/border-panel.js.map +1 -1
  76. package/build/components/global-styles/color-panel.js +1 -1
  77. package/build/components/global-styles/color-panel.js.map +1 -1
  78. package/build/components/global-styles/filters-panel.js.map +1 -1
  79. package/build/components/global-styles/get-block-css-selector.js.map +1 -1
  80. package/build/components/global-styles/get-global-styles-changes.js +2 -1
  81. package/build/components/global-styles/get-global-styles-changes.js.map +1 -1
  82. package/build/components/global-styles/hooks.js.map +1 -1
  83. package/build/components/global-styles/typography-panel.js.map +1 -1
  84. package/build/components/global-styles/use-global-styles-context.native.js.map +1 -1
  85. package/build/components/global-styles/use-global-styles-output.js.map +1 -1
  86. package/build/components/global-styles/utils.js.map +1 -1
  87. package/build/components/gradients/use-gradient.js.map +1 -1
  88. package/build/components/grid/grid-item-movers.js.map +1 -1
  89. package/build/components/grid/grid-visualizer.js.map +1 -1
  90. package/build/components/iframe/index.js +49 -9
  91. package/build/components/iframe/index.js.map +1 -1
  92. package/build/components/image-editor/use-save-image.js +1 -1
  93. package/build/components/image-editor/use-save-image.js.map +1 -1
  94. package/build/components/inner-blocks/use-nested-settings-update.js +15 -8
  95. package/build/components/inner-blocks/use-nested-settings-update.js.map +1 -1
  96. package/build/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.js +1 -1
  97. package/build/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.js.map +1 -1
  98. package/build/components/inserter/block-patterns-explorer/pattern-list.js +2 -2
  99. package/build/components/inserter/block-patterns-explorer/pattern-list.js.map +1 -1
  100. package/build/components/inserter/block-patterns-tab/use-pattern-categories.js +1 -1
  101. package/build/components/inserter/block-patterns-tab/use-pattern-categories.js.map +1 -1
  102. package/build/components/inserter/block-types-tab.native.js.map +1 -1
  103. package/build/components/inserter/category-tabs/index.js +1 -10
  104. package/build/components/inserter/category-tabs/index.js.map +1 -1
  105. package/build/components/inserter/hooks/use-block-types-state.js +1 -1
  106. package/build/components/inserter/hooks/use-block-types-state.js.map +1 -1
  107. package/build/components/inserter/hooks/use-patterns-state.js +1 -1
  108. package/build/components/inserter/hooks/use-patterns-state.js.map +1 -1
  109. package/build/components/inserter/media-tab/media-panel.js.map +1 -1
  110. package/build/components/inserter/media-tab/media-preview.js +1 -1
  111. package/build/components/inserter/media-tab/media-preview.js.map +1 -1
  112. package/build/components/inserter/media-tab/media-tab.js.map +1 -1
  113. package/build/components/inserter/media-tab/utils.js.map +1 -1
  114. package/build/components/inserter/menu.js +5 -2
  115. package/build/components/inserter/menu.js.map +1 -1
  116. package/build/components/inserter/mobile-tab-navigation.js.map +1 -1
  117. package/build/components/inserter/preview-panel.js.map +1 -1
  118. package/build/components/inserter/quick-inserter.js +1 -1
  119. package/build/components/inserter/quick-inserter.js.map +1 -1
  120. package/build/components/inserter/search-results.js +1 -1
  121. package/build/components/inserter/search-results.js.map +1 -1
  122. package/build/components/inserter/tabs.native.js.map +1 -1
  123. package/build/components/inspector-controls/block-support-tools-panel.js.map +1 -1
  124. package/build/components/inspector-controls/fill.js.map +1 -1
  125. package/build/components/inspector-controls/fill.native.js.map +1 -1
  126. package/build/components/inspector-controls/slot.js.map +1 -1
  127. package/build/components/inspector-controls/slot.native.js.map +1 -1
  128. package/build/components/line-height-control/index.js.map +1 -1
  129. package/build/components/link-control/is-url-like.js.map +1 -1
  130. package/build/components/link-control/search-create-button.js +1 -1
  131. package/build/components/link-control/search-create-button.js.map +1 -1
  132. package/build/components/link-control/search-input.js +3 -5
  133. package/build/components/link-control/search-input.js.map +1 -1
  134. package/build/components/link-control/search-results.js +5 -15
  135. package/build/components/link-control/search-results.js.map +1 -1
  136. package/build/components/link-control/settings-drawer.js.map +1 -1
  137. package/build/components/link-control/use-rich-url-data.js.map +1 -1
  138. package/build/components/list-view/appender.js +1 -1
  139. package/build/components/list-view/appender.js.map +1 -1
  140. package/build/components/list-view/block-select-button.js.map +1 -1
  141. package/build/components/list-view/block.js.map +1 -1
  142. package/build/components/list-view/branch.js.map +1 -1
  143. package/build/components/list-view/drop-indicator.js.map +1 -1
  144. package/build/components/list-view/index.js.map +1 -1
  145. package/build/components/list-view/use-block-selection.js +2 -2
  146. package/build/components/list-view/use-block-selection.js.map +1 -1
  147. package/build/components/list-view/utils.js +1 -1
  148. package/build/components/list-view/utils.js.map +1 -1
  149. package/build/components/media-placeholder/index.native.js +1 -1
  150. package/build/components/media-placeholder/index.native.js.map +1 -1
  151. package/build/components/media-replace-flow/index.js.map +1 -1
  152. package/build/components/multi-selection-inspector/index.js +2 -2
  153. package/build/components/multi-selection-inspector/index.js.map +1 -1
  154. package/build/components/observe-typing/index.js +1 -0
  155. package/build/components/observe-typing/index.js.map +1 -1
  156. package/build/components/recursion-provider/index.js +1 -0
  157. package/build/components/recursion-provider/index.js.map +1 -1
  158. package/build/components/responsive-block-control/index.js +3 -3
  159. package/build/components/responsive-block-control/index.js.map +1 -1
  160. package/build/components/responsive-block-control/label.js +1 -1
  161. package/build/components/responsive-block-control/label.js.map +1 -1
  162. package/build/components/rich-text/content.js.map +1 -1
  163. package/build/components/rich-text/file-paste-handler.native.js.map +1 -1
  164. package/build/components/rich-text/format-toolbar/index.js.map +1 -1
  165. package/build/components/rich-text/format-toolbar/index.native.js.map +1 -1
  166. package/build/components/rich-text/index.js +3 -2
  167. package/build/components/rich-text/index.js.map +1 -1
  168. package/build/components/rich-text/multiline.js.map +1 -1
  169. package/build/components/rich-text/native/get-format-colors.native.js.map +1 -1
  170. package/build/components/rich-text/native/index.native.js.map +1 -1
  171. package/build/components/rich-text/native/use-format-types.js +1 -0
  172. package/build/components/rich-text/native/use-format-types.js.map +1 -1
  173. package/build/components/rich-text/toolbar-button.js.map +1 -1
  174. package/build/components/rich-text/use-format-types.js +1 -0
  175. package/build/components/rich-text/use-format-types.js.map +1 -1
  176. package/build/components/spacing-sizes-control/input-controls/axial.js.map +1 -1
  177. package/build/components/spacing-sizes-control/input-controls/separated.js.map +1 -1
  178. package/build/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -1
  179. package/build/components/spacing-sizes-control/utils.js +1 -0
  180. package/build/components/spacing-sizes-control/utils.js.map +1 -1
  181. package/build/components/tool-selector/index.js +9 -3
  182. package/build/components/tool-selector/index.js.map +1 -1
  183. package/build/components/typewriter/index.js +1 -0
  184. package/build/components/typewriter/index.js.map +1 -1
  185. package/build/components/unsupported-block-details/index.native.js.map +1 -1
  186. package/build/components/url-input/index.js +1 -1
  187. package/build/components/url-input/index.js.map +1 -1
  188. package/build/components/use-block-drop-zone/index.js.map +1 -1
  189. package/build/components/use-flash-editable-blocks/index.js.map +1 -1
  190. package/build/components/use-moving-animation/index.js.map +1 -1
  191. package/build/components/use-resize-canvas/index.js +1 -2
  192. package/build/components/use-resize-canvas/index.js.map +1 -1
  193. package/build/components/writing-flow/use-tab-nav.js +21 -5
  194. package/build/components/writing-flow/use-tab-nav.js.map +1 -1
  195. package/build/hooks/align.js.map +1 -1
  196. package/build/hooks/block-hooks.js +1 -1
  197. package/build/hooks/block-hooks.js.map +1 -1
  198. package/build/hooks/block-style-variation.js.map +1 -1
  199. package/build/hooks/duotone.js.map +1 -1
  200. package/build/hooks/font-family.js.map +1 -1
  201. package/build/hooks/gap.js.map +1 -1
  202. package/build/hooks/generated-class-name.js +1 -0
  203. package/build/hooks/generated-class-name.js.map +1 -1
  204. package/build/hooks/grid-visualizer.js +13 -11
  205. package/build/hooks/grid-visualizer.js.map +1 -1
  206. package/build/hooks/layout-child.js +41 -3
  207. package/build/hooks/layout-child.js.map +1 -1
  208. package/build/hooks/layout.js.map +1 -1
  209. package/build/hooks/position.js +1 -1
  210. package/build/hooks/position.js.map +1 -1
  211. package/build/hooks/spacing-visualizer.js.map +1 -1
  212. package/build/hooks/style.js.map +1 -1
  213. package/build/hooks/text-align.js.map +1 -1
  214. package/build/hooks/use-typography-props.js.map +1 -1
  215. package/build/hooks/use-zoom-out.js +24 -16
  216. package/build/hooks/use-zoom-out.js.map +1 -1
  217. package/build/layouts/constrained.js.map +1 -1
  218. package/build/layouts/flex.js.map +1 -1
  219. package/build/layouts/grid.js.map +1 -1
  220. package/build/layouts/utils.js.map +1 -1
  221. package/build/private-apis.js +2 -0
  222. package/build/private-apis.js.map +1 -1
  223. package/build/store/actions.js +5 -6
  224. package/build/store/actions.js.map +1 -1
  225. package/build/store/private-selectors.js.map +1 -1
  226. package/build/store/reducer.js +2 -18
  227. package/build/store/reducer.js.map +1 -1
  228. package/build/store/selectors.js +22 -15
  229. package/build/store/selectors.js.map +1 -1
  230. package/build/utils/block-bindings.js +9 -6
  231. package/build/utils/block-bindings.js.map +1 -1
  232. package/build/utils/get-font-styles-and-weights.js +1 -1
  233. package/build/utils/get-font-styles-and-weights.js.map +1 -1
  234. package/build/utils/object.js +1 -0
  235. package/build/utils/object.js.map +1 -1
  236. package/build/utils/pasting.js.map +1 -1
  237. package/build-module/autocompleters/block.js +1 -3
  238. package/build-module/autocompleters/block.js.map +1 -1
  239. package/build-module/autocompleters/link.js +1 -3
  240. package/build-module/autocompleters/link.js.map +1 -1
  241. package/build-module/components/audio-player/index.native.js +1 -2
  242. package/build-module/components/audio-player/index.native.js.map +1 -1
  243. package/build-module/components/background-image-control/index.js +2 -3
  244. package/build-module/components/background-image-control/index.js.map +1 -1
  245. package/build-module/components/block-alignment-control/ui.js +1 -2
  246. package/build-module/components/block-alignment-control/ui.js.map +1 -1
  247. package/build-module/components/block-breadcrumb/index.js +1 -2
  248. package/build-module/components/block-breadcrumb/index.js.map +1 -1
  249. package/build-module/components/block-canvas/index.js +1 -2
  250. package/build-module/components/block-canvas/index.js.map +1 -1
  251. package/build-module/components/block-card/index.js +1 -2
  252. package/build-module/components/block-card/index.js.map +1 -1
  253. package/build-module/components/block-compare/block-view.js +1 -2
  254. package/build-module/components/block-compare/block-view.js.map +1 -1
  255. package/build-module/components/block-compare/index.js +1 -2
  256. package/build-module/components/block-compare/index.js.map +1 -1
  257. package/build-module/components/block-controls/fill.js +1 -3
  258. package/build-module/components/block-controls/fill.js.map +1 -1
  259. package/build-module/components/block-controls/slot.js.map +1 -1
  260. package/build-module/components/block-controls/slot.native.js.map +1 -1
  261. package/build-module/components/block-draggable/draggable-chip.js +2 -3
  262. package/build-module/components/block-draggable/draggable-chip.js.map +1 -1
  263. package/build-module/components/block-draggable/draggable-chip.native.js +1 -2
  264. package/build-module/components/block-draggable/draggable-chip.native.js.map +1 -1
  265. package/build-module/components/block-draggable/index.native.js +1 -3
  266. package/build-module/components/block-draggable/index.native.js.map +1 -1
  267. package/build-module/components/block-edit/index.js +1 -2
  268. package/build-module/components/block-edit/index.js.map +1 -1
  269. package/build-module/components/block-edit/multiple-usage-warning.js +1 -2
  270. package/build-module/components/block-edit/multiple-usage-warning.js.map +1 -1
  271. package/build-module/components/block-inspector/index.js +1 -3
  272. package/build-module/components/block-inspector/index.js.map +1 -1
  273. package/build-module/components/block-list/block-crash-warning.js +1 -1
  274. package/build-module/components/block-list/block-crash-warning.js.map +1 -1
  275. package/build-module/components/block-list/block-crash-warning.native.js +1 -1
  276. package/build-module/components/block-list/block-crash-warning.native.js.map +1 -1
  277. package/build-module/components/block-list/block-invalid-warning.js +1 -3
  278. package/build-module/components/block-list/block-invalid-warning.js.map +1 -1
  279. package/build-module/components/block-list/block-invalid-warning.native.js +1 -1
  280. package/build-module/components/block-list/block-invalid-warning.native.js.map +1 -1
  281. package/build-module/components/block-list/block-list-item.native.js +1 -2
  282. package/build-module/components/block-list/block-list-item.native.js.map +1 -1
  283. package/build-module/components/block-list/block-selection-button.native.js +1 -2
  284. package/build-module/components/block-list/block-selection-button.native.js.map +1 -1
  285. package/build-module/components/block-list/block.js +1 -3
  286. package/build-module/components/block-list/block.js.map +1 -1
  287. package/build-module/components/block-list/block.native.js +1 -2
  288. package/build-module/components/block-list/block.native.js.map +1 -1
  289. package/build-module/components/block-list/index.js +2 -2
  290. package/build-module/components/block-list/index.js.map +1 -1
  291. package/build-module/components/block-list/index.native.js +1 -3
  292. package/build-module/components/block-list/index.native.js.map +1 -1
  293. package/build-module/components/block-list/insertion-point.native.js +1 -2
  294. package/build-module/components/block-list/insertion-point.native.js.map +1 -1
  295. package/build-module/components/block-list/use-block-props/index.js.map +1 -1
  296. package/build-module/components/block-list/use-block-props/use-selected-block-event-handlers.js +14 -6
  297. package/build-module/components/block-list/use-block-props/use-selected-block-event-handlers.js.map +1 -1
  298. package/build-module/components/block-list/zoom-out-separator.js +10 -7
  299. package/build-module/components/block-list/zoom-out-separator.js.map +1 -1
  300. package/build-module/components/block-lock/menu-item.js +1 -3
  301. package/build-module/components/block-lock/menu-item.js.map +1 -1
  302. package/build-module/components/block-lock/modal.js +2 -3
  303. package/build-module/components/block-lock/modal.js.map +1 -1
  304. package/build-module/components/block-lock/toolbar.js +1 -3
  305. package/build-module/components/block-lock/toolbar.js.map +1 -1
  306. package/build-module/components/block-media-update-progress/index.native.js +1 -2
  307. package/build-module/components/block-media-update-progress/index.native.js.map +1 -1
  308. package/build-module/components/block-mover/button.js +1 -3
  309. package/build-module/components/block-mover/button.js.map +1 -1
  310. package/build-module/components/block-mover/index.js +1 -2
  311. package/build-module/components/block-mover/index.js.map +1 -1
  312. package/build-module/components/block-mover/index.native.js +1 -2
  313. package/build-module/components/block-mover/index.native.js.map +1 -1
  314. package/build-module/components/block-navigation/dropdown.js +1 -2
  315. package/build-module/components/block-navigation/dropdown.js.map +1 -1
  316. package/build-module/components/block-parent-selector/index.js +1 -1
  317. package/build-module/components/block-parent-selector/index.js.map +1 -1
  318. package/build-module/components/block-pattern-setup/index.js +1 -3
  319. package/build-module/components/block-pattern-setup/index.js.map +1 -1
  320. package/build-module/components/block-pattern-setup/setup-toolbar.js +1 -2
  321. package/build-module/components/block-pattern-setup/setup-toolbar.js.map +1 -1
  322. package/build-module/components/block-patterns-list/index.js +1 -3
  323. package/build-module/components/block-patterns-list/index.js.map +1 -1
  324. package/build-module/components/block-patterns-paging/index.js +1 -2
  325. package/build-module/components/block-patterns-paging/index.js.map +1 -1
  326. package/build-module/components/block-popover/index.js +45 -2
  327. package/build-module/components/block-popover/index.js.map +1 -1
  328. package/build-module/components/block-preview/auto.js +2 -7
  329. package/build-module/components/block-preview/auto.js.map +1 -1
  330. package/build-module/components/block-preview/index.js +1 -2
  331. package/build-module/components/block-preview/index.js.map +1 -1
  332. package/build-module/components/block-quick-navigation/index.js +1 -2
  333. package/build-module/components/block-quick-navigation/index.js.map +1 -1
  334. package/build-module/components/block-removal-warning-modal/index.js +1 -2
  335. package/build-module/components/block-removal-warning-modal/index.js.map +1 -1
  336. package/build-module/components/block-rename/modal.js +3 -4
  337. package/build-module/components/block-rename/modal.js.map +1 -1
  338. package/build-module/components/block-rename/rename-control.js +1 -3
  339. package/build-module/components/block-rename/rename-control.js.map +1 -1
  340. package/build-module/components/block-settings/container.native.js +1 -3
  341. package/build-module/components/block-settings/container.native.js.map +1 -1
  342. package/build-module/components/block-settings-menu/block-parent-selector-menu-item.js +1 -1
  343. package/build-module/components/block-settings-menu/block-parent-selector-menu-item.js.map +1 -1
  344. package/build-module/components/block-settings-menu/block-settings-dropdown.js +1 -3
  345. package/build-module/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
  346. package/build-module/components/block-settings-menu-controls/index.js +1 -2
  347. package/build-module/components/block-settings-menu-controls/index.js.map +1 -1
  348. package/build-module/components/block-styles/index.js +1 -2
  349. package/build-module/components/block-styles/index.js.map +1 -1
  350. package/build-module/components/block-styles/menu-items.js +1 -2
  351. package/build-module/components/block-styles/menu-items.js.map +1 -1
  352. package/build-module/components/block-styles/preview.native.js +1 -2
  353. package/build-module/components/block-styles/preview.native.js.map +1 -1
  354. package/build-module/components/block-switcher/block-transformations-menu.js +1 -3
  355. package/build-module/components/block-switcher/block-transformations-menu.js.map +1 -1
  356. package/build-module/components/block-switcher/block-transformations-menu.native.js +1 -1
  357. package/build-module/components/block-switcher/block-transformations-menu.native.js.map +1 -1
  358. package/build-module/components/block-switcher/block-variation-transformations.js +1 -3
  359. package/build-module/components/block-switcher/block-variation-transformations.js.map +1 -1
  360. package/build-module/components/block-switcher/index.js +3 -4
  361. package/build-module/components/block-switcher/index.js.map +1 -1
  362. package/build-module/components/block-switcher/pattern-transformations-menu.js +1 -2
  363. package/build-module/components/block-switcher/pattern-transformations-menu.js.map +1 -1
  364. package/build-module/components/block-switcher/preview-block-popover.js +1 -2
  365. package/build-module/components/block-switcher/preview-block-popover.js.map +1 -1
  366. package/build-module/components/block-switcher/use-transformed-patterns.js +1 -0
  367. package/build-module/components/block-switcher/use-transformed-patterns.js.map +1 -1
  368. package/build-module/components/block-switcher/utils.js +1 -0
  369. package/build-module/components/block-switcher/utils.js.map +1 -1
  370. package/build-module/components/block-toolbar/block-toolbar-menu.native.js +1 -2
  371. package/build-module/components/block-toolbar/block-toolbar-menu.native.js.map +1 -1
  372. package/build-module/components/block-toolbar/index.js +1 -3
  373. package/build-module/components/block-toolbar/index.js.map +1 -1
  374. package/build-module/components/block-toolbar/index.native.js +1 -3
  375. package/build-module/components/block-toolbar/index.native.js.map +1 -1
  376. package/build-module/components/block-tools/index.js +1 -9
  377. package/build-module/components/block-tools/index.js.map +1 -1
  378. package/build-module/components/block-tools/insertion-point.js +1 -2
  379. package/build-module/components/block-tools/insertion-point.js.map +1 -1
  380. package/build-module/components/block-tools/use-show-block-tools.js +7 -3
  381. package/build-module/components/block-tools/use-show-block-tools.js.map +1 -1
  382. package/build-module/components/block-tools/zoom-out-popover.js +2 -1
  383. package/build-module/components/block-tools/zoom-out-popover.js.map +1 -1
  384. package/build-module/components/block-tools/zoom-out-toolbar.js +5 -23
  385. package/build-module/components/block-tools/zoom-out-toolbar.js.map +1 -1
  386. package/build-module/components/block-types-list/index.js +1 -2
  387. package/build-module/components/block-types-list/index.js.map +1 -1
  388. package/build-module/components/block-types-list/index.native.js +1 -2
  389. package/build-module/components/block-types-list/index.native.js.map +1 -1
  390. package/build-module/components/block-variation-picker/index.js +1 -2
  391. package/build-module/components/block-variation-picker/index.js.map +1 -1
  392. package/build-module/components/block-variation-picker/index.native.js +1 -2
  393. package/build-module/components/block-variation-picker/index.native.js.map +1 -1
  394. package/build-module/components/block-variation-transforms/index.js +4 -4
  395. package/build-module/components/block-variation-transforms/index.js.map +1 -1
  396. package/build-module/components/border-radius-control/index.js +1 -3
  397. package/build-module/components/border-radius-control/index.js.map +1 -1
  398. package/build-module/components/border-radius-control/utils.js.map +1 -1
  399. package/build-module/components/button-block-appender/index.js.map +1 -1
  400. package/build-module/components/button-block-appender/index.native.js +1 -2
  401. package/build-module/components/button-block-appender/index.native.js.map +1 -1
  402. package/build-module/components/child-layout-control/index.js +1 -3
  403. package/build-module/components/child-layout-control/index.js.map +1 -1
  404. package/build-module/components/color-style-selector/index.js.map +1 -1
  405. package/build-module/components/colors/utils.js.map +1 -1
  406. package/build-module/components/colors/with-colors.js.map +1 -1
  407. package/build-module/components/colors-gradients/control.js +1 -2
  408. package/build-module/components/colors-gradients/control.js.map +1 -1
  409. package/build-module/components/colors-gradients/dropdown.js +1 -3
  410. package/build-module/components/colors-gradients/dropdown.js.map +1 -1
  411. package/build-module/components/colors-gradients/panel-color-gradient-settings.js +1 -3
  412. package/build-module/components/colors-gradients/panel-color-gradient-settings.js.map +1 -1
  413. package/build-module/components/colors-gradients/panel-color-gradient-settings.native.js +1 -3
  414. package/build-module/components/colors-gradients/panel-color-gradient-settings.native.js.map +1 -1
  415. package/build-module/components/contrast-checker/index.native.js +1 -2
  416. package/build-module/components/contrast-checker/index.native.js.map +1 -1
  417. package/build-module/components/convert-to-group-buttons/index.js +1 -3
  418. package/build-module/components/convert-to-group-buttons/index.js.map +1 -1
  419. package/build-module/components/convert-to-group-buttons/toolbar.js +1 -2
  420. package/build-module/components/convert-to-group-buttons/toolbar.js.map +1 -1
  421. package/build-module/components/date-format-picker/index.js +2 -2
  422. package/build-module/components/date-format-picker/index.js.map +1 -1
  423. package/build-module/components/default-block-appender/index.js +1 -2
  424. package/build-module/components/default-block-appender/index.js.map +1 -1
  425. package/build-module/components/dimensions-tool/index.js +1 -3
  426. package/build-module/components/dimensions-tool/index.js.map +1 -1
  427. package/build-module/components/dimensions-tool/width-height-tool.js +1 -3
  428. package/build-module/components/dimensions-tool/width-height-tool.js.map +1 -1
  429. package/build-module/components/duotone/utils.js.map +1 -1
  430. package/build-module/components/duotone-control/index.js +1 -2
  431. package/build-module/components/duotone-control/index.js.map +1 -1
  432. package/build-module/components/editor-styles/index.js +1 -3
  433. package/build-module/components/editor-styles/index.js.map +1 -1
  434. package/build-module/components/floating-toolbar/index.native.js +1 -2
  435. package/build-module/components/floating-toolbar/index.native.js.map +1 -1
  436. package/build-module/components/floating-toolbar/nav-up-icon.js +1 -2
  437. package/build-module/components/floating-toolbar/nav-up-icon.js.map +1 -1
  438. package/build-module/components/font-sizes/fluid-utils.js.map +1 -1
  439. package/build-module/components/font-sizes/utils.js.map +1 -1
  440. package/build-module/components/font-sizes/with-font-sizes.js +2 -2
  441. package/build-module/components/font-sizes/with-font-sizes.js.map +1 -1
  442. package/build-module/components/global-styles/advanced-panel.js +1 -2
  443. package/build-module/components/global-styles/advanced-panel.js.map +1 -1
  444. package/build-module/components/global-styles/border-panel.js +1 -2
  445. package/build-module/components/global-styles/border-panel.js.map +1 -1
  446. package/build-module/components/global-styles/color-panel.js +2 -3
  447. package/build-module/components/global-styles/color-panel.js.map +1 -1
  448. package/build-module/components/global-styles/dimensions-panel.js +1 -2
  449. package/build-module/components/global-styles/dimensions-panel.js.map +1 -1
  450. package/build-module/components/global-styles/filters-panel.js +1 -2
  451. package/build-module/components/global-styles/filters-panel.js.map +1 -1
  452. package/build-module/components/global-styles/get-block-css-selector.js.map +1 -1
  453. package/build-module/components/global-styles/get-global-styles-changes.js +2 -1
  454. package/build-module/components/global-styles/get-global-styles-changes.js.map +1 -1
  455. package/build-module/components/global-styles/hooks.js.map +1 -1
  456. package/build-module/components/global-styles/image-settings-panel.js +1 -2
  457. package/build-module/components/global-styles/image-settings-panel.js.map +1 -1
  458. package/build-module/components/global-styles/shadow-panel-components.js +1 -2
  459. package/build-module/components/global-styles/shadow-panel-components.js.map +1 -1
  460. package/build-module/components/global-styles/typography-panel.js +1 -2
  461. package/build-module/components/global-styles/typography-panel.js.map +1 -1
  462. package/build-module/components/global-styles/use-global-styles-context.native.js.map +1 -1
  463. package/build-module/components/global-styles/use-global-styles-output.js.map +1 -1
  464. package/build-module/components/global-styles/utils.js.map +1 -1
  465. package/build-module/components/gradients/use-gradient.js.map +1 -1
  466. package/build-module/components/grid/grid-item-movers.js +1 -3
  467. package/build-module/components/grid/grid-item-movers.js.map +1 -1
  468. package/build-module/components/grid/grid-visualizer.js.map +1 -1
  469. package/build-module/components/height-control/index.js +1 -2
  470. package/build-module/components/height-control/index.js.map +1 -1
  471. package/build-module/components/iframe/index.js +50 -12
  472. package/build-module/components/iframe/index.js.map +1 -1
  473. package/build-module/components/image-editor/aspect-ratio-dropdown.js +1 -3
  474. package/build-module/components/image-editor/aspect-ratio-dropdown.js.map +1 -1
  475. package/build-module/components/image-editor/cropper.js +1 -3
  476. package/build-module/components/image-editor/cropper.js.map +1 -1
  477. package/build-module/components/image-editor/form-controls.js +1 -3
  478. package/build-module/components/image-editor/form-controls.js.map +1 -1
  479. package/build-module/components/image-editor/index.js +1 -2
  480. package/build-module/components/image-editor/index.js.map +1 -1
  481. package/build-module/components/image-editor/use-save-image.js +1 -1
  482. package/build-module/components/image-editor/use-save-image.js.map +1 -1
  483. package/build-module/components/image-link-destinations/index.native.js +1 -3
  484. package/build-module/components/image-link-destinations/index.native.js.map +1 -1
  485. package/build-module/components/image-size-control/index.js +1 -3
  486. package/build-module/components/image-size-control/index.js.map +1 -1
  487. package/build-module/components/inner-blocks/use-nested-settings-update.js +16 -9
  488. package/build-module/components/inner-blocks/use-nested-settings-update.js.map +1 -1
  489. package/build-module/components/inner-blocks/warning-max-depth-exceeded.native.js +1 -2
  490. package/build-module/components/inner-blocks/warning-max-depth-exceeded.native.js.map +1 -1
  491. package/build-module/components/inserter/block-patterns-explorer/index.js +1 -2
  492. package/build-module/components/inserter/block-patterns-explorer/index.js.map +1 -1
  493. package/build-module/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.js +2 -3
  494. package/build-module/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.js.map +1 -1
  495. package/build-module/components/inserter/block-patterns-explorer/pattern-list.js +3 -5
  496. package/build-module/components/inserter/block-patterns-explorer/pattern-list.js.map +1 -1
  497. package/build-module/components/inserter/block-patterns-tab/index.js +1 -3
  498. package/build-module/components/inserter/block-patterns-tab/index.js.map +1 -1
  499. package/build-module/components/inserter/block-patterns-tab/pattern-category-previews.js +1 -3
  500. package/build-module/components/inserter/block-patterns-tab/pattern-category-previews.js.map +1 -1
  501. package/build-module/components/inserter/block-patterns-tab/patterns-filter.js +1 -3
  502. package/build-module/components/inserter/block-patterns-tab/patterns-filter.js.map +1 -1
  503. package/build-module/components/inserter/block-patterns-tab/use-pattern-categories.js +1 -1
  504. package/build-module/components/inserter/block-patterns-tab/use-pattern-categories.js.map +1 -1
  505. package/build-module/components/inserter/block-types-tab.js +1 -3
  506. package/build-module/components/inserter/block-types-tab.js.map +1 -1
  507. package/build-module/components/inserter/block-types-tab.native.js.map +1 -1
  508. package/build-module/components/inserter/category-tabs/index.js +3 -13
  509. package/build-module/components/inserter/category-tabs/index.js.map +1 -1
  510. package/build-module/components/inserter/hooks/use-block-types-state.js +1 -1
  511. package/build-module/components/inserter/hooks/use-block-types-state.js.map +1 -1
  512. package/build-module/components/inserter/hooks/use-patterns-state.js +1 -1
  513. package/build-module/components/inserter/hooks/use-patterns-state.js.map +1 -1
  514. package/build-module/components/inserter/index.native.js +1 -3
  515. package/build-module/components/inserter/index.native.js.map +1 -1
  516. package/build-module/components/inserter/media-tab/media-panel.js +1 -2
  517. package/build-module/components/inserter/media-tab/media-panel.js.map +1 -1
  518. package/build-module/components/inserter/media-tab/media-preview.js +2 -4
  519. package/build-module/components/inserter/media-tab/media-preview.js.map +1 -1
  520. package/build-module/components/inserter/media-tab/media-tab.js +1 -3
  521. package/build-module/components/inserter/media-tab/media-tab.js.map +1 -1
  522. package/build-module/components/inserter/media-tab/utils.js.map +1 -1
  523. package/build-module/components/inserter/menu.js +6 -5
  524. package/build-module/components/inserter/menu.js.map +1 -1
  525. package/build-module/components/inserter/menu.native.js +1 -3
  526. package/build-module/components/inserter/menu.native.js.map +1 -1
  527. package/build-module/components/inserter/mobile-tab-navigation.js +1 -2
  528. package/build-module/components/inserter/mobile-tab-navigation.js.map +1 -1
  529. package/build-module/components/inserter/no-results.js +1 -2
  530. package/build-module/components/inserter/no-results.js.map +1 -1
  531. package/build-module/components/inserter/no-results.native.js +1 -2
  532. package/build-module/components/inserter/no-results.native.js.map +1 -1
  533. package/build-module/components/inserter/panel.js +1 -3
  534. package/build-module/components/inserter/panel.js.map +1 -1
  535. package/build-module/components/inserter/preview-panel.js +1 -2
  536. package/build-module/components/inserter/preview-panel.js.map +1 -1
  537. package/build-module/components/inserter/quick-inserter.js +2 -3
  538. package/build-module/components/inserter/quick-inserter.js.map +1 -1
  539. package/build-module/components/inserter/search-results.js +2 -3
  540. package/build-module/components/inserter/search-results.js.map +1 -1
  541. package/build-module/components/inserter/tabs.native.js.map +1 -1
  542. package/build-module/components/inserter-button/index.native.js +1 -2
  543. package/build-module/components/inserter-button/index.native.js.map +1 -1
  544. package/build-module/components/inserter-list-item/index.js +1 -2
  545. package/build-module/components/inserter-list-item/index.js.map +1 -1
  546. package/build-module/components/inserter-listbox/index.js +1 -2
  547. package/build-module/components/inserter-listbox/index.js.map +1 -1
  548. package/build-module/components/inspector-controls/block-support-tools-panel.js.map +1 -1
  549. package/build-module/components/inspector-controls/fill.js.map +1 -1
  550. package/build-module/components/inspector-controls/fill.native.js +1 -3
  551. package/build-module/components/inspector-controls/fill.native.js.map +1 -1
  552. package/build-module/components/inspector-controls/slot.js.map +1 -1
  553. package/build-module/components/inspector-controls/slot.native.js.map +1 -1
  554. package/build-module/components/inspector-controls-tabs/index.js +1 -2
  555. package/build-module/components/inspector-controls-tabs/index.js.map +1 -1
  556. package/build-module/components/inspector-controls-tabs/settings-tab.js +1 -3
  557. package/build-module/components/inspector-controls-tabs/settings-tab.js.map +1 -1
  558. package/build-module/components/inspector-controls-tabs/styles-tab.js +1 -3
  559. package/build-module/components/inspector-controls-tabs/styles-tab.js.map +1 -1
  560. package/build-module/components/inspector-popover-header/index.js +1 -2
  561. package/build-module/components/inspector-popover-header/index.js.map +1 -1
  562. package/build-module/components/line-height-control/index.js.map +1 -1
  563. package/build-module/components/link-control/index.js +1 -3
  564. package/build-module/components/link-control/index.js.map +1 -1
  565. package/build-module/components/link-control/is-url-like.js.map +1 -1
  566. package/build-module/components/link-control/link-preview.js +1 -3
  567. package/build-module/components/link-control/link-preview.js.map +1 -1
  568. package/build-module/components/link-control/search-create-button.js +1 -1
  569. package/build-module/components/link-control/search-create-button.js.map +1 -1
  570. package/build-module/components/link-control/search-input.js +4 -7
  571. package/build-module/components/link-control/search-input.js.map +1 -1
  572. package/build-module/components/link-control/search-results.js +6 -17
  573. package/build-module/components/link-control/search-results.js.map +1 -1
  574. package/build-module/components/link-control/settings-drawer.js +1 -3
  575. package/build-module/components/link-control/settings-drawer.js.map +1 -1
  576. package/build-module/components/link-control/settings.js +1 -2
  577. package/build-module/components/link-control/settings.js.map +1 -1
  578. package/build-module/components/link-control/use-rich-url-data.js.map +1 -1
  579. package/build-module/components/list-view/appender.js +2 -3
  580. package/build-module/components/list-view/appender.js.map +1 -1
  581. package/build-module/components/list-view/block-contents.js +1 -3
  582. package/build-module/components/list-view/block-contents.js.map +1 -1
  583. package/build-module/components/list-view/block-select-button.js +1 -2
  584. package/build-module/components/list-view/block-select-button.js.map +1 -1
  585. package/build-module/components/list-view/block.js +1 -3
  586. package/build-module/components/list-view/block.js.map +1 -1
  587. package/build-module/components/list-view/branch.js +1 -3
  588. package/build-module/components/list-view/branch.js.map +1 -1
  589. package/build-module/components/list-view/drop-indicator.js +1 -2
  590. package/build-module/components/list-view/drop-indicator.js.map +1 -1
  591. package/build-module/components/list-view/index.js +1 -2
  592. package/build-module/components/list-view/index.js.map +1 -1
  593. package/build-module/components/list-view/use-block-selection.js +2 -2
  594. package/build-module/components/list-view/use-block-selection.js.map +1 -1
  595. package/build-module/components/list-view/utils.js +1 -1
  596. package/build-module/components/list-view/utils.js.map +1 -1
  597. package/build-module/components/media-placeholder/index.js +1 -3
  598. package/build-module/components/media-placeholder/index.js.map +1 -1
  599. package/build-module/components/media-placeholder/index.native.js +2 -4
  600. package/build-module/components/media-placeholder/index.native.js.map +1 -1
  601. package/build-module/components/media-replace-flow/index.js +1 -3
  602. package/build-module/components/media-replace-flow/index.js.map +1 -1
  603. package/build-module/components/media-upload/index.native.js +1 -3
  604. package/build-module/components/media-upload/index.native.js.map +1 -1
  605. package/build-module/components/media-upload-progress/index.native.js +1 -2
  606. package/build-module/components/media-upload-progress/index.native.js.map +1 -1
  607. package/build-module/components/multi-selection-inspector/index.js +3 -4
  608. package/build-module/components/multi-selection-inspector/index.js.map +1 -1
  609. package/build-module/components/observe-typing/index.js +1 -0
  610. package/build-module/components/observe-typing/index.js.map +1 -1
  611. package/build-module/components/provider/index.js +1 -2
  612. package/build-module/components/provider/index.js.map +1 -1
  613. package/build-module/components/publish-date-time-picker/index.js +1 -2
  614. package/build-module/components/publish-date-time-picker/index.js.map +1 -1
  615. package/build-module/components/recursion-provider/index.js +1 -0
  616. package/build-module/components/recursion-provider/index.js.map +1 -1
  617. package/build-module/components/responsive-block-control/index.js +4 -5
  618. package/build-module/components/responsive-block-control/index.js.map +1 -1
  619. package/build-module/components/responsive-block-control/label.js +2 -4
  620. package/build-module/components/responsive-block-control/label.js.map +1 -1
  621. package/build-module/components/rich-text/content.js.map +1 -1
  622. package/build-module/components/rich-text/event-listeners/before-input-rules.js +2 -2
  623. package/build-module/components/rich-text/event-listeners/before-input-rules.js.map +1 -1
  624. package/build-module/components/rich-text/event-listeners/delete.js +2 -2
  625. package/build-module/components/rich-text/event-listeners/delete.js.map +1 -1
  626. package/build-module/components/rich-text/event-listeners/enter.js +2 -2
  627. package/build-module/components/rich-text/event-listeners/enter.js.map +1 -1
  628. package/build-module/components/rich-text/event-listeners/firefox-compat.js +2 -2
  629. package/build-module/components/rich-text/event-listeners/firefox-compat.js.map +1 -1
  630. package/build-module/components/rich-text/event-listeners/input-events.js +2 -2
  631. package/build-module/components/rich-text/event-listeners/input-events.js.map +1 -1
  632. package/build-module/components/rich-text/event-listeners/input-rules.js +2 -2
  633. package/build-module/components/rich-text/event-listeners/input-rules.js.map +1 -1
  634. package/build-module/components/rich-text/event-listeners/insert-replacement-text.js +2 -2
  635. package/build-module/components/rich-text/event-listeners/insert-replacement-text.js.map +1 -1
  636. package/build-module/components/rich-text/event-listeners/paste-handler.js +2 -2
  637. package/build-module/components/rich-text/event-listeners/paste-handler.js.map +1 -1
  638. package/build-module/components/rich-text/event-listeners/remove-browser-shortcuts.js +2 -2
  639. package/build-module/components/rich-text/event-listeners/remove-browser-shortcuts.js.map +1 -1
  640. package/build-module/components/rich-text/event-listeners/shortcuts.js +2 -2
  641. package/build-module/components/rich-text/event-listeners/shortcuts.js.map +1 -1
  642. package/build-module/components/rich-text/event-listeners/undo-automatic-change.js +2 -2
  643. package/build-module/components/rich-text/event-listeners/undo-automatic-change.js.map +1 -1
  644. package/build-module/components/rich-text/file-paste-handler.native.js.map +1 -1
  645. package/build-module/components/rich-text/format-toolbar/index.js +1 -3
  646. package/build-module/components/rich-text/format-toolbar/index.js.map +1 -1
  647. package/build-module/components/rich-text/format-toolbar/index.native.js +1 -3
  648. package/build-module/components/rich-text/format-toolbar/index.native.js.map +1 -1
  649. package/build-module/components/rich-text/index.js +4 -5
  650. package/build-module/components/rich-text/index.js.map +1 -1
  651. package/build-module/components/rich-text/index.native.js +1 -3
  652. package/build-module/components/rich-text/index.native.js.map +1 -1
  653. package/build-module/components/rich-text/multiline.js.map +1 -1
  654. package/build-module/components/rich-text/native/get-format-colors.native.js.map +1 -1
  655. package/build-module/components/rich-text/native/index.js +1 -1
  656. package/build-module/components/rich-text/native/index.js.map +1 -1
  657. package/build-module/components/rich-text/native/index.native.js +1 -3
  658. package/build-module/components/rich-text/native/index.native.js.map +1 -1
  659. package/build-module/components/rich-text/native/toolbar-button-with-options.native.js +1 -3
  660. package/build-module/components/rich-text/native/toolbar-button-with-options.native.js.map +1 -1
  661. package/build-module/components/rich-text/native/use-format-types.js +1 -0
  662. package/build-module/components/rich-text/native/use-format-types.js.map +1 -1
  663. package/build-module/components/rich-text/toolbar-button.js.map +1 -1
  664. package/build-module/components/rich-text/use-format-types.js +1 -0
  665. package/build-module/components/rich-text/use-format-types.js.map +1 -1
  666. package/build-module/components/spacing-sizes-control/index.js +1 -2
  667. package/build-module/components/spacing-sizes-control/index.js.map +1 -1
  668. package/build-module/components/spacing-sizes-control/input-controls/axial.js +1 -2
  669. package/build-module/components/spacing-sizes-control/input-controls/axial.js.map +1 -1
  670. package/build-module/components/spacing-sizes-control/input-controls/separated.js +1 -2
  671. package/build-module/components/spacing-sizes-control/input-controls/separated.js.map +1 -1
  672. package/build-module/components/spacing-sizes-control/input-controls/spacing-input-control.js +1 -3
  673. package/build-module/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -1
  674. package/build-module/components/spacing-sizes-control/utils.js +1 -0
  675. package/build-module/components/spacing-sizes-control/utils.js.map +1 -1
  676. package/build-module/components/tabbed-sidebar/index.js +1 -2
  677. package/build-module/components/tabbed-sidebar/index.js.map +1 -1
  678. package/build-module/components/tool-selector/index.js +10 -6
  679. package/build-module/components/tool-selector/index.js.map +1 -1
  680. package/build-module/components/typewriter/index.js +1 -0
  681. package/build-module/components/typewriter/index.js.map +1 -1
  682. package/build-module/components/unsupported-block-details/index.native.js +1 -2
  683. package/build-module/components/unsupported-block-details/index.native.js.map +1 -1
  684. package/build-module/components/url-input/button.js +1 -2
  685. package/build-module/components/url-input/button.js.map +1 -1
  686. package/build-module/components/url-input/index.js +2 -4
  687. package/build-module/components/url-input/index.js.map +1 -1
  688. package/build-module/components/url-popover/image-url-input-ui.js +1 -3
  689. package/build-module/components/url-popover/image-url-input-ui.js.map +1 -1
  690. package/build-module/components/url-popover/index.js +1 -2
  691. package/build-module/components/url-popover/index.js.map +1 -1
  692. package/build-module/components/url-popover/link-editor.js +1 -2
  693. package/build-module/components/url-popover/link-editor.js.map +1 -1
  694. package/build-module/components/url-popover/link-viewer.js +1 -2
  695. package/build-module/components/url-popover/link-viewer.js.map +1 -1
  696. package/build-module/components/use-block-drop-zone/index.js.map +1 -1
  697. package/build-module/components/use-flash-editable-blocks/index.js.map +1 -1
  698. package/build-module/components/use-moving-animation/index.js.map +1 -1
  699. package/build-module/components/use-resize-canvas/index.js +1 -2
  700. package/build-module/components/use-resize-canvas/index.js.map +1 -1
  701. package/build-module/components/video-player/index.native.js +1 -2
  702. package/build-module/components/video-player/index.native.js.map +1 -1
  703. package/build-module/components/warning/index.js +1 -2
  704. package/build-module/components/warning/index.js.map +1 -1
  705. package/build-module/components/warning/index.native.js +1 -2
  706. package/build-module/components/warning/index.native.js.map +1 -1
  707. package/build-module/components/writing-flow/index.js +1 -3
  708. package/build-module/components/writing-flow/index.js.map +1 -1
  709. package/build-module/components/writing-flow/use-tab-nav.js +21 -5
  710. package/build-module/components/writing-flow/use-tab-nav.js.map +1 -1
  711. package/build-module/hooks/align.js.map +1 -1
  712. package/build-module/hooks/anchor.js +1 -3
  713. package/build-module/hooks/anchor.js.map +1 -1
  714. package/build-module/hooks/block-bindings.js +1 -3
  715. package/build-module/hooks/block-bindings.js.map +1 -1
  716. package/build-module/hooks/block-hooks.js +2 -3
  717. package/build-module/hooks/block-hooks.js.map +1 -1
  718. package/build-module/hooks/block-style-variation.js +1 -2
  719. package/build-module/hooks/block-style-variation.js.map +1 -1
  720. package/build-module/hooks/dimensions.js +1 -3
  721. package/build-module/hooks/dimensions.js.map +1 -1
  722. package/build-module/hooks/duotone.js +1 -3
  723. package/build-module/hooks/duotone.js.map +1 -1
  724. package/build-module/hooks/font-family.js.map +1 -1
  725. package/build-module/hooks/gap.js.map +1 -1
  726. package/build-module/hooks/generated-class-name.js +1 -0
  727. package/build-module/hooks/generated-class-name.js.map +1 -1
  728. package/build-module/hooks/grid-visualizer.js +14 -14
  729. package/build-module/hooks/grid-visualizer.js.map +1 -1
  730. package/build-module/hooks/layout-child.js +42 -6
  731. package/build-module/hooks/layout-child.js.map +1 -1
  732. package/build-module/hooks/layout.js +1 -3
  733. package/build-module/hooks/layout.js.map +1 -1
  734. package/build-module/hooks/position.js +1 -1
  735. package/build-module/hooks/position.js.map +1 -1
  736. package/build-module/hooks/spacing-visualizer.js.map +1 -1
  737. package/build-module/hooks/style.js +1 -3
  738. package/build-module/hooks/style.js.map +1 -1
  739. package/build-module/hooks/text-align.js.map +1 -1
  740. package/build-module/hooks/typography.native.js +1 -2
  741. package/build-module/hooks/typography.native.js.map +1 -1
  742. package/build-module/hooks/use-bindings-attributes.js +1 -2
  743. package/build-module/hooks/use-bindings-attributes.js.map +1 -1
  744. package/build-module/hooks/use-typography-props.js.map +1 -1
  745. package/build-module/hooks/use-zoom-out.js +24 -17
  746. package/build-module/hooks/use-zoom-out.js.map +1 -1
  747. package/build-module/layouts/constrained.js +1 -3
  748. package/build-module/layouts/constrained.js.map +1 -1
  749. package/build-module/layouts/flex.js +1 -3
  750. package/build-module/layouts/flex.js.map +1 -1
  751. package/build-module/layouts/grid.js +1 -3
  752. package/build-module/layouts/grid.js.map +1 -1
  753. package/build-module/layouts/utils.js.map +1 -1
  754. package/build-module/private-apis.js +2 -0
  755. package/build-module/private-apis.js.map +1 -1
  756. package/build-module/store/actions.js +5 -6
  757. package/build-module/store/actions.js.map +1 -1
  758. package/build-module/store/private-selectors.js.map +1 -1
  759. package/build-module/store/reducer.js +1 -16
  760. package/build-module/store/reducer.js.map +1 -1
  761. package/build-module/store/selectors.js +21 -12
  762. package/build-module/store/selectors.js.map +1 -1
  763. package/build-module/utils/block-bindings.js +9 -6
  764. package/build-module/utils/block-bindings.js.map +1 -1
  765. package/build-module/utils/get-font-styles-and-weights.js +1 -1
  766. package/build-module/utils/get-font-styles-and-weights.js.map +1 -1
  767. package/build-module/utils/get-px-from-css-unit.js +1 -1
  768. package/build-module/utils/get-px-from-css-unit.js.map +1 -1
  769. package/build-module/utils/object.js +1 -0
  770. package/build-module/utils/object.js.map +1 -1
  771. package/build-module/utils/pasting.js.map +1 -1
  772. package/build-style/content-rtl.css +13 -26
  773. package/build-style/content.css +13 -26
  774. package/build-style/style-rtl.css +23 -41
  775. package/build-style/style.css +23 -41
  776. package/package.json +33 -33
  777. package/src/components/block-canvas/style.scss +0 -1
  778. package/src/components/block-list/content.scss +3 -2
  779. package/src/components/block-list/use-block-props/use-selected-block-event-handlers.js +25 -4
  780. package/src/components/block-list/zoom-out-separator.js +8 -6
  781. package/src/components/block-popover/index.js +64 -2
  782. package/src/components/block-preview/auto.js +1 -4
  783. package/src/components/block-tools/index.js +0 -11
  784. package/src/components/block-tools/style.scss +1 -1
  785. package/src/components/block-tools/use-show-block-tools.js +10 -3
  786. package/src/components/block-tools/zoom-out-popover.js +2 -1
  787. package/src/components/block-tools/zoom-out-toolbar.js +2 -23
  788. package/src/components/iframe/content.scss +27 -32
  789. package/src/components/iframe/index.js +63 -13
  790. package/src/components/iframe/style.scss +18 -0
  791. package/src/components/inner-blocks/use-nested-settings-update.js +16 -10
  792. package/src/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.js +1 -1
  793. package/src/components/inserter/category-tabs/index.js +1 -11
  794. package/src/components/inserter/menu.js +7 -2
  795. package/src/components/inserter/quick-inserter.js +1 -1
  796. package/src/components/inserter/style.scss +1 -41
  797. package/src/components/link-control/search-input.js +4 -5
  798. package/src/components/link-control/search-results.js +2 -13
  799. package/src/components/link-control/test/index.js +84 -46
  800. package/src/components/media-replace-flow/test/index.js +1 -1
  801. package/src/components/responsive-block-control/style.scss +0 -1
  802. package/src/components/rich-text/style.scss +5 -0
  803. package/src/components/tool-selector/index.js +7 -2
  804. package/src/components/use-resize-canvas/index.js +1 -3
  805. package/src/components/writing-flow/use-tab-nav.js +28 -4
  806. package/src/hooks/grid-visualizer.js +23 -9
  807. package/src/hooks/layout-child.js +48 -3
  808. package/src/hooks/use-zoom-out.js +36 -20
  809. package/src/private-apis.js +2 -0
  810. package/src/store/actions.js +3 -2
  811. package/src/store/reducer.js +0 -17
  812. package/src/store/selectors.js +23 -12
  813. package/src/store/test/private-selectors.js +7 -1
  814. package/src/store/test/selectors.js +13 -2
  815. package/src/style.scss +1 -0
  816. package/src/utils/block-bindings.js +9 -6
  817. package/src/utils/test/use-block-bindings-utils.js +174 -0
@@ -31,6 +31,8 @@ function isObjectEmpty(object) {
31
31
  *
32
32
  * @since 6.7.0 Introduced in WordPress core.
33
33
  *
34
+ * @param {?string} clientId Optional block client ID. If not set, it will use the current block client ID from the context.
35
+ *
34
36
  * @return {?WPBlockBindingsUtils} Object containing the block bindings utils.
35
37
  *
36
38
  * @example
@@ -61,10 +63,11 @@ function isObjectEmpty(object) {
61
63
  * removeAllBlockBindings();
62
64
  * ```
63
65
  */
64
- export function useBlockBindingsUtils() {
66
+ export function useBlockBindingsUtils(clientId) {
65
67
  const {
66
- clientId
68
+ clientId: contextClientId
67
69
  } = useBlockEditContext();
70
+ const blockClientId = clientId || contextClientId;
68
71
  const {
69
72
  updateBlockAttributes
70
73
  } = useDispatch(blockEditorStore);
@@ -107,7 +110,7 @@ export function useBlockBindingsUtils() {
107
110
  bindings: currentBindings,
108
111
  ...metadata
109
112
  } = {}
110
- } = getBlockAttributes(clientId);
113
+ } = getBlockAttributes(blockClientId);
111
114
  const newBindings = {
112
115
  ...currentBindings
113
116
  };
@@ -125,7 +128,7 @@ export function useBlockBindingsUtils() {
125
128
  if (isObjectEmpty(newMetadata.bindings)) {
126
129
  delete newMetadata.bindings;
127
130
  }
128
- updateBlockAttributes(clientId, {
131
+ updateBlockAttributes(blockClientId, {
129
132
  metadata: isObjectEmpty(newMetadata) ? undefined : newMetadata
130
133
  });
131
134
  };
@@ -147,8 +150,8 @@ export function useBlockBindingsUtils() {
147
150
  bindings,
148
151
  ...metadata
149
152
  } = {}
150
- } = getBlockAttributes(clientId);
151
- updateBlockAttributes(clientId, {
153
+ } = getBlockAttributes(blockClientId);
154
+ updateBlockAttributes(blockClientId, {
152
155
  metadata: isObjectEmpty(metadata) ? undefined : metadata
153
156
  });
154
157
  };
@@ -1 +1 @@
1
- {"version":3,"names":["useDispatch","useRegistry","store","blockEditorStore","useBlockEditContext","isObjectEmpty","object","Object","keys","length","useBlockBindingsUtils","clientId","updateBlockAttributes","getBlockAttributes","select","updateBlockBindings","bindings","metadata","currentBindings","newBindings","entries","forEach","attribute","binding","newMetadata","undefined","removeAllBlockBindings"],"sources":["@wordpress/block-editor/src/utils/block-bindings.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useDispatch, useRegistry } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../store';\nimport { useBlockEditContext } from '../components/block-edit';\n\nfunction isObjectEmpty( object ) {\n\treturn ! object || Object.keys( object ).length === 0;\n}\n\n/**\n * Contains utils to update the block `bindings` metadata.\n *\n * @typedef {Object} WPBlockBindingsUtils\n *\n * @property {Function} updateBlockBindings Updates the value of the bindings connected to block attributes.\n * @property {Function} removeAllBlockBindings Removes the bindings property of the `metadata` attribute.\n */\n\n/**\n * Retrieves the existing utils needed to update the block `bindings` metadata.\n * They can be used to create, modify, or remove connections from the existing block attributes.\n *\n * It contains the following utils:\n * - `updateBlockBindings`: Updates the value of the bindings connected to block attributes. It can be used to remove a specific binding by setting the value to `undefined`.\n * - `removeAllBlockBindings`: Removes the bindings property of the `metadata` attribute.\n *\n * @since 6.7.0 Introduced in WordPress core.\n *\n * @return {?WPBlockBindingsUtils} Object containing the block bindings utils.\n *\n * @example\n * ```js\n * import { useBlockBindingsUtils } from '@wordpress/block-editor'\n * const { updateBlockBindings, removeAllBlockBindings } = useBlockBindingsUtils();\n *\n * // Update url and alt attributes.\n * updateBlockBindings( {\n * url: {\n * source: 'core/post-meta',\n * args: {\n * key: 'url_custom_field',\n * },\n * },\n * alt: {\n * source: 'core/post-meta',\n * args: {\n * key: 'text_custom_field',\n * },\n * },\n * } );\n *\n * // Remove binding from url attribute.\n * updateBlockBindings( { url: undefined } );\n *\n * // Remove bindings from all attributes.\n * removeAllBlockBindings();\n * ```\n */\nexport function useBlockBindingsUtils() {\n\tconst { clientId } = useBlockEditContext();\n\tconst { updateBlockAttributes } = useDispatch( blockEditorStore );\n\tconst { getBlockAttributes } = useRegistry().select( blockEditorStore );\n\n\t/**\n\t * Updates the value of the bindings connected to block attributes.\n\t * It removes the binding when the new value is `undefined`.\n\t *\n\t * @param {Object} bindings Bindings including the attributes to update and the new object.\n\t * @param {string} bindings.source The source name to connect to.\n\t * @param {Object} [bindings.args] Object containing the arguments needed by the source.\n\t *\n\t * @example\n\t * ```js\n\t * import { useBlockBindingsUtils } from '@wordpress/block-editor'\n\t *\n\t * const { updateBlockBindings } = useBlockBindingsUtils();\n\t * updateBlockBindings( {\n\t * url: {\n\t * source: 'core/post-meta',\n\t * args: {\n\t * key: 'url_custom_field',\n\t * },\n\t * \t },\n\t * alt: {\n\t * source: 'core/post-meta',\n\t * args: {\n\t * key: 'text_custom_field',\n\t * },\n\t * \t }\n\t * } );\n\t * ```\n\t */\n\tconst updateBlockBindings = ( bindings ) => {\n\t\tconst { metadata: { bindings: currentBindings, ...metadata } = {} } =\n\t\t\tgetBlockAttributes( clientId );\n\t\tconst newBindings = { ...currentBindings };\n\n\t\tObject.entries( bindings ).forEach( ( [ attribute, binding ] ) => {\n\t\t\tif ( ! binding && newBindings[ attribute ] ) {\n\t\t\t\tdelete newBindings[ attribute ];\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tnewBindings[ attribute ] = binding;\n\t\t} );\n\n\t\tconst newMetadata = {\n\t\t\t...metadata,\n\t\t\tbindings: newBindings,\n\t\t};\n\n\t\tif ( isObjectEmpty( newMetadata.bindings ) ) {\n\t\t\tdelete newMetadata.bindings;\n\t\t}\n\n\t\tupdateBlockAttributes( clientId, {\n\t\t\tmetadata: isObjectEmpty( newMetadata ) ? undefined : newMetadata,\n\t\t} );\n\t};\n\n\t/**\n\t * Removes the bindings property of the `metadata` attribute.\n\t *\n\t * @example\n\t * ```js\n\t * import { useBlockBindingsUtils } from '@wordpress/block-editor'\n\t *\n\t * const { removeAllBlockBindings } = useBlockBindingsUtils();\n\t * removeAllBlockBindings();\n\t * ```\n\t */\n\tconst removeAllBlockBindings = () => {\n\t\tconst { metadata: { bindings, ...metadata } = {} } =\n\t\t\tgetBlockAttributes( clientId );\n\t\tupdateBlockAttributes( clientId, {\n\t\t\tmetadata: isObjectEmpty( metadata ) ? undefined : metadata,\n\t\t} );\n\t};\n\n\treturn { updateBlockBindings, removeAllBlockBindings };\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,WAAW,EAAEC,WAAW,QAAQ,iBAAiB;;AAE1D;AACA;AACA;AACA,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,UAAU;AACpD,SAASC,mBAAmB,QAAQ,0BAA0B;AAE9D,SAASC,aAAaA,CAAEC,MAAM,EAAG;EAChC,OAAO,CAAEA,MAAM,IAAIC,MAAM,CAACC,IAAI,CAAEF,MAAO,CAAC,CAACG,MAAM,KAAK,CAAC;AACtD;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,qBAAqBA,CAAA,EAAG;EACvC,MAAM;IAAEC;EAAS,CAAC,GAAGP,mBAAmB,CAAC,CAAC;EAC1C,MAAM;IAAEQ;EAAsB,CAAC,GAAGZ,WAAW,CAAEG,gBAAiB,CAAC;EACjE,MAAM;IAAEU;EAAmB,CAAC,GAAGZ,WAAW,CAAC,CAAC,CAACa,MAAM,CAAEX,gBAAiB,CAAC;;EAEvE;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACC,MAAMY,mBAAmB,GAAKC,QAAQ,IAAM;IAC3C,MAAM;MAAEC,QAAQ,EAAE;QAAED,QAAQ,EAAEE,eAAe;QAAE,GAAGD;MAAS,CAAC,GAAG,CAAC;IAAE,CAAC,GAClEJ,kBAAkB,CAAEF,QAAS,CAAC;IAC/B,MAAMQ,WAAW,GAAG;MAAE,GAAGD;IAAgB,CAAC;IAE1CX,MAAM,CAACa,OAAO,CAAEJ,QAAS,CAAC,CAACK,OAAO,CAAE,CAAE,CAAEC,SAAS,EAAEC,OAAO,CAAE,KAAM;MACjE,IAAK,CAAEA,OAAO,IAAIJ,WAAW,CAAEG,SAAS,CAAE,EAAG;QAC5C,OAAOH,WAAW,CAAEG,SAAS,CAAE;QAC/B;MACD;MACAH,WAAW,CAAEG,SAAS,CAAE,GAAGC,OAAO;IACnC,CAAE,CAAC;IAEH,MAAMC,WAAW,GAAG;MACnB,GAAGP,QAAQ;MACXD,QAAQ,EAAEG;IACX,CAAC;IAED,IAAKd,aAAa,CAAEmB,WAAW,CAACR,QAAS,CAAC,EAAG;MAC5C,OAAOQ,WAAW,CAACR,QAAQ;IAC5B;IAEAJ,qBAAqB,CAAED,QAAQ,EAAE;MAChCM,QAAQ,EAAEZ,aAAa,CAAEmB,WAAY,CAAC,GAAGC,SAAS,GAAGD;IACtD,CAAE,CAAC;EACJ,CAAC;;EAED;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACC,MAAME,sBAAsB,GAAGA,CAAA,KAAM;IACpC,MAAM;MAAET,QAAQ,EAAE;QAAED,QAAQ;QAAE,GAAGC;MAAS,CAAC,GAAG,CAAC;IAAE,CAAC,GACjDJ,kBAAkB,CAAEF,QAAS,CAAC;IAC/BC,qBAAqB,CAAED,QAAQ,EAAE;MAChCM,QAAQ,EAAEZ,aAAa,CAAEY,QAAS,CAAC,GAAGQ,SAAS,GAAGR;IACnD,CAAE,CAAC;EACJ,CAAC;EAED,OAAO;IAAEF,mBAAmB;IAAEW;EAAuB,CAAC;AACvD","ignoreList":[]}
1
+ {"version":3,"names":["useDispatch","useRegistry","store","blockEditorStore","useBlockEditContext","isObjectEmpty","object","Object","keys","length","useBlockBindingsUtils","clientId","contextClientId","blockClientId","updateBlockAttributes","getBlockAttributes","select","updateBlockBindings","bindings","metadata","currentBindings","newBindings","entries","forEach","attribute","binding","newMetadata","undefined","removeAllBlockBindings"],"sources":["@wordpress/block-editor/src/utils/block-bindings.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useDispatch, useRegistry } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../store';\nimport { useBlockEditContext } from '../components/block-edit';\n\nfunction isObjectEmpty( object ) {\n\treturn ! object || Object.keys( object ).length === 0;\n}\n\n/**\n * Contains utils to update the block `bindings` metadata.\n *\n * @typedef {Object} WPBlockBindingsUtils\n *\n * @property {Function} updateBlockBindings Updates the value of the bindings connected to block attributes.\n * @property {Function} removeAllBlockBindings Removes the bindings property of the `metadata` attribute.\n */\n\n/**\n * Retrieves the existing utils needed to update the block `bindings` metadata.\n * They can be used to create, modify, or remove connections from the existing block attributes.\n *\n * It contains the following utils:\n * - `updateBlockBindings`: Updates the value of the bindings connected to block attributes. It can be used to remove a specific binding by setting the value to `undefined`.\n * - `removeAllBlockBindings`: Removes the bindings property of the `metadata` attribute.\n *\n * @since 6.7.0 Introduced in WordPress core.\n *\n * @param {?string} clientId Optional block client ID. If not set, it will use the current block client ID from the context.\n *\n * @return {?WPBlockBindingsUtils} Object containing the block bindings utils.\n *\n * @example\n * ```js\n * import { useBlockBindingsUtils } from '@wordpress/block-editor'\n * const { updateBlockBindings, removeAllBlockBindings } = useBlockBindingsUtils();\n *\n * // Update url and alt attributes.\n * updateBlockBindings( {\n * url: {\n * source: 'core/post-meta',\n * args: {\n * key: 'url_custom_field',\n * },\n * },\n * alt: {\n * source: 'core/post-meta',\n * args: {\n * key: 'text_custom_field',\n * },\n * },\n * } );\n *\n * // Remove binding from url attribute.\n * updateBlockBindings( { url: undefined } );\n *\n * // Remove bindings from all attributes.\n * removeAllBlockBindings();\n * ```\n */\nexport function useBlockBindingsUtils( clientId ) {\n\tconst { clientId: contextClientId } = useBlockEditContext();\n\tconst blockClientId = clientId || contextClientId;\n\tconst { updateBlockAttributes } = useDispatch( blockEditorStore );\n\tconst { getBlockAttributes } = useRegistry().select( blockEditorStore );\n\n\t/**\n\t * Updates the value of the bindings connected to block attributes.\n\t * It removes the binding when the new value is `undefined`.\n\t *\n\t * @param {Object} bindings Bindings including the attributes to update and the new object.\n\t * @param {string} bindings.source The source name to connect to.\n\t * @param {Object} [bindings.args] Object containing the arguments needed by the source.\n\t *\n\t * @example\n\t * ```js\n\t * import { useBlockBindingsUtils } from '@wordpress/block-editor'\n\t *\n\t * const { updateBlockBindings } = useBlockBindingsUtils();\n\t * updateBlockBindings( {\n\t * url: {\n\t * source: 'core/post-meta',\n\t * args: {\n\t * key: 'url_custom_field',\n\t * },\n\t * \t },\n\t * alt: {\n\t * source: 'core/post-meta',\n\t * args: {\n\t * key: 'text_custom_field',\n\t * },\n\t * \t }\n\t * } );\n\t * ```\n\t */\n\tconst updateBlockBindings = ( bindings ) => {\n\t\tconst { metadata: { bindings: currentBindings, ...metadata } = {} } =\n\t\t\tgetBlockAttributes( blockClientId );\n\t\tconst newBindings = { ...currentBindings };\n\n\t\tObject.entries( bindings ).forEach( ( [ attribute, binding ] ) => {\n\t\t\tif ( ! binding && newBindings[ attribute ] ) {\n\t\t\t\tdelete newBindings[ attribute ];\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tnewBindings[ attribute ] = binding;\n\t\t} );\n\n\t\tconst newMetadata = {\n\t\t\t...metadata,\n\t\t\tbindings: newBindings,\n\t\t};\n\n\t\tif ( isObjectEmpty( newMetadata.bindings ) ) {\n\t\t\tdelete newMetadata.bindings;\n\t\t}\n\n\t\tupdateBlockAttributes( blockClientId, {\n\t\t\tmetadata: isObjectEmpty( newMetadata ) ? undefined : newMetadata,\n\t\t} );\n\t};\n\n\t/**\n\t * Removes the bindings property of the `metadata` attribute.\n\t *\n\t * @example\n\t * ```js\n\t * import { useBlockBindingsUtils } from '@wordpress/block-editor'\n\t *\n\t * const { removeAllBlockBindings } = useBlockBindingsUtils();\n\t * removeAllBlockBindings();\n\t * ```\n\t */\n\tconst removeAllBlockBindings = () => {\n\t\tconst { metadata: { bindings, ...metadata } = {} } =\n\t\t\tgetBlockAttributes( blockClientId );\n\t\tupdateBlockAttributes( blockClientId, {\n\t\t\tmetadata: isObjectEmpty( metadata ) ? undefined : metadata,\n\t\t} );\n\t};\n\n\treturn { updateBlockBindings, removeAllBlockBindings };\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,WAAW,EAAEC,WAAW,QAAQ,iBAAiB;;AAE1D;AACA;AACA;AACA,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,UAAU;AACpD,SAASC,mBAAmB,QAAQ,0BAA0B;AAE9D,SAASC,aAAaA,CAAEC,MAAM,EAAG;EAChC,OAAO,CAAEA,MAAM,IAAIC,MAAM,CAACC,IAAI,CAAEF,MAAO,CAAC,CAACG,MAAM,KAAK,CAAC;AACtD;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,qBAAqBA,CAAEC,QAAQ,EAAG;EACjD,MAAM;IAAEA,QAAQ,EAAEC;EAAgB,CAAC,GAAGR,mBAAmB,CAAC,CAAC;EAC3D,MAAMS,aAAa,GAAGF,QAAQ,IAAIC,eAAe;EACjD,MAAM;IAAEE;EAAsB,CAAC,GAAGd,WAAW,CAAEG,gBAAiB,CAAC;EACjE,MAAM;IAAEY;EAAmB,CAAC,GAAGd,WAAW,CAAC,CAAC,CAACe,MAAM,CAAEb,gBAAiB,CAAC;;EAEvE;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACC,MAAMc,mBAAmB,GAAKC,QAAQ,IAAM;IAC3C,MAAM;MAAEC,QAAQ,EAAE;QAAED,QAAQ,EAAEE,eAAe;QAAE,GAAGD;MAAS,CAAC,GAAG,CAAC;IAAE,CAAC,GAClEJ,kBAAkB,CAAEF,aAAc,CAAC;IACpC,MAAMQ,WAAW,GAAG;MAAE,GAAGD;IAAgB,CAAC;IAE1Cb,MAAM,CAACe,OAAO,CAAEJ,QAAS,CAAC,CAACK,OAAO,CAAE,CAAE,CAAEC,SAAS,EAAEC,OAAO,CAAE,KAAM;MACjE,IAAK,CAAEA,OAAO,IAAIJ,WAAW,CAAEG,SAAS,CAAE,EAAG;QAC5C,OAAOH,WAAW,CAAEG,SAAS,CAAE;QAC/B;MACD;MACAH,WAAW,CAAEG,SAAS,CAAE,GAAGC,OAAO;IACnC,CAAE,CAAC;IAEH,MAAMC,WAAW,GAAG;MACnB,GAAGP,QAAQ;MACXD,QAAQ,EAAEG;IACX,CAAC;IAED,IAAKhB,aAAa,CAAEqB,WAAW,CAACR,QAAS,CAAC,EAAG;MAC5C,OAAOQ,WAAW,CAACR,QAAQ;IAC5B;IAEAJ,qBAAqB,CAAED,aAAa,EAAE;MACrCM,QAAQ,EAAEd,aAAa,CAAEqB,WAAY,CAAC,GAAGC,SAAS,GAAGD;IACtD,CAAE,CAAC;EACJ,CAAC;;EAED;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACC,MAAME,sBAAsB,GAAGA,CAAA,KAAM;IACpC,MAAM;MAAET,QAAQ,EAAE;QAAED,QAAQ;QAAE,GAAGC;MAAS,CAAC,GAAG,CAAC;IAAE,CAAC,GACjDJ,kBAAkB,CAAEF,aAAc,CAAC;IACpCC,qBAAqB,CAAED,aAAa,EAAE;MACrCM,QAAQ,EAAEd,aAAa,CAAEc,QAAS,CAAC,GAAGQ,SAAS,GAAGR;IACnD,CAAE,CAAC;EACJ,CAAC;EAED,OAAO;IAAEF,mBAAmB;IAAEW;EAAuB,CAAC;AACvD","ignoreList":[]}
@@ -137,7 +137,7 @@ export function getFontStylesAndWeights(fontFamilyFaces) {
137
137
  name: weightName,
138
138
  value: weightValue
139
139
  }) => {
140
- const optionName = styleValue === 'normal' ? weightName : sprintf( /* translators: 1: Font weight name. 2: Font style name. */
140
+ const optionName = styleValue === 'normal' ? weightName : sprintf(/* translators: 1: Font weight name. 2: Font style name. */
141
141
  __('%1$s %2$s'), weightName, styleName);
142
142
  combinedStyleAndWeightOptions.push({
143
143
  key: `${styleValue}-${weightValue}`,
@@ -1 +1 @@
1
- {"version":3,"names":["_x","__","sprintf","formatFontStyle","formatFontWeight","FONT_STYLES","name","value","FONT_WEIGHTS","getFontStylesAndWeights","fontFamilyFaces","fontStyles","fontWeights","combinedStyleAndWeightOptions","isSystemFont","length","isVariableFont","forEach","face","fontWeight","test","trim","startValue","endValue","split","parseInt","slice","i","fontWeightValue","toString","some","weight","push","fontStyle","Object","keys","style","styleName","styleValue","weightName","weightValue","optionName","key"],"sources":["@wordpress/block-editor/src/utils/get-font-styles-and-weights.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { _x, __, sprintf } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { formatFontStyle } from './format-font-style';\nimport { formatFontWeight } from './format-font-weight';\n\nconst FONT_STYLES = [\n\t{\n\t\tname: _x( 'Regular', 'font style' ),\n\t\tvalue: 'normal',\n\t},\n\t{\n\t\tname: _x( 'Italic', 'font style' ),\n\t\tvalue: 'italic',\n\t},\n];\n\nconst FONT_WEIGHTS = [\n\t{\n\t\tname: _x( 'Thin', 'font weight' ),\n\t\tvalue: '100',\n\t},\n\t{\n\t\tname: _x( 'Extra Light', 'font weight' ),\n\t\tvalue: '200',\n\t},\n\t{\n\t\tname: _x( 'Light', 'font weight' ),\n\t\tvalue: '300',\n\t},\n\t{\n\t\tname: _x( 'Regular', 'font weight' ),\n\t\tvalue: '400',\n\t},\n\t{\n\t\tname: _x( 'Medium', 'font weight' ),\n\t\tvalue: '500',\n\t},\n\t{\n\t\tname: _x( 'Semi Bold', 'font weight' ),\n\t\tvalue: '600',\n\t},\n\t{\n\t\tname: _x( 'Bold', 'font weight' ),\n\t\tvalue: '700',\n\t},\n\t{\n\t\tname: _x( 'Extra Bold', 'font weight' ),\n\t\tvalue: '800',\n\t},\n\t{\n\t\tname: _x( 'Black', 'font weight' ),\n\t\tvalue: '900',\n\t},\n\t{\n\t\tname: _x( 'Extra Black', 'font weight' ),\n\t\tvalue: '1000',\n\t},\n];\n\n/**\n * Builds a list of font style and weight options based on font family faces.\n * Defaults to the standard font styles and weights if no font family faces are provided.\n *\n * @param {Array} fontFamilyFaces font family faces array\n * @return {Object} new object with combined and separated font style and weight properties\n */\nexport function getFontStylesAndWeights( fontFamilyFaces ) {\n\tlet fontStyles = [];\n\tlet fontWeights = [];\n\tconst combinedStyleAndWeightOptions = [];\n\tconst isSystemFont = ! fontFamilyFaces || fontFamilyFaces?.length === 0;\n\tlet isVariableFont = false;\n\n\tfontFamilyFaces?.forEach( ( face ) => {\n\t\t// Check for variable font by looking for a space in the font weight value. e.g. \"100 900\"\n\t\tif (\n\t\t\t'string' === typeof face.fontWeight &&\n\t\t\t/\\s/.test( face.fontWeight.trim() )\n\t\t) {\n\t\t\tisVariableFont = true;\n\n\t\t\t// Find font weight start and end values.\n\t\t\tlet [ startValue, endValue ] = face.fontWeight.split( ' ' );\n\t\t\tstartValue = parseInt( startValue.slice( 0, 1 ) );\n\t\t\tif ( endValue === '1000' ) {\n\t\t\t\tendValue = 10;\n\t\t\t} else {\n\t\t\t\tendValue = parseInt( endValue.slice( 0, 1 ) );\n\t\t\t}\n\n\t\t\t// Create font weight options for available variable weights.\n\t\t\tfor ( let i = startValue; i <= endValue; i++ ) {\n\t\t\t\tconst fontWeightValue = `${ i.toString() }00`;\n\t\t\t\tif (\n\t\t\t\t\t! fontWeights.some(\n\t\t\t\t\t\t( weight ) => weight.value === fontWeightValue\n\t\t\t\t\t)\n\t\t\t\t) {\n\t\t\t\t\tfontWeights.push( formatFontWeight( fontWeightValue ) );\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// Format font style and weight values.\n\t\tconst fontWeight = formatFontWeight(\n\t\t\t'number' === typeof face.fontWeight\n\t\t\t\t? face.fontWeight.toString()\n\t\t\t\t: face.fontWeight\n\t\t);\n\t\tconst fontStyle = formatFontStyle( face.fontStyle );\n\n\t\t// Create font style and font weight lists without duplicates.\n\t\tif ( fontStyle && Object.keys( fontStyle ).length ) {\n\t\t\tif (\n\t\t\t\t! fontStyles.some(\n\t\t\t\t\t( style ) => style.value === fontStyle.value\n\t\t\t\t)\n\t\t\t) {\n\t\t\t\tfontStyles.push( fontStyle );\n\t\t\t}\n\t\t}\n\n\t\tif ( fontWeight && Object.keys( fontWeight ).length ) {\n\t\t\tif (\n\t\t\t\t! fontWeights.some(\n\t\t\t\t\t( weight ) => weight.value === fontWeight.value\n\t\t\t\t)\n\t\t\t) {\n\t\t\t\tif ( ! isVariableFont ) {\n\t\t\t\t\tfontWeights.push( fontWeight );\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t} );\n\n\t// If there is no font weight of 600 or above, then include faux bold as an option.\n\tif ( ! fontWeights.some( ( weight ) => weight.value >= '600' ) ) {\n\t\tfontWeights.push( {\n\t\t\tname: _x( 'Bold', 'font weight' ),\n\t\t\tvalue: '700',\n\t\t} );\n\t}\n\n\t// If there is no italic font style, then include faux italic as an option.\n\tif ( ! fontStyles.some( ( style ) => style.value === 'italic' ) ) {\n\t\tfontStyles.push( {\n\t\t\tname: _x( 'Italic', 'font style' ),\n\t\t\tvalue: 'italic',\n\t\t} );\n\t}\n\n\t// Use default font styles and weights for system fonts.\n\tif ( isSystemFont ) {\n\t\tfontStyles = FONT_STYLES;\n\t\tfontWeights = FONT_WEIGHTS;\n\t}\n\n\t// Use default styles and weights if there are no available styles or weights from the provided font faces.\n\tfontStyles = fontStyles.length === 0 ? FONT_STYLES : fontStyles;\n\tfontWeights = fontWeights.length === 0 ? FONT_WEIGHTS : fontWeights;\n\n\t// Generate combined font style and weight options for available fonts.\n\tfontStyles.forEach( ( { name: styleName, value: styleValue } ) => {\n\t\tfontWeights.forEach( ( { name: weightName, value: weightValue } ) => {\n\t\t\tconst optionName =\n\t\t\t\tstyleValue === 'normal'\n\t\t\t\t\t? weightName\n\t\t\t\t\t: sprintf(\n\t\t\t\t\t\t\t/* translators: 1: Font weight name. 2: Font style name. */\n\t\t\t\t\t\t\t__( '%1$s %2$s' ),\n\t\t\t\t\t\t\tweightName,\n\t\t\t\t\t\t\tstyleName\n\t\t\t\t\t );\n\n\t\t\tcombinedStyleAndWeightOptions.push( {\n\t\t\t\tkey: `${ styleValue }-${ weightValue }`,\n\t\t\t\tname: optionName,\n\t\t\t\tstyle: {\n\t\t\t\t\tfontStyle: styleValue,\n\t\t\t\t\tfontWeight: weightValue,\n\t\t\t\t},\n\t\t\t} );\n\t\t} );\n\t} );\n\n\treturn {\n\t\tfontStyles,\n\t\tfontWeights,\n\t\tcombinedStyleAndWeightOptions,\n\t\tisSystemFont,\n\t\tisVariableFont,\n\t};\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_x","__","sprintf","formatFontStyle","formatFontWeight","FONT_STYLES","name","value","FONT_WEIGHTS","getFontStylesAndWeights","fontFamilyFaces","fontStyles","fontWeights","combinedStyleAndWeightOptions","isSystemFont","length","isVariableFont","forEach","face","fontWeight","test","trim","startValue","endValue","split","parseInt","slice","i","fontWeightValue","toString","some","weight","push","fontStyle","Object","keys","style","styleName","styleValue","weightName","weightValue","optionName","key"],"sources":["@wordpress/block-editor/src/utils/get-font-styles-and-weights.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { _x, __, sprintf } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { formatFontStyle } from './format-font-style';\nimport { formatFontWeight } from './format-font-weight';\n\nconst FONT_STYLES = [\n\t{\n\t\tname: _x( 'Regular', 'font style' ),\n\t\tvalue: 'normal',\n\t},\n\t{\n\t\tname: _x( 'Italic', 'font style' ),\n\t\tvalue: 'italic',\n\t},\n];\n\nconst FONT_WEIGHTS = [\n\t{\n\t\tname: _x( 'Thin', 'font weight' ),\n\t\tvalue: '100',\n\t},\n\t{\n\t\tname: _x( 'Extra Light', 'font weight' ),\n\t\tvalue: '200',\n\t},\n\t{\n\t\tname: _x( 'Light', 'font weight' ),\n\t\tvalue: '300',\n\t},\n\t{\n\t\tname: _x( 'Regular', 'font weight' ),\n\t\tvalue: '400',\n\t},\n\t{\n\t\tname: _x( 'Medium', 'font weight' ),\n\t\tvalue: '500',\n\t},\n\t{\n\t\tname: _x( 'Semi Bold', 'font weight' ),\n\t\tvalue: '600',\n\t},\n\t{\n\t\tname: _x( 'Bold', 'font weight' ),\n\t\tvalue: '700',\n\t},\n\t{\n\t\tname: _x( 'Extra Bold', 'font weight' ),\n\t\tvalue: '800',\n\t},\n\t{\n\t\tname: _x( 'Black', 'font weight' ),\n\t\tvalue: '900',\n\t},\n\t{\n\t\tname: _x( 'Extra Black', 'font weight' ),\n\t\tvalue: '1000',\n\t},\n];\n\n/**\n * Builds a list of font style and weight options based on font family faces.\n * Defaults to the standard font styles and weights if no font family faces are provided.\n *\n * @param {Array} fontFamilyFaces font family faces array\n * @return {Object} new object with combined and separated font style and weight properties\n */\nexport function getFontStylesAndWeights( fontFamilyFaces ) {\n\tlet fontStyles = [];\n\tlet fontWeights = [];\n\tconst combinedStyleAndWeightOptions = [];\n\tconst isSystemFont = ! fontFamilyFaces || fontFamilyFaces?.length === 0;\n\tlet isVariableFont = false;\n\n\tfontFamilyFaces?.forEach( ( face ) => {\n\t\t// Check for variable font by looking for a space in the font weight value. e.g. \"100 900\"\n\t\tif (\n\t\t\t'string' === typeof face.fontWeight &&\n\t\t\t/\\s/.test( face.fontWeight.trim() )\n\t\t) {\n\t\t\tisVariableFont = true;\n\n\t\t\t// Find font weight start and end values.\n\t\t\tlet [ startValue, endValue ] = face.fontWeight.split( ' ' );\n\t\t\tstartValue = parseInt( startValue.slice( 0, 1 ) );\n\t\t\tif ( endValue === '1000' ) {\n\t\t\t\tendValue = 10;\n\t\t\t} else {\n\t\t\t\tendValue = parseInt( endValue.slice( 0, 1 ) );\n\t\t\t}\n\n\t\t\t// Create font weight options for available variable weights.\n\t\t\tfor ( let i = startValue; i <= endValue; i++ ) {\n\t\t\t\tconst fontWeightValue = `${ i.toString() }00`;\n\t\t\t\tif (\n\t\t\t\t\t! fontWeights.some(\n\t\t\t\t\t\t( weight ) => weight.value === fontWeightValue\n\t\t\t\t\t)\n\t\t\t\t) {\n\t\t\t\t\tfontWeights.push( formatFontWeight( fontWeightValue ) );\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// Format font style and weight values.\n\t\tconst fontWeight = formatFontWeight(\n\t\t\t'number' === typeof face.fontWeight\n\t\t\t\t? face.fontWeight.toString()\n\t\t\t\t: face.fontWeight\n\t\t);\n\t\tconst fontStyle = formatFontStyle( face.fontStyle );\n\n\t\t// Create font style and font weight lists without duplicates.\n\t\tif ( fontStyle && Object.keys( fontStyle ).length ) {\n\t\t\tif (\n\t\t\t\t! fontStyles.some(\n\t\t\t\t\t( style ) => style.value === fontStyle.value\n\t\t\t\t)\n\t\t\t) {\n\t\t\t\tfontStyles.push( fontStyle );\n\t\t\t}\n\t\t}\n\n\t\tif ( fontWeight && Object.keys( fontWeight ).length ) {\n\t\t\tif (\n\t\t\t\t! fontWeights.some(\n\t\t\t\t\t( weight ) => weight.value === fontWeight.value\n\t\t\t\t)\n\t\t\t) {\n\t\t\t\tif ( ! isVariableFont ) {\n\t\t\t\t\tfontWeights.push( fontWeight );\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t} );\n\n\t// If there is no font weight of 600 or above, then include faux bold as an option.\n\tif ( ! fontWeights.some( ( weight ) => weight.value >= '600' ) ) {\n\t\tfontWeights.push( {\n\t\t\tname: _x( 'Bold', 'font weight' ),\n\t\t\tvalue: '700',\n\t\t} );\n\t}\n\n\t// If there is no italic font style, then include faux italic as an option.\n\tif ( ! fontStyles.some( ( style ) => style.value === 'italic' ) ) {\n\t\tfontStyles.push( {\n\t\t\tname: _x( 'Italic', 'font style' ),\n\t\t\tvalue: 'italic',\n\t\t} );\n\t}\n\n\t// Use default font styles and weights for system fonts.\n\tif ( isSystemFont ) {\n\t\tfontStyles = FONT_STYLES;\n\t\tfontWeights = FONT_WEIGHTS;\n\t}\n\n\t// Use default styles and weights if there are no available styles or weights from the provided font faces.\n\tfontStyles = fontStyles.length === 0 ? FONT_STYLES : fontStyles;\n\tfontWeights = fontWeights.length === 0 ? FONT_WEIGHTS : fontWeights;\n\n\t// Generate combined font style and weight options for available fonts.\n\tfontStyles.forEach( ( { name: styleName, value: styleValue } ) => {\n\t\tfontWeights.forEach( ( { name: weightName, value: weightValue } ) => {\n\t\t\tconst optionName =\n\t\t\t\tstyleValue === 'normal'\n\t\t\t\t\t? weightName\n\t\t\t\t\t: sprintf(\n\t\t\t\t\t\t\t/* translators: 1: Font weight name. 2: Font style name. */\n\t\t\t\t\t\t\t__( '%1$s %2$s' ),\n\t\t\t\t\t\t\tweightName,\n\t\t\t\t\t\t\tstyleName\n\t\t\t\t\t );\n\n\t\t\tcombinedStyleAndWeightOptions.push( {\n\t\t\t\tkey: `${ styleValue }-${ weightValue }`,\n\t\t\t\tname: optionName,\n\t\t\t\tstyle: {\n\t\t\t\t\tfontStyle: styleValue,\n\t\t\t\t\tfontWeight: weightValue,\n\t\t\t\t},\n\t\t\t} );\n\t\t} );\n\t} );\n\n\treturn {\n\t\tfontStyles,\n\t\tfontWeights,\n\t\tcombinedStyleAndWeightOptions,\n\t\tisSystemFont,\n\t\tisVariableFont,\n\t};\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAE,EAAEC,EAAE,EAAEC,OAAO,QAAQ,iBAAiB;;AAEjD;AACA;AACA;AACA,SAASC,eAAe,QAAQ,qBAAqB;AACrD,SAASC,gBAAgB,QAAQ,sBAAsB;AAEvD,MAAMC,WAAW,GAAG,CACnB;EACCC,IAAI,EAAEN,EAAE,CAAE,SAAS,EAAE,YAAa,CAAC;EACnCO,KAAK,EAAE;AACR,CAAC,EACD;EACCD,IAAI,EAAEN,EAAE,CAAE,QAAQ,EAAE,YAAa,CAAC;EAClCO,KAAK,EAAE;AACR,CAAC,CACD;AAED,MAAMC,YAAY,GAAG,CACpB;EACCF,IAAI,EAAEN,EAAE,CAAE,MAAM,EAAE,aAAc,CAAC;EACjCO,KAAK,EAAE;AACR,CAAC,EACD;EACCD,IAAI,EAAEN,EAAE,CAAE,aAAa,EAAE,aAAc,CAAC;EACxCO,KAAK,EAAE;AACR,CAAC,EACD;EACCD,IAAI,EAAEN,EAAE,CAAE,OAAO,EAAE,aAAc,CAAC;EAClCO,KAAK,EAAE;AACR,CAAC,EACD;EACCD,IAAI,EAAEN,EAAE,CAAE,SAAS,EAAE,aAAc,CAAC;EACpCO,KAAK,EAAE;AACR,CAAC,EACD;EACCD,IAAI,EAAEN,EAAE,CAAE,QAAQ,EAAE,aAAc,CAAC;EACnCO,KAAK,EAAE;AACR,CAAC,EACD;EACCD,IAAI,EAAEN,EAAE,CAAE,WAAW,EAAE,aAAc,CAAC;EACtCO,KAAK,EAAE;AACR,CAAC,EACD;EACCD,IAAI,EAAEN,EAAE,CAAE,MAAM,EAAE,aAAc,CAAC;EACjCO,KAAK,EAAE;AACR,CAAC,EACD;EACCD,IAAI,EAAEN,EAAE,CAAE,YAAY,EAAE,aAAc,CAAC;EACvCO,KAAK,EAAE;AACR,CAAC,EACD;EACCD,IAAI,EAAEN,EAAE,CAAE,OAAO,EAAE,aAAc,CAAC;EAClCO,KAAK,EAAE;AACR,CAAC,EACD;EACCD,IAAI,EAAEN,EAAE,CAAE,aAAa,EAAE,aAAc,CAAC;EACxCO,KAAK,EAAE;AACR,CAAC,CACD;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASE,uBAAuBA,CAAEC,eAAe,EAAG;EAC1D,IAAIC,UAAU,GAAG,EAAE;EACnB,IAAIC,WAAW,GAAG,EAAE;EACpB,MAAMC,6BAA6B,GAAG,EAAE;EACxC,MAAMC,YAAY,GAAG,CAAEJ,eAAe,IAAIA,eAAe,EAAEK,MAAM,KAAK,CAAC;EACvE,IAAIC,cAAc,GAAG,KAAK;EAE1BN,eAAe,EAAEO,OAAO,CAAIC,IAAI,IAAM;IACrC;IACA,IACC,QAAQ,KAAK,OAAOA,IAAI,CAACC,UAAU,IACnC,IAAI,CAACC,IAAI,CAAEF,IAAI,CAACC,UAAU,CAACE,IAAI,CAAC,CAAE,CAAC,EAClC;MACDL,cAAc,GAAG,IAAI;;MAErB;MACA,IAAI,CAAEM,UAAU,EAAEC,QAAQ,CAAE,GAAGL,IAAI,CAACC,UAAU,CAACK,KAAK,CAAE,GAAI,CAAC;MAC3DF,UAAU,GAAGG,QAAQ,CAAEH,UAAU,CAACI,KAAK,CAAE,CAAC,EAAE,CAAE,CAAE,CAAC;MACjD,IAAKH,QAAQ,KAAK,MAAM,EAAG;QAC1BA,QAAQ,GAAG,EAAE;MACd,CAAC,MAAM;QACNA,QAAQ,GAAGE,QAAQ,CAAEF,QAAQ,CAACG,KAAK,CAAE,CAAC,EAAE,CAAE,CAAE,CAAC;MAC9C;;MAEA;MACA,KAAM,IAAIC,CAAC,GAAGL,UAAU,EAAEK,CAAC,IAAIJ,QAAQ,EAAEI,CAAC,EAAE,EAAG;QAC9C,MAAMC,eAAe,GAAG,GAAID,CAAC,CAACE,QAAQ,CAAC,CAAC,IAAK;QAC7C,IACC,CAAEjB,WAAW,CAACkB,IAAI,CACfC,MAAM,IAAMA,MAAM,CAACxB,KAAK,KAAKqB,eAChC,CAAC,EACA;UACDhB,WAAW,CAACoB,IAAI,CAAE5B,gBAAgB,CAAEwB,eAAgB,CAAE,CAAC;QACxD;MACD;IACD;;IAEA;IACA,MAAMT,UAAU,GAAGf,gBAAgB,CAClC,QAAQ,KAAK,OAAOc,IAAI,CAACC,UAAU,GAChCD,IAAI,CAACC,UAAU,CAACU,QAAQ,CAAC,CAAC,GAC1BX,IAAI,CAACC,UACT,CAAC;IACD,MAAMc,SAAS,GAAG9B,eAAe,CAAEe,IAAI,CAACe,SAAU,CAAC;;IAEnD;IACA,IAAKA,SAAS,IAAIC,MAAM,CAACC,IAAI,CAAEF,SAAU,CAAC,CAAClB,MAAM,EAAG;MACnD,IACC,CAAEJ,UAAU,CAACmB,IAAI,CACdM,KAAK,IAAMA,KAAK,CAAC7B,KAAK,KAAK0B,SAAS,CAAC1B,KACxC,CAAC,EACA;QACDI,UAAU,CAACqB,IAAI,CAAEC,SAAU,CAAC;MAC7B;IACD;IAEA,IAAKd,UAAU,IAAIe,MAAM,CAACC,IAAI,CAAEhB,UAAW,CAAC,CAACJ,MAAM,EAAG;MACrD,IACC,CAAEH,WAAW,CAACkB,IAAI,CACfC,MAAM,IAAMA,MAAM,CAACxB,KAAK,KAAKY,UAAU,CAACZ,KAC3C,CAAC,EACA;QACD,IAAK,CAAES,cAAc,EAAG;UACvBJ,WAAW,CAACoB,IAAI,CAAEb,UAAW,CAAC;QAC/B;MACD;IACD;EACD,CAAE,CAAC;;EAEH;EACA,IAAK,CAAEP,WAAW,CAACkB,IAAI,CAAIC,MAAM,IAAMA,MAAM,CAACxB,KAAK,IAAI,KAAM,CAAC,EAAG;IAChEK,WAAW,CAACoB,IAAI,CAAE;MACjB1B,IAAI,EAAEN,EAAE,CAAE,MAAM,EAAE,aAAc,CAAC;MACjCO,KAAK,EAAE;IACR,CAAE,CAAC;EACJ;;EAEA;EACA,IAAK,CAAEI,UAAU,CAACmB,IAAI,CAAIM,KAAK,IAAMA,KAAK,CAAC7B,KAAK,KAAK,QAAS,CAAC,EAAG;IACjEI,UAAU,CAACqB,IAAI,CAAE;MAChB1B,IAAI,EAAEN,EAAE,CAAE,QAAQ,EAAE,YAAa,CAAC;MAClCO,KAAK,EAAE;IACR,CAAE,CAAC;EACJ;;EAEA;EACA,IAAKO,YAAY,EAAG;IACnBH,UAAU,GAAGN,WAAW;IACxBO,WAAW,GAAGJ,YAAY;EAC3B;;EAEA;EACAG,UAAU,GAAGA,UAAU,CAACI,MAAM,KAAK,CAAC,GAAGV,WAAW,GAAGM,UAAU;EAC/DC,WAAW,GAAGA,WAAW,CAACG,MAAM,KAAK,CAAC,GAAGP,YAAY,GAAGI,WAAW;;EAEnE;EACAD,UAAU,CAACM,OAAO,CAAE,CAAE;IAAEX,IAAI,EAAE+B,SAAS;IAAE9B,KAAK,EAAE+B;EAAW,CAAC,KAAM;IACjE1B,WAAW,CAACK,OAAO,CAAE,CAAE;MAAEX,IAAI,EAAEiC,UAAU;MAAEhC,KAAK,EAAEiC;IAAY,CAAC,KAAM;MACpE,MAAMC,UAAU,GACfH,UAAU,KAAK,QAAQ,GACpBC,UAAU,GACVrC,OAAO,CACP;MACAD,EAAE,CAAE,WAAY,CAAC,EACjBsC,UAAU,EACVF,SACA,CAAC;MAELxB,6BAA6B,CAACmB,IAAI,CAAE;QACnCU,GAAG,EAAE,GAAIJ,UAAU,IAAME,WAAW,EAAG;QACvClC,IAAI,EAAEmC,UAAU;QAChBL,KAAK,EAAE;UACNH,SAAS,EAAEK,UAAU;UACrBnB,UAAU,EAAEqB;QACb;MACD,CAAE,CAAC;IACJ,CAAE,CAAC;EACJ,CAAE,CAAC;EAEH,OAAO;IACN7B,UAAU;IACVC,WAAW;IACXC,6BAA6B;IAC7BC,YAAY;IACZE;EACD,CAAC;AACF","ignoreList":[]}
@@ -5,5 +5,5 @@
5
5
  *
6
6
  * @return {string} Empty string.
7
7
  */
8
- export default (() => '');
8
+ export default () => '';
9
9
  //# sourceMappingURL=get-px-from-css-unit.js.map
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["@wordpress/block-editor/src/utils/get-px-from-css-unit.js"],"sourcesContent":["/**\n * This function was accidentally exposed for mobile/native usage.\n *\n * @deprecated\n *\n * @return {string} Empty string.\n */\nexport default () => '';\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAe,MAAM,EAAE","ignoreList":[]}
1
+ {"version":3,"names":[],"sources":["@wordpress/block-editor/src/utils/get-px-from-css-unit.js"],"sourcesContent":["/**\n * This function was accidentally exposed for mobile/native usage.\n *\n * @deprecated\n *\n * @return {string} Empty string.\n */\nexport default () => '';\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,MAAM,EAAE","ignoreList":[]}
@@ -1,3 +1,4 @@
1
+ /* wp:polyfill */
1
2
  /**
2
3
  * Immutably sets a value inside an object. Like `lodash#set`, but returning a
3
4
  * new object. Treats nullish initial values as empty objects. Clones any
@@ -1 +1 @@
1
- {"version":3,"names":["setImmutably","object","path","value","Array","isArray","leaf","pop","prev","key","lvl","getValueFromObjectPath","defaultValue","_value","arrayPath","split","forEach","fieldName","uniqByProperty","array","property","seen","Set","filter","item","has","add"],"sources":["@wordpress/block-editor/src/utils/object.js"],"sourcesContent":["/**\n * Immutably sets a value inside an object. Like `lodash#set`, but returning a\n * new object. Treats nullish initial values as empty objects. Clones any\n * nested objects. Supports arrays, too.\n *\n * @param {Object} object Object to set a value in.\n * @param {number|string|Array} path Path in the object to modify.\n * @param {*} value New value to set.\n * @return {Object} Cloned object with the new value set.\n */\nexport function setImmutably( object, path, value ) {\n\t// Normalize path\n\tpath = Array.isArray( path ) ? [ ...path ] : [ path ];\n\n\t// Shallowly clone the base of the object\n\tobject = Array.isArray( object ) ? [ ...object ] : { ...object };\n\n\tconst leaf = path.pop();\n\n\t// Traverse object from root to leaf, shallowly cloning at each level\n\tlet prev = object;\n\tfor ( const key of path ) {\n\t\tconst lvl = prev[ key ];\n\t\tprev = prev[ key ] = Array.isArray( lvl ) ? [ ...lvl ] : { ...lvl };\n\t}\n\n\tprev[ leaf ] = value;\n\n\treturn object;\n}\n\n/**\n * Helper util to return a value from a certain path of the object.\n * Path is specified as either:\n * - a string of properties, separated by dots, for example: \"x.y\".\n * - an array of properties, for example `[ 'x', 'y' ]`.\n * You can also specify a default value in case the result is nullish.\n *\n * @param {Object} object Input object.\n * @param {string|Array} path Path to the object property.\n * @param {*} defaultValue Default value if the value at the specified path is nullish.\n * @return {*} Value of the object property at the specified path.\n */\nexport const getValueFromObjectPath = ( object, path, defaultValue ) => {\n\tconst arrayPath = Array.isArray( path ) ? path : path.split( '.' );\n\tlet value = object;\n\tarrayPath.forEach( ( fieldName ) => {\n\t\tvalue = value?.[ fieldName ];\n\t} );\n\treturn value ?? defaultValue;\n};\n\n/**\n * Helper util to filter out objects with duplicate values for a given property.\n *\n * @param {Object[]} array Array of objects to filter.\n * @param {string} property Property to filter unique values by.\n *\n * @return {Object[]} Array of objects with unique values for the specified property.\n */\nexport function uniqByProperty( array, property ) {\n\tconst seen = new Set();\n\treturn array.filter( ( item ) => {\n\t\tconst value = item[ property ];\n\t\treturn seen.has( value ) ? false : seen.add( value );\n\t} );\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASA,YAAYA,CAAEC,MAAM,EAAEC,IAAI,EAAEC,KAAK,EAAG;EACnD;EACAD,IAAI,GAAGE,KAAK,CAACC,OAAO,CAAEH,IAAK,CAAC,GAAG,CAAE,GAAGA,IAAI,CAAE,GAAG,CAAEA,IAAI,CAAE;;EAErD;EACAD,MAAM,GAAGG,KAAK,CAACC,OAAO,CAAEJ,MAAO,CAAC,GAAG,CAAE,GAAGA,MAAM,CAAE,GAAG;IAAE,GAAGA;EAAO,CAAC;EAEhE,MAAMK,IAAI,GAAGJ,IAAI,CAACK,GAAG,CAAC,CAAC;;EAEvB;EACA,IAAIC,IAAI,GAAGP,MAAM;EACjB,KAAM,MAAMQ,GAAG,IAAIP,IAAI,EAAG;IACzB,MAAMQ,GAAG,GAAGF,IAAI,CAAEC,GAAG,CAAE;IACvBD,IAAI,GAAGA,IAAI,CAAEC,GAAG,CAAE,GAAGL,KAAK,CAACC,OAAO,CAAEK,GAAI,CAAC,GAAG,CAAE,GAAGA,GAAG,CAAE,GAAG;MAAE,GAAGA;IAAI,CAAC;EACpE;EAEAF,IAAI,CAAEF,IAAI,CAAE,GAAGH,KAAK;EAEpB,OAAOF,MAAM;AACd;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMU,sBAAsB,GAAGA,CAAEV,MAAM,EAAEC,IAAI,EAAEU,YAAY,KAAM;EAAA,IAAAC,MAAA;EACvE,MAAMC,SAAS,GAAGV,KAAK,CAACC,OAAO,CAAEH,IAAK,CAAC,GAAGA,IAAI,GAAGA,IAAI,CAACa,KAAK,CAAE,GAAI,CAAC;EAClE,IAAIZ,KAAK,GAAGF,MAAM;EAClBa,SAAS,CAACE,OAAO,CAAIC,SAAS,IAAM;IACnCd,KAAK,GAAGA,KAAK,GAAIc,SAAS,CAAE;EAC7B,CAAE,CAAC;EACH,QAAAJ,MAAA,GAAOV,KAAK,cAAAU,MAAA,cAAAA,MAAA,GAAID,YAAY;AAC7B,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASM,cAAcA,CAAEC,KAAK,EAAEC,QAAQ,EAAG;EACjD,MAAMC,IAAI,GAAG,IAAIC,GAAG,CAAC,CAAC;EACtB,OAAOH,KAAK,CAACI,MAAM,CAAIC,IAAI,IAAM;IAChC,MAAMrB,KAAK,GAAGqB,IAAI,CAAEJ,QAAQ,CAAE;IAC9B,OAAOC,IAAI,CAACI,GAAG,CAAEtB,KAAM,CAAC,GAAG,KAAK,GAAGkB,IAAI,CAACK,GAAG,CAAEvB,KAAM,CAAC;EACrD,CAAE,CAAC;AACJ","ignoreList":[]}
1
+ {"version":3,"names":["setImmutably","object","path","value","Array","isArray","leaf","pop","prev","key","lvl","getValueFromObjectPath","defaultValue","_value","arrayPath","split","forEach","fieldName","uniqByProperty","array","property","seen","Set","filter","item","has","add"],"sources":["@wordpress/block-editor/src/utils/object.js"],"sourcesContent":["/**\n * Immutably sets a value inside an object. Like `lodash#set`, but returning a\n * new object. Treats nullish initial values as empty objects. Clones any\n * nested objects. Supports arrays, too.\n *\n * @param {Object} object Object to set a value in.\n * @param {number|string|Array} path Path in the object to modify.\n * @param {*} value New value to set.\n * @return {Object} Cloned object with the new value set.\n */\nexport function setImmutably( object, path, value ) {\n\t// Normalize path\n\tpath = Array.isArray( path ) ? [ ...path ] : [ path ];\n\n\t// Shallowly clone the base of the object\n\tobject = Array.isArray( object ) ? [ ...object ] : { ...object };\n\n\tconst leaf = path.pop();\n\n\t// Traverse object from root to leaf, shallowly cloning at each level\n\tlet prev = object;\n\tfor ( const key of path ) {\n\t\tconst lvl = prev[ key ];\n\t\tprev = prev[ key ] = Array.isArray( lvl ) ? [ ...lvl ] : { ...lvl };\n\t}\n\n\tprev[ leaf ] = value;\n\n\treturn object;\n}\n\n/**\n * Helper util to return a value from a certain path of the object.\n * Path is specified as either:\n * - a string of properties, separated by dots, for example: \"x.y\".\n * - an array of properties, for example `[ 'x', 'y' ]`.\n * You can also specify a default value in case the result is nullish.\n *\n * @param {Object} object Input object.\n * @param {string|Array} path Path to the object property.\n * @param {*} defaultValue Default value if the value at the specified path is nullish.\n * @return {*} Value of the object property at the specified path.\n */\nexport const getValueFromObjectPath = ( object, path, defaultValue ) => {\n\tconst arrayPath = Array.isArray( path ) ? path : path.split( '.' );\n\tlet value = object;\n\tarrayPath.forEach( ( fieldName ) => {\n\t\tvalue = value?.[ fieldName ];\n\t} );\n\treturn value ?? defaultValue;\n};\n\n/**\n * Helper util to filter out objects with duplicate values for a given property.\n *\n * @param {Object[]} array Array of objects to filter.\n * @param {string} property Property to filter unique values by.\n *\n * @return {Object[]} Array of objects with unique values for the specified property.\n */\nexport function uniqByProperty( array, property ) {\n\tconst seen = new Set();\n\treturn array.filter( ( item ) => {\n\t\tconst value = item[ property ];\n\t\treturn seen.has( value ) ? false : seen.add( value );\n\t} );\n}\n"],"mappings":";AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASA,YAAYA,CAAEC,MAAM,EAAEC,IAAI,EAAEC,KAAK,EAAG;EACnD;EACAD,IAAI,GAAGE,KAAK,CAACC,OAAO,CAAEH,IAAK,CAAC,GAAG,CAAE,GAAGA,IAAI,CAAE,GAAG,CAAEA,IAAI,CAAE;;EAErD;EACAD,MAAM,GAAGG,KAAK,CAACC,OAAO,CAAEJ,MAAO,CAAC,GAAG,CAAE,GAAGA,MAAM,CAAE,GAAG;IAAE,GAAGA;EAAO,CAAC;EAEhE,MAAMK,IAAI,GAAGJ,IAAI,CAACK,GAAG,CAAC,CAAC;;EAEvB;EACA,IAAIC,IAAI,GAAGP,MAAM;EACjB,KAAM,MAAMQ,GAAG,IAAIP,IAAI,EAAG;IACzB,MAAMQ,GAAG,GAAGF,IAAI,CAAEC,GAAG,CAAE;IACvBD,IAAI,GAAGA,IAAI,CAAEC,GAAG,CAAE,GAAGL,KAAK,CAACC,OAAO,CAAEK,GAAI,CAAC,GAAG,CAAE,GAAGA,GAAG,CAAE,GAAG;MAAE,GAAGA;IAAI,CAAC;EACpE;EAEAF,IAAI,CAAEF,IAAI,CAAE,GAAGH,KAAK;EAEpB,OAAOF,MAAM;AACd;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMU,sBAAsB,GAAGA,CAAEV,MAAM,EAAEC,IAAI,EAAEU,YAAY,KAAM;EAAA,IAAAC,MAAA;EACvE,MAAMC,SAAS,GAAGV,KAAK,CAACC,OAAO,CAAEH,IAAK,CAAC,GAAGA,IAAI,GAAGA,IAAI,CAACa,KAAK,CAAE,GAAI,CAAC;EAClE,IAAIZ,KAAK,GAAGF,MAAM;EAClBa,SAAS,CAACE,OAAO,CAAIC,SAAS,IAAM;IACnCd,KAAK,GAAGA,KAAK,GAAIc,SAAS,CAAE;EAC7B,CAAE,CAAC;EACH,QAAAJ,MAAA,GAAOV,KAAK,cAAAU,MAAA,cAAAA,MAAA,GAAID,YAAY;AAC7B,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASM,cAAcA,CAAEC,KAAK,EAAEC,QAAQ,EAAG;EACjD,MAAMC,IAAI,GAAG,IAAIC,GAAG,CAAC,CAAC;EACtB,OAAOH,KAAK,CAACI,MAAM,CAAIC,IAAI,IAAM;IAChC,MAAMrB,KAAK,GAAGqB,IAAI,CAAEJ,QAAQ,CAAE;IAC9B,OAAOC,IAAI,CAACI,GAAG,CAAEtB,KAAM,CAAC,GAAG,KAAK,GAAGkB,IAAI,CAACK,GAAG,CAAEvB,KAAM,CAAC;EACrD,CAAE,CAAC;AACJ","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["getFilesFromDataTransfer","removeWindowsFragments","html","startStr","startIdx","indexOf","substring","length","endStr","endIdx","removeCharsetMetaTag","metaTag","startsWith","slice","getPasteEventData","clipboardData","plainText","getData","error","files","shouldDismissPastedFiles","type","IMAGE_TAG","match","IMG_WITH_LOCAL_SRC"],"sources":["@wordpress/block-editor/src/utils/pasting.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { getFilesFromDataTransfer } from '@wordpress/dom';\n\n/**\n * Normalizes a given string of HTML to remove the Windows-specific \"Fragment\"\n * comments and any preceding and trailing content.\n *\n * @param {string} html the html to be normalized\n * @return {string} the normalized html\n */\nfunction removeWindowsFragments( html ) {\n\tconst startStr = '<!--StartFragment-->';\n\tconst startIdx = html.indexOf( startStr );\n\tif ( startIdx > -1 ) {\n\t\thtml = html.substring( startIdx + startStr.length );\n\t} else {\n\t\t// No point looking for EndFragment\n\t\treturn html;\n\t}\n\n\tconst endStr = '<!--EndFragment-->';\n\tconst endIdx = html.indexOf( endStr );\n\tif ( endIdx > -1 ) {\n\t\thtml = html.substring( 0, endIdx );\n\t}\n\n\treturn html;\n}\n\n/**\n * Removes the charset meta tag inserted by Chromium.\n * See:\n * - https://github.com/WordPress/gutenberg/issues/33585\n * - https://bugs.chromium.org/p/chromium/issues/detail?id=1264616#c4\n *\n * @param {string} html the html to be stripped of the meta tag.\n * @return {string} the cleaned html\n */\nfunction removeCharsetMetaTag( html ) {\n\tconst metaTag = `<meta charset='utf-8'>`;\n\n\tif ( html.startsWith( metaTag ) ) {\n\t\treturn html.slice( metaTag.length );\n\t}\n\n\treturn html;\n}\n\nexport function getPasteEventData( { clipboardData } ) {\n\tlet plainText = '';\n\tlet html = '';\n\n\ttry {\n\t\tplainText = clipboardData.getData( 'text/plain' );\n\t\thtml = clipboardData.getData( 'text/html' );\n\t} catch ( error ) {\n\t\t// Some browsers like UC Browser paste plain text by default and\n\t\t// don't support clipboardData at all, so allow default\n\t\t// behaviour.\n\t\treturn;\n\t}\n\n\t// Remove Windows-specific metadata appended within copied HTML text.\n\thtml = removeWindowsFragments( html );\n\n\t// Strip meta tag.\n\thtml = removeCharsetMetaTag( html );\n\n\tconst files = getFilesFromDataTransfer( clipboardData );\n\n\tif ( files.length && ! shouldDismissPastedFiles( files, html ) ) {\n\t\treturn { files };\n\t}\n\n\treturn { html, plainText, files: [] };\n}\n\n/**\n * Given a collection of DataTransfer files and HTML and plain text strings,\n * determine whether the files are to be dismissed in favor of the HTML.\n *\n * Certain office-type programs, like Microsoft Word or Apple Numbers,\n * will, upon copy, generate a screenshot of the content being copied and\n * attach it to the clipboard alongside the actual rich text that the user\n * sought to copy. In those cases, we should let Gutenberg handle the rich text\n * content and not the screenshot, since this allows Gutenberg to insert\n * meaningful blocks, like paragraphs, lists or even tables.\n *\n * @param {File[]} files File objects obtained from a paste event\n * @param {string} html HTML content obtained from a paste event\n * @return {boolean} True if the files should be dismissed\n */\nexport function shouldDismissPastedFiles( files, html /*, plainText */ ) {\n\t// The question is only relevant when there is actual HTML content and when\n\t// there is exactly one image file.\n\tif (\n\t\thtml &&\n\t\tfiles?.length === 1 &&\n\t\tfiles[ 0 ].type.indexOf( 'image/' ) === 0\n\t) {\n\t\t// A single <img> tag found in the HTML source suggests that the\n\t\t// content being pasted revolves around an image. Sometimes there are\n\t\t// other elements found, like <figure>, but we assume that the user's\n\t\t// intention is to paste the actual image file.\n\t\tconst IMAGE_TAG = /<\\s*img\\b/gi;\n\t\tif ( html.match( IMAGE_TAG )?.length !== 1 ) {\n\t\t\treturn true;\n\t\t}\n\n\t\t// Even when there is exactly one <img> tag in the HTML payload, we\n\t\t// choose to weed out local images, i.e. those whose source starts with\n\t\t// \"file://\". These payloads occur in specific configurations, such as\n\t\t// when copying an entire document from Microsoft Word, that contains\n\t\t// text and exactly one image, and pasting that content using Google\n\t\t// Chrome.\n\t\tconst IMG_WITH_LOCAL_SRC = /<\\s*img\\b[^>]*\\bsrc=\"file:\\/\\//i;\n\t\tif ( html.match( IMG_WITH_LOCAL_SRC ) ) {\n\t\t\treturn true;\n\t\t}\n\t}\n\n\treturn false;\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,wBAAwB,QAAQ,gBAAgB;;AAEzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASC,sBAAsBA,CAAEC,IAAI,EAAG;EACvC,MAAMC,QAAQ,GAAG,sBAAsB;EACvC,MAAMC,QAAQ,GAAGF,IAAI,CAACG,OAAO,CAAEF,QAAS,CAAC;EACzC,IAAKC,QAAQ,GAAG,CAAC,CAAC,EAAG;IACpBF,IAAI,GAAGA,IAAI,CAACI,SAAS,CAAEF,QAAQ,GAAGD,QAAQ,CAACI,MAAO,CAAC;EACpD,CAAC,MAAM;IACN;IACA,OAAOL,IAAI;EACZ;EAEA,MAAMM,MAAM,GAAG,oBAAoB;EACnC,MAAMC,MAAM,GAAGP,IAAI,CAACG,OAAO,CAAEG,MAAO,CAAC;EACrC,IAAKC,MAAM,GAAG,CAAC,CAAC,EAAG;IAClBP,IAAI,GAAGA,IAAI,CAACI,SAAS,CAAE,CAAC,EAAEG,MAAO,CAAC;EACnC;EAEA,OAAOP,IAAI;AACZ;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASQ,oBAAoBA,CAAER,IAAI,EAAG;EACrC,MAAMS,OAAO,GAAI,wBAAuB;EAExC,IAAKT,IAAI,CAACU,UAAU,CAAED,OAAQ,CAAC,EAAG;IACjC,OAAOT,IAAI,CAACW,KAAK,CAAEF,OAAO,CAACJ,MAAO,CAAC;EACpC;EAEA,OAAOL,IAAI;AACZ;AAEA,OAAO,SAASY,iBAAiBA,CAAE;EAAEC;AAAc,CAAC,EAAG;EACtD,IAAIC,SAAS,GAAG,EAAE;EAClB,IAAId,IAAI,GAAG,EAAE;EAEb,IAAI;IACHc,SAAS,GAAGD,aAAa,CAACE,OAAO,CAAE,YAAa,CAAC;IACjDf,IAAI,GAAGa,aAAa,CAACE,OAAO,CAAE,WAAY,CAAC;EAC5C,CAAC,CAAC,OAAQC,KAAK,EAAG;IACjB;IACA;IACA;IACA;EACD;;EAEA;EACAhB,IAAI,GAAGD,sBAAsB,CAAEC,IAAK,CAAC;;EAErC;EACAA,IAAI,GAAGQ,oBAAoB,CAAER,IAAK,CAAC;EAEnC,MAAMiB,KAAK,GAAGnB,wBAAwB,CAAEe,aAAc,CAAC;EAEvD,IAAKI,KAAK,CAACZ,MAAM,IAAI,CAAEa,wBAAwB,CAAED,KAAK,EAAEjB,IAAK,CAAC,EAAG;IAChE,OAAO;MAAEiB;IAAM,CAAC;EACjB;EAEA,OAAO;IAAEjB,IAAI;IAAEc,SAAS;IAAEG,KAAK,EAAE;EAAG,CAAC;AACtC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,wBAAwBA,CAAED,KAAK,EAAEjB,IAAI,CAAC,kBAAmB;EACxE;EACA;EACA,IACCA,IAAI,IACJiB,KAAK,EAAEZ,MAAM,KAAK,CAAC,IACnBY,KAAK,CAAE,CAAC,CAAE,CAACE,IAAI,CAAChB,OAAO,CAAE,QAAS,CAAC,KAAK,CAAC,EACxC;IACD;IACA;IACA;IACA;IACA,MAAMiB,SAAS,GAAG,aAAa;IAC/B,IAAKpB,IAAI,CAACqB,KAAK,CAAED,SAAU,CAAC,EAAEf,MAAM,KAAK,CAAC,EAAG;MAC5C,OAAO,IAAI;IACZ;;IAEA;IACA;IACA;IACA;IACA;IACA;IACA,MAAMiB,kBAAkB,GAAG,iCAAiC;IAC5D,IAAKtB,IAAI,CAACqB,KAAK,CAAEC,kBAAmB,CAAC,EAAG;MACvC,OAAO,IAAI;IACZ;EACD;EAEA,OAAO,KAAK;AACb","ignoreList":[]}
1
+ {"version":3,"names":["getFilesFromDataTransfer","removeWindowsFragments","html","startStr","startIdx","indexOf","substring","length","endStr","endIdx","removeCharsetMetaTag","metaTag","startsWith","slice","getPasteEventData","clipboardData","plainText","getData","error","files","shouldDismissPastedFiles","type","IMAGE_TAG","match","IMG_WITH_LOCAL_SRC"],"sources":["@wordpress/block-editor/src/utils/pasting.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { getFilesFromDataTransfer } from '@wordpress/dom';\n\n/**\n * Normalizes a given string of HTML to remove the Windows-specific \"Fragment\"\n * comments and any preceding and trailing content.\n *\n * @param {string} html the html to be normalized\n * @return {string} the normalized html\n */\nfunction removeWindowsFragments( html ) {\n\tconst startStr = '<!--StartFragment-->';\n\tconst startIdx = html.indexOf( startStr );\n\tif ( startIdx > -1 ) {\n\t\thtml = html.substring( startIdx + startStr.length );\n\t} else {\n\t\t// No point looking for EndFragment\n\t\treturn html;\n\t}\n\n\tconst endStr = '<!--EndFragment-->';\n\tconst endIdx = html.indexOf( endStr );\n\tif ( endIdx > -1 ) {\n\t\thtml = html.substring( 0, endIdx );\n\t}\n\n\treturn html;\n}\n\n/**\n * Removes the charset meta tag inserted by Chromium.\n * See:\n * - https://github.com/WordPress/gutenberg/issues/33585\n * - https://bugs.chromium.org/p/chromium/issues/detail?id=1264616#c4\n *\n * @param {string} html the html to be stripped of the meta tag.\n * @return {string} the cleaned html\n */\nfunction removeCharsetMetaTag( html ) {\n\tconst metaTag = `<meta charset='utf-8'>`;\n\n\tif ( html.startsWith( metaTag ) ) {\n\t\treturn html.slice( metaTag.length );\n\t}\n\n\treturn html;\n}\n\nexport function getPasteEventData( { clipboardData } ) {\n\tlet plainText = '';\n\tlet html = '';\n\n\ttry {\n\t\tplainText = clipboardData.getData( 'text/plain' );\n\t\thtml = clipboardData.getData( 'text/html' );\n\t} catch ( error ) {\n\t\t// Some browsers like UC Browser paste plain text by default and\n\t\t// don't support clipboardData at all, so allow default\n\t\t// behaviour.\n\t\treturn;\n\t}\n\n\t// Remove Windows-specific metadata appended within copied HTML text.\n\thtml = removeWindowsFragments( html );\n\n\t// Strip meta tag.\n\thtml = removeCharsetMetaTag( html );\n\n\tconst files = getFilesFromDataTransfer( clipboardData );\n\n\tif ( files.length && ! shouldDismissPastedFiles( files, html ) ) {\n\t\treturn { files };\n\t}\n\n\treturn { html, plainText, files: [] };\n}\n\n/**\n * Given a collection of DataTransfer files and HTML and plain text strings,\n * determine whether the files are to be dismissed in favor of the HTML.\n *\n * Certain office-type programs, like Microsoft Word or Apple Numbers,\n * will, upon copy, generate a screenshot of the content being copied and\n * attach it to the clipboard alongside the actual rich text that the user\n * sought to copy. In those cases, we should let Gutenberg handle the rich text\n * content and not the screenshot, since this allows Gutenberg to insert\n * meaningful blocks, like paragraphs, lists or even tables.\n *\n * @param {File[]} files File objects obtained from a paste event\n * @param {string} html HTML content obtained from a paste event\n * @return {boolean} True if the files should be dismissed\n */\nexport function shouldDismissPastedFiles( files, html /*, plainText */ ) {\n\t// The question is only relevant when there is actual HTML content and when\n\t// there is exactly one image file.\n\tif (\n\t\thtml &&\n\t\tfiles?.length === 1 &&\n\t\tfiles[ 0 ].type.indexOf( 'image/' ) === 0\n\t) {\n\t\t// A single <img> tag found in the HTML source suggests that the\n\t\t// content being pasted revolves around an image. Sometimes there are\n\t\t// other elements found, like <figure>, but we assume that the user's\n\t\t// intention is to paste the actual image file.\n\t\tconst IMAGE_TAG = /<\\s*img\\b/gi;\n\t\tif ( html.match( IMAGE_TAG )?.length !== 1 ) {\n\t\t\treturn true;\n\t\t}\n\n\t\t// Even when there is exactly one <img> tag in the HTML payload, we\n\t\t// choose to weed out local images, i.e. those whose source starts with\n\t\t// \"file://\". These payloads occur in specific configurations, such as\n\t\t// when copying an entire document from Microsoft Word, that contains\n\t\t// text and exactly one image, and pasting that content using Google\n\t\t// Chrome.\n\t\tconst IMG_WITH_LOCAL_SRC = /<\\s*img\\b[^>]*\\bsrc=\"file:\\/\\//i;\n\t\tif ( html.match( IMG_WITH_LOCAL_SRC ) ) {\n\t\t\treturn true;\n\t\t}\n\t}\n\n\treturn false;\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,wBAAwB,QAAQ,gBAAgB;;AAEzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASC,sBAAsBA,CAAEC,IAAI,EAAG;EACvC,MAAMC,QAAQ,GAAG,sBAAsB;EACvC,MAAMC,QAAQ,GAAGF,IAAI,CAACG,OAAO,CAAEF,QAAS,CAAC;EACzC,IAAKC,QAAQ,GAAG,CAAC,CAAC,EAAG;IACpBF,IAAI,GAAGA,IAAI,CAACI,SAAS,CAAEF,QAAQ,GAAGD,QAAQ,CAACI,MAAO,CAAC;EACpD,CAAC,MAAM;IACN;IACA,OAAOL,IAAI;EACZ;EAEA,MAAMM,MAAM,GAAG,oBAAoB;EACnC,MAAMC,MAAM,GAAGP,IAAI,CAACG,OAAO,CAAEG,MAAO,CAAC;EACrC,IAAKC,MAAM,GAAG,CAAC,CAAC,EAAG;IAClBP,IAAI,GAAGA,IAAI,CAACI,SAAS,CAAE,CAAC,EAAEG,MAAO,CAAC;EACnC;EAEA,OAAOP,IAAI;AACZ;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASQ,oBAAoBA,CAAER,IAAI,EAAG;EACrC,MAAMS,OAAO,GAAG,wBAAwB;EAExC,IAAKT,IAAI,CAACU,UAAU,CAAED,OAAQ,CAAC,EAAG;IACjC,OAAOT,IAAI,CAACW,KAAK,CAAEF,OAAO,CAACJ,MAAO,CAAC;EACpC;EAEA,OAAOL,IAAI;AACZ;AAEA,OAAO,SAASY,iBAAiBA,CAAE;EAAEC;AAAc,CAAC,EAAG;EACtD,IAAIC,SAAS,GAAG,EAAE;EAClB,IAAId,IAAI,GAAG,EAAE;EAEb,IAAI;IACHc,SAAS,GAAGD,aAAa,CAACE,OAAO,CAAE,YAAa,CAAC;IACjDf,IAAI,GAAGa,aAAa,CAACE,OAAO,CAAE,WAAY,CAAC;EAC5C,CAAC,CAAC,OAAQC,KAAK,EAAG;IACjB;IACA;IACA;IACA;EACD;;EAEA;EACAhB,IAAI,GAAGD,sBAAsB,CAAEC,IAAK,CAAC;;EAErC;EACAA,IAAI,GAAGQ,oBAAoB,CAAER,IAAK,CAAC;EAEnC,MAAMiB,KAAK,GAAGnB,wBAAwB,CAAEe,aAAc,CAAC;EAEvD,IAAKI,KAAK,CAACZ,MAAM,IAAI,CAAEa,wBAAwB,CAAED,KAAK,EAAEjB,IAAK,CAAC,EAAG;IAChE,OAAO;MAAEiB;IAAM,CAAC;EACjB;EAEA,OAAO;IAAEjB,IAAI;IAAEc,SAAS;IAAEG,KAAK,EAAE;EAAG,CAAC;AACtC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,wBAAwBA,CAAED,KAAK,EAAEjB,IAAI,CAAC,kBAAmB;EACxE;EACA;EACA,IACCA,IAAI,IACJiB,KAAK,EAAEZ,MAAM,KAAK,CAAC,IACnBY,KAAK,CAAE,CAAC,CAAE,CAACE,IAAI,CAAChB,OAAO,CAAE,QAAS,CAAC,KAAK,CAAC,EACxC;IACD;IACA;IACA;IACA;IACA,MAAMiB,SAAS,GAAG,aAAa;IAC/B,IAAKpB,IAAI,CAACqB,KAAK,CAAED,SAAU,CAAC,EAAEf,MAAM,KAAK,CAAC,EAAG;MAC5C,OAAO,IAAI;IACZ;;IAEA;IACA;IACA;IACA;IACA;IACA;IACA,MAAMiB,kBAAkB,GAAG,iCAAiC;IAC5D,IAAKtB,IAAI,CAACqB,KAAK,CAAEC,kBAAmB,CAAC,EAAG;MACvC,OAAO,IAAI;IACZ;EACD;EAEA,OAAO,KAAK;AACb","ignoreList":[]}
@@ -471,13 +471,14 @@ _::-webkit-full-page-media, _:future, :root .has-multi-selection .block-editor-b
471
471
  display: flex;
472
472
  align-items: center;
473
473
  justify-content: center;
474
+ overflow: hidden;
474
475
  font-size: 13px;
475
476
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
476
477
  color: #000;
477
478
  font-weight: normal;
478
479
  }
479
480
  .is-zoomed-out .block-editor-block-list__zoom-out-separator {
480
- font-size: calc(13px * ( 2 - var(--wp-block-editor-iframe-zoom-out-scale) ));
481
+ font-size: calc(13px / var(--wp-block-editor-iframe-zoom-out-scale));
481
482
  }
482
483
  .block-editor-block-list__zoom-out-separator.is-dragged-over {
483
484
  background: #ccc;
@@ -771,29 +772,12 @@ _::-webkit-full-page-media, _:future, :root .has-multi-selection .block-editor-b
771
772
 
772
773
  .block-editor-iframe__body {
773
774
  position: relative;
774
- }
775
-
776
- .block-editor-iframe__container {
777
- width: 100%;
778
- height: 100%;
779
- overflow-x: hidden;
780
- }
781
-
782
- .block-editor-iframe__scale-container {
783
- width: 100%;
784
- height: 100%;
785
- display: flex;
786
- }
787
-
788
- .block-editor-iframe__scale-container.is-zoomed-out {
789
- width: var(--wp-block-editor-iframe-zoom-out-prev-container-width, 100vw);
790
- margin-right: calc(-1 * (var(--wp-block-editor-iframe-zoom-out-prev-container-width, 100vw) - var(--wp-block-editor-iframe-zoom-out-container-width, 100vw)) / 2);
775
+ border: 0.01px solid transparent;
791
776
  }
792
777
 
793
778
  .block-editor-iframe__html {
794
- border: 0 solid #ddd;
795
779
  transform-origin: top center;
796
- transition: all 0.5s cubic-bezier(0.65, 0, 0.45, 1);
780
+ transition: all 400ms cubic-bezier(0.46, 0.03, 0.52, 0.96), transform 0s scale 0s;
797
781
  }
798
782
  @media (prefers-reduced-motion: reduce) {
799
783
  .block-editor-iframe__html {
@@ -801,17 +785,20 @@ _::-webkit-full-page-media, _:future, :root .has-multi-selection .block-editor-b
801
785
  transition-delay: 0s;
802
786
  }
803
787
  }
788
+ .block-editor-iframe__html.zoom-out-animation {
789
+ transition: all 400ms cubic-bezier(0.46, 0.03, 0.52, 0.96), transform 0s;
790
+ }
804
791
 
805
792
  .block-editor-iframe__html.is-zoomed-out {
806
- transform: scale(var(--wp-block-editor-iframe-zoom-out-scale));
793
+ transform: translateX(calc(-1*(( var(--wp-block-editor-iframe-zoom-out-outer-container-width) - var(--wp-block-editor-iframe-zoom-out-container-width, 100vw)) / 2 / var(--wp-block-editor-iframe-zoom-out-scale))));
794
+ scale: var(--wp-block-editor-iframe-zoom-out-scale);
807
795
  background-color: #ddd;
808
- border: calc(var(--wp-block-editor-iframe-zoom-out-frame-size) / var(--wp-block-editor-iframe-zoom-out-scale)) solid #ddd;
809
- margin-bottom: calc(-1 * calc(calc(var(--wp-block-editor-iframe-zoom-out-content-height) * (1 - var(--wp-block-editor-iframe-zoom-out-scale))) + calc(2 * var(--wp-block-editor-iframe-zoom-out-frame-size)) + 2px));
796
+ margin-bottom: calc(-1 * calc(calc(var(--wp-block-editor-iframe-zoom-out-content-height) * (1 - var(--wp-block-editor-iframe-zoom-out-scale))) + calc(2 * var(--wp-block-editor-iframe-zoom-out-frame-size) / var(--wp-block-editor-iframe-zoom-out-scale)) + 2px));
797
+ padding-top: calc(var(--wp-block-editor-iframe-zoom-out-frame-size) / var(--wp-block-editor-iframe-zoom-out-scale));
798
+ padding-bottom: calc(var(--wp-block-editor-iframe-zoom-out-frame-size) / var(--wp-block-editor-iframe-zoom-out-scale));
810
799
  }
811
800
  .block-editor-iframe__html.is-zoomed-out body {
812
- min-height: calc((var(--wp-block-editor-iframe-zoom-out-inner-height) - calc(2 * var(--wp-block-editor-iframe-zoom-out-frame-size))) / var(--wp-block-editor-iframe-zoom-out-scale));
813
- display: flex;
814
- flex-direction: column;
801
+ min-height: calc((var(--wp-block-editor-iframe-zoom-out-inner-height) - calc(2 * var(--wp-block-editor-iframe-zoom-out-frame-size) / var(--wp-block-editor-iframe-zoom-out-scale))) / var(--wp-block-editor-iframe-zoom-out-scale));
815
802
  }
816
803
  .block-editor-iframe__html.is-zoomed-out body > .is-root-container:not(.wp-block-post-content) {
817
804
  flex: 1;
@@ -471,13 +471,14 @@ _::-webkit-full-page-media, _:future, :root .has-multi-selection .block-editor-b
471
471
  display: flex;
472
472
  align-items: center;
473
473
  justify-content: center;
474
+ overflow: hidden;
474
475
  font-size: 13px;
475
476
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
476
477
  color: #000;
477
478
  font-weight: normal;
478
479
  }
479
480
  .is-zoomed-out .block-editor-block-list__zoom-out-separator {
480
- font-size: calc(13px * ( 2 - var(--wp-block-editor-iframe-zoom-out-scale) ));
481
+ font-size: calc(13px / var(--wp-block-editor-iframe-zoom-out-scale));
481
482
  }
482
483
  .block-editor-block-list__zoom-out-separator.is-dragged-over {
483
484
  background: #ccc;
@@ -771,29 +772,12 @@ _::-webkit-full-page-media, _:future, :root .has-multi-selection .block-editor-b
771
772
 
772
773
  .block-editor-iframe__body {
773
774
  position: relative;
774
- }
775
-
776
- .block-editor-iframe__container {
777
- width: 100%;
778
- height: 100%;
779
- overflow-x: hidden;
780
- }
781
-
782
- .block-editor-iframe__scale-container {
783
- width: 100%;
784
- height: 100%;
785
- display: flex;
786
- }
787
-
788
- .block-editor-iframe__scale-container.is-zoomed-out {
789
- width: var(--wp-block-editor-iframe-zoom-out-prev-container-width, 100vw);
790
- margin-left: calc(-1 * (var(--wp-block-editor-iframe-zoom-out-prev-container-width, 100vw) - var(--wp-block-editor-iframe-zoom-out-container-width, 100vw)) / 2);
775
+ border: 0.01px solid transparent;
791
776
  }
792
777
 
793
778
  .block-editor-iframe__html {
794
- border: 0 solid #ddd;
795
779
  transform-origin: top center;
796
- transition: all 0.5s cubic-bezier(0.65, 0, 0.45, 1);
780
+ transition: all 400ms cubic-bezier(0.46, 0.03, 0.52, 0.96), transform 0s scale 0s;
797
781
  }
798
782
  @media (prefers-reduced-motion: reduce) {
799
783
  .block-editor-iframe__html {
@@ -801,17 +785,20 @@ _::-webkit-full-page-media, _:future, :root .has-multi-selection .block-editor-b
801
785
  transition-delay: 0s;
802
786
  }
803
787
  }
788
+ .block-editor-iframe__html.zoom-out-animation {
789
+ transition: all 400ms cubic-bezier(0.46, 0.03, 0.52, 0.96), transform 0s;
790
+ }
804
791
 
805
792
  .block-editor-iframe__html.is-zoomed-out {
806
- transform: scale(var(--wp-block-editor-iframe-zoom-out-scale));
793
+ transform: translateX(calc(( var(--wp-block-editor-iframe-zoom-out-outer-container-width) - var(--wp-block-editor-iframe-zoom-out-container-width, 100vw)) / 2 / var(--wp-block-editor-iframe-zoom-out-scale)));
794
+ scale: var(--wp-block-editor-iframe-zoom-out-scale);
807
795
  background-color: #ddd;
808
- border: calc(var(--wp-block-editor-iframe-zoom-out-frame-size) / var(--wp-block-editor-iframe-zoom-out-scale)) solid #ddd;
809
- margin-bottom: calc(-1 * calc(calc(var(--wp-block-editor-iframe-zoom-out-content-height) * (1 - var(--wp-block-editor-iframe-zoom-out-scale))) + calc(2 * var(--wp-block-editor-iframe-zoom-out-frame-size)) + 2px));
796
+ margin-bottom: calc(-1 * calc(calc(var(--wp-block-editor-iframe-zoom-out-content-height) * (1 - var(--wp-block-editor-iframe-zoom-out-scale))) + calc(2 * var(--wp-block-editor-iframe-zoom-out-frame-size) / var(--wp-block-editor-iframe-zoom-out-scale)) + 2px));
797
+ padding-top: calc(var(--wp-block-editor-iframe-zoom-out-frame-size) / var(--wp-block-editor-iframe-zoom-out-scale));
798
+ padding-bottom: calc(var(--wp-block-editor-iframe-zoom-out-frame-size) / var(--wp-block-editor-iframe-zoom-out-scale));
810
799
  }
811
800
  .block-editor-iframe__html.is-zoomed-out body {
812
- min-height: calc((var(--wp-block-editor-iframe-zoom-out-inner-height) - calc(2 * var(--wp-block-editor-iframe-zoom-out-frame-size))) / var(--wp-block-editor-iframe-zoom-out-scale));
813
- display: flex;
814
- flex-direction: column;
801
+ min-height: calc((var(--wp-block-editor-iframe-zoom-out-inner-height) - calc(2 * var(--wp-block-editor-iframe-zoom-out-frame-size) / var(--wp-block-editor-iframe-zoom-out-scale))) / var(--wp-block-editor-iframe-zoom-out-scale));
815
802
  }
816
803
  .block-editor-iframe__html.is-zoomed-out body > .is-root-container:not(.wp-block-post-content) {
817
804
  flex: 1;
@@ -279,13 +279,6 @@ iframe[name=editor-canvas] {
279
279
  height: 100%;
280
280
  display: block;
281
281
  background-color: transparent;
282
- transition: all 0.5s cubic-bezier(0.65, 0, 0.45, 1);
283
- }
284
- @media (prefers-reduced-motion: reduce) {
285
- iframe[name=editor-canvas] {
286
- transition-duration: 0s;
287
- transition-delay: 0s;
288
- }
289
282
  }
290
283
 
291
284
  .block-editor-block-icon {
@@ -510,7 +503,7 @@ iframe[name=editor-canvas] {
510
503
  background: none;
511
504
  border: none;
512
505
  }
513
- .zoom-out-toolbar .components-button {
506
+ .zoom-out-toolbar .zoom-out-toolbar-button {
514
507
  height: 40px;
515
508
  }
516
509
 
@@ -1845,6 +1838,22 @@ iframe[name=editor-canvas] {
1845
1838
  padding: 0;
1846
1839
  }
1847
1840
 
1841
+ .block-editor-iframe__container {
1842
+ width: 100%;
1843
+ height: 100%;
1844
+ overflow-x: hidden;
1845
+ }
1846
+
1847
+ .block-editor-iframe__scale-container {
1848
+ height: 100%;
1849
+ }
1850
+
1851
+ .block-editor-iframe__scale-container.is-zoomed-out {
1852
+ width: var(--wp-block-editor-iframe-zoom-out-outer-container-width, 100vw);
1853
+ position: absolute;
1854
+ left: 0;
1855
+ }
1856
+
1848
1857
  .block-editor-image-size-control {
1849
1858
  margin-bottom: 1em;
1850
1859
  }
@@ -1959,8 +1968,7 @@ iframe[name=editor-canvas] {
1959
1968
  .block-editor-block-types-list__item-title {
1960
1969
  padding: 4px 2px 8px;
1961
1970
  font-size: 12px;
1962
- -webkit-hyphens: auto;
1963
- hyphens: auto;
1971
+ hyphens: auto;
1964
1972
  }
1965
1973
 
1966
1974
  .block-editor-block-inspector__tabs [role=tablist] {
@@ -2957,7 +2965,6 @@ iframe[name=editor-canvas] {
2957
2965
 
2958
2966
  .block-editor-responsive-block-control .components-base-control__help {
2959
2967
  border: 0;
2960
- clip: rect(1px, 1px, 1px, 1px);
2961
2968
  clip-path: inset(50%);
2962
2969
  height: 1px;
2963
2970
  margin: -1px;
@@ -2977,10 +2984,14 @@ iframe[name=editor-canvas] {
2977
2984
  margin-bottom: 8px;
2978
2985
  box-shadow: none;
2979
2986
  outline: none;
2987
+ border-radius: 2px;
2980
2988
  }
2981
2989
  .components-popover.block-editor-rich-text__inline-format-toolbar .components-toolbar {
2982
2990
  border-radius: 2px;
2983
2991
  }
2992
+ .components-popover.block-editor-rich-text__inline-format-toolbar .components-toolbar-group {
2993
+ background: none;
2994
+ }
2984
2995
  .components-popover.block-editor-rich-text__inline-format-toolbar .components-toolbar__control,
2985
2996
  .components-popover.block-editor-rich-text__inline-format-toolbar .components-dropdown-menu__toggle {
2986
2997
  min-width: 48px;
@@ -3787,45 +3798,16 @@ div.block-editor-bindings__panel button:hover .block-editor-bindings__item span
3787
3798
 
3788
3799
  .block-editor-inserter__media-tabs-container,
3789
3800
  .block-editor-inserter__block-patterns-tabs-container {
3801
+ flex-grow: 1;
3790
3802
  padding: 16px;
3791
- height: 100%;
3792
3803
  display: flex;
3793
3804
  flex-direction: column;
3794
3805
  justify-content: space-between;
3795
3806
  }
3796
3807
 
3797
3808
  .block-editor-inserter__category-tablist {
3798
- display: flex;
3799
- flex-direction: column;
3800
- border: none;
3801
3809
  margin-bottom: 8px;
3802
3810
  }
3803
- .block-editor-inserter__category-tablist div[role=listitem]:last-child {
3804
- margin-top: auto;
3805
- }
3806
- .block-editor-inserter__category-tablist[aria-orientation=vertical]::after {
3807
- content: none;
3808
- }
3809
- .block-editor-inserter__category-tablist .block-editor-inserter__category-tab {
3810
- padding: 8px 12px 8px 4px;
3811
- text-align: right;
3812
- font-weight: inherit;
3813
- display: block;
3814
- position: relative;
3815
- height: auto;
3816
- }
3817
- .block-editor-inserter__category-tablist .block-editor-inserter__category-tab[aria-selected=true] {
3818
- color: var(--wp-admin-theme-color);
3819
- }
3820
- .block-editor-inserter__category-tablist .block-editor-inserter__category-tab[aria-selected=true] .components-flex-item {
3821
- filter: brightness(0.95);
3822
- }
3823
- .block-editor-inserter__category-tablist .block-editor-inserter__category-tab[aria-selected=true] svg {
3824
- fill: var(--wp-admin-theme-color);
3825
- }
3826
- .block-editor-inserter__category-tablist .block-editor-inserter__category-tab::before {
3827
- display: none;
3828
- }
3829
3811
 
3830
3812
  .block-editor-inserter__category-panel {
3831
3813
  outline: 1px solid transparent;
@@ -279,13 +279,6 @@ iframe[name=editor-canvas] {
279
279
  height: 100%;
280
280
  display: block;
281
281
  background-color: transparent;
282
- transition: all 0.5s cubic-bezier(0.65, 0, 0.45, 1);
283
- }
284
- @media (prefers-reduced-motion: reduce) {
285
- iframe[name=editor-canvas] {
286
- transition-duration: 0s;
287
- transition-delay: 0s;
288
- }
289
282
  }
290
283
 
291
284
  .block-editor-block-icon {
@@ -510,7 +503,7 @@ iframe[name=editor-canvas] {
510
503
  background: none;
511
504
  border: none;
512
505
  }
513
- .zoom-out-toolbar .components-button {
506
+ .zoom-out-toolbar .zoom-out-toolbar-button {
514
507
  height: 40px;
515
508
  }
516
509
 
@@ -1846,6 +1839,22 @@ iframe[name=editor-canvas] {
1846
1839
  padding: 0;
1847
1840
  }
1848
1841
 
1842
+ .block-editor-iframe__container {
1843
+ width: 100%;
1844
+ height: 100%;
1845
+ overflow-x: hidden;
1846
+ }
1847
+
1848
+ .block-editor-iframe__scale-container {
1849
+ height: 100%;
1850
+ }
1851
+
1852
+ .block-editor-iframe__scale-container.is-zoomed-out {
1853
+ width: var(--wp-block-editor-iframe-zoom-out-outer-container-width, 100vw);
1854
+ position: absolute;
1855
+ right: 0;
1856
+ }
1857
+
1849
1858
  .block-editor-image-size-control {
1850
1859
  margin-bottom: 1em;
1851
1860
  }
@@ -1960,8 +1969,7 @@ iframe[name=editor-canvas] {
1960
1969
  .block-editor-block-types-list__item-title {
1961
1970
  padding: 4px 2px 8px;
1962
1971
  font-size: 12px;
1963
- -webkit-hyphens: auto;
1964
- hyphens: auto;
1972
+ hyphens: auto;
1965
1973
  }
1966
1974
 
1967
1975
  .block-editor-block-inspector__tabs [role=tablist] {
@@ -2958,7 +2966,6 @@ iframe[name=editor-canvas] {
2958
2966
 
2959
2967
  .block-editor-responsive-block-control .components-base-control__help {
2960
2968
  border: 0;
2961
- clip: rect(1px, 1px, 1px, 1px);
2962
2969
  clip-path: inset(50%);
2963
2970
  height: 1px;
2964
2971
  margin: -1px;
@@ -2978,10 +2985,14 @@ iframe[name=editor-canvas] {
2978
2985
  margin-bottom: 8px;
2979
2986
  box-shadow: none;
2980
2987
  outline: none;
2988
+ border-radius: 2px;
2981
2989
  }
2982
2990
  .components-popover.block-editor-rich-text__inline-format-toolbar .components-toolbar {
2983
2991
  border-radius: 2px;
2984
2992
  }
2993
+ .components-popover.block-editor-rich-text__inline-format-toolbar .components-toolbar-group {
2994
+ background: none;
2995
+ }
2985
2996
  .components-popover.block-editor-rich-text__inline-format-toolbar .components-toolbar__control,
2986
2997
  .components-popover.block-editor-rich-text__inline-format-toolbar .components-dropdown-menu__toggle {
2987
2998
  min-width: 48px;
@@ -3788,45 +3799,16 @@ div.block-editor-bindings__panel button:hover .block-editor-bindings__item span
3788
3799
 
3789
3800
  .block-editor-inserter__media-tabs-container,
3790
3801
  .block-editor-inserter__block-patterns-tabs-container {
3802
+ flex-grow: 1;
3791
3803
  padding: 16px;
3792
- height: 100%;
3793
3804
  display: flex;
3794
3805
  flex-direction: column;
3795
3806
  justify-content: space-between;
3796
3807
  }
3797
3808
 
3798
3809
  .block-editor-inserter__category-tablist {
3799
- display: flex;
3800
- flex-direction: column;
3801
- border: none;
3802
3810
  margin-bottom: 8px;
3803
3811
  }
3804
- .block-editor-inserter__category-tablist div[role=listitem]:last-child {
3805
- margin-top: auto;
3806
- }
3807
- .block-editor-inserter__category-tablist[aria-orientation=vertical]::after {
3808
- content: none;
3809
- }
3810
- .block-editor-inserter__category-tablist .block-editor-inserter__category-tab {
3811
- padding: 8px 4px 8px 12px;
3812
- text-align: left;
3813
- font-weight: inherit;
3814
- display: block;
3815
- position: relative;
3816
- height: auto;
3817
- }
3818
- .block-editor-inserter__category-tablist .block-editor-inserter__category-tab[aria-selected=true] {
3819
- color: var(--wp-admin-theme-color);
3820
- }
3821
- .block-editor-inserter__category-tablist .block-editor-inserter__category-tab[aria-selected=true] .components-flex-item {
3822
- filter: brightness(0.95);
3823
- }
3824
- .block-editor-inserter__category-tablist .block-editor-inserter__category-tab[aria-selected=true] svg {
3825
- fill: var(--wp-admin-theme-color);
3826
- }
3827
- .block-editor-inserter__category-tablist .block-editor-inserter__category-tab::before {
3828
- display: none;
3829
- }
3830
3812
 
3831
3813
  .block-editor-inserter__category-panel {
3832
3814
  outline: 1px solid transparent;