@wordpress/editor 13.33.0 → 13.35.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 (494) hide show
  1. package/CHANGELOG.md +12 -4
  2. package/README.md +132 -20
  3. package/build/bindings/pattern-overrides.js +70 -1
  4. package/build/bindings/pattern-overrides.js.map +1 -1
  5. package/build/components/autosave-monitor/index.js +15 -12
  6. package/build/components/autosave-monitor/index.js.map +1 -1
  7. package/build/components/block-settings-menu/content-only-settings-menu.js +126 -0
  8. package/build/components/block-settings-menu/content-only-settings-menu.js.map +1 -0
  9. package/build/components/block-settings-menu/content-only-settings-menu.native.js +11 -0
  10. package/build/components/block-settings-menu/content-only-settings-menu.native.js.map +1 -0
  11. package/build/components/character-count/index.js +5 -0
  12. package/build/components/character-count/index.js.map +1 -1
  13. package/build/components/collapsible-block-toolbar/index.js +73 -0
  14. package/build/components/collapsible-block-toolbar/index.js.map +1 -0
  15. package/build/components/document-bar/index.js +2 -2
  16. package/build/components/document-bar/index.js.map +1 -1
  17. package/build/components/document-outline/check.js +8 -0
  18. package/build/components/document-outline/check.js.map +1 -1
  19. package/build/components/document-outline/index.js +11 -0
  20. package/build/components/document-outline/index.js.map +1 -1
  21. package/build/components/document-outline/item.js +2 -2
  22. package/build/components/document-outline/item.js.map +1 -1
  23. package/build/components/document-tools/index.js +15 -25
  24. package/build/components/document-tools/index.js.map +1 -1
  25. package/build/components/editor-canvas/edit-template-blocks-notification.js +1 -1
  26. package/build/components/editor-canvas/edit-template-blocks-notification.js.map +1 -1
  27. package/build/components/editor-canvas/index.js +19 -8
  28. package/build/components/editor-canvas/index.js.map +1 -1
  29. package/build/components/editor-history/redo.js +11 -0
  30. package/build/components/editor-history/redo.js.map +1 -1
  31. package/build/components/editor-history/undo.js +11 -0
  32. package/build/components/editor-history/undo.js.map +1 -1
  33. package/build/components/editor-snackbars/index.js +6 -0
  34. package/build/components/editor-snackbars/index.js.map +1 -1
  35. package/build/components/global-keyboard-shortcuts/index.js +7 -0
  36. package/build/components/global-keyboard-shortcuts/index.js.map +1 -1
  37. package/build/components/global-keyboard-shortcuts/register-shortcuts.js +35 -1
  38. package/build/components/global-keyboard-shortcuts/register-shortcuts.js.map +1 -1
  39. package/build/components/global-styles-provider/index.js +130 -0
  40. package/build/components/global-styles-provider/index.js.map +1 -0
  41. package/build/components/header/index.js +147 -0
  42. package/build/components/header/index.js.map +1 -0
  43. package/build/components/inserter-sidebar/index.js +56 -34
  44. package/build/components/inserter-sidebar/index.js.map +1 -1
  45. package/build/components/keyboard-shortcut-help-modal/config.js +4 -0
  46. package/build/components/keyboard-shortcut-help-modal/config.js.map +1 -1
  47. package/build/components/keyboard-shortcut-help-modal/index.js +2 -2
  48. package/build/components/keyboard-shortcut-help-modal/index.js.map +1 -1
  49. package/build/components/list-view-sidebar/index.js +1 -1
  50. package/build/components/list-view-sidebar/index.js.map +1 -1
  51. package/build/components/more-menu/copy-content-menu-item.js +59 -0
  52. package/build/components/more-menu/copy-content-menu-item.js.map +1 -0
  53. package/build/components/more-menu/index.js +119 -0
  54. package/build/components/more-menu/index.js.map +1 -0
  55. package/build/components/more-menu/tools-more-menu-group.js +23 -0
  56. package/build/components/more-menu/tools-more-menu-group.js.map +1 -0
  57. package/build/components/more-menu/view-more-menu-group.js +24 -0
  58. package/build/components/more-menu/view-more-menu-group.js.map +1 -0
  59. package/build/components/page-attributes/check.js +8 -0
  60. package/build/components/page-attributes/check.js.map +1 -1
  61. package/build/components/page-attributes/order.js +7 -0
  62. package/build/components/page-attributes/order.js.map +1 -1
  63. package/build/components/page-attributes/panel.js +14 -8
  64. package/build/components/page-attributes/panel.js.map +1 -1
  65. package/build/components/page-attributes/parent.js +7 -0
  66. package/build/components/page-attributes/parent.js.map +1 -1
  67. package/build/components/plugin-post-publish-panel/index.js +1 -1
  68. package/build/components/plugin-post-publish-panel/index.js.map +1 -1
  69. package/build/components/plugin-pre-publish-panel/index.js +1 -1
  70. package/build/components/plugin-pre-publish-panel/index.js.map +1 -1
  71. package/build/components/plugin-sidebar/index.js +1 -1
  72. package/build/components/plugin-sidebar/index.js.map +1 -1
  73. package/build/components/post-actions/actions.js +219 -66
  74. package/build/components/post-actions/actions.js.map +1 -1
  75. package/build/components/post-actions/index.js +32 -16
  76. package/build/components/post-actions/index.js.map +1 -1
  77. package/build/components/post-author/check.js +9 -0
  78. package/build/components/post-author/check.js.map +1 -1
  79. package/build/components/post-author/index.js +6 -0
  80. package/build/components/post-author/index.js.map +1 -1
  81. package/build/components/post-author/panel.js +5 -0
  82. package/build/components/post-author/panel.js.map +1 -1
  83. package/build/components/post-card-panel/index.js +7 -66
  84. package/build/components/post-card-panel/index.js.map +1 -1
  85. package/build/components/post-comments/index.js +28 -8
  86. package/build/components/post-comments/index.js.map +1 -1
  87. package/build/components/post-content-information/index.js +72 -0
  88. package/build/components/post-content-information/index.js.map +1 -0
  89. package/build/components/post-discussion/panel.js +104 -20
  90. package/build/components/post-discussion/panel.js.map +1 -1
  91. package/build/components/post-excerpt/check.js +0 -19
  92. package/build/components/post-excerpt/check.js.map +1 -1
  93. package/build/components/post-excerpt/index.js +52 -12
  94. package/build/components/post-excerpt/index.js.map +1 -1
  95. package/build/components/post-excerpt/panel.js +118 -7
  96. package/build/components/post-excerpt/panel.js.map +1 -1
  97. package/build/components/post-excerpt/plugin.js +2 -2
  98. package/build/components/post-excerpt/plugin.js.map +1 -1
  99. package/build/components/post-featured-image/index.js +1 -1
  100. package/build/components/post-featured-image/index.js.map +1 -1
  101. package/build/components/post-format/panel.js +27 -0
  102. package/build/components/post-format/panel.js.map +1 -0
  103. package/build/components/post-last-edited-panel/index.js +33 -0
  104. package/build/components/post-last-edited-panel/index.js.map +1 -0
  105. package/build/components/post-panel-row/index.js +2 -2
  106. package/build/components/post-panel-row/index.js.map +1 -1
  107. package/build/components/post-panel-section/index.js +28 -0
  108. package/build/components/post-panel-section/index.js.map +1 -0
  109. package/build/components/post-pingbacks/index.js +5 -2
  110. package/build/components/post-pingbacks/index.js.map +1 -1
  111. package/build/components/post-publish-button/post-publish-button-or-toggle.js +100 -0
  112. package/build/components/post-publish-button/post-publish-button-or-toggle.js.map +1 -0
  113. package/build/components/post-saved-state/index.js +2 -2
  114. package/build/components/post-saved-state/index.js.map +1 -1
  115. package/build/components/post-schedule/panel.js +1 -1
  116. package/build/components/post-schedule/panel.js.map +1 -1
  117. package/build/components/post-slug/panel.js +27 -0
  118. package/build/components/post-slug/panel.js.map +1 -0
  119. package/build/components/post-status/index.js +13 -13
  120. package/build/components/post-status/index.js.map +1 -1
  121. package/build/components/post-sticky/panel.js +21 -0
  122. package/build/components/post-sticky/panel.js.map +1 -0
  123. package/build/components/post-template/block-theme.js +2 -2
  124. package/build/components/post-template/block-theme.js.map +1 -1
  125. package/build/components/post-template/classic-theme.js +0 -1
  126. package/build/components/post-template/classic-theme.js.map +1 -1
  127. package/build/components/post-template/swap-template-button.js +2 -5
  128. package/build/components/post-template/swap-template-button.js.map +1 -1
  129. package/build/components/post-title/index.js +2 -2
  130. package/build/components/post-title/index.js.map +1 -1
  131. package/build/components/post-title/post-title-raw.js +2 -2
  132. package/build/components/post-title/post-title-raw.js.map +1 -1
  133. package/build/components/post-transform-panel/hooks.js +90 -0
  134. package/build/components/post-transform-panel/hooks.js.map +1 -0
  135. package/build/components/post-transform-panel/index.js +101 -0
  136. package/build/components/post-transform-panel/index.js.map +1 -0
  137. package/build/components/post-trash/panel.js +18 -0
  138. package/build/components/post-trash/panel.js.map +1 -0
  139. package/build/components/post-type-support-check/index.js +1 -1
  140. package/build/components/post-type-support-check/index.js.map +1 -1
  141. package/build/components/post-url/index.js +2 -1
  142. package/build/components/post-url/index.js.map +1 -1
  143. package/build/components/post-url/panel.js +1 -1
  144. package/build/components/post-url/panel.js.map +1 -1
  145. package/build/components/preferences-modal/enable-publish-sidebar.js +34 -0
  146. package/build/components/preferences-modal/enable-publish-sidebar.js.map +1 -0
  147. package/build/components/preferences-modal/index.js +11 -5
  148. package/build/components/preferences-modal/index.js.map +1 -1
  149. package/build/components/preview-dropdown/index.js +3 -1
  150. package/build/components/preview-dropdown/index.js.map +1 -1
  151. package/build/components/provider/disable-non-page-content-blocks.js +23 -16
  152. package/build/components/provider/disable-non-page-content-blocks.js.map +1 -1
  153. package/build/components/provider/index.js +3 -1
  154. package/build/components/provider/index.js.map +1 -1
  155. package/build/components/provider/use-block-editor-settings.js +21 -3
  156. package/build/components/provider/use-block-editor-settings.js.map +1 -1
  157. package/build/components/save-publish-panels/index.js +89 -0
  158. package/build/components/save-publish-panels/index.js.map +1 -0
  159. package/build/components/sidebar/constants.js +11 -0
  160. package/build/components/sidebar/constants.js.map +1 -0
  161. package/build/components/sidebar/header.js +53 -0
  162. package/build/components/sidebar/header.js.map +1 -0
  163. package/build/components/sidebar/index.js +157 -0
  164. package/build/components/sidebar/index.js.map +1 -0
  165. package/build/components/sidebar/post-summary.js +84 -0
  166. package/build/components/sidebar/post-summary.js.map +1 -0
  167. package/build/components/start-page-options/index.js +10 -8
  168. package/build/components/start-page-options/index.js.map +1 -1
  169. package/build/components/start-template-options/index.js +192 -0
  170. package/build/components/start-template-options/index.js.map +1 -0
  171. package/build/components/template-content-panel/index.js +38 -0
  172. package/build/components/template-content-panel/index.js.map +1 -0
  173. package/build/hooks/pattern-overrides.js +10 -5
  174. package/build/hooks/pattern-overrides.js.map +1 -1
  175. package/build/private-apis.js +19 -8
  176. package/build/private-apis.js.map +1 -1
  177. package/build/private-apis.native.js +72 -0
  178. package/build/private-apis.native.js.map +1 -0
  179. package/build/store/private-selectors.js +6 -1
  180. package/build/store/private-selectors.js.map +1 -1
  181. package/build/store/reducer.js +15 -0
  182. package/build/store/reducer.js.map +1 -1
  183. package/build/store/selectors.js +3 -1
  184. package/build/store/selectors.js.map +1 -1
  185. package/build-module/bindings/pattern-overrides.js +69 -1
  186. package/build-module/bindings/pattern-overrides.js.map +1 -1
  187. package/build-module/components/autosave-monitor/index.js +15 -13
  188. package/build-module/components/autosave-monitor/index.js.map +1 -1
  189. package/build-module/components/block-settings-menu/content-only-settings-menu.js +119 -0
  190. package/build-module/components/block-settings-menu/content-only-settings-menu.js.map +1 -0
  191. package/build-module/components/block-settings-menu/content-only-settings-menu.native.js +5 -0
  192. package/build-module/components/block-settings-menu/content-only-settings-menu.native.js.map +1 -0
  193. package/build-module/components/character-count/index.js +6 -0
  194. package/build-module/components/character-count/index.js.map +1 -1
  195. package/build-module/components/collapsible-block-toolbar/index.js +65 -0
  196. package/build-module/components/collapsible-block-toolbar/index.js.map +1 -0
  197. package/build-module/components/document-bar/index.js +2 -2
  198. package/build-module/components/document-bar/index.js.map +1 -1
  199. package/build-module/components/document-outline/check.js +9 -0
  200. package/build-module/components/document-outline/check.js.map +1 -1
  201. package/build-module/components/document-outline/index.js +11 -0
  202. package/build-module/components/document-outline/index.js.map +1 -1
  203. package/build-module/components/document-outline/item.js +2 -2
  204. package/build-module/components/document-outline/item.js.map +1 -1
  205. package/build-module/components/document-tools/index.js +17 -27
  206. package/build-module/components/document-tools/index.js.map +1 -1
  207. package/build-module/components/editor-canvas/edit-template-blocks-notification.js +1 -1
  208. package/build-module/components/editor-canvas/edit-template-blocks-notification.js.map +1 -1
  209. package/build-module/components/editor-canvas/index.js +19 -8
  210. package/build-module/components/editor-canvas/index.js.map +1 -1
  211. package/build-module/components/editor-history/redo.js +11 -0
  212. package/build-module/components/editor-history/redo.js.map +1 -1
  213. package/build-module/components/editor-history/undo.js +11 -0
  214. package/build-module/components/editor-history/undo.js.map +1 -1
  215. package/build-module/components/editor-snackbars/index.js +6 -0
  216. package/build-module/components/editor-snackbars/index.js.map +1 -1
  217. package/build-module/components/global-keyboard-shortcuts/index.js +8 -0
  218. package/build-module/components/global-keyboard-shortcuts/index.js.map +1 -1
  219. package/build-module/components/global-keyboard-shortcuts/register-shortcuts.js +36 -1
  220. package/build-module/components/global-keyboard-shortcuts/register-shortcuts.js.map +1 -1
  221. package/build-module/components/global-styles-provider/index.js +120 -0
  222. package/build-module/components/global-styles-provider/index.js.map +1 -0
  223. package/build-module/components/header/index.js +139 -0
  224. package/build-module/components/header/index.js.map +1 -0
  225. package/build-module/components/inserter-sidebar/index.js +59 -37
  226. package/build-module/components/inserter-sidebar/index.js.map +1 -1
  227. package/build-module/components/keyboard-shortcut-help-modal/config.js +4 -0
  228. package/build-module/components/keyboard-shortcut-help-modal/config.js.map +1 -1
  229. package/build-module/components/keyboard-shortcut-help-modal/index.js +2 -2
  230. package/build-module/components/keyboard-shortcut-help-modal/index.js.map +1 -1
  231. package/build-module/components/list-view-sidebar/index.js +1 -1
  232. package/build-module/components/list-view-sidebar/index.js.map +1 -1
  233. package/build-module/components/more-menu/copy-content-menu-item.js +52 -0
  234. package/build-module/components/more-menu/copy-content-menu-item.js.map +1 -0
  235. package/build-module/components/more-menu/index.js +111 -0
  236. package/build-module/components/more-menu/index.js.map +1 -0
  237. package/build-module/components/more-menu/tools-more-menu-group.js +16 -0
  238. package/build-module/components/more-menu/tools-more-menu-group.js.map +1 -0
  239. package/build-module/components/more-menu/view-more-menu-group.js +17 -0
  240. package/build-module/components/more-menu/view-more-menu-group.js.map +1 -0
  241. package/build-module/components/page-attributes/check.js +9 -0
  242. package/build-module/components/page-attributes/check.js.map +1 -1
  243. package/build-module/components/page-attributes/order.js +7 -0
  244. package/build-module/components/page-attributes/order.js.map +1 -1
  245. package/build-module/components/page-attributes/panel.js +13 -6
  246. package/build-module/components/page-attributes/panel.js.map +1 -1
  247. package/build-module/components/page-attributes/parent.js +7 -0
  248. package/build-module/components/page-attributes/parent.js.map +1 -1
  249. package/build-module/components/plugin-post-publish-panel/index.js +1 -1
  250. package/build-module/components/plugin-post-publish-panel/index.js.map +1 -1
  251. package/build-module/components/plugin-pre-publish-panel/index.js +1 -1
  252. package/build-module/components/plugin-pre-publish-panel/index.js.map +1 -1
  253. package/build-module/components/plugin-sidebar/index.js +1 -1
  254. package/build-module/components/plugin-sidebar/index.js.map +1 -1
  255. package/build-module/components/post-actions/actions.js +223 -70
  256. package/build-module/components/post-actions/actions.js.map +1 -1
  257. package/build-module/components/post-actions/index.js +33 -17
  258. package/build-module/components/post-actions/index.js.map +1 -1
  259. package/build-module/components/post-author/check.js +10 -0
  260. package/build-module/components/post-author/check.js.map +1 -1
  261. package/build-module/components/post-author/index.js +6 -0
  262. package/build-module/components/post-author/index.js.map +1 -1
  263. package/build-module/components/post-author/panel.js +6 -0
  264. package/build-module/components/post-author/panel.js.map +1 -1
  265. package/build-module/components/post-card-panel/index.js +9 -67
  266. package/build-module/components/post-card-panel/index.js.map +1 -1
  267. package/build-module/components/post-comments/index.js +30 -10
  268. package/build-module/components/post-comments/index.js.map +1 -1
  269. package/build-module/components/post-content-information/index.js +66 -0
  270. package/build-module/components/post-content-information/index.js.map +1 -0
  271. package/build-module/components/post-discussion/panel.js +105 -21
  272. package/build-module/components/post-discussion/panel.js.map +1 -1
  273. package/build-module/components/post-excerpt/check.js +0 -19
  274. package/build-module/components/post-excerpt/check.js.map +1 -1
  275. package/build-module/components/post-excerpt/index.js +52 -11
  276. package/build-module/components/post-excerpt/index.js.map +1 -1
  277. package/build-module/components/post-excerpt/panel.js +118 -8
  278. package/build-module/components/post-excerpt/panel.js.map +1 -1
  279. package/build-module/components/post-excerpt/plugin.js +2 -2
  280. package/build-module/components/post-excerpt/plugin.js.map +1 -1
  281. package/build-module/components/post-featured-image/index.js +1 -1
  282. package/build-module/components/post-featured-image/index.js.map +1 -1
  283. package/build-module/components/post-format/panel.js +18 -0
  284. package/build-module/components/post-format/panel.js.map +1 -0
  285. package/build-module/components/post-last-edited-panel/index.js +26 -0
  286. package/build-module/components/post-last-edited-panel/index.js.map +1 -0
  287. package/build-module/components/post-panel-row/index.js +2 -2
  288. package/build-module/components/post-panel-row/index.js.map +1 -1
  289. package/build-module/components/post-panel-section/index.js +20 -0
  290. package/build-module/components/post-panel-section/index.js.map +1 -0
  291. package/build-module/components/post-pingbacks/index.js +6 -3
  292. package/build-module/components/post-pingbacks/index.js.map +1 -1
  293. package/build-module/components/post-publish-button/post-publish-button-or-toggle.js +91 -0
  294. package/build-module/components/post-publish-button/post-publish-button-or-toggle.js.map +1 -0
  295. package/build-module/components/post-saved-state/index.js +2 -2
  296. package/build-module/components/post-saved-state/index.js.map +1 -1
  297. package/build-module/components/post-schedule/panel.js +1 -1
  298. package/build-module/components/post-schedule/panel.js.map +1 -1
  299. package/build-module/components/post-slug/panel.js +18 -0
  300. package/build-module/components/post-slug/panel.js.map +1 -0
  301. package/build-module/components/post-status/index.js +13 -13
  302. package/build-module/components/post-status/index.js.map +1 -1
  303. package/build-module/components/post-sticky/panel.js +12 -0
  304. package/build-module/components/post-sticky/panel.js.map +1 -0
  305. package/build-module/components/post-template/block-theme.js +2 -2
  306. package/build-module/components/post-template/block-theme.js.map +1 -1
  307. package/build-module/components/post-template/classic-theme.js +0 -1
  308. package/build-module/components/post-template/classic-theme.js.map +1 -1
  309. package/build-module/components/post-template/swap-template-button.js +3 -6
  310. package/build-module/components/post-template/swap-template-button.js.map +1 -1
  311. package/build-module/components/post-title/index.js +2 -2
  312. package/build-module/components/post-title/index.js.map +1 -1
  313. package/build-module/components/post-title/post-title-raw.js +2 -2
  314. package/build-module/components/post-title/post-title-raw.js.map +1 -1
  315. package/build-module/components/post-transform-panel/hooks.js +83 -0
  316. package/build-module/components/post-transform-panel/hooks.js.map +1 -0
  317. package/build-module/components/post-transform-panel/index.js +94 -0
  318. package/build-module/components/post-transform-panel/index.js.map +1 -0
  319. package/build-module/components/post-trash/panel.js +10 -0
  320. package/build-module/components/post-trash/panel.js.map +1 -0
  321. package/build-module/components/post-type-support-check/index.js +1 -1
  322. package/build-module/components/post-type-support-check/index.js.map +1 -1
  323. package/build-module/components/post-url/index.js +2 -1
  324. package/build-module/components/post-url/index.js.map +1 -1
  325. package/build-module/components/post-url/panel.js +1 -1
  326. package/build-module/components/post-url/panel.js.map +1 -1
  327. package/build-module/components/preferences-modal/enable-publish-sidebar.js +27 -0
  328. package/build-module/components/preferences-modal/enable-publish-sidebar.js.map +1 -0
  329. package/build-module/components/preferences-modal/index.js +11 -5
  330. package/build-module/components/preferences-modal/index.js.map +1 -1
  331. package/build-module/components/preview-dropdown/index.js +3 -1
  332. package/build-module/components/preview-dropdown/index.js.map +1 -1
  333. package/build-module/components/provider/disable-non-page-content-blocks.js +24 -17
  334. package/build-module/components/provider/disable-non-page-content-blocks.js.map +1 -1
  335. package/build-module/components/provider/index.js +3 -1
  336. package/build-module/components/provider/index.js.map +1 -1
  337. package/build-module/components/provider/use-block-editor-settings.js +21 -3
  338. package/build-module/components/provider/use-block-editor-settings.js.map +1 -1
  339. package/build-module/components/save-publish-panels/index.js +80 -0
  340. package/build-module/components/save-publish-panels/index.js.map +1 -0
  341. package/build-module/components/sidebar/constants.js +5 -0
  342. package/build-module/components/sidebar/constants.js.map +1 -0
  343. package/build-module/components/sidebar/header.js +46 -0
  344. package/build-module/components/sidebar/header.js.map +1 -0
  345. package/build-module/components/sidebar/index.js +149 -0
  346. package/build-module/components/sidebar/index.js.map +1 -0
  347. package/build-module/components/sidebar/post-summary.js +77 -0
  348. package/build-module/components/sidebar/post-summary.js.map +1 -0
  349. package/build-module/components/start-page-options/index.js +10 -8
  350. package/build-module/components/start-page-options/index.js.map +1 -1
  351. package/build-module/components/start-template-options/index.js +185 -0
  352. package/build-module/components/start-template-options/index.js.map +1 -0
  353. package/build-module/components/template-content-panel/index.js +31 -0
  354. package/build-module/components/template-content-panel/index.js.map +1 -0
  355. package/build-module/hooks/pattern-overrides.js +10 -5
  356. package/build-module/hooks/pattern-overrides.js.map +1 -1
  357. package/build-module/private-apis.js +19 -8
  358. package/build-module/private-apis.js.map +1 -1
  359. package/build-module/private-apis.native.js +62 -0
  360. package/build-module/private-apis.native.js.map +1 -0
  361. package/build-module/store/private-selectors.js +3 -0
  362. package/build-module/store/private-selectors.js.map +1 -1
  363. package/build-module/store/reducer.js +14 -0
  364. package/build-module/store/reducer.js.map +1 -1
  365. package/build-module/store/selectors.js +3 -1
  366. package/build-module/store/selectors.js.map +1 -1
  367. package/build-style/style-rtl.css +535 -48
  368. package/build-style/style.css +535 -48
  369. package/package.json +38 -36
  370. package/src/bindings/pattern-overrides.js +83 -1
  371. package/src/components/autocompleters/style.scss +1 -2
  372. package/src/components/autosave-monitor/index.js +15 -12
  373. package/src/components/block-settings-menu/content-only-settings-menu.js +175 -0
  374. package/src/components/block-settings-menu/content-only-settings-menu.native.js +4 -0
  375. package/src/components/block-settings-menu/style.scss +4 -0
  376. package/src/components/character-count/index.js +5 -0
  377. package/src/components/collapsible-block-toolbar/index.js +77 -0
  378. package/src/components/collapsible-block-toolbar/style.scss +80 -0
  379. package/src/components/document-bar/index.js +2 -2
  380. package/src/components/document-outline/check.js +8 -0
  381. package/src/components/document-outline/index.js +10 -0
  382. package/src/components/document-outline/item.js +2 -2
  383. package/src/components/document-tools/index.js +19 -26
  384. package/src/components/editor-canvas/edit-template-blocks-notification.js +1 -1
  385. package/src/components/editor-canvas/index.js +18 -6
  386. package/src/components/editor-history/redo.js +10 -0
  387. package/src/components/editor-history/undo.js +10 -0
  388. package/src/components/editor-snackbars/index.js +5 -0
  389. package/src/components/entities-saved-states/style.scss +7 -0
  390. package/src/components/global-keyboard-shortcuts/index.js +7 -0
  391. package/src/components/global-keyboard-shortcuts/register-shortcuts.js +42 -1
  392. package/src/components/global-styles-provider/index.js +162 -0
  393. package/src/components/header/index.js +154 -0
  394. package/src/components/header/style.scss +231 -0
  395. package/src/components/inserter-sidebar/index.js +52 -32
  396. package/src/components/inserter-sidebar/style.scss +10 -3
  397. package/src/components/keyboard-shortcut-help-modal/config.js +10 -1
  398. package/src/components/keyboard-shortcut-help-modal/index.js +2 -2
  399. package/src/components/list-view-sidebar/index.js +1 -1
  400. package/src/components/list-view-sidebar/style.scss +3 -2
  401. package/src/components/more-menu/copy-content-menu-item.js +51 -0
  402. package/src/components/more-menu/index.js +158 -0
  403. package/src/components/more-menu/tools-more-menu-group.js +11 -0
  404. package/src/components/more-menu/view-more-menu-group.js +13 -0
  405. package/src/components/page-attributes/check.js +8 -0
  406. package/src/components/page-attributes/order.js +6 -0
  407. package/src/components/page-attributes/panel.js +21 -17
  408. package/src/components/page-attributes/parent.js +6 -0
  409. package/src/components/page-attributes/test/order.js +5 -1
  410. package/src/components/plugin-post-publish-panel/index.js +1 -1
  411. package/src/components/plugin-pre-publish-panel/index.js +1 -1
  412. package/src/components/plugin-sidebar/index.js +1 -1
  413. package/src/components/post-actions/actions.js +373 -152
  414. package/src/components/post-actions/index.js +34 -33
  415. package/src/components/post-author/check.js +9 -0
  416. package/src/components/post-author/index.js +5 -0
  417. package/src/components/post-author/panel.js +5 -0
  418. package/src/components/post-card-panel/index.js +40 -141
  419. package/src/components/post-card-panel/style.scss +2 -6
  420. package/src/components/post-comments/index.js +47 -9
  421. package/src/components/post-content-information/index.js +83 -0
  422. package/src/components/post-content-information/style.scss +6 -0
  423. package/src/components/post-discussion/panel.js +108 -27
  424. package/src/components/post-discussion/style.scss +26 -0
  425. package/src/components/post-excerpt/check.js +0 -18
  426. package/src/components/post-excerpt/index.js +66 -15
  427. package/src/components/post-excerpt/panel.js +196 -19
  428. package/src/components/post-excerpt/plugin.js +2 -2
  429. package/src/components/post-excerpt/style.scss +24 -0
  430. package/src/components/post-featured-image/index.js +1 -1
  431. package/src/components/post-featured-image/style.scss +2 -8
  432. package/src/components/post-format/panel.js +22 -0
  433. package/src/components/post-format/style.scss +6 -0
  434. package/src/components/post-last-edited-panel/index.js +35 -0
  435. package/src/components/post-last-edited-panel/style.scss +6 -0
  436. package/src/components/post-last-revision/test/check.js +5 -1
  437. package/src/components/post-panel-row/index.js +2 -2
  438. package/src/components/post-panel-row/style.scss +3 -3
  439. package/src/components/post-panel-section/index.js +19 -0
  440. package/src/components/post-panel-section/style.scss +3 -0
  441. package/src/components/post-pingbacks/index.js +11 -2
  442. package/src/components/post-publish-button/post-publish-button-or-toggle.js +102 -0
  443. package/src/components/post-publish-button/test/post-publish-button-or-toggle.js +63 -0
  444. package/src/components/post-publish-panel/style.scss +48 -0
  445. package/src/components/post-publish-panel/test/__snapshots__/index.js.snap +225 -75
  446. package/src/components/post-saved-state/index.js +2 -2
  447. package/src/components/post-schedule/panel.js +1 -1
  448. package/src/components/post-schedule/style.scss +2 -4
  449. package/src/components/post-slug/panel.js +22 -0
  450. package/src/components/post-slug/style.scss +5 -0
  451. package/src/components/post-slug/test/index.js +5 -1
  452. package/src/components/post-status/index.js +88 -80
  453. package/src/components/post-status/style.scss +0 -1
  454. package/src/components/post-sticky/panel.js +18 -0
  455. package/src/components/post-template/block-theme.js +2 -2
  456. package/src/components/post-template/classic-theme.js +0 -1
  457. package/src/components/post-template/swap-template-button.js +3 -6
  458. package/src/components/post-text-editor/style.scss +1 -1
  459. package/src/components/post-title/index.js +2 -2
  460. package/src/components/post-title/post-title-raw.js +2 -2
  461. package/src/components/post-title/style.scss +1 -1
  462. package/src/components/post-transform-panel/hooks.js +114 -0
  463. package/src/components/post-transform-panel/index.js +99 -0
  464. package/src/components/post-trash/panel.js +13 -0
  465. package/src/components/post-type-support-check/index.js +1 -1
  466. package/src/components/post-type-support-check/test/index.js +2 -2
  467. package/src/components/post-url/index.js +1 -0
  468. package/src/components/post-url/panel.js +1 -1
  469. package/src/components/preferences-modal/enable-publish-sidebar.js +28 -0
  470. package/src/components/preferences-modal/index.js +17 -3
  471. package/src/components/preview-dropdown/index.js +3 -1
  472. package/src/components/provider/disable-non-page-content-blocks.js +23 -21
  473. package/src/components/provider/index.js +4 -0
  474. package/src/components/provider/use-block-editor-settings.js +19 -4
  475. package/src/components/save-publish-panels/index.js +96 -0
  476. package/src/components/save-publish-panels/style.scss +36 -0
  477. package/src/components/sidebar/constants.js +4 -0
  478. package/src/components/sidebar/header.js +49 -0
  479. package/src/components/sidebar/index.js +200 -0
  480. package/src/components/sidebar/post-summary.js +104 -0
  481. package/src/components/sidebar/style.scss +18 -0
  482. package/src/components/start-page-options/index.js +12 -5
  483. package/src/components/start-template-options/index.js +219 -0
  484. package/src/components/start-template-options/style.scss +55 -0
  485. package/src/components/template-areas/style.scss +0 -1
  486. package/src/components/template-content-panel/index.js +36 -0
  487. package/src/hooks/pattern-overrides.js +12 -6
  488. package/src/private-apis.js +22 -8
  489. package/src/private-apis.native.js +61 -0
  490. package/src/store/private-selectors.js +3 -0
  491. package/src/store/reducer.js +12 -0
  492. package/src/store/selectors.js +3 -1
  493. package/src/style.scss +11 -0
  494. package/src/components/post-slug/test/check.js +0 -17
