@wordpress/block-editor 12.23.0 → 12.25.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 (1674) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/README.md +5 -1
  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 +3 -1
  7. package/build/components/alignment-control/ui.js.map +1 -1
  8. package/build/components/autocomplete/index.js.map +1 -1
  9. package/build/components/block-actions/index.js.map +1 -1
  10. package/build/components/block-alignment-control/constants.js.map +1 -1
  11. package/build/components/block-alignment-control/index.js.map +1 -1
  12. package/build/components/block-alignment-control/ui.js.map +1 -1
  13. package/build/components/block-alignment-control/ui.native.js.map +1 -1
  14. package/build/components/block-alignment-control/use-available-alignments.js.map +1 -1
  15. package/build/components/block-alignment-matrix-control/index.js.map +1 -1
  16. package/build/components/block-bindings-toolbar-indicator/index.js.map +1 -1
  17. package/build/components/block-breadcrumb/index.js.map +1 -1
  18. package/build/components/block-canvas/index.js.map +1 -1
  19. package/build/components/block-caption/index.native.js.map +1 -1
  20. package/build/components/block-card/index.js.map +1 -1
  21. package/build/components/block-compare/block-view.js.map +1 -1
  22. package/build/components/block-compare/index.js.map +1 -1
  23. package/build/components/block-content-overlay/index.js.map +1 -1
  24. package/build/components/block-context/index.js.map +1 -1
  25. package/build/components/block-controls/fill.js.map +1 -1
  26. package/build/components/block-controls/groups.js.map +1 -1
  27. package/build/components/block-controls/hook.js.map +1 -1
  28. package/build/components/block-controls/index.js.map +1 -1
  29. package/build/components/block-controls/slot.js.map +1 -1
  30. package/build/components/block-controls/slot.native.js.map +1 -1
  31. package/build/components/block-controls/use-has-block-controls.js.map +1 -1
  32. package/build/components/block-draggable/draggable-chip.js.map +1 -1
  33. package/build/components/block-draggable/draggable-chip.native.js.map +1 -1
  34. package/build/components/block-draggable/dropping-insertion-point.native.js +1 -1
  35. package/build/components/block-draggable/dropping-insertion-point.native.js.map +1 -1
  36. package/build/components/block-draggable/index.js.map +1 -1
  37. package/build/components/block-draggable/index.native.js +1 -1
  38. package/build/components/block-draggable/index.native.js.map +1 -1
  39. package/build/components/block-draggable/use-scroll-when-dragging.js.map +1 -1
  40. package/build/components/block-draggable/use-scroll-when-dragging.native.js.map +1 -1
  41. package/build/components/block-edit/context.js +2 -1
  42. package/build/components/block-edit/context.js.map +1 -1
  43. package/build/components/block-edit/edit.js.map +1 -1
  44. package/build/components/block-edit/edit.native.js.map +1 -1
  45. package/build/components/block-edit/index.js +4 -2
  46. package/build/components/block-edit/index.js.map +1 -1
  47. package/build/components/block-edit-visually-button/index.js.map +1 -1
  48. package/build/components/block-editing-mode/index.js.map +1 -1
  49. package/build/components/block-full-height-alignment-control/index.js.map +1 -1
  50. package/build/components/block-heading-level-dropdown/heading-level-icon.js.map +1 -1
  51. package/build/components/block-heading-level-dropdown/index.js.map +1 -1
  52. package/build/components/block-heading-level-dropdown/index.native.js.map +1 -1
  53. package/build/components/block-icon/index.js.map +1 -1
  54. package/build/components/block-icon/index.native.js.map +1 -1
  55. package/build/components/block-info-slot-fill/index.js.map +1 -1
  56. package/build/components/block-inspector/index.js +5 -4
  57. package/build/components/block-inspector/index.js.map +1 -1
  58. package/build/components/block-inspector/useBlockInspectorAnimationSettings.js.map +1 -1
  59. package/build/components/block-list/block-crash-boundary.js.map +1 -1
  60. package/build/components/block-list/block-crash-boundary.native.js.map +1 -1
  61. package/build/components/block-list/block-crash-warning.js.map +1 -1
  62. package/build/components/block-list/block-crash-warning.native.js.map +1 -1
  63. package/build/components/block-list/block-html.js.map +1 -1
  64. package/build/components/block-list/block-invalid-warning.js.map +1 -1
  65. package/build/components/block-list/block-invalid-warning.native.js.map +1 -1
  66. package/build/components/block-list/block-list-context.native.js.map +1 -1
  67. package/build/components/block-list/block-list-item-cell.native.js.map +1 -1
  68. package/build/components/block-list/block-list-item.native.js.map +1 -1
  69. package/build/components/block-list/block-outline.native.js.map +1 -1
  70. package/build/components/block-list/block-selection-button.native.js.map +1 -1
  71. package/build/components/block-list/block.js +44 -35
  72. package/build/components/block-list/block.js.map +1 -1
  73. package/build/components/block-list/block.native.js +2 -2
  74. package/build/components/block-list/block.native.js.map +1 -1
  75. package/build/components/block-list/grid-item.native.js.map +1 -1
  76. package/build/components/block-list/index.js +18 -6
  77. package/build/components/block-list/index.js.map +1 -1
  78. package/build/components/block-list/index.native.js +1 -9
  79. package/build/components/block-list/index.native.js.map +1 -1
  80. package/build/components/block-list/insertion-point.native.js.map +1 -1
  81. package/build/components/block-list/layout.js.map +1 -1
  82. package/build/components/block-list/private-block-context.js.map +1 -1
  83. package/build/components/block-list/subdirectory-icon.js.map +1 -1
  84. package/build/components/block-list/use-block-props/index.js +8 -7
  85. package/build/components/block-list/use-block-props/index.js.map +1 -1
  86. package/build/components/block-list/use-block-props/index.native.js.map +1 -1
  87. package/build/components/block-list/use-block-props/use-block-refs.js +17 -46
  88. package/build/components/block-list/use-block-props/use-block-refs.js.map +1 -1
  89. package/build/components/block-list/use-block-props/use-focus-first-element.js +3 -2
  90. package/build/components/block-list/use-block-props/use-focus-first-element.js.map +1 -1
  91. package/build/components/block-list/use-block-props/use-focus-handler.js.map +1 -1
  92. package/build/components/block-list/use-block-props/use-intersection-observer.js.map +1 -1
  93. package/build/components/block-list/use-block-props/use-is-hovered.js +10 -14
  94. package/build/components/block-list/use-block-props/use-is-hovered.js.map +1 -1
  95. package/build/components/block-list/use-block-props/use-nav-mode-exit.js.map +1 -1
  96. package/build/components/block-list/use-block-props/use-selected-block-event-handlers.js.map +1 -1
  97. package/build/components/block-list/use-in-between-inserter.js.map +1 -1
  98. package/build/components/block-list/use-scroll-upon-insertion.native.js.map +1 -1
  99. package/build/components/block-list-appender/index.js.map +1 -1
  100. package/build/components/block-list-appender/index.native.js.map +1 -1
  101. package/build/components/block-lock/index.js.map +1 -1
  102. package/build/components/block-lock/menu-item.js.map +1 -1
  103. package/build/components/block-lock/modal.js.map +1 -1
  104. package/build/components/block-lock/toolbar.js.map +1 -1
  105. package/build/components/block-lock/use-block-lock.js.map +1 -1
  106. package/build/components/block-media-update-progress/index.native.js.map +1 -1
  107. package/build/components/block-mover/button.js.map +1 -1
  108. package/build/components/block-mover/index.js.map +1 -1
  109. package/build/components/block-mover/index.native.js +3 -1
  110. package/build/components/block-mover/index.native.js.map +1 -1
  111. package/build/components/block-mover/mover-description.js.map +1 -1
  112. package/build/components/block-mover/mover-description.native.js.map +1 -1
  113. package/build/components/block-navigation/dropdown.js.map +1 -1
  114. package/build/components/block-parent-selector/index.js.map +1 -1
  115. package/build/components/block-pattern-setup/constants.js.map +1 -1
  116. package/build/components/block-pattern-setup/index.js.map +1 -1
  117. package/build/components/block-pattern-setup/setup-toolbar.js.map +1 -1
  118. package/build/components/block-pattern-setup/use-patterns-setup.js.map +1 -1
  119. package/build/components/block-patterns-list/index.js.map +1 -1
  120. package/build/components/block-patterns-paging/index.js +8 -4
  121. package/build/components/block-patterns-paging/index.js.map +1 -1
  122. package/build/components/block-popover/cover.js.map +1 -1
  123. package/build/components/block-popover/drop-zone.js.map +1 -1
  124. package/build/components/block-popover/inbetween.js.map +1 -1
  125. package/build/components/block-popover/index.js.map +1 -1
  126. package/build/components/block-popover/use-popover-scroll.js.map +1 -1
  127. package/build/components/block-preview/auto.js.map +1 -1
  128. package/build/components/block-preview/index.js.map +1 -1
  129. package/build/components/block-quick-navigation/index.js.map +1 -1
  130. package/build/components/block-removal-warning-modal/index.js.map +1 -1
  131. package/build/components/block-rename/index.js.map +1 -1
  132. package/build/components/block-rename/is-empty-string.js.map +1 -1
  133. package/build/components/block-rename/modal.js +13 -9
  134. package/build/components/block-rename/modal.js.map +1 -1
  135. package/build/components/block-rename/rename-control.js +3 -1
  136. package/build/components/block-rename/rename-control.js.map +1 -1
  137. package/build/components/block-rename/use-block-rename.js.map +1 -1
  138. package/build/components/block-selection-clearer/index.js.map +1 -1
  139. package/build/components/block-settings/button.native.js.map +1 -1
  140. package/build/components/block-settings/container.native.js.map +1 -1
  141. package/build/components/block-settings/index.native.js +1 -1
  142. package/build/components/block-settings/index.native.js.map +1 -1
  143. package/build/components/block-settings-menu/block-html-convert-button.js.map +1 -1
  144. package/build/components/block-settings-menu/block-mode-toggle.js.map +1 -1
  145. package/build/components/block-settings-menu/block-parent-selector-menu-item.js.map +1 -1
  146. package/build/components/block-settings-menu/block-settings-dropdown.js +0 -25
  147. package/build/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
  148. package/build/components/block-settings-menu/block-settings-menu-first-item.js.map +1 -1
  149. package/build/components/block-settings-menu/index.js.map +1 -1
  150. package/build/components/block-settings-menu-controls/index.js.map +1 -1
  151. package/build/components/block-styles/index.js.map +1 -1
  152. package/build/components/block-styles/index.native.js.map +1 -1
  153. package/build/components/block-styles/menu-items.js.map +1 -1
  154. package/build/components/block-styles/preview-panel.js.map +1 -1
  155. package/build/components/block-styles/preview.native.js.map +1 -1
  156. package/build/components/block-styles/use-styles-for-block.js.map +1 -1
  157. package/build/components/block-styles/utils.js.map +1 -1
  158. package/build/components/block-switcher/block-styles-menu.js.map +1 -1
  159. package/build/components/block-switcher/block-transformations-menu.js.map +1 -1
  160. package/build/components/block-switcher/block-transformations-menu.native.js.map +1 -1
  161. package/build/components/block-switcher/block-variation-transformations.js.map +1 -1
  162. package/build/components/block-switcher/index.js.map +1 -1
  163. package/build/components/block-switcher/pattern-transformations-menu.js +3 -1
  164. package/build/components/block-switcher/pattern-transformations-menu.js.map +1 -1
  165. package/build/components/block-switcher/preview-block-popover.js.map +1 -1
  166. package/build/components/block-switcher/use-transformed-patterns.js +6 -2
  167. package/build/components/block-switcher/use-transformed-patterns.js.map +1 -1
  168. package/build/components/block-switcher/utils.js +15 -5
  169. package/build/components/block-switcher/utils.js.map +1 -1
  170. package/build/components/block-title/index.js.map +1 -1
  171. package/build/components/block-title/use-block-display-title.js.map +1 -1
  172. package/build/components/block-toolbar/block-name-context.js.map +1 -1
  173. package/build/components/block-toolbar/block-toolbar-last-item.js.map +1 -1
  174. package/build/components/block-toolbar/block-toolbar-menu.native.js.map +1 -1
  175. package/build/components/block-toolbar/index.js +1 -1
  176. package/build/components/block-toolbar/index.js.map +1 -1
  177. package/build/components/block-toolbar/index.native.js.map +1 -1
  178. package/build/components/block-toolbar/shuffle.js.map +1 -1
  179. package/build/components/block-toolbar/use-has-block-toolbar.js +20 -12
  180. package/build/components/block-toolbar/use-has-block-toolbar.js.map +1 -1
  181. package/build/components/block-toolbar/utils.js.map +1 -1
  182. package/build/components/block-tools/block-selection-button.js +16 -12
  183. package/build/components/block-tools/block-selection-button.js.map +1 -1
  184. package/build/components/block-tools/block-toolbar-breadcrumb.js.map +1 -1
  185. package/build/components/block-tools/block-toolbar-popover.js.map +1 -1
  186. package/build/components/block-tools/empty-block-inserter.js.map +1 -1
  187. package/build/components/block-tools/index.js +4 -2
  188. package/build/components/block-tools/index.js.map +1 -1
  189. package/build/components/block-tools/insertion-point.js.map +1 -1
  190. package/build/components/block-tools/use-block-toolbar-popover-props.js.map +1 -1
  191. package/build/components/block-tools/use-selected-block-tool-props.js.map +1 -1
  192. package/build/components/block-tools/use-show-block-tools.js +9 -18
  193. package/build/components/block-tools/use-show-block-tools.js.map +1 -1
  194. package/build/components/block-tools/zoom-out-mode-inserters.js +5 -1
  195. package/build/components/block-tools/zoom-out-mode-inserters.js.map +1 -1
  196. package/build/components/block-types-list/index.js.map +1 -1
  197. package/build/components/block-types-list/index.native.js.map +1 -1
  198. package/build/components/block-variation-picker/index.js +3 -2
  199. package/build/components/block-variation-picker/index.js.map +1 -1
  200. package/build/components/block-variation-picker/index.native.js.map +1 -1
  201. package/build/components/block-variation-transforms/index.js +7 -2
  202. package/build/components/block-variation-transforms/index.js.map +1 -1
  203. package/build/components/block-vertical-alignment-control/icons.js.map +1 -1
  204. package/build/components/block-vertical-alignment-control/index.js.map +1 -1
  205. package/build/components/block-vertical-alignment-control/ui.js.map +1 -1
  206. package/build/components/border-radius-control/all-input-control.js.map +1 -1
  207. package/build/components/border-radius-control/index.js.map +1 -1
  208. package/build/components/border-radius-control/input-controls.js.map +1 -1
  209. package/build/components/border-radius-control/linked-button.js.map +1 -1
  210. package/build/components/border-radius-control/utils.js.map +1 -1
  211. package/build/components/button-block-appender/index.js.map +1 -1
  212. package/build/components/button-block-appender/index.native.js +11 -1
  213. package/build/components/button-block-appender/index.native.js.map +1 -1
  214. package/build/components/caption/index.native.js.map +1 -1
  215. package/build/components/child-layout-control/index.js.map +1 -1
  216. package/build/components/color-palette/control.js.map +1 -1
  217. package/build/components/color-palette/index.js.map +1 -1
  218. package/build/components/color-palette/with-color-context.js.map +1 -1
  219. package/build/components/color-style-selector/index.js.map +1 -1
  220. package/build/components/colors/index.js +1 -1
  221. package/build/components/colors/index.js.map +1 -1
  222. package/build/components/colors/utils.js.map +1 -1
  223. package/build/components/colors/with-colors.js.map +1 -1
  224. package/build/components/colors-gradients/control.js.map +1 -1
  225. package/build/components/colors-gradients/dropdown.js.map +1 -1
  226. package/build/components/colors-gradients/panel-color-gradient-settings.js.map +1 -1
  227. package/build/components/colors-gradients/panel-color-gradient-settings.native.js.map +1 -1
  228. package/build/components/colors-gradients/use-multiple-origin-colors-and-gradients.js.map +1 -1
  229. package/build/components/contrast-checker/index.js.map +1 -1
  230. package/build/components/contrast-checker/index.native.js.map +1 -1
  231. package/build/components/convert-to-group-buttons/index.js.map +1 -1
  232. package/build/components/convert-to-group-buttons/index.native.js.map +1 -1
  233. package/build/components/convert-to-group-buttons/toolbar.js.map +1 -1
  234. package/build/components/convert-to-group-buttons/use-convert-to-group-button-props.js.map +1 -1
  235. package/build/components/copy-handler/index.js.map +1 -1
  236. package/build/components/date-format-picker/index.js.map +1 -1
  237. package/build/components/default-block-appender/index.js.map +1 -1
  238. package/build/components/default-block-appender/index.native.js.map +1 -1
  239. package/build/components/dimensions-tool/aspect-ratio-tool.js.map +1 -1
  240. package/build/components/dimensions-tool/index.js.map +1 -1
  241. package/build/components/dimensions-tool/scale-tool.js.map +1 -1
  242. package/build/components/dimensions-tool/width-height-tool.js +6 -2
  243. package/build/components/dimensions-tool/width-height-tool.js.map +1 -1
  244. package/build/components/duotone/utils.js.map +1 -1
  245. package/build/components/duotone-control/index.js.map +1 -1
  246. package/build/components/editable-text/index.js.map +1 -1
  247. package/build/components/editor-styles/index.js +2 -1
  248. package/build/components/editor-styles/index.js.map +1 -1
  249. package/build/components/floating-toolbar/index.native.js +9 -5
  250. package/build/components/floating-toolbar/index.native.js.map +1 -1
  251. package/build/components/floating-toolbar/nav-up-icon.js.map +1 -1
  252. package/build/components/font-appearance-control/index.js.map +1 -1
  253. package/build/components/font-family/index.js.map +1 -1
  254. package/build/components/font-sizes/fluid-utils.js.map +1 -1
  255. package/build/components/font-sizes/font-size-picker.js.map +1 -1
  256. package/build/components/font-sizes/index.js.map +1 -1
  257. package/build/components/font-sizes/index.native.js.map +1 -1
  258. package/build/components/font-sizes/utils.js.map +1 -1
  259. package/build/components/font-sizes/with-font-sizes.js.map +1 -1
  260. package/build/components/global-styles/advanced-panel.js.map +1 -1
  261. package/build/components/global-styles/background-panel.js +20 -17
  262. package/build/components/global-styles/background-panel.js.map +1 -1
  263. package/build/components/global-styles/border-panel.js.map +1 -1
  264. package/build/components/global-styles/color-panel.js +3 -1
  265. package/build/components/global-styles/color-panel.js.map +1 -1
  266. package/build/components/global-styles/color-panel.native.js.map +1 -1
  267. package/build/components/global-styles/context.js.map +1 -1
  268. package/build/components/global-styles/dimensions-panel.js +16 -0
  269. package/build/components/global-styles/dimensions-panel.js.map +1 -1
  270. package/build/components/global-styles/filters-panel.js.map +1 -1
  271. package/build/components/global-styles/get-block-css-selector.js.map +1 -1
  272. package/build/components/global-styles/get-global-styles-changes.js.map +1 -1
  273. package/build/components/global-styles/hooks.js +3 -2
  274. package/build/components/global-styles/hooks.js.map +1 -1
  275. package/build/components/global-styles/image-settings-panel.js.map +1 -1
  276. package/build/components/global-styles/index.js +1 -1
  277. package/build/components/global-styles/index.js.map +1 -1
  278. package/build/components/global-styles/shadow-panel-components.js.map +1 -1
  279. package/build/components/global-styles/typography-panel.js +23 -23
  280. package/build/components/global-styles/typography-panel.js.map +1 -1
  281. package/build/components/global-styles/typography-utils.js.map +1 -1
  282. package/build/components/global-styles/use-global-styles-output.js +153 -136
  283. package/build/components/global-styles/use-global-styles-output.js.map +1 -1
  284. package/build/components/global-styles/utils.js +45 -0
  285. package/build/components/global-styles/utils.js.map +1 -1
  286. package/build/components/gradients/index.js.map +1 -1
  287. package/build/components/gradients/index.native.js.map +1 -1
  288. package/build/components/gradients/use-gradient.js.map +1 -1
  289. package/build/components/gradients/with-gradient.js.map +1 -1
  290. package/build/components/grid-visualizer/grid-item-resizer.js.map +1 -1
  291. package/build/components/grid-visualizer/grid-visualizer.js.map +1 -1
  292. package/build/components/grid-visualizer/index.js.map +1 -1
  293. package/build/components/grid-visualizer/utils.js.map +1 -1
  294. package/build/components/height-control/index.js.map +1 -1
  295. package/build/components/iframe/get-compatibility-styles.js.map +1 -1
  296. package/build/components/iframe/index.js +12 -13
  297. package/build/components/iframe/index.js.map +1 -1
  298. package/build/components/image-editor/aspect-ratio-dropdown.js.map +1 -1
  299. package/build/components/image-editor/constants.js.map +1 -1
  300. package/build/components/image-editor/context.js.map +1 -1
  301. package/build/components/image-editor/cropper.js +6 -2
  302. package/build/components/image-editor/cropper.js.map +1 -1
  303. package/build/components/image-editor/form-controls.js.map +1 -1
  304. package/build/components/image-editor/index.js +0 -2
  305. package/build/components/image-editor/index.js.map +1 -1
  306. package/build/components/image-editor/rotation-button.js.map +1 -1
  307. package/build/components/image-editor/use-save-image.js.map +1 -1
  308. package/build/components/image-editor/use-transform-image.js.map +1 -1
  309. package/build/components/image-editor/zoom-dropdown.js.map +1 -1
  310. package/build/components/image-link-destinations/index.native.js.map +1 -1
  311. package/build/components/image-size-control/index.js.map +1 -1
  312. package/build/components/image-size-control/use-dimension-handler.js.map +1 -1
  313. package/build/components/index.js +1 -1
  314. package/build/components/index.js.map +1 -1
  315. package/build/components/index.native.js +1 -1
  316. package/build/components/index.native.js.map +1 -1
  317. package/build/components/inner-blocks/button-block-appender.js.map +1 -1
  318. package/build/components/inner-blocks/constants.native.js.map +1 -1
  319. package/build/components/inner-blocks/default-block-appender.js.map +1 -1
  320. package/build/components/inner-blocks/index.js +16 -2
  321. package/build/components/inner-blocks/index.js.map +1 -1
  322. package/build/components/inner-blocks/index.native.js.map +1 -1
  323. package/build/components/inner-blocks/use-block-context.js.map +1 -1
  324. package/build/components/inner-blocks/use-inner-block-template-sync.js.map +1 -1
  325. package/build/components/inner-blocks/use-nested-settings-update.js.map +1 -1
  326. package/build/components/inner-blocks/warning-max-depth-exceeded.native.js.map +1 -1
  327. package/build/components/inner-blocks/with-client-id.js.map +1 -1
  328. package/build/components/inserter/block-patterns-explorer/index.js.map +1 -1
  329. package/build/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.js.map +1 -1
  330. package/build/components/inserter/block-patterns-explorer/pattern-list.js.map +1 -1
  331. package/build/components/inserter/block-patterns-tab/index.js +19 -25
  332. package/build/components/inserter/block-patterns-tab/index.js.map +1 -1
  333. package/build/components/inserter/block-patterns-tab/pattern-category-preview-panel.js +2 -24
  334. package/build/components/inserter/block-patterns-tab/pattern-category-preview-panel.js.map +1 -1
  335. package/build/components/inserter/block-patterns-tab/pattern-category-previews.js +1 -3
  336. package/build/components/inserter/block-patterns-tab/pattern-category-previews.js.map +1 -1
  337. package/build/components/inserter/block-patterns-tab/patterns-filter.js.map +1 -1
  338. package/build/components/inserter/block-patterns-tab/use-pattern-categories.js.map +1 -1
  339. package/build/components/inserter/block-patterns-tab/utils.js.map +1 -1
  340. package/build/components/inserter/block-types-tab.js +4 -0
  341. package/build/components/inserter/block-types-tab.js.map +1 -1
  342. package/build/components/inserter/block-types-tab.native.js.map +1 -1
  343. package/build/components/inserter/category-tabs/index.js +56 -0
  344. package/build/components/inserter/category-tabs/index.js.map +1 -0
  345. package/build/components/inserter/hooks/use-block-type-impressions.native.js.map +1 -1
  346. package/build/components/inserter/hooks/use-block-types-state.js.map +1 -1
  347. package/build/components/inserter/hooks/use-clipboard-block.native.js.map +1 -1
  348. package/build/components/inserter/hooks/use-insertion-point.js.map +1 -1
  349. package/build/components/inserter/hooks/use-patterns-paging.js.map +1 -1
  350. package/build/components/inserter/hooks/use-patterns-state.js.map +1 -1
  351. package/build/components/inserter/index.js.map +1 -1
  352. package/build/components/inserter/index.native.js.map +1 -1
  353. package/build/components/inserter/library.js.map +1 -1
  354. package/build/components/inserter/media-tab/hooks.js.map +1 -1
  355. package/build/components/inserter/media-tab/index.js +2 -2
  356. package/build/components/inserter/media-tab/index.js.map +1 -1
  357. package/build/components/inserter/media-tab/media-list.js.map +1 -1
  358. package/build/components/inserter/media-tab/media-panel.js +0 -25
  359. package/build/components/inserter/media-tab/media-panel.js.map +1 -1
  360. package/build/components/inserter/media-tab/media-preview.js +13 -3
  361. package/build/components/inserter/media-tab/media-preview.js.map +1 -1
  362. package/build/components/inserter/media-tab/media-tab.js +15 -29
  363. package/build/components/inserter/media-tab/media-tab.js.map +1 -1
  364. package/build/components/inserter/media-tab/utils.js.map +1 -1
  365. package/build/components/inserter/menu.js +73 -77
  366. package/build/components/inserter/menu.js.map +1 -1
  367. package/build/components/inserter/menu.native.js.map +1 -1
  368. package/build/components/inserter/mobile-tab-navigation.js.map +1 -1
  369. package/build/components/inserter/no-results.js.map +1 -1
  370. package/build/components/inserter/no-results.native.js.map +1 -1
  371. package/build/components/inserter/panel.js.map +1 -1
  372. package/build/components/inserter/preview-panel.js.map +1 -1
  373. package/build/components/inserter/quick-inserter.js.map +1 -1
  374. package/build/components/inserter/reusable-block-rename-hint.js.map +1 -1
  375. package/build/components/inserter/reusable-blocks-tab.native.js.map +1 -1
  376. package/build/components/inserter/search-items.js.map +1 -1
  377. package/build/components/inserter/search-results.js.map +1 -1
  378. package/build/components/inserter/search-results.native.js.map +1 -1
  379. package/build/components/inserter/tabs.js +13 -9
  380. package/build/components/inserter/tabs.js.map +1 -1
  381. package/build/components/inserter/tabs.native.js.map +1 -1
  382. package/build/components/inserter/tips.js.map +1 -1
  383. package/build/components/inserter/utils.native.js.map +1 -1
  384. package/build/components/inserter-button/index.native.js.map +1 -1
  385. package/build/components/inserter-button/sparkles.js.map +1 -1
  386. package/build/components/inserter-draggable-blocks/index.js.map +1 -1
  387. package/build/components/inserter-list-item/index.js.map +1 -1
  388. package/build/components/inserter-listbox/context.js.map +1 -1
  389. package/build/components/inserter-listbox/group.js.map +1 -1
  390. package/build/components/inserter-listbox/index.js.map +1 -1
  391. package/build/components/inserter-listbox/item.js.map +1 -1
  392. package/build/components/inserter-listbox/row.js.map +1 -1
  393. package/build/components/inserter-menu-extension/index.js.map +1 -1
  394. package/build/components/inspector-controls/block-support-slot-container.js.map +1 -1
  395. package/build/components/inspector-controls/block-support-tools-panel.js.map +1 -1
  396. package/build/components/inspector-controls/fill.js.map +1 -1
  397. package/build/components/inspector-controls/fill.native.js.map +1 -1
  398. package/build/components/inspector-controls/groups.js.map +1 -1
  399. package/build/components/inspector-controls/index.js.map +1 -1
  400. package/build/components/inspector-controls/slot.js.map +1 -1
  401. package/build/components/inspector-controls/slot.native.js.map +1 -1
  402. package/build/components/inspector-controls-tabs/advanced-controls-panel.js +1 -1
  403. package/build/components/inspector-controls-tabs/advanced-controls-panel.js.map +1 -1
  404. package/build/components/inspector-controls-tabs/advanced-controls-panel.native.js.map +1 -1
  405. package/build/components/inspector-controls-tabs/index.js.map +1 -1
  406. package/build/components/inspector-controls-tabs/position-controls-panel.js.map +1 -1
  407. package/build/components/inspector-controls-tabs/settings-tab-hint.js.map +1 -1
  408. package/build/components/inspector-controls-tabs/settings-tab.js.map +1 -1
  409. package/build/components/inspector-controls-tabs/styles-tab.js +1 -1
  410. package/build/components/inspector-controls-tabs/styles-tab.js.map +1 -1
  411. package/build/components/inspector-controls-tabs/use-inspector-controls-tabs.js.map +1 -1
  412. package/build/components/inspector-controls-tabs/use-is-list-view-tab-disabled.js.map +1 -1
  413. package/build/components/inspector-controls-tabs/utils.js.map +1 -1
  414. package/build/components/inspector-popover-header/index.js.map +1 -1
  415. package/build/components/justify-content-control/index.js.map +1 -1
  416. package/build/components/justify-content-control/ui.js.map +1 -1
  417. package/build/components/keyboard-shortcuts/index.js.map +1 -1
  418. package/build/components/letter-spacing-control/index.js.map +1 -1
  419. package/build/components/line-height-control/index.js +6 -2
  420. package/build/components/line-height-control/index.js.map +1 -1
  421. package/build/components/line-height-control/index.native.js.map +1 -1
  422. package/build/components/line-height-control/utils.js.map +1 -1
  423. package/build/components/link-control/constants.js.map +1 -1
  424. package/build/components/link-control/index.js.map +1 -1
  425. package/build/components/link-control/is-url-like.js.map +1 -1
  426. package/build/components/link-control/link-preview.js.map +1 -1
  427. package/build/components/link-control/search-create-button.js.map +1 -1
  428. package/build/components/link-control/search-input.js.map +1 -1
  429. package/build/components/link-control/search-item.js +9 -3
  430. package/build/components/link-control/search-item.js.map +1 -1
  431. package/build/components/link-control/search-results.js.map +1 -1
  432. package/build/components/link-control/settings-drawer.js.map +1 -1
  433. package/build/components/link-control/settings.js.map +1 -1
  434. package/build/components/link-control/use-create-page.js.map +1 -1
  435. package/build/components/link-control/use-internal-value.js.map +1 -1
  436. package/build/components/link-control/use-rich-url-data.js.map +1 -1
  437. package/build/components/link-control/use-search-handler.js.map +1 -1
  438. package/build/components/link-control/viewer-slot.js.map +1 -1
  439. package/build/components/list-view/appender.js.map +1 -1
  440. package/build/components/list-view/aria-referenced-text.js.map +1 -1
  441. package/build/components/list-view/block-contents.js.map +1 -1
  442. package/build/components/list-view/block-select-button.js +5 -142
  443. package/build/components/list-view/block-select-button.js.map +1 -1
  444. package/build/components/list-view/block.js +166 -14
  445. package/build/components/list-view/block.js.map +1 -1
  446. package/build/components/list-view/branch.js.map +1 -1
  447. package/build/components/list-view/context.js.map +1 -1
  448. package/build/components/list-view/drop-indicator.js.map +1 -1
  449. package/build/components/list-view/expander.js.map +1 -1
  450. package/build/components/list-view/index.js +1 -1
  451. package/build/components/list-view/index.js.map +1 -1
  452. package/build/components/list-view/leaf.js.map +1 -1
  453. package/build/components/list-view/use-block-selection.js.map +1 -1
  454. package/build/components/list-view/use-clipboard-handler.js.map +1 -1
  455. package/build/components/list-view/use-list-view-block-indexes.js.map +1 -1
  456. package/build/components/list-view/use-list-view-client-ids.js.map +1 -1
  457. package/build/components/list-view/use-list-view-collapse-items.js.map +1 -1
  458. package/build/components/list-view/use-list-view-drop-zone.js +6 -1
  459. package/build/components/list-view/use-list-view-drop-zone.js.map +1 -1
  460. package/build/components/list-view/use-list-view-expand-selected-item.js.map +1 -1
  461. package/build/components/list-view/use-list-view-images.js.map +1 -1
  462. package/build/components/list-view/use-list-view-scroll-into-view.js.map +1 -1
  463. package/build/components/list-view/utils.js +3 -1
  464. package/build/components/list-view/utils.js.map +1 -1
  465. package/build/components/media-placeholder/index.js +3 -3
  466. package/build/components/media-placeholder/index.js.map +1 -1
  467. package/build/components/media-placeholder/index.native.js.map +1 -1
  468. package/build/components/media-replace-flow/index.js.map +1 -1
  469. package/build/components/media-replace-flow/index.native.js.map +1 -1
  470. package/build/components/media-upload/check.js.map +1 -1
  471. package/build/components/media-upload/constants.native.js.map +1 -1
  472. package/build/components/media-upload/index.js.map +1 -1
  473. package/build/components/media-upload/index.native.js.map +1 -1
  474. package/build/components/media-upload-progress/constants.js.map +1 -1
  475. package/build/components/media-upload-progress/index.native.js.map +1 -1
  476. package/build/components/multi-selection-inspector/index.js.map +1 -1
  477. package/build/components/navigable-toolbar/index.js +3 -1
  478. package/build/components/navigable-toolbar/index.js.map +1 -1
  479. package/build/components/observe-typing/index.js.map +1 -1
  480. package/build/components/panel-color-settings/index.js.map +1 -1
  481. package/build/components/plain-text/index.js.map +1 -1
  482. package/build/components/plain-text/index.native.js.map +1 -1
  483. package/build/components/preview-options/index.js.map +1 -1
  484. package/build/components/provider/block-refs-provider.js +3 -4
  485. package/build/components/provider/block-refs-provider.js.map +1 -1
  486. package/build/components/provider/index.js.map +1 -1
  487. package/build/components/provider/index.native.js.map +1 -1
  488. package/build/components/provider/use-block-sync.js +3 -12
  489. package/build/components/provider/use-block-sync.js.map +1 -1
  490. package/build/components/provider/with-registry-provider.js.map +1 -1
  491. package/build/components/publish-date-time-picker/index.js.map +1 -1
  492. package/build/components/recursion-provider/index.js +2 -2
  493. package/build/components/recursion-provider/index.js.map +1 -1
  494. package/build/components/resizable-box-popover/index.js.map +1 -1
  495. package/build/components/resolution-tool/index.js.map +1 -1
  496. package/build/components/responsive-block-control/index.js.map +1 -1
  497. package/build/components/responsive-block-control/label.js.map +1 -1
  498. package/build/components/rich-text/content.js +26 -19
  499. package/build/components/rich-text/content.js.map +1 -1
  500. package/build/components/rich-text/embed-handler-picker.native.js.map +1 -1
  501. package/build/components/rich-text/event-listeners/before-input-rules.js +93 -0
  502. package/build/components/rich-text/event-listeners/before-input-rules.js.map +1 -0
  503. package/build/components/rich-text/event-listeners/delete.js +58 -0
  504. package/build/components/rich-text/event-listeners/delete.js.map +1 -0
  505. package/build/components/rich-text/event-listeners/enter.js +98 -0
  506. package/build/components/rich-text/event-listeners/enter.js.map +1 -0
  507. package/build/components/rich-text/event-listeners/firefox-compat.js +36 -0
  508. package/build/components/rich-text/event-listeners/firefox-compat.js.map +1 -0
  509. package/build/components/rich-text/event-listeners/index.js +44 -0
  510. package/build/components/rich-text/event-listeners/index.js.map +1 -0
  511. package/build/components/rich-text/event-listeners/input-events.js +22 -0
  512. package/build/components/rich-text/event-listeners/input-events.js.map +1 -0
  513. package/build/components/rich-text/event-listeners/input-rules.js +135 -0
  514. package/build/components/rich-text/event-listeners/input-rules.js.map +1 -0
  515. package/build/components/rich-text/event-listeners/insert-replacement-text.js +33 -0
  516. package/build/components/rich-text/event-listeners/insert-replacement-text.js.map +1 -0
  517. package/build/components/rich-text/event-listeners/paste-handler.js +146 -0
  518. package/build/components/rich-text/event-listeners/paste-handler.js.map +1 -0
  519. package/build/components/rich-text/event-listeners/remove-browser-shortcuts.js +27 -0
  520. package/build/components/rich-text/event-listeners/remove-browser-shortcuts.js.map +1 -0
  521. package/build/components/rich-text/event-listeners/shortcuts.js +22 -0
  522. package/build/components/rich-text/event-listeners/shortcuts.js.map +1 -0
  523. package/build/components/rich-text/event-listeners/undo-automatic-change.js +51 -0
  524. package/build/components/rich-text/event-listeners/undo-automatic-change.js.map +1 -0
  525. package/build/components/rich-text/file-paste-handler.native.js.map +1 -1
  526. package/build/components/rich-text/format-edit.js.map +1 -1
  527. package/build/components/rich-text/format-toolbar/index.js.map +1 -1
  528. package/build/components/rich-text/format-toolbar/index.native.js.map +1 -1
  529. package/build/components/rich-text/format-toolbar-container.js.map +1 -1
  530. package/build/components/rich-text/format-toolbar-container.native.js.map +1 -1
  531. package/build/components/rich-text/get-rich-text-values.js.map +1 -1
  532. package/build/components/rich-text/index.js +51 -31
  533. package/build/components/rich-text/index.js.map +1 -1
  534. package/build/components/rich-text/index.native.js +16 -4
  535. package/build/components/rich-text/index.native.js.map +1 -1
  536. package/build/components/rich-text/input-event.js.map +1 -1
  537. package/build/components/rich-text/input-event.native.js.map +1 -1
  538. package/build/components/rich-text/multiline.js +6 -2
  539. package/build/components/rich-text/multiline.js.map +1 -1
  540. package/build/components/rich-text/native/format-edit.js.map +1 -1
  541. package/build/components/rich-text/native/get-format-colors.native.js.map +1 -1
  542. package/build/components/rich-text/native/index.js.map +1 -1
  543. package/build/components/rich-text/native/index.native.js +12 -0
  544. package/build/components/rich-text/native/index.native.js.map +1 -1
  545. package/build/components/rich-text/native/toolbar-button-with-options.native.js.map +1 -1
  546. package/build/components/rich-text/native/use-format-types.js.map +1 -1
  547. package/build/components/rich-text/prevent-event-discovery.js.map +1 -1
  548. package/build/components/rich-text/remove-browser-shortcuts.native.js.map +1 -1
  549. package/build/components/rich-text/shortcut.js.map +1 -1
  550. package/build/components/rich-text/shortcut.native.js.map +1 -1
  551. package/build/components/rich-text/split-value.js.map +1 -1
  552. package/build/components/rich-text/toolbar-button.js.map +1 -1
  553. package/build/components/rich-text/use-format-types.js +8 -4
  554. package/build/components/rich-text/use-format-types.js.map +1 -1
  555. package/build/components/rich-text/use-mark-persistent.js.map +1 -1
  556. package/build/components/rich-text/utils.js.map +1 -1
  557. package/build/components/rich-text/with-deprecations.js.map +1 -1
  558. package/build/components/segmented-text-control/index.js +62 -0
  559. package/build/components/segmented-text-control/index.js.map +1 -0
  560. package/build/components/selection-scroll-into-view/index.js.map +1 -1
  561. package/build/components/skip-to-selected-block/index.js.map +1 -1
  562. package/build/components/spacing-sizes-control/hooks/use-spacing-sizes.js.map +1 -1
  563. package/build/components/spacing-sizes-control/index.js.map +1 -1
  564. package/build/components/spacing-sizes-control/input-controls/axial.js.map +1 -1
  565. package/build/components/spacing-sizes-control/input-controls/separated.js.map +1 -1
  566. package/build/components/spacing-sizes-control/input-controls/single.js.map +1 -1
  567. package/build/components/spacing-sizes-control/input-controls/spacing-input-control.js +16 -2
  568. package/build/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -1
  569. package/build/components/spacing-sizes-control/sides-dropdown/index.js.map +1 -1
  570. package/build/components/spacing-sizes-control/utils.js.map +1 -1
  571. package/build/components/text-alignment-control/index.js +76 -0
  572. package/build/components/text-alignment-control/index.js.map +1 -0
  573. package/build/components/text-decoration-control/index.js +21 -25
  574. package/build/components/text-decoration-control/index.js.map +1 -1
  575. package/build/components/text-transform-control/index.js +18 -22
  576. package/build/components/text-transform-control/index.js.map +1 -1
  577. package/build/components/tool-selector/index.js.map +1 -1
  578. package/build/components/typewriter/index.js.map +1 -1
  579. package/build/components/ungroup-button/index.native.js.map +1 -1
  580. package/build/components/unit-control/index.js.map +1 -1
  581. package/build/components/unsupported-block-details/index.native.js.map +1 -1
  582. package/build/components/url-input/button.js.map +1 -1
  583. package/build/components/url-input/index.js.map +1 -1
  584. package/build/components/url-input/index.native.js.map +1 -1
  585. package/build/components/url-popover/image-url-input-ui.js.map +1 -1
  586. package/build/components/url-popover/index.js.map +1 -1
  587. package/build/components/url-popover/link-editor.js.map +1 -1
  588. package/build/components/url-popover/link-viewer-url.js.map +1 -1
  589. package/build/components/url-popover/link-viewer.js.map +1 -1
  590. package/build/components/use-block-commands/index.js +20 -2
  591. package/build/components/use-block-commands/index.js.map +1 -1
  592. package/build/components/use-block-display-information/index.js +9 -3
  593. package/build/components/use-block-display-information/index.js.map +1 -1
  594. package/build/components/use-block-drop-zone/index.js.map +1 -1
  595. package/build/components/use-block-drop-zone/index.native.js.map +1 -1
  596. package/build/components/use-flash-editable-blocks/index.js.map +1 -1
  597. package/build/components/use-moving-animation/index.js.map +1 -1
  598. package/build/components/use-on-block-drop/index.js +3 -1
  599. package/build/components/use-on-block-drop/index.js.map +1 -1
  600. package/build/components/use-on-block-drop/index.native.js.map +1 -1
  601. package/build/components/use-on-block-drop/types.js.map +1 -1
  602. package/build/components/use-paste-styles/index.js +1 -0
  603. package/build/components/use-paste-styles/index.js.map +1 -1
  604. package/build/components/use-resize-canvas/index.js.map +1 -1
  605. package/build/components/use-settings/index.js.map +1 -1
  606. package/build/components/use-unsupported-block-editor/index.native.js.map +1 -1
  607. package/build/components/video-player/gridicon-play.native.js.map +1 -1
  608. package/build/components/video-player/index.native.js.map +1 -1
  609. package/build/components/warning/index.js.map +1 -1
  610. package/build/components/warning/index.native.js.map +1 -1
  611. package/build/components/writing-flow/index.js.map +1 -1
  612. package/build/components/writing-flow/use-arrow-nav.js.map +1 -1
  613. package/build/components/writing-flow/use-click-selection.js.map +1 -1
  614. package/build/components/writing-flow/use-clipboard-handler.js.map +1 -1
  615. package/build/components/writing-flow/use-drag-selection.js +3 -1
  616. package/build/components/writing-flow/use-drag-selection.js.map +1 -1
  617. package/build/components/writing-flow/use-input.js.map +1 -1
  618. package/build/components/writing-flow/use-multi-selection.js.map +1 -1
  619. package/build/components/writing-flow/use-select-all.js.map +1 -1
  620. package/build/components/writing-flow/use-selection-observer.js.map +1 -1
  621. package/build/components/writing-flow/use-tab-nav.js +3 -1
  622. package/build/components/writing-flow/use-tab-nav.js.map +1 -1
  623. package/build/components/writing-flow/utils.js.map +1 -1
  624. package/build/components/writing-mode-control/index.js +16 -20
  625. package/build/components/writing-mode-control/index.js.map +1 -1
  626. package/build/elements/index.js.map +1 -1
  627. package/build/hooks/align.js.map +1 -1
  628. package/build/hooks/align.native.js +1 -1
  629. package/build/hooks/align.native.js.map +1 -1
  630. package/build/hooks/anchor.js.map +1 -1
  631. package/build/hooks/aria-label.js.map +1 -1
  632. package/build/hooks/background.js +3 -3
  633. package/build/hooks/background.js.map +1 -1
  634. package/build/hooks/block-hooks.js.map +1 -1
  635. package/build/hooks/block-renaming.js +0 -37
  636. package/build/hooks/block-renaming.js.map +1 -1
  637. package/build/hooks/border.js.map +1 -1
  638. package/build/hooks/color.js +1 -1
  639. package/build/hooks/color.js.map +1 -1
  640. package/build/hooks/compat.js.map +1 -1
  641. package/build/hooks/content-lock-ui.js +5 -5
  642. package/build/hooks/content-lock-ui.js.map +1 -1
  643. package/build/hooks/contrast-checker.js.map +1 -1
  644. package/build/hooks/custom-class-name.js.map +1 -1
  645. package/build/hooks/custom-class-name.native.js.map +1 -1
  646. package/build/hooks/dimensions.js.map +1 -1
  647. package/build/hooks/duotone.js +3 -1
  648. package/build/hooks/duotone.js.map +1 -1
  649. package/build/hooks/font-family.js.map +1 -1
  650. package/build/hooks/font-size.js.map +1 -1
  651. package/build/hooks/gap.js.map +1 -1
  652. package/build/hooks/generated-class-name.js.map +1 -1
  653. package/build/hooks/index.js +6 -5
  654. package/build/hooks/index.js.map +1 -1
  655. package/build/hooks/index.native.js.map +1 -1
  656. package/build/hooks/layout-child.js.map +1 -1
  657. package/build/hooks/layout.js +38 -19
  658. package/build/hooks/layout.js.map +1 -1
  659. package/build/hooks/layout.native.js.map +1 -1
  660. package/build/hooks/line-height.js.map +1 -1
  661. package/build/hooks/lock.js.map +1 -1
  662. package/build/hooks/metadata.js.map +1 -1
  663. package/build/hooks/position.js.map +1 -1
  664. package/build/hooks/settings.js.map +1 -1
  665. package/build/hooks/spacing-visualizer.js.map +1 -1
  666. package/build/hooks/style.js.map +1 -1
  667. package/build/hooks/supports.js +27 -4
  668. package/build/hooks/supports.js.map +1 -1
  669. package/build/hooks/text-align.js +156 -0
  670. package/build/hooks/text-align.js.map +1 -0
  671. package/build/hooks/typography.js +3 -2
  672. package/build/hooks/typography.js.map +1 -1
  673. package/build/hooks/typography.native.js.map +1 -1
  674. package/build/hooks/use-bindings-attributes.js +66 -129
  675. package/build/hooks/use-bindings-attributes.js.map +1 -1
  676. package/build/hooks/use-border-props.js.map +1 -1
  677. package/build/hooks/use-cached-truthy.js.map +1 -1
  678. package/build/hooks/use-color-props.js.map +1 -1
  679. package/build/hooks/use-editor-wrapper-styles.native.js.map +1 -1
  680. package/build/hooks/use-shadow-props.js.map +1 -1
  681. package/build/hooks/use-spacing-props.js.map +1 -1
  682. package/build/hooks/use-typography-props.js +2 -1
  683. package/build/hooks/use-typography-props.js.map +1 -1
  684. package/build/hooks/use-zoom-out.js +22 -15
  685. package/build/hooks/use-zoom-out.js.map +1 -1
  686. package/build/hooks/utils.js +37 -8
  687. package/build/hooks/utils.js.map +1 -1
  688. package/build/index.js.map +1 -1
  689. package/build/index.native.js.map +1 -1
  690. package/build/layouts/constrained.js.map +1 -1
  691. package/build/layouts/definitions.js +8 -6
  692. package/build/layouts/definitions.js.map +1 -1
  693. package/build/layouts/flex.js.map +1 -1
  694. package/build/layouts/flow.js.map +1 -1
  695. package/build/layouts/grid.js +52 -9
  696. package/build/layouts/grid.js.map +1 -1
  697. package/build/layouts/index.js.map +1 -1
  698. package/build/layouts/utils.js.map +1 -1
  699. package/build/lock-unlock.js.map +1 -1
  700. package/build/private-apis.js +5 -3
  701. package/build/private-apis.js.map +1 -1
  702. package/build/private-apis.native.js +1 -1
  703. package/build/private-apis.native.js.map +1 -1
  704. package/build/store/actions.js +47 -9
  705. package/build/store/actions.js.map +1 -1
  706. package/build/store/array.js.map +1 -1
  707. package/build/store/constants.js.map +1 -1
  708. package/build/store/defaults.js.map +1 -1
  709. package/build/store/defaults.native.js.map +1 -1
  710. package/build/store/get-block-settings.js.map +1 -1
  711. package/build/store/index.js +1 -1
  712. package/build/store/index.js.map +1 -1
  713. package/build/store/private-actions.js +5 -2
  714. package/build/store/private-actions.js.map +1 -1
  715. package/build/store/private-keys.js.map +1 -1
  716. package/build/store/private-selectors.js +121 -44
  717. package/build/store/private-selectors.js.map +1 -1
  718. package/build/store/reducer.js +11 -8
  719. package/build/store/reducer.js.map +1 -1
  720. package/build/store/selectors.js +143 -88
  721. package/build/store/selectors.js.map +1 -1
  722. package/build/store/undo-ignore.js.map +1 -1
  723. package/build/store/utils.js.map +1 -1
  724. package/build/utils/dom.js.map +1 -1
  725. package/build/utils/get-px-from-css-unit.js.map +1 -1
  726. package/build/utils/index.js.map +1 -1
  727. package/build/utils/math.js.map +1 -1
  728. package/build/utils/object.js +17 -0
  729. package/build/utils/object.js.map +1 -1
  730. package/build/utils/order-inserter-block-items.js +6 -2
  731. package/build/utils/order-inserter-block-items.js.map +1 -1
  732. package/build/utils/pasting.js +6 -2
  733. package/build/utils/pasting.js.map +1 -1
  734. package/build/utils/selection.js.map +1 -1
  735. package/build/utils/sorting.js.map +1 -1
  736. package/build/utils/transform-styles/index.js +1 -1
  737. package/build/utils/transform-styles/index.js.map +1 -1
  738. package/build/utils/use-notify-copy.js.map +1 -1
  739. package/build-module/autocompleters/block.js.map +1 -1
  740. package/build-module/autocompleters/link.js.map +1 -1
  741. package/build-module/components/alignment-control/index.js.map +1 -1
  742. package/build-module/components/alignment-control/ui.js +3 -1
  743. package/build-module/components/alignment-control/ui.js.map +1 -1
  744. package/build-module/components/autocomplete/index.js.map +1 -1
  745. package/build-module/components/block-actions/index.js.map +1 -1
  746. package/build-module/components/block-alignment-control/constants.js.map +1 -1
  747. package/build-module/components/block-alignment-control/index.js.map +1 -1
  748. package/build-module/components/block-alignment-control/ui.js.map +1 -1
  749. package/build-module/components/block-alignment-control/ui.native.js.map +1 -1
  750. package/build-module/components/block-alignment-control/use-available-alignments.js.map +1 -1
  751. package/build-module/components/block-alignment-matrix-control/index.js.map +1 -1
  752. package/build-module/components/block-bindings-toolbar-indicator/index.js.map +1 -1
  753. package/build-module/components/block-breadcrumb/index.js.map +1 -1
  754. package/build-module/components/block-canvas/index.js.map +1 -1
  755. package/build-module/components/block-caption/index.native.js.map +1 -1
  756. package/build-module/components/block-card/index.js.map +1 -1
  757. package/build-module/components/block-compare/block-view.js.map +1 -1
  758. package/build-module/components/block-compare/index.js.map +1 -1
  759. package/build-module/components/block-content-overlay/index.js.map +1 -1
  760. package/build-module/components/block-context/index.js.map +1 -1
  761. package/build-module/components/block-controls/fill.js.map +1 -1
  762. package/build-module/components/block-controls/groups.js.map +1 -1
  763. package/build-module/components/block-controls/hook.js.map +1 -1
  764. package/build-module/components/block-controls/index.js.map +1 -1
  765. package/build-module/components/block-controls/slot.js.map +1 -1
  766. package/build-module/components/block-controls/slot.native.js.map +1 -1
  767. package/build-module/components/block-controls/use-has-block-controls.js.map +1 -1
  768. package/build-module/components/block-draggable/draggable-chip.js.map +1 -1
  769. package/build-module/components/block-draggable/draggable-chip.native.js.map +1 -1
  770. package/build-module/components/block-draggable/dropping-insertion-point.native.js.map +1 -1
  771. package/build-module/components/block-draggable/index.js.map +1 -1
  772. package/build-module/components/block-draggable/index.native.js.map +1 -1
  773. package/build-module/components/block-draggable/use-scroll-when-dragging.js.map +1 -1
  774. package/build-module/components/block-draggable/use-scroll-when-dragging.native.js.map +1 -1
  775. package/build-module/components/block-edit/context.js +1 -0
  776. package/build-module/components/block-edit/context.js.map +1 -1
  777. package/build-module/components/block-edit/edit.js.map +1 -1
  778. package/build-module/components/block-edit/edit.native.js.map +1 -1
  779. package/build-module/components/block-edit/index.js +5 -3
  780. package/build-module/components/block-edit/index.js.map +1 -1
  781. package/build-module/components/block-edit-visually-button/index.js.map +1 -1
  782. package/build-module/components/block-editing-mode/index.js.map +1 -1
  783. package/build-module/components/block-full-height-alignment-control/index.js.map +1 -1
  784. package/build-module/components/block-heading-level-dropdown/heading-level-icon.js.map +1 -1
  785. package/build-module/components/block-heading-level-dropdown/index.js.map +1 -1
  786. package/build-module/components/block-heading-level-dropdown/index.native.js.map +1 -1
  787. package/build-module/components/block-icon/index.js.map +1 -1
  788. package/build-module/components/block-icon/index.native.js.map +1 -1
  789. package/build-module/components/block-info-slot-fill/index.js.map +1 -1
  790. package/build-module/components/block-inspector/index.js +5 -4
  791. package/build-module/components/block-inspector/index.js.map +1 -1
  792. package/build-module/components/block-inspector/useBlockInspectorAnimationSettings.js.map +1 -1
  793. package/build-module/components/block-list/block-crash-boundary.js.map +1 -1
  794. package/build-module/components/block-list/block-crash-boundary.native.js.map +1 -1
  795. package/build-module/components/block-list/block-crash-warning.js.map +1 -1
  796. package/build-module/components/block-list/block-crash-warning.native.js.map +1 -1
  797. package/build-module/components/block-list/block-html.js.map +1 -1
  798. package/build-module/components/block-list/block-invalid-warning.js.map +1 -1
  799. package/build-module/components/block-list/block-invalid-warning.native.js.map +1 -1
  800. package/build-module/components/block-list/block-list-context.native.js.map +1 -1
  801. package/build-module/components/block-list/block-list-item-cell.native.js.map +1 -1
  802. package/build-module/components/block-list/block-list-item.native.js.map +1 -1
  803. package/build-module/components/block-list/block-outline.native.js.map +1 -1
  804. package/build-module/components/block-list/block-selection-button.native.js.map +1 -1
  805. package/build-module/components/block-list/block.js +44 -35
  806. package/build-module/components/block-list/block.js.map +1 -1
  807. package/build-module/components/block-list/block.native.js +2 -2
  808. package/build-module/components/block-list/block.native.js.map +1 -1
  809. package/build-module/components/block-list/grid-item.native.js.map +1 -1
  810. package/build-module/components/block-list/index.js +18 -6
  811. package/build-module/components/block-list/index.js.map +1 -1
  812. package/build-module/components/block-list/index.native.js +1 -9
  813. package/build-module/components/block-list/index.native.js.map +1 -1
  814. package/build-module/components/block-list/insertion-point.native.js.map +1 -1
  815. package/build-module/components/block-list/layout.js.map +1 -1
  816. package/build-module/components/block-list/private-block-context.js.map +1 -1
  817. package/build-module/components/block-list/subdirectory-icon.js.map +1 -1
  818. package/build-module/components/block-list/use-block-props/index.js +8 -7
  819. package/build-module/components/block-list/use-block-props/index.js.map +1 -1
  820. package/build-module/components/block-list/use-block-props/index.native.js.map +1 -1
  821. package/build-module/components/block-list/use-block-props/use-block-refs.js +19 -48
  822. package/build-module/components/block-list/use-block-props/use-block-refs.js.map +1 -1
  823. package/build-module/components/block-list/use-block-props/use-focus-first-element.js +3 -2
  824. package/build-module/components/block-list/use-block-props/use-focus-first-element.js.map +1 -1
  825. package/build-module/components/block-list/use-block-props/use-focus-handler.js.map +1 -1
  826. package/build-module/components/block-list/use-block-props/use-intersection-observer.js.map +1 -1
  827. package/build-module/components/block-list/use-block-props/use-is-hovered.js +10 -14
  828. package/build-module/components/block-list/use-block-props/use-is-hovered.js.map +1 -1
  829. package/build-module/components/block-list/use-block-props/use-nav-mode-exit.js.map +1 -1
  830. package/build-module/components/block-list/use-block-props/use-selected-block-event-handlers.js.map +1 -1
  831. package/build-module/components/block-list/use-in-between-inserter.js.map +1 -1
  832. package/build-module/components/block-list/use-scroll-upon-insertion.native.js.map +1 -1
  833. package/build-module/components/block-list-appender/index.js.map +1 -1
  834. package/build-module/components/block-list-appender/index.native.js.map +1 -1
  835. package/build-module/components/block-lock/index.js.map +1 -1
  836. package/build-module/components/block-lock/menu-item.js.map +1 -1
  837. package/build-module/components/block-lock/modal.js.map +1 -1
  838. package/build-module/components/block-lock/toolbar.js.map +1 -1
  839. package/build-module/components/block-lock/use-block-lock.js.map +1 -1
  840. package/build-module/components/block-media-update-progress/index.native.js.map +1 -1
  841. package/build-module/components/block-mover/button.js.map +1 -1
  842. package/build-module/components/block-mover/index.js.map +1 -1
  843. package/build-module/components/block-mover/index.native.js +3 -1
  844. package/build-module/components/block-mover/index.native.js.map +1 -1
  845. package/build-module/components/block-mover/mover-description.js.map +1 -1
  846. package/build-module/components/block-mover/mover-description.native.js.map +1 -1
  847. package/build-module/components/block-navigation/dropdown.js.map +1 -1
  848. package/build-module/components/block-parent-selector/index.js.map +1 -1
  849. package/build-module/components/block-pattern-setup/constants.js.map +1 -1
  850. package/build-module/components/block-pattern-setup/index.js.map +1 -1
  851. package/build-module/components/block-pattern-setup/setup-toolbar.js.map +1 -1
  852. package/build-module/components/block-pattern-setup/use-patterns-setup.js.map +1 -1
  853. package/build-module/components/block-patterns-list/index.js.map +1 -1
  854. package/build-module/components/block-patterns-paging/index.js +8 -4
  855. package/build-module/components/block-patterns-paging/index.js.map +1 -1
  856. package/build-module/components/block-popover/cover.js.map +1 -1
  857. package/build-module/components/block-popover/drop-zone.js.map +1 -1
  858. package/build-module/components/block-popover/inbetween.js.map +1 -1
  859. package/build-module/components/block-popover/index.js.map +1 -1
  860. package/build-module/components/block-popover/use-popover-scroll.js.map +1 -1
  861. package/build-module/components/block-preview/auto.js.map +1 -1
  862. package/build-module/components/block-preview/index.js.map +1 -1
  863. package/build-module/components/block-quick-navigation/index.js.map +1 -1
  864. package/build-module/components/block-removal-warning-modal/index.js.map +1 -1
  865. package/build-module/components/block-rename/index.js.map +1 -1
  866. package/build-module/components/block-rename/is-empty-string.js.map +1 -1
  867. package/build-module/components/block-rename/modal.js +14 -10
  868. package/build-module/components/block-rename/modal.js.map +1 -1
  869. package/build-module/components/block-rename/rename-control.js +3 -1
  870. package/build-module/components/block-rename/rename-control.js.map +1 -1
  871. package/build-module/components/block-rename/use-block-rename.js.map +1 -1
  872. package/build-module/components/block-selection-clearer/index.js.map +1 -1
  873. package/build-module/components/block-settings/button.native.js.map +1 -1
  874. package/build-module/components/block-settings/container.native.js.map +1 -1
  875. package/build-module/components/block-settings/index.native.js.map +1 -1
  876. package/build-module/components/block-settings-menu/block-html-convert-button.js.map +1 -1
  877. package/build-module/components/block-settings-menu/block-mode-toggle.js.map +1 -1
  878. package/build-module/components/block-settings-menu/block-parent-selector-menu-item.js.map +1 -1
  879. package/build-module/components/block-settings-menu/block-settings-dropdown.js +1 -26
  880. package/build-module/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
  881. package/build-module/components/block-settings-menu/block-settings-menu-first-item.js.map +1 -1
  882. package/build-module/components/block-settings-menu/index.js.map +1 -1
  883. package/build-module/components/block-settings-menu-controls/index.js.map +1 -1
  884. package/build-module/components/block-styles/index.js.map +1 -1
  885. package/build-module/components/block-styles/index.native.js.map +1 -1
  886. package/build-module/components/block-styles/menu-items.js.map +1 -1
  887. package/build-module/components/block-styles/preview-panel.js.map +1 -1
  888. package/build-module/components/block-styles/preview.native.js.map +1 -1
  889. package/build-module/components/block-styles/use-styles-for-block.js.map +1 -1
  890. package/build-module/components/block-styles/utils.js.map +1 -1
  891. package/build-module/components/block-switcher/block-styles-menu.js.map +1 -1
  892. package/build-module/components/block-switcher/block-transformations-menu.js.map +1 -1
  893. package/build-module/components/block-switcher/block-transformations-menu.native.js.map +1 -1
  894. package/build-module/components/block-switcher/block-variation-transformations.js.map +1 -1
  895. package/build-module/components/block-switcher/index.js.map +1 -1
  896. package/build-module/components/block-switcher/pattern-transformations-menu.js +3 -1
  897. package/build-module/components/block-switcher/pattern-transformations-menu.js.map +1 -1
  898. package/build-module/components/block-switcher/preview-block-popover.js.map +1 -1
  899. package/build-module/components/block-switcher/use-transformed-patterns.js +6 -2
  900. package/build-module/components/block-switcher/use-transformed-patterns.js.map +1 -1
  901. package/build-module/components/block-switcher/utils.js +15 -5
  902. package/build-module/components/block-switcher/utils.js.map +1 -1
  903. package/build-module/components/block-title/index.js.map +1 -1
  904. package/build-module/components/block-title/use-block-display-title.js.map +1 -1
  905. package/build-module/components/block-toolbar/block-name-context.js.map +1 -1
  906. package/build-module/components/block-toolbar/block-toolbar-last-item.js.map +1 -1
  907. package/build-module/components/block-toolbar/block-toolbar-menu.native.js.map +1 -1
  908. package/build-module/components/block-toolbar/index.js +1 -1
  909. package/build-module/components/block-toolbar/index.js.map +1 -1
  910. package/build-module/components/block-toolbar/index.native.js.map +1 -1
  911. package/build-module/components/block-toolbar/shuffle.js.map +1 -1
  912. package/build-module/components/block-toolbar/use-has-block-toolbar.js +20 -12
  913. package/build-module/components/block-toolbar/use-has-block-toolbar.js.map +1 -1
  914. package/build-module/components/block-toolbar/utils.js.map +1 -1
  915. package/build-module/components/block-tools/block-selection-button.js +16 -12
  916. package/build-module/components/block-tools/block-selection-button.js.map +1 -1
  917. package/build-module/components/block-tools/block-toolbar-breadcrumb.js.map +1 -1
  918. package/build-module/components/block-tools/block-toolbar-popover.js.map +1 -1
  919. package/build-module/components/block-tools/empty-block-inserter.js.map +1 -1
  920. package/build-module/components/block-tools/index.js +3 -1
  921. package/build-module/components/block-tools/index.js.map +1 -1
  922. package/build-module/components/block-tools/insertion-point.js.map +1 -1
  923. package/build-module/components/block-tools/use-block-toolbar-popover-props.js.map +1 -1
  924. package/build-module/components/block-tools/use-selected-block-tool-props.js.map +1 -1
  925. package/build-module/components/block-tools/use-show-block-tools.js +9 -18
  926. package/build-module/components/block-tools/use-show-block-tools.js.map +1 -1
  927. package/build-module/components/block-tools/zoom-out-mode-inserters.js +5 -1
  928. package/build-module/components/block-tools/zoom-out-mode-inserters.js.map +1 -1
  929. package/build-module/components/block-types-list/index.js.map +1 -1
  930. package/build-module/components/block-types-list/index.native.js.map +1 -1
  931. package/build-module/components/block-variation-picker/index.js +3 -2
  932. package/build-module/components/block-variation-picker/index.js.map +1 -1
  933. package/build-module/components/block-variation-picker/index.native.js.map +1 -1
  934. package/build-module/components/block-variation-transforms/index.js +7 -2
  935. package/build-module/components/block-variation-transforms/index.js.map +1 -1
  936. package/build-module/components/block-vertical-alignment-control/icons.js.map +1 -1
  937. package/build-module/components/block-vertical-alignment-control/index.js.map +1 -1
  938. package/build-module/components/block-vertical-alignment-control/ui.js.map +1 -1
  939. package/build-module/components/border-radius-control/all-input-control.js.map +1 -1
  940. package/build-module/components/border-radius-control/index.js.map +1 -1
  941. package/build-module/components/border-radius-control/input-controls.js.map +1 -1
  942. package/build-module/components/border-radius-control/linked-button.js.map +1 -1
  943. package/build-module/components/border-radius-control/utils.js.map +1 -1
  944. package/build-module/components/button-block-appender/index.js.map +1 -1
  945. package/build-module/components/button-block-appender/index.native.js +11 -1
  946. package/build-module/components/button-block-appender/index.native.js.map +1 -1
  947. package/build-module/components/caption/index.native.js.map +1 -1
  948. package/build-module/components/child-layout-control/index.js.map +1 -1
  949. package/build-module/components/color-palette/control.js.map +1 -1
  950. package/build-module/components/color-palette/index.js.map +1 -1
  951. package/build-module/components/color-palette/with-color-context.js.map +1 -1
  952. package/build-module/components/color-style-selector/index.js.map +1 -1
  953. package/build-module/components/colors/index.js.map +1 -1
  954. package/build-module/components/colors/utils.js.map +1 -1
  955. package/build-module/components/colors/with-colors.js.map +1 -1
  956. package/build-module/components/colors-gradients/control.js.map +1 -1
  957. package/build-module/components/colors-gradients/dropdown.js.map +1 -1
  958. package/build-module/components/colors-gradients/panel-color-gradient-settings.js.map +1 -1
  959. package/build-module/components/colors-gradients/panel-color-gradient-settings.native.js.map +1 -1
  960. package/build-module/components/colors-gradients/use-multiple-origin-colors-and-gradients.js.map +1 -1
  961. package/build-module/components/contrast-checker/index.js.map +1 -1
  962. package/build-module/components/contrast-checker/index.native.js.map +1 -1
  963. package/build-module/components/convert-to-group-buttons/index.js.map +1 -1
  964. package/build-module/components/convert-to-group-buttons/index.native.js.map +1 -1
  965. package/build-module/components/convert-to-group-buttons/toolbar.js.map +1 -1
  966. package/build-module/components/convert-to-group-buttons/use-convert-to-group-button-props.js.map +1 -1
  967. package/build-module/components/copy-handler/index.js.map +1 -1
  968. package/build-module/components/date-format-picker/index.js.map +1 -1
  969. package/build-module/components/default-block-appender/index.js.map +1 -1
  970. package/build-module/components/default-block-appender/index.native.js.map +1 -1
  971. package/build-module/components/dimensions-tool/aspect-ratio-tool.js.map +1 -1
  972. package/build-module/components/dimensions-tool/index.js.map +1 -1
  973. package/build-module/components/dimensions-tool/scale-tool.js.map +1 -1
  974. package/build-module/components/dimensions-tool/width-height-tool.js.map +1 -1
  975. package/build-module/components/duotone/utils.js.map +1 -1
  976. package/build-module/components/duotone-control/index.js.map +1 -1
  977. package/build-module/components/editable-text/index.js.map +1 -1
  978. package/build-module/components/editor-styles/index.js +3 -2
  979. package/build-module/components/editor-styles/index.js.map +1 -1
  980. package/build-module/components/floating-toolbar/index.native.js +9 -5
  981. package/build-module/components/floating-toolbar/index.native.js.map +1 -1
  982. package/build-module/components/floating-toolbar/nav-up-icon.js.map +1 -1
  983. package/build-module/components/font-appearance-control/index.js.map +1 -1
  984. package/build-module/components/font-family/index.js.map +1 -1
  985. package/build-module/components/font-sizes/fluid-utils.js.map +1 -1
  986. package/build-module/components/font-sizes/font-size-picker.js.map +1 -1
  987. package/build-module/components/font-sizes/index.js.map +1 -1
  988. package/build-module/components/font-sizes/index.native.js.map +1 -1
  989. package/build-module/components/font-sizes/utils.js.map +1 -1
  990. package/build-module/components/font-sizes/with-font-sizes.js.map +1 -1
  991. package/build-module/components/global-styles/advanced-panel.js.map +1 -1
  992. package/build-module/components/global-styles/background-panel.js +20 -17
  993. package/build-module/components/global-styles/background-panel.js.map +1 -1
  994. package/build-module/components/global-styles/border-panel.js.map +1 -1
  995. package/build-module/components/global-styles/color-panel.js +3 -1
  996. package/build-module/components/global-styles/color-panel.js.map +1 -1
  997. package/build-module/components/global-styles/color-panel.native.js.map +1 -1
  998. package/build-module/components/global-styles/context.js.map +1 -1
  999. package/build-module/components/global-styles/dimensions-panel.js +17 -1
  1000. package/build-module/components/global-styles/dimensions-panel.js.map +1 -1
  1001. package/build-module/components/global-styles/filters-panel.js.map +1 -1
  1002. package/build-module/components/global-styles/get-block-css-selector.js.map +1 -1
  1003. package/build-module/components/global-styles/get-global-styles-changes.js.map +1 -1
  1004. package/build-module/components/global-styles/hooks.js +3 -2
  1005. package/build-module/components/global-styles/hooks.js.map +1 -1
  1006. package/build-module/components/global-styles/image-settings-panel.js.map +1 -1
  1007. package/build-module/components/global-styles/index.js.map +1 -1
  1008. package/build-module/components/global-styles/shadow-panel-components.js.map +1 -1
  1009. package/build-module/components/global-styles/typography-panel.js +24 -24
  1010. package/build-module/components/global-styles/typography-panel.js.map +1 -1
  1011. package/build-module/components/global-styles/typography-utils.js.map +1 -1
  1012. package/build-module/components/global-styles/use-global-styles-output.js +153 -136
  1013. package/build-module/components/global-styles/use-global-styles-output.js.map +1 -1
  1014. package/build-module/components/global-styles/utils.js +44 -0
  1015. package/build-module/components/global-styles/utils.js.map +1 -1
  1016. package/build-module/components/gradients/index.js.map +1 -1
  1017. package/build-module/components/gradients/index.native.js.map +1 -1
  1018. package/build-module/components/gradients/use-gradient.js.map +1 -1
  1019. package/build-module/components/gradients/with-gradient.js.map +1 -1
  1020. package/build-module/components/grid-visualizer/grid-item-resizer.js.map +1 -1
  1021. package/build-module/components/grid-visualizer/grid-visualizer.js.map +1 -1
  1022. package/build-module/components/grid-visualizer/index.js.map +1 -1
  1023. package/build-module/components/grid-visualizer/utils.js.map +1 -1
  1024. package/build-module/components/height-control/index.js.map +1 -1
  1025. package/build-module/components/iframe/get-compatibility-styles.js.map +1 -1
  1026. package/build-module/components/iframe/index.js +12 -13
  1027. package/build-module/components/iframe/index.js.map +1 -1
  1028. package/build-module/components/image-editor/aspect-ratio-dropdown.js.map +1 -1
  1029. package/build-module/components/image-editor/constants.js.map +1 -1
  1030. package/build-module/components/image-editor/context.js.map +1 -1
  1031. package/build-module/components/image-editor/cropper.js +7 -3
  1032. package/build-module/components/image-editor/cropper.js.map +1 -1
  1033. package/build-module/components/image-editor/form-controls.js.map +1 -1
  1034. package/build-module/components/image-editor/index.js +0 -2
  1035. package/build-module/components/image-editor/index.js.map +1 -1
  1036. package/build-module/components/image-editor/rotation-button.js.map +1 -1
  1037. package/build-module/components/image-editor/use-save-image.js.map +1 -1
  1038. package/build-module/components/image-editor/use-transform-image.js.map +1 -1
  1039. package/build-module/components/image-editor/zoom-dropdown.js.map +1 -1
  1040. package/build-module/components/image-link-destinations/index.native.js.map +1 -1
  1041. package/build-module/components/image-size-control/index.js.map +1 -1
  1042. package/build-module/components/image-size-control/use-dimension-handler.js.map +1 -1
  1043. package/build-module/components/index.js.map +1 -1
  1044. package/build-module/components/index.native.js.map +1 -1
  1045. package/build-module/components/inner-blocks/button-block-appender.js.map +1 -1
  1046. package/build-module/components/inner-blocks/constants.native.js.map +1 -1
  1047. package/build-module/components/inner-blocks/default-block-appender.js.map +1 -1
  1048. package/build-module/components/inner-blocks/index.js +16 -2
  1049. package/build-module/components/inner-blocks/index.js.map +1 -1
  1050. package/build-module/components/inner-blocks/index.native.js.map +1 -1
  1051. package/build-module/components/inner-blocks/use-block-context.js.map +1 -1
  1052. package/build-module/components/inner-blocks/use-inner-block-template-sync.js.map +1 -1
  1053. package/build-module/components/inner-blocks/use-nested-settings-update.js.map +1 -1
  1054. package/build-module/components/inner-blocks/warning-max-depth-exceeded.native.js.map +1 -1
  1055. package/build-module/components/inner-blocks/with-client-id.js.map +1 -1
  1056. package/build-module/components/inserter/block-patterns-explorer/index.js.map +1 -1
  1057. package/build-module/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.js.map +1 -1
  1058. package/build-module/components/inserter/block-patterns-explorer/pattern-list.js.map +1 -1
  1059. package/build-module/components/inserter/block-patterns-tab/index.js +20 -26
  1060. package/build-module/components/inserter/block-patterns-tab/index.js.map +1 -1
  1061. package/build-module/components/inserter/block-patterns-tab/pattern-category-preview-panel.js +2 -24
  1062. package/build-module/components/inserter/block-patterns-tab/pattern-category-preview-panel.js.map +1 -1
  1063. package/build-module/components/inserter/block-patterns-tab/pattern-category-previews.js +2 -4
  1064. package/build-module/components/inserter/block-patterns-tab/pattern-category-previews.js.map +1 -1
  1065. package/build-module/components/inserter/block-patterns-tab/patterns-filter.js.map +1 -1
  1066. package/build-module/components/inserter/block-patterns-tab/use-pattern-categories.js.map +1 -1
  1067. package/build-module/components/inserter/block-patterns-tab/utils.js.map +1 -1
  1068. package/build-module/components/inserter/block-types-tab.js +4 -0
  1069. package/build-module/components/inserter/block-types-tab.js.map +1 -1
  1070. package/build-module/components/inserter/block-types-tab.native.js.map +1 -1
  1071. package/build-module/components/inserter/category-tabs/index.js +49 -0
  1072. package/build-module/components/inserter/category-tabs/index.js.map +1 -0
  1073. package/build-module/components/inserter/hooks/use-block-type-impressions.native.js.map +1 -1
  1074. package/build-module/components/inserter/hooks/use-block-types-state.js.map +1 -1
  1075. package/build-module/components/inserter/hooks/use-clipboard-block.native.js.map +1 -1
  1076. package/build-module/components/inserter/hooks/use-insertion-point.js.map +1 -1
  1077. package/build-module/components/inserter/hooks/use-patterns-paging.js.map +1 -1
  1078. package/build-module/components/inserter/hooks/use-patterns-state.js.map +1 -1
  1079. package/build-module/components/inserter/index.js.map +1 -1
  1080. package/build-module/components/inserter/index.native.js.map +1 -1
  1081. package/build-module/components/inserter/library.js.map +1 -1
  1082. package/build-module/components/inserter/media-tab/hooks.js.map +1 -1
  1083. package/build-module/components/inserter/media-tab/index.js +1 -1
  1084. package/build-module/components/inserter/media-tab/index.js.map +1 -1
  1085. package/build-module/components/inserter/media-tab/media-list.js.map +1 -1
  1086. package/build-module/components/inserter/media-tab/media-panel.js +0 -24
  1087. package/build-module/components/inserter/media-tab/media-panel.js.map +1 -1
  1088. package/build-module/components/inserter/media-tab/media-preview.js +13 -3
  1089. package/build-module/components/inserter/media-tab/media-preview.js.map +1 -1
  1090. package/build-module/components/inserter/media-tab/media-tab.js +17 -31
  1091. package/build-module/components/inserter/media-tab/media-tab.js.map +1 -1
  1092. package/build-module/components/inserter/media-tab/utils.js.map +1 -1
  1093. package/build-module/components/inserter/menu.js +75 -79
  1094. package/build-module/components/inserter/menu.js.map +1 -1
  1095. package/build-module/components/inserter/menu.native.js.map +1 -1
  1096. package/build-module/components/inserter/mobile-tab-navigation.js.map +1 -1
  1097. package/build-module/components/inserter/no-results.js.map +1 -1
  1098. package/build-module/components/inserter/no-results.native.js.map +1 -1
  1099. package/build-module/components/inserter/panel.js.map +1 -1
  1100. package/build-module/components/inserter/preview-panel.js.map +1 -1
  1101. package/build-module/components/inserter/quick-inserter.js.map +1 -1
  1102. package/build-module/components/inserter/reusable-block-rename-hint.js.map +1 -1
  1103. package/build-module/components/inserter/reusable-blocks-tab.native.js.map +1 -1
  1104. package/build-module/components/inserter/search-items.js.map +1 -1
  1105. package/build-module/components/inserter/search-results.js.map +1 -1
  1106. package/build-module/components/inserter/search-results.native.js.map +1 -1
  1107. package/build-module/components/inserter/tabs.js +13 -9
  1108. package/build-module/components/inserter/tabs.js.map +1 -1
  1109. package/build-module/components/inserter/tabs.native.js.map +1 -1
  1110. package/build-module/components/inserter/tips.js.map +1 -1
  1111. package/build-module/components/inserter/utils.native.js.map +1 -1
  1112. package/build-module/components/inserter-button/index.native.js.map +1 -1
  1113. package/build-module/components/inserter-button/sparkles.js.map +1 -1
  1114. package/build-module/components/inserter-draggable-blocks/index.js.map +1 -1
  1115. package/build-module/components/inserter-list-item/index.js.map +1 -1
  1116. package/build-module/components/inserter-listbox/context.js.map +1 -1
  1117. package/build-module/components/inserter-listbox/group.js.map +1 -1
  1118. package/build-module/components/inserter-listbox/index.js.map +1 -1
  1119. package/build-module/components/inserter-listbox/item.js.map +1 -1
  1120. package/build-module/components/inserter-listbox/row.js.map +1 -1
  1121. package/build-module/components/inserter-menu-extension/index.js.map +1 -1
  1122. package/build-module/components/inspector-controls/block-support-slot-container.js.map +1 -1
  1123. package/build-module/components/inspector-controls/block-support-tools-panel.js.map +1 -1
  1124. package/build-module/components/inspector-controls/fill.js.map +1 -1
  1125. package/build-module/components/inspector-controls/fill.native.js.map +1 -1
  1126. package/build-module/components/inspector-controls/groups.js.map +1 -1
  1127. package/build-module/components/inspector-controls/index.js.map +1 -1
  1128. package/build-module/components/inspector-controls/slot.js.map +1 -1
  1129. package/build-module/components/inspector-controls/slot.native.js.map +1 -1
  1130. package/build-module/components/inspector-controls-tabs/advanced-controls-panel.js.map +1 -1
  1131. package/build-module/components/inspector-controls-tabs/advanced-controls-panel.native.js.map +1 -1
  1132. package/build-module/components/inspector-controls-tabs/index.js.map +1 -1
  1133. package/build-module/components/inspector-controls-tabs/position-controls-panel.js.map +1 -1
  1134. package/build-module/components/inspector-controls-tabs/settings-tab-hint.js.map +1 -1
  1135. package/build-module/components/inspector-controls-tabs/settings-tab.js.map +1 -1
  1136. package/build-module/components/inspector-controls-tabs/styles-tab.js +1 -1
  1137. package/build-module/components/inspector-controls-tabs/styles-tab.js.map +1 -1
  1138. package/build-module/components/inspector-controls-tabs/use-inspector-controls-tabs.js.map +1 -1
  1139. package/build-module/components/inspector-controls-tabs/use-is-list-view-tab-disabled.js.map +1 -1
  1140. package/build-module/components/inspector-controls-tabs/utils.js.map +1 -1
  1141. package/build-module/components/inspector-popover-header/index.js.map +1 -1
  1142. package/build-module/components/justify-content-control/index.js.map +1 -1
  1143. package/build-module/components/justify-content-control/ui.js.map +1 -1
  1144. package/build-module/components/keyboard-shortcuts/index.js.map +1 -1
  1145. package/build-module/components/letter-spacing-control/index.js.map +1 -1
  1146. package/build-module/components/line-height-control/index.js +6 -2
  1147. package/build-module/components/line-height-control/index.js.map +1 -1
  1148. package/build-module/components/line-height-control/index.native.js.map +1 -1
  1149. package/build-module/components/line-height-control/utils.js.map +1 -1
  1150. package/build-module/components/link-control/constants.js.map +1 -1
  1151. package/build-module/components/link-control/index.js.map +1 -1
  1152. package/build-module/components/link-control/is-url-like.js.map +1 -1
  1153. package/build-module/components/link-control/link-preview.js.map +1 -1
  1154. package/build-module/components/link-control/search-create-button.js.map +1 -1
  1155. package/build-module/components/link-control/search-input.js.map +1 -1
  1156. package/build-module/components/link-control/search-item.js +9 -3
  1157. package/build-module/components/link-control/search-item.js.map +1 -1
  1158. package/build-module/components/link-control/search-results.js.map +1 -1
  1159. package/build-module/components/link-control/settings-drawer.js.map +1 -1
  1160. package/build-module/components/link-control/settings.js.map +1 -1
  1161. package/build-module/components/link-control/use-create-page.js.map +1 -1
  1162. package/build-module/components/link-control/use-internal-value.js.map +1 -1
  1163. package/build-module/components/link-control/use-rich-url-data.js.map +1 -1
  1164. package/build-module/components/link-control/use-search-handler.js.map +1 -1
  1165. package/build-module/components/link-control/viewer-slot.js.map +1 -1
  1166. package/build-module/components/list-view/appender.js.map +1 -1
  1167. package/build-module/components/list-view/aria-referenced-text.js.map +1 -1
  1168. package/build-module/components/list-view/block-contents.js.map +1 -1
  1169. package/build-module/components/list-view/block-select-button.js +7 -144
  1170. package/build-module/components/list-view/block-select-button.js.map +1 -1
  1171. package/build-module/components/list-view/block.js +167 -15
  1172. package/build-module/components/list-view/block.js.map +1 -1
  1173. package/build-module/components/list-view/branch.js.map +1 -1
  1174. package/build-module/components/list-view/context.js.map +1 -1
  1175. package/build-module/components/list-view/drop-indicator.js.map +1 -1
  1176. package/build-module/components/list-view/expander.js.map +1 -1
  1177. package/build-module/components/list-view/index.js +1 -1
  1178. package/build-module/components/list-view/index.js.map +1 -1
  1179. package/build-module/components/list-view/leaf.js.map +1 -1
  1180. package/build-module/components/list-view/use-block-selection.js.map +1 -1
  1181. package/build-module/components/list-view/use-clipboard-handler.js.map +1 -1
  1182. package/build-module/components/list-view/use-list-view-block-indexes.js.map +1 -1
  1183. package/build-module/components/list-view/use-list-view-client-ids.js.map +1 -1
  1184. package/build-module/components/list-view/use-list-view-collapse-items.js.map +1 -1
  1185. package/build-module/components/list-view/use-list-view-drop-zone.js +6 -1
  1186. package/build-module/components/list-view/use-list-view-drop-zone.js.map +1 -1
  1187. package/build-module/components/list-view/use-list-view-expand-selected-item.js.map +1 -1
  1188. package/build-module/components/list-view/use-list-view-images.js.map +1 -1
  1189. package/build-module/components/list-view/use-list-view-scroll-into-view.js.map +1 -1
  1190. package/build-module/components/list-view/utils.js +3 -1
  1191. package/build-module/components/list-view/utils.js.map +1 -1
  1192. package/build-module/components/media-placeholder/index.js +3 -3
  1193. package/build-module/components/media-placeholder/index.js.map +1 -1
  1194. package/build-module/components/media-placeholder/index.native.js.map +1 -1
  1195. package/build-module/components/media-replace-flow/index.js.map +1 -1
  1196. package/build-module/components/media-replace-flow/index.native.js.map +1 -1
  1197. package/build-module/components/media-upload/check.js.map +1 -1
  1198. package/build-module/components/media-upload/constants.native.js.map +1 -1
  1199. package/build-module/components/media-upload/index.js.map +1 -1
  1200. package/build-module/components/media-upload/index.native.js.map +1 -1
  1201. package/build-module/components/media-upload-progress/constants.js.map +1 -1
  1202. package/build-module/components/media-upload-progress/index.native.js.map +1 -1
  1203. package/build-module/components/multi-selection-inspector/index.js.map +1 -1
  1204. package/build-module/components/navigable-toolbar/index.js +3 -1
  1205. package/build-module/components/navigable-toolbar/index.js.map +1 -1
  1206. package/build-module/components/observe-typing/index.js.map +1 -1
  1207. package/build-module/components/panel-color-settings/index.js.map +1 -1
  1208. package/build-module/components/plain-text/index.js.map +1 -1
  1209. package/build-module/components/plain-text/index.native.js.map +1 -1
  1210. package/build-module/components/preview-options/index.js.map +1 -1
  1211. package/build-module/components/provider/block-refs-provider.js +3 -4
  1212. package/build-module/components/provider/block-refs-provider.js.map +1 -1
  1213. package/build-module/components/provider/index.js.map +1 -1
  1214. package/build-module/components/provider/index.native.js.map +1 -1
  1215. package/build-module/components/provider/use-block-sync.js +4 -13
  1216. package/build-module/components/provider/use-block-sync.js.map +1 -1
  1217. package/build-module/components/provider/with-registry-provider.js.map +1 -1
  1218. package/build-module/components/publish-date-time-picker/index.js.map +1 -1
  1219. package/build-module/components/recursion-provider/index.js +2 -2
  1220. package/build-module/components/recursion-provider/index.js.map +1 -1
  1221. package/build-module/components/resizable-box-popover/index.js.map +1 -1
  1222. package/build-module/components/resolution-tool/index.js.map +1 -1
  1223. package/build-module/components/responsive-block-control/index.js.map +1 -1
  1224. package/build-module/components/responsive-block-control/label.js.map +1 -1
  1225. package/build-module/components/rich-text/content.js +25 -19
  1226. package/build-module/components/rich-text/content.js.map +1 -1
  1227. package/build-module/components/rich-text/embed-handler-picker.native.js.map +1 -1
  1228. package/build-module/components/rich-text/event-listeners/before-input-rules.js +86 -0
  1229. package/build-module/components/rich-text/event-listeners/before-input-rules.js.map +1 -0
  1230. package/build-module/components/rich-text/event-listeners/delete.js +51 -0
  1231. package/build-module/components/rich-text/event-listeners/delete.js.map +1 -0
  1232. package/build-module/components/rich-text/event-listeners/enter.js +92 -0
  1233. package/build-module/components/rich-text/event-listeners/enter.js.map +1 -0
  1234. package/build-module/components/rich-text/event-listeners/firefox-compat.js +29 -0
  1235. package/build-module/components/rich-text/event-listeners/firefox-compat.js.map +1 -0
  1236. package/build-module/components/rich-text/event-listeners/index.js +36 -0
  1237. package/build-module/components/rich-text/event-listeners/index.js.map +1 -0
  1238. package/build-module/components/rich-text/event-listeners/input-events.js +15 -0
  1239. package/build-module/components/rich-text/event-listeners/input-events.js.map +1 -0
  1240. package/build-module/components/rich-text/event-listeners/input-rules.js +127 -0
  1241. package/build-module/components/rich-text/event-listeners/input-rules.js.map +1 -0
  1242. package/build-module/components/rich-text/event-listeners/insert-replacement-text.js +27 -0
  1243. package/build-module/components/rich-text/event-listeners/insert-replacement-text.js.map +1 -0
  1244. package/build-module/components/rich-text/event-listeners/paste-handler.js +142 -0
  1245. package/build-module/components/rich-text/event-listeners/paste-handler.js.map +1 -0
  1246. package/build-module/components/rich-text/event-listeners/remove-browser-shortcuts.js +21 -0
  1247. package/build-module/components/rich-text/event-listeners/remove-browser-shortcuts.js.map +1 -0
  1248. package/build-module/components/rich-text/event-listeners/shortcuts.js +15 -0
  1249. package/build-module/components/rich-text/event-listeners/shortcuts.js.map +1 -0
  1250. package/build-module/components/rich-text/event-listeners/undo-automatic-change.js +45 -0
  1251. package/build-module/components/rich-text/event-listeners/undo-automatic-change.js.map +1 -0
  1252. package/build-module/components/rich-text/file-paste-handler.native.js.map +1 -1
  1253. package/build-module/components/rich-text/format-edit.js.map +1 -1
  1254. package/build-module/components/rich-text/format-toolbar/index.js.map +1 -1
  1255. package/build-module/components/rich-text/format-toolbar/index.native.js.map +1 -1
  1256. package/build-module/components/rich-text/format-toolbar-container.js.map +1 -1
  1257. package/build-module/components/rich-text/format-toolbar-container.native.js.map +1 -1
  1258. package/build-module/components/rich-text/get-rich-text-values.js.map +1 -1
  1259. package/build-module/components/rich-text/index.js +54 -34
  1260. package/build-module/components/rich-text/index.js.map +1 -1
  1261. package/build-module/components/rich-text/index.native.js +16 -4
  1262. package/build-module/components/rich-text/index.native.js.map +1 -1
  1263. package/build-module/components/rich-text/input-event.js.map +1 -1
  1264. package/build-module/components/rich-text/input-event.native.js.map +1 -1
  1265. package/build-module/components/rich-text/multiline.js +6 -2
  1266. package/build-module/components/rich-text/multiline.js.map +1 -1
  1267. package/build-module/components/rich-text/native/format-edit.js.map +1 -1
  1268. package/build-module/components/rich-text/native/get-format-colors.native.js.map +1 -1
  1269. package/build-module/components/rich-text/native/index.js.map +1 -1
  1270. package/build-module/components/rich-text/native/index.native.js +12 -0
  1271. package/build-module/components/rich-text/native/index.native.js.map +1 -1
  1272. package/build-module/components/rich-text/native/toolbar-button-with-options.native.js.map +1 -1
  1273. package/build-module/components/rich-text/native/use-format-types.js.map +1 -1
  1274. package/build-module/components/rich-text/prevent-event-discovery.js.map +1 -1
  1275. package/build-module/components/rich-text/remove-browser-shortcuts.native.js.map +1 -1
  1276. package/build-module/components/rich-text/shortcut.js.map +1 -1
  1277. package/build-module/components/rich-text/shortcut.native.js.map +1 -1
  1278. package/build-module/components/rich-text/split-value.js.map +1 -1
  1279. package/build-module/components/rich-text/toolbar-button.js.map +1 -1
  1280. package/build-module/components/rich-text/use-format-types.js +8 -4
  1281. package/build-module/components/rich-text/use-format-types.js.map +1 -1
  1282. package/build-module/components/rich-text/use-mark-persistent.js.map +1 -1
  1283. package/build-module/components/rich-text/utils.js.map +1 -1
  1284. package/build-module/components/rich-text/with-deprecations.js.map +1 -1
  1285. package/build-module/components/segmented-text-control/index.js +55 -0
  1286. package/build-module/components/segmented-text-control/index.js.map +1 -0
  1287. package/build-module/components/selection-scroll-into-view/index.js.map +1 -1
  1288. package/build-module/components/skip-to-selected-block/index.js.map +1 -1
  1289. package/build-module/components/spacing-sizes-control/hooks/use-spacing-sizes.js.map +1 -1
  1290. package/build-module/components/spacing-sizes-control/index.js.map +1 -1
  1291. package/build-module/components/spacing-sizes-control/input-controls/axial.js.map +1 -1
  1292. package/build-module/components/spacing-sizes-control/input-controls/separated.js.map +1 -1
  1293. package/build-module/components/spacing-sizes-control/input-controls/single.js.map +1 -1
  1294. package/build-module/components/spacing-sizes-control/input-controls/spacing-input-control.js +16 -2
  1295. package/build-module/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -1
  1296. package/build-module/components/spacing-sizes-control/sides-dropdown/index.js.map +1 -1
  1297. package/build-module/components/spacing-sizes-control/utils.js.map +1 -1
  1298. package/build-module/components/text-alignment-control/index.js +68 -0
  1299. package/build-module/components/text-alignment-control/index.js.map +1 -0
  1300. package/build-module/components/text-decoration-control/index.js +21 -25
  1301. package/build-module/components/text-decoration-control/index.js.map +1 -1
  1302. package/build-module/components/text-transform-control/index.js +18 -22
  1303. package/build-module/components/text-transform-control/index.js.map +1 -1
  1304. package/build-module/components/tool-selector/index.js.map +1 -1
  1305. package/build-module/components/typewriter/index.js.map +1 -1
  1306. package/build-module/components/ungroup-button/index.native.js.map +1 -1
  1307. package/build-module/components/unit-control/index.js.map +1 -1
  1308. package/build-module/components/unsupported-block-details/index.native.js.map +1 -1
  1309. package/build-module/components/url-input/button.js.map +1 -1
  1310. package/build-module/components/url-input/index.js.map +1 -1
  1311. package/build-module/components/url-input/index.native.js.map +1 -1
  1312. package/build-module/components/url-popover/image-url-input-ui.js.map +1 -1
  1313. package/build-module/components/url-popover/index.js.map +1 -1
  1314. package/build-module/components/url-popover/link-editor.js.map +1 -1
  1315. package/build-module/components/url-popover/link-viewer-url.js.map +1 -1
  1316. package/build-module/components/url-popover/link-viewer.js.map +1 -1
  1317. package/build-module/components/use-block-commands/index.js +20 -2
  1318. package/build-module/components/use-block-commands/index.js.map +1 -1
  1319. package/build-module/components/use-block-display-information/index.js +9 -3
  1320. package/build-module/components/use-block-display-information/index.js.map +1 -1
  1321. package/build-module/components/use-block-drop-zone/index.js.map +1 -1
  1322. package/build-module/components/use-block-drop-zone/index.native.js.map +1 -1
  1323. package/build-module/components/use-flash-editable-blocks/index.js.map +1 -1
  1324. package/build-module/components/use-moving-animation/index.js.map +1 -1
  1325. package/build-module/components/use-on-block-drop/index.js +3 -1
  1326. package/build-module/components/use-on-block-drop/index.js.map +1 -1
  1327. package/build-module/components/use-on-block-drop/index.native.js.map +1 -1
  1328. package/build-module/components/use-on-block-drop/types.js.map +1 -1
  1329. package/build-module/components/use-paste-styles/index.js +2 -1
  1330. package/build-module/components/use-paste-styles/index.js.map +1 -1
  1331. package/build-module/components/use-resize-canvas/index.js.map +1 -1
  1332. package/build-module/components/use-settings/index.js.map +1 -1
  1333. package/build-module/components/use-unsupported-block-editor/index.native.js.map +1 -1
  1334. package/build-module/components/video-player/gridicon-play.native.js.map +1 -1
  1335. package/build-module/components/video-player/index.native.js.map +1 -1
  1336. package/build-module/components/warning/index.js.map +1 -1
  1337. package/build-module/components/warning/index.native.js.map +1 -1
  1338. package/build-module/components/writing-flow/index.js.map +1 -1
  1339. package/build-module/components/writing-flow/use-arrow-nav.js.map +1 -1
  1340. package/build-module/components/writing-flow/use-click-selection.js.map +1 -1
  1341. package/build-module/components/writing-flow/use-clipboard-handler.js.map +1 -1
  1342. package/build-module/components/writing-flow/use-drag-selection.js +3 -1
  1343. package/build-module/components/writing-flow/use-drag-selection.js.map +1 -1
  1344. package/build-module/components/writing-flow/use-input.js.map +1 -1
  1345. package/build-module/components/writing-flow/use-multi-selection.js.map +1 -1
  1346. package/build-module/components/writing-flow/use-select-all.js.map +1 -1
  1347. package/build-module/components/writing-flow/use-selection-observer.js.map +1 -1
  1348. package/build-module/components/writing-flow/use-tab-nav.js +3 -1
  1349. package/build-module/components/writing-flow/use-tab-nav.js.map +1 -1
  1350. package/build-module/components/writing-flow/utils.js.map +1 -1
  1351. package/build-module/components/writing-mode-control/index.js +16 -20
  1352. package/build-module/components/writing-mode-control/index.js.map +1 -1
  1353. package/build-module/elements/index.js.map +1 -1
  1354. package/build-module/hooks/align.js.map +1 -1
  1355. package/build-module/hooks/align.native.js.map +1 -1
  1356. package/build-module/hooks/anchor.js.map +1 -1
  1357. package/build-module/hooks/aria-label.js.map +1 -1
  1358. package/build-module/hooks/background.js +2 -2
  1359. package/build-module/hooks/background.js.map +1 -1
  1360. package/build-module/hooks/block-hooks.js.map +1 -1
  1361. package/build-module/hooks/block-renaming.js +0 -36
  1362. package/build-module/hooks/block-renaming.js.map +1 -1
  1363. package/build-module/hooks/border.js.map +1 -1
  1364. package/build-module/hooks/color.js.map +1 -1
  1365. package/build-module/hooks/compat.js.map +1 -1
  1366. package/build-module/hooks/content-lock-ui.js +5 -5
  1367. package/build-module/hooks/content-lock-ui.js.map +1 -1
  1368. package/build-module/hooks/contrast-checker.js.map +1 -1
  1369. package/build-module/hooks/custom-class-name.js.map +1 -1
  1370. package/build-module/hooks/custom-class-name.native.js.map +1 -1
  1371. package/build-module/hooks/dimensions.js.map +1 -1
  1372. package/build-module/hooks/duotone.js +3 -1
  1373. package/build-module/hooks/duotone.js.map +1 -1
  1374. package/build-module/hooks/font-family.js.map +1 -1
  1375. package/build-module/hooks/font-size.js.map +1 -1
  1376. package/build-module/hooks/gap.js.map +1 -1
  1377. package/build-module/hooks/generated-class-name.js.map +1 -1
  1378. package/build-module/hooks/index.js +5 -4
  1379. package/build-module/hooks/index.js.map +1 -1
  1380. package/build-module/hooks/index.native.js.map +1 -1
  1381. package/build-module/hooks/layout-child.js.map +1 -1
  1382. package/build-module/hooks/layout.js +38 -19
  1383. package/build-module/hooks/layout.js.map +1 -1
  1384. package/build-module/hooks/layout.native.js.map +1 -1
  1385. package/build-module/hooks/line-height.js.map +1 -1
  1386. package/build-module/hooks/lock.js.map +1 -1
  1387. package/build-module/hooks/metadata.js.map +1 -1
  1388. package/build-module/hooks/position.js.map +1 -1
  1389. package/build-module/hooks/settings.js.map +1 -1
  1390. package/build-module/hooks/spacing-visualizer.js.map +1 -1
  1391. package/build-module/hooks/style.js.map +1 -1
  1392. package/build-module/hooks/supports.js +22 -1
  1393. package/build-module/hooks/supports.js.map +1 -1
  1394. package/build-module/hooks/text-align.js +145 -0
  1395. package/build-module/hooks/text-align.js.map +1 -0
  1396. package/build-module/hooks/typography.js +2 -1
  1397. package/build-module/hooks/typography.js.map +1 -1
  1398. package/build-module/hooks/typography.native.js.map +1 -1
  1399. package/build-module/hooks/use-bindings-attributes.js +68 -132
  1400. package/build-module/hooks/use-bindings-attributes.js.map +1 -1
  1401. package/build-module/hooks/use-border-props.js.map +1 -1
  1402. package/build-module/hooks/use-cached-truthy.js.map +1 -1
  1403. package/build-module/hooks/use-color-props.js.map +1 -1
  1404. package/build-module/hooks/use-editor-wrapper-styles.native.js.map +1 -1
  1405. package/build-module/hooks/use-shadow-props.js.map +1 -1
  1406. package/build-module/hooks/use-spacing-props.js.map +1 -1
  1407. package/build-module/hooks/use-typography-props.js +2 -1
  1408. package/build-module/hooks/use-typography-props.js.map +1 -1
  1409. package/build-module/hooks/use-zoom-out.js +23 -16
  1410. package/build-module/hooks/use-zoom-out.js.map +1 -1
  1411. package/build-module/hooks/utils.js +38 -9
  1412. package/build-module/hooks/utils.js.map +1 -1
  1413. package/build-module/index.js.map +1 -1
  1414. package/build-module/index.native.js.map +1 -1
  1415. package/build-module/layouts/constrained.js.map +1 -1
  1416. package/build-module/layouts/definitions.js +8 -6
  1417. package/build-module/layouts/definitions.js.map +1 -1
  1418. package/build-module/layouts/flex.js.map +1 -1
  1419. package/build-module/layouts/flow.js.map +1 -1
  1420. package/build-module/layouts/grid.js +52 -9
  1421. package/build-module/layouts/grid.js.map +1 -1
  1422. package/build-module/layouts/index.js.map +1 -1
  1423. package/build-module/layouts/utils.js.map +1 -1
  1424. package/build-module/lock-unlock.js.map +1 -1
  1425. package/build-module/private-apis.js +4 -2
  1426. package/build-module/private-apis.js.map +1 -1
  1427. package/build-module/private-apis.native.js.map +1 -1
  1428. package/build-module/store/actions.js +47 -9
  1429. package/build-module/store/actions.js.map +1 -1
  1430. package/build-module/store/array.js.map +1 -1
  1431. package/build-module/store/constants.js.map +1 -1
  1432. package/build-module/store/defaults.js.map +1 -1
  1433. package/build-module/store/defaults.native.js.map +1 -1
  1434. package/build-module/store/get-block-settings.js.map +1 -1
  1435. package/build-module/store/index.js.map +1 -1
  1436. package/build-module/store/private-actions.js +5 -2
  1437. package/build-module/store/private-actions.js.map +1 -1
  1438. package/build-module/store/private-keys.js.map +1 -1
  1439. package/build-module/store/private-selectors.js +113 -37
  1440. package/build-module/store/private-selectors.js.map +1 -1
  1441. package/build-module/store/reducer.js +11 -8
  1442. package/build-module/store/reducer.js.map +1 -1
  1443. package/build-module/store/selectors.js +116 -62
  1444. package/build-module/store/selectors.js.map +1 -1
  1445. package/build-module/store/undo-ignore.js.map +1 -1
  1446. package/build-module/store/utils.js.map +1 -1
  1447. package/build-module/utils/dom.js.map +1 -1
  1448. package/build-module/utils/get-px-from-css-unit.js.map +1 -1
  1449. package/build-module/utils/index.js.map +1 -1
  1450. package/build-module/utils/math.js.map +1 -1
  1451. package/build-module/utils/object.js +16 -0
  1452. package/build-module/utils/object.js.map +1 -1
  1453. package/build-module/utils/order-inserter-block-items.js +6 -2
  1454. package/build-module/utils/order-inserter-block-items.js.map +1 -1
  1455. package/build-module/utils/pasting.js +6 -2
  1456. package/build-module/utils/pasting.js.map +1 -1
  1457. package/build-module/utils/selection.js.map +1 -1
  1458. package/build-module/utils/sorting.js.map +1 -1
  1459. package/build-module/utils/transform-styles/index.js.map +1 -1
  1460. package/build-module/utils/use-notify-copy.js.map +1 -1
  1461. package/build-style/content-rtl.css +77 -86
  1462. package/build-style/content.css +77 -86
  1463. package/build-style/default-editor-styles-rtl.css +1 -1
  1464. package/build-style/default-editor-styles.css +1 -1
  1465. package/build-style/style-rtl.css +158 -242
  1466. package/build-style/style.css +158 -242
  1467. package/package.json +32 -33
  1468. package/src/components/alignment-control/ui.js +3 -1
  1469. package/src/components/block-bindings-toolbar-indicator/style.scss +2 -5
  1470. package/src/components/block-canvas/style.scss +1 -3
  1471. package/src/components/block-draggable/test/helpers.native.js +8 -8
  1472. package/src/components/block-edit/context.js +1 -0
  1473. package/src/components/block-edit/index.js +4 -0
  1474. package/src/components/block-inspector/index.js +7 -6
  1475. package/src/components/block-list/block.js +47 -35
  1476. package/src/components/block-list/block.native.js +3 -2
  1477. package/src/components/block-list/content.scss +46 -20
  1478. package/src/components/block-list/index.js +26 -10
  1479. package/src/components/block-list/index.native.js +1 -6
  1480. package/src/components/block-list/use-block-props/index.js +17 -5
  1481. package/src/components/block-list/use-block-props/use-block-refs.js +17 -57
  1482. package/src/components/block-list/use-block-props/use-focus-first-element.js +7 -3
  1483. package/src/components/block-list/use-block-props/use-is-hovered.js +11 -16
  1484. package/src/components/block-mover/index.native.js +3 -1
  1485. package/src/components/block-patterns-list/style.scss +1 -3
  1486. package/src/components/block-patterns-paging/index.js +4 -0
  1487. package/src/components/block-preview/style.scss +13 -15
  1488. package/src/components/block-rename/modal.js +17 -13
  1489. package/src/components/block-rename/rename-control.js +8 -1
  1490. package/src/components/block-settings-menu/block-settings-dropdown.js +1 -51
  1491. package/src/components/block-switcher/pattern-transformations-menu.js +3 -1
  1492. package/src/components/block-switcher/use-transformed-patterns.js +6 -2
  1493. package/src/components/block-switcher/utils.js +14 -5
  1494. package/src/components/block-toolbar/index.js +26 -22
  1495. package/src/components/block-toolbar/style.scss +8 -11
  1496. package/src/components/block-toolbar/use-has-block-toolbar.js +26 -19
  1497. package/src/components/block-tools/block-selection-button.js +55 -43
  1498. package/src/components/block-tools/index.js +3 -1
  1499. package/src/components/block-tools/use-show-block-tools.js +36 -51
  1500. package/src/components/block-tools/zoom-out-mode-inserters.js +5 -1
  1501. package/src/components/block-variation-picker/content.scss +22 -72
  1502. package/src/components/block-variation-picker/index.js +3 -2
  1503. package/src/components/block-variation-transforms/index.js +6 -2
  1504. package/src/components/button-block-appender/index.native.js +16 -1
  1505. package/src/components/default-block-appender/content.scss +1 -1
  1506. package/src/components/editor-styles/index.js +4 -2
  1507. package/src/components/floating-toolbar/index.native.js +5 -2
  1508. package/src/components/global-styles/background-panel.js +31 -29
  1509. package/src/components/global-styles/color-panel.js +3 -1
  1510. package/src/components/global-styles/dimensions-panel.js +18 -1
  1511. package/src/components/global-styles/hooks.js +2 -0
  1512. package/src/components/global-styles/style.scss +2 -8
  1513. package/src/components/global-styles/test/use-global-styles-output.js +8 -17
  1514. package/src/components/global-styles/test/utils.js +21 -0
  1515. package/src/components/global-styles/typography-panel.js +27 -23
  1516. package/src/components/global-styles/use-global-styles-output.js +216 -192
  1517. package/src/components/global-styles/utils.js +55 -0
  1518. package/src/components/iframe/index.js +20 -27
  1519. package/src/components/image-editor/cropper.js +11 -2
  1520. package/src/components/image-editor/index.js +0 -2
  1521. package/src/components/inner-blocks/index.js +14 -1
  1522. package/src/components/inserter/block-patterns-tab/index.js +32 -68
  1523. package/src/components/inserter/block-patterns-tab/pattern-category-preview-panel.js +9 -36
  1524. package/src/components/inserter/block-patterns-tab/pattern-category-previews.js +2 -2
  1525. package/src/components/inserter/block-types-tab.js +5 -0
  1526. package/src/components/inserter/category-tabs/index.js +74 -0
  1527. package/src/components/inserter/media-tab/index.js +1 -1
  1528. package/src/components/inserter/media-tab/media-panel.js +0 -22
  1529. package/src/components/inserter/media-tab/media-preview.js +15 -7
  1530. package/src/components/inserter/media-tab/media-tab.js +44 -83
  1531. package/src/components/inserter/menu.js +155 -122
  1532. package/src/components/inserter/style.scss +161 -217
  1533. package/src/components/inserter/tabs.js +12 -15
  1534. package/src/components/inspector-controls-tabs/styles-tab.js +1 -1
  1535. package/src/components/line-height-control/index.js +6 -2
  1536. package/src/components/link-control/search-item.js +9 -3
  1537. package/src/components/link-control/style.scss +10 -2
  1538. package/src/components/link-control/test/index.js +1 -1
  1539. package/src/components/list-view/block-select-button.js +73 -237
  1540. package/src/components/list-view/block.js +218 -28
  1541. package/src/components/list-view/index.js +1 -1
  1542. package/src/components/list-view/style.scss +20 -28
  1543. package/src/components/list-view/use-list-view-drop-zone.js +6 -1
  1544. package/src/components/list-view/utils.js +3 -1
  1545. package/src/components/media-placeholder/content.scss +0 -11
  1546. package/src/components/media-placeholder/index.js +3 -3
  1547. package/src/components/navigable-toolbar/index.js +3 -1
  1548. package/src/components/provider/block-refs-provider.js +3 -8
  1549. package/src/components/provider/test/use-block-sync.js +7 -0
  1550. package/src/components/provider/use-block-sync.js +3 -20
  1551. package/src/components/recursion-provider/index.js +2 -2
  1552. package/src/components/rich-text/README.md +4 -0
  1553. package/src/components/rich-text/content.js +26 -19
  1554. package/src/components/rich-text/event-listeners/before-input-rules.js +92 -0
  1555. package/src/components/rich-text/event-listeners/delete.js +53 -0
  1556. package/src/components/rich-text/event-listeners/enter.js +104 -0
  1557. package/src/components/rich-text/event-listeners/firefox-compat.js +31 -0
  1558. package/src/components/rich-text/event-listeners/index.js +56 -0
  1559. package/src/components/rich-text/event-listeners/input-events.js +13 -0
  1560. package/src/components/rich-text/event-listeners/input-rules.js +146 -0
  1561. package/src/components/rich-text/event-listeners/insert-replacement-text.js +28 -0
  1562. package/src/components/rich-text/event-listeners/paste-handler.js +169 -0
  1563. package/src/components/rich-text/event-listeners/remove-browser-shortcuts.js +24 -0
  1564. package/src/components/rich-text/event-listeners/shortcuts.js +13 -0
  1565. package/src/components/rich-text/event-listeners/undo-automatic-change.js +45 -0
  1566. package/src/components/rich-text/index.js +53 -36
  1567. package/src/components/rich-text/index.native.js +14 -1
  1568. package/src/components/rich-text/multiline.js +6 -2
  1569. package/src/components/rich-text/native/index.native.js +11 -0
  1570. package/src/components/rich-text/use-format-types.js +6 -2
  1571. package/src/components/segmented-text-control/index.js +63 -0
  1572. package/src/components/{writing-mode-control → segmented-text-control}/style.scss +2 -5
  1573. package/src/components/spacing-sizes-control/input-controls/spacing-input-control.js +16 -1
  1574. package/src/components/text-alignment-control/index.js +91 -0
  1575. package/src/components/text-alignment-control/stories/index.story.js +39 -0
  1576. package/src/components/text-decoration-control/index.js +20 -33
  1577. package/src/components/text-transform-control/index.js +17 -30
  1578. package/src/components/use-block-commands/index.js +46 -28
  1579. package/src/components/use-block-display-information/index.js +9 -3
  1580. package/src/components/use-on-block-drop/index.js +3 -1
  1581. package/src/components/use-paste-styles/index.js +2 -0
  1582. package/src/components/writing-flow/use-drag-selection.js +3 -1
  1583. package/src/components/writing-flow/use-tab-nav.js +3 -1
  1584. package/src/components/writing-mode-control/index.js +15 -28
  1585. package/src/hooks/background.js +2 -2
  1586. package/src/hooks/block-renaming.js +0 -33
  1587. package/src/hooks/content-lock-ui.js +5 -7
  1588. package/src/hooks/duotone.js +3 -1
  1589. package/src/hooks/index.js +5 -2
  1590. package/src/hooks/layout.js +57 -25
  1591. package/src/hooks/supports.js +24 -0
  1592. package/src/hooks/test/text-align.js +114 -0
  1593. package/src/hooks/test/use-typography-props.js +3 -1
  1594. package/src/hooks/text-align.js +178 -0
  1595. package/src/hooks/typography.js +2 -0
  1596. package/src/hooks/use-bindings-attributes.js +90 -161
  1597. package/src/hooks/use-typography-props.js +4 -1
  1598. package/src/hooks/use-zoom-out.js +25 -15
  1599. package/src/hooks/utils.js +57 -5
  1600. package/src/layouts/definitions.js +6 -6
  1601. package/src/layouts/grid.js +106 -47
  1602. package/src/private-apis.js +4 -2
  1603. package/src/store/actions.js +52 -12
  1604. package/src/store/private-actions.js +6 -3
  1605. package/src/store/private-selectors.js +155 -39
  1606. package/src/store/reducer.js +13 -23
  1607. package/src/store/selectors.js +162 -93
  1608. package/src/style.scss +1 -2
  1609. package/src/utils/object.js +16 -0
  1610. package/src/utils/order-inserter-block-items.js +6 -2
  1611. package/src/utils/pasting.js +6 -2
  1612. package/tsconfig.tsbuildinfo +1 -1
  1613. package/build/components/block-list/use-block-props/use-block-moving-mode-class-names.js +0 -54
  1614. package/build/components/block-list/use-block-props/use-block-moving-mode-class-names.js.map +0 -1
  1615. package/build/components/rich-text/use-before-input-rules.js +0 -98
  1616. package/build/components/rich-text/use-before-input-rules.js.map +0 -1
  1617. package/build/components/rich-text/use-delete.js +0 -64
  1618. package/build/components/rich-text/use-delete.js.map +0 -1
  1619. package/build/components/rich-text/use-enter.js +0 -109
  1620. package/build/components/rich-text/use-enter.js.map +0 -1
  1621. package/build/components/rich-text/use-firefox-compat.js +0 -44
  1622. package/build/components/rich-text/use-firefox-compat.js.map +0 -1
  1623. package/build/components/rich-text/use-input-events.js +0 -25
  1624. package/build/components/rich-text/use-input-events.js.map +0 -1
  1625. package/build/components/rich-text/use-input-rules.js +0 -139
  1626. package/build/components/rich-text/use-input-rules.js.map +0 -1
  1627. package/build/components/rich-text/use-insert-replacement-text.js +0 -38
  1628. package/build/components/rich-text/use-insert-replacement-text.js.map +0 -1
  1629. package/build/components/rich-text/use-paste-handler.js +0 -158
  1630. package/build/components/rich-text/use-paste-handler.js.map +0 -1
  1631. package/build/components/rich-text/use-remove-browser-shortcuts.js +0 -32
  1632. package/build/components/rich-text/use-remove-browser-shortcuts.js.map +0 -1
  1633. package/build/components/rich-text/use-shortcuts.js +0 -25
  1634. package/build/components/rich-text/use-shortcuts.js.map +0 -1
  1635. package/build/components/rich-text/use-undo-automatic-change.js +0 -53
  1636. package/build/components/rich-text/use-undo-automatic-change.js.map +0 -1
  1637. package/build-module/components/block-list/use-block-props/use-block-moving-mode-class-names.js +0 -47
  1638. package/build-module/components/block-list/use-block-props/use-block-moving-mode-class-names.js.map +0 -1
  1639. package/build-module/components/rich-text/use-before-input-rules.js +0 -92
  1640. package/build-module/components/rich-text/use-before-input-rules.js.map +0 -1
  1641. package/build-module/components/rich-text/use-delete.js +0 -57
  1642. package/build-module/components/rich-text/use-delete.js.map +0 -1
  1643. package/build-module/components/rich-text/use-enter.js +0 -102
  1644. package/build-module/components/rich-text/use-enter.js.map +0 -1
  1645. package/build-module/components/rich-text/use-firefox-compat.js +0 -37
  1646. package/build-module/components/rich-text/use-firefox-compat.js.map +0 -1
  1647. package/build-module/components/rich-text/use-input-events.js +0 -18
  1648. package/build-module/components/rich-text/use-input-events.js.map +0 -1
  1649. package/build-module/components/rich-text/use-input-rules.js +0 -132
  1650. package/build-module/components/rich-text/use-input-rules.js.map +0 -1
  1651. package/build-module/components/rich-text/use-insert-replacement-text.js +0 -32
  1652. package/build-module/components/rich-text/use-insert-replacement-text.js.map +0 -1
  1653. package/build-module/components/rich-text/use-paste-handler.js +0 -152
  1654. package/build-module/components/rich-text/use-paste-handler.js.map +0 -1
  1655. package/build-module/components/rich-text/use-remove-browser-shortcuts.js +0 -26
  1656. package/build-module/components/rich-text/use-remove-browser-shortcuts.js.map +0 -1
  1657. package/build-module/components/rich-text/use-shortcuts.js +0 -18
  1658. package/build-module/components/rich-text/use-shortcuts.js.map +0 -1
  1659. package/build-module/components/rich-text/use-undo-automatic-change.js +0 -46
  1660. package/build-module/components/rich-text/use-undo-automatic-change.js.map +0 -1
  1661. package/src/components/block-list/use-block-props/use-block-moving-mode-class-names.js +0 -55
  1662. package/src/components/rich-text/use-before-input-rules.js +0 -99
  1663. package/src/components/rich-text/use-delete.js +0 -59
  1664. package/src/components/rich-text/use-enter.js +0 -110
  1665. package/src/components/rich-text/use-firefox-compat.js +0 -39
  1666. package/src/components/rich-text/use-input-events.js +0 -19
  1667. package/src/components/rich-text/use-input-rules.js +0 -150
  1668. package/src/components/rich-text/use-insert-replacement-text.js +0 -31
  1669. package/src/components/rich-text/use-paste-handler.js +0 -180
  1670. package/src/components/rich-text/use-remove-browser-shortcuts.js +0 -29
  1671. package/src/components/rich-text/use-shortcuts.js +0 -19
  1672. package/src/components/rich-text/use-undo-automatic-change.js +0 -50
  1673. package/src/components/text-decoration-control/style.scss +0 -18
  1674. package/src/components/text-transform-control/style.scss +0 -18
