@wordpress/block-editor 12.22.0 → 12.24.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 (1508) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/README.md +8 -0
  3. package/build/autocompleters/block.js.map +1 -1
  4. package/build/autocompleters/link.js.map +1 -1
  5. package/build/components/alignment-control/index.js.map +1 -1
  6. package/build/components/alignment-control/ui.js.map +1 -1
  7. package/build/components/autocomplete/index.js.map +1 -1
  8. package/build/components/block-actions/index.js.map +1 -1
  9. package/build/components/block-alignment-control/constants.js.map +1 -1
  10. package/build/components/block-alignment-control/index.js.map +1 -1
  11. package/build/components/block-alignment-control/ui.js.map +1 -1
  12. package/build/components/block-alignment-control/ui.native.js.map +1 -1
  13. package/build/components/block-alignment-control/use-available-alignments.js.map +1 -1
  14. package/build/components/block-alignment-matrix-control/index.js.map +1 -1
  15. package/build/components/block-bindings-toolbar-indicator/index.js.map +1 -1
  16. package/build/components/block-breadcrumb/index.js.map +1 -1
  17. package/build/components/block-canvas/index.js.map +1 -1
  18. package/build/components/block-caption/index.native.js.map +1 -1
  19. package/build/components/block-card/index.js.map +1 -1
  20. package/build/components/block-compare/block-view.js.map +1 -1
  21. package/build/components/block-compare/index.js.map +1 -1
  22. package/build/components/block-content-overlay/index.js.map +1 -1
  23. package/build/components/block-context/index.js.map +1 -1
  24. package/build/components/block-controls/fill.js.map +1 -1
  25. package/build/components/block-controls/groups.js.map +1 -1
  26. package/build/components/block-controls/hook.js.map +1 -1
  27. package/build/components/block-controls/index.js.map +1 -1
  28. package/build/components/block-controls/slot.js.map +1 -1
  29. package/build/components/block-controls/slot.native.js.map +1 -1
  30. package/build/components/block-controls/use-has-block-controls.js.map +1 -1
  31. package/build/components/block-draggable/draggable-chip.js.map +1 -1
  32. package/build/components/block-draggable/draggable-chip.native.js.map +1 -1
  33. package/build/components/block-draggable/dropping-insertion-point.native.js +1 -1
  34. package/build/components/block-draggable/dropping-insertion-point.native.js.map +1 -1
  35. package/build/components/block-draggable/index.js.map +1 -1
  36. package/build/components/block-draggable/index.native.js +1 -1
  37. package/build/components/block-draggable/index.native.js.map +1 -1
  38. package/build/components/block-draggable/use-scroll-when-dragging.js.map +1 -1
  39. package/build/components/block-draggable/use-scroll-when-dragging.native.js.map +1 -1
  40. package/build/components/block-edit/context.js +2 -1
  41. package/build/components/block-edit/context.js.map +1 -1
  42. package/build/components/block-edit/edit.js.map +1 -1
  43. package/build/components/block-edit/edit.native.js.map +1 -1
  44. package/build/components/block-edit/index.js +4 -2
  45. package/build/components/block-edit/index.js.map +1 -1
  46. package/build/components/block-edit-visually-button/index.js.map +1 -1
  47. package/build/components/block-editing-mode/index.js.map +1 -1
  48. package/build/components/block-full-height-alignment-control/index.js.map +1 -1
  49. package/build/components/block-heading-level-dropdown/heading-level-icon.js.map +1 -1
  50. package/build/components/block-heading-level-dropdown/index.js.map +1 -1
  51. package/build/components/block-heading-level-dropdown/index.native.js.map +1 -1
  52. package/build/components/block-icon/index.js.map +1 -1
  53. package/build/components/block-icon/index.native.js.map +1 -1
  54. package/build/components/block-info-slot-fill/index.js.map +1 -1
  55. package/build/components/block-inspector/index.js +5 -4
  56. package/build/components/block-inspector/index.js.map +1 -1
  57. package/build/components/block-inspector/useBlockInspectorAnimationSettings.js.map +1 -1
  58. package/build/components/block-list/block-crash-boundary.js.map +1 -1
  59. package/build/components/block-list/block-crash-boundary.native.js.map +1 -1
  60. package/build/components/block-list/block-crash-warning.js.map +1 -1
  61. package/build/components/block-list/block-crash-warning.native.js.map +1 -1
  62. package/build/components/block-list/block-html.js.map +1 -1
  63. package/build/components/block-list/block-invalid-warning.js.map +1 -1
  64. package/build/components/block-list/block-invalid-warning.native.js.map +1 -1
  65. package/build/components/block-list/block-list-context.native.js.map +1 -1
  66. package/build/components/block-list/block-list-item-cell.native.js.map +1 -1
  67. package/build/components/block-list/block-list-item.native.js.map +1 -1
  68. package/build/components/block-list/block-outline.native.js.map +1 -1
  69. package/build/components/block-list/block-selection-button.native.js.map +1 -1
  70. package/build/components/block-list/block.js +55 -29
  71. package/build/components/block-list/block.js.map +1 -1
  72. package/build/components/block-list/block.native.js +2 -2
  73. package/build/components/block-list/block.native.js.map +1 -1
  74. package/build/components/block-list/grid-item.native.js.map +1 -1
  75. package/build/components/block-list/index.js +16 -5
  76. package/build/components/block-list/index.js.map +1 -1
  77. package/build/components/block-list/index.native.js.map +1 -1
  78. package/build/components/block-list/insertion-point.native.js.map +1 -1
  79. package/build/components/block-list/layout.js.map +1 -1
  80. package/build/components/block-list/private-block-context.js.map +1 -1
  81. package/build/components/block-list/subdirectory-icon.js.map +1 -1
  82. package/build/components/block-list/use-block-props/index.js +2 -1
  83. package/build/components/block-list/use-block-props/index.js.map +1 -1
  84. package/build/components/block-list/use-block-props/index.native.js.map +1 -1
  85. package/build/components/block-list/use-block-props/use-block-moving-mode-class-names.js.map +1 -1
  86. package/build/components/block-list/use-block-props/use-block-refs.js.map +1 -1
  87. package/build/components/block-list/use-block-props/use-focus-first-element.js +3 -2
  88. package/build/components/block-list/use-block-props/use-focus-first-element.js.map +1 -1
  89. package/build/components/block-list/use-block-props/use-focus-handler.js.map +1 -1
  90. package/build/components/block-list/use-block-props/use-intersection-observer.js.map +1 -1
  91. package/build/components/block-list/use-block-props/use-is-hovered.js.map +1 -1
  92. package/build/components/block-list/use-block-props/use-nav-mode-exit.js.map +1 -1
  93. package/build/components/block-list/use-block-props/use-selected-block-event-handlers.js.map +1 -1
  94. package/build/components/block-list/use-in-between-inserter.js.map +1 -1
  95. package/build/components/block-list/use-scroll-upon-insertion.native.js.map +1 -1
  96. package/build/components/block-list-appender/index.js.map +1 -1
  97. package/build/components/block-list-appender/index.native.js.map +1 -1
  98. package/build/components/block-lock/index.js.map +1 -1
  99. package/build/components/block-lock/menu-item.js.map +1 -1
  100. package/build/components/block-lock/modal.js.map +1 -1
  101. package/build/components/block-lock/toolbar.js.map +1 -1
  102. package/build/components/block-lock/use-block-lock.js.map +1 -1
  103. package/build/components/block-media-update-progress/index.native.js.map +1 -1
  104. package/build/components/block-mover/button.js +4 -1
  105. package/build/components/block-mover/button.js.map +1 -1
  106. package/build/components/block-mover/index.js +5 -1
  107. package/build/components/block-mover/index.js.map +1 -1
  108. package/build/components/block-mover/index.native.js.map +1 -1
  109. package/build/components/block-mover/mover-description.js.map +1 -1
  110. package/build/components/block-mover/mover-description.native.js.map +1 -1
  111. package/build/components/block-navigation/dropdown.js.map +1 -1
  112. package/build/components/block-parent-selector/index.js.map +1 -1
  113. package/build/components/block-pattern-setup/constants.js.map +1 -1
  114. package/build/components/block-pattern-setup/index.js.map +1 -1
  115. package/build/components/block-pattern-setup/setup-toolbar.js.map +1 -1
  116. package/build/components/block-pattern-setup/use-patterns-setup.js.map +1 -1
  117. package/build/components/block-patterns-list/index.js +4 -1
  118. package/build/components/block-patterns-list/index.js.map +1 -1
  119. package/build/components/block-patterns-paging/index.js +8 -4
  120. package/build/components/block-patterns-paging/index.js.map +1 -1
  121. package/build/components/block-popover/cover.js.map +1 -1
  122. package/build/components/block-popover/drop-zone.js.map +1 -1
  123. package/build/components/block-popover/inbetween.js.map +1 -1
  124. package/build/components/block-popover/index.js.map +1 -1
  125. package/build/components/block-popover/use-popover-scroll.js.map +1 -1
  126. package/build/components/block-preview/auto.js.map +1 -1
  127. package/build/components/block-preview/index.js.map +1 -1
  128. package/build/components/block-quick-navigation/index.js.map +1 -1
  129. package/build/components/block-removal-warning-modal/index.js.map +1 -1
  130. package/build/components/block-rename/index.js.map +1 -1
  131. package/build/components/block-rename/is-empty-string.js.map +1 -1
  132. package/build/components/block-rename/modal.js +13 -9
  133. package/build/components/block-rename/modal.js.map +1 -1
  134. package/build/components/block-rename/rename-control.js +3 -1
  135. package/build/components/block-rename/rename-control.js.map +1 -1
  136. package/build/components/block-rename/use-block-rename.js.map +1 -1
  137. package/build/components/block-selection-clearer/index.js.map +1 -1
  138. package/build/components/block-settings/button.native.js.map +1 -1
  139. package/build/components/block-settings/container.native.js.map +1 -1
  140. package/build/components/block-settings/index.native.js +1 -1
  141. package/build/components/block-settings/index.native.js.map +1 -1
  142. package/build/components/block-settings-menu/block-html-convert-button.js.map +1 -1
  143. package/build/components/block-settings-menu/block-mode-toggle.js.map +1 -1
  144. package/build/components/block-settings-menu/block-parent-selector-menu-item.js.map +1 -1
  145. package/build/components/block-settings-menu/block-settings-dropdown.js +7 -3
  146. package/build/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
  147. package/build/components/block-settings-menu/block-settings-menu-first-item.js.map +1 -1
  148. package/build/components/block-settings-menu/index.js.map +1 -1
  149. package/build/components/block-settings-menu-controls/index.js.map +1 -1
  150. package/build/components/block-styles/index.js.map +1 -1
  151. package/build/components/block-styles/index.native.js.map +1 -1
  152. package/build/components/block-styles/menu-items.js.map +1 -1
  153. package/build/components/block-styles/preview-panel.js.map +1 -1
  154. package/build/components/block-styles/preview.native.js.map +1 -1
  155. package/build/components/block-styles/use-styles-for-block.js.map +1 -1
  156. package/build/components/block-styles/utils.js.map +1 -1
  157. package/build/components/block-switcher/block-styles-menu.js.map +1 -1
  158. package/build/components/block-switcher/block-transformations-menu.js.map +1 -1
  159. package/build/components/block-switcher/block-transformations-menu.native.js.map +1 -1
  160. package/build/components/block-switcher/block-variation-transformations.js.map +1 -1
  161. package/build/components/block-switcher/index.js +4 -3
  162. package/build/components/block-switcher/index.js.map +1 -1
  163. package/build/components/block-switcher/pattern-transformations-menu.js.map +1 -1
  164. package/build/components/block-switcher/preview-block-popover.js.map +1 -1
  165. package/build/components/block-switcher/use-transformed-patterns.js.map +1 -1
  166. package/build/components/block-switcher/utils.js.map +1 -1
  167. package/build/components/block-title/index.js.map +1 -1
  168. package/build/components/block-title/use-block-display-title.js.map +1 -1
  169. package/build/components/block-toolbar/block-name-context.js.map +1 -1
  170. package/build/components/block-toolbar/block-toolbar-last-item.js.map +1 -1
  171. package/build/components/block-toolbar/block-toolbar-menu.native.js.map +1 -1
  172. package/build/components/block-toolbar/index.js +5 -4
  173. package/build/components/block-toolbar/index.js.map +1 -1
  174. package/build/components/block-toolbar/index.native.js.map +1 -1
  175. package/build/components/block-toolbar/shuffle.js +18 -9
  176. package/build/components/block-toolbar/shuffle.js.map +1 -1
  177. package/build/components/block-toolbar/use-has-block-toolbar.js +6 -3
  178. package/build/components/block-toolbar/use-has-block-toolbar.js.map +1 -1
  179. package/build/components/block-toolbar/utils.js.map +1 -1
  180. package/build/components/block-tools/block-selection-button.js +56 -12
  181. package/build/components/block-tools/block-selection-button.js.map +1 -1
  182. package/build/components/block-tools/block-toolbar-breadcrumb.js.map +1 -1
  183. package/build/components/block-tools/block-toolbar-popover.js.map +1 -1
  184. package/build/components/block-tools/empty-block-inserter.js.map +1 -1
  185. package/build/components/block-tools/index.js +15 -3
  186. package/build/components/block-tools/index.js.map +1 -1
  187. package/build/components/block-tools/insertion-point.js.map +1 -1
  188. package/build/components/block-tools/use-block-toolbar-popover-props.js.map +1 -1
  189. package/build/components/block-tools/use-selected-block-tool-props.js.map +1 -1
  190. package/build/components/block-tools/use-show-block-tools.js +7 -13
  191. package/build/components/block-tools/use-show-block-tools.js.map +1 -1
  192. package/build/components/block-tools/zoom-out-mode-inserters.js.map +1 -1
  193. package/build/components/block-types-list/index.js.map +1 -1
  194. package/build/components/block-types-list/index.native.js.map +1 -1
  195. package/build/components/block-variation-picker/index.js.map +1 -1
  196. package/build/components/block-variation-picker/index.native.js.map +1 -1
  197. package/build/components/block-variation-transforms/index.js +4 -1
  198. package/build/components/block-variation-transforms/index.js.map +1 -1
  199. package/build/components/block-vertical-alignment-control/icons.js.map +1 -1
  200. package/build/components/block-vertical-alignment-control/index.js.map +1 -1
  201. package/build/components/block-vertical-alignment-control/ui.js.map +1 -1
  202. package/build/components/border-radius-control/all-input-control.js.map +1 -1
  203. package/build/components/border-radius-control/index.js.map +1 -1
  204. package/build/components/border-radius-control/input-controls.js.map +1 -1
  205. package/build/components/border-radius-control/linked-button.js.map +1 -1
  206. package/build/components/border-radius-control/utils.js.map +1 -1
  207. package/build/components/button-block-appender/index.js.map +1 -1
  208. package/build/components/button-block-appender/index.native.js +11 -1
  209. package/build/components/button-block-appender/index.native.js.map +1 -1
  210. package/build/components/caption/index.native.js.map +1 -1
  211. package/build/components/child-layout-control/index.js.map +1 -1
  212. package/build/components/color-palette/control.js.map +1 -1
  213. package/build/components/color-palette/index.js.map +1 -1
  214. package/build/components/color-palette/with-color-context.js.map +1 -1
  215. package/build/components/color-style-selector/index.js.map +1 -1
  216. package/build/components/colors/index.js +1 -1
  217. package/build/components/colors/index.js.map +1 -1
  218. package/build/components/colors/utils.js.map +1 -1
  219. package/build/components/colors/with-colors.js.map +1 -1
  220. package/build/components/colors-gradients/control.js.map +1 -1
  221. package/build/components/colors-gradients/dropdown.js.map +1 -1
  222. package/build/components/colors-gradients/panel-color-gradient-settings.js.map +1 -1
  223. package/build/components/colors-gradients/panel-color-gradient-settings.native.js.map +1 -1
  224. package/build/components/colors-gradients/use-multiple-origin-colors-and-gradients.js.map +1 -1
  225. package/build/components/contrast-checker/index.js.map +1 -1
  226. package/build/components/contrast-checker/index.native.js.map +1 -1
  227. package/build/components/convert-to-group-buttons/index.js.map +1 -1
  228. package/build/components/convert-to-group-buttons/index.native.js.map +1 -1
  229. package/build/components/convert-to-group-buttons/toolbar.js.map +1 -1
  230. package/build/components/convert-to-group-buttons/use-convert-to-group-button-props.js.map +1 -1
  231. package/build/components/copy-handler/index.js.map +1 -1
  232. package/build/components/date-format-picker/index.js.map +1 -1
  233. package/build/components/default-block-appender/index.js.map +1 -1
  234. package/build/components/default-block-appender/index.native.js.map +1 -1
  235. package/build/components/dimensions-tool/aspect-ratio-tool.js.map +1 -1
  236. package/build/components/dimensions-tool/index.js.map +1 -1
  237. package/build/components/dimensions-tool/scale-tool.js.map +1 -1
  238. package/build/components/dimensions-tool/width-height-tool.js +6 -2
  239. package/build/components/dimensions-tool/width-height-tool.js.map +1 -1
  240. package/build/components/duotone/utils.js.map +1 -1
  241. package/build/components/duotone-control/index.js.map +1 -1
  242. package/build/components/editable-text/index.js.map +1 -1
  243. package/build/components/editor-styles/index.js +2 -1
  244. package/build/components/editor-styles/index.js.map +1 -1
  245. package/build/components/floating-toolbar/index.native.js.map +1 -1
  246. package/build/components/floating-toolbar/nav-up-icon.js.map +1 -1
  247. package/build/components/font-appearance-control/index.js.map +1 -1
  248. package/build/components/font-family/index.js.map +1 -1
  249. package/build/components/font-sizes/fluid-utils.js.map +1 -1
  250. package/build/components/font-sizes/font-size-picker.js.map +1 -1
  251. package/build/components/font-sizes/index.js.map +1 -1
  252. package/build/components/font-sizes/index.native.js.map +1 -1
  253. package/build/components/font-sizes/utils.js.map +1 -1
  254. package/build/components/font-sizes/with-font-sizes.js.map +1 -1
  255. package/build/components/global-styles/advanced-panel.js +9 -2
  256. package/build/components/global-styles/advanced-panel.js.map +1 -1
  257. package/build/components/global-styles/background-panel.js +447 -0
  258. package/build/components/global-styles/background-panel.js.map +1 -0
  259. package/build/components/global-styles/border-panel.js.map +1 -1
  260. package/build/components/global-styles/color-panel.js +2 -1
  261. package/build/components/global-styles/color-panel.js.map +1 -1
  262. package/build/components/global-styles/color-panel.native.js.map +1 -1
  263. package/build/components/global-styles/context.js.map +1 -1
  264. package/build/components/global-styles/dimensions-panel.js.map +1 -1
  265. package/build/components/global-styles/filters-panel.js.map +1 -1
  266. package/build/components/global-styles/get-block-css-selector.js.map +1 -1
  267. package/build/components/global-styles/get-global-styles-changes.js +3 -0
  268. package/build/components/global-styles/get-global-styles-changes.js.map +1 -1
  269. package/build/components/global-styles/hooks.js +1 -1
  270. package/build/components/global-styles/hooks.js.map +1 -1
  271. package/build/components/global-styles/image-settings-panel.js.map +1 -1
  272. package/build/components/global-styles/index.js +14 -1
  273. package/build/components/global-styles/index.js.map +1 -1
  274. package/build/components/global-styles/shadow-panel-components.js.map +1 -1
  275. package/build/components/global-styles/typography-panel.js.map +1 -1
  276. package/build/components/global-styles/typography-utils.js.map +1 -1
  277. package/build/components/global-styles/use-global-styles-output.js +19 -18
  278. package/build/components/global-styles/use-global-styles-output.js.map +1 -1
  279. package/build/components/global-styles/utils.js +2 -1
  280. package/build/components/global-styles/utils.js.map +1 -1
  281. package/build/components/gradients/index.js.map +1 -1
  282. package/build/components/gradients/index.native.js.map +1 -1
  283. package/build/components/gradients/use-gradient.js.map +1 -1
  284. package/build/components/gradients/with-gradient.js.map +1 -1
  285. package/build/components/grid-visualizer/grid-item-resizer.js.map +1 -1
  286. package/build/components/grid-visualizer/grid-visualizer.js.map +1 -1
  287. package/build/components/grid-visualizer/index.js.map +1 -1
  288. package/build/components/grid-visualizer/utils.js.map +1 -1
  289. package/build/components/height-control/index.js.map +1 -1
  290. package/build/components/iframe/get-compatibility-styles.js.map +1 -1
  291. package/build/components/iframe/index.js +14 -10
  292. package/build/components/iframe/index.js.map +1 -1
  293. package/build/components/image-editor/aspect-ratio-dropdown.js.map +1 -1
  294. package/build/components/image-editor/constants.js.map +1 -1
  295. package/build/components/image-editor/context.js.map +1 -1
  296. package/build/components/image-editor/cropper.js +6 -2
  297. package/build/components/image-editor/cropper.js.map +1 -1
  298. package/build/components/image-editor/form-controls.js.map +1 -1
  299. package/build/components/image-editor/index.js +0 -2
  300. package/build/components/image-editor/index.js.map +1 -1
  301. package/build/components/image-editor/rotation-button.js.map +1 -1
  302. package/build/components/image-editor/use-save-image.js.map +1 -1
  303. package/build/components/image-editor/use-transform-image.js.map +1 -1
  304. package/build/components/image-editor/zoom-dropdown.js.map +1 -1
  305. package/build/components/image-link-destinations/index.native.js.map +1 -1
  306. package/build/components/image-size-control/index.js.map +1 -1
  307. package/build/components/image-size-control/use-dimension-handler.js.map +1 -1
  308. package/build/components/index.js +1 -1
  309. package/build/components/index.js.map +1 -1
  310. package/build/components/index.native.js +1 -1
  311. package/build/components/index.native.js.map +1 -1
  312. package/build/components/inner-blocks/button-block-appender.js.map +1 -1
  313. package/build/components/inner-blocks/constants.native.js.map +1 -1
  314. package/build/components/inner-blocks/default-block-appender.js.map +1 -1
  315. package/build/components/inner-blocks/index.js.map +1 -1
  316. package/build/components/inner-blocks/index.native.js.map +1 -1
  317. package/build/components/inner-blocks/use-block-context.js.map +1 -1
  318. package/build/components/inner-blocks/use-inner-block-template-sync.js.map +1 -1
  319. package/build/components/inner-blocks/use-nested-settings-update.js.map +1 -1
  320. package/build/components/inner-blocks/warning-max-depth-exceeded.native.js.map +1 -1
  321. package/build/components/inner-blocks/with-client-id.js.map +1 -1
  322. package/build/components/inserter/block-patterns-explorer/index.js.map +1 -1
  323. package/build/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.js.map +1 -1
  324. package/build/components/inserter/block-patterns-explorer/pattern-list.js.map +1 -1
  325. package/build/components/inserter/block-patterns-tab/index.js +31 -18
  326. package/build/components/inserter/block-patterns-tab/index.js.map +1 -1
  327. package/build/components/inserter/block-patterns-tab/pattern-category-preview-panel.js +2 -19
  328. package/build/components/inserter/block-patterns-tab/pattern-category-preview-panel.js.map +1 -1
  329. package/build/components/inserter/block-patterns-tab/pattern-category-previews.js +1 -3
  330. package/build/components/inserter/block-patterns-tab/pattern-category-previews.js.map +1 -1
  331. package/build/components/inserter/block-patterns-tab/patterns-filter.js.map +1 -1
  332. package/build/components/inserter/block-patterns-tab/use-pattern-categories.js.map +1 -1
  333. package/build/components/inserter/block-patterns-tab/utils.js.map +1 -1
  334. package/build/components/inserter/block-types-tab.js.map +1 -1
  335. package/build/components/inserter/block-types-tab.native.js.map +1 -1
  336. package/build/components/inserter/hooks/use-block-type-impressions.native.js.map +1 -1
  337. package/build/components/inserter/hooks/use-block-types-state.js.map +1 -1
  338. package/build/components/inserter/hooks/use-clipboard-block.native.js.map +1 -1
  339. package/build/components/inserter/hooks/use-insertion-point.js.map +1 -1
  340. package/build/components/inserter/hooks/use-patterns-paging.js.map +1 -1
  341. package/build/components/inserter/hooks/use-patterns-state.js.map +1 -1
  342. package/build/components/inserter/index.js.map +1 -1
  343. package/build/components/inserter/index.native.js.map +1 -1
  344. package/build/components/inserter/library.js +2 -0
  345. package/build/components/inserter/library.js.map +1 -1
  346. package/build/components/inserter/media-tab/hooks.js.map +1 -1
  347. package/build/components/inserter/media-tab/index.js.map +1 -1
  348. package/build/components/inserter/media-tab/media-list.js.map +1 -1
  349. package/build/components/inserter/media-tab/media-panel.js.map +1 -1
  350. package/build/components/inserter/media-tab/media-preview.js.map +1 -1
  351. package/build/components/inserter/media-tab/media-tab.js.map +1 -1
  352. package/build/components/inserter/media-tab/utils.js.map +1 -1
  353. package/build/components/inserter/menu.js +25 -13
  354. package/build/components/inserter/menu.js.map +1 -1
  355. package/build/components/inserter/menu.native.js.map +1 -1
  356. package/build/components/inserter/mobile-tab-navigation.js.map +1 -1
  357. package/build/components/inserter/no-results.js.map +1 -1
  358. package/build/components/inserter/no-results.native.js.map +1 -1
  359. package/build/components/inserter/panel.js.map +1 -1
  360. package/build/components/inserter/preview-panel.js.map +1 -1
  361. package/build/components/inserter/quick-inserter.js.map +1 -1
  362. package/build/components/inserter/reusable-block-rename-hint.js.map +1 -1
  363. package/build/components/inserter/reusable-blocks-tab.native.js.map +1 -1
  364. package/build/components/inserter/search-items.js +36 -15
  365. package/build/components/inserter/search-items.js.map +1 -1
  366. package/build/components/inserter/search-results.js.map +1 -1
  367. package/build/components/inserter/search-results.native.js.map +1 -1
  368. package/build/components/inserter/tabs.js +7 -3
  369. package/build/components/inserter/tabs.js.map +1 -1
  370. package/build/components/inserter/tabs.native.js.map +1 -1
  371. package/build/components/inserter/tips.js.map +1 -1
  372. package/build/components/inserter/utils.native.js.map +1 -1
  373. package/build/components/inserter-button/index.native.js.map +1 -1
  374. package/build/components/inserter-button/sparkles.js.map +1 -1
  375. package/build/components/inserter-draggable-blocks/index.js.map +1 -1
  376. package/build/components/inserter-list-item/index.js.map +1 -1
  377. package/build/components/inserter-listbox/context.js.map +1 -1
  378. package/build/components/inserter-listbox/group.js.map +1 -1
  379. package/build/components/inserter-listbox/index.js.map +1 -1
  380. package/build/components/inserter-listbox/item.js.map +1 -1
  381. package/build/components/inserter-listbox/row.js.map +1 -1
  382. package/build/components/inserter-menu-extension/index.js.map +1 -1
  383. package/build/components/inspector-controls/block-support-slot-container.js.map +1 -1
  384. package/build/components/inspector-controls/block-support-tools-panel.js.map +1 -1
  385. package/build/components/inspector-controls/fill.js.map +1 -1
  386. package/build/components/inspector-controls/fill.native.js.map +1 -1
  387. package/build/components/inspector-controls/groups.js.map +1 -1
  388. package/build/components/inspector-controls/index.js.map +1 -1
  389. package/build/components/inspector-controls/slot.js.map +1 -1
  390. package/build/components/inspector-controls/slot.native.js.map +1 -1
  391. package/build/components/inspector-controls-tabs/advanced-controls-panel.js +1 -1
  392. package/build/components/inspector-controls-tabs/advanced-controls-panel.js.map +1 -1
  393. package/build/components/inspector-controls-tabs/advanced-controls-panel.native.js.map +1 -1
  394. package/build/components/inspector-controls-tabs/index.js.map +1 -1
  395. package/build/components/inspector-controls-tabs/position-controls-panel.js.map +1 -1
  396. package/build/components/inspector-controls-tabs/settings-tab-hint.js.map +1 -1
  397. package/build/components/inspector-controls-tabs/settings-tab.js.map +1 -1
  398. package/build/components/inspector-controls-tabs/styles-tab.js +1 -1
  399. package/build/components/inspector-controls-tabs/styles-tab.js.map +1 -1
  400. package/build/components/inspector-controls-tabs/use-inspector-controls-tabs.js.map +1 -1
  401. package/build/components/inspector-controls-tabs/use-is-list-view-tab-disabled.js.map +1 -1
  402. package/build/components/inspector-controls-tabs/utils.js.map +1 -1
  403. package/build/components/inspector-popover-header/index.js.map +1 -1
  404. package/build/components/justify-content-control/index.js.map +1 -1
  405. package/build/components/justify-content-control/ui.js.map +1 -1
  406. package/build/components/keyboard-shortcuts/index.js +11 -0
  407. package/build/components/keyboard-shortcuts/index.js.map +1 -1
  408. package/build/components/letter-spacing-control/index.js.map +1 -1
  409. package/build/components/line-height-control/index.js.map +1 -1
  410. package/build/components/line-height-control/index.native.js.map +1 -1
  411. package/build/components/line-height-control/utils.js.map +1 -1
  412. package/build/components/link-control/constants.js.map +1 -1
  413. package/build/components/link-control/index.js.map +1 -1
  414. package/build/components/link-control/is-url-like.js.map +1 -1
  415. package/build/components/link-control/link-preview.js.map +1 -1
  416. package/build/components/link-control/search-create-button.js.map +1 -1
  417. package/build/components/link-control/search-input.js.map +1 -1
  418. package/build/components/link-control/search-item.js.map +1 -1
  419. package/build/components/link-control/search-results.js.map +1 -1
  420. package/build/components/link-control/settings-drawer.js.map +1 -1
  421. package/build/components/link-control/settings.js.map +1 -1
  422. package/build/components/link-control/use-create-page.js.map +1 -1
  423. package/build/components/link-control/use-internal-value.js.map +1 -1
  424. package/build/components/link-control/use-rich-url-data.js.map +1 -1
  425. package/build/components/link-control/use-search-handler.js.map +1 -1
  426. package/build/components/link-control/viewer-slot.js.map +1 -1
  427. package/build/components/list-view/appender.js.map +1 -1
  428. package/build/components/list-view/aria-referenced-text.js.map +1 -1
  429. package/build/components/list-view/block-contents.js.map +1 -1
  430. package/build/components/list-view/block-select-button.js +45 -1
  431. package/build/components/list-view/block-select-button.js.map +1 -1
  432. package/build/components/list-view/block.js +1 -1
  433. package/build/components/list-view/block.js.map +1 -1
  434. package/build/components/list-view/branch.js.map +1 -1
  435. package/build/components/list-view/context.js.map +1 -1
  436. package/build/components/list-view/drop-indicator.js.map +1 -1
  437. package/build/components/list-view/expander.js.map +1 -1
  438. package/build/components/list-view/index.js +17 -2
  439. package/build/components/list-view/index.js.map +1 -1
  440. package/build/components/list-view/leaf.js.map +1 -1
  441. package/build/components/list-view/use-block-selection.js.map +1 -1
  442. package/build/components/list-view/use-clipboard-handler.js.map +1 -1
  443. package/build/components/list-view/use-list-view-block-indexes.js.map +1 -1
  444. package/build/components/list-view/use-list-view-client-ids.js.map +1 -1
  445. package/build/components/list-view/use-list-view-collapse-items.js +47 -0
  446. package/build/components/list-view/use-list-view-collapse-items.js.map +1 -0
  447. package/build/components/list-view/use-list-view-drop-zone.js +5 -0
  448. package/build/components/list-view/use-list-view-drop-zone.js.map +1 -1
  449. package/build/components/list-view/use-list-view-expand-selected-item.js.map +1 -1
  450. package/build/components/list-view/use-list-view-images.js.map +1 -1
  451. package/build/components/list-view/use-list-view-scroll-into-view.js.map +1 -1
  452. package/build/components/list-view/utils.js.map +1 -1
  453. package/build/components/media-placeholder/index.js.map +1 -1
  454. package/build/components/media-placeholder/index.native.js.map +1 -1
  455. package/build/components/media-replace-flow/index.js.map +1 -1
  456. package/build/components/media-replace-flow/index.native.js.map +1 -1
  457. package/build/components/media-upload/check.js.map +1 -1
  458. package/build/components/media-upload/constants.native.js.map +1 -1
  459. package/build/components/media-upload/index.js.map +1 -1
  460. package/build/components/media-upload/index.native.js.map +1 -1
  461. package/build/components/media-upload-progress/constants.js.map +1 -1
  462. package/build/components/media-upload-progress/index.native.js.map +1 -1
  463. package/build/components/multi-selection-inspector/index.js.map +1 -1
  464. package/build/components/navigable-toolbar/index.js.map +1 -1
  465. package/build/components/observe-typing/index.js.map +1 -1
  466. package/build/components/panel-color-settings/index.js.map +1 -1
  467. package/build/components/plain-text/index.js.map +1 -1
  468. package/build/components/plain-text/index.native.js.map +1 -1
  469. package/build/components/preview-options/index.js.map +1 -1
  470. package/build/components/provider/block-refs-provider.js.map +1 -1
  471. package/build/components/provider/index.js.map +1 -1
  472. package/build/components/provider/index.native.js.map +1 -1
  473. package/build/components/provider/use-block-sync.js.map +1 -1
  474. package/build/components/provider/with-registry-provider.js.map +1 -1
  475. package/build/components/publish-date-time-picker/index.js.map +1 -1
  476. package/build/components/recursion-provider/index.js +2 -2
  477. package/build/components/recursion-provider/index.js.map +1 -1
  478. package/build/components/resizable-box-popover/index.js.map +1 -1
  479. package/build/components/resolution-tool/index.js.map +1 -1
  480. package/build/components/responsive-block-control/index.js.map +1 -1
  481. package/build/components/responsive-block-control/label.js.map +1 -1
  482. package/build/components/rich-text/content.js +26 -19
  483. package/build/components/rich-text/content.js.map +1 -1
  484. package/build/components/rich-text/embed-handler-picker.native.js.map +1 -1
  485. package/build/components/rich-text/file-paste-handler.native.js.map +1 -1
  486. package/build/components/rich-text/format-edit.js.map +1 -1
  487. package/build/components/rich-text/format-toolbar/index.js.map +1 -1
  488. package/build/components/rich-text/format-toolbar/index.native.js.map +1 -1
  489. package/build/components/rich-text/format-toolbar-container.js.map +1 -1
  490. package/build/components/rich-text/format-toolbar-container.native.js.map +1 -1
  491. package/build/components/rich-text/get-rich-text-values.js.map +1 -1
  492. package/build/components/rich-text/index.js +54 -11
  493. package/build/components/rich-text/index.js.map +1 -1
  494. package/build/components/rich-text/index.native.js +20 -12
  495. package/build/components/rich-text/index.native.js.map +1 -1
  496. package/build/components/rich-text/input-event.js.map +1 -1
  497. package/build/components/rich-text/input-event.native.js.map +1 -1
  498. package/build/components/rich-text/multiline.js.map +1 -1
  499. package/build/components/rich-text/native/format-edit.js.map +1 -1
  500. package/build/components/rich-text/native/get-format-colors.native.js +1 -1
  501. package/build/components/rich-text/native/get-format-colors.native.js.map +1 -1
  502. package/build/components/rich-text/native/index.js.map +1 -1
  503. package/build/components/rich-text/native/index.native.js +2 -2
  504. package/build/components/rich-text/native/index.native.js.map +1 -1
  505. package/build/components/rich-text/native/toolbar-button-with-options.native.js.map +1 -1
  506. package/build/components/rich-text/native/use-format-types.js.map +1 -1
  507. package/build/components/rich-text/prevent-event-discovery.js.map +1 -1
  508. package/build/components/rich-text/remove-browser-shortcuts.native.js.map +1 -1
  509. package/build/components/rich-text/shortcut.js.map +1 -1
  510. package/build/components/rich-text/shortcut.native.js.map +1 -1
  511. package/build/components/rich-text/split-value.js.map +1 -1
  512. package/build/components/rich-text/toolbar-button.js.map +1 -1
  513. package/build/components/rich-text/use-before-input-rules.js.map +1 -1
  514. package/build/components/rich-text/use-delete.js.map +1 -1
  515. package/build/components/rich-text/use-enter.js.map +1 -1
  516. package/build/components/rich-text/use-firefox-compat.js.map +1 -1
  517. package/build/components/rich-text/use-format-types.js.map +1 -1
  518. package/build/components/rich-text/use-input-events.js.map +1 -1
  519. package/build/components/rich-text/use-input-rules.js.map +1 -1
  520. package/build/components/rich-text/use-insert-replacement-text.js.map +1 -1
  521. package/build/components/rich-text/use-mark-persistent.js.map +1 -1
  522. package/build/components/rich-text/use-paste-handler.js.map +1 -1
  523. package/build/components/rich-text/use-remove-browser-shortcuts.js.map +1 -1
  524. package/build/components/rich-text/use-shortcuts.js.map +1 -1
  525. package/build/components/rich-text/use-undo-automatic-change.js +1 -1
  526. package/build/components/rich-text/use-undo-automatic-change.js.map +1 -1
  527. package/build/components/rich-text/utils.js.map +1 -1
  528. package/build/components/rich-text/with-deprecations.js +0 -3
  529. package/build/components/rich-text/with-deprecations.js.map +1 -1
  530. package/build/components/selection-scroll-into-view/index.js.map +1 -1
  531. package/build/components/skip-to-selected-block/index.js.map +1 -1
  532. package/build/components/spacing-sizes-control/hooks/use-spacing-sizes.js.map +1 -1
  533. package/build/components/spacing-sizes-control/index.js.map +1 -1
  534. package/build/components/spacing-sizes-control/input-controls/axial.js.map +1 -1
  535. package/build/components/spacing-sizes-control/input-controls/separated.js.map +1 -1
  536. package/build/components/spacing-sizes-control/input-controls/single.js.map +1 -1
  537. package/build/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -1
  538. package/build/components/spacing-sizes-control/sides-dropdown/index.js.map +1 -1
  539. package/build/components/spacing-sizes-control/utils.js.map +1 -1
  540. package/build/components/text-decoration-control/index.js.map +1 -1
  541. package/build/components/text-transform-control/index.js.map +1 -1
  542. package/build/components/tool-selector/index.js.map +1 -1
  543. package/build/components/typewriter/index.js.map +1 -1
  544. package/build/components/ungroup-button/index.native.js.map +1 -1
  545. package/build/components/unit-control/index.js.map +1 -1
  546. package/build/components/unsupported-block-details/index.native.js.map +1 -1
  547. package/build/components/url-input/button.js.map +1 -1
  548. package/build/components/url-input/index.js.map +1 -1
  549. package/build/components/url-input/index.native.js.map +1 -1
  550. package/build/components/url-popover/image-url-input-ui.js +50 -36
  551. package/build/components/url-popover/image-url-input-ui.js.map +1 -1
  552. package/build/components/url-popover/index.js.map +1 -1
  553. package/build/components/url-popover/link-editor.js.map +1 -1
  554. package/build/components/url-popover/link-viewer-url.js.map +1 -1
  555. package/build/components/url-popover/link-viewer.js.map +1 -1
  556. package/build/components/use-block-commands/index.js +20 -2
  557. package/build/components/use-block-commands/index.js.map +1 -1
  558. package/build/components/use-block-display-information/index.js +4 -6
  559. package/build/components/use-block-display-information/index.js.map +1 -1
  560. package/build/components/use-block-drop-zone/index.js.map +1 -1
  561. package/build/components/use-block-drop-zone/index.native.js.map +1 -1
  562. package/build/components/use-flash-editable-blocks/index.js.map +1 -1
  563. package/build/components/use-moving-animation/index.js.map +1 -1
  564. package/build/components/use-on-block-drop/index.js.map +1 -1
  565. package/build/components/use-on-block-drop/index.native.js.map +1 -1
  566. package/build/components/use-on-block-drop/types.js.map +1 -1
  567. package/build/components/use-paste-styles/index.js +1 -0
  568. package/build/components/use-paste-styles/index.js.map +1 -1
  569. package/build/components/use-resize-canvas/index.js.map +1 -1
  570. package/build/components/use-settings/index.js.map +1 -1
  571. package/build/components/use-unsupported-block-editor/index.native.js.map +1 -1
  572. package/build/components/video-player/gridicon-play.native.js.map +1 -1
  573. package/build/components/video-player/index.native.js.map +1 -1
  574. package/build/components/warning/index.js.map +1 -1
  575. package/build/components/warning/index.native.js.map +1 -1
  576. package/build/components/writing-flow/index.js.map +1 -1
  577. package/build/components/writing-flow/use-arrow-nav.js.map +1 -1
  578. package/build/components/writing-flow/use-click-selection.js.map +1 -1
  579. package/build/components/writing-flow/use-clipboard-handler.js.map +1 -1
  580. package/build/components/writing-flow/use-drag-selection.js.map +1 -1
  581. package/build/components/writing-flow/use-input.js.map +1 -1
  582. package/build/components/writing-flow/use-multi-selection.js.map +1 -1
  583. package/build/components/writing-flow/use-select-all.js.map +1 -1
  584. package/build/components/writing-flow/use-selection-observer.js.map +1 -1
  585. package/build/components/writing-flow/use-tab-nav.js.map +1 -1
  586. package/build/components/writing-flow/utils.js.map +1 -1
  587. package/build/components/writing-mode-control/index.js.map +1 -1
  588. package/build/elements/index.js.map +1 -1
  589. package/build/hooks/align.js.map +1 -1
  590. package/build/hooks/align.native.js +1 -1
  591. package/build/hooks/align.native.js.map +1 -1
  592. package/build/hooks/anchor.js +2 -2
  593. package/build/hooks/anchor.js.map +1 -1
  594. package/build/hooks/aria-label.js.map +1 -1
  595. package/build/hooks/background.js +70 -424
  596. package/build/hooks/background.js.map +1 -1
  597. package/build/hooks/block-hooks.js.map +1 -1
  598. package/build/hooks/block-renaming.js +0 -37
  599. package/build/hooks/block-renaming.js.map +1 -1
  600. package/build/hooks/border.js.map +1 -1
  601. package/build/hooks/color.js +1 -1
  602. package/build/hooks/color.js.map +1 -1
  603. package/build/hooks/compat.js.map +1 -1
  604. package/build/hooks/content-lock-ui.js +5 -5
  605. package/build/hooks/content-lock-ui.js.map +1 -1
  606. package/build/hooks/contrast-checker.js.map +1 -1
  607. package/build/hooks/custom-class-name.js.map +1 -1
  608. package/build/hooks/custom-class-name.native.js.map +1 -1
  609. package/build/hooks/dimensions.js.map +1 -1
  610. package/build/hooks/duotone.js.map +1 -1
  611. package/build/hooks/font-family.js.map +1 -1
  612. package/build/hooks/font-size.js.map +1 -1
  613. package/build/hooks/gap.js.map +1 -1
  614. package/build/hooks/generated-class-name.js.map +1 -1
  615. package/build/hooks/index.js +13 -5
  616. package/build/hooks/index.js.map +1 -1
  617. package/build/hooks/index.native.js.map +1 -1
  618. package/build/hooks/layout-child.js.map +1 -1
  619. package/build/hooks/layout.js +38 -19
  620. package/build/hooks/layout.js.map +1 -1
  621. package/build/hooks/layout.native.js.map +1 -1
  622. package/build/hooks/line-height.js.map +1 -1
  623. package/build/hooks/lock.js.map +1 -1
  624. package/build/hooks/metadata.js.map +1 -1
  625. package/build/hooks/position.js.map +1 -1
  626. package/build/hooks/settings.js.map +1 -1
  627. package/build/hooks/spacing-visualizer.js.map +1 -1
  628. package/build/hooks/style.js.map +1 -1
  629. package/build/hooks/supports.js +27 -4
  630. package/build/hooks/supports.js.map +1 -1
  631. package/build/hooks/text-align.js +156 -0
  632. package/build/hooks/text-align.js.map +1 -0
  633. package/build/hooks/typography.js +3 -2
  634. package/build/hooks/typography.js.map +1 -1
  635. package/build/hooks/typography.native.js.map +1 -1
  636. package/build/hooks/use-bindings-attributes.js +66 -129
  637. package/build/hooks/use-bindings-attributes.js.map +1 -1
  638. package/build/hooks/use-border-props.js.map +1 -1
  639. package/build/hooks/use-cached-truthy.js.map +1 -1
  640. package/build/hooks/use-color-props.js.map +1 -1
  641. package/build/hooks/use-editor-wrapper-styles.native.js.map +1 -1
  642. package/build/hooks/use-shadow-props.js.map +1 -1
  643. package/build/hooks/use-spacing-props.js.map +1 -1
  644. package/build/hooks/use-typography-props.js +2 -1
  645. package/build/hooks/use-typography-props.js.map +1 -1
  646. package/build/hooks/use-zoom-out.js +54 -0
  647. package/build/hooks/use-zoom-out.js.map +1 -0
  648. package/build/hooks/utils.js +29 -5
  649. package/build/hooks/utils.js.map +1 -1
  650. package/build/index.js +7 -0
  651. package/build/index.js.map +1 -1
  652. package/build/index.native.js.map +1 -1
  653. package/build/layouts/constrained.js.map +1 -1
  654. package/build/layouts/definitions.js +8 -6
  655. package/build/layouts/definitions.js.map +1 -1
  656. package/build/layouts/flex.js.map +1 -1
  657. package/build/layouts/flow.js.map +1 -1
  658. package/build/layouts/grid.js +52 -9
  659. package/build/layouts/grid.js.map +1 -1
  660. package/build/layouts/index.js.map +1 -1
  661. package/build/layouts/utils.js.map +1 -1
  662. package/build/lock-unlock.js.map +1 -1
  663. package/build/private-apis.js +7 -2
  664. package/build/private-apis.js.map +1 -1
  665. package/build/private-apis.native.js +4 -2
  666. package/build/private-apis.native.js.map +1 -1
  667. package/build/store/actions.js +18 -4
  668. package/build/store/actions.js.map +1 -1
  669. package/build/store/array.js.map +1 -1
  670. package/build/store/constants.js.map +1 -1
  671. package/build/store/defaults.js.map +1 -1
  672. package/build/store/defaults.native.js.map +1 -1
  673. package/build/store/get-block-settings.js.map +1 -1
  674. package/build/store/index.js +1 -1
  675. package/build/store/index.js.map +1 -1
  676. package/build/store/private-actions.js +18 -2
  677. package/build/store/private-actions.js.map +1 -1
  678. package/build/store/private-keys.js +2 -1
  679. package/build/store/private-keys.js.map +1 -1
  680. package/build/store/private-selectors.js +113 -36
  681. package/build/store/private-selectors.js.map +1 -1
  682. package/build/store/reducer.js +22 -0
  683. package/build/store/reducer.js.map +1 -1
  684. package/build/store/selectors.js +152 -109
  685. package/build/store/selectors.js.map +1 -1
  686. package/build/store/undo-ignore.js.map +1 -1
  687. package/build/store/utils.js +7 -1
  688. package/build/store/utils.js.map +1 -1
  689. package/build/utils/dom.js.map +1 -1
  690. package/build/utils/get-px-from-css-unit.js.map +1 -1
  691. package/build/utils/index.js.map +1 -1
  692. package/build/utils/math.js.map +1 -1
  693. package/build/utils/object.js.map +1 -1
  694. package/build/utils/order-inserter-block-items.js.map +1 -1
  695. package/build/utils/pasting.js.map +1 -1
  696. package/build/utils/selection.js.map +1 -1
  697. package/build/utils/sorting.js.map +1 -1
  698. package/build/utils/transform-styles/index.js +3 -2
  699. package/build/utils/transform-styles/index.js.map +1 -1
  700. package/build/utils/use-notify-copy.js.map +1 -1
  701. package/build-module/autocompleters/block.js.map +1 -1
  702. package/build-module/autocompleters/link.js.map +1 -1
  703. package/build-module/components/alignment-control/index.js.map +1 -1
  704. package/build-module/components/alignment-control/ui.js.map +1 -1
  705. package/build-module/components/autocomplete/index.js.map +1 -1
  706. package/build-module/components/block-actions/index.js.map +1 -1
  707. package/build-module/components/block-alignment-control/constants.js.map +1 -1
  708. package/build-module/components/block-alignment-control/index.js.map +1 -1
  709. package/build-module/components/block-alignment-control/ui.js.map +1 -1
  710. package/build-module/components/block-alignment-control/ui.native.js.map +1 -1
  711. package/build-module/components/block-alignment-control/use-available-alignments.js.map +1 -1
  712. package/build-module/components/block-alignment-matrix-control/index.js.map +1 -1
  713. package/build-module/components/block-bindings-toolbar-indicator/index.js.map +1 -1
  714. package/build-module/components/block-breadcrumb/index.js.map +1 -1
  715. package/build-module/components/block-canvas/index.js.map +1 -1
  716. package/build-module/components/block-caption/index.native.js.map +1 -1
  717. package/build-module/components/block-card/index.js.map +1 -1
  718. package/build-module/components/block-compare/block-view.js.map +1 -1
  719. package/build-module/components/block-compare/index.js.map +1 -1
  720. package/build-module/components/block-content-overlay/index.js.map +1 -1
  721. package/build-module/components/block-context/index.js.map +1 -1
  722. package/build-module/components/block-controls/fill.js.map +1 -1
  723. package/build-module/components/block-controls/groups.js.map +1 -1
  724. package/build-module/components/block-controls/hook.js.map +1 -1
  725. package/build-module/components/block-controls/index.js.map +1 -1
  726. package/build-module/components/block-controls/slot.js.map +1 -1
  727. package/build-module/components/block-controls/slot.native.js.map +1 -1
  728. package/build-module/components/block-controls/use-has-block-controls.js.map +1 -1
  729. package/build-module/components/block-draggable/draggable-chip.js.map +1 -1
  730. package/build-module/components/block-draggable/draggable-chip.native.js.map +1 -1
  731. package/build-module/components/block-draggable/dropping-insertion-point.native.js.map +1 -1
  732. package/build-module/components/block-draggable/index.js.map +1 -1
  733. package/build-module/components/block-draggable/index.native.js.map +1 -1
  734. package/build-module/components/block-draggable/use-scroll-when-dragging.js.map +1 -1
  735. package/build-module/components/block-draggable/use-scroll-when-dragging.native.js.map +1 -1
  736. package/build-module/components/block-edit/context.js +1 -0
  737. package/build-module/components/block-edit/context.js.map +1 -1
  738. package/build-module/components/block-edit/edit.js.map +1 -1
  739. package/build-module/components/block-edit/edit.native.js.map +1 -1
  740. package/build-module/components/block-edit/index.js +5 -3
  741. package/build-module/components/block-edit/index.js.map +1 -1
  742. package/build-module/components/block-edit-visually-button/index.js.map +1 -1
  743. package/build-module/components/block-editing-mode/index.js.map +1 -1
  744. package/build-module/components/block-full-height-alignment-control/index.js.map +1 -1
  745. package/build-module/components/block-heading-level-dropdown/heading-level-icon.js.map +1 -1
  746. package/build-module/components/block-heading-level-dropdown/index.js.map +1 -1
  747. package/build-module/components/block-heading-level-dropdown/index.native.js.map +1 -1
  748. package/build-module/components/block-icon/index.js.map +1 -1
  749. package/build-module/components/block-icon/index.native.js.map +1 -1
  750. package/build-module/components/block-info-slot-fill/index.js.map +1 -1
  751. package/build-module/components/block-inspector/index.js +5 -4
  752. package/build-module/components/block-inspector/index.js.map +1 -1
  753. package/build-module/components/block-inspector/useBlockInspectorAnimationSettings.js.map +1 -1
  754. package/build-module/components/block-list/block-crash-boundary.js.map +1 -1
  755. package/build-module/components/block-list/block-crash-boundary.native.js.map +1 -1
  756. package/build-module/components/block-list/block-crash-warning.js.map +1 -1
  757. package/build-module/components/block-list/block-crash-warning.native.js.map +1 -1
  758. package/build-module/components/block-list/block-html.js.map +1 -1
  759. package/build-module/components/block-list/block-invalid-warning.js.map +1 -1
  760. package/build-module/components/block-list/block-invalid-warning.native.js.map +1 -1
  761. package/build-module/components/block-list/block-list-context.native.js.map +1 -1
  762. package/build-module/components/block-list/block-list-item-cell.native.js.map +1 -1
  763. package/build-module/components/block-list/block-list-item.native.js.map +1 -1
  764. package/build-module/components/block-list/block-outline.native.js.map +1 -1
  765. package/build-module/components/block-list/block-selection-button.native.js.map +1 -1
  766. package/build-module/components/block-list/block.js +55 -29
  767. package/build-module/components/block-list/block.js.map +1 -1
  768. package/build-module/components/block-list/block.native.js +2 -2
  769. package/build-module/components/block-list/block.native.js.map +1 -1
  770. package/build-module/components/block-list/grid-item.native.js.map +1 -1
  771. package/build-module/components/block-list/index.js +16 -5
  772. package/build-module/components/block-list/index.js.map +1 -1
  773. package/build-module/components/block-list/index.native.js.map +1 -1
  774. package/build-module/components/block-list/insertion-point.native.js.map +1 -1
  775. package/build-module/components/block-list/layout.js.map +1 -1
  776. package/build-module/components/block-list/private-block-context.js.map +1 -1
  777. package/build-module/components/block-list/subdirectory-icon.js.map +1 -1
  778. package/build-module/components/block-list/use-block-props/index.js +2 -1
  779. package/build-module/components/block-list/use-block-props/index.js.map +1 -1
  780. package/build-module/components/block-list/use-block-props/index.native.js.map +1 -1
  781. package/build-module/components/block-list/use-block-props/use-block-moving-mode-class-names.js.map +1 -1
  782. package/build-module/components/block-list/use-block-props/use-block-refs.js.map +1 -1
  783. package/build-module/components/block-list/use-block-props/use-focus-first-element.js +3 -2
  784. package/build-module/components/block-list/use-block-props/use-focus-first-element.js.map +1 -1
  785. package/build-module/components/block-list/use-block-props/use-focus-handler.js.map +1 -1
  786. package/build-module/components/block-list/use-block-props/use-intersection-observer.js.map +1 -1
  787. package/build-module/components/block-list/use-block-props/use-is-hovered.js.map +1 -1
  788. package/build-module/components/block-list/use-block-props/use-nav-mode-exit.js.map +1 -1
  789. package/build-module/components/block-list/use-block-props/use-selected-block-event-handlers.js.map +1 -1
  790. package/build-module/components/block-list/use-in-between-inserter.js.map +1 -1
  791. package/build-module/components/block-list/use-scroll-upon-insertion.native.js.map +1 -1
  792. package/build-module/components/block-list-appender/index.js.map +1 -1
  793. package/build-module/components/block-list-appender/index.native.js.map +1 -1
  794. package/build-module/components/block-lock/index.js.map +1 -1
  795. package/build-module/components/block-lock/menu-item.js.map +1 -1
  796. package/build-module/components/block-lock/modal.js.map +1 -1
  797. package/build-module/components/block-lock/toolbar.js.map +1 -1
  798. package/build-module/components/block-lock/use-block-lock.js.map +1 -1
  799. package/build-module/components/block-media-update-progress/index.native.js.map +1 -1
  800. package/build-module/components/block-mover/button.js +4 -1
  801. package/build-module/components/block-mover/button.js.map +1 -1
  802. package/build-module/components/block-mover/index.js +5 -1
  803. package/build-module/components/block-mover/index.js.map +1 -1
  804. package/build-module/components/block-mover/index.native.js.map +1 -1
  805. package/build-module/components/block-mover/mover-description.js.map +1 -1
  806. package/build-module/components/block-mover/mover-description.native.js.map +1 -1
  807. package/build-module/components/block-navigation/dropdown.js.map +1 -1
  808. package/build-module/components/block-parent-selector/index.js.map +1 -1
  809. package/build-module/components/block-pattern-setup/constants.js.map +1 -1
  810. package/build-module/components/block-pattern-setup/index.js.map +1 -1
  811. package/build-module/components/block-pattern-setup/setup-toolbar.js.map +1 -1
  812. package/build-module/components/block-pattern-setup/use-patterns-setup.js.map +1 -1
  813. package/build-module/components/block-patterns-list/index.js +4 -1
  814. package/build-module/components/block-patterns-list/index.js.map +1 -1
  815. package/build-module/components/block-patterns-paging/index.js +8 -4
  816. package/build-module/components/block-patterns-paging/index.js.map +1 -1
  817. package/build-module/components/block-popover/cover.js.map +1 -1
  818. package/build-module/components/block-popover/drop-zone.js.map +1 -1
  819. package/build-module/components/block-popover/inbetween.js.map +1 -1
  820. package/build-module/components/block-popover/index.js.map +1 -1
  821. package/build-module/components/block-popover/use-popover-scroll.js.map +1 -1
  822. package/build-module/components/block-preview/auto.js.map +1 -1
  823. package/build-module/components/block-preview/index.js.map +1 -1
  824. package/build-module/components/block-quick-navigation/index.js.map +1 -1
  825. package/build-module/components/block-removal-warning-modal/index.js.map +1 -1
  826. package/build-module/components/block-rename/index.js.map +1 -1
  827. package/build-module/components/block-rename/is-empty-string.js.map +1 -1
  828. package/build-module/components/block-rename/modal.js +14 -10
  829. package/build-module/components/block-rename/modal.js.map +1 -1
  830. package/build-module/components/block-rename/rename-control.js +3 -1
  831. package/build-module/components/block-rename/rename-control.js.map +1 -1
  832. package/build-module/components/block-rename/use-block-rename.js.map +1 -1
  833. package/build-module/components/block-selection-clearer/index.js.map +1 -1
  834. package/build-module/components/block-settings/button.native.js.map +1 -1
  835. package/build-module/components/block-settings/container.native.js.map +1 -1
  836. package/build-module/components/block-settings/index.native.js.map +1 -1
  837. package/build-module/components/block-settings-menu/block-html-convert-button.js.map +1 -1
  838. package/build-module/components/block-settings-menu/block-mode-toggle.js.map +1 -1
  839. package/build-module/components/block-settings-menu/block-parent-selector-menu-item.js.map +1 -1
  840. package/build-module/components/block-settings-menu/block-settings-dropdown.js +7 -3
  841. package/build-module/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
  842. package/build-module/components/block-settings-menu/block-settings-menu-first-item.js.map +1 -1
  843. package/build-module/components/block-settings-menu/index.js.map +1 -1
  844. package/build-module/components/block-settings-menu-controls/index.js.map +1 -1
  845. package/build-module/components/block-styles/index.js.map +1 -1
  846. package/build-module/components/block-styles/index.native.js.map +1 -1
  847. package/build-module/components/block-styles/menu-items.js.map +1 -1
  848. package/build-module/components/block-styles/preview-panel.js.map +1 -1
  849. package/build-module/components/block-styles/preview.native.js.map +1 -1
  850. package/build-module/components/block-styles/use-styles-for-block.js.map +1 -1
  851. package/build-module/components/block-styles/utils.js.map +1 -1
  852. package/build-module/components/block-switcher/block-styles-menu.js.map +1 -1
  853. package/build-module/components/block-switcher/block-transformations-menu.js.map +1 -1
  854. package/build-module/components/block-switcher/block-transformations-menu.native.js.map +1 -1
  855. package/build-module/components/block-switcher/block-variation-transformations.js.map +1 -1
  856. package/build-module/components/block-switcher/index.js +4 -3
  857. package/build-module/components/block-switcher/index.js.map +1 -1
  858. package/build-module/components/block-switcher/pattern-transformations-menu.js.map +1 -1
  859. package/build-module/components/block-switcher/preview-block-popover.js.map +1 -1
  860. package/build-module/components/block-switcher/use-transformed-patterns.js.map +1 -1
  861. package/build-module/components/block-switcher/utils.js.map +1 -1
  862. package/build-module/components/block-title/index.js.map +1 -1
  863. package/build-module/components/block-title/use-block-display-title.js.map +1 -1
  864. package/build-module/components/block-toolbar/block-name-context.js.map +1 -1
  865. package/build-module/components/block-toolbar/block-toolbar-last-item.js.map +1 -1
  866. package/build-module/components/block-toolbar/block-toolbar-menu.native.js.map +1 -1
  867. package/build-module/components/block-toolbar/index.js +5 -4
  868. package/build-module/components/block-toolbar/index.js.map +1 -1
  869. package/build-module/components/block-toolbar/index.native.js.map +1 -1
  870. package/build-module/components/block-toolbar/shuffle.js +18 -9
  871. package/build-module/components/block-toolbar/shuffle.js.map +1 -1
  872. package/build-module/components/block-toolbar/use-has-block-toolbar.js +6 -3
  873. package/build-module/components/block-toolbar/use-has-block-toolbar.js.map +1 -1
  874. package/build-module/components/block-toolbar/utils.js.map +1 -1
  875. package/build-module/components/block-tools/block-selection-button.js +58 -14
  876. package/build-module/components/block-tools/block-selection-button.js.map +1 -1
  877. package/build-module/components/block-tools/block-toolbar-breadcrumb.js.map +1 -1
  878. package/build-module/components/block-tools/block-toolbar-popover.js.map +1 -1
  879. package/build-module/components/block-tools/empty-block-inserter.js.map +1 -1
  880. package/build-module/components/block-tools/index.js +14 -2
  881. package/build-module/components/block-tools/index.js.map +1 -1
  882. package/build-module/components/block-tools/insertion-point.js.map +1 -1
  883. package/build-module/components/block-tools/use-block-toolbar-popover-props.js.map +1 -1
  884. package/build-module/components/block-tools/use-selected-block-tool-props.js.map +1 -1
  885. package/build-module/components/block-tools/use-show-block-tools.js +7 -13
  886. package/build-module/components/block-tools/use-show-block-tools.js.map +1 -1
  887. package/build-module/components/block-tools/zoom-out-mode-inserters.js.map +1 -1
  888. package/build-module/components/block-types-list/index.js.map +1 -1
  889. package/build-module/components/block-types-list/index.native.js.map +1 -1
  890. package/build-module/components/block-variation-picker/index.js.map +1 -1
  891. package/build-module/components/block-variation-picker/index.native.js.map +1 -1
  892. package/build-module/components/block-variation-transforms/index.js +4 -1
  893. package/build-module/components/block-variation-transforms/index.js.map +1 -1
  894. package/build-module/components/block-vertical-alignment-control/icons.js.map +1 -1
  895. package/build-module/components/block-vertical-alignment-control/index.js.map +1 -1
  896. package/build-module/components/block-vertical-alignment-control/ui.js.map +1 -1
  897. package/build-module/components/border-radius-control/all-input-control.js.map +1 -1
  898. package/build-module/components/border-radius-control/index.js.map +1 -1
  899. package/build-module/components/border-radius-control/input-controls.js.map +1 -1
  900. package/build-module/components/border-radius-control/linked-button.js.map +1 -1
  901. package/build-module/components/border-radius-control/utils.js.map +1 -1
  902. package/build-module/components/button-block-appender/index.js.map +1 -1
  903. package/build-module/components/button-block-appender/index.native.js +11 -1
  904. package/build-module/components/button-block-appender/index.native.js.map +1 -1
  905. package/build-module/components/caption/index.native.js.map +1 -1
  906. package/build-module/components/child-layout-control/index.js.map +1 -1
  907. package/build-module/components/color-palette/control.js.map +1 -1
  908. package/build-module/components/color-palette/index.js.map +1 -1
  909. package/build-module/components/color-palette/with-color-context.js.map +1 -1
  910. package/build-module/components/color-style-selector/index.js.map +1 -1
  911. package/build-module/components/colors/index.js.map +1 -1
  912. package/build-module/components/colors/utils.js.map +1 -1
  913. package/build-module/components/colors/with-colors.js.map +1 -1
  914. package/build-module/components/colors-gradients/control.js.map +1 -1
  915. package/build-module/components/colors-gradients/dropdown.js.map +1 -1
  916. package/build-module/components/colors-gradients/panel-color-gradient-settings.js.map +1 -1
  917. package/build-module/components/colors-gradients/panel-color-gradient-settings.native.js.map +1 -1
  918. package/build-module/components/colors-gradients/use-multiple-origin-colors-and-gradients.js.map +1 -1
  919. package/build-module/components/contrast-checker/index.js.map +1 -1
  920. package/build-module/components/contrast-checker/index.native.js.map +1 -1
  921. package/build-module/components/convert-to-group-buttons/index.js.map +1 -1
  922. package/build-module/components/convert-to-group-buttons/index.native.js.map +1 -1
  923. package/build-module/components/convert-to-group-buttons/toolbar.js.map +1 -1
  924. package/build-module/components/convert-to-group-buttons/use-convert-to-group-button-props.js.map +1 -1
  925. package/build-module/components/copy-handler/index.js.map +1 -1
  926. package/build-module/components/date-format-picker/index.js.map +1 -1
  927. package/build-module/components/default-block-appender/index.js.map +1 -1
  928. package/build-module/components/default-block-appender/index.native.js.map +1 -1
  929. package/build-module/components/dimensions-tool/aspect-ratio-tool.js.map +1 -1
  930. package/build-module/components/dimensions-tool/index.js.map +1 -1
  931. package/build-module/components/dimensions-tool/scale-tool.js.map +1 -1
  932. package/build-module/components/dimensions-tool/width-height-tool.js.map +1 -1
  933. package/build-module/components/duotone/utils.js.map +1 -1
  934. package/build-module/components/duotone-control/index.js.map +1 -1
  935. package/build-module/components/editable-text/index.js.map +1 -1
  936. package/build-module/components/editor-styles/index.js +3 -2
  937. package/build-module/components/editor-styles/index.js.map +1 -1
  938. package/build-module/components/floating-toolbar/index.native.js.map +1 -1
  939. package/build-module/components/floating-toolbar/nav-up-icon.js.map +1 -1
  940. package/build-module/components/font-appearance-control/index.js.map +1 -1
  941. package/build-module/components/font-family/index.js.map +1 -1
  942. package/build-module/components/font-sizes/fluid-utils.js.map +1 -1
  943. package/build-module/components/font-sizes/font-size-picker.js.map +1 -1
  944. package/build-module/components/font-sizes/index.js.map +1 -1
  945. package/build-module/components/font-sizes/index.native.js.map +1 -1
  946. package/build-module/components/font-sizes/utils.js.map +1 -1
  947. package/build-module/components/font-sizes/with-font-sizes.js.map +1 -1
  948. package/build-module/components/global-styles/advanced-panel.js +9 -2
  949. package/build-module/components/global-styles/advanced-panel.js.map +1 -1
  950. package/build-module/components/global-styles/background-panel.js +433 -0
  951. package/build-module/components/global-styles/background-panel.js.map +1 -0
  952. package/build-module/components/global-styles/border-panel.js.map +1 -1
  953. package/build-module/components/global-styles/color-panel.js +2 -1
  954. package/build-module/components/global-styles/color-panel.js.map +1 -1
  955. package/build-module/components/global-styles/color-panel.native.js.map +1 -1
  956. package/build-module/components/global-styles/context.js.map +1 -1
  957. package/build-module/components/global-styles/dimensions-panel.js.map +1 -1
  958. package/build-module/components/global-styles/filters-panel.js.map +1 -1
  959. package/build-module/components/global-styles/get-block-css-selector.js.map +1 -1
  960. package/build-module/components/global-styles/get-global-styles-changes.js +3 -0
  961. package/build-module/components/global-styles/get-global-styles-changes.js.map +1 -1
  962. package/build-module/components/global-styles/hooks.js +1 -1
  963. package/build-module/components/global-styles/hooks.js.map +1 -1
  964. package/build-module/components/global-styles/image-settings-panel.js.map +1 -1
  965. package/build-module/components/global-styles/index.js +1 -0
  966. package/build-module/components/global-styles/index.js.map +1 -1
  967. package/build-module/components/global-styles/shadow-panel-components.js.map +1 -1
  968. package/build-module/components/global-styles/typography-panel.js.map +1 -1
  969. package/build-module/components/global-styles/typography-utils.js.map +1 -1
  970. package/build-module/components/global-styles/use-global-styles-output.js +20 -19
  971. package/build-module/components/global-styles/use-global-styles-output.js.map +1 -1
  972. package/build-module/components/global-styles/utils.js +1 -0
  973. package/build-module/components/global-styles/utils.js.map +1 -1
  974. package/build-module/components/gradients/index.js.map +1 -1
  975. package/build-module/components/gradients/index.native.js.map +1 -1
  976. package/build-module/components/gradients/use-gradient.js.map +1 -1
  977. package/build-module/components/gradients/with-gradient.js.map +1 -1
  978. package/build-module/components/grid-visualizer/grid-item-resizer.js.map +1 -1
  979. package/build-module/components/grid-visualizer/grid-visualizer.js.map +1 -1
  980. package/build-module/components/grid-visualizer/index.js.map +1 -1
  981. package/build-module/components/grid-visualizer/utils.js.map +1 -1
  982. package/build-module/components/height-control/index.js.map +1 -1
  983. package/build-module/components/iframe/get-compatibility-styles.js.map +1 -1
  984. package/build-module/components/iframe/index.js +14 -10
  985. package/build-module/components/iframe/index.js.map +1 -1
  986. package/build-module/components/image-editor/aspect-ratio-dropdown.js.map +1 -1
  987. package/build-module/components/image-editor/constants.js.map +1 -1
  988. package/build-module/components/image-editor/context.js.map +1 -1
  989. package/build-module/components/image-editor/cropper.js +7 -3
  990. package/build-module/components/image-editor/cropper.js.map +1 -1
  991. package/build-module/components/image-editor/form-controls.js.map +1 -1
  992. package/build-module/components/image-editor/index.js +0 -2
  993. package/build-module/components/image-editor/index.js.map +1 -1
  994. package/build-module/components/image-editor/rotation-button.js.map +1 -1
  995. package/build-module/components/image-editor/use-save-image.js.map +1 -1
  996. package/build-module/components/image-editor/use-transform-image.js.map +1 -1
  997. package/build-module/components/image-editor/zoom-dropdown.js.map +1 -1
  998. package/build-module/components/image-link-destinations/index.native.js.map +1 -1
  999. package/build-module/components/image-size-control/index.js.map +1 -1
  1000. package/build-module/components/image-size-control/use-dimension-handler.js.map +1 -1
  1001. package/build-module/components/index.js.map +1 -1
  1002. package/build-module/components/index.native.js.map +1 -1
  1003. package/build-module/components/inner-blocks/button-block-appender.js.map +1 -1
  1004. package/build-module/components/inner-blocks/constants.native.js.map +1 -1
  1005. package/build-module/components/inner-blocks/default-block-appender.js.map +1 -1
  1006. package/build-module/components/inner-blocks/index.js.map +1 -1
  1007. package/build-module/components/inner-blocks/index.native.js.map +1 -1
  1008. package/build-module/components/inner-blocks/use-block-context.js.map +1 -1
  1009. package/build-module/components/inner-blocks/use-inner-block-template-sync.js.map +1 -1
  1010. package/build-module/components/inner-blocks/use-nested-settings-update.js.map +1 -1
  1011. package/build-module/components/inner-blocks/warning-max-depth-exceeded.native.js.map +1 -1
  1012. package/build-module/components/inner-blocks/with-client-id.js.map +1 -1
  1013. package/build-module/components/inserter/block-patterns-explorer/index.js.map +1 -1
  1014. package/build-module/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.js.map +1 -1
  1015. package/build-module/components/inserter/block-patterns-explorer/pattern-list.js.map +1 -1
  1016. package/build-module/components/inserter/block-patterns-tab/index.js +32 -19
  1017. package/build-module/components/inserter/block-patterns-tab/index.js.map +1 -1
  1018. package/build-module/components/inserter/block-patterns-tab/pattern-category-preview-panel.js +2 -19
  1019. package/build-module/components/inserter/block-patterns-tab/pattern-category-preview-panel.js.map +1 -1
  1020. package/build-module/components/inserter/block-patterns-tab/pattern-category-previews.js +2 -4
  1021. package/build-module/components/inserter/block-patterns-tab/pattern-category-previews.js.map +1 -1
  1022. package/build-module/components/inserter/block-patterns-tab/patterns-filter.js.map +1 -1
  1023. package/build-module/components/inserter/block-patterns-tab/use-pattern-categories.js.map +1 -1
  1024. package/build-module/components/inserter/block-patterns-tab/utils.js.map +1 -1
  1025. package/build-module/components/inserter/block-types-tab.js.map +1 -1
  1026. package/build-module/components/inserter/block-types-tab.native.js.map +1 -1
  1027. package/build-module/components/inserter/hooks/use-block-type-impressions.native.js.map +1 -1
  1028. package/build-module/components/inserter/hooks/use-block-types-state.js.map +1 -1
  1029. package/build-module/components/inserter/hooks/use-clipboard-block.native.js.map +1 -1
  1030. package/build-module/components/inserter/hooks/use-insertion-point.js.map +1 -1
  1031. package/build-module/components/inserter/hooks/use-patterns-paging.js.map +1 -1
  1032. package/build-module/components/inserter/hooks/use-patterns-state.js.map +1 -1
  1033. package/build-module/components/inserter/index.js.map +1 -1
  1034. package/build-module/components/inserter/index.native.js.map +1 -1
  1035. package/build-module/components/inserter/library.js +2 -0
  1036. package/build-module/components/inserter/library.js.map +1 -1
  1037. package/build-module/components/inserter/media-tab/hooks.js.map +1 -1
  1038. package/build-module/components/inserter/media-tab/index.js.map +1 -1
  1039. package/build-module/components/inserter/media-tab/media-list.js.map +1 -1
  1040. package/build-module/components/inserter/media-tab/media-panel.js.map +1 -1
  1041. package/build-module/components/inserter/media-tab/media-preview.js.map +1 -1
  1042. package/build-module/components/inserter/media-tab/media-tab.js.map +1 -1
  1043. package/build-module/components/inserter/media-tab/utils.js.map +1 -1
  1044. package/build-module/components/inserter/menu.js +25 -13
  1045. package/build-module/components/inserter/menu.js.map +1 -1
  1046. package/build-module/components/inserter/menu.native.js.map +1 -1
  1047. package/build-module/components/inserter/mobile-tab-navigation.js.map +1 -1
  1048. package/build-module/components/inserter/no-results.js.map +1 -1
  1049. package/build-module/components/inserter/no-results.native.js.map +1 -1
  1050. package/build-module/components/inserter/panel.js.map +1 -1
  1051. package/build-module/components/inserter/preview-panel.js.map +1 -1
  1052. package/build-module/components/inserter/quick-inserter.js.map +1 -1
  1053. package/build-module/components/inserter/reusable-block-rename-hint.js.map +1 -1
  1054. package/build-module/components/inserter/reusable-blocks-tab.native.js.map +1 -1
  1055. package/build-module/components/inserter/search-items.js +33 -15
  1056. package/build-module/components/inserter/search-items.js.map +1 -1
  1057. package/build-module/components/inserter/search-results.js.map +1 -1
  1058. package/build-module/components/inserter/search-results.native.js.map +1 -1
  1059. package/build-module/components/inserter/tabs.js +7 -3
  1060. package/build-module/components/inserter/tabs.js.map +1 -1
  1061. package/build-module/components/inserter/tabs.native.js.map +1 -1
  1062. package/build-module/components/inserter/tips.js.map +1 -1
  1063. package/build-module/components/inserter/utils.native.js.map +1 -1
  1064. package/build-module/components/inserter-button/index.native.js.map +1 -1
  1065. package/build-module/components/inserter-button/sparkles.js.map +1 -1
  1066. package/build-module/components/inserter-draggable-blocks/index.js.map +1 -1
  1067. package/build-module/components/inserter-list-item/index.js.map +1 -1
  1068. package/build-module/components/inserter-listbox/context.js.map +1 -1
  1069. package/build-module/components/inserter-listbox/group.js.map +1 -1
  1070. package/build-module/components/inserter-listbox/index.js.map +1 -1
  1071. package/build-module/components/inserter-listbox/item.js.map +1 -1
  1072. package/build-module/components/inserter-listbox/row.js.map +1 -1
  1073. package/build-module/components/inserter-menu-extension/index.js.map +1 -1
  1074. package/build-module/components/inspector-controls/block-support-slot-container.js.map +1 -1
  1075. package/build-module/components/inspector-controls/block-support-tools-panel.js.map +1 -1
  1076. package/build-module/components/inspector-controls/fill.js.map +1 -1
  1077. package/build-module/components/inspector-controls/fill.native.js.map +1 -1
  1078. package/build-module/components/inspector-controls/groups.js.map +1 -1
  1079. package/build-module/components/inspector-controls/index.js.map +1 -1
  1080. package/build-module/components/inspector-controls/slot.js.map +1 -1
  1081. package/build-module/components/inspector-controls/slot.native.js.map +1 -1
  1082. package/build-module/components/inspector-controls-tabs/advanced-controls-panel.js.map +1 -1
  1083. package/build-module/components/inspector-controls-tabs/advanced-controls-panel.native.js.map +1 -1
  1084. package/build-module/components/inspector-controls-tabs/index.js.map +1 -1
  1085. package/build-module/components/inspector-controls-tabs/position-controls-panel.js.map +1 -1
  1086. package/build-module/components/inspector-controls-tabs/settings-tab-hint.js.map +1 -1
  1087. package/build-module/components/inspector-controls-tabs/settings-tab.js.map +1 -1
  1088. package/build-module/components/inspector-controls-tabs/styles-tab.js +1 -1
  1089. package/build-module/components/inspector-controls-tabs/styles-tab.js.map +1 -1
  1090. package/build-module/components/inspector-controls-tabs/use-inspector-controls-tabs.js.map +1 -1
  1091. package/build-module/components/inspector-controls-tabs/use-is-list-view-tab-disabled.js.map +1 -1
  1092. package/build-module/components/inspector-controls-tabs/utils.js.map +1 -1
  1093. package/build-module/components/inspector-popover-header/index.js.map +1 -1
  1094. package/build-module/components/justify-content-control/index.js.map +1 -1
  1095. package/build-module/components/justify-content-control/ui.js.map +1 -1
  1096. package/build-module/components/keyboard-shortcuts/index.js +11 -0
  1097. package/build-module/components/keyboard-shortcuts/index.js.map +1 -1
  1098. package/build-module/components/letter-spacing-control/index.js.map +1 -1
  1099. package/build-module/components/line-height-control/index.js.map +1 -1
  1100. package/build-module/components/line-height-control/index.native.js.map +1 -1
  1101. package/build-module/components/line-height-control/utils.js.map +1 -1
  1102. package/build-module/components/link-control/constants.js.map +1 -1
  1103. package/build-module/components/link-control/index.js.map +1 -1
  1104. package/build-module/components/link-control/is-url-like.js.map +1 -1
  1105. package/build-module/components/link-control/link-preview.js.map +1 -1
  1106. package/build-module/components/link-control/search-create-button.js.map +1 -1
  1107. package/build-module/components/link-control/search-input.js.map +1 -1
  1108. package/build-module/components/link-control/search-item.js.map +1 -1
  1109. package/build-module/components/link-control/search-results.js.map +1 -1
  1110. package/build-module/components/link-control/settings-drawer.js.map +1 -1
  1111. package/build-module/components/link-control/settings.js.map +1 -1
  1112. package/build-module/components/link-control/use-create-page.js.map +1 -1
  1113. package/build-module/components/link-control/use-internal-value.js.map +1 -1
  1114. package/build-module/components/link-control/use-rich-url-data.js.map +1 -1
  1115. package/build-module/components/link-control/use-search-handler.js.map +1 -1
  1116. package/build-module/components/link-control/viewer-slot.js.map +1 -1
  1117. package/build-module/components/list-view/appender.js.map +1 -1
  1118. package/build-module/components/list-view/aria-referenced-text.js.map +1 -1
  1119. package/build-module/components/list-view/block-contents.js.map +1 -1
  1120. package/build-module/components/list-view/block-select-button.js +45 -1
  1121. package/build-module/components/list-view/block-select-button.js.map +1 -1
  1122. package/build-module/components/list-view/block.js +1 -1
  1123. package/build-module/components/list-view/block.js.map +1 -1
  1124. package/build-module/components/list-view/branch.js.map +1 -1
  1125. package/build-module/components/list-view/context.js.map +1 -1
  1126. package/build-module/components/list-view/drop-indicator.js.map +1 -1
  1127. package/build-module/components/list-view/expander.js.map +1 -1
  1128. package/build-module/components/list-view/index.js +17 -2
  1129. package/build-module/components/list-view/index.js.map +1 -1
  1130. package/build-module/components/list-view/leaf.js.map +1 -1
  1131. package/build-module/components/list-view/use-block-selection.js.map +1 -1
  1132. package/build-module/components/list-view/use-clipboard-handler.js.map +1 -1
  1133. package/build-module/components/list-view/use-list-view-block-indexes.js.map +1 -1
  1134. package/build-module/components/list-view/use-list-view-client-ids.js.map +1 -1
  1135. package/build-module/components/list-view/use-list-view-collapse-items.js +40 -0
  1136. package/build-module/components/list-view/use-list-view-collapse-items.js.map +1 -0
  1137. package/build-module/components/list-view/use-list-view-drop-zone.js +5 -0
  1138. package/build-module/components/list-view/use-list-view-drop-zone.js.map +1 -1
  1139. package/build-module/components/list-view/use-list-view-expand-selected-item.js.map +1 -1
  1140. package/build-module/components/list-view/use-list-view-images.js.map +1 -1
  1141. package/build-module/components/list-view/use-list-view-scroll-into-view.js.map +1 -1
  1142. package/build-module/components/list-view/utils.js.map +1 -1
  1143. package/build-module/components/media-placeholder/index.js.map +1 -1
  1144. package/build-module/components/media-placeholder/index.native.js.map +1 -1
  1145. package/build-module/components/media-replace-flow/index.js.map +1 -1
  1146. package/build-module/components/media-replace-flow/index.native.js.map +1 -1
  1147. package/build-module/components/media-upload/check.js.map +1 -1
  1148. package/build-module/components/media-upload/constants.native.js.map +1 -1
  1149. package/build-module/components/media-upload/index.js.map +1 -1
  1150. package/build-module/components/media-upload/index.native.js.map +1 -1
  1151. package/build-module/components/media-upload-progress/constants.js.map +1 -1
  1152. package/build-module/components/media-upload-progress/index.native.js.map +1 -1
  1153. package/build-module/components/multi-selection-inspector/index.js.map +1 -1
  1154. package/build-module/components/navigable-toolbar/index.js.map +1 -1
  1155. package/build-module/components/observe-typing/index.js.map +1 -1
  1156. package/build-module/components/panel-color-settings/index.js.map +1 -1
  1157. package/build-module/components/plain-text/index.js.map +1 -1
  1158. package/build-module/components/plain-text/index.native.js.map +1 -1
  1159. package/build-module/components/preview-options/index.js.map +1 -1
  1160. package/build-module/components/provider/block-refs-provider.js.map +1 -1
  1161. package/build-module/components/provider/index.js.map +1 -1
  1162. package/build-module/components/provider/index.native.js.map +1 -1
  1163. package/build-module/components/provider/use-block-sync.js.map +1 -1
  1164. package/build-module/components/provider/with-registry-provider.js.map +1 -1
  1165. package/build-module/components/publish-date-time-picker/index.js.map +1 -1
  1166. package/build-module/components/recursion-provider/index.js +2 -2
  1167. package/build-module/components/recursion-provider/index.js.map +1 -1
  1168. package/build-module/components/resizable-box-popover/index.js.map +1 -1
  1169. package/build-module/components/resolution-tool/index.js.map +1 -1
  1170. package/build-module/components/responsive-block-control/index.js.map +1 -1
  1171. package/build-module/components/responsive-block-control/label.js.map +1 -1
  1172. package/build-module/components/rich-text/content.js +25 -19
  1173. package/build-module/components/rich-text/content.js.map +1 -1
  1174. package/build-module/components/rich-text/embed-handler-picker.native.js.map +1 -1
  1175. package/build-module/components/rich-text/file-paste-handler.native.js.map +1 -1
  1176. package/build-module/components/rich-text/format-edit.js.map +1 -1
  1177. package/build-module/components/rich-text/format-toolbar/index.js.map +1 -1
  1178. package/build-module/components/rich-text/format-toolbar/index.native.js.map +1 -1
  1179. package/build-module/components/rich-text/format-toolbar-container.js.map +1 -1
  1180. package/build-module/components/rich-text/format-toolbar-container.native.js.map +1 -1
  1181. package/build-module/components/rich-text/get-rich-text-values.js.map +1 -1
  1182. package/build-module/components/rich-text/index.js +57 -14
  1183. package/build-module/components/rich-text/index.js.map +1 -1
  1184. package/build-module/components/rich-text/index.native.js +19 -12
  1185. package/build-module/components/rich-text/index.native.js.map +1 -1
  1186. package/build-module/components/rich-text/input-event.js.map +1 -1
  1187. package/build-module/components/rich-text/input-event.native.js.map +1 -1
  1188. package/build-module/components/rich-text/multiline.js.map +1 -1
  1189. package/build-module/components/rich-text/native/format-edit.js.map +1 -1
  1190. package/build-module/components/rich-text/native/get-format-colors.native.js +1 -1
  1191. package/build-module/components/rich-text/native/get-format-colors.native.js.map +1 -1
  1192. package/build-module/components/rich-text/native/index.js.map +1 -1
  1193. package/build-module/components/rich-text/native/index.native.js +2 -2
  1194. package/build-module/components/rich-text/native/index.native.js.map +1 -1
  1195. package/build-module/components/rich-text/native/toolbar-button-with-options.native.js.map +1 -1
  1196. package/build-module/components/rich-text/native/use-format-types.js.map +1 -1
  1197. package/build-module/components/rich-text/prevent-event-discovery.js.map +1 -1
  1198. package/build-module/components/rich-text/remove-browser-shortcuts.native.js.map +1 -1
  1199. package/build-module/components/rich-text/shortcut.js.map +1 -1
  1200. package/build-module/components/rich-text/shortcut.native.js.map +1 -1
  1201. package/build-module/components/rich-text/split-value.js.map +1 -1
  1202. package/build-module/components/rich-text/toolbar-button.js.map +1 -1
  1203. package/build-module/components/rich-text/use-before-input-rules.js.map +1 -1
  1204. package/build-module/components/rich-text/use-delete.js.map +1 -1
  1205. package/build-module/components/rich-text/use-enter.js.map +1 -1
  1206. package/build-module/components/rich-text/use-firefox-compat.js.map +1 -1
  1207. package/build-module/components/rich-text/use-format-types.js.map +1 -1
  1208. package/build-module/components/rich-text/use-input-events.js.map +1 -1
  1209. package/build-module/components/rich-text/use-input-rules.js.map +1 -1
  1210. package/build-module/components/rich-text/use-insert-replacement-text.js.map +1 -1
  1211. package/build-module/components/rich-text/use-mark-persistent.js.map +1 -1
  1212. package/build-module/components/rich-text/use-paste-handler.js.map +1 -1
  1213. package/build-module/components/rich-text/use-remove-browser-shortcuts.js.map +1 -1
  1214. package/build-module/components/rich-text/use-shortcuts.js.map +1 -1
  1215. package/build-module/components/rich-text/use-undo-automatic-change.js +2 -2
  1216. package/build-module/components/rich-text/use-undo-automatic-change.js.map +1 -1
  1217. package/build-module/components/rich-text/utils.js.map +1 -1
  1218. package/build-module/components/rich-text/with-deprecations.js +0 -3
  1219. package/build-module/components/rich-text/with-deprecations.js.map +1 -1
  1220. package/build-module/components/selection-scroll-into-view/index.js.map +1 -1
  1221. package/build-module/components/skip-to-selected-block/index.js.map +1 -1
  1222. package/build-module/components/spacing-sizes-control/hooks/use-spacing-sizes.js.map +1 -1
  1223. package/build-module/components/spacing-sizes-control/index.js.map +1 -1
  1224. package/build-module/components/spacing-sizes-control/input-controls/axial.js.map +1 -1
  1225. package/build-module/components/spacing-sizes-control/input-controls/separated.js.map +1 -1
  1226. package/build-module/components/spacing-sizes-control/input-controls/single.js.map +1 -1
  1227. package/build-module/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -1
  1228. package/build-module/components/spacing-sizes-control/sides-dropdown/index.js.map +1 -1
  1229. package/build-module/components/spacing-sizes-control/utils.js.map +1 -1
  1230. package/build-module/components/text-decoration-control/index.js.map +1 -1
  1231. package/build-module/components/text-transform-control/index.js.map +1 -1
  1232. package/build-module/components/tool-selector/index.js.map +1 -1
  1233. package/build-module/components/typewriter/index.js.map +1 -1
  1234. package/build-module/components/ungroup-button/index.native.js.map +1 -1
  1235. package/build-module/components/unit-control/index.js.map +1 -1
  1236. package/build-module/components/unsupported-block-details/index.native.js.map +1 -1
  1237. package/build-module/components/url-input/button.js.map +1 -1
  1238. package/build-module/components/url-input/index.js.map +1 -1
  1239. package/build-module/components/url-input/index.native.js.map +1 -1
  1240. package/build-module/components/url-popover/image-url-input-ui.js +50 -36
  1241. package/build-module/components/url-popover/image-url-input-ui.js.map +1 -1
  1242. package/build-module/components/url-popover/index.js.map +1 -1
  1243. package/build-module/components/url-popover/link-editor.js.map +1 -1
  1244. package/build-module/components/url-popover/link-viewer-url.js.map +1 -1
  1245. package/build-module/components/url-popover/link-viewer.js.map +1 -1
  1246. package/build-module/components/use-block-commands/index.js +20 -2
  1247. package/build-module/components/use-block-commands/index.js.map +1 -1
  1248. package/build-module/components/use-block-display-information/index.js +5 -7
  1249. package/build-module/components/use-block-display-information/index.js.map +1 -1
  1250. package/build-module/components/use-block-drop-zone/index.js.map +1 -1
  1251. package/build-module/components/use-block-drop-zone/index.native.js.map +1 -1
  1252. package/build-module/components/use-flash-editable-blocks/index.js.map +1 -1
  1253. package/build-module/components/use-moving-animation/index.js.map +1 -1
  1254. package/build-module/components/use-on-block-drop/index.js.map +1 -1
  1255. package/build-module/components/use-on-block-drop/index.native.js.map +1 -1
  1256. package/build-module/components/use-on-block-drop/types.js.map +1 -1
  1257. package/build-module/components/use-paste-styles/index.js +2 -1
  1258. package/build-module/components/use-paste-styles/index.js.map +1 -1
  1259. package/build-module/components/use-resize-canvas/index.js.map +1 -1
  1260. package/build-module/components/use-settings/index.js.map +1 -1
  1261. package/build-module/components/use-unsupported-block-editor/index.native.js.map +1 -1
  1262. package/build-module/components/video-player/gridicon-play.native.js.map +1 -1
  1263. package/build-module/components/video-player/index.native.js.map +1 -1
  1264. package/build-module/components/warning/index.js.map +1 -1
  1265. package/build-module/components/warning/index.native.js.map +1 -1
  1266. package/build-module/components/writing-flow/index.js.map +1 -1
  1267. package/build-module/components/writing-flow/use-arrow-nav.js.map +1 -1
  1268. package/build-module/components/writing-flow/use-click-selection.js.map +1 -1
  1269. package/build-module/components/writing-flow/use-clipboard-handler.js.map +1 -1
  1270. package/build-module/components/writing-flow/use-drag-selection.js.map +1 -1
  1271. package/build-module/components/writing-flow/use-input.js.map +1 -1
  1272. package/build-module/components/writing-flow/use-multi-selection.js.map +1 -1
  1273. package/build-module/components/writing-flow/use-select-all.js.map +1 -1
  1274. package/build-module/components/writing-flow/use-selection-observer.js.map +1 -1
  1275. package/build-module/components/writing-flow/use-tab-nav.js.map +1 -1
  1276. package/build-module/components/writing-flow/utils.js.map +1 -1
  1277. package/build-module/components/writing-mode-control/index.js.map +1 -1
  1278. package/build-module/elements/index.js.map +1 -1
  1279. package/build-module/hooks/align.js.map +1 -1
  1280. package/build-module/hooks/align.native.js.map +1 -1
  1281. package/build-module/hooks/anchor.js +2 -2
  1282. package/build-module/hooks/anchor.js.map +1 -1
  1283. package/build-module/hooks/aria-label.js.map +1 -1
  1284. package/build-module/hooks/background.js +67 -419
  1285. package/build-module/hooks/background.js.map +1 -1
  1286. package/build-module/hooks/block-hooks.js.map +1 -1
  1287. package/build-module/hooks/block-renaming.js +0 -36
  1288. package/build-module/hooks/block-renaming.js.map +1 -1
  1289. package/build-module/hooks/border.js.map +1 -1
  1290. package/build-module/hooks/color.js.map +1 -1
  1291. package/build-module/hooks/compat.js.map +1 -1
  1292. package/build-module/hooks/content-lock-ui.js +5 -5
  1293. package/build-module/hooks/content-lock-ui.js.map +1 -1
  1294. package/build-module/hooks/contrast-checker.js.map +1 -1
  1295. package/build-module/hooks/custom-class-name.js.map +1 -1
  1296. package/build-module/hooks/custom-class-name.native.js.map +1 -1
  1297. package/build-module/hooks/dimensions.js.map +1 -1
  1298. package/build-module/hooks/duotone.js.map +1 -1
  1299. package/build-module/hooks/font-family.js.map +1 -1
  1300. package/build-module/hooks/font-size.js.map +1 -1
  1301. package/build-module/hooks/gap.js.map +1 -1
  1302. package/build-module/hooks/generated-class-name.js.map +1 -1
  1303. package/build-module/hooks/index.js +6 -4
  1304. package/build-module/hooks/index.js.map +1 -1
  1305. package/build-module/hooks/index.native.js.map +1 -1
  1306. package/build-module/hooks/layout-child.js.map +1 -1
  1307. package/build-module/hooks/layout.js +38 -19
  1308. package/build-module/hooks/layout.js.map +1 -1
  1309. package/build-module/hooks/layout.native.js.map +1 -1
  1310. package/build-module/hooks/line-height.js.map +1 -1
  1311. package/build-module/hooks/lock.js.map +1 -1
  1312. package/build-module/hooks/metadata.js.map +1 -1
  1313. package/build-module/hooks/position.js.map +1 -1
  1314. package/build-module/hooks/settings.js.map +1 -1
  1315. package/build-module/hooks/spacing-visualizer.js.map +1 -1
  1316. package/build-module/hooks/style.js.map +1 -1
  1317. package/build-module/hooks/supports.js +22 -1
  1318. package/build-module/hooks/supports.js.map +1 -1
  1319. package/build-module/hooks/text-align.js +145 -0
  1320. package/build-module/hooks/text-align.js.map +1 -0
  1321. package/build-module/hooks/typography.js +2 -1
  1322. package/build-module/hooks/typography.js.map +1 -1
  1323. package/build-module/hooks/typography.native.js.map +1 -1
  1324. package/build-module/hooks/use-bindings-attributes.js +68 -132
  1325. package/build-module/hooks/use-bindings-attributes.js.map +1 -1
  1326. package/build-module/hooks/use-border-props.js.map +1 -1
  1327. package/build-module/hooks/use-cached-truthy.js.map +1 -1
  1328. package/build-module/hooks/use-color-props.js.map +1 -1
  1329. package/build-module/hooks/use-editor-wrapper-styles.native.js.map +1 -1
  1330. package/build-module/hooks/use-shadow-props.js.map +1 -1
  1331. package/build-module/hooks/use-spacing-props.js.map +1 -1
  1332. package/build-module/hooks/use-typography-props.js +2 -1
  1333. package/build-module/hooks/use-typography-props.js.map +1 -1
  1334. package/build-module/hooks/use-zoom-out.js +48 -0
  1335. package/build-module/hooks/use-zoom-out.js.map +1 -0
  1336. package/build-module/hooks/utils.js +30 -6
  1337. package/build-module/hooks/utils.js.map +1 -1
  1338. package/build-module/index.js +1 -1
  1339. package/build-module/index.js.map +1 -1
  1340. package/build-module/index.native.js.map +1 -1
  1341. package/build-module/layouts/constrained.js.map +1 -1
  1342. package/build-module/layouts/definitions.js +8 -6
  1343. package/build-module/layouts/definitions.js.map +1 -1
  1344. package/build-module/layouts/flex.js.map +1 -1
  1345. package/build-module/layouts/flow.js.map +1 -1
  1346. package/build-module/layouts/grid.js +52 -9
  1347. package/build-module/layouts/grid.js.map +1 -1
  1348. package/build-module/layouts/index.js.map +1 -1
  1349. package/build-module/layouts/utils.js.map +1 -1
  1350. package/build-module/lock-unlock.js.map +1 -1
  1351. package/build-module/private-apis.js +7 -2
  1352. package/build-module/private-apis.js.map +1 -1
  1353. package/build-module/private-apis.native.js +3 -1
  1354. package/build-module/private-apis.native.js.map +1 -1
  1355. package/build-module/store/actions.js +18 -4
  1356. package/build-module/store/actions.js.map +1 -1
  1357. package/build-module/store/array.js.map +1 -1
  1358. package/build-module/store/constants.js.map +1 -1
  1359. package/build-module/store/defaults.js.map +1 -1
  1360. package/build-module/store/defaults.native.js.map +1 -1
  1361. package/build-module/store/get-block-settings.js.map +1 -1
  1362. package/build-module/store/index.js.map +1 -1
  1363. package/build-module/store/private-actions.js +17 -2
  1364. package/build-module/store/private-actions.js.map +1 -1
  1365. package/build-module/store/private-keys.js +1 -0
  1366. package/build-module/store/private-keys.js.map +1 -1
  1367. package/build-module/store/private-selectors.js +105 -33
  1368. package/build-module/store/private-selectors.js.map +1 -1
  1369. package/build-module/store/reducer.js +21 -0
  1370. package/build-module/store/reducer.js.map +1 -1
  1371. package/build-module/store/selectors.js +130 -88
  1372. package/build-module/store/selectors.js.map +1 -1
  1373. package/build-module/store/undo-ignore.js.map +1 -1
  1374. package/build-module/store/utils.js +6 -1
  1375. package/build-module/store/utils.js.map +1 -1
  1376. package/build-module/utils/dom.js.map +1 -1
  1377. package/build-module/utils/get-px-from-css-unit.js.map +1 -1
  1378. package/build-module/utils/index.js.map +1 -1
  1379. package/build-module/utils/math.js.map +1 -1
  1380. package/build-module/utils/object.js.map +1 -1
  1381. package/build-module/utils/order-inserter-block-items.js.map +1 -1
  1382. package/build-module/utils/pasting.js.map +1 -1
  1383. package/build-module/utils/selection.js.map +1 -1
  1384. package/build-module/utils/sorting.js.map +1 -1
  1385. package/build-module/utils/transform-styles/index.js +2 -1
  1386. package/build-module/utils/transform-styles/index.js.map +1 -1
  1387. package/build-module/utils/use-notify-copy.js.map +1 -1
  1388. package/build-style/content-rtl.css +40 -19
  1389. package/build-style/content.css +40 -19
  1390. package/build-style/default-editor-styles-rtl.css +1 -1
  1391. package/build-style/default-editor-styles.css +1 -1
  1392. package/build-style/style-rtl.css +150 -130
  1393. package/build-style/style.css +150 -130
  1394. package/package.json +32 -33
  1395. package/src/components/block-bindings-toolbar-indicator/style.scss +1 -1
  1396. package/src/components/block-edit/context.js +1 -0
  1397. package/src/components/block-edit/index.js +4 -0
  1398. package/src/components/block-inspector/index.js +6 -4
  1399. package/src/components/block-list/block.js +69 -30
  1400. package/src/components/block-list/block.native.js +3 -2
  1401. package/src/components/block-list/content.scss +37 -19
  1402. package/src/components/block-list/index.js +22 -6
  1403. package/src/components/block-list/use-block-props/index.js +5 -1
  1404. package/src/components/block-list/use-block-props/use-focus-first-element.js +7 -3
  1405. package/src/components/block-mover/button.js +4 -1
  1406. package/src/components/block-mover/index.js +8 -1
  1407. package/src/components/block-patterns-list/index.js +22 -17
  1408. package/src/components/block-patterns-paging/index.js +4 -0
  1409. package/src/components/block-preview/style.scss +28 -0
  1410. package/src/components/block-rename/modal.js +17 -13
  1411. package/src/components/block-rename/rename-control.js +8 -1
  1412. package/src/components/block-settings-menu/block-settings-dropdown.js +8 -2
  1413. package/src/components/block-switcher/index.js +5 -3
  1414. package/src/components/block-switcher/style.scss +1 -1
  1415. package/src/components/block-toolbar/index.js +16 -9
  1416. package/src/components/block-toolbar/shuffle.js +19 -13
  1417. package/src/components/block-toolbar/style.scss +1 -1
  1418. package/src/components/block-toolbar/use-has-block-toolbar.js +5 -3
  1419. package/src/components/block-tools/block-selection-button.js +103 -34
  1420. package/src/components/block-tools/index.js +18 -1
  1421. package/src/components/block-tools/use-show-block-tools.js +4 -7
  1422. package/src/components/block-variation-transforms/index.js +3 -1
  1423. package/src/components/button-block-appender/content.scss +5 -1
  1424. package/src/components/button-block-appender/index.native.js +16 -1
  1425. package/src/components/default-block-appender/content.scss +3 -3
  1426. package/src/components/editor-styles/index.js +4 -2
  1427. package/src/components/global-styles/advanced-panel.js +8 -2
  1428. package/src/components/global-styles/background-panel.js +595 -0
  1429. package/src/components/global-styles/color-panel.js +2 -1
  1430. package/src/components/global-styles/get-global-styles-changes.js +3 -0
  1431. package/src/components/global-styles/hooks.js +1 -0
  1432. package/src/components/global-styles/index.js +4 -0
  1433. package/src/components/global-styles/style.scss +72 -1
  1434. package/src/{hooks/test/background.js → components/global-styles/test/background-panel.js} +36 -1
  1435. package/src/components/global-styles/test/get-global-styles-changes.js +22 -3
  1436. package/src/components/global-styles/test/use-global-styles-output.js +12 -21
  1437. package/src/components/global-styles/use-global-styles-output.js +32 -21
  1438. package/src/components/global-styles/utils.js +1 -0
  1439. package/src/components/iframe/index.js +17 -14
  1440. package/src/components/image-editor/cropper.js +11 -2
  1441. package/src/components/image-editor/index.js +0 -2
  1442. package/src/components/inserter/block-patterns-tab/index.js +54 -39
  1443. package/src/components/inserter/block-patterns-tab/pattern-category-preview-panel.js +9 -31
  1444. package/src/components/inserter/block-patterns-tab/pattern-category-previews.js +2 -2
  1445. package/src/components/inserter/library.js +4 -0
  1446. package/src/components/inserter/menu.js +35 -17
  1447. package/src/components/inserter/search-items.js +37 -15
  1448. package/src/components/inserter/style.scss +88 -70
  1449. package/src/components/inserter/tabs.js +7 -2
  1450. package/src/components/inspector-controls-tabs/styles-tab.js +1 -1
  1451. package/src/components/keyboard-shortcuts/index.js +11 -0
  1452. package/src/components/link-control/style.scss +10 -2
  1453. package/src/components/link-control/test/index.js +1 -1
  1454. package/src/components/list-view/block-select-button.js +44 -3
  1455. package/src/components/list-view/block.js +1 -1
  1456. package/src/components/list-view/index.js +18 -1
  1457. package/src/components/list-view/style.scss +4 -4
  1458. package/src/components/list-view/use-list-view-collapse-items.js +33 -0
  1459. package/src/components/list-view/use-list-view-drop-zone.js +5 -0
  1460. package/src/components/recursion-provider/index.js +2 -2
  1461. package/src/components/rich-text/README.md +4 -0
  1462. package/src/components/rich-text/content.js +26 -19
  1463. package/src/components/rich-text/index.js +76 -15
  1464. package/src/components/rich-text/index.native.js +17 -12
  1465. package/src/components/rich-text/native/get-format-colors.native.js +1 -1
  1466. package/src/components/rich-text/native/index.native.js +2 -2
  1467. package/src/components/rich-text/use-undo-automatic-change.js +2 -6
  1468. package/src/components/rich-text/with-deprecations.js +0 -3
  1469. package/src/components/url-popover/image-url-input-ui.js +68 -51
  1470. package/src/components/use-block-commands/index.js +46 -28
  1471. package/src/components/use-block-display-information/index.js +8 -10
  1472. package/src/components/use-paste-styles/index.js +2 -0
  1473. package/src/hooks/anchor.js +11 -9
  1474. package/src/hooks/background.js +77 -538
  1475. package/src/hooks/block-renaming.js +0 -33
  1476. package/src/hooks/content-lock-ui.js +5 -7
  1477. package/src/hooks/index.js +6 -2
  1478. package/src/hooks/layout.js +57 -25
  1479. package/src/hooks/supports.js +24 -0
  1480. package/src/hooks/test/text-align.js +114 -0
  1481. package/src/hooks/test/use-typography-props.js +3 -1
  1482. package/src/hooks/text-align.js +178 -0
  1483. package/src/hooks/typography.js +2 -0
  1484. package/src/hooks/use-bindings-attributes.js +90 -161
  1485. package/src/hooks/use-typography-props.js +4 -1
  1486. package/src/hooks/use-zoom-out.js +46 -0
  1487. package/src/hooks/utils.js +41 -3
  1488. package/src/index.js +1 -0
  1489. package/src/layouts/definitions.js +6 -6
  1490. package/src/layouts/grid.js +106 -47
  1491. package/src/private-apis.js +13 -1
  1492. package/src/private-apis.native.js +2 -0
  1493. package/src/store/actions.js +22 -6
  1494. package/src/store/private-actions.js +18 -3
  1495. package/src/store/private-keys.js +1 -0
  1496. package/src/store/private-selectors.js +160 -41
  1497. package/src/store/reducer.js +22 -0
  1498. package/src/store/selectors.js +333 -262
  1499. package/src/store/test/private-actions.js +10 -0
  1500. package/src/store/test/private-selectors.js +13 -0
  1501. package/src/store/test/reducer.js +26 -0
  1502. package/src/store/test/selectors.js +90 -199
  1503. package/src/store/utils.js +13 -0
  1504. package/src/style.scss +0 -2
  1505. package/src/utils/transform-styles/index.js +2 -1
  1506. package/tsconfig.tsbuildinfo +1 -1
  1507. package/src/hooks/anchor.scss +0 -4
  1508. package/src/hooks/background.scss +0 -75