@@ -17,6 +17,7 @@ var _mediaCategories = _interopRequireDefault(require("../media-categories"));
17
17
  var _utils = require("../../utils");
18
18
  var _store = require("../../store");
19
19
  var _lockUnlock = require("../../lock-unlock");
20
+ var _globalStylesProvider = require("../global-styles-provider");
20
21
  /**
21
22
  * WordPress dependencies
22
23
  */
@@ -26,6 +27,7 @@ var _lockUnlock = require("../../lock-unlock");
26
27
  */
27
28
 
28
29
  const EMPTY_BLOCKS_LIST = [];
30
+ const DEFAULT_STYLES = {};
29
31
  function __experimentalReusableBlocksSelect(select) {
30
32
  var _select$getEntityReco;
31
33
  return (_select$getEntityReco = select(_coreData.store).getEntityRecords('postType', 'wp_block', {
@@ -45,7 +47,7 @@ const BLOCK_EDITOR_SETTINGS = ['__experimentalBlockDirectory', '__experimentalDi
45
47
  * @return {Object} Block Editor Settings.
46
48
  */
47
49
  function useBlockEditorSettings(settings, postType, postId, renderingMode) {
48
- var _settings$__experimen, _settings$__experimen2;
50
+ var _mergedGlobalStyles$s, _settings$__experimen, _settings$__experimen2;
49
51
  const isLargeViewport = (0, _compose.useViewportMatch)('medium');
50
52
  const {
51
53
  allowRightClickOverrides,
@@ -109,6 +111,10 @@ function useBlockEditorSettings(settings, postType, postId, renderingMode) {
109
111
  sectionRootClientId: getSectionRootBlock()
110
112
  };
111
113
  }, [postType, postId, isLargeViewport, renderingMode]);
114
+ const {
115
+ merged: mergedGlobalStyles
116
+ } = (0, _globalStylesProvider.useGlobalStylesContext)();
117
+ const globalStylesData = (_mergedGlobalStyles$s = mergedGlobalStyles.styles) !== null && _mergedGlobalStyles$s !== void 0 ? _mergedGlobalStyles$s : DEFAULT_STYLES;
112
118
  const settingsBlockPatterns = (_settings$__experimen = settings.__experimentalAdditionalBlockPatterns) !== null && _settings$__experimen !== void 0 ? _settings$__experimen :
113
119
  // WP 6.0
114
120
  settings.__experimentalBlockPatterns; // WP 5.9
@@ -159,9 +165,14 @@ function useBlockEditorSettings(settings, postType, postId, renderingMode) {
159
165
  return settings.allowedBlockTypes;
160
166
  }, [settings.allowedBlockTypes, hiddenBlockTypes, blockTypes]);
161
167
  const forceDisableFocusMode = settings.focusMode === false;
168
+ const {
169
+ globalStylesDataKey,
170
+ selectBlockPatternsKey
171
+ } = (0, _lockUnlock.unlock)(_blockEditor.privateApis);
162
172
  return (0, _element.useMemo)(() => {
163
173
  const blockEditorSettings = {
164
174
  ...Object.fromEntries(Object.entries(settings).filter(([key]) => BLOCK_EDITOR_SETTINGS.includes(key))),
175
+ [globalStylesDataKey]: globalStylesData,
165
176
  allowedBlockTypes,
166
177
  allowRightClickOverrides,
167
178
  focusMode: focusMode && !forceDisableFocusMode,
@@ -170,7 +181,14 @@ function useBlockEditorSettings(settings, postType, postId, renderingMode) {
170
181
  keepCaretInsideBlock,
171
182
  mediaUpload: hasUploadPermissions ? _utils.mediaUpload : undefined,
172
183
  __experimentalBlockPatterns: blockPatterns,
173
- [(0, _lockUnlock.unlock)(_blockEditor.privateApis).selectBlockPatternsKey]: select => (0, _lockUnlock.unlock)(select(_coreData.store)).getBlockPatternsForPostType(postType),
184
+ [selectBlockPatternsKey]: select => {
185
+ const {
186
+ hasFinishedResolution,
187
+ getBlockPatternsForPostType
188
+ } = (0, _lockUnlock.unlock)(select(_coreData.store));
189
+ const patterns = getBlockPatternsForPostType(postType);
190
+ return hasFinishedResolution('getBlockPatterns') ? patterns : undefined;
191
+ },
174
192
  [(0, _lockUnlock.unlock)(_blockEditor.privateApis).reusableBlocksSelectKey]: __experimentalReusableBlocksSelect,
175
193
  __experimentalBlockPatternCategories: blockPatternCategories,
176
194
  __experimentalUserPatternCategories: userPatternCategories,
@@ -199,7 +217,7 @@ function useBlockEditorSettings(settings, postType, postId, renderingMode) {
199
217
  sectionRootClientId
200
218
  });
201
219
  return blockEditorSettings;
202
- }, [allowedBlockTypes, allowRightClickOverrides, focusMode, forceDisableFocusMode, hasFixedToolbar, isDistractionFree, keepCaretInsideBlock, settings, hasUploadPermissions, userPatternCategories, blockPatterns, blockPatternCategories, canUseUnfilteredHTML, undo, createPageEntity, userCanCreatePages, pageOnFront, pageForPosts, postType, setIsInserterOpened, sectionRootClientId]);
220
+ }, [allowedBlockTypes, allowRightClickOverrides, focusMode, forceDisableFocusMode, hasFixedToolbar, isDistractionFree, keepCaretInsideBlock, settings, hasUploadPermissions, userPatternCategories, blockPatterns, blockPatternCategories, canUseUnfilteredHTML, undo, createPageEntity, userCanCreatePages, pageOnFront, pageForPosts, postType, setIsInserterOpened, sectionRootClientId, globalStylesData, globalStylesDataKey, selectBlockPatternsKey]);
203
221
  }
204
222
  var _default = exports.default = useBlockEditorSettings;
205
223
  //# sourceMappingURL=use-block-editor-settings.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_element","require","_data","_coreData","_i18n","_preferences","_compose","_blocks","_blockEditor","_mediaCategories","_interopRequireDefault","_utils","_store","_lockUnlock","EMPTY_BLOCKS_LIST","__experimentalReusableBlocksSelect","select","_select$getEntityReco","coreStore","getEntityRecords","per_page","BLOCK_EDITOR_SETTINGS","useBlockEditorSettings","settings","postType","postId","renderingMode","_settings$__experimen","_settings$__experimen2","isLargeViewport","useViewportMatch","allowRightClickOverrides","blockTypes","focusMode","hasFixedToolbar","isDistractionFree","keepCaretInsideBlock","hasUploadPermissions","hiddenBlockTypes","canUseUnfilteredHTML","userCanCreatePages","pageOnFront","pageForPosts","userPatternCategories","restBlockPatternCategories","sectionRootClientId","useSelect","_canUser","canUser","getRawEntityRecord","getEntityRecord","getUserPatternCategories","getBlockPatternCategories","get","preferencesStore","getBlockTypes","blocksStore","getBlocksByName","getBlockAttributes","blockEditorStore","siteSettings","undefined","getSectionRootBlock","_getBlocksByName$find","_getBlocksByName$","find","clientId","tagName","_links","hasOwnProperty","page_on_front","page_for_posts","settingsBlockPatterns","__experimentalAdditionalBlockPatterns","__experimentalBlockPatterns","settingsBlockPatternCategories","__experimentalAdditionalBlockPatternCategories","__experimentalBlockPatternCategories","blockPatterns","useMemo","filter","postTypes","Array","isArray","includes","blockPatternCategories","x","index","arr","findIndex","y","name","undo","setIsInserterOpened","useDispatch","editorStore","saveEntityRecord","createPageEntity","useCallback","options","Promise","reject","message","__","allowedBlockTypes","length","defaultAllowedBlockTypes","map","type","forceDisableFocusMode","blockEditorSettings","Object","fromEntries","entries","key","mediaUpload","unlock","privateApis","selectBlockPatternsKey","getBlockPatternsForPostType","reusableBlocksSelectKey","__experimentalUserPatternCategories","__experimentalFetchLinkSuggestions","search","searchOptions","fetchLinkSuggestions","inserterMediaCategories","__experimentalFetchRichUrlData","fetchUrlData","__experimentalCanUserUseUnfilteredHTML","__experimentalUndo","outlineMode","__experimentalCreatePageEntity","__experimentalUserCanCreatePages","__experimentalPreferPatternsOnRoot","templateLock","template","__experimentalSetIsInserterOpened","lock","_default","exports","default"],"sources":["@wordpress/editor/src/components/provider/use-block-editor-settings.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useMemo, useCallback } from '@wordpress/element';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport {\n\tstore as coreStore,\n\t__experimentalFetchLinkSuggestions as fetchLinkSuggestions,\n\t__experimentalFetchUrlData as fetchUrlData,\n} from '@wordpress/core-data';\nimport { __ } from '@wordpress/i18n';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport { useViewportMatch } from '@wordpress/compose';\nimport { store as blocksStore } from '@wordpress/blocks';\nimport {\n\tprivateApis,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport inserterMediaCategories from '../media-categories';\nimport { mediaUpload } from '../../utils';\nimport { store as editorStore } from '../../store';\nimport { lock, unlock } from '../../lock-unlock';\n\nconst EMPTY_BLOCKS_LIST = [];\n\nfunction __experimentalReusableBlocksSelect( select ) {\n\treturn (\n\t\tselect( coreStore ).getEntityRecords( 'postType', 'wp_block', {\n\t\t\tper_page: -1,\n\t\t} ) ?? EMPTY_BLOCKS_LIST\n\t);\n}\n\nconst BLOCK_EDITOR_SETTINGS = [\n\t'__experimentalBlockDirectory',\n\t'__experimentalDiscussionSettings',\n\t'__experimentalFeatures',\n\t'__experimentalGlobalStylesBaseStyles',\n\t'__unstableGalleryWithImageBlocks',\n\t'alignWide',\n\t'blockInspectorTabs',\n\t'allowedMimeTypes',\n\t'bodyPlaceholder',\n\t'canLockBlocks',\n\t'capabilities',\n\t'clearBlockSelection',\n\t'codeEditingEnabled',\n\t'colors',\n\t'disableCustomColors',\n\t'disableCustomFontSizes',\n\t'disableCustomSpacingSizes',\n\t'disableCustomGradients',\n\t'disableLayoutStyles',\n\t'enableCustomLineHeight',\n\t'enableCustomSpacing',\n\t'enableCustomUnits',\n\t'enableOpenverseMediaCategory',\n\t'fontSizes',\n\t'gradients',\n\t'generateAnchors',\n\t'onNavigateToEntityRecord',\n\t'imageDefaultSize',\n\t'imageDimensions',\n\t'imageEditing',\n\t'imageSizes',\n\t'isRTL',\n\t'locale',\n\t'maxWidth',\n\t'postContentAttributes',\n\t'postsPerPage',\n\t'readOnly',\n\t'sectionRootClientId',\n\t'styles',\n\t'titlePlaceholder',\n\t'supportsLayout',\n\t'widgetTypesToHideFromLegacyWidgetBlock',\n\t'__unstableHasCustomAppender',\n\t'__unstableIsPreviewMode',\n\t'__unstableResolvedAssets',\n\t'__unstableIsBlockBasedTheme',\n\t'__experimentalArchiveTitleTypeLabel',\n\t'__experimentalArchiveTitleNameLabel',\n];\n\n/**\n * React hook used to compute the block editor settings to use for the post editor.\n *\n * @param {Object} settings EditorProvider settings prop.\n * @param {string} postType Editor root level post type.\n * @param {string} postId Editor root level post ID.\n * @param {string} renderingMode Editor rendering mode.\n *\n * @return {Object} Block Editor Settings.\n */\nfunction useBlockEditorSettings( settings, postType, postId, renderingMode ) {\n\tconst isLargeViewport = useViewportMatch( 'medium' );\n\tconst {\n\t\tallowRightClickOverrides,\n\t\tblockTypes,\n\t\tfocusMode,\n\t\thasFixedToolbar,\n\t\tisDistractionFree,\n\t\tkeepCaretInsideBlock,\n\t\thasUploadPermissions,\n\t\thiddenBlockTypes,\n\t\tcanUseUnfilteredHTML,\n\t\tuserCanCreatePages,\n\t\tpageOnFront,\n\t\tpageForPosts,\n\t\tuserPatternCategories,\n\t\trestBlockPatternCategories,\n\t\tsectionRootClientId,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tcanUser,\n\t\t\t\tgetRawEntityRecord,\n\t\t\t\tgetEntityRecord,\n\t\t\t\tgetUserPatternCategories,\n\t\t\t\tgetBlockPatternCategories,\n\t\t\t} = select( coreStore );\n\t\t\tconst { get } = select( preferencesStore );\n\t\t\tconst { getBlockTypes } = select( blocksStore );\n\t\t\tconst { getBlocksByName, getBlockAttributes } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\tconst siteSettings = canUser( 'read', 'settings' )\n\t\t\t\t? getEntityRecord( 'root', 'site' )\n\t\t\t\t: undefined;\n\n\t\t\tfunction getSectionRootBlock() {\n\t\t\t\tif ( renderingMode === 'template-locked' ) {\n\t\t\t\t\treturn getBlocksByName( 'core/post-content' )?.[ 0 ] ?? '';\n\t\t\t\t}\n\n\t\t\t\treturn (\n\t\t\t\t\tgetBlocksByName( 'core/group' ).find(\n\t\t\t\t\t\t( clientId ) =>\n\t\t\t\t\t\t\tgetBlockAttributes( clientId )?.tagName === 'main'\n\t\t\t\t\t) ?? ''\n\t\t\t\t);\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\tallowRightClickOverrides: get(\n\t\t\t\t\t'core',\n\t\t\t\t\t'allowRightClickOverrides'\n\t\t\t\t),\n\t\t\t\tblockTypes: getBlockTypes(),\n\t\t\t\tcanUseUnfilteredHTML: getRawEntityRecord(\n\t\t\t\t\t'postType',\n\t\t\t\t\tpostType,\n\t\t\t\t\tpostId\n\t\t\t\t)?._links?.hasOwnProperty( 'wp:action-unfiltered-html' ),\n\t\t\t\tfocusMode: get( 'core', 'focusMode' ),\n\t\t\t\thasFixedToolbar:\n\t\t\t\t\tget( 'core', 'fixedToolbar' ) || ! isLargeViewport,\n\t\t\t\thiddenBlockTypes: get( 'core', 'hiddenBlockTypes' ),\n\t\t\t\tisDistractionFree: get( 'core', 'distractionFree' ),\n\t\t\t\tkeepCaretInsideBlock: get( 'core', 'keepCaretInsideBlock' ),\n\t\t\t\thasUploadPermissions: canUser( 'create', 'media' ) ?? true,\n\t\t\t\tuserCanCreatePages: canUser( 'create', 'pages' ),\n\t\t\t\tpageOnFront: siteSettings?.page_on_front,\n\t\t\t\tpageForPosts: siteSettings?.page_for_posts,\n\t\t\t\tuserPatternCategories: getUserPatternCategories(),\n\t\t\t\trestBlockPatternCategories: getBlockPatternCategories(),\n\t\t\t\tsectionRootClientId: getSectionRootBlock(),\n\t\t\t};\n\t\t},\n\t\t[ postType, postId, isLargeViewport, renderingMode ]\n\t);\n\n\tconst settingsBlockPatterns =\n\t\tsettings.__experimentalAdditionalBlockPatterns ?? // WP 6.0\n\t\tsettings.__experimentalBlockPatterns; // WP 5.9\n\tconst settingsBlockPatternCategories =\n\t\tsettings.__experimentalAdditionalBlockPatternCategories ?? // WP 6.0\n\t\tsettings.__experimentalBlockPatternCategories; // WP 5.9\n\n\tconst blockPatterns = useMemo(\n\t\t() =>\n\t\t\t[ ...( settingsBlockPatterns || [] ) ].filter(\n\t\t\t\t( { postTypes } ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t! postTypes ||\n\t\t\t\t\t\t( Array.isArray( postTypes ) &&\n\t\t\t\t\t\t\tpostTypes.includes( postType ) )\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t),\n\t\t[ settingsBlockPatterns, postType ]\n\t);\n\n\tconst blockPatternCategories = useMemo(\n\t\t() =>\n\t\t\t[\n\t\t\t\t...( settingsBlockPatternCategories || [] ),\n\t\t\t\t...( restBlockPatternCategories || [] ),\n\t\t\t].filter(\n\t\t\t\t( x, index, arr ) =>\n\t\t\t\t\tindex === arr.findIndex( ( y ) => x.name === y.name )\n\t\t\t),\n\t\t[ settingsBlockPatternCategories, restBlockPatternCategories ]\n\t);\n\n\tconst { undo, setIsInserterOpened } = useDispatch( editorStore );\n\n\tconst { saveEntityRecord } = useDispatch( coreStore );\n\n\t/**\n\t * Creates a Post entity.\n\t * This is utilised by the Link UI to allow for on-the-fly creation of Posts/Pages.\n\t *\n\t * @param {Object} options parameters for the post being created. These mirror those used on 3rd param of saveEntityRecord.\n\t * @return {Object} the post type object that was created.\n\t */\n\tconst createPageEntity = useCallback(\n\t\t( options ) => {\n\t\t\tif ( ! userCanCreatePages ) {\n\t\t\t\treturn Promise.reject( {\n\t\t\t\t\tmessage: __(\n\t\t\t\t\t\t'You do not have permission to create Pages.'\n\t\t\t\t\t),\n\t\t\t\t} );\n\t\t\t}\n\t\t\treturn saveEntityRecord( 'postType', 'page', options );\n\t\t},\n\t\t[ saveEntityRecord, userCanCreatePages ]\n\t);\n\n\tconst allowedBlockTypes = useMemo( () => {\n\t\t// Omit hidden block types if exists and non-empty.\n\t\tif ( hiddenBlockTypes && hiddenBlockTypes.length > 0 ) {\n\t\t\t// Defer to passed setting for `allowedBlockTypes` if provided as\n\t\t\t// anything other than `true` (where `true` is equivalent to allow\n\t\t\t// all block types).\n\t\t\tconst defaultAllowedBlockTypes =\n\t\t\t\ttrue === settings.allowedBlockTypes\n\t\t\t\t\t? blockTypes.map( ( { name } ) => name )\n\t\t\t\t\t: settings.allowedBlockTypes || [];\n\n\t\t\treturn defaultAllowedBlockTypes.filter(\n\t\t\t\t( type ) => ! hiddenBlockTypes.includes( type )\n\t\t\t);\n\t\t}\n\n\t\treturn settings.allowedBlockTypes;\n\t}, [ settings.allowedBlockTypes, hiddenBlockTypes, blockTypes ] );\n\n\tconst forceDisableFocusMode = settings.focusMode === false;\n\n\treturn useMemo( () => {\n\t\tconst blockEditorSettings = {\n\t\t\t...Object.fromEntries(\n\t\t\t\tObject.entries( settings ).filter( ( [ key ] ) =>\n\t\t\t\t\tBLOCK_EDITOR_SETTINGS.includes( key )\n\t\t\t\t)\n\t\t\t),\n\t\t\tallowedBlockTypes,\n\t\t\tallowRightClickOverrides,\n\t\t\tfocusMode: focusMode && ! forceDisableFocusMode,\n\t\t\thasFixedToolbar,\n\t\t\tisDistractionFree,\n\t\t\tkeepCaretInsideBlock,\n\t\t\tmediaUpload: hasUploadPermissions ? mediaUpload : undefined,\n\t\t\t__experimentalBlockPatterns: blockPatterns,\n\t\t\t[ unlock( privateApis ).selectBlockPatternsKey ]: ( select ) =>\n\t\t\t\tunlock( select( coreStore ) ).getBlockPatternsForPostType(\n\t\t\t\t\tpostType\n\t\t\t\t),\n\t\t\t[ unlock( privateApis ).reusableBlocksSelectKey ]:\n\t\t\t\t__experimentalReusableBlocksSelect,\n\t\t\t__experimentalBlockPatternCategories: blockPatternCategories,\n\t\t\t__experimentalUserPatternCategories: userPatternCategories,\n\t\t\t__experimentalFetchLinkSuggestions: ( search, searchOptions ) =>\n\t\t\t\tfetchLinkSuggestions( search, searchOptions, settings ),\n\t\t\tinserterMediaCategories,\n\t\t\t__experimentalFetchRichUrlData: fetchUrlData,\n\t\t\t// Todo: This only checks the top level post, not the post within a template or any other entity that can be edited.\n\t\t\t// This might be better as a generic \"canUser\" selector.\n\t\t\t__experimentalCanUserUseUnfilteredHTML: canUseUnfilteredHTML,\n\t\t\t//Todo: this is only needed for native and should probably be removed.\n\t\t\t__experimentalUndo: undo,\n\t\t\t// Check whether we want all site editor frames to have outlines\n\t\t\t// including the navigation / pattern / parts editors.\n\t\t\toutlineMode: postType === 'wp_template',\n\t\t\t// Check these two properties: they were not present in the site editor.\n\t\t\t__experimentalCreatePageEntity: createPageEntity,\n\t\t\t__experimentalUserCanCreatePages: userCanCreatePages,\n\t\t\tpageOnFront,\n\t\t\tpageForPosts,\n\t\t\t__experimentalPreferPatternsOnRoot: postType === 'wp_template',\n\t\t\ttemplateLock:\n\t\t\t\tpostType === 'wp_navigation' ? 'insert' : settings.templateLock,\n\t\t\ttemplate:\n\t\t\t\tpostType === 'wp_navigation'\n\t\t\t\t\t? [ [ 'core/navigation', {}, [] ] ]\n\t\t\t\t\t: settings.template,\n\t\t\t__experimentalSetIsInserterOpened: setIsInserterOpened,\n\t\t};\n\t\tlock( blockEditorSettings, {\n\t\t\tsectionRootClientId,\n\t\t} );\n\t\treturn blockEditorSettings;\n\t}, [\n\t\tallowedBlockTypes,\n\t\tallowRightClickOverrides,\n\t\tfocusMode,\n\t\tforceDisableFocusMode,\n\t\thasFixedToolbar,\n\t\tisDistractionFree,\n\t\tkeepCaretInsideBlock,\n\t\tsettings,\n\t\thasUploadPermissions,\n\t\tuserPatternCategories,\n\t\tblockPatterns,\n\t\tblockPatternCategories,\n\t\tcanUseUnfilteredHTML,\n\t\tundo,\n\t\tcreatePageEntity,\n\t\tuserCanCreatePages,\n\t\tpageOnFront,\n\t\tpageForPosts,\n\t\tpostType,\n\t\tsetIsInserterOpened,\n\t\tsectionRootClientId,\n\t] );\n}\n\nexport default useBlockEditorSettings;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_element","require","_data","_coreData","_i18n","_preferences","_compose","_blocks","_blockEditor","_mediaCategories","_interopRequireDefault","_utils","_store","_lockUnlock","_globalStylesProvider","EMPTY_BLOCKS_LIST","DEFAULT_STYLES","__experimentalReusableBlocksSelect","select","_select$getEntityReco","coreStore","getEntityRecords","per_page","BLOCK_EDITOR_SETTINGS","useBlockEditorSettings","settings","postType","postId","renderingMode","_mergedGlobalStyles$s","_settings$__experimen","_settings$__experimen2","isLargeViewport","useViewportMatch","allowRightClickOverrides","blockTypes","focusMode","hasFixedToolbar","isDistractionFree","keepCaretInsideBlock","hasUploadPermissions","hiddenBlockTypes","canUseUnfilteredHTML","userCanCreatePages","pageOnFront","pageForPosts","userPatternCategories","restBlockPatternCategories","sectionRootClientId","useSelect","_canUser","canUser","getRawEntityRecord","getEntityRecord","getUserPatternCategories","getBlockPatternCategories","get","preferencesStore","getBlockTypes","blocksStore","getBlocksByName","getBlockAttributes","blockEditorStore","siteSettings","undefined","getSectionRootBlock","_getBlocksByName$find","_getBlocksByName$","find","clientId","tagName","_links","hasOwnProperty","page_on_front","page_for_posts","merged","mergedGlobalStyles","useGlobalStylesContext","globalStylesData","styles","settingsBlockPatterns","__experimentalAdditionalBlockPatterns","__experimentalBlockPatterns","settingsBlockPatternCategories","__experimentalAdditionalBlockPatternCategories","__experimentalBlockPatternCategories","blockPatterns","useMemo","filter","postTypes","Array","isArray","includes","blockPatternCategories","x","index","arr","findIndex","y","name","undo","setIsInserterOpened","useDispatch","editorStore","saveEntityRecord","createPageEntity","useCallback","options","Promise","reject","message","__","allowedBlockTypes","length","defaultAllowedBlockTypes","map","type","forceDisableFocusMode","globalStylesDataKey","selectBlockPatternsKey","unlock","privateApis","blockEditorSettings","Object","fromEntries","entries","key","mediaUpload","hasFinishedResolution","getBlockPatternsForPostType","patterns","reusableBlocksSelectKey","__experimentalUserPatternCategories","__experimentalFetchLinkSuggestions","search","searchOptions","fetchLinkSuggestions","inserterMediaCategories","__experimentalFetchRichUrlData","fetchUrlData","__experimentalCanUserUseUnfilteredHTML","__experimentalUndo","outlineMode","__experimentalCreatePageEntity","__experimentalUserCanCreatePages","__experimentalPreferPatternsOnRoot","templateLock","template","__experimentalSetIsInserterOpened","lock","_default","exports","default"],"sources":["@wordpress/editor/src/components/provider/use-block-editor-settings.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useMemo, useCallback } from '@wordpress/element';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport {\n\tstore as coreStore,\n\t__experimentalFetchLinkSuggestions as fetchLinkSuggestions,\n\t__experimentalFetchUrlData as fetchUrlData,\n} from '@wordpress/core-data';\nimport { __ } from '@wordpress/i18n';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport { useViewportMatch } from '@wordpress/compose';\nimport { store as blocksStore } from '@wordpress/blocks';\nimport {\n\tprivateApis,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport inserterMediaCategories from '../media-categories';\nimport { mediaUpload } from '../../utils';\nimport { store as editorStore } from '../../store';\nimport { lock, unlock } from '../../lock-unlock';\nimport { useGlobalStylesContext } from '../global-styles-provider';\n\nconst EMPTY_BLOCKS_LIST = [];\nconst DEFAULT_STYLES = {};\n\nfunction __experimentalReusableBlocksSelect( select ) {\n\treturn (\n\t\tselect( coreStore ).getEntityRecords( 'postType', 'wp_block', {\n\t\t\tper_page: -1,\n\t\t} ) ?? EMPTY_BLOCKS_LIST\n\t);\n}\n\nconst BLOCK_EDITOR_SETTINGS = [\n\t'__experimentalBlockDirectory',\n\t'__experimentalDiscussionSettings',\n\t'__experimentalFeatures',\n\t'__experimentalGlobalStylesBaseStyles',\n\t'__unstableGalleryWithImageBlocks',\n\t'alignWide',\n\t'blockInspectorTabs',\n\t'allowedMimeTypes',\n\t'bodyPlaceholder',\n\t'canLockBlocks',\n\t'capabilities',\n\t'clearBlockSelection',\n\t'codeEditingEnabled',\n\t'colors',\n\t'disableCustomColors',\n\t'disableCustomFontSizes',\n\t'disableCustomSpacingSizes',\n\t'disableCustomGradients',\n\t'disableLayoutStyles',\n\t'enableCustomLineHeight',\n\t'enableCustomSpacing',\n\t'enableCustomUnits',\n\t'enableOpenverseMediaCategory',\n\t'fontSizes',\n\t'gradients',\n\t'generateAnchors',\n\t'onNavigateToEntityRecord',\n\t'imageDefaultSize',\n\t'imageDimensions',\n\t'imageEditing',\n\t'imageSizes',\n\t'isRTL',\n\t'locale',\n\t'maxWidth',\n\t'postContentAttributes',\n\t'postsPerPage',\n\t'readOnly',\n\t'sectionRootClientId',\n\t'styles',\n\t'titlePlaceholder',\n\t'supportsLayout',\n\t'widgetTypesToHideFromLegacyWidgetBlock',\n\t'__unstableHasCustomAppender',\n\t'__unstableIsPreviewMode',\n\t'__unstableResolvedAssets',\n\t'__unstableIsBlockBasedTheme',\n\t'__experimentalArchiveTitleTypeLabel',\n\t'__experimentalArchiveTitleNameLabel',\n];\n\n/**\n * React hook used to compute the block editor settings to use for the post editor.\n *\n * @param {Object} settings EditorProvider settings prop.\n * @param {string} postType Editor root level post type.\n * @param {string} postId Editor root level post ID.\n * @param {string} renderingMode Editor rendering mode.\n *\n * @return {Object} Block Editor Settings.\n */\nfunction useBlockEditorSettings( settings, postType, postId, renderingMode ) {\n\tconst isLargeViewport = useViewportMatch( 'medium' );\n\tconst {\n\t\tallowRightClickOverrides,\n\t\tblockTypes,\n\t\tfocusMode,\n\t\thasFixedToolbar,\n\t\tisDistractionFree,\n\t\tkeepCaretInsideBlock,\n\t\thasUploadPermissions,\n\t\thiddenBlockTypes,\n\t\tcanUseUnfilteredHTML,\n\t\tuserCanCreatePages,\n\t\tpageOnFront,\n\t\tpageForPosts,\n\t\tuserPatternCategories,\n\t\trestBlockPatternCategories,\n\t\tsectionRootClientId,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tcanUser,\n\t\t\t\tgetRawEntityRecord,\n\t\t\t\tgetEntityRecord,\n\t\t\t\tgetUserPatternCategories,\n\t\t\t\tgetBlockPatternCategories,\n\t\t\t} = select( coreStore );\n\t\t\tconst { get } = select( preferencesStore );\n\t\t\tconst { getBlockTypes } = select( blocksStore );\n\t\t\tconst { getBlocksByName, getBlockAttributes } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\tconst siteSettings = canUser( 'read', 'settings' )\n\t\t\t\t? getEntityRecord( 'root', 'site' )\n\t\t\t\t: undefined;\n\n\t\t\tfunction getSectionRootBlock() {\n\t\t\t\tif ( renderingMode === 'template-locked' ) {\n\t\t\t\t\treturn getBlocksByName( 'core/post-content' )?.[ 0 ] ?? '';\n\t\t\t\t}\n\n\t\t\t\treturn (\n\t\t\t\t\tgetBlocksByName( 'core/group' ).find(\n\t\t\t\t\t\t( clientId ) =>\n\t\t\t\t\t\t\tgetBlockAttributes( clientId )?.tagName === 'main'\n\t\t\t\t\t) ?? ''\n\t\t\t\t);\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\tallowRightClickOverrides: get(\n\t\t\t\t\t'core',\n\t\t\t\t\t'allowRightClickOverrides'\n\t\t\t\t),\n\t\t\t\tblockTypes: getBlockTypes(),\n\t\t\t\tcanUseUnfilteredHTML: getRawEntityRecord(\n\t\t\t\t\t'postType',\n\t\t\t\t\tpostType,\n\t\t\t\t\tpostId\n\t\t\t\t)?._links?.hasOwnProperty( 'wp:action-unfiltered-html' ),\n\t\t\t\tfocusMode: get( 'core', 'focusMode' ),\n\t\t\t\thasFixedToolbar:\n\t\t\t\t\tget( 'core', 'fixedToolbar' ) || ! isLargeViewport,\n\t\t\t\thiddenBlockTypes: get( 'core', 'hiddenBlockTypes' ),\n\t\t\t\tisDistractionFree: get( 'core', 'distractionFree' ),\n\t\t\t\tkeepCaretInsideBlock: get( 'core', 'keepCaretInsideBlock' ),\n\t\t\t\thasUploadPermissions: canUser( 'create', 'media' ) ?? true,\n\t\t\t\tuserCanCreatePages: canUser( 'create', 'pages' ),\n\t\t\t\tpageOnFront: siteSettings?.page_on_front,\n\t\t\t\tpageForPosts: siteSettings?.page_for_posts,\n\t\t\t\tuserPatternCategories: getUserPatternCategories(),\n\t\t\t\trestBlockPatternCategories: getBlockPatternCategories(),\n\t\t\t\tsectionRootClientId: getSectionRootBlock(),\n\t\t\t};\n\t\t},\n\t\t[ postType, postId, isLargeViewport, renderingMode ]\n\t);\n\n\tconst { merged: mergedGlobalStyles } = useGlobalStylesContext();\n\tconst globalStylesData = mergedGlobalStyles.styles ?? DEFAULT_STYLES;\n\n\tconst settingsBlockPatterns =\n\t\tsettings.__experimentalAdditionalBlockPatterns ?? // WP 6.0\n\t\tsettings.__experimentalBlockPatterns; // WP 5.9\n\tconst settingsBlockPatternCategories =\n\t\tsettings.__experimentalAdditionalBlockPatternCategories ?? // WP 6.0\n\t\tsettings.__experimentalBlockPatternCategories; // WP 5.9\n\n\tconst blockPatterns = useMemo(\n\t\t() =>\n\t\t\t[ ...( settingsBlockPatterns || [] ) ].filter(\n\t\t\t\t( { postTypes } ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t! postTypes ||\n\t\t\t\t\t\t( Array.isArray( postTypes ) &&\n\t\t\t\t\t\t\tpostTypes.includes( postType ) )\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t),\n\t\t[ settingsBlockPatterns, postType ]\n\t);\n\n\tconst blockPatternCategories = useMemo(\n\t\t() =>\n\t\t\t[\n\t\t\t\t...( settingsBlockPatternCategories || [] ),\n\t\t\t\t...( restBlockPatternCategories || [] ),\n\t\t\t].filter(\n\t\t\t\t( x, index, arr ) =>\n\t\t\t\t\tindex === arr.findIndex( ( y ) => x.name === y.name )\n\t\t\t),\n\t\t[ settingsBlockPatternCategories, restBlockPatternCategories ]\n\t);\n\n\tconst { undo, setIsInserterOpened } = useDispatch( editorStore );\n\n\tconst { saveEntityRecord } = useDispatch( coreStore );\n\n\t/**\n\t * Creates a Post entity.\n\t * This is utilised by the Link UI to allow for on-the-fly creation of Posts/Pages.\n\t *\n\t * @param {Object} options parameters for the post being created. These mirror those used on 3rd param of saveEntityRecord.\n\t * @return {Object} the post type object that was created.\n\t */\n\tconst createPageEntity = useCallback(\n\t\t( options ) => {\n\t\t\tif ( ! userCanCreatePages ) {\n\t\t\t\treturn Promise.reject( {\n\t\t\t\t\tmessage: __(\n\t\t\t\t\t\t'You do not have permission to create Pages.'\n\t\t\t\t\t),\n\t\t\t\t} );\n\t\t\t}\n\t\t\treturn saveEntityRecord( 'postType', 'page', options );\n\t\t},\n\t\t[ saveEntityRecord, userCanCreatePages ]\n\t);\n\n\tconst allowedBlockTypes = useMemo( () => {\n\t\t// Omit hidden block types if exists and non-empty.\n\t\tif ( hiddenBlockTypes && hiddenBlockTypes.length > 0 ) {\n\t\t\t// Defer to passed setting for `allowedBlockTypes` if provided as\n\t\t\t// anything other than `true` (where `true` is equivalent to allow\n\t\t\t// all block types).\n\t\t\tconst defaultAllowedBlockTypes =\n\t\t\t\ttrue === settings.allowedBlockTypes\n\t\t\t\t\t? blockTypes.map( ( { name } ) => name )\n\t\t\t\t\t: settings.allowedBlockTypes || [];\n\n\t\t\treturn defaultAllowedBlockTypes.filter(\n\t\t\t\t( type ) => ! hiddenBlockTypes.includes( type )\n\t\t\t);\n\t\t}\n\n\t\treturn settings.allowedBlockTypes;\n\t}, [ settings.allowedBlockTypes, hiddenBlockTypes, blockTypes ] );\n\n\tconst forceDisableFocusMode = settings.focusMode === false;\n\tconst { globalStylesDataKey, selectBlockPatternsKey } =\n\t\tunlock( privateApis );\n\n\treturn useMemo( () => {\n\t\tconst blockEditorSettings = {\n\t\t\t...Object.fromEntries(\n\t\t\t\tObject.entries( settings ).filter( ( [ key ] ) =>\n\t\t\t\t\tBLOCK_EDITOR_SETTINGS.includes( key )\n\t\t\t\t)\n\t\t\t),\n\t\t\t[ globalStylesDataKey ]: globalStylesData,\n\t\t\tallowedBlockTypes,\n\t\t\tallowRightClickOverrides,\n\t\t\tfocusMode: focusMode && ! forceDisableFocusMode,\n\t\t\thasFixedToolbar,\n\t\t\tisDistractionFree,\n\t\t\tkeepCaretInsideBlock,\n\t\t\tmediaUpload: hasUploadPermissions ? mediaUpload : undefined,\n\t\t\t__experimentalBlockPatterns: blockPatterns,\n\t\t\t[ selectBlockPatternsKey ]: ( select ) => {\n\t\t\t\tconst { hasFinishedResolution, getBlockPatternsForPostType } =\n\t\t\t\t\tunlock( select( coreStore ) );\n\t\t\t\tconst patterns = getBlockPatternsForPostType( postType );\n\t\t\t\treturn hasFinishedResolution( 'getBlockPatterns' )\n\t\t\t\t\t? patterns\n\t\t\t\t\t: undefined;\n\t\t\t},\n\t\t\t[ unlock( privateApis ).reusableBlocksSelectKey ]:\n\t\t\t\t__experimentalReusableBlocksSelect,\n\t\t\t__experimentalBlockPatternCategories: blockPatternCategories,\n\t\t\t__experimentalUserPatternCategories: userPatternCategories,\n\t\t\t__experimentalFetchLinkSuggestions: ( search, searchOptions ) =>\n\t\t\t\tfetchLinkSuggestions( search, searchOptions, settings ),\n\t\t\tinserterMediaCategories,\n\t\t\t__experimentalFetchRichUrlData: fetchUrlData,\n\t\t\t// Todo: This only checks the top level post, not the post within a template or any other entity that can be edited.\n\t\t\t// This might be better as a generic \"canUser\" selector.\n\t\t\t__experimentalCanUserUseUnfilteredHTML: canUseUnfilteredHTML,\n\t\t\t//Todo: this is only needed for native and should probably be removed.\n\t\t\t__experimentalUndo: undo,\n\t\t\t// Check whether we want all site editor frames to have outlines\n\t\t\t// including the navigation / pattern / parts editors.\n\t\t\toutlineMode: postType === 'wp_template',\n\t\t\t// Check these two properties: they were not present in the site editor.\n\t\t\t__experimentalCreatePageEntity: createPageEntity,\n\t\t\t__experimentalUserCanCreatePages: userCanCreatePages,\n\t\t\tpageOnFront,\n\t\t\tpageForPosts,\n\t\t\t__experimentalPreferPatternsOnRoot: postType === 'wp_template',\n\t\t\ttemplateLock:\n\t\t\t\tpostType === 'wp_navigation' ? 'insert' : settings.templateLock,\n\t\t\ttemplate:\n\t\t\t\tpostType === 'wp_navigation'\n\t\t\t\t\t? [ [ 'core/navigation', {}, [] ] ]\n\t\t\t\t\t: settings.template,\n\t\t\t__experimentalSetIsInserterOpened: setIsInserterOpened,\n\t\t};\n\t\tlock( blockEditorSettings, {\n\t\t\tsectionRootClientId,\n\t\t} );\n\t\treturn blockEditorSettings;\n\t}, [\n\t\tallowedBlockTypes,\n\t\tallowRightClickOverrides,\n\t\tfocusMode,\n\t\tforceDisableFocusMode,\n\t\thasFixedToolbar,\n\t\tisDistractionFree,\n\t\tkeepCaretInsideBlock,\n\t\tsettings,\n\t\thasUploadPermissions,\n\t\tuserPatternCategories,\n\t\tblockPatterns,\n\t\tblockPatternCategories,\n\t\tcanUseUnfilteredHTML,\n\t\tundo,\n\t\tcreatePageEntity,\n\t\tuserCanCreatePages,\n\t\tpageOnFront,\n\t\tpageForPosts,\n\t\tpostType,\n\t\tsetIsInserterOpened,\n\t\tsectionRootClientId,\n\t\tglobalStylesData,\n\t\tglobalStylesDataKey,\n\t\tselectBlockPatternsKey,\n\t] );\n}\n\nexport default useBlockEditorSettings;\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,89 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.ActionsPanelFill = void 0;
8
+ exports.default = SavePublishPanels;
9
+ var _react = require("react");
10
+ var _data = require("@wordpress/data");
11
+ var _components = require("@wordpress/components");
12
+ var _i18n = require("@wordpress/i18n");
13
+ var _element = require("@wordpress/element");
14
+ var _entitiesSavedStates = _interopRequireDefault(require("../entities-saved-states"));
15
+ var _postPublishPanel = _interopRequireDefault(require("../post-publish-panel"));
16
+ var _pluginPrePublishPanel = _interopRequireDefault(require("../plugin-pre-publish-panel"));
17
+ var _pluginPostPublishPanel = _interopRequireDefault(require("../plugin-post-publish-panel"));
18
+ var _store = require("../../store");
19
+ /**
20
+ * WordPress dependencies
21
+ */
22
+
23
+ /**
24
+ * Internal dependencies
25
+ */
26
+
27
+ const {
28
+ Fill,
29
+ Slot
30
+ } = (0, _components.createSlotFill)('ActionsPanel');
31
+ const ActionsPanelFill = exports.ActionsPanelFill = Fill;
32
+ function SavePublishPanels({
33
+ setEntitiesSavedStatesCallback,
34
+ closeEntitiesSavedStates,
35
+ isEntitiesSavedStatesOpen,
36
+ forceIsDirtyPublishPanel
37
+ }) {
38
+ const {
39
+ closePublishSidebar,
40
+ togglePublishSidebar
41
+ } = (0, _data.useDispatch)(_store.store);
42
+ const {
43
+ publishSidebarOpened,
44
+ hasNonPostEntityChanges
45
+ } = (0, _data.useSelect)(select => ({
46
+ publishSidebarOpened: select(_store.store).isPublishSidebarOpened(),
47
+ hasNonPostEntityChanges: select(_store.store).hasNonPostEntityChanges()
48
+ }), []);
49
+ const openEntitiesSavedStates = (0, _element.useCallback)(() => setEntitiesSavedStatesCallback(true), []);
50
+
51
+ // It is ok for these components to be unmounted when not in visual use.
52
+ // We don't want more than one present at a time, decide which to render.
53
+ let unmountableContent;
54
+ if (publishSidebarOpened) {
55
+ unmountableContent = (0, _react.createElement)(_postPublishPanel.default, {
56
+ onClose: closePublishSidebar,
57
+ forceIsDirty: forceIsDirtyPublishPanel,
58
+ PrePublishExtension: _pluginPrePublishPanel.default.Slot,
59
+ PostPublishExtension: _pluginPostPublishPanel.default.Slot
60
+ });
61
+ } else if (hasNonPostEntityChanges) {
62
+ unmountableContent = (0, _react.createElement)("div", {
63
+ className: "editor-layout__toggle-entities-saved-states-panel"
64
+ }, (0, _react.createElement)(_components.Button, {
65
+ variant: "secondary",
66
+ className: "editor-layout__toggle-entities-saved-states-panel-button",
67
+ onClick: openEntitiesSavedStates,
68
+ "aria-expanded": false
69
+ }, (0, _i18n.__)('Open save panel')));
70
+ } else {
71
+ unmountableContent = (0, _react.createElement)("div", {
72
+ className: "editor-layout__toggle-publish-panel"
73
+ }, (0, _react.createElement)(_components.Button, {
74
+ variant: "secondary",
75
+ className: "editor-layout__toggle-publish-panel-button",
76
+ onClick: togglePublishSidebar,
77
+ "aria-expanded": false
78
+ }, (0, _i18n.__)('Open publish panel')));
79
+ }
80
+
81
+ // Since EntitiesSavedStates controls its own panel, we can keep it
82
+ // always mounted to retain its own component state (such as checkboxes).
83
+ return (0, _react.createElement)(_react.Fragment, null, isEntitiesSavedStatesOpen && (0, _react.createElement)(_entitiesSavedStates.default, {
84
+ close: closeEntitiesSavedStates
85
+ }), (0, _react.createElement)(Slot, {
86
+ bubblesVirtually: true
87
+ }), !isEntitiesSavedStatesOpen && unmountableContent);
88
+ }
89
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_data","require","_components","_i18n","_element","_entitiesSavedStates","_interopRequireDefault","_postPublishPanel","_pluginPrePublishPanel","_pluginPostPublishPanel","_store","Fill","Slot","createSlotFill","ActionsPanelFill","exports","SavePublishPanels","setEntitiesSavedStatesCallback","closeEntitiesSavedStates","isEntitiesSavedStatesOpen","forceIsDirtyPublishPanel","closePublishSidebar","togglePublishSidebar","useDispatch","editorStore","publishSidebarOpened","hasNonPostEntityChanges","useSelect","select","isPublishSidebarOpened","openEntitiesSavedStates","useCallback","unmountableContent","_react","createElement","default","onClose","forceIsDirty","PrePublishExtension","PluginPrePublishPanel","PostPublishExtension","PluginPostPublishPanel","className","Button","variant","onClick","__","Fragment","close","bubblesVirtually"],"sources":["@wordpress/editor/src/components/save-publish-panels/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { Button, createSlotFill } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useCallback } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport EntitiesSavedStates from '../entities-saved-states';\nimport PostPublishPanel from '../post-publish-panel';\nimport PluginPrePublishPanel from '../plugin-pre-publish-panel';\nimport PluginPostPublishPanel from '../plugin-post-publish-panel';\nimport { store as editorStore } from '../../store';\n\nconst { Fill, Slot } = createSlotFill( 'ActionsPanel' );\n\nexport const ActionsPanelFill = Fill;\n\nexport default function SavePublishPanels( {\n\tsetEntitiesSavedStatesCallback,\n\tcloseEntitiesSavedStates,\n\tisEntitiesSavedStatesOpen,\n\tforceIsDirtyPublishPanel,\n} ) {\n\tconst { closePublishSidebar, togglePublishSidebar } =\n\t\tuseDispatch( editorStore );\n\tconst { publishSidebarOpened, hasNonPostEntityChanges } = useSelect(\n\t\t( select ) => ( {\n\t\t\tpublishSidebarOpened:\n\t\t\t\tselect( editorStore ).isPublishSidebarOpened(),\n\t\t\thasNonPostEntityChanges:\n\t\t\t\tselect( editorStore ).hasNonPostEntityChanges(),\n\t\t} ),\n\t\t[]\n\t);\n\n\tconst openEntitiesSavedStates = useCallback(\n\t\t() => setEntitiesSavedStatesCallback( true ),\n\t\t[]\n\t);\n\n\t// It is ok for these components to be unmounted when not in visual use.\n\t// We don't want more than one present at a time, decide which to render.\n\tlet unmountableContent;\n\tif ( publishSidebarOpened ) {\n\t\tunmountableContent = (\n\t\t\t<PostPublishPanel\n\t\t\t\tonClose={ closePublishSidebar }\n\t\t\t\tforceIsDirty={ forceIsDirtyPublishPanel }\n\t\t\t\tPrePublishExtension={ PluginPrePublishPanel.Slot }\n\t\t\t\tPostPublishExtension={ PluginPostPublishPanel.Slot }\n\t\t\t/>\n\t\t);\n\t} else if ( hasNonPostEntityChanges ) {\n\t\tunmountableContent = (\n\t\t\t<div className=\"editor-layout__toggle-entities-saved-states-panel\">\n\t\t\t\t<Button\n\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\tclassName=\"editor-layout__toggle-entities-saved-states-panel-button\"\n\t\t\t\t\tonClick={ openEntitiesSavedStates }\n\t\t\t\t\taria-expanded={ false }\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Open save panel' ) }\n\t\t\t\t</Button>\n\t\t\t</div>\n\t\t);\n\t} else {\n\t\tunmountableContent = (\n\t\t\t<div className=\"editor-layout__toggle-publish-panel\">\n\t\t\t\t<Button\n\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\tclassName=\"editor-layout__toggle-publish-panel-button\"\n\t\t\t\t\tonClick={ togglePublishSidebar }\n\t\t\t\t\taria-expanded={ false }\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Open publish panel' ) }\n\t\t\t\t</Button>\n\t\t\t</div>\n\t\t);\n\t}\n\n\t// Since EntitiesSavedStates controls its own panel, we can keep it\n\t// always mounted to retain its own component state (such as checkboxes).\n\treturn (\n\t\t<>\n\t\t\t{ isEntitiesSavedStatesOpen && (\n\t\t\t\t<EntitiesSavedStates close={ closeEntitiesSavedStates } />\n\t\t\t) }\n\t\t\t<Slot bubblesVirtually />\n\t\t\t{ ! isEntitiesSavedStatesOpen && unmountableContent }\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.sidebars = void 0;
7
+ const sidebars = exports.sidebars = {
8
+ document: 'edit-post/document',
9
+ block: 'edit-post/block'
10
+ };
11
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["sidebars","exports","document","block"],"sources":["@wordpress/editor/src/components/sidebar/constants.js"],"sourcesContent":["export const sidebars = {\n\tdocument: 'edit-post/document',\n\tblock: 'edit-post/block',\n};\n"],"mappings":";;;;;;AAAO,MAAMA,QAAQ,GAAAC,OAAA,CAAAD,QAAA,GAAG;EACvBE,QAAQ,EAAE,oBAAoB;EAC9BC,KAAK,EAAE;AACR,CAAC","ignoreList":[]}
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _react = require("react");
8
+ var _components = require("@wordpress/components");
9
+ var _i18n = require("@wordpress/i18n");
10
+ var _data = require("@wordpress/data");
11
+ var _element = require("@wordpress/element");
12
+ var _store = require("../../store");
13
+ var _lockUnlock = require("../../lock-unlock");
14
+ var _constants = require("./constants");
15
+ /**
16
+ * WordPress dependencies
17
+ */
18
+
19
+ /**
20
+ * Internal dependencies
21
+ */
22
+
23
+ const {
24
+ Tabs
25
+ } = (0, _lockUnlock.unlock)(_components.privateApis);
26
+ const SidebarHeader = (_, ref) => {
27
+ const {
28
+ documentLabel
29
+ } = (0, _data.useSelect)(select => {
30
+ const {
31
+ getPostTypeLabel
32
+ } = select(_store.store);
33
+ return {
34
+ // translators: Default label for the Document sidebar tab, not selected.
35
+ documentLabel: getPostTypeLabel() || (0, _i18n._x)('Document', 'noun')
36
+ };
37
+ }, []);
38
+ return (0, _react.createElement)(Tabs.TabList, {
39
+ ref: ref
40
+ }, (0, _react.createElement)(Tabs.Tab, {
41
+ tabId: _constants.sidebars.document
42
+ // Used for focus management in the SettingsSidebar component.
43
+ ,
44
+ "data-tab-id": _constants.sidebars.document
45
+ }, documentLabel), (0, _react.createElement)(Tabs.Tab, {
46
+ tabId: _constants.sidebars.block
47
+ // Used for focus management in the SettingsSidebar component.
48
+ ,
49
+ "data-tab-id": _constants.sidebars.block
50
+ }, (0, _i18n.__)('Block')));
51
+ };
52
+ var _default = exports.default = (0, _element.forwardRef)(SidebarHeader);
53
+ //# sourceMappingURL=header.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_components","require","_i18n","_data","_element","_store","_lockUnlock","_constants","Tabs","unlock","componentsPrivateApis","SidebarHeader","_","ref","documentLabel","useSelect","select","getPostTypeLabel","editorStore","_x","_react","createElement","TabList","Tab","tabId","sidebars","document","block","__","_default","exports","default","forwardRef"],"sources":["@wordpress/editor/src/components/sidebar/header.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { privateApis as componentsPrivateApis } from '@wordpress/components';\nimport { __, _x } from '@wordpress/i18n';\nimport { useSelect } from '@wordpress/data';\nimport { forwardRef } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { store as editorStore } from '../../store';\nimport { unlock } from '../../lock-unlock';\nimport { sidebars } from './constants';\n\nconst { Tabs } = unlock( componentsPrivateApis );\n\nconst SidebarHeader = ( _, ref ) => {\n\tconst { documentLabel } = useSelect( ( select ) => {\n\t\tconst { getPostTypeLabel } = select( editorStore );\n\n\t\treturn {\n\t\t\t// translators: Default label for the Document sidebar tab, not selected.\n\t\t\tdocumentLabel: getPostTypeLabel() || _x( 'Document', 'noun' ),\n\t\t};\n\t}, [] );\n\n\treturn (\n\t\t<Tabs.TabList ref={ ref }>\n\t\t\t<Tabs.Tab\n\t\t\t\ttabId={ sidebars.document }\n\t\t\t\t// Used for focus management in the SettingsSidebar component.\n\t\t\t\tdata-tab-id={ sidebars.document }\n\t\t\t>\n\t\t\t\t{ documentLabel }\n\t\t\t</Tabs.Tab>\n\t\t\t<Tabs.Tab\n\t\t\t\ttabId={ sidebars.block }\n\t\t\t\t// Used for focus management in the SettingsSidebar component.\n\t\t\t\tdata-tab-id={ sidebars.block }\n\t\t\t>\n\t\t\t\t{ /* translators: Text label for the Block Settings Sidebar tab. */ }\n\t\t\t\t{ __( 'Block' ) }\n\t\t\t</Tabs.Tab>\n\t\t</Tabs.TabList>\n\t);\n};\n\nexport default forwardRef( SidebarHeader );\n"],"mappings":";;;;;;;AAGA,IAAAA,WAAA,GAAAC,OAAA;AACA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,QAAA,GAAAH,OAAA;AAKA,IAAAI,MAAA,GAAAJ,OAAA;AACA,IAAAK,WAAA,GAAAL,OAAA;AACA,IAAAM,UAAA,GAAAN,OAAA;AAbA;AACA;AACA;;AAMA;AACA;AACA;;AAKA,MAAM;EAAEO;AAAK,CAAC,GAAG,IAAAC,kBAAM,EAAEC,uBAAsB,CAAC;AAEhD,MAAMC,aAAa,GAAGA,CAAEC,CAAC,EAAEC,GAAG,KAAM;EACnC,MAAM;IAAEC;EAAc,CAAC,GAAG,IAAAC,eAAS,EAAIC,MAAM,IAAM;IAClD,MAAM;MAAEC;IAAiB,CAAC,GAAGD,MAAM,CAAEE,YAAY,CAAC;IAElD,OAAO;MACN;MACAJ,aAAa,EAAEG,gBAAgB,CAAC,CAAC,IAAI,IAAAE,QAAE,EAAE,UAAU,EAAE,MAAO;IAC7D,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;EAEP,OACC,IAAAC,MAAA,CAAAC,aAAA,EAACb,IAAI,CAACc,OAAO;IAACT,GAAG,EAAGA;EAAK,GACxB,IAAAO,MAAA,CAAAC,aAAA,EAACb,IAAI,CAACe,GAAG;IACRC,KAAK,EAAGC,mBAAQ,CAACC;IACjB;IAAA;IACA,eAAcD,mBAAQ,CAACC;EAAU,GAE/BZ,aACO,CAAC,EACX,IAAAM,MAAA,CAAAC,aAAA,EAACb,IAAI,CAACe,GAAG;IACRC,KAAK,EAAGC,mBAAQ,CAACE;IACjB;IAAA;IACA,eAAcF,mBAAQ,CAACE;EAAO,GAG5B,IAAAC,QAAE,EAAE,OAAQ,CACL,CACG,CAAC;AAEjB,CAAC;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEa,IAAAC,mBAAU,EAAErB,aAAc,CAAC","ignoreList":[]}
@@ -0,0 +1,157 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ var _react = require("react");
9
+ var _blockEditor = require("@wordpress/block-editor");
10
+ var _data = require("@wordpress/data");
11
+ var _element = require("@wordpress/element");
12
+ var _i18n = require("@wordpress/i18n");
13
+ var _icons = require("@wordpress/icons");
14
+ var _keyboardShortcuts = require("@wordpress/keyboard-shortcuts");
15
+ var _components = require("@wordpress/components");
16
+ var _interface = require("@wordpress/interface");
17
+ var _panel = _interopRequireDefault(require("../page-attributes/panel"));
18
+ var _patternOverridesPanel = _interopRequireDefault(require("../pattern-overrides-panel"));
19
+ var _pluginDocumentSettingPanel = _interopRequireDefault(require("../plugin-document-setting-panel"));
20
+ var _pluginSidebar = _interopRequireDefault(require("../plugin-sidebar"));
21
+ var _panel2 = _interopRequireDefault(require("../post-last-revision/panel"));
22
+ var _postSummary = _interopRequireDefault(require("./post-summary"));
23
+ var _panel3 = _interopRequireDefault(require("../post-taxonomies/panel"));
24
+ var _postTransformPanel = _interopRequireDefault(require("../post-transform-panel"));
25
+ var _header = _interopRequireDefault(require("./header"));
26
+ var _templateContentPanel = _interopRequireDefault(require("../template-content-panel"));
27
+ var _useAutoSwitchEditorSidebars = _interopRequireDefault(require("../provider/use-auto-switch-editor-sidebars"));
28
+ var _constants = require("./constants");
29
+ var _lockUnlock = require("../../lock-unlock");
30
+ var _store = require("../../store");
31
+ var _constants2 = require("../../store/constants");
32
+ /**
33
+ * WordPress dependencies
34
+ */
35
+
36
+ /**
37
+ * Internal dependencies
38
+ */
39
+
40
+ const {
41
+ Tabs
42
+ } = (0, _lockUnlock.unlock)(_components.privateApis);
43
+ const SIDEBAR_ACTIVE_BY_DEFAULT = _element.Platform.select({
44
+ web: true,
45
+ native: false
46
+ });
47
+ const SidebarContent = ({
48
+ tabName,
49
+ keyboardShortcut,
50
+ renderingMode,
51
+ onActionPerformed,
52
+ extraPanels
53
+ }) => {
54
+ const tabListRef = (0, _element.useRef)(null);
55
+ // Because `PluginSidebar` renders a `ComplementaryArea`, we
56
+ // need to forward the `Tabs` context so it can be passed through the
57
+ // underlying slot/fill.
58
+ const tabsContextValue = (0, _element.useContext)(Tabs.Context);
59
+
60
+ // This effect addresses a race condition caused by tabbing from the last
61
+ // block in the editor into the settings sidebar. Without this effect, the
62
+ // selected tab and browser focus can become separated in an unexpected way
63
+ // (e.g the "block" tab is focused, but the "post" tab is selected).
64
+ (0, _element.useEffect)(() => {
65
+ const tabsElements = Array.from(tabListRef.current?.querySelectorAll('[role="tab"]') || []);
66
+ const selectedTabElement = tabsElements.find(
67
+ // We are purposefully using a custom `data-tab-id` attribute here
68
+ // because we don't want rely on any assumptions about `Tabs`
69
+ // component internals.
70
+ element => element.getAttribute('data-tab-id') === tabName);
71
+ const activeElement = selectedTabElement?.ownerDocument.activeElement;
72
+ const tabsHasFocus = tabsElements.some(element => {
73
+ return activeElement && activeElement.id === element.id;
74
+ });
75
+ if (tabsHasFocus && selectedTabElement && selectedTabElement.id !== activeElement?.id) {
76
+ selectedTabElement?.focus();
77
+ }
78
+ }, [tabName]);
79
+ return (0, _react.createElement)(_pluginSidebar.default, {
80
+ identifier: tabName,
81
+ header: (0, _react.createElement)(Tabs.Context.Provider, {
82
+ value: tabsContextValue
83
+ }, (0, _react.createElement)(_header.default, {
84
+ ref: tabListRef
85
+ })),
86
+ closeLabel: (0, _i18n.__)('Close Settings')
87
+ // This classname is added so we can apply a corrective negative
88
+ // margin to the panel.
89
+ // see https://github.com/WordPress/gutenberg/pull/55360#pullrequestreview-1737671049
90
+ ,
91
+ className: "editor-sidebar__panel",
92
+ headerClassName: "editor-sidebar__panel-tabs"
93
+ /* translators: button label text should, if possible, be under 16 characters. */,
94
+ title: (0, _i18n.__)('Settings'),
95
+ toggleShortcut: keyboardShortcut,
96
+ icon: (0, _i18n.isRTL)() ? _icons.drawerLeft : _icons.drawerRight,
97
+ isActiveByDefault: SIDEBAR_ACTIVE_BY_DEFAULT
98
+ }, (0, _react.createElement)(Tabs.Context.Provider, {
99
+ value: tabsContextValue
100
+ }, (0, _react.createElement)(Tabs.TabPanel, {
101
+ tabId: _constants.sidebars.document,
102
+ focusable: false
103
+ }, (0, _react.createElement)(_postSummary.default, {
104
+ onActionPerformed: onActionPerformed
105
+ }), (0, _react.createElement)(_pluginDocumentSettingPanel.default.Slot, null), renderingMode !== 'post-only' && (0, _react.createElement)(_templateContentPanel.default, null), (0, _react.createElement)(_postTransformPanel.default, null), (0, _react.createElement)(_panel2.default, null), (0, _react.createElement)(_panel3.default, null), (0, _react.createElement)(_panel.default, null), (0, _react.createElement)(_patternOverridesPanel.default, null), extraPanels), (0, _react.createElement)(Tabs.TabPanel, {
106
+ tabId: _constants.sidebars.block,
107
+ focusable: false
108
+ }, (0, _react.createElement)(_blockEditor.BlockInspector, null))));
109
+ };
110
+ const Sidebar = ({
111
+ extraPanels,
112
+ onActionPerformed
113
+ }) => {
114
+ (0, _useAutoSwitchEditorSidebars.default)();
115
+ const {
116
+ tabName,
117
+ keyboardShortcut,
118
+ showSummary,
119
+ renderingMode
120
+ } = (0, _data.useSelect)(select => {
121
+ const shortcut = select(_keyboardShortcuts.store).getShortcutRepresentation('core/editor/toggle-sidebar');
122
+ const sidebar = select(_interface.store).getActiveComplementaryArea('core');
123
+ const _isEditorSidebarOpened = [_constants.sidebars.block, _constants.sidebars.document].includes(sidebar);
124
+ let _tabName = sidebar;
125
+ if (!_isEditorSidebarOpened) {
126
+ _tabName = !!select(_blockEditor.store).getBlockSelectionStart() ? _constants.sidebars.block : _constants.sidebars.document;
127
+ }
128
+ return {
129
+ tabName: _tabName,
130
+ keyboardShortcut: shortcut,
131
+ showSummary: ![_constants2.TEMPLATE_POST_TYPE, _constants2.TEMPLATE_PART_POST_TYPE, _constants2.NAVIGATION_POST_TYPE].includes(select(_store.store).getCurrentPostType()),
132
+ renderingMode: select(_store.store).getRenderingMode()
133
+ };
134
+ }, []);
135
+ const {
136
+ enableComplementaryArea
137
+ } = (0, _data.useDispatch)(_interface.store);
138
+ const onTabSelect = (0, _element.useCallback)(newSelectedTabId => {
139
+ if (!!newSelectedTabId) {
140
+ enableComplementaryArea('core', newSelectedTabId);
141
+ }
142
+ }, [enableComplementaryArea]);
143
+ return (0, _react.createElement)(Tabs, {
144
+ selectedTabId: tabName,
145
+ onSelect: onTabSelect,
146
+ selectOnMove: false
147
+ }, (0, _react.createElement)(SidebarContent, {
148
+ tabName: tabName,
149
+ keyboardShortcut: keyboardShortcut,
150
+ showSummary: showSummary,
151
+ renderingMode: renderingMode,
152
+ onActionPerformed: onActionPerformed,
153
+ extraPanels: extraPanels
154
+ }));
155
+ };
156
+ var _default = exports.default = Sidebar;
157
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_blockEditor","require","_data","_element","_i18n","_icons","_keyboardShortcuts","_components","_interface","_panel","_interopRequireDefault","_patternOverridesPanel","_pluginDocumentSettingPanel","_pluginSidebar","_panel2","_postSummary","_panel3","_postTransformPanel","_header","_templateContentPanel","_useAutoSwitchEditorSidebars","_constants","_lockUnlock","_store","_constants2","Tabs","unlock","componentsPrivateApis","SIDEBAR_ACTIVE_BY_DEFAULT","Platform","select","web","native","SidebarContent","tabName","keyboardShortcut","renderingMode","onActionPerformed","extraPanels","tabListRef","useRef","tabsContextValue","useContext","Context","useEffect","tabsElements","Array","from","current","querySelectorAll","selectedTabElement","find","element","getAttribute","activeElement","ownerDocument","tabsHasFocus","some","id","focus","_react","createElement","default","identifier","header","Provider","value","ref","closeLabel","__","className","headerClassName","title","toggleShortcut","icon","isRTL","drawerLeft","drawerRight","isActiveByDefault","TabPanel","tabId","sidebars","document","focusable","Slot","block","BlockInspector","Sidebar","useAutoSwitchEditorSidebars","showSummary","useSelect","shortcut","keyboardShortcutsStore","getShortcutRepresentation","sidebar","interfaceStore","getActiveComplementaryArea","_isEditorSidebarOpened","includes","_tabName","blockEditorStore","getBlockSelectionStart","TEMPLATE_POST_TYPE","TEMPLATE_PART_POST_TYPE","NAVIGATION_POST_TYPE","editorStore","getCurrentPostType","getRenderingMode","enableComplementaryArea","useDispatch","onTabSelect","useCallback","newSelectedTabId","selectedTabId","onSelect","selectOnMove","_default","exports"],"sources":["@wordpress/editor/src/components/sidebar/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tBlockInspector,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tPlatform,\n\tuseCallback,\n\tuseContext,\n\tuseEffect,\n\tuseRef,\n} from '@wordpress/element';\nimport { isRTL, __ } from '@wordpress/i18n';\nimport { drawerLeft, drawerRight } from '@wordpress/icons';\nimport { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';\nimport { privateApis as componentsPrivateApis } from '@wordpress/components';\nimport { store as interfaceStore } from '@wordpress/interface';\n\n/**\n * Internal dependencies\n */\nimport PageAttributesPanel from '../page-attributes/panel';\nimport PatternOverridesPanel from '../pattern-overrides-panel';\nimport PluginDocumentSettingPanel from '../plugin-document-setting-panel';\nimport PluginSidebar from '../plugin-sidebar';\nimport PostLastRevisionPanel from '../post-last-revision/panel';\nimport PostSummary from './post-summary';\nimport PostTaxonomiesPanel from '../post-taxonomies/panel';\nimport PostTransformPanel from '../post-transform-panel';\nimport SidebarHeader from './header';\nimport TemplateContentPanel from '../template-content-panel';\nimport useAutoSwitchEditorSidebars from '../provider/use-auto-switch-editor-sidebars';\nimport { sidebars } from './constants';\nimport { unlock } from '../../lock-unlock';\nimport { store as editorStore } from '../../store';\nimport {\n\tNAVIGATION_POST_TYPE,\n\tTEMPLATE_PART_POST_TYPE,\n\tTEMPLATE_POST_TYPE,\n} from '../../store/constants';\n\nconst { Tabs } = unlock( componentsPrivateApis );\n\nconst SIDEBAR_ACTIVE_BY_DEFAULT = Platform.select( {\n\tweb: true,\n\tnative: false,\n} );\n\nconst SidebarContent = ( {\n\ttabName,\n\tkeyboardShortcut,\n\trenderingMode,\n\tonActionPerformed,\n\textraPanels,\n} ) => {\n\tconst tabListRef = useRef( null );\n\t// Because `PluginSidebar` renders a `ComplementaryArea`, we\n\t// need to forward the `Tabs` context so it can be passed through the\n\t// underlying slot/fill.\n\tconst tabsContextValue = useContext( Tabs.Context );\n\n\t// This effect addresses a race condition caused by tabbing from the last\n\t// block in the editor into the settings sidebar. Without this effect, the\n\t// selected tab and browser focus can become separated in an unexpected way\n\t// (e.g the \"block\" tab is focused, but the \"post\" tab is selected).\n\tuseEffect( () => {\n\t\tconst tabsElements = Array.from(\n\t\t\ttabListRef.current?.querySelectorAll( '[role=\"tab\"]' ) || []\n\t\t);\n\t\tconst selectedTabElement = tabsElements.find(\n\t\t\t// We are purposefully using a custom `data-tab-id` attribute here\n\t\t\t// because we don't want rely on any assumptions about `Tabs`\n\t\t\t// component internals.\n\t\t\t( element ) => element.getAttribute( 'data-tab-id' ) === tabName\n\t\t);\n\t\tconst activeElement = selectedTabElement?.ownerDocument.activeElement;\n\t\tconst tabsHasFocus = tabsElements.some( ( element ) => {\n\t\t\treturn activeElement && activeElement.id === element.id;\n\t\t} );\n\t\tif (\n\t\t\ttabsHasFocus &&\n\t\t\tselectedTabElement &&\n\t\t\tselectedTabElement.id !== activeElement?.id\n\t\t) {\n\t\t\tselectedTabElement?.focus();\n\t\t}\n\t}, [ tabName ] );\n\n\treturn (\n\t\t<PluginSidebar\n\t\t\tidentifier={ tabName }\n\t\t\theader={\n\t\t\t\t<Tabs.Context.Provider value={ tabsContextValue }>\n\t\t\t\t\t<SidebarHeader ref={ tabListRef } />\n\t\t\t\t</Tabs.Context.Provider>\n\t\t\t}\n\t\t\tcloseLabel={ __( 'Close Settings' ) }\n\t\t\t// This classname is added so we can apply a corrective negative\n\t\t\t// margin to the panel.\n\t\t\t// see https://github.com/WordPress/gutenberg/pull/55360#pullrequestreview-1737671049\n\t\t\tclassName=\"editor-sidebar__panel\"\n\t\t\theaderClassName=\"editor-sidebar__panel-tabs\"\n\t\t\t/* translators: button label text should, if possible, be under 16 characters. */\n\t\t\ttitle={ __( 'Settings' ) }\n\t\t\ttoggleShortcut={ keyboardShortcut }\n\t\t\ticon={ isRTL() ? drawerLeft : drawerRight }\n\t\t\tisActiveByDefault={ SIDEBAR_ACTIVE_BY_DEFAULT }\n\t\t>\n\t\t\t<Tabs.Context.Provider value={ tabsContextValue }>\n\t\t\t\t<Tabs.TabPanel tabId={ sidebars.document } focusable={ false }>\n\t\t\t\t\t<PostSummary onActionPerformed={ onActionPerformed } />\n\t\t\t\t\t<PluginDocumentSettingPanel.Slot />\n\t\t\t\t\t{ renderingMode !== 'post-only' && (\n\t\t\t\t\t\t<TemplateContentPanel />\n\t\t\t\t\t) }\n\t\t\t\t\t<PostTransformPanel />\n\t\t\t\t\t<PostLastRevisionPanel />\n\t\t\t\t\t<PostTaxonomiesPanel />\n\t\t\t\t\t<PageAttributesPanel />\n\t\t\t\t\t<PatternOverridesPanel />\n\t\t\t\t\t{ extraPanels }\n\t\t\t\t</Tabs.TabPanel>\n\t\t\t\t<Tabs.TabPanel tabId={ sidebars.block } focusable={ false }>\n\t\t\t\t\t<BlockInspector />\n\t\t\t\t</Tabs.TabPanel>\n\t\t\t</Tabs.Context.Provider>\n\t\t</PluginSidebar>\n\t);\n};\n\nconst Sidebar = ( { extraPanels, onActionPerformed } ) => {\n\tuseAutoSwitchEditorSidebars();\n\tconst { tabName, keyboardShortcut, showSummary, renderingMode } = useSelect(\n\t\t( select ) => {\n\t\t\tconst shortcut = select(\n\t\t\t\tkeyboardShortcutsStore\n\t\t\t).getShortcutRepresentation( 'core/editor/toggle-sidebar' );\n\n\t\t\tconst sidebar =\n\t\t\t\tselect( interfaceStore ).getActiveComplementaryArea( 'core' );\n\t\t\tconst _isEditorSidebarOpened = [\n\t\t\t\tsidebars.block,\n\t\t\t\tsidebars.document,\n\t\t\t].includes( sidebar );\n\t\t\tlet _tabName = sidebar;\n\t\t\tif ( ! _isEditorSidebarOpened ) {\n\t\t\t\t_tabName = !! select(\n\t\t\t\t\tblockEditorStore\n\t\t\t\t).getBlockSelectionStart()\n\t\t\t\t\t? sidebars.block\n\t\t\t\t\t: sidebars.document;\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\ttabName: _tabName,\n\t\t\t\tkeyboardShortcut: shortcut,\n\t\t\t\tshowSummary: ! [\n\t\t\t\t\tTEMPLATE_POST_TYPE,\n\t\t\t\t\tTEMPLATE_PART_POST_TYPE,\n\t\t\t\t\tNAVIGATION_POST_TYPE,\n\t\t\t\t].includes( select( editorStore ).getCurrentPostType() ),\n\t\t\t\trenderingMode: select( editorStore ).getRenderingMode(),\n\t\t\t};\n\t\t},\n\t\t[]\n\t);\n\n\tconst { enableComplementaryArea } = useDispatch( interfaceStore );\n\n\tconst onTabSelect = useCallback(\n\t\t( newSelectedTabId ) => {\n\t\t\tif ( !! newSelectedTabId ) {\n\t\t\t\tenableComplementaryArea( 'core', newSelectedTabId );\n\t\t\t}\n\t\t},\n\t\t[ enableComplementaryArea ]\n\t);\n\n\treturn (\n\t\t<Tabs\n\t\t\tselectedTabId={ tabName }\n\t\t\tonSelect={ onTabSelect }\n\t\t\tselectOnMove={ false }\n\t\t>\n\t\t\t<SidebarContent\n\t\t\t\ttabName={ tabName }\n\t\t\t\tkeyboardShortcut={ keyboardShortcut }\n\t\t\t\tshowSummary={ showSummary }\n\t\t\t\trenderingMode={ renderingMode }\n\t\t\t\tonActionPerformed={ onActionPerformed }\n\t\t\t\textraPanels={ extraPanels }\n\t\t\t/>\n\t\t</Tabs>\n\t);\n};\n\nexport default Sidebar;\n"],"mappings":"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","ignoreList":[]}