@@ -1 +1 @@
1
- {"version":3,"names":["useContext","useLayoutEffect","useMemo","useRef","useState","useRefEffect","BlockRefs","useBlockRefProvider","clientId","refs","callbacks","ref","set","delete","element","current","forEach","id","setElement","useBlockRef","freshClientId","entries","useBlockElement","__unstableUseBlockRef","__unstableUseBlockElement"],"sources":["@wordpress/block-editor/src/components/block-list/use-block-props/use-block-refs.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tuseContext,\n\tuseLayoutEffect,\n\tuseMemo,\n\tuseRef,\n\tuseState,\n} from '@wordpress/element';\nimport { useRefEffect } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { BlockRefs } from '../../provider/block-refs-provider';\n\n/** @typedef {import('@wordpress/element').RefCallback} RefCallback */\n/** @typedef {import('@wordpress/element').RefObject} RefObject */\n\n/**\n * Provides a ref to the BlockRefs context.\n *\n * @param {string} clientId The client ID of the element ref.\n *\n * @return {RefCallback} Ref callback.\n */\nexport function useBlockRefProvider( clientId ) {\n\tconst { refs, callbacks } = useContext( BlockRefs );\n\tconst ref = useRef();\n\tuseLayoutEffect( () => {\n\t\trefs.set( ref, clientId );\n\t\treturn () => {\n\t\t\trefs.delete( ref );\n\t\t};\n\t}, [ clientId ] );\n\treturn useRefEffect(\n\t\t( element ) => {\n\t\t\t// Update the ref in the provider.\n\t\t\tref.current = element;\n\t\t\t// Call any update functions.\n\t\t\tcallbacks.forEach( ( id, setElement ) => {\n\t\t\t\tif ( clientId === id ) {\n\t\t\t\t\tsetElement( element );\n\t\t\t\t}\n\t\t\t} );\n\t\t},\n\t\t[ clientId ]\n\t);\n}\n\n/**\n * Gets a ref pointing to the current block element. Continues to return a\n * stable ref even if the block client ID changes.\n *\n * @param {string} clientId The client ID to get a ref for.\n *\n * @return {RefObject} A ref containing the element.\n */\nfunction useBlockRef( clientId ) {\n\tconst { refs } = useContext( BlockRefs );\n\tconst freshClientId = useRef();\n\tfreshClientId.current = clientId;\n\t// Always return an object, even if no ref exists for a given client ID, so\n\t// that `current` works at a later point.\n\treturn useMemo(\n\t\t() => ( {\n\t\t\tget current() {\n\t\t\t\tlet element = null;\n\n\t\t\t\t// Multiple refs may be created for a single block. Find the\n\t\t\t\t// first that has an element set.\n\t\t\t\tfor ( const [ ref, id ] of refs.entries() ) {\n\t\t\t\t\tif ( id === freshClientId.current && ref.current ) {\n\t\t\t\t\t\telement = ref.current;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\treturn element;\n\t\t\t},\n\t\t} ),\n\t\t[]\n\t);\n}\n\n/**\n * Return the element for a given client ID. Updates whenever the element\n * changes, becomes available, or disappears.\n *\n * @param {string} clientId The client ID to an element for.\n *\n * @return {Element|null} The block's wrapper element.\n */\nfunction useBlockElement( clientId ) {\n\tconst { callbacks } = useContext( BlockRefs );\n\tconst ref = useBlockRef( clientId );\n\tconst [ element, setElement ] = useState( null );\n\n\tuseLayoutEffect( () => {\n\t\tif ( ! clientId ) {\n\t\t\treturn;\n\t\t}\n\n\t\tcallbacks.set( setElement, clientId );\n\t\treturn () => {\n\t\t\tcallbacks.delete( setElement );\n\t\t};\n\t}, [ clientId ] );\n\n\treturn ref.current || element;\n}\n\nexport { useBlockRef as __unstableUseBlockRef };\nexport { useBlockElement as __unstableUseBlockElement };\n"],"mappings":"AAAA;AACA;AACA;AACA,SACCA,UAAU,EACVC,eAAe,EACfC,OAAO,EACPC,MAAM,EACNC,QAAQ,QACF,oBAAoB;AAC3B,SAASC,YAAY,QAAQ,oBAAoB;;AAEjD;AACA;AACA;AACA,SAASC,SAAS,QAAQ,oCAAoC;;AAE9D;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,mBAAmBA,CAAEC,QAAQ,EAAG;EAC/C,MAAM;IAAEC,IAAI;IAAEC;EAAU,CAAC,GAAGV,UAAU,CAAEM,SAAU,CAAC;EACnD,MAAMK,GAAG,GAAGR,MAAM,CAAC,CAAC;EACpBF,eAAe,CAAE,MAAM;IACtBQ,IAAI,CAACG,GAAG,CAAED,GAAG,EAAEH,QAAS,CAAC;IACzB,OAAO,MAAM;MACZC,IAAI,CAACI,MAAM,CAAEF,GAAI,CAAC;IACnB,CAAC;EACF,CAAC,EAAE,CAAEH,QAAQ,CAAG,CAAC;EACjB,OAAOH,YAAY,CAChBS,OAAO,IAAM;IACd;IACAH,GAAG,CAACI,OAAO,GAAGD,OAAO;IACrB;IACAJ,SAAS,CAACM,OAAO,CAAE,CAAEC,EAAE,EAAEC,UAAU,KAAM;MACxC,IAAKV,QAAQ,KAAKS,EAAE,EAAG;QACtBC,UAAU,CAAEJ,OAAQ,CAAC;MACtB;IACD,CAAE,CAAC;EACJ,CAAC,EACD,CAAEN,QAAQ,CACX,CAAC;AACF;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASW,WAAWA,CAAEX,QAAQ,EAAG;EAChC,MAAM;IAAEC;EAAK,CAAC,GAAGT,UAAU,CAAEM,SAAU,CAAC;EACxC,MAAMc,aAAa,GAAGjB,MAAM,CAAC,CAAC;EAC9BiB,aAAa,CAACL,OAAO,GAAGP,QAAQ;EAChC;EACA;EACA,OAAON,OAAO,CACb,OAAQ;IACP,IAAIa,OAAOA,CAAA,EAAG;MACb,IAAID,OAAO,GAAG,IAAI;;MAElB;MACA;MACA,KAAM,MAAM,CAAEH,GAAG,EAAEM,EAAE,CAAE,IAAIR,IAAI,CAACY,OAAO,CAAC,CAAC,EAAG;QAC3C,IAAKJ,EAAE,KAAKG,aAAa,CAACL,OAAO,IAAIJ,GAAG,CAACI,OAAO,EAAG;UAClDD,OAAO,GAAGH,GAAG,CAACI,OAAO;QACtB;MACD;MAEA,OAAOD,OAAO;IACf;EACD,CAAC,CAAE,EACH,EACD,CAAC;AACF;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASQ,eAAeA,CAAEd,QAAQ,EAAG;EACpC,MAAM;IAAEE;EAAU,CAAC,GAAGV,UAAU,CAAEM,SAAU,CAAC;EAC7C,MAAMK,GAAG,GAAGQ,WAAW,CAAEX,QAAS,CAAC;EACnC,MAAM,CAAEM,OAAO,EAAEI,UAAU,CAAE,GAAGd,QAAQ,CAAE,IAAK,CAAC;EAEhDH,eAAe,CAAE,MAAM;IACtB,IAAK,CAAEO,QAAQ,EAAG;MACjB;IACD;IAEAE,SAAS,CAACE,GAAG,CAAEM,UAAU,EAAEV,QAAS,CAAC;IACrC,OAAO,MAAM;MACZE,SAAS,CAACG,MAAM,CAAEK,UAAW,CAAC;IAC/B,CAAC;EACF,CAAC,EAAE,CAAEV,QAAQ,CAAG,CAAC;EAEjB,OAAOG,GAAG,CAACI,OAAO,IAAID,OAAO;AAC9B;AAEA,SAASK,WAAW,IAAII,qBAAqB;AAC7C,SAASD,eAAe,IAAIE,yBAAyB"}
1
+ {"version":3,"names":["useContext","useMemo","useRef","useRefEffect","useObservableValue","BlockRefs","useBlockRefProvider","clientId","refsMap","element","set","delete","useBlockRef","latestClientId","current","_refsMap$get","get","useBlockElement","_useObservableValue","__unstableUseBlockRef","__unstableUseBlockElement"],"sources":["@wordpress/block-editor/src/components/block-list/use-block-props/use-block-refs.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useContext, useMemo, useRef } from '@wordpress/element';\nimport { useRefEffect, useObservableValue } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { BlockRefs } from '../../provider/block-refs-provider';\n\n/** @typedef {import('@wordpress/element').RefCallback} RefCallback */\n/** @typedef {import('@wordpress/element').RefObject} RefObject */\n\n/**\n * Provides a ref to the BlockRefs context.\n *\n * @param {string} clientId The client ID of the element ref.\n *\n * @return {RefCallback} Ref callback.\n */\nexport function useBlockRefProvider( clientId ) {\n\tconst { refsMap } = useContext( BlockRefs );\n\treturn useRefEffect(\n\t\t( element ) => {\n\t\t\trefsMap.set( clientId, element );\n\t\t\treturn () => refsMap.delete( clientId );\n\t\t},\n\t\t[ clientId ]\n\t);\n}\n\n/**\n * Gets a ref pointing to the current block element. Continues to return the same\n * stable ref object even if the `clientId` argument changes. This hook is not\n * reactive, i.e., it won't trigger a rerender of the calling component if the\n * ref value changes. For reactive use cases there is the `useBlockElement` hook.\n *\n * @param {string} clientId The client ID to get a ref for.\n *\n * @return {RefObject} A ref containing the element.\n */\nfunction useBlockRef( clientId ) {\n\tconst { refsMap } = useContext( BlockRefs );\n\tconst latestClientId = useRef();\n\tlatestClientId.current = clientId;\n\n\t// Always return an object, even if no ref exists for a given client ID, so\n\t// that `current` works at a later point.\n\treturn useMemo(\n\t\t() => ( {\n\t\t\tget current() {\n\t\t\t\treturn refsMap.get( latestClientId.current ) ?? null;\n\t\t\t},\n\t\t} ),\n\t\t[ refsMap ]\n\t);\n}\n\n/**\n * Return the element for a given client ID. Updates whenever the element\n * changes, becomes available, or disappears.\n *\n * @param {string} clientId The client ID to an element for.\n *\n * @return {Element|null} The block's wrapper element.\n */\nfunction useBlockElement( clientId ) {\n\tconst { refsMap } = useContext( BlockRefs );\n\treturn useObservableValue( refsMap, clientId ) ?? null;\n}\n\nexport { useBlockRef as __unstableUseBlockRef };\nexport { useBlockElement as __unstableUseBlockElement };\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,UAAU,EAAEC,OAAO,EAAEC,MAAM,QAAQ,oBAAoB;AAChE,SAASC,YAAY,EAAEC,kBAAkB,QAAQ,oBAAoB;;AAErE;AACA;AACA;AACA,SAASC,SAAS,QAAQ,oCAAoC;;AAE9D;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,mBAAmBA,CAAEC,QAAQ,EAAG;EAC/C,MAAM;IAAEC;EAAQ,CAAC,GAAGR,UAAU,CAAEK,SAAU,CAAC;EAC3C,OAAOF,YAAY,CAChBM,OAAO,IAAM;IACdD,OAAO,CAACE,GAAG,CAAEH,QAAQ,EAAEE,OAAQ,CAAC;IAChC,OAAO,MAAMD,OAAO,CAACG,MAAM,CAAEJ,QAAS,CAAC;EACxC,CAAC,EACD,CAAEA,QAAQ,CACX,CAAC;AACF;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASK,WAAWA,CAAEL,QAAQ,EAAG;EAChC,MAAM;IAAEC;EAAQ,CAAC,GAAGR,UAAU,CAAEK,SAAU,CAAC;EAC3C,MAAMQ,cAAc,GAAGX,MAAM,CAAC,CAAC;EAC/BW,cAAc,CAACC,OAAO,GAAGP,QAAQ;;EAEjC;EACA;EACA,OAAON,OAAO,CACb,OAAQ;IACP,IAAIa,OAAOA,CAAA,EAAG;MAAA,IAAAC,YAAA;MACb,QAAAA,YAAA,GAAOP,OAAO,CAACQ,GAAG,CAAEH,cAAc,CAACC,OAAQ,CAAC,cAAAC,YAAA,cAAAA,YAAA,GAAI,IAAI;IACrD;EACD,CAAC,CAAE,EACH,CAAEP,OAAO,CACV,CAAC;AACF;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASS,eAAeA,CAAEV,QAAQ,EAAG;EAAA,IAAAW,mBAAA;EACpC,MAAM;IAAEV;EAAQ,CAAC,GAAGR,UAAU,CAAEK,SAAU,CAAC;EAC3C,QAAAa,mBAAA,GAAOd,kBAAkB,CAAEI,OAAO,EAAED,QAAS,CAAC,cAAAW,mBAAA,cAAAA,mBAAA,GAAI,IAAI;AACvD;AAEA,SAASN,WAAW,IAAIO,qBAAqB;AAC7C,SAASF,eAAe,IAAIG,yBAAyB","ignoreList":[]}
@@ -28,11 +28,12 @@ export function useFocusFirstElement({
28
28
  const ref = useRef();
29
29
  const {
30
30
  isBlockSelected,
31
- isMultiSelecting
31
+ isMultiSelecting,
32
+ __unstableGetEditorMode
32
33
  } = useSelect(blockEditorStore);
33
34
  useEffect(() => {
34
35
  // Check if the block is still selected at the time this effect runs.
35
- if (!isBlockSelected(clientId) || isMultiSelecting()) {
36
+ if (!isBlockSelected(clientId) || isMultiSelecting() || __unstableGetEditorMode() === 'zoom-out') {
36
37
  return;
37
38
  }
38
39
  if (initialPosition === undefined || initialPosition === null) {
@@ -1 +1 @@
1
- {"version":3,"names":["useEffect","useRef","focus","isFormElement","isTextField","placeCaretAtHorizontalEdge","useSelect","isInsideRootBlock","store","blockEditorStore","useFocusFirstElement","clientId","initialPosition","ref","isBlockSelected","isMultiSelecting","undefined","current","ownerDocument","activeElement","textInputs","tabbable","find","filter","node","isReverse","target","length","getAttribute","focusElement","findNext"],"sources":["@wordpress/block-editor/src/components/block-list/use-block-props/use-focus-first-element.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEffect, useRef } from '@wordpress/element';\nimport {\n\tfocus,\n\tisFormElement,\n\tisTextField,\n\tplaceCaretAtHorizontalEdge,\n} from '@wordpress/dom';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { isInsideRootBlock } from '../../../utils/dom';\nimport { store as blockEditorStore } from '../../../store';\n\n/** @typedef {import('@wordpress/element').RefObject} RefObject */\n\n/**\n * Transitions focus to the block or inner tabbable when the block becomes\n * selected and an initial position is set.\n *\n * @param {string} clientId Block client ID.\n *\n * @return {RefObject} React ref with the block element.\n */\nexport function useFocusFirstElement( { clientId, initialPosition } ) {\n\tconst ref = useRef();\n\tconst { isBlockSelected, isMultiSelecting } = useSelect( blockEditorStore );\n\n\tuseEffect( () => {\n\t\t// Check if the block is still selected at the time this effect runs.\n\t\tif ( ! isBlockSelected( clientId ) || isMultiSelecting() ) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( initialPosition === undefined || initialPosition === null ) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( ! ref.current ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst { ownerDocument } = ref.current;\n\n\t\t// Do not focus the block if it already contains the active element.\n\t\tif ( isInsideRootBlock( ref.current, ownerDocument.activeElement ) ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Find all tabbables within node.\n\t\tconst textInputs = focus.tabbable\n\t\t\t.find( ref.current )\n\t\t\t.filter( ( node ) => isTextField( node ) );\n\n\t\t// If reversed (e.g. merge via backspace), use the last in the set of\n\t\t// tabbables.\n\t\tconst isReverse = -1 === initialPosition;\n\t\tconst target =\n\t\t\ttextInputs[ isReverse ? textInputs.length - 1 : 0 ] || ref.current;\n\n\t\tif ( ! isInsideRootBlock( ref.current, target ) ) {\n\t\t\tref.current.focus();\n\t\t\treturn;\n\t\t}\n\n\t\t// Check to see if element is focussable before a generic caret insert.\n\t\tif ( ! ref.current.getAttribute( 'contenteditable' ) ) {\n\t\t\tconst focusElement = focus.tabbable.findNext( ref.current );\n\t\t\t// Make sure focusElement is valid, contained in the same block, and a form field.\n\t\t\tif (\n\t\t\t\tfocusElement &&\n\t\t\t\tisInsideRootBlock( ref.current, focusElement ) &&\n\t\t\t\tisFormElement( focusElement )\n\t\t\t) {\n\t\t\t\tfocusElement.focus();\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\n\t\tplaceCaretAtHorizontalEdge( target, isReverse );\n\t}, [ initialPosition, clientId ] );\n\n\treturn ref;\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,SAAS,EAAEC,MAAM,QAAQ,oBAAoB;AACtD,SACCC,KAAK,EACLC,aAAa,EACbC,WAAW,EACXC,0BAA0B,QACpB,gBAAgB;AACvB,SAASC,SAAS,QAAQ,iBAAiB;;AAE3C;AACA;AACA;AACA,SAASC,iBAAiB,QAAQ,oBAAoB;AACtD,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,gBAAgB;;AAE1D;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,oBAAoBA,CAAE;EAAEC,QAAQ;EAAEC;AAAgB,CAAC,EAAG;EACrE,MAAMC,GAAG,GAAGZ,MAAM,CAAC,CAAC;EACpB,MAAM;IAAEa,eAAe;IAAEC;EAAiB,CAAC,GAAGT,SAAS,CAAEG,gBAAiB,CAAC;EAE3ET,SAAS,CAAE,MAAM;IAChB;IACA,IAAK,CAAEc,eAAe,CAAEH,QAAS,CAAC,IAAII,gBAAgB,CAAC,CAAC,EAAG;MAC1D;IACD;IAEA,IAAKH,eAAe,KAAKI,SAAS,IAAIJ,eAAe,KAAK,IAAI,EAAG;MAChE;IACD;IAEA,IAAK,CAAEC,GAAG,CAACI,OAAO,EAAG;MACpB;IACD;IAEA,MAAM;MAAEC;IAAc,CAAC,GAAGL,GAAG,CAACI,OAAO;;IAErC;IACA,IAAKV,iBAAiB,CAAEM,GAAG,CAACI,OAAO,EAAEC,aAAa,CAACC,aAAc,CAAC,EAAG;MACpE;IACD;;IAEA;IACA,MAAMC,UAAU,GAAGlB,KAAK,CAACmB,QAAQ,CAC/BC,IAAI,CAAET,GAAG,CAACI,OAAQ,CAAC,CACnBM,MAAM,CAAIC,IAAI,IAAMpB,WAAW,CAAEoB,IAAK,CAAE,CAAC;;IAE3C;IACA;IACA,MAAMC,SAAS,GAAG,CAAC,CAAC,KAAKb,eAAe;IACxC,MAAMc,MAAM,GACXN,UAAU,CAAEK,SAAS,GAAGL,UAAU,CAACO,MAAM,GAAG,CAAC,GAAG,CAAC,CAAE,IAAId,GAAG,CAACI,OAAO;IAEnE,IAAK,CAAEV,iBAAiB,CAAEM,GAAG,CAACI,OAAO,EAAES,MAAO,CAAC,EAAG;MACjDb,GAAG,CAACI,OAAO,CAACf,KAAK,CAAC,CAAC;MACnB;IACD;;IAEA;IACA,IAAK,CAAEW,GAAG,CAACI,OAAO,CAACW,YAAY,CAAE,iBAAkB,CAAC,EAAG;MACtD,MAAMC,YAAY,GAAG3B,KAAK,CAACmB,QAAQ,CAACS,QAAQ,CAAEjB,GAAG,CAACI,OAAQ,CAAC;MAC3D;MACA,IACCY,YAAY,IACZtB,iBAAiB,CAAEM,GAAG,CAACI,OAAO,EAAEY,YAAa,CAAC,IAC9C1B,aAAa,CAAE0B,YAAa,CAAC,EAC5B;QACDA,YAAY,CAAC3B,KAAK,CAAC,CAAC;QACpB;MACD;IACD;IAEAG,0BAA0B,CAAEqB,MAAM,EAAED,SAAU,CAAC;EAChD,CAAC,EAAE,CAAEb,eAAe,EAAED,QAAQ,CAAG,CAAC;EAElC,OAAOE,GAAG;AACX"}
1
+ {"version":3,"names":["useEffect","useRef","focus","isFormElement","isTextField","placeCaretAtHorizontalEdge","useSelect","isInsideRootBlock","store","blockEditorStore","useFocusFirstElement","clientId","initialPosition","ref","isBlockSelected","isMultiSelecting","__unstableGetEditorMode","undefined","current","ownerDocument","activeElement","textInputs","tabbable","find","filter","node","isReverse","target","length","getAttribute","focusElement","findNext"],"sources":["@wordpress/block-editor/src/components/block-list/use-block-props/use-focus-first-element.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEffect, useRef } from '@wordpress/element';\nimport {\n\tfocus,\n\tisFormElement,\n\tisTextField,\n\tplaceCaretAtHorizontalEdge,\n} from '@wordpress/dom';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { isInsideRootBlock } from '../../../utils/dom';\nimport { store as blockEditorStore } from '../../../store';\n\n/** @typedef {import('@wordpress/element').RefObject} RefObject */\n\n/**\n * Transitions focus to the block or inner tabbable when the block becomes\n * selected and an initial position is set.\n *\n * @param {string} clientId Block client ID.\n *\n * @return {RefObject} React ref with the block element.\n */\nexport function useFocusFirstElement( { clientId, initialPosition } ) {\n\tconst ref = useRef();\n\tconst { isBlockSelected, isMultiSelecting, __unstableGetEditorMode } =\n\t\tuseSelect( blockEditorStore );\n\n\tuseEffect( () => {\n\t\t// Check if the block is still selected at the time this effect runs.\n\t\tif (\n\t\t\t! isBlockSelected( clientId ) ||\n\t\t\tisMultiSelecting() ||\n\t\t\t__unstableGetEditorMode() === 'zoom-out'\n\t\t) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( initialPosition === undefined || initialPosition === null ) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( ! ref.current ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst { ownerDocument } = ref.current;\n\n\t\t// Do not focus the block if it already contains the active element.\n\t\tif ( isInsideRootBlock( ref.current, ownerDocument.activeElement ) ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Find all tabbables within node.\n\t\tconst textInputs = focus.tabbable\n\t\t\t.find( ref.current )\n\t\t\t.filter( ( node ) => isTextField( node ) );\n\n\t\t// If reversed (e.g. merge via backspace), use the last in the set of\n\t\t// tabbables.\n\t\tconst isReverse = -1 === initialPosition;\n\t\tconst target =\n\t\t\ttextInputs[ isReverse ? textInputs.length - 1 : 0 ] || ref.current;\n\n\t\tif ( ! isInsideRootBlock( ref.current, target ) ) {\n\t\t\tref.current.focus();\n\t\t\treturn;\n\t\t}\n\n\t\t// Check to see if element is focussable before a generic caret insert.\n\t\tif ( ! ref.current.getAttribute( 'contenteditable' ) ) {\n\t\t\tconst focusElement = focus.tabbable.findNext( ref.current );\n\t\t\t// Make sure focusElement is valid, contained in the same block, and a form field.\n\t\t\tif (\n\t\t\t\tfocusElement &&\n\t\t\t\tisInsideRootBlock( ref.current, focusElement ) &&\n\t\t\t\tisFormElement( focusElement )\n\t\t\t) {\n\t\t\t\tfocusElement.focus();\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t\tplaceCaretAtHorizontalEdge( target, isReverse );\n\t}, [ initialPosition, clientId ] );\n\n\treturn ref;\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,SAAS,EAAEC,MAAM,QAAQ,oBAAoB;AACtD,SACCC,KAAK,EACLC,aAAa,EACbC,WAAW,EACXC,0BAA0B,QACpB,gBAAgB;AACvB,SAASC,SAAS,QAAQ,iBAAiB;;AAE3C;AACA;AACA;AACA,SAASC,iBAAiB,QAAQ,oBAAoB;AACtD,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,gBAAgB;;AAE1D;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,oBAAoBA,CAAE;EAAEC,QAAQ;EAAEC;AAAgB,CAAC,EAAG;EACrE,MAAMC,GAAG,GAAGZ,MAAM,CAAC,CAAC;EACpB,MAAM;IAAEa,eAAe;IAAEC,gBAAgB;IAAEC;EAAwB,CAAC,GACnEV,SAAS,CAAEG,gBAAiB,CAAC;EAE9BT,SAAS,CAAE,MAAM;IAChB;IACA,IACC,CAAEc,eAAe,CAAEH,QAAS,CAAC,IAC7BI,gBAAgB,CAAC,CAAC,IAClBC,uBAAuB,CAAC,CAAC,KAAK,UAAU,EACvC;MACD;IACD;IAEA,IAAKJ,eAAe,KAAKK,SAAS,IAAIL,eAAe,KAAK,IAAI,EAAG;MAChE;IACD;IAEA,IAAK,CAAEC,GAAG,CAACK,OAAO,EAAG;MACpB;IACD;IAEA,MAAM;MAAEC;IAAc,CAAC,GAAGN,GAAG,CAACK,OAAO;;IAErC;IACA,IAAKX,iBAAiB,CAAEM,GAAG,CAACK,OAAO,EAAEC,aAAa,CAACC,aAAc,CAAC,EAAG;MACpE;IACD;;IAEA;IACA,MAAMC,UAAU,GAAGnB,KAAK,CAACoB,QAAQ,CAC/BC,IAAI,CAAEV,GAAG,CAACK,OAAQ,CAAC,CACnBM,MAAM,CAAIC,IAAI,IAAMrB,WAAW,CAAEqB,IAAK,CAAE,CAAC;;IAE3C;IACA;IACA,MAAMC,SAAS,GAAG,CAAC,CAAC,KAAKd,eAAe;IACxC,MAAMe,MAAM,GACXN,UAAU,CAAEK,SAAS,GAAGL,UAAU,CAACO,MAAM,GAAG,CAAC,GAAG,CAAC,CAAE,IAAIf,GAAG,CAACK,OAAO;IAEnE,IAAK,CAAEX,iBAAiB,CAAEM,GAAG,CAACK,OAAO,EAAES,MAAO,CAAC,EAAG;MACjDd,GAAG,CAACK,OAAO,CAAChB,KAAK,CAAC,CAAC;MACnB;IACD;;IAEA;IACA,IAAK,CAAEW,GAAG,CAACK,OAAO,CAACW,YAAY,CAAE,iBAAkB,CAAC,EAAG;MACtD,MAAMC,YAAY,GAAG5B,KAAK,CAACoB,QAAQ,CAACS,QAAQ,CAAElB,GAAG,CAACK,OAAQ,CAAC;MAC3D;MACA,IACCY,YAAY,IACZvB,iBAAiB,CAAEM,GAAG,CAACK,OAAO,EAAEY,YAAa,CAAC,IAC9C3B,aAAa,CAAE2B,YAAa,CAAC,EAC5B;QACDA,YAAY,CAAC5B,KAAK,CAAC,CAAC;QACpB;MACD;IACD;IACAG,0BAA0B,CAAEsB,MAAM,EAAED,SAAU,CAAC;EAChD,CAAC,EAAE,CAAEd,eAAe,EAAED,QAAQ,CAAG,CAAC;EAElC,OAAOE,GAAG;AACX","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["useSelect","useDispatch","useRefEffect","isInsideRootBlock","store","blockEditorStore","useFocusHandler","clientId","isBlockSelected","selectBlock","selectionChange","node","onFocus","event","parentElement","closest","target","isContentEditable","addEventListener","removeEventListener"],"sources":["@wordpress/block-editor/src/components/block-list/use-block-props/use-focus-handler.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useRefEffect } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { isInsideRootBlock } from '../../../utils/dom';\nimport { store as blockEditorStore } from '../../../store';\n\n/**\n * Selects the block if it receives focus.\n *\n * @param {string} clientId Block client ID.\n */\nexport function useFocusHandler( clientId ) {\n\tconst { isBlockSelected } = useSelect( blockEditorStore );\n\tconst { selectBlock, selectionChange } = useDispatch( blockEditorStore );\n\n\treturn useRefEffect(\n\t\t( node ) => {\n\t\t\t/**\n\t\t\t * Marks the block as selected when focused and not already\n\t\t\t * selected. This specifically handles the case where block does not\n\t\t\t * set focus on its own (via `setFocus`), typically if there is no\n\t\t\t * focusable input in the block.\n\t\t\t *\n\t\t\t * @param {FocusEvent} event Focus event.\n\t\t\t */\n\t\t\tfunction onFocus( event ) {\n\t\t\t\t// When the whole editor is editable, let writing flow handle\n\t\t\t\t// selection.\n\t\t\t\tif (\n\t\t\t\t\tnode.parentElement.closest( '[contenteditable=\"true\"]' )\n\t\t\t\t) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\t// Check synchronously because a non-selected block might be\n\t\t\t\t// getting data through `useSelect` asynchronously.\n\t\t\t\tif ( isBlockSelected( clientId ) ) {\n\t\t\t\t\t// Potentially change selection away from rich text.\n\t\t\t\t\tif ( ! event.target.isContentEditable ) {\n\t\t\t\t\t\tselectionChange( clientId );\n\t\t\t\t\t}\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\t// If an inner block is focussed, that block is resposible for\n\t\t\t\t// setting the selected block.\n\t\t\t\tif ( ! isInsideRootBlock( node, event.target ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tselectBlock( clientId );\n\t\t\t}\n\n\t\t\tnode.addEventListener( 'focusin', onFocus );\n\n\t\t\treturn () => {\n\t\t\t\tnode.removeEventListener( 'focusin', onFocus );\n\t\t\t};\n\t\t},\n\t\t[ isBlockSelected, selectBlock ]\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,SAAS,EAAEC,WAAW,QAAQ,iBAAiB;AACxD,SAASC,YAAY,QAAQ,oBAAoB;;AAEjD;AACA;AACA;AACA,SAASC,iBAAiB,QAAQ,oBAAoB;AACtD,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,gBAAgB;;AAE1D;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,eAAeA,CAAEC,QAAQ,EAAG;EAC3C,MAAM;IAAEC;EAAgB,CAAC,GAAGR,SAAS,CAAEK,gBAAiB,CAAC;EACzD,MAAM;IAAEI,WAAW;IAAEC;EAAgB,CAAC,GAAGT,WAAW,CAAEI,gBAAiB,CAAC;EAExE,OAAOH,YAAY,CAChBS,IAAI,IAAM;IACX;AACH;AACA;AACA;AACA;AACA;AACA;AACA;IACG,SAASC,OAAOA,CAAEC,KAAK,EAAG;MACzB;MACA;MACA,IACCF,IAAI,CAACG,aAAa,CAACC,OAAO,CAAE,0BAA2B,CAAC,EACvD;QACD;MACD;;MAEA;MACA;MACA,IAAKP,eAAe,CAAED,QAAS,CAAC,EAAG;QAClC;QACA,IAAK,CAAEM,KAAK,CAACG,MAAM,CAACC,iBAAiB,EAAG;UACvCP,eAAe,CAAEH,QAAS,CAAC;QAC5B;QACA;MACD;;MAEA;MACA;MACA,IAAK,CAAEJ,iBAAiB,CAAEQ,IAAI,EAAEE,KAAK,CAACG,MAAO,CAAC,EAAG;QAChD;MACD;MAEAP,WAAW,CAAEF,QAAS,CAAC;IACxB;IAEAI,IAAI,CAACO,gBAAgB,CAAE,SAAS,EAAEN,OAAQ,CAAC;IAE3C,OAAO,MAAM;MACZD,IAAI,CAACQ,mBAAmB,CAAE,SAAS,EAAEP,OAAQ,CAAC;IAC/C,CAAC;EACF,CAAC,EACD,CAAEJ,eAAe,EAAEC,WAAW,CAC/B,CAAC;AACF"}
1
+ {"version":3,"names":["useSelect","useDispatch","useRefEffect","isInsideRootBlock","store","blockEditorStore","useFocusHandler","clientId","isBlockSelected","selectBlock","selectionChange","node","onFocus","event","parentElement","closest","target","isContentEditable","addEventListener","removeEventListener"],"sources":["@wordpress/block-editor/src/components/block-list/use-block-props/use-focus-handler.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useRefEffect } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { isInsideRootBlock } from '../../../utils/dom';\nimport { store as blockEditorStore } from '../../../store';\n\n/**\n * Selects the block if it receives focus.\n *\n * @param {string} clientId Block client ID.\n */\nexport function useFocusHandler( clientId ) {\n\tconst { isBlockSelected } = useSelect( blockEditorStore );\n\tconst { selectBlock, selectionChange } = useDispatch( blockEditorStore );\n\n\treturn useRefEffect(\n\t\t( node ) => {\n\t\t\t/**\n\t\t\t * Marks the block as selected when focused and not already\n\t\t\t * selected. This specifically handles the case where block does not\n\t\t\t * set focus on its own (via `setFocus`), typically if there is no\n\t\t\t * focusable input in the block.\n\t\t\t *\n\t\t\t * @param {FocusEvent} event Focus event.\n\t\t\t */\n\t\t\tfunction onFocus( event ) {\n\t\t\t\t// When the whole editor is editable, let writing flow handle\n\t\t\t\t// selection.\n\t\t\t\tif (\n\t\t\t\t\tnode.parentElement.closest( '[contenteditable=\"true\"]' )\n\t\t\t\t) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\t// Check synchronously because a non-selected block might be\n\t\t\t\t// getting data through `useSelect` asynchronously.\n\t\t\t\tif ( isBlockSelected( clientId ) ) {\n\t\t\t\t\t// Potentially change selection away from rich text.\n\t\t\t\t\tif ( ! event.target.isContentEditable ) {\n\t\t\t\t\t\tselectionChange( clientId );\n\t\t\t\t\t}\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\t// If an inner block is focussed, that block is resposible for\n\t\t\t\t// setting the selected block.\n\t\t\t\tif ( ! isInsideRootBlock( node, event.target ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tselectBlock( clientId );\n\t\t\t}\n\n\t\t\tnode.addEventListener( 'focusin', onFocus );\n\n\t\t\treturn () => {\n\t\t\t\tnode.removeEventListener( 'focusin', onFocus );\n\t\t\t};\n\t\t},\n\t\t[ isBlockSelected, selectBlock ]\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,SAAS,EAAEC,WAAW,QAAQ,iBAAiB;AACxD,SAASC,YAAY,QAAQ,oBAAoB;;AAEjD;AACA;AACA;AACA,SAASC,iBAAiB,QAAQ,oBAAoB;AACtD,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,gBAAgB;;AAE1D;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,eAAeA,CAAEC,QAAQ,EAAG;EAC3C,MAAM;IAAEC;EAAgB,CAAC,GAAGR,SAAS,CAAEK,gBAAiB,CAAC;EACzD,MAAM;IAAEI,WAAW;IAAEC;EAAgB,CAAC,GAAGT,WAAW,CAAEI,gBAAiB,CAAC;EAExE,OAAOH,YAAY,CAChBS,IAAI,IAAM;IACX;AACH;AACA;AACA;AACA;AACA;AACA;AACA;IACG,SAASC,OAAOA,CAAEC,KAAK,EAAG;MACzB;MACA;MACA,IACCF,IAAI,CAACG,aAAa,CAACC,OAAO,CAAE,0BAA2B,CAAC,EACvD;QACD;MACD;;MAEA;MACA;MACA,IAAKP,eAAe,CAAED,QAAS,CAAC,EAAG;QAClC;QACA,IAAK,CAAEM,KAAK,CAACG,MAAM,CAACC,iBAAiB,EAAG;UACvCP,eAAe,CAAEH,QAAS,CAAC;QAC5B;QACA;MACD;;MAEA;MACA;MACA,IAAK,CAAEJ,iBAAiB,CAAEQ,IAAI,EAAEE,KAAK,CAACG,MAAO,CAAC,EAAG;QAChD;MACD;MAEAP,WAAW,CAAEF,QAAS,CAAC;IACxB;IAEAI,IAAI,CAACO,gBAAgB,CAAE,SAAS,EAAEN,OAAQ,CAAC;IAE3C,OAAO,MAAM;MACZD,IAAI,CAACQ,mBAAmB,CAAE,SAAS,EAAEP,OAAQ,CAAC;IAC/C,CAAC;EACF,CAAC,EACD,CAAEJ,eAAe,EAAEC,WAAW,CAC/B,CAAC;AACF","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["useRefEffect","useContext","IntersectionObserver","useIntersectionObserver","observer","node","observe","unobserve"],"sources":["@wordpress/block-editor/src/components/block-list/use-block-props/use-intersection-observer.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useRefEffect } from '@wordpress/compose';\nimport { useContext } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { IntersectionObserver } from '../';\n\nexport function useIntersectionObserver() {\n\tconst observer = useContext( IntersectionObserver );\n\treturn useRefEffect(\n\t\t( node ) => {\n\t\t\tif ( observer ) {\n\t\t\t\tobserver.observe( node );\n\t\t\t\treturn () => {\n\t\t\t\t\tobserver.unobserve( node );\n\t\t\t\t};\n\t\t\t}\n\t\t},\n\t\t[ observer ]\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,YAAY,QAAQ,oBAAoB;AACjD,SAASC,UAAU,QAAQ,oBAAoB;;AAE/C;AACA;AACA;AACA,SAASC,oBAAoB,QAAQ,KAAK;AAE1C,OAAO,SAASC,uBAAuBA,CAAA,EAAG;EACzC,MAAMC,QAAQ,GAAGH,UAAU,CAAEC,oBAAqB,CAAC;EACnD,OAAOF,YAAY,CAChBK,IAAI,IAAM;IACX,IAAKD,QAAQ,EAAG;MACfA,QAAQ,CAACE,OAAO,CAAED,IAAK,CAAC;MACxB,OAAO,MAAM;QACZD,QAAQ,CAACG,SAAS,CAAEF,IAAK,CAAC;MAC3B,CAAC;IACF;EACD,CAAC,EACD,CAAED,QAAQ,CACX,CAAC;AACF"}
1
+ {"version":3,"names":["useRefEffect","useContext","IntersectionObserver","useIntersectionObserver","observer","node","observe","unobserve"],"sources":["@wordpress/block-editor/src/components/block-list/use-block-props/use-intersection-observer.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useRefEffect } from '@wordpress/compose';\nimport { useContext } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { IntersectionObserver } from '../';\n\nexport function useIntersectionObserver() {\n\tconst observer = useContext( IntersectionObserver );\n\treturn useRefEffect(\n\t\t( node ) => {\n\t\t\tif ( observer ) {\n\t\t\t\tobserver.observe( node );\n\t\t\t\treturn () => {\n\t\t\t\t\tobserver.unobserve( node );\n\t\t\t\t};\n\t\t\t}\n\t\t},\n\t\t[ observer ]\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,YAAY,QAAQ,oBAAoB;AACjD,SAASC,UAAU,QAAQ,oBAAoB;;AAE/C;AACA;AACA;AACA,SAASC,oBAAoB,QAAQ,KAAK;AAE1C,OAAO,SAASC,uBAAuBA,CAAA,EAAG;EACzC,MAAMC,QAAQ,GAAGH,UAAU,CAAEC,oBAAqB,CAAC;EACnD,OAAOF,YAAY,CAChBK,IAAI,IAAM;IACX,IAAKD,QAAQ,EAAG;MACfA,QAAQ,CAACE,OAAO,CAAED,IAAK,CAAC;MACxB,OAAO,MAAM;QACZD,QAAQ,CAACG,SAAS,CAAEF,IAAK,CAAC;MAC3B,CAAC;IACF;EACD,CAAC,EACD,CAAED,QAAQ,CACX,CAAC;AACF","ignoreList":[]}
@@ -15,21 +15,17 @@ function listener(event) {
15
15
  * Adds `is-hovered` class when the block is hovered and in navigation or
16
16
  * outline mode.
17
17
  */
18
- export function useIsHovered({
19
- isEnabled
20
- }) {
18
+ export function useIsHovered() {
21
19
  return useRefEffect(node => {
22
- if (isEnabled) {
23
- node.addEventListener('mouseout', listener);
24
- node.addEventListener('mouseover', listener);
25
- return () => {
26
- node.removeEventListener('mouseout', listener);
27
- node.removeEventListener('mouseover', listener);
20
+ node.addEventListener('mouseout', listener);
21
+ node.addEventListener('mouseover', listener);
22
+ return () => {
23
+ node.removeEventListener('mouseout', listener);
24
+ node.removeEventListener('mouseover', listener);
28
25
 
29
- // Remove class in case it lingers.
30
- node.classList.remove('is-hovered');
31
- };
32
- }
33
- }, [isEnabled]);
26
+ // Remove class in case it lingers.
27
+ node.classList.remove('is-hovered');
28
+ };
29
+ }, []);
34
30
  }
35
31
  //# sourceMappingURL=use-is-hovered.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["useRefEffect","listener","event","defaultPrevented","action","type","preventDefault","currentTarget","classList","useIsHovered","isEnabled","node","addEventListener","removeEventListener","remove"],"sources":["@wordpress/block-editor/src/components/block-list/use-block-props/use-is-hovered.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useRefEffect } from '@wordpress/compose';\n\nfunction listener( event ) {\n\tif ( event.defaultPrevented ) {\n\t\treturn;\n\t}\n\n\tconst action = event.type === 'mouseover' ? 'add' : 'remove';\n\n\tevent.preventDefault();\n\tevent.currentTarget.classList[ action ]( 'is-hovered' );\n}\n\n/*\n * Adds `is-hovered` class when the block is hovered and in navigation or\n * outline mode.\n */\nexport function useIsHovered( { isEnabled } ) {\n\treturn useRefEffect(\n\t\t( node ) => {\n\t\t\tif ( isEnabled ) {\n\t\t\t\tnode.addEventListener( 'mouseout', listener );\n\t\t\t\tnode.addEventListener( 'mouseover', listener );\n\n\t\t\t\treturn () => {\n\t\t\t\t\tnode.removeEventListener( 'mouseout', listener );\n\t\t\t\t\tnode.removeEventListener( 'mouseover', listener );\n\n\t\t\t\t\t// Remove class in case it lingers.\n\t\t\t\t\tnode.classList.remove( 'is-hovered' );\n\t\t\t\t};\n\t\t\t}\n\t\t},\n\t\t[ isEnabled ]\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,YAAY,QAAQ,oBAAoB;AAEjD,SAASC,QAAQA,CAAEC,KAAK,EAAG;EAC1B,IAAKA,KAAK,CAACC,gBAAgB,EAAG;IAC7B;EACD;EAEA,MAAMC,MAAM,GAAGF,KAAK,CAACG,IAAI,KAAK,WAAW,GAAG,KAAK,GAAG,QAAQ;EAE5DH,KAAK,CAACI,cAAc,CAAC,CAAC;EACtBJ,KAAK,CAACK,aAAa,CAACC,SAAS,CAAEJ,MAAM,CAAE,CAAE,YAAa,CAAC;AACxD;;AAEA;AACA;AACA;AACA;AACA,OAAO,SAASK,YAAYA,CAAE;EAAEC;AAAU,CAAC,EAAG;EAC7C,OAAOV,YAAY,CAChBW,IAAI,IAAM;IACX,IAAKD,SAAS,EAAG;MAChBC,IAAI,CAACC,gBAAgB,CAAE,UAAU,EAAEX,QAAS,CAAC;MAC7CU,IAAI,CAACC,gBAAgB,CAAE,WAAW,EAAEX,QAAS,CAAC;MAE9C,OAAO,MAAM;QACZU,IAAI,CAACE,mBAAmB,CAAE,UAAU,EAAEZ,QAAS,CAAC;QAChDU,IAAI,CAACE,mBAAmB,CAAE,WAAW,EAAEZ,QAAS,CAAC;;QAEjD;QACAU,IAAI,CAACH,SAAS,CAACM,MAAM,CAAE,YAAa,CAAC;MACtC,CAAC;IACF;EACD,CAAC,EACD,CAAEJ,SAAS,CACZ,CAAC;AACF"}
1
+ {"version":3,"names":["useRefEffect","listener","event","defaultPrevented","action","type","preventDefault","currentTarget","classList","useIsHovered","node","addEventListener","removeEventListener","remove"],"sources":["@wordpress/block-editor/src/components/block-list/use-block-props/use-is-hovered.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useRefEffect } from '@wordpress/compose';\n\nfunction listener( event ) {\n\tif ( event.defaultPrevented ) {\n\t\treturn;\n\t}\n\n\tconst action = event.type === 'mouseover' ? 'add' : 'remove';\n\n\tevent.preventDefault();\n\tevent.currentTarget.classList[ action ]( 'is-hovered' );\n}\n\n/*\n * Adds `is-hovered` class when the block is hovered and in navigation or\n * outline mode.\n */\nexport function useIsHovered() {\n\treturn useRefEffect( ( node ) => {\n\t\tnode.addEventListener( 'mouseout', listener );\n\t\tnode.addEventListener( 'mouseover', listener );\n\n\t\treturn () => {\n\t\t\tnode.removeEventListener( 'mouseout', listener );\n\t\t\tnode.removeEventListener( 'mouseover', listener );\n\n\t\t\t// Remove class in case it lingers.\n\t\t\tnode.classList.remove( 'is-hovered' );\n\t\t};\n\t}, [] );\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,YAAY,QAAQ,oBAAoB;AAEjD,SAASC,QAAQA,CAAEC,KAAK,EAAG;EAC1B,IAAKA,KAAK,CAACC,gBAAgB,EAAG;IAC7B;EACD;EAEA,MAAMC,MAAM,GAAGF,KAAK,CAACG,IAAI,KAAK,WAAW,GAAG,KAAK,GAAG,QAAQ;EAE5DH,KAAK,CAACI,cAAc,CAAC,CAAC;EACtBJ,KAAK,CAACK,aAAa,CAACC,SAAS,CAAEJ,MAAM,CAAE,CAAE,YAAa,CAAC;AACxD;;AAEA;AACA;AACA;AACA;AACA,OAAO,SAASK,YAAYA,CAAA,EAAG;EAC9B,OAAOT,YAAY,CAAIU,IAAI,IAAM;IAChCA,IAAI,CAACC,gBAAgB,CAAE,UAAU,EAAEV,QAAS,CAAC;IAC7CS,IAAI,CAACC,gBAAgB,CAAE,WAAW,EAAEV,QAAS,CAAC;IAE9C,OAAO,MAAM;MACZS,IAAI,CAACE,mBAAmB,CAAE,UAAU,EAAEX,QAAS,CAAC;MAChDS,IAAI,CAACE,mBAAmB,CAAE,WAAW,EAAEX,QAAS,CAAC;;MAEjD;MACAS,IAAI,CAACF,SAAS,CAACK,MAAM,CAAE,YAAa,CAAC;IACtC,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;AACR","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["useSelect","useDispatch","useRefEffect","store","blockEditorStore","useNavModeExit","clientId","isNavigationMode","isBlockSelected","setNavigationMode","selectBlock","node","onMouseDown","event","defaultPrevented","preventDefault","addEventListener","removeEventListener"],"sources":["@wordpress/block-editor/src/components/block-list/use-block-props/use-nav-mode-exit.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\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 * Allows navigation mode to be exited by clicking in the selected block.\n *\n * @param {string} clientId Block client ID.\n */\nexport function useNavModeExit( clientId ) {\n\tconst { isNavigationMode, isBlockSelected } = useSelect( blockEditorStore );\n\tconst { setNavigationMode, selectBlock } = useDispatch( blockEditorStore );\n\treturn useRefEffect(\n\t\t( node ) => {\n\t\t\tfunction onMouseDown( event ) {\n\t\t\t\t// Don't select a block if it's already handled by a child\n\t\t\t\t// block.\n\t\t\t\tif ( isNavigationMode() && ! event.defaultPrevented ) {\n\t\t\t\t\t// Prevent focus from moving to the block.\n\t\t\t\t\tevent.preventDefault();\n\n\t\t\t\t\t// When clicking on a selected block, exit navigation mode.\n\t\t\t\t\tif ( isBlockSelected( clientId ) ) {\n\t\t\t\t\t\tsetNavigationMode( false );\n\t\t\t\t\t} else {\n\t\t\t\t\t\tselectBlock( clientId );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tnode.addEventListener( 'mousedown', onMouseDown );\n\n\t\t\treturn () => {\n\t\t\t\tnode.removeEventListener( 'mousedown', onMouseDown );\n\t\t\t};\n\t\t},\n\t\t[ clientId, isNavigationMode, isBlockSelected, setNavigationMode ]\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,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,OAAO,SAASC,cAAcA,CAAEC,QAAQ,EAAG;EAC1C,MAAM;IAAEC,gBAAgB;IAAEC;EAAgB,CAAC,GAAGR,SAAS,CAAEI,gBAAiB,CAAC;EAC3E,MAAM;IAAEK,iBAAiB;IAAEC;EAAY,CAAC,GAAGT,WAAW,CAAEG,gBAAiB,CAAC;EAC1E,OAAOF,YAAY,CAChBS,IAAI,IAAM;IACX,SAASC,WAAWA,CAAEC,KAAK,EAAG;MAC7B;MACA;MACA,IAAKN,gBAAgB,CAAC,CAAC,IAAI,CAAEM,KAAK,CAACC,gBAAgB,EAAG;QACrD;QACAD,KAAK,CAACE,cAAc,CAAC,CAAC;;QAEtB;QACA,IAAKP,eAAe,CAAEF,QAAS,CAAC,EAAG;UAClCG,iBAAiB,CAAE,KAAM,CAAC;QAC3B,CAAC,MAAM;UACNC,WAAW,CAAEJ,QAAS,CAAC;QACxB;MACD;IACD;IAEAK,IAAI,CAACK,gBAAgB,CAAE,WAAW,EAAEJ,WAAY,CAAC;IAEjD,OAAO,MAAM;MACZD,IAAI,CAACM,mBAAmB,CAAE,WAAW,EAAEL,WAAY,CAAC;IACrD,CAAC;EACF,CAAC,EACD,CAAEN,QAAQ,EAAEC,gBAAgB,EAAEC,eAAe,EAAEC,iBAAiB,CACjE,CAAC;AACF"}
1
+ {"version":3,"names":["useSelect","useDispatch","useRefEffect","store","blockEditorStore","useNavModeExit","clientId","isNavigationMode","isBlockSelected","setNavigationMode","selectBlock","node","onMouseDown","event","defaultPrevented","preventDefault","addEventListener","removeEventListener"],"sources":["@wordpress/block-editor/src/components/block-list/use-block-props/use-nav-mode-exit.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\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 * Allows navigation mode to be exited by clicking in the selected block.\n *\n * @param {string} clientId Block client ID.\n */\nexport function useNavModeExit( clientId ) {\n\tconst { isNavigationMode, isBlockSelected } = useSelect( blockEditorStore );\n\tconst { setNavigationMode, selectBlock } = useDispatch( blockEditorStore );\n\treturn useRefEffect(\n\t\t( node ) => {\n\t\t\tfunction onMouseDown( event ) {\n\t\t\t\t// Don't select a block if it's already handled by a child\n\t\t\t\t// block.\n\t\t\t\tif ( isNavigationMode() && ! event.defaultPrevented ) {\n\t\t\t\t\t// Prevent focus from moving to the block.\n\t\t\t\t\tevent.preventDefault();\n\n\t\t\t\t\t// When clicking on a selected block, exit navigation mode.\n\t\t\t\t\tif ( isBlockSelected( clientId ) ) {\n\t\t\t\t\t\tsetNavigationMode( false );\n\t\t\t\t\t} else {\n\t\t\t\t\t\tselectBlock( clientId );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tnode.addEventListener( 'mousedown', onMouseDown );\n\n\t\t\treturn () => {\n\t\t\t\tnode.removeEventListener( 'mousedown', onMouseDown );\n\t\t\t};\n\t\t},\n\t\t[ clientId, isNavigationMode, isBlockSelected, setNavigationMode ]\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,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,OAAO,SAASC,cAAcA,CAAEC,QAAQ,EAAG;EAC1C,MAAM;IAAEC,gBAAgB;IAAEC;EAAgB,CAAC,GAAGR,SAAS,CAAEI,gBAAiB,CAAC;EAC3E,MAAM;IAAEK,iBAAiB;IAAEC;EAAY,CAAC,GAAGT,WAAW,CAAEG,gBAAiB,CAAC;EAC1E,OAAOF,YAAY,CAChBS,IAAI,IAAM;IACX,SAASC,WAAWA,CAAEC,KAAK,EAAG;MAC7B;MACA;MACA,IAAKN,gBAAgB,CAAC,CAAC,IAAI,CAAEM,KAAK,CAACC,gBAAgB,EAAG;QACrD;QACAD,KAAK,CAACE,cAAc,CAAC,CAAC;;QAEtB;QACA,IAAKP,eAAe,CAAEF,QAAS,CAAC,EAAG;UAClCG,iBAAiB,CAAE,KAAM,CAAC;QAC3B,CAAC,MAAM;UACNC,WAAW,CAAEJ,QAAS,CAAC;QACxB;MACD;IACD;IAEAK,IAAI,CAACK,gBAAgB,CAAE,WAAW,EAAEJ,WAAY,CAAC;IAEjD,OAAO,MAAM;MACZD,IAAI,CAACM,mBAAmB,CAAE,WAAW,EAAEL,WAAY,CAAC;IACrD,CAAC;EACF,CAAC,EACD,CAAEN,QAAQ,EAAEC,gBAAgB,EAAEC,eAAe,EAAEC,iBAAiB,CACjE,CAAC;AACF","ignoreList":[]}
@@ -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":";AAAA;AACA;AACA;AACA,SAASA,IAAI,QAAQ,cAAc;;AAEnC;AACA;AACA;AACA,SAASC,SAAS,QAAQ,oBAAoB;AAC9C,SAASC,OAAO,QAAQ,uBAAuB;AAC/C,SAASC,EAAE,QAAQ,iBAAiB;AACpC,SACCC,oBAAoB,EACpBC,kBAAkB,QACZ,gCAAgC;;AAEvC;AACA;AACA;AACA,OAAOC,MAAM,MAAM,eAAe;AAElC,OAAO,MAAMC,4BAA4B,GAAG,CAAC;AAC7C,OAAO,MAAMC,4BAA4B,GAAG,CAAC;AAC7C,OAAO,MAAMC,yBAAyB,GAAG,CAAC;AAC1C,OAAO,MAAMC,wBAAwB,GAAG,CAAC;AAEzC,OAAO,MAAMC,uBAAuB,GAAG,CAAC;AACxC,OAAO,MAAMC,0BAA0B,GAAG,CAAC;AAC3C,OAAO,MAAMC,uBAAuB,GAAG,CAAC;AACxC,OAAO,MAAMC,sBAAsB,GAAG,CAAC;AACvC,OAAO,MAAMC,6BAA6B,GAAG,CAAC;AAC9C,OAAO,MAAMC,0BAA0B,GAAG,EAAE;AAE5C,OAAO,MAAMC,wBAAwB,SAAShB,SAAS,CAAC;EACvDiB,WAAWA,CAAEC,KAAK,EAAG;IACpB,KAAK,CAAEA,KAAM,CAAC;IAEd,IAAI,CAACC,KAAK,GAAG;MACZC,QAAQ,EAAE,CAAC;MACXC,gBAAgB,EAAE,KAAK;MACvBC,YAAY,EAAE,KAAK;MACnBC,kBAAkB,EAAE,KAAK;MACzBC,cAAc,EAAE;IACjB,CAAC;IAED,IAAI,CAACC,WAAW,GAAG,IAAI,CAACA,WAAW,CAACC,IAAI,CAAE,IAAK,CAAC;IAChD,IAAI,CAACC,SAAS,GAAG,IAAI,CAACA,SAAS,CAACD,IAAI,CAAE,IAAK,CAAC;EAC7C;EAEAE,iBAAiBA,CAAA,EAAG;IACnB,IAAI,CAACC,sBAAsB,CAAC,CAAC;IAC7B,IAAI,CAACC,oBAAoB,CAAC,CAAC;EAC5B;EAEAC,oBAAoBA,CAAA,EAAG;IACtB,IAAI,CAACC,yBAAyB,CAAC,CAAC;IAChC,IAAI,CAACC,uBAAuB,CAAC,CAAC;EAC/B;EAEAC,4BAA4BA,CAAEC,OAAO,EAAEC,UAAU,EAAG;IACnD,IAAKD,OAAO,KAAKE,SAAS,IAAID,UAAU,KAAKC,SAAS,EAAG;MACxD,OAAOD,UAAU,CAACE,IAAI,CACnBC,OAAO,IAAMA,OAAO,CAACC,EAAE,KAAKL,OAAO,CAACM,QAAQ,CAAC,CAChD,CAAC;IACF;IACA,OAAO,KAAK;EACb;EAEAhB,WAAWA,CAAEiB,OAAO,EAAG;IACtB,MAAM;MAAEN;IAAW,CAAC,GAAG,IAAI,CAAClB,KAAK;IAEjC,IACC,IAAI,CAACgB,4BAA4B,CAAEQ,OAAO,CAACP,OAAO,EAAEC,UAAW,CAAC,KAChE,KAAK,EACJ;MACD;IACD;IAEA,QAASM,OAAO,CAACvB,KAAK;MACrB,KAAKb,4BAA4B;QAChC,IAAI,CAACqC,yBAAyB,CAAED,OAAQ,CAAC;QACzC;MACD,KAAKnC,4BAA4B;QAChC,IAAI,CAACqC,4BAA4B,CAAEF,OAAQ,CAAC;QAC5C;MACD,KAAKlC,yBAAyB;QAC7B,IAAI,CAACqC,4BAA4B,CAAEH,OAAQ,CAAC;QAC5C;MACD,KAAKjC,wBAAwB;QAC5B,IAAI,CAACqC,qBAAqB,CAAEJ,OAAQ,CAAC;QACrC;IACF;EACD;EAEAf,SAASA,CAAEe,OAAO,EAAG;IACpB,MAAM;MAAEN;IAAW,CAAC,GAAG,IAAI,CAAClB,KAAK;IAEjC,IACC,IAAI,CAACgB,4BAA4B,CAAEQ,OAAO,CAACP,OAAO,EAAEC,UAAW,CAAC,KAChE,KAAK,EACJ;MACD;IACD;IAEA,QAASM,OAAO,CAACvB,KAAK;MACrB,KAAKT,uBAAuB;QAC3B,IAAI,CAACqC,uBAAuB,CAAEL,OAAQ,CAAC;QACvC;MACD,KAAK/B,0BAA0B;QAC9B,IAAI,CAACqC,0BAA0B,CAAEN,OAAQ,CAAC;QAC1C;MACD,KAAK9B,uBAAuB;QAC3B,IAAI,CAACqC,0BAA0B,CAAEP,OAAQ,CAAC;QAC1C;MACD,KAAK7B,sBAAsB;QAC1B,IAAI,CAACqC,mBAAmB,CAAER,OAAQ,CAAC;QACnC;MACD,KAAK5B,6BAA6B;QACjC,IAAI,CAACqC,eAAe,CAAET,OAAQ,CAAC;QAC/B;MACD,KAAK3B,0BAA0B;QAC9B,IAAI,CAACqC,cAAc,CAAEV,OAAQ,CAAC;QAC9B;IACF;EACD;;EAEA;EACAK,uBAAuBA,CAAEL,OAAO,EAAG;IAClC,IAAI,CAACW,QAAQ,CAAE;MACdjC,QAAQ,EAAEsB,OAAO,CAACtB,QAAQ;MAC1BG,kBAAkB,EAAE,KAAK;MACzBC,cAAc,EAAE,KAAK;MACrBH,gBAAgB,EAAE,IAAI;MACtBC,YAAY,EAAE;IACf,CAAE,CAAC;IACH,IAAK,IAAI,CAACJ,KAAK,CAACoC,yBAAyB,EAAG;MAC3C,IAAI,CAACpC,KAAK,CAACoC,yBAAyB,CAAEZ,OAAQ,CAAC;IAChD;EACD;EAEAM,0BAA0BA,CAAEN,OAAO,EAAG;IACrC,IAAI,CAACW,QAAQ,CAAE;MAAEhC,gBAAgB,EAAE;IAAM,CAAE,CAAC;IAC5C,IAAK,IAAI,CAACH,KAAK,CAACqC,4BAA4B,EAAG;MAC9C,IAAI,CAACrC,KAAK,CAACqC,4BAA4B,CAAEb,OAAQ,CAAC;IACnD;EACD;EAEAO,0BAA0BA,CAAEP,OAAO,EAAG;IACrC,IAAI,CAACW,QAAQ,CAAE;MAAEhC,gBAAgB,EAAE,KAAK;MAAEC,YAAY,EAAE;IAAK,CAAE,CAAC;IAChE,IAAK,IAAI,CAACJ,KAAK,CAACsC,4BAA4B,EAAG;MAC9C,IAAI,CAACtC,KAAK,CAACsC,4BAA4B,CAAEd,OAAQ,CAAC;IACnD;EACD;EAEAQ,mBAAmBA,CAAER,OAAO,EAAG;IAC9B,IAAI,CAACW,QAAQ,CAAE;MAAEhC,gBAAgB,EAAE,KAAK;MAAEC,YAAY,EAAE;IAAM,CAAE,CAAC;IACjE,IAAK,IAAI,CAACJ,KAAK,CAACuC,qBAAqB,EAAG;MACvC,IAAI,CAACvC,KAAK,CAACuC,qBAAqB,CAAEf,OAAQ,CAAC;IAC5C;EACD;EAEAS,eAAeA,CAAET,OAAO,EAAG;IAC1B,IAAI,CAACW,QAAQ,CAAE;MACdjC,QAAQ,EAAEsB,OAAO,CAACtB,QAAQ;MAC1BG,kBAAkB,EAAE,KAAK;MACzBC,cAAc,EAAE,KAAK;MACrBH,gBAAgB,EAAE,KAAK;MACvBC,YAAY,EAAE,CAAEoB,OAAO,CAACgB;IACzB,CAAE,CAAC;IACH,IAAK,IAAI,CAACxC,KAAK,CAACyC,iBAAiB,EAAG;MACnC,IAAI,CAACzC,KAAK,CAACyC,iBAAiB,CAAEjB,OAAQ,CAAC;IACxC;EACD;EAEAU,cAAcA,CAAEV,OAAO,EAAG;IACzB,IAAI,CAACW,QAAQ,CAAE;MACd9B,kBAAkB,EAAE,KAAK;MACzBC,cAAc,EAAE,KAAK;MACrBH,gBAAgB,EAAE,KAAK;MACvBC,YAAY,EAAE;IACf,CAAE,CAAC;IACH,IAAK,IAAI,CAACJ,KAAK,CAAC0C,gBAAgB,EAAG;MAClC,IAAI,CAAC1C,KAAK,CAAC0C,gBAAgB,CAAElB,OAAQ,CAAC;IACvC;EACD;;EAEA;EACAC,yBAAyBA,CAAED,OAAO,EAAG;IACpC,IAAI,CAACW,QAAQ,CAAE;MACdjC,QAAQ,EAAEsB,OAAO,CAACtB,QAAQ;MAC1BG,kBAAkB,EAAE,IAAI;MACxBC,cAAc,EAAE,KAAK;MACrBH,gBAAgB,EAAE,KAAK;MACvBC,YAAY,EAAE;IACf,CAAE,CAAC;IACH,IAAK,IAAI,CAACJ,KAAK,CAAC2C,2BAA2B,EAAG;MAC7C,IAAI,CAAC3C,KAAK,CAAC2C,2BAA2B,CAAEnB,OAAQ,CAAC;IAClD;EACD;EAEAE,4BAA4BA,CAAEF,OAAO,EAAG;IACvC,IAAI,CAACW,QAAQ,CAAE;MAAE9B,kBAAkB,EAAE,KAAK;MAAEF,gBAAgB,EAAE;IAAM,CAAE,CAAC;IACvE,IAAK,IAAI,CAACH,KAAK,CAAC4C,8BAA8B,EAAG;MAChD,IAAI,CAAC5C,KAAK,CAAC4C,8BAA8B,CAAEpB,OAAQ,CAAC;IACrD;EACD;EAEAG,4BAA4BA,CAAEH,OAAO,EAAG;IACvC,IAAI,CAACW,QAAQ,CAAE;MAAE9B,kBAAkB,EAAE,KAAK;MAAEC,cAAc,EAAE;IAAK,CAAE,CAAC;IACpE,IAAK,IAAI,CAACN,KAAK,CAAC6C,8BAA8B,EAAG;MAChD,IAAI,CAAC7C,KAAK,CAAC6C,8BAA8B,CAAErB,OAAQ,CAAC;IACrD;EACD;EAEAI,qBAAqBA,CAAEJ,OAAO,EAAG;IAChC,IAAI,CAACW,QAAQ,CAAE;MAAE9B,kBAAkB,EAAE,KAAK;MAAEC,cAAc,EAAE;IAAM,CAAE,CAAC;IACrE,IAAK,IAAI,CAACN,KAAK,CAAC8C,uBAAuB,EAAG;MACzC,IAAI,CAAC9C,KAAK,CAAC8C,uBAAuB,CAAEtB,OAAQ,CAAC;IAC9C;EACD;EAEAb,sBAAsBA,CAAA,EAAG;IACxB;IACA,IAAK,IAAI,CAACoC,6BAA6B,EAAG;MACzC;IACD;IACA,IAAI,CAACA,6BAA6B,GAAG9D,oBAAoB,CACtDuC,OAAO,IAAM;MACd,IAAI,CAACjB,WAAW,CAAEiB,OAAQ,CAAC;IAC5B,CACD,CAAC;EACF;EAEAV,yBAAyBA,CAAA,EAAG;IAC3B,IAAK,IAAI,CAACiC,6BAA6B,EAAG;MACzC,IAAI,CAACA,6BAA6B,CAACC,MAAM,CAAC,CAAC;IAC5C;EACD;EAEApC,oBAAoBA,CAAA,EAAG;IACtB;IACA,IAAK,IAAI,CAACqC,2BAA2B,EAAG;MACvC;IACD;IACA,IAAI,CAACA,2BAA2B,GAAG/D,kBAAkB,CAAIsC,OAAO,IAAM;MACrE,IAAI,CAACf,SAAS,CAAEe,OAAQ,CAAC;IAC1B,CAAE,CAAC;EACJ;EAEAT,uBAAuBA,CAAA,EAAG;IACzB,IAAK,IAAI,CAACkC,2BAA2B,EAAG;MACvC,IAAI,CAACA,2BAA2B,CAACD,MAAM,CAAC,CAAC;IAC1C;EACD;EAEAE,MAAMA,CAAA,EAAG;IACR,MAAM;MAAEC,aAAa,GAAGA,CAAA,KAAM;IAAK,CAAC,GAAG,IAAI,CAACnD,KAAK;IACjD,MAAM;MACLK,kBAAkB;MAClBC,cAAc;MACdH,gBAAgB;MAChBC;IACD,CAAC,GAAG,IAAI,CAACH,KAAK;IACd,MAAMmD,WAAW,GAChB,IAAI,CAACnD,KAAK,CAACI,kBAAkB,IAAI,IAAI,CAACJ,KAAK,CAACE,gBAAgB;IAC7D,MAAMD,QAAQ,GAAG,IAAI,CAACD,KAAK,CAACC,QAAQ,GAAG,GAAG;IAC1C;IACA,MAAMmD,gBAAgB,GAAGrE,EAAE,CAC1B,gDACD,CAAC;IACD;IACA,MAAMsE,kBAAkB,GAAGtE,EAAE,CAC5B,kDACD,CAAC;IACD,IAAIuE,YAAY,GAAGF,gBAAgB;IACnC,IAAK/C,cAAc,EAAG;MACrBiD,YAAY,GAAGD,kBAAkB;IAClC;IAEA,OACCE,aAAA,CAAC3E,IAAI;MAAC4E,KAAK,EAAGtE,MAAM,CAACuE,mBAAqB;MAACC,aAAa,EAAC;IAAU,GAChEP,WAAW,IACZI,aAAA,CAAC3E,IAAI;MAAC4E,KAAK,EAAGtE,MAAM,CAACyE;IAAa,GACjCJ,aAAA,CAACzE,OAAO;MAACmB,QAAQ,EAAGA,QAAU;MAAC2D,MAAM,EAAC;IAAS,CAAE,CAC5C,CACN,EACCV,aAAa,CAAE;MAChB9C,kBAAkB;MAClBC,cAAc;MACdH,gBAAgB;MAChBC,YAAY;MACZmD;IACD,CAAE,CACG,CAAC;EAET;AACD;AAEA,eAAezD,wBAAwB"}
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":[]}