@@ -1 +1 @@
1
- {"version":3,"names":["isTextField","ENTER","BACKSPACE","DELETE","useSelect","useDispatch","useRefEffect","store","blockEditorStore","useEventHandlers","clientId","isSelected","getBlockRootClientId","getBlockIndex","insertAfterBlock","removeBlock","node","onKeyDown","event","keyCode","target","preventDefault","onDragStart","addEventListener","removeEventListener"],"sources":["@wordpress/block-editor/src/components/block-list/use-block-props/use-selected-block-event-handlers.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { isTextField } from '@wordpress/dom';\nimport { ENTER, BACKSPACE, DELETE } from '@wordpress/keycodes';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useRefEffect } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../../store';\n\n/**\n * Adds block behaviour:\n * - Removes the block on BACKSPACE.\n * - Inserts a default block on ENTER.\n * - Disables dragging of block contents.\n *\n * @param {string} clientId Block client ID.\n */\nexport function useEventHandlers( { clientId, isSelected } ) {\n\tconst { getBlockRootClientId, getBlockIndex } =\n\t\tuseSelect( blockEditorStore );\n\tconst { insertAfterBlock, removeBlock } = useDispatch( blockEditorStore );\n\n\treturn useRefEffect(\n\t\t( node ) => {\n\t\t\tif ( ! isSelected ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t/**\n\t\t\t * Interprets keydown event intent to remove or insert after block if\n\t\t\t * key event occurs on wrapper node. This can occur when the block has\n\t\t\t * no text fields of its own, particularly after initial insertion, to\n\t\t\t * allow for easy deletion and continuous writing flow to add additional\n\t\t\t * content.\n\t\t\t *\n\t\t\t * @param {KeyboardEvent} event Keydown event.\n\t\t\t */\n\t\t\tfunction onKeyDown( event ) {\n\t\t\t\tconst { keyCode, target } = event;\n\n\t\t\t\tif (\n\t\t\t\t\tkeyCode !== ENTER &&\n\t\t\t\t\tkeyCode !== BACKSPACE &&\n\t\t\t\t\tkeyCode !== DELETE\n\t\t\t\t) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif ( target !== node || isTextField( target ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tevent.preventDefault();\n\n\t\t\t\tif ( keyCode === ENTER ) {\n\t\t\t\t\tinsertAfterBlock( clientId );\n\t\t\t\t} else {\n\t\t\t\t\tremoveBlock( clientId );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t/**\n\t\t\t * Prevents default dragging behavior within a block. To do: we must\n\t\t\t * handle this in the future and clean up the drag target.\n\t\t\t *\n\t\t\t * @param {DragEvent} event Drag event.\n\t\t\t */\n\t\t\tfunction onDragStart( event ) {\n\t\t\t\tevent.preventDefault();\n\t\t\t}\n\n\t\t\tnode.addEventListener( 'keydown', onKeyDown );\n\t\t\tnode.addEventListener( 'dragstart', onDragStart );\n\n\t\t\treturn () => {\n\t\t\t\tnode.removeEventListener( 'keydown', onKeyDown );\n\t\t\t\tnode.removeEventListener( 'dragstart', onDragStart );\n\t\t\t};\n\t\t},\n\t\t[\n\t\t\tclientId,\n\t\t\tisSelected,\n\t\t\tgetBlockRootClientId,\n\t\t\tgetBlockIndex,\n\t\t\tinsertAfterBlock,\n\t\t\tremoveBlock,\n\t\t]\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,WAAW,QAAQ,gBAAgB;AAC5C,SAASC,KAAK,EAAEC,SAAS,EAAEC,MAAM,QAAQ,qBAAqB;AAC9D,SAASC,SAAS,EAAEC,WAAW,QAAQ,iBAAiB;AACxD,SAASC,YAAY,QAAQ,oBAAoB;;AAEjD;AACA;AACA;AACA,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,gBAAgB;;AAE1D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,gBAAgBA,CAAE;EAAEC,QAAQ;EAAEC;AAAW,CAAC,EAAG;EAC5D,MAAM;IAAEC,oBAAoB;IAAEC;EAAc,CAAC,GAC5CT,SAAS,CAAEI,gBAAiB,CAAC;EAC9B,MAAM;IAAEM,gBAAgB;IAAEC;EAAY,CAAC,GAAGV,WAAW,CAAEG,gBAAiB,CAAC;EAEzE,OAAOF,YAAY,CAChBU,IAAI,IAAM;IACX,IAAK,CAAEL,UAAU,EAAG;MACnB;IACD;;IAEA;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACG,SAASM,SAASA,CAAEC,KAAK,EAAG;MAC3B,MAAM;QAAEC,OAAO;QAAEC;MAAO,CAAC,GAAGF,KAAK;MAEjC,IACCC,OAAO,KAAKlB,KAAK,IACjBkB,OAAO,KAAKjB,SAAS,IACrBiB,OAAO,KAAKhB,MAAM,EACjB;QACD;MACD;MAEA,IAAKiB,MAAM,KAAKJ,IAAI,IAAIhB,WAAW,CAAEoB,MAAO,CAAC,EAAG;QAC/C;MACD;MAEAF,KAAK,CAACG,cAAc,CAAC,CAAC;MAEtB,IAAKF,OAAO,KAAKlB,KAAK,EAAG;QACxBa,gBAAgB,CAAEJ,QAAS,CAAC;MAC7B,CAAC,MAAM;QACNK,WAAW,CAAEL,QAAS,CAAC;MACxB;IACD;;IAEA;AACH;AACA;AACA;AACA;AACA;IACG,SAASY,WAAWA,CAAEJ,KAAK,EAAG;MAC7BA,KAAK,CAACG,cAAc,CAAC,CAAC;IACvB;IAEAL,IAAI,CAACO,gBAAgB,CAAE,SAAS,EAAEN,SAAU,CAAC;IAC7CD,IAAI,CAACO,gBAAgB,CAAE,WAAW,EAAED,WAAY,CAAC;IAEjD,OAAO,MAAM;MACZN,IAAI,CAACQ,mBAAmB,CAAE,SAAS,EAAEP,SAAU,CAAC;MAChDD,IAAI,CAACQ,mBAAmB,CAAE,WAAW,EAAEF,WAAY,CAAC;IACrD,CAAC;EACF,CAAC,EACD,CACCZ,QAAQ,EACRC,UAAU,EACVC,oBAAoB,EACpBC,aAAa,EACbC,gBAAgB,EAChBC,WAAW,CAEb,CAAC;AACF"}
1
+ {"version":3,"names":["isTextField","ENTER","BACKSPACE","DELETE","useSelect","useDispatch","useRefEffect","store","blockEditorStore","useEventHandlers","clientId","isSelected","getBlockRootClientId","getBlockIndex","insertAfterBlock","removeBlock","node","onKeyDown","event","keyCode","target","preventDefault","onDragStart","addEventListener","removeEventListener"],"sources":["@wordpress/block-editor/src/components/block-list/use-block-props/use-selected-block-event-handlers.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { isTextField } from '@wordpress/dom';\nimport { ENTER, BACKSPACE, DELETE } from '@wordpress/keycodes';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useRefEffect } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../../store';\n\n/**\n * Adds block behaviour:\n * - Removes the block on BACKSPACE.\n * - Inserts a default block on ENTER.\n * - Disables dragging of block contents.\n *\n * @param {string} clientId Block client ID.\n */\nexport function useEventHandlers( { clientId, isSelected } ) {\n\tconst { getBlockRootClientId, getBlockIndex } =\n\t\tuseSelect( blockEditorStore );\n\tconst { insertAfterBlock, removeBlock } = useDispatch( blockEditorStore );\n\n\treturn useRefEffect(\n\t\t( node ) => {\n\t\t\tif ( ! isSelected ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t/**\n\t\t\t * Interprets keydown event intent to remove or insert after block if\n\t\t\t * key event occurs on wrapper node. This can occur when the block has\n\t\t\t * no text fields of its own, particularly after initial insertion, to\n\t\t\t * allow for easy deletion and continuous writing flow to add additional\n\t\t\t * content.\n\t\t\t *\n\t\t\t * @param {KeyboardEvent} event Keydown event.\n\t\t\t */\n\t\t\tfunction onKeyDown( event ) {\n\t\t\t\tconst { keyCode, target } = event;\n\n\t\t\t\tif (\n\t\t\t\t\tkeyCode !== ENTER &&\n\t\t\t\t\tkeyCode !== BACKSPACE &&\n\t\t\t\t\tkeyCode !== DELETE\n\t\t\t\t) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif ( target !== node || isTextField( target ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tevent.preventDefault();\n\n\t\t\t\tif ( keyCode === ENTER ) {\n\t\t\t\t\tinsertAfterBlock( clientId );\n\t\t\t\t} else {\n\t\t\t\t\tremoveBlock( clientId );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t/**\n\t\t\t * Prevents default dragging behavior within a block. To do: we must\n\t\t\t * handle this in the future and clean up the drag target.\n\t\t\t *\n\t\t\t * @param {DragEvent} event Drag event.\n\t\t\t */\n\t\t\tfunction onDragStart( event ) {\n\t\t\t\tevent.preventDefault();\n\t\t\t}\n\n\t\t\tnode.addEventListener( 'keydown', onKeyDown );\n\t\t\tnode.addEventListener( 'dragstart', onDragStart );\n\n\t\t\treturn () => {\n\t\t\t\tnode.removeEventListener( 'keydown', onKeyDown );\n\t\t\t\tnode.removeEventListener( 'dragstart', onDragStart );\n\t\t\t};\n\t\t},\n\t\t[\n\t\t\tclientId,\n\t\t\tisSelected,\n\t\t\tgetBlockRootClientId,\n\t\t\tgetBlockIndex,\n\t\t\tinsertAfterBlock,\n\t\t\tremoveBlock,\n\t\t]\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,WAAW,QAAQ,gBAAgB;AAC5C,SAASC,KAAK,EAAEC,SAAS,EAAEC,MAAM,QAAQ,qBAAqB;AAC9D,SAASC,SAAS,EAAEC,WAAW,QAAQ,iBAAiB;AACxD,SAASC,YAAY,QAAQ,oBAAoB;;AAEjD;AACA;AACA;AACA,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,gBAAgB;;AAE1D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,gBAAgBA,CAAE;EAAEC,QAAQ;EAAEC;AAAW,CAAC,EAAG;EAC5D,MAAM;IAAEC,oBAAoB;IAAEC;EAAc,CAAC,GAC5CT,SAAS,CAAEI,gBAAiB,CAAC;EAC9B,MAAM;IAAEM,gBAAgB;IAAEC;EAAY,CAAC,GAAGV,WAAW,CAAEG,gBAAiB,CAAC;EAEzE,OAAOF,YAAY,CAChBU,IAAI,IAAM;IACX,IAAK,CAAEL,UAAU,EAAG;MACnB;IACD;;IAEA;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACG,SAASM,SAASA,CAAEC,KAAK,EAAG;MAC3B,MAAM;QAAEC,OAAO;QAAEC;MAAO,CAAC,GAAGF,KAAK;MAEjC,IACCC,OAAO,KAAKlB,KAAK,IACjBkB,OAAO,KAAKjB,SAAS,IACrBiB,OAAO,KAAKhB,MAAM,EACjB;QACD;MACD;MAEA,IAAKiB,MAAM,KAAKJ,IAAI,IAAIhB,WAAW,CAAEoB,MAAO,CAAC,EAAG;QAC/C;MACD;MAEAF,KAAK,CAACG,cAAc,CAAC,CAAC;MAEtB,IAAKF,OAAO,KAAKlB,KAAK,EAAG;QACxBa,gBAAgB,CAAEJ,QAAS,CAAC;MAC7B,CAAC,MAAM;QACNK,WAAW,CAAEL,QAAS,CAAC;MACxB;IACD;;IAEA;AACH;AACA;AACA;AACA;AACA;IACG,SAASY,WAAWA,CAAEJ,KAAK,EAAG;MAC7BA,KAAK,CAACG,cAAc,CAAC,CAAC;IACvB;IAEAL,IAAI,CAACO,gBAAgB,CAAE,SAAS,EAAEN,SAAU,CAAC;IAC7CD,IAAI,CAACO,gBAAgB,CAAE,WAAW,EAAED,WAAY,CAAC;IAEjD,OAAO,MAAM;MACZN,IAAI,CAACQ,mBAAmB,CAAE,SAAS,EAAEP,SAAU,CAAC;MAChDD,IAAI,CAACQ,mBAAmB,CAAE,WAAW,EAAEF,WAAY,CAAC;IACrD,CAAC;EACF,CAAC,EACD,CACCZ,QAAQ,EACRC,UAAU,EACVC,oBAAoB,EACpBC,aAAa,EACbC,gBAAgB,EAChBC,WAAW,CAEb,CAAC;AACF","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["useRefEffect","useSelect","useDispatch","useContext","isRTL","store","blockEditorStore","InsertionPointOpenRef","useInBetweenInserter","openRef","isInBetweenInserterDisabled","select","getSettings","isDistractionFree","__unstableGetEditorMode","getBlockListSettings","getBlockIndex","isMultiSelecting","getSelectedBlockClientIds","getTemplateLock","__unstableIsWithinBlockOverlay","getBlockEditingMode","getBlockName","showInsertionPoint","hideInsertionPoint","node","onMouseMove","event","current","target","nodeType","TEXT_NODE","classList","contains","rootClientId","blockElement","getAttribute","closest","orientation","offsetTop","clientY","offsetLeft","clientX","children","Array","from","element","find","blockEl","blockElRect","getBoundingClientRect","top","right","left","id","firstElementChild","clientId","slice","length","includes","elementRect","bottom","index","__unstableWithInserter","addEventListener","removeEventListener"],"sources":["@wordpress/block-editor/src/components/block-list/use-in-between-inserter.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useRefEffect } from '@wordpress/compose';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useContext } from '@wordpress/element';\nimport { isRTL } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../store';\nimport { InsertionPointOpenRef } from '../block-tools/insertion-point';\n\nexport function useInBetweenInserter() {\n\tconst openRef = useContext( InsertionPointOpenRef );\n\tconst isInBetweenInserterDisabled = useSelect(\n\t\t( select ) =>\n\t\t\tselect( blockEditorStore ).getSettings().isDistractionFree ||\n\t\t\tselect( blockEditorStore ).__unstableGetEditorMode() === 'zoom-out',\n\t\t[]\n\t);\n\tconst {\n\t\tgetBlockListSettings,\n\t\tgetBlockIndex,\n\t\tisMultiSelecting,\n\t\tgetSelectedBlockClientIds,\n\t\tgetTemplateLock,\n\t\t__unstableIsWithinBlockOverlay,\n\t\tgetBlockEditingMode,\n\t\tgetBlockName,\n\t} = useSelect( blockEditorStore );\n\tconst { showInsertionPoint, hideInsertionPoint } =\n\t\tuseDispatch( blockEditorStore );\n\n\treturn useRefEffect(\n\t\t( node ) => {\n\t\t\tif ( isInBetweenInserterDisabled ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tfunction onMouseMove( event ) {\n\t\t\t\tif ( openRef.current ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\t// Ignore text nodes sometimes detected in FireFox.\n\t\t\t\tif ( event.target.nodeType === event.target.TEXT_NODE ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif ( isMultiSelecting() ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (\n\t\t\t\t\t! event.target.classList.contains(\n\t\t\t\t\t\t'block-editor-block-list__layout'\n\t\t\t\t\t)\n\t\t\t\t) {\n\t\t\t\t\thideInsertionPoint();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tlet rootClientId;\n\t\t\t\tif (\n\t\t\t\t\t! event.target.classList.contains( 'is-root-container' )\n\t\t\t\t) {\n\t\t\t\t\tconst blockElement = !! event.target.getAttribute(\n\t\t\t\t\t\t'data-block'\n\t\t\t\t\t)\n\t\t\t\t\t\t? event.target\n\t\t\t\t\t\t: event.target.closest( '[data-block]' );\n\t\t\t\t\trootClientId = blockElement.getAttribute( 'data-block' );\n\t\t\t\t}\n\n\t\t\t\tif (\n\t\t\t\t\tgetTemplateLock( rootClientId ) ||\n\t\t\t\t\tgetBlockEditingMode( rootClientId ) === 'disabled' ||\n\t\t\t\t\tgetBlockName( rootClientId ) === 'core/block'\n\t\t\t\t) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tconst orientation =\n\t\t\t\t\tgetBlockListSettings( rootClientId )?.orientation ||\n\t\t\t\t\t'vertical';\n\t\t\t\tconst offsetTop = event.clientY;\n\t\t\t\tconst offsetLeft = event.clientX;\n\n\t\t\t\tconst children = Array.from( event.target.children );\n\t\t\t\tlet element = children.find( ( blockEl ) => {\n\t\t\t\t\tconst blockElRect = blockEl.getBoundingClientRect();\n\t\t\t\t\treturn (\n\t\t\t\t\t\t( blockEl.classList.contains( 'wp-block' ) &&\n\t\t\t\t\t\t\torientation === 'vertical' &&\n\t\t\t\t\t\t\tblockElRect.top > offsetTop ) ||\n\t\t\t\t\t\t( blockEl.classList.contains( 'wp-block' ) &&\n\t\t\t\t\t\t\torientation === 'horizontal' &&\n\t\t\t\t\t\t\t( isRTL()\n\t\t\t\t\t\t\t\t? blockElRect.right < offsetLeft\n\t\t\t\t\t\t\t\t: blockElRect.left > offsetLeft ) )\n\t\t\t\t\t);\n\t\t\t\t} );\n\n\t\t\t\tif ( ! element ) {\n\t\t\t\t\thideInsertionPoint();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\t// The block may be in an alignment wrapper, so check the first direct\n\t\t\t\t// child if the element has no ID.\n\t\t\t\tif ( ! element.id ) {\n\t\t\t\t\telement = element.firstElementChild;\n\n\t\t\t\t\tif ( ! element ) {\n\t\t\t\t\t\thideInsertionPoint();\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// Don't show the insertion point if a parent block has an \"overlay\"\n\t\t\t\t// See https://github.com/WordPress/gutenberg/pull/34012#pullrequestreview-727762337\n\t\t\t\tconst clientId = element.id.slice( 'block-'.length );\n\t\t\t\tif (\n\t\t\t\t\t! clientId ||\n\t\t\t\t\t__unstableIsWithinBlockOverlay( clientId )\n\t\t\t\t) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\t// Don't show the inserter when hovering above (conflicts with\n\t\t\t\t// block toolbar) or inside selected block(s).\n\t\t\t\tif ( getSelectedBlockClientIds().includes( clientId ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tconst elementRect = element.getBoundingClientRect();\n\n\t\t\t\tif (\n\t\t\t\t\t( orientation === 'horizontal' &&\n\t\t\t\t\t\t( event.clientY > elementRect.bottom ||\n\t\t\t\t\t\t\tevent.clientY < elementRect.top ) ) ||\n\t\t\t\t\t( orientation === 'vertical' &&\n\t\t\t\t\t\t( event.clientX > elementRect.right ||\n\t\t\t\t\t\t\tevent.clientX < elementRect.left ) )\n\t\t\t\t) {\n\t\t\t\t\thideInsertionPoint();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tconst index = getBlockIndex( clientId );\n\n\t\t\t\t// Don't show the in-between inserter before the first block in\n\t\t\t\t// the list (preserves the original behaviour).\n\t\t\t\tif ( index === 0 ) {\n\t\t\t\t\thideInsertionPoint();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tshowInsertionPoint( rootClientId, index, {\n\t\t\t\t\t__unstableWithInserter: true,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\tnode.addEventListener( 'mousemove', onMouseMove );\n\n\t\t\treturn () => {\n\t\t\t\tnode.removeEventListener( 'mousemove', onMouseMove );\n\t\t\t};\n\t\t},\n\t\t[\n\t\t\topenRef,\n\t\t\tgetBlockListSettings,\n\t\t\tgetBlockIndex,\n\t\t\tisMultiSelecting,\n\t\t\tshowInsertionPoint,\n\t\t\thideInsertionPoint,\n\t\t\tgetSelectedBlockClientIds,\n\t\t\tisInBetweenInserterDisabled,\n\t\t]\n\t);\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["useRefEffect","useSelect","useDispatch","useContext","isRTL","store","blockEditorStore","InsertionPointOpenRef","useInBetweenInserter","openRef","isInBetweenInserterDisabled","select","getSettings","isDistractionFree","__unstableGetEditorMode","getBlockListSettings","getBlockIndex","isMultiSelecting","getSelectedBlockClientIds","getTemplateLock","__unstableIsWithinBlockOverlay","getBlockEditingMode","getBlockName","showInsertionPoint","hideInsertionPoint","node","onMouseMove","event","current","target","nodeType","TEXT_NODE","classList","contains","rootClientId","blockElement","getAttribute","closest","orientation","offsetTop","clientY","offsetLeft","clientX","children","Array","from","element","find","blockEl","blockElRect","getBoundingClientRect","top","right","left","id","firstElementChild","clientId","slice","length","includes","elementRect","bottom","index","__unstableWithInserter","addEventListener","removeEventListener"],"sources":["@wordpress/block-editor/src/components/block-list/use-in-between-inserter.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useRefEffect } from '@wordpress/compose';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useContext } from '@wordpress/element';\nimport { isRTL } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../store';\nimport { InsertionPointOpenRef } from '../block-tools/insertion-point';\n\nexport function useInBetweenInserter() {\n\tconst openRef = useContext( InsertionPointOpenRef );\n\tconst isInBetweenInserterDisabled = useSelect(\n\t\t( select ) =>\n\t\t\tselect( blockEditorStore ).getSettings().isDistractionFree ||\n\t\t\tselect( blockEditorStore ).__unstableGetEditorMode() === 'zoom-out',\n\t\t[]\n\t);\n\tconst {\n\t\tgetBlockListSettings,\n\t\tgetBlockIndex,\n\t\tisMultiSelecting,\n\t\tgetSelectedBlockClientIds,\n\t\tgetTemplateLock,\n\t\t__unstableIsWithinBlockOverlay,\n\t\tgetBlockEditingMode,\n\t\tgetBlockName,\n\t} = useSelect( blockEditorStore );\n\tconst { showInsertionPoint, hideInsertionPoint } =\n\t\tuseDispatch( blockEditorStore );\n\n\treturn useRefEffect(\n\t\t( node ) => {\n\t\t\tif ( isInBetweenInserterDisabled ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tfunction onMouseMove( event ) {\n\t\t\t\tif ( openRef.current ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\t// Ignore text nodes sometimes detected in FireFox.\n\t\t\t\tif ( event.target.nodeType === event.target.TEXT_NODE ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif ( isMultiSelecting() ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (\n\t\t\t\t\t! event.target.classList.contains(\n\t\t\t\t\t\t'block-editor-block-list__layout'\n\t\t\t\t\t)\n\t\t\t\t) {\n\t\t\t\t\thideInsertionPoint();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tlet rootClientId;\n\t\t\t\tif (\n\t\t\t\t\t! event.target.classList.contains( 'is-root-container' )\n\t\t\t\t) {\n\t\t\t\t\tconst blockElement = !! event.target.getAttribute(\n\t\t\t\t\t\t'data-block'\n\t\t\t\t\t)\n\t\t\t\t\t\t? event.target\n\t\t\t\t\t\t: event.target.closest( '[data-block]' );\n\t\t\t\t\trootClientId = blockElement.getAttribute( 'data-block' );\n\t\t\t\t}\n\n\t\t\t\tif (\n\t\t\t\t\tgetTemplateLock( rootClientId ) ||\n\t\t\t\t\tgetBlockEditingMode( rootClientId ) === 'disabled' ||\n\t\t\t\t\tgetBlockName( rootClientId ) === 'core/block'\n\t\t\t\t) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tconst orientation =\n\t\t\t\t\tgetBlockListSettings( rootClientId )?.orientation ||\n\t\t\t\t\t'vertical';\n\t\t\t\tconst offsetTop = event.clientY;\n\t\t\t\tconst offsetLeft = event.clientX;\n\n\t\t\t\tconst children = Array.from( event.target.children );\n\t\t\t\tlet element = children.find( ( blockEl ) => {\n\t\t\t\t\tconst blockElRect = blockEl.getBoundingClientRect();\n\t\t\t\t\treturn (\n\t\t\t\t\t\t( blockEl.classList.contains( 'wp-block' ) &&\n\t\t\t\t\t\t\torientation === 'vertical' &&\n\t\t\t\t\t\t\tblockElRect.top > offsetTop ) ||\n\t\t\t\t\t\t( blockEl.classList.contains( 'wp-block' ) &&\n\t\t\t\t\t\t\torientation === 'horizontal' &&\n\t\t\t\t\t\t\t( isRTL()\n\t\t\t\t\t\t\t\t? blockElRect.right < offsetLeft\n\t\t\t\t\t\t\t\t: blockElRect.left > offsetLeft ) )\n\t\t\t\t\t);\n\t\t\t\t} );\n\n\t\t\t\tif ( ! element ) {\n\t\t\t\t\thideInsertionPoint();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\t// The block may be in an alignment wrapper, so check the first direct\n\t\t\t\t// child if the element has no ID.\n\t\t\t\tif ( ! element.id ) {\n\t\t\t\t\telement = element.firstElementChild;\n\n\t\t\t\t\tif ( ! element ) {\n\t\t\t\t\t\thideInsertionPoint();\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// Don't show the insertion point if a parent block has an \"overlay\"\n\t\t\t\t// See https://github.com/WordPress/gutenberg/pull/34012#pullrequestreview-727762337\n\t\t\t\tconst clientId = element.id.slice( 'block-'.length );\n\t\t\t\tif (\n\t\t\t\t\t! clientId ||\n\t\t\t\t\t__unstableIsWithinBlockOverlay( clientId )\n\t\t\t\t) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\t// Don't show the inserter when hovering above (conflicts with\n\t\t\t\t// block toolbar) or inside selected block(s).\n\t\t\t\tif ( getSelectedBlockClientIds().includes( clientId ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tconst elementRect = element.getBoundingClientRect();\n\n\t\t\t\tif (\n\t\t\t\t\t( orientation === 'horizontal' &&\n\t\t\t\t\t\t( event.clientY > elementRect.bottom ||\n\t\t\t\t\t\t\tevent.clientY < elementRect.top ) ) ||\n\t\t\t\t\t( orientation === 'vertical' &&\n\t\t\t\t\t\t( event.clientX > elementRect.right ||\n\t\t\t\t\t\t\tevent.clientX < elementRect.left ) )\n\t\t\t\t) {\n\t\t\t\t\thideInsertionPoint();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tconst index = getBlockIndex( clientId );\n\n\t\t\t\t// Don't show the in-between inserter before the first block in\n\t\t\t\t// the list (preserves the original behaviour).\n\t\t\t\tif ( index === 0 ) {\n\t\t\t\t\thideInsertionPoint();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tshowInsertionPoint( rootClientId, index, {\n\t\t\t\t\t__unstableWithInserter: true,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\tnode.addEventListener( 'mousemove', onMouseMove );\n\n\t\t\treturn () => {\n\t\t\t\tnode.removeEventListener( 'mousemove', onMouseMove );\n\t\t\t};\n\t\t},\n\t\t[\n\t\t\topenRef,\n\t\t\tgetBlockListSettings,\n\t\t\tgetBlockIndex,\n\t\t\tisMultiSelecting,\n\t\t\tshowInsertionPoint,\n\t\t\thideInsertionPoint,\n\t\t\tgetSelectedBlockClientIds,\n\t\t\tisInBetweenInserterDisabled,\n\t\t]\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["useEffect","useSelect","useBlockListContext","store","blockEditorStore","useScrollUponInsertion","clientId","isSelected","isLayoutCalculated","elementRef","scrollRef","wasBlockJustInserted","select","lastScrollTo","current","alreadyScrolledTo","scrollToElement"],"sources":["@wordpress/block-editor/src/components/block-list/use-scroll-upon-insertion.native.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEffect } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { useBlockListContext } from './block-list-context';\nimport { store as blockEditorStore } from '../../store';\n\nconst useScrollUponInsertion = ( {\n\tclientId,\n\tisSelected,\n\tisLayoutCalculated,\n\telementRef,\n} ) => {\n\tconst { scrollRef } = useBlockListContext();\n\tconst wasBlockJustInserted = useSelect(\n\t\t( select ) =>\n\t\t\t!! select( blockEditorStore ).wasBlockJustInserted(\n\t\t\t\tclientId,\n\t\t\t\t'inserter_menu'\n\t\t\t),\n\t\t[ clientId ]\n\t);\n\tuseEffect( () => {\n\t\tconst lastScrollTo = scrollRef?.lastScrollTo.current;\n\t\tconst alreadyScrolledTo = lastScrollTo?.clientId === clientId;\n\t\tif (\n\t\t\talreadyScrolledTo ||\n\t\t\t! isSelected ||\n\t\t\t! scrollRef ||\n\t\t\t! wasBlockJustInserted ||\n\t\t\t! isLayoutCalculated\n\t\t) {\n\t\t\treturn;\n\t\t}\n\t\tscrollRef.scrollToElement( elementRef );\n\t\tlastScrollTo.clientId = clientId;\n\t}, [\n\t\tisSelected,\n\t\tscrollRef,\n\t\twasBlockJustInserted,\n\t\telementRef,\n\t\tisLayoutCalculated,\n\t\tclientId,\n\t] );\n};\n\nexport default useScrollUponInsertion;\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,SAAS,QAAQ,oBAAoB;AAC9C,SAASC,SAAS,QAAQ,iBAAiB;;AAE3C;AACA;AACA;AACA,SAASC,mBAAmB,QAAQ,sBAAsB;AAC1D,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,aAAa;AAEvD,MAAMC,sBAAsB,GAAGA,CAAE;EAChCC,QAAQ;EACRC,UAAU;EACVC,kBAAkB;EAClBC;AACD,CAAC,KAAM;EACN,MAAM;IAAEC;EAAU,CAAC,GAAGR,mBAAmB,CAAC,CAAC;EAC3C,MAAMS,oBAAoB,GAAGV,SAAS,CACnCW,MAAM,IACP,CAAC,CAAEA,MAAM,CAAER,gBAAiB,CAAC,CAACO,oBAAoB,CACjDL,QAAQ,EACR,eACD,CAAC,EACF,CAAEA,QAAQ,CACX,CAAC;EACDN,SAAS,CAAE,MAAM;IAChB,MAAMa,YAAY,GAAGH,SAAS,EAAEG,YAAY,CAACC,OAAO;IACpD,MAAMC,iBAAiB,GAAGF,YAAY,EAAEP,QAAQ,KAAKA,QAAQ;IAC7D,IACCS,iBAAiB,IACjB,CAAER,UAAU,IACZ,CAAEG,SAAS,IACX,CAAEC,oBAAoB,IACtB,CAAEH,kBAAkB,EACnB;MACD;IACD;IACAE,SAAS,CAACM,eAAe,CAAEP,UAAW,CAAC;IACvCI,YAAY,CAACP,QAAQ,GAAGA,QAAQ;EACjC,CAAC,EAAE,CACFC,UAAU,EACVG,SAAS,EACTC,oBAAoB,EACpBF,UAAU,EACVD,kBAAkB,EAClBF,QAAQ,CACP,CAAC;AACJ,CAAC;AAED,eAAeD,sBAAsB"}
1
+ {"version":3,"names":["useEffect","useSelect","useBlockListContext","store","blockEditorStore","useScrollUponInsertion","clientId","isSelected","isLayoutCalculated","elementRef","scrollRef","wasBlockJustInserted","select","lastScrollTo","current","alreadyScrolledTo","scrollToElement"],"sources":["@wordpress/block-editor/src/components/block-list/use-scroll-upon-insertion.native.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEffect } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { useBlockListContext } from './block-list-context';\nimport { store as blockEditorStore } from '../../store';\n\nconst useScrollUponInsertion = ( {\n\tclientId,\n\tisSelected,\n\tisLayoutCalculated,\n\telementRef,\n} ) => {\n\tconst { scrollRef } = useBlockListContext();\n\tconst wasBlockJustInserted = useSelect(\n\t\t( select ) =>\n\t\t\t!! select( blockEditorStore ).wasBlockJustInserted(\n\t\t\t\tclientId,\n\t\t\t\t'inserter_menu'\n\t\t\t),\n\t\t[ clientId ]\n\t);\n\tuseEffect( () => {\n\t\tconst lastScrollTo = scrollRef?.lastScrollTo.current;\n\t\tconst alreadyScrolledTo = lastScrollTo?.clientId === clientId;\n\t\tif (\n\t\t\talreadyScrolledTo ||\n\t\t\t! isSelected ||\n\t\t\t! scrollRef ||\n\t\t\t! wasBlockJustInserted ||\n\t\t\t! isLayoutCalculated\n\t\t) {\n\t\t\treturn;\n\t\t}\n\t\tscrollRef.scrollToElement( elementRef );\n\t\tlastScrollTo.clientId = clientId;\n\t}, [\n\t\tisSelected,\n\t\tscrollRef,\n\t\twasBlockJustInserted,\n\t\telementRef,\n\t\tisLayoutCalculated,\n\t\tclientId,\n\t] );\n};\n\nexport default useScrollUponInsertion;\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,SAAS,QAAQ,oBAAoB;AAC9C,SAASC,SAAS,QAAQ,iBAAiB;;AAE3C;AACA;AACA;AACA,SAASC,mBAAmB,QAAQ,sBAAsB;AAC1D,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,aAAa;AAEvD,MAAMC,sBAAsB,GAAGA,CAAE;EAChCC,QAAQ;EACRC,UAAU;EACVC,kBAAkB;EAClBC;AACD,CAAC,KAAM;EACN,MAAM;IAAEC;EAAU,CAAC,GAAGR,mBAAmB,CAAC,CAAC;EAC3C,MAAMS,oBAAoB,GAAGV,SAAS,CACnCW,MAAM,IACP,CAAC,CAAEA,MAAM,CAAER,gBAAiB,CAAC,CAACO,oBAAoB,CACjDL,QAAQ,EACR,eACD,CAAC,EACF,CAAEA,QAAQ,CACX,CAAC;EACDN,SAAS,CAAE,MAAM;IAChB,MAAMa,YAAY,GAAGH,SAAS,EAAEG,YAAY,CAACC,OAAO;IACpD,MAAMC,iBAAiB,GAAGF,YAAY,EAAEP,QAAQ,KAAKA,QAAQ;IAC7D,IACCS,iBAAiB,IACjB,CAAER,UAAU,IACZ,CAAEG,SAAS,IACX,CAAEC,oBAAoB,IACtB,CAAEH,kBAAkB,EACnB;MACD;IACD;IACAE,SAAS,CAACM,eAAe,CAAEP,UAAW,CAAC;IACvCI,YAAY,CAACP,QAAQ,GAAGA,QAAQ;EACjC,CAAC,EAAE,CACFC,UAAU,EACVG,SAAS,EACTC,oBAAoB,EACpBF,UAAU,EACVD,kBAAkB,EAClBF,QAAQ,CACP,CAAC;AACJ,CAAC;AAED,eAAeD,sBAAsB","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["classnames","useSelect","getDefaultBlockName","DefaultBlockAppender","ButtonBlockAppender","store","blockEditorStore","DefaultAppender","rootClientId","canInsertDefaultBlock","select","canInsertBlockType","createElement","className","BlockListAppender","CustomAppender","tagName","TagName","isDragOver","getBlockInsertionPoint","isBlockInsertionPointVisible","getBlockCount","insertionPoint","tabIndex","contentEditable"],"sources":["@wordpress/block-editor/src/components/block-list-appender/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { getDefaultBlockName } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport DefaultBlockAppender from '../default-block-appender';\nimport ButtonBlockAppender from '../button-block-appender';\nimport { store as blockEditorStore } from '../../store';\n\nfunction DefaultAppender( { rootClientId } ) {\n\tconst canInsertDefaultBlock = useSelect( ( select ) =>\n\t\tselect( blockEditorStore ).canInsertBlockType(\n\t\t\tgetDefaultBlockName(),\n\t\t\trootClientId\n\t\t)\n\t);\n\n\tif ( canInsertDefaultBlock ) {\n\t\t// Render the default block appender if the context supports use\n\t\t// of the default appender.\n\t\treturn <DefaultBlockAppender rootClientId={ rootClientId } />;\n\t}\n\n\t// Fallback in case the default block can't be inserted.\n\treturn (\n\t\t<ButtonBlockAppender\n\t\t\trootClientId={ rootClientId }\n\t\t\tclassName=\"block-list-appender__toggle\"\n\t\t/>\n\t);\n}\n\nexport default function BlockListAppender( {\n\trootClientId,\n\tCustomAppender,\n\tclassName,\n\ttagName: TagName = 'div',\n} ) {\n\tconst isDragOver = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockInsertionPoint,\n\t\t\t\tisBlockInsertionPointVisible,\n\t\t\t\tgetBlockCount,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst insertionPoint = getBlockInsertionPoint();\n\t\t\t// Ideally we should also check for `isDragging` but currently it\n\t\t\t// requires a lot more setup. We can revisit this once we refactor\n\t\t\t// the DnD utility hooks.\n\t\t\treturn (\n\t\t\t\tisBlockInsertionPointVisible() &&\n\t\t\t\trootClientId === insertionPoint?.rootClientId &&\n\t\t\t\tgetBlockCount( rootClientId ) === 0\n\t\t\t);\n\t\t},\n\t\t[ rootClientId ]\n\t);\n\n\treturn (\n\t\t<TagName\n\t\t\t// A `tabIndex` is used on the wrapping `div` element in order to\n\t\t\t// force a focus event to occur when an appender `button` element\n\t\t\t// is clicked. In some browsers (Firefox, Safari), button clicks do\n\t\t\t// not emit a focus event, which could cause this event to propagate\n\t\t\t// unexpectedly. The `tabIndex` ensures that the interaction is\n\t\t\t// captured as a focus, without also adding an extra tab stop.\n\t\t\t//\n\t\t\t// See: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#Clicking_and_focus\n\t\t\ttabIndex={ -1 }\n\t\t\tclassName={ classnames( 'block-list-appender wp-block', className, {\n\t\t\t\t'is-drag-over': isDragOver,\n\t\t\t} ) }\n\t\t\t// Needed in case the whole editor is content editable (for multi\n\t\t\t// selection). It fixes an edge case where ArrowDown and ArrowRight\n\t\t\t// should collapse the selection to the end of that selection and\n\t\t\t// not into the appender.\n\t\t\tcontentEditable={ false }\n\t\t\t// The appender exists to let you add the first Paragraph before\n\t\t\t// any is inserted. To that end, this appender should visually be\n\t\t\t// presented as a block. That means theme CSS should style it as if\n\t\t\t// it were an empty paragraph block. That means a `wp-block` class to\n\t\t\t// ensure the width is correct, and a [data-block] attribute to ensure\n\t\t\t// the correct margin is applied, especially for classic themes which\n\t\t\t// have commonly targeted that attribute for margins.\n\t\t\tdata-block\n\t\t>\n\t\t\t{ CustomAppender ? (\n\t\t\t\t<CustomAppender />\n\t\t\t) : (\n\t\t\t\t<DefaultAppender rootClientId={ rootClientId } />\n\t\t\t) }\n\t\t</TagName>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,OAAOA,UAAU,MAAM,YAAY;;AAEnC;AACA;AACA;AACA,SAASC,SAAS,QAAQ,iBAAiB;AAC3C,SAASC,mBAAmB,QAAQ,mBAAmB;;AAEvD;AACA;AACA;AACA,OAAOC,oBAAoB,MAAM,2BAA2B;AAC5D,OAAOC,mBAAmB,MAAM,0BAA0B;AAC1D,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,aAAa;AAEvD,SAASC,eAAeA,CAAE;EAAEC;AAAa,CAAC,EAAG;EAC5C,MAAMC,qBAAqB,GAAGR,SAAS,CAAIS,MAAM,IAChDA,MAAM,CAAEJ,gBAAiB,CAAC,CAACK,kBAAkB,CAC5CT,mBAAmB,CAAC,CAAC,EACrBM,YACD,CACD,CAAC;EAED,IAAKC,qBAAqB,EAAG;IAC5B;IACA;IACA,OAAOG,aAAA,CAACT,oBAAoB;MAACK,YAAY,EAAGA;IAAc,CAAE,CAAC;EAC9D;;EAEA;EACA,OACCI,aAAA,CAACR,mBAAmB;IACnBI,YAAY,EAAGA,YAAc;IAC7BK,SAAS,EAAC;EAA6B,CACvC,CAAC;AAEJ;AAEA,eAAe,SAASC,iBAAiBA,CAAE;EAC1CN,YAAY;EACZO,cAAc;EACdF,SAAS;EACTG,OAAO,EAAEC,OAAO,GAAG;AACpB,CAAC,EAAG;EACH,MAAMC,UAAU,GAAGjB,SAAS,CACzBS,MAAM,IAAM;IACb,MAAM;MACLS,sBAAsB;MACtBC,4BAA4B;MAC5BC;IACD,CAAC,GAAGX,MAAM,CAAEJ,gBAAiB,CAAC;IAC9B,MAAMgB,cAAc,GAAGH,sBAAsB,CAAC,CAAC;IAC/C;IACA;IACA;IACA,OACCC,4BAA4B,CAAC,CAAC,IAC9BZ,YAAY,KAAKc,cAAc,EAAEd,YAAY,IAC7Ca,aAAa,CAAEb,YAAa,CAAC,KAAK,CAAC;EAErC,CAAC,EACD,CAAEA,YAAY,CACf,CAAC;EAED,OACCI,aAAA,CAACK;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAAA;IACAM,QAAQ,EAAG,CAAC,CAAG;IACfV,SAAS,EAAGb,UAAU,CAAE,8BAA8B,EAAEa,SAAS,EAAE;MAClE,cAAc,EAAEK;IACjB,CAAE;IACF;IACA;IACA;IACA;IAAA;IACAM,eAAe,EAAG;IAClB;IACA;IACA;IACA;IACA;IACA;IACA;IAAA;IACA;EAAU,GAERT,cAAc,GACfH,aAAA,CAACG,cAAc,MAAE,CAAC,GAElBH,aAAA,CAACL,eAAe;IAACC,YAAY,EAAGA;EAAc,CAAE,CAEzC,CAAC;AAEZ"}
1
+ {"version":3,"names":["classnames","useSelect","getDefaultBlockName","DefaultBlockAppender","ButtonBlockAppender","store","blockEditorStore","DefaultAppender","rootClientId","canInsertDefaultBlock","select","canInsertBlockType","createElement","className","BlockListAppender","CustomAppender","tagName","TagName","isDragOver","getBlockInsertionPoint","isBlockInsertionPointVisible","getBlockCount","insertionPoint","tabIndex","contentEditable"],"sources":["@wordpress/block-editor/src/components/block-list-appender/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { getDefaultBlockName } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport DefaultBlockAppender from '../default-block-appender';\nimport ButtonBlockAppender from '../button-block-appender';\nimport { store as blockEditorStore } from '../../store';\n\nfunction DefaultAppender( { rootClientId } ) {\n\tconst canInsertDefaultBlock = useSelect( ( select ) =>\n\t\tselect( blockEditorStore ).canInsertBlockType(\n\t\t\tgetDefaultBlockName(),\n\t\t\trootClientId\n\t\t)\n\t);\n\n\tif ( canInsertDefaultBlock ) {\n\t\t// Render the default block appender if the context supports use\n\t\t// of the default appender.\n\t\treturn <DefaultBlockAppender rootClientId={ rootClientId } />;\n\t}\n\n\t// Fallback in case the default block can't be inserted.\n\treturn (\n\t\t<ButtonBlockAppender\n\t\t\trootClientId={ rootClientId }\n\t\t\tclassName=\"block-list-appender__toggle\"\n\t\t/>\n\t);\n}\n\nexport default function BlockListAppender( {\n\trootClientId,\n\tCustomAppender,\n\tclassName,\n\ttagName: TagName = 'div',\n} ) {\n\tconst isDragOver = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockInsertionPoint,\n\t\t\t\tisBlockInsertionPointVisible,\n\t\t\t\tgetBlockCount,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst insertionPoint = getBlockInsertionPoint();\n\t\t\t// Ideally we should also check for `isDragging` but currently it\n\t\t\t// requires a lot more setup. We can revisit this once we refactor\n\t\t\t// the DnD utility hooks.\n\t\t\treturn (\n\t\t\t\tisBlockInsertionPointVisible() &&\n\t\t\t\trootClientId === insertionPoint?.rootClientId &&\n\t\t\t\tgetBlockCount( rootClientId ) === 0\n\t\t\t);\n\t\t},\n\t\t[ rootClientId ]\n\t);\n\n\treturn (\n\t\t<TagName\n\t\t\t// A `tabIndex` is used on the wrapping `div` element in order to\n\t\t\t// force a focus event to occur when an appender `button` element\n\t\t\t// is clicked. In some browsers (Firefox, Safari), button clicks do\n\t\t\t// not emit a focus event, which could cause this event to propagate\n\t\t\t// unexpectedly. The `tabIndex` ensures that the interaction is\n\t\t\t// captured as a focus, without also adding an extra tab stop.\n\t\t\t//\n\t\t\t// See: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#Clicking_and_focus\n\t\t\ttabIndex={ -1 }\n\t\t\tclassName={ classnames( 'block-list-appender wp-block', className, {\n\t\t\t\t'is-drag-over': isDragOver,\n\t\t\t} ) }\n\t\t\t// Needed in case the whole editor is content editable (for multi\n\t\t\t// selection). It fixes an edge case where ArrowDown and ArrowRight\n\t\t\t// should collapse the selection to the end of that selection and\n\t\t\t// not into the appender.\n\t\t\tcontentEditable={ false }\n\t\t\t// The appender exists to let you add the first Paragraph before\n\t\t\t// any is inserted. To that end, this appender should visually be\n\t\t\t// presented as a block. That means theme CSS should style it as if\n\t\t\t// it were an empty paragraph block. That means a `wp-block` class to\n\t\t\t// ensure the width is correct, and a [data-block] attribute to ensure\n\t\t\t// the correct margin is applied, especially for classic themes which\n\t\t\t// have commonly targeted that attribute for margins.\n\t\t\tdata-block\n\t\t>\n\t\t\t{ CustomAppender ? (\n\t\t\t\t<CustomAppender />\n\t\t\t) : (\n\t\t\t\t<DefaultAppender rootClientId={ rootClientId } />\n\t\t\t) }\n\t\t</TagName>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,OAAOA,UAAU,MAAM,YAAY;;AAEnC;AACA;AACA;AACA,SAASC,SAAS,QAAQ,iBAAiB;AAC3C,SAASC,mBAAmB,QAAQ,mBAAmB;;AAEvD;AACA;AACA;AACA,OAAOC,oBAAoB,MAAM,2BAA2B;AAC5D,OAAOC,mBAAmB,MAAM,0BAA0B;AAC1D,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,aAAa;AAEvD,SAASC,eAAeA,CAAE;EAAEC;AAAa,CAAC,EAAG;EAC5C,MAAMC,qBAAqB,GAAGR,SAAS,CAAIS,MAAM,IAChDA,MAAM,CAAEJ,gBAAiB,CAAC,CAACK,kBAAkB,CAC5CT,mBAAmB,CAAC,CAAC,EACrBM,YACD,CACD,CAAC;EAED,IAAKC,qBAAqB,EAAG;IAC5B;IACA;IACA,OAAOG,aAAA,CAACT,oBAAoB;MAACK,YAAY,EAAGA;IAAc,CAAE,CAAC;EAC9D;;EAEA;EACA,OACCI,aAAA,CAACR,mBAAmB;IACnBI,YAAY,EAAGA,YAAc;IAC7BK,SAAS,EAAC;EAA6B,CACvC,CAAC;AAEJ;AAEA,eAAe,SAASC,iBAAiBA,CAAE;EAC1CN,YAAY;EACZO,cAAc;EACdF,SAAS;EACTG,OAAO,EAAEC,OAAO,GAAG;AACpB,CAAC,EAAG;EACH,MAAMC,UAAU,GAAGjB,SAAS,CACzBS,MAAM,IAAM;IACb,MAAM;MACLS,sBAAsB;MACtBC,4BAA4B;MAC5BC;IACD,CAAC,GAAGX,MAAM,CAAEJ,gBAAiB,CAAC;IAC9B,MAAMgB,cAAc,GAAGH,sBAAsB,CAAC,CAAC;IAC/C;IACA;IACA;IACA,OACCC,4BAA4B,CAAC,CAAC,IAC9BZ,YAAY,KAAKc,cAAc,EAAEd,YAAY,IAC7Ca,aAAa,CAAEb,YAAa,CAAC,KAAK,CAAC;EAErC,CAAC,EACD,CAAEA,YAAY,CACf,CAAC;EAED,OACCI,aAAA,CAACK;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAAA;IACAM,QAAQ,EAAG,CAAC,CAAG;IACfV,SAAS,EAAGb,UAAU,CAAE,8BAA8B,EAAEa,SAAS,EAAE;MAClE,cAAc,EAAEK;IACjB,CAAE;IACF;IACA;IACA;IACA;IAAA;IACAM,eAAe,EAAG;IAClB;IACA;IACA;IACA;IACA;IACA;IACA;IAAA;IACA;EAAU,GAERT,cAAc,GACfH,aAAA,CAACG,cAAc,MAAE,CAAC,GAElBH,aAAA,CAACL,eAAe;IAACC,YAAY,EAAGA;EAAc,CAAE,CAEzC,CAAC;AAEZ","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["useSelect","getDefaultBlockName","DefaultBlockAppender","styles","store","blockEditorStore","DefaultAppender","rootClientId","showSeparator","blockClientIds","canInsertDefaultBlock","select","getBlockOrder","canInsertBlockType","createElement","lastBlockClientId","length","containerStyle","blockListAppender","placeholder","BlockListAppender","renderAppender","CustomAppender","isLocked","getTemplateLock"],"sources":["@wordpress/block-editor/src/components/block-list-appender/index.native.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { getDefaultBlockName } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport DefaultBlockAppender from '../default-block-appender';\nimport styles from './style.scss';\nimport { store as blockEditorStore } from '../../store';\n\nfunction DefaultAppender( { rootClientId, showSeparator } ) {\n\tconst { blockClientIds, canInsertDefaultBlock } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockOrder, canInsertBlockType } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\treturn {\n\t\t\t\tblockClientIds: getBlockOrder( rootClientId ),\n\t\t\t\tcanInsertDefaultBlock: canInsertBlockType(\n\t\t\t\t\tgetDefaultBlockName(),\n\t\t\t\t\trootClientId\n\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ rootClientId ]\n\t);\n\n\tif ( ! canInsertDefaultBlock ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<DefaultBlockAppender\n\t\t\trootClientId={ rootClientId }\n\t\t\tlastBlockClientId={ blockClientIds[ blockClientIds.length - 1 ] }\n\t\t\tcontainerStyle={ styles.blockListAppender }\n\t\t\tplaceholder={ blockClientIds.length > 0 ? '' : null }\n\t\t\tshowSeparator={ showSeparator }\n\t\t/>\n\t);\n}\n\nexport default function BlockListAppender( {\n\trootClientId,\n\trenderAppender: CustomAppender,\n\tshowSeparator,\n} ) {\n\tconst isLocked = useSelect(\n\t\t( select ) =>\n\t\t\t!! select( blockEditorStore ).getTemplateLock( rootClientId ),\n\t\t[ rootClientId ]\n\t);\n\n\tif ( isLocked ) {\n\t\treturn null;\n\t}\n\n\tif ( CustomAppender ) {\n\t\treturn <CustomAppender showSeparator={ showSeparator } />;\n\t}\n\n\treturn (\n\t\t<DefaultAppender\n\t\t\trootClientId={ rootClientId }\n\t\t\tshowSeparator={ showSeparator }\n\t\t/>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,SAAS,QAAQ,iBAAiB;AAC3C,SAASC,mBAAmB,QAAQ,mBAAmB;;AAEvD;AACA;AACA;AACA,OAAOC,oBAAoB,MAAM,2BAA2B;AAC5D,OAAOC,MAAM,MAAM,cAAc;AACjC,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,aAAa;AAEvD,SAASC,eAAeA,CAAE;EAAEC,YAAY;EAAEC;AAAc,CAAC,EAAG;EAC3D,MAAM;IAAEC,cAAc;IAAEC;EAAsB,CAAC,GAAGV,SAAS,CACxDW,MAAM,IAAM;IACb,MAAM;MAAEC,aAAa;MAAEC;IAAmB,CAAC,GAC1CF,MAAM,CAAEN,gBAAiB,CAAC;IAC3B,OAAO;MACNI,cAAc,EAAEG,aAAa,CAAEL,YAAa,CAAC;MAC7CG,qBAAqB,EAAEG,kBAAkB,CACxCZ,mBAAmB,CAAC,CAAC,EACrBM,YACD;IACD,CAAC;EACF,CAAC,EACD,CAAEA,YAAY,CACf,CAAC;EAED,IAAK,CAAEG,qBAAqB,EAAG;IAC9B,OAAO,IAAI;EACZ;EAEA,OACCI,aAAA,CAACZ,oBAAoB;IACpBK,YAAY,EAAGA,YAAc;IAC7BQ,iBAAiB,EAAGN,cAAc,CAAEA,cAAc,CAACO,MAAM,GAAG,CAAC,CAAI;IACjEC,cAAc,EAAGd,MAAM,CAACe,iBAAmB;IAC3CC,WAAW,EAAGV,cAAc,CAACO,MAAM,GAAG,CAAC,GAAG,EAAE,GAAG,IAAM;IACrDR,aAAa,EAAGA;EAAe,CAC/B,CAAC;AAEJ;AAEA,eAAe,SAASY,iBAAiBA,CAAE;EAC1Cb,YAAY;EACZc,cAAc,EAAEC,cAAc;EAC9Bd;AACD,CAAC,EAAG;EACH,MAAMe,QAAQ,GAAGvB,SAAS,CACvBW,MAAM,IACP,CAAC,CAAEA,MAAM,CAAEN,gBAAiB,CAAC,CAACmB,eAAe,CAAEjB,YAAa,CAAC,EAC9D,CAAEA,YAAY,CACf,CAAC;EAED,IAAKgB,QAAQ,EAAG;IACf,OAAO,IAAI;EACZ;EAEA,IAAKD,cAAc,EAAG;IACrB,OAAOR,aAAA,CAACQ,cAAc;MAACd,aAAa,EAAGA;IAAe,CAAE,CAAC;EAC1D;EAEA,OACCM,aAAA,CAACR,eAAe;IACfC,YAAY,EAAGA,YAAc;IAC7BC,aAAa,EAAGA;EAAe,CAC/B,CAAC;AAEJ"}
1
+ {"version":3,"names":["useSelect","getDefaultBlockName","DefaultBlockAppender","styles","store","blockEditorStore","DefaultAppender","rootClientId","showSeparator","blockClientIds","canInsertDefaultBlock","select","getBlockOrder","canInsertBlockType","createElement","lastBlockClientId","length","containerStyle","blockListAppender","placeholder","BlockListAppender","renderAppender","CustomAppender","isLocked","getTemplateLock"],"sources":["@wordpress/block-editor/src/components/block-list-appender/index.native.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { getDefaultBlockName } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport DefaultBlockAppender from '../default-block-appender';\nimport styles from './style.scss';\nimport { store as blockEditorStore } from '../../store';\n\nfunction DefaultAppender( { rootClientId, showSeparator } ) {\n\tconst { blockClientIds, canInsertDefaultBlock } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockOrder, canInsertBlockType } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\treturn {\n\t\t\t\tblockClientIds: getBlockOrder( rootClientId ),\n\t\t\t\tcanInsertDefaultBlock: canInsertBlockType(\n\t\t\t\t\tgetDefaultBlockName(),\n\t\t\t\t\trootClientId\n\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ rootClientId ]\n\t);\n\n\tif ( ! canInsertDefaultBlock ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<DefaultBlockAppender\n\t\t\trootClientId={ rootClientId }\n\t\t\tlastBlockClientId={ blockClientIds[ blockClientIds.length - 1 ] }\n\t\t\tcontainerStyle={ styles.blockListAppender }\n\t\t\tplaceholder={ blockClientIds.length > 0 ? '' : null }\n\t\t\tshowSeparator={ showSeparator }\n\t\t/>\n\t);\n}\n\nexport default function BlockListAppender( {\n\trootClientId,\n\trenderAppender: CustomAppender,\n\tshowSeparator,\n} ) {\n\tconst isLocked = useSelect(\n\t\t( select ) =>\n\t\t\t!! select( blockEditorStore ).getTemplateLock( rootClientId ),\n\t\t[ rootClientId ]\n\t);\n\n\tif ( isLocked ) {\n\t\treturn null;\n\t}\n\n\tif ( CustomAppender ) {\n\t\treturn <CustomAppender showSeparator={ showSeparator } />;\n\t}\n\n\treturn (\n\t\t<DefaultAppender\n\t\t\trootClientId={ rootClientId }\n\t\t\tshowSeparator={ showSeparator }\n\t\t/>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,SAAS,QAAQ,iBAAiB;AAC3C,SAASC,mBAAmB,QAAQ,mBAAmB;;AAEvD;AACA;AACA;AACA,OAAOC,oBAAoB,MAAM,2BAA2B;AAC5D,OAAOC,MAAM,MAAM,cAAc;AACjC,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,aAAa;AAEvD,SAASC,eAAeA,CAAE;EAAEC,YAAY;EAAEC;AAAc,CAAC,EAAG;EAC3D,MAAM;IAAEC,cAAc;IAAEC;EAAsB,CAAC,GAAGV,SAAS,CACxDW,MAAM,IAAM;IACb,MAAM;MAAEC,aAAa;MAAEC;IAAmB,CAAC,GAC1CF,MAAM,CAAEN,gBAAiB,CAAC;IAC3B,OAAO;MACNI,cAAc,EAAEG,aAAa,CAAEL,YAAa,CAAC;MAC7CG,qBAAqB,EAAEG,kBAAkB,CACxCZ,mBAAmB,CAAC,CAAC,EACrBM,YACD;IACD,CAAC;EACF,CAAC,EACD,CAAEA,YAAY,CACf,CAAC;EAED,IAAK,CAAEG,qBAAqB,EAAG;IAC9B,OAAO,IAAI;EACZ;EAEA,OACCI,aAAA,CAACZ,oBAAoB;IACpBK,YAAY,EAAGA,YAAc;IAC7BQ,iBAAiB,EAAGN,cAAc,CAAEA,cAAc,CAACO,MAAM,GAAG,CAAC,CAAI;IACjEC,cAAc,EAAGd,MAAM,CAACe,iBAAmB;IAC3CC,WAAW,EAAGV,cAAc,CAACO,MAAM,GAAG,CAAC,GAAG,EAAE,GAAG,IAAM;IACrDR,aAAa,EAAGA;EAAe,CAC/B,CAAC;AAEJ;AAEA,eAAe,SAASY,iBAAiBA,CAAE;EAC1Cb,YAAY;EACZc,cAAc,EAAEC,cAAc;EAC9Bd;AACD,CAAC,EAAG;EACH,MAAMe,QAAQ,GAAGvB,SAAS,CACvBW,MAAM,IACP,CAAC,CAAEA,MAAM,CAAEN,gBAAiB,CAAC,CAACmB,eAAe,CAAEjB,YAAa,CAAC,EAC9D,CAAEA,YAAY,CACf,CAAC;EAED,IAAKgB,QAAQ,EAAG;IACf,OAAO,IAAI;EACZ;EAEA,IAAKD,cAAc,EAAG;IACrB,OAAOR,aAAA,CAACQ,cAAc;MAACd,aAAa,EAAGA;IAAe,CAAE,CAAC;EAC1D;EAEA,OACCM,aAAA,CAACR,eAAe;IACfC,YAAY,EAAGA,YAAc;IAC7BC,aAAa,EAAGA;EAAe,CAC/B,CAAC;AAEJ","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["default","BlockLockMenuItem","BlockLockModal","BlockLockToolbar","useBlockLock"],"sources":["@wordpress/block-editor/src/components/block-lock/index.js"],"sourcesContent":["export { default as BlockLockMenuItem } from './menu-item';\nexport { default as BlockLockModal } from './modal';\nexport { default as BlockLockToolbar } from './toolbar';\nexport { default as useBlockLock } from './use-block-lock';\n"],"mappings":"AAAA,SAASA,OAAO,IAAIC,iBAAiB,QAAQ,aAAa;AAC1D,SAASD,OAAO,IAAIE,cAAc,QAAQ,SAAS;AACnD,SAASF,OAAO,IAAIG,gBAAgB,QAAQ,WAAW;AACvD,SAASH,OAAO,IAAII,YAAY,QAAQ,kBAAkB"}
1
+ {"version":3,"names":["default","BlockLockMenuItem","BlockLockModal","BlockLockToolbar","useBlockLock"],"sources":["@wordpress/block-editor/src/components/block-lock/index.js"],"sourcesContent":["export { default as BlockLockMenuItem } from './menu-item';\nexport { default as BlockLockModal } from './modal';\nexport { default as BlockLockToolbar } from './toolbar';\nexport { default as useBlockLock } from './use-block-lock';\n"],"mappings":"AAAA,SAASA,OAAO,IAAIC,iBAAiB,QAAQ,aAAa;AAC1D,SAASD,OAAO,IAAIE,cAAc,QAAQ,SAAS;AACnD,SAASF,OAAO,IAAIG,gBAAgB,QAAQ,WAAW;AACvD,SAASH,OAAO,IAAII,YAAY,QAAQ,kBAAkB","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["__","useReducer","MenuItem","lockOutline","unlock","useBlockLock","BlockLockModal","BlockLockMenuItem","clientId","canLock","isLocked","isModalOpen","toggleModal","isActive","label","createElement","Fragment","icon","onClick","onClose"],"sources":["@wordpress/block-editor/src/components/block-lock/menu-item.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useReducer } from '@wordpress/element';\nimport { MenuItem } from '@wordpress/components';\nimport { lockOutline, unlock } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport useBlockLock from './use-block-lock';\nimport BlockLockModal from './modal';\n\nexport default function BlockLockMenuItem( { clientId } ) {\n\tconst { canLock, isLocked } = useBlockLock( clientId );\n\n\tconst [ isModalOpen, toggleModal ] = useReducer(\n\t\t( isActive ) => ! isActive,\n\t\tfalse\n\t);\n\n\tif ( ! canLock ) {\n\t\treturn null;\n\t}\n\n\tconst label = isLocked ? __( 'Unlock' ) : __( 'Lock' );\n\n\treturn (\n\t\t<>\n\t\t\t<MenuItem\n\t\t\t\ticon={ isLocked ? unlock : lockOutline }\n\t\t\t\tonClick={ toggleModal }\n\t\t\t\taria-expanded={ isModalOpen }\n\t\t\t\taria-haspopup=\"dialog\"\n\t\t\t>\n\t\t\t\t{ label }\n\t\t\t</MenuItem>\n\t\t\t{ isModalOpen && (\n\t\t\t\t<BlockLockModal clientId={ clientId } onClose={ toggleModal } />\n\t\t\t) }\n\t\t</>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,EAAE,QAAQ,iBAAiB;AACpC,SAASC,UAAU,QAAQ,oBAAoB;AAC/C,SAASC,QAAQ,QAAQ,uBAAuB;AAChD,SAASC,WAAW,EAAEC,MAAM,QAAQ,kBAAkB;;AAEtD;AACA;AACA;AACA,OAAOC,YAAY,MAAM,kBAAkB;AAC3C,OAAOC,cAAc,MAAM,SAAS;AAEpC,eAAe,SAASC,iBAAiBA,CAAE;EAAEC;AAAS,CAAC,EAAG;EACzD,MAAM;IAAEC,OAAO;IAAEC;EAAS,CAAC,GAAGL,YAAY,CAAEG,QAAS,CAAC;EAEtD,MAAM,CAAEG,WAAW,EAAEC,WAAW,CAAE,GAAGX,UAAU,CAC5CY,QAAQ,IAAM,CAAEA,QAAQ,EAC1B,KACD,CAAC;EAED,IAAK,CAAEJ,OAAO,EAAG;IAChB,OAAO,IAAI;EACZ;EAEA,MAAMK,KAAK,GAAGJ,QAAQ,GAAGV,EAAE,CAAE,QAAS,CAAC,GAAGA,EAAE,CAAE,MAAO,CAAC;EAEtD,OACCe,aAAA,CAAAC,QAAA,QACCD,aAAA,CAACb,QAAQ;IACRe,IAAI,EAAGP,QAAQ,GAAGN,MAAM,GAAGD,WAAa;IACxCe,OAAO,EAAGN,WAAa;IACvB,iBAAgBD,WAAa;IAC7B,iBAAc;EAAQ,GAEpBG,KACO,CAAC,EACTH,WAAW,IACZI,aAAA,CAACT,cAAc;IAACE,QAAQ,EAAGA,QAAU;IAACW,OAAO,EAAGP;EAAa,CAAE,CAE/D,CAAC;AAEL"}
1
+ {"version":3,"names":["__","useReducer","MenuItem","lockOutline","unlock","useBlockLock","BlockLockModal","BlockLockMenuItem","clientId","canLock","isLocked","isModalOpen","toggleModal","isActive","label","createElement","Fragment","icon","onClick","onClose"],"sources":["@wordpress/block-editor/src/components/block-lock/menu-item.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useReducer } from '@wordpress/element';\nimport { MenuItem } from '@wordpress/components';\nimport { lockOutline, unlock } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport useBlockLock from './use-block-lock';\nimport BlockLockModal from './modal';\n\nexport default function BlockLockMenuItem( { clientId } ) {\n\tconst { canLock, isLocked } = useBlockLock( clientId );\n\n\tconst [ isModalOpen, toggleModal ] = useReducer(\n\t\t( isActive ) => ! isActive,\n\t\tfalse\n\t);\n\n\tif ( ! canLock ) {\n\t\treturn null;\n\t}\n\n\tconst label = isLocked ? __( 'Unlock' ) : __( 'Lock' );\n\n\treturn (\n\t\t<>\n\t\t\t<MenuItem\n\t\t\t\ticon={ isLocked ? unlock : lockOutline }\n\t\t\t\tonClick={ toggleModal }\n\t\t\t\taria-expanded={ isModalOpen }\n\t\t\t\taria-haspopup=\"dialog\"\n\t\t\t>\n\t\t\t\t{ label }\n\t\t\t</MenuItem>\n\t\t\t{ isModalOpen && (\n\t\t\t\t<BlockLockModal clientId={ clientId } onClose={ toggleModal } />\n\t\t\t) }\n\t\t</>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,EAAE,QAAQ,iBAAiB;AACpC,SAASC,UAAU,QAAQ,oBAAoB;AAC/C,SAASC,QAAQ,QAAQ,uBAAuB;AAChD,SAASC,WAAW,EAAEC,MAAM,QAAQ,kBAAkB;;AAEtD;AACA;AACA;AACA,OAAOC,YAAY,MAAM,kBAAkB;AAC3C,OAAOC,cAAc,MAAM,SAAS;AAEpC,eAAe,SAASC,iBAAiBA,CAAE;EAAEC;AAAS,CAAC,EAAG;EACzD,MAAM;IAAEC,OAAO;IAAEC;EAAS,CAAC,GAAGL,YAAY,CAAEG,QAAS,CAAC;EAEtD,MAAM,CAAEG,WAAW,EAAEC,WAAW,CAAE,GAAGX,UAAU,CAC5CY,QAAQ,IAAM,CAAEA,QAAQ,EAC1B,KACD,CAAC;EAED,IAAK,CAAEJ,OAAO,EAAG;IAChB,OAAO,IAAI;EACZ;EAEA,MAAMK,KAAK,GAAGJ,QAAQ,GAAGV,EAAE,CAAE,QAAS,CAAC,GAAGA,EAAE,CAAE,MAAO,CAAC;EAEtD,OACCe,aAAA,CAAAC,QAAA,QACCD,aAAA,CAACb,QAAQ;IACRe,IAAI,EAAGP,QAAQ,GAAGN,MAAM,GAAGD,WAAa;IACxCe,OAAO,EAAGN,WAAa;IACvB,iBAAgBD,WAAa;IAC7B,iBAAc;EAAQ,GAEpBG,KACO,CAAC,EACTH,WAAW,IACZI,aAAA,CAACT,cAAc;IAACE,QAAQ,EAAGA,QAAU;IAACW,OAAO,EAAGP;EAAa,CAAE,CAE/D,CAAC;AAEL","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["__","sprintf","useEffect","useState","Button","CheckboxControl","Flex","FlexItem","Icon","Modal","ToggleControl","lock","lockIcon","unlock","unlockIcon","useInstanceId","useDispatch","useSelect","getBlockType","useBlockLock","useBlockDisplayInformation","store","blockEditorStore","ALLOWS_EDIT_LOCKING","getTemplateLockValue","remove","move","BlockLockModal","clientId","onClose","setLock","canEdit","canMove","canRemove","allowsEditLocking","templateLock","hasTemplateLock","select","getBlockName","getBlockAttributes","blockName","blockType","includes","attributes","applyTemplateLock","setApplyTemplateLock","updateBlockAttributes","blockInformation","instanceId","edit","isAllChecked","Object","values","every","Boolean","isMixed","some","createElement","title","overlayClassName","onRequestClose","onSubmit","event","preventDefault","undefined","role","className","__nextHasNoMarginBottom","label","id","checked","indeterminate","onChange","newValue","prevLock","icon","disabled","justify","expanded","variant","onClick","type"],"sources":["@wordpress/block-editor/src/components/block-lock/modal.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useEffect, useState } from '@wordpress/element';\nimport {\n\tButton,\n\tCheckboxControl,\n\tFlex,\n\tFlexItem,\n\tIcon,\n\tModal,\n\tToggleControl,\n} from '@wordpress/components';\nimport { lock as lockIcon, unlock as unlockIcon } from '@wordpress/icons';\nimport { useInstanceId } from '@wordpress/compose';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { getBlockType } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport useBlockLock from './use-block-lock';\nimport useBlockDisplayInformation from '../use-block-display-information';\nimport { store as blockEditorStore } from '../../store';\n\n// Entity based blocks which allow edit locking\nconst ALLOWS_EDIT_LOCKING = [ 'core/block', 'core/navigation' ];\n\nfunction getTemplateLockValue( lock ) {\n\t// Prevents all operations.\n\tif ( lock.remove && lock.move ) {\n\t\treturn 'all';\n\t}\n\n\t// Prevents inserting or removing blocks, but allows moving existing blocks.\n\tif ( lock.remove && ! lock.move ) {\n\t\treturn 'insert';\n\t}\n\n\treturn false;\n}\n\nexport default function BlockLockModal( { clientId, onClose } ) {\n\tconst [ lock, setLock ] = useState( { move: false, remove: false } );\n\tconst { canEdit, canMove, canRemove } = useBlockLock( clientId );\n\tconst { allowsEditLocking, templateLock, hasTemplateLock } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockName, getBlockAttributes } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\tconst blockName = getBlockName( clientId );\n\t\t\tconst blockType = getBlockType( blockName );\n\n\t\t\treturn {\n\t\t\t\tallowsEditLocking: ALLOWS_EDIT_LOCKING.includes( blockName ),\n\t\t\t\ttemplateLock: getBlockAttributes( clientId )?.templateLock,\n\t\t\t\thasTemplateLock: !! blockType?.attributes?.templateLock,\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\tconst [ applyTemplateLock, setApplyTemplateLock ] = useState(\n\t\t!! templateLock\n\t);\n\tconst { updateBlockAttributes } = useDispatch( blockEditorStore );\n\tconst blockInformation = useBlockDisplayInformation( clientId );\n\tconst instanceId = useInstanceId(\n\t\tBlockLockModal,\n\t\t'block-editor-block-lock-modal__options-title'\n\t);\n\n\tuseEffect( () => {\n\t\tsetLock( {\n\t\t\tmove: ! canMove,\n\t\t\tremove: ! canRemove,\n\t\t\t...( allowsEditLocking ? { edit: ! canEdit } : {} ),\n\t\t} );\n\t}, [ canEdit, canMove, canRemove, allowsEditLocking ] );\n\n\tconst isAllChecked = Object.values( lock ).every( Boolean );\n\tconst isMixed = Object.values( lock ).some( Boolean ) && ! isAllChecked;\n\n\treturn (\n\t\t<Modal\n\t\t\ttitle={ sprintf(\n\t\t\t\t/* translators: %s: Name of the block. */\n\t\t\t\t__( 'Lock %s' ),\n\t\t\t\tblockInformation.title\n\t\t\t) }\n\t\t\toverlayClassName=\"block-editor-block-lock-modal\"\n\t\t\tonRequestClose={ onClose }\n\t\t>\n\t\t\t<p>\n\t\t\t\t{ __(\n\t\t\t\t\t'Choose specific attributes to restrict or lock all available options.'\n\t\t\t\t) }\n\t\t\t</p>\n\t\t\t<form\n\t\t\t\tonSubmit={ ( event ) => {\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\tupdateBlockAttributes( [ clientId ], {\n\t\t\t\t\t\tlock,\n\t\t\t\t\t\ttemplateLock: applyTemplateLock\n\t\t\t\t\t\t\t? getTemplateLockValue( lock )\n\t\t\t\t\t\t\t: undefined,\n\t\t\t\t\t} );\n\t\t\t\t\tonClose();\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<div\n\t\t\t\t\trole=\"group\"\n\t\t\t\t\taria-labelledby={ instanceId }\n\t\t\t\t\tclassName=\"block-editor-block-lock-modal__options\"\n\t\t\t\t>\n\t\t\t\t\t<CheckboxControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tclassName=\"block-editor-block-lock-modal__options-title\"\n\t\t\t\t\t\tlabel={\n\t\t\t\t\t\t\t<span id={ instanceId }>{ __( 'Lock all' ) }</span>\n\t\t\t\t\t\t}\n\t\t\t\t\t\tchecked={ isAllChecked }\n\t\t\t\t\t\tindeterminate={ isMixed }\n\t\t\t\t\t\tonChange={ ( newValue ) =>\n\t\t\t\t\t\t\tsetLock( {\n\t\t\t\t\t\t\t\tmove: newValue,\n\t\t\t\t\t\t\t\tremove: newValue,\n\t\t\t\t\t\t\t\t...( allowsEditLocking\n\t\t\t\t\t\t\t\t\t? { edit: newValue }\n\t\t\t\t\t\t\t\t\t: {} ),\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t<ul className=\"block-editor-block-lock-modal__checklist\">\n\t\t\t\t\t\t{ allowsEditLocking && (\n\t\t\t\t\t\t\t<li className=\"block-editor-block-lock-modal__checklist-item\">\n\t\t\t\t\t\t\t\t<CheckboxControl\n\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Restrict editing' ) }\n\t\t\t\t\t\t\t\t\tchecked={ !! lock.edit }\n\t\t\t\t\t\t\t\t\tonChange={ ( edit ) =>\n\t\t\t\t\t\t\t\t\t\tsetLock( ( prevLock ) => ( {\n\t\t\t\t\t\t\t\t\t\t\t...prevLock,\n\t\t\t\t\t\t\t\t\t\t\tedit,\n\t\t\t\t\t\t\t\t\t\t} ) )\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\tclassName=\"block-editor-block-lock-modal__lock-icon\"\n\t\t\t\t\t\t\t\t\ticon={ lock.edit ? lockIcon : unlockIcon }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<li className=\"block-editor-block-lock-modal__checklist-item\">\n\t\t\t\t\t\t\t<CheckboxControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Disable movement' ) }\n\t\t\t\t\t\t\t\tchecked={ lock.move }\n\t\t\t\t\t\t\t\tonChange={ ( move ) =>\n\t\t\t\t\t\t\t\t\tsetLock( ( prevLock ) => ( {\n\t\t\t\t\t\t\t\t\t\t...prevLock,\n\t\t\t\t\t\t\t\t\t\tmove,\n\t\t\t\t\t\t\t\t\t} ) )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\tclassName=\"block-editor-block-lock-modal__lock-icon\"\n\t\t\t\t\t\t\t\ticon={ lock.move ? lockIcon : unlockIcon }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</li>\n\t\t\t\t\t\t<li className=\"block-editor-block-lock-modal__checklist-item\">\n\t\t\t\t\t\t\t<CheckboxControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Prevent removal' ) }\n\t\t\t\t\t\t\t\tchecked={ lock.remove }\n\t\t\t\t\t\t\t\tonChange={ ( remove ) =>\n\t\t\t\t\t\t\t\t\tsetLock( ( prevLock ) => ( {\n\t\t\t\t\t\t\t\t\t\t...prevLock,\n\t\t\t\t\t\t\t\t\t\tremove,\n\t\t\t\t\t\t\t\t\t} ) )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\tclassName=\"block-editor-block-lock-modal__lock-icon\"\n\t\t\t\t\t\t\t\ticon={ lock.remove ? lockIcon : unlockIcon }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</li>\n\t\t\t\t\t</ul>\n\t\t\t\t\t{ hasTemplateLock && (\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tclassName=\"block-editor-block-lock-modal__template-lock\"\n\t\t\t\t\t\t\tlabel={ __( 'Apply to all blocks inside' ) }\n\t\t\t\t\t\t\tchecked={ applyTemplateLock }\n\t\t\t\t\t\t\tdisabled={ lock.move && ! lock.remove }\n\t\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\t\tsetApplyTemplateLock( ! applyTemplateLock )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</div>\n\t\t\t\t<Flex\n\t\t\t\t\tclassName=\"block-editor-block-lock-modal__actions\"\n\t\t\t\t\tjustify=\"flex-end\"\n\t\t\t\t\texpanded={ false }\n\t\t\t\t>\n\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t<Button variant=\"tertiary\" onClick={ onClose }>\n\t\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</FlexItem>\n\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t<Button variant=\"primary\" type=\"submit\">\n\t\t\t\t\t\t\t{ __( 'Apply' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</FlexItem>\n\t\t\t\t</Flex>\n\t\t\t</form>\n\t\t</Modal>\n\t);\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["__","sprintf","useEffect","useState","Button","CheckboxControl","Flex","FlexItem","Icon","Modal","ToggleControl","lock","lockIcon","unlock","unlockIcon","useInstanceId","useDispatch","useSelect","getBlockType","useBlockLock","useBlockDisplayInformation","store","blockEditorStore","ALLOWS_EDIT_LOCKING","getTemplateLockValue","remove","move","BlockLockModal","clientId","onClose","setLock","canEdit","canMove","canRemove","allowsEditLocking","templateLock","hasTemplateLock","select","getBlockName","getBlockAttributes","blockName","blockType","includes","attributes","applyTemplateLock","setApplyTemplateLock","updateBlockAttributes","blockInformation","instanceId","edit","isAllChecked","Object","values","every","Boolean","isMixed","some","createElement","title","overlayClassName","onRequestClose","onSubmit","event","preventDefault","undefined","role","className","__nextHasNoMarginBottom","label","id","checked","indeterminate","onChange","newValue","prevLock","icon","disabled","justify","expanded","variant","onClick","type"],"sources":["@wordpress/block-editor/src/components/block-lock/modal.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useEffect, useState } from '@wordpress/element';\nimport {\n\tButton,\n\tCheckboxControl,\n\tFlex,\n\tFlexItem,\n\tIcon,\n\tModal,\n\tToggleControl,\n} from '@wordpress/components';\nimport { lock as lockIcon, unlock as unlockIcon } from '@wordpress/icons';\nimport { useInstanceId } from '@wordpress/compose';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { getBlockType } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport useBlockLock from './use-block-lock';\nimport useBlockDisplayInformation from '../use-block-display-information';\nimport { store as blockEditorStore } from '../../store';\n\n// Entity based blocks which allow edit locking\nconst ALLOWS_EDIT_LOCKING = [ 'core/block', 'core/navigation' ];\n\nfunction getTemplateLockValue( lock ) {\n\t// Prevents all operations.\n\tif ( lock.remove && lock.move ) {\n\t\treturn 'all';\n\t}\n\n\t// Prevents inserting or removing blocks, but allows moving existing blocks.\n\tif ( lock.remove && ! lock.move ) {\n\t\treturn 'insert';\n\t}\n\n\treturn false;\n}\n\nexport default function BlockLockModal( { clientId, onClose } ) {\n\tconst [ lock, setLock ] = useState( { move: false, remove: false } );\n\tconst { canEdit, canMove, canRemove } = useBlockLock( clientId );\n\tconst { allowsEditLocking, templateLock, hasTemplateLock } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockName, getBlockAttributes } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\tconst blockName = getBlockName( clientId );\n\t\t\tconst blockType = getBlockType( blockName );\n\n\t\t\treturn {\n\t\t\t\tallowsEditLocking: ALLOWS_EDIT_LOCKING.includes( blockName ),\n\t\t\t\ttemplateLock: getBlockAttributes( clientId )?.templateLock,\n\t\t\t\thasTemplateLock: !! blockType?.attributes?.templateLock,\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\tconst [ applyTemplateLock, setApplyTemplateLock ] = useState(\n\t\t!! templateLock\n\t);\n\tconst { updateBlockAttributes } = useDispatch( blockEditorStore );\n\tconst blockInformation = useBlockDisplayInformation( clientId );\n\tconst instanceId = useInstanceId(\n\t\tBlockLockModal,\n\t\t'block-editor-block-lock-modal__options-title'\n\t);\n\n\tuseEffect( () => {\n\t\tsetLock( {\n\t\t\tmove: ! canMove,\n\t\t\tremove: ! canRemove,\n\t\t\t...( allowsEditLocking ? { edit: ! canEdit } : {} ),\n\t\t} );\n\t}, [ canEdit, canMove, canRemove, allowsEditLocking ] );\n\n\tconst isAllChecked = Object.values( lock ).every( Boolean );\n\tconst isMixed = Object.values( lock ).some( Boolean ) && ! isAllChecked;\n\n\treturn (\n\t\t<Modal\n\t\t\ttitle={ sprintf(\n\t\t\t\t/* translators: %s: Name of the block. */\n\t\t\t\t__( 'Lock %s' ),\n\t\t\t\tblockInformation.title\n\t\t\t) }\n\t\t\toverlayClassName=\"block-editor-block-lock-modal\"\n\t\t\tonRequestClose={ onClose }\n\t\t>\n\t\t\t<p>\n\t\t\t\t{ __(\n\t\t\t\t\t'Choose specific attributes to restrict or lock all available options.'\n\t\t\t\t) }\n\t\t\t</p>\n\t\t\t<form\n\t\t\t\tonSubmit={ ( event ) => {\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\tupdateBlockAttributes( [ clientId ], {\n\t\t\t\t\t\tlock,\n\t\t\t\t\t\ttemplateLock: applyTemplateLock\n\t\t\t\t\t\t\t? getTemplateLockValue( lock )\n\t\t\t\t\t\t\t: undefined,\n\t\t\t\t\t} );\n\t\t\t\t\tonClose();\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<div\n\t\t\t\t\trole=\"group\"\n\t\t\t\t\taria-labelledby={ instanceId }\n\t\t\t\t\tclassName=\"block-editor-block-lock-modal__options\"\n\t\t\t\t>\n\t\t\t\t\t<CheckboxControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tclassName=\"block-editor-block-lock-modal__options-title\"\n\t\t\t\t\t\tlabel={\n\t\t\t\t\t\t\t<span id={ instanceId }>{ __( 'Lock all' ) }</span>\n\t\t\t\t\t\t}\n\t\t\t\t\t\tchecked={ isAllChecked }\n\t\t\t\t\t\tindeterminate={ isMixed }\n\t\t\t\t\t\tonChange={ ( newValue ) =>\n\t\t\t\t\t\t\tsetLock( {\n\t\t\t\t\t\t\t\tmove: newValue,\n\t\t\t\t\t\t\t\tremove: newValue,\n\t\t\t\t\t\t\t\t...( allowsEditLocking\n\t\t\t\t\t\t\t\t\t? { edit: newValue }\n\t\t\t\t\t\t\t\t\t: {} ),\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t<ul className=\"block-editor-block-lock-modal__checklist\">\n\t\t\t\t\t\t{ allowsEditLocking && (\n\t\t\t\t\t\t\t<li className=\"block-editor-block-lock-modal__checklist-item\">\n\t\t\t\t\t\t\t\t<CheckboxControl\n\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Restrict editing' ) }\n\t\t\t\t\t\t\t\t\tchecked={ !! lock.edit }\n\t\t\t\t\t\t\t\t\tonChange={ ( edit ) =>\n\t\t\t\t\t\t\t\t\t\tsetLock( ( prevLock ) => ( {\n\t\t\t\t\t\t\t\t\t\t\t...prevLock,\n\t\t\t\t\t\t\t\t\t\t\tedit,\n\t\t\t\t\t\t\t\t\t\t} ) )\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\tclassName=\"block-editor-block-lock-modal__lock-icon\"\n\t\t\t\t\t\t\t\t\ticon={ lock.edit ? lockIcon : unlockIcon }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<li className=\"block-editor-block-lock-modal__checklist-item\">\n\t\t\t\t\t\t\t<CheckboxControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Disable movement' ) }\n\t\t\t\t\t\t\t\tchecked={ lock.move }\n\t\t\t\t\t\t\t\tonChange={ ( move ) =>\n\t\t\t\t\t\t\t\t\tsetLock( ( prevLock ) => ( {\n\t\t\t\t\t\t\t\t\t\t...prevLock,\n\t\t\t\t\t\t\t\t\t\tmove,\n\t\t\t\t\t\t\t\t\t} ) )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\tclassName=\"block-editor-block-lock-modal__lock-icon\"\n\t\t\t\t\t\t\t\ticon={ lock.move ? lockIcon : unlockIcon }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</li>\n\t\t\t\t\t\t<li className=\"block-editor-block-lock-modal__checklist-item\">\n\t\t\t\t\t\t\t<CheckboxControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Prevent removal' ) }\n\t\t\t\t\t\t\t\tchecked={ lock.remove }\n\t\t\t\t\t\t\t\tonChange={ ( remove ) =>\n\t\t\t\t\t\t\t\t\tsetLock( ( prevLock ) => ( {\n\t\t\t\t\t\t\t\t\t\t...prevLock,\n\t\t\t\t\t\t\t\t\t\tremove,\n\t\t\t\t\t\t\t\t\t} ) )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\tclassName=\"block-editor-block-lock-modal__lock-icon\"\n\t\t\t\t\t\t\t\ticon={ lock.remove ? lockIcon : unlockIcon }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</li>\n\t\t\t\t\t</ul>\n\t\t\t\t\t{ hasTemplateLock && (\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tclassName=\"block-editor-block-lock-modal__template-lock\"\n\t\t\t\t\t\t\tlabel={ __( 'Apply to all blocks inside' ) }\n\t\t\t\t\t\t\tchecked={ applyTemplateLock }\n\t\t\t\t\t\t\tdisabled={ lock.move && ! lock.remove }\n\t\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\t\tsetApplyTemplateLock( ! applyTemplateLock )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</div>\n\t\t\t\t<Flex\n\t\t\t\t\tclassName=\"block-editor-block-lock-modal__actions\"\n\t\t\t\t\tjustify=\"flex-end\"\n\t\t\t\t\texpanded={ false }\n\t\t\t\t>\n\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t<Button variant=\"tertiary\" onClick={ onClose }>\n\t\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</FlexItem>\n\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t<Button variant=\"primary\" type=\"submit\">\n\t\t\t\t\t\t\t{ __( 'Apply' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</FlexItem>\n\t\t\t\t</Flex>\n\t\t\t</form>\n\t\t</Modal>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,EAAE,EAAEC,OAAO,QAAQ,iBAAiB;AAC7C,SAASC,SAAS,EAAEC,QAAQ,QAAQ,oBAAoB;AACxD,SACCC,MAAM,EACNC,eAAe,EACfC,IAAI,EACJC,QAAQ,EACRC,IAAI,EACJC,KAAK,EACLC,aAAa,QACP,uBAAuB;AAC9B,SAASC,IAAI,IAAIC,QAAQ,EAAEC,MAAM,IAAIC,UAAU,QAAQ,kBAAkB;AACzE,SAASC,aAAa,QAAQ,oBAAoB;AAClD,SAASC,WAAW,EAAEC,SAAS,QAAQ,iBAAiB;AACxD,SAASC,YAAY,QAAQ,mBAAmB;;AAEhD;AACA;AACA;AACA,OAAOC,YAAY,MAAM,kBAAkB;AAC3C,OAAOC,0BAA0B,MAAM,kCAAkC;AACzE,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,aAAa;;AAEvD;AACA,MAAMC,mBAAmB,GAAG,CAAE,YAAY,EAAE,iBAAiB,CAAE;AAE/D,SAASC,oBAAoBA,CAAEb,IAAI,EAAG;EACrC;EACA,IAAKA,IAAI,CAACc,MAAM,IAAId,IAAI,CAACe,IAAI,EAAG;IAC/B,OAAO,KAAK;EACb;;EAEA;EACA,IAAKf,IAAI,CAACc,MAAM,IAAI,CAAEd,IAAI,CAACe,IAAI,EAAG;IACjC,OAAO,QAAQ;EAChB;EAEA,OAAO,KAAK;AACb;AAEA,eAAe,SAASC,cAAcA,CAAE;EAAEC,QAAQ;EAAEC;AAAQ,CAAC,EAAG;EAC/D,MAAM,CAAElB,IAAI,EAAEmB,OAAO,CAAE,GAAG3B,QAAQ,CAAE;IAAEuB,IAAI,EAAE,KAAK;IAAED,MAAM,EAAE;EAAM,CAAE,CAAC;EACpE,MAAM;IAAEM,OAAO;IAAEC,OAAO;IAAEC;EAAU,CAAC,GAAGd,YAAY,CAAES,QAAS,CAAC;EAChE,MAAM;IAAEM,iBAAiB;IAAEC,YAAY;IAAEC;EAAgB,CAAC,GAAGnB,SAAS,CACnEoB,MAAM,IAAM;IACb,MAAM;MAAEC,YAAY;MAAEC;IAAmB,CAAC,GACzCF,MAAM,CAAEf,gBAAiB,CAAC;IAC3B,MAAMkB,SAAS,GAAGF,YAAY,CAAEV,QAAS,CAAC;IAC1C,MAAMa,SAAS,GAAGvB,YAAY,CAAEsB,SAAU,CAAC;IAE3C,OAAO;MACNN,iBAAiB,EAAEX,mBAAmB,CAACmB,QAAQ,CAAEF,SAAU,CAAC;MAC5DL,YAAY,EAAEI,kBAAkB,CAAEX,QAAS,CAAC,EAAEO,YAAY;MAC1DC,eAAe,EAAE,CAAC,CAAEK,SAAS,EAAEE,UAAU,EAAER;IAC5C,CAAC;EACF,CAAC,EACD,CAAEP,QAAQ,CACX,CAAC;EACD,MAAM,CAAEgB,iBAAiB,EAAEC,oBAAoB,CAAE,GAAG1C,QAAQ,CAC3D,CAAC,CAAEgC,YACJ,CAAC;EACD,MAAM;IAAEW;EAAsB,CAAC,GAAG9B,WAAW,CAAEM,gBAAiB,CAAC;EACjE,MAAMyB,gBAAgB,GAAG3B,0BAA0B,CAAEQ,QAAS,CAAC;EAC/D,MAAMoB,UAAU,GAAGjC,aAAa,CAC/BY,cAAc,EACd,8CACD,CAAC;EAEDzB,SAAS,CAAE,MAAM;IAChB4B,OAAO,CAAE;MACRJ,IAAI,EAAE,CAAEM,OAAO;MACfP,MAAM,EAAE,CAAEQ,SAAS;MACnB,IAAKC,iBAAiB,GAAG;QAAEe,IAAI,EAAE,CAAElB;MAAQ,CAAC,GAAG,CAAC,CAAC;IAClD,CAAE,CAAC;EACJ,CAAC,EAAE,CAAEA,OAAO,EAAEC,OAAO,EAAEC,SAAS,EAAEC,iBAAiB,CAAG,CAAC;EAEvD,MAAMgB,YAAY,GAAGC,MAAM,CAACC,MAAM,CAAEzC,IAAK,CAAC,CAAC0C,KAAK,CAAEC,OAAQ,CAAC;EAC3D,MAAMC,OAAO,GAAGJ,MAAM,CAACC,MAAM,CAAEzC,IAAK,CAAC,CAAC6C,IAAI,CAAEF,OAAQ,CAAC,IAAI,CAAEJ,YAAY;EAEvE,OACCO,aAAA,CAAChD,KAAK;IACLiD,KAAK,EAAGzD,OAAO,EACd;IACAD,EAAE,CAAE,SAAU,CAAC,EACf+C,gBAAgB,CAACW,KAClB,CAAG;IACHC,gBAAgB,EAAC,+BAA+B;IAChDC,cAAc,EAAG/B;EAAS,GAE1B4B,aAAA,YACGzD,EAAE,CACH,uEACD,CACE,CAAC,EACJyD,aAAA;IACCI,QAAQ,EAAKC,KAAK,IAAM;MACvBA,KAAK,CAACC,cAAc,CAAC,CAAC;MACtBjB,qBAAqB,CAAE,CAAElB,QAAQ,CAAE,EAAE;QACpCjB,IAAI;QACJwB,YAAY,EAAES,iBAAiB,GAC5BpB,oBAAoB,CAAEb,IAAK,CAAC,GAC5BqD;MACJ,CAAE,CAAC;MACHnC,OAAO,CAAC,CAAC;IACV;EAAG,GAEH4B,aAAA;IACCQ,IAAI,EAAC,OAAO;IACZ,mBAAkBjB,UAAY;IAC9BkB,SAAS,EAAC;EAAwC,GAElDT,aAAA,CAACpD,eAAe;IACf8D,uBAAuB;IACvBD,SAAS,EAAC,8CAA8C;IACxDE,KAAK,EACJX,aAAA;MAAMY,EAAE,EAAGrB;IAAY,GAAGhD,EAAE,CAAE,UAAW,CAAS,CAClD;IACDsE,OAAO,EAAGpB,YAAc;IACxBqB,aAAa,EAAGhB,OAAS;IACzBiB,QAAQ,EAAKC,QAAQ,IACpB3C,OAAO,CAAE;MACRJ,IAAI,EAAE+C,QAAQ;MACdhD,MAAM,EAAEgD,QAAQ;MAChB,IAAKvC,iBAAiB,GACnB;QAAEe,IAAI,EAAEwB;MAAS,CAAC,GAClB,CAAC,CAAC;IACN,CAAE;EACF,CACD,CAAC,EACFhB,aAAA;IAAIS,SAAS,EAAC;EAA0C,GACrDhC,iBAAiB,IAClBuB,aAAA;IAAIS,SAAS,EAAC;EAA+C,GAC5DT,aAAA,CAACpD,eAAe;IACf8D,uBAAuB;IACvBC,KAAK,EAAGpE,EAAE,CAAE,kBAAmB,CAAG;IAClCsE,OAAO,EAAG,CAAC,CAAE3D,IAAI,CAACsC,IAAM;IACxBuB,QAAQ,EAAKvB,IAAI,IAChBnB,OAAO,CAAI4C,QAAQ,KAAQ;MAC1B,GAAGA,QAAQ;MACXzB;IACD,CAAC,CAAG;EACJ,CACD,CAAC,EACFQ,aAAA,CAACjD,IAAI;IACJ0D,SAAS,EAAC,0CAA0C;IACpDS,IAAI,EAAGhE,IAAI,CAACsC,IAAI,GAAGrC,QAAQ,GAAGE;EAAY,CAC1C,CACE,CACJ,EACD2C,aAAA;IAAIS,SAAS,EAAC;EAA+C,GAC5DT,aAAA,CAACpD,eAAe;IACf8D,uBAAuB;IACvBC,KAAK,EAAGpE,EAAE,CAAE,kBAAmB,CAAG;IAClCsE,OAAO,EAAG3D,IAAI,CAACe,IAAM;IACrB8C,QAAQ,EAAK9C,IAAI,IAChBI,OAAO,CAAI4C,QAAQ,KAAQ;MAC1B,GAAGA,QAAQ;MACXhD;IACD,CAAC,CAAG;EACJ,CACD,CAAC,EACF+B,aAAA,CAACjD,IAAI;IACJ0D,SAAS,EAAC,0CAA0C;IACpDS,IAAI,EAAGhE,IAAI,CAACe,IAAI,GAAGd,QAAQ,GAAGE;EAAY,CAC1C,CACE,CAAC,EACL2C,aAAA;IAAIS,SAAS,EAAC;EAA+C,GAC5DT,aAAA,CAACpD,eAAe;IACf8D,uBAAuB;IACvBC,KAAK,EAAGpE,EAAE,CAAE,iBAAkB,CAAG;IACjCsE,OAAO,EAAG3D,IAAI,CAACc,MAAQ;IACvB+C,QAAQ,EAAK/C,MAAM,IAClBK,OAAO,CAAI4C,QAAQ,KAAQ;MAC1B,GAAGA,QAAQ;MACXjD;IACD,CAAC,CAAG;EACJ,CACD,CAAC,EACFgC,aAAA,CAACjD,IAAI;IACJ0D,SAAS,EAAC,0CAA0C;IACpDS,IAAI,EAAGhE,IAAI,CAACc,MAAM,GAAGb,QAAQ,GAAGE;EAAY,CAC5C,CACE,CACD,CAAC,EACHsB,eAAe,IAChBqB,aAAA,CAAC/C,aAAa;IACbyD,uBAAuB;IACvBD,SAAS,EAAC,8CAA8C;IACxDE,KAAK,EAAGpE,EAAE,CAAE,4BAA6B,CAAG;IAC5CsE,OAAO,EAAG1B,iBAAmB;IAC7BgC,QAAQ,EAAGjE,IAAI,CAACe,IAAI,IAAI,CAAEf,IAAI,CAACc,MAAQ;IACvC+C,QAAQ,EAAGA,CAAA,KACV3B,oBAAoB,CAAE,CAAED,iBAAkB;EAC1C,CACD,CAEE,CAAC,EACNa,aAAA,CAACnD,IAAI;IACJ4D,SAAS,EAAC,wCAAwC;IAClDW,OAAO,EAAC,UAAU;IAClBC,QAAQ,EAAG;EAAO,GAElBrB,aAAA,CAAClD,QAAQ,QACRkD,aAAA,CAACrD,MAAM;IAAC2E,OAAO,EAAC,UAAU;IAACC,OAAO,EAAGnD;EAAS,GAC3C7B,EAAE,CAAE,QAAS,CACR,CACC,CAAC,EACXyD,aAAA,CAAClD,QAAQ,QACRkD,aAAA,CAACrD,MAAM;IAAC2E,OAAO,EAAC,SAAS;IAACE,IAAI,EAAC;EAAQ,GACpCjF,EAAE,CAAE,OAAQ,CACP,CACC,CACL,CACD,CACA,CAAC;AAEV","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["__","ToolbarButton","ToolbarGroup","useReducer","useRef","useEffect","lock","unlock","BlockLockModal","useBlockLock","BlockLockToolbar","clientId","canLock","isLocked","isModalOpen","toggleModal","isActive","hasLockButtonShown","current","label","createElement","Fragment","className","accessibleWhenDisabled","disabled","icon","onClick","onClose"],"sources":["@wordpress/block-editor/src/components/block-lock/toolbar.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { ToolbarButton, ToolbarGroup } from '@wordpress/components';\nimport { useReducer, useRef, useEffect } from '@wordpress/element';\nimport { lock, unlock } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport BlockLockModal from './modal';\nimport useBlockLock from './use-block-lock';\n\nexport default function BlockLockToolbar( { clientId } ) {\n\tconst { canLock, isLocked } = useBlockLock( clientId );\n\n\tconst [ isModalOpen, toggleModal ] = useReducer(\n\t\t( isActive ) => ! isActive,\n\t\tfalse\n\t);\n\n\tconst hasLockButtonShown = useRef( false );\n\n\t// If the block lock button has been shown, we don't want to remove it\n\t// from the toolbar until the toolbar is rendered again without it.\n\t// Removing it beforehand can cause focus loss issues, such as when\n\t// unlocking the block from the modal. It needs to return focus from\n\t// whence it came, and to do that, we need to leave the button in the toolbar.\n\tuseEffect( () => {\n\t\tif ( isLocked ) {\n\t\t\thasLockButtonShown.current = true;\n\t\t}\n\t}, [ isLocked ] );\n\n\tif ( ! isLocked && ! hasLockButtonShown.current ) {\n\t\treturn null;\n\t}\n\n\tlet label = isLocked ? __( 'Unlock' ) : __( 'Lock' );\n\n\tif ( ! canLock && isLocked ) {\n\t\tlabel = __( 'Locked' );\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<ToolbarGroup className=\"block-editor-block-lock-toolbar\">\n\t\t\t\t<ToolbarButton\n\t\t\t\t\taccessibleWhenDisabled\n\t\t\t\t\tdisabled={ ! canLock }\n\t\t\t\t\ticon={ isLocked ? lock : unlock }\n\t\t\t\t\tlabel={ label }\n\t\t\t\t\tonClick={ toggleModal }\n\t\t\t\t\taria-expanded={ isModalOpen }\n\t\t\t\t\taria-haspopup=\"dialog\"\n\t\t\t\t/>\n\t\t\t</ToolbarGroup>\n\t\t\t{ isModalOpen && (\n\t\t\t\t<BlockLockModal clientId={ clientId } onClose={ toggleModal } />\n\t\t\t) }\n\t\t</>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,EAAE,QAAQ,iBAAiB;AACpC,SAASC,aAAa,EAAEC,YAAY,QAAQ,uBAAuB;AACnE,SAASC,UAAU,EAAEC,MAAM,EAAEC,SAAS,QAAQ,oBAAoB;AAClE,SAASC,IAAI,EAAEC,MAAM,QAAQ,kBAAkB;;AAE/C;AACA;AACA;AACA,OAAOC,cAAc,MAAM,SAAS;AACpC,OAAOC,YAAY,MAAM,kBAAkB;AAE3C,eAAe,SAASC,gBAAgBA,CAAE;EAAEC;AAAS,CAAC,EAAG;EACxD,MAAM;IAAEC,OAAO;IAAEC;EAAS,CAAC,GAAGJ,YAAY,CAAEE,QAAS,CAAC;EAEtD,MAAM,CAAEG,WAAW,EAAEC,WAAW,CAAE,GAAGZ,UAAU,CAC5Ca,QAAQ,IAAM,CAAEA,QAAQ,EAC1B,KACD,CAAC;EAED,MAAMC,kBAAkB,GAAGb,MAAM,CAAE,KAAM,CAAC;;EAE1C;EACA;EACA;EACA;EACA;EACAC,SAAS,CAAE,MAAM;IAChB,IAAKQ,QAAQ,EAAG;MACfI,kBAAkB,CAACC,OAAO,GAAG,IAAI;IAClC;EACD,CAAC,EAAE,CAAEL,QAAQ,CAAG,CAAC;EAEjB,IAAK,CAAEA,QAAQ,IAAI,CAAEI,kBAAkB,CAACC,OAAO,EAAG;IACjD,OAAO,IAAI;EACZ;EAEA,IAAIC,KAAK,GAAGN,QAAQ,GAAGb,EAAE,CAAE,QAAS,CAAC,GAAGA,EAAE,CAAE,MAAO,CAAC;EAEpD,IAAK,CAAEY,OAAO,IAAIC,QAAQ,EAAG;IAC5BM,KAAK,GAAGnB,EAAE,CAAE,QAAS,CAAC;EACvB;EAEA,OACCoB,aAAA,CAAAC,QAAA,QACCD,aAAA,CAAClB,YAAY;IAACoB,SAAS,EAAC;EAAiC,GACxDF,aAAA,CAACnB,aAAa;IACbsB,sBAAsB;IACtBC,QAAQ,EAAG,CAAEZ,OAAS;IACtBa,IAAI,EAAGZ,QAAQ,GAAGP,IAAI,GAAGC,MAAQ;IACjCY,KAAK,EAAGA,KAAO;IACfO,OAAO,EAAGX,WAAa;IACvB,iBAAgBD,WAAa;IAC7B,iBAAc;EAAQ,CACtB,CACY,CAAC,EACbA,WAAW,IACZM,aAAA,CAACZ,cAAc;IAACG,QAAQ,EAAGA,QAAU;IAACgB,OAAO,EAAGZ;EAAa,CAAE,CAE/D,CAAC;AAEL"}
1
+ {"version":3,"names":["__","ToolbarButton","ToolbarGroup","useReducer","useRef","useEffect","lock","unlock","BlockLockModal","useBlockLock","BlockLockToolbar","clientId","canLock","isLocked","isModalOpen","toggleModal","isActive","hasLockButtonShown","current","label","createElement","Fragment","className","accessibleWhenDisabled","disabled","icon","onClick","onClose"],"sources":["@wordpress/block-editor/src/components/block-lock/toolbar.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { ToolbarButton, ToolbarGroup } from '@wordpress/components';\nimport { useReducer, useRef, useEffect } from '@wordpress/element';\nimport { lock, unlock } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport BlockLockModal from './modal';\nimport useBlockLock from './use-block-lock';\n\nexport default function BlockLockToolbar( { clientId } ) {\n\tconst { canLock, isLocked } = useBlockLock( clientId );\n\n\tconst [ isModalOpen, toggleModal ] = useReducer(\n\t\t( isActive ) => ! isActive,\n\t\tfalse\n\t);\n\n\tconst hasLockButtonShown = useRef( false );\n\n\t// If the block lock button has been shown, we don't want to remove it\n\t// from the toolbar until the toolbar is rendered again without it.\n\t// Removing it beforehand can cause focus loss issues, such as when\n\t// unlocking the block from the modal. It needs to return focus from\n\t// whence it came, and to do that, we need to leave the button in the toolbar.\n\tuseEffect( () => {\n\t\tif ( isLocked ) {\n\t\t\thasLockButtonShown.current = true;\n\t\t}\n\t}, [ isLocked ] );\n\n\tif ( ! isLocked && ! hasLockButtonShown.current ) {\n\t\treturn null;\n\t}\n\n\tlet label = isLocked ? __( 'Unlock' ) : __( 'Lock' );\n\n\tif ( ! canLock && isLocked ) {\n\t\tlabel = __( 'Locked' );\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<ToolbarGroup className=\"block-editor-block-lock-toolbar\">\n\t\t\t\t<ToolbarButton\n\t\t\t\t\taccessibleWhenDisabled\n\t\t\t\t\tdisabled={ ! canLock }\n\t\t\t\t\ticon={ isLocked ? lock : unlock }\n\t\t\t\t\tlabel={ label }\n\t\t\t\t\tonClick={ toggleModal }\n\t\t\t\t\taria-expanded={ isModalOpen }\n\t\t\t\t\taria-haspopup=\"dialog\"\n\t\t\t\t/>\n\t\t\t</ToolbarGroup>\n\t\t\t{ isModalOpen && (\n\t\t\t\t<BlockLockModal clientId={ clientId } onClose={ toggleModal } />\n\t\t\t) }\n\t\t</>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,EAAE,QAAQ,iBAAiB;AACpC,SAASC,aAAa,EAAEC,YAAY,QAAQ,uBAAuB;AACnE,SAASC,UAAU,EAAEC,MAAM,EAAEC,SAAS,QAAQ,oBAAoB;AAClE,SAASC,IAAI,EAAEC,MAAM,QAAQ,kBAAkB;;AAE/C;AACA;AACA;AACA,OAAOC,cAAc,MAAM,SAAS;AACpC,OAAOC,YAAY,MAAM,kBAAkB;AAE3C,eAAe,SAASC,gBAAgBA,CAAE;EAAEC;AAAS,CAAC,EAAG;EACxD,MAAM;IAAEC,OAAO;IAAEC;EAAS,CAAC,GAAGJ,YAAY,CAAEE,QAAS,CAAC;EAEtD,MAAM,CAAEG,WAAW,EAAEC,WAAW,CAAE,GAAGZ,UAAU,CAC5Ca,QAAQ,IAAM,CAAEA,QAAQ,EAC1B,KACD,CAAC;EAED,MAAMC,kBAAkB,GAAGb,MAAM,CAAE,KAAM,CAAC;;EAE1C;EACA;EACA;EACA;EACA;EACAC,SAAS,CAAE,MAAM;IAChB,IAAKQ,QAAQ,EAAG;MACfI,kBAAkB,CAACC,OAAO,GAAG,IAAI;IAClC;EACD,CAAC,EAAE,CAAEL,QAAQ,CAAG,CAAC;EAEjB,IAAK,CAAEA,QAAQ,IAAI,CAAEI,kBAAkB,CAACC,OAAO,EAAG;IACjD,OAAO,IAAI;EACZ;EAEA,IAAIC,KAAK,GAAGN,QAAQ,GAAGb,EAAE,CAAE,QAAS,CAAC,GAAGA,EAAE,CAAE,MAAO,CAAC;EAEpD,IAAK,CAAEY,OAAO,IAAIC,QAAQ,EAAG;IAC5BM,KAAK,GAAGnB,EAAE,CAAE,QAAS,CAAC;EACvB;EAEA,OACCoB,aAAA,CAAAC,QAAA,QACCD,aAAA,CAAClB,YAAY;IAACoB,SAAS,EAAC;EAAiC,GACxDF,aAAA,CAACnB,aAAa;IACbsB,sBAAsB;IACtBC,QAAQ,EAAG,CAAEZ,OAAS;IACtBa,IAAI,EAAGZ,QAAQ,GAAGP,IAAI,GAAGC,MAAQ;IACjCY,KAAK,EAAGA,KAAO;IACfO,OAAO,EAAGX,WAAa;IACvB,iBAAgBD,WAAa;IAC7B,iBAAc;EAAQ,CACtB,CACY,CAAC,EACbA,WAAW,IACZM,aAAA,CAACZ,cAAc;IAACG,QAAQ,EAAGA,QAAU;IAACgB,OAAO,EAAGZ;EAAa,CAAE,CAE/D,CAAC;AAEL","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["useSelect","store","blockEditorStore","useBlockLock","clientId","select","canEditBlock","canMoveBlock","canRemoveBlock","canLockBlockType","getBlockName","getBlockRootClientId","getTemplateLock","rootClientId","canEdit","canMove","canRemove","canLock","isContentLocked","isLocked"],"sources":["@wordpress/block-editor/src/components/block-lock/use-block-lock.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../store';\n\n/**\n * Return details about the block lock status.\n *\n * @param {string} clientId The block client Id.\n *\n * @return {Object} Block lock status\n */\nexport default function useBlockLock( clientId ) {\n\treturn useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tcanEditBlock,\n\t\t\t\tcanMoveBlock,\n\t\t\t\tcanRemoveBlock,\n\t\t\t\tcanLockBlockType,\n\t\t\t\tgetBlockName,\n\t\t\t\tgetBlockRootClientId,\n\t\t\t\tgetTemplateLock,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst rootClientId = getBlockRootClientId( clientId );\n\n\t\t\tconst canEdit = canEditBlock( clientId );\n\t\t\tconst canMove = canMoveBlock( clientId, rootClientId );\n\t\t\tconst canRemove = canRemoveBlock( clientId, rootClientId );\n\n\t\t\treturn {\n\t\t\t\tcanEdit,\n\t\t\t\tcanMove,\n\t\t\t\tcanRemove,\n\t\t\t\tcanLock: canLockBlockType( getBlockName( clientId ) ),\n\t\t\t\tisContentLocked: getTemplateLock( clientId ) === 'contentOnly',\n\t\t\t\tisLocked: ! canEdit || ! canMove || ! canRemove,\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,SAAS,QAAQ,iBAAiB;;AAE3C;AACA;AACA;AACA,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,aAAa;;AAEvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,SAASC,YAAYA,CAAEC,QAAQ,EAAG;EAChD,OAAOJ,SAAS,CACbK,MAAM,IAAM;IACb,MAAM;MACLC,YAAY;MACZC,YAAY;MACZC,cAAc;MACdC,gBAAgB;MAChBC,YAAY;MACZC,oBAAoB;MACpBC;IACD,CAAC,GAAGP,MAAM,CAAEH,gBAAiB,CAAC;IAC9B,MAAMW,YAAY,GAAGF,oBAAoB,CAAEP,QAAS,CAAC;IAErD,MAAMU,OAAO,GAAGR,YAAY,CAAEF,QAAS,CAAC;IACxC,MAAMW,OAAO,GAAGR,YAAY,CAAEH,QAAQ,EAAES,YAAa,CAAC;IACtD,MAAMG,SAAS,GAAGR,cAAc,CAAEJ,QAAQ,EAAES,YAAa,CAAC;IAE1D,OAAO;MACNC,OAAO;MACPC,OAAO;MACPC,SAAS;MACTC,OAAO,EAAER,gBAAgB,CAAEC,YAAY,CAAEN,QAAS,CAAE,CAAC;MACrDc,eAAe,EAAEN,eAAe,CAAER,QAAS,CAAC,KAAK,aAAa;MAC9De,QAAQ,EAAE,CAAEL,OAAO,IAAI,CAAEC,OAAO,IAAI,CAAEC;IACvC,CAAC;EACF,CAAC,EACD,CAAEZ,QAAQ,CACX,CAAC;AACF"}
1
+ {"version":3,"names":["useSelect","store","blockEditorStore","useBlockLock","clientId","select","canEditBlock","canMoveBlock","canRemoveBlock","canLockBlockType","getBlockName","getBlockRootClientId","getTemplateLock","rootClientId","canEdit","canMove","canRemove","canLock","isContentLocked","isLocked"],"sources":["@wordpress/block-editor/src/components/block-lock/use-block-lock.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../store';\n\n/**\n * Return details about the block lock status.\n *\n * @param {string} clientId The block client Id.\n *\n * @return {Object} Block lock status\n */\nexport default function useBlockLock( clientId ) {\n\treturn useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tcanEditBlock,\n\t\t\t\tcanMoveBlock,\n\t\t\t\tcanRemoveBlock,\n\t\t\t\tcanLockBlockType,\n\t\t\t\tgetBlockName,\n\t\t\t\tgetBlockRootClientId,\n\t\t\t\tgetTemplateLock,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst rootClientId = getBlockRootClientId( clientId );\n\n\t\t\tconst canEdit = canEditBlock( clientId );\n\t\t\tconst canMove = canMoveBlock( clientId, rootClientId );\n\t\t\tconst canRemove = canRemoveBlock( clientId, rootClientId );\n\n\t\t\treturn {\n\t\t\t\tcanEdit,\n\t\t\t\tcanMove,\n\t\t\t\tcanRemove,\n\t\t\t\tcanLock: canLockBlockType( getBlockName( clientId ) ),\n\t\t\t\tisContentLocked: getTemplateLock( clientId ) === 'contentOnly',\n\t\t\t\tisLocked: ! canEdit || ! canMove || ! canRemove,\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,SAAS,QAAQ,iBAAiB;;AAE3C;AACA;AACA;AACA,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,aAAa;;AAEvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,SAASC,YAAYA,CAAEC,QAAQ,EAAG;EAChD,OAAOJ,SAAS,CACbK,MAAM,IAAM;IACb,MAAM;MACLC,YAAY;MACZC,YAAY;MACZC,cAAc;MACdC,gBAAgB;MAChBC,YAAY;MACZC,oBAAoB;MACpBC;IACD,CAAC,GAAGP,MAAM,CAAEH,gBAAiB,CAAC;IAC9B,MAAMW,YAAY,GAAGF,oBAAoB,CAAEP,QAAS,CAAC;IAErD,MAAMU,OAAO,GAAGR,YAAY,CAAEF,QAAS,CAAC;IACxC,MAAMW,OAAO,GAAGR,YAAY,CAAEH,QAAQ,EAAES,YAAa,CAAC;IACtD,MAAMG,SAAS,GAAGR,cAAc,CAAEJ,QAAQ,EAAES,YAAa,CAAC;IAE1D,OAAO;MACNC,OAAO;MACPC,OAAO;MACPC,SAAS;MACTC,OAAO,EAAER,gBAAgB,CAAEC,YAAY,CAAEN,QAAS,CAAE,CAAC;MACrDc,eAAe,EAAEN,eAAe,CAAER,QAAS,CAAC,KAAK,aAAa;MAC9De,QAAQ,EAAE,CAAEL,OAAO,IAAI,CAAEC,OAAO,IAAI,CAAEC;IACvC,CAAC;EACF,CAAC,EACD,CAAEZ,QAAQ,CACX,CAAC;AACF","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["View","Component","Spinner","__","subscribeMediaUpload","subscribeMediaSave","styles","MEDIA_UPLOAD_STATE_UPLOADING","MEDIA_UPLOAD_STATE_SUCCEEDED","MEDIA_UPLOAD_STATE_FAILED","MEDIA_UPLOAD_STATE_RESET","MEDIA_SAVE_STATE_SAVING","MEDIA_SAVE_STATE_SUCCEEDED","MEDIA_SAVE_STATE_FAILED","MEDIA_SAVE_STATE_RESET","MEDIA_SAVE_FINAL_STATE_RESULT","MEDIA_SAVE_MEDIAID_CHANGED","BlockMediaUpdateProgress","constructor","props","state","progress","isSaveInProgress","isSaveFailed","isUploadInProgress","isUploadFailed","mediaUpload","bind","mediaSave","componentDidMount","addMediaUploadListener","addMediaSaveListener","componentWillUnmount","removeMediaUploadListener","removeMediaSaveListener","mediaIdContainedInMediaFiles","mediaId","mediaFiles","undefined","some","element","id","toString","payload","updateMediaUploadProgress","finishMediaUploadWithSuccess","finishMediaUploadWithFailure","mediaUploadStateReset","updateMediaSaveProgress","finishMediaSaveWithSuccess","finishMediaSaveWithFailure","mediaSaveStateReset","finalSaveResult","mediaIdChanged","setState","onUpdateMediaSaveProgress","onFinishMediaSaveWithSuccess","onFinishMediaSaveWithFailure","onMediaSaveStateReset","success","onFinalSaveResult","onMediaIdChanged","onUpdateMediaUploadProgress","onFinishMediaUploadWithSuccess","onFinishMediaUploadWithFailure","onMediaUploadStateReset","subscriptionParentMediaUpload","remove","subscriptionParentMediaSave","render","renderContent","showSpinner","retryMessageSave","retryMessageUpload","retryMessage","createElement","style","mediaUploadProgress","pointerEvents","progressBar","testID"],"sources":["@wordpress/block-editor/src/components/block-media-update-progress/index.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { View } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { Component } from '@wordpress/element';\nimport { Spinner } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tsubscribeMediaUpload,\n\tsubscribeMediaSave,\n} from '@wordpress/react-native-bridge';\n\n/**\n * Internal dependencies\n */\nimport styles from './styles.scss';\n\nexport const MEDIA_UPLOAD_STATE_UPLOADING = 1;\nexport const MEDIA_UPLOAD_STATE_SUCCEEDED = 2;\nexport const MEDIA_UPLOAD_STATE_FAILED = 3;\nexport const MEDIA_UPLOAD_STATE_RESET = 4;\n\nexport const MEDIA_SAVE_STATE_SAVING = 5;\nexport const MEDIA_SAVE_STATE_SUCCEEDED = 6;\nexport const MEDIA_SAVE_STATE_FAILED = 7;\nexport const MEDIA_SAVE_STATE_RESET = 8;\nexport const MEDIA_SAVE_FINAL_STATE_RESULT = 9;\nexport const MEDIA_SAVE_MEDIAID_CHANGED = 10;\n\nexport class BlockMediaUpdateProgress extends Component {\n\tconstructor( props ) {\n\t\tsuper( props );\n\n\t\tthis.state = {\n\t\t\tprogress: 0,\n\t\t\tisSaveInProgress: false,\n\t\t\tisSaveFailed: false,\n\t\t\tisUploadInProgress: false,\n\t\t\tisUploadFailed: false,\n\t\t};\n\n\t\tthis.mediaUpload = this.mediaUpload.bind( this );\n\t\tthis.mediaSave = this.mediaSave.bind( this );\n\t}\n\n\tcomponentDidMount() {\n\t\tthis.addMediaUploadListener();\n\t\tthis.addMediaSaveListener();\n\t}\n\n\tcomponentWillUnmount() {\n\t\tthis.removeMediaUploadListener();\n\t\tthis.removeMediaSaveListener();\n\t}\n\n\tmediaIdContainedInMediaFiles( mediaId, mediaFiles ) {\n\t\tif ( mediaId !== undefined && mediaFiles !== undefined ) {\n\t\t\treturn mediaFiles.some(\n\t\t\t\t( element ) => element.id === mediaId.toString()\n\t\t\t);\n\t\t}\n\t\treturn false;\n\t}\n\n\tmediaUpload( payload ) {\n\t\tconst { mediaFiles } = this.props;\n\n\t\tif (\n\t\t\tthis.mediaIdContainedInMediaFiles( payload.mediaId, mediaFiles ) ===\n\t\t\tfalse\n\t\t) {\n\t\t\treturn;\n\t\t}\n\n\t\tswitch ( payload.state ) {\n\t\t\tcase MEDIA_UPLOAD_STATE_UPLOADING:\n\t\t\t\tthis.updateMediaUploadProgress( payload );\n\t\t\t\tbreak;\n\t\t\tcase MEDIA_UPLOAD_STATE_SUCCEEDED:\n\t\t\t\tthis.finishMediaUploadWithSuccess( payload );\n\t\t\t\tbreak;\n\t\t\tcase MEDIA_UPLOAD_STATE_FAILED:\n\t\t\t\tthis.finishMediaUploadWithFailure( payload );\n\t\t\t\tbreak;\n\t\t\tcase MEDIA_UPLOAD_STATE_RESET:\n\t\t\t\tthis.mediaUploadStateReset( payload );\n\t\t\t\tbreak;\n\t\t}\n\t}\n\n\tmediaSave( payload ) {\n\t\tconst { mediaFiles } = this.props;\n\n\t\tif (\n\t\t\tthis.mediaIdContainedInMediaFiles( payload.mediaId, mediaFiles ) ===\n\t\t\tfalse\n\t\t) {\n\t\t\treturn;\n\t\t}\n\n\t\tswitch ( payload.state ) {\n\t\t\tcase MEDIA_SAVE_STATE_SAVING:\n\t\t\t\tthis.updateMediaSaveProgress( payload );\n\t\t\t\tbreak;\n\t\t\tcase MEDIA_SAVE_STATE_SUCCEEDED:\n\t\t\t\tthis.finishMediaSaveWithSuccess( payload );\n\t\t\t\tbreak;\n\t\t\tcase MEDIA_SAVE_STATE_FAILED:\n\t\t\t\tthis.finishMediaSaveWithFailure( payload );\n\t\t\t\tbreak;\n\t\t\tcase MEDIA_SAVE_STATE_RESET:\n\t\t\t\tthis.mediaSaveStateReset( payload );\n\t\t\t\tbreak;\n\t\t\tcase MEDIA_SAVE_FINAL_STATE_RESULT:\n\t\t\t\tthis.finalSaveResult( payload );\n\t\t\t\tbreak;\n\t\t\tcase MEDIA_SAVE_MEDIAID_CHANGED:\n\t\t\t\tthis.mediaIdChanged( payload );\n\t\t\t\tbreak;\n\t\t}\n\t}\n\n\t// ---- Block media save actions.\n\tupdateMediaSaveProgress( payload ) {\n\t\tthis.setState( {\n\t\t\tprogress: payload.progress,\n\t\t\tisUploadInProgress: false,\n\t\t\tisUploadFailed: false,\n\t\t\tisSaveInProgress: true,\n\t\t\tisSaveFailed: false,\n\t\t} );\n\t\tif ( this.props.onUpdateMediaSaveProgress ) {\n\t\t\tthis.props.onUpdateMediaSaveProgress( payload );\n\t\t}\n\t}\n\n\tfinishMediaSaveWithSuccess( payload ) {\n\t\tthis.setState( { isSaveInProgress: false } );\n\t\tif ( this.props.onFinishMediaSaveWithSuccess ) {\n\t\t\tthis.props.onFinishMediaSaveWithSuccess( payload );\n\t\t}\n\t}\n\n\tfinishMediaSaveWithFailure( payload ) {\n\t\tthis.setState( { isSaveInProgress: false, isSaveFailed: true } );\n\t\tif ( this.props.onFinishMediaSaveWithFailure ) {\n\t\t\tthis.props.onFinishMediaSaveWithFailure( payload );\n\t\t}\n\t}\n\n\tmediaSaveStateReset( payload ) {\n\t\tthis.setState( { isSaveInProgress: false, isSaveFailed: false } );\n\t\tif ( this.props.onMediaSaveStateReset ) {\n\t\t\tthis.props.onMediaSaveStateReset( payload );\n\t\t}\n\t}\n\n\tfinalSaveResult( payload ) {\n\t\tthis.setState( {\n\t\t\tprogress: payload.progress,\n\t\t\tisUploadInProgress: false,\n\t\t\tisUploadFailed: false,\n\t\t\tisSaveInProgress: false,\n\t\t\tisSaveFailed: ! payload.success,\n\t\t} );\n\t\tif ( this.props.onFinalSaveResult ) {\n\t\t\tthis.props.onFinalSaveResult( payload );\n\t\t}\n\t}\n\n\tmediaIdChanged( payload ) {\n\t\tthis.setState( {\n\t\t\tisUploadInProgress: false,\n\t\t\tisUploadFailed: false,\n\t\t\tisSaveInProgress: false,\n\t\t\tisSaveFailed: false,\n\t\t} );\n\t\tif ( this.props.onMediaIdChanged ) {\n\t\t\tthis.props.onMediaIdChanged( payload );\n\t\t}\n\t}\n\n\t// ---- Block media upload actions.\n\tupdateMediaUploadProgress( payload ) {\n\t\tthis.setState( {\n\t\t\tprogress: payload.progress,\n\t\t\tisUploadInProgress: true,\n\t\t\tisUploadFailed: false,\n\t\t\tisSaveInProgress: false,\n\t\t\tisSaveFailed: false,\n\t\t} );\n\t\tif ( this.props.onUpdateMediaUploadProgress ) {\n\t\t\tthis.props.onUpdateMediaUploadProgress( payload );\n\t\t}\n\t}\n\n\tfinishMediaUploadWithSuccess( payload ) {\n\t\tthis.setState( { isUploadInProgress: false, isSaveInProgress: false } );\n\t\tif ( this.props.onFinishMediaUploadWithSuccess ) {\n\t\t\tthis.props.onFinishMediaUploadWithSuccess( payload );\n\t\t}\n\t}\n\n\tfinishMediaUploadWithFailure( payload ) {\n\t\tthis.setState( { isUploadInProgress: false, isUploadFailed: true } );\n\t\tif ( this.props.onFinishMediaUploadWithFailure ) {\n\t\t\tthis.props.onFinishMediaUploadWithFailure( payload );\n\t\t}\n\t}\n\n\tmediaUploadStateReset( payload ) {\n\t\tthis.setState( { isUploadInProgress: false, isUploadFailed: false } );\n\t\tif ( this.props.onMediaUploadStateReset ) {\n\t\t\tthis.props.onMediaUploadStateReset( payload );\n\t\t}\n\t}\n\n\taddMediaUploadListener() {\n\t\t// If we already have a subscription not worth doing it again.\n\t\tif ( this.subscriptionParentMediaUpload ) {\n\t\t\treturn;\n\t\t}\n\t\tthis.subscriptionParentMediaUpload = subscribeMediaUpload(\n\t\t\t( payload ) => {\n\t\t\t\tthis.mediaUpload( payload );\n\t\t\t}\n\t\t);\n\t}\n\n\tremoveMediaUploadListener() {\n\t\tif ( this.subscriptionParentMediaUpload ) {\n\t\t\tthis.subscriptionParentMediaUpload.remove();\n\t\t}\n\t}\n\n\taddMediaSaveListener() {\n\t\t// If we already have a subscription not worth doing it again.\n\t\tif ( this.subscriptionParentMediaSave ) {\n\t\t\treturn;\n\t\t}\n\t\tthis.subscriptionParentMediaSave = subscribeMediaSave( ( payload ) => {\n\t\t\tthis.mediaSave( payload );\n\t\t} );\n\t}\n\n\tremoveMediaSaveListener() {\n\t\tif ( this.subscriptionParentMediaSave ) {\n\t\t\tthis.subscriptionParentMediaSave.remove();\n\t\t}\n\t}\n\n\trender() {\n\t\tconst { renderContent = () => null } = this.props;\n\t\tconst {\n\t\t\tisUploadInProgress,\n\t\t\tisUploadFailed,\n\t\t\tisSaveInProgress,\n\t\t\tisSaveFailed,\n\t\t} = this.state;\n\t\tconst showSpinner =\n\t\t\tthis.state.isUploadInProgress || this.state.isSaveInProgress;\n\t\tconst progress = this.state.progress * 100;\n\t\t// eslint-disable-next-line @wordpress/i18n-no-collapsible-whitespace\n\t\tconst retryMessageSave = __(\n\t\t\t'Failed to save files.\\nPlease tap for options.'\n\t\t);\n\t\t// eslint-disable-next-line @wordpress/i18n-no-collapsible-whitespace\n\t\tconst retryMessageUpload = __(\n\t\t\t'Failed to upload files.\\nPlease tap for options.'\n\t\t);\n\t\tlet retryMessage = retryMessageSave;\n\t\tif ( isUploadFailed ) {\n\t\t\tretryMessage = retryMessageUpload;\n\t\t}\n\n\t\treturn (\n\t\t\t<View style={ styles.mediaUploadProgress } pointerEvents=\"box-none\">\n\t\t\t\t{ showSpinner && (\n\t\t\t\t\t<View style={ styles.progressBar }>\n\t\t\t\t\t\t<Spinner progress={ progress } testID=\"spinner\" />\n\t\t\t\t\t</View>\n\t\t\t\t) }\n\t\t\t\t{ renderContent( {\n\t\t\t\t\tisUploadInProgress,\n\t\t\t\t\tisUploadFailed,\n\t\t\t\t\tisSaveInProgress,\n\t\t\t\t\tisSaveFailed,\n\t\t\t\t\tretryMessage,\n\t\t\t\t} ) }\n\t\t\t</View>\n\t\t);\n\t}\n}\n\nexport default BlockMediaUpdateProgress;\n"],"mappings":"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"}
1
+ {"version":3,"names":["View","Component","Spinner","__","subscribeMediaUpload","subscribeMediaSave","styles","MEDIA_UPLOAD_STATE_UPLOADING","MEDIA_UPLOAD_STATE_SUCCEEDED","MEDIA_UPLOAD_STATE_FAILED","MEDIA_UPLOAD_STATE_RESET","MEDIA_SAVE_STATE_SAVING","MEDIA_SAVE_STATE_SUCCEEDED","MEDIA_SAVE_STATE_FAILED","MEDIA_SAVE_STATE_RESET","MEDIA_SAVE_FINAL_STATE_RESULT","MEDIA_SAVE_MEDIAID_CHANGED","BlockMediaUpdateProgress","constructor","props","state","progress","isSaveInProgress","isSaveFailed","isUploadInProgress","isUploadFailed","mediaUpload","bind","mediaSave","componentDidMount","addMediaUploadListener","addMediaSaveListener","componentWillUnmount","removeMediaUploadListener","removeMediaSaveListener","mediaIdContainedInMediaFiles","mediaId","mediaFiles","undefined","some","element","id","toString","payload","updateMediaUploadProgress","finishMediaUploadWithSuccess","finishMediaUploadWithFailure","mediaUploadStateReset","updateMediaSaveProgress","finishMediaSaveWithSuccess","finishMediaSaveWithFailure","mediaSaveStateReset","finalSaveResult","mediaIdChanged","setState","onUpdateMediaSaveProgress","onFinishMediaSaveWithSuccess","onFinishMediaSaveWithFailure","onMediaSaveStateReset","success","onFinalSaveResult","onMediaIdChanged","onUpdateMediaUploadProgress","onFinishMediaUploadWithSuccess","onFinishMediaUploadWithFailure","onMediaUploadStateReset","subscriptionParentMediaUpload","remove","subscriptionParentMediaSave","render","renderContent","showSpinner","retryMessageSave","retryMessageUpload","retryMessage","createElement","style","mediaUploadProgress","pointerEvents","progressBar","testID"],"sources":["@wordpress/block-editor/src/components/block-media-update-progress/index.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { View } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { Component } from '@wordpress/element';\nimport { Spinner } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tsubscribeMediaUpload,\n\tsubscribeMediaSave,\n} from '@wordpress/react-native-bridge';\n\n/**\n * Internal dependencies\n */\nimport styles from './styles.scss';\n\nexport const MEDIA_UPLOAD_STATE_UPLOADING = 1;\nexport const MEDIA_UPLOAD_STATE_SUCCEEDED = 2;\nexport const MEDIA_UPLOAD_STATE_FAILED = 3;\nexport const MEDIA_UPLOAD_STATE_RESET = 4;\n\nexport const MEDIA_SAVE_STATE_SAVING = 5;\nexport const MEDIA_SAVE_STATE_SUCCEEDED = 6;\nexport const MEDIA_SAVE_STATE_FAILED = 7;\nexport const MEDIA_SAVE_STATE_RESET = 8;\nexport const MEDIA_SAVE_FINAL_STATE_RESULT = 9;\nexport const MEDIA_SAVE_MEDIAID_CHANGED = 10;\n\nexport class BlockMediaUpdateProgress extends Component {\n\tconstructor( props ) {\n\t\tsuper( props );\n\n\t\tthis.state = {\n\t\t\tprogress: 0,\n\t\t\tisSaveInProgress: false,\n\t\t\tisSaveFailed: false,\n\t\t\tisUploadInProgress: false,\n\t\t\tisUploadFailed: false,\n\t\t};\n\n\t\tthis.mediaUpload = this.mediaUpload.bind( this );\n\t\tthis.mediaSave = this.mediaSave.bind( this );\n\t}\n\n\tcomponentDidMount() {\n\t\tthis.addMediaUploadListener();\n\t\tthis.addMediaSaveListener();\n\t}\n\n\tcomponentWillUnmount() {\n\t\tthis.removeMediaUploadListener();\n\t\tthis.removeMediaSaveListener();\n\t}\n\n\tmediaIdContainedInMediaFiles( mediaId, mediaFiles ) {\n\t\tif ( mediaId !== undefined && mediaFiles !== undefined ) {\n\t\t\treturn mediaFiles.some(\n\t\t\t\t( element ) => element.id === mediaId.toString()\n\t\t\t);\n\t\t}\n\t\treturn false;\n\t}\n\n\tmediaUpload( payload ) {\n\t\tconst { mediaFiles } = this.props;\n\n\t\tif (\n\t\t\tthis.mediaIdContainedInMediaFiles( payload.mediaId, mediaFiles ) ===\n\t\t\tfalse\n\t\t) {\n\t\t\treturn;\n\t\t}\n\n\t\tswitch ( payload.state ) {\n\t\t\tcase MEDIA_UPLOAD_STATE_UPLOADING:\n\t\t\t\tthis.updateMediaUploadProgress( payload );\n\t\t\t\tbreak;\n\t\t\tcase MEDIA_UPLOAD_STATE_SUCCEEDED:\n\t\t\t\tthis.finishMediaUploadWithSuccess( payload );\n\t\t\t\tbreak;\n\t\t\tcase MEDIA_UPLOAD_STATE_FAILED:\n\t\t\t\tthis.finishMediaUploadWithFailure( payload );\n\t\t\t\tbreak;\n\t\t\tcase MEDIA_UPLOAD_STATE_RESET:\n\t\t\t\tthis.mediaUploadStateReset( payload );\n\t\t\t\tbreak;\n\t\t}\n\t}\n\n\tmediaSave( payload ) {\n\t\tconst { mediaFiles } = this.props;\n\n\t\tif (\n\t\t\tthis.mediaIdContainedInMediaFiles( payload.mediaId, mediaFiles ) ===\n\t\t\tfalse\n\t\t) {\n\t\t\treturn;\n\t\t}\n\n\t\tswitch ( payload.state ) {\n\t\t\tcase MEDIA_SAVE_STATE_SAVING:\n\t\t\t\tthis.updateMediaSaveProgress( payload );\n\t\t\t\tbreak;\n\t\t\tcase MEDIA_SAVE_STATE_SUCCEEDED:\n\t\t\t\tthis.finishMediaSaveWithSuccess( payload );\n\t\t\t\tbreak;\n\t\t\tcase MEDIA_SAVE_STATE_FAILED:\n\t\t\t\tthis.finishMediaSaveWithFailure( payload );\n\t\t\t\tbreak;\n\t\t\tcase MEDIA_SAVE_STATE_RESET:\n\t\t\t\tthis.mediaSaveStateReset( payload );\n\t\t\t\tbreak;\n\t\t\tcase MEDIA_SAVE_FINAL_STATE_RESULT:\n\t\t\t\tthis.finalSaveResult( payload );\n\t\t\t\tbreak;\n\t\t\tcase MEDIA_SAVE_MEDIAID_CHANGED:\n\t\t\t\tthis.mediaIdChanged( payload );\n\t\t\t\tbreak;\n\t\t}\n\t}\n\n\t// ---- Block media save actions.\n\tupdateMediaSaveProgress( payload ) {\n\t\tthis.setState( {\n\t\t\tprogress: payload.progress,\n\t\t\tisUploadInProgress: false,\n\t\t\tisUploadFailed: false,\n\t\t\tisSaveInProgress: true,\n\t\t\tisSaveFailed: false,\n\t\t} );\n\t\tif ( this.props.onUpdateMediaSaveProgress ) {\n\t\t\tthis.props.onUpdateMediaSaveProgress( payload );\n\t\t}\n\t}\n\n\tfinishMediaSaveWithSuccess( payload ) {\n\t\tthis.setState( { isSaveInProgress: false } );\n\t\tif ( this.props.onFinishMediaSaveWithSuccess ) {\n\t\t\tthis.props.onFinishMediaSaveWithSuccess( payload );\n\t\t}\n\t}\n\n\tfinishMediaSaveWithFailure( payload ) {\n\t\tthis.setState( { isSaveInProgress: false, isSaveFailed: true } );\n\t\tif ( this.props.onFinishMediaSaveWithFailure ) {\n\t\t\tthis.props.onFinishMediaSaveWithFailure( payload );\n\t\t}\n\t}\n\n\tmediaSaveStateReset( payload ) {\n\t\tthis.setState( { isSaveInProgress: false, isSaveFailed: false } );\n\t\tif ( this.props.onMediaSaveStateReset ) {\n\t\t\tthis.props.onMediaSaveStateReset( payload );\n\t\t}\n\t}\n\n\tfinalSaveResult( payload ) {\n\t\tthis.setState( {\n\t\t\tprogress: payload.progress,\n\t\t\tisUploadInProgress: false,\n\t\t\tisUploadFailed: false,\n\t\t\tisSaveInProgress: false,\n\t\t\tisSaveFailed: ! payload.success,\n\t\t} );\n\t\tif ( this.props.onFinalSaveResult ) {\n\t\t\tthis.props.onFinalSaveResult( payload );\n\t\t}\n\t}\n\n\tmediaIdChanged( payload ) {\n\t\tthis.setState( {\n\t\t\tisUploadInProgress: false,\n\t\t\tisUploadFailed: false,\n\t\t\tisSaveInProgress: false,\n\t\t\tisSaveFailed: false,\n\t\t} );\n\t\tif ( this.props.onMediaIdChanged ) {\n\t\t\tthis.props.onMediaIdChanged( payload );\n\t\t}\n\t}\n\n\t// ---- Block media upload actions.\n\tupdateMediaUploadProgress( payload ) {\n\t\tthis.setState( {\n\t\t\tprogress: payload.progress,\n\t\t\tisUploadInProgress: true,\n\t\t\tisUploadFailed: false,\n\t\t\tisSaveInProgress: false,\n\t\t\tisSaveFailed: false,\n\t\t} );\n\t\tif ( this.props.onUpdateMediaUploadProgress ) {\n\t\t\tthis.props.onUpdateMediaUploadProgress( payload );\n\t\t}\n\t}\n\n\tfinishMediaUploadWithSuccess( payload ) {\n\t\tthis.setState( { isUploadInProgress: false, isSaveInProgress: false } );\n\t\tif ( this.props.onFinishMediaUploadWithSuccess ) {\n\t\t\tthis.props.onFinishMediaUploadWithSuccess( payload );\n\t\t}\n\t}\n\n\tfinishMediaUploadWithFailure( payload ) {\n\t\tthis.setState( { isUploadInProgress: false, isUploadFailed: true } );\n\t\tif ( this.props.onFinishMediaUploadWithFailure ) {\n\t\t\tthis.props.onFinishMediaUploadWithFailure( payload );\n\t\t}\n\t}\n\n\tmediaUploadStateReset( payload ) {\n\t\tthis.setState( { isUploadInProgress: false, isUploadFailed: false } );\n\t\tif ( this.props.onMediaUploadStateReset ) {\n\t\t\tthis.props.onMediaUploadStateReset( payload );\n\t\t}\n\t}\n\n\taddMediaUploadListener() {\n\t\t// If we already have a subscription not worth doing it again.\n\t\tif ( this.subscriptionParentMediaUpload ) {\n\t\t\treturn;\n\t\t}\n\t\tthis.subscriptionParentMediaUpload = subscribeMediaUpload(\n\t\t\t( payload ) => {\n\t\t\t\tthis.mediaUpload( payload );\n\t\t\t}\n\t\t);\n\t}\n\n\tremoveMediaUploadListener() {\n\t\tif ( this.subscriptionParentMediaUpload ) {\n\t\t\tthis.subscriptionParentMediaUpload.remove();\n\t\t}\n\t}\n\n\taddMediaSaveListener() {\n\t\t// If we already have a subscription not worth doing it again.\n\t\tif ( this.subscriptionParentMediaSave ) {\n\t\t\treturn;\n\t\t}\n\t\tthis.subscriptionParentMediaSave = subscribeMediaSave( ( payload ) => {\n\t\t\tthis.mediaSave( payload );\n\t\t} );\n\t}\n\n\tremoveMediaSaveListener() {\n\t\tif ( this.subscriptionParentMediaSave ) {\n\t\t\tthis.subscriptionParentMediaSave.remove();\n\t\t}\n\t}\n\n\trender() {\n\t\tconst { renderContent = () => null } = this.props;\n\t\tconst {\n\t\t\tisUploadInProgress,\n\t\t\tisUploadFailed,\n\t\t\tisSaveInProgress,\n\t\t\tisSaveFailed,\n\t\t} = this.state;\n\t\tconst showSpinner =\n\t\t\tthis.state.isUploadInProgress || this.state.isSaveInProgress;\n\t\tconst progress = this.state.progress * 100;\n\t\t// eslint-disable-next-line @wordpress/i18n-no-collapsible-whitespace\n\t\tconst retryMessageSave = __(\n\t\t\t'Failed to save files.\\nPlease tap for options.'\n\t\t);\n\t\t// eslint-disable-next-line @wordpress/i18n-no-collapsible-whitespace\n\t\tconst retryMessageUpload = __(\n\t\t\t'Failed to upload files.\\nPlease tap for options.'\n\t\t);\n\t\tlet retryMessage = retryMessageSave;\n\t\tif ( isUploadFailed ) {\n\t\t\tretryMessage = retryMessageUpload;\n\t\t}\n\n\t\treturn (\n\t\t\t<View style={ styles.mediaUploadProgress } pointerEvents=\"box-none\">\n\t\t\t\t{ showSpinner && (\n\t\t\t\t\t<View style={ styles.progressBar }>\n\t\t\t\t\t\t<Spinner progress={ progress } testID=\"spinner\" />\n\t\t\t\t\t</View>\n\t\t\t\t) }\n\t\t\t\t{ renderContent( {\n\t\t\t\t\tisUploadInProgress,\n\t\t\t\t\tisUploadFailed,\n\t\t\t\t\tisSaveInProgress,\n\t\t\t\t\tisSaveFailed,\n\t\t\t\t\tretryMessage,\n\t\t\t\t} ) }\n\t\t\t</View>\n\t\t);\n\t}\n}\n\nexport default BlockMediaUpdateProgress;\n"],"mappings":"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","ignoreList":[]}
@@ -57,6 +57,9 @@ const BlockMoverButton = forwardRef(({
57
57
  const instanceId = useInstanceId(BlockMoverButton);
58
58
  const normalizedClientIds = Array.isArray(clientIds) ? clientIds : [clientIds];
59
59
  const blocksCount = normalizedClientIds.length;
60
+ const {
61
+ disabled
62
+ } = props;
60
63
  const {
61
64
  blockType,
62
65
  isDisabled,
@@ -86,7 +89,7 @@ const BlockMoverButton = forwardRef(({
86
89
  } = getBlockListSettings(blockRootClientId) || {};
87
90
  return {
88
91
  blockType: block ? getBlockType(block.name) : null,
89
- isDisabled: direction === 'up' ? isFirstBlock : isLastBlock,
92
+ isDisabled: disabled || (direction === 'up' ? isFirstBlock : isLastBlock),
90
93
  rootClientId: blockRootClientId,
91
94
  firstIndex: firstBlockIndex,
92
95
  isFirst: isFirstBlock,
@@ -1 +1 @@
1
- {"version":3,"names":["classnames","getBlockType","Button","VisuallyHidden","useInstanceId","useSelect","useDispatch","forwardRef","__","isRTL","chevronLeft","chevronRight","chevronUp","chevronDown","getBlockMoverDescription","store","blockEditorStore","getArrowIcon","direction","orientation","getMovementDirectionLabel","moveDirection","BlockMoverButton","clientIds","moverOrientation","props","ref","instanceId","normalizedClientIds","Array","isArray","blocksCount","length","blockType","isDisabled","rootClientId","isFirst","isLast","firstIndex","select","getBlockIndex","getBlockRootClientId","getBlockOrder","getBlock","getBlockListSettings","firstClientId","blockRootClientId","firstBlockIndex","lastBlockIndex","blockOrder","block","isFirstBlock","isLastBlock","blockListOrientation","name","moveBlocksDown","moveBlocksUp","moverFunction","onClick","event","descriptionId","createElement","Fragment","className","icon","label","disabled","__experimentalIsFocusable","id","title","BlockMoverUpButton","BlockMoverDownButton"],"sources":["@wordpress/block-editor/src/components/block-mover/button.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { getBlockType } from '@wordpress/blocks';\nimport { Button, VisuallyHidden } from '@wordpress/components';\nimport { useInstanceId } from '@wordpress/compose';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { forwardRef } from '@wordpress/element';\nimport { __, isRTL } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport {\n\tchevronLeft,\n\tchevronRight,\n\tchevronUp,\n\tchevronDown,\n} from '@wordpress/icons';\nimport { getBlockMoverDescription } from './mover-description';\nimport { store as blockEditorStore } from '../../store';\n\nconst getArrowIcon = ( direction, orientation ) => {\n\tif ( direction === 'up' ) {\n\t\tif ( orientation === 'horizontal' ) {\n\t\t\treturn isRTL() ? chevronRight : chevronLeft;\n\t\t}\n\t\treturn chevronUp;\n\t} else if ( direction === 'down' ) {\n\t\tif ( orientation === 'horizontal' ) {\n\t\t\treturn isRTL() ? chevronLeft : chevronRight;\n\t\t}\n\t\treturn chevronDown;\n\t}\n\treturn null;\n};\n\nconst getMovementDirectionLabel = ( moveDirection, orientation ) => {\n\tif ( moveDirection === 'up' ) {\n\t\tif ( orientation === 'horizontal' ) {\n\t\t\treturn isRTL() ? __( 'Move right' ) : __( 'Move left' );\n\t\t}\n\t\treturn __( 'Move up' );\n\t} else if ( moveDirection === 'down' ) {\n\t\tif ( orientation === 'horizontal' ) {\n\t\t\treturn isRTL() ? __( 'Move left' ) : __( 'Move right' );\n\t\t}\n\t\treturn __( 'Move down' );\n\t}\n\treturn null;\n};\n\nconst BlockMoverButton = forwardRef(\n\t(\n\t\t{ clientIds, direction, orientation: moverOrientation, ...props },\n\t\tref\n\t) => {\n\t\tconst instanceId = useInstanceId( BlockMoverButton );\n\t\tconst normalizedClientIds = Array.isArray( clientIds )\n\t\t\t? clientIds\n\t\t\t: [ clientIds ];\n\t\tconst blocksCount = normalizedClientIds.length;\n\n\t\tconst {\n\t\t\tblockType,\n\t\t\tisDisabled,\n\t\t\trootClientId,\n\t\t\tisFirst,\n\t\t\tisLast,\n\t\t\tfirstIndex,\n\t\t\torientation = 'vertical',\n\t\t} = useSelect(\n\t\t\t( select ) => {\n\t\t\t\tconst {\n\t\t\t\t\tgetBlockIndex,\n\t\t\t\t\tgetBlockRootClientId,\n\t\t\t\t\tgetBlockOrder,\n\t\t\t\t\tgetBlock,\n\t\t\t\t\tgetBlockListSettings,\n\t\t\t\t} = select( blockEditorStore );\n\t\t\t\tconst firstClientId = normalizedClientIds[ 0 ];\n\t\t\t\tconst blockRootClientId = getBlockRootClientId( firstClientId );\n\t\t\t\tconst firstBlockIndex = getBlockIndex( firstClientId );\n\t\t\t\tconst lastBlockIndex = getBlockIndex(\n\t\t\t\t\tnormalizedClientIds[ normalizedClientIds.length - 1 ]\n\t\t\t\t);\n\t\t\t\tconst blockOrder = getBlockOrder( blockRootClientId );\n\t\t\t\tconst block = getBlock( firstClientId );\n\t\t\t\tconst isFirstBlock = firstBlockIndex === 0;\n\t\t\t\tconst isLastBlock = lastBlockIndex === blockOrder.length - 1;\n\t\t\t\tconst { orientation: blockListOrientation } =\n\t\t\t\t\tgetBlockListSettings( blockRootClientId ) || {};\n\n\t\t\t\treturn {\n\t\t\t\t\tblockType: block ? getBlockType( block.name ) : null,\n\t\t\t\t\tisDisabled: direction === 'up' ? isFirstBlock : isLastBlock,\n\t\t\t\t\trootClientId: blockRootClientId,\n\t\t\t\t\tfirstIndex: firstBlockIndex,\n\t\t\t\t\tisFirst: isFirstBlock,\n\t\t\t\t\tisLast: isLastBlock,\n\t\t\t\t\torientation: moverOrientation || blockListOrientation,\n\t\t\t\t};\n\t\t\t},\n\t\t\t[ clientIds, direction ]\n\t\t);\n\n\t\tconst { moveBlocksDown, moveBlocksUp } =\n\t\t\tuseDispatch( blockEditorStore );\n\t\tconst moverFunction =\n\t\t\tdirection === 'up' ? moveBlocksUp : moveBlocksDown;\n\n\t\tconst onClick = ( event ) => {\n\t\t\tmoverFunction( clientIds, rootClientId );\n\t\t\tif ( props.onClick ) {\n\t\t\t\tprops.onClick( event );\n\t\t\t}\n\t\t};\n\n\t\tconst descriptionId = `block-editor-block-mover-button__description-${ instanceId }`;\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<Button\n\t\t\t\t\tref={ ref }\n\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t'block-editor-block-mover-button',\n\t\t\t\t\t\t`is-${ direction }-button`\n\t\t\t\t\t) }\n\t\t\t\t\ticon={ getArrowIcon( direction, orientation ) }\n\t\t\t\t\tlabel={ getMovementDirectionLabel(\n\t\t\t\t\t\tdirection,\n\t\t\t\t\t\torientation\n\t\t\t\t\t) }\n\t\t\t\t\taria-describedby={ descriptionId }\n\t\t\t\t\t{ ...props }\n\t\t\t\t\tonClick={ isDisabled ? null : onClick }\n\t\t\t\t\tdisabled={ isDisabled }\n\t\t\t\t\t__experimentalIsFocusable\n\t\t\t\t/>\n\t\t\t\t<VisuallyHidden id={ descriptionId }>\n\t\t\t\t\t{ getBlockMoverDescription(\n\t\t\t\t\t\tblocksCount,\n\t\t\t\t\t\tblockType && blockType.title,\n\t\t\t\t\t\tfirstIndex,\n\t\t\t\t\t\tisFirst,\n\t\t\t\t\t\tisLast,\n\t\t\t\t\t\tdirection === 'up' ? -1 : 1,\n\t\t\t\t\t\torientation\n\t\t\t\t\t) }\n\t\t\t\t</VisuallyHidden>\n\t\t\t</>\n\t\t);\n\t}\n);\n\nexport const BlockMoverUpButton = forwardRef( ( props, ref ) => {\n\treturn <BlockMoverButton direction=\"up\" ref={ ref } { ...props } />;\n} );\n\nexport const BlockMoverDownButton = forwardRef( ( props, ref ) => {\n\treturn <BlockMoverButton direction=\"down\" ref={ ref } { ...props } />;\n} );\n"],"mappings":"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"}
1
+ {"version":3,"names":["classnames","getBlockType","Button","VisuallyHidden","useInstanceId","useSelect","useDispatch","forwardRef","__","isRTL","chevronLeft","chevronRight","chevronUp","chevronDown","getBlockMoverDescription","store","blockEditorStore","getArrowIcon","direction","orientation","getMovementDirectionLabel","moveDirection","BlockMoverButton","clientIds","moverOrientation","props","ref","instanceId","normalizedClientIds","Array","isArray","blocksCount","length","disabled","blockType","isDisabled","rootClientId","isFirst","isLast","firstIndex","select","getBlockIndex","getBlockRootClientId","getBlockOrder","getBlock","getBlockListSettings","firstClientId","blockRootClientId","firstBlockIndex","lastBlockIndex","blockOrder","block","isFirstBlock","isLastBlock","blockListOrientation","name","moveBlocksDown","moveBlocksUp","moverFunction","onClick","event","descriptionId","createElement","Fragment","className","icon","label","__experimentalIsFocusable","id","title","BlockMoverUpButton","BlockMoverDownButton"],"sources":["@wordpress/block-editor/src/components/block-mover/button.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { getBlockType } from '@wordpress/blocks';\nimport { Button, VisuallyHidden } from '@wordpress/components';\nimport { useInstanceId } from '@wordpress/compose';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { forwardRef } from '@wordpress/element';\nimport { __, isRTL } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport {\n\tchevronLeft,\n\tchevronRight,\n\tchevronUp,\n\tchevronDown,\n} from '@wordpress/icons';\nimport { getBlockMoverDescription } from './mover-description';\nimport { store as blockEditorStore } from '../../store';\n\nconst getArrowIcon = ( direction, orientation ) => {\n\tif ( direction === 'up' ) {\n\t\tif ( orientation === 'horizontal' ) {\n\t\t\treturn isRTL() ? chevronRight : chevronLeft;\n\t\t}\n\t\treturn chevronUp;\n\t} else if ( direction === 'down' ) {\n\t\tif ( orientation === 'horizontal' ) {\n\t\t\treturn isRTL() ? chevronLeft : chevronRight;\n\t\t}\n\t\treturn chevronDown;\n\t}\n\treturn null;\n};\n\nconst getMovementDirectionLabel = ( moveDirection, orientation ) => {\n\tif ( moveDirection === 'up' ) {\n\t\tif ( orientation === 'horizontal' ) {\n\t\t\treturn isRTL() ? __( 'Move right' ) : __( 'Move left' );\n\t\t}\n\t\treturn __( 'Move up' );\n\t} else if ( moveDirection === 'down' ) {\n\t\tif ( orientation === 'horizontal' ) {\n\t\t\treturn isRTL() ? __( 'Move left' ) : __( 'Move right' );\n\t\t}\n\t\treturn __( 'Move down' );\n\t}\n\treturn null;\n};\n\nconst BlockMoverButton = forwardRef(\n\t(\n\t\t{ clientIds, direction, orientation: moverOrientation, ...props },\n\t\tref\n\t) => {\n\t\tconst instanceId = useInstanceId( BlockMoverButton );\n\t\tconst normalizedClientIds = Array.isArray( clientIds )\n\t\t\t? clientIds\n\t\t\t: [ clientIds ];\n\t\tconst blocksCount = normalizedClientIds.length;\n\t\tconst { disabled } = props;\n\n\t\tconst {\n\t\t\tblockType,\n\t\t\tisDisabled,\n\t\t\trootClientId,\n\t\t\tisFirst,\n\t\t\tisLast,\n\t\t\tfirstIndex,\n\t\t\torientation = 'vertical',\n\t\t} = useSelect(\n\t\t\t( select ) => {\n\t\t\t\tconst {\n\t\t\t\t\tgetBlockIndex,\n\t\t\t\t\tgetBlockRootClientId,\n\t\t\t\t\tgetBlockOrder,\n\t\t\t\t\tgetBlock,\n\t\t\t\t\tgetBlockListSettings,\n\t\t\t\t} = select( blockEditorStore );\n\t\t\t\tconst firstClientId = normalizedClientIds[ 0 ];\n\t\t\t\tconst blockRootClientId = getBlockRootClientId( firstClientId );\n\t\t\t\tconst firstBlockIndex = getBlockIndex( firstClientId );\n\t\t\t\tconst lastBlockIndex = getBlockIndex(\n\t\t\t\t\tnormalizedClientIds[ normalizedClientIds.length - 1 ]\n\t\t\t\t);\n\t\t\t\tconst blockOrder = getBlockOrder( blockRootClientId );\n\t\t\t\tconst block = getBlock( firstClientId );\n\t\t\t\tconst isFirstBlock = firstBlockIndex === 0;\n\t\t\t\tconst isLastBlock = lastBlockIndex === blockOrder.length - 1;\n\t\t\t\tconst { orientation: blockListOrientation } =\n\t\t\t\t\tgetBlockListSettings( blockRootClientId ) || {};\n\n\t\t\t\treturn {\n\t\t\t\t\tblockType: block ? getBlockType( block.name ) : null,\n\t\t\t\t\tisDisabled:\n\t\t\t\t\t\tdisabled ||\n\t\t\t\t\t\t( direction === 'up' ? isFirstBlock : isLastBlock ),\n\t\t\t\t\trootClientId: blockRootClientId,\n\t\t\t\t\tfirstIndex: firstBlockIndex,\n\t\t\t\t\tisFirst: isFirstBlock,\n\t\t\t\t\tisLast: isLastBlock,\n\t\t\t\t\torientation: moverOrientation || blockListOrientation,\n\t\t\t\t};\n\t\t\t},\n\t\t\t[ clientIds, direction ]\n\t\t);\n\n\t\tconst { moveBlocksDown, moveBlocksUp } =\n\t\t\tuseDispatch( blockEditorStore );\n\t\tconst moverFunction =\n\t\t\tdirection === 'up' ? moveBlocksUp : moveBlocksDown;\n\n\t\tconst onClick = ( event ) => {\n\t\t\tmoverFunction( clientIds, rootClientId );\n\t\t\tif ( props.onClick ) {\n\t\t\t\tprops.onClick( event );\n\t\t\t}\n\t\t};\n\n\t\tconst descriptionId = `block-editor-block-mover-button__description-${ instanceId }`;\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<Button\n\t\t\t\t\tref={ ref }\n\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t'block-editor-block-mover-button',\n\t\t\t\t\t\t`is-${ direction }-button`\n\t\t\t\t\t) }\n\t\t\t\t\ticon={ getArrowIcon( direction, orientation ) }\n\t\t\t\t\tlabel={ getMovementDirectionLabel(\n\t\t\t\t\t\tdirection,\n\t\t\t\t\t\torientation\n\t\t\t\t\t) }\n\t\t\t\t\taria-describedby={ descriptionId }\n\t\t\t\t\t{ ...props }\n\t\t\t\t\tonClick={ isDisabled ? null : onClick }\n\t\t\t\t\tdisabled={ isDisabled }\n\t\t\t\t\t__experimentalIsFocusable\n\t\t\t\t/>\n\t\t\t\t<VisuallyHidden id={ descriptionId }>\n\t\t\t\t\t{ getBlockMoverDescription(\n\t\t\t\t\t\tblocksCount,\n\t\t\t\t\t\tblockType && blockType.title,\n\t\t\t\t\t\tfirstIndex,\n\t\t\t\t\t\tisFirst,\n\t\t\t\t\t\tisLast,\n\t\t\t\t\t\tdirection === 'up' ? -1 : 1,\n\t\t\t\t\t\torientation\n\t\t\t\t\t) }\n\t\t\t\t</VisuallyHidden>\n\t\t\t</>\n\t\t);\n\t}\n);\n\nexport const BlockMoverUpButton = forwardRef( ( props, ref ) => {\n\treturn <BlockMoverButton direction=\"up\" ref={ ref } { ...props } />;\n} );\n\nexport const BlockMoverDownButton = forwardRef( ( props, ref ) => {\n\treturn <BlockMoverButton direction=\"down\" ref={ ref } { ...props } />;\n} );\n"],"mappings":";AAAA;AACA;AACA;AACA,OAAOA,UAAU,MAAM,YAAY;;AAEnC;AACA;AACA;AACA,SAASC,YAAY,QAAQ,mBAAmB;AAChD,SAASC,MAAM,EAAEC,cAAc,QAAQ,uBAAuB;AAC9D,SAASC,aAAa,QAAQ,oBAAoB;AAClD,SAASC,SAAS,EAAEC,WAAW,QAAQ,iBAAiB;AACxD,SAASC,UAAU,QAAQ,oBAAoB;AAC/C,SAASC,EAAE,EAAEC,KAAK,QAAQ,iBAAiB;;AAE3C;AACA;AACA;AACA,SACCC,WAAW,EACXC,YAAY,EACZC,SAAS,EACTC,WAAW,QACL,kBAAkB;AACzB,SAASC,wBAAwB,QAAQ,qBAAqB;AAC9D,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,aAAa;AAEvD,MAAMC,YAAY,GAAGA,CAAEC,SAAS,EAAEC,WAAW,KAAM;EAClD,IAAKD,SAAS,KAAK,IAAI,EAAG;IACzB,IAAKC,WAAW,KAAK,YAAY,EAAG;MACnC,OAAOV,KAAK,CAAC,CAAC,GAAGE,YAAY,GAAGD,WAAW;IAC5C;IACA,OAAOE,SAAS;EACjB,CAAC,MAAM,IAAKM,SAAS,KAAK,MAAM,EAAG;IAClC,IAAKC,WAAW,KAAK,YAAY,EAAG;MACnC,OAAOV,KAAK,CAAC,CAAC,GAAGC,WAAW,GAAGC,YAAY;IAC5C;IACA,OAAOE,WAAW;EACnB;EACA,OAAO,IAAI;AACZ,CAAC;AAED,MAAMO,yBAAyB,GAAGA,CAAEC,aAAa,EAAEF,WAAW,KAAM;EACnE,IAAKE,aAAa,KAAK,IAAI,EAAG;IAC7B,IAAKF,WAAW,KAAK,YAAY,EAAG;MACnC,OAAOV,KAAK,CAAC,CAAC,GAAGD,EAAE,CAAE,YAAa,CAAC,GAAGA,EAAE,CAAE,WAAY,CAAC;IACxD;IACA,OAAOA,EAAE,CAAE,SAAU,CAAC;EACvB,CAAC,MAAM,IAAKa,aAAa,KAAK,MAAM,EAAG;IACtC,IAAKF,WAAW,KAAK,YAAY,EAAG;MACnC,OAAOV,KAAK,CAAC,CAAC,GAAGD,EAAE,CAAE,WAAY,CAAC,GAAGA,EAAE,CAAE,YAAa,CAAC;IACxD;IACA,OAAOA,EAAE,CAAE,WAAY,CAAC;EACzB;EACA,OAAO,IAAI;AACZ,CAAC;AAED,MAAMc,gBAAgB,GAAGf,UAAU,CAClC,CACC;EAAEgB,SAAS;EAAEL,SAAS;EAAEC,WAAW,EAAEK,gBAAgB;EAAE,GAAGC;AAAM,CAAC,EACjEC,GAAG,KACC;EACJ,MAAMC,UAAU,GAAGvB,aAAa,CAAEkB,gBAAiB,CAAC;EACpD,MAAMM,mBAAmB,GAAGC,KAAK,CAACC,OAAO,CAAEP,SAAU,CAAC,GACnDA,SAAS,GACT,CAAEA,SAAS,CAAE;EAChB,MAAMQ,WAAW,GAAGH,mBAAmB,CAACI,MAAM;EAC9C,MAAM;IAAEC;EAAS,CAAC,GAAGR,KAAK;EAE1B,MAAM;IACLS,SAAS;IACTC,UAAU;IACVC,YAAY;IACZC,OAAO;IACPC,MAAM;IACNC,UAAU;IACVpB,WAAW,GAAG;EACf,CAAC,GAAGd,SAAS,CACVmC,MAAM,IAAM;IACb,MAAM;MACLC,aAAa;MACbC,oBAAoB;MACpBC,aAAa;MACbC,QAAQ;MACRC;IACD,CAAC,GAAGL,MAAM,CAAExB,gBAAiB,CAAC;IAC9B,MAAM8B,aAAa,GAAGlB,mBAAmB,CAAE,CAAC,CAAE;IAC9C,MAAMmB,iBAAiB,GAAGL,oBAAoB,CAAEI,aAAc,CAAC;IAC/D,MAAME,eAAe,GAAGP,aAAa,CAAEK,aAAc,CAAC;IACtD,MAAMG,cAAc,GAAGR,aAAa,CACnCb,mBAAmB,CAAEA,mBAAmB,CAACI,MAAM,GAAG,CAAC,CACpD,CAAC;IACD,MAAMkB,UAAU,GAAGP,aAAa,CAAEI,iBAAkB,CAAC;IACrD,MAAMI,KAAK,GAAGP,QAAQ,CAAEE,aAAc,CAAC;IACvC,MAAMM,YAAY,GAAGJ,eAAe,KAAK,CAAC;IAC1C,MAAMK,WAAW,GAAGJ,cAAc,KAAKC,UAAU,CAAClB,MAAM,GAAG,CAAC;IAC5D,MAAM;MAAEb,WAAW,EAAEmC;IAAqB,CAAC,GAC1CT,oBAAoB,CAAEE,iBAAkB,CAAC,IAAI,CAAC,CAAC;IAEhD,OAAO;MACNb,SAAS,EAAEiB,KAAK,GAAGlD,YAAY,CAAEkD,KAAK,CAACI,IAAK,CAAC,GAAG,IAAI;MACpDpB,UAAU,EACTF,QAAQ,KACNf,SAAS,KAAK,IAAI,GAAGkC,YAAY,GAAGC,WAAW,CAAE;MACpDjB,YAAY,EAAEW,iBAAiB;MAC/BR,UAAU,EAAES,eAAe;MAC3BX,OAAO,EAAEe,YAAY;MACrBd,MAAM,EAAEe,WAAW;MACnBlC,WAAW,EAAEK,gBAAgB,IAAI8B;IAClC,CAAC;EACF,CAAC,EACD,CAAE/B,SAAS,EAAEL,SAAS,CACvB,CAAC;EAED,MAAM;IAAEsC,cAAc;IAAEC;EAAa,CAAC,GACrCnD,WAAW,CAAEU,gBAAiB,CAAC;EAChC,MAAM0C,aAAa,GAClBxC,SAAS,KAAK,IAAI,GAAGuC,YAAY,GAAGD,cAAc;EAEnD,MAAMG,OAAO,GAAKC,KAAK,IAAM;IAC5BF,aAAa,CAAEnC,SAAS,EAAEa,YAAa,CAAC;IACxC,IAAKX,KAAK,CAACkC,OAAO,EAAG;MACpBlC,KAAK,CAACkC,OAAO,CAAEC,KAAM,CAAC;IACvB;EACD,CAAC;EAED,MAAMC,aAAa,GAAI,gDAAgDlC,UAAY,EAAC;EAEpF,OACCmC,aAAA,CAAAC,QAAA,QACCD,aAAA,CAAC5D,MAAM;IACNwB,GAAG,EAAGA,GAAK;IACXsC,SAAS,EAAGhE,UAAU,CACrB,iCAAiC,EAChC,MAAMkB,SAAW,SACnB,CAAG;IACH+C,IAAI,EAAGhD,YAAY,CAAEC,SAAS,EAAEC,WAAY,CAAG;IAC/C+C,KAAK,EAAG9C,yBAAyB,CAChCF,SAAS,EACTC,WACD,CAAG;IACH,oBAAmB0C,aAAe;IAAA,GAC7BpC,KAAK;IACVkC,OAAO,EAAGxB,UAAU,GAAG,IAAI,GAAGwB,OAAS;IACvC1B,QAAQ,EAAGE,UAAY;IACvBgC,yBAAyB;EAAA,CACzB,CAAC,EACFL,aAAA,CAAC3D,cAAc;IAACiE,EAAE,EAAGP;EAAe,GACjC/C,wBAAwB,CACzBiB,WAAW,EACXG,SAAS,IAAIA,SAAS,CAACmC,KAAK,EAC5B9B,UAAU,EACVF,OAAO,EACPC,MAAM,EACNpB,SAAS,KAAK,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,EAC3BC,WACD,CACe,CACf,CAAC;AAEL,CACD,CAAC;AAED,OAAO,MAAMmD,kBAAkB,GAAG/D,UAAU,CAAE,CAAEkB,KAAK,EAAEC,GAAG,KAAM;EAC/D,OAAOoC,aAAA,CAACxC,gBAAgB;IAACJ,SAAS,EAAC,IAAI;IAACQ,GAAG,EAAGA,GAAK;IAAA,GAAMD;EAAK,CAAI,CAAC;AACpE,CAAE,CAAC;AAEH,OAAO,MAAM8C,oBAAoB,GAAGhE,UAAU,CAAE,CAAEkB,KAAK,EAAEC,GAAG,KAAM;EACjE,OAAOoC,aAAA,CAACxC,gBAAgB;IAACJ,SAAS,EAAC,MAAM;IAACQ,GAAG,EAAGA,GAAK;IAAA,GAAMD;EAAK,CAAI,CAAC;AACtE,CAAE,CAAC","ignoreList":[]}
@@ -21,7 +21,9 @@ import { BlockMoverUpButton, BlockMoverDownButton } from './button';
21
21
  import { store as blockEditorStore } from '../../store';
22
22
  function BlockMover({
23
23
  clientIds,
24
- hideDragHandle
24
+ hideDragHandle,
25
+ isBlockMoverUpButtonDisabled,
26
+ isBlockMoverDownButtonDisabled
25
27
  }) {
26
28
  const {
27
29
  canMove,
@@ -75,9 +77,11 @@ function BlockMover({
75
77
  })), createElement("div", {
76
78
  className: "block-editor-block-mover__move-button-container"
77
79
  }, createElement(ToolbarItem, null, itemProps => createElement(BlockMoverUpButton, {
80
+ disabled: isBlockMoverUpButtonDisabled,
78
81
  clientIds: clientIds,
79
82
  ...itemProps
80
83
  })), createElement(ToolbarItem, null, itemProps => createElement(BlockMoverDownButton, {
84
+ disabled: isBlockMoverDownButtonDisabled,
81
85
  clientIds: clientIds,
82
86
  ...itemProps
83
87
  }))));
@@ -1 +1 @@
1
- {"version":3,"names":["classnames","dragHandle","ToolbarGroup","ToolbarItem","Button","useSelect","__","BlockDraggable","BlockMoverUpButton","BlockMoverDownButton","store","blockEditorStore","BlockMover","clientIds","hideDragHandle","canMove","rootClientId","isFirst","isLast","orientation","select","getBlockIndex","getBlockListSettings","canMoveBlocks","getBlockOrder","getBlockRootClientId","normalizedClientIds","Array","isArray","firstClientId","_rootClientId","firstIndex","lastIndex","length","blockOrder","dragHandleLabel","createElement","className","fadeWhenDisabled","draggableProps","icon","label","tabIndex","itemProps"],"sources":["@wordpress/block-editor/src/components/block-mover/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\n\nimport { dragHandle } from '@wordpress/icons';\nimport { ToolbarGroup, ToolbarItem, Button } from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport BlockDraggable from '../block-draggable';\nimport { BlockMoverUpButton, BlockMoverDownButton } from './button';\nimport { store as blockEditorStore } from '../../store';\n\nfunction BlockMover( { clientIds, hideDragHandle } ) {\n\tconst { canMove, rootClientId, isFirst, isLast, orientation } = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockIndex,\n\t\t\t\tgetBlockListSettings,\n\t\t\t\tcanMoveBlocks,\n\t\t\t\tgetBlockOrder,\n\t\t\t\tgetBlockRootClientId,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst normalizedClientIds = Array.isArray( clientIds )\n\t\t\t\t? clientIds\n\t\t\t\t: [ clientIds ];\n\t\t\tconst firstClientId = normalizedClientIds[ 0 ];\n\t\t\tconst _rootClientId = getBlockRootClientId( firstClientId );\n\t\t\tconst firstIndex = getBlockIndex( firstClientId );\n\t\t\tconst lastIndex = getBlockIndex(\n\t\t\t\tnormalizedClientIds[ normalizedClientIds.length - 1 ]\n\t\t\t);\n\t\t\tconst blockOrder = getBlockOrder( _rootClientId );\n\n\t\t\treturn {\n\t\t\t\tcanMove: canMoveBlocks( clientIds, _rootClientId ),\n\t\t\t\trootClientId: _rootClientId,\n\t\t\t\tisFirst: firstIndex === 0,\n\t\t\t\tisLast: lastIndex === blockOrder.length - 1,\n\t\t\t\torientation: getBlockListSettings( _rootClientId )?.orientation,\n\t\t\t};\n\t\t},\n\t\t[ clientIds ]\n\t);\n\n\tif ( ! canMove || ( isFirst && isLast && ! rootClientId ) ) {\n\t\treturn null;\n\t}\n\n\tconst dragHandleLabel = __( 'Drag' );\n\n\treturn (\n\t\t<ToolbarGroup\n\t\t\tclassName={ classnames( 'block-editor-block-mover', {\n\t\t\t\t'is-horizontal': orientation === 'horizontal',\n\t\t\t} ) }\n\t\t>\n\t\t\t{ ! hideDragHandle && (\n\t\t\t\t<BlockDraggable clientIds={ clientIds } fadeWhenDisabled>\n\t\t\t\t\t{ ( draggableProps ) => (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\ticon={ dragHandle }\n\t\t\t\t\t\t\tclassName=\"block-editor-block-mover__drag-handle\"\n\t\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\t\tlabel={ dragHandleLabel }\n\t\t\t\t\t\t\t// Should not be able to tab to drag handle as this\n\t\t\t\t\t\t\t// button can only be used with a pointer device.\n\t\t\t\t\t\t\ttabIndex=\"-1\"\n\t\t\t\t\t\t\t{ ...draggableProps }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</BlockDraggable>\n\t\t\t) }\n\t\t\t<div className=\"block-editor-block-mover__move-button-container\">\n\t\t\t\t<ToolbarItem>\n\t\t\t\t\t{ ( itemProps ) => (\n\t\t\t\t\t\t<BlockMoverUpButton\n\t\t\t\t\t\t\tclientIds={ clientIds }\n\t\t\t\t\t\t\t{ ...itemProps }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</ToolbarItem>\n\t\t\t\t<ToolbarItem>\n\t\t\t\t\t{ ( itemProps ) => (\n\t\t\t\t\t\t<BlockMoverDownButton\n\t\t\t\t\t\t\tclientIds={ clientIds }\n\t\t\t\t\t\t\t{ ...itemProps }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</ToolbarItem>\n\t\t\t</div>\n\t\t</ToolbarGroup>\n\t);\n}\n\n/**\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/block-mover/README.md\n */\nexport default BlockMover;\n"],"mappings":"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"}
1
+ {"version":3,"names":["classnames","dragHandle","ToolbarGroup","ToolbarItem","Button","useSelect","__","BlockDraggable","BlockMoverUpButton","BlockMoverDownButton","store","blockEditorStore","BlockMover","clientIds","hideDragHandle","isBlockMoverUpButtonDisabled","isBlockMoverDownButtonDisabled","canMove","rootClientId","isFirst","isLast","orientation","select","getBlockIndex","getBlockListSettings","canMoveBlocks","getBlockOrder","getBlockRootClientId","normalizedClientIds","Array","isArray","firstClientId","_rootClientId","firstIndex","lastIndex","length","blockOrder","dragHandleLabel","createElement","className","fadeWhenDisabled","draggableProps","icon","label","tabIndex","itemProps","disabled"],"sources":["@wordpress/block-editor/src/components/block-mover/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\n\nimport { dragHandle } from '@wordpress/icons';\nimport { ToolbarGroup, ToolbarItem, Button } from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport BlockDraggable from '../block-draggable';\nimport { BlockMoverUpButton, BlockMoverDownButton } from './button';\nimport { store as blockEditorStore } from '../../store';\n\nfunction BlockMover( {\n\tclientIds,\n\thideDragHandle,\n\tisBlockMoverUpButtonDisabled,\n\tisBlockMoverDownButtonDisabled,\n} ) {\n\tconst { canMove, rootClientId, isFirst, isLast, orientation } = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockIndex,\n\t\t\t\tgetBlockListSettings,\n\t\t\t\tcanMoveBlocks,\n\t\t\t\tgetBlockOrder,\n\t\t\t\tgetBlockRootClientId,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst normalizedClientIds = Array.isArray( clientIds )\n\t\t\t\t? clientIds\n\t\t\t\t: [ clientIds ];\n\t\t\tconst firstClientId = normalizedClientIds[ 0 ];\n\t\t\tconst _rootClientId = getBlockRootClientId( firstClientId );\n\t\t\tconst firstIndex = getBlockIndex( firstClientId );\n\t\t\tconst lastIndex = getBlockIndex(\n\t\t\t\tnormalizedClientIds[ normalizedClientIds.length - 1 ]\n\t\t\t);\n\t\t\tconst blockOrder = getBlockOrder( _rootClientId );\n\n\t\t\treturn {\n\t\t\t\tcanMove: canMoveBlocks( clientIds, _rootClientId ),\n\t\t\t\trootClientId: _rootClientId,\n\t\t\t\tisFirst: firstIndex === 0,\n\t\t\t\tisLast: lastIndex === blockOrder.length - 1,\n\t\t\t\torientation: getBlockListSettings( _rootClientId )?.orientation,\n\t\t\t};\n\t\t},\n\t\t[ clientIds ]\n\t);\n\n\tif ( ! canMove || ( isFirst && isLast && ! rootClientId ) ) {\n\t\treturn null;\n\t}\n\n\tconst dragHandleLabel = __( 'Drag' );\n\n\treturn (\n\t\t<ToolbarGroup\n\t\t\tclassName={ classnames( 'block-editor-block-mover', {\n\t\t\t\t'is-horizontal': orientation === 'horizontal',\n\t\t\t} ) }\n\t\t>\n\t\t\t{ ! hideDragHandle && (\n\t\t\t\t<BlockDraggable clientIds={ clientIds } fadeWhenDisabled>\n\t\t\t\t\t{ ( draggableProps ) => (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\ticon={ dragHandle }\n\t\t\t\t\t\t\tclassName=\"block-editor-block-mover__drag-handle\"\n\t\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\t\tlabel={ dragHandleLabel }\n\t\t\t\t\t\t\t// Should not be able to tab to drag handle as this\n\t\t\t\t\t\t\t// button can only be used with a pointer device.\n\t\t\t\t\t\t\ttabIndex=\"-1\"\n\t\t\t\t\t\t\t{ ...draggableProps }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</BlockDraggable>\n\t\t\t) }\n\t\t\t<div className=\"block-editor-block-mover__move-button-container\">\n\t\t\t\t<ToolbarItem>\n\t\t\t\t\t{ ( itemProps ) => (\n\t\t\t\t\t\t<BlockMoverUpButton\n\t\t\t\t\t\t\tdisabled={ isBlockMoverUpButtonDisabled }\n\t\t\t\t\t\t\tclientIds={ clientIds }\n\t\t\t\t\t\t\t{ ...itemProps }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</ToolbarItem>\n\t\t\t\t<ToolbarItem>\n\t\t\t\t\t{ ( itemProps ) => (\n\t\t\t\t\t\t<BlockMoverDownButton\n\t\t\t\t\t\t\tdisabled={ isBlockMoverDownButtonDisabled }\n\t\t\t\t\t\t\tclientIds={ clientIds }\n\t\t\t\t\t\t\t{ ...itemProps }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</ToolbarItem>\n\t\t\t</div>\n\t\t</ToolbarGroup>\n\t);\n}\n\n/**\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/block-mover/README.md\n */\nexport default BlockMover;\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["Platform","__","Picker","ToolbarButton","ToolbarGroup","withInstanceId","compose","withSelect","withDispatch","useCallback","useEffect","useRef","useState","getMoversSetup","store","blockEditorStore","BLOCK_MOVER_DIRECTION_TOP","BLOCK_MOVER_DIRECTION_BOTTOM","BlockMover","isFirst","isLast","canMove","onMoveDown","onMoveUp","onLongMove","firstIndex","numberOfBlocks","rootClientId","isStackedHorizontally","pickerRef","shouldPresentPicker","setShouldPresentPicker","blockPageMoverState","setBlockPageMoverState","undefined","showBlockPageMover","direction","current","presentPicker","description","backwardButtonHint","forwardButtonHint","firstBlockTitle","lastBlockTitle","icon","backward","backwardButtonIcon","forward","forwardButtonIcon","title","backwardButtonTitle","forwardButtonTitle","blockPageMoverOptions","label","value","onSelect","filter","el","onPickerSelect","option","find","onLongPressMoveUp","onLongPressMoveDown","createElement","isDisabled","onClick","onLongPress","extraProps","hint","ref","options","onChange","leftAlign","hideCancelButton","OS","select","clientIds","getBlockIndex","canMoveBlocks","getBlockRootClientId","getBlockOrder","normalizedClientIds","Array","isArray","firstClientId","blockOrder","lastIndex","length","dispatch","moveBlocksDown","moveBlocksUp","moveBlocksToPosition","args","targetIndex"],"sources":["@wordpress/block-editor/src/components/block-mover/index.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { Platform } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { Picker, ToolbarButton, ToolbarGroup } from '@wordpress/components';\nimport { withInstanceId, compose } from '@wordpress/compose';\nimport { withSelect, withDispatch } from '@wordpress/data';\nimport { useCallback, useEffect, useRef, useState } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { getMoversSetup } from './mover-description';\nimport { store as blockEditorStore } from '../../store';\n\nexport const BLOCK_MOVER_DIRECTION_TOP = 'blockPageMoverOptions-moveToTop';\nexport const BLOCK_MOVER_DIRECTION_BOTTOM =\n\t'blockPageMoverOptions-moveToBottom';\n\nexport const BlockMover = ( {\n\tisFirst,\n\tisLast,\n\tcanMove,\n\tonMoveDown,\n\tonMoveUp,\n\tonLongMove,\n\tfirstIndex,\n\tnumberOfBlocks,\n\trootClientId,\n\tisStackedHorizontally,\n} ) => {\n\tconst pickerRef = useRef();\n\tconst [ shouldPresentPicker, setShouldPresentPicker ] = useState( false );\n\tconst [ blockPageMoverState, setBlockPageMoverState ] =\n\t\tuseState( undefined );\n\tconst showBlockPageMover = ( direction ) => () => {\n\t\tif ( ! pickerRef.current ) {\n\t\t\tsetBlockPageMoverState( undefined );\n\t\t\treturn;\n\t\t}\n\n\t\tsetBlockPageMoverState( direction );\n\t\tsetShouldPresentPicker( true );\n\t};\n\n\t// Ensure that the picker is only presented after state updates.\n\tuseEffect( () => {\n\t\tif ( shouldPresentPicker ) {\n\t\t\tpickerRef.current?.presentPicker();\n\t\t\tsetShouldPresentPicker( false );\n\t\t}\n\t}, [ shouldPresentPicker ] );\n\n\tconst {\n\t\tdescription: {\n\t\t\tbackwardButtonHint,\n\t\t\tforwardButtonHint,\n\t\t\tfirstBlockTitle,\n\t\t\tlastBlockTitle,\n\t\t},\n\t\ticon: { backward: backwardButtonIcon, forward: forwardButtonIcon },\n\t\ttitle: { backward: backwardButtonTitle, forward: forwardButtonTitle },\n\t} = getMoversSetup( isStackedHorizontally, { firstIndex } );\n\n\tconst blockPageMoverOptions = [\n\t\t{\n\t\t\ticon: backwardButtonIcon,\n\t\t\tlabel: __( 'Move to top' ),\n\t\t\tvalue: BLOCK_MOVER_DIRECTION_TOP,\n\t\t\tonSelect: () => {\n\t\t\t\tonLongMove()( 0 );\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\ticon: forwardButtonIcon,\n\t\t\tlabel: __( 'Move to bottom' ),\n\t\t\tvalue: BLOCK_MOVER_DIRECTION_BOTTOM,\n\t\t\tonSelect: () => {\n\t\t\t\tonLongMove()( numberOfBlocks );\n\t\t\t},\n\t\t},\n\t].filter( ( el ) => el.value === blockPageMoverState );\n\n\tconst onPickerSelect = ( value ) => {\n\t\tconst option = blockPageMoverOptions.find(\n\t\t\t( el ) => el.value === value\n\t\t);\n\t\tif ( option && option.onSelect ) option.onSelect();\n\t};\n\n\tconst onLongPressMoveUp = useCallback(\n\t\tshowBlockPageMover( BLOCK_MOVER_DIRECTION_TOP ),\n\t\t[]\n\t);\n\tconst onLongPressMoveDown = useCallback(\n\t\tshowBlockPageMover( BLOCK_MOVER_DIRECTION_BOTTOM ),\n\t\t[]\n\t);\n\n\tif ( ! canMove || ( isFirst && isLast && ! rootClientId ) ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<ToolbarGroup>\n\t\t\t<ToolbarButton\n\t\t\t\ttitle={ ! isFirst ? backwardButtonTitle : firstBlockTitle }\n\t\t\t\tisDisabled={ isFirst }\n\t\t\t\tonClick={ onMoveUp }\n\t\t\t\tonLongPress={ onLongPressMoveUp }\n\t\t\t\ticon={ backwardButtonIcon }\n\t\t\t\textraProps={ { hint: backwardButtonHint } }\n\t\t\t/>\n\n\t\t\t<ToolbarButton\n\t\t\t\ttitle={ ! isLast ? forwardButtonTitle : lastBlockTitle }\n\t\t\t\tisDisabled={ isLast }\n\t\t\t\tonClick={ onMoveDown }\n\t\t\t\tonLongPress={ onLongPressMoveDown }\n\t\t\t\ticon={ forwardButtonIcon }\n\t\t\t\textraProps={ {\n\t\t\t\t\thint: forwardButtonHint,\n\t\t\t\t} }\n\t\t\t/>\n\n\t\t\t<Picker\n\t\t\t\tref={ pickerRef }\n\t\t\t\toptions={ blockPageMoverOptions }\n\t\t\t\tonChange={ onPickerSelect }\n\t\t\t\ttitle={ __( 'Change block position' ) }\n\t\t\t\tleftAlign\n\t\t\t\thideCancelButton={ Platform.OS !== 'ios' }\n\t\t\t/>\n\t\t</ToolbarGroup>\n\t);\n};\n\nexport default compose(\n\twithSelect( ( select, { clientIds } ) => {\n\t\tconst {\n\t\t\tgetBlockIndex,\n\t\t\tcanMoveBlocks,\n\t\t\tgetBlockRootClientId,\n\t\t\tgetBlockOrder,\n\t\t} = select( blockEditorStore );\n\t\tconst normalizedClientIds = Array.isArray( clientIds )\n\t\t\t? clientIds\n\t\t\t: [ clientIds ];\n\t\tconst firstClientId = normalizedClientIds[ 0 ];\n\t\tconst rootClientId = getBlockRootClientId( firstClientId );\n\t\tconst blockOrder = getBlockOrder( rootClientId );\n\t\tconst firstIndex = getBlockIndex( firstClientId );\n\t\tconst lastIndex = getBlockIndex(\n\t\t\tnormalizedClientIds[ normalizedClientIds.length - 1 ]\n\t\t);\n\n\t\treturn {\n\t\t\tfirstIndex,\n\t\t\tnumberOfBlocks: blockOrder.length - 1,\n\t\t\tisFirst: firstIndex === 0,\n\t\t\tisLast: lastIndex === blockOrder.length - 1,\n\t\t\tcanMove: canMoveBlocks( clientIds, rootClientId ),\n\t\t\trootClientId,\n\t\t};\n\t} ),\n\twithDispatch( ( dispatch, { clientIds, rootClientId } ) => {\n\t\tconst { moveBlocksDown, moveBlocksUp, moveBlocksToPosition } =\n\t\t\tdispatch( blockEditorStore );\n\t\treturn {\n\t\t\tonMoveDown: ( ...args ) =>\n\t\t\t\tmoveBlocksDown( clientIds, rootClientId, ...args ),\n\t\t\tonMoveUp: ( ...args ) =>\n\t\t\t\tmoveBlocksUp( clientIds, rootClientId, ...args ),\n\t\t\tonLongMove:\n\t\t\t\t( targetIndex ) =>\n\t\t\t\t( ...args ) =>\n\t\t\t\t\tmoveBlocksToPosition(\n\t\t\t\t\t\tclientIds,\n\t\t\t\t\t\trootClientId,\n\t\t\t\t\t\ttargetIndex,\n\t\t\t\t\t\t...args\n\t\t\t\t\t),\n\t\t};\n\t} ),\n\twithInstanceId\n)( BlockMover );\n"],"mappings":"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"}
1
+ {"version":3,"names":["Platform","__","Picker","ToolbarButton","ToolbarGroup","withInstanceId","compose","withSelect","withDispatch","useCallback","useEffect","useRef","useState","getMoversSetup","store","blockEditorStore","BLOCK_MOVER_DIRECTION_TOP","BLOCK_MOVER_DIRECTION_BOTTOM","BlockMover","isFirst","isLast","canMove","onMoveDown","onMoveUp","onLongMove","firstIndex","numberOfBlocks","rootClientId","isStackedHorizontally","pickerRef","shouldPresentPicker","setShouldPresentPicker","blockPageMoverState","setBlockPageMoverState","undefined","showBlockPageMover","direction","current","presentPicker","description","backwardButtonHint","forwardButtonHint","firstBlockTitle","lastBlockTitle","icon","backward","backwardButtonIcon","forward","forwardButtonIcon","title","backwardButtonTitle","forwardButtonTitle","blockPageMoverOptions","label","value","onSelect","filter","el","onPickerSelect","option","find","onLongPressMoveUp","onLongPressMoveDown","createElement","isDisabled","onClick","onLongPress","extraProps","hint","ref","options","onChange","leftAlign","hideCancelButton","OS","select","clientIds","getBlockIndex","canMoveBlocks","getBlockRootClientId","getBlockOrder","normalizedClientIds","Array","isArray","firstClientId","blockOrder","lastIndex","length","dispatch","moveBlocksDown","moveBlocksUp","moveBlocksToPosition","args","targetIndex"],"sources":["@wordpress/block-editor/src/components/block-mover/index.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { Platform } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { Picker, ToolbarButton, ToolbarGroup } from '@wordpress/components';\nimport { withInstanceId, compose } from '@wordpress/compose';\nimport { withSelect, withDispatch } from '@wordpress/data';\nimport { useCallback, useEffect, useRef, useState } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { getMoversSetup } from './mover-description';\nimport { store as blockEditorStore } from '../../store';\n\nexport const BLOCK_MOVER_DIRECTION_TOP = 'blockPageMoverOptions-moveToTop';\nexport const BLOCK_MOVER_DIRECTION_BOTTOM =\n\t'blockPageMoverOptions-moveToBottom';\n\nexport const BlockMover = ( {\n\tisFirst,\n\tisLast,\n\tcanMove,\n\tonMoveDown,\n\tonMoveUp,\n\tonLongMove,\n\tfirstIndex,\n\tnumberOfBlocks,\n\trootClientId,\n\tisStackedHorizontally,\n} ) => {\n\tconst pickerRef = useRef();\n\tconst [ shouldPresentPicker, setShouldPresentPicker ] = useState( false );\n\tconst [ blockPageMoverState, setBlockPageMoverState ] =\n\t\tuseState( undefined );\n\tconst showBlockPageMover = ( direction ) => () => {\n\t\tif ( ! pickerRef.current ) {\n\t\t\tsetBlockPageMoverState( undefined );\n\t\t\treturn;\n\t\t}\n\n\t\tsetBlockPageMoverState( direction );\n\t\tsetShouldPresentPicker( true );\n\t};\n\n\t// Ensure that the picker is only presented after state updates.\n\tuseEffect( () => {\n\t\tif ( shouldPresentPicker ) {\n\t\t\tpickerRef.current?.presentPicker();\n\t\t\tsetShouldPresentPicker( false );\n\t\t}\n\t}, [ shouldPresentPicker ] );\n\n\tconst {\n\t\tdescription: {\n\t\t\tbackwardButtonHint,\n\t\t\tforwardButtonHint,\n\t\t\tfirstBlockTitle,\n\t\t\tlastBlockTitle,\n\t\t},\n\t\ticon: { backward: backwardButtonIcon, forward: forwardButtonIcon },\n\t\ttitle: { backward: backwardButtonTitle, forward: forwardButtonTitle },\n\t} = getMoversSetup( isStackedHorizontally, { firstIndex } );\n\n\tconst blockPageMoverOptions = [\n\t\t{\n\t\t\ticon: backwardButtonIcon,\n\t\t\tlabel: __( 'Move to top' ),\n\t\t\tvalue: BLOCK_MOVER_DIRECTION_TOP,\n\t\t\tonSelect: () => {\n\t\t\t\tonLongMove()( 0 );\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\ticon: forwardButtonIcon,\n\t\t\tlabel: __( 'Move to bottom' ),\n\t\t\tvalue: BLOCK_MOVER_DIRECTION_BOTTOM,\n\t\t\tonSelect: () => {\n\t\t\t\tonLongMove()( numberOfBlocks );\n\t\t\t},\n\t\t},\n\t].filter( ( el ) => el.value === blockPageMoverState );\n\n\tconst onPickerSelect = ( value ) => {\n\t\tconst option = blockPageMoverOptions.find(\n\t\t\t( el ) => el.value === value\n\t\t);\n\t\tif ( option && option.onSelect ) option.onSelect();\n\t};\n\n\tconst onLongPressMoveUp = useCallback(\n\t\tshowBlockPageMover( BLOCK_MOVER_DIRECTION_TOP ),\n\t\t[]\n\t);\n\tconst onLongPressMoveDown = useCallback(\n\t\tshowBlockPageMover( BLOCK_MOVER_DIRECTION_BOTTOM ),\n\t\t[]\n\t);\n\n\tif ( ! canMove || ( isFirst && isLast && ! rootClientId ) ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<ToolbarGroup>\n\t\t\t<ToolbarButton\n\t\t\t\ttitle={ ! isFirst ? backwardButtonTitle : firstBlockTitle }\n\t\t\t\tisDisabled={ isFirst }\n\t\t\t\tonClick={ onMoveUp }\n\t\t\t\tonLongPress={ onLongPressMoveUp }\n\t\t\t\ticon={ backwardButtonIcon }\n\t\t\t\textraProps={ { hint: backwardButtonHint } }\n\t\t\t/>\n\n\t\t\t<ToolbarButton\n\t\t\t\ttitle={ ! isLast ? forwardButtonTitle : lastBlockTitle }\n\t\t\t\tisDisabled={ isLast }\n\t\t\t\tonClick={ onMoveDown }\n\t\t\t\tonLongPress={ onLongPressMoveDown }\n\t\t\t\ticon={ forwardButtonIcon }\n\t\t\t\textraProps={ {\n\t\t\t\t\thint: forwardButtonHint,\n\t\t\t\t} }\n\t\t\t/>\n\n\t\t\t<Picker\n\t\t\t\tref={ pickerRef }\n\t\t\t\toptions={ blockPageMoverOptions }\n\t\t\t\tonChange={ onPickerSelect }\n\t\t\t\ttitle={ __( 'Change block position' ) }\n\t\t\t\tleftAlign\n\t\t\t\thideCancelButton={ Platform.OS !== 'ios' }\n\t\t\t/>\n\t\t</ToolbarGroup>\n\t);\n};\n\nexport default compose(\n\twithSelect( ( select, { clientIds } ) => {\n\t\tconst {\n\t\t\tgetBlockIndex,\n\t\t\tcanMoveBlocks,\n\t\t\tgetBlockRootClientId,\n\t\t\tgetBlockOrder,\n\t\t} = select( blockEditorStore );\n\t\tconst normalizedClientIds = Array.isArray( clientIds )\n\t\t\t? clientIds\n\t\t\t: [ clientIds ];\n\t\tconst firstClientId = normalizedClientIds[ 0 ];\n\t\tconst rootClientId = getBlockRootClientId( firstClientId );\n\t\tconst blockOrder = getBlockOrder( rootClientId );\n\t\tconst firstIndex = getBlockIndex( firstClientId );\n\t\tconst lastIndex = getBlockIndex(\n\t\t\tnormalizedClientIds[ normalizedClientIds.length - 1 ]\n\t\t);\n\n\t\treturn {\n\t\t\tfirstIndex,\n\t\t\tnumberOfBlocks: blockOrder.length - 1,\n\t\t\tisFirst: firstIndex === 0,\n\t\t\tisLast: lastIndex === blockOrder.length - 1,\n\t\t\tcanMove: canMoveBlocks( clientIds, rootClientId ),\n\t\t\trootClientId,\n\t\t};\n\t} ),\n\twithDispatch( ( dispatch, { clientIds, rootClientId } ) => {\n\t\tconst { moveBlocksDown, moveBlocksUp, moveBlocksToPosition } =\n\t\t\tdispatch( blockEditorStore );\n\t\treturn {\n\t\t\tonMoveDown: ( ...args ) =>\n\t\t\t\tmoveBlocksDown( clientIds, rootClientId, ...args ),\n\t\t\tonMoveUp: ( ...args ) =>\n\t\t\t\tmoveBlocksUp( clientIds, rootClientId, ...args ),\n\t\t\tonLongMove:\n\t\t\t\t( targetIndex ) =>\n\t\t\t\t( ...args ) =>\n\t\t\t\t\tmoveBlocksToPosition(\n\t\t\t\t\t\tclientIds,\n\t\t\t\t\t\trootClientId,\n\t\t\t\t\t\ttargetIndex,\n\t\t\t\t\t\t...args\n\t\t\t\t\t),\n\t\t};\n\t} ),\n\twithInstanceId\n)( BlockMover );\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,QAAQ,QAAQ,cAAc;;AAEvC;AACA;AACA;AACA,SAASC,EAAE,QAAQ,iBAAiB;AACpC,SAASC,MAAM,EAAEC,aAAa,EAAEC,YAAY,QAAQ,uBAAuB;AAC3E,SAASC,cAAc,EAAEC,OAAO,QAAQ,oBAAoB;AAC5D,SAASC,UAAU,EAAEC,YAAY,QAAQ,iBAAiB;AAC1D,SAASC,WAAW,EAAEC,SAAS,EAAEC,MAAM,EAAEC,QAAQ,QAAQ,oBAAoB;;AAE7E;AACA;AACA;AACA,SAASC,cAAc,QAAQ,qBAAqB;AACpD,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,aAAa;AAEvD,OAAO,MAAMC,yBAAyB,GAAG,iCAAiC;AAC1E,OAAO,MAAMC,4BAA4B,GACxC,oCAAoC;AAErC,OAAO,MAAMC,UAAU,GAAGA,CAAE;EAC3BC,OAAO;EACPC,MAAM;EACNC,OAAO;EACPC,UAAU;EACVC,QAAQ;EACRC,UAAU;EACVC,UAAU;EACVC,cAAc;EACdC,YAAY;EACZC;AACD,CAAC,KAAM;EACN,MAAMC,SAAS,GAAGlB,MAAM,CAAC,CAAC;EAC1B,MAAM,CAAEmB,mBAAmB,EAAEC,sBAAsB,CAAE,GAAGnB,QAAQ,CAAE,KAAM,CAAC;EACzE,MAAM,CAAEoB,mBAAmB,EAAEC,sBAAsB,CAAE,GACpDrB,QAAQ,CAAEsB,SAAU,CAAC;EACtB,MAAMC,kBAAkB,GAAKC,SAAS,IAAM,MAAM;IACjD,IAAK,CAAEP,SAAS,CAACQ,OAAO,EAAG;MAC1BJ,sBAAsB,CAAEC,SAAU,CAAC;MACnC;IACD;IAEAD,sBAAsB,CAAEG,SAAU,CAAC;IACnCL,sBAAsB,CAAE,IAAK,CAAC;EAC/B,CAAC;;EAED;EACArB,SAAS,CAAE,MAAM;IAChB,IAAKoB,mBAAmB,EAAG;MAC1BD,SAAS,CAACQ,OAAO,EAAEC,aAAa,CAAC,CAAC;MAClCP,sBAAsB,CAAE,KAAM,CAAC;IAChC;EACD,CAAC,EAAE,CAAED,mBAAmB,CAAG,CAAC;EAE5B,MAAM;IACLS,WAAW,EAAE;MACZC,kBAAkB;MAClBC,iBAAiB;MACjBC,eAAe;MACfC;IACD,CAAC;IACDC,IAAI,EAAE;MAAEC,QAAQ,EAAEC,kBAAkB;MAAEC,OAAO,EAAEC;IAAkB,CAAC;IAClEC,KAAK,EAAE;MAAEJ,QAAQ,EAAEK,mBAAmB;MAAEH,OAAO,EAAEI;IAAmB;EACrE,CAAC,GAAGtC,cAAc,CAAEe,qBAAqB,EAAE;IAAEH;EAAW,CAAE,CAAC;EAE3D,MAAM2B,qBAAqB,GAAG,CAC7B;IACCR,IAAI,EAAEE,kBAAkB;IACxBO,KAAK,EAAEpD,EAAE,CAAE,aAAc,CAAC;IAC1BqD,KAAK,EAAEtC,yBAAyB;IAChCuC,QAAQ,EAAEA,CAAA,KAAM;MACf/B,UAAU,CAAC,CAAC,CAAE,CAAE,CAAC;IAClB;EACD,CAAC,EACD;IACCoB,IAAI,EAAEI,iBAAiB;IACvBK,KAAK,EAAEpD,EAAE,CAAE,gBAAiB,CAAC;IAC7BqD,KAAK,EAAErC,4BAA4B;IACnCsC,QAAQ,EAAEA,CAAA,KAAM;MACf/B,UAAU,CAAC,CAAC,CAAEE,cAAe,CAAC;IAC/B;EACD,CAAC,CACD,CAAC8B,MAAM,CAAIC,EAAE,IAAMA,EAAE,CAACH,KAAK,KAAKtB,mBAAoB,CAAC;EAEtD,MAAM0B,cAAc,GAAKJ,KAAK,IAAM;IACnC,MAAMK,MAAM,GAAGP,qBAAqB,CAACQ,IAAI,CACtCH,EAAE,IAAMA,EAAE,CAACH,KAAK,KAAKA,KACxB,CAAC;IACD,IAAKK,MAAM,IAAIA,MAAM,CAACJ,QAAQ,EAAGI,MAAM,CAACJ,QAAQ,CAAC,CAAC;EACnD,CAAC;EAED,MAAMM,iBAAiB,GAAGpD,WAAW,CACpC0B,kBAAkB,CAAEnB,yBAA0B,CAAC,EAC/C,EACD,CAAC;EACD,MAAM8C,mBAAmB,GAAGrD,WAAW,CACtC0B,kBAAkB,CAAElB,4BAA6B,CAAC,EAClD,EACD,CAAC;EAED,IAAK,CAAEI,OAAO,IAAMF,OAAO,IAAIC,MAAM,IAAI,CAAEO,YAAc,EAAG;IAC3D,OAAO,IAAI;EACZ;EAEA,OACCoC,aAAA,CAAC3D,YAAY,QACZ2D,aAAA,CAAC5D,aAAa;IACb8C,KAAK,EAAG,CAAE9B,OAAO,GAAG+B,mBAAmB,GAAGR,eAAiB;IAC3DsB,UAAU,EAAG7C,OAAS;IACtB8C,OAAO,EAAG1C,QAAU;IACpB2C,WAAW,EAAGL,iBAAmB;IACjCjB,IAAI,EAAGE,kBAAoB;IAC3BqB,UAAU,EAAG;MAAEC,IAAI,EAAE5B;IAAmB;EAAG,CAC3C,CAAC,EAEFuB,aAAA,CAAC5D,aAAa;IACb8C,KAAK,EAAG,CAAE7B,MAAM,GAAG+B,kBAAkB,GAAGR,cAAgB;IACxDqB,UAAU,EAAG5C,MAAQ;IACrB6C,OAAO,EAAG3C,UAAY;IACtB4C,WAAW,EAAGJ,mBAAqB;IACnClB,IAAI,EAAGI,iBAAmB;IAC1BmB,UAAU,EAAG;MACZC,IAAI,EAAE3B;IACP;EAAG,CACH,CAAC,EAEFsB,aAAA,CAAC7D,MAAM;IACNmE,GAAG,EAAGxC,SAAW;IACjByC,OAAO,EAAGlB,qBAAuB;IACjCmB,QAAQ,EAAGb,cAAgB;IAC3BT,KAAK,EAAGhD,EAAE,CAAE,uBAAwB,CAAG;IACvCuE,SAAS;IACTC,gBAAgB,EAAGzE,QAAQ,CAAC0E,EAAE,KAAK;EAAO,CAC1C,CACY,CAAC;AAEjB,CAAC;AAED,eAAepE,OAAO,CACrBC,UAAU,CAAE,CAAEoE,MAAM,EAAE;EAAEC;AAAU,CAAC,KAAM;EACxC,MAAM;IACLC,aAAa;IACbC,aAAa;IACbC,oBAAoB;IACpBC;EACD,CAAC,GAAGL,MAAM,CAAE5D,gBAAiB,CAAC;EAC9B,MAAMkE,mBAAmB,GAAGC,KAAK,CAACC,OAAO,CAAEP,SAAU,CAAC,GACnDA,SAAS,GACT,CAAEA,SAAS,CAAE;EAChB,MAAMQ,aAAa,GAAGH,mBAAmB,CAAE,CAAC,CAAE;EAC9C,MAAMtD,YAAY,GAAGoD,oBAAoB,CAAEK,aAAc,CAAC;EAC1D,MAAMC,UAAU,GAAGL,aAAa,CAAErD,YAAa,CAAC;EAChD,MAAMF,UAAU,GAAGoD,aAAa,CAAEO,aAAc,CAAC;EACjD,MAAME,SAAS,GAAGT,aAAa,CAC9BI,mBAAmB,CAAEA,mBAAmB,CAACM,MAAM,GAAG,CAAC,CACpD,CAAC;EAED,OAAO;IACN9D,UAAU;IACVC,cAAc,EAAE2D,UAAU,CAACE,MAAM,GAAG,CAAC;IACrCpE,OAAO,EAAEM,UAAU,KAAK,CAAC;IACzBL,MAAM,EAAEkE,SAAS,KAAKD,UAAU,CAACE,MAAM,GAAG,CAAC;IAC3ClE,OAAO,EAAEyD,aAAa,CAAEF,SAAS,EAAEjD,YAAa,CAAC;IACjDA;EACD,CAAC;AACF,CAAE,CAAC,EACHnB,YAAY,CAAE,CAAEgF,QAAQ,EAAE;EAAEZ,SAAS;EAAEjD;AAAa,CAAC,KAAM;EAC1D,MAAM;IAAE8D,cAAc;IAAEC,YAAY;IAAEC;EAAqB,CAAC,GAC3DH,QAAQ,CAAEzE,gBAAiB,CAAC;EAC7B,OAAO;IACNO,UAAU,EAAEA,CAAE,GAAGsE,IAAI,KACpBH,cAAc,CAAEb,SAAS,EAAEjD,YAAY,EAAE,GAAGiE,IAAK,CAAC;IACnDrE,QAAQ,EAAEA,CAAE,GAAGqE,IAAI,KAClBF,YAAY,CAAEd,SAAS,EAAEjD,YAAY,EAAE,GAAGiE,IAAK,CAAC;IACjDpE,UAAU,EACPqE,WAAW,IACb,CAAE,GAAGD,IAAI,KACRD,oBAAoB,CACnBf,SAAS,EACTjD,YAAY,EACZkE,WAAW,EACX,GAAGD,IACJ;EACH,CAAC;AACF,CAAE,CAAC,EACHvF,cACD,CAAC,CAAEa,UAAW,CAAC","ignoreList":[